From e89dfdbce62ad5be906cb2d822fa0f746cf6afd6 Mon Sep 17 00:00:00 2001 From: Nadav Kavalerchik Date: Mon, 26 Aug 2013 01:06:55 +0300 Subject: [PATCH 001/101] MDL-39871 Blocks,Themes: Swap block regions in RTL mode (using pre-defined array) --- lib/outputlib.php | 5 +++++ theme/base/config.php | 4 ++++ theme/base/layout/frontpage.php | 33 +++++++++------------------------ theme/base/layout/general.php | 27 ++++----------------------- theme/base/style/pagelayout.css | 17 ++++++++++++++++- 5 files changed, 38 insertions(+), 48 deletions(-) diff --git a/lib/outputlib.php b/lib/outputlib.php index be02e35db1e..59b8cd259e3 100644 --- a/lib/outputlib.php +++ b/lib/outputlib.php @@ -487,6 +487,11 @@ class theme_config { } } + // Use parent theme's "blockrtlmanipulations" if it was defined and if it was not defined on current theme. + if (empty($this->blockrtlmanipulations) and !empty($parent_config->blockrtlmanipulations)) { + $this->blockrtlmanipulations = $parent_config->blockrtlmanipulations; + } + //fix arrows if needed $this->check_theme_arrows(); } diff --git a/theme/base/config.php b/theme/base/config.php index bb9e2c4b389..881ee946932 100644 --- a/theme/base/config.php +++ b/theme/base/config.php @@ -174,3 +174,7 @@ $THEME->hidefromselector = true; /** List of javascript files that need to included on each page */ $THEME->javascripts = array(); $THEME->javascripts_footer = array(); + +// Swap side-pre with side-post blocks regions, in RTL mode (can be override on derived themes) +$THEME->blockrtlmanipulations = array('side-pre'=>'side-post','side-post'=>'side-pre'); + diff --git a/theme/base/layout/frontpage.php b/theme/base/layout/frontpage.php index 330416942e6..f068b23ee89 100644 --- a/theme/base/layout/frontpage.php +++ b/theme/base/layout/frontpage.php @@ -10,17 +10,9 @@ $hascustommenu = (empty($PAGE->layout_options['nocustommenu']) && !empty($custom $bodyclasses = array(); if ($showsidepre && !$showsidepost) { - if (!right_to_left()) { - $bodyclasses[] = 'side-pre-only'; - }else{ - $bodyclasses[] = 'side-post-only'; - } + $bodyclasses[] = 'side-pre-only'; } else if ($showsidepost && !$showsidepre) { - if (!right_to_left()) { - $bodyclasses[] = 'side-post-only'; - }else{ - $bodyclasses[] = 'side-pre-only'; - } + $bodyclasses[] = 'side-post-only'; } else if (!$showsidepost && !$showsidepre) { $bodyclasses[] = 'content-only'; } @@ -66,29 +58,22 @@ echo $OUTPUT->doctype() ?> - +
- blocks_for_region('side-pre'); - } elseif ($hassidepost) { - echo $OUTPUT->blocks_for_region('side-post'); - } ?> - + ?>
- +
- blocks_for_region('side-post'); - } elseif ($hassidepre) { - echo $OUTPUT->blocks_for_region('side-pre'); - } ?> + blocks_for_region('side-post'); + ?>
diff --git a/theme/base/layout/general.php b/theme/base/layout/general.php index 1a0f9e41d6a..ecda10c55bf 100644 --- a/theme/base/layout/general.php +++ b/theme/base/layout/general.php @@ -25,17 +25,9 @@ if (empty($PAGE->layout_options['nocourseheaderfooter'])) { $bodyclasses = array(); if ($showsidepre && !$showsidepost) { - if (!right_to_left()) { $bodyclasses[] = 'side-pre-only'; - }else{ - $bodyclasses[] = 'side-post-only'; - } } else if ($showsidepost && !$showsidepre) { - if (!right_to_left()) { $bodyclasses[] = 'side-post-only'; - }else{ - $bodyclasses[] = 'side-pre-only'; - } } else if (!$showsidepost && !$showsidepre) { $bodyclasses[] = 'content-only'; } @@ -96,29 +88,18 @@ echo $OUTPUT->doctype() ?> - +
- blocks_for_region('side-pre'); - } elseif ($hassidepost) { - echo $OUTPUT->blocks_for_region('side-post'); - } ?> - + blocks_for_region('side-pre'); ?>
- +
- blocks_for_region('side-post'); - } elseif ($hassidepre) { - echo $OUTPUT->blocks_for_region('side-pre'); - } ?> + blocks_for_region('side-post'); ?>
diff --git a/theme/base/style/pagelayout.css b/theme/base/style/pagelayout.css index ac8ffaf9f63..eb369da5d34 100644 --- a/theme/base/style/pagelayout.css +++ b/theme/base/style/pagelayout.css @@ -97,4 +97,19 @@ body {margin:auto 0px;width:auto;} .ie6.pagelayout-report #report-main-content {float:none;width:auto;} .ie6.pagelayout-report #report-region-wrap {float:none;width:200px;left:auto;position:absolute;top:0;} .ie6.pagelayout-report #report-region-pre, -.ie6.pagelayout-report #report-region-pre .block {width:100%;} \ No newline at end of file +.ie6.pagelayout-report #report-region-pre .block {width:100%;} + +/** Only side PRE **/ +.dir-rtl.side-pre-only #page-content #region-main-box {left:0px;} +.dir-rtl.side-pre-only #page-content #region-post-box {margin-left:-200px;} +.dir-rtl.side-pre-only #page-content #region-main {margin-left:200px;} +.dir-rtl.side-pre-only #page-content #region-post {width:0px;} +.dir-rtl.side-pre-only #page-content #region-pre {left:50%; width: 200px;} + +/**RTL Only side POST **/ +.dir-rtl.side-post-only #page-content {clear:both;float:left;overflow:hidden;position:relative;width:100%;min-width:900px;} +.dir-rtl.side-post-only #page-content #region-main-box {float:left;left:200px;position:relative;width:200%;} +.dir-rtl.side-post-only #page-content #region-post-box {margin-left:-200px;} +.dir-rtl.side-post-only #page-content #region-main {margin-left:200px;} +.dir-rtl.side-post-only #page-content #region-pre {width: 0;} +.dir-rtl.side-post-only #page-content #region-post {float:left;left:0px;overflow:hidden;position:relative;width:200px;margin-left:-50%;} From d871a0df65d9d9959658eda7d69eecde613b34d3 Mon Sep 17 00:00:00 2001 From: Matt Petro Date: Sun, 8 Sep 2013 17:22:33 -0400 Subject: [PATCH 002/101] MDL-41660 backup ims-cc: Use correct temp directory --- backup/converter/imscc11/backuplib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backup/converter/imscc11/backuplib.php b/backup/converter/imscc11/backuplib.php index b6d7154f8ba..2d749bda4f8 100644 --- a/backup/converter/imscc11/backuplib.php +++ b/backup/converter/imscc11/backuplib.php @@ -139,7 +139,7 @@ class imscc11_backup_convert extends backup_execution_step { require_once($CFG->dirroot . '/backup/cc/cc_includes.php'); - $tempdir = $CFG->dataroot . '/temp/backup/' . uniqid('', true); + $tempdir = $CFG->tempdir . '/backup/' . uniqid('', true); if (mkdir($tempdir, $CFG->directorypermissions, true)) { From 3e29ecabea109b195caefee170c669f380c78a07 Mon Sep 17 00:00:00 2001 From: Dan Poltawski Date: Thu, 12 Sep 2013 10:47:30 +0800 Subject: [PATCH 003/101] MDL-41311 tool_generator: remove legacy code There was some functionality to generate data here, but it was not maintained, dangerous and being monkeypatched over time. --- admin/tool/generator/cli/generate.php | 37 - admin/tool/generator/index.php | 30 +- admin/tool/generator/locallib.php | 1311 ------------------------- admin/tool/generator/version.php | 2 +- 4 files changed, 6 insertions(+), 1374 deletions(-) delete mode 100644 admin/tool/generator/cli/generate.php delete mode 100644 admin/tool/generator/locallib.php diff --git a/admin/tool/generator/cli/generate.php b/admin/tool/generator/cli/generate.php deleted file mode 100644 index 353883e1d30..00000000000 --- a/admin/tool/generator/cli/generate.php +++ /dev/null @@ -1,37 +0,0 @@ -. - -/** - * Random course generator CLI interface. - * - * @package tool - * @subpackage generator - * @copyright 2009 Nicolas Connault - * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later - */ - -define('CLI_SCRIPT', true); - -require(dirname(__FILE__) . '/../../../../config.php'); -require_once(dirname(__FILE__) . '/../locallib.php'); - -if (!$CFG->debugdeveloper) { - echo("This script is for developers only!!!\n"); - exit(1); -} - -$generator = new generator_cli($argv, $argc); -$generator->generate_data(); diff --git a/admin/tool/generator/index.php b/admin/tool/generator/index.php index 7a917e91bae..3c26f503740 100644 --- a/admin/tool/generator/index.php +++ b/admin/tool/generator/index.php @@ -15,34 +15,14 @@ // along with Moodle. If not, see . /** - * Random course generator. + * Development data generator. * - * @package tool - * @subpackage generator + * @package tool_generator * @copyright 2009 Nicolas Connault * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ - require(dirname(__FILE__) . '/../../../config.php'); -require_once('locallib.php'); - -require_login(); -$systemcontext = context_system::instance(); -require_capability('moodle/site:config', $systemcontext); -if (!is_siteadmin()) { - error('Only for admins'); -} - -if (!$CFG->debugdeveloper) { - error('This script is for developers only!!!'); -} - -$PAGE->set_url('/admin/tool/generator/index.php'); -$PAGE->set_context(context_system::instance()); -$PAGE->set_pagelayout('base'); -$generator = new generator_web(); -$generator->setup(); -$generator->display(); -$generator->generate_data(); -$generator->complete(); +// This index page was previously in use, for now we redirect to the make test +// course page - but we might reinstate this page in the future. +redirect(new moodle_url('/admin/tool/generator/maketestcourse.php')); diff --git a/admin/tool/generator/locallib.php b/admin/tool/generator/locallib.php deleted file mode 100644 index 117e1ace33e..00000000000 --- a/admin/tool/generator/locallib.php +++ /dev/null @@ -1,1311 +0,0 @@ -. - -/** - * Random course generator. By Nicolas Connault and friends. - * - * @package tool - * @subpackage generator - * @copyright 2009 Nicolas Connault - * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later - */ - -defined('MOODLE_INTERNAL') || die(); - -require_once($CFG->libdir . '/formslib.php'); -require_once($CFG->dirroot .'/course/lib.php'); -require_once($CFG->libdir .'/filelib.php'); - -define('GENERATOR_RANDOM', 0); -define('GENERATOR_SEQUENCE', 1); - -/** - * Controller class for data generation - */ -class generator { - public $modules_to_ignore = array('hotpot', 'lams', 'journal', 'scorm', 'exercise', 'dialogue'); - public $modules_list = array('forum' => 'forum', - 'assignment' => 'assignment', - 'chat' => 'chat', - 'data' => 'data', - 'glossary' => 'glossary', - 'quiz' => 'quiz', - 'comments' => 'comments', - 'feedback' => 'feedback', - 'label' => 'label', - 'lesson' => 'lesson', - 'chat' => 'chat', - 'choice' => 'choice', - 'resource' => 'resource', - 'survey' => 'survey', - 'wiki' => 'wiki', - 'workshop' => 'workshop'); - - public $resource_types = array('text', 'file', 'html', 'repository', 'directory', 'ims'); - public $glossary_formats = array('continuous', 'encyclopedia', 'entrylist', 'faq', 'fullwithauthor', 'fullwithoutauthor', 'dictionary'); - public $assignment_types = array('upload', 'uploadsingle', 'online', 'offline'); - public $forum_types = array('general'); // others include 'single', 'eachuser', 'qanda' - - public $resource_type_counter = 0; - public $assignment_type_counter = 0; - public $forum_type_counter = 0; - - public $settings = array(); - public $eolchar = '
'; - public $do_generation = false; - public $starttime; - public $original_db; - - public function __construct($settings = array(), $generate=false) { - global $CFG; - - $this->starttime = time()+microtime(); - - $arguments = array( - array('short'=>'u', 'long'=>'username', - 'help' => 'Your moodle username', 'type'=>'STRING', 'default' => ''), - array('short'=>'pw', 'long'=>'password', - 'help' => 'Your moodle password', 'type'=>'STRING', 'default' => ''), - array('short'=>'P', 'long' => 'database_prefix', - 'help' => 'Database prefix to use: tables must already exist or the script will abort!', - 'type'=>'STRING', 'default' => $CFG->prefix), - array('short'=>'c', 'long' => 'pre_cleanup', 'help' => 'Delete previously generated data'), - array('short'=>'C', 'long' => 'post_cleanup', - 'help' => 'Deletes all generated data at the end of the script (for benchmarking of generation only)'), - array('short'=>'t', 'long' => 'time_limit', - 'help' => 'Optional time limit after which to abort the generation, 0 = no limit. Default=0', - 'type'=>'SECONDS', 'default' => 0), - array('short'=>'v', 'long' => 'verbose', 'help' => 'Display extra information about the data generation'), - array('short'=>'q', 'long' => 'quiet', 'help' => 'Inhibits all outputs'), - array('short'=>'i', 'long' => 'ignore_errors', 'help' => 'Continue script execution when errors occur'), - array('short'=>'N', 'long' => 'no_data', 'help' => 'Generate nothing (used for cleaning up only)'), - array('short'=>'T', 'long' => 'tiny', - 'help' => 'Generates a tiny data set (1 of each course, module, user and section)', - 'default' => 0), - array('short'=>'nc', 'long' => 'number_of_courses', - 'help' => 'The number of courses to generate. Default=1', - 'type'=>'NUMBER', 'default' => 1), - array('short'=>'ns', 'long' => 'number_of_students', - 'help' => 'The number of students to generate. Default=250', - 'type'=>'NUMBER', 'default' => 250), - array('short'=>'sc', 'long' => 'students_per_course', - 'help' => 'The number of students to enrol in each course. Default=20', - 'type'=>'NUMBER', 'default' => 20), - array('short'=>'nsec', 'long' => 'number_of_sections', - 'help' => 'The number of sections to generate in each course. Default=10', - 'type'=>'NUMBER', 'default' => 10), - array('short'=>'nmod', 'long' => 'number_of_modules', - 'help' => 'The number of modules to generate in each section. Default=10', - 'type'=>'NUMBER', 'default' => 10), - array('short'=>'mods', 'long' => 'modules_list', - 'help' => 'The list of modules you want to generate', 'default' => $this->modules_list, - 'type' => 'mod1,mod2...'), - array('short'=>'rt', 'long' => 'resource_type', - 'help' => 'The specific type of resource you want to generate. Defaults to all', - 'default' => $this->resource_types, - 'type' => 'SELECT'), - array('short'=>'at', 'long' => 'assignment_type', - 'help' => 'The specific type of assignment you want to generate. Defaults to all', - 'default' => $this->assignment_types, - 'type' => 'SELECT'), - array('short'=>'ft', 'long' => 'forum_type', - 'help' => 'The specific type of forum you want to generate. Defaults to all', - 'default' => $this->forum_types, - 'type' => 'SELECT'), - array('short'=>'gf', 'long' => 'glossary_format', - 'help' => 'The specific format of glossary you want to generate. Defaults to all', - 'default' => $this->glossary_formats, - 'type' => 'SELECT'), - array('short'=>'ag', 'long' => 'assignment_grades', - 'help' => 'Generate random grades for each student/assignment tuple', 'default' => true), - array('short'=>'qg', 'long' => 'quiz_grades', - 'help' => 'Generate random grades for each student/quiz tuple', 'default' => true), - array('short'=>'eg', 'long' => 'entries_per_glossary', - 'help' => 'The number of definitions to generate per glossary. Default=0', - 'type'=>'NUMBER', 'default' => 1), - array('short'=>'nq', 'long' => 'questions_per_course', - 'help' => 'The number of questions to generate per course. Default=20', - 'type'=>'NUMBER', 'default' => 20), - array('short'=>'qq', 'long' => 'questions_per_quiz', - 'help' => 'The number of questions to assign to each quiz. Default=5', - 'type'=>'NUMBER', 'default' => 5), - array('short'=>'df', 'long' => 'discussions_per_forum', - 'help' => 'The number of discussions to generate for each forum. Default=5', - 'type'=>'NUMBER', 'default' => 5), - array('short'=>'pd', 'long' => 'posts_per_discussion', - 'help' => 'The number of posts to generate for each forum discussion. Default=15', - 'type'=>'NUMBER', 'default' => 15), - array('short'=>'fd', 'long' => 'fields_per_database', - 'help' => 'The number of fields to generate for each database. Default=4', - 'type'=>'NUMBER', 'default' => 4), - array('short'=>'drs', 'long' => 'database_records_per_student', - 'help' => 'The number of records to generate for each student/database tuple. Default=1', - 'type'=>'NUMBER', 'default' => 1), - array('short'=>'mc', 'long' => 'messages_per_chat', - 'help' => 'The number of messages to generate for each chat module. Default=10', - 'type'=>'NUMBER', 'default' => 10), - ); - - foreach ($arguments as $args_array) { - $this->settings[$args_array['long']] = new generator_argument($args_array); - } - - foreach ($settings as $setting => $value) { - $this->settings[$setting]->value = $value; - } - - if ($generate) { - $this->generate_data(); - } - } - - public function connect() { - global $DB, $CFG; - $this->original_db = $DB; - - $class = get_class($DB); - $DB = new $class(); - $DB->connect($CFG->dbhost, $CFG->dbuser, $CFG->dbpass, $CFG->dbname, $this->get('database_prefix')); - } - - public function dispose() { - global $DB; - $DB->dispose(); - $DB = $this->original_db; - } - - public function generate_users() { - global $DB, $CFG; - - /** - * USER GENERATION - */ - $this->verbose("Generating ".$this->get('number_of_students')." students..."); - $lastnames = array('SMITH','JOHNSON','WILLIAMS','JONES','BROWN','DAVIS','MILLER','WILSON', - 'MOORE','TAYLOR','ANDERSON','THOMAS','JACKSON','WHITE','HARRIS','MARTIN','THOMPSON', - 'GARCIA','MARTINEZ','ROBINSON','CLARK','RODRIGUEZ','LEWIS','LEE','WALKER','HALL', - 'ALLEN','YOUNG','HERNANDEZ','KING','WRIGHT','LOPEZ','HILL','SCOTT','GREEN','ADAMS', - 'BAKER','GONZALEZ','NELSON','CARTER','MITCHELL','PEREZ','ROBERTS','TURNER','PHILLIPS', - 'CAMPBELL','PARKER','EVANS','EDWARDS','COLLINS','STEWART','SANCHEZ','MORRIS','ROGERS', - 'REED','COOK','MORGAN','BELL','MURPHY','BAILEY','RIVERA','COOPER','RICHARDSON','COX', - 'HOWARD','WARD','TORRES','PETERSON','GRAY','RAMIREZ','JAMES','WATSON','BROOKS','KELLY', - 'SANDERS','PRICE','BENNETT','WOOD','BARNES','ROSS','HENDERSON','COLEMAN','JENKINS','PERRY', - 'POWELL','LONG','PATTERSON','HUGHES','FLORES','WASHINGTON','BUTLER','SIMMONS','FOSTER', - 'GONZALES','BRYANT','ALEXANDER','RUSSELL','GRIFFIN','DIAZ','HAYES','MYERS','FORD','HAMILTON', - 'GRAHAM','SULLIVAN','WALLACE','WOODS','COLE','WEST','JORDAN','OWENS','REYNOLDS','FISHER', - 'ELLIS','HARRISON','GIBSON','MCDONALD','CRUZ','MARSHALL','ORTIZ','GOMEZ','MURRAY','FREEMAN', - 'WELLS','WEBB','SIMPSON','STEVENS','TUCKER','PORTER','HUNTER','HICKS','CRAWFORD','HENRY', - 'BOYD','MASON','MORALES','KENNEDY','WARREN','DIXON','RAMOS','REYES','BURNS','GORDON','SHAW', - 'HOLMES','RICE','ROBERTSON','HUNT','BLACK','DANIELS','PALMER','MILLS','NICHOLS','GRANT', - 'KNIGHT','FERGUSON','ROSE','STONE','HAWKINS','DUNN','PERKINS','HUDSON','SPENCER','GARDNER', - 'STEPHENS','PAYNE','PIERCE','BERRY','MATTHEWS','ARNOLD','WAGNER','WILLIS','RAY','WATKINS', - 'OLSON','CARROLL','DUNCAN','SNYDER','HART','CUNNINGHAM','BRADLEY','LANE','ANDREWS','RUIZ', - 'HARPER','FOX','RILEY','ARMSTRONG','CARPENTER','WEAVER','GREENE','LAWRENCE','ELLIOTT','CHAVEZ', - 'SIMS','AUSTIN','PETERS','KELLEY','FRANKLIN','LAWSON','FIELDS','GUTIERREZ','RYAN','SCHMIDT', - 'CARR','VASQUEZ','CASTILLO','WHEELER','CHAPMAN','OLIVER','MONTGOMERY','RICHARDS','WILLIAMSON', - 'JOHNSTON','BANKS','MEYER','BISHOP','MCCOY','HOWELL','ALVAREZ','MORRISON','HANSEN','FERNANDEZ', - 'GARZA','HARVEY','LITTLE','BURTON','STANLEY','NGUYEN','GEORGE','JACOBS','REID','KIM','FULLER', - 'LYNCH','DEAN','GILBERT','GARRETT','ROMERO','WELCH','LARSON','FRAZIER','BURKE','HANSON','DAY', - 'MENDOZA','MORENO','BOWMAN','MEDINA','FOWLER'); - $firstnames = array( 'JAMES','JOHN','ROBERT','MARY','MICHAEL','WILLIAM','DAVID','RICHARD', - 'CHARLES','JOSEPH','THOMAS','PATRICIA','LINDA','CHRISTOPHER','BARBARA','DANIEL','PAUL', - 'MARK','ELIZABETH','JENNIFER','DONALD','GEORGE','MARIA','KENNETH','SUSAN','STEVEN','EDWARD', - 'MARGARET','BRIAN','DOROTHY','RONALD','ANTHONY','LISA','KEVIN','NANCY','KAREN','BETTY', - 'HELEN','JASON','MATTHEW','GARY','TIMOTHY','SANDRA','JOSE','LARRY','JEFFREY','DONNA', - 'FRANK','CAROL','RUTH','SCOTT','ERIC','STEPHEN','ANDREW','SHARON','MICHELLE','LAURA', - 'SARAH','KIMBERLY','DEBORAH','JESSICA','RAYMOND','SHIRLEY','CYNTHIA','ANGELA','MELISSA', - 'BRENDA','AMY','GREGORY','ANNA','JOSHUA','JERRY','REBECCA','VIRGINIA','KATHLEEN','PAMELA', - 'DENNIS','MARTHA','DEBRA','AMANDA','STEPHANIE','WALTER','PATRICK','CAROLYN','CHRISTINE', - 'PETER','MARIE','JANET','CATHERINE','HAROLD','FRANCES','DOUGLAS','HENRY','ANN','JOYCE', - 'DIANE','ALICE','JULIE','CARL','HEATHER'); - $users_count = 0; - $users = array(); - - shuffle($lastnames); - shuffle($firstnames); - - $next_user_id = $DB->get_field_sql("SELECT MAX(id) FROM {user}") + 1; - - for ($i = 0; $i < $this->get('number_of_students'); $i++) { - - $lastname = trim(ucfirst(strtolower($lastnames[rand(0, count($lastnames) - 1)]))); - $firstname = $firstnames[rand(0, count($firstnames) - 1)]; - - $user = new stdClass(); - $user->firstname = trim(ucfirst(strtolower($firstname))); - $user->username = strtolower(substr($firstname, 0, 7) . substr($lastname, 0, 7)) . $next_user_id++; - $user->lastname = $lastname; - $user->email = $user->username . '@example.com'; - $user->mnethostid = 1; - $user->city = 'Test City'; - $user->country = 'AU'; - $user->password = md5('password'); - $user->auth = 'manual'; - $user->confirmed = 1; - $user->lang = $CFG->lang; - $user->timemodified= time(); - - $user->id = $DB->insert_record("user", $user); - $users_count++; - $users[] = $user->id; - $next_user_id = $user->id + 1; - $this->verbose("Inserted $user->firstname $user->lastname into DB " - ."(username=$user->username, password=password)."); - } - - if (!$this->get('quiet')) { - echo "$users_count users correctly inserted in the database.{$this->eolchar}"; - } - return $users; - } - - public function generate_data() { - if (!$this->do_generation) { - return false; - } - - set_time_limit($this->get('time_limit')); - - // Process tiny data set - $tiny = $this->get('tiny'); - if (!empty($tiny)) { - $this->verbose("Generating a tiny data set: 1 student in 1 course with 1 module in 1 section..."); - $this->set('number_of_courses',1); - $this->set('number_of_students',1); - $this->set('number_of_modules',1); - $this->set('number_of_sections',1); - $this->set('assignment_grades',false); - $this->set('quiz_grades',false); - $this->set('students_per_course',1); - $this->set('questions_per_course',1); - $this->set('questions_per_quiz',1); - } - - if ($this->get('pre_cleanup')) { - $this->verbose("Deleting previous test data..."); - $this->data_cleanup(); - - if (!$this->get('quiet')) { - echo "Previous test data has been deleted.{$this->eolchar}"; - } - } - - - if (!$this->get('no_data')) { - $users = $this->generate_users(); - $courses = $this->generate_courses(); - $modules = $this->generate_modules($courses); - $questions = $this->generate_questions($courses, $modules); - $course_users = $this->generate_role_assignments($users, $courses); - $this->generate_forum_posts($course_users, $modules); - $this->generate_grades($course_users, $courses, $modules); - $this->generate_module_content($course_users, $courses, $modules); - } - - if ($this->get('post_cleanup')) { - if (!$this->get('quiet')) { - echo "Removing generated data..." . $this->eolchar; - } - $this->data_cleanup(); - if (!$this->get('quiet')) { - echo "Generated data has been deleted." . $this->eolchar; - } - } - - /** - * FINISHING SCRIPT - */ - $stoptimer = time()+microtime(); - $timer = round($stoptimer-$this->starttime,4); - if (!$this->get('quiet')) { - echo "End of script! ($timer seconds taken){$this->eolchar}"; - } - - } - - public function generate_courses() { - global $DB; - - $this->verbose("Generating " . $this->get('number_of_courses')." courses..."); - $base_course = new stdClass(); - $next_course_id = $DB->get_field_sql("SELECT MAX(id) FROM {course}") + 1; - - $base_course->MAX_FILE_SIZE = '2097152'; - $base_course->category = '1'; - $base_course->summary = 'Blah Blah'; - $base_course->format = 'weeks'; - $base_course->numsections = '10'; - $base_course->startdate = time(); - $base_course->id = '0'; - - $courses_count = 0; - $courses = array(); - for ($i = 1; $i <= $this->get('number_of_courses'); $i++) { - $newcourse = fullclone($base_course); - $newcourse->fullname = "Test course $next_course_id"; - $newcourse->shortname = "Test $next_course_id"; - $newcourse->idnumber = $next_course_id; - if (!$course = create_course($newcourse)) { - $this->verbose("Error inserting a new course in the database!"); - if (!$this->get('ignore_errors')) { - die(); - } - } else { - $courses_count++; - $next_course_id++; - $courses[] = $course->id; - $next_course_id = $course->id + 1; - $this->verbose("Inserted $course->fullname into DB (idnumber=$course->idnumber)."); - } - } - - if (!$this->get('quiet')) { - echo "$courses_count test courses correctly inserted into the database.{$this->eolchar}"; - } - return $courses; - } - - public function generate_modules($courses) { - global $DB, $CFG; - // Parse the modules-list variable - - $this->verbose("Generating " . $this->get('number_of_sections')." sections with " - .$this->get('number_of_modules')." modules in each section, for each course..."); - - list($modules_list_sql, $modules_params) = - $DB->get_in_or_equal($this->get('modules_list'), SQL_PARAMS_NAMED, 'mod', true); - - list($modules_ignored_sql, $ignore_params) = - $DB->get_in_or_equal($this->modules_to_ignore, SQL_PARAMS_NAMED, 'ignore', false); - - $wheresql = "name $modules_list_sql AND name $modules_ignored_sql"; - $modules = $DB->get_records_select('modules', $wheresql, array_merge($modules_params, $ignore_params)); - - foreach ($modules as $key => $module) { - $module->count = 0; - - // Scorm, lams and hotpot are too complex to set up, remove them - if (in_array($module->name, $this->modules_to_ignore) || - !in_array($module->name, $this->modules_list)) { - unset($modules[$key]); - } - } - - // Dirty hack for renumbering the modules array's keys - $first_module = reset($modules); - array_shift($modules); - array_unshift($modules, $first_module); - - $modules_array = array(); - - if (count($courses) > 0) { - $libraries = array(); - foreach ($courses as $courseid) { - - // Text resources - for ($i = 1; $i <= $this->get('number_of_sections'); $i++) { - for ($j = 0; $j < $this->get('number_of_modules'); $j++) { - - $module = new stdClass(); - - // If only one module is created, and we also need to add a question to a quiz, create only a quiz - if ($this->get('number_of_modules') == 1 - && $this->get('questions_per_quiz') > 0 - && !empty($modules[8])) { - $moduledata = $modules[8]; - } else { - $moduledata = $modules[array_rand($modules)]; - } - - $libfile = "$CFG->dirroot/mod/$moduledata->name/lib.php"; - if (file_exists($libfile)) { - if (!in_array($libfile, $libraries)) { - $this->verbose("Including library for $moduledata->name..."); - $libraries[] = $libfile; - require_once($libfile); - } - } else { - $this->verbose("Could not load lib file for module $moduledata->name!"); - if (!$this->get('ignore_errors')) { - die(); - } - } - - // Basically 2 types of text fields: description and content - $description = "This $moduledata->name has been randomly generated by a very useful script, " - . "for the purpose of testing " - . "the boundaries of Moodle in various contexts. Moodle should be able to scale to " - . "any size without " - . "its speed and ease of use being affected dramatically."; - $content = 'Very useful content, I am sure you would agree'; - - $module_type_index = 0; - $module->introformat = FORMAT_MOODLE; - $module->messageformat = FORMAT_MOODLE; - - // Special module-specific config - switch ($moduledata->name) { - case 'assignment': - $module->intro = $description; - $module->assignmenttype = $this->get_module_type('assignment'); - $module->timedue = time() + 89487321; - $module->grade = rand(50,100); - break; - case 'chat': - $module->intro = $description; - $module->schedule = 1; - $module->chattime = 60 * 60 * 4; - break; - case 'data': - $module->intro = $description; - $module->name = 'test'; - break; - case 'choice': - $module->intro = $description; - $module->text = $content; - $module->option = array('Good choice', 'Bad choice', 'No choice'); - $module->limit = array(1, 5, 0); - break; - case 'comments': - $module->intro = $description; - $module->comments = $content; - break; - case 'feedback': - $module->intro = $description; - $module->page_after_submit = $description; - $module->comments = $content; - break; - case 'forum': - $module->intro = $description; - $module->type = $this->get_module_type('forum'); - $module->forcesubscribe = rand(0, 1); - $module->format = 1; - break; - case 'glossary': - $module->intro = $description; - $module->displayformat = $this->glossary_formats[rand(0, count($this->glossary_formats) - 1)]; - $module->cmidnumber = rand(0,999999); - break; - case 'label': - $module->content = $content; - $module->intro = $description; - break; - case 'lesson': - $module->lessondefault = 1; - $module->available = time(); - $module->deadline = time() + 719891987; - $module->grade = 100; - break; - case 'quiz': - $module->intro = $description; - $module->feedbacktext = 'blah'; - $module->feedback = 1; - $module->feedbackboundaries = array(2, 1); - $module->grade = 10; - $module->timeopen = time(); - $module->timeclose = time() + 68854; - $module->shufflequestions = true; - $module->shuffleanswers = true; - $module->quizpassword = ''; - break; - case 'resource': - $module->type = $this->get_module_type('resource'); - $module->alltext = $content; - $module->summary = $description; - $module->windowpopup = rand(0,1); - $module->display = rand(0,1); - $module->resizable = rand(0,1); - $module->scrollbars = rand(0,1); - $module->directories = rand(0,1); - $module->location = 'file.txt'; - $module->menubar = rand(0,1); - $module->toolbar = rand(0,1); - $module->status = rand(0,1); - $module->width = rand(200,600); - $module->height = rand(200,600); - $module->directories = rand(0,1); - $module->files = false; - $module->param_navigationmenu = rand(0,1); - $module->param_navigationbuttons = rand(0,1); - $module->reference = 1; - $module->forcedownload = 1; - break; - case 'survey': - $module->template = rand(1,5); - $module->intro = $description; - break; - case 'wiki': - $module->intro = $description; - $module->summary = $description; - break; - } - - $module->name = ucfirst($moduledata->name) . ' ' . $moduledata->count++; - - $module->course = $courseid; - $module->section = 0; - $module->module = $moduledata->id; - $module->modulename = $moduledata->name; - $module->add = $moduledata->name; - $module->cmidnumber = ''; - $module->coursemodule = ''; - $add_instance_function = $moduledata->name . '_add_instance'; - - $module->coursemodule = add_course_module($module); - - if (function_exists($add_instance_function)) { - $this->verbose("Calling module function $add_instance_function"); - $module->instance = $add_instance_function($module, ''); - $DB->set_field('course_modules', 'instance', $module->instance, array('id'=>$module->coursemodule)); - } else { - $this->verbose("Function $add_instance_function does not exist!"); - if (!$this->get('ignore_errors')) { - die(); - } - } - - $module->section = course_add_cm_to_section($courseid, $module->coursemodule, $i); - - $module->cmidnumber = set_coursemodule_idnumber($module->coursemodule, ''); - - $this->verbose("A $moduledata->name module was added to section $i (id $module->section) " - ."of course $courseid."); - - $module_instance = $DB->get_field('course_modules', 'instance', array('id' => $module->coursemodule)); - $module_record = $DB->get_record($moduledata->name, array('id' => $module_instance)); - $module_record->instance = $module_instance; - - if (empty($modules_array[$moduledata->name])) { - $modules_array[$moduledata->name] = array(); - } - - // TODO Find out why some $module_record end up empty here... (particularly quizzes) - if (!empty($module_record->instance)) { - $modules_array[$moduledata->name][] = $module_record; - } - } - } - } - - if (!$this->get('quiet')) { - echo "Successfully generated " . $this->get('number_of_modules') * $this->get('number_of_sections') - . " modules in each course!{$this->eolchar}"; - } - - return $modules_array; - } - return null; - } - - public function generate_questions($courses, $modules) { - global $DB, $CFG; - - if (!is_null($this->get('questions_per_course')) && count($courses) > 0 && is_array($courses)) { - require_once($CFG->libdir .'/questionlib.php'); - require_once($CFG->dirroot .'/mod/quiz/editlib.php'); - $questions = array(); - $questionsmenu = question_bank::get_creatable_qtypes(); - $questiontypes = array(); - foreach ($questionsmenu as $qtype => $qname) { - $questiontypes[] = $qtype; - } - - // Add the questions - foreach ($courses as $courseid) { - $questions[$courseid] = array(); - for ($i = 0; $i < $this->get('questions_per_course'); $i++) { - $qtype = $questiontypes[array_rand($questiontypes)]; - - // Only the following types are supported right now. Hang around for more! - $supported_types = array('match', 'essay', 'multianswer', 'multichoice', 'shortanswer', - 'numerical', 'truefalse', 'calculated'); - $qtype = $supported_types[array_rand($supported_types)]; - - if ($qtype == 'calculated') { - continue; - } - $classname = "question_{$qtype}_qtype"; - if ($qtype == 'multianswer') { - $classname = "embedded_cloze_qtype"; - } - - $question = new $classname(); - $question->qtype = $qtype; - $questions[$courseid][] = $question->generate_test("question$qtype-$i", $courseid); - $this->verbose("Generated a question of type $qtype for course id $courseid."); - } - } - - // Assign questions to quizzes, if such exist - if (!empty($modules['quiz']) && !empty($questions) && !is_null($this->get('questions_per_quiz'))) { - $quizzes = $modules['quiz']; - - // Cannot assign more questions per quiz than are available, so determine which is the largest - $questions_per_quiz = max(count($questions), $this->get('questions_per_quiz')); - - foreach ($quizzes as $quiz) { - $questions_added = array(); - for ($i = 0; $i < $questions_per_quiz; $i++) { - - // Add a random question to the quiz - do { - if (empty($quiz->course)) { - print_object($quizzes);die(); - } - $random = rand(0, count($questions[$quiz->course])); - } while (in_array($random, $questions_added) || !array_key_exists($random, $questions[$quiz->course])); - - if (!quiz_add_quiz_question($questions[$quiz->course][$random]->id, $quiz)) { - - // Could not add question to quiz!! report error - if (!$this->get('quiet')) { - echo "WARNING: Could not add question id $random to quiz id $quiz->id{$this->eolchar}"; - } - } else { - $this->verbose("Adding question id $random to quiz id $quiz->id."); - $questions_added[] = $random; - } - } - } - } - return $questions; - } - return null; - } - - public function generate_role_assignments($users, $courses) { - global $CFG, $DB; - $course_users = array(); - - if (count($courses) > 0) { - $this->verbose("Inserting student->course role assignments..."); - $assigned_count = 0; - $assigned_users = array(); - - foreach ($courses as $courseid) { - $course_users[$courseid] = array(); - - // Select $students_per_course for assignment to course - shuffle($users); - $users_to_assign = array_slice($users, 0, $this->get('students_per_course')); - - $context = context_course::instance($courseid); - foreach ($users_to_assign as $random_user) { - role_assign(5, $random_user, $context->id); - - $assigned_count++; - $course_users[$courseid][] = $random_user; - if (!isset($assigned_users[$random_user])) { - $assigned_users[$random_user] = 1; - } else { - $assigned_users[$random_user]++; - } - $this->verbose("Student $random_user was assigned to course $courseid."); - } - } - - if (!$this->get('quiet')) { - echo "$assigned_count user => course role assignments have been correctly performed.{$this->eolchar}"; - } - return $course_users; - } - return null; - } - - public function generate_forum_posts($course_users, $modules) { - global $CFG, $DB, $USER; - - if (in_array('forum', $this->modules_list) && - $this->get('discussions_per_forum') && - $this->get('posts_per_discussion') && - isset($modules['forum'])) { - - $discussions_count = 0; - $posts_count = 0; - - foreach ($modules['forum'] as $forum) { - $forum_users = $course_users[$forum->course]; - - for ($i = 0; $i < $this->get('discussions_per_forum'); $i++) { - $mform = new fake_form(); - - require_once($CFG->dirroot.'/mod/forum/lib.php'); - - $discussion = new stdClass(); - $discussion->course = $forum->course; - $discussion->forum = $forum->id; - $discussion->name = 'Test discussion'; - $discussion->intro = 'This is just a test forum discussion'; - $discussion->assessed = 0; - $discussion->messageformat = 1; - $discussion->messagetrust = 0; - $discussion->mailnow = false; - $discussion->groupid = -1; - $discussion->attachments = null; - $discussion->itemid = 752157083; - - $message = ''; - $super_global_user = clone($USER); - $user_id = $forum_users[array_rand($forum_users)]; - $USER = $DB->get_record('user', array('id' => $user_id)); - - if ($discussion_id = forum_add_discussion($discussion, $mform, $message)) { - $discussion = $DB->get_record('forum_discussions', array('id' => $discussion_id)); - $discussions_count++; - - // Add posts to this discussion - $post_ids = array($discussion->firstpost); - - for ($j = 0; $j < $this->get('posts_per_discussion'); $j++) { - $global_user = clone($USER); - $user_id = $forum_users[array_rand($forum_users)]; - $USER = $DB->get_record('user', array('id' => $user_id)); - $post = new stdClass(); - $post->discussion = $discussion_id; - $post->subject = 'Re: test discussion'; - $post->message = '

Nothing much to say, since this is just a test...

'; - $post->format = 1; - $post->attachments = null; - $post->itemid = 752157083; - $post->parent = $post_ids[array_rand($post_ids)]; - - if ($post_ids[] = forum_add_new_post($post, $mform, $message)) { - $posts_count++; - } - $USER = $global_user; - } - } - - $USER = $super_global_user; - - if ($forum->type == 'single') { - break; - } - } - } - if ($discussions_count > 0 && !$this->get('quiet')) { - echo "$discussions_count forum discussions have been generated.{$this->eolchar}"; - } - if ($posts_count > 0 && !$this->get('quiet')) { - echo "$posts_count forum posts have been generated.{$this->eolchar}"; - } - - return true; - } - return null; - - } - - public function generate_grades($course_users, $courses, $modules) { - global $CFG, $DB, $USER; - - /** - * ASSIGNMENT GRADES GENERATION - */ - if ($this->get('assignment_grades') && isset($modules['assignment'])) { - $grades_count = 0; - foreach ($course_users as $courseid => $userid_array) { - foreach ($userid_array as $userid) { - foreach ($modules['assignment'] as $assignment) { - if (in_array($assignment->course, $courses)) { - $maxgrade = $assignment->grade; - $random_grade = rand(0, $maxgrade); - $grade = new stdClass(); - $grade->assignment = $assignment->id; - $grade->userid = $userid; - $grade->grade = $random_grade; - $grade->rawgrade = $random_grade; - $grade->teacher = $USER->id; - $grade->submissioncomment = 'comment'; - $DB->insert_record('assignment_submissions', $grade); - grade_update('mod/assignment', $assignment->course, 'mod', 'assignment', $assignment->id, 0, $grade); - $this->verbose("A grade ($random_grade) has been given to user $userid " - . "for assignment $assignment->id"); - $grades_count++; - } - } - } - } - if ($grades_count > 0) { - $this->verbose("$grades_count assignment grades have been generated.{$this->eolchar}"); - } - } - - /** - * QUIZ GRADES GENERATION - */ - if ($this->get('quiz_grades') && isset($modules['quiz'])) { - $grades_count = 0; - foreach ($course_users as $userid => $courses) { - foreach ($modules['quiz'] as $quiz) { - if (in_array($quiz->course, $courses)) { - $maxgrade = $quiz->grade; - $random_grade = rand(0, $maxgrade); - $grade = new stdClass(); - $grade->quiz = $quiz->id; - $grade->userid = $userid; - $grade->grade = $random_grade; - $grade->rawgrade = $random_grade; - $DB->insert_record('quiz_grades', $grade); - grade_update('mod/quiz', $courseid, 'mod', 'quiz', $quiz->id, 0, $grade); - $this->verbose("A grade ($random_grade) has been given to user $userid for quiz $quiz->id"); - $grades_count++; - } - } - } - if ($grades_count > 0 && !$this->get('quiet')) { - echo "$grades_count quiz grades have been generated.{$this->eolchar}"; - } - } - return null; - } - - public function generate_module_content($course_users, $courses, $modules) { - global $USER, $DB, $CFG; - $result = null; - - $entries_count = 0; - if ($this->get('entries_per_glossary') && !empty($modules['glossary'])) { - foreach ($modules['glossary'] as $glossary) { - for ($i = 0; $i < $this->get('entries_per_glossary'); $i++) { - $entry = new stdClass(); - $entry->glossaryid = $glossary->id; - $entry->userid = $USER->id; - $entry->concept = "Test concept"; - $entry->definition = "A test concept is nothing to write home about: just a test concept."; - $entry->format = 1; - $entry->timecreated = time(); - $entry->timemodified = time(); - $entry->teacherentry = 0; - $entry->approved = 1; - $DB->insert_record('glossary_entries', $entry); - $entries_count++; - } - } - if ($entries_count > 0 && !$this->get('quiet')) { - echo "$entries_count glossary definitions have been generated.{$this->eolchar}"; - } - $result = true; - } - - $fields_count = 0; - if (!empty($modules['data']) && $this->get('fields_per_database') && $this->get('database_records_per_student')) { - $database_field_types = array('checkbox', - 'date', - 'file', - 'latlong', - 'menu', - 'multimenu', - 'number', - 'picture', - 'radiobutton', - 'text', - 'textarea', - 'url'); - - - $fields = array(); - - foreach ($modules['data'] as $data) { - - for ($i = 0; $i < $this->get('fields_per_database'); $i++) { - $type = $database_field_types[array_rand($database_field_types)]; - require_once($CFG->dirroot.'/mod/data/field/'.$type.'/field.class.php'); - $newfield = 'data_field_'.$type; - $cm = get_coursemodule_from_instance('data', $data->id); - $newfield = new $newfield(0, $data, $cm); - $fields[$data->id][] = $newfield; - $newfield->insert_field(); - } - - // Generate fields for each database (same fields for all, no arguing) - for ($i = 0; $i < $this->get('fields_per_database'); $i++) { - - } - - // Generate database records for each student, if needed - for ($i = 0; $i < $this->get('database_records_per_student'); $i++) { - - } - } - if ($fields_count > 0 && !$this->get('quiet')) { - $datacount = count($modules['data']); - echo "$fields_count database fields have been generated for each of the " - . "$datacount generated databases.{$this->eolchar}"; - } - $result = true; - } - - $messages_count = 0; - if (!empty($modules['chat']) && $this->get('messages_per_chat')) { - - // Insert all users into chat_users table, then a message from each user - foreach ($modules['chat'] as $chat) { - - foreach ($course_users as $courseid => $users_array) { - - foreach ($users_array as $userid) { - if ($messages_count < $this->get('messages_per_chat')) { - $chat_user = new stdClass(); - $chat_user->chatid = $chat->id; - $chat_user->userid = $userid; - $chat_user->course = $courseid; - $DB->insert_record('chat_users', $chat_user); - - $chat_message = new stdClass(); - $chat_message->chatid = $chat->id; - $chat_message->userid = $userid; - $chat_message->message = "Hi, everyone!"; - $DB->insert_record('chat_messages', $chat_message); - - $messages_count++; - } - } - } - } - - if ($messages_count > 0 && !$this->get('quiet')) { - $datacount = count($modules['chat']); - echo "$messages_count messages have been generated for each of the " - . "$datacount generated chats.{$this->eolchar}"; - } - $result = true; - } - - return $result; - } - - - /** - * If verbose is switched on, prints a string terminated by the global eolchar string. - * @param string $string The string to STDOUT - */ - public function verbose($string) { - if ($this->get('verbose') && !$this->get('quiet')) { - echo $string . $this->eolchar; - } - } - - - /** - * Attempts to delete all generated test data. - * WARNING: THIS WILL COMPLETELY MESS UP A "REAL" SITE, AND IS INTENDED ONLY FOR DEVELOPMENT PURPOSES - */ - function data_cleanup() { - global $DB; - - if ($this->get('quiet')) { - ob_start(); - } - - // TODO Cleanup code - - if ($this->get('quiet')) { - ob_end_clean(); - } - } - - public function get($setting) { - if (isset($this->settings[$setting])) { - return $this->settings[$setting]->value; - } else { - return null; - } - } - - public function set($setting, $value) { - if (isset($this->settings[$setting])) { - $this->settings[$setting]->value = $value; - } else { - return false; - } - } - - public function get_module_type($modulename) { - $return_val = false; - - $type = $this->get($modulename.'_type'); - - if (is_object($type) && isset($type->type) && isset($type->options)) { - - if ($type->type == GENERATOR_RANDOM) { - $return_val = $type->options[array_rand($type->options)]; - - } elseif ($type->type == GENERATOR_SEQUENCE) { - $return_val = $type->options[$this->{$modulename.'_type_counter'}]; - $this->{$modulename.'_type_counter'}++; - - if ($this->{$modulename.'_type_counter'} == count($type->options)) { - $this->{$modulename.'_type_counter'} = 0; - } - } - - } elseif (is_array($type)) { - $return_val = $type[array_rand($type)]; - - } elseif (is_string($type)) { - $return_val = $type; - } - - return $return_val; - } -} - -class generator_argument { - public $short; - public $long; - public $help; - public $type; - public $default = null; - public $value; - - public function __construct($params) { - foreach ($params as $key => $val) { - $this->$key = $val; - } - $this->value = $this->default; - } -} - -class generator_cli extends generator { - public $eolchar = "\n"; - - public function __construct($settings, $argc) { - parent::__construct(); - - // Building the USAGE output of the command line version - $help = "Moodle Data Generator. Generates Data for Moodle sites. Good for benchmarking and other tests.\n\n" - . "FOR DEVELOPMENT PURPOSES ONLY! DO NOT USE ON A PRODUCTION SITE!\n\n" - . "Note: By default the script attempts to fill DB tables prefixed with tst_\n" - . "To override the prefix, use the -P (--database_prefix) setting.\n\n" - . "Usage: {$settings[0]}; [OPTION] ...\n" - . "Options:\n" - . " -h, -?, -help, --help This output\n"; - - foreach ($this->settings as $argument) { - $equal = ''; - if (!empty($argument->type)) { - $equal = "={$argument->type}"; - } - - $padding1 = 5 - strlen($argument->short); - $padding2 = 30 - (strlen($argument->long) + strlen($equal)); - $paddingstr1 = ''; - for ($i = 0; $i < $padding1; $i++) { - $paddingstr1 .= ' '; - } - $paddingstr2 = ''; - for ($i = 0; $i < $padding2; $i++) { - $paddingstr2 .= ' '; - } - - $help .= " -{$argument->short},$paddingstr1--{$argument->long}$equal$paddingstr2{$argument->help}\n"; - } - - $help .= "\nUse http://tracker.moodle.org for any suggestions or bug reports.\n"; - - if ($argc == 1 || in_array($settings[1], array('--help', '-help', '-h', '-?'))) { - echo $help; - die(); - - } else { - $this->do_generation = true; - $settings = $this->_arguments($settings); - $argscount = 0; - - foreach ($this->settings as $argument) { - $value = null; - - if (in_array($argument->short, array_keys($settings))) { - $value = $settings[$argument->short]; - unset($settings[$argument->short]); - - } elseif (in_array($argument->long, array_keys($settings))) { - $value = $settings[$argument->long]; - unset($settings[$argument->long]); - } - - if (!is_null($value)) { - - if (!empty($argument->type) && ($argument->type == 'mod1,mod2...' || $argument->type == 'SELECT')) { - $value = explode(',', $value); - } - - $this->set($argument->long, $value); - $argscount++; - } - } - - // If some params are left in argv, it means they are not supported - if ($argscount == 0 || count($settings) > 0) { - echo $help; - die(); - } - } - - $this->connect(); - } - - public function generate_data() { - if (is_null($this->get('username')) || $this->get('username') == '') { - echo "You must enter a valid username for a moodle administrator account on this site.{$this->eolchar}"; - die(); - } elseif (is_null($this->get('password')) || $this->get('password') == '') { - echo "You must enter a valid password for a moodle administrator account on this site.{$this->eolchar}"; - die(); - } else { - if (!$user = authenticate_user_login($this->get('username'), $this->get('password'))) { - echo "Invalid username or password!{$this->eolchar}"; - die(); - } - if (!is_siteadmin($user)) {//TODO: add some proper access control check here!! - echo "You do not have administration privileges on this Moodle site. " - ."These are required for running the generation script.{$this->eolchar}"; - die(); - } - complete_user_login($user); - } - - parent::generate_data(); - } - - /** - * Converts the standard $argv into an associative array taking var=val arguments into account - * @param array $argv - * @return array $_ARG - */ - private function _arguments($argv) { - $_ARG = array(); - foreach ($argv as $arg) { - if (preg_match('/--?([^=]+)=(.*)/',$arg,$reg)) { - $_ARG[$reg[1]] = $reg[2]; - } elseif(preg_match('/-([a-zA-Z0-9]+)/',$arg,$reg)) { - $_ARG[$reg[1]] = 'true'; - } - } - return $_ARG; - } -} - -class generator_web extends generator { - public $eolchar = '
'; - public $mform; - - public function setup() { - global $CFG; - $this->mform = new generator_form(); - - if ($data = $this->mform->get_data(false)) { - $this->do_generation = optional_param('do_generation', false, PARAM_BOOL); - foreach ($this->settings as $setting) { - if (isset($data->{$setting->long})) { - $this->set($setting->long, $data->{$setting->long}); - } - } - } else { - $this->do_generation = false; - } - } - - public function display() { - global $OUTPUT, $PAGE; - $PAGE->set_title("Data generator"); - echo $OUTPUT->header(); - echo $OUTPUT->heading("Data generator: web interface"); - echo $OUTPUT->heading("FOR DEVELOPMENT PURPOSES ONLY. DO NOT USE ON A PRODUCTION SITE!", 3); - echo $OUTPUT->heading("Your database contents will probably be massacred. You have been warned", 5); - - $this->mform->display(); - $this->connect(); - } - - public function complete() { - global $OUTPUT; - $this->dispose(); - echo $OUTPUT->footer(); - } -} - -class generator_silent extends generator { - -} - -function generator_generate_data($settings) { - $generator = new generator($settings); - $generator->do_generation = true; - $generator->generate_data(); -} - -class fake_form { - function get_new_filename($string) { - return false; - } - - function save_stored_file() { - return true; - } - - function get_data() { - return array(); - } -} - -class generator_form extends moodleform { - function definition() { - global $generator, $CFG; //TODO: sloppy coding style!! - - $mform =& $this->_form; - $mform->addElement('hidden', 'do_generation', 1); - $mform->setType('do_generation', PARAM_INT); - - foreach ($generator->settings as $setting) { - $type = 'advcheckbox'; - $options = null; - $htmloptions = null; - - $label = ucfirst(str_replace('_', ' ', $setting->long)); - if (!empty($setting->type) && $setting->type == 'mod1,mod2...') { - $type = 'select'; - $options = $generator->modules_list; - $htmloptions = array('multiple' => 'multiple'); - } elseif (!empty($setting->type) && $setting->type == 'SELECT') { - $type = 'select'; - $options = array(); - foreach ($setting->default as $option) { - $options[$option] = $option; - } - $htmloptions = array('multiple' => 'multiple'); - } elseif (!empty($setting->type)) { - $type = 'text'; - } - - if ($setting->long == 'password' || $setting->long == 'username') { - continue; - } - - $mform->addElement($type, $setting->long, $label, $options, $htmloptions); - - if (isset($setting->default)) { - $mform->setDefault($setting->long, $setting->default); - } - } - $this->add_action_buttons(false, 'Generate data!'); - } - - function definition_after_data() { - - } -} diff --git a/admin/tool/generator/version.php b/admin/tool/generator/version.php index 3733d984b92..cc8744f3877 100644 --- a/admin/tool/generator/version.php +++ b/admin/tool/generator/version.php @@ -24,6 +24,6 @@ defined('MOODLE_INTERNAL') || die(); -$plugin->version = 2013090200; +$plugin->version = 2013091200; $plugin->requires = 2013090200; $plugin->component = 'tool_generator'; From 82d05bc63fa1cd0ba55c4907784f19a9e56415af Mon Sep 17 00:00:00 2001 From: Adrian Greeve Date: Fri, 13 Sep 2013 15:26:13 +0800 Subject: [PATCH 004/101] MDL-41772 - mod_data: Fixed database_module comments not being restored. --- .../moodle2/restore_data_activity_task.class.php | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/mod/data/backup/moodle2/restore_data_activity_task.class.php b/mod/data/backup/moodle2/restore_data_activity_task.class.php index 3896158189b..b444f68fc39 100644 --- a/mod/data/backup/moodle2/restore_data_activity_task.class.php +++ b/mod/data/backup/moodle2/restore_data_activity_task.class.php @@ -120,4 +120,19 @@ class restore_data_activity_task extends restore_activity_task { return $rules; } + + /** + * Given a commment area, return the itemname that contains the itemid mappings. + * + * @param string $commentarea Comment area name e.g. database_entry. + * @return string name of the mapping used to determine the itemid. + */ + public function get_comment_mapping_itemname($commentarea) { + if ($commentarea == 'database_entry') { + $itemname = 'data_record'; + } else { + $itemname = parent::get_comment_mapping_itemname($commentarea); + } + return $itemname; + } } From 2a70b70c441aa9693370fba0194afc75c26e46e6 Mon Sep 17 00:00:00 2001 From: sam marshall Date: Mon, 9 Sep 2013 16:17:44 +0100 Subject: [PATCH 005/101] MDL-41087 Backup: add progress tracking in slow steps Adds calls to the new backup progress tracking API within various steps of the backup system - previously it only tracked progress between steps, but some steps can themselves be slow. This ensures the system displays progress (either by moving the progress bar if possible, or by making the wibbler below it pulsate) during nearly all of the backup process. --- backup/moodle2/backup_stepslib.php | 46 +++++++++++++++++-- .../dbops/backup_structure_dbops.class.php | 10 +++- .../util/plan/backup_structure_step.class.php | 5 +- .../backup_structure_processor.class.php | 22 ++++++++- 4 files changed, 76 insertions(+), 7 deletions(-) diff --git a/backup/moodle2/backup_stepslib.php b/backup/moodle2/backup_stepslib.php index e2f47f6498c..9437714206f 100644 --- a/backup/moodle2/backup_stepslib.php +++ b/backup/moodle2/backup_stepslib.php @@ -1499,10 +1499,16 @@ class move_inforef_annotations_to_final extends backup_execution_step { // Items we want to include in the inforef file $items = backup_helper::get_inforef_itemnames(); + $progress = $this->task->get_progress(); + $progress->start_progress($this->get_name(), count($items)); + $done = 1; foreach ($items as $itemname) { // Delegate to dbops - backup_structure_dbops::move_annotations_to_final($this->get_backupid(), $itemname); + backup_structure_dbops::move_annotations_to_final($this->get_backupid(), + $itemname, $progress); + $progress->progress($done++); } + $progress->end_progress(); } } @@ -1667,7 +1673,11 @@ class backup_main_structure_step extends backup_structure_step { /** * Execution step that will generate the final zip (.mbz) file with all the contents */ -class backup_zip_contents extends backup_execution_step { +class backup_zip_contents extends backup_execution_step implements file_progress { + /** + * @var bool True if we have started tracking progress + */ + protected $startedprogress; protected function define_execution() { @@ -1694,8 +1704,34 @@ class backup_zip_contents extends backup_execution_step { $zippacker = get_file_packer('application/zip'); // Zip files - $zippacker->archive_to_pathname($files, $zipfile); + $zippacker->archive_to_pathname($files, $zipfile, true, $this); + + // If any progress happened, end it. + if ($this->startedprogress) { + $this->task->get_progress()->end_progress(); + } } + + /** + * Implementation for file_progress interface to display unzip progress. + * + * @param int $progress Current progress + * @param int $max Max value + */ + public function progress($progress = file_progress::INDETERMINATE, $max = file_progress::INDETERMINATE) { + $reporter = $this->task->get_progress(); + + // Start tracking progress if necessary. + if (!$this->startedprogress) { + $reporter->start_progress('extract_file_to_dir', ($max == file_progress::INDETERMINATE) + ? core_backup_progress::INDETERMINATE : $max); + $this->startedprogress = true; + } + + // Pass progress through to whatever handles it. + $reporter->progress(($progress == file_progress::INDETERMINATE) + ? core_backup_progress::INDETERMINATE : $progress); + } } /** @@ -1955,6 +1991,8 @@ class backup_annotate_all_user_files extends backup_execution_step { // Fetch all annotated (final) users $rs = $DB->get_recordset('backup_ids_temp', array( 'backupid' => $this->get_backupid(), 'itemname' => 'userfinal')); + $progress = $this->task->get_progress(); + $progress->start_progress($this->get_name()); foreach ($rs as $record) { $userid = $record->itemid; $userctx = context_user::instance($userid, IGNORE_MISSING); @@ -1966,8 +2004,10 @@ class backup_annotate_all_user_files extends backup_execution_step { // We don't need to specify itemid ($userid - 5th param) as far as by // context we can get all the associated files. See MDL-22092 backup_structure_dbops::annotate_files($this->get_backupid(), $userctx->id, 'user', $filearea, null); + $progress->progress(); } } + $progress->end_progress(); $rs->close(); } } diff --git a/backup/util/dbops/backup_structure_dbops.class.php b/backup/util/dbops/backup_structure_dbops.class.php index 29529f0b6b6..61a903a9919 100644 --- a/backup/util/dbops/backup_structure_dbops.class.php +++ b/backup/util/dbops/backup_structure_dbops.class.php @@ -130,10 +130,16 @@ abstract class backup_structure_dbops extends backup_dbops { /** * Moves all the existing 'item' annotations to their final 'itemfinal' ones * for a given backup. + * + * @param string $backupid Backup ID + * @param string $itemname Item name + * @param core_backup_progress $progress Progress tracker */ - public static function move_annotations_to_final($backupid, $itemname) { + public static function move_annotations_to_final($backupid, $itemname, core_backup_progress $progress) { global $DB; + $progress->start_progress('move_annotations_to_final'); $rs = $DB->get_recordset('backup_ids_temp', array('backupid' => $backupid, 'itemname' => $itemname)); + $progress->progress(); foreach($rs as $annotation) { // If corresponding 'itemfinal' annotation does not exist, update 'item' to 'itemfinal' if (! $DB->record_exists('backup_ids_temp', array('backupid' => $backupid, @@ -141,10 +147,12 @@ abstract class backup_structure_dbops extends backup_dbops { 'itemid' => $annotation->itemid))) { $DB->set_field('backup_ids_temp', 'itemname', $itemname . 'final', array('id' => $annotation->id)); } + $progress->progress(); } $rs->close(); // All the remaining $itemname annotations can be safely deleted $DB->delete_records('backup_ids_temp', array('backupid' => $backupid, 'itemname' => $itemname)); + $progress->end_progress(); } /** diff --git a/backup/util/plan/backup_structure_step.class.php b/backup/util/plan/backup_structure_step.class.php index 9c3d0e719fe..5ff5d086637 100644 --- a/backup/util/plan/backup_structure_step.class.php +++ b/backup/util/plan/backup_structure_step.class.php @@ -73,7 +73,9 @@ abstract class backup_structure_step extends backup_step { // from xml_writer (blame serialized data!) } $xw = new xml_writer($xo, $xt); - $pr = new backup_structure_processor($xw); + $progress = $this->task->get_progress(); + $progress->start_progress($this->get_name()); + $pr = new backup_structure_processor($xw, $progress); // Set processor variables from settings foreach ($this->get_settings() as $setting) { @@ -105,6 +107,7 @@ abstract class backup_structure_step extends backup_step { // Close everything $xw->stop(); + $progress->end_progress(); // Destroy the structure. It helps PHP 5.2 memory a lot! $structure->destroy(); diff --git a/backup/util/structure/backup_structure_processor.class.php b/backup/util/structure/backup_structure_processor.class.php index 3c648545dd9..88cfeca3cee 100644 --- a/backup/util/structure/backup_structure_processor.class.php +++ b/backup/util/structure/backup_structure_processor.class.php @@ -37,9 +37,21 @@ class backup_structure_processor extends base_processor { protected $writer; // xml_writer where the processor is going to output data protected $vars; // array of backup::VAR_XXX => helper value pairs to be used by source specifications - public function __construct(xml_writer $writer) { + /** + * @var core_backup_progress Progress tracker (null if none) + */ + protected $progress; + + /** + * Constructor. + * + * @param xml_writer $writer XML writer to save data + * @param core_backup_progress $progress Progress tracker (optional) + */ + public function __construct(xml_writer $writer, core_backup_progress $progress = null) { $this->writer = $writer; - $this->vars = array(); + $this->progress = $progress; + $this->vars = array(); } public function set_var($key, $value) { @@ -83,6 +95,9 @@ class backup_structure_processor extends base_processor { public function post_process_nested_element(base_nested_element $nested) { // Send close tag to xml_writer $this->writer->end_tag($nested->get_name()); + if ($this->progress) { + $this->progress->progress(); + } } public function process_final_element(base_final_element $final) { @@ -93,6 +108,9 @@ class backup_structure_processor extends base_processor { $attrarr[$attribute->get_name()] = $attribute->get_value(); } $this->writer->full_tag($final->get_name(), $final->get_value(), $attrarr); + if ($this->progress) { + $this->progress->progress(); + } // Annotate current value if configured to do so $final->annotate($this->get_var(backup::VAR_BACKUPID)); } From 4d7d17ddcc2213da20df783d43ee733490710eb7 Mon Sep 17 00:00:00 2001 From: Yuliya Bozhko Date: Fri, 6 Sep 2013 15:32:59 +1200 Subject: [PATCH 006/101] MDL-40550 badges: Change wording of badge activation message Add confirmation check when activating badge from management page --- badges/action.php | 1 + badges/criteria.php | 4 ++-- badges/criteria_action.php | 1 + badges/criteria_settings.php | 4 +++- badges/index.php | 26 ++++---------------------- badges/recipients.php | 1 - badges/renderer.php | 10 +++++++--- lang/en/badges.php | 14 +++++++++++--- 8 files changed, 29 insertions(+), 32 deletions(-) diff --git a/badges/action.php b/badges/action.php index f6f9524fa9a..66c2b3b8afe 100644 --- a/badges/action.php +++ b/badges/action.php @@ -110,6 +110,7 @@ if ($activate) { if ($confirm == 1) { require_sesskey(); $badge->set_status($status); + $returnurl->param('msg', 'activatesuccess'); if ($badge->type == BADGE_TYPE_SITE) { // Review on cron if there are more than 1000 users who can earn a site-level badge. diff --git a/badges/criteria.php b/badges/criteria.php index 7a1e0e4f1ef..20848d294c2 100644 --- a/badges/criteria.php +++ b/badges/criteria.php @@ -72,7 +72,7 @@ if ((($update == BADGE_CRITERIA_AGGREGATION_ALL) || ($update == BADGE_CRITERIA_A $obj->id = $badge->criteria[BADGE_CRITERIA_TYPE_OVERALL]->id; $obj->method = $update; if ($DB->update_record('badge_criteria', $obj)) { - $msg = get_string('changessaved'); + $msg = 'criteriaupdated'; } else { $emsg = get_string('error:save', 'badges'); } @@ -84,7 +84,7 @@ echo $OUTPUT->heading(print_badge_image($badge, $context, 'small') . ' ' . $badg if ($emsg !== '') { echo $OUTPUT->notification($emsg); } else if ($msg !== '') { - echo $OUTPUT->notification($msg, 'notifysuccess'); + echo $OUTPUT->notification(get_string($msg, 'badges'), 'notifysuccess'); } echo $output->print_badge_status_box($badge); diff --git a/badges/criteria_action.php b/badges/criteria_action.php index 74ff62c01c1..51b3e89780e 100644 --- a/badges/criteria_action.php +++ b/badges/criteria_action.php @@ -80,6 +80,7 @@ if ($delete && has_capability('moodle/badges:configurecriteria', $context)) { } else { $badge->criteria[$type]->delete(); } + $return->param('msg', 'criteriadeleted'); redirect($return); } diff --git a/badges/criteria_settings.php b/badges/criteria_settings.php index 486febda0e0..6f52fa050a6 100644 --- a/badges/criteria_settings.php +++ b/badges/criteria_settings.php @@ -71,8 +71,10 @@ $PAGE->navbar->add($badge->name, new moodle_url('overview.php', array('id' => $b $cparams = array('criteriatype' => $type, 'badgeid' => $badge->id); if ($edit) { $criteria = $badge->criteria[$type]; + $msg = 'criteriaupdated'; } else { $criteria = award_criteria::build($cparams); + $msg = 'criteriacreated'; } $mform = new edit_criteria_form($FULLME, array('criteria' => $criteria, 'addcourse' => $addcourse, 'course' => $badge->courseid)); @@ -96,7 +98,7 @@ if (!empty($addcourse)) { $criteria_overall->save(array('agg' => BADGE_CRITERIA_AGGREGATION_ALL)); } $criteria->save($data); - $return->param('msg', get_string('changessaved')); + $return->param('msg', $msg); redirect($return); } diff --git a/badges/index.php b/badges/index.php index 6b00bd2df35..a0d2f17f310 100644 --- a/badges/index.php +++ b/badges/index.php @@ -124,33 +124,15 @@ if ($delete && has_capability('moodle/badges:deletebadge', $PAGE->context)) { } } -if ($activate && has_capability('moodle/badges:configuredetails', $PAGE->context)) { - $badge = new badge($activate); - - if (!$badge->has_criteria()) { - $err = get_string('error:cannotact', 'badges') . get_string('nocriteria', 'badges'); - } else { - if ($badge->is_locked()) { - $badge->set_status(BADGE_STATUS_ACTIVE_LOCKED); - $msg = get_string('activatesuccess', 'badges'); - } else { - require_sesskey(); - $badge->set_status(BADGE_STATUS_ACTIVE); - $msg = get_string('activatesuccess', 'badges'); - } - $returnurl->param('msg', $msg); - redirect($returnurl); - } -} else if ($deactivate && has_capability('moodle/badges:configuredetails', $PAGE->context)) { +if ($deactivate && has_capability('moodle/badges:configuredetails', $PAGE->context)) { + require_sesskey(); $badge = new badge($deactivate); if ($badge->is_locked()) { $badge->set_status(BADGE_STATUS_INACTIVE_LOCKED); - $msg = get_string('deactivatesuccess', 'badges'); } else { - require_sesskey(); $badge->set_status(BADGE_STATUS_INACTIVE); - $msg = get_string('deactivatesuccess', 'badges'); } + $msg = 'deactivatesuccess'; $returnurl->param('msg', $msg); redirect($returnurl); } @@ -178,7 +160,7 @@ if ($totalcount) { } if ($msg !== '') { - echo $OUTPUT->notification($msg, 'notifysuccess'); + echo $OUTPUT->notification(get_string($msg, 'badges'), 'notifysuccess'); } $badges = new badge_management($records); diff --git a/badges/recipients.php b/badges/recipients.php index 539696b6ea7..4eac9545623 100644 --- a/badges/recipients.php +++ b/badges/recipients.php @@ -31,7 +31,6 @@ $badgeid = required_param('id', PARAM_INT); $sortby = optional_param('sort', 'dateissued', PARAM_ALPHA); $sorthow = optional_param('dir', 'DESC', PARAM_ALPHA); $page = optional_param('page', 0, PARAM_INT); -$updatepref = optional_param('updatepref', false, PARAM_BOOL); require_login(); diff --git a/badges/renderer.php b/badges/renderer.php index 3075dc1f97b..de4894e6d7d 100644 --- a/badges/renderer.php +++ b/badges/renderer.php @@ -228,12 +228,16 @@ class core_badges_renderer extends plugin_renderer_base { public function print_badge_table_actions($badge, $context) { $actions = ""; - if (has_capability('moodle/badges:configuredetails', $context)) { + if (has_capability('moodle/badges:configuredetails', $context) && $badge->has_criteria()) { // Activate/deactivate badge. if ($badge->status == BADGE_STATUS_INACTIVE || $badge->status == BADGE_STATUS_INACTIVE_LOCKED) { - $url = new moodle_url(qualified_me()); - $url->param('activate', $badge->id); + // "Activate" will go to another page and ask for confirmation. + $url = new moodle_url('/badges/action.php'); + $url->param('id', $badge->id); + $url->param('activate', true); $url->param('sesskey', sesskey()); + $return = new moodle_url(qualified_me()); + $url->param('return', $return->out_as_local_url(false)); $actions .= $this->output->action_icon($url, new pix_icon('t/show', get_string('activate', 'badges'))) . " "; } else { $url = new moodle_url(qualified_me()); diff --git a/lang/en/badges.php b/lang/en/badges.php index 09cc67510ff..8adeba50c36 100644 --- a/lang/en/badges.php +++ b/lang/en/badges.php @@ -139,6 +139,9 @@ $string['createbutton'] = 'Create badge'; $string['creatorbody'] = '

{$a->user} has completed all badge requirements and has been awarded the badge. View issued badge at {$a->link}

'; $string['creatorsubject'] = '\'{$a}\' has been awarded!'; $string['criteriasummary'] = 'Criteria summary'; +$string['criteriacreated'] = 'Badge criteria successfully created'; +$string['criteriadeleted'] = 'Badge criteria successfully deleted'; +$string['criteriaupdated'] = 'Badge criteria successfully updated'; $string['criteria_descr'] = 'Users are awarded this badge when they complete the following requirement:'; $string['criteria_descr_bydate'] = ' by {$a} '; $string['criteria_descr_grade'] = ' with minimum grade of {$a} '; @@ -313,9 +316,14 @@ $string['recipientidentificationproblem'] = 'Cannot find a recipient of this bad $string['recipientvalidationproblem'] = 'Current user cannot be verified as a recipient of this badge.'; $string['relative'] = 'Relative date'; $string['requiredcourse'] = 'At least one course should be added to the courseset criterion.'; -$string['reviewbadge'] = 'Review badge criteria'; -$string['reviewconfirm'] = '

This action will perform a check if any of the users have already completed all the requirements for \'{$a}\' badge?

-

Would you like to proceed?

'; +$string['reviewbadge'] = 'Changes in badge access'; +$string['reviewconfirm'] = '

This will make your badge visible to users and allow them to start earning it.

+ +

It is possible that some users already meet this badge\'s criteria and will be issued this badge immediately after you enable it.

+ +

Once a badge has been issued it will be locked - certain settings including the criteria and expiry settings can no longer be changed.

+ +

Are you sure you want to enable access to the badge \'{$a}\'?

'; $string['save'] = 'Save'; $string['searchname'] = 'Search by name'; $string['selectaward'] = 'Please select the role you would like to use to award this badge: '; From d06ffbdf2d06aa7495dd47685cfc99f7d875a196 Mon Sep 17 00:00:00 2001 From: Simon Coggins Date: Mon, 16 Sep 2013 16:14:29 +1200 Subject: [PATCH 007/101] MDL-41806 Add assessors to moodle_url class New assessors for scheme, host and port. --- lib/tests/weblib_test.php | 30 ++++++++++++++++++++++++++++++ lib/weblib.php | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 63 insertions(+) diff --git a/lib/tests/weblib_test.php b/lib/tests/weblib_test.php index a43dfc6ca7e..8705dccca93 100644 --- a/lib/tests/weblib_test.php +++ b/lib/tests/weblib_test.php @@ -320,6 +320,36 @@ class core_weblib_testcase extends advanced_testcase { $url4->out_as_local_url(); } + public function test_moodle_url_get_scheme() { + // Should return the scheme only. + $url = new moodle_url('http://www.example.org:447/my/file/is/here.txt?really=1'); + $this->assertSame('http', $url->get_scheme()); + + // Should work for secure URLs. + $url = new moodle_url('https://www.example.org:447/my/file/is/here.txt?really=1'); + $this->assertSame('https', $url->get_scheme()); + + // Should return an empty string if no scheme is specified. + $url = new moodle_url('www.example.org:447/my/file/is/here.txt?really=1'); + $this->assertSame('', $url->get_scheme()); + } + + public function test_moodle_url_get_host() { + // Should return the host part only. + $url = new moodle_url('http://www.example.org:447/my/file/is/here.txt?really=1'); + $this->assertSame('www.example.org', $url->get_host()); + } + + public function test_moodle_url_get_port() { + // Should return the port if one provided. + $url = new moodle_url('http://www.example.org:447/my/file/is/here.txt?really=1'); + $this->assertSame(447, $url->get_port()); + + // Should return an empty string if port not specified. + $url = new moodle_url('http://www.example.org/some/path/here.php'); + $this->assertSame('', $url->get_port()); + } + public function test_clean_text() { $text = "lala xx"; $this->assertSame($text, clean_text($text, FORMAT_PLAIN)); diff --git a/lib/weblib.php b/lib/weblib.php index fdde141ad5f..95dc03acc6e 100644 --- a/lib/weblib.php +++ b/lib/weblib.php @@ -822,6 +822,39 @@ class moodle_url { return null; } } + + /** + * Returns the 'scheme' portion of a URL. For example, if the URL is + * http://www.example.org:447/my/file/is/here.txt?really=1 then this will + * return 'http' (without the colon). + * + * @return string Scheme of the URL. + */ + public function get_scheme() { + return $this->scheme; + } + + /** + * Returns the 'host' portion of a URL. For example, if the URL is + * http://www.example.org:447/my/file/is/here.txt?really=1 then this will + * return 'www.example.org'. + * + * @return string Host of the URL. + */ + public function get_host() { + return $this->host; + } + + /** + * Returns the 'port' portion of a URL. For example, if the URL is + * http://www.example.org:447/my/file/is/here.txt?really=1 then this will + * return '447'. + * + * @return string Port of the URL. + */ + public function get_port() { + return $this->port; + } } /** From 9cc23e26923db426c805068c99468a8124f6860e Mon Sep 17 00:00:00 2001 From: Jason Fowler Date: Mon, 16 Sep 2013 11:52:38 +0800 Subject: [PATCH 008/101] MDL-41716 atto - Fix resizing inconsistencies between editor modes --- lib/editor/atto/styles.css | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/editor/atto/styles.css b/lib/editor/atto/styles.css index e794e853fe6..68fff3b9f84 100644 --- a/lib/editor/atto/styles.css +++ b/lib/editor/atto/styles.css @@ -1,11 +1,15 @@ div.editor_atto { background-color: white; border: 1px solid #BBB; + width: 100%; } .editor_atto + textarea { width: 100%; padding: 0; + resize: vertical; + border-radius: 0; + border: 1px solid #BBB; } div.editor_atto_toolbar { @@ -15,6 +19,7 @@ div.editor_atto_toolbar { border-top: 1px solid #BBB; border-left: 1px solid #BBB; border-right: 1px solid #BBB; + width: 100%; } div.editor_atto_toolbar button { From 217a5f97adcc26aeaae055ab7e9f419d57031d7e Mon Sep 17 00:00:00 2001 From: David Monllao Date: Wed, 28 Aug 2013 10:09:05 +0800 Subject: [PATCH 009/101] MDL-41421 tool_generator: Refactoring make_form to make_course_form Also: - Added a soft password for the newly generated users so we can use them to log in the site when running performance tests. - Added a method to see the courses-users relation from outside course_backend class. --- admin/tool/generator/classes/course_backend.php | 17 +++++++++++++++++ .../{make_form.php => make_course_form.php} | 14 +++++++++++++- admin/tool/generator/maketestcourse.php | 6 +++--- 3 files changed, 33 insertions(+), 4 deletions(-) rename admin/tool/generator/classes/{make_form.php => make_course_form.php} (88%) diff --git a/admin/tool/generator/classes/course_backend.php b/admin/tool/generator/classes/course_backend.php index 07e1e7b1c85..5171b835a85 100644 --- a/admin/tool/generator/classes/course_backend.php +++ b/admin/tool/generator/classes/course_backend.php @@ -111,6 +111,15 @@ class tool_generator_course_backend extends tool_generator_backend { parent::__construct($size, $fixeddataset, $progress); } + /** + * Returns the relation between users and course sizes. + * + * @return array + */ + public static function get_users_per_size() { + return self::$paramusers; + } + /** * Gets a list of size choices supported by this backend. * @@ -280,6 +289,8 @@ class tool_generator_course_backend extends tool_generator_backend { * @param int $last Number of last user */ private function create_user_accounts($first, $last) { + global $CFG; + $this->log('createaccounts', (object)array('from' => $first, 'to' => $last), true); $count = $last - $first + 1; $done = 0; @@ -294,6 +305,12 @@ class tool_generator_course_backend extends tool_generator_backend { // Create user account. $record = array('firstname' => get_string('firstname', 'tool_generator'), 'lastname' => $number, 'username' => $username); + + // We add a user password if it has been specified. + if (!empty($CFG->tool_generator_users_password)) { + $record['password'] = $CFG->tool_generator_users_password; + } + $user = $this->generator->create_user($record); $this->userids[$number] = (int)$user->id; $this->dot($done, $count); diff --git a/admin/tool/generator/classes/make_form.php b/admin/tool/generator/classes/make_course_form.php similarity index 88% rename from admin/tool/generator/classes/make_form.php rename to admin/tool/generator/classes/make_course_form.php index 879364d2174..7f7f629c5b3 100644 --- a/admin/tool/generator/classes/make_form.php +++ b/admin/tool/generator/classes/make_course_form.php @@ -25,8 +25,13 @@ require_once($CFG->libdir . '/formslib.php'); * @copyright 2013 The Open University * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ -class tool_generator_make_form extends moodleform { +class tool_generator_make_course_form extends moodleform { + /** + * Course generation tool form definition. + * + * @return void + */ public function definition() { $mform = $this->_form; @@ -41,6 +46,13 @@ class tool_generator_make_form extends moodleform { $mform->addElement('submit', 'submit', get_string('createcourse', 'tool_generator')); } + /** + * Form validation. + * + * @param array $data + * @param array $files + * @return void + */ public function validation($data, $files) { global $DB; $errors = array(); diff --git a/admin/tool/generator/maketestcourse.php b/admin/tool/generator/maketestcourse.php index 82af097cb8f..c5f9c82ab10 100644 --- a/admin/tool/generator/maketestcourse.php +++ b/admin/tool/generator/maketestcourse.php @@ -32,7 +32,7 @@ require('../../../config.php'); require_once($CFG->libdir . '/adminlib.php'); // Initialise page and check permissions. -admin_externalpage_setup('toolgenerator'); +admin_externalpage_setup('toolgeneratorcourse'); // Start page. echo $OUTPUT->header(); @@ -40,7 +40,7 @@ echo $OUTPUT->heading(get_string('maketestcourse', 'tool_generator')); // Information message. $context = context_system::instance(); -echo $OUTPUT->box(format_text(get_string('explanation', 'tool_generator'), +echo $OUTPUT->box(format_text(get_string('courseexplanation', 'tool_generator'), FORMAT_MARKDOWN, array('context' => $context))); // Check debugging is set to DEVELOPER. @@ -51,7 +51,7 @@ if (!debugging('', DEBUG_DEVELOPER)) { } // Set up the form. -$mform = new tool_generator_make_form('maketestcourse.php'); +$mform = new tool_generator_make_course_form('maketestcourse.php'); if ($data = $mform->get_data()) { // Do actual work. echo $OUTPUT->heading(get_string('creating', 'tool_generator')); From 8520de1ee40eac335bbcac0070326c35d63d2c54 Mon Sep 17 00:00:00 2001 From: David Monllao Date: Wed, 28 Aug 2013 16:48:58 +0800 Subject: [PATCH 010/101] MDL-41421 tool_generator: Import .jmx template Ideally we should generate all the XML based on modular components so we can also switch templates between different sizes, this is a first step and more work should be done in future in this direction. --- admin/tool/generator/testplan.template.jmx | 900 +++++++++++++++++++++ 1 file changed, 900 insertions(+) create mode 100644 admin/tool/generator/testplan.template.jmx diff --git a/admin/tool/generator/testplan.template.jmx b/admin/tool/generator/testplan.template.jmx new file mode 100644 index 00000000000..d08a9b50f56 --- /dev/null +++ b/admin/tool/generator/testplan.template.jmx @@ -0,0 +1,900 @@ + + + + + + false + true + + + + runtimestamp + ${__time()} + = + + + users + {{USERS_PLACEHOLDER}} + = + + + loops + {{LOOPS_PLACEHOLDER}} + = + + + rampup + {{RAMPUP_PLACEHOLDER}} + = + + + host + {{HOST_PLACEHOLDER}} + = + + + sitepath + {{SITEPATH_PLACEHOLDER}} + = + + + courseid + {{COURSEID_PLACEHOLDER}} + = + + + pageactivityid + {{PAGEACTIVITYID_PLACEHOLDER}} + = + + + forumactivityid + {{FORUMACTIVITYID_PLACEHOLDER}} + = + + + forumdiscussionid + {{FORUMDISCUSSIONID_PLACEHOLDER}} + = + + + forumreplyid + {{FORUMREPLYID_PLACEHOLDER}} + = + + + + + + + + + all active threads (shared) + + throughput + 120.0 + 0.0 + + + + + Used to fill the caches, logs in every user + continue + + false + 1 + + ${users} + ${rampup} + 1378187955000 + 1378187955000 + false + + + + + + + + + ${host} + + + + + + ${sitepath} + 4 + + + + , + + ${__P(usersfile,YOU_FORGOT_TO_SPECIFY_USERS_CSV_FILE.csv)} + false + true + All threads + false + username,password + + + + true + 1 + + + + + true + rfc2109 + + + + + + + + + + + + + + GET + true + false + true + false + false + + + + + + + + false + ${username} + = + true + username + + + false + ${password} + = + true + password + + + + + + + + + + ${sitepath}/login/index.php + POST + true + false + true + false + false + + + + + + + + + + + + + + + GET + true + false + true + false + false + + + + + + + + false + ${courseid} + = + true + id + + + + + + + + + + ${sitepath}/course/view.php + GET + true + false + true + false + false + + + + + + false + SESSION_SESSKEY + sesskey=([^"]+)" + $1$ + + 2 + all + + + + + + + + false + ${SESSION_SESSKEY} + = + true + sesskey + + + + + + + + + + ${sitepath}/login/logout.php + GET + true + false + true + false + false + + + + + + + continue + + false + ${loops} + + ${users} + ${rampup} + 1376636813000 + 1376636813000 + false + + + + + + + + + ${host} + + + + + + ${sitepath} + 4 + + + + , + + ${__P(usersfile,YOU_FORGOT_TO_SPECIFY_USERS_CSV_FILE.csv)} + false + true + All threads + false + username,password + + + + true + 1 + + + + + true + rfc2109 + + + + + + + + + + + + + + GET + true + false + true + false + false + + + + + + + + false + ${username} + = + true + username + + + false + ${password} + = + true + password + + + + + + + + + + ${sitepath}/login/index.php + POST + true + false + true + false + false + + + + + + <div class="logininfo">You are logged in as + + Assertion.response_data + false + 2 + + + + + + + + + + + + + + + GET + true + false + true + false + false + + + + + + + + false + ${courseid} + = + true + id + + + + + + + + + + ${sitepath}/course/view.php + GET + true + false + true + false + false + + + + + + + + + false + ${pageactivityid} + = + true + id + + + + + + + + + + ${sitepath}/mod/page/view.php + GET + true + false + true + false + false + + + + + + + + false + ${courseid} + = + true + id + + + + + + + + + + ${sitepath}/course/view.php + GET + true + false + true + false + false + + + + + + + + false + ${forumactivityid} + = + true + id + + + + + + + + + + ${sitepath}/mod/forum/view.php + GET + true + false + true + false + false + + + + + + + + false + ${forumdiscussionid} + = + true + d + + + + + + + + + + ${sitepath}/mod/forum/discuss.php + GET + true + false + true + false + false + + + + + + + + false + ${forumreplyid} + = + true + reply + + + + + + + + + + ${sitepath}/mod/forum/post.php + GET + true + false + true + false + false + + + + + false + SESSION_USERID + name="userid"\stype="hidden"\svalue="(\d+)" + $1$ + 0 + 1 + + + + false + SESSION_SESSKEY + name="sesskey"\stype="hidden"\svalue="([^"]+)" + $1$ + 0 + 1 + + + + false + SESSION_FORUMFORMATTACHMENTS + value="(\d+)"\sname="attachments"\stype="hidden" + $1$ + 0 + 1 + + + + false + SESSION_FORUMFORMITEMID + type="hidden"\sname="message\[itemid\]"\svalue="(\d+)" + $1$ + 0 + 1 + + + + + + + + false + ${courseid} + = + true + course + + + false + 0 + = + true + forum + + + false + ${forumdiscussionid} + = + true + discussion + + + false + ${SESSION_USERID} + = + true + userid + + + false + 0 + = + true + groupid + + + false + 0 + = + true + edit + + + false + ${forumreplyid} + = + true + reply + + + false + ${SESSION_SESSKEY} + = + true + sesskey + + + false + 1 + = + true + _qf__mod_forum_post_form + + + false + Re: I am the test plan reply subject + = + true + subject + + + false + ${SESSION_FORUMFORMITEMID} + = + true + message[itemid] + + + false + 1 + = + true + message[format] + + + false + I am the test plan reply message + = + true + message[text] + + + false + ${forumreplyid} + = + true + parent + + + false + 1 + = + true + subscribe + + + false + ${SESSION_FORUMFORMATTACHMENTS} + = + true + attachments + + + false + 0 + = + true + timestart + + + false + 0 + = + true + timeend + + + false + Post to forum + = + true + submitbutton + + + + + + + + + + ${sitepath}/mod/forum/post.php + POST + true + false + true + false + false + + + + + + + + false + ${courseid} + = + true + id + + + + + + + + + + ${sitepath}/course/view.php + GET + true + false + true + false + false + + + + + + + + false + ${courseid} + = + true + id + + + + + + + + + + ${sitepath}/user/index.php + GET + true + false + true + false + false + + + + + + + + false + ${SESSION_SESSKEY} + = + true + sesskey + + + + + + + + + + ${sitepath}/login/logout.php + GET + true + false + true + false + false + + + + + + recorder.bsf + + false + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + true + false + false + false + false + false + 0 + true + + + runs_samples/data.${runtimestamp}.jtl + + + + + + From f6ebcd34f275d8bcc1094cbb98df2ff2b8fef1b5 Mon Sep 17 00:00:00 2001 From: Simon Coggins Date: Mon, 16 Sep 2013 20:15:32 +1200 Subject: [PATCH 011/101] MDL-40848 badges: Validate backpack connection via Persona Instead of trusting that the user owns the email address they supply, we now require them to login via Persona before connecting them to the backpack --- badges/backpack.js | 85 +++++++++++++- badges/backpack_form.php | 49 ++++---- badges/backpackconnect.php | 136 ++++++++++++++++++++++ badges/lib/backpacklib.php | 6 + lang/en/badges.php | 17 ++- pix/i/persona_sign_in_black.png | Bin 0 -> 3543 bytes theme/base/style/core.css | 1 + theme/bootstrapbase/less/moodle/core.less | 6 + theme/bootstrapbase/style/moodle.css | 2 +- 9 files changed, 276 insertions(+), 26 deletions(-) create mode 100644 badges/backpackconnect.php create mode 100644 pix/i/persona_sign_in_black.png diff --git a/badges/backpack.js b/badges/backpack.js index 98678e8f29e..d20ad17d6f3 100644 --- a/badges/backpack.js +++ b/badges/backpack.js @@ -43,4 +43,87 @@ function check_site_access() { }); return false; -} \ No newline at end of file +} + +/* + * Update the status indicator to show connection progress. + */ +function badges_set_connection_progress(status) { + switch (status) { + case 'connecting': + var connecting = M.util.get_string('connecting', 'badges'); + var imageurl = M.util.image_url('i/loading_small', 'moodle'); + var loading = Y.Node.create(connecting + ' '+connecting+''); + Y.one('#connection-status').removeClass('notconnected').addClass('connecting').setHTML(loading); + break; + case 'notconnected': + var notconnected = M.util.get_string('notconnected', 'badges');; + Y.one('#connection-status').removeClass('connecting').addClass('notconnected').setHTML(notconnected); + break; + default: + // Unknown status, do nothing. + } +} + +/* + * Print an error message at the top of the page. + */ +function badges_set_error_message(messagekey, param) { + var errortext = M.util.get_string(messagekey, 'badges', param); + Y.one('#connection-error').setHTML(errortext); +} + +/* + * Handle the assertion generated by the Persona dialog. + */ +function badges_handle_assertion(assertion) { + + if (!assertion) { + var noassertionstr = M.util.get_string('error:noassertion', 'badges'); + badges_set_error_message('error:backpackloginfailed', noassertionstr); + return; + } + + badges_set_connection_progress('connecting'); + + Y.io("backpackconnect.php", { + method: "POST", + data: "assertion="+assertion+"&sesskey="+M.cfg.sesskey, + on: { + success: function (id, result) { + // Reload page to display connected email address. + window.location.href = "mybackpack.php"; + }, + failure: function (id, result) { + try { + var parsedResponse = Y.JSON.parse(result.response); + } catch (e) { + badges_set_connection_progress('notconnected'); + var badjsonstr = M.util.get_string('error:badjson', 'badges'); + badges_set_error_message('error:backpackloginfailed', badjsonstr); + return; + } + badges_set_connection_progress('notconnected'); + badges_set_error_message('error:backpackloginfailed', parsedResponse.reason); + return; + } + } + }); +} + +/** + * Create and bind the persona login button. + */ +function badges_init_persona_login_button() { + // Create the login button and add to the page via Javascript. + var imageurl = M.util.image_url('i/persona_sign_in_black', 'moodle'); + var imagealt = M.util.get_string('signinwithyouremail', 'badges'); + var button = Y.Node.create(''+imagealt+''); + Y.one('#persona-container').append(button); + + // Bind a click event to trigger login when clicked. + button.on('click', function() { + Y.one('#connection-error').empty(); + navigator.id.get(badges_handle_assertion); + }); +} diff --git a/badges/backpack_form.php b/badges/backpack_form.php index dce06305ec1..ad9d427feb1 100644 --- a/badges/backpack_form.php +++ b/badges/backpack_form.php @@ -39,28 +39,37 @@ class edit_backpack_form extends moodleform { * Defines the form */ public function definition() { - global $USER; + global $USER, $PAGE, $OUTPUT; $mform = $this->_form; + $mform->addElement('html', html_writer::tag('span', '', array('class' => 'notconnected', 'id' => 'connection-error'))); $mform->addElement('header', 'backpackheader', get_string('backpackconnection', 'badges')); $mform->addHelpButton('backpackheader', 'backpackconnection', 'badges'); - $mform->addElement('static', 'url', get_string('url'), 'http://backpack.openbadges.org'); - $status = html_writer::tag('span', get_string('notconnected', 'badges'), array('class' => 'notconnected')); + $mform->addElement('static', 'url', get_string('url'), BADGE_BACKPACKURL); + $status = html_writer::tag('span', get_string('notconnected', 'badges'), + array('class' => 'notconnected', 'id' => 'connection-status')); $mform->addElement('static', 'status', get_string('status'), $status); - $mform->addElement('text', 'email', get_string('email'), array('size' => '50')); - $mform->setDefault('email', $USER->email); - $mform->setType('email', PARAM_RAW); - $mform->addRule('email', get_string('required'), 'required', null , 'client'); - $mform->addHelpButton('email', 'backpackemail', 'badges'); + $nojs = html_writer::tag('noscript', get_string('error:personaneedsjs', 'badges'), + array('class' => 'notconnected')); + $personadiv = $OUTPUT->container($nojs, null, 'persona-container'); + + $mform->addElement('static', 'persona', '', $personadiv); + $mform->addHelpButton('persona', 'personaconnection', 'badges'); + + $PAGE->requires->js(new moodle_url('https://login.persona.org/include.js')); + $PAGE->requires->js('/badges/backpack.js'); + $PAGE->requires->js_init_call('badges_init_persona_login_button', null, false); + $PAGE->requires->strings_for_js(array('error:backpackloginfailed', 'signinwithyouremail', + 'error:noassertion', 'error:connectionunknownreason', 'error:badjson', 'connecting', + 'notconnected'), 'badges'); $mform->addElement('hidden', 'userid', $USER->id); $mform->setType('userid', PARAM_INT); - $mform->addElement('hidden', 'backpackurl', 'http://backpack.openbadges.org'); + $mform->addElement('hidden', 'backpackurl', BADGE_BACKPACKURL); $mform->setType('backpackurl', PARAM_URL); - $this->add_action_buttons(true, get_string('connect', 'badges')); } /** @@ -70,18 +79,14 @@ class edit_backpack_form extends moodleform { global $DB; $errors = parent::validation($data, $files); - if (!validate_email($data['email'])) { - $errors['email'] = get_string('invalidemail'); - } else { - $check = new stdClass(); - $check->backpackurl = $data['backpackurl']; - $check->email = $data['email']; + $check = new stdClass(); + $check->backpackurl = $data['backpackurl']; + $check->email = $data['email']; - $bp = new OpenBadgesBackpackHandler($check); - $request = $bp->curl_request('user'); - if (isset($request->status) && $request->status == 'missing') { - $errors['email'] = get_string('error:nosuchuser', 'badges'); - } + $bp = new OpenBadgesBackpackHandler($check); + $request = $bp->curl_request('user'); + if (isset($request->status) && $request->status == 'missing') { + $errors['email'] = get_string('error:nosuchuser', 'badges'); } return $errors; } @@ -113,7 +118,7 @@ class edit_collections_form extends moodleform { $mform->addElement('header', 'backpackheader', get_string('backpackconnection', 'badges')); $mform->addHelpButton('backpackheader', 'backpackconnection', 'badges'); - $mform->addElement('static', 'url', get_string('url'), 'http://backpack.openbadges.org'); + $mform->addElement('static', 'url', get_string('url'), BADGE_BACKPACKURL); $status = html_writer::tag('span', get_string('connected', 'badges'), array('class' => 'connected')); $mform->addElement('static', 'status', get_string('status'), $status); diff --git a/badges/backpackconnect.php b/badges/backpackconnect.php new file mode 100644 index 00000000000..55bc2ecf0c8 --- /dev/null +++ b/badges/backpackconnect.php @@ -0,0 +1,136 @@ +. + +/** + * AJAX script for validating backpack connection. + * + * @package core + * @subpackage badges + * @copyright 2012 onwards Totara Learning Solutions Ltd {@link http://www.totaralms.com/} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + * @author Simon Coggins + */ + +define('AJAX_SCRIPT', true); + +require_once(dirname(dirname(__FILE__)) . '/config.php'); +require_once($CFG->dirroot . '/badges/lib/backpacklib.php'); +require_once($CFG->libdir . '/filelib.php'); + +require_sesskey(); +require_login(); +$PAGE->set_url('/badges/backpackconnect.php'); +$PAGE->set_context(context_system::instance()); + +// Use PHP input filtering as there is no PARAM type for +// the type of cleaning that is required (ASCII chars 32-127 only). +$assertion = filter_input( + INPUT_POST, + 'assertion', + FILTER_UNSAFE_RAW, + FILTER_FLAG_STRIP_LOW|FILTER_FLAG_STRIP_HIGH +); + +// Audience is the site url scheme + host + port only. +$wwwparts = parse_url($CFG->wwwroot); +$audience = $wwwparts['scheme'] . '://' . $wwwparts['host']; +$audience .= isset($wwwparts['port']) ? $wwwparts['port'] : ''; +$params = 'assertion=' . urlencode($assertion) . '&audience=' . + urlencode($audience); + +$curl = new curl(); +$url = 'https://verifier.login.persona.org/verify'; +$options = array( + 'FRESH_CONNECT' => true, + 'RETURNTRANSFER' => true, + 'FORBID_REUSE' => true, + 'SSL_VERIFYPEER' => true, + 'SSL_VERIFYHOST' => 2, + 'HEADER' => 0, + 'HTTPHEADER' => array('Content-type: application/x-www-form-urlencoded'), + 'CONNECTTIMEOUT' => 0, + 'TIMEOUT' => 10, // Fail if data not returned within 10 seconds. +); +$result = $curl->post($url, $params, $options); + +// Handle time-out and failed request. +if ($curl->errno != 0) { + if ($curl->errno == CURLE_OPERATION_TIMEOUTED) { + $reason = get_string('error:requesttimeout', 'badges'); + } else { + $reason = get_string('error:requesterror', 'badges', $curl->errno); + } + badges_send_response('failure', $reason); +} + +$data = json_decode($result); + +if (!isset($data->status) || $data->status != 'okay') { + $reason = isset($data->reason) ? $data->reason : get_string('error:connectionunknownreason', 'badges'); + badges_send_response('failure', $reason); +} + +// Make sure email matches a backpack. +$check = new stdClass(); +$check->backpackurl = BADGE_BACKPACKURL; +$check->email = $data->email; + +$bp = new OpenBadgesBackpackHandler($check); +$request = $bp->curl_request('user'); +if (isset($request->status) && $request->status == 'missing') { + $reason = get_string('error:backpackemailnotfound', 'badges', $data->email); + badges_send_response('failure', $reason); +} else if (empty($request->userId)) { + $reason = get_string('error:backpackdatainvalid', 'badges'); + badges_send_response('failure', $reason); +} else { + $backpackuid = $request->userId; +} + +// Insert record. +$obj = new stdClass(); +$obj->userid = $USER->id; +$obj->email = $data->email; +$obj->backpackurl = BADGE_BACKPACKURL; +$obj->backpackuid = $backpackuid; +$obj->autosync = 0; +$obj->password = ''; +$DB->insert_record('badge_backpack', $obj); + +// Return success indicator and email address. +badges_send_response('success', $data->email); + + +/** + * Return a JSON response containing the response provided. + * + * @param string $status Status of the response, typically 'success' or 'failure'. + * @param string $responsetext On success, the email address of the user, + * otherwise a reason for the failure. + * @return void Outputs the JSON and terminates the script. + */ +function badges_send_response($status, $responsetext) { + $out = new stdClass(); + $out->status = $status; + if ($status == 'success') { + $out->email = $responsetext; + } else { + $out->reason = $responsetext; + send_header_404(); + } + echo json_encode($out); + exit; +} diff --git a/badges/lib/backpacklib.php b/badges/lib/backpacklib.php index 4ecf084257e..6e6b3da55f0 100644 --- a/badges/lib/backpacklib.php +++ b/badges/lib/backpacklib.php @@ -26,6 +26,12 @@ defined('MOODLE_INTERNAL') || die(); +/* + * URL of backpack. Currently only the Open Badges backpack + * is supported. + */ +define('BADGE_BACKPACKURL', 'http://backpack.openbadges.org'); + global $CFG; require_once($CFG->libdir . '/filelib.php'); diff --git a/lang/en/badges.php b/lang/en/badges.php index 09cc67510ff..f8331052a89 100644 --- a/lang/en/badges.php +++ b/lang/en/badges.php @@ -82,9 +82,11 @@ $string['backpackconnection_help'] = 'This page allows you to set up connection Currently, only Mozilla OpenBadges Backpack is supported. You need to sign up for a backpack service before trying to set up backpack connection on this page.'; $string['backpackdetails'] = 'Backpack settings'; $string['backpackemail'] = 'Email address'; -$string['backpackemail_help'] = 'Email address associated with your backpack. +$string['backpackemail_help'] = 'The email address associated with your backpack. While you are connected, any badges earned on this site will be associated with this email address.'; +$string['personaconnection'] = 'Sign in with your email'; +$string['personaconnection_help'] = 'Persona is a system for identifying yourself across the web, using an email address that you own. The Open Badges backpack uses Persona as a login system, so to be able to connect to a backpack you with need a Persona account. -If backpack connection is established, this email address is used instead of your internal email address to push badges to your backpack.'; +For more information about Persona visit https://login.persona.org/about.'; $string['backpackimport'] = 'Badge import settings'; $string['backpackimport_help'] = 'After backpack connection is successfully established, badges from your backpack can be displayed on your "My Badges" page and your profile page. @@ -128,6 +130,7 @@ $string['configenablebadges'] = 'When enabled, this feature lets you create badg $string['configuremessage'] = 'Badge message'; $string['connect'] = 'Connect'; $string['connected'] = 'Connected'; +$string['connecting'] = 'Connecting...'; $string['contact'] = 'Contact'; $string['contact_help'] = 'An email address associated with the badge issuer.'; $string['copyof'] = 'Copy of {$a}'; @@ -199,10 +202,15 @@ $string['disconnect'] = 'Disconnect'; $string['donotaward'] = 'Currently, this badge is not active, so it cannot be awarded to users. If you would like to award this badge, please set its status to active.'; $string['editsettings'] = 'Edit settings'; $string['enablebadges'] = 'Enable badges'; +$string['error:backpackdatainvalid'] = 'The data return from the backpack was invalid.'; +$string['error:backpackemailnotfound'] = 'The email \'{$a}\' is not associated with a backpack. You need to create a backpack for that account or sign in with another email address.'; $string['error:backpacknotavailable'] = 'Your site is not accessible from the Internet, so any badges issued from this site cannot be verified by external backpack services.'; +$string['error:backpackloginfailed'] = 'You could not be connected to an external backpack for the following reason: {$a}'; $string['error:backpackproblem'] = 'There was a problem connecting to your backpack service provider. Please try again later.'; +$string['error:badjson'] = 'The connection attempt returned invalid data.'; $string['error:cannotact'] = 'Cannot activate the badge. '; $string['error:cannotawardbadge'] = 'Cannot award badge to a user.'; +$string['error:connectionunknownreason'] = 'The connection was unsuccessful but no reason was given.'; $string['error:clone'] = 'Cannot clone the badge.'; $string['error:duplicatename'] = 'Badge with such name already exists in the system.'; $string['error:externalbadgedoesntexist'] = 'Badge not found'; @@ -211,6 +219,7 @@ $string['error:invalidcriteriatype'] = 'Invalid criteria type.'; $string['error:invalidexpiredate'] = 'Expiry date has to be in the future.'; $string['error:invalidexpireperiod'] = 'Expiry period cannot be negative or equal 0.'; $string['error:noactivities'] = 'There are no activities with completion criteria enabled in this course.'; +$string['error:noassertion'] = 'No assertion was returned by Persona. You may have closed the dialog before completing the login process.'; $string['error:nocourses'] = 'Course completion is not enabled for any of the courses in this site, so none can be displayed. Course completion may be enabled in the course settings.'; $string['error:nogroups'] = '

There are no public collections of badges available in your backpack.

Only public collections are shown, visit your backpack to create some public collections.

'; @@ -223,6 +232,9 @@ $string['error:nosuchrole'] = 'Warning: This role is no longer available.'; $string['error:nosuchuser'] = 'User with this email address does not have an account with the current backpack provider.'; $string['error:notifycoursedate'] = 'Warning: Badges associated with course and activity completions will not be issued until the course start date.'; $string['error:parameter'] = 'Warning: At least one parameter should be selected to ensure correct badge issuing workflow.'; +$string['error:personaneedsjs'] = 'Currently, Javascript is required to connect to your backpack. If you can, enable Javascript and reload the page.'; +$string['error:requesttimeout'] = 'The connection request timed out before it could complete.'; +$string['error:requesterror'] = 'The connection request failed (error code {$a}).'; $string['error:save'] = 'Cannot save the badge.'; $string['evidence'] = 'Evidence'; $string['existingrecipients'] = 'Existing badge recipients'; @@ -323,6 +335,7 @@ $string['selectgroup_end'] = 'Only public collections are shown, .smartselect_menuitem_label{font-weight:bold}#page-admin-registration-register .registration_textfield{width:300px}.userenrolment{width:100%;border-collapse:collapse}.userenrolment td{height:41px;padding:0}.userenrolment .subfield{margin-right:5px}.userenrolment .col_userdetails .subfield_picture{float:left}.userenrolment .col_lastseen{width:150px}.userenrolment .col_role{width:262px}.userenrolment .col_role .roles{margin-right:30px}.userenrolment .col_role .role{float:left;padding:3px;margin:3px}.dir-rtl .userenrolment .col_role .role{float:right}.userenrolment .col_role .role a{margin-left:3px;cursor:pointer}.userenrolment .col_role .addrole{float:right;width:18px;height:18px;margin:3px;text-align:center;background-color:#dff0d8;border:1px solid #d6e9c6}.userenrolment .col_role .addrole img{vertical-align:baseline}.userenrolment .hasAllRoles .col_role .addrole{display:none}.userenrolment .col_group .groups{margin-right:30px}.userenrolment .col_group .group{float:left;padding:3px;margin:3px;white-space:nowrap}.userenrolment .col_group .group a{margin-left:3px;cursor:pointer}.userenrolment .col_group .addgroup{float:right;width:18px;height:18px;margin:3px;text-align:center}.userenrolment .col_group .addgroup a img{vertical-align:bottom}.userenrolment .col_enrol .enrolment{float:left;padding:3px;margin:3px}.userenrolment .col_enrol .enrolment a{float:right;margin-left:3px}#page-enrol-users .enrol_user_buttons{float:right}#page-enrol-users.dir-rtl .enrol_user_buttons{float:left}#page-enrol-users .enrol_user_buttons .enrolusersbutton{display:inline;margin-left:1em}#page-enrol-users .enrol_user_buttons .enrolusersbutton div,#page-enrol-users .enrol_user_buttons .enrolusersbutton form{display:inline}#page-enrol-users .enrol_user_buttons .enrolusersbutton input{padding-right:6px;padding-left:6px}#page-enrol-users.dir-rtl .col_userdetails .subfield_picture{float:right}#page-enrol-users .user-enroller-panel .uep-search-results .user .details{width:237px}.dir-rtl .headermain{float:right}.dir-rtl .headermenu{float:left}.dir-rtl .loginbox .loginform .form-label{float:right;text-align:left}.dir-rtl .loginbox .loginform .form-input{text-align:right}.dir-rtl .yui3-menu-hidden{left:0}#page-admin-roles-define.dir-rtl #rolesform .felement{margin-right:180px}#page-message-edit.dir-rtl table.generaltable th.c0{text-align:right}.corelightbox{position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;background-color:#CCC}.corelightbox img{position:fixed;top:50%;left:50%}.mod-indent-1{margin-left:30px}.mod-indent-2{margin-left:60px}.mod-indent-3{margin-left:90px}.mod-indent-4{margin-left:120px}.mod-indent-5{margin-left:150px}.mod-indent-6{margin-left:180px}.mod-indent-7{margin-left:210px}.mod-indent-8{margin-left:240px}.mod-indent-9{margin-left:270px}.mod-indent-10{margin-left:300px}.mod-indent-11{margin-left:330px}.mod-indent-12{margin-left:360px}.mod-indent-13{margin-left:390px}.mod-indent-14{margin-left:420px}.mod-indent-15,.mod-indent-huge{margin-left:420px}.dir-rtl .mod-indent-1{margin-right:30px;margin-left:0}.dir-rtl .mod-indent-2{margin-right:60px;margin-left:0}.dir-rtl .mod-indent-3{margin-right:90px;margin-left:0}.dir-rtl .mod-indent-4{margin-right:120px;margin-left:0}.dir-rtl .mod-indent-5{margin-right:150px;margin-left:0}.dir-rtl .mod-indent-6{margin-right:180px;margin-left:0}.dir-rtl .mod-indent-7{margin-right:210px;margin-left:0}.dir-rtl .mod-indent-8{margin-right:240px;margin-left:0}.dir-rtl .mod-indent-9{margin-right:270px;margin-left:0}.dir-rtl .mod-indent-10{margin-right:300px;margin-left:0}.dir-rtl .mod-indent-11{margin-right:330px;margin-left:0}.dir-rtl .mod-indent-12{margin-right:360px;margin-left:0}.dir-rtl .mod-indent-13{margin-right:390px;margin-left:0}.dir-rtl .mod-indent-14{margin-right:420px;margin-left:0}.dir-rtl .mod-indent-15,.dir-rtl .mod-indent-huge{margin-right:420px;margin-left:0}.resourcecontent .mediaplugin_mp3 object{width:600px;height:25px}.resourcecontent audio.mediaplugin_html5audio{width:600px}.resourceimage{max-width:100%}.mediaplugin_mp3 object{width:300px;height:15px}audio.mediaplugin_html5audio{width:300px}.core_media_preview.pagelayout-embedded #content{padding:0}.core_media_preview.pagelayout-embedded #maincontent{height:0}.core_media_preview.pagelayout-embedded .mediaplugin{margin:0}.dir-rtl .ygtvtn,.dir-rtl .ygtvtm,.dir-rtl .ygtvtmh,.dir-rtl .ygtvtmhh,.dir-rtl .ygtvtp,.dir-rtl .ygtvtph,.dir-rtl .ygtvtphh,.dir-rtl .ygtvln,.dir-rtl .ygtvlm,.dir-rtl .ygtvlmh,.dir-rtl .ygtvlmhh,.dir-rtl .ygtvlp,.dir-rtl .ygtvlph,.dir-rtl .ygtvlphh,.dir-rtl .ygtvdepthcell,.dir-rtl .ygtvok,.dir-rtl .ygtvok:hover,.dir-rtl .ygtvcancel,.dir-rtl .ygtvcancel:hover{width:18px;height:22px;cursor:pointer;background-image:url([[pix:theme|yui2-treeview-sprite-rtl]]);background-repeat:no-repeat}.dir-rtl .ygtvtn{background-position:0 -5600px}.dir-rtl .ygtvtm{background-position:0 -4000px}.dir-rtl .ygtvtmh,.dir-rtl .ygtvtmhh{background-position:0 -4800px}.dir-rtl .ygtvtp{background-position:0 -6400px}.dir-rtl .ygtvtph,.dir-rtl .ygtvtphh{background-position:0 -7200px}.dir-rtl .ygtvln{background-position:0 -1600px}.dir-rtl .ygtvlm{background-position:0 0}.dir-rtl .ygtvlmh,.dir-rtl .ygtvlmhh{background-position:0 -800px}.dir-rtl .ygtvlp{background-position:0 -2400px}.dir-rtl .ygtvlph,.dir-rtl .ygtvlphh{background-position:0 -3200px}.dir-rtl .ygtvdepthcell{background-position:0 -8000px}.dir-rtl .ygtvok{background-position:0 -8800px}.dir-rtl .ygtvok:hover{background-position:0 -8844px}.dir-rtl .ygtvcancel{background-position:0 -8822px}.dir-rtl .ygtvcancel:hover{background-position:0 -8866px}.dir-rtl.yui-skin-sam .yui-panel .hd{text-align:right}.dir-rtl .yui-skin-sam .yui-layout .yui-layout-unit div.yui-layout-bd{text-align:right}.dir-rtl .clearlooks2.ie9 .mceAlert .mceMiddle span,.dir-rtl .clearlooks2 .mceConfirm .mceMiddle span{top:44px}.dir-rtl .o2k7Skin table,.dir-rtl .o2k7Skin tbody,.dir-rtl .o2k7Skin a,.dir-rtl .o2k7Skin img,.dir-rtl .o2k7Skin tr,.dir-rtl .o2k7Skin div,.dir-rtl .o2k7Skin td,.dir-rtl .o2k7Skin iframe,.dir-rtl .o2k7Skin span,.dir-rtl .o2k7Skin *,.dir-rtl .o2k7Skin .mceText,.dir-rtl .o2k7Skin .mceListBox .mceText{text-align:right}.path-rating .ratingtable{width:100%;margin-bottom:1em}.path-rating .ratingtable th.rating{width:100%}.path-rating .ratingtable td.rating,.path-rating .ratingtable td.time{text-align:center;white-space:nowrap}.initialbar a{padding-right:2px}.moodle-dialogue-base .moodle-dialogue-lightbox{background-color:#AAA}.moodle-dialogue-base .hidden,.moodle-dialogue-base .moodle-dialogue-hidden{display:none}.no-scrolling{overflow:hidden}.moodle-dialogue-fullscreen{top:0;left:0;width:100%;height:100%;overflow:auto}.moodle-dialogue-base .moodle-dialogue{z-index:600;padding:0;margin:0;background:0;border:0;outline:#000 dotted 0}.moodle-dialogue-base .moodle-dialogue-wrap{margin-top:-3px;margin-left:-3px;background-color:#fff;border:1px solid #ccc;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd{padding:5px;margin:0;font-size:12px;font-weight:normal;letter-spacing:1px;color:#333;text-align:center;text-shadow:1px 1px 1px #fff;background:#ccc;background-color:#ebebeb;background-image:-moz-linear-gradient(top,#fff,#ccc);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#ccc));background-image:-webkit-linear-gradient(top,#fff,#ccc);background-image:-o-linear-gradient(top,#fff,#ccc);background-image:linear-gradient(to bottom,#fff,#ccc);background-repeat:repeat-x;border-bottom:1px solid #bbb;-webkit-border-radius:10px 10px 0 0;-moz-border-radius:10px 10px 0 0;border-radius:10px 10px 0 0;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffcccccc',GradientType=0);filter:dropshadow(color=#ffffff,offx=1,offy=1)}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd h1{display:inline;padding:0;margin:0;font-size:100%;font-weight:bold}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd .yui3-widget-buttons{padding:5px}.moodle-dialogue-base .closebutton{display:inline-block;float:right;width:25px;height:15px;padding:0;vertical-align:middle;cursor:pointer;background-image:url([[pix:theme|sprite]]);background-repeat:no-repeat;border-style:none}.dir-rtl .moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd .yui3-widget-buttons{right:auto;left:0}.moodle-dialogue-base .moodle-dialogue .moodle-dialogue-bd{padding:1em;overflow:auto;font-size:12px;line-height:2em;color:#555}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-content{padding:0;background:#FFF}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-hd{padding:10px;font-size:16px}.moodle-dialogue-base .moodle-dialogue-fullscreen,.moodle-dialogue-fullscreen .moodle-dialogue-content{width:100%;height:100%;margin:0;border:0}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-hd,.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-wrap{border-radius:0}.moodle-dialogue-confirm .confirmation-dialogue{text-align:center}.moodle-dialogue-confirm .confirmation-dialogue input{text-align:center}.moodle-dialogue-exception .moodle-exception-message{text-align:center}.moodle-dialogue-exception .moodle-exception-param label{font-weight:bold}.moodle-dialogue-exception .param-stacktrace label{background-color:#EEE;border:1px solid #ccc;border-bottom-width:0}.moodle-dialogue-exception .param-stacktrace pre{background-color:#fff;border:1px solid #ccc}.moodle-dialogue-exception .param-stacktrace .stacktrace-file{font-size:11.9px;color:navy}.moodle-dialogue-exception .param-stacktrace .stacktrace-line{font-size:11.9px;color:#b94a48}.moodle-dialogue-exception .param-stacktrace .stacktrace-call{font-size:90%;color:#333;border-bottom:1px solid #eee}.moodle-dialogue-base .moodle-dialogue .moodle-dialogue-content .moodle-dialogue-ft{padding:0;margin:.7em 1em;font-size:12px;text-align:right;background-color:#FFF}.moodle-dialogue-confirm .confirmation-message{margin:.5em 1em}.moodle-dialogue-confirm .confirmation-dialogue input{min-width:80px}.moodle-dialogue-exception .moodle-exception-message{margin:1em}.moodle-dialogue-exception .moodle-exception-param{margin-bottom:.5em}.moodle-dialogue-exception .moodle-exception-param label{width:150px}.moodle-dialogue-exception .param-stacktrace label{display:block;padding:4px 1em;margin:0}.moodle-dialogue-exception .param-stacktrace pre{display:block;height:200px;overflow:auto}.moodle-dialogue-exception .param-stacktrace .stacktrace-file{display:inline-block;margin:4px 0}.moodle-dialogue-exception .param-stacktrace .stacktrace-line{display:inline-block;width:50px;margin:4px 1em}.moodle-dialogue-exception .param-stacktrace .stacktrace-call{padding-bottom:4px;padding-left:25px;margin-bottom:4px}.moodle-dialogue .moodle-dialogue-bd .content-lightbox{top:0;left:0;width:100%;height:100%;padding:10% 0;text-align:center;background-color:white;opacity:.75;filter:alpha(opacity=75)}.moodle-dialogue .tooltiptext{max-height:300px}.moodle-dialogue-base .moodle-dialogue.moodle-dialogue-tooltip{z-index:3001}#page-question-edit.dir-rtl a.container-close{right:auto;left:6px}.chooserdialoguebody,.choosertitle{display:none}.moodle-dialogue.chooserdialogue .moodle-dialogue-content .moodle-dialogue-ft{margin:0}.chooserdialogue .moodle-dialogue-wrap .moodle-dialogue-bd{padding:0;background:#f2f2f2;-webkit-border-bottom-right-radius:10px;border-bottom-right-radius:10px;-webkit-border-bottom-left-radius:10px;border-bottom-left-radius:10px;-moz-border-radius-bottomright:10px;-moz-border-radius-bottomleft:10px}.choosercontainer #chooseform .submitbuttons{margin:.7em 0;text-align:center}.choosercontainer #chooseform .submitbuttons input{min-width:100px;margin:0 .5em}.choosercontainer #chooseform .options{position:relative;border-bottom:1px solid #bbb}.jsenabled .choosercontainer #chooseform .alloptions{max-width:20.3em;overflow-x:hidden;overflow-y:auto;-webkit-box-shadow:inset 0 0 30px 0 #ccc;-moz-box-shadow:inset 0 0 30px 0 #ccc;box-shadow:inset 0 0 30px 0 #ccc}.dir-rtl.jsenabled .choosercontainer #chooseform .alloptions{max-width:18.3em}.choosercontainer #chooseform .moduletypetitle,.choosercontainer #chooseform .option,.choosercontainer #chooseform .nonoption{padding:0 1.6em 0 1.6em;margin-bottom:0}.choosercontainer #chooseform .moduletypetitle{padding-top:1.2em;padding-bottom:.4em;text-transform:uppercase}.choosercontainer #chooseform .option .typename,.choosercontainer #chooseform .option span.modicon img.icon,.choosercontainer #chooseform .nonoption .typename,.choosercontainer #chooseform .nonoption span.modicon img.icon{padding:0 0 0 .5em}.dir-rtl .choosercontainer #chooseform .option .typename,.dir-rtl .choosercontainer #chooseform .option span.modicon img.icon,.dir-rtl .choosercontainer #chooseform .nonoption .typename,.dir-rtl .choosercontainer #chooseform .nonoption span.modicon img.icon{padding:0 .5em 0 0}.choosercontainer #chooseform .option span.modicon img.icon,.choosercontainer #chooseform .nonoption span.modicon img.icon{width:24px;height:24px}.choosercontainer #chooseform .option input[type=radio],.choosercontainer #chooseform .option span.typename,.choosercontainer #chooseform .option span.modicon{vertical-align:middle}.choosercontainer #chooseform .option label{display:block;padding:.3em 0 .1em 0;border-bottom:1px solid #fff}.choosercontainer #chooseform .nonoption{padding-top:.3em;padding-bottom:.1em;padding-left:2.7em}.dir-rtl .choosercontainer #chooseform .nonoption{padding-right:2.7em;padding-left:0}.choosercontainer #chooseform .subtype{padding:0 1.6em 0 3.2em;margin-bottom:0}.dir-rtl .choosercontainer #chooseform .subtype{padding:0 3.2em 0 1.6em}.choosercontainer #chooseform .subtype .typename{margin:0 0 0 .2em}.dir-rtl .choosercontainer #chooseform .subtype .typename{margin:0 .2em 0 0}.jsenabled .choosercontainer #chooseform .instruction,.jsenabled .choosercontainer #chooseform .typesummary{position:absolute;top:0;right:0;bottom:0;left:20.3em;display:none;padding:1.6em;margin:0;overflow-x:hidden;overflow-y:auto;line-height:2em;background-color:#fff}.dir-rtl.jsenabled .choosercontainer #chooseform .instruction,.dir-rtl.jsenabled .choosercontainer #chooseform .typesummary{right:18.5em;left:0;border-right:1px solid grey}.jsenabled .choosercontainer #chooseform .instruction,.choosercontainer #chooseform .selected .typesummary{display:block}.choosercontainer #chooseform .selected{background-color:#fff;-webkit-box-shadow:0 0 10px 0 #ccc;-moz-box-shadow:0 0 10px 0 #ccc;box-shadow:0 0 10px 0 #ccc}.section-modchooser-link img.smallicon{padding:3px}.formlistingradio{padding-right:10px;padding-bottom:25px}.formlistinginputradio{float:left}.formlistingmain{min-height:225px}.formlisting{position:relative;padding:1px 19px 14px;margin:15px 0;background-color:white;border:1px solid #DDD;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.formlistingmore{position:absolute;right:-1px;bottom:-1px;padding:3px 7px;font-size:12px;font-weight:bold;color:#9da0a4;cursor:pointer;background-color:whiteSmoke;border:1px solid #ddd;-webkit-border-radius:4px 0 4px 0;-moz-border-radius:4px 0 4px 0;border-radius:4px 0 4px 0}.formlistingall{padding:0;margin:15px 0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.formlistingrow{top:50%;left:50%;float:left;width:150px;min-height:34px;padding:6px;cursor:pointer;background-color:#f7f7f9;border-right:1px solid #e1e1e8;border-bottom:1px solid;border-left:1px solid #e1e1e8;border-color:#e1e1e8;-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}body.jsenabled .formlistingradio{display:none}body.jsenabled .formlisting{display:block}table.collection{width:100%;margin-bottom:20px;border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}table.collection th,table.collection td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #ddd}table.collection th{font-weight:bold}table.collection thead th{vertical-align:bottom}table.collection caption+thead tr:first-child th,table.collection caption+thead tr:first-child td,table.collection colgroup+thead tr:first-child th,table.collection colgroup+thead tr:first-child td,table.collection thead:first-child tr:first-child th,table.collection thead:first-child tr:first-child td{border-top:0}table.collection tbody+tbody{border-top:2px solid #ddd}table.collection .table{background-color:#fff}table.collection th,table.collection td{border-left:1px solid #ddd}table.collection caption+thead tr:first-child th,table.collection caption+tbody tr:first-child th,table.collection caption+tbody tr:first-child td,table.collection colgroup+thead tr:first-child th,table.collection colgroup+tbody tr:first-child th,table.collection colgroup+tbody tr:first-child td,table.collection thead:first-child tr:first-child th,table.collection tbody:first-child tr:first-child th,table.collection tbody:first-child tr:first-child td{border-top:0}table.collection thead:first-child tr:first-child>th:first-child,table.collection tbody:first-child tr:first-child>td:first-child,table.collection tbody:first-child tr:first-child>th:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}table.collection thead:first-child tr:first-child>th:last-child,table.collection tbody:first-child tr:first-child>td:last-child,table.collection tbody:first-child tr:first-child>th:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}table.collection thead:last-child tr:last-child>th:first-child,table.collection tbody:last-child tr:last-child>td:first-child,table.collection tbody:last-child tr:last-child>th:first-child,table.collection tfoot:last-child tr:last-child>td:first-child,table.collection tfoot:last-child tr:last-child>th:first-child{-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px}table.collection thead:last-child tr:last-child>th:last-child,table.collection tbody:last-child tr:last-child>td:last-child,table.collection tbody:last-child tr:last-child>th:last-child,table.collection tfoot:last-child tr:last-child>td:last-child,table.collection tfoot:last-child tr:last-child>th:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px}table.collection tfoot+tbody:last-child tr:last-child td:first-child{-webkit-border-bottom-left-radius:0;border-bottom-left-radius:0;-moz-border-radius-bottomleft:0}table.collection tfoot+tbody:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:0;border-bottom-right-radius:0;-moz-border-radius-bottomright:0}table.collection caption+thead tr:first-child th:first-child,table.collection caption+tbody tr:first-child td:first-child,table.collection colgroup+thead tr:first-child th:first-child,table.collection colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}table.collection caption+thead tr:first-child th:last-child,table.collection caption+tbody tr:first-child td:last-child,table.collection colgroup+thead tr:first-child th:last-child,table.collection colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}table.collection tbody>tr:nth-child(odd)>td,table.collection tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}table.collection .name{text-align:left;vertical-align:middle}table.collection .awards{width:10%;text-align:center;vertical-align:middle}table.collection .criteria{width:40%;text-align:left;vertical-align:top}table.collection .badgeimage,table.collection .status{width:15%;text-align:center;vertical-align:middle}table.collection .description{width:25%;text-align:left}table.collection .actions{width:11em;text-align:center;vertical-align:middle}a.criteria-action{float:right;padding:0 3px}table.issuedbadgebox{width:750px;background-color:#fff}table.badgeissuedimage{width:150px;text-align:center}table.badgeissuedinfo{width:600px}table.badgeissuedinfo .bvalue{text-align:left;vertical-align:middle}table.badgeissuedinfo .bfield{width:125px;font-style:italic;text-align:left}ul.badges{margin:0;list-style:none}.badges li{position:relative;display:inline-block;width:150px;padding-bottom:2em;text-align:center;vertical-align:top}.badges li .badge-name{display:block;padding:5px}.badges li>img{position:absolute}.badges li .badge-image{top:0;left:10px;z-index:1;width:90px;height:90px}.badges li .badge-actions{position:relative}div.badge{position:relative;display:block}div.badge .expireimage{top:0;left:20px;width:100px;height:100px}.expireimage{position:absolute;top:0;left:30px;z-index:10;width:90px;height:90px;opacity:.85;filter:alpha(opacity=85)}.badge-profile{vertical-align:top}.connected{color:#468847}.notconnected{color:#b94a48}#page-badges-award .recipienttable tr td{vertical-align:top}#page-badges-award .recipienttable tr td.actions .actionbutton{width:100%;padding:.5em 0;margin:.3em 0}#page-badges-award .recipienttable tr td.existing,#page-badges-award .recipienttable tr td.potential{width:42%}.statustable{margin-bottom:0}.statusbox.active{background-color:#dff0d8}.statusbox.inactive{background-color:#fcf8e3}.activatebadge{margin:0;text-align:left;vertical-align:middle}.addcourse{float:right}.invisiblefieldset{display:inline;padding:0;margin:0;border-width:0}.breadcrumb-nav{float:left;margin-bottom:10px}.dir-rtl .breadcrumb-nav{float:right}.breadcrumb-button .singlebutton div{margin-right:0}.breadcrumb-nav .breadcrumb{margin:0}.moodle-actionmenu,.moodle-actionmenu>ul,.moodle-actionmenu>ul>li{display:inline-block}.moodle-actionmenu ul{padding:0;margin:0;list-style-type:none}.moodle-actionmenu .toggle-display,.moodle-actionmenu .menu-action-text{display:none}.jsenabled .moodle-actionmenu[data-enhance]{display:block}.jsenabled .moodle-actionmenu[data-enhance] .menu{display:none}.jsenabled .moodle-actionmenu[data-enhance] .toggle-display{display:inline;opacity:.5;filter:alpha(opacity=50)}.jsenabled .moodle-actionmenu[data-enhanced] .toggle-display{opacity:1;filter:alpha(opacity=100)}.jsenabled .moodle-actionmenu[data-enhanced] .menu-action-text{display:inline}.moodle-actionmenu[data-enhanced].show{position:relative}.moodle-actionmenu[data-enhanced].show .menu{position:absolute;z-index:1000;display:block;text-align:left;background-color:#fff;border:1px solid #ccc;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}.moodle-actionmenu[data-enhanced].show .menu a{display:block;padding:2px 1em 2px .5em;color:#333}.moodle-actionmenu[data-enhanced].show .menu a:hover,.moodle-actionmenu[data-enhanced].show .menu a:focus{color:#fff;background-color:#08c}.moodle-actionmenu[data-enhanced].show .menu a:first-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}.moodle-actionmenu[data-enhanced].show .menu a:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-moz-border-radius-bottomleft:4px}.moodle-actionmenu[data-enhanced].show .menu a.hidden{display:none}.moodle-actionmenu[data-enhanced].show .menu img{vertical-align:middle}.moodle-actionmenu[data-enhanced].show .menu .iconsmall{margin-right:8px}.moodle-actionmenu[data-enhanced].show .menu>li{display:block}.moodle-actionmenu[data-enhanced].show .menu.align-tl-bl{top:100%;left:0;margin-top:4px}.moodle-actionmenu[data-enhanced].show .menu.align-tr-bl{top:100%;right:100%}.moodle-actionmenu[data-enhanced].show .menu.align-bl-bl{bottom:100%;left:0}.moodle-actionmenu[data-enhanced].show .menu.align-br-bl{right:100%;bottom:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-br{top:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tr-br{top:100%;right:0;margin-top:4px}.moodle-actionmenu[data-enhanced].show .menu.align-bl-br{bottom:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-br-br{right:0;bottom:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-tl{top:0;left:0}.moodle-actionmenu[data-enhanced].show .menu.align-tr-tl{top:0;right:100%;margin-right:4px}.moodle-actionmenu[data-enhanced].show .menu.align-bl-tl{bottom:100%;left:0;margin-bottom:4px}.moodle-actionmenu[data-enhanced].show .menu.align-br-tl{right:100%;bottom:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-tr{top:0;left:100%;margin-left:4px}.moodle-actionmenu[data-enhanced].show .menu.align-tr-tr{top:0;right:0}.moodle-actionmenu[data-enhanced].show .menu.align-bl-tr{bottom:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-br-tr{right:0;bottom:100%;margin-bottom:4px}.action-menu-shown .moodle-actionmenu[data-enhanced] .toggle-display{background-color:#FFF}.block .moodle-actionmenu{text-align:right}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu{right:auto;left:0;text-align:right}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu .iconsmall{margin-right:0;margin-left:8px}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-bl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-bl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-bl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-bl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-br{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-br{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-br{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-br{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-tl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-tl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-tl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-tl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-tr{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-tr{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-tr{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-tr{right:auto;left:0}.dir-rtl .block .moodle-actionmenu{text-align:right}ul.dragdrop-keyboard-drag li{list-style-type:none}.block-control-actions .moodle-core-dragdrop-draghandle img{width:12px;height:12px}.formtable tbody th{font-weight:normal;text-align:right}.path-admin #assignrole{width:60%;margin-right:auto;margin-left:auto}.path-admin .admintable .leftalign{text-align:left}.environmenttable p.warn{color:#c09853;background-color:#fcf8e3}.environmenttable .error,.environmenttable span.warn,.environmenttable .ok{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.environmenttable .error:empty,.environmenttable span.warn:empty,.environmenttable .ok:empty{display:none}.environmenttable .error-important,.environmenttable span.warn-important,.environmenttable .ok-important{background-color:#b94a48}.environmenttable .error-important[href],.environmenttable span.warn-important[href],.environmenttable .ok-important[href]{background-color:#953b39}.environmenttable .error-warning,.environmenttable span.warn-warning,.environmenttable .ok-warning{background-color:#f89406}.environmenttable .error-warning[href],.environmenttable span.warn-warning[href],.environmenttable .ok-warning[href]{background-color:#c67605}.environmenttable .error-success,.environmenttable span.warn-success,.environmenttable .ok-success{background-color:#468847}.environmenttable .error-success[href],.environmenttable span.warn-success[href],.environmenttable .ok-success[href]{background-color:#356635}.environmenttable .error-info,.environmenttable span.warn-info,.environmenttable .ok-info{background-color:#3a87ad}.environmenttable .error-info[href],.environmenttable span.warn-info[href],.environmenttable .ok-info[href]{background-color:#2d6987}.environmenttable .error-inverse,.environmenttable span.warn-inverse,.environmenttable .ok-inverse{background-color:#333}.environmenttable .error-inverse[href],.environmenttable span.warn-inverse[href],.environmenttable .ok-inverse[href]{background-color:#1a1a1a}.environmenttable .error{background-color:#b94a48}.environmenttable span.warn{background-color:#f89406}.environmenttable .ok{background-color:#468847}.path-admin .admintable.environmenttable .name,.path-admin .admintable.environmenttable .info,.path-admin #assignrole .admintable .role,.path-admin #assignrole .admintable .userrole,.path-admin #assignrole .admintable .roleholder{white-space:nowrap}.path-admin .incompatibleblockstable td.c0{font-weight:bold}#page-admin-course-category .addcategory{padding:10px}#page-admin-course-index .editcourse{margin:20px auto}#page-admin-course-index .editcourse th,#page-admin-course-index .editcourse td{padding-right:10px;padding-left:10px}.timewarninghidden{display:none}.statusok,.statuswarning,.statusserious,.statuscritical{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.statusok:empty,.statuswarning:empty,.statusserious:empty,.statuscritical:empty{display:none}.statusok-important,.statuswarning-important,.statusserious-important,.statuscritical-important{background-color:#b94a48}.statusok-important[href],.statuswarning-important[href],.statusserious-important[href],.statuscritical-important[href]{background-color:#953b39}.statusok-warning,.statuswarning-warning,.statusserious-warning,.statuscritical-warning{background-color:#f89406}.statusok-warning[href],.statuswarning-warning[href],.statusserious-warning[href],.statuscritical-warning[href]{background-color:#c67605}.statusok-success,.statuswarning-success,.statusserious-success,.statuscritical-success{background-color:#468847}.statusok-success[href],.statuswarning-success[href],.statusserious-success[href],.statuscritical-success[href]{background-color:#356635}.statusok-info,.statuswarning-info,.statusserious-info,.statuscritical-info{background-color:#3a87ad}.statusok-info[href],.statuswarning-info[href],.statusserious-info[href],.statuscritical-info[href]{background-color:#2d6987}.statusok-inverse,.statuswarning-inverse,.statusserious-inverse,.statuscritical-inverse{background-color:#333}.statusok-inverse[href],.statuswarning-inverse[href],.statusserious-inverse[href],.statuscritical-inverse[href]{background-color:#1a1a1a}.statusok{background-color:#468847}.statuswarning{background-color:#c09853}.statusserious{background-color:#f89406}.statuscritical{background-color:#b94a48}#page-admin-report-capability-index #capabilitysearch{width:30em}#page-admin-report-backups-index .backup-error,#page-admin-report-backups-index .backup-unfinished{color:#b94a48}#page-admin-report-backups-index .backup-skipped,#page-admin-report-backups-index .backup-ok{color:#468847}#page-admin-report-backups-index .backup-warning{color:#c09853}#page-admin-qtypes .disabled,#page-admin-qbehaviours .disabled{color:#999}#page-admin-qtypes #qtypes div,#page-admin-qtypes #qtypes form,#page-admin-qbehaviours #qbehaviours div,#page-admin-qbehaviours #qbehaviours form{display:inline}#page-admin-qtypes #qtypes img.spacer,#page-admin-qbehaviours #qbehaviours img.spacer{width:16px}img.iconsmall{padding:.3em;margin:0}#page-admin-qbehaviours .cell.c3,#page-admin-qtypes .cell.c3{font-size:10.5px}#page-admin-lang .generalbox,#page-admin-course-index .singlebutton,#page-admin-course-index .addcategory,#page-course-index .buttons,#page-course-index-category .buttons,#page-admin-course-category .addcategory,#page-admin-stickyblocks .generalbox,#page-admin-maintenance .buttons,#page-admin-course-index .buttons,#page-admin-course-category .buttons,#page-admin-index .copyright,#page-admin-index .copyrightnotice,#page-admin-index .adminerror,#page-admin-index .availableupdatesinfo,#page-admin-index .adminerror .singlebutton,#page-admin-index .adminwarning .singlebutton,#page-admin-index #layout-table .singlebutton{margin-bottom:1em;text-align:center}.path-admin-roles .capabilitysearchui{margin-right:auto;margin-left:auto;text-align:left}#page-admin-roles-define .topfields{margin:1em 0 2em}#page-admin-roles-define .capdefault{background-color:#eee;border:1px solid #cecece}#page-filter-manage .backlink,.path-admin-roles .backlink{margin-top:1em}#page-admin-roles-explain #chooseuser h3,#page-admin-roles-usersroles .contextname{margin-top:0}#page-admin-roles-explain #chooseusersubmit{margin-top:0;text-align:center}#page-admin-roles-usersroles p{margin:0}#page-admin-roles-override .cell.c1,#page-admin-roles-assign .cell.c3,#page-admin-roles-assign .cell.c1{padding-top:.75em}#page-admin-roles-override .overridenotice,#page-admin-roles-define .definenotice{margin:1em 10% 2em 10%;text-align:left}#notice{width:60%;min-width:220px;margin:auto}#page-admin-index .releasenoteslink,#page-admin-index .adminwarning,#page-admin-index .maturitywarning,#page-admin-index .maturityinfo{width:60%;min-width:220px;padding:8px 35px 8px 14px;margin:auto;margin-bottom:20px;color:#c09853;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}#page-admin-index .maturitywarning,#page-admin-index .adminwarning.maturityinfo.maturity50{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}#page-admin-index .adminwarning.availableupdatesinfo,#page-admin-index .releasenoteslink{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo span{display:block}#page-admin-index .updateplugin div,#page-admin-plugins .updateplugin div{margin-bottom:.5em}#page-admin-index .updateplugin .updatepluginconfirmexternal,#page-admin-plugins .updateplugin .updatepluginconfirmexternal{padding:1em;background-color:#f2dede;border:1px solid #eed3d7}#page-admin-user-user_bulk #users .fgroup{white-space:nowrap}#page-admin-report-stats-index .graph{margin-bottom:1em;text-align:center}#page-admin-report-courseoverview-index .graph{margin-bottom:1em;text-align:center}#page-admin-lang .translator{border-style:solid;border-width:1px}.path-admin .roleassigntable{width:100%}.path-admin .roleassigntable td{padding:.2em .3em;vertical-align:top}.path-admin .roleassigntable p{margin:.2em 0;text-align:left}.path-admin .roleassigntable #existingcell,.path-admin .roleassigntable #potentialcell{width:42%}.path-admin .roleassigntable #existingcell p>label:first-child,.path-admin .roleassigntable #potentialcell p>label:first-child{font-weight:bold}.path-admin .roleassigntable #buttonscell{width:16%}.path-admin .roleassigntable #buttonscell #assignoptions{font-size:10.5px}.path-admin .roleassigntable #removeselect_wrapper,.path-admin .roleassigntable #addselect_wrapper{width:100%}.path-admin table.rolecap tr.rolecap th{font-weight:normal;text-align:left}.path-admin.dir-rtl table.rolecap tr.rolecap th{text-align:right}.path-admin .rolecap .hiddenrow{display:none}.path-admin #defineroletable .rolecap .inherit,.path-admin #defineroletable .rolecap .allow,.path-admin #defineroletable .rolecap .prevent,.path-admin #defineroletable .rolecap .prohibit{min-width:3.5em;padding:0;text-align:center}.path-admin .rolecap .cap-name,.path-admin .rolecap .note{display:block;font-size:10.5px;font-weight:normal;white-space:nowrap}.path-admin .rolecap label{display:block;padding:.5em;margin:0;text-align:center}.plugincheckwrapper{width:100%}.environmentbox{margin-top:1em}#mnetconfig table{margin-right:auto;margin-left:auto}.environmenttable .cell{padding:.15em .5em}.environmenttable img.iconhelp{padding-right:.3em}.dir-rtl .environmenttable img.iconhelp{padding-right:0;padding-left:.3em}#trustedhosts .generaltable{width:500px;margin-right:auto;margin-left:auto}#trustedhosts .standard{width:auto}#adminsettings legend{display:none}#adminsettings fieldset.error{margin:.2em 0 .5em 0}#adminsettings fieldset.error legend{display:block}.dir-rtl #admin-spelllanguagelist textarea,#page-admin-setting-editorsettingstinymce.dir-rtl .form-textarea textarea{text-align:left;direction:ltr}.adminsettingsflags{float:right}.dir-rtl .adminsettingsflags{float:left}.adminsettingsflags label{margin-right:7px}.dir-rtl .adminsettingsflags label{margin-left:7px}.form-description{clear:right}.dir-rtl .form-description{clear:left}.form-item .form-setting .form-htmlarea{display:inline;width:640px}.form-item .form-setting .form-htmlarea .htmlarea{display:block;width:640px}.form-item .form-setting .form-multicheckbox ul{padding:0;margin:7px 0 0 0;list-style:none}.form-item .form-setting .defaultsnext{display:inline;margin-right:.5em}.dir-rtl .form-item .form-setting .defaultsnext{margin-right:0;margin-left:.5em}.form-item .form-setting .locked-checkbox{display:inline;margin-right:.2em;margin-left:.5em}.dir-rtl .form-item .form-setting .locked-checkbox{display:inline;margin-right:.5em;margin-left:.2em}.form-item .form-setting .form-password .unmask,.form-item .form-setting .form-defaultinfo{display:inline-block}.form-item .pathok,.form-item .patherror{margin-left:.5em}#admin-devicedetectregex table{border:0}#admin-emoticons td input{width:8em}#admin-emoticons td.c0 input{width:4em}#adminthemeselector .selectedtheme td.c0{border:1px solid;border-right-width:0}#adminthemeselector .selectedtheme td.c1{border:1px solid;border-left-width:0}.admin_colourpicker,.admin_colourpicker_preview{display:none}.jsenabled .admin_colourpicker_preview{display:inline}.jsenabled .admin_colourpicker{display:block;width:410px;height:102px;margin-bottom:10px}.admin_colourpicker .loadingicon{margin-left:auto;vertical-align:middle}.admin_colourpicker .colourdialogue{float:left;border:1px solid #000}.admin_colourpicker .previewcolour{margin-left:301px;border:1px solid #000}.admin_colourpicker .currentcolour{margin-left:301px;border:1px solid #000;border-top-width:0}.dir-rtl .form-item .form-setting,.dir-rtl .form-item .form-label,.dir-rtl .form-item .form-description,.dir-rtl.path-admin .roleassigntable p{text-align:right}#page-admin-index #notice .checkforupdates{text-align:center}#plugins-check-info{margin:1em;text-align:center}#plugins-check .displayname .pluginicon{width:16px}#plugins-check .status-new .status{background-color:#dff0d8}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity200 .info.release,#plugins-check .status-upgrade .status,#plugins-check .status-delete .status{background-color:#d9edf7}#plugins-control-panel .extension .source,#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity100 .info.release,#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity150 .info.release,.pluginupdateinfo.maturity100,.pluginupdateinfo.maturity150,#plugins-check .extension .source{background-color:#fcf8e3}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity50 .info.release,.pluginupdateinfo.maturity50,#plugins-check .requires-failed,#plugins-check .missingfromdisk .displayname,#plugins-check .status-missing .status,#plugins-check .status-downgrade .status{background-color:#f2dede}#plugins-control-panel .statusmsg{padding:3px;background-color:#eee;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}#plugins-control-panel .status-missing .pluginname{background-color:#f2dede}#plugins-control-panel .status-missing .statusmsg{color:#b94a48}#plugins-control-panel .status-new .pluginname{background-color:#dff0d8}#plugins-control-panel .status-new .statusmsg{color:#468847}#plugins-control-panel .disabled .availability{background-color:#eee}#plugins-check .standard .source,#plugins-check .status-nodb .status,#plugins-check .status-uptodate .status,#plugins-check .requires-ok{color:#999}#plugins-check .requires ul{margin:0;font-size:10.5px}#plugins-check .status .pluginupdateinfo{padding:5px 10px;margin:10px;background-color:#d9edf7;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}#plugins-check .status .pluginupdateinfo span,#plugins-check .status .pluginupdateinfo a{padding-right:1em}#page-admin-index .upgradepluginsinfo{text-align:center}#page-admin-plugins .checkforupdates{margin:0 auto 1em;text-align:center}#plugins-control-panel .requiredby,#plugins-control-panel .pluginname .componentname{font-size:11.9px;color:#999}#plugins-control-panel .pluginname .componentname{margin-left:22px}#plugins-overview-filter .filter-item,#plugins-overview-panel .info{padding:0 10px}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo .separator,#plugins-check .status .pluginupdateinfo .separator,#page-admin-plugins .separator{border-left:1px dotted #999}#plugins-control-panel .msg td{text-align:center}#plugins-overview-filter,#plugins-overview-panel{margin:1em auto;text-align:center}#plugins-overview-panel .info.updatable{margin-left:10px;font-weight:bold;background-color:#d9edf7;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}#plugins-overview-filter .filter-item.active{font-weight:bold}#plugins-control-panel .displayname img.icon{padding-top:0;padding-bottom:0}#plugins-control-panel .uninstall a{color:#b94a48}#plugins-control-panel .notes .pluginupdateinfo{padding:5px 10px;margin:10px;background-color:#d9edf7;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}#plugins-control-panel .notes .pluginupdateinfo span,#plugins-control-panel .notes .pluginupdateinfo a{padding-right:1em}.dir-rtl #plugins-check .pluginupdateinfo{text-align:center;direction:ltr}.dir-rtl #plugins-check .rootdir,.dir-rtl #plugins-check .requires-ok{text-align:left;direction:ltr}#page-admin-mnet-peers .box.deletedhosts{margin-bottom:1em;font-size:11.9px}#page-admin-mnet-peers .mform .certdetails{background-color:white}#page-admin-mnet-peers .mform .deletedhostinfo{padding:4px;margin-bottom:5px;background-color:#f2dede;border:2px solid #eed3d7}#core-cache-plugin-summaries table,#core-cache-store-summaries table{width:100%}#core-cache-lock-summary table,#core-cache-definition-summaries table,#core-cache-mode-mappings table{margin:0 auto}#core-cache-store-summaries .default-store td{font-style:italic;color:#333}#core-cache-rescan-definitions,#core-cache-mode-mappings .edit-link,#core-cache-lock-summary .new-instance{margin-top:.5em;text-align:center}.tinymcesubplugins img.icon{padding-top:0;padding-bottom:0}#page-admin-roles-assign div.box.generalbox{padding:8px 35px 8px 14px;margin-bottom:20px;color:#c09853;color:#b94a48;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;background-color:#f2dede;border:1px solid #fbeed5;border-color:#eed3d7;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.calendartable{width:100%}.calendartable th,.calendartable td{width:14%;text-align:center;vertical-align:top;border:0}.calendar_event_course{background-color:#ffd3bd}.calendar_event_global{background-color:#d6f8cd}.calendar_event_group{background-color:#fee7ae}.calendar_event_user{background-color:#dce7ec}.path-calendar .calendar-controls .previous,.path-calendar .calendar-controls .next,.path-calendar .calendar-controls .current{display:block;float:left;width:12%}.path-calendar .calendar-controls .previous{text-align:left}.path-calendar .calendar-controls .current{width:76%;text-align:center}.path-calendar .calendar-controls .next{text-align:right}.path-calendar .maincalendar{padding:0;vertical-align:top}.path-calendar .maincalendar .bottom{padding:5px 0 0 0;text-align:center}.path-calendar .maincalendar .heightcontainer{position:relative;height:100%}.path-calendar .maincalendar .calendarmonth{width:98%;margin:10px auto}.path-calendar .maincalendar .calendarmonth ul{margin:0}.path-calendar .maincalendar .calendarmonth ul li{margin-top:4px;list-style-type:none}.path-calendar .maincalendar .calendarmonth td{height:5em}.path-calendar .maincalendar .calendar-controls .previous,.path-calendar .maincalendar .calendar-controls .next{width:30%}.path-calendar .maincalendar .calendar-controls .current{width:39.95%}.path-calendar .maincalendar .controls{width:98%;margin:10px auto}.path-calendar .maincalendar .eventlist .event{width:100%;margin-bottom:10px;border-collapse:separate;border-spacing:0;border-style:solid;border-width:1px}.path-calendar .maincalendar .eventlist .event .topic .name{float:left}.dir-rtl.path-calendar .maincalendar .eventlist .event .topic .name,.path-calendar .maincalendar .eventlist .event .topic .date{float:right}.dir-rtl.path-calendar .maincalendar .eventlist .event .topic .date{float:left}.path-calendar .maincalendar .eventlist .event .subscription,.path-calendar .maincalendar .eventlist .event .course{float:left;clear:left}.dir-rtl.path-calendar .maincalendar .eventlist .event .subscription,.dir-rtl.path-calendar .maincalendar .eventlist .event .course{float:right;clear:right}.path-calendar .maincalendar .eventlist .event .side{width:32px}.path-calendar .maincalendar .eventlist .event .commands a{margin:0 3px}.path-calendar .maincalendar .header{overflow:hidden}.path-calendar .maincalendar .header .buttons{float:right}.dir-rtl.path-calendar .maincalendar .header .buttons{float:left}.path-calendar .filters table{width:100%;border-collapse:separate;border-spacing:2px}#page-calendar-export .indent{padding-left:20px}.path-calendar .cal_courses_flt label{margin-right:.45em}.dir-rtl.path-calendar .cal_courses_flt label{margin-right:0;margin-left:.45em}.block .minicalendar th,.block .minicalendar td{padding:2px;font-size:.8em}.block .minicalendar{max-width:280px;margin-right:auto;margin-left:auto}.block .minicalendar td.weekend{color:#A00}.block .calendar-controls .previous{display:block;float:left;width:12%;text-align:left}.block .calendar-controls .current{display:block;float:left;width:76%;text-align:center}.block .calendar-controls .next{display:block;float:left;width:12%;text-align:right}.block .calendar_filters ul{margin:0;list-style:none}.block .calendar_filters li{margin-bottom:.2em}.block .calendar_filters li span img{padding:0 .2em}.block .calendar_filters .eventname{padding-left:.2em}.dir-rtl .block .calendar_filters .eventname{padding-right:.2em;padding-left:0}.block .content h3.eventskey{margin-top:.5em}@media(min-width:768px){#page-calender-view .container fluid{min-width:1024px}}.section_add_menus{text-align:right}.dir-rtl .section_add_menus{text-align:left}.section_add_menus .horizontal div,.section_add_menus .horizontal form{display:inline}.section_add_menus optgroup{font-style:italic;font-weight:normal}.section_add_menus .urlselect{margin-left:.4em}.dir-rtl .section_add_menus .urlselect{margin-right:.4em;margin-left:0}.section_add_menus .urlselect select{margin-left:.2em}.dir-rtl .section_add_menus .urlselect select{margin-right:.2em;margin-left:0}.section_add_menus .urlselect img.iconhelp{padding:0;margin:0;vertical-align:text-bottom}.site-topic ul.section,.course-content ul.section{margin:1em}.section .activity img.activityicon{margin-right:6px}.dir-rtl .section .activity img.activityicon{margin-right:0;margin-left:6px}.section .activity .activityinstance,.section .activity .activityinstance div{display:inline-block}.editing .section .activity .activityinstance{min-width:40%}.section .activity .activityinstance>a{display:block}.editing_show+.editing_assign,.editing_hide+.editing_assign{margin-left:20px}.section .activity .commands{display:inline;white-space:nowrap}.section .activity.modtype_label .commands{padding-left:22px;margin-left:40%}.section .activity.modtype_label.label{font-weight:normal}.section li.activity{padding:.2em;clear:both}.section .activity .activityinstance .groupinglabel{padding-left:30px}.dir-rtl .section .activity .activityinstance .groupinglabel{padding-right:30px}.section .activity .availabilityinfo,.section .activity .contentafterlink{margin-top:.5em;margin-left:30px}.dir-rtl .section .activity .availabilityinfo,.dir-rtl .section .activity .contentafterlink{margin-right:30px;margin-left:0}.section .activity .contentafterlink p{margin:.5em 0}.editing .section .activity:hover,.editing .section .activity.action-menu-shown{background-color:#eee}.course-content .current{background-color:#d9edf7}.course-content .section-summary{margin-top:5px;list-style:none;border:1px solid #DDD}.course-content .section-summary .section-title{margin:2px 5px 10px 5px}.course-content .section-summary .summarytext{margin:2px 5px 2px 5px}.course-content .section-summary .section-summary-activities .activity-count{display:inline-block;margin:3px;font-size:11.9px;color:#999;white-space:nowrap}.course-content .section-summary .summary{margin-top:5px}.course-content .single-section{margin-top:1em}.course-content .single-section .section-navigation{display:block;padding:.5em;margin-bottom:-0.5em}.course-content .single-section .section-navigation .title{clear:both;font-size:108%;font-weight:bold}.course-content .single-section .section-navigation .mdl-left{float:left;margin-right:1em;font-weight:normal}.dir-rtl .course-content .single-section .section-navigation .mdl-left{float:right}.course-content .single-section .section-navigation .mdl-left .larrow{margin-right:.1em}.course-content .single-section .section-navigation .mdl-right{float:right;margin-left:1em;font-weight:normal}.dir-rtl .course-content .single-section .section-navigation .mdl-right{float:left}.course-content .single-section .section-navigation .mdl-right .rarrow{margin-left:.1em}.course-content .single-section .section-navigation .mdl-bottom{margin-top:0}.course-content ul li.section.main{margin-top:0;border-bottom:2px solid #eee}.course-content ul li.section.hidden{opacity:.5}.course-content ul.topics li.section .content,.course-content ul.weeks li.section .content{padding:0;margin-right:20px;margin-left:20px}.course-content{margin-top:0}.course-content ul.topics li.section{padding-bottom:20px}.course-content ul.topics li.section .summary{margin-left:25px}.path-course-view .completionprogress{margin-left:25px}.path-course-view .completionprogress{position:relative;z-index:1000;display:block;float:right;height:20px}#page-site-index .subscribelink{text-align:right}#page-site-index .headingblock{margin-bottom:9px}.path-course-view a.reduce-sections{padding-left:.2em}.path-course-view .headingblock{margin-bottom:9px}.path-course-view .subscribelink{text-align:right}.path-course-view .unread{margin-left:30px}.dir-rtl.path-course-view .unread{margin-right:30px}.path-course-view .block.drag .header{cursor:move}.path-course-view .completionprogress{text-align:right}.dir-rtl.path-course-view .completionprogress{text-align:left}.path-course-view .single-section .completionprogress{margin-right:5px}.path-course-view .section .summary{line-height:normal}.path-site li.activity>div,.path-course-view li.activity>div{position:relative}.path-course-view li.activity span.autocompletion,.path-course-view li.activity form.togglecompletion{float:right}.path-course-view li.activity form.togglecompletion .ajaxworking{width:16px;height:16px;background:url([[pix:i/ajaxloader]]) no-repeat}.dir-rtl.path-course-view li.activity form.togglecompletion,.dir-rtl.path-course-view li.activity span.autocompletion{float:left}.dir-rtl.path-course-view .completionprogress{float:none}.dir-rtl.path-course-view li.activity form.togglecompletion .ajaxworking{right:-22px}li.section.hidden span.commands a.editing_hide,li.section.hidden span.commands a.editing_show{cursor:default}ul.weeks h3.sectionname{white-space:nowrap}.editing ul.weeks h3.sectionname{white-space:normal}.single-section h3.sectionname{clear:both;text-align:center}.section img.movetarget{width:80px;height:16px}input.titleeditor{width:330px;vertical-align:text-bottom}span.editinstructions{position:absolute;top:0;left:0;z-index:9999;padding:.1em .4em;margin-top:-22px;margin-left:30px;font-size:11.9px;line-height:16px;color:#3a87ad;text-decoration:none;background-color:#d9edf7;border:1px solid #bce8f1;-webkit-box-shadow:2px 2px 5px 1px #ccc;-moz-box-shadow:2px 2px 5px 1px #ccc;box-shadow:2px 2px 5px 1px #ccc}.dir-rtl span.editinstructions{right:32px;left:auto}#dndupload-status{position:absolute;z-index:9999;z-index:0;width:40%;padding:6px;margin:0 30%;color:#3a87ad;text-align:center;background:#d9edf7;border:1px solid #bce8f1;-webkit-border-bottom-right-radius:8px;border-bottom-right-radius:8px;-webkit-border-bottom-left-radius:8px;border-bottom-left-radius:8px;-moz-border-radius-bottomright:8px;-moz-border-radius-bottomleft:8px;-webkit-box-shadow:2px 2px 5px 1px #ccc;-moz-box-shadow:2px 2px 5px 1px #ccc;box-shadow:2px 2px 5px 1px #ccc}.dndupload-preview{padding:.3em;margin-top:.2em;color:#909090;list-style:none;border:1px dashed #909090}.dndupload-preview img.icon{padding:0;vertical-align:text-bottom}.dndupload-progress-outer{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#fff9f9f9',GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.dndupload-progress-inner{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf',endColorstr='#ff0480be',GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.dndupload-hidden{display:none}#page-course-pending .singlebutton,#page-course-index .singlebutton,#page-course-index-category .singlebutton,#page-course-editsection .singlebutton{text-align:center}#page-admin-course-manage #movecourses td img{margin:0 .22em;vertical-align:text-bottom}#page-admin-course-manage #movecourses td img.icon{padding:0}#coursesearch{margin-top:1em;text-align:center}#page-course-pending .pendingcourserequests{margin-bottom:1em}#page-course-pending .pendingcourserequests .singlebutton{display:inline}#page-course-pending .pendingcourserequests .cell{padding:0 5px}#page-course-pending .pendingcourserequests .cell.c6{white-space:nowrap}.coursebox{padding:5px;margin-bottom:15px;border:1px dotted #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.coursebox>.info>.name a{display:block;padding-left:21px;background-image:url([[pix:moodle|i/course]]);background-position:center left;background-repeat:no-repeat}.coursebox.remotehost>.info>.name a{background-image:url([[pix:moodle|i/mnethost]])}.coursebox>.info>.name,.coursebox .content .teachers,.coursebox .content .courseimage,.coursebox .content .coursefile{float:left;width:40%;clear:left}.coursebox>.info>h3.name{margin:5px}.coursebox>.info>.name{padding:0;margin:5px}.coursebox .content .teachers li{padding:0;margin:0;list-style-type:none}.coursebox .enrolmenticons{float:right;padding:3px 0}.coursebox .moreinfo{float:right;padding:3px 0}.coursebox .enrolmenticons img,.coursebox .moreinfo img{margin:0 .2em}.coursebox .content{clear:both}.coursebox .content .summary,.coursebox .content .coursecat{float:right;width:55%}.coursebox .content .coursecat{clear:right;text-align:right}.coursebox.remotecoursebox .remotecourseinfo{float:left;width:40%}.coursebox .content .courseimage img{max-width:100px;max-height:100px}.coursebox .content .coursecat,.coursebox .content .summary,.coursebox .content .courseimage,.coursebox .content .coursefile,.coursebox .content .teachers,.coursebox.remotecoursebox .remotecourseinfo{padding:0;margin:3px 5px}.dir-rtl .coursebox>.info>.name a{padding-right:21px;padding-left:0;background-position:center right}.dir-rtl .coursebox>.info>.name,.dir-rtl .coursebox .teachers,.dir-rtl .coursebox .content .courseimage,.dir-rtl .coursebox .content .coursefile{float:right;clear:right}.dir-rtl .coursebox .enrolmenticons,.dir-rtl .coursebox .moreinfo{float:left}.dir-rtl .coursebox .summary,.dir-rtl .coursebox .coursecat{float:left}.dir-rtl .coursebox .coursecat{clear:left;text-align:left}.coursebox.collapsed{margin-bottom:0}.coursebox.collapsed>.content{display:none}.courses .coursebox.collapsed{padding:3px 0;border:1px solid #eee}.courses .coursebox.even{background-color:#f6f6f6}.courses .coursebox:hover,.course_category_tree .courses>.paging.paging-morelink:hover{background-color:#eee}.course_category_tree .category .numberofcourse{font-size:11.9px}.course_category_tree .controls{visibility:hidden}.course_category_tree .controls div{display:inline;cursor:pointer}.jsenabled .course_category_tree .controls{visibility:visible}.course_category_tree .controls{float:right;margin-bottom:5px;text-align:right}.course_category_tree .controls div{padding-right:2em;font-size:75%}.course_category_tree .category>.info .name{padding:2px 18px;margin:3px;background-image:url([[pix:moodle|t/collapsed_empty]]);background-position:center left;background-repeat:no-repeat}.dir-rtl .course_category_tree .category>.info .name{background-image:url([[pix:moodle|t/collapsed_empty_rtl]]);background-position:center right}.course_category_tree .category.with_children>.info .name{background-image:url([[pix:moodle|t/expanded]])}.course_category_tree .category.with_children.collapsed>.info .name{background-image:url([[pix:moodle|t/collapsed]])}.dir-rtl .course_category_tree .category.with_children.collapsed>.info .name{background-image:url([[pix:moodle|t/collapsed_rtl]])}.course_category_tree .category.collapsed>.content{display:none}.course_category_tree .category>.info{min-height:20px;min-height:0;padding:19px;padding:0;margin:3px 0;margin-bottom:20px;margin-bottom:3px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.course_category_tree .category>.info blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.course_category_tree.frontpage-category-names .category>.info{margin:0;background:0;border:0}.course_category_tree .category>.content{padding-left:16px}.dir-rtl .course_category_tree .category>.content{padding-right:16px;padding-left:0}.course_category_tree .subcategories>.paging,.courses>.paging{padding:5px;margin:0;text-align:center}.courses>.paging.paging-morelink,.course_category_tree .subcategories>.paging.paging-morelink{text-align:left}.course_category_tree .paging.paging-morelink a{font-size:11.9px}.dir-rtl .courses>.paging.paging-morelink,.dir-rtl .course_category_tree .paging.paging-morelink{text-align:right}#page-course-index-category .generalbox.info{padding:5px;margin-bottom:15px;border:1px dotted #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}#page-course-index-category .categorypicker{margin:10px 0 20px;text-align:center}.section .activity .moodle-actionmenu .iconsmall{width:16px;width:1rem;height:16px;height:1rem;max-width:none!important;padding:.3em}.filemanager,.filepicker,.file-picker{font-size:11px}.filemanager a,.file-picker a,.filemanager a:hover,.file-picker a:hover{color:#555;text-decoration:none}.filemanager input[type="text"],.file-picker input[type="text"]{width:265px}.filemanager .fp-license td,.file-picker .fp-setlicense td{max-width:265px}.filemanager .fp-license select,.file-picker .fp-setlicense select{max-width:100%}.fp-content-center{display:table-cell;width:100%;height:100%;vertical-align:middle}.fp-content-hidden{visibility:hidden}.yui3-panel-focused{outline:0}#filesskin .yui3-panel-content{display:inline-block;*display:inline;padding-bottom:20px;background:#f2f2f2;border:1px solid #fff;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;*zoom:1;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}#filesskin .yui3-widget-hd{padding:5px;font-size:12px;letter-spacing:1px;color:#333;text-align:center;text-shadow:1px 1px 1px #fff;background-color:#ebebeb;background-image:-moz-linear-gradient(top,#fff,#ccc);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#ccc));background-image:-webkit-linear-gradient(top,#fff,#ccc);background-image:-o-linear-gradient(top,#fff,#ccc);background-image:linear-gradient(to bottom,#fff,#ccc);background-repeat:repeat-x;border-bottom:1px solid #bbb;-webkit-border-radius:10px 10px 0 0;-moz-border-radius:10px 10px 0 0;border-radius:10px 10px 0 0;filter:dropshadow(color=#ffffff,offx=1,offy=1);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffcccccc',GradientType=0)}.fp-panel-button{display:inline-block;*display:inline;padding:3px 20px 2px 20px;margin:10px;text-align:center;background:#fff;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;*zoom:1;-webkit-box-shadow:2px 2px 3px .1px #999;-moz-box-shadow:2px 2px 3px .1px #999;box-shadow:2px 2px 3px .1px #999}.filepicker .moodle-dialogue-wrap .moodle-dialogue-bd{padding:0}#filesskin .file-picker.fp-generallayout{position:relative;width:859px;background:#fff;border:1px solid #ccc;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.file-picker .fp-repo-area{display:inline-block;*display:inline;float:left;width:180px;height:525px;overflow:auto;border-right:1px solid #bbb;*zoom:1}.dir-rtl .file-picker .fp-repo-area{float:right;border-right:0;border-left:1px solid #bbb}.file-picker .fp-repo-items{float:left;width:693px}.dir-rtl .file-picker .fp-repo-items{float:right}.file-picker .fp-navbar{min-height:22px;padding:5px 8px;background:#f2f2f2;border-bottom:1px solid #bbb}.file-picker .fp-content{height:468px;overflow:auto;clear:both;background:#fff}.filepicker.moodle-dialogue-fullscreen .file-picker .fp-content{width:100%;height:100%}.dir-rtl .file-picker .fp-repo-items{margin-right:181px}.file-picker .fp-content-loading{display:table;width:100%;height:100%;text-align:center}.file-picker .fp-content .fp-object-container{width:98%;height:98%}.dir-rtl .file-picker .fp-list{text-align:right}.dir-rtl .file-picker .fp-toolbar{padding:0}.dir-rtl .file-picker .fp-list{text-align:right}.dir-rtl .file-picker .fp-repo-name{display:inline}.dir-rtl .file-picker .fp-pathbar{display:block;text-align:right;border-top:0}.dir-rtl .file-picker div.bd{text-align:right}.dir-rtl #filemenu .yuimenuitemlabel{text-align:right}.dir-rtl .filepicker .yui-layout-unit-left{left:500px}.dir-rtl .filepicker .yui-layout-unit-center{left:0}.dir-rtl .filemanager-toolbar a{padding:0}.file-picker .fp-list{float:left;width:100%;padding:0;margin:0;list-style-type:none}.dir-rtl .file-picker .fp-list{float:left;text-align:right}.file-picker .fp-list .fp-repo a{display:block;padding:.5em .7em}.file-picker .fp-list .fp-repo.active{background:#f2f2f2}.file-picker .fp-list .fp-repo-icon{padding:0 7px 0 5px}.fp-toolbar{display:table-row;float:left;max-width:70%;line-height:22px}.dir-rtl .fp-toolbar{float:right}.fp-toolbar.empty{display:none}.fp-toolbar .disabled{display:none}.fp-toolbar div{display:inline-block;*display:inline;padding:0 2px;padding-right:10px;*zoom:1}.dir-rtl .fp-toolbar div{width:100px;padding-right:0}.fp-toolbar img{margin-right:5px;vertical-align:-15%}.fp-toolbar .fp-tb-search{width:228px;height:14px}.fp-toolbar .fp-tb-search input{width:200px;height:16px;padding:2px 6px 1px 20px;background:#fff url('[[pix:a/search]]') no-repeat 3px 3px;border:1px solid #bbb}.fp-viewbar{float:right;width:69px;height:22px;margin-right:8px}.dir-rtl .fp-toolbar img{vertical-align:-35%}.dir-rtl .fp-viewbar{float:left;width:100px}.fp-vb-icons{display:inline-block;*display:inline;width:22px;height:22px;background:url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0;*zoom:1}.dir-rtl .fp-vb-icons{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0}.fp-vb-icons.checked{background:url('[[pix:theme|fp/view_icon_selected]]')}.dir-rtl .fp-vb-icons.checked{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_icon_selected]]')}.fp-viewbar.disabled .fp-vb-icons{background:url('[[pix:theme|fp/view_icon_inactive]]')}.fp-vb-details{display:inline-block;*display:inline;width:23px;height:22px;margin-left:-4px;background:url('[[pix:theme|fp/view_list_active]]') no-repeat 0 0;*zoom:1}.dir-rtl .fp-vb-details{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_list_active]]') no-repeat 0 0}.fp-vb-details.checked{background:url('[[pix:theme|fp/view_list_selected]]')}.dir-rtl .fp-vb-details.checked{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_list_selected]]')}.fp-viewbar.disabled .fp-vb-details{background:url('[[pix:theme|fp/view_list_inactive]]')}.fp-vb-tree{display:inline-block;*display:inline;width:23px;height:22px;margin-left:-4px;background:url('[[pix:theme|fp/view_tree_active]]') no-repeat 0 0;*zoom:1}.dir-rtl .fp-vb-tree{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_tree_active]]') no-repeat 0 0}.fp-vb-tree.checked{background:url('[[pix:theme|fp/view_tree_selected]]')}.dir-rtl .fp-vb-tree.checked{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_tree_selected]]')}.fp-viewbar.disabled .fp-vb-tree{background:url('[[pix:theme|fp/view_tree_inactive]]')}.file-picker .fp-clear-left{clear:left}.dir-rtl .filemanager-toolbar .fp-vb-icons a:hover{background:url('[[pix:theme|fp/view_icon_selected]]')}.dir-rtl .filemanager-toolbar .fp-vb-icons.checked a:hover{background:url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0}.dir-rtl .fp-vb-details a:hover{background:0;border:20px solid black}.dir-rtl .fp-vb-details.checked a:hover{background:0;border:40px solid black}.dir-rtl .fp-vb-tree a:hover{background:0;border:30px solid black}.dir-rtl .fp-vb-tree.checked a:hover{background:0;border:50px solid black}.file-picker .fp-pathbar{display:table-row}.fp-pathbar.empty{display:none}.fp-pathbar .fp-path-folder{width:27px;height:12px;margin-left:4px;background:url('[[pix:theme|fp/path_folder]]') no-repeat 0 0}.dir-rtl .fp-pathbar .fp-path-folder{width:auto;height:12px;margin-left:4px;background:url('[[pix:theme|fp/path_folder_rtl]]') no-repeat right top}.dir-rtl .fp-pathbar span{display:inline-block;*display:inline;float:right;margin-left:32px;*zoom:1}.fp-pathbar .fp-path-folder-name{margin-left:32px;line-height:20px}.dir-rtl .fp-pathbar .fp-path-folder-name{margin-right:32px;line-height:20px}.fp-iconview .fp-file{position:relative;float:left;margin:10px 10px 35px;text-align:center}.fp-iconview .fp-thumbnail{display:block;min-width:110px;min-height:110px;line-height:110px;text-align:center;border:1px solid #fff}.fp-iconview .fp-thumbnail img{padding:3px;vertical-align:middle;border:1px solid #ddd;-webkit-box-shadow:1px 1px 2px 0 #ccc;-moz-box-shadow:1px 1px 2px 0 #ccc;box-shadow:1px 1px 2px 0 #ccc}.fp-iconview .fp-thumbnail:hover{background:#fff;border:1px solid #ddd;-webkit-box-shadow:inset 0 0 10px 0 #ccc;-moz-box-shadow:inset 0 0 10px 0 #ccc;box-shadow:inset 0 0 10px 0 #ccc}.fp-iconview .fp-filename-field{position:absolute;height:33px;overflow:hidden;word-wrap:break-word}.fp-iconview .fp-filename-field:hover{z-index:1000;overflow:visible}.fp-iconview .fp-filename-field .fp-filename{min-width:112px;padding-top:5px;padding-bottom:12px;background:#fff}.dir-rtl .fp-iconview .fp-file{float:right}.file-picker .yui3-datatable table{width:100%;border:0 solid #bbb}#filesskin .file-picker .yui3-datatable-header{color:#555;background:#fff;border-bottom:1px solid #ccc;border-left:0 solid #fff}#filesskin .file-picker .yui3-datatable-odd .yui3-datatable-cell{background-color:#f6f6f6;border-left:0 solid #f6f6f6}#filesskin .file-picker .yui3-datatable-even .yui3-datatable-cell{background-color:#fff;border-left:0 solid #fff}.dir-rtl .file-picker .yui3-datatable-header{text-align:right}.file-picker .ygtvtn,.filemanager .ygtvtn{width:17px;height:22px;background:url('[[pix:moodle|y/tn]]') 0 0 no-repeat}.dir-rtl .filemanager .ygtvtn,.dir-rtl .file-picker .ygtvtn{width:17px;height:22px;background:url('[[pix:moodle|y/tn_rtl]]') 0 0 no-repeat}.file-picker .ygtvtm,.filemanager .ygtvtm{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/tm]]') 0 10px no-repeat}.file-picker .ygtvtmh,.filemanager .ygtvtmh{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/tm]]') 0 10px no-repeat}.file-picker .ygtvtp,.filemanager .ygtvtp{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/tp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvtp,.dir-rtl .filemanager .ygtvtp{background:url('[[pix:moodle|y/tp_rtl]]') 0 10px no-repeat}.file-picker .ygtvtph,.filemanager .ygtvtph{width:13px;height:22px;cursor:pointer;background:url('[[pix:moodle|y/tp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvtph,.dir-rtl .filemanager .ygtvtph{background:url('[[pix:moodle|y/tp_rtl]]') 0 10px no-repeat}.file-picker .ygtvln,.filemanager .ygtvln{width:17px;height:22px;background:url('[[pix:moodle|y/ln]]') 0 0 no-repeat}.dir-rtl .file-picker .ygtvln,.dir-rtl .filemanager .ygtvln{background:url('[[pix:moodle|y/ln_rtl]]') 0 0 no-repeat}.file-picker .ygtvlm,.filemanager .ygtvlm{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lm]]') 0 10px no-repeat}.file-picker .ygtvlmh,.filemanager .ygtvlmh{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lm]]') 0 10px no-repeat}.file-picker .ygtvlp,.filemanager .ygtvlp{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvlp,.dir-rtl .filemanager .ygtvlp{background:url('[[pix:moodle|y/lp_rtl]]') 0 10px no-repeat}.file-picker .ygtvlph,.filemanager .ygtvlph{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvlph,.dir-rtl .filemanager .ygtvlph{background:url('[[pix:moodle|y/lp_rtl]]') 0 10px no-repeat}.file-picker .ygtvloading,.filemanager .ygtvloading{width:16px;height:22px;background:transparent url('[[pix:moodle|y/loading]]') 0 0 no-repeat}.file-picker .ygtvdepthcell,.filemanager .ygtvdepthcell{width:17px;height:32px;background:url('[[pix:moodle|y/vline]]') 0 0 no-repeat}.file-picker .ygtvblankdepthcell,.filemanager .ygtvblankdepthcell{width:17px;height:22px}a.ygtvspacer:hover{color:transparent;text-decoration:none}.ygtvlabel,.ygtvlabel:link,.ygtvlabel:visited,.ygtvlabel:hover{margin-left:2px;text-decoration:none;cursor:pointer;background-color:transparent}.file-picker .ygtvfocus,.filemanager .ygtvfocus{background-color:#eee}.fp-filename-icon{position:relative;display:block;margin-top:10px}.fp-icon{float:left;width:24px;height:24px;margin-top:-7px;margin-right:10px;line-height:24px;text-align:center}.dir-rtl .fp-icon{float:right;margin-right:0;margin-left:10px}.fp-icon img{max-width:24px;max-height:24px;vertical-align:middle}.fp-filename{padding-right:10px}.dir-rtl .fp-filename{padding-right:0;padding-left:10px}.file-picker .fp-login-form{display:table;width:100%;height:100%}.file-picker .fp-login-form table{margin:0 auto}.file-picker .fp-login-form p{margin-top:3em;text-align:center}.file-picker .fp-login-form .fp-login-input label{display:block;text-align:right}.file-picker .fp-login-form .fp-login-input .input{text-align:left}.file-picker .fp-login-form input[type="checkbox"]{width:15px;height:15px}.file-picker .fp-upload-form{display:table;width:100%;height:100%}.file-picker .fp-upload-form table{margin:0 auto}.file-picker.fp-dlg{text-align:center}.file-picker.fp-dlg .fp-dlg-text{padding:30px 20px 10px;font-size:12px}.file-picker.fp-dlg .fp-dlg-buttons{margin:0 20px}.file-picker.fp-msg{text-align:center}.file-picker.fp-msg .fp-msg-text{max-width:500px;max-height:300px;min-width:200px;padding:40px 20px 10px 20px;overflow:auto;font-size:12px}.file-picker.fp-msg.fp-msg-error .fp-msg-text{padding:40px 20px 10px 20px;font-size:12px}.file-picker .fp-content-error{display:table;width:100%;height:100%;text-align:center}.file-picker .fp-content-error .fp-error{display:table-cell;width:100%;height:100%;padding:40px 20px 10px 20px;font-size:12px;vertical-align:middle}.file-picker .fp-nextpage{clear:both}.file-picker .fp-nextpage .fp-nextpage-loading{display:none}.file-picker .fp-nextpage.loading .fp-nextpage-link{display:none}.file-picker .fp-nextpage.loading .fp-nextpage-loading{display:block;height:100px;padding-top:50px;text-align:center}.fp-select form{padding:20px 20px 0}.fp-select .fp-select-loading{margin-top:20px;text-align:center}.fp-select .fp-hr{width:auto;height:1px;margin:10px 0;clear:both;background-color:#fff;border-bottom:1px solid #bbb}.fp-select table{padding:0 0 10px}.fp-select table .mdl-right{min-width:84px}.fp-select .fp-reflist .mdl-right{vertical-align:top}.fp-select .fp-select-buttons{float:right}.fp-select .fp-info{display:block;padding:1px 20px 0;clear:both}.fp-select .fp-thumbnail{float:left;min-width:110px;min-height:110px;margin:10px 20px 0 0;line-height:110px;text-align:center;background:#fff;border:1px solid #ddd;-webkit-box-shadow:inset 0 0 10px 0 #ccc;-moz-box-shadow:inset 0 0 10px 0 #ccc;box-shadow:inset 0 0 10px 0 #ccc}.fp-select .fp-thumbnail img{padding:3px;margin:10px;vertical-align:middle;border:1px solid #ddd}.fp-select .fp-fileinfo{display:inline-block;*display:inline;margin-top:10px;*zoom:1}.file-picker.fp-select .fp-fileinfo{max-width:240px}.fp-select .fp-fileinfo div{padding-bottom:5px}.file-picker.fp-select .uneditable{display:none}.file-picker.fp-select .fp-select-loading{display:none}.file-picker.fp-select.loading .fp-select-loading{display:block}.file-picker.fp-select.loading form{display:none}.fp-select .fp-dimensions.fp-unknown{display:none}.filemanager-loading{display:none}.jsenabled .filemanager-loading{display:block;margin-top:100px}.filemanager.fm-loading .filemanager-toolbar,.filemanager.fm-loading .fp-pathbar,.filemanager.fm-loading .filemanager-container,.filemanager.fm-loaded .filemanager-loading,.filemanager.fm-maxfiles .fp-btn-add,.filemanager.fm-maxfiles .dndupload-message,.filemanager.fm-noitems .fp-btn-download,.filemanager .fm-empty-container,.filemanager.fm-noitems .filemanager-container .fp-content{display:none}.filemanager .filemanager-updating{display:none;text-align:center}.filemanager.fm-updating .filemanager-updating{display:block;margin-top:37px}.filemanager.fm-updating .fm-content-wrapper,.filemanager.fm-nomkdir .fp-btn-mkdir,.fitem.disabled .filemanager .filemanager-toolbar,.fitem.disabled .filemanager .fp-pathbar,.fitem.disabled .filemanager .fp-restrictions,.fitem.disabled .filemanager .fm-content-wrapper{display:none}.fp-restrictions{text-align:right}.filemanager .fp-navbar{background:#f2f2f2;border:1px solid #bbb;border-bottom:0}.filemanager-toolbar{min-height:22px;padding:5px 8px;overflow:hidden}.fp-pathbar{min-height:20px;padding:5px 8px 1px;border-top:1px solid #bbb}.filemanager .fp-pathbar.empty{display:none}.filepicker-filelist,.filemanager-container{position:relative;min-height:140px;overflow:auto;clear:both;background:#fff;border:1px solid #bbb}.filemanager .fp-content{max-height:472px;min-height:157px;overflow:auto}.filemanager-container,.filepicker-filelist{overflow:hidden}.fitem.disabled .filepicker-filelist,.fitem.disabled .filemanager-container{background-color:#ebebe4}.fitem.disabled .fp-btn-choose{color:#999}.fitem.disabled .filepicker-filelist .filepicker-filename{display:none}.fp-iconview .fp-reficons1{position:absolute;top:0;left:0;z-index:1000;width:100%;height:100%}.fp-iconview .fp-reficons2{position:absolute;top:0;left:0;z-index:1001;width:100%;height:100%}.fp-iconview .fp-file.fp-hasreferences .fp-reficons1{background:url('[[pix:theme|fp/link]]') no-repeat;background-position:bottom right}.fp-iconview .fp-file.fp-isreference .fp-reficons2{background:url('[[pix:theme|fp/alias]]') no-repeat;background-position:bottom left}.filemanager .fp-iconview .fp-file.fp-originalmissing .fp-thumbnail img{display:none}.filemanager .fp-iconview .fp-file.fp-originalmissing .fp-thumbnail{background:url([[pix:s/dead]]) no-repeat;background-position:center center}.filemanager .yui3-datatable table{width:100%;border:0 solid #bbb}.filemanager .yui3-datatable-header{color:#555!important;background:#fff!important;border-bottom:1px solid #ccc!important;border-left:0 solid #fff!important}.filemanager .yui3-datatable-odd .yui3-datatable-cell{background-color:#f6f6f6!important;border-left:0 solid #f6f6f6}.filemanager .yui3-datatable-even .yui3-datatable-cell{background-color:#fff!important;border-left:0 solid #fff}.filemanager .fp-filename-icon.fp-hasreferences .fp-reficons1{position:absolute;top:8px;left:17px;z-index:1000;width:100%;height:100%;background:url('[[pix:theme|fp/link_sm]]') no-repeat 0 0}.filemanager .fp-filename-icon.fp-isreference .fp-reficons2{position:absolute;top:9px;left:-6px;z-index:1001;width:100%;height:100%;background:url('[[pix:theme|fp/alias_sm]]') no-repeat 0 0}.filemanager .fp-contextmenu{display:none}.filemanager .fp-iconview .fp-folder.fp-hascontextmenu .fp-contextmenu{position:absolute;right:7px;bottom:5px;display:block}.filemanager .fp-treeview .fp-folder.fp-hascontextmenu .fp-contextmenu,.filemanager .fp-tableview .fp-folder.fp-hascontextmenu .fp-contextmenu{position:absolute;top:6px;left:14px;display:inline;margin-right:-20px}.dir-rtl .filemanager .fp-iconview .fp-folder.fp-hascontextmenu .fp-contextmenu{right:inherit;left:7px}.dir-rtl .filemanager .fp-treeview .fp-folder.fp-hascontextmenu .fp-contextmenu,.dir-rtl .filemanager .fp-tableview .fp-folder.fp-hascontextmenu .fp-contextmenu{right:16px;left:inherit;margin-right:0}.filepicker-filelist .filepicker-container,.filemanager.fm-noitems .fm-empty-container{position:absolute;top:10px;right:10px;bottom:10px;left:10px;display:block;padding-top:85px;text-align:center;border:2px dashed #bbb}.filepicker-filelist .dndupload-target,.filemanager-container .dndupload-target{position:absolute;top:10px;right:10px;bottom:10px;left:10px;padding-top:85px;text-align:center;background:#fff;border:2px dashed #fb7979;-webkit-box-shadow:0 0 0 10px #fff;-moz-box-shadow:0 0 0 10px #fff;box-shadow:0 0 0 10px #fff}.filepicker-filelist.dndupload-over .dndupload-target,.filemanager-container.dndupload-over .dndupload-target{position:absolute;top:10px;right:10px;bottom:10px;left:10px;padding-top:85px;text-align:center;background:#fff;border:2px dashed #6c8cd3}.dndupload-message{display:none}.dndsupported .dndupload-message{display:inline}.dnduploadnotsupported-message{display:none}.dndnotsupported .dnduploadnotsupported-message{display:inline}.dndupload-target{display:none}.dndsupported .dndupload-ready .dndupload-target{display:block}.dndupload-uploadinprogress{display:none;text-align:center}.dndupload-uploading .dndupload-uploadinprogress{display:block}.dndupload-arrow{position:absolute;top:5px;width:100%;height:80px;margin-left:-28px;background:url([[pix:theme|fp/dnd_arrow]]) center no-repeat}.fitem.disabled .filepicker-container,.fitem.disabled .fm-empty-container{display:none}.dndupload-progressbars{display:none;padding:10px}.dndupload-inprogress .dndupload-progressbars{display:block}.dndupload-inprogress .fp-content{display:none}.filemanager.fm-noitems .dndupload-inprogress .fm-empty-container{display:none}.filepicker-filelist.dndupload-inprogress .filepicker-container{display:none}.filepicker-filelist.dndupload-inprogress a{display:none}.filemanager.fp-select .fp-select-loading{display:none}.filemanager.fp-select.loading .fp-select-loading{display:block}.filemanager.fp-select.loading form{display:none}.filemanager.fp-select.fp-folder .fp-license,.filemanager.fp-select.fp-folder .fp-author,.filemanager.fp-select.fp-file .fp-file-unzip,.filemanager.fp-select.fp-folder .fp-file-unzip,.filemanager.fp-select.fp-file .fp-file-zip,.filemanager.fp-select.fp-zip .fp-file-zip{display:none}.filemanager.fp-select .fp-file-setmain{display:none}.filemanager.fp-select.fp-cansetmain .fp-file-setmain{display:inline-block;*display:inline;*zoom:1}.filemanager .fp-mainfile .fp-filename{font-weight:bold}.filemanager.fp-select.fp-folder .fp-file-download{display:none}.fm-operation{font-weight:bold}.filemanager.fp-select .fp-original.fp-unknown,.filemanager.fp-select .fp-original .fp-originloading{display:none}.filemanager.fp-select .fp-original.fp-loading .fp-originloading{display:inline}.filemanager.fp-select .fp-reflist.fp-unknown,.filemanager.fp-select .fp-reflist .fp-reflistloading{display:none}.filemanager.fp-select .fp-refcount{max-width:265px}.filemanager.fp-select .fp-reflist.fp-loading .fp-reflistloading{display:inline}.filemanager.fp-select .fp-reflist .fp-value{max-width:265px;max-height:75px;padding:8px 7px;margin:0;overflow:auto;background:#f9f9f9;border:1px solid #bbb}.filemanager.fp-select .fp-reflist .fp-value li{padding-bottom:7px}.filemanager.fp-mkdir-dlg{text-align:center}.filemanager.fp-mkdir-dlg .fp-mkdir-dlg-text{margin:20px;text-align:left}.dir-rtl .filemanager .fp-mkdir-dlg p{text-align:right}.filemanager.fp-dlg{text-align:center}.filemanager.fp-dlg .fp-dlg-text{max-width:340px;max-height:300px;min-width:200px;padding:0 10px;margin:40px 20px 20px;overflow:auto;font-size:12px;line-height:22px}.file-picker div.bd{text-align:left}.dir-rtl .file-picker div.bd,.dir-rtl .file-picker .fp-pathbar,.dir-rtl .file-picker .fp-list,.dir-rtl #filemenu .yuimenuitemlabel,.dir-rtl .filemanager-container .yui3-skin-sam .yui3-datatable-header{text-align:right}.dir-rtl .filepicker .yui-layout-unit-left{left:500px}.dir-rtl .filepicker .yui-layout-unit-center{left:0}.message-discussion-noframes h1{font-size:1em}.message-discussion-noframes #userinfo .commands,.message .noframesjslink,.message .link{font-size:11.9px}.message .heading{font-size:1em;font-weight:bold}.message .author{font-weight:bold}.message .time{font-style:italic}#page-message-user .commands span{font-size:.7em}#page-message-user .name{font-size:1.1em;font-weight:bold}table.message_search_results td{border-color:#ddd}.message .time,.message.me .author{color:#999}.message.other .author{color:#88c}#page-message-messages{padding:10px}#page-message-send .notifysuccess{padding:1px}#page-message-send td.fixeditor{text-align:center}.message .note{padding:10px}table.message .searchresults td{padding:5px}.message .contactselector{float:left;width:24%}.message .contactselector .contact{text-align:left}.message .contactselector .messageselecteduser{font-weight:bold}.message .contactselector .paging{position:relative;z-index:1}.message .messagearea{float:right;width:74%;min-height:200px;padding-left:1%;border-left:1px solid #d3d3d3}.message .messagearea .messagehistorytype{padding-bottom:20px;clear:both}.message .messagearea .messagehistory .message_user_pictures{margin-right:auto;margin-left:auto}.message .messagearea .messagehistory .message_user_pictures #user1{width:200px;vertical-align:top}.message .messagearea .messagehistory .message_user_pictures #user2{width:200px;vertical-align:top}.message .messagearea .messagehistory .message_user_pictures .useractionlinks{font-size:.9em}.message .messagearea .messagehistory .heading{width:100%;clear:both}.message .messagearea .messagehistory .left{float:left;width:50%;padding-bottom:10px;clear:both}.message .messagearea .messagehistory .right{float:right;width:50%;padding-bottom:10px;clear:both}.message .messagearea .messagehistory .notification{padding:10px;margin-top:5px;background-color:#eee}.message .messagearea .messagesend{padding-top:20px;clear:both}.message .messagearea .messagesend .messagesendbox{width:100%}.message .messagearea .messagesend fieldset{padding:0;margin:0}.message .messagearea .messagerecent{width:100%;text-align:left}.message .messagearea .messagerecent .singlemessage{padding:10px;border-bottom:1px solid #d3d3d3}.message .messagearea .messagerecent .singlemessage .otheruser span{padding:5px}.message .messagearea .messagerecent .singlemessage .messagedate{float:right}.message .hiddenelement{display:none}.message .visible{display:inline}.message #usergroupselector.fieldset,.message #viewing{width:100%}.messagesearchresults{margin-bottom:40px}.messagesearchresults td{padding:0 10px 0 20px}.messagesearchresults td span{white-space:nowrap}.messagesearchresults td img.userpicture{padding-right:.45em;vertical-align:text-bottom}.dir-rtl .messagesearchresults td img.userpicture{padding-right:0;padding-left:.45em}.messagesearchresults td span img{padding:0 0 0 .45em;vertical-align:text-bottom}.dir-rtl .messagesearchresults td span img{padding:0 .45em 0 0}#newmessageoverlay{position:fixed;right:0;bottom:0;padding:20px;background-color:#d3d3d3;border:1px solid black}#newmessageoverlay #usermessage{padding:10px}.questionbank h2{margin-top:0}.questioncategories h3{margin-top:0}#chooseqtypebox{margin-top:1em}#chooseqtype h3{margin:0 0 .3em}#chooseqtype .instruction{display:none}#chooseqtype .fakeqtypes{border-top:1px solid silver}#chooseqtype .qtypeoption{margin-bottom:.5em}#chooseqtype label{display:block}#chooseqtype .qtypename img{padding:0 .3em}#chooseqtype .qtypename{display:inline-table;width:16em}#chooseqtype .qtypesummary{display:block;margin:0 2em}#chooseqtype .submitbuttons{margin:.7em 0;text-align:center}#qtypechoicecontainer{display:none}#qtypechoicecontainer_c.yui-panel-container.shadow .underlay{background:0}#qtypechoicecontainer.yui-panel .hd{letter-spacing:1px;color:#333;text-shadow:1px 1px 1px #fff;background-color:#ebebeb;background-image:-moz-linear-gradient(top,#fff,#ccc);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#ccc));background-image:-webkit-linear-gradient(top,#fff,#ccc);background-image:-o-linear-gradient(top,#fff,#ccc);background-image:linear-gradient(to bottom,#fff,#ccc);background-repeat:repeat-x;border:1px solid #ccc;border-bottom:1px solid #bbb;-webkit-border-top-right-radius:10px;border-top-right-radius:10px;-webkit-border-top-left-radius:10px;border-top-left-radius:10px;-moz-border-radius-topright:10px;-moz-border-radius-topleft:10px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffcccccc',GradientType=0)}#qtypechoicecontainer{font-size:12px;color:#333;background:#f2f2f2;border:1px solid #ccc;border-top:0 none;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}#chooseqtype{width:40em}#chooseqtypehead h3{margin:0;font-weight:normal}#chooseqtype .qtypes{position:relative;padding:.24em 0;border-bottom:1px solid #bbb}#chooseqtype .qtypeoption{padding:.3em .3em .3em 1.6em;margin-bottom:0}#chooseqtype .qtypeoption img{padding-right:.5em;padding-left:1em;vertical-align:text-bottom}#chooseqtype .selected{background-color:#fff;-webkit-box-shadow:0 0 10px 0 #ccc;-moz-box-shadow:0 0 10px 0 #ccc;box-shadow:0 0 10px 0 #ccc}#chooseqtype .instruction,#chooseqtype .qtypesummary{position:absolute;top:0;right:0;bottom:0;left:60%;display:none;padding:1.5em 1.6em;margin:0;overflow-y:auto;background-color:#fff}#chooseqtype .instruction,#chooseqtype .selected .qtypesummary{display:block}#categoryquestions{margin:0}#categoryquestions td,#categoryquestions th{padding:0 .2em}#categoryquestions th{font-weight:normal;text-align:left}#categoryquestions .checkbox{padding-left:20px}.dir-rtl #categoryquestions th{text-align:right}.questionbank .singleselect{margin:0}#combinedfeedbackhdr div.fhtmleditor{padding:0}#combinedfeedbackhdr div.fcheckbox{margin-bottom:1em}#multitriesheader div.fitem_feditor{margin-top:1em}#multitriesheader div.fitem_fgroup{margin-bottom:1em}#multitriesheader div.fitem_fgroup fieldset.felement label{margin-right:.3em;margin-left:.3em}body.path-question-type .fitem_fgroup .accesshide{position:static;left:0;padding-right:.3em;font:inherit}.que{margin:0 auto 1.8em auto;clear:left;text-align:left}.dir-rtl .que{text-align:right}.que .info{float:left;width:7em;padding:.5em;margin-bottom:1.8em;background-color:#eee;border:1px solid #dcdcdc;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.que h2.no{margin:0;font-size:.8em;line-height:1}.que span.qno{font-size:1.5em;font-weight:bold}.que .info>div{margin-top:.7em;font-size:.8em}.que .info .questionflag.editable{cursor:pointer}.que .info .editquestion img,.que .info .questionflag img,.que .info .questionflag input{vertical-align:bottom}.que .content{margin:0 0 0 8.5em}.que .formulation,.que .outcome,.que .comment{padding:8px 35px 8px 14px;margin-bottom:20px;color:#c09853;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.que .formulation{color:#3a87ad;color:#333;background-color:#d9edf7;border-color:#bce8f1}.formulation input[type="text"],.formulation select{width:auto}.path-mod-quiz input[size]{width:auto}.que .comment{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.que .history{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.que .history blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.que .ablock{margin:.7em 0 .3em 0}.que .im-controls{margin-top:.5em;text-align:left}.dir-rtl .que .im-controls{text-align:right}.que .specificfeedback,.que .generalfeedback,.que .rightanswer,.que .im-feedback,.que .feedback,.que p{margin:0 0 .5em}.que .qtext{margin-bottom:1.5em}.que .correctness{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.que .correctness:empty{display:none}.que .correctness-important{background-color:#b94a48}.que .correctness-important[href]{background-color:#953b39}.que .correctness-warning{background-color:#f89406}.que .correctness-warning[href]{background-color:#c67605}.que .correctness-success{background-color:#468847}.que .correctness-success[href]{background-color:#356635}.que .correctness-info{background-color:#3a87ad}.que .correctness-info[href]{background-color:#2d6987}.que .correctness-inverse{background-color:#333}.que .correctness-inverse[href]{background-color:#1a1a1a}.que .correctness.correct{background-color:#468847}.que .correctness.partiallycorrect{background-color:#f89406}.que .correctness.notanswered,.que .correctness.incorrect{background-color:#b94a48}.que .validationerror{color:#b94a48}.formulation .correct{background-color:#dff0d8}.formulation .partiallycorrect{background-color:#fcf8e3}.formulation .incorrect{background-color:#f2dede}.formulation select.correct,.formulation input.correct{color:#468847;background-color:#dff0d8;border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.correct:focus,.formulation input.correct:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.formulation select.partiallycorrect,.formulation input.partiallycorrect{color:#c09853;background-color:#fcf8e3;border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.partiallycorrect:focus,.formulation input.partiallycorrect:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.formulation select.incorrect,.formulation input.incorrect{color:#b94a48;background-color:#f2dede;border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.incorrect:focus,.formulation input.incorrect:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.que .grading,.que .comment,.que .commentlink,.que .history{margin-top:.5em}.que .history h3{margin:0 0 .2em;font-size:1em}.que .history table{width:100%;margin:0}.que .history .current{font-weight:bold}.que .questioncorrectnessicon{vertical-align:text-bottom}.que input.questionflagimage{padding-right:3px}.dir-rtl .que input.questionflagimage{padding-right:0;padding-left:3px}.importerror{margin-top:10px;border-bottom:1px solid #555}.mform .que.comment .fitemtitle{width:20%}#page-question-preview #techinfo{margin:1em 0}.dir-rtl #chooseqtype .instruction,.dir-rtl #chooseqtype .qtypesummary{right:60%;left:0;border-right:1px solid grey;border-left:0}#page-mod-quiz-edit .questionbankwindow div.header{padding:3px;padding:2px 10px 2px 10px;margin:0 -10px 0 -10px;color:#444;text-shadow:none;background:transparent;-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}#page-mod-quiz-edit .questionbankwindow div.header a:link,#page-mod-quiz-edit .questionbankwindow div.header a:visited{color:#08c}#page-mod-quiz-edit .questionbankwindow div.header a:hover{color:#005580}#page-mod-quiz-edit .questionbankwindow div.header .title{color:#333}#page-mod-quiz-edit div.container div.generalbox{padding:1.5em;background-color:transparent}#page-mod-quiz-edit .categoryinfo{background-color:#fff;border-bottom:0}#page-mod-quiz-edit div.questionbank .categoryquestionscontainer,#page-mod-quiz-edit div.questionbank .categorysortopotionscontainer,#page-mod-quiz-edit div.questionbank .categorypagingbarcontainer,#page-mod-quiz-edit div.questionbank .categoryselectallcontainer{padding:0 0 1.5em 0}#page-mod-quiz-edit div.questionbank .categorypagingbarcontainer{padding:1em;margin:0 -1.2em;background-color:transparent;border-top:0;border-bottom:0}#page-mod-quiz-edit div.questionbank .categoryquestionscontainer{margin:0 -1.2em -1em -1.2em}#page-mod-quiz-edit div.question div.content div.questioncontrols{background-color:#fff}#page-mod-quiz-edit div.question div.content div.points{padding-bottom:.5em;margin-top:-0.5em;background-color:#fff;border:0}#page-mod-quiz-edit div.question div.content div.points label{display:inline-block}#page-mod-quiz-edit div.quizpage .pagecontent .pagestatus{background-color:#fff}#page-mod-quiz-edit .quizpagedelete,#page-mod-quiz-edit .quizpagedelete img{background-color:transparent}#page-mod-quiz-edit div.quizpage .pagecontent{overflow:hidden;border:1px solid #ddd;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}#page-mod-quiz-edit .modulespecificbuttonscontainer{width:220px}.questionbankwindow .module{width:auto}#page-mod-quiz-edit div.editq div.question div.content{overflow:hidden;background-color:#fff;border:1px solid #ddd;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.path-mod-quiz .statedetails{display:block;font-size:.9em}a#hidebankcmd{color:#08c}.que.shortanswer .answer{padding:0}.que label{display:inline}.userprofile .fullprofilelink{margin:10px;text-align:center}.userprofile .description{margin-bottom:20px}.userprofile dl.list{*zoom:1}.userprofile dl.list:before,.userprofile dl.list:after{display:table;line-height:0;content:""}.userprofile dl.list:after{clear:both}.userprofile dl.list dt{float:left;width:180px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.userprofile dl.list dd{margin-left:200px}.user-box{float:left;width:115px;height:160px;margin:8px;clear:none;text-align:center}.userlist .action-icon img{vertical-align:middle}.userlist #showall{margin:10px 0}.userlist .buttons{text-align:center}.userlist .buttons label{padding:0 3px}.userlist table#participants{text-align:center}.userlist table#participants td,.userlist table#participants th{padding:4px;text-align:left;vertical-align:middle}.userlist table.controls{width:100%}.userlist table.controls tr{vertical-align:top}.userlist table.controls td.right,.userlist table.controls td.left{padding:4px}.userlist table.controls .right{text-align:right}.userinfobox{width:100%;padding:10px;border:1px solid;border-collapse:separate}.userinfobox .left,.userinfobox .side{width:100px;vertical-align:top}.userinfobox .userpicture{width:100px;height:100px}.userinfobox .content{vertical-align:top}.userinfobox .links{width:100px;padding:5px;vertical-align:bottom}.userinfobox .links a{display:block}.userinfobox .list td{padding:3px}.userinfobox .username{padding-bottom:20px;font-weight:bold}.userinfobox td.label{font-weight:bold;text-align:right;white-space:nowrap;vertical-align:top}.groupinfobox{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.groupinfobox blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.groupinfobox .left{width:100px;padding:10px;vertical-align:top}.course-participation #showall{margin:10px 0;text-align:center}#user-policy .noticebox{width:80%;height:250px;margin-right:auto;margin-bottom:10px;margin-left:auto;text-align:center}#user-policy #policyframe{width:100%;height:100%}.iplookup #map{margin:auto}.userselector select{width:100%}.userselector div{margin-top:.2em}.userselector div label{margin-right:.3em}.userselector .userselector-infobelow{font-size:.8em}#userselector_options{padding:.3em 0}#userselector_options .collapsibleregioncaption{font-weight:bold}#userselector_options p{margin:.2em 0;text-align:left}.dir-rtl #userselector_options p{text-align:right}#page-user-profile .messagebox{margin-right:auto;margin-left:auto;text-align:center}#page-course-view-weeks .messagebox{margin-right:auto;margin-left:auto;text-align:center}.dir-rtl .descriptionbox{margin-right:110px;margin-left:0}.dir-rtl .userlist table#participants td,.dir-rtl .userlist table#participants th{text-align:right}.dir-rtl .userlist table#participants{margin:0 auto}#page-my-index.dir-rtl .block h3{text-align:right}/*! +.layout-option-noheader #page-header,.layout-option-nonavbar #page-navbar,.layout-option-nofooter #page-footer,.layout-option-nocourseheader .course-content-header,.layout-option-nocoursefooter .course-content-footer{display:none}.empty-region-side-pre #block-region-side-pre,.empty-region-side-post #block-region-side-post{display:none}.empty-region-side-post #region-bs-main-and-pre.span9{width:100%}.empty-region-side-pre #region-main{float:none;width:100%}.empty-region-side-post.used-region-side-pre #region-main.span8{width:74.46808510638297%;*width:74.41489361702126%}.empty-region-side-post.used-region-side-pre #block-region-side-pre.span4{width:23.404255319148934%;*width:23.351063829787233%}.empty-region-side-post #region-bs-main-and-post.span9 #region-main.span8{width:100%}.dir-ltr,.mdl-left,.dir-rtl .mdl-right{text-align:left}.dir-rtl,.mdl-right,.dir-rtl .mdl-left{text-align:right}#add,#remove,.centerpara,.mdl-align{text-align:center}a.dimmed,a.dimmed:link,a.dimmed:visited,a.dimmed_text,a.dimmed_text:link,a.dimmed_text:visited,.dimmed_text,.dimmed_text a,.dimmed_text a:link,.dimmed_text a:visited,.usersuspended,.usersuspended a,.usersuspended a:link,.usersuspended a:visited,.dimmed_category,.dimmed_category a{color:#999}.activity.label .dimmed_text{opacity:.5;filter:alpha(opacity=50)}.unlist,.unlist li,.inline-list,.inline-list li,.block .list,.block .list li,.section li.activity,.section li.movehere,.tabtree li{padding:0;margin:0;list-style:none}.inline,.inline-list li{display:inline}.notifytiny{font-size:10.5px}.notifytiny li,.notifytiny td{font-size:100%}.red,.notifyproblem{color:#b94a48}.green,.notifysuccess{color:#468847}.reportlink{text-align:right}a.autolink.glossary:hover{cursor:help}.collapsibleregioncaption{white-space:nowrap}.collapsibleregioncaption img{vertical-align:middle}.jsenabled .hiddenifjs{display:none}.visibleifjs{display:none}.jsenabled .visibleifjs{display:inline}.jsenabled .collapsibleregion{overflow:hidden}.jsenabled .collapsed .collapsibleregioninner{visibility:hidden}.yui-overlay .yui-widget-bd{position:relative;top:0;left:0;z-index:1;padding:2px 5px;color:#000;background-color:#ffee69;border:1px solid #a6982b;border-top-color:#d4c237}.clearer{display:block;height:1px;padding:0;margin:0;clear:both;background:transparent;border-width:0}.bold,.warning,.errorbox .title,.pagingbar .title,.pagingbar .thispage,.headingblock{font-weight:bold}img.resize{width:1em;height:1em}.block img.resize,.breadcrumb img.resize{width:.8em;height:.9em}img.icon{width:16px;height:16px;padding-right:6px;vertical-align:text-bottom}.dir-rtl img.icon{padding-right:0;padding-left:6px}img.iconsmall{width:12px;height:12px;margin-right:3px;vertical-align:middle}img.iconhelp,.helplink img{width:16px;height:16px;padding-left:3px;vertical-align:text-bottom}h1 img.iconhelp,h1 img.icon,h2 img.iconhelp,h2 img.icon,h3 img.iconhelp,h3 img.icon,h4 img.iconhelp,h4 img.icon,h5 img.iconhelp,h5 img.icon,h6 img.iconhelp,h6 img.icon{vertical-align:middle}.dir-rtl img.iconhelp,.dir-rtl .helplink img{padding-right:3px;padding-left:0}img.iconlarge{width:24px;height:24px;vertical-align:middle}img.iconsort{padding-left:.3em;margin-bottom:.15em;vertical-align:text-bottom}.dir-rtl img.iconsort{padding-right:.3em;padding-left:0}img.icontoggle{width:50px;height:17px;vertical-align:middle}img.iconkbhelp{width:49px;height:17px}img.icon-pre,.dir-rtl img.icon-post{padding-right:3px;padding-left:0}img.icon-post,.dir-rtl img.icon-pre{padding-right:0;padding-left:3px}.boxaligncenter{margin-right:auto;margin-left:auto}.boxalignright{margin-right:0;margin-left:auto}.boxalignleft{margin-right:auto;margin-left:0}.boxwidthnarrow{width:30%}.boxwidthnormal{width:50%}.boxwidthwide{width:80%}.headermain{font-weight:bold}#maincontent{display:block;height:1px;overflow:hidden}img.uihint{cursor:help}#addmembersform table{margin-right:auto;margin-left:auto}.flexible th{white-space:nowrap}table.flexible .emptyrow{display:none}img.emoticon{width:15px;height:15px;vertical-align:middle}form.popupform,form.popupform div{display:inline}.arrow_button input{overflow:hidden}.action-icon img.smallicon{margin:0 .3em;vertical-align:text-bottom}.no-overflow{padding-bottom:1px;overflow:auto}.pagelayout-report .no-overflow{overflow:visible}.no-overflow>.generaltable{margin-bottom:0}.accesshide{position:absolute;left:-10000px;font-size:1em;font-weight:normal}.dir-rtl .accesshide{top:-30000px;left:auto}span.hide,div.hide{display:none}a.skip-block,a.skip{position:absolute;top:-1000em;font-size:.85em;text-decoration:none}a.skip-block:focus,a.skip-block:active,a.skip:focus,a.skip:active{position:static;display:block}.skip-block-to{display:block;height:1px;overflow:hidden}.addbloglink{text-align:center}.blog_entry .audience{padding-right:4px;text-align:right}.blog_entry .tags{margin-top:15px}.blog_entry .tags .action-icon img.smallicon{width:16px;height:16px}.blog_entry .content{margin-left:43px}#page-group-index #groupeditform{text-align:center}#doc-contents h1{margin:1em 0 0 0}#doc-contents ul{width:90%;padding:0;margin:0}#doc-contents ul li{list-style-type:none}.groupmanagementtable td{vertical-align:top}.groupmanagementtable #existingcell,.groupmanagementtable #potentialcell{width:42%}.groupmanagementtable #buttonscell{width:16%}.groupmanagementtable #buttonscell p.arrow_button input{width:auto;min-width:80%;margin:0 auto}.groupmanagementtable #removeselect_wrapper,.groupmanagementtable #addselect_wrapper{width:100%}.groupmanagementtable #removeselect_wrapper label,.groupmanagementtable #addselect_wrapper label{font-weight:normal}.dir-rtl .groupmanagementtable p{text-align:right}#group-usersummary{width:14em}.groupselector{margin-top:3px;margin-bottom:3px}.loginbox{margin:15px;overflow:visible}.loginbox.twocolumns{margin:15px}.loginbox h2,.loginbox .subcontent{padding:10px;margin:5px;text-align:center}.loginbox .loginpanel .desc{padding:0;margin:0;margin-top:15px;margin-bottom:5px}.loginbox .signuppanel .subcontent{text-align:left}.dir-rtl .loginbox .signuppanel .subcontent{text-align:right}.loginbox .loginsub{margin-right:0;margin-left:0}.loginbox .guestsub,.loginbox .forgotsub,.loginbox .potentialidps{margin:5px 12%}.loginbox .potentialidps .potentialidplist{margin-left:40%}.loginbox .potentialidps .potentialidplist div{text-align:left}.loginbox .loginform{margin-top:1em;text-align:left}.loginbox .loginform .form-label{float:left;width:44%;text-align:right;white-space:nowrap;direction:rtl}.dir-rtl .loginbox .loginform .form-label{float:left;width:44%;text-align:right;white-space:nowrap;direction:ltr}.loginbox .loginform .form-input{float:right;width:55%}.loginbox .loginform .form-input input{width:6em}.loginbox .signupform{margin-top:1em;text-align:center}.loginbox.twocolumns .loginpanel,.loginbox.twocolumns .signuppanel{display:block;float:left;width:48%;min-height:30px;padding:0;padding-bottom:2000px;margin:0;margin-bottom:-2000px;margin-left:2.76243%;border:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.loginbox .potentialidp .smallicon{margin:0 .3em;vertical-align:text-bottom}.notepost{margin-bottom:1em}.notepost .userpicture{float:left;margin-right:5px}.notepost .content,.notepost .footer{clear:both}.notesgroup{margin-left:20px}.path-my .coursebox .overview{margin:15px 30px 10px 30px}.path-my .coursebox .info{float:none;margin:0}.mod_introbox{padding:10px}table.mod_index{width:100%}.comment-ctrl{display:none;padding:0;margin:0;font-size:12px}.comment-ctrl h5{padding:5px;margin:0}.comment-area{max-width:400px;padding:5px}.comment-area textarea{width:100%;overflow:auto}.comment-area .fd{text-align:right}.comment-meta span{color:gray}.comment-link img{vertical-align:text-bottom}.comment-list{padding:0;margin:0;overflow:auto;font-size:11px;list-style:none}.comment-list li{position:relative;padding:.3em;margin:2px;margin-bottom:5px;clear:both;list-style:none}.comment-list li.first{display:none}.comment-paging{text-align:center}.comment-paging .pageno{padding:2px}.comment-paging .curpage{border:1px solid #CCC}.comment-message .picture{float:left;width:20px}.dir-rtl .comment-message .picture{float:right}.comment-message .text{padding:0;margin:0}.comment-message .text p{padding:0;margin:0 18px 0 0}.comment-delete{position:absolute;top:0;right:0;margin:.3em}.dir-rtl .comment-delete{position:absolute;right:auto;left:0;margin:.3em}.comment-delete-confirm{width:5em;padding:2px;text-align:center;background:#eee}.comment-container{float:left;margin:4px}.comment-report-selectall{display:none}.comment-link{display:none}.jsenabled .comment-link{display:block}.jsenabled .showcommentsnonjs{display:none}.jsenabled .comment-report-selectall{display:inline}.completion-expired{background:#f2dede}.completion-expected{font-size:10.5px}.completion-sortchoice,.completion-identifyfield{font-size:10.5px;vertical-align:bottom}.completion-progresscell{text-align:right}.completion-expired .completion-expected{font-weight:bold}#page-tag-coursetags_edit .coursetag_edit_centered{position:relative;width:600px;margin:20px auto}#page-tag-coursetags_edit .coursetag_edit_row{clear:both}#page-tag-coursetags_edit .coursetag_edit_row .coursetag_edit_left{float:left;width:50%;text-align:right}#page-tag-coursetags_edit .coursetag_edit_row .coursetag_edit_right{margin-left:50%}#page-tag-coursetags_edit .coursetag_edit_input3{display:none}#page-tag-coursetags_more .coursetag_more_large{font-size:120%}#page-tag-coursetags_more .coursetag_more_small{font-size:80%}#page-tag-coursetags_more .coursetag_more_link{font-size:80%}#tag-description,#tag-blogs{width:100%}#tag-management-box{margin-bottom:10px;line-height:20px}#tag-user-table{width:100%;padding:3px;clear:both}#tag-user-table{*zoom:1}#tag-user-table:before,#tag-user-table:after{display:table;line-height:0;content:""}#tag-user-table:after{clear:both}img.user-image{width:100px;height:100px}#small-tag-cloud-box{width:300px;margin:0 auto}#big-tag-cloud-box{float:none;width:600px;margin:0 auto}ul#tag-cloud-list{padding:5px;margin:0;list-style:none}ul#tag-cloud-list li{display:inline;margin:0;list-style-type:none}#tag-search-box{margin:10px auto;text-align:center}#tag-search-results-container{width:100%;padding:0}#tag-search-results{display:block;float:left;width:60%;padding:0;margin:15px 20% 0 20%}#tag-search-results li{float:left;width:30%;padding-right:1%;padding-left:1%;line-height:20px;text-align:left;list-style:none}span.flagged-tag,span.flagged-tag a{color:#b94a48}table#tag-management-list{width:100%;text-align:left}table#tag-management-list td,table#tag-management-list th{padding:4px;text-align:left;vertical-align:middle}.tag-management-form{text-align:center}#relatedtags-autocomplete-container{width:100%;min-height:4.6em;margin-right:auto;margin-left:auto}#relatedtags-autocomplete{position:relative;display:block;width:60%;margin-right:auto;margin-left:auto}#relatedtags-autocomplete .yui-ac-content{position:absolute;left:20%;z-index:9050;width:420px;overflow:hidden;background:#fff;border:1px solid #404040}#relatedtags-autocomplete .ysearchquery{position:absolute;right:10px;z-index:10;color:#808080}#relatedtags-autocomplete .yui-ac-shadow{position:absolute;z-index:9049;width:100%;margin:.3em;background:#a0a0a0}#relatedtags-autocomplete ul{width:100%;padding:0;margin:0;list-style-type:none}#relatedtags-autocomplete li{padding:0 5px;white-space:nowrap;cursor:default}#relatedtags-autocomplete li.yui-ac-highlight{background:#ffc}h2.tag-heading,div#tag-description,div#tag-blogs,body.tag .managelink{padding:5px}.tag_cloud .s20{font-size:1.5em;font-weight:bold}.tag_cloud .s19{font-size:1.5em}.tag_cloud .s18{font-size:1.4em;font-weight:bold}.tag_cloud .s17{font-size:1.4em}.tag_cloud .s16{font-size:1.3em;font-weight:bold}.tag_cloud .s15{font-size:1.3em}.tag_cloud .s14{font-size:1.2em;font-weight:bold}.tag_cloud .s13{font-size:1.2em}.tag_cloud .s12,.tag_cloud .s11{font-size:1.1em;font-weight:bold}.tag_cloud .s10,.tag_cloud .s9{font-size:1.1em}.tag_cloud .s8,.tag_cloud .s7{font-size:1em;font-weight:bold}.tag_cloud .s6,.tag_cloud .s5{font-size:1em}.tag_cloud .s4,.tag_cloud .s3{font-size:.9em;font-weight:bold}.tag_cloud .s2,.tag_cloud .s1{font-size:.9em}.tag_cloud .s0{font-size:.8em}#webservice-doc-generator td{text-align:left;border:0 solid black}.smartselect{position:absolute}.smartselect .smartselect_mask{background-color:#fff}.smartselect ul{padding:0;margin:0}.smartselect ul li{list-style:none}.smartselect .smartselect_menu{margin-right:5px}.safari .smartselect .smartselect_menu{margin-left:2px}.smartselect .smartselect_menu,.smartselect .smartselect_submenu{display:none;background-color:#FFF;border:1px solid #000}.smartselect .smartselect_menu.visible,.smartselect .smartselect_submenu.visible{display:block}.smartselect .smartselect_menu_content ul li{position:relative;padding:2px 5px}.smartselect .smartselect_menu_content ul li a{color:#333;text-decoration:none}.smartselect .smartselect_menu_content ul li a.selectable{color:inherit}.smartselect .smartselect_submenuitem{background-image:url([[pix:moodle|t/collapsed]]);background-position:100%;background-repeat:no-repeat}.smartselect.spanningmenu .smartselect_submenu{position:absolute;top:-1px;left:100%}.smartselect.spanningmenu .smartselect_submenu a{padding-right:16px;white-space:nowrap}.smartselect.spanningmenu .smartselect_menu_content ul li a.selectable:hover{text-decoration:underline}.smartselect.compactmenu .smartselect_submenu{position:relative;z-index:1010;display:none;margin:2px -3px;margin-left:10px;border-width:0}.smartselect.compactmenu .smartselect_submenu.visible{display:block}.smartselect.compactmenu .smartselect_menu{z-index:1000;overflow:hidden}.smartselect.compactmenu .smartselect_submenu .smartselect_submenu{z-index:1020}.smartselect.compactmenu .smartselect_submenuitem:hover>.smartselect_menuitem_label{font-weight:bold}#page-admin-registration-register .registration_textfield{width:300px}.userenrolment{width:100%;border-collapse:collapse}.userenrolment td{height:41px;padding:0}.userenrolment .subfield{margin-right:5px}.userenrolment .col_userdetails .subfield_picture{float:left}.userenrolment .col_lastseen{width:150px}.userenrolment .col_role{width:262px}.userenrolment .col_role .roles{margin-right:30px}.userenrolment .col_role .role{float:left;padding:3px;margin:3px}.dir-rtl .userenrolment .col_role .role{float:right}.userenrolment .col_role .role a{margin-left:3px;cursor:pointer}.userenrolment .col_role .addrole{float:right;width:18px;height:18px;margin:3px;text-align:center;background-color:#dff0d8;border:1px solid #d6e9c6}.userenrolment .col_role .addrole img{vertical-align:baseline}.userenrolment .hasAllRoles .col_role .addrole{display:none}.userenrolment .col_group .groups{margin-right:30px}.userenrolment .col_group .group{float:left;padding:3px;margin:3px;white-space:nowrap}.userenrolment .col_group .group a{margin-left:3px;cursor:pointer}.userenrolment .col_group .addgroup{float:right;width:18px;height:18px;margin:3px;text-align:center}.userenrolment .col_group .addgroup a img{vertical-align:bottom}.userenrolment .col_enrol .enrolment{float:left;padding:3px;margin:3px}.userenrolment .col_enrol .enrolment a{float:right;margin-left:3px}#page-enrol-users .enrol_user_buttons{float:right}#page-enrol-users.dir-rtl .enrol_user_buttons{float:left}#page-enrol-users .enrol_user_buttons .enrolusersbutton{display:inline;margin-left:1em}#page-enrol-users .enrol_user_buttons .enrolusersbutton div,#page-enrol-users .enrol_user_buttons .enrolusersbutton form{display:inline}#page-enrol-users .enrol_user_buttons .enrolusersbutton input{padding-right:6px;padding-left:6px}#page-enrol-users.dir-rtl .col_userdetails .subfield_picture{float:right}#page-enrol-users .user-enroller-panel .uep-search-results .user .details{width:237px}.dir-rtl .headermain{float:right}.dir-rtl .headermenu{float:left}.dir-rtl .loginbox .loginform .form-label{float:right;text-align:left}.dir-rtl .loginbox .loginform .form-input{text-align:right}.dir-rtl .yui3-menu-hidden{left:0}#page-admin-roles-define.dir-rtl #rolesform .felement{margin-right:180px}#page-message-edit.dir-rtl table.generaltable th.c0{text-align:right}.corelightbox{position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;background-color:#CCC}.corelightbox img{position:fixed;top:50%;left:50%}.mod-indent-1{margin-left:30px}.mod-indent-2{margin-left:60px}.mod-indent-3{margin-left:90px}.mod-indent-4{margin-left:120px}.mod-indent-5{margin-left:150px}.mod-indent-6{margin-left:180px}.mod-indent-7{margin-left:210px}.mod-indent-8{margin-left:240px}.mod-indent-9{margin-left:270px}.mod-indent-10{margin-left:300px}.mod-indent-11{margin-left:330px}.mod-indent-12{margin-left:360px}.mod-indent-13{margin-left:390px}.mod-indent-14{margin-left:420px}.mod-indent-15,.mod-indent-huge{margin-left:420px}.dir-rtl .mod-indent-1{margin-right:30px;margin-left:0}.dir-rtl .mod-indent-2{margin-right:60px;margin-left:0}.dir-rtl .mod-indent-3{margin-right:90px;margin-left:0}.dir-rtl .mod-indent-4{margin-right:120px;margin-left:0}.dir-rtl .mod-indent-5{margin-right:150px;margin-left:0}.dir-rtl .mod-indent-6{margin-right:180px;margin-left:0}.dir-rtl .mod-indent-7{margin-right:210px;margin-left:0}.dir-rtl .mod-indent-8{margin-right:240px;margin-left:0}.dir-rtl .mod-indent-9{margin-right:270px;margin-left:0}.dir-rtl .mod-indent-10{margin-right:300px;margin-left:0}.dir-rtl .mod-indent-11{margin-right:330px;margin-left:0}.dir-rtl .mod-indent-12{margin-right:360px;margin-left:0}.dir-rtl .mod-indent-13{margin-right:390px;margin-left:0}.dir-rtl .mod-indent-14{margin-right:420px;margin-left:0}.dir-rtl .mod-indent-15,.dir-rtl .mod-indent-huge{margin-right:420px;margin-left:0}.resourcecontent .mediaplugin_mp3 object{width:600px;height:25px}.resourcecontent audio.mediaplugin_html5audio{width:600px}.resourceimage{max-width:100%}.mediaplugin_mp3 object{width:300px;height:15px}audio.mediaplugin_html5audio{width:300px}.core_media_preview.pagelayout-embedded #content{padding:0}.core_media_preview.pagelayout-embedded #maincontent{height:0}.core_media_preview.pagelayout-embedded .mediaplugin{margin:0}.dir-rtl .ygtvtn,.dir-rtl .ygtvtm,.dir-rtl .ygtvtmh,.dir-rtl .ygtvtmhh,.dir-rtl .ygtvtp,.dir-rtl .ygtvtph,.dir-rtl .ygtvtphh,.dir-rtl .ygtvln,.dir-rtl .ygtvlm,.dir-rtl .ygtvlmh,.dir-rtl .ygtvlmhh,.dir-rtl .ygtvlp,.dir-rtl .ygtvlph,.dir-rtl .ygtvlphh,.dir-rtl .ygtvdepthcell,.dir-rtl .ygtvok,.dir-rtl .ygtvok:hover,.dir-rtl .ygtvcancel,.dir-rtl .ygtvcancel:hover{width:18px;height:22px;cursor:pointer;background-image:url([[pix:theme|yui2-treeview-sprite-rtl]]);background-repeat:no-repeat}.dir-rtl .ygtvtn{background-position:0 -5600px}.dir-rtl .ygtvtm{background-position:0 -4000px}.dir-rtl .ygtvtmh,.dir-rtl .ygtvtmhh{background-position:0 -4800px}.dir-rtl .ygtvtp{background-position:0 -6400px}.dir-rtl .ygtvtph,.dir-rtl .ygtvtphh{background-position:0 -7200px}.dir-rtl .ygtvln{background-position:0 -1600px}.dir-rtl .ygtvlm{background-position:0 0}.dir-rtl .ygtvlmh,.dir-rtl .ygtvlmhh{background-position:0 -800px}.dir-rtl .ygtvlp{background-position:0 -2400px}.dir-rtl .ygtvlph,.dir-rtl .ygtvlphh{background-position:0 -3200px}.dir-rtl .ygtvdepthcell{background-position:0 -8000px}.dir-rtl .ygtvok{background-position:0 -8800px}.dir-rtl .ygtvok:hover{background-position:0 -8844px}.dir-rtl .ygtvcancel{background-position:0 -8822px}.dir-rtl .ygtvcancel:hover{background-position:0 -8866px}.dir-rtl.yui-skin-sam .yui-panel .hd{text-align:right}.dir-rtl .yui-skin-sam .yui-layout .yui-layout-unit div.yui-layout-bd{text-align:right}.dir-rtl .clearlooks2.ie9 .mceAlert .mceMiddle span,.dir-rtl .clearlooks2 .mceConfirm .mceMiddle span{top:44px}.dir-rtl .o2k7Skin table,.dir-rtl .o2k7Skin tbody,.dir-rtl .o2k7Skin a,.dir-rtl .o2k7Skin img,.dir-rtl .o2k7Skin tr,.dir-rtl .o2k7Skin div,.dir-rtl .o2k7Skin td,.dir-rtl .o2k7Skin iframe,.dir-rtl .o2k7Skin span,.dir-rtl .o2k7Skin *,.dir-rtl .o2k7Skin .mceText,.dir-rtl .o2k7Skin .mceListBox .mceText{text-align:right}.path-rating .ratingtable{width:100%;margin-bottom:1em}.path-rating .ratingtable th.rating{width:100%}.path-rating .ratingtable td.rating,.path-rating .ratingtable td.time{text-align:center;white-space:nowrap}.initialbar a{padding-right:2px}.moodle-dialogue-base .moodle-dialogue-lightbox{background-color:#AAA}.moodle-dialogue-base .hidden,.moodle-dialogue-base .moodle-dialogue-hidden{display:none}.no-scrolling{overflow:hidden}.moodle-dialogue-fullscreen{top:0;left:0;width:100%;height:100%;overflow:auto}.moodle-dialogue-base .moodle-dialogue{z-index:600;padding:0;margin:0;background:0;border:0;outline:#000 dotted 0}.moodle-dialogue-base .moodle-dialogue-wrap{margin-top:-3px;margin-left:-3px;background-color:#fff;border:1px solid #ccc;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd{padding:5px;margin:0;font-size:12px;font-weight:normal;letter-spacing:1px;color:#333;text-align:center;text-shadow:1px 1px 1px #fff;background:#ccc;background-color:#ebebeb;background-image:-moz-linear-gradient(top,#fff,#ccc);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#ccc));background-image:-webkit-linear-gradient(top,#fff,#ccc);background-image:-o-linear-gradient(top,#fff,#ccc);background-image:linear-gradient(to bottom,#fff,#ccc);background-repeat:repeat-x;border-bottom:1px solid #bbb;-webkit-border-radius:10px 10px 0 0;-moz-border-radius:10px 10px 0 0;border-radius:10px 10px 0 0;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffcccccc',GradientType=0);filter:dropshadow(color=#ffffff,offx=1,offy=1)}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd h1{display:inline;padding:0;margin:0;font-size:100%;font-weight:bold}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd .yui3-widget-buttons{padding:5px}.moodle-dialogue-base .closebutton{display:inline-block;float:right;width:25px;height:15px;padding:0;vertical-align:middle;cursor:pointer;background-image:url([[pix:theme|sprite]]);background-repeat:no-repeat;border-style:none}.dir-rtl .moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd .yui3-widget-buttons{right:auto;left:0}.moodle-dialogue-base .moodle-dialogue .moodle-dialogue-bd{padding:1em;overflow:auto;font-size:12px;line-height:2em;color:#555}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-content{padding:0;background:#FFF}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-hd{padding:10px;font-size:16px}.moodle-dialogue-base .moodle-dialogue-fullscreen,.moodle-dialogue-fullscreen .moodle-dialogue-content{width:100%;height:100%;margin:0;border:0}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-hd,.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-wrap{border-radius:0}.moodle-dialogue-confirm .confirmation-dialogue{text-align:center}.moodle-dialogue-confirm .confirmation-dialogue input{text-align:center}.moodle-dialogue-exception .moodle-exception-message{text-align:center}.moodle-dialogue-exception .moodle-exception-param label{font-weight:bold}.moodle-dialogue-exception .param-stacktrace label{background-color:#EEE;border:1px solid #ccc;border-bottom-width:0}.moodle-dialogue-exception .param-stacktrace pre{background-color:#fff;border:1px solid #ccc}.moodle-dialogue-exception .param-stacktrace .stacktrace-file{font-size:11.9px;color:navy}.moodle-dialogue-exception .param-stacktrace .stacktrace-line{font-size:11.9px;color:#b94a48}.moodle-dialogue-exception .param-stacktrace .stacktrace-call{font-size:90%;color:#333;border-bottom:1px solid #eee}.moodle-dialogue-base .moodle-dialogue .moodle-dialogue-content .moodle-dialogue-ft{padding:0;margin:.7em 1em;font-size:12px;text-align:right;background-color:#FFF}.moodle-dialogue-confirm .confirmation-message{margin:.5em 1em}.moodle-dialogue-confirm .confirmation-dialogue input{min-width:80px}.moodle-dialogue-exception .moodle-exception-message{margin:1em}.moodle-dialogue-exception .moodle-exception-param{margin-bottom:.5em}.moodle-dialogue-exception .moodle-exception-param label{width:150px}.moodle-dialogue-exception .param-stacktrace label{display:block;padding:4px 1em;margin:0}.moodle-dialogue-exception .param-stacktrace pre{display:block;height:200px;overflow:auto}.moodle-dialogue-exception .param-stacktrace .stacktrace-file{display:inline-block;margin:4px 0}.moodle-dialogue-exception .param-stacktrace .stacktrace-line{display:inline-block;width:50px;margin:4px 1em}.moodle-dialogue-exception .param-stacktrace .stacktrace-call{padding-bottom:4px;padding-left:25px;margin-bottom:4px}.moodle-dialogue .moodle-dialogue-bd .content-lightbox{top:0;left:0;width:100%;height:100%;padding:10% 0;text-align:center;background-color:white;opacity:.75;filter:alpha(opacity=75)}.moodle-dialogue .tooltiptext{max-height:300px}.moodle-dialogue-base .moodle-dialogue.moodle-dialogue-tooltip{z-index:3001}#page-question-edit.dir-rtl a.container-close{right:auto;left:6px}.chooserdialoguebody,.choosertitle{display:none}.moodle-dialogue.chooserdialogue .moodle-dialogue-content .moodle-dialogue-ft{margin:0}.chooserdialogue .moodle-dialogue-wrap .moodle-dialogue-bd{padding:0;background:#f2f2f2;-webkit-border-bottom-right-radius:10px;border-bottom-right-radius:10px;-webkit-border-bottom-left-radius:10px;border-bottom-left-radius:10px;-moz-border-radius-bottomright:10px;-moz-border-radius-bottomleft:10px}.choosercontainer #chooseform .submitbuttons{margin:.7em 0;text-align:center}.choosercontainer #chooseform .submitbuttons input{min-width:100px;margin:0 .5em}.choosercontainer #chooseform .options{position:relative;border-bottom:1px solid #bbb}.jsenabled .choosercontainer #chooseform .alloptions{max-width:20.3em;overflow-x:hidden;overflow-y:auto;-webkit-box-shadow:inset 0 0 30px 0 #ccc;-moz-box-shadow:inset 0 0 30px 0 #ccc;box-shadow:inset 0 0 30px 0 #ccc}.dir-rtl.jsenabled .choosercontainer #chooseform .alloptions{max-width:18.3em}.choosercontainer #chooseform .moduletypetitle,.choosercontainer #chooseform .option,.choosercontainer #chooseform .nonoption{padding:0 1.6em 0 1.6em;margin-bottom:0}.choosercontainer #chooseform .moduletypetitle{padding-top:1.2em;padding-bottom:.4em;text-transform:uppercase}.choosercontainer #chooseform .option .typename,.choosercontainer #chooseform .option span.modicon img.icon,.choosercontainer #chooseform .nonoption .typename,.choosercontainer #chooseform .nonoption span.modicon img.icon{padding:0 0 0 .5em}.dir-rtl .choosercontainer #chooseform .option .typename,.dir-rtl .choosercontainer #chooseform .option span.modicon img.icon,.dir-rtl .choosercontainer #chooseform .nonoption .typename,.dir-rtl .choosercontainer #chooseform .nonoption span.modicon img.icon{padding:0 .5em 0 0}.choosercontainer #chooseform .option span.modicon img.icon,.choosercontainer #chooseform .nonoption span.modicon img.icon{width:24px;height:24px}.choosercontainer #chooseform .option input[type=radio],.choosercontainer #chooseform .option span.typename,.choosercontainer #chooseform .option span.modicon{vertical-align:middle}.choosercontainer #chooseform .option label{display:block;padding:.3em 0 .1em 0;border-bottom:1px solid #fff}.choosercontainer #chooseform .nonoption{padding-top:.3em;padding-bottom:.1em;padding-left:2.7em}.dir-rtl .choosercontainer #chooseform .nonoption{padding-right:2.7em;padding-left:0}.choosercontainer #chooseform .subtype{padding:0 1.6em 0 3.2em;margin-bottom:0}.dir-rtl .choosercontainer #chooseform .subtype{padding:0 3.2em 0 1.6em}.choosercontainer #chooseform .subtype .typename{margin:0 0 0 .2em}.dir-rtl .choosercontainer #chooseform .subtype .typename{margin:0 .2em 0 0}.jsenabled .choosercontainer #chooseform .instruction,.jsenabled .choosercontainer #chooseform .typesummary{position:absolute;top:0;right:0;bottom:0;left:20.3em;display:none;padding:1.6em;margin:0;overflow-x:hidden;overflow-y:auto;line-height:2em;background-color:#fff}.dir-rtl.jsenabled .choosercontainer #chooseform .instruction,.dir-rtl.jsenabled .choosercontainer #chooseform .typesummary{right:18.5em;left:0;border-right:1px solid grey}.jsenabled .choosercontainer #chooseform .instruction,.choosercontainer #chooseform .selected .typesummary{display:block}.choosercontainer #chooseform .selected{background-color:#fff;-webkit-box-shadow:0 0 10px 0 #ccc;-moz-box-shadow:0 0 10px 0 #ccc;box-shadow:0 0 10px 0 #ccc}.section-modchooser-link img.smallicon{padding:3px}.formlistingradio{padding-right:10px;padding-bottom:25px}.formlistinginputradio{float:left}.formlistingmain{min-height:225px}.formlisting{position:relative;padding:1px 19px 14px;margin:15px 0;background-color:white;border:1px solid #DDD;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.formlistingmore{position:absolute;right:-1px;bottom:-1px;padding:3px 7px;font-size:12px;font-weight:bold;color:#9da0a4;cursor:pointer;background-color:whiteSmoke;border:1px solid #ddd;-webkit-border-radius:4px 0 4px 0;-moz-border-radius:4px 0 4px 0;border-radius:4px 0 4px 0}.formlistingall{padding:0;margin:15px 0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.formlistingrow{top:50%;left:50%;float:left;width:150px;min-height:34px;padding:6px;cursor:pointer;background-color:#f7f7f9;border-right:1px solid #e1e1e8;border-bottom:1px solid;border-left:1px solid #e1e1e8;border-color:#e1e1e8;-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}body.jsenabled .formlistingradio{display:none}body.jsenabled .formlisting{display:block}table.collection{width:100%;margin-bottom:20px;border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}table.collection th,table.collection td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #ddd}table.collection th{font-weight:bold}table.collection thead th{vertical-align:bottom}table.collection caption+thead tr:first-child th,table.collection caption+thead tr:first-child td,table.collection colgroup+thead tr:first-child th,table.collection colgroup+thead tr:first-child td,table.collection thead:first-child tr:first-child th,table.collection thead:first-child tr:first-child td{border-top:0}table.collection tbody+tbody{border-top:2px solid #ddd}table.collection .table{background-color:#fff}table.collection th,table.collection td{border-left:1px solid #ddd}table.collection caption+thead tr:first-child th,table.collection caption+tbody tr:first-child th,table.collection caption+tbody tr:first-child td,table.collection colgroup+thead tr:first-child th,table.collection colgroup+tbody tr:first-child th,table.collection colgroup+tbody tr:first-child td,table.collection thead:first-child tr:first-child th,table.collection tbody:first-child tr:first-child th,table.collection tbody:first-child tr:first-child td{border-top:0}table.collection thead:first-child tr:first-child>th:first-child,table.collection tbody:first-child tr:first-child>td:first-child,table.collection tbody:first-child tr:first-child>th:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}table.collection thead:first-child tr:first-child>th:last-child,table.collection tbody:first-child tr:first-child>td:last-child,table.collection tbody:first-child tr:first-child>th:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}table.collection thead:last-child tr:last-child>th:first-child,table.collection tbody:last-child tr:last-child>td:first-child,table.collection tbody:last-child tr:last-child>th:first-child,table.collection tfoot:last-child tr:last-child>td:first-child,table.collection tfoot:last-child tr:last-child>th:first-child{-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px}table.collection thead:last-child tr:last-child>th:last-child,table.collection tbody:last-child tr:last-child>td:last-child,table.collection tbody:last-child tr:last-child>th:last-child,table.collection tfoot:last-child tr:last-child>td:last-child,table.collection tfoot:last-child tr:last-child>th:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px}table.collection tfoot+tbody:last-child tr:last-child td:first-child{-webkit-border-bottom-left-radius:0;border-bottom-left-radius:0;-moz-border-radius-bottomleft:0}table.collection tfoot+tbody:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:0;border-bottom-right-radius:0;-moz-border-radius-bottomright:0}table.collection caption+thead tr:first-child th:first-child,table.collection caption+tbody tr:first-child td:first-child,table.collection colgroup+thead tr:first-child th:first-child,table.collection colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}table.collection caption+thead tr:first-child th:last-child,table.collection caption+tbody tr:first-child td:last-child,table.collection colgroup+thead tr:first-child th:last-child,table.collection colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}table.collection tbody>tr:nth-child(odd)>td,table.collection tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}table.collection .name{text-align:left;vertical-align:middle}table.collection .awards{width:10%;text-align:center;vertical-align:middle}table.collection .criteria{width:40%;text-align:left;vertical-align:top}table.collection .badgeimage,table.collection .status{width:15%;text-align:center;vertical-align:middle}table.collection .description{width:25%;text-align:left}table.collection .actions{width:11em;text-align:center;vertical-align:middle}a.criteria-action{float:right;padding:0 3px}table.issuedbadgebox{width:750px;background-color:#fff}table.badgeissuedimage{width:150px;text-align:center}table.badgeissuedinfo{width:600px}table.badgeissuedinfo .bvalue{text-align:left;vertical-align:middle}table.badgeissuedinfo .bfield{width:125px;font-style:italic;text-align:left}ul.badges{margin:0;list-style:none}.badges li{position:relative;display:inline-block;width:150px;padding-bottom:2em;text-align:center;vertical-align:top}.badges li .badge-name{display:block;padding:5px}.badges li>img{position:absolute}.badges li .badge-image{top:0;left:10px;z-index:1;width:90px;height:90px}.badges li .badge-actions{position:relative}div.badge{position:relative;display:block}div.badge .expireimage{top:0;left:20px;width:100px;height:100px}.expireimage{position:absolute;top:0;left:30px;z-index:10;width:90px;height:90px;opacity:.85;filter:alpha(opacity=85)}.badge-profile{vertical-align:top}.connected{color:#468847}.notconnected{color:#b94a48}.connecting{color:#c09853}#page-badges-award .recipienttable tr td{vertical-align:top}#page-badges-award .recipienttable tr td.actions .actionbutton{width:100%;padding:.5em 0;margin:.3em 0}#page-badges-award .recipienttable tr td.existing,#page-badges-award .recipienttable tr td.potential{width:42%}.statustable{margin-bottom:0}.statusbox.active{background-color:#dff0d8}.statusbox.inactive{background-color:#fcf8e3}.activatebadge{margin:0;text-align:left;vertical-align:middle}img#persona_signin{cursor:pointer}.addcourse{float:right}.invisiblefieldset{display:inline;padding:0;margin:0;border-width:0}.breadcrumb-nav{float:left;margin-bottom:10px}.dir-rtl .breadcrumb-nav{float:right}.breadcrumb-button .singlebutton div{margin-right:0}.breadcrumb-nav .breadcrumb{margin:0}.moodle-actionmenu,.moodle-actionmenu>ul,.moodle-actionmenu>ul>li{display:inline-block}.moodle-actionmenu ul{padding:0;margin:0;list-style-type:none}.moodle-actionmenu .toggle-display,.moodle-actionmenu .menu-action-text{display:none}.jsenabled .moodle-actionmenu[data-enhance]{display:block}.jsenabled .moodle-actionmenu[data-enhance] .menu{display:none}.jsenabled .moodle-actionmenu[data-enhance] .toggle-display{display:inline;opacity:.5;filter:alpha(opacity=50)}.jsenabled .moodle-actionmenu[data-enhanced] .toggle-display{opacity:1;filter:alpha(opacity=100)}.jsenabled .moodle-actionmenu[data-enhanced] .menu-action-text{display:inline}.moodle-actionmenu[data-enhanced].show{position:relative}.moodle-actionmenu[data-enhanced].show .menu{position:absolute;z-index:1000;display:block;text-align:left;background-color:#fff;border:1px solid #ccc;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}.moodle-actionmenu[data-enhanced].show .menu a{display:block;padding:2px 1em 2px .5em;color:#333}.moodle-actionmenu[data-enhanced].show .menu a:hover,.moodle-actionmenu[data-enhanced].show .menu a:focus{color:#fff;background-color:#08c}.moodle-actionmenu[data-enhanced].show .menu a:first-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}.moodle-actionmenu[data-enhanced].show .menu a:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-moz-border-radius-bottomleft:4px}.moodle-actionmenu[data-enhanced].show .menu a.hidden{display:none}.moodle-actionmenu[data-enhanced].show .menu img{vertical-align:middle}.moodle-actionmenu[data-enhanced].show .menu .iconsmall{margin-right:8px}.moodle-actionmenu[data-enhanced].show .menu>li{display:block}.moodle-actionmenu[data-enhanced].show .menu.align-tl-bl{top:100%;left:0;margin-top:4px}.moodle-actionmenu[data-enhanced].show .menu.align-tr-bl{top:100%;right:100%}.moodle-actionmenu[data-enhanced].show .menu.align-bl-bl{bottom:100%;left:0}.moodle-actionmenu[data-enhanced].show .menu.align-br-bl{right:100%;bottom:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-br{top:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tr-br{top:100%;right:0;margin-top:4px}.moodle-actionmenu[data-enhanced].show .menu.align-bl-br{bottom:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-br-br{right:0;bottom:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-tl{top:0;left:0}.moodle-actionmenu[data-enhanced].show .menu.align-tr-tl{top:0;right:100%;margin-right:4px}.moodle-actionmenu[data-enhanced].show .menu.align-bl-tl{bottom:100%;left:0;margin-bottom:4px}.moodle-actionmenu[data-enhanced].show .menu.align-br-tl{right:100%;bottom:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-tr{top:0;left:100%;margin-left:4px}.moodle-actionmenu[data-enhanced].show .menu.align-tr-tr{top:0;right:0}.moodle-actionmenu[data-enhanced].show .menu.align-bl-tr{bottom:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-br-tr{right:0;bottom:100%;margin-bottom:4px}.action-menu-shown .moodle-actionmenu[data-enhanced] .toggle-display{background-color:#FFF}.block .moodle-actionmenu{text-align:right}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu{right:auto;left:0;text-align:right}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu .iconsmall{margin-right:0;margin-left:8px}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-bl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-bl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-bl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-bl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-br{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-br{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-br{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-br{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-tl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-tl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-tl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-tl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-tr{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-tr{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-tr{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-tr{right:auto;left:0}.dir-rtl .block .moodle-actionmenu{text-align:right}ul.dragdrop-keyboard-drag li{list-style-type:none}.block-control-actions .moodle-core-dragdrop-draghandle img{width:12px;height:12px}.formtable tbody th{font-weight:normal;text-align:right}.path-admin #assignrole{width:60%;margin-right:auto;margin-left:auto}.path-admin .admintable .leftalign{text-align:left}.environmenttable p.warn{color:#c09853;background-color:#fcf8e3}.environmenttable .error,.environmenttable span.warn,.environmenttable .ok{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.environmenttable .error:empty,.environmenttable span.warn:empty,.environmenttable .ok:empty{display:none}.environmenttable .error-important,.environmenttable span.warn-important,.environmenttable .ok-important{background-color:#b94a48}.environmenttable .error-important[href],.environmenttable span.warn-important[href],.environmenttable .ok-important[href]{background-color:#953b39}.environmenttable .error-warning,.environmenttable span.warn-warning,.environmenttable .ok-warning{background-color:#f89406}.environmenttable .error-warning[href],.environmenttable span.warn-warning[href],.environmenttable .ok-warning[href]{background-color:#c67605}.environmenttable .error-success,.environmenttable span.warn-success,.environmenttable .ok-success{background-color:#468847}.environmenttable .error-success[href],.environmenttable span.warn-success[href],.environmenttable .ok-success[href]{background-color:#356635}.environmenttable .error-info,.environmenttable span.warn-info,.environmenttable .ok-info{background-color:#3a87ad}.environmenttable .error-info[href],.environmenttable span.warn-info[href],.environmenttable .ok-info[href]{background-color:#2d6987}.environmenttable .error-inverse,.environmenttable span.warn-inverse,.environmenttable .ok-inverse{background-color:#333}.environmenttable .error-inverse[href],.environmenttable span.warn-inverse[href],.environmenttable .ok-inverse[href]{background-color:#1a1a1a}.environmenttable .error{background-color:#b94a48}.environmenttable span.warn{background-color:#f89406}.environmenttable .ok{background-color:#468847}.path-admin .admintable.environmenttable .name,.path-admin .admintable.environmenttable .info,.path-admin #assignrole .admintable .role,.path-admin #assignrole .admintable .userrole,.path-admin #assignrole .admintable .roleholder{white-space:nowrap}.path-admin .incompatibleblockstable td.c0{font-weight:bold}#page-admin-course-category .addcategory{padding:10px}#page-admin-course-index .editcourse{margin:20px auto}#page-admin-course-index .editcourse th,#page-admin-course-index .editcourse td{padding-right:10px;padding-left:10px}.timewarninghidden{display:none}.statusok,.statuswarning,.statusserious,.statuscritical{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.statusok:empty,.statuswarning:empty,.statusserious:empty,.statuscritical:empty{display:none}.statusok-important,.statuswarning-important,.statusserious-important,.statuscritical-important{background-color:#b94a48}.statusok-important[href],.statuswarning-important[href],.statusserious-important[href],.statuscritical-important[href]{background-color:#953b39}.statusok-warning,.statuswarning-warning,.statusserious-warning,.statuscritical-warning{background-color:#f89406}.statusok-warning[href],.statuswarning-warning[href],.statusserious-warning[href],.statuscritical-warning[href]{background-color:#c67605}.statusok-success,.statuswarning-success,.statusserious-success,.statuscritical-success{background-color:#468847}.statusok-success[href],.statuswarning-success[href],.statusserious-success[href],.statuscritical-success[href]{background-color:#356635}.statusok-info,.statuswarning-info,.statusserious-info,.statuscritical-info{background-color:#3a87ad}.statusok-info[href],.statuswarning-info[href],.statusserious-info[href],.statuscritical-info[href]{background-color:#2d6987}.statusok-inverse,.statuswarning-inverse,.statusserious-inverse,.statuscritical-inverse{background-color:#333}.statusok-inverse[href],.statuswarning-inverse[href],.statusserious-inverse[href],.statuscritical-inverse[href]{background-color:#1a1a1a}.statusok{background-color:#468847}.statuswarning{background-color:#c09853}.statusserious{background-color:#f89406}.statuscritical{background-color:#b94a48}#page-admin-report-capability-index #capabilitysearch{width:30em}#page-admin-report-backups-index .backup-error,#page-admin-report-backups-index .backup-unfinished{color:#b94a48}#page-admin-report-backups-index .backup-skipped,#page-admin-report-backups-index .backup-ok{color:#468847}#page-admin-report-backups-index .backup-warning{color:#c09853}#page-admin-qtypes .disabled,#page-admin-qbehaviours .disabled{color:#999}#page-admin-qtypes #qtypes div,#page-admin-qtypes #qtypes form,#page-admin-qbehaviours #qbehaviours div,#page-admin-qbehaviours #qbehaviours form{display:inline}#page-admin-qtypes #qtypes img.spacer,#page-admin-qbehaviours #qbehaviours img.spacer{width:16px}img.iconsmall{padding:.3em;margin:0}#page-admin-qbehaviours .cell.c3,#page-admin-qtypes .cell.c3{font-size:10.5px}#page-admin-lang .generalbox,#page-admin-course-index .singlebutton,#page-admin-course-index .addcategory,#page-course-index .buttons,#page-course-index-category .buttons,#page-admin-course-category .addcategory,#page-admin-stickyblocks .generalbox,#page-admin-maintenance .buttons,#page-admin-course-index .buttons,#page-admin-course-category .buttons,#page-admin-index .copyright,#page-admin-index .copyrightnotice,#page-admin-index .adminerror,#page-admin-index .availableupdatesinfo,#page-admin-index .adminerror .singlebutton,#page-admin-index .adminwarning .singlebutton,#page-admin-index #layout-table .singlebutton{margin-bottom:1em;text-align:center}.path-admin-roles .capabilitysearchui{margin-right:auto;margin-left:auto;text-align:left}#page-admin-roles-define .topfields{margin:1em 0 2em}#page-admin-roles-define .capdefault{background-color:#eee;border:1px solid #cecece}#page-filter-manage .backlink,.path-admin-roles .backlink{margin-top:1em}#page-admin-roles-explain #chooseuser h3,#page-admin-roles-usersroles .contextname{margin-top:0}#page-admin-roles-explain #chooseusersubmit{margin-top:0;text-align:center}#page-admin-roles-usersroles p{margin:0}#page-admin-roles-override .cell.c1,#page-admin-roles-assign .cell.c3,#page-admin-roles-assign .cell.c1{padding-top:.75em}#page-admin-roles-override .overridenotice,#page-admin-roles-define .definenotice{margin:1em 10% 2em 10%;text-align:left}#notice{width:60%;min-width:220px;margin:auto}#page-admin-index .releasenoteslink,#page-admin-index .adminwarning,#page-admin-index .maturitywarning,#page-admin-index .maturityinfo{width:60%;min-width:220px;padding:8px 35px 8px 14px;margin:auto;margin-bottom:20px;color:#c09853;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}#page-admin-index .maturitywarning,#page-admin-index .adminwarning.maturityinfo.maturity50{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}#page-admin-index .adminwarning.availableupdatesinfo,#page-admin-index .releasenoteslink{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo span{display:block}#page-admin-index .updateplugin div,#page-admin-plugins .updateplugin div{margin-bottom:.5em}#page-admin-index .updateplugin .updatepluginconfirmexternal,#page-admin-plugins .updateplugin .updatepluginconfirmexternal{padding:1em;background-color:#f2dede;border:1px solid #eed3d7}#page-admin-user-user_bulk #users .fgroup{white-space:nowrap}#page-admin-report-stats-index .graph{margin-bottom:1em;text-align:center}#page-admin-report-courseoverview-index .graph{margin-bottom:1em;text-align:center}#page-admin-lang .translator{border-style:solid;border-width:1px}.path-admin .roleassigntable{width:100%}.path-admin .roleassigntable td{padding:.2em .3em;vertical-align:top}.path-admin .roleassigntable p{margin:.2em 0;text-align:left}.path-admin .roleassigntable #existingcell,.path-admin .roleassigntable #potentialcell{width:42%}.path-admin .roleassigntable #existingcell p>label:first-child,.path-admin .roleassigntable #potentialcell p>label:first-child{font-weight:bold}.path-admin .roleassigntable #buttonscell{width:16%}.path-admin .roleassigntable #buttonscell #assignoptions{font-size:10.5px}.path-admin .roleassigntable #removeselect_wrapper,.path-admin .roleassigntable #addselect_wrapper{width:100%}.path-admin table.rolecap tr.rolecap th{font-weight:normal;text-align:left}.path-admin.dir-rtl table.rolecap tr.rolecap th{text-align:right}.path-admin .rolecap .hiddenrow{display:none}.path-admin #defineroletable .rolecap .inherit,.path-admin #defineroletable .rolecap .allow,.path-admin #defineroletable .rolecap .prevent,.path-admin #defineroletable .rolecap .prohibit{min-width:3.5em;padding:0;text-align:center}.path-admin .rolecap .cap-name,.path-admin .rolecap .note{display:block;font-size:10.5px;font-weight:normal;white-space:nowrap}.path-admin .rolecap label{display:block;padding:.5em;margin:0;text-align:center}.plugincheckwrapper{width:100%}.environmentbox{margin-top:1em}#mnetconfig table{margin-right:auto;margin-left:auto}.environmenttable .cell{padding:.15em .5em}.environmenttable img.iconhelp{padding-right:.3em}.dir-rtl .environmenttable img.iconhelp{padding-right:0;padding-left:.3em}#trustedhosts .generaltable{width:500px;margin-right:auto;margin-left:auto}#trustedhosts .standard{width:auto}#adminsettings legend{display:none}#adminsettings fieldset.error{margin:.2em 0 .5em 0}#adminsettings fieldset.error legend{display:block}.dir-rtl #admin-spelllanguagelist textarea,#page-admin-setting-editorsettingstinymce.dir-rtl .form-textarea textarea{text-align:left;direction:ltr}.adminsettingsflags{float:right}.dir-rtl .adminsettingsflags{float:left}.adminsettingsflags label{margin-right:7px}.dir-rtl .adminsettingsflags label{margin-left:7px}.form-description{clear:right}.dir-rtl .form-description{clear:left}.form-item .form-setting .form-htmlarea{display:inline;width:640px}.form-item .form-setting .form-htmlarea .htmlarea{display:block;width:640px}.form-item .form-setting .form-multicheckbox ul{padding:0;margin:7px 0 0 0;list-style:none}.form-item .form-setting .defaultsnext{display:inline;margin-right:.5em}.dir-rtl .form-item .form-setting .defaultsnext{margin-right:0;margin-left:.5em}.form-item .form-setting .locked-checkbox{display:inline;margin-right:.2em;margin-left:.5em}.dir-rtl .form-item .form-setting .locked-checkbox{display:inline;margin-right:.5em;margin-left:.2em}.form-item .form-setting .form-password .unmask,.form-item .form-setting .form-defaultinfo{display:inline-block}.form-item .pathok,.form-item .patherror{margin-left:.5em}#admin-devicedetectregex table{border:0}#admin-emoticons td input{width:8em}#admin-emoticons td.c0 input{width:4em}#adminthemeselector .selectedtheme td.c0{border:1px solid;border-right-width:0}#adminthemeselector .selectedtheme td.c1{border:1px solid;border-left-width:0}.admin_colourpicker,.admin_colourpicker_preview{display:none}.jsenabled .admin_colourpicker_preview{display:inline}.jsenabled .admin_colourpicker{display:block;width:410px;height:102px;margin-bottom:10px}.admin_colourpicker .loadingicon{margin-left:auto;vertical-align:middle}.admin_colourpicker .colourdialogue{float:left;border:1px solid #000}.admin_colourpicker .previewcolour{margin-left:301px;border:1px solid #000}.admin_colourpicker .currentcolour{margin-left:301px;border:1px solid #000;border-top-width:0}.dir-rtl .form-item .form-setting,.dir-rtl .form-item .form-label,.dir-rtl .form-item .form-description,.dir-rtl.path-admin .roleassigntable p{text-align:right}#page-admin-index #notice .checkforupdates{text-align:center}#plugins-check-info{margin:1em;text-align:center}#plugins-check .displayname .pluginicon{width:16px}#plugins-check .status-new .status{background-color:#dff0d8}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity200 .info.release,#plugins-check .status-upgrade .status,#plugins-check .status-delete .status{background-color:#d9edf7}#plugins-control-panel .extension .source,#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity100 .info.release,#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity150 .info.release,.pluginupdateinfo.maturity100,.pluginupdateinfo.maturity150,#plugins-check .extension .source{background-color:#fcf8e3}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity50 .info.release,.pluginupdateinfo.maturity50,#plugins-check .requires-failed,#plugins-check .missingfromdisk .displayname,#plugins-check .status-missing .status,#plugins-check .status-downgrade .status{background-color:#f2dede}#plugins-control-panel .statusmsg{padding:3px;background-color:#eee;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}#plugins-control-panel .status-missing .pluginname{background-color:#f2dede}#plugins-control-panel .status-missing .statusmsg{color:#b94a48}#plugins-control-panel .status-new .pluginname{background-color:#dff0d8}#plugins-control-panel .status-new .statusmsg{color:#468847}#plugins-control-panel .disabled .availability{background-color:#eee}#plugins-check .standard .source,#plugins-check .status-nodb .status,#plugins-check .status-uptodate .status,#plugins-check .requires-ok{color:#999}#plugins-check .requires ul{margin:0;font-size:10.5px}#plugins-check .status .pluginupdateinfo{padding:5px 10px;margin:10px;background-color:#d9edf7;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}#plugins-check .status .pluginupdateinfo span,#plugins-check .status .pluginupdateinfo a{padding-right:1em}#page-admin-index .upgradepluginsinfo{text-align:center}#page-admin-plugins .checkforupdates{margin:0 auto 1em;text-align:center}#plugins-control-panel .requiredby,#plugins-control-panel .pluginname .componentname{font-size:11.9px;color:#999}#plugins-control-panel .pluginname .componentname{margin-left:22px}#plugins-overview-filter .filter-item,#plugins-overview-panel .info{padding:0 10px}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo .separator,#plugins-check .status .pluginupdateinfo .separator,#page-admin-plugins .separator{border-left:1px dotted #999}#plugins-control-panel .msg td{text-align:center}#plugins-overview-filter,#plugins-overview-panel{margin:1em auto;text-align:center}#plugins-overview-panel .info.updatable{margin-left:10px;font-weight:bold;background-color:#d9edf7;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}#plugins-overview-filter .filter-item.active{font-weight:bold}#plugins-control-panel .displayname img.icon{padding-top:0;padding-bottom:0}#plugins-control-panel .uninstall a{color:#b94a48}#plugins-control-panel .notes .pluginupdateinfo{padding:5px 10px;margin:10px;background-color:#d9edf7;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}#plugins-control-panel .notes .pluginupdateinfo span,#plugins-control-panel .notes .pluginupdateinfo a{padding-right:1em}.dir-rtl #plugins-check .pluginupdateinfo{text-align:center;direction:ltr}.dir-rtl #plugins-check .rootdir,.dir-rtl #plugins-check .requires-ok{text-align:left;direction:ltr}#page-admin-mnet-peers .box.deletedhosts{margin-bottom:1em;font-size:11.9px}#page-admin-mnet-peers .mform .certdetails{background-color:white}#page-admin-mnet-peers .mform .deletedhostinfo{padding:4px;margin-bottom:5px;background-color:#f2dede;border:2px solid #eed3d7}#core-cache-plugin-summaries table,#core-cache-store-summaries table{width:100%}#core-cache-lock-summary table,#core-cache-definition-summaries table,#core-cache-mode-mappings table{margin:0 auto}#core-cache-store-summaries .default-store td{font-style:italic;color:#333}#core-cache-rescan-definitions,#core-cache-mode-mappings .edit-link,#core-cache-lock-summary .new-instance{margin-top:.5em;text-align:center}.tinymcesubplugins img.icon{padding-top:0;padding-bottom:0}#page-admin-roles-assign div.box.generalbox{padding:8px 35px 8px 14px;margin-bottom:20px;color:#c09853;color:#b94a48;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;background-color:#f2dede;border:1px solid #fbeed5;border-color:#eed3d7;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.calendartable{width:100%}.calendartable th,.calendartable td{width:14%;text-align:center;vertical-align:top;border:0}.calendar_event_course{background-color:#ffd3bd}.calendar_event_global{background-color:#d6f8cd}.calendar_event_group{background-color:#fee7ae}.calendar_event_user{background-color:#dce7ec}.path-calendar .calendar-controls .previous,.path-calendar .calendar-controls .next,.path-calendar .calendar-controls .current{display:block;float:left;width:12%}.path-calendar .calendar-controls .previous{text-align:left}.path-calendar .calendar-controls .current{width:76%;text-align:center}.path-calendar .calendar-controls .next{text-align:right}.path-calendar .maincalendar{padding:0;vertical-align:top}.path-calendar .maincalendar .bottom{padding:5px 0 0 0;text-align:center}.path-calendar .maincalendar .heightcontainer{position:relative;height:100%}.path-calendar .maincalendar .calendarmonth{width:98%;margin:10px auto}.path-calendar .maincalendar .calendarmonth ul{margin:0}.path-calendar .maincalendar .calendarmonth ul li{margin-top:4px;list-style-type:none}.path-calendar .maincalendar .calendarmonth td{height:5em}.path-calendar .maincalendar .calendar-controls .previous,.path-calendar .maincalendar .calendar-controls .next{width:30%}.path-calendar .maincalendar .calendar-controls .current{width:39.95%}.path-calendar .maincalendar .controls{width:98%;margin:10px auto}.path-calendar .maincalendar .eventlist .event{width:100%;margin-bottom:10px;border-collapse:separate;border-spacing:0;border-style:solid;border-width:1px}.path-calendar .maincalendar .eventlist .event .topic .name{float:left}.dir-rtl.path-calendar .maincalendar .eventlist .event .topic .name,.path-calendar .maincalendar .eventlist .event .topic .date{float:right}.dir-rtl.path-calendar .maincalendar .eventlist .event .topic .date{float:left}.path-calendar .maincalendar .eventlist .event .subscription,.path-calendar .maincalendar .eventlist .event .course{float:left;clear:left}.dir-rtl.path-calendar .maincalendar .eventlist .event .subscription,.dir-rtl.path-calendar .maincalendar .eventlist .event .course{float:right;clear:right}.path-calendar .maincalendar .eventlist .event .side{width:32px}.path-calendar .maincalendar .eventlist .event .commands a{margin:0 3px}.path-calendar .maincalendar .header{overflow:hidden}.path-calendar .maincalendar .header .buttons{float:right}.dir-rtl.path-calendar .maincalendar .header .buttons{float:left}.path-calendar .filters table{width:100%;border-collapse:separate;border-spacing:2px}#page-calendar-export .indent{padding-left:20px}.path-calendar .cal_courses_flt label{margin-right:.45em}.dir-rtl.path-calendar .cal_courses_flt label{margin-right:0;margin-left:.45em}.block .minicalendar th,.block .minicalendar td{padding:2px;font-size:.8em}.block .minicalendar{max-width:280px;margin-right:auto;margin-left:auto}.block .minicalendar td.weekend{color:#A00}.block .calendar-controls .previous{display:block;float:left;width:12%;text-align:left}.block .calendar-controls .current{display:block;float:left;width:76%;text-align:center}.block .calendar-controls .next{display:block;float:left;width:12%;text-align:right}.block .calendar_filters ul{margin:0;list-style:none}.block .calendar_filters li{margin-bottom:.2em}.block .calendar_filters li span img{padding:0 .2em}.block .calendar_filters .eventname{padding-left:.2em}.dir-rtl .block .calendar_filters .eventname{padding-right:.2em;padding-left:0}.block .content h3.eventskey{margin-top:.5em}@media(min-width:768px){#page-calender-view .container fluid{min-width:1024px}}.section_add_menus{text-align:right}.dir-rtl .section_add_menus{text-align:left}.section_add_menus .horizontal div,.section_add_menus .horizontal form{display:inline}.section_add_menus optgroup{font-style:italic;font-weight:normal}.section_add_menus .urlselect{margin-left:.4em}.dir-rtl .section_add_menus .urlselect{margin-right:.4em;margin-left:0}.section_add_menus .urlselect select{margin-left:.2em}.dir-rtl .section_add_menus .urlselect select{margin-right:.2em;margin-left:0}.section_add_menus .urlselect img.iconhelp{padding:0;margin:0;vertical-align:text-bottom}.site-topic ul.section,.course-content ul.section{margin:1em}.section .activity img.activityicon{margin-right:6px}.dir-rtl .section .activity img.activityicon{margin-right:0;margin-left:6px}.section .activity .activityinstance,.section .activity .activityinstance div{display:inline-block}.editing .section .activity .activityinstance{min-width:40%}.section .activity .activityinstance>a{display:block}.editing_show+.editing_assign,.editing_hide+.editing_assign{margin-left:20px}.section .activity .commands{display:inline;white-space:nowrap}.section .activity.modtype_label .commands{padding-left:22px;margin-left:40%}.section .activity.modtype_label.label{font-weight:normal}.section li.activity{padding:.2em;clear:both}.section .activity .activityinstance .groupinglabel{padding-left:30px}.dir-rtl .section .activity .activityinstance .groupinglabel{padding-right:30px}.section .activity .availabilityinfo,.section .activity .contentafterlink{margin-top:.5em;margin-left:30px}.dir-rtl .section .activity .availabilityinfo,.dir-rtl .section .activity .contentafterlink{margin-right:30px;margin-left:0}.section .activity .contentafterlink p{margin:.5em 0}.editing .section .activity:hover,.editing .section .activity.action-menu-shown{background-color:#eee}.course-content .current{background-color:#d9edf7}.course-content .section-summary{margin-top:5px;list-style:none;border:1px solid #DDD}.course-content .section-summary .section-title{margin:2px 5px 10px 5px}.course-content .section-summary .summarytext{margin:2px 5px 2px 5px}.course-content .section-summary .section-summary-activities .activity-count{display:inline-block;margin:3px;font-size:11.9px;color:#999;white-space:nowrap}.course-content .section-summary .summary{margin-top:5px}.course-content .single-section{margin-top:1em}.course-content .single-section .section-navigation{display:block;padding:.5em;margin-bottom:-0.5em}.course-content .single-section .section-navigation .title{clear:both;font-size:108%;font-weight:bold}.course-content .single-section .section-navigation .mdl-left{float:left;margin-right:1em;font-weight:normal}.dir-rtl .course-content .single-section .section-navigation .mdl-left{float:right}.course-content .single-section .section-navigation .mdl-left .larrow{margin-right:.1em}.course-content .single-section .section-navigation .mdl-right{float:right;margin-left:1em;font-weight:normal}.dir-rtl .course-content .single-section .section-navigation .mdl-right{float:left}.course-content .single-section .section-navigation .mdl-right .rarrow{margin-left:.1em}.course-content .single-section .section-navigation .mdl-bottom{margin-top:0}.course-content ul li.section.main{margin-top:0;border-bottom:2px solid #eee}.course-content ul li.section.hidden{opacity:.5}.course-content ul.topics li.section .content,.course-content ul.weeks li.section .content{padding:0;margin-right:20px;margin-left:20px}.course-content{margin-top:0}.course-content ul.topics li.section{padding-bottom:20px}.course-content ul.topics li.section .summary{margin-left:25px}.path-course-view .completionprogress{margin-left:25px}.path-course-view .completionprogress{position:relative;z-index:1000;display:block;float:right;height:20px}#page-site-index .subscribelink{text-align:right}#page-site-index .headingblock{margin-bottom:9px}.path-course-view a.reduce-sections{padding-left:.2em}.path-course-view .headingblock{margin-bottom:9px}.path-course-view .subscribelink{text-align:right}.path-course-view .unread{margin-left:30px}.dir-rtl.path-course-view .unread{margin-right:30px}.path-course-view .block.drag .header{cursor:move}.path-course-view .completionprogress{text-align:right}.dir-rtl.path-course-view .completionprogress{text-align:left}.path-course-view .single-section .completionprogress{margin-right:5px}.path-course-view .section .summary{line-height:normal}.path-site li.activity>div,.path-course-view li.activity>div{position:relative}.path-course-view li.activity span.autocompletion,.path-course-view li.activity form.togglecompletion{float:right}.path-course-view li.activity form.togglecompletion .ajaxworking{width:16px;height:16px;background:url([[pix:i/ajaxloader]]) no-repeat}.dir-rtl.path-course-view li.activity form.togglecompletion,.dir-rtl.path-course-view li.activity span.autocompletion{float:left}.dir-rtl.path-course-view .completionprogress{float:none}.dir-rtl.path-course-view li.activity form.togglecompletion .ajaxworking{right:-22px}li.section.hidden span.commands a.editing_hide,li.section.hidden span.commands a.editing_show{cursor:default}ul.weeks h3.sectionname{white-space:nowrap}.editing ul.weeks h3.sectionname{white-space:normal}.single-section h3.sectionname{clear:both;text-align:center}.section img.movetarget{width:80px;height:16px}input.titleeditor{width:330px;vertical-align:text-bottom}span.editinstructions{position:absolute;top:0;left:0;z-index:9999;padding:.1em .4em;margin-top:-22px;margin-left:30px;font-size:11.9px;line-height:16px;color:#3a87ad;text-decoration:none;background-color:#d9edf7;border:1px solid #bce8f1;-webkit-box-shadow:2px 2px 5px 1px #ccc;-moz-box-shadow:2px 2px 5px 1px #ccc;box-shadow:2px 2px 5px 1px #ccc}.dir-rtl span.editinstructions{right:32px;left:auto}#dndupload-status{position:absolute;z-index:9999;z-index:0;width:40%;padding:6px;margin:0 30%;color:#3a87ad;text-align:center;background:#d9edf7;border:1px solid #bce8f1;-webkit-border-bottom-right-radius:8px;border-bottom-right-radius:8px;-webkit-border-bottom-left-radius:8px;border-bottom-left-radius:8px;-moz-border-radius-bottomright:8px;-moz-border-radius-bottomleft:8px;-webkit-box-shadow:2px 2px 5px 1px #ccc;-moz-box-shadow:2px 2px 5px 1px #ccc;box-shadow:2px 2px 5px 1px #ccc}.dndupload-preview{padding:.3em;margin-top:.2em;color:#909090;list-style:none;border:1px dashed #909090}.dndupload-preview img.icon{padding:0;vertical-align:text-bottom}.dndupload-progress-outer{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#fff9f9f9',GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.dndupload-progress-inner{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf',endColorstr='#ff0480be',GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.dndupload-hidden{display:none}#page-course-pending .singlebutton,#page-course-index .singlebutton,#page-course-index-category .singlebutton,#page-course-editsection .singlebutton{text-align:center}#page-admin-course-manage #movecourses td img{margin:0 .22em;vertical-align:text-bottom}#page-admin-course-manage #movecourses td img.icon{padding:0}#coursesearch{margin-top:1em;text-align:center}#page-course-pending .pendingcourserequests{margin-bottom:1em}#page-course-pending .pendingcourserequests .singlebutton{display:inline}#page-course-pending .pendingcourserequests .cell{padding:0 5px}#page-course-pending .pendingcourserequests .cell.c6{white-space:nowrap}.coursebox{padding:5px;margin-bottom:15px;border:1px dotted #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.coursebox>.info>.name a{display:block;padding-left:21px;background-image:url([[pix:moodle|i/course]]);background-position:center left;background-repeat:no-repeat}.coursebox.remotehost>.info>.name a{background-image:url([[pix:moodle|i/mnethost]])}.coursebox>.info>.name,.coursebox .content .teachers,.coursebox .content .courseimage,.coursebox .content .coursefile{float:left;width:40%;clear:left}.coursebox>.info>h3.name{margin:5px}.coursebox>.info>.name{padding:0;margin:5px}.coursebox .content .teachers li{padding:0;margin:0;list-style-type:none}.coursebox .enrolmenticons{float:right;padding:3px 0}.coursebox .moreinfo{float:right;padding:3px 0}.coursebox .enrolmenticons img,.coursebox .moreinfo img{margin:0 .2em}.coursebox .content{clear:both}.coursebox .content .summary,.coursebox .content .coursecat{float:right;width:55%}.coursebox .content .coursecat{clear:right;text-align:right}.coursebox.remotecoursebox .remotecourseinfo{float:left;width:40%}.coursebox .content .courseimage img{max-width:100px;max-height:100px}.coursebox .content .coursecat,.coursebox .content .summary,.coursebox .content .courseimage,.coursebox .content .coursefile,.coursebox .content .teachers,.coursebox.remotecoursebox .remotecourseinfo{padding:0;margin:3px 5px}.dir-rtl .coursebox>.info>.name a{padding-right:21px;padding-left:0;background-position:center right}.dir-rtl .coursebox>.info>.name,.dir-rtl .coursebox .teachers,.dir-rtl .coursebox .content .courseimage,.dir-rtl .coursebox .content .coursefile{float:right;clear:right}.dir-rtl .coursebox .enrolmenticons,.dir-rtl .coursebox .moreinfo{float:left}.dir-rtl .coursebox .summary,.dir-rtl .coursebox .coursecat{float:left}.dir-rtl .coursebox .coursecat{clear:left;text-align:left}.coursebox.collapsed{margin-bottom:0}.coursebox.collapsed>.content{display:none}.courses .coursebox.collapsed{padding:3px 0;border:1px solid #eee}.courses .coursebox.even{background-color:#f6f6f6}.courses .coursebox:hover,.course_category_tree .courses>.paging.paging-morelink:hover{background-color:#eee}.course_category_tree .category .numberofcourse{font-size:11.9px}.course_category_tree .controls{visibility:hidden}.course_category_tree .controls div{display:inline;cursor:pointer}.jsenabled .course_category_tree .controls{visibility:visible}.course_category_tree .controls{float:right;margin-bottom:5px;text-align:right}.course_category_tree .controls div{padding-right:2em;font-size:75%}.course_category_tree .category>.info .name{padding:2px 18px;margin:3px;background-image:url([[pix:moodle|t/collapsed_empty]]);background-position:center left;background-repeat:no-repeat}.dir-rtl .course_category_tree .category>.info .name{background-image:url([[pix:moodle|t/collapsed_empty_rtl]]);background-position:center right}.course_category_tree .category.with_children>.info .name{background-image:url([[pix:moodle|t/expanded]])}.course_category_tree .category.with_children.collapsed>.info .name{background-image:url([[pix:moodle|t/collapsed]])}.dir-rtl .course_category_tree .category.with_children.collapsed>.info .name{background-image:url([[pix:moodle|t/collapsed_rtl]])}.course_category_tree .category.collapsed>.content{display:none}.course_category_tree .category>.info{min-height:20px;min-height:0;padding:19px;padding:0;margin:3px 0;margin-bottom:20px;margin-bottom:3px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.course_category_tree .category>.info blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.course_category_tree.frontpage-category-names .category>.info{margin:0;background:0;border:0}.course_category_tree .category>.content{padding-left:16px}.dir-rtl .course_category_tree .category>.content{padding-right:16px;padding-left:0}.course_category_tree .subcategories>.paging,.courses>.paging{padding:5px;margin:0;text-align:center}.courses>.paging.paging-morelink,.course_category_tree .subcategories>.paging.paging-morelink{text-align:left}.course_category_tree .paging.paging-morelink a{font-size:11.9px}.dir-rtl .courses>.paging.paging-morelink,.dir-rtl .course_category_tree .paging.paging-morelink{text-align:right}#page-course-index-category .generalbox.info{padding:5px;margin-bottom:15px;border:1px dotted #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}#page-course-index-category .categorypicker{margin:10px 0 20px;text-align:center}.section .activity .moodle-actionmenu .iconsmall{width:16px;width:1rem;height:16px;height:1rem;max-width:none!important;padding:.3em}.filemanager,.filepicker,.file-picker{font-size:11px}.filemanager a,.file-picker a,.filemanager a:hover,.file-picker a:hover{color:#555;text-decoration:none}.filemanager input[type="text"],.file-picker input[type="text"]{width:265px}.filemanager .fp-license td,.file-picker .fp-setlicense td{max-width:265px}.filemanager .fp-license select,.file-picker .fp-setlicense select{max-width:100%}.fp-content-center{display:table-cell;width:100%;height:100%;vertical-align:middle}.fp-content-hidden{visibility:hidden}.yui3-panel-focused{outline:0}#filesskin .yui3-panel-content{display:inline-block;*display:inline;padding-bottom:20px;background:#f2f2f2;border:1px solid #fff;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;*zoom:1;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}#filesskin .yui3-widget-hd{padding:5px;font-size:12px;letter-spacing:1px;color:#333;text-align:center;text-shadow:1px 1px 1px #fff;background-color:#ebebeb;background-image:-moz-linear-gradient(top,#fff,#ccc);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#ccc));background-image:-webkit-linear-gradient(top,#fff,#ccc);background-image:-o-linear-gradient(top,#fff,#ccc);background-image:linear-gradient(to bottom,#fff,#ccc);background-repeat:repeat-x;border-bottom:1px solid #bbb;-webkit-border-radius:10px 10px 0 0;-moz-border-radius:10px 10px 0 0;border-radius:10px 10px 0 0;filter:dropshadow(color=#ffffff,offx=1,offy=1);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffcccccc',GradientType=0)}.fp-panel-button{display:inline-block;*display:inline;padding:3px 20px 2px 20px;margin:10px;text-align:center;background:#fff;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;*zoom:1;-webkit-box-shadow:2px 2px 3px .1px #999;-moz-box-shadow:2px 2px 3px .1px #999;box-shadow:2px 2px 3px .1px #999}.filepicker .moodle-dialogue-wrap .moodle-dialogue-bd{padding:0}#filesskin .file-picker.fp-generallayout{position:relative;width:859px;background:#fff;border:1px solid #ccc;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.file-picker .fp-repo-area{display:inline-block;*display:inline;float:left;width:180px;height:525px;overflow:auto;border-right:1px solid #bbb;*zoom:1}.dir-rtl .file-picker .fp-repo-area{float:right;border-right:0;border-left:1px solid #bbb}.file-picker .fp-repo-items{float:left;width:693px}.dir-rtl .file-picker .fp-repo-items{float:right}.file-picker .fp-navbar{min-height:22px;padding:5px 8px;background:#f2f2f2;border-bottom:1px solid #bbb}.file-picker .fp-content{height:468px;overflow:auto;clear:both;background:#fff}.filepicker.moodle-dialogue-fullscreen .file-picker .fp-content{width:100%;height:100%}.dir-rtl .file-picker .fp-repo-items{margin-right:181px}.file-picker .fp-content-loading{display:table;width:100%;height:100%;text-align:center}.file-picker .fp-content .fp-object-container{width:98%;height:98%}.dir-rtl .file-picker .fp-list{text-align:right}.dir-rtl .file-picker .fp-toolbar{padding:0}.dir-rtl .file-picker .fp-list{text-align:right}.dir-rtl .file-picker .fp-repo-name{display:inline}.dir-rtl .file-picker .fp-pathbar{display:block;text-align:right;border-top:0}.dir-rtl .file-picker div.bd{text-align:right}.dir-rtl #filemenu .yuimenuitemlabel{text-align:right}.dir-rtl .filepicker .yui-layout-unit-left{left:500px}.dir-rtl .filepicker .yui-layout-unit-center{left:0}.dir-rtl .filemanager-toolbar a{padding:0}.file-picker .fp-list{float:left;width:100%;padding:0;margin:0;list-style-type:none}.dir-rtl .file-picker .fp-list{float:left;text-align:right}.file-picker .fp-list .fp-repo a{display:block;padding:.5em .7em}.file-picker .fp-list .fp-repo.active{background:#f2f2f2}.file-picker .fp-list .fp-repo-icon{padding:0 7px 0 5px}.fp-toolbar{display:table-row;float:left;max-width:70%;line-height:22px}.dir-rtl .fp-toolbar{float:right}.fp-toolbar.empty{display:none}.fp-toolbar .disabled{display:none}.fp-toolbar div{display:inline-block;*display:inline;padding:0 2px;padding-right:10px;*zoom:1}.dir-rtl .fp-toolbar div{width:100px;padding-right:0}.fp-toolbar img{margin-right:5px;vertical-align:-15%}.fp-toolbar .fp-tb-search{width:228px;height:14px}.fp-toolbar .fp-tb-search input{width:200px;height:16px;padding:2px 6px 1px 20px;background:#fff url('[[pix:a/search]]') no-repeat 3px 3px;border:1px solid #bbb}.fp-viewbar{float:right;width:69px;height:22px;margin-right:8px}.dir-rtl .fp-toolbar img{vertical-align:-35%}.dir-rtl .fp-viewbar{float:left;width:100px}.fp-vb-icons{display:inline-block;*display:inline;width:22px;height:22px;background:url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0;*zoom:1}.dir-rtl .fp-vb-icons{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0}.fp-vb-icons.checked{background:url('[[pix:theme|fp/view_icon_selected]]')}.dir-rtl .fp-vb-icons.checked{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_icon_selected]]')}.fp-viewbar.disabled .fp-vb-icons{background:url('[[pix:theme|fp/view_icon_inactive]]')}.fp-vb-details{display:inline-block;*display:inline;width:23px;height:22px;margin-left:-4px;background:url('[[pix:theme|fp/view_list_active]]') no-repeat 0 0;*zoom:1}.dir-rtl .fp-vb-details{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_list_active]]') no-repeat 0 0}.fp-vb-details.checked{background:url('[[pix:theme|fp/view_list_selected]]')}.dir-rtl .fp-vb-details.checked{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_list_selected]]')}.fp-viewbar.disabled .fp-vb-details{background:url('[[pix:theme|fp/view_list_inactive]]')}.fp-vb-tree{display:inline-block;*display:inline;width:23px;height:22px;margin-left:-4px;background:url('[[pix:theme|fp/view_tree_active]]') no-repeat 0 0;*zoom:1}.dir-rtl .fp-vb-tree{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_tree_active]]') no-repeat 0 0}.fp-vb-tree.checked{background:url('[[pix:theme|fp/view_tree_selected]]')}.dir-rtl .fp-vb-tree.checked{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_tree_selected]]')}.fp-viewbar.disabled .fp-vb-tree{background:url('[[pix:theme|fp/view_tree_inactive]]')}.file-picker .fp-clear-left{clear:left}.dir-rtl .filemanager-toolbar .fp-vb-icons a:hover{background:url('[[pix:theme|fp/view_icon_selected]]')}.dir-rtl .filemanager-toolbar .fp-vb-icons.checked a:hover{background:url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0}.dir-rtl .fp-vb-details a:hover{background:0;border:20px solid black}.dir-rtl .fp-vb-details.checked a:hover{background:0;border:40px solid black}.dir-rtl .fp-vb-tree a:hover{background:0;border:30px solid black}.dir-rtl .fp-vb-tree.checked a:hover{background:0;border:50px solid black}.file-picker .fp-pathbar{display:table-row}.fp-pathbar.empty{display:none}.fp-pathbar .fp-path-folder{width:27px;height:12px;margin-left:4px;background:url('[[pix:theme|fp/path_folder]]') no-repeat 0 0}.dir-rtl .fp-pathbar .fp-path-folder{width:auto;height:12px;margin-left:4px;background:url('[[pix:theme|fp/path_folder_rtl]]') no-repeat right top}.dir-rtl .fp-pathbar span{display:inline-block;*display:inline;float:right;margin-left:32px;*zoom:1}.fp-pathbar .fp-path-folder-name{margin-left:32px;line-height:20px}.dir-rtl .fp-pathbar .fp-path-folder-name{margin-right:32px;line-height:20px}.fp-iconview .fp-file{position:relative;float:left;margin:10px 10px 35px;text-align:center}.fp-iconview .fp-thumbnail{display:block;min-width:110px;min-height:110px;line-height:110px;text-align:center;border:1px solid #fff}.fp-iconview .fp-thumbnail img{padding:3px;vertical-align:middle;border:1px solid #ddd;-webkit-box-shadow:1px 1px 2px 0 #ccc;-moz-box-shadow:1px 1px 2px 0 #ccc;box-shadow:1px 1px 2px 0 #ccc}.fp-iconview .fp-thumbnail:hover{background:#fff;border:1px solid #ddd;-webkit-box-shadow:inset 0 0 10px 0 #ccc;-moz-box-shadow:inset 0 0 10px 0 #ccc;box-shadow:inset 0 0 10px 0 #ccc}.fp-iconview .fp-filename-field{position:absolute;height:33px;overflow:hidden;word-wrap:break-word}.fp-iconview .fp-filename-field:hover{z-index:1000;overflow:visible}.fp-iconview .fp-filename-field .fp-filename{min-width:112px;padding-top:5px;padding-bottom:12px;background:#fff}.dir-rtl .fp-iconview .fp-file{float:right}.file-picker .yui3-datatable table{width:100%;border:0 solid #bbb}#filesskin .file-picker .yui3-datatable-header{color:#555;background:#fff;border-bottom:1px solid #ccc;border-left:0 solid #fff}#filesskin .file-picker .yui3-datatable-odd .yui3-datatable-cell{background-color:#f6f6f6;border-left:0 solid #f6f6f6}#filesskin .file-picker .yui3-datatable-even .yui3-datatable-cell{background-color:#fff;border-left:0 solid #fff}.dir-rtl .file-picker .yui3-datatable-header{text-align:right}.file-picker .ygtvtn,.filemanager .ygtvtn{width:17px;height:22px;background:url('[[pix:moodle|y/tn]]') 0 0 no-repeat}.dir-rtl .filemanager .ygtvtn,.dir-rtl .file-picker .ygtvtn{width:17px;height:22px;background:url('[[pix:moodle|y/tn_rtl]]') 0 0 no-repeat}.file-picker .ygtvtm,.filemanager .ygtvtm{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/tm]]') 0 10px no-repeat}.file-picker .ygtvtmh,.filemanager .ygtvtmh{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/tm]]') 0 10px no-repeat}.file-picker .ygtvtp,.filemanager .ygtvtp{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/tp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvtp,.dir-rtl .filemanager .ygtvtp{background:url('[[pix:moodle|y/tp_rtl]]') 0 10px no-repeat}.file-picker .ygtvtph,.filemanager .ygtvtph{width:13px;height:22px;cursor:pointer;background:url('[[pix:moodle|y/tp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvtph,.dir-rtl .filemanager .ygtvtph{background:url('[[pix:moodle|y/tp_rtl]]') 0 10px no-repeat}.file-picker .ygtvln,.filemanager .ygtvln{width:17px;height:22px;background:url('[[pix:moodle|y/ln]]') 0 0 no-repeat}.dir-rtl .file-picker .ygtvln,.dir-rtl .filemanager .ygtvln{background:url('[[pix:moodle|y/ln_rtl]]') 0 0 no-repeat}.file-picker .ygtvlm,.filemanager .ygtvlm{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lm]]') 0 10px no-repeat}.file-picker .ygtvlmh,.filemanager .ygtvlmh{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lm]]') 0 10px no-repeat}.file-picker .ygtvlp,.filemanager .ygtvlp{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvlp,.dir-rtl .filemanager .ygtvlp{background:url('[[pix:moodle|y/lp_rtl]]') 0 10px no-repeat}.file-picker .ygtvlph,.filemanager .ygtvlph{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvlph,.dir-rtl .filemanager .ygtvlph{background:url('[[pix:moodle|y/lp_rtl]]') 0 10px no-repeat}.file-picker .ygtvloading,.filemanager .ygtvloading{width:16px;height:22px;background:transparent url('[[pix:moodle|y/loading]]') 0 0 no-repeat}.file-picker .ygtvdepthcell,.filemanager .ygtvdepthcell{width:17px;height:32px;background:url('[[pix:moodle|y/vline]]') 0 0 no-repeat}.file-picker .ygtvblankdepthcell,.filemanager .ygtvblankdepthcell{width:17px;height:22px}a.ygtvspacer:hover{color:transparent;text-decoration:none}.ygtvlabel,.ygtvlabel:link,.ygtvlabel:visited,.ygtvlabel:hover{margin-left:2px;text-decoration:none;cursor:pointer;background-color:transparent}.file-picker .ygtvfocus,.filemanager .ygtvfocus{background-color:#eee}.fp-filename-icon{position:relative;display:block;margin-top:10px}.fp-icon{float:left;width:24px;height:24px;margin-top:-7px;margin-right:10px;line-height:24px;text-align:center}.dir-rtl .fp-icon{float:right;margin-right:0;margin-left:10px}.fp-icon img{max-width:24px;max-height:24px;vertical-align:middle}.fp-filename{padding-right:10px}.dir-rtl .fp-filename{padding-right:0;padding-left:10px}.file-picker .fp-login-form{display:table;width:100%;height:100%}.file-picker .fp-login-form table{margin:0 auto}.file-picker .fp-login-form p{margin-top:3em;text-align:center}.file-picker .fp-login-form .fp-login-input label{display:block;text-align:right}.file-picker .fp-login-form .fp-login-input .input{text-align:left}.file-picker .fp-login-form input[type="checkbox"]{width:15px;height:15px}.file-picker .fp-upload-form{display:table;width:100%;height:100%}.file-picker .fp-upload-form table{margin:0 auto}.file-picker.fp-dlg{text-align:center}.file-picker.fp-dlg .fp-dlg-text{padding:30px 20px 10px;font-size:12px}.file-picker.fp-dlg .fp-dlg-buttons{margin:0 20px}.file-picker.fp-msg{text-align:center}.file-picker.fp-msg .fp-msg-text{max-width:500px;max-height:300px;min-width:200px;padding:40px 20px 10px 20px;overflow:auto;font-size:12px}.file-picker.fp-msg.fp-msg-error .fp-msg-text{padding:40px 20px 10px 20px;font-size:12px}.file-picker .fp-content-error{display:table;width:100%;height:100%;text-align:center}.file-picker .fp-content-error .fp-error{display:table-cell;width:100%;height:100%;padding:40px 20px 10px 20px;font-size:12px;vertical-align:middle}.file-picker .fp-nextpage{clear:both}.file-picker .fp-nextpage .fp-nextpage-loading{display:none}.file-picker .fp-nextpage.loading .fp-nextpage-link{display:none}.file-picker .fp-nextpage.loading .fp-nextpage-loading{display:block;height:100px;padding-top:50px;text-align:center}.fp-select form{padding:20px 20px 0}.fp-select .fp-select-loading{margin-top:20px;text-align:center}.fp-select .fp-hr{width:auto;height:1px;margin:10px 0;clear:both;background-color:#fff;border-bottom:1px solid #bbb}.fp-select table{padding:0 0 10px}.fp-select table .mdl-right{min-width:84px}.fp-select .fp-reflist .mdl-right{vertical-align:top}.fp-select .fp-select-buttons{float:right}.fp-select .fp-info{display:block;padding:1px 20px 0;clear:both}.fp-select .fp-thumbnail{float:left;min-width:110px;min-height:110px;margin:10px 20px 0 0;line-height:110px;text-align:center;background:#fff;border:1px solid #ddd;-webkit-box-shadow:inset 0 0 10px 0 #ccc;-moz-box-shadow:inset 0 0 10px 0 #ccc;box-shadow:inset 0 0 10px 0 #ccc}.fp-select .fp-thumbnail img{padding:3px;margin:10px;vertical-align:middle;border:1px solid #ddd}.fp-select .fp-fileinfo{display:inline-block;*display:inline;margin-top:10px;*zoom:1}.file-picker.fp-select .fp-fileinfo{max-width:240px}.fp-select .fp-fileinfo div{padding-bottom:5px}.file-picker.fp-select .uneditable{display:none}.file-picker.fp-select .fp-select-loading{display:none}.file-picker.fp-select.loading .fp-select-loading{display:block}.file-picker.fp-select.loading form{display:none}.fp-select .fp-dimensions.fp-unknown{display:none}.filemanager-loading{display:none}.jsenabled .filemanager-loading{display:block;margin-top:100px}.filemanager.fm-loading .filemanager-toolbar,.filemanager.fm-loading .fp-pathbar,.filemanager.fm-loading .filemanager-container,.filemanager.fm-loaded .filemanager-loading,.filemanager.fm-maxfiles .fp-btn-add,.filemanager.fm-maxfiles .dndupload-message,.filemanager.fm-noitems .fp-btn-download,.filemanager .fm-empty-container,.filemanager.fm-noitems .filemanager-container .fp-content{display:none}.filemanager .filemanager-updating{display:none;text-align:center}.filemanager.fm-updating .filemanager-updating{display:block;margin-top:37px}.filemanager.fm-updating .fm-content-wrapper,.filemanager.fm-nomkdir .fp-btn-mkdir,.fitem.disabled .filemanager .filemanager-toolbar,.fitem.disabled .filemanager .fp-pathbar,.fitem.disabled .filemanager .fp-restrictions,.fitem.disabled .filemanager .fm-content-wrapper{display:none}.fp-restrictions{text-align:right}.filemanager .fp-navbar{background:#f2f2f2;border:1px solid #bbb;border-bottom:0}.filemanager-toolbar{min-height:22px;padding:5px 8px;overflow:hidden}.fp-pathbar{min-height:20px;padding:5px 8px 1px;border-top:1px solid #bbb}.filemanager .fp-pathbar.empty{display:none}.filepicker-filelist,.filemanager-container{position:relative;min-height:140px;overflow:auto;clear:both;background:#fff;border:1px solid #bbb}.filemanager .fp-content{max-height:472px;min-height:157px;overflow:auto}.filemanager-container,.filepicker-filelist{overflow:hidden}.fitem.disabled .filepicker-filelist,.fitem.disabled .filemanager-container{background-color:#ebebe4}.fitem.disabled .fp-btn-choose{color:#999}.fitem.disabled .filepicker-filelist .filepicker-filename{display:none}.fp-iconview .fp-reficons1{position:absolute;top:0;left:0;z-index:1000;width:100%;height:100%}.fp-iconview .fp-reficons2{position:absolute;top:0;left:0;z-index:1001;width:100%;height:100%}.fp-iconview .fp-file.fp-hasreferences .fp-reficons1{background:url('[[pix:theme|fp/link]]') no-repeat;background-position:bottom right}.fp-iconview .fp-file.fp-isreference .fp-reficons2{background:url('[[pix:theme|fp/alias]]') no-repeat;background-position:bottom left}.filemanager .fp-iconview .fp-file.fp-originalmissing .fp-thumbnail img{display:none}.filemanager .fp-iconview .fp-file.fp-originalmissing .fp-thumbnail{background:url([[pix:s/dead]]) no-repeat;background-position:center center}.filemanager .yui3-datatable table{width:100%;border:0 solid #bbb}.filemanager .yui3-datatable-header{color:#555!important;background:#fff!important;border-bottom:1px solid #ccc!important;border-left:0 solid #fff!important}.filemanager .yui3-datatable-odd .yui3-datatable-cell{background-color:#f6f6f6!important;border-left:0 solid #f6f6f6}.filemanager .yui3-datatable-even .yui3-datatable-cell{background-color:#fff!important;border-left:0 solid #fff}.filemanager .fp-filename-icon.fp-hasreferences .fp-reficons1{position:absolute;top:8px;left:17px;z-index:1000;width:100%;height:100%;background:url('[[pix:theme|fp/link_sm]]') no-repeat 0 0}.filemanager .fp-filename-icon.fp-isreference .fp-reficons2{position:absolute;top:9px;left:-6px;z-index:1001;width:100%;height:100%;background:url('[[pix:theme|fp/alias_sm]]') no-repeat 0 0}.filemanager .fp-contextmenu{display:none}.filemanager .fp-iconview .fp-folder.fp-hascontextmenu .fp-contextmenu{position:absolute;right:7px;bottom:5px;display:block}.filemanager .fp-treeview .fp-folder.fp-hascontextmenu .fp-contextmenu,.filemanager .fp-tableview .fp-folder.fp-hascontextmenu .fp-contextmenu{position:absolute;top:6px;left:14px;display:inline;margin-right:-20px}.dir-rtl .filemanager .fp-iconview .fp-folder.fp-hascontextmenu .fp-contextmenu{right:inherit;left:7px}.dir-rtl .filemanager .fp-treeview .fp-folder.fp-hascontextmenu .fp-contextmenu,.dir-rtl .filemanager .fp-tableview .fp-folder.fp-hascontextmenu .fp-contextmenu{right:16px;left:inherit;margin-right:0}.filepicker-filelist .filepicker-container,.filemanager.fm-noitems .fm-empty-container{position:absolute;top:10px;right:10px;bottom:10px;left:10px;display:block;padding-top:85px;text-align:center;border:2px dashed #bbb}.filepicker-filelist .dndupload-target,.filemanager-container .dndupload-target{position:absolute;top:10px;right:10px;bottom:10px;left:10px;padding-top:85px;text-align:center;background:#fff;border:2px dashed #fb7979;-webkit-box-shadow:0 0 0 10px #fff;-moz-box-shadow:0 0 0 10px #fff;box-shadow:0 0 0 10px #fff}.filepicker-filelist.dndupload-over .dndupload-target,.filemanager-container.dndupload-over .dndupload-target{position:absolute;top:10px;right:10px;bottom:10px;left:10px;padding-top:85px;text-align:center;background:#fff;border:2px dashed #6c8cd3}.dndupload-message{display:none}.dndsupported .dndupload-message{display:inline}.dnduploadnotsupported-message{display:none}.dndnotsupported .dnduploadnotsupported-message{display:inline}.dndupload-target{display:none}.dndsupported .dndupload-ready .dndupload-target{display:block}.dndupload-uploadinprogress{display:none;text-align:center}.dndupload-uploading .dndupload-uploadinprogress{display:block}.dndupload-arrow{position:absolute;top:5px;width:100%;height:80px;margin-left:-28px;background:url([[pix:theme|fp/dnd_arrow]]) center no-repeat}.fitem.disabled .filepicker-container,.fitem.disabled .fm-empty-container{display:none}.dndupload-progressbars{display:none;padding:10px}.dndupload-inprogress .dndupload-progressbars{display:block}.dndupload-inprogress .fp-content{display:none}.filemanager.fm-noitems .dndupload-inprogress .fm-empty-container{display:none}.filepicker-filelist.dndupload-inprogress .filepicker-container{display:none}.filepicker-filelist.dndupload-inprogress a{display:none}.filemanager.fp-select .fp-select-loading{display:none}.filemanager.fp-select.loading .fp-select-loading{display:block}.filemanager.fp-select.loading form{display:none}.filemanager.fp-select.fp-folder .fp-license,.filemanager.fp-select.fp-folder .fp-author,.filemanager.fp-select.fp-file .fp-file-unzip,.filemanager.fp-select.fp-folder .fp-file-unzip,.filemanager.fp-select.fp-file .fp-file-zip,.filemanager.fp-select.fp-zip .fp-file-zip{display:none}.filemanager.fp-select .fp-file-setmain{display:none}.filemanager.fp-select.fp-cansetmain .fp-file-setmain{display:inline-block;*display:inline;*zoom:1}.filemanager .fp-mainfile .fp-filename{font-weight:bold}.filemanager.fp-select.fp-folder .fp-file-download{display:none}.fm-operation{font-weight:bold}.filemanager.fp-select .fp-original.fp-unknown,.filemanager.fp-select .fp-original .fp-originloading{display:none}.filemanager.fp-select .fp-original.fp-loading .fp-originloading{display:inline}.filemanager.fp-select .fp-reflist.fp-unknown,.filemanager.fp-select .fp-reflist .fp-reflistloading{display:none}.filemanager.fp-select .fp-refcount{max-width:265px}.filemanager.fp-select .fp-reflist.fp-loading .fp-reflistloading{display:inline}.filemanager.fp-select .fp-reflist .fp-value{max-width:265px;max-height:75px;padding:8px 7px;margin:0;overflow:auto;background:#f9f9f9;border:1px solid #bbb}.filemanager.fp-select .fp-reflist .fp-value li{padding-bottom:7px}.filemanager.fp-mkdir-dlg{text-align:center}.filemanager.fp-mkdir-dlg .fp-mkdir-dlg-text{margin:20px;text-align:left}.dir-rtl .filemanager .fp-mkdir-dlg p{text-align:right}.filemanager.fp-dlg{text-align:center}.filemanager.fp-dlg .fp-dlg-text{max-width:340px;max-height:300px;min-width:200px;padding:0 10px;margin:40px 20px 20px;overflow:auto;font-size:12px;line-height:22px}.file-picker div.bd{text-align:left}.dir-rtl .file-picker div.bd,.dir-rtl .file-picker .fp-pathbar,.dir-rtl .file-picker .fp-list,.dir-rtl #filemenu .yuimenuitemlabel,.dir-rtl .filemanager-container .yui3-skin-sam .yui3-datatable-header{text-align:right}.dir-rtl .filepicker .yui-layout-unit-left{left:500px}.dir-rtl .filepicker .yui-layout-unit-center{left:0}.message-discussion-noframes h1{font-size:1em}.message-discussion-noframes #userinfo .commands,.message .noframesjslink,.message .link{font-size:11.9px}.message .heading{font-size:1em;font-weight:bold}.message .author{font-weight:bold}.message .time{font-style:italic}#page-message-user .commands span{font-size:.7em}#page-message-user .name{font-size:1.1em;font-weight:bold}table.message_search_results td{border-color:#ddd}.message .time,.message.me .author{color:#999}.message.other .author{color:#88c}#page-message-messages{padding:10px}#page-message-send .notifysuccess{padding:1px}#page-message-send td.fixeditor{text-align:center}.message .note{padding:10px}table.message .searchresults td{padding:5px}.message .contactselector{float:left;width:24%}.message .contactselector .contact{text-align:left}.message .contactselector .messageselecteduser{font-weight:bold}.message .contactselector .paging{position:relative;z-index:1}.message .messagearea{float:right;width:74%;min-height:200px;padding-left:1%;border-left:1px solid #d3d3d3}.message .messagearea .messagehistorytype{padding-bottom:20px;clear:both}.message .messagearea .messagehistory .message_user_pictures{margin-right:auto;margin-left:auto}.message .messagearea .messagehistory .message_user_pictures #user1{width:200px;vertical-align:top}.message .messagearea .messagehistory .message_user_pictures #user2{width:200px;vertical-align:top}.message .messagearea .messagehistory .message_user_pictures .useractionlinks{font-size:.9em}.message .messagearea .messagehistory .heading{width:100%;clear:both}.message .messagearea .messagehistory .left{float:left;width:50%;padding-bottom:10px;clear:both}.message .messagearea .messagehistory .right{float:right;width:50%;padding-bottom:10px;clear:both}.message .messagearea .messagehistory .notification{padding:10px;margin-top:5px;background-color:#eee}.message .messagearea .messagesend{padding-top:20px;clear:both}.message .messagearea .messagesend .messagesendbox{width:100%}.message .messagearea .messagesend fieldset{padding:0;margin:0}.message .messagearea .messagerecent{width:100%;text-align:left}.message .messagearea .messagerecent .singlemessage{padding:10px;border-bottom:1px solid #d3d3d3}.message .messagearea .messagerecent .singlemessage .otheruser span{padding:5px}.message .messagearea .messagerecent .singlemessage .messagedate{float:right}.message .hiddenelement{display:none}.message .visible{display:inline}.message #usergroupselector.fieldset,.message #viewing{width:100%}.messagesearchresults{margin-bottom:40px}.messagesearchresults td{padding:0 10px 0 20px}.messagesearchresults td span{white-space:nowrap}.messagesearchresults td img.userpicture{padding-right:.45em;vertical-align:text-bottom}.dir-rtl .messagesearchresults td img.userpicture{padding-right:0;padding-left:.45em}.messagesearchresults td span img{padding:0 0 0 .45em;vertical-align:text-bottom}.dir-rtl .messagesearchresults td span img{padding:0 .45em 0 0}#newmessageoverlay{position:fixed;right:0;bottom:0;padding:20px;background-color:#d3d3d3;border:1px solid black}#newmessageoverlay #usermessage{padding:10px}.questionbank h2{margin-top:0}.questioncategories h3{margin-top:0}#chooseqtypebox{margin-top:1em}#chooseqtype h3{margin:0 0 .3em}#chooseqtype .instruction{display:none}#chooseqtype .fakeqtypes{border-top:1px solid silver}#chooseqtype .qtypeoption{margin-bottom:.5em}#chooseqtype label{display:block}#chooseqtype .qtypename img{padding:0 .3em}#chooseqtype .qtypename{display:inline-table;width:16em}#chooseqtype .qtypesummary{display:block;margin:0 2em}#chooseqtype .submitbuttons{margin:.7em 0;text-align:center}#qtypechoicecontainer{display:none}#qtypechoicecontainer_c.yui-panel-container.shadow .underlay{background:0}#qtypechoicecontainer.yui-panel .hd{letter-spacing:1px;color:#333;text-shadow:1px 1px 1px #fff;background-color:#ebebeb;background-image:-moz-linear-gradient(top,#fff,#ccc);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#ccc));background-image:-webkit-linear-gradient(top,#fff,#ccc);background-image:-o-linear-gradient(top,#fff,#ccc);background-image:linear-gradient(to bottom,#fff,#ccc);background-repeat:repeat-x;border:1px solid #ccc;border-bottom:1px solid #bbb;-webkit-border-top-right-radius:10px;border-top-right-radius:10px;-webkit-border-top-left-radius:10px;border-top-left-radius:10px;-moz-border-radius-topright:10px;-moz-border-radius-topleft:10px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffcccccc',GradientType=0)}#qtypechoicecontainer{font-size:12px;color:#333;background:#f2f2f2;border:1px solid #ccc;border-top:0 none;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}#chooseqtype{width:40em}#chooseqtypehead h3{margin:0;font-weight:normal}#chooseqtype .qtypes{position:relative;padding:.24em 0;border-bottom:1px solid #bbb}#chooseqtype .qtypeoption{padding:.3em .3em .3em 1.6em;margin-bottom:0}#chooseqtype .qtypeoption img{padding-right:.5em;padding-left:1em;vertical-align:text-bottom}#chooseqtype .selected{background-color:#fff;-webkit-box-shadow:0 0 10px 0 #ccc;-moz-box-shadow:0 0 10px 0 #ccc;box-shadow:0 0 10px 0 #ccc}#chooseqtype .instruction,#chooseqtype .qtypesummary{position:absolute;top:0;right:0;bottom:0;left:60%;display:none;padding:1.5em 1.6em;margin:0;overflow-y:auto;background-color:#fff}#chooseqtype .instruction,#chooseqtype .selected .qtypesummary{display:block}#categoryquestions{margin:0}#categoryquestions td,#categoryquestions th{padding:0 .2em}#categoryquestions th{font-weight:normal;text-align:left}#categoryquestions .checkbox{padding-left:20px}.dir-rtl #categoryquestions th{text-align:right}.questionbank .singleselect{margin:0}#combinedfeedbackhdr div.fhtmleditor{padding:0}#combinedfeedbackhdr div.fcheckbox{margin-bottom:1em}#multitriesheader div.fitem_feditor{margin-top:1em}#multitriesheader div.fitem_fgroup{margin-bottom:1em}#multitriesheader div.fitem_fgroup fieldset.felement label{margin-right:.3em;margin-left:.3em}body.path-question-type .fitem_fgroup .accesshide{position:static;left:0;padding-right:.3em;font:inherit}.que{margin:0 auto 1.8em auto;clear:left;text-align:left}.dir-rtl .que{text-align:right}.que .info{float:left;width:7em;padding:.5em;margin-bottom:1.8em;background-color:#eee;border:1px solid #dcdcdc;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.que h2.no{margin:0;font-size:.8em;line-height:1}.que span.qno{font-size:1.5em;font-weight:bold}.que .info>div{margin-top:.7em;font-size:.8em}.que .info .questionflag.editable{cursor:pointer}.que .info .editquestion img,.que .info .questionflag img,.que .info .questionflag input{vertical-align:bottom}.que .content{margin:0 0 0 8.5em}.que .formulation,.que .outcome,.que .comment{padding:8px 35px 8px 14px;margin-bottom:20px;color:#c09853;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.que .formulation{color:#3a87ad;color:#333;background-color:#d9edf7;border-color:#bce8f1}.formulation input[type="text"],.formulation select{width:auto}.path-mod-quiz input[size]{width:auto}.que .comment{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.que .history{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.que .history blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.que .ablock{margin:.7em 0 .3em 0}.que .im-controls{margin-top:.5em;text-align:left}.dir-rtl .que .im-controls{text-align:right}.que .specificfeedback,.que .generalfeedback,.que .rightanswer,.que .im-feedback,.que .feedback,.que p{margin:0 0 .5em}.que .qtext{margin-bottom:1.5em}.que .correctness{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.que .correctness:empty{display:none}.que .correctness-important{background-color:#b94a48}.que .correctness-important[href]{background-color:#953b39}.que .correctness-warning{background-color:#f89406}.que .correctness-warning[href]{background-color:#c67605}.que .correctness-success{background-color:#468847}.que .correctness-success[href]{background-color:#356635}.que .correctness-info{background-color:#3a87ad}.que .correctness-info[href]{background-color:#2d6987}.que .correctness-inverse{background-color:#333}.que .correctness-inverse[href]{background-color:#1a1a1a}.que .correctness.correct{background-color:#468847}.que .correctness.partiallycorrect{background-color:#f89406}.que .correctness.notanswered,.que .correctness.incorrect{background-color:#b94a48}.que .validationerror{color:#b94a48}.formulation .correct{background-color:#dff0d8}.formulation .partiallycorrect{background-color:#fcf8e3}.formulation .incorrect{background-color:#f2dede}.formulation select.correct,.formulation input.correct{color:#468847;background-color:#dff0d8;border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.correct:focus,.formulation input.correct:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.formulation select.partiallycorrect,.formulation input.partiallycorrect{color:#c09853;background-color:#fcf8e3;border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.partiallycorrect:focus,.formulation input.partiallycorrect:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.formulation select.incorrect,.formulation input.incorrect{color:#b94a48;background-color:#f2dede;border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.incorrect:focus,.formulation input.incorrect:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.que .grading,.que .comment,.que .commentlink,.que .history{margin-top:.5em}.que .history h3{margin:0 0 .2em;font-size:1em}.que .history table{width:100%;margin:0}.que .history .current{font-weight:bold}.que .questioncorrectnessicon{vertical-align:text-bottom}.que input.questionflagimage{padding-right:3px}.dir-rtl .que input.questionflagimage{padding-right:0;padding-left:3px}.importerror{margin-top:10px;border-bottom:1px solid #555}.mform .que.comment .fitemtitle{width:20%}#page-question-preview #techinfo{margin:1em 0}.dir-rtl #chooseqtype .instruction,.dir-rtl #chooseqtype .qtypesummary{right:60%;left:0;border-right:1px solid grey;border-left:0}#page-mod-quiz-edit .questionbankwindow div.header{padding:3px;padding:2px 10px 2px 10px;margin:0 -10px 0 -10px;color:#444;text-shadow:none;background:transparent;-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}#page-mod-quiz-edit .questionbankwindow div.header a:link,#page-mod-quiz-edit .questionbankwindow div.header a:visited{color:#08c}#page-mod-quiz-edit .questionbankwindow div.header a:hover{color:#005580}#page-mod-quiz-edit .questionbankwindow div.header .title{color:#333}#page-mod-quiz-edit div.container div.generalbox{padding:1.5em;background-color:transparent}#page-mod-quiz-edit .categoryinfo{background-color:#fff;border-bottom:0}#page-mod-quiz-edit div.questionbank .categoryquestionscontainer,#page-mod-quiz-edit div.questionbank .categorysortopotionscontainer,#page-mod-quiz-edit div.questionbank .categorypagingbarcontainer,#page-mod-quiz-edit div.questionbank .categoryselectallcontainer{padding:0 0 1.5em 0}#page-mod-quiz-edit div.questionbank .categorypagingbarcontainer{padding:1em;margin:0 -1.2em;background-color:transparent;border-top:0;border-bottom:0}#page-mod-quiz-edit div.questionbank .categoryquestionscontainer{margin:0 -1.2em -1em -1.2em}#page-mod-quiz-edit div.question div.content div.questioncontrols{background-color:#fff}#page-mod-quiz-edit div.question div.content div.points{padding-bottom:.5em;margin-top:-0.5em;background-color:#fff;border:0}#page-mod-quiz-edit div.question div.content div.points label{display:inline-block}#page-mod-quiz-edit div.quizpage .pagecontent .pagestatus{background-color:#fff}#page-mod-quiz-edit .quizpagedelete,#page-mod-quiz-edit .quizpagedelete img{background-color:transparent}#page-mod-quiz-edit div.quizpage .pagecontent{overflow:hidden;border:1px solid #ddd;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}#page-mod-quiz-edit .modulespecificbuttonscontainer{width:220px}.questionbankwindow .module{width:auto}#page-mod-quiz-edit div.editq div.question div.content{overflow:hidden;background-color:#fff;border:1px solid #ddd;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.path-mod-quiz .statedetails{display:block;font-size:.9em}a#hidebankcmd{color:#08c}.que.shortanswer .answer{padding:0}.que label{display:inline}.userprofile .fullprofilelink{margin:10px;text-align:center}.userprofile .description{margin-bottom:20px}.userprofile dl.list{*zoom:1}.userprofile dl.list:before,.userprofile dl.list:after{display:table;line-height:0;content:""}.userprofile dl.list:after{clear:both}.userprofile dl.list dt{float:left;width:180px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.userprofile dl.list dd{margin-left:200px}.user-box{float:left;width:115px;height:160px;margin:8px;clear:none;text-align:center}.userlist .action-icon img{vertical-align:middle}.userlist #showall{margin:10px 0}.userlist .buttons{text-align:center}.userlist .buttons label{padding:0 3px}.userlist table#participants{text-align:center}.userlist table#participants td,.userlist table#participants th{padding:4px;text-align:left;vertical-align:middle}.userlist table.controls{width:100%}.userlist table.controls tr{vertical-align:top}.userlist table.controls td.right,.userlist table.controls td.left{padding:4px}.userlist table.controls .right{text-align:right}.userinfobox{width:100%;padding:10px;border:1px solid;border-collapse:separate}.userinfobox .left,.userinfobox .side{width:100px;vertical-align:top}.userinfobox .userpicture{width:100px;height:100px}.userinfobox .content{vertical-align:top}.userinfobox .links{width:100px;padding:5px;vertical-align:bottom}.userinfobox .links a{display:block}.userinfobox .list td{padding:3px}.userinfobox .username{padding-bottom:20px;font-weight:bold}.userinfobox td.label{font-weight:bold;text-align:right;white-space:nowrap;vertical-align:top}.groupinfobox{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.groupinfobox blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.groupinfobox .left{width:100px;padding:10px;vertical-align:top}.course-participation #showall{margin:10px 0;text-align:center}#user-policy .noticebox{width:80%;height:250px;margin-right:auto;margin-bottom:10px;margin-left:auto;text-align:center}#user-policy #policyframe{width:100%;height:100%}.iplookup #map{margin:auto}.userselector select{width:100%}.userselector div{margin-top:.2em}.userselector div label{margin-right:.3em}.userselector .userselector-infobelow{font-size:.8em}#userselector_options{padding:.3em 0}#userselector_options .collapsibleregioncaption{font-weight:bold}#userselector_options p{margin:.2em 0;text-align:left}.dir-rtl #userselector_options p{text-align:right}#page-user-profile .messagebox{margin-right:auto;margin-left:auto;text-align:center}#page-course-view-weeks .messagebox{margin-right:auto;margin-left:auto;text-align:center}.dir-rtl .descriptionbox{margin-right:110px;margin-left:0}.dir-rtl .userlist table#participants td,.dir-rtl .userlist table#participants th{text-align:right}.dir-rtl .userlist table#participants{margin:0 auto}#page-my-index.dir-rtl .block h3{text-align:right}/*! * Bootstrap v2.3.0 * * Copyright 2012 Twitter, Inc From adbf94c95725c24b5b93afc8d3bc24fc057c6a17 Mon Sep 17 00:00:00 2001 From: Gilles-Philippe Leblanc Date: Wed, 11 Sep 2013 13:11:07 -0400 Subject: [PATCH 012/101] MDL-41733 auth_cas: Allow direct authentication with CAS to a course when multiple authentication is activated --- auth/cas/auth.php | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/auth/cas/auth.php b/auth/cas/auth.php index 634e32b2c72..e748bbf007c 100644 --- a/auth/cas/auth.php +++ b/auth/cas/auth.php @@ -96,6 +96,7 @@ class auth_plugin_cas extends auth_plugin_ldap { $site = get_site(); $CASform = get_string('CASform', 'auth_cas'); $username = optional_param('username', '', PARAM_RAW); + $courseid = optional_param('courseid', 0, PARAM_INT); if (!empty($username)) { if (isset($SESSION->wantsurl) && (strstr($SESSION->wantsurl, 'ticket') || @@ -117,6 +118,12 @@ class auth_plugin_cas extends auth_plugin_ldap { $frm = new stdClass(); $frm->username = phpCAS::getUser(); $frm->password = 'passwdCas'; + + // Redirect to a course if multi-auth is activated, authCAS is set to CAS and the courseid is specified. + if ($this->config->multiauth && !empty($courseid)) { + redirect(new moodle_url('/course/view.php', array('id'=>$courseid))); + } + return; } From 4fb31ae6cd3fee2d604b3c6c3a6854a0cd28c46e Mon Sep 17 00:00:00 2001 From: sam marshall Date: Fri, 16 Aug 2013 19:11:14 +0100 Subject: [PATCH 013/101] MDL-41669 Restore: Progress bar needs to include more tasks 1. Changes progress bar code to allow headings for progress bar (so users have some clue what's going on if a page has more than one progress bar). 2. Changes restore code so that a progress bar can display during pre-checks if they take longer than 5 seconds. 3. Changes pre-check and restore code so that, in various points where the system can take a long time within an individual step, intederminate progress is indicated and it won't time out. --- backup/import.php | 7 ++ backup/moodle2/restore_stepslib.php | 12 +++- backup/restore.php | 13 +++- backup/util/dbops/restore_dbops.class.php | 67 +++++++++++++++++-- .../helper/restore_prechecks_helper.class.php | 48 +++++++++++-- .../plan/restore_structure_step.class.php | 6 ++ ..._backup_display_progress_if_slow.class.php | 26 ++++++- .../xml/parser/progressive_parser.class.php | 21 ++++++ lang/en/backup.php | 2 + 9 files changed, 182 insertions(+), 20 deletions(-) diff --git a/backup/import.php b/backup/import.php index 13ad15a7b22..586edd307e9 100644 --- a/backup/import.php +++ b/backup/import.php @@ -120,6 +120,10 @@ if ($backup->get_stage() == backup_ui::STAGE_FINAL) { // Prepare the restore controller. We don't need a UI here as we will just use what // ever the restore has (the user has just chosen). $rc = new restore_controller($backupid, $course->id, backup::INTERACTIVE_YES, backup::MODE_IMPORT, $USER->id, $restoretarget); + + // Start a progress section for the restore, which will consist of 2 steps + // (the precheck and then the actual restore). + $progress->start_progress('Restore process', 2); $rc->set_progress($progress); // Convert the backup if required.... it should NEVER happed if ($rc->get_status() == backup::STATUS_REQUIRE_CONV) { @@ -155,6 +159,9 @@ if ($backup->get_stage() == backup_ui::STAGE_FINAL) { // Delete the temp directory now fulldelete($tempdestination); + // End restore section of progress tracking (restore/precheck). + $progress->end_progress(); + // All progress complete. Hide progress area. $progress->end_progress(); echo html_writer::end_div(); diff --git a/backup/moodle2/restore_stepslib.php b/backup/moodle2/restore_stepslib.php index 444f9cf7b9c..1afa5232cd8 100644 --- a/backup/moodle2/restore_stepslib.php +++ b/backup/moodle2/restore_stepslib.php @@ -594,13 +594,17 @@ class restore_load_included_inforef_records extends restore_execution_step { // Get all the included tasks $tasks = restore_dbops::get_included_tasks($this->get_restoreid()); + $progress = $this->task->get_progress(); + $progress->start_progress($this->get_name(), count($tasks)); foreach ($tasks as $task) { // Load the inforef.xml file if exists $inforefpath = $task->get_taskbasepath() . '/inforef.xml'; if (file_exists($inforefpath)) { - restore_dbops::load_inforef_to_tempids($this->get_restoreid(), $inforefpath); // Load each inforef file to temp_ids + // Load each inforef file to temp_ids. + restore_dbops::load_inforef_to_tempids($this->get_restoreid(), $inforefpath, $progress); } } + $progress->end_progress(); } } @@ -687,7 +691,8 @@ class restore_load_included_users extends restore_execution_step { return; } $file = $this->get_basepath() . '/users.xml'; - restore_dbops::load_users_to_tempids($this->get_restoreid(), $file); // Load needed users to temp_ids + // Load needed users to temp_ids. + restore_dbops::load_users_to_tempids($this->get_restoreid(), $file, $this->task->get_progress()); } } @@ -708,7 +713,8 @@ class restore_process_included_users extends restore_execution_step { if (!$this->task->get_setting_value('users')) { // No userinfo being restored, nothing to do return; } - restore_dbops::process_included_users($this->get_restoreid(), $this->task->get_courseid(), $this->task->get_userid(), $this->task->is_samesite()); + restore_dbops::process_included_users($this->get_restoreid(), $this->task->get_courseid(), + $this->task->get_userid(), $this->task->is_samesite(), $this->task->get_progress()); } } diff --git a/backup/restore.php b/backup/restore.php index 6040d4b7639..4e2c06dd1e4 100644 --- a/backup/restore.php +++ b/backup/restore.php @@ -54,7 +54,7 @@ echo $OUTPUT->header(); // Prepare a progress bar which can display optionally during long-running // operations while setting up the UI. -$slowprogress = new core_backup_display_progress_if_slow(); +$slowprogress = new core_backup_display_progress_if_slow(get_string('preparingui', 'backup')); // Depending on the code branch above, $restore may be a restore_ui or it may // be a restore_ui_independent_stage. Either way, this function exists. $restore->set_progress_reporter($slowprogress); @@ -65,13 +65,20 @@ if (!$restore->is_independent() && $restore->enforce_changed_dependencies()) { } if (!$restore->is_independent()) { + // Use a temporary (disappearing) progress bar to show the precheck progress if any. + $precheckprogress = new core_backup_display_progress_if_slow(get_string('preparingdata', 'backup')); + $restore->get_controller()->set_progress($precheckprogress); if ($restore->get_stage() == restore_ui::STAGE_PROCESS && !$restore->requires_substage()) { try { - // Display an extra progress bar so that we can show the progress first. + // Div used to hide the 'progress' step once the page gets onto 'finished'. echo html_writer::start_div('', array('id' => 'executionprogress')); + // Show the current restore state (header with bolded item). echo $renderer->progress_bar($restore->get_progress_bar()); - $restore->get_controller()->set_progress(new core_backup_display_progress()); + // Start displaying the actual progress bar percentage. + $restore->get_controller()->set_progress(new core_backup_display_progress(true)); + // Do actual restore. $restore->execute(); + // Hide this section because we are now going to make the page show 'finished'. echo html_writer::end_div(); echo html_writer::script('document.getElementById("executionprogress").style.display = "none";'); } catch(Exception $e) { diff --git a/backup/util/dbops/restore_dbops.class.php b/backup/util/dbops/restore_dbops.class.php index 0e5fabc7b70..b1561d83242 100644 --- a/backup/util/dbops/restore_dbops.class.php +++ b/backup/util/dbops/restore_dbops.class.php @@ -109,18 +109,34 @@ abstract class restore_dbops { /** * Load one inforef.xml file to backup_ids table for future reference + * + * @param string $restoreid Restore id + * @param string $inforeffile File path + * @param core_backup_progress $progress Progress tracker */ - public static function load_inforef_to_tempids($restoreid, $inforeffile) { + public static function load_inforef_to_tempids($restoreid, $inforeffile, + core_backup_progress $progress = null) { if (!file_exists($inforeffile)) { // Shouldn't happen ever, but... throw new backup_helper_exception('missing_inforef_xml_file', $inforeffile); } + + // Set up progress tracking (indeterminate). + if (!$progress) { + $progress = new core_backup_null_progress(); + } + $progress->start_progress('Loading inforef.xml file'); + // Let's parse, custom processor will do its work, sending info to DB $xmlparser = new progressive_parser(); $xmlparser->set_file($inforeffile); $xmlprocessor = new restore_inforef_parser_processor($restoreid); $xmlparser->set_processor($xmlprocessor); + $xmlparser->set_progress($progress); $xmlparser->process(); + + // Finish progress + $progress->end_progress(); } /** @@ -400,18 +416,34 @@ abstract class restore_dbops { /** * Load the needed users.xml file to backup_ids table for future reference + * + * @param string $restoreid Restore id + * @param string $usersfile File path + * @param core_backup_progress $progress Progress tracker */ - public static function load_users_to_tempids($restoreid, $usersfile) { + public static function load_users_to_tempids($restoreid, $usersfile, + core_backup_progress $progress = null) { if (!file_exists($usersfile)) { // Shouldn't happen ever, but... throw new backup_helper_exception('missing_users_xml_file', $usersfile); } + + // Set up progress tracking (indeterminate). + if (!$progress) { + $progress = new core_backup_null_progress(); + } + $progress->start_progress('Loading users into temporary table'); + // Let's parse, custom processor will do its work, sending info to DB $xmlparser = new progressive_parser(); $xmlparser->set_file($usersfile); $xmlprocessor = new restore_users_parser_processor($restoreid); $xmlparser->set_processor($xmlprocessor); + $xmlparser->set_progress($progress); $xmlparser->process(); + + // Finish progress. + $progress->end_progress(); } /** @@ -1385,8 +1417,15 @@ abstract class restore_dbops { * for each one (mapping / creation) and returning one array * of problems in case something is wrong (lack of permissions, * conficts) + * + * @param string $restoreid Restore id + * @param int $courseid Course id + * @param int $userid User id + * @param bool $samesite True if restore is to same site + * @param core_backup_progress $progress Progress reporter */ - public static function precheck_included_users($restoreid, $courseid, $userid, $samesite) { + public static function precheck_included_users($restoreid, $courseid, $userid, $samesite, + core_backup_progress $progress) { global $CFG, $DB; // To return any problem found @@ -1409,8 +1448,14 @@ abstract class restore_dbops { $cancreateuser = true; } + // Prepare for reporting progress. + $conditions = array('backupid' => $restoreid, 'itemname' => 'user'); + $max = $DB->count_records('backup_ids_temp', $conditions); + $done = 0; + $progress->start_progress('Checking users', $max); + // Iterate over all the included users - $rs = $DB->get_recordset('backup_ids_temp', array('backupid' => $restoreid, 'itemname' => 'user'), '', 'itemid, info'); + $rs = $DB->get_recordset('backup_ids_temp', $conditions, '', 'itemid, info'); foreach ($rs as $recuser) { $user = (object)backup_controller_dbops::decode_backup_temp_info($recuser->info); @@ -1447,8 +1492,11 @@ abstract class restore_dbops { } else { // Shouldn't arrive here ever, something is for sure wrong. Exception throw new restore_dbops_exception('restore_error_processing_user', $user->username); } + $done++; + $progress->progress($done); } $rs->close(); + $progress->end_progress(); return $problems; } @@ -1458,12 +1506,19 @@ abstract class restore_dbops { * * Just wrap over precheck_included_users(), returning * exception if any problem is found + * + * @param string $restoreid Restore id + * @param int $courseid Course id + * @param int $userid User id + * @param bool $samesite True if restore is to same site + * @param core_backup_progress $progress Optional progress tracker */ - public static function process_included_users($restoreid, $courseid, $userid, $samesite) { + public static function process_included_users($restoreid, $courseid, $userid, $samesite, + core_backup_progress $progress = null) { global $DB; // Just let precheck_included_users() to do all the hard work - $problems = self::precheck_included_users($restoreid, $courseid, $userid, $samesite); + $problems = self::precheck_included_users($restoreid, $courseid, $userid, $samesite, $progress); // With problems, throw exception, shouldn't happen if prechecks were originally // executed, so be radical here. diff --git a/backup/util/helper/restore_prechecks_helper.class.php b/backup/util/helper/restore_prechecks_helper.class.php index 95bc9685846..a80a80b3055 100644 --- a/backup/util/helper/restore_prechecks_helper.class.php +++ b/backup/util/helper/restore_prechecks_helper.class.php @@ -43,7 +43,7 @@ abstract class restore_prechecks_helper { * * Returns empty array or warnings/errors array */ - public static function execute_prechecks($controller, $droptemptablesafter = false) { + public static function execute_prechecks(restore_controller $controller, $droptemptablesafter = false) { global $CFG; $errors = array(); @@ -57,16 +57,31 @@ abstract class restore_prechecks_helper { $courseid = $controller->get_courseid(); $userid = $controller->get_userid(); $rolemappings = $controller->get_info()->role_mappings; + $progress = $controller->get_progress(); + + // Start tracking progress. There are currently 8 major steps, corresponding + // to $majorstep++ lines in this code; we keep track of the total so as to + // verify that it's still correct. If you add a major step, you need to change + // the total here. + $majorstep = 1; + $majorsteps = 8; + $progress->start_progress('Carrying out pre-restore checks', $majorsteps); + // Load all the included tasks to look for inforef.xml files $inforeffiles = array(); $tasks = restore_dbops::get_included_tasks($restoreid); + $progress->start_progress('Listing inforef files', count($tasks)); + $minorstep = 1; foreach ($tasks as $task) { // Add the inforef.xml file if exists $inforefpath = $task->get_taskbasepath() . '/inforef.xml'; if (file_exists($inforefpath)) { $inforeffiles[] = $inforefpath; } + $progress->progress($minorstep++); } + $progress->end_progress(); + $progress->progress($majorstep++); // Create temp tables restore_controller_dbops::create_restore_temp_tables($controller->get_restoreid()); @@ -108,18 +123,31 @@ abstract class restore_prechecks_helper { } // Load all the inforef files, we are going to need them + $progress->start_progress('Loading temporary IDs', count($inforeffiles)); + $minorstep = 1; foreach ($inforeffiles as $inforeffile) { - restore_dbops::load_inforef_to_tempids($restoreid, $inforeffile); // Load each inforef file to temp_ids + // Load each inforef file to temp_ids. + restore_dbops::load_inforef_to_tempids($restoreid, $inforeffile, $progress); + $progress->progress($minorstep++); } + $progress->end_progress(); + $progress->progress($majorstep++); // If restoring users, check we are able to create all them if ($restoreusers) { $file = $controller->get_plan()->get_basepath() . '/users.xml'; - restore_dbops::load_users_to_tempids($restoreid, $file); // Load needed users to temp_ids - if ($problems = restore_dbops::precheck_included_users($restoreid, $courseid, $userid, $samesite)) { + // Load needed users to temp_ids. + restore_dbops::load_users_to_tempids($restoreid, $file, $progress); + $progress->progress($majorstep++); + if ($problems = restore_dbops::precheck_included_users($restoreid, $courseid, $userid, $samesite, $progress)) { $errors = array_merge($errors, $problems); } + } else { + // To ensure consistent number of steps in progress tracking, + // mark progress even though we didn't do anything. + $progress->progress($majorstep++); } + $progress->progress($majorstep++); // Note: restore won't create roles at all. Only mapping/skip! $file = $controller->get_plan()->get_basepath() . '/roles.xml'; @@ -128,6 +156,7 @@ abstract class restore_prechecks_helper { $errors = array_key_exists('errors', $problems) ? array_merge($errors, $problems['errors']) : $errors; $warnings = array_key_exists('warnings', $problems) ? array_merge($warnings, $problems['warnings']) : $warnings; } + $progress->progress($majorstep++); // Check we are able to restore and the categories and questions $file = $controller->get_plan()->get_basepath() . '/questions.xml'; @@ -136,8 +165,9 @@ abstract class restore_prechecks_helper { $errors = array_key_exists('errors', $problems) ? array_merge($errors, $problems['errors']) : $errors; $warnings = array_key_exists('warnings', $problems) ? array_merge($warnings, $problems['warnings']) : $warnings; } + $progress->progress($majorstep++); - // Prepare results and return + // Prepare results. $results = array(); if (!empty($errors)) { $results['errors'] = $errors; @@ -149,6 +179,14 @@ abstract class restore_prechecks_helper { if (!empty($results) || $droptemptablesafter) { restore_controller_dbops::drop_restore_temp_tables($controller->get_restoreid()); } + + // Finish progress and check we got the initial number of steps right. + $progress->progress($majorstep++); + if ($majorstep != $majorsteps) { + throw new coding_exception('Progress step count wrong: ' . $majorstep); + } + $progress->end_progress(); + return $results; } } diff --git a/backup/util/plan/restore_structure_step.class.php b/backup/util/plan/restore_structure_step.class.php index 0fb1a4070f5..822c71b493c 100644 --- a/backup/util/plan/restore_structure_step.class.php +++ b/backup/util/plan/restore_structure_step.class.php @@ -101,8 +101,14 @@ abstract class restore_structure_step extends restore_step { $xmlprocessor->add_path($element->get_path(), $element->is_grouped()); } + // Set up progress tracking. + $progress = $this->get_task()->get_progress(); + $progress->start_progress($this->get_name(), core_backup_progress::INDETERMINATE); + $xmlparser->set_progress($progress); + // And process it, dispatch to target methods in step will start automatically $xmlparser->process(); + $progress->end_progress(); // Have finished, launch the after_execute method of all the processing objects $this->launch_after_execute_methods(); diff --git a/backup/util/progress/core_backup_display_progress_if_slow.class.php b/backup/util/progress/core_backup_display_progress_if_slow.class.php index ee9511e75ff..fdf8cfc6f98 100644 --- a/backup/util/progress/core_backup_display_progress_if_slow.class.php +++ b/backup/util/progress/core_backup_display_progress_if_slow.class.php @@ -43,6 +43,11 @@ class core_backup_display_progress_if_slow extends core_backup_display_progress */ protected $id; + /** + * @var string Text to display in heading if bar appears + */ + protected $heading; + /** * @var int Time at which the progress bar should display (if it isn't yet) */ @@ -52,23 +57,38 @@ class core_backup_display_progress_if_slow extends core_backup_display_progress * Constructs the progress reporter. This will not output HTML just yet, * until the required delay time expires. * + * @param string $heading Text to display above bar (if it appears); '' for none * @param int $delay Delay time (default 5 seconds) */ - public function __construct($delay = self::DEFAULT_DISPLAY_DELAY) { + public function __construct($heading, $delay = self::DEFAULT_DISPLAY_DELAY) { // Set start time based on delay. $this->starttime = time() + $delay; + $this->heading = $heading; parent::__construct(false); } /** - * Adds a div around the parent display so it can be hidden. + * Starts displaying the progress bar, with optional heading and a special + * div so it can be hidden later. * * @see core_backup_display_progress::start_html() */ public function start_html() { + global $OUTPUT; $this->id = 'core_backup_display_progress_if_slow' . self::$nextid; self::$nextid++; - echo html_writer::start_div('', array('id' => $this->id)); + + // Containing div includes a CSS class so that it can be themed if required, + // and an id so it can be automatically hidden at end. + echo html_writer::start_div('core_backup_display_progress_if_slow', + array('id' => $this->id)); + + // Display optional heading. + if ($this->heading !== '') { + echo $OUTPUT->heading($this->heading, 3); + } + + // Use base class to display progress bar. parent::start_html(); } diff --git a/backup/util/xml/parser/progressive_parser.class.php b/backup/util/xml/parser/progressive_parser.class.php index d465aba9d42..882852af211 100644 --- a/backup/util/xml/parser/progressive_parser.class.php +++ b/backup/util/xml/parser/progressive_parser.class.php @@ -67,6 +67,11 @@ class progressive_parser { protected $prevlevel; // level of the previous tag processed - to detect pushing places protected $currtag; // name/value/attributes of the tag being processed + /** + * @var core_backup_progress Progress tracker called for each action + */ + protected $progress; + public function __construct($case_folding = false) { $this->xml_parser = xml_parser_create('UTF-8'); xml_parser_set_option($this->xml_parser, XML_OPTION_CASE_FOLDING, $case_folding); @@ -118,6 +123,18 @@ class progressive_parser { $this->processor = $processor; } + /** + * Sets the progress tracker for the parser. If set, the tracker will be + * called to report indeterminate progress for each chunk of XML. + * + * The caller should have already called start_progress on the progress tracker. + * + * @param core_backup_progress $progress Progress tracker + */ + public function set_progress(core_backup_progress $progress) { + $this->progress = $progress; + } + /* * Process the XML, delegating found chunks to the @progressive_parser_processor */ @@ -167,6 +184,10 @@ class progressive_parser { protected function publish($data) { $this->processor->receive_chunk($data); + if (!empty($this->progress)) { + // Report indeterminate progress. + $this->progress->progress(); + } } /** diff --git a/lang/en/backup.php b/lang/en/backup.php index d2de209bbd0..feb518e8c9f 100644 --- a/lang/en/backup.php +++ b/lang/en/backup.php @@ -174,6 +174,8 @@ $string['nomatchingcourses'] = 'There are no courses to display'; $string['norestoreoptions'] = 'There are no categories or existing courses you can restore to.'; $string['originalwwwroot'] = 'URL of backup'; $string['previousstage'] = 'Previous'; +$string['preparingui'] = 'Preparing to display page'; +$string['preparingdata'] = 'Preparing data'; $string['qcategory2coursefallback'] = 'The questions category "{$a->name}", originally at system/course category context in backup file, will be created at course context by restore'; $string['qcategorycannotberestored'] = 'The questions category "{$a->name}" cannot be created by restore'; $string['question2coursefallback'] = 'The questions category "{$a->name}", originally at system/course category context in backup file, will be created at course context by restore'; From 36c1ac9b7a0e7c8312812c3f50b9f325746a8e26 Mon Sep 17 00:00:00 2001 From: Andrew Nicols Date: Sun, 21 Jul 2013 22:52:35 +0100 Subject: [PATCH 014/101] MDL-40811 JavaScript: Create a course-util module to reduce code duplication --- .../moodle-course-util-base-debug.js | 21 ++++++ .../moodle-course-util-base-min.js | 1 + .../moodle-course-util-base.js | 21 ++++++ .../moodle-course-util-cm-debug.js | 75 +++++++++++++++++++ .../moodle-course-util-cm-min.js | 1 + .../moodle-course-util-cm.js | 75 +++++++++++++++++++ .../moodle-course-util-section-debug.js | 45 +++++++++++ .../moodle-course-util-section-min.js | 1 + .../moodle-course-util-section.js | 45 +++++++++++ course/yui/src/util/build.json | 20 +++++ course/yui/src/util/js/base.js | 16 ++++ course/yui/src/util/js/cm.js | 70 +++++++++++++++++ course/yui/src/util/js/section.js | 40 ++++++++++ course/yui/src/util/meta/util.json | 26 +++++++ 14 files changed, 457 insertions(+) create mode 100644 course/yui/build/moodle-course-util-base/moodle-course-util-base-debug.js create mode 100644 course/yui/build/moodle-course-util-base/moodle-course-util-base-min.js create mode 100644 course/yui/build/moodle-course-util-base/moodle-course-util-base.js create mode 100644 course/yui/build/moodle-course-util-cm/moodle-course-util-cm-debug.js create mode 100644 course/yui/build/moodle-course-util-cm/moodle-course-util-cm-min.js create mode 100644 course/yui/build/moodle-course-util-cm/moodle-course-util-cm.js create mode 100644 course/yui/build/moodle-course-util-section/moodle-course-util-section-debug.js create mode 100644 course/yui/build/moodle-course-util-section/moodle-course-util-section-min.js create mode 100644 course/yui/build/moodle-course-util-section/moodle-course-util-section.js create mode 100644 course/yui/src/util/build.json create mode 100644 course/yui/src/util/js/base.js create mode 100644 course/yui/src/util/js/cm.js create mode 100644 course/yui/src/util/js/section.js create mode 100644 course/yui/src/util/meta/util.json diff --git a/course/yui/build/moodle-course-util-base/moodle-course-util-base-debug.js b/course/yui/build/moodle-course-util-base/moodle-course-util-base-debug.js new file mode 100644 index 00000000000..cbeb1ba2e5c --- /dev/null +++ b/course/yui/build/moodle-course-util-base/moodle-course-util-base-debug.js @@ -0,0 +1,21 @@ +YUI.add('moodle-course-util-base', function (Y, NAME) { + +/** + * The Moodle.core_course.util classes provide course-related utility functions. + * + * @module moodle-course-util + * @main + */ + +Y.namespace('Moodle.core_course.util'); + +/** + * A collection of general utility functions for use in course. + * + * @class Moodle.core_course.util + * @static + */ + + + +}, '@VERSION@'); diff --git a/course/yui/build/moodle-course-util-base/moodle-course-util-base-min.js b/course/yui/build/moodle-course-util-base/moodle-course-util-base-min.js new file mode 100644 index 00000000000..2d1cba0ef65 --- /dev/null +++ b/course/yui/build/moodle-course-util-base/moodle-course-util-base-min.js @@ -0,0 +1 @@ +YUI.add("moodle-course-util-base",function(e,t){e.namespace("Moodle.core_course.util")},"@VERSION@"); diff --git a/course/yui/build/moodle-course-util-base/moodle-course-util-base.js b/course/yui/build/moodle-course-util-base/moodle-course-util-base.js new file mode 100644 index 00000000000..cbeb1ba2e5c --- /dev/null +++ b/course/yui/build/moodle-course-util-base/moodle-course-util-base.js @@ -0,0 +1,21 @@ +YUI.add('moodle-course-util-base', function (Y, NAME) { + +/** + * The Moodle.core_course.util classes provide course-related utility functions. + * + * @module moodle-course-util + * @main + */ + +Y.namespace('Moodle.core_course.util'); + +/** + * A collection of general utility functions for use in course. + * + * @class Moodle.core_course.util + * @static + */ + + + +}, '@VERSION@'); diff --git a/course/yui/build/moodle-course-util-cm/moodle-course-util-cm-debug.js b/course/yui/build/moodle-course-util-cm/moodle-course-util-cm-debug.js new file mode 100644 index 00000000000..aef40c5055a --- /dev/null +++ b/course/yui/build/moodle-course-util-cm/moodle-course-util-cm-debug.js @@ -0,0 +1,75 @@ +YUI.add('moodle-course-util-cm', function (Y, NAME) { + +/** + * A collection of utility classes for use with course modules. + * + * @module moodle-course-util + * @submodule moodle-course-util-cm + */ + +Y.namespace('Moodle.core_course.util.cm'); + +/** + * A collection of utility classes for use with course modules. + * + * @class Moodle.core_course.util.cm + * @static + */ +Y.Moodle.core_course.util.cm = { + CONSTANTS: { + MODULEIDPREFIX : 'module-' + }, + SELECTORS: { + COURSEMODULE: '.activity', + INSTANCENAME: '.instancename' + }, + + /** + * Retrieve the course module item from one of it's child Nodes. + * + * @method getCourseModuleNodeFromComponent + * @param coursemodulecomponent {Node} The component Node. + * @return {Node|null} The Course Module Node. + */ + getCourseModuleFromComponent: function(coursemodulecomponent) { + return Y.one(coursemodulecomponent).ancestor(this.SELECTORS.COURSEMODULE, true); + }, + + /** + * Determines the section ID for the provided section. + * + * @method getId + * @param coursemodule {Node} The course module to find an ID for. + * @return {Number|false} The ID of the course module in question or false if no ID was found. + */ + getId: function(coursemodule) { + // We perform a simple substitution operation to get the ID. + var id = coursemodule.get('id').replace( + this.CONSTANTS.MODULEIDPREFIX, ''); + + // Attempt to validate the ID. + id = parseInt(id, 10); + if (typeof id === 'number' && isFinite(id)) { + return id; + } + return false; + }, + + /** + * Determines the section ID for the provided section. + * + * @method getName + * @param coursemodule {Node} The course module to find an ID for. + * @return {Number|false} The ID of the course module in question or false if no ID was found. + */ + getName: function(coursemodule) { + var instance = coursemodule.one(this.SELECTORS.INSTANCENAME); + if (instance) { + return instance.get('firstChild').get('data'); + } + return null; + } +}; + + +}, '@VERSION@', {"requires": ["node", "moodle-course-util-base"]}); diff --git a/course/yui/build/moodle-course-util-cm/moodle-course-util-cm-min.js b/course/yui/build/moodle-course-util-cm/moodle-course-util-cm-min.js new file mode 100644 index 00000000000..aa486121e04 --- /dev/null +++ b/course/yui/build/moodle-course-util-cm/moodle-course-util-cm-min.js @@ -0,0 +1 @@ +YUI.add("moodle-course-util-cm",function(e,t){e.namespace("Moodle.core_course.util.cm"),e.Moodle.core_course.util.cm={CONSTANTS:{MODULEIDPREFIX:"module-"},SELECTORS:{COURSEMODULE:".activity",INSTANCENAME:".instancename"},getCourseModuleFromComponent:function(t){return e.one(t).ancestor(this.SELECTORS.COURSEMODULE,!0)},getId:function(e){var t=e.get("id").replace(this.CONSTANTS.MODULEIDPREFIX,"");return t=parseInt(t,10),typeof t=="number"&&isFinite(t)?t:!1},getName:function(e){var t=e.one(this.SELECTORS.INSTANCENAME);return t?t.get("firstChild").get("data"):null}}},"@VERSION@",{requires:["node","moodle-course-util-base"]}); diff --git a/course/yui/build/moodle-course-util-cm/moodle-course-util-cm.js b/course/yui/build/moodle-course-util-cm/moodle-course-util-cm.js new file mode 100644 index 00000000000..aef40c5055a --- /dev/null +++ b/course/yui/build/moodle-course-util-cm/moodle-course-util-cm.js @@ -0,0 +1,75 @@ +YUI.add('moodle-course-util-cm', function (Y, NAME) { + +/** + * A collection of utility classes for use with course modules. + * + * @module moodle-course-util + * @submodule moodle-course-util-cm + */ + +Y.namespace('Moodle.core_course.util.cm'); + +/** + * A collection of utility classes for use with course modules. + * + * @class Moodle.core_course.util.cm + * @static + */ +Y.Moodle.core_course.util.cm = { + CONSTANTS: { + MODULEIDPREFIX : 'module-' + }, + SELECTORS: { + COURSEMODULE: '.activity', + INSTANCENAME: '.instancename' + }, + + /** + * Retrieve the course module item from one of it's child Nodes. + * + * @method getCourseModuleNodeFromComponent + * @param coursemodulecomponent {Node} The component Node. + * @return {Node|null} The Course Module Node. + */ + getCourseModuleFromComponent: function(coursemodulecomponent) { + return Y.one(coursemodulecomponent).ancestor(this.SELECTORS.COURSEMODULE, true); + }, + + /** + * Determines the section ID for the provided section. + * + * @method getId + * @param coursemodule {Node} The course module to find an ID for. + * @return {Number|false} The ID of the course module in question or false if no ID was found. + */ + getId: function(coursemodule) { + // We perform a simple substitution operation to get the ID. + var id = coursemodule.get('id').replace( + this.CONSTANTS.MODULEIDPREFIX, ''); + + // Attempt to validate the ID. + id = parseInt(id, 10); + if (typeof id === 'number' && isFinite(id)) { + return id; + } + return false; + }, + + /** + * Determines the section ID for the provided section. + * + * @method getName + * @param coursemodule {Node} The course module to find an ID for. + * @return {Number|false} The ID of the course module in question or false if no ID was found. + */ + getName: function(coursemodule) { + var instance = coursemodule.one(this.SELECTORS.INSTANCENAME); + if (instance) { + return instance.get('firstChild').get('data'); + } + return null; + } +}; + + +}, '@VERSION@', {"requires": ["node", "moodle-course-util-base"]}); diff --git a/course/yui/build/moodle-course-util-section/moodle-course-util-section-debug.js b/course/yui/build/moodle-course-util-section/moodle-course-util-section-debug.js new file mode 100644 index 00000000000..9e38dcb0b4b --- /dev/null +++ b/course/yui/build/moodle-course-util-section/moodle-course-util-section-debug.js @@ -0,0 +1,45 @@ +YUI.add('moodle-course-util-section', function (Y, NAME) { + +/** + * A collection of utility classes for use with course sections. + * + * @module moodle-course-util + * @submodule moodle-course-util-section + */ + +Y.namespace('Moodle.core_course.util.section'); + +/** + * A collection of utility classes for use with course sections. + * + * @class Moodle.core_course.util.section + * @static + */ +Y.Moodle.core_course.util.section = { + CONSTANTS: { + SECTIONIDPREFIX : 'section-' + }, + + /** + * Determines the section ID for the provided section. + * + * @method getId + * @param section {Node} The section to find an ID for. + * @return {Number|false} The ID of the section in question or false if no ID was found. + */ + getId: function(section) { + // We perform a simple substitution operation to get the ID. + var id = section.get('id').replace( + this.CONSTANTS.SECTIONIDPREFIX, ''); + + // Attempt to validate the ID. + id = parseInt(id, 10); + if (typeof id === 'number' && isFinite(id)) { + return id; + } + return false; + } +}; + + +}, '@VERSION@', {"requires": ["node", "moodle-course-util-base"]}); diff --git a/course/yui/build/moodle-course-util-section/moodle-course-util-section-min.js b/course/yui/build/moodle-course-util-section/moodle-course-util-section-min.js new file mode 100644 index 00000000000..fe8775fea43 --- /dev/null +++ b/course/yui/build/moodle-course-util-section/moodle-course-util-section-min.js @@ -0,0 +1 @@ +YUI.add("moodle-course-util-section",function(e,t){e.namespace("Moodle.core_course.util.section"),e.Moodle.core_course.util.section={CONSTANTS:{SECTIONIDPREFIX:"section-"},getId:function(e){var t=e.get("id").replace(this.CONSTANTS.SECTIONIDPREFIX,"");return t=parseInt(t,10),typeof t=="number"&&isFinite(t)?t:!1}}},"@VERSION@",{requires:["node","moodle-course-util-base"]}); diff --git a/course/yui/build/moodle-course-util-section/moodle-course-util-section.js b/course/yui/build/moodle-course-util-section/moodle-course-util-section.js new file mode 100644 index 00000000000..9e38dcb0b4b --- /dev/null +++ b/course/yui/build/moodle-course-util-section/moodle-course-util-section.js @@ -0,0 +1,45 @@ +YUI.add('moodle-course-util-section', function (Y, NAME) { + +/** + * A collection of utility classes for use with course sections. + * + * @module moodle-course-util + * @submodule moodle-course-util-section + */ + +Y.namespace('Moodle.core_course.util.section'); + +/** + * A collection of utility classes for use with course sections. + * + * @class Moodle.core_course.util.section + * @static + */ +Y.Moodle.core_course.util.section = { + CONSTANTS: { + SECTIONIDPREFIX : 'section-' + }, + + /** + * Determines the section ID for the provided section. + * + * @method getId + * @param section {Node} The section to find an ID for. + * @return {Number|false} The ID of the section in question or false if no ID was found. + */ + getId: function(section) { + // We perform a simple substitution operation to get the ID. + var id = section.get('id').replace( + this.CONSTANTS.SECTIONIDPREFIX, ''); + + // Attempt to validate the ID. + id = parseInt(id, 10); + if (typeof id === 'number' && isFinite(id)) { + return id; + } + return false; + } +}; + + +}, '@VERSION@', {"requires": ["node", "moodle-course-util-base"]}); diff --git a/course/yui/src/util/build.json b/course/yui/src/util/build.json new file mode 100644 index 00000000000..4ecd0ab26e7 --- /dev/null +++ b/course/yui/src/util/build.json @@ -0,0 +1,20 @@ +{ + "name": "moodle-course-util", + "builds": { + "moodle-course-util-base": { + "jsfiles": [ + "base.js" + ] + }, + "moodle-course-util-section": { + "jsfiles": [ + "section.js" + ] + }, + "moodle-course-util-cm": { + "jsfiles": [ + "cm.js" + ] + } + } +} diff --git a/course/yui/src/util/js/base.js b/course/yui/src/util/js/base.js new file mode 100644 index 00000000000..4c3240df5f5 --- /dev/null +++ b/course/yui/src/util/js/base.js @@ -0,0 +1,16 @@ +/** + * The Moodle.core_course.util classes provide course-related utility functions. + * + * @module moodle-course-util + * @main + */ + +Y.namespace('Moodle.core_course.util'); + +/** + * A collection of general utility functions for use in course. + * + * @class Moodle.core_course.util + * @static + */ + diff --git a/course/yui/src/util/js/cm.js b/course/yui/src/util/js/cm.js new file mode 100644 index 00000000000..a6884fab3af --- /dev/null +++ b/course/yui/src/util/js/cm.js @@ -0,0 +1,70 @@ +/** + * A collection of utility classes for use with course modules. + * + * @module moodle-course-util + * @submodule moodle-course-util-cm + */ + +Y.namespace('Moodle.core_course.util.cm'); + +/** + * A collection of utility classes for use with course modules. + * + * @class Moodle.core_course.util.cm + * @static + */ +Y.Moodle.core_course.util.cm = { + CONSTANTS: { + MODULEIDPREFIX : 'module-' + }, + SELECTORS: { + COURSEMODULE: '.activity', + INSTANCENAME: '.instancename' + }, + + /** + * Retrieve the course module item from one of it's child Nodes. + * + * @method getCourseModuleNodeFromComponent + * @param coursemodulecomponent {Node} The component Node. + * @return {Node|null} The Course Module Node. + */ + getCourseModuleFromComponent: function(coursemodulecomponent) { + return Y.one(coursemodulecomponent).ancestor(this.SELECTORS.COURSEMODULE, true); + }, + + /** + * Determines the section ID for the provided section. + * + * @method getId + * @param coursemodule {Node} The course module to find an ID for. + * @return {Number|false} The ID of the course module in question or false if no ID was found. + */ + getId: function(coursemodule) { + // We perform a simple substitution operation to get the ID. + var id = coursemodule.get('id').replace( + this.CONSTANTS.MODULEIDPREFIX, ''); + + // Attempt to validate the ID. + id = parseInt(id, 10); + if (typeof id === 'number' && isFinite(id)) { + return id; + } + return false; + }, + + /** + * Determines the section ID for the provided section. + * + * @method getName + * @param coursemodule {Node} The course module to find an ID for. + * @return {Number|false} The ID of the course module in question or false if no ID was found. + */ + getName: function(coursemodule) { + var instance = coursemodule.one(this.SELECTORS.INSTANCENAME); + if (instance) { + return instance.get('firstChild').get('data'); + } + return null; + } +}; diff --git a/course/yui/src/util/js/section.js b/course/yui/src/util/js/section.js new file mode 100644 index 00000000000..1c02f7556b7 --- /dev/null +++ b/course/yui/src/util/js/section.js @@ -0,0 +1,40 @@ +/** + * A collection of utility classes for use with course sections. + * + * @module moodle-course-util + * @submodule moodle-course-util-section + */ + +Y.namespace('Moodle.core_course.util.section'); + +/** + * A collection of utility classes for use with course sections. + * + * @class Moodle.core_course.util.section + * @static + */ +Y.Moodle.core_course.util.section = { + CONSTANTS: { + SECTIONIDPREFIX : 'section-' + }, + + /** + * Determines the section ID for the provided section. + * + * @method getId + * @param section {Node} The section to find an ID for. + * @return {Number|false} The ID of the section in question or false if no ID was found. + */ + getId: function(section) { + // We perform a simple substitution operation to get the ID. + var id = section.get('id').replace( + this.CONSTANTS.SECTIONIDPREFIX, ''); + + // Attempt to validate the ID. + id = parseInt(id, 10); + if (typeof id === 'number' && isFinite(id)) { + return id; + } + return false; + } +}; diff --git a/course/yui/src/util/meta/util.json b/course/yui/src/util/meta/util.json new file mode 100644 index 00000000000..5a35ea2607c --- /dev/null +++ b/course/yui/src/util/meta/util.json @@ -0,0 +1,26 @@ +{ + "moodle-course-util": { + "requires": [ + "node" + ], + "use": [ + "moodle-course-util-base" + ], + "submodules": { + "moodle-course-util-base": { + }, + "moodle-course-util-section": { + "requires": [ + "node", + "moodle-course-util-base" + ] + }, + "moodle-course-util-cm": { + "requires": [ + "node", + "moodle-course-util-base" + ] + } + } + } +} From 9bda17ee6fd248388b8bd40d3a1d4fe05cecebf2 Mon Sep 17 00:00:00 2001 From: Andrew Nicols Date: Sun, 21 Jul 2013 23:30:09 +0100 Subject: [PATCH 015/101] MDL-40811 JavaScript: Use the new moodle-course-util functions --- course/yui/dragdrop/dragdrop.js | 28 +++++----------- course/yui/toolboxes/toolboxes.js | 56 +++++++------------------------ 2 files changed, 20 insertions(+), 64 deletions(-) diff --git a/course/yui/dragdrop/dragdrop.js b/course/yui/dragdrop/dragdrop.js index fc5f88d2e40..5ecb3a87d41 100644 --- a/course/yui/dragdrop/dragdrop.js +++ b/course/yui/dragdrop/dragdrop.js @@ -73,7 +73,7 @@ YUI.add('moodle-course-dragdrop', function(Y) { setup_for_section : function(baseselector) { Y.Node.all(baseselector).each(function(sectionnode) { // Determine the section ID - var sectionid = this.get_section_id(sectionnode); + var sectionid = Y.Moodle.core_course.util.section.getId(sectionnode); // We skip the top section as it is not draggable if (sectionid > 0) { @@ -100,10 +100,6 @@ YUI.add('moodle-course-dragdrop', function(Y) { }, this); }, - get_section_id : function(node) { - return Number(node.get('id').replace(/section-/i, '')); - }, - /* * Drag-dropping related functions */ @@ -135,8 +131,8 @@ YUI.add('moodle-course-dragdrop', function(Y) { var dragnode = drag.get('node'); var dropnode = e.drop.get('node'); // Prepare some variables - var dragnodeid = Number(this.get_section_id(dragnode)); - var dropnodeid = Number(this.get_section_id(dropnode)); + var dragnodeid = Number(Y.Moodle.core_course.util.section.getId(dragnode)); + var dropnodeid = Number(Y.Moodle.core_course.util.section.getId(dropnode)); var loopstart = dragnodeid; var loopend = dropnodeid; @@ -195,7 +191,7 @@ YUI.add('moodle-course-dragdrop', function(Y) { do { var swapped = false; for (var i = loopstart; i <= loopend; i++) { - if (this.get_section_id(sectionlist.item(i-1)) > this.get_section_id(sectionlist.item(i))) { + if (Y.Moodle.core_course.util.section.getId(sectionlist.item(i-1)) > Y.Moodle.core_course.util.section.getId(sectionlist.item(i))) { // Swap section id var sectionid = sectionlist.item(i-1).get('id'); sectionlist.item(i-1).set('id', sectionlist.item(i).get('id')); @@ -323,14 +319,6 @@ YUI.add('moodle-course-dragdrop', function(Y) { }, this); }, - get_section_id : function(node) { - return Number(node.get('id').replace(/section-/i, '')); - }, - - get_resource_id : function(node) { - return Number(node.get('id').replace(/module-/i, '')); - }, - drag_start : function(e) { // Get our drag object var drag = e.target; @@ -367,11 +355,11 @@ YUI.add('moodle-course-dragdrop', function(Y) { params.courseId = this.get('courseid'); params['class'] = 'resource'; params.field = 'move'; - params.id = Number(this.get_resource_id(dragnode)); - params.sectionId = this.get_section_id(dropnode.ancestor(M.course.format.get_section_wrapper(Y), true)); + params.id = Number(Y.Moodle.core_course.util.cm.getId(dragnode)); + params.sectionId = Y.Moodle.core_course.util.section.getId(dropnode.ancestor(M.course.format.get_section_wrapper(Y), true)); if (dragnode.next()) { - params.beforeId = Number(this.get_resource_id(dragnode.next())); + params.beforeId = Number(Y.Moodle.core_course.util.cm.getId(dragnode.next())); } // Do AJAX request @@ -426,4 +414,4 @@ YUI.add('moodle-course-dragdrop', function(Y) { M.course.init_section_dragdrop = function(params) { new DRAGSECTION(params); } -}, '@VERSION@', {requires:['base', 'node', 'io', 'dom', 'dd', 'dd-scroll', 'moodle-core-dragdrop', 'moodle-core-notification', 'moodle-course-coursebase']}); +}, '@VERSION@', {requires:['base', 'node', 'io', 'dom', 'dd', 'dd-scroll', 'moodle-core-dragdrop', 'moodle-core-notification', 'moodle-course-coursebase', 'moodle-course-util']}); diff --git a/course/yui/toolboxes/toolboxes.js b/course/yui/toolboxes/toolboxes.js index 2b160b8710e..545d696c96e 100644 --- a/course/yui/toolboxes/toolboxes.js +++ b/course/yui/toolboxes/toolboxes.js @@ -123,38 +123,6 @@ YUI.add('moodle-course-toolboxes', function(Y) { // Send the request Y.io(uri, config); return responsetext; - }, - /** - * Return the name of the activity instance - * - * If activity has no name (for example label) null is returned - * - * @param element The
  • element to determine a name for - * @return string|null Instance name - */ - get_instance_name : function(target) { - if (target.one(SELECTOR.INSTANCENAME)) { - return target.one(SELECTOR.INSTANCENAME).get('firstChild').get('data'); - } - return null; - }, - /** - * Return the module ID for the specified element - * - * @param element The
  • element to determine a module-id number for - * @return string The module ID - */ - get_element_id : function(element) { - return element.get('id').replace(CSS.MODULEIDPREFIX, ''); - }, - /** - * Return the module ID for the specified element - * - * @param element The
  • element to determine a module-id number for - * @return string The module ID - */ - get_section_id : function(section) { - return section.get('id').replace(CSS.SECTIONIDPREFIX, ''); } }, { @@ -343,7 +311,7 @@ YUI.add('moodle-course-toolboxes', function(Y) { 'class' : 'resource', 'field' : 'indent', 'value' : newindent, - 'id' : this.get_element_id(activity) + 'id' : Y.Moodle.core_course.util.cm.getId(activity) }; var commands = activity.one(SELECTOR.COMMANDSPAN); var spinner = M.util.add_spinner(Y, commands).setStyles({ @@ -395,8 +363,8 @@ YUI.add('moodle-course-toolboxes', function(Y) { var plugindata = { type : M.util.get_string('pluginname', element.getAttribute('class').match(/modtype_([^\s]*)/)[1]) } - if (this.get_instance_name(element) != null) { - plugindata.name = this.get_instance_name(element) + if (Y.Moodle.core_course.util.cm.getName(element) != null) { + plugindata.name = Y.Moodle.core_course.util.cm.getName(element) confirmstring = M.util.get_string('deletechecktypename', 'moodle', plugindata); } else { confirmstring = M.util.get_string('deletechecktype', 'moodle', plugindata) @@ -412,7 +380,7 @@ YUI.add('moodle-course-toolboxes', function(Y) { var data = { 'class' : 'resource', 'action' : 'DELETE', - 'id' : this.get_element_id(element) + 'id' : Y.Moodle.core_course.util.cm.getId(element) }; this.send_request(data); if (M.core.actionmenu && M.core.actionmenu.instance) { @@ -450,7 +418,7 @@ YUI.add('moodle-course-toolboxes', function(Y) { 'class' : 'resource', 'field' : 'visible', 'value' : value, - 'id' : this.get_element_id(element) + 'id' : Y.Moodle.core_course.util.cm.getId(element) }; var spinner = M.util.add_spinner(Y, element.one(SELECTOR.COMMANDSPAN)); this.send_request(data, spinner); @@ -484,7 +452,7 @@ YUI.add('moodle-course-toolboxes', function(Y) { button.setData('action', newstatus); // If activity is conditionally hidden, then don't toggle. - if (this.get_instance_name(activity) == null) { + if (Y.Moodle.core_course.util.cm.getName(activity) == null) { toggleclass = CSS.DIMMEDTEXT; dimarea = activity.all(SELECTOR.MODINDENTDIV + ' > div').item(1); } @@ -554,7 +522,7 @@ YUI.add('moodle-course-toolboxes', function(Y) { 'class' : 'resource', 'field' : 'groupmode', 'value' : groupmode, - 'id' : this.get_element_id(activity) + 'id' : Y.Moodle.core_course.util.cm.getId(activity) }; spinner = M.util.add_spinner(Y, activity.one(SELECTOR.COMMANDSPAN)); @@ -575,7 +543,7 @@ YUI.add('moodle-course-toolboxes', function(Y) { */ edit_title : function(ev, button, activity) { // Get the element we're working on - var activityid = this.get_element_id(activity), + var activityid = Y.Moodle.core_course.util.cm.getId(activity), instancename = activity.one(SELECTOR.INSTANCENAME), currenttitle = instancename.get('firstChild'), oldtitle = currenttitle.get('data'), @@ -652,7 +620,7 @@ YUI.add('moodle-course-toolboxes', function(Y) { 'class' : 'resource', 'field' : 'updatetitle', 'title' : newtitle, - 'id' : this.get_element_id(activity) + 'id' : Y.Moodle.core_course.util.cm.getId(activity) }; var response = this.send_request(data, spinner); if (response.instancename) { @@ -811,7 +779,7 @@ YUI.add('moodle-course-toolboxes', function(Y) { var data = { 'class' : 'section', 'field' : 'visible', - 'id' : this.get_section_id(section.ancestor(M.course.format.get_section_wrapper(Y), true)), + 'id' : Y.Moodle.core_course.util.section.getId(section.ancestor(M.course.format.get_section_wrapper(Y), true)), 'value' : value }; @@ -827,7 +795,7 @@ YUI.add('moodle-course-toolboxes', function(Y) { } else { var button = node.one(SELECTOR.HIDE); } - var activityid = this.get_element_id(node); + var activityid = Y.Moodle.core_course.util.cm.getId(node); if (Y.Array.indexOf(response.resourcestotoggle, activityid) != -1) { node.getData('toolbox').handle_resource_dim(button, node, oldstatus); @@ -864,7 +832,7 @@ YUI.add('moodle-course-toolboxes', function(Y) { // Then add it if required to the selected section if (!togglestatus) { section.addClass('current'); - value = this.get_section_id(section.ancestor(M.course.format.get_section_wrapper(Y), true)); + value = Y.Moodle.core_course.util.section.getId(section.ancestor(M.course.format.get_section_wrapper(Y), true)); var new_string = M.util.get_string('markedthistopic', 'moodle'); button .set('title', new_string); From 97f4bad867c97e379e97eda8534baf5c87d274e3 Mon Sep 17 00:00:00 2001 From: Andrew Robert Nicols Date: Fri, 1 Mar 2013 20:45:40 +0000 Subject: [PATCH 016/101] MDL-38286 JavaScript: Include a YUIDoc configuration for Moodle To build documentation run: yuidoc --- lib/yui/common/yuidoc.json | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 lib/yui/common/yuidoc.json diff --git a/lib/yui/common/yuidoc.json b/lib/yui/common/yuidoc.json new file mode 100644 index 00000000000..1203b2c64cf --- /dev/null +++ b/lib/yui/common/yuidoc.json @@ -0,0 +1,15 @@ +{ + "name": "Moodle", + "description": "YUI documentation for Moodle", + "url": "https://moodle.org", + "options": { + "external": { + "data": "http://yuilibrary.com/yui/docs/api/data.json" + }, + "linkNatives": true, + "attributesEmit": "true", + "selleck": "true", + "outdir": "../yuidocs", + "paths": "**/yui/src/*" + } +} From 0f142ea0a8e96d824c91f3918c52f66bd7fc9266 Mon Sep 17 00:00:00 2001 From: Ankit Agarwal Date: Tue, 17 Sep 2013 15:14:19 +0800 Subject: [PATCH 017/101] MDL-41833 feedback: Fix setType() warning when deleting a response in feedback --- mod/feedback/delete_completed_form.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mod/feedback/delete_completed_form.php b/mod/feedback/delete_completed_form.php index a0f677dce99..3c3f513bce6 100644 --- a/mod/feedback/delete_completed_form.php +++ b/mod/feedback/delete_completed_form.php @@ -37,7 +37,7 @@ class mod_feedback_delete_completed_form extends moodleform { $mform->addElement('hidden', 'id'); $mform->setType('id', PARAM_INT); $mform->addElement('hidden', 'completedid'); - $mform->setType('completeid', PARAM_INT); + $mform->setType('completedid', PARAM_INT); $mform->addElement('hidden', 'do_show'); $mform->setType('do_show', PARAM_INT); $mform->addElement('hidden', 'confirmdelete'); From e9c56bce025bbc0b7332429bf7e08a34d9dd3f79 Mon Sep 17 00:00:00 2001 From: Barbara Ramiro Date: Tue, 17 Sep 2013 15:19:48 +0800 Subject: [PATCH 018/101] MDL-41713 usability - new icons for Atto editor from TinyMCE Theme --- pix/e/abbr.png | Bin 0 -> 316 bytes pix/e/abbr.svg | 20 ++++++++++++++++ pix/e/absolute.png | Bin 0 -> 180 bytes pix/e/absolute.svg | 14 +++++++++++ pix/e/acronym.png | Bin 0 -> 316 bytes pix/e/acronym.svg | 24 +++++++++++++++++++ pix/e/advance_hr.png | Bin 0 -> 149 bytes pix/e/advance_hr.svg | 13 +++++++++++ pix/e/align_center.png | Bin 0 -> 159 bytes pix/e/align_center.svg | 13 +++++++++++ pix/e/align_left.png | Bin 0 -> 151 bytes pix/e/align_left.svg | 13 +++++++++++ pix/e/align_right.png | Bin 0 -> 151 bytes pix/e/align_right.svg | 13 +++++++++++ pix/e/anchor.png | Bin 0 -> 209 bytes pix/e/anchor.svg | 13 +++++++++++ pix/e/backward.png | Bin 0 -> 230 bytes pix/e/backward.svg | 15 ++++++++++++ pix/e/bold.png | Bin 0 -> 309 bytes pix/e/bold.svg | 16 +++++++++++++ pix/e/bullet_list.png | Bin 0 -> 203 bytes pix/e/bullet_list.svg | 17 ++++++++++++++ pix/e/cell_props.png | Bin 0 -> 166 bytes pix/e/cell_props.svg | 14 +++++++++++ pix/e/cite.png | Bin 0 -> 285 bytes pix/e/cite.svg | 20 ++++++++++++++++ pix/e/cleanup_messy_code.png | Bin 0 -> 313 bytes pix/e/cleanup_messy_code.svg | 15 ++++++++++++ pix/e/clear_formatting.png | Bin 0 -> 328 bytes pix/e/clear_formatting.svg | 14 +++++++++++ pix/e/copy.png | Bin 0 -> 249 bytes pix/e/copy.svg | 14 +++++++++++ pix/e/cut.png | Bin 0 -> 389 bytes pix/e/cut.svg | 23 ++++++++++++++++++ pix/e/decrease_indent.png | Bin 0 -> 205 bytes pix/e/decrease_indent.svg | 13 +++++++++++ pix/e/delete.png | Bin 0 -> 310 bytes pix/e/delete.svg | 17 ++++++++++++++ pix/e/delete_col.png | Bin 0 -> 211 bytes pix/e/delete_col.svg | 13 +++++++++++ pix/e/delete_row.png | Bin 0 -> 200 bytes pix/e/delete_row.svg | 13 +++++++++++ pix/e/delete_table.png | Bin 0 -> 303 bytes pix/e/delete_table.svg | 15 ++++++++++++ pix/e/document_properties.png | Bin 0 -> 369 bytes pix/e/document_properties.svg | 16 +++++++++++++ pix/e/dragmath.png | Bin 0 -> 373 bytes pix/e/dragmath.svg | 16 +++++++++++++ pix/e/emoticons.png | Bin 0 -> 396 bytes pix/e/emoticons.svg | 20 ++++++++++++++++ pix/e/find_replace.png | Bin 0 -> 398 bytes pix/e/find_replace.svg | 35 ++++++++++++++++++++++++++++ pix/e/forward.png | Bin 0 -> 209 bytes pix/e/forward.svg | 14 +++++++++++ pix/e/fullpage.png | Bin 0 -> 343 bytes pix/e/fullpage.svg | 18 ++++++++++++++ pix/e/fullscreen.png | Bin 0 -> 314 bytes pix/e/fullscreen.svg | 14 +++++++++++ pix/e/help.png | Bin 0 -> 378 bytes pix/e/help.svg | 17 ++++++++++++++ pix/e/increase_indent.png | Bin 0 -> 211 bytes pix/e/increase_indent.svg | 13 +++++++++++ pix/e/insert.png | Bin 0 -> 315 bytes pix/e/insert.svg | 16 +++++++++++++ pix/e/insert_col_after.png | Bin 0 -> 203 bytes pix/e/insert_col_after.svg | 14 +++++++++++ pix/e/insert_col_before.png | Bin 0 -> 209 bytes pix/e/insert_col_before.svg | 14 +++++++++++ pix/e/insert_date.png | Bin 0 -> 179 bytes pix/e/insert_date.svg | 14 +++++++++++ pix/e/insert_edit_image.png | Bin 0 -> 298 bytes pix/e/insert_edit_image.svg | 15 ++++++++++++ pix/e/insert_edit_link.png | Bin 0 -> 345 bytes pix/e/insert_edit_link.svg | 21 +++++++++++++++++ pix/e/insert_edit_video.png | Bin 0 -> 264 bytes pix/e/insert_edit_video.svg | 14 +++++++++++ pix/e/insert_file.png | Bin 0 -> 350 bytes pix/e/insert_file.svg | 18 ++++++++++++++ pix/e/insert_horizontal_ruler.png | Bin 0 -> 134 bytes pix/e/insert_horizontal_ruler.svg | 13 +++++++++++ pix/e/insert_nonbreaking_space.png | Bin 0 -> 187 bytes pix/e/insert_nonbreaking_space.svg | 13 +++++++++++ pix/e/insert_row_after.png | Bin 0 -> 213 bytes pix/e/insert_row_after.svg | 14 +++++++++++ pix/e/insert_row_before.png | Bin 0 -> 216 bytes pix/e/insert_row_before.svg | 14 +++++++++++ pix/e/insert_time.png | Bin 0 -> 443 bytes pix/e/insert_time.svg | 17 ++++++++++++++ pix/e/italic.png | Bin 0 -> 312 bytes pix/e/italic.svg | 13 +++++++++++ pix/e/justify.png | Bin 0 -> 133 bytes pix/e/justify.svg | 13 +++++++++++ pix/e/layers.png | Bin 0 -> 302 bytes pix/e/layers.svg | 14 +++++++++++ pix/e/layers_over.png | Bin 0 -> 316 bytes pix/e/layers_over.svg | 14 +++++++++++ pix/e/layers_under.png | Bin 0 -> 299 bytes pix/e/layers_under.svg | 14 +++++++++++ pix/e/left_to_right.png | Bin 0 -> 278 bytes pix/e/left_to_right.svg | 14 +++++++++++ pix/e/manage_files.png | Bin 0 -> 295 bytes pix/e/manage_files.svg | 18 ++++++++++++++ pix/e/merge_cells.png | Bin 0 -> 185 bytes pix/e/merge_cells.svg | 13 +++++++++++ pix/e/new_document.png | Bin 0 -> 240 bytes pix/e/new_document.svg | 17 ++++++++++++++ pix/e/numbered_list.png | Bin 0 -> 254 bytes pix/e/numbered_list.svg | 14 +++++++++++ pix/e/page_break.png | Bin 0 -> 201 bytes pix/e/page_break.svg | 14 +++++++++++ pix/e/paste.png | Bin 0 -> 265 bytes pix/e/paste.svg | 15 ++++++++++++ pix/e/paste_text.png | Bin 0 -> 292 bytes pix/e/paste_text.svg | 17 ++++++++++++++ pix/e/paste_word.png | Bin 0 -> 322 bytes pix/e/paste_word.svg | 19 +++++++++++++++ pix/e/prevent_autolink.png | Bin 0 -> 399 bytes pix/e/prevent_autolink.svg | 20 ++++++++++++++++ pix/e/preview.png | Bin 0 -> 369 bytes pix/e/preview.svg | 21 +++++++++++++++++ pix/e/print.png | Bin 0 -> 202 bytes pix/e/print.svg | 16 +++++++++++++ pix/e/question.png | Bin 0 -> 272 bytes pix/e/question.svg | 14 +++++++++++ pix/e/redo.png | Bin 0 -> 289 bytes pix/e/redo.svg | 15 ++++++++++++ pix/e/remove_link.png | Bin 0 -> 397 bytes pix/e/remove_link.svg | 21 +++++++++++++++++ pix/e/resize.png | Bin 0 -> 205 bytes pix/e/resize.svg | 16 +++++++++++++ pix/e/restore_draft.png | Bin 0 -> 319 bytes pix/e/restore_draft.svg | 15 ++++++++++++ pix/e/restore_last_draft.png | Bin 0 -> 348 bytes pix/e/restore_last_draft.svg | 15 ++++++++++++ pix/e/right_to_left.png | Bin 0 -> 287 bytes pix/e/right_to_left.svg | 14 +++++++++++ pix/e/row_props.png | Bin 0 -> 155 bytes pix/e/row_props.svg | 14 +++++++++++ pix/e/save.png | Bin 0 -> 187 bytes pix/e/save.svg | 13 +++++++++++ pix/e/search.png | Bin 0 -> 215 bytes pix/e/search.svg | 20 ++++++++++++++++ pix/e/select_all.png | Bin 0 -> 410 bytes pix/e/select_all.svg | 27 +++++++++++++++++++++ pix/e/show_invisible_characters.png | Bin 0 -> 220 bytes pix/e/show_invisible_characters.svg | 14 +++++++++++ pix/e/source_code.png | Bin 0 -> 241 bytes pix/e/source_code.svg | 13 +++++++++++ pix/e/special_character.png | Bin 0 -> 363 bytes pix/e/special_character.svg | 16 +++++++++++++ pix/e/spellcheck.png | Bin 0 -> 306 bytes pix/e/spellcheck.svg | 16 +++++++++++++ pix/e/split_cells.png | Bin 0 -> 212 bytes pix/e/split_cells.svg | 14 +++++++++++ pix/e/strikethrough.png | Bin 0 -> 313 bytes pix/e/strikethrough.svg | 17 ++++++++++++++ pix/e/styleprops.png | Bin 0 -> 312 bytes pix/e/styleprops.svg | 14 +++++++++++ pix/e/subscript.png | Bin 0 -> 316 bytes pix/e/subscript.svg | 14 +++++++++++ pix/e/superscript.png | Bin 0 -> 336 bytes pix/e/superscript.svg | 14 +++++++++++ pix/e/table.png | Bin 0 -> 153 bytes pix/e/table.svg | 14 +++++++++++ pix/e/table_props.png | Bin 0 -> 291 bytes pix/e/table_props.svg | 15 ++++++++++++ pix/e/template.png | Bin 0 -> 209 bytes pix/e/template.svg | 15 ++++++++++++ pix/e/text_color.png | Bin 0 -> 302 bytes pix/e/text_color.svg | 14 +++++++++++ pix/e/text_highlight.png | Bin 0 -> 309 bytes pix/e/text_highlight.svg | 14 +++++++++++ pix/e/tick.png | Bin 0 -> 274 bytes pix/e/tick.svg | 13 +++++++++++ pix/e/toggle_blockquote.png | Bin 0 -> 290 bytes pix/e/toggle_blockquote.svg | 16 +++++++++++++ pix/e/underline.png | Bin 0 -> 256 bytes pix/e/underline.svg | 15 ++++++++++++ pix/e/undo.png | Bin 0 -> 298 bytes pix/e/undo.svg | 15 ++++++++++++ pix/e/visual_aid.png | Bin 0 -> 179 bytes pix/e/visual_aid.svg | 14 +++++++++++ pix/e/visual_blocks.png | Bin 0 -> 382 bytes pix/e/visual_blocks.svg | 22 +++++++++++++++++ 184 files changed, 1451 insertions(+) create mode 100644 pix/e/abbr.png create mode 100644 pix/e/abbr.svg create mode 100644 pix/e/absolute.png create mode 100644 pix/e/absolute.svg create mode 100644 pix/e/acronym.png create mode 100644 pix/e/acronym.svg create mode 100644 pix/e/advance_hr.png create mode 100644 pix/e/advance_hr.svg create mode 100644 pix/e/align_center.png create mode 100644 pix/e/align_center.svg create mode 100644 pix/e/align_left.png create mode 100644 pix/e/align_left.svg create mode 100644 pix/e/align_right.png create mode 100644 pix/e/align_right.svg create mode 100644 pix/e/anchor.png create mode 100644 pix/e/anchor.svg create mode 100644 pix/e/backward.png create mode 100644 pix/e/backward.svg create mode 100644 pix/e/bold.png create mode 100644 pix/e/bold.svg create mode 100644 pix/e/bullet_list.png create mode 100644 pix/e/bullet_list.svg create mode 100644 pix/e/cell_props.png create mode 100644 pix/e/cell_props.svg create mode 100644 pix/e/cite.png create mode 100644 pix/e/cite.svg create mode 100644 pix/e/cleanup_messy_code.png create mode 100644 pix/e/cleanup_messy_code.svg create mode 100644 pix/e/clear_formatting.png create mode 100644 pix/e/clear_formatting.svg create mode 100644 pix/e/copy.png create mode 100644 pix/e/copy.svg create mode 100644 pix/e/cut.png create mode 100644 pix/e/cut.svg create mode 100644 pix/e/decrease_indent.png create mode 100644 pix/e/decrease_indent.svg create mode 100644 pix/e/delete.png create mode 100644 pix/e/delete.svg create mode 100644 pix/e/delete_col.png create mode 100644 pix/e/delete_col.svg create mode 100644 pix/e/delete_row.png create mode 100644 pix/e/delete_row.svg create mode 100644 pix/e/delete_table.png create mode 100644 pix/e/delete_table.svg create mode 100644 pix/e/document_properties.png create mode 100644 pix/e/document_properties.svg create mode 100644 pix/e/dragmath.png create mode 100644 pix/e/dragmath.svg create mode 100644 pix/e/emoticons.png create mode 100644 pix/e/emoticons.svg create mode 100644 pix/e/find_replace.png create mode 100644 pix/e/find_replace.svg create mode 100644 pix/e/forward.png create mode 100644 pix/e/forward.svg create mode 100644 pix/e/fullpage.png create mode 100644 pix/e/fullpage.svg create mode 100644 pix/e/fullscreen.png create mode 100644 pix/e/fullscreen.svg create mode 100644 pix/e/help.png create mode 100644 pix/e/help.svg create mode 100644 pix/e/increase_indent.png create mode 100644 pix/e/increase_indent.svg create mode 100644 pix/e/insert.png create mode 100644 pix/e/insert.svg create mode 100644 pix/e/insert_col_after.png create mode 100644 pix/e/insert_col_after.svg create mode 100644 pix/e/insert_col_before.png create mode 100644 pix/e/insert_col_before.svg create mode 100644 pix/e/insert_date.png create mode 100644 pix/e/insert_date.svg create mode 100644 pix/e/insert_edit_image.png create mode 100644 pix/e/insert_edit_image.svg create mode 100644 pix/e/insert_edit_link.png create mode 100644 pix/e/insert_edit_link.svg create mode 100644 pix/e/insert_edit_video.png create mode 100644 pix/e/insert_edit_video.svg create mode 100644 pix/e/insert_file.png create mode 100644 pix/e/insert_file.svg create mode 100644 pix/e/insert_horizontal_ruler.png create mode 100644 pix/e/insert_horizontal_ruler.svg create mode 100644 pix/e/insert_nonbreaking_space.png create mode 100644 pix/e/insert_nonbreaking_space.svg create mode 100644 pix/e/insert_row_after.png create mode 100644 pix/e/insert_row_after.svg create mode 100644 pix/e/insert_row_before.png create mode 100644 pix/e/insert_row_before.svg create mode 100644 pix/e/insert_time.png create mode 100644 pix/e/insert_time.svg create mode 100644 pix/e/italic.png create mode 100644 pix/e/italic.svg create mode 100644 pix/e/justify.png create mode 100644 pix/e/justify.svg create mode 100644 pix/e/layers.png create mode 100644 pix/e/layers.svg create mode 100644 pix/e/layers_over.png create mode 100644 pix/e/layers_over.svg create mode 100644 pix/e/layers_under.png create mode 100644 pix/e/layers_under.svg create mode 100644 pix/e/left_to_right.png create mode 100644 pix/e/left_to_right.svg create mode 100644 pix/e/manage_files.png create mode 100644 pix/e/manage_files.svg create mode 100644 pix/e/merge_cells.png create mode 100644 pix/e/merge_cells.svg create mode 100644 pix/e/new_document.png create mode 100644 pix/e/new_document.svg create mode 100644 pix/e/numbered_list.png create mode 100644 pix/e/numbered_list.svg create mode 100644 pix/e/page_break.png create mode 100644 pix/e/page_break.svg create mode 100644 pix/e/paste.png create mode 100644 pix/e/paste.svg create mode 100644 pix/e/paste_text.png create mode 100644 pix/e/paste_text.svg create mode 100644 pix/e/paste_word.png create mode 100644 pix/e/paste_word.svg create mode 100644 pix/e/prevent_autolink.png create mode 100644 pix/e/prevent_autolink.svg create mode 100644 pix/e/preview.png create mode 100644 pix/e/preview.svg create mode 100644 pix/e/print.png create mode 100644 pix/e/print.svg create mode 100644 pix/e/question.png create mode 100644 pix/e/question.svg create mode 100644 pix/e/redo.png create mode 100644 pix/e/redo.svg create mode 100644 pix/e/remove_link.png create mode 100644 pix/e/remove_link.svg create mode 100644 pix/e/resize.png create mode 100644 pix/e/resize.svg create mode 100644 pix/e/restore_draft.png create mode 100644 pix/e/restore_draft.svg create mode 100644 pix/e/restore_last_draft.png create mode 100644 pix/e/restore_last_draft.svg create mode 100644 pix/e/right_to_left.png create mode 100644 pix/e/right_to_left.svg create mode 100644 pix/e/row_props.png create mode 100644 pix/e/row_props.svg create mode 100644 pix/e/save.png create mode 100644 pix/e/save.svg create mode 100644 pix/e/search.png create mode 100644 pix/e/search.svg create mode 100644 pix/e/select_all.png create mode 100644 pix/e/select_all.svg create mode 100644 pix/e/show_invisible_characters.png create mode 100644 pix/e/show_invisible_characters.svg create mode 100644 pix/e/source_code.png create mode 100644 pix/e/source_code.svg create mode 100644 pix/e/special_character.png create mode 100644 pix/e/special_character.svg create mode 100644 pix/e/spellcheck.png create mode 100644 pix/e/spellcheck.svg create mode 100644 pix/e/split_cells.png create mode 100644 pix/e/split_cells.svg create mode 100644 pix/e/strikethrough.png create mode 100644 pix/e/strikethrough.svg create mode 100644 pix/e/styleprops.png create mode 100644 pix/e/styleprops.svg create mode 100644 pix/e/subscript.png create mode 100644 pix/e/subscript.svg create mode 100644 pix/e/superscript.png create mode 100644 pix/e/superscript.svg create mode 100644 pix/e/table.png create mode 100644 pix/e/table.svg create mode 100644 pix/e/table_props.png create mode 100644 pix/e/table_props.svg create mode 100644 pix/e/template.png create mode 100644 pix/e/template.svg create mode 100644 pix/e/text_color.png create mode 100644 pix/e/text_color.svg create mode 100644 pix/e/text_highlight.png create mode 100644 pix/e/text_highlight.svg create mode 100644 pix/e/tick.png create mode 100644 pix/e/tick.svg create mode 100644 pix/e/toggle_blockquote.png create mode 100644 pix/e/toggle_blockquote.svg create mode 100644 pix/e/underline.png create mode 100644 pix/e/underline.svg create mode 100644 pix/e/undo.png create mode 100644 pix/e/undo.svg create mode 100644 pix/e/visual_aid.png create mode 100644 pix/e/visual_aid.svg create mode 100644 pix/e/visual_blocks.png create mode 100644 pix/e/visual_blocks.svg diff --git a/pix/e/abbr.png b/pix/e/abbr.png new file mode 100644 index 0000000000000000000000000000000000000000..93c2f08a59f5556dd90f031e9ff4b91aa9e8f956 GIT binary patch literal 316 zcmV-C0mJ@@P)TD;-D)y!nV7UdiS&O=fG%$QHE# zoOl8WhVvZxB zuu)y~V{J^;(3j}Ak&7`bx)Rleb7lq)LJVBhJm6xaye0hizYt9D5?}zg)ktl{=C O0000 + + +]> + + + + + diff --git a/pix/e/absolute.png b/pix/e/absolute.png new file mode 100644 index 0000000000000000000000000000000000000000..acd5351d3df194ced19b72c0d63ce8e04ad6d2d3 GIT binary patch literal 180 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X!aQ9ZLn>}1{rUgjo|)&&EK}|?p5ETcDGEXch5;NJW(|eU z&dmJ(QB&cG?5S9XOodGkCNW4|V_5Qv^F{uV=dD#rG6CnEyc&4Vl^A3()G + + +]> + + + + + diff --git a/pix/e/acronym.png b/pix/e/acronym.png new file mode 100644 index 0000000000000000000000000000000000000000..73488d8a6d70193710f2c24c17ba03b6c43e4e3d GIT binary patch literal 316 zcmV-C0mJ@@P)qJq z$g$%VSgCebgA(;pla!_bN4i9l#OCF1BD6KH8`9{|WMrDijM}_`v)0AeD@ZW1kD4Nv z4%TIokcF;Mnc%#F>-(NXkBtoy6lkxGxj3GYcwUp3(82w`@^XTY00RKHky1M`M(a=j O0000 + + +]> + + + + + diff --git a/pix/e/advance_hr.png b/pix/e/advance_hr.png new file mode 100644 index 0000000000000000000000000000000000000000..1fcaf187af3a3fa20691b78d4680d32d12f9b234 GIT binary patch literal 149 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X%spKkLn>}1{rUgjo>{e_v(d?bhbLi + + +]> + + + + + diff --git a/pix/e/align_center.png b/pix/e/align_center.png new file mode 100644 index 0000000000000000000000000000000000000000..2d762661d1407995127b5a12ed51f93f2efe024a GIT binary patch literal 159 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X96eneLn>}1{rUgjo>{da_1l}9A~O#haZpTPOmg?)NoZ+h zyr9kJkY#T;D=0Wva^*ADV+-ZEMXD1`#Mqj}8JKt&j3=t@b6l+|2Q-Yq)78&qol`;+ E01xaiEC2ui literal 0 HcmV?d00001 diff --git a/pix/e/align_center.svg b/pix/e/align_center.svg new file mode 100644 index 00000000000..b83716fbaf8 --- /dev/null +++ b/pix/e/align_center.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/align_left.png b/pix/e/align_left.png new file mode 100644 index 0000000000000000000000000000000000000000..1d87f1cfd3e717c9cae4ad15a5a7f0e1f8d59d04 GIT binary patch literal 151 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XEInNuLn>}1{rUgjo>{da_1l}9A~O#haZpTPOmg?)z2V<; x=*pE4w^;xLZ;OXk;vd$@?2>?fnG%)}G literal 0 HcmV?d00001 diff --git a/pix/e/align_left.svg b/pix/e/align_left.svg new file mode 100644 index 00000000000..5f86b67b0ad --- /dev/null +++ b/pix/e/align_left.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/align_right.png b/pix/e/align_right.png new file mode 100644 index 0000000000000000000000000000000000000000..113b73568d1d8a8b67d70cc2552c2ebe35b68cab GIT binary patch literal 151 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XEInNuLn>}1{rUgjo>{da_1l}9A~O#haZpTPOmg?)NjM_P wcBHB|N#B6)Z^VK-+&fgFVdQ&MBb@0M%tMxc~qF literal 0 HcmV?d00001 diff --git a/pix/e/align_right.svg b/pix/e/align_right.svg new file mode 100644 index 00000000000..12e1c583e7c --- /dev/null +++ b/pix/e/align_right.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/anchor.png b/pix/e/anchor.png new file mode 100644 index 0000000000000000000000000000000000000000..ce92365e1e2e1c02f8ce54ee19eb4ace5151cc09 GIT binary patch literal 209 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XialK%Ln>}1{rUgjo|)&&JX`652bqI{gC!Gl#A+tpVA!SV z!z0oZ$jr8v@qmRnL*gc$hAbO~LqB*Dl@?Soi##@IVV$3ru*t8XOSeJlkwXu6fQj>G zccwF{Mr)V3;yDvEtgANbU(gZy4;7YG7bym|Yn6HR;9AdZ6_Tp00i_>zopr E02aPSasU7T literal 0 HcmV?d00001 diff --git a/pix/e/anchor.svg b/pix/e/anchor.svg new file mode 100644 index 00000000000..9e0454062f8 --- /dev/null +++ b/pix/e/anchor.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/backward.png b/pix/e/backward.png new file mode 100644 index 0000000000000000000000000000000000000000..eef5fb23c47a20a3d13491a5ab2463e69a7d9748 GIT binary patch literal 230 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XIy_w*Ln>}1&9N*_V`gS{wq-6{V5qCRmNBxSljSVWjVqfJ zHi|R(`X5-9eQix7cSDGcnWdTp^Yk>QA|DN8SJ|O~ aks)19&4i + + +]> + + + + + diff --git a/pix/e/bold.png b/pix/e/bold.png new file mode 100644 index 0000000000000000000000000000000000000000..0f9b1cf4fe97d18894923af7d64b900f6ae5d2a6 GIT binary patch literal 309 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xu6w#ThE&{2`t$$4Ju}CddA7e9CTvPSz-PzwvE|B@D{Lj4 zYHW`f>;qa`PVdQVzA=shrl-u4|u|SdUh{OkmCou|o44Zf_JQ4Ev#B^Z-d&ar| zg_8^mCW|geWGI*2WW&u@%M`G`$z*Z+AI2n}3+#{n-e3}cv6S_Ri!#rN#qO$l%z8{4 zl||T{ex3-N>2QKuzQND7L1co$w`!HjfFC*vx40b++b!7X)VRc;!ELFXnPp5|07F)j z>wJc)SIw64^BF%aIMeL>PN67dl2EVwLP;HlNCAZd3<>`BXMPpmS`YLhgQu&X%Q~lo FCIF1RZ`c3; literal 0 HcmV?d00001 diff --git a/pix/e/bold.svg b/pix/e/bold.svg new file mode 100644 index 00000000000..dc5f365a9c7 --- /dev/null +++ b/pix/e/bold.svg @@ -0,0 +1,16 @@ + + + +]> + + + + + diff --git a/pix/e/bullet_list.png b/pix/e/bullet_list.png new file mode 100644 index 0000000000000000000000000000000000000000..2335cd236d8afe99ec3656a46798b9e07d748155 GIT binary patch literal 203 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xay?xfLn>}1%{0vpV`64L%)-W@;o<8W%aC+tp6%_%Mvena zSI_W2^=HVs!(j4+dBWcL63jC$ur8R@$)+GKqEO9vQo${WC*jZk|MtwP4MofaN0~I) xY8<*+`yJLWaCs!;{E_c%y%?cjCdR + + +]> + + + + + diff --git a/pix/e/cell_props.png b/pix/e/cell_props.png new file mode 100644 index 0000000000000000000000000000000000000000..c79aa5b3a2d1fdeddcae70cf651235c8a056737a GIT binary patch literal 166 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XJUm?-Ln>}1{rUgjo>{e_@Y$J}A~O#hanNMg$?$|X#ivW+ zsNRAb3|-6zopr00`hW8vp + + +]> + + + + + diff --git a/pix/e/cite.png b/pix/e/cite.png new file mode 100644 index 0000000000000000000000000000000000000000..e70c73c20a78a33f26e062b6e3dff97c5026e3a3 GIT binary patch literal 285 zcmV+&0pk9NP)^3q@ zQ_HjKx(I#%y?_s@)w}}UQd&rdE!* jo1P2x|F2vwunI5$1erH$^d@c600000NkvXXu0mjfjka;| literal 0 HcmV?d00001 diff --git a/pix/e/cite.svg b/pix/e/cite.svg new file mode 100644 index 00000000000..50bea4b5346 --- /dev/null +++ b/pix/e/cite.svg @@ -0,0 +1,20 @@ + + + +]> + + + + + diff --git a/pix/e/cleanup_messy_code.png b/pix/e/cleanup_messy_code.png new file mode 100644 index 0000000000000000000000000000000000000000..d519b25defc02e162a03cf538b015d49e492f772 GIT binary patch literal 313 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XZhN{ohE&{2`t$$4J+o%QwKb8P4qA+-Y!5iKJ^Ohg$!AIi z8>1N0EHwsAW{vA|-IG{*ZX9A*agotOl)>;s1FyrGe%IopsHj^^Vk*8|0k@eNEabG- zFg#r>&2)_?$>7`^%g+pa&kr7OU6Gy8=EIVur=TkEbzvOi&L_$O^$z{5%qmi!816Q3 z22AcWVtH1+gVBL;!eprqA3pI5tOpVqOjw?DHM>Y`U|7uFVdQ I&MBb@04BO?{{R30 literal 0 HcmV?d00001 diff --git a/pix/e/cleanup_messy_code.svg b/pix/e/cleanup_messy_code.svg new file mode 100644 index 00000000000..bb683f93915 --- /dev/null +++ b/pix/e/cleanup_messy_code.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/pix/e/clear_formatting.png b/pix/e/clear_formatting.png new file mode 100644 index 0000000000000000000000000000000000000000..3989a184058fb41011102017508ed9df4ad5a63e GIT binary patch literal 328 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XUU|AWhE&{2`t$$4Ju}aldA7e9CTvPq;Imk^Y?)j_(gJ}E z3qEo;L@;#jXXtp^SfMzjmq)LG!!1Q$fq6l>1KZyABId?(cN=_V?etj`Hu66RYB|rq zu2CzH@tfU?$D%=BU}nLOct)v;Cz1^**325~Gz}jpM6FqHT*!|(!EgiPNpJp!5~fMd zm>sH^gvI_#GicVC{BKTr$S820{gk-F(XWo3ot*uj?V0}8GfMHvFL)&0xI=!GrJ%;X z2G*>_3{gU*ExV2}THbtgid(qjL}R1F9fqwt1v-Qm+)Gq2GjEDn!BF~*MdiH&1B(Ph Y$X&l_KD+1m1AWcl>FVdQ&MBb@03Aei3IG5A literal 0 HcmV?d00001 diff --git a/pix/e/clear_formatting.svg b/pix/e/clear_formatting.svg new file mode 100644 index 00000000000..6942e74f86e --- /dev/null +++ b/pix/e/clear_formatting.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/copy.png b/pix/e/copy.png new file mode 100644 index 0000000000000000000000000000000000000000..b48b02bf18c65616fc444e929c3a18e9a479542f GIT binary patch literal 249 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XW_!9ghE&{2nq!)Mt)A^pLSj}{78A1_gAoIV#05hSnGSn~ zk4!nA49*;BkhfqcJn-h`X7L9>2b>Nxd=9XZJ3E2fVSO!wp@gF!YmvmqnM_xD?+pPlBi@GAUb~ZQ3hm+=IVZj{$pqvuaQ9^> t$vyB|v}2ORu33&kY$_^=JPZN}3}S5U^LgG0Dgm9z;OXk;vd$@?2>>F=PVE2y literal 0 HcmV?d00001 diff --git a/pix/e/copy.svg b/pix/e/copy.svg new file mode 100644 index 00000000000..199c836a985 --- /dev/null +++ b/pix/e/copy.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/cut.png b/pix/e/cut.png new file mode 100644 index 0000000000000000000000000000000000000000..20c4e4e5a6bb497756790a19e6815de7392fc5c3 GIT binary patch literal 389 zcmV;00eb$4P)RCwBqQ`>cdP!L?Gzz)<7>_AFL zI*<>(4IRV^lKjGlqytLO3bX@5C1fVfdT#K-Vb59EH?t3{?|ZAN>IB|Vp2Lh~4&?;G z%FJ$dr@SbN#wMt)>m6Q4sp}MvMc_XwU`{e=kq`zPKTwu|;|WP5xkJn<`)ve8=GvisvXTZKT;1c}G9YAaf{77tJPD(6P6bm7&}Cf_5Lxh&9n8wj9$iCm}47sdE0+Z3?)9~@*L#Bcs(u(!c| jP+rTI$$Vh$uK)u8fv4GNYX(;B00000NkvXXu0mjfM=+(w literal 0 HcmV?d00001 diff --git a/pix/e/cut.svg b/pix/e/cut.svg new file mode 100644 index 00000000000..acdac7d2aaf --- /dev/null +++ b/pix/e/cut.svg @@ -0,0 +1,23 @@ + + + +]> + + + + + diff --git a/pix/e/decrease_indent.png b/pix/e/decrease_indent.png new file mode 100644 index 0000000000000000000000000000000000000000..1609df7fbe97e3e43c77ecdb52965632fc1dd9ba GIT binary patch literal 205 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X@;zM~Ln>}1{rUgjo>{da_1l}9A~O#haZpTPOmg?)NjM_P zcBHD8)3cdLAYS1#t3xlN!#5^{Xa2svsVb&oY78%Hy!I$K6e=*~dNXWNpYW7bfbq%} z2B`*akFQMJJ&YzSDGiKQFCDyal3S#jQQ-hX>@{=o#PhmWfL1ejy85}Sb4q9e0K;cO AHvj+t literal 0 HcmV?d00001 diff --git a/pix/e/decrease_indent.svg b/pix/e/decrease_indent.svg new file mode 100644 index 00000000000..6dee08a20a0 --- /dev/null +++ b/pix/e/decrease_indent.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/delete.png b/pix/e/delete.png new file mode 100644 index 0000000000000000000000000000000000000000..84da3f9384efb3c5b28ae25be34df27af35c3440 GIT binary patch literal 310 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XZg{#lhE&{2`tkq2J+q!o@v}2*3U&?tyu!?N0SrgJZB9FD zbYLmNaz+PVPKPe}lM0u37@AmA%4{w;FfQU{&gm$mn>bX%Mc{Yv9pP@{Vn%`H@psi1U=8mN!b+~;PB#^!XUPwQ)H&Y zPVNg#`E~-_Ow1pcr!~y&SNS5a!i~{Z!13ZX!C2#Q9cDdk{J|)9ebH%O z2GxAGgfdpwsrHkOI0n=(=k9HIQWNm!b+X|XWrqev2J2fTw&yE+N`Zc4@O1TaS?83{ F1OOEGYTf_< literal 0 HcmV?d00001 diff --git a/pix/e/delete.svg b/pix/e/delete.svg new file mode 100644 index 00000000000..bda909042d0 --- /dev/null +++ b/pix/e/delete.svg @@ -0,0 +1,17 @@ + + + +]> + + + + + \ No newline at end of file diff --git a/pix/e/delete_col.png b/pix/e/delete_col.png new file mode 100644 index 0000000000000000000000000000000000000000..1a11e667111e7a451d5903304bae0d90b8e70a5c GIT binary patch literal 211 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XN}1{rUgjo>|Wz`NX&nKUQkgzks}%ZU@j6F!MlCthhdn84uBz{rsLUgv#j&TB`Y0~kDA{an^L HB{Ts5)GbOl literal 0 HcmV?d00001 diff --git a/pix/e/delete_col.svg b/pix/e/delete_col.svg new file mode 100644 index 00000000000..ad925949e39 --- /dev/null +++ b/pix/e/delete_col.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/delete_row.png b/pix/e/delete_row.png new file mode 100644 index 0000000000000000000000000000000000000000..f35c139187b4341c7ae785d2c8cb63f906977338 GIT binary patch literal 200 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XvOHZJLn>}1{rUgjo>{eFViI%OxjCK}TDEL4aho$qLHxmC z1?~?gjST}hG|U=S7&!2CM{Z8DWiaAyc*Cn;C}yNHmHp9Ihi1Meo<&Evzd6**6JmDI vGf+9s%|G#Qg2WPLv4oO8@)z!K2qZA1u5T2ZER%l^Xe)!KtDnm{r-UW|2gE{L literal 0 HcmV?d00001 diff --git a/pix/e/delete_row.svg b/pix/e/delete_row.svg new file mode 100644 index 00000000000..df4ac8121c1 --- /dev/null +++ b/pix/e/delete_row.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/delete_table.png b/pix/e/delete_table.png new file mode 100644 index 0000000000000000000000000000000000000000..d6a53744ed3531474b81815732a27743dc761491 GIT binary patch literal 303 zcmV+~0nq-5P)RCwBA{Qv(y10{fE)~s3hOjroS z2Y`425ElS(0F=D}h#P=7fd!A|k5I+up?sJjAkF+x0}Q|hq@|@XBI^XX3MeK3WhVlu z`A|*skqmbL8OB7&k3fSK0I5ba;R2xe1t6_Y&;Xzd44_U&1{0v-9~o!PocSM57&t%! zksm2c>XGG%34;yL&<_BL9RTtlK*Iv$ssdudAORHGP}^Z)q6nqqnTSa&K*b + + +]> + + + + + diff --git a/pix/e/document_properties.png b/pix/e/document_properties.png new file mode 100644 index 0000000000000000000000000000000000000000..20e3888c9488b677b0d8fe5aab8f20cb1111cc73 GIT binary patch literal 369 zcmV-%0gnEOP)FC$7CQ`siCNpW6&@!()@4~%G2TW6 z?0~abG2#$c&Xzi0hX+!i2PhF$+%oUUX9r}!3)rKpN5X`HgAEh1pfDx6sdLIP&WZ-; z!bbv^tVi|zOapFP+Z7~Bp!eY0#I;S+h`I+gGX)occpVHfoS4rwfYa2+S8ccOv3O*7JuQ7?(}fUPSD8 zJ!QV5)+FM4am*(H?KJH+aG?$3`MgTt$;aDwk^f+(0Xy7U@8HciZvh4X1Kf1EQsx)_ P00000NkvXXu0mjf!p@lI literal 0 HcmV?d00001 diff --git a/pix/e/document_properties.svg b/pix/e/document_properties.svg new file mode 100644 index 00000000000..26ef5646ffe --- /dev/null +++ b/pix/e/document_properties.svg @@ -0,0 +1,16 @@ + + + +]> + + + + + diff --git a/pix/e/dragmath.png b/pix/e/dragmath.png new file mode 100644 index 0000000000000000000000000000000000000000..3c6405e0121a501e654e0da9b5edd07f723275db GIT binary patch literal 373 zcmV-*0gC>KP)59O$qWrmPYm5hu(xvD6x + + +]> + + + + + diff --git a/pix/e/emoticons.png b/pix/e/emoticons.png new file mode 100644 index 0000000000000000000000000000000000000000..94247afcc47bd2473731a9273d7a1b0c22f9f0c6 GIT binary patch literal 396 zcmV;70dxL|P)*=Avx~m(jc-L!>@ghS z8#A^Bo+U|A`kM^V;n$BXyR)c~(&sp=CnMKqpJ_MjsX6x_6_fm2oLCqQw94fd|Han3&+Q*uN z-BOqK<;k=&@~8VO;ltfQYyNJ7qQHA5$|_Z_nRx}v7@uJ26Tr4qqvxt7m&iWIyxs^M zL8C*0QoYFF06r3O)JRMdh;_}ZYSYV;x-X28LUv{5I + + +]> + + + + + diff --git a/pix/e/find_replace.png b/pix/e/find_replace.png new file mode 100644 index 0000000000000000000000000000000000000000..da59dc48bc35cc2f929c40a9936027e6ddf3a3bf GIT binary patch literal 398 zcmV;90df9`P)toni?t$nJ>wtUGO_#9tjDw^cz@%{T+3T@p9!G|CX$!XgAc zNRxk976@qb*93WRua(4@?{yaNv4tbk!JxQf+=ckutL}JwD?fo$)5T7BLl4Ho6NE0S z_eU`0UEx3S_~@bO@c;k-07*qoM6N<$g7-nRHUIzs literal 0 HcmV?d00001 diff --git a/pix/e/find_replace.svg b/pix/e/find_replace.svg new file mode 100644 index 00000000000..0cbfd7c9de3 --- /dev/null +++ b/pix/e/find_replace.svg @@ -0,0 +1,35 @@ + + + +]> + + + + + diff --git a/pix/e/forward.png b/pix/e/forward.png new file mode 100644 index 0000000000000000000000000000000000000000..be8dfe938b34189a16c5c1e52a9751d3864ce207 GIT binary patch literal 209 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XialK%Ln>}1&9N*_V`gS{wq-6{V5qCRmNBxSljSVWjVqfD zNH|QE{P=Q?Y4)}HoJT%9B1~Pp35sEgdit9ld^9%Pc=<$&^Ja#L8-x94JFxuv&U~`5 zL*{(TC6-;>Qkox`9{>OU-_xtISzq;$al?!anJgRz3^TXLy_^0yUjb-6gQu&X%Q~lo FCIGIUN_7AL literal 0 HcmV?d00001 diff --git a/pix/e/forward.svg b/pix/e/forward.svg new file mode 100644 index 00000000000..03d86015a65 --- /dev/null +++ b/pix/e/forward.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/fullpage.png b/pix/e/fullpage.png new file mode 100644 index 0000000000000000000000000000000000000000..e5376b84e582fd81b34ac2d80f3ef9a6e96e7ff1 GIT binary patch literal 343 zcmV-d0jU0oP)TAod;XVk-Z zcmlKQv^FD1!$N5oGuI{JEs&KOlORyswjLF%!(@EA5@mqQnMMIbAKnE*2 pN)(rxK6ahC^9|%YBdz)fFaW + + +]> + + + + + diff --git a/pix/e/fullscreen.png b/pix/e/fullscreen.png new file mode 100644 index 0000000000000000000000000000000000000000..49809362e9d36ec4d49a9acf079fa9140c89aa5a GIT binary patch literal 314 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X?s&R5hE&{2nq!)Mt)9(igMq23DPv^9w>LMr8$xV$IjJR? zG&6+cC>pZKBpl%76G%Q#v!K{8hCy_8|7nH^mxT%?n_P<(1>#u@B^n!dFg#1w;Syc= zrB-F5%Yt954qKTN^bP<0|1Up1_#jtd=Rw933?)1zQ<)5t6wVxRP)wLMZJL;Ync2U_ zXRUvqpPO6FA+o>0n@3BJfy-q=1M`J^`4e0&89{LzzAB$DiazRen=r#pxo=N{;H?%R zAtQ|=9arE@0%m;UxX)IZG1Hh4!@A97#|4SOJ9t40=@yX1hph+z0xT!PC{x JWt~$(698ehZXEys literal 0 HcmV?d00001 diff --git a/pix/e/fullscreen.svg b/pix/e/fullscreen.svg new file mode 100644 index 00000000000..3cd247fa482 --- /dev/null +++ b/pix/e/fullscreen.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/help.png b/pix/e/help.png new file mode 100644 index 0000000000000000000000000000000000000000..d29072e0c784a566d00b4699f34e22d091c62aea GIT binary patch literal 378 zcmV-=0fqjFP)jwn(wE&$BRf~QQD#Z?FQeS|nHoKC_h& Y0RBml;IERe8vp43IG5A literal 0 HcmV?d00001 diff --git a/pix/e/help.svg b/pix/e/help.svg new file mode 100644 index 00000000000..6062d2e8787 --- /dev/null +++ b/pix/e/help.svg @@ -0,0 +1,17 @@ + + + +]> + + + + + diff --git a/pix/e/increase_indent.png b/pix/e/increase_indent.png new file mode 100644 index 0000000000000000000000000000000000000000..163fd7a49f5d6d9d6df4dfcbcd21a0d3b5f850f4 GIT binary patch literal 211 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XN}1{rUgjo>{da_1l}9A~O#haZpTPOmg?)NjM_P zcBHD8bHxWH0qqHIn<6)-HRk-{IKsJd + + +]> + + + + + diff --git a/pix/e/insert.png b/pix/e/insert.png new file mode 100644 index 0000000000000000000000000000000000000000..49c7c09933421512ef509509fbeb9cbb6fd17b62 GIT binary patch literal 315 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X?s~d7hE&{2`tkq2J+qlj@iQMr1-%2R{D*ybb~rK#d_O8b*cZdJVrS75VZL`CV4%axaKuU}O#mQCbA+k7z}jd;DgQu&X J%Q~loCIAfaX*>V` literal 0 HcmV?d00001 diff --git a/pix/e/insert.svg b/pix/e/insert.svg new file mode 100644 index 00000000000..fe2b0eebe75 --- /dev/null +++ b/pix/e/insert.svg @@ -0,0 +1,16 @@ + + + +]> + + + + + diff --git a/pix/e/insert_col_after.png b/pix/e/insert_col_after.png new file mode 100644 index 0000000000000000000000000000000000000000..e29d46dc5c7101ad5cb0e6e25aa5d86c016f3548 GIT binary patch literal 203 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xay?xfLn>}1{rUgjo_S-!wKb6vT{9&#SQfJx7#K_v;=aMa zz3zo0duC>4k3%VcgHNT(!*-n$ToWEk&*e`QWB6F5!p!Bt#k^plbi)-#jqeH_{(cH# y3YS%+8Mb_7no!ho>4~dyz~{!qDME})JPZ + + +]> + + + + + diff --git a/pix/e/insert_col_before.png b/pix/e/insert_col_before.png new file mode 100644 index 0000000000000000000000000000000000000000..9d20263a22647df646e73082afe258cca207ed02 GIT binary patch literal 209 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XialK%Ln>}1&9N+gR?lWKVcN7~Cmd7~k`@T`NF6wE;K%>} z^{03k+#WM4==Q686OicT+MIS)DZ@x(S7bv8qriH1A^ii>`9Ef-l|A4Z28JGp{V836IbPc&y9k!gczB4806H{m_ObtyaTkJ!PC{xWt~$( F696LxN5KF9 literal 0 HcmV?d00001 diff --git a/pix/e/insert_col_before.svg b/pix/e/insert_col_before.svg new file mode 100644 index 00000000000..7c2ab5a926d --- /dev/null +++ b/pix/e/insert_col_before.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/insert_date.png b/pix/e/insert_date.png new file mode 100644 index 0000000000000000000000000000000000000000..0f74951f34c1500d3a37d01c4d43e03dfe752806 GIT binary patch literal 179 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XLOop^Ln>}1&9N+gR?nv3;q9Hwa&dFoS*Fh$8B0tR?3B+i z6fvA&P-Ej_Jj!O!u!n(#XGziwyIU2EBBwS?ICfO7CDEa0b9 + + +]> + + + + + diff --git a/pix/e/insert_edit_image.png b/pix/e/insert_edit_image.png new file mode 100644 index 0000000000000000000000000000000000000000..29f5c9733e8ff8218db4b9b8711016d0c525ce4f GIT binary patch literal 298 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X&Um^whE&{2`t$$4J+o><>bEyHd8bGmU^((t8$BhK7lIP%9Kh9QXgGm{mAr(A=SONhjR zW`-5I(hY4K2@|thE=`DVD7N!(k~?*k{Sl|b9EQp4Kc$~oP02Wt#B9{TE>*?&>O1d+ z1KI~(v92h7ys=`Xe22b6>=gc9&NYbw4eD!tOuWH8;cy$L?w3x+1qN9M#Mlh#jRa<{ u5O~>e=1%~F@q&p>doG;t$Sh;yFkpD2XY0f$Q!4@V7lWs(pUXO@geCx`*=)i9 literal 0 HcmV?d00001 diff --git a/pix/e/insert_edit_image.svg b/pix/e/insert_edit_image.svg new file mode 100644 index 00000000000..f35a10d3f69 --- /dev/null +++ b/pix/e/insert_edit_image.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/pix/e/insert_edit_link.png b/pix/e/insert_edit_link.png new file mode 100644 index 0000000000000000000000000000000000000000..226105a5709af0e318530958dde7cc8461271ff6 GIT binary patch literal 345 zcmV-f0jB|N**jSmi4&@R;wxkKVLZqu|)65TR`phgD%<`-aho;7a0F2`)I>MD0Vy^AunJ!8(M4jHM`K00000NkvXXu0mjfTu+Ly literal 0 HcmV?d00001 diff --git a/pix/e/insert_edit_link.svg b/pix/e/insert_edit_link.svg new file mode 100644 index 00000000000..ee5fb274400 --- /dev/null +++ b/pix/e/insert_edit_link.svg @@ -0,0 +1,21 @@ + + + +]> + + + + + diff --git a/pix/e/insert_edit_video.png b/pix/e/insert_edit_video.png new file mode 100644 index 0000000000000000000000000000000000000000..7505977669b7d9fab8df8355f5afa7e13342b3f3 GIT binary patch literal 264 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XR(ZNOhE&{2`t$$4J+o@V#31H~wDa?PCvxfp+!FM9@1FFS zNx`($p@#9yJk#uJ^%Kk;Bxd$!!xW#i)E@3gcNH5ord21O~Ir8DfhM{#FFKn!(f6 K&t;ucLK6Uzc3PSM literal 0 HcmV?d00001 diff --git a/pix/e/insert_edit_video.svg b/pix/e/insert_edit_video.svg new file mode 100644 index 00000000000..46e59b433df --- /dev/null +++ b/pix/e/insert_edit_video.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/insert_file.png b/pix/e/insert_file.png new file mode 100644 index 0000000000000000000000000000000000000000..c50726b986c762ec8ea47946425ede50ccd9c819 GIT binary patch literal 350 zcmV-k0iphhP)wx0q$cKC!>Txc4kTPUb4yi;FV=5X_}5i#K`ePEbJiQZw4tp+O&bcOgYCC=K)^d0bY847{ zL0gTRPe&8h9G~EZe17?gHi09nb3wU6CBup7`v~Msr*WWQg6%4uX$!f|eOK`8PHm!@ zW!Cuv;&+T&Fw;g-k literal 0 HcmV?d00001 diff --git a/pix/e/insert_file.svg b/pix/e/insert_file.svg new file mode 100644 index 00000000000..ac563c6c394 --- /dev/null +++ b/pix/e/insert_file.svg @@ -0,0 +1,18 @@ + + + +]> + + + + + diff --git a/pix/e/insert_horizontal_ruler.png b/pix/e/insert_horizontal_ruler.png new file mode 100644 index 0000000000000000000000000000000000000000..a51af6a49232eb3be91c5560686f6975a982949b GIT binary patch literal 134 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XG(24#Ln>}1{rUgjo>{e_@JfSY0>kMyH#chS8Ax#- eKE%+#z|1hQMrU`!M8D5KJq(_%elF{r5}E*|j4E0H literal 0 HcmV?d00001 diff --git a/pix/e/insert_horizontal_ruler.svg b/pix/e/insert_horizontal_ruler.svg new file mode 100644 index 00000000000..cf493393e94 --- /dev/null +++ b/pix/e/insert_horizontal_ruler.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/insert_nonbreaking_space.png b/pix/e/insert_nonbreaking_space.png new file mode 100644 index 0000000000000000000000000000000000000000..e23954270976c25b41ea0d96e0cf05ecaa9ef028 GIT binary patch literal 187 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XVm)0PLn>}1{rUgjo>{eF;xe`~^K7McX3m;*s>7RCn7Oqf ziP>NeL$R4&!#mkiu?E@Kbl6v%WcT27Ss)W3&n@u2UD9pQ)88u}v5EyT^_X4c;5qWY iSzGbqU4{k*W`_P)&8fB$p + + +]> + + + + + diff --git a/pix/e/insert_row_after.png b/pix/e/insert_row_after.png new file mode 100644 index 0000000000000000000000000000000000000000..c8d5c4c94669ce16aa3a6bb57e80e043275ea5c8 GIT binary patch literal 213 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X$~|2iLn>}1{rUgjo>{e_@Y$J}EWRGz-pNNaIg1$Wcs4Q2 zw-IJ;ZAfB{NIN^rHBzImjgeV-spdr1`6?Gm86C2i3{oFLfP;GShBQT$lfsu{jk6F_LKihAQfKFiWboFyt I=akR{0CYG+ng9R* literal 0 HcmV?d00001 diff --git a/pix/e/insert_row_after.svg b/pix/e/insert_row_after.svg new file mode 100644 index 00000000000..acd7194ee0b --- /dev/null +++ b/pix/e/insert_row_after.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/insert_row_before.png b/pix/e/insert_row_before.png new file mode 100644 index 0000000000000000000000000000000000000000..2554823b87f9574478b51bb41e4c74cb19cfc296 GIT binary patch literal 216 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XsytmBLn>}1{rUgjo>|Wz``Q`?1ye;`U0=o%$5u^XZFggy z;HI!GU4bEDLq-`x&~M2O7M~YP4$tKng4!HvCg?CPXp3P;n&8dU_(Rc-S>hwBl3@dD z_=`n5I|P@joM8R&;ml0q|Bol9CoK>N$YBUfY!L5hV|=P9sBnP6{Cw*JNkN`Speq + + +]> + + + + + diff --git a/pix/e/insert_time.png b/pix/e/insert_time.png new file mode 100644 index 0000000000000000000000000000000000000000..751a86a545fc3f295d363256709d105c41feb1a4 GIT binary patch literal 443 zcmV;s0Yv_ZP)z#WJT+1B-#buUd^75SumcSXw9q`GZ8Sw#J0XKc$PZJy}k_Ywb12Dx4Rv>5ELS_Tc zl?cq~T++Bjkkp!^G|wI!XxoyrWXwE)L()#^*x~MYPL-&kkYkgNeu+(ZDY!fH|8hDe ziJU{sMj7>AoLHbx>3XL72oc9wIpJu5@a=6>^M;LEbI>$ruLVL~HD1ckH11aUY8{iP zbURL%2eF7m1`d-arwijfQM?riGAM5lc~uQ7IIUr%S0U*5FQ|^E{9&qJKH; + + +]> + + + + + diff --git a/pix/e/italic.png b/pix/e/italic.png new file mode 100644 index 0000000000000000000000000000000000000000..fb9951c716b33f9df7d4c597b419bb39ec45eb0b GIT binary patch literal 312 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XZh5*mhE&{2`t$$4J+qlX^|u^$g{|`$`8|AnQ&SEp*E4p= zHtrDctx*n_~MuwX0bM0VODt7&Lzu|RptMb7sJ~!%`C%7}*$JA97SXGTC_((3cFJu6{1- HoD!M<)VOc7 literal 0 HcmV?d00001 diff --git a/pix/e/italic.svg b/pix/e/italic.svg new file mode 100644 index 00000000000..275bc3f9ead --- /dev/null +++ b/pix/e/italic.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/justify.png b/pix/e/justify.png new file mode 100644 index 0000000000000000000000000000000000000000..ae3c30b22c4da7e5c43935682c23fe4cb395ee0e GIT binary patch literal 133 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X)ID7sLn>}1{rUgjo>{da_1l}9A~O#haZpT<`Fd!DxZ7R_ eS$zf;35JKy6qMf;wIl(xFnGH9xvX + + +]> + + + + + diff --git a/pix/e/layers.png b/pix/e/layers.png new file mode 100644 index 0000000000000000000000000000000000000000..d1cf1ff472ee5528540a1908a1e3caa989003d7c GIT binary patch literal 302 zcmV+}0nz@6P)zIHc@=*sf9a`j%T2)3pZ;%H_WNh6vjlNr{uu3o>=gZ- + + +]> + + + + + diff --git a/pix/e/layers_over.png b/pix/e/layers_over.png new file mode 100644 index 0000000000000000000000000000000000000000..e987ddadeb0cb9de809bc308d428ce087d95c25f GIT binary patch literal 316 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X?s>X6hE&{2`t$$4J+o?q;B>~#X=l9{f_NQt7>)=#Sm^4$ zWp-qqU~+2l%D)_@OBh!(R+ubmZdWLEXclYWoncw5woz)M)R7|&iVW3^FKPlDWEqlb zmA=NZB(Vo9F!J{FY@D;7=~Zj9gNB5Em@1D3RJYz{JR_L>-{`Q7FCvFFWNhG6( zx|6e9i}b=I@d;NrAACOKm~r5ciG;(?Z#VW#VEEc(HA&p2!9u=6x6y*BKkr@>rNwnc3kbATngiv9vM6(-N03L!VdVLV3A;$P+X;3zUsO+(5DQZ Lu6{1-oD!M<6#{TN literal 0 HcmV?d00001 diff --git a/pix/e/layers_over.svg b/pix/e/layers_over.svg new file mode 100644 index 00000000000..6d59249c980 --- /dev/null +++ b/pix/e/layers_over.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/layers_under.png b/pix/e/layers_under.png new file mode 100644 index 0000000000000000000000000000000000000000..698c532a556f293fc80ddc54d436ff635da47825 GIT binary patch literal 299 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X&U(5yhE&{2`t$$4J+o>9>+~aQA~y>)gfI(mGkjzb@bmWm z-LS4t@Gh%|)YHZv3L!V-I_#ZzGY@1ji1qS19A#fn#1~*W!I6Jq5%&SMGjlA3m%HiQ zJ7mzo>7n89*Het4nlZ!Z#02Jma07u4Ow3oxm;)9x?O~Xt!H`s^Bc{NvWCc_q(#zlQ zgPD){P3I@3D>Kx^hj1V s*=F|OGgBpJXO`#8teKr53<3!Z2KBYY=XhA(0X@dx>FVdQ&MBb@05~sXrT_o{ literal 0 HcmV?d00001 diff --git a/pix/e/layers_under.svg b/pix/e/layers_under.svg new file mode 100644 index 00000000000..284c9707f21 --- /dev/null +++ b/pix/e/layers_under.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/left_to_right.png b/pix/e/left_to_right.png new file mode 100644 index 0000000000000000000000000000000000000000..cf92d793e61ce7f70f10dd713369bd14fd3dc76d GIT binary patch literal 278 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xc6hothE&{2`t$$4J+sja+v+mL30VwDb!E>PtQV3uR}sc_xMz%YPg z0`CrnBl4bR46n-B7EHEdSjqWh2g4I{<`s$x^`es=2~A-9mC@$IkThYnj3*~^-3mp{ zDJ)7SCj49?)g;#|zi^}DG)8g9PRmdKI;Vst0A-h3E&u=k literal 0 HcmV?d00001 diff --git a/pix/e/left_to_right.svg b/pix/e/left_to_right.svg new file mode 100644 index 00000000000..94240144db2 --- /dev/null +++ b/pix/e/left_to_right.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/manage_files.png b/pix/e/manage_files.png new file mode 100644 index 0000000000000000000000000000000000000000..021350389747c47768db730d9d30206382a7d6e1 GIT binary patch literal 295 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XPI|gHhE&{2`t$$4J+sja)9f(j39H(Rq%U8(Bqi~IK}{z~ z;jH+=9rGF)5?FRJWV~ioh@RhQFoUBckkO3U;hzADR~^H~Mib>(+gTc}R4e@BI3nHf ziBlquA=7O;--?TjzI;dc8M^cjh_jtYus34QxWKC7tk!TOV#CWOE6LdwMN^(K7cz45 z&E{Xgt>__E?Lg8Ec8Rl1u0m4^q$E06e0W5f9;PrDc!_jeZCN8G p#=T%pxx9vB*HZ;s9tK7>hV5(opDr`ok_7Y=gQu&X%Q~loCIG+wVmAN) literal 0 HcmV?d00001 diff --git a/pix/e/manage_files.svg b/pix/e/manage_files.svg new file mode 100644 index 00000000000..caa3f156e95 --- /dev/null +++ b/pix/e/manage_files.svg @@ -0,0 +1,18 @@ + + + +]> + + + + + diff --git a/pix/e/merge_cells.png b/pix/e/merge_cells.png new file mode 100644 index 0000000000000000000000000000000000000000..6a9accf3afc07cd459c3ecf541ea14c6d6ed4785 GIT binary patch literal 185 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XqCH(4Ln>}1{rUgjo>{e_@Y$J}A~O#haZpTXywsQR=y#_W zb0wn)--#I_hFyCd3Kbr4Ge6?>@b + + +]> + + + + + diff --git a/pix/e/new_document.png b/pix/e/new_document.png new file mode 100644 index 0000000000000000000000000000000000000000..ba31eecc9b50d8669b1390ac83f84fb0effa15a5 GIT binary patch literal 240 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XCV9FzhE&{2`t$$4{oyw^H|rZ17`!kRU=t1w4(6V~DzT95 z5Bnz8#!2!UUNW8HW?1>%;g4X4Im1=e15aio@Wjlz_(Z0`f+6Dp6AyC-qeHWvf}~Mn z3iEb09O@RK^1?3mu%gT2{9%J<{z^ lBd_7u^;E%@hk=oeL0ZLPPtTR + + +]> + + + + + diff --git a/pix/e/numbered_list.png b/pix/e/numbered_list.png new file mode 100644 index 0000000000000000000000000000000000000000..200babea3243add9a71cfd1d0278d29494467561 GIT binary patch literal 254 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X7I?ZihE&{2nq!(B#>~v@Y%5^CY}vA=8$6rS&xbJtDfn>M zBrs+&WjRduXpr*aFflR=;E343>9qHfLl0xm|NsA&pJ8?QZ?5q3yTXMs_8^{y-3%EQ zm;z2r&SE&h%IHwVB*1;(Pwz9WJsTOgT$mO9F>Hx!oMVvS;^i@=^_`Q!o{q;c!x{L(*{$V<&3^12aRNP7zo1*QNV_Ze{Rv^>bP0l+XkK60%fv literal 0 HcmV?d00001 diff --git a/pix/e/numbered_list.svg b/pix/e/numbered_list.svg new file mode 100644 index 00000000000..05a74c1e75c --- /dev/null +++ b/pix/e/numbered_list.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/page_break.png b/pix/e/page_break.png new file mode 100644 index 0000000000000000000000000000000000000000..17be9c29fa03f1d6876904dc63494945a7f512b5 GIT binary patch literal 201 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XvOQfKLn>}1{rLaio|)tPEYsKaJ-!^ut5cH}2=JIQr=6dt z>)^q>OUf<4!-@6&^ZZDnSqIiL0-1i(KDN&7-%hnr>mdKI;Vst06i^24gdfE literal 0 HcmV?d00001 diff --git a/pix/e/page_break.svg b/pix/e/page_break.svg new file mode 100644 index 00000000000..fbee241ca56 --- /dev/null +++ b/pix/e/page_break.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/paste.png b/pix/e/paste.png new file mode 100644 index 0000000000000000000000000000000000000000..686d9f2016a694171194903749d6d7f3788812dd GIT binary patch literal 265 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XR(rZQhE&{2`t$$4J+sja+v+mL39sCRw0wMh=N@QaHb@i{ zW_aYbK+R2|R^ZfePKorhv#v5Mc`ez&u5eg7K}Jlav(;e_L%-Vu^Dh@!C-Qc*Crx6o zjC1(N$Gx%6mHogCs|IZ`52nKh7{r1^n3>NpXr^*a$YC%sys7-re1pT{Rg7nsvDIAU zKEmZ7!(hhH@5H*mkuSn1igC(YhAn@X?3fEw-}W1vRp4`IU}W(8q^tHX_7XeL*$kep KelF{r5}E*6rB~bl literal 0 HcmV?d00001 diff --git a/pix/e/paste.svg b/pix/e/paste.svg new file mode 100644 index 00000000000..d2cc7272a97 --- /dev/null +++ b/pix/e/paste.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/pix/e/paste_text.png b/pix/e/paste_text.png new file mode 100644 index 0000000000000000000000000000000000000000..810fc67ffb28a3fb8fac4478996d46a7bf41fd0e GIT binary patch literal 292 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xj(NH`hE&{2`t$$4J+sja)9hF&)Cp$ zl-bmfDbrDTR=+j6LBp2@}|Uztsqc^nNHk4T^R$`oO& nGkuf5 + + +]> + + + + + diff --git a/pix/e/paste_word.png b/pix/e/paste_word.png new file mode 100644 index 0000000000000000000000000000000000000000..d9f65dd3f50fce04d07c0cb7107cd1b2f350d4b4 GIT binary patch literal 322 zcmV-I0lof-P)!N<6_;*c3bq!K6S(*9KPL#J+~v{T0AJpv;Dc=>dLOti-oDw*{Ap#73Tj z$sgq{Q3YlCkq~Ud?zg;3?T=<)s4ARU#Qx4zn4A`r7pz>cd!;&O;yf7n#CHJ(01^05 Un`HX%X8-^I07*qoM6N<$g7932Hvj+t literal 0 HcmV?d00001 diff --git a/pix/e/paste_word.svg b/pix/e/paste_word.svg new file mode 100644 index 00000000000..9b0580f320a --- /dev/null +++ b/pix/e/paste_word.svg @@ -0,0 +1,19 @@ + + + +]> + + + + + diff --git a/pix/e/prevent_autolink.png b/pix/e/prevent_autolink.png new file mode 100644 index 0000000000000000000000000000000000000000..afd724da5d48b145c371622194f5c93d0f55775a GIT binary patch literal 399 zcmV;A0dW3_P)?&1TTU@o)Yi{^u!Tp@ZI=p6~HMM4Uhs?;DU^qB0K=Ut_p-;OOiQQjL#jAxd3_gC5CeN)2ec%Q#J5@W+|$|G46u;zJt~pGwG5WFim3ulyJgQy z`v+=8ZrE1y&;om$oIt|Nse?2INgt@S$f{B@$IMtW;1l@ZJZ`K&{N9ENJJ?mRlD!g* z-9)VjXA3CL&hD8N>~NmcD&w_XKh*)JeO8-DTm*74Vt}`h>cD}8YXp8-mPQGq + + +]> + + + + + diff --git a/pix/e/preview.png b/pix/e/preview.png new file mode 100644 index 0000000000000000000000000000000000000000..7aa7f9f791b8097f26d34b379c2dd2718857dac5 GIT binary patch literal 369 zcmV-%0gnEOP)gTOs5XLGBWWlSyNJl$5C<98(b3 zNP~5*jR?(+_EK?&)IPjK5CUE0py4KRJ)+IKr`&z^4j{bz=V$sPZUPJd#Ey9nG#HoN P00000NkvXXu0mjf$^e~v literal 0 HcmV?d00001 diff --git a/pix/e/preview.svg b/pix/e/preview.svg new file mode 100644 index 00000000000..ef58b4f34fe --- /dev/null +++ b/pix/e/preview.svg @@ -0,0 +1,21 @@ + + + +]> + + + + + diff --git a/pix/e/print.png b/pix/e/print.png new file mode 100644 index 0000000000000000000000000000000000000000..da5ca353e86176aaf83cd46e140edf5e8ac9f465 GIT binary patch literal 202 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xay(reLn>}1{rUgjo>{elH8$bfo0}EBKEA%GF3*e&12`f! zbXZPGVtBkJacnd&Nc_;Pe98%i!ti=d#Wzp$P!B%}BZc literal 0 HcmV?d00001 diff --git a/pix/e/print.svg b/pix/e/print.svg new file mode 100644 index 00000000000..f392f084afa --- /dev/null +++ b/pix/e/print.svg @@ -0,0 +1,16 @@ + + + +]> + + + + + diff --git a/pix/e/question.png b/pix/e/question.png new file mode 100644 index 0000000000000000000000000000000000000000..bc6524853c6f84b067c50178c5c0c0d1cc05ed58 GIT binary patch literal 272 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XHhH=@hE&{2`t$$4Ju}CddA8Dr6!=V*En8;RAmPLFq>)LY zIfnU1B9EAgqdU_qp#}@NSb;o-3;ygMUb3}KWHu{Yw1?qJ4#N_r4JS7WT+m=x;;?XT zzgnr_v4j>^WwEmg_Wllh1`0noj09fX<*eXk$ck%FJs{S!h=0XTX2ZAuha`KJqYUdD z)YJszA9O3m= + + +]> + + + + + diff --git a/pix/e/redo.png b/pix/e/redo.png new file mode 100644 index 0000000000000000000000000000000000000000..f79afeebf39e4a8a333edee8844607860f42afd5 GIT binary patch literal 289 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X4tu&dhE&{2`tkq2J+qxn_B9=Lg}4Uqd7X_G0`}G4-mudZ(XE@o^RmpX^N(C(89YJg;R4;*CgZwqRb+ j)*v*AX(by2iv+{T&vVOd9&>&GdWXT&)z4*}Q$iB}@;zaw literal 0 HcmV?d00001 diff --git a/pix/e/redo.svg b/pix/e/redo.svg new file mode 100644 index 00000000000..6d86d917ff6 --- /dev/null +++ b/pix/e/redo.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/pix/e/remove_link.png b/pix/e/remove_link.png new file mode 100644 index 0000000000000000000000000000000000000000..4f5c8225db0c99f60dd0bb1e2c7a49a6d97ab3f2 GIT binary patch literal 397 zcmV;80doF{P)m&<^YXUv3_lTf>-{H_K-CWs{fS#&L|guFJ}@93o}# zjqo|Oud(d7?SUHScQ0gYez6wOg5gXE6>ufCzySZs^W`t#U^$0 zlR-{c)>8wcRWq4HDKX{CvnH{j_6<1cmti@O@w<_ir-RsNRS~3|Q{Y|?*&KjrZ>(04 zlxcFPm0xNVEe$&W + + +]> + + + + + diff --git a/pix/e/resize.png b/pix/e/resize.png new file mode 100644 index 0000000000000000000000000000000000000000..efbdde77f5a589eb34fcafb228a2a013fba92e3a GIT binary patch literal 205 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X@;zM~Ln>}1{rUgjp4l?t+nbvSy*@l5Om0Q749q$z7B?9^ z8b35%xpIZsp^n*;&B64#^G)`IoFE>H1~>Cdc037ztY3_kubfv%H)s0E+iW6L=qh^U zq>HQawG~WFY)Oj+vqLVLNp*H=&2m$AXkcUrZwXt&wSV0_pw$eXu6{1-oD!M<6T?HI literal 0 HcmV?d00001 diff --git a/pix/e/resize.svg b/pix/e/resize.svg new file mode 100644 index 00000000000..1b9e64151be --- /dev/null +++ b/pix/e/resize.svg @@ -0,0 +1,16 @@ + + + +]> + + + + + diff --git a/pix/e/restore_draft.png b/pix/e/restore_draft.png new file mode 100644 index 0000000000000000000000000000000000000000..3bcc81888d645aa564be8ade13386ecf64f6790a GIT binary patch literal 319 zcmV-F0l@x=P)A&zsqSJ1(1J?=Gq9+F5HWMQfTy-UWr4TL(z4 zn+6jQcsx(Q5jX=|wQd7&0MRH;%Af|Wlf!bG0rrGpOfjcNrMWm+;0CiSljit)EwEv= zyEKqk#%d?AxmO~DAp(sL?hQ#tjEVPN{bGMWkU_ALLnH!4J3wLeGA>=nIkpA+98 + + +]> + + + + + diff --git a/pix/e/restore_last_draft.png b/pix/e/restore_last_draft.png new file mode 100644 index 0000000000000000000000000000000000000000..f0d64bb578d86efbec18e743bc994d5ce739df26 GIT binary patch literal 348 zcmV-i0i*tjP)x*paboI4sh1YB^UGr;wF>L?e6T(El1Gz{o)_fzC>A;DV$&n zEP)zmfFjGXhph{S3P2RX4OlVM0v!-KWk)nQd^8~0aAF1I?lh_@m_H$x4;zTY4X{V@ z%$O~R5i>Zic@=3AD~FtrTwC%tqoRbzTsgUjz8KrQDB*5)+L3MTikSEd3R5S3XFO(u zH&1bLI~YuDuU!RmpR)HeP9&!e uSss$n6N$$6l=Z~nA(v}Lf2O(i5?}yq?RIjAc*IWt0000 + + +]> + + + + + diff --git a/pix/e/right_to_left.png b/pix/e/right_to_left.png new file mode 100644 index 0000000000000000000000000000000000000000..1dbf423438b682755ce10368b1b80528d9ebd592 GIT binary patch literal 287 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X4tlychE&{2`t$$4{oyw^Hw#NhNJuqA%xg5Tm@#YCD~87# z7);q2UjF1sVG>iA*WjF|C}7X&J20{d6{rMlW}L8#;m9wa z6pPyoQgi>P9A`4Qc+hmRaIg3UVIfa8hQpjoB&Tf9n>2SqLt9OQ)TW7Vrf?XsbT~fT jIAPHe9upNtg#!#v-&%fB39L#1dWON%)z4*}Q$iB}+sI^I literal 0 HcmV?d00001 diff --git a/pix/e/right_to_left.svg b/pix/e/right_to_left.svg new file mode 100644 index 00000000000..49fbc48f9b1 --- /dev/null +++ b/pix/e/right_to_left.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/row_props.png b/pix/e/row_props.png new file mode 100644 index 0000000000000000000000000000000000000000..f0c958232b913798567fe5f3ccef2ce36cd9accb GIT binary patch literal 155 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XY&~5ZLn>}1{rUgjo>{da_1c<9k(mdMIB3qWEPhr$!F+Hq)$ literal 0 HcmV?d00001 diff --git a/pix/e/row_props.svg b/pix/e/row_props.svg new file mode 100644 index 00000000000..b6f398384eb --- /dev/null +++ b/pix/e/row_props.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/save.png b/pix/e/save.png new file mode 100644 index 0000000000000000000000000000000000000000..e0ddbc50a5d93da1ad36604651e17116a5547ffd GIT binary patch literal 187 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XVm)0PLn>}1%`wfsR?qh7z@aNwuCR!)eRBNs=H_O}83{HE zGJ9@>G#;7wbitce1LqkhHcCAyk(k}t=;W}Gk%d`MBH(|g8AG_kr7PTv*%Xd48SIkL j@MZtaeuSHWk&U74vS``)qi^;CEn@I=^>bP0l+XkKK`=tv literal 0 HcmV?d00001 diff --git a/pix/e/save.svg b/pix/e/save.svg new file mode 100644 index 00000000000..d41f920111a --- /dev/null +++ b/pix/e/save.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/search.png b/pix/e/search.png new file mode 100644 index 0000000000000000000000000000000000000000..3e56e58cb98714e37c654a34613290456ffe922b GIT binary patch literal 215 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XDm`5sLn>}1{rUgj{_vZdoBtapFs@v=vPVH`zK!sdw;kTb zdX+OIgqd3t9`Gj2G0ncls<767*}rZdkqkD*TBo>-mZUiitqqJ{MOc+IbQdgbca-R5 z&S%gOlWJ_d${@`0Y#*DBVM8eIiH2?kwg86M!>%S~VWtd>Yz+4{s$XGN>pB2*1cRrm KpUXO@geCyp5=V0Y literal 0 HcmV?d00001 diff --git a/pix/e/search.svg b/pix/e/search.svg new file mode 100644 index 00000000000..025095c7762 --- /dev/null +++ b/pix/e/search.svg @@ -0,0 +1,20 @@ + + + +]> + + + + + diff --git a/pix/e/select_all.png b/pix/e/select_all.png new file mode 100644 index 0000000000000000000000000000000000000000..a9994cf2bf1641fc10c2b2355b86e9966879761b GIT binary patch literal 410 zcmV;L0cHM)P)1z#b^bDgA%Q!t+naa!8cznx?6-X25Gq2J(;~Yf#qpFbopEQN>JU z53=xl;%4zH;DFm#Sl@vS_ayeBWG%tgEK=X7N)$LG(GtbBz(vWz^HIZc%5~g-W*y^g zh`OEW&C*2F-x=T9RZI8LQ;k$1#4nQDL;~&GBY}PAn!zm(*66{UNH7yih=#-&@(twW zj~<+ZA>S!qZNnbq5xHQgQsU&zc#g!kIb8GEKFwaqSvZLk660BzTQ7W>g{xz%pkMij ztl3*a$@(8Y7|%GFd;1%6GhuSzVCG*NJyAuarT+*p0FE7UCQ>y7lmGw#07*qoM6N<$ Eg2m^xJ^%m! literal 0 HcmV?d00001 diff --git a/pix/e/select_all.svg b/pix/e/select_all.svg new file mode 100644 index 00000000000..e6bae3a2c7d --- /dev/null +++ b/pix/e/select_all.svg @@ -0,0 +1,27 @@ + + + +]> + + + + + diff --git a/pix/e/show_invisible_characters.png b/pix/e/show_invisible_characters.png new file mode 100644 index 0000000000000000000000000000000000000000..15e7fa4e6b0134765e7696fa5f7fabf2c0e11eee GIT binary patch literal 220 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X>O5T>Ln>}1{rUgjo|)s!Jlkjn4_$_&dbURg4qmwu!Y-zA zmc1cjexu6)rlrCK8Fd_`q8wKa=d?wAW4PJCAR}hOV6~a?mDdbL_Jkyb14kSb8zeV0 z1~EJQ+vBl~(ZRl!A&Adm&%`?s4U$3(yaoXpwFVdQ&MBb@0D-YeRR910 literal 0 HcmV?d00001 diff --git a/pix/e/show_invisible_characters.svg b/pix/e/show_invisible_characters.svg new file mode 100644 index 00000000000..96929854b40 --- /dev/null +++ b/pix/e/show_invisible_characters.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/source_code.png b/pix/e/source_code.png new file mode 100644 index 0000000000000000000000000000000000000000..9d8444b9200fbf609e60af4efdbfd30736a53aa8 GIT binary patch literal 241 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XCVRR#hE&{2`t$$4J+o><;Ri{B>Thp29ZoTH*e_YOjLqSw z8G|OH!afEOZHKV)Ez2qyC!A`Ry3n9KN_j3G*L9rjEcnJ+Bk&S-1qv0ymz z$6=3v#(W0zh6!mkZ3gFNnRaWO-NBQXv_K%>9qTF(CO9~M;!otF$M lW`dEQ70z-mVQOGtW>C9T6Xz^DGYRNC22WQ%mvv4FO#oMzP+tH5 literal 0 HcmV?d00001 diff --git a/pix/e/source_code.svg b/pix/e/source_code.svg new file mode 100644 index 00000000000..2fd50040e2a --- /dev/null +++ b/pix/e/source_code.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/special_character.png b/pix/e/special_character.png new file mode 100644 index 0000000000000000000000000000000000000000..7734bf72a1672d13ab17922f7f478647ff1ed364 GIT binary patch literal 363 zcmV-x0hIoUP)AK0vqZ=))VjwW-!@44A7imzM;6rW~SZ%IyoR^nL}s1 zvMi@4PFy@KuV29oINiK{1$mI13o*l@J_N~TKzdp+(2^*OOU5*1Sl$IF zrDn+?3`0v#M~22%N{-A&$A!+`iT>~|K#8%zyQrRT*fGB8@B)e002ov JPDHLkV1oLVmN) + + +]> + + + + + diff --git a/pix/e/spellcheck.png b/pix/e/spellcheck.png new file mode 100644 index 0000000000000000000000000000000000000000..56b4d87ac7ffebeed0c4647d77b606a9b2cbf336 GIT binary patch literal 306 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xu6VjQhE&{IGU=e;Aq4@~={?_<2w!e2OY)2HRj+y`VttY8 ziqIQ{kcQpA0$o%rej4*^*qr~lyt(MyM8hKg*%6h?xA{pyHS^=$P$<>ZI#*qnS+?uSq5&MrjhkcUvK3c$Bpi?xVp?}A= z`m+rW#XcBWyLdj?dj3Fo-0M5>6OQOQGe79tZanWjGv9CVTAqoG^R~;bQ;*Z0lYgn4 zr(V=yqGFYWSp2>zc1z^S)E}lW-guK>&E5TuiHCvlOjf6=cXB4se+-_kelF{r5}E+1 Co_In4 literal 0 HcmV?d00001 diff --git a/pix/e/spellcheck.svg b/pix/e/spellcheck.svg new file mode 100644 index 00000000000..ffbe5d1c49c --- /dev/null +++ b/pix/e/spellcheck.svg @@ -0,0 +1,16 @@ + + + +]> + + + + + \ No newline at end of file diff --git a/pix/e/split_cells.png b/pix/e/split_cells.png new file mode 100644 index 0000000000000000000000000000000000000000..0383e82746e379d265df984e8cf64581c1d4aadb GIT binary patch literal 212 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X$~;{hLn>}1{rUgjo>{da_1c<9k(mdMI4CAGUh2zu^t)4R zwq^0N`Tz@sk?u%!7)g7ETK35MJhl_io> zI3hP_vUx689xy>FXXUi4xCJ_51sMqnhXUB#yfzy + + +]> + + + + + diff --git a/pix/e/strikethrough.png b/pix/e/strikethrough.png new file mode 100644 index 0000000000000000000000000000000000000000..40a85f3d6b132dc9f59f2a00154c98c7cbadd758 GIT binary patch literal 313 zcmV-90mlA`P)Ba0H*;!%?3c~01)%zu<#=gI{*#2025$AQ?LO^^F*j&Am9MR`A|8K z8Uu7&sD8BY+eOu&4~cnUHV+p!XV}vA_WI1|!y304n;ABO38~0U11m#zH;NFaazH z38n_80Rc#{kdLH^0h|9pfC-rcP2&d8D8m+w2FUq + + +]> + + + + + diff --git a/pix/e/styleprops.png b/pix/e/styleprops.png new file mode 100644 index 0000000000000000000000000000000000000000..888ead7c9f6f12b31194a69572e7da0125057eca GIT binary patch literal 312 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XZh5*mhE&{2`t$$4Ju}alS*F>H6S~@qm@i+tWM&}1;Nvli zb%IH=0~51g181jfgW7X`(P$7z~MqBw*Vam(OQO0KMPlQvLvy`Y&^_zMW(^sSVM>JLAR`$N@KUfWXVK{6yYn{ zd_R)dQyT22>}7})y)sjn<0v2Z6|))!%QCJ7_dFY<`X=#hU~JmxyoT|U1MdQ#&2q7P z%Nc=2<}q*!Zfj0D&Tuwig7*){95tD3+yWi46*&wn5)AhXgH!mH7MTEj$>8bg=d#Wz Gp$Py|S7-nL literal 0 HcmV?d00001 diff --git a/pix/e/styleprops.svg b/pix/e/styleprops.svg new file mode 100644 index 00000000000..7e65ec5c88e --- /dev/null +++ b/pix/e/styleprops.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/subscript.png b/pix/e/subscript.png new file mode 100644 index 0000000000000000000000000000000000000000..a3df87d292d076e929d4e140e630e2bcce5168c9 GIT binary patch literal 316 zcmV-C0mJ@@P)MWWzA{ + + +]> + + + + + diff --git a/pix/e/superscript.png b/pix/e/superscript.png new file mode 100644 index 0000000000000000000000000000000000000000..94bd6609dcf4c58a124e211b41e9b2ee5b764abb GIT binary patch literal 336 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XK6$!0hE&{2`t$$4J+o%Qw>LN09K0Bgr6(%L`Y|%H_sZPy^=Lf?PK8HIDN90c$CNN$RRamdFfq{7`V_H#G)+-hn#_$H2f`IUbz05@i znHAQt|72fLz$kWBVPoBjS?mFcl^Xl!35xVOxN=M}-?7Nr)L7 zy2Q9kF+gg4nh5g-i9-$^#%+uN&U^~0Q<@#l^8HxU!s*>`Qx z=PUZ`aFTwN-_&N{?d|=zM=Lq`G57OxbE`R0*cvX`O<2nza=YOj(*!nm1+yb!w*m~E gS4i + + +]> + + + + + diff --git a/pix/e/table.png b/pix/e/table.png new file mode 100644 index 0000000000000000000000000000000000000000..f9950b91e82162f63cb9ab1959d9048bf14ab17a GIT binary patch literal 153 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XtUX;ELn>}1{rUgjo>{da_1c<9k(mdMIB3qWEPhr$!F+ + + +]> + + + + + diff --git a/pix/e/table_props.png b/pix/e/table_props.png new file mode 100644 index 0000000000000000000000000000000000000000..b67c2753857a9f122f52918ca9f7cf9c15875303 GIT binary patch literal 291 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xj(WN{hE&{2`uYFAJ+o%QwKb7U4q1!>&6#2g7&fZauq3f7 z=rJVK&rlHNoWxv)jVgfU#O*_`{?9BfYNdf8d3`w;sv>n=18+ekHE}b_x zt8jq-6Wax*35?P+Jg%H!D6L~UV{mMyar(dGkDqf!m^3pLGG9^U*>UIqV|yC=f?NC- zG+5e2?er6F@LcU-isJ;P>6$p>7_jtXWDj}HIsVRT??m}G3E=GxQQ=;W}G mamS&C3TBV9=Uy-<9AKDrv@nL_zbw!{3=E#GelF{r5}E+ar)l8; literal 0 HcmV?d00001 diff --git a/pix/e/table_props.svg b/pix/e/table_props.svg new file mode 100644 index 00000000000..c4bc6fe6269 --- /dev/null +++ b/pix/e/table_props.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/pix/e/template.png b/pix/e/template.png new file mode 100644 index 0000000000000000000000000000000000000000..76b3c480f7c55da03dd3e240cf04d21858e1881a GIT binary patch literal 209 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XialK%Ln>}1%`wfsR?o)8z}?~D>zk_L{`t+#&Hs%J12`fk z_%?5J)NA@U@utHAjw8P(#-44;k=hhqu(6ThrUP5o-UBUi8V0ijr1=~!aZA3($H7Pgg&ebxsLQ E0MtiEPXGV_ literal 0 HcmV?d00001 diff --git a/pix/e/template.svg b/pix/e/template.svg new file mode 100644 index 00000000000..02189fbcf94 --- /dev/null +++ b/pix/e/template.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/pix/e/text_color.png b/pix/e/text_color.png new file mode 100644 index 0000000000000000000000000000000000000000..10fad87af5d996189e9c485304cf58181f2927e8 GIT binary patch literal 302 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XE_k{)hE&{|5_Frl*?@;<;s3X622R$D+9@r4M>u*M%ucYS zvbZg{&+8?7QsH#rqJ)#1o*X|~UikU5-HI!5+qcDL9D4s-_)xpK8PfsrHhHEDmYWK9 zGX1z~H=l|QI?Z$-+qS~t{dxwAp0+1Et5X?uKHM*2h}f*k(Ei$8kbRQ8!StMk#!8Zn zvjj^!?sx2K5eVr$elOXN`_a`IlQn$A8Pxm|RbThEh<%^ + + +]> + + + + + diff --git a/pix/e/text_highlight.png b/pix/e/text_highlight.png new file mode 100644 index 0000000000000000000000000000000000000000..93ca46390488c7914795d52b2ec43507784540e6 GIT binary patch literal 309 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xu6w#ThE&{2`t$$4J+sja+v;sh6Ly_%kkweWY?+;dSi+%2 zCmI>e4@@|m=D;Aw%+z6cK)!P>$I%;440suS$=_^iclfWzkSHMCF2y6R;GK8i;IV9m zA_dt42i-V5+#*bv=B6<$Ij4Nma*^ad`OaL9FSl3)npyoh-m42pi(lB=p#Q7DP5lNp zOOQPCzL1kmN56GD#56cxW>L82e#y9z)%!%#qkjx$cO9lTU2?IXG>_BA!I5!`NEt)_ z=7~@LI9AQPkW + + +]> + + + + + diff --git a/pix/e/tick.png b/pix/e/tick.png new file mode 100644 index 0000000000000000000000000000000000000000..a1b2f9b0a1a6996d44308b139287fd65bc0d29b0 GIT binary patch literal 274 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xws^WYhE&{2`t$$4J+o>)1TOu}aMf-8S23s@UCimEvL-P#~>cIC>I;xm>mUFtaNxw9(I zxw+QMGjekFG)kO(;4sHD`x?8#+5Tl2ic^lQmSl-=U~;HoI6I+2$FXstQOnd>X zI~c;werRzyATVcEV2~1@^M|ZsvxFKI^BH)B*_>t-s-><_*-gN}OQ V6eH>O=|J~0c)I$ztaD0e0sz3}Ug7`% literal 0 HcmV?d00001 diff --git a/pix/e/tick.svg b/pix/e/tick.svg new file mode 100644 index 00000000000..84278a9823d --- /dev/null +++ b/pix/e/tick.svg @@ -0,0 +1,13 @@ + + + +]> + + + + + diff --git a/pix/e/toggle_blockquote.png b/pix/e/toggle_blockquote.png new file mode 100644 index 0000000000000000000000000000000000000000..fed739cac89c1aeffe7679ed750b138552fdbe7e GIT binary patch literal 290 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xj(EB_hE&{2`t$$4J+o>XQ8tYi?dHZ|SK zI9n~nR41cJxZ#GJXD+i?uSQnH1Qk98L;H|FiURfr7D+nuK3)^KnPowjqmaDgHm13D zjK0QxrVAW&9E?O$4zudqJGPST3Dbm=pE9Hz&J{D<`o!>xX-?LR4ITy#N4YNih`9Q| zo1N1|rI|%7V}SsZ{Kut7SS_B2JxEx*BC$!Wr#*s+!&0koRik=pf`@g3lczopr0P4GB`~Uy| literal 0 HcmV?d00001 diff --git a/pix/e/toggle_blockquote.svg b/pix/e/toggle_blockquote.svg new file mode 100644 index 00000000000..24e158b0d08 --- /dev/null +++ b/pix/e/toggle_blockquote.svg @@ -0,0 +1,16 @@ + + + +]> + + + + + diff --git a/pix/e/underline.png b/pix/e/underline.png new file mode 100644 index 0000000000000000000000000000000000000000..b0b3b06afaf85dc5ee818acd7b4e5ffede018cfe GIT binary patch literal 256 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X7J0fjhE&{2`t$$4Ju}CddA7e9CTwDV)Vy-#NT_vEwdWHP8M>p$PX>+y!uftM|ym&qZ9Aw}=NvT1_Tgcf$` zFSz+hpyTO9oxL1Bt!z8?Fcdv=Q?c9itT(`vCnC1tSvz#!34$fx0%Nzwtwhy_7&CNMDZFeDtYNax?vo(FU-gQu&X%Q~loCIA&u BSF->B literal 0 HcmV?d00001 diff --git a/pix/e/underline.svg b/pix/e/underline.svg new file mode 100644 index 00000000000..e62ca1efb39 --- /dev/null +++ b/pix/e/underline.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/pix/e/undo.png b/pix/e/undo.png new file mode 100644 index 0000000000000000000000000000000000000000..c073b1a4350d9c0eb6b968ffc65aea640d9cb0ce GIT binary patch literal 298 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X&Um^whE&{2`tkq2J+qlj_O&&v4sRN~<=SRSY-qT-IbEM2 z=p&B{gPNB~GlTL8$qEy3rjM)we!jkc8?G}b<M + + +]> + + + + + diff --git a/pix/e/visual_aid.png b/pix/e/visual_aid.png new file mode 100644 index 0000000000000000000000000000000000000000..f3580e7d89f33a49000896901cf4997b31b2592f GIT binary patch literal 179 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XLOop^Ln>}1&9N+gR?ns~VcN7~7TMQyL=0mdDHyU%V01Xp zz$>hL{D_0%f*TBO6O1*A7`HJrGbTOJ_{PM&%lE}a*5t=s_Zs_;B?@pe%lC?~D>*bU ZGW>l$zwx<=_XeN^44$rjF6*2UngCgPI-LLj literal 0 HcmV?d00001 diff --git a/pix/e/visual_aid.svg b/pix/e/visual_aid.svg new file mode 100644 index 00000000000..414e8dd90aa --- /dev/null +++ b/pix/e/visual_aid.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/pix/e/visual_blocks.png b/pix/e/visual_blocks.png new file mode 100644 index 0000000000000000000000000000000000000000..fe2c18397b7e71d40008987e8f3766a113f37acc GIT binary patch literal 382 zcmV-^0fGLBP) + + +]> + + + + + From b73d8a35c2eaa4d15be7d595d4d97513a25dff86 Mon Sep 17 00:00:00 2001 From: Marina Glancy Date: Thu, 5 Sep 2013 11:30:45 +1000 Subject: [PATCH 019/101] MDL-41594 Bug fix for orphaned invisible categories thanks to L.Sanocki --- lib/coursecatlib.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/coursecatlib.php b/lib/coursecatlib.php index 9cd0f6cb833..7db820fc647 100644 --- a/lib/coursecatlib.php +++ b/lib/coursecatlib.php @@ -596,6 +596,9 @@ class coursecat implements renderable, cacheable_object, IteratorAggregate { } else { // parent not found. This is data consistency error but next fix_course_sortorder() should fix it $all[0][] = $record->id; + if (!$record->visible) { + $all['0i'][] = $record->id; + } } $count++; } From 771e3f7cab2ffae05b61ed3f45da1167ca80c2e6 Mon Sep 17 00:00:00 2001 From: sam marshall Date: Mon, 16 Sep 2013 10:42:40 +0100 Subject: [PATCH 020/101] MDL-41839 Files: Zip packer progress minor bugs The progress variable wasn't always passed to recursive calls. This caused a lack of progress() calls between files in subfolders. I added a unit test for this situation. --- lib/filestorage/tests/zip_packer_test.php | 16 ++++++++++++++++ lib/filestorage/zip_packer.php | 6 +++--- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/lib/filestorage/tests/zip_packer_test.php b/lib/filestorage/tests/zip_packer_test.php index da203d4fa30..b39bcdfa3e5 100644 --- a/lib/filestorage/tests/zip_packer_test.php +++ b/lib/filestorage/tests/zip_packer_test.php @@ -446,6 +446,22 @@ class core_files_zip_packer_testcase extends advanced_testcase implements file_p array(file_progress::INDETERMINATE, file_progress::INDETERMINATE), $this->progress[0]); + // Archive to pathname using entire folder and subfolder instead of file list. + unlink($archive); + $folder = make_temp_directory('zip_packer_progress'); + file_put_contents($folder . '/test1.txt', 'hello'); + $subfolder = $folder . '/sub'; + check_dir_exists($subfolder); + file_put_contents($subfolder . '/test2.txt', 'world'); + file_put_contents($subfolder . '/test3.txt', 'and'); + file_put_contents($subfolder . '/test4.txt', 'other'); + file_put_contents($subfolder . '/test5.txt', 'worlds'); + $this->progress = array(); + $result = $packer->archive_to_pathname(array('' => $folder), $archive, true, $this); + $this->assertTrue($result); + // Should send progress at least once per file. + $this->assertTrue(count($this->progress) >= 5); + // Archive to storage. $this->progress = array(); $archivefile = $packer->archive_to_storage($this->files, $context->id, diff --git a/lib/filestorage/zip_packer.php b/lib/filestorage/zip_packer.php index dcd9025b686..175a55217a1 100644 --- a/lib/filestorage/zip_packer.php +++ b/lib/filestorage/zip_packer.php @@ -122,7 +122,7 @@ class zip_packer extends file_packer { } } else if (is_string($file)) { - if (!$this->archive_pathname($ziparch, $archivepath, $file)) { + if (!$this->archive_pathname($ziparch, $archivepath, $file, $progress)) { debugging("Can not zip '$archivepath' file", DEBUG_DEVELOPER); if (!$ignoreinvalidfiles) { $abort = true; @@ -141,7 +141,7 @@ class zip_packer extends file_packer { } } else { - if (!$this->archive_stored($ziparch, $archivepath, $file)) { + if (!$this->archive_stored($ziparch, $archivepath, $file, $progress)) { debugging("Can not zip '$archivepath' file", DEBUG_DEVELOPER); if (!$ignoreinvalidfiles) { $abort = true; @@ -242,7 +242,7 @@ class zip_packer extends file_packer { continue; } $newpath = $archivepath.'/'.$file->getFilename(); - $this->archive_pathname($ziparch, $newpath, $file->getPathname()); + $this->archive_pathname($ziparch, $newpath, $file->getPathname(), $progress); } unset($files); // Release file handles. return true; From 8d137307bf8230a211504807e1a5a9054a6554aa Mon Sep 17 00:00:00 2001 From: sam marshall Date: Tue, 17 Sep 2013 14:43:25 +0100 Subject: [PATCH 021/101] MDL-41840 Restore: Page title, breadcrumbs show incorrect stage Unfortunately it isn't possible to display the current stage before printing header any more, because we need to be able to show a progress bar while doing the code that considers whether or not priunt stage. So this change removes stage information from page title. It is still present (in bold) in the strip that shows where you are within the restore/import. This display was inconsistent anyway; change makes it consistent between Restore and Import. --- backup/import.php | 11 ++--------- backup/restore.php | 7 ++----- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/backup/import.php b/backup/import.php index 13ad15a7b22..8c75014fa3c 100644 --- a/backup/import.php +++ b/backup/import.php @@ -25,11 +25,9 @@ require_login($course); // Must hold restoretargetimport in the current course require_capability('moodle/restore:restoretargetimport', $context); -$heading = get_string('import'); - // Set up the page -$PAGE->set_title($heading); -$PAGE->set_heading($heading); +$PAGE->set_title($course->shortname . ': ' . get_string('import')); +$PAGE->set_heading($course->fullname); $PAGE->set_url(new moodle_url('/backup/import.php', array('id'=>$courseid))); $PAGE->set_context($context); $PAGE->set_pagelayout('incourse'); @@ -182,11 +180,6 @@ if ($backup->get_stage() == backup_ui::STAGE_FINAL) { $backup->save_controller(); } -// Adjust the page for the stage -$PAGE->set_title($heading.': '.$backup->get_stage_name()); -$PAGE->set_heading($heading.': '.$backup->get_stage_name()); -$PAGE->navbar->add($backup->get_stage_name()); - // Display the current stage echo $OUTPUT->header(); if ($backup->enforce_changed_dependencies()) { diff --git a/backup/restore.php b/backup/restore.php index 6040d4b7639..7a6ed73f1b4 100644 --- a/backup/restore.php +++ b/backup/restore.php @@ -43,11 +43,8 @@ if ($stage & restore_ui::STAGE_CONFIRM + restore_ui::STAGE_DESTINATION) { } } -$heading = $course->fullname; - -$PAGE->set_title($heading.': '.$restore->get_stage_name()); -$PAGE->set_heading($heading); -$PAGE->navbar->add($restore->get_stage_name()); +$PAGE->set_title($course->shortname . ': ' . get_string('restore')); +$PAGE->set_heading($course->fullname); $renderer = $PAGE->get_renderer('core','backup'); echo $OUTPUT->header(); From 88372410f5c8396201daba1a2039d4818e3a8041 Mon Sep 17 00:00:00 2001 From: sam marshall Date: Thu, 12 Sep 2013 18:03:01 +0100 Subject: [PATCH 022/101] MDL-38192 Backup and restore: Allow selection by activity type Add to the existing 'select all/none' JavaScript so that users can choose to select or deselect everything of a certain module (e.g. deselect all forums). --- backup/util/ui/base_moodleform.class.php | 9 +- .../ui/yui/backupselectall/backupselectall.js | 99 +++++++++++++++++-- lang/en/backup.php | 2 + theme/base/style/core.css | 1 + 4 files changed, 99 insertions(+), 12 deletions(-) diff --git a/backup/util/ui/base_moodleform.class.php b/backup/util/ui/base_moodleform.class.php index 04ccc81fe9b..a252ec396ca 100644 --- a/backup/util/ui/base_moodleform.class.php +++ b/backup/util/ui/base_moodleform.class.php @@ -330,7 +330,7 @@ abstract class base_moodleform extends moodleform { * Displays the form */ public function display() { - global $PAGE; + global $PAGE, $COURSE; $this->require_definition_after_data(); @@ -342,8 +342,13 @@ abstract class base_moodleform extends moodleform { $config->closeButtonTitle = get_string('close', 'editor'); $PAGE->requires->yui_module('moodle-backup-confirmcancel', 'M.core_backup.watch_cancel_buttons', array($config)); + // Get list of module types on course. + $modinfo = get_fast_modinfo($COURSE); + $modnames = $modinfo->get_used_module_names(true); $PAGE->requires->yui_module('moodle-backup-backupselectall', 'M.core_backup.select_all_init', - array(array('select' => get_string('select'), 'all' => get_string('all'), 'none' => get_string('none')))); + array($modnames)); + $PAGE->requires->strings_for_js(array('select', 'all', 'none'), 'moodle'); + $PAGE->requires->strings_for_js(array('showtypes', 'hidetypes'), 'backup'); parent::display(); } diff --git a/backup/util/ui/yui/backupselectall/backupselectall.js b/backup/util/ui/yui/backupselectall/backupselectall.js index 88aa33f143c..8a41feb9838 100644 --- a/backup/util/ui/yui/backupselectall/backupselectall.js +++ b/backup/util/ui/yui/backupselectall/backupselectall.js @@ -6,15 +6,23 @@ M.core_backup = M.core_backup || {}; /** * Adds select all/none links to the top of the backup/restore/import schema page. */ -M.core_backup.select_all_init = function(str) { +M.core_backup.select_all_init = function(modnames) { var formid = null; - var helper = function(e, check, type) { + var helper = function(e, check, type, mod) { e.preventDefault(); + var prefix = ''; + if (typeof mod !== 'undefined') { + prefix = 'setting_activity_' + mod + '_'; + } var len = type.length; Y.all('input[type="checkbox"]').each(function(checkbox) { var name = checkbox.get('name'); + // If a prefix has been set, ignore checkboxes which don't have that prefix. + if (prefix && name.substring(0, prefix.length) !== prefix) { + return; + } if (name.substring(name.length - len) == type) { checkbox.set('checked', check); } @@ -28,13 +36,17 @@ M.core_backup.select_all_init = function(str) { } }; - var html_generator = function(classname, idtype) { + var html_generator = function(classname, idtype, heading, extra) { + if (typeof extra === 'undefined') { + extra = ''; + } return '
    ' + - ''; @@ -62,13 +74,80 @@ M.core_backup.select_all_init = function(str) { } }); - var html = html_generator('include_setting section_level', 'included'); + // Add global select all/none options. + var html = html_generator('include_setting section_level', 'included', M.util.get_string('select', 'moodle'), + ' (' + M.util.get_string('showtypes', 'backup') + ')'); if (withuserdata) { - html += html_generator('normal_setting', 'userdata'); + html += html_generator('normal_setting', 'userdata', M.util.get_string('select', 'moodle')); } var links = Y.Node.create('
    ' + html + '
    '); firstsection.insert(links, 'before'); + // Add select all/none for each module type. + var initlinks = function(links, mod) { + Y.one('#backup-all-mod_' + mod).on('click', function(e) { helper(e, true, '_included', mod); }); + Y.one('#backup-none-mod_' + mod).on('click', function(e) { helper(e, false, '_included', mod); }); + if (withuserdata) { + Y.one('#backup-all-userdata-mod_' + mod).on('click', function(e) { helper(e, true, withuserdata, mod); }); + Y.one('#backup-none-userdata-mod_' + mod).on('click', function(e) { helper(e, false, withuserdata, mod); }); + } + }; + + // For each module type on the course, add hidden select all/none options. + var modlist = Y.Node.create('")),M.editor_atto.buttonhandlers[n+"_action_"+a]||(e.one("body").delegate("click",M.editor_atto.buttonclicked_handler,".atto_"+n+"_action_"+a),M.editor_atto.buttonhandlers[n+"_action_"+a]=f.handler);M.editor_atto.buttonhandlers[n]||(e.one("body").delegate("click",M.editor_atto.showhide_menu_handler,".atto_"+n+"_button"),M.editor_atto.buttonhandlers[n]=!0);var l=new M.core.dialogue({bodyContent:u,visible:!1,width:"14em",zindex:100,lightbox:!1,closeButton:!1,centered:!1,align:{node:o,points:[e.WidgetPositionAlign.TL,e.WidgetPositionAlign.BL]}});M.editor_atto.menus[n+"_"+t]=l,l.render(),l.hide(),l.headerNode.hide()},add_toolbar_button:function(t,n,r,i){var s=e.one("#"+t+"_toolbar"),o=e.Node.create('");s.append(o),M.editor_atto.buttonhandlers[n]||(e.one("body").delegate("click",M.editor_atto.buttonclicked_handler,".atto_"+n+"_button"),M.editor_atto.buttonhandlers[n]=i),M.editor_atto.widgets[n]=n},is_active:function(t){var n=M.editor_atto.get_selection();n.length&&(n=n.pop());var r=null;return n.parentElement?r=e.one(n.parentElement()):r=e.one(n.startContainer),r&&r.ancestor("#"+t+"editable")!==null},focus:function(t){e.one("#"+t+"editable").focus()},init:function(t){var n=e.one("#"+t.elementid),r=e.Node.create('
    '),i="",s=e.Node.create('
    '),o=e.io(t.content_css,{sync:!0}),u=o.responseText.indexOf("font:");u&&(i=o.responseText.substring(u+"font:".length,o.responseText.length-1),r.setStyle("font",i)),r.setStyle("minHeight",1.2*(n.getAttribute("rows")-1)+"em"),r.append(n.get("value")),n.get("parentNode").insert(s,n),n.get("parentNode").insert(r,n),r.setStyle("color",n.getStyle("color")),r.setStyle("lineHeight",n.getStyle("lineHeight")),r.setStyle("fontSize",n.getStyle("fontSize")),n.hide(),r.on("blur",function(){n.set("value",r.getHTML())}),M.editor_atto.filepickeroptions[t.elementid]=t.filepickeroptions},show_filepicker:function(t,n,r){e.use("core_filepicker",function(e){var i=M.editor_atto.filepickeroptions[t][n];i.formcallback=r,i.editor_target=e.one(t),M.core_filepicker.show(e,i)})},get_selection_from_node:function(e){var t;return window.getSelection?(t=document.createRange(),t.setStartBefore(e.getDOMNode()),t.setEndAfter(e.getDOMNode()),[t]):document.selection?(t=document.body.createTextRange(),t.moveToElementText(e.getDOMNode()),t):!1},get_selection:function(){if(window.getSelection){var e=window.getSelection(),t=[],n=0;for(n=0;n0)return e[0].commonAncestorContainer},get_selection_text:function(){var e=M.editor_atto.get_selection();if(e.length>0&&e[0].cloneContents)return e[0].cloneContents()},set_selection:function(e){var t,n;if(window.getSelection){t=window.getSelection(),t.removeAllRanges();for(n=0;n
    '),o.append(u));var a=e.Node.create('");u.append(a),M.editor_atto.widgets[n]=n;var f=e.Node.create('
    '),l=0,c={};for(l=0;l'+c.text+""+"
    ")),M.editor_atto.buttonhandlers[n+"_action_"+l]||(e.one("body").delegate("click",M.editor_atto.buttonclicked_handler,".atto_"+n+"_action_"+l),M.editor_atto.buttonhandlers[n+"_action_"+l]=c.handler);M.editor_atto.buttonhandlers[n]||(e.one("body").delegate("click",M.editor_atto.showhide_menu_handler,".atto_"+n+"_button"),M.editor_atto.buttonhandlers[n]=!0);var h=new M.core.dialogue({bodyContent:f,visible:!1,width:"14em",zindex:100,lightbox:!1,closeButton:!1,centered:!1,align:{node:a,points:[e.WidgetPositionAlign.TL,e.WidgetPositionAlign.BL]}});M.editor_atto.menus[n+"_"+t]=h,h.render(),h.hide(),h.headerNode.hide()},add_toolbar_button:function(t,n,r,i,s){var o=e.one("#"+t+"_toolbar"),u=e.one("#"+t+"_toolbar .atto_group."+i+"_group");u||(u=e.Node.create('
    '),o.append(u));var a=e.Node.create('");u.append(a),M.editor_atto.buttonhandlers[n]||(e.one("body").delegate("click",M.editor_atto.buttonclicked_handler,".atto_"+n+"_button"),M.editor_atto.buttonhandlers[n]=s),M.editor_atto.widgets[n]=n},is_active:function(t){var n=M.editor_atto.get_selection();n.length&&(n=n.pop());var r=null;return n.parentElement?r=e.one(n.parentElement()):r=e.one(n.startContainer),r&&r.ancestor("#"+t+"editable")!==null},focus:function(t){e.one("#"+t+"editable").focus()},init:function(t){var n=e.one("#"+t.elementid),r=e.Node.create('
    '),i="",s=e.Node.create('
    '),o=e.io(t.content_css,{sync:!0}),u=o.responseText.indexOf("font:");u&&(i=o.responseText.substring(u+"font:".length,o.responseText.length-1),r.setStyle("font",i)),r.setStyle("minHeight",1.2*(n.getAttribute("rows")-1)+"em"),r.append(n.get("value")),n.get("parentNode").insert(s,n),n.get("parentNode").insert(r,n),r.setStyle("color",n.getStyle("color")),r.setStyle("lineHeight",n.getStyle("lineHeight")),r.setStyle("fontSize",n.getStyle("fontSize")),n.hide(),r.on("blur",function(){n.set("value",r.getHTML())}),M.editor_atto.filepickeroptions[t.elementid]=t.filepickeroptions},show_filepicker:function(t,n,r){e.use("core_filepicker",function(e){var i=M.editor_atto.filepickeroptions[t][n];i.formcallback=r,i.editor_target=e.one(t),M.core_filepicker.show(e,i)})},get_selection_from_node:function(e){var t;return window.getSelection?(t=document.createRange(),t.setStartBefore(e.getDOMNode()),t.setEndAfter(e.getDOMNode()),[t]):document.selection?(t=document.body.createTextRange(),t.moveToElementText(e.getDOMNode()),t):!1},get_selection:function(){if(window.getSelection){var e=window.getSelection(),t=[],n=0;for(n=0;n0)return e[0].commonAncestorContainer},get_selection_text:function(){var e=M.editor_atto.get_selection();if(e.length>0&&e[0].cloneContents)return e[0].cloneContents()},set_selection:function(e){var t,n;if(window.getSelection){t=window.getSelection(),t.removeAllRanges();for(n=0;n
    '); + toolbar.append(group); + } var button = Y.Node.create(''); - toolbar.append(button); + group.append(button); // Save the name of the plugin. M.editor_atto.widgets[plugin] = plugin; @@ -215,12 +221,18 @@ M.editor_atto = M.editor_atto || { /** * Add a button to the toolbar belonging to the editor for element with id "elementid". * @param string elementid - the id of the textarea we created this editor from. - * @param string plugin - the plugin defining the button - * @param string icon - the html used for the content of the button + * @param string plugin - the plugin defining the button. + * @param string icon - the html used for the content of the button. + * @param string groupname - the group the button should be appended to. * @handler function handler- A function to call when the button is clicked. */ - add_toolbar_button : function(elementid, plugin, icon, handler) { - var toolbar = Y.one('#' + elementid + '_toolbar'); + add_toolbar_button : function(elementid, plugin, icon, groupname, handler) { + var toolbar = Y.one('#' + elementid + '_toolbar'), + group = Y.one('#' + elementid + '_toolbar .atto_group.' + groupname + '_group'); + if (!group) { + group = Y.Node.create('
    '); + toolbar.append(group); + } var button = Y.Node.create(''); - toolbar.append(button); + group.append(button); // Save the name of the plugin. M.editor_atto.widgets[plugin] = plugin; @@ -213,12 +219,18 @@ M.editor_atto = M.editor_atto || { /** * Add a button to the toolbar belonging to the editor for element with id "elementid". * @param string elementid - the id of the textarea we created this editor from. - * @param string plugin - the plugin defining the button - * @param string icon - the html used for the content of the button + * @param string plugin - the plugin defining the button. + * @param string icon - the html used for the content of the button. + * @param string groupname - the group the button should be appended to. * @handler function handler- A function to call when the button is clicked. */ - add_toolbar_button : function(elementid, plugin, icon, handler) { - var toolbar = Y.one('#' + elementid + '_toolbar'); + add_toolbar_button : function(elementid, plugin, icon, groupname, handler) { + var toolbar = Y.one('#' + elementid + '_toolbar'), + group = Y.one('#' + elementid + '_toolbar .atto_group.' + groupname + '_group'); + if (!group) { + group = Y.Node.create('
    '); + toolbar.append(group); + } var button = Y.Node.create(''); group.append(button); + currentfocus = toolbar.getAttribute('aria-activedescendant'); + if (!currentfocus) { + button.setAttribute('tabindex', '0'); + toolbar.setAttribute('aria-activedescendant', button.generateID()); + } + // Save the name of the plugin. M.editor_atto.widgets[plugin] = plugin; @@ -228,20 +238,30 @@ M.editor_atto = M.editor_atto || { */ add_toolbar_button : function(elementid, plugin, icon, groupname, handler) { var toolbar = Y.one('#' + elementid + '_toolbar'), - group = Y.one('#' + elementid + '_toolbar .atto_group.' + groupname + '_group'); + group = Y.one('#' + elementid + '_toolbar .atto_group.' + groupname + '_group'), + button, + currentfocus; + if (!group) { group = Y.Node.create('
    '); toolbar.append(group); } - var button = Y.Node.create(''); + button = Y.Node.create(''); group.append(button); + currentfocus = toolbar.getAttribute('aria-activedescendant'); + if (!currentfocus) { + button.setAttribute('tabindex', '0'); + toolbar.setAttribute('aria-activedescendant', button.generateID()); + } + // We only need to attach this once. if (!M.editor_atto.buttonhandlers[plugin]) { Y.one('body').delegate('click', M.editor_atto.buttonclicked_handler, '.atto_' + plugin + '_button'); @@ -294,7 +314,7 @@ M.editor_atto = M.editor_atto || { 'spellcheck="true" ' + 'class="editor_atto"/>'); var cssfont = ''; - var toolbar = Y.Node.create('
    '); + var toolbar = Y.Node.create('")),M.editor_atto.buttonhandlers[n+"_action_"+l]||(e.one("body").delegate("click",M.editor_atto.buttonclicked_handler,".atto_"+n+"_action_"+l),M.editor_atto.buttonhandlers[n+"_action_"+l]=c.handler);M.editor_atto.buttonhandlers[n]||(e.one("body").delegate("click",M.editor_atto.showhide_menu_handler,".atto_"+n+"_button"),M.editor_atto.buttonhandlers[n]=!0);var h=new M.core.dialogue({bodyContent:f,visible:!1,width:"14em",zindex:100,lightbox:!1,closeButton:!1,centered:!1,align:{node:a,points:[e.WidgetPositionAlign.TL,e.WidgetPositionAlign.BL]}});M.editor_atto.menus[n+"_"+t]=h,h.render(),h.hide(),h.headerNode.hide()},add_toolbar_button:function(t,n,r,i,s){var o=e.one("#"+t+"_toolbar"),u=e.one("#"+t+"_toolbar .atto_group."+i+"_group");u||(u=e.Node.create('
    '),o.append(u));var a=e.Node.create('");u.append(a),M.editor_atto.buttonhandlers[n]||(e.one("body").delegate("click",M.editor_atto.buttonclicked_handler,".atto_"+n+"_button"),M.editor_atto.buttonhandlers[n]=s),M.editor_atto.widgets[n]=n},is_active:function(t){var n=M.editor_atto.get_selection();n.length&&(n=n.pop());var r=null;return n.parentElement?r=e.one(n.parentElement()):r=e.one(n.startContainer),r&&r.ancestor("#"+t+"editable")!==null},focus:function(t){e.one("#"+t+"editable").focus()},init:function(t){var n=e.one("#"+t.elementid),r=e.Node.create('
    '),i="",s=e.Node.create('
    '),o=e.io(t.content_css,{sync:!0}),u=o.responseText.indexOf("font:");u&&(i=o.responseText.substring(u+"font:".length,o.responseText.length-1),r.setStyle("font",i)),r.setStyle("minHeight",1.2*(n.getAttribute("rows")-1)+"em"),r.append(n.get("value")),n.get("parentNode").insert(s,n),n.get("parentNode").insert(r,n),r.setStyle("color",n.getStyle("color")),r.setStyle("lineHeight",n.getStyle("lineHeight")),r.setStyle("fontSize",n.getStyle("fontSize")),n.hide(),r.on("blur",function(){n.set("value",r.getHTML())}),M.editor_atto.filepickeroptions[t.elementid]=t.filepickeroptions},show_filepicker:function(t,n,r){e.use("core_filepicker",function(e){var i=M.editor_atto.filepickeroptions[t][n];i.formcallback=r,i.editor_target=e.one(t),M.core_filepicker.show(e,i)})},get_selection_from_node:function(e){var t;return window.getSelection?(t=document.createRange(),t.setStartBefore(e.getDOMNode()),t.setEndAfter(e.getDOMNode()),[t]):document.selection?(t=document.body.createTextRange(),t.moveToElementText(e.getDOMNode()),t):!1},get_selection:function(){if(window.getSelection){var e=window.getSelection(),t=[],n=0;for(n=0;n0)return e[0].commonAncestorContainer},get_selection_text:function(){var e=M.editor_atto.get_selection();if(e.length>0&&e[0].cloneContents)return e[0].cloneContents()},set_selection:function(e){var t,n;if(window.getSelection){t=window.getSelection(),t.removeAllRanges();for(n=0;n
    '),o.append(u)),f=e.Node.create('"),u.append(f),a=o.getAttribute("aria-activedescendant"),a||(f.setAttribute("tabindex","0"),o.setAttribute("aria-activedescendant",f.generateID())),M.editor_atto.widgets[n]=n;var l=e.Node.create('
    '),c=0,h={};for(c=0;c'+h.text+""+"
    ")),M.editor_atto.buttonhandlers[n+"_action_"+c]||(e.one("body").delegate("click",M.editor_atto.buttonclicked_handler,".atto_"+n+"_action_"+c),M.editor_atto.buttonhandlers[n+"_action_"+c]=h.handler);M.editor_atto.buttonhandlers[n]||(e.one("body").delegate("click",M.editor_atto.showhide_menu_handler,".atto_"+n+"_button"),M.editor_atto.buttonhandlers[n]=!0);var p=new M.core.dialogue({bodyContent:l,visible:!1,width:"14em",zindex:100,lightbox:!1,closeButton:!1,centered:!1,align:{node:f,points:[e.WidgetPositionAlign.TL,e.WidgetPositionAlign.BL]}});M.editor_atto.menus[n+"_"+t]=p,p.render(),p.hide(),p.headerNode.hide()},add_toolbar_button:function(t,n,r,i,s){var o=e.one("#"+t+"_toolbar"),u=e.one("#"+t+"_toolbar .atto_group."+i+"_group"),a,f;u||(u=e.Node.create('
    '),o.append(u)),a=e.Node.create('"),u.append(a),f=o.getAttribute("aria-activedescendant"),f||(a.setAttribute("tabindex","0"),o.setAttribute("aria-activedescendant",a.generateID())),M.editor_atto.buttonhandlers[n]||(e.one("body").delegate("click",M.editor_atto.buttonclicked_handler,".atto_"+n+"_button"),M.editor_atto.buttonhandlers[n]=s),M.editor_atto.widgets[n]=n},is_active:function(t){var n=M.editor_atto.get_selection();n.length&&(n=n.pop());var r=null;return n.parentElement?r=e.one(n.parentElement()):r=e.one(n.startContainer),r&&r.ancestor("#"+t+"editable")!==null},focus:function(t){e.one("#"+t+"editable").focus()},init:function(t){var n=e.one("#"+t.elementid),r=e.Node.create('
    '),i="",s=e.Node.create(''); toolbar.append(group); } - var button = Y.Node.create(''); group.append(button); + currentfocus = toolbar.getAttribute('aria-activedescendant'); + if (!currentfocus) { + button.setAttribute('tabindex', '0'); + toolbar.setAttribute('aria-activedescendant', button.generateID()); + } + // Save the name of the plugin. M.editor_atto.widgets[plugin] = plugin; @@ -228,20 +238,30 @@ M.editor_atto = M.editor_atto || { */ add_toolbar_button : function(elementid, plugin, icon, groupname, handler) { var toolbar = Y.one('#' + elementid + '_toolbar'), - group = Y.one('#' + elementid + '_toolbar .atto_group.' + groupname + '_group'); + group = Y.one('#' + elementid + '_toolbar .atto_group.' + groupname + '_group'), + button, + currentfocus; + if (!group) { group = Y.Node.create('
    '); toolbar.append(group); } - var button = Y.Node.create(''); + button = Y.Node.create(''); group.append(button); + currentfocus = toolbar.getAttribute('aria-activedescendant'); + if (!currentfocus) { + button.setAttribute('tabindex', '0'); + toolbar.setAttribute('aria-activedescendant', button.generateID()); + } + // We only need to attach this once. if (!M.editor_atto.buttonhandlers[plugin]) { Y.one('body').delegate('click', M.editor_atto.buttonclicked_handler, '.atto_' + plugin + '_button'); @@ -294,7 +314,7 @@ M.editor_atto = M.editor_atto || { 'spellcheck="true" ' + 'class="editor_atto"/>'); var cssfont = ''; - var toolbar = Y.Node.create('
    '); + var toolbar = Y.Node.create('
  • '); - $mdwp_placeholders = explode(' ', str_rot13( - 'pEj07ZbbBZ U1kqgh4w4p pre2zmeN6K QTi31t9pre ol0MP1jzJR '. - 'ML5IjmbRol ulANi1NsGY J7zRLJqPul liA8ctl16T K9nhooUHli')); - } - - function mdwp_add_p($text) { - if (!preg_match('{^$|^<(p|ul|ol|dl|pre|blockquote)>}i', $text)) { - $text = '

    '.$text.'

    '; - $text = preg_replace('{\n{2,}}', "

    \n\n

    ", $text); - } - return $text; - } - - function mdwp_strip_p($t) { return preg_replace('{}i', '', $t); } - - function mdwp_hide_tags($text) { - global $mdwp_hidden_tags, $mdwp_placeholders; - return str_replace($mdwp_hidden_tags, $mdwp_placeholders, $text); - } - function mdwp_show_tags($text) { - global $mdwp_hidden_tags, $mdwp_placeholders; - return str_replace($mdwp_placeholders, $mdwp_hidden_tags, $text); - } -} - - -### bBlog Plugin Info ### - -function identify_modifier_markdown() { - return array( - 'name' => 'markdown', - 'type' => 'modifier', - 'nicename' => 'PHP Markdown Extra', - 'description' => 'A text-to-HTML conversion tool for web writers', - 'authors' => 'Michel Fortin and John Gruber', - 'licence' => 'GPL', - 'version' => MARKDOWNEXTRA_VERSION, - 'help' => 'Markdown syntax allows you to write using an easy-to-read, easy-to-write plain text format. Based on the original Perl version by John Gruber. More...', - ); -} - - -### Smarty Modifier Interface ### - -function smarty_modifier_markdown($text) { - return Markdown($text); -} - - -### Textile Compatibility Mode ### - -# Rename this file to "classTextile.php" and it can replace Textile everywhere. - -if (strcasecmp(substr(__FILE__, -16), "classTextile.php") == 0) { - # Try to include PHP SmartyPants. Should be in the same directory. - @include_once 'smartypants.php'; - # Fake Textile class. It calls Markdown instead. - class Textile { - function TextileThis($text, $lite='', $encode='') { - if ($lite == '' && $encode == '') $text = Markdown($text); - if (function_exists('SmartyPants')) $text = SmartyPants($text); - return $text; - } - # Fake restricted version: restrictions are not supported for now. - function TextileRestricted($text, $lite='', $noimage='') { - return $this->TextileThis($text, $lite); - } - # Workaround to ensure compatibility with TextPattern 4.0.3. - function blockLite($text) { return $text; } - } -} - +namespace Michelf; # # Markdown Parser Class # -class Markdown_Parser { +class Markdown { + + ### Version ### + + const MARKDOWNLIB_VERSION = "1.3"; + + ### Simple Function Interface ### + + public static function defaultTransform($text) { + # + # Initialize the parser and return the result of its transform method. + # This will work fine for derived classes too. + # + # Take parser class on which this function was called. + $parser_class = \get_called_class(); + + # try to take parser from the static parser list + static $parser_list; + $parser =& $parser_list[$parser_class]; + + # create the parser it not already set + if (!$parser) + $parser = new $parser_class; + + # Transform text using parser. + return $parser->transform($text); + } + + ### Configuration Variables ### + + # Change to ">" for HTML output. + public $empty_element_suffix = " />"; + public $tab_width = 4; + + # Change to `true` to disallow markup or entities. + public $no_markup = false; + public $no_entities = false; + + # Predefined urls and titles for reference links and images. + public $predef_urls = array(); + public $predef_titles = array(); + + + ### Parser Implementation ### # Regex to match balanced [brackets]. # Needed to insert a maximum bracked depth while converting to PHP. - var $nested_brackets_depth = 6; - var $nested_brackets_re; + protected $nested_brackets_depth = 6; + protected $nested_brackets_re; - var $nested_url_parenthesis_depth = 4; - var $nested_url_parenthesis_re; + protected $nested_url_parenthesis_depth = 4; + protected $nested_url_parenthesis_re; # Table of hash values for escaped characters: - var $escape_chars = '\`*_{}[]()>#+-.!'; - var $escape_chars_re; - - # Change to ">" for HTML output. - var $empty_element_suffix = MARKDOWN_EMPTY_ELEMENT_SUFFIX; - var $tab_width = MARKDOWN_TAB_WIDTH; - - # Change to `true` to disallow markup or entities. - var $no_markup = false; - var $no_entities = false; - - # Predefined urls and titles for reference links and images. - var $predef_urls = array(); - var $predef_titles = array(); + protected $escape_chars = '\`*_{}[]()>#+-.!'; + protected $escape_chars_re; - function Markdown_Parser() { + public function __construct() { # # Constructor function. Initialize appropriate member variables. # @@ -264,15 +100,15 @@ class Markdown_Parser { # Internal hashes used during transformation. - var $urls = array(); - var $titles = array(); - var $html_hashes = array(); + protected $urls = array(); + protected $titles = array(); + protected $html_hashes = array(); # Status flag to avoid invalid nesting. - var $in_anchor = false; + protected $in_anchor = false; - function setup() { + protected function setup() { # # Called before the transformation process starts to setup parser # states. @@ -282,10 +118,10 @@ class Markdown_Parser { $this->titles = $this->predef_titles; $this->html_hashes = array(); - $in_anchor = false; + $this->in_anchor = false; } - function teardown() { + protected function teardown() { # # Called after the transformation process to clear any variable # which may be taking up memory unnecessarly. @@ -296,7 +132,7 @@ class Markdown_Parser { } - function transform($text) { + public function transform($text) { # # Main function. Performs some preprocessing on the input text # and pass it through the document gamut. @@ -335,7 +171,7 @@ class Markdown_Parser { return $text . "\n"; } - var $document_gamut = array( + protected $document_gamut = array( # Strip link definitions, store in hashes. "stripLinkDefinitions" => 20, @@ -343,7 +179,7 @@ class Markdown_Parser { ); - function stripLinkDefinitions($text) { + protected function stripLinkDefinitions($text) { # # Strips link definitions from text, stores the URLs and titles in # hash references. @@ -377,7 +213,7 @@ class Markdown_Parser { $text); return $text; } - function _stripLinkDefinitions_callback($matches) { + protected function _stripLinkDefinitions_callback($matches) { $link_id = strtolower($matches[1]); $url = $matches[2] == '' ? $matches[3] : $matches[2]; $this->urls[$link_id] = $url; @@ -386,7 +222,7 @@ class Markdown_Parser { } - function hashHTMLBlocks($text) { + protected function hashHTMLBlocks($text) { if ($this->no_markup) return $text; $less_than_tab = $this->tab_width - 1; @@ -406,7 +242,9 @@ class Markdown_Parser { # $block_tags_a_re = 'ins|del'; $block_tags_b_re = 'p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|address|'. - 'script|noscript|form|fieldset|iframe|math'; + 'script|noscript|form|fieldset|iframe|math|svg|'. + 'article|section|nav|aside|hgroup|header|footer|'. + 'figure'; # Regular expression for the content of a block tag. $nested_tags_level = 4; @@ -523,14 +361,14 @@ class Markdown_Parser { return $text; } - function _hashHTMLBlocks_callback($matches) { + protected function _hashHTMLBlocks_callback($matches) { $text = $matches[1]; $key = $this->hashBlock($text); return "\n\n$key\n\n"; } - function hashPart($text, $boundary = 'X') { + protected function hashPart($text, $boundary = 'X') { # # Called whenever a tag must be hashed when a function insert an atomic # element in the text stream. Passing $text to through this function gives @@ -553,7 +391,7 @@ class Markdown_Parser { } - function hashBlock($text) { + protected function hashBlock($text) { # # Shortcut function for hashPart with block-level boundaries. # @@ -561,7 +399,7 @@ class Markdown_Parser { } - var $block_gamut = array( + protected $block_gamut = array( # # These are all the transformations that form block-level # tags like paragraphs, headers, and list items. @@ -574,7 +412,7 @@ class Markdown_Parser { "doBlockQuotes" => 60, ); - function runBlockGamut($text) { + protected function runBlockGamut($text) { # # Run block gamut tranformations. # @@ -588,7 +426,7 @@ class Markdown_Parser { return $this->runBasicBlockGamut($text); } - function runBasicBlockGamut($text) { + protected function runBasicBlockGamut($text) { # # Run block gamut tranformations, without hashing HTML blocks. This is # useful when HTML blocks are known to be already hashed, like in the first @@ -605,7 +443,7 @@ class Markdown_Parser { } - function doHorizontalRules($text) { + protected function doHorizontalRules($text) { # Do Horizontal Rules: return preg_replace( '{ @@ -623,7 +461,7 @@ class Markdown_Parser { } - var $span_gamut = array( + protected $span_gamut = array( # # These are all the transformations that occur *within* block-level # tags like paragraphs, headers, and list items. @@ -647,7 +485,7 @@ class Markdown_Parser { "doHardBreaks" => 60, ); - function runSpanGamut($text) { + protected function runSpanGamut($text) { # # Run span gamut tranformations. # @@ -659,17 +497,17 @@ class Markdown_Parser { } - function doHardBreaks($text) { + protected function doHardBreaks($text) { # Do hard breaks: return preg_replace_callback('/ {2,}\n/', array(&$this, '_doHardBreaks_callback'), $text); } - function _doHardBreaks_callback($matches) { + protected function _doHardBreaks_callback($matches) { return $this->hashPart("empty_element_suffix\n"); } - function doAnchors($text) { + protected function doAnchors($text) { # # Turn Markdown link shortcuts into XHTML tags. # @@ -739,7 +577,7 @@ class Markdown_Parser { $this->in_anchor = false; return $text; } - function _doAnchors_reference_callback($matches) { + protected function _doAnchors_reference_callback($matches) { $whole_match = $matches[1]; $link_text = $matches[2]; $link_id =& $matches[3]; @@ -773,7 +611,7 @@ class Markdown_Parser { } return $result; } - function _doAnchors_inline_callback($matches) { + protected function _doAnchors_inline_callback($matches) { $whole_match = $matches[1]; $link_text = $this->runSpanGamut($matches[2]); $url = $matches[3] == '' ? $matches[4] : $matches[3]; @@ -794,7 +632,7 @@ class Markdown_Parser { } - function doImages($text) { + protected function doImages($text) { # # Turn Markdown image shortcuts into tags. # @@ -849,7 +687,7 @@ class Markdown_Parser { return $text; } - function _doImages_reference_callback($matches) { + protected function _doImages_reference_callback($matches) { $whole_match = $matches[1]; $alt_text = $matches[2]; $link_id = strtolower($matches[3]); @@ -877,7 +715,7 @@ class Markdown_Parser { return $result; } - function _doImages_inline_callback($matches) { + protected function _doImages_inline_callback($matches) { $whole_match = $matches[1]; $alt_text = $matches[2]; $url = $matches[3] == '' ? $matches[4] : $matches[3]; @@ -896,7 +734,7 @@ class Markdown_Parser { } - function doHeaders($text) { + protected function doHeaders($text) { # Setext-style headers: # Header 1 # ======== @@ -926,7 +764,7 @@ class Markdown_Parser { return $text; } - function _doHeaders_callback_setext($matches) { + protected function _doHeaders_callback_setext($matches) { # Terrible hack to check we haven't found an empty list item. if ($matches[2] == '-' && preg_match('{^-(?: |$)}', $matches[1])) return $matches[0]; @@ -935,14 +773,14 @@ class Markdown_Parser { $block = "".$this->runSpanGamut($matches[1]).""; return "\n" . $this->hashBlock($block) . "\n\n"; } - function _doHeaders_callback_atx($matches) { + protected function _doHeaders_callback_atx($matches) { $level = strlen($matches[1]); $block = "".$this->runSpanGamut($matches[2]).""; return "\n" . $this->hashBlock($block) . "\n\n"; } - function doLists($text) { + protected function doLists($text) { # # Form HTML ordered (numbered) and unordered (bulleted) lists. # @@ -1008,7 +846,7 @@ class Markdown_Parser { return $text; } - function _doLists_callback($matches) { + protected function _doLists_callback($matches) { # Re-usable patterns to match list item bullets and number markers: $marker_ul_re = '[*+-]'; $marker_ol_re = '\d+[\.]'; @@ -1026,9 +864,9 @@ class Markdown_Parser { return "\n". $result ."\n\n"; } - var $list_level = 0; + protected $list_level = 0; - function processListItems($list_str, $marker_any_re) { + protected function processListItems($list_str, $marker_any_re) { # # Process the contents of a single ordered or unordered list, splitting it # into individual list items. @@ -1074,7 +912,7 @@ class Markdown_Parser { $this->list_level--; return $list_str; } - function _processListItems_callback($matches) { + protected function _processListItems_callback($matches) { $item = $matches[4]; $leading_line =& $matches[1]; $leading_space =& $matches[2]; @@ -1099,7 +937,7 @@ class Markdown_Parser { } - function doCodeBlocks($text) { + protected function doCodeBlocks($text) { # # Process Markdown `

    ` blocks.
     	#
    @@ -1117,7 +955,7 @@ class Markdown_Parser {
     
     		return $text;
     	}
    -	function _doCodeBlocks_callback($matches) {
    +	protected function _doCodeBlocks_callback($matches) {
     		$codeblock = $matches[1];
     
     		$codeblock = $this->outdent($codeblock);
    @@ -1131,7 +969,7 @@ class Markdown_Parser {
     	}
     
     
    -	function makeCodeSpan($code) {
    +	protected function makeCodeSpan($code) {
     	#
     	# Create a code span markup for $code. Called from handleSpanToken.
     	#
    @@ -1140,24 +978,24 @@ class Markdown_Parser {
     	}
     
     
    -	var $em_relist = array(
    +	protected $em_relist = array(
     		''  => '(?:(? '(?<=\S|^)(? '(?<=\S|^)(? '(?:(? '(?<=\S|^)(? '(?<=\S|^)(? '(?:(? '(?<=\S|^)(? '(?<=\S|^)(?
    @@ -1317,7 +1155,7 @@ class Markdown_Parser {
     
     		return $text;
     	}
    -	function _doBlockQuotes_callback($matches) {
    +	protected function _doBlockQuotes_callback($matches) {
     		$bq = $matches[1];
     		# trim one level of quoting - trim whitespace-only lines
     		$bq = preg_replace('/^[ ]*>[ ]?|^[ ]+$/m', '', $bq);
    @@ -1331,14 +1169,14 @@ class Markdown_Parser {
     
     		return "\n". $this->hashBlock("
    \n$bq\n
    ")."\n\n"; } - function _doBlockQuotes_callback2($matches) { + protected function _doBlockQuotes_callback2($matches) { $pre = $matches[1]; $pre = preg_replace('/^ /m', '', $pre); return $pre; } - function formParagraphs($text) { + protected function formParagraphs($text) { # # Params: # $text - string to process with html

    tags @@ -1408,7 +1246,7 @@ class Markdown_Parser { } - function encodeAttribute($text) { + protected function encodeAttribute($text) { # # Encode text for a double-quoted HTML attribute. This function # is *not* suitable for attributes enclosed in single quotes. @@ -1419,7 +1257,7 @@ class Markdown_Parser { } - function encodeAmpsAndAngles($text) { + protected function encodeAmpsAndAngles($text) { # # Smart processing for ampersands and angle brackets that need to # be encoded. Valid character entities are left alone unless the @@ -1440,7 +1278,7 @@ class Markdown_Parser { } - function doAutoLinks($text) { + protected function doAutoLinks($text) { $text = preg_replace_callback('{<((https?|ftp|dict):[^\'">\s]+)>}i', array(&$this, '_doAutoLinks_url_callback'), $text); @@ -1467,19 +1305,19 @@ class Markdown_Parser { return $text; } - function _doAutoLinks_url_callback($matches) { + protected function _doAutoLinks_url_callback($matches) { $url = $this->encodeAttribute($matches[1]); $link = "$url"; return $this->hashPart($link); } - function _doAutoLinks_email_callback($matches) { + protected function _doAutoLinks_email_callback($matches) { $address = $matches[1]; $link = $this->encodeEmailAddress($address); return $this->hashPart($link); } - function encodeEmailAddress($addr) { + protected function encodeEmailAddress($addr) { # # Input: an email address, e.g. "foo@example.com" # @@ -1520,7 +1358,7 @@ class Markdown_Parser { } - function parseSpan($str) { + protected function parseSpan($str) { # # Take the string $str and parse it into tokens, hashing embeded HTML, # escaped characters and handling code spans. @@ -1539,12 +1377,16 @@ class Markdown_Parser { | <\?.*?\?> | <%.*?%> # processing instruction | - <[/!$]?[-a-zA-Z0-9:_]+ # regular tags + <[!$]?[-a-zA-Z0-9:_]+ # regular tags (?> \s (?>[^"\'>]+|"[^"]*"|\'[^\']*\')* )? > + | + <[-a-zA-Z0-9:_]+\s*/> # xml-style empty tag + | + # closing tag ').' ) }xs'; @@ -1576,7 +1418,7 @@ class Markdown_Parser { } - function handleSpanToken($token, &$str) { + protected function handleSpanToken($token, &$str) { # # Handle $token provided by parseSpan by determining its nature and # returning the corresponding value that should replace it. @@ -1600,7 +1442,7 @@ class Markdown_Parser { } - function outdent($text) { + protected function outdent($text) { # # Remove one level of line-leading tabs or spaces # @@ -1610,9 +1452,9 @@ class Markdown_Parser { # String length function for detab. `_initDetab` will create a function to # hanlde UTF-8 if the default function does not exist. - var $utf8_strlen = 'mb_strlen'; + protected $utf8_strlen = 'mb_strlen'; - function detab($text) { + protected function detab($text) { # # Replace tabs with the appropriate amount of space. # @@ -1625,7 +1467,7 @@ class Markdown_Parser { return $text; } - function _detab_callback($matches) { + protected function _detab_callback($matches) { $line = $matches[0]; $strlen = $this->utf8_strlen; # strlen function for UTF-8. @@ -1642,7 +1484,7 @@ class Markdown_Parser { } return $line; } - function _initDetab() { + protected function _initDetab() { # # Check for the availability of the function in the `utf8_strlen` property # (initially `mb_strlen`). If the function is not available, create a @@ -1656,14 +1498,14 @@ class Markdown_Parser { } - function unhash($text) { + protected function unhash($text) { # # Swap back in all the tags hashed by _HashHTMLBlocks. # return preg_replace_callback('/(.)\x1A[0-9]+\1/', array(&$this, '_unhash_callback'), $text); } - function _unhash_callback($matches) { + protected function _unhash_callback($matches) { return $this->html_hashes[$matches[0]]; } @@ -1671,27 +1513,50 @@ class Markdown_Parser { # -# Markdown Extra Parser Class +# Temporary Markdown Extra Parser Implementation Class +# +# NOTE: DON'T USE THIS CLASS +# Currently the implementation of of Extra resides here in this temporary class. +# This makes it easier to propagate the changes between the three different +# packaging styles of PHP Markdown. When this issue is resolved, this +# MarkdownExtra_TmpImpl class here will disappear and \Michelf\MarkdownExtra +# will contain the code. So please use \Michelf\MarkdownExtra and ignore this +# one. # -class MarkdownExtra_Parser extends Markdown_Parser { +class _MarkdownExtra_TmpImpl extends \Michelf\Markdown { + + ### Configuration Variables ### # Prefix for footnote ids. - var $fn_id_prefix = ""; + public $fn_id_prefix = ""; # Optional title attribute for footnote links and backlinks. - var $fn_link_title = MARKDOWN_FN_LINK_TITLE; - var $fn_backlink_title = MARKDOWN_FN_BACKLINK_TITLE; + public $fn_link_title = ""; + public $fn_backlink_title = ""; # Optional class attribute for footnote links and backlinks. - var $fn_link_class = MARKDOWN_FN_LINK_CLASS; - var $fn_backlink_class = MARKDOWN_FN_BACKLINK_CLASS; + public $fn_link_class = "footnote-ref"; + public $fn_backlink_class = "footnote-backref"; + + # Class name for table cell alignment (%% replaced left/center/right) + # For instance: 'go-%%' becomes 'go-left' or 'go-right' or 'go-center' + # If empty, the align attribute is used instead of a class name. + public $table_align_class_tmpl = ''; + + # Optional class prefix for fenced code block. + public $code_class_prefix = ""; + # Class attribute for code blocks goes on the `code` tag; + # setting this to true will put attributes on the `pre` tag instead. + public $code_attr_on_pre = false; # Predefined abbreviations. - var $predef_abbr = array(); + public $predef_abbr = array(); - function MarkdownExtra_Parser() { + ### Parser Implementation ### + + public function __construct() { # # Constructor function. Initialize the parser object. # @@ -1717,21 +1582,23 @@ class MarkdownExtra_Parser extends Markdown_Parser { "doAbbreviations" => 70, ); - parent::Markdown_Parser(); + parent::__construct(); } # Extra variables used during extra transformations. - var $footnotes = array(); - var $footnotes_ordered = array(); - var $abbr_desciptions = array(); - var $abbr_word_re = ''; + protected $footnotes = array(); + protected $footnotes_ordered = array(); + protected $footnotes_ref_count = array(); + protected $footnotes_numbers = array(); + protected $abbr_desciptions = array(); + protected $abbr_word_re = ''; # Give the current footnote number. - var $footnote_counter = 1; + protected $footnote_counter = 1; - function setup() { + protected function setup() { # # Setting up Extra-specific variables. # @@ -1739,6 +1606,8 @@ class MarkdownExtra_Parser extends Markdown_Parser { $this->footnotes = array(); $this->footnotes_ordered = array(); + $this->footnotes_ref_count = array(); + $this->footnotes_numbers = array(); $this->abbr_desciptions = array(); $this->abbr_word_re = ''; $this->footnote_counter = 1; @@ -1751,12 +1620,14 @@ class MarkdownExtra_Parser extends Markdown_Parser { } } - function teardown() { + protected function teardown() { # # Clearing Extra-specific variables. # $this->footnotes = array(); $this->footnotes_ordered = array(); + $this->footnotes_ref_count = array(); + $this->footnotes_numbers = array(); $this->abbr_desciptions = array(); $this->abbr_word_re = ''; @@ -1764,26 +1635,114 @@ class MarkdownExtra_Parser extends Markdown_Parser { } + ### Extra Attribute Parser ### + + # Expression to use to catch attributes (includes the braces) + protected $id_class_attr_catch_re = '\{((?:[ ]*[#.][-_:a-zA-Z0-9]+){1,})[ ]*\}'; + # Expression to use when parsing in a context when no capture is desired + protected $id_class_attr_nocatch_re = '\{(?:[ ]*[#.][-_:a-zA-Z0-9]+){1,}[ ]*\}'; + + protected function doExtraAttributes($tag_name, $attr) { + # + # Parse attributes caught by the $this->id_class_attr_catch_re expression + # and return the HTML-formatted list of attributes. + # + # Currently supported attributes are .class and #id. + # + if (empty($attr)) return ""; + + # Split on components + preg_match_all('/[#.][-_:a-zA-Z0-9]+/', $attr, $matches); + $elements = $matches[0]; + + # handle classes and ids (only first id taken into account) + $classes = array(); + $id = false; + foreach ($elements as $element) { + if ($element{0} == '.') { + $classes[] = substr($element, 1); + } else if ($element{0} == '#') { + if ($id === false) $id = substr($element, 1); + } + } + + # compose attributes as string + $attr_str = ""; + if (!empty($id)) { + $attr_str .= ' id="'.$id.'"'; + } + if (!empty($classes)) { + $attr_str .= ' class="'.implode(" ", $classes).'"'; + } + return $attr_str; + } + + + protected function stripLinkDefinitions($text) { + # + # Strips link definitions from text, stores the URLs and titles in + # hash references. + # + $less_than_tab = $this->tab_width - 1; + + # Link defs are in the form: ^[id]: url "optional title" + $text = preg_replace_callback('{ + ^[ ]{0,'.$less_than_tab.'}\[(.+)\][ ]?: # id = $1 + [ ]* + \n? # maybe *one* newline + [ ]* + (?: + <(.+?)> # url = $2 + | + (\S+?) # url = $3 + ) + [ ]* + \n? # maybe one newline + [ ]* + (?: + (?<=\s) # lookbehind for whitespace + ["(] + (.*?) # title = $4 + [")] + [ ]* + )? # title is optional + (?:[ ]* '.$this->id_class_attr_catch_re.' )? # $5 = extra id & class attr + (?:\n+|\Z) + }xm', + array(&$this, '_stripLinkDefinitions_callback'), + $text); + return $text; + } + protected function _stripLinkDefinitions_callback($matches) { + $link_id = strtolower($matches[1]); + $url = $matches[2] == '' ? $matches[3] : $matches[2]; + $this->urls[$link_id] = $url; + $this->titles[$link_id] =& $matches[4]; + $this->ref_attr[$link_id] = $this->doExtraAttributes("", $dummy =& $matches[5]); + return ''; # String that will replace the block + } + + ### HTML Block Parser ### # Tags that are always treated as block tags: - var $block_tags_re = 'p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|address|form|fieldset|iframe|hr|legend'; - - # Tags treated as block tags only if the opening tag is alone on it's line: - var $context_block_tags_re = 'script|noscript|math|ins|del'; + protected $block_tags_re = 'p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|address|form|fieldset|iframe|hr|legend|article|section|nav|aside|hgroup|header|footer|figcaption'; + + # Tags treated as block tags only if the opening tag is alone on its line: + protected $context_block_tags_re = 'script|noscript|ins|del|iframe|object|source|track|param|math|svg|canvas|audio|video'; # Tags where markdown="1" default to span mode: - var $contain_span_tags_re = 'p|h[1-6]|li|dd|dt|td|th|legend|address'; + protected $contain_span_tags_re = 'p|h[1-6]|li|dd|dt|td|th|legend|address'; # Tags which must not have their contents modified, no matter where # they appear: - var $clean_tags_re = 'script|math'; + protected $clean_tags_re = 'script|math|svg'; # Tags that do not need to be closed. - var $auto_close_tags_re = 'hr|img'; + protected $auto_close_tags_re = 'hr|img|param|source|track'; - function hashHTMLBlocks($text) { + protected function hashHTMLBlocks($text) { # # Hashify HTML Blocks and "clean tags". # @@ -1795,10 +1754,12 @@ class MarkdownExtra_Parser extends Markdown_Parser { # # This works by calling _HashHTMLBlocks_InMarkdown, which then calls # _HashHTMLBlocks_InHTML when it encounter block tags. When the markdown="1" - # attribute is found whitin a tag, _HashHTMLBlocks_InHTML calls back + # attribute is found within a tag, _HashHTMLBlocks_InHTML calls back # _HashHTMLBlocks_InMarkdown to handle the Markdown syntax within the tag. # These two functions are calling each other. It's recursive! # + if ($this->no_markup) return $text; + # # Call the HTML-in-Markdown hasher. # @@ -1806,7 +1767,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { return $text; } - function _hashHTMLBlocks_inMarkdown($text, $indent = 0, + protected function _hashHTMLBlocks_inMarkdown($text, $indent = 0, $enclosing_tag_re = '', $span = false) { # @@ -1848,7 +1809,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { # Regex to match any tag. $block_tag_re = '{ - ( # $2: Capture hole tag. + ( # $2: Capture whole tag. # Tag name. '.$this->block_tags_re.' | @@ -1884,8 +1845,16 @@ class MarkdownExtra_Parser extends Markdown_Parser { )* | # Fenced code block marker - (?> ^ | \n ) - [ ]{0,'.($indent).'}~~~+[ ]*\n + (?<= ^ | \n ) + [ ]{0,'.($indent+3).'}~{3,} + [ ]* + (?: + \.?[-_:a-zA-Z0-9]+ # standalone class name + | + '.$this->id_class_attr_nocatch_re.' # extra attributes + )? + [ ]* + \n ' : '' ). ' # End (if not is span). ) }xs'; @@ -1949,10 +1918,11 @@ class MarkdownExtra_Parser extends Markdown_Parser { # # Check for: Fenced code block marker. # - else if (preg_match('{^\n?[ ]{0,'.($indent+3).'}~}', $tag)) { + else if (preg_match('{^\n?([ ]{0,'.($indent+3).'})(~+)}', $tag, $capture)) { # Fenced code block marker: find matching end marker. - $tag_re = preg_quote(trim($tag)); - if (preg_match('{^(?>.*\n)+?[ ]{0,'.($indent).'}'.$tag_re.'[ ]*\n}', $text, + $fence_indent = strlen($capture[1]); # use captured indent in re + $fence_re = $capture[2]; # use captured fence in re + if (preg_match('{^(?>.*\n)*?[ ]{'.($fence_indent).'}'.$fence_re.'[ ]*(?:\n|$)}', $text, $matches)) { # End marker found: pass text unchanged until marker. @@ -2035,7 +2005,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { return array($parsed, $text); } - function _hashHTMLBlocks_inHTML($text, $hash_method, $md_attr) { + protected function _hashHTMLBlocks_inHTML($text, $hash_method, $md_attr) { # # Parse HTML, calling _HashHTMLBlocks_InMarkdown for block tags. # @@ -2066,7 +2036,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { # Regex to match any tag. $tag_re = '{ - ( # $2: Capture hole tag. + ( # $2: Capture whole tag. hashPart($text, 'C'); } - function doHeaders($text) { + protected function doAnchors($text) { # - # Redefined to add id attribute support. + # Turn Markdown link shortcuts into XHTML tags. + # + if ($this->in_anchor) return $text; + $this->in_anchor = true; + + # + # First, handle reference-style links: [link text] [id] + # + $text = preg_replace_callback('{ + ( # wrap whole match in $1 + \[ + ('.$this->nested_brackets_re.') # link text = $2 + \] + + [ ]? # one optional space + (?:\n[ ]*)? # one optional newline followed by spaces + + \[ + (.*?) # id = $3 + \] + ) + }xs', + array(&$this, '_doAnchors_reference_callback'), $text); + + # + # Next, inline-style links: [link text](url "optional title") + # + $text = preg_replace_callback('{ + ( # wrap whole match in $1 + \[ + ('.$this->nested_brackets_re.') # link text = $2 + \] + \( # literal paren + [ \n]* + (?: + <(.+?)> # href = $3 + | + ('.$this->nested_url_parenthesis_re.') # href = $4 + ) + [ \n]* + ( # $5 + ([\'"]) # quote char = $6 + (.*?) # Title = $7 + \6 # matching quote + [ \n]* # ignore any spaces/tabs between closing quote and ) + )? # title is optional + \) + (?:[ ]? '.$this->id_class_attr_catch_re.' )? # $8 = id/class attributes + ) + }xs', + array(&$this, '_doAnchors_inline_callback'), $text); + + # + # Last, handle reference-style shortcuts: [link text] + # These must come last in case you've also got [link text][1] + # or [link text](/foo) + # + $text = preg_replace_callback('{ + ( # wrap whole match in $1 + \[ + ([^\[\]]+) # link text = $2; can\'t contain [ or ] + \] + ) + }xs', + array(&$this, '_doAnchors_reference_callback'), $text); + + $this->in_anchor = false; + return $text; + } + protected function _doAnchors_reference_callback($matches) { + $whole_match = $matches[1]; + $link_text = $matches[2]; + $link_id =& $matches[3]; + + if ($link_id == "") { + # for shortcut links like [this][] or [this]. + $link_id = $link_text; + } + + # lower-case and turn embedded newlines into spaces + $link_id = strtolower($link_id); + $link_id = preg_replace('{[ ]?\n}', ' ', $link_id); + + if (isset($this->urls[$link_id])) { + $url = $this->urls[$link_id]; + $url = $this->encodeAttribute($url); + + $result = "titles[$link_id] ) ) { + $title = $this->titles[$link_id]; + $title = $this->encodeAttribute($title); + $result .= " title=\"$title\""; + } + if (isset($this->ref_attr[$link_id])) + $result .= $this->ref_attr[$link_id]; + + $link_text = $this->runSpanGamut($link_text); + $result .= ">$link_text"; + $result = $this->hashPart($result); + } + else { + $result = $whole_match; + } + return $result; + } + protected function _doAnchors_inline_callback($matches) { + $whole_match = $matches[1]; + $link_text = $this->runSpanGamut($matches[2]); + $url = $matches[3] == '' ? $matches[4] : $matches[3]; + $title =& $matches[7]; + $attr = $this->doExtraAttributes("a", $dummy =& $matches[8]); + + + $url = $this->encodeAttribute($url); + + $result = "encodeAttribute($title); + $result .= " title=\"$title\""; + } + $result .= $attr; + + $link_text = $this->runSpanGamut($link_text); + $result .= ">$link_text"; + + return $this->hashPart($result); + } + + + protected function doImages($text) { + # + # Turn Markdown image shortcuts into tags. + # + # + # First, handle reference-style labeled images: ![alt text][id] + # + $text = preg_replace_callback('{ + ( # wrap whole match in $1 + !\[ + ('.$this->nested_brackets_re.') # alt text = $2 + \] + + [ ]? # one optional space + (?:\n[ ]*)? # one optional newline followed by spaces + + \[ + (.*?) # id = $3 + \] + + ) + }xs', + array(&$this, '_doImages_reference_callback'), $text); + + # + # Next, handle inline images: ![alt text](url "optional title") + # Don't forget: encode * and _ + # + $text = preg_replace_callback('{ + ( # wrap whole match in $1 + !\[ + ('.$this->nested_brackets_re.') # alt text = $2 + \] + \s? # One optional whitespace character + \( # literal paren + [ \n]* + (?: + <(\S*)> # src url = $3 + | + ('.$this->nested_url_parenthesis_re.') # src url = $4 + ) + [ \n]* + ( # $5 + ([\'"]) # quote char = $6 + (.*?) # title = $7 + \6 # matching quote + [ \n]* + )? # title is optional + \) + (?:[ ]? '.$this->id_class_attr_catch_re.' )? # $8 = id/class attributes + ) + }xs', + array(&$this, '_doImages_inline_callback'), $text); + + return $text; + } + protected function _doImages_reference_callback($matches) { + $whole_match = $matches[1]; + $alt_text = $matches[2]; + $link_id = strtolower($matches[3]); + + if ($link_id == "") { + $link_id = strtolower($alt_text); # for shortcut links like ![this][]. + } + + $alt_text = $this->encodeAttribute($alt_text); + if (isset($this->urls[$link_id])) { + $url = $this->encodeAttribute($this->urls[$link_id]); + $result = "\"$alt_text\"";titles[$link_id])) { + $title = $this->titles[$link_id]; + $title = $this->encodeAttribute($title); + $result .= " title=\"$title\""; + } + if (isset($this->ref_attr[$link_id])) + $result .= $this->ref_attr[$link_id]; + $result .= $this->empty_element_suffix; + $result = $this->hashPart($result); + } + else { + # If there's no such link ID, leave intact: + $result = $whole_match; + } + + return $result; + } + protected function _doImages_inline_callback($matches) { + $whole_match = $matches[1]; + $alt_text = $matches[2]; + $url = $matches[3] == '' ? $matches[4] : $matches[3]; + $title =& $matches[7]; + $attr = $this->doExtraAttributes("img", $dummy =& $matches[8]); + + $alt_text = $this->encodeAttribute($alt_text); + $url = $this->encodeAttribute($url); + $result = "\"$alt_text\"";encodeAttribute($title); + $result .= " title=\"$title\""; # $title already quoted + } + $result .= $attr; + $result .= $this->empty_element_suffix; + + return $this->hashPart($result); + } + + + protected function doHeaders($text) { + # + # Redefined to add id and class attribute support. # # Setext-style headers: # Header 1 {#header1} # ======== # - # Header 2 {#header2} + # Header 2 {#header2 .class1 .class2} # -------- # $text = preg_replace_callback( '{ (^.+?) # $1: Header text - (?:[ ]+\{\#([-_:a-zA-Z0-9]+)\})? # $2: Id attribute + (?:[ ]+ '.$this->id_class_attr_catch_re.' )? # $3 = id/class attributes [ ]*\n(=+|-+)[ ]*\n+ # $3: Header footer }mx', array(&$this, '_doHeaders_callback_setext'), $text); @@ -2242,9 +2450,9 @@ class MarkdownExtra_Parser extends Markdown_Parser { # atx-style headers: # # Header 1 {#header1} # ## Header 2 {#header2} - # ## Header 2 with closing hashes ## {#header3} + # ## Header 2 with closing hashes ## {#header3.class1.class2} # ... - # ###### Header 6 {#header2} + # ###### Header 6 {.class2} # $text = preg_replace_callback('{ ^(\#{1,6}) # $1 = string of #\'s @@ -2252,7 +2460,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { (.+?) # $2 = Header text [ ]* \#* # optional closing #\'s (not counted) - (?:[ ]+\{\#([-_:a-zA-Z0-9]+)\})? # id attribute + (?:[ ]+ '.$this->id_class_attr_catch_re.' )? # $3 = id/class attributes [ ]* \n+ }xm', @@ -2260,27 +2468,23 @@ class MarkdownExtra_Parser extends Markdown_Parser { return $text; } - function _doHeaders_attr($attr) { - if (empty($attr)) return ""; - return " id=\"$attr\""; - } - function _doHeaders_callback_setext($matches) { + protected function _doHeaders_callback_setext($matches) { if ($matches[3] == '-' && preg_match('{^- }', $matches[1])) return $matches[0]; $level = $matches[3]{0} == '=' ? 1 : 2; - $attr = $this->_doHeaders_attr($id =& $matches[2]); + $attr = $this->doExtraAttributes("h$level", $dummy =& $matches[2]); $block = "".$this->runSpanGamut($matches[1]).""; return "\n" . $this->hashBlock($block) . "\n\n"; } - function _doHeaders_callback_atx($matches) { + protected function _doHeaders_callback_atx($matches) { $level = strlen($matches[1]); - $attr = $this->_doHeaders_attr($id =& $matches[3]); + $attr = $this->doExtraAttributes("h$level", $dummy =& $matches[3]); $block = "".$this->runSpanGamut($matches[2]).""; return "\n" . $this->hashBlock($block) . "\n\n"; } - function doTables($text) { + protected function doTables($text) { # # Form HTML tables. # @@ -2341,7 +2545,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { return $text; } - function _doTable_leadingPipe_callback($matches) { + protected function _doTable_leadingPipe_callback($matches) { $head = $matches[1]; $underline = $matches[2]; $content = $matches[3]; @@ -2351,7 +2555,15 @@ class MarkdownExtra_Parser extends Markdown_Parser { return $this->_doTable_callback(array($matches[0], $head, $underline, $content)); } - function _doTable_callback($matches) { + protected function _doTable_makeAlignAttr($alignname) + { + if (empty($this->table_align_class_tmpl)) + return " align=\"$alignname\""; + + $classname = str_replace('%%', $alignname, $this->table_align_class_tmpl); + return " class=\"$classname\""; + } + protected function _doTable_callback($matches) { $head = $matches[1]; $underline = $matches[2]; $content = $matches[3]; @@ -2364,10 +2576,14 @@ class MarkdownExtra_Parser extends Markdown_Parser { # Reading alignement from header underline. $separators = preg_split('/ *[|] */', $underline); foreach ($separators as $n => $s) { - if (preg_match('/^ *-+: *$/', $s)) $attr[$n] = ' align="right"'; - else if (preg_match('/^ *:-+: *$/', $s))$attr[$n] = ' align="center"'; - else if (preg_match('/^ *:-+ *$/', $s)) $attr[$n] = ' align="left"'; - else $attr[$n] = ''; + if (preg_match('/^ *-+: *$/', $s)) + $attr[$n] = $this->_doTable_makeAlignAttr('right'); + else if (preg_match('/^ *:-+: *$/', $s)) + $attr[$n] = $this->_doTable_makeAlignAttr('center'); + else if (preg_match('/^ *:-+ *$/', $s)) + $attr[$n] = $this->_doTable_makeAlignAttr('left'); + else + $attr[$n] = ''; } # Parsing span elements, including code spans, character escapes, @@ -2375,6 +2591,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { $head = $this->parseSpan($head); $headers = preg_split('/ *[|] */', $head); $col_count = count($headers); + $attr = array_pad($attr, $col_count, ''); # Write column headers. $text = "\n"; @@ -2410,7 +2627,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { } - function doDefLists($text) { + protected function doDefLists($text) { # # Form HTML definition lists. # @@ -2452,7 +2669,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { return $text; } - function _doDefLists_callback($matches) { + protected function _doDefLists_callback($matches) { # Re-usable patterns to match list item bullets and number markers: $list = $matches[1]; @@ -2464,7 +2681,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { } - function processDefListItems($list_str) { + protected function processDefListItems($list_str) { # # Process the contents of a single definition list, splitting it # into individual term and definition list items. @@ -2479,7 +2696,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { (?>\A\n?|\n\n+) # leading line ( # definition terms = $1 [ ]{0,'.$less_than_tab.'} # leading whitespace - (?![:][ ]|[ ]) # negative lookahead for a definition + (?!\:[ ]|[ ]) # negative lookahead for a definition # mark (colon) or more whitespace. (?> \S.* \n)+? # actual term (not whitespace). ) @@ -2493,12 +2710,12 @@ class MarkdownExtra_Parser extends Markdown_Parser { \n(\n+)? # leading line = $1 ( # marker space = $2 [ ]{0,'.$less_than_tab.'} # whitespace before colon - [:][ ]+ # definition mark (colon) + \:[ ]+ # definition mark (colon) ) ((?s:.+?)) # definition text = $3 (?= \n+ # stop at next definition mark, (?: # next term or end of text - [ ]{0,'.$less_than_tab.'} [:][ ] | + [ ]{0,'.$less_than_tab.'} \:[ ] |
    | \z ) ) @@ -2507,7 +2724,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { return $list_str; } - function _processDefListItems_callback_dt($matches) { + protected function _processDefListItems_callback_dt($matches) { $terms = explode("\n", trim($matches[1])); $text = ''; foreach ($terms as $term) { @@ -2516,7 +2733,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { } return $text . "\n"; } - function _processDefListItems_callback_dd($matches) { + protected function _processDefListItems_callback_dd($matches) { $leading_line = $matches[1]; $marker_space = $matches[2]; $def = $matches[3]; @@ -2536,7 +2753,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { } - function doFencedCodeBlocks($text) { + protected function doFencedCodeBlocks($text) { # # Adding the fenced code block syntax to regular Markdown: # @@ -2552,9 +2769,15 @@ class MarkdownExtra_Parser extends Markdown_Parser { ( ~{3,} # Marker: three tilde or more. ) + [ ]* + (?: + \.?([-_:a-zA-Z0-9]+) # 2: standalone class name + | + '.$this->id_class_attr_catch_re.' # 3: Extra attributes + )? [ ]* \n # Whitespace and newline following marker. - # 2: Content + # 4: Content ( (?> (?!\1 [ ]* \n) # Not a closing marker. @@ -2569,15 +2792,28 @@ class MarkdownExtra_Parser extends Markdown_Parser { return $text; } - function _doFencedCodeBlocks_callback($matches) { - $codeblock = $matches[2]; + protected function _doFencedCodeBlocks_callback($matches) { + $classname =& $matches[2]; + $attrs =& $matches[3]; + $codeblock = $matches[4]; $codeblock = htmlspecialchars($codeblock, ENT_NOQUOTES); $codeblock = preg_replace_callback('/^\n+/', array(&$this, '_doFencedCodeBlocks_newlines'), $codeblock); - $codeblock = "
    $codeblock
    "; + + if ($classname != "") { + if ($classname{0} == '.') + $classname = substr($classname, 1); + $attr_str = ' class="'.$this->code_class_prefix.$classname.'"'; + } else { + $attr_str = $this->doExtraAttributes($this->code_attr_on_pre ? "pre" : "code", $attrs); + } + $pre_attr_str = $this->code_attr_on_pre ? $attr_str : ''; + $code_attr_str = $this->code_attr_on_pre ? '' : $attr_str; + $codeblock = "$codeblock"; + return "\n\n".$this->hashBlock($codeblock)."\n\n"; } - function _doFencedCodeBlocks_newlines($matches) { + protected function _doFencedCodeBlocks_newlines($matches) { return str_repeat("empty_element_suffix", strlen($matches[0])); } @@ -2587,24 +2823,24 @@ class MarkdownExtra_Parser extends Markdown_Parser { # Redefining emphasis markers so that emphasis by underscore does not # work in the middle of a word. # - var $em_relist = array( + protected $em_relist = array( '' => '(?:(? '(?<=\S|^)(? '(?<=\S|^)(? '(?:(? '(?<=\S|^)(? '(?<=\S|^)(? '(?:(? '(?<=\S|^)(? '(?<=\S|^)(? tags @@ -2642,7 +2878,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { ### Footnotes - function stripFootnotes($text) { + protected function stripFootnotes($text) { # # Strips link definitions from text, stores the URLs and titles in # hash references. @@ -2669,14 +2905,14 @@ class MarkdownExtra_Parser extends Markdown_Parser { $text); return $text; } - function _stripFootnotes_callback($matches) { + protected function _stripFootnotes_callback($matches) { $note_id = $this->fn_id_prefix . $matches[1]; $this->footnotes[$note_id] = $this->outdent($matches[2]); return ''; # String that will replace the block } - function doFootnotes($text) { + protected function doFootnotes($text) { # # Replace footnote references in $text [^id] with a special text-token # which will be replaced by the actual footnote marker in appendFootnotes. @@ -2688,7 +2924,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { } - function appendFootnotes($text) { + protected function appendFootnotes($text) { # # Append footnote list to text. # @@ -2718,6 +2954,9 @@ class MarkdownExtra_Parser extends Markdown_Parser { $footnote = reset($this->footnotes_ordered); $note_id = key($this->footnotes_ordered); unset($this->footnotes_ordered[$note_id]); + $ref_count = $this->footnotes_ref_count[$note_id]; + unset($this->footnotes_ref_count[$note_id]); + unset($this->footnotes[$note_id]); $footnote .= "\n"; # Need to append newline before parsing. $footnote = $this->runBlockGamut("$footnote\n"); @@ -2726,9 +2965,13 @@ class MarkdownExtra_Parser extends Markdown_Parser { $attr = str_replace("%%", ++$num, $attr); $note_id = $this->encodeAttribute($note_id); - - # Add backlink to last paragraph; create new paragraph if needed. + + # Prepare backlink, multiple backlinks if multiple references $backlink = ""; + for ($ref_num = 2; $ref_num <= $ref_count; ++$ref_num) { + $backlink .= " "; + } + # Add backlink to last paragraph; create new paragraph if needed. if (preg_match('{

    $}', $footnote)) { $footnote = substr($footnote, 0, -4) . " $backlink

    "; } else { @@ -2745,18 +2988,25 @@ class MarkdownExtra_Parser extends Markdown_Parser { } return $text; } - function _appendFootnotes_callback($matches) { + protected function _appendFootnotes_callback($matches) { $node_id = $this->fn_id_prefix . $matches[1]; # Create footnote marker only if it has a corresponding footnote *and* # the footnote hasn't been used by another marker. if (isset($this->footnotes[$node_id])) { - # Transfert footnote content to the ordered list. - $this->footnotes_ordered[$node_id] = $this->footnotes[$node_id]; - unset($this->footnotes[$node_id]); - - $num = $this->footnote_counter++; - $attr = " rel=\"footnote\""; + $num =& $this->footnotes_numbers[$node_id]; + if (!isset($num)) { + # Transfer footnote content to the ordered list and give it its + # number + $this->footnotes_ordered[$node_id] = $this->footnotes[$node_id]; + $this->footnotes_ref_count[$node_id] = 1; + $num = $this->footnote_counter++; + $ref_count_mark = ''; + } else { + $ref_count_mark = $this->footnotes_ref_count[$node_id] += 1; + } + + $attr = ""; if ($this->fn_link_class != "") { $class = $this->fn_link_class; $class = $this->encodeAttribute($class); @@ -2772,7 +3022,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { $node_id = $this->encodeAttribute($node_id); return - "". + "". "$num". ""; } @@ -2783,7 +3033,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { ### Abbreviations ### - function stripAbbreviations($text) { + protected function stripAbbreviations($text) { # # Strips abbreviations from text, stores titles in hash references. # @@ -2798,7 +3048,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { $text); return $text; } - function _stripAbbreviations_callback($matches) { + protected function _stripAbbreviations_callback($matches) { $abbr_word = $matches[1]; $abbr_desc = $matches[2]; if ($this->abbr_word_re) @@ -2809,7 +3059,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { } - function doAbbreviations($text) { + protected function doAbbreviations($text) { # # Find defined abbreviations in text and wrap them in elements. # @@ -2825,7 +3075,7 @@ class MarkdownExtra_Parser extends Markdown_Parser { } return $text; } - function _doAbbreviations_callback($matches) { + protected function _doAbbreviations_callback($matches) { $abbr = $matches[0]; if (isset($this->abbr_desciptions[$abbr])) { $desc = $this->abbr_desciptions[$abbr]; @@ -2843,90 +3093,4 @@ class MarkdownExtra_Parser extends Markdown_Parser { } -/* - -PHP Markdown Extra -================== - -Description ------------ - -This is a PHP port of the original Markdown formatter written in Perl -by John Gruber. This special "Extra" version of PHP Markdown features -further enhancements to the syntax for making additional constructs -such as tables and definition list. - -Markdown is a text-to-HTML filter; it translates an easy-to-read / -easy-to-write structured text format into HTML. Markdown's text format -is most similar to that of plain text email, and supports features such -as headers, *emphasis*, code blocks, blockquotes, and links. - -Markdown's syntax is designed not as a generic markup language, but -specifically to serve as a front-end to (X)HTML. You can use span-level -HTML tags anywhere in a Markdown document, and you can use block level -HTML tags (like
    and
    as well). - -For more information about Markdown's syntax, see: - - - - -Bugs ----- - -To file bug reports please send email to: - - - -Please include with your report: (1) the example input; (2) the output you -expected; (3) the output Markdown actually produced. - - -Version History ---------------- - -See the readme file for detailed release notes for this version. - - -Copyright and License ---------------------- - -PHP Markdown & Extra -Copyright (c) 2004-2009 Michel Fortin - -All rights reserved. - -Based on Markdown -Copyright (c) 2003-2006 John Gruber - -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - -* Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - -* Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - -* Neither the name "Markdown" nor the names of its contributors may - be used to endorse or promote products derived from this software - without specific prior written permission. - -This software is provided by the copyright holders and contributors "as -is" and any express or implied warranties, including, but not limited -to, the implied warranties of merchantability and fitness for a -particular purpose are disclaimed. In no event shall the copyright owner -or contributors be liable for any direct, indirect, incidental, special, -exemplary, or consequential damages (including, but not limited to, -procurement of substitute goods or services; loss of use, data, or -profits; or business interruption) however caused and on any theory of -liability, whether in contract, strict liability, or tort (including -negligence or otherwise) arising in any way out of the use of this -software, even if advised of the possibility of such damage. - -*/ ?> \ No newline at end of file diff --git a/lib/markdown/MarkdownExtra.php b/lib/markdown/MarkdownExtra.php new file mode 100644 index 00000000000..267bf16df32 --- /dev/null +++ b/lib/markdown/MarkdownExtra.php @@ -0,0 +1,40 @@ + +# +# Original Markdown +# Copyright (c) 2004-2006 John Gruber +# +# +namespace Michelf; + + +# Just force Michelf/Markdown.php to load. This is needed to load +# the temporary implementation class. See below for details. +\Michelf\Markdown::MARKDOWNLIB_VERSION; + +# +# Markdown Extra Parser Class +# +# Note: Currently the implementation resides in the temporary class +# \Michelf\MarkdownExtra_TmpImpl (in the same file as \Michelf\Markdown). +# This makes it easier to propagate the changes between the three different +# packaging styles of PHP Markdown. Once this issue is resolved, the +# _MarkdownExtra_TmpImpl will disappear and this one will contain the code. +# + +class MarkdownExtra extends \Michelf\_MarkdownExtra_TmpImpl { + + ### Parser Implementation ### + + # Temporarily, the implemenation is in the _MarkdownExtra_TmpImpl class. + # See note above. + +} + + +?> \ No newline at end of file diff --git a/lib/markdown/Readme.md b/lib/markdown/Readme.md new file mode 100755 index 00000000000..8ee5fae3ac7 --- /dev/null +++ b/lib/markdown/Readme.md @@ -0,0 +1,259 @@ +PHP Markdown +============ + +PHP Markdown Lib 1.3 - 11 Apr 2013 + +by Michel Fortin + + +based on Markdown by John Gruber + + + +Introduction +------------ + +This is a library package that includes the PHP Markdown parser and its +sibling PHP Markdown Extra which additional features. + +Markdown is a text-to-HTML conversion tool for web writers. Markdown +allows you to write using an easy-to-read, easy-to-write plain text +format, then convert it to structurally valid XHTML (or HTML). + +"Markdown" is two things: a plain text markup syntax, and a software +tool, written in Perl, that converts the plain text markup to HTML. +PHP Markdown is a port to PHP of the original Markdown program by +John Gruber. + +PHP Markdown can work as a plug-in for WordPress, as a modifier for +the Smarty templating engine, or as a replacement for Textile +formatting in any software that supports Textile. + +Full documentation of Markdown's syntax is available on John's +Markdown page: + + +Requirement +----------- + +This library package requires PHP 5.3 or later. + +Note: The older plugin/library hybrid package for PHP Markdown and +PHP Markdown Extra is still maintained and will work with PHP 4.0.5 and later. + +Before PHP 5.3.7, pcre.backtrack_limit defaults to 100 000, which is too small +in many situations. You might need to set it to higher values. Later PHP +releases defaults to 1 000 000, which is usually fine. + + +Usage +----- + +This library package is meant to be used with class autoloading. For autoloading +to work, your project needs have setup a PSR-0-compatible autoloader. See the +included Readme.php file for a minimal autoloader setup. (If you don't want to +use autoloading you can do a classic `require_once` to manually include the +files prior use instead.) + +With class autoloading in place, putting the 'Michelf' folder in your +include path should be enough for this to work: + + use \Michelf\Markdown; + $my_html = Markdown::defaultTransform($my_text); + +Markdown Extra syntax is also available the same way: + + use \Michelf\MarkdownExtra; + $my_html = MarkdownExtra::defaultTransform($my_text); + +If you wish to use PHP Markdown with another text filter function +built to parse HTML, you should filter the text *after* the `transform` +function call. This is an example with [PHP SmartyPants][psp]: + + use \Michelf\Markdown, \Michelf\SmartyPants; + $my_html = Markdown::defaultTransform($my_text); + $my_html = SmartyPants::defaultTransform($my_html); + +All these examples are using the static `defaultTransform` static function +found inside the parser class. If you want to customize the parser +configuration, you can also instantiate it directly and change some +configuration variables: + + use \Michelf\MarkdownExtra; + $parser = new MarkdownExtra; + $parser->fn_id_prefix = "post22-"; + $my_html = $parser->transform($my_text); + + +Usage +----- + +This library package is meant to be used with class autoloading. For autoloading +to work, your project needs have setup a PSR-0-compatible autoloader. See the +included Readme.php file for a minimal autoloader setup. (If you don't want to +use autoloading you can do a classic `require_once` to manually include the +files prior use instead.) + +With class autoloading in place, putting the 'Michelf' folder in your +include path should be enough for this to work: + + use \Michelf\Markdown; + $my_html = Markdown::defaultTransform($my_text); + +Markdown Extra syntax is also available the same way: + + use \Michelf\MarkdownExtra; + $my_html = MarkdownExtra::defaultTransform($my_text); + +If you wish to use PHP Markdown with another text filter function +built to parse HTML, you should filter the text *after* the `transform` +function call. This is an example with [PHP SmartyPants][psp]: + + use \Michelf\Markdown, \Michelf\SmartyPants; + $my_html = Markdown::defaultTransform($my_text); + $my_html = SmartyPants::defaultTransform($my_html); + +All these examples are using the static `defaultTransform` static function +found inside the parser class. If you want to customize the parser +configuration, you can also instantiate it directly and change some +configuration variables: + + use \Michelf\MarkdownExtra; + $parser = new MarkdownExtra; + $parser->fn_id_prefix = "post22-"; + $my_html = $parser->transform($my_text); + +To learn more, see the full list of [configuration variables]. + + [configuration variables]: http://michelf.ca/project/php-markdown/configuration/ + + +Public API and Versionning Policy +--------------------------------- + +Version numbers are of the form *major*.*minor*.*patch*. + +The public API of PHP Markdown consist of the two parser classes `Markdown` +and `MarkdownExtra`, their constructors, the `transform` and `defaultTransform` +functions and their configuration variables. The public API is stable for +a given major version number. It might get additions when the minor version +number increments. + +**Protected members are not considered public API.** This is unconventionnal +and deserves an explanation. Incrementing the major version number every time +the underlying implementation of something changes is going to give nonsential +version numbers for the vast majority of people who just use the parser. +Protected members are meant to create parser subclasses that behave in +different ways. Very few people create parser subclasses. I don't want to +discourage it by making everything private, but at the same time I can't +guarenty any stable hook between versions if you use protected members. + +**Syntax changes** will increment the minor number for new features, and the +patch number for small corrections. A *new feature* is something that needs a +change in the syntax documentation. Note that since PHP Markdown Lib includes +two parsers, a syntax change for either of them will increment the minor +number. Also note that there is nothigng perfectly backward-compatible with the +Markdown syntax: all inputs are always valid, so new features always replace +something that was previously legal, although generally non-sensial to do. + + +Bugs +---- + +To file bug reports please send email to: + + +Please include with your report: (1) the example input; (2) the output you +expected; (3) the output PHP Markdown actually produced. + +If you have a problem where Markdown gives you an empty result, first check +that the backtrack limit is not too low by running `php --info | grep pcre`. +See Installation and Requirement above for details. + + +Version History +--------------- + +PHP Markdown Lib 1.3 (11 Apr 2013): + +This is the first release of PHP Markdown Lib. This package requires PHP +version 4.3 or later and is designed to work with PSR-0 autoloading and, +optionally with Composer. Here is a list of the changes since +PHP Markdown Extra 1.2.6: + +* Plugin interface for Wordpress and other systems is no longer present in + the Lib package. The classic package is still available if you need it: + + +* Added `public` and `protected` protection attributes, plus a section about + what is "public API" and what isn't in the Readme file. + +* Changed HTML output for footnotes: now instead of adding `rel` and `rev` + attributes, footnotes links have the class name `footnote-ref` and + backlinks `footnote-backref`. + +* Fixed some regular expressions to make PCRE not shout warnings about POSIX + collation classes (dependent on your version of PCRE). + +* Added optional class and id attributes to images and links using the same + syntax as for headers: + + [link](url){#id .class} + ![img](url){#id .class} + + It work too for reference-style links and images. In this case you need + to put those attributes at the reference definition: + + [link][linkref] or [linkref] + ![img][linkref] + + [linkref]: url "optional title" {#id .class} + +* Fixed a PHP notice message triggered when some table column separator + markers are missing on the separator line below column headers. + +* Fixed a small mistake that could cause the parser to retain an invalid + state related to parsing links across multiple runs. This was never + observed (that I know of), but it's still worth fixing. + + +Copyright and License +--------------------- + +PHP Markdown Lib +Copyright (c) 2004-2013 Michel Fortin + +All rights reserved. + +Based on Markdown +Copyright (c) 2003-2005 John Gruber + +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +* Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the + distribution. + +* Neither the name "Markdown" nor the names of its contributors may + be used to endorse or promote products derived from this software + without specific prior written permission. + +This software is provided by the copyright holders and contributors "as +is" and any express or implied warranties, including, but not limited +to, the implied warranties of merchantability and fitness for a +particular purpose are disclaimed. In no event shall the copyright owner +or contributors be liable for any direct, indirect, incidental, special, +exemplary, or consequential damages (including, but not limited to, +procurement of substitute goods or services; loss of use, data, or +profits; or business interruption) however caused and on any theory of +liability, whether in contract, strict liability, or tort (including +negligence or otherwise) arising in any way out of the use of this +software, even if advised of the possibility of such damage. diff --git a/lib/markdown/readme_moodle.txt b/lib/markdown/readme_moodle.txt new file mode 100644 index 00000000000..97382580ff4 --- /dev/null +++ b/lib/markdown/readme_moodle.txt @@ -0,0 +1,10 @@ +Description of Markdown Extra import into Moodle + +Procedure: +* download latest version from http://michelf.ca/projects/php-markdown/ +* copy the classes and readme file to lib/markdown/* +* update function markdown_to_html() in weblib.php if necessary, + note that we require the php files manually for performance reasons +* run phpunit tests + +Petr Skoda diff --git a/lib/thirdpartylibs.xml b/lib/thirdpartylibs.xml index 6ec4089fb9f..379a3765e7d 100644 --- a/lib/thirdpartylibs.xml +++ b/lib/thirdpartylibs.xml @@ -246,10 +246,10 @@ 3.0+ - markdown.php + markdown Markdown original+extra BSD - 1.2.5 + 1.3.0 diff --git a/lib/weblib.php b/lib/weblib.php index fdde141ad5f..8fda4033f5d 100644 --- a/lib/weblib.php +++ b/lib/weblib.php @@ -1794,9 +1794,10 @@ function markdown_to_html($text) { return $text; } - require_once($CFG->libdir .'/markdown.php'); + require_once($CFG->libdir .'/markdown/Markdown.php'); + require_once($CFG->libdir .'/markdown/MarkdownExtra.php'); - return Markdown($text); + return \Michelf\MarkdownExtra::defaultTransform($text); } /** From 687c88785ca42368739415fa1ee9b4253f6da68a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Thu, 19 Sep 2013 22:02:45 +0200 Subject: [PATCH 037/101] MDL-41903 import typo3 4.7.15 --- lib/thirdpartylibs.xml | 2 +- lib/typo3/class.t3lib_cs.php | 16 +- lib/typo3/class.t3lib_div.php | 49 +-- lib/typo3/class.t3lib_utility_debug.php | 387 ++++++++++++++++++++++++ lib/typo3/readme_moodle.txt | 21 +- 5 files changed, 441 insertions(+), 34 deletions(-) create mode 100644 lib/typo3/class.t3lib_utility_debug.php diff --git a/lib/thirdpartylibs.xml b/lib/thirdpartylibs.xml index 6ec4089fb9f..52fe7b2b5fd 100644 --- a/lib/thirdpartylibs.xml +++ b/lib/thirdpartylibs.xml @@ -193,7 +193,7 @@ typo3 Typo3 GPL - 4.7.4 + 4.7.15 2.0+ diff --git a/lib/typo3/class.t3lib_cs.php b/lib/typo3/class.t3lib_cs.php index 2bb2cc742f4..00dfc697250 100644 --- a/lib/typo3/class.t3lib_cs.php +++ b/lib/typo3/class.t3lib_cs.php @@ -815,8 +815,16 @@ class t3lib_cs { * @return string Output string */ function entities_to_utf8($str, $alsoStdHtmlEnt = FALSE) { + // Workaround for #39287: 3rd parameter for get_html_translation_table() was only added in PHP 5.3.4 and later + // see http://php.net/manual/en/function.get-html-translation-table.php + $applyPhpCompatibilityFix = version_compare(phpversion(), '5.3.4', '<'); + if ($alsoStdHtmlEnt) { - $trans_tbl = array_flip(get_html_translation_table(HTML_ENTITIES, ENT_COMPAT, 'UTF-8')); + if ($applyPhpCompatibilityFix === TRUE) { + $trans_tbl = array_flip(get_html_translation_table(HTML_ENTITIES, ENT_COMPAT)); + } else { + $trans_tbl = array_flip(get_html_translation_table(HTML_ENTITIES, ENT_COMPAT, 'UTF-8')); + } } $token = md5(microtime()); @@ -837,7 +845,11 @@ class t3lib_cs { } $parts[$k] = $this->UnumberToChar($v); } elseif ($alsoStdHtmlEnt && isset($trans_tbl['&' . $v . ';'])) { // Other entities: - $parts[$k] = $trans_tbl['&' . $v . ';']; + $v = $trans_tbl['&' . $v . ';']; + if ($applyPhpCompatibilityFix === TRUE) { + $v = $this->utf8_encode($v, 'iso-8859-1'); + } + $parts[$k] = $v; } else { // No conversion: $parts[$k] = '&' . $v . ';'; } diff --git a/lib/typo3/class.t3lib_div.php b/lib/typo3/class.t3lib_div.php index 1d7ddb28f39..3a3ba920197 100644 --- a/lib/typo3/class.t3lib_div.php +++ b/lib/typo3/class.t3lib_div.php @@ -933,26 +933,27 @@ final class t3lib_div { * Returns a proper HMAC on a given input string and secret TYPO3 encryption key. * * @param string $input Input string to create HMAC from + * @param string $additionalSecret additionalSecret to prevent hmac beeing used in a different context * @return string resulting (hexadecimal) HMAC currently with a length of 40 (HMAC-SHA-1) */ - public static function hmac($input) { + public static function hmac($input, $additionalSecret = '') { $hashAlgorithm = 'sha1'; $hashBlocksize = 64; $hmac = ''; - + $secret = $GLOBALS['TYPO3_CONF_VARS']['SYS']['encryptionKey'] . $additionalSecret; if (extension_loaded('hash') && function_exists('hash_hmac') && function_exists('hash_algos') && in_array($hashAlgorithm, hash_algos())) { - $hmac = hash_hmac($hashAlgorithm, $input, $GLOBALS['TYPO3_CONF_VARS']['SYS']['encryptionKey']); + $hmac = hash_hmac($hashAlgorithm, $input, $secret); } else { // outer padding $opad = str_repeat(chr(0x5C), $hashBlocksize); // inner padding $ipad = str_repeat(chr(0x36), $hashBlocksize); - if (strlen($GLOBALS['TYPO3_CONF_VARS']['SYS']['encryptionKey']) > $hashBlocksize) { + if (strlen($secret) > $hashBlocksize) { // keys longer than block size are shorten - $key = str_pad(pack('H*', call_user_func($hashAlgorithm, $GLOBALS['TYPO3_CONF_VARS']['SYS']['encryptionKey'])), $hashBlocksize, chr(0x00)); + $key = str_pad(pack('H*', call_user_func($hashAlgorithm, $secret)), $hashBlocksize, chr(0)); } else { // keys shorter than block size are zero-padded - $key = str_pad($GLOBALS['TYPO3_CONF_VARS']['SYS']['encryptionKey'], $hashBlocksize, chr(0x00)); + $key = str_pad($secret, $hashBlocksize, chr(0)); } $hmac = call_user_func($hashAlgorithm, ($key ^ $opad) . pack('H*', call_user_func($hashAlgorithm, ($key ^ $ipad) . $input))); } @@ -1860,6 +1861,10 @@ final class t3lib_div { */ public static function array_merge_recursive_overrule(array $arr0, array $arr1, $notAddKeys = FALSE, $includeEmptyValues = TRUE, $enableUnsetFeature = TRUE) { foreach ($arr1 as $key => $val) { + if ($enableUnsetFeature && $val === '__UNSET') { + unset($arr0[$key]); + continue; + } if (is_array($arr0[$key])) { if (is_array($arr1[$key])) { $arr0[$key] = self::array_merge_recursive_overrule( @@ -1870,12 +1875,11 @@ final class t3lib_div { $enableUnsetFeature ); } - } elseif (!$notAddKeys || isset($arr0[$key])) { - if ($enableUnsetFeature && $val === '__UNSET') { - unset($arr0[$key]); - } elseif ($includeEmptyValues || $val) { - $arr0[$key] = $val; - } + } elseif ( + (!$notAddKeys || isset($arr0[$key])) && + ($includeEmptyValues || $val) + ) { + $arr0[$key] = $val; } } @@ -4014,9 +4018,12 @@ final class t3lib_div { * @see upload_to_tempfile(), tempnam() */ public static function unlink_tempfile($uploadedTempFileName) { - if ($uploadedTempFileName && self::validPathStr($uploadedTempFileName) && self::isFirstPartOfStr($uploadedTempFileName, PATH_site . 'typo3temp/') && @is_file($uploadedTempFileName)) { - if (unlink($uploadedTempFileName)) { - return TRUE; + if ($uploadedTempFileName) { + $uploadedTempFileName = self::fixWindowsFilePath($uploadedTempFileName); + if (self::validPathStr($uploadedTempFileName) && self::isFirstPartOfStr($uploadedTempFileName, PATH_site . 'typo3temp/') && @is_file($uploadedTempFileName)) { + if (unlink($uploadedTempFileName)) { + return TRUE; + } } } } @@ -5564,6 +5571,12 @@ final class t3lib_div { return; } + // This require_once is needed for deprecation calls + // thrown early during bootstrap, if the autoloader is + // not instantiated yet. This can happen for example if + // ext_localconf triggers a deprecation. + require_once __DIR__.'/class.t3lib_utility_debug.php'; + $trail = debug_backtrace(); if ($trail[1]['type']) { @@ -5700,8 +5713,8 @@ final class t3lib_div { public static function flushOutputBuffers() { $obContent = ''; - while ($obContent .= ob_get_clean()) { - ; + while ($content = ob_get_clean()) { + $obContent .= $content; } // if previously a "Content-Encoding: whatever" has been set, we have to unset it @@ -5721,4 +5734,4 @@ final class t3lib_div { } } -?> +?> \ No newline at end of file diff --git a/lib/typo3/class.t3lib_utility_debug.php b/lib/typo3/class.t3lib_utility_debug.php new file mode 100644 index 00000000000..a15b3337226 --- /dev/null +++ b/lib/typo3/class.t3lib_utility_debug.php @@ -0,0 +1,387 @@ + + * All rights reserved + * + * This script is part of the TYPO3 project. The TYPO3 project is + * free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * The GNU General Public License can be found at + * http://www.gnu.org/copyleft/gpl.html. + * A copy is found in the textfile GPL.txt and important notices to the license + * from the author is found in LICENSE.txt distributed with these scripts. + * + * + * This script is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * This copyright notice MUST APPEAR in all copies of the script! + ***************************************************************/ + +/** + * Class to handle debug + * + * + * @author Steffen Kamper + * @package TYPO3 + * @subpackage t3lib + */ +final class t3lib_utility_Debug { + + /** + * Template for debug output + * + * @var string + */ + const DEBUG_TABLE_TEMPLATE = ' +
    + + + + + + +
    %s
    + %s +
    + '; + + + public static function debug($var = '', $header = '', $group = 'Debug') { + // buffer the output of debug if no buffering started before + if (ob_get_level() == 0) { + ob_start(); + } + + $debug = self::convertVariableToString($var); + if ($header) { + $debug = sprintf(self::DEBUG_TABLE_TEMPLATE, htmlspecialchars((string) $header), $debug); + } + + if (TYPO3_MODE === 'BE') { + $debugString = self::prepareVariableForJavascript($debug, is_object($var)); + $group = htmlspecialchars($group); + + if ($header !== '') { + $tabHeader = htmlspecialchars($header); + } else { + $tabHeader = 'Debug'; + } + + $script = ' + (function debug() { + var debugMessage = "' . $debugString . '"; + var header = "' . $tabHeader . '"; + var group = "' . $group . '"; + + if (typeof Ext !== "object" && (top && typeof top.Ext !== "object")) { + document.write(debugMessage); + return; + } + + if (top && typeof Ext !== "object") { + Ext = top.Ext; + } + + Ext.onReady(function() { + var TYPO3ViewportInstance = null; + + if (top && top.TYPO3 && typeof top.TYPO3.Backend === "object") { + TYPO3ViewportInstance = top.TYPO3.Backend; + } else if (typeof TYPO3 === "object" && typeof TYPO3.Backend === "object") { + TYPO3ViewportInstance = TYPO3.Backend; + } + + if (TYPO3ViewportInstance !== null) { + TYPO3ViewportInstance.DebugConsole.addTab(debugMessage, header, group); + } else { + document.write(debugMessage); + } + }); + })(); + '; + echo t3lib_div::wrapJS($script); + } else { + echo $debug; + } + } + + /** + * Replaces special characters for the usage inside javascript + * + * @param string $string + * @param boolean $asObject + * @return string + */ + public static function prepareVariableForJavascript($string, $asObject) { + if ($asObject) { + $string = str_replace(array( + '"', '/', '<', "\n", "\r" + ), array( + '\"', '\/', '\<', '
    ', '' + ), $string); + } else { + $string = str_replace(array( + '"', '/', '<', "\n", "\r" + ), array( + '\"', '\/', '\<', '', '' + ), $string); + } + + return $string; + } + + /** + * Converts a variable to a string + * + * @param mixed $variable + * @return string + */ + public static function convertVariableToString($variable) { + $string = ''; + if (is_array($variable)) { + $string = self::viewArray($variable); + } elseif (is_object($variable)) { + $string = '|Object:

    ';
    +			$string .= print_r($variable, TRUE);
    +			$string .= '
    |'; + } elseif ((string) $variable !== '') { + $string = '|' . htmlspecialchars((string) $variable) . '|'; + } else { + $string = '| debug |'; + } + + return $string; + } + + /** + * Opens a debug message inside a popup window + * + * @param mixed $debugVariable + * @param string $header + * @param string $group + */ + public static function debugInPopUpWindow($debugVariable, $header = 'Debug', $group = 'Debug') { + $debugString = self::prepareVariableForJavascript( + self::convertVariableToString($debugVariable), + is_object($debugVariable) + ); + + $script = ' + (function debug() { + var debugMessage = "' . $debugString . '", + header = "' . htmlspecialchars($header) . '", + group = "' . htmlspecialchars($group) . '", + + browserWindow = function(debug, header, group) { + var newWindow = window.open("", "TYPO3DebugWindow_" + group, + "width=600,height=400,menubar=0,toolbar=1,status=0,scrollbars=1,resizable=1" + ); + if (newWindow.document.body.innerHTML) { + newWindow.document.body.innerHTML = newWindow.document.body.innerHTML + + "
    " + debugMessage; + } else { + newWindow.document.writeln( + "Debug: " + header + "(" + group + ")" + + "" + + debugMessage + + "" + ); + } + } + + if (!top.Ext) { + browserWindow(debugMessage, header, group); + } else { + top.Ext.onReady(function() { + if (top && top.TYPO3 && top.TYPO3.Backend) { + top.TYPO3.Backend.DebugConsole.openBrowserWindow(header, debugMessage, group); + } else { + browserWindow(debugMessage, header, group); + } + }); + } + })(); + '; + echo t3lib_div::wrapJS($script); + } + + /** + * Displays the "path" of the function call stack in a string, using debug_backtrace + * + * @return string + */ + public static function debugTrail() { + $trail = debug_backtrace(); + $trail = array_reverse($trail); + array_pop($trail); + + $path = array(); + foreach ($trail as $dat) { + $pathFragment = $dat['class'] . $dat['type'] . $dat['function']; + // add the path of the included file + if (in_array($dat['function'], array('require', 'include', 'require_once', 'include_once'))) { + $pathFragment .= '(' . substr($dat['args'][0], strlen(PATH_site)) . '),' . substr($dat['file'], strlen(PATH_site)); + } + $path[] = $pathFragment . '#' . $dat['line']; + } + + return implode(' // ', $path); + } + + /** + * Displays an array as rows in a table. Useful to debug output like an array of database records. + * + * @param mixed Array of arrays with similar keys + * @param string Table header + * @param boolean If TRUE, will return content instead of echo'ing out. + * @return void Outputs to browser. + */ + public static function debugRows($rows, $header = '', $returnHTML = FALSE) { + if (is_array($rows)) { + $firstEl = reset($rows); + if (is_array($firstEl)) { + $headerColumns = array_keys($firstEl); + $tRows = array(); + + // Header: + $tRows[] = '' . + htmlspecialchars($header) . ''; + $tCells = array(); + foreach ($headerColumns as $key) { + $tCells[] = ' + ' . htmlspecialchars($key) . ''; + } + $tRows[] = ' + ' . implode('', $tCells) . ' + '; + + // Rows: + foreach ($rows as $singleRow) { + $tCells = array(); + foreach ($headerColumns as $key) { + $tCells[] = ' + ' . + (is_array($singleRow[$key]) ? self::debugRows($singleRow[$key], '', TRUE) : htmlspecialchars($singleRow[$key])) . + ''; + } + $tRows[] = ' + ' . implode('', $tCells) . ' + '; + } + + $table = ' + ' . implode('', $tRows) . ' +
    '; + if ($returnHTML) { + return $table; + } + else + { + echo $table; + } + } else + { + debug('Empty array of rows', $header); + } + } else { + debug('No array of rows', $header); + } + } + + /** + * Returns a string with a list of ascii-values for the first $characters characters in $string + * + * @param string String to show ASCII value for + * @param integer Number of characters to show + * @return string The string with ASCII values in separated by a space char. + */ + public static function ordinalValue($string, $characters = 100) { + if (strlen($string) < $characters) { + $characters = strlen($string); + } + for ($i = 0; $i < $characters; $i++) { + $valuestring .= ' ' . ord(substr($string, $i, 1)); + } + return trim($valuestring); + } + + /** + * Returns HTML-code, which is a visual representation of a multidimensional array + * use t3lib_div::print_array() in order to print an array + * Returns FALSE if $array_in is not an array + * + * @param mixed Array to view + * @return string HTML output + */ + public static function viewArray($array_in) { + if (is_array($array_in)) { + $result = ' + '; + if (count($array_in) == 0) { + $result .= ''; + } else { + foreach ($array_in as $key => $val) { + $result .= ' + + + '; + } + } + $result .= '
    EMPTY!
    ' . htmlspecialchars((string) $key) . ''; + if (is_array($val)) { + $result .= self::viewArray($val); + } elseif (is_object($val)) { + $string = ''; + if (method_exists($val, '__toString')) { + $string .= get_class($val) . ': ' . (string) $val; + } else { + $string .= print_r($val, TRUE); + } + $result .= '' . + nl2br(htmlspecialchars($string)) . + '
    '; + } else { + if (gettype($val) == 'object') { + $string = 'Unknown object'; + } else { + $string = (string) $val; + } + $result .= '' . + nl2br(htmlspecialchars($string)) . + '
    '; + } + $result .= '
    '; + } else { + $result = ' + + + +
    ' . + nl2br(htmlspecialchars((string) $array_in)) . + '
    '; // Output it as a string. + } + return $result; + } + + /** + * Prints an array + * + * @param mixed Array to print visually (in a table). + * @return void + * @see viewArray() + */ + public static function printArray($array_in) { + echo self::viewArray($array_in); + } +} + +?> \ No newline at end of file diff --git a/lib/typo3/readme_moodle.txt b/lib/typo3/readme_moodle.txt index d45a1835b7b..0e188da4154 100644 --- a/lib/typo3/readme_moodle.txt +++ b/lib/typo3/readme_moodle.txt @@ -1,16 +1,11 @@ -Description of Typo3 libraries (v 4.7.4) import into Moodle +Description of Typo3 libraries (v 4.7.15) import into Moodle -Changes: none +Changes: +1/ hacked relative include of class.t3lib_utility_debug.php -skodak, stronk7 +Procedure: +1/ download latest version form http://typo3.org/download/ +2/ copy csconvtbl/*, unidata/* and all other necessary files we use +3/ run our phpunit tests with and without mbstring PHP extension - -Previous changes: - -25 June 2010 - Martin D (4.3.0RC1) - I renamed getURL to getUrl since it was being called that way everywhere. - I added a check to avoid notices on lib/typo3/class.t3lib_cs.php line 976 - -22 October 2011 - Petr Skoda (4.5.0) - reapplied getURL --> getUrl in class.t3lib_div.php line 2992 - reintroduced check to avoid notices on class.t3lib_cs.php line 1031 +skodak, stronk7, moodler From 4cf6e8b71da3c919d13dc762419585534cddac25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Thu, 12 Sep 2013 22:30:52 +0200 Subject: [PATCH 038/101] MDL-41223 do not store any form of login URL in $SESSION->wantsurl Credit goes to Michael Milette, thanks. --- login/index.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/login/index.php b/login/index.php index c4e21f61249..45d1a580d7f 100644 --- a/login/index.php +++ b/login/index.php @@ -275,7 +275,8 @@ if (empty($SESSION->wantsurl)) { $_SERVER["HTTP_REFERER"] != $CFG->wwwroot && $_SERVER["HTTP_REFERER"] != $CFG->wwwroot.'/' && $_SERVER["HTTP_REFERER"] != $CFG->httpswwwroot.'/login/' && - $_SERVER["HTTP_REFERER"] != $CFG->httpswwwroot.'/login/index.php') + strpos($_SERVER["HTTP_REFERER"], $CFG->httpswwwroot.'/login/?') !== 0 && + strpos($_SERVER["HTTP_REFERER"], $CFG->httpswwwroot.'/login/index.php') !== 0) // There might be some extra params such as ?lang=. ? $_SERVER["HTTP_REFERER"] : NULL; } From aaee690b899dc29bec0628b070fb41416d1e6ce8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Sat, 31 Aug 2013 15:21:32 +0200 Subject: [PATCH 039/101] MDL-41208 import YUI 3.12.0 with @VERSION@ fix for simpleyui --- lib/outputrequirementslib.php | 32 +- lib/setup.php | 2 +- lib/thirdpartylibs.xml | 2 +- .../align-plugin/align-plugin-debug.js | 10 +- .../align-plugin/align-plugin-min.js | 10 +- .../align-plugin/align-plugin.js | 10 +- .../anim-base/anim-base-debug.js | 10 +- .../anim-base/anim-base-min.js | 10 +- .../build => 3.12.0}/anim-base/anim-base.js | 10 +- .../anim-color/anim-color-debug.js | 10 +- .../anim-color/anim-color-min.js | 10 +- .../build => 3.12.0}/anim-color/anim-color.js | 10 +- .../anim-curve/anim-curve-debug.js | 10 +- .../anim-curve/anim-curve-min.js | 10 +- .../build => 3.12.0}/anim-curve/anim-curve.js | 10 +- .../anim-easing/anim-easing-debug.js | 10 +- .../anim-easing/anim-easing-min.js | 10 +- .../anim-easing/anim-easing.js | 10 +- .../anim-node-plugin-debug.js | 10 +- .../anim-node-plugin/anim-node-plugin-min.js | 8 + .../anim-node-plugin/anim-node-plugin.js | 10 +- .../anim-scroll/anim-scroll-debug.js | 10 +- .../anim-scroll/anim-scroll-min.js | 10 +- .../anim-scroll/anim-scroll.js | 10 +- .../anim-shape/anim-shape-debug.js | 16 +- .../anim-shape/anim-shape-min.js | 10 +- .../build => 3.12.0}/anim-shape/anim-shape.js | 16 +- .../build => 3.12.0}/anim-xy/anim-xy-debug.js | 10 +- lib/yuilib/3.12.0/anim-xy/anim-xy-min.js | 8 + .../build => 3.12.0}/anim-xy/anim-xy.js | 10 +- .../app-base/app-base-debug.js | 10 +- .../build => 3.12.0}/app-base/app-base-min.js | 10 +- .../build => 3.12.0}/app-base/app-base.js | 10 +- .../app-content/app-content-debug.js | 10 +- .../app-content/app-content-min.js | 10 +- .../app-content/app-content.js | 10 +- .../app-transitions-css-min.css | 8 +- .../app-transitions-css.css | 8 +- .../app-transitions-native-debug.js | 10 +- .../app-transitions-native-min.js | 10 +- .../app-transitions-native.js | 10 +- .../app-transitions/app-transitions-debug.js | 10 +- .../app-transitions/app-transitions-min.js | 10 +- .../app-transitions/app-transitions.js | 10 +- .../array-extras/array-extras-debug.js | 10 +- .../array-extras/array-extras-min.js | 10 +- .../array-extras/array-extras.js | 10 +- .../array-invoke/array-invoke-debug.js | 10 +- .../3.12.0/array-invoke/array-invoke-min.js | 8 + .../array-invoke/array-invoke.js | 10 +- .../arraylist-add/arraylist-add-debug.js | 10 +- .../arraylist-add/arraylist-add-min.js | 10 +- .../arraylist-add/arraylist-add.js | 10 +- .../arraylist-filter-debug.js | 10 +- .../arraylist-filter/arraylist-filter-min.js | 8 + .../arraylist-filter/arraylist-filter.js | 10 +- .../arraylist/arraylist-debug.js | 12 +- .../arraylist/arraylist-min.js | 10 +- .../build => 3.12.0}/arraylist/arraylist.js | 12 +- .../3.12.0/arraysort/arraysort-debug.js | 188 ++ lib/yuilib/3.12.0/arraysort/arraysort-min.js | 8 + lib/yuilib/3.12.0/arraysort/arraysort.js | 188 ++ .../3.12.0/assets/skin/audio-light/skin.css | 197 ++ lib/yuilib/3.12.0/assets/skin/audio/skin.css | 197 ++ .../3.12.0/assets/skin/capsule-dark/skin.css | 197 ++ .../3.12.0/assets/skin/capsule/skin.css | 201 ++ lib/yuilib/3.12.0/assets/skin/night/skin.css | 1741 ++++++++++++ .../3.12.0/assets/skin/round-dark/skin.css | 193 ++ lib/yuilib/3.12.0/assets/skin/round/skin.css | 193 ++ .../3.12.0/assets/skin/sam-dark/skin.css | 189 ++ lib/yuilib/3.12.0/assets/skin/sam/skin.css | 1652 +++++++++++ .../assets/skins/audio-light/rail-x.png | Bin .../assets/skins/audio-light/rail-y.png | Bin .../assets/skins/audio-light/slider-base.css | 8 +- .../assets/skins/audio-light/thumb-x.png | Bin .../assets/skins/audio-light/thumb-y.png | Bin .../assets/skins/audio/rail-x.png | Bin .../assets/skins/audio/rail-y.png | Bin .../assets/skins/audio/slider-base.css | 8 +- .../assets/skins/audio/thumb-x.png | Bin .../assets/skins/audio/thumb-y.png | Bin .../assets/skins/capsule-dark/rail-x-dots.png | Bin .../skins/capsule-dark/rail-x-lines.png | Bin .../assets/skins/capsule-dark/rail-x.png | Bin .../assets/skins/capsule-dark/rail-y-dots.png | Bin .../skins/capsule-dark/rail-y-lines.png | Bin .../assets/skins/capsule-dark/rail-y.png | Bin .../assets/skins/capsule-dark/slider-base.css | 8 +- .../skins/capsule-dark/thumb-x-line.png | Bin .../assets/skins/capsule-dark/thumb-x.png | Bin .../skins/capsule-dark/thumb-y-line.png | Bin .../assets/skins/capsule-dark/thumb-y.png | Bin .../assets/skins/capsule/rail-x-dots.png | Bin .../assets/skins/capsule/rail-x-lines.png | Bin .../assets/skins/capsule/rail-x.png | Bin .../assets/skins/capsule/rail-y-dots.png | Bin .../assets/skins/capsule/rail-y-lines.png | Bin .../assets/skins/capsule/rail-y.png | Bin .../assets/skins/capsule/slider-base.css | 8 +- .../assets/skins/capsule/thumb-x-line.png | Bin .../assets/skins/capsule/thumb-x.png | Bin .../assets/skins/capsule/thumb-y-line.png | Bin .../assets/skins/capsule/thumb-y-lines.png | Bin .../assets/skins/capsule/thumb-y.png | Bin .../assets/skins/night}/arrows.png | Bin .../assets/skins/night/autocomplete-list.css | 8 +- .../assets/skins/night/calendar-base.css | 8 +- .../assets/skins/night/calendar.css | 8 +- .../assets/skins/night/calendarnavigator.css | 8 +- .../assets/skins/night/datatable-base.css | 8 +- .../assets/skins/night/datatable-message.css | 8 +- .../skins/night/datatable-paginator.css | 8 + .../assets/skins/night/datatable-scroll.css | 8 +- .../assets/skins/night/datatable-sort.css | 8 +- .../assets/skins/night/dial.css | 8 +- .../horizontal-menu-submenu-indicator.png | Bin .../assets/skins/night/node-menunav.css | 8 +- .../assets/skins/night/overlay.css | 8 +- .../assets/skins/night/panel.css | 8 +- .../assets/skins/night/rail-x-lines.png | Bin .../assets/skins/night/rail-x.png | Bin .../assets/skins/night/rail-y-lines.png | Bin .../assets/skins/night/rail-y.png | Bin .../assets/skins/night/resize-base.css | 8 +- .../assets/skins/night/scrollview-base.css | 8 +- .../assets/skins/night/scrollview-list.css | 8 +- .../skins/night/scrollview-scrollbars.css | 8 +- .../assets/skins/night/slider-base.css | 8 +- .../skins/night/sort-arrow-sprite-ie.png | Bin .../assets/skins/night/sort-arrow-sprite.png | Bin .../assets/skins/night/sprite_icons.png | Bin .../assets/skins/night/tabview.css | 8 +- .../assets/skins/night/thumb-x.png | Bin .../assets/skins/night/thumb-y.png | Bin .../night/vertical-menu-submenu-indicator.png | Bin .../assets/skins/night/widget-base.css | 8 +- .../assets/skins/night/widget-modality.css | 8 +- .../assets/skins/night/widget-stack.css | 8 +- .../assets/skins/round-dark/rail-x.png | Bin .../assets/skins/round-dark/rail-y.png | Bin .../assets/skins/round-dark/slider-base.css | 8 +- .../assets/skins/round-dark/thumb-x-grip.png | Bin .../assets/skins/round-dark/thumb-x.png | Bin .../assets/skins/round-dark/thumb-y-grip.png | Bin .../assets/skins/round-dark/thumb-y.png | Bin .../assets/skins/round/rail-x.png | Bin .../assets/skins/round/rail-y.png | Bin .../assets/skins/round/slider-base.css | 8 +- .../assets/skins/round/thumb-x-grip.png | Bin .../assets/skins/round/thumb-x.png | Bin .../assets/skins/round/thumb-y-grip.png | Bin .../assets/skins/round/thumb-y.png | Bin .../assets/skins/sam-dark/rail-x-lines.png | Bin .../assets/skins/sam-dark/rail-x.png | Bin .../assets/skins/sam-dark/rail-y-lines.png | Bin .../assets/skins/sam-dark/rail-y.png | Bin .../assets/skins/sam-dark/slider-base.css | 8 +- .../assets/skins/sam-dark/thumb-x.png | Bin .../assets/skins/sam-dark/thumb-y.png | Bin .../assets/skins/sam}/arrows.png | Bin .../assets/skins/sam/autocomplete-list.css | 8 +- .../build => 3.12.0}/assets/skins/sam/bg.png | Bin .../assets/skins/sam/calendar-base.css | 8 +- .../assets/skins/sam/calendar.css | 8 +- .../assets/skins/sam/calendarnavigator.css | 8 +- .../assets/skins/sam/console-filters.css | 8 +- .../assets/skins/sam/console.css | 8 +- .../assets/skins/sam/datatable-base.css | 8 +- .../assets/skins/sam/datatable-message.css | 8 +- .../assets/skins/sam/datatable-paginator.css | 8 + .../assets/skins/sam/datatable-scroll.css | 8 +- .../assets/skins/sam/datatable-sort.css | 8 +- .../assets/skins/sam/dial.css | 8 +- .../sam/horizontal-menu-submenu-indicator.png | Bin .../sam/horizontal-menu-submenu-toggle.png | Bin .../3.12.0/assets/skins/sam/node-flick.css | 8 + .../assets/skins/sam/node-menunav.css | 8 +- .../assets/skins/sam/overlay.css | 8 +- .../assets/skins/sam/panel.css | 8 +- .../assets/skins/sam/rail-x-lines.png | Bin .../assets/skins/sam/rail-x.png | Bin .../assets/skins/sam/rail-y-lines.png | Bin .../assets/skins/sam/rail-y.png | Bin .../assets/skins/sam/resize-base.css | 8 +- .../assets/skins/sam/scrollview-base.css | 8 +- .../assets/skins/sam/scrollview-list.css | 8 +- .../skins/sam/scrollview-scrollbars.css | 8 +- .../assets/skins/sam/slider-base.css | 8 +- .../assets/skins/sam/sort-arrow-sprite-ie.png | Bin .../assets/skins/sam/sort-arrow-sprite.png | Bin .../assets/skins/sam/sprite.png | Bin .../assets/skins/sam/sprite_icons.png | Bin .../assets/skins/sam/tabview.css | 8 +- .../assets/skins/sam/test-console.css | 8 +- .../assets/skins/sam/thumb-x.png | Bin .../assets/skins/sam/thumb-y.png | Bin .../sam/vertical-menu-submenu-indicator.png | Bin .../assets/skins/sam/warn_error.png | Bin .../assets/skins/sam/widget-base.css | 8 +- .../assets/skins/sam/widget-modality.css | 8 +- .../assets/skins/sam/widget-stack.css | 8 +- .../async-queue/async-queue-debug.js | 48 +- .../3.12.0/async-queue/async-queue-min.js | 8 + .../async-queue/async-queue.js | 48 +- .../attribute-base/attribute-base-debug.js | 10 +- .../attribute-base/attribute-base-min.js | 10 +- .../attribute-base/attribute-base.js | 10 +- .../attribute-complex-debug.js | 10 +- .../attribute-complex-min.js | 8 + .../attribute-complex/attribute-complex.js | 10 +- .../attribute-core/attribute-core-debug.js | 258 +- .../attribute-core/attribute-core-min.js | 8 + .../attribute-core/attribute-core.js | 256 +- .../attribute-extras-debug.js | 10 +- .../attribute-extras/attribute-extras-min.js | 10 +- .../attribute-extras/attribute-extras.js | 10 +- .../attribute-observable-debug.js | 102 +- .../attribute-observable-min.js | 8 + .../attribute-observable.js | 102 +- .../autocomplete-base-debug.js | 10 +- .../autocomplete-base-min.js | 10 +- .../autocomplete-base/autocomplete-base.js | 10 +- .../autocomplete-filters-accentfold-debug.js | 10 +- .../autocomplete-filters-accentfold-min.js | 10 +- .../autocomplete-filters-accentfold.js | 10 +- .../autocomplete-filters-debug.js | 10 +- .../autocomplete-filters-min.js | 10 +- .../autocomplete-filters.js | 10 +- ...ocomplete-highlighters-accentfold-debug.js | 10 +- ...utocomplete-highlighters-accentfold-min.js | 10 +- .../autocomplete-highlighters-accentfold.js | 10 +- .../autocomplete-highlighters-debug.js | 10 +- .../autocomplete-highlighters-min.js | 10 +- .../autocomplete-highlighters.js | 10 +- .../autocomplete-list-keys-debug.js | 10 +- .../autocomplete-list-keys-min.js | 10 +- .../autocomplete-list-keys.js | 10 +- .../assets/autocomplete-list-core.css | 8 +- .../skins/night/autocomplete-list-skin.css | 8 +- .../assets/skins/night/autocomplete-list.css | 8 + .../skins/sam/autocomplete-list-skin.css | 8 +- .../assets/skins/sam/autocomplete-list.css | 8 +- .../autocomplete-list-debug.js | 14 +- .../autocomplete-list-min.js | 10 +- .../autocomplete-list/autocomplete-list.js | 14 +- .../lang/autocomplete-list.js | 10 +- .../lang/autocomplete-list_en.js | 10 +- .../lang/autocomplete-list_es.js | 10 +- .../lang/autocomplete-list_hu.js | 8 + .../lang/autocomplete-list_it.js | 8 + .../autocomplete-plugin-debug.js | 10 +- .../autocomplete-plugin-min.js | 10 +- .../autocomplete-plugin.js | 10 +- .../autocomplete-sources-debug.js | 10 +- .../autocomplete-sources-min.js | 10 +- .../autocomplete-sources.js | 10 +- .../axis-base/axis-base-debug.js | 76 +- lib/yuilib/3.12.0/axis-base/axis-base-min.js | 8 + .../build => 3.12.0}/axis-base/axis-base.js | 76 +- .../axis-category-base-debug.js | 44 +- .../axis-category-base-min.js | 8 + .../axis-category-base/axis-category-base.js | 44 +- .../axis-category/axis-category-debug.js | 126 + .../3.12.0/axis-category/axis-category-min.js | 8 + .../3.12.0/axis-category/axis-category.js | 126 + .../axis-numeric-base-debug.js | 90 +- .../axis-numeric-base-min.js | 8 + .../axis-numeric-base/axis-numeric-base.js | 90 +- .../axis-numeric/axis-numeric-debug.js | 64 +- .../3.12.0/axis-numeric/axis-numeric-min.js | 8 + .../axis-numeric/axis-numeric.js | 64 +- .../axis-stacked-base-debug.js | 10 +- .../axis-stacked-base-min.js | 10 +- .../axis-stacked-base/axis-stacked-base.js | 10 +- .../axis-stacked/axis-stacked-debug.js | 10 +- .../3.12.0/axis-stacked/axis-stacked-min.js | 8 + .../axis-stacked/axis-stacked.js | 10 +- .../axis-time-base/axis-time-base-debug.js | 47 +- .../axis-time-base/axis-time-base-min.js | 10 +- .../axis-time-base/axis-time-base.js | 47 +- .../3.12.0/axis-time/axis-time-debug.js | 98 + lib/yuilib/3.12.0/axis-time/axis-time-min.js | 8 + lib/yuilib/3.12.0/axis-time/axis-time.js | 98 + .../build => 3.12.0}/axis/axis-debug.js | 262 +- .../{3.9.1/build => 3.12.0}/axis/axis-min.js | 12 +- .../{3.9.1/build => 3.12.0}/axis/axis.js | 262 +- .../base-base/base-base-debug.js | 65 +- lib/yuilib/3.12.0/base-base/base-base-min.js | 8 + .../build => 3.12.0}/base-base/base-base.js | 65 +- .../base-build/base-build-debug.js | 66 +- .../3.12.0/base-build/base-build-min.js | 8 + .../build => 3.12.0}/base-build/base-build.js | 66 +- .../base-core/base-core-debug.js | 373 ++- lib/yuilib/3.12.0/base-core/base-core-min.js | 8 + .../build => 3.12.0}/base-core/base-core.js | 369 ++- .../base-observable/base-observable-debug.js | 46 +- .../base-observable/base-observable-min.js | 8 + .../base-observable/base-observable.js | 46 +- .../base-pluginhost/base-pluginhost-debug.js | 10 +- .../base-pluginhost/base-pluginhost-min.js | 8 + .../base-pluginhost/base-pluginhost.js | 10 +- .../button-core/button-core-debug.js | 10 +- .../button-core/button-core-min.js | 10 +- .../button-core/button-core.js | 10 +- .../button-group/button-group-debug.js | 15 +- .../3.12.0/button-group/button-group-min.js | 8 + .../button-group/button-group.js | 15 +- .../button-plugin/button-plugin-debug.js | 10 +- .../button-plugin/button-plugin-min.js | 10 +- .../button-plugin/button-plugin.js | 10 +- .../build => 3.12.0}/button/button-debug.js | 10 +- .../build => 3.12.0}/button/button-min.js | 10 +- .../{3.9.1/build => 3.12.0}/button/button.js | 10 +- .../cache-base/cache-base-debug.js | 10 +- .../cache-base/cache-base-min.js | 10 +- .../build => 3.12.0}/cache-base/cache-base.js | 10 +- .../cache-offline/cache-offline-debug.js | 10 +- .../cache-offline/cache-offline-min.js | 10 +- .../cache-offline/cache-offline.js | 10 +- .../cache-plugin/cache-plugin-debug.js | 10 +- .../3.12.0/cache-plugin/cache-plugin-min.js | 8 + .../cache-plugin/cache-plugin.js | 10 +- .../assets/calendar-base-core.css | 8 +- .../assets/skins/night/calendar-base-skin.css | 8 +- .../assets/skins/night/calendar-base.css | 8 + .../assets/skins/sam/calendar-base-skin.css | 8 +- .../assets/skins/sam/calendar-base.css | 8 +- .../calendar-base/calendar-base-debug.js | 60 +- .../3.12.0/calendar-base/calendar-base-min.js | 10 + .../calendar-base/calendar-base.js | 60 +- .../calendar-base/lang/calendar-base.js | 8 + .../calendar-base/lang/calendar-base_de.js | 8 + .../calendar-base/lang/calendar-base_en.js | 8 + .../calendar-base/lang/calendar-base_es-AR.js | 8 + .../calendar-base/lang/calendar-base_es.js | 8 + .../calendar-base/lang/calendar-base_fr.js | 8 + .../calendar-base/lang/calendar-base_hu.js | 8 + .../calendar-base/lang/calendar-base_it.js | 8 + .../calendar-base/lang/calendar-base_ja.js | 8 + .../calendar-base/lang/calendar-base_nb-NO.js | 8 + .../calendar-base/lang/calendar-base_nl.js | 8 + .../calendar-base/lang/calendar-base_pt-BR.js | 8 + .../calendar-base/lang/calendar-base_ru.js | 8 + .../lang/calendar-base_zh-HANT-TW.js | 8 + .../lang/calendar-base_zh-Hans-CN.js | 8 + .../lang/calendar-base_zh-Hans.js | 8 + .../lang/calendar-base_zh-Hant-HK.js | 8 + .../lang/calendar-base_zh-Hant.js | 8 + .../calendar/assets/calendar-core.css | 8 +- .../assets/skins/night/calendar-skin.css | 8 +- .../calendar/assets/skins/night/calendar.css | 8 + .../assets/skins/sam/calendar-skin.css | 8 +- .../calendar}/assets/skins/sam/calendar.css | 8 +- .../calendar/calendar-debug.js | 147 +- lib/yuilib/3.12.0/calendar/calendar-min.js | 9 + .../build => 3.12.0}/calendar/calendar.js | 147 +- .../assets/calendarnavigator-core.css | 8 +- .../skins/night/calendarnavigator-skin.css | 8 +- .../assets/skins/night/calendarnavigator.css | 8 + .../skins/sam/calendarnavigator-skin.css | 8 +- .../assets/skins/sam/calendarnavigator.css | 8 +- .../calendarnavigator-debug.js | 25 +- .../calendarnavigator-min.js | 8 + .../calendarnavigator/calendarnavigator.js | 25 +- .../charts-base/charts-base-debug.js | 174 +- .../3.12.0/charts-base/charts-base-min.js | 15 + .../charts-base/charts-base.js | 174 +- .../charts-legend/charts-legend-debug.js | 18 +- .../charts-legend/charts-legend-min.js | 12 +- .../charts-legend/charts-legend.js | 18 +- .../classnamemanager-debug.js | 10 +- .../classnamemanager/classnamemanager-min.js | 10 +- .../classnamemanager/classnamemanager.js | 10 +- .../clickable-rail/clickable-rail-debug.js | 10 +- .../clickable-rail/clickable-rail-min.js | 10 +- .../clickable-rail/clickable-rail.js | 10 +- .../color-base/color-base-debug.js | 100 +- .../3.12.0/color-base/color-base-min.js | 8 + .../build => 3.12.0}/color-base/color-base.js | 100 +- .../color-harmony/color-harmony-debug.js | 10 +- .../color-harmony/color-harmony-min.js | 10 +- .../color-harmony/color-harmony.js | 10 +- .../color-hsl/color-hsl-debug.js | 10 +- .../color-hsl/color-hsl-min.js | 10 +- .../build => 3.12.0}/color-hsl/color-hsl.js | 10 +- .../color-hsv/color-hsv-debug.js | 10 +- .../color-hsv/color-hsv-min.js | 10 +- .../build => 3.12.0}/color-hsv/color-hsv.js | 10 +- .../assets/console-filters-core.css | 7 + .../assets/skins/sam/console-filters-skin.css | 8 +- .../assets/skins/sam/console-filters.css | 8 +- .../console-filters/console-filters-debug.js | 10 +- .../console-filters/console-filters-min.js | 10 +- .../console-filters/console-filters.js | 10 +- .../3.12.0/console/assets/console-core.css | 7 + .../console/assets/skins/sam/bg.png | Bin .../console/assets/skins/sam/console-skin.css | 8 +- .../console/assets/skins/sam/console.css | 8 +- .../console/assets/skins/sam/warn_error.png | Bin .../console/assets/warn_error.png | Bin .../build => 3.12.0}/console/console-debug.js | 21 +- .../build => 3.12.0}/console/console-min.js | 10 +- .../build => 3.12.0}/console/console.js | 21 +- lib/yuilib/3.12.0/console/lang/console.js | 8 + lib/yuilib/3.12.0/console/lang/console_en.js | 8 + lib/yuilib/3.12.0/console/lang/console_es.js | 8 + lib/yuilib/3.12.0/console/lang/console_hu.js | 8 + lib/yuilib/3.12.0/console/lang/console_it.js | 8 + lib/yuilib/3.12.0/console/lang/console_ja.js | 8 + .../build => 3.12.0}/cookie/cookie-debug.js | 10 +- .../build => 3.12.0}/cookie/cookie-min.js | 10 +- .../{3.9.1/build => 3.12.0}/cookie/cookie.js | 10 +- .../createlink-base/createlink-base-debug.js | 10 +- .../createlink-base/createlink-base-min.js | 10 +- .../createlink-base/createlink-base.js | 10 +- .../cssbase-context/cssbase-context-min.css | 8 +- .../cssbase-context/cssbase-context.css | 8 +- .../build => 3.12.0}/cssbase/cssbase-min.css | 8 +- .../build => 3.12.0}/cssbase/cssbase.css | 8 +- .../cssbutton/cssbutton-min.css | 8 +- .../build => 3.12.0}/cssbutton/cssbutton.css | 8 +- .../cssfonts-context/cssfonts-context-min.css | 8 +- .../cssfonts-context/cssfonts-context.css | 8 +- .../cssfonts/cssfonts-min.css | 8 +- .../build => 3.12.0}/cssfonts/cssfonts.css | 8 +- .../cssgrids-base/cssgrids-base-min.css | 8 +- .../cssgrids-base/cssgrids-base.css | 8 +- .../cssgrids-responsive-min.css | 8 +- .../cssgrids-responsive.css | 8 +- .../cssgrids-units/cssgrids-units-min.css | 8 +- .../cssgrids-units/cssgrids-units.css | 8 +- .../cssgrids/cssgrids-min.css | 8 +- .../build => 3.12.0}/cssgrids/cssgrids.css | 8 +- .../cssnormalize-context-min.css | 8 +- .../cssnormalize-context.css | 8 +- .../cssnormalize/cssnormalize-min.css | 8 +- .../cssnormalize/cssnormalize.css | 8 +- .../cssreset-context/cssreset-context-min.css | 8 +- .../cssreset-context/cssreset-context.css | 8 +- .../cssreset/cssreset-min.css | 8 +- .../build => 3.12.0}/cssreset/cssreset.css | 8 +- .../dataschema-array-debug.js | 10 +- .../dataschema-array/dataschema-array-min.js | 10 +- .../dataschema-array/dataschema-array.js | 10 +- .../dataschema-base/dataschema-base-debug.js | 10 +- .../dataschema-base/dataschema-base-min.js | 10 +- .../dataschema-base/dataschema-base.js | 10 +- .../dataschema-json/dataschema-json-debug.js | 10 +- .../dataschema-json/dataschema-json-min.js | 10 +- .../dataschema-json/dataschema-json.js | 10 +- .../dataschema-text/dataschema-text-debug.js | 10 +- .../dataschema-text/dataschema-text-min.js | 10 +- .../dataschema-text/dataschema-text.js | 10 +- .../dataschema-xml/dataschema-xml-debug.js | 10 +- .../dataschema-xml/dataschema-xml-min.js | 10 +- .../dataschema-xml/dataschema-xml.js | 10 +- .../datasource-arrayschema-debug.js | 10 +- .../datasource-arrayschema-min.js | 10 +- .../datasource-arrayschema.js | 10 +- .../datasource-cache-debug.js | 10 +- .../datasource-cache/datasource-cache-min.js | 10 +- .../datasource-cache/datasource-cache.js | 10 +- .../datasource-function-debug.js | 10 +- .../datasource-function-min.js | 10 +- .../datasource-function.js | 10 +- .../datasource-get/datasource-get-debug.js | 10 +- .../datasource-get/datasource-get-min.js | 10 +- .../datasource-get/datasource-get.js | 10 +- .../datasource-io/datasource-io-debug.js | 10 +- .../datasource-io/datasource-io-min.js | 10 +- .../datasource-io/datasource-io.js | 10 +- .../datasource-jsonschema-debug.js | 10 +- .../datasource-jsonschema-min.js | 10 +- .../datasource-jsonschema.js | 10 +- .../datasource-local-debug.js | 10 +- .../datasource-local/datasource-local-min.js | 10 +- .../datasource-local/datasource-local.js | 10 +- .../datasource-polling-debug.js | 10 +- .../datasource-polling-min.js | 10 +- .../datasource-polling/datasource-polling.js | 10 +- .../datasource-textschema-debug.js | 10 +- .../datasource-textschema-min.js | 10 +- .../datasource-textschema.js | 10 +- .../datasource-xmlschema-debug.js | 10 +- .../datasource-xmlschema-min.js | 10 +- .../datasource-xmlschema.js | 10 +- .../assets/datatable-base-core.css | 11 + .../skins/night/datatable-base-skin.css | 8 +- .../assets/skins/night/datatable-base.css | 8 + .../assets/skins/sam/datatable-base-skin.css | 8 +- .../assets/skins/sam/datatable-base.css | 8 + .../datatable-base/datatable-base-debug.js | 10 +- .../datatable-base/datatable-base-min.js | 10 +- .../datatable-base/datatable-base.js | 10 +- .../datatable-body/datatable-body-debug.js | 361 ++- .../datatable-body/datatable-body-min.js | 9 + .../datatable-body/datatable-body.js | 361 ++- .../datatable-column-widths-debug.js | 12 +- .../datatable-column-widths-min.js | 10 +- .../datatable-column-widths.js | 12 +- .../datatable-core/datatable-core-debug.js | 10 +- .../datatable-core/datatable-core-min.js | 10 +- .../datatable-core/datatable-core.js | 10 +- .../datatable-datasource-debug.js | 10 +- .../datatable-datasource-min.js | 10 +- .../datatable-datasource.js | 10 +- .../datatable-foot/datatable-foot-debug.js | 119 + .../datatable-foot/datatable-foot-min.js | 8 + .../3.12.0/datatable-foot/datatable-foot.js | 119 + .../datatable-formatters-debug.js | 60 +- .../datatable-formatters-min.js | 10 +- .../datatable-formatters.js | 60 +- .../datatable-head/datatable-head-debug.js | 10 +- .../datatable-head/datatable-head-min.js | 10 +- .../datatable-head/datatable-head.js | 10 +- .../assets/datatable-message-core.css | 8 +- .../skins/night/datatable-message-skin.css | 8 +- .../assets/skins/night/datatable-message.css | 8 + .../skins/sam/datatable-message-skin.css | 12 + .../assets/skins/sam/datatable-message.css | 8 +- .../datatable-message-debug.js | 12 +- .../datatable-message-min.js | 10 +- .../datatable-message/datatable-message.js | 12 +- .../lang/datatable-message.js | 8 + .../lang/datatable-message_en.js | 8 + .../lang/datatable-message_es.js | 8 + .../lang/datatable-message_fr.js | 8 + .../lang/datatable-message_hu.js | 8 + .../lang/datatable-message_it.js | 8 + .../datatable-mutable-debug.js | 10 +- .../datatable-mutable-min.js | 10 +- .../datatable-mutable/datatable-mutable.js | 10 +- .../datatable-paginator-templates-debug.js | 93 + .../datatable-paginator-templates-min.js | 8 + .../datatable-paginator-templates.js | 93 + .../assets/datatable-paginator-core.css | 65 + .../skins/night/datatable-paginator-skin.css | 42 + .../skins/night/datatable-paginator.css | 8 + .../skins/sam/datatable-paginator-skin.css | 43 + .../assets/skins/sam/datatable-paginator.css | 8 + .../datatable-paginator-debug.js | 932 +++++++ .../datatable-paginator-min.js | 9 + .../datatable-paginator.js | 932 +++++++ .../lang/datatable-paginator.js | 8 + .../lang/datatable-paginator_en.js | 8 + .../assets/datatable-scroll-core.css | 8 +- .../skins/night/datatable-scroll-skin.css | 8 +- .../assets/skins/night/datatable-scroll.css | 8 + .../skins/sam/datatable-scroll-skin.css | 8 +- .../assets/skins/sam/datatable-scroll.css | 8 +- .../datatable-scroll-debug.js | 10 +- .../datatable-scroll/datatable-scroll-min.js | 10 +- .../datatable-scroll/datatable-scroll.js | 10 +- .../assets/datatable-sort-core.css | 8 +- .../skins/night/datatable-sort-skin.css | 8 +- .../assets/skins/night/datatable-sort.css | 8 + .../skins/night/sort-arrow-sprite-ie.png | Bin 0 -> 3629 bytes .../assets/skins/night/sort-arrow-sprite.png | Bin 0 -> 2885 bytes .../assets/skins/sam/datatable-sort-skin.css | 8 +- .../assets/skins/sam/datatable-sort.css | 8 + .../assets/skins/sam/sort-arrow-sprite-ie.png | Bin .../assets/skins/sam/sort-arrow-sprite.png | Bin .../datatable-sort/datatable-sort-debug.js | 27 +- .../datatable-sort/datatable-sort-min.js | 10 +- .../datatable-sort/datatable-sort.js | 27 +- .../datatable-sort/lang/datatable-sort.js | 8 + .../datatable-sort/lang/datatable-sort_en.js | 8 + .../datatable-sort/lang/datatable-sort_es.js | 10 +- .../datatable-sort/lang/datatable-sort_fr.js | 10 +- .../datatable-sort/lang/datatable-sort_hu.js | 8 + .../datatable-table/datatable-table-debug.js | 10 +- .../datatable-table/datatable-table-min.js | 10 +- .../datatable-table/datatable-table.js | 10 +- .../datatype-date-format-debug.js | 11 +- .../datatype-date-format-min.js | 10 +- .../datatype-date-format.js | 11 +- .../lang/datatype-date-format.js | 10 +- .../lang/datatype-date-format_ar-JO.js | 10 +- .../lang/datatype-date-format_ar.js | 10 +- .../lang/datatype-date-format_ca-ES.js | 10 +- .../lang/datatype-date-format_ca.js | 10 +- .../lang/datatype-date-format_da-DK.js | 10 +- .../lang/datatype-date-format_da.js | 10 +- .../lang/datatype-date-format_de-AT.js | 10 +- .../lang/datatype-date-format_de-DE.js | 10 +- .../lang/datatype-date-format_de.js | 10 +- .../lang/datatype-date-format_el-GR.js | 10 +- .../lang/datatype-date-format_el.js | 10 +- .../lang/datatype-date-format_en-AU.js | 10 +- .../lang/datatype-date-format_en-CA.js | 10 +- .../lang/datatype-date-format_en-GB.js | 10 +- .../lang/datatype-date-format_en-IE.js | 10 +- .../lang/datatype-date-format_en-IN.js | 10 +- .../lang/datatype-date-format_en-JO.js | 10 +- .../lang/datatype-date-format_en-MY.js | 10 +- .../lang/datatype-date-format_en-NZ.js | 10 +- .../lang/datatype-date-format_en-PH.js | 10 +- .../lang/datatype-date-format_en-SG.js | 10 +- .../lang/datatype-date-format_en-US.js | 10 +- .../lang/datatype-date-format_en.js | 10 +- .../lang/datatype-date-format_es-AR.js | 10 +- .../lang/datatype-date-format_es-BO.js | 10 +- .../lang/datatype-date-format_es-CL.js | 10 +- .../lang/datatype-date-format_es-CO.js | 10 +- .../lang/datatype-date-format_es-EC.js | 10 +- .../lang/datatype-date-format_es-ES.js | 10 +- .../lang/datatype-date-format_es-MX.js | 10 +- .../lang/datatype-date-format_es-PE.js | 10 +- .../lang/datatype-date-format_es-PY.js | 10 +- .../lang/datatype-date-format_es-US.js | 10 +- .../lang/datatype-date-format_es-UY.js | 10 +- .../lang/datatype-date-format_es-VE.js | 10 +- .../lang/datatype-date-format_es.js | 10 +- .../lang/datatype-date-format_fi-FI.js | 10 +- .../lang/datatype-date-format_fi.js | 10 +- .../lang/datatype-date-format_fr-BE.js | 10 +- .../lang/datatype-date-format_fr-CA.js | 10 +- .../lang/datatype-date-format_fr-FR.js | 10 +- .../lang/datatype-date-format_fr.js | 10 +- .../lang/datatype-date-format_hi-IN.js | 10 +- .../lang/datatype-date-format_hi.js | 10 +- .../lang/datatype-date-format_hu.js | 8 + .../lang/datatype-date-format_id-ID.js | 10 +- .../lang/datatype-date-format_id.js | 10 +- .../lang/datatype-date-format_it-IT.js | 10 +- .../lang/datatype-date-format_it.js | 10 +- .../lang/datatype-date-format_ja-JP.js | 10 +- .../lang/datatype-date-format_ja.js | 10 +- .../lang/datatype-date-format_ko-KR.js | 10 +- .../lang/datatype-date-format_ko.js | 10 +- .../lang/datatype-date-format_ms-MY.js | 10 +- .../lang/datatype-date-format_ms.js | 10 +- .../lang/datatype-date-format_nb-NO.js | 10 +- .../lang/datatype-date-format_nb.js | 10 +- .../lang/datatype-date-format_nl-BE.js | 10 +- .../lang/datatype-date-format_nl-NL.js | 10 +- .../lang/datatype-date-format_nl.js | 10 +- .../lang/datatype-date-format_pl-PL.js | 10 +- .../lang/datatype-date-format_pl.js | 10 +- .../lang/datatype-date-format_pt-BR.js | 10 +- .../lang/datatype-date-format_pt.js | 10 +- .../lang/datatype-date-format_ro-RO.js | 10 +- .../lang/datatype-date-format_ro.js | 10 +- .../lang/datatype-date-format_ru-RU.js | 10 +- .../lang/datatype-date-format_ru.js | 10 +- .../lang/datatype-date-format_sv-SE.js | 10 +- .../lang/datatype-date-format_sv.js | 10 +- .../lang/datatype-date-format_th-TH.js | 10 +- .../lang/datatype-date-format_th.js | 10 +- .../lang/datatype-date-format_tr-TR.js | 10 +- .../lang/datatype-date-format_tr.js | 10 +- .../lang/datatype-date-format_vi-VN.js | 10 +- .../lang/datatype-date-format_vi.js | 10 +- .../lang/datatype-date-format_zh-Hans-CN.js | 10 +- .../lang/datatype-date-format_zh-Hans.js | 10 +- .../lang/datatype-date-format_zh-Hant-HK.js | 10 +- .../lang/datatype-date-format_zh-Hant-TW.js | 10 +- .../lang/datatype-date-format_zh-Hant.js | 10 +- .../datatype-date-math-debug.js | 10 +- .../datatype-date-math-min.js | 10 +- .../datatype-date-math/datatype-date-math.js | 10 +- .../datatype-date-parse-debug.js | 10 +- .../datatype-date-parse-min.js | 8 + .../datatype-date-parse.js | 10 +- .../datatype-number-format-debug.js | 10 +- .../datatype-number-format-min.js | 10 +- .../datatype-number-format.js | 10 +- .../datatype-number-parse-debug.js | 10 +- .../datatype-number-parse-min.js | 10 +- .../datatype-number-parse.js | 10 +- .../datatype-xml-format-debug.js | 10 +- .../datatype-xml-format-min.js | 10 +- .../datatype-xml-format.js | 10 +- .../datatype-xml-parse-debug.js | 10 +- .../datatype-xml-parse-min.js | 10 +- .../datatype-xml-parse/datatype-xml-parse.js | 10 +- .../dd-constrain/dd-constrain-debug.js | 10 +- .../dd-constrain/dd-constrain-min.js | 10 +- .../dd-constrain/dd-constrain.js | 10 +- .../dd-ddm-base/dd-ddm-base-debug.js | 14 +- .../dd-ddm-base/dd-ddm-base-min.js | 10 +- .../dd-ddm-base/dd-ddm-base.js | 14 +- .../dd-ddm-drop/dd-ddm-drop-debug.js | 10 +- .../dd-ddm-drop/dd-ddm-drop-min.js | 10 +- .../dd-ddm-drop/dd-ddm-drop.js | 10 +- .../build => 3.12.0}/dd-ddm/dd-ddm-debug.js | 10 +- .../build => 3.12.0}/dd-ddm/dd-ddm-min.js | 10 +- .../{3.9.1/build => 3.12.0}/dd-ddm/dd-ddm.js | 10 +- .../dd-delegate/dd-delegate-debug.js | 10 +- .../dd-delegate/dd-delegate-min.js | 10 +- .../dd-delegate/dd-delegate.js | 10 +- .../build => 3.12.0}/dd-drag/dd-drag-debug.js | 12 +- lib/yuilib/3.12.0/dd-drag/dd-drag-min.js | 9 + .../build => 3.12.0}/dd-drag/dd-drag.js | 12 +- .../dd-drop-plugin/dd-drop-plugin-debug.js | 10 +- .../dd-drop-plugin/dd-drop-plugin-min.js | 8 + .../dd-drop-plugin/dd-drop-plugin.js | 10 +- .../build => 3.12.0}/dd-drop/dd-drop-debug.js | 10 +- .../build => 3.12.0}/dd-drop/dd-drop-min.js | 10 +- .../build => 3.12.0}/dd-drop/dd-drop.js | 10 +- .../dd-gestures/dd-gestures-debug.js | 10 +- .../dd-gestures/dd-gestures-min.js | 10 +- .../dd-gestures/dd-gestures.js | 10 +- .../dd-plugin/dd-plugin-debug.js | 10 +- .../dd-plugin/dd-plugin-min.js | 10 +- .../build => 3.12.0}/dd-plugin/dd-plugin.js | 10 +- .../dd-proxy/dd-proxy-debug.js | 10 +- .../build => 3.12.0}/dd-proxy/dd-proxy-min.js | 10 +- .../build => 3.12.0}/dd-proxy/dd-proxy.js | 10 +- .../dd-scroll/dd-scroll-debug.js | 10 +- .../dd-scroll/dd-scroll-min.js | 10 +- .../build => 3.12.0}/dd-scroll/dd-scroll.js | 10 +- .../dial/assets/dial-core.css | 8 +- .../dial/assets/skins/night/dial-skin.css | 8 +- .../3.12.0/dial/assets/skins/night/dial.css | 8 + .../dial/assets/skins/sam/dial-skin.css | 8 +- .../dial/assets/skins/sam/dial.css | 8 +- .../build => 3.12.0}/dial/dial-debug.js | 38 +- .../{3.9.1/build => 3.12.0}/dial/dial-min.js | 12 +- .../{3.9.1/build => 3.12.0}/dial/dial.js | 38 +- lib/yuilib/3.12.0/dial/lang/dial.js | 8 + lib/yuilib/3.12.0/dial/lang/dial_en.js | 8 + lib/yuilib/3.12.0/dial/lang/dial_es.js | 8 + lib/yuilib/3.12.0/dial/lang/dial_hu.js | 8 + .../dom-base/dom-base-debug.js | 10 +- .../build => 3.12.0}/dom-base/dom-base-min.js | 10 +- .../build => 3.12.0}/dom-base/dom-base.js | 10 +- .../dom-core/dom-core-debug.js | 10 +- .../build => 3.12.0}/dom-core/dom-core-min.js | 10 +- .../build => 3.12.0}/dom-core/dom-core.js | 10 +- .../dom-screen/dom-screen-debug.js | 10 +- .../dom-screen/dom-screen-min.js | 10 +- .../build => 3.12.0}/dom-screen/dom-screen.js | 10 +- .../dom-style-ie/dom-style-ie-debug.js | 10 +- .../dom-style-ie/dom-style-ie-min.js | 10 +- .../dom-style-ie/dom-style-ie.js | 10 +- .../dom-style/dom-style-debug.js | 84 +- .../dom-style/dom-style-min.js | 10 +- .../build => 3.12.0}/dom-style/dom-style.js | 84 +- .../build => 3.12.0}/dump/dump-debug.js | 10 +- .../{3.9.1/build => 3.12.0}/dump/dump-min.js | 10 +- .../{3.9.1/build => 3.12.0}/dump/dump.js | 10 +- .../editor-base/editor-base-debug.js | 10 +- .../editor-base/editor-base-min.js | 10 +- .../editor-base/editor-base.js | 10 +- .../editor-bidi/editor-bidi-debug.js | 10 +- .../editor-bidi/editor-bidi-min.js | 10 +- .../editor-bidi/editor-bidi.js | 10 +- .../editor-br/editor-br-debug.js | 12 +- lib/yuilib/3.12.0/editor-br/editor-br-min.js | 8 + .../build => 3.12.0}/editor-br/editor-br.js | 12 +- .../editor-lists/editor-lists-debug.js | 10 +- .../editor-lists/editor-lists-min.js | 10 +- .../editor-lists/editor-lists.js | 10 +- .../editor-para-base-debug.js | 10 +- .../editor-para-base/editor-para-base-min.js | 10 +- .../editor-para-base/editor-para-base.js | 10 +- .../editor-para-ie/editor-para-ie-debug.js | 10 +- .../editor-para-ie/editor-para-ie-min.js | 10 +- .../editor-para-ie/editor-para-ie.js | 10 +- .../editor-para/editor-para-debug.js | 10 +- .../editor-para/editor-para-min.js | 10 +- .../editor-para/editor-para.js | 10 +- .../editor-selection-debug.js | 10 +- .../editor-selection/editor-selection-min.js | 10 +- .../editor-selection/editor-selection.js | 10 +- .../editor-tab/editor-tab-debug.js | 10 +- .../editor-tab/editor-tab-min.js | 10 +- .../build => 3.12.0}/editor-tab/editor-tab.js | 10 +- .../build => 3.12.0}/escape/escape-debug.js | 10 +- .../build => 3.12.0}/escape/escape-min.js | 10 +- .../{3.9.1/build => 3.12.0}/escape/escape.js | 10 +- .../event-base-ie/event-base-ie-debug.js | 16 +- .../event-base-ie/event-base-ie-min.js | 10 +- .../event-base-ie/event-base-ie.js | 16 +- .../event-base/event-base-debug.js | 45 +- .../3.12.0/event-base/event-base-min.js | 9 + .../build => 3.12.0}/event-base/event-base.js | 43 +- .../event-contextmenu-debug.js | 29 +- .../event-contextmenu-min.js | 10 +- .../event-contextmenu/event-contextmenu.js | 29 +- .../event-custom-base-debug.js | 920 ++++--- .../event-custom-base-min.js | 10 + .../event-custom-base/event-custom-base.js | 917 ++++--- .../event-custom-complex-debug.js | 674 +++++ .../event-custom-complex-min.js | 8 + .../event-custom-complex.js | 671 +++++ .../event-delegate/event-delegate-debug.js | 10 +- .../event-delegate/event-delegate-min.js | 10 +- .../event-delegate/event-delegate.js | 10 +- .../event-flick/event-flick-debug.js | 10 +- .../event-flick/event-flick-min.js | 10 +- .../event-flick/event-flick.js | 10 +- .../event-focus/event-focus-debug.js | 16 +- .../event-focus/event-focus-min.js | 10 +- .../event-focus/event-focus.js | 16 +- .../event-hover/event-hover-debug.js | 10 +- .../event-hover/event-hover-min.js | 10 +- .../event-hover/event-hover.js | 10 +- .../event-key/event-key-debug.js | 14 +- .../event-key/event-key-min.js | 10 +- .../build => 3.12.0}/event-key/event-key.js | 14 +- .../event-mouseenter-debug.js | 12 +- .../event-mouseenter/event-mouseenter-min.js | 10 +- .../event-mouseenter/event-mouseenter.js | 12 +- .../event-mousewheel-debug.js | 12 +- .../event-mousewheel/event-mousewheel-min.js | 10 +- .../event-mousewheel/event-mousewheel.js | 12 +- .../event-move/event-move-debug.js | 10 +- .../event-move/event-move-min.js | 10 +- .../build => 3.12.0}/event-move/event-move.js | 10 +- .../event-outside/event-outside-debug.js | 18 +- .../event-outside/event-outside-min.js | 10 +- .../event-outside/event-outside.js | 18 +- .../event-resize/event-resize-debug.js | 12 +- .../event-resize/event-resize-min.js | 10 +- .../event-resize/event-resize.js | 12 +- .../event-simulate/event-simulate-debug.js | 10 +- .../event-simulate/event-simulate-min.js | 10 +- .../event-simulate/event-simulate.js | 10 +- .../event-synthetic/event-synthetic-debug.js | 27 +- .../event-synthetic/event-synthetic-min.js | 8 + .../event-synthetic/event-synthetic.js | 27 +- .../event-tap/event-tap-debug.js | 157 +- lib/yuilib/3.12.0/event-tap/event-tap-min.js | 8 + .../build => 3.12.0}/event-tap/event-tap.js | 157 +- .../event-touch/event-touch-debug.js | 28 +- .../event-touch/event-touch-min.js | 10 +- .../event-touch/event-touch.js | 28 +- .../event-valuechange-debug.js | 46 +- .../event-valuechange-min.js | 8 + .../event-valuechange/event-valuechange.js | 46 +- .../exec-command/exec-command-debug.js | 10 +- .../exec-command/exec-command-min.js | 10 +- .../exec-command/exec-command.js | 10 +- .../features/features-debug.js | 12 +- .../build => 3.12.0}/features/features-min.js | 10 +- .../build => 3.12.0}/features/features.js | 12 +- .../file-flash/file-flash-debug.js | 10 +- .../file-flash/file-flash-min.js | 10 +- .../build => 3.12.0}/file-flash/file-flash.js | 10 +- .../file-html5/file-html5-debug.js | 10 +- .../file-html5/file-html5-min.js | 10 +- .../build => 3.12.0}/file-html5/file-html5.js | 10 +- .../build => 3.12.0}/file/file-debug.js | 10 +- lib/yuilib/3.12.0/file/file-min.js | 8 + .../{3.9.1/build => 3.12.0}/file/file.js | 10 +- .../build => 3.12.0}/frame/frame-debug.js | 10 +- .../build => 3.12.0}/frame/frame-min.js | 10 +- .../{3.9.1/build => 3.12.0}/frame/frame.js | 10 +- .../gesture-simulate-debug.js | 10 +- .../gesture-simulate/gesture-simulate-min.js | 10 +- .../gesture-simulate/gesture-simulate.js | 10 +- .../get-nodejs/get-nodejs-debug.js | 10 +- .../get-nodejs/get-nodejs-min.js | 10 +- .../build => 3.12.0}/get-nodejs/get-nodejs.js | 10 +- .../{3.9.1/build => 3.12.0}/get/get-debug.js | 10 +- .../{3.9.1/build => 3.12.0}/get/get-min.js | 10 +- lib/yuilib/{3.9.1/build => 3.12.0}/get/get.js | 10 +- .../graphics-canvas-default-debug.js | 10 +- .../graphics-canvas-default-min.js | 10 +- .../graphics-canvas-default.js | 10 +- .../graphics-canvas/graphics-canvas-debug.js | 10 +- .../graphics-canvas/graphics-canvas-min.js | 10 +- .../graphics-canvas/graphics-canvas.js | 10 +- .../graphics-group/graphics-group-debug.js | 10 +- .../graphics-group/graphics-group-min.js | 10 +- .../graphics-group/graphics-group.js | 10 +- .../graphics-svg-default-debug.js | 10 +- .../graphics-svg-default-min.js | 10 +- .../graphics-svg-default.js | 10 +- .../graphics-svg/graphics-svg-debug.js | 34 +- .../3.12.0/graphics-svg/graphics-svg-min.js | 12 + .../graphics-svg/graphics-svg.js | 34 +- .../graphics-vml-default-debug.js | 10 +- .../graphics-vml-default-min.js | 10 +- .../graphics-vml-default.js | 10 +- .../graphics-vml/graphics-vml-debug.js | 10 +- .../graphics-vml/graphics-vml-min.js | 10 +- .../graphics-vml/graphics-vml.js | 10 +- .../graphics/graphics-debug.js | 113 +- .../build => 3.12.0}/graphics/graphics-min.js | 10 +- .../build => 3.12.0}/graphics/graphics.js | 113 +- .../handlebars-base/handlebars-base-debug.js | 122 +- .../handlebars-base/handlebars-base-min.js | 13 + .../handlebars-base/handlebars-base.js | 122 +- .../handlebars-compiler-debug.js | 202 +- .../handlebars-compiler-min.js | 18 + .../handlebars-compiler.js | 202 +- .../highlight-accentfold-debug.js | 10 +- .../highlight-accentfold-min.js | 10 +- .../highlight-accentfold.js | 10 +- .../highlight-base/highlight-base-debug.js | 10 +- .../highlight-base/highlight-base-min.js | 10 +- .../highlight-base/highlight-base.js | 10 +- .../history-base/history-base-debug.js | 10 +- .../history-base/history-base-min.js | 10 +- .../history-base/history-base.js | 10 +- .../history-hash-ie/history-hash-ie-debug.js | 10 +- .../history-hash-ie/history-hash-ie-min.js | 10 +- .../history-hash-ie/history-hash-ie.js | 10 +- .../history-hash/history-hash-debug.js | 10 +- .../history-hash/history-hash-min.js | 10 +- .../history-hash/history-hash.js | 10 +- .../history-html5/history-html5-debug.js | 10 +- .../history-html5/history-html5-min.js | 10 +- .../history-html5/history-html5.js | 10 +- .../imageloader/imageloader-debug.js | 10 +- .../imageloader/imageloader-min.js | 10 +- .../imageloader/imageloader.js | 10 +- .../intl-base/intl-base-debug.js | 10 +- .../intl-base/intl-base-min.js | 10 +- .../build => 3.12.0}/intl-base/intl-base.js | 10 +- .../build => 3.12.0}/intl/intl-debug.js | 10 +- .../{3.9.1/build => 3.12.0}/intl/intl-min.js | 10 +- .../{3.9.1/build => 3.12.0}/intl/intl.js | 10 +- .../build => 3.12.0}/io-base/io-base-debug.js | 12 +- .../build => 3.12.0}/io-base/io-base-min.js | 10 +- .../build => 3.12.0}/io-base/io-base.js | 12 +- .../build => 3.12.0}/io-form/io-form-debug.js | 16 +- .../build => 3.12.0}/io-form/io-form-min.js | 10 +- .../build => 3.12.0}/io-form/io-form.js | 16 +- .../io-nodejs/io-nodejs-debug.js | 10 +- .../io-nodejs/io-nodejs-min.js | 10 +- .../build => 3.12.0}/io-nodejs/io-nodejs.js | 10 +- .../io-queue/io-queue-debug.js | 10 +- .../build => 3.12.0}/io-queue/io-queue-min.js | 10 +- .../build => 3.12.0}/io-queue/io-queue.js | 10 +- .../io-upload-iframe-debug.js | 45 +- .../io-upload-iframe/io-upload-iframe-min.js | 8 + .../io-upload-iframe/io-upload-iframe.js | 45 +- .../build => 3.12.0}/io-xdr/io-xdr-debug.js | 10 +- .../build => 3.12.0}/io-xdr/io-xdr-min.js | 10 +- .../{3.9.1/build => 3.12.0}/io-xdr/io-xdr.js | 10 +- lib/yuilib/3.12.0/io-xdr/io.swf | Bin 0 -> 2258 bytes .../json-parse-shim/json-parse-shim-debug.js | 13 +- .../json-parse-shim/json-parse-shim-min.js | 8 + .../json-parse-shim/json-parse-shim.js | 13 +- .../json-parse/json-parse-debug.js | 10 +- .../3.12.0/json-parse/json-parse-min.js | 8 + .../build => 3.12.0}/json-parse/json-parse.js | 10 +- .../json-stringify-shim-debug.js | 10 +- .../json-stringify-shim-min.js | 10 +- .../json-stringify-shim.js | 10 +- .../json-stringify/json-stringify-debug.js | 10 +- .../json-stringify/json-stringify-min.js | 10 +- .../json-stringify/json-stringify.js | 10 +- .../jsonp-url/jsonp-url-debug.js | 20 +- .../jsonp-url/jsonp-url-min.js | 10 +- .../build => 3.12.0}/jsonp-url/jsonp-url.js | 20 +- .../build => 3.12.0}/jsonp/jsonp-debug.js | 10 +- .../build => 3.12.0}/jsonp/jsonp-min.js | 10 +- .../{3.9.1/build => 3.12.0}/jsonp/jsonp.js | 10 +- .../lazy-model-list/lazy-model-list-debug.js | 10 +- .../lazy-model-list/lazy-model-list-min.js | 10 +- .../lazy-model-list/lazy-model-list.js | 10 +- .../loader-base/loader-base-debug.js | 191 +- .../3.12.0/loader-base/loader-base-min.js | 11 + .../loader-base/loader-base.js | 191 +- .../loader-rollup/loader-rollup-debug.js | 10 +- .../loader-rollup/loader-rollup-min.js | 10 +- .../loader-rollup/loader-rollup.js | 10 +- .../loader-yui3/loader-yui3-debug.js | 125 +- .../3.12.0/loader-yui3/loader-yui3-min.js | 13 + .../loader-yui3/loader-yui3.js | 125 +- .../build => 3.12.0}/loader/loader-debug.js | 312 ++- lib/yuilib/3.12.0/loader/loader-min.js | 16 + .../{3.9.1/build => 3.12.0}/loader/loader.js | 312 ++- .../build => 3.12.0}/matrix/matrix-debug.js | 10 +- .../build => 3.12.0}/matrix/matrix-min.js | 12 +- .../{3.9.1/build => 3.12.0}/matrix/matrix.js | 10 +- .../model-list/model-list-debug.js | 64 +- .../model-list/model-list-min.js | 10 +- .../build => 3.12.0}/model-list/model-list.js | 64 +- .../model-sync-rest/model-sync-rest-debug.js | 10 +- .../model-sync-rest/model-sync-rest-min.js | 10 +- .../model-sync-rest/model-sync-rest.js | 10 +- .../build => 3.12.0}/model/model-debug.js | 73 +- lib/yuilib/3.12.0/model/model-min.js | 8 + .../{3.9.1/build => 3.12.0}/model/model.js | 72 +- .../node-base/node-base-debug.js | 39 +- lib/yuilib/3.12.0/node-base/node-base-min.js | 9 + .../build => 3.12.0}/node-base/node-base.js | 39 +- .../node-core/node-core-debug.js | 25 +- lib/yuilib/3.12.0/node-core/node-core-min.js | 9 + .../build => 3.12.0}/node-core/node-core.js | 25 +- .../node-event-delegate-debug.js | 10 +- .../node-event-delegate-min.js | 8 + .../node-event-delegate.js | 10 +- .../node-event-html5-debug.js | 10 +- .../node-event-html5/node-event-html5-min.js | 10 +- .../node-event-html5/node-event-html5.js | 10 +- .../node-event-simulate-debug.js | 10 +- .../node-event-simulate-min.js | 8 + .../node-event-simulate.js | 10 +- .../node-flick/assets/node-flick-core.css | 15 + .../assets/skins/sam/node-flick-skin.css | 8 + .../assets/skins/sam/node-flick.css | 8 + .../node-flick/node-flick-debug.js | 10 +- .../node-flick/node-flick-min.js | 10 +- .../build => 3.12.0}/node-flick/node-flick.js | 10 +- .../node-focusmanager-debug.js | 10 +- .../node-focusmanager-min.js | 10 +- .../node-focusmanager/node-focusmanager.js | 10 +- .../node-load/node-load-debug.js | 10 +- .../node-load/node-load-min.js | 10 +- .../build => 3.12.0}/node-load/node-load.js | 10 +- .../node-menunav/assets/node-menunav-core.css | 8 +- .../horizontal-menu-submenu-indicator.png | Bin 0 -> 157 bytes .../assets/skins/night/node-menunav-skin.css | 8 +- .../assets/skins/night/node-menunav.css | 8 + .../night/vertical-menu-submenu-indicator.png | Bin 0 -> 156 bytes .../sam/horizontal-menu-submenu-indicator.png | Bin .../sam/horizontal-menu-submenu-toggle.png | Bin .../assets/skins/sam/node-menunav-skin.css | 8 +- .../assets/skins/sam/node-menunav.css | 8 + .../sam/vertical-menu-submenu-indicator.png | Bin .../node-menunav/node-menunav-debug.js | 10 +- .../node-menunav/node-menunav-min.js | 10 +- .../node-menunav/node-menunav.js | 10 +- .../node-pluginhost/node-pluginhost-debug.js | 15 +- .../node-pluginhost/node-pluginhost-min.js | 8 + .../node-pluginhost/node-pluginhost.js | 15 +- .../node-screen/node-screen-debug.js | 12 +- .../node-screen/node-screen-min.js | 10 +- .../node-screen/node-screen.js | 12 +- .../node-scroll-info-debug.js | 332 ++- .../node-scroll-info/node-scroll-info-min.js | 8 + .../node-scroll-info/node-scroll-info.js | 332 ++- .../node-style/node-style-debug.js | 10 +- .../node-style/node-style-min.js | 10 +- .../build => 3.12.0}/node-style/node-style.js | 10 +- .../{3.9.1/build => 3.12.0}/oop/oop-debug.js | 138 +- .../{3.9.1/build => 3.12.0}/oop/oop-min.js | 10 +- lib/yuilib/{3.9.1/build => 3.12.0}/oop/oop.js | 138 +- .../overlay/assets/overlay-core.css | 8 +- .../assets/skins/night/overlay-skin.css | 8 +- .../overlay/assets/skins/night/overlay.css | 8 + .../overlay/assets/skins/sam/overlay-skin.css | 7 + .../overlay/assets/skins/sam/overlay.css | 8 +- .../build => 3.12.0}/overlay/overlay-debug.js | 10 +- lib/yuilib/3.12.0/overlay/overlay-min.js | 8 + .../build => 3.12.0}/overlay/overlay.js | 10 +- .../paginator-core/paginator-core-debug.js | 153 ++ .../paginator-core/paginator-core-min.js | 8 + .../3.12.0/paginator-core/paginator-core.js | 153 ++ .../paginator-url/paginator-url-debug.js | 74 + .../3.12.0/paginator-url/paginator-url-min.js | 8 + .../3.12.0/paginator-url/paginator-url.js | 74 + .../3.12.0/paginator/paginator-debug.js | 81 + lib/yuilib/3.12.0/paginator/paginator-min.js | 8 + lib/yuilib/3.12.0/paginator/paginator.js | 81 + .../panel/assets/panel-core.css | 8 +- .../panel/assets/skins/night/panel-skin.css | 8 +- .../3.12.0/panel/assets/skins/night/panel.css | 8 + .../panel/assets/skins/night/sprite_icons.png | Bin 0 -> 176 bytes .../panel/assets/skins/sam/panel-skin.css | 8 +- .../panel}/assets/skins/sam/panel.css | 8 +- .../panel/assets/skins/sam/sprite_icons.png | Bin .../build => 3.12.0}/panel/panel-debug.js | 10 +- .../build => 3.12.0}/panel/panel-min.js | 10 +- .../{3.9.1/build => 3.12.0}/panel/panel.js | 10 +- .../parallel/parallel-debug.js | 10 +- .../build => 3.12.0}/parallel/parallel-min.js | 10 +- .../build => 3.12.0}/parallel/parallel.js | 10 +- .../pjax-base/pjax-base-debug.js | 10 +- .../pjax-base/pjax-base-min.js | 10 +- .../build => 3.12.0}/pjax-base/pjax-base.js | 10 +- .../pjax-content/pjax-content-debug.js | 10 +- .../pjax-content/pjax-content-min.js | 10 +- .../pjax-content/pjax-content.js | 10 +- .../pjax-plugin/pjax-plugin-debug.js | 10 +- .../3.12.0/pjax-plugin/pjax-plugin-min.js | 8 + .../pjax-plugin/pjax-plugin.js | 10 +- .../build => 3.12.0}/pjax/pjax-debug.js | 10 +- .../{3.9.1/build => 3.12.0}/pjax/pjax-min.js | 10 +- .../{3.9.1/build => 3.12.0}/pjax/pjax.js | 10 +- .../build => 3.12.0}/plugin/plugin-debug.js | 66 +- lib/yuilib/3.12.0/plugin/plugin-min.js | 8 + .../{3.9.1/build => 3.12.0}/plugin/plugin.js | 66 +- .../pluginhost-base/pluginhost-base-debug.js | 10 +- .../pluginhost-base/pluginhost-base-min.js | 10 +- .../pluginhost-base/pluginhost-base.js | 10 +- .../pluginhost-config-debug.js | 10 +- .../pluginhost-config-min.js | 10 +- .../pluginhost-config/pluginhost-config.js | 10 +- .../build => 3.12.0}/promise/promise-debug.js | 109 +- .../build => 3.12.0}/promise/promise-min.js | 10 +- .../build => 3.12.0}/promise/promise.js | 109 +- .../querystring-parse-simple-debug.js | 14 +- .../querystring-parse-simple-min.js | 10 +- .../querystring-parse-simple.js | 14 +- .../querystring-parse-debug.js | 10 +- .../querystring-parse-min.js | 10 +- .../querystring-parse/querystring-parse.js | 10 +- .../querystring-stringify-simple-debug.js | 10 +- .../querystring-stringify-simple-min.js | 10 +- .../querystring-stringify-simple.js | 10 +- .../querystring-stringify-debug.js | 10 +- .../querystring-stringify-min.js | 10 +- .../querystring-stringify.js | 10 +- .../queue-promote/queue-promote-debug.js | 10 +- .../queue-promote/queue-promote-min.js | 10 +- .../queue-promote/queue-promote.js | 10 +- .../range-slider/range-slider-debug.js | 10 +- .../3.12.0/range-slider/range-slider-min.js | 8 + .../range-slider/range-slider.js | 10 +- .../recordset-base/recordset-base-debug.js | 10 +- .../recordset-base/recordset-base-min.js | 10 +- .../recordset-base/recordset-base.js | 10 +- .../recordset-filter-debug.js | 10 +- .../recordset-filter/recordset-filter-min.js | 10 +- .../recordset-filter/recordset-filter.js | 10 +- .../recordset-indexer-debug.js | 10 +- .../recordset-indexer-min.js | 10 +- .../recordset-indexer/recordset-indexer.js | 10 +- .../recordset-sort/recordset-sort-debug.js | 10 +- .../recordset-sort/recordset-sort-min.js | 10 +- .../recordset-sort/recordset-sort.js | 10 +- .../resize-base}/assets/resize-base-core.css | 8 +- .../assets/skins/night}/arrows.png | Bin .../assets/skins/night/resize-base-skin.css | 8 +- .../assets/skins/night/resize-base.css | 8 + .../resize-base/assets/skins/sam}/arrows.png | Bin .../assets/skins/sam/resize-base-skin.css | 8 +- .../assets/skins/sam/resize-base.css | 8 +- .../resize-base/resize-base-debug.js | 10 +- .../resize-base/resize-base-min.js | 10 +- .../resize-base/resize-base.js | 10 +- .../resize-constrain-debug.js | 10 +- .../resize-constrain/resize-constrain-min.js | 10 +- .../resize-constrain/resize-constrain.js | 10 +- .../resize-plugin/resize-plugin-debug.js | 10 +- .../resize-plugin/resize-plugin-min.js | 10 +- .../resize-plugin/resize-plugin.js | 10 +- .../resize-proxy/resize-proxy-debug.js | 10 +- .../resize-proxy/resize-proxy-min.js | 10 +- .../resize-proxy/resize-proxy.js | 10 +- .../build => 3.12.0}/router/router-debug.js | 209 +- lib/yuilib/3.12.0/router/router-min.js | 9 + .../{3.9.1/build => 3.12.0}/router/router.js | 206 +- .../scrollview-base-ie-debug.js | 10 +- .../scrollview-base-ie-min.js | 10 +- .../scrollview-base-ie/scrollview-base-ie.js | 10 +- .../assets/scrollview-base-core.css | 8 +- .../skins/night/scrollview-base-skin.css | 7 + .../assets/skins/night/scrollview-base.css | 8 + .../assets/skins/sam/scrollview-base-skin.css | 10 + .../assets/skins/sam/scrollview-base.css | 8 +- .../scrollview-base/scrollview-base-debug.js | 10 +- .../scrollview-base/scrollview-base-min.js | 10 +- .../scrollview-base/scrollview-base.js | 10 +- .../assets/scrollview-list-core.css | 7 + .../skins/night/scrollview-list-skin.css | 8 +- .../assets/skins/night/scrollview-list.css | 8 + .../assets/skins/sam/scrollview-list-skin.css | 8 +- .../assets/skins/sam/scrollview-list.css | 8 +- .../scrollview-list/scrollview-list-debug.js | 10 +- .../scrollview-list/scrollview-list-min.js | 10 +- .../scrollview-list/scrollview-list.js | 10 +- .../scrollview-paginator-debug.js | 40 +- .../scrollview-paginator-min.js | 10 +- .../scrollview-paginator.js | 40 +- .../assets/scrollview-scrollbars-core.css | 8 +- .../night/scrollview-scrollbars-skin.css | 8 +- .../skins/night/scrollview-scrollbars.css | 8 + .../skins/sam/scrollview-scrollbars-skin.css | 8 +- .../skins/sam/scrollview-scrollbars.css | 8 +- .../scrollview-scrollbars-debug.js | 10 +- .../scrollview-scrollbars-min.js | 10 +- .../scrollview-scrollbars.js | 10 +- .../scrollview/scrollview-debug.js | 10 +- .../3.12.0/scrollview/scrollview-min.js | 8 + .../build => 3.12.0}/scrollview/scrollview.js | 10 +- .../selector-css2/selector-css2-debug.js | 39 +- .../3.12.0/selector-css2/selector-css2-min.js | 8 + .../selector-css2/selector-css2.js | 39 +- .../selector-css3/selector-css3-debug.js | 10 +- .../selector-css3/selector-css3-min.js | 10 +- .../selector-css3/selector-css3.js | 10 +- .../selector-native/selector-native-debug.js | 17 +- .../selector-native/selector-native-min.js | 10 +- .../selector-native/selector-native.js | 17 +- lib/yuilib/3.12.0/selector/selector-debug.js | 12 + lib/yuilib/3.12.0/selector/selector-min.js | 8 + lib/yuilib/3.12.0/selector/selector.js | 12 + .../series-area-stacked-debug.js | 10 +- .../series-area-stacked-min.js | 10 +- .../series-area-stacked.js | 10 +- .../series-area/series-area-debug.js | 10 +- .../series-area/series-area-min.js | 10 +- .../series-area/series-area.js | 10 +- .../series-areaspline-stacked-debug.js | 10 +- .../series-areaspline-stacked-min.js | 10 +- .../series-areaspline-stacked.js | 10 +- .../series-areaspline-debug.js | 10 +- .../series-areaspline-min.js | 8 + .../series-areaspline/series-areaspline.js | 10 +- .../series-bar-stacked-debug.js | 10 +- .../series-bar-stacked-min.js | 10 +- .../series-bar-stacked/series-bar-stacked.js | 10 +- .../series-bar/series-bar-debug.js | 10 +- .../series-bar/series-bar-min.js | 10 +- .../build => 3.12.0}/series-bar/series-bar.js | 10 +- .../series-base/series-base-debug.js | 10 +- .../series-base/series-base-min.js | 10 +- .../series-base/series-base.js | 10 +- .../series-candlestick-debug.js | 10 +- .../series-candlestick-min.js | 10 +- .../series-candlestick/series-candlestick.js | 10 +- .../series-cartesian-debug.js | 203 +- .../series-cartesian/series-cartesian-min.js | 9 + .../series-cartesian/series-cartesian.js | 203 +- .../series-column-stacked-debug.js | 10 +- .../series-column-stacked-min.js | 10 +- .../series-column-stacked.js | 10 +- .../series-column/series-column-debug.js | 10 +- .../series-column/series-column-min.js | 10 +- .../series-column/series-column.js | 10 +- .../series-combo-stacked-debug.js | 10 +- .../series-combo-stacked-min.js | 10 +- .../series-combo-stacked.js | 10 +- .../series-combo/series-combo-debug.js | 10 +- .../series-combo/series-combo-min.js | 10 +- .../series-combo/series-combo.js | 10 +- .../series-combospline-stacked-debug.js | 10 +- .../series-combospline-stacked-min.js | 10 +- .../series-combospline-stacked.js | 10 +- .../series-combospline-debug.js | 10 +- .../series-combospline-min.js | 10 +- .../series-combospline/series-combospline.js | 10 +- .../series-curve-util-debug.js | 10 +- .../series-curve-util-min.js | 10 +- .../series-curve-util/series-curve-util.js | 10 +- .../series-fill-util-debug.js | 10 +- .../series-fill-util/series-fill-util-min.js | 10 +- .../series-fill-util/series-fill-util.js | 10 +- .../series-histogram-base-debug.js | 10 +- .../series-histogram-base-min.js | 10 +- .../series-histogram-base.js | 10 +- .../series-line-stacked-debug.js | 10 +- .../series-line-stacked-min.js | 10 +- .../series-line-stacked.js | 10 +- .../series-line-util-debug.js | 10 +- .../series-line-util/series-line-util-min.js | 10 +- .../series-line-util/series-line-util.js | 10 +- .../series-line/series-line-debug.js | 10 +- .../series-line/series-line-min.js | 10 +- .../series-line/series-line.js | 10 +- .../series-marker-stacked-debug.js | 10 +- .../series-marker-stacked-min.js | 10 +- .../series-marker-stacked.js | 10 +- .../series-marker/series-marker-debug.js | 10 +- .../3.12.0/series-marker/series-marker-min.js | 8 + .../series-marker/series-marker.js | 10 +- .../series-ohlc/series-ohlc-debug.js | 10 +- .../series-ohlc/series-ohlc-min.js | 10 +- .../series-ohlc/series-ohlc.js | 10 +- .../series-pie/series-pie-debug.js | 10 +- .../series-pie/series-pie-min.js | 10 +- .../build => 3.12.0}/series-pie/series-pie.js | 10 +- .../series-plot-util-debug.js | 10 +- .../series-plot-util/series-plot-util-min.js | 10 +- .../series-plot-util/series-plot-util.js | 10 +- .../series-range/series-range-debug.js | 10 +- .../series-range/series-range-min.js | 10 +- .../series-range/series-range.js | 10 +- .../series-spline-stacked-debug.js | 10 +- .../series-spline-stacked-min.js | 10 +- .../series-spline-stacked.js | 10 +- .../series-spline/series-spline-debug.js | 10 +- .../3.12.0/series-spline/series-spline-min.js | 8 + .../series-spline/series-spline.js | 10 +- .../series-stacked/series-stacked-debug.js | 10 +- .../series-stacked/series-stacked-min.js | 10 +- .../series-stacked/series-stacked.js | 10 +- .../shim-plugin/shim-plugin-debug.js | 10 +- .../shim-plugin/shim-plugin-min.js | 10 +- .../shim-plugin/shim-plugin.js | 10 +- .../simpleyui/simpleyui-debug.js | 2417 +++++++++++------ lib/yuilib/3.12.0/simpleyui/simpleyui-min.js | 34 + .../build => 3.12.0}/simpleyui/simpleyui.js | 2412 ++++++++++------ .../assets/skins/audio-light/rail-x.png} | Bin 4042 -> 3668 bytes .../assets/skins/audio-light/rail-y.png} | Bin 4042 -> 3664 bytes .../skins/audio-light/slider-base-skin.css | 8 +- .../assets/skins/audio-light/slider-base.css | 8 + .../assets/skins/audio-light/slider-skin.css | 8 +- .../assets/skins/audio-light/thumb-x.png | Bin 0 -> 400 bytes .../assets/skins/audio-light/thumb-y.png | Bin 0 -> 503 bytes .../assets/skins/audio/rail-x.png} | Bin 4042 -> 3662 bytes .../assets/skins/audio/rail-y.png} | Bin 4045 -> 3660 bytes .../assets/skins/audio/slider-base-skin.css | 8 +- .../assets/skins/audio/slider-base.css | 8 + .../assets/skins/audio/slider-skin.css | 8 +- .../assets/skins/audio/thumb-x.png | Bin 0 -> 3742 bytes .../assets/skins/audio/thumb-y.png | Bin 0 -> 414 bytes .../assets/skins/capsule-dark/rail-x-dots.png | Bin 0 -> 3651 bytes .../skins/capsule-dark/rail-x-lines.png | Bin 0 -> 3673 bytes .../assets/skins/capsule-dark/rail-x.png | Bin 0 -> 3710 bytes .../assets/skins/capsule-dark/rail-y-dots.png | Bin 0 -> 3642 bytes .../skins/capsule-dark/rail-y-lines.png | Bin 0 -> 3667 bytes .../assets/skins/capsule-dark/rail-y.png | Bin 0 -> 3673 bytes .../skins/capsule-dark/slider-base-skin.css | 8 +- .../assets/skins/capsule-dark/slider-base.css | 8 + .../assets/skins/capsule-dark/slider-skin.css | 8 +- .../skins/capsule-dark/thumb-x-line.png | Bin 0 -> 3845 bytes .../assets/skins/capsule-dark/thumb-x.png | Bin 0 -> 4166 bytes .../skins/capsule-dark/thumb-y-line.png | Bin 0 -> 518 bytes .../assets/skins/capsule-dark/thumb-y.png | Bin 0 -> 685 bytes .../assets/skins/capsule/rail-x-dots.png | Bin 0 -> 3655 bytes .../assets/skins/capsule/rail-x-lines.png | Bin 0 -> 3669 bytes .../assets/skins/capsule/rail-x.png | Bin 0 -> 3701 bytes .../assets/skins/capsule/rail-y-dots.png | Bin 0 -> 3643 bytes .../assets/skins/capsule/rail-y-lines.png | Bin 0 -> 3643 bytes .../assets/skins/capsule/rail-y.png | Bin 0 -> 3689 bytes .../assets/skins/capsule/slider-base-skin.css | 8 +- .../assets/skins/capsule/slider-base.css | 8 + .../assets/skins/capsule/slider-skin.css | 8 +- .../assets/skins/capsule/thumb-x-line.png | Bin 0 -> 828 bytes .../assets/skins/capsule/thumb-x.png | Bin 0 -> 768 bytes .../assets/skins/capsule/thumb-y-line.png | Bin 0 -> 669 bytes .../assets/skins/capsule/thumb-y-lines.png | Bin 0 -> 3665 bytes .../assets/skins/capsule/thumb-y.png | Bin 0 -> 541 bytes .../assets/skins/night/rail-x-lines.png | Bin 0 -> 301 bytes .../slider-base/assets/skins/night/rail-x.png | Bin 0 -> 273 bytes .../assets/skins/night/rail-y-lines.png | Bin 0 -> 262 bytes .../slider-base/assets/skins/night/rail-y.png | Bin 0 -> 321 bytes .../assets/skins/night/slider-base-skin.css | 8 +- .../assets/skins/night/slider-base.css | 8 + .../assets/skins/night/slider-skin.css | 8 +- .../assets/skins/night/thumb-x.png | Bin 0 -> 467 bytes .../assets/skins/night/thumb-y.png | Bin 0 -> 566 bytes .../assets/skins/round-dark/rail-x.png | Bin 0 -> 3637 bytes .../assets/skins/round-dark/rail-y.png | Bin 0 -> 3635 bytes .../skins/round-dark/slider-base-skin.css | 8 +- .../assets/skins/round-dark/slider-base.css | 8 + .../assets/skins/round-dark/slider-skin.css | 8 +- .../assets/skins/round-dark/thumb-x-grip.png | Bin 0 -> 4365 bytes .../assets/skins/round-dark/thumb-x.png | Bin 0 -> 4333 bytes .../assets/skins/round-dark/thumb-y-grip.png | Bin 0 -> 648 bytes .../assets/skins/round-dark/thumb-y.png | Bin 0 -> 835 bytes .../slider-base/assets/skins/round/rail-x.png | Bin 0 -> 3642 bytes .../slider-base/assets/skins/round/rail-y.png | Bin 0 -> 3637 bytes .../assets/skins/round/slider-base-skin.css | 8 +- .../assets/skins/round/slider-base.css | 8 + .../assets/skins/round/slider-skin.css | 8 +- .../assets/skins/round/thumb-x-grip.png | Bin 0 -> 692 bytes .../assets/skins/round/thumb-x.png | Bin 0 -> 4143 bytes .../assets/skins/round/thumb-y-grip.png | Bin 0 -> 731 bytes .../assets/skins/round/thumb-y.png | Bin 0 -> 890 bytes .../assets/skins/sam-dark/rail-x-lines.png} | Bin 4045 -> 3647 bytes .../assets/skins/sam-dark/rail-x.png | Bin 0 -> 3635 bytes .../assets/skins/sam-dark/rail-y-lines.png | Bin 0 -> 3640 bytes .../assets/skins/sam-dark/rail-y.png | Bin 0 -> 3628 bytes .../skins/sam-dark/slider-base-skin.css | 8 +- .../assets/skins/sam-dark/slider-base.css | 8 + .../assets/skins/sam-dark/slider-skin.css | 8 +- .../assets/skins/sam-dark/thumb-x.png | Bin 0 -> 3853 bytes .../assets/skins/sam-dark/thumb-y.png | Bin 0 -> 602 bytes .../assets/skins/sam/rail-x-lines.png | Bin .../slider-base/assets/skins/sam/rail-x.png | Bin .../assets/skins/sam/rail-y-lines.png | Bin .../slider-base/assets/skins/sam/rail-y.png | Bin .../assets/skins/sam/slider-base-skin.css | 8 +- .../assets/skins/sam/slider-base.css | 8 +- .../assets/skins/sam/slider-skin.css | 8 +- .../slider-base/assets/skins/sam/thumb-x.png | Bin .../slider-base/assets/skins/sam/thumb-y.png | Bin .../slider-base/assets/slider-base-core.css | 8 +- .../slider-base}/assets/slider-core.css | 8 +- .../assets/thumb-x-oblong-dark.png | Bin .../slider-base}/assets/thumb-x-oblong.png | Bin .../assets/thumb-x-oblong2-dark.png | Bin .../slider-base}/assets/thumb-x-oblong2.png | Bin .../assets/thumb-y-oblong-dark.png | Bin .../slider-base}/assets/thumb-y-oblong.png | Bin .../assets/thumb-y-oblong2-dark.png | Bin .../slider-base}/assets/thumb-y-oblong2.png | Bin .../slider-base/slider-base-debug.js | 10 +- .../slider-base/slider-base-min.js | 10 +- .../slider-base/slider-base.js | 10 +- .../slider-value-range-debug.js | 10 +- .../slider-value-range-min.js | 10 +- .../slider-value-range/slider-value-range.js | 10 +- .../sortable-scroll/sortable-scroll-debug.js | 10 +- .../sortable-scroll/sortable-scroll-min.js | 10 +- .../sortable-scroll/sortable-scroll.js | 10 +- .../sortable/sortable-debug.js | 10 +- .../build => 3.12.0}/sortable/sortable-min.js | 10 +- .../build => 3.12.0}/sortable/sortable.js | 10 +- .../stylesheet/stylesheet-debug.js | 10 +- .../stylesheet/stylesheet-min.js | 10 +- .../build => 3.12.0}/stylesheet/stylesheet.js | 10 +- .../substitute/substitute-debug.js | 10 +- .../substitute/substitute-min.js | 10 +- .../build => 3.12.0}/substitute/substitute.js | 10 +- .../{3.9.1/build => 3.12.0}/swf/swf-debug.js | 10 +- .../{3.9.1/build => 3.12.0}/swf/swf-min.js | 10 +- lib/yuilib/{3.9.1/build => 3.12.0}/swf/swf.js | 10 +- .../swfdetect/swfdetect-debug.js | 10 +- .../swfdetect/swfdetect-min.js | 10 +- .../build => 3.12.0}/swfdetect/swfdetect.js | 10 +- .../tabview-base/tabview-base-debug.js | 73 +- .../3.12.0/tabview-base/tabview-base-min.js | 8 + .../tabview-base/tabview-base.js | 73 +- .../tabview-plugin/tabview-plugin-debug.js | 10 +- .../tabview-plugin/tabview-plugin-min.js | 8 + .../tabview-plugin/tabview-plugin.js | 10 +- .../assets/skins/night/tabview-skin.css | 8 +- .../tabview/assets/skins/night/tabview.css | 8 + .../tabview/assets/skins/sam/tabview-skin.css | 8 +- .../tabview/assets/skins/sam/tabview.css | 8 + .../tabview}/assets/tabview-core.css | 8 +- .../build => 3.12.0}/tabview/tabview-debug.js | 101 +- lib/yuilib/3.12.0/tabview/tabview-min.js | 8 + .../build => 3.12.0}/tabview/tabview.js | 101 +- .../template-base/template-base-debug.js | 123 +- .../3.12.0/template-base/template-base-min.js | 8 + .../template-base/template-base.js | 123 +- .../template-micro/template-micro-debug.js | 10 +- .../template-micro/template-micro-min.js | 10 +- .../template-micro/template-micro.js | 10 +- .../assets/skins/sam/test-console-skin.css | 8 +- .../assets/skins/sam/test-console.css | 8 +- .../test-console/assets/test-console-core.css | 8 +- .../test-console/test-console-debug.js | 10 +- .../test-console/test-console-min.js | 10 +- .../test-console/test-console.js | 10 +- .../build => 3.12.0}/test/test-debug.js | 22 +- .../{3.9.1/build => 3.12.0}/test/test-min.js | 14 +- .../{3.9.1/build => 3.12.0}/test/test.js | 22 +- .../text-accentfold/text-accentfold-debug.js | 10 +- .../text-accentfold/text-accentfold-min.js | 10 +- .../text-accentfold/text-accentfold.js | 10 +- .../text-data-accentfold-debug.js | 10 +- .../text-data-accentfold-min.js | 10 +- .../text-data-accentfold.js | 10 +- .../text-data-wordbreak-debug.js | 10 +- .../text-data-wordbreak-min.js | 10 +- .../text-data-wordbreak.js | 10 +- .../text-wordbreak/text-wordbreak-debug.js | 10 +- .../text-wordbreak/text-wordbreak-min.js | 10 +- .../text-wordbreak/text-wordbreak.js | 10 +- .../build => 3.12.0}/timers/timers-debug.js | 10 +- .../build => 3.12.0}/timers/timers-min.js | 10 +- .../{3.9.1/build => 3.12.0}/timers/timers.js | 10 +- .../transition-timer-debug.js | 10 +- .../transition-timer/transition-timer-min.js | 10 +- .../transition-timer/transition-timer.js | 10 +- .../transition/transition-debug.js | 10 +- .../transition/transition-min.js | 10 +- .../build => 3.12.0}/transition/transition.js | 10 +- .../tree-labelable/tree-labelable-debug.js | 10 +- .../tree-labelable/tree-labelable-min.js | 10 +- .../tree-labelable/tree-labelable.js | 10 +- .../tree-lazy/tree-lazy-debug.js | 10 +- .../tree-lazy/tree-lazy-min.js | 10 +- .../build => 3.12.0}/tree-lazy/tree-lazy.js | 10 +- .../tree-node/tree-node-debug.js | 107 +- lib/yuilib/3.12.0/tree-node/tree-node-min.js | 8 + .../build => 3.12.0}/tree-node/tree-node.js | 107 +- .../tree-openable/tree-openable-debug.js | 12 +- .../tree-openable/tree-openable-min.js | 10 +- .../tree-openable/tree-openable.js | 12 +- .../tree-selectable/tree-selectable-debug.js | 10 +- .../tree-selectable/tree-selectable-min.js | 10 +- .../tree-selectable/tree-selectable.js | 10 +- .../tree-sortable/tree-sortable-debug.js | 384 +++ .../3.12.0/tree-sortable/tree-sortable-min.js | 8 + .../3.12.0/tree-sortable/tree-sortable.js | 384 +++ .../build => 3.12.0}/tree/tree-debug.js | 276 +- lib/yuilib/3.12.0/tree/tree-min.js | 8 + .../{3.9.1/build => 3.12.0}/tree/tree.js | 276 +- .../assets/uploader-flash-core.css | 11 + .../uploader-flash/uploader-flash-debug.js | 10 +- .../uploader-flash/uploader-flash-min.js | 10 +- .../uploader-flash/uploader-flash.js | 10 +- .../assets/uploader-flash-core.css | 11 + .../uploader-html5/uploader-html5-debug.js | 10 +- .../uploader-html5/uploader-html5-min.js | 10 +- .../uploader-html5/uploader-html5.js | 10 +- .../assets/uploader-flash-core.css | 11 + .../uploader-queue/uploader-queue-debug.js | 10 +- .../uploader-queue/uploader-queue-min.js | 10 +- .../uploader-queue/uploader-queue.js | 10 +- .../3.12.0/uploader/assets/flashuploader.swf | Bin 0 -> 5150 bytes .../uploader/assets/uploader-flash-core.css | 11 + .../uploader/uploader-debug.js | 10 +- lib/yuilib/3.12.0/uploader/uploader-min.js | 8 + .../build => 3.12.0}/uploader/uploader.js | 10 +- .../view-node-map/view-node-map-debug.js | 10 +- .../view-node-map/view-node-map-min.js | 10 +- .../view-node-map/view-node-map.js | 10 +- .../build => 3.12.0}/view/view-debug.js | 10 +- .../{3.9.1/build => 3.12.0}/view/view-min.js | 10 +- .../{3.9.1/build => 3.12.0}/view/view.js | 10 +- .../widget-anim/widget-anim-debug.js | 10 +- .../widget-anim/widget-anim-min.js | 10 +- .../widget-anim/widget-anim.js | 10 +- .../widget-autohide/widget-autohide-debug.js | 10 +- .../widget-autohide/widget-autohide-min.js | 10 +- .../widget-autohide/widget-autohide.js | 10 +- .../widget-base-ie/widget-base-ie-debug.js | 12 +- .../widget-base-ie/widget-base-ie-min.js | 10 +- .../widget-base-ie/widget-base-ie.js | 12 +- .../assets/skins/night/widget-base-skin.css | 7 + .../assets/skins/night/widget-base.css | 8 + .../assets/skins/sam/widget-base-skin.css | 7 + .../assets/skins/sam/widget-base.css | 8 +- .../widget-base}/assets/widget-base-core.css | 8 +- .../widget-base/widget-base-debug.js | 184 +- .../3.12.0/widget-base/widget-base-min.js | 9 + .../widget-base/widget-base.js | 184 +- .../widget-buttons/widget-buttons-debug.js | 20 +- .../widget-buttons/widget-buttons-min.js | 12 +- .../widget-buttons/widget-buttons.js | 20 +- .../widget-child/widget-child-debug.js | 10 +- .../widget-child/widget-child-min.js | 10 +- .../widget-child/widget-child.js | 10 +- .../widget-htmlparser-debug.js | 66 +- .../widget-htmlparser-min.js | 8 + .../widget-htmlparser/widget-htmlparser.js | 66 +- .../widget-locale/widget-locale-debug.js | 59 +- .../widget-locale/widget-locale-min.js | 10 +- .../widget-locale/widget-locale.js | 51 +- .../skins/night/widget-modality-skin.css | 8 +- .../assets/skins/night/widget-modality.css | 8 + .../assets/skins/sam/widget-modality-skin.css | 8 +- .../assets/skins/sam/widget-modality.css | 8 +- .../assets/widget-modality-core.css | 8 + .../widget-modality/widget-modality-debug.js | 11 +- .../widget-modality/widget-modality-min.js | 10 + .../widget-modality/widget-modality.js | 11 +- .../widget-parent/widget-parent-debug.js | 10 +- .../widget-parent/widget-parent-min.js | 10 +- .../widget-parent/widget-parent.js | 10 +- .../widget-position-align-debug.js | 83 +- .../widget-position-align-min.js | 8 + .../widget-position-align.js | 83 +- .../widget-position-constrain-debug.js | 80 +- .../widget-position-constrain-min.js | 8 + .../widget-position-constrain.js | 80 +- .../widget-position/widget-position-debug.js | 49 +- .../widget-position/widget-position-min.js | 8 + .../widget-position/widget-position.js | 49 +- .../3.12.0/widget-skin/widget-skin-debug.js | 66 + .../3.12.0/widget-skin/widget-skin-min.js | 8 + lib/yuilib/3.12.0/widget-skin/widget-skin.js | 66 + .../assets/skins/night/widget-stack-skin.css | 7 + .../assets/skins/night/widget-stack.css | 8 + .../assets/skins/sam/widget-stack-skin.css | 7 + .../assets/skins/sam/widget-stack.css | 8 +- .../widget-stack/assets/widget-stack-core.css | 8 +- .../widget-stack/widget-stack-debug.js | 30 +- .../3.12.0/widget-stack/widget-stack-min.js | 8 + .../widget-stack/widget-stack.js | 30 +- .../widget-stdmod/widget-stdmod-debug.js | 29 +- .../3.12.0/widget-stdmod/widget-stdmod-min.js | 8 + .../widget-stdmod/widget-stdmod.js | 29 +- .../widget-uievents/widget-uievents-debug.js | 60 +- .../widget-uievents/widget-uievents-min.js | 10 +- .../widget-uievents/widget-uievents.js | 60 +- .../yql-jsonp/yql-jsonp-debug.js | 10 +- .../yql-jsonp/yql-jsonp-min.js | 10 +- .../build => 3.12.0}/yql-jsonp/yql-jsonp.js | 10 +- .../yql-nodejs/yql-nodejs-debug.js | 10 +- .../yql-nodejs/yql-nodejs-min.js | 10 +- .../build => 3.12.0}/yql-nodejs/yql-nodejs.js | 10 +- .../yql-winjs/yql-winjs-debug.js | 10 +- .../yql-winjs/yql-winjs-min.js | 10 +- .../build => 3.12.0}/yql-winjs/yql-winjs.js | 10 +- .../{3.9.1/build => 3.12.0}/yql/yql-debug.js | 10 +- .../{3.9.1/build => 3.12.0}/yql/yql-min.js | 10 +- lib/yuilib/{3.9.1/build => 3.12.0}/yql/yql.js | 10 +- .../yui-base/yui-base-debug.js | 163 +- lib/yuilib/3.12.0/yui-base/yui-base-min.js | 14 + .../build => 3.12.0}/yui-base/yui-base.js | 163 +- .../yui-core/yui-core-debug.js | 132 +- lib/yuilib/3.12.0/yui-core/yui-core-min.js | 11 + .../build => 3.12.0}/yui-core/yui-core.js | 132 +- .../yui-later/yui-later-debug.js | 10 +- .../yui-later/yui-later-min.js | 10 +- .../build => 3.12.0}/yui-later/yui-later.js | 10 +- .../yui-log-nodejs/yui-log-nodejs-debug.js | 10 +- .../yui-log-nodejs/yui-log-nodejs-min.js | 10 +- .../yui-log-nodejs/yui-log-nodejs.js | 10 +- .../build => 3.12.0}/yui-log/yui-log-debug.js | 27 +- lib/yuilib/3.12.0/yui-log/yui-log-min.js | 8 + .../build => 3.12.0}/yui-log/yui-log.js | 27 +- .../yui-nodejs/yui-nodejs-debug.js | 467 ++-- .../3.12.0/yui-nodejs/yui-nodejs-min.js | 22 + .../build => 3.12.0}/yui-nodejs/yui-nodejs.js | 467 ++-- .../yui-throttle/yui-throttle-debug.js | 14 +- .../3.12.0/yui-throttle/yui-throttle-min.js | 10 + .../yui-throttle/yui-throttle.js | 14 +- .../{3.9.1/build => 3.12.0}/yui/yui-debug.js | 465 ++-- lib/yuilib/3.12.0/yui/yui-min.js | 22 + lib/yuilib/{3.9.1/build => 3.12.0}/yui/yui.js | 465 ++-- .../anim-node-plugin/anim-node-plugin-min.js | 2 - lib/yuilib/3.9.1/build/anim-xy/anim-xy-min.js | 2 - .../build/array-invoke/array-invoke-min.js | 2 - .../arraylist-filter/arraylist-filter-min.js | 2 - .../3.9.1/build/arraysort/arraysort-debug.js | 66 - .../3.9.1/build/arraysort/arraysort-min.js | 2 - lib/yuilib/3.9.1/build/arraysort/arraysort.js | 66 - .../skins/sam/datatable-base-deprecated.css | 3 - .../build/assets/skins/sam/datatable-base.css | 2 - .../build/assets/skins/sam/datatable-sort.css | 2 - .../build/assets/skins/sam/dt-arrow-dn.png | Bin 101 -> 0 bytes .../build/assets/skins/sam/dt-arrow-up.png | Bin 99 -> 0 bytes .../build/assets/skins/sam/node-flick.css | 2 - .../build/assets/skins/sam/node-menunav.css | 2 - .../3.9.1/build/assets/skins/sam/skin.css | 29 - .../build/assets/skins/sam/sprite_icons.gif | Bin 142 -> 0 bytes .../3.9.1/build/assets/skins/sam/tabview.css | 2 - .../build/assets/skins/sam/widget-buttons.css | 2 - .../build/async-queue/async-queue-min.js | 2 - .../attribute-complex-min.js | 2 - .../attribute-core/attribute-core-min.js | 2 - .../attribute-observable-min.js | 2 - .../3.9.1/build/axis-base/axis-base-min.js | 2 - .../axis-category-base-min.js | 2 - .../axis-category/axis-category-debug.js | 79 - .../build/axis-category/axis-category-min.js | 2 - .../build/axis-category/axis-category.js | 79 - .../axis-numeric-base-min.js | 2 - .../build/axis-numeric/axis-numeric-min.js | 2 - .../build/axis-stacked/axis-stacked-min.js | 2 - .../3.9.1/build/axis-time/axis-time-debug.js | 54 - .../3.9.1/build/axis-time/axis-time-min.js | 2 - lib/yuilib/3.9.1/build/axis-time/axis-time.js | 54 - .../3.9.1/build/base-base/base-base-min.js | 2 - .../3.9.1/build/base-build/base-build-min.js | 2 - .../3.9.1/build/base-core/base-core-min.js | 2 - .../base-observable/base-observable-min.js | 2 - .../base-pluginhost/base-pluginhost-min.js | 2 - .../build/button-group/button-group-min.js | 2 - .../build/cache-plugin/cache-plugin-min.js | 2 - .../build/calendar-base/calendar-base-min.js | 4 - .../build/calendar-base/lang/calendar-base.js | 2 - .../calendar-base/lang/calendar-base_de.js | 2 - .../calendar-base/lang/calendar-base_en.js | 2 - .../calendar-base/lang/calendar-base_es-AR.js | 2 - .../calendar-base/lang/calendar-base_es.js | 2 - .../calendar-base/lang/calendar-base_fr.js | 2 - .../calendar-base/lang/calendar-base_it.js | 2 - .../calendar-base/lang/calendar-base_ja.js | 2 - .../calendar-base/lang/calendar-base_nb-NO.js | 2 - .../calendar-base/lang/calendar-base_nl.js | 2 - .../calendar-base/lang/calendar-base_pt-BR.js | 2 - .../calendar-base/lang/calendar-base_ru.js | 2 - .../lang/calendar-base_zh-HANT-TW.js | 2 - .../3.9.1/build/calendar/calendar-min.js | 2 - .../3.9.1/build/calendar/lang/calendar.js | 2 - .../3.9.1/build/calendar/lang/calendar_de.js | 2 - .../3.9.1/build/calendar/lang/calendar_en.js | 2 - .../build/calendar/lang/calendar_es-AR.js | 2 - .../3.9.1/build/calendar/lang/calendar_es.js | 2 - .../3.9.1/build/calendar/lang/calendar_fr.js | 2 - .../3.9.1/build/calendar/lang/calendar_it.js | 2 - .../3.9.1/build/calendar/lang/calendar_ja.js | 2 - .../build/calendar/lang/calendar_nb-NO.js | 2 - .../3.9.1/build/calendar/lang/calendar_nl.js | 2 - .../build/calendar/lang/calendar_pt-BR.js | 2 - .../3.9.1/build/calendar/lang/calendar_ru.js | 2 - .../calendar/lang/calendar_zh-HANT-TW.js | 2 - .../calendarnavigator-min.js | 2 - .../build/charts-base/charts-base-min.js | 9 - lib/yuilib/3.9.1/build/charts/charts-debug.js | 25 - lib/yuilib/3.9.1/build/charts/charts-min.js | 2 - lib/yuilib/3.9.1/build/charts/charts.js | 25 - .../assets/slider-base-core.css | 32 - .../clickable-rail/assets/slider-core.css | 32 - .../3.9.1/build/color-base/color-base-min.js | 2 - .../assets/console-filters-core.css | 1 - .../assets/skins/sam/console-filters-skin.css | 28 - .../build/console/assets/console-core.css | 1 - .../console/assets/console-filters-core.css | 1 - .../assets/skins/sam/console-filters.css | 2 - .../3.9.1/build/console/lang/console.js | 2 - .../3.9.1/build/console/lang/console_en.js | 2 - .../3.9.1/build/console/lang/console_es.js | 2 - .../3.9.1/build/console/lang/console_ja.js | 2 - .../cssbase-context/base-context-min.css | 2 - .../build/cssbase-context/base-context.css | 76 - lib/yuilib/3.9.1/build/cssbase/base-min.css | 2 - lib/yuilib/3.9.1/build/cssbase/base.css | 76 - .../cssfonts-context/fonts-context-min.css | 2 - .../build/cssfonts-context/fonts-context.css | 43 - lib/yuilib/3.9.1/build/cssfonts/fonts-min.css | 2 - lib/yuilib/3.9.1/build/cssfonts/fonts.css | 43 - .../grids-context-min.css | 3 - .../grids-context.css | 485 ---- lib/yuilib/3.9.1/build/cssgrids/grids-min.css | 2 - lib/yuilib/3.9.1/build/cssgrids/grids.css | 162 -- .../cssreset-context/reset-context-min.css | 2 - .../build/cssreset-context/reset-context.css | 121 - lib/yuilib/3.9.1/build/cssreset/reset-min.css | 2 - lib/yuilib/3.9.1/build/cssreset/reset.css | 121 - .../assets/datatable-base-deprecated-core.css | 88 - .../night/datatable-base-deprecated-skin.css | 290 -- .../skins/night/datatable-base-deprecated.css | 3 - .../sam/datatable-base-deprecated-skin.css | 238 -- .../skins/sam/datatable-base-deprecated.css | 3 - .../assets/skins/sam/dt-arrow-dn.png | Bin 101 -> 0 bytes .../assets/skins/sam/dt-arrow-up.png | Bin 99 -> 0 bytes .../datatable-base-deprecated-debug.js | 1740 ------------ .../datatable-base-deprecated-min.js | 3 - .../datatable-base-deprecated.js | 1740 ------------ .../assets/datatable-base-core.css | 5 - .../datatable-body/datatable-body-min.js | 2 - .../datatable-datasource-deprecated-debug.js | 199 -- .../datatable-datasource-deprecated-min.js | 2 - .../datatable-datasource-deprecated.js | 199 -- .../skins/sam/datatable-message-skin.css | 6 - .../lang/datatable-message.js | 2 - .../lang/datatable-message_en.js | 2 - .../lang/datatable-message_es.js | 2 - .../lang/datatable-message_fr.js | 2 - .../datatable-scroll-deprecated-debug.js | 749 ----- .../datatable-scroll-deprecated-min.js | 3 - .../datatable-scroll-deprecated.js | 749 ----- .../datatable-sort-deprecated-debug.js | 381 --- .../datatable-sort-deprecated-min.js | 2 - .../datatable-sort-deprecated.js | 381 --- .../lang/datatable-sort-deprecated.js | 2 - .../lang/datatable-sort-deprecated_en.js | 2 - .../datatable-sort/lang/datatable-sort.js | 2 - .../datatable-sort/lang/datatable-sort_en.js | 2 - .../datatype-date-parse-min.js | 2 - lib/yuilib/3.9.1/build/dd-drag/dd-drag-min.js | 3 - .../dd-drop-plugin/dd-drop-plugin-min.js | 2 - lib/yuilib/3.9.1/build/dial/lang/dial.js | 2 - lib/yuilib/3.9.1/build/dial/lang/dial_en.js | 2 - lib/yuilib/3.9.1/build/dial/lang/dial_es.js | 2 - .../3.9.1/build/dom-attrs/dom-attrs-debug.js | 209 -- .../3.9.1/build/dom-attrs/dom-attrs-min.js | 2 - lib/yuilib/3.9.1/build/dom-attrs/dom-attrs.js | 206 -- .../3.9.1/build/dom-class/dom-class-debug.js | 93 - .../3.9.1/build/dom-class/dom-class-min.js | 2 - lib/yuilib/3.9.1/build/dom-class/dom-class.js | 92 - .../build/dom-create/dom-create-debug.js | 280 -- .../3.9.1/build/dom-create/dom-create-min.js | 2 - .../3.9.1/build/dom-create/dom-create.js | 279 -- .../dom-deprecated/dom-deprecated-debug.js | 62 - .../dom-deprecated/dom-deprecated-min.js | 2 - .../build/dom-deprecated/dom-deprecated.js | 62 - .../3.9.1/build/dom-size/dom-size-debug.js | 49 - .../3.9.1/build/dom-size/dom-size-min.js | 2 - lib/yuilib/3.9.1/build/dom-size/dom-size.js | 49 - .../3.9.1/build/editor-br/editor-br-min.js | 2 - .../3.9.1/build/event-base/event-base-min.js | 3 - .../event-custom-base-min.js | 3 - .../event-custom-complex-debug.js | 507 ---- .../event-custom-complex-min.js | 2 - .../event-custom-complex.js | 503 ---- .../event-synthetic/event-synthetic-min.js | 2 - .../3.9.1/build/event-tap/event-tap-min.js | 2 - .../event-valuechange-min.js | 2 - lib/yuilib/3.9.1/build/file/file-min.js | 2 - .../build/graphics-svg/graphics-svg-min.js | 6 - .../handlebars-base/handlebars-base-min.js | 7 - .../handlebars-compiler-min.js | 12 - .../io-upload-iframe/io-upload-iframe-min.js | 2 - lib/yuilib/3.9.1/build/io-xdr/io.swf | Bin 2258 -> 0 bytes .../json-parse-shim/json-parse-shim-min.js | 2 - .../3.9.1/build/json-parse/json-parse-min.js | 2 - .../build/loader-base/loader-base-min.js | 5 - .../build/loader-yui3/loader-yui3-min.js | 6 - lib/yuilib/3.9.1/build/loader/loader-min.js | 10 - lib/yuilib/3.9.1/build/model/model-min.js | 2 - .../3.9.1/build/node-base/node-base-min.js | 3 - .../3.9.1/build/node-core/node-core-min.js | 3 - .../node-deprecated/node-deprecated-debug.js | 126 - .../node-deprecated/node-deprecated-min.js | 2 - .../build/node-deprecated/node-deprecated.js | 120 - .../node-event-delegate-min.js | 2 - .../node-event-simulate-min.js | 2 - .../node-flick/assets/node-flick-core.css | 9 - .../assets/skins/sam/node-flick-skin.css | 2 - .../assets/skins/sam/node-flick.css | 2 - .../node-pluginhost/node-pluginhost-min.js | 2 - .../node-scroll-info/node-scroll-info-min.js | 2 - .../overlay/assets/skins/sam/overlay-skin.css | 1 - lib/yuilib/3.9.1/build/overlay/overlay-min.js | 2 - .../build/pjax-plugin/pjax-plugin-min.js | 2 - lib/yuilib/3.9.1/build/plugin/plugin-min.js | 2 - .../3.9.1/build/profiler/profiler-debug.js | 547 ---- .../3.9.1/build/profiler/profiler-min.js | 2 - lib/yuilib/3.9.1/build/profiler/profiler.js | 547 ---- .../range-slider/assets/slider-base-core.css | 32 - .../range-slider/assets/thumb-x-oblong.png | Bin 961 -> 0 bytes .../range-slider/assets/thumb-x-oblong2.png | Bin 706 -> 0 bytes .../assets/thumb-y-oblong-dark.png | Bin 519 -> 0 bytes .../range-slider/assets/thumb-y-oblong.png | Bin 1023 -> 0 bytes .../assets/thumb-y-oblong2-dark.png | Bin 706 -> 0 bytes .../range-slider/assets/thumb-y-oblong2.png | Bin 746 -> 0 bytes .../build/range-slider/range-slider-min.js | 2 - .../resize-base/assets/resize-base-core.css | 242 -- .../assets/resize-base-core.css | 242 -- .../assets/skins/night/resize-base-skin.css | 47 - .../assets/skins/sam/arrows.png | Bin 258 -> 0 bytes .../assets/skins/sam/resize-base-skin.css | 47 - .../assets/skins/night/arrows.png | Bin 258 -> 0 bytes .../assets/skins/night/resize-base-skin.css | 47 - .../resize-plugin/assets/skins/sam/arrows.png | Bin 258 -> 0 bytes .../assets/skins/sam/resize-base-skin.css | 47 - .../resize-proxy/assets/resize-base-core.css | 242 -- .../assets/skins/night/arrows.png | Bin 258 -> 0 bytes .../assets/skins/night/resize-base-skin.css | 47 - .../resize-proxy/assets/skins/sam/arrows.png | Bin 258 -> 0 bytes .../assets/skins/sam/resize-base-skin.css | 47 - lib/yuilib/3.9.1/build/router/router-min.js | 3 - .../skins/night/scrollview-base-skin.css | 1 - .../assets/skins/sam/scrollview-base-skin.css | 4 - .../assets/scrollview-list-core.css | 1 - .../3.9.1/build/scrollview/scrollview-min.js | 2 - .../build/selector-css2/selector-css2-min.js | 2 - .../3.9.1/build/selector/selector-debug.js | 6 - .../3.9.1/build/selector/selector-min.js | 2 - lib/yuilib/3.9.1/build/selector/selector.js | 6 - .../series-areaspline-min.js | 2 - .../series-cartesian/series-cartesian-min.js | 3 - .../build/series-marker/series-marker-min.js | 2 - .../build/series-spline/series-spline-min.js | 2 - .../3.9.1/build/simpleyui/simpleyui-min.js | 27 - .../build/slider-base/assets/slider-core.css | 32 - .../slider-base/assets/thumb-x-oblong.png | Bin 961 -> 0 bytes .../slider-base/assets/thumb-x-oblong2.png | Bin 706 -> 0 bytes .../assets/thumb-y-oblong-dark.png | Bin 519 -> 0 bytes .../slider-base/assets/thumb-y-oblong.png | Bin 1023 -> 0 bytes .../assets/thumb-y-oblong2-dark.png | Bin 706 -> 0 bytes .../slider-base/assets/thumb-y-oblong2.png | Bin 746 -> 0 bytes .../assets/slider-base-core.css | 32 - .../slider-value-range/assets/slider-core.css | 32 - .../assets/thumb-x-oblong.png | Bin 961 -> 0 bytes .../assets/thumb-x-oblong2-dark.png | Bin 4045 -> 0 bytes .../assets/thumb-x-oblong2.png | Bin 706 -> 0 bytes .../assets/thumb-y-oblong-dark.png | Bin 519 -> 0 bytes .../assets/thumb-y-oblong.png | Bin 1023 -> 0 bytes .../assets/thumb-y-oblong2-dark.png | Bin 706 -> 0 bytes .../assets/thumb-y-oblong2.png | Bin 746 -> 0 bytes .../build/tabview-base/assets/tabview.css | 23 - .../build/tabview-base/tabview-base-min.js | 2 - .../tabview-plugin/assets/tabview-core.css | 43 - .../build/tabview-plugin/assets/tabview.css | 23 - .../tabview-plugin/tabview-plugin-min.js | 2 - .../build/tabview/assets/tabview-core.css | 43 - .../3.9.1/build/tabview/assets/tabview.css | 23 - lib/yuilib/3.9.1/build/tabview/tabview-min.js | 2 - .../build/template-base/template-base-min.js | 2 - .../3.9.1/build/tree-node/tree-node-min.js | 2 - lib/yuilib/3.9.1/build/tree/tree-min.js | 2 - .../uploader-deprecated/assets/uploader.swf | Bin 6681 -> 0 bytes .../uploader-deprecated-debug.js | 597 ---- .../uploader-deprecated-min.js | 2 - .../uploader-deprecated.js | 595 ---- .../assets/uploader-flash-core.css | 5 - .../assets/uploader-flash-core.css | 5 - .../assets/uploader-flash-core.css | 5 - .../build/uploader/assets/flashuploader.swf | Bin 5150 -> 0 bytes .../uploader/assets/uploader-flash-core.css | 5 - .../3.9.1/build/uploader/uploader-min.js | 2 - .../assets/skins/night/widget-base-skin.css | 1 - .../assets/skins/sam/widget-base-skin.css | 1 - .../widget-base/assets/widget-base-core.css | 21 - .../build/widget-base/widget-base-min.js | 3 - .../assets/skins/night/sprite_icons.gif | Bin 142 -> 0 bytes .../skins/night/widget-buttons-skin.css | 4 - .../assets/skins/night/widget-buttons.css | 2 - .../assets/skins/sam/sprite_icons.gif | Bin 142 -> 0 bytes .../assets/skins/sam/widget-buttons-skin.css | 4 - .../assets/skins/sam/widget-buttons.css | 2 - .../assets/widget-buttons-core.css | 16 - .../assets/widget-base-core.css | 21 - .../widget-htmlparser-min.js | 2 - .../widget-locale/assets/widget-base-core.css | 21 - .../assets/widget-modality-core.css | 2 - .../widget-modality/widget-modality-min.js | 4 - .../widget-position-align-min.js | 2 - .../widget-position-constrain-min.js | 2 - .../widget-position/widget-position-min.js | 2 - .../widget-skin/assets/widget-base-core.css | 21 - .../build/widget-skin/widget-skin-debug.js | 44 - .../build/widget-skin/widget-skin-min.js | 2 - .../3.9.1/build/widget-skin/widget-skin.js | 44 - .../assets/skins/night/widget-stack-skin.css | 1 - .../assets/skins/sam/widget-stack-skin.css | 1 - .../build/widget-stack/widget-stack-min.js | 2 - .../build/widget-stdmod/widget-stdmod-min.js | 2 - .../assets/widget-base-core.css | 21 - .../3.9.1/build/yui-base/yui-base-min.js | 7 - .../3.9.1/build/yui-core/yui-core-min.js | 5 - lib/yuilib/3.9.1/build/yui-log/yui-log-min.js | 2 - .../3.9.1/build/yui-nodejs/yui-nodejs-min.js | 15 - .../build/yui-throttle/yui-throttle-min.js | 4 - lib/yuilib/3.9.1/build/yui/yui-min.js | 16 - theme/yui_image.php | 2 +- 1898 files changed, 36510 insertions(+), 24781 deletions(-) rename lib/yuilib/{3.9.1/build => 3.12.0}/align-plugin/align-plugin-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/align-plugin/align-plugin-min.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/align-plugin/align-plugin.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-base/anim-base-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-base/anim-base-min.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-base/anim-base.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-color/anim-color-debug.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-color/anim-color-min.js (76%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-color/anim-color.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-curve/anim-curve-debug.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-curve/anim-curve-min.js (67%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-curve/anim-curve.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-easing/anim-easing-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-easing/anim-easing-min.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-easing/anim-easing.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-node-plugin/anim-node-plugin-debug.js (70%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/anim-node-plugin/anim-node-plugin-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-node-plugin/anim-node-plugin.js (70%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-scroll/anim-scroll-debug.js (82%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-scroll/anim-scroll-min.js (63%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-scroll/anim-scroll.js (82%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-shape/anim-shape-debug.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-shape/anim-shape-min.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-shape/anim-shape.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-xy/anim-xy-debug.js (73%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/anim-xy/anim-xy-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/anim-xy/anim-xy.js (73%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/app-base/app-base-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/app-base/app-base-min.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/app-base/app-base.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/app-content/app-content-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/app-content/app-content-min.js (80%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/app-content/app-content.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/app-transitions-css/app-transitions-css-min.css (81%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/app-transitions-css/app-transitions-css.css (88%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/app-transitions-native/app-transitions-native-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/app-transitions-native/app-transitions-native-min.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/app-transitions-native/app-transitions-native.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/app-transitions/app-transitions-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/app-transitions/app-transitions-min.js (74%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/app-transitions/app-transitions.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/array-extras/array-extras-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/array-extras/array-extras-min.js (88%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/array-extras/array-extras.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/array-invoke/array-invoke-debug.js (84%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/array-invoke/array-invoke-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/array-invoke/array-invoke.js (84%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/arraylist-add/arraylist-add-debug.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/arraylist-add/arraylist-add-min.js (57%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/arraylist-add/arraylist-add.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/arraylist-filter/arraylist-filter-debug.js (86%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/arraylist-filter/arraylist-filter-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/arraylist-filter/arraylist-filter.js (86%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/arraylist/arraylist-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/arraylist/arraylist-min.js (79%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/arraylist/arraylist.js (96%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/arraysort/arraysort-debug.js create mode 100755 lib/yuilib/3.12.0/arraysort/arraysort-min.js create mode 100755 lib/yuilib/3.12.0/arraysort/arraysort.js create mode 100755 lib/yuilib/3.12.0/assets/skin/audio-light/skin.css create mode 100755 lib/yuilib/3.12.0/assets/skin/audio/skin.css create mode 100755 lib/yuilib/3.12.0/assets/skin/capsule-dark/skin.css create mode 100755 lib/yuilib/3.12.0/assets/skin/capsule/skin.css create mode 100755 lib/yuilib/3.12.0/assets/skin/night/skin.css create mode 100755 lib/yuilib/3.12.0/assets/skin/round-dark/skin.css create mode 100755 lib/yuilib/3.12.0/assets/skin/round/skin.css create mode 100755 lib/yuilib/3.12.0/assets/skin/sam-dark/skin.css create mode 100755 lib/yuilib/3.12.0/assets/skin/sam/skin.css rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/audio-light/rail-x.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/audio-light/rail-y.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/audio-light/slider-base.css (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/audio-light/thumb-x.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/audio-light/thumb-y.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/audio/rail-x.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/audio/rail-y.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/audio/slider-base.css (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/audio/thumb-x.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/audio/thumb-y.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule-dark/rail-x-dots.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule-dark/rail-x-lines.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule-dark/rail-x.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule-dark/rail-y-dots.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule-dark/rail-y-lines.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule-dark/rail-y.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule-dark/slider-base.css (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule-dark/thumb-x-line.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule-dark/thumb-x.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule-dark/thumb-y-line.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule-dark/thumb-y.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule/rail-x-dots.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule/rail-x-lines.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule/rail-x.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule/rail-y-dots.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule/rail-y-lines.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule/rail-y.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule/slider-base.css (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule/thumb-x-line.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule/thumb-x.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule/thumb-y-line.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule/thumb-y-lines.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/capsule/thumb-y.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/assets/skins/sam => 3.12.0/assets/skins/night}/arrows.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/autocomplete-list => 3.12.0}/assets/skins/night/autocomplete-list.css (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/calendar-base => 3.12.0}/assets/skins/night/calendar-base.css (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/calendar => 3.12.0}/assets/skins/night/calendar.css (81%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/calendarnavigator => 3.12.0}/assets/skins/night/calendarnavigator.css (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/datatable-base => 3.12.0}/assets/skins/night/datatable-base.css (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/datatable-message => 3.12.0}/assets/skins/night/datatable-message.css (69%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/assets/skins/night/datatable-paginator.css rename lib/yuilib/{3.9.1/build/datatable-scroll => 3.12.0}/assets/skins/night/datatable-scroll.css (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/datatable-sort => 3.12.0}/assets/skins/night/datatable-sort.css (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/dial => 3.12.0}/assets/skins/night/dial.css (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/node-menunav => 3.12.0}/assets/skins/night/horizontal-menu-submenu-indicator.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/node-menunav => 3.12.0}/assets/skins/night/node-menunav.css (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/overlay => 3.12.0}/assets/skins/night/overlay.css (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/panel => 3.12.0}/assets/skins/night/panel.css (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/night/rail-x-lines.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/night/rail-x.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/night/rail-y-lines.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/night/rail-y.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/resize-base => 3.12.0}/assets/skins/night/resize-base.css (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/scrollview-base => 3.12.0}/assets/skins/night/scrollview-base.css (61%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/scrollview-list => 3.12.0}/assets/skins/night/scrollview-list.css (88%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/scrollview-scrollbars => 3.12.0}/assets/skins/night/scrollview-scrollbars.css (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/night/slider-base.css (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/datatable-sort => 3.12.0}/assets/skins/night/sort-arrow-sprite-ie.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/datatable-sort => 3.12.0}/assets/skins/night/sort-arrow-sprite.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/panel => 3.12.0}/assets/skins/night/sprite_icons.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/tabview => 3.12.0}/assets/skins/night/tabview.css (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/night/thumb-x.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/night/thumb-y.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/node-menunav => 3.12.0}/assets/skins/night/vertical-menu-submenu-indicator.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/widget-base => 3.12.0}/assets/skins/night/widget-base.css (69%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/widget-modality => 3.12.0}/assets/skins/night/widget-modality.css (56%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/widget-stack => 3.12.0}/assets/skins/night/widget-stack.css (62%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/round-dark/rail-x.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/round-dark/rail-y.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/round-dark/slider-base.css (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/round-dark/thumb-x-grip.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/round-dark/thumb-x.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/round-dark/thumb-y-grip.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/round-dark/thumb-y.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/round/rail-x.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/round/rail-y.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/round/slider-base.css (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/round/thumb-x-grip.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/round/thumb-x.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/round/thumb-y-grip.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/round/thumb-y.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/sam-dark/rail-x-lines.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/sam-dark/rail-x.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/sam-dark/rail-y-lines.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/sam-dark/rail-y.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/sam-dark/slider-base.css (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/sam-dark/thumb-x.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/sam-dark/thumb-y.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/resize-base/assets/skins/night => 3.12.0/assets/skins/sam}/arrows.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/autocomplete-list => 3.12.0}/assets/skins/sam/autocomplete-list.css (83%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/bg.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/calendar-base => 3.12.0}/assets/skins/sam/calendar-base.css (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/calendar => 3.12.0}/assets/skins/sam/calendar.css (81%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/calendarnavigator => 3.12.0}/assets/skins/sam/calendarnavigator.css (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/console-filters => 3.12.0}/assets/skins/sam/console-filters.css (83%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/console.css (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/datatable-base => 3.12.0}/assets/skins/sam/datatable-base.css (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/datatable-message.css (67%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/assets/skins/sam/datatable-paginator.css rename lib/yuilib/{3.9.1/build/datatable-scroll => 3.12.0}/assets/skins/sam/datatable-scroll.css (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/datatable-sort => 3.12.0}/assets/skins/sam/datatable-sort.css (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/dial.css (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/horizontal-menu-submenu-indicator.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/horizontal-menu-submenu-toggle.png (100%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/assets/skins/sam/node-flick.css rename lib/yuilib/{3.9.1/build/node-menunav => 3.12.0}/assets/skins/sam/node-menunav.css (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/overlay.css (57%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/panel => 3.12.0}/assets/skins/sam/panel.css (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/rail-x-lines.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/rail-x.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/rail-y-lines.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/rail-y.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/resize-base.css (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/scrollview-base => 3.12.0}/assets/skins/sam/scrollview-base.css (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/scrollview-list => 3.12.0}/assets/skins/sam/scrollview-list.css (84%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/scrollview-scrollbars.css (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base => 3.12.0}/assets/skins/sam/slider-base.css (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/sort-arrow-sprite-ie.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/sort-arrow-sprite.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/sprite.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/sprite_icons.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/tabview => 3.12.0}/assets/skins/sam/tabview.css (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/test-console => 3.12.0}/assets/skins/sam/test-console.css (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/thumb-x.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/thumb-y.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/vertical-menu-submenu-indicator.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/warn_error.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/widget-base.css (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/widget-modality => 3.12.0}/assets/skins/sam/widget-modality.css (56%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/assets/skins/sam/widget-stack.css (62%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/async-queue/async-queue-debug.js (91%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/async-queue/async-queue-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/async-queue/async-queue.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/attribute-base/attribute-base-debug.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/attribute-base/attribute-base-min.js (64%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/attribute-base/attribute-base.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/attribute-complex/attribute-complex-debug.js (91%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/attribute-complex/attribute-complex-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/attribute-complex/attribute-complex.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/attribute-core/attribute-core-debug.js (85%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/attribute-core/attribute-core-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/attribute-core/attribute-core.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/attribute-extras/attribute-extras-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/attribute-extras/attribute-extras-min.js (73%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/attribute-extras/attribute-extras.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/attribute-observable/attribute-observable-debug.js (76%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/attribute-observable/attribute-observable-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/attribute-observable/attribute-observable.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-base/autocomplete-base-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-base/autocomplete-base-min.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-base/autocomplete-base.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-filters-accentfold/autocomplete-filters-accentfold-debug.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-filters-accentfold/autocomplete-filters-accentfold-min.js (79%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-filters-accentfold/autocomplete-filters-accentfold.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-filters/autocomplete-filters-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-filters/autocomplete-filters-min.js (86%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-filters/autocomplete-filters.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold-debug.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold-min.js (73%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-highlighters/autocomplete-highlighters-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-highlighters/autocomplete-highlighters-min.js (82%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-highlighters/autocomplete-highlighters.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-list-keys/autocomplete-list-keys-debug.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-list-keys/autocomplete-list-keys-min.js (80%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-list-keys/autocomplete-list-keys.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-list/assets/autocomplete-list-core.css (76%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-list/assets/skins/night/autocomplete-list-skin.css (89%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/autocomplete-list/assets/skins/night/autocomplete-list.css rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-list/assets/skins/sam/autocomplete-list-skin.css (74%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0/autocomplete-list}/assets/skins/sam/autocomplete-list.css (83%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-list/autocomplete-list-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-list/autocomplete-list-min.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-list/autocomplete-list.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-list/lang/autocomplete-list.js (51%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-list/lang/autocomplete-list_en.js (53%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-list/lang/autocomplete-list_es.js (51%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/autocomplete-list/lang/autocomplete-list_hu.js create mode 100755 lib/yuilib/3.12.0/autocomplete-list/lang/autocomplete-list_it.js rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-plugin/autocomplete-plugin-debug.js (82%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-plugin/autocomplete-plugin-min.js (57%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-plugin/autocomplete-plugin.js (82%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-sources/autocomplete-sources-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-sources/autocomplete-sources-min.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/autocomplete-sources/autocomplete-sources.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/axis-base/axis-base-debug.js (89%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/axis-base/axis-base-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/axis-base/axis-base.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/axis-category-base/axis-category-base-debug.js (78%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/axis-category-base/axis-category-base-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/axis-category-base/axis-category-base.js (78%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/axis-category/axis-category-debug.js create mode 100755 lib/yuilib/3.12.0/axis-category/axis-category-min.js create mode 100755 lib/yuilib/3.12.0/axis-category/axis-category.js rename lib/yuilib/{3.9.1/build => 3.12.0}/axis-numeric-base/axis-numeric-base-debug.js (89%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/axis-numeric-base/axis-numeric-base-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/axis-numeric-base/axis-numeric-base.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/axis-numeric/axis-numeric-debug.js (53%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/axis-numeric/axis-numeric-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/axis-numeric/axis-numeric.js (53%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/axis-stacked-base/axis-stacked-base-debug.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/axis-stacked-base/axis-stacked-base-min.js (72%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/axis-stacked-base/axis-stacked-base.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/axis-stacked/axis-stacked-debug.js (70%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/axis-stacked/axis-stacked-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/axis-stacked/axis-stacked.js (70%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/axis-time-base/axis-time-base-debug.js (84%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/axis-time-base/axis-time-base-min.js (73%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/axis-time-base/axis-time-base.js (84%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/axis-time/axis-time-debug.js create mode 100755 lib/yuilib/3.12.0/axis-time/axis-time-min.js create mode 100755 lib/yuilib/3.12.0/axis-time/axis-time.js rename lib/yuilib/{3.9.1/build => 3.12.0}/axis/axis-debug.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/axis/axis-min.js (59%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/axis/axis.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/base-base/base-base-debug.js (59%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/base-base/base-base-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/base-base/base-base.js (59%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/base-build/base-build-debug.js (92%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/base-build/base-build-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/base-build/base-build.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/base-core/base-core-debug.js (62%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/base-core/base-core-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/base-core/base-core.js (63%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/base-observable/base-observable-debug.js (83%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/base-observable/base-observable-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/base-observable/base-observable.js (83%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/base-pluginhost/base-pluginhost-debug.js (82%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/base-pluginhost/base-pluginhost-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/base-pluginhost/base-pluginhost.js (82%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/button-core/button-core-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/button-core/button-core-min.js (87%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/button-core/button-core.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/button-group/button-group-debug.js (92%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/button-group/button-group-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/button-group/button-group.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/button-plugin/button-plugin-debug.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/button-plugin/button-plugin-min.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/button-plugin/button-plugin.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/button/button-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/button/button-min.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/button/button.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cache-base/cache-base-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cache-base/cache-base-min.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cache-base/cache-base.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cache-offline/cache-offline-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cache-offline/cache-offline-min.js (88%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cache-offline/cache-offline.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cache-plugin/cache-plugin-debug.js (84%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/cache-plugin/cache-plugin-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/cache-plugin/cache-plugin.js (84%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/calendar-base/assets/calendar-base-core.css (61%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/calendar-base/assets/skins/night/calendar-base-skin.css (93%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/calendar-base/assets/skins/night/calendar-base.css rename lib/yuilib/{3.9.1/build => 3.12.0}/calendar-base/assets/skins/sam/calendar-base-skin.css (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0/calendar-base}/assets/skins/sam/calendar-base.css (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/calendar-base/calendar-base-debug.js (97%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/calendar-base/calendar-base-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/calendar-base/calendar-base.js (97%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/calendar-base/lang/calendar-base.js create mode 100755 lib/yuilib/3.12.0/calendar-base/lang/calendar-base_de.js create mode 100755 lib/yuilib/3.12.0/calendar-base/lang/calendar-base_en.js create mode 100755 lib/yuilib/3.12.0/calendar-base/lang/calendar-base_es-AR.js create mode 100755 lib/yuilib/3.12.0/calendar-base/lang/calendar-base_es.js create mode 100755 lib/yuilib/3.12.0/calendar-base/lang/calendar-base_fr.js create mode 100755 lib/yuilib/3.12.0/calendar-base/lang/calendar-base_hu.js create mode 100755 lib/yuilib/3.12.0/calendar-base/lang/calendar-base_it.js create mode 100755 lib/yuilib/3.12.0/calendar-base/lang/calendar-base_ja.js create mode 100755 lib/yuilib/3.12.0/calendar-base/lang/calendar-base_nb-NO.js create mode 100755 lib/yuilib/3.12.0/calendar-base/lang/calendar-base_nl.js create mode 100755 lib/yuilib/3.12.0/calendar-base/lang/calendar-base_pt-BR.js create mode 100755 lib/yuilib/3.12.0/calendar-base/lang/calendar-base_ru.js create mode 100755 lib/yuilib/3.12.0/calendar-base/lang/calendar-base_zh-HANT-TW.js create mode 100755 lib/yuilib/3.12.0/calendar-base/lang/calendar-base_zh-Hans-CN.js create mode 100755 lib/yuilib/3.12.0/calendar-base/lang/calendar-base_zh-Hans.js create mode 100755 lib/yuilib/3.12.0/calendar-base/lang/calendar-base_zh-Hant-HK.js create mode 100755 lib/yuilib/3.12.0/calendar-base/lang/calendar-base_zh-Hant.js rename lib/yuilib/{3.9.1/build => 3.12.0}/calendar/assets/calendar-core.css (78%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/calendar/assets/skins/night/calendar-skin.css (57%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/calendar/assets/skins/night/calendar.css rename lib/yuilib/{3.9.1/build => 3.12.0}/calendar/assets/skins/sam/calendar-skin.css (56%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0/calendar}/assets/skins/sam/calendar.css (81%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/calendar/calendar-debug.js (83%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/calendar/calendar-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/calendar/calendar.js (83%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/calendarnavigator/assets/calendarnavigator-core.css (59%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/calendarnavigator/assets/skins/night/calendarnavigator-skin.css (94%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/calendarnavigator/assets/skins/night/calendarnavigator.css rename lib/yuilib/{3.9.1/build => 3.12.0}/calendarnavigator/assets/skins/sam/calendarnavigator-skin.css (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0/calendarnavigator}/assets/skins/sam/calendarnavigator.css (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/calendarnavigator/calendarnavigator-debug.js (92%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/calendarnavigator/calendarnavigator-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/calendarnavigator/calendarnavigator.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/charts-base/charts-base-debug.js (96%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/charts-base/charts-base-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/charts-base/charts-base.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/charts-legend/charts-legend-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/charts-legend/charts-legend-min.js (55%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/charts-legend/charts-legend.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/classnamemanager/classnamemanager-debug.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/classnamemanager/classnamemanager-min.js (52%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/classnamemanager/classnamemanager.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/clickable-rail/clickable-rail-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/clickable-rail/clickable-rail-min.js (87%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/clickable-rail/clickable-rail.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/color-base/color-base-debug.js (81%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/color-base/color-base-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/color-base/color-base.js (81%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/color-harmony/color-harmony-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/color-harmony/color-harmony-min.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/color-harmony/color-harmony.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/color-hsl/color-hsl-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/color-hsl/color-hsl-min.js (87%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/color-hsl/color-hsl.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/color-hsv/color-hsv-debug.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/color-hsv/color-hsv-min.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/color-hsv/color-hsv.js (95%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/console-filters/assets/console-filters-core.css rename lib/yuilib/{3.9.1/build/console => 3.12.0/console-filters}/assets/skins/sam/console-filters-skin.css (84%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0/console-filters}/assets/skins/sam/console-filters.css (83%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/console-filters/console-filters-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/console-filters/console-filters-min.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/console-filters/console-filters.js (98%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/console/assets/console-core.css rename lib/yuilib/{3.9.1/build => 3.12.0}/console/assets/skins/sam/bg.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/console/assets/skins/sam/console-skin.css (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/console/assets/skins/sam/console.css (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/console/assets/skins/sam/warn_error.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/console/assets/warn_error.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/console/console-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/console/console-min.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/console/console.js (98%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/console/lang/console.js create mode 100755 lib/yuilib/3.12.0/console/lang/console_en.js create mode 100755 lib/yuilib/3.12.0/console/lang/console_es.js create mode 100755 lib/yuilib/3.12.0/console/lang/console_hu.js create mode 100755 lib/yuilib/3.12.0/console/lang/console_it.js create mode 100755 lib/yuilib/3.12.0/console/lang/console_ja.js rename lib/yuilib/{3.9.1/build => 3.12.0}/cookie/cookie-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cookie/cookie-min.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cookie/cookie.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/createlink-base/createlink-base-debug.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/createlink-base/createlink-base-min.js (81%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/createlink-base/createlink-base.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssbase-context/cssbase-context-min.css (88%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssbase-context/cssbase-context.css (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssbase/cssbase-min.css (80%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssbase/cssbase.css (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssbutton/cssbutton-min.css (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssbutton/cssbutton.css (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssfonts-context/cssfonts-context-min.css (77%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssfonts-context/cssfonts-context.css (86%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssfonts/cssfonts-min.css (67%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssfonts/cssfonts.css (83%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssgrids-base/cssgrids-base-min.css (69%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssgrids-base/cssgrids-base.css (84%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssgrids-responsive/cssgrids-responsive-min.css (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssgrids-responsive/cssgrids-responsive.css (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssgrids-units/cssgrids-units-min.css (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssgrids-units/cssgrids-units.css (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssgrids/cssgrids-min.css (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssgrids/cssgrids.css (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssnormalize-context/cssnormalize-context-min.css (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssnormalize-context/cssnormalize-context.css (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssnormalize/cssnormalize-min.css (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssnormalize/cssnormalize.css (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssreset-context/cssreset-context-min.css (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssreset-context/cssreset-context.css (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssreset/cssreset-min.css (83%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/cssreset/cssreset.css (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dataschema-array/dataschema-array-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dataschema-array/dataschema-array-min.js (73%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dataschema-array/dataschema-array.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dataschema-base/dataschema-base-debug.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dataschema-base/dataschema-base-min.js (57%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dataschema-base/dataschema-base.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dataschema-json/dataschema-json-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dataschema-json/dataschema-json-min.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dataschema-json/dataschema-json.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dataschema-text/dataschema-text-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dataschema-text/dataschema-text-min.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dataschema-text/dataschema-text.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dataschema-xml/dataschema-xml-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dataschema-xml/dataschema-xml-min.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dataschema-xml/dataschema-xml.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-arrayschema/datasource-arrayschema-debug.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-arrayschema/datasource-arrayschema-min.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-arrayschema/datasource-arrayschema.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-cache/datasource-cache-debug.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-cache/datasource-cache-min.js (79%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-cache/datasource-cache.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-function/datasource-function-debug.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-function/datasource-function-min.js (69%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-function/datasource-function.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-get/datasource-get-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-get/datasource-get-min.js (84%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-get/datasource-get.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-io/datasource-io-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-io/datasource-io-min.js (83%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-io/datasource-io.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-jsonschema/datasource-jsonschema-debug.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-jsonschema/datasource-jsonschema-min.js (69%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-jsonschema/datasource-jsonschema.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-local/datasource-local-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-local/datasource-local-min.js (86%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-local/datasource-local.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-polling/datasource-polling-debug.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-polling/datasource-polling-min.js (67%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-polling/datasource-polling.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-textschema/datasource-textschema-debug.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-textschema/datasource-textschema-min.js (70%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-textschema/datasource-textschema.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-xmlschema/datasource-xmlschema-debug.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-xmlschema/datasource-xmlschema-min.js (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datasource-xmlschema/datasource-xmlschema.js (91%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/datatable-base/assets/datatable-base-core.css rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-base/assets/skins/night/datatable-base-skin.css (92%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/datatable-base/assets/skins/night/datatable-base.css rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-base/assets/skins/sam/datatable-base-skin.css (93%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/datatable-base/assets/skins/sam/datatable-base.css rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-base/datatable-base-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-base/datatable-base-min.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-base/datatable-base.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-body/datatable-body-debug.js (74%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/datatable-body/datatable-body-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-body/datatable-body.js (74%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-column-widths/datatable-column-widths-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-column-widths/datatable-column-widths-min.js (88%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-column-widths/datatable-column-widths.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-core/datatable-core-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-core/datatable-core-min.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-core/datatable-core.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-datasource/datatable-datasource-debug.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-datasource/datatable-datasource-min.js (77%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-datasource/datatable-datasource.js (95%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/datatable-foot/datatable-foot-debug.js create mode 100755 lib/yuilib/3.12.0/datatable-foot/datatable-foot-min.js create mode 100755 lib/yuilib/3.12.0/datatable-foot/datatable-foot.js rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-formatters/datatable-formatters-debug.js (86%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-formatters/datatable-formatters-min.js (77%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-formatters/datatable-formatters.js (86%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-head/datatable-head-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-head/datatable-head-min.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-head/datatable-head.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-message/assets/datatable-message-core.css (52%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-message/assets/skins/night/datatable-message-skin.css (53%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/datatable-message/assets/skins/night/datatable-message.css create mode 100755 lib/yuilib/3.12.0/datatable-message/assets/skins/sam/datatable-message-skin.css rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-message/assets/skins/sam/datatable-message.css (67%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-message/datatable-message-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-message/datatable-message-min.js (57%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-message/datatable-message.js (96%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/datatable-message/lang/datatable-message.js create mode 100755 lib/yuilib/3.12.0/datatable-message/lang/datatable-message_en.js create mode 100755 lib/yuilib/3.12.0/datatable-message/lang/datatable-message_es.js create mode 100755 lib/yuilib/3.12.0/datatable-message/lang/datatable-message_fr.js create mode 100755 lib/yuilib/3.12.0/datatable-message/lang/datatable-message_hu.js create mode 100755 lib/yuilib/3.12.0/datatable-message/lang/datatable-message_it.js rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-mutable/datatable-mutable-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-mutable/datatable-mutable-min.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-mutable/datatable-mutable.js (99%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates-debug.js create mode 100755 lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates-min.js create mode 100755 lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates.js create mode 100755 lib/yuilib/3.12.0/datatable-paginator/assets/datatable-paginator-core.css create mode 100755 lib/yuilib/3.12.0/datatable-paginator/assets/skins/night/datatable-paginator-skin.css create mode 100755 lib/yuilib/3.12.0/datatable-paginator/assets/skins/night/datatable-paginator.css create mode 100755 lib/yuilib/3.12.0/datatable-paginator/assets/skins/sam/datatable-paginator-skin.css create mode 100755 lib/yuilib/3.12.0/datatable-paginator/assets/skins/sam/datatable-paginator.css create mode 100755 lib/yuilib/3.12.0/datatable-paginator/datatable-paginator-debug.js create mode 100755 lib/yuilib/3.12.0/datatable-paginator/datatable-paginator-min.js create mode 100755 lib/yuilib/3.12.0/datatable-paginator/datatable-paginator.js create mode 100755 lib/yuilib/3.12.0/datatable-paginator/lang/datatable-paginator.js create mode 100755 lib/yuilib/3.12.0/datatable-paginator/lang/datatable-paginator_en.js rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-scroll/assets/datatable-scroll-core.css (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-scroll/assets/skins/night/datatable-scroll-skin.css (83%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/datatable-scroll/assets/skins/night/datatable-scroll.css rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-scroll/assets/skins/sam/datatable-scroll-skin.css (81%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0/datatable-scroll}/assets/skins/sam/datatable-scroll.css (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-scroll/datatable-scroll-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-scroll/datatable-scroll-min.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-scroll/datatable-scroll.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-sort/assets/datatable-sort-core.css (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-sort/assets/skins/night/datatable-sort-skin.css (94%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/datatable-sort/assets/skins/night/datatable-sort.css create mode 100755 lib/yuilib/3.12.0/datatable-sort/assets/skins/night/sort-arrow-sprite-ie.png create mode 100755 lib/yuilib/3.12.0/datatable-sort/assets/skins/night/sort-arrow-sprite.png rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-sort/assets/skins/sam/datatable-sort-skin.css (89%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/datatable-sort/assets/skins/sam/datatable-sort.css rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-sort/assets/skins/sam/sort-arrow-sprite-ie.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-sort/assets/skins/sam/sort-arrow-sprite.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-sort/datatable-sort-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-sort/datatable-sort-min.js (51%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-sort/datatable-sort.js (97%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/datatable-sort/lang/datatable-sort.js create mode 100755 lib/yuilib/3.12.0/datatable-sort/lang/datatable-sort_en.js rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-sort/lang/datatable-sort_es.js (54%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-sort/lang/datatable-sort_fr.js (51%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/datatable-sort/lang/datatable-sort_hu.js rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-table/datatable-table-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-table/datatable-table-min.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatable-table/datatable-table.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/datatype-date-format-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/datatype-date-format-min.js (78%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/datatype-date-format.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format.js (70%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_ar-JO.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_ar.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_ca-ES.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_ca.js (76%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_da-DK.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_da.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_de-AT.js (74%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_de-DE.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_de.js (76%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_el-GR.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_el.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_en-AU.js (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_en-CA.js (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_en-GB.js (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_en-IE.js (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_en-IN.js (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_en-JO.js (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_en-MY.js (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_en-NZ.js (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_en-PH.js (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_en-SG.js (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_en-US.js (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_en.js (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_es-AR.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_es-BO.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_es-CL.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_es-CO.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_es-EC.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_es-ES.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_es-MX.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_es-PE.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_es-PY.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_es-US.js (74%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_es-UY.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_es-VE.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_es.js (76%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_fi-FI.js (78%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_fi.js (79%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_fr-BE.js (72%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_fr-CA.js (72%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_fr-FR.js (73%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_fr.js (74%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_hi-IN.js (88%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_hi.js (89%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_hu.js rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_id-ID.js (70%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_id.js (70%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_it-IT.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_it.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_ja-JP.js (78%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_ja.js (78%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_ko-KR.js (77%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_ko.js (78%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_ms-MY.js (70%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_ms.js (71%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_nb-NO.js (74%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_nb.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_nl-BE.js (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_nl-NL.js (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_nl.js (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_pl-PL.js (72%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_pl.js (73%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_pt-BR.js (72%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_pt.js (73%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_ro-RO.js (74%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_ro.js (74%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_ru-RU.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_ru.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_sv-SE.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_sv.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_th-TH.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_th.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_tr-TR.js (73%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_tr.js (73%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_vi-VN.js (77%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_vi.js (77%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_zh-Hans-CN.js (81%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_zh-Hans.js (81%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_zh-Hant-HK.js (79%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_zh-Hant-TW.js (81%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-format/lang/datatype-date-format_zh-Hant.js (81%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-math/datatype-date-math-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-math/datatype-date-math-min.js (87%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-math/datatype-date-math.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-parse/datatype-date-parse-debug.js (84%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/datatype-date-parse/datatype-date-parse-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-date-parse/datatype-date-parse.js (82%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-number-format/datatype-number-format-debug.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-number-format/datatype-number-format-min.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-number-format/datatype-number-format.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-number-parse/datatype-number-parse-debug.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-number-parse/datatype-number-parse-min.js (61%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-number-parse/datatype-number-parse.js (84%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-xml-format/datatype-xml-format-debug.js (88%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-xml-format/datatype-xml-format-min.js (62%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-xml-format/datatype-xml-format.js (87%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-xml-parse/datatype-xml-parse-debug.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-xml-parse/datatype-xml-parse-min.js (76%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/datatype-xml-parse/datatype-xml-parse.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-constrain/dd-constrain-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-constrain/dd-constrain-min.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-constrain/dd-constrain.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-ddm-base/dd-ddm-base-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-ddm-base/dd-ddm-base-min.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-ddm-base/dd-ddm-base.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-ddm-drop/dd-ddm-drop-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-ddm-drop/dd-ddm-drop-min.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-ddm-drop/dd-ddm-drop.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-ddm/dd-ddm-debug.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-ddm/dd-ddm-min.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-ddm/dd-ddm.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-delegate/dd-delegate-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-delegate/dd-delegate-min.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-delegate/dd-delegate.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-drag/dd-drag-debug.js (99%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/dd-drag/dd-drag-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-drag/dd-drag.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-drop-plugin/dd-drop-plugin-debug.js (84%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/dd-drop-plugin/dd-drop-plugin-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-drop-plugin/dd-drop-plugin.js (84%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-drop/dd-drop-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-drop/dd-drop-min.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-drop/dd-drop.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-gestures/dd-gestures-debug.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-gestures/dd-gestures-min.js (74%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-gestures/dd-gestures.js (88%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-plugin/dd-plugin-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-plugin/dd-plugin-min.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-plugin/dd-plugin.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-proxy/dd-proxy-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-proxy/dd-proxy-min.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-proxy/dd-proxy.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-scroll/dd-scroll-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-scroll/dd-scroll-min.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dd-scroll/dd-scroll.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dial/assets/dial-core.css (87%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dial/assets/skins/night/dial-skin.css (94%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/dial/assets/skins/night/dial.css rename lib/yuilib/{3.9.1/build => 3.12.0}/dial/assets/skins/sam/dial-skin.css (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dial/assets/skins/sam/dial.css (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dial/dial-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dial/dial-min.js (52%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dial/dial.js (97%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/dial/lang/dial.js create mode 100755 lib/yuilib/3.12.0/dial/lang/dial_en.js create mode 100755 lib/yuilib/3.12.0/dial/lang/dial_es.js create mode 100755 lib/yuilib/3.12.0/dial/lang/dial_hu.js rename lib/yuilib/{3.9.1/build => 3.12.0}/dom-base/dom-base-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dom-base/dom-base-min.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dom-base/dom-base.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dom-core/dom-core-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dom-core/dom-core-min.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dom-core/dom-core.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dom-screen/dom-screen-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dom-screen/dom-screen-min.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dom-screen/dom-screen.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dom-style-ie/dom-style-ie-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dom-style-ie/dom-style-ie-min.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dom-style-ie/dom-style-ie.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dom-style/dom-style-debug.js (80%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dom-style/dom-style-min.js (67%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dom-style/dom-style.js (80%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dump/dump-debug.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dump/dump-min.js (78%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/dump/dump.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-base/editor-base-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-base/editor-base-min.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-base/editor-base.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-bidi/editor-bidi-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-bidi/editor-bidi-min.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-bidi/editor-bidi.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-br/editor-br-debug.js (93%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/editor-br/editor-br-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-br/editor-br.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-lists/editor-lists-debug.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-lists/editor-lists-min.js (83%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-lists/editor-lists.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-para-base/editor-para-base-debug.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-para-base/editor-para-base-min.js (84%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-para-base/editor-para-base.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-para-ie/editor-para-ie-debug.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-para-ie/editor-para-ie-min.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-para-ie/editor-para-ie.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-para/editor-para-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-para/editor-para-min.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-para/editor-para.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-selection/editor-selection-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-selection/editor-selection-min.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-selection/editor-selection.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-tab/editor-tab-debug.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-tab/editor-tab-min.js (72%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/editor-tab/editor-tab.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/escape/escape-debug.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/escape/escape-min.js (61%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/escape/escape.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-base-ie/event-base-ie-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-base-ie/event-base-ie-min.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-base-ie/event-base-ie.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-base/event-base-debug.js (97%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/event-base/event-base-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/event-base/event-base.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-contextmenu/event-contextmenu-debug.js (87%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-contextmenu/event-contextmenu-min.js (83%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-contextmenu/event-contextmenu.js (87%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-custom-base/event-custom-base-debug.js (84%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/event-custom-base/event-custom-base-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/event-custom-base/event-custom-base.js (84%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/event-custom-complex/event-custom-complex-debug.js create mode 100755 lib/yuilib/3.12.0/event-custom-complex/event-custom-complex-min.js create mode 100755 lib/yuilib/3.12.0/event-custom-complex/event-custom-complex.js rename lib/yuilib/{3.9.1/build => 3.12.0}/event-delegate/event-delegate-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-delegate/event-delegate-min.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-delegate/event-delegate.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-flick/event-flick-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-flick/event-flick-min.js (86%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-flick/event-flick.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-focus/event-focus-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-focus/event-focus-min.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-focus/event-focus.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-hover/event-hover-debug.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-hover/event-hover-min.js (71%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-hover/event-hover.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-key/event-key-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-key/event-key-min.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-key/event-key.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-mouseenter/event-mouseenter-debug.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-mouseenter/event-mouseenter-min.js (86%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-mouseenter/event-mouseenter.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-mousewheel/event-mousewheel-debug.js (82%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-mousewheel/event-mousewheel-min.js (60%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-mousewheel/event-mousewheel.js (82%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-move/event-move-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-move/event-move-min.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-move/event-move.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-outside/event-outside-debug.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-outside/event-outside-min.js (77%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-outside/event-outside.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-resize/event-resize-debug.js (87%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-resize/event-resize-min.js (61%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-resize/event-resize.js (87%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-simulate/event-simulate-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-simulate/event-simulate-min.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-simulate/event-simulate.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-synthetic/event-synthetic-debug.js (97%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/event-synthetic/event-synthetic-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/event-synthetic/event-synthetic.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-tap/event-tap-debug.js (54%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/event-tap/event-tap-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/event-tap/event-tap.js (54%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-touch/event-touch-debug.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-touch/event-touch-min.js (62%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-touch/event-touch.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/event-valuechange/event-valuechange-debug.js (91%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/event-valuechange/event-valuechange-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/event-valuechange/event-valuechange.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/exec-command/exec-command-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/exec-command/exec-command-min.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/exec-command/exec-command.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/features/features-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/features/features-min.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/features/features.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/file-flash/file-flash-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/file-flash/file-flash-min.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/file-flash/file-flash.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/file-html5/file-html5-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/file-html5/file-html5-min.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/file-html5/file-html5.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/file/file-debug.js (79%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/file/file-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/file/file.js (79%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/frame/frame-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/frame/frame-min.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/frame/frame.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/gesture-simulate/gesture-simulate-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/gesture-simulate/gesture-simulate-min.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/gesture-simulate/gesture-simulate.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/get-nodejs/get-nodejs-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/get-nodejs/get-nodejs-min.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/get-nodejs/get-nodejs.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/get/get-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/get/get-min.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/get/get.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics-canvas-default/graphics-canvas-default-debug.js (60%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics-canvas-default/graphics-canvas-default-min.js (52%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics-canvas-default/graphics-canvas-default.js (60%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics-canvas/graphics-canvas-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics-canvas/graphics-canvas-min.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics-canvas/graphics-canvas.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics-group/graphics-group-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics-group/graphics-group-min.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics-group/graphics-group.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics-svg-default/graphics-svg-default-debug.js (58%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics-svg-default/graphics-svg-default-min.js (55%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics-svg-default/graphics-svg-default.js (58%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics-svg/graphics-svg-debug.js (99%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/graphics-svg/graphics-svg-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics-svg/graphics-svg.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics-vml-default/graphics-vml-default-debug.js (58%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics-vml-default/graphics-vml-default-min.js (55%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics-vml-default/graphics-vml-default.js (58%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics-vml/graphics-vml-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics-vml/graphics-vml-min.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics-vml/graphics-vml.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics/graphics-debug.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics/graphics-min.js (88%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/graphics/graphics.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/handlebars-base/handlebars-base-debug.js (80%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/handlebars-base/handlebars-base-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/handlebars-base/handlebars-base.js (80%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/handlebars-compiler/handlebars-compiler-debug.js (85%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/handlebars-compiler/handlebars-compiler-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/handlebars-compiler/handlebars-compiler.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/highlight-accentfold/highlight-accentfold-debug.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/highlight-accentfold/highlight-accentfold-min.js (74%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/highlight-accentfold/highlight-accentfold.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/highlight-base/highlight-base-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/highlight-base/highlight-base-min.js (82%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/highlight-base/highlight-base.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/history-base/history-base-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/history-base/history-base-min.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/history-base/history-base.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/history-hash-ie/history-hash-ie-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/history-hash-ie/history-hash-ie-min.js (79%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/history-hash-ie/history-hash-ie.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/history-hash/history-hash-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/history-hash/history-hash-min.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/history-hash/history-hash.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/history-html5/history-html5-debug.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/history-html5/history-html5-min.js (78%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/history-html5/history-html5.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/imageloader/imageloader-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/imageloader/imageloader-min.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/imageloader/imageloader.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/intl-base/intl-base-debug.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/intl-base/intl-base-min.js (69%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/intl-base/intl-base.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/intl/intl-debug.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/intl/intl-min.js (77%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/intl/intl.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/io-base/io-base-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/io-base/io-base-min.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/io-base/io-base.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/io-form/io-form-debug.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/io-form/io-form-min.js (84%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/io-form/io-form.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/io-nodejs/io-nodejs-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/io-nodejs/io-nodejs-min.js (86%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/io-nodejs/io-nodejs.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/io-queue/io-queue-debug.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/io-queue/io-queue-min.js (83%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/io-queue/io-queue.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/io-upload-iframe/io-upload-iframe-debug.js (90%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/io-upload-iframe/io-upload-iframe-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/io-upload-iframe/io-upload-iframe.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/io-xdr/io-xdr-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/io-xdr/io-xdr-min.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/io-xdr/io-xdr.js (97%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/io-xdr/io.swf rename lib/yuilib/{3.9.1/build => 3.12.0}/json-parse-shim/json-parse-shim-debug.js (96%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/json-parse-shim/json-parse-shim-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/json-parse-shim/json-parse-shim.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/json-parse/json-parse-debug.js (55%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/json-parse/json-parse-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/json-parse/json-parse.js (55%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/json-stringify-shim/json-stringify-shim-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/json-stringify-shim/json-stringify-shim-min.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/json-stringify-shim/json-stringify-shim.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/json-stringify/json-stringify-debug.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/json-stringify/json-stringify-min.js (67%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/json-stringify/json-stringify.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/jsonp-url/jsonp-url-debug.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/jsonp-url/jsonp-url-min.js (62%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/jsonp-url/jsonp-url.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/jsonp/jsonp-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/jsonp/jsonp-min.js (87%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/jsonp/jsonp.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/lazy-model-list/lazy-model-list-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/lazy-model-list/lazy-model-list-min.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/lazy-model-list/lazy-model-list.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/loader-base/loader-base-debug.js (96%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/loader-base/loader-base-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/loader-base/loader-base.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/loader-rollup/loader-rollup-debug.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/loader-rollup/loader-rollup-min.js (76%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/loader-rollup/loader-rollup.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/loader-yui3/loader-yui3-debug.js (97%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/loader-yui3/loader-yui3-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/loader-yui3/loader-yui3.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/loader/loader-debug.js (96%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/loader/loader-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/loader/loader.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/matrix/matrix-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/matrix/matrix-min.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/matrix/matrix.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/model-list/model-list-debug.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/model-list/model-list-min.js (55%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/model-list/model-list.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/model-sync-rest/model-sync-rest-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/model-sync-rest/model-sync-rest-min.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/model-sync-rest/model-sync-rest.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/model/model-debug.js (93%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/model/model-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/model/model.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-base/node-base-debug.js (95%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/node-base/node-base-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/node-base/node-base.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-core/node-core-debug.js (98%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/node-core/node-core-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/node-core/node-core.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-event-delegate/node-event-delegate-debug.js (92%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/node-event-delegate/node-event-delegate-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/node-event-delegate/node-event-delegate.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-event-html5/node-event-html5-debug.js (81%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-event-html5/node-event-html5-min.js (65%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-event-html5/node-event-html5.js (81%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-event-simulate/node-event-simulate-debug.js (97%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/node-event-simulate/node-event-simulate-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/node-event-simulate/node-event-simulate.js (97%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/node-flick/assets/node-flick-core.css create mode 100755 lib/yuilib/3.12.0/node-flick/assets/skins/sam/node-flick-skin.css create mode 100755 lib/yuilib/3.12.0/node-flick/assets/skins/sam/node-flick.css rename lib/yuilib/{3.9.1/build => 3.12.0}/node-flick/node-flick-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-flick/node-flick-min.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-flick/node-flick.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-focusmanager/node-focusmanager-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-focusmanager/node-focusmanager-min.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-focusmanager/node-focusmanager.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-load/node-load-debug.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-load/node-load-min.js (65%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-load/node-load.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-menunav/assets/node-menunav-core.css (95%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/node-menunav/assets/skins/night/horizontal-menu-submenu-indicator.png rename lib/yuilib/{3.9.1/build => 3.12.0}/node-menunav/assets/skins/night/node-menunav-skin.css (97%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/node-menunav/assets/skins/night/node-menunav.css create mode 100755 lib/yuilib/3.12.0/node-menunav/assets/skins/night/vertical-menu-submenu-indicator.png rename lib/yuilib/{3.9.1/build => 3.12.0}/node-menunav/assets/skins/sam/horizontal-menu-submenu-indicator.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-menunav/assets/skins/sam/horizontal-menu-submenu-toggle.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-menunav/assets/skins/sam/node-menunav-skin.css (97%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/node-menunav/assets/skins/sam/node-menunav.css rename lib/yuilib/{3.9.1/build => 3.12.0}/node-menunav/assets/skins/sam/vertical-menu-submenu-indicator.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-menunav/node-menunav-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-menunav/node-menunav-min.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-menunav/node-menunav.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-pluginhost/node-pluginhost-debug.js (88%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/node-pluginhost/node-pluginhost-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/node-pluginhost/node-pluginhost.js (88%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-screen/node-screen-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-screen/node-screen-min.js (86%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-screen/node-screen.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-scroll-info/node-scroll-info-debug.js (67%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/node-scroll-info/node-scroll-info-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/node-scroll-info/node-scroll-info.js (67%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-style/node-style-debug.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-style/node-style-min.js (60%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/node-style/node-style.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/oop/oop-debug.js (76%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/oop/oop-min.js (52%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/oop/oop.js (76%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/overlay/assets/overlay-core.css (54%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/overlay/assets/skins/night/overlay-skin.css (96%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/overlay/assets/skins/night/overlay.css create mode 100755 lib/yuilib/3.12.0/overlay/assets/skins/sam/overlay-skin.css rename lib/yuilib/{3.9.1/build => 3.12.0}/overlay/assets/skins/sam/overlay.css (57%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/overlay/overlay-debug.js (88%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/overlay/overlay-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/overlay/overlay.js (88%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/paginator-core/paginator-core-debug.js create mode 100755 lib/yuilib/3.12.0/paginator-core/paginator-core-min.js create mode 100755 lib/yuilib/3.12.0/paginator-core/paginator-core.js create mode 100755 lib/yuilib/3.12.0/paginator-url/paginator-url-debug.js create mode 100755 lib/yuilib/3.12.0/paginator-url/paginator-url-min.js create mode 100755 lib/yuilib/3.12.0/paginator-url/paginator-url.js create mode 100755 lib/yuilib/3.12.0/paginator/paginator-debug.js create mode 100755 lib/yuilib/3.12.0/paginator/paginator-min.js create mode 100755 lib/yuilib/3.12.0/paginator/paginator.js rename lib/yuilib/{3.9.1/build => 3.12.0}/panel/assets/panel-core.css (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/panel/assets/skins/night/panel-skin.css (96%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/panel/assets/skins/night/panel.css create mode 100755 lib/yuilib/3.12.0/panel/assets/skins/night/sprite_icons.png rename lib/yuilib/{3.9.1/build => 3.12.0}/panel/assets/skins/sam/panel-skin.css (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0/panel}/assets/skins/sam/panel.css (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/panel/assets/skins/sam/sprite_icons.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/panel/panel-debug.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/panel/panel-min.js (50%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/panel/panel.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/parallel/parallel-debug.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/parallel/parallel-min.js (76%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/parallel/parallel.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/pjax-base/pjax-base-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/pjax-base/pjax-base-min.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/pjax-base/pjax-base.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/pjax-content/pjax-content-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/pjax-content/pjax-content-min.js (79%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/pjax-content/pjax-content.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/pjax-plugin/pjax-plugin-debug.js (73%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/pjax-plugin/pjax-plugin-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/pjax-plugin/pjax-plugin.js (73%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/pjax/pjax-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/pjax/pjax-min.js (72%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/pjax/pjax.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/plugin/plugin-debug.js (80%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/plugin/plugin-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/plugin/plugin.js (79%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/pluginhost-base/pluginhost-base-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/pluginhost-base/pluginhost-base-min.js (77%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/pluginhost-base/pluginhost-base.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/pluginhost-config/pluginhost-config-debug.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/pluginhost-config/pluginhost-config-min.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/pluginhost-config/pluginhost-config.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/promise/promise-debug.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/promise/promise-min.js (58%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/promise/promise.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/querystring-parse-simple/querystring-parse-simple-debug.js (80%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/querystring-parse-simple/querystring-parse-simple-min.js (62%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/querystring-parse-simple/querystring-parse-simple.js (80%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/querystring-parse/querystring-parse-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/querystring-parse/querystring-parse-min.js (76%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/querystring-parse/querystring-parse.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/querystring-stringify-simple/querystring-stringify-simple-debug.js (87%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/querystring-stringify-simple/querystring-stringify-simple-min.js (60%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/querystring-stringify-simple/querystring-stringify-simple.js (87%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/querystring-stringify/querystring-stringify-debug.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/querystring-stringify/querystring-stringify-min.js (77%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/querystring-stringify/querystring-stringify.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/queue-promote/queue-promote-debug.js (86%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/queue-promote/queue-promote-min.js (55%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/queue-promote/queue-promote.js (86%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/range-slider/range-slider-debug.js (74%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/range-slider/range-slider-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/range-slider/range-slider.js (74%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/recordset-base/recordset-base-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/recordset-base/recordset-base-min.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/recordset-base/recordset-base.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/recordset-filter/recordset-filter-debug.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/recordset-filter/recordset-filter-min.js (69%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/recordset-filter/recordset-filter.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/recordset-indexer/recordset-indexer-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/recordset-indexer/recordset-indexer-min.js (83%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/recordset-indexer/recordset-indexer.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/recordset-sort/recordset-sort-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/recordset-sort/recordset-sort-min.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/recordset-sort/recordset-sort.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/resize-plugin => 3.12.0/resize-base}/assets/resize-base-core.css (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/resize-base/assets/skins/sam => 3.12.0/resize-base/assets/skins/night}/arrows.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/resize-base/assets/skins/night/resize-base-skin.css (86%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/resize-base/assets/skins/night/resize-base.css rename lib/yuilib/{3.9.1/build/resize-constrain/assets/skins/night => 3.12.0/resize-base/assets/skins/sam}/arrows.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/resize-base/assets/skins/sam/resize-base-skin.css (86%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/resize-base/assets/skins/sam/resize-base.css (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/resize-base/resize-base-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/resize-base/resize-base-min.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/resize-base/resize-base.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/resize-constrain/resize-constrain-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/resize-constrain/resize-constrain-min.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/resize-constrain/resize-constrain.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/resize-plugin/resize-plugin-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/resize-plugin/resize-plugin-min.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/resize-plugin/resize-plugin.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/resize-proxy/resize-proxy-debug.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/resize-proxy/resize-proxy-min.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/resize-proxy/resize-proxy.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/router/router-debug.js (86%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/router/router-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/router/router.js (86%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-base-ie/scrollview-base-ie-debug.js (87%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-base-ie/scrollview-base-ie-min.js (73%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-base-ie/scrollview-base-ie.js (87%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-base/assets/scrollview-base-core.css (60%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/scrollview-base/assets/skins/night/scrollview-base-skin.css create mode 100755 lib/yuilib/3.12.0/scrollview-base/assets/skins/night/scrollview-base.css create mode 100755 lib/yuilib/3.12.0/scrollview-base/assets/skins/sam/scrollview-base-skin.css rename lib/yuilib/{3.9.1/build => 3.12.0/scrollview-base}/assets/skins/sam/scrollview-base.css (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-base/scrollview-base-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-base/scrollview-base-min.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-base/scrollview-base.js (99%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/scrollview-list/assets/scrollview-list-core.css rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-list/assets/skins/night/scrollview-list-skin.css (92%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/scrollview-list/assets/skins/night/scrollview-list.css rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-list/assets/skins/sam/scrollview-list-skin.css (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0/scrollview-list}/assets/skins/sam/scrollview-list.css (84%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-list/scrollview-list-debug.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-list/scrollview-list-min.js (75%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-list/scrollview-list.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-paginator/scrollview-paginator-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-paginator/scrollview-paginator-min.js (77%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-paginator/scrollview-paginator.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-scrollbars/assets/scrollview-scrollbars-core.css (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-scrollbars/assets/skins/night/scrollview-scrollbars-skin.css (95%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/scrollview-scrollbars/assets/skins/night/scrollview-scrollbars.css rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-scrollbars/assets/skins/sam/scrollview-scrollbars-skin.css (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-scrollbars/assets/skins/sam/scrollview-scrollbars.css (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-scrollbars/scrollview-scrollbars-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-scrollbars/scrollview-scrollbars-min.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview-scrollbars/scrollview-scrollbars.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview/scrollview-debug.js (73%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/scrollview/scrollview-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/scrollview/scrollview.js (73%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/selector-css2/selector-css2-debug.js (92%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/selector-css2/selector-css2-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/selector-css2/selector-css2.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/selector-css3/selector-css3-debug.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/selector-css3/selector-css3-min.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/selector-css3/selector-css3.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/selector-native/selector-native-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/selector-native/selector-native-min.js (62%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/selector-native/selector-native.js (95%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/selector/selector-debug.js create mode 100755 lib/yuilib/3.12.0/selector/selector-min.js create mode 100755 lib/yuilib/3.12.0/selector/selector.js rename lib/yuilib/{3.9.1/build => 3.12.0}/series-area-stacked/series-area-stacked-debug.js (86%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-area-stacked/series-area-stacked-min.js (56%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-area-stacked/series-area-stacked.js (86%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-area/series-area-debug.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-area/series-area-min.js (67%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-area/series-area.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-areaspline-stacked/series-areaspline-stacked-debug.js (84%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-areaspline-stacked/series-areaspline-stacked-min.js (52%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-areaspline-stacked/series-areaspline-stacked.js (84%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-areaspline/series-areaspline-debug.js (89%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/series-areaspline/series-areaspline-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/series-areaspline/series-areaspline.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-bar-stacked/series-bar-stacked-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-bar-stacked/series-bar-stacked-min.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-bar-stacked/series-bar-stacked.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-bar/series-bar-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-bar/series-bar-min.js (79%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-bar/series-bar.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-base/series-base-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-base/series-base-min.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-base/series-base.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-candlestick/series-candlestick-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-candlestick/series-candlestick-min.js (86%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-candlestick/series-candlestick.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-cartesian/series-cartesian-debug.js (81%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/series-cartesian/series-cartesian-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/series-cartesian/series-cartesian.js (81%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-column-stacked/series-column-stacked-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-column-stacked/series-column-stacked-min.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-column-stacked/series-column-stacked.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-column/series-column-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-column/series-column-min.js (83%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-column/series-column.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-combo-stacked/series-combo-stacked-debug.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-combo-stacked/series-combo-stacked-min.js (63%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-combo-stacked/series-combo-stacked.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-combo/series-combo-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-combo/series-combo-min.js (81%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-combo/series-combo.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-combospline-stacked/series-combospline-stacked-debug.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-combospline-stacked/series-combospline-stacked-min.js (64%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-combospline-stacked/series-combospline-stacked.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-combospline/series-combospline-debug.js (86%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-combospline/series-combospline-min.js (61%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-combospline/series-combospline.js (86%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-curve-util/series-curve-util-debug.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-curve-util/series-curve-util-min.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-curve-util/series-curve-util.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-fill-util/series-fill-util-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-fill-util/series-fill-util-min.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-fill-util/series-fill-util.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-histogram-base/series-histogram-base-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-histogram-base/series-histogram-base-min.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-histogram-base/series-histogram-base.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-line-stacked/series-line-stacked-debug.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-line-stacked/series-line-stacked-min.js (53%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-line-stacked/series-line-stacked.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-line-util/series-line-util-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-line-util/series-line-util-min.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-line-util/series-line-util.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-line/series-line-debug.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-line/series-line-min.js (61%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-line/series-line.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-marker-stacked/series-marker-stacked-debug.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-marker-stacked/series-marker-stacked-min.js (51%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-marker-stacked/series-marker-stacked.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-marker/series-marker-debug.js (94%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/series-marker/series-marker-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/series-marker/series-marker.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-ohlc/series-ohlc-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-ohlc/series-ohlc-min.js (82%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-ohlc/series-ohlc.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-pie/series-pie-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-pie/series-pie-min.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-pie/series-pie.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-plot-util/series-plot-util-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-plot-util/series-plot-util-min.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-plot-util/series-plot-util.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-range/series-range-debug.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-range/series-range-min.js (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-range/series-range.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-spline-stacked/series-spline-stacked-debug.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-spline-stacked/series-spline-stacked-min.js (51%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-spline-stacked/series-spline-stacked.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-spline/series-spline-debug.js (93%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/series-spline/series-spline-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/series-spline/series-spline.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-stacked/series-stacked-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-stacked/series-stacked-min.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/series-stacked/series-stacked.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/shim-plugin/shim-plugin-debug.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/shim-plugin/shim-plugin-min.js (78%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/shim-plugin/shim-plugin.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/simpleyui/simpleyui-debug.js (93%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/simpleyui/simpleyui-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/simpleyui/simpleyui.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-value-range/assets/thumb-x-oblong-dark.png => 3.12.0/slider-base/assets/skins/audio-light/rail-x.png} (74%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base/assets/thumb-x-oblong-dark.png => 3.12.0/slider-base/assets/skins/audio-light/rail-y.png} (74%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/audio-light/slider-base-skin.css (94%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/slider-base.css rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/audio-light/slider-skin.css (94%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/thumb-x.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/thumb-y.png rename lib/yuilib/{3.9.1/build/range-slider/assets/thumb-x-oblong-dark.png => 3.12.0/slider-base/assets/skins/audio/rail-x.png} (74%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/slider-base/assets/thumb-x-oblong2-dark.png => 3.12.0/slider-base/assets/skins/audio/rail-y.png} (74%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/audio/slider-base-skin.css (93%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/audio/slider-base.css rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/audio/slider-skin.css (93%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/audio/thumb-x.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/audio/thumb-y.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-x-dots.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-x-lines.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-x.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-y-dots.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-y-lines.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-y.png rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/capsule-dark/slider-base-skin.css (94%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/slider-base.css rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/capsule-dark/slider-skin.css (94%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-x-line.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-x.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-y-line.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-y.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-x-dots.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-x-lines.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-x.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-y-dots.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-y-lines.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-y.png rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/capsule/slider-base-skin.css (94%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule/slider-base.css rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/capsule/slider-skin.css (94%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-x-line.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-x.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-y-line.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-y-lines.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-y.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-x-lines.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-x.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-y-lines.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-y.png rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/night/slider-base-skin.css (93%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/night/slider-base.css rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/night/slider-skin.css (93%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/night/thumb-x.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/night/thumb-y.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/rail-x.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/rail-y.png rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/round-dark/slider-base-skin.css (94%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/slider-base.css rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/round-dark/slider-skin.css (94%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/thumb-x-grip.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/thumb-x.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/thumb-y-grip.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/thumb-y.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/round/rail-x.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/round/rail-y.png rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/round/slider-base-skin.css (94%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/round/slider-base.css rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/round/slider-skin.css (94%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/round/thumb-x-grip.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/round/thumb-x.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/round/thumb-y-grip.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/round/thumb-y.png rename lib/yuilib/{3.9.1/build/range-slider/assets/thumb-x-oblong2-dark.png => 3.12.0/slider-base/assets/skins/sam-dark/rail-x-lines.png} (74%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/rail-x.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/rail-y-lines.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/rail-y.png rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/sam-dark/slider-base-skin.css (93%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/slider-base.css rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/sam-dark/slider-skin.css (93%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/thumb-x.png create mode 100755 lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/thumb-y.png rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/sam/rail-x-lines.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/sam/rail-x.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/sam/rail-y-lines.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/sam/rail-y.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/sam/slider-base-skin.css (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0/slider-base}/assets/skins/sam/slider-base.css (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/sam/slider-skin.css (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/sam/thumb-x.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/skins/sam/thumb-y.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/assets/slider-base-core.css (80%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/range-slider => 3.12.0/slider-base}/assets/slider-core.css (80%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/clickable-rail => 3.12.0/slider-base}/assets/thumb-x-oblong-dark.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/clickable-rail => 3.12.0/slider-base}/assets/thumb-x-oblong.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/clickable-rail => 3.12.0/slider-base}/assets/thumb-x-oblong2-dark.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/clickable-rail => 3.12.0/slider-base}/assets/thumb-x-oblong2.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/clickable-rail => 3.12.0/slider-base}/assets/thumb-y-oblong-dark.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/clickable-rail => 3.12.0/slider-base}/assets/thumb-y-oblong.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/clickable-rail => 3.12.0/slider-base}/assets/thumb-y-oblong2-dark.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/clickable-rail => 3.12.0/slider-base}/assets/thumb-y-oblong2.png (100%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/slider-base-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/slider-base-min.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-base/slider-base.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-value-range/slider-value-range-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-value-range/slider-value-range-min.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/slider-value-range/slider-value-range.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/sortable-scroll/sortable-scroll-debug.js (88%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/sortable-scroll/sortable-scroll-min.js (66%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/sortable-scroll/sortable-scroll.js (88%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/sortable/sortable-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/sortable/sortable-min.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/sortable/sortable.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/stylesheet/stylesheet-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/stylesheet/stylesheet-min.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/stylesheet/stylesheet.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/substitute/substitute-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/substitute/substitute-min.js (76%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/substitute/substitute.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/swf/swf-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/swf/swf-min.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/swf/swf.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/swfdetect/swfdetect-debug.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/swfdetect/swfdetect-min.js (78%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/swfdetect/swfdetect.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/tabview-base/tabview-base-debug.js (64%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/tabview-base/tabview-base-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/tabview-base/tabview-base.js (64%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/tabview-plugin/tabview-plugin-debug.js (61%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/tabview-plugin/tabview-plugin-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/tabview-plugin/tabview-plugin.js (61%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/tabview/assets/skins/night/tabview-skin.css (93%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/tabview/assets/skins/night/tabview.css rename lib/yuilib/{3.9.1/build => 3.12.0}/tabview/assets/skins/sam/tabview-skin.css (92%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/tabview/assets/skins/sam/tabview.css rename lib/yuilib/{3.9.1/build/tabview-base => 3.12.0/tabview}/assets/tabview-core.css (84%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/tabview/tabview-debug.js (81%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/tabview/tabview-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/tabview/tabview.js (81%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/template-base/template-base-debug.js (55%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/template-base/template-base-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/template-base/template-base.js (55%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/template-micro/template-micro-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/template-micro/template-micro-min.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/template-micro/template-micro.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/test-console/assets/skins/sam/test-console-skin.css (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0/test-console}/assets/skins/sam/test-console.css (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/test-console/assets/test-console-core.css (50%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/test-console/test-console-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/test-console/test-console-min.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/test-console/test-console.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/test/test-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/test/test-min.js (67%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/test/test.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/text-accentfold/text-accentfold-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/text-accentfold/text-accentfold-min.js (64%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/text-accentfold/text-accentfold.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/text-data-accentfold/text-data-accentfold-debug.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/text-data-accentfold/text-data-accentfold-min.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/text-data-accentfold/text-data-accentfold.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/text-data-wordbreak/text-data-wordbreak-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/text-data-wordbreak/text-data-wordbreak-min.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/text-data-wordbreak/text-data-wordbreak.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/text-wordbreak/text-wordbreak-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/text-wordbreak/text-wordbreak-min.js (87%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/text-wordbreak/text-wordbreak.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/timers/timers-debug.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/timers/timers-min.js (65%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/timers/timers.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/transition-timer/transition-timer-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/transition-timer/transition-timer-min.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/transition-timer/transition-timer.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/transition/transition-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/transition/transition-min.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/transition/transition.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/tree-labelable/tree-labelable-debug.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/tree-labelable/tree-labelable-min.js (62%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/tree-labelable/tree-labelable.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/tree-lazy/tree-lazy-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/tree-lazy/tree-lazy-min.js (76%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/tree-lazy/tree-lazy.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/tree-node/tree-node-debug.js (80%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/tree-node/tree-node-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/tree-node/tree-node.js (80%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/tree-openable/tree-openable-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/tree-openable/tree-openable-min.js (81%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/tree-openable/tree-openable.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/tree-selectable/tree-selectable-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/tree-selectable/tree-selectable-min.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/tree-selectable/tree-selectable.js (97%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/tree-sortable/tree-sortable-debug.js create mode 100755 lib/yuilib/3.12.0/tree-sortable/tree-sortable-min.js create mode 100755 lib/yuilib/3.12.0/tree-sortable/tree-sortable.js rename lib/yuilib/{3.9.1/build => 3.12.0}/tree/tree-debug.js (72%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/tree/tree-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/tree/tree.js (72%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/uploader-flash/assets/uploader-flash-core.css rename lib/yuilib/{3.9.1/build => 3.12.0}/uploader-flash/uploader-flash-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/uploader-flash/uploader-flash-min.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/uploader-flash/uploader-flash.js (99%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/uploader-html5/assets/uploader-flash-core.css rename lib/yuilib/{3.9.1/build => 3.12.0}/uploader-html5/uploader-html5-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/uploader-html5/uploader-html5-min.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/uploader-html5/uploader-html5.js (99%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/uploader-queue/assets/uploader-flash-core.css rename lib/yuilib/{3.9.1/build => 3.12.0}/uploader-queue/uploader-queue-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/uploader-queue/uploader-queue-min.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/uploader-queue/uploader-queue.js (99%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/uploader/assets/flashuploader.swf create mode 100755 lib/yuilib/3.12.0/uploader/assets/uploader-flash-core.css rename lib/yuilib/{3.9.1/build => 3.12.0}/uploader/uploader-debug.js (87%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/uploader/uploader-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/uploader/uploader.js (87%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/view-node-map/view-node-map-debug.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/view-node-map/view-node-map-min.js (70%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/view-node-map/view-node-map.js (92%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/view/view-debug.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/view/view-min.js (86%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/view/view.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-anim/widget-anim-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-anim/widget-anim-min.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-anim/widget-anim.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-autohide/widget-autohide-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-autohide/widget-autohide-min.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-autohide/widget-autohide.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-base-ie/widget-base-ie-debug.js (83%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-base-ie/widget-base-ie-min.js (66%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-base-ie/widget-base-ie.js (83%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/widget-base/assets/skins/night/widget-base-skin.css create mode 100755 lib/yuilib/3.12.0/widget-base/assets/skins/night/widget-base.css create mode 100755 lib/yuilib/3.12.0/widget-base/assets/skins/sam/widget-base-skin.css rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-base/assets/skins/sam/widget-base.css (68%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build/widget-base-ie => 3.12.0/widget-base}/assets/widget-base-core.css (74%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-base/widget-base-debug.js (94%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/widget-base/widget-base-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-base/widget-base.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-buttons/widget-buttons-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-buttons/widget-buttons-min.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-buttons/widget-buttons.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-child/widget-child-debug.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-child/widget-child-min.js (87%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-child/widget-child.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-htmlparser/widget-htmlparser-debug.js (73%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/widget-htmlparser/widget-htmlparser-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-htmlparser/widget-htmlparser.js (73%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-locale/widget-locale-debug.js (87%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-locale/widget-locale-min.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-locale/widget-locale.js (90%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-modality/assets/skins/night/widget-modality-skin.css (58%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/widget-modality/assets/skins/night/widget-modality.css rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-modality/assets/skins/sam/widget-modality-skin.css (57%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0/widget-modality}/assets/skins/sam/widget-modality.css (56%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/widget-modality/assets/widget-modality-core.css rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-modality/widget-modality-debug.js (98%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/widget-modality/widget-modality-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-modality/widget-modality.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-parent/widget-parent-debug.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-parent/widget-parent-min.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-parent/widget-parent.js (99%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-position-align/widget-position-align-debug.js (94%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/widget-position-align/widget-position-align-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-position-align/widget-position-align.js (94%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-position-constrain/widget-position-constrain-debug.js (89%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/widget-position-constrain/widget-position-constrain-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-position-constrain/widget-position-constrain.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-position/widget-position-debug.js (90%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/widget-position/widget-position-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-position/widget-position.js (90%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/widget-skin/widget-skin-debug.js create mode 100755 lib/yuilib/3.12.0/widget-skin/widget-skin-min.js create mode 100755 lib/yuilib/3.12.0/widget-skin/widget-skin.js create mode 100755 lib/yuilib/3.12.0/widget-stack/assets/skins/night/widget-stack-skin.css create mode 100755 lib/yuilib/3.12.0/widget-stack/assets/skins/night/widget-stack.css create mode 100755 lib/yuilib/3.12.0/widget-stack/assets/skins/sam/widget-stack-skin.css rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-stack/assets/skins/sam/widget-stack.css (62%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-stack/assets/widget-stack-core.css (72%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-stack/widget-stack-debug.js (95%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/widget-stack/widget-stack-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-stack/widget-stack.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-stdmod/widget-stdmod-debug.js (98%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/widget-stdmod/widget-stdmod-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-stdmod/widget-stdmod.js (98%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-uievents/widget-uievents-debug.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-uievents/widget-uievents-min.js (87%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/widget-uievents/widget-uievents.js (89%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yql-jsonp/yql-jsonp-debug.js (79%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yql-jsonp/yql-jsonp-min.js (57%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yql-jsonp/yql-jsonp.js (79%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yql-nodejs/yql-nodejs-debug.js (82%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yql-nodejs/yql-nodejs-min.js (50%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yql-nodejs/yql-nodejs.js (82%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yql-winjs/yql-winjs-debug.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yql-winjs/yql-winjs-min.js (66%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yql-winjs/yql-winjs.js (85%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yql/yql-debug.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yql/yql-min.js (82%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yql/yql.js (95%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yui-base/yui-base-debug.js (97%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/yui-base/yui-base-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/yui-base/yui-base.js (97%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yui-core/yui-core-debug.js (97%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/yui-core/yui-core-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/yui-core/yui-core.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yui-later/yui-later-debug.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yui-later/yui-later-min.js (66%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yui-later/yui-later.js (93%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yui-log-nodejs/yui-log-nodejs-debug.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yui-log-nodejs/yui-log-nodejs-min.js (84%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yui-log-nodejs/yui-log-nodejs.js (91%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yui-log/yui-log-debug.js (84%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/yui-log/yui-log-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/yui-log/yui-log.js (84%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yui-nodejs/yui-nodejs-debug.js (97%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/yui-nodejs/yui-nodejs-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/yui-nodejs/yui-nodejs.js (96%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yui-throttle/yui-throttle-debug.js (82%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/yui-throttle/yui-throttle-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/yui-throttle/yui-throttle.js (82%) mode change 100644 => 100755 rename lib/yuilib/{3.9.1/build => 3.12.0}/yui/yui-debug.js (97%) mode change 100644 => 100755 create mode 100755 lib/yuilib/3.12.0/yui/yui-min.js rename lib/yuilib/{3.9.1/build => 3.12.0}/yui/yui.js (97%) mode change 100644 => 100755 delete mode 100644 lib/yuilib/3.9.1/build/anim-node-plugin/anim-node-plugin-min.js delete mode 100644 lib/yuilib/3.9.1/build/anim-xy/anim-xy-min.js delete mode 100644 lib/yuilib/3.9.1/build/array-invoke/array-invoke-min.js delete mode 100644 lib/yuilib/3.9.1/build/arraylist-filter/arraylist-filter-min.js delete mode 100644 lib/yuilib/3.9.1/build/arraysort/arraysort-debug.js delete mode 100644 lib/yuilib/3.9.1/build/arraysort/arraysort-min.js delete mode 100644 lib/yuilib/3.9.1/build/arraysort/arraysort.js delete mode 100644 lib/yuilib/3.9.1/build/assets/skins/sam/datatable-base-deprecated.css delete mode 100644 lib/yuilib/3.9.1/build/assets/skins/sam/datatable-base.css delete mode 100644 lib/yuilib/3.9.1/build/assets/skins/sam/datatable-sort.css delete mode 100644 lib/yuilib/3.9.1/build/assets/skins/sam/dt-arrow-dn.png delete mode 100644 lib/yuilib/3.9.1/build/assets/skins/sam/dt-arrow-up.png delete mode 100644 lib/yuilib/3.9.1/build/assets/skins/sam/node-flick.css delete mode 100644 lib/yuilib/3.9.1/build/assets/skins/sam/node-menunav.css delete mode 100644 lib/yuilib/3.9.1/build/assets/skins/sam/skin.css delete mode 100644 lib/yuilib/3.9.1/build/assets/skins/sam/sprite_icons.gif delete mode 100644 lib/yuilib/3.9.1/build/assets/skins/sam/tabview.css delete mode 100644 lib/yuilib/3.9.1/build/assets/skins/sam/widget-buttons.css delete mode 100644 lib/yuilib/3.9.1/build/async-queue/async-queue-min.js delete mode 100644 lib/yuilib/3.9.1/build/attribute-complex/attribute-complex-min.js delete mode 100644 lib/yuilib/3.9.1/build/attribute-core/attribute-core-min.js delete mode 100644 lib/yuilib/3.9.1/build/attribute-observable/attribute-observable-min.js delete mode 100644 lib/yuilib/3.9.1/build/axis-base/axis-base-min.js delete mode 100644 lib/yuilib/3.9.1/build/axis-category-base/axis-category-base-min.js delete mode 100644 lib/yuilib/3.9.1/build/axis-category/axis-category-debug.js delete mode 100644 lib/yuilib/3.9.1/build/axis-category/axis-category-min.js delete mode 100644 lib/yuilib/3.9.1/build/axis-category/axis-category.js delete mode 100644 lib/yuilib/3.9.1/build/axis-numeric-base/axis-numeric-base-min.js delete mode 100644 lib/yuilib/3.9.1/build/axis-numeric/axis-numeric-min.js delete mode 100644 lib/yuilib/3.9.1/build/axis-stacked/axis-stacked-min.js delete mode 100644 lib/yuilib/3.9.1/build/axis-time/axis-time-debug.js delete mode 100644 lib/yuilib/3.9.1/build/axis-time/axis-time-min.js delete mode 100644 lib/yuilib/3.9.1/build/axis-time/axis-time.js delete mode 100644 lib/yuilib/3.9.1/build/base-base/base-base-min.js delete mode 100644 lib/yuilib/3.9.1/build/base-build/base-build-min.js delete mode 100644 lib/yuilib/3.9.1/build/base-core/base-core-min.js delete mode 100644 lib/yuilib/3.9.1/build/base-observable/base-observable-min.js delete mode 100644 lib/yuilib/3.9.1/build/base-pluginhost/base-pluginhost-min.js delete mode 100644 lib/yuilib/3.9.1/build/button-group/button-group-min.js delete mode 100644 lib/yuilib/3.9.1/build/cache-plugin/cache-plugin-min.js delete mode 100644 lib/yuilib/3.9.1/build/calendar-base/calendar-base-min.js delete mode 100644 lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base.js delete mode 100644 lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_de.js delete mode 100644 lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_en.js delete mode 100644 lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_es-AR.js delete mode 100644 lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_es.js delete mode 100644 lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_fr.js delete mode 100644 lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_it.js delete mode 100644 lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_ja.js delete mode 100644 lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_nb-NO.js delete mode 100644 lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_nl.js delete mode 100644 lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_pt-BR.js delete mode 100644 lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_ru.js delete mode 100644 lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_zh-HANT-TW.js delete mode 100644 lib/yuilib/3.9.1/build/calendar/calendar-min.js delete mode 100644 lib/yuilib/3.9.1/build/calendar/lang/calendar.js delete mode 100644 lib/yuilib/3.9.1/build/calendar/lang/calendar_de.js delete mode 100644 lib/yuilib/3.9.1/build/calendar/lang/calendar_en.js delete mode 100644 lib/yuilib/3.9.1/build/calendar/lang/calendar_es-AR.js delete mode 100644 lib/yuilib/3.9.1/build/calendar/lang/calendar_es.js delete mode 100644 lib/yuilib/3.9.1/build/calendar/lang/calendar_fr.js delete mode 100644 lib/yuilib/3.9.1/build/calendar/lang/calendar_it.js delete mode 100644 lib/yuilib/3.9.1/build/calendar/lang/calendar_ja.js delete mode 100644 lib/yuilib/3.9.1/build/calendar/lang/calendar_nb-NO.js delete mode 100644 lib/yuilib/3.9.1/build/calendar/lang/calendar_nl.js delete mode 100644 lib/yuilib/3.9.1/build/calendar/lang/calendar_pt-BR.js delete mode 100644 lib/yuilib/3.9.1/build/calendar/lang/calendar_ru.js delete mode 100644 lib/yuilib/3.9.1/build/calendar/lang/calendar_zh-HANT-TW.js delete mode 100644 lib/yuilib/3.9.1/build/calendarnavigator/calendarnavigator-min.js delete mode 100644 lib/yuilib/3.9.1/build/charts-base/charts-base-min.js delete mode 100644 lib/yuilib/3.9.1/build/charts/charts-debug.js delete mode 100644 lib/yuilib/3.9.1/build/charts/charts-min.js delete mode 100644 lib/yuilib/3.9.1/build/charts/charts.js delete mode 100644 lib/yuilib/3.9.1/build/clickable-rail/assets/slider-base-core.css delete mode 100644 lib/yuilib/3.9.1/build/clickable-rail/assets/slider-core.css delete mode 100644 lib/yuilib/3.9.1/build/color-base/color-base-min.js delete mode 100644 lib/yuilib/3.9.1/build/console-filters/assets/console-filters-core.css delete mode 100644 lib/yuilib/3.9.1/build/console-filters/assets/skins/sam/console-filters-skin.css delete mode 100644 lib/yuilib/3.9.1/build/console/assets/console-core.css delete mode 100644 lib/yuilib/3.9.1/build/console/assets/console-filters-core.css delete mode 100644 lib/yuilib/3.9.1/build/console/assets/skins/sam/console-filters.css delete mode 100644 lib/yuilib/3.9.1/build/console/lang/console.js delete mode 100644 lib/yuilib/3.9.1/build/console/lang/console_en.js delete mode 100644 lib/yuilib/3.9.1/build/console/lang/console_es.js delete mode 100644 lib/yuilib/3.9.1/build/console/lang/console_ja.js delete mode 100644 lib/yuilib/3.9.1/build/cssbase-context/base-context-min.css delete mode 100644 lib/yuilib/3.9.1/build/cssbase-context/base-context.css delete mode 100644 lib/yuilib/3.9.1/build/cssbase/base-min.css delete mode 100644 lib/yuilib/3.9.1/build/cssbase/base.css delete mode 100644 lib/yuilib/3.9.1/build/cssfonts-context/fonts-context-min.css delete mode 100644 lib/yuilib/3.9.1/build/cssfonts-context/fonts-context.css delete mode 100644 lib/yuilib/3.9.1/build/cssfonts/fonts-min.css delete mode 100644 lib/yuilib/3.9.1/build/cssfonts/fonts.css delete mode 100644 lib/yuilib/3.9.1/build/cssgrids-context-deprecated/grids-context-min.css delete mode 100644 lib/yuilib/3.9.1/build/cssgrids-context-deprecated/grids-context.css delete mode 100644 lib/yuilib/3.9.1/build/cssgrids/grids-min.css delete mode 100644 lib/yuilib/3.9.1/build/cssgrids/grids.css delete mode 100644 lib/yuilib/3.9.1/build/cssreset-context/reset-context-min.css delete mode 100644 lib/yuilib/3.9.1/build/cssreset-context/reset-context.css delete mode 100644 lib/yuilib/3.9.1/build/cssreset/reset-min.css delete mode 100644 lib/yuilib/3.9.1/build/cssreset/reset.css delete mode 100644 lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/datatable-base-deprecated-core.css delete mode 100644 lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/night/datatable-base-deprecated-skin.css delete mode 100644 lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/night/datatable-base-deprecated.css delete mode 100644 lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/datatable-base-deprecated-skin.css delete mode 100644 lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/datatable-base-deprecated.css delete mode 100644 lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/dt-arrow-dn.png delete mode 100644 lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/dt-arrow-up.png delete mode 100644 lib/yuilib/3.9.1/build/datatable-base-deprecated/datatable-base-deprecated-debug.js delete mode 100644 lib/yuilib/3.9.1/build/datatable-base-deprecated/datatable-base-deprecated-min.js delete mode 100644 lib/yuilib/3.9.1/build/datatable-base-deprecated/datatable-base-deprecated.js delete mode 100644 lib/yuilib/3.9.1/build/datatable-base/assets/datatable-base-core.css delete mode 100644 lib/yuilib/3.9.1/build/datatable-body/datatable-body-min.js delete mode 100644 lib/yuilib/3.9.1/build/datatable-datasource-deprecated/datatable-datasource-deprecated-debug.js delete mode 100644 lib/yuilib/3.9.1/build/datatable-datasource-deprecated/datatable-datasource-deprecated-min.js delete mode 100644 lib/yuilib/3.9.1/build/datatable-datasource-deprecated/datatable-datasource-deprecated.js delete mode 100644 lib/yuilib/3.9.1/build/datatable-message/assets/skins/sam/datatable-message-skin.css delete mode 100644 lib/yuilib/3.9.1/build/datatable-message/lang/datatable-message.js delete mode 100644 lib/yuilib/3.9.1/build/datatable-message/lang/datatable-message_en.js delete mode 100644 lib/yuilib/3.9.1/build/datatable-message/lang/datatable-message_es.js delete mode 100644 lib/yuilib/3.9.1/build/datatable-message/lang/datatable-message_fr.js delete mode 100644 lib/yuilib/3.9.1/build/datatable-scroll-deprecated/datatable-scroll-deprecated-debug.js delete mode 100644 lib/yuilib/3.9.1/build/datatable-scroll-deprecated/datatable-scroll-deprecated-min.js delete mode 100644 lib/yuilib/3.9.1/build/datatable-scroll-deprecated/datatable-scroll-deprecated.js delete mode 100644 lib/yuilib/3.9.1/build/datatable-sort-deprecated/datatable-sort-deprecated-debug.js delete mode 100644 lib/yuilib/3.9.1/build/datatable-sort-deprecated/datatable-sort-deprecated-min.js delete mode 100644 lib/yuilib/3.9.1/build/datatable-sort-deprecated/datatable-sort-deprecated.js delete mode 100644 lib/yuilib/3.9.1/build/datatable-sort-deprecated/lang/datatable-sort-deprecated.js delete mode 100644 lib/yuilib/3.9.1/build/datatable-sort-deprecated/lang/datatable-sort-deprecated_en.js delete mode 100644 lib/yuilib/3.9.1/build/datatable-sort/lang/datatable-sort.js delete mode 100644 lib/yuilib/3.9.1/build/datatable-sort/lang/datatable-sort_en.js delete mode 100644 lib/yuilib/3.9.1/build/datatype-date-parse/datatype-date-parse-min.js delete mode 100644 lib/yuilib/3.9.1/build/dd-drag/dd-drag-min.js delete mode 100644 lib/yuilib/3.9.1/build/dd-drop-plugin/dd-drop-plugin-min.js delete mode 100644 lib/yuilib/3.9.1/build/dial/lang/dial.js delete mode 100644 lib/yuilib/3.9.1/build/dial/lang/dial_en.js delete mode 100644 lib/yuilib/3.9.1/build/dial/lang/dial_es.js delete mode 100644 lib/yuilib/3.9.1/build/dom-attrs/dom-attrs-debug.js delete mode 100644 lib/yuilib/3.9.1/build/dom-attrs/dom-attrs-min.js delete mode 100644 lib/yuilib/3.9.1/build/dom-attrs/dom-attrs.js delete mode 100644 lib/yuilib/3.9.1/build/dom-class/dom-class-debug.js delete mode 100644 lib/yuilib/3.9.1/build/dom-class/dom-class-min.js delete mode 100644 lib/yuilib/3.9.1/build/dom-class/dom-class.js delete mode 100644 lib/yuilib/3.9.1/build/dom-create/dom-create-debug.js delete mode 100644 lib/yuilib/3.9.1/build/dom-create/dom-create-min.js delete mode 100644 lib/yuilib/3.9.1/build/dom-create/dom-create.js delete mode 100644 lib/yuilib/3.9.1/build/dom-deprecated/dom-deprecated-debug.js delete mode 100644 lib/yuilib/3.9.1/build/dom-deprecated/dom-deprecated-min.js delete mode 100644 lib/yuilib/3.9.1/build/dom-deprecated/dom-deprecated.js delete mode 100644 lib/yuilib/3.9.1/build/dom-size/dom-size-debug.js delete mode 100644 lib/yuilib/3.9.1/build/dom-size/dom-size-min.js delete mode 100644 lib/yuilib/3.9.1/build/dom-size/dom-size.js delete mode 100644 lib/yuilib/3.9.1/build/editor-br/editor-br-min.js delete mode 100644 lib/yuilib/3.9.1/build/event-base/event-base-min.js delete mode 100644 lib/yuilib/3.9.1/build/event-custom-base/event-custom-base-min.js delete mode 100644 lib/yuilib/3.9.1/build/event-custom-complex/event-custom-complex-debug.js delete mode 100644 lib/yuilib/3.9.1/build/event-custom-complex/event-custom-complex-min.js delete mode 100644 lib/yuilib/3.9.1/build/event-custom-complex/event-custom-complex.js delete mode 100644 lib/yuilib/3.9.1/build/event-synthetic/event-synthetic-min.js delete mode 100644 lib/yuilib/3.9.1/build/event-tap/event-tap-min.js delete mode 100644 lib/yuilib/3.9.1/build/event-valuechange/event-valuechange-min.js delete mode 100644 lib/yuilib/3.9.1/build/file/file-min.js delete mode 100644 lib/yuilib/3.9.1/build/graphics-svg/graphics-svg-min.js delete mode 100644 lib/yuilib/3.9.1/build/handlebars-base/handlebars-base-min.js delete mode 100644 lib/yuilib/3.9.1/build/handlebars-compiler/handlebars-compiler-min.js delete mode 100644 lib/yuilib/3.9.1/build/io-upload-iframe/io-upload-iframe-min.js delete mode 100644 lib/yuilib/3.9.1/build/io-xdr/io.swf delete mode 100644 lib/yuilib/3.9.1/build/json-parse-shim/json-parse-shim-min.js delete mode 100644 lib/yuilib/3.9.1/build/json-parse/json-parse-min.js delete mode 100644 lib/yuilib/3.9.1/build/loader-base/loader-base-min.js delete mode 100644 lib/yuilib/3.9.1/build/loader-yui3/loader-yui3-min.js delete mode 100644 lib/yuilib/3.9.1/build/loader/loader-min.js delete mode 100644 lib/yuilib/3.9.1/build/model/model-min.js delete mode 100644 lib/yuilib/3.9.1/build/node-base/node-base-min.js delete mode 100644 lib/yuilib/3.9.1/build/node-core/node-core-min.js delete mode 100644 lib/yuilib/3.9.1/build/node-deprecated/node-deprecated-debug.js delete mode 100644 lib/yuilib/3.9.1/build/node-deprecated/node-deprecated-min.js delete mode 100644 lib/yuilib/3.9.1/build/node-deprecated/node-deprecated.js delete mode 100644 lib/yuilib/3.9.1/build/node-event-delegate/node-event-delegate-min.js delete mode 100644 lib/yuilib/3.9.1/build/node-event-simulate/node-event-simulate-min.js delete mode 100644 lib/yuilib/3.9.1/build/node-flick/assets/node-flick-core.css delete mode 100644 lib/yuilib/3.9.1/build/node-flick/assets/skins/sam/node-flick-skin.css delete mode 100644 lib/yuilib/3.9.1/build/node-flick/assets/skins/sam/node-flick.css delete mode 100644 lib/yuilib/3.9.1/build/node-pluginhost/node-pluginhost-min.js delete mode 100644 lib/yuilib/3.9.1/build/node-scroll-info/node-scroll-info-min.js delete mode 100644 lib/yuilib/3.9.1/build/overlay/assets/skins/sam/overlay-skin.css delete mode 100644 lib/yuilib/3.9.1/build/overlay/overlay-min.js delete mode 100644 lib/yuilib/3.9.1/build/pjax-plugin/pjax-plugin-min.js delete mode 100644 lib/yuilib/3.9.1/build/plugin/plugin-min.js delete mode 100644 lib/yuilib/3.9.1/build/profiler/profiler-debug.js delete mode 100644 lib/yuilib/3.9.1/build/profiler/profiler-min.js delete mode 100644 lib/yuilib/3.9.1/build/profiler/profiler.js delete mode 100644 lib/yuilib/3.9.1/build/range-slider/assets/slider-base-core.css delete mode 100644 lib/yuilib/3.9.1/build/range-slider/assets/thumb-x-oblong.png delete mode 100644 lib/yuilib/3.9.1/build/range-slider/assets/thumb-x-oblong2.png delete mode 100644 lib/yuilib/3.9.1/build/range-slider/assets/thumb-y-oblong-dark.png delete mode 100644 lib/yuilib/3.9.1/build/range-slider/assets/thumb-y-oblong.png delete mode 100644 lib/yuilib/3.9.1/build/range-slider/assets/thumb-y-oblong2-dark.png delete mode 100644 lib/yuilib/3.9.1/build/range-slider/assets/thumb-y-oblong2.png delete mode 100644 lib/yuilib/3.9.1/build/range-slider/range-slider-min.js delete mode 100644 lib/yuilib/3.9.1/build/resize-base/assets/resize-base-core.css delete mode 100644 lib/yuilib/3.9.1/build/resize-constrain/assets/resize-base-core.css delete mode 100644 lib/yuilib/3.9.1/build/resize-constrain/assets/skins/night/resize-base-skin.css delete mode 100644 lib/yuilib/3.9.1/build/resize-constrain/assets/skins/sam/arrows.png delete mode 100644 lib/yuilib/3.9.1/build/resize-constrain/assets/skins/sam/resize-base-skin.css delete mode 100644 lib/yuilib/3.9.1/build/resize-plugin/assets/skins/night/arrows.png delete mode 100644 lib/yuilib/3.9.1/build/resize-plugin/assets/skins/night/resize-base-skin.css delete mode 100644 lib/yuilib/3.9.1/build/resize-plugin/assets/skins/sam/arrows.png delete mode 100644 lib/yuilib/3.9.1/build/resize-plugin/assets/skins/sam/resize-base-skin.css delete mode 100644 lib/yuilib/3.9.1/build/resize-proxy/assets/resize-base-core.css delete mode 100644 lib/yuilib/3.9.1/build/resize-proxy/assets/skins/night/arrows.png delete mode 100644 lib/yuilib/3.9.1/build/resize-proxy/assets/skins/night/resize-base-skin.css delete mode 100644 lib/yuilib/3.9.1/build/resize-proxy/assets/skins/sam/arrows.png delete mode 100644 lib/yuilib/3.9.1/build/resize-proxy/assets/skins/sam/resize-base-skin.css delete mode 100644 lib/yuilib/3.9.1/build/router/router-min.js delete mode 100644 lib/yuilib/3.9.1/build/scrollview-base/assets/skins/night/scrollview-base-skin.css delete mode 100644 lib/yuilib/3.9.1/build/scrollview-base/assets/skins/sam/scrollview-base-skin.css delete mode 100644 lib/yuilib/3.9.1/build/scrollview-list/assets/scrollview-list-core.css delete mode 100644 lib/yuilib/3.9.1/build/scrollview/scrollview-min.js delete mode 100644 lib/yuilib/3.9.1/build/selector-css2/selector-css2-min.js delete mode 100644 lib/yuilib/3.9.1/build/selector/selector-debug.js delete mode 100644 lib/yuilib/3.9.1/build/selector/selector-min.js delete mode 100644 lib/yuilib/3.9.1/build/selector/selector.js delete mode 100644 lib/yuilib/3.9.1/build/series-areaspline/series-areaspline-min.js delete mode 100644 lib/yuilib/3.9.1/build/series-cartesian/series-cartesian-min.js delete mode 100644 lib/yuilib/3.9.1/build/series-marker/series-marker-min.js delete mode 100644 lib/yuilib/3.9.1/build/series-spline/series-spline-min.js delete mode 100644 lib/yuilib/3.9.1/build/simpleyui/simpleyui-min.js delete mode 100644 lib/yuilib/3.9.1/build/slider-base/assets/slider-core.css delete mode 100644 lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong.png delete mode 100644 lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong2.png delete mode 100644 lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong-dark.png delete mode 100644 lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong.png delete mode 100644 lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong2-dark.png delete mode 100644 lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong2.png delete mode 100644 lib/yuilib/3.9.1/build/slider-value-range/assets/slider-base-core.css delete mode 100644 lib/yuilib/3.9.1/build/slider-value-range/assets/slider-core.css delete mode 100644 lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong.png delete mode 100644 lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong2-dark.png delete mode 100644 lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong2.png delete mode 100644 lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong-dark.png delete mode 100644 lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong.png delete mode 100644 lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong2-dark.png delete mode 100644 lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong2.png delete mode 100644 lib/yuilib/3.9.1/build/tabview-base/assets/tabview.css delete mode 100644 lib/yuilib/3.9.1/build/tabview-base/tabview-base-min.js delete mode 100644 lib/yuilib/3.9.1/build/tabview-plugin/assets/tabview-core.css delete mode 100644 lib/yuilib/3.9.1/build/tabview-plugin/assets/tabview.css delete mode 100644 lib/yuilib/3.9.1/build/tabview-plugin/tabview-plugin-min.js delete mode 100644 lib/yuilib/3.9.1/build/tabview/assets/tabview-core.css delete mode 100644 lib/yuilib/3.9.1/build/tabview/assets/tabview.css delete mode 100644 lib/yuilib/3.9.1/build/tabview/tabview-min.js delete mode 100644 lib/yuilib/3.9.1/build/template-base/template-base-min.js delete mode 100644 lib/yuilib/3.9.1/build/tree-node/tree-node-min.js delete mode 100644 lib/yuilib/3.9.1/build/tree/tree-min.js delete mode 100644 lib/yuilib/3.9.1/build/uploader-deprecated/assets/uploader.swf delete mode 100644 lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated-debug.js delete mode 100644 lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated-min.js delete mode 100644 lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated.js delete mode 100644 lib/yuilib/3.9.1/build/uploader-flash/assets/uploader-flash-core.css delete mode 100644 lib/yuilib/3.9.1/build/uploader-html5/assets/uploader-flash-core.css delete mode 100644 lib/yuilib/3.9.1/build/uploader-queue/assets/uploader-flash-core.css delete mode 100644 lib/yuilib/3.9.1/build/uploader/assets/flashuploader.swf delete mode 100644 lib/yuilib/3.9.1/build/uploader/assets/uploader-flash-core.css delete mode 100644 lib/yuilib/3.9.1/build/uploader/uploader-min.js delete mode 100644 lib/yuilib/3.9.1/build/widget-base/assets/skins/night/widget-base-skin.css delete mode 100644 lib/yuilib/3.9.1/build/widget-base/assets/skins/sam/widget-base-skin.css delete mode 100644 lib/yuilib/3.9.1/build/widget-base/assets/widget-base-core.css delete mode 100644 lib/yuilib/3.9.1/build/widget-base/widget-base-min.js delete mode 100644 lib/yuilib/3.9.1/build/widget-buttons/assets/skins/night/sprite_icons.gif delete mode 100644 lib/yuilib/3.9.1/build/widget-buttons/assets/skins/night/widget-buttons-skin.css delete mode 100644 lib/yuilib/3.9.1/build/widget-buttons/assets/skins/night/widget-buttons.css delete mode 100644 lib/yuilib/3.9.1/build/widget-buttons/assets/skins/sam/sprite_icons.gif delete mode 100644 lib/yuilib/3.9.1/build/widget-buttons/assets/skins/sam/widget-buttons-skin.css delete mode 100644 lib/yuilib/3.9.1/build/widget-buttons/assets/skins/sam/widget-buttons.css delete mode 100644 lib/yuilib/3.9.1/build/widget-buttons/assets/widget-buttons-core.css delete mode 100644 lib/yuilib/3.9.1/build/widget-htmlparser/assets/widget-base-core.css delete mode 100644 lib/yuilib/3.9.1/build/widget-htmlparser/widget-htmlparser-min.js delete mode 100644 lib/yuilib/3.9.1/build/widget-locale/assets/widget-base-core.css delete mode 100644 lib/yuilib/3.9.1/build/widget-modality/assets/widget-modality-core.css delete mode 100644 lib/yuilib/3.9.1/build/widget-modality/widget-modality-min.js delete mode 100644 lib/yuilib/3.9.1/build/widget-position-align/widget-position-align-min.js delete mode 100644 lib/yuilib/3.9.1/build/widget-position-constrain/widget-position-constrain-min.js delete mode 100644 lib/yuilib/3.9.1/build/widget-position/widget-position-min.js delete mode 100644 lib/yuilib/3.9.1/build/widget-skin/assets/widget-base-core.css delete mode 100644 lib/yuilib/3.9.1/build/widget-skin/widget-skin-debug.js delete mode 100644 lib/yuilib/3.9.1/build/widget-skin/widget-skin-min.js delete mode 100644 lib/yuilib/3.9.1/build/widget-skin/widget-skin.js delete mode 100644 lib/yuilib/3.9.1/build/widget-stack/assets/skins/night/widget-stack-skin.css delete mode 100644 lib/yuilib/3.9.1/build/widget-stack/assets/skins/sam/widget-stack-skin.css delete mode 100644 lib/yuilib/3.9.1/build/widget-stack/widget-stack-min.js delete mode 100644 lib/yuilib/3.9.1/build/widget-stdmod/widget-stdmod-min.js delete mode 100644 lib/yuilib/3.9.1/build/widget-uievents/assets/widget-base-core.css delete mode 100644 lib/yuilib/3.9.1/build/yui-base/yui-base-min.js delete mode 100644 lib/yuilib/3.9.1/build/yui-core/yui-core-min.js delete mode 100644 lib/yuilib/3.9.1/build/yui-log/yui-log-min.js delete mode 100644 lib/yuilib/3.9.1/build/yui-nodejs/yui-nodejs-min.js delete mode 100644 lib/yuilib/3.9.1/build/yui-throttle/yui-throttle-min.js delete mode 100644 lib/yuilib/3.9.1/build/yui/yui-min.js diff --git a/lib/outputrequirementslib.php b/lib/outputrequirementslib.php index baabc5ca7d8..0dbe7bbb985 100644 --- a/lib/outputrequirementslib.php +++ b/lib/outputrequirementslib.php @@ -167,13 +167,22 @@ class page_requirements_manager { $this->yui3loader = new stdClass(); $this->YUI_config = new YUI_config(); + if (strpos($CFG->httpswwwroot, 'https:') === 0) { + // On HTTPS sites all JS must be loaded from https sites, + // YUI CDN does not support https yet, sorry. + $CFG->useexternalyui = 0; + } + // Set up some loader options. - if (!empty($CFG->useexternalyui) and strpos($CFG->httpswwwroot, 'https:') !== 0) { - $this->yui3loader->base = 'http://yui.yahooapis.com/' . $CFG->yui3version . '/build/'; + $this->yui3loader->local_base = $CFG->httpswwwroot . '/lib/yuilib/'. $CFG->yui3version . '/'; + $this->yui3loader->local_comboBase = $CFG->httpswwwroot . '/theme/yui_combo.php'.$sep; + + if (!empty($CFG->useexternalyui)) { + $this->yui3loader->base = 'http://yui.yahooapis.com/' . $CFG->yui3version . '/'; $this->yui3loader->comboBase = 'http://yui.yahooapis.com/combo?'; } else { - $this->yui3loader->base = $CFG->httpswwwroot . '/lib/yuilib/'. $CFG->yui3version . '/build/'; - $this->yui3loader->comboBase = $CFG->httpswwwroot . '/theme/yui_combo.php'.$sep; + $this->yui3loader->base = $this->yui3loader->local_base; + $this->yui3loader->comboBase = $this->yui3loader->local_comboBase; } // Enable combo loader? This significantly helps with caching and performance! @@ -1219,25 +1228,28 @@ class page_requirements_manager { $code = ''; + // Note: SimpleYUI is broken in 3.12 and will not be available in future YUI versions, + // that is why we can not load it from CDN. + if ($this->yui3loader->combine) { if (!empty($page->theme->yuicssmodules)) { $modules = array(); foreach ($page->theme->yuicssmodules as $module) { - $modules[] = "$CFG->yui3version/build/$module/$module-min.css"; + $modules[] = "$CFG->yui3version/$module/$module-min.css"; } $code .= ''; } - $code .= ''; + $code .= ''; } else { if (!empty($page->theme->yuicssmodules)) { foreach ($page->theme->yuicssmodules as $module) { $code .= ''; } } - $code .= ''; - $code .= ''; + $code .= ''; + $code .= ''; } diff --git a/lib/setup.php b/lib/setup.php index ecf49176559..40cab06f4da 100644 --- a/lib/setup.php +++ b/lib/setup.php @@ -322,7 +322,7 @@ umask($CFG->umaskpermissions); // exact version of currently used yui2 and 3 library $CFG->yui2version = '2.9.0'; -$CFG->yui3version = '3.9.1'; +$CFG->yui3version = '3.12.0'; // Store settings from config.php in array in $CFG - we can use it later to detect problems and overrides. if (!isset($CFG->config_php_settings)) { diff --git a/lib/thirdpartylibs.xml b/lib/thirdpartylibs.xml index 6ec4089fb9f..d3e16ae5f14 100644 --- a/lib/thirdpartylibs.xml +++ b/lib/thirdpartylibs.xml @@ -200,7 +200,7 @@ yui YUI BSD - 3.9.1 + 3.12.0 diff --git a/lib/yuilib/3.9.1/build/align-plugin/align-plugin-debug.js b/lib/yuilib/3.12.0/align-plugin/align-plugin-debug.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/align-plugin/align-plugin-debug.js rename to lib/yuilib/3.12.0/align-plugin/align-plugin-debug.js index 8bedec8c776..87dd750cf8a --- a/lib/yuilib/3.9.1/build/align-plugin/align-plugin-debug.js +++ b/lib/yuilib/3.12.0/align-plugin/align-plugin-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('align-plugin', function (Y, NAME) { /** @@ -191,4 +197,4 @@ YUI.add('align-plugin', function (Y, NAME) { -}, '3.9.1', {"requires": ["node-screen", "node-pluginhost"]}); +}, '3.12.0', {"requires": ["node-screen", "node-pluginhost"]}); diff --git a/lib/yuilib/3.9.1/build/align-plugin/align-plugin-min.js b/lib/yuilib/3.12.0/align-plugin/align-plugin-min.js old mode 100644 new mode 100755 similarity index 85% rename from lib/yuilib/3.9.1/build/align-plugin/align-plugin-min.js rename to lib/yuilib/3.12.0/align-plugin/align-plugin-min.js index b64b19a0ecb..f8490359a9c --- a/lib/yuilib/3.9.1/build/align-plugin/align-plugin-min.js +++ b/lib/yuilib/3.12.0/align-plugin/align-plugin-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("align-plugin",function(e,t){function s(e){e.host&&(this._host=e.host)}var n="offsetWidth",r="offsetHeight",i=i;s.prototype={to:function(t,o,u,a){this._syncArgs=e.Array(arguments),t.top===i&&(t=e.one(t).get("region"));if(t){var f=[t.left,t.top],l=[t.width,t.height],c=s.points,h=this._host,p=null,d=h.getAttrs([r,n]),v=[0-d[n],0-d[r]],m=o?c[o.charAt(0)]:p,g=o&&o!=="cc"?c[o.charAt(1)]:p,y=u?c[u.charAt(0)]:p,b=u&&u!=="cc"?c[u.charAt(1)]:p;m&&(f=m(f,l,o)),g&&(f=g(f,l,o)),y&&(f=y(f,v,u)),b&&(f=b(f,v,u)),f&&h&&h.setXY(f),this._resize(a)}return this},sync:function(){return this.to.apply(this,this._syncArgs),this},_resize:function(t){var n=this._handle;t&&!n?this._handle=e.on("resize",this._onresize,window,this):!t&&n&&n.detach()},_onresize:function(){var e=this;setTimeout(function(){e.sync()})},center:function(e,t){return this.to(e,"cc","cc",t),this},destroy:function(){var e=this._handle;e&&e.detach()}},s.points={t:function(e,t){return e},r:function(e,t){return[e[0]+t[0],e[1]]},b:function(e,t){return[e[0],e[1]+t[1]]},l:function(e,t){return e},c:function(e,t,n){var r=n[0]==="t"||n[0]==="b"?0:1,i,s;return n==="cc"?i=[e[0]+t[0]/2,e[1]+t[1]/2]:(s=e[r]+t[r]/2,i=r?[e[0],s]:[s,e[1]]),i}},s.NAME="Align",s.NS="align",s.prototype.constructor=s,e.namespace("Plugin"),e.Plugin.Align=s},"3.9.1",{requires:["node-screen","node-pluginhost"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("align-plugin",function(e,t){function s(e){e.host&&(this._host=e.host)}var n="offsetWidth",r="offsetHeight",i=i;s.prototype={to:function(t,o,u,a){this._syncArgs=e.Array(arguments),t.top===i&&(t=e.one(t).get("region"));if(t){var f=[t.left,t.top],l=[t.width,t.height],c=s.points,h=this._host,p=null,d=h.getAttrs([r,n]),v=[0-d[n],0-d[r]],m=o?c[o.charAt(0)]:p,g=o&&o!=="cc"?c[o.charAt(1)]:p,y=u?c[u.charAt(0)]:p,b=u&&u!=="cc"?c[u.charAt(1)]:p;m&&(f=m(f,l,o)),g&&(f=g(f,l,o)),y&&(f=y(f,v,u)),b&&(f=b(f,v,u)),f&&h&&h.setXY(f),this._resize(a)}return this},sync:function(){return this.to.apply(this,this._syncArgs),this},_resize:function(t){var n=this._handle;t&&!n?this._handle=e.on("resize",this._onresize,window,this):!t&&n&&n.detach()},_onresize:function(){var e=this;setTimeout(function(){e.sync()})},center:function(e,t){return this.to(e,"cc","cc",t),this},destroy:function(){var e=this._handle;e&&e.detach()}},s.points={t:function(e,t){return e},r:function(e,t){return[e[0]+t[0],e[1]]},b:function(e,t){return[e[0],e[1]+t[1]]},l:function(e,t){return e},c:function(e,t,n){var r=n[0]==="t"||n[0]==="b"?0:1,i,s;return n==="cc"?i=[e[0]+t[0]/2,e[1]+t[1]/2]:(s=e[r]+t[r]/2,i=r?[e[0],s]:[s,e[1]]),i}},s.NAME="Align",s.NS="align",s.prototype.constructor=s,e.namespace("Plugin"),e.Plugin.Align=s},"3.12.0",{requires:["node-screen","node-pluginhost"]}); diff --git a/lib/yuilib/3.9.1/build/align-plugin/align-plugin.js b/lib/yuilib/3.12.0/align-plugin/align-plugin.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/align-plugin/align-plugin.js rename to lib/yuilib/3.12.0/align-plugin/align-plugin.js index 8bedec8c776..87dd750cf8a --- a/lib/yuilib/3.9.1/build/align-plugin/align-plugin.js +++ b/lib/yuilib/3.12.0/align-plugin/align-plugin.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('align-plugin', function (Y, NAME) { /** @@ -191,4 +197,4 @@ YUI.add('align-plugin', function (Y, NAME) { -}, '3.9.1', {"requires": ["node-screen", "node-pluginhost"]}); +}, '3.12.0', {"requires": ["node-screen", "node-pluginhost"]}); diff --git a/lib/yuilib/3.9.1/build/anim-base/anim-base-debug.js b/lib/yuilib/3.12.0/anim-base/anim-base-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/anim-base/anim-base-debug.js rename to lib/yuilib/3.12.0/anim-base/anim-base-debug.js index f7d6a0b6da9..9f6e41efbbc --- a/lib/yuilib/3.9.1/build/anim-base/anim-base-debug.js +++ b/lib/yuilib/3.12.0/anim-base/anim-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('anim-base', function (Y, NAME) { /** @@ -683,4 +689,4 @@ YUI.add('anim-base', function (Y, NAME) { Y.extend(Y.Anim, Y.Base, proto); -}, '3.9.1', {"requires": ["base-base", "node-style"]}); +}, '3.12.0', {"requires": ["base-base", "node-style"]}); diff --git a/lib/yuilib/3.9.1/build/anim-base/anim-base-min.js b/lib/yuilib/3.12.0/anim-base/anim-base-min.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/anim-base/anim-base-min.js rename to lib/yuilib/3.12.0/anim-base/anim-base-min.js index 1a818567aed..c3f2ce921c5 --- a/lib/yuilib/3.9.1/build/anim-base/anim-base-min.js +++ b/lib/yuilib/3.12.0/anim-base/anim-base-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("anim-base",function(e,t){var n="running",r="startTime",i="elapsedTime",s="start",o="tween",u="end",a="node",f="paused",l="reverse",c="iterationCount",h=Number,p={},d;e.Anim=function(){e.Anim.superclass.constructor.apply(this,arguments),e.Anim._instances[e.stamp(this)]=this},e.Anim.NAME="anim",e.Anim._instances={},e.Anim.RE_DEFAULT_UNIT=/^width|height|top|right|bottom|left|margin.*|padding.*|border.*$/i,e.Anim.DEFAULT_UNIT="px",e.Anim.DEFAULT_EASING=function(e,t,n,r){return n*e/r+t},e.Anim._intervalTime=20,e.Anim.behaviors={left:{get:function(e,t){return e._getOffset(t)}}},e.Anim.behaviors.top=e.Anim.behaviors.left,e.Anim.DEFAULT_SETTER=function(t,n,r,i,s,o,u,a){var f=t._node,l=f._node,c=u(s,h(r),h(i)-h(r),o);l?"style"in l&&(n in l.style||n in e.DOM.CUSTOM_STYLES)?(a=a||"",f.setStyle(n,c+a)):"attributes"in l&&n in l.attributes?f.setAttribute(n,c):n in l&&(l[n]=c):f.set?f.set(n,c):n in f&&(f[n]=c)},e.Anim.DEFAULT_GETTER=function(t,n){var r=t._node,i=r._node,s="";return i?"style"in i&&(n in i.style||n in e.DOM.CUSTOM_STYLES)?s=r.getComputedStyle(n):"attributes"in i&&n in i.attributes?s=r.getAttribute(n):n in i&&(s=i[n]):r.get?s=r.get(n):n in r&&(s=r[n]),s},e.Anim.ATTRS={node:{setter:function(t){return t&&(typeof t=="string"||t.nodeType)&&(t=e.one(t)),this._node=t,!t,t}},duration:{value:1},easing:{value:e.Anim.DEFAULT_EASING,setter:function(t){if(typeof t=="string"&&e.Easing)return e.Easing[t]}},from:{},to:{},startTime:{value:0,readOnly:!0},elapsedTime:{value:0,readOnly:!0},running:{getter:function(){return!!p[e.stamp(this)]},value:!1,readOnly:!0},iterations:{value:1},iterationCount:{value:0,readOnly:!0},direction:{value:"normal"},paused:{readOnly:!0,value:!1},reverse:{value:!1}},e.Anim.run=function(){var t=e.Anim._instances,n;for(n in t)t[n].run&&t[n].run()},e.Anim.pause=function(){for(var t in p)p[t].pause&&p[t].pause();e.Anim._stopTimer()},e.Anim.stop=function(){for(var t in p)p[t].stop&&p[t].stop();e.Anim._stopTimer()},e.Anim._startTimer=function(){d||(d=setInterval(e.Anim._runFrame,e.Anim._intervalTime))},e.Anim._stopTimer=function(){clearInterval(d),d=0},e.Anim._runFrame=function(){var t=!0,n;for(n in p)p[n]._runFrame&&(t=!1,p[n]._runFrame());t&&e.Anim._stopTimer()},e.Anim.RE_UNITS=/^(-?\d*\.?\d*){1}(em|ex|px|in|cm|mm|pt|pc|%)*$/;var v={run:function(){return this.get(f)?this._resume():this.get(n)||this._start(),this},pause:function(){return this.get(n)&&this._pause(),this},stop:function(e){return(this.get(n)||this.get(f))&&this._end(e),this},_added:!1,_start:function(){this._set(r,new Date-this.get(i)),this._actualFrames=0,this.get(f)||this._initAnimAttr(),p[e.stamp(this)]=this,e.Anim._startTimer(),this.fire(s)},_pause:function(){this._set(r,null),this._set(f,!0),delete p[e.stamp(this)],this.fire("pause")},_resume:function(){this._set(f,!1),p[e.stamp(this)]=this,this._set(r,new Date-this.get(i)),e.Anim._startTimer(),this.fire("resume")},_end:function(t){var n=this.get("duration")*1e3;t&&this._runAttrs(n,n,this.get(l)),this._set(r,null),this._set(i,0),this._set(f,!1),delete p[e.stamp(this)],this.fire(u,{elapsed:this.get(i)})},_runFrame:function(){var e=this._runtimeAttr.duration,t=new Date-this.get(r),n=this.get(l),s=t>=e;this._runAttrs(t,e,n),this._actualFrames+=1,this._set(i,t),this.fire(o),s&&this._lastFrame()},_runAttrs:function(t,n,r){var i=this._runtimeAttr,s=e.Anim.behaviors,o=i.easing,u=n,a=!1,f,l,c;t>=n&&(a=!0),r&&(t=n-t,u=0);for(c in i)i[c].to&&(f=i[c],l=c in s&&"set"in s[c]?s[c].set:e.Anim.DEFAULT_SETTER,a?l(this,c,f.from,f.to,u,n,o,f.unit):l(this,c,f.from,f.to,t,n,o,f.unit))},_lastFrame:function(){var e=this.get("iterations"),t=this.get(c);t+=1,e==="infinite"||t=e;this._runAttrs(t,e,n),this._actualFrames+=1,this._set(i,t),this.fire(o),s&&this._lastFrame()},_runAttrs:function(t,n,r){var i=this._runtimeAttr,s=e.Anim.behaviors,o=i.easing,u=n,a=!1,f,l,c;t>=n&&(a=!0),r&&(t=n-t,u=0);for(c in i)i[c].to&&(f=i[c],l=c in s&&"set"in s[c]?s[c].set:e.Anim.DEFAULT_SETTER,a?l(this,c,f.from,f.to,u,n,o,f.unit):l(this,c,f.from,f.to,t,n,o,f.unit))},_lastFrame:function(){var e=this.get("iterations"),t=this.get(c);t+=1,e==="infinite"||ttransform
    , fill, and attributes of Graphic - * Shape instances. The anim-shape submodule can be used for all animations involving - * Graphic Shape attributes. + * Adds support for the transform and fill attributes of Graphic + * and Shape instances. The anim-shape submodule can be used for all animations + * involving Graphic Shape attributes. * * @module anim * @submodule anim-shape @@ -183,4 +189,4 @@ YUI.add('anim-shape', function (Y, NAME) { -}, '3.9.1', {"requires": ["anim-base", "anim-easing", "anim-color", "matrix"]}); +}, '3.12.0', {"requires": ["anim-base", "anim-easing", "anim-color", "matrix"]}); diff --git a/lib/yuilib/3.9.1/build/anim-shape/anim-shape-min.js b/lib/yuilib/3.12.0/anim-shape/anim-shape-min.js old mode 100644 new mode 100755 similarity index 85% rename from lib/yuilib/3.9.1/build/anim-shape/anim-shape-min.js rename to lib/yuilib/3.12.0/anim-shape/anim-shape-min.js index b2575e612fe..d1cc7d4adeb --- a/lib/yuilib/3.9.1/build/anim-shape/anim-shape-min.js +++ b/lib/yuilib/3.12.0/anim-shape/anim-shape-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("anim-shape",function(e,t){var n=Number,r,i,s="color",o="stops",u="type",a=function(t,r,i,o,u,a){var f=0,l=e.Anim.getUpdatedColorValue,c,h,p,d=i.length,v=[],m;for(;ftransform, fill, and attributes of Graphic - * Shape instances. The anim-shape submodule can be used for all animations involving - * Graphic Shape attributes. + * Adds support for the transform and fill attributes of Graphic + * and Shape instances. The anim-shape submodule can be used for all animations + * involving Graphic Shape attributes. * * @module anim * @submodule anim-shape @@ -183,4 +189,4 @@ YUI.add('anim-shape', function (Y, NAME) { -}, '3.9.1', {"requires": ["anim-base", "anim-easing", "anim-color", "matrix"]}); +}, '3.12.0', {"requires": ["anim-base", "anim-easing", "anim-color", "matrix"]}); diff --git a/lib/yuilib/3.9.1/build/anim-xy/anim-xy-debug.js b/lib/yuilib/3.12.0/anim-xy/anim-xy-debug.js old mode 100644 new mode 100755 similarity index 73% rename from lib/yuilib/3.9.1/build/anim-xy/anim-xy-debug.js rename to lib/yuilib/3.12.0/anim-xy/anim-xy-debug.js index 283f1d227d5..76f38afe86c --- a/lib/yuilib/3.9.1/build/anim-xy/anim-xy-debug.js +++ b/lib/yuilib/3.12.0/anim-xy/anim-xy-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('anim-xy', function (Y, NAME) { /** @@ -24,4 +30,4 @@ Y.Anim.behaviors.xy = { -}, '3.9.1', {"requires": ["anim-base", "node-screen"]}); +}, '3.12.0', {"requires": ["anim-base", "node-screen"]}); diff --git a/lib/yuilib/3.12.0/anim-xy/anim-xy-min.js b/lib/yuilib/3.12.0/anim-xy/anim-xy-min.js new file mode 100755 index 00000000000..2f2bf96dc1a --- /dev/null +++ b/lib/yuilib/3.12.0/anim-xy/anim-xy-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("anim-xy",function(e,t){var n=Number;e.Anim.behaviors.xy={set:function(e,t,r,i,s,o,u){e._node.setXY([u(s,n(r[0]),n(i[0])-n(r[0]),o),u(s,n(r[1]),n(i[1])-n(r[1]),o)])},get:function(e){return e._node.getXY()}}},"3.12.0",{requires:["anim-base","node-screen"]}); diff --git a/lib/yuilib/3.9.1/build/anim-xy/anim-xy.js b/lib/yuilib/3.12.0/anim-xy/anim-xy.js old mode 100644 new mode 100755 similarity index 73% rename from lib/yuilib/3.9.1/build/anim-xy/anim-xy.js rename to lib/yuilib/3.12.0/anim-xy/anim-xy.js index 283f1d227d5..76f38afe86c --- a/lib/yuilib/3.9.1/build/anim-xy/anim-xy.js +++ b/lib/yuilib/3.12.0/anim-xy/anim-xy.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('anim-xy', function (Y, NAME) { /** @@ -24,4 +30,4 @@ Y.Anim.behaviors.xy = { -}, '3.9.1', {"requires": ["anim-base", "node-screen"]}); +}, '3.12.0', {"requires": ["anim-base", "node-screen"]}); diff --git a/lib/yuilib/3.9.1/build/app-base/app-base-debug.js b/lib/yuilib/3.12.0/app-base/app-base-debug.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/app-base/app-base-debug.js rename to lib/yuilib/3.12.0/app-base/app-base-debug.js index 4ecab09888f..e884a26ff82 --- a/lib/yuilib/3.9.1/build/app-base/app-base-debug.js +++ b/lib/yuilib/3.12.0/app-base/app-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('app-base', function (Y, NAME) { /** @@ -1096,4 +1102,4 @@ Default `serverRouting` attribute value for all apps. **/ -}, '3.9.1', {"requires": ["classnamemanager", "pjax-base", "router", "view"]}); +}, '3.12.0', {"requires": ["classnamemanager", "pjax-base", "router", "view"]}); diff --git a/lib/yuilib/3.9.1/build/app-base/app-base-min.js b/lib/yuilib/3.12.0/app-base/app-base-min.js old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/app-base/app-base-min.js rename to lib/yuilib/3.12.0/app-base/app-base-min.js index 72137be10e4..612735536c3 --- a/lib/yuilib/3.9.1/build/app-base/app-base-min.js +++ b/lib/yuilib/3.12.0/app-base/app-base-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("app-base",function(e,t){var n=e.Lang,r=e.Object,i=e.PjaxBase,s=e.Router,o=e.View,u=e.ClassNameManager.getClassName,a=e.config.win,f;f=e.Base.create("app",e.Base,[o,s,i],{views:{},initializer:function(t){function i(t,r){n[r]=e.merge(n[r],t)}t||(t={});var n={};r.each(this.views,i),r.each(t.views,i),this.views=n,this._viewInfoMap={},this.after("activeViewChange",e.bind("_afterActiveViewChange",this)),this.get("serverRouting")||this._pjaxBindUI()},createView:function(t,i){var s=this.getViewInfo(t),u=s&&s.type||o,a,f;return a=n.isString(u)?r.getValue(e,u.split(".")):u,f=new a(i),this._viewInfoMap[e.stamp(f,!0)]=s,f},getViewInfo:function(t){return n.isString(t)?this.views[t]:t&&this._viewInfoMap[e.stamp(t,!0)]},render:function(){var t=e.App.CLASS_NAMES,n=this.get("container"),r=this.get("viewContainer"),i=this.get("activeView"),s=i&&i.get("container"),o=n.compareTo(r);return n.addClass(t.app),r.addClass(t.views),i&&!r.contains(s)&&r.appendChild(s),!n.contains(r)&&!o&&n.appendChild(r),this},showView:function(t,r,i,s){var o,u;return i||(i={}),s?i=e.merge(i,{callback:s}):n.isFunction(i)&&(i={callback:i}),n.isString(t)&&(o=this.getViewInfo(t),o&&o.preserve&&o.instance?(t=o.instance,this._viewInfoMap[e.stamp(t,!0)]=o):(t=this.createView(t,r),u=!0)),i.update&&!u&&t.setAttrs(r),"render"in i?i.render&&t.render():u&&t.render(),this._set("activeView",t,{options:i})},_attachView:function(e,t){if(!e)return;var n=this.getViewInfo(e),r=this.get("viewContainer");e.addTarget(this),n&&(n.instance=e),r[t?"prepend":"append"](e.get("container"))},_destroyContainer:function(){var t=e.App.CLASS_NAMES,n=this.get("container"),r=this.get("viewContainer"),i=n.compareTo(r);if(e.one("body").compareTo(n)){this.detachEvents(),n.removeClass(t.app),i?n.removeClass(t.views):r.remove(!0);return}r.remove(!0),i||n.remove(!0)},_detachView:function(t){if(!t)return;var n=this.getViewInfo(t)||{};n.preserve?t.remove():(t.destroy({remove:!0}),delete this._viewInfoMap[e.stamp(t,!0)],t===n.instance&&delete n.instance),t.removeTarget(this)},_getViewContainer:function(e){return!e&&!this._viewContainer&&(e=this._viewContainer=this.create(),this._set("viewContainer",e)),e},_initHtml5:function(){return this.get("serverRouting")===!1?!1:s.html5},_isChildView:function(e,t){var n=this.getViewInfo(e),r=this.getViewInfo(t);return n&&r?this.getViewInfo(n.parent)===r:!1},_isParentView:function(e,t){var n=this.getViewInfo(e),r=this.getViewInfo(t);return n&&r?this.getViewInfo(r.parent)===n:!1},_navigate:function(t,n){return this.get("serverRouting")||(n=e.merge({force:!0},n)),i.prototype._navigate.call(this,t,n)},_save:function(t,n){var r;return this.get("serverRouting")&&!this.get("html5")?this._hasSameOrigin(t)?(a&&(r=this._joinURL(t||""),n?a.location.replace(r):a.location=r),this):(e.error("Security error: The new URL must be of the same origin as the current URL."),this):s.prototype._save.apply(this,arguments)},_uiSetActiveView:function(e,t,n){n||(n={});var r=n.callback,i=this._isChildView(e,t),s=!i&&this._isParentView(e,t),o=!!n.prepend||s;if(e===t)return r&&r.call(this,e);this._attachView(e,o),this._detachView(t),r&&r.call(this,e)},_afterActiveViewChange:function(e){this._uiSetActiveView(e.newVal,e.prevVal,e.options)}},{ATTRS:{activeView:{value:null,readOnly:!0},container:{valueFn:function(){return e.one("body")}},html5:{valueFn:"_initHtml5"},linkSelector:{value:"a"},serverRouting:{valueFn:function(){return e.App.serverRouting},writeOnce:"initOnly"},viewContainer:{getter:"_getViewContainer",setter:e.one,writeOnce:!0}},_NON_ATTRS_CFG:["views"]}),e.namespace("App").Base=f,e.App=e.mix(e.Base.create("app",f,[]),e.App,!0),e.App.CLASS_NAMES={app:u("app"),views:u("app","views")}},"3.9.1",{requires:["classnamemanager","pjax-base","router","view"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("app-base",function(e,t){var n=e.Lang,r=e.Object,i=e.PjaxBase,s=e.Router,o=e.View,u=e.ClassNameManager.getClassName,a=e.config.win,f;f=e.Base.create("app",e.Base,[o,s,i],{views:{},initializer:function(t){function i(t,r){n[r]=e.merge(n[r],t)}t||(t={});var n={};r.each(this.views,i),r.each(t.views,i),this.views=n,this._viewInfoMap={},this.after("activeViewChange",e.bind("_afterActiveViewChange",this)),this.get("serverRouting")||this._pjaxBindUI()},createView:function(t,i){var s=this.getViewInfo(t),u=s&&s.type||o,a,f;return a=n.isString(u)?r.getValue(e,u.split(".")):u,f=new a(i),this._viewInfoMap[e.stamp(f,!0)]=s,f},getViewInfo:function(t){return n.isString(t)?this.views[t]:t&&this._viewInfoMap[e.stamp(t,!0)]},render:function(){var t=e.App.CLASS_NAMES,n=this.get("container"),r=this.get("viewContainer"),i=this.get("activeView"),s=i&&i.get("container"),o=n.compareTo(r);return n.addClass(t.app),r.addClass(t.views),i&&!r.contains(s)&&r.appendChild(s),!n.contains(r)&&!o&&n.appendChild(r),this},showView:function(t,r,i,s){var o,u;return i||(i={}),s?i=e.merge(i,{callback:s}):n.isFunction(i)&&(i={callback:i}),n.isString(t)&&(o=this.getViewInfo(t),o&&o.preserve&&o.instance?(t=o.instance,this._viewInfoMap[e.stamp(t,!0)]=o):(t=this.createView(t,r),u=!0)),i.update&&!u&&t.setAttrs(r),"render"in i?i.render&&t.render():u&&t.render(),this._set("activeView",t,{options:i})},_attachView:function(e,t){if(!e)return;var n=this.getViewInfo(e),r=this.get("viewContainer");e.addTarget(this),n&&(n.instance=e),r[t?"prepend":"append"](e.get("container"))},_destroyContainer:function(){var t=e.App.CLASS_NAMES,n=this.get("container"),r=this.get("viewContainer"),i=n.compareTo(r);if(e.one("body").compareTo(n)){this.detachEvents(),n.removeClass(t.app),i?n.removeClass(t.views):r.remove(!0);return}r.remove(!0),i||n.remove(!0)},_detachView:function(t){if(!t)return;var n=this.getViewInfo(t)||{};n.preserve?t.remove():(t.destroy({remove:!0}),delete this._viewInfoMap[e.stamp(t,!0)],t===n.instance&&delete n.instance),t.removeTarget(this)},_getViewContainer:function(e){return!e&&!this._viewContainer&&(e=this._viewContainer=this.create(),this._set("viewContainer",e)),e},_initHtml5:function(){return this.get("serverRouting")===!1?!1:s.html5},_isChildView:function(e,t){var n=this.getViewInfo(e),r=this.getViewInfo(t);return n&&r?this.getViewInfo(n.parent)===r:!1},_isParentView:function(e,t){var n=this.getViewInfo(e),r=this.getViewInfo(t);return n&&r?this.getViewInfo(r.parent)===n:!1},_navigate:function(t,n){return this.get("serverRouting")||(n=e.merge({force:!0},n)),i.prototype._navigate.call(this,t,n)},_save:function(t,n){var r;return this.get("serverRouting")&&!this.get("html5")?this._hasSameOrigin(t)?(a&&(r=this._joinURL(t||""),n?a.location.replace(r):a.location=r),this):(e.error("Security error: The new URL must be of the same origin as the current URL."),this):s.prototype._save.apply(this,arguments)},_uiSetActiveView:function(e,t,n){n||(n={});var r=n.callback,i=this._isChildView(e,t),s=!i&&this._isParentView(e,t),o=!!n.prepend||s;if(e===t)return r&&r.call(this,e);this._attachView(e,o),this._detachView(t),r&&r.call(this,e)},_afterActiveViewChange:function(e){this._uiSetActiveView(e.newVal,e.prevVal,e.options)}},{ATTRS:{activeView:{value:null,readOnly:!0},container:{valueFn:function(){return e.one("body")}},html5:{valueFn:"_initHtml5"},linkSelector:{value:"a"},serverRouting:{valueFn:function(){return e.App.serverRouting},writeOnce:"initOnly"},viewContainer:{getter:"_getViewContainer",setter:e.one,writeOnce:!0}},_NON_ATTRS_CFG:["views"]}),e.namespace("App").Base=f,e.App=e.mix(e.Base.create("app",f,[]),e.App,!0),e.App.CLASS_NAMES={app:u("app"),views:u("app","views")}},"3.12.0",{requires:["classnamemanager","pjax-base","router","view"]}); diff --git a/lib/yuilib/3.9.1/build/app-base/app-base.js b/lib/yuilib/3.12.0/app-base/app-base.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/app-base/app-base.js rename to lib/yuilib/3.12.0/app-base/app-base.js index 4ecab09888f..e884a26ff82 --- a/lib/yuilib/3.9.1/build/app-base/app-base.js +++ b/lib/yuilib/3.12.0/app-base/app-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('app-base', function (Y, NAME) { /** @@ -1096,4 +1102,4 @@ Default `serverRouting` attribute value for all apps. **/ -}, '3.9.1', {"requires": ["classnamemanager", "pjax-base", "router", "view"]}); +}, '3.12.0', {"requires": ["classnamemanager", "pjax-base", "router", "view"]}); diff --git a/lib/yuilib/3.9.1/build/app-content/app-content-debug.js b/lib/yuilib/3.12.0/app-content/app-content-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/app-content/app-content-debug.js rename to lib/yuilib/3.12.0/app-content/app-content-debug.js index 80f0fd2d2e5..7c4b1238be8 --- a/lib/yuilib/3.9.1/build/app-content/app-content-debug.js +++ b/lib/yuilib/3.12.0/app-content/app-content-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('app-content', function (Y, NAME) { /** @@ -232,4 +238,4 @@ Y.App.Content = AppContent; Y.Base.mix(Y.App, [AppContent]); -}, '3.9.1', {"requires": ["app-base", "pjax-content"]}); +}, '3.12.0', {"requires": ["app-base", "pjax-content"]}); diff --git a/lib/yuilib/3.9.1/build/app-content/app-content-min.js b/lib/yuilib/3.12.0/app-content/app-content-min.js old mode 100644 new mode 100755 similarity index 80% rename from lib/yuilib/3.9.1/build/app-content/app-content-min.js rename to lib/yuilib/3.12.0/app-content/app-content-min.js index e4f2a1a67cc..0e43d638756 --- a/lib/yuilib/3.9.1/build/app-content/app-content-min.js +++ b/lib/yuilib/3.12.0/app-content/app-content-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("app-content",function(e,t){function r(){n.apply(this,arguments)}var n=e.PjaxContent;r.route=["loadContent","_contentRoute"],r.prototype={showContent:function(t,n,r){t=e.one(t),typeof n=="function"&&(n={callback:n},r=null),n=e.merge({render:!1},n);var i=n.view||"",s=typeof i=="string"?i:i.name,o=typeof i!="string"?i.config:{},u=this.getViewInfo(s),a,f,l,c;return delete n.view,t&&t.isFragment()&&t.get("childNodes").size()===1&&(t=t.get("firstChild")),t&&t.get("nodeType")===1?a=t:(l=u&&u.type||e.View,c=typeof l=="string"?e.Object.getValue(e,l.split(".")):l,f=c.prototype.containerTemplate,a=e.Node.create(f),a.append(t)),o=e.merge(o,{container:a}),this.showView(s,o,n,r)},_contentRoute:function(t,n,r){var i=n.content,s=e.config.doc,o;if(!i||!i.node)return r();i.title&&s&&(o=this.onceAfter("activeViewChange",function(){s.title=i.title})),this.showContent(i.node),o&&o.detach(),r()}},r.ATTRS=e.Attribute.protectAttrs(n.ATTRS),e.mix(r,n,!1,null,1),e.App.Content=r,e.Base.mix(e.App,[r])},"3.9.1",{requires:["app-base","pjax-content"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("app-content",function(e,t){function r(){n.apply(this,arguments)}var n=e.PjaxContent;r.route=["loadContent","_contentRoute"],r.prototype={showContent:function(t,n,r){t=e.one(t),typeof n=="function"&&(n={callback:n},r=null),n=e.merge({render:!1},n);var i=n.view||"",s=typeof i=="string"?i:i.name,o=typeof i!="string"?i.config:{},u=this.getViewInfo(s),a,f,l,c;return delete n.view,t&&t.isFragment()&&t.get("childNodes").size()===1&&(t=t.get("firstChild")),t&&t.get("nodeType")===1?a=t:(l=u&&u.type||e.View,c=typeof l=="string"?e.Object.getValue(e,l.split(".")):l,f=c.prototype.containerTemplate,a=e.Node.create(f),a.append(t)),o=e.merge(o,{container:a}),this.showView(s,o,n,r)},_contentRoute:function(t,n,r){var i=n.content,s=e.config.doc,o;if(!i||!i.node)return r();i.title&&s&&(o=this.onceAfter("activeViewChange",function(){s.title=i.title})),this.showContent(i.node),o&&o.detach(),r()}},r.ATTRS=e.Attribute.protectAttrs(n.ATTRS),e.mix(r,n,!1,null,1),e.App.Content=r,e.Base.mix(e.App,[r])},"3.12.0",{requires:["app-base","pjax-content"]}); diff --git a/lib/yuilib/3.9.1/build/app-content/app-content.js b/lib/yuilib/3.12.0/app-content/app-content.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/app-content/app-content.js rename to lib/yuilib/3.12.0/app-content/app-content.js index 80f0fd2d2e5..7c4b1238be8 --- a/lib/yuilib/3.9.1/build/app-content/app-content.js +++ b/lib/yuilib/3.12.0/app-content/app-content.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('app-content', function (Y, NAME) { /** @@ -232,4 +238,4 @@ Y.App.Content = AppContent; Y.Base.mix(Y.App, [AppContent]); -}, '3.9.1', {"requires": ["app-base", "pjax-content"]}); +}, '3.12.0', {"requires": ["app-base", "pjax-content"]}); diff --git a/lib/yuilib/3.9.1/build/app-transitions-css/app-transitions-css-min.css b/lib/yuilib/3.12.0/app-transitions-css/app-transitions-css-min.css old mode 100644 new mode 100755 similarity index 81% rename from lib/yuilib/3.9.1/build/app-transitions-css/app-transitions-css-min.css rename to lib/yuilib/3.12.0/app-transitions-css/app-transitions-css-min.css index aa01464456b..d710f9864fa --- a/lib/yuilib/3.9.1/build/app-transitions-css/app-transitions-css-min.css +++ b/lib/yuilib/3.12.0/app-transitions-css/app-transitions-css-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-app-transitioning .yui3-app-views,.yui3-app-views.yui3-app-transitioning{overflow-x:hidden;position:relative;white-space:nowrap;letter-spacing:-0.31em;text-rendering:optimizespeed}.opera-only :-o-prefocus,.yui3-app-transitioning .yui3-app-views,.yui3-app-views.yui3-app-transitioning{word-spacing:-0.43em}.yui3-app-transitioning .yui3-app-views>*,.yui3-app-views.yui3-app-transitioning>*{display:inline-block;letter-spacing:normal;word-spacing:normal;vertical-align:top;text-rendering:auto;width:100%;white-space:normal;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#yui3-css-stamp.app-transitions-css{display:none} diff --git a/lib/yuilib/3.9.1/build/app-transitions-css/app-transitions-css.css b/lib/yuilib/3.12.0/app-transitions-css/app-transitions-css.css old mode 100644 new mode 100755 similarity index 88% rename from lib/yuilib/3.9.1/build/app-transitions-css/app-transitions-css.css rename to lib/yuilib/3.12.0/app-transitions-css/app-transitions-css.css index 590e653c9c1..0a77507eb9d --- a/lib/yuilib/3.9.1/build/app-transitions-css/app-transitions-css.css +++ b/lib/yuilib/3.12.0/app-transitions-css/app-transitions-css.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-app-transitioning .yui3-app-views, .yui3-app-views.yui3-app-transitioning { overflow-x: hidden; diff --git a/lib/yuilib/3.9.1/build/app-transitions-native/app-transitions-native-debug.js b/lib/yuilib/3.12.0/app-transitions-native/app-transitions-native-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/app-transitions-native/app-transitions-native-debug.js rename to lib/yuilib/3.12.0/app-transitions-native/app-transitions-native-debug.js index 6fdf5bab50d..57424e438cb --- a/lib/yuilib/3.9.1/build/app-transitions-native/app-transitions-native-debug.js +++ b/lib/yuilib/3.12.0/app-transitions-native/app-transitions-native-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('app-transitions-native', function (Y, NAME) { /** @@ -351,4 +357,4 @@ Y.App.TransitionsNative = AppTransitionsNative; Y.Base.mix(Y.App, [AppTransitionsNative]); -}, '3.9.1', {"requires": ["app-transitions", "app-transitions-css", "parallel", "transition"]}); +}, '3.12.0', {"requires": ["app-transitions", "app-transitions-css", "parallel", "transition"]}); diff --git a/lib/yuilib/3.9.1/build/app-transitions-native/app-transitions-native-min.js b/lib/yuilib/3.12.0/app-transitions-native/app-transitions-native-min.js old mode 100644 new mode 100755 similarity index 90% rename from lib/yuilib/3.9.1/build/app-transitions-native/app-transitions-native-min.js rename to lib/yuilib/3.12.0/app-transitions-native/app-transitions-native-min.js index f1a8f0ac56a..87db4a21dc3 --- a/lib/yuilib/3.9.1/build/app-transitions-native/app-transitions-native-min.js +++ b/lib/yuilib/3.12.0/app-transitions-native/app-transitions-native-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("app-transitions-native",function(e,t){function r(){}var n=e.App.Transitions;r.prototype={initializer:function(){this._transitioning=!1,this._viewTransitionQueue=[],e.Do.before(this._queueActiveView,this,"_uiSetActiveView")},_dequeueActiveView:function(){var t=this._viewTransitionQueue,n=t.shift(),r;n&&(t.length&&(r=e.merge(n[2],{transition:!1}),n.splice(2,1,r)),this._uiTransitionActiveView.apply(this,n))},_getFx:function(e,t,r){var i=n.FX,s=this.get("transitions");return r===!1||!s?null:r?i[r]:this._isChildView(e,t)?i[s.toChild]:this._isParentView(e,t)?i[s.toParent]:i[s.navigate]},_queueActiveView:function(){var t=e.Array(arguments,0,!0);return this._viewTransitionQueue.push(t),this._transitioning||this._dequeueActiveView(),new e.Do.Prevent},_uiTransitionActiveView:function(t,n,r){function p(){return this._detachView(n),s.removeClass(o),i&&i.call(this,t),this._transitioning=!1,this._dequeueActiveView()}r||(r={});var i=r.callback,s,o,u,a,f,l,c,h;if(t===n)return i&&i.call(this,t),this._transitioning=!1,this._dequeueActiveView();l=this._getFx(t,n,r.transition),u=this._isChildView(t,n),a=!u&&this._isParentView(t,n),f=!!r.prepend||a;if(!l)return this._attachView(t,f),this._detachView(n),i&&i.call(this,t),this._transitioning=!1,this._dequeueActiveView();this._transitioning=!0,s=this.get("container"),o=e.App.CLASS_NAMES.transitioning,s.addClass(o),this._attachView(t,f),h=new e.Parallel({context:this}),c={crossView:!!n&&!!t,prepended:f},t&&l.viewIn&&t.get("container").transition(l.viewIn,c,h.add()),n&&l.viewOut&&n.get("container").transition(l.viewOut,c,h.add()),h.done(p)}},e.mix(e.Transition.fx,{"app:fadeIn":{opacity:1,duration:.3,on:{start:function(e){var t={opacity:0},n=e.config;n.crossView&&!n.prepended&&(t.transform="translateX(-100%)"),this.setStyles(t)},end:function(){this.setStyle("transform","translateX(0)")}}},"app:fadeOut":{opacity:0,duration:.3,on:{start:function(e){var t={opacity:1},n=e.config;n.crossView&&n.prepended&&(t.transform="translateX(-100%)"),this.setStyles(t)},end:function(){this.setStyle("transform","translateX(0)")}}},"app:slideLeft":{duration:.3,transform:"translateX(-100%)",on:{start:function(){this.setStyles({opacity:1,transform:"translateX(0%)"})},end:function(){this.setStyle("transform","translateX(0)")}}},"app:slideRight":{duration:.3,transform:"translateX(0)",on:{start:function(){this.setStyles({opacity:1,transform:"translateX(-100%)"})},end:function(){this.setStyle("transform","translateX(0)")}}}}),e.App.TransitionsNative=r,e.Base.mix(e.App,[r])},"3.9.1",{requires:["app-transitions","app-transitions-css","parallel","transition"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("app-transitions-native",function(e,t){function r(){}var n=e.App.Transitions;r.prototype={initializer:function(){this._transitioning=!1,this._viewTransitionQueue=[],e.Do.before(this._queueActiveView,this,"_uiSetActiveView")},_dequeueActiveView:function(){var t=this._viewTransitionQueue,n=t.shift(),r;n&&(t.length&&(r=e.merge(n[2],{transition:!1}),n.splice(2,1,r)),this._uiTransitionActiveView.apply(this,n))},_getFx:function(e,t,r){var i=n.FX,s=this.get("transitions");return r===!1||!s?null:r?i[r]:this._isChildView(e,t)?i[s.toChild]:this._isParentView(e,t)?i[s.toParent]:i[s.navigate]},_queueActiveView:function(){var t=e.Array(arguments,0,!0);return this._viewTransitionQueue.push(t),this._transitioning||this._dequeueActiveView(),new e.Do.Prevent},_uiTransitionActiveView:function(t,n,r){function p(){return this._detachView(n),s.removeClass(o),i&&i.call(this,t),this._transitioning=!1,this._dequeueActiveView()}r||(r={});var i=r.callback,s,o,u,a,f,l,c,h;if(t===n)return i&&i.call(this,t),this._transitioning=!1,this._dequeueActiveView();l=this._getFx(t,n,r.transition),u=this._isChildView(t,n),a=!u&&this._isParentView(t,n),f=!!r.prepend||a;if(!l)return this._attachView(t,f),this._detachView(n),i&&i.call(this,t),this._transitioning=!1,this._dequeueActiveView();this._transitioning=!0,s=this.get("container"),o=e.App.CLASS_NAMES.transitioning,s.addClass(o),this._attachView(t,f),h=new e.Parallel({context:this}),c={crossView:!!n&&!!t,prepended:f},t&&l.viewIn&&t.get("container").transition(l.viewIn,c,h.add()),n&&l.viewOut&&n.get("container").transition(l.viewOut,c,h.add()),h.done(p)}},e.mix(e.Transition.fx,{"app:fadeIn":{opacity:1,duration:.3,on:{start:function(e){var t={opacity:0},n=e.config;n.crossView&&!n.prepended&&(t.transform="translateX(-100%)"),this.setStyles(t)},end:function(){this.setStyle("transform","translateX(0)")}}},"app:fadeOut":{opacity:0,duration:.3,on:{start:function(e){var t={opacity:1},n=e.config;n.crossView&&n.prepended&&(t.transform="translateX(-100%)"),this.setStyles(t)},end:function(){this.setStyle("transform","translateX(0)")}}},"app:slideLeft":{duration:.3,transform:"translateX(-100%)",on:{start:function(){this.setStyles({opacity:1,transform:"translateX(0%)"})},end:function(){this.setStyle("transform","translateX(0)")}}},"app:slideRight":{duration:.3,transform:"translateX(0)",on:{start:function(){this.setStyles({opacity:1,transform:"translateX(-100%)"})},end:function(){this.setStyle("transform","translateX(0)")}}}}),e.App.TransitionsNative=r,e.Base.mix(e.App,[r])},"3.12.0",{requires:["app-transitions","app-transitions-css","parallel","transition"]}); diff --git a/lib/yuilib/3.9.1/build/app-transitions-native/app-transitions-native.js b/lib/yuilib/3.12.0/app-transitions-native/app-transitions-native.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/app-transitions-native/app-transitions-native.js rename to lib/yuilib/3.12.0/app-transitions-native/app-transitions-native.js index 6fdf5bab50d..57424e438cb --- a/lib/yuilib/3.9.1/build/app-transitions-native/app-transitions-native.js +++ b/lib/yuilib/3.12.0/app-transitions-native/app-transitions-native.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('app-transitions-native', function (Y, NAME) { /** @@ -351,4 +357,4 @@ Y.App.TransitionsNative = AppTransitionsNative; Y.Base.mix(Y.App, [AppTransitionsNative]); -}, '3.9.1', {"requires": ["app-transitions", "app-transitions-css", "parallel", "transition"]}); +}, '3.12.0', {"requires": ["app-transitions", "app-transitions-css", "parallel", "transition"]}); diff --git a/lib/yuilib/3.9.1/build/app-transitions/app-transitions-debug.js b/lib/yuilib/3.12.0/app-transitions/app-transitions-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/app-transitions/app-transitions-debug.js rename to lib/yuilib/3.12.0/app-transitions/app-transitions-debug.js index c7bf8402918..fd267e2f6e8 --- a/lib/yuilib/3.9.1/build/app-transitions/app-transitions-debug.js +++ b/lib/yuilib/3.12.0/app-transitions/app-transitions-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('app-transitions', function (Y, NAME) { /** @@ -240,4 +246,4 @@ Y.mix(Y.App.CLASS_NAMES, { }); -}, '3.9.1', {"requires": ["app-base"]}); +}, '3.12.0', {"requires": ["app-base"]}); diff --git a/lib/yuilib/3.9.1/build/app-transitions/app-transitions-min.js b/lib/yuilib/3.12.0/app-transitions/app-transitions-min.js old mode 100644 new mode 100755 similarity index 74% rename from lib/yuilib/3.9.1/build/app-transitions/app-transitions-min.js rename to lib/yuilib/3.12.0/app-transitions/app-transitions-min.js index 776391a6230..0c9e9c2d1cd --- a/lib/yuilib/3.9.1/build/app-transitions/app-transitions-min.js +++ b/lib/yuilib/3.12.0/app-transitions/app-transitions-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("app-transitions",function(e,t){function n(){}n.ATTRS={transitions:{setter:"_setTransitions",value:!1}},n.FX={fade:{viewIn:"app:fadeIn",viewOut:"app:fadeOut"},slideLeft:{viewIn:"app:slideLeft",viewOut:"app:slideLeft"},slideRight:{viewIn:"app:slideRight",viewOut:"app:slideRight"}},n.prototype={transitions:{navigate:"fade",toChild:"slideLeft",toParent:"slideRight"},_setTransitions:function(t){var n=this.transitions;return t&&t===!0?e.merge(n):t}},e.App.Transitions=n,e.Base.mix(e.App,[n]),e.mix(e.App.CLASS_NAMES,{transitioning:e.ClassNameManager.getClassName("app","transitioning")})},"3.9.1",{requires:["app-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("app-transitions",function(e,t){function n(){}n.ATTRS={transitions:{setter:"_setTransitions",value:!1}},n.FX={fade:{viewIn:"app:fadeIn",viewOut:"app:fadeOut"},slideLeft:{viewIn:"app:slideLeft",viewOut:"app:slideLeft"},slideRight:{viewIn:"app:slideRight",viewOut:"app:slideRight"}},n.prototype={transitions:{navigate:"fade",toChild:"slideLeft",toParent:"slideRight"},_setTransitions:function(t){var n=this.transitions;return t&&t===!0?e.merge(n):t}},e.App.Transitions=n,e.Base.mix(e.App,[n]),e.mix(e.App.CLASS_NAMES,{transitioning:e.ClassNameManager.getClassName("app","transitioning")})},"3.12.0",{requires:["app-base"]}); diff --git a/lib/yuilib/3.9.1/build/app-transitions/app-transitions.js b/lib/yuilib/3.12.0/app-transitions/app-transitions.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/app-transitions/app-transitions.js rename to lib/yuilib/3.12.0/app-transitions/app-transitions.js index c7bf8402918..fd267e2f6e8 --- a/lib/yuilib/3.9.1/build/app-transitions/app-transitions.js +++ b/lib/yuilib/3.12.0/app-transitions/app-transitions.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('app-transitions', function (Y, NAME) { /** @@ -240,4 +246,4 @@ Y.mix(Y.App.CLASS_NAMES, { }); -}, '3.9.1', {"requires": ["app-base"]}); +}, '3.12.0', {"requires": ["app-base"]}); diff --git a/lib/yuilib/3.9.1/build/array-extras/array-extras-debug.js b/lib/yuilib/3.12.0/array-extras/array-extras-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/array-extras/array-extras-debug.js rename to lib/yuilib/3.12.0/array-extras/array-extras-debug.js index b8751f86892..4cec7489fac --- a/lib/yuilib/3.9.1/build/array-extras/array-extras-debug.js +++ b/lib/yuilib/3.12.0/array-extras/array-extras-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('array-extras', function (Y, NAME) { /** @@ -398,4 +404,4 @@ A.flatten = function(a) { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/array-extras/array-extras-min.js b/lib/yuilib/3.12.0/array-extras/array-extras-min.js old mode 100644 new mode 100755 similarity index 88% rename from lib/yuilib/3.9.1/build/array-extras/array-extras-min.js rename to lib/yuilib/3.12.0/array-extras/array-extras-min.js index b93477d3d8a..207b16ccc3a --- a/lib/yuilib/3.9.1/build/array-extras/array-extras-min.js +++ b/lib/yuilib/3.12.0/array-extras/array-extras-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("array-extras",function(e,t){var n=e.Array,r=e.Lang,i=Array.prototype;n.lastIndexOf=r._isNative(i.lastIndexOf)?function(e,t,n){return n||n===0?e.lastIndexOf(t,n):e.lastIndexOf(t)}:function(e,t,n){var r=e.length,i=r-1;if(n||n===0)i=Math.min(n<0?r+n:n,r);if(i>-1&&r>0)for(;i>-1;--i)if(i in e&&e[i]===t)return i;return-1},n.unique=function(e,t){var n=0,r=e.length,i=[],s,o,u,a;e:for(;n-1&&r>0)for(;i>-1;--i)if(i in e&&e[i]===t)return i;return-1},n.unique=function(e,t){var n=0,r=e.length,i=[],s,o,u,a;e:for(;n=0;--r)if(n.call(this,e,this.item(r))){this._items.splice(r,1);if(!t)break}return this},itemsAreEqual:function(e,t){return e===t}})},"3.9.1",{requires:["arraylist"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("arraylist-add",function(e,t){e.mix(e.ArrayList.prototype,{add:function(t,n){var r=this._items;return e.Lang.isNumber(n)?r.splice(n,0,t):r.push(t),this},remove:function(e,t,n){n=n||this.itemsAreEqual;for(var r=this._items.length-1;r>=0;--r)if(n.call(this,e,this.item(r))){this._items.splice(r,1);if(!t)break}return this},itemsAreEqual:function(e,t){return e===t}})},"3.12.0",{requires:["arraylist"]}); diff --git a/lib/yuilib/3.9.1/build/arraylist-add/arraylist-add.js b/lib/yuilib/3.12.0/arraylist-add/arraylist-add.js old mode 100644 new mode 100755 similarity index 92% rename from lib/yuilib/3.9.1/build/arraylist-add/arraylist-add.js rename to lib/yuilib/3.12.0/arraylist-add/arraylist-add.js index 7712cc971c7..970f64ec191 --- a/lib/yuilib/3.9.1/build/arraylist-add/arraylist-add.js +++ b/lib/yuilib/3.12.0/arraylist-add/arraylist-add.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('arraylist-add', function (Y, NAME) { /** @@ -85,4 +91,4 @@ Y.mix(Y.ArrayList.prototype, { }); -}, '3.9.1', {"requires": ["arraylist"]}); +}, '3.12.0', {"requires": ["arraylist"]}); diff --git a/lib/yuilib/3.9.1/build/arraylist-filter/arraylist-filter-debug.js b/lib/yuilib/3.12.0/arraylist-filter/arraylist-filter-debug.js old mode 100644 new mode 100755 similarity index 86% rename from lib/yuilib/3.9.1/build/arraylist-filter/arraylist-filter-debug.js rename to lib/yuilib/3.12.0/arraylist-filter/arraylist-filter-debug.js index f451f9c33a1..933a335b137 --- a/lib/yuilib/3.9.1/build/arraylist-filter/arraylist-filter-debug.js +++ b/lib/yuilib/3.12.0/arraylist-filter/arraylist-filter-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('arraylist-filter', function (Y, NAME) { /** @@ -43,4 +49,4 @@ Y.mix(Y.ArrayList.prototype, { }); -}, '3.9.1', {"requires": ["arraylist"]}); +}, '3.12.0', {"requires": ["arraylist"]}); diff --git a/lib/yuilib/3.12.0/arraylist-filter/arraylist-filter-min.js b/lib/yuilib/3.12.0/arraylist-filter/arraylist-filter-min.js new file mode 100755 index 00000000000..f8794fa6b2b --- /dev/null +++ b/lib/yuilib/3.12.0/arraylist-filter/arraylist-filter-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("arraylist-filter",function(e,t){e.mix(e.ArrayList.prototype,{filter:function(t){var n=[];return e.Array.each(this._items,function(e,r){e=this.item(r),t(e)&&n.push(e)},this),new this.constructor(n)}})},"3.12.0",{requires:["arraylist"]}); diff --git a/lib/yuilib/3.9.1/build/arraylist-filter/arraylist-filter.js b/lib/yuilib/3.12.0/arraylist-filter/arraylist-filter.js old mode 100644 new mode 100755 similarity index 86% rename from lib/yuilib/3.9.1/build/arraylist-filter/arraylist-filter.js rename to lib/yuilib/3.12.0/arraylist-filter/arraylist-filter.js index f451f9c33a1..933a335b137 --- a/lib/yuilib/3.9.1/build/arraylist-filter/arraylist-filter.js +++ b/lib/yuilib/3.12.0/arraylist-filter/arraylist-filter.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('arraylist-filter', function (Y, NAME) { /** @@ -43,4 +49,4 @@ Y.mix(Y.ArrayList.prototype, { }); -}, '3.9.1', {"requires": ["arraylist"]}); +}, '3.12.0', {"requires": ["arraylist"]}); diff --git a/lib/yuilib/3.9.1/build/arraylist/arraylist-debug.js b/lib/yuilib/3.12.0/arraylist/arraylist-debug.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/arraylist/arraylist-debug.js rename to lib/yuilib/3.12.0/arraylist/arraylist-debug.js index cb809a7a926..fff7962d577 --- a/lib/yuilib/3.9.1/build/arraylist/arraylist-debug.js +++ b/lib/yuilib/3.12.0/arraylist/arraylist-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('arraylist', function (Y, NAME) { /** @@ -80,7 +86,7 @@ ArrayListProto = { *

    The callback signature is callback( item, index ).

    * *

    Unlike each, if the callback returns true, the - * iteratation will stop.

    + * iteration will stop.

    * * @method some * @param fn { Function } the function to execute @@ -212,4 +218,4 @@ Y.mix( ArrayList, { Y.ArrayList = ArrayList; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/arraylist/arraylist-min.js b/lib/yuilib/3.12.0/arraylist/arraylist-min.js old mode 100644 new mode 100755 similarity index 79% rename from lib/yuilib/3.9.1/build/arraylist/arraylist-min.js rename to lib/yuilib/3.12.0/arraylist/arraylist-min.js index f2c702848da..c28cc990169 --- a/lib/yuilib/3.9.1/build/arraylist/arraylist-min.js +++ b/lib/yuilib/3.12.0/arraylist/arraylist-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("arraylist",function(e,t){function s(t){t!==undefined?this._items=e.Lang.isArray(t)?t:n(t):this._items=this._items||[]}var n=e.Array,r=n.each,i;i={item:function(e){return this._items[e]},each:function(e,t){return r(this._items,function(n,r){n=this.item(r),e.call(t||n,n,r,this)},this),this},some:function(e,t){return n.some(this._items,function(n,r){return n=this.item(r),e.call(t||n,n,r,this)},this)},indexOf:function(e){return n.indexOf(this._items,e)},size:function(){return this._items.length},isEmpty:function(){return!this.size()},toJSON:function(){return this._items}},i._item=i.item,e.mix(s.prototype,i),e.mix(s,{addMethod:function(e,t){t=n(t),r(t,function(t){e[t]=function(){var e=n(arguments,0,!0),i=[];return r(this._items,function(n,r){n=this._item(r);var s=n[t].apply(n,e);s!==undefined&&s!==n&&(i[r]=s)},this),i.length?i:this}})}}),e.ArrayList=s},"3.9.1",{requires:["yui-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("arraylist",function(e,t){function s(t){t!==undefined?this._items=e.Lang.isArray(t)?t:n(t):this._items=this._items||[]}var n=e.Array,r=n.each,i;i={item:function(e){return this._items[e]},each:function(e,t){return r(this._items,function(n,r){n=this.item(r),e.call(t||n,n,r,this)},this),this},some:function(e,t){return n.some(this._items,function(n,r){return n=this.item(r),e.call(t||n,n,r,this)},this)},indexOf:function(e){return n.indexOf(this._items,e)},size:function(){return this._items.length},isEmpty:function(){return!this.size()},toJSON:function(){return this._items}},i._item=i.item,e.mix(s.prototype,i),e.mix(s,{addMethod:function(e,t){t=n(t),r(t,function(t){e[t]=function(){var e=n(arguments,0,!0),i=[];return r(this._items,function(n,r){n=this._item(r);var s=n[t].apply(n,e);s!==undefined&&s!==n&&(i[r]=s)},this),i.length?i:this}})}}),e.ArrayList=s},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/arraylist/arraylist.js b/lib/yuilib/3.12.0/arraylist/arraylist.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/arraylist/arraylist.js rename to lib/yuilib/3.12.0/arraylist/arraylist.js index cb809a7a926..fff7962d577 --- a/lib/yuilib/3.9.1/build/arraylist/arraylist.js +++ b/lib/yuilib/3.12.0/arraylist/arraylist.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('arraylist', function (Y, NAME) { /** @@ -80,7 +86,7 @@ ArrayListProto = { *

    The callback signature is callback( item, index ).

    * *

    Unlike each, if the callback returns true, the - * iteratation will stop.

    + * iteration will stop.

    * * @method some * @param fn { Function } the function to execute @@ -212,4 +218,4 @@ Y.mix( ArrayList, { Y.ArrayList = ArrayList; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.12.0/arraysort/arraysort-debug.js b/lib/yuilib/3.12.0/arraysort/arraysort-debug.js new file mode 100755 index 00000000000..ef8c350c2a3 --- /dev/null +++ b/lib/yuilib/3.12.0/arraysort/arraysort-debug.js @@ -0,0 +1,188 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('arraysort', function (Y, NAME) { + +/*jshint expr:true, onevar:false */ + +/** +Provides comparator functions useful for sorting arrays. + +@module arraysort +**/ + +var LANG = Y.Lang, + ISVALUE = LANG.isValue, + ISSTRING = LANG.isString; + +/** +Provides comparator functions useful for sorting arrays. + +@class ArraySort +@static +**/ + +var ArraySort = Y.ArraySort = { + // -- Public Methods ------------------------------------------------------- + + /** + Comparator function for simple case-insensitive sorting of an array of + strings. + + @method compare + @param a {Object} First sort argument. + @param b {Object} Second sort argument. + @param desc {Boolean} `true` if sort direction is descending, `false` if + sort direction is ascending. + @return {Boolean} -1 when a < b. 0 when a == b. 1 when a > b. + @static + */ + compare: function(a, b, desc) { + if(!ISVALUE(a)) { + if(!ISVALUE(b)) { + return 0; + } + else { + return 1; + } + } + else if(!ISVALUE(b)) { + return -1; + } + + if(ISSTRING(a)) { + a = a.toLowerCase(); + } + if(ISSTRING(b)) { + b = b.toLowerCase(); + } + if(a < b) { + return (desc) ? 1 : -1; + } + else if (a > b) { + return (desc) ? -1 : 1; + } + else { + return 0; + } + }, + + /** + Performs a natural-order comparison of two strings or numbers (or a string + and a number). This ensures that a value like 'foo2' will be sorted before + 'foo10', whereas a standard ASCII sort would sort 'foo10' first. + + @example + + var items = ['item10', 'item2', 'item1', 10, '1', 2]; + + items.sort(Y.ArraySort.naturalCompare); + console.log(items); // => ['1', 2, 10, 'item1', 'item2', 'item10'] + + @method naturalCompare + @param {Number|String} a First value to compare. + @param {Number|String} b Second value to compare. + @param {Object} [options] Options. + @param {Boolean} [options.caseSensitive=false] If `true`, a + case-sensitive comparison will be performed. By default the + comparison is case-insensitive. + @param {Boolean} [options.descending=false] If `true`, the sort order + will be reversed so that larger values are sorted before smaller + values. + @return {Number} `0` if the two items are equal, a negative number if _a_ + should be sorted before _b_, or a positive number if _b_ should be + sorted before _a_. + @static + @since 3.11.0 + **/ + naturalCompare: function (a, b, options) { + // Coerce `a` and `b` to strings. + a += ''; + b += ''; + + // Convert `a` and `b` to lowercase unless `options.caseSensitive` is + // truthy. + if (!options || !options.caseSensitive) { + a = a.toLowerCase(); + b = b.toLowerCase(); + } + + // Split `a` and `b` into alpha parts and numeric parts. + var aParts = ArraySort._splitAlphaNum(a), + bParts = ArraySort._splitAlphaNum(b), + length = Math.min(aParts.length, bParts.length), + result = 0, + + aPart, + bPart, + i; + + // Compare each part of `a` with each part of `b`. + for (i = 0; i < length; i++) { + aPart = aParts[i]; + bPart = bParts[i]; + + // If the two parts aren't equal, compare them and stop iterating. + if (aPart !== bPart) { + // First, try comparing them as numbers. + result = aPart - bPart; + + // If that didn't work, compare them as strings. This falsiness + // check works because `result` can't be 0 (we checked for + // equality above) and NaN is falsy. + if (!result) { + result = aPart > bPart ? 1 : -1; + } + + // At this point we know enough to be able to sort the two + // strings, so we don't need to compare any more parts. + break; + } + } + + // If we get here and `result` is still 0, then sort the shorter string + // before the longer string. + result || (result = a.length - b.length); + + // Return the result, flipping the order if `options.descending` is + // truthy. + return options && options.descending ? -result : result; + }, + + // -- Protected Methods ---------------------------------------------------- + + /** + Splits a string into an array of alpha character and digit character parts. + + @example + + Y.ArraySort._splitAlphaNum('abc123def456'); + // => ['abc', '123', 'def', '456'] + + @method _splitAlphaNum + @param {String} string String to split. + @return {String[]} Array of alpha parts and digit parts. + @protected + @static + @since 3.11.0 + **/ + _splitAlphaNum: function (string) { + /*jshint boss:true */ + var parts = [], + regex = /(\d+|\D+)/g, + match; + + while (match = regex.exec(string)) { // assignment + parts.push(match[1]); + } + + return parts; + } +}; + + +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.12.0/arraysort/arraysort-min.js b/lib/yuilib/3.12.0/arraysort/arraysort-min.js new file mode 100755 index 00000000000..d772a4eebd6 --- /dev/null +++ b/lib/yuilib/3.12.0/arraysort/arraysort-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("arraysort",function(e,t){var n=e.Lang,r=n.isValue,i=n.isString,s=e.ArraySort={compare:function(e,t,n){return r(e)?r(t)?(i(e)&&(e=e.toLowerCase()),i(t)&&(t=t.toLowerCase()),et?n?-1:1:0):-1:r(t)?1:0},naturalCompare:function(e,t,n){e+="",t+="";if(!n||!n.caseSensitive)e=e.toLowerCase(),t=t.toLowerCase();var r=s._splitAlphaNum(e),i=s._splitAlphaNum(t),o=Math.min(r.length,i.length),u=0,a,f,l;for(l=0;lf?1:-1);break}}return u||(u=e.length-t.length),n&&n.descending?-u:u},_splitAlphaNum:function(e){var t=[],n=/(\d+|\D+)/g,r;while(r=n.exec(e))t.push(r[1]);return t}}},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.12.0/arraysort/arraysort.js b/lib/yuilib/3.12.0/arraysort/arraysort.js new file mode 100755 index 00000000000..ef8c350c2a3 --- /dev/null +++ b/lib/yuilib/3.12.0/arraysort/arraysort.js @@ -0,0 +1,188 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('arraysort', function (Y, NAME) { + +/*jshint expr:true, onevar:false */ + +/** +Provides comparator functions useful for sorting arrays. + +@module arraysort +**/ + +var LANG = Y.Lang, + ISVALUE = LANG.isValue, + ISSTRING = LANG.isString; + +/** +Provides comparator functions useful for sorting arrays. + +@class ArraySort +@static +**/ + +var ArraySort = Y.ArraySort = { + // -- Public Methods ------------------------------------------------------- + + /** + Comparator function for simple case-insensitive sorting of an array of + strings. + + @method compare + @param a {Object} First sort argument. + @param b {Object} Second sort argument. + @param desc {Boolean} `true` if sort direction is descending, `false` if + sort direction is ascending. + @return {Boolean} -1 when a < b. 0 when a == b. 1 when a > b. + @static + */ + compare: function(a, b, desc) { + if(!ISVALUE(a)) { + if(!ISVALUE(b)) { + return 0; + } + else { + return 1; + } + } + else if(!ISVALUE(b)) { + return -1; + } + + if(ISSTRING(a)) { + a = a.toLowerCase(); + } + if(ISSTRING(b)) { + b = b.toLowerCase(); + } + if(a < b) { + return (desc) ? 1 : -1; + } + else if (a > b) { + return (desc) ? -1 : 1; + } + else { + return 0; + } + }, + + /** + Performs a natural-order comparison of two strings or numbers (or a string + and a number). This ensures that a value like 'foo2' will be sorted before + 'foo10', whereas a standard ASCII sort would sort 'foo10' first. + + @example + + var items = ['item10', 'item2', 'item1', 10, '1', 2]; + + items.sort(Y.ArraySort.naturalCompare); + console.log(items); // => ['1', 2, 10, 'item1', 'item2', 'item10'] + + @method naturalCompare + @param {Number|String} a First value to compare. + @param {Number|String} b Second value to compare. + @param {Object} [options] Options. + @param {Boolean} [options.caseSensitive=false] If `true`, a + case-sensitive comparison will be performed. By default the + comparison is case-insensitive. + @param {Boolean} [options.descending=false] If `true`, the sort order + will be reversed so that larger values are sorted before smaller + values. + @return {Number} `0` if the two items are equal, a negative number if _a_ + should be sorted before _b_, or a positive number if _b_ should be + sorted before _a_. + @static + @since 3.11.0 + **/ + naturalCompare: function (a, b, options) { + // Coerce `a` and `b` to strings. + a += ''; + b += ''; + + // Convert `a` and `b` to lowercase unless `options.caseSensitive` is + // truthy. + if (!options || !options.caseSensitive) { + a = a.toLowerCase(); + b = b.toLowerCase(); + } + + // Split `a` and `b` into alpha parts and numeric parts. + var aParts = ArraySort._splitAlphaNum(a), + bParts = ArraySort._splitAlphaNum(b), + length = Math.min(aParts.length, bParts.length), + result = 0, + + aPart, + bPart, + i; + + // Compare each part of `a` with each part of `b`. + for (i = 0; i < length; i++) { + aPart = aParts[i]; + bPart = bParts[i]; + + // If the two parts aren't equal, compare them and stop iterating. + if (aPart !== bPart) { + // First, try comparing them as numbers. + result = aPart - bPart; + + // If that didn't work, compare them as strings. This falsiness + // check works because `result` can't be 0 (we checked for + // equality above) and NaN is falsy. + if (!result) { + result = aPart > bPart ? 1 : -1; + } + + // At this point we know enough to be able to sort the two + // strings, so we don't need to compare any more parts. + break; + } + } + + // If we get here and `result` is still 0, then sort the shorter string + // before the longer string. + result || (result = a.length - b.length); + + // Return the result, flipping the order if `options.descending` is + // truthy. + return options && options.descending ? -result : result; + }, + + // -- Protected Methods ---------------------------------------------------- + + /** + Splits a string into an array of alpha character and digit character parts. + + @example + + Y.ArraySort._splitAlphaNum('abc123def456'); + // => ['abc', '123', 'def', '456'] + + @method _splitAlphaNum + @param {String} string String to split. + @return {String[]} Array of alpha parts and digit parts. + @protected + @static + @since 3.11.0 + **/ + _splitAlphaNum: function (string) { + /*jshint boss:true */ + var parts = [], + regex = /(\d+|\D+)/g, + match; + + while (match = regex.exec(string)) { // assignment + parts.push(match[1]); + } + + return parts; + } +}; + + +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.12.0/assets/skin/audio-light/skin.css b/lib/yuilib/3.12.0/assets/skin/audio-light/skin.css new file mode 100755 index 00000000000..a7b1816e1f1 --- /dev/null +++ b/lib/yuilib/3.12.0/assets/skin/audio-light/skin.css @@ -0,0 +1,197 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Horizontal Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/audio/thumb-x.png */ + +.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail, +.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail-cap-left, +.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail-cap-right { + background-image: url(rail-x.png); + background-repeat: repeat-x; +} + +.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail { + height: 35px; + background-position: 0 7px; +} +.yui3-skin-audio-light .yui3-slider-x .yui3-slider-thumb { + height: 35px; + width: 19px; +} + +.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail-cap-left { + background-position: 0 -20px; + height: 13px; + left: -5px; + width: 5px; + top: 7px; +} +.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail-cap-right { + background-position: 0 -40px; + height: 13px; + right: -5px; + width: 5px; + top: 7px; +} + +.yui3-skin-audio-light .yui3-slider-x .yui3-slider-thumb-image { + left: 0; + top: -3px; +} +.yui3-skin-audio-light .yui3-slider-x .yui3-slider-thumb-shadow { + left: 0; + opacity: 0.15; + filter: alpha(opacity=15); + top: -43px; +} + +/* Vertical Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/audio/thumb-y.png */ + +.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail, +.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail-cap-top, +.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-image: url(rail-y.png); + background-repeat: repeat-y; +} + +.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail { + width: 35px; + background-position: 7px 0; +} +.yui3-skin-audio-light .yui3-slider-y .yui3-slider-thumb { + width: 35px; + height: 19px; +} + +.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail-cap-top { + background-position: -20px 0; + width: 13px; + top: -5px; + height: 5px; + left: 7px; +} +.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-position: -40px 0; + width: 13px; + bottom: -5px; + height: 5px; + left: 7px; +} + +.yui3-skin-audio-light .yui3-slider-y .yui3-slider-thumb-image { + left: -3px; + top: 0; +} +.yui3-skin-audio-light .yui3-slider-y .yui3-slider-thumb-shadow { + left: -43px; + opacity: 0.15; + filter: alpha(opacity=15); + top: 0; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Horizontal Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/audio/thumb-x.png */ + +.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail, +.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail-cap-left, +.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail-cap-right { + background-image: url(rail-x.png); + background-repeat: repeat-x; +} + +.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail { + height: 35px; + background-position: 0 7px; +} +.yui3-skin-audio-light .yui3-slider-x .yui3-slider-thumb { + height: 35px; + width: 19px; +} + +.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail-cap-left { + background-position: 0 -20px; + height: 13px; + left: -5px; + width: 5px; + top: 7px; +} +.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail-cap-right { + background-position: 0 -40px; + height: 13px; + right: -5px; + width: 5px; + top: 7px; +} + +.yui3-skin-audio-light .yui3-slider-x .yui3-slider-thumb-image { + left: 0; + top: -3px; +} +.yui3-skin-audio-light .yui3-slider-x .yui3-slider-thumb-shadow { + left: 0; + opacity: 0.15; + filter: alpha(opacity=15); + top: -43px; +} + +/* Vertical Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/audio/thumb-y.png */ + +.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail, +.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail-cap-top, +.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-image: url(rail-y.png); + background-repeat: repeat-y; +} + +.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail { + width: 35px; + background-position: 7px 0; +} +.yui3-skin-audio-light .yui3-slider-y .yui3-slider-thumb { + width: 35px; + height: 19px; +} + +.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail-cap-top { + background-position: -20px 0; + width: 13px; + top: -5px; + height: 5px; + left: 7px; +} +.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-position: -40px 0; + width: 13px; + bottom: -5px; + height: 5px; + left: 7px; +} + +.yui3-skin-audio-light .yui3-slider-y .yui3-slider-thumb-image { + left: -3px; + top: 0; +} +.yui3-skin-audio-light .yui3-slider-y .yui3-slider-thumb-shadow { + left: -43px; + opacity: 0.15; + filter: alpha(opacity=15); + top: 0; +} diff --git a/lib/yuilib/3.12.0/assets/skin/audio/skin.css b/lib/yuilib/3.12.0/assets/skin/audio/skin.css new file mode 100755 index 00000000000..a69f4161625 --- /dev/null +++ b/lib/yuilib/3.12.0/assets/skin/audio/skin.css @@ -0,0 +1,197 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Horizontal Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/audio/thumb-x.png */ + +.yui3-skin-audio .yui3-slider-x .yui3-slider-rail, +.yui3-skin-audio .yui3-slider-x .yui3-slider-rail-cap-left, +.yui3-skin-audio .yui3-slider-x .yui3-slider-rail-cap-right { + background-image: url(rail-x.png); + background-repeat: repeat-x; +} + +.yui3-skin-audio .yui3-slider-x .yui3-slider-rail { + height: 35px; + background-position: 0 7px; +} +.yui3-skin-audio .yui3-slider-x .yui3-slider-thumb { + height: 35px; + width: 19px; +} + +.yui3-skin-audio .yui3-slider-x .yui3-slider-rail-cap-left { + background-position: 0 -20px; + height: 13px; + left: -5px; + width: 5px; + top: 7px; +} +.yui3-skin-audio .yui3-slider-x .yui3-slider-rail-cap-right { + background-position: 0 -40px; + height: 13px; + right: -5px; + width: 5px; + top: 7px; +} + +.yui3-skin-audio .yui3-slider-x .yui3-slider-thumb-image { + left: 0; + top: -3px; +} +.yui3-skin-audio .yui3-slider-x .yui3-slider-thumb-shadow { + left: 0; + opacity: 0.15; + filter: alpha(opacity=15); + top: -43px; +} + +/* Vertical Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/audio/thumb-y.png */ + +.yui3-skin-audio .yui3-slider-y .yui3-slider-rail, +.yui3-skin-audio .yui3-slider-y .yui3-slider-rail-cap-top, +.yui3-skin-audio .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-image: url(rail-y.png); + background-repeat: repeat-y; +} + +.yui3-skin-audio .yui3-slider-y .yui3-slider-rail { + width: 35px; + background-position: 7px 0; +} +.yui3-skin-audio .yui3-slider-y .yui3-slider-thumb { + width: 35px; + height: 19px; +} + +.yui3-skin-audio .yui3-slider-y .yui3-slider-rail-cap-top { + background-position: -20px 0; + width: 13px; + top: -5px; + height: 5px; + left: 7px; +} +.yui3-skin-audio .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-position: -40px 0; + width: 13px; + bottom: -5px; + height: 5px; + left: 7px; +} + +.yui3-skin-audio .yui3-slider-y .yui3-slider-thumb-image { + left: -3px; + top: 0; +} +.yui3-skin-audio .yui3-slider-y .yui3-slider-thumb-shadow { + left: -43px; + opacity: 0.15; + filter: alpha(opacity=15); + top: 0; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Horizontal Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/audio/thumb-x.png */ + +.yui3-skin-audio .yui3-slider-x .yui3-slider-rail, +.yui3-skin-audio .yui3-slider-x .yui3-slider-rail-cap-left, +.yui3-skin-audio .yui3-slider-x .yui3-slider-rail-cap-right { + background-image: url(rail-x.png); + background-repeat: repeat-x; +} + +.yui3-skin-audio .yui3-slider-x .yui3-slider-rail { + height: 35px; + background-position: 0 7px; +} +.yui3-skin-audio .yui3-slider-x .yui3-slider-thumb { + height: 35px; + width: 19px; +} + +.yui3-skin-audio .yui3-slider-x .yui3-slider-rail-cap-left { + background-position: 0 -20px; + height: 13px; + left: -5px; + width: 5px; + top: 7px; +} +.yui3-skin-audio .yui3-slider-x .yui3-slider-rail-cap-right { + background-position: 0 -40px; + height: 13px; + right: -5px; + width: 5px; + top: 7px; +} + +.yui3-skin-audio .yui3-slider-x .yui3-slider-thumb-image { + left: 0; + top: -3px; +} +.yui3-skin-audio .yui3-slider-x .yui3-slider-thumb-shadow { + left: 0; + opacity: 0.15; + filter: alpha(opacity=15); + top: -43px; +} + +/* Vertical Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/audio/thumb-y.png */ + +.yui3-skin-audio .yui3-slider-y .yui3-slider-rail, +.yui3-skin-audio .yui3-slider-y .yui3-slider-rail-cap-top, +.yui3-skin-audio .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-image: url(rail-y.png); + background-repeat: repeat-y; +} + +.yui3-skin-audio .yui3-slider-y .yui3-slider-rail { + width: 35px; + background-position: 7px 0; +} +.yui3-skin-audio .yui3-slider-y .yui3-slider-thumb { + width: 35px; + height: 19px; +} + +.yui3-skin-audio .yui3-slider-y .yui3-slider-rail-cap-top { + background-position: -20px 0; + width: 13px; + top: -5px; + height: 5px; + left: 7px; +} +.yui3-skin-audio .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-position: -40px 0; + width: 13px; + bottom: -5px; + height: 5px; + left: 7px; +} + +.yui3-skin-audio .yui3-slider-y .yui3-slider-thumb-image { + left: -3px; + top: 0; +} +.yui3-skin-audio .yui3-slider-y .yui3-slider-thumb-shadow { + left: -43px; + opacity: 0.15; + filter: alpha(opacity=15); + top: 0; +} diff --git a/lib/yuilib/3.12.0/assets/skin/capsule-dark/skin.css b/lib/yuilib/3.12.0/assets/skin/capsule-dark/skin.css new file mode 100755 index 00000000000..378e0dc5680 --- /dev/null +++ b/lib/yuilib/3.12.0/assets/skin/capsule-dark/skin.css @@ -0,0 +1,197 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Horizontal Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/capsule-dark/thumb-x.png */ +/* Alternate thumbUrl /build/slider-base/assets/skins/capsule-dark/thumb-x-line.png */ + +.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail, +.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail-cap-left, +.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail-cap-right { + background-image: url(rail-x.png); + background-repeat: repeat-x; + /* alternate: rail-x-dots.png */ + /* alternate: rail-x-lines.png */ +} + +.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail { + height: 25px; +} +.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-thumb { + height: 30px; + width: 14px; +} + +.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail-cap-left { + background-position: 0 -20px; + height: 20px; + left: -2px; + width: 5px; +} +.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail-cap-right { + background-position: 0 -40px; + height: 20px; + right: -2px; + width: 5px; +} + +.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-thumb-image { + left: 0; + top: -10px; +} +.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-thumb-shadow { + left: 0; + opacity: 0.15; + filter: alpha(opacity=15); + top: -50px; +} + +/* Vertical Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/capsule-dark/thumb-y.png */ +/* Alternate thumbUrl /build/slider-base/assets/skins/capsule-dark/thumb-y-line.png */ + +.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail, +.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail-cap-top, +.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-image: url(rail-y.png); + background-repeat: repeat-y; + /* alternate: rail-y-dots.png */ + /* alternate: rail-y-lines.png */ +} + +.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail { + width: 25px; +} +.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-thumb { + width: 30px; + height: 14px; +} + +.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail-cap-top { + background-position: -20px 0; + width: 20px; + top: -2px; + height: 5px; +} +.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-position: -40px 0; + width: 20px; + bottom: -2px; + height: 5px; +} + +.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-thumb-image { + left: -10px; + top: 0; +} +.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-thumb-shadow { + left: -50px; + opacity: 0.15; + filter: alpha(opacity=15); + top: 0; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Horizontal Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/capsule-dark/thumb-x.png */ +/* Alternate thumbUrl /build/slider-base/assets/skins/capsule-dark/thumb-x-line.png */ + +.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail, +.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail-cap-left, +.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail-cap-right { + background-image: url(rail-x.png); + background-repeat: repeat-x; + /* alternate: rail-x-dots.png */ + /* alternate: rail-x-lines.png */ +} + +.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail { + height: 25px; +} +.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-thumb { + height: 30px; + width: 14px; +} + +.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail-cap-left { + background-position: 0 -20px; + height: 20px; + left: -2px; + width: 5px; +} +.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail-cap-right { + background-position: 0 -40px; + height: 20px; + right: -2px; + width: 5px; +} + +.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-thumb-image { + left: 0; + top: -10px; +} +.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-thumb-shadow { + left: 0; + opacity: 0.15; + filter: alpha(opacity=15); + top: -50px; +} + +/* Vertical Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/capsule-dark/thumb-y.png */ +/* Alternate thumbUrl /build/slider-base/assets/skins/capsule-dark/thumb-y-line.png */ + +.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail, +.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail-cap-top, +.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-image: url(rail-y.png); + background-repeat: repeat-y; + /* alternate: rail-y-dots.png */ + /* alternate: rail-y-lines.png */ +} + +.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail { + width: 25px; +} +.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-thumb { + width: 30px; + height: 14px; +} + +.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail-cap-top { + background-position: -20px 0; + width: 20px; + top: -2px; + height: 5px; +} +.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-position: -40px 0; + width: 20px; + bottom: -2px; + height: 5px; +} + +.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-thumb-image { + left: -10px; + top: 0; +} +.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-thumb-shadow { + left: -50px; + opacity: 0.15; + filter: alpha(opacity=15); + top: 0; +} diff --git a/lib/yuilib/3.12.0/assets/skin/capsule/skin.css b/lib/yuilib/3.12.0/assets/skin/capsule/skin.css new file mode 100755 index 00000000000..02ab8ab98f3 --- /dev/null +++ b/lib/yuilib/3.12.0/assets/skin/capsule/skin.css @@ -0,0 +1,201 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Horizontal Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/capsule/thumb-x.png */ +/* Alternate thumbUrl /build/slider-base/assets/skins/capsule/thumb-x-line.png */ + +.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail, +.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail-cap-left, +.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail-cap-right { + background-image: url(rail-x.png); + background-repeat: repeat-x; + background-repeat: repeat-x; + /* alternate: rail-x-dots.png */ + /* alternate: rail-x-lines.png */ +} + +.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail { + height: 25px; +} +.yui3-skin-capsule .yui3-slider-x .yui3-slider-thumb { + height: 30px; + width: 14px; +} + +.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail-cap-left { + background-position: 0 -20px; + height: 20px; + left: -2px; + width: 5px; +} +.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail-cap-right { + background-position: 0 -40px; + height: 20px; + right: -2px; + width: 5px; +} + +.yui3-skin-capsule .yui3-slider-x .yui3-slider-thumb-image { + left: 0; + top: -10px; +} +.yui3-skin-capsule .yui3-slider-x .yui3-slider-thumb-shadow { + left: 0; + opacity: 0.15; + filter: alpha(opacity=15); + top: -50px; +} + +/* Vertical Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/capsule/thumb-y.png */ +/* Alternate thumbUrl /build/slider-base/assets/skins/capsule/thumb-y-line.png */ + +.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail, +.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail-cap-top, +.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-image: url(rail-y.png); + background-repeat: repeat-y; + background-repeat: repeat-y; + /* alternate: rail-y-dots.png */ + /* alternate: rail-y-lines.png */ +} + +.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail { + width: 25px; +} +.yui3-skin-capsule .yui3-slider-y .yui3-slider-thumb { + width: 30px; + height: 14px; +} + +.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail-cap-top { + background-position: -20px 0; + width: 20px; + top: -2px; + height: 5px; +} +.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-position: -40px 0; + width: 20px; + bottom: -2px; + height: 5px; +} + +.yui3-skin-capsule .yui3-slider-y .yui3-slider-thumb-image { + left: -10px; + top: 0; +} +.yui3-skin-capsule .yui3-slider-y .yui3-slider-thumb-shadow { + left: -50px; + opacity: 0.15; + filter: alpha(opacity=15); + top: 0; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Horizontal Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/capsule/thumb-x.png */ +/* Alternate thumbUrl /build/slider-base/assets/skins/capsule/thumb-x-line.png */ + +.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail, +.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail-cap-left, +.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail-cap-right { + background-image: url(rail-x.png); + background-repeat: repeat-x; + background-repeat: repeat-x; + /* alternate: rail-x-dots.png */ + /* alternate: rail-x-lines.png */ +} + +.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail { + height: 25px; +} +.yui3-skin-capsule .yui3-slider-x .yui3-slider-thumb { + height: 30px; + width: 14px; +} + +.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail-cap-left { + background-position: 0 -20px; + height: 20px; + left: -2px; + width: 5px; +} +.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail-cap-right { + background-position: 0 -40px; + height: 20px; + right: -2px; + width: 5px; +} + +.yui3-skin-capsule .yui3-slider-x .yui3-slider-thumb-image { + left: 0; + top: -10px; +} +.yui3-skin-capsule .yui3-slider-x .yui3-slider-thumb-shadow { + left: 0; + opacity: 0.15; + filter: alpha(opacity=15); + top: -50px; +} + +/* Vertical Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/capsule/thumb-y.png */ +/* Alternate thumbUrl /build/slider-base/assets/skins/capsule/thumb-y-line.png */ + +.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail, +.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail-cap-top, +.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-image: url(rail-y.png); + background-repeat: repeat-y; + background-repeat: repeat-y; + /* alternate: rail-y-dots.png */ + /* alternate: rail-y-lines.png */ +} + +.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail { + width: 25px; +} +.yui3-skin-capsule .yui3-slider-y .yui3-slider-thumb { + width: 30px; + height: 14px; +} + +.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail-cap-top { + background-position: -20px 0; + width: 20px; + top: -2px; + height: 5px; +} +.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-position: -40px 0; + width: 20px; + bottom: -2px; + height: 5px; +} + +.yui3-skin-capsule .yui3-slider-y .yui3-slider-thumb-image { + left: -10px; + top: 0; +} +.yui3-skin-capsule .yui3-slider-y .yui3-slider-thumb-shadow { + left: -50px; + opacity: 0.15; + filter: alpha(opacity=15); + top: 0; +} diff --git a/lib/yuilib/3.12.0/assets/skin/night/skin.css b/lib/yuilib/3.12.0/assets/skin/night/skin.css new file mode 100755 index 00000000000..ac1172707af --- /dev/null +++ b/lib/yuilib/3.12.0/assets/skin/night/skin.css @@ -0,0 +1,1741 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-night .yui3-scrollview { + -webkit-tap-highlight-color: rgba(0,0,0,0); +} + +.yui3-skin-night .yui3-scrollview{ + color:#fff; + background-color:#000; +} + +.yui3-skin-night .yui3-scrollview-vert .yui3-scrollview-content { + /*border:1px solid #303030; If the ScrollView needs a border add it here */ + border-top:0; + background-color:#000; + font-family: HelveticaNeue,arial,helvetica,clean,sans-serif; + color:#fff; +} + +/* For IE 6/7 - needs a background color (above) to pick up events, and zoom, to fill the UL */ +.yui3-skin-night .yui3-scrollview-vert .yui3-scrollview-content .yui3-scrollview-item { + *zoom:1; +} + +/* For IE7 - needs zoom, otherwise clipped content is not rendered */ +.yui3-skin-night .yui3-scrollview-vert .yui3-scrollview-content .yui3-scrollview-list { + *zoom:1; + list-style:none; /*need these since reset is not required*/ + padding:0; /*need these since reset is not required*/ + margin:0; /*need these since reset is not required*/ +} + +.yui3-skin-night .yui3-scrollview-vert .yui3-scrollview-content .yui3-scrollview-item { + border-bottom: 1px solid #303030; + padding: 15px 20px 16px; + font-size: 100%; + font-weight: bold; + background-color:#151515; + cursor:pointer; +} + +.yui3-skin-night .yui3-scrollview-vert .yui3-scrollview-content .yui3-scrollview-list.selected{ + background-color:#2C2D2E; + background: -moz-linear-gradient( + 0% 100% 90deg, + #252626 0%, + #333434 100% + ); + background: -webkit-gradient( + linear, + left top, + left bottom, + from(#333434), + to(#252626) + ); + border-top:solid 1px #4b4b4b; + border-bottom:solid 1px #3e3f3f; + margin-top:-1px; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* basic skin styles */ +.yui3-skin-night .yui3-datatable { + color:#8E8E8E; + font-family: HelveticaNeue,arial,helvetica,clean,sans-serif; +} +.yui3-skin-night .yui3-datatable-table { + border: 1px solid #323434; + border-collapse: separate; + border-spacing: 0; + color: #8E8E8E; + margin: 0; + padding: 0; +} + +.yui3-skin-night .yui3-datatable-caption { + color: #474747; + font: italic 85%/1 HelveticaNeue,arial,helvetica,clean,sans-serif; + padding: 1em 0; + text-align: center; +} + +.yui3-skin-night .yui3-datatable-cell, +.yui3-skin-night .yui3-datatable-header { + border-left: 1px solid #303030;/* inner column border */ + border-width: 0 0 0 1px; + font-size: inherit; + margin: 0; + overflow: visible; /*to make ths where the title is really long work*/ + padding: 4px 10px 4px 10px; /* cell padding */ +} +.yui3-skin-night .yui3-datatable-cell:first-child, +.yui3-skin-night .yui3-datatable-first-header { + border-left-width: 0; +} + +.yui3-skin-night .yui3-datatable-header { + /* header gradient */ + background-color:#3b3c3d; + + background: -moz-linear-gradient( + 0% 100% 90deg, + #242526 0%, + #3b3c3d 96%, + #2C2D2F 100% + ); + background: -webkit-gradient( + linear, + left bottom, + left top, + from(#242526), + color-stop(0.96, #3b3c3d), + to(#2C2D2F) + ); + color: #eee; + font-weight: normal; + text-align: left; + vertical-align: bottom; + white-space: nowrap; +} + +/* +striping: + even - #0e0e0e (darkest) + odd - #1d1e1e (lighter) +*/ +.yui3-skin-night .yui3-datatable-cell { + background-color: transparent; +} +.yui3-skin-night .yui3-datatable-even .yui3-datatable-cell { + background-color: #0e0e0e; +} +.yui3-skin-night .yui3-datatable-odd .yui3-datatable-cell { + background-color: #1d1e1e; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-night .yui3-calendar-content { + padding:10px; + color: #CBCBCB; + border: 1px solid #303030; + background: #151515; /* Old browsers */ + background: -moz-linear-gradient(top, #222222 0%, #151515 100%); /* FF3.6+ */ + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#222222), color-stop(100%,#151515)); /* Chrome,Safari4+ */ + background: -webkit-linear-gradient(top, #222222 0%,#151515 100%); /* Chrome10+,Safari5.1+ */ + background: -o-linear-gradient(top, #222222 0%,#151515 100%); /* Opera11.10+ */ + background: -ms-linear-gradient(top, #222222 0%,#151515 100%); /* IE10+ */ + filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#222222', endColorstr='#151515',GradientType=0 ); /* IE6-9 */ + background: linear-gradient(top, #222222 0%,#151515 100%); /* W3C */ + -moz-border-radius: 5px; + border-radius: 5px; +} + + +.yui3-skin-night .yui3-calendar-grid { + padding:5px; + border-collapse: collapse; +} + +.yui3-skin-night .yui3-calendar-header { + padding-bottom:10px; +} + +.yui3-skin-night .yui3-calendar-header-label { + margin: 0; + font-size: 1em; + font-weight: bold; +} + +.yui3-skin-night .yui3-calendar-day, +.yui3-skin-night .yui3-calendar-prevmonth-day, +.yui3-skin-night .yui3-calendar-nextmonth-day { + padding:5px; + border: 1px solid #151515; + background: #262727; + text-align:center; +} + +.yui3-skin-night .yui3-calendar-day:hover { + background: #383939; + color: #FFFFFF; +} + +.yui3-skin-night .yui3-calendar-selection-disabled, +.yui3-skin-night .yui3-calendar-selection-disabled:hover { + background: #151515; + color: #596060; +} + +.yui3-skin-night .yui3-calendar-weekday { + color: #4F4F4F; + font-weight: bold; + text-align: center; +} + +.yui3-skin-night .yui3-calendar-prevmonth-day, .yui3-skin-night .yui3-calendar-nextmonth-day { + color: #4F4F4F; +} + +.yui3-skin-night .yui3-calendar-day { + font-weight: bold; +} + +.yui3-skin-night .yui3-calendar-day-selected { + background-color: #505151; + color: #fff; +} + +.yui3-skin-night .yui3-calendar-header-label { + text-align: center; +} + +.yui3-skin-night .yui3-calendar-left-grid { + margin-right:1em; +} + +.yui3-skin-sam .yui3-calendar-right-grid { + margin-left:1em; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-night .yui3-datatable-sortable-column { + cursor: pointer; +} + +.yui3-skin-night .yui3-datatable-columns .yui3-datatable-sorted, +.yui3-skin-night .yui3-datatable-sortable-column:hover { + background-color: #4D4E4F; + *background: #505152 url(../../../../assets/skins/night/sprite.png) repeat-x 0 -100px; + + background-image: -webkit-gradient( + linear, + 0 0, + 0 100%, + from(rgba(255,255,255, 0.2)), + color-stop(40%, rgba(255,255,255, 0.1)), + color-stop(80%, rgba(255,255,255, 0.01)), + to(transparent)); + + background-image: -webkit-linear-gradient( + rgba(255,255,255, 0.2), + rgba(255,255,255, 0.1) 40%, + rgba(255,255,255, 0.01) 80%, + transparent); + + background-image: -moz-linear-gradient( + top, + rgba(255,255,255, 0.2), + rgba(255,255,255, 0.1) 40%, + rgba(255,255,255, 0.01) 80%, + transparent); + + background-image: -ms-linear-gradient( + rgba(255,255,255, 0.2), + rgba(255,255,255, 0.1) 40%, + rgba(255,255,255, 0.01) 80%, + transparent); + + background-image: -o-linear-gradient( + rgba(255,255,255, 0.2), + rgba(255,255,255, 0.1) 40%, + rgba(255,255,255, 0.01) 80%, + transparent); + + background-image: linear-gradient( + rgba(255,255,255, 0.2), + rgba(255,255,255, 0.1) 40%, + rgba(255,255,255, 0.01) 80%, + transparent); +} + +.yui3-skin-night .yui3-datatable-sort-liner { + display: block; + height: 100%; + position: relative; + padding-right: 15px; + position: relative; +} + +.yui3-skin-night .yui3-datatable-sort-indicator { + position: absolute; + right: 0; + bottom: .5ex; + width: 7px; + height: 10px; + background: url(sort-arrow-sprite.png) no-repeat 0 0; + _background: url(sort-arrow-sprite-ie.png) no-repeat 0 0; + overflow: hidden; +} + +.yui3-skin-night .yui3-datatable-sorted .yui3-datatable-sort-indicator { + background-position: 0 -10px; +} +.yui3-skin-night .yui3-datatable-sorted-desc .yui3-datatable-sort-indicator { + background-position: 0 -20px; +} + +.yui3-skin-night .yui3-datatable-data .yui3-datatable-even .yui3-datatable-sorted { + background-color: #262626; + color: #B3B2B2; +} + +.yui3-skin-night .yui3-datatable-data .yui3-datatable-odd .yui3-datatable-sorted { + background-color: #393A3A; + color: #CBCBCB; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-night .yui3-panel { + color: #FFFFFF; + font-family: HelveticaNeue, arial, helvetica, clean, sans-serif; +} + +.yui3-skin-night .yui3-panel-content { + background: #6D6E6E; + -webkit-box-shadow: 0 0 20px #000; + -moz-box-shadow: 0 0 20px #000; + box-shadow: 0 0 20px #000; + border: 1px solid black; + -webkit-border-radius: 7px; + -moz-border-radius: 7px; + border-radius: 7px; +} +.yui3-skin-night .yui3-panel .yui3-widget-hd { + padding: 11px 57px 11px 22px; /* Room for close button. */ + min-height: 17px; /* For the close button */ + _height: 17px; /* IE6 */ + -webkit-border-top-left-radius: 7px; + -webkit-border-top-right-radius: 7px; + -moz-border-radius-topleft: 7px; + -moz-border-radius-topright: 7px; + border-top-left-radius: 7px; + border-top-right-radius: 7px; + font-weight: bold; + color: white; + background-color: #555658; + background: -moz-linear-gradient( + 0% 100% 90deg, + #343536 0%, + #555658 96%, + #3E3F41 100% + ); + background: -webkit-gradient( + linear, + left bottom, + left top, + from(#343536), + color-stop(0.96, #555658), + to(#3E3F41) + ); +} +.yui3-skin-night .yui3-panel .yui3-widget-hd .yui3-widget-buttons { + padding: 11px; +} +.yui3-skin-night .yui3-panel .yui3-widget-bd { + padding: 11px 22px 17px; +} +.yui3-skin-night .yui3-panel .yui3-widget-ft { + background-color: #575858; + border-top: 1px solid #494A4A; + padding: 6px 16px 8px; + text-align: center; + -webkit-border-bottom-right-radius: 7px; + -webkit-border-bottom-left-radius: 7px; + -moz-border-radius-bottomright: 7px; + -moz-border-radius-bottomleft: 7px; + border-bottom-right-radius: 7px; + border-bottom-left-radius: 7px; +} +.yui3-skin-night .yui3-panel .yui3-widget-ft .yui3-widget-buttons { + bottom: 0; + position: relative; + right: auto; + width: 100%; + text-align: center; + padding-bottom: 0; + margin-left: -5px; + margin-right: -5px; +} +.yui3-skin-night .yui3-panel .yui3-widget-ft .yui3-button { + margin: 5px; +} + +/* +Support for icon-based [x] "close" button in the header. + +Nicolas Gallagher: "CSS image replacement with pseudo-elements (NIR)" +http://nicolasgallagher.com/css-image-replacement-with-pseudo-elements/ +*/ +.yui3-skin-night .yui3-panel .yui3-widget-hd .yui3-button-close { + /* Reset base button styles */ + background: transparent; + filter: none; + border: none; + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; + + /* Structure */ + width: 22px; + height: 17px; + padding: 0; + overflow: hidden; + vertical-align: top; + /* IE < 8 :( */ + *font-size: 0; + *line-height: 0; + *letter-spacing: -1000px; + *color: #86A5EC; + *background: url(sprite_icons.png) no-repeat center 3px; +} +.yui3-skin-night .yui3-panel .yui3-widget-hd .yui3-button-close:hover { + background-color: #333; +} +.yui3-skin-night .yui3-panel .yui3-widget-hd .yui3-button-close:before { + /* + Displays the [x] icon in place of the "Close" text. + Note: The `width` of this pseudo element is the same as its "host" element. + */ + content: url(sprite_icons.png); + display: inline-block; + text-align: center; + font-size: 0; + line-height: 0; + width: 22px; + margin: 3px 0 0 1px; +} +.yui3-skin-night .yui3-panel-hidden .yui3-widget-hd .yui3-button-close { + /* Required for IE > 7 to deal with pseudo :before element */ + display: none; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-night [for=ac-input] { /* autocomplete label color */ + color: #CBCBCB; +} + +.yui3-skin-night .yui3-aclist-content { + font-size: 100%; + background-color: #151515; + color: #ccc; + border: 1px solid #303030; + -moz-box-shadow: 0 0 17px rgba(0,0,0,0.58); + -webkit-box-shadow: 0 0 17px rgba(0,0,0,0.58); + box-shadow: 0 0 17px rgba(0,0,0,0.58); +} + +.yui3-skin-night .yui3-aclist-item-active { + background-color: #2F3030; + background: -moz-linear-gradient( + 0% 100% 90deg, + #252626 0%, + #333434 100% + ); + background: -webkit-gradient( + linear, + left top, + left bottom, + from(#333434), + to(#252626) + ); +} +.yui3-skin-night .yui3-aclist-item-hover { + background-color: #262727; + background: -moz-linear-gradient( + 0% 100% 90deg, + #202121 0%, + #282929 100% + ); + background: -webkit-gradient( + linear, + left top, + left bottom, + from(#282929), + to(#202121) + ); +} + +.yui3-skin-night .yui3-aclist-item { + padding: 0 1em; /*0.4em 1em 0.6em*/ + line-height: 2.25; +} +.yui3-skin-night .yui3-aclist-item-active { outline: none; } +.yui3-skin-night .yui3-highlight { color:#EFEFEF; } + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-paginator { + background: white url(../../../../assets/skins/night/sprite.png) repeat-x 0 0; + background-image: -webkit-linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: -moz-linear-gradient(top, transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: -ms-linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: -o-linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control { + color: #242D42; +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control-first:hover, +.yui3-datatable-paginator .yui3-datatable-paginator-control-last:hover, +.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:hover, +.yui3-datatable-paginator .yui3-datatable-paginator-control-next:hover { + box-shadow: 0 1px 2px #292442; +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control-first:active, +.yui3-datatable-paginator .yui3-datatable-paginator-control-last:active, +.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:active, +.yui3-datatable-paginator .yui3-datatable-paginator-control-next:active { + box-shadow: inset 0 1px 1px #292442; + background: #E0DEED; + background: hsla(250, 30%, 90%, 0.3); +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled, +.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled:hover { + color: #BDC7DB; + border-color: transparent; + box-shadow: none; +} +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-night .yui3-calendar-day-highlighted { + background-color: #555555; +} + +.yui3-skin-night .yui3-calendar-day-selected.yui3-calendar-day-highlighted { + background-color: #777777; +} +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-night .yui3-tabview-panel{ + background-color:#333333; + color:#808080; + padding:1px; +} +.yui3-skin-night .yui3-tab-panel p{ + margin:10px; +} +.yui3-skin-night .yui3-tabview-list { + background-color:#0f0f0f; + border-top:1px solid #000; + text-align:center; + height:46px; + background: -moz-linear-gradient( + 0% 100% 90deg, + #0f0f0f 0%, + #1e1e1e 96%, + #292929 100% + ); + background: -webkit-gradient( + linear, + left bottom, + left top, + from(#0f0f0f), + color-stop(0.96, #1e1e1e), + to(#292929) + ); +} + +.yui3-skin-night .yui3-tabview-list li { + margin-top:8px; +} +.yui3-skin-night .yui3-tabview-list li a{ + border:solid 1px #0c0c0c; + border-right-style:none; + + -moz-box-shadow: 0 1px #222222; + -webkit-box-shadow: 0 1px #222222; + box-shadow: 0 1px #222222; + + text-shadow: 0 -1px 0 rgba(0,0,0,0.7); + font-size:85%; + text-align:center; + color: #fff; + padding: 6px 28px; + background-color:#555658; + background: -moz-linear-gradient( + 0% 100% 90deg, + #343536 0%, + #555658 96%, + #3E3F41 100% + ); + background: -webkit-gradient( + linear, + left bottom, + left top, + from(#343536), + color-stop(0.96, #555658), + to(#3E3F41) + ); +} +.yui3-skin-night .yui3-tabview-list li.yui3-tab-selected a { + background-color:#2B2D2D; + background: -moz-linear-gradient( + 0% 100% 90deg, + #242526 0%, + #3b3c3d 96%, + #2C2D2F 100% + ); + background: -webkit-gradient( + linear, + left bottom, + left top, + from(#242526), + color-stop(0.96, #3b3c3d), + to(#2C2D2F) + ); +} +.yui3-skin-night .yui3-tabview-list li:first-child a{ + -moz-border-radius:6px 0 0 6px; + -webkit-border-radius:6px 0 0 6px; + border-radius:6px 0 0 6px; +} +.yui3-skin-night .yui3-tabview-list li:last-child a{ + border-right-style:solid; + -moz-border-radius:0 6px 6px 0; + -webkit-border-radius:0 6px 6px 0; + border-radius:0 6px 6px 0; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-night .yui3-calendarnav-prevmonth, .yui3-skin-night .yui3-calendarnav-nextmonth { + color: #FFFFFF; + width: 12px; + height: 14px; + background: transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAOCAYAAAA1+Nx+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAALZJREFUeNpi/P//PwORQBqIu6DsMiB+SpQukAUEMCcQVwPx5/8I8BkqxklIPyHDA4H44X/c4CFUDckWGADxgf/EgwNQPQQtEALiaf/JB9OgZmBYwAzERUD84T/l4APULGaYBR5AfPU/9QHITA8maGJiY6A+YENOpmw0CCI2bJEsCsRzKDB8DtSMgUum6DiKiIwWRUlOhhUVdUD8Dcngb1AxgkUFIwmFnRwQt0PZlUD8iBhNAAEGALbfq7SGiQoPAAAAAElFTkSuQmCC); + background-repeat: no-repeat; +} + +.yui3-skin-night .yui3-calendarnav-prevmonth:hover, .yui3-skin-night .yui3-calendarnav-nextmonth:hover { + background: transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAOCAYAAAA1+Nx+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAPpJREFUeNpi/P//PwMxQD9jszSQ6oJyyy7O8H1KjD5GQhYADeYEUkVAXAHEPFDhL0DcAcR9QIu+k20B0PBAIDUBiOVwKHkExAVAS9aTZAHQYAOowfYMxIGDUIsu4LUAaLAQkGoB4kwG8sB0IK4BWvQOxQKgwcxAdj4Q1wExPwNl4CMQNwHxRKBFfxn10jd5ADm9QKzFQF1wDYiLmaAcNgbqA7CZTEBv7ADS2iDboN5joEIQgczSBpmNHsmiQKodiJPJNHwuEFcCDX49MMkUi0VRUB/hy2ggFy+jtKgohRYVnFDh79CiopuiogLNIjmobxigrn5EjD6AAAMAok9vhfHG8wQAAAAASUVORK5CYII=); + color: #0066CC; +} + +.yui3-skin-night .yui3-calendarnav-month-disabled, .yui3-skin-night .yui3-calendarnav-month-disabled:hover { + background: transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAOCAYAAAA1+Nx+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAQhJREFUeNqs0yGLAlEUhuHrKoIgCFbBJghb3F+g0WrVarEqLIhBEEFYWKNNMBktU4z6C5RNkwyCyWQSTPuOfCOCrHNnxwMPyOGe73DAiTmOYywrhy/9/sTBZujN4k0KPbioi6teKuqCmsKGSN/10+q5ehN6QQkrLJB/Mp/Xm5VmAhdkMcEGZWNfZc1MlPGwII42dmiZ/1dLGW1lXhdU8YNvZEz0yijLy6z6FyTN6yvpX7DEOzo4vSD4pCwvc+lfcMEYBUwjhE+VMVbmw7/oiCY+sA4RvNZMUxmB38EWFTSwfxK815uKZkJ/yXMU0cf5rn9Wr6g3f1bC4nwvbIAZRup1Ay671a8AAwC3OzOqxK+rkwAAAABJRU5ErkJggg==); + cursor: default; + color: #CCCCCC; +} + +.yui3-skin-night .yui3-calendarnav-prevmonth, .yui3-skin-night .yui3-calendarnav-prevmonth:hover { + background-position: 0px 0px; + margin-left:-12px; +} + +.yui3-skin-night .yui3-calendarnav-nextmonth, .yui3-skin-night .yui3-calendarnav-nextmonth:hover { + background-position: -12px 0px; + margin-right: -12px; +} + +.yui3-skin-night .yui3-calendarnav-prevmonth span, .yui3-skin-night .yui3-calendarnav-nextmonth span { + display: none; + *display: block; +} +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-night{ + background-color:#000; + font-family: HelveticaNeue,arial,helvetica,clean,sans-serif; + color:#fff; +} + +.yui3-skin-night .yui3-overlay-content ul, ol, li { + margin: 0; + padding: 0; + list-style:none; + zoom:1; +} +.yui3-skin-night .yui3-overlay-content li{ + *float:left; +} +.yui3-skin-night .yui3-overlay-content { + background-color:#6d6e6e; + -moz-box-shadow:0 0 17px rgba(0,0,0,0.58); + -webkit-box-shadow:0 0 17px rgba(0,0,0,0.58); + box-shadow:0 0 17px rgba(0,0,0,0.58); + -moz-border-radius:7px; + -webkit-border-radius:7px; + border-radius:7px; +} + +.yui3-skin-night .yui3-overlay-content .yui3-widget-hd { + background-color:#6d6e6e; + -moz-border-radius:7px 7px 0 0; + -webkit-border-radius:7px 7px 0 0; + border-radius:7px 7px 0 0; + color: #fff; + + margin:0; + padding:20px 22px 0; + font-size:147%; +} + + +/*** background of bd and ft ***/ +.yui3-skin-night .yui3-overlay-content .yui3-widget-bd { + padding:11px 22px 17px; + font-size:92%; + /*margin-bottom:-1px; this was needed on ipad to close gap between ft and bd*/ +} +.yui3-skin-night .yui3-overlay .yui3-widget-bd li{ + margin: 0.04em; +} +/*.yui3-skin-night .yui3-widget-bd li:last-child{ + margin-bottom:0.4em; +}*/ +.yui3-skin-night .yui3-overlay-content .yui3-widget-ft{ + background-color:#575858; + border-top:solid 1px #494a4a; + -moz-border-radius:0 0 7px 7px; + -webkit-border-radius:0 0 7px 7px; + border-radius:0 0 7px 7px; + padding:17px 25px 20px; + text-align:center; + /*font-size:92%;*/ +} +/* For Buttons */ + +.yui3-skin-night .yui3-overlay-content .yui3-widget-ft li { + margin:3px; + display:inline-block; +} +.yui3-skin-night .yui3-overlay-content .yui3-widget-ft li a{ + border:solid 1px #1B1C1C; + border-radius: 6px; + + -moz-box-shadow: 0 1px #677478; + -webkit-box-shadow: 0 1px #677478; + box-shadow: 0 1px #677478; + + text-shadow: 0 -1px 0 rgba(0,0,0,0.7); + font-size:85%; + text-align:center; + color: #fff; + padding: 6px 28px; + background-color:#2B2D2D; + background: -moz-linear-gradient( + 0% 100% 90deg, + #242526 0%, + #3b3c3d 96%, + #2C2D2F 100% + ); + background: -webkit-gradient( + linear, + left bottom, + left top, + from(#242526), + color-stop(0.96, #3b3c3d), + to(#2C2D2F) + ); +} +.yui3-skin-night .yui3-overlay .yui3-widget-ft li:first-child { + margin-left:0; +} + +.yui3-skin-night .yui3-overlay .yui3-widget-ft li:last-child { + margin-right:0; +} + +.yui3-skin-night .yui3-overlay .yui3-widget-ft li:last-child a { + border:solid 1px #520E00; + -moz-box-shadow: 0 1px #7D5D57; + -webkit-box-shadow: 0 1px #7D5D57; + box-shadow: 0 1px #7D5D57; + background-color:#901704; + background: -moz-linear-gradient( + 100% 0% 270deg, + #ab1c0b, + #7b1400 + ); + background: -webkit-gradient( + linear, + left top, + left bottom, + from(#ab1c0b), + to(#7b1400) + ); + margin-right: 0; +} + + +/* +.yui3-skin-night .yui3-overlay .yui3-widget-ft li{ + display:inline-block; + -moz-border-radius:6px; + -webkit-border-radius:6px; + border-radius:6px; + background-color:#252525; + background: -moz-linear-gradient( + 100% 0% 270deg, + #3f3f3f, + #0e0e0e + ); + background: -webkit-gradient( + linear, + left top, + left bottom, + from(#3f3f3f), + to(#0e0e0e) + ); + + line-height:32px; + width:100px; + margin:0px 5px 0px 5px; +} +.yui3-skin-night .yui3-overlay .yui3-widget-ft li:first-child { + margin-left:0px; +} +.yui3-skin-night .yui3-overlay .yui3-widget-ft li:last-child { + background-color:#901704; + background: -moz-linear-gradient( + 100% 0% 270deg, + #ab1c0b, + #7b1400 + ); + background: -webkit-gradient( + linear, + left top, + left bottom, + from(#ab1c0b), + to(#7b1400) + ); + margin-right: 0px; +} +*/ +#yui3-widget-mask{ + background-color:#000; + opacity:0.5; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-resize-handle-inner-r, +.yui3-resize-handle-inner-l, +.yui3-resize-handle-inner-t, +.yui3-resize-handle-inner-b, +.yui3-resize-handle-inner-tr, +.yui3-resize-handle-inner-br, +.yui3-resize-handle-inner-tl, +.yui3-resize-handle-inner-bl { + background-repeat: no-repeat; + background: url(arrows.png) no-repeat 0 0; + display: block; + height: 15px; + overflow: hidden; + text-indent: -99999em; + width: 15px; +} + +.yui3-resize-handle-inner-br { + background-position: -30px 0; + bottom: -2px; + right: -2px; +} + +.yui3-resize-handle-inner-tr { + background-position: -58px 0; + bottom: 0; + right: -2px; + +} + +.yui3-resize-handle-inner-bl { + background-position: -75px 0; + bottom: -2px; + right: -2px; +} + +.yui3-resize-handle-inner-tl { + background-position: -47px 0; + bottom: 0; + right: -2px; + +} + +.yui3-resize-handle-inner-b,.yui3-resize-handle-inner-t { + background-position: -15px 0; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-night .yui3-datatable-message-content { + background-color: #0e0e0e; + border: 0 none; + border-bottom: 1px solid #303030; + padding: 4px 10px; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-sam .yui3-datatable-scroll-columns { + border-collapse: separate; + border-spacing: 0; + font-family: HelveticaNeue,arial,helvetica,clean,sans-serif; + margin: 0; + padding: 0; + top: 0; + left: 0; +} + +.yui3-skin-sam .yui3-datatable-scroll-columns .yui3-datatable-header { + padding: 0; +} + +.yui3-skin-sam .yui3-datatable-x-scroller, +.yui3-skin-sam .yui3-datatable-y-scroller-container { + border: 1px solid #303030; + border-left-color: #323434; +} + +.yui3-skin-sam .yui3-datatable-scrollable-x .yui3-datatable-y-scroller-container, +.yui3-skin-sam .yui3-datatable-x-scroller .yui3-datatable-table, +.yui3-skin-sam .yui3-datatable-y-scroller .yui3-datatable-table { + border: 0 none; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-night .yui3-dial { + color:#fff; +} + +.yui3-skin-night .yui3-dial-handle{ /*container. top left corner used for trig positioning*/ + background:#439EDE; + opacity:0.3; + -moz-box-shadow:1px 1px 1px rgba(0, 0, 0, 0.9) inset; + -webkit-box-shadow:1px 1px 1px rgba(0, 0, 0, 0.9) inset; /*Chrome 7/Win bug*/ + box-shadow:1px 1px 1px rgba(0, 0, 0, 0.9) inset; + cursor:pointer; + font-size:1px; +} +.yui3-skin-night .yui3-dial-ring { + background:#595B5B; + background:-moz-linear-gradient(0% 100% 315deg, #5E6060, #2D2E2F); + background:-webkit-gradient(linear, 50% 0%, 100% 100%, from(#636666), to(#424344)); + -moz-box-shadow:1px 1px 2px rgba(0, 0, 0, 0.7) inset; + -webkit-box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.7) inset; /*Chrome 7/Win bug*/ + box-shadow:1px 1px 5px rgba(0, 0, 0, 0.4) inset; +} +.yui3-skin-night .yui3-dial-center-button{ + -moz-box-shadow:-1px -1px 2px rgba(0, 0, 0, 0.3) inset, 1px 1px 2px rgba(0, 0, 0, 0.5); + -webkit-box-shadow: -1px -1px 2px rgba(0, 0, 0, 0.3) inset, 1px 1px 2px rgba(0, 0, 0, 0.5); /*Chrome 7/Win bug*/ + box-shadow:-1px -1px 2px rgba(0, 0, 0, 0.3) inset, 1px 1px 2px rgba(0, 0, 0, 0.5); + background:#DDDBD4; + background:-moz-radial-gradient( + 30% 30% 0deg, + circle farthest-side, + #999C9C 24%, + #898989 41%, + #535555 87%) + repeat scroll 0 0 transparent; + background:-webkit-gradient( + radial, 15 15, 15, 30 30, 40, + from(#999C9C), + to(#535555), + color-stop(.2,#898989)); + cursor:pointer; + opacity:0.7; + /*text-align:center;*/ +} +.yui3-skin-night .yui3-dial-reset-string{ + color:#fff; + font-size:72%; + text-decoration:none; +} +.yui3-skin-night .yui3-dial-label{ + color:#CBCBCB; + margin-bottom:0.8em; +} +.yui3-skin-night .yui3-dial-value-string{ + margin-left:0.5em; + color:#DCDCDC; + font-size:130%; +} +.yui3-skin-night .yui3-dial-value { + visibility:hidden; + position:absolute; + top:0; + left:102%; + width:4em; +} +.yui3-skin-night .yui3-dial-north-mark{ + position:absolute; + border-left:2px solid #434343; + height:5px; + left:50%; + top:-7px; + font-size:1px; +} +.yui3-skin-night .yui3-dial-marker { + background-color:#A0D8FF; + opacity:0.2; + font-size:1px; +} +.yui3-skin-night .yui3-dial-marker-max-min{ + background-color:#FF0404; + opacity:0.6; +} +.yui3-skin-night .yui3-dial-ring-vml, +.yui3-skin-night .yui3-dial-center-button-vml, +.yui3-skin-night .yui3-dial-marker v\:oval.yui3-dial-marker-max-min, +.yui3-skin-night v\:oval.yui3-dial-marker-max-min, +.yui3-skin-night .yui3-dial-marker-vml, +.yui3-skin-night .yui3-dial-handle-vml { + background: none; + opacity:1; +} +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Vertical menus and submenus */ + +.yui3-skin-night .yui3-menu-content, +.yui3-skin-night .yui3-menu .yui3-menu .yui3-menu-content { + + font-size: 100%; + line-height: 2.25; /* 18px 1.5*/ + *line-height: 1.45; /* For IE */ + border: solid 1px #303030; + background: #151515; + /*padding: 3px 0;*/ + +} + +.yui3-skin-night .yui3-menu .yui3-menu .yui3-menu-content { + + font-size: 100%; + +} + + +/* Horizontal menus */ +.yui3-skin-night .yui3-menu-horizontal .yui3-menu-content { + + line-height: 2; /* ~24px */ + *line-height: 1.9; /* For IE */ + background-color:#3b3c3d; + background: -moz-linear-gradient( + 0% 100% 90deg, + #242526 0%, + #3b3c3d 96%, + #2C2D2F 100% + ); + background: -webkit-gradient( + linear, + left bottom, + left top, + from(#242526), + color-stop(0.96, #3b3c3d), + to(#2C2D2F) + ); + padding: 0; + +} + + +.yui3-skin-night .yui3-menu ul, +.yui3-skin-night .yui3-menu ul ul { + + margin-top: 3px; + padding-top: 3px; + border-top: solid 1px #303030; + +} + +.yui3-skin-night .yui3-menu ul.first-of-type { + + border: 0; + margin: 0; + padding: 0; + +} + +.yui3-skin-night .yui3-menu-horizontal ul { + + padding: 0; + margin: 0; + border: 0; + +} + + +.yui3-skin-night .yui3-menu li, +.yui3-skin-night .yui3-menu .yui3-menu li { + + /* + For and IE 6 (Strict Mode and Quirks Mode) and IE 7 (Quirks Mode only): + Used to collapse superfluous white space between
  • elements that is + triggered by the "display" property of the elements being set to + "block" by node-menunav-core.css file. + */ + + _border-bottom: solid 1px #151515; + +} + +.yui3-skin-night .yui3-menu-horizontal li { + + _border-bottom: 0; + +} + +.yui3-skin-night .yui3-menubuttonnav li { + + border-right: solid 1px #ccc; + +} + +.yui3-skin-night .yui3-splitbuttonnav li { + + border-right: solid 1px #303030; + +} + +.yui3-skin-night .yui3-menubuttonnav li li, +.yui3-skin-night .yui3-splitbuttonnav li li { + + border-right: 0; + +} + + +/* Menuitems and menu labels */ + + +.yui3-skin-night .yui3-menu-label, +.yui3-skin-night .yui3-menu .yui3-menu .yui3-menu-label, +.yui3-skin-night .yui3-menuitem-content, +.yui3-skin-night .yui3-menu .yui3-menu .yui3-menuitem-content { + + /*padding: 0 20px;*/ + padding: 0 1em; + /*background-color: #2F3030;*/ + + + + + + + color: #fff; + text-decoration: none; + cursor: default; + + /* + Necessary specify values for border, position and margin to override + values specified in the selectors that follow. + */ + + float: none; + border: 0; + margin: 0; + +} + +.yui3-skin-night .yui3-menu-horizontal .yui3-menu-label, +.yui3-skin-night .yui3-menu-horizontal .yui3-menuitem-content { + + padding: 0 10px; + border-style: solid; + border-color: #303030; + border-width: 1px 0; + margin: -1px 0; + + float: left; /* Ensures that menu labels clear floated descendents. + Also gets negative margins working in IE 7 + (Strict Mode). */ + width: auto; + +} + +.yui3-skin-night .yui3-menu-label, +.yui3-skin-night .yui3-menu .yui3-menu .yui3-menu-label { + + background: url(vertical-menu-submenu-indicator.png) right center no-repeat; + +} + +.yui3-skin-night .yui3-menu-horizontal .yui3-menu-label { + + background: none; + +} + +.yui3-skin-night .yui3-menubuttonnav .yui3-menu-label, +.yui3-skin-night .yui3-splitbuttonnav .yui3-menu-label { + + background-image: none; + +} + +.yui3-skin-night .yui3-menubuttonnav .yui3-menu-label { + + padding-right: 0; + +} + +.yui3-skin-night .yui3-menubuttonnav .yui3-menu-label em { + + font-style: normal; + padding-right: 20px; + display: block; + background: url(horizontal-menu-submenu-indicator.png) right center no-repeat; + +} + + +.yui3-skin-night .yui3-splitbuttonnav .yui3-menu-label { + + padding: 0; + +} + +.yui3-skin-night .yui3-splitbuttonnav .yui3-menu-label a { + + float: left; + width: auto; + color: #fff; + text-decoration: none; + cursor: default; + padding: 0 5px 0 10px; + +} + +.yui3-skin-night .yui3-splitbuttonnav .yui3-menu-label .yui3-menu-toggle { + + padding: 0; /* Overide padding applied by the preceeding rule. */ + border-left: solid 1px #303030; + width: 15px; + overflow: hidden; + text-indent: -1000px; + background: url(horizontal-menu-submenu-indicator.png) 3px center no-repeat; + +} + + +/* Selected menuitem */ + +.yui3-skin-night .yui3-menu-label-active, +.yui3-skin-night .yui3-menu-label-menuvisible, +.yui3-skin-night .yui3-menu .yui3-menu .yui3-menu-label-active, +.yui3-skin-night .yui3-menu .yui3-menu .yui3-menu-label-menuvisible { + + background-color: #292a2a; + +} + +.yui3-skin-night .yui3-menuitem-active .yui3-menuitem-content, +.yui3-skin-night .yui3-menu .yui3-menu .yui3-menuitem-active .yui3-menuitem-content { + + background-image: none; + background-color: #292a2a; + background: -moz-linear-gradient( + 0% 100% 90deg, + #252626 0%, + #333434 100% + ); + background: -webkit-gradient( + linear, + left top, + left bottom, + from(#333434), + to(#252626) + ); + + /* + Undo values set for "border-left-width" and "margin-left" when the root + menu has a class of "yui-menubuttonnav" or "yui-splitbuttonnav" applied. + */ + + border-left-width: 0; + margin-left: 0; + +} + +.yui3-skin-night .yui3-menu-horizontal .yui3-menu-label-active, +.yui3-skin-night .yui3-menu-horizontal .yui3-menuitem-active .yui3-menuitem-content, +.yui3-skin-night .yui3-menu-horizontal .yui3-menu-label-menuvisible { + + border-color: #303030; + background-color:#555658; + background: -moz-linear-gradient( + 0% 100% 90deg, + #343536 0%, + #555658 96%, + #3E3F41 100% + ); + background: -webkit-gradient( + linear, + left bottom, + left top, + from(#343536), + color-stop(0.96, #555658), + to(#3E3F41) + ); + +} + +.yui3-skin-night .yui3-menubuttonnav .yui3-menu-label-active, +.yui3-skin-night .yui3-menubuttonnav .yui3-menuitem-active .yui3-menuitem-content, +.yui3-skin-night .yui3-menubuttonnav .yui3-menu-label-menuvisible, +.yui3-skin-night .yui3-splitbuttonnav .yui3-menu-label-active, +.yui3-skin-night .yui3-splitbuttonnav .yui3-menuitem-active .yui3-menuitem-content, +.yui3-skin-night .yui3-splitbuttonnav .yui3-menu-label-menuvisible { + + border-left-width: 1px; + margin-left: -1px; + +} + +.yui3-skin-night .yui3-splitbuttonnav .yui3-menu-label-menuvisible { + + border-color: #303030; + background: transparent; + +} + +.yui3-skin-night .yui3-splitbuttonnav .yui3-menu-label-menuvisible .yui3-menu-toggle { + + border-color: #303030; + background-color: #505050; + +} +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-night .yui3-scrollview-scrollbar { + -webkit-transform: translate3d(0, 0, 0); + -moz-transform: translate(0, 0); +} + +.yui3-skin-night .yui3-scrollview-scrollbar .yui3-scrollview-first, +.yui3-skin-night .yui3-scrollview-scrollbar .yui3-scrollview-middle, +.yui3-skin-night .yui3-scrollview-scrollbar .yui3-scrollview-last { + border-radius:3px; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + background-color:#808080; + opacity:0.3; + filter:alpha(opacity=30); /*IE*/ + + +/* background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAABCAYAAAD9yd/wAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAABJJREFUeNpiZGBgSGPAAgACDAAIkABoFyloZQAAAABJRU5ErkJggg==); +*/ +} + +.yui3-skin-night .yui3-scrollview-scrollbar .yui3-scrollview-first, +.yui3-skin-night .yui3-scrollview-scrollbar .yui3-scrollview-last { + border-bottom-right-radius:0; + border-bottom-left-radius:0; + + -webkit-border-bottom-right-radius:0; + -webkit-border-bottom-left-radius:0; + + -moz-border-radius-bottomright:0; + -moz-border-radius-bottomleft:0; +} +.yui3-skin-night .yui3-scrollview-scrollbar .yui3-scrollview-last { + + border-radius:0; + border-bottom-right-radius:3px; + border-bottom-left-radius:3px; + + -webkit-border-radius:0; + -webkit-border-bottom-right-radius:3px; + -webkit-border-bottom-left-radius:3px; + -webkit-transform: translate3d(0, 0, 0); + + -moz-border-radius:0; + -moz-border-radius-bottomright:3px; + -moz-border-radius-bottomleft:3px; + -moz-transform: translate(0, 0); +} + +.yui3-skin-night .yui3-scrollview-scrollbar .yui3-scrollview-middle { + border-radius:0; + -webkit-border-radius: 0; + -moz-border-radius: 0; + + -webkit-transform: translate3d(0,0,0) scaleY(1); + -webkit-transform-origin: 0 0; + + -moz-transform: translate(0,0) scaleY(1); + -moz-transform-origin: 0 0; +} + +.yui3-skin-night .yui3-scrollview-scrollbar-horiz .yui3-scrollview-first, +.yui3-skin-night .yui3-scrollview-scrollbar-horiz .yui3-scrollview-last { + border-top-right-radius: 0; + border-bottom-left-radius: 3px; + + -webkit-border-top-right-radius: 0; + -webkit-border-bottom-left-radius: 3px; + + -moz-border-radius-topright: 0; + -moz-border-radius-bottomleft: 3px; +} + +.yui3-skin-night .yui3-scrollview-scrollbar-horiz .yui3-scrollview-last { + border-bottom-left-radius: 0; + border-top-right-radius: 3px; + + -webkit-border-bottom-left-radius: 0; + -webkit-border-top-right-radius: 3px; + + -moz-border-radius-bottomleft: 0; + -moz-border-radius-topright: 3px; +} + +.yui3-skin-night .yui3-scrollview-scrollbar-horiz .yui3-scrollview-middle { + -webkit-transform: translate3d(0,0,0) scaleX(1); + -webkit-transform-origin: 0 0; + + -moz-transform: translate(0,0) scaleX(1); + -moz-transform-origin: 0 0; +} + +.yui3-skin-night .yui3-scrollview-scrollbar-vert-basic .yui3-scrollview-child, +.yui3-skin-night .yui3-scrollview-scrollbar-horiz-basic .yui3-scrollview-child { + background-color: #aaa; + background-image: none; +} +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Horizontal Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/sam-dark/thumb-x.png */ + +.yui3-skin-night .yui3-slider-x .yui3-slider-rail, +.yui3-skin-night .yui3-slider-x .yui3-slider-rail-cap-left, +.yui3-skin-night .yui3-slider-x .yui3-slider-rail-cap-right { + background-image: url(rail-x.png); + background-repeat: repeat-x; + /* alternate: rail-x-lines.png */ +} + +.yui3-skin-night .yui3-slider-x .yui3-slider-rail { + height: 26px; +} +.yui3-skin-night .yui3-slider-x .yui3-slider-thumb { + height: 26px; + width: 21px; +} + +.yui3-skin-night .yui3-slider-x .yui3-slider-rail-cap-left { + background-position: 0 -20px; + height: 20px; + left: -2px; + width: 5px; +} +.yui3-skin-night .yui3-slider-x .yui3-slider-rail-cap-right { + background-position: 0 -40px; + height: 20px; + right: -2px; + width: 5px; +} + +.yui3-skin-night .yui3-slider-x .yui3-slider-thumb-image { + left: 0; + top: -10px; +} +.yui3-skin-night .yui3-slider-x .yui3-slider-thumb-shadow { + left: 0; + opacity: 0.15; + filter: alpha(opacity=15); + top: -50px; +} + +/* Vertical Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/sam-dark/thumb-y.png */ + +.yui3-skin-night .yui3-slider-y .yui3-slider-rail, +.yui3-skin-night .yui3-slider-y .yui3-slider-rail-cap-top, +.yui3-skin-night .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-image: url(rail-y.png); + background-repeat: repeat-y; + /* alternate: rail-y-lines.png */ +} + +.yui3-skin-night .yui3-slider-y .yui3-slider-rail { + width: 26px; +} +.yui3-skin-night .yui3-slider-y .yui3-slider-thumb { + width: 26px; + height: 15px; +} + +.yui3-skin-night .yui3-slider-y .yui3-slider-rail-cap-top { + background-position: -20px 0; + width: 20px; + top: -2px; + height: 5px; +} +.yui3-skin-night .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-position: -40px 0; + width: 20px; + bottom: -2px; + height: 5px; +} + +.yui3-skin-night .yui3-slider-y .yui3-slider-thumb-image { + left: -10px; + top: 0; +} +.yui3-skin-night .yui3-slider-y .yui3-slider-thumb-shadow { + left: -50px; + opacity: 0.15; + filter: alpha(opacity=15); + top: 0; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Horizontal Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/night/thumb-x.png */ + +.yui3-skin-night .yui3-slider-x .yui3-slider-rail, +.yui3-skin-night .yui3-slider-x .yui3-slider-rail-cap-left, +.yui3-skin-night .yui3-slider-x .yui3-slider-rail-cap-right { + background-image: url(rail-x.png); + background-repeat: repeat-x; + /* alternate: rail-x-lines.png */ +} + +.yui3-skin-night .yui3-slider-x .yui3-slider-rail { + height: 25px; +} +.yui3-skin-night .yui3-slider-x .yui3-slider-thumb { + height: 26px; + width: 21px; +} + +.yui3-skin-night .yui3-slider-x .yui3-slider-rail-cap-left { + background-position: 0 -20px; + height: 20px; + left: -5px; + width: 5px; +} +.yui3-skin-night .yui3-slider-x .yui3-slider-rail-cap-right { + background-position: 0 -40px; + height: 20px; + right: -5px; + width: 5px; +} + +.yui3-skin-night .yui3-slider-x .yui3-slider-thumb-image { + left: 0; + top: -10px; +} +.yui3-skin-night .yui3-slider-x .yui3-slider-thumb-shadow { + left: 0; + opacity: 0.15; + filter: alpha(opacity=15); + top: -50px; +} + +/* Vertical Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/night/thumb-y.png */ + +.yui3-skin-night .yui3-slider-y .yui3-slider-rail, +.yui3-skin-night .yui3-slider-y .yui3-slider-rail-cap-top, +.yui3-skin-night .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-image: url(rail-y.png); + background-repeat: repeat-y; + /* alternate: rail-y-lines.png */ +} + +.yui3-skin-night .yui3-slider-y .yui3-slider-rail { + width: 25px; +} +.yui3-skin-night .yui3-slider-y .yui3-slider-thumb { + width: 26px; + height: 21px; +} + +.yui3-skin-night .yui3-slider-y .yui3-slider-rail-cap-top { + background-position: -20px 0; + width: 20px; + top: -5px; + height: 5px; +} +.yui3-skin-night .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-position: -40px 0; + width: 20px; + bottom: -5px; + height: 5px; +} + +.yui3-skin-night .yui3-slider-y .yui3-slider-thumb-image { + left: -10px; + top: 0; +} +.yui3-skin-night .yui3-slider-y .yui3-slider-thumb-shadow { + left: -50px; + opacity: 0.15; + filter: alpha(opacity=15); + top: 0; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-night .yui3-widget-mask { + background-color: black; + zoom: 1; + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(opacity=40)"; + filter: alpha(opacity=40); + opacity: 0.4; +} diff --git a/lib/yuilib/3.12.0/assets/skin/round-dark/skin.css b/lib/yuilib/3.12.0/assets/skin/round-dark/skin.css new file mode 100755 index 00000000000..5ef5c1325b0 --- /dev/null +++ b/lib/yuilib/3.12.0/assets/skin/round-dark/skin.css @@ -0,0 +1,193 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Horizontal Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/round-dark/thumb-x.png */ +/* Alternate thumbUrl /build/slider-base/assets/skins/round-dark/thumb-x-grip.png */ + +.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail, +.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail-cap-left, +.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail-cap-right { + background-image: url(rail-x.png); + background-repeat: repeat-x; +} + +.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail { + height: 25px; + background-position: 0 3px; +} +.yui3-skin-round-dark .yui3-slider-x .yui3-slider-thumb { + height: 26px; + width: 24px; +} + +.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail-cap-left { + background-position: 0 -17px; + height: 20px; + left: -2px; + width: 5px; +} +.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail-cap-right { + background-position: 0 -37px; + height: 20px; + right: -2px; + width: 5px; +} + +.yui3-skin-round-dark .yui3-slider-x .yui3-slider-thumb-image { + left: 0; + top: -7px; +} +.yui3-skin-round-dark .yui3-slider-x .yui3-slider-thumb-shadow { + left: 0; + opacity: 0.15; + filter: alpha(opacity=15); + top: -47px; +} + +/* Vertical Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/round-dark/thumb-y.png */ +/* Alternate thumbUrl /build/slider-base/assets/skins/round-dark/thumb-y-grip.png */ + +.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail, +.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail-cap-top, +.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-image: url(rail-y.png); + background-repeat: repeat-y; +} + +.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail { + width: 25px; + background-position: 3px 0; +} +.yui3-skin-round-dark .yui3-slider-y .yui3-slider-thumb { + width: 26px; + height: 24px; +} + +.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail-cap-top { + background-position: -17px 0; + width: 20px; + top: -2px; + height: 5px; +} +.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-position: -37px 0; + width: 20px; + bottom: -2px; + height: 5px; +} + +.yui3-skin-round-dark .yui3-slider-y .yui3-slider-thumb-image { + top: 0; + left: -7px; +} +.yui3-skin-round-dark .yui3-slider-y .yui3-slider-thumb-shadow { + top: 0; + left: -47px; + opacity: 0.15; + filter: alpha(opacity=15); +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Horizontal Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/round-dark/thumb-x.png */ +/* Alternate thumbUrl /build/slider-base/assets/skins/round-dark/thumb-x-grip.png */ + +.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail, +.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail-cap-left, +.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail-cap-right { + background-image: url(rail-x.png); + background-repeat: repeat-x; +} + +.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail { + height: 25px; + background-position: 0 3px; +} +.yui3-skin-round-dark .yui3-slider-x .yui3-slider-thumb { + height: 26px; + width: 24px; +} + +.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail-cap-left { + background-position: 0 -17px; + height: 20px; + left: -2px; + width: 5px; +} +.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail-cap-right { + background-position: 0 -37px; + height: 20px; + right: -2px; + width: 5px; +} + +.yui3-skin-round-dark .yui3-slider-x .yui3-slider-thumb-image { + left: 0; + top: -7px; +} +.yui3-skin-round-dark .yui3-slider-x .yui3-slider-thumb-shadow { + left: 0; + opacity: 0.15; + filter: alpha(opacity=15); + top: -47px; +} + +/* Vertical Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/round-dark/thumb-y.png */ +/* Alternate thumbUrl /build/slider-base/assets/skins/round-dark/thumb-y-grip.png */ + +.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail, +.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail-cap-top, +.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-image: url(rail-y.png); + background-repeat: repeat-y; +} + +.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail { + width: 25px; + background-position: 3px 0; +} +.yui3-skin-round-dark .yui3-slider-y .yui3-slider-thumb { + width: 26px; + height: 24px; +} + +.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail-cap-top { + background-position: -17px 0; + width: 20px; + top: -2px; + height: 5px; +} +.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-position: -37px 0; + width: 20px; + bottom: -2px; + height: 5px; +} + +.yui3-skin-round-dark .yui3-slider-y .yui3-slider-thumb-image { + top: 0; + left: -7px; +} +.yui3-skin-round-dark .yui3-slider-y .yui3-slider-thumb-shadow { + top: 0; + left: -47px; + opacity: 0.15; + filter: alpha(opacity=15); +} diff --git a/lib/yuilib/3.12.0/assets/skin/round/skin.css b/lib/yuilib/3.12.0/assets/skin/round/skin.css new file mode 100755 index 00000000000..a0a4075d739 --- /dev/null +++ b/lib/yuilib/3.12.0/assets/skin/round/skin.css @@ -0,0 +1,193 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Horizontal Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/round/thumb-x.png */ +/* Alternate thumbUrl /build/slider-base/assets/skins/round/thumb-x-grip.png */ + +.yui3-skin-round .yui3-slider-x .yui3-slider-rail, +.yui3-skin-round .yui3-slider-x .yui3-slider-rail-cap-left, +.yui3-skin-round .yui3-slider-x .yui3-slider-rail-cap-right { + background-image: url(rail-x.png); + background-repeat: repeat-x; +} + +.yui3-skin-round .yui3-slider-x .yui3-slider-rail { + height: 25px; + background-position: 0 3px; +} +.yui3-skin-round .yui3-slider-x .yui3-slider-thumb { + height: 26px; + width: 24px; +} + +.yui3-skin-round .yui3-slider-x .yui3-slider-rail-cap-left { + background-position: 0 -17px; + height: 20px; + left: -2px; + width: 5px; +} +.yui3-skin-round .yui3-slider-x .yui3-slider-rail-cap-right { + background-position: 0 -37px; + height: 20px; + right: -2px; + width: 5px; +} + +.yui3-skin-round .yui3-slider-x .yui3-slider-thumb-image { + left: 0; + top: -7px; +} +.yui3-skin-round .yui3-slider-x .yui3-slider-thumb-shadow { + left: 0; + opacity: 0.15; + filter: alpha(opacity=15); + top: -47px; +} + +/* Vertical Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/round/thumb-y.png */ +/* Alternate thumbUrl /build/slider-base/assets/skins/round/thumb-y-grip.png */ + +.yui3-skin-round .yui3-slider-y .yui3-slider-rail, +.yui3-skin-round .yui3-slider-y .yui3-slider-rail-cap-top, +.yui3-skin-round .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-image: url(rail-y.png); + background-repeat: repeat-y; +} + +.yui3-skin-round .yui3-slider-y .yui3-slider-rail { + width: 25px; + background-position: 3px 0; +} +.yui3-skin-round .yui3-slider-y .yui3-slider-thumb { + width: 26px; + height: 24px; +} + +.yui3-skin-round .yui3-slider-y .yui3-slider-rail-cap-top { + background-position: -17px 0; + width: 20px; + top: -2px; + height: 5px; +} +.yui3-skin-round .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-position: -37px 0; + width: 20px; + bottom: -2px; + height: 5px; +} + +.yui3-skin-round .yui3-slider-y .yui3-slider-thumb-image { + top: 0; + left: -8px; +} +.yui3-skin-round .yui3-slider-y .yui3-slider-thumb-shadow { + top: 0; + left: -48px; + opacity: 0.15; + filter: alpha(opacity=15); +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Horizontal Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/round/thumb-x.png */ +/* Alternate thumbUrl /build/slider-base/assets/skins/round/thumb-x-grip.png */ + +.yui3-skin-round .yui3-slider-x .yui3-slider-rail, +.yui3-skin-round .yui3-slider-x .yui3-slider-rail-cap-left, +.yui3-skin-round .yui3-slider-x .yui3-slider-rail-cap-right { + background-image: url(rail-x.png); + background-repeat: repeat-x; +} + +.yui3-skin-round .yui3-slider-x .yui3-slider-rail { + height: 25px; + background-position: 0 3px; +} +.yui3-skin-round .yui3-slider-x .yui3-slider-thumb { + height: 26px; + width: 24px; +} + +.yui3-skin-round .yui3-slider-x .yui3-slider-rail-cap-left { + background-position: 0 -17px; + height: 20px; + left: -2px; + width: 5px; +} +.yui3-skin-round .yui3-slider-x .yui3-slider-rail-cap-right { + background-position: 0 -37px; + height: 20px; + right: -2px; + width: 5px; +} + +.yui3-skin-round .yui3-slider-x .yui3-slider-thumb-image { + left: 0; + top: -7px; +} +.yui3-skin-round .yui3-slider-x .yui3-slider-thumb-shadow { + left: 0; + opacity: 0.15; + filter: alpha(opacity=15); + top: -47px; +} + +/* Vertical Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/round/thumb-y.png */ +/* Alternate thumbUrl /build/slider-base/assets/skins/round/thumb-y-grip.png */ + +.yui3-skin-round .yui3-slider-y .yui3-slider-rail, +.yui3-skin-round .yui3-slider-y .yui3-slider-rail-cap-top, +.yui3-skin-round .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-image: url(rail-y.png); + background-repeat: repeat-y; +} + +.yui3-skin-round .yui3-slider-y .yui3-slider-rail { + width: 25px; + background-position: 3px 0; +} +.yui3-skin-round .yui3-slider-y .yui3-slider-thumb { + width: 26px; + height: 24px; +} + +.yui3-skin-round .yui3-slider-y .yui3-slider-rail-cap-top { + background-position: -17px 0; + width: 20px; + top: -2px; + height: 5px; +} +.yui3-skin-round .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-position: -37px 0; + width: 20px; + bottom: -2px; + height: 5px; +} + +.yui3-skin-round .yui3-slider-y .yui3-slider-thumb-image { + top: 0; + left: -8px; +} +.yui3-skin-round .yui3-slider-y .yui3-slider-thumb-shadow { + top: 0; + left: -48px; + opacity: 0.15; + filter: alpha(opacity=15); +} diff --git a/lib/yuilib/3.12.0/assets/skin/sam-dark/skin.css b/lib/yuilib/3.12.0/assets/skin/sam-dark/skin.css new file mode 100755 index 00000000000..81c1a1cb44e --- /dev/null +++ b/lib/yuilib/3.12.0/assets/skin/sam-dark/skin.css @@ -0,0 +1,189 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Horizontal Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/sam-dark/thumb-x.png */ + +.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail, +.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail-cap-left, +.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail-cap-right { + background-image: url(rail-x.png); + background-repeat: repeat-x; + /* alternate: rail-x-lines.png */ +} + +.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail { + height: 26px; +} +.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-thumb { + height: 26px; + width: 15px; +} + +.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail-cap-left { + background-position: 0 -20px; + height: 20px; + left: -2px; + width: 5px; +} +.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail-cap-right { + background-position: 0 -40px; + height: 20px; + right: -2px; + width: 5px; +} + +.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-thumb-image { + left: 0; + top: -10px; +} +.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-thumb-shadow { + left: 0; + opacity: 0.15; + filter: alpha(opacity=15); + top: -50px; +} + +/* Vertical Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/sam-dark/thumb-y.png */ + +.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail, +.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail-cap-top, +.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-image: url(rail-y.png); + background-repeat: repeat-y; + /* alternate: rail-y-lines.png */ +} + +.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail { + width: 26px; +} +.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-thumb { + width: 26px; + height: 15px; +} + +.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail-cap-top { + background-position: -20px 0; + width: 20px; + top: -2px; + height: 5px; +} +.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-position: -40px 0; + width: 20px; + bottom: -2px; + height: 5px; +} + +.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-thumb-image { + left: -10px; + top: 0; +} +.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-thumb-shadow { + left: -50px; + opacity: 0.15; + filter: alpha(opacity=15); + top: 0; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Horizontal Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/sam-dark/thumb-x.png */ + +.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail, +.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail-cap-left, +.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail-cap-right { + background-image: url(rail-x.png); + background-repeat: repeat-x; + /* alternate: rail-x-lines.png */ +} + +.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail { + height: 26px; +} +.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-thumb { + height: 26px; + width: 15px; +} + +.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail-cap-left { + background-position: 0 -20px; + height: 20px; + left: -2px; + width: 5px; +} +.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail-cap-right { + background-position: 0 -40px; + height: 20px; + right: -2px; + width: 5px; +} + +.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-thumb-image { + left: 0; + top: -10px; +} +.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-thumb-shadow { + left: 0; + opacity: 0.15; + filter: alpha(opacity=15); + top: -50px; +} + +/* Vertical Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/sam-dark/thumb-y.png */ + +.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail, +.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail-cap-top, +.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-image: url(rail-y.png); + background-repeat: repeat-y; + /* alternate: rail-y-lines.png */ +} + +.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail { + width: 26px; +} +.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-thumb { + width: 26px; + height: 15px; +} + +.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail-cap-top { + background-position: -20px 0; + width: 20px; + top: -2px; + height: 5px; +} +.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-position: -40px 0; + width: 20px; + bottom: -2px; + height: 5px; +} + +.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-thumb-image { + left: -10px; + top: 0; +} +.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-thumb-shadow { + left: -50px; + opacity: 0.15; + filter: alpha(opacity=15); + top: 0; +} diff --git a/lib/yuilib/3.12.0/assets/skin/sam/skin.css b/lib/yuilib/3.12.0/assets/skin/sam/skin.css new file mode 100755 index 00000000000..71cbf4f6c39 --- /dev/null +++ b/lib/yuilib/3.12.0/assets/skin/sam/skin.css @@ -0,0 +1,1652 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-sam .yui3-scrollview { + -webkit-tap-highlight-color: rgba(255,255,255,0); +} + +.yui3-skin-sam .yui3-scrollview{ + background-color: white; +} +/* For IE 6/7 - needs a background color (above) to pick up events, and zoom, to fill the UL */ +.yui3-skin-sam .yui3-scrollview-vert .yui3-scrollview-content .yui3-scrollview-item { + *zoom:1; +} + +/* For IE7 - needs zoom, otherwise clipped content is not rendered */ +.yui3-skin-sam .yui3-scrollview-vert .yui3-scrollview-content .yui3-scrollview-list { + *zoom:1; + list-style:none; /*need these since reset is not required*/ + padding:0; /*need these since reset is not required*/ + margin:0; /*need these since reset is not required*/ +} + +.yui3-skin-sam .yui3-scrollview-vert .yui3-scrollview-content { + /*border:1px solid #303030; If the ScrollView needs a border add it here */ + border-top:0; + background-color:white; + font-family: HelveticaNeue,arial,helvetica,clean,sans-serif; + color:black; +} + +.yui3-skin-sam .yui3-scrollview-vert .yui3-scrollview-content .yui3-scrollview-item { + border-bottom: 1px solid #303030; + padding: 15px 20px 16px; + font-size: 100%; + font-weight: bold; + background-color:white; + cursor:pointer; +} + + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-sam .yui3-console-separate { + position:absolute; + right:1em; + top:1em; + z-index:999; +} + +.yui3-skin-sam .yui3-console-inline { + /* xbrowser inline-block styles */ + display: -moz-inline-stack; /* FF2 */ + display: inline-block; + *display: inline; /* IE 7- (with zoom) */ + zoom: 1; + vertical-align: top; +} +.yui3-skin-sam .yui3-console-inline .yui3-console-content { + position: relative; +} + +.yui3-skin-sam .yui3-console-content { + background: #777; + _background: #D8D8DA url(bg.png) repeat-x 0 0; + font: normal 13px/1.3 Arial, sans-serif; + text-align: left; + + border: 1px solid #777; + border-radius: 10px; + -moz-border-radius: 10px; + -webkit-border-radius: 10px; +} + +.yui3-skin-sam .yui3-console-hd, +.yui3-skin-sam .yui3-console-bd, +.yui3-skin-sam .yui3-console-ft { + position: relative; +} + +.yui3-skin-sam .yui3-console-hd, +.yui3-skin-sam .yui3-console-ft .yui3-console-controls { + text-align: right; +} + +.yui3-skin-sam .yui3-console-hd { + background: #D8D8DA url(bg.png) repeat-x 0 0; + padding: 1ex; + + border: 1px solid transparent; + _border: 0 none; + border-top-right-radius: 10px; + border-top-left-radius: 10px; + -moz-border-radius-topright: 10px; + -moz-border-radius-topleft: 10px; + -webkit-border-top-right-radius: 10px; + -webkit-border-top-left-radius: 10px; +} + +.yui3-skin-sam .yui3-console-bd { + background: #fff; + border-top: 1px solid #777; + border-bottom: 1px solid #777; + color: #000; + font-size: 11px; + overflow: auto; + overflow-x: auto; + overflow-y: scroll; + _width: 100%; +} + +.yui3-skin-sam .yui3-console-ft { + background: #D8D8DA url(bg.png) repeat-x 0 0; + + border: 1px solid transparent; + _border: 0 none; + border-bottom-right-radius: 10px; + border-bottom-left-radius: 10px; + -moz-border-radius-bottomright: 10px; + -moz-border-radius-bottomleft: 10px; + -webkit-border-bottom-right-radius: 10px; + -webkit-border-bottom-left-radius: 10px; +} + +.yui3-skin-sam .yui3-console-controls { + padding: 4px 1ex; + zoom: 1; +} + +.yui3-skin-sam .yui3-console-title { + color: #000; + display: inline; + float: left; + font-weight: bold; + font-size: 13px; + height: 24px; + line-height: 24px; + margin: 0; + padding-left: 1ex; +} + +.yui3-skin-sam .yui3-console-pause-label { + float: left; +} +.yui3-skin-sam .yui3-console-button { + line-height: 1.3; +} + +.yui3-skin-sam .yui3-console-collapsed .yui3-console-bd, +.yui3-skin-sam .yui3-console-collapsed .yui3-console-ft { + display: none; +} +.yui3-skin-sam .yui3-console-content.yui3-console-collapsed { + -webkit-border-radius: 0; +} +.yui3-skin-sam .yui3-console-collapsed .yui3-console-hd { + border-radius: 10px; + -moz-border-radius: 10px; + -webkit-border-radius: 0; +} + +/* Log entries */ +.yui3-skin-sam .yui3-console-entry { + border-bottom: 1px solid #aaa; + min-height: 32px; + _height: 32px; +} + +.yui3-skin-sam .yui3-console-entry-meta { + margin: 0; + overflow: hidden; +} + +.yui3-skin-sam .yui3-console-entry-content { + margin: 0; + padding: 0 1ex; + white-space: pre-wrap; + word-wrap: break-word; +} + +.yui3-skin-sam .yui3-console-entry-meta .yui3-console-entry-src { + color: #000; + font-style: italic; + font-weight: bold; + float: right; + margin: 2px 5px 0 0; +} +.yui3-skin-sam .yui3-console-entry-meta .yui3-console-entry-time { + color: #777; + padding-left: 1ex; +} +.yui3-skin-sam .yui3-console-entry-warn .yui3-console-entry-meta .yui3-console-entry-time { + color: #555; +} + +.yui3-skin-sam .yui3-console-entry-info .yui3-console-entry-meta .yui3-console-entry-cat, +.yui3-skin-sam .yui3-console-entry-warn .yui3-console-entry-meta .yui3-console-entry-cat, +.yui3-skin-sam .yui3-console-entry-error .yui3-console-entry-meta .yui3-console-entry-cat { + display: none; +} +.yui3-skin-sam .yui3-console-entry-warn { + background: #aee url(warn_error.png) no-repeat -15px 15px; +} +.yui3-skin-sam .yui3-console-entry-error { + background: #ffa url(warn_error.png) no-repeat 5px -24px; + color: #900; +} +.yui3-skin-sam .yui3-console-entry-warn .yui3-console-entry-content, +.yui3-skin-sam .yui3-console-entry-error .yui3-console-entry-content { + padding-left: 24px; +} +.yui3-skin-sam .yui3-console-entry-cat { + text-transform: uppercase; + padding: 1px 4px; + background-color: #ccc; +} +.yui3-skin-sam .yui3-console-entry-info .yui3-console-entry-cat { + background-color: #ac2; +} +.yui3-skin-sam .yui3-console-entry-warn .yui3-console-entry-cat { + background-color: #e81; +} +.yui3-skin-sam .yui3-console-entry-error .yui3-console-entry-cat { + background-color: #b00; + color: #fff; +} + +.yui3-skin-sam .yui3-console-hidden { display: none; } + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* basic skin styles */ +.yui3-skin-sam .yui3-datatable-table { + margin: 0; + padding: 0; + font-family: arial, sans-serif; + border-collapse: separate; + border-spacing: 0; + /* IE7- don't support border-spacing, but separate is needed for more + * reliable dimension calculation for scrollable's header width sync, + * and it doesn't hurt to have the declaration here. + */ + /**border-collapse: collapse;*/ + border: 1px solid #cbcbcb; +} + +.yui3-skin-sam .yui3-datatable-caption { + color: #000; + font: italic 85%/1 arial, sans-serif; + padding: 1em 0; + text-align: center; +} + +.yui3-skin-sam .yui3-datatable-cell, +.yui3-skin-sam .yui3-datatable-header { + border-left: 1px solid #cbcbcb;/* inner column border */ + border-width: 0 0 0 1px; + font-size: inherit; + margin: 0; + overflow: visible; /*to make ths where the title is really long work*/ + padding: 4px 10px 4px 10px; /* cell padding */ +} +.yui3-skin-sam .yui3-datatable-cell:first-child, +.yui3-skin-sam .yui3-datatable-first-header { + border-left-width: 0px; +} + +.yui3-skin-sam .yui3-datatable-header { + /* header gradient */ + background: #fff url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0; + + background-image:-webkit-linear-gradient(transparent 40%, rgba(0,0,0,0.21)); + background-image:-moz-linear-gradient(top,transparent 40%,rgba(0,0,0,0.21)); + background-image: -ms-linear-gradient(transparent 40%, rgba(0,0,0,0.21)); + background-image: -o-linear-gradient(transparent 40%, rgba(0,0,0,0.21)); + background-image: linear-gradient(transparent 40%, rgba(0,0,0,0.21)); + /* Not using an IE gradient because it doesn't support color stops */ + + color: #000; + font-weight: normal; + text-align: left; + text-shadow: 0 1px 1px #fff; + vertical-align: bottom; + white-space: nowrap; +} + +/* +striping: + even - #fff (white) + odd - #edf5ff (light blue) +*/ +.yui3-skin-sam .yui3-datatable-cell { + background-color: transparent; +} +.yui3-skin-sam .yui3-datatable-even .yui3-datatable-cell { + background-color: #fff; +} +.yui3-skin-sam .yui3-datatable-odd .yui3-datatable-cell { + background-color: #edf5ff; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-sam .yui3-calendar-content { + padding:10px; + color: #000000; + border: 1px solid gray; + background: #f2f2f2; /* Old browsers */ + background: -moz-linear-gradient(top, #f9f9f9 0%, #f2f2f2 100%); /* FF3.6+ */ + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f9f9f9), color-stop(100%,#f2f2f2)); /* Chrome,Safari4+ */ + background: -webkit-linear-gradient(top, #f9f9f9 0%,#f2f2f2 100%); /* Chrome10+,Safari5.1+ */ + background: -o-linear-gradient(top, #f9f9f9 0%,#f2f2f2 100%); /* Opera11.10+ */ + background: -ms-linear-gradient(top, #f9f9f9 0%,#f2f2f2 100%); /* IE10+ */ + filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f9f9f9', endColorstr='#f2f2f2',GradientType=0 ); /* IE6-9 */ + background: linear-gradient(top, #f9f9f9 0%,#f2f2f2 100%); /* W3C */ + -moz-border-radius: 5px; + border-radius: 5px; +} + +.yui3-skin-sam .yui3-calendar-grid { + padding:5px; + border-collapse: collapse; +} + +.yui3-skin-sam .yui3-calendar-header { + padding-bottom:10px; +} + +.yui3-skin-sam .yui3-calendar-header-label { + margin: 0; + font-size: 1em; + font-weight: bold; +} + +.yui3-skin-sam .yui3-calendar-day, +.yui3-skin-sam .yui3-calendar-prevmonth-day, +.yui3-skin-sam .yui3-calendar-nextmonth-day { + padding:5px; + border: 1px solid #CCCCCC; + background: #FFFFFF; + text-align:center; +} + + +.yui3-skin-sam .yui3-calendar-day:hover { + background: #0066CC; + color: #FFFFFF; +} + +.yui3-skin-sam .yui3-calendar-selection-disabled, +.yui3-skin-sam .yui3-calendar-selection-disabled:hover { + color: #A6A6A6; + background: #CCCCCC; +} + +.yui3-skin-sam .yui3-calendar-weekday { + font-weight: bold; +} + +.yui3-skin-sam .yui3-calendar-prevmonth-day, .yui3-skin-sam .yui3-calendar-nextmonth-day { + color: #A6A6A6; +} + +.yui3-skin-sam .yui3-calendar-day { + font-weight: bold; +} + +.yui3-skin-sam .yui3-calendar-day-selected { + background-color: #B3D4FF; + color: #000000; +} + +.yui3-skin-sam .yui3-calendar-header-label { + text-align: center; +} + +.yui3-skin-sam .yui3-calendar-left-grid { + margin-right:1em; +} + +.yui3-skin-sam .yui3-calendar-right-grid { + margin-left:1em; +} + +.yui3-skin-sam .yui3-calendar-day-highlighted { + background-color: #DCDEF5; +} + +.yui3-skin-sam .yui3-calendar-day-selected.yui3-calendar-day-highlighted { + background-color: #758FBB; +} +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-sam .yui3-datatable-sortable-column { + cursor: pointer; +} + +.yui3-skin-sam .yui3-datatable-columns .yui3-datatable-sorted, +.yui3-skin-sam .yui3-datatable-sortable-column:hover { + *background: #c1c4c8 url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -100px; + background-color: #f1f2f3; +} + +.yui3-skin-sam .yui3-datatable-sort-liner { + display: block; + height: 100%; + position: relative; + padding-right: 15px; + position: relative; +} + +.yui3-skin-sam .yui3-datatable-sort-indicator { + position: absolute; + right: 0; + bottom: .5ex; + width: 7px; + height: 10px; + background: url(sort-arrow-sprite.png) no-repeat 0 0; + _background: url(sort-arrow-sprite-ie.png) no-repeat 0 0; + overflow: hidden; +} + +.yui3-skin-sam .yui3-datatable-sorted .yui3-datatable-sort-indicator { + background-position: 0 -10px; +} +.yui3-skin-sam .yui3-datatable-sorted-desc .yui3-datatable-sort-indicator { + background-position: 0 -20px; +} + +.yui3-skin-sam .yui3-datatable-data .yui3-datatable-even .yui3-datatable-sorted { + background-color: #edf5ff; +} + +.yui3-skin-sam .yui3-datatable-data .yui3-datatable-odd .yui3-datatable-sorted { + background-color: #dbeaff; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-sam .yui3-panel-content { + -webkit-box-shadow: 0 0 5px #333; + -moz-box-shadow: 0 0 5px #333; + box-shadow: 0 0 5px #333; + border: 1px solid black; + background: white; +} +.yui3-skin-sam .yui3-panel .yui3-widget-hd { + padding: 8px 28px 8px 8px; /* Room for close button. */ + min-height: 13px; /* For the close button */ + _height: 13px; /* IE6 */ + color: white; + background-color: #3961c5; + background: -moz-linear-gradient( + 0% 100% 90deg, + #2647a0 7%, + #3d67ce 50%, + #426fd9 100% + ); + background: -webkit-gradient( + linear, + left bottom, + left top, + from(#2647a0), + color-stop(0.07, #2647a0), + color-stop(0.5, #3d67ce), + to(#426fd9) + ); + /* + TODO: Add support for IE and W3C gradients + */ +} +.yui3-skin-sam .yui3-panel .yui3-widget-hd .yui3-widget-buttons { + padding: 8px; +} +.yui3-skin-sam .yui3-panel .yui3-widget-bd { + padding: 10px; +} +.yui3-skin-sam .yui3-panel .yui3-widget-ft { + background: #EDF5FF; + padding: 8px; + text-align: right; +} +.yui3-skin-sam .yui3-panel .yui3-widget-ft .yui3-button { + margin-left: 8px; +} + +/* +Support for icon-based [x] "close" button in the header. + +Nicolas Gallagher: "CSS image replacement with pseudo-elements (NIR)" +http://nicolasgallagher.com/css-image-replacement-with-pseudo-elements/ +*/ +.yui3-skin-sam .yui3-panel .yui3-widget-hd .yui3-button-close { + /* Reset base button styles */ + background: transparent; + filter: none; + border: none; + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; + + /* Structure */ + width: 13px; + height: 13px; + padding: 0; + overflow: hidden; + vertical-align: top; + /* IE < 8 :( */ + *font-size: 0; + *line-height: 0; + *letter-spacing: -1000px; + *color: #86A5EC; + *background: url(sprite_icons.png) no-repeat 1px 1px; +} +.yui3-skin-sam .yui3-panel .yui3-widget-hd .yui3-button-close:before { + /* + Displays the [x] icon in place of the "Close" text. + Note: The `width` of this pseudo element is the same as its "host" element. + */ + content: url(sprite_icons.png); + display: inline-block; + text-align: center; + font-size: 0; + line-height: 0; + width: 13px; + margin: 1px 0 0 1px; +} +.yui3-skin-sam .yui3-panel-hidden .yui3-widget-hd .yui3-button-close { + /* Required for IE > 7 to deal with pseudo :before element */ + display: none; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-sam .yui3-aclist-content { + background: #fff; + border: 1px solid #afafaf; + -moz-box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.58); + -webkit-box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.58); + box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.58); +} + +.yui3-skin-sam .yui3-aclist-item-hover { + background: #bfdaff; +} + +.yui3-skin-sam .yui3-aclist-item-active { + background: #2647a0; + color: #fff; + outline: none; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-paginator { + background: white url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0; + background-image: -webkit-linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: -moz-linear-gradient(top, transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: -ms-linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: -o-linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + border-color: #cbcbcb; +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control { + color: #242D42; +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control-first:hover, +.yui3-datatable-paginator .yui3-datatable-paginator-control-last:hover, +.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:hover, +.yui3-datatable-paginator .yui3-datatable-paginator-control-next:hover { + box-shadow: 0 1px 2px #292442; +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control-first:active, +.yui3-datatable-paginator .yui3-datatable-paginator-control-last:active, +.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:active, +.yui3-datatable-paginator .yui3-datatable-paginator-control-next:active { + box-shadow: inset 0 1px 1px #292442; + background: #E0DEED; + background: hsla(250, 30%, 90%, 0.3); +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled, +.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled:hover { + color: #BDC7DB; + border-color: transparent; + box-shadow: none; +} +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-sam .yui3-calendar-day-highlighted { + background-color: #DCDEF5; +} + +.yui3-skin-sam .yui3-calendar-day-selected.yui3-calendar-day-highlighted { + background-color: #758FBB; +} +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* empty */ + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* .yui-navset defaults to .yui-navset-top */ +.yui3-skin-sam .yui3-tabview-list { + border:solid #2647a0; /* color between tab list and content */ + border-width:0 0 5px; + zoom:1; +} + +.yui3-skin-sam .yui3-tab { + margin:0 0.2em 0 0; + padding:1px 0 0; /* gecko: make room for overflow */ + zoom:1; +} + +.yui3-skin-sam .yui3-tab-selected { + margin-bottom:-1px; /* for overlap (mapped to tabview-list border-width) */ +} + +.yui3-skin-sam .yui3-tab-label { + background:#d8d8d8 url(../../../../assets/skins/sam/sprite.png) repeat-x; /* tab background */ + border:solid #a3a3a3; + border-width: 1px 1px 0 1px; + color:#000; + cursor:pointer; + font-size:85%; + padding:0.3em .75em; + text-decoration:none; +} + +.yui3-skin-sam .yui3-tab-label:hover, +.yui3-skin-sam .yui3-tab-label:focus { + background:#bfdaff url(../../../../assets/skins/sam/sprite.png) repeat-x left -1300px; /* hovered tab background */ + outline:0; +} + +.yui3-skin-sam .yui3-tab-selected .yui3-tab-label, +.yui3-skin-sam .yui3-tab-selected .yui3-tab-label:focus, +.yui3-skin-sam .yui3-tab-selected .yui3-tab-label:hover { /* no hover effect for selected */ + background:#2647a0 url(../../../../assets/skins/sam/sprite.png) repeat-x left -1400px; /* selected tab background */ + color:#fff; +} + +.yui3-skin-sam .yui3-tab-selected .yui3-tab-label { + padding:0.4em 0.75em; /* raise selected tab */ +} + +.yui3-skin-sam .yui3-tab-selected .yui3-tab-label { + border-color:#243356; /* selected tab border color */ +} + +.yui3-skin-sam .yui3-tabview-panel { + background:#edf5ff; /* content background color */ +} + +.yui3-skin-sam .yui3-tabview-panel { + border:1px solid #808080; /* content border */ + border-top-color:#243356; /* different border color */ + padding:0.25em 0.5em; /* content padding */ +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-sam .yui3-calendarnav-prevmonth, .yui3-skin-sam .yui3-calendarnav-nextmonth { + color: #000000; + width: 12px; + height: 14px; + background: transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAOCAYAAAA1+Nx+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAKNJREFUeNpiYCAeSAPxUiiWZqAi4ATiaiD+DMT/ofgzVIyTUsMDgfghksHo+CFUDcnAAIgP4DEYHR+A6iEIhIB4GgkGo+NpUDMwADMQFwHxBwoMh+EPULOYYYZ7APFVKhiMjkFmejBBLWFjoD5gQ+dQO4iwOloUiOdQYPgcqBkDl0zRQRQRGS2KGkVFHRB/QzL4G1SMk5qpQg6psJMjVhNAgAEAH+qPqeiPEUsAAAAASUVORK5CYII=); + background-repeat: no-repeat; +} + +.yui3-skin-sam .yui3-calendarnav-prevmonth:hover, .yui3-skin-sam .yui3-calendarnav-nextmonth:hover { + background: transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAOCAYAAAA1+Nx+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAPpJREFUeNpi/P//PwMxQD9jszSQ6oJyyy7O8H1KjD5GQhYADeYEUkVAXAHEPFDhL0DcAcR9QIu+k20B0PBAIDUBiOVwKHkExAVAS9aTZAHQYAOowfYMxIGDUIsu4LUAaLAQkGoB4kwG8sB0IK4BWvQOxQKgwcxAdj4Q1wExPwNl4CMQNwHxRKBFfxn10jd5ADm9QKzFQF1wDYiLmaAcNgbqA7CZTEBv7ADS2iDboN5joEIQgczSBpmNHsmiQKodiJPJNHwuEFcCDX49MMkUi0VRUB/hy2ggFy+jtKgohRYVnFDh79CiopuiogLNIjmobxigrn5EjD6AAAMAok9vhfHG8wQAAAAASUVORK5CYII=); + color: #0066CC; +} + +.yui3-skin-sam .yui3-calendarnav-month-disabled, .yui3-skin-sam .yui3-calendarnav-month-disabled:hover { + background: transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAOCAYAAAA1+Nx+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAQhJREFUeNqs0yGLAlEUhuHrKoIgCFbBJghb3F+g0WrVarEqLIhBEEFYWKNNMBktU4z6C5RNkwyCyWQSTPuOfCOCrHNnxwMPyOGe73DAiTmOYywrhy/9/sTBZujN4k0KPbioi6teKuqCmsKGSN/10+q5ehN6QQkrLJB/Mp/Xm5VmAhdkMcEGZWNfZc1MlPGwII42dmiZ/1dLGW1lXhdU8YNvZEz0yijLy6z6FyTN6yvpX7DEOzo4vSD4pCwvc+lfcMEYBUwjhE+VMVbmw7/oiCY+sA4RvNZMUxmB38EWFTSwfxK815uKZkJ/yXMU0cf5rn9Wr6g3f1bC4nwvbIAZRup1Ay671a8AAwC3OzOqxK+rkwAAAABJRU5ErkJggg==); + cursor: default; + color: #CCCCCC; +} + +.yui3-skin-sam .yui3-calendarnav-prevmonth, .yui3-skin-sam .yui3-calendarnav-prevmonth:hover { + background-position: 0px 0px; + margin-left:-12px; +} + +.yui3-skin-sam .yui3-calendarnav-nextmonth, .yui3-skin-sam .yui3-calendarnav-nextmonth:hover { + background-position: -12px 0px; + margin-right: -12px; +} + +.yui3-skin-sam .yui3-calendarnav-prevmonth span, .yui3-skin-sam .yui3-calendarnav-nextmonth span { + display: none; + *display: block; +} +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-sam .yui3-console-ft .yui3-console-filters-categories, +.yui3-skin-sam .yui3-console-ft .yui3-console-filters-sources { + text-align: left; + padding: 5px 0; + border: 1px inset; + margin: 0 2px; +} +.yui3-skin-sam .yui3-console-ft .yui3-console-filters-categories { + background: #fff; + border-bottom: 2px ridge; +} +.yui3-skin-sam .yui3-console-ft .yui3-console-filters-sources { + background: #fff; + margin-bottom: 2px; + + border-top: 0 none; + border-bottom-right-radius: 10px; + border-bottom-left-radius: 10px; + -moz-border-radius-bottomright: 10px; + -moz-border-radius-bottomleft: 10px; + -webkit-border-bottom-right-radius: 10px; + -webkit-border-bottom-left-radius: 10px; +} +.yui3-skin-sam .yui3-console-filter-label { + white-space: nowrap; + margin-left: 1ex; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-resize-handle-inner-r, +.yui3-resize-handle-inner-l, +.yui3-resize-handle-inner-t, +.yui3-resize-handle-inner-b, +.yui3-resize-handle-inner-tr, +.yui3-resize-handle-inner-br, +.yui3-resize-handle-inner-tl, +.yui3-resize-handle-inner-bl { + background-repeat: no-repeat; + background: url(arrows.png) no-repeat 0 0; + display: block; + height: 15px; + overflow: hidden; + text-indent: -99999em; + width: 15px; +} + +.yui3-resize-handle-inner-br { + background-position: -30px 0; + bottom: -2px; + right: -2px; +} + +.yui3-resize-handle-inner-tr { + background-position: -58px 0; + bottom: 0; + right: -2px; + +} + +.yui3-resize-handle-inner-bl { + background-position: -75px 0; + bottom: -2px; + right: -2px; +} + +.yui3-resize-handle-inner-tl { + background-position: -47px 0; + bottom: 0; + right: -2px; + +} + +.yui3-resize-handle-inner-b,.yui3-resize-handle-inner-t { + background-position: -15px 0; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-sam .yui3-datatable-message-content { + border: 0 none; + border-bottom: 1px solid #cbcbcb; + padding: 4px 10px; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-sam .yui3-datatable-scroll-columns { + border-collapse: separate; + border-spacing: 0; + font-family: arial, sans-serif; + margin: 0; + padding: 0; + top: 0; + left: 0; +} + +.yui3-skin-sam .yui3-datatable-scroll-columns .yui3-datatable-header { + padding: 0; +} + +.yui3-skin-sam .yui3-datatable-x-scroller, +.yui3-skin-sam .yui3-datatable-y-scroller-container { + border: 1px solid #cbcbcb; +} + +.yui3-skin-sam .yui3-datatable-scrollable-x .yui3-datatable-y-scroller-container, +.yui3-skin-sam .yui3-datatable-x-scroller .yui3-datatable-table, +.yui3-skin-sam .yui3-datatable-y-scroller .yui3-datatable-table { + border: 0 none; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-sam .yui3-dial-handle{ /*container. top left corner used for trig positioning*/ + background:#6C3A3A; + opacity:0.3; + -moz-box-shadow:1px 1px 1px rgba(0, 0, 0, 0.9) inset; + /*-webkit-box-shadow:1px 1px 1px rgba(0, 0, 0, 0.9) inset; Chrome 7/Win bug*/ + cursor:pointer; + font-size:1px; +} +.yui3-skin-sam .yui3-dial-ring { + background:#BEBDB7; + background:-moz-linear-gradient(100% 100% 135deg, #7B7A6D, #FFFFFF); + background:-webkit-gradient(linear, left top, right bottom, from(#FFFFFF), to(#7B7A6D)); + box-shadow:1px 1px 5px rgba(0, 0, 0, 0.4) inset; + -webkit-box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.4) inset; /*Chrome 7/Win bug*/ + -moz-box-shadow:1px 1px 5px rgba(0, 0, 0, 0.4) inset; +} +.yui3-skin-sam .yui3-dial-center-button{ + box-shadow:-1px -1px 2px rgba(0, 0, 0, 0.3) inset, 1px 1px 2px rgba(0, 0, 0, 0.5); + -moz-box-shadow:-1px -1px 2px rgba(0, 0, 0, 0.3) inset, 1px 1px 2px rgba(0, 0, 0, 0.5); + /*-webkit-box-shadow: -1px -1px 2px rgba(0, 0, 0, 0.3) inset, 1px 1px 2px rgba(0, 0, 0, 0.5); Chrome 7/Win bug*/ + background:#DDDBD4; + background:-moz-radial-gradient(30% 30% 0deg, circle farthest-side, #FBFBF9 24%, #F2F0EA 41%, #D3D0C3 83%) repeat scroll 0 0 transparent; + background:-webkit-gradient(radial, 15 15, 15, 30 30, 40, from(#FBFBF9), to(#D3D0C3), color-stop(.2,#F2F0EA)); + cursor:pointer; + opacity:0.7; + /*text-align:center;*/ +} +.yui3-skin-sam .yui3-dial-reset-string{ + color:#676767; + font-size:85%; + text-decoration:underline; +} +.yui3-skin-sam .yui3-dial-label{ + color:#808080; + margin-bottom:0.8em; +} +.yui3-skin-sam .yui3-dial-value-string{ + margin-left:0.5em; + color:#000; + font-size:130%; +} +.yui3-skin-sam .yui3-dial-value { + visibility:hidden; + position:absolute; + top:0; + left:102%; + width:4em; +} +.yui3-skin-sam .yui3-dial-north-mark{ + position:absolute; + border-left:2px solid #ccc; + height:5px; + width:10px; + left:50%; + top:-7px; + font-size:1px; +} +.yui3-skin-sam .yui3-dial-marker { + background-color:#000; + opacity:0.2; + font-size:1px; +} +.yui3-skin-sam .yui3-dial-marker-max-min{ + background-color:#AB3232; + opacity:0.6; +} +.yui3-skin-sam .yui3-dial-ring-vml, +.yui3-skin-sam .yui3-dial-center-button-vml, +.yui3-skin-sam .yui3-dial-marker v\:oval.yui3-dial-marker-max-min, +.yui3-skin-sam v\:oval.yui3-dial-marker-max-min, +.yui3-skin-sam .yui3-dial-marker-vml, +.yui3-skin-sam .yui3-dial-handle-vml { + background: none; + opacity:1; +} +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Vertical menus and submenus */ + +.yui3-skin-sam .yui3-menu-content, +.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-content { + + font-size: 93%; /* 12px */ + line-height: 1.5; /* 18px */ + *line-height: 1.45; /* For IE */ + border: solid 1px #808080; + background: #fff; + padding: 3px 0; + +} + +.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-content { + + font-size: 100%; + +} + + +/* Horizontal menus */ + +.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-content { + + line-height: 2; /* ~24px */ + *line-height: 1.9; /* For IE */ + background: url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0; + padding: 0; + +} + + +.yui3-skin-sam .yui3-menu ul, +.yui3-skin-sam .yui3-menu ul ul { + + margin-top: 3px; + padding-top: 3px; + border-top: solid 1px #ccc; + +} + +.yui3-skin-sam .yui3-menu ul.first-of-type { + + border: 0; + margin: 0; + padding: 0; + +} + +.yui3-skin-sam .yui3-menu-horizontal ul { + + padding: 0; + margin: 0; + border: 0; + +} + + +.yui3-skin-sam .yui3-menu li, +.yui3-skin-sam .yui3-menu .yui3-menu li { + + /* + For and IE 6 (Strict Mode and Quirks Mode) and IE 7 (Quirks Mode only): + Used to collapse superfluous white space between
  • elements that is + triggered by the "display" property of the elements being set to + "block" by node-menunav-core.css file. + */ + + _border-bottom: solid 1px #fff; + +} + +.yui3-skin-sam .yui3-menu-horizontal li { + + _border-bottom: 0; + +} + +.yui3-skin-sam .yui3-menubuttonnav li { + + border-right: solid 1px #ccc; + +} + +.yui3-skin-sam .yui3-splitbuttonnav li { + + border-right: solid 1px #808080; + +} + +.yui3-skin-sam .yui3-menubuttonnav li li, +.yui3-skin-sam .yui3-splitbuttonnav li li { + + border-right: 0; + +} + + +/* Menuitems and menu labels */ + + +.yui3-skin-sam .yui3-menu-label, +.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label, +.yui3-skin-sam .yui3-menuitem-content, +.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menuitem-content { + + /*padding: 0 20px;*/ + padding: 0 1em; + color: #000; + text-decoration: none; + cursor: default; + + /* + Necessary specify values for border, position and margin to override + values specified in the selectors that follow. + */ + + float: none; + border: 0; + margin: 0; + +} + +.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label, +.yui3-skin-sam .yui3-menu-horizontal .yui3-menuitem-content { + + padding: 0 10px; + border-style: solid; + border-color: #808080; + border-width: 1px 0; + margin: -1px 0; + + float: left; /* Ensures that menu labels clear floated descendents. + Also gets negative margins working in IE 7 + (Strict Mode). */ + width: auto; + +} + +.yui3-skin-sam .yui3-menu-label, +.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label { + + background: url(vertical-menu-submenu-indicator.png) right center no-repeat; + +} + +.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label { + + background: url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0; + +} + +.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label, +.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label { + + background-image: none; + +} + +.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label { + + padding-right: 0; + +} + +.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label em { + + font-style: normal; + padding-right: 20px; + display: block; + background: url(horizontal-menu-submenu-indicator.png) right center no-repeat; + +} + + +.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label { + + padding: 0; + +} + +.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label a { + + float: left; + width: auto; + color: #000; + text-decoration: none; + cursor: default; + padding: 0 5px 0 10px; + +} + +.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label .yui3-menu-toggle { + + padding: 0; /* Overide padding applied by the preceeding rule. */ + border-left: solid 1px #ccc; + width: 15px; + overflow: hidden; + text-indent: -1000px; + background: url(horizontal-menu-submenu-indicator.png) 3px center no-repeat; + +} + + +/* Selected menuitem */ + +.yui3-skin-sam .yui3-menu-label-active, +.yui3-skin-sam .yui3-menu-label-menuvisible, +.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label-active, +.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label-menuvisible { + + background-color: #B3D4FF; + +} + +.yui3-skin-sam .yui3-menuitem-active .yui3-menuitem-content, +.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menuitem-active .yui3-menuitem-content { + + background-image: none; + background-color: #B3D4FF; + + /* + Undo values set for "border-left-width" and "margin-left" when the root + menu has a class of "yui-menubuttonnav" or "yui-splitbuttonnav" applied. + */ + + border-left-width: 0; + margin-left: 0; + +} + +.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label-active, +.yui3-skin-sam .yui3-menu-horizontal .yui3-menuitem-active .yui3-menuitem-content, +.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label-menuvisible { + + border-color: #7D98B8; + background: url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1700px; + +} + +.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label-active, +.yui3-skin-sam .yui3-menubuttonnav .yui3-menuitem-active .yui3-menuitem-content, +.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label-menuvisible, +.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-active, +.yui3-skin-sam .yui3-splitbuttonnav .yui3-menuitem-active .yui3-menuitem-content, +.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-menuvisible { + + border-left-width: 1px; + margin-left: -1px; + +} + +.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-menuvisible { + + border-color: #808080; + background: transparent; + +} + +.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-menuvisible .yui3-menu-toggle { + + border-color: #7D98B8; + background: url(horizontal-menu-submenu-toggle.png) left center no-repeat; + +} +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Reset base Console skin styles */ +.yui3-skin-sam .yui3-testconsole .yui3-console-content, +.yui3-skin-sam .yui3-testconsole .yui3-console-bd, +.yui3-skin-sam .yui3-testconsole .yui3-console-entry, +.yui3-skin-sam .yui3-testconsole .yui3-console-ft, +.yui3-skin-sam .yui3-testconsole .yui3-console-ft .yui3-console-filters-categories, +.yui3-skin-sam .yui3-testconsole .yui3-console-ft .yui3-console-filters-sources, +.yui3-skin-sam .yui3-testconsole .yui3-console-hd { + background: none; + border: none; + -moz-border-radius: 0; + -webkit-border-radius: 0; + border-radius: 0; +} + +.yui3-skin-sam .yui3-testconsole-content, +.yui3-skin-sam .yui3-testconsole .yui3-console-bd { + color: #333; + font: 13px/1.4 Helvetica, 'DejaVu Sans', 'Bitstream Vera Sans', Arial, sans-serif; +} + +.yui3-skin-sam .yui3-testconsole-content { + border: 1px solid #afafaf; +} + +.yui3-skin-sam .yui3-testconsole .yui3-console-entry { + border-bottom: 1px solid #eaeaea; + font-family: Menlo, Inconsolata, Consolas, 'DejaVu Mono', 'Bitstream Vera Sans Mono', monospace; + font-size: 11px; +} + +.yui3-skin-sam .yui3-testconsole .yui3-console-ft { + border-top: 1px solid; +} + +.yui3-skin-sam .yui3-testconsole .yui3-console-hd { + border-bottom: 1px solid; + *zoom: 1; +} + +.yui3-skin-sam .yui3-testconsole.yui3-console-collapsed .yui3-console-hd { + border: none; +} + +.yui3-skin-sam .yui3-testconsole .yui3-console-ft, +.yui3-skin-sam .yui3-testconsole .yui3-console-hd { + border-color: #cfcfcf; +} + +.yui3-skin-sam .yui3-testconsole .yui3-testconsole-entry-fail { + background-color: #FFE0E0; + border-bottom-color: #FFC5C4; +} + +.yui3-skin-sam .yui3-testconsole .yui3-testconsole-entry-pass { + background-color: #ECFFEA; + border-bottom-color: #D1FFCC; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-sam .yui3-scrollview-scrollbar { + -webkit-transform: translate3d(0, 0, 0); + -moz-transform: translate(0, 0); +} + +.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-first, +.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-middle, +.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-last { + border-radius:3px; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAABCAYAAAD9yd/wAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAABJJREFUeNpiZGBgSGPAAgACDAAIkABoFyloZQAAAABJRU5ErkJggg==); +} + +.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-first, +.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-last { + border-bottom-right-radius:0; + border-bottom-left-radius:0; + + -webkit-border-bottom-right-radius:0; + -webkit-border-bottom-left-radius:0; + + -moz-border-radius-bottomright:0; + -moz-border-radius-bottomleft:0; +} + +.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-last { + border-radius:0; + border-bottom-right-radius:3px; + border-bottom-left-radius:3px; + + -webkit-border-radius:0; + -webkit-border-bottom-right-radius:3px; + -webkit-border-bottom-left-radius:3px; + -webkit-transform: translate3d(0, 0, 0); + + -moz-border-radius:0; + -moz-border-radius-bottomright:3px; + -moz-border-radius-bottomleft:3px; + -moz-transform: translate(0, 0); +} + +.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-middle { + border-radius:0; + -webkit-border-radius: 0; + -moz-border-radius: 0; + + -webkit-transform: translate3d(0,0,0) scaleY(1); + -webkit-transform-origin-y: 0; + + -moz-transform: translate(0,0) scaleY(1); + -moz-transform-origin: 0 0; +} + +.yui3-skin-sam .yui3-scrollview-scrollbar-horiz .yui3-scrollview-first, +.yui3-skin-sam .yui3-scrollview-scrollbar-horiz .yui3-scrollview-last { + border-top-right-radius: 0; + border-bottom-left-radius: 3px; + + -webkit-border-top-right-radius: 0; + -webkit-border-bottom-left-radius: 3px; + + -moz-border-radius-topright: 0; + -moz-border-radius-bottomleft: 3px; +} + +.yui3-skin-sam .yui3-scrollview-scrollbar-horiz .yui3-scrollview-last { + border-bottom-left-radius: 0; + border-top-right-radius: 3px; + + -webkit-border-bottom-left-radius: 0; + -webkit-border-top-right-radius: 3px; + + -moz-border-radius-bottomleft: 0; + -moz-border-radius-topright: 3px; +} + +.yui3-skin-sam .yui3-scrollview-scrollbar-horiz .yui3-scrollview-middle { + -webkit-transform: translate3d(0,0,0) scaleX(1); + -webkit-transform-origin: 0 0; + + -moz-transform: translate(0,0) scaleX(1); + -moz-transform-origin: 0 0; +} + +.yui3-skin-sam .yui3-scrollview-scrollbar-vert-basic .yui3-scrollview-child, +.yui3-skin-sam .yui3-scrollview-scrollbar-horiz-basic .yui3-scrollview-child { + background-color: #aaa; + background-image: none; +} +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-sam .yui3-scrollview { + -webkit-tap-highlight-color: rgba(255,255,255,0); +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Horizontal Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/sam/thumb-x.png */ + +.yui3-skin-sam .yui3-slider-x .yui3-slider-rail, +.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-left, +.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-right { + background-image: url(rail-x.png); + background-repeat: repeat-x; + /* alternate: rail-x-lines.png */ +} + +.yui3-skin-sam .yui3-slider-x .yui3-slider-rail { + height: 26px; +} +.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb { + height: 26px; + width: 15px; +} + +.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-left { + background-position: 0 -20px; + height: 20px; + left: -2px; + width: 5px; +} +.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-right { + background-position: 0 -40px; + height: 20px; + right: -2px; + width: 5px; +} + +.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb-image { + left: 0; + top: -10px; +} +.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb-shadow { + left: 0; + opacity: 0.15; + filter: alpha(opacity=15); + top: -50px; +} + +/* Vertical Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/sam/thumb-y.png */ + +.yui3-skin-sam .yui3-slider-y .yui3-slider-rail, +.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-top, +.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-image: url(rail-y.png); + background-repeat: repeat-y; + /* alternate: rail-y-lines.png */ +} + +.yui3-skin-sam .yui3-slider-y .yui3-slider-rail { + width: 26px; +} +.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb { + width: 26px; + height: 15px; +} + +.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-top { + background-position: -20px 0; + width: 20px; + top: -2px; + height: 5px; +} +.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-position: -40px 0; + width: 20px; + bottom: -2px; + height: 5px; +} + +.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb-image { + left: -10px; + top: 0; +} +.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb-shadow { + left: -50px; + opacity: 0.15; + filter: alpha(opacity=15); + top: 0; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* Horizontal Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/sam/thumb-x.png */ + +.yui3-skin-sam .yui3-slider-x .yui3-slider-rail, +.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-left, +.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-right { + background-image: url(rail-x.png); + background-repeat: repeat-x; + /* alternate: rail-x-lines.png */ +} + +.yui3-skin-sam .yui3-slider-x .yui3-slider-rail { + height: 26px; +} +.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb { + height: 26px; + width: 15px; +} + +.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-left { + background-position: 0 -20px; + height: 20px; + left: -2px; + width: 5px; +} +.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-right { + background-position: 0 -40px; + height: 20px; + right: -2px; + width: 5px; +} + +.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb-image { + left: 0; + top: -10px; +} +.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb-shadow { + left: 0; + opacity: 0.15; + filter: alpha(opacity=15); + top: -50px; +} + +/* Vertical Slider */ + +/* Use thumbUrl /build/slider-base/assets/skins/sam/thumb-y.png */ + +.yui3-skin-sam .yui3-slider-y .yui3-slider-rail, +.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-top, +.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-image: url(rail-y.png); + background-repeat: repeat-y; + /* alternate: rail-y-lines.png */ +} + +.yui3-skin-sam .yui3-slider-y .yui3-slider-rail { + width: 26px; +} +.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb { + width: 26px; + height: 15px; +} + +.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-top { + background-position: -20px 0; + width: 20px; + top: -2px; + height: 5px; +} +.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-bottom { + background-position: -40px 0; + width: 20px; + bottom: -2px; + height: 5px; +} + +.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb-image { + left: -10px; + top: 0; +} +.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb-shadow { + left: -50px; + opacity: 0.15; + filter: alpha(opacity=15); + top: 0; +} + +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-skin-sam .yui3-widget-mask { + background-color: black; + zoom: 1; + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(opacity=40)"; + filter: alpha(opacity=40); + opacity: 0.4; +} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/rail-x.png b/lib/yuilib/3.12.0/assets/skins/audio-light/rail-x.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/rail-x.png rename to lib/yuilib/3.12.0/assets/skins/audio-light/rail-x.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/rail-y.png b/lib/yuilib/3.12.0/assets/skins/audio-light/rail-y.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/rail-y.png rename to lib/yuilib/3.12.0/assets/skins/audio-light/rail-y.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/slider-base.css b/lib/yuilib/3.12.0/assets/skins/audio-light/slider-base.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/slider-base.css rename to lib/yuilib/3.12.0/assets/skins/audio-light/slider-base.css index 3f0a56d6d80..83f42bc7832 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/slider-base.css +++ b/lib/yuilib/3.12.0/assets/skins/audio-light/slider-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail,.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail{height:35px;background-position:0 7px}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-thumb{height:35px;width:19px}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:13px;left:-5px;width:5px;top:7px}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:13px;right:-5px;width:5px;top:7px}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-3px}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-43px}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail,.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail{width:35px;background-position:7px 0}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-thumb{width:35px;height:19px}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:13px;top:-5px;height:5px;left:7px}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:13px;bottom:-5px;height:5px;left:7px}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-thumb-image{left:-3px;top:0}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-thumb-shadow{left:-43px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-audio-light-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/thumb-x.png b/lib/yuilib/3.12.0/assets/skins/audio-light/thumb-x.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/thumb-x.png rename to lib/yuilib/3.12.0/assets/skins/audio-light/thumb-x.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/thumb-y.png b/lib/yuilib/3.12.0/assets/skins/audio-light/thumb-y.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/thumb-y.png rename to lib/yuilib/3.12.0/assets/skins/audio-light/thumb-y.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio/rail-x.png b/lib/yuilib/3.12.0/assets/skins/audio/rail-x.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/audio/rail-x.png rename to lib/yuilib/3.12.0/assets/skins/audio/rail-x.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio/rail-y.png b/lib/yuilib/3.12.0/assets/skins/audio/rail-y.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/audio/rail-y.png rename to lib/yuilib/3.12.0/assets/skins/audio/rail-y.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio/slider-base.css b/lib/yuilib/3.12.0/assets/skins/audio/slider-base.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/audio/slider-base.css rename to lib/yuilib/3.12.0/assets/skins/audio/slider-base.css index 98132cf956c..8e8644a3280 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio/slider-base.css +++ b/lib/yuilib/3.12.0/assets/skins/audio/slider-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-audio .yui3-slider-x .yui3-slider-rail,.yui3-skin-audio .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-audio .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-audio .yui3-slider-x .yui3-slider-rail{height:35px;background-position:0 7px}.yui3-skin-audio .yui3-slider-x .yui3-slider-thumb{height:35px;width:19px}.yui3-skin-audio .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:13px;left:-5px;width:5px;top:7px}.yui3-skin-audio .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:13px;right:-5px;width:5px;top:7px}.yui3-skin-audio .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-3px}.yui3-skin-audio .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-43px}.yui3-skin-audio .yui3-slider-y .yui3-slider-rail,.yui3-skin-audio .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-audio .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-audio .yui3-slider-y .yui3-slider-rail{width:35px;background-position:7px 0}.yui3-skin-audio .yui3-slider-y .yui3-slider-thumb{width:35px;height:19px}.yui3-skin-audio .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:13px;top:-5px;height:5px;left:7px}.yui3-skin-audio .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:13px;bottom:-5px;height:5px;left:7px}.yui3-skin-audio .yui3-slider-y .yui3-slider-thumb-image{left:-3px;top:0}.yui3-skin-audio .yui3-slider-y .yui3-slider-thumb-shadow{left:-43px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-audio-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio/thumb-x.png b/lib/yuilib/3.12.0/assets/skins/audio/thumb-x.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/audio/thumb-x.png rename to lib/yuilib/3.12.0/assets/skins/audio/thumb-x.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio/thumb-y.png b/lib/yuilib/3.12.0/assets/skins/audio/thumb-y.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/audio/thumb-y.png rename to lib/yuilib/3.12.0/assets/skins/audio/thumb-y.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/rail-x-dots.png b/lib/yuilib/3.12.0/assets/skins/capsule-dark/rail-x-dots.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/rail-x-dots.png rename to lib/yuilib/3.12.0/assets/skins/capsule-dark/rail-x-dots.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/rail-x-lines.png b/lib/yuilib/3.12.0/assets/skins/capsule-dark/rail-x-lines.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/rail-x-lines.png rename to lib/yuilib/3.12.0/assets/skins/capsule-dark/rail-x-lines.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/rail-x.png b/lib/yuilib/3.12.0/assets/skins/capsule-dark/rail-x.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/rail-x.png rename to lib/yuilib/3.12.0/assets/skins/capsule-dark/rail-x.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/rail-y-dots.png b/lib/yuilib/3.12.0/assets/skins/capsule-dark/rail-y-dots.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/rail-y-dots.png rename to lib/yuilib/3.12.0/assets/skins/capsule-dark/rail-y-dots.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/rail-y-lines.png b/lib/yuilib/3.12.0/assets/skins/capsule-dark/rail-y-lines.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/rail-y-lines.png rename to lib/yuilib/3.12.0/assets/skins/capsule-dark/rail-y-lines.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/rail-y.png b/lib/yuilib/3.12.0/assets/skins/capsule-dark/rail-y.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/rail-y.png rename to lib/yuilib/3.12.0/assets/skins/capsule-dark/rail-y.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/slider-base.css b/lib/yuilib/3.12.0/assets/skins/capsule-dark/slider-base.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/slider-base.css rename to lib/yuilib/3.12.0/assets/skins/capsule-dark/slider-base.css index 70220a13f8b..39be9d731f2 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/slider-base.css +++ b/lib/yuilib/3.12.0/assets/skins/capsule-dark/slider-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail,.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail{height:25px}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-thumb{height:30px;width:14px}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:20px;left:-2px;width:5px}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:20px;right:-2px;width:5px}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-10px}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-50px}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail,.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail{width:25px}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-thumb{width:30px;height:14px}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:20px;top:-2px;height:5px}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:20px;bottom:-2px;height:5px}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-thumb-image{left:-10px;top:0}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-thumb-shadow{left:-50px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-capsule-dark-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/thumb-x-line.png b/lib/yuilib/3.12.0/assets/skins/capsule-dark/thumb-x-line.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/thumb-x-line.png rename to lib/yuilib/3.12.0/assets/skins/capsule-dark/thumb-x-line.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/thumb-x.png b/lib/yuilib/3.12.0/assets/skins/capsule-dark/thumb-x.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/thumb-x.png rename to lib/yuilib/3.12.0/assets/skins/capsule-dark/thumb-x.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/thumb-y-line.png b/lib/yuilib/3.12.0/assets/skins/capsule-dark/thumb-y-line.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/thumb-y-line.png rename to lib/yuilib/3.12.0/assets/skins/capsule-dark/thumb-y-line.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/thumb-y.png b/lib/yuilib/3.12.0/assets/skins/capsule-dark/thumb-y.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/thumb-y.png rename to lib/yuilib/3.12.0/assets/skins/capsule-dark/thumb-y.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/rail-x-dots.png b/lib/yuilib/3.12.0/assets/skins/capsule/rail-x-dots.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/rail-x-dots.png rename to lib/yuilib/3.12.0/assets/skins/capsule/rail-x-dots.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/rail-x-lines.png b/lib/yuilib/3.12.0/assets/skins/capsule/rail-x-lines.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/rail-x-lines.png rename to lib/yuilib/3.12.0/assets/skins/capsule/rail-x-lines.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/rail-x.png b/lib/yuilib/3.12.0/assets/skins/capsule/rail-x.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/rail-x.png rename to lib/yuilib/3.12.0/assets/skins/capsule/rail-x.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/rail-y-dots.png b/lib/yuilib/3.12.0/assets/skins/capsule/rail-y-dots.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/rail-y-dots.png rename to lib/yuilib/3.12.0/assets/skins/capsule/rail-y-dots.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/rail-y-lines.png b/lib/yuilib/3.12.0/assets/skins/capsule/rail-y-lines.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/rail-y-lines.png rename to lib/yuilib/3.12.0/assets/skins/capsule/rail-y-lines.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/rail-y.png b/lib/yuilib/3.12.0/assets/skins/capsule/rail-y.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/rail-y.png rename to lib/yuilib/3.12.0/assets/skins/capsule/rail-y.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/slider-base.css b/lib/yuilib/3.12.0/assets/skins/capsule/slider-base.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/slider-base.css rename to lib/yuilib/3.12.0/assets/skins/capsule/slider-base.css index 4d26996c6a9..212baf54b64 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/slider-base.css +++ b/lib/yuilib/3.12.0/assets/skins/capsule/slider-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail,.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x;background-repeat:repeat-x}.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail{height:25px}.yui3-skin-capsule .yui3-slider-x .yui3-slider-thumb{height:30px;width:14px}.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:20px;left:-2px;width:5px}.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:20px;right:-2px;width:5px}.yui3-skin-capsule .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-10px}.yui3-skin-capsule .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-50px}.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail,.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y;background-repeat:repeat-y}.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail{width:25px}.yui3-skin-capsule .yui3-slider-y .yui3-slider-thumb{width:30px;height:14px}.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:20px;top:-2px;height:5px}.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:20px;bottom:-2px;height:5px}.yui3-skin-capsule .yui3-slider-y .yui3-slider-thumb-image{left:-10px;top:0}.yui3-skin-capsule .yui3-slider-y .yui3-slider-thumb-shadow{left:-50px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-capsule-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/thumb-x-line.png b/lib/yuilib/3.12.0/assets/skins/capsule/thumb-x-line.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/thumb-x-line.png rename to lib/yuilib/3.12.0/assets/skins/capsule/thumb-x-line.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/thumb-x.png b/lib/yuilib/3.12.0/assets/skins/capsule/thumb-x.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/thumb-x.png rename to lib/yuilib/3.12.0/assets/skins/capsule/thumb-x.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/thumb-y-line.png b/lib/yuilib/3.12.0/assets/skins/capsule/thumb-y-line.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/thumb-y-line.png rename to lib/yuilib/3.12.0/assets/skins/capsule/thumb-y-line.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/thumb-y-lines.png b/lib/yuilib/3.12.0/assets/skins/capsule/thumb-y-lines.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/thumb-y-lines.png rename to lib/yuilib/3.12.0/assets/skins/capsule/thumb-y-lines.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/thumb-y.png b/lib/yuilib/3.12.0/assets/skins/capsule/thumb-y.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/thumb-y.png rename to lib/yuilib/3.12.0/assets/skins/capsule/thumb-y.png diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/arrows.png b/lib/yuilib/3.12.0/assets/skins/night/arrows.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/assets/skins/sam/arrows.png rename to lib/yuilib/3.12.0/assets/skins/night/arrows.png diff --git a/lib/yuilib/3.9.1/build/autocomplete-list/assets/skins/night/autocomplete-list.css b/lib/yuilib/3.12.0/assets/skins/night/autocomplete-list.css old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/autocomplete-list/assets/skins/night/autocomplete-list.css rename to lib/yuilib/3.12.0/assets/skins/night/autocomplete-list.css index 8b99e4f0a04..f6f01a603c9 --- a/lib/yuilib/3.9.1/build/autocomplete-list/assets/skins/night/autocomplete-list.css +++ b/lib/yuilib/3.12.0/assets/skins/night/autocomplete-list.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-aclist{position:absolute;z-index:1}.yui3-aclist-hidden{visibility:hidden}.yui3-aclist-aria{left:-9999px;position:absolute}.yui3-aclist-list{list-style:none;margin:0;overflow:hidden;padding:0}.yui3-aclist-item{cursor:pointer;list-style:none;padding:2px 5px}.yui3-aclist-item-active{outline:#afafaf dotted thin}.yui3-skin-night [for=ac-input]{color:#cbcbcb}.yui3-skin-night .yui3-aclist-content{font-size:100%;background-color:#151515;color:#ccc;border:1px solid #303030;-moz-box-shadow:0 0 17px rgba(0,0,0,0.58);-webkit-box-shadow:0 0 17px rgba(0,0,0,0.58);box-shadow:0 0 17px rgba(0,0,0,0.58)}.yui3-skin-night .yui3-aclist-item-active{background-color:#2f3030;background:-moz-linear-gradient(0% 100% 90deg,#252626 0,#333434 100%);background:-webkit-gradient(linear,left top,left bottom,from(#333434),to(#252626))}.yui3-skin-night .yui3-aclist-item-hover{background-color:#262727;background:-moz-linear-gradient(0% 100% 90deg,#202121 0,#282929 100%);background:-webkit-gradient(linear,left top,left bottom,from(#282929),to(#202121))}.yui3-skin-night .yui3-aclist-item{padding:0 1em;line-height:2.25}.yui3-skin-night .yui3-aclist-item-active{outline:0}.yui3-skin-night .yui3-highlight{color:#efefef}#yui3-css-stamp.skin-night-autocomplete-list{display:none} diff --git a/lib/yuilib/3.9.1/build/calendar-base/assets/skins/night/calendar-base.css b/lib/yuilib/3.12.0/assets/skins/night/calendar-base.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/calendar-base/assets/skins/night/calendar-base.css rename to lib/yuilib/3.12.0/assets/skins/night/calendar-base.css index d55f81161c4..d78cf6fcbca --- a/lib/yuilib/3.9.1/build/calendar-base/assets/skins/night/calendar-base.css +++ b/lib/yuilib/3.12.0/assets/skins/night/calendar-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-calendar-pane{width:100%}.yui3-calendar-grid{width:100%}.yui3-calendar-column-hidden,.yui3-calendar-hidden{display:none}.yui3-skin-night .yui3-calendar-content{padding:10px;color:#cbcbcb;border:1px solid #303030;background:#151515;background:-moz-linear-gradient(top,#222 0,#151515 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#222),color-stop(100%,#151515));background:-webkit-linear-gradient(top,#222 0,#151515 100%);background:-o-linear-gradient(top,#222 0,#151515 100%);background:-ms-linear-gradient(top,#222 0,#151515 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#222222',endColorstr='#151515',GradientType=0);background:linear-gradient(top,#222 0,#151515 100%);-moz-border-radius:5px;border-radius:5px}.yui3-skin-night .yui3-calendar-grid{padding:5px;border-collapse:collapse}.yui3-skin-night .yui3-calendar-header{padding-bottom:10px}.yui3-skin-night .yui3-calendar-header-label{margin:0;font-size:1em;font-weight:bold}.yui3-skin-night .yui3-calendar-day,.yui3-skin-night .yui3-calendar-prevmonth-day,.yui3-skin-night .yui3-calendar-nextmonth-day{padding:5px;border:1px solid #151515;background:#262727;text-align:center}.yui3-skin-night .yui3-calendar-day:hover{background:#383939;color:#fff}.yui3-skin-night .yui3-calendar-selection-disabled,.yui3-skin-night .yui3-calendar-selection-disabled:hover{background:#151515;color:#596060}.yui3-skin-night .yui3-calendar-weekday{color:#4f4f4f;font-weight:bold;text-align:center}.yui3-skin-night .yui3-calendar-prevmonth-day,.yui3-skin-night .yui3-calendar-nextmonth-day{color:#4f4f4f}.yui3-skin-night .yui3-calendar-day{font-weight:bold}.yui3-skin-night .yui3-calendar-day-selected{background-color:#505151;color:#fff}.yui3-skin-night .yui3-calendar-header-label{text-align:center}.yui3-skin-night .yui3-calendar-left-grid{margin-right:1em}.yui3-skin-sam .yui3-calendar-right-grid{margin-left:1em}#yui3-css-stamp.skin-night-calendar-base{display:none} diff --git a/lib/yuilib/3.9.1/build/calendar/assets/skins/night/calendar.css b/lib/yuilib/3.12.0/assets/skins/night/calendar.css old mode 100644 new mode 100755 similarity index 81% rename from lib/yuilib/3.9.1/build/calendar/assets/skins/night/calendar.css rename to lib/yuilib/3.12.0/assets/skins/night/calendar.css index 6825336222a..fe6365d4adc --- a/lib/yuilib/3.9.1/build/calendar/assets/skins/night/calendar.css +++ b/lib/yuilib/3.12.0/assets/skins/night/calendar.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-calendar-column-hidden,.yui3-calendar-hidden{display:none}.yui3-calendar-day{cursor:pointer}.yui3-calendar-selection-disabled{cursor:default}.yui3-calendar-prevmonth-day{cursor:default}.yui3-calendar-nextmonth-day{cursor:default}.yui3-calendar-content:hover .yui3-calendar-day,.yui3-calendar-content:hover .yui3-calendar-prevmonth-day,.yui3-calendar-content:hover .yui3-calendar-nextmonth-day{-moz-user-select:none}.yui3-skin-night .yui3-calendar-day-highlighted{background-color:#555}.yui3-skin-night .yui3-calendar-day-selected.yui3-calendar-day-highlighted{background-color:#777}#yui3-css-stamp.skin-night-calendar{display:none} diff --git a/lib/yuilib/3.9.1/build/calendarnavigator/assets/skins/night/calendarnavigator.css b/lib/yuilib/3.12.0/assets/skins/night/calendarnavigator.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/calendarnavigator/assets/skins/night/calendarnavigator.css rename to lib/yuilib/3.12.0/assets/skins/night/calendarnavigator.css index e2a1731d47a..859bd6f60be --- a/lib/yuilib/3.9.1/build/calendarnavigator/assets/skins/night/calendarnavigator.css +++ b/lib/yuilib/3.12.0/assets/skins/night/calendarnavigator.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-calendar-header{padding-left:15px;padding-right:15px}.yui3-calendar-header-label{width:100%}.yui3-calendarnav-prevmonth{cursor:pointer}.yui3-calendarnav-nextmonth{cursor:pointer}.yui3-skin-night .yui3-calendarnav-prevmonth,.yui3-skin-night .yui3-calendarnav-nextmonth{color:#fff;width:12px;height:14px;background:transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAOCAYAAAA1+Nx+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAALZJREFUeNpi/P//PwORQBqIu6DsMiB+SpQukAUEMCcQVwPx5/8I8BkqxklIPyHDA4H44X/c4CFUDckWGADxgf/EgwNQPQQtEALiaf/JB9OgZmBYwAzERUD84T/l4APULGaYBR5AfPU/9QHITA8maGJiY6A+YENOpmw0CCI2bJEsCsRzKDB8DtSMgUum6DiKiIwWRUlOhhUVdUD8Dcngb1AxgkUFIwmFnRwQt0PZlUD8iBhNAAEGALbfq7SGiQoPAAAAAElFTkSuQmCC);background-repeat:no-repeat}.yui3-skin-night .yui3-calendarnav-prevmonth:hover,.yui3-skin-night .yui3-calendarnav-nextmonth:hover{background:transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAOCAYAAAA1+Nx+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAPpJREFUeNpi/P//PwMxQD9jszSQ6oJyyy7O8H1KjD5GQhYADeYEUkVAXAHEPFDhL0DcAcR9QIu+k20B0PBAIDUBiOVwKHkExAVAS9aTZAHQYAOowfYMxIGDUIsu4LUAaLAQkGoB4kwG8sB0IK4BWvQOxQKgwcxAdj4Q1wExPwNl4CMQNwHxRKBFfxn10jd5ADm9QKzFQF1wDYiLmaAcNgbqA7CZTEBv7ADS2iDboN5joEIQgczSBpmNHsmiQKodiJPJNHwuEFcCDX49MMkUi0VRUB/hy2ggFy+jtKgohRYVnFDh79CiopuiogLNIjmobxigrn5EjD6AAAMAok9vhfHG8wQAAAAASUVORK5CYII=);color:#06c}.yui3-skin-night .yui3-calendarnav-month-disabled,.yui3-skin-night .yui3-calendarnav-month-disabled:hover{background:transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAOCAYAAAA1+Nx+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAQhJREFUeNqs0yGLAlEUhuHrKoIgCFbBJghb3F+g0WrVarEqLIhBEEFYWKNNMBktU4z6C5RNkwyCyWQSTPuOfCOCrHNnxwMPyOGe73DAiTmOYywrhy/9/sTBZujN4k0KPbioi6teKuqCmsKGSN/10+q5ehN6QQkrLJB/Mp/Xm5VmAhdkMcEGZWNfZc1MlPGwII42dmiZ/1dLGW1lXhdU8YNvZEz0yijLy6z6FyTN6yvpX7DEOzo4vSD4pCwvc+lfcMEYBUwjhE+VMVbmw7/oiCY+sA4RvNZMUxmB38EWFTSwfxK815uKZkJ/yXMU0cf5rn9Wr6g3f1bC4nwvbIAZRup1Ay671a8AAwC3OzOqxK+rkwAAAABJRU5ErkJggg==);cursor:default;color:#ccc}.yui3-skin-night .yui3-calendarnav-prevmonth,.yui3-skin-night .yui3-calendarnav-prevmonth:hover{background-position:0 0;margin-left:-12px}.yui3-skin-night .yui3-calendarnav-nextmonth,.yui3-skin-night .yui3-calendarnav-nextmonth:hover{background-position:-12px 0;margin-right:-12px}.yui3-skin-night .yui3-calendarnav-prevmonth span,.yui3-skin-night .yui3-calendarnav-nextmonth span{display:none;*display:block}#yui3-css-stamp.skin-night-calendarnavigator{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-base/assets/skins/night/datatable-base.css b/lib/yuilib/3.12.0/assets/skins/night/datatable-base.css old mode 100644 new mode 100755 similarity index 90% rename from lib/yuilib/3.9.1/build/datatable-base/assets/skins/night/datatable-base.css rename to lib/yuilib/3.12.0/assets/skins/night/datatable-base.css index a345044943a..018848fb639 --- a/lib/yuilib/3.9.1/build/datatable-base/assets/skins/night/datatable-base.css +++ b/lib/yuilib/3.12.0/assets/skins/night/datatable-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-datatable-table{empty-cells:show}.yui3-skin-night .yui3-datatable{color:#8e8e8e;font-family:HelveticaNeue,arial,helvetica,clean,sans-serif}.yui3-skin-night .yui3-datatable-table{border:1px solid #323434;border-collapse:separate;border-spacing:0;color:#8e8e8e;margin:0;padding:0}.yui3-skin-night .yui3-datatable-caption{color:#474747;font:italic 85%/1 HelveticaNeue,arial,helvetica,clean,sans-serif;padding:1em 0;text-align:center}.yui3-skin-night .yui3-datatable-cell,.yui3-skin-night .yui3-datatable-header{border-left:1px solid #303030;border-width:0 0 0 1px;font-size:inherit;margin:0;overflow:visible;padding:4px 10px 4px 10px}.yui3-skin-night .yui3-datatable-cell:first-child,.yui3-skin-night .yui3-datatable-first-header{border-left-width:0}.yui3-skin-night .yui3-datatable-header{background-color:#3b3c3d;background:-moz-linear-gradient(0% 100% 90deg,#242526 0,#3b3c3d 96%,#2c2d2f 100%);background:-webkit-gradient(linear,left bottom,left top,from(#242526),color-stop(0.96,#3b3c3d),to(#2c2d2f));color:#eee;font-weight:normal;text-align:left;vertical-align:bottom;white-space:nowrap}.yui3-skin-night .yui3-datatable-cell{background-color:transparent}.yui3-skin-night .yui3-datatable-even .yui3-datatable-cell{background-color:#0e0e0e}.yui3-skin-night .yui3-datatable-odd .yui3-datatable-cell{background-color:#1d1e1e}#yui3-css-stamp.skin-night-datatable-base{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-message/assets/skins/night/datatable-message.css b/lib/yuilib/3.12.0/assets/skins/night/datatable-message.css old mode 100644 new mode 100755 similarity index 69% rename from lib/yuilib/3.9.1/build/datatable-message/assets/skins/night/datatable-message.css rename to lib/yuilib/3.12.0/assets/skins/night/datatable-message.css index 12241830067..2e90ffa4999 --- a/lib/yuilib/3.9.1/build/datatable-message/assets/skins/night/datatable-message.css +++ b/lib/yuilib/3.12.0/assets/skins/night/datatable-message.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-datatable-message{display:none}.yui3-datatable-message-visible .yui3-datatable-message{display:block;display:table-row-group}.yui3-skin-night .yui3-datatable-message-content{background-color:#0e0e0e;border:0 none;border-bottom:1px solid #303030;padding:4px 10px}#yui3-css-stamp.skin-night-datatable-message{display:none} diff --git a/lib/yuilib/3.12.0/assets/skins/night/datatable-paginator.css b/lib/yuilib/3.12.0/assets/skins/night/datatable-paginator.css new file mode 100755 index 00000000000..389f3a7274b --- /dev/null +++ b/lib/yuilib/3.12.0/assets/skins/night/datatable-paginator.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-paginator-wrapper{border:0;padding:0}.yui3-datatable-paginator{padding:3px;white-space:nowrap}.yui3-datatable-paginator .yui3-paginator-content{position:relative}.yui3-datatable-paginator .yui3-paginator-page-select{position:absolute;right:0;top:0}.yui3-datatable-paginator .yui3-datatable-paginator-group{display:inline-block;zoom:1;*display:inline}.yui3-datatable-paginator .yui3-datatable-paginator-control{display:inline-block;zoom:1;*display:inline;margin:0 3px;padding:0 .2em;text-align:center;text-decoration:none;line-height:1.5;border:1px solid transparent;border-radius:3px;background:transparent}.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled,.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled:hover{cursor:default}.yui3-datatable-paginator .yui3-datatable-paginator-group input{width:3em}.yui3-datatable-paginator form{text-align:center;margin:0 2em}.yui3-datatable-paginator .yui3-datatable-paginator-per-page{text-align:right}.yui3-datatable-paginator{background:white url(../../../../assets/skins/night/sprite.png) repeat-x 0 0;background-image:-webkit-linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));background-image:-moz-linear-gradient(top,transparent 40%,hsla(0,0%,0%,0.21));background-image:-ms-linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));background-image:-o-linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));background-image:linear-gradient(transparent 40%,hsla(0,0%,0%,0.21))}.yui3-datatable-paginator .yui3-datatable-paginator-control{color:#242d42}.yui3-datatable-paginator .yui3-datatable-paginator-control-first:hover,.yui3-datatable-paginator .yui3-datatable-paginator-control-last:hover,.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:hover,.yui3-datatable-paginator .yui3-datatable-paginator-control-next:hover{box-shadow:0 1px 2px #292442}.yui3-datatable-paginator .yui3-datatable-paginator-control-first:active,.yui3-datatable-paginator .yui3-datatable-paginator-control-last:active,.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:active,.yui3-datatable-paginator .yui3-datatable-paginator-control-next:active{box-shadow:inset 0 1px 1px #292442;background:#e0deed;background:hsla(250,30%,90%,0.3)}.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled,.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled:hover{color:#bdc7db;border-color:transparent;box-shadow:none}#yui3-css-stamp.skin-night-datatable-paginator{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/night/datatable-scroll.css b/lib/yuilib/3.12.0/assets/skins/night/datatable-scroll.css old mode 100644 new mode 100755 similarity index 92% rename from lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/night/datatable-scroll.css rename to lib/yuilib/3.12.0/assets/skins/night/datatable-scroll.css index 978b6b9941a..4d93b2e0a34 --- a/lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/night/datatable-scroll.css +++ b/lib/yuilib/3.12.0/assets/skins/night/datatable-scroll.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-datatable-scrollable-x{_overflow-x:hidden;_position:relative}.yui3-datatable-scrollable-y,.yui3-datatable-scrollable-y .yui3-datatable-x-scroller{_overflow-y:hidden;_position:relative}.yui3-datatable-y-scroller-container{overflow-x:hidden;position:relative}.yui3-datatable-scrollable-y .yui3-datatable-content{position:relative}.yui3-datatable-scrollable-y .yui3-datatable-table .yui3-datatable-columns{visibility:hidden}.yui3-datatable-scroll-columns{position:absolute;width:100%;z-index:2}.yui3-datatable-y-scroller,.yui3-datatable-scrollable-x .yui3-datatable-caption-table{width:100%}.yui3-datatable-x-scroller{position:relative;overflow-x:scroll;overflow-y:hidden}.yui3-datatable-scrollable-y .yui3-datatable-y-scroller{position:relative;overflow-x:hidden;overflow-y:scroll;z-index:1;-webkit-overflow-scrolling:touch}.yui3-datatable-scrollbar{position:absolute;overflow-x:hidden;overflow-y:scroll;z-index:2}.yui3-datatable-scrollbar div{position:absolute;width:1px;visibility:hidden}.yui3-skin-sam .yui3-datatable-scroll-columns{border-collapse:separate;border-spacing:0;font-family:HelveticaNeue,arial,helvetica,clean,sans-serif;margin:0;padding:0;top:0;left:0}.yui3-skin-sam .yui3-datatable-scroll-columns .yui3-datatable-header{padding:0}.yui3-skin-sam .yui3-datatable-x-scroller,.yui3-skin-sam .yui3-datatable-y-scroller-container{border:1px solid #303030;border-left-color:#323434}.yui3-skin-sam .yui3-datatable-scrollable-x .yui3-datatable-y-scroller-container,.yui3-skin-sam .yui3-datatable-x-scroller .yui3-datatable-table,.yui3-skin-sam .yui3-datatable-y-scroller .yui3-datatable-table{border:0 none}#yui3-css-stamp.skin-night-datatable-scroll{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-sort/assets/skins/night/datatable-sort.css b/lib/yuilib/3.12.0/assets/skins/night/datatable-sort.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/datatable-sort/assets/skins/night/datatable-sort.css rename to lib/yuilib/3.12.0/assets/skins/night/datatable-sort.css index 0503ba2bc4c..92b6a1f072c --- a/lib/yuilib/3.9.1/build/datatable-sort/assets/skins/night/datatable-sort.css +++ b/lib/yuilib/3.12.0/assets/skins/night/datatable-sort.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-datatable-sortable-column{z-index:1}.yui3-datatable-sortable-column:focus,.yui3-datatable-sortable-column:active{z-index:2}.yui3-datatable-sort-liner{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.yui3-skin-night .yui3-datatable-sortable-column{cursor:pointer}.yui3-skin-night .yui3-datatable-columns .yui3-datatable-sorted,.yui3-skin-night .yui3-datatable-sortable-column:hover{background-color:#4d4e4f;*background:#505152 url(../../../../assets/skins/night/sprite.png) repeat-x 0 -100px;background-image:-webkit-gradient(linear,0 0,0 100%,from(rgba(255,255,255,0.2)),color-stop(40%,rgba(255,255,255,0.1)),color-stop(80%,rgba(255,255,255,0.01)),to(transparent));background-image:-webkit-linear-gradient(rgba(255,255,255,0.2),rgba(255,255,255,0.1) 40%,rgba(255,255,255,0.01) 80%,transparent);background-image:-moz-linear-gradient(top,rgba(255,255,255,0.2),rgba(255,255,255,0.1) 40%,rgba(255,255,255,0.01) 80%,transparent);background-image:-ms-linear-gradient(rgba(255,255,255,0.2),rgba(255,255,255,0.1) 40%,rgba(255,255,255,0.01) 80%,transparent);background-image:-o-linear-gradient(rgba(255,255,255,0.2),rgba(255,255,255,0.1) 40%,rgba(255,255,255,0.01) 80%,transparent);background-image:linear-gradient(rgba(255,255,255,0.2),rgba(255,255,255,0.1) 40%,rgba(255,255,255,0.01) 80%,transparent)}.yui3-skin-night .yui3-datatable-sort-liner{display:block;height:100%;position:relative;padding-right:15px;position:relative}.yui3-skin-night .yui3-datatable-sort-indicator{position:absolute;right:0;bottom:.5ex;width:7px;height:10px;background:url(sort-arrow-sprite.png) no-repeat 0 0;_background:url(sort-arrow-sprite-ie.png) no-repeat 0 0;overflow:hidden}.yui3-skin-night .yui3-datatable-sorted .yui3-datatable-sort-indicator{background-position:0 -10px}.yui3-skin-night .yui3-datatable-sorted-desc .yui3-datatable-sort-indicator{background-position:0 -20px}.yui3-skin-night .yui3-datatable-data .yui3-datatable-even .yui3-datatable-sorted{background-color:#262626;color:#b3b2b2}.yui3-skin-night .yui3-datatable-data .yui3-datatable-odd .yui3-datatable-sorted{background-color:#393a3a;color:#cbcbcb}#yui3-css-stamp.skin-night-datatable-sort{display:none} diff --git a/lib/yuilib/3.9.1/build/dial/assets/skins/night/dial.css b/lib/yuilib/3.12.0/assets/skins/night/dial.css old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/dial/assets/skins/night/dial.css rename to lib/yuilib/3.12.0/assets/skins/night/dial.css index aaa30a7dc24..edbaa8b6f27 --- a/lib/yuilib/3.9.1/build/dial/assets/skins/night/dial.css +++ b/lib/yuilib/3.12.0/assets/skins/night/dial.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + v\:oval,v\:shadow,v\:fill{behavior:url(#default#VML);display:inline-block;zoom:1;*display:inline}.yui3-dial{position:relative;display:-moz-inline-stack;display:inline-block;zoom:1;*display:inline}.yui3-dial-content,.yui3-dial-ring{position:relative}.yui3-dial-handle,.yui3-dial-marker,.yui3-dial-center-button,.yui3-dial-reset-string,.yui3-dial-handle-vml,.yui3-dial-marker-vml,.yui3-dial-center-button-vml,.yui3-dial-ring-vml v\:oval,.yui3-dial-center-button-vml v\:oval{position:absolute}.yui3-dial-center-button-vml v\:oval{font-size:1px;top:0;left:0}.yui3-dial-content .yui3-dial-ring .yui3-dial-hidden v\:oval,.yui3-dial-content .yui3-dial-ring .yui3-dial-hidden{opacity:0;filter:alpha(opacity=0)}.yui3-skin-night .yui3-dial{color:#fff}.yui3-skin-night .yui3-dial-handle{background:#439ede;opacity:.3;-moz-box-shadow:1px 1px 1px rgba(0,0,0,0.9) inset;-webkit-box-shadow:1px 1px 1px rgba(0,0,0,0.9) inset;box-shadow:1px 1px 1px rgba(0,0,0,0.9) inset;cursor:pointer;font-size:1px}.yui3-skin-night .yui3-dial-ring{background:#595b5b;background:-moz-linear-gradient(0% 100% 315deg,#5e6060,#2d2e2f);background:-webkit-gradient(linear,50% 0,100% 100%,from(#636666),to(#424344));-moz-box-shadow:1px 1px 2px rgba(0,0,0,0.7) inset;-webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.7) inset;box-shadow:1px 1px 5px rgba(0,0,0,0.4) inset}.yui3-skin-night .yui3-dial-center-button{-moz-box-shadow:-1px -1px 2px rgba(0,0,0,0.3) inset,1px 1px 2px rgba(0,0,0,0.5);-webkit-box-shadow:-1px -1px 2px rgba(0,0,0,0.3) inset,1px 1px 2px rgba(0,0,0,0.5);box-shadow:-1px -1px 2px rgba(0,0,0,0.3) inset,1px 1px 2px rgba(0,0,0,0.5);background:#dddbd4;background:-moz-radial-gradient(30% 30% 0deg,circle farthest-side,#999c9c 24%,#898989 41%,#535555 87%) repeat scroll 0 0 transparent;background:-webkit-gradient(radial,15 15,15,30 30,40,from(#999c9c),to(#535555),color-stop(.2,#898989));cursor:pointer;opacity:.7}.yui3-skin-night .yui3-dial-reset-string{color:#fff;font-size:72%;text-decoration:none}.yui3-skin-night .yui3-dial-label{color:#cbcbcb;margin-bottom:.8em}.yui3-skin-night .yui3-dial-value-string{margin-left:.5em;color:#dcdcdc;font-size:130%}.yui3-skin-night .yui3-dial-value{visibility:hidden;position:absolute;top:0;left:102%;width:4em}.yui3-skin-night .yui3-dial-north-mark{position:absolute;border-left:2px solid #434343;height:5px;left:50%;top:-7px;font-size:1px}.yui3-skin-night .yui3-dial-marker{background-color:#a0d8ff;opacity:.2;font-size:1px}.yui3-skin-night .yui3-dial-marker-max-min{background-color:#ff0404;opacity:.6}.yui3-skin-night .yui3-dial-ring-vml,.yui3-skin-night .yui3-dial-center-button-vml,.yui3-skin-night .yui3-dial-marker v\:oval.yui3-dial-marker-max-min,.yui3-skin-night v\:oval.yui3-dial-marker-max-min,.yui3-skin-night .yui3-dial-marker-vml,.yui3-skin-night .yui3-dial-handle-vml{background:0;opacity:1}#yui3-css-stamp.skin-night-dial{display:none} diff --git a/lib/yuilib/3.9.1/build/node-menunav/assets/skins/night/horizontal-menu-submenu-indicator.png b/lib/yuilib/3.12.0/assets/skins/night/horizontal-menu-submenu-indicator.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/node-menunav/assets/skins/night/horizontal-menu-submenu-indicator.png rename to lib/yuilib/3.12.0/assets/skins/night/horizontal-menu-submenu-indicator.png diff --git a/lib/yuilib/3.9.1/build/node-menunav/assets/skins/night/node-menunav.css b/lib/yuilib/3.12.0/assets/skins/night/node-menunav.css old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/node-menunav/assets/skins/night/node-menunav.css rename to lib/yuilib/3.12.0/assets/skins/night/node-menunav.css index 21a2ddb65a3..4b6c77e2dbb --- a/lib/yuilib/3.9.1/build/node-menunav/assets/skins/night/node-menunav.css +++ b/lib/yuilib/3.12.0/assets/skins/night/node-menunav.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-menu .yui3-menu{position:absolute;z-index:1}.yui3-menu .yui3-shim{position:absolute;top:0;left:0;z-index:-1;opacity:0;filter:alpha(opacity=0);border:0;margin:0;padding:0;height:100%;width:100%}.yui3-menu-hidden{top:-10000px;left:-10000px;visibility:hidden}.yui3-menu li{list-style-type:none}.yui3-menu ul,.yui3-menu li{margin:0;padding:0}.yui3-menu-label,.yui3-menuitem-content{text-align:left;white-space:nowrap;display:block}.yui3-menu-horizontal li{float:left;width:auto}.yui3-menu-horizontal li li{float:none}.yui3-menu-horizontal ul{*zoom:1}.yui3-menu-horizontal ul ul{*zoom:normal}.yui3-menu-horizontal>.yui3-menu-content>ul:after{content:"";display:block;clear:both;line-height:0;font-size:0;visibility:hidden}.yui3-menu-content{*zoom:1}.yui3-menu-hidden .yui3-menu-content{*zoom:normal}.yui3-menuitem-content,.yui3-menu-label{_zoom:1}.yui3-menu-hidden .yui3-menuitem-content,.yui3-menu-hidden .yui3-menu-label{_zoom:normal}.yui3-skin-night .yui3-menu-content,.yui3-skin-night .yui3-menu .yui3-menu .yui3-menu-content{font-size:100%;line-height:2.25;*line-height:1.45;border:solid 1px #303030;background:#151515}.yui3-skin-night .yui3-menu .yui3-menu .yui3-menu-content{font-size:100%}.yui3-skin-night .yui3-menu-horizontal .yui3-menu-content{line-height:2;*line-height:1.9;background-color:#3b3c3d;background:-moz-linear-gradient(0% 100% 90deg,#242526 0,#3b3c3d 96%,#2c2d2f 100%);background:-webkit-gradient(linear,left bottom,left top,from(#242526),color-stop(0.96,#3b3c3d),to(#2c2d2f));padding:0}.yui3-skin-night .yui3-menu ul,.yui3-skin-night .yui3-menu ul ul{margin-top:3px;padding-top:3px;border-top:solid 1px #303030}.yui3-skin-night .yui3-menu ul.first-of-type{border:0;margin:0;padding:0}.yui3-skin-night .yui3-menu-horizontal ul{padding:0;margin:0;border:0}.yui3-skin-night .yui3-menu li,.yui3-skin-night .yui3-menu .yui3-menu li{_border-bottom:solid 1px #151515}.yui3-skin-night .yui3-menu-horizontal li{_border-bottom:0}.yui3-skin-night .yui3-menubuttonnav li{border-right:solid 1px #ccc}.yui3-skin-night .yui3-splitbuttonnav li{border-right:solid 1px #303030}.yui3-skin-night .yui3-menubuttonnav li li,.yui3-skin-night .yui3-splitbuttonnav li li{border-right:0}.yui3-skin-night .yui3-menu-label,.yui3-skin-night .yui3-menu .yui3-menu .yui3-menu-label,.yui3-skin-night .yui3-menuitem-content,.yui3-skin-night .yui3-menu .yui3-menu .yui3-menuitem-content{padding:0 1em;color:#fff;text-decoration:none;cursor:default;float:none;border:0;margin:0}.yui3-skin-night .yui3-menu-horizontal .yui3-menu-label,.yui3-skin-night .yui3-menu-horizontal .yui3-menuitem-content{padding:0 10px;border-style:solid;border-color:#303030;border-width:1px 0;margin:-1px 0;float:left;width:auto}.yui3-skin-night .yui3-menu-label,.yui3-skin-night .yui3-menu .yui3-menu .yui3-menu-label{background:url(vertical-menu-submenu-indicator.png) right center no-repeat}.yui3-skin-night .yui3-menu-horizontal .yui3-menu-label{background:0}.yui3-skin-night .yui3-menubuttonnav .yui3-menu-label,.yui3-skin-night .yui3-splitbuttonnav .yui3-menu-label{background-image:none}.yui3-skin-night .yui3-menubuttonnav .yui3-menu-label{padding-right:0}.yui3-skin-night .yui3-menubuttonnav .yui3-menu-label em{font-style:normal;padding-right:20px;display:block;background:url(horizontal-menu-submenu-indicator.png) right center no-repeat}.yui3-skin-night .yui3-splitbuttonnav .yui3-menu-label{padding:0}.yui3-skin-night .yui3-splitbuttonnav .yui3-menu-label a{float:left;width:auto;color:#fff;text-decoration:none;cursor:default;padding:0 5px 0 10px}.yui3-skin-night .yui3-splitbuttonnav .yui3-menu-label .yui3-menu-toggle{padding:0;border-left:solid 1px #303030;width:15px;overflow:hidden;text-indent:-1000px;background:url(horizontal-menu-submenu-indicator.png) 3px center no-repeat}.yui3-skin-night .yui3-menu-label-active,.yui3-skin-night .yui3-menu-label-menuvisible,.yui3-skin-night .yui3-menu .yui3-menu .yui3-menu-label-active,.yui3-skin-night .yui3-menu .yui3-menu .yui3-menu-label-menuvisible{background-color:#292a2a}.yui3-skin-night .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-night .yui3-menu .yui3-menu .yui3-menuitem-active .yui3-menuitem-content{background-image:none;background-color:#292a2a;background:-moz-linear-gradient(0% 100% 90deg,#252626 0,#333434 100%);background:-webkit-gradient(linear,left top,left bottom,from(#333434),to(#252626));border-left-width:0;margin-left:0}.yui3-skin-night .yui3-menu-horizontal .yui3-menu-label-active,.yui3-skin-night .yui3-menu-horizontal .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-night .yui3-menu-horizontal .yui3-menu-label-menuvisible{border-color:#303030;background-color:#555658;background:-moz-linear-gradient(0% 100% 90deg,#343536 0,#555658 96%,#3e3f41 100%);background:-webkit-gradient(linear,left bottom,left top,from(#343536),color-stop(0.96,#555658),to(#3e3f41))}.yui3-skin-night .yui3-menubuttonnav .yui3-menu-label-active,.yui3-skin-night .yui3-menubuttonnav .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-night .yui3-menubuttonnav .yui3-menu-label-menuvisible,.yui3-skin-night .yui3-splitbuttonnav .yui3-menu-label-active,.yui3-skin-night .yui3-splitbuttonnav .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-night .yui3-splitbuttonnav .yui3-menu-label-menuvisible{border-left-width:1px;margin-left:-1px}.yui3-skin-night .yui3-splitbuttonnav .yui3-menu-label-menuvisible{border-color:#303030;background:transparent}.yui3-skin-night .yui3-splitbuttonnav .yui3-menu-label-menuvisible .yui3-menu-toggle{border-color:#303030;background-color:#505050}#yui3-css-stamp.skin-night-node-menunav{display:none} diff --git a/lib/yuilib/3.9.1/build/overlay/assets/skins/night/overlay.css b/lib/yuilib/3.12.0/assets/skins/night/overlay.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/overlay/assets/skins/night/overlay.css rename to lib/yuilib/3.12.0/assets/skins/night/overlay.css index aba2b238055..f62197e4fa1 --- a/lib/yuilib/3.9.1/build/overlay/assets/skins/night/overlay.css +++ b/lib/yuilib/3.12.0/assets/skins/night/overlay.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-overlay{position:absolute}.yui3-overlay-hidden{visibility:hidden}.yui3-widget-tmp-forcesize .yui3-overlay-content{overflow:hidden!important}.yui3-skin-night{background-color:#000;font-family:HelveticaNeue,arial,helvetica,clean,sans-serif;color:#fff}.yui3-skin-night .yui3-overlay-content ul,ol,li{margin:0;padding:0;list-style:none;zoom:1}.yui3-skin-night .yui3-overlay-content li{*float:left}.yui3-skin-night .yui3-overlay-content{background-color:#6d6e6e;-moz-box-shadow:0 0 17px rgba(0,0,0,0.58);-webkit-box-shadow:0 0 17px rgba(0,0,0,0.58);box-shadow:0 0 17px rgba(0,0,0,0.58);-moz-border-radius:7px;-webkit-border-radius:7px;border-radius:7px}.yui3-skin-night .yui3-overlay-content .yui3-widget-hd{background-color:#6d6e6e;-moz-border-radius:7px 7px 0 0;-webkit-border-radius:7px 7px 0 0;border-radius:7px 7px 0 0;color:#fff;margin:0;padding:20px 22px 0;font-size:147%}.yui3-skin-night .yui3-overlay-content .yui3-widget-bd{padding:11px 22px 17px;font-size:92%}.yui3-skin-night .yui3-overlay .yui3-widget-bd li{margin:.04em}.yui3-skin-night .yui3-overlay-content .yui3-widget-ft{background-color:#575858;border-top:solid 1px #494a4a;-moz-border-radius:0 0 7px 7px;-webkit-border-radius:0 0 7px 7px;border-radius:0 0 7px 7px;padding:17px 25px 20px;text-align:center}.yui3-skin-night .yui3-overlay-content .yui3-widget-ft li{margin:3px;display:inline-block}.yui3-skin-night .yui3-overlay-content .yui3-widget-ft li a{border:solid 1px #1b1c1c;border-radius:6px;-moz-box-shadow:0 1px #677478;-webkit-box-shadow:0 1px #677478;box-shadow:0 1px #677478;text-shadow:0 -1px 0 rgba(0,0,0,0.7);font-size:85%;text-align:center;color:#fff;padding:6px 28px;background-color:#2b2d2d;background:-moz-linear-gradient(0% 100% 90deg,#242526 0,#3b3c3d 96%,#2c2d2f 100%);background:-webkit-gradient(linear,left bottom,left top,from(#242526),color-stop(0.96,#3b3c3d),to(#2c2d2f))}.yui3-skin-night .yui3-overlay .yui3-widget-ft li:first-child{margin-left:0}.yui3-skin-night .yui3-overlay .yui3-widget-ft li:last-child{margin-right:0}.yui3-skin-night .yui3-overlay .yui3-widget-ft li:last-child a{border:solid 1px #520e00;-moz-box-shadow:0 1px #7d5d57;-webkit-box-shadow:0 1px #7d5d57;box-shadow:0 1px #7d5d57;background-color:#901704;background:-moz-linear-gradient(100% 0 270deg,#ab1c0b,#7b1400);background:-webkit-gradient(linear,left top,left bottom,from(#ab1c0b),to(#7b1400));margin-right:0}#yui3-widget-mask{background-color:#000;opacity:.5}#yui3-css-stamp.skin-night-overlay{display:none} diff --git a/lib/yuilib/3.9.1/build/panel/assets/skins/night/panel.css b/lib/yuilib/3.12.0/assets/skins/night/panel.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/panel/assets/skins/night/panel.css rename to lib/yuilib/3.12.0/assets/skins/night/panel.css index 84fec21284a..f460b5b7cd3 --- a/lib/yuilib/3.9.1/build/panel/assets/skins/night/panel.css +++ b/lib/yuilib/3.12.0/assets/skins/night/panel.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-panel{position:absolute}.yui3-panel-hidden{visibility:hidden}.yui3-widget-tmp-forcesize .yui3-panel-content{overflow:hidden!important}.yui3-panel .yui3-widget-hd{position:relative}.yui3-panel .yui3-widget-hd .yui3-widget-buttons{position:absolute;top:0;right:0}.yui3-panel .yui3-widget-ft .yui3-widget-buttons{display:inline-block;*display:inline;zoom:1}.yui3-skin-night .yui3-panel{color:#fff;font-family:HelveticaNeue,arial,helvetica,clean,sans-serif}.yui3-skin-night .yui3-panel-content{background:#6d6e6e;-webkit-box-shadow:0 0 20px #000;-moz-box-shadow:0 0 20px #000;box-shadow:0 0 20px #000;border:1px solid black;-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px}.yui3-skin-night .yui3-panel .yui3-widget-hd{padding:11px 57px 11px 22px;min-height:17px;_height:17px;-webkit-border-top-left-radius:7px;-webkit-border-top-right-radius:7px;-moz-border-radius-topleft:7px;-moz-border-radius-topright:7px;border-top-left-radius:7px;border-top-right-radius:7px;font-weight:bold;color:white;background-color:#555658;background:-moz-linear-gradient(0% 100% 90deg,#343536 0,#555658 96%,#3e3f41 100%);background:-webkit-gradient(linear,left bottom,left top,from(#343536),color-stop(0.96,#555658),to(#3e3f41))}.yui3-skin-night .yui3-panel .yui3-widget-hd .yui3-widget-buttons{padding:11px}.yui3-skin-night .yui3-panel .yui3-widget-bd{padding:11px 22px 17px}.yui3-skin-night .yui3-panel .yui3-widget-ft{background-color:#575858;border-top:1px solid #494a4a;padding:6px 16px 8px;text-align:center;-webkit-border-bottom-right-radius:7px;-webkit-border-bottom-left-radius:7px;-moz-border-radius-bottomright:7px;-moz-border-radius-bottomleft:7px;border-bottom-right-radius:7px;border-bottom-left-radius:7px}.yui3-skin-night .yui3-panel .yui3-widget-ft .yui3-widget-buttons{bottom:0;position:relative;right:auto;width:100%;text-align:center;padding-bottom:0;margin-left:-5px;margin-right:-5px}.yui3-skin-night .yui3-panel .yui3-widget-ft .yui3-button{margin:5px}.yui3-skin-night .yui3-panel .yui3-widget-hd .yui3-button-close{background:transparent;filter:none;border:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;width:22px;height:17px;padding:0;overflow:hidden;vertical-align:top;*font-size:0;*line-height:0;*letter-spacing:-1000px;*color:#86a5ec;*background:url(sprite_icons.png) no-repeat center 3px}.yui3-skin-night .yui3-panel .yui3-widget-hd .yui3-button-close:hover{background-color:#333}.yui3-skin-night .yui3-panel .yui3-widget-hd .yui3-button-close:before{content:url(sprite_icons.png);display:inline-block;text-align:center;font-size:0;line-height:0;width:22px;margin:3px 0 0 1px}.yui3-skin-night .yui3-panel-hidden .yui3-widget-hd .yui3-button-close{display:none}#yui3-css-stamp.skin-night-panel{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/night/rail-x-lines.png b/lib/yuilib/3.12.0/assets/skins/night/rail-x-lines.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/night/rail-x-lines.png rename to lib/yuilib/3.12.0/assets/skins/night/rail-x-lines.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/night/rail-x.png b/lib/yuilib/3.12.0/assets/skins/night/rail-x.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/night/rail-x.png rename to lib/yuilib/3.12.0/assets/skins/night/rail-x.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/night/rail-y-lines.png b/lib/yuilib/3.12.0/assets/skins/night/rail-y-lines.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/night/rail-y-lines.png rename to lib/yuilib/3.12.0/assets/skins/night/rail-y-lines.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/night/rail-y.png b/lib/yuilib/3.12.0/assets/skins/night/rail-y.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/night/rail-y.png rename to lib/yuilib/3.12.0/assets/skins/night/rail-y.png diff --git a/lib/yuilib/3.9.1/build/resize-base/assets/skins/night/resize-base.css b/lib/yuilib/3.12.0/assets/skins/night/resize-base.css old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/resize-base/assets/skins/night/resize-base.css rename to lib/yuilib/3.12.0/assets/skins/night/resize-base.css index 1a77ad2f6e3..eafd0b67551 --- a/lib/yuilib/3.9.1/build/resize-base/assets/skins/night/resize-base.css +++ b/lib/yuilib/3.12.0/assets/skins/night/resize-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-resize,.yui3-resize-wrapper{z-index:0;zoom:1}.yui3-resize-handle{position:absolute;display:block;z-index:100;zoom:1}.yui3-resize-proxy{position:absolute;border:1px dashed #000;position:absolute;z-index:10000}.yui3-resize-hidden-handles .yui3-resize-handle{opacity:0;filter:alpha(opacity=0)}.yui3-resize-handle-t,.yui3-resize-handle-b{width:100%;left:0;height:6px}.yui3-resize-handle-l,.yui3-resize-handle-r{height:100%;top:0;width:6px}.yui3-resize-handle-t{cursor:n-resize;top:0}.yui3-resize-handle-b{cursor:s-resize;bottom:0}.yui3-resize-handle-l{cursor:w-resize;left:0}.yui3-resize-handle-r{cursor:e-resize;right:0}.yui3-resize-handle-inner{position:absolute;zoom:1}@media only screen and (min-device-width :320px) and (max-device-width :480px){.yui3-resize-handle-inner:after{content:"";width:40px;height:40px;position:absolute}.yui3-resize-handle-inner-r,.yui3-resize-handle-inner-l,.yui3-resize-handle-inner-t,.yui3-resize-handle-inner-b,.yui3-resize-handle-inner-tr,.yui3-resize-handle-inner-br,.yui3-resize-handle-inner-tl,.yui3-resize-handle-inner-bl{overflow:visible!important}.yui3-resize-handle-inner-r:after{top:-12px;right:0}.yui3-resize-handle-inner-l:after{top:-12px;left:0}.yui3-resize-handle-inner-t:after{top:0;left:-12px}.yui3-resize-handle-inner-b:after{bottom:0;left:-12px}.yui3-resize-handle-inner-tr:after{top:0;right:0}.yui3-resize-handle-inner-br:after{bottom:0;right:0}.yui3-resize-handle-inner-tl:after{top:0;left:0}.yui3-resize-handle-inner-bl:after{bottom:0;left:0}}@media only screen and (min-device-width :768px) and (max-device-width :1024px){.yui3-resize-handle-inner:after{content:"";width:30px;height:30px;position:absolute}.yui3-resize-handle-inner-r,.yui3-resize-handle-inner-l,.yui3-resize-handle-inner-t,.yui3-resize-handle-inner-b,.yui3-resize-handle-inner-tr,.yui3-resize-handle-inner-br,.yui3-resize-handle-inner-tl,.yui3-resize-handle-inner-bl{overflow:visible!important}.yui3-resize-handle-inner-r:after{top:-6px;right:0}.yui3-resize-handle-inner-l:after{top:-6px;left:0}.yui3-resize-handle-inner-t:after{top:0;left:-6px}.yui3-resize-handle-inner-b:after{bottom:0;left:-6px}.yui3-resize-handle-inner-tr:after{top:0;right:0}.yui3-resize-handle-inner-br:after{bottom:0;right:0}.yui3-resize-handle-inner-tl:after{top:0;left:0}.yui3-resize-handle-inner-bl:after{bottom:0;left:0}}.yui3-resize-handle-inner-t,.yui3-resize-handle-inner-b{margin-left:-8px;left:50%}.yui3-resize-handle-inner-l,.yui3-resize-handle-inner-r{margin-top:-8px;top:50%}.yui3-resize-handle-inner-t{top:-4px}.yui3-resize-handle-inner-b{bottom:-4px}.yui3-resize-handle-inner-l{left:-4px}.yui3-resize-handle-inner-r{right:-4px}.yui3-resize-handle-tr,.yui3-resize-handle-br,.yui3-resize-handle-tl,.yui3-resize-handle-bl{height:15px;width:15px;z-index:200}.yui3-resize-handle-tr{cursor:ne-resize;top:0;right:0}.yui3-resize-handle-tl{cursor:nw-resize;top:0;left:0}.yui3-resize-handle-br{cursor:se-resize;bottom:0;right:0}.yui3-resize-handle-bl{cursor:sw-resize;bottom:0;left:0}.yui3-resize-handle-inner-r,.yui3-resize-handle-inner-l,.yui3-resize-handle-inner-t,.yui3-resize-handle-inner-b,.yui3-resize-handle-inner-tr,.yui3-resize-handle-inner-br,.yui3-resize-handle-inner-tl,.yui3-resize-handle-inner-bl{background-repeat:no-repeat;background:url(arrows.png) no-repeat 0 0;display:block;height:15px;overflow:hidden;text-indent:-99999em;width:15px}.yui3-resize-handle-inner-br{background-position:-30px 0;bottom:-2px;right:-2px}.yui3-resize-handle-inner-tr{background-position:-58px 0;bottom:0;right:-2px}.yui3-resize-handle-inner-bl{background-position:-75px 0;bottom:-2px;right:-2px}.yui3-resize-handle-inner-tl{background-position:-47px 0;bottom:0;right:-2px}.yui3-resize-handle-inner-b,.yui3-resize-handle-inner-t{background-position:-15px 0}#yui3-css-stamp.skin-night-resize-base{display:none} diff --git a/lib/yuilib/3.9.1/build/scrollview-base/assets/skins/night/scrollview-base.css b/lib/yuilib/3.12.0/assets/skins/night/scrollview-base.css old mode 100644 new mode 100755 similarity index 61% rename from lib/yuilib/3.9.1/build/scrollview-base/assets/skins/night/scrollview-base.css rename to lib/yuilib/3.12.0/assets/skins/night/scrollview-base.css index 5589c306f72..e372d81d059 --- a/lib/yuilib/3.9.1/build/scrollview-base/assets/skins/night/scrollview-base.css +++ b/lib/yuilib/3.12.0/assets/skins/night/scrollview-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-scrollview{position:relative;overflow:hidden;-webkit-user-select:none;-moz-user-select:none}.yui3-scrollview-hidden{display:none}.yui3-scrollview-content{position:relative}#yui3-css-stamp.skin-night-scrollview-base{display:none} diff --git a/lib/yuilib/3.9.1/build/scrollview-list/assets/skins/night/scrollview-list.css b/lib/yuilib/3.12.0/assets/skins/night/scrollview-list.css old mode 100644 new mode 100755 similarity index 88% rename from lib/yuilib/3.9.1/build/scrollview-list/assets/skins/night/scrollview-list.css rename to lib/yuilib/3.12.0/assets/skins/night/scrollview-list.css index 3a6ede3361a..5f71431fd70 --- a/lib/yuilib/3.9.1/build/scrollview-list/assets/skins/night/scrollview-list.css +++ b/lib/yuilib/3.12.0/assets/skins/night/scrollview-list.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-night .yui3-scrollview{-webkit-tap-highlight-color:rgba(0,0,0,0)}.yui3-skin-night .yui3-scrollview{color:#fff;background-color:#000}.yui3-skin-night .yui3-scrollview-vert .yui3-scrollview-content{border-top:0;background-color:#000;font-family:HelveticaNeue,arial,helvetica,clean,sans-serif;color:#fff}.yui3-skin-night .yui3-scrollview-vert .yui3-scrollview-content .yui3-scrollview-item{*zoom:1}.yui3-skin-night .yui3-scrollview-vert .yui3-scrollview-content .yui3-scrollview-list{*zoom:1;list-style:none;padding:0;margin:0}.yui3-skin-night .yui3-scrollview-vert .yui3-scrollview-content .yui3-scrollview-item{border-bottom:1px solid #303030;padding:15px 20px 16px;font-size:100%;font-weight:bold;background-color:#151515;cursor:pointer}.yui3-skin-night .yui3-scrollview-vert .yui3-scrollview-content .yui3-scrollview-list.selected{background-color:#2c2d2e;background:-moz-linear-gradient(0% 100% 90deg,#252626 0,#333434 100%);background:-webkit-gradient(linear,left top,left bottom,from(#333434),to(#252626));border-top:solid 1px #4b4b4b;border-bottom:solid 1px #3e3f3f;margin-top:-1px}#yui3-css-stamp.skin-night-scrollview-list{display:none} diff --git a/lib/yuilib/3.9.1/build/scrollview-scrollbars/assets/skins/night/scrollview-scrollbars.css b/lib/yuilib/3.12.0/assets/skins/night/scrollview-scrollbars.css old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/scrollview-scrollbars/assets/skins/night/scrollview-scrollbars.css rename to lib/yuilib/3.12.0/assets/skins/night/scrollview-scrollbars.css index 983c0220cd2..e7b67b9a26b --- a/lib/yuilib/3.9.1/build/scrollview-scrollbars/assets/skins/night/scrollview-scrollbars.css +++ b/lib/yuilib/3.12.0/assets/skins/night/scrollview-scrollbars.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-scrollview-scrollbar{opacity:1;position:absolute;width:6px;height:10px}.yui3-scrollview-scrollbar{top:0;right:1px}.yui3-scrollview-scrollbar-horiz{top:auto;height:8px;width:20px;bottom:1px;left:0}.yui3-scrollview-scrollbar .yui3-scrollview-child{position:absolute;right:0;display:block;width:100%;height:4px}.yui3-scrollview-scrollbar .yui3-scrollview-first{top:0}.yui3-scrollview-scrollbar .yui3-scrollview-last{top:0}.yui3-scrollview-scrollbar .yui3-scrollview-middle{position:absolute;top:4px;height:1px}.yui3-scrollview-scrollbar-horiz .yui3-scrollview-child{display:-moz-inline-stack;display:inline-block;zoom:1;*display:inline;top:0;left:0;bottom:auto;right:auto}.yui3-scrollview-scrollbar-horiz .yui3-scrollview-first,.yui3-scrollview-scrollbar-horiz .yui3-scrollview-last{width:4px;height:6px}.yui3-scrollview-scrollbar-horiz .yui3-scrollview-middle{top:0;left:4px;width:1px;height:6px}.yui3-scrollview-scrollbar-vert-basic{height:auto}.yui3-scrollview-scrollbar-vert-basic .yui3-scrollview-child{position:static;_overflow:hidden;_line-height:4px}.yui3-scrollview-scrollbar-horiz-basic{width:auto;white-space:nowrap;line-height:6px;_overflow:hidden}.yui3-scrollview-scrollbar-horiz-basic .yui3-scrollview-child{position:static;padding:0;margin:0;top:auto;left:auto;right:auto;bottom:auto}.yui3-skin-night .yui3-scrollview-scrollbar{-webkit-transform:translate3d(0,0,0);-moz-transform:translate(0,0)}.yui3-skin-night .yui3-scrollview-scrollbar .yui3-scrollview-first,.yui3-skin-night .yui3-scrollview-scrollbar .yui3-scrollview-middle,.yui3-skin-night .yui3-scrollview-scrollbar .yui3-scrollview-last{border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px;background-color:#808080;opacity:.3;filter:alpha(opacity=30)}.yui3-skin-night .yui3-scrollview-scrollbar .yui3-scrollview-first,.yui3-skin-night .yui3-scrollview-scrollbar .yui3-scrollview-last{border-bottom-right-radius:0;border-bottom-left-radius:0;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:0}.yui3-skin-night .yui3-scrollview-scrollbar .yui3-scrollview-last{border-radius:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px;-webkit-border-radius:0;-webkit-border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:3px;-webkit-transform:translate3d(0,0,0);-moz-border-radius:0;-moz-border-radius-bottomright:3px;-moz-border-radius-bottomleft:3px;-moz-transform:translate(0,0)}.yui3-skin-night .yui3-scrollview-scrollbar .yui3-scrollview-middle{border-radius:0;-webkit-border-radius:0;-moz-border-radius:0;-webkit-transform:translate3d(0,0,0) scaleY(1);-webkit-transform-origin:0 0;-moz-transform:translate(0,0) scaleY(1);-moz-transform-origin:0 0}.yui3-skin-night .yui3-scrollview-scrollbar-horiz .yui3-scrollview-first,.yui3-skin-night .yui3-scrollview-scrollbar-horiz .yui3-scrollview-last{border-top-right-radius:0;border-bottom-left-radius:3px;-webkit-border-top-right-radius:0;-webkit-border-bottom-left-radius:3px;-moz-border-radius-topright:0;-moz-border-radius-bottomleft:3px}.yui3-skin-night .yui3-scrollview-scrollbar-horiz .yui3-scrollview-last{border-bottom-left-radius:0;border-top-right-radius:3px;-webkit-border-bottom-left-radius:0;-webkit-border-top-right-radius:3px;-moz-border-radius-bottomleft:0;-moz-border-radius-topright:3px}.yui3-skin-night .yui3-scrollview-scrollbar-horiz .yui3-scrollview-middle{-webkit-transform:translate3d(0,0,0) scaleX(1);-webkit-transform-origin:0 0;-moz-transform:translate(0,0) scaleX(1);-moz-transform-origin:0 0}.yui3-skin-night .yui3-scrollview-scrollbar-vert-basic .yui3-scrollview-child,.yui3-skin-night .yui3-scrollview-scrollbar-horiz-basic .yui3-scrollview-child{background-color:#aaa;background-image:none}#yui3-css-stamp.skin-night-scrollview-scrollbars{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/night/slider-base.css b/lib/yuilib/3.12.0/assets/skins/night/slider-base.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/night/slider-base.css rename to lib/yuilib/3.12.0/assets/skins/night/slider-base.css index 67ac81ac7b7..49692f374e5 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/night/slider-base.css +++ b/lib/yuilib/3.12.0/assets/skins/night/slider-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-night .yui3-slider-x .yui3-slider-rail,.yui3-skin-night .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-night .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-night .yui3-slider-x .yui3-slider-rail{height:25px}.yui3-skin-night .yui3-slider-x .yui3-slider-thumb{height:26px;width:21px}.yui3-skin-night .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:20px;left:-5px;width:5px}.yui3-skin-night .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:20px;right:-5px;width:5px}.yui3-skin-night .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-10px}.yui3-skin-night .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-50px}.yui3-skin-night .yui3-slider-y .yui3-slider-rail,.yui3-skin-night .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-night .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-night .yui3-slider-y .yui3-slider-rail{width:25px}.yui3-skin-night .yui3-slider-y .yui3-slider-thumb{width:26px;height:21px}.yui3-skin-night .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:20px;top:-5px;height:5px}.yui3-skin-night .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:20px;bottom:-5px;height:5px}.yui3-skin-night .yui3-slider-y .yui3-slider-thumb-image{left:-10px;top:0}.yui3-skin-night .yui3-slider-y .yui3-slider-thumb-shadow{left:-50px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-night-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-sort/assets/skins/night/sort-arrow-sprite-ie.png b/lib/yuilib/3.12.0/assets/skins/night/sort-arrow-sprite-ie.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/datatable-sort/assets/skins/night/sort-arrow-sprite-ie.png rename to lib/yuilib/3.12.0/assets/skins/night/sort-arrow-sprite-ie.png diff --git a/lib/yuilib/3.9.1/build/datatable-sort/assets/skins/night/sort-arrow-sprite.png b/lib/yuilib/3.12.0/assets/skins/night/sort-arrow-sprite.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/datatable-sort/assets/skins/night/sort-arrow-sprite.png rename to lib/yuilib/3.12.0/assets/skins/night/sort-arrow-sprite.png diff --git a/lib/yuilib/3.9.1/build/panel/assets/skins/night/sprite_icons.png b/lib/yuilib/3.12.0/assets/skins/night/sprite_icons.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/panel/assets/skins/night/sprite_icons.png rename to lib/yuilib/3.12.0/assets/skins/night/sprite_icons.png diff --git a/lib/yuilib/3.9.1/build/tabview/assets/skins/night/tabview.css b/lib/yuilib/3.12.0/assets/skins/night/tabview.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/tabview/assets/skins/night/tabview.css rename to lib/yuilib/3.12.0/assets/skins/night/tabview.css index f558ec95b55..8a8d4a4f972 --- a/lib/yuilib/3.9.1/build/tabview/assets/skins/night/tabview.css +++ b/lib/yuilib/3.12.0/assets/skins/night/tabview.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-tab-panel{display:none}.yui3-tab-panel-selected{display:block}.yui3-tabview-list,.yui3-tab{margin:0;padding:0;list-style:none}.yui3-tabview{position:relative}.yui3-tabview,.yui3-tabview-list,.yui3-tabview-panel,.yui3-tab,.yui3-tab-panel{zoom:1}.yui3-tab{display:inline-block;*display:inline;vertical-align:bottom;cursor:pointer}.yui3-tab-label{display:block;display:inline-block;padding:6px 10px;position:relative;text-decoration:none;vertical-align:bottom}.yui3-skin-night .yui3-tabview-panel{background-color:#333;color:#808080;padding:1px}.yui3-skin-night .yui3-tab-panel p{margin:10px}.yui3-skin-night .yui3-tabview-list{background-color:#0f0f0f;border-top:1px solid #000;text-align:center;height:46px;background:-moz-linear-gradient(0% 100% 90deg,#0f0f0f 0,#1e1e1e 96%,#292929 100%);background:-webkit-gradient(linear,left bottom,left top,from(#0f0f0f),color-stop(0.96,#1e1e1e),to(#292929))}.yui3-skin-night .yui3-tabview-list li{margin-top:8px}.yui3-skin-night .yui3-tabview-list li a{border:solid 1px #0c0c0c;border-right-style:none;-moz-box-shadow:0 1px #222;-webkit-box-shadow:0 1px #222;box-shadow:0 1px #222;text-shadow:0 -1px 0 rgba(0,0,0,0.7);font-size:85%;text-align:center;color:#fff;padding:6px 28px;background-color:#555658;background:-moz-linear-gradient(0% 100% 90deg,#343536 0,#555658 96%,#3e3f41 100%);background:-webkit-gradient(linear,left bottom,left top,from(#343536),color-stop(0.96,#555658),to(#3e3f41))}.yui3-skin-night .yui3-tabview-list li.yui3-tab-selected a{background-color:#2b2d2d;background:-moz-linear-gradient(0% 100% 90deg,#242526 0,#3b3c3d 96%,#2c2d2f 100%);background:-webkit-gradient(linear,left bottom,left top,from(#242526),color-stop(0.96,#3b3c3d),to(#2c2d2f))}.yui3-skin-night .yui3-tabview-list li:first-child a{-moz-border-radius:6px 0 0 6px;-webkit-border-radius:6px 0 0 6px;border-radius:6px 0 0 6px}.yui3-skin-night .yui3-tabview-list li:last-child a{border-right-style:solid;-moz-border-radius:0 6px 6px 0;-webkit-border-radius:0 6px 6px 0;border-radius:0 6px 6px 0}#yui3-css-stamp.skin-night-tabview{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/night/thumb-x.png b/lib/yuilib/3.12.0/assets/skins/night/thumb-x.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/night/thumb-x.png rename to lib/yuilib/3.12.0/assets/skins/night/thumb-x.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/night/thumb-y.png b/lib/yuilib/3.12.0/assets/skins/night/thumb-y.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/night/thumb-y.png rename to lib/yuilib/3.12.0/assets/skins/night/thumb-y.png diff --git a/lib/yuilib/3.9.1/build/node-menunav/assets/skins/night/vertical-menu-submenu-indicator.png b/lib/yuilib/3.12.0/assets/skins/night/vertical-menu-submenu-indicator.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/node-menunav/assets/skins/night/vertical-menu-submenu-indicator.png rename to lib/yuilib/3.12.0/assets/skins/night/vertical-menu-submenu-indicator.png diff --git a/lib/yuilib/3.9.1/build/widget-base/assets/skins/night/widget-base.css b/lib/yuilib/3.12.0/assets/skins/night/widget-base.css old mode 100644 new mode 100755 similarity index 69% rename from lib/yuilib/3.9.1/build/widget-base/assets/skins/night/widget-base.css rename to lib/yuilib/3.12.0/assets/skins/night/widget-base.css index 6b30ff519e7..8b99e2ac957 --- a/lib/yuilib/3.9.1/build/widget-base/assets/skins/night/widget-base.css +++ b/lib/yuilib/3.12.0/assets/skins/night/widget-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-widget-hidden{display:none}.yui3-widget-content{overflow:hidden}.yui3-widget-content-expanded{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;height:100%}.yui3-widget-tmp-forcesize{overflow:hidden!important}#yui3-css-stamp.skin-night-widget-base{display:none} diff --git a/lib/yuilib/3.9.1/build/widget-modality/assets/skins/night/widget-modality.css b/lib/yuilib/3.12.0/assets/skins/night/widget-modality.css old mode 100644 new mode 100755 similarity index 56% rename from lib/yuilib/3.9.1/build/widget-modality/assets/skins/night/widget-modality.css rename to lib/yuilib/3.12.0/assets/skins/night/widget-modality.css index 13b4f5276bd..e9959294536 --- a/lib/yuilib/3.9.1/build/widget-modality/assets/skins/night/widget-modality.css +++ b/lib/yuilib/3.12.0/assets/skins/night/widget-modality.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-night .yui3-widget-mask{background-color:black;zoom:1;-ms-filter:"alpha(opacity=40)";filter:alpha(opacity=40);opacity:.4}#yui3-css-stamp.skin-night-widget-modality{display:none} diff --git a/lib/yuilib/3.9.1/build/widget-stack/assets/skins/night/widget-stack.css b/lib/yuilib/3.12.0/assets/skins/night/widget-stack.css old mode 100644 new mode 100755 similarity index 62% rename from lib/yuilib/3.9.1/build/widget-stack/assets/skins/night/widget-stack.css rename to lib/yuilib/3.12.0/assets/skins/night/widget-stack.css index 9663180c2db..b9dc9c38a85 --- a/lib/yuilib/3.9.1/build/widget-stack/assets/skins/night/widget-stack.css +++ b/lib/yuilib/3.12.0/assets/skins/night/widget-stack.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-widget-stacked .yui3-widget-shim{opacity:0;filter:alpha(opacity=0);position:absolute;border:0;top:0;left:0;padding:0;margin:0;z-index:-1;width:100%;height:100%;_width:0;_height:0}#yui3-css-stamp.skin-night-widget-stack{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/rail-x.png b/lib/yuilib/3.12.0/assets/skins/round-dark/rail-x.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/rail-x.png rename to lib/yuilib/3.12.0/assets/skins/round-dark/rail-x.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/rail-y.png b/lib/yuilib/3.12.0/assets/skins/round-dark/rail-y.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/rail-y.png rename to lib/yuilib/3.12.0/assets/skins/round-dark/rail-y.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/slider-base.css b/lib/yuilib/3.12.0/assets/skins/round-dark/slider-base.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/slider-base.css rename to lib/yuilib/3.12.0/assets/skins/round-dark/slider-base.css index d3b68966dab..392ab65089d --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/slider-base.css +++ b/lib/yuilib/3.12.0/assets/skins/round-dark/slider-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail,.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail{height:25px;background-position:0 3px}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-thumb{height:26px;width:24px}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -17px;height:20px;left:-2px;width:5px}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -37px;height:20px;right:-2px;width:5px}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-7px}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-47px}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail,.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail{width:25px;background-position:3px 0}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-thumb{width:26px;height:24px}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-17px 0;width:20px;top:-2px;height:5px}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-37px 0;width:20px;bottom:-2px;height:5px}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-thumb-image{top:0;left:-7px}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-thumb-shadow{top:0;left:-47px;opacity:.15;filter:alpha(opacity=15)}#yui3-css-stamp.skin-round-dark-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/thumb-x-grip.png b/lib/yuilib/3.12.0/assets/skins/round-dark/thumb-x-grip.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/thumb-x-grip.png rename to lib/yuilib/3.12.0/assets/skins/round-dark/thumb-x-grip.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/thumb-x.png b/lib/yuilib/3.12.0/assets/skins/round-dark/thumb-x.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/thumb-x.png rename to lib/yuilib/3.12.0/assets/skins/round-dark/thumb-x.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/thumb-y-grip.png b/lib/yuilib/3.12.0/assets/skins/round-dark/thumb-y-grip.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/thumb-y-grip.png rename to lib/yuilib/3.12.0/assets/skins/round-dark/thumb-y-grip.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/thumb-y.png b/lib/yuilib/3.12.0/assets/skins/round-dark/thumb-y.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/thumb-y.png rename to lib/yuilib/3.12.0/assets/skins/round-dark/thumb-y.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round/rail-x.png b/lib/yuilib/3.12.0/assets/skins/round/rail-x.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/round/rail-x.png rename to lib/yuilib/3.12.0/assets/skins/round/rail-x.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round/rail-y.png b/lib/yuilib/3.12.0/assets/skins/round/rail-y.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/round/rail-y.png rename to lib/yuilib/3.12.0/assets/skins/round/rail-y.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round/slider-base.css b/lib/yuilib/3.12.0/assets/skins/round/slider-base.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/round/slider-base.css rename to lib/yuilib/3.12.0/assets/skins/round/slider-base.css index 83e12063cf1..6b7e7af4765 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round/slider-base.css +++ b/lib/yuilib/3.12.0/assets/skins/round/slider-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-round .yui3-slider-x .yui3-slider-rail,.yui3-skin-round .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-round .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-round .yui3-slider-x .yui3-slider-rail{height:25px;background-position:0 3px}.yui3-skin-round .yui3-slider-x .yui3-slider-thumb{height:26px;width:24px}.yui3-skin-round .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -17px;height:20px;left:-2px;width:5px}.yui3-skin-round .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -37px;height:20px;right:-2px;width:5px}.yui3-skin-round .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-7px}.yui3-skin-round .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-47px}.yui3-skin-round .yui3-slider-y .yui3-slider-rail,.yui3-skin-round .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-round .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-round .yui3-slider-y .yui3-slider-rail{width:25px;background-position:3px 0}.yui3-skin-round .yui3-slider-y .yui3-slider-thumb{width:26px;height:24px}.yui3-skin-round .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-17px 0;width:20px;top:-2px;height:5px}.yui3-skin-round .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-37px 0;width:20px;bottom:-2px;height:5px}.yui3-skin-round .yui3-slider-y .yui3-slider-thumb-image{top:0;left:-8px}.yui3-skin-round .yui3-slider-y .yui3-slider-thumb-shadow{top:0;left:-48px;opacity:.15;filter:alpha(opacity=15)}#yui3-css-stamp.skin-round-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round/thumb-x-grip.png b/lib/yuilib/3.12.0/assets/skins/round/thumb-x-grip.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/round/thumb-x-grip.png rename to lib/yuilib/3.12.0/assets/skins/round/thumb-x-grip.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round/thumb-x.png b/lib/yuilib/3.12.0/assets/skins/round/thumb-x.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/round/thumb-x.png rename to lib/yuilib/3.12.0/assets/skins/round/thumb-x.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round/thumb-y-grip.png b/lib/yuilib/3.12.0/assets/skins/round/thumb-y-grip.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/round/thumb-y-grip.png rename to lib/yuilib/3.12.0/assets/skins/round/thumb-y-grip.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round/thumb-y.png b/lib/yuilib/3.12.0/assets/skins/round/thumb-y.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/round/thumb-y.png rename to lib/yuilib/3.12.0/assets/skins/round/thumb-y.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/rail-x-lines.png b/lib/yuilib/3.12.0/assets/skins/sam-dark/rail-x-lines.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/rail-x-lines.png rename to lib/yuilib/3.12.0/assets/skins/sam-dark/rail-x-lines.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/rail-x.png b/lib/yuilib/3.12.0/assets/skins/sam-dark/rail-x.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/rail-x.png rename to lib/yuilib/3.12.0/assets/skins/sam-dark/rail-x.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/rail-y-lines.png b/lib/yuilib/3.12.0/assets/skins/sam-dark/rail-y-lines.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/rail-y-lines.png rename to lib/yuilib/3.12.0/assets/skins/sam-dark/rail-y-lines.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/rail-y.png b/lib/yuilib/3.12.0/assets/skins/sam-dark/rail-y.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/rail-y.png rename to lib/yuilib/3.12.0/assets/skins/sam-dark/rail-y.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/slider-base.css b/lib/yuilib/3.12.0/assets/skins/sam-dark/slider-base.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/slider-base.css rename to lib/yuilib/3.12.0/assets/skins/sam-dark/slider-base.css index 2d9c9b696b2..8d15d556107 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/slider-base.css +++ b/lib/yuilib/3.12.0/assets/skins/sam-dark/slider-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail,.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail{height:26px}.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-thumb{height:26px;width:15px}.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:20px;left:-2px;width:5px}.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:20px;right:-2px;width:5px}.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-10px}.yui3-skin-sam-dark .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-50px}.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail,.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail{width:26px}.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-thumb{width:26px;height:15px}.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:20px;top:-2px;height:5px}.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:20px;bottom:-2px;height:5px}.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-thumb-image{left:-10px;top:0}.yui3-skin-sam-dark .yui3-slider-y .yui3-slider-thumb-shadow{left:-50px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-sam-dark-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/thumb-x.png b/lib/yuilib/3.12.0/assets/skins/sam-dark/thumb-x.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/thumb-x.png rename to lib/yuilib/3.12.0/assets/skins/sam-dark/thumb-x.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/thumb-y.png b/lib/yuilib/3.12.0/assets/skins/sam-dark/thumb-y.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam-dark/thumb-y.png rename to lib/yuilib/3.12.0/assets/skins/sam-dark/thumb-y.png diff --git a/lib/yuilib/3.9.1/build/resize-base/assets/skins/night/arrows.png b/lib/yuilib/3.12.0/assets/skins/sam/arrows.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/resize-base/assets/skins/night/arrows.png rename to lib/yuilib/3.12.0/assets/skins/sam/arrows.png diff --git a/lib/yuilib/3.9.1/build/autocomplete-list/assets/skins/sam/autocomplete-list.css b/lib/yuilib/3.12.0/assets/skins/sam/autocomplete-list.css old mode 100644 new mode 100755 similarity index 83% rename from lib/yuilib/3.9.1/build/autocomplete-list/assets/skins/sam/autocomplete-list.css rename to lib/yuilib/3.12.0/assets/skins/sam/autocomplete-list.css index 4db83232567..6bd56a8bf2d --- a/lib/yuilib/3.9.1/build/autocomplete-list/assets/skins/sam/autocomplete-list.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/autocomplete-list.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-aclist{position:absolute;z-index:1}.yui3-aclist-hidden{visibility:hidden}.yui3-aclist-aria{left:-9999px;position:absolute}.yui3-aclist-list{list-style:none;margin:0;overflow:hidden;padding:0}.yui3-aclist-item{cursor:pointer;list-style:none;padding:2px 5px}.yui3-aclist-item-active{outline:#afafaf dotted thin}.yui3-skin-sam .yui3-aclist-content{background:#fff;border:1px solid #afafaf;-moz-box-shadow:1px 1px 4px rgba(0,0,0,0.58);-webkit-box-shadow:1px 1px 4px rgba(0,0,0,0.58);box-shadow:1px 1px 4px rgba(0,0,0,0.58)}.yui3-skin-sam .yui3-aclist-item-hover{background:#bfdaff}.yui3-skin-sam .yui3-aclist-item-active{background:#2647a0;color:#fff;outline:0}#yui3-css-stamp.skin-sam-autocomplete-list{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/bg.png b/lib/yuilib/3.12.0/assets/skins/sam/bg.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/assets/skins/sam/bg.png rename to lib/yuilib/3.12.0/assets/skins/sam/bg.png diff --git a/lib/yuilib/3.9.1/build/calendar-base/assets/skins/sam/calendar-base.css b/lib/yuilib/3.12.0/assets/skins/sam/calendar-base.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/calendar-base/assets/skins/sam/calendar-base.css rename to lib/yuilib/3.12.0/assets/skins/sam/calendar-base.css index 4353f23b9eb..3c4a85e8c6f --- a/lib/yuilib/3.9.1/build/calendar-base/assets/skins/sam/calendar-base.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/calendar-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-calendar-pane{width:100%}.yui3-calendar-grid{width:100%}.yui3-calendar-column-hidden,.yui3-calendar-hidden{display:none}.yui3-skin-sam .yui3-calendar-content{padding:10px;color:#000;border:1px solid gray;background:#f2f2f2;background:-moz-linear-gradient(top,#f9f9f9 0,#f2f2f2 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#f9f9f9),color-stop(100%,#f2f2f2));background:-webkit-linear-gradient(top,#f9f9f9 0,#f2f2f2 100%);background:-o-linear-gradient(top,#f9f9f9 0,#f2f2f2 100%);background:-ms-linear-gradient(top,#f9f9f9 0,#f2f2f2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f9f9f9',endColorstr='#f2f2f2',GradientType=0);background:linear-gradient(top,#f9f9f9 0,#f2f2f2 100%);-moz-border-radius:5px;border-radius:5px}.yui3-skin-sam .yui3-calendar-grid{padding:5px;border-collapse:collapse}.yui3-skin-sam .yui3-calendar-header{padding-bottom:10px}.yui3-skin-sam .yui3-calendar-header-label{margin:0;font-size:1em;font-weight:bold}.yui3-skin-sam .yui3-calendar-day,.yui3-skin-sam .yui3-calendar-prevmonth-day,.yui3-skin-sam .yui3-calendar-nextmonth-day{padding:5px;border:1px solid #ccc;background:#fff;text-align:center}.yui3-skin-sam .yui3-calendar-day:hover{background:#06c;color:#fff}.yui3-skin-sam .yui3-calendar-selection-disabled,.yui3-skin-sam .yui3-calendar-selection-disabled:hover{color:#a6a6a6;background:#ccc}.yui3-skin-sam .yui3-calendar-weekday{font-weight:bold}.yui3-skin-sam .yui3-calendar-prevmonth-day,.yui3-skin-sam .yui3-calendar-nextmonth-day{color:#a6a6a6}.yui3-skin-sam .yui3-calendar-day{font-weight:bold}.yui3-skin-sam .yui3-calendar-day-selected{background-color:#b3d4ff;color:#000}.yui3-skin-sam .yui3-calendar-header-label{text-align:center}.yui3-skin-sam .yui3-calendar-left-grid{margin-right:1em}.yui3-skin-sam .yui3-calendar-right-grid{margin-left:1em}.yui3-skin-sam .yui3-calendar-day-highlighted{background-color:#dcdef5}.yui3-skin-sam .yui3-calendar-day-selected.yui3-calendar-day-highlighted{background-color:#758fbb}#yui3-css-stamp.skin-sam-calendar-base{display:none} diff --git a/lib/yuilib/3.9.1/build/calendar/assets/skins/sam/calendar.css b/lib/yuilib/3.12.0/assets/skins/sam/calendar.css old mode 100644 new mode 100755 similarity index 81% rename from lib/yuilib/3.9.1/build/calendar/assets/skins/sam/calendar.css rename to lib/yuilib/3.12.0/assets/skins/sam/calendar.css index 806dc4660e6..932c40984d1 --- a/lib/yuilib/3.9.1/build/calendar/assets/skins/sam/calendar.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/calendar.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-calendar-column-hidden,.yui3-calendar-hidden{display:none}.yui3-calendar-day{cursor:pointer}.yui3-calendar-selection-disabled{cursor:default}.yui3-calendar-prevmonth-day{cursor:default}.yui3-calendar-nextmonth-day{cursor:default}.yui3-calendar-content:hover .yui3-calendar-day,.yui3-calendar-content:hover .yui3-calendar-prevmonth-day,.yui3-calendar-content:hover .yui3-calendar-nextmonth-day{-moz-user-select:none}.yui3-skin-sam .yui3-calendar-day-highlighted{background-color:#dcdef5}.yui3-skin-sam .yui3-calendar-day-selected.yui3-calendar-day-highlighted{background-color:#758fbb}#yui3-css-stamp.skin-sam-calendar{display:none} diff --git a/lib/yuilib/3.9.1/build/calendarnavigator/assets/skins/sam/calendarnavigator.css b/lib/yuilib/3.12.0/assets/skins/sam/calendarnavigator.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/calendarnavigator/assets/skins/sam/calendarnavigator.css rename to lib/yuilib/3.12.0/assets/skins/sam/calendarnavigator.css index 3e58add71e7..05b4c7d2358 --- a/lib/yuilib/3.9.1/build/calendarnavigator/assets/skins/sam/calendarnavigator.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/calendarnavigator.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-calendar-header{padding-left:15px;padding-right:15px}.yui3-calendar-header-label{width:100%}.yui3-calendarnav-prevmonth{cursor:pointer}.yui3-calendarnav-nextmonth{cursor:pointer}.yui3-skin-sam .yui3-calendarnav-prevmonth,.yui3-skin-sam .yui3-calendarnav-nextmonth{color:#000;width:12px;height:14px;background:transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAOCAYAAAA1+Nx+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAKNJREFUeNpiYCAeSAPxUiiWZqAi4ATiaiD+DMT/ofgzVIyTUsMDgfghksHo+CFUDcnAAIgP4DEYHR+A6iEIhIB4GgkGo+NpUDMwADMQFwHxBwoMh+EPULOYYYZ7APFVKhiMjkFmejBBLWFjoD5gQ+dQO4iwOloUiOdQYPgcqBkDl0zRQRQRGS2KGkVFHRB/QzL4G1SMk5qpQg6psJMjVhNAgAEAH+qPqeiPEUsAAAAASUVORK5CYII=);background-repeat:no-repeat}.yui3-skin-sam .yui3-calendarnav-prevmonth:hover,.yui3-skin-sam .yui3-calendarnav-nextmonth:hover{background:transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAOCAYAAAA1+Nx+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAPpJREFUeNpi/P//PwMxQD9jszSQ6oJyyy7O8H1KjD5GQhYADeYEUkVAXAHEPFDhL0DcAcR9QIu+k20B0PBAIDUBiOVwKHkExAVAS9aTZAHQYAOowfYMxIGDUIsu4LUAaLAQkGoB4kwG8sB0IK4BWvQOxQKgwcxAdj4Q1wExPwNl4CMQNwHxRKBFfxn10jd5ADm9QKzFQF1wDYiLmaAcNgbqA7CZTEBv7ADS2iDboN5joEIQgczSBpmNHsmiQKodiJPJNHwuEFcCDX49MMkUi0VRUB/hy2ggFy+jtKgohRYVnFDh79CiopuiogLNIjmobxigrn5EjD6AAAMAok9vhfHG8wQAAAAASUVORK5CYII=);color:#06c}.yui3-skin-sam .yui3-calendarnav-month-disabled,.yui3-skin-sam .yui3-calendarnav-month-disabled:hover{background:transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAOCAYAAAA1+Nx+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAQhJREFUeNqs0yGLAlEUhuHrKoIgCFbBJghb3F+g0WrVarEqLIhBEEFYWKNNMBktU4z6C5RNkwyCyWQSTPuOfCOCrHNnxwMPyOGe73DAiTmOYywrhy/9/sTBZujN4k0KPbioi6teKuqCmsKGSN/10+q5ehN6QQkrLJB/Mp/Xm5VmAhdkMcEGZWNfZc1MlPGwII42dmiZ/1dLGW1lXhdU8YNvZEz0yijLy6z6FyTN6yvpX7DEOzo4vSD4pCwvc+lfcMEYBUwjhE+VMVbmw7/oiCY+sA4RvNZMUxmB38EWFTSwfxK815uKZkJ/yXMU0cf5rn9Wr6g3f1bC4nwvbIAZRup1Ay671a8AAwC3OzOqxK+rkwAAAABJRU5ErkJggg==);cursor:default;color:#ccc}.yui3-skin-sam .yui3-calendarnav-prevmonth,.yui3-skin-sam .yui3-calendarnav-prevmonth:hover{background-position:0 0;margin-left:-12px}.yui3-skin-sam .yui3-calendarnav-nextmonth,.yui3-skin-sam .yui3-calendarnav-nextmonth:hover{background-position:-12px 0;margin-right:-12px}.yui3-skin-sam .yui3-calendarnav-prevmonth span,.yui3-skin-sam .yui3-calendarnav-nextmonth span{display:none;*display:block}#yui3-css-stamp.skin-sam-calendarnavigator{display:none} diff --git a/lib/yuilib/3.9.1/build/console-filters/assets/skins/sam/console-filters.css b/lib/yuilib/3.12.0/assets/skins/sam/console-filters.css old mode 100644 new mode 100755 similarity index 83% rename from lib/yuilib/3.9.1/build/console-filters/assets/skins/sam/console-filters.css rename to lib/yuilib/3.12.0/assets/skins/sam/console-filters.css index fee56f5d737..8f953e2b208 --- a/lib/yuilib/3.9.1/build/console-filters/assets/skins/sam/console-filters.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/console-filters.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-sam .yui3-console-ft .yui3-console-filters-categories,.yui3-skin-sam .yui3-console-ft .yui3-console-filters-sources{text-align:left;padding:5px 0;border:1px inset;margin:0 2px}.yui3-skin-sam .yui3-console-ft .yui3-console-filters-categories{background:#fff;border-bottom:2px ridge}.yui3-skin-sam .yui3-console-ft .yui3-console-filters-sources{background:#fff;margin-bottom:2px;border-top:0 none;border-bottom-right-radius:10px;border-bottom-left-radius:10px;-moz-border-radius-bottomright:10px;-moz-border-radius-bottomleft:10px;-webkit-border-bottom-right-radius:10px;-webkit-border-bottom-left-radius:10px}.yui3-skin-sam .yui3-console-filter-label{white-space:nowrap;margin-left:1ex}#yui3-css-stamp.skin-sam-console-filters{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/console.css b/lib/yuilib/3.12.0/assets/skins/sam/console.css old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/assets/skins/sam/console.css rename to lib/yuilib/3.12.0/assets/skins/sam/console.css index 997e6d701a9..cfb47d29cbd --- a/lib/yuilib/3.9.1/build/assets/skins/sam/console.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/console.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-sam .yui3-console-separate{position:absolute;right:1em;top:1em;z-index:999}.yui3-skin-sam .yui3-console-inline{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:top}.yui3-skin-sam .yui3-console-inline .yui3-console-content{position:relative}.yui3-skin-sam .yui3-console-content{background:#777;_background:#d8d8da url(bg.png) repeat-x 0 0;font:normal 13px/1.3 Arial,sans-serif;text-align:left;border:1px solid #777;border-radius:10px;-moz-border-radius:10px;-webkit-border-radius:10px}.yui3-skin-sam .yui3-console-hd,.yui3-skin-sam .yui3-console-bd,.yui3-skin-sam .yui3-console-ft{position:relative}.yui3-skin-sam .yui3-console-hd,.yui3-skin-sam .yui3-console-ft .yui3-console-controls{text-align:right}.yui3-skin-sam .yui3-console-hd{background:#d8d8da url(bg.png) repeat-x 0 0;padding:1ex;border:1px solid transparent;_border:0 none;border-top-right-radius:10px;border-top-left-radius:10px;-moz-border-radius-topright:10px;-moz-border-radius-topleft:10px;-webkit-border-top-right-radius:10px;-webkit-border-top-left-radius:10px}.yui3-skin-sam .yui3-console-bd{background:#fff;border-top:1px solid #777;border-bottom:1px solid #777;color:#000;font-size:11px;overflow:auto;overflow-x:auto;overflow-y:scroll;_width:100%}.yui3-skin-sam .yui3-console-ft{background:#d8d8da url(bg.png) repeat-x 0 0;border:1px solid transparent;_border:0 none;border-bottom-right-radius:10px;border-bottom-left-radius:10px;-moz-border-radius-bottomright:10px;-moz-border-radius-bottomleft:10px;-webkit-border-bottom-right-radius:10px;-webkit-border-bottom-left-radius:10px}.yui3-skin-sam .yui3-console-controls{padding:4px 1ex;zoom:1}.yui3-skin-sam .yui3-console-title{color:#000;display:inline;float:left;font-weight:bold;font-size:13px;height:24px;line-height:24px;margin:0;padding-left:1ex}.yui3-skin-sam .yui3-console-pause-label{float:left}.yui3-skin-sam .yui3-console-button{line-height:1.3}.yui3-skin-sam .yui3-console-collapsed .yui3-console-bd,.yui3-skin-sam .yui3-console-collapsed .yui3-console-ft{display:none}.yui3-skin-sam .yui3-console-content.yui3-console-collapsed{-webkit-border-radius:0}.yui3-skin-sam .yui3-console-collapsed .yui3-console-hd{border-radius:10px;-moz-border-radius:10px;-webkit-border-radius:0}.yui3-skin-sam .yui3-console-entry{border-bottom:1px solid #aaa;min-height:32px;_height:32px}.yui3-skin-sam .yui3-console-entry-meta{margin:0;overflow:hidden}.yui3-skin-sam .yui3-console-entry-content{margin:0;padding:0 1ex;white-space:pre-wrap;word-wrap:break-word}.yui3-skin-sam .yui3-console-entry-meta .yui3-console-entry-src{color:#000;font-style:italic;font-weight:bold;float:right;margin:2px 5px 0 0}.yui3-skin-sam .yui3-console-entry-meta .yui3-console-entry-time{color:#777;padding-left:1ex}.yui3-skin-sam .yui3-console-entry-warn .yui3-console-entry-meta .yui3-console-entry-time{color:#555}.yui3-skin-sam .yui3-console-entry-info .yui3-console-entry-meta .yui3-console-entry-cat,.yui3-skin-sam .yui3-console-entry-warn .yui3-console-entry-meta .yui3-console-entry-cat,.yui3-skin-sam .yui3-console-entry-error .yui3-console-entry-meta .yui3-console-entry-cat{display:none}.yui3-skin-sam .yui3-console-entry-warn{background:#aee url(warn_error.png) no-repeat -15px 15px}.yui3-skin-sam .yui3-console-entry-error{background:#ffa url(warn_error.png) no-repeat 5px -24px;color:#900}.yui3-skin-sam .yui3-console-entry-warn .yui3-console-entry-content,.yui3-skin-sam .yui3-console-entry-error .yui3-console-entry-content{padding-left:24px}.yui3-skin-sam .yui3-console-entry-cat{text-transform:uppercase;padding:1px 4px;background-color:#ccc}.yui3-skin-sam .yui3-console-entry-info .yui3-console-entry-cat{background-color:#ac2}.yui3-skin-sam .yui3-console-entry-warn .yui3-console-entry-cat{background-color:#e81}.yui3-skin-sam .yui3-console-entry-error .yui3-console-entry-cat{background-color:#b00;color:#fff}.yui3-skin-sam .yui3-console-hidden{display:none}#yui3-css-stamp.skin-sam-console{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-base/assets/skins/sam/datatable-base.css b/lib/yuilib/3.12.0/assets/skins/sam/datatable-base.css old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/datatable-base/assets/skins/sam/datatable-base.css rename to lib/yuilib/3.12.0/assets/skins/sam/datatable-base.css index 1dd3e8807f9..ae4bf472aa9 --- a/lib/yuilib/3.9.1/build/datatable-base/assets/skins/sam/datatable-base.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/datatable-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-datatable-table{empty-cells:show}.yui3-skin-sam .yui3-datatable-table{margin:0;padding:0;font-family:arial,sans-serif;border-collapse:separate;border-spacing:0;border:1px solid #cbcbcb}.yui3-skin-sam .yui3-datatable-caption{color:#000;font:italic 85%/1 arial,sans-serif;padding:1em 0;text-align:center}.yui3-skin-sam .yui3-datatable-cell,.yui3-skin-sam .yui3-datatable-header{border-left:1px solid #cbcbcb;border-width:0 0 0 1px;font-size:inherit;margin:0;overflow:visible;padding:4px 10px 4px 10px}.yui3-skin-sam .yui3-datatable-cell:first-child,.yui3-skin-sam .yui3-datatable-first-header{border-left-width:0}.yui3-skin-sam .yui3-datatable-header{background:#fff url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;background-image:-webkit-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:-moz-linear-gradient(top,transparent 40%,rgba(0,0,0,0.21));background-image:-ms-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:-o-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:linear-gradient(transparent 40%,rgba(0,0,0,0.21));color:#000;font-weight:normal;text-align:left;text-shadow:0 1px 1px #fff;vertical-align:bottom;white-space:nowrap}.yui3-skin-sam .yui3-datatable-cell{background-color:transparent}.yui3-skin-sam .yui3-datatable-even .yui3-datatable-cell{background-color:#fff}.yui3-skin-sam .yui3-datatable-odd .yui3-datatable-cell{background-color:#edf5ff}#yui3-css-stamp.skin-sam-datatable-base{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-message.css b/lib/yuilib/3.12.0/assets/skins/sam/datatable-message.css old mode 100644 new mode 100755 similarity index 67% rename from lib/yuilib/3.9.1/build/assets/skins/sam/datatable-message.css rename to lib/yuilib/3.12.0/assets/skins/sam/datatable-message.css index 66da069914d..35d98377d25 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-message.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/datatable-message.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-datatable-message{display:none}.yui3-datatable-message-visible .yui3-datatable-message{display:block;display:table-row-group}.yui3-skin-sam .yui3-datatable-message-content{border:0 none;border-bottom:1px solid #cbcbcb;padding:4px 10px}#yui3-css-stamp.skin-sam-datatable-message{display:none} diff --git a/lib/yuilib/3.12.0/assets/skins/sam/datatable-paginator.css b/lib/yuilib/3.12.0/assets/skins/sam/datatable-paginator.css new file mode 100755 index 00000000000..617c6f74782 --- /dev/null +++ b/lib/yuilib/3.12.0/assets/skins/sam/datatable-paginator.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-paginator-wrapper{border:0;padding:0}.yui3-datatable-paginator{padding:3px;white-space:nowrap}.yui3-datatable-paginator .yui3-paginator-content{position:relative}.yui3-datatable-paginator .yui3-paginator-page-select{position:absolute;right:0;top:0}.yui3-datatable-paginator .yui3-datatable-paginator-group{display:inline-block;zoom:1;*display:inline}.yui3-datatable-paginator .yui3-datatable-paginator-control{display:inline-block;zoom:1;*display:inline;margin:0 3px;padding:0 .2em;text-align:center;text-decoration:none;line-height:1.5;border:1px solid transparent;border-radius:3px;background:transparent}.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled,.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled:hover{cursor:default}.yui3-datatable-paginator .yui3-datatable-paginator-group input{width:3em}.yui3-datatable-paginator form{text-align:center;margin:0 2em}.yui3-datatable-paginator .yui3-datatable-paginator-per-page{text-align:right}.yui3-datatable-paginator{background:white url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;background-image:-webkit-linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));background-image:-moz-linear-gradient(top,transparent 40%,hsla(0,0%,0%,0.21));background-image:-ms-linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));background-image:-o-linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));background-image:linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));border-color:#cbcbcb}.yui3-datatable-paginator .yui3-datatable-paginator-control{color:#242d42}.yui3-datatable-paginator .yui3-datatable-paginator-control-first:hover,.yui3-datatable-paginator .yui3-datatable-paginator-control-last:hover,.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:hover,.yui3-datatable-paginator .yui3-datatable-paginator-control-next:hover{box-shadow:0 1px 2px #292442}.yui3-datatable-paginator .yui3-datatable-paginator-control-first:active,.yui3-datatable-paginator .yui3-datatable-paginator-control-last:active,.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:active,.yui3-datatable-paginator .yui3-datatable-paginator-control-next:active{box-shadow:inset 0 1px 1px #292442;background:#e0deed;background:hsla(250,30%,90%,0.3)}.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled,.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled:hover{color:#bdc7db;border-color:transparent;box-shadow:none}#yui3-css-stamp.skin-sam-datatable-paginator{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/sam/datatable-scroll.css b/lib/yuilib/3.12.0/assets/skins/sam/datatable-scroll.css old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/sam/datatable-scroll.css rename to lib/yuilib/3.12.0/assets/skins/sam/datatable-scroll.css index e995d9db8f3..8f777cac915 --- a/lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/sam/datatable-scroll.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/datatable-scroll.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-datatable-scrollable-x{_overflow-x:hidden;_position:relative}.yui3-datatable-scrollable-y,.yui3-datatable-scrollable-y .yui3-datatable-x-scroller{_overflow-y:hidden;_position:relative}.yui3-datatable-y-scroller-container{overflow-x:hidden;position:relative}.yui3-datatable-scrollable-y .yui3-datatable-content{position:relative}.yui3-datatable-scrollable-y .yui3-datatable-table .yui3-datatable-columns{visibility:hidden}.yui3-datatable-scroll-columns{position:absolute;width:100%;z-index:2}.yui3-datatable-y-scroller,.yui3-datatable-scrollable-x .yui3-datatable-caption-table{width:100%}.yui3-datatable-x-scroller{position:relative;overflow-x:scroll;overflow-y:hidden}.yui3-datatable-scrollable-y .yui3-datatable-y-scroller{position:relative;overflow-x:hidden;overflow-y:scroll;z-index:1;-webkit-overflow-scrolling:touch}.yui3-datatable-scrollbar{position:absolute;overflow-x:hidden;overflow-y:scroll;z-index:2}.yui3-datatable-scrollbar div{position:absolute;width:1px;visibility:hidden}.yui3-skin-sam .yui3-datatable-scroll-columns{border-collapse:separate;border-spacing:0;font-family:arial,sans-serif;margin:0;padding:0;top:0;left:0}.yui3-skin-sam .yui3-datatable-scroll-columns .yui3-datatable-header{padding:0}.yui3-skin-sam .yui3-datatable-x-scroller,.yui3-skin-sam .yui3-datatable-y-scroller-container{border:1px solid #cbcbcb}.yui3-skin-sam .yui3-datatable-scrollable-x .yui3-datatable-y-scroller-container,.yui3-skin-sam .yui3-datatable-x-scroller .yui3-datatable-table,.yui3-skin-sam .yui3-datatable-y-scroller .yui3-datatable-table{border:0 none}#yui3-css-stamp.skin-sam-datatable-scroll{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-sort/assets/skins/sam/datatable-sort.css b/lib/yuilib/3.12.0/assets/skins/sam/datatable-sort.css old mode 100644 new mode 100755 similarity index 90% rename from lib/yuilib/3.9.1/build/datatable-sort/assets/skins/sam/datatable-sort.css rename to lib/yuilib/3.12.0/assets/skins/sam/datatable-sort.css index 45784520add..e11c2c505fe --- a/lib/yuilib/3.9.1/build/datatable-sort/assets/skins/sam/datatable-sort.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/datatable-sort.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-datatable-sortable-column{z-index:1}.yui3-datatable-sortable-column:focus,.yui3-datatable-sortable-column:active{z-index:2}.yui3-datatable-sort-liner{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.yui3-skin-sam .yui3-datatable-sortable-column{cursor:pointer}.yui3-skin-sam .yui3-datatable-columns .yui3-datatable-sorted,.yui3-skin-sam .yui3-datatable-sortable-column:hover{*background:#c1c4c8 url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -100px;background-color:#f1f2f3}.yui3-skin-sam .yui3-datatable-sort-liner{display:block;height:100%;position:relative;padding-right:15px;position:relative}.yui3-skin-sam .yui3-datatable-sort-indicator{position:absolute;right:0;bottom:.5ex;width:7px;height:10px;background:url(sort-arrow-sprite.png) no-repeat 0 0;_background:url(sort-arrow-sprite-ie.png) no-repeat 0 0;overflow:hidden}.yui3-skin-sam .yui3-datatable-sorted .yui3-datatable-sort-indicator{background-position:0 -10px}.yui3-skin-sam .yui3-datatable-sorted-desc .yui3-datatable-sort-indicator{background-position:0 -20px}.yui3-skin-sam .yui3-datatable-data .yui3-datatable-even .yui3-datatable-sorted{background-color:#edf5ff}.yui3-skin-sam .yui3-datatable-data .yui3-datatable-odd .yui3-datatable-sorted{background-color:#dbeaff}#yui3-css-stamp.skin-sam-datatable-sort{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/dial.css b/lib/yuilib/3.12.0/assets/skins/sam/dial.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/assets/skins/sam/dial.css rename to lib/yuilib/3.12.0/assets/skins/sam/dial.css index 055f89e143a..390f206c7a5 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/dial.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/dial.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + v\:oval,v\:shadow,v\:fill{behavior:url(#default#VML);display:inline-block;zoom:1;*display:inline}.yui3-dial{position:relative;display:-moz-inline-stack;display:inline-block;zoom:1;*display:inline}.yui3-dial-content,.yui3-dial-ring{position:relative}.yui3-dial-handle,.yui3-dial-marker,.yui3-dial-center-button,.yui3-dial-reset-string,.yui3-dial-handle-vml,.yui3-dial-marker-vml,.yui3-dial-center-button-vml,.yui3-dial-ring-vml v\:oval,.yui3-dial-center-button-vml v\:oval{position:absolute}.yui3-dial-center-button-vml v\:oval{font-size:1px;top:0;left:0}.yui3-dial-content .yui3-dial-ring .yui3-dial-hidden v\:oval,.yui3-dial-content .yui3-dial-ring .yui3-dial-hidden{opacity:0;filter:alpha(opacity=0)}.yui3-skin-sam .yui3-dial-handle{background:#6c3a3a;opacity:.3;-moz-box-shadow:1px 1px 1px rgba(0,0,0,0.9) inset;cursor:pointer;font-size:1px}.yui3-skin-sam .yui3-dial-ring{background:#bebdb7;background:-moz-linear-gradient(100% 100% 135deg,#7b7a6d,#fff);background:-webkit-gradient(linear,left top,right bottom,from(#fff),to(#7b7a6d));box-shadow:1px 1px 5px rgba(0,0,0,0.4) inset;-webkit-box-shadow:1px 1px 5px rgba(0,0,0,0.4) inset;-moz-box-shadow:1px 1px 5px rgba(0,0,0,0.4) inset}.yui3-skin-sam .yui3-dial-center-button{box-shadow:-1px -1px 2px rgba(0,0,0,0.3) inset,1px 1px 2px rgba(0,0,0,0.5);-moz-box-shadow:-1px -1px 2px rgba(0,0,0,0.3) inset,1px 1px 2px rgba(0,0,0,0.5);background:#dddbd4;background:-moz-radial-gradient(30% 30% 0deg,circle farthest-side,#fbfbf9 24%,#f2f0ea 41%,#d3d0c3 83%) repeat scroll 0 0 transparent;background:-webkit-gradient(radial,15 15,15,30 30,40,from(#fbfbf9),to(#d3d0c3),color-stop(.2,#f2f0ea));cursor:pointer;opacity:.7}.yui3-skin-sam .yui3-dial-reset-string{color:#676767;font-size:85%;text-decoration:underline}.yui3-skin-sam .yui3-dial-label{color:#808080;margin-bottom:.8em}.yui3-skin-sam .yui3-dial-value-string{margin-left:.5em;color:#000;font-size:130%}.yui3-skin-sam .yui3-dial-value{visibility:hidden;position:absolute;top:0;left:102%;width:4em}.yui3-skin-sam .yui3-dial-north-mark{position:absolute;border-left:2px solid #ccc;height:5px;width:10px;left:50%;top:-7px;font-size:1px}.yui3-skin-sam .yui3-dial-marker{background-color:#000;opacity:.2;font-size:1px}.yui3-skin-sam .yui3-dial-marker-max-min{background-color:#ab3232;opacity:.6}.yui3-skin-sam .yui3-dial-ring-vml,.yui3-skin-sam .yui3-dial-center-button-vml,.yui3-skin-sam .yui3-dial-marker v\:oval.yui3-dial-marker-max-min,.yui3-skin-sam v\:oval.yui3-dial-marker-max-min,.yui3-skin-sam .yui3-dial-marker-vml,.yui3-skin-sam .yui3-dial-handle-vml{background:0;opacity:1}#yui3-css-stamp.skin-sam-dial{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/horizontal-menu-submenu-indicator.png b/lib/yuilib/3.12.0/assets/skins/sam/horizontal-menu-submenu-indicator.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/assets/skins/sam/horizontal-menu-submenu-indicator.png rename to lib/yuilib/3.12.0/assets/skins/sam/horizontal-menu-submenu-indicator.png diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/horizontal-menu-submenu-toggle.png b/lib/yuilib/3.12.0/assets/skins/sam/horizontal-menu-submenu-toggle.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/assets/skins/sam/horizontal-menu-submenu-toggle.png rename to lib/yuilib/3.12.0/assets/skins/sam/horizontal-menu-submenu-toggle.png diff --git a/lib/yuilib/3.12.0/assets/skins/sam/node-flick.css b/lib/yuilib/3.12.0/assets/skins/sam/node-flick.css new file mode 100755 index 00000000000..9afa3bbe203 --- /dev/null +++ b/lib/yuilib/3.12.0/assets/skins/sam/node-flick.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-flick{position:relative;overflow:hidden}.yui3-flick-content{position:relative}#yui3-css-stamp.skin-sam-node-flick{display:none} diff --git a/lib/yuilib/3.9.1/build/node-menunav/assets/skins/sam/node-menunav.css b/lib/yuilib/3.12.0/assets/skins/sam/node-menunav.css old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/node-menunav/assets/skins/sam/node-menunav.css rename to lib/yuilib/3.12.0/assets/skins/sam/node-menunav.css index c1c466a1689..f28870ed85d --- a/lib/yuilib/3.9.1/build/node-menunav/assets/skins/sam/node-menunav.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/node-menunav.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-menu .yui3-menu{position:absolute;z-index:1}.yui3-menu .yui3-shim{position:absolute;top:0;left:0;z-index:-1;opacity:0;filter:alpha(opacity=0);border:0;margin:0;padding:0;height:100%;width:100%}.yui3-menu-hidden{top:-10000px;left:-10000px;visibility:hidden}.yui3-menu li{list-style-type:none}.yui3-menu ul,.yui3-menu li{margin:0;padding:0}.yui3-menu-label,.yui3-menuitem-content{text-align:left;white-space:nowrap;display:block}.yui3-menu-horizontal li{float:left;width:auto}.yui3-menu-horizontal li li{float:none}.yui3-menu-horizontal ul{*zoom:1}.yui3-menu-horizontal ul ul{*zoom:normal}.yui3-menu-horizontal>.yui3-menu-content>ul:after{content:"";display:block;clear:both;line-height:0;font-size:0;visibility:hidden}.yui3-menu-content{*zoom:1}.yui3-menu-hidden .yui3-menu-content{*zoom:normal}.yui3-menuitem-content,.yui3-menu-label{_zoom:1}.yui3-menu-hidden .yui3-menuitem-content,.yui3-menu-hidden .yui3-menu-label{_zoom:normal}.yui3-skin-sam .yui3-menu-content,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-content{font-size:93%;line-height:1.5;*line-height:1.45;border:solid 1px #808080;background:#fff;padding:3px 0}.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-content{font-size:100%}.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-content{line-height:2;*line-height:1.9;background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;padding:0}.yui3-skin-sam .yui3-menu ul,.yui3-skin-sam .yui3-menu ul ul{margin-top:3px;padding-top:3px;border-top:solid 1px #ccc}.yui3-skin-sam .yui3-menu ul.first-of-type{border:0;margin:0;padding:0}.yui3-skin-sam .yui3-menu-horizontal ul{padding:0;margin:0;border:0}.yui3-skin-sam .yui3-menu li,.yui3-skin-sam .yui3-menu .yui3-menu li{_border-bottom:solid 1px #fff}.yui3-skin-sam .yui3-menu-horizontal li{_border-bottom:0}.yui3-skin-sam .yui3-menubuttonnav li{border-right:solid 1px #ccc}.yui3-skin-sam .yui3-splitbuttonnav li{border-right:solid 1px #808080}.yui3-skin-sam .yui3-menubuttonnav li li,.yui3-skin-sam .yui3-splitbuttonnav li li{border-right:0}.yui3-skin-sam .yui3-menu-label,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label,.yui3-skin-sam .yui3-menuitem-content,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menuitem-content{padding:0 1em;color:#000;text-decoration:none;cursor:default;float:none;border:0;margin:0}.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label,.yui3-skin-sam .yui3-menu-horizontal .yui3-menuitem-content{padding:0 10px;border-style:solid;border-color:#808080;border-width:1px 0;margin:-1px 0;float:left;width:auto}.yui3-skin-sam .yui3-menu-label,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label{background:url(vertical-menu-submenu-indicator.png) right center no-repeat}.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0}.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label,.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label{background-image:none}.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label{padding-right:0}.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label em{font-style:normal;padding-right:20px;display:block;background:url(horizontal-menu-submenu-indicator.png) right center no-repeat}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label{padding:0}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label a{float:left;width:auto;color:#000;text-decoration:none;cursor:default;padding:0 5px 0 10px}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label .yui3-menu-toggle{padding:0;border-left:solid 1px #ccc;width:15px;overflow:hidden;text-indent:-1000px;background:url(horizontal-menu-submenu-indicator.png) 3px center no-repeat}.yui3-skin-sam .yui3-menu-label-active,.yui3-skin-sam .yui3-menu-label-menuvisible,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label-active,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label-menuvisible{background-color:#b3d4ff}.yui3-skin-sam .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menuitem-active .yui3-menuitem-content{background-image:none;background-color:#b3d4ff;border-left-width:0;margin-left:0}.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label-active,.yui3-skin-sam .yui3-menu-horizontal .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label-menuvisible{border-color:#7d98b8;background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1700px}.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label-active,.yui3-skin-sam .yui3-menubuttonnav .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label-menuvisible,.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-active,.yui3-skin-sam .yui3-splitbuttonnav .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-menuvisible{border-left-width:1px;margin-left:-1px}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-menuvisible{border-color:#808080;background:transparent}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-menuvisible .yui3-menu-toggle{border-color:#7d98b8;background:url(horizontal-menu-submenu-toggle.png) left center no-repeat}#yui3-css-stamp.skin-sam-node-menunav{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/overlay.css b/lib/yuilib/3.12.0/assets/skins/sam/overlay.css old mode 100644 new mode 100755 similarity index 57% rename from lib/yuilib/3.9.1/build/assets/skins/sam/overlay.css rename to lib/yuilib/3.12.0/assets/skins/sam/overlay.css index c2a201aad81..142828f28ee --- a/lib/yuilib/3.9.1/build/assets/skins/sam/overlay.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/overlay.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-overlay{position:absolute}.yui3-overlay-hidden{visibility:hidden}.yui3-widget-tmp-forcesize .yui3-overlay-content{overflow:hidden!important}#yui3-css-stamp.skin-sam-overlay{display:none} diff --git a/lib/yuilib/3.9.1/build/panel/assets/skins/sam/panel.css b/lib/yuilib/3.12.0/assets/skins/sam/panel.css old mode 100644 new mode 100755 similarity index 92% rename from lib/yuilib/3.9.1/build/panel/assets/skins/sam/panel.css rename to lib/yuilib/3.12.0/assets/skins/sam/panel.css index 335861933c1..2d05f89bc8e --- a/lib/yuilib/3.9.1/build/panel/assets/skins/sam/panel.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/panel.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-panel{position:absolute}.yui3-panel-hidden{visibility:hidden}.yui3-widget-tmp-forcesize .yui3-panel-content{overflow:hidden!important}.yui3-panel .yui3-widget-hd{position:relative}.yui3-panel .yui3-widget-hd .yui3-widget-buttons{position:absolute;top:0;right:0}.yui3-panel .yui3-widget-ft .yui3-widget-buttons{display:inline-block;*display:inline;zoom:1}.yui3-skin-sam .yui3-panel-content{-webkit-box-shadow:0 0 5px #333;-moz-box-shadow:0 0 5px #333;box-shadow:0 0 5px #333;border:1px solid black;background:white}.yui3-skin-sam .yui3-panel .yui3-widget-hd{padding:8px 28px 8px 8px;min-height:13px;_height:13px;color:white;background-color:#3961c5;background:-moz-linear-gradient(0% 100% 90deg,#2647a0 7%,#3d67ce 50%,#426fd9 100%);background:-webkit-gradient(linear,left bottom,left top,from(#2647a0),color-stop(0.07,#2647a0),color-stop(0.5,#3d67ce),to(#426fd9))}.yui3-skin-sam .yui3-panel .yui3-widget-hd .yui3-widget-buttons{padding:8px}.yui3-skin-sam .yui3-panel .yui3-widget-bd{padding:10px}.yui3-skin-sam .yui3-panel .yui3-widget-ft{background:#edf5ff;padding:8px;text-align:right}.yui3-skin-sam .yui3-panel .yui3-widget-ft .yui3-button{margin-left:8px}.yui3-skin-sam .yui3-panel .yui3-widget-hd .yui3-button-close{background:transparent;filter:none;border:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;width:13px;height:13px;padding:0;overflow:hidden;vertical-align:top;*font-size:0;*line-height:0;*letter-spacing:-1000px;*color:#86a5ec;*background:url(sprite_icons.png) no-repeat 1px 1px}.yui3-skin-sam .yui3-panel .yui3-widget-hd .yui3-button-close:before{content:url(sprite_icons.png);display:inline-block;text-align:center;font-size:0;line-height:0;width:13px;margin:1px 0 0 1px}.yui3-skin-sam .yui3-panel-hidden .yui3-widget-hd .yui3-button-close{display:none}#yui3-css-stamp.skin-sam-panel{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/rail-x-lines.png b/lib/yuilib/3.12.0/assets/skins/sam/rail-x-lines.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/assets/skins/sam/rail-x-lines.png rename to lib/yuilib/3.12.0/assets/skins/sam/rail-x-lines.png diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/rail-x.png b/lib/yuilib/3.12.0/assets/skins/sam/rail-x.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/assets/skins/sam/rail-x.png rename to lib/yuilib/3.12.0/assets/skins/sam/rail-x.png diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/rail-y-lines.png b/lib/yuilib/3.12.0/assets/skins/sam/rail-y-lines.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/assets/skins/sam/rail-y-lines.png rename to lib/yuilib/3.12.0/assets/skins/sam/rail-y-lines.png diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/rail-y.png b/lib/yuilib/3.12.0/assets/skins/sam/rail-y.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/assets/skins/sam/rail-y.png rename to lib/yuilib/3.12.0/assets/skins/sam/rail-y.png diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/resize-base.css b/lib/yuilib/3.12.0/assets/skins/sam/resize-base.css old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/assets/skins/sam/resize-base.css rename to lib/yuilib/3.12.0/assets/skins/sam/resize-base.css index cf9efb39f8e..1a2d51a7b0f --- a/lib/yuilib/3.9.1/build/assets/skins/sam/resize-base.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/resize-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-resize,.yui3-resize-wrapper{z-index:0;zoom:1}.yui3-resize-handle{position:absolute;display:block;z-index:100;zoom:1}.yui3-resize-proxy{position:absolute;border:1px dashed #000;position:absolute;z-index:10000}.yui3-resize-hidden-handles .yui3-resize-handle{opacity:0;filter:alpha(opacity=0)}.yui3-resize-handle-t,.yui3-resize-handle-b{width:100%;left:0;height:6px}.yui3-resize-handle-l,.yui3-resize-handle-r{height:100%;top:0;width:6px}.yui3-resize-handle-t{cursor:n-resize;top:0}.yui3-resize-handle-b{cursor:s-resize;bottom:0}.yui3-resize-handle-l{cursor:w-resize;left:0}.yui3-resize-handle-r{cursor:e-resize;right:0}.yui3-resize-handle-inner{position:absolute;zoom:1}@media only screen and (min-device-width :320px) and (max-device-width :480px){.yui3-resize-handle-inner:after{content:"";width:40px;height:40px;position:absolute}.yui3-resize-handle-inner-r,.yui3-resize-handle-inner-l,.yui3-resize-handle-inner-t,.yui3-resize-handle-inner-b,.yui3-resize-handle-inner-tr,.yui3-resize-handle-inner-br,.yui3-resize-handle-inner-tl,.yui3-resize-handle-inner-bl{overflow:visible!important}.yui3-resize-handle-inner-r:after{top:-12px;right:0}.yui3-resize-handle-inner-l:after{top:-12px;left:0}.yui3-resize-handle-inner-t:after{top:0;left:-12px}.yui3-resize-handle-inner-b:after{bottom:0;left:-12px}.yui3-resize-handle-inner-tr:after{top:0;right:0}.yui3-resize-handle-inner-br:after{bottom:0;right:0}.yui3-resize-handle-inner-tl:after{top:0;left:0}.yui3-resize-handle-inner-bl:after{bottom:0;left:0}}@media only screen and (min-device-width :768px) and (max-device-width :1024px){.yui3-resize-handle-inner:after{content:"";width:30px;height:30px;position:absolute}.yui3-resize-handle-inner-r,.yui3-resize-handle-inner-l,.yui3-resize-handle-inner-t,.yui3-resize-handle-inner-b,.yui3-resize-handle-inner-tr,.yui3-resize-handle-inner-br,.yui3-resize-handle-inner-tl,.yui3-resize-handle-inner-bl{overflow:visible!important}.yui3-resize-handle-inner-r:after{top:-6px;right:0}.yui3-resize-handle-inner-l:after{top:-6px;left:0}.yui3-resize-handle-inner-t:after{top:0;left:-6px}.yui3-resize-handle-inner-b:after{bottom:0;left:-6px}.yui3-resize-handle-inner-tr:after{top:0;right:0}.yui3-resize-handle-inner-br:after{bottom:0;right:0}.yui3-resize-handle-inner-tl:after{top:0;left:0}.yui3-resize-handle-inner-bl:after{bottom:0;left:0}}.yui3-resize-handle-inner-t,.yui3-resize-handle-inner-b{margin-left:-8px;left:50%}.yui3-resize-handle-inner-l,.yui3-resize-handle-inner-r{margin-top:-8px;top:50%}.yui3-resize-handle-inner-t{top:-4px}.yui3-resize-handle-inner-b{bottom:-4px}.yui3-resize-handle-inner-l{left:-4px}.yui3-resize-handle-inner-r{right:-4px}.yui3-resize-handle-tr,.yui3-resize-handle-br,.yui3-resize-handle-tl,.yui3-resize-handle-bl{height:15px;width:15px;z-index:200}.yui3-resize-handle-tr{cursor:ne-resize;top:0;right:0}.yui3-resize-handle-tl{cursor:nw-resize;top:0;left:0}.yui3-resize-handle-br{cursor:se-resize;bottom:0;right:0}.yui3-resize-handle-bl{cursor:sw-resize;bottom:0;left:0}.yui3-resize-handle-inner-r,.yui3-resize-handle-inner-l,.yui3-resize-handle-inner-t,.yui3-resize-handle-inner-b,.yui3-resize-handle-inner-tr,.yui3-resize-handle-inner-br,.yui3-resize-handle-inner-tl,.yui3-resize-handle-inner-bl{background-repeat:no-repeat;background:url(arrows.png) no-repeat 0 0;display:block;height:15px;overflow:hidden;text-indent:-99999em;width:15px}.yui3-resize-handle-inner-br{background-position:-30px 0;bottom:-2px;right:-2px}.yui3-resize-handle-inner-tr{background-position:-58px 0;bottom:0;right:-2px}.yui3-resize-handle-inner-bl{background-position:-75px 0;bottom:-2px;right:-2px}.yui3-resize-handle-inner-tl{background-position:-47px 0;bottom:0;right:-2px}.yui3-resize-handle-inner-b,.yui3-resize-handle-inner-t{background-position:-15px 0}#yui3-css-stamp.skin-sam-resize-base{display:none} diff --git a/lib/yuilib/3.9.1/build/scrollview-base/assets/skins/sam/scrollview-base.css b/lib/yuilib/3.12.0/assets/skins/sam/scrollview-base.css old mode 100644 new mode 100755 similarity index 68% rename from lib/yuilib/3.9.1/build/scrollview-base/assets/skins/sam/scrollview-base.css rename to lib/yuilib/3.12.0/assets/skins/sam/scrollview-base.css index 525587e5251..d23f2d15214 --- a/lib/yuilib/3.9.1/build/scrollview-base/assets/skins/sam/scrollview-base.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/scrollview-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-scrollview{position:relative;overflow:hidden;-webkit-user-select:none;-moz-user-select:none}.yui3-scrollview-hidden{display:none}.yui3-scrollview-content{position:relative}.yui3-skin-sam .yui3-scrollview{-webkit-tap-highlight-color:rgba(255,255,255,0)}#yui3-css-stamp.skin-sam-scrollview-base{display:none} diff --git a/lib/yuilib/3.9.1/build/scrollview-list/assets/skins/sam/scrollview-list.css b/lib/yuilib/3.12.0/assets/skins/sam/scrollview-list.css old mode 100644 new mode 100755 similarity index 84% rename from lib/yuilib/3.9.1/build/scrollview-list/assets/skins/sam/scrollview-list.css rename to lib/yuilib/3.12.0/assets/skins/sam/scrollview-list.css index d2185378ccf..163bfc1105b --- a/lib/yuilib/3.9.1/build/scrollview-list/assets/skins/sam/scrollview-list.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/scrollview-list.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-sam .yui3-scrollview{-webkit-tap-highlight-color:rgba(255,255,255,0)}.yui3-skin-sam .yui3-scrollview{background-color:white}.yui3-skin-sam .yui3-scrollview-vert .yui3-scrollview-content .yui3-scrollview-item{*zoom:1}.yui3-skin-sam .yui3-scrollview-vert .yui3-scrollview-content .yui3-scrollview-list{*zoom:1;list-style:none;padding:0;margin:0}.yui3-skin-sam .yui3-scrollview-vert .yui3-scrollview-content{border-top:0;background-color:white;font-family:HelveticaNeue,arial,helvetica,clean,sans-serif;color:black}.yui3-skin-sam .yui3-scrollview-vert .yui3-scrollview-content .yui3-scrollview-item{border-bottom:1px solid #303030;padding:15px 20px 16px;font-size:100%;font-weight:bold;background-color:white;cursor:pointer}#yui3-css-stamp.skin-sam-scrollview-list{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/scrollview-scrollbars.css b/lib/yuilib/3.12.0/assets/skins/sam/scrollview-scrollbars.css old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/assets/skins/sam/scrollview-scrollbars.css rename to lib/yuilib/3.12.0/assets/skins/sam/scrollview-scrollbars.css index 28ccb912ca2..28a0ed7c2b3 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/scrollview-scrollbars.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/scrollview-scrollbars.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-scrollview-scrollbar{opacity:1;position:absolute;width:6px;height:10px}.yui3-scrollview-scrollbar{top:0;right:1px}.yui3-scrollview-scrollbar-horiz{top:auto;height:8px;width:20px;bottom:1px;left:0}.yui3-scrollview-scrollbar .yui3-scrollview-child{position:absolute;right:0;display:block;width:100%;height:4px}.yui3-scrollview-scrollbar .yui3-scrollview-first{top:0}.yui3-scrollview-scrollbar .yui3-scrollview-last{top:0}.yui3-scrollview-scrollbar .yui3-scrollview-middle{position:absolute;top:4px;height:1px}.yui3-scrollview-scrollbar-horiz .yui3-scrollview-child{display:-moz-inline-stack;display:inline-block;zoom:1;*display:inline;top:0;left:0;bottom:auto;right:auto}.yui3-scrollview-scrollbar-horiz .yui3-scrollview-first,.yui3-scrollview-scrollbar-horiz .yui3-scrollview-last{width:4px;height:6px}.yui3-scrollview-scrollbar-horiz .yui3-scrollview-middle{top:0;left:4px;width:1px;height:6px}.yui3-scrollview-scrollbar-vert-basic{height:auto}.yui3-scrollview-scrollbar-vert-basic .yui3-scrollview-child{position:static;_overflow:hidden;_line-height:4px}.yui3-scrollview-scrollbar-horiz-basic{width:auto;white-space:nowrap;line-height:6px;_overflow:hidden}.yui3-scrollview-scrollbar-horiz-basic .yui3-scrollview-child{position:static;padding:0;margin:0;top:auto;left:auto;right:auto;bottom:auto}.yui3-skin-sam .yui3-scrollview-scrollbar{-webkit-transform:translate3d(0,0,0);-moz-transform:translate(0,0)}.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-first,.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-middle,.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-last{border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAABCAYAAAD9yd/wAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAABJJREFUeNpiZGBgSGPAAgACDAAIkABoFyloZQAAAABJRU5ErkJggg==)}.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-first,.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-last{border-bottom-right-radius:0;border-bottom-left-radius:0;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:0}.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-last{border-radius:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px;-webkit-border-radius:0;-webkit-border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:3px;-webkit-transform:translate3d(0,0,0);-moz-border-radius:0;-moz-border-radius-bottomright:3px;-moz-border-radius-bottomleft:3px;-moz-transform:translate(0,0)}.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-middle{border-radius:0;-webkit-border-radius:0;-moz-border-radius:0;-webkit-transform:translate3d(0,0,0) scaleY(1);-webkit-transform-origin-y:0;-moz-transform:translate(0,0) scaleY(1);-moz-transform-origin:0 0}.yui3-skin-sam .yui3-scrollview-scrollbar-horiz .yui3-scrollview-first,.yui3-skin-sam .yui3-scrollview-scrollbar-horiz .yui3-scrollview-last{border-top-right-radius:0;border-bottom-left-radius:3px;-webkit-border-top-right-radius:0;-webkit-border-bottom-left-radius:3px;-moz-border-radius-topright:0;-moz-border-radius-bottomleft:3px}.yui3-skin-sam .yui3-scrollview-scrollbar-horiz .yui3-scrollview-last{border-bottom-left-radius:0;border-top-right-radius:3px;-webkit-border-bottom-left-radius:0;-webkit-border-top-right-radius:3px;-moz-border-radius-bottomleft:0;-moz-border-radius-topright:3px}.yui3-skin-sam .yui3-scrollview-scrollbar-horiz .yui3-scrollview-middle{-webkit-transform:translate3d(0,0,0) scaleX(1);-webkit-transform-origin:0 0;-moz-transform:translate(0,0) scaleX(1);-moz-transform-origin:0 0}.yui3-skin-sam .yui3-scrollview-scrollbar-vert-basic .yui3-scrollview-child,.yui3-skin-sam .yui3-scrollview-scrollbar-horiz-basic .yui3-scrollview-child{background-color:#aaa;background-image:none}#yui3-css-stamp.skin-sam-scrollview-scrollbars{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/slider-base.css b/lib/yuilib/3.12.0/assets/skins/sam/slider-base.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/slider-base.css rename to lib/yuilib/3.12.0/assets/skins/sam/slider-base.css index 91327390bc9..f1510ef323c --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/slider-base.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/slider-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-sam .yui3-slider-x .yui3-slider-rail,.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-sam .yui3-slider-x .yui3-slider-rail{height:26px}.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb{height:26px;width:15px}.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:20px;left:-2px;width:5px}.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:20px;right:-2px;width:5px}.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-10px}.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-50px}.yui3-skin-sam .yui3-slider-y .yui3-slider-rail,.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-sam .yui3-slider-y .yui3-slider-rail{width:26px}.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb{width:26px;height:15px}.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:20px;top:-2px;height:5px}.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:20px;bottom:-2px;height:5px}.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb-image{left:-10px;top:0}.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb-shadow{left:-50px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-sam-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/sort-arrow-sprite-ie.png b/lib/yuilib/3.12.0/assets/skins/sam/sort-arrow-sprite-ie.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/assets/skins/sam/sort-arrow-sprite-ie.png rename to lib/yuilib/3.12.0/assets/skins/sam/sort-arrow-sprite-ie.png diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/sort-arrow-sprite.png b/lib/yuilib/3.12.0/assets/skins/sam/sort-arrow-sprite.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/assets/skins/sam/sort-arrow-sprite.png rename to lib/yuilib/3.12.0/assets/skins/sam/sort-arrow-sprite.png diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/sprite.png b/lib/yuilib/3.12.0/assets/skins/sam/sprite.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/assets/skins/sam/sprite.png rename to lib/yuilib/3.12.0/assets/skins/sam/sprite.png diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/sprite_icons.png b/lib/yuilib/3.12.0/assets/skins/sam/sprite_icons.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/assets/skins/sam/sprite_icons.png rename to lib/yuilib/3.12.0/assets/skins/sam/sprite_icons.png diff --git a/lib/yuilib/3.9.1/build/tabview/assets/skins/sam/tabview.css b/lib/yuilib/3.12.0/assets/skins/sam/tabview.css old mode 100644 new mode 100755 similarity index 92% rename from lib/yuilib/3.9.1/build/tabview/assets/skins/sam/tabview.css rename to lib/yuilib/3.12.0/assets/skins/sam/tabview.css index ddc4755ca04..fc28685c477 --- a/lib/yuilib/3.9.1/build/tabview/assets/skins/sam/tabview.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/tabview.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-tab-panel{display:none}.yui3-tab-panel-selected{display:block}.yui3-tabview-list,.yui3-tab{margin:0;padding:0;list-style:none}.yui3-tabview{position:relative}.yui3-tabview,.yui3-tabview-list,.yui3-tabview-panel,.yui3-tab,.yui3-tab-panel{zoom:1}.yui3-tab{display:inline-block;*display:inline;vertical-align:bottom;cursor:pointer}.yui3-tab-label{display:block;display:inline-block;padding:6px 10px;position:relative;text-decoration:none;vertical-align:bottom}.yui3-skin-sam .yui3-tabview-list{border:solid #2647a0;border-width:0 0 5px;zoom:1}.yui3-skin-sam .yui3-tab{margin:0 .2em 0 0;padding:1px 0 0;zoom:1}.yui3-skin-sam .yui3-tab-selected{margin-bottom:-1px}.yui3-skin-sam .yui3-tab-label{background:#d8d8d8 url(../../../../assets/skins/sam/sprite.png) repeat-x;border:solid #a3a3a3;border-width:1px 1px 0 1px;color:#000;cursor:pointer;font-size:85%;padding:.3em .75em;text-decoration:none}.yui3-skin-sam .yui3-tab-label:hover,.yui3-skin-sam .yui3-tab-label:focus{background:#bfdaff url(../../../../assets/skins/sam/sprite.png) repeat-x left -1300px;outline:0}.yui3-skin-sam .yui3-tab-selected .yui3-tab-label,.yui3-skin-sam .yui3-tab-selected .yui3-tab-label:focus,.yui3-skin-sam .yui3-tab-selected .yui3-tab-label:hover{background:#2647a0 url(../../../../assets/skins/sam/sprite.png) repeat-x left -1400px;color:#fff}.yui3-skin-sam .yui3-tab-selected .yui3-tab-label{padding:.4em .75em}.yui3-skin-sam .yui3-tab-selected .yui3-tab-label{border-color:#243356}.yui3-skin-sam .yui3-tabview-panel{background:#edf5ff}.yui3-skin-sam .yui3-tabview-panel{border:1px solid #808080;border-top-color:#243356;padding:.25em .5em}#yui3-css-stamp.skin-sam-tabview{display:none} diff --git a/lib/yuilib/3.9.1/build/test-console/assets/skins/sam/test-console.css b/lib/yuilib/3.12.0/assets/skins/sam/test-console.css old mode 100644 new mode 100755 similarity index 92% rename from lib/yuilib/3.9.1/build/test-console/assets/skins/sam/test-console.css rename to lib/yuilib/3.12.0/assets/skins/sam/test-console.css index 6a4aa84007b..f47c54f17e2 --- a/lib/yuilib/3.9.1/build/test-console/assets/skins/sam/test-console.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/test-console.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-testconsole .yui3-console-entry{min-height:inherit;padding:5px}.yui3-testconsole .yui3-console-controls{display:none}.yui3-skin-sam .yui3-testconsole .yui3-console-content,.yui3-skin-sam .yui3-testconsole .yui3-console-bd,.yui3-skin-sam .yui3-testconsole .yui3-console-entry,.yui3-skin-sam .yui3-testconsole .yui3-console-ft,.yui3-skin-sam .yui3-testconsole .yui3-console-ft .yui3-console-filters-categories,.yui3-skin-sam .yui3-testconsole .yui3-console-ft .yui3-console-filters-sources,.yui3-skin-sam .yui3-testconsole .yui3-console-hd{background:0;border:0;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.yui3-skin-sam .yui3-testconsole-content,.yui3-skin-sam .yui3-testconsole .yui3-console-bd{color:#333;font:13px/1.4 Helvetica,'DejaVu Sans','Bitstream Vera Sans',Arial,sans-serif}.yui3-skin-sam .yui3-testconsole-content{border:1px solid #afafaf}.yui3-skin-sam .yui3-testconsole .yui3-console-entry{border-bottom:1px solid #eaeaea;font-family:Menlo,Inconsolata,Consolas,'DejaVu Mono','Bitstream Vera Sans Mono',monospace;font-size:11px}.yui3-skin-sam .yui3-testconsole .yui3-console-ft{border-top:1px solid}.yui3-skin-sam .yui3-testconsole .yui3-console-hd{border-bottom:1px solid;*zoom:1}.yui3-skin-sam .yui3-testconsole.yui3-console-collapsed .yui3-console-hd{border:0}.yui3-skin-sam .yui3-testconsole .yui3-console-ft,.yui3-skin-sam .yui3-testconsole .yui3-console-hd{border-color:#cfcfcf}.yui3-skin-sam .yui3-testconsole .yui3-testconsole-entry-fail{background-color:#ffe0e0;border-bottom-color:#ffc5c4}.yui3-skin-sam .yui3-testconsole .yui3-testconsole-entry-pass{background-color:#ecffea;border-bottom-color:#d1ffcc}#yui3-css-stamp.skin-sam-test-console{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/thumb-x.png b/lib/yuilib/3.12.0/assets/skins/sam/thumb-x.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/assets/skins/sam/thumb-x.png rename to lib/yuilib/3.12.0/assets/skins/sam/thumb-x.png diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/thumb-y.png b/lib/yuilib/3.12.0/assets/skins/sam/thumb-y.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/assets/skins/sam/thumb-y.png rename to lib/yuilib/3.12.0/assets/skins/sam/thumb-y.png diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/vertical-menu-submenu-indicator.png b/lib/yuilib/3.12.0/assets/skins/sam/vertical-menu-submenu-indicator.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/assets/skins/sam/vertical-menu-submenu-indicator.png rename to lib/yuilib/3.12.0/assets/skins/sam/vertical-menu-submenu-indicator.png diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/warn_error.png b/lib/yuilib/3.12.0/assets/skins/sam/warn_error.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/assets/skins/sam/warn_error.png rename to lib/yuilib/3.12.0/assets/skins/sam/warn_error.png diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/widget-base.css b/lib/yuilib/3.12.0/assets/skins/sam/widget-base.css old mode 100644 new mode 100755 similarity index 68% rename from lib/yuilib/3.9.1/build/assets/skins/sam/widget-base.css rename to lib/yuilib/3.12.0/assets/skins/sam/widget-base.css index bfe3abee3b6..6a66ae7728e --- a/lib/yuilib/3.9.1/build/assets/skins/sam/widget-base.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/widget-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-widget-hidden{display:none}.yui3-widget-content{overflow:hidden}.yui3-widget-content-expanded{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;height:100%}.yui3-widget-tmp-forcesize{overflow:hidden!important}#yui3-css-stamp.skin-sam-widget-base{display:none} diff --git a/lib/yuilib/3.9.1/build/widget-modality/assets/skins/sam/widget-modality.css b/lib/yuilib/3.12.0/assets/skins/sam/widget-modality.css old mode 100644 new mode 100755 similarity index 56% rename from lib/yuilib/3.9.1/build/widget-modality/assets/skins/sam/widget-modality.css rename to lib/yuilib/3.12.0/assets/skins/sam/widget-modality.css index 03510a72c1f..0a7a138c96a --- a/lib/yuilib/3.9.1/build/widget-modality/assets/skins/sam/widget-modality.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/widget-modality.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-sam .yui3-widget-mask{background-color:black;zoom:1;-ms-filter:"alpha(opacity=40)";filter:alpha(opacity=40);opacity:.4}#yui3-css-stamp.skin-sam-widget-modality{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/widget-stack.css b/lib/yuilib/3.12.0/assets/skins/sam/widget-stack.css old mode 100644 new mode 100755 similarity index 62% rename from lib/yuilib/3.9.1/build/assets/skins/sam/widget-stack.css rename to lib/yuilib/3.12.0/assets/skins/sam/widget-stack.css index 3979827de9c..79d0260fc9d --- a/lib/yuilib/3.9.1/build/assets/skins/sam/widget-stack.css +++ b/lib/yuilib/3.12.0/assets/skins/sam/widget-stack.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-widget-stacked .yui3-widget-shim{opacity:0;filter:alpha(opacity=0);position:absolute;border:0;top:0;left:0;padding:0;margin:0;z-index:-1;width:100%;height:100%;_width:0;_height:0}#yui3-css-stamp.skin-sam-widget-stack{display:none} diff --git a/lib/yuilib/3.9.1/build/async-queue/async-queue-debug.js b/lib/yuilib/3.12.0/async-queue/async-queue-debug.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/async-queue/async-queue-debug.js rename to lib/yuilib/3.12.0/async-queue/async-queue-debug.js index a0bc324fa6b..1bdd1d441a1 --- a/lib/yuilib/3.9.1/build/async-queue/async-queue-debug.js +++ b/lib/yuilib/3.12.0/async-queue/async-queue-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('async-queue', function (Y, NAME) { /** @@ -220,13 +226,26 @@ Y.extend(Queue, Y.EventTarget, { var callback, cont = true; + if (this._executing) { + this._running = true; + return this; + } + for (callback = this.next(); - cont && callback && !this.isRunning(); + callback && !this.isRunning(); callback = this.next()) { cont = (callback.timeout < 0) ? this._execute(callback) : this._schedule(callback); + + // Break to avoid an extra call to next (final-expression of the + // 'for' loop), because the until function of the next callback + // in the queue may return a wrong result if it depends on the + // not-yet-finished work of the previous callback. + if (!cont) { + break; + } } if (!callback) { @@ -250,14 +269,17 @@ Y.extend(Queue, Y.EventTarget, { * @protected */ _execute : function (callback) { - this._running = callback._running = true; + + this._running = callback._running = true; + this._executing = callback; callback.iterations--; this.fire(EXECUTE, { callback: callback }); var cont = this._running && callback.autoContinue; - this._running = callback._running = false; + this._running = callback._running = false; + this._executing = false; return cont; }, @@ -353,7 +375,7 @@ Y.extend(Queue, Y.EventTarget, { * @chainable */ pause: function () { - if (isObject(this._running)) { + if (this._running && isObject(this._running)) { this._running.cancel(); } @@ -370,10 +392,20 @@ Y.extend(Queue, Y.EventTarget, { * @return {AsyncQueue} the AsyncQueue instance * @chainable */ - stop : function () { + stop : function () { + this._q = []; - return this.pause(); + if (this._running && isObject(this._running)) { + this._running.cancel(); + this._running = false; + } + // otherwise don't systematically set this._running to false, because if + // stop has been called from inside a queued callback, the _execute method + // currenty running needs to call run() one more time for the 'complete' + // event to be fired. + + return this; }, /** @@ -520,4 +552,4 @@ Y.extend(Queue, Y.EventTarget, { -}, '3.9.1', {"requires": ["event-custom"]}); +}, '3.12.0', {"requires": ["event-custom"]}); diff --git a/lib/yuilib/3.12.0/async-queue/async-queue-min.js b/lib/yuilib/3.12.0/async-queue/async-queue-min.js new file mode 100755 index 00000000000..02358ccb546 --- /dev/null +++ b/lib/yuilib/3.12.0/async-queue/async-queue-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("async-queue",function(e,t){e.AsyncQueue=function(){this._init(),this.add.apply(this,arguments)};var n=e.AsyncQueue,r="execute",i="shift",s="promote",o="remove",u=e.Lang.isObject,a=e.Lang.isFunction;n.defaults=e.mix({autoContinue:!0,iterations:1,timeout:10,until:function(){return this.iterations|=0,this.iterations<=0}},e.config.queueDefaults||{}),e.extend(n,e.EventTarget,{_running:!1,_init:function(){e.EventTarget.call(this,{prefix:"queue",emitFacade:!0}),this._q=[],this.defaults={},this._initEvents()},_initEvents:function(){this.publish({execute:{defaultFn:this._defExecFn,emitFacade:!0},shift:{defaultFn:this._defShiftFn,emitFacade:!0},add:{defaultFn:this._defAddFn,emitFacade:!0},promote:{defaultFn:this._defPromoteFn,emitFacade:!0},remove:{defaultFn:this._defRemoveFn,emitFacade:!0}})},next:function(){var e;while(this._q.length){e=this._q[0]=this._prepare(this._q[0]);if(!e||!e.until())break;this.fire(i,{callback:e}),e=null}return e||null},_defShiftFn:function(e){this.indexOf(e.callback)===0&&this._q.shift()},_prepare:function(t){if(a(t)&&t._prepared)return t;var r=e.merge(n.defaults,{context:this,args:[],_prepared:!0},this.defaults,a(t)?{fn:t}:t),i=e.bind(function(){i._running||i.iterations--,a(i.fn)&&i.fn.apply(i.context||e,e.Array(i.args))},this);return e.mix(i,r)},run:function(){var e,t=!0;if(this._executing)return this._running=!0,this;for(e=this.next();e&&!this.isRunning();e=this.next()){t=e.timeout<0?this._execute(e):this._schedule(e);if(!t)break}return e||this.fire("complete"),this},_execute:function(e){this._running=e._running=!0,this._executing=e,e.iterations--,this.fire(r,{callback:e});var t=this._running&&e.autoContinue;return this._running=e._running=!1,this._executing=!1,t},_schedule:function(t){return this._running=e.later(t.timeout,this,function(){this._execute(t)&&this.run()}),!1},isRunning:function(){return!!this._running},_defExecFn:function(e){e.callback()},add:function(){return this.fire("add",{callbacks:e.Array(arguments,0,!0)}),this},_defAddFn:function(t){var n=this._q,r=[];e.Array.each(t.callbacks,function(e){u(e)&&(n.push(e),r.push(e))}),t.added=r},pause:function(){return this._running&&u(this._running)&&this._running.cancel(),this._running=!1,this},stop:function(){return this._q=[],this._running&&u(this._running)&&(this._running.cancel(),this._running=!1),this},indexOf:function(e){var t=0,n=this._q.length,r;for(;t-1?this._q[t]:null},promote:function(e){var t={callback:e},n;return this.isRunning()?n=this.after(i,function(){this.fire(s,t),n.detach()},this):this.fire(s,t),this},_defPromoteFn:function(e){var t=this.indexOf(e.callback),n=t>-1?this._q.splice(t,1)[0]:null;e.promoted=n,n&&this._q.unshift(n)},remove:function(e){var t={callback:e},n;return this.isRunning()?n=this.after(i,function(){this.fire(o,t),n.detach()},this):this.fire(o,t),this},_defRemoveFn:function(e){var t=this.indexOf(e.callback);e.removed=t>-1?this._q.splice(t,1)[0]:null},size:function(){return this.isRunning()||this.next(),this._q.length}})},"3.12.0",{requires:["event-custom"]}); diff --git a/lib/yuilib/3.9.1/build/async-queue/async-queue.js b/lib/yuilib/3.12.0/async-queue/async-queue.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/async-queue/async-queue.js rename to lib/yuilib/3.12.0/async-queue/async-queue.js index a0bc324fa6b..1bdd1d441a1 --- a/lib/yuilib/3.9.1/build/async-queue/async-queue.js +++ b/lib/yuilib/3.12.0/async-queue/async-queue.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('async-queue', function (Y, NAME) { /** @@ -220,13 +226,26 @@ Y.extend(Queue, Y.EventTarget, { var callback, cont = true; + if (this._executing) { + this._running = true; + return this; + } + for (callback = this.next(); - cont && callback && !this.isRunning(); + callback && !this.isRunning(); callback = this.next()) { cont = (callback.timeout < 0) ? this._execute(callback) : this._schedule(callback); + + // Break to avoid an extra call to next (final-expression of the + // 'for' loop), because the until function of the next callback + // in the queue may return a wrong result if it depends on the + // not-yet-finished work of the previous callback. + if (!cont) { + break; + } } if (!callback) { @@ -250,14 +269,17 @@ Y.extend(Queue, Y.EventTarget, { * @protected */ _execute : function (callback) { - this._running = callback._running = true; + + this._running = callback._running = true; + this._executing = callback; callback.iterations--; this.fire(EXECUTE, { callback: callback }); var cont = this._running && callback.autoContinue; - this._running = callback._running = false; + this._running = callback._running = false; + this._executing = false; return cont; }, @@ -353,7 +375,7 @@ Y.extend(Queue, Y.EventTarget, { * @chainable */ pause: function () { - if (isObject(this._running)) { + if (this._running && isObject(this._running)) { this._running.cancel(); } @@ -370,10 +392,20 @@ Y.extend(Queue, Y.EventTarget, { * @return {AsyncQueue} the AsyncQueue instance * @chainable */ - stop : function () { + stop : function () { + this._q = []; - return this.pause(); + if (this._running && isObject(this._running)) { + this._running.cancel(); + this._running = false; + } + // otherwise don't systematically set this._running to false, because if + // stop has been called from inside a queued callback, the _execute method + // currenty running needs to call run() one more time for the 'complete' + // event to be fired. + + return this; }, /** @@ -520,4 +552,4 @@ Y.extend(Queue, Y.EventTarget, { -}, '3.9.1', {"requires": ["event-custom"]}); +}, '3.12.0', {"requires": ["event-custom"]}); diff --git a/lib/yuilib/3.9.1/build/attribute-base/attribute-base-debug.js b/lib/yuilib/3.12.0/attribute-base/attribute-base-debug.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/attribute-base/attribute-base-debug.js rename to lib/yuilib/3.12.0/attribute-base/attribute-base-debug.js index c9ab64ecd85..f3012594524 --- a/lib/yuilib/3.9.1/build/attribute-base/attribute-base-debug.js +++ b/lib/yuilib/3.12.0/attribute-base/attribute-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('attribute-base', function (Y, NAME) { /** @@ -108,4 +114,4 @@ YUI.add('attribute-base', function (Y, NAME) { Y.Attribute = Attribute; -}, '3.9.1', {"requires": ["attribute-core", "attribute-observable", "attribute-extras"]}); +}, '3.12.0', {"requires": ["attribute-core", "attribute-observable", "attribute-extras"]}); diff --git a/lib/yuilib/3.9.1/build/attribute-base/attribute-base-min.js b/lib/yuilib/3.12.0/attribute-base/attribute-base-min.js old mode 100644 new mode 100755 similarity index 64% rename from lib/yuilib/3.9.1/build/attribute-base/attribute-base-min.js rename to lib/yuilib/3.12.0/attribute-base/attribute-base-min.js index e6214a845ff..2028c2925fe --- a/lib/yuilib/3.9.1/build/attribute-base/attribute-base-min.js +++ b/lib/yuilib/3.12.0/attribute-base/attribute-base-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("attribute-base",function(e,t){function n(){e.AttributeCore.apply(this,arguments),e.AttributeObservable.apply(this,arguments),e.AttributeExtras.apply(this,arguments)}e.mix(n,e.AttributeCore,!1,null,1),e.mix(n,e.AttributeExtras,!1,null,1),e.mix(n,e.AttributeObservable,!0,null,1),n.INVALID_VALUE=e.AttributeCore.INVALID_VALUE,n._ATTR_CFG=e.AttributeCore._ATTR_CFG.concat(e.AttributeObservable._ATTR_CFG),n.protectAttrs=e.AttributeCore.protectAttrs,e.Attribute=n},"3.9.1",{requires:["attribute-core","attribute-observable","attribute-extras"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("attribute-base",function(e,t){function n(){e.AttributeCore.apply(this,arguments),e.AttributeObservable.apply(this,arguments),e.AttributeExtras.apply(this,arguments)}e.mix(n,e.AttributeCore,!1,null,1),e.mix(n,e.AttributeExtras,!1,null,1),e.mix(n,e.AttributeObservable,!0,null,1),n.INVALID_VALUE=e.AttributeCore.INVALID_VALUE,n._ATTR_CFG=e.AttributeCore._ATTR_CFG.concat(e.AttributeObservable._ATTR_CFG),n.protectAttrs=e.AttributeCore.protectAttrs,e.Attribute=n},"3.12.0",{requires:["attribute-core","attribute-observable","attribute-extras"]}); diff --git a/lib/yuilib/3.9.1/build/attribute-base/attribute-base.js b/lib/yuilib/3.12.0/attribute-base/attribute-base.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/attribute-base/attribute-base.js rename to lib/yuilib/3.12.0/attribute-base/attribute-base.js index c9ab64ecd85..f3012594524 --- a/lib/yuilib/3.9.1/build/attribute-base/attribute-base.js +++ b/lib/yuilib/3.12.0/attribute-base/attribute-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('attribute-base', function (Y, NAME) { /** @@ -108,4 +114,4 @@ YUI.add('attribute-base', function (Y, NAME) { Y.Attribute = Attribute; -}, '3.9.1', {"requires": ["attribute-core", "attribute-observable", "attribute-extras"]}); +}, '3.12.0', {"requires": ["attribute-core", "attribute-observable", "attribute-extras"]}); diff --git a/lib/yuilib/3.9.1/build/attribute-complex/attribute-complex-debug.js b/lib/yuilib/3.12.0/attribute-complex/attribute-complex-debug.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/attribute-complex/attribute-complex-debug.js rename to lib/yuilib/3.12.0/attribute-complex/attribute-complex-debug.js index 4e7155f0d65..cdebc6de94a --- a/lib/yuilib/3.9.1/build/attribute-complex/attribute-complex-debug.js +++ b/lib/yuilib/3.12.0/attribute-complex/attribute-complex-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('attribute-complex', function (Y, NAME) { /** @@ -54,4 +60,4 @@ YUI.add('attribute-complex', function (Y, NAME) { Y.AttributeComplex = Attribute.Complex; -}, '3.9.1', {"requires": ["attribute-base"]}); +}, '3.12.0', {"requires": ["attribute-base"]}); diff --git a/lib/yuilib/3.12.0/attribute-complex/attribute-complex-min.js b/lib/yuilib/3.12.0/attribute-complex/attribute-complex-min.js new file mode 100755 index 00000000000..4185f056faa --- /dev/null +++ b/lib/yuilib/3.12.0/attribute-complex/attribute-complex-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("attribute-complex",function(e,t){var n=e.Attribute;n.Complex=function(){},n.Complex.prototype={_normAttrVals:n.prototype._normAttrVals,_getAttrInitVal:n.prototype._getAttrInitVal},e.AttributeComplex=n.Complex},"3.12.0",{requires:["attribute-base"]}); diff --git a/lib/yuilib/3.9.1/build/attribute-complex/attribute-complex.js b/lib/yuilib/3.12.0/attribute-complex/attribute-complex.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/attribute-complex/attribute-complex.js rename to lib/yuilib/3.12.0/attribute-complex/attribute-complex.js index 4e7155f0d65..cdebc6de94a --- a/lib/yuilib/3.9.1/build/attribute-complex/attribute-complex.js +++ b/lib/yuilib/3.12.0/attribute-complex/attribute-complex.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('attribute-complex', function (Y, NAME) { /** @@ -54,4 +60,4 @@ YUI.add('attribute-complex', function (Y, NAME) { Y.AttributeComplex = Attribute.Complex; -}, '3.9.1', {"requires": ["attribute-base"]}); +}, '3.12.0', {"requires": ["attribute-base"]}); diff --git a/lib/yuilib/3.9.1/build/attribute-core/attribute-core-debug.js b/lib/yuilib/3.12.0/attribute-core/attribute-core-debug.js old mode 100644 new mode 100755 similarity index 85% rename from lib/yuilib/3.9.1/build/attribute-core/attribute-core-debug.js rename to lib/yuilib/3.12.0/attribute-core/attribute-core-debug.js index 328ffe1f6b3..b454645e1a1 --- a/lib/yuilib/3.9.1/build/attribute-core/attribute-core-debug.js +++ b/lib/yuilib/3.12.0/attribute-core/attribute-core-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('attribute-core', function (Y, NAME) { /** @@ -148,6 +154,9 @@ YUI.add('attribute-core', function (Y, NAME) { return obj; } }; + /*For log lines*/ + /*jshint maxlen:200*/ + /** * The attribute module provides an augmentable Attribute implementation, which * adds configurable attributes and attribute change events to the class being @@ -185,10 +194,8 @@ YUI.add('attribute-core', function (Y, NAME) { // Used for internal state management ADDED = "added", BYPASS_PROXY = "_bypassProxy", - INITIALIZING = "initializing", INIT_VALUE = "initValue", LAZY = "lazy", - IS_LAZY_ADD = "isLazyAdd", INVALID_VALUE; @@ -401,52 +408,64 @@ YUI.add('attribute-core', function (Y, NAME) { * * @chainable */ - addAttr: function(name, config, lazy) { + addAttr : function(name, config, lazy) { Y.log('Adding attribute: ' + name, 'info', 'attribute'); var host = this, // help compression state = host._state, + data = state.data, value, + added, hasValue; config = config || {}; - lazy = (LAZY_ADD in config) ? config[LAZY_ADD] : lazy; + if (LAZY_ADD in config) { + lazy = config[LAZY_ADD]; + } - if (lazy && !host.attrAdded(name)) { - state.addAll(name, { + added = state.get(name, ADDED); + + if (lazy && !added) { + state.data[name] = { lazy : config, added : true - }); + }; } else { - /*jshint maxlen:200*/ - if (host.attrAdded(name) && !state.get(name, IS_LAZY_ADD)) { Y.log('Attribute: ' + name + ' already exists. Cannot add it again without removing it first', 'warn', 'attribute'); } - if (!host.attrAdded(name) || state.get(name, IS_LAZY_ADD)) { + if (added && !config.isLazyAdd) { Y.log('Attribute: ' + name + ' already exists. Cannot add it again without removing it first', 'warn', 'attribute'); } + + if (!added || config.isLazyAdd) { hasValue = (VALUE in config); if (config.readOnly && !hasValue) { Y.log('readOnly attribute: ' + name + ', added without an initial value. Value will be set on initial call to set', 'warn', 'attribute');} - /*jshint maxlen:150*/ if (hasValue) { + // We'll go through set, don't want to set value in config directly + + // PERF TODO: VALIDATE: See if setting this to undefined is sufficient. We use to delete before. + // In certain code paths/use cases, undefined may not be the same as not present. + // If not, we can set it to some known fixed value (like INVALID_VALUE, say INITIALIZING_VALUE) for performance, + // to avoid a delete which seems to help a lot. + value = config.value; - delete config.value; + config.value = undefined; } config.added = true; config.initializing = true; - state.addAll(name, config); + data[name] = config; if (hasValue) { // Go through set, so that raw values get normalized/validated host.set(name, value); } - state.remove(name, INITIALIZING); + config.initializing = false; } } @@ -462,7 +481,7 @@ YUI.add('attribute-core', function (Y, NAME) { * This method will return true for lazily added attributes. */ attrAdded: function(name) { - return !!this._state.get(name, ADDED); + return !!(this._state.get(name, ADDED)); }, /** @@ -500,14 +519,26 @@ YUI.add('attribute-core', function (Y, NAME) { * @method _addLazyAttr * @private * @param {Object} name The name of the attribute + * @param {Object} [lazyCfg] Optional config hash for the attribute. This is added for performance + * along the critical path, where the calling method has already obtained lazy config from state. */ - _addLazyAttr: function(name) { - var state = this._state, - lazyCfg = state.get(name, LAZY); + _addLazyAttr: function(name, lazyCfg) { + var state = this._state; - state.add(name, IS_LAZY_ADD, true); - state.remove(name, LAZY); - this.addAttr(name, lazyCfg); + lazyCfg = lazyCfg || state.get(name, LAZY); + + if (lazyCfg) { + + // PERF TODO: For App's id override, otherwise wouldn't be + // needed. It expects to find it in the cfg for it's + // addAttr override. Would like to remove, once App override is + // removed. + state.data[name].lazy = undefined; + + lazyCfg.isLazyAdd = true; + + this.addAttr(name, lazyCfg); + } }, /** @@ -564,6 +595,7 @@ YUI.add('attribute-core', function (Y, NAME) { var allowSet = true, state = this._state, stateProxy = this._stateProxy, + tCfgs = this._tCfgs, cfg, initialSet, strPath, @@ -574,17 +606,24 @@ YUI.add('attribute-core', function (Y, NAME) { if (name.indexOf(DOT) !== -1) { strPath = name; + path = name.split(DOT); name = path.shift(); } - if (this._isLazyAttr(name)) { - this._addLazyAttr(name); + // On Demand - Should be rare - handles out of order valueFn, setter, getter references + if (tCfgs && tCfgs[name]) { + this._addOutOfOrder(name, tCfgs[name]); } - cfg = state.getAll(name, true) || {}; + cfg = state.data[name] || {}; - initialSet = (!(VALUE in cfg)); + if (cfg.lazy) { + cfg = cfg.lazy; + this._addLazyAttr(name, cfg); + } + + initialSet = (cfg.value === undefined); if (stateProxy && name in stateProxy && !cfg._bypassProxy) { // TODO: Value is always set for proxy. Can we do any better? Maybe take a snapshot as the initial value for the first call to set? @@ -628,13 +667,12 @@ YUI.add('attribute-core', function (Y, NAME) { } if (allowSet) { - opts = opts || {}; if (!this._fireAttrChange || initializing) { - this._setAttrVal(name, strPath, currVal, val, opts); + this._setAttrVal(name, strPath, currVal, val, opts, cfg); } else { // HACK - no real reason core needs to know about _fireAttrChange, but // it adds fn hops if we want to break it out. Not sure it's worth it for this critical path - this._fireAttrChange(name, strPath, currVal, val, opts); + this._fireAttrChange(name, strPath, currVal, val, opts, cfg); } } } @@ -642,6 +680,43 @@ YUI.add('attribute-core', function (Y, NAME) { return this; }, + /** + * Utility method used by get/set to add attributes + * encountered out of order when calling addAttrs(). + * + * For example, if: + * + * this.addAttrs({ + * foo: { + * setter: function() { + * // make sure this bar is available when foo is added + * this.get("bar"); + * } + * }, + * bar: { + * value: ... + * } + * }); + * + * @method _addOutOfOrder + * @private + * @param name {String} attribute name + * @param cfg {Object} attribute configuration + */ + _addOutOfOrder : function(name, cfg) { + + var attrs = {}; + attrs[name] = cfg; + + delete this._tCfgs[name]; + + // TODO: The original code went through addAttrs, so + // sticking with it for this pass. Seems like we could + // just jump straight to _addAttr() and get some perf + // improvement. + this._addAttrs(attrs, this._tVals); + }, + /** * Provides the common implementation for the public get method, * allowing Attribute hosts to over-ride either method. @@ -656,41 +731,41 @@ YUI.add('attribute-core', function (Y, NAME) { * @return {Any} The value of the attribute. */ _getAttr : function(name) { - var host = this, // help compression - fullName = name, - state = host._state, + var fullName = name, + tCfgs = this._tCfgs, path, getter, val, - cfg; + attrCfg; if (name.indexOf(DOT) !== -1) { path = name.split(DOT); name = path.shift(); } - // On Demand - Should be rare - handles out of order valueFn references - if (host._tCfgs && host._tCfgs[name]) { - cfg = {}; - cfg[name] = host._tCfgs[name]; - delete host._tCfgs[name]; - host._addAttrs(cfg, host._tVals); + // On Demand - Should be rare - handles out of + // order valueFn, setter, getter references + if (tCfgs && tCfgs[name]) { + this._addOutOfOrder(name, tCfgs[name]); } + attrCfg = this._state.data[name] || {}; + // Lazy Init - if (host._isLazyAttr(name)) { - host._addLazyAttr(name); + if (attrCfg.lazy) { + attrCfg = attrCfg.lazy; + this._addLazyAttr(name, attrCfg); } - val = host._getStateVal(name); + val = this._getStateVal(name, attrCfg); - getter = state.get(name, GETTER); + getter = attrCfg.getter; if (getter && !getter.call) { getter = this[getter]; } - val = (getter) ? getter.call(host, val, fullName) : val; + val = (getter) ? getter.call(this, val, fullName) : val; val = (path) ? O.getValue(val, path) : val; return val; @@ -703,11 +778,19 @@ YUI.add('attribute-core', function (Y, NAME) { * @method _getStateVal * @private * @param {String} name The name of the attribute + * @param {Object} [cfg] Optional config hash for the attribute. This is added for performance along the critical path, + * where the calling method has already obtained the config from state. + * * @return {Any} The stored value of the attribute */ - _getStateVal : function(name) { + _getStateVal : function(name, cfg) { var stateProxy = this._stateProxy; - return stateProxy && (name in stateProxy) && !this._state.get(name, BYPASS_PROXY) ? stateProxy[name] : this._state.get(name, VALUE); + + if (!cfg) { + cfg = this._state.getAll(name) || {}; + } + + return (stateProxy && (name in stateProxy) && !(cfg._bypassProxy)) ? stateProxy[name] : cfg.value; }, /** @@ -739,18 +822,20 @@ YUI.add('attribute-core', function (Y, NAME) { * @param {Any} prevVal The currently stored value of the attribute. * @param {Any} newVal The value which is going to be stored. * @param {Object} [opts] Optional data providing the circumstances for the change. + * @param {Object} [attrCfg] Optional config hash for the attribute. This is added for performance along the critical path, + * where the calling method has already obtained the config from state. * * @return {booolean} true if the new attribute value was stored, false if not. */ - _setAttrVal : function(attrName, subAttrName, prevVal, newVal, opts) { + _setAttrVal : function(attrName, subAttrName, prevVal, newVal, opts, attrCfg) { var host = this, allowSet = true, - cfg = this._state.getAll(attrName, true) || {}, + cfg = attrCfg || this._state.data[attrName] || {}, validator = cfg.validator, setter = cfg.setter, initializing = cfg.initializing, - prevRawVal = this._getStateVal(attrName), + prevRawVal = this._getStateVal(attrName, cfg), name = subAttrName || attrName, retVal, valid; @@ -912,15 +997,14 @@ YUI.add('attribute-core', function (Y, NAME) { * @return {Object} A reference to the host object. */ addAttrs : function(cfgs, values, lazy) { - var host = this; // help compression if (cfgs) { - host._tCfgs = cfgs; - host._tVals = host._normAttrVals(values); - host._addAttrs(cfgs, host._tVals, lazy); - host._tCfgs = host._tVals = null; + this._tCfgs = cfgs; + this._tVals = (values) ? this._normAttrVals(values) : null; + this._addAttrs(cfgs, this._tVals, lazy); + this._tCfgs = this._tVals = null; } - return host; + return this; }, /** @@ -941,7 +1025,8 @@ YUI.add('attribute-core', function (Y, NAME) { * See addAttr. */ _addAttrs : function(cfgs, values, lazy) { - var host = this, // help compression + var tCfgs = this._tCfgs, + tVals = this._tVals, attr, attrCfg, value; @@ -954,17 +1039,17 @@ YUI.add('attribute-core', function (Y, NAME) { attrCfg.defaultValue = attrCfg.value; // Handle simple, complex and user values, accounting for read-only - value = host._getAttrInitVal(attr, attrCfg, host._tVals); + value = this._getAttrInitVal(attr, attrCfg, tVals); if (value !== undefined) { attrCfg.value = value; } - if (host._tCfgs[attr]) { - delete host._tCfgs[attr]; + if (tCfgs[attr]) { + tCfgs[attr] = undefined; } - host.addAttr(attr, attrCfg, lazy); + this.addAttr(attr, attrCfg, lazy); } } }, @@ -997,32 +1082,38 @@ YUI.add('attribute-core', function (Y, NAME) { * @private */ _normAttrVals : function(valueHash) { - var vals = {}, - subvals = {}, + var vals, + subvals, path, attr, v, k; - if (valueHash) { - for (k in valueHash) { - if (valueHash.hasOwnProperty(k)) { - if (k.indexOf(DOT) !== -1) { - path = k.split(DOT); - attr = path.shift(); - v = subvals[attr] = subvals[attr] || []; - v[v.length] = { - path : path, - value: valueHash[k] - }; - } else { - vals[k] = valueHash[k]; - } - } - } - return { simple:vals, complex:subvals }; - } else { + if (!valueHash) { return null; } + + vals = {}; + + for (k in valueHash) { + if (valueHash.hasOwnProperty(k)) { + if (k.indexOf(DOT) !== -1) { + path = k.split(DOT); + attr = path.shift(); + + subvals = subvals || {}; + + v = subvals[attr] = subvals[attr] || []; + v[v.length] = { + path : path, + value: valueHash[k] + }; + } else { + vals[k] = valueHash[k]; + } + } + } + + return { simple:vals, complex:subvals }; }, /** @@ -1045,6 +1136,7 @@ YUI.add('attribute-core', function (Y, NAME) { valFn = cfg.valueFn, tmpVal, initValSet = false, + readOnly = cfg.readOnly, simple, complex, i, @@ -1053,7 +1145,7 @@ YUI.add('attribute-core', function (Y, NAME) { subval, subvals; - if (!cfg.readOnly && initValues) { + if (!readOnly && initValues) { // Simple Attributes simple = initValues.simple; if (simple && simple.hasOwnProperty(attr)) { @@ -1072,7 +1164,7 @@ YUI.add('attribute-core', function (Y, NAME) { } } - if (!cfg.readOnly && initValues) { + if (!readOnly && initValues) { // Complex Attributes (complex values applied, after simple, in case both are set) complex = initValues.complex; @@ -1120,4 +1212,4 @@ YUI.add('attribute-core', function (Y, NAME) { Y.AttributeCore = AttributeCore; -}, '3.9.1', {"requires": ["oop"]}); +}, '3.12.0', {"requires": ["oop"]}); diff --git a/lib/yuilib/3.12.0/attribute-core/attribute-core-min.js b/lib/yuilib/3.12.0/attribute-core/attribute-core-min.js new file mode 100755 index 00000000000..470ca25bbe5 --- /dev/null +++ b/lib/yuilib/3.12.0/attribute-core/attribute-core-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("attribute-core",function(e,t){function b(e,t,n){this._yuievt=null,this._initAttrHost(e,t,n)}e.State=function(){this.data={}},e.State.prototype={add:function(e,t,n){var r=this.data[e];r||(r=this.data[e]={}),r[t]=n},addAll:function(e,t){var n=this.data[e],r;n||(n=this.data[e]={});for(r in t)t.hasOwnProperty(r)&&(n[r]=t[r])},remove:function(e,t){var n=this.data[e];n&&delete n[t]},removeAll:function(t,n){var r;n?e.each(n,function(e,n){this.remove(t,typeof n=="string"?n:e)},this):(r=this.data,t in r&&delete r[t])},get:function(e,t){var n=this.data[e];if(n)return n[t]},getAll:function(e,t){var n=this.data[e],r,i;if(t)i=n;else if(n){i={};for(r in n)n.hasOwnProperty(r)&&(i[r]=n[r])}return i}};var n=e.Object,r=e.Lang,i=".",s="getter",o="setter",u="readOnly",a="writeOnce",f="initOnly",l="validator",c="value",h="valueFn",p="lazyAdd",d="added",v="_bypassProxy",m="initValue",g="lazy",y;b.INVALID_VALUE={},y=b.INVALID_VALUE,b._ATTR_CFG=[o,s,l,c,h,a,u,p,v],b.protectAttrs=function(t){if(t){t=e.merge(t);for(var n in t)t.hasOwnProperty(n)&&(t[n]=e.merge(t[n]))}return t},b.prototype={_initAttrHost:function(t,n,r){this._state=new e.State,this._initAttrs(t,n,r)},addAttr:function(e,t,n){var r=this,i=r._state,s=i.data,o,u,a;t=t||{},p in t&&(n=t[p]),u=i.get(e,d);if(n&&!u)i.data[e]={lazy:t,added:!0};else if(!u||t.isLazyAdd)a=c in t,a&&(o=t.value,t.value=undefined),t.added=!0,t.initializing=!0,s[e]=t,a&&r.set(e,o),t.initializing=!1;return r},attrAdded:function(e){return!!this._state.get(e,d)},get:function(e){return this._getAttr(e)},_isLazyAttr:function(e){return this._state.get(e,g)},_addLazyAttr:function(e,t){var n=this._state;t=t||n.get(e,g),t&&(n.data[e].lazy=undefined,t.isLazyAdd=!0,this.addAttr(e,t))},set:function(e,t,n){return this._setAttr(e,t,n)},_set:function(e,t,n){return this._setAttr(e,t,n,!0)},_setAttr:function(t,r,s,o){var u=!0,a=this._state,l=this._stateProxy,c=this._tCfgs,h,p,d,v,m,g,y;return t.indexOf(i)!==-1&&(d=t,v=t.split(i),t=v.shift()),c&&c[t]&&this._addOutOfOrder(t,c[t]),h=a.data[t]||{},h.lazy&&(h=h.lazy,this._addLazyAttr(t,h)),p=h.value===undefined,l&&t in l&&!h._bypassProxy&&(p=!1),g=h.writeOnce,y=h.initializing,!p&&!o&&(g&&(u=!1),h.readOnly&&(u=!1)),!y&&!o&&g===f&&(u=!1),u&&(p||(m=this.get(t)),v&&(r=n.setValue(e.clone(m),v,r),r===undefined&&(u=!1)),u&&(!this._fireAttrChange||y?this._setAttrVal(t,d,m,r,s,h):this._fireAttrChange(t,d,m,r,s,h))),this},_addOutOfOrder:function(e,t){var n={};n[e]=t,delete this._tCfgs[e],this._addAttrs(n,this._tVals)},_getAttr:function(e){var t=e,r=this._tCfgs,s,o,u,a;return e.indexOf(i)!==-1&&(s=e.split(i),e=s.shift()),r&&r[e]&&this._addOutOfOrder(e,r[e]),a=this._state.data[e]||{},a.lazy&&(a=a.lazy,this._addLazyAttr(e,a)),u=this._getStateVal(e,a),o=a.getter,o&&!o.call&&(o=this[o]),u=o?o.call(this,u,t):u,u=s?n.getValue(u,s):u,u},_getStateVal:function(e,t){var n=this._stateProxy;return t||(t=this._state.getAll(e)||{}),n&&e in n&&!t._bypassProxy?n[e]:t.value},_setStateVal:function(e,t){var n=this._stateProxy;n&&e in n&&!this._state.get(e,v)?n[e]=t:this._state.add(e,c,t)},_setAttrVal:function(e,t,n,i,s,o){var u=this,a=!0,f=o||this._state.data[e]||{},l=f.validator,c=f.setter,h=f.initializing,p=this._getStateVal(e,f),d=t||e,v,g;return l&&(l.call||(l=this[l]),l&&(g=l.call(u,i,d,s),!g&&h&&(i=f.defaultValue,g=!0))),!l||g?(c&&(c.call||(c=this[c]),c&&(v=c.call(u,i,d,s),v===y?h?i=f.defaultValue:a=!1:v!==undefined&&(i=v))),a&&(!t&&i===p&&!r.isObject(i)?a=!1:(m in f||(f.initValue=i),u._setStateVal(e,i)))):a=!1,a},setAttrs:function(e,t){return this._setAttrs(e,t)},_setAttrs:function(e,t){var n;for(n in e)e.hasOwnProperty(n)&&this.set(n,e[n],t);return this},getAttrs:function(e){return this._getAttrs(e)},_getAttrs:function(e){var t={},r,i,s,o=e===!0;if(!e||o)e=n.keys(this._state.data);for(i=0,s=e.length;iaddAttr. */ _addAttrs : function(cfgs, values, lazy) { - var host = this, // help compression + var tCfgs = this._tCfgs, + tVals = this._tVals, attr, attrCfg, value; @@ -942,17 +1027,17 @@ YUI.add('attribute-core', function (Y, NAME) { attrCfg.defaultValue = attrCfg.value; // Handle simple, complex and user values, accounting for read-only - value = host._getAttrInitVal(attr, attrCfg, host._tVals); + value = this._getAttrInitVal(attr, attrCfg, tVals); if (value !== undefined) { attrCfg.value = value; } - if (host._tCfgs[attr]) { - delete host._tCfgs[attr]; + if (tCfgs[attr]) { + tCfgs[attr] = undefined; } - host.addAttr(attr, attrCfg, lazy); + this.addAttr(attr, attrCfg, lazy); } } }, @@ -985,32 +1070,38 @@ YUI.add('attribute-core', function (Y, NAME) { * @private */ _normAttrVals : function(valueHash) { - var vals = {}, - subvals = {}, + var vals, + subvals, path, attr, v, k; - if (valueHash) { - for (k in valueHash) { - if (valueHash.hasOwnProperty(k)) { - if (k.indexOf(DOT) !== -1) { - path = k.split(DOT); - attr = path.shift(); - v = subvals[attr] = subvals[attr] || []; - v[v.length] = { - path : path, - value: valueHash[k] - }; - } else { - vals[k] = valueHash[k]; - } - } - } - return { simple:vals, complex:subvals }; - } else { + if (!valueHash) { return null; } + + vals = {}; + + for (k in valueHash) { + if (valueHash.hasOwnProperty(k)) { + if (k.indexOf(DOT) !== -1) { + path = k.split(DOT); + attr = path.shift(); + + subvals = subvals || {}; + + v = subvals[attr] = subvals[attr] || []; + v[v.length] = { + path : path, + value: valueHash[k] + }; + } else { + vals[k] = valueHash[k]; + } + } + } + + return { simple:vals, complex:subvals }; }, /** @@ -1033,6 +1124,7 @@ YUI.add('attribute-core', function (Y, NAME) { valFn = cfg.valueFn, tmpVal, initValSet = false, + readOnly = cfg.readOnly, simple, complex, i, @@ -1041,7 +1133,7 @@ YUI.add('attribute-core', function (Y, NAME) { subval, subvals; - if (!cfg.readOnly && initValues) { + if (!readOnly && initValues) { // Simple Attributes simple = initValues.simple; if (simple && simple.hasOwnProperty(attr)) { @@ -1060,7 +1152,7 @@ YUI.add('attribute-core', function (Y, NAME) { } } - if (!cfg.readOnly && initValues) { + if (!readOnly && initValues) { // Complex Attributes (complex values applied, after simple, in case both are set) complex = initValues.complex; @@ -1108,4 +1200,4 @@ YUI.add('attribute-core', function (Y, NAME) { Y.AttributeCore = AttributeCore; -}, '3.9.1', {"requires": ["oop"]}); +}, '3.12.0', {"requires": ["oop"]}); diff --git a/lib/yuilib/3.9.1/build/attribute-extras/attribute-extras-debug.js b/lib/yuilib/3.12.0/attribute-extras/attribute-extras-debug.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/attribute-extras/attribute-extras-debug.js rename to lib/yuilib/3.12.0/attribute-extras/attribute-extras-debug.js index 3a2d1b813df..c1ee430cc2f --- a/lib/yuilib/3.9.1/build/attribute-extras/attribute-extras-debug.js +++ b/lib/yuilib/3.12.0/attribute-extras/attribute-extras-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('attribute-extras', function (Y, NAME) { /** @@ -144,4 +150,4 @@ YUI.add('attribute-extras', function (Y, NAME) { Y.AttributeExtras = AttributeExtras; -}, '3.9.1', {"requires": ["oop"]}); +}, '3.12.0', {"requires": ["oop"]}); diff --git a/lib/yuilib/3.9.1/build/attribute-extras/attribute-extras-min.js b/lib/yuilib/3.12.0/attribute-extras/attribute-extras-min.js old mode 100644 new mode 100755 similarity index 73% rename from lib/yuilib/3.9.1/build/attribute-extras/attribute-extras-min.js rename to lib/yuilib/3.12.0/attribute-extras/attribute-extras-min.js index e188384cdf6..a86552bbc3a --- a/lib/yuilib/3.9.1/build/attribute-extras/attribute-extras-min.js +++ b/lib/yuilib/3.12.0/attribute-extras/attribute-extras-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("attribute-extras",function(e,t){function o(){}var n="broadcast",r="published",i="initValue",s={readOnly:1,writeOnce:1,getter:1,broadcast:1};o.prototype={modifyAttr:function(e,t){var i=this,o,u;if(i.attrAdded(e)){i._isLazyAttr(e)&&i._addLazyAttr(e),u=i._state;for(o in t)s[o]&&t.hasOwnProperty(o)&&(u.add(e,o,t[o]),o===n&&u.remove(e,r))}},removeAttr:function(e){this._state.removeAll(e)},reset:function(t){var n=this;return t?(n._isLazyAttr(t)&&n._addLazyAttr(t),n.set(t,n._state.get(t,i))):e.each(n._state.data,function(e,t){n.reset(t)}),n},_getAttrCfg:function(t){var n,r=this._state;return t?n=r.getAll(t)||{}:(n={},e.each(r.data,function(e,t){n[t]=r.getAll(t)})),n}},e.AttributeExtras=o},"3.9.1",{requires:["oop"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("attribute-extras",function(e,t){function o(){}var n="broadcast",r="published",i="initValue",s={readOnly:1,writeOnce:1,getter:1,broadcast:1};o.prototype={modifyAttr:function(e,t){var i=this,o,u;if(i.attrAdded(e)){i._isLazyAttr(e)&&i._addLazyAttr(e),u=i._state;for(o in t)s[o]&&t.hasOwnProperty(o)&&(u.add(e,o,t[o]),o===n&&u.remove(e,r))}},removeAttr:function(e){this._state.removeAll(e)},reset:function(t){var n=this;return t?(n._isLazyAttr(t)&&n._addLazyAttr(t),n.set(t,n._state.get(t,i))):e.each(n._state.data,function(e,t){n.reset(t)}),n},_getAttrCfg:function(t){var n,r=this._state;return t?n=r.getAll(t)||{}:(n={},e.each(r.data,function(e,t){n[t]=r.getAll(t)})),n}},e.AttributeExtras=o},"3.12.0",{requires:["oop"]}); diff --git a/lib/yuilib/3.9.1/build/attribute-extras/attribute-extras.js b/lib/yuilib/3.12.0/attribute-extras/attribute-extras.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/attribute-extras/attribute-extras.js rename to lib/yuilib/3.12.0/attribute-extras/attribute-extras.js index daf703a42a5..81d89bb80b4 --- a/lib/yuilib/3.9.1/build/attribute-extras/attribute-extras.js +++ b/lib/yuilib/3.12.0/attribute-extras/attribute-extras.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('attribute-extras', function (Y, NAME) { /** @@ -143,4 +149,4 @@ YUI.add('attribute-extras', function (Y, NAME) { Y.AttributeExtras = AttributeExtras; -}, '3.9.1', {"requires": ["oop"]}); +}, '3.12.0', {"requires": ["oop"]}); diff --git a/lib/yuilib/3.9.1/build/attribute-observable/attribute-observable-debug.js b/lib/yuilib/3.12.0/attribute-observable/attribute-observable-debug.js old mode 100644 new mode 100755 similarity index 76% rename from lib/yuilib/3.9.1/build/attribute-observable/attribute-observable-debug.js rename to lib/yuilib/3.12.0/attribute-observable/attribute-observable-debug.js index bda323aa0ae..62582d70a41 --- a/lib/yuilib/3.9.1/build/attribute-observable/attribute-observable-debug.js +++ b/lib/yuilib/3.12.0/attribute-observable/attribute-observable-debug.js @@ -1,6 +1,16 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('attribute-observable', function (Y, NAME) { + /*For log lines*/ + /*jshint maxlen:200*/ + + /** * The attribute module provides an augmentable Attribute implementation, which * adds configurable attributes and attribute change events to the class being @@ -21,8 +31,7 @@ YUI.add('attribute-observable', function (Y, NAME) { var EventTarget = Y.EventTarget, CHANGE = "Change", - BROADCAST = "broadcast", - PUBLISHED = "published"; + BROADCAST = "broadcast"; /** * Provides an augmentable implementation of attribute change events for @@ -128,47 +137,58 @@ YUI.add('attribute-observable', function (Y, NAME) { * @param {Any} currVal The current value of the attribute * @param {Any} newVal The new value of the attribute * @param {Object} opts Any additional event data to mix into the attribute change event's event facade. + * @param {Object} [cfg] The attribute config stored in State, if already available. */ - _fireAttrChange : function(attrName, subAttrName, currVal, newVal, opts) { + _fireAttrChange : function(attrName, subAttrName, currVal, newVal, opts, cfg) { var host = this, - eventName = attrName + CHANGE, + eventName = this._getFullType(attrName + CHANGE), state = host._state, facade, broadcast, - evtCfg; + e; - if (!state.get(attrName, PUBLISHED)) { - - evtCfg = { - queuable:false, - defaultTargetOnly: true, - defaultFn:host._defAttrChangeFn, - silent:true - }; - - broadcast = state.get(attrName, BROADCAST); - if (broadcast !== undefined) { - evtCfg.broadcast = broadcast; - } - - host.publish(eventName, evtCfg); - - state.add(attrName, PUBLISHED, true); + if (!cfg) { + cfg = state.data[attrName] || {}; } - facade = (opts) ? Y.merge(opts) : host._ATTR_E_FACADE; + if (!cfg.published) { + + // PERF: Using lower level _publish() for + // critical path performance + e = host._publish(eventName); + + e.emitFacade = true; + e.defaultTargetOnly = true; + e.defaultFn = host._defAttrChangeFn; + + broadcast = cfg.broadcast; + if (broadcast !== undefined) { + e.broadcast = broadcast; + } + + cfg.published = true; + } + + if (opts) { + facade = Y.merge(opts); + facade._attrOpts = opts; + } else { + facade = host._ATTR_E_FACADE; + } // Not using the single object signature for fire({type:..., newVal:...}), since // we don't want to override type. Changed to the fire(type, {newVal:...}) signature. - // facade.type = eventName; facade.attrName = attrName; facade.subAttrName = subAttrName; facade.prevVal = currVal; facade.newVal = newVal; - // host.fire(facade); - host.fire(eventName, facade); + if (host._hasPotentialSubscribers(eventName)) { + host.fire(eventName, facade); + } else { + this._setAttrVal(attrName, subAttrName, currVal, newVal, opts, cfg); + } }, /** @@ -177,16 +197,28 @@ YUI.add('attribute-observable', function (Y, NAME) { * @private * @method _defAttrChangeFn * @param {EventFacade} e The event object for attribute change events. + * @param {boolean} eventFastPath Whether or not we're using this as a fast path in the case of no listeners or not */ - _defAttrChangeFn : function(e) { - if (!this._setAttrVal(e.attrName, e.subAttrName, e.prevVal, e.newVal, e.opts)) { - /*jshint maxlen:200*/ + _defAttrChangeFn : function(e, eventFastPath) { + + var opts = e._attrOpts; + if (opts) { + delete e._attrOpts; + } + + if (!this._setAttrVal(e.attrName, e.subAttrName, e.prevVal, e.newVal, opts)) { + Y.log('State not updated and stopImmediatePropagation called for attribute: ' + e.attrName + ' , value:' + e.newVal, 'warn', 'attribute'); - /*jshint maxlen:150*/ - // Prevent "after" listeners from being invoked since nothing changed. - e.stopImmediatePropagation(); + + if (!eventFastPath) { + // Prevent "after" listeners from being invoked since nothing changed. + e.stopImmediatePropagation(); + } + } else { - e.newVal = this.get(e.attrName); + if (!eventFastPath) { + e.newVal = this.get(e.attrName); + } } } }; @@ -209,4 +241,4 @@ YUI.add('attribute-observable', function (Y, NAME) { Y.AttributeEvents = AttributeObservable; -}, '3.9.1', {"requires": ["event-custom"]}); +}, '3.12.0', {"requires": ["event-custom"]}); diff --git a/lib/yuilib/3.12.0/attribute-observable/attribute-observable-min.js b/lib/yuilib/3.12.0/attribute-observable/attribute-observable-min.js new file mode 100755 index 00000000000..e826191d8cd --- /dev/null +++ b/lib/yuilib/3.12.0/attribute-observable/attribute-observable-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("attribute-observable",function(e,t){function s(){this._ATTR_E_FACADE={},n.call(this,{emitFacade:!0})}var n=e.EventTarget,r="Change",i="broadcast";s._ATTR_CFG=[i],s.prototype={set:function(e,t,n){return this._setAttr(e,t,n)},_set:function(e,t,n){return this._setAttr(e,t,n,!0)},setAttrs:function(e,t){return this._setAttrs(e,t)},_setAttrs:function(e,t){var n;for(n in e)e.hasOwnProperty(n)&&this.set(n,e[n],t);return this},_fireAttrChange:function(t,n,i,s,o,u){var a=this,f=this._getFullType(t+r),l=a._state,c,h,p;u||(u=l.data[t]||{}),u.published||(p=a._publish(f),p.emitFacade=!0,p.defaultTargetOnly=!0,p.defaultFn=a._defAttrChangeFn,h=u.broadcast,h!==undefined&&(p.broadcast=h),u.published=!0),o?(c=e.merge(o),c._attrOpts=o):c=a._ATTR_E_FACADE,c.attrName=t,c.subAttrName=n,c.prevVal=i,c.newVal=s,a._hasPotentialSubscribers(f)?a.fire(f,c):this._setAttrVal(t,n,i,s,o,u)},_defAttrChangeFn:function(e,t){var n=e._attrOpts;n&&delete e._attrOpts,this._setAttrVal(e.attrName,e.subAttrName,e.prevVal,e.newVal,n)?t||(e.newVal=this.get(e.attrName)):t||e.stopImmediatePropagation()}},e.mix(s,n,!1,null,1),e.AttributeObservable=s,e.AttributeEvents=s},"3.12.0",{requires:["event-custom"]}); diff --git a/lib/yuilib/3.9.1/build/attribute-observable/attribute-observable.js b/lib/yuilib/3.12.0/attribute-observable/attribute-observable.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/attribute-observable/attribute-observable.js rename to lib/yuilib/3.12.0/attribute-observable/attribute-observable.js index d73e04d155d..0b3aea88c50 --- a/lib/yuilib/3.9.1/build/attribute-observable/attribute-observable.js +++ b/lib/yuilib/3.12.0/attribute-observable/attribute-observable.js @@ -1,6 +1,16 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('attribute-observable', function (Y, NAME) { + /*For log lines*/ + /*jshint maxlen:200*/ + + /** * The attribute module provides an augmentable Attribute implementation, which * adds configurable attributes and attribute change events to the class being @@ -21,8 +31,7 @@ YUI.add('attribute-observable', function (Y, NAME) { var EventTarget = Y.EventTarget, CHANGE = "Change", - BROADCAST = "broadcast", - PUBLISHED = "published"; + BROADCAST = "broadcast"; /** * Provides an augmentable implementation of attribute change events for @@ -128,47 +137,58 @@ YUI.add('attribute-observable', function (Y, NAME) { * @param {Any} currVal The current value of the attribute * @param {Any} newVal The new value of the attribute * @param {Object} opts Any additional event data to mix into the attribute change event's event facade. + * @param {Object} [cfg] The attribute config stored in State, if already available. */ - _fireAttrChange : function(attrName, subAttrName, currVal, newVal, opts) { + _fireAttrChange : function(attrName, subAttrName, currVal, newVal, opts, cfg) { var host = this, - eventName = attrName + CHANGE, + eventName = this._getFullType(attrName + CHANGE), state = host._state, facade, broadcast, - evtCfg; + e; - if (!state.get(attrName, PUBLISHED)) { - - evtCfg = { - queuable:false, - defaultTargetOnly: true, - defaultFn:host._defAttrChangeFn, - silent:true - }; - - broadcast = state.get(attrName, BROADCAST); - if (broadcast !== undefined) { - evtCfg.broadcast = broadcast; - } - - host.publish(eventName, evtCfg); - - state.add(attrName, PUBLISHED, true); + if (!cfg) { + cfg = state.data[attrName] || {}; } - facade = (opts) ? Y.merge(opts) : host._ATTR_E_FACADE; + if (!cfg.published) { + + // PERF: Using lower level _publish() for + // critical path performance + e = host._publish(eventName); + + e.emitFacade = true; + e.defaultTargetOnly = true; + e.defaultFn = host._defAttrChangeFn; + + broadcast = cfg.broadcast; + if (broadcast !== undefined) { + e.broadcast = broadcast; + } + + cfg.published = true; + } + + if (opts) { + facade = Y.merge(opts); + facade._attrOpts = opts; + } else { + facade = host._ATTR_E_FACADE; + } // Not using the single object signature for fire({type:..., newVal:...}), since // we don't want to override type. Changed to the fire(type, {newVal:...}) signature. - // facade.type = eventName; facade.attrName = attrName; facade.subAttrName = subAttrName; facade.prevVal = currVal; facade.newVal = newVal; - // host.fire(facade); - host.fire(eventName, facade); + if (host._hasPotentialSubscribers(eventName)) { + host.fire(eventName, facade); + } else { + this._setAttrVal(attrName, subAttrName, currVal, newVal, opts, cfg); + } }, /** @@ -177,15 +197,27 @@ YUI.add('attribute-observable', function (Y, NAME) { * @private * @method _defAttrChangeFn * @param {EventFacade} e The event object for attribute change events. + * @param {boolean} eventFastPath Whether or not we're using this as a fast path in the case of no listeners or not */ - _defAttrChangeFn : function(e) { - if (!this._setAttrVal(e.attrName, e.subAttrName, e.prevVal, e.newVal, e.opts)) { - /*jshint maxlen:200*/ - /*jshint maxlen:150*/ - // Prevent "after" listeners from being invoked since nothing changed. - e.stopImmediatePropagation(); + _defAttrChangeFn : function(e, eventFastPath) { + + var opts = e._attrOpts; + if (opts) { + delete e._attrOpts; + } + + if (!this._setAttrVal(e.attrName, e.subAttrName, e.prevVal, e.newVal, opts)) { + + + if (!eventFastPath) { + // Prevent "after" listeners from being invoked since nothing changed. + e.stopImmediatePropagation(); + } + } else { - e.newVal = this.get(e.attrName); + if (!eventFastPath) { + e.newVal = this.get(e.attrName); + } } } }; @@ -208,4 +240,4 @@ YUI.add('attribute-observable', function (Y, NAME) { Y.AttributeEvents = AttributeObservable; -}, '3.9.1', {"requires": ["event-custom"]}); +}, '3.12.0', {"requires": ["event-custom"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-base/autocomplete-base-debug.js b/lib/yuilib/3.12.0/autocomplete-base/autocomplete-base-debug.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/autocomplete-base/autocomplete-base-debug.js rename to lib/yuilib/3.12.0/autocomplete-base/autocomplete-base-debug.js index 5aecac6db92..00914a9d6dd --- a/lib/yuilib/3.9.1/build/autocomplete-base/autocomplete-base-debug.js +++ b/lib/yuilib/3.12.0/autocomplete-base/autocomplete-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('autocomplete-base', function (Y, NAME) { /** @@ -1544,7 +1550,7 @@ AutoCompleteBase.UI_SRC = (Y.Widget && Y.Widget.UI_SRC) || 'ui'; Y.AutoCompleteBase = AutoCompleteBase; -}, '3.9.1', { +}, '3.12.0', { "optional": [ "autocomplete-sources" ], diff --git a/lib/yuilib/3.9.1/build/autocomplete-base/autocomplete-base-min.js b/lib/yuilib/3.12.0/autocomplete-base/autocomplete-base-min.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/autocomplete-base/autocomplete-base-min.js rename to lib/yuilib/3.12.0/autocomplete-base/autocomplete-base-min.js index 7b1f7166bd6..665a9a3bef5 --- a/lib/yuilib/3.9.1/build/autocomplete-base/autocomplete-base-min.js +++ b/lib/yuilib/3.12.0/autocomplete-base/autocomplete-base-min.js @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("autocomplete-base",function(e,t){function T(){}var n=e.Escape,r=e.Lang,i=e.Array,s=e.Object,o=r.isFunction,u=r.isString,a=r.trim,f=e.Attribute.INVALID_VALUE,l="_functionValidator",c="_sourceSuccess",h="allowBrowserAutocomplete",p="inputNode",d="query",v="queryDelimiter",m="requestTemplate",g="results",y="resultListLocator",b="value",w="valueChange",E="clear",S=d,x=g;T.prototype={initializer:function(){e.before(this._bindUIACBase,this,"bindUI"),e.before(this._syncUIACBase,this,"syncUI"),this.publish(E,{defaultFn:this._defClearFn}),this.publish(S,{defaultFn:this._defQueryFn}),this.publish(x,{defaultFn:this._defResultsFn})},destructor:function(){this._acBaseEvents&&this._acBaseEvents.detach(),delete this._acBaseEvents,delete this._cache,delete this._inputNode,delete this._rawSource},clearCache:function(){return this._cache&&(this._cache={}),this},sendRequest:function(t,n){var r,i=this.get("source");return t||t===""?this._set(d,t):t=this.get(d)||"",i&&(n||(n=this.get(m)),r=n?n.call(this,t):t,i.sendRequest({query:t,request:r,callback:{success:e.bind(this._onResponse,this,t)}})),this},_bindUIACBase:function(){var t=this.get(p),n=t&&t.tokenInput;n&&(t=n.get(p),this._set("tokenInput",n));if(!t){e.error("No inputNode specified.");return}this._inputNode=t,this._acBaseEvents=new e.EventHandle([t.on(w,this._onInputValueChange,this),t.on("blur",this._onInputBlur,this),this.after(h+"Change",this._syncBrowserAutocomplete),this.after("sourceTypeChange",this._afterSourceTypeChange),this.after(w,this._afterValueChange)])},_syncUIACBase:function(){this._syncBrowserAutocomplete(),this.set(b,this.get(p).get(b))},_createArraySource:function(e){var t=this;return{type:"array",sendRequest:function(n){t[c](e.concat(),n)}}},_createFunctionSource:function(e){var t=this;return{type:"function",sendRequest:function(n){function i(e){t[c](e||[],n)}var r;(r=e(n.query,i))&&i(r)}}},_createObjectSource:function(e){var t=this;return{type:"object",sendRequest:function(n){var r=n.query;t[c](s.owns(e,r)?e[r]:[],n)}}},_functionValidator:function(e){return e===null||o(e)},_getObjectValue:function(e,t){if(!e)return;for(var n=0,r=t.length;e&&n0&&o.length>v&&(o.length=v);if(h){c=h.call(this,e,o.concat());if(!c)return;for(p=0,d=c.length;p1&&(o[s-1]=e,e=o.join(n+" ")),e=e+n+" "),this.set(b,e)},_afterSourceTypeChange:function(e){this._rawSource&&this.set("source",this._rawSource)},_afterValueChange:function(e){var t=e.newVal,n=this,r=e.src===T.UI_SRC,i,s,o,u;r||n._inputNode.set(b,t),o=n.get("minQueryLength"),u=n._parseValue(t)||"",o>=0&&u.length>=o?r?(i=n.get("queryDelay"),s=function(){n.fire(S,{inputValue:t,query:u,src:e.src})},i?(clearTimeout(n._delay),n._delay=setTimeout(s,i)):s()):n._set(d,u):(clearTimeout(n._delay),n.fire(E,{prevVal:e.prevVal?n._parseValue(e.prevVal):null,src:e.src}))},_onInputBlur:function(e){var t=this.get(v),n,i,s;if(t&&!this.get("allowTrailingDelimiter")){t=r.trimRight(t),s=i=this._inputNode.get(b);if(t)while((i=r.trimRight(i))&&(n=i.length-t.length)&&i.lastIndexOf(t)===n)i=i.substring(0,n);else i=r.trimRight(i);i!==s&&this.set(b,i)}},_onInputValueChange:function(e){var t=e.newVal;t!==this.get(b)&&this.set(b,t,{src:T.UI_SRC})},_onResponse:function(e,t){e===(this.get(d)||"")&&this._parseResponse(e||"",t.response,t.data)},_defClearFn:function(){this._set(d,null),this._set(g,[])},_defQueryFn:function(e){this.sendRequest(e.query)},_defResultsFn:function(e){this._set(g,e[g])}},T.ATTRS={allowBrowserAutocomplete:{value:!1},allowTrailingDelimiter:{value:!1},enableCache:{lazyAdd:!1,setter:"_setEnableCache",value:!0},inputNode:{setter:e.one,writeOnce:"initOnly"},maxResults:{value:0},minQueryLength:{value:1},query:{readOnly:!0,value:null},queryDelay:{value:100},queryDelimiter:{value:null},requestTemplate:{setter:"_setRequestTemplate",value:null},resultFilters:{setter:"_setResultFilters",value:[]},resultFormatter -:{validator:l,value:null},resultHighlighter:{setter:"_setResultHighlighter",value:null},resultListLocator:{setter:"_setLocator",value:null},results:{readOnly:!0,value:[]},resultTextLocator:{setter:"_setLocator",value:null},source:{setter:"_setSource",value:null},sourceType:{value:null},tokenInput:{readOnly:!0},value:{value:""}},T._buildCfg={aggregates:["SOURCE_TYPES"],statics:["UI_SRC"]},T.SOURCE_TYPES={array:"_createArraySource","function":"_createFunctionSource",object:"_createObjectSource"},T.UI_SRC=e.Widget&&e.Widget.UI_SRC||"ui",e.AutoCompleteBase=T},"3.9.1",{optional:["autocomplete-sources"],requires:["array-extras","base-build","escape","event-valuechange","node-base"]}); +:{validator:l,value:null},resultHighlighter:{setter:"_setResultHighlighter",value:null},resultListLocator:{setter:"_setLocator",value:null},results:{readOnly:!0,value:[]},resultTextLocator:{setter:"_setLocator",value:null},source:{setter:"_setSource",value:null},sourceType:{value:null},tokenInput:{readOnly:!0},value:{value:""}},T._buildCfg={aggregates:["SOURCE_TYPES"],statics:["UI_SRC"]},T.SOURCE_TYPES={array:"_createArraySource","function":"_createFunctionSource",object:"_createObjectSource"},T.UI_SRC=e.Widget&&e.Widget.UI_SRC||"ui",e.AutoCompleteBase=T},"3.12.0",{optional:["autocomplete-sources"],requires:["array-extras","base-build","escape","event-valuechange","node-base"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-base/autocomplete-base.js b/lib/yuilib/3.12.0/autocomplete-base/autocomplete-base.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/autocomplete-base/autocomplete-base.js rename to lib/yuilib/3.12.0/autocomplete-base/autocomplete-base.js index 45b95e1dabd..8a15ec3fa42 --- a/lib/yuilib/3.9.1/build/autocomplete-base/autocomplete-base.js +++ b/lib/yuilib/3.12.0/autocomplete-base/autocomplete-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('autocomplete-base', function (Y, NAME) { /** @@ -1536,7 +1542,7 @@ AutoCompleteBase.UI_SRC = (Y.Widget && Y.Widget.UI_SRC) || 'ui'; Y.AutoCompleteBase = AutoCompleteBase; -}, '3.9.1', { +}, '3.12.0', { "optional": [ "autocomplete-sources" ], diff --git a/lib/yuilib/3.9.1/build/autocomplete-filters-accentfold/autocomplete-filters-accentfold-debug.js b/lib/yuilib/3.12.0/autocomplete-filters-accentfold/autocomplete-filters-accentfold-debug.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/autocomplete-filters-accentfold/autocomplete-filters-accentfold-debug.js rename to lib/yuilib/3.12.0/autocomplete-filters-accentfold/autocomplete-filters-accentfold-debug.js index e676d26cbe1..5562b90866b --- a/lib/yuilib/3.9.1/build/autocomplete-filters-accentfold/autocomplete-filters-accentfold-debug.js +++ b/lib/yuilib/3.12.0/autocomplete-filters-accentfold/autocomplete-filters-accentfold-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('autocomplete-filters-accentfold', function (Y, NAME) { /** @@ -134,4 +140,4 @@ Y.mix(Y.namespace('AutoCompleteFilters'), { }); -}, '3.9.1', {"requires": ["array-extras", "text-accentfold", "text-wordbreak"]}); +}, '3.12.0', {"requires": ["array-extras", "text-accentfold", "text-wordbreak"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-filters-accentfold/autocomplete-filters-accentfold-min.js b/lib/yuilib/3.12.0/autocomplete-filters-accentfold/autocomplete-filters-accentfold-min.js old mode 100644 new mode 100755 similarity index 79% rename from lib/yuilib/3.9.1/build/autocomplete-filters-accentfold/autocomplete-filters-accentfold-min.js rename to lib/yuilib/3.12.0/autocomplete-filters-accentfold/autocomplete-filters-accentfold-min.js index 474a65fc96d..0164a6b8704 --- a/lib/yuilib/3.9.1/build/autocomplete-filters-accentfold/autocomplete-filters-accentfold-min.js +++ b/lib/yuilib/3.12.0/autocomplete-filters-accentfold/autocomplete-filters-accentfold-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("autocomplete-filters-accentfold",function(e,t){var n=e.Text.AccentFold,r=e.Text.WordBreak,i=e.Array,s=e.Object;e.mix(e.namespace("AutoCompleteFilters"),{charMatchFold:function(e,t){if(!e)return t;var r=i.unique(n.fold(e).split(""));return i.filter(t,function(e){var t=n.fold(e.text);return i.every(r,function(e){return t.indexOf(e)!==-1})})},phraseMatchFold:function(e,t){return e?(e=n.fold(e),i.filter(t,function(t){return n.fold(t.text).indexOf(e)!==-1})):t},startsWithFold:function(e,t){return e?(e=n.fold(e),i.filter(t,function(t){return n.fold(t.text).indexOf(e)===0})):t},subWordMatchFold:function(e,t){if(!e)return t;var s=r.getUniqueWords(n.fold(e));return i.filter(t,function(e){var t=n.fold(e.text);return i.every(s,function(e){return t.indexOf(e)!==-1})})},wordMatchFold:function(e,t){if(!e)return t;var o=r.getUniqueWords(n.fold(e));return i.filter(t,function(e){var t=i.hash(r.getUniqueWords(n.fold(e.text)));return i.every(o,function(e){return s.owns(t,e)})})}})},"3.9.1",{requires:["array-extras","text-accentfold","text-wordbreak"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("autocomplete-filters-accentfold",function(e,t){var n=e.Text.AccentFold,r=e.Text.WordBreak,i=e.Array,s=e.Object;e.mix(e.namespace("AutoCompleteFilters"),{charMatchFold:function(e,t){if(!e)return t;var r=i.unique(n.fold(e).split(""));return i.filter(t,function(e){var t=n.fold(e.text);return i.every(r,function(e){return t.indexOf(e)!==-1})})},phraseMatchFold:function(e,t){return e?(e=n.fold(e),i.filter(t,function(t){return n.fold(t.text).indexOf(e)!==-1})):t},startsWithFold:function(e,t){return e?(e=n.fold(e),i.filter(t,function(t){return n.fold(t.text).indexOf(e)===0})):t},subWordMatchFold:function(e,t){if(!e)return t;var s=r.getUniqueWords(n.fold(e));return i.filter(t,function(e){var t=n.fold(e.text);return i.every(s,function(e){return t.indexOf(e)!==-1})})},wordMatchFold:function(e,t){if(!e)return t;var o=r.getUniqueWords(n.fold(e));return i.filter(t,function(e){var t=i.hash(r.getUniqueWords(n.fold(e.text)));return i.every(o,function(e){return s.owns(t,e)})})}})},"3.12.0",{requires:["array-extras","text-accentfold","text-wordbreak"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-filters-accentfold/autocomplete-filters-accentfold.js b/lib/yuilib/3.12.0/autocomplete-filters-accentfold/autocomplete-filters-accentfold.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/autocomplete-filters-accentfold/autocomplete-filters-accentfold.js rename to lib/yuilib/3.12.0/autocomplete-filters-accentfold/autocomplete-filters-accentfold.js index e676d26cbe1..5562b90866b --- a/lib/yuilib/3.9.1/build/autocomplete-filters-accentfold/autocomplete-filters-accentfold.js +++ b/lib/yuilib/3.12.0/autocomplete-filters-accentfold/autocomplete-filters-accentfold.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('autocomplete-filters-accentfold', function (Y, NAME) { /** @@ -134,4 +140,4 @@ Y.mix(Y.namespace('AutoCompleteFilters'), { }); -}, '3.9.1', {"requires": ["array-extras", "text-accentfold", "text-wordbreak"]}); +}, '3.12.0', {"requires": ["array-extras", "text-accentfold", "text-wordbreak"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-filters/autocomplete-filters-debug.js b/lib/yuilib/3.12.0/autocomplete-filters/autocomplete-filters-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/autocomplete-filters/autocomplete-filters-debug.js rename to lib/yuilib/3.12.0/autocomplete-filters/autocomplete-filters-debug.js index 8382b57764a..32b869c0899 --- a/lib/yuilib/3.9.1/build/autocomplete-filters/autocomplete-filters-debug.js +++ b/lib/yuilib/3.12.0/autocomplete-filters/autocomplete-filters-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('autocomplete-filters', function (Y, NAME) { /** @@ -237,4 +243,4 @@ Filters = Y.mix(Y.namespace('AutoCompleteFilters'), { }); -}, '3.9.1', {"requires": ["array-extras", "text-wordbreak"]}); +}, '3.12.0', {"requires": ["array-extras", "text-wordbreak"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-filters/autocomplete-filters-min.js b/lib/yuilib/3.12.0/autocomplete-filters/autocomplete-filters-min.js old mode 100644 new mode 100755 similarity index 86% rename from lib/yuilib/3.9.1/build/autocomplete-filters/autocomplete-filters-min.js rename to lib/yuilib/3.12.0/autocomplete-filters/autocomplete-filters-min.js index 04baaf2850a..aba4cfa42da --- a/lib/yuilib/3.9.1/build/autocomplete-filters/autocomplete-filters-min.js +++ b/lib/yuilib/3.12.0/autocomplete-filters/autocomplete-filters-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("autocomplete-filters",function(e,t){var n=e.Array,r=e.Object,i=e.Text.WordBreak,s=e.mix(e.namespace("AutoCompleteFilters"),{charMatch:function(e,t,r){if(!e)return t;var i=n.unique((r?e:e.toLowerCase()).split(""));return n.filter(t,function(e){return e=e.text,r||(e=e.toLowerCase()),n.every(i,function(t){return e.indexOf(t)!==-1})})},charMatchCase:function(e,t){return s.charMatch(e,t,!0)},phraseMatch:function(e,t,r){return e?(r||(e=e.toLowerCase()),n.filter(t,function(t){return(r?t.text:t.text.toLowerCase()).indexOf(e)!==-1})):t},phraseMatchCase:function(e,t){return s.phraseMatch(e,t,!0)},startsWith:function(e,t,r){return e?(r||(e=e.toLowerCase()),n.filter(t,function(t){return(r?t.text:t.text.toLowerCase()).indexOf(e)===0})):t},startsWithCase:function(e,t){return s.startsWith(e,t,!0)},subWordMatch:function(e,t,r){if(!e)return t;var s=i.getUniqueWords(e,{ignoreCase:!r});return n.filter(t,function(e){var t=r?e.text:e.text.toLowerCase();return n.every(s,function(e){return t.indexOf(e)!==-1})})},subWordMatchCase:function(e,t){return s.subWordMatch(e,t,!0)},wordMatch:function(e,t,s){if(!e)return t;var o={ignoreCase:!s},u=i.getUniqueWords(e,o);return n.filter(t,function(e){var t=n.hash(i.getUniqueWords(e.text,o));return n.every(u,function(e){return r.owns(t,e)})})},wordMatchCase:function(e,t){return s.wordMatch(e,t,!0)}})},"3.9.1",{requires:["array-extras","text-wordbreak"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("autocomplete-filters",function(e,t){var n=e.Array,r=e.Object,i=e.Text.WordBreak,s=e.mix(e.namespace("AutoCompleteFilters"),{charMatch:function(e,t,r){if(!e)return t;var i=n.unique((r?e:e.toLowerCase()).split(""));return n.filter(t,function(e){return e=e.text,r||(e=e.toLowerCase()),n.every(i,function(t){return e.indexOf(t)!==-1})})},charMatchCase:function(e,t){return s.charMatch(e,t,!0)},phraseMatch:function(e,t,r){return e?(r||(e=e.toLowerCase()),n.filter(t,function(t){return(r?t.text:t.text.toLowerCase()).indexOf(e)!==-1})):t},phraseMatchCase:function(e,t){return s.phraseMatch(e,t,!0)},startsWith:function(e,t,r){return e?(r||(e=e.toLowerCase()),n.filter(t,function(t){return(r?t.text:t.text.toLowerCase()).indexOf(e)===0})):t},startsWithCase:function(e,t){return s.startsWith(e,t,!0)},subWordMatch:function(e,t,r){if(!e)return t;var s=i.getUniqueWords(e,{ignoreCase:!r});return n.filter(t,function(e){var t=r?e.text:e.text.toLowerCase();return n.every(s,function(e){return t.indexOf(e)!==-1})})},subWordMatchCase:function(e,t){return s.subWordMatch(e,t,!0)},wordMatch:function(e,t,s){if(!e)return t;var o={ignoreCase:!s},u=i.getUniqueWords(e,o);return n.filter(t,function(e){var t=n.hash(i.getUniqueWords(e.text,o));return n.every(u,function(e){return r.owns(t,e)})})},wordMatchCase:function(e,t){return s.wordMatch(e,t,!0)}})},"3.12.0",{requires:["array-extras","text-wordbreak"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-filters/autocomplete-filters.js b/lib/yuilib/3.12.0/autocomplete-filters/autocomplete-filters.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/autocomplete-filters/autocomplete-filters.js rename to lib/yuilib/3.12.0/autocomplete-filters/autocomplete-filters.js index 8382b57764a..32b869c0899 --- a/lib/yuilib/3.9.1/build/autocomplete-filters/autocomplete-filters.js +++ b/lib/yuilib/3.12.0/autocomplete-filters/autocomplete-filters.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('autocomplete-filters', function (Y, NAME) { /** @@ -237,4 +243,4 @@ Filters = Y.mix(Y.namespace('AutoCompleteFilters'), { }); -}, '3.9.1', {"requires": ["array-extras", "text-wordbreak"]}); +}, '3.12.0', {"requires": ["array-extras", "text-wordbreak"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold-debug.js b/lib/yuilib/3.12.0/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold-debug.js old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold-debug.js rename to lib/yuilib/3.12.0/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold-debug.js index 4cf442011e4..abf37bbc329 --- a/lib/yuilib/3.9.1/build/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold-debug.js +++ b/lib/yuilib/3.12.0/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('autocomplete-highlighters-accentfold', function (Y, NAME) { /** @@ -105,4 +111,4 @@ Y.mix(Y.namespace('AutoCompleteHighlighters'), { }); -}, '3.9.1', {"requires": ["array-extras", "highlight-accentfold"]}); +}, '3.12.0', {"requires": ["array-extras", "highlight-accentfold"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold-min.js b/lib/yuilib/3.12.0/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold-min.js old mode 100644 new mode 100755 similarity index 73% rename from lib/yuilib/3.9.1/build/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold-min.js rename to lib/yuilib/3.12.0/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold-min.js index 81e4b8f411e..6f661766d45 --- a/lib/yuilib/3.9.1/build/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold-min.js +++ b/lib/yuilib/3.12.0/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("autocomplete-highlighters-accentfold",function(e,t){var n=e.Highlight,r=e.Array;e.mix(e.namespace("AutoCompleteHighlighters"),{charMatchFold:function(e,t){var i=r.unique(e.split(""));return r.map(t,function(e){return n.allFold(e.text,i)})},phraseMatchFold:function(e,t){return r.map(t,function(t){return n.allFold(t.text,[e])})},startsWithFold:function(e,t){return r.map(t,function(t){return n.allFold(t.text,[e],{startsWith:!0})})},subWordMatchFold:function(t,i){var s=e.Text.WordBreak.getUniqueWords(t);return r.map(i,function(e){return n.allFold(e.text,s)})},wordMatchFold:function(e,t){return r.map(t,function(t){return n.wordsFold(t.text,e)})}})},"3.9.1",{requires:["array-extras","highlight-accentfold"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("autocomplete-highlighters-accentfold",function(e,t){var n=e.Highlight,r=e.Array;e.mix(e.namespace("AutoCompleteHighlighters"),{charMatchFold:function(e,t){var i=r.unique(e.split(""));return r.map(t,function(e){return n.allFold(e.text,i)})},phraseMatchFold:function(e,t){return r.map(t,function(t){return n.allFold(t.text,[e])})},startsWithFold:function(e,t){return r.map(t,function(t){return n.allFold(t.text,[e],{startsWith:!0})})},subWordMatchFold:function(t,i){var s=e.Text.WordBreak.getUniqueWords(t);return r.map(i,function(e){return n.allFold(e.text,s)})},wordMatchFold:function(e,t){return r.map(t,function(t){return n.wordsFold(t.text,e)})}})},"3.12.0",{requires:["array-extras","highlight-accentfold"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold.js b/lib/yuilib/3.12.0/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold.js old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold.js rename to lib/yuilib/3.12.0/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold.js index 4cf442011e4..abf37bbc329 --- a/lib/yuilib/3.9.1/build/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold.js +++ b/lib/yuilib/3.12.0/autocomplete-highlighters-accentfold/autocomplete-highlighters-accentfold.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('autocomplete-highlighters-accentfold', function (Y, NAME) { /** @@ -105,4 +111,4 @@ Y.mix(Y.namespace('AutoCompleteHighlighters'), { }); -}, '3.9.1', {"requires": ["array-extras", "highlight-accentfold"]}); +}, '3.12.0', {"requires": ["array-extras", "highlight-accentfold"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-highlighters/autocomplete-highlighters-debug.js b/lib/yuilib/3.12.0/autocomplete-highlighters/autocomplete-highlighters-debug.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/autocomplete-highlighters/autocomplete-highlighters-debug.js rename to lib/yuilib/3.12.0/autocomplete-highlighters/autocomplete-highlighters-debug.js index 52b88741a5b..28258fa1bdc --- a/lib/yuilib/3.9.1/build/autocomplete-highlighters/autocomplete-highlighters-debug.js +++ b/lib/yuilib/3.12.0/autocomplete-highlighters/autocomplete-highlighters-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('autocomplete-highlighters', function (Y, NAME) { /** @@ -197,4 +203,4 @@ Highlighters = Y.mix(Y.namespace('AutoCompleteHighlighters'), { }); -}, '3.9.1', {"requires": ["array-extras", "highlight-base"]}); +}, '3.12.0', {"requires": ["array-extras", "highlight-base"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-highlighters/autocomplete-highlighters-min.js b/lib/yuilib/3.12.0/autocomplete-highlighters/autocomplete-highlighters-min.js old mode 100644 new mode 100755 similarity index 82% rename from lib/yuilib/3.9.1/build/autocomplete-highlighters/autocomplete-highlighters-min.js rename to lib/yuilib/3.12.0/autocomplete-highlighters/autocomplete-highlighters-min.js index a1b1d4ee292..ab5933f5971 --- a/lib/yuilib/3.9.1/build/autocomplete-highlighters/autocomplete-highlighters-min.js +++ b/lib/yuilib/3.12.0/autocomplete-highlighters/autocomplete-highlighters-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("autocomplete-highlighters",function(e,t){var n=e.Array,r=e.Highlight,i=e.mix(e.namespace("AutoCompleteHighlighters"),{charMatch:function(e,t,i){var s=n.unique((i?e:e.toLowerCase()).split(""));return n.map(t,function(e){return r.all(e.text,s,{caseSensitive:i})})},charMatchCase:function(e,t){return i.charMatch(e,t,!0)},phraseMatch:function(e,t,i){return n.map(t,function(t){return r.all(t.text,[e],{caseSensitive:i})})},phraseMatchCase:function(e,t){return i.phraseMatch(e,t,!0)},startsWith:function(e,t,i){return n.map(t,function(t){return r.all(t.text,[e],{caseSensitive:i,startsWith:!0})})},startsWithCase:function(e,t){return i.startsWith(e,t,!0)},subWordMatch:function(t,i,s){var o=e.Text.WordBreak.getUniqueWords(t,{ignoreCase:!s});return n.map(i,function(e){return r.all(e.text,o,{caseSensitive:s})})},subWordMatchCase:function(e,t){return i.subWordMatch(e,t,!0)},wordMatch:function(e,t,i){return n.map(t,function(t){return r.words(t.text,e,{caseSensitive:i})})},wordMatchCase:function(e,t){return i.wordMatch(e,t,!0)}})},"3.9.1",{requires:["array-extras","highlight-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("autocomplete-highlighters",function(e,t){var n=e.Array,r=e.Highlight,i=e.mix(e.namespace("AutoCompleteHighlighters"),{charMatch:function(e,t,i){var s=n.unique((i?e:e.toLowerCase()).split(""));return n.map(t,function(e){return r.all(e.text,s,{caseSensitive:i})})},charMatchCase:function(e,t){return i.charMatch(e,t,!0)},phraseMatch:function(e,t,i){return n.map(t,function(t){return r.all(t.text,[e],{caseSensitive:i})})},phraseMatchCase:function(e,t){return i.phraseMatch(e,t,!0)},startsWith:function(e,t,i){return n.map(t,function(t){return r.all(t.text,[e],{caseSensitive:i,startsWith:!0})})},startsWithCase:function(e,t){return i.startsWith(e,t,!0)},subWordMatch:function(t,i,s){var o=e.Text.WordBreak.getUniqueWords(t,{ignoreCase:!s});return n.map(i,function(e){return r.all(e.text,o,{caseSensitive:s})})},subWordMatchCase:function(e,t){return i.subWordMatch(e,t,!0)},wordMatch:function(e,t,i){return n.map(t,function(t){return r.words(t.text,e,{caseSensitive:i})})},wordMatchCase:function(e,t){return i.wordMatch(e,t,!0)}})},"3.12.0",{requires:["array-extras","highlight-base"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-highlighters/autocomplete-highlighters.js b/lib/yuilib/3.12.0/autocomplete-highlighters/autocomplete-highlighters.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/autocomplete-highlighters/autocomplete-highlighters.js rename to lib/yuilib/3.12.0/autocomplete-highlighters/autocomplete-highlighters.js index 52b88741a5b..28258fa1bdc --- a/lib/yuilib/3.9.1/build/autocomplete-highlighters/autocomplete-highlighters.js +++ b/lib/yuilib/3.12.0/autocomplete-highlighters/autocomplete-highlighters.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('autocomplete-highlighters', function (Y, NAME) { /** @@ -197,4 +203,4 @@ Highlighters = Y.mix(Y.namespace('AutoCompleteHighlighters'), { }); -}, '3.9.1', {"requires": ["array-extras", "highlight-base"]}); +}, '3.12.0', {"requires": ["array-extras", "highlight-base"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-list-keys/autocomplete-list-keys-debug.js b/lib/yuilib/3.12.0/autocomplete-list-keys/autocomplete-list-keys-debug.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/autocomplete-list-keys/autocomplete-list-keys-debug.js rename to lib/yuilib/3.12.0/autocomplete-list-keys/autocomplete-list-keys-debug.js index 70a55015bce..0b984f415c9 --- a/lib/yuilib/3.9.1/build/autocomplete-list-keys/autocomplete-list-keys-debug.js +++ b/lib/yuilib/3.12.0/autocomplete-list-keys/autocomplete-list-keys-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('autocomplete-list-keys', function (Y, NAME) { /** @@ -184,4 +190,4 @@ ListKeys.prototype = { Y.Base.mix(Y.AutoCompleteList, [ListKeys]); -}, '3.9.1', {"requires": ["autocomplete-list", "base-build"]}); +}, '3.12.0', {"requires": ["autocomplete-list", "base-build"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-list-keys/autocomplete-list-keys-min.js b/lib/yuilib/3.12.0/autocomplete-list-keys/autocomplete-list-keys-min.js old mode 100644 new mode 100755 similarity index 80% rename from lib/yuilib/3.9.1/build/autocomplete-list-keys/autocomplete-list-keys-min.js rename to lib/yuilib/3.12.0/autocomplete-list-keys/autocomplete-list-keys-min.js index b345b74db6b..c1046e1e656 --- a/lib/yuilib/3.9.1/build/autocomplete-list-keys/autocomplete-list-keys-min.js +++ b/lib/yuilib/3.12.0/autocomplete-list-keys/autocomplete-list-keys-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("autocomplete-list-keys",function(e,t){function u(){e.before(this._bindKeys,this,"bindUI"),this._initKeys()}var n=40,r=13,i=27,s=9,o=38;u.prototype={_initKeys:function(){var e={},t={};e[n]=this._keyDown,t[r]=this._keyEnter,t[i]=this._keyEsc,t[s]=this._keyTab,t[o]=this._keyUp,this._keys=e,this._keysVisible=t},destructor:function(){this._unbindKeys()},_bindKeys:function(){this._keyEvents=this._inputNode.on("keydown",this._onInputKey,this)},_unbindKeys:function(){this._keyEvents&&this._keyEvents.detach(),this._keyEvents=null},_keyDown:function(){this.get("visible")?this._activateNextItem():this.show()},_keyEnter:function(e){var t=this.get("activeItem");if(!t)return!1;this.selectItem(t,e)},_keyEsc:function(){this.hide()},_keyTab:function(e){var t;if(this.get("tabSelect")){t=this.get("activeItem");if(t)return this.selectItem(t,e),!0}return!1},_keyUp:function(){this._activatePrevItem()},_onInputKey:function(e){var t,n=e.keyCode;this._lastInputKey=n,this.get("results").length&&(t=this._keys[n],!t&&this.get("visible")&&(t=this._keysVisible[n]),t&&t.call(this,e)!==!1&&e.preventDefault())}},e.Base.mix(e.AutoCompleteList,[u])},"3.9.1",{requires:["autocomplete-list","base-build"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("autocomplete-list-keys",function(e,t){function u(){e.before(this._bindKeys,this,"bindUI"),this._initKeys()}var n=40,r=13,i=27,s=9,o=38;u.prototype={_initKeys:function(){var e={},t={};e[n]=this._keyDown,t[r]=this._keyEnter,t[i]=this._keyEsc,t[s]=this._keyTab,t[o]=this._keyUp,this._keys=e,this._keysVisible=t},destructor:function(){this._unbindKeys()},_bindKeys:function(){this._keyEvents=this._inputNode.on("keydown",this._onInputKey,this)},_unbindKeys:function(){this._keyEvents&&this._keyEvents.detach(),this._keyEvents=null},_keyDown:function(){this.get("visible")?this._activateNextItem():this.show()},_keyEnter:function(e){var t=this.get("activeItem");if(!t)return!1;this.selectItem(t,e)},_keyEsc:function(){this.hide()},_keyTab:function(e){var t;if(this.get("tabSelect")){t=this.get("activeItem");if(t)return this.selectItem(t,e),!0}return!1},_keyUp:function(){this._activatePrevItem()},_onInputKey:function(e){var t,n=e.keyCode;this._lastInputKey=n,this.get("results").length&&(t=this._keys[n],!t&&this.get("visible")&&(t=this._keysVisible[n]),t&&t.call(this,e)!==!1&&e.preventDefault())}},e.Base.mix(e.AutoCompleteList,[u])},"3.12.0",{requires:["autocomplete-list","base-build"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-list-keys/autocomplete-list-keys.js b/lib/yuilib/3.12.0/autocomplete-list-keys/autocomplete-list-keys.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/autocomplete-list-keys/autocomplete-list-keys.js rename to lib/yuilib/3.12.0/autocomplete-list-keys/autocomplete-list-keys.js index 70a55015bce..0b984f415c9 --- a/lib/yuilib/3.9.1/build/autocomplete-list-keys/autocomplete-list-keys.js +++ b/lib/yuilib/3.12.0/autocomplete-list-keys/autocomplete-list-keys.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('autocomplete-list-keys', function (Y, NAME) { /** @@ -184,4 +190,4 @@ ListKeys.prototype = { Y.Base.mix(Y.AutoCompleteList, [ListKeys]); -}, '3.9.1', {"requires": ["autocomplete-list", "base-build"]}); +}, '3.12.0', {"requires": ["autocomplete-list", "base-build"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-list/assets/autocomplete-list-core.css b/lib/yuilib/3.12.0/autocomplete-list/assets/autocomplete-list-core.css old mode 100644 new mode 100755 similarity index 76% rename from lib/yuilib/3.9.1/build/autocomplete-list/assets/autocomplete-list-core.css rename to lib/yuilib/3.12.0/autocomplete-list/assets/autocomplete-list-core.css index aa41a1b7f00..8418051bf65 --- a/lib/yuilib/3.9.1/build/autocomplete-list/assets/autocomplete-list-core.css +++ b/lib/yuilib/3.12.0/autocomplete-list/assets/autocomplete-list-core.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-aclist { position: absolute; z-index: 1; diff --git a/lib/yuilib/3.9.1/build/autocomplete-list/assets/skins/night/autocomplete-list-skin.css b/lib/yuilib/3.12.0/autocomplete-list/assets/skins/night/autocomplete-list-skin.css old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/autocomplete-list/assets/skins/night/autocomplete-list-skin.css rename to lib/yuilib/3.12.0/autocomplete-list/assets/skins/night/autocomplete-list-skin.css index 5b2f2c238d4..1f90a433fe5 --- a/lib/yuilib/3.9.1/build/autocomplete-list/assets/skins/night/autocomplete-list-skin.css +++ b/lib/yuilib/3.12.0/autocomplete-list/assets/skins/night/autocomplete-list-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-night [for=ac-input] { /* autocomplete label color */ color: #CBCBCB; } diff --git a/lib/yuilib/3.12.0/autocomplete-list/assets/skins/night/autocomplete-list.css b/lib/yuilib/3.12.0/autocomplete-list/assets/skins/night/autocomplete-list.css new file mode 100755 index 00000000000..f6f01a603c9 --- /dev/null +++ b/lib/yuilib/3.12.0/autocomplete-list/assets/skins/night/autocomplete-list.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-aclist{position:absolute;z-index:1}.yui3-aclist-hidden{visibility:hidden}.yui3-aclist-aria{left:-9999px;position:absolute}.yui3-aclist-list{list-style:none;margin:0;overflow:hidden;padding:0}.yui3-aclist-item{cursor:pointer;list-style:none;padding:2px 5px}.yui3-aclist-item-active{outline:#afafaf dotted thin}.yui3-skin-night [for=ac-input]{color:#cbcbcb}.yui3-skin-night .yui3-aclist-content{font-size:100%;background-color:#151515;color:#ccc;border:1px solid #303030;-moz-box-shadow:0 0 17px rgba(0,0,0,0.58);-webkit-box-shadow:0 0 17px rgba(0,0,0,0.58);box-shadow:0 0 17px rgba(0,0,0,0.58)}.yui3-skin-night .yui3-aclist-item-active{background-color:#2f3030;background:-moz-linear-gradient(0% 100% 90deg,#252626 0,#333434 100%);background:-webkit-gradient(linear,left top,left bottom,from(#333434),to(#252626))}.yui3-skin-night .yui3-aclist-item-hover{background-color:#262727;background:-moz-linear-gradient(0% 100% 90deg,#202121 0,#282929 100%);background:-webkit-gradient(linear,left top,left bottom,from(#282929),to(#202121))}.yui3-skin-night .yui3-aclist-item{padding:0 1em;line-height:2.25}.yui3-skin-night .yui3-aclist-item-active{outline:0}.yui3-skin-night .yui3-highlight{color:#efefef}#yui3-css-stamp.skin-night-autocomplete-list{display:none} diff --git a/lib/yuilib/3.9.1/build/autocomplete-list/assets/skins/sam/autocomplete-list-skin.css b/lib/yuilib/3.12.0/autocomplete-list/assets/skins/sam/autocomplete-list-skin.css old mode 100644 new mode 100755 similarity index 74% rename from lib/yuilib/3.9.1/build/autocomplete-list/assets/skins/sam/autocomplete-list-skin.css rename to lib/yuilib/3.12.0/autocomplete-list/assets/skins/sam/autocomplete-list-skin.css index b45a50c554b..5203b95a17c --- a/lib/yuilib/3.9.1/build/autocomplete-list/assets/skins/sam/autocomplete-list-skin.css +++ b/lib/yuilib/3.12.0/autocomplete-list/assets/skins/sam/autocomplete-list-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-sam .yui3-aclist-content { background: #fff; border: 1px solid #afafaf; diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/autocomplete-list.css b/lib/yuilib/3.12.0/autocomplete-list/assets/skins/sam/autocomplete-list.css old mode 100644 new mode 100755 similarity index 83% rename from lib/yuilib/3.9.1/build/assets/skins/sam/autocomplete-list.css rename to lib/yuilib/3.12.0/autocomplete-list/assets/skins/sam/autocomplete-list.css index 4db83232567..6bd56a8bf2d --- a/lib/yuilib/3.9.1/build/assets/skins/sam/autocomplete-list.css +++ b/lib/yuilib/3.12.0/autocomplete-list/assets/skins/sam/autocomplete-list.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-aclist{position:absolute;z-index:1}.yui3-aclist-hidden{visibility:hidden}.yui3-aclist-aria{left:-9999px;position:absolute}.yui3-aclist-list{list-style:none;margin:0;overflow:hidden;padding:0}.yui3-aclist-item{cursor:pointer;list-style:none;padding:2px 5px}.yui3-aclist-item-active{outline:#afafaf dotted thin}.yui3-skin-sam .yui3-aclist-content{background:#fff;border:1px solid #afafaf;-moz-box-shadow:1px 1px 4px rgba(0,0,0,0.58);-webkit-box-shadow:1px 1px 4px rgba(0,0,0,0.58);box-shadow:1px 1px 4px rgba(0,0,0,0.58)}.yui3-skin-sam .yui3-aclist-item-hover{background:#bfdaff}.yui3-skin-sam .yui3-aclist-item-active{background:#2647a0;color:#fff;outline:0}#yui3-css-stamp.skin-sam-autocomplete-list{display:none} diff --git a/lib/yuilib/3.9.1/build/autocomplete-list/autocomplete-list-debug.js b/lib/yuilib/3.12.0/autocomplete-list/autocomplete-list-debug.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/autocomplete-list/autocomplete-list-debug.js rename to lib/yuilib/3.12.0/autocomplete-list/autocomplete-list-debug.js index 513751b77bb..1dcaed7f9c6 --- a/lib/yuilib/3.9.1/build/autocomplete-list/autocomplete-list-debug.js +++ b/lib/yuilib/3.12.0/autocomplete-list/autocomplete-list-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('autocomplete-list', function (Y, NAME) { /** @@ -886,10 +892,12 @@ for API docs. Y.AutoComplete = List; -}, '3.9.1', { +}, '3.12.0', { "lang": [ "en", - "es" + "es", + "hu", + "it" ], "requires": [ "autocomplete-base", diff --git a/lib/yuilib/3.9.1/build/autocomplete-list/autocomplete-list-min.js b/lib/yuilib/3.12.0/autocomplete-list/autocomplete-list-min.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/autocomplete-list/autocomplete-list-min.js rename to lib/yuilib/3.12.0/autocomplete-list/autocomplete-list-min.js index 752e22feb86..895235d20fb --- a/lib/yuilib/3.9.1/build/autocomplete-list/autocomplete-list-min.js +++ b/lib/yuilib/3.12.0/autocomplete-list/autocomplete-list-min.js @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("autocomplete-list",function(e,t){var n=e.Lang,r=e.Node,i=e.Array,s=e.UA.ie&&e.UA.ie<7,o=9,u="_CLASS_ITEM",a="_CLASS_ITEM_ACTIVE",f="_CLASS_ITEM_HOVER",l="_SELECTOR_ITEM",c="activeItem",h="alwaysShowList",p="circular",d="hoveredItem",v="id",m="item",g="list",y="result",b="results",w="visible",E="width",S="select",x=e.Base.create("autocompleteList",e.Widget,[e.AutoCompleteBase,e.WidgetPosition,e.WidgetPositionAlign],{ARIA_TEMPLATE:"
    ",ITEM_TEMPLATE:"
  • ",LIST_TEMPLATE:"
      ",UI_EVENTS:function(){var t=e.merge(e.Node.DOM_EVENTS);return delete t.valuechange,delete t.valueChange,t}(),initializer:function(){var t=this.get("inputNode");if(!t){e.error("No inputNode specified.");return}this._inputNode=t,this._listEvents=[],this.DEF_PARENT_NODE=t.get("parentNode"),this[u]=this.getClassName(m),this[a]=this.getClassName(m,"active"),this[f]=this.getClassName(m,"hover"),this[l]="."+this[u],this.publish(S,{defaultFn:this._defSelectFn})},destructor:function(){while(this._listEvents.length)this._listEvents.pop().detach();this._ariaNode&&this._ariaNode.remove().destroy(!0)},bindUI:function(){this._bindInput(),this._bindList()},renderUI:function(){var t=this._createAriaNode(),n=this.get("boundingBox"),r=this.get("contentBox"),i=this._inputNode,o=this._createListNode(),u=i.get("parentNode");i.addClass(this.getClassName("input")).setAttrs({"aria-autocomplete":g,"aria-expanded":!1,"aria-owns":o.get("id")}),u.append(t),s&&n.plug(e.Plugin.Shim),this._ariaNode=t,this._boundingBox=n,this._contentBox=r,this._listNode=o,this._parentNode=u},syncUI:function(){this._syncResults(),this._syncVisibility()},hide:function(){return this.get(h)?this:this.set(w,!1)},selectItem:function(e,t){if(e){if(!e.hasClass(this[u]))return this}else{e=this.get(c);if(!e)return this}return this.fire(S,{itemNode:e,originEvent:t||null,result:e.getData(y)}),this},_activateNextItem:function(){var e=this.get(c),t;return e?t=e.next(this[l])||(this.get(p)?null:e):t=this._getFirstItemNode(),this.set(c,t),this},_activatePrevItem:function(){var e=this.get(c),t=e?e.previous(this[l]):this.get(p)&&this._getLastItemNode();return this.set(c,t||null),this},_add:function(t){var r=[];return i.each(n.isArray(t)?t:[t],function(e){r.push(this._createItemNode(e).setData(y,e))},this),r=e.all(r),this._listNode.append(r.toFrag()),r},_ariaSay:function(e,t){var r=this.get("strings."+e);this._ariaNode.set("text",t?n.sub(r,t):r)},_bindInput:function(){var e=this._inputNode,t,n,r;this.get("align")===null&&(r=this.get("tokenInput"),t=r&&r.get("boundingBox")||e,this.set("align",{node:t,points:["tl","bl"]}),!this.get(E)&&(n=t.get("offsetWidth"))&&this.set(E,n)),this._listEvents=this._listEvents.concat([e.after("blur",this._afterListInputBlur,this),e.after("focus",this._afterListInputFocus,this)])},_bindList:function(){this._listEvents=this._listEvents.concat([e.one("doc").after("click",this._afterDocClick,this),e.one("win").after("windowresize",this._syncPosition,this),this.after({mouseover:this._afterMouseOver,mouseout:this._afterMouseOut,activeItemChange:this._afterActiveItemChange,alwaysShowListChange:this._afterAlwaysShowListChange,hoveredItemChange:this._afterHoveredItemChange,resultsChange:this._afterResultsChange,visibleChange:this._afterVisibleChange}),this._listNode.delegate("click",this._onItemClick,this[l],this)])},_clear:function(){this.set(c,null),this._set(d,null),this._listNode.get("children").remove(!0)},_createAriaNode:function(){var e=r.create(this.ARIA_TEMPLATE);return e.addClass(this.getClassName("aria")).setAttrs({"aria-live":"polite",role:"status"})},_createItemNode:function(t){var n=r.create(this.ITEM_TEMPLATE);return n.addClass(this[u]).setAttrs({id:e.stamp(n),role:"option"}).setAttribute("data-text",t.text).append(t.display)},_createListNode:function(){var t=this.get("listNode")||r.create(this.LIST_TEMPLATE);return t.addClass(this.getClassName(g)).setAttrs({id:e.stamp(t),role:"listbox"}),this._set("listNode",t),this.get("contentBox").append(t),t},_getFirstItemNode:function(){return this._listNode.one(this[l])},_getLastItemNode:function(){return this._listNode.one(this[l]+":last-child")},_syncPosition:function(){this._syncUIPosAlign(),this._syncShim()},_syncResults:function(e){e||(e=this.get(b)),this._clear(),e.length&&(this._add(e),this._ariaSay("items_available")),this._syncPosition(),this.get("activateFirstItem")&&!this.get(c)&&this.set(c,this._getFirstItemNode())},_syncShim:s?function(){var e=this._boundingBox.shim;e&&e.sync()}:function(){},_syncVisibility:function(t){this.get(h)&&(t=!0,this.set(w,t)),typeof t=="undefined"&&(t=this.get(w)),this._inputNode.set("aria-expanded",t),this._boundingBox.set("aria-hidden",!t),t?this._syncPosition():(this.set(c,null),this._set(d,null),this._boundingBox.get("offsetWidth")),e.UA.ie===7&&e.one("body").addClass("yui3-ie7-sucks").removeClass("yui3-ie7-sucks")},_afterActiveItemChange:function(t){var n=this._inputNode,r=t.newVal,i=t.prevVal,s;i&&i._node&&i.removeClass(this[a]),r?(r.addClass(this[a]),n.set("aria-activedescendant",r.get(v))):n.removeAttribute("aria-activedescendant"),this.get("scrollIntoView")&&(s=r||n,(!s.inRegion(e.DOM.viewportRegion(),!0)||!s.inRegion(this._contentBox,!0))&&s.scrollIntoView())},_afterAlwaysShowListChange:function(e){this.set(w,e.newVal||this.get(b).length>0)},_afterDocClick:function(e){var t=this._boundingBox,n=e.target;n!==this._inputNode&&n!==t&&n.ancestor("#"+t.get("id"),!0)&&this.hide()},_afterHoveredItemChange:function(e){var t=e.newVal,n=e.prevVal;n&&n.removeClass(this[f]),t&&t.addClass(this[f])},_afterListInputBlur:function(){this._listInputFocused=!1,this.get(w)&&!this._mouseOverList&&(this._lastInputKey!==o||!this.get("tabSelect")||!this.get(c))&&this.hide()},_afterListInputFocus:function(){this._listInputFocused=!0},_afterMouseOver:function(e){var t=e.domEvent.target.ancestor(this[l],!0);this._mouseOverList=!0,t&&this._set(d,t)},_afterMouseOut:function(){this._mouseOverList=!1,this._set(d,null)},_afterResultsChange:function(e){this._syncResults(e.newVal -),this.get(h)||this.set(w,!!e.newVal.length)},_afterVisibleChange:function(e){this._syncVisibility(!!e.newVal)},_onItemClick:function(e){var t=e.currentTarget;this.set(c,t),this.selectItem(t,e)},_defSelectFn:function(e){var t=e.result.text;this._inputNode.focus(),this._updateValue(t),this._ariaSay("item_selected",{item:t}),this.hide()}},{ATTRS:{activateFirstItem:{value:!1},activeItem:{setter:e.one,value:null},alwaysShowList:{value:!1},circular:{value:!0},hoveredItem:{readOnly:!0,value:null},listNode:{writeOnce:"initOnly",value:null},scrollIntoView:{value:!1},strings:{valueFn:function(){return e.Intl.get("autocomplete-list")}},tabSelect:{value:!0},visible:{value:!1}},CSS_PREFIX:e.ClassNameManager.getClassName("aclist")});e.AutoCompleteList=x,e.AutoComplete=x},"3.9.1",{lang:["en","es"],requires:["autocomplete-base","event-resize","node-screen","selector-css3","shim-plugin","widget","widget-position","widget-position-align"],skinnable:!0}); +),this.get(h)||this.set(w,!!e.newVal.length)},_afterVisibleChange:function(e){this._syncVisibility(!!e.newVal)},_onItemClick:function(e){var t=e.currentTarget;this.set(c,t),this.selectItem(t,e)},_defSelectFn:function(e){var t=e.result.text;this._inputNode.focus(),this._updateValue(t),this._ariaSay("item_selected",{item:t}),this.hide()}},{ATTRS:{activateFirstItem:{value:!1},activeItem:{setter:e.one,value:null},alwaysShowList:{value:!1},circular:{value:!0},hoveredItem:{readOnly:!0,value:null},listNode:{writeOnce:"initOnly",value:null},scrollIntoView:{value:!1},strings:{valueFn:function(){return e.Intl.get("autocomplete-list")}},tabSelect:{value:!0},visible:{value:!1}},CSS_PREFIX:e.ClassNameManager.getClassName("aclist")});e.AutoCompleteList=x,e.AutoComplete=x},"3.12.0",{lang:["en","es","hu","it"],requires:["autocomplete-base","event-resize","node-screen","selector-css3","shim-plugin","widget","widget-position","widget-position-align"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-list/autocomplete-list.js b/lib/yuilib/3.12.0/autocomplete-list/autocomplete-list.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/autocomplete-list/autocomplete-list.js rename to lib/yuilib/3.12.0/autocomplete-list/autocomplete-list.js index 513751b77bb..1dcaed7f9c6 --- a/lib/yuilib/3.9.1/build/autocomplete-list/autocomplete-list.js +++ b/lib/yuilib/3.12.0/autocomplete-list/autocomplete-list.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('autocomplete-list', function (Y, NAME) { /** @@ -886,10 +892,12 @@ for API docs. Y.AutoComplete = List; -}, '3.9.1', { +}, '3.12.0', { "lang": [ "en", - "es" + "es", + "hu", + "it" ], "requires": [ "autocomplete-base", diff --git a/lib/yuilib/3.9.1/build/autocomplete-list/lang/autocomplete-list.js b/lib/yuilib/3.12.0/autocomplete-list/lang/autocomplete-list.js old mode 100644 new mode 100755 similarity index 51% rename from lib/yuilib/3.9.1/build/autocomplete-list/lang/autocomplete-list.js rename to lib/yuilib/3.12.0/autocomplete-list/lang/autocomplete-list.js index 40593841832..6ca3cdf0c9a --- a/lib/yuilib/3.9.1/build/autocomplete-list/lang/autocomplete-list.js +++ b/lib/yuilib/3.12.0/autocomplete-list/lang/autocomplete-list.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/autocomplete-list",function(e){e.Intl.add("autocomplete-list","",{item_selected:"{item} selected.",items_available:"Suggestions are available. Use the up and down arrow keys to select suggestions."})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/autocomplete-list",function(e){e.Intl.add("autocomplete-list","",{item_selected:"{item} selected.",items_available:"Suggestions are available. Use the up and down arrow keys to select suggestions."})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/autocomplete-list/lang/autocomplete-list_en.js b/lib/yuilib/3.12.0/autocomplete-list/lang/autocomplete-list_en.js old mode 100644 new mode 100755 similarity index 53% rename from lib/yuilib/3.9.1/build/autocomplete-list/lang/autocomplete-list_en.js rename to lib/yuilib/3.12.0/autocomplete-list/lang/autocomplete-list_en.js index 11db0f4218d..b6f0f074c0e --- a/lib/yuilib/3.9.1/build/autocomplete-list/lang/autocomplete-list_en.js +++ b/lib/yuilib/3.12.0/autocomplete-list/lang/autocomplete-list_en.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/autocomplete-list_en",function(e){e.Intl.add("autocomplete-list","en",{item_selected:"{item} selected.",items_available:"Suggestions are available. Use up and down arrows to select."})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/autocomplete-list_en",function(e){e.Intl.add("autocomplete-list","en",{item_selected:"{item} selected.",items_available:"Suggestions are available. Use up and down arrows to select."})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/autocomplete-list/lang/autocomplete-list_es.js b/lib/yuilib/3.12.0/autocomplete-list/lang/autocomplete-list_es.js old mode 100644 new mode 100755 similarity index 51% rename from lib/yuilib/3.9.1/build/autocomplete-list/lang/autocomplete-list_es.js rename to lib/yuilib/3.12.0/autocomplete-list/lang/autocomplete-list_es.js index 82825558ac4..3dea56e87a5 --- a/lib/yuilib/3.9.1/build/autocomplete-list/lang/autocomplete-list_es.js +++ b/lib/yuilib/3.12.0/autocomplete-list/lang/autocomplete-list_es.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/autocomplete-list_es",function(e){e.Intl.add("autocomplete-list","es",{item_selected:"{item} seleccionado.",items_available:"Hay sugerencias disponibles. Use flecha arriba y abajo para seleccionar."})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/autocomplete-list_es",function(e){e.Intl.add("autocomplete-list","es",{item_selected:"{item} seleccionado.",items_available:"Hay sugerencias disponibles. Use flecha arriba y abajo para seleccionar."})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/autocomplete-list/lang/autocomplete-list_hu.js b/lib/yuilib/3.12.0/autocomplete-list/lang/autocomplete-list_hu.js new file mode 100755 index 00000000000..d852c50cd31 --- /dev/null +++ b/lib/yuilib/3.12.0/autocomplete-list/lang/autocomplete-list_hu.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/autocomplete-list_hu",function(e){e.Intl.add("autocomplete-list","hu",{item_selected:"{item} kiv\u00e1lasztva.",items_available:"Javaslatok \u00e1llnak rendelkez\u00e9sre. Haszn\u00e1lja a fel \u00e9s le nyilakat a v\u00e1laszt\u00e1shoz."})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/autocomplete-list/lang/autocomplete-list_it.js b/lib/yuilib/3.12.0/autocomplete-list/lang/autocomplete-list_it.js new file mode 100755 index 00000000000..42fcf4f4c5f --- /dev/null +++ b/lib/yuilib/3.12.0/autocomplete-list/lang/autocomplete-list_it.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/autocomplete-list_it",function(e){e.Intl.add("autocomplete-list","it",{item_selected:"{item} selezionato.",items_available:"Sono disponibili suggerimenti. Usa la freccia su e gi\u00f9 per selezionare."})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/autocomplete-plugin/autocomplete-plugin-debug.js b/lib/yuilib/3.12.0/autocomplete-plugin/autocomplete-plugin-debug.js old mode 100644 new mode 100755 similarity index 82% rename from lib/yuilib/3.9.1/build/autocomplete-plugin/autocomplete-plugin-debug.js rename to lib/yuilib/3.12.0/autocomplete-plugin/autocomplete-plugin-debug.js index 2fd9c3097b8..210c58183c7 --- a/lib/yuilib/3.9.1/build/autocomplete-plugin/autocomplete-plugin-debug.js +++ b/lib/yuilib/3.12.0/autocomplete-plugin/autocomplete-plugin-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('autocomplete-plugin', function (Y, NAME) { /** @@ -46,4 +52,4 @@ Plugin.AutoComplete = ACListPlugin; Plugin.AutoCompleteList = ACListPlugin; -}, '3.9.1', {"requires": ["autocomplete-list", "node-pluginhost"]}); +}, '3.12.0', {"requires": ["autocomplete-list", "node-pluginhost"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-plugin/autocomplete-plugin-min.js b/lib/yuilib/3.12.0/autocomplete-plugin/autocomplete-plugin-min.js old mode 100644 new mode 100755 similarity index 57% rename from lib/yuilib/3.9.1/build/autocomplete-plugin/autocomplete-plugin-min.js rename to lib/yuilib/3.12.0/autocomplete-plugin/autocomplete-plugin-min.js index 746b14e3300..6fdb0acde0e --- a/lib/yuilib/3.9.1/build/autocomplete-plugin/autocomplete-plugin-min.js +++ b/lib/yuilib/3.12.0/autocomplete-plugin/autocomplete-plugin-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("autocomplete-plugin",function(e,t){function r(e){e.inputNode=e.host,!e.render&&e.render!==!1&&(e.render=!0),r.superclass.constructor.apply(this,arguments)}var n=e.Plugin;e.extend(r,e.AutoCompleteList,{},{NAME:"autocompleteListPlugin",NS:"ac",CSS_PREFIX:e.ClassNameManager.getClassName("aclist")}),n.AutoComplete=r,n.AutoCompleteList=r},"3.9.1",{requires:["autocomplete-list","node-pluginhost"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("autocomplete-plugin",function(e,t){function r(e){e.inputNode=e.host,!e.render&&e.render!==!1&&(e.render=!0),r.superclass.constructor.apply(this,arguments)}var n=e.Plugin;e.extend(r,e.AutoCompleteList,{},{NAME:"autocompleteListPlugin",NS:"ac",CSS_PREFIX:e.ClassNameManager.getClassName("aclist")}),n.AutoComplete=r,n.AutoCompleteList=r},"3.12.0",{requires:["autocomplete-list","node-pluginhost"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-plugin/autocomplete-plugin.js b/lib/yuilib/3.12.0/autocomplete-plugin/autocomplete-plugin.js old mode 100644 new mode 100755 similarity index 82% rename from lib/yuilib/3.9.1/build/autocomplete-plugin/autocomplete-plugin.js rename to lib/yuilib/3.12.0/autocomplete-plugin/autocomplete-plugin.js index 2fd9c3097b8..210c58183c7 --- a/lib/yuilib/3.9.1/build/autocomplete-plugin/autocomplete-plugin.js +++ b/lib/yuilib/3.12.0/autocomplete-plugin/autocomplete-plugin.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('autocomplete-plugin', function (Y, NAME) { /** @@ -46,4 +52,4 @@ Plugin.AutoComplete = ACListPlugin; Plugin.AutoCompleteList = ACListPlugin; -}, '3.9.1', {"requires": ["autocomplete-list", "node-pluginhost"]}); +}, '3.12.0', {"requires": ["autocomplete-list", "node-pluginhost"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-sources/autocomplete-sources-debug.js b/lib/yuilib/3.12.0/autocomplete-sources/autocomplete-sources-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/autocomplete-sources/autocomplete-sources-debug.js rename to lib/yuilib/3.12.0/autocomplete-sources/autocomplete-sources-debug.js index 94b8a2ca5f7..37be5d99b98 --- a/lib/yuilib/3.9.1/build/autocomplete-sources/autocomplete-sources-debug.js +++ b/lib/yuilib/3.12.0/autocomplete-sources/autocomplete-sources-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('autocomplete-sources', function (Y, NAME) { /** @@ -473,4 +479,4 @@ Y.mix(ACBase.SOURCE_TYPES, { }, true); -}, '3.9.1', {"optional": ["io-base", "json-parse", "jsonp", "yql"], "requires": ["autocomplete-base"]}); +}, '3.12.0', {"optional": ["io-base", "json-parse", "jsonp", "yql"], "requires": ["autocomplete-base"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-sources/autocomplete-sources-min.js b/lib/yuilib/3.12.0/autocomplete-sources/autocomplete-sources-min.js old mode 100644 new mode 100755 similarity index 92% rename from lib/yuilib/3.9.1/build/autocomplete-sources/autocomplete-sources-min.js rename to lib/yuilib/3.12.0/autocomplete-sources/autocomplete-sources-min.js index 32686822816..de9cf303ed5 --- a/lib/yuilib/3.9.1/build/autocomplete-sources/autocomplete-sources-min.js +++ b/lib/yuilib/3.12.0/autocomplete-sources/autocomplete-sources-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("autocomplete-sources",function(e,t){var n=e.AutoCompleteBase,r=e.Lang,i="_sourceSuccess",s="maxResults",o="requestTemplate",u="resultListLocator";e.mix(n.prototype,{_YQL_SOURCE_REGEX:/^(?:select|set|use)\s+/i,_beforeCreateObjectSource:function(t){return t instanceof e.Node&&t.get("nodeName").toLowerCase()==="select"?this._createSelectSource(t):e.JSONPRequest&&t instanceof e.JSONPRequest?this._createJSONPSource(t):this._createObjectSource(t)},_createIOSource:function(t){function a(n){var o=n.request;if(r._cache&&o in r._cache){r[i](r._cache[o],n);return}s&&s.isInProgress()&&s.abort(),s=e.io(r._getXHRUrl(t,n),{on:{success:function(t,s){var u;try{u=e.JSON.parse(s.responseText)}catch(a){e.error("JSON parse error",a)}u&&(r._cache&&(r._cache[o]=u),r[i](u,n))}}})}var n={type:"io"},r=this,s,o,u;return n.sendRequest=function(t){o=t;if(u)return;u=!0,e.use("io-base","json-parse",function(){n.sendRequest=a,a(o)})},n},_createJSONPSource:function(t){function u(e){var n=e.request,s=e.query;if(r._cache&&n in r._cache){r[i](r._cache[n],e);return}t._config.on.success=function(t){r._cache&&(r._cache[n]=t),r[i](t,e)},t.send(s)}var n={type:"jsonp"},r=this,s,o;return n.sendRequest=function(i){s=i;if(o)return;o=!0,e.use("jsonp",function(){t instanceof e.JSONPRequest||(t=new e.JSONPRequest(t,{format:e.bind(r._jsonpFormatter,r)})),n.sendRequest=u,u(s)})},n},_createSelectSource:function(e){var t=this;return{type:"select",sendRequest:function(n){var r=[];e.get("options").each(function(e){r.push({html:e.get("innerHTML"),index:e.get("index"),node:e,selected:e.get("selected"),text:e.get("text"),value:e.get("value")})}),t[i](r,n)}}},_createStringSource:function(e){return this._YQL_SOURCE_REGEX.test(e)?this._createYQLSource(e):e.indexOf("{callback}")!==-1?this._createJSONPSource(e):this._createIOSource(e)},_createYQLSource:function(t){function c(o){var u=o.query,a=n.get("yqlEnv"),f=n.get(s),c,h,p;p=r.sub(t,{maxResults:f>0?f:1e3,request:o.request,query:u});if(n._cache&&p in n._cache){n[i](n._cache[p],o);return}c=function(e){n._cache&&(n._cache[p]=e),n[i](e,o)},h={proto:n.get("yqlProtocol")},l?(l._callback=c,l._opts=h,l._params.q=p,a&&(l._params.env=a)):l=new e.YQLRequest(p,{on:{success:c},allowCache:!1},a?{env:a}:null,h),l.send()}var n=this,o={type:"yql"},a,f,l;return n.get(u)||n.set(u,n._defaultYQLLocator),o.sendRequest=function(t){a=t,f||(f=!0,e.use("yql",function(){o.sendRequest=c,c(a)}))},o},_defaultYQLLocator:function(t){var n=t&&t.query&&t.query.results,i;return n&&r.isObject(n)?(i=e.Object.values(n)||[],n=i.length===1?i[0]:i,r.isArray(n)||(n=[n])):n=[],n},_getXHRUrl:function(e,t){var n=this.get(s);return t.query!==t.request&&(e+=t.request),r.sub(e,{maxResults:n>0?n:1e3,query:encodeURIComponent(t.query)})},_jsonpFormatter:function(e,t,n){var i=this.get(s),u=this.get(o);return u&&(e+=u(n)),r.sub(e,{callback:t,maxResults:i>0?i:1e3,query:encodeURIComponent(n)})}}),e.mix(n.ATTRS,{yqlEnv:{value:null},yqlProtocol:{value:"http"}}),e.mix(n.SOURCE_TYPES,{io:"_createIOSource",jsonp:"_createJSONPSource",object:"_beforeCreateObjectSource",select:"_createSelectSource",string:"_createStringSource",yql:"_createYQLSource"},!0)},"3.9.1",{optional:["io-base","json-parse","jsonp","yql"],requires:["autocomplete-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("autocomplete-sources",function(e,t){var n=e.AutoCompleteBase,r=e.Lang,i="_sourceSuccess",s="maxResults",o="requestTemplate",u="resultListLocator";e.mix(n.prototype,{_YQL_SOURCE_REGEX:/^(?:select|set|use)\s+/i,_beforeCreateObjectSource:function(t){return t instanceof e.Node&&t.get("nodeName").toLowerCase()==="select"?this._createSelectSource(t):e.JSONPRequest&&t instanceof e.JSONPRequest?this._createJSONPSource(t):this._createObjectSource(t)},_createIOSource:function(t){function a(n){var o=n.request;if(r._cache&&o in r._cache){r[i](r._cache[o],n);return}s&&s.isInProgress()&&s.abort(),s=e.io(r._getXHRUrl(t,n),{on:{success:function(t,s){var u;try{u=e.JSON.parse(s.responseText)}catch(a){e.error("JSON parse error",a)}u&&(r._cache&&(r._cache[o]=u),r[i](u,n))}}})}var n={type:"io"},r=this,s,o,u;return n.sendRequest=function(t){o=t;if(u)return;u=!0,e.use("io-base","json-parse",function(){n.sendRequest=a,a(o)})},n},_createJSONPSource:function(t){function u(e){var n=e.request,s=e.query;if(r._cache&&n in r._cache){r[i](r._cache[n],e);return}t._config.on.success=function(t){r._cache&&(r._cache[n]=t),r[i](t,e)},t.send(s)}var n={type:"jsonp"},r=this,s,o;return n.sendRequest=function(i){s=i;if(o)return;o=!0,e.use("jsonp",function(){t instanceof e.JSONPRequest||(t=new e.JSONPRequest(t,{format:e.bind(r._jsonpFormatter,r)})),n.sendRequest=u,u(s)})},n},_createSelectSource:function(e){var t=this;return{type:"select",sendRequest:function(n){var r=[];e.get("options").each(function(e){r.push({html:e.get("innerHTML"),index:e.get("index"),node:e,selected:e.get("selected"),text:e.get("text"),value:e.get("value")})}),t[i](r,n)}}},_createStringSource:function(e){return this._YQL_SOURCE_REGEX.test(e)?this._createYQLSource(e):e.indexOf("{callback}")!==-1?this._createJSONPSource(e):this._createIOSource(e)},_createYQLSource:function(t){function c(o){var u=o.query,a=n.get("yqlEnv"),f=n.get(s),c,h,p;p=r.sub(t,{maxResults:f>0?f:1e3,request:o.request,query:u});if(n._cache&&p in n._cache){n[i](n._cache[p],o);return}c=function(e){n._cache&&(n._cache[p]=e),n[i](e,o)},h={proto:n.get("yqlProtocol")},l?(l._callback=c,l._opts=h,l._params.q=p,a&&(l._params.env=a)):l=new e.YQLRequest(p,{on:{success:c},allowCache:!1},a?{env:a}:null,h),l.send()}var n=this,o={type:"yql"},a,f,l;return n.get(u)||n.set(u,n._defaultYQLLocator),o.sendRequest=function(t){a=t,f||(f=!0,e.use("yql",function(){o.sendRequest=c,c(a)}))},o},_defaultYQLLocator:function(t){var n=t&&t.query&&t.query.results,i;return n&&r.isObject(n)?(i=e.Object.values(n)||[],n=i.length===1?i[0]:i,r.isArray(n)||(n=[n])):n=[],n},_getXHRUrl:function(e,t){var n=this.get(s);return t.query!==t.request&&(e+=t.request),r.sub(e,{maxResults:n>0?n:1e3,query:encodeURIComponent(t.query)})},_jsonpFormatter:function(e,t,n){var i=this.get(s),u=this.get(o);return u&&(e+=u(n)),r.sub(e,{callback:t,maxResults:i>0?i:1e3,query:encodeURIComponent(n)})}}),e.mix(n.ATTRS,{yqlEnv:{value:null},yqlProtocol:{value:"http"}}),e.mix(n.SOURCE_TYPES,{io:"_createIOSource",jsonp:"_createJSONPSource",object:"_beforeCreateObjectSource",select:"_createSelectSource",string:"_createStringSource",yql:"_createYQLSource"},!0)},"3.12.0",{optional:["io-base","json-parse","jsonp","yql"],requires:["autocomplete-base"]}); diff --git a/lib/yuilib/3.9.1/build/autocomplete-sources/autocomplete-sources.js b/lib/yuilib/3.12.0/autocomplete-sources/autocomplete-sources.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/autocomplete-sources/autocomplete-sources.js rename to lib/yuilib/3.12.0/autocomplete-sources/autocomplete-sources.js index 94b8a2ca5f7..37be5d99b98 --- a/lib/yuilib/3.9.1/build/autocomplete-sources/autocomplete-sources.js +++ b/lib/yuilib/3.12.0/autocomplete-sources/autocomplete-sources.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('autocomplete-sources', function (Y, NAME) { /** @@ -473,4 +479,4 @@ Y.mix(ACBase.SOURCE_TYPES, { }, true); -}, '3.9.1', {"optional": ["io-base", "json-parse", "jsonp", "yql"], "requires": ["autocomplete-base"]}); +}, '3.12.0', {"optional": ["io-base", "json-parse", "jsonp", "yql"], "requires": ["autocomplete-base"]}); diff --git a/lib/yuilib/3.9.1/build/axis-base/axis-base-debug.js b/lib/yuilib/3.12.0/axis-base/axis-base-debug.js old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/axis-base/axis-base-debug.js rename to lib/yuilib/3.12.0/axis-base/axis-base-debug.js index aa2745a980c..ef4a4522add --- a/lib/yuilib/3.9.1/build/axis-base/axis-base-debug.js +++ b/lib/yuilib/3.12.0/axis-base/axis-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('axis-base', function (Y, NAME) { /** @@ -173,6 +179,16 @@ Y.AxisBase = Y.Base.create("axisBase", Y.Base, [Y.Renderer], { this.after("dataProviderChange", this._dataProviderChangeHandler); }, + /** + * Returns the value corresponding to the origin on the axis. + * + * @method getOrigin + * @return Number + */ + getOrigin: function() { + return this.get("minimum"); + }, + /** * Handles changes to `dataProvider`. * @@ -434,7 +450,7 @@ Y.AxisBase = Y.Base.create("axisBase", Y.Base, [Y.Renderer], { { var edgeOffset; if(this.get("calculateEdgeOffset")) { - edgeOffset = l/ct; + edgeOffset = (l/ct)/2; } else { edgeOffset = 0; } @@ -554,6 +570,60 @@ Y.AxisBase = Y.Base.create("axisBase", Y.Base, [Y.Renderer], { return Y_Lang.isNumber(this._setMaximum); }, + + /** + * Returns and array of coordinates corresponding to an array of data values. + * + * @method _getCoordsFromValues + * @param {Number} min The minimum for the axis. + * @param {Number} max The maximum for the axis. + * @param {length} length The distance that the axis spans. + * @param {Array} dataValues An array of values. + * @param {Number} offset Value in which to offset the coordinates. + * @param {Boolean} reverse Indicates whether the coordinates should start from + * the end of an axis. Only used in the numeric implementation. + * @return Array + * @private + */ + _getCoordsFromValues: function(min, max, length, dataValues, offset, reverse) + { + var i, + valuecoords = [], + len = dataValues.length; + for(i = 0; i < len; i = i + 1) + { + valuecoords.push(this._getCoordFromValue.apply(this, [min, max, length, dataValues[i], offset, reverse])); + } + return valuecoords; + }, + + /** + * Returns and array of data values based on the axis' range and number of values. + * + * @method _getDataValuesByCount + * @param {Number} count The number of values to be used. + * @param {Number} min The minimum value of the axis. + * @param {Number} max The maximum value of the axis. + * @return Array + * @private + */ + _getDataValuesByCount: function(count, min, max) + { + var dataValues = [], + dataValue = min, + len = count - 1, + range = max - min, + increm = range/len, + i; + for(i = 0; i < len; i = i + 1) + { + dataValues.push(dataValue); + dataValue = dataValue + increm; + } + dataValues.push(max); + return dataValues; + }, + /** * Indicates whether or not the minimum attribute has been explicitly set. * @@ -805,4 +875,4 @@ Y.AxisBase = Y.Base.create("axisBase", Y.Base, [Y.Renderer], { }); -}, '3.9.1', {"requires": ["classnamemanager", "datatype-number", "datatype-date", "base", "event-custom"]}); +}, '3.12.0', {"requires": ["classnamemanager", "datatype-number", "datatype-date", "base", "event-custom"]}); diff --git a/lib/yuilib/3.12.0/axis-base/axis-base-min.js b/lib/yuilib/3.12.0/axis-base/axis-base-min.js new file mode 100755 index 00000000000..88bfb875b75 --- /dev/null +++ b/lib/yuilib/3.12.0/axis-base/axis-base-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("axis-base",function(e,t){function r(){}var n=e.Lang;r.ATTRS={styles:{getter:function(){return this._styles=this._styles||this._getDefaultStyles(),this._styles},setter:function(e){this._styles=this._setStyles(e)}},graphic:{}},r.NAME="renderer",r.prototype={_styles:null,_setStyles:function(e){var t=this.get("styles");return this._mergeStyles(e,t)},_mergeStyles:function(t,r){r||(r={});var i=e.merge(r,{});return e.Object.each(t,function(e,t){r.hasOwnProperty(t)&&n.isObject(e)&&!n.isFunction(e)&&!n.isArray(e)?i[t]=this._mergeStyles(e,r[t]):i[t]=e},this),i},_getDefaultStyles:function(){return{padding:{top:0,right:0,bottom:0,left:0}}}},e.augment(r,e.Attribute),e.Renderer=r,e.AxisBase=e.Base.create("axisBase",e.Base,[e.Renderer],{initializer:function(){this.after("minimumChange",e.bind(this._keyChangeHandler,this)),this.after("maximumChange",e.bind(this._keyChangeHandler,this)),this.after("keysChange",this._keyChangeHandler),this.after("dataProviderChange",this._dataProviderChangeHandler)},getOrigin:function(){return this.get("minimum")},_dataProviderChangeHandler:function(){var e=this.get("keyCollection").concat(),t=this.get("keys"),n;if(t)for(n in t)t.hasOwnProperty(n)&&delete t[n];e&&e.length&&this.set("keys",e)},_updateMinAndMax:function(){},GUID:"yuibaseaxis",_type:null,_setMaximum:null,_setMinimum:null,_data:null,_updateTotalDataFlag:!0,_dataReady:!1,addKey:function(e){this.set("keys",e)},_getKeyArray:function(e,t){var n=0,r,i=[],s=t.length;for(;n -1) + { + point = {}; + point[staticCoord] = constantVal; + point[dynamicCoord] = this._getCoordFromValue( + min, + max, + layoutLength, + labelIndex, + offset + ); + points.push(point); + values.push(labelValue); + } + } + return { + points: points, + values: values + }; + } +}); + + + +}, '3.12.0', {"requires": ["axis", "axis-category-base"]}); diff --git a/lib/yuilib/3.12.0/axis-category/axis-category-min.js b/lib/yuilib/3.12.0/axis-category/axis-category-min.js new file mode 100755 index 00000000000..9d126cebab4 --- /dev/null +++ b/lib/yuilib/3.12.0/axis-category/axis-category-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("axis-category",function(e,t){var n=e.Lang;e.CategoryAxis=e.Base.create("categoryAxis",e.Axis,[e.CategoryImpl],{getMinimumValue:function(){var e=this.get("data"),t=e[0];return t},getMaximumValue:function(){var e=this.get("data"),t=e.length-1,n=e[t];return n},_getLabelByIndex:function(e){var t,n=this.get("data");return t=n[e],t},_getLabelData:function(t,r,i,s,o,u,a,f,l){var c,h,p=[],d=[],v,m,g=this.get("data"),y=u;l=l||g;for(h=0;h-1&&(v={},v[r]=t,v[i]=this._getCoordFromValue(s,o,a,m,y),p.push(v),d.push(c));return{points:p,values:d}}})},"3.12.0",{requires:["axis","axis-category-base"]}); diff --git a/lib/yuilib/3.12.0/axis-category/axis-category.js b/lib/yuilib/3.12.0/axis-category/axis-category.js new file mode 100755 index 00000000000..814cb882114 --- /dev/null +++ b/lib/yuilib/3.12.0/axis-category/axis-category.js @@ -0,0 +1,126 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('axis-category', function (Y, NAME) { + +/** + * Provides functionality for drawing a category axis for use with a chart. + * + * @module charts + * @submodule axis-category + */ +var Y_Lang = Y.Lang; +/** + * CategoryAxis draws a category axis for a chart. + * + * @class CategoryAxis + * @constructor + * @extends Axis + * @uses CategoryImpl + * @param {Object} config (optional) Configuration parameters. + * @submodule axis-category + */ +Y.CategoryAxis = Y.Base.create("categoryAxis", Y.Axis, [Y.CategoryImpl], { + /** + * Returns a string corresponding to the first label on an + * axis. + * + * @method getMinimumValue + * @return String + */ + getMinimumValue: function() + { + var data = this.get("data"), + label = data[0]; + return label; + }, + + /** + * Returns a string corresponding to the last label on an + * axis. + * + * @method getMaximumValue + * @return String + */ + getMaximumValue: function() + { + var data = this.get("data"), + len = data.length - 1, + label = data[len]; + return label; + }, + + /** + * Calculates and returns a value based on the number of labels and the index of + * the current label. + * + * @method _getLabelByIndex + * @param {Number} i Index of the label. + * @return String + * @private + */ + _getLabelByIndex: function(i) + { + var label, + data = this.get("data"); + label = data[i]; + return label; + }, + + /** + * Returns an object literal containing and array of label values and an array of points. + * + * @method _getLabelData + * @param {Object} startPoint An object containing x and y values. + * @param {Number} edgeOffset Distance to offset coordinates. + * @param {Number} layoutLength Distance that the axis spans. + * @param {Number} count Number of labels. + * @param {String} direction Indicates whether the axis is horizontal or vertical. + * @param {Array} Array containing values for axis labels. + * @return Array + * @private + */ + _getLabelData: function(constantVal, staticCoord, dynamicCoord, min, max, edgeOffset, layoutLength, count, dataValues) + { + var labelValue, + i, + points = [], + values = [], + point, + labelIndex, + data = this.get("data"), + offset = edgeOffset; + dataValues = dataValues || data; + for(i = 0; i < count; i = i + 1) + { + labelValue = dataValues[i]; + labelIndex = Y.Array.indexOf(data, labelValue); + if(Y_Lang.isNumber(labelIndex) && labelIndex > -1) + { + point = {}; + point[staticCoord] = constantVal; + point[dynamicCoord] = this._getCoordFromValue( + min, + max, + layoutLength, + labelIndex, + offset + ); + points.push(point); + values.push(labelValue); + } + } + return { + points: points, + values: values + }; + } +}); + + + +}, '3.12.0', {"requires": ["axis", "axis-category-base"]}); diff --git a/lib/yuilib/3.9.1/build/axis-numeric-base/axis-numeric-base-debug.js b/lib/yuilib/3.12.0/axis-numeric-base/axis-numeric-base-debug.js old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/axis-numeric-base/axis-numeric-base-debug.js rename to lib/yuilib/3.12.0/axis-numeric-base/axis-numeric-base-debug.js index 9aa208e79d8..193de60ddd4 --- a/lib/yuilib/3.9.1/build/axis-numeric-base/axis-numeric-base-debug.js +++ b/lib/yuilib/3.12.0/axis-numeric-base/axis-numeric-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('axis-numeric-base', function (Y, NAME) { /** @@ -7,6 +13,7 @@ YUI.add('axis-numeric-base', function (Y, NAME) { * @module charts * @submodule axis-numeric-base */ +var Y_Lang = Y.Lang; /** * NumericImpl contains logic for numeric data. NumericImpl is used by the following classes: @@ -83,6 +90,18 @@ NumericImpl.ATTRS = { */ roundingMethod: { value: "niceNumber" + }, + + /** + * Indicates the scaling for the chart. The default value is `linear`. For a logarithmic axis, set the value + * to `logarithmic`. + * + * @attribute + * @type String + * @default linear + */ + scaleType: { + value: "linear" } }; @@ -94,6 +113,7 @@ NumericImpl.prototype = { initializer: function() { this.after("alwaysShowZeroChange", this._keyChangeHandler); this.after("roundingMethodChange", this._keyChangeHandler); + this.after("scaleTypeChange", this._keyChangeHandler); }, /** @@ -138,6 +158,21 @@ NumericImpl.prototype = { return total; }, + /** + * Returns the value corresponding to the origin on the axis. + * + * @method getOrigin + * @return Number + */ + getOrigin: function() { + var origin = 0, + min = this.get("minimum"), + max = this.get("maximum"); + origin = Math.max(origin, min); + origin = Math.min(origin, max); + return origin; + }, + /** * Type of data used in `Data`. * @@ -254,7 +289,15 @@ NumericImpl.prototype = { this._actualMinimum = min; } } - this._roundMinAndMax(min, max, setMin, setMax); + if(this.get("scaleType") !== "logarithmic") + { + this._roundMinAndMax(min, max, setMin, setMax); + } + else + { + this._dataMaximum = max; + this._dataMinimum = min; + } } }, @@ -607,6 +650,47 @@ NumericImpl.prototype = { nearest = nearest || 1; return Math.floor(this._roundToPrecision(number / nearest, 10)) * nearest; }, + + /** + * Returns a coordinate corresponding to a data values. + * + * @method _getCoordFromValue + * @param {Number} min The minimum for the axis. + * @param {Number} max The maximum for the axis. + * @param {length} length The distance that the axis spans. + * @param {Number} dataValue A value used to ascertain the coordinate. + * @param {Number} offset Value in which to offset the coordinates. + * @param {Boolean} reverse Indicates whether the coordinates should start from + * the end of an axis. Only used in the numeric implementation. + * @return Number + * @private + */ + _getCoordFromValue: function(min, max, length, dataValue, offset, reverse) + { + var range, + multiplier, + valuecoord, + isNumber = Y_Lang.isNumber; + dataValue = parseFloat(dataValue); + if(isNumber(dataValue)) + { + if(this.get("scaleType") === "logarithmic" && min > 0) + { + min = Math.log(min); + max = Math.log(max); + dataValue = Math.log(dataValue); + } + range = max - min; + multiplier = length/range; + valuecoord = (dataValue - min) * multiplier; + valuecoord = reverse ? offset - valuecoord : offset + valuecoord; + } + else + { + valuecoord = NaN; + } + return valuecoord; + }, /** * Rounds a number to a certain level of precision. Useful for limiting the number of @@ -641,4 +725,4 @@ Y.NumericImpl = NumericImpl; Y.NumericAxisBase = Y.Base.create("numericAxisBase", Y.AxisBase, [Y.NumericImpl]); -}, '3.9.1', {"requires": ["axis-base"]}); +}, '3.12.0', {"requires": ["axis-base"]}); diff --git a/lib/yuilib/3.12.0/axis-numeric-base/axis-numeric-base-min.js b/lib/yuilib/3.12.0/axis-numeric-base/axis-numeric-base-min.js new file mode 100755 index 00000000000..0ffb14f9967 --- /dev/null +++ b/lib/yuilib/3.12.0/axis-numeric-base/axis-numeric-base-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("axis-numeric-base",function(e,t){function r(){}var n=e.Lang;r.NAME="numericImpl",r.ATTRS={alwaysShowZero:{value:!0},labelFormat:{value:{prefix:"",thousandsSeparator:"",decimalSeparator:"",decimalPlaces:"0",suffix:""}},roundingMethod:{value:"niceNumber"},scaleType:{value:"linear"}},r.prototype={initializer:function(){this.after("alwaysShowZeroChange",this._keyChangeHandler),this.after("roundingMethodChange",this._keyChangeHandler),this.after("scaleTypeChange",this._keyChangeHandler)},formatLabel:function(t,n){return n?e.DataType.Number.format(t,n):t},getTotalByKey:function(e){var t=0,n=this.getDataByKey(e),r=0,i,s=n?n.length:0;for(;r=t?(i=Math.floor((r/2-t)/(Math.pow(10,n-1)/2)),t=r/2-i*Math.pow(10,n-1)/2):t=r,isNaN(t)?e:t},_updateMinAndMax:function(){var e=this.get("data"),t,n,r,i,s=0,o=this.get("setMax"),u=this.get("setMin");if(!o||!u){if(e&&e.length&&e.length>0){r=e.length;for(;s=0,u=t>0,a,f,l,c,h,p,d,v=this.getTotalMajorUnits()-1,m=this.get("alwaysShowZero"),g=this.get("roundingMethod"),y=(t-e)/v>=1;if(g)if(g==="niceNumber"){i=this._getMinimumUnit(t,e,v);if(o&&u)(m||e=0)h--,c++,p=Math.ceil(t/c),d=Math.floor(e/h)*-1;h>0?t=d*c:t=e+i*v}else if(r){while(p=0)h++,c--,d=Math.floor(e/h)*-1,p=Math.ceil(t/c);c>0?e=p*h*-1:e=t-i*v}else i=Math.max(p,d),i=this._getNiceNumber(i),t=i*c,e=i*h*-1}else r?e=t-i*v:n?t=e+i*v:(e=this._roundDownToNearest(e,i),t=this._roundUpToNearest(t,i));else n?m?t=0:t=e+i*v:r?e=t-i*v:m||t===0||t+i>0?(t=0,i=this._getMinimumUnit(t,e,v),e=t-i*v):(e=this._roundDownToNearest(e,i),t=this._roundUpToNearest(t,i))}else g==="auto"?o&&u?((m||e<(t-e)/v)&&!n&&(e=0),i=(t-e)/v,y?(i=Math.ceil(i),t=e+i*v):t=e+Math.ceil(i*v*1e5)/1e5):u&&!o?m?(c=Math.round(v/(-1*e/t+1)),c=Math.max(Math.min(c,v-1),1),h=v-c,y?(p=Math.ceil(t/c),d=Math.floor(e/h)*-1,i=Math.max(p,d),t=i*c,e=i*h*-1):(p=t/c,d=e/h*-1,i=Math.max(p,d),t=Math.ceil(i*c*1e5)/1e5,e=Math.ceil(i*h*1e5)/1e5*-1)):(i=(t-e)/v,y&&(i=Math.ceil(i)),e=Math.round(this._roundDownToNearest(e,i)*1e5)/1e5,t=Math.round(this._roundUpToNearest(t,i)*1e5)/1e5):(i=(t-e)/v,y&&(i=Math.ceil(i)),m||t===0||t+i>0?(t=0,i=(t-e)/v,y?(Math.ceil(i),e=t-i*v):e=t-Math.ceil(i*v*1e5)/1e5):(e=this._roundDownToNearest(e,i),t=this._roundUpToNearest(t,i))):!isNaN(g)&&isFinite(g)&&(i=g,s=i*v,a=t-e>s,l=this._roundDownToNearest(e,i),f=this._roundUpToNearest(t,i),r?e=t-s:n?t=e+s:o&&u?(m||l<=0?e=0:e=l,t=e+s):u&&!o?(e=l,t=f):(m||f>=0?t=0:t=f,e=t-s));this._dataMaximum=t,this._dataMinimum=e},_roundToNearest:function(e,t){t=t||1;var n=Math.round(this._roundToPrecision(e/t,10))*t;return this._roundToPrecision(n,10)},_roundUpToNearest:function(e,t){return t=t||1,Math.ceil(this._roundToPrecision(e/t,10))*t},_roundDownToNearest:function(e,t){return t=t||1,Math.floor(this._roundToPrecision(e/t,10))*t},_getCoordFromValue:function(e,t,r,i,s,o){var u,a,f,l=n.isNumber;return i=parseFloat(i),l(i)?(this.get("scaleType")==="logarithmic"&&e>0&&(e=Math.log(e),t=Math.log(t),i=Math.log(i)),u=t-e,a=r/u,f=(i-e)*a,f=o?s-f:s+f):f=NaN,f},_roundToPrecision:function(e,t){t=t||0;var n=Math.pow(10,t);return Math.round(n*e)/n}},e.NumericImpl=r,e.NumericAxisBase=e.Base.create("numericAxisBase",e.AxisBase,[e.NumericImpl])},"3.12.0",{requires:["axis-base"]}); diff --git a/lib/yuilib/3.9.1/build/axis-numeric-base/axis-numeric-base.js b/lib/yuilib/3.12.0/axis-numeric-base/axis-numeric-base.js old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/axis-numeric-base/axis-numeric-base.js rename to lib/yuilib/3.12.0/axis-numeric-base/axis-numeric-base.js index 9aa208e79d8..193de60ddd4 --- a/lib/yuilib/3.9.1/build/axis-numeric-base/axis-numeric-base.js +++ b/lib/yuilib/3.12.0/axis-numeric-base/axis-numeric-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('axis-numeric-base', function (Y, NAME) { /** @@ -7,6 +13,7 @@ YUI.add('axis-numeric-base', function (Y, NAME) { * @module charts * @submodule axis-numeric-base */ +var Y_Lang = Y.Lang; /** * NumericImpl contains logic for numeric data. NumericImpl is used by the following classes: @@ -83,6 +90,18 @@ NumericImpl.ATTRS = { */ roundingMethod: { value: "niceNumber" + }, + + /** + * Indicates the scaling for the chart. The default value is `linear`. For a logarithmic axis, set the value + * to `logarithmic`. + * + * @attribute + * @type String + * @default linear + */ + scaleType: { + value: "linear" } }; @@ -94,6 +113,7 @@ NumericImpl.prototype = { initializer: function() { this.after("alwaysShowZeroChange", this._keyChangeHandler); this.after("roundingMethodChange", this._keyChangeHandler); + this.after("scaleTypeChange", this._keyChangeHandler); }, /** @@ -138,6 +158,21 @@ NumericImpl.prototype = { return total; }, + /** + * Returns the value corresponding to the origin on the axis. + * + * @method getOrigin + * @return Number + */ + getOrigin: function() { + var origin = 0, + min = this.get("minimum"), + max = this.get("maximum"); + origin = Math.max(origin, min); + origin = Math.min(origin, max); + return origin; + }, + /** * Type of data used in `Data`. * @@ -254,7 +289,15 @@ NumericImpl.prototype = { this._actualMinimum = min; } } - this._roundMinAndMax(min, max, setMin, setMax); + if(this.get("scaleType") !== "logarithmic") + { + this._roundMinAndMax(min, max, setMin, setMax); + } + else + { + this._dataMaximum = max; + this._dataMinimum = min; + } } }, @@ -607,6 +650,47 @@ NumericImpl.prototype = { nearest = nearest || 1; return Math.floor(this._roundToPrecision(number / nearest, 10)) * nearest; }, + + /** + * Returns a coordinate corresponding to a data values. + * + * @method _getCoordFromValue + * @param {Number} min The minimum for the axis. + * @param {Number} max The maximum for the axis. + * @param {length} length The distance that the axis spans. + * @param {Number} dataValue A value used to ascertain the coordinate. + * @param {Number} offset Value in which to offset the coordinates. + * @param {Boolean} reverse Indicates whether the coordinates should start from + * the end of an axis. Only used in the numeric implementation. + * @return Number + * @private + */ + _getCoordFromValue: function(min, max, length, dataValue, offset, reverse) + { + var range, + multiplier, + valuecoord, + isNumber = Y_Lang.isNumber; + dataValue = parseFloat(dataValue); + if(isNumber(dataValue)) + { + if(this.get("scaleType") === "logarithmic" && min > 0) + { + min = Math.log(min); + max = Math.log(max); + dataValue = Math.log(dataValue); + } + range = max - min; + multiplier = length/range; + valuecoord = (dataValue - min) * multiplier; + valuecoord = reverse ? offset - valuecoord : offset + valuecoord; + } + else + { + valuecoord = NaN; + } + return valuecoord; + }, /** * Rounds a number to a certain level of precision. Useful for limiting the number of @@ -641,4 +725,4 @@ Y.NumericImpl = NumericImpl; Y.NumericAxisBase = Y.Base.create("numericAxisBase", Y.AxisBase, [Y.NumericImpl]); -}, '3.9.1', {"requires": ["axis-base"]}); +}, '3.12.0', {"requires": ["axis-base"]}); diff --git a/lib/yuilib/3.9.1/build/axis-numeric/axis-numeric-debug.js b/lib/yuilib/3.12.0/axis-numeric/axis-numeric-debug.js old mode 100644 new mode 100755 similarity index 53% rename from lib/yuilib/3.9.1/build/axis-numeric/axis-numeric-debug.js rename to lib/yuilib/3.12.0/axis-numeric/axis-numeric-debug.js index 3f466fbc426..79120467eea --- a/lib/yuilib/3.9.1/build/axis-numeric/axis-numeric-debug.js +++ b/lib/yuilib/3.12.0/axis-numeric/axis-numeric-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('axis-numeric', function (Y, NAME) { /** @@ -29,11 +35,9 @@ Y.NumericAxis = Y.Base.create("numericAxis", Y.Axis, [Y.NumericImpl], { * @return String * @private */ - _getLabelByIndex: function() + _getLabelByIndex: function(i, l) { - var i = arguments[0], - l = arguments[1], - min = this.get("minimum"), + var min = this.get("minimum"), max = this.get("maximum"), increm = (max - min)/(l-1), label, @@ -60,6 +64,54 @@ Y.NumericAxis = Y.Base.create("numericAxis", Y.Axis, [Y.NumericImpl], { return parseFloat(label); }, + /** + * Returns an object literal containing and array of label values and an array of points. + * + * @method _getLabelData + * @param {Object} startPoint An object containing x and y values. + * @param {Number} edgeOffset Distance to offset coordinates. + * @param {Number} layoutLength Distance that the axis spans. + * @param {Number} count Number of labels. + * @param {String} direction Indicates whether the axis is horizontal or vertical. + * @param {Array} Array containing values for axis labels. + * @return Array + * @private + */ + _getLabelData: function(constantVal, staticCoord, dynamicCoord, min, max, edgeOffset, layoutLength, count, dataValues) + { + var dataValue, + i, + points = [], + values = [], + point, + isVertical = staticCoord === "x", + offset = isVertical ? layoutLength + edgeOffset : edgeOffset; + dataValues = dataValues || this._getDataValuesByCount(count, min, max); + for(i = 0; i < count; i = i + 1) + { + dataValue = parseFloat(dataValues[i]); + if(dataValue <= max && dataValue >= min) + { + point = {}; + point[staticCoord] = constantVal; + point[dynamicCoord] = this._getCoordFromValue( + min, + max, + layoutLength, + dataValue, + offset, + isVertical + ); + points.push(point); + values.push(dataValue); + } + } + return { + points: points, + values: values + }; + }, + /** * Checks to see if data extends beyond the range of the axis. If so, * that data will need to be hidden. This method is internal, temporary and subject @@ -92,4 +144,4 @@ Y.NumericAxis = Y.Base.create("numericAxis", Y.Axis, [Y.NumericImpl], { -}, '3.9.1', {"requires": ["axis", "axis-numeric-base"]}); +}, '3.12.0', {"requires": ["axis", "axis-numeric-base"]}); diff --git a/lib/yuilib/3.12.0/axis-numeric/axis-numeric-min.js b/lib/yuilib/3.12.0/axis-numeric/axis-numeric-min.js new file mode 100755 index 00000000000..16b926c7b82 --- /dev/null +++ b/lib/yuilib/3.12.0/axis-numeric/axis-numeric-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("axis-numeric",function(e,t){Y_Lang=e.Lang,e.NumericAxis=e.Base.create("numericAxis",e.Axis,[e.NumericImpl],{_getLabelByIndex:function(e,t){var n=this.get("minimum"),r=this.get("maximum"),i=(r-n)/(t-1),s,o=this.get("roundingMethod");return t-=1,e===0?s=n:e===t?s=r:(s=e*i,o==="niceNumber"&&(s=this._roundToNearest(s,i)),s+=n),parseFloat(s)},_getLabelData:function(e,t,n,r,i,s,o,u,a){var f,l,c=[],h=[],p,d=t==="x",v=d?o+s:s;a=a||this._getDataValuesByCount(u,r,i);for(l=0;l=r&&(p={},p[t]=e,p[n]=this._getCoordFromValue(r,i,o,f,v,d),c.push(p),h.push(f));return{points:c,values:h}},_hasDataOverflow:function(){var e,t,n;return this.get("setMin")||this.get("setMax")?!0:(e=this.get("roundingMethod"),t=this._actualMinimum,n=this._actualMaximum,Y_Lang.isNumber(e)&&(Y_Lang.isNumber(n)&&n>this._dataMaximum||Y_Lang.isNumber(t)&&t= min) + { + point = {}; + point[staticCoord] = constantVal; + point[dynamicCoord] = this._getCoordFromValue( + min, + max, + layoutLength, + dataValue, + offset, + isVertical + ); + points.push(point); + values.push(dataValue); + } + } + return { + points: points, + values: values + }; + }, + /** * Checks to see if data extends beyond the range of the axis. If so, * that data will need to be hidden. This method is internal, temporary and subject @@ -92,4 +144,4 @@ Y.NumericAxis = Y.Base.create("numericAxis", Y.Axis, [Y.NumericImpl], { -}, '3.9.1', {"requires": ["axis", "axis-numeric-base"]}); +}, '3.12.0', {"requires": ["axis", "axis-numeric-base"]}); diff --git a/lib/yuilib/3.9.1/build/axis-stacked-base/axis-stacked-base-debug.js b/lib/yuilib/3.12.0/axis-stacked-base/axis-stacked-base-debug.js old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/axis-stacked-base/axis-stacked-base-debug.js rename to lib/yuilib/3.12.0/axis-stacked-base/axis-stacked-base-debug.js index 0d4344d7ae4..61bd8dda86d --- a/lib/yuilib/3.9.1/build/axis-stacked-base/axis-stacked-base-debug.js +++ b/lib/yuilib/3.12.0/axis-stacked-base/axis-stacked-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('axis-stacked-base', function (Y, NAME) { /** @@ -131,4 +137,4 @@ Y.StackedImpl = StackedImpl; Y.StackedAxisBase = Y.Base.create("stackedAxisBase", Y.NumericAxisBase, [Y.StackedImpl]); -}, '3.9.1', {"requires": ["axis-numeric-base"]}); +}, '3.12.0', {"requires": ["axis-numeric-base"]}); diff --git a/lib/yuilib/3.9.1/build/axis-stacked-base/axis-stacked-base-min.js b/lib/yuilib/3.12.0/axis-stacked-base/axis-stacked-base-min.js old mode 100644 new mode 100755 similarity index 72% rename from lib/yuilib/3.9.1/build/axis-stacked-base/axis-stacked-base-min.js rename to lib/yuilib/3.12.0/axis-stacked-base/axis-stacked-base-min.js index 58134504164..bca9e0bacb9 --- a/lib/yuilib/3.9.1/build/axis-stacked-base/axis-stacked-base-min.js +++ b/lib/yuilib/3.12.0/axis-stacked-base/axis-stacked-base-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("axis-stacked-base",function(e,t){function n(){}n.NAME="stackedImpl",n.prototype={_type:"stacked",_updateMinAndMax:function(){var e=0,t=0,n=0,r=0,i=0,s=0,o,u,a=this.get("keys"),f=this.get("setMin"),l=this.get("setMax");for(o in a)a.hasOwnProperty(o)&&(i=Math.max(i,a[o].length));for(;s=0?n+=u:r+=u}n>0?e=Math.max(e,n):e=Math.max(e,r),r<0?t=Math.min(t,r):t=Math.min(t,n)}this._actualMaximum=e,this._actualMinimum=t,l&&(e=this._setMaximum),f&&(t=this._setMinimum),this._roundMinAndMax(t,e,f,l)}},e.StackedImpl=n,e.StackedAxisBase=e.Base.create("stackedAxisBase",e.NumericAxisBase,[e.StackedImpl])},"3.9.1",{requires:["axis-numeric-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("axis-stacked-base",function(e,t){function n(){}n.NAME="stackedImpl",n.prototype={_type:"stacked",_updateMinAndMax:function(){var e=0,t=0,n=0,r=0,i=0,s=0,o,u,a=this.get("keys"),f=this.get("setMin"),l=this.get("setMax");for(o in a)a.hasOwnProperty(o)&&(i=Math.max(i,a[o].length));for(;s=0?n+=u:r+=u}n>0?e=Math.max(e,n):e=Math.max(e,r),r<0?t=Math.min(t,r):t=Math.min(t,n)}this._actualMaximum=e,this._actualMinimum=t,l&&(e=this._setMaximum),f&&(t=this._setMinimum),this._roundMinAndMax(t,e,f,l)}},e.StackedImpl=n,e.StackedAxisBase=e.Base.create("stackedAxisBase",e.NumericAxisBase,[e.StackedImpl])},"3.12.0",{requires:["axis-numeric-base"]}); diff --git a/lib/yuilib/3.9.1/build/axis-stacked-base/axis-stacked-base.js b/lib/yuilib/3.12.0/axis-stacked-base/axis-stacked-base.js old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/axis-stacked-base/axis-stacked-base.js rename to lib/yuilib/3.12.0/axis-stacked-base/axis-stacked-base.js index 0d4344d7ae4..61bd8dda86d --- a/lib/yuilib/3.9.1/build/axis-stacked-base/axis-stacked-base.js +++ b/lib/yuilib/3.12.0/axis-stacked-base/axis-stacked-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('axis-stacked-base', function (Y, NAME) { /** @@ -131,4 +137,4 @@ Y.StackedImpl = StackedImpl; Y.StackedAxisBase = Y.Base.create("stackedAxisBase", Y.NumericAxisBase, [Y.StackedImpl]); -}, '3.9.1', {"requires": ["axis-numeric-base"]}); +}, '3.12.0', {"requires": ["axis-numeric-base"]}); diff --git a/lib/yuilib/3.9.1/build/axis-stacked/axis-stacked-debug.js b/lib/yuilib/3.12.0/axis-stacked/axis-stacked-debug.js old mode 100644 new mode 100755 similarity index 70% rename from lib/yuilib/3.9.1/build/axis-stacked/axis-stacked-debug.js rename to lib/yuilib/3.12.0/axis-stacked/axis-stacked-debug.js index 67660f438ef..6a95fc817ee --- a/lib/yuilib/3.9.1/build/axis-stacked/axis-stacked-debug.js +++ b/lib/yuilib/3.12.0/axis-stacked/axis-stacked-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('axis-stacked', function (Y, NAME) { /** @@ -21,4 +27,4 @@ Y.StackedAxis = Y.Base.create("stackedAxis", Y.NumericAxis, [Y.StackedImpl]); -}, '3.9.1', {"requires": ["axis-numeric", "axis-stacked-base"]}); +}, '3.12.0', {"requires": ["axis-numeric", "axis-stacked-base"]}); diff --git a/lib/yuilib/3.12.0/axis-stacked/axis-stacked-min.js b/lib/yuilib/3.12.0/axis-stacked/axis-stacked-min.js new file mode 100755 index 00000000000..9326f3ec2b9 --- /dev/null +++ b/lib/yuilib/3.12.0/axis-stacked/axis-stacked-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("axis-stacked",function(e,t){e.StackedAxis=e.Base.create("stackedAxis",e.NumericAxis,[e.StackedImpl])},"3.12.0",{requires:["axis-numeric","axis-stacked-base"]}); diff --git a/lib/yuilib/3.9.1/build/axis-stacked/axis-stacked.js b/lib/yuilib/3.12.0/axis-stacked/axis-stacked.js old mode 100644 new mode 100755 similarity index 70% rename from lib/yuilib/3.9.1/build/axis-stacked/axis-stacked.js rename to lib/yuilib/3.12.0/axis-stacked/axis-stacked.js index 67660f438ef..6a95fc817ee --- a/lib/yuilib/3.9.1/build/axis-stacked/axis-stacked.js +++ b/lib/yuilib/3.12.0/axis-stacked/axis-stacked.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('axis-stacked', function (Y, NAME) { /** @@ -21,4 +27,4 @@ Y.StackedAxis = Y.Base.create("stackedAxis", Y.NumericAxis, [Y.StackedImpl]); -}, '3.9.1', {"requires": ["axis-numeric", "axis-stacked-base"]}); +}, '3.12.0', {"requires": ["axis-numeric", "axis-stacked-base"]}); diff --git a/lib/yuilib/3.9.1/build/axis-time-base/axis-time-base-debug.js b/lib/yuilib/3.12.0/axis-time-base/axis-time-base-debug.js old mode 100644 new mode 100755 similarity index 84% rename from lib/yuilib/3.9.1/build/axis-time-base/axis-time-base-debug.js rename to lib/yuilib/3.12.0/axis-time-base/axis-time-base-debug.js index f9439029189..a7fe91b5b0e --- a/lib/yuilib/3.9.1/build/axis-time-base/axis-time-base-debug.js +++ b/lib/yuilib/3.12.0/axis-time-base/axis-time-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('axis-time-base', function (Y, NAME) { /** @@ -7,8 +13,8 @@ YUI.add('axis-time-base', function (Y, NAME) { * @module charts * @submodule axis-time-base */ - var Y_Lang = Y.Lang; + /** * TimeImpl contains logic for time data. TimeImpl is used by the following classes: *
        @@ -277,6 +283,41 @@ TimeImpl.prototype = { this._dataMinimum = min; }, + /** + * Returns a coordinate corresponding to a data values. + * + * @method _getCoordFromValue + * @param {Number} min The minimum for the axis. + * @param {Number} max The maximum for the axis. + * @param {length} length The distance that the axis spans. + * @param {Number} dataValue A value used to ascertain the coordinate. + * @param {Number} offset Value in which to offset the coordinates. + * @param {Boolean} reverse Indicates whether the coordinates should start from + * the end of an axis. Only used in the numeric implementation. + * @return Number + * @private + */ + _getCoordFromValue: function(min, max, length, dataValue, offset) + { + var range, + multiplier, + valuecoord, + isNumber = Y_Lang.isNumber; + dataValue = this._getNumber(dataValue); + if(isNumber(dataValue)) + { + range = max - min; + multiplier = length/range; + valuecoord = (dataValue - min) * multiplier; + valuecoord = offset + valuecoord; + } + else + { + valuecoord = NaN; + } + return valuecoord; + }, + /** * Parses value into a number. * @@ -315,4 +356,4 @@ Y.TimeImpl = TimeImpl; Y.TimeAxisBase = Y.Base.create("timeAxisBase", Y.AxisBase, [Y.TimeImpl]); -}, '3.9.1', {"requires": ["axis-base"]}); +}, '3.12.0', {"requires": ["axis-base"]}); diff --git a/lib/yuilib/3.9.1/build/axis-time-base/axis-time-base-min.js b/lib/yuilib/3.12.0/axis-time-base/axis-time-base-min.js old mode 100644 new mode 100755 similarity index 73% rename from lib/yuilib/3.9.1/build/axis-time-base/axis-time-base-min.js rename to lib/yuilib/3.12.0/axis-time-base/axis-time-base-min.js index 8129545b6a4..022c6a73dc3 --- a/lib/yuilib/3.9.1/build/axis-time-base/axis-time-base-min.js +++ b/lib/yuilib/3.12.0/axis-time-base/axis-time-base-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("axis-time-base",function(e,t){function r(){}var n=e.Lang;r.NAME="timeImpl",r.ATTRS={labelFormat:{value:"%b %d, %y"}},r.prototype={_type:"time",_maximumGetter:function(){var e=this._getNumber(this._setMaximum);return n.isNumber(e)||(e=this._getNumber(this.get("dataMaximum"))),parseFloat(e)},_maximumSetter:function(e){return this._setMaximum=this._getNumber(e),e},_minimumGetter:function(){var e=this._getNumber(this._setMinimum);return n.isNumber(e)||(e=this._getNumber(this.get("dataMinimum"))),parseFloat(e)},_minimumSetter:function(e){return this._setMinimum=this._getNumber(e),e},_getSetMax:function(){var e=this._getNumber(this._setMaximum);return n.isNumber(e)},_getSetMin:function(){var e=this._getNumber(this._setMinimum);return n.isNumber(e)},formatLabel:function(t,n){return t=e.DataType.Date.parse(t),n?e.DataType.Date.format(t,{format:n}):t},GUID:"yuitimeaxis",_dataType:"time",_getKeyArray:function(e,t){var r,i=[],s=0,o,u=t.length;for(;s0){r=e.length,t=n=e[0];if(r>1)for(s=1;s0){r=e.length,t=n=e[0];if(r>1)for(s=1;s @@ -277,6 +283,41 @@ TimeImpl.prototype = { this._dataMinimum = min; }, + /** + * Returns a coordinate corresponding to a data values. + * + * @method _getCoordFromValue + * @param {Number} min The minimum for the axis. + * @param {Number} max The maximum for the axis. + * @param {length} length The distance that the axis spans. + * @param {Number} dataValue A value used to ascertain the coordinate. + * @param {Number} offset Value in which to offset the coordinates. + * @param {Boolean} reverse Indicates whether the coordinates should start from + * the end of an axis. Only used in the numeric implementation. + * @return Number + * @private + */ + _getCoordFromValue: function(min, max, length, dataValue, offset) + { + var range, + multiplier, + valuecoord, + isNumber = Y_Lang.isNumber; + dataValue = this._getNumber(dataValue); + if(isNumber(dataValue)) + { + range = max - min; + multiplier = length/range; + valuecoord = (dataValue - min) * multiplier; + valuecoord = offset + valuecoord; + } + else + { + valuecoord = NaN; + } + return valuecoord; + }, + /** * Parses value into a number. * @@ -315,4 +356,4 @@ Y.TimeImpl = TimeImpl; Y.TimeAxisBase = Y.Base.create("timeAxisBase", Y.AxisBase, [Y.TimeImpl]); -}, '3.9.1', {"requires": ["axis-base"]}); +}, '3.12.0', {"requires": ["axis-base"]}); diff --git a/lib/yuilib/3.12.0/axis-time/axis-time-debug.js b/lib/yuilib/3.12.0/axis-time/axis-time-debug.js new file mode 100755 index 00000000000..7abb3a027c2 --- /dev/null +++ b/lib/yuilib/3.12.0/axis-time/axis-time-debug.js @@ -0,0 +1,98 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('axis-time', function (Y, NAME) { + +/** + * Provides functionality for drawing a time axis for use with a chart. + * + * @module charts + * @submodule axis-time + */ +/** + * TimeAxis draws a time-based axis for a chart. + * + * @class TimeAxis + * @constructor + * @extends Axis + * @uses TimeImpl + * @param {Object} config (optional) Configuration parameters. + * @submodule axis-time + */ +Y.TimeAxis = Y.Base.create("timeAxis", Y.Axis, [Y.TimeImpl], { + /** + * Calculates and returns a value based on the number of labels and the index of + * the current label. + * + * @method _getLabelByIndex + * @param {Number} i Index of the label. + * @param {Number} l Total number of labels. + * @return String + * @private + */ + _getLabelByIndex: function(i, l) + { + var min = this.get("minimum"), + max = this.get("maximum"), + increm, + label; + l -= 1; + increm = ((max - min)/l) * i; + label = min + increm; + return label; + }, + + /** + * Returns an object literal containing and array of label values and an array of points. + * + * @method _getLabelData + * @param {Object} startPoint An object containing x and y values. + * @param {Number} edgeOffset Distance to offset coordinates. + * @param {Number} layoutLength Distance that the axis spans. + * @param {Number} count Number of labels. + * @param {String} direction Indicates whether the axis is horizontal or vertical. + * @param {Array} Array containing values for axis labels. + * @return Array + * @private + */ + _getLabelData: function(constantVal, staticCoord, dynamicCoord, min, max, edgeOffset, layoutLength, count, dataValues) + { + var dataValue, + i, + points = [], + values = [], + point, + offset = edgeOffset; + dataValues = dataValues || this._getDataValuesByCount(count, min, max); + for(i = 0; i < count; i = i + 1) + { + dataValue = this._getNumber(dataValues[i]); + if(dataValue <= max && dataValue >= min) + { + point = {}; + point[staticCoord] = constantVal; + point[dynamicCoord] = this._getCoordFromValue( + min, + max, + layoutLength, + dataValue, + offset + ); + points.push(point); + values.push(dataValue); + } + } + return { + points: points, + values: values + }; + } +}); + + + +}, '3.12.0', {"requires": ["axis", "axis-time-base"]}); diff --git a/lib/yuilib/3.12.0/axis-time/axis-time-min.js b/lib/yuilib/3.12.0/axis-time/axis-time-min.js new file mode 100755 index 00000000000..374c89ac81a --- /dev/null +++ b/lib/yuilib/3.12.0/axis-time/axis-time-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("axis-time",function(e,t){e.TimeAxis=e.Base.create("timeAxis",e.Axis,[e.TimeImpl],{_getLabelByIndex:function(e,t){var n=this.get("minimum"),r=this.get("maximum"),i,s;return t-=1,i=(r-n)/t*e,s=n+i,s},_getLabelData:function(e,t,n,r,i,s,o,u,a){var f,l,c=[],h=[],p,d=s;a=a||this._getDataValuesByCount(u,r,i);for(l=0;l=r&&(p={},p[t]=e,p[n]=this._getCoordFromValue(r,i,o,f,d),c.push(p),h.push(f));return{points:c,values:h}}})},"3.12.0",{requires:["axis","axis-time-base"]}); diff --git a/lib/yuilib/3.12.0/axis-time/axis-time.js b/lib/yuilib/3.12.0/axis-time/axis-time.js new file mode 100755 index 00000000000..7abb3a027c2 --- /dev/null +++ b/lib/yuilib/3.12.0/axis-time/axis-time.js @@ -0,0 +1,98 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('axis-time', function (Y, NAME) { + +/** + * Provides functionality for drawing a time axis for use with a chart. + * + * @module charts + * @submodule axis-time + */ +/** + * TimeAxis draws a time-based axis for a chart. + * + * @class TimeAxis + * @constructor + * @extends Axis + * @uses TimeImpl + * @param {Object} config (optional) Configuration parameters. + * @submodule axis-time + */ +Y.TimeAxis = Y.Base.create("timeAxis", Y.Axis, [Y.TimeImpl], { + /** + * Calculates and returns a value based on the number of labels and the index of + * the current label. + * + * @method _getLabelByIndex + * @param {Number} i Index of the label. + * @param {Number} l Total number of labels. + * @return String + * @private + */ + _getLabelByIndex: function(i, l) + { + var min = this.get("minimum"), + max = this.get("maximum"), + increm, + label; + l -= 1; + increm = ((max - min)/l) * i; + label = min + increm; + return label; + }, + + /** + * Returns an object literal containing and array of label values and an array of points. + * + * @method _getLabelData + * @param {Object} startPoint An object containing x and y values. + * @param {Number} edgeOffset Distance to offset coordinates. + * @param {Number} layoutLength Distance that the axis spans. + * @param {Number} count Number of labels. + * @param {String} direction Indicates whether the axis is horizontal or vertical. + * @param {Array} Array containing values for axis labels. + * @return Array + * @private + */ + _getLabelData: function(constantVal, staticCoord, dynamicCoord, min, max, edgeOffset, layoutLength, count, dataValues) + { + var dataValue, + i, + points = [], + values = [], + point, + offset = edgeOffset; + dataValues = dataValues || this._getDataValuesByCount(count, min, max); + for(i = 0; i < count; i = i + 1) + { + dataValue = this._getNumber(dataValues[i]); + if(dataValue <= max && dataValue >= min) + { + point = {}; + point[staticCoord] = constantVal; + point[dynamicCoord] = this._getCoordFromValue( + min, + max, + layoutLength, + dataValue, + offset + ); + points.push(point); + values.push(dataValue); + } + } + return { + points: points, + values: values + }; + } +}); + + + +}, '3.12.0', {"requires": ["axis", "axis-time-base"]}); diff --git a/lib/yuilib/3.9.1/build/axis/axis-debug.js b/lib/yuilib/3.12.0/axis/axis-debug.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/axis/axis-debug.js rename to lib/yuilib/3.12.0/axis/axis-debug.js index 7f3471d26bb..c4c0383be85 --- a/lib/yuilib/3.9.1/build/axis/axis-debug.js +++ b/lib/yuilib/3.12.0/axis/axis-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('axis', function (Y, NAME) { /** @@ -1866,10 +1872,7 @@ Y.Axis = Y.Base.create("axis", Y.Widget, [Y.AxisBase], { labelStyles = styles.label, majorTickStyles = styles.majorTicks, drawTicks = majorTickStyles.display !== "none", - tickPoint, - majorUnit = styles.majorUnit, len, - majorUnitDistance, i = 0, layout = this._layout, layoutLength, @@ -1885,6 +1888,14 @@ Y.Axis = Y.Base.create("axis", Y.Widget, [Y.AxisBase], { tickPath, explicitlySized, position = this.get("position"), + labelData, + labelValues, + point, + points, + staticCoord, + dynamicCoord, + edgeOffset, + explicitLabels = this._labelValuesExplicitlySet ? this.get("labelValues") : null, direction = (position === "left" || position === "right") ? "vertical" : "horizontal"; this._labelWidths = []; this._labelHeights = []; @@ -1899,18 +1910,66 @@ Y.Axis = Y.Base.create("axis", Y.Widget, [Y.AxisBase], { this._labelRotationProps.transformOrigin = layout._getTransformOrigin(this._labelRotationProps.rot); layout.setTickOffsets.apply(this); layoutLength = this.getLength(); + + len = this.getTotalMajorUnits(); + edgeOffset = this.getEdgeOffset(len, layoutLength); + this.set("edgeOffset", edgeOffset); lineStart = layout.getLineStart.apply(this); - len = this.getTotalMajorUnits(majorUnit); - majorUnitDistance = this.getMajorUnitDistance(len, layoutLength, majorUnit); - this.set("edgeOffset", this.getEdgeOffset(len, layoutLength) * 0.5); + + if(direction === "vertical") + { + staticCoord = "x"; + dynamicCoord = "y"; + } + else + { + staticCoord = "y"; + dynamicCoord = "x"; + } + + labelData = this._getLabelData( + lineStart[staticCoord], + staticCoord, + dynamicCoord, + this.get("minimum"), + this.get("maximum"), + edgeOffset, + layoutLength - edgeOffset - edgeOffset, + len, + explicitLabels + ); + + points = labelData.points; + labelValues = labelData.values; + len = points.length; + if(!this._labelValuesExplicitlySet) + { + this.set("labelValues", labelValues, {src: "internal"}); + } + + //Don't create the last label or tick. + if(this.get("hideFirstMajorUnit")) + { + points.shift(); + labelValues.shift(); + len = len - 1; + } + + //Don't create the last label or tick. + if(this.get("hideLastMajorUnit")) + { + points.pop(); + labelValues.pop(); + len = len - 1; + } + if(len < 1) { this._clearLabelCache(); } else { - tickPoint = this.getFirstPoint(lineStart); - this.drawLine(path, lineStart, this.getLineEnd(tickPoint)); + this.drawLine(path, lineStart, this.getLineEnd(lineStart)); if(drawTicks) { tickPath = this.get("tickPath"); @@ -1920,41 +1979,39 @@ Y.Axis = Y.Base.create("axis", Y.Widget, [Y.AxisBase], { color: majorTickStyles.color, opacity: majorTickStyles.alpha }); - layout.drawTick.apply(this, [tickPath, tickPoint, majorTickStyles]); + for(i = 0; i < len; i = i + 1) + { + point = points[i]; + if(point) + { + layout.drawTick.apply(this, [tickPath, points[i], majorTickStyles]); + } + } } this._createLabelCache(); - this._tickPoints = []; + this._tickPoints = points; this._maxLabelSize = 0; this._totalTitleSize = 0; this._titleSize = 0; this._setTitle(); explicitlySized = layout.getExplicitlySized.apply(this, [styles]); - for(; i < len; ++i) + for(i = 0; i < len; i = i + 1) { - if(drawTicks) + point = points[i]; + if(point) { - layout.drawTick.apply(this, [tickPath, tickPoint, majorTickStyles]); + label = this.getLabel(point, labelStyles); + this._labels.push(label); + this.get("appendLabelFunction")(label, labelFunction.apply(labelFunctionScope, [labelValues[i], labelFormat])); + labelWidth = Math.round(label.offsetWidth); + labelHeight = Math.round(label.offsetHeight); + if(!explicitlySized) + { + this._layout.updateMaxLabelSize.apply(this, [labelWidth, labelHeight]); + } + this._labelWidths.push(labelWidth); + this._labelHeights.push(labelHeight); } - position = this.getPosition(tickPoint); - label = this.getLabel(tickPoint, labelStyles); - this._labels.push(label); - this._tickPoints.push({x:tickPoint.x, y:tickPoint.y}); - this.get("appendLabelFunction")( - label, - labelFunction.apply( - labelFunctionScope, - [this._getLabelByIndex(i, len, direction), labelFormat] - ) - ); - labelWidth = Math.round(label.offsetWidth); - labelHeight = Math.round(label.offsetHeight); - if(!explicitlySized) - { - this._layout.updateMaxLabelSize.apply(this, [labelWidth, labelHeight]); - } - this._labelWidths.push(labelWidth); - this._labelHeights.push(labelHeight); - tickPoint = this.getNextPoint(tickPoint, majorUnitDistance); } this._clearLabelCache(); if(this.get("overlapGraph")) @@ -1966,6 +2023,7 @@ Y.Axis = Y.Base.create("axis", Y.Widget, [Y.AxisBase], { { this._layout.positionTitle.apply(this, [this._titleTextField]); } + len = this._labels.length; for(i = 0; i < len; ++i) { layout.positionLabel.apply(this, [this.get("labels")[i], this._tickPoints[i], styles, i]); @@ -2282,87 +2340,6 @@ Y.Axis = Y.Base.create("axis", Y.Widget, [Y.AxisBase], { return np; }, - /** - * Gets the position of the next point on an axis. - * - * @method getNextPoint - * @param {Object} point Object containing x and y coordinates. - * @param {Number} majorUnitDistance Distance in pixels between ticks. - * @return Object - * @private - */ - getNextPoint: function(point, majorUnitDistance) - { - var pos = this.get("position"); - if(pos === "top" || pos === "bottom") - { - point.x = point.x + majorUnitDistance; - } - else - { - point.y = point.y - majorUnitDistance; - } - return point; - }, - - /** - * Calculates the placement of last tick on an axis. - * - * @method getLastPoint - * @return Object - * @private - */ - getLastPoint: function() - { - var style = this.get("styles"), - padding = style.padding, - w = this.get("width"), - pos = this.get("position"); - if(pos === "top" || pos === "bottom") - { - return {x:w - padding.right, y:padding.top}; - } - else - { - return {x:padding.left, y:padding.top}; - } - }, - - /** - * Calculates position on the axis. - * - * @method getPosition - * @param {Object} point contains x and y values - * @private - */ - getPosition: function(point) - { - var p, - h = this.get("height"), - style = this.get("styles"), - padding = style.padding, - pos = this.get("position"), - dataType = this.get("dataType"); - if(pos === "left" || pos === "right") - { - //Numeric data on a vertical axis is displayed from bottom to top. - //Categorical and Timeline data is displayed from top to bottom. - if(dataType === "numeric") - { - p = (h - (padding.top + padding.bottom)) - (point.y - padding.top); - } - else - { - p = point.y - padding.top; - } - } - else - { - p = point.x - padding.left; - } - return p; - }, - /** * Rotates and positions a text field. * @@ -2601,13 +2578,14 @@ Y.Axis = Y.Base.create("axis", Y.Widget, [Y.AxisBase], { { var units, majorUnit = this.get("styles").majorUnit, - len = this.getLength(); + len; if(majorUnit.determinant === "count") { units = majorUnit.count; } else if(majorUnit.determinant === "distance") { + len = this.getLength(); units = (len/majorUnit.distance) + 1; } return units; @@ -2785,7 +2763,7 @@ Y.Axis = Y.Base.create("axis", Y.Widget, [Y.AxisBase], { }, /** - * Difference betweend the first/last tick and edge of axis. + * Difference between the first/last tick and edge of axis. * * @attribute edgeOffset * @type Number @@ -3047,6 +3025,54 @@ Y.Axis = Y.Base.create("axis", Y.Widget, [Y.AxisBase], { { return this._setText; } + }, + + /** + * An array containing the unformatted values of the axis labels. By default, TimeAxis, NumericAxis and + * StackedAxis labelValues are determined by the majorUnit style. By default, CategoryAxis labels are + * determined by the values of the dataProvider. + *

        When the labelValues attribute is explicitly set, the labelValues are dictated by the set value and + * the position of ticks and labels are determined by where those values would fall on the axis.

        + * + * @attribute labelValues + * @type Array + */ + labelValues: { + lazyAdd: false, + + setter: function(val) + { + var opts = arguments[2]; + if(!val || (opts && opts.src && opts.src === "internal")) + { + this._labelValuesExplicitlySet = false; + } + else + { + this._labelValuesExplicitlySet = true; + } + return val; + } + }, + + /** + * Suppresses the creation of the the first visible label and tick. + * + * @attribute hideFirstMajorUnit + * @type Boolean + */ + hideFirstMajorUnit: { + value: false + }, + + /** + * Suppresses the creation of the the last visible label and tick. + * + * @attribute hideLastMajorUnit + * @type Boolean + */ + hideLastMajorUnit: { + value: false } /** @@ -3107,4 +3133,4 @@ Y.Axis = Y.Base.create("axis", Y.Widget, [Y.AxisBase], { Y.AxisType = Y.Base.create("baseAxis", Y.Axis, [], {}); -}, '3.9.1', {"requires": ["dom", "widget", "widget-position", "widget-stack", "graphics", "axis-base"]}); +}, '3.12.0', {"requires": ["dom", "widget", "widget-position", "widget-stack", "graphics", "axis-base"]}); diff --git a/lib/yuilib/3.9.1/build/axis/axis-min.js b/lib/yuilib/3.12.0/axis/axis-min.js old mode 100644 new mode 100755 similarity index 59% rename from lib/yuilib/3.9.1/build/axis/axis-min.js rename to lib/yuilib/3.12.0/axis/axis-min.js index 73e7cdfca56..e9aa8216d87 --- a/lib/yuilib/3.9.1/build/axis/axis-min.js +++ b/lib/yuilib/3.12.0/axis/axis-min.js @@ -1,5 +1,11 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("axis",function(e,t){var n=e.config,r=n.doc,i=e.Lang,s=i.isString,o=e.DOM,u,a,f,l;u=function(){},u.prototype={_getDefaultMargins:function(){return{top:0,left:0,right:4,bottom:0}},setTickOffsets:function(){var e=this,t=e.get("styles").majorTicks,n=t.length,r=n*.5,i=t.display;e.set("topTickOffset",0),e.set("bottomTickOffset",0);switch(i){case"inside":e.set("rightTickOffset",n),e.set("leftTickOffset",0);break;case"outside":e.set("rightTickOffset",0),e.set("leftTickOffset",n);break;case"cross":e.set("rightTickOffset",r),e.set("leftTickOffset",r);break;default:e.set("rightTickOffset",0),e.set("leftTickOffset",0)}},drawTick:function(e,t,n){var r=this,i=r.get("styles"),s=i.padding,o=n.length,u={x:s.left,y:t.y},a={x:o+s.left,y:t.y};r.drawLine(e,u,a)},getLineStart:function(){var e=this.get("styles"),t=e.padding,n=e.majorTicks,r=n.length,i=n.display,s={x:t.left,y:0};return i==="outside"?s.x+=r:i==="cross"&&(s.x+=r/2),s},getLabelPoint:function(e){return{x:e.x-this.get("leftTickOffset"),y:e.y}},updateMaxLabelSize:function(e,t){var n=this,r=this._labelRotationProps,i=r.rot,s=r.absRot,o=r.sinRadians,u=r.cosRadians,a;i===0?a=e:s===90?a=t:a=u*e+o*t,n._maxLabelSize=Math.max(n._maxLabelSize,a)},getExplicitlySized:function(e){if(this._explicitWidth){var t=this,n=t._explicitWidth,r=t._totalTitleSize,i=t.get("leftTickOffset"),s=e.label.margin.right;return t._maxLabelSize=n-(i+s+r),!0}return!1},positionTitle:function(e){var t=this,n=t._titleBounds,r=t.get("styles").title.margin,i=t._titleRotationProps,s=n.right-n.left,o=e.offsetWidth,u=e.offsetHeight,a=o*-0.5+s*.5,f=t.get("height")*.5-u*.5;i.labelWidth=o,i.labelHeight=u,r&&r.left&&(a+=r.left),i.x=a,i.y=f,i.transformOrigin=[.5,.5],t._rotate(e,i)},positionLabel:function(e,t,n,r){var i=this,s=i.get("leftTickOffset"),o=this._totalTitleSize,u=t.x+o-s,a=t.y,f=this._labelRotationProps,l=f.rot,c=f.absRot,h=i._maxLabelSize,p=this._labelWidths[r],d=this._labelHeights[r];l===0?(u-=p,a-=d*.5):l===90?u-=p*.5:l===-90?(u-=p*.5,a-=d):(u-=p+d*c/360,a-=d*.5),f.labelWidth=p,f.labelHeight=d,f.x=Math.round(h+u),f.y=Math.round(a),this._rotate(e,f)},_setRotationCoords:function(e){var t=e.rot,n=e.absRot,r,i,s=e.labelWidth,o=e.labelHeight;t===0?(r=s,i=o*.5):t===90?(i=0,r=s*.5):t===-90?(r=s*.5,i=o):(r=s+o*n/360,i=o*.5),e.x-=r,e.y-=i},_getTransformOrigin:function(e){var t;return e===0?t=[0,0]:e===90?t=[.5,0]:e===-90?t=[.5,1]:t=[1,.5],t},offsetNodeForTick:function(){},setCalculatedSize:function(){var e=this,t=this.get("graphic"),n=e.get("styles"),r=n.label,i=e.get("leftTickOffset"),s=e._maxLabelSize,o=this._totalTitleSize,u=Math.round(o+i+s+r.margin.right);this._explicitWidth&&(u=this._explicitWidth),this.set("calculatedWidth",u),t.set("x",u-i)}},e.LeftAxisLayout=u,a=function(){},a.prototype={_getDefaultMargins:function(){return{top:0,left:4,right:0,bottom:0}},setTickOffsets:function(){var e=this,t=e.get("styles").majorTicks,n=t.length,r=n*.5,i=t.display;e.set("topTickOffset",0),e.set("bottomTickOffset",0);switch(i){case"inside":e.set("leftTickOffset",n),e.set("rightTickOffset",0);break;case"outside":e.set("leftTickOffset",0),e.set("rightTickOffset",n);break;case"cross":e.set("rightTickOffset",r),e.set("leftTickOffset",r);break;default:e.set("leftTickOffset",0),e.set("rightTickOffset",0)}},drawTick:function(e,t,n){var r=this,i=r.get("styles"),s=i.padding,o=n.length,u={x:s.left,y:t.y},a={x:s.left+o,y:t.y};r.drawLine(e,u,a)},getLineStart:function(){var e=this,t=e.get("styles"),n=t.padding,r=t.majorTicks,i=r.length,s=r.display,o={x:n.left,y:n.top};return s==="inside"?o.x+=i:s==="cross"&&(o.x+=i/2),o},getLabelPoint:function(e){return{x:e.x+this.get("rightTickOffset"),y:e.y}},updateMaxLabelSize:function(e,t){var n=this,r=this._labelRotationProps,i=r.rot,s=r.absRot,o=r.sinRadians,u=r.cosRadians,a;i===0?a=e:s===90?a=t:a=u*e+o*t,n._maxLabelSize=Math.max(n._maxLabelSize,a)},getExplicitlySized:function(e){if(this._explicitWidth){var t=this,n=t._explicitWidth,r=this._totalTitleSize,i=t.get("rightTickOffset"),s=e.label.margin.right;return t._maxLabelSize=n-(i+s+r),!0}return!1},positionTitle:function(e){var t=this,n=t._titleBounds,r=t.get("styles").title.margin,i=t._titleRotationProps,s=e.offsetWidth,o=e.offsetHeight,u=n.right-n.left,a=this.get("width")-s*.5-u*.5,f=t.get("height")*.5-o*.5;i.labelWidth=s,i.labelHeight=o,r&&r.right&&(a-=r.left),i.x=a,i.y=f,i.transformOrigin=[.5,.5],t._rotate(e,i)},positionLabel:function(e,t,n,r){var i=this,s=i.get("rightTickOffset"),o=n.label,u=0,a=t.x,f=t.y,l=this._labelRotationProps,c=l.rot,h=l.absRot,p=this._labelWidths[r],d=this._labelHeights[r];o.margin&&o.margin.left&&(u=o.margin.left),c===0?f-=d*.5:c===90?(a-=p*.5,f-=d):c===-90?a-=p*.5:(f-=d*.5,a+=d/2*h/90),a+=u,a+=s,l.labelWidth=p,l.labelHeight=d,l.x=Math.round(a),l.y=Math.round(f),this._rotate(e,l)},_setRotationCoords:function(e){var t=e.rot,n=e.absRot,r=0,i=0,s=e.labelWidth,o=e.labelHeight;t===0?i=o*.5:t===90?(r=s*.5,i=o):t===-90?r=s*.5:(i=o*.5,r=o/2*n/90),e.x-=r,e.y-=i},_getTransformOrigin:function(e){var t;return e===0?t=[0,0]:e===90?t=[.5,1]:e===-90?t=[.5,0]:t=[0,.5],t},offsetNodeForTick:function(e){var t=this,n=t.get("leftTickOffset"),r=0-n;e.setStyle("left",r)},setCalculatedSize:function(){var e=this,t=e.get("styles"),n=t.label,r=this._totalTitleSize,i=Math.round(e.get("rightTickOffset")+e._maxLabelSize+r+n.margin.left);this._explicitWidth&&(i=this._explicitWidth),e.set("calculatedWidth",i),e.get("contentBox").setStyle("width",i)}},e.RightAxisLayout=a,f=function(){},f.prototype={_getDefaultMargins:function(){return{top:4,left:0,right:0,bottom:0}},setTickOffsets:function(){var e=this,t=e.get("styles").majorTicks,n=t.length,r=n*.5,i=t.display;e.set("leftTickOffset",0),e.set("rightTickOffset",0);switch(i){case"inside":e.set("topTickOffset",n),e.set("bottomTickOffset",0);break;case"outside":e.set("topTickOffset",0),e.set("bottomTickOffset",n);break;case"cross":e.set("topTickOffset",r),e.set("bottomTickOffset",r);break;default:e.set("topTickOffset",0),e.set("bottomTickOffset",0)}},getLineStart:function( ){var e=this.get("styles"),t=e.padding,n=e.majorTicks,r=n.length,i=n.display,s={x:0,y:t.top};return i==="inside"?s.y+=r:i==="cross"&&(s.y+=r/2),s},drawTick:function(e,t,n){var r=this,i=r.get("styles"),s=i.padding,o=n.length,u={x:t.x,y:s.top},a={x:t.x,y:o+s.top};r.drawLine(e,u,a)},getLabelPoint:function(e){return{x:e.x,y:e.y+this.get("bottomTickOffset")}},updateMaxLabelSize:function(e,t){var n=this,r=this._labelRotationProps,i=r.rot,s=r.absRot,o=r.sinRadians,u=r.cosRadians,a;i===0?a=t:s===90?a=e:a=o*e+u*t,n._maxLabelSize=Math.max(n._maxLabelSize,a)},getExplicitlySized:function(e){if(this._explicitHeight){var t=this,n=t._explicitHeight,r=t._totalTitleSize,i=t.get("bottomTickOffset"),s=e.label.margin.right;return t._maxLabelSize=n-(i+s+r),!0}return!1},positionTitle:function(e){var t=this,n=t._titleBounds,r=t.get("styles").title.margin,i=t._titleRotationProps,s=n.bottom-n.top,o=e.offsetWidth,u=e.offsetHeight,a=t.get("width")*.5-o*.5,f=t.get("height")-u/2-s/2;i.labelWidth=o,i.labelHeight=u,r&&r.bottom&&(f-=r.bottom),i.x=a,i.y=f,i.transformOrigin=[.5,.5],t._rotate(e,i)},positionLabel:function(e,t,n,r){var i=this,s=i.get("bottomTickOffset"),o=n.label,u=0,a=i._labelRotationProps,f=a.rot,l=a.absRot,c=Math.round(t.x),h=Math.round(t.y),p=i._labelWidths[r],d=i._labelHeights[r];o.margin&&o.margin.top&&(u=o.margin.top),f>0?h-=d/2*f/90:f<0?(c-=p,h-=d/2*l/90):c-=p*.5,h+=u,h+=s,a.labelWidth=p,a.labelHeight=d,a.x=c,a.y=h,i._rotate(e,a)},_setRotationCoords:function(e){var t=e.rot,n=e.absRot,r=e.labelWidth,i=e.labelHeight,s,o;t>0?(s=0,o=i/2*t/90):t<0?(s=r,o=i/2*n/90):(s=r*.5,o=0),e.x-=s,e.y-=o},_getTransformOrigin:function(e){var t;return e>0?t=[0,.5]:e<0?t=[1,.5]:t=[0,0],t},offsetNodeForTick:function(e){var t=this;e.setStyle("top",0-t.get("topTickOffset"))},setCalculatedSize:function(){var e=this,t=e.get("styles"),n=t.label,r=e._totalTitleSize,i=Math.round(e.get("bottomTickOffset")+e._maxLabelSize+n.margin.top+r);e._explicitHeight&&(i=e._explicitHeight),e.set("calculatedHeight",i)}},e.BottomAxisLayout=f,l=function(){},l.prototype={_getDefaultMargins:function(){return{top:0,left:0,right:0,bottom:4}},setTickOffsets:function(){var e=this,t=e.get("styles").majorTicks,n=t.length,r=n*.5,i=t.display;e.set("leftTickOffset",0),e.set("rightTickOffset",0);switch(i){case"inside":e.set("bottomTickOffset",n),e.set("topTickOffset",0);break;case"outside":e.set("bottomTickOffset",0),e.set("topTickOffset",n);break;case"cross":e.set("topTickOffset",r),e.set("bottomTickOffset",r);break;default:e.set("topTickOffset",0),e.set("bottomTickOffset",0)}},getLineStart:function(){var e=this,t=e.get("styles"),n=t.padding,r=t.majorTicks,i=r.length,s=r.display,o={x:0,y:n.top};return s==="outside"?o.y+=i:s==="cross"&&(o.y+=i/2),o},drawTick:function(e,t,n){var r=this,i=r.get("styles"),s=i.padding,o=n.length,u={x:t.x,y:s.top},a={x:t.x,y:o+s.top};r.drawLine(e,u,a)},getLabelPoint:function(e){return{x:e.x,y:e.y-this.get("topTickOffset")}},updateMaxLabelSize:function(e,t){var n=this,r=this._labelRotationProps,i=r.rot,s=r.absRot,o=r.sinRadians,u=r.cosRadians,a;i===0?a=t:s===90?a=e:a=o*e+u*t,n._maxLabelSize=Math.max(n._maxLabelSize,a)},getExplicitlySized:function(e){if(this._explicitHeight){var t=this,n=t._explicitHeight,r=t._totalTitleSize,i=t.get("topTickOffset"),s=e.label.margin.right;return t._maxLabelSize=n-(i+s+r),!0}return!1},positionTitle:function(e){var t=this,n=t._titleBounds,r=t.get("styles").title.margin,i=t._titleRotationProps,s=e.offsetWidth,o=e.offsetHeight,u=n.bottom-n.top,a=t.get("width")*.5-s*.5,f=u/2-o/2;i.labelWidth=s,i.labelHeight=o,r&&r.top&&(f+=r.top),i.x=a,i.y=f,i.transformOrigin=[.5,.5],t._rotate(e,i)},positionLabel:function(e,t,n,r){var i=this,s=this._totalTitleSize,o=i._maxLabelSize,u=t.x,a=t.y+s+o,f=this._labelRotationProps,l=f.rot,c=f.absRot,h=this._labelWidths[r],p=this._labelHeights[r];l===0?(u-=h*.5,a-=p):l===90?(u-=h,a-=p*.5):l===-90?a-=p*.5:l>0?(u-=h,a-=p-p*l/180):a-=p-p*c/180,f.x=Math.round(u),f.y=Math.round(a),f.labelWidth=h,f.labelHeight=p,this._rotate(e,f)},_setRotationCoords:function(e){var t=e.rot,n=e.absRot,r=e.labelWidth,i=e.labelHeight,s,o;t===0?(s=r*.5,o=i):t===90?(s=r,o=i*.5):t===-90?o=i*.5:t>0?(s=r,o=i-i*t/180):o=i-i*n/180,e.x-=s,e.y-=o},_getTransformOrigin:function(e){var t;return e===0?t=[0,0]:e===90?t=[1,.5]:e===-90?t=[0,.5]:e>0?t=[1,.5]:t=[0,.5],t},offsetNodeForTick:function(){},setCalculatedSize:function(){var e=this,t=e.get("graphic"),n=e.get("styles"),r=n.label.margin,i=r.bottom+e._maxLabelSize,s=e._totalTitleSize,o=this.get("topTickOffset"),u=Math.round(o+i+s);this._explicitHeight&&(u=this._explicitHeight),e.set("calculatedHeight",u),t.set("y",u-o)}},e.TopAxisLayout=l,e.Axis=e.Base.create("axis",e.Widget,[e.AxisBase],{getLabelByIndex:function(e,t){var n=this.get("position"),r=n==="left"||n==="right"?"vertical":"horizontal";return this._getLabelByIndex(e,t,r)},bindUI:function(){this.after("dataReady",e.bind(this._dataChangeHandler,this)),this.after("dataUpdate",e.bind(this._dataChangeHandler,this)),this.after("stylesChange",this._updateHandler),this.after("overlapGraphChange",this._updateHandler),this.after("positionChange",this._positionChangeHandler),this.after("widthChange",this._handleSizeChange),this.after("heightChange",this._handleSizeChange),this.after("calculatedWidthChange",this._handleSizeChange),this.after("calculatedHeightChange",this._handleSizeChange)},_calculatedWidth:0,_calculatedHeight:0,_dataChangeHandler:function(){this.get("rendered")&&this._drawAxis()},_positionChangeHandler:function(e){this._updateGraphic(e.newVal),this._updateHandler()},_updateGraphic:function(e){var t=this.get("graphic");e==="none"?t&&t.destroy():t||this._setCanvas()},_updateHandler:function(){this.get("rendered")&&this._drawAxis()},renderUI:function(){this._updateGraphic(this.get("position"))},syncUI:function(){var e=this._layout,t,n,r,i,s;if(e){t=e._getDefaultMargins(),n=this.get("styles"),r=n.label.margin,i=n.title.margin;for(s in t)t.hasOwnProperty(s)&&(r[s]=r[s]===undefined?t[s]:r[s],i[s]=i[s]===undefined? -t[s]:i[s])}this._drawAxis()},_setCanvas:function(){var t=this.get("contentBox"),n=this.get("boundingBox"),r=this.get("position"),i=this._parentNode,s=this.get("width"),o=this.get("height");n.setStyle("position","absolute"),n.setStyle("zIndex",2),s=s?s+"px":i.getStyle("width"),o=o?o+"px":i.getStyle("height"),r==="top"||r==="bottom"?t.setStyle("width",s):t.setStyle("height",o),t.setStyle("position","relative"),t.setStyle("left","0px"),t.setStyle("top","0px"),this.set("graphic",new e.Graphic),this.get("graphic").render(t)},_getDefaultStyles:function(){var t={majorTicks:{display:"inside",length:4,color:"#dad8c9",weight:1,alpha:1},minorTicks:{display:"none",length:2,color:"#dad8c9",weight:1},line:{weight:1,color:"#dad8c9",alpha:1},majorUnit:{determinant:"count",count:11,distance:75},top:"0px",left:"0px",width:"100px",height:"100px",label:{color:"#808080",alpha:1,fontSize:"85%",rotation:0,margin:{top:undefined,right:undefined,bottom:undefined,left:undefined}},title:{color:"#808080",alpha:1,fontSize:"85%",rotation:undefined,margin:{top:undefined,right:undefined,bottom:undefined,left:undefined}},hideOverlappingLabelTicks:!1};return e.merge(e.Renderer.prototype._getDefaultStyles(),t)},_handleSizeChange:function(e){var t=e.attrName,n=this.get("position"),r=n==="left"||n==="right",i=this.get("contentBox"),s=n==="bottom"||n==="top";i.setStyle("width",this.get("width")),i.setStyle("height",this.get("height")),(s&&t==="width"||r&&t==="height")&&this._drawAxis()},_layoutClasses:{top:l,bottom:f,left:u,right:a},drawLine:function(e,t,n){e.moveTo(t.x,t.y),e.lineTo(n.x,n.y)},_getTextRotationProps:function(e){if(e.rotation===undefined)switch(this.get("position")){case"left":e.rotation=-90;break;case"right":e.rotation=90;break;default:e.rotation=0}var t=Math.min(90,Math.max(-90,e.rotation)),n=Math.abs(t),r=Math.PI/180,i=parseFloat(parseFloat(Math.sin(n*r)).toFixed(8)),s=parseFloat(parseFloat(Math.cos(n*r)).toFixed(8));return{rot:t,absRot:n,radCon:r,sinRadians:i,cosRadians:s,textAlpha:e.alpha}},_drawAxis:function(){if(this._drawing){this._callLater=!0;return}this._drawing=!0,this._callLater=!1;if(this._layout){var e=this.get("styles"),t=e.line,n=e.label,r=e.majorTicks,i=r.display!=="none",s,o=e.majorUnit,u,a,f=0,l=this._layout,c,h,p,d,v,m=this.get("labelFunction"),g=this.get("labelFunctionScope"),y=this.get("labelFormat"),b=this.get("graphic"),w=this.get("path"),E,S,x=this.get("position"),T=x==="left"||x==="right"?"vertical":"horizontal";this._labelWidths=[],this._labelHeights=[],b.set("autoDraw",!1),w.clear(),w.set("stroke",{weight:t.weight,color:t.color,opacity:t.alpha}),this._labelRotationProps=this._getTextRotationProps(n),this._labelRotationProps.transformOrigin=l._getTransformOrigin(this._labelRotationProps.rot),l.setTickOffsets.apply(this),c=this.getLength(),h=l.getLineStart.apply(this),u=this.getTotalMajorUnits(o),a=this.getMajorUnitDistance(u,c,o),this.set("edgeOffset",this.getEdgeOffset(u,c)*.5);if(u<1)this._clearLabelCache();else{s=this.getFirstPoint(h),this.drawLine(w,h,this.getLineEnd(s)),i&&(E=this.get("tickPath"),E.clear(),E.set("stroke",{weight:r.weight,color:r.color,opacity:r.alpha}),l.drawTick.apply(this,[E,s,r])),this._createLabelCache(),this._tickPoints=[],this._maxLabelSize=0,this._totalTitleSize=0,this._titleSize=0,this._setTitle(),S=l.getExplicitlySized.apply(this,[e]);for(;f0?s=o.shift():(s=r.createElement("span"),s.className=e.Lang.trim([s.className,"axisLabel"].join(" ")),this.get("contentBox").append(s)),r.createElementNS||s.style.filter&&(s.style.filter=null),s.style.display="block",s.style.whiteSpace="nowrap",s.style.position="absolute";for(i in n)n.hasOwnProperty(i)&&!u.hasOwnProperty(i)&&(s.style[i]=n[i]);return s},_createLabelCache:function(){if(this._labels)while(this._labels.length>0)this._labelCache.push(this._labels.shift());else this._clearLabelCache -();this._labels=[]},_clearLabelCache:function(){if(this._labelCache){var t=this._labelCache.length,n=0,r;for(;n-1&&!isNaN(l)&&(f="progid:DXImageTransform.Microsoft.Alpha(Opacity="+Math.round(l*100)+")"),s!==0?(c.rotate(s),p=c.getContentRect(n.labelWidth,n.labelHeight),c.init(),c.translate(p.left,p.top),c.translate(u,a),this._simulateRotateWithTransformOrigin(c,s,h,n.labelWidth,n.labelHeight),f?f+=" ":f="",f+=c.toFilterText(),t.style.left=c.dx+"px",t.style.top=c.dy+"px"):(t.style.left=u+"px",t.style.top=a+"px"),f&&(t.style.filter=f))},_simulateRotateWithTransformOrigin:function(e,t,n,r,i){var s=n[0]*r,o=n[1]*i;s=isNaN(s)?0:s,o=isNaN(o)?0:o,e.translate(s,o),e.rotate(t),e.translate(-s,-o)},getMaxLabelBounds:function(){return this._getLabelBounds(this.getMaximumValue())},getMinLabelBounds:function(){return this._getLabelBounds(this.getMinimumValue())},_getLabelBounds:function(t){var n=this._layout,r=this.get("styles").label,i=new e.Matrix,s,o=this._getTextRotationProps(r);return o.transformOrigin=n._getTransformOrigin(o.rot),s=this.getLabel({x:0,y:0},r),this.get("appendLabelFunction")(s,this.get("labelFunction").apply(this,[t,this.get("labelFormat")])),o.labelWidth=s.offsetWidth,o.labelHeight=s.offsetHeight,this._removeChildren(s),e.Event.purgeElement(s,!0),s.parentNode.removeChild(s),o.x=0,o.y=0,n._setRotationCoords(o),i.translate(o.x,o.y),this._simulateRotateWithTransformOrigin(i,o.rot,o.transformOrigin,o.labelWidth,o.labelHeight),i.getContentRect(o.labelWidth,o.labelHeight)},_removeChildren:function(e){if(e.hasChildNodes()){var t;while(e.firstChild)t=e.firstChild,this._removeChildren(t),e.removeChild(t)}},destructor:function(){var e=this.get("contentBox").getDOMNode(),t=this.get("labels"),n=this.get("graphic"),r,i=t?t.length:0;if(i>0)while(t.length>0)r=t.shift(),this._removeChildren(r),e.removeChild(r),r=null;n&&n.destroy()},_maxLabelSize:0,_setText:function(e,t){e.innerHTML="",i.isNumber(t)?t+="":t||(t=""),s(t)&&(t=r.createTextNode(t)),e.appendChild(t)},getTotalMajorUnits:function(){var e,t=this.get("styles").majorUnit,n=this.getLength();return t.determinant==="count"?e=t.count:t.determinant==="distance"&&(e=n/t.distance+1),e},getMajorUnitDistance:function(e,t,n){var r;return n.determinant==="count"?(this.get("calculateEdgeOffset")||(e-=1),r=t/e):n.determinant==="distance"&&(r=n.distance),r},_hasDataOverflow:function(){return this.get("setMin")||this.get("setMax")?!0:!1},getMinimumValue:function(){return this.get("minimum")},getMaximumValue:function(){return this.get("maximum")}},{ATTRS:{width:{lazyAdd:!1,getter:function(){return this._explicitWidth?this._explicitWidth:this._calculatedWidth},setter:function(e){return this._explicitWidth=e,e}},height:{lazyAdd:!1,getter:function(){return this._explicitHeight?this._explicitHeight:this._calculatedHeight},setter:function(e){return this._explicitHeight=e,e}},calculatedWidth:{getter:function(){return this._calculatedWidth},setter:function(e){return this._calculatedWidth=e,e}},calculatedHeight:{getter:function(){return this._calculatedHeight},setter:function(e){return this._calculatedHeight=e,e}},edgeOffset:{value:0},graphic:{},path:{readOnly:!0,getter:function(){if(!this._path){var e=this.get("graphic");e&&(this._path=e.addShape({type:"path"}))}return this._path}},tickPath:{readOnly:!0,getter:function(){if(!this._tickPath){var e=this.get("graphic");e&&(this._tickPath=e.addShape({type:"path"}))}return this._tickPath}},node:{},position:{lazyAdd:!1,setter:function(e){var t=this._layoutClasses[e];return e&&e!=="none"&&(this._layout=new t),e}},topTickOffset:{value:0},bottomTickOffset:{value:0},leftTickOffset:{value:0},rightTickOffset:{value:0},labels:{readOnly:!0,getter:function(){return this._labels}},tickPoints:{readOnly:!0,getter:function(){return this.get("position")==="none"?this.get("styles").majorUnit.count:this._tickPoints}},overlapGraph:{value:!0,validator:function(e){return i.isBoolean(e)}},maxLabelSize:{getter:function(){return this._maxLabelSize},setter:function(e){return this._maxLabelSize=e,e}},title:{value:null},appendLabelFunction:{valueFn:function(){return this._setText}},appendTitleFunction:{valueFn:function(){return this._setText}}}}),e.AxisType=e.Base.create("baseAxis",e.Axis,[],{})},"3.9.1",{requires:["dom","widget","widget-position","widget-stack","graphics","axis-base"]}); +t[s]:i[s])}this._drawAxis()},_setCanvas:function(){var t=this.get("contentBox"),n=this.get("boundingBox"),r=this.get("position"),i=this._parentNode,s=this.get("width"),o=this.get("height");n.setStyle("position","absolute"),n.setStyle("zIndex",2),s=s?s+"px":i.getStyle("width"),o=o?o+"px":i.getStyle("height"),r==="top"||r==="bottom"?t.setStyle("width",s):t.setStyle("height",o),t.setStyle("position","relative"),t.setStyle("left","0px"),t.setStyle("top","0px"),this.set("graphic",new e.Graphic),this.get("graphic").render(t)},_getDefaultStyles:function(){var t={majorTicks:{display:"inside",length:4,color:"#dad8c9",weight:1,alpha:1},minorTicks:{display:"none",length:2,color:"#dad8c9",weight:1},line:{weight:1,color:"#dad8c9",alpha:1},majorUnit:{determinant:"count",count:11,distance:75},top:"0px",left:"0px",width:"100px",height:"100px",label:{color:"#808080",alpha:1,fontSize:"85%",rotation:0,margin:{top:undefined,right:undefined,bottom:undefined,left:undefined}},title:{color:"#808080",alpha:1,fontSize:"85%",rotation:undefined,margin:{top:undefined,right:undefined,bottom:undefined,left:undefined}},hideOverlappingLabelTicks:!1};return e.merge(e.Renderer.prototype._getDefaultStyles(),t)},_handleSizeChange:function(e){var t=e.attrName,n=this.get("position"),r=n==="left"||n==="right",i=this.get("contentBox"),s=n==="bottom"||n==="top";i.setStyle("width",this.get("width")),i.setStyle("height",this.get("height")),(s&&t==="width"||r&&t==="height")&&this._drawAxis()},_layoutClasses:{top:l,bottom:f,left:u,right:a},drawLine:function(e,t,n){e.moveTo(t.x,t.y),e.lineTo(n.x,n.y)},_getTextRotationProps:function(e){if(e.rotation===undefined)switch(this.get("position")){case"left":e.rotation=-90;break;case"right":e.rotation=90;break;default:e.rotation=0}var t=Math.min(90,Math.max(-90,e.rotation)),n=Math.abs(t),r=Math.PI/180,i=parseFloat(parseFloat(Math.sin(n*r)).toFixed(8)),s=parseFloat(parseFloat(Math.cos(n*r)).toFixed(8));return{rot:t,absRot:n,radCon:r,sinRadians:i,cosRadians:s,textAlpha:e.alpha}},_drawAxis:function(){if(this._drawing){this._callLater=!0;return}this._drawing=!0,this._callLater=!1;if(this._layout){var e=this.get("styles"),t=e.line,n=e.label,r=e.majorTicks,i=r.display!=="none",s,o=0,u=this._layout,a,f,l,c,h,p=this.get("labelFunction"),d=this.get("labelFunctionScope"),v=this.get("labelFormat"),m=this.get("graphic"),g=this.get("path"),y,b,w=this.get("position"),E,S,x,T,N,C,k,L=this._labelValuesExplicitlySet?this.get("labelValues"):null,A=w==="left"||w==="right"?"vertical":"horizontal";this._labelWidths=[],this._labelHeights=[],m.set("autoDraw",!1),g.clear(),g.set("stroke",{weight:t.weight,color:t.color,opacity:t.alpha}),this._labelRotationProps=this._getTextRotationProps(n),this._labelRotationProps.transformOrigin=u._getTransformOrigin(this._labelRotationProps.rot),u.setTickOffsets.apply(this),a=this.getLength(),s=this.getTotalMajorUnits(),k=this.getEdgeOffset(s,a),this.set("edgeOffset",k),f=u.getLineStart.apply(this),A==="vertical"?(N="x",C="y"):(N="y",C="x"),E=this._getLabelData(f[N],N,C,this.get("minimum"),this.get("maximum"),k,a-k-k,s,L),T=E.points,S=E.values,s=T.length,this._labelValuesExplicitlySet||this.set("labelValues",S,{src:"internal"}),this.get("hideFirstMajorUnit")&&(T.shift(),S.shift(),s-=1),this.get("hideLastMajorUnit")&&(T.pop(),S.pop(),s-=1);if(s<1)this._clearLabelCache();else{this.drawLine(g,f,this.getLineEnd(f));if(i){y=this.get("tickPath"),y.clear(),y.set("stroke",{weight:r.weight,color:r.color,opacity:r.alpha});for(o=0;o0?s=o.shift():(s=r.createElement("span"),s.className=e.Lang.trim([s.className,"axisLabel"].join(" ")),this.get("contentBox").append(s)),r.createElementNS||s.style.filter&&(s.style.filter=null),s.style.display="block" +,s.style.whiteSpace="nowrap",s.style.position="absolute";for(i in n)n.hasOwnProperty(i)&&!u.hasOwnProperty(i)&&(s.style[i]=n[i]);return s},_createLabelCache:function(){if(this._labels)while(this._labels.length>0)this._labelCache.push(this._labels.shift());else this._clearLabelCache();this._labels=[]},_clearLabelCache:function(){if(this._labelCache){var t=this._labelCache.length,n=0,r;for(;n-1&&!isNaN(l)&&(f="progid:DXImageTransform.Microsoft.Alpha(Opacity="+Math.round(l*100)+")"),s!==0?(c.rotate(s),p=c.getContentRect(n.labelWidth,n.labelHeight),c.init(),c.translate(p.left,p.top),c.translate(u,a),this._simulateRotateWithTransformOrigin(c,s,h,n.labelWidth,n.labelHeight),f?f+=" ":f="",f+=c.toFilterText(),t.style.left=c.dx+"px",t.style.top=c.dy+"px"):(t.style.left=u+"px",t.style.top=a+"px"),f&&(t.style.filter=f))},_simulateRotateWithTransformOrigin:function(e,t,n,r,i){var s=n[0]*r,o=n[1]*i;s=isNaN(s)?0:s,o=isNaN(o)?0:o,e.translate(s,o),e.rotate(t),e.translate(-s,-o)},getMaxLabelBounds:function(){return this._getLabelBounds(this.getMaximumValue())},getMinLabelBounds:function(){return this._getLabelBounds(this.getMinimumValue())},_getLabelBounds:function(t){var n=this._layout,r=this.get("styles").label,i=new e.Matrix,s,o=this._getTextRotationProps(r);return o.transformOrigin=n._getTransformOrigin(o.rot),s=this.getLabel({x:0,y:0},r),this.get("appendLabelFunction")(s,this.get("labelFunction").apply(this,[t,this.get("labelFormat")])),o.labelWidth=s.offsetWidth,o.labelHeight=s.offsetHeight,this._removeChildren(s),e.Event.purgeElement(s,!0),s.parentNode.removeChild(s),o.x=0,o.y=0,n._setRotationCoords(o),i.translate(o.x,o.y),this._simulateRotateWithTransformOrigin(i,o.rot,o.transformOrigin,o.labelWidth,o.labelHeight),i.getContentRect(o.labelWidth,o.labelHeight)},_removeChildren:function(e){if(e.hasChildNodes()){var t;while(e.firstChild)t=e.firstChild,this._removeChildren(t),e.removeChild(t)}},destructor:function(){var e=this.get("contentBox").getDOMNode(),t=this.get("labels"),n=this.get("graphic"),r,i=t?t.length:0;if(i>0)while(t.length>0)r=t.shift(),this._removeChildren(r),e.removeChild(r),r=null;n&&n.destroy()},_maxLabelSize:0,_setText:function(e,t){e.innerHTML="",i.isNumber(t)?t+="":t||(t=""),s(t)&&(t=r.createTextNode(t)),e.appendChild(t)},getTotalMajorUnits:function(){var e,t=this.get("styles").majorUnit,n;return t.determinant==="count"?e=t.count:t.determinant==="distance"&&(n=this.getLength(),e=n/t.distance+1),e},getMajorUnitDistance:function(e,t,n){var r;return n.determinant==="count"?(this.get("calculateEdgeOffset")||(e-=1),r=t/e):n.determinant==="distance"&&(r=n.distance),r},_hasDataOverflow:function(){return this.get("setMin")||this.get("setMax")?!0:!1},getMinimumValue:function(){return this.get("minimum")},getMaximumValue:function(){return this.get("maximum")}},{ATTRS:{width:{lazyAdd:!1,getter:function(){return this._explicitWidth?this._explicitWidth:this._calculatedWidth},setter:function(e){return this._explicitWidth=e,e}},height:{lazyAdd:!1,getter:function(){return this._explicitHeight?this._explicitHeight:this._calculatedHeight},setter:function(e){return this._explicitHeight=e,e}},calculatedWidth:{getter:function(){return this._calculatedWidth},setter:function(e){return this._calculatedWidth=e,e}},calculatedHeight:{getter:function(){return this._calculatedHeight},setter:function(e){return this._calculatedHeight=e,e}},edgeOffset:{value:0},graphic:{},path:{readOnly:!0,getter:function(){if(!this._path){var e=this.get("graphic");e&&(this._path=e.addShape({type:"path"}))}return this._path}},tickPath:{readOnly:!0,getter:function(){if(!this._tickPath){var e=this.get("graphic");e&&(this._tickPath=e.addShape({type:"path"}))}return this._tickPath}},node:{},position:{lazyAdd:!1,setter:function(e){var t=this._layoutClasses[e];return e&&e!=="none"&&(this._layout=new t),e}},topTickOffset:{value:0},bottomTickOffset:{value:0},leftTickOffset:{value:0},rightTickOffset:{value:0},labels:{readOnly:!0,getter:function(){return this._labels}},tickPoints:{readOnly:!0,getter:function(){return this.get("position")==="none"?this.get("styles").majorUnit.count:this._tickPoints}},overlapGraph:{value:!0,validator:function(e){return i.isBoolean(e)}},maxLabelSize:{getter:function(){return this._maxLabelSize},setter:function(e){return this._maxLabelSize=e,e}},title:{value:null},appendLabelFunction:{valueFn:function(){return this._setText}},appendTitleFunction:{valueFn:function(){return this._setText}},labelValues:{lazyAdd:!1,setter:function(e){var t=arguments[2];return!e||t&&t.src&&t.src==="internal"?this._labelValuesExplicitlySet=!1:this._labelValuesExplicitlySet=!0,e}},hideFirstMajorUnit:{value:!1},hideLastMajorUnit:{value:!1}}}),e.AxisType=e.Base.create("baseAxis",e.Axis,[],{})},"3.12.0",{requires:["dom","widget","widget-position","widget-stack","graphics","axis-base"]}); diff --git a/lib/yuilib/3.9.1/build/axis/axis.js b/lib/yuilib/3.12.0/axis/axis.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/axis/axis.js rename to lib/yuilib/3.12.0/axis/axis.js index 7f3471d26bb..c4c0383be85 --- a/lib/yuilib/3.9.1/build/axis/axis.js +++ b/lib/yuilib/3.12.0/axis/axis.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('axis', function (Y, NAME) { /** @@ -1866,10 +1872,7 @@ Y.Axis = Y.Base.create("axis", Y.Widget, [Y.AxisBase], { labelStyles = styles.label, majorTickStyles = styles.majorTicks, drawTicks = majorTickStyles.display !== "none", - tickPoint, - majorUnit = styles.majorUnit, len, - majorUnitDistance, i = 0, layout = this._layout, layoutLength, @@ -1885,6 +1888,14 @@ Y.Axis = Y.Base.create("axis", Y.Widget, [Y.AxisBase], { tickPath, explicitlySized, position = this.get("position"), + labelData, + labelValues, + point, + points, + staticCoord, + dynamicCoord, + edgeOffset, + explicitLabels = this._labelValuesExplicitlySet ? this.get("labelValues") : null, direction = (position === "left" || position === "right") ? "vertical" : "horizontal"; this._labelWidths = []; this._labelHeights = []; @@ -1899,18 +1910,66 @@ Y.Axis = Y.Base.create("axis", Y.Widget, [Y.AxisBase], { this._labelRotationProps.transformOrigin = layout._getTransformOrigin(this._labelRotationProps.rot); layout.setTickOffsets.apply(this); layoutLength = this.getLength(); + + len = this.getTotalMajorUnits(); + edgeOffset = this.getEdgeOffset(len, layoutLength); + this.set("edgeOffset", edgeOffset); lineStart = layout.getLineStart.apply(this); - len = this.getTotalMajorUnits(majorUnit); - majorUnitDistance = this.getMajorUnitDistance(len, layoutLength, majorUnit); - this.set("edgeOffset", this.getEdgeOffset(len, layoutLength) * 0.5); + + if(direction === "vertical") + { + staticCoord = "x"; + dynamicCoord = "y"; + } + else + { + staticCoord = "y"; + dynamicCoord = "x"; + } + + labelData = this._getLabelData( + lineStart[staticCoord], + staticCoord, + dynamicCoord, + this.get("minimum"), + this.get("maximum"), + edgeOffset, + layoutLength - edgeOffset - edgeOffset, + len, + explicitLabels + ); + + points = labelData.points; + labelValues = labelData.values; + len = points.length; + if(!this._labelValuesExplicitlySet) + { + this.set("labelValues", labelValues, {src: "internal"}); + } + + //Don't create the last label or tick. + if(this.get("hideFirstMajorUnit")) + { + points.shift(); + labelValues.shift(); + len = len - 1; + } + + //Don't create the last label or tick. + if(this.get("hideLastMajorUnit")) + { + points.pop(); + labelValues.pop(); + len = len - 1; + } + if(len < 1) { this._clearLabelCache(); } else { - tickPoint = this.getFirstPoint(lineStart); - this.drawLine(path, lineStart, this.getLineEnd(tickPoint)); + this.drawLine(path, lineStart, this.getLineEnd(lineStart)); if(drawTicks) { tickPath = this.get("tickPath"); @@ -1920,41 +1979,39 @@ Y.Axis = Y.Base.create("axis", Y.Widget, [Y.AxisBase], { color: majorTickStyles.color, opacity: majorTickStyles.alpha }); - layout.drawTick.apply(this, [tickPath, tickPoint, majorTickStyles]); + for(i = 0; i < len; i = i + 1) + { + point = points[i]; + if(point) + { + layout.drawTick.apply(this, [tickPath, points[i], majorTickStyles]); + } + } } this._createLabelCache(); - this._tickPoints = []; + this._tickPoints = points; this._maxLabelSize = 0; this._totalTitleSize = 0; this._titleSize = 0; this._setTitle(); explicitlySized = layout.getExplicitlySized.apply(this, [styles]); - for(; i < len; ++i) + for(i = 0; i < len; i = i + 1) { - if(drawTicks) + point = points[i]; + if(point) { - layout.drawTick.apply(this, [tickPath, tickPoint, majorTickStyles]); + label = this.getLabel(point, labelStyles); + this._labels.push(label); + this.get("appendLabelFunction")(label, labelFunction.apply(labelFunctionScope, [labelValues[i], labelFormat])); + labelWidth = Math.round(label.offsetWidth); + labelHeight = Math.round(label.offsetHeight); + if(!explicitlySized) + { + this._layout.updateMaxLabelSize.apply(this, [labelWidth, labelHeight]); + } + this._labelWidths.push(labelWidth); + this._labelHeights.push(labelHeight); } - position = this.getPosition(tickPoint); - label = this.getLabel(tickPoint, labelStyles); - this._labels.push(label); - this._tickPoints.push({x:tickPoint.x, y:tickPoint.y}); - this.get("appendLabelFunction")( - label, - labelFunction.apply( - labelFunctionScope, - [this._getLabelByIndex(i, len, direction), labelFormat] - ) - ); - labelWidth = Math.round(label.offsetWidth); - labelHeight = Math.round(label.offsetHeight); - if(!explicitlySized) - { - this._layout.updateMaxLabelSize.apply(this, [labelWidth, labelHeight]); - } - this._labelWidths.push(labelWidth); - this._labelHeights.push(labelHeight); - tickPoint = this.getNextPoint(tickPoint, majorUnitDistance); } this._clearLabelCache(); if(this.get("overlapGraph")) @@ -1966,6 +2023,7 @@ Y.Axis = Y.Base.create("axis", Y.Widget, [Y.AxisBase], { { this._layout.positionTitle.apply(this, [this._titleTextField]); } + len = this._labels.length; for(i = 0; i < len; ++i) { layout.positionLabel.apply(this, [this.get("labels")[i], this._tickPoints[i], styles, i]); @@ -2282,87 +2340,6 @@ Y.Axis = Y.Base.create("axis", Y.Widget, [Y.AxisBase], { return np; }, - /** - * Gets the position of the next point on an axis. - * - * @method getNextPoint - * @param {Object} point Object containing x and y coordinates. - * @param {Number} majorUnitDistance Distance in pixels between ticks. - * @return Object - * @private - */ - getNextPoint: function(point, majorUnitDistance) - { - var pos = this.get("position"); - if(pos === "top" || pos === "bottom") - { - point.x = point.x + majorUnitDistance; - } - else - { - point.y = point.y - majorUnitDistance; - } - return point; - }, - - /** - * Calculates the placement of last tick on an axis. - * - * @method getLastPoint - * @return Object - * @private - */ - getLastPoint: function() - { - var style = this.get("styles"), - padding = style.padding, - w = this.get("width"), - pos = this.get("position"); - if(pos === "top" || pos === "bottom") - { - return {x:w - padding.right, y:padding.top}; - } - else - { - return {x:padding.left, y:padding.top}; - } - }, - - /** - * Calculates position on the axis. - * - * @method getPosition - * @param {Object} point contains x and y values - * @private - */ - getPosition: function(point) - { - var p, - h = this.get("height"), - style = this.get("styles"), - padding = style.padding, - pos = this.get("position"), - dataType = this.get("dataType"); - if(pos === "left" || pos === "right") - { - //Numeric data on a vertical axis is displayed from bottom to top. - //Categorical and Timeline data is displayed from top to bottom. - if(dataType === "numeric") - { - p = (h - (padding.top + padding.bottom)) - (point.y - padding.top); - } - else - { - p = point.y - padding.top; - } - } - else - { - p = point.x - padding.left; - } - return p; - }, - /** * Rotates and positions a text field. * @@ -2601,13 +2578,14 @@ Y.Axis = Y.Base.create("axis", Y.Widget, [Y.AxisBase], { { var units, majorUnit = this.get("styles").majorUnit, - len = this.getLength(); + len; if(majorUnit.determinant === "count") { units = majorUnit.count; } else if(majorUnit.determinant === "distance") { + len = this.getLength(); units = (len/majorUnit.distance) + 1; } return units; @@ -2785,7 +2763,7 @@ Y.Axis = Y.Base.create("axis", Y.Widget, [Y.AxisBase], { }, /** - * Difference betweend the first/last tick and edge of axis. + * Difference between the first/last tick and edge of axis. * * @attribute edgeOffset * @type Number @@ -3047,6 +3025,54 @@ Y.Axis = Y.Base.create("axis", Y.Widget, [Y.AxisBase], { { return this._setText; } + }, + + /** + * An array containing the unformatted values of the axis labels. By default, TimeAxis, NumericAxis and + * StackedAxis labelValues are determined by the majorUnit style. By default, CategoryAxis labels are + * determined by the values of the dataProvider. + *

        When the labelValues attribute is explicitly set, the labelValues are dictated by the set value and + * the position of ticks and labels are determined by where those values would fall on the axis.

        + * + * @attribute labelValues + * @type Array + */ + labelValues: { + lazyAdd: false, + + setter: function(val) + { + var opts = arguments[2]; + if(!val || (opts && opts.src && opts.src === "internal")) + { + this._labelValuesExplicitlySet = false; + } + else + { + this._labelValuesExplicitlySet = true; + } + return val; + } + }, + + /** + * Suppresses the creation of the the first visible label and tick. + * + * @attribute hideFirstMajorUnit + * @type Boolean + */ + hideFirstMajorUnit: { + value: false + }, + + /** + * Suppresses the creation of the the last visible label and tick. + * + * @attribute hideLastMajorUnit + * @type Boolean + */ + hideLastMajorUnit: { + value: false } /** @@ -3107,4 +3133,4 @@ Y.Axis = Y.Base.create("axis", Y.Widget, [Y.AxisBase], { Y.AxisType = Y.Base.create("baseAxis", Y.Axis, [], {}); -}, '3.9.1', {"requires": ["dom", "widget", "widget-position", "widget-stack", "graphics", "axis-base"]}); +}, '3.12.0', {"requires": ["dom", "widget", "widget-position", "widget-stack", "graphics", "axis-base"]}); diff --git a/lib/yuilib/3.9.1/build/base-base/base-base-debug.js b/lib/yuilib/3.12.0/base-base/base-base-debug.js old mode 100644 new mode 100755 similarity index 59% rename from lib/yuilib/3.9.1/build/base-base/base-base-debug.js rename to lib/yuilib/3.12.0/base-base/base-base-debug.js index bbae3f498b4..5f552f68d1b --- a/lib/yuilib/3.9.1/build/base-base/base-base-debug.js +++ b/lib/yuilib/3.12.0/base-base/base-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('base-base', function (Y, NAME) { /** @@ -32,6 +38,20 @@ YUI.add('base-base', function (Y, NAME) { *

        * *

        + * **NOTE:** Prior to version 3.11.0, ATTRS would get added a class at a time. That is, + * Base would loop through each class in the hierarchy, and add the class' ATTRS, and + * then call it's initializer, and move on to the subclass' ATTRS and initializer. As of + * 3.11.0, ATTRS from all classes in the hierarchy are added in one `addAttrs` call before + * any initializers are called. This fixes subtle edge-case issues with subclass ATTRS overriding + * superclass `setter`, `getter` or `valueFn` definitions and being unable to get/set attributes + * defined by the subclass. This order of operation change may impact `setter`, `getter` or `valueFn` + * code which expects a superclass' initializer to have run. This is expected to be rare, but to support + * it, Base supports a `_preAddAttrs()`, method hook (same signature as `addAttrs`). Components can + * implement this method on their prototype for edge cases which do require finer control over + * the order in which attributes are added (see widget-htmlparser). + *

        + * + *

        * The static NAME property of each class extending * from Base will be used as the identifier for the class, and is used by Base to prefix * all events fired by instances of that class. @@ -55,14 +75,18 @@ YUI.add('base-base', function (Y, NAME) { *

        * *
        - *
        on
        - *
        An event name to listener function map, to register event listeners for the "on" moment of the event. A constructor convenience property for the on method.
        - *
        after
        - *
        An event name to listener function map, to register event listeners for the "after" moment of the event. A constructor convenience property for the after method.
        - *
        bubbleTargets
        - *
        An object, or array of objects, to register as bubble targets for bubbled events fired by this instance. A constructor convenience property for the addTarget method.
        - *
        plugins
        - *
        A plugin, or array of plugins to be plugged into the instance (see PluginHost's plug method for signature details). A constructor convenience property for the plug method.
        + *
        on
        + *
        An event name to listener function map, to register event listeners for the "on" moment of the event. + * A constructor convenience property for the on method.
        + *
        after
        + *
        An event name to listener function map, to register event listeners for the "after" moment of the event. + * A constructor convenience property for the after method.
        + *
        bubbleTargets
        + *
        An object, or array of objects, to register as bubble targets for bubbled events fired by this instance. + * A constructor convenience property for the addTarget method.
        + *
        plugins
        + *
        A plugin, or array of plugins to be plugged into the instance (see PluginHost's plug method for signature details). + * A constructor convenience property for the plug method.
        *
        */ function Base() { @@ -131,6 +155,27 @@ YUI.add('base-base', function (Y, NAME) { */ Base.ATTRS = AttributeCore.protectAttrs(BaseCore.ATTRS); + /** + Provides a way to safely modify a `Y.Base` subclass' static `ATTRS` after + the class has been defined or created. + + Base-based classes cache information about the class hierarchy in order to + efficiently create instances. This cache includes includes the aggregated + `ATTRS` configs. If the static `ATTRS` configs need to be modified after the + class has been defined or create, then use this method which will make sure + to clear any cached data before making any modifications. + + @method modifyAttrs + @param {Function} [ctor] The constructor function whose `ATTRS` should be + modified. If a `ctor` function is not specified, then `this` is assumed + to be the constructor which hosts the `ATTRS`. + @param {Object} configs The collection of `ATTRS` configs to mix with the + existing attribute configurations. + @static + @since 3.10.0 + **/ + Base.modifyAttrs = BaseCore.modifyAttrs; + Y.mix(Base, BaseCore, false, null, 1); Y.mix(Base, AttributeExtras, false, null, 1); @@ -143,4 +188,4 @@ YUI.add('base-base', function (Y, NAME) { Y.Base = Base; -}, '3.9.1', {"requires": ["attribute-base", "base-core", "base-observable"]}); +}, '3.12.0', {"requires": ["attribute-base", "base-core", "base-observable"]}); diff --git a/lib/yuilib/3.12.0/base-base/base-base-min.js b/lib/yuilib/3.12.0/base-base/base-base-min.js new file mode 100755 index 00000000000..2a3e84afda4 --- /dev/null +++ b/lib/yuilib/3.12.0/base-base/base-base-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("base-base",function(e,t){function o(){i.apply(this,arguments),s.apply(this,arguments),r.apply(this,arguments)}var n=e.AttributeCore,r=e.AttributeExtras,i=e.BaseCore,s=e.BaseObservable;o._ATTR_CFG=i._ATTR_CFG.concat(s._ATTR_CFG),o._NON_ATTRS_CFG=i._NON_ATTRS_CFG.concat(s._NON_ATTRS_CFG),o.NAME="base",o.ATTRS=n.protectAttrs(i.ATTRS),o.modifyAttrs=i.modifyAttrs,e.mix(o,i,!1,null,1),e.mix(o,r,!1,null,1),e.mix(o,s,!0,null,1),o.prototype.constructor=o,e.Base=o},"3.12.0",{requires:["attribute-base","base-core","base-observable"]}); diff --git a/lib/yuilib/3.9.1/build/base-base/base-base.js b/lib/yuilib/3.12.0/base-base/base-base.js old mode 100644 new mode 100755 similarity index 59% rename from lib/yuilib/3.9.1/build/base-base/base-base.js rename to lib/yuilib/3.12.0/base-base/base-base.js index bbae3f498b4..5f552f68d1b --- a/lib/yuilib/3.9.1/build/base-base/base-base.js +++ b/lib/yuilib/3.12.0/base-base/base-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('base-base', function (Y, NAME) { /** @@ -32,6 +38,20 @@ YUI.add('base-base', function (Y, NAME) { *

        * *

        + * **NOTE:** Prior to version 3.11.0, ATTRS would get added a class at a time. That is, + * Base would loop through each class in the hierarchy, and add the class' ATTRS, and + * then call it's initializer, and move on to the subclass' ATTRS and initializer. As of + * 3.11.0, ATTRS from all classes in the hierarchy are added in one `addAttrs` call before + * any initializers are called. This fixes subtle edge-case issues with subclass ATTRS overriding + * superclass `setter`, `getter` or `valueFn` definitions and being unable to get/set attributes + * defined by the subclass. This order of operation change may impact `setter`, `getter` or `valueFn` + * code which expects a superclass' initializer to have run. This is expected to be rare, but to support + * it, Base supports a `_preAddAttrs()`, method hook (same signature as `addAttrs`). Components can + * implement this method on their prototype for edge cases which do require finer control over + * the order in which attributes are added (see widget-htmlparser). + *

        + * + *

        * The static NAME property of each class extending * from Base will be used as the identifier for the class, and is used by Base to prefix * all events fired by instances of that class. @@ -55,14 +75,18 @@ YUI.add('base-base', function (Y, NAME) { *

        * *
        - *
        on
        - *
        An event name to listener function map, to register event listeners for the "on" moment of the event. A constructor convenience property for the on method.
        - *
        after
        - *
        An event name to listener function map, to register event listeners for the "after" moment of the event. A constructor convenience property for the after method.
        - *
        bubbleTargets
        - *
        An object, or array of objects, to register as bubble targets for bubbled events fired by this instance. A constructor convenience property for the addTarget method.
        - *
        plugins
        - *
        A plugin, or array of plugins to be plugged into the instance (see PluginHost's plug method for signature details). A constructor convenience property for the plug method.
        + *
        on
        + *
        An event name to listener function map, to register event listeners for the "on" moment of the event. + * A constructor convenience property for the on method.
        + *
        after
        + *
        An event name to listener function map, to register event listeners for the "after" moment of the event. + * A constructor convenience property for the after method.
        + *
        bubbleTargets
        + *
        An object, or array of objects, to register as bubble targets for bubbled events fired by this instance. + * A constructor convenience property for the addTarget method.
        + *
        plugins
        + *
        A plugin, or array of plugins to be plugged into the instance (see PluginHost's plug method for signature details). + * A constructor convenience property for the plug method.
        *
        */ function Base() { @@ -131,6 +155,27 @@ YUI.add('base-base', function (Y, NAME) { */ Base.ATTRS = AttributeCore.protectAttrs(BaseCore.ATTRS); + /** + Provides a way to safely modify a `Y.Base` subclass' static `ATTRS` after + the class has been defined or created. + + Base-based classes cache information about the class hierarchy in order to + efficiently create instances. This cache includes includes the aggregated + `ATTRS` configs. If the static `ATTRS` configs need to be modified after the + class has been defined or create, then use this method which will make sure + to clear any cached data before making any modifications. + + @method modifyAttrs + @param {Function} [ctor] The constructor function whose `ATTRS` should be + modified. If a `ctor` function is not specified, then `this` is assumed + to be the constructor which hosts the `ATTRS`. + @param {Object} configs The collection of `ATTRS` configs to mix with the + existing attribute configurations. + @static + @since 3.10.0 + **/ + Base.modifyAttrs = BaseCore.modifyAttrs; + Y.mix(Base, BaseCore, false, null, 1); Y.mix(Base, AttributeExtras, false, null, 1); @@ -143,4 +188,4 @@ YUI.add('base-base', function (Y, NAME) { Y.Base = Base; -}, '3.9.1', {"requires": ["attribute-base", "base-core", "base-observable"]}); +}, '3.12.0', {"requires": ["attribute-base", "base-core", "base-observable"]}); diff --git a/lib/yuilib/3.9.1/build/base-build/base-build-debug.js b/lib/yuilib/3.12.0/base-build/base-build-debug.js old mode 100644 new mode 100755 similarity index 92% rename from lib/yuilib/3.9.1/build/base-build/base-build-debug.js rename to lib/yuilib/3.12.0/base-build/base-build-debug.js index f6b1960445b..d553d3d06f7 --- a/lib/yuilib/3.9.1/build/base-build/base-build-debug.js +++ b/lib/yuilib/3.12.0/base-build/base-build-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('base-build', function (Y, NAME) { /** @@ -21,7 +27,7 @@ YUI.add('base-build', function (Y, NAME) { build; // Utility function used in `_buildCfg` to aggregate array values into a new - // array from the sender constructor to the reciver constructor. + // array from the sender constructor to the receiver constructor. function arrayAggregator(prop, r, s) { if (s[prop]) { r[prop] = (r[prop] || []).concat(s[prop]); @@ -29,35 +35,21 @@ YUI.add('base-build', function (Y, NAME) { } // Utility function used in `_buildCfg` to aggregate `_ATTR_CFG` array - // values from the sender constructor into a new array on reciver's + // values from the sender constructor into a new array on receiver's // constructor, and clear the cached hash. function attrCfgAggregator(prop, r, s) { if (s._ATTR_CFG) { - arrayAggregator.apply(null, arguments); - // Clear cached hash. r._ATTR_CFG_HASH = null; + + arrayAggregator.apply(null, arguments); } } // Utility function used in `_buildCfg` to aggregate ATTRS configs from one - // the sender constructor to the reciver constructor. + // the sender constructor to the receiver constructor. function attrsAggregator(prop, r, s) { - var sAttrs, rAttrs, a; - - r.ATTRS = r.ATTRS || {}; - - if (s.ATTRS) { - sAttrs = s.ATTRS; - rAttrs = r.ATTRS; - - for (a in sAttrs) { - if (sAttrs.hasOwnProperty(a)) { - rAttrs[a] = rAttrs[a] || {}; - Y.mix(rAttrs[a], sAttrs[a], true); - } - } - } + BaseCore.modifyAttrs(r, s.ATTRS); } Base._build = function(name, main, extensions, px, sx, cfg) { @@ -117,6 +109,9 @@ YUI.add('base-build', function (Y, NAME) { if (dynamic) { builtClass.NAME = name; builtClass.prototype.constructor = builtClass; + + // Carry along the reference to `modifyAttrs()` from `main`. + builtClass.modifyAttrs = main.modifyAttrs; } return builtClass; @@ -369,7 +364,7 @@ YUI.add('base-build', function (Y, NAME) { * "CustomProperty" : function(property, Receiver, Supplier) { * ... * var triggers = Receiver.CustomProperty.triggers; - Receiver.CustomProperty.triggers = triggers.concat(Supplier.CustomProperty.triggers); + * Receiver.CustomProperty.triggers = triggers.concat(Supplier.CustomProperty.triggers); * ... * } * } @@ -397,8 +392,9 @@ YUI.add('base-build', function (Y, NAME) { * * @method create * @static - * @param {Function} name The name of the newly created class. Used to define the NAME property for the new class. - * @param {Function} main The base class which the new class should extend. This class needs to be Base or a class derived from base (e.g. Widget). + * @param {String} name The name of the newly created class. Used to define the NAME property for the new class. + * @param {Function} main The base class which the new class should extend. + * This class needs to be Base or a class derived from base (e.g. Widget). * @param {Function[]} extensions The list of extensions which will be mixed into the built class. * @param {Object} px The set of prototype properties/methods to add to the built class. * @param {Object} sx The set of static properties/methods to add to the built class. @@ -412,11 +408,17 @@ YUI.add('base-build', function (Y, NAME) { *

        Mixes in a list of extensions to an existing class.

        * @method mix * @static - * @param {Function} main The existing class into which the extensions should be mixed. The class needs to be Base or a class derived from Base (e.g. Widget) + * @param {Function} main The existing class into which the extensions should be mixed. + * The class needs to be Base or a class derived from Base (e.g. Widget) * @param {Function[]} extensions The set of extension classes which will mixed into the existing main class. * @return {Function} The modified main class, with extensions mixed in. */ Base.mix = function(main, extensions) { + + if (main._CACHED_CLASS_DATA) { + main._CACHED_CLASS_DATA = null; + } + return build(null, main, extensions, null, null, {dynamic:false}); }; @@ -434,25 +436,25 @@ YUI.add('base-build', function (Y, NAME) { * @private */ BaseCore._buildCfg = { + aggregates: AGGREGATES.concat(), + custom: { ATTRS : attrsAggregator, _ATTR_CFG : attrCfgAggregator, _NON_ATTRS_CFG: arrayAggregator - }, - - aggregates: AGGREGATES.concat() + } }; // Makes sure Base and BaseCore use separate `_buildCfg` objects. Base._buildCfg = { + aggregates: AGGREGATES.concat(), + custom: { ATTRS : attrsAggregator, _ATTR_CFG : attrCfgAggregator, _NON_ATTRS_CFG: arrayAggregator - }, - - aggregates: AGGREGATES.concat() + } }; -}, '3.9.1', {"requires": ["base-base"]}); +}, '3.12.0', {"requires": ["base-base"]}); diff --git a/lib/yuilib/3.12.0/base-build/base-build-min.js b/lib/yuilib/3.12.0/base-build/base-build-min.js new file mode 100755 index 00000000000..f39afdd178f --- /dev/null +++ b/lib/yuilib/3.12.0/base-build/base-build-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("base-build",function(e,t){function f(e,t,n){n[e]&&(t[e]=(t[e]||[]).concat(n[e]))}function l(e,t,n){n._ATTR_CFG&&(t._ATTR_CFG_HASH=null,f.apply(null,arguments))}function c(e,t,r){n.modifyAttrs(t,r.ATTRS)}var n=e.BaseCore,r=e.Base,i=e.Lang,s="initializer",o="destructor",u=["_PLUG","_UNPLUG"],a;r._build=function(t,n,i,u,a,f){var l=r._build,c=l._ctor(n,f),h=l._cfg(n,f,i),p=l._mixCust,d=c._yuibuild.dynamic,v,m,g,y,b,w;for(v=0,m=i.length;vMixes in a list of extensions to an existing class.

        * @method mix * @static - * @param {Function} main The existing class into which the extensions should be mixed. The class needs to be Base or a class derived from Base (e.g. Widget) + * @param {Function} main The existing class into which the extensions should be mixed. + * The class needs to be Base or a class derived from Base (e.g. Widget) * @param {Function[]} extensions The set of extension classes which will mixed into the existing main class. * @return {Function} The modified main class, with extensions mixed in. */ Base.mix = function(main, extensions) { + + if (main._CACHED_CLASS_DATA) { + main._CACHED_CLASS_DATA = null; + } + return build(null, main, extensions, null, null, {dynamic:false}); }; @@ -434,25 +436,25 @@ YUI.add('base-build', function (Y, NAME) { * @private */ BaseCore._buildCfg = { + aggregates: AGGREGATES.concat(), + custom: { ATTRS : attrsAggregator, _ATTR_CFG : attrCfgAggregator, _NON_ATTRS_CFG: arrayAggregator - }, - - aggregates: AGGREGATES.concat() + } }; // Makes sure Base and BaseCore use separate `_buildCfg` objects. Base._buildCfg = { + aggregates: AGGREGATES.concat(), + custom: { ATTRS : attrsAggregator, _ATTR_CFG : attrCfgAggregator, _NON_ATTRS_CFG: arrayAggregator - }, - - aggregates: AGGREGATES.concat() + } }; -}, '3.9.1', {"requires": ["base-base"]}); +}, '3.12.0', {"requires": ["base-base"]}); diff --git a/lib/yuilib/3.9.1/build/base-core/base-core-debug.js b/lib/yuilib/3.12.0/base-core/base-core-debug.js old mode 100644 new mode 100755 similarity index 62% rename from lib/yuilib/3.9.1/build/base-core/base-core-debug.js rename to lib/yuilib/3.12.0/base-core/base-core-debug.js index 52da7d20075..1af9ea023b0 --- a/lib/yuilib/3.9.1/build/base-core/base-core-debug.js +++ b/lib/yuilib/3.12.0/base-core/base-core-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('base-core', function (Y, NAME) { /** @@ -57,6 +63,61 @@ YUI.add('base-core', function (Y, NAME) { * change events can extend BaseCore instead of Base for optimal kweight and * runtime performance. * + * **3.11.0 BACK COMPAT NOTE FOR COMPONENT DEVELOPERS** + * + * Prior to version 3.11.0, ATTRS would get added a class at a time. That is: + * + *
        +     *    for each (class in the hierarchy) {
        +     *       Call the class Extension constructors.
        +     *
        +     *       Add the class ATTRS.
        +     *
        +     *       Call the class initializer
        +     *       Call the class Extension initializers.
        +     *    }
        +     * 
        + * + * As of 3.11.0, ATTRS from all classes in the hierarchy are added in one `addAttrs` call + * before **any** initializers are called. That is, the flow becomes: + * + *
        +     *    for each (class in the hierarchy) {
        +     *       Call the class Extension constructors.
        +     *    }
        +     *
        +     *    Add ATTRS for all classes
        +     *
        +     *    for each (class in the hierarchy) {
        +     *       Call the class initializer.
        +     *       Call the class Extension initializers.
        +     *    }
        +     * 
        + * + * Adding all ATTRS at once fixes subtle edge-case issues with subclass ATTRS overriding + * superclass `setter`, `getter` or `valueFn` definitions and being unable to get/set attributes + * defined by the subclass. It also leaves us with a cleaner order of operation flow moving + * forward. + * + * However, it may require component developers to upgrade their components, for the following + * scenarios: + * + * 1. It impacts components which may have `setter`, `getter` or `valueFn` code which + * expects a superclass' initializer to have run. + * + * This is expected to be rare, but to support it, Base now supports a `_preAddAttrs()`, method + * hook (same signature as `addAttrs`). Components can implement this method on their prototype + * for edge cases which do require finer control over the order in which attributes are added + * (see widget-htmlparser for example). + * + * 2. Extension developers may need to move code from Extension constructors to `initializer`s + * + * Older extensions, which were written before `initializer` support was added, had a lot of + * initialization code in their constructors. For example, code which acccessed superclass + * attributes. With the new flow this code would not be able to see attributes. The recommendation + * is to move this initialization code to an `initializer` on the Extension, which was the + * recommendation for anything created after `initializer` support for Extensions was added. + * * @class BaseCore * @constructor * @uses AttributeCore @@ -172,6 +233,51 @@ YUI.add('base-core', function (Y, NAME) { } }; + /** + Provides a way to safely modify a `Y.BaseCore` subclass' static `ATTRS` + after the class has been defined or created. + + BaseCore-based classes cache information about the class hierarchy in order + to efficiently create instances. This cache includes includes the aggregated + `ATTRS` configs. If the static `ATTRS` configs need to be modified after the + class has been defined or create, then use this method which will make sure + to clear any cached data before making any modifications. + + @method modifyAttrs + @param {Function} [ctor] The constructor function whose `ATTRS` should be + modified. If a `ctor` function is not specified, then `this` is assumed + to be the constructor which hosts the `ATTRS`. + @param {Object} configs The collection of `ATTRS` configs to mix with the + existing attribute configurations. + @static + @since 3.10.0 + **/ + BaseCore.modifyAttrs = function (ctor, configs) { + // When called without a constructor, assume `this` is the constructor. + if (typeof ctor !== 'function') { + configs = ctor; + ctor = this; + } + + var attrs, attr, name; + + // Eagerly create the `ATTRS` object if it doesn't already exist. + attrs = ctor.ATTRS || (ctor.ATTRS = {}); + + if (configs) { + // Clear cache because it has ATTRS aggregation data which is about + // to be modified. + ctor._CACHED_CLASS_DATA = null; + + for (name in configs) { + if (configs.hasOwnProperty(name)) { + attr = attrs[name] || (attrs[name] = {}); + Y.mix(attr, configs[name], true); + } + } + } + }; + BaseCore.prototype = { /** @@ -312,30 +418,57 @@ YUI.add('base-core', function (Y, NAME) { }, /** - * A helper method used when processing ATTRS across the class hierarchy during - * initialization. Returns a disposable object with the attributes defined for - * the provided class, extracted from the set of all attributes passed in. + * A helper method used to isolate the attrs config for this instance to pass to `addAttrs`, + * from the static cached ATTRS for the class. * - * @method _filterAttrCfs + * @method _getInstanceAttrCfgs * @private * - * @param {Function} clazz The class for which the desired attributes are required. * @param {Object} allCfgs The set of all attribute configurations for this instance. * Attributes will be removed from this set, if they belong to the filtered class, so * that by the time all classes are processed, allCfgs will be empty. * - * @return {Object} The set of attributes belonging to the class passed in, in the form - * of an object with attribute name/configuration pairs. + * @return {Object} The set of attributes to be added for this instance, suitable + * for passing through to `addAttrs`. */ - _filterAttrCfgs : function(clazz, allCfgs) { - var cfgs = null, attr, attrs = clazz.ATTRS; + _getInstanceAttrCfgs : function(allCfgs) { - if (attrs) { - for (attr in attrs) { - if (allCfgs[attr]) { - cfgs = cfgs || {}; - cfgs[attr] = allCfgs[attr]; - allCfgs[attr] = null; + var cfgs = {}, + cfg, + val, + subAttr, + subAttrs, + subAttrPath, + attr, + attrCfg, + allSubAttrs = allCfgs._subAttrs, + attrCfgProperties = this._attrCfgHash(); + + for (attr in allCfgs) { + + if (allCfgs.hasOwnProperty(attr) && attr !== "_subAttrs") { + + attrCfg = allCfgs[attr]; + + // Need to isolate from allCfgs, because we're going to set values etc. + cfg = cfgs[attr] = _wlmix({}, attrCfg, attrCfgProperties); + + val = cfg.value; + + if (val && (typeof val === "object")) { + this._cloneDefaultValue(attr, cfg); + } + + if (allSubAttrs && allSubAttrs.hasOwnProperty(attr)) { + subAttrs = allCfgs._subAttrs[attr]; + + for (subAttrPath in subAttrs) { + subAttr = subAttrs[subAttrPath]; + + if (subAttr.path) { + O.setValue(cfg.value, subAttr.path, subAttr.value); + } + } } } } @@ -382,7 +515,9 @@ YUI.add('base-core', function (Y, NAME) { * @private */ _initHierarchyData : function() { + var ctor = this.constructor, + cachedClassData = ctor._CACHED_CLASS_DATA, c, i, l, @@ -390,59 +525,71 @@ YUI.add('base-core', function (Y, NAME) { attrCfgHash, needsAttrCfgHash = !ctor._ATTR_CFG_HASH, nonAttrsCfg, - nonAttrs = (this._allowAdHocAttrs) ? {} : null, + nonAttrs = {}, classes = [], attrs = []; // Start with `this` instance's constructor. c = ctor; - while (c) { - // Add to classes - classes[classes.length] = c; + if (!cachedClassData) { - // Add to attributes - if (c.ATTRS) { - attrs[attrs.length] = c.ATTRS; + while (c) { + // Add to classes + classes[classes.length] = c; + + // Add to attributes + if (c.ATTRS) { + attrs[attrs.length] = c.ATTRS; + } + + // Aggregate ATTR cfg whitelist. + if (needsAttrCfgHash) { + attrCfg = c._ATTR_CFG; + attrCfgHash = attrCfgHash || {}; + + if (attrCfg) { + for (i = 0, l = attrCfg.length; i < l; i += 1) { + attrCfgHash[attrCfg[i]] = true; + } + } + } + + // Commenting out the if. We always aggregate, since we don't + // know if we'll be needing this on the instance or not. + // if (this._allowAdHocAttrs) { + nonAttrsCfg = c._NON_ATTRS_CFG; + if (nonAttrsCfg) { + for (i = 0, l = nonAttrsCfg.length; i < l; i++) { + nonAttrs[nonAttrsCfg[i]] = true; + } + } + //} + + c = c.superclass ? c.superclass.constructor : null; } - // Aggregate ATTR cfg whitelist. + // Cache computed `_ATTR_CFG_HASH` on the constructor. if (needsAttrCfgHash) { - attrCfg = c._ATTR_CFG; - attrCfgHash = attrCfgHash || {}; - - if (attrCfg) { - for (i = 0, l = attrCfg.length; i < l; i += 1) { - attrCfgHash[attrCfg[i]] = true; - } - } + ctor._ATTR_CFG_HASH = attrCfgHash; } - if (this._allowAdHocAttrs) { - nonAttrsCfg = c._NON_ATTRS_CFG; - if (nonAttrsCfg) { - for (i = 0, l = nonAttrsCfg.length; i < l; i++) { - nonAttrs[nonAttrsCfg[i]] = true; - } - } - } + cachedClassData = ctor._CACHED_CLASS_DATA = { + classes : classes, + nonAttrs : nonAttrs, + attrs : this._aggregateAttrs(attrs) + }; - c = c.superclass ? c.superclass.constructor : null; } - // Cache computed `_ATTR_CFG_HASH` on the constructor. - if (needsAttrCfgHash) { - ctor._ATTR_CFG_HASH = attrCfgHash; - } - - this._classes = classes; - this._nonAttrs = nonAttrs; - this._attrs = this._aggregateAttrs(attrs); + this._classes = cachedClassData.classes; + this._attrs = cachedClassData.attrs; + this._nonAttrs = cachedClassData.nonAttrs; }, /** * Utility method to define the attribute hash used to filter/whitelist property mixes for - * this class. + * this class for iteration performance reasons. * * @method _attrCfgHash * @private @@ -451,6 +598,32 @@ YUI.add('base-core', function (Y, NAME) { return this.constructor._ATTR_CFG_HASH; }, + /** + * This method assumes that the value has already been checked to be an object. + * Since it's on a critical path, we don't want to re-do the check. + * + * @method _cloneDefaultValue + * @param {Object} cfg + * @private + */ + _cloneDefaultValue : function(attr, cfg) { + + var val = cfg.value, + clone = cfg.cloneDefaultValue; + + if (clone === DEEP || clone === true) { + Y.log('Cloning default value for attribute:' + attr, 'info', 'base'); + cfg.value = Y.clone(val); + } else if (clone === SHALLOW) { + Y.log('Merging default value for attribute:' + attr, 'info', 'base'); + cfg.value = Y.merge(val); + } else if ((clone === undefined && (OBJECT_CONSTRUCTOR === val.constructor || L.isArray(val)))) { + cfg.value = Y.clone(val); + } + // else if (clone === false), don't clone the static default value. + // It's intended to be used by reference. + }, + /** * A helper method, used by _initHierarchyData to aggregate * attribute configuration across the instances class hierarchy. @@ -466,42 +639,29 @@ YUI.add('base-core', function (Y, NAME) { * @return {Object} The aggregate set of ATTRS definitions for the instance */ _aggregateAttrs : function(allAttrs) { + var attr, attrs, + subAttrsHash, cfg, - val, path, i, - clone, cfgPropsHash = this._attrCfgHash(), aggAttr, aggAttrs = {}; if (allAttrs) { for (i = allAttrs.length-1; i >= 0; --i) { + attrs = allAttrs[i]; for (attr in attrs) { if (attrs.hasOwnProperty(attr)) { - // Protect config passed in + // PERF TODO: Do we need to merge here, since we're merging later in getInstanceAttrCfgs + // Should we move this down to only merge if we hit the path or valueFn ifs below? cfg = _wlmix({}, attrs[attr], cfgPropsHash); - val = cfg.value; - clone = cfg.cloneDefaultValue; - - if (val) { - if ( (clone === undefined && (OBJECT_CONSTRUCTOR === val.constructor || L.isArray(val))) || clone === DEEP || clone === true) { - Y.log('Cloning default value for attribute:' + attr, 'info', 'base'); - cfg.value = Y.clone(val); - } else if (clone === SHALLOW) { - Y.log('Merging default value for attribute:' + attr, 'info', 'base'); - cfg.value = Y.merge(val); - } - // else if (clone === false), don't clone the static default value. - // It's intended to be used by reference. - } - path = null; if (attr.indexOf(DOT) !== -1) { path = attr.split(DOT); @@ -509,15 +669,34 @@ YUI.add('base-core', function (Y, NAME) { } aggAttr = aggAttrs[attr]; + if (path && aggAttr && aggAttr.value) { - O.setValue(aggAttr.value, path, val); + + subAttrsHash = aggAttrs._subAttrs; + + if (!subAttrsHash) { + subAttrsHash = aggAttrs._subAttrs = {}; + } + + if (!subAttrsHash[attr]) { + subAttrsHash[attr] = {}; + } + + subAttrsHash[attr][path.join(DOT)] = { + value: cfg.value, + path : path + }; + } else if (!path) { + if (!aggAttr) { aggAttrs[attr] = cfg; } else { if (aggAttr.valueFn && VALUE in cfg) { aggAttr.valueFn = null; } + + // Mix into existing config. _wlmix(aggAttr, cfg, cfgPropsHash); } } @@ -540,51 +719,73 @@ YUI.add('base-core', function (Y, NAME) { * @private */ _initHierarchy : function(userVals) { + var lazy = this._lazyAddAttrs, constr, constrProto, + i, + l, ci, ei, el, + ext, extProto, exts, + instanceAttrs, + initializers = [], classes = this._getClasses(), attrCfgs = this._getAttrCfgs(), cl = classes.length - 1; + // Constructors for (ci = cl; ci >= 0; ci--) { constr = classes[ci]; constrProto = constr.prototype; exts = constr._yuibuild && constr._yuibuild.exts; - if (exts) { - for (ei = 0, el = exts.length; ei < el; ei++) { - exts[ei].apply(this, arguments); - } - } - - this.addAttrs(this._filterAttrCfgs(constr, attrCfgs), userVals, lazy); - - if (this._allowAdHocAttrs && ci === cl) { - this.addAttrs(this._filterAdHocAttrs(attrCfgs, userVals), userVals, lazy); - } - // Using INITIALIZER in hasOwnProperty check, for performance reasons (helps IE6 avoid GC thresholds when // referencing string literals). Not using it in apply, again, for performance "." is faster. + if (constrProto.hasOwnProperty(INITIALIZER)) { - constrProto.initializer.apply(this, arguments); + // Store initializer while we're here and looping + initializers[initializers.length] = constrProto.initializer; } if (exts) { - for (ei = 0; ei < el; ei++) { - extProto = exts[ei].prototype; + for (ei = 0, el = exts.length; ei < el; ei++) { + + ext = exts[ei]; + + // Ext Constructor + ext.apply(this, arguments); + + extProto = ext.prototype; if (extProto.hasOwnProperty(INITIALIZER)) { - extProto.initializer.apply(this, arguments); + // Store initializer while we're here and looping + initializers[initializers.length] = extProto.initializer; } } } } + + // ATTRS + instanceAttrs = this._getInstanceAttrCfgs(attrCfgs); + + if (this._preAddAttrs) { + this._preAddAttrs(instanceAttrs, userVals, lazy); + } + + if (this._allowAdHocAttrs) { + this.addAttrs(this._filterAdHocAttrs(attrCfgs, userVals), userVals, lazy); + } + + this.addAttrs(instanceAttrs, userVals, lazy); + + // Initializers + for (i = 0, l = initializers.length; i < l; i++) { + initializers[i].apply(this, arguments); + } }, /** @@ -641,4 +842,4 @@ YUI.add('base-core', function (Y, NAME) { Y.BaseCore = BaseCore; -}, '3.9.1', {"requires": ["attribute-core"]}); +}, '3.12.0', {"requires": ["attribute-core"]}); diff --git a/lib/yuilib/3.12.0/base-core/base-core-min.js b/lib/yuilib/3.12.0/base-core/base-core-min.js new file mode 100755 index 00000000000..288b158425c --- /dev/null +++ b/lib/yuilib/3.12.0/base-core/base-core-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("base-core",function(e,t){function v(e){this._BaseInvoked||(this._BaseInvoked=!0,this._initBase(e))}var n=e.Object,r=e.Lang,i=".",s="initialized",o="destroyed",u="initializer",a="value",f=Object.prototype.constructor,l="deep",c="shallow",h="destructor",p=e.AttributeCore,d=function(e,t,n){var r;for(r in t)n[r]&&(e[r]=t[r]);return e};v._ATTR_CFG=p._ATTR_CFG.concat("cloneDefaultValue"),v._NON_ATTRS_CFG=["plugins"],v.NAME="baseCore",v.ATTRS={initialized:{readOnly:!0,value:!1},destroyed:{readOnly:!0,value:!1}},v.modifyAttrs=function(t,n){typeof t!="function"&&(n=t,t=this);var r,i,s;r=t.ATTRS||(t.ATTRS={});if(n){t._CACHED_CLASS_DATA=null;for(s in n)n.hasOwnProperty(s)&&(i=r[s]||(r[s]={}),e.mix(i,n[s],!0))}},v.prototype={_initBase:function(t){e.stamp(this),this._initAttribute(t);var n=e.Plugin&&e.Plugin.Host;this._initPlugins&&n&&n.call(this),this._lazyAddAttrs!==!1&&(this._lazyAddAttrs=!0),this.name=this.constructor.NAME,this.init.apply(this,arguments)},_initAttribute:function(){p.call(this)},init:function(e){return this._baseInit(e),this},_baseInit:function(e){this._initHierarchy(e),this._initPlugins&&this._initPlugins(e),this._set(s,!0)},destroy:function(){return this._baseDestroy(),this},_baseDestroy:function(){this._destroyPlugins&&this._destroyPlugins(),this._destroyHierarchy(),this._set(o,!0)},_getClasses:function(){return this._classes||this._initHierarchyData(),this._classes},_getAttrCfgs:function(){return this._attrs||this._initHierarchyData(),this._attrs},_getInstanceAttrCfgs:function(e){var t={},r,i,s,o,u,a,f,l=e._subAttrs,c=this._attrCfgHash();for(a in e)if(e.hasOwnProperty(a)&&a!=="_subAttrs"){f=e[a],r=t[a]=d({},f,c),i=r.value,i&&typeof i=="object"&&this._cloneDefaultValue(a,r);if(l&&l.hasOwnProperty(a)){o=e._subAttrs[a];for(u in o)s=o[u],s.path&&n.setValue(r.value,s.path,s.value)}}return t},_filterAdHocAttrs:function(e,t){var n,r=this._nonAttrs,i;if(t){n={};for(i in t)!e[i]&&!r[i]&&t.hasOwnProperty(i)&&(n[i]={value:t[i]})}return n},_initHierarchyData:function(){var e=this.constructor,t=e._CACHED_CLASS_DATA,n,r,i,s,o,u=!e._ATTR_CFG_HASH,a,f={},l=[],c=[];n=e;if(!t){while(n){l[l.length]=n,n.ATTRS&&(c[c.length]=n.ATTRS);if(u){s=n._ATTR_CFG,o=o||{};if(s)for(r=0,i=s.length;r=0;--u){n=e[u];for(t in n)n.hasOwnProperty(t)&&(s=d({},n[t],f),o=null,t.indexOf(i)!==-1&&(o=t.split(i),t=o.shift()),l=c[t],o&&l&&l.value?(r=c._subAttrs,r||(r=c._subAttrs={}),r[t]||(r[t]={}),r[t][o.join(i)]={value:s.value,path:o}):o||(l?(l.valueFn&&a in s&&(l.valueFn=null),d(l,s,f)):c[t]=s))}return c},_initHierarchy:function(e){var t=this._lazyAddAttrs,n,r,i,s,o,a,f,l,c,h,p,d=[],v=this._getClasses(),m=this._getAttrCfgs(),g=v.length-1;for(o=g;o>=0;o--){n=v[o],r=n.prototype,h=n._yuibuild&&n._yuibuild.exts,r.hasOwnProperty(u)&&(d[d.length]=r.initializer);if(h)for(a=0,f=h.length;a + * for each (class in the hierarchy) { + * Call the class Extension constructors. + * + * Add the class ATTRS. + * + * Call the class initializer + * Call the class Extension initializers. + * } + *
  • + * + * As of 3.11.0, ATTRS from all classes in the hierarchy are added in one `addAttrs` call + * before **any** initializers are called. That is, the flow becomes: + * + *
    +     *    for each (class in the hierarchy) {
    +     *       Call the class Extension constructors.
    +     *    }
    +     *
    +     *    Add ATTRS for all classes
    +     *
    +     *    for each (class in the hierarchy) {
    +     *       Call the class initializer.
    +     *       Call the class Extension initializers.
    +     *    }
    +     * 
    + * + * Adding all ATTRS at once fixes subtle edge-case issues with subclass ATTRS overriding + * superclass `setter`, `getter` or `valueFn` definitions and being unable to get/set attributes + * defined by the subclass. It also leaves us with a cleaner order of operation flow moving + * forward. + * + * However, it may require component developers to upgrade their components, for the following + * scenarios: + * + * 1. It impacts components which may have `setter`, `getter` or `valueFn` code which + * expects a superclass' initializer to have run. + * + * This is expected to be rare, but to support it, Base now supports a `_preAddAttrs()`, method + * hook (same signature as `addAttrs`). Components can implement this method on their prototype + * for edge cases which do require finer control over the order in which attributes are added + * (see widget-htmlparser for example). + * + * 2. Extension developers may need to move code from Extension constructors to `initializer`s + * + * Older extensions, which were written before `initializer` support was added, had a lot of + * initialization code in their constructors. For example, code which acccessed superclass + * attributes. With the new flow this code would not be able to see attributes. The recommendation + * is to move this initialization code to an `initializer` on the Extension, which was the + * recommendation for anything created after `initializer` support for Extensions was added. + * * @class BaseCore * @constructor * @uses AttributeCore @@ -170,6 +231,51 @@ YUI.add('base-core', function (Y, NAME) { } }; + /** + Provides a way to safely modify a `Y.BaseCore` subclass' static `ATTRS` + after the class has been defined or created. + + BaseCore-based classes cache information about the class hierarchy in order + to efficiently create instances. This cache includes includes the aggregated + `ATTRS` configs. If the static `ATTRS` configs need to be modified after the + class has been defined or create, then use this method which will make sure + to clear any cached data before making any modifications. + + @method modifyAttrs + @param {Function} [ctor] The constructor function whose `ATTRS` should be + modified. If a `ctor` function is not specified, then `this` is assumed + to be the constructor which hosts the `ATTRS`. + @param {Object} configs The collection of `ATTRS` configs to mix with the + existing attribute configurations. + @static + @since 3.10.0 + **/ + BaseCore.modifyAttrs = function (ctor, configs) { + // When called without a constructor, assume `this` is the constructor. + if (typeof ctor !== 'function') { + configs = ctor; + ctor = this; + } + + var attrs, attr, name; + + // Eagerly create the `ATTRS` object if it doesn't already exist. + attrs = ctor.ATTRS || (ctor.ATTRS = {}); + + if (configs) { + // Clear cache because it has ATTRS aggregation data which is about + // to be modified. + ctor._CACHED_CLASS_DATA = null; + + for (name in configs) { + if (configs.hasOwnProperty(name)) { + attr = attrs[name] || (attrs[name] = {}); + Y.mix(attr, configs[name], true); + } + } + } + }; + BaseCore.prototype = { /** @@ -308,30 +414,57 @@ YUI.add('base-core', function (Y, NAME) { }, /** - * A helper method used when processing ATTRS across the class hierarchy during - * initialization. Returns a disposable object with the attributes defined for - * the provided class, extracted from the set of all attributes passed in. + * A helper method used to isolate the attrs config for this instance to pass to `addAttrs`, + * from the static cached ATTRS for the class. * - * @method _filterAttrCfs + * @method _getInstanceAttrCfgs * @private * - * @param {Function} clazz The class for which the desired attributes are required. * @param {Object} allCfgs The set of all attribute configurations for this instance. * Attributes will be removed from this set, if they belong to the filtered class, so * that by the time all classes are processed, allCfgs will be empty. * - * @return {Object} The set of attributes belonging to the class passed in, in the form - * of an object with attribute name/configuration pairs. + * @return {Object} The set of attributes to be added for this instance, suitable + * for passing through to `addAttrs`. */ - _filterAttrCfgs : function(clazz, allCfgs) { - var cfgs = null, attr, attrs = clazz.ATTRS; + _getInstanceAttrCfgs : function(allCfgs) { - if (attrs) { - for (attr in attrs) { - if (allCfgs[attr]) { - cfgs = cfgs || {}; - cfgs[attr] = allCfgs[attr]; - allCfgs[attr] = null; + var cfgs = {}, + cfg, + val, + subAttr, + subAttrs, + subAttrPath, + attr, + attrCfg, + allSubAttrs = allCfgs._subAttrs, + attrCfgProperties = this._attrCfgHash(); + + for (attr in allCfgs) { + + if (allCfgs.hasOwnProperty(attr) && attr !== "_subAttrs") { + + attrCfg = allCfgs[attr]; + + // Need to isolate from allCfgs, because we're going to set values etc. + cfg = cfgs[attr] = _wlmix({}, attrCfg, attrCfgProperties); + + val = cfg.value; + + if (val && (typeof val === "object")) { + this._cloneDefaultValue(attr, cfg); + } + + if (allSubAttrs && allSubAttrs.hasOwnProperty(attr)) { + subAttrs = allCfgs._subAttrs[attr]; + + for (subAttrPath in subAttrs) { + subAttr = subAttrs[subAttrPath]; + + if (subAttr.path) { + O.setValue(cfg.value, subAttr.path, subAttr.value); + } + } } } } @@ -378,7 +511,9 @@ YUI.add('base-core', function (Y, NAME) { * @private */ _initHierarchyData : function() { + var ctor = this.constructor, + cachedClassData = ctor._CACHED_CLASS_DATA, c, i, l, @@ -386,59 +521,71 @@ YUI.add('base-core', function (Y, NAME) { attrCfgHash, needsAttrCfgHash = !ctor._ATTR_CFG_HASH, nonAttrsCfg, - nonAttrs = (this._allowAdHocAttrs) ? {} : null, + nonAttrs = {}, classes = [], attrs = []; // Start with `this` instance's constructor. c = ctor; - while (c) { - // Add to classes - classes[classes.length] = c; + if (!cachedClassData) { - // Add to attributes - if (c.ATTRS) { - attrs[attrs.length] = c.ATTRS; + while (c) { + // Add to classes + classes[classes.length] = c; + + // Add to attributes + if (c.ATTRS) { + attrs[attrs.length] = c.ATTRS; + } + + // Aggregate ATTR cfg whitelist. + if (needsAttrCfgHash) { + attrCfg = c._ATTR_CFG; + attrCfgHash = attrCfgHash || {}; + + if (attrCfg) { + for (i = 0, l = attrCfg.length; i < l; i += 1) { + attrCfgHash[attrCfg[i]] = true; + } + } + } + + // Commenting out the if. We always aggregate, since we don't + // know if we'll be needing this on the instance or not. + // if (this._allowAdHocAttrs) { + nonAttrsCfg = c._NON_ATTRS_CFG; + if (nonAttrsCfg) { + for (i = 0, l = nonAttrsCfg.length; i < l; i++) { + nonAttrs[nonAttrsCfg[i]] = true; + } + } + //} + + c = c.superclass ? c.superclass.constructor : null; } - // Aggregate ATTR cfg whitelist. + // Cache computed `_ATTR_CFG_HASH` on the constructor. if (needsAttrCfgHash) { - attrCfg = c._ATTR_CFG; - attrCfgHash = attrCfgHash || {}; - - if (attrCfg) { - for (i = 0, l = attrCfg.length; i < l; i += 1) { - attrCfgHash[attrCfg[i]] = true; - } - } + ctor._ATTR_CFG_HASH = attrCfgHash; } - if (this._allowAdHocAttrs) { - nonAttrsCfg = c._NON_ATTRS_CFG; - if (nonAttrsCfg) { - for (i = 0, l = nonAttrsCfg.length; i < l; i++) { - nonAttrs[nonAttrsCfg[i]] = true; - } - } - } + cachedClassData = ctor._CACHED_CLASS_DATA = { + classes : classes, + nonAttrs : nonAttrs, + attrs : this._aggregateAttrs(attrs) + }; - c = c.superclass ? c.superclass.constructor : null; } - // Cache computed `_ATTR_CFG_HASH` on the constructor. - if (needsAttrCfgHash) { - ctor._ATTR_CFG_HASH = attrCfgHash; - } - - this._classes = classes; - this._nonAttrs = nonAttrs; - this._attrs = this._aggregateAttrs(attrs); + this._classes = cachedClassData.classes; + this._attrs = cachedClassData.attrs; + this._nonAttrs = cachedClassData.nonAttrs; }, /** * Utility method to define the attribute hash used to filter/whitelist property mixes for - * this class. + * this class for iteration performance reasons. * * @method _attrCfgHash * @private @@ -447,6 +594,30 @@ YUI.add('base-core', function (Y, NAME) { return this.constructor._ATTR_CFG_HASH; }, + /** + * This method assumes that the value has already been checked to be an object. + * Since it's on a critical path, we don't want to re-do the check. + * + * @method _cloneDefaultValue + * @param {Object} cfg + * @private + */ + _cloneDefaultValue : function(attr, cfg) { + + var val = cfg.value, + clone = cfg.cloneDefaultValue; + + if (clone === DEEP || clone === true) { + cfg.value = Y.clone(val); + } else if (clone === SHALLOW) { + cfg.value = Y.merge(val); + } else if ((clone === undefined && (OBJECT_CONSTRUCTOR === val.constructor || L.isArray(val)))) { + cfg.value = Y.clone(val); + } + // else if (clone === false), don't clone the static default value. + // It's intended to be used by reference. + }, + /** * A helper method, used by _initHierarchyData to aggregate * attribute configuration across the instances class hierarchy. @@ -462,40 +633,29 @@ YUI.add('base-core', function (Y, NAME) { * @return {Object} The aggregate set of ATTRS definitions for the instance */ _aggregateAttrs : function(allAttrs) { + var attr, attrs, + subAttrsHash, cfg, - val, path, i, - clone, cfgPropsHash = this._attrCfgHash(), aggAttr, aggAttrs = {}; if (allAttrs) { for (i = allAttrs.length-1; i >= 0; --i) { + attrs = allAttrs[i]; for (attr in attrs) { if (attrs.hasOwnProperty(attr)) { - // Protect config passed in + // PERF TODO: Do we need to merge here, since we're merging later in getInstanceAttrCfgs + // Should we move this down to only merge if we hit the path or valueFn ifs below? cfg = _wlmix({}, attrs[attr], cfgPropsHash); - val = cfg.value; - clone = cfg.cloneDefaultValue; - - if (val) { - if ( (clone === undefined && (OBJECT_CONSTRUCTOR === val.constructor || L.isArray(val))) || clone === DEEP || clone === true) { - cfg.value = Y.clone(val); - } else if (clone === SHALLOW) { - cfg.value = Y.merge(val); - } - // else if (clone === false), don't clone the static default value. - // It's intended to be used by reference. - } - path = null; if (attr.indexOf(DOT) !== -1) { path = attr.split(DOT); @@ -503,15 +663,34 @@ YUI.add('base-core', function (Y, NAME) { } aggAttr = aggAttrs[attr]; + if (path && aggAttr && aggAttr.value) { - O.setValue(aggAttr.value, path, val); + + subAttrsHash = aggAttrs._subAttrs; + + if (!subAttrsHash) { + subAttrsHash = aggAttrs._subAttrs = {}; + } + + if (!subAttrsHash[attr]) { + subAttrsHash[attr] = {}; + } + + subAttrsHash[attr][path.join(DOT)] = { + value: cfg.value, + path : path + }; + } else if (!path) { + if (!aggAttr) { aggAttrs[attr] = cfg; } else { if (aggAttr.valueFn && VALUE in cfg) { aggAttr.valueFn = null; } + + // Mix into existing config. _wlmix(aggAttr, cfg, cfgPropsHash); } } @@ -534,51 +713,73 @@ YUI.add('base-core', function (Y, NAME) { * @private */ _initHierarchy : function(userVals) { + var lazy = this._lazyAddAttrs, constr, constrProto, + i, + l, ci, ei, el, + ext, extProto, exts, + instanceAttrs, + initializers = [], classes = this._getClasses(), attrCfgs = this._getAttrCfgs(), cl = classes.length - 1; + // Constructors for (ci = cl; ci >= 0; ci--) { constr = classes[ci]; constrProto = constr.prototype; exts = constr._yuibuild && constr._yuibuild.exts; - if (exts) { - for (ei = 0, el = exts.length; ei < el; ei++) { - exts[ei].apply(this, arguments); - } - } - - this.addAttrs(this._filterAttrCfgs(constr, attrCfgs), userVals, lazy); - - if (this._allowAdHocAttrs && ci === cl) { - this.addAttrs(this._filterAdHocAttrs(attrCfgs, userVals), userVals, lazy); - } - // Using INITIALIZER in hasOwnProperty check, for performance reasons (helps IE6 avoid GC thresholds when // referencing string literals). Not using it in apply, again, for performance "." is faster. + if (constrProto.hasOwnProperty(INITIALIZER)) { - constrProto.initializer.apply(this, arguments); + // Store initializer while we're here and looping + initializers[initializers.length] = constrProto.initializer; } if (exts) { - for (ei = 0; ei < el; ei++) { - extProto = exts[ei].prototype; + for (ei = 0, el = exts.length; ei < el; ei++) { + + ext = exts[ei]; + + // Ext Constructor + ext.apply(this, arguments); + + extProto = ext.prototype; if (extProto.hasOwnProperty(INITIALIZER)) { - extProto.initializer.apply(this, arguments); + // Store initializer while we're here and looping + initializers[initializers.length] = extProto.initializer; } } } } + + // ATTRS + instanceAttrs = this._getInstanceAttrCfgs(attrCfgs); + + if (this._preAddAttrs) { + this._preAddAttrs(instanceAttrs, userVals, lazy); + } + + if (this._allowAdHocAttrs) { + this.addAttrs(this._filterAdHocAttrs(attrCfgs, userVals), userVals, lazy); + } + + this.addAttrs(instanceAttrs, userVals, lazy); + + // Initializers + for (i = 0, l = initializers.length; i < l; i++) { + initializers[i].apply(this, arguments); + } }, /** @@ -635,4 +836,4 @@ YUI.add('base-core', function (Y, NAME) { Y.BaseCore = BaseCore; -}, '3.9.1', {"requires": ["attribute-core"]}); +}, '3.12.0', {"requires": ["attribute-core"]}); diff --git a/lib/yuilib/3.9.1/build/base-observable/base-observable-debug.js b/lib/yuilib/3.12.0/base-observable/base-observable-debug.js old mode 100644 new mode 100755 similarity index 83% rename from lib/yuilib/3.9.1/build/base-observable/base-observable-debug.js rename to lib/yuilib/3.12.0/base-observable/base-observable-debug.js index 15282848fc2..85cbcb91ee4 --- a/lib/yuilib/3.9.1/build/base-observable/base-observable-debug.js +++ b/lib/yuilib/3.12.0/base-observable/base-observable-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('base-observable', function (Y, NAME) { /** @@ -42,7 +48,7 @@ YUI.add('base-observable', function (Y, NAME) { * @method _initAttribute * @private */ - _initAttribute: function(cfg) { + _initAttribute: function() { BaseCore.prototype._initAttribute.apply(this, arguments); AttributeObservable.call(this); @@ -61,6 +67,7 @@ YUI.add('base-observable', function (Y, NAME) { * @return {Base} A reference to this object */ init: function(config) { + /** *

    * Lifecycle event for the init phase, fired prior to initialization. @@ -78,16 +85,33 @@ YUI.add('base-observable', function (Y, NAME) { * @param {EventFacade} e Event object, with a cfg property which * refers to the configuration object passed to the constructor. */ - this.publish(INIT, { - queuable:false, - fireOnce:true, - defaultTargetOnly:true, - defaultFn:this._defInitFn - }); + + // PERF: Using lower level _publish() for + // critical path performance + + var type = this._getFullType(INIT), + e = this._publish(type); + + e.emitFacade = true; + e.fireOnce = true; + e.defaultTargetOnly = true; + e.defaultFn = this._defInitFn; this._preInitEventCfg(config); - this.fire(INIT, {cfg: config}); + if (e._hasPotentialSubscribers()) { + this.fire(type, {cfg: config}); + } else { + + this._baseInit(config); + + // HACK. Major hack actually. But really fast for no-listeners. + // Since it's fireOnce, subscribers may come along later, so since we're + // bypassing the event stack the first time, we need to tell the published + // event that it's been "fired". Could extract it into a CE method? + e.fired = true; + e.firedWith = [{cfg:config}]; + } return this; }, @@ -116,6 +140,7 @@ YUI.add('base-observable', function (Y, NAME) { if (userTargets || _BUBBLETARGETS in this) { target = userTargets ? (config && config.bubbleTargets) : this._bubbleTargets; + if (L.isArray(target)) { for (i = 0, l = target.length; i < l; i++) { this.addTarget(target[i]); @@ -161,7 +186,6 @@ YUI.add('base-observable', function (Y, NAME) { * @param {EventFacade} e Event object */ this.publish(DESTROY, { - queuable:false, fireOnce:true, defaultTargetOnly:true, defaultFn: this._defDestroyFn @@ -201,4 +225,4 @@ YUI.add('base-observable', function (Y, NAME) { Y.BaseObservable = BaseObservable; -}, '3.9.1', {"requires": ["attribute-observable"]}); +}, '3.12.0', {"requires": ["attribute-observable"]}); diff --git a/lib/yuilib/3.12.0/base-observable/base-observable-min.js b/lib/yuilib/3.12.0/base-observable/base-observable-min.js new file mode 100755 index 00000000000..12ff3cd84ab --- /dev/null +++ b/lib/yuilib/3.12.0/base-observable/base-observable-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("base-observable",function(e,t){function f(){}var n=e.Lang,r="destroy",i="init",s="bubbleTargets",o="_bubbleTargets",u=e.AttributeObservable,a=e.BaseCore;f._ATTR_CFG=u._ATTR_CFG.concat(),f._NON_ATTRS_CFG=["on","after","bubbleTargets"],f.prototype={_initAttribute:function(){a.prototype._initAttribute.apply(this,arguments),u.call(this),this._eventPrefix=this.constructor.EVENT_PREFIX||this.constructor.NAME,this._yuievt.config.prefix=this._eventPrefix},init:function(e){var t=this._getFullType(i),n=this._publish(t);return n.emitFacade=!0,n.fireOnce=!0,n.defaultTargetOnly=!0,n.defaultFn=this._defInitFn,this._preInitEventCfg(e),n._hasPotentialSubscribers()?this.fire(t,{cfg:e}):(this._baseInit(e),n.fired=!0,n.firedWith=[{cfg:e}]),this},_preInitEventCfg:function(e){e&&(e.on&&this.on(e.on),e.after&&this.after(e.after));var t,r,i,u=e&&s in e;if(u||o in this){i=u?e&&e.bubbleTargets:this._bubbleTargets;if(n.isArray(i))for(t=0,r=i.length;t * Lifecycle event for the init phase, fired prior to initialization. @@ -78,16 +85,33 @@ YUI.add('base-observable', function (Y, NAME) { * @param {EventFacade} e Event object, with a cfg property which * refers to the configuration object passed to the constructor. */ - this.publish(INIT, { - queuable:false, - fireOnce:true, - defaultTargetOnly:true, - defaultFn:this._defInitFn - }); + + // PERF: Using lower level _publish() for + // critical path performance + + var type = this._getFullType(INIT), + e = this._publish(type); + + e.emitFacade = true; + e.fireOnce = true; + e.defaultTargetOnly = true; + e.defaultFn = this._defInitFn; this._preInitEventCfg(config); - this.fire(INIT, {cfg: config}); + if (e._hasPotentialSubscribers()) { + this.fire(type, {cfg: config}); + } else { + + this._baseInit(config); + + // HACK. Major hack actually. But really fast for no-listeners. + // Since it's fireOnce, subscribers may come along later, so since we're + // bypassing the event stack the first time, we need to tell the published + // event that it's been "fired". Could extract it into a CE method? + e.fired = true; + e.firedWith = [{cfg:config}]; + } return this; }, @@ -116,6 +140,7 @@ YUI.add('base-observable', function (Y, NAME) { if (userTargets || _BUBBLETARGETS in this) { target = userTargets ? (config && config.bubbleTargets) : this._bubbleTargets; + if (L.isArray(target)) { for (i = 0, l = target.length; i < l; i++) { this.addTarget(target[i]); @@ -160,7 +185,6 @@ YUI.add('base-observable', function (Y, NAME) { * @param {EventFacade} e Event object */ this.publish(DESTROY, { - queuable:false, fireOnce:true, defaultTargetOnly:true, defaultFn: this._defDestroyFn @@ -200,4 +224,4 @@ YUI.add('base-observable', function (Y, NAME) { Y.BaseObservable = BaseObservable; -}, '3.9.1', {"requires": ["attribute-observable"]}); +}, '3.12.0', {"requires": ["attribute-observable"]}); diff --git a/lib/yuilib/3.9.1/build/base-pluginhost/base-pluginhost-debug.js b/lib/yuilib/3.12.0/base-pluginhost/base-pluginhost-debug.js old mode 100644 new mode 100755 similarity index 82% rename from lib/yuilib/3.9.1/build/base-pluginhost/base-pluginhost-debug.js rename to lib/yuilib/3.12.0/base-pluginhost/base-pluginhost-debug.js index 681e9d644a4..8220febf222 --- a/lib/yuilib/3.9.1/build/base-pluginhost/base-pluginhost-debug.js +++ b/lib/yuilib/3.12.0/base-pluginhost/base-pluginhost-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('base-pluginhost', function (Y, NAME) { /** @@ -34,4 +40,4 @@ YUI.add('base-pluginhost', function (Y, NAME) { Base.unplug = PluginHost.unplug; -}, '3.9.1', {"requires": ["base-base", "pluginhost"]}); +}, '3.12.0', {"requires": ["base-base", "pluginhost"]}); diff --git a/lib/yuilib/3.12.0/base-pluginhost/base-pluginhost-min.js b/lib/yuilib/3.12.0/base-pluginhost/base-pluginhost-min.js new file mode 100755 index 00000000000..00dc956edff --- /dev/null +++ b/lib/yuilib/3.12.0/base-pluginhost/base-pluginhost-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("base-pluginhost",function(e,t){var n=e.Base,r=e.Plugin.Host;e.mix(n,r,!1,null,1),n.plug=r.plug,n.unplug=r.unplug},"3.12.0",{requires:["base-base","pluginhost"]}); diff --git a/lib/yuilib/3.9.1/build/base-pluginhost/base-pluginhost.js b/lib/yuilib/3.12.0/base-pluginhost/base-pluginhost.js old mode 100644 new mode 100755 similarity index 82% rename from lib/yuilib/3.9.1/build/base-pluginhost/base-pluginhost.js rename to lib/yuilib/3.12.0/base-pluginhost/base-pluginhost.js index 681e9d644a4..8220febf222 --- a/lib/yuilib/3.9.1/build/base-pluginhost/base-pluginhost.js +++ b/lib/yuilib/3.12.0/base-pluginhost/base-pluginhost.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('base-pluginhost', function (Y, NAME) { /** @@ -34,4 +40,4 @@ YUI.add('base-pluginhost', function (Y, NAME) { Base.unplug = PluginHost.unplug; -}, '3.9.1', {"requires": ["base-base", "pluginhost"]}); +}, '3.12.0', {"requires": ["base-base", "pluginhost"]}); diff --git a/lib/yuilib/3.9.1/build/button-core/button-core-debug.js b/lib/yuilib/3.12.0/button-core/button-core-debug.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/button-core/button-core-debug.js rename to lib/yuilib/3.12.0/button-core/button-core-debug.js index c73e65085ca..0246acb7c29 --- a/lib/yuilib/3.9.1/build/button-core/button-core-debug.js +++ b/lib/yuilib/3.12.0/button-core/button-core-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('button-core', function (Y, NAME) { /** @@ -272,4 +278,4 @@ ButtonCore.ARIA_ROLES = { // Export Button Y.ButtonCore = ButtonCore; -}, '3.9.1', {"requires": ["attribute-core", "classnamemanager", "node-base"]}); +}, '3.12.0', {"requires": ["attribute-core", "classnamemanager", "node-base"]}); diff --git a/lib/yuilib/3.9.1/build/button-core/button-core-min.js b/lib/yuilib/3.12.0/button-core/button-core-min.js old mode 100644 new mode 100755 similarity index 87% rename from lib/yuilib/3.9.1/build/button-core/button-core-min.js rename to lib/yuilib/3.12.0/button-core/button-core-min.js index 2d4a9315da2..f798d7c0221 --- a/lib/yuilib/3.9.1/build/button-core/button-core-min.js +++ b/lib/yuilib/3.12.0/button-core/button-core-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("button-core",function(e,t){function r(e){this.initializer(e)}var n=e.ClassNameManager.getClassName;r.prototype={TEMPLATE:"',BODY_TEMPLATE:'

    ',FOOTER_TEMPLATE:'
    ',ENTRY_TEMPLATE:$,ATTRS:{logEvent:{value:"yui:log",writeOnce:!0,validator:G},logSource:{value:e,writeOnce:!0,validator:function(e){return this._validateLogSource(e)}},strings:{valueFn:function(){return e.Intl.get("console")}},paused:{value:!1,validator:J.isBoolean},defaultCategory:{value:p,validator:G},defaultSource:{value:"global",validator:G},entryTemplate:{value:$,validator:G},logLevel:{value:e.config.logLevel||p,setter:function(e){return this._setLogLevel(e)}},printTimeout:{value:100,validator:Q},printLimit:{value:50,validator:Q},consoleLimit:{value:300,validator:Q},newestOnTop:{value:!0},scrollIntoView:{value:!0},startTime:{value:new Date},lastTime:{value:new Date,readOnly:!0},collapsed:{value:!1},height:{value:"300px"},width:{value:"300px"},useBrowserConsole:{lazyAdd:!1,value:!1,getter:function(){return this._getUseBrowserConsole()},setter:function(e){return this._setUseBrowserConsole(e)}},style:{value:"separate",writeOnce:!0,validator:function(e){return this._validateStyle(e)}}}})},"3.9.1",{requires:["yui-log","widget"],skinnable:!0,lang:["en","es","ja"]}); +()),e===w||e===c?e:p},_getUseBrowserConsole:function(){var e=this.get("logSource");return e instanceof YUI?e.config.useBrowserConsole:null},_setUseBrowserConsole:function(t){var n=this.get("logSource");return n instanceof YUI?(t=!!t,n.config.useBrowserConsole=t,t):e.Attribute.INVALID_VALUE},_uiSetHeight:function(e){et.superclass._uiSetHeight.apply(this,arguments);if(this._head&&this._foot){var t=this.get("boundingBox").get("offsetHeight")-this._head.get("offsetHeight")-this._foot.get("offsetHeight");this._body.setStyle(h,t+"px")}},_uiSizeCB:function(){},_afterStringsChange:function(e){var t=e.subAttrName?e.subAttrName.split(E)[1]:null,n=this.get(a),r=e.prevVal,s=e.newVal;(!t||t===b)&&r.title!==s.title&&n.all(E+M).setHTML(s.title),(!t||t===v)&&r.pause!==s.pause&&n.all(E+I).setHTML(s.pause),(!t||t===i)&&r.clear!==s.clear&&n.all(E+T).set("value",s.clear)},_afterPausedChange:function(t){var n=t.newVal;t.src!==e.Widget.SRC_UI&&this._uiUpdatePaused(n),n?this._printLoop&&this._cancelPrintLoop():this._schedulePrint()},_uiUpdatePaused:function(e){var t=this._foot.all("input[type=checkbox]."+F);t&&t.set(r,e)},_afterConsoleLimitChange:function(){this._trimOldEntries()},_afterCollapsedChange:function(e){this._uiUpdateCollapsed(e.newVal)},_uiUpdateCollapsed:function(e){var t=this.get("boundingBox"),n=t.all("button."+N),r=e?"addClass":"removeClass",i=this.get("strings."+(e?"expand":"collapse"));t[r](C),n&&n.setHTML(i),this._uiSetHeight(e?this._head.get("offsetHeight"):this.get(h))},_afterVisibleChange:function(e){et.superclass._afterVisibleChange.apply(this,arguments),this._uiUpdateFromHideShow(e.newVal)},_uiUpdateFromHideShow:function(e){e&&this._uiSetHeight(this.get(h))},_onLogEvent:function(t){if(!this.get(f)&&this._isInLogLevel(t)){var n=e.config.debug;e.config.debug=!1,this.fire(l,{message:this._normalizeMessage(t)}),e.config.debug=n}},_defResetFn:function(){this.clearConsole(),this.set(y,new Date),this.set(f,!1),this.set(m,!1)},_defEntryFn:function(e){e.message&&(this.buffer.push(e.message),this._schedulePrint())}},{NAME:u,LOG_LEVEL_INFO:p,LOG_LEVEL_WARN:w,LOG_LEVEL_ERROR:c,ENTRY_CLASSES:{entry_class:_,entry_meta_class:H,entry_cat_class:D,entry_src_class:B,entry_time_class:j,entry_content_class:P},CHROME_CLASSES:{console_hd_class:L,console_bd_class:A,console_ft_class:O,console_controls_class:k,console_checkbox_class:x,console_pause_class:F,console_pause_label_class:I,console_button_class:S,console_clear_class:T,console_collapse_class:N,console_title_class:M},HEADER_TEMPLATE:'

    {str_title}

    ',BODY_TEMPLATE:'
    ',FOOTER_TEMPLATE:'
    ',ENTRY_TEMPLATE:$,ATTRS:{logEvent:{value:"yui:log",writeOnce:!0,validator:G},logSource:{value:e,writeOnce:!0,validator:function(e){return this._validateLogSource(e)}},strings:{valueFn:function(){return e.Intl.get("console")}},paused:{value:!1,validator:J.isBoolean},defaultCategory:{value:p,validator:G},defaultSource:{value:"global",validator:G},entryTemplate:{value:$,validator:G},logLevel:{value:e.config.logLevel||p,setter:function(e){return this._setLogLevel(e)}},printTimeout:{value:100,validator:Q},printLimit:{value:50,validator:Q},consoleLimit:{value:300,validator:Q},newestOnTop:{value:!0},scrollIntoView:{value:!0},startTime:{value:new Date},lastTime:{value:new Date,readOnly:!0},collapsed:{value:!1},height:{value:"300px"},width:{value:"300px"},useBrowserConsole:{lazyAdd:!1,value:!1,getter:function(){return this._getUseBrowserConsole()},setter:function(e){return this._setUseBrowserConsole(e)}},style:{value:"separate",writeOnce:!0,validator:function(e){return this._validateStyle(e)}}}})},"3.12.0",{requires:["yui-log","widget"],skinnable:!0,lang:["en","es","hu","it","ja"]}); diff --git a/lib/yuilib/3.9.1/build/console/console.js b/lib/yuilib/3.12.0/console/console.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/console/console.js rename to lib/yuilib/3.12.0/console/console.js index 2ce3b07006f..6c4e5dc669c --- a/lib/yuilib/3.9.1/build/console/console.js +++ b/lib/yuilib/3.12.0/console/console.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('console', function (Y, NAME) { /** @@ -14,10 +20,6 @@ YUI.add('console', function (Y, NAME) { * configured logLevel. * * @module console - * @class Console - * @extends Widget - * @param conf {Object} Configuration object (see Configuration attributes) - * @constructor */ var getCN = Y.ClassNameManager.getClassName, CHECKED = 'checked', @@ -91,7 +93,14 @@ var getCN = Y.ClassNameManager.getClassName, merge = Y.merge, substitute = Y.Lang.sub; +/** +A basic console that displays messages logged throughout your application. +@class Console +@constructor +@extends Widget +@param [config] {Object} Object literal specifying widget configuration properties. +**/ function Console() { Console.superclass.constructor.apply(this,arguments); } @@ -1512,4 +1521,4 @@ Y.Console = Y.extend(Console, Y.Widget, }); -}, '3.9.1', {"requires": ["yui-log", "widget"], "skinnable": true, "lang": ["en", "es", "ja"]}); +}, '3.12.0', {"requires": ["yui-log", "widget"], "skinnable": true, "lang": ["en", "es", "hu", "it", "ja"]}); diff --git a/lib/yuilib/3.12.0/console/lang/console.js b/lib/yuilib/3.12.0/console/lang/console.js new file mode 100755 index 00000000000..530627e5498 --- /dev/null +++ b/lib/yuilib/3.12.0/console/lang/console.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/console",function(e){e.Intl.add("console","",{title:"Log Console",pause:"Pause",clear:"Clear",collapse:"Collapse",expand:"Expand"})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/console/lang/console_en.js b/lib/yuilib/3.12.0/console/lang/console_en.js new file mode 100755 index 00000000000..b43e2ea2831 --- /dev/null +++ b/lib/yuilib/3.12.0/console/lang/console_en.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/console_en",function(e){e.Intl.add("console","en",{title:"Log Console",pause:"Pause",clear:"Clear",collapse:"Collapse",expand:"Expand"})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/console/lang/console_es.js b/lib/yuilib/3.12.0/console/lang/console_es.js new file mode 100755 index 00000000000..0dca40e5831 --- /dev/null +++ b/lib/yuilib/3.12.0/console/lang/console_es.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/console_es",function(e){e.Intl.add("console","es",{title:"Consola de informaci\u00f3n",pause:"Pausa",clear:"Borrar",collapse:"Colapsar",expand:"Expandir"})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/console/lang/console_hu.js b/lib/yuilib/3.12.0/console/lang/console_hu.js new file mode 100755 index 00000000000..0f35f4527a8 --- /dev/null +++ b/lib/yuilib/3.12.0/console/lang/console_hu.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/console_hu",function(e){e.Intl.add("console","hu",{title:"Log Konzol",pause:"Sz\u00fcnet",clear:"T\u00f6r\u00f6l",collapse:"\u00d6sszecsuk",expand:"Kinyit"})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/console/lang/console_it.js b/lib/yuilib/3.12.0/console/lang/console_it.js new file mode 100755 index 00000000000..76e31c4c0c3 --- /dev/null +++ b/lib/yuilib/3.12.0/console/lang/console_it.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/console_it",function(e){e.Intl.add("console","it",{title:"Console dei messaggi",pause:"Pausa",clear:"Cancella",collapse:"Collassa",expand:"Espandi"})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/console/lang/console_ja.js b/lib/yuilib/3.12.0/console/lang/console_ja.js new file mode 100755 index 00000000000..0f42a145025 --- /dev/null +++ b/lib/yuilib/3.12.0/console/lang/console_ja.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/console_ja",function(e){e.Intl.add("console","ja",{title:"\u30ed\u30b0\u30b3\u30f3\u30bd\u30fc\u30eb",pause:"\u4e00\u6642\u505c\u6b62",clear:"\u30af\u30ea\u30a2",collapse:"\u9589\u3058\u308b",expand:"\u958b\u304f"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/cookie/cookie-debug.js b/lib/yuilib/3.12.0/cookie/cookie-debug.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/cookie/cookie-debug.js rename to lib/yuilib/3.12.0/cookie/cookie-debug.js index 8d950d616aa..10338fbc942 --- a/lib/yuilib/3.9.1/build/cookie/cookie-debug.js +++ b/lib/yuilib/3.12.0/cookie/cookie-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('cookie', function (Y, NAME) { /** @@ -507,4 +513,4 @@ YUI.add('cookie', function (Y, NAME) { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/cookie/cookie-min.js b/lib/yuilib/3.12.0/cookie/cookie-min.js old mode 100644 new mode 100755 similarity index 92% rename from lib/yuilib/3.9.1/build/cookie/cookie-min.js rename to lib/yuilib/3.12.0/cookie/cookie-min.js index fa6cf05a575..5f01c0b48f8 --- a/lib/yuilib/3.9.1/build/cookie/cookie-min.js +++ b/lib/yuilib/3.12.0/cookie/cookie-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("cookie",function(e,t){function h(e){throw new TypeError(e)}function p(e){(!s(e)||e==="")&&h("Cookie name must be a non-empty string.")}function d(e){(!s(e)||e==="")&&h("Subcookie name must be a non-empty string.")}var n=e.Lang,r=e.Object,i=null,s=n.isString,o=n.isObject,u=n.isUndefined,a=n.isFunction,f=encodeURIComponent,l=decodeURIComponent,c=e.config.doc;e.Cookie={_createCookieString:function(e,t,n,r){r=r||{};var i=f(e)+"="+(n?f(t):t),u=r.expires,a=r.path,l=r.domain;return o(r)&&(u instanceof Date&&(i+="; expires="+u.toUTCString()),s(a)&&a!==""&&(i+="; path="+a),s(l)&&l!==""&&(i+="; domain="+l),r.secure===!0&&(i+="; secure")),i},_createCookieHashString:function(e){o(e)||h("Cookie._createCookieHashString(): Argument must be an object.");var t=[];return r.each(e,function(e,n){!a(e)&&!u(e)&&t.push(f(n)+"="+f(String(e)))}),t.join("&")},_parseCookieHash:function(e){var t=e.split("&"),n=i,r={};if(e.length)for(var s=0,o=t.length;s0){var o=t===!1?function(e){return e}:l,a=e.split(/;\s/g),f=i,c=i,h=i;for(var p=0,d=a.length;p0){var o=t===!1?function(e){return e}:l,a=e.split(/;\s/g),f=i,c=i,h=i;for(var p=0,d=a.length;p'+a+"")),s}})},"3.9.1",{requires:["editor-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("createlink-base",function(e,t){var n={};n.STRINGS={PROMPT:"Please enter the URL for the link to point to:",DEFAULT:"http://"},e.namespace("Plugin"),e.Plugin.CreateLinkBase=n,e.mix(e.Plugin.ExecCommand.COMMANDS,{createlink:function(t){var r=this.get("host").getInstance(),i,s,o,u,a=prompt(n.STRINGS.PROMPT,n.STRINGS.DEFAULT);return a&&(u=r.config.doc.createElement("div"),a=a.replace(/"/g,"").replace(/'/g,""),a=r.config.doc.createTextNode(a),u.appendChild(a),a=u.innerHTML,this.get("host")._execCommand(t,a),o=new r.EditorSelection,i=o.getSelected(),!o.isCollapsed&&i.size()?(s=i.item(0).one("a"),s&&i.item(0).replace(s),e.UA.gecko&&s.get("parentNode").test("span")&&s.get("parentNode").one("br.yui-cursor")&&s.get("parentNode").insert(s,"before")):this.get("host").execCommand("inserthtml",''+a+"")),s}})},"3.12.0",{requires:["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/createlink-base/createlink-base.js b/lib/yuilib/3.12.0/createlink-base/createlink-base.js old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/createlink-base/createlink-base.js rename to lib/yuilib/3.12.0/createlink-base/createlink-base.js index 62f4ece62d6..a787555e8a4 --- a/lib/yuilib/3.9.1/build/createlink-base/createlink-base.js +++ b/lib/yuilib/3.12.0/createlink-base/createlink-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('createlink-base', function (Y, NAME) { @@ -83,4 +89,4 @@ YUI.add('createlink-base', function (Y, NAME) { -}, '3.9.1', {"requires": ["editor-base"]}); +}, '3.12.0', {"requires": ["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/cssbase-context/cssbase-context-min.css b/lib/yuilib/3.12.0/cssbase-context/cssbase-context-min.css old mode 100644 new mode 100755 similarity index 88% rename from lib/yuilib/3.9.1/build/cssbase-context/cssbase-context-min.css rename to lib/yuilib/3.12.0/cssbase-context/cssbase-context-min.css index 077face289a..a0ba0ecd1b6 --- a/lib/yuilib/3.9.1/build/cssbase-context/cssbase-context-min.css +++ b/lib/yuilib/3.12.0/cssbase-context/cssbase-context-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-cssbase h1{font-size:138.5%}.yui3-cssbase h2{font-size:123.1%}.yui3-cssbase h3{font-size:108%}.yui3-cssbase h1,.yui3-cssbase h2,.yui3-cssbase h3{margin:1em 0}.yui3-cssbase h1,.yui3-cssbase h2,.yui3-cssbase h3,.yui3-cssbase h4,.yui3-cssbase h5,.yui3-cssbase h6,.yui3-cssbase strong{font-weight:bold}.yui3-cssbase abbr,.yui3-cssbase acronym{border-bottom:1px dotted #000;cursor:help}.yui3-cssbase em{font-style:italic}.yui3-cssbase blockquote,.yui3-cssbase ul,.yui3-cssbase ol,.yui3-cssbase dl{margin:1em}.yui3-cssbase ol,.yui3-cssbase ul,.yui3-cssbase dl{margin-left:2em}.yui3-cssbase ol{list-style:decimal outside}.yui3-cssbase ul{list-style:disc outside}.yui3-cssbase dl dd{margin-left:1em}.yui3-cssbase th,.yui3-cssbase td{border:1px solid #000;padding:.5em}.yui3-cssbase th{font-weight:bold;text-align:center}.yui3-cssbase caption{margin-bottom:.5em;text-align:center}.yui3-cssbase p,.yui3-cssbase fieldset,.yui3-cssbase table,.yui3-cssbase pre{margin-bottom:1em}.yui3-cssbase input[type=text],.yui3-cssbase input[type=password],.yui3-cssbase textarea{width:12.25em;*width:11.9em}#yui3-css-stamp.cssbase-context{display:none} diff --git a/lib/yuilib/3.9.1/build/cssbase-context/cssbase-context.css b/lib/yuilib/3.12.0/cssbase-context/cssbase-context.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/cssbase-context/cssbase-context.css rename to lib/yuilib/3.12.0/cssbase-context/cssbase-context.css index 7c12355f4b6..4960ec9d4af --- a/lib/yuilib/3.9.1/build/cssbase-context/cssbase-context.css +++ b/lib/yuilib/3.12.0/cssbase-context/cssbase-context.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* base.css, part of YUI's CSS Foundation */ .yui3-cssbase h1 { /*18px via YUI Fonts CSS foundation*/ diff --git a/lib/yuilib/3.9.1/build/cssbase/cssbase-min.css b/lib/yuilib/3.12.0/cssbase/cssbase-min.css old mode 100644 new mode 100755 similarity index 80% rename from lib/yuilib/3.9.1/build/cssbase/cssbase-min.css rename to lib/yuilib/3.12.0/cssbase/cssbase-min.css index a4d020bff8b..425539c17f3 --- a/lib/yuilib/3.9.1/build/cssbase/cssbase-min.css +++ b/lib/yuilib/3.12.0/cssbase/cssbase-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + h1{font-size:138.5%}h2{font-size:123.1%}h3{font-size:108%}h1,h2,h3{margin:1em 0}h1,h2,h3,h4,h5,h6,strong{font-weight:bold}abbr,acronym{border-bottom:1px dotted #000;cursor:help}em{font-style:italic}blockquote,ul,ol,dl{margin:1em}ol,ul,dl{margin-left:2em}ol{list-style:decimal outside}ul{list-style:disc outside}dl dd{margin-left:1em}th,td{border:1px solid #000;padding:.5em}th{font-weight:bold;text-align:center}caption{margin-bottom:.5em;text-align:center}p,fieldset,table,pre{margin-bottom:1em}input[type=text],input[type=password],textarea{width:12.25em;*width:11.9em}#yui3-css-stamp.cssbase{display:none} diff --git a/lib/yuilib/3.9.1/build/cssbase/cssbase.css b/lib/yuilib/3.12.0/cssbase/cssbase.css old mode 100644 new mode 100755 similarity index 92% rename from lib/yuilib/3.9.1/build/cssbase/cssbase.css rename to lib/yuilib/3.12.0/cssbase/cssbase.css index 3ca502f1ff1..848ca3dfc87 --- a/lib/yuilib/3.9.1/build/cssbase/cssbase.css +++ b/lib/yuilib/3.12.0/cssbase/cssbase.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* base.css, part of YUI's CSS Foundation */ h1 { /*18px via YUI Fonts CSS foundation*/ diff --git a/lib/yuilib/3.9.1/build/cssbutton/cssbutton-min.css b/lib/yuilib/3.12.0/cssbutton/cssbutton-min.css old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/cssbutton/cssbutton-min.css rename to lib/yuilib/3.12.0/cssbutton/cssbutton-min.css index 004230a5e1e..4e314b60792 --- a/lib/yuilib/3.9.1/build/cssbutton/cssbutton-min.css +++ b/lib/yuilib/3.12.0/cssbutton/cssbutton-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-button{display:inline-block;*display:inline;zoom:1;font-size:100%;*font-size:90%;*overflow:visible;padding:.4em 1em .45em;line-height:normal;white-space:nowrap;vertical-align:baseline;text-align:center;cursor:pointer;-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;color:#444;color:rgba(0,0,0,0.80);*color:#444;border:1px solid #999;border:none rgba(0,0,0,0);background-color:#e6e6e6;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80ffffff',endColorstr='#00ffffff',GradientType=0);background-image:-webkit-gradient(linear,0 0,0 100%,from(rgba(255,255,255,0.30)),color-stop(40%,rgba(255,255,255,0.15)),to(transparent));background-image:-webkit-linear-gradient(rgba(255,255,255,0.30),rgba(255,255,255,0.15) 40%,transparent);background-image:-moz-linear-gradient(top,rgba(255,255,255,0.30),rgba(255,255,255,0.15) 40%,transparent);background-image:-ms-linear-gradient(rgba(255,255,255,0.30),rgba(255,255,255,0.15) 40%,transparent);background-image:-o-linear-gradient(rgba(255,255,255,0.30),rgba(255,255,255,0.15) 40%,transparent);background-image:linear-gradient(rgba(255,255,255,0.30),rgba(255,255,255,0.15) 40%,transparent);text-decoration:none;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 0 rgba(255,255,255,0.30) inset,0 1px 2px rgba(0,0,0,0.15);-moz-box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 0 rgba(255,255,255,0.30) inset,0 1px 2px rgba(0,0,0,0.15);box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 0 rgba(255,255,255,0.30) inset,0 1px 2px rgba(0,0,0,0.15);-webkit-transition:.1s linear -webkit-box-shadow;-moz-transition:.1s linear -moz-box-shadow;-ms-transition:.1s linear box-shadow;-o-transition:.1s linear box-shadow;transition:.1s linear box-shadow}a.yui3-button{color:rgba(0,0,0,0.80);color:#444;text-decoration:none}.yui3-button-hover,.yui3-button:hover{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000',endColorstr='#26000000',GradientType=0);background-image:-webkit-gradient(linear,0 0,0 100%,from(transparent),color-stop(40%,rgba(0,0,0,0.05)),to(rgba(0,0,0,0.15)));background-image:-webkit-linear-gradient(transparent,rgba(0,0,0,0.05) 40%,rgba(0,0,0,0.15));background-image:-moz-linear-gradient(top,transparent,rgba(0,0,0,0.05) 40%,rgba(0,0,0,0.15));background-image:-ms-linear-gradient(transparent,rgba(0,0,0,0.05) 40%,rgba(0,0,0,0.15));background-image:-o-linear-gradient(transparent,rgba(0,0,0,0.05) 40%,rgba(0,0,0,0.15));background-image:linear-gradient(transparent,rgba(0,0,0,0.05) 40%,rgba(0,0,0,0.15))}.yui3-button-active,.yui3-button:active{border:inset 1px solid #999;border:none rgba(0,0,0,0);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#1A000000',endColorstr='#26000000',GradientType=0);background-image:-webkit-gradient(linear,0 0,0 100%,from(rgba(0,0,0,0.10)),to(rgba(0,0,0,0.15)));background-image:-webkit-linear-gradient(rgba(0,0,0,0.10),rgba(0,0,0,0.15));background-image:-moz-linear-gradient(top,rgba(0,0,0,0.10),rgba(0,0,0,0.15));background-image:-ms-linear-gradient(rgba(0,0,0,0.10),rgba(0,0,0,0.15));background-image:-o-linear-gradient(rgba(0,0,0,0.10),rgba(0,0,0,0.15));background-image:linear-gradient(rgba(0,0,0,0.10),rgba(0,0,0,0.15));-webkit-box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 4px rgba(0,0,0,0.30) inset;-moz-box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 4px rgba(0,0,0,0.30) inset;box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 4px rgba(0,0,0,0.30) inset}.yui3-button[disabled],.yui3-button-disabled,.yui3-button-disabled:hover,.yui3-button-disabled:active{cursor:default;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);filter:alpha(opacity=55);-khtml-opacity:.55;-moz-opacity:.55;opacity:.55;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset;-moz-box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset;box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset}.yui3-button-hidden{display:none}.yui3-button::-moz-focus-inner{padding:0;border:0}.yui3-button:-moz-focusring{outline:thin dotted}.yui3-skin-sam .yui3-button-primary,.yui3-skin-sam .yui3-button-selected{background-color:#345fcb;color:#fff;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 0 rgba(255,255,255,0.17) inset,0 1px 2px rgba(0,0,0,0.15);-moz-box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 0 rgba(255,255,255,0.17) inset,0 1px 2px rgba(0,0,0,0.15);box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 0 rgba(255,255,255,0.17) inset,0 1px 2px rgba(0,0,0,0.15)}.yui3-skin-sam .yui3-button:-moz-focusring{outline-color:rgba(0,0,0,0.85)}.yui3-skin-night .yui3-button{border:0;background-color:#343536;color:#dcdcdc;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 0 rgba(255,255,255,0.15) inset,0 1px 2px rgba(0,0,0,0.15);-moz-box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 0 rgba(255,255,255,0.15) inset,0 1px 2px rgba(0,0,0,0.15);box-shadow:0 0 0 1px rgba(0,0,0,0.25) inset,0 2px 0 rgba(255,255,255,0.15) inset,0 1px 2px rgba(0,0,0,0.15)}.yui3-skin-night .yui3-button-primary,.yui3-skin-night .yui3-button-selected{background-color:#747576;text-shadow:0 1px 2px rgba(0,0,0,0.7)}.yui3-skin-night .yui3-button:-moz-focusring{outline-color:rgba(255,255,255,0.85)}#yui3-css-stamp.cssbutton{display:none} diff --git a/lib/yuilib/3.9.1/build/cssbutton/cssbutton.css b/lib/yuilib/3.12.0/cssbutton/cssbutton.css old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/cssbutton/cssbutton.css rename to lib/yuilib/3.12.0/cssbutton/cssbutton.css index 50ea84a364a..5281bdc64eb --- a/lib/yuilib/3.9.1/build/cssbutton/cssbutton.css +++ b/lib/yuilib/3.12.0/cssbutton/cssbutton.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-button { /* Structure */ display: inline-block; diff --git a/lib/yuilib/3.9.1/build/cssfonts-context/cssfonts-context-min.css b/lib/yuilib/3.12.0/cssfonts-context/cssfonts-context-min.css old mode 100644 new mode 100755 similarity index 77% rename from lib/yuilib/3.9.1/build/cssfonts-context/cssfonts-context-min.css rename to lib/yuilib/3.12.0/cssfonts-context/cssfonts-context-min.css index 23996caec3d..d0e55735ec7 --- a/lib/yuilib/3.9.1/build/cssfonts-context/cssfonts-context-min.css +++ b/lib/yuilib/3.12.0/cssfonts-context/cssfonts-context-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-cssfonts body,.yui3-cssfonts{font:13px/1.231 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small}.yui3-cssfonts select,.yui3-cssfonts input,.yui3-cssfonts button,.yui3-cssfonts textarea{font:99% arial,helvetica,clean,sans-serif}.yui3-cssfonts table{font-size:inherit;font:100%}.yui3-cssfonts pre,.yui3-cssfonts code,.yui3-cssfonts kbd,.yui3-cssfonts samp,.yui3-cssfonts tt{font-family:monospace;*font-size:108%;line-height:100%}#yui3-css-stamp.cssfonts-context{display:none} diff --git a/lib/yuilib/3.9.1/build/cssfonts-context/cssfonts-context.css b/lib/yuilib/3.12.0/cssfonts-context/cssfonts-context.css old mode 100644 new mode 100755 similarity index 86% rename from lib/yuilib/3.9.1/build/cssfonts-context/cssfonts-context.css rename to lib/yuilib/3.12.0/cssfonts-context/cssfonts-context.css index 490823d0c8e..512d0c1150a --- a/lib/yuilib/3.9.1/build/cssfonts-context/cssfonts-context.css +++ b/lib/yuilib/3.12.0/cssfonts-context/cssfonts-context.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /** * Percents could work for IE, but for backCompat purposes, we are using keywords. * x-small is for IE6/7 quirks mode. diff --git a/lib/yuilib/3.9.1/build/cssfonts/cssfonts-min.css b/lib/yuilib/3.12.0/cssfonts/cssfonts-min.css old mode 100644 new mode 100755 similarity index 67% rename from lib/yuilib/3.9.1/build/cssfonts/cssfonts-min.css rename to lib/yuilib/3.12.0/cssfonts/cssfonts-min.css index 6a10789421a..6a5a727db24 --- a/lib/yuilib/3.9.1/build/cssfonts/cssfonts-min.css +++ b/lib/yuilib/3.12.0/cssfonts/cssfonts-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + body{font:13px/1.231 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small}select,input,button,textarea{font:99% arial,helvetica,clean,sans-serif}table{font-size:inherit;font:100%}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%}#yui3-css-stamp.cssfonts{display:none} diff --git a/lib/yuilib/3.9.1/build/cssfonts/cssfonts.css b/lib/yuilib/3.12.0/cssfonts/cssfonts.css old mode 100644 new mode 100755 similarity index 83% rename from lib/yuilib/3.9.1/build/cssfonts/cssfonts.css rename to lib/yuilib/3.12.0/cssfonts/cssfonts.css index 93e5b54bfad..6e240242b73 --- a/lib/yuilib/3.9.1/build/cssfonts/cssfonts.css +++ b/lib/yuilib/3.12.0/cssfonts/cssfonts.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /** * Percents could work for IE, but for backCompat purposes, we are using keywords. * x-small is for IE6/7 quirks mode. diff --git a/lib/yuilib/3.9.1/build/cssgrids-base/cssgrids-base-min.css b/lib/yuilib/3.12.0/cssgrids-base/cssgrids-base-min.css old mode 100644 new mode 100755 similarity index 69% rename from lib/yuilib/3.9.1/build/cssgrids-base/cssgrids-base-min.css rename to lib/yuilib/3.12.0/cssgrids-base/cssgrids-base-min.css index cfb2cd19a3a..12a0d1cc285 --- a/lib/yuilib/3.9.1/build/cssgrids-base/cssgrids-base-min.css +++ b/lib/yuilib/3.12.0/cssgrids-base/cssgrids-base-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-g{letter-spacing:-0.31em;*letter-spacing:normal;*word-spacing:-0.43em;text-rendering:optimizespeed}.opera-only :-o-prefocus,.yui3-g{word-spacing:-0.43em}.yui3-u{display:inline-block;zoom:1;*display:inline;letter-spacing:normal;word-spacing:normal;vertical-align:top;text-rendering:auto}#yui3-css-stamp.cssgrids-base{display:none} diff --git a/lib/yuilib/3.9.1/build/cssgrids-base/cssgrids-base.css b/lib/yuilib/3.12.0/cssgrids-base/cssgrids-base.css old mode 100644 new mode 100755 similarity index 84% rename from lib/yuilib/3.9.1/build/cssgrids-base/cssgrids-base.css rename to lib/yuilib/3.12.0/cssgrids-base/cssgrids-base.css index b066d89373a..71c427f10dc --- a/lib/yuilib/3.9.1/build/cssgrids-base/cssgrids-base.css +++ b/lib/yuilib/3.12.0/cssgrids-base/cssgrids-base.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-g { letter-spacing: -0.31em; /* Webkit: collapse white-space between units */ *letter-spacing: normal; /* reset IE < 8 */ diff --git a/lib/yuilib/3.9.1/build/cssgrids-responsive/cssgrids-responsive-min.css b/lib/yuilib/3.12.0/cssgrids-responsive/cssgrids-responsive-min.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/cssgrids-responsive/cssgrids-responsive-min.css rename to lib/yuilib/3.12.0/cssgrids-responsive/cssgrids-responsive-min.css index 2fa853bf2c5..ceff29101a1 --- a/lib/yuilib/3.9.1/build/cssgrids-responsive/cssgrids-responsive-min.css +++ b/lib/yuilib/3.12.0/cssgrids-responsive/cssgrids-responsive-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-g{letter-spacing:-0.31em;*letter-spacing:normal;*word-spacing:-0.43em;text-rendering:optimizespeed}.opera-only :-o-prefocus,.yui3-g{word-spacing:-0.43em}.yui3-u{display:inline-block;zoom:1;*display:inline;letter-spacing:normal;word-spacing:normal;vertical-align:top;text-rendering:auto}.yui3-u-1,.yui3-u-1-2,.yui3-u-1-3,.yui3-u-2-3,.yui3-u-1-4,.yui3-u-3-4,.yui3-u-1-5,.yui3-u-2-5,.yui3-u-3-5,.yui3-u-4-5,.yui3-u-1-6,.yui3-u-5-6,.yui3-u-1-8,.yui3-u-3-8,.yui3-u-5-8,.yui3-u-7-8,.yui3-u-1-12,.yui3-u-5-12,.yui3-u-7-12,.yui3-u-11-12,.yui3-u-1-24,.yui3-u-5-24,.yui3-u-7-24,.yui3-u-11-24,.yui3-u-13-24,.yui3-u-17-24,.yui3-u-19-24,.yui3-u-23-24{display:inline-block;zoom:1;*display:inline;letter-spacing:normal;word-spacing:normal;vertical-align:top;text-rendering:auto}.yui3-u-1{display:block}.yui3-u-1-2{width:50%}.yui3-u-1-3{width:33.33333%}.yui3-u-2-3{width:66.66666%}.yui3-u-1-4{width:25%}.yui3-u-3-4{width:75%}.yui3-u-1-5{width:20%}.yui3-u-2-5{width:40%}.yui3-u-3-5{width:60%}.yui3-u-4-5{width:80%}.yui3-u-1-6{width:16.656%}.yui3-u-5-6{width:83.33%}.yui3-u-1-8{width:12.5%}.yui3-u-3-8{width:37.5%}.yui3-u-5-8{width:62.5%}.yui3-u-7-8{width:87.5%}.yui3-u-1-12{width:8.3333%}.yui3-u-5-12{width:41.6666%}.yui3-u-7-12{width:58.3333%}.yui3-u-11-12{width:91.6666%}.yui3-u-1-24{width:4.1666%}.yui3-u-5-24{width:20.8333%}.yui3-u-7-24{width:29.1666%}.yui3-u-11-24{width:45.8333%}.yui3-u-13-24{width:54.1666%}.yui3-u-17-24{width:70.8333%}.yui3-u-19-24{width:79.1666%}.yui3-u-23-24{width:95.8333%}.yui3-g-r{letter-spacing:-0.31em;*letter-spacing:normal;*word-spacing:-0.43em}.opera-only :-o-prefocus,.yui3-g-r{word-spacing:-0.43em}.yui3-g-r img{max-width:100%}@media(min-width:980px){.yui3-visible-phone{display:none}.yui3-visible-tablet{display:none}.yui3-hidden-desktop{display:none}}@media(max-width:480px){.yui3-g-r>[class ^= "yui3-u"]{width:100%}}@media(max-width:767px){.yui3-g-r>[class ^= "yui3-u"]{width:100%}.yui3-hidden-phone{display:none}.yui3-visible-desktop{display:none}}@media(min-width:768px) and (max-width:979px){.yui3-hidden-tablet{display:none}.yui3-visible-desktop{display:none}}#yui3-css-stamp.cssgrids-responsive{display:none} diff --git a/lib/yuilib/3.9.1/build/cssgrids-responsive/cssgrids-responsive.css b/lib/yuilib/3.12.0/cssgrids-responsive/cssgrids-responsive.css old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/cssgrids-responsive/cssgrids-responsive.css rename to lib/yuilib/3.12.0/cssgrids-responsive/cssgrids-responsive.css index be4c71ab48d..7fff38b18ae --- a/lib/yuilib/3.9.1/build/cssgrids-responsive/cssgrids-responsive.css +++ b/lib/yuilib/3.12.0/cssgrids-responsive/cssgrids-responsive.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-g { letter-spacing: -0.31em; /* Webkit: collapse white-space between units */ *letter-spacing: normal; /* reset IE < 8 */ diff --git a/lib/yuilib/3.9.1/build/cssgrids-units/cssgrids-units-min.css b/lib/yuilib/3.12.0/cssgrids-units/cssgrids-units-min.css old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/cssgrids-units/cssgrids-units-min.css rename to lib/yuilib/3.12.0/cssgrids-units/cssgrids-units-min.css index 89501bc0c46..7e6cfb904b2 --- a/lib/yuilib/3.9.1/build/cssgrids-units/cssgrids-units-min.css +++ b/lib/yuilib/3.12.0/cssgrids-units/cssgrids-units-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-u-1,.yui3-u-1-2,.yui3-u-1-3,.yui3-u-2-3,.yui3-u-1-4,.yui3-u-3-4,.yui3-u-1-5,.yui3-u-2-5,.yui3-u-3-5,.yui3-u-4-5,.yui3-u-1-6,.yui3-u-5-6,.yui3-u-1-8,.yui3-u-3-8,.yui3-u-5-8,.yui3-u-7-8,.yui3-u-1-12,.yui3-u-5-12,.yui3-u-7-12,.yui3-u-11-12,.yui3-u-1-24,.yui3-u-5-24,.yui3-u-7-24,.yui3-u-11-24,.yui3-u-13-24,.yui3-u-17-24,.yui3-u-19-24,.yui3-u-23-24{display:inline-block;zoom:1;*display:inline;letter-spacing:normal;word-spacing:normal;vertical-align:top;text-rendering:auto}.yui3-u-1{display:block}.yui3-u-1-2{width:50%}.yui3-u-1-3{width:33.33333%}.yui3-u-2-3{width:66.66666%}.yui3-u-1-4{width:25%}.yui3-u-3-4{width:75%}.yui3-u-1-5{width:20%}.yui3-u-2-5{width:40%}.yui3-u-3-5{width:60%}.yui3-u-4-5{width:80%}.yui3-u-1-6{width:16.656%}.yui3-u-5-6{width:83.33%}.yui3-u-1-8{width:12.5%}.yui3-u-3-8{width:37.5%}.yui3-u-5-8{width:62.5%}.yui3-u-7-8{width:87.5%}.yui3-u-1-12{width:8.3333%}.yui3-u-5-12{width:41.6666%}.yui3-u-7-12{width:58.3333%}.yui3-u-11-12{width:91.6666%}.yui3-u-1-24{width:4.1666%}.yui3-u-5-24{width:20.8333%}.yui3-u-7-24{width:29.1666%}.yui3-u-11-24{width:45.8333%}.yui3-u-13-24{width:54.1666%}.yui3-u-17-24{width:70.8333%}.yui3-u-19-24{width:79.1666%}.yui3-u-23-24{width:95.8333%}#yui3-css-stamp.cssgrids-units{display:none} diff --git a/lib/yuilib/3.9.1/build/cssgrids-units/cssgrids-units.css b/lib/yuilib/3.12.0/cssgrids-units/cssgrids-units.css old mode 100644 new mode 100755 similarity index 92% rename from lib/yuilib/3.9.1/build/cssgrids-units/cssgrids-units.css rename to lib/yuilib/3.12.0/cssgrids-units/cssgrids-units.css index 7fe2e5de232..d81b56944a8 --- a/lib/yuilib/3.9.1/build/cssgrids-units/cssgrids-units.css +++ b/lib/yuilib/3.12.0/cssgrids-units/cssgrids-units.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-u-1, .yui3-u-1-2, .yui3-u-1-3, diff --git a/lib/yuilib/3.9.1/build/cssgrids/cssgrids-min.css b/lib/yuilib/3.12.0/cssgrids/cssgrids-min.css old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/cssgrids/cssgrids-min.css rename to lib/yuilib/3.12.0/cssgrids/cssgrids-min.css index 346a4c25480..2b296d96320 --- a/lib/yuilib/3.9.1/build/cssgrids/cssgrids-min.css +++ b/lib/yuilib/3.12.0/cssgrids/cssgrids-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-g{letter-spacing:-0.31em;*letter-spacing:normal;*word-spacing:-0.43em;text-rendering:optimizespeed}.opera-only :-o-prefocus,.yui3-g{word-spacing:-0.43em}.yui3-u{display:inline-block;zoom:1;*display:inline;letter-spacing:normal;word-spacing:normal;vertical-align:top;text-rendering:auto}.yui3-u-1,.yui3-u-1-2,.yui3-u-1-3,.yui3-u-2-3,.yui3-u-1-4,.yui3-u-3-4,.yui3-u-1-5,.yui3-u-2-5,.yui3-u-3-5,.yui3-u-4-5,.yui3-u-1-6,.yui3-u-5-6,.yui3-u-1-8,.yui3-u-3-8,.yui3-u-5-8,.yui3-u-7-8,.yui3-u-1-12,.yui3-u-5-12,.yui3-u-7-12,.yui3-u-11-12,.yui3-u-1-24,.yui3-u-5-24,.yui3-u-7-24,.yui3-u-11-24,.yui3-u-13-24,.yui3-u-17-24,.yui3-u-19-24,.yui3-u-23-24{display:inline-block;zoom:1;*display:inline;letter-spacing:normal;word-spacing:normal;vertical-align:top;text-rendering:auto}.yui3-u-1{display:block}.yui3-u-1-2{width:50%}.yui3-u-1-3{width:33.33333%}.yui3-u-2-3{width:66.66666%}.yui3-u-1-4{width:25%}.yui3-u-3-4{width:75%}.yui3-u-1-5{width:20%}.yui3-u-2-5{width:40%}.yui3-u-3-5{width:60%}.yui3-u-4-5{width:80%}.yui3-u-1-6{width:16.656%}.yui3-u-5-6{width:83.33%}.yui3-u-1-8{width:12.5%}.yui3-u-3-8{width:37.5%}.yui3-u-5-8{width:62.5%}.yui3-u-7-8{width:87.5%}.yui3-u-1-12{width:8.3333%}.yui3-u-5-12{width:41.6666%}.yui3-u-7-12{width:58.3333%}.yui3-u-11-12{width:91.6666%}.yui3-u-1-24{width:4.1666%}.yui3-u-5-24{width:20.8333%}.yui3-u-7-24{width:29.1666%}.yui3-u-11-24{width:45.8333%}.yui3-u-13-24{width:54.1666%}.yui3-u-17-24{width:70.8333%}.yui3-u-19-24{width:79.1666%}.yui3-u-23-24{width:95.8333%}#yui3-css-stamp.cssgrids{display:none} diff --git a/lib/yuilib/3.9.1/build/cssgrids/cssgrids.css b/lib/yuilib/3.12.0/cssgrids/cssgrids.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/cssgrids/cssgrids.css rename to lib/yuilib/3.12.0/cssgrids/cssgrids.css index 8753ad9e79a..7936eae37d6 --- a/lib/yuilib/3.9.1/build/cssgrids/cssgrids.css +++ b/lib/yuilib/3.12.0/cssgrids/cssgrids.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-g { letter-spacing: -0.31em; /* Webkit: collapse white-space between units */ *letter-spacing: normal; /* reset IE < 8 */ diff --git a/lib/yuilib/3.9.1/build/cssnormalize-context/cssnormalize-context-min.css b/lib/yuilib/3.12.0/cssnormalize-context/cssnormalize-context-min.css old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/cssnormalize-context/cssnormalize-context-min.css rename to lib/yuilib/3.12.0/cssnormalize-context/cssnormalize-context-min.css index 4ec1333867e..a49f985aee0 --- a/lib/yuilib/3.9.1/build/cssnormalize-context/cssnormalize-context-min.css +++ b/lib/yuilib/3.12.0/cssnormalize-context/cssnormalize-context-min.css @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /*! Copyright (c) Nicolas Gallagher and Jonathan Neal normalize.css v1.1.0 | MIT License | git.io/normalize */.yui3-normalized article,.yui3-normalized aside,.yui3-normalized details,.yui3-normalized figcaption,.yui3-normalized figure,.yui3-normalized footer,.yui3-normalized header,.yui3-normalized hgroup,.yui3-normalized main,.yui3-normalized nav,.yui3-normalized section,.yui3-normalized summary{display:block}.yui3-normalized audio,.yui3-normalized canvas,.yui3-normalized video{display:inline-block}.yui3-normalized audio:not([controls]){display:none;height:0}.yui3-normalized [hidden]{display:none}.yui3-normalized{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}.yui3-normalized,.yui3-normalized button,.yui3-normalized input,.yui3-normalized select,.yui3-normalized textarea{font-family:sans-serif}.yui3-normalized body{margin:0}.yui3-normalized a:focus{outline:thin dotted}.yui3-normalized a:active,.yui3-normalized a:hover{outline:0}.yui3-normalized h1{font-size:2em;margin:.67em 0}.yui3-normalized h2{font-size:1.5em;margin:.83em 0}.yui3-normalized h3{font-size:1.17em;margin:1em 0}.yui3-normalized h4{font-size:1em;margin:1.33em 0}.yui3-normalized h5{font-size:.83em;margin:1.67em 0}.yui3-normalized h6{font-size:.67em;margin:2.33em 0}.yui3-normalized abbr[title]{border-bottom:1px dotted}.yui3-normalized b,.yui3-normalized strong{font-weight:bold}.yui3-normalized blockquote{margin:1em 40px}.yui3-normalized dfn{font-style:italic}.yui3-normalized hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}.yui3-normalized mark{background:#ff0;color:#000}.yui3-normalized p,.yui3-normalized pre{margin:1em 0}.yui3-normalized code,.yui3-normalized kbd,.yui3-normalized pre,.yui3-normalized samp{font-family:monospace,serif;_font-family:'courier new',monospace;font-size:1em}.yui3-normalized pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}.yui3-normalized q{quotes:none}.yui3-normalized q:before,.yui3-normalized q:after{content:'';content:none}.yui3-normalized small{font-size:80%}.yui3-normalized sub,.yui3-normalized sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.yui3-normalized sup{top:-0.5em}.yui3-normalized sub{bottom:-0.25em}.yui3-normalized dl,.yui3-normalized menu,.yui3-normalized ol,.yui3-normalized ul{margin:1em 0}.yui3-normalized dd{margin:0 0 0 40px}.yui3-normalized menu,.yui3-normalized ol,.yui3-normalized ul{padding:0 0 0 40px}.yui3-normalized nav ul,.yui3-normalized nav ol{list-style:none;list-style-image:none}.yui3-normalized img{border:0;-ms-interpolation-mode:bicubic}.yui3-normalized svg:not(:root){overflow:hidden}.yui3-normalized figure{margin:0}.yui3-normalized form{margin:0}.yui3-normalized fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:.35em .625em .75em}.yui3-normalized legend{border:0;padding:0;white-space:normal}.yui3-normalized button,.yui3-normalized input,.yui3-normalized select,.yui3-normalized textarea{font-size:100%;margin:0;vertical-align:baseline}.yui3-normalized button,.yui3-normalized input{line-height:normal}.yui3-normalized button,.yui3-normalized select{text-transform:none}.yui3-normalized button,.yui3-normalized input[type="button"],.yui3-normalized input[type="reset"],.yui3-normalized input[type="submit"]{-webkit-appearance:button;cursor:pointer}.yui3-normalized button[disabled],.yui3-normalized input[disabled]{cursor:default}.yui3-normalized input[type="checkbox"],.yui3-normalized input[type="radio"]{box-sizing:border-box;padding:0}.yui3-normalized input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}.yui3-normalized input[type="search"]::-webkit-search-cancel-button,.yui3-normalized input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}.yui3-normalized button::-moz-focus-inner,.yui3-normalized input::-moz-focus-inner{border:0;padding:0}.yui3-normalized textarea{overflow:auto;vertical-align:top}.yui3-normalized table{border-collapse:collapse;border-spacing:0}#yui3-css-stamp.cssnormalize-context{display:none} diff --git a/lib/yuilib/3.9.1/build/cssnormalize-context/cssnormalize-context.css b/lib/yuilib/3.12.0/cssnormalize-context/cssnormalize-context.css old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/cssnormalize-context/cssnormalize-context.css rename to lib/yuilib/3.12.0/cssnormalize-context/cssnormalize-context.css index a35a372652a..08c028a4ffc --- a/lib/yuilib/3.9.1/build/cssnormalize-context/cssnormalize-context.css +++ b/lib/yuilib/3.12.0/cssnormalize-context/cssnormalize-context.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /*! Copyright (c) Nicolas Gallagher and Jonathan Neal normalize.css v1.1.0 | MIT License | git.io/normalize */ diff --git a/lib/yuilib/3.9.1/build/cssnormalize/cssnormalize-min.css b/lib/yuilib/3.12.0/cssnormalize/cssnormalize-min.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/cssnormalize/cssnormalize-min.css rename to lib/yuilib/3.12.0/cssnormalize/cssnormalize-min.css index 60b01eb0f7b..f1e35d73346 --- a/lib/yuilib/3.9.1/build/cssnormalize/cssnormalize-min.css +++ b/lib/yuilib/3.12.0/cssnormalize/cssnormalize-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /*! Copyright (c) Nicolas Gallagher and Jonathan Neal *//*! normalize.css v1.1.0 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}html,button,input,select,textarea{font-family:sans-serif}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{font-size:2em;margin:.67em 0}h2{font-size:1.5em;margin:.83em 0}h3{font-size:1.17em;margin:1em 0}h4{font-size:1em;margin:1.33em 0}h5{font-size:.83em;margin:1.67em 0}h6{font-size:.67em;margin:2.33em 0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}blockquote{margin:1em 40px}dfn{font-style:italic}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}mark{background:#ff0;color:#000}p,pre{margin:1em 0}code,kbd,pre,samp{font-family:monospace,serif;_font-family:'courier new',monospace;font-size:1em}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}q{quotes:none}q:before,q:after{content:'';content:none}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}dl,menu,ol,ul{margin:1em 0}dd{margin:0 0 0 40px}menu,ol,ul{padding:0 0 0 40px}nav ul,nav ol{list-style:none;list-style-image:none}img{border:0;-ms-interpolation-mode:bicubic}svg:not(:root){overflow:hidden}figure{margin:0}form{margin:0}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0;white-space:normal;*margin-left:-7px}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}button,input{line-height:normal}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer;*overflow:visible}button[disabled],html input[disabled]{cursor:default}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0;*height:13px;*width:13px}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}#yui3-css-stamp.cssnormalize{display:none} diff --git a/lib/yuilib/3.9.1/build/cssnormalize/cssnormalize.css b/lib/yuilib/3.12.0/cssnormalize/cssnormalize.css old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/cssnormalize/cssnormalize.css rename to lib/yuilib/3.12.0/cssnormalize/cssnormalize.css index 035672c756e..6a01a0167d1 --- a/lib/yuilib/3.9.1/build/cssnormalize/cssnormalize.css +++ b/lib/yuilib/3.12.0/cssnormalize/cssnormalize.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /*! Copyright (c) Nicolas Gallagher and Jonathan Neal */ /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ diff --git a/lib/yuilib/3.9.1/build/cssreset-context/cssreset-context-min.css b/lib/yuilib/3.12.0/cssreset-context/cssreset-context-min.css old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/cssreset-context/cssreset-context-min.css rename to lib/yuilib/3.12.0/cssreset-context/cssreset-context-min.css index 7c11d57c992..b465e0c6c72 --- a/lib/yuilib/3.9.1/build/cssreset-context/cssreset-context-min.css +++ b/lib/yuilib/3.12.0/cssreset-context/cssreset-context-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-cssreset html{color:#000;background:#FFF}.yui3-cssreset body,.yui3-cssreset div,.yui3-cssreset dl,.yui3-cssreset dt,.yui3-cssreset dd,.yui3-cssreset ul,.yui3-cssreset ol,.yui3-cssreset li,.yui3-cssreset h1,.yui3-cssreset h2,.yui3-cssreset h3,.yui3-cssreset h4,.yui3-cssreset h5,.yui3-cssreset h6,.yui3-cssreset pre,.yui3-cssreset code,.yui3-cssreset form,.yui3-cssreset fieldset,.yui3-cssreset legend,.yui3-cssreset input,.yui3-cssreset textarea,.yui3-cssreset p,.yui3-cssreset blockquote,.yui3-cssreset th,.yui3-cssreset td{margin:0;padding:0}.yui3-cssreset table{border-collapse:collapse;border-spacing:0}.yui3-cssreset fieldset,.yui3-cssreset img{border:0}.yui3-cssreset address,.yui3-cssreset caption,.yui3-cssreset cite,.yui3-cssreset code,.yui3-cssreset dfn,.yui3-cssreset em,.yui3-cssreset strong,.yui3-cssreset th,.yui3-cssreset var{font-style:normal;font-weight:normal}.yui3-cssreset ol,.yui3-cssreset ul{list-style:none}.yui3-cssreset caption,.yui3-cssreset th{text-align:left}.yui3-cssreset h1,.yui3-cssreset h2,.yui3-cssreset h3,.yui3-cssreset h4,.yui3-cssreset h5,.yui3-cssreset h6{font-size:100%;font-weight:normal}.yui3-cssreset q:before,.yui3-cssreset q:after{content:''}.yui3-cssreset abbr,.yui3-cssreset acronym{border:0;font-variant:normal}.yui3-cssreset sup{vertical-align:text-top}.yui3-cssreset sub{vertical-align:text-bottom}.yui3-cssreset input,.yui3-cssreset textarea,.yui3-cssreset select{font-family:inherit;font-size:inherit;font-weight:inherit}.yui3-cssreset input,.yui3-cssreset textarea,.yui3-cssreset select{*font-size:100%}.yui3-cssreset legend{color:#000}#yui3-css-stamp.cssreset-context{display:none} diff --git a/lib/yuilib/3.9.1/build/cssreset-context/cssreset-context.css b/lib/yuilib/3.12.0/cssreset-context/cssreset-context.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/cssreset-context/cssreset-context.css rename to lib/yuilib/3.12.0/cssreset-context/cssreset-context.css index 73ad4c906b3..f342b0d48c0 --- a/lib/yuilib/3.9.1/build/cssreset-context/cssreset-context.css +++ b/lib/yuilib/3.12.0/cssreset-context/cssreset-context.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /*e TODO will need to remove settings on HTML since we can't namespace it. TODO with the prefix, should I group by selector or property for weight savings? diff --git a/lib/yuilib/3.9.1/build/cssreset/cssreset-min.css b/lib/yuilib/3.12.0/cssreset/cssreset-min.css old mode 100644 new mode 100755 similarity index 83% rename from lib/yuilib/3.9.1/build/cssreset/cssreset-min.css rename to lib/yuilib/3.12.0/cssreset/cssreset-min.css index 7e9c8a90d97..c43b7849175 --- a/lib/yuilib/3.9.1/build/cssreset/cssreset-min.css +++ b/lib/yuilib/3.12.0/cssreset/cssreset-min.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + html{color:#000;background:#FFF}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit}input,textarea,select{*font-size:100%}legend{color:#000}#yui3-css-stamp.cssreset{display:none} diff --git a/lib/yuilib/3.9.1/build/cssreset/cssreset.css b/lib/yuilib/3.12.0/cssreset/cssreset.css old mode 100644 new mode 100755 similarity index 90% rename from lib/yuilib/3.9.1/build/cssreset/cssreset.css rename to lib/yuilib/3.12.0/cssreset/cssreset.css index 6ee591e5e8d..438d7b20ec1 --- a/lib/yuilib/3.9.1/build/cssreset/cssreset.css +++ b/lib/yuilib/3.12.0/cssreset/cssreset.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* TODO will need to remove settings on HTML since we can't namespace it. TODO with the prefix, should I group by selector or property for weight savings? diff --git a/lib/yuilib/3.9.1/build/dataschema-array/dataschema-array-debug.js b/lib/yuilib/3.12.0/dataschema-array/dataschema-array-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/dataschema-array/dataschema-array-debug.js rename to lib/yuilib/3.12.0/dataschema-array/dataschema-array-debug.js index e507f6e42c6..bcc0b28696b --- a/lib/yuilib/3.9.1/build/dataschema-array/dataschema-array-debug.js +++ b/lib/yuilib/3.12.0/dataschema-array/dataschema-array-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dataschema-array', function (Y, NAME) { /** @@ -187,4 +193,4 @@ var LANG = Y.Lang, Y.DataSchema.Array = Y.mix(SchemaArray, Y.DataSchema.Base); -}, '3.9.1', {"requires": ["dataschema-base"]}); +}, '3.12.0', {"requires": ["dataschema-base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-array/dataschema-array-min.js b/lib/yuilib/3.12.0/dataschema-array/dataschema-array-min.js old mode 100644 new mode 100755 similarity index 73% rename from lib/yuilib/3.9.1/build/dataschema-array/dataschema-array-min.js rename to lib/yuilib/3.12.0/dataschema-array/dataschema-array-min.js index 368af1e1b2d..d6d5e4cd30c --- a/lib/yuilib/3.9.1/build/dataschema-array/dataschema-array-min.js +++ b/lib/yuilib/3.12.0/dataschema-array/dataschema-array-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dataschema-array",function(e,t){var n=e.Lang,r={apply:function(e,t){var i=t,s={results:[],meta:{}};return n.isArray(i)?e&&n.isArray(e.resultFields)?s=r._parseResults.call(this,e.resultFields,i,s):s.results=i:s.error=new Error("Array schema parse failure"),s},_parseResults:function(t,r,i){var s=[],o,u,a,f,l,c,h,p;for(h=r.length-1;h>-1;h--){o={},u=r[h],a=n.isObject(u)&&!n.isFunction(u)?2:n.isArray(u)?1:n.isString(u)?0:-1;if(a>0)for(p=t.length-1;p>-1;p--)f=t[p],l=n.isUndefined(f.key)?f:f.key,c=n.isUndefined(u[l])?u[p]:u[l],o[l]=e.DataSchema.Base.parse.call(this,c,f);else a===0?o=u:o=null;s[h]=o}return i.results=s,i}};e.DataSchema.Array=e.mix(r,e.DataSchema.Base)},"3.9.1",{requires:["dataschema-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dataschema-array",function(e,t){var n=e.Lang,r={apply:function(e,t){var i=t,s={results:[],meta:{}};return n.isArray(i)?e&&n.isArray(e.resultFields)?s=r._parseResults.call(this,e.resultFields,i,s):s.results=i:s.error=new Error("Array schema parse failure"),s},_parseResults:function(t,r,i){var s=[],o,u,a,f,l,c,h,p;for(h=r.length-1;h>-1;h--){o={},u=r[h],a=n.isObject(u)&&!n.isFunction(u)?2:n.isArray(u)?1:n.isString(u)?0:-1;if(a>0)for(p=t.length-1;p>-1;p--)f=t[p],l=n.isUndefined(f.key)?f:f.key,c=n.isUndefined(u[l])?u[p]:u[l],o[l]=e.DataSchema.Base.parse.call(this,c,f);else a===0?o=u:o=null;s[h]=o}return i.results=s,i}};e.DataSchema.Array=e.mix(r,e.DataSchema.Base)},"3.12.0",{requires:["dataschema-base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-array/dataschema-array.js b/lib/yuilib/3.12.0/dataschema-array/dataschema-array.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/dataschema-array/dataschema-array.js rename to lib/yuilib/3.12.0/dataschema-array/dataschema-array.js index d26663f9a7a..c22c671c3ea --- a/lib/yuilib/3.9.1/build/dataschema-array/dataschema-array.js +++ b/lib/yuilib/3.12.0/dataschema-array/dataschema-array.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dataschema-array', function (Y, NAME) { /** @@ -184,4 +190,4 @@ var LANG = Y.Lang, Y.DataSchema.Array = Y.mix(SchemaArray, Y.DataSchema.Base); -}, '3.9.1', {"requires": ["dataschema-base"]}); +}, '3.12.0', {"requires": ["dataschema-base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-base/dataschema-base-debug.js b/lib/yuilib/3.12.0/dataschema-base/dataschema-base-debug.js old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/dataschema-base/dataschema-base-debug.js rename to lib/yuilib/3.12.0/dataschema-base/dataschema-base-debug.js index 6ff63ccc899..381ec4dddc8 --- a/lib/yuilib/3.9.1/build/dataschema-base/dataschema-base-debug.js +++ b/lib/yuilib/3.12.0/dataschema-base/dataschema-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dataschema-base', function (Y, NAME) { /** @@ -65,4 +71,4 @@ Y.namespace("DataSchema").Base = SchemaBase; Y.namespace("Parsers"); -}, '3.9.1', {"requires": ["base"]}); +}, '3.12.0', {"requires": ["base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-base/dataschema-base-min.js b/lib/yuilib/3.12.0/dataschema-base/dataschema-base-min.js old mode 100644 new mode 100755 similarity index 57% rename from lib/yuilib/3.9.1/build/dataschema-base/dataschema-base-min.js rename to lib/yuilib/3.12.0/dataschema-base/dataschema-base-min.js index 2d4bfb427f3..9bb340352fe --- a/lib/yuilib/3.9.1/build/dataschema-base/dataschema-base-min.js +++ b/lib/yuilib/3.12.0/dataschema-base/dataschema-base-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dataschema-base",function(e,t){var n=e.Lang,r={apply:function(e,t){return t},parse:function(t,r){if(r.parser){var i=n.isFunction(r.parser)?r.parser:e.Parsers[r.parser+""];i&&(t=i.call(this,t))}return t}};e.namespace("DataSchema").Base=r,e.namespace("Parsers")},"3.9.1",{requires:["base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dataschema-base",function(e,t){var n=e.Lang,r={apply:function(e,t){return t},parse:function(t,r){if(r.parser){var i=n.isFunction(r.parser)?r.parser:e.Parsers[r.parser+""];i&&(t=i.call(this,t))}return t}};e.namespace("DataSchema").Base=r,e.namespace("Parsers")},"3.12.0",{requires:["base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-base/dataschema-base.js b/lib/yuilib/3.12.0/dataschema-base/dataschema-base.js old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/dataschema-base/dataschema-base.js rename to lib/yuilib/3.12.0/dataschema-base/dataschema-base.js index bb2b01bc335..bca167f910c --- a/lib/yuilib/3.9.1/build/dataschema-base/dataschema-base.js +++ b/lib/yuilib/3.12.0/dataschema-base/dataschema-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dataschema-base', function (Y, NAME) { /** @@ -64,4 +70,4 @@ Y.namespace("DataSchema").Base = SchemaBase; Y.namespace("Parsers"); -}, '3.9.1', {"requires": ["base"]}); +}, '3.12.0', {"requires": ["base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-json/dataschema-json-debug.js b/lib/yuilib/3.12.0/dataschema-json/dataschema-json-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/dataschema-json/dataschema-json-debug.js rename to lib/yuilib/3.12.0/dataschema-json/dataschema-json-debug.js index 583bdaf7cae..86b777676a5 --- a/lib/yuilib/3.9.1/build/dataschema-json/dataschema-json-debug.js +++ b/lib/yuilib/3.12.0/dataschema-json/dataschema-json-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dataschema-json', function (Y, NAME) { /** @@ -441,4 +447,4 @@ SchemaJSON = { Y.DataSchema.JSON = Y.mix(SchemaJSON, Base); -}, '3.9.1', {"requires": ["dataschema-base", "json"]}); +}, '3.12.0', {"requires": ["dataschema-base", "json"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-json/dataschema-json-min.js b/lib/yuilib/3.12.0/dataschema-json/dataschema-json-min.js old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/dataschema-json/dataschema-json-min.js rename to lib/yuilib/3.12.0/dataschema-json/dataschema-json-min.js index ac4bed5b6a4..62049abda07 --- a/lib/yuilib/3.9.1/build/dataschema-json/dataschema-json-min.js +++ b/lib/yuilib/3.12.0/dataschema-json/dataschema-json-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dataschema-json",function(e,t){var n=e.Lang,r=n.isFunction,i=n.isObject,s=n.isArray,o=e.DataSchema.Base,u;u={getPath:function(e){var t=null,n=[],r=0;if(e){e=e.replace(/\[\s*(['"])(.*?)\1\s*\]/g,function(e,t,i){return n[r]=i,".@"+r++}).replace(/\[(\d+)\]/g,function(e,t){return n[r]=parseInt(t,10)|0,".@"+r++}).replace(/^\./,""),t=e.split(".");for(r=t.length-1;r>=0;--r)t[r].charAt(0)==="@"&&(t[r]=n[parseInt(t[r].substr(1),10)])}return t},getLocationValue:function(e,t){var n=0,r=e.length;for(;n=0;--f){E={},w=n[f];if(w){for(l=y.length-1;l>=0;--l){d=y[l],m=u.getLocationValue(d.path,w);if(m===undefined){m=u.getLocationValue([d.locator],w);if(m!==undefined){g.push({key:d.key,path:d.locator}),y.splice(f,1);continue}}E[d.key]=o.parse.call(this,u.getLocationValue(d.path,w),d)}for(l=g.length-1;l>=0;--l)d=g[l],E[d.key]=o.parse.call(this,w[d.path]===undefined?w[l]:w[d.path],d);for(l=b.length-1;l>=0;--l)h=b[l].key,E[h]=b[l].parser.call(this,E[h]),E[h]===undefined&&(E[h]=null);s[f]=E}}return i.results=s,i},_parseMeta:function(e,t,n){if(i(e)){var r,s;for(r in e)e.hasOwnProperty(r)&&(s=u.getPath(e[r]),s&&t&&(n.meta[r]=u.getLocationValue(s,t)))}else n.error=new Error("JSON meta data retrieval failure");return n}},e.DataSchema.JSON=e.mix(u,o)},"3.9.1",{requires:["dataschema-base","json"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dataschema-json",function(e,t){var n=e.Lang,r=n.isFunction,i=n.isObject,s=n.isArray,o=e.DataSchema.Base,u;u={getPath:function(e){var t=null,n=[],r=0;if(e){e=e.replace(/\[\s*(['"])(.*?)\1\s*\]/g,function(e,t,i){return n[r]=i,".@"+r++}).replace(/\[(\d+)\]/g,function(e,t){return n[r]=parseInt(t,10)|0,".@"+r++}).replace(/^\./,""),t=e.split(".");for(r=t.length-1;r>=0;--r)t[r].charAt(0)==="@"&&(t[r]=n[parseInt(t[r].substr(1),10)])}return t},getLocationValue:function(e,t){var n=0,r=e.length;for(;n=0;--f){E={},w=n[f];if(w){for(l=y.length-1;l>=0;--l){d=y[l],m=u.getLocationValue(d.path,w);if(m===undefined){m=u.getLocationValue([d.locator],w);if(m!==undefined){g.push({key:d.key,path:d.locator}),y.splice(f,1);continue}}E[d.key]=o.parse.call(this,u.getLocationValue(d.path,w),d)}for(l=g.length-1;l>=0;--l)d=g[l],E[d.key]=o.parse.call(this,w[d.path]===undefined?w[l]:w[d.path],d);for(l=b.length-1;l>=0;--l)h=b[l].key,E[h]=b[l].parser.call(this,E[h]),E[h]===undefined&&(E[h]=null);s[f]=E}}return i.results=s,i},_parseMeta:function(e,t,n){if(i(e)){var r,s;for(r in e)e.hasOwnProperty(r)&&(s=u.getPath(e[r]),s&&t&&(n.meta[r]=u.getLocationValue(s,t)))}else n.error=new Error("JSON meta data retrieval failure");return n}},e.DataSchema.JSON=e.mix(u,o)},"3.12.0",{requires:["dataschema-base","json"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-json/dataschema-json.js b/lib/yuilib/3.12.0/dataschema-json/dataschema-json.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/dataschema-json/dataschema-json.js rename to lib/yuilib/3.12.0/dataschema-json/dataschema-json.js index 6a4bd1185a3..eb896d939ad --- a/lib/yuilib/3.9.1/build/dataschema-json/dataschema-json.js +++ b/lib/yuilib/3.12.0/dataschema-json/dataschema-json.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dataschema-json', function (Y, NAME) { /** @@ -437,4 +443,4 @@ SchemaJSON = { Y.DataSchema.JSON = Y.mix(SchemaJSON, Base); -}, '3.9.1', {"requires": ["dataschema-base", "json"]}); +}, '3.12.0', {"requires": ["dataschema-base", "json"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-text/dataschema-text-debug.js b/lib/yuilib/3.12.0/dataschema-text/dataschema-text-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/dataschema-text/dataschema-text-debug.js rename to lib/yuilib/3.12.0/dataschema-text/dataschema-text-debug.js index 29eac5ac7c0..3779fc0f791 --- a/lib/yuilib/3.9.1/build/dataschema-text/dataschema-text-debug.js +++ b/lib/yuilib/3.12.0/dataschema-text/dataschema-text-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dataschema-text', function (Y, NAME) { /** @@ -181,4 +187,4 @@ var Lang = Y.Lang, Y.DataSchema.Text = Y.mix(SchemaText, Y.DataSchema.Base); -}, '3.9.1', {"requires": ["dataschema-base"]}); +}, '3.12.0', {"requires": ["dataschema-base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-text/dataschema-text-min.js b/lib/yuilib/3.12.0/dataschema-text/dataschema-text-min.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/dataschema-text/dataschema-text-min.js rename to lib/yuilib/3.12.0/dataschema-text/dataschema-text-min.js index 0d36db42f2d..d0f9c32c17a --- a/lib/yuilib/3.9.1/build/dataschema-text/dataschema-text-min.js +++ b/lib/yuilib/3.12.0/dataschema-text/dataschema-text-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dataschema-text",function(e,t){var n=e.Lang,r=n.isString,i=n.isUndefined,s={apply:function(e,t){var n=t,i={results:[],meta:{}};return r(t)&&e&&r(e.resultDelimiter)?i=s._parseResults.call(this,e,n,i):i.error=new Error("Text schema parse failure"),i},_parseResults:function(t,n,s){var o=t.resultDelimiter,u=r(t.fieldDelimiter)&&t.fieldDelimiter,a=t.resultFields||[],f=[],l=e.DataSchema.Base.parse,c,h,p,d,v,m,g,y,b;n.slice(-o.length)===o&&(n=n.slice(0,-o.length)),c=n.split(t.resultDelimiter);if(u)for(y=c.length-1;y>=0;--y){p={},d=c[y],h=d.split(t.fieldDelimiter);for(b=a.length-1;b>=0;--b)v=a[b],m=i(v.key)?v:v.key,g=i(h[m])?h[b]:h[m],p[m]=l.call(this,g,v);f[y]=p}else f=c;return s.results=f,s}};e.DataSchema.Text=e.mix(s,e.DataSchema.Base)},"3.9.1",{requires:["dataschema-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dataschema-text",function(e,t){var n=e.Lang,r=n.isString,i=n.isUndefined,s={apply:function(e,t){var n=t,i={results:[],meta:{}};return r(t)&&e&&r(e.resultDelimiter)?i=s._parseResults.call(this,e,n,i):i.error=new Error("Text schema parse failure"),i},_parseResults:function(t,n,s){var o=t.resultDelimiter,u=r(t.fieldDelimiter)&&t.fieldDelimiter,a=t.resultFields||[],f=[],l=e.DataSchema.Base.parse,c,h,p,d,v,m,g,y,b;n.slice(-o.length)===o&&(n=n.slice(0,-o.length)),c=n.split(t.resultDelimiter);if(u)for(y=c.length-1;y>=0;--y){p={},d=c[y],h=d.split(t.fieldDelimiter);for(b=a.length-1;b>=0;--b)v=a[b],m=i(v.key)?v:v.key,g=i(h[m])?h[b]:h[m],p[m]=l.call(this,g,v);f[y]=p}else f=c;return s.results=f,s}};e.DataSchema.Text=e.mix(s,e.DataSchema.Base)},"3.12.0",{requires:["dataschema-base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-text/dataschema-text.js b/lib/yuilib/3.12.0/dataschema-text/dataschema-text.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/dataschema-text/dataschema-text.js rename to lib/yuilib/3.12.0/dataschema-text/dataschema-text.js index 4cfde750352..998897746f2 --- a/lib/yuilib/3.9.1/build/dataschema-text/dataschema-text.js +++ b/lib/yuilib/3.12.0/dataschema-text/dataschema-text.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dataschema-text', function (Y, NAME) { /** @@ -180,4 +186,4 @@ var Lang = Y.Lang, Y.DataSchema.Text = Y.mix(SchemaText, Y.DataSchema.Base); -}, '3.9.1', {"requires": ["dataschema-base"]}); +}, '3.12.0', {"requires": ["dataschema-base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-xml/dataschema-xml-debug.js b/lib/yuilib/3.12.0/dataschema-xml/dataschema-xml-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/dataschema-xml/dataschema-xml-debug.js rename to lib/yuilib/3.12.0/dataschema-xml/dataschema-xml-debug.js index c490ae005a4..61654474194 --- a/lib/yuilib/3.9.1/build/dataschema-xml/dataschema-xml-debug.js +++ b/lib/yuilib/3.12.0/dataschema-xml/dataschema-xml-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dataschema-xml', function (Y, NAME) { /** @@ -383,4 +389,4 @@ SchemaXML = { Y.DataSchema.XML = Y.mix(SchemaXML, Y.DataSchema.Base); -}, '3.9.1', {"requires": ["dataschema-base"]}); +}, '3.12.0', {"requires": ["dataschema-base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-xml/dataschema-xml-min.js b/lib/yuilib/3.12.0/dataschema-xml/dataschema-xml-min.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/dataschema-xml/dataschema-xml-min.js rename to lib/yuilib/3.12.0/dataschema-xml/dataschema-xml-min.js index ab7158ee72c..650bba6b041 --- a/lib/yuilib/3.9.1/build/dataschema-xml/dataschema-xml-min.js +++ b/lib/yuilib/3.12.0/dataschema-xml/dataschema-xml-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dataschema-xml",function(e,t){var n=e.Lang,r={1:!0,9:!0,11:!0},i;i={apply:function(e,t){var n=t,s={results:[],meta:{}};return n&&r[n.nodeType]&&e?(s=i._parseResults(e,n,s),s=i._parseMeta(e.metaFields,n,s)):s.error=new Error("XML schema parse failure"),s},_getLocationValue:function(t,n){var r=t.locator||t.key||t,s=n.ownerDocument||n,o,u,a=null;try{o=i._getXPathResult(r,n,s);while(u=o.iterateNext())a=u.textContent||u.value||u.text||u.innerHTML||u.innerText||null;return e.DataSchema.Base.parse.call(this,a,t)}catch(f){}return null},_getXPathResult:function(t,r,i){if(!n.isUndefined(i.evaluate))return i.evaluate(t,r,i.createNSResolver(r.ownerDocument?r.ownerDocument.documentElement:r.documentElement),0,null);var s=[],o=t.split(/\b\/\b/),u=0,a=o.length,f,l,c,h;try{try{i.setProperty("SelectionLanguage","XPath")}catch(p){}s=r.selectNodes(t)}catch(p){for(;u-1&&f.indexOf("]")>-1)l=f.slice(f.indexOf("[")+1,f.indexOf("]")),l--,r=r.children[l],h=!0;else if(f.indexOf("@")>-1)l=f.substr(f.indexOf("@")),r=l?r.getAttribute(l.replace("@","")):r;else if(-1=this.values.length)return undefined;var e=this.values[this.index];return this.index+=1,e},values:s}},_parseField:function(e,t,n){var r=e.key||e,s;e.schema?(s={results:[],meta:{}},s=i._parseResults(e.schema,n,s),t[r]=s.results):t[r]=i._getLocationValue(e,n)},_parseMeta:function(e,t,r){if(n.isObject(e)){var s,o=t.ownerDocument||t;for(s in e)e.hasOwnProperty(s)&&(r.meta[s]=i._getLocationValue(e[s],o))}return r},_parseResult:function(e,t){var n={},r;for(r=e.length-1;0<=r;r--)i._parseField(e[r],n,t);return n},_parseResults:function(e,t,r){if(e.resultListLocator&&n.isArray(e.resultFields)){var s=t.ownerDocument||t,o=e.resultFields,u=[],a,f,l=0;if(e.resultListLocator.match(/^[:\-\w]+$/)){f=t.getElementsByTagName(e.resultListLocator);for(l=f.length-1;l>=0;--l)u[l]=i._parseResult(o,f[l])}else{f=i._getXPathResult(e.resultListLocator,t,s);while(a=f.iterateNext())u[l]=i._parseResult(o,a),l+=1}u.length?r.results=u:r.error=new Error("XML schema result nodes retrieval failure")}return r}},e.DataSchema.XML=e.mix(i,e.DataSchema.Base)},"3.9.1",{requires:["dataschema-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dataschema-xml",function(e,t){var n=e.Lang,r={1:!0,9:!0,11:!0},i;i={apply:function(e,t){var n=t,s={results:[],meta:{}};return n&&r[n.nodeType]&&e?(s=i._parseResults(e,n,s),s=i._parseMeta(e.metaFields,n,s)):s.error=new Error("XML schema parse failure"),s},_getLocationValue:function(t,n){var r=t.locator||t.key||t,s=n.ownerDocument||n,o,u,a=null;try{o=i._getXPathResult(r,n,s);while(u=o.iterateNext())a=u.textContent||u.value||u.text||u.innerHTML||u.innerText||null;return e.DataSchema.Base.parse.call(this,a,t)}catch(f){}return null},_getXPathResult:function(t,r,i){if(!n.isUndefined(i.evaluate))return i.evaluate(t,r,i.createNSResolver(r.ownerDocument?r.ownerDocument.documentElement:r.documentElement),0,null);var s=[],o=t.split(/\b\/\b/),u=0,a=o.length,f,l,c,h;try{try{i.setProperty("SelectionLanguage","XPath")}catch(p){}s=r.selectNodes(t)}catch(p){for(;u-1&&f.indexOf("]")>-1)l=f.slice(f.indexOf("[")+1,f.indexOf("]")),l--,r=r.children[l],h=!0;else if(f.indexOf("@")>-1)l=f.substr(f.indexOf("@")),r=l?r.getAttribute(l.replace("@","")):r;else if(-1=this.values.length)return undefined;var e=this.values[this.index];return this.index+=1,e},values:s}},_parseField:function(e,t,n){var r=e.key||e,s;e.schema?(s={results:[],meta:{}},s=i._parseResults(e.schema,n,s),t[r]=s.results):t[r]=i._getLocationValue(e,n)},_parseMeta:function(e,t,r){if(n.isObject(e)){var s,o=t.ownerDocument||t;for(s in e)e.hasOwnProperty(s)&&(r.meta[s]=i._getLocationValue(e[s],o))}return r},_parseResult:function(e,t){var n={},r;for(r=e.length-1;0<=r;r--)i._parseField(e[r],n,t);return n},_parseResults:function(e,t,r){if(e.resultListLocator&&n.isArray(e.resultFields)){var s=t.ownerDocument||t,o=e.resultFields,u=[],a,f,l=0;if(e.resultListLocator.match(/^[:\-\w]+$/)){f=t.getElementsByTagName(e.resultListLocator);for(l=f.length-1;l>=0;--l)u[l]=i._parseResult(o,f[l])}else{f=i._getXPathResult(e.resultListLocator,t,s);while(a=f.iterateNext())u[l]=i._parseResult(o,a),l+=1}u.length?r.results=u:r.error=new Error("XML schema result nodes retrieval failure")}return r}},e.DataSchema.XML=e.mix(i,e.DataSchema.Base)},"3.12.0",{requires:["dataschema-base"]}); diff --git a/lib/yuilib/3.9.1/build/dataschema-xml/dataschema-xml.js b/lib/yuilib/3.12.0/dataschema-xml/dataschema-xml.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/dataschema-xml/dataschema-xml.js rename to lib/yuilib/3.12.0/dataschema-xml/dataschema-xml.js index 231770ab12c..f0186a77697 --- a/lib/yuilib/3.9.1/build/dataschema-xml/dataschema-xml.js +++ b/lib/yuilib/3.12.0/dataschema-xml/dataschema-xml.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dataschema-xml', function (Y, NAME) { /** @@ -381,4 +387,4 @@ SchemaXML = { Y.DataSchema.XML = Y.mix(SchemaXML, Y.DataSchema.Base); -}, '3.9.1', {"requires": ["dataschema-base"]}); +}, '3.12.0', {"requires": ["dataschema-base"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-arrayschema/datasource-arrayschema-debug.js b/lib/yuilib/3.12.0/datasource-arrayschema/datasource-arrayschema-debug.js old mode 100644 new mode 100755 similarity index 92% rename from lib/yuilib/3.9.1/build/datasource-arrayschema/datasource-arrayschema-debug.js rename to lib/yuilib/3.12.0/datasource-arrayschema/datasource-arrayschema-debug.js index a28d3672398..69e259886c9 --- a/lib/yuilib/3.9.1/build/datasource-arrayschema/datasource-arrayschema-debug.js +++ b/lib/yuilib/3.12.0/datasource-arrayschema/datasource-arrayschema-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-arrayschema', function (Y, NAME) { /** @@ -104,4 +110,4 @@ Y.extend(DataSourceArraySchema, Y.Plugin.Base, { Y.namespace('Plugin').DataSourceArraySchema = DataSourceArraySchema; -}, '3.9.1', {"requires": ["datasource-local", "plugin", "dataschema-array"]}); +}, '3.12.0', {"requires": ["datasource-local", "plugin", "dataschema-array"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-arrayschema/datasource-arrayschema-min.js b/lib/yuilib/3.12.0/datasource-arrayschema/datasource-arrayschema-min.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datasource-arrayschema/datasource-arrayschema-min.js rename to lib/yuilib/3.12.0/datasource-arrayschema/datasource-arrayschema-min.js index 6bb3fa28ca5..3cd4ee9acbf --- a/lib/yuilib/3.9.1/build/datasource-arrayschema/datasource-arrayschema-min.js +++ b/lib/yuilib/3.12.0/datasource-arrayschema/datasource-arrayschema-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datasource-arrayschema",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.mix(n,{NS:"schema",NAME:"dataSourceArraySchema",ATTRS:{schema:{}}}),e.extend(n,e.Plugin.Base,{initializer:function(e){this.doBefore("_defDataFn",this._beforeDefDataFn)},_beforeDefDataFn:function(t){var n=e.DataSource.IO&&this.get("host")instanceof e.DataSource.IO&&e.Lang.isString(t.data.responseText)?t.data.responseText:t.data,r=e.DataSchema.Array.apply.call(this,this.get("schema"),n),i=t.details[0];return r||(r={meta:{},results:n}),i.response=r,this.get("host").fire("response",i),new e.Do.Halt("DataSourceArraySchema plugin halted _defDataFn")}}),e.namespace("Plugin").DataSourceArraySchema=n},"3.9.1",{requires:["datasource-local","plugin","dataschema-array"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datasource-arrayschema",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.mix(n,{NS:"schema",NAME:"dataSourceArraySchema",ATTRS:{schema:{}}}),e.extend(n,e.Plugin.Base,{initializer:function(e){this.doBefore("_defDataFn",this._beforeDefDataFn)},_beforeDefDataFn:function(t){var n=e.DataSource.IO&&this.get("host")instanceof e.DataSource.IO&&e.Lang.isString(t.data.responseText)?t.data.responseText:t.data,r=e.DataSchema.Array.apply.call(this,this.get("schema"),n),i=t.details[0];return r||(r={meta:{},results:n}),i.response=r,this.get("host").fire("response",i),new e.Do.Halt("DataSourceArraySchema plugin halted _defDataFn")}}),e.namespace("Plugin").DataSourceArraySchema=n},"3.12.0",{requires:["datasource-local","plugin","dataschema-array"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-arrayschema/datasource-arrayschema.js b/lib/yuilib/3.12.0/datasource-arrayschema/datasource-arrayschema.js old mode 100644 new mode 100755 similarity index 92% rename from lib/yuilib/3.9.1/build/datasource-arrayschema/datasource-arrayschema.js rename to lib/yuilib/3.12.0/datasource-arrayschema/datasource-arrayschema.js index a28d3672398..69e259886c9 --- a/lib/yuilib/3.9.1/build/datasource-arrayschema/datasource-arrayschema.js +++ b/lib/yuilib/3.12.0/datasource-arrayschema/datasource-arrayschema.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-arrayschema', function (Y, NAME) { /** @@ -104,4 +110,4 @@ Y.extend(DataSourceArraySchema, Y.Plugin.Base, { Y.namespace('Plugin').DataSourceArraySchema = DataSourceArraySchema; -}, '3.9.1', {"requires": ["datasource-local", "plugin", "dataschema-array"]}); +}, '3.12.0', {"requires": ["datasource-local", "plugin", "dataschema-array"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-cache/datasource-cache-debug.js b/lib/yuilib/3.12.0/datasource-cache/datasource-cache-debug.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/datasource-cache/datasource-cache-debug.js rename to lib/yuilib/3.12.0/datasource-cache/datasource-cache-debug.js index 1161573a529..7b865eb7560 --- a/lib/yuilib/3.9.1/build/datasource-cache/datasource-cache-debug.js +++ b/lib/yuilib/3.12.0/datasource-cache/datasource-cache-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-cache', function (Y, NAME) { /** @@ -164,4 +170,4 @@ Y.mix(DataSourceCache, { Y.namespace("Plugin").DataSourceCache = DataSourceCache; -}, '3.9.1', {"requires": ["datasource-local", "plugin", "cache-base"]}); +}, '3.12.0', {"requires": ["datasource-local", "plugin", "cache-base"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-cache/datasource-cache-min.js b/lib/yuilib/3.12.0/datasource-cache/datasource-cache-min.js old mode 100644 new mode 100755 similarity index 79% rename from lib/yuilib/3.9.1/build/datasource-cache/datasource-cache-min.js rename to lib/yuilib/3.12.0/datasource-cache/datasource-cache-min.js index c243bd30aa7..2f67306fcac --- a/lib/yuilib/3.9.1/build/datasource-cache/datasource-cache-min.js +++ b/lib/yuilib/3.12.0/datasource-cache/datasource-cache-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datasource-cache",function(e,t){function r(t){var n=t&&t.cache?t.cache:e.Cache,r=e.Base.create("dataSourceCache",n,[e.Plugin.Base,e.Plugin.DataSourceCacheExtension]),i=new r(t);return r.NS="tmpClass",i}var n=function(){};e.mix(n,{NS:"cache",NAME:"dataSourceCacheExtension"}),n.prototype={initializer:function(e){this.doBefore("_defRequestFn",this._beforeDefRequestFn),this.doBefore("_defResponseFn",this._beforeDefResponseFn)},_beforeDefRequestFn:function(t){var n=this.retrieve(t.request)||null,r=t.details[0];if(n&&n.response)return r.cached=n.cached,r.response=n.response,r.data=n.data,this.get("host").fire("response",r),new e.Do.Halt("DataSourceCache extension halted _defRequestFn")},_beforeDefResponseFn:function(e){e.response&&!e.cached&&this.add(e.request,e.response)}},e.namespace("Plugin").DataSourceCacheExtension=n,e.mix(r,{NS:"cache",NAME:"dataSourceCache"}),e.namespace("Plugin").DataSourceCache=r},"3.9.1",{requires:["datasource-local","plugin","cache-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datasource-cache",function(e,t){function r(t){var n=t&&t.cache?t.cache:e.Cache,r=e.Base.create("dataSourceCache",n,[e.Plugin.Base,e.Plugin.DataSourceCacheExtension]),i=new r(t);return r.NS="tmpClass",i}var n=function(){};e.mix(n,{NS:"cache",NAME:"dataSourceCacheExtension"}),n.prototype={initializer:function(e){this.doBefore("_defRequestFn",this._beforeDefRequestFn),this.doBefore("_defResponseFn",this._beforeDefResponseFn)},_beforeDefRequestFn:function(t){var n=this.retrieve(t.request)||null,r=t.details[0];if(n&&n.response)return r.cached=n.cached,r.response=n.response,r.data=n.data,this.get("host").fire("response",r),new e.Do.Halt("DataSourceCache extension halted _defRequestFn")},_beforeDefResponseFn:function(e){e.response&&!e.cached&&this.add(e.request,e.response)}},e.namespace("Plugin").DataSourceCacheExtension=n,e.mix(r,{NS:"cache",NAME:"dataSourceCache"}),e.namespace("Plugin").DataSourceCache=r},"3.12.0",{requires:["datasource-local","plugin","cache-base"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-cache/datasource-cache.js b/lib/yuilib/3.12.0/datasource-cache/datasource-cache.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/datasource-cache/datasource-cache.js rename to lib/yuilib/3.12.0/datasource-cache/datasource-cache.js index 1161573a529..7b865eb7560 --- a/lib/yuilib/3.9.1/build/datasource-cache/datasource-cache.js +++ b/lib/yuilib/3.12.0/datasource-cache/datasource-cache.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-cache', function (Y, NAME) { /** @@ -164,4 +170,4 @@ Y.mix(DataSourceCache, { Y.namespace("Plugin").DataSourceCache = DataSourceCache; -}, '3.9.1', {"requires": ["datasource-local", "plugin", "cache-base"]}); +}, '3.12.0', {"requires": ["datasource-local", "plugin", "cache-base"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-function/datasource-function-debug.js b/lib/yuilib/3.12.0/datasource-function/datasource-function-debug.js old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/datasource-function/datasource-function-debug.js rename to lib/yuilib/3.12.0/datasource-function/datasource-function-debug.js index 283a417210a..7289ec56aa4 --- a/lib/yuilib/3.9.1/build/datasource-function/datasource-function-debug.js +++ b/lib/yuilib/3.12.0/datasource-function/datasource-function-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-function', function (Y, NAME) { /** @@ -106,4 +112,4 @@ Y.extend(DSFn, Y.DataSource.Local, { Y.DataSource.Function = DSFn; -}, '3.9.1', {"requires": ["datasource-local"]}); +}, '3.12.0', {"requires": ["datasource-local"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-function/datasource-function-min.js b/lib/yuilib/3.12.0/datasource-function/datasource-function-min.js old mode 100644 new mode 100755 similarity index 69% rename from lib/yuilib/3.9.1/build/datasource-function/datasource-function-min.js rename to lib/yuilib/3.12.0/datasource-function/datasource-function-min.js index 7cdda539263..6157b1b2cba --- a/lib/yuilib/3.9.1/build/datasource-function/datasource-function-min.js +++ b/lib/yuilib/3.12.0/datasource-function/datasource-function-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datasource-function",function(e,t){var n=e.Lang,r=function(){r.superclass.constructor.apply(this,arguments)};e.mix(r,{NAME:"dataSourceFunction",ATTRS:{source:{validator:n.isFunction}}}),e.extend(r,e.DataSource.Local,{_defRequestFn:function(e){var t=this.get("source"),n=e.details[0];if(t)try{n.data=t(e.request,this,e)}catch(r){n.error=r}else n.error=new Error("Function data failure");return this.fire("data",n),e.tId}}),e.DataSource.Function=r},"3.9.1",{requires:["datasource-local"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datasource-function",function(e,t){var n=e.Lang,r=function(){r.superclass.constructor.apply(this,arguments)};e.mix(r,{NAME:"dataSourceFunction",ATTRS:{source:{validator:n.isFunction}}}),e.extend(r,e.DataSource.Local,{_defRequestFn:function(e){var t=this.get("source"),n=e.details[0];if(t)try{n.data=t(e.request,this,e)}catch(r){n.error=r}else n.error=new Error("Function data failure");return this.fire("data",n),e.tId}}),e.DataSource.Function=r},"3.12.0",{requires:["datasource-local"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-function/datasource-function.js b/lib/yuilib/3.12.0/datasource-function/datasource-function.js old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/datasource-function/datasource-function.js rename to lib/yuilib/3.12.0/datasource-function/datasource-function.js index 9801e9e1325..c89b5d2e0a2 --- a/lib/yuilib/3.9.1/build/datasource-function/datasource-function.js +++ b/lib/yuilib/3.12.0/datasource-function/datasource-function.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-function', function (Y, NAME) { /** @@ -104,4 +110,4 @@ Y.extend(DSFn, Y.DataSource.Local, { Y.DataSource.Function = DSFn; -}, '3.9.1', {"requires": ["datasource-local"]}); +}, '3.12.0', {"requires": ["datasource-local"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-get/datasource-get-debug.js b/lib/yuilib/3.12.0/datasource-get/datasource-get-debug.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/datasource-get/datasource-get-debug.js rename to lib/yuilib/3.12.0/datasource-get/datasource-get-debug.js index f1b0f1b63d8..b1b909e577a --- a/lib/yuilib/3.9.1/build/datasource-get/datasource-get-debug.js +++ b/lib/yuilib/3.12.0/datasource-get/datasource-get-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-get', function (Y, NAME) { /** @@ -211,4 +217,4 @@ Y.DataSource.Get = Y.extend(DSGet, Y.DataSource.Local, { YUI.namespace("Env.DataSource.callbacks"); -}, '3.9.1', {"requires": ["datasource-local", "get"]}); +}, '3.12.0', {"requires": ["datasource-local", "get"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-get/datasource-get-min.js b/lib/yuilib/3.12.0/datasource-get/datasource-get-min.js old mode 100644 new mode 100755 similarity index 84% rename from lib/yuilib/3.9.1/build/datasource-get/datasource-get-min.js rename to lib/yuilib/3.12.0/datasource-get/datasource-get-min.js index bd6eb10cbeb..90661f582ab --- a/lib/yuilib/3.9.1/build/datasource-get/datasource-get-min.js +++ b/lib/yuilib/3.12.0/datasource-get/datasource-get-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datasource-get",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.DataSource.Get=e.extend(n,e.DataSource.Local,{_defRequestFn:function(t){var n=this.get("source"),r=this.get("get"),i=e.guid().replace(/\-/g,"_"),s=this.get("generateRequestCallback"),o=t.details[0],u=this;return this._last=i,YUI.Env.DataSource.callbacks[i]=function(n){delete YUI.Env.DataSource.callbacks[i],delete e.DataSource.Local.transactions[t.tId];var r=u.get("asyncMode")!=="ignoreStaleResponses"||u._last===i;r&&(o.data=n,u.fire("data",o))},n+=t.request+s.call(this,i),e.DataSource.Local.transactions[t.tId]=r.script(n,{autopurge:!0,onFailure:function(n){delete YUI.Env.DataSource.callbacks[i],delete e.DataSource.Local.transactions[t.tId],o.error=new Error(n.msg||"Script node data failure"),u.fire("data",o)},onTimeout:function(n){delete YUI.Env.DataSource.callbacks[i],delete e.DataSource.Local.transactions[t.tId],o.error=new Error(n.msg||"Script node data timeout"),u.fire("data",o)}}),t.tId},_generateRequest:function(e){return"&"+this.get("scriptCallbackParam")+"=YUI.Env.DataSource.callbacks."+e}},{NAME:"dataSourceGet",ATTRS:{get:{value:e.Get,cloneDefaultValue:!1},asyncMode:{value:"allowAll"},scriptCallbackParam:{value:"callback"},generateRequestCallback:{value:function(){return this._generateRequest.apply(this,arguments)}}}}),YUI.namespace("Env.DataSource.callbacks")},"3.9.1",{requires:["datasource-local","get"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datasource-get",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.DataSource.Get=e.extend(n,e.DataSource.Local,{_defRequestFn:function(t){var n=this.get("source"),r=this.get("get"),i=e.guid().replace(/\-/g,"_"),s=this.get("generateRequestCallback"),o=t.details[0],u=this;return this._last=i,YUI.Env.DataSource.callbacks[i]=function(n){delete YUI.Env.DataSource.callbacks[i],delete e.DataSource.Local.transactions[t.tId];var r=u.get("asyncMode")!=="ignoreStaleResponses"||u._last===i;r&&(o.data=n,u.fire("data",o))},n+=t.request+s.call(this,i),e.DataSource.Local.transactions[t.tId]=r.script(n,{autopurge:!0,onFailure:function(n){delete YUI.Env.DataSource.callbacks[i],delete e.DataSource.Local.transactions[t.tId],o.error=new Error(n.msg||"Script node data failure"),u.fire("data",o)},onTimeout:function(n){delete YUI.Env.DataSource.callbacks[i],delete e.DataSource.Local.transactions[t.tId],o.error=new Error(n.msg||"Script node data timeout"),u.fire("data",o)}}),t.tId},_generateRequest:function(e){return"&"+this.get("scriptCallbackParam")+"=YUI.Env.DataSource.callbacks."+e}},{NAME:"dataSourceGet",ATTRS:{get:{value:e.Get,cloneDefaultValue:!1},asyncMode:{value:"allowAll"},scriptCallbackParam:{value:"callback"},generateRequestCallback:{value:function(){return this._generateRequest.apply(this,arguments)}}}}),YUI.namespace("Env.DataSource.callbacks")},"3.12.0",{requires:["datasource-local","get"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-get/datasource-get.js b/lib/yuilib/3.12.0/datasource-get/datasource-get.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/datasource-get/datasource-get.js rename to lib/yuilib/3.12.0/datasource-get/datasource-get.js index dd9269b4ef0..6927d320e7e --- a/lib/yuilib/3.9.1/build/datasource-get/datasource-get.js +++ b/lib/yuilib/3.12.0/datasource-get/datasource-get.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-get', function (Y, NAME) { /** @@ -207,4 +213,4 @@ Y.DataSource.Get = Y.extend(DSGet, Y.DataSource.Local, { YUI.namespace("Env.DataSource.callbacks"); -}, '3.9.1', {"requires": ["datasource-local", "get"]}); +}, '3.12.0', {"requires": ["datasource-local", "get"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-io/datasource-io-debug.js b/lib/yuilib/3.12.0/datasource-io/datasource-io-debug.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/datasource-io/datasource-io-debug.js rename to lib/yuilib/3.12.0/datasource-io/datasource-io-debug.js index b1bcdeb5cb1..dae5aea3ad4 --- a/lib/yuilib/3.9.1/build/datasource-io/datasource-io-debug.js +++ b/lib/yuilib/3.12.0/datasource-io/datasource-io-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-io', function (Y, NAME) { /** @@ -202,4 +208,4 @@ Y.extend(DSIO, Y.DataSource.Local, { Y.DataSource.IO = DSIO; -}, '3.9.1', {"requires": ["datasource-local", "io-base"]}); +}, '3.12.0', {"requires": ["datasource-local", "io-base"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-io/datasource-io-min.js b/lib/yuilib/3.12.0/datasource-io/datasource-io-min.js old mode 100644 new mode 100755 similarity index 83% rename from lib/yuilib/3.9.1/build/datasource-io/datasource-io-min.js rename to lib/yuilib/3.12.0/datasource-io/datasource-io-min.js index 36a3373b2dd..953d8f1a054 --- a/lib/yuilib/3.9.1/build/datasource-io/datasource-io-min.js +++ b/lib/yuilib/3.12.0/datasource-io/datasource-io-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datasource-io",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.mix(n,{NAME:"dataSourceIO",ATTRS:{io:{value:e.io,cloneDefaultValue:!1},ioConfig:{value:null}}}),e.extend(n,e.DataSource.Local,{initializer:function(e){this._queue={interval:null,conn:null,requests:[]}},successHandler:function(t,n,r){var i=this.get("ioConfig"),s=r.details[0];delete e.DataSource.Local.transactions[r.tId],s.data=n,this.fire("data",s),i&&i.on&&i.on.success&&i.on.success.apply(i.context||e,arguments)},failureHandler:function(t,n,r){var i=this.get("ioConfig"),s=r.details[0];delete e.DataSource.Local.transactions[r.tId],s.error=new Error("IO data failure"),s.data=n,this.fire("data",s),i&&i.on&&i.on.failure&&i.on.failure.apply(i.context||e,arguments)},_queue:null,_defRequestFn:function(t){var n=this.get("source"),r=this.get("io"),i=this.get("ioConfig"),s=t.request,o=e.merge(i,t.cfg,{on:e.merge(i,{success:this.successHandler,failure:this.failureHandler}),context:this,arguments:t});return e.Lang.isString(s)&&(o.method&&o.method.toUpperCase()==="POST"?o.data=o.data?o.data+s:s:n+=s),e.DataSource.Local.transactions[t.tId]=r(n,o),t.tId}}),e.DataSource.IO=n},"3.9.1",{requires:["datasource-local","io-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datasource-io",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.mix(n,{NAME:"dataSourceIO",ATTRS:{io:{value:e.io,cloneDefaultValue:!1},ioConfig:{value:null}}}),e.extend(n,e.DataSource.Local,{initializer:function(e){this._queue={interval:null,conn:null,requests:[]}},successHandler:function(t,n,r){var i=this.get("ioConfig"),s=r.details[0];delete e.DataSource.Local.transactions[r.tId],s.data=n,this.fire("data",s),i&&i.on&&i.on.success&&i.on.success.apply(i.context||e,arguments)},failureHandler:function(t,n,r){var i=this.get("ioConfig"),s=r.details[0];delete e.DataSource.Local.transactions[r.tId],s.error=new Error("IO data failure"),s.data=n,this.fire("data",s),i&&i.on&&i.on.failure&&i.on.failure.apply(i.context||e,arguments)},_queue:null,_defRequestFn:function(t){var n=this.get("source"),r=this.get("io"),i=this.get("ioConfig"),s=t.request,o=e.merge(i,t.cfg,{on:e.merge(i,{success:this.successHandler,failure:this.failureHandler}),context:this,arguments:t});return e.Lang.isString(s)&&(o.method&&o.method.toUpperCase()==="POST"?o.data=o.data?o.data+s:s:n+=s),e.DataSource.Local.transactions[t.tId]=r(n,o),t.tId}}),e.DataSource.IO=n},"3.12.0",{requires:["datasource-local","io-base"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-io/datasource-io.js b/lib/yuilib/3.12.0/datasource-io/datasource-io.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/datasource-io/datasource-io.js rename to lib/yuilib/3.12.0/datasource-io/datasource-io.js index b1062092638..f864191d80f --- a/lib/yuilib/3.9.1/build/datasource-io/datasource-io.js +++ b/lib/yuilib/3.12.0/datasource-io/datasource-io.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-io', function (Y, NAME) { /** @@ -199,4 +205,4 @@ Y.extend(DSIO, Y.DataSource.Local, { Y.DataSource.IO = DSIO; -}, '3.9.1', {"requires": ["datasource-local", "io-base"]}); +}, '3.12.0', {"requires": ["datasource-local", "io-base"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-jsonschema/datasource-jsonschema-debug.js b/lib/yuilib/3.12.0/datasource-jsonschema/datasource-jsonschema-debug.js old mode 100644 new mode 100755 similarity index 92% rename from lib/yuilib/3.9.1/build/datasource-jsonschema/datasource-jsonschema-debug.js rename to lib/yuilib/3.12.0/datasource-jsonschema/datasource-jsonschema-debug.js index 45e481db733..fba492e2b13 --- a/lib/yuilib/3.9.1/build/datasource-jsonschema/datasource-jsonschema-debug.js +++ b/lib/yuilib/3.12.0/datasource-jsonschema/datasource-jsonschema-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-jsonschema', function (Y, NAME) { /** @@ -101,4 +107,4 @@ Y.extend(DataSourceJSONSchema, Y.Plugin.Base, { Y.namespace('Plugin').DataSourceJSONSchema = DataSourceJSONSchema; -}, '3.9.1', {"requires": ["datasource-local", "plugin", "dataschema-json"]}); +}, '3.12.0', {"requires": ["datasource-local", "plugin", "dataschema-json"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-jsonschema/datasource-jsonschema-min.js b/lib/yuilib/3.12.0/datasource-jsonschema/datasource-jsonschema-min.js old mode 100644 new mode 100755 similarity index 69% rename from lib/yuilib/3.9.1/build/datasource-jsonschema/datasource-jsonschema-min.js rename to lib/yuilib/3.12.0/datasource-jsonschema/datasource-jsonschema-min.js index 64b0a2ad12e..baf89f70308 --- a/lib/yuilib/3.9.1/build/datasource-jsonschema/datasource-jsonschema-min.js +++ b/lib/yuilib/3.12.0/datasource-jsonschema/datasource-jsonschema-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datasource-jsonschema",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.mix(n,{NS:"schema",NAME:"dataSourceJSONSchema",ATTRS:{schema:{}}}),e.extend(n,e.Plugin.Base,{initializer:function(e){this.doBefore("_defDataFn",this._beforeDefDataFn)},_beforeDefDataFn:function(t){var n=t.data&&(t.data.responseText||t.data),r=this.get("schema"),i=t.details[0];return i.response=e.DataSchema.JSON.apply.call(this,r,n)||{meta:{},results:n},this.get("host").fire("response",i),new e.Do.Halt("DataSourceJSONSchema plugin halted _defDataFn")}}),e.namespace("Plugin").DataSourceJSONSchema=n},"3.9.1",{requires:["datasource-local","plugin","dataschema-json"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datasource-jsonschema",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.mix(n,{NS:"schema",NAME:"dataSourceJSONSchema",ATTRS:{schema:{}}}),e.extend(n,e.Plugin.Base,{initializer:function(e){this.doBefore("_defDataFn",this._beforeDefDataFn)},_beforeDefDataFn:function(t){var n=t.data&&(t.data.responseText||t.data),r=this.get("schema"),i=t.details[0];return i.response=e.DataSchema.JSON.apply.call(this,r,n)||{meta:{},results:n},this.get("host").fire("response",i),new e.Do.Halt("DataSourceJSONSchema plugin halted _defDataFn")}}),e.namespace("Plugin").DataSourceJSONSchema=n},"3.12.0",{requires:["datasource-local","plugin","dataschema-json"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-jsonschema/datasource-jsonschema.js b/lib/yuilib/3.12.0/datasource-jsonschema/datasource-jsonschema.js old mode 100644 new mode 100755 similarity index 92% rename from lib/yuilib/3.9.1/build/datasource-jsonschema/datasource-jsonschema.js rename to lib/yuilib/3.12.0/datasource-jsonschema/datasource-jsonschema.js index 45e481db733..fba492e2b13 --- a/lib/yuilib/3.9.1/build/datasource-jsonschema/datasource-jsonschema.js +++ b/lib/yuilib/3.12.0/datasource-jsonschema/datasource-jsonschema.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-jsonschema', function (Y, NAME) { /** @@ -101,4 +107,4 @@ Y.extend(DataSourceJSONSchema, Y.Plugin.Base, { Y.namespace('Plugin').DataSourceJSONSchema = DataSourceJSONSchema; -}, '3.9.1', {"requires": ["datasource-local", "plugin", "dataschema-json"]}); +}, '3.12.0', {"requires": ["datasource-local", "plugin", "dataschema-json"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-local/datasource-local-debug.js b/lib/yuilib/3.12.0/datasource-local/datasource-local-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/datasource-local/datasource-local-debug.js rename to lib/yuilib/3.12.0/datasource-local/datasource-local-debug.js index 15a1a33665f..2c24f2972cc --- a/lib/yuilib/3.9.1/build/datasource-local/datasource-local-debug.js +++ b/lib/yuilib/3.12.0/datasource-local/datasource-local-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-local', function (Y, NAME) { /** @@ -400,4 +406,4 @@ Y.extend(DSLocal, Y.Base, { Y.namespace("DataSource").Local = DSLocal; -}, '3.9.1', {"requires": ["base"]}); +}, '3.12.0', {"requires": ["base"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-local/datasource-local-min.js b/lib/yuilib/3.12.0/datasource-local/datasource-local-min.js old mode 100644 new mode 100755 similarity index 86% rename from lib/yuilib/3.9.1/build/datasource-local/datasource-local-min.js rename to lib/yuilib/3.12.0/datasource-local/datasource-local-min.js index f436f1bd7b3..cb4f5aa5152 --- a/lib/yuilib/3.9.1/build/datasource-local/datasource-local-min.js +++ b/lib/yuilib/3.12.0/datasource-local/datasource-local-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datasource-local",function(e,t){var n=e.Lang,r=function(){r.superclass.constructor.apply(this,arguments)};e.mix(r,{NAME:"dataSourceLocal",ATTRS:{source:{value:null}},_tId:0,transactions:{},issueCallback:function(e,t){var n=e.on||e.callback,r=n&&n.success,i=e.details[0];i.error=e.error||e.response.error,i.error&&(t.fire("error",i),r=n&&n.failure),r&&r(i)}}),e.extend(r,e.Base,{initializer:function(e){this._initEvents()},_initEvents:function(){this.publish("request",{defaultFn:e.bind("_defRequestFn",this),queuable:!0}),this.publish("data",{defaultFn:e.bind("_defDataFn",this),queuable:!0}),this.publish("response",{defaultFn:e.bind("_defResponseFn",this),queuable:!0})},_defRequestFn:function(e){var t=this.get("source"),r=e.details[0];n.isUndefined(t)&&(r.error=new Error("Local source undefined")),r.data=t,this.fire("data",r)},_defDataFn:function(e){var t=e.data,r=e.meta,i={results:n.isArray(t)?t:[t],meta:r?r:{}},s=e.details[0];s.response=i,this.fire("response",s)},_defResponseFn:function(e){r.issueCallback(e,this)},sendRequest:function(e){var t=r._tId++,n;return e=e||{},n=e.on||e.callback,this.fire("request",{tId:t,request:e.request,on:n,callback:n,cfg:e.cfg||{}}),t}}),e.namespace("DataSource").Local=r},"3.9.1",{requires:["base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datasource-local",function(e,t){var n=e.Lang,r=function(){r.superclass.constructor.apply(this,arguments)};e.mix(r,{NAME:"dataSourceLocal",ATTRS:{source:{value:null}},_tId:0,transactions:{},issueCallback:function(e,t){var n=e.on||e.callback,r=n&&n.success,i=e.details[0];i.error=e.error||e.response.error,i.error&&(t.fire("error",i),r=n&&n.failure),r&&r(i)}}),e.extend(r,e.Base,{initializer:function(e){this._initEvents()},_initEvents:function(){this.publish("request",{defaultFn:e.bind("_defRequestFn",this),queuable:!0}),this.publish("data",{defaultFn:e.bind("_defDataFn",this),queuable:!0}),this.publish("response",{defaultFn:e.bind("_defResponseFn",this),queuable:!0})},_defRequestFn:function(e){var t=this.get("source"),r=e.details[0];n.isUndefined(t)&&(r.error=new Error("Local source undefined")),r.data=t,this.fire("data",r)},_defDataFn:function(e){var t=e.data,r=e.meta,i={results:n.isArray(t)?t:[t],meta:r?r:{}},s=e.details[0];s.response=i,this.fire("response",s)},_defResponseFn:function(e){r.issueCallback(e,this)},sendRequest:function(e){var t=r._tId++,n;return e=e||{},n=e.on||e.callback,this.fire("request",{tId:t,request:e.request,on:n,callback:n,cfg:e.cfg||{}}),t}}),e.namespace("DataSource").Local=r},"3.12.0",{requires:["base"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-local/datasource-local.js b/lib/yuilib/3.12.0/datasource-local/datasource-local.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/datasource-local/datasource-local.js rename to lib/yuilib/3.12.0/datasource-local/datasource-local.js index 9ebde9c8df3..fbd6d3475ec --- a/lib/yuilib/3.9.1/build/datasource-local/datasource-local.js +++ b/lib/yuilib/3.12.0/datasource-local/datasource-local.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-local', function (Y, NAME) { /** @@ -396,4 +402,4 @@ Y.extend(DSLocal, Y.Base, { Y.namespace("DataSource").Local = DSLocal; -}, '3.9.1', {"requires": ["base"]}); +}, '3.12.0', {"requires": ["base"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-polling/datasource-polling-debug.js b/lib/yuilib/3.12.0/datasource-polling/datasource-polling-debug.js old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/datasource-polling/datasource-polling-debug.js rename to lib/yuilib/3.12.0/datasource-polling/datasource-polling-debug.js index 909fc1efc82..c41200e69ef --- a/lib/yuilib/3.9.1/build/datasource-polling/datasource-polling-debug.js +++ b/lib/yuilib/3.12.0/datasource-polling/datasource-polling-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-polling', function (Y, NAME) { /** @@ -91,4 +97,4 @@ Pollable.prototype = { Y.augment(Y.DataSource.Local, Pollable); -}, '3.9.1', {"requires": ["datasource-local"]}); +}, '3.12.0', {"requires": ["datasource-local"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-polling/datasource-polling-min.js b/lib/yuilib/3.12.0/datasource-polling/datasource-polling-min.js old mode 100644 new mode 100755 similarity index 67% rename from lib/yuilib/3.9.1/build/datasource-polling/datasource-polling-min.js rename to lib/yuilib/3.12.0/datasource-polling/datasource-polling-min.js index f2a61e55711..1a3e5446fc0 --- a/lib/yuilib/3.9.1/build/datasource-polling/datasource-polling-min.js +++ b/lib/yuilib/3.12.0/datasource-polling/datasource-polling-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datasource-polling",function(e,t){function n(){this._intervals={}}n.prototype={_intervals:null,setInterval:function(t,n){var r=e.later(t,this,this.sendRequest,[n],!0);return this._intervals[r.id]=r,e.later(0,this,this.sendRequest,[n]),r.id},clearInterval:function(e,t){e=t||e,this._intervals[e]&&(this._intervals[e].cancel(),delete this._intervals[e])},clearAllIntervals:function(){e.each(this._intervals,this.clearInterval,this)}},e.augment(e.DataSource.Local,n)},"3.9.1",{requires:["datasource-local"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datasource-polling",function(e,t){function n(){this._intervals={}}n.prototype={_intervals:null,setInterval:function(t,n){var r=e.later(t,this,this.sendRequest,[n],!0);return this._intervals[r.id]=r,e.later(0,this,this.sendRequest,[n]),r.id},clearInterval:function(e,t){e=t||e,this._intervals[e]&&(this._intervals[e].cancel(),delete this._intervals[e])},clearAllIntervals:function(){e.each(this._intervals,this.clearInterval,this)}},e.augment(e.DataSource.Local,n)},"3.12.0",{requires:["datasource-local"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-polling/datasource-polling.js b/lib/yuilib/3.12.0/datasource-polling/datasource-polling.js old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/datasource-polling/datasource-polling.js rename to lib/yuilib/3.12.0/datasource-polling/datasource-polling.js index 909fc1efc82..c41200e69ef --- a/lib/yuilib/3.9.1/build/datasource-polling/datasource-polling.js +++ b/lib/yuilib/3.12.0/datasource-polling/datasource-polling.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-polling', function (Y, NAME) { /** @@ -91,4 +97,4 @@ Pollable.prototype = { Y.augment(Y.DataSource.Local, Pollable); -}, '3.9.1', {"requires": ["datasource-local"]}); +}, '3.12.0', {"requires": ["datasource-local"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-textschema/datasource-textschema-debug.js b/lib/yuilib/3.12.0/datasource-textschema/datasource-textschema-debug.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/datasource-textschema/datasource-textschema-debug.js rename to lib/yuilib/3.12.0/datasource-textschema/datasource-textschema-debug.js index 69ed4b2eb19..06fd1d7109a --- a/lib/yuilib/3.9.1/build/datasource-textschema/datasource-textschema-debug.js +++ b/lib/yuilib/3.12.0/datasource-textschema/datasource-textschema-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-textschema', function (Y, NAME) { /** @@ -100,4 +106,4 @@ Y.extend(DataSourceTextSchema, Y.Plugin.Base, { Y.namespace('Plugin').DataSourceTextSchema = DataSourceTextSchema; -}, '3.9.1', {"requires": ["datasource-local", "plugin", "dataschema-text"]}); +}, '3.12.0', {"requires": ["datasource-local", "plugin", "dataschema-text"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-textschema/datasource-textschema-min.js b/lib/yuilib/3.12.0/datasource-textschema/datasource-textschema-min.js old mode 100644 new mode 100755 similarity index 70% rename from lib/yuilib/3.9.1/build/datasource-textschema/datasource-textschema-min.js rename to lib/yuilib/3.12.0/datasource-textschema/datasource-textschema-min.js index 86c9aa0248b..34b32f57fd4 --- a/lib/yuilib/3.9.1/build/datasource-textschema/datasource-textschema-min.js +++ b/lib/yuilib/3.12.0/datasource-textschema/datasource-textschema-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datasource-textschema",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.mix(n,{NS:"schema",NAME:"dataSourceTextSchema",ATTRS:{schema:{}}}),e.extend(n,e.Plugin.Base,{initializer:function(e){this.doBefore("_defDataFn",this._beforeDefDataFn)},_beforeDefDataFn:function(t){var n=this.get("schema"),r=t.details[0],i=t.data.responseText||t.data;return r.response=e.DataSchema.Text.apply.call(this,n,i)||{meta:{},results:i},this.get("host").fire("response",r),new e.Do.Halt("DataSourceTextSchema plugin halted _defDataFn")}}),e.namespace("Plugin").DataSourceTextSchema=n},"3.9.1",{requires:["datasource-local","plugin","dataschema-text"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datasource-textschema",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.mix(n,{NS:"schema",NAME:"dataSourceTextSchema",ATTRS:{schema:{}}}),e.extend(n,e.Plugin.Base,{initializer:function(e){this.doBefore("_defDataFn",this._beforeDefDataFn)},_beforeDefDataFn:function(t){var n=this.get("schema"),r=t.details[0],i=t.data.responseText||t.data;return r.response=e.DataSchema.Text.apply.call(this,n,i)||{meta:{},results:i},this.get("host").fire("response",r),new e.Do.Halt("DataSourceTextSchema plugin halted _defDataFn")}}),e.namespace("Plugin").DataSourceTextSchema=n},"3.12.0",{requires:["datasource-local","plugin","dataschema-text"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-textschema/datasource-textschema.js b/lib/yuilib/3.12.0/datasource-textschema/datasource-textschema.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/datasource-textschema/datasource-textschema.js rename to lib/yuilib/3.12.0/datasource-textschema/datasource-textschema.js index 69ed4b2eb19..06fd1d7109a --- a/lib/yuilib/3.9.1/build/datasource-textschema/datasource-textschema.js +++ b/lib/yuilib/3.12.0/datasource-textschema/datasource-textschema.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-textschema', function (Y, NAME) { /** @@ -100,4 +106,4 @@ Y.extend(DataSourceTextSchema, Y.Plugin.Base, { Y.namespace('Plugin').DataSourceTextSchema = DataSourceTextSchema; -}, '3.9.1', {"requires": ["datasource-local", "plugin", "dataschema-text"]}); +}, '3.12.0', {"requires": ["datasource-local", "plugin", "dataschema-text"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-xmlschema/datasource-xmlschema-debug.js b/lib/yuilib/3.12.0/datasource-xmlschema/datasource-xmlschema-debug.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/datasource-xmlschema/datasource-xmlschema-debug.js rename to lib/yuilib/3.12.0/datasource-xmlschema/datasource-xmlschema-debug.js index 450c784f2d3..507e9064170 --- a/lib/yuilib/3.9.1/build/datasource-xmlschema/datasource-xmlschema-debug.js +++ b/lib/yuilib/3.12.0/datasource-xmlschema/datasource-xmlschema-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-xmlschema', function (Y, NAME) { /** @@ -100,4 +106,4 @@ Y.extend(DataSourceXMLSchema, Y.Plugin.Base, { Y.namespace('Plugin').DataSourceXMLSchema = DataSourceXMLSchema; -}, '3.9.1', {"requires": ["datasource-local", "plugin", "datatype-xml", "dataschema-xml"]}); +}, '3.12.0', {"requires": ["datasource-local", "plugin", "datatype-xml", "dataschema-xml"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-xmlschema/datasource-xmlschema-min.js b/lib/yuilib/3.12.0/datasource-xmlschema/datasource-xmlschema-min.js old mode 100644 new mode 100755 similarity index 68% rename from lib/yuilib/3.9.1/build/datasource-xmlschema/datasource-xmlschema-min.js rename to lib/yuilib/3.12.0/datasource-xmlschema/datasource-xmlschema-min.js index 28ebb6991c2..5489e33bc76 --- a/lib/yuilib/3.9.1/build/datasource-xmlschema/datasource-xmlschema-min.js +++ b/lib/yuilib/3.12.0/datasource-xmlschema/datasource-xmlschema-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datasource-xmlschema",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.mix(n,{NS:"schema",NAME:"dataSourceXMLSchema",ATTRS:{schema:{}}}),e.extend(n,e.Plugin.Base,{initializer:function(e){this.doBefore("_defDataFn",this._beforeDefDataFn)},_beforeDefDataFn:function(t){var n=this.get("schema"),r=t.details[0],i=e.XML.parse(t.data.responseText)||t.data;return r.response=e.DataSchema.XML.apply.call(this,n,i)||{meta:{},results:i},this.get("host").fire("response",r),new e.Do.Halt("DataSourceXMLSchema plugin halted _defDataFn")}}),e.namespace("Plugin").DataSourceXMLSchema=n},"3.9.1",{requires:["datasource-local","plugin","datatype-xml","dataschema-xml"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datasource-xmlschema",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.mix(n,{NS:"schema",NAME:"dataSourceXMLSchema",ATTRS:{schema:{}}}),e.extend(n,e.Plugin.Base,{initializer:function(e){this.doBefore("_defDataFn",this._beforeDefDataFn)},_beforeDefDataFn:function(t){var n=this.get("schema"),r=t.details[0],i=e.XML.parse(t.data.responseText)||t.data;return r.response=e.DataSchema.XML.apply.call(this,n,i)||{meta:{},results:i},this.get("host").fire("response",r),new e.Do.Halt("DataSourceXMLSchema plugin halted _defDataFn")}}),e.namespace("Plugin").DataSourceXMLSchema=n},"3.12.0",{requires:["datasource-local","plugin","datatype-xml","dataschema-xml"]}); diff --git a/lib/yuilib/3.9.1/build/datasource-xmlschema/datasource-xmlschema.js b/lib/yuilib/3.12.0/datasource-xmlschema/datasource-xmlschema.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/datasource-xmlschema/datasource-xmlschema.js rename to lib/yuilib/3.12.0/datasource-xmlschema/datasource-xmlschema.js index 450c784f2d3..507e9064170 --- a/lib/yuilib/3.9.1/build/datasource-xmlschema/datasource-xmlschema.js +++ b/lib/yuilib/3.12.0/datasource-xmlschema/datasource-xmlschema.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datasource-xmlschema', function (Y, NAME) { /** @@ -100,4 +106,4 @@ Y.extend(DataSourceXMLSchema, Y.Plugin.Base, { Y.namespace('Plugin').DataSourceXMLSchema = DataSourceXMLSchema; -}, '3.9.1', {"requires": ["datasource-local", "plugin", "datatype-xml", "dataschema-xml"]}); +}, '3.12.0', {"requires": ["datasource-local", "plugin", "datatype-xml", "dataschema-xml"]}); diff --git a/lib/yuilib/3.12.0/datatable-base/assets/datatable-base-core.css b/lib/yuilib/3.12.0/datatable-base/assets/datatable-base-core.css new file mode 100755 index 00000000000..522e38e5904 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-base/assets/datatable-base-core.css @@ -0,0 +1,11 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +/* foundational CSS */ +.yui3-datatable-table { + empty-cells: show; +} diff --git a/lib/yuilib/3.9.1/build/datatable-base/assets/skins/night/datatable-base-skin.css b/lib/yuilib/3.12.0/datatable-base/assets/skins/night/datatable-base-skin.css old mode 100644 new mode 100755 similarity index 92% rename from lib/yuilib/3.9.1/build/datatable-base/assets/skins/night/datatable-base-skin.css rename to lib/yuilib/3.12.0/datatable-base/assets/skins/night/datatable-base-skin.css index 3f8c049775d..852f97cb90d --- a/lib/yuilib/3.9.1/build/datatable-base/assets/skins/night/datatable-base-skin.css +++ b/lib/yuilib/3.12.0/datatable-base/assets/skins/night/datatable-base-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* basic skin styles */ .yui3-skin-night .yui3-datatable { color:#8E8E8E; diff --git a/lib/yuilib/3.12.0/datatable-base/assets/skins/night/datatable-base.css b/lib/yuilib/3.12.0/datatable-base/assets/skins/night/datatable-base.css new file mode 100755 index 00000000000..018848fb639 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-base/assets/skins/night/datatable-base.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-table{empty-cells:show}.yui3-skin-night .yui3-datatable{color:#8e8e8e;font-family:HelveticaNeue,arial,helvetica,clean,sans-serif}.yui3-skin-night .yui3-datatable-table{border:1px solid #323434;border-collapse:separate;border-spacing:0;color:#8e8e8e;margin:0;padding:0}.yui3-skin-night .yui3-datatable-caption{color:#474747;font:italic 85%/1 HelveticaNeue,arial,helvetica,clean,sans-serif;padding:1em 0;text-align:center}.yui3-skin-night .yui3-datatable-cell,.yui3-skin-night .yui3-datatable-header{border-left:1px solid #303030;border-width:0 0 0 1px;font-size:inherit;margin:0;overflow:visible;padding:4px 10px 4px 10px}.yui3-skin-night .yui3-datatable-cell:first-child,.yui3-skin-night .yui3-datatable-first-header{border-left-width:0}.yui3-skin-night .yui3-datatable-header{background-color:#3b3c3d;background:-moz-linear-gradient(0% 100% 90deg,#242526 0,#3b3c3d 96%,#2c2d2f 100%);background:-webkit-gradient(linear,left bottom,left top,from(#242526),color-stop(0.96,#3b3c3d),to(#2c2d2f));color:#eee;font-weight:normal;text-align:left;vertical-align:bottom;white-space:nowrap}.yui3-skin-night .yui3-datatable-cell{background-color:transparent}.yui3-skin-night .yui3-datatable-even .yui3-datatable-cell{background-color:#0e0e0e}.yui3-skin-night .yui3-datatable-odd .yui3-datatable-cell{background-color:#1d1e1e}#yui3-css-stamp.skin-night-datatable-base{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-base/assets/skins/sam/datatable-base-skin.css b/lib/yuilib/3.12.0/datatable-base/assets/skins/sam/datatable-base-skin.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/datatable-base/assets/skins/sam/datatable-base-skin.css rename to lib/yuilib/3.12.0/datatable-base/assets/skins/sam/datatable-base-skin.css index 11d219d9ae4..ca5db776dbb --- a/lib/yuilib/3.9.1/build/datatable-base/assets/skins/sam/datatable-base-skin.css +++ b/lib/yuilib/3.12.0/datatable-base/assets/skins/sam/datatable-base-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* basic skin styles */ .yui3-skin-sam .yui3-datatable-table { margin: 0; diff --git a/lib/yuilib/3.12.0/datatable-base/assets/skins/sam/datatable-base.css b/lib/yuilib/3.12.0/datatable-base/assets/skins/sam/datatable-base.css new file mode 100755 index 00000000000..ae4bf472aa9 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-base/assets/skins/sam/datatable-base.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-table{empty-cells:show}.yui3-skin-sam .yui3-datatable-table{margin:0;padding:0;font-family:arial,sans-serif;border-collapse:separate;border-spacing:0;border:1px solid #cbcbcb}.yui3-skin-sam .yui3-datatable-caption{color:#000;font:italic 85%/1 arial,sans-serif;padding:1em 0;text-align:center}.yui3-skin-sam .yui3-datatable-cell,.yui3-skin-sam .yui3-datatable-header{border-left:1px solid #cbcbcb;border-width:0 0 0 1px;font-size:inherit;margin:0;overflow:visible;padding:4px 10px 4px 10px}.yui3-skin-sam .yui3-datatable-cell:first-child,.yui3-skin-sam .yui3-datatable-first-header{border-left-width:0}.yui3-skin-sam .yui3-datatable-header{background:#fff url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;background-image:-webkit-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:-moz-linear-gradient(top,transparent 40%,rgba(0,0,0,0.21));background-image:-ms-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:-o-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:linear-gradient(transparent 40%,rgba(0,0,0,0.21));color:#000;font-weight:normal;text-align:left;text-shadow:0 1px 1px #fff;vertical-align:bottom;white-space:nowrap}.yui3-skin-sam .yui3-datatable-cell{background-color:transparent}.yui3-skin-sam .yui3-datatable-even .yui3-datatable-cell{background-color:#fff}.yui3-skin-sam .yui3-datatable-odd .yui3-datatable-cell{background-color:#edf5ff}#yui3-css-stamp.skin-sam-datatable-base{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-base/datatable-base-debug.js b/lib/yuilib/3.12.0/datatable-base/datatable-base-debug.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/datatable-base/datatable-base-debug.js rename to lib/yuilib/3.12.0/datatable-base/datatable-base-debug.js index ddbd461823e..903f7128657 --- a/lib/yuilib/3.9.1/build/datatable-base/datatable-base-debug.js +++ b/lib/yuilib/3.12.0/datatable-base/datatable-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatable-base', function (Y, NAME) { /** @@ -682,7 +688,7 @@ Y.DataTable = Y.mix( Y.DataTable); // Migrate static and namespaced classes -}, '3.9.1', { +}, '3.12.0', { "requires": [ "datatable-core", "datatable-table", diff --git a/lib/yuilib/3.9.1/build/datatable-base/datatable-base-min.js b/lib/yuilib/3.12.0/datatable-base/datatable-base-min.js old mode 100644 new mode 100755 similarity index 90% rename from lib/yuilib/3.9.1/build/datatable-base/datatable-base-min.js rename to lib/yuilib/3.12.0/datatable-base/datatable-base-min.js index c7917adc84d..5c1f3c08bfb --- a/lib/yuilib/3.9.1/build/datatable-base/datatable-base-min.js +++ b/lib/yuilib/3.12.0/datatable-base/datatable-base-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datatable-base",function(e,t){e.DataTable.Base=e.Base.create("datatable",e.Widget,[e.DataTable.Core],{delegate:function(){var e=this.get("contentBox");return e.delegate.apply(e,arguments)},destructor:function(){this.view&&this.view.destroy()},getCell:function(){return this.view&&this.view.getCell&&this.view.getCell.apply(this.view,arguments)},getRow:function(){return this.view&&this.view.getRow&&this.view.getRow.apply(this.view,arguments)},_afterDisplayColumnsChange:function(e){this._extractDisplayColumns(e.newVal||[])},bindUI:function(){this._eventHandles.relayCoreChanges=this.after(["columnsChange","dataChange","summaryChange","captionChange","widthChange"],e.bind("_relayCoreAttrChange",this))},_defRenderViewFn:function(e){e.view.render()},_extractDisplayColumns:function(t){function r(t){var i,s,o;for(i=0,s=t.length;i` section of a table. Used as the default `bodyView` for `Y.DataTable.Base` and `Y.DataTable` classes. Translates the provided `modelList` into a rendered `` based on the data -in the constituent Models, altered or ammended by any special column +in the constituent Models, altered or amended by any special column configurations. The `columns` configuration, passed to the constructor, determines which @@ -201,7 +207,7 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { // Next cell var cell = table.getCell(e.target, 'next'); - var cell = table.getCell(e.taregt, [0, 1];
    + var cell = table.getCell(e.target, [0, 1]; @method getCell @param {Number[]|Node} seed Array of row and column indexes, or a Node that @@ -350,7 +356,7 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { 1. A row template is assembled from the `columns` attribute (see `_createRowTemplate`) - 2. An HTML string is built up by concatening the application of the data in + 2. An HTML string is built up by concatenating the application of the data in each Model in the `modelList` to the row template. For cells with `formatter`s, the function is called to generate cell content. Cells with `nodeFormatter`s are ignored. For all other cells, the data value @@ -450,13 +456,150 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { table.appendChild(tbody); } - this._afterRenderCleanup(); - this.bindUI(); return this; }, + /** + Refreshes the provided row against the provided model and the Array of + columns to be updated. + + @method refreshRow + @param {Y.Node} row + @param {Y.Model} model Y.Model representation of the row + @param {Object[]} columns Array of column configuration objects + + @chainable + */ + refreshRow: function (row, model, columns) { + var key, + cell, + len = columns.length, + i; + + for (i = 0; i < len; i++) { + key = columns[i]; + cell = row.one('.' + this.getClassName('col', key)); + this.refreshCell(cell, model); + } + + return this; + }, + + /** + Refreshes the given cell with the provided model data and the provided + column configuration. + + Uses the provided column formatter if aviable. + + @method refreshCell + @param {Y.Node} cell Y.Node pointer to the cell element to be updated + @param {Y.Model} [model] Y.Model representation of the row + @param {Object} [col] Column configuration object for the cell + + @chainable + */ + refreshCell: function (cell, model, col) { + var content, + formatterFn, + formatterData, + data = model.toJSON(); + + cell = this.getCell(cell); + model || (model = this.getRecord(cell)); + col || (col = this.getColumn(cell)); + + if (col.nodeFormatter) { + formatterData = { + cell: cell.one('.' + this.getClassName('liner')) || cell, + column: col, + data: data, + record: model, + rowIndex: this._getRowIndex(cell.ancestor('tr')), + td: cell, + value: data[col.key] + }; + + keep = col.nodeFormatter.call(host,formatterData); + + if (keep === false) { + // Remove from the Node cache to reduce + // memory footprint. This also purges events, + // which you shouldn't be scoping to a cell + // anyway. You've been warned. Incidentally, + // you should always return false. Just sayin. + cell.destroy(true); + } + + } else if (col.formatter) { + if (!col._formatterFn) { + col = this._setColumnsFormatterFn([col])[0]; + } + + formatterFn = col._formatterFn || null; + + if (formatterFn) { + formatterData = { + value : data[col.key], + data : data, + column : col, + record : model, + className: '', + rowClass : '', + rowIndex : this._getRowIndex(cell.ancestor('tr')) + }; + + // Formatters can either return a value ... + content = formatterFn.call(this.get('host'), formatterData); + + // ... or update the value property of the data obj passed + if (content === undefined) { + content = formatterData.value; + } + } + + if (content === undefined || content === null || content === '') { + content = col.emptyCellValue || ''; + } + + } else { + content = data[col.key] || col.emptyCellValue || ''; + } + + cell.setHTML(col.allowHTML ? content : Y.Escape.html(content)); + + return this; + }, + + /** + Returns column data from this.get('columns'). If a Y.Node is provided as + the key, will try to determine the key from the classname + @method getColumn + @param {String|Y.Node} key + @return {Object} Returns column configuration + */ + getColumn: function (key) { + if (Y.instanceOf(key, Y.Node)) { + // get column name from node + key = key.get('className').match( + new RegExp( this.getClassName('col') +'-([^ ]*)' ) + )[1]; + } + + var cols = this.get('columns'), + col = null; + + Y.Array.some(cols, function (_col) { + if (_col.key === key) { + col = _col; + return true; + } + }); + + return col; + }, + // -- Protected and private methods --------------------------------------- /** Handles changes in the source's columns attribute. Redraws the table data. @@ -487,11 +630,110 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { @protected @since 3.5.0 **/ - _afterDataChange: function () { - //var type = e.type.slice(e.type.lastIndexOf(':') + 1); + _afterDataChange: function (e) { + var type = (e.type.match(/:(add|change|remove)$/) || [])[1], + index = e.index, + columns = this.get('columns'), + col, + changed = e.changed && Y.Object.keys(e.changed), + key, + row, + i, + len; + + for (i = 0, len = columns.length; i < len; i++ ) { + col = columns[i]; + + // since nodeFormatters typcially make changes outside of it's + // cell, we need to see if there are any columns that have a + // nodeFormatter and if so, we need to do a full render() of the + // tbody + if (col.hasOwnProperty('nodeFormatter')) { + this.render(); + return; + } + } + + // TODO: if multiple rows are being added/remove/swapped, can we avoid the restriping? + switch (type) { + case 'change': + for (i = 0, len = columns.length; i < len; i++) { + col = columns[i]; + key = col.key || col.name; + if (col.formatter && !e.changed[key]) { + changed.push(key); + } + } + this.refreshRow(this.getRow(e.target), e.target, changed); + break; + case 'add': + // we need to make sure we don't have an index larger than the data we have + index = Math.min(index, this.get('modelList').size() - 1); + + // updates the columns with formatter functions + this._setColumnsFormatterFn(columns); + row = Y.Node.create(this._createRowHTML(e.model, index, columns)); + this.tbodyNode.insert(row, index); + this._restripe(index); + break; + case 'remove': + this.getRow(index).remove(true); + // we removed a row, so we need to back up our index to stripe + this._restripe(index - 1); + break; + default: + this.render(); + } + }, + + /** + Toggles the odd/even classname of the row after the given index. This method + is used to update rows after a row is inserted into or removed from the table. + Note this event is delayed so the table is only restriped once when multiple + rows are updated at one time. + + @protected + @method _restripe + @param {Number} [index] Index of row to start restriping after + @since 3.11.0 + */ + _restripe: function (index) { + var task = this._restripeTask, + self; + + // index|0 to force int, avoid NaN. Math.max() to avoid neg indexes. + index = Math.max((index|0), 0); + + if (!task) { + self = this; + + this._restripeTask = { + timer: setTimeout(function () { + // Check for self existence before continuing + if (!self || self.get('destroy') || !self.tbodyNode || !self.tbodyNode.inDoc()) { + self._restripeTask = null; + return; + } + + var odd = [self.CLASS_ODD, self.CLASS_EVEN], + even = [self.CLASS_EVEN, self.CLASS_ODD], + index = self._restripeTask.index; + + self.tbodyNode.get('childNodes') + .slice(index) + .each(function (row, i) { // TODO: each vs batch + row.replaceClass.apply(row, (index + i) % 2 ? even : odd); + }); + + self._restripeTask = null; + }, 0), + + index: index + }; + } else { + task.index = Math.min(task.index, index); + } - // TODO: Isolate changes - this.render(); }, /** @@ -529,7 +771,7 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { @since 3.5.0 **/ _applyNodeFormatters: function (tbody, columns) { - var host = this.host, + var host = this.host || this, data = this.get('modelList'), formatters = [], linerQuery = '.' + this.getClassName('liner'), @@ -712,18 +954,48 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { values.rowClass += ' ' + formatterData.rowClass; } - if (value === undefined || value === null || value === '') { - value = col.emptyCellValue || ''; + // if the token missing OR is the value a legit value + if (!values.hasOwnProperty(token) || data.hasOwnProperty(col.key)) { + if (value === undefined || value === null || value === '') { + value = col.emptyCellValue || ''; + } + + values[token] = col.allowHTML ? value : htmlEscape(value); } - - values[token] = col.allowHTML ? value : htmlEscape(value); - - values.rowClass = values.rowClass.replace(/\s+/g, ' '); } + // replace consecutive whitespace with a single space + values.rowClass = values.rowClass.replace(/\s+/g, ' '); + return fromTemplate(this._rowTemplate, values); }, + /** + Locates the row within the tbodyNode and returns the found index, or Null + if it is not found in the tbodyNode + @param {Y.Node} row + @return {Number} Index of row in tbodyNode + */ + _getRowIndex: function (row) { + var tbody = this.tbodyNode, + index = 1; + + if (tbody && row) { + + //if row is not in the tbody, return + if (row.ancestor('tbody') !== tbody) { + return null; + } + + // increment until we no longer have a previous node + while (row = row.previous()) { // NOTE: assignment + index++; + } + } + + return index; + }, + /** Creates a custom HTML template string for use in generating the markup for individual table rows with {placeholder}s to capture data from the Models @@ -739,14 +1011,15 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { _createRowTemplate: function (columns) { var html = '', cellTemplate = this.CELL_TEMPLATE, - F = Y.DataTable.BodyView.Formatters, i, len, col, key, token, headers, tokenValues, formatter; + this._setColumnsFormatterFn(columns); + for (i = 0, len = columns.length; i < len; ++i) { col = columns[i]; key = col.key; token = col._id || key; - formatter = col.formatter; + formatter = col._formatterFn; // Only include headers if there are more than one headers = (col._headers || []).length > 1 ? 'headers="' + col._headers.join(' ') + '"' : ''; @@ -759,14 +1032,8 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { this.getClassName('cell') + ' {' + token + '-className}' }; - if (formatter) { - if (Lang.isFunction(formatter)) { - col._formatterFn = formatter; - } else if (formatter in F) { - col._formatterFn = F[formatter].call(this.host || this, col); - } else { - tokenValues.content = formatter.replace(valueRegExp, tokenValues.content); - } + if (!formatter && col.formatter) { + tokenValues.content = col.formatter.replace(valueRegExp, tokenValues.content); } if (col.nodeFormatter) { @@ -781,19 +1048,37 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { content: html }); }, - /** - Cleans up temporary values created during rendering. - @method _afterRenderCleanup - @private - */ - _afterRenderCleanup: function () { - var columns = this.get('columns'), - i, len = columns.length; - for (i = 0;i < len; i+=1) { - delete columns[i]._formatterFn; + /** + Parses the columns array and defines the column's _formatterFn if there + is a formatter available on the column + @protected + @method _setColumnsFormatterFn + @param {Object[]} columns Array of column configuration objects + + @return {Object[]} Returns modified columns configuration Array + */ + _setColumnsFormatterFn: function (columns) { + var Formatters = Y.DataTable.BodyView.Formatters, + formatter, + col, + i, + len; + + for (i = 0, len = columns.length; i < len; i++) { + col = columns[i]; + formatter = col.formatter; + + if (!col._formatterFn && formatter) { + if (Lang.isFunction(formatter)) { + col._formatterFn = formatter; + } else if (formatter in Formatters) { + col._formatterFn = Formatters[formatter].call(this.host || this, col); + } + } } + return columns; }, /** @@ -910,4 +1195,4 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { }); -}, '3.9.1', {"requires": ["datatable-core", "view", "classnamemanager"]}); +}, '3.12.0', {"requires": ["datatable-core", "view", "classnamemanager"]}); diff --git a/lib/yuilib/3.12.0/datatable-body/datatable-body-min.js b/lib/yuilib/3.12.0/datatable-body/datatable-body-min.js new file mode 100755 index 00000000000..205fc453fb6 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-body/datatable-body-min.js @@ -0,0 +1,9 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datatable-body",function(e,t){var n=e.Lang,r=n.isArray,i=n.isNumber,s=n.isString,o=n.sub,u=e.Escape.html,a=e.Array,f=e.bind,l=e.Object,c=/\{value\}/g;e.namespace("DataTable").BodyView=e.Base.create("tableBody",e.View,[],{CELL_TEMPLATE:'{content}',ROW_TEMPLATE:'{content}',TBODY_TEMPLATE:'',getCell:function(t,n){var i=this.tbodyNode,o,u,a,f;if(t&&i){r(t)?(o=i.get("children").item(t[0]),u=o&&o.get("children").item(t[1])):e.instanceOf(t,e.Node)&&(u=t.ancestor("."+this.getClassName("cell"),!0));if(u&&n){f=i.get("firstChild.rowIndex");if(s(n))switch(n){case"above":n=[-1,0];break;case"below":n=[1,0];break;case"next":n=[0,1];break;case"previous":n=[0,-1]}r(n)&&(a=u.get("parentNode.rowIndex")+n[0]-f,o=i.get("children").item(a),a=u.get("cellIndex")+n[1],u=o&&o.get("children").item(a))}}return u||null},getClassName:function(){var t=this.host,n;return t&&t.getClassName?t.getClassName.apply(t,arguments):(n=a(arguments),n.unshift(this.constructor.NAME),e.ClassNameManager.getClassName.apply(e.ClassNameManager,n))},getRecord:function(t){var n=this.get("modelList"),r=this.tbodyNode,i=null,o;return r&&(s(t)&&(t=r.one("#"+t)),e.instanceOf(t,e.Node)&&(i=t.ancestor(function(e){return e.get("parentNode").compareTo(r)},!0),o=i&&n.getByClientId(i.getData("yui3-record")))),o||null},getRow:function(e){var t=this.tbodyNode,n=null;return t&&(e&&(e=this._idMap[e.get?e.get("clientId"):e]||e),n=i(e)?t.get("children").item(e):t.one("#"+e)),n},render:function(){var e=this.get("container"),t=this.get("modelList"),n=this.get("columns"),r=this.tbodyNode||(this.tbodyNode=this._createTBodyNode());return this._createRowTemplate(n),t&&(r.setHTML(this._createDataHTML(n)),this._applyNodeFormatters(r,n)),r.get("parentNode")!==e&&e.appendChild(r),this.bindUI(),this},refreshRow:function(e,t,n){var r,i,s=n.length,o;for(o=0;o1?'headers="'+s._headers.join(" ")+'"':"",l={content:"{"+a+"}",headers:f,className:this.getClassName("col",a)+" "+(s.className||"")+" "+this.getClassName("cell")+" {"+a+"-className}"},!h&&s.formatter&&(l.content=s.formatter.replace(c,l.content)),s.nodeFormatter&&(l.content=""),t+=o(s.cellTemplate||n,l);this._rowTemplate=o(this.ROW_TEMPLATE,{content:t})},_setColumnsFormatterFn:function(t){var r=e.DataTable.BodyView.Formatters,i,s,o,u;for(o=0,u=t.length;o` section of a table. Used as the default `bodyView` for `Y.DataTable.Base` and `Y.DataTable` classes. Translates the provided `modelList` into a rendered `` based on the data -in the constituent Models, altered or ammended by any special column +in the constituent Models, altered or amended by any special column configurations. The `columns` configuration, passed to the constructor, determines which @@ -201,7 +207,7 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { // Next cell var cell = table.getCell(e.target, 'next'); - var cell = table.getCell(e.taregt, [0, 1]; + var cell = table.getCell(e.target, [0, 1]; @method getCell @param {Number[]|Node} seed Array of row and column indexes, or a Node that @@ -350,7 +356,7 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { 1. A row template is assembled from the `columns` attribute (see `_createRowTemplate`) - 2. An HTML string is built up by concatening the application of the data in + 2. An HTML string is built up by concatenating the application of the data in each Model in the `modelList` to the row template. For cells with `formatter`s, the function is called to generate cell content. Cells with `nodeFormatter`s are ignored. For all other cells, the data value @@ -450,13 +456,150 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { table.appendChild(tbody); } - this._afterRenderCleanup(); - this.bindUI(); return this; }, + /** + Refreshes the provided row against the provided model and the Array of + columns to be updated. + + @method refreshRow + @param {Y.Node} row + @param {Y.Model} model Y.Model representation of the row + @param {Object[]} columns Array of column configuration objects + + @chainable + */ + refreshRow: function (row, model, columns) { + var key, + cell, + len = columns.length, + i; + + for (i = 0; i < len; i++) { + key = columns[i]; + cell = row.one('.' + this.getClassName('col', key)); + this.refreshCell(cell, model); + } + + return this; + }, + + /** + Refreshes the given cell with the provided model data and the provided + column configuration. + + Uses the provided column formatter if aviable. + + @method refreshCell + @param {Y.Node} cell Y.Node pointer to the cell element to be updated + @param {Y.Model} [model] Y.Model representation of the row + @param {Object} [col] Column configuration object for the cell + + @chainable + */ + refreshCell: function (cell, model, col) { + var content, + formatterFn, + formatterData, + data = model.toJSON(); + + cell = this.getCell(cell); + model || (model = this.getRecord(cell)); + col || (col = this.getColumn(cell)); + + if (col.nodeFormatter) { + formatterData = { + cell: cell.one('.' + this.getClassName('liner')) || cell, + column: col, + data: data, + record: model, + rowIndex: this._getRowIndex(cell.ancestor('tr')), + td: cell, + value: data[col.key] + }; + + keep = col.nodeFormatter.call(host,formatterData); + + if (keep === false) { + // Remove from the Node cache to reduce + // memory footprint. This also purges events, + // which you shouldn't be scoping to a cell + // anyway. You've been warned. Incidentally, + // you should always return false. Just sayin. + cell.destroy(true); + } + + } else if (col.formatter) { + if (!col._formatterFn) { + col = this._setColumnsFormatterFn([col])[0]; + } + + formatterFn = col._formatterFn || null; + + if (formatterFn) { + formatterData = { + value : data[col.key], + data : data, + column : col, + record : model, + className: '', + rowClass : '', + rowIndex : this._getRowIndex(cell.ancestor('tr')) + }; + + // Formatters can either return a value ... + content = formatterFn.call(this.get('host'), formatterData); + + // ... or update the value property of the data obj passed + if (content === undefined) { + content = formatterData.value; + } + } + + if (content === undefined || content === null || content === '') { + content = col.emptyCellValue || ''; + } + + } else { + content = data[col.key] || col.emptyCellValue || ''; + } + + cell.setHTML(col.allowHTML ? content : Y.Escape.html(content)); + + return this; + }, + + /** + Returns column data from this.get('columns'). If a Y.Node is provided as + the key, will try to determine the key from the classname + @method getColumn + @param {String|Y.Node} key + @return {Object} Returns column configuration + */ + getColumn: function (key) { + if (Y.instanceOf(key, Y.Node)) { + // get column name from node + key = key.get('className').match( + new RegExp( this.getClassName('col') +'-([^ ]*)' ) + )[1]; + } + + var cols = this.get('columns'), + col = null; + + Y.Array.some(cols, function (_col) { + if (_col.key === key) { + col = _col; + return true; + } + }); + + return col; + }, + // -- Protected and private methods --------------------------------------- /** Handles changes in the source's columns attribute. Redraws the table data. @@ -487,11 +630,110 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { @protected @since 3.5.0 **/ - _afterDataChange: function () { - //var type = e.type.slice(e.type.lastIndexOf(':') + 1); + _afterDataChange: function (e) { + var type = (e.type.match(/:(add|change|remove)$/) || [])[1], + index = e.index, + columns = this.get('columns'), + col, + changed = e.changed && Y.Object.keys(e.changed), + key, + row, + i, + len; + + for (i = 0, len = columns.length; i < len; i++ ) { + col = columns[i]; + + // since nodeFormatters typcially make changes outside of it's + // cell, we need to see if there are any columns that have a + // nodeFormatter and if so, we need to do a full render() of the + // tbody + if (col.hasOwnProperty('nodeFormatter')) { + this.render(); + return; + } + } + + // TODO: if multiple rows are being added/remove/swapped, can we avoid the restriping? + switch (type) { + case 'change': + for (i = 0, len = columns.length; i < len; i++) { + col = columns[i]; + key = col.key || col.name; + if (col.formatter && !e.changed[key]) { + changed.push(key); + } + } + this.refreshRow(this.getRow(e.target), e.target, changed); + break; + case 'add': + // we need to make sure we don't have an index larger than the data we have + index = Math.min(index, this.get('modelList').size() - 1); + + // updates the columns with formatter functions + this._setColumnsFormatterFn(columns); + row = Y.Node.create(this._createRowHTML(e.model, index, columns)); + this.tbodyNode.insert(row, index); + this._restripe(index); + break; + case 'remove': + this.getRow(index).remove(true); + // we removed a row, so we need to back up our index to stripe + this._restripe(index - 1); + break; + default: + this.render(); + } + }, + + /** + Toggles the odd/even classname of the row after the given index. This method + is used to update rows after a row is inserted into or removed from the table. + Note this event is delayed so the table is only restriped once when multiple + rows are updated at one time. + + @protected + @method _restripe + @param {Number} [index] Index of row to start restriping after + @since 3.11.0 + */ + _restripe: function (index) { + var task = this._restripeTask, + self; + + // index|0 to force int, avoid NaN. Math.max() to avoid neg indexes. + index = Math.max((index|0), 0); + + if (!task) { + self = this; + + this._restripeTask = { + timer: setTimeout(function () { + // Check for self existence before continuing + if (!self || self.get('destroy') || !self.tbodyNode || !self.tbodyNode.inDoc()) { + self._restripeTask = null; + return; + } + + var odd = [self.CLASS_ODD, self.CLASS_EVEN], + even = [self.CLASS_EVEN, self.CLASS_ODD], + index = self._restripeTask.index; + + self.tbodyNode.get('childNodes') + .slice(index) + .each(function (row, i) { // TODO: each vs batch + row.replaceClass.apply(row, (index + i) % 2 ? even : odd); + }); + + self._restripeTask = null; + }, 0), + + index: index + }; + } else { + task.index = Math.min(task.index, index); + } - // TODO: Isolate changes - this.render(); }, /** @@ -529,7 +771,7 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { @since 3.5.0 **/ _applyNodeFormatters: function (tbody, columns) { - var host = this.host, + var host = this.host || this, data = this.get('modelList'), formatters = [], linerQuery = '.' + this.getClassName('liner'), @@ -712,18 +954,48 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { values.rowClass += ' ' + formatterData.rowClass; } - if (value === undefined || value === null || value === '') { - value = col.emptyCellValue || ''; + // if the token missing OR is the value a legit value + if (!values.hasOwnProperty(token) || data.hasOwnProperty(col.key)) { + if (value === undefined || value === null || value === '') { + value = col.emptyCellValue || ''; + } + + values[token] = col.allowHTML ? value : htmlEscape(value); } - - values[token] = col.allowHTML ? value : htmlEscape(value); - - values.rowClass = values.rowClass.replace(/\s+/g, ' '); } + // replace consecutive whitespace with a single space + values.rowClass = values.rowClass.replace(/\s+/g, ' '); + return fromTemplate(this._rowTemplate, values); }, + /** + Locates the row within the tbodyNode and returns the found index, or Null + if it is not found in the tbodyNode + @param {Y.Node} row + @return {Number} Index of row in tbodyNode + */ + _getRowIndex: function (row) { + var tbody = this.tbodyNode, + index = 1; + + if (tbody && row) { + + //if row is not in the tbody, return + if (row.ancestor('tbody') !== tbody) { + return null; + } + + // increment until we no longer have a previous node + while (row = row.previous()) { // NOTE: assignment + index++; + } + } + + return index; + }, + /** Creates a custom HTML template string for use in generating the markup for individual table rows with {placeholder}s to capture data from the Models @@ -739,14 +1011,15 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { _createRowTemplate: function (columns) { var html = '', cellTemplate = this.CELL_TEMPLATE, - F = Y.DataTable.BodyView.Formatters, i, len, col, key, token, headers, tokenValues, formatter; + this._setColumnsFormatterFn(columns); + for (i = 0, len = columns.length; i < len; ++i) { col = columns[i]; key = col.key; token = col._id || key; - formatter = col.formatter; + formatter = col._formatterFn; // Only include headers if there are more than one headers = (col._headers || []).length > 1 ? 'headers="' + col._headers.join(' ') + '"' : ''; @@ -759,14 +1032,8 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { this.getClassName('cell') + ' {' + token + '-className}' }; - if (formatter) { - if (Lang.isFunction(formatter)) { - col._formatterFn = formatter; - } else if (formatter in F) { - col._formatterFn = F[formatter].call(this.host || this, col); - } else { - tokenValues.content = formatter.replace(valueRegExp, tokenValues.content); - } + if (!formatter && col.formatter) { + tokenValues.content = col.formatter.replace(valueRegExp, tokenValues.content); } if (col.nodeFormatter) { @@ -781,19 +1048,37 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { content: html }); }, - /** - Cleans up temporary values created during rendering. - @method _afterRenderCleanup - @private - */ - _afterRenderCleanup: function () { - var columns = this.get('columns'), - i, len = columns.length; - for (i = 0;i < len; i+=1) { - delete columns[i]._formatterFn; + /** + Parses the columns array and defines the column's _formatterFn if there + is a formatter available on the column + @protected + @method _setColumnsFormatterFn + @param {Object[]} columns Array of column configuration objects + + @return {Object[]} Returns modified columns configuration Array + */ + _setColumnsFormatterFn: function (columns) { + var Formatters = Y.DataTable.BodyView.Formatters, + formatter, + col, + i, + len; + + for (i = 0, len = columns.length; i < len; i++) { + col = columns[i]; + formatter = col.formatter; + + if (!col._formatterFn && formatter) { + if (Lang.isFunction(formatter)) { + col._formatterFn = formatter; + } else if (formatter in Formatters) { + col._formatterFn = Formatters[formatter].call(this.host || this, col); + } + } } + return columns; }, /** @@ -910,4 +1195,4 @@ Y.namespace('DataTable').BodyView = Y.Base.create('tableBody', Y.View, [], { }); -}, '3.9.1', {"requires": ["datatable-core", "view", "classnamemanager"]}); +}, '3.12.0', {"requires": ["datatable-core", "view", "classnamemanager"]}); diff --git a/lib/yuilib/3.9.1/build/datatable-column-widths/datatable-column-widths-debug.js b/lib/yuilib/3.12.0/datatable-column-widths/datatable-column-widths-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/datatable-column-widths/datatable-column-widths-debug.js rename to lib/yuilib/3.12.0/datatable-column-widths/datatable-column-widths-debug.js index fd4bce8d303..02cdf90cc07 --- a/lib/yuilib/3.9.1/build/datatable-column-widths/datatable-column-widths-debug.js +++ b/lib/yuilib/3.12.0/datatable-column-widths/datatable-column-widths-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatable-column-widths', function (Y, NAME) { /** @@ -101,7 +107,7 @@ To add a liner to all columns, either provide a custom `bodyView` to the DataTable constructor or update the default `bodyView`'s `CELL_TEMPLATE` like so: -
    table.on('renderBody', function (e) {
    +
    table.on('table:renderBody', function (e) {
         e.view.CELL_TEMPLATE = e.view.CELL_TEMPLATE.replace(/\{content\}/,
                 '<div class="yui3-datatable-liner">{content}</div>');
     });
    @@ -297,4 +303,4 @@ Y.DataTable.ColumnWidths = ColumnWidths;
     Y.Base.mix(Y.DataTable, [ColumnWidths]);
     
     
    -}, '3.9.1', {"requires": ["datatable-base"]});
    +}, '3.12.0', {"requires": ["datatable-base"]});
    diff --git a/lib/yuilib/3.9.1/build/datatable-column-widths/datatable-column-widths-min.js b/lib/yuilib/3.12.0/datatable-column-widths/datatable-column-widths-min.js
    old mode 100644
    new mode 100755
    similarity index 88%
    rename from lib/yuilib/3.9.1/build/datatable-column-widths/datatable-column-widths-min.js
    rename to lib/yuilib/3.12.0/datatable-column-widths/datatable-column-widths-min.js
    index b8c1e78fd65..df66cd106cd
    --- a/lib/yuilib/3.9.1/build/datatable-column-widths/datatable-column-widths-min.js
    +++ b/lib/yuilib/3.12.0/datatable-column-widths/datatable-column-widths-min.js
    @@ -1,2 +1,8 @@
    -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */
    -YUI.add("datatable-column-widths",function(e,t){function i(){}var n=e.Lang.isNumber,r=e.Array.indexOf;e.Features.add("table","badColWidth",{test:function(){var t=e.one("body"),n,r;return t&&(n=t.insertBefore('
    .
    ',t.get("firstChild")),r=n.one("td").getComputedStyle("width")!=="1px",n.remove(!0)),r}}),e.mix(i.prototype,{COL_TEMPLATE:"",COLGROUP_TEMPLATE:"",setColumnWidth:function(e,t){var i=this.getColumn(e),s=i&&r(this._displayColumns,i);return s>-1&&(n(t)&&(t+="px"),i.width=t,this._setColumnWidth(s,t)),this},_createColumnGroup:function(){return e.Node.create(this.COLGROUP_TEMPLATE)},initializer:function(){this.after(["renderView","columnsChange"],this._uiSetColumnWidths)},_setColumnWidth:function(t,r){var i=this._colgroupNode,s=i&&i.all("col").item(t),o,u;s&&(r&&n(r)&&(r+="px"),s.setStyle("width",r),r&&e.Features.test("table","badColWidth")&&(o=this.getCell([0,t]),o&&(u=function(e){return parseInt(o.getComputedStyle(e),10)||0},s.setStyle("width",parseInt(r,10)-u("paddingLeft")-u("paddingRight")-u("borderLeftWidth")-u("borderRightWidth")+"px"))))},_uiSetColumnWidths:function(){if(!this.view)return;var e=this.COL_TEMPLATE,t=this._colgroupNode,n=this._displayColumns,r,i;t?t.empty():(t=this._colgroupNode=this._createColumnGroup(),this._tableNode.insertBefore(t,this._tableNode.one("> thead, > tfoot, > tbody")));for(r=0,i=n.length;r.',t.get("firstChild")),r=n.one("td").getComputedStyle("width")!=="1px",n.remove(!0)),r}}),e.mix(i.prototype,{COL_TEMPLATE:"",COLGROUP_TEMPLATE:"",setColumnWidth:function(e,t){var i=this.getColumn(e),s=i&&r(this._displayColumns,i);return s>-1&&(n(t)&&(t+="px"),i.width=t,this._setColumnWidth(s,t)),this},_createColumnGroup:function(){return e.Node.create(this.COLGROUP_TEMPLATE)},initializer:function(){this.after(["renderView","columnsChange"],this._uiSetColumnWidths)},_setColumnWidth:function(t,r){var i=this._colgroupNode,s=i&&i.all("col").item(t),o,u;s&&(r&&n(r)&&(r+="px"),s.setStyle("width",r),r&&e.Features.test("table","badColWidth")&&(o=this.getCell([0,t]),o&&(u=function(e){return parseInt(o.getComputedStyle(e),10)||0},s.setStyle("width",parseInt(r,10)-u("paddingLeft")-u("paddingRight")-u("borderLeftWidth")-u("borderRightWidth")+"px"))))},_uiSetColumnWidths:function(){if(!this.view)return;var e=this.COL_TEMPLATE,t=this._colgroupNode,n=this._displayColumns,r,i;t?t.empty():(t=this._colgroupNode=this._createColumnGroup(),this._tableNode.insertBefore(t,this._tableNode.one("> thead, > tfoot, > tbody")));for(r=0,i=n.length;rtable.on('renderBody', function (e) { +
    table.on('table:renderBody', function (e) {
         e.view.CELL_TEMPLATE = e.view.CELL_TEMPLATE.replace(/\{content\}/,
                 '<div class="yui3-datatable-liner">{content}</div>');
     });
    @@ -297,4 +303,4 @@ Y.DataTable.ColumnWidths = ColumnWidths;
     Y.Base.mix(Y.DataTable, [ColumnWidths]);
     
     
    -}, '3.9.1', {"requires": ["datatable-base"]});
    +}, '3.12.0', {"requires": ["datatable-base"]});
    diff --git a/lib/yuilib/3.9.1/build/datatable-core/datatable-core-debug.js b/lib/yuilib/3.12.0/datatable-core/datatable-core-debug.js
    old mode 100644
    new mode 100755
    similarity index 99%
    rename from lib/yuilib/3.9.1/build/datatable-core/datatable-core-debug.js
    rename to lib/yuilib/3.12.0/datatable-core/datatable-core-debug.js
    index f4589fc70a4..5948a041cee
    --- a/lib/yuilib/3.9.1/build/datatable-core/datatable-core-debug.js
    +++ b/lib/yuilib/3.12.0/datatable-core/datatable-core-debug.js
    @@ -1,4 +1,10 @@
    -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */
    +/*
    +YUI 3.12.0 (build 8655935)
    +Copyright 2013 Yahoo! Inc. All rights reserved.
    +Licensed under the BSD License.
    +http://yuilibrary.com/license/
    +*/
    +
     YUI.add('datatable-core', function (Y, NAME) {
     
     /**
    @@ -913,4 +919,4 @@ Y.mix(Table.prototype, {
     });
     
     
    -}, '3.9.1', {"requires": ["escape", "model-list", "node-event-delegate"]});
    +}, '3.12.0', {"requires": ["escape", "model-list", "node-event-delegate"]});
    diff --git a/lib/yuilib/3.9.1/build/datatable-core/datatable-core-min.js b/lib/yuilib/3.12.0/datatable-core/datatable-core-min.js
    old mode 100644
    new mode 100755
    similarity index 94%
    rename from lib/yuilib/3.9.1/build/datatable-core/datatable-core-min.js
    rename to lib/yuilib/3.12.0/datatable-core/datatable-core-min.js
    index 3a4f2f5de35..44a7aad304c
    --- a/lib/yuilib/3.9.1/build/datatable-core/datatable-core-min.js
    +++ b/lib/yuilib/3.12.0/datatable-core/datatable-core-min.js
    @@ -1,2 +1,8 @@
    -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */
    -YUI.add("datatable-core",function(e,t){var n=e.Attribute.INVALID_VALUE,r=e.Lang,i=r.isFunction,s=r.isObject,o=r.isArray,u=r.isString,a=r.isNumber,f=e.Array,l=e.Object.keys,c;c=e.namespace("DataTable").Core=function(){},c.ATTRS={columns:{validator:o,setter:"_setColumns",getter:"_getColumns"},recordType:{getter:"_getRecordType",setter:"_setRecordType"},data:{valueFn:"_initData",setter:"_setData",lazyAdd:!1},recordset:{setter:"_setRecordset",getter:"_getRecordset",lazyAdd:!1},columnset:{setter:"_setColumnset",getter:"_getColumnset",lazyAdd:!1}},e.mix(c.prototype,{getColumn:function(e){var t,n,r,i,u;s(e)&&!o(e)?t=e:t=this.get("columns."+e);if(t)return t;n=this.get("columns");if(a(e)||o(e)){e=f(e),u=n;for(r=0,i=e.length-1;u&&r8?this._columnMap:e},_getColumnset:function(e,t){return this.get(t.replace(/^columnset/,"columns"))},_getRecordType:function(e){return e||this.data&&this.data.model},_initColumns:function(){var e=this.get("columns")||[],t;!e.length&&this.data.size()&&(t=this.data.item(0),t.toJSON&&(t=t.toJSON()),this.set("columns",l(t))),this._setColumnMap(e)},_initCoreEvents:function(){this._eventHandles.coreAttrChanges=this.after({columnsChange:e.bind("_afterColumnsChange",this),recordTypeChange:e.bind("_afterRecordTypeChange",this),dataChange:e.bind("_afterDataChange",this)})},_initData:function(){var t=this.get("recordType"),n=new e.ModelList;return t&&(n.model=t),n},_initDataProperty:function(t){var n;this.data||(n=this.get("recordType"),t&&t.each&&t.toJSON?(this.data=t,n&&(this.data.model=n)):(this.data=new e.ModelList,n&&(this.data.model=n)),this.data.addTarget(this))},initializer:function(e){var t=e.data,n=e.columns,r;this._initDataProperty(t),n||(r=(e.recordType||e.data===this.data)&&this.get("recordType"),r?n=l(r.ATTRS):o(t)&&t.length&&(n=l(t[0])),n&&this.set("columns",n)),this._initColumns(),this._eventHandles={},this._initCoreEvents()},_setColumnMap:function(e){function n(e){var r,i,s,o;for(r=0,i=e.length;r8?this._columnMap:e},_getColumnset:function(e,t){return this.get(t.replace(/^columnset/,"columns"))},_getRecordType:function(e){return e||this.data&&this.data.model},_initColumns:function(){var e=this.get("columns")||[],t;!e.length&&this.data.size()&&(t=this.data.item(0),t.toJSON&&(t=t.toJSON()),this.set("columns",l(t))),this._setColumnMap(e)},_initCoreEvents:function(){this._eventHandles.coreAttrChanges=this.after({columnsChange:e.bind("_afterColumnsChange",this),recordTypeChange:e.bind("_afterRecordTypeChange",this),dataChange:e.bind("_afterDataChange",this)})},_initData:function(){var t=this.get("recordType"),n=new e.ModelList;return t&&(n.model=t),n},_initDataProperty:function(t){var n;this.data||(n=this.get("recordType"),t&&t.each&&t.toJSON?(this.data=t,n&&(this.data.model=n)):(this.data=new e.ModelList,n&&(this.data.model=n)),this.data.addTarget(this))},initializer:function(e){var t=e.data,n=e.columns,r;this._initDataProperty(t),n||(r=(e.recordType||e.data===this.data)&&this.get("recordType"),r?n=l(r.ATTRS):o(t)&&t.length&&(n=l(t[0])),n&&this.set("columns",n)),this._initColumns(),this._eventHandles={},this._initCoreEvents()},_setColumnMap:function(e){function n(e){var r,i,s,o;for(r=0,i=e.length;r` section of a table. Can be
    +used as the default `footerView` for `Y.DataTable.Base` and `Y.DataTable`
    +classes.
    +
    +@module datatable
    +@submodule datatable-foot
    +@since 3.11.0
    +**/
    +
    +
    +Y.namespace('DataTable').FooterView = Y.Base.create('tableFooter', Y.View, [], {
    +    // -- Instance properties -------------------------------------------------
    +
    +    /**
    +    HTML templates used to create the `` containing the table footers.
    +
    +    @property TFOOT_TEMPLATE
    +    @type {HTML}
    +    @default ''
    +    @since 3.11.0
    +    **/
    +    TFOOT_TEMPLATE: '',
    +
    +    // -- Public methods ------------------------------------------------------
    +
    +    /**
    +    Returns the generated CSS classname based on the input.  If the `host`
    +    attribute is configured, it will attempt to relay to its `getClassName`
    +    or use its static `NAME` property as a string base.
    +
    +    If `host` is absent or has neither method nor `NAME`, a CSS classname
    +    will be generated using this class's `NAME`.
    +
    +    @method getClassName
    +    @param {String} token* Any number of token strings to assemble the
    +        classname from.
    +    @return {String}
    +    @protected
    +    @since 3.11.0
    +    **/
    +    getClassName: function () {
    +        // TODO: add attribute with setter? to host to use property this.host
    +        // for performance
    +        var host = this.host,
    +            NAME = (host && host.constructor.NAME) ||
    +                    this.constructor.NAME;
    +
    +        if (host && host.getClassName) {
    +            return host.getClassName.apply(host, arguments);
    +        } else {
    +            return Y.ClassNameManager.getClassName
    +                .apply(Y.ClassNameManager,
    +                       [NAME].concat(Y.Array(arguments, 0, true)));
    +        }
    +    },
    +
    +    /**
    +    Creates the `` Node and inserts it after the `` Node.
    +
    +    @method render
    +    @return {FooterView} The instance
    +    @chainable
    +    @since 3.11.0
    +    **/
    +    render: function () {
    +        var tfoot    = this.tfootNode ||
    +                        (this.tfootNode = this._createTFootNode());
    +
    +        if (this.host && this.host._theadNode) {
    +            this.host._theadNode.insert(tfoot, 'after');
    +        }
    +
    +        return this;
    +    },
    +
    +    /**
    +    Creates the `` node that will store the footer rows and cells.
    +
    +    @method _createTFootNode
    +    @return {Node}
    +    @protected
    +    @since 3.11.0
    +    **/
    +    _createTFootNode: function () {
    +        return Y.Node.create(Y.Lang.sub(this.TFOOT_TEMPLATE, {
    +            className: this.getClassName('foot')
    +        }));
    +    },
    +
    +    /**
    +    Initializes the instance. Reads the following configuration properties:
    +
    +      * `host`    - The object to serve as source of truth for column info
    +
    +    @method initializer
    +    @param {Object} config Configuration data
    +    @protected
    +    @since 3.11.0
    +    **/
    +    initializer: function (config) {
    +        this.host  = (config && config.host);
    +    }
    +
    +
    +
    +});
    +
    +
    +}, '3.12.0', {"requires": ["datatable-core", "view"]});
    diff --git a/lib/yuilib/3.12.0/datatable-foot/datatable-foot-min.js b/lib/yuilib/3.12.0/datatable-foot/datatable-foot-min.js
    new file mode 100755
    index 00000000000..aa58f1235a9
    --- /dev/null
    +++ b/lib/yuilib/3.12.0/datatable-foot/datatable-foot-min.js
    @@ -0,0 +1,8 @@
    +/*
    +YUI 3.12.0 (build 8655935)
    +Copyright 2013 Yahoo! Inc. All rights reserved.
    +Licensed under the BSD License.
    +http://yuilibrary.com/license/
    +*/
    +
    +YUI.add("datatable-foot",function(e,t){e.namespace("DataTable").FooterView=e.Base.create("tableFooter",e.View,[],{TFOOT_TEMPLATE:'',getClassName:function(){var t=this.host,n=t&&t.constructor.NAME||this.constructor.NAME;return t&&t.getClassName?t.getClassName.apply(t,arguments):e.ClassNameManager.getClassName.apply(e.ClassNameManager,[n].concat(e.Array(arguments,0,!0)))},render:function(){var e=this.tfootNode||(this.tfootNode=this._createTFootNode());return this.host&&this.host._theadNode&&this.host._theadNode.insert(e,"after"),this},_createTFootNode:function(){return e.Node.create(e.Lang.sub(this.TFOOT_TEMPLATE,{className:this.getClassName("foot")}))},initializer:function(e){this.host=e&&e.host}})},"3.12.0",{requires:["datatable-core","view"]});
    diff --git a/lib/yuilib/3.12.0/datatable-foot/datatable-foot.js b/lib/yuilib/3.12.0/datatable-foot/datatable-foot.js
    new file mode 100755
    index 00000000000..77a6a855451
    --- /dev/null
    +++ b/lib/yuilib/3.12.0/datatable-foot/datatable-foot.js
    @@ -0,0 +1,119 @@
    +/*
    +YUI 3.12.0 (build 8655935)
    +Copyright 2013 Yahoo! Inc. All rights reserved.
    +Licensed under the BSD License.
    +http://yuilibrary.com/license/
    +*/
    +
    +YUI.add('datatable-foot', function (Y, NAME) {
    +
    +/**
    +View class responsible for rendering the `` section of a table. Can be
    +used as the default `footerView` for `Y.DataTable.Base` and `Y.DataTable`
    +classes.
    +
    +@module datatable
    +@submodule datatable-foot
    +@since 3.11.0
    +**/
    +
    +
    +Y.namespace('DataTable').FooterView = Y.Base.create('tableFooter', Y.View, [], {
    +    // -- Instance properties -------------------------------------------------
    +
    +    /**
    +    HTML templates used to create the `` containing the table footers.
    +
    +    @property TFOOT_TEMPLATE
    +    @type {HTML}
    +    @default ''
    +    @since 3.11.0
    +    **/
    +    TFOOT_TEMPLATE: '',
    +
    +    // -- Public methods ------------------------------------------------------
    +
    +    /**
    +    Returns the generated CSS classname based on the input.  If the `host`
    +    attribute is configured, it will attempt to relay to its `getClassName`
    +    or use its static `NAME` property as a string base.
    +
    +    If `host` is absent or has neither method nor `NAME`, a CSS classname
    +    will be generated using this class's `NAME`.
    +
    +    @method getClassName
    +    @param {String} token* Any number of token strings to assemble the
    +        classname from.
    +    @return {String}
    +    @protected
    +    @since 3.11.0
    +    **/
    +    getClassName: function () {
    +        // TODO: add attribute with setter? to host to use property this.host
    +        // for performance
    +        var host = this.host,
    +            NAME = (host && host.constructor.NAME) ||
    +                    this.constructor.NAME;
    +
    +        if (host && host.getClassName) {
    +            return host.getClassName.apply(host, arguments);
    +        } else {
    +            return Y.ClassNameManager.getClassName
    +                .apply(Y.ClassNameManager,
    +                       [NAME].concat(Y.Array(arguments, 0, true)));
    +        }
    +    },
    +
    +    /**
    +    Creates the `` Node and inserts it after the `` Node.
    +
    +    @method render
    +    @return {FooterView} The instance
    +    @chainable
    +    @since 3.11.0
    +    **/
    +    render: function () {
    +        var tfoot    = this.tfootNode ||
    +                        (this.tfootNode = this._createTFootNode());
    +
    +        if (this.host && this.host._theadNode) {
    +            this.host._theadNode.insert(tfoot, 'after');
    +        }
    +
    +        return this;
    +    },
    +
    +    /**
    +    Creates the `` node that will store the footer rows and cells.
    +
    +    @method _createTFootNode
    +    @return {Node}
    +    @protected
    +    @since 3.11.0
    +    **/
    +    _createTFootNode: function () {
    +        return Y.Node.create(Y.Lang.sub(this.TFOOT_TEMPLATE, {
    +            className: this.getClassName('foot')
    +        }));
    +    },
    +
    +    /**
    +    Initializes the instance. Reads the following configuration properties:
    +
    +      * `host`    - The object to serve as source of truth for column info
    +
    +    @method initializer
    +    @param {Object} config Configuration data
    +    @protected
    +    @since 3.11.0
    +    **/
    +    initializer: function (config) {
    +        this.host  = (config && config.host);
    +    }
    +
    +
    +
    +});
    +
    +
    +}, '3.12.0', {"requires": ["datatable-core", "view"]});
    diff --git a/lib/yuilib/3.9.1/build/datatable-formatters/datatable-formatters-debug.js b/lib/yuilib/3.12.0/datatable-formatters/datatable-formatters-debug.js
    old mode 100644
    new mode 100755
    similarity index 86%
    rename from lib/yuilib/3.9.1/build/datatable-formatters/datatable-formatters-debug.js
    rename to lib/yuilib/3.12.0/datatable-formatters/datatable-formatters-debug.js
    index caba56aaf85..e7fbbdda151
    --- a/lib/yuilib/3.9.1/build/datatable-formatters/datatable-formatters-debug.js
    +++ b/lib/yuilib/3.12.0/datatable-formatters/datatable-formatters-debug.js
    @@ -1,11 +1,16 @@
    -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */
    +/*
    +YUI 3.12.0 (build 8655935)
    +Copyright 2013 Yahoo! Inc. All rights reserved.
    +Licensed under the BSD License.
    +http://yuilibrary.com/license/
    +*/
    +
     YUI.add('datatable-formatters', function (Y, NAME) {
     
     /**
     Adds predefined cell formatters to `Y.DataTable.BodyView`.
     
    -@module datatable
    -@submodule datatable-formatters
    +@module datatable-formatters
     @since 3.8.0
     **/
     var Lang = Y.Lang,
    @@ -331,11 +336,56 @@ var Lang = Y.Lang,
                     }
                     return fn(value, format);
                 };
    -        }
    +        },
    +        /**
    +        Returns a formatter function that returns texts from a lookup table
    +        based on the stored value.
     
    +        It looks for the translation to apply in the `lookupTable` property of the
    +        column in either of these two formats:
    +
    +            {key: "status", formatter: "lookup", lookupTable: {
    +                0: "unknown",
    +                1: "requested",
    +                2: "approved",
    +                3: "delivered"
    +            }},
    +            {key: "otherStatus", formatter: "lookup", lookupTable: [
    +                {value:0, text: "unknown"},
    +                {value:1, text: "requested"},
    +                {value:2, text: "approved"},
    +                {value:3, text: "delivered"}
    +            ]}
    +
    +        Applies the CSS className `yui3-datatable-lookup` to the cell.
    +
    +        @method lookup
    +        @param col {Object} The column definition
    +        @return {Function} A formatter function that returns the `text`
    +                associated with `value`.
    +        @static
    +         */
    +        lookup: function (col) {
    +            var className = cName('lookup'),
    +                lookup = col.lookupTable || {},
    +                entries, i, len;
    +
    +            if (Lang.isArray(lookup)) {
    +                entries = lookup;
    +                lookup = {};
    +
    +                for (i = 0, len = entries.length; i < len; ++i) {
    +                    lookup[entries[i].value] = entries[i].text;
    +                }
    +            }
    +            return function (o) {
    +                o.className = className;
    +                return lookup[o.value];
    +            };
    +        }
         };
     
     Y.mix(Y.DataTable.BodyView.Formatters, Formatters);
     
     
    -}, '3.9.1', {"requires": ["datatable-body", "datatype-number-format", "datatype-date-format", "escape"]});
    +}, '3.12.0', {"requires": ["datatable-body", "datatype-number-format", "datatype-date-format", "escape"]});
    diff --git a/lib/yuilib/3.9.1/build/datatable-formatters/datatable-formatters-min.js b/lib/yuilib/3.12.0/datatable-formatters/datatable-formatters-min.js
    old mode 100644
    new mode 100755
    similarity index 77%
    rename from lib/yuilib/3.9.1/build/datatable-formatters/datatable-formatters-min.js
    rename to lib/yuilib/3.12.0/datatable-formatters/datatable-formatters-min.js
    index 681639c4c41..a17bc312a7d
    --- a/lib/yuilib/3.9.1/build/datatable-formatters/datatable-formatters-min.js
    +++ b/lib/yuilib/3.12.0/datatable-formatters/datatable-formatters-min.js
    @@ -1,2 +1,8 @@
    -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */
    -YUI.add("datatable-formatters",function(e,t){var n=e.Lang,r=n.isValue,i=e.Escape.html,s=e.ClassNameManager.getClassName,o=function(e){return s("datatable",e)},u=function(e,t){return r(e)?i(e.toString()):t||""},a={button:function(e){var t=o("button"),n="";return e.allowHTML=!0,function(e){return e.className=t,n}},"boolean":function(e){var t=e.booleanLabels||this.get("booleanLabels")||{"true":"true","false":"false"};return function(e){var n=e.value;return!n&&n!==!1?n:(n=n?"true":"false",e.className=o(n),t[n])}},currency:function(t){var n=o("currency"),r=t.currencyFormat||this.get("currencyFormat"),i=e.Number.format;return function(e){e.className=n;var t=parseFloat(e.value);return!t&&t!==0?e.value:i(t,r)}},_date:function(t){var n=o("date"),r=e.Date.format;return t={format:t},function(e){return e.className=n,r(e.value,t)}},date:function(e){return a._date(e.dateFormat||this.get("dateFormat"))},localDate:function(){return a._date("%x")},localTime:function(){return a._date("%X")},localDateTime:function(){return a._date("%c")},email:function(e){var t=o("email"),n=e.linkFrom,r=e.emptyCellValue,i=(this.getColumn(n)||{}).emptyCellValue;return e.allowHTML=!0,function(e){var s=u(e.value,r),o=n?u(e.data[n],i):s;return e.className=t,o?''+s+"":s}},link:function(e){var t=o("link"),n=e.linkFrom,r=e.emptyCellValue,i=(this.getColumn(n)||{}).emptyCellValue;return e.allowHTML=!0,function(e){var s=u(e.value,r),o=n?u(e.data[n],i):s;return e.className=t,o?''+s+"":s}},number:function(t){var n=o("number"),r=t.numberFormat||this.get("numberFormat"),i=e.Number.format;return function(e){e.className=n;var t=parseFloat(e.value);return!t&&t!==0?e.value:i(t,r)}}};e.mix(e.DataTable.BodyView.Formatters,a)},"3.9.1",{requires:["datatable-body","datatype-number-format","datatype-date-format","escape"]});
    +/*
    +YUI 3.12.0 (build 8655935)
    +Copyright 2013 Yahoo! Inc. All rights reserved.
    +Licensed under the BSD License.
    +http://yuilibrary.com/license/
    +*/
    +
    +YUI.add("datatable-formatters",function(e,t){var n=e.Lang,r=n.isValue,i=e.Escape.html,s=e.ClassNameManager.getClassName,o=function(e){return s("datatable",e)},u=function(e,t){return r(e)?i(e.toString()):t||""},a={button:function(e){var t=o("button"),n="";return e.allowHTML=!0,function(e){return e.className=t,n}},"boolean":function(e){var t=e.booleanLabels||this.get("booleanLabels")||{"true":"true","false":"false"};return function(e){var n=e.value;return!n&&n!==!1?n:(n=n?"true":"false",e.className=o(n),t[n])}},currency:function(t){var n=o("currency"),r=t.currencyFormat||this.get("currencyFormat"),i=e.Number.format;return function(e){e.className=n;var t=parseFloat(e.value);return!t&&t!==0?e.value:i(t,r)}},_date:function(t){var n=o("date"),r=e.Date.format;return t={format:t},function(e){return e.className=n,r(e.value,t)}},date:function(e){return a._date(e.dateFormat||this.get("dateFormat"))},localDate:function(){return a._date("%x")},localTime:function(){return a._date("%X")},localDateTime:function(){return a._date("%c")},email:function(e){var t=o("email"),n=e.linkFrom,r=e.emptyCellValue,i=(this.getColumn(n)||{}).emptyCellValue;return e.allowHTML=!0,function(e){var s=u(e.value,r),o=n?u(e.data[n],i):s;return e.className=t,o?''+s+"":s}},link:function(e){var t=o("link"),n=e.linkFrom,r=e.emptyCellValue,i=(this.getColumn(n)||{}).emptyCellValue;return e.allowHTML=!0,function(e){var s=u(e.value,r),o=n?u(e.data[n],i):s;return e.className=t,o?''+s+"":s}},number:function(t){var n=o("number"),r=t.numberFormat||this.get("numberFormat"),i=e.Number.format;return function(e){e.className=n;var t=parseFloat(e.value);return!t&&t!==0?e.value:i(t,r)}},lookup:function(e){var t=o("lookup"),r=e.lookupTable||{},i,s,u;if(n.isArray(r)){i=r,r={};for(s=0,u=i.length;s{content}',ROW_TEMPLATE:"{content}",THEAD_TEMPLATE:'',getClassName:function(){var t=this.host,n=t&&t.constructor.NAME||this.constructor.NAME;return t&&t.getClassName?t.getClassName.apply(t,arguments):e.ClassNameManager.getClassName.apply(e.ClassNameManager,[n].concat(s(arguments,0,!0)))},render:function(){var t=this.get("container"),n=this.theadNode||(this.theadNode=this._createTHeadNode()),i=this.columns,s={_colspan:1,_rowspan:1,abbr:"",title:""},o,u,a,f,l,c,h,p;if(n&&i){c="";if(i.length)for(o=0,u=i.length;o=h){if(r.length>1){o=r[r.length-2],l=o[0][o[1]],l._colspan=0;for(c=0,h=u.length;c=0;--p)l=r[p][0][r[p][1]],a._headers.unshift(l.id);if(f&&f.length){r.push([f,-1]);break}a._rowspan=s-r.length+1}c>=h&&r.pop()}}for(c=0,h=n.length;c{content}',ROW_TEMPLATE:"{content}",THEAD_TEMPLATE:'',getClassName:function(){var t=this.host,n=t&&t.constructor.NAME||this.constructor.NAME;return t&&t.getClassName?t.getClassName.apply(t,arguments):e.ClassNameManager.getClassName.apply(e.ClassNameManager,[n].concat(s(arguments,0,!0)))},render:function(){var t=this.get("container"),n=this.theadNode||(this.theadNode=this._createTHeadNode()),i=this.columns,s={_colspan:1,_rowspan:1,abbr:"",title:""},o,u,a,f,l,c,h,p;if(n&&i){c="";if(i.length)for(o=0,u=i.length;o=h){if(r.length>1){o=r[r.length-2],l=o[0][o[1]],l._colspan=0;for(c=0,h=u.length;c=0;--p)l=r[p][0][r[p][1]],a._headers.unshift(l.id);if(f&&f.length){r.push([f,-1]);break}a._rowspan=s-r.length+1}c>=h&&r.pop()}}for(c=0,h=n.length;c',hideMessage:function(){return this.get("boundingBox").removeClass(this.getClassName("message","visible")),this},showMessage:function(e){var t=this.getString(e)||e;return this._messageNode||this._initMessageNode(),this.get("showMessages")&&(t?(this._messageNode.one("."+this.getClassName("message","content")).setHTML(t),this.get("boundingBox").addClass(this.getClassName("message","visible"))):this.hideMessage()),this},_afterMessageColumnsChange:function(){var e;this._messageNode&&(e=this._messageNode.one("."+this.getClassName("message","content")),e&&e.set("colSpan",this._displayColumns.length))},_afterMessageDataChange:function(){this._uiSetMessage()},_afterShowMessagesChange:function(e){e.newVal?this._uiSetMessage(e):this._messageNode&&(this.get("boundingBox").removeClass(this.getClassName("message","visible")),this._messageNode.remove().destroy(!0),this._messageNode=null)},_bindMessageUI:function(){this.after(["dataChange","*:add","*:remove","*:reset"],e.bind("_afterMessageDataChange",this)),this.after("columnsChange",e.bind("_afterMessageColumnsChange",this)),this.after("showMessagesChange",e.bind("_afterShowMessagesChange",this))},initializer:function(){this._initMessageStrings(),this.get("showMessages")&&this.after("renderBody",e.bind("_initMessageNode",this)),this.after(e.bind("_bindMessageUI",this),this,"bindUI"),this.after(e.bind("_syncMessageUI",this),this,"syncUI")},_initMessageNode:function(){this._messageNode||(this._messageNode=e.Node.create(e.Lang.sub(this.MESSAGE_TEMPLATE,{className:this.getClassName("message"),contentClass:this.getClassName("message","content"),colspan:this._displayColumns.length||1})),this._tableNode.insertBefore(this._messageNode,this._tbodyNode))},_initMessageStrings:function(){this.set("strings",e.mix(this.get("strings")||{},e.Intl.get("datatable-message")))},_syncMessageUI:function(){this._uiSetMessage()},_uiSetMessage:function(e){this.data.size()?this.hideMessage():this.showMessage(e&&e.message||"emptyMessage")}}),e.Lang.isFunction(e.DataTable)&&e.Base.mix(e.DataTable,[n])},"3.9.1",{requires:["datatable-base"],lang:["en","fr","es"],skinnable:!0});
    +/*
    +YUI 3.12.0 (build 8655935)
    +Copyright 2013 Yahoo! Inc. All rights reserved.
    +Licensed under the BSD License.
    +http://yuilibrary.com/license/
    +*/
    +
    +YUI.add("datatable-message",function(e,t){var n;e.namespace("DataTable").Message=n=function(){},n.ATTRS={showMessages:{value:!0,validator:e.Lang.isBoolean}},e.mix(n.prototype,{MESSAGE_TEMPLATE:'',hideMessage:function(){return this.get("boundingBox").removeClass(this.getClassName("message","visible")),this},showMessage:function(e){var t=this.getString(e)||e;return this._messageNode||this._initMessageNode(),this.get("showMessages")&&(t?(this._messageNode.one("."+this.getClassName("message","content")).setHTML(t),this.get("boundingBox").addClass(this.getClassName("message","visible"))):this.hideMessage()),this},_afterMessageColumnsChange:function(){var e;this._messageNode&&(e=this._messageNode.one("."+this.getClassName("message","content")),e&&e.set("colSpan",this._displayColumns.length))},_afterMessageDataChange:function(){this._uiSetMessage()},_afterShowMessagesChange:function(e){e.newVal?this._uiSetMessage(e):this._messageNode&&(this.get("boundingBox").removeClass(this.getClassName("message","visible")),this._messageNode.remove().destroy(!0),this._messageNode=null)},_bindMessageUI:function(){this.after(["dataChange","*:add","*:remove","*:reset"],e.bind("_afterMessageDataChange",this)),this.after("columnsChange",e.bind("_afterMessageColumnsChange",this)),this.after("showMessagesChange",e.bind("_afterShowMessagesChange",this))},initializer:function(){this._initMessageStrings(),this.get("showMessages")&&this.after("table:renderBody",e.bind("_initMessageNode",this)),this.after(e.bind("_bindMessageUI",this),this,"bindUI"),this.after(e.bind("_syncMessageUI",this),this,"syncUI")},_initMessageNode:function(){this._messageNode||(this._messageNode=e.Node.create(e.Lang.sub(this.MESSAGE_TEMPLATE,{className:this.getClassName("message"),contentClass:this.getClassName("message","content"),colspan:this._displayColumns.length||1})),this._tableNode.insertBefore(this._messageNode,this._tbodyNode))},_initMessageStrings:function(){this.set("strings",e.mix(this.get("strings")||{},e.Intl.get("datatable-message")))},_syncMessageUI:function(){this._uiSetMessage()},_uiSetMessage:function(e){this.data.size()?this.hideMessage():this.showMessage(e&&e.message||"emptyMessage")}}),e.Lang.isFunction(e.DataTable)&&e.Base.mix(e.DataTable,[n])},"3.12.0",{requires:["datatable-base"],lang:["en","fr","es","hu","it"],skinnable:!0});
    diff --git a/lib/yuilib/3.9.1/build/datatable-message/datatable-message.js b/lib/yuilib/3.12.0/datatable-message/datatable-message.js
    old mode 100644
    new mode 100755
    similarity index 96%
    rename from lib/yuilib/3.9.1/build/datatable-message/datatable-message.js
    rename to lib/yuilib/3.12.0/datatable-message/datatable-message.js
    index d9fb34bee02..da342975fa3
    --- a/lib/yuilib/3.9.1/build/datatable-message/datatable-message.js
    +++ b/lib/yuilib/3.12.0/datatable-message/datatable-message.js
    @@ -1,4 +1,10 @@
    -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */
    +/*
    +YUI 3.12.0 (build 8655935)
    +Copyright 2013 Yahoo! Inc. All rights reserved.
    +Licensed under the BSD License.
    +http://yuilibrary.com/license/
    +*/
    +
     YUI.add('datatable-message', function (Y, NAME) {
     
     /**
    @@ -196,7 +202,7 @@ Y.mix(Message.prototype, {
             this._initMessageStrings();
     
             if (this.get('showMessages')) {
    -            this.after('renderBody', Y.bind('_initMessageNode', this));
    +            this.after('table:renderBody', Y.bind('_initMessageNode', this));
             }
     
             this.after(Y.bind('_bindMessageUI', this), this, 'bindUI');
    @@ -288,4 +294,4 @@ if (Y.Lang.isFunction(Y.DataTable)) {
     }
     
     
    -}, '3.9.1', {"requires": ["datatable-base"], "lang": ["en", "fr", "es"], "skinnable": true});
    +}, '3.12.0', {"requires": ["datatable-base"], "lang": ["en", "fr", "es", "hu", "it"], "skinnable": true});
    diff --git a/lib/yuilib/3.12.0/datatable-message/lang/datatable-message.js b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message.js
    new file mode 100755
    index 00000000000..e5f0e2dd324
    --- /dev/null
    +++ b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message.js
    @@ -0,0 +1,8 @@
    +/*
    +YUI 3.12.0 (build 8655935)
    +Copyright 2013 Yahoo! Inc. All rights reserved.
    +Licensed under the BSD License.
    +http://yuilibrary.com/license/
    +*/
    +
    +YUI.add("lang/datatable-message",function(e){e.Intl.add("datatable-message","",{emptyMessage:"No data to display",loadingMessage:"Loading..."})},"3.12.0");
    diff --git a/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_en.js b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_en.js
    new file mode 100755
    index 00000000000..0ab1a004ba0
    --- /dev/null
    +++ b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_en.js
    @@ -0,0 +1,8 @@
    +/*
    +YUI 3.12.0 (build 8655935)
    +Copyright 2013 Yahoo! Inc. All rights reserved.
    +Licensed under the BSD License.
    +http://yuilibrary.com/license/
    +*/
    +
    +YUI.add("lang/datatable-message_en",function(e){e.Intl.add("datatable-message","en",{emptyMessage:"No data to display",loadingMessage:"Loading..."})},"3.12.0");
    diff --git a/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_es.js b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_es.js
    new file mode 100755
    index 00000000000..01f986db29a
    --- /dev/null
    +++ b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_es.js
    @@ -0,0 +1,8 @@
    +/*
    +YUI 3.12.0 (build 8655935)
    +Copyright 2013 Yahoo! Inc. All rights reserved.
    +Licensed under the BSD License.
    +http://yuilibrary.com/license/
    +*/
    +
    +YUI.add("lang/datatable-message_es",function(e){e.Intl.add("datatable-message","es",{emptyMessage:"No hay datos que mostrar",loadingMessage:"Cargando..."})},"3.12.0");
    diff --git a/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_fr.js b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_fr.js
    new file mode 100755
    index 00000000000..321c8d216ae
    --- /dev/null
    +++ b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_fr.js
    @@ -0,0 +1,8 @@
    +/*
    +YUI 3.12.0 (build 8655935)
    +Copyright 2013 Yahoo! Inc. All rights reserved.
    +Licensed under the BSD License.
    +http://yuilibrary.com/license/
    +*/
    +
    +YUI.add("lang/datatable-message_fr",function(e){e.Intl.add("datatable-message","fr",{emptyMessage:"Aucune donn\u00e9e \u00e0 afficher",loadingMessage:"Chargement..."})},"3.12.0");
    diff --git a/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_hu.js b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_hu.js
    new file mode 100755
    index 00000000000..fd84ae35f1c
    --- /dev/null
    +++ b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_hu.js
    @@ -0,0 +1,8 @@
    +/*
    +YUI 3.12.0 (build 8655935)
    +Copyright 2013 Yahoo! Inc. All rights reserved.
    +Licensed under the BSD License.
    +http://yuilibrary.com/license/
    +*/
    +
    +YUI.add("lang/datatable-message_hu",function(e){e.Intl.add("datatable-message","hu",{emptyMessage:"Nincs megjelen\u00edthet\u0151 adat",loadingMessage:"Bet\u00f6lt\u00e9s..."})},"3.12.0");
    diff --git a/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_it.js b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_it.js
    new file mode 100755
    index 00000000000..89f42fca68a
    --- /dev/null
    +++ b/lib/yuilib/3.12.0/datatable-message/lang/datatable-message_it.js
    @@ -0,0 +1,8 @@
    +/*
    +YUI 3.12.0 (build 8655935)
    +Copyright 2013 Yahoo! Inc. All rights reserved.
    +Licensed under the BSD License.
    +http://yuilibrary.com/license/
    +*/
    +
    +YUI.add("lang/datatable-message_it",function(e){e.Intl.add("datatable-message","it",{emptyMessage:"Non ci sono dati da mostrare",loadingMessage:"Caricando..."})},"3.12.0");
    diff --git a/lib/yuilib/3.9.1/build/datatable-mutable/datatable-mutable-debug.js b/lib/yuilib/3.12.0/datatable-mutable/datatable-mutable-debug.js
    old mode 100644
    new mode 100755
    similarity index 99%
    rename from lib/yuilib/3.9.1/build/datatable-mutable/datatable-mutable-debug.js
    rename to lib/yuilib/3.12.0/datatable-mutable/datatable-mutable-debug.js
    index a9b482219c9..f6690c7639c
    --- a/lib/yuilib/3.9.1/build/datatable-mutable/datatable-mutable-debug.js
    +++ b/lib/yuilib/3.12.0/datatable-mutable/datatable-mutable-debug.js
    @@ -1,4 +1,10 @@
    -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */
    +/*
    +YUI 3.12.0 (build 8655935)
    +Copyright 2013 Yahoo! Inc. All rights reserved.
    +Licensed under the BSD License.
    +http://yuilibrary.com/license/
    +*/
    +
     YUI.add('datatable-mutable', function (Y, NAME) {
     
     /**
    @@ -633,4 +639,4 @@ Fired by the `moveColumn` method.
     
     
     
    -}, '3.9.1', {"requires": ["datatable-base"]});
    +}, '3.12.0', {"requires": ["datatable-base"]});
    diff --git a/lib/yuilib/3.9.1/build/datatable-mutable/datatable-mutable-min.js b/lib/yuilib/3.12.0/datatable-mutable/datatable-mutable-min.js
    old mode 100644
    new mode 100755
    similarity index 93%
    rename from lib/yuilib/3.9.1/build/datatable-mutable/datatable-mutable-min.js
    rename to lib/yuilib/3.12.0/datatable-mutable/datatable-mutable-min.js
    index 07e7eefe2ef..f7cffbace42
    --- a/lib/yuilib/3.9.1/build/datatable-mutable/datatable-mutable-min.js
    +++ b/lib/yuilib/3.12.0/datatable-mutable/datatable-mutable-min.js
    @@ -1,2 +1,8 @@
    -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */
    -YUI.add("datatable-mutable",function(e,t){var n=e.Array,r=e.Lang,i=r.isString,s=r.isArray,o=r.isObject,u=r.isNumber,a=e.Array.indexOf,f;e.namespace("DataTable").Mutable=f=function(){},f.ATTRS={autoSync:{value:!1,validator:r.isBoolean}},e.mix(f.prototype,{addColumn:function(e,t){i(e)&&(e={key:e});if(e){if(arguments.length<2||!u(t)&&!s(t))t=this.get("columns").length;this.fire("addColumn",{column:e,index:t})}return this},modifyColumn:function(e,t){return i(t)&&(t={key:t}),o(t)&&this.fire("modifyColumn",{column:e,newColumnDef:t}),this},moveColumn:function(e,t){return e!==undefined&&(u(t)||s(t))&&this.fire("moveColumn",{column:e,index:t}),this},removeColumn:function(e){return e!==undefined&&this.fire("removeColumn",{column:e}),this},addRow:function(e,t){var r=t&&"sync"in t?t.sync:this.get("autoSync"),i,s,o,u,a;if(e&&this.data){i=this.data.add.apply(this.data,arguments);if(r){i=n(i),a=n(arguments,1,!0);for(o=0,u=i.length;o-1){u=t;for(f=0,l=i.length-1;u&&fu.lenth&&o-1&&(i.splice(s,1),this.set("columns",n,{originEvent:t})))},initializer:function(){this.publish({addColumn:{defaultFn:e.bind("_defAddColumnFn",this)},removeColumn:{defaultFn:e.bind("_defRemoveColumnFn",this)},moveColumn:{defaultFn:e.bind("_defMoveColumnFn",this)},modifyColumn:{defaultFn:e.bind("_defModifyColumnFn",this)}})}}),f.prototype.addRows=f.prototype.addRow,r.isFunction(e.DataTable)&&e.Base.mix(e.DataTable,[f])},"3.9.1",{requires:["datatable-base"]});
    +/*
    +YUI 3.12.0 (build 8655935)
    +Copyright 2013 Yahoo! Inc. All rights reserved.
    +Licensed under the BSD License.
    +http://yuilibrary.com/license/
    +*/
    +
    +YUI.add("datatable-mutable",function(e,t){var n=e.Array,r=e.Lang,i=r.isString,s=r.isArray,o=r.isObject,u=r.isNumber,a=e.Array.indexOf,f;e.namespace("DataTable").Mutable=f=function(){},f.ATTRS={autoSync:{value:!1,validator:r.isBoolean}},e.mix(f.prototype,{addColumn:function(e,t){i(e)&&(e={key:e});if(e){if(arguments.length<2||!u(t)&&!s(t))t=this.get("columns").length;this.fire("addColumn",{column:e,index:t})}return this},modifyColumn:function(e,t){return i(t)&&(t={key:t}),o(t)&&this.fire("modifyColumn",{column:e,newColumnDef:t}),this},moveColumn:function(e,t){return e!==undefined&&(u(t)||s(t))&&this.fire("moveColumn",{column:e,index:t}),this},removeColumn:function(e){return e!==undefined&&this.fire("removeColumn",{column:e}),this},addRow:function(e,t){var r=t&&"sync"in t?t.sync:this.get("autoSync"),i,s,o,u,a;if(e&&this.data){i=this.data.add.apply(this.data,arguments);if(r){i=n(i),a=n(arguments,1,!0);for(o=0,u=i.length;o-1){u=t;for(f=0,l=i.length-1;u&&fu.lenth&&o-1&&(i.splice(s,1),this.set("columns",n,{originEvent:t})))},initializer:function(){this.publish({addColumn:{defaultFn:e.bind("_defAddColumnFn",this)},removeColumn:{defaultFn:e.bind("_defRemoveColumnFn",this)},moveColumn:{defaultFn:e.bind("_defMoveColumnFn",this)},modifyColumn:{defaultFn:e.bind("_defModifyColumnFn",this)}})}}),f.prototype.addRows=f.prototype.addRow,r.isFunction(e.DataTable)&&e.Base.mix(e.DataTable,[f])},"3.12.0",{requires:["datatable-base"]});
    diff --git a/lib/yuilib/3.9.1/build/datatable-mutable/datatable-mutable.js b/lib/yuilib/3.12.0/datatable-mutable/datatable-mutable.js
    old mode 100644
    new mode 100755
    similarity index 99%
    rename from lib/yuilib/3.9.1/build/datatable-mutable/datatable-mutable.js
    rename to lib/yuilib/3.12.0/datatable-mutable/datatable-mutable.js
    index 102d2bcacbc..74bd231c818
    --- a/lib/yuilib/3.9.1/build/datatable-mutable/datatable-mutable.js
    +++ b/lib/yuilib/3.12.0/datatable-mutable/datatable-mutable.js
    @@ -1,4 +1,10 @@
    -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */
    +/*
    +YUI 3.12.0 (build 8655935)
    +Copyright 2013 Yahoo! Inc. All rights reserved.
    +Licensed under the BSD License.
    +http://yuilibrary.com/license/
    +*/
    +
     YUI.add('datatable-mutable', function (Y, NAME) {
     
     /**
    @@ -628,4 +634,4 @@ Fired by the `moveColumn` method.
     
     
     
    -}, '3.9.1', {"requires": ["datatable-base"]});
    +}, '3.12.0', {"requires": ["datatable-base"]});
    diff --git a/lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates-debug.js b/lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates-debug.js
    new file mode 100755
    index 00000000000..6f4f8ef4f9c
    --- /dev/null
    +++ b/lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates-debug.js
    @@ -0,0 +1,93 @@
    +/*
    +YUI 3.12.0 (build 8655935)
    +Copyright 2013 Yahoo! Inc. All rights reserved.
    +Licensed under the BSD License.
    +http://yuilibrary.com/license/
    +*/
    +
    +YUI.add('datatable-paginator-templates', function (Y, NAME) {
    +
    +var engine = new Y.Template(),
    +
    +/*
    +{
    +    wrapperClass,
    +    numOfCols
    +}
    +*/
    +rowWrapper = '',
    +
    +/*
    +{
    +    classNames: {}
    +}
    +*/
    +content = '<%= buttons %><%= this.classNames.gotoPage %>' +
    +          '<%= this.classNames.perPage %>',
    +
    +/*
    +{
    +    classNames: {},
    +    type,
    +    label
    +}
    +*/
    +button = '',
    +
    +/*
    +{
    +    classNames,
    +    buttons: [
    +        { type, label }
    +    ]
    +}
    +*/
    +buttons = '
    ' + + '<%== this.buttons %>' + + '
    ', + +/* +{ + classNames, + strings, + page +} +*/ +gotoPage = '
    ' + + '' + + '
    ', + +/* +{ + classNames, + strings, + options +} +*/ +perPage = '
    ' + + '
    '; + + + + +Y.namespace('DataTable.Templates').Paginator = { + rowWrapper: engine.compile(rowWrapper), + button: engine.compile(button), + content: engine.compile(content), + buttons: engine.compile(buttons), + gotoPage: engine.compile(gotoPage), + perPage: engine.compile(perPage) +}; + +}, '3.12.0', {"requires": ["template"]}); diff --git a/lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates-min.js b/lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates-min.js new file mode 100755 index 00000000000..39647f8e502 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datatable-paginator-templates",function(e,t){var n=new e.Template,r='',i="<%= buttons %><%= this.classNames.gotoPage %><%= this.classNames.perPage %>",s='',o='
    <%== this.buttons %>
    ',u='
    ',a='
    ';e.namespace("DataTable.Templates").Paginator={rowWrapper:n.compile(r),button:n.compile(s),content:n.compile(i),buttons:n.compile(o),gotoPage:n.compile(u),perPage:n.compile(a)}},"3.12.0",{requires:["template"]}); diff --git a/lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates.js b/lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates.js new file mode 100755 index 00000000000..6f4f8ef4f9c --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator-templates/datatable-paginator-templates.js @@ -0,0 +1,93 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('datatable-paginator-templates', function (Y, NAME) { + +var engine = new Y.Template(), + +/* +{ + wrapperClass, + numOfCols +} +*/ +rowWrapper = '', + +/* +{ + classNames: {} +} +*/ +content = '<%= buttons %><%= this.classNames.gotoPage %>' + + '<%= this.classNames.perPage %>', + +/* +{ + classNames: {}, + type, + label +} +*/ +button = '', + +/* +{ + classNames, + buttons: [ + { type, label } + ] +} +*/ +buttons = '
    ' + + '<%== this.buttons %>' + + '
    ', + +/* +{ + classNames, + strings, + page +} +*/ +gotoPage = '
    ' + + '' + + '
    ', + +/* +{ + classNames, + strings, + options +} +*/ +perPage = '
    ' + + '
    '; + + + + +Y.namespace('DataTable.Templates').Paginator = { + rowWrapper: engine.compile(rowWrapper), + button: engine.compile(button), + content: engine.compile(content), + buttons: engine.compile(buttons), + gotoPage: engine.compile(gotoPage), + perPage: engine.compile(perPage) +}; + +}, '3.12.0', {"requires": ["template"]}); diff --git a/lib/yuilib/3.12.0/datatable-paginator/assets/datatable-paginator-core.css b/lib/yuilib/3.12.0/datatable-paginator/assets/datatable-paginator-core.css new file mode 100755 index 00000000000..855f10b9e43 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator/assets/datatable-paginator-core.css @@ -0,0 +1,65 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-paginator-wrapper { + border: none; + padding: 0; +} +.yui3-datatable-paginator { + padding: 3px; + white-space: nowrap; +} +.yui3-datatable-paginator .yui3-paginator-content { + position: relative; +} +.yui3-datatable-paginator .yui3-paginator-page-select { + position: absolute; + right: 0; + top: 0; +} +.yui3-datatable-paginator .yui3-datatable-paginator-group { + display: inline-block; + zoom: 1; *display: inline; +} +.yui3-datatable-paginator .yui3-datatable-paginator-control { + display: inline-block; + zoom: 1; *display: inline; + margin: 0 3px; + padding: 0 0.2em; + text-align: center; + text-decoration: none; + line-height: 1.5; + border: 1px solid transparent; + border-radius: 3px; + background: transparent; +} +.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled, +.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled:hover { + cursor: default; +} +.yui3-datatable-paginator .yui3-datatable-paginator-group input { + width: 3em; +} +.yui3-datatable-paginator form { + text-align: center; + margin: 0 2em; +} +.yui3-datatable-paginator .yui3-datatable-paginator-per-page { + text-align: right; +} +/* FOR USE WHEN DISPLAYING ICONS +.yui3-datatable-paginator .control-first, +.yui3-datatable-paginator .control-last, +.yui3-datatable-paginator .control-prev, +.yui3-datatable-paginator .control-next { + text-indent: -999px; + direction: ltr; + overflow: hidden; + position: relative; + width: 1em; +} +*/ \ No newline at end of file diff --git a/lib/yuilib/3.12.0/datatable-paginator/assets/skins/night/datatable-paginator-skin.css b/lib/yuilib/3.12.0/datatable-paginator/assets/skins/night/datatable-paginator-skin.css new file mode 100755 index 00000000000..beb4296286f --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator/assets/skins/night/datatable-paginator-skin.css @@ -0,0 +1,42 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-paginator { + background: white url(../../../../assets/skins/night/sprite.png) repeat-x 0 0; + background-image: -webkit-linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: -moz-linear-gradient(top, transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: -ms-linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: -o-linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control { + color: #242D42; +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control-first:hover, +.yui3-datatable-paginator .yui3-datatable-paginator-control-last:hover, +.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:hover, +.yui3-datatable-paginator .yui3-datatable-paginator-control-next:hover { + box-shadow: 0 1px 2px #292442; +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control-first:active, +.yui3-datatable-paginator .yui3-datatable-paginator-control-last:active, +.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:active, +.yui3-datatable-paginator .yui3-datatable-paginator-control-next:active { + box-shadow: inset 0 1px 1px #292442; + background: #E0DEED; + background: hsla(250, 30%, 90%, 0.3); +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled, +.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled:hover { + color: #BDC7DB; + border-color: transparent; + box-shadow: none; +} \ No newline at end of file diff --git a/lib/yuilib/3.12.0/datatable-paginator/assets/skins/night/datatable-paginator.css b/lib/yuilib/3.12.0/datatable-paginator/assets/skins/night/datatable-paginator.css new file mode 100755 index 00000000000..389f3a7274b --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator/assets/skins/night/datatable-paginator.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-paginator-wrapper{border:0;padding:0}.yui3-datatable-paginator{padding:3px;white-space:nowrap}.yui3-datatable-paginator .yui3-paginator-content{position:relative}.yui3-datatable-paginator .yui3-paginator-page-select{position:absolute;right:0;top:0}.yui3-datatable-paginator .yui3-datatable-paginator-group{display:inline-block;zoom:1;*display:inline}.yui3-datatable-paginator .yui3-datatable-paginator-control{display:inline-block;zoom:1;*display:inline;margin:0 3px;padding:0 .2em;text-align:center;text-decoration:none;line-height:1.5;border:1px solid transparent;border-radius:3px;background:transparent}.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled,.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled:hover{cursor:default}.yui3-datatable-paginator .yui3-datatable-paginator-group input{width:3em}.yui3-datatable-paginator form{text-align:center;margin:0 2em}.yui3-datatable-paginator .yui3-datatable-paginator-per-page{text-align:right}.yui3-datatable-paginator{background:white url(../../../../assets/skins/night/sprite.png) repeat-x 0 0;background-image:-webkit-linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));background-image:-moz-linear-gradient(top,transparent 40%,hsla(0,0%,0%,0.21));background-image:-ms-linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));background-image:-o-linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));background-image:linear-gradient(transparent 40%,hsla(0,0%,0%,0.21))}.yui3-datatable-paginator .yui3-datatable-paginator-control{color:#242d42}.yui3-datatable-paginator .yui3-datatable-paginator-control-first:hover,.yui3-datatable-paginator .yui3-datatable-paginator-control-last:hover,.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:hover,.yui3-datatable-paginator .yui3-datatable-paginator-control-next:hover{box-shadow:0 1px 2px #292442}.yui3-datatable-paginator .yui3-datatable-paginator-control-first:active,.yui3-datatable-paginator .yui3-datatable-paginator-control-last:active,.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:active,.yui3-datatable-paginator .yui3-datatable-paginator-control-next:active{box-shadow:inset 0 1px 1px #292442;background:#e0deed;background:hsla(250,30%,90%,0.3)}.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled,.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled:hover{color:#bdc7db;border-color:transparent;box-shadow:none}#yui3-css-stamp.skin-night-datatable-paginator{display:none} diff --git a/lib/yuilib/3.12.0/datatable-paginator/assets/skins/sam/datatable-paginator-skin.css b/lib/yuilib/3.12.0/datatable-paginator/assets/skins/sam/datatable-paginator-skin.css new file mode 100755 index 00000000000..4826275c653 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator/assets/skins/sam/datatable-paginator-skin.css @@ -0,0 +1,43 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-paginator { + background: white url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0; + background-image: -webkit-linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: -moz-linear-gradient(top, transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: -ms-linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: -o-linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + background-image: linear-gradient(transparent 40%, hsla(0, 0%, 0%, 0.21)); + border-color: #cbcbcb; +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control { + color: #242D42; +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control-first:hover, +.yui3-datatable-paginator .yui3-datatable-paginator-control-last:hover, +.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:hover, +.yui3-datatable-paginator .yui3-datatable-paginator-control-next:hover { + box-shadow: 0 1px 2px #292442; +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control-first:active, +.yui3-datatable-paginator .yui3-datatable-paginator-control-last:active, +.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:active, +.yui3-datatable-paginator .yui3-datatable-paginator-control-next:active { + box-shadow: inset 0 1px 1px #292442; + background: #E0DEED; + background: hsla(250, 30%, 90%, 0.3); +} + +.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled, +.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled:hover { + color: #BDC7DB; + border-color: transparent; + box-shadow: none; +} \ No newline at end of file diff --git a/lib/yuilib/3.12.0/datatable-paginator/assets/skins/sam/datatable-paginator.css b/lib/yuilib/3.12.0/datatable-paginator/assets/skins/sam/datatable-paginator.css new file mode 100755 index 00000000000..617c6f74782 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator/assets/skins/sam/datatable-paginator.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-paginator-wrapper{border:0;padding:0}.yui3-datatable-paginator{padding:3px;white-space:nowrap}.yui3-datatable-paginator .yui3-paginator-content{position:relative}.yui3-datatable-paginator .yui3-paginator-page-select{position:absolute;right:0;top:0}.yui3-datatable-paginator .yui3-datatable-paginator-group{display:inline-block;zoom:1;*display:inline}.yui3-datatable-paginator .yui3-datatable-paginator-control{display:inline-block;zoom:1;*display:inline;margin:0 3px;padding:0 .2em;text-align:center;text-decoration:none;line-height:1.5;border:1px solid transparent;border-radius:3px;background:transparent}.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled,.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled:hover{cursor:default}.yui3-datatable-paginator .yui3-datatable-paginator-group input{width:3em}.yui3-datatable-paginator form{text-align:center;margin:0 2em}.yui3-datatable-paginator .yui3-datatable-paginator-per-page{text-align:right}.yui3-datatable-paginator{background:white url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;background-image:-webkit-linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));background-image:-moz-linear-gradient(top,transparent 40%,hsla(0,0%,0%,0.21));background-image:-ms-linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));background-image:-o-linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));background-image:linear-gradient(transparent 40%,hsla(0,0%,0%,0.21));border-color:#cbcbcb}.yui3-datatable-paginator .yui3-datatable-paginator-control{color:#242d42}.yui3-datatable-paginator .yui3-datatable-paginator-control-first:hover,.yui3-datatable-paginator .yui3-datatable-paginator-control-last:hover,.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:hover,.yui3-datatable-paginator .yui3-datatable-paginator-control-next:hover{box-shadow:0 1px 2px #292442}.yui3-datatable-paginator .yui3-datatable-paginator-control-first:active,.yui3-datatable-paginator .yui3-datatable-paginator-control-last:active,.yui3-datatable-paginator .yui3-datatable-paginator-control-prev:active,.yui3-datatable-paginator .yui3-datatable-paginator-control-next:active{box-shadow:inset 0 1px 1px #292442;background:#e0deed;background:hsla(250,30%,90%,0.3)}.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled,.yui3-datatable-paginator .yui3-datatable-paginator-control-disabled:hover{color:#bdc7db;border-color:transparent;box-shadow:none}#yui3-css-stamp.skin-sam-datatable-paginator{display:none} diff --git a/lib/yuilib/3.12.0/datatable-paginator/datatable-paginator-debug.js b/lib/yuilib/3.12.0/datatable-paginator/datatable-paginator-debug.js new file mode 100755 index 00000000000..1d4369e4388 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator/datatable-paginator-debug.js @@ -0,0 +1,932 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('datatable-paginator', function (Y, NAME) { + +/** + Adds support for paging through data in the DataTable. + + @module datatable + @submodule datatable-paginator + @since 3.11.0 + */ + +var Model, + View, + PaginatorTemplates = Y.DataTable.Templates.Paginator, + sub = Y.Lang.sub, + getClassName = Y.ClassNameManager.getClassName, + CLASS_DISABLED = getClassName(NAME, 'control-disabled'), + EVENT_UI = 'paginator:ui'; + + +/** + @class DataTable.Paginator.Model + @extends Model + @since 3.11.0 + */ +Model = Y.Base.create('dt-pg-model', Y.Model, [Y.Paginator.Core]), + +/** + @class DataTable.Paginator.View + @extends View + @since 3.11.0 + */ +View = Y.Base.create('dt-pg-view', Y.View, [], { + /** + Array of event handles to keep track of what should be destroyed later + @protected + @property _eventHandles + @type {Array} + @since 3.11.0 + */ + _eventHandles: [], + + /** + Template for this view's container. + @property containerTemplate + @type {String} + @default '
    ' + @since 3.11.0 + */ + containerTemplate: '
    ', + + /** + Template for content. Helps maintain order of controls. + @property contentTemplate + @type {String} + @default '{buttons}{goto}{perPage}' + @since 3.11.0 + */ + contentTemplate: '{buttons}{goto}{perPage}', + + /** + Disables ad-hoc ATTRS for our view. + @protected + @property _allowAdHocAttrs + @type {Boolean} + @default false + @since 3.11.0 + */ + _allowAdHocAttrs: false, + + /** + Sets classnames on the templates and bind events + @method initializer + @since 3.11.0 + */ + initializer: function () { + this.containerTemplate = sub(this.containerTemplate, { + paginator: getClassName(NAME) + }); + + this._initStrings(); + this._initClassNames(); + + this.attachEvents(); + }, + + /** + @method render + @chainable + @since 3.11.0 + */ + render: function () { + var model = this.get('model'), + content = sub(this.contentTemplate, { + 'buttons': this._buildButtonsGroup(), + 'goto': this._buildGotoGroup(), + 'perPage': this._buildPerPageGroup() + }); + + this.get('container').append(content); + this.attachEvents(); + + this._rendered = true; + + this._updateControlsUI(model.get('page')); + this._updateItemsPerPageUI(model.get('itemsPerPage')); + + return this; + }, + + /** + @method attachEvents + @since 3.11.0 + */ + attachEvents: function () { + View.superclass.attachEvents.apply(this, arguments); + + var container = this.get('container'); + + if (!this.classNames) { + this._initClassNames(); + } + + this._attachedViewEvents.push( + container.delegate('click', this._controlClick, '.' + this.classNames.control, this), + this.get('model').after('change', this._modelChange, this) + ); + + container.all('form').each(Y.bind(function (frm) { + this._attachedViewEvents.push( + frm.after('submit', this._controlSubmit, this) + ); + }, this)); + + container.all('select').each(Y.bind(function (sel) { + this._attachedViewEvents.push( + sel.after('change', this._controlChange, this) + ); + }, this)); + + }, + + /** + Returns a string built from the button and buttons templates. + @protected + @method _buildButtonsGroup + @return {String} + @since 3.11.0 + */ + _buildButtonsGroup: function () { + var strings = this.get('strings'), + classNames = this.classNames, + buttons; + + buttons = PaginatorTemplates.button({ + type: 'first', label: strings.first, classNames: classNames + }) + + PaginatorTemplates.button({ + type: 'prev', label: strings.prev, classNames: classNames + }) + + PaginatorTemplates.button({ + type: 'next', label: strings.next, classNames: classNames + }) + + PaginatorTemplates.button({ + type: 'last', label: strings.last, classNames: classNames + }); + + return PaginatorTemplates.buttons({ + classNames: classNames, + buttons: buttons + }); + + }, + + /** + Returns a string built from the gotoPage template. + @protected + @method _buildGotoGroup + @return {String} + @since 3.11.0 + */ + _buildGotoGroup: function () { + + return PaginatorTemplates.gotoPage({ + classNames: this.classNames, + strings: this.get('strings'), + page: this.get('model').get('page') + }); + }, + + /** + Returns a string built from the perPage template + @protected + @method _buildPerPageGroup + @return {String} + @since 3.11.0 + */ + _buildPerPageGroup: function () { + var options = this.get('pageSizes'), + rowsPerPage = this.get('model').get('rowsPerPage'), + option, + len, + i; + + for (i = 0, len = options.length; i < len; i++ ) { + option = options[i]; + + if (typeof option !== 'object') { + option = { + value: option, + label: option + }; + } + option.selected = (option.value === rowsPerPage) ? ' selected' : ''; + } + + return PaginatorTemplates.perPage({ + classNames: this.classNames, + strings: this.get('strings'), + options: this.get('pageSizes') + }); + + }, + + /** + Update the UI after the model has changed. + @protected + @method _modelChange + @param {EventFacade} e + @since 3.11.0 + */ + _modelChange: function (e) { + var changed = e.changed, + page = (changed && changed.page), + itemsPerPage = (changed && changed.itemsPerPage); + + if (page) { + this._updateControlsUI(page.newVal); + } + if (itemsPerPage) { + this._updateItemsPerPageUI(itemsPerPage.newVal); + if (!page) { + this._updateControlsUI(e.target.get('page')); + } + } + + }, + + /** + Updates the button controls and the gotoPage form + @protected + @method _updateControlsUI + @param {Number} val Page number to set the UI input to + @since 3.11.0 + */ + _updateControlsUI: function (val) { + if (!this._rendered) { + return; + } + + var model = this.get('model'), + controlClass = '.' + this.classNames.control, + container = this.get('container'), + hasPrev = model.hasPrevPage(), + hasNext = model.hasNextPage(); + + container.one(controlClass + '-first') + .toggleClass(CLASS_DISABLED, !hasPrev) + .set('disabled', !hasPrev); + + container.one(controlClass + '-prev') + .toggleClass(CLASS_DISABLED, !hasPrev) + .set('disabled', !hasPrev); + + container.one(controlClass + '-next') + .toggleClass(CLASS_DISABLED, !hasNext) + .set('disabled', !hasNext); + + container.one(controlClass + '-last') + .toggleClass(CLASS_DISABLED, !hasNext) + .set('disabled', !hasNext); + + container.one('form input').set('value', val); + }, + + /** + Updates the drop down select for items per page + @protected + @method _updateItemsPerPageUI + @param {Number} val Number of items to display per page + @since 3.11.0 + */ + _updateItemsPerPageUI: function (val) { + if (!this._rendered) { + return; + } + + this.get('container').one('select').set('value', val); + }, + + /** + Fire EVENT_UI when an enabled control button is clicked + @protected + @method _controlClick + @param {EventFacade} e + @since 3.11.0 + */ + _controlClick: function (e) { // buttons + e.preventDefault(); + var control = e.currentTarget; + // register click events from the four control buttons + if (control.hasClass(CLASS_DISABLED)) { + return; + } + this.fire(EVENT_UI, { + type: control.getData('type'), + val: control.getData('page') || null + }); + }, + + /** + Fire EVENT_UI with `type:perPage` after the select drop down changes + @protected + @method _controlChange + @param {EventFacade} e + @since 3.11.0 + */ + _controlChange: function (e) { + + // register change events from the perPage select + if ( e.target.hasClass(CLASS_DISABLED) ) { + return; + } + + val = e.target.get('value'); + this.fire(EVENT_UI, { type: 'perPage', val: parseInt(val, 10) }); + }, + + /** + Fire EVENT_UI with `type:page` after form is submitted + @protected + @method _controlSubmit + @param {EventFacade} e + @since 3.11.0 + */ + _controlSubmit: function (e) { + if ( e.target.hasClass(CLASS_DISABLED) ) { + return; + } + + // the only form we have is the go to page form + e.preventDefault(); + + input = e.target.one('input'); + this.fire(EVENT_UI, { type: 'page', val: input.get('value') }); + }, + + /** + Initializes classnames to be used with the templates + @protected + @method _initClassNames + @since 3.11.0 + */ + _initClassNames: function () { + this.classNames = { + control: getClassName(NAME, 'control'), + controls: getClassName(NAME, 'controls'), + group: getClassName(NAME, 'group'), + perPage: getClassName(NAME, 'per-page') + }; + }, + + /** + Initializes strings used for internationalization + @protected + @method _initStrings + @since 3.11.0 + */ + _initStrings: function () { + // Not a valueFn because other class extensions may want to add to it + this.set('strings', Y.mix((this.get('strings') || {}), + Y.Intl.get('datatable-paginator'))); + } +}, { + ATTRS: { + /** + Array of values used to populate the drop down for items per page + @attribute pageSizes + @type {Array} + @default [ 10, 50, 100, { label: 'Show All', value: -1 } ] + @since 3.11.0 + */ + pageSizes: { + value: [ 10, 50, 100, { label: 'Show All', value: -1 } ] + }, + + /** + Model used for this view + @attribute model + @type {Y.Model} + @default null + @since 3.11.0 + */ + model: {} + } +}); + +/** + @class DataTable.Paginator + @since 3.11.0 + */ +function Controller () {} + +Controller.ATTRS = { + /** + A model instance or a configuration object for the Model. + @attribute paginatorModel + @type {Y.Model | Object} + @default null + @since 3.11.0 + */ + paginatorModel: { + setter: '_setPaginatorModel', + value: null, + writeOnce: 'initOnly' + }, + + /** + A pointer to a Model object to be instantiated, or a String off of the + `Y` namespace. + + This is only used if the `pagiantorModel` is a configuration object or + is null. + @attribute paginatorModelType + @type {Y.Model | String} + @default 'DataTable.Paginator.Model' + @since 3.11.0 + */ + paginatorModelType: { + getter: '_getConstructor', + value: 'DataTable.Paginator.Model', + writeOnce: 'initOnly' + }, + + /** + A pointer to a `Y.View` object to be instantiated. A new view will be + created for each location provided. Each view created will be given the + same model instance. + @attribute paginatorView + @type {Y.View | String} + @default 'DataTable.Paginator.View' + @since 3.11.0 + */ + paginatorView: { + getter: '_getConstructor', + value: 'DataTable.Paginator.View', + writeOnce: 'initOnly' + }, + + // PAGINATOR CONFIGS + /** + Array of values used to populate the values in the Paginator UI allowing + the end user to select the number of items to display per page. + @attribute pageSizes + @type {Array} + @default [10, 50, 100, { label: 'Show All', value: -1 }] + @since 3.11.0 + */ + pageSizes: { + setter: '_setPageSizesFn', + value: [10, 50, 100, { label: 'Show All', value: -1 }] + }, + + /** + Number of rows to display per page. As the UI changes the number of pages + to display, this will update to reflect the value selected in the UI + @attribute rowsPerPage + @type {Number | null} + @default null + @since 3.11.0 + */ + rowsPerPage: { + value: null + }, + + /** + String of `footer` or `header`, a Y.Node, or an Array or any combination + of those values. + @attribute paginatorLocation + @type {String | Array | Y.Node} + @default footer + @since 3.11.0 + */ + paginatorLocation: { + value: 'footer' + } +}; + +Y.mix(Controller.prototype, { + /** + Sets the `paginatorModel` to the first page. + @method firstPage + @chainable + @since 3.11.0 + */ + firstPage: function () { + this.get('paginatorModel').set('page', 1); + return this; + }, + + /** + Sets the `paginatorModel` to the last page. + @method lastPage + @chainable + @since 3.11.0 + */ + lastPage: function () { + var model = this.get('paginatorModel'); + model.set('page', model.get('totalPages')); + return this; + }, + + /** + Sets the `paginatorModel` to the previous page. + @method previousPage + @chainable + @since 3.11.0 + */ + previousPage: function () { + this.get('paginatorModel').prevPage(); + return this; + }, + + /** + Sets the `paginatorModel` to the next page. + @method nextPage + @chainable + @since 3.11.0 + */ + nextPage: function () { + this.get('paginatorModel').nextPage(); + return this; + }, + + + /// Init and protected + /** + Constructor logic + @protected + @method initializer + @since 3.11.0 + */ + initializer: function () { + // allow DT to use paged data + this._augmentData(); + + if (!this._eventHandles.paginatorRender) { + this._eventHandles.paginatorRender = Y.Do.after(this._paginatorRender, this, 'render'); + } + }, + + /** + Renders the paginator into locations and attaches events. + @protected + @method _paginatorRender + @since 3.11.0 + */ + _paginatorRender: function () { + var model = this.get('paginatorModel'); + + this._paginatorRenderUI(); + model.after('change', this._afterPaginatorModelChange, this); + this.after('dataChange', this._afterDataChangeWithPaginator, this); + this.after('rowsPerPageChange', this._afterRowsPerPageChange, this); + + // ensure our model has the correct totalItems set + model.set('itemsPerPage', this.get('rowsPerPage')); + model.set('totalItems', this.get('data').size()); + }, + + /** + After the data changes, we ensure we are on the first page and the data + is augmented + @protected + @method _afterDataChangeWithPaginator + @since 3.11.0 + */ + _afterDataChangeWithPaginator: function () { + var data = this.get('data'), + model = this.get('paginatorModel'); + + if (model.get('page') !== 1) { + this.firstPage(); + } else { + this._augmentData(); + + data.fire.call(data, 'reset', { + src: 'reset', + models: data._items.concat() + }); + } + }, + + /** + After the rowsPerPage changes, update the UI to reflect the new number of + rows to be displayed. If the new value is `null`, destroy all instances + of the paginators. + @protected + @method _afterRowsPerPageChange + @param {EventFacade} e + @since 3.11.0 + */ + _afterRowsPerPageChange: function (e) { + var data = this.get('data'), + model = this.get('paginatorModel'), + view; + + if (e.newVal !== null) { + // turning on + this._paginatorRenderUI(); + + if (!(data._paged)) { + this._augmentData(); + } + + data._paged.index = (model.get('page') - 1) * model.get('itemsPerPage'); + data._paged.length = model.get('itemsPerPage'); + + } else { // e.newVal === null + // destroy! + while(this._pgViews.length) { + view = this._pgViews.shift(); + view.destroy({ remove: true }); + view._rendered = null; + } + + data._paged.index = 0; + data._paged.length = null; + } + + this.get('paginatorModel').set('itemsPerPage', parseInt(e.newVal, 10)); + }, + + /** + Parse each location and render a new view into each area. + @protected + @method _paginatorRenderUI + @since 3.11.0 + */ + _paginatorRenderUI: function () { + if (!this.get('rowsPerPage')) { + return; + } + var views = this._pgViews, + ViewClass = this.get('paginatorView'), + viewConfig = { + pageSizes: this.get('pageSizes'), + model: this.get('paginatorModel') + }, + locations = this.get('paginatorLocation'); + + if (!Y.Lang.isArray(locations)) { + locations = [locations]; + } + + if (!views) { // set up initial rendering of views + views = this._pgViews = []; + } + + // for each placement area, push to views + Y.Array.each(locations, function (location) { + var view = new ViewClass(viewConfig), + container = view.render().get('container'), + row; + + view.after('*:ui', this._uiPgHandler, this); + views.push(view); + + if (location._node) { // assume Y.Node + location.append(container); + // remove this container row if the view is ever destroyed + this.after('destroy', function (/* e */) { + view.destroy({ remove: true }); + }); + } else if (location === 'footer') { // DT Footer + // Render a table footer if there isn't one + if (!this.foot) { + this.foot = new Y.DataTable.FooterView({ host: this }); + this.foot.render(); + this.fire('renderFooter', { view: this.foot }); + } + + // create a row for the paginator to sit in + row = Y.Node.create(PaginatorTemplates.rowWrapper({ + wrapperClass: getClassName(NAME, 'wrapper'), + numOfCols: this.get('columns').length + })); + + row.one('td').append(container); + this.foot.tfootNode.append(row); + + // remove this container row if the view is ever destroyed + view.after('destroy', function (/* e */) { + row.remove(true); + }); + } else if (location === 'header') { + // 'header' means insert before the table + // placement with the caption may need to be addressed + if (this.view && this.view.tableNode) { + this.view.tableNode.insert(container, 'before'); + } else { + this.get('contentBox').prepend(container); + } + } + }, this); + + }, + + /** + Handles the paginator's UI event into a single location. Updates the + `paginatorModel` according to what type is provided. + @protected + @method _uiPgHandler + @param {EventFacade} e + @since 3.11.0 + */ + _uiPgHandler: function (e) { + // e.type = control type (first|prev|next|last|page|perPage) + // e.val = value based on the control type to pass to the model + var model = this.get('paginatorModel'); + + switch (e.type) { + case 'first': + model.set('page', 1); + break; + case 'last': + model.set('page', model.get('totalPages')); + break; + case 'prev': + case 'next': // overflow intentional + model[e.type + 'Page'](); + break; + case 'page': + model.set('page', e.val); + break; + case 'perPage': + model.set('itemsPerPage', e.val); + model.set('page', 1); + break; + } + }, + + /** + Augments the model list with a paged structure, or updates the paged + data. Then fires reset on the model list. + @protected + @method _afterPaginatorModelChange + @param {EventFacade} [e] + @since 3.11.0 + */ + _afterPaginatorModelChange: function () { + var model = this.get('paginatorModel'), + data = this.get('data'); + + if (!data._paged) { + this._augmentData(); + } else { + data._paged.index = (model.get('page') - 1) * model.get('itemsPerPage'); + data._paged.length = model.get('itemsPerPage'); + } + + data.fire.call(data, 'reset', { + src: 'reset', + models: data._items.concat() + }); + }, + + /** + Augments the model list data structure with paged implementations. + + The model list will contain a method for `getPage` that will return the + given number of items listed within the range. + + `each` will also loop over the items in the page + @protected + @method _augmentData + @since 3.11.0 + */ + _augmentData: function () { + var model = this.get('paginatorModel'); + + if (this.get('rowsPerPage') === null) { + return; + } + + Y.mix(this.get('data'), { + + _paged: { + index: (model.get('page') - 1) * model.get('itemsPerPage'), + length: model.get('itemsPerPage') + }, + + getPage: function () { + var _pg = this._paged, + min = _pg.index; + + // IE LTE 8 doesn't allow "undefined" as a second param - gh890 + return (_pg.length >= 0) ? + this._items.slice(min, min + _pg.length) : + this._items.slice(min); + }, + + size: function (paged) { + return (paged && this._paged.length >=0 ) ? + this._paged.length : + this._items.length; + }, + + each: function () { + var args = Array.prototype.slice.call(arguments); + args.unshift(this.getPage()); + + Y.Array.each.apply(null, args); + + return this; + } + }, true); + }, + + /** + Ensures `pageSizes` value is an array of objects to be used in the + paginator view. + @protected + @method _setPageSizesFn + @param {Array} val + @return Array + @since 3.11.0 + */ + _setPageSizesFn: function (val) { + var i, + len = val.length, + label, + value; + + if (!Y.Lang.isArray(val)) { + val = [val]; + len = val.length; + } + + for ( i = 0; i < len; i++ ) { + if (typeof val[i] !== 'object') { + label = val[i]; + value = val[i]; + + // We want to check to see if we have a number or a string + // of a number. If we do not, we want the value to be -1 to + // indicate "all rows" + /*jshint eqeqeq:false */ + if (parseInt(value, 10) != value) { + value = -1; + } + /*jshint eqeqeq:true */ + val[i] = { label: label, value: value }; + } + } + + return val; + }, + + /** + Ensures the object provided is an instance of a `Y.Model`. If it is not, + it assumes it is the configuration of a model, and gets the new model + type from `paginatorModelType`. + @protected + @method _setPaginatorModel + @param {Y.Model | Object} model + @return Y.Model instance + @since 3.11.0 + */ + _setPaginatorModel: function (model) { + if (!(model && model._isYUIModel)) { + var ModelConstructor = this.get('paginatorModelType'); + model = new ModelConstructor(model); + } + + return model; + }, + + /** + Returns a pointer to an object to be instantiated if the provided type is + a string + @protected + @method _getConstructor + @param {Object | String} type Type of Object to contruct. If `type` is a + String, we assume it is a namespace off the Y object + @return + @since 3.11.0 + */ + _getConstructor: function (type) { + return typeof type === 'string' ? + Y.Object.getValue(Y, type.split('.')) : + type; + } +}, true); + + +Y.DataTable.Paginator = Controller; +Y.DataTable.Paginator.Model = Model; +Y.DataTable.Paginator.View = View; + +Y.Base.mix(Y.DataTable, [Y.DataTable.Paginator]); + + +}, '3.12.0', { + "requires": [ + "model", + "view", + "paginator-core", + "datatable-foot", + "datatable-paginator-templates" + ], + "lang": [ + "en" + ], + "skinnable": true +}); diff --git a/lib/yuilib/3.12.0/datatable-paginator/datatable-paginator-min.js b/lib/yuilib/3.12.0/datatable-paginator/datatable-paginator-min.js new file mode 100755 index 00000000000..0aba2562c18 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator/datatable-paginator-min.js @@ -0,0 +1,9 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datatable-paginator",function(e,t){function f(){}var n,r,i=e.DataTable.Templates.Paginator,s=e.Lang.sub,o=e.ClassNameManager.getClassName,u=o(t,"control-disabled"),a="paginator:ui";n=e.Base.create("dt-pg-model",e.Model,[e.Paginator.Core]),r=e.Base.create("dt-pg-view",e.View,[],{_eventHandles:[],containerTemplate:'
    ',contentTemplate:"{buttons}{goto}{perPage}",_allowAdHocAttrs:!1,initializer:function(){this.containerTemplate=s(this.containerTemplate,{paginator:o(t)}),this._initStrings(),this._initClassNames(),this.attachEvents()},render:function(){var e=this.get("model"),t=s(this.contentTemplate,{buttons:this._buildButtonsGroup(),"goto":this._buildGotoGroup(),perPage:this._buildPerPageGroup()});return this.get("container").append(t),this.attachEvents(),this._rendered=!0,this._updateControlsUI(e.get("page")),this._updateItemsPerPageUI(e.get("itemsPerPage")),this},attachEvents:function(){r.superclass.attachEvents.apply(this,arguments);var t=this.get("container");this.classNames||this._initClassNames(),this._attachedViewEvents.push(t.delegate("click",this._controlClick,"."+this.classNames.control,this),this.get("model").after("change",this._modelChange,this)),t.all("form").each(e.bind(function(e){this._attachedViewEvents.push(e.after("submit",this._controlSubmit,this))},this)),t.all("select").each(e.bind(function(e){this._attachedViewEvents.push(e.after("change",this._controlChange,this))},this))},_buildButtonsGroup:function(){var e=this.get("strings"),t=this.classNames,n;return n=i.button({type:"first",label:e.first,classNames:t})+i.button({type:"prev",label:e.prev,classNames:t})+i.button({type:"next",label:e.next,classNames:t})+i.button({type:"last",label:e.last,classNames:t}),i.buttons({classNames:t,buttons:n})},_buildGotoGroup:function(){return i.gotoPage({classNames:this.classNames,strings:this.get("strings"),page:this.get("model").get("page")})},_buildPerPageGroup:function(){var e=this.get("pageSizes"),t=this.get("model").get("rowsPerPage"),n,r,s;for(s=0,r=e.length;s=0?this._items.slice(t,t+e.length):this._items.slice(t)},size:function(e){return e&&this._paged.length>=0?this._paged.length:this._items.length},each:function(){var t=Array.prototype.slice.call(arguments);return t.unshift(this.getPage()),e.Array.each.apply(null,t),this}},!0)},_setPageSizesFn:function(t){var n,r=t.length,i,s;e.Lang.isArray(t)||(t=[t],r=t.length);for(n=0;n' + @since 3.11.0 + */ + containerTemplate: '
    ', + + /** + Template for content. Helps maintain order of controls. + @property contentTemplate + @type {String} + @default '{buttons}{goto}{perPage}' + @since 3.11.0 + */ + contentTemplate: '{buttons}{goto}{perPage}', + + /** + Disables ad-hoc ATTRS for our view. + @protected + @property _allowAdHocAttrs + @type {Boolean} + @default false + @since 3.11.0 + */ + _allowAdHocAttrs: false, + + /** + Sets classnames on the templates and bind events + @method initializer + @since 3.11.0 + */ + initializer: function () { + this.containerTemplate = sub(this.containerTemplate, { + paginator: getClassName(NAME) + }); + + this._initStrings(); + this._initClassNames(); + + this.attachEvents(); + }, + + /** + @method render + @chainable + @since 3.11.0 + */ + render: function () { + var model = this.get('model'), + content = sub(this.contentTemplate, { + 'buttons': this._buildButtonsGroup(), + 'goto': this._buildGotoGroup(), + 'perPage': this._buildPerPageGroup() + }); + + this.get('container').append(content); + this.attachEvents(); + + this._rendered = true; + + this._updateControlsUI(model.get('page')); + this._updateItemsPerPageUI(model.get('itemsPerPage')); + + return this; + }, + + /** + @method attachEvents + @since 3.11.0 + */ + attachEvents: function () { + View.superclass.attachEvents.apply(this, arguments); + + var container = this.get('container'); + + if (!this.classNames) { + this._initClassNames(); + } + + this._attachedViewEvents.push( + container.delegate('click', this._controlClick, '.' + this.classNames.control, this), + this.get('model').after('change', this._modelChange, this) + ); + + container.all('form').each(Y.bind(function (frm) { + this._attachedViewEvents.push( + frm.after('submit', this._controlSubmit, this) + ); + }, this)); + + container.all('select').each(Y.bind(function (sel) { + this._attachedViewEvents.push( + sel.after('change', this._controlChange, this) + ); + }, this)); + + }, + + /** + Returns a string built from the button and buttons templates. + @protected + @method _buildButtonsGroup + @return {String} + @since 3.11.0 + */ + _buildButtonsGroup: function () { + var strings = this.get('strings'), + classNames = this.classNames, + buttons; + + buttons = PaginatorTemplates.button({ + type: 'first', label: strings.first, classNames: classNames + }) + + PaginatorTemplates.button({ + type: 'prev', label: strings.prev, classNames: classNames + }) + + PaginatorTemplates.button({ + type: 'next', label: strings.next, classNames: classNames + }) + + PaginatorTemplates.button({ + type: 'last', label: strings.last, classNames: classNames + }); + + return PaginatorTemplates.buttons({ + classNames: classNames, + buttons: buttons + }); + + }, + + /** + Returns a string built from the gotoPage template. + @protected + @method _buildGotoGroup + @return {String} + @since 3.11.0 + */ + _buildGotoGroup: function () { + + return PaginatorTemplates.gotoPage({ + classNames: this.classNames, + strings: this.get('strings'), + page: this.get('model').get('page') + }); + }, + + /** + Returns a string built from the perPage template + @protected + @method _buildPerPageGroup + @return {String} + @since 3.11.0 + */ + _buildPerPageGroup: function () { + var options = this.get('pageSizes'), + rowsPerPage = this.get('model').get('rowsPerPage'), + option, + len, + i; + + for (i = 0, len = options.length; i < len; i++ ) { + option = options[i]; + + if (typeof option !== 'object') { + option = { + value: option, + label: option + }; + } + option.selected = (option.value === rowsPerPage) ? ' selected' : ''; + } + + return PaginatorTemplates.perPage({ + classNames: this.classNames, + strings: this.get('strings'), + options: this.get('pageSizes') + }); + + }, + + /** + Update the UI after the model has changed. + @protected + @method _modelChange + @param {EventFacade} e + @since 3.11.0 + */ + _modelChange: function (e) { + var changed = e.changed, + page = (changed && changed.page), + itemsPerPage = (changed && changed.itemsPerPage); + + if (page) { + this._updateControlsUI(page.newVal); + } + if (itemsPerPage) { + this._updateItemsPerPageUI(itemsPerPage.newVal); + if (!page) { + this._updateControlsUI(e.target.get('page')); + } + } + + }, + + /** + Updates the button controls and the gotoPage form + @protected + @method _updateControlsUI + @param {Number} val Page number to set the UI input to + @since 3.11.0 + */ + _updateControlsUI: function (val) { + if (!this._rendered) { + return; + } + + var model = this.get('model'), + controlClass = '.' + this.classNames.control, + container = this.get('container'), + hasPrev = model.hasPrevPage(), + hasNext = model.hasNextPage(); + + container.one(controlClass + '-first') + .toggleClass(CLASS_DISABLED, !hasPrev) + .set('disabled', !hasPrev); + + container.one(controlClass + '-prev') + .toggleClass(CLASS_DISABLED, !hasPrev) + .set('disabled', !hasPrev); + + container.one(controlClass + '-next') + .toggleClass(CLASS_DISABLED, !hasNext) + .set('disabled', !hasNext); + + container.one(controlClass + '-last') + .toggleClass(CLASS_DISABLED, !hasNext) + .set('disabled', !hasNext); + + container.one('form input').set('value', val); + }, + + /** + Updates the drop down select for items per page + @protected + @method _updateItemsPerPageUI + @param {Number} val Number of items to display per page + @since 3.11.0 + */ + _updateItemsPerPageUI: function (val) { + if (!this._rendered) { + return; + } + + this.get('container').one('select').set('value', val); + }, + + /** + Fire EVENT_UI when an enabled control button is clicked + @protected + @method _controlClick + @param {EventFacade} e + @since 3.11.0 + */ + _controlClick: function (e) { // buttons + e.preventDefault(); + var control = e.currentTarget; + // register click events from the four control buttons + if (control.hasClass(CLASS_DISABLED)) { + return; + } + this.fire(EVENT_UI, { + type: control.getData('type'), + val: control.getData('page') || null + }); + }, + + /** + Fire EVENT_UI with `type:perPage` after the select drop down changes + @protected + @method _controlChange + @param {EventFacade} e + @since 3.11.0 + */ + _controlChange: function (e) { + + // register change events from the perPage select + if ( e.target.hasClass(CLASS_DISABLED) ) { + return; + } + + val = e.target.get('value'); + this.fire(EVENT_UI, { type: 'perPage', val: parseInt(val, 10) }); + }, + + /** + Fire EVENT_UI with `type:page` after form is submitted + @protected + @method _controlSubmit + @param {EventFacade} e + @since 3.11.0 + */ + _controlSubmit: function (e) { + if ( e.target.hasClass(CLASS_DISABLED) ) { + return; + } + + // the only form we have is the go to page form + e.preventDefault(); + + input = e.target.one('input'); + this.fire(EVENT_UI, { type: 'page', val: input.get('value') }); + }, + + /** + Initializes classnames to be used with the templates + @protected + @method _initClassNames + @since 3.11.0 + */ + _initClassNames: function () { + this.classNames = { + control: getClassName(NAME, 'control'), + controls: getClassName(NAME, 'controls'), + group: getClassName(NAME, 'group'), + perPage: getClassName(NAME, 'per-page') + }; + }, + + /** + Initializes strings used for internationalization + @protected + @method _initStrings + @since 3.11.0 + */ + _initStrings: function () { + // Not a valueFn because other class extensions may want to add to it + this.set('strings', Y.mix((this.get('strings') || {}), + Y.Intl.get('datatable-paginator'))); + } +}, { + ATTRS: { + /** + Array of values used to populate the drop down for items per page + @attribute pageSizes + @type {Array} + @default [ 10, 50, 100, { label: 'Show All', value: -1 } ] + @since 3.11.0 + */ + pageSizes: { + value: [ 10, 50, 100, { label: 'Show All', value: -1 } ] + }, + + /** + Model used for this view + @attribute model + @type {Y.Model} + @default null + @since 3.11.0 + */ + model: {} + } +}); + +/** + @class DataTable.Paginator + @since 3.11.0 + */ +function Controller () {} + +Controller.ATTRS = { + /** + A model instance or a configuration object for the Model. + @attribute paginatorModel + @type {Y.Model | Object} + @default null + @since 3.11.0 + */ + paginatorModel: { + setter: '_setPaginatorModel', + value: null, + writeOnce: 'initOnly' + }, + + /** + A pointer to a Model object to be instantiated, or a String off of the + `Y` namespace. + + This is only used if the `pagiantorModel` is a configuration object or + is null. + @attribute paginatorModelType + @type {Y.Model | String} + @default 'DataTable.Paginator.Model' + @since 3.11.0 + */ + paginatorModelType: { + getter: '_getConstructor', + value: 'DataTable.Paginator.Model', + writeOnce: 'initOnly' + }, + + /** + A pointer to a `Y.View` object to be instantiated. A new view will be + created for each location provided. Each view created will be given the + same model instance. + @attribute paginatorView + @type {Y.View | String} + @default 'DataTable.Paginator.View' + @since 3.11.0 + */ + paginatorView: { + getter: '_getConstructor', + value: 'DataTable.Paginator.View', + writeOnce: 'initOnly' + }, + + // PAGINATOR CONFIGS + /** + Array of values used to populate the values in the Paginator UI allowing + the end user to select the number of items to display per page. + @attribute pageSizes + @type {Array} + @default [10, 50, 100, { label: 'Show All', value: -1 }] + @since 3.11.0 + */ + pageSizes: { + setter: '_setPageSizesFn', + value: [10, 50, 100, { label: 'Show All', value: -1 }] + }, + + /** + Number of rows to display per page. As the UI changes the number of pages + to display, this will update to reflect the value selected in the UI + @attribute rowsPerPage + @type {Number | null} + @default null + @since 3.11.0 + */ + rowsPerPage: { + value: null + }, + + /** + String of `footer` or `header`, a Y.Node, or an Array or any combination + of those values. + @attribute paginatorLocation + @type {String | Array | Y.Node} + @default footer + @since 3.11.0 + */ + paginatorLocation: { + value: 'footer' + } +}; + +Y.mix(Controller.prototype, { + /** + Sets the `paginatorModel` to the first page. + @method firstPage + @chainable + @since 3.11.0 + */ + firstPage: function () { + this.get('paginatorModel').set('page', 1); + return this; + }, + + /** + Sets the `paginatorModel` to the last page. + @method lastPage + @chainable + @since 3.11.0 + */ + lastPage: function () { + var model = this.get('paginatorModel'); + model.set('page', model.get('totalPages')); + return this; + }, + + /** + Sets the `paginatorModel` to the previous page. + @method previousPage + @chainable + @since 3.11.0 + */ + previousPage: function () { + this.get('paginatorModel').prevPage(); + return this; + }, + + /** + Sets the `paginatorModel` to the next page. + @method nextPage + @chainable + @since 3.11.0 + */ + nextPage: function () { + this.get('paginatorModel').nextPage(); + return this; + }, + + + /// Init and protected + /** + Constructor logic + @protected + @method initializer + @since 3.11.0 + */ + initializer: function () { + // allow DT to use paged data + this._augmentData(); + + if (!this._eventHandles.paginatorRender) { + this._eventHandles.paginatorRender = Y.Do.after(this._paginatorRender, this, 'render'); + } + }, + + /** + Renders the paginator into locations and attaches events. + @protected + @method _paginatorRender + @since 3.11.0 + */ + _paginatorRender: function () { + var model = this.get('paginatorModel'); + + this._paginatorRenderUI(); + model.after('change', this._afterPaginatorModelChange, this); + this.after('dataChange', this._afterDataChangeWithPaginator, this); + this.after('rowsPerPageChange', this._afterRowsPerPageChange, this); + + // ensure our model has the correct totalItems set + model.set('itemsPerPage', this.get('rowsPerPage')); + model.set('totalItems', this.get('data').size()); + }, + + /** + After the data changes, we ensure we are on the first page and the data + is augmented + @protected + @method _afterDataChangeWithPaginator + @since 3.11.0 + */ + _afterDataChangeWithPaginator: function () { + var data = this.get('data'), + model = this.get('paginatorModel'); + + if (model.get('page') !== 1) { + this.firstPage(); + } else { + this._augmentData(); + + data.fire.call(data, 'reset', { + src: 'reset', + models: data._items.concat() + }); + } + }, + + /** + After the rowsPerPage changes, update the UI to reflect the new number of + rows to be displayed. If the new value is `null`, destroy all instances + of the paginators. + @protected + @method _afterRowsPerPageChange + @param {EventFacade} e + @since 3.11.0 + */ + _afterRowsPerPageChange: function (e) { + var data = this.get('data'), + model = this.get('paginatorModel'), + view; + + if (e.newVal !== null) { + // turning on + this._paginatorRenderUI(); + + if (!(data._paged)) { + this._augmentData(); + } + + data._paged.index = (model.get('page') - 1) * model.get('itemsPerPage'); + data._paged.length = model.get('itemsPerPage'); + + } else { // e.newVal === null + // destroy! + while(this._pgViews.length) { + view = this._pgViews.shift(); + view.destroy({ remove: true }); + view._rendered = null; + } + + data._paged.index = 0; + data._paged.length = null; + } + + this.get('paginatorModel').set('itemsPerPage', parseInt(e.newVal, 10)); + }, + + /** + Parse each location and render a new view into each area. + @protected + @method _paginatorRenderUI + @since 3.11.0 + */ + _paginatorRenderUI: function () { + if (!this.get('rowsPerPage')) { + return; + } + var views = this._pgViews, + ViewClass = this.get('paginatorView'), + viewConfig = { + pageSizes: this.get('pageSizes'), + model: this.get('paginatorModel') + }, + locations = this.get('paginatorLocation'); + + if (!Y.Lang.isArray(locations)) { + locations = [locations]; + } + + if (!views) { // set up initial rendering of views + views = this._pgViews = []; + } + + // for each placement area, push to views + Y.Array.each(locations, function (location) { + var view = new ViewClass(viewConfig), + container = view.render().get('container'), + row; + + view.after('*:ui', this._uiPgHandler, this); + views.push(view); + + if (location._node) { // assume Y.Node + location.append(container); + // remove this container row if the view is ever destroyed + this.after('destroy', function (/* e */) { + view.destroy({ remove: true }); + }); + } else if (location === 'footer') { // DT Footer + // Render a table footer if there isn't one + if (!this.foot) { + this.foot = new Y.DataTable.FooterView({ host: this }); + this.foot.render(); + this.fire('renderFooter', { view: this.foot }); + } + + // create a row for the paginator to sit in + row = Y.Node.create(PaginatorTemplates.rowWrapper({ + wrapperClass: getClassName(NAME, 'wrapper'), + numOfCols: this.get('columns').length + })); + + row.one('td').append(container); + this.foot.tfootNode.append(row); + + // remove this container row if the view is ever destroyed + view.after('destroy', function (/* e */) { + row.remove(true); + }); + } else if (location === 'header') { + // 'header' means insert before the table + // placement with the caption may need to be addressed + if (this.view && this.view.tableNode) { + this.view.tableNode.insert(container, 'before'); + } else { + this.get('contentBox').prepend(container); + } + } + }, this); + + }, + + /** + Handles the paginator's UI event into a single location. Updates the + `paginatorModel` according to what type is provided. + @protected + @method _uiPgHandler + @param {EventFacade} e + @since 3.11.0 + */ + _uiPgHandler: function (e) { + // e.type = control type (first|prev|next|last|page|perPage) + // e.val = value based on the control type to pass to the model + var model = this.get('paginatorModel'); + + switch (e.type) { + case 'first': + model.set('page', 1); + break; + case 'last': + model.set('page', model.get('totalPages')); + break; + case 'prev': + case 'next': // overflow intentional + model[e.type + 'Page'](); + break; + case 'page': + model.set('page', e.val); + break; + case 'perPage': + model.set('itemsPerPage', e.val); + model.set('page', 1); + break; + } + }, + + /** + Augments the model list with a paged structure, or updates the paged + data. Then fires reset on the model list. + @protected + @method _afterPaginatorModelChange + @param {EventFacade} [e] + @since 3.11.0 + */ + _afterPaginatorModelChange: function () { + var model = this.get('paginatorModel'), + data = this.get('data'); + + if (!data._paged) { + this._augmentData(); + } else { + data._paged.index = (model.get('page') - 1) * model.get('itemsPerPage'); + data._paged.length = model.get('itemsPerPage'); + } + + data.fire.call(data, 'reset', { + src: 'reset', + models: data._items.concat() + }); + }, + + /** + Augments the model list data structure with paged implementations. + + The model list will contain a method for `getPage` that will return the + given number of items listed within the range. + + `each` will also loop over the items in the page + @protected + @method _augmentData + @since 3.11.0 + */ + _augmentData: function () { + var model = this.get('paginatorModel'); + + if (this.get('rowsPerPage') === null) { + return; + } + + Y.mix(this.get('data'), { + + _paged: { + index: (model.get('page') - 1) * model.get('itemsPerPage'), + length: model.get('itemsPerPage') + }, + + getPage: function () { + var _pg = this._paged, + min = _pg.index; + + // IE LTE 8 doesn't allow "undefined" as a second param - gh890 + return (_pg.length >= 0) ? + this._items.slice(min, min + _pg.length) : + this._items.slice(min); + }, + + size: function (paged) { + return (paged && this._paged.length >=0 ) ? + this._paged.length : + this._items.length; + }, + + each: function () { + var args = Array.prototype.slice.call(arguments); + args.unshift(this.getPage()); + + Y.Array.each.apply(null, args); + + return this; + } + }, true); + }, + + /** + Ensures `pageSizes` value is an array of objects to be used in the + paginator view. + @protected + @method _setPageSizesFn + @param {Array} val + @return Array + @since 3.11.0 + */ + _setPageSizesFn: function (val) { + var i, + len = val.length, + label, + value; + + if (!Y.Lang.isArray(val)) { + val = [val]; + len = val.length; + } + + for ( i = 0; i < len; i++ ) { + if (typeof val[i] !== 'object') { + label = val[i]; + value = val[i]; + + // We want to check to see if we have a number or a string + // of a number. If we do not, we want the value to be -1 to + // indicate "all rows" + /*jshint eqeqeq:false */ + if (parseInt(value, 10) != value) { + value = -1; + } + /*jshint eqeqeq:true */ + val[i] = { label: label, value: value }; + } + } + + return val; + }, + + /** + Ensures the object provided is an instance of a `Y.Model`. If it is not, + it assumes it is the configuration of a model, and gets the new model + type from `paginatorModelType`. + @protected + @method _setPaginatorModel + @param {Y.Model | Object} model + @return Y.Model instance + @since 3.11.0 + */ + _setPaginatorModel: function (model) { + if (!(model && model._isYUIModel)) { + var ModelConstructor = this.get('paginatorModelType'); + model = new ModelConstructor(model); + } + + return model; + }, + + /** + Returns a pointer to an object to be instantiated if the provided type is + a string + @protected + @method _getConstructor + @param {Object | String} type Type of Object to contruct. If `type` is a + String, we assume it is a namespace off the Y object + @return + @since 3.11.0 + */ + _getConstructor: function (type) { + return typeof type === 'string' ? + Y.Object.getValue(Y, type.split('.')) : + type; + } +}, true); + + +Y.DataTable.Paginator = Controller; +Y.DataTable.Paginator.Model = Model; +Y.DataTable.Paginator.View = View; + +Y.Base.mix(Y.DataTable, [Y.DataTable.Paginator]); + + +}, '3.12.0', { + "requires": [ + "model", + "view", + "paginator-core", + "datatable-foot", + "datatable-paginator-templates" + ], + "lang": [ + "en" + ], + "skinnable": true +}); diff --git a/lib/yuilib/3.12.0/datatable-paginator/lang/datatable-paginator.js b/lib/yuilib/3.12.0/datatable-paginator/lang/datatable-paginator.js new file mode 100755 index 00000000000..4972e3ec087 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator/lang/datatable-paginator.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatable-paginator",function(e){e.Intl.add("datatable-paginator","",{first:"First",prev:"Previous",next:"Next",last:"Last",goToLabel:"Page:",goToAction:"Go",perPage:"Rows:"})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/datatable-paginator/lang/datatable-paginator_en.js b/lib/yuilib/3.12.0/datatable-paginator/lang/datatable-paginator_en.js new file mode 100755 index 00000000000..48b7ad20d5d --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-paginator/lang/datatable-paginator_en.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatable-paginator_en",function(e){e.Intl.add("datatable-paginator","en",{first:"First",prev:"Previous",next:"Next",last:"Last",goToLabel:"Page:",goToAction:"Go",perPage:"Rows:"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatable-scroll/assets/datatable-scroll-core.css b/lib/yuilib/3.12.0/datatable-scroll/assets/datatable-scroll-core.css old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/datatable-scroll/assets/datatable-scroll-core.css rename to lib/yuilib/3.12.0/datatable-scroll/assets/datatable-scroll-core.css index 670445457d4..ec722ddcdfd --- a/lib/yuilib/3.9.1/build/datatable-scroll/assets/datatable-scroll-core.css +++ b/lib/yuilib/3.12.0/datatable-scroll/assets/datatable-scroll-core.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* foundational CSS */ .yui3-datatable-scrollable-x { _overflow-x: hidden; diff --git a/lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/night/datatable-scroll-skin.css b/lib/yuilib/3.12.0/datatable-scroll/assets/skins/night/datatable-scroll-skin.css old mode 100644 new mode 100755 similarity index 83% rename from lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/night/datatable-scroll-skin.css rename to lib/yuilib/3.12.0/datatable-scroll/assets/skins/night/datatable-scroll-skin.css index 66cbf578d2e..3b146a76bff --- a/lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/night/datatable-scroll-skin.css +++ b/lib/yuilib/3.12.0/datatable-scroll/assets/skins/night/datatable-scroll-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-sam .yui3-datatable-scroll-columns { border-collapse: separate; border-spacing: 0; diff --git a/lib/yuilib/3.12.0/datatable-scroll/assets/skins/night/datatable-scroll.css b/lib/yuilib/3.12.0/datatable-scroll/assets/skins/night/datatable-scroll.css new file mode 100755 index 00000000000..4d93b2e0a34 --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-scroll/assets/skins/night/datatable-scroll.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-scrollable-x{_overflow-x:hidden;_position:relative}.yui3-datatable-scrollable-y,.yui3-datatable-scrollable-y .yui3-datatable-x-scroller{_overflow-y:hidden;_position:relative}.yui3-datatable-y-scroller-container{overflow-x:hidden;position:relative}.yui3-datatable-scrollable-y .yui3-datatable-content{position:relative}.yui3-datatable-scrollable-y .yui3-datatable-table .yui3-datatable-columns{visibility:hidden}.yui3-datatable-scroll-columns{position:absolute;width:100%;z-index:2}.yui3-datatable-y-scroller,.yui3-datatable-scrollable-x .yui3-datatable-caption-table{width:100%}.yui3-datatable-x-scroller{position:relative;overflow-x:scroll;overflow-y:hidden}.yui3-datatable-scrollable-y .yui3-datatable-y-scroller{position:relative;overflow-x:hidden;overflow-y:scroll;z-index:1;-webkit-overflow-scrolling:touch}.yui3-datatable-scrollbar{position:absolute;overflow-x:hidden;overflow-y:scroll;z-index:2}.yui3-datatable-scrollbar div{position:absolute;width:1px;visibility:hidden}.yui3-skin-sam .yui3-datatable-scroll-columns{border-collapse:separate;border-spacing:0;font-family:HelveticaNeue,arial,helvetica,clean,sans-serif;margin:0;padding:0;top:0;left:0}.yui3-skin-sam .yui3-datatable-scroll-columns .yui3-datatable-header{padding:0}.yui3-skin-sam .yui3-datatable-x-scroller,.yui3-skin-sam .yui3-datatable-y-scroller-container{border:1px solid #303030;border-left-color:#323434}.yui3-skin-sam .yui3-datatable-scrollable-x .yui3-datatable-y-scroller-container,.yui3-skin-sam .yui3-datatable-x-scroller .yui3-datatable-table,.yui3-skin-sam .yui3-datatable-y-scroller .yui3-datatable-table{border:0 none}#yui3-css-stamp.skin-night-datatable-scroll{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/sam/datatable-scroll-skin.css b/lib/yuilib/3.12.0/datatable-scroll/assets/skins/sam/datatable-scroll-skin.css old mode 100644 new mode 100755 similarity index 81% rename from lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/sam/datatable-scroll-skin.css rename to lib/yuilib/3.12.0/datatable-scroll/assets/skins/sam/datatable-scroll-skin.css index 2af7cb48c7d..846ed38b286 --- a/lib/yuilib/3.9.1/build/datatable-scroll/assets/skins/sam/datatable-scroll-skin.css +++ b/lib/yuilib/3.12.0/datatable-scroll/assets/skins/sam/datatable-scroll-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-sam .yui3-datatable-scroll-columns { border-collapse: separate; border-spacing: 0; diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-scroll.css b/lib/yuilib/3.12.0/datatable-scroll/assets/skins/sam/datatable-scroll.css old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/assets/skins/sam/datatable-scroll.css rename to lib/yuilib/3.12.0/datatable-scroll/assets/skins/sam/datatable-scroll.css index e995d9db8f3..8f777cac915 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-scroll.css +++ b/lib/yuilib/3.12.0/datatable-scroll/assets/skins/sam/datatable-scroll.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-datatable-scrollable-x{_overflow-x:hidden;_position:relative}.yui3-datatable-scrollable-y,.yui3-datatable-scrollable-y .yui3-datatable-x-scroller{_overflow-y:hidden;_position:relative}.yui3-datatable-y-scroller-container{overflow-x:hidden;position:relative}.yui3-datatable-scrollable-y .yui3-datatable-content{position:relative}.yui3-datatable-scrollable-y .yui3-datatable-table .yui3-datatable-columns{visibility:hidden}.yui3-datatable-scroll-columns{position:absolute;width:100%;z-index:2}.yui3-datatable-y-scroller,.yui3-datatable-scrollable-x .yui3-datatable-caption-table{width:100%}.yui3-datatable-x-scroller{position:relative;overflow-x:scroll;overflow-y:hidden}.yui3-datatable-scrollable-y .yui3-datatable-y-scroller{position:relative;overflow-x:hidden;overflow-y:scroll;z-index:1;-webkit-overflow-scrolling:touch}.yui3-datatable-scrollbar{position:absolute;overflow-x:hidden;overflow-y:scroll;z-index:2}.yui3-datatable-scrollbar div{position:absolute;width:1px;visibility:hidden}.yui3-skin-sam .yui3-datatable-scroll-columns{border-collapse:separate;border-spacing:0;font-family:arial,sans-serif;margin:0;padding:0;top:0;left:0}.yui3-skin-sam .yui3-datatable-scroll-columns .yui3-datatable-header{padding:0}.yui3-skin-sam .yui3-datatable-x-scroller,.yui3-skin-sam .yui3-datatable-y-scroller-container{border:1px solid #cbcbcb}.yui3-skin-sam .yui3-datatable-scrollable-x .yui3-datatable-y-scroller-container,.yui3-skin-sam .yui3-datatable-x-scroller .yui3-datatable-table,.yui3-skin-sam .yui3-datatable-y-scroller .yui3-datatable-table{border:0 none}#yui3-css-stamp.skin-sam-datatable-scroll{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-scroll/datatable-scroll-debug.js b/lib/yuilib/3.12.0/datatable-scroll/datatable-scroll-debug.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/datatable-scroll/datatable-scroll-debug.js rename to lib/yuilib/3.12.0/datatable-scroll/datatable-scroll-debug.js index e511ef311aa..85c792caa8b --- a/lib/yuilib/3.9.1/build/datatable-scroll/datatable-scroll-debug.js +++ b/lib/yuilib/3.12.0/datatable-scroll/datatable-scroll-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatable-scroll', function (Y, NAME) { /** @@ -1384,4 +1390,4 @@ Y.mix(Scrollable.prototype, { Y.Base.mix(Y.DataTable, [Scrollable]); -}, '3.9.1', {"requires": ["datatable-base", "datatable-column-widths", "dom-screen"], "skinnable": true}); +}, '3.12.0', {"requires": ["datatable-base", "datatable-column-widths", "dom-screen"], "skinnable": true}); diff --git a/lib/yuilib/3.9.1/build/datatable-scroll/datatable-scroll-min.js b/lib/yuilib/3.12.0/datatable-scroll/datatable-scroll-min.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/datatable-scroll/datatable-scroll-min.js rename to lib/yuilib/3.12.0/datatable-scroll/datatable-scroll-min.js index 15ff0f27b2e..92a214af611 --- a/lib/yuilib/3.9.1/build/datatable-scroll/datatable-scroll-min.js +++ b/lib/yuilib/3.12.0/datatable-scroll/datatable-scroll-min.js @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("datatable-scroll",function(e,t){function u(e,t){return parseInt(e.getComputedStyle(t),10)||0}var n=e.Lang,r=n.isString,i=n.isNumber,s=n.isArray,o;e.DataTable.Scrollable=o=function(){},o.ATTRS={scrollable:{value:!1,setter:"_setScrollable"}},e.mix(o.prototype,{scrollTo:function(t){var n;return t&&this._tbodyNode&&(this._yScrollNode||this._xScrollNode)&&(s(t)?n=this.getCell(t):i(t)?n=this.getRow(t):r(t)?n=this._tbodyNode.one("#"+t):t instanceof e.Node&&t.ancestor(".yui3-datatable")===this.get("boundingBox")&&(n=t),n&&n.scrollIntoView()),this},_CAPTION_TABLE_TEMPLATE:'',_SCROLL_LINER_TEMPLATE:'
    ',_SCROLLBAR_TEMPLATE:'
    ',_X_SCROLLER_TEMPLATE:'
    ',_Y_SCROLL_HEADER_TEMPLATE:'',_Y_SCROLLER_TEMPLATE:'
    ',_addScrollbarPadding:function(){var t=this._yScrollHeader,n="."+this.getClassName("header"),r,i,s,o,u;if(t){r=e.DOM.getScrollbarWidth()+"px",i=t.all("tr");for(o=0,u=i.size();o-1,this._yScroll=n&&e.indexOf("y")>-1},_syncScrollPosition:function(t){var n=this._scrollbarNode,r=this._yScrollNode,i=t.currentTarget,s;if(n&&r){if(this._scrollLock&&this._scrollLock.source!==i)return;this._clearScrollLock(),this._scrollLock=e.later(300,this,this._clearScrollLock),this._scrollLock.source=i,s=i===n?r:n,s.set("scrollTop",i.get("scrollTop"))}},_syncScrollCaptionUI:function(){var t=this._captionNode,n=this._tableNode,r=this._captionTable,i;t?(i=t.getAttribute("id"),r||(r=this._createScrollCaptionTable(),this.get("contentBox").prepend(r)),t.get("parentNode").compareTo(r)||(r.empty().insert(t),i||(i=e.stamp(t),t.setAttribute("id",i)),n.setAttribute("aria-describedby",i))):r&&this._removeScrollCaptionTable()},_syncScrollColumnWidths:function(){var t=[];this._theadNode&&this._yScrollHeader&&(this._theadNode.all("."+this.getClassName("header")).each(function(n){t.push(e.UA.ie&&e.UA.ie<8?n.get("clientWidth")-u(n,"paddingLeft")-u(n,"paddingRight")+"px":n.getComputedStyle("width"))}),this._yScrollHeader.all("."+this.getClassName("scroll","liner")).each(function(e,n){e.setStyle("width",t[n])}))},_syncScrollHeaders:function(){var t=this._yScrollHeader,n=this._SCROLL_LINER_TEMPLATE,r=this.getClassName("scroll","liner"),i=this.getClassName("header"),s=this._theadNode.all("."+i);this._theadNode&&t&&(t.empty().appendChild(this._theadNode.cloneNode(!0)),t.all("[id]").removeAttribute("id"),t.all("."+i).each(function(t,i){var o=e.Node.create(e.Lang.sub(n,{className:r})),u=s.item(i);o.setStyle("padding",u.getComputedStyle("paddingTop")+" "+u.getComputedStyle("paddingRight")+" "+u.getComputedStyle("paddingBottom")+" "+u.getComputedStyle("paddingLeft")),o.appendChild(t.get("childNodes").toFrag()),t.appendChild(o)},this),this._syncScrollColumnWidths(),this._addScrollbarPadding())},_syncScrollUI:function(){var e=this._xScroll,t=this._yScroll,n=this._xScrollNode,r=this._yScrollNode,i=n&&n.get("scrollLeft"),s=r&&r.get("scrollTop");this._uiSetScrollable(),e||t?((this.get("width")||"").slice(-1)==="%"?this._bindScrollResize():this._unbindScrollResize(),this._syncScrollCaptionUI()):this._disableScrolling(),this._yScrollHeader&&this._yScrollHeader.setStyle("display","none"),e&&(t||this._disableYScrolling(),this._syncXScrollUI(t)),t&&(e||this._disableXScrolling(),this._syncYScrollUI(e)),i&&this._xScrollNode&&this._xScrollNode.set("scrollLeft",i),s&&this._yScrollNode&&this._yScrollNode.set("scrollTop",s)},_syncXScrollUI:function(t){var n=this._xScrollNode,r=this._yScrollContainer,i=this._tableNode,s=this.get("width"),o=this.get("boundingBox").get("offsetWidth"),a=e.DOM.getScrollbarWidth(),f,l;n||(n=this._createXScrollNode(),(r||i).replace(n).appendTo(n)),f=u(n,"borderLeftWidth")+u(n,"borderRightWidth"),n.setStyle("width",""),this._uiSetDim("width",""),t&&this._yScrollContainer&&this._yScrollContainer.setStyle("width",""),e.UA.ie&&e.UA.ie<8&&(i.setStyle("width",s),i.get("offsetWidth")),i.setStyle("width",""),l=i.get("offsetWidth"),i.setStyle("width",l+"px"),this._uiSetDim("width",s),n.setStyle("width",o-f+"px"),n.get("offsetWidth")-f>l&&(t?i.setStyle("width",n.get("offsetWidth")-f-a+"px"):i.setStyle("width","100%"))},_syncYScrollUI:function(t){var n=this._yScrollContainer,r=this._yScrollNode,i=this._xScrollNode,s=this._yScrollHeader,o=this._scrollbarNode,a=this._tableNode,f=this._theadNode,l=this._captionTable,c=this.get("boundingBox"),h=this.get("contentBox"),p=this.get("width"),d=c.get("offsetHeight"),v=e.DOM.getScrollbarWidth(),m;l&&!t&&l.setStyle("width",p||"100%"),n||(n=this._createYScrollNode(),r=this._yScrollNode,a.replace(n).appendTo(r)),m=t?i:n,t||a.setStyle("width",""),t&&(d-=v),r.setStyle("height",d-m.get("offsetTop")-u(m,"borderTopWidth")-u(m,"borderBottomWidth")+"px"),t?n.setStyle("width",a.get("offsetWidth")+v+"px"):this._uiSetYScrollWidth(p),l&&!t&&l.setStyle("width",n.get("offsetWidth")+"px"),f&&!s&&(s=this._createYScrollHeader(),n.prepend(s),this._syncScrollHeaders()),s&&(this._syncScrollColumnWidths(),s.setStyle("display",""),o||(o=this._createScrollbar(),this._bindScrollbar(),h.prepend(o)),this._uiSetScrollbarHeight(),this._uiSetScrollbarPosition(m))},_uiSetScrollable:function(){this.get("boundingBox").toggleClass(this.getClassName("scrollable","x"),this._xScroll).toggleClass(this.getClassName("scrollable","y"),this._yScroll)},_uiSetScrollbarHeight:function(){var e=this._scrollbarNode,t=this._yScrollNode,n=this._yScrollHeader;e&&t&&n&&(e.get("firstChild").setStyle("height",this._tbodyNode.get("scrollHeight")+"px"),e.setStyle("height",parseFloat(t.getComputedStyle("height"))-parseFloat(n.getComputedStyle("height"))+"px"))},_uiSetScrollbarPosition:function(t){var n=this._scrollbarNode,r=this._yScrollHeader;n&&t&&r&&n.setStyles({top:parseFloat(r.getComputedStyle("height"))+u(t,"borderTopWidth")+t.get("offsetTop")+"px",left:t.get("offsetWidth")-e.DOM.getScrollbarWidth()-1-u(t,"borderRightWidth")+"px"})},_uiSetYScrollWidth:function(t){var n=this._yScrollContainer,r=this._tableNode,i,s,o,u;n&&r&&(u=e.DOM.getScrollbarWidth(),t?(s=n.get("offsetWidth")-n.get("clientWidth")+u,n.setStyle("width",t),o=n.get("clientWidth")-s,r.setStyle("width",o+"px"),i=r.get("offsetWidth"),n.setStyle("width",i+u+"px")):(r.setStyle("width",""),n.setStyle("width",""),n.setStyle("width",r.get("offsetWidth")+u+"px")))},_unbindScrollbar:function(){this._scrollbarEventHandle&&this._scrollbarEventHandle.detach()},_unbindScrollResize:function(){this._scrollResizeHandle&&(this._scrollResizeHandle.detach(),delete this._scrollResizeHandle)}},!0),e.Base.mix(e.DataTable,[o])},"3.9.1",{requires:["datatable-base","datatable-column-widths","dom-screen"],skinnable:!0}); +this._scrollbarEventHandle.detach(),delete this._scrollbarEventHandle)},_setScrollable:function(t){return t===!0&&(t="xy"),r(t)&&(t=t.toLowerCase()),t===!1||t==="y"||t==="x"||t==="xy"?t:e.Attribute.INVALID_VALUE},_setScrollProperties:function(){var e=this.get("scrollable")||"",t=this.get("width"),n=this.get("height");this._xScroll=t&&e.indexOf("x")>-1,this._yScroll=n&&e.indexOf("y")>-1},_syncScrollPosition:function(t){var n=this._scrollbarNode,r=this._yScrollNode,i=t.currentTarget,s;if(n&&r){if(this._scrollLock&&this._scrollLock.source!==i)return;this._clearScrollLock(),this._scrollLock=e.later(300,this,this._clearScrollLock),this._scrollLock.source=i,s=i===n?r:n,s.set("scrollTop",i.get("scrollTop"))}},_syncScrollCaptionUI:function(){var t=this._captionNode,n=this._tableNode,r=this._captionTable,i;t?(i=t.getAttribute("id"),r||(r=this._createScrollCaptionTable(),this.get("contentBox").prepend(r)),t.get("parentNode").compareTo(r)||(r.empty().insert(t),i||(i=e.stamp(t),t.setAttribute("id",i)),n.setAttribute("aria-describedby",i))):r&&this._removeScrollCaptionTable()},_syncScrollColumnWidths:function(){var t=[];this._theadNode&&this._yScrollHeader&&(this._theadNode.all("."+this.getClassName("header")).each(function(n){t.push(e.UA.ie&&e.UA.ie<8?n.get("clientWidth")-u(n,"paddingLeft")-u(n,"paddingRight")+"px":n.getComputedStyle("width"))}),this._yScrollHeader.all("."+this.getClassName("scroll","liner")).each(function(e,n){e.setStyle("width",t[n])}))},_syncScrollHeaders:function(){var t=this._yScrollHeader,n=this._SCROLL_LINER_TEMPLATE,r=this.getClassName("scroll","liner"),i=this.getClassName("header"),s=this._theadNode.all("."+i);this._theadNode&&t&&(t.empty().appendChild(this._theadNode.cloneNode(!0)),t.all("[id]").removeAttribute("id"),t.all("."+i).each(function(t,i){var o=e.Node.create(e.Lang.sub(n,{className:r})),u=s.item(i);o.setStyle("padding",u.getComputedStyle("paddingTop")+" "+u.getComputedStyle("paddingRight")+" "+u.getComputedStyle("paddingBottom")+" "+u.getComputedStyle("paddingLeft")),o.appendChild(t.get("childNodes").toFrag()),t.appendChild(o)},this),this._syncScrollColumnWidths(),this._addScrollbarPadding())},_syncScrollUI:function(){var e=this._xScroll,t=this._yScroll,n=this._xScrollNode,r=this._yScrollNode,i=n&&n.get("scrollLeft"),s=r&&r.get("scrollTop");this._uiSetScrollable(),e||t?((this.get("width")||"").slice(-1)==="%"?this._bindScrollResize():this._unbindScrollResize(),this._syncScrollCaptionUI()):this._disableScrolling(),this._yScrollHeader&&this._yScrollHeader.setStyle("display","none"),e&&(t||this._disableYScrolling(),this._syncXScrollUI(t)),t&&(e||this._disableXScrolling(),this._syncYScrollUI(e)),i&&this._xScrollNode&&this._xScrollNode.set("scrollLeft",i),s&&this._yScrollNode&&this._yScrollNode.set("scrollTop",s)},_syncXScrollUI:function(t){var n=this._xScrollNode,r=this._yScrollContainer,i=this._tableNode,s=this.get("width"),o=this.get("boundingBox").get("offsetWidth"),a=e.DOM.getScrollbarWidth(),f,l;n||(n=this._createXScrollNode(),(r||i).replace(n).appendTo(n)),f=u(n,"borderLeftWidth")+u(n,"borderRightWidth"),n.setStyle("width",""),this._uiSetDim("width",""),t&&this._yScrollContainer&&this._yScrollContainer.setStyle("width",""),e.UA.ie&&e.UA.ie<8&&(i.setStyle("width",s),i.get("offsetWidth")),i.setStyle("width",""),l=i.get("offsetWidth"),i.setStyle("width",l+"px"),this._uiSetDim("width",s),n.setStyle("width",o-f+"px"),n.get("offsetWidth")-f>l&&(t?i.setStyle("width",n.get("offsetWidth")-f-a+"px"):i.setStyle("width","100%"))},_syncYScrollUI:function(t){var n=this._yScrollContainer,r=this._yScrollNode,i=this._xScrollNode,s=this._yScrollHeader,o=this._scrollbarNode,a=this._tableNode,f=this._theadNode,l=this._captionTable,c=this.get("boundingBox"),h=this.get("contentBox"),p=this.get("width"),d=c.get("offsetHeight"),v=e.DOM.getScrollbarWidth(),m;l&&!t&&l.setStyle("width",p||"100%"),n||(n=this._createYScrollNode(),r=this._yScrollNode,a.replace(n).appendTo(r)),m=t?i:n,t||a.setStyle("width",""),t&&(d-=v),r.setStyle("height",d-m.get("offsetTop")-u(m,"borderTopWidth")-u(m,"borderBottomWidth")+"px"),t?n.setStyle("width",a.get("offsetWidth")+v+"px"):this._uiSetYScrollWidth(p),l&&!t&&l.setStyle("width",n.get("offsetWidth")+"px"),f&&!s&&(s=this._createYScrollHeader(),n.prepend(s),this._syncScrollHeaders()),s&&(this._syncScrollColumnWidths(),s.setStyle("display",""),o||(o=this._createScrollbar(),this._bindScrollbar(),h.prepend(o)),this._uiSetScrollbarHeight(),this._uiSetScrollbarPosition(m))},_uiSetScrollable:function(){this.get("boundingBox").toggleClass(this.getClassName("scrollable","x"),this._xScroll).toggleClass(this.getClassName("scrollable","y"),this._yScroll)},_uiSetScrollbarHeight:function(){var e=this._scrollbarNode,t=this._yScrollNode,n=this._yScrollHeader;e&&t&&n&&(e.get("firstChild").setStyle("height",this._tbodyNode.get("scrollHeight")+"px"),e.setStyle("height",parseFloat(t.getComputedStyle("height"))-parseFloat(n.getComputedStyle("height"))+"px"))},_uiSetScrollbarPosition:function(t){var n=this._scrollbarNode,r=this._yScrollHeader;n&&t&&r&&n.setStyles({top:parseFloat(r.getComputedStyle("height"))+u(t,"borderTopWidth")+t.get("offsetTop")+"px",left:t.get("offsetWidth")-e.DOM.getScrollbarWidth()-1-u(t,"borderRightWidth")+"px"})},_uiSetYScrollWidth:function(t){var n=this._yScrollContainer,r=this._tableNode,i,s,o,u;n&&r&&(u=e.DOM.getScrollbarWidth(),t?(s=n.get("offsetWidth")-n.get("clientWidth")+u,n.setStyle("width",t),o=n.get("clientWidth")-s,r.setStyle("width",o+"px"),i=r.get("offsetWidth"),n.setStyle("width",i+u+"px")):(r.setStyle("width",""),n.setStyle("width",""),n.setStyle("width",r.get("offsetWidth")+u+"px")))},_unbindScrollbar:function(){this._scrollbarEventHandle&&this._scrollbarEventHandle.detach()},_unbindScrollResize:function(){this._scrollResizeHandle&&(this._scrollResizeHandle.detach(),delete this._scrollResizeHandle)}},!0),e.Base.mix(e.DataTable,[o])},"3.12.0",{requires:["datatable-base","datatable-column-widths","dom-screen"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/datatable-scroll/datatable-scroll.js b/lib/yuilib/3.12.0/datatable-scroll/datatable-scroll.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/datatable-scroll/datatable-scroll.js rename to lib/yuilib/3.12.0/datatable-scroll/datatable-scroll.js index e511ef311aa..85c792caa8b --- a/lib/yuilib/3.9.1/build/datatable-scroll/datatable-scroll.js +++ b/lib/yuilib/3.12.0/datatable-scroll/datatable-scroll.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatable-scroll', function (Y, NAME) { /** @@ -1384,4 +1390,4 @@ Y.mix(Scrollable.prototype, { Y.Base.mix(Y.DataTable, [Scrollable]); -}, '3.9.1', {"requires": ["datatable-base", "datatable-column-widths", "dom-screen"], "skinnable": true}); +}, '3.12.0', {"requires": ["datatable-base", "datatable-column-widths", "dom-screen"], "skinnable": true}); diff --git a/lib/yuilib/3.9.1/build/datatable-sort/assets/datatable-sort-core.css b/lib/yuilib/3.12.0/datatable-sort/assets/datatable-sort-core.css old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatable-sort/assets/datatable-sort-core.css rename to lib/yuilib/3.12.0/datatable-sort/assets/datatable-sort-core.css index b87b4340322..4881b6ce651 --- a/lib/yuilib/3.9.1/build/datatable-sort/assets/datatable-sort-core.css +++ b/lib/yuilib/3.12.0/datatable-sort/assets/datatable-sort-core.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* foundational CSS */ .yui3-datatable-sortable-column { z-index: 1; diff --git a/lib/yuilib/3.9.1/build/datatable-sort/assets/skins/night/datatable-sort-skin.css b/lib/yuilib/3.12.0/datatable-sort/assets/skins/night/datatable-sort-skin.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/datatable-sort/assets/skins/night/datatable-sort-skin.css rename to lib/yuilib/3.12.0/datatable-sort/assets/skins/night/datatable-sort-skin.css index 63e9c3c2c77..3de82b1cbd3 --- a/lib/yuilib/3.9.1/build/datatable-sort/assets/skins/night/datatable-sort-skin.css +++ b/lib/yuilib/3.12.0/datatable-sort/assets/skins/night/datatable-sort-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-night .yui3-datatable-sortable-column { cursor: pointer; } diff --git a/lib/yuilib/3.12.0/datatable-sort/assets/skins/night/datatable-sort.css b/lib/yuilib/3.12.0/datatable-sort/assets/skins/night/datatable-sort.css new file mode 100755 index 00000000000..92b6a1f072c --- /dev/null +++ b/lib/yuilib/3.12.0/datatable-sort/assets/skins/night/datatable-sort.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-datatable-sortable-column{z-index:1}.yui3-datatable-sortable-column:focus,.yui3-datatable-sortable-column:active{z-index:2}.yui3-datatable-sort-liner{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.yui3-skin-night .yui3-datatable-sortable-column{cursor:pointer}.yui3-skin-night .yui3-datatable-columns .yui3-datatable-sorted,.yui3-skin-night .yui3-datatable-sortable-column:hover{background-color:#4d4e4f;*background:#505152 url(../../../../assets/skins/night/sprite.png) repeat-x 0 -100px;background-image:-webkit-gradient(linear,0 0,0 100%,from(rgba(255,255,255,0.2)),color-stop(40%,rgba(255,255,255,0.1)),color-stop(80%,rgba(255,255,255,0.01)),to(transparent));background-image:-webkit-linear-gradient(rgba(255,255,255,0.2),rgba(255,255,255,0.1) 40%,rgba(255,255,255,0.01) 80%,transparent);background-image:-moz-linear-gradient(top,rgba(255,255,255,0.2),rgba(255,255,255,0.1) 40%,rgba(255,255,255,0.01) 80%,transparent);background-image:-ms-linear-gradient(rgba(255,255,255,0.2),rgba(255,255,255,0.1) 40%,rgba(255,255,255,0.01) 80%,transparent);background-image:-o-linear-gradient(rgba(255,255,255,0.2),rgba(255,255,255,0.1) 40%,rgba(255,255,255,0.01) 80%,transparent);background-image:linear-gradient(rgba(255,255,255,0.2),rgba(255,255,255,0.1) 40%,rgba(255,255,255,0.01) 80%,transparent)}.yui3-skin-night .yui3-datatable-sort-liner{display:block;height:100%;position:relative;padding-right:15px;position:relative}.yui3-skin-night .yui3-datatable-sort-indicator{position:absolute;right:0;bottom:.5ex;width:7px;height:10px;background:url(sort-arrow-sprite.png) no-repeat 0 0;_background:url(sort-arrow-sprite-ie.png) no-repeat 0 0;overflow:hidden}.yui3-skin-night .yui3-datatable-sorted .yui3-datatable-sort-indicator{background-position:0 -10px}.yui3-skin-night .yui3-datatable-sorted-desc .yui3-datatable-sort-indicator{background-position:0 -20px}.yui3-skin-night .yui3-datatable-data .yui3-datatable-even .yui3-datatable-sorted{background-color:#262626;color:#b3b2b2}.yui3-skin-night .yui3-datatable-data .yui3-datatable-odd .yui3-datatable-sorted{background-color:#393a3a;color:#cbcbcb}#yui3-css-stamp.skin-night-datatable-sort{display:none} diff --git a/lib/yuilib/3.12.0/datatable-sort/assets/skins/night/sort-arrow-sprite-ie.png b/lib/yuilib/3.12.0/datatable-sort/assets/skins/night/sort-arrow-sprite-ie.png new file mode 100755 index 0000000000000000000000000000000000000000..9ced289458e1cf117d6ea50487654ea270800428 GIT binary patch literal 3629 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 literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/datatable-sort/assets/skins/night/sort-arrow-sprite.png b/lib/yuilib/3.12.0/datatable-sort/assets/skins/night/sort-arrow-sprite.png new file mode 100755 index 0000000000000000000000000000000000000000..c4befbc9a37dd17894a9782b2c0d8116364ea78b GIT binary patch literal 2885 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
    ',toggleSort:function(t,n){var r=this._sortBy,i=[],s,o,a,f,l;for(s=0,o=r.length;s=0;--s)if(i[a][f]){i[a][f]*=-1;break}}}else for(s=0,o=i.length;sl?u:f=s&&n.push(r._id)}else n[0][t]=-(r.sortDir||0)||1;this.fire("sort",{originEvent:e,sortBy:n})}},_parseSortable:function(){var e=this.get("sortable"),t=[],n,r,i;if(s(e))for(n=0,r=e.length;n=0;--n)t[n].sortable||t.splice(n,1)}this._sortable=t},_renderSortable:function(){this._uiSetSortable(),this._bindSortUI()},_setSortBy:function(){var e=this._displayColumns,t=this.get("sortBy")||[],n=" "+this.getClassName("sorted"),r,i,s,a,l,c;this._sortBy=[];for(r=0,i=e.length;r
    ',toggleSort:function(t,n){var r=this._sortBy,i=[],s,o,a,f,l;for(s=0,o=r.length;s=0;--s)if(i[a][f]){i[a][f]*=-1;break}}}else for(s=0,o=i.length;sl?u:f=s&&r.push(n._id)}else r=[{}],r[0][t]=-(n.sortDir||0)||1;this.fire("sort",{originEvent:e,sortBy:r})}},_parseSortable:function(){var e=this.get("sortable"),t=[],n,r,i;if(s(e))for(n=0,r=e.length;n=0;--n)t[n].sortable||t.splice(n,1)}this._sortable=t},_renderSortable:function(){this._uiSetSortable(),this._bindSortUI()},_setSortBy:function(){var e=this._displayColumns,t=this.get("sortBy")||[],n=" "+this.getClassName("sorted"),r,i,s,a,l,c;this._sortBy=[];for(r=0,i=e.length;r',TABLE_TEMPLATE:'',getCell:function(){return this.body&&this.body.getCell&&this.body.getCell.apply(this.body,arguments)},getClassName:function(){var t=this.host,r=t&&t.constructor.NAME||this.constructor.NAME;return t&&t.getClassName?t.getClassName.apply(t,arguments):e.ClassNameManager.getClassName.apply(e.ClassNameManager,[r].concat(n(arguments,0,!0)))},getRecord:function(){return this.body&&this.body.getRecord&&this.body.getRecord.apply(this.body,arguments)},getRow:function(){return this.body&&this.body.getRow&&this.body.getRow.apply(this.body,arguments)},_afterSummaryChange:function(e){this._uiSetSummary(e.newVal)},_afterCaptionChange:function(e){this._uiSetCaption(e.newVal)},_afterWidthChange:function(e){this._uiSetWidth(e.newVal)},_bindUI:function(){var t;this._eventHandles||(t=e.bind("_relayAttrChange",this),this._eventHandles=this.after({columnsChange:t,modelListChange:t,summaryChange:e.bind("_afterSummaryChange",this),captionChange:e.bind("_afterCaptionChange",this),widthChange:e.bind("_afterWidthChange",this)}))},_createTable:function(){return e.Node.create(i(this.TABLE_TEMPLATE,{className:this.getClassName("table")})).empty()},_defRenderBodyFn:function(e){e.view.render()},_defRenderFooterFn:function(e){e.view.render()},_defRenderHeaderFn:function(e){e.view.render()},_defRenderTableFn:function(t){var n=this.get("container"),r=this.getAttrs();this.tableNode||(this.tableNode=this._createTable()),r.host=this.get("host")||this,r.table=this,r.container=this.tableNode,this._uiSetCaption(this.get("caption")),this._uiSetSummary(this.get("summary")),this._uiSetWidth(this.get("width"));if(this.head||t.headerView)this.head||(this.head=new t.headerView(e.merge(r,t.headerConfig))),this.fire("renderHeader",{view:this.head});if(this.foot||t.footerView)this.foot||(this.foot=new t.footerView(e.merge(r,t.footerConfig))),this.fire("renderFooter",{view:this.foot});r.columns=this.displayColumns;if(this.body||t.bodyView)this.body||(this.body=new t.bodyView(e.merge(r,t.bodyConfig))),this.fire("renderBody",{view:this.body});n.contains(this.tableNode)||n.append(this.tableNode),this._bindUI()},destructor:function(){this.head&&this.head.destroy&&this.head.destroy(),delete this.head,this.foot&&this.foot.destroy&&this.foot.destroy(),delete this.foot,this.body&&this.body.destroy&&this.body.destroy(),delete this.body,this._eventHandles&&(this._eventHandles.detach(),delete this._eventHandles),this.tableNode&&this.tableNode.remove().destroy(!0)},_extractDisplayColumns:function(){function n(e){var r,i,o;for(r=0,i=e.length;r',TABLE_TEMPLATE:'
    ',getCell:function(){return this.body&&this.body.getCell&&this.body.getCell.apply(this.body,arguments)},getClassName:function(){var t=this.host,r=t&&t.constructor.NAME||this.constructor.NAME;return t&&t.getClassName?t.getClassName.apply(t,arguments):e.ClassNameManager.getClassName.apply(e.ClassNameManager,[r].concat(n(arguments,0,!0)))},getRecord:function(){return this.body&&this.body.getRecord&&this.body.getRecord.apply(this.body,arguments)},getRow:function(){return this.body&&this.body.getRow&&this.body.getRow.apply(this.body,arguments)},_afterSummaryChange:function(e){this._uiSetSummary(e.newVal)},_afterCaptionChange:function(e){this._uiSetCaption(e.newVal)},_afterWidthChange:function(e){this._uiSetWidth(e.newVal)},_bindUI:function(){var t;this._eventHandles||(t=e.bind("_relayAttrChange",this),this._eventHandles=this.after({columnsChange:t,modelListChange:t,summaryChange:e.bind("_afterSummaryChange",this),captionChange:e.bind("_afterCaptionChange",this),widthChange:e.bind("_afterWidthChange",this)}))},_createTable:function(){return e.Node.create(i(this.TABLE_TEMPLATE,{className:this.getClassName("table")})).empty()},_defRenderBodyFn:function(e){e.view.render()},_defRenderFooterFn:function(e){e.view.render()},_defRenderHeaderFn:function(e){e.view.render()},_defRenderTableFn:function(t){var n=this.get("container"),r=this.getAttrs();this.tableNode||(this.tableNode=this._createTable()),r.host=this.get("host")||this,r.table=this,r.container=this.tableNode,this._uiSetCaption(this.get("caption")),this._uiSetSummary(this.get("summary")),this._uiSetWidth(this.get("width"));if(this.head||t.headerView)this.head||(this.head=new t.headerView(e.merge(r,t.headerConfig))),this.fire("renderHeader",{view:this.head});if(this.foot||t.footerView)this.foot||(this.foot=new t.footerView(e.merge(r,t.footerConfig))),this.fire("renderFooter",{view:this.foot});r.columns=this.displayColumns;if(this.body||t.bodyView)this.body||(this.body=new t.bodyView(e.merge(r,t.bodyConfig))),this.fire("renderBody",{view:this.body});n.contains(this.tableNode)||n.append(this.tableNode),this._bindUI()},destructor:function(){this.head&&this.head.destroy&&this.head.destroy(),delete this.head,this.foot&&this.foot.destroy&&this.foot.destroy(),delete this.foot,this.body&&this.body.destroy&&this.body.destroy(),delete this.body,this._eventHandles&&(this._eventHandles.detach(),delete this._eventHandles),this.tableNode&&this.tableNode.remove().destroy(!0)},_extractDisplayColumns:function(){function n(e){var r,i,o;for(r=0,i=e.length;r1;n/=10)e=t+e;return e.toString()},r={formats:{a:function(e,t){return t.a[e.getDay()]},A:function(e,t){return t.A[e.getDay()]},b:function(e,t){return t.b[e.getMonth()]},B:function(e,t){return t.B[e.getMonth()]},C:function(e){return n(parseInt(e.getFullYear()/100,10),0)},d:["getDate","0"],e:["getDate"," "],g:function(e){return n(parseInt(r.formats.G(e)%100,10),0)},G:function(e){var t=e.getFullYear(),n=parseInt(r.formats.V(e),10),i=parseInt(r.formats.W(e),10);return i>n?t++:i===0&&n>=52&&t--,t},H:["getHours","0"],I:function(e){var t=e.getHours()%12;return n(t===0?12:t,0)},j:function(e){var t=new Date(""+e.getFullYear()+"/1/1 GMT"),r=new Date(""+e.getFullYear()+"/"+(e.getMonth()+1)+"/"+e.getDate()+" GMT"),i=r-t,s=parseInt(i/6e4/60/24,10)+1;return n(s,0,100)},k:["getHours"," "],l:function(e){var t=e.getHours()%12;return n(t===0?12:t," ")},m:function(e){return n(e.getMonth()+1,0)},M:["getMinutes","0"],p:function(e,t){return t.p[e.getHours()>=12?1:0]},P:function(e,t){return t.P[e.getHours()>=12?1:0]},s:function(e,t){return parseInt(e.getTime()/1e3,10)},S:["getSeconds","0"],u:function(e){var t=e.getDay();return t===0?7:t},U:function(e){var t=parseInt(r.formats.j(e),10),i=6-e.getDay(),s=parseInt((t+i)/7,10);return n(s,0)},V:function(e){var t=parseInt(r.formats.W(e),10),i=(new Date(""+e.getFullYear()+"/1/1")).getDay(),s=t+(i>4||i<=1?0:1);return s===53&&(new Date(""+e.getFullYear()+"/12/31")).getDay()<4?s=1:s===0&&(s=r.formats.V(new Date(""+(e.getFullYear()-1)+"/12/31"))),n(s,0)},w:"getDay",W:function(e){var t=parseInt(r.formats.j(e),10),i=7-r.formats.u(e),s=parseInt((t+i)/7,10);return n(s,0,10)},y:function(e){return n(e.getFullYear()%100,0)},Y:"getFullYear",z:function(e){var t=e.getTimezoneOffset(),r=n(parseInt(Math.abs(t/60),10),0),i=n(Math.abs(t%60),0);return(t>0?"-":"+")+r+i},Z:function(e){var t=e.toString().replace(/^.*:\d\d( GMT[+-]\d+)? \(?([A-Za-z ]+)\)?\d*$/,"$2").replace(/[a-z ]/g,"");return t.length>4&&(t=r.formats.z(e)),t},"%":function(e){return"%"}},aggregates:{c:"locale",D:"%m/%d/%y",F:"%Y-%m-%d",h:"%b",n:"\n",r:"%I:%M:%S %p",R:"%H:%M",t:" ",T:"%H:%M:%S",x:"locale",X:"locale"},format:function(t,i){i=i||{};if(!e.Lang.isDate(t))return e.Lang.isValue(t)?t:"";var s,o,u,a,f;s=i.format||"%Y-%m-%d",o=e.Intl.get("datatype-date-format");var l=function(e,t){if(u&&t==="r")return o[t];var n=r.aggregates[t];return n==="locale"?o[t]:n},c=function(i,s){var u=r.formats[s];switch(e.Lang.type(u)){case"string":return t[u]();case"function":return u.call(t,t,o);case"array":if(e.Lang.type(u[0])==="string")return n(t[u[0]](),u[1]);default:return s}};while(s.match(/%[cDFhnrRtTxX]/))s=s.replace(/%([cDFhnrRtTxX])/g,l);var h=s.replace(/%([aAbBCdegGHIjklmMpPsSuUVwWyYzZ%])/g,c);return l=c=undefined,h}};e.mix(e.namespace("Date"),r),e.namespace("DataType"),e.DataType.Date=e.Date},"3.9.1",{lang:["ar","ar-JO","ca","ca-ES","da","da-DK","de","de-AT","de-DE","el","el-GR","en","en-AU","en-CA","en-GB","en-IE","en-IN","en-JO","en-MY","en-NZ","en-PH","en-SG","en-US","es","es-AR","es-BO","es-CL","es-CO","es-EC","es-ES","es-MX","es-PE","es-PY","es-US","es-UY","es-VE","fi","fi-FI","fr","fr-BE","fr-CA","fr-FR","hi","hi-IN","id","id-ID","it","it-IT","ja","ja-JP","ko","ko-KR","ms","ms-MY","nb","nb-NO","nl","nl-BE","nl-NL","pl","pl-PL","pt","pt-BR","ro","ro-RO","ru","ru-RU","sv","sv-SE","th","th-TH","tr","tr-TR","vi","vi-VN","zh-Hans","zh-Hans-CN","zh-Hant","zh-Hant-HK","zh-Hant-TW"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datatype-date-format",function(e,t){var n=function(e,t,n){typeof n=="undefined"&&(n=10),t+="";for(;parseInt(e,10)1;n/=10)e=t+e;return e.toString()},r={formats:{a:function(e,t){return t.a[e.getDay()]},A:function(e,t){return t.A[e.getDay()]},b:function(e,t){return t.b[e.getMonth()]},B:function(e,t){return t.B[e.getMonth()]},C:function(e){return n(parseInt(e.getFullYear()/100,10),0)},d:["getDate","0"],e:["getDate"," "],g:function(e){return n(parseInt(r.formats.G(e)%100,10),0)},G:function(e){var t=e.getFullYear(),n=parseInt(r.formats.V(e),10),i=parseInt(r.formats.W(e),10);return i>n?t++:i===0&&n>=52&&t--,t},H:["getHours","0"],I:function(e){var t=e.getHours()%12;return n(t===0?12:t,0)},j:function(e){var t=new Date(""+e.getFullYear()+"/1/1 GMT"),r=new Date(""+e.getFullYear()+"/"+(e.getMonth()+1)+"/"+e.getDate()+" GMT"),i=r-t,s=parseInt(i/6e4/60/24,10)+1;return n(s,0,100)},k:["getHours"," "],l:function(e){var t=e.getHours()%12;return n(t===0?12:t," ")},m:function(e){return n(e.getMonth()+1,0)},M:["getMinutes","0"],p:function(e,t){return t.p[e.getHours()>=12?1:0]},P:function(e,t){return t.P[e.getHours()>=12?1:0]},s:function(e,t){return parseInt(e.getTime()/1e3,10)},S:["getSeconds","0"],u:function(e){var t=e.getDay();return t===0?7:t},U:function(e){var t=parseInt(r.formats.j(e),10),i=6-e.getDay(),s=parseInt((t+i)/7,10);return n(s,0)},V:function(e){var t=parseInt(r.formats.W(e),10),i=(new Date(""+e.getFullYear()+"/1/1")).getDay(),s=t+(i>4||i<=1?0:1);return s===53&&(new Date(""+e.getFullYear()+"/12/31")).getDay()<4?s=1:s===0&&(s=r.formats.V(new Date(""+(e.getFullYear()-1)+"/12/31"))),n(s,0)},w:"getDay",W:function(e){var t=parseInt(r.formats.j(e),10),i=7-r.formats.u(e),s=parseInt((t+i)/7,10);return n(s,0,10)},y:function(e){return n(e.getFullYear()%100,0)},Y:"getFullYear",z:function(e){var t=e.getTimezoneOffset(),r=n(parseInt(Math.abs(t/60),10),0),i=n(Math.abs(t%60),0);return(t>0?"-":"+")+r+i},Z:function(e){var t=e.toString().replace(/^.*:\d\d( GMT[+-]\d+)? \(?([A-Za-z ]+)\)?\d*$/,"$2").replace(/[a-z ]/g,"");return t.length>4&&(t=r.formats.z(e)),t},"%":function(e){return"%"}},aggregates:{c:"locale",D:"%m/%d/%y",F:"%Y-%m-%d",h:"%b",n:"\n",r:"%I:%M:%S %p",R:"%H:%M",t:" ",T:"%H:%M:%S",x:"locale",X:"locale"},format:function(t,i){i=i||{};if(!e.Lang.isDate(t))return e.Lang.isValue(t)?t:"";var s,o,u,a,f;s=i.format||"%Y-%m-%d",o=e.Intl.get("datatype-date-format");var l=function(e,t){if(u&&t==="r")return o[t];var n=r.aggregates[t];return n==="locale"?o[t]:n},c=function(i,s){var u=r.formats[s];switch(e.Lang.type(u)){case"string":return t[u]();case"function":return u.call(t,t,o);case"array":if(e.Lang.type(u[0])==="string")return n(t[u[0]](),u[1]);default:return s}};while(s.match(/%[cDFhnrRtTxX]/))s=s.replace(/%([cDFhnrRtTxX])/g,l);var h=s.replace(/%([aAbBCdegGHIjklmMpPsSuUVwWyYzZ%])/g,c);return l=c=undefined,h}};e.mix(e.namespace("Date"),r),e.namespace("DataType"),e.DataType.Date=e.Date},"3.12.0",{lang:["ar","ar-JO","ca","ca-ES","da","da-DK","de","de-AT","de-DE","el","el-GR","en","en-AU","en-CA","en-GB","en-IE","en-IN","en-JO","en-MY","en-NZ","en-PH","en-SG","en-US","es","es-AR","es-BO","es-CL","es-CO","es-EC","es-ES","es-MX","es-PE","es-PY","es-US","es-UY","es-VE","fi","fi-FI","fr","fr-BE","fr-CA","fr-FR","hi","hi-IN","hu","id","id-ID","it","it-IT","ja","ja-JP","ko","ko-KR","ms","ms-MY","nb","nb-NO","nl","nl-BE","nl-NL","pl","pl-PL","pt","pt-BR","ro","ro-RO","ru","ru-RU","sv","sv-SE","th","th-TH","tr","tr-TR","vi","vi-VN","zh-Hans","zh-Hans-CN","zh-Hant","zh-Hant-HK","zh-Hant-TW"]}); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/datatype-date-format.js b/lib/yuilib/3.12.0/datatype-date-format/datatype-date-format.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/datatype-date-format/datatype-date-format.js rename to lib/yuilib/3.12.0/datatype-date-format/datatype-date-format.js index a6db7a4b021..4db62665fd0 --- a/lib/yuilib/3.9.1/build/datatype-date-format/datatype-date-format.js +++ b/lib/yuilib/3.12.0/datatype-date-format/datatype-date-format.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-date-format', function (Y, NAME) { /** @@ -299,7 +305,7 @@ Y.namespace("DataType"); Y.DataType.Date = Y.Date; -}, '3.9.1', { +}, '3.12.0', { "lang": [ "ar", "ar-JO", @@ -345,6 +351,7 @@ Y.DataType.Date = Y.Date; "fr-FR", "hi", "hi-IN", + "hu", "id", "id-ID", "it", diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format.js old mode 100644 new mode 100755 similarity index 70% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format.js index 1902776b5af..0663f980b35 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format",function(e){e.Intl.add("datatype-date-format","",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%Y-%m-%dT%H:%M:%S%z",p:["AM","PM"],P:["am","pm"],x:"%Y-%m-%d",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format",function(e){e.Intl.add("datatype-date-format","",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%Y-%m-%dT%H:%M:%S%z",p:["AM","PM"],P:["am","pm"],x:"%Y-%m-%d",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ar-JO.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ar-JO.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ar-JO.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ar-JO.js index 6b06f8dbc07..c3c50acf999 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ar-JO.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ar-JO.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ar-JO",function(e){e.Intl.add("datatype-date-format","ar-JO",{a:["\u0627\u0644\u0623\u062d\u062f","\u0627\u0644\u0627\u062b\u0646\u064a\u0646","\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621","\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621","\u0627\u0644\u062e\u0645\u064a\u0633","\u0627\u0644\u062c\u0645\u0639\u0629","\u0627\u0644\u0633\u0628\u062a"],A:["\u0627\u0644\u0623\u062d\u062f","\u0627\u0644\u0625\u062b\u0646\u064a\u0646","\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621","\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621","\u0627\u0644\u062e\u0645\u064a\u0633","\u0627\u0644\u062c\u0645\u0639\u0629","\u0627\u0644\u0633\u0628\u062a"],b:["\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u062b\u0627\u0646\u064a","\u0634\u0628\u0627\u0637","\u0622\u0630\u0627\u0631","\u0646\u064a\u0633\u0627\u0646","\u0623\u064a\u0627\u0631","\u062d\u0632\u064a\u0631\u0627\u0646","\u062a\u0645\u0648\u0632","\u0622\u0628","\u0623\u064a\u0644\u0648\u0644","\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u0623\u0648\u0644","\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u064a","\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644"],B:["\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u062b\u0627\u0646\u064a","\u0634\u0628\u0627\u0637","\u0622\u0630\u0627\u0631","\u0646\u064a\u0633\u0627\u0646","\u0623\u064a\u0627\u0631","\u062d\u0632\u064a\u0631\u0627\u0646","\u062a\u0645\u0648\u0632","\u0622\u0628","\u0623\u064a\u0644\u0648\u0644","\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u0623\u0648\u0644","\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u064a","\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644"],c:"%a\u060c %d %B %Y %Z %l:%M:%S %p",p:["\u0635","\u0645"],P:["\u0635","\u0645"],x:"%d\u200f/%m\u200f/%Y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ar-JO",function(e){e.Intl.add("datatype-date-format","ar-JO",{a:["\u0627\u0644\u0623\u062d\u062f","\u0627\u0644\u0627\u062b\u0646\u064a\u0646","\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621","\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621","\u0627\u0644\u062e\u0645\u064a\u0633","\u0627\u0644\u062c\u0645\u0639\u0629","\u0627\u0644\u0633\u0628\u062a"],A:["\u0627\u0644\u0623\u062d\u062f","\u0627\u0644\u0625\u062b\u0646\u064a\u0646","\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621","\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621","\u0627\u0644\u062e\u0645\u064a\u0633","\u0627\u0644\u062c\u0645\u0639\u0629","\u0627\u0644\u0633\u0628\u062a"],b:["\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u062b\u0627\u0646\u064a","\u0634\u0628\u0627\u0637","\u0622\u0630\u0627\u0631","\u0646\u064a\u0633\u0627\u0646","\u0623\u064a\u0627\u0631","\u062d\u0632\u064a\u0631\u0627\u0646","\u062a\u0645\u0648\u0632","\u0622\u0628","\u0623\u064a\u0644\u0648\u0644","\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u0623\u0648\u0644","\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u064a","\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644"],B:["\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u062b\u0627\u0646\u064a","\u0634\u0628\u0627\u0637","\u0622\u0630\u0627\u0631","\u0646\u064a\u0633\u0627\u0646","\u0623\u064a\u0627\u0631","\u062d\u0632\u064a\u0631\u0627\u0646","\u062a\u0645\u0648\u0632","\u0622\u0628","\u0623\u064a\u0644\u0648\u0644","\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u0623\u0648\u0644","\u062a\u0634\u0631\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u064a","\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644"],c:"%a\u060c %d %B %Y %Z %l:%M:%S %p",p:["\u0635","\u0645"],P:["\u0635","\u0645"],x:"%d\u200f/%m\u200f/%Y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ar.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ar.js old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ar.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ar.js index b1e78b1a80a..2e96cd34664 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ar.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ar.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ar",function(e){e.Intl.add("datatype-date-format","ar",{a:["\u0623\u062d\u062f","\u0625\u062b\u0646\u064a\u0646","\u062b\u0644\u0627\u062b\u0627\u0621","\u0623\u0631\u0628\u0639\u0627\u0621","\u062e\u0645\u064a\u0633","\u062c\u0645\u0639\u0629","\u0633\u0628\u062a"],A:["\u0627\u0644\u0623\u062d\u062f","\u0627\u0644\u0625\u062b\u0646\u064a\u0646","\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621","\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621","\u0627\u0644\u062e\u0645\u064a\u0633","\u0627\u0644\u062c\u0645\u0639\u0629","\u0627\u0644\u0633\u0628\u062a"],b:["\u064a\u0646\u0627\u064a\u0631","\u0641\u0628\u0631\u0627\u064a\u0631","\u0645\u0627\u0631\u0633","\u0623\u0628\u0631\u064a\u0644","\u0645\u0627\u064a\u0648","\u064a\u0648\u0646\u064a\u0648","\u064a\u0648\u0644\u064a\u0648","\u0623\u063a\u0633\u0637\u0633","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"],B:["\u064a\u0646\u0627\u064a\u0631","\u0641\u0628\u0631\u0627\u064a\u0631","\u0645\u0627\u0631\u0633","\u0623\u0628\u0631\u064a\u0644","\u0645\u0627\u064a\u0648","\u064a\u0648\u0646\u064a\u0648","\u064a\u0648\u0644\u064a\u0648","\u0623\u063a\u0633\u0637\u0633","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"],c:"%a\u060c %d %B %Y %Z %l:%M:%S %p",p:["\u0635","\u0645"],P:["\u0635","\u0645"],x:"%d\u200f/%m\u200f/%Y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ar",function(e){e.Intl.add("datatype-date-format","ar",{a:["\u0623\u062d\u062f","\u0625\u062b\u0646\u064a\u0646","\u062b\u0644\u0627\u062b\u0627\u0621","\u0623\u0631\u0628\u0639\u0627\u0621","\u062e\u0645\u064a\u0633","\u062c\u0645\u0639\u0629","\u0633\u0628\u062a"],A:["\u0627\u0644\u0623\u062d\u062f","\u0627\u0644\u0625\u062b\u0646\u064a\u0646","\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621","\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621","\u0627\u0644\u062e\u0645\u064a\u0633","\u0627\u0644\u062c\u0645\u0639\u0629","\u0627\u0644\u0633\u0628\u062a"],b:["\u064a\u0646\u0627\u064a\u0631","\u0641\u0628\u0631\u0627\u064a\u0631","\u0645\u0627\u0631\u0633","\u0623\u0628\u0631\u064a\u0644","\u0645\u0627\u064a\u0648","\u064a\u0648\u0646\u064a\u0648","\u064a\u0648\u0644\u064a\u0648","\u0623\u063a\u0633\u0637\u0633","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"],B:["\u064a\u0646\u0627\u064a\u0631","\u0641\u0628\u0631\u0627\u064a\u0631","\u0645\u0627\u0631\u0633","\u0623\u0628\u0631\u064a\u0644","\u0645\u0627\u064a\u0648","\u064a\u0648\u0646\u064a\u0648","\u064a\u0648\u0644\u064a\u0648","\u0623\u063a\u0633\u0637\u0633","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"],c:"%a\u060c %d %B %Y %Z %l:%M:%S %p",p:["\u0635","\u0645"],P:["\u0635","\u0645"],x:"%d\u200f/%m\u200f/%Y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ca-ES.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ca-ES.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ca-ES.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ca-ES.js index 511fa1ab211..eb130ec8016 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ca-ES.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ca-ES.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ca-ES",function(e){e.Intl.add("datatype-date-format","ca-ES",{a:["dg.","dl.","dt.","dc.","dj.","dv.","ds."],A:["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"],b:["gen.","febr.","mar\u00e7","abr.","maig","juny","jul.","ag.","set.","oct.","nov.","des."],B:["gener","febrer","mar\u00e7","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre"],c:"%a %d %b %Y %k:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%k:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ca-ES",function(e){e.Intl.add("datatype-date-format","ca-ES",{a:["dg.","dl.","dt.","dc.","dj.","dv.","ds."],A:["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"],b:["gen.","febr.","mar\u00e7","abr.","maig","juny","jul.","ag.","set.","oct.","nov.","des."],B:["gener","febrer","mar\u00e7","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre"],c:"%a %d %b %Y %k:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%k:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ca.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ca.js old mode 100644 new mode 100755 similarity index 76% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ca.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ca.js index 8d00f505dcf..479352a1d37 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ca.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ca.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ca",function(e){e.Intl.add("datatype-date-format","ca",{a:["dg.","dl.","dt.","dc.","dj.","dv.","ds."],A:["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"],b:["gen.","febr.","mar\u00e7","abr.","maig","juny","jul.","ag.","set.","oct.","nov.","des."],B:["gener","febrer","mar\u00e7","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre"],c:"%a %d %b %Y %k:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%k:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ca",function(e){e.Intl.add("datatype-date-format","ca",{a:["dg.","dl.","dt.","dc.","dj.","dv.","ds."],A:["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"],b:["gen.","febr.","mar\u00e7","abr.","maig","juny","jul.","ag.","set.","oct.","nov.","des."],B:["gener","febrer","mar\u00e7","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre"],c:"%a %d %b %Y %k:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%k:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_da-DK.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_da-DK.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_da-DK.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_da-DK.js index 9c7272f2066..a69f47a1f62 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_da-DK.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_da-DK.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_da-DK",function(e){e.Intl.add("datatype-date-format","da-DK",{a:["s\u00f8n","man","tir","ons","tor","fre","l\u00f8r"],A:["s\u00f8ndag","mandag","tirsdag","onsdag","torsdag","fredag","l\u00f8rdag"],b:["jan.","feb.","mar.","apr.","maj","jun.","jul.","aug.","sep.","okt.","nov.","dec."],B:["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december"],c:"%a. %d. %b %Y %H.%M.%S %Z",p:["F.M.","E.M."],P:["f.m.","e.m."],x:"%d/%m/%y",X:"%H.%M.%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_da-DK",function(e){e.Intl.add("datatype-date-format","da-DK",{a:["s\u00f8n","man","tir","ons","tor","fre","l\u00f8r"],A:["s\u00f8ndag","mandag","tirsdag","onsdag","torsdag","fredag","l\u00f8rdag"],b:["jan.","feb.","mar.","apr.","maj","jun.","jul.","aug.","sep.","okt.","nov.","dec."],B:["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december"],c:"%a. %d. %b %Y %H.%M.%S %Z",p:["F.M.","E.M."],P:["f.m.","e.m."],x:"%d/%m/%y",X:"%H.%M.%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_da.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_da.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_da.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_da.js index eed50fd1075..7b897191d6f --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_da.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_da.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_da",function(e){e.Intl.add("datatype-date-format","da",{a:["s\u00f8n","man","tir","ons","tor","fre","l\u00f8r"],A:["s\u00f8ndag","mandag","tirsdag","onsdag","torsdag","fredag","l\u00f8rdag"],b:["jan.","feb.","mar.","apr.","maj","jun.","jul.","aug.","sep.","okt.","nov.","dec."],B:["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december"],c:"%a. %d. %b %Y %H.%M.%S %Z",p:["F.M.","E.M."],P:["f.m.","e.m."],x:"%d/%m/%y",X:"%H.%M.%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_da",function(e){e.Intl.add("datatype-date-format","da",{a:["s\u00f8n","man","tir","ons","tor","fre","l\u00f8r"],A:["s\u00f8ndag","mandag","tirsdag","onsdag","torsdag","fredag","l\u00f8rdag"],b:["jan.","feb.","mar.","apr.","maj","jun.","jul.","aug.","sep.","okt.","nov.","dec."],B:["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december"],c:"%a. %d. %b %Y %H.%M.%S %Z",p:["F.M.","E.M."],P:["f.m.","e.m."],x:"%d/%m/%y",X:"%H.%M.%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_de-AT.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_de-AT.js old mode 100644 new mode 100755 similarity index 74% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_de-AT.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_de-AT.js index b2019aa86bf..2fb6de2db2d --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_de-AT.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_de-AT.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_de-AT",function(e){e.Intl.add("datatype-date-format","de-AT",{a:["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."],A:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],b:["J\u00e4n","Feb","M\u00e4r","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],B:["J\u00e4nner","Februar","M\u00e4rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],c:"%a, %d. %b %Y %H:%M:%S %Z",p:["VORM.","NACHM."],P:["vorm.","nachm."],x:"%d.%m.%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_de-AT",function(e){e.Intl.add("datatype-date-format","de-AT",{a:["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."],A:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],b:["J\u00e4n","Feb","M\u00e4r","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],B:["J\u00e4nner","Februar","M\u00e4rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],c:"%a, %d. %b %Y %H:%M:%S %Z",p:["VORM.","NACHM."],P:["vorm.","nachm."],x:"%d.%m.%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_de-DE.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_de-DE.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_de-DE.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_de-DE.js index 12e2699ba4a..e9a5d7877c7 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_de-DE.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_de-DE.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_de-DE",function(e){e.Intl.add("datatype-date-format","de-DE",{a:["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."],A:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],b:["Jan","Feb","M\u00e4r","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],B:["Januar","Februar","M\u00e4rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],c:"%a, %d. %b %Y %H:%M:%S %Z",p:["VORM.","NACHM."],P:["vorm.","nachm."],x:"%d.%m.%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_de-DE",function(e){e.Intl.add("datatype-date-format","de-DE",{a:["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."],A:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],b:["Jan","Feb","M\u00e4r","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],B:["Januar","Februar","M\u00e4rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],c:"%a, %d. %b %Y %H:%M:%S %Z",p:["VORM.","NACHM."],P:["vorm.","nachm."],x:"%d.%m.%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_de.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_de.js old mode 100644 new mode 100755 similarity index 76% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_de.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_de.js index d0ed60b3352..7a3d5bd5162 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_de.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_de.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_de",function(e){e.Intl.add("datatype-date-format","de",{a:["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."],A:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],b:["Jan","Feb","M\u00e4r","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],B:["Januar","Februar","M\u00e4rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],c:"%a, %d. %b %Y %H:%M:%S %Z",p:["VORM.","NACHM."],P:["vorm.","nachm."],x:"%d.%m.%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_de",function(e){e.Intl.add("datatype-date-format","de",{a:["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."],A:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],b:["Jan","Feb","M\u00e4r","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],B:["Januar","Februar","M\u00e4rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],c:"%a, %d. %b %Y %H:%M:%S %Z",p:["VORM.","NACHM."],P:["vorm.","nachm."],x:"%d.%m.%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_el-GR.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_el-GR.js old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_el-GR.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_el-GR.js index e7bf7188a97..17460de1d09 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_el-GR.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_el-GR.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_el-GR",function(e){e.Intl.add("datatype-date-format","el-GR",{a:["\u039a\u03c5\u03c1","\u0394\u03b5\u03c5","\u03a4\u03c1\u03b9","\u03a4\u03b5\u03c4","\u03a0\u03b5\u03bc","\u03a0\u03b1\u03c1","\u03a3\u03b1\u03b2"],A:["\u039a\u03c5\u03c1\u03b9\u03b1\u03ba\u03ae","\u0394\u03b5\u03c5\u03c4\u03ad\u03c1\u03b1","\u03a4\u03c1\u03af\u03c4\u03b7","\u03a4\u03b5\u03c4\u03ac\u03c1\u03c4\u03b7","\u03a0\u03ad\u03bc\u03c0\u03c4\u03b7","\u03a0\u03b1\u03c1\u03b1\u03c3\u03ba\u03b5\u03c5\u03ae","\u03a3\u03ac\u03b2\u03b2\u03b1\u03c4\u03bf"],b:["\u0399\u03b1\u03bd","\u03a6\u03b5\u03b2","\u039c\u03b1\u03c1","\u0391\u03c0\u03c1","\u039c\u03b1\u03ca","\u0399\u03bf\u03c5\u03bd","\u0399\u03bf\u03c5\u03bb","\u0391\u03c5\u03b3","\u03a3\u03b5\u03c0","\u039f\u03ba\u03c4","\u039d\u03bf\u03b5","\u0394\u03b5\u03ba"],B:["\u0399\u03b1\u03bd\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5","\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5","\u039c\u03b1\u03c1\u03c4\u03af\u03bf\u03c5","\u0391\u03c0\u03c1\u03b9\u03bb\u03af\u03bf\u03c5","\u039c\u03b1\u0390\u03bf\u03c5","\u0399\u03bf\u03c5\u03bd\u03af\u03bf\u03c5","\u0399\u03bf\u03c5\u03bb\u03af\u03bf\u03c5","\u0391\u03c5\u03b3\u03bf\u03cd\u03c3\u03c4\u03bf\u03c5","\u03a3\u03b5\u03c0\u03c4\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5","\u039f\u03ba\u03c4\u03c9\u03b2\u03c1\u03af\u03bf\u03c5","\u039d\u03bf\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5","\u0394\u03b5\u03ba\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5"],c:"%a, %d %b %Y %l:%M:%S %p %Z",p:["\u03a0.\u039c.","\u039c.\u039c."],P:["\u03c0.\u03bc.","\u03bc.\u03bc."],x:"%d/%m/%Y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_el-GR",function(e){e.Intl.add("datatype-date-format","el-GR",{a:["\u039a\u03c5\u03c1","\u0394\u03b5\u03c5","\u03a4\u03c1\u03b9","\u03a4\u03b5\u03c4","\u03a0\u03b5\u03bc","\u03a0\u03b1\u03c1","\u03a3\u03b1\u03b2"],A:["\u039a\u03c5\u03c1\u03b9\u03b1\u03ba\u03ae","\u0394\u03b5\u03c5\u03c4\u03ad\u03c1\u03b1","\u03a4\u03c1\u03af\u03c4\u03b7","\u03a4\u03b5\u03c4\u03ac\u03c1\u03c4\u03b7","\u03a0\u03ad\u03bc\u03c0\u03c4\u03b7","\u03a0\u03b1\u03c1\u03b1\u03c3\u03ba\u03b5\u03c5\u03ae","\u03a3\u03ac\u03b2\u03b2\u03b1\u03c4\u03bf"],b:["\u0399\u03b1\u03bd","\u03a6\u03b5\u03b2","\u039c\u03b1\u03c1","\u0391\u03c0\u03c1","\u039c\u03b1\u03ca","\u0399\u03bf\u03c5\u03bd","\u0399\u03bf\u03c5\u03bb","\u0391\u03c5\u03b3","\u03a3\u03b5\u03c0","\u039f\u03ba\u03c4","\u039d\u03bf\u03b5","\u0394\u03b5\u03ba"],B:["\u0399\u03b1\u03bd\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5","\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5","\u039c\u03b1\u03c1\u03c4\u03af\u03bf\u03c5","\u0391\u03c0\u03c1\u03b9\u03bb\u03af\u03bf\u03c5","\u039c\u03b1\u0390\u03bf\u03c5","\u0399\u03bf\u03c5\u03bd\u03af\u03bf\u03c5","\u0399\u03bf\u03c5\u03bb\u03af\u03bf\u03c5","\u0391\u03c5\u03b3\u03bf\u03cd\u03c3\u03c4\u03bf\u03c5","\u03a3\u03b5\u03c0\u03c4\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5","\u039f\u03ba\u03c4\u03c9\u03b2\u03c1\u03af\u03bf\u03c5","\u039d\u03bf\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5","\u0394\u03b5\u03ba\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5"],c:"%a, %d %b %Y %l:%M:%S %p %Z",p:["\u03a0.\u039c.","\u039c.\u039c."],P:["\u03c0.\u03bc.","\u03bc.\u03bc."],x:"%d/%m/%Y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_el.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_el.js old mode 100644 new mode 100755 similarity index 90% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_el.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_el.js index 8e0e4e9279d..7f9b8aeb027 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_el.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_el.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_el",function(e){e.Intl.add("datatype-date-format","el",{a:["\u039a\u03c5\u03c1","\u0394\u03b5\u03c5","\u03a4\u03c1\u03b9","\u03a4\u03b5\u03c4","\u03a0\u03b5\u03bc","\u03a0\u03b1\u03c1","\u03a3\u03b1\u03b2"],A:["\u039a\u03c5\u03c1\u03b9\u03b1\u03ba\u03ae","\u0394\u03b5\u03c5\u03c4\u03ad\u03c1\u03b1","\u03a4\u03c1\u03af\u03c4\u03b7","\u03a4\u03b5\u03c4\u03ac\u03c1\u03c4\u03b7","\u03a0\u03ad\u03bc\u03c0\u03c4\u03b7","\u03a0\u03b1\u03c1\u03b1\u03c3\u03ba\u03b5\u03c5\u03ae","\u03a3\u03ac\u03b2\u03b2\u03b1\u03c4\u03bf"],b:["\u0399\u03b1\u03bd","\u03a6\u03b5\u03b2","\u039c\u03b1\u03c1","\u0391\u03c0\u03c1","\u039c\u03b1\u03ca","\u0399\u03bf\u03c5\u03bd","\u0399\u03bf\u03c5\u03bb","\u0391\u03c5\u03b3","\u03a3\u03b5\u03c0","\u039f\u03ba\u03c4","\u039d\u03bf\u03b5","\u0394\u03b5\u03ba"],B:["\u0399\u03b1\u03bd\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5","\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5","\u039c\u03b1\u03c1\u03c4\u03af\u03bf\u03c5","\u0391\u03c0\u03c1\u03b9\u03bb\u03af\u03bf\u03c5","\u039c\u03b1\u0390\u03bf\u03c5","\u0399\u03bf\u03c5\u03bd\u03af\u03bf\u03c5","\u0399\u03bf\u03c5\u03bb\u03af\u03bf\u03c5","\u0391\u03c5\u03b3\u03bf\u03cd\u03c3\u03c4\u03bf\u03c5","\u03a3\u03b5\u03c0\u03c4\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5","\u039f\u03ba\u03c4\u03c9\u03b2\u03c1\u03af\u03bf\u03c5","\u039d\u03bf\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5","\u0394\u03b5\u03ba\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5"],c:"%a, %d %b %Y %l:%M:%S %p %Z",p:["\u03a0.\u039c.","\u039c.\u039c."],P:["\u03c0.\u03bc.","\u03bc.\u03bc."],x:"%d/%m/%Y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_el",function(e){e.Intl.add("datatype-date-format","el",{a:["\u039a\u03c5\u03c1","\u0394\u03b5\u03c5","\u03a4\u03c1\u03b9","\u03a4\u03b5\u03c4","\u03a0\u03b5\u03bc","\u03a0\u03b1\u03c1","\u03a3\u03b1\u03b2"],A:["\u039a\u03c5\u03c1\u03b9\u03b1\u03ba\u03ae","\u0394\u03b5\u03c5\u03c4\u03ad\u03c1\u03b1","\u03a4\u03c1\u03af\u03c4\u03b7","\u03a4\u03b5\u03c4\u03ac\u03c1\u03c4\u03b7","\u03a0\u03ad\u03bc\u03c0\u03c4\u03b7","\u03a0\u03b1\u03c1\u03b1\u03c3\u03ba\u03b5\u03c5\u03ae","\u03a3\u03ac\u03b2\u03b2\u03b1\u03c4\u03bf"],b:["\u0399\u03b1\u03bd","\u03a6\u03b5\u03b2","\u039c\u03b1\u03c1","\u0391\u03c0\u03c1","\u039c\u03b1\u03ca","\u0399\u03bf\u03c5\u03bd","\u0399\u03bf\u03c5\u03bb","\u0391\u03c5\u03b3","\u03a3\u03b5\u03c0","\u039f\u03ba\u03c4","\u039d\u03bf\u03b5","\u0394\u03b5\u03ba"],B:["\u0399\u03b1\u03bd\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5","\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5","\u039c\u03b1\u03c1\u03c4\u03af\u03bf\u03c5","\u0391\u03c0\u03c1\u03b9\u03bb\u03af\u03bf\u03c5","\u039c\u03b1\u0390\u03bf\u03c5","\u0399\u03bf\u03c5\u03bd\u03af\u03bf\u03c5","\u0399\u03bf\u03c5\u03bb\u03af\u03bf\u03c5","\u0391\u03c5\u03b3\u03bf\u03cd\u03c3\u03c4\u03bf\u03c5","\u03a3\u03b5\u03c0\u03c4\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5","\u039f\u03ba\u03c4\u03c9\u03b2\u03c1\u03af\u03bf\u03c5","\u039d\u03bf\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5","\u0394\u03b5\u03ba\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5"],c:"%a, %d %b %Y %l:%M:%S %p %Z",p:["\u03a0.\u039c.","\u039c.\u039c."],P:["\u03c0.\u03bc.","\u03bc.\u03bc."],x:"%d/%m/%Y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-AU.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-AU.js old mode 100644 new mode 100755 similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-AU.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-AU.js index c3655a39879..ee72da739e6 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-AU.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-AU.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-AU",function(e){e.Intl.add("datatype-date-format","en-AU",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-AU",function(e){e.Intl.add("datatype-date-format","en-AU",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-CA.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-CA.js old mode 100644 new mode 100755 similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-CA.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-CA.js index 3b661c0e590..2bdc90bc962 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-CA.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-CA.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-CA",function(e){e.Intl.add("datatype-date-format","en-CA",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%y-%m-%d",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-CA",function(e){e.Intl.add("datatype-date-format","en-CA",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%y-%m-%d",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-GB.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-GB.js old mode 100644 new mode 100755 similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-GB.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-GB.js index c4ed41c07fa..14462d451f5 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-GB.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-GB.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-GB",function(e){e.Intl.add("datatype-date-format","en-GB",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%Y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-GB",function(e){e.Intl.add("datatype-date-format","en-GB",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%Y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-IE.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-IE.js old mode 100644 new mode 100755 similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-IE.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-IE.js index 8f499725213..bd225e7e42b --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-IE.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-IE.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-IE",function(e){e.Intl.add("datatype-date-format","en-IE",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%Y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-IE",function(e){e.Intl.add("datatype-date-format","en-IE",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%Y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-IN.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-IN.js old mode 100644 new mode 100755 similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-IN.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-IN.js index 1173c8c2cb2..e50ca142bae --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-IN.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-IN.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-IN",function(e){e.Intl.add("datatype-date-format","en-IN",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-IN",function(e){e.Intl.add("datatype-date-format","en-IN",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-JO.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-JO.js old mode 100644 new mode 100755 similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-JO.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-JO.js index 31f06be5511..506561d67ad --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-JO.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-JO.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-JO",function(e){e.Intl.add("datatype-date-format","en-JO",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-JO",function(e){e.Intl.add("datatype-date-format","en-JO",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-MY.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-MY.js old mode 100644 new mode 100755 similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-MY.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-MY.js index 76d5509691d..27b348e1abc --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-MY.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-MY.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-MY",function(e){e.Intl.add("datatype-date-format","en-MY",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-MY",function(e){e.Intl.add("datatype-date-format","en-MY",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-NZ.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-NZ.js old mode 100644 new mode 100755 similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-NZ.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-NZ.js index 52af520c7c0..297b951e3c9 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-NZ.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-NZ.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-NZ",function(e){e.Intl.add("datatype-date-format","en-NZ",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-NZ",function(e){e.Intl.add("datatype-date-format","en-NZ",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-PH.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-PH.js old mode 100644 new mode 100755 similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-PH.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-PH.js index 18d2f6920f8..c4c8a9275ba --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-PH.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-PH.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-PH",function(e){e.Intl.add("datatype-date-format","en-PH",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-PH",function(e){e.Intl.add("datatype-date-format","en-PH",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-SG.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-SG.js old mode 100644 new mode 100755 similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-SG.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-SG.js index f9de068759f..4ae796b371e --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-SG.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-SG.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-SG",function(e){e.Intl.add("datatype-date-format","en-SG",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-SG",function(e){e.Intl.add("datatype-date-format","en-SG",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-US.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-US.js old mode 100644 new mode 100755 similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-US.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-US.js index 47518a3d677..fd81da850b2 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en-US.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en-US.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en-US",function(e){e.Intl.add("datatype-date-format","en-US",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en-US",function(e){e.Intl.add("datatype-date-format","en-US",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en.js old mode 100644 new mode 100755 similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en.js index 1ca26bc4e52..5539af6da58 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_en.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_en.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_en",function(e){e.Intl.add("datatype-date-format","en",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_en",function(e){e.Intl.add("datatype-date-format","en",{a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-AR.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-AR.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-AR.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-AR.js index 6fc7e4dbf48..2539420f100 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-AR.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-AR.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-AR",function(e){e.Intl.add("datatype-date-format","es-AR",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %Hh'%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%Hh'%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-AR",function(e){e.Intl.add("datatype-date-format","es-AR",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %Hh'%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%Hh'%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-BO.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-BO.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-BO.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-BO.js index 07d503b1782..48d9ad96820 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-BO.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-BO.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-BO",function(e){e.Intl.add("datatype-date-format","es-BO",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-BO",function(e){e.Intl.add("datatype-date-format","es-BO",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-CL.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-CL.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-CL.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-CL.js index 4f5cfd01c2c..4022396b8eb --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-CL.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-CL.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-CL",function(e){e.Intl.add("datatype-date-format","es-CL",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d-%m-%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-CL",function(e){e.Intl.add("datatype-date-format","es-CL",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d-%m-%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-CO.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-CO.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-CO.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-CO.js index bcf1b0d70b8..27f77ec2ec9 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-CO.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-CO.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-CO",function(e){e.Intl.add("datatype-date-format","es-CO",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-CO",function(e){e.Intl.add("datatype-date-format","es-CO",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-EC.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-EC.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-EC.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-EC.js index f12eb38cdca..4bebfa79387 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-EC.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-EC.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-EC",function(e){e.Intl.add("datatype-date-format","es-EC",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-EC",function(e){e.Intl.add("datatype-date-format","es-EC",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-ES.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-ES.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-ES.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-ES.js index 4dcd08b4d0c..6e5abc73301 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-ES.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-ES.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-ES",function(e){e.Intl.add("datatype-date-format","es-ES",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-ES",function(e){e.Intl.add("datatype-date-format","es-ES",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-MX.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-MX.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-MX.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-MX.js index aa074e0b417..7afd3a2ec78 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-MX.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-MX.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-MX",function(e){e.Intl.add("datatype-date-format","es-MX",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-MX",function(e){e.Intl.add("datatype-date-format","es-MX",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-PE.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-PE.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-PE.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-PE.js index 7c66788bb7c..c76276c78cb --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-PE.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-PE.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-PE",function(e){e.Intl.add("datatype-date-format","es-PE",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %HH%M'%S\" %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%HH%M'%S\""})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-PE",function(e){e.Intl.add("datatype-date-format","es-PE",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %HH%M'%S\" %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%HH%M'%S\""})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-PY.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-PY.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-PY.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-PY.js index 39b01ec3e21..7219374310d --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-PY.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-PY.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-PY",function(e){e.Intl.add("datatype-date-format","es-PY",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-PY",function(e){e.Intl.add("datatype-date-format","es-PY",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-US.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-US.js old mode 100644 new mode 100755 similarity index 74% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-US.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-US.js index 9723cb09139..7b8014d453f --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-US.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-US.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-US",function(e){e.Intl.add("datatype-date-format","es-US",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %l:%M:%S %p %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-US",function(e){e.Intl.add("datatype-date-format","es-US",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %l:%M:%S %p %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-UY.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-UY.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-UY.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-UY.js index 0c44bd018aa..71094351db2 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-UY.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-UY.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-UY",function(e){e.Intl.add("datatype-date-format","es-UY",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-UY",function(e){e.Intl.add("datatype-date-format","es-UY",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-VE.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-VE.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-VE.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-VE.js index 0d6531324df..730725e01b1 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es-VE.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es-VE.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es-VE",function(e){e.Intl.add("datatype-date-format","es-VE",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es-VE",function(e){e.Intl.add("datatype-date-format","es-VE",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es.js old mode 100644 new mode 100755 similarity index 76% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es.js index a5a564bd411..bb7cdc14095 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_es.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_es.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_es",function(e){e.Intl.add("datatype-date-format","es",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_es",function(e){e.Intl.add("datatype-date-format","es",{a:["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],A:["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],b:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],B:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["A.M.","P.M."],P:["a.m.","p.m."],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fi-FI.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fi-FI.js old mode 100644 new mode 100755 similarity index 78% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fi-FI.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fi-FI.js index a0f16b4ec00..9574ecaae20 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fi-FI.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fi-FI.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_fi-FI",function(e){e.Intl.add("datatype-date-format","fi-FI",{a:["su","ma","ti","ke","to","pe","la"],A:["sunnuntaina","maanantaina","tiistaina","keskiviikkona","torstaina","perjantaina","lauantaina"],b:["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kes\u00e4kuuta","hein\u00e4kuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"],B:["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kes\u00e4kuuta","hein\u00e4kuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"],c:"%a %d. %b %Y %k.%M.%S %Z",p:["AP.","IP."],P:["ap.","ip."],x:"%d.%m.%Y",X:"%k.%M.%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_fi-FI",function(e){e.Intl.add("datatype-date-format","fi-FI",{a:["su","ma","ti","ke","to","pe","la"],A:["sunnuntaina","maanantaina","tiistaina","keskiviikkona","torstaina","perjantaina","lauantaina"],b:["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kes\u00e4kuuta","hein\u00e4kuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"],B:["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kes\u00e4kuuta","hein\u00e4kuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"],c:"%a %d. %b %Y %k.%M.%S %Z",p:["AP.","IP."],P:["ap.","ip."],x:"%d.%m.%Y",X:"%k.%M.%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fi.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fi.js old mode 100644 new mode 100755 similarity index 79% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fi.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fi.js index 6d81986dcae..259b8cf39b4 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fi.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fi.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_fi",function(e){e.Intl.add("datatype-date-format","fi",{a:["su","ma","ti","ke","to","pe","la"],A:["sunnuntaina","maanantaina","tiistaina","keskiviikkona","torstaina","perjantaina","lauantaina"],b:["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kes\u00e4kuuta","hein\u00e4kuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"],B:["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kes\u00e4kuuta","hein\u00e4kuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"],c:"%a %d. %b %Y %k.%M.%S %Z",p:["AP.","IP."],P:["ap.","ip."],x:"%d.%m.%Y",X:"%k.%M.%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_fi",function(e){e.Intl.add("datatype-date-format","fi",{a:["su","ma","ti","ke","to","pe","la"],A:["sunnuntaina","maanantaina","tiistaina","keskiviikkona","torstaina","perjantaina","lauantaina"],b:["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kes\u00e4kuuta","hein\u00e4kuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"],B:["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kes\u00e4kuuta","hein\u00e4kuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"],c:"%a %d. %b %Y %k.%M.%S %Z",p:["AP.","IP."],P:["ap.","ip."],x:"%d.%m.%Y",X:"%k.%M.%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr-BE.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr-BE.js old mode 100644 new mode 100755 similarity index 72% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr-BE.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr-BE.js index efc673e8be6..e6d2a11b685 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr-BE.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr-BE.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_fr-BE",function(e){e.Intl.add("datatype-date-format","fr-BE",{a:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],A:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],b:["janv.","f\u00e9vr.","mars","avr.","mai","juin","juil.","ao\u00fbt","sept.","oct.","nov.","d\u00e9c."],B:["janvier","f\u00e9vrier","mars","avril","mai","juin","juillet","ao\u00fbt","septembre","octobre","novembre","d\u00e9cembre"],c:"%a %d %b %Y %k h %M min %S s %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%k h %M min %S s"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_fr-BE",function(e){e.Intl.add("datatype-date-format","fr-BE",{a:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],A:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],b:["janv.","f\u00e9vr.","mars","avr.","mai","juin","juil.","ao\u00fbt","sept.","oct.","nov.","d\u00e9c."],B:["janvier","f\u00e9vrier","mars","avril","mai","juin","juillet","ao\u00fbt","septembre","octobre","novembre","d\u00e9cembre"],c:"%a %d %b %Y %k h %M min %S s %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%k h %M min %S s"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr-CA.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr-CA.js old mode 100644 new mode 100755 similarity index 72% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr-CA.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr-CA.js index ac8fd5febe1..ea9d35ba005 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr-CA.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr-CA.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_fr-CA",function(e){e.Intl.add("datatype-date-format","fr-CA",{a:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],A:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],b:["janv.","f\u00e9vr.","mars","avr.","mai","juin","juil.","ao\u00fbt","sept.","oct.","nov.","d\u00e9c."],B:["janvier","f\u00e9vrier","mars","avril","mai","juin","juillet","ao\u00fbt","septembre","octobre","novembre","d\u00e9cembre"],c:"%a %d %b %Y %H h %M min %S s %Z",p:["AM","PM"],P:["am","pm"],x:"%y-%m-%d",X:"%H h %M min %S s"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_fr-CA",function(e){e.Intl.add("datatype-date-format","fr-CA",{a:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],A:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],b:["janv.","f\u00e9vr.","mars","avr.","mai","juin","juil.","ao\u00fbt","sept.","oct.","nov.","d\u00e9c."],B:["janvier","f\u00e9vrier","mars","avril","mai","juin","juillet","ao\u00fbt","septembre","octobre","novembre","d\u00e9cembre"],c:"%a %d %b %Y %H h %M min %S s %Z",p:["AM","PM"],P:["am","pm"],x:"%y-%m-%d",X:"%H h %M min %S s"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr-FR.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr-FR.js old mode 100644 new mode 100755 similarity index 73% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr-FR.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr-FR.js index 13d67845694..dbf1cd72717 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr-FR.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr-FR.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_fr-FR",function(e){e.Intl.add("datatype-date-format","fr-FR",{a:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],A:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],b:["janv.","f\u00e9vr.","mars","avr.","mai","juin","juil.","ao\u00fbt","sept.","oct.","nov.","d\u00e9c."],B:["janvier","f\u00e9vrier","mars","avril","mai","juin","juillet","ao\u00fbt","septembre","octobre","novembre","d\u00e9cembre"],c:"%a %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_fr-FR",function(e){e.Intl.add("datatype-date-format","fr-FR",{a:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],A:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],b:["janv.","f\u00e9vr.","mars","avr.","mai","juin","juil.","ao\u00fbt","sept.","oct.","nov.","d\u00e9c."],B:["janvier","f\u00e9vrier","mars","avril","mai","juin","juillet","ao\u00fbt","septembre","octobre","novembre","d\u00e9cembre"],c:"%a %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr.js old mode 100644 new mode 100755 similarity index 74% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr.js index 6598f7361b8..96c523869f8 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_fr.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_fr.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_fr",function(e){e.Intl.add("datatype-date-format","fr",{a:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],A:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],b:["janv.","f\u00e9vr.","mars","avr.","mai","juin","juil.","ao\u00fbt","sept.","oct.","nov.","d\u00e9c."],B:["janvier","f\u00e9vrier","mars","avril","mai","juin","juillet","ao\u00fbt","septembre","octobre","novembre","d\u00e9cembre"],c:"%a %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_fr",function(e){e.Intl.add("datatype-date-format","fr",{a:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],A:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],b:["janv.","f\u00e9vr.","mars","avr.","mai","juin","juil.","ao\u00fbt","sept.","oct.","nov.","d\u00e9c."],B:["janvier","f\u00e9vrier","mars","avril","mai","juin","juillet","ao\u00fbt","septembre","octobre","novembre","d\u00e9cembre"],c:"%a %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_hi-IN.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_hi-IN.js old mode 100644 new mode 100755 similarity index 88% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_hi-IN.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_hi-IN.js index 54d92e7e7ce..ab6b6bf430d --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_hi-IN.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_hi-IN.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_hi-IN",function(e){e.Intl.add("datatype-date-format","hi-IN",{a:["\u0930\u0935\u093f","\u0938\u094b\u092e","\u092e\u0902\u0917\u0932","\u092c\u0941\u0927","\u0917\u0941\u0930\u0941","\u0936\u0941\u0915\u094d\u0930","\u0936\u0928\u093f"],A:["\u0930\u0935\u093f\u0935\u093e\u0930","\u0938\u094b\u092e\u0935\u093e\u0930","\u092e\u0902\u0917\u0932\u0935\u093e\u0930","\u092c\u0941\u0927\u0935\u093e\u0930","\u0917\u0941\u0930\u0941\u0935\u093e\u0930","\u0936\u0941\u0915\u094d\u0930\u0935\u093e\u0930","\u0936\u0928\u093f\u0935\u093e\u0930"],b:["\u091c\u0928\u0935\u0930\u0940","\u092b\u0930\u0935\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u0948\u0932","\u092e\u0908","\u091c\u0942\u0928","\u091c\u0941\u0932\u093e\u0908","\u0905\u0917\u0938\u094d\u0924","\u0938\u093f\u0924\u092e\u094d\u092c\u0930","\u0905\u0915\u094d\u0924\u0942\u092c\u0930","\u0928\u0935\u092e\u094d\u092c\u0930","\u0926\u093f\u0938\u092e\u094d\u092c\u0930"],B:["\u091c\u0928\u0935\u0930\u0940","\u092b\u0930\u0935\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u0948\u0932","\u092e\u0908","\u091c\u0942\u0928","\u091c\u0941\u0932\u093e\u0908","\u0905\u0917\u0938\u094d\u0924","\u0938\u093f\u0924\u092e\u094d\u092c\u0930","\u0905\u0915\u094d\u0924\u0942\u092c\u0930","\u0928\u0935\u092e\u094d\u092c\u0930","\u0926\u093f\u0938\u092e\u094d\u092c\u0930"],c:"%a, %d %b %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_hi-IN",function(e){e.Intl.add("datatype-date-format","hi-IN",{a:["\u0930\u0935\u093f","\u0938\u094b\u092e","\u092e\u0902\u0917\u0932","\u092c\u0941\u0927","\u0917\u0941\u0930\u0941","\u0936\u0941\u0915\u094d\u0930","\u0936\u0928\u093f"],A:["\u0930\u0935\u093f\u0935\u093e\u0930","\u0938\u094b\u092e\u0935\u093e\u0930","\u092e\u0902\u0917\u0932\u0935\u093e\u0930","\u092c\u0941\u0927\u0935\u093e\u0930","\u0917\u0941\u0930\u0941\u0935\u093e\u0930","\u0936\u0941\u0915\u094d\u0930\u0935\u093e\u0930","\u0936\u0928\u093f\u0935\u093e\u0930"],b:["\u091c\u0928\u0935\u0930\u0940","\u092b\u0930\u0935\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u0948\u0932","\u092e\u0908","\u091c\u0942\u0928","\u091c\u0941\u0932\u093e\u0908","\u0905\u0917\u0938\u094d\u0924","\u0938\u093f\u0924\u092e\u094d\u092c\u0930","\u0905\u0915\u094d\u0924\u0942\u092c\u0930","\u0928\u0935\u092e\u094d\u092c\u0930","\u0926\u093f\u0938\u092e\u094d\u092c\u0930"],B:["\u091c\u0928\u0935\u0930\u0940","\u092b\u0930\u0935\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u0948\u0932","\u092e\u0908","\u091c\u0942\u0928","\u091c\u0941\u0932\u093e\u0908","\u0905\u0917\u0938\u094d\u0924","\u0938\u093f\u0924\u092e\u094d\u092c\u0930","\u0905\u0915\u094d\u0924\u0942\u092c\u0930","\u0928\u0935\u092e\u094d\u092c\u0930","\u0926\u093f\u0938\u092e\u094d\u092c\u0930"],c:"%a, %d %b %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_hi.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_hi.js old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_hi.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_hi.js index 406880f70bf..e974ca9cc02 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_hi.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_hi.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_hi",function(e){e.Intl.add("datatype-date-format","hi",{a:["\u0930\u0935\u093f","\u0938\u094b\u092e","\u092e\u0902\u0917\u0932","\u092c\u0941\u0927","\u0917\u0941\u0930\u0941","\u0936\u0941\u0915\u094d\u0930","\u0936\u0928\u093f"],A:["\u0930\u0935\u093f\u0935\u093e\u0930","\u0938\u094b\u092e\u0935\u093e\u0930","\u092e\u0902\u0917\u0932\u0935\u093e\u0930","\u092c\u0941\u0927\u0935\u093e\u0930","\u0917\u0941\u0930\u0941\u0935\u093e\u0930","\u0936\u0941\u0915\u094d\u0930\u0935\u093e\u0930","\u0936\u0928\u093f\u0935\u093e\u0930"],b:["\u091c\u0928\u0935\u0930\u0940","\u092b\u0930\u0935\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u0948\u0932","\u092e\u0908","\u091c\u0942\u0928","\u091c\u0941\u0932\u093e\u0908","\u0905\u0917\u0938\u094d\u0924","\u0938\u093f\u0924\u092e\u094d\u092c\u0930","\u0905\u0915\u094d\u0924\u0942\u092c\u0930","\u0928\u0935\u092e\u094d\u092c\u0930","\u0926\u093f\u0938\u092e\u094d\u092c\u0930"],B:["\u091c\u0928\u0935\u0930\u0940","\u092b\u0930\u0935\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u0948\u0932","\u092e\u0908","\u091c\u0942\u0928","\u091c\u0941\u0932\u093e\u0908","\u0905\u0917\u0938\u094d\u0924","\u0938\u093f\u0924\u092e\u094d\u092c\u0930","\u0905\u0915\u094d\u0924\u0942\u092c\u0930","\u0928\u0935\u092e\u094d\u092c\u0930","\u0926\u093f\u0938\u092e\u094d\u092c\u0930"],c:"%a, %d %b %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%l:%M:%S %p"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_hi",function(e){e.Intl.add("datatype-date-format","hi",{a:["\u0930\u0935\u093f","\u0938\u094b\u092e","\u092e\u0902\u0917\u0932","\u092c\u0941\u0927","\u0917\u0941\u0930\u0941","\u0936\u0941\u0915\u094d\u0930","\u0936\u0928\u093f"],A:["\u0930\u0935\u093f\u0935\u093e\u0930","\u0938\u094b\u092e\u0935\u093e\u0930","\u092e\u0902\u0917\u0932\u0935\u093e\u0930","\u092c\u0941\u0927\u0935\u093e\u0930","\u0917\u0941\u0930\u0941\u0935\u093e\u0930","\u0936\u0941\u0915\u094d\u0930\u0935\u093e\u0930","\u0936\u0928\u093f\u0935\u093e\u0930"],b:["\u091c\u0928\u0935\u0930\u0940","\u092b\u0930\u0935\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u0948\u0932","\u092e\u0908","\u091c\u0942\u0928","\u091c\u0941\u0932\u093e\u0908","\u0905\u0917\u0938\u094d\u0924","\u0938\u093f\u0924\u092e\u094d\u092c\u0930","\u0905\u0915\u094d\u0924\u0942\u092c\u0930","\u0928\u0935\u092e\u094d\u092c\u0930","\u0926\u093f\u0938\u092e\u094d\u092c\u0930"],B:["\u091c\u0928\u0935\u0930\u0940","\u092b\u0930\u0935\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u0948\u0932","\u092e\u0908","\u091c\u0942\u0928","\u091c\u0941\u0932\u093e\u0908","\u0905\u0917\u0938\u094d\u0924","\u0938\u093f\u0924\u092e\u094d\u092c\u0930","\u0905\u0915\u094d\u0924\u0942\u092c\u0930","\u0928\u0935\u092e\u094d\u092c\u0930","\u0926\u093f\u0938\u092e\u094d\u092c\u0930"],c:"%a, %d %b %Y %l:%M:%S %p %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_hu.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_hu.js new file mode 100755 index 00000000000..8584f381c23 --- /dev/null +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_hu.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_hu",function(e){e.Intl.add("datatype-date-format","hu",{a:["Vas","H\u00e9","Ke","Sze","Cs\u00fc","P\u00e9","Szo"],A:["Vas\u00e1rnap","H\u00e9tf\u0151","Kedd","Szerda","Cs\u00fct\u00f6rt\u00f6k","P\u00e9ntek","Szombat"],b:["Jan","Feb","M\u00e1rc","\u00c1pr","M\u00e1j","J\u00fan","J\u00fal","Aug","Szep","Okt","Nov","Dec"],B:["Janu\u00e1r","Febru\u00e1r","M\u00e1rcius","\u00e1prilis","M\u00e1jus","J\u00fanius","J\u00falius","Augusztus","Szeptember","Okt\u00f3ber","November","December"],c:"%a, %b %d, %Y %l:%M:%S %p %Z",p:["DE","DU"],P:["de.","du."],x:"%m/%d/%y",X:"%l:%M:%S %p"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_id-ID.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_id-ID.js old mode 100644 new mode 100755 similarity index 70% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_id-ID.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_id-ID.js index 0cdbb8d3af9..db589bd914d --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_id-ID.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_id-ID.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_id-ID",function(e){e.Intl.add("datatype-date-format","id-ID",{a:["Min","Sen","Sel","Rab","Kam","Jum","Sab"],A:["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"],b:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agu","Sep","Okt","Nov","Des"],B:["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"],c:"%a, %Y %b %d %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_id-ID",function(e){e.Intl.add("datatype-date-format","id-ID",{a:["Min","Sen","Sel","Rab","Kam","Jum","Sab"],A:["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"],b:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agu","Sep","Okt","Nov","Des"],B:["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"],c:"%a, %Y %b %d %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_id.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_id.js old mode 100644 new mode 100755 similarity index 70% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_id.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_id.js index 61ce15bb952..bf571782fc2 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_id.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_id.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_id",function(e){e.Intl.add("datatype-date-format","id",{a:["Min","Sen","Sel","Rab","Kam","Jum","Sab"],A:["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"],b:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agu","Sep","Okt","Nov","Des"],B:["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"],c:"%a, %Y %b %d %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_id",function(e){e.Intl.add("datatype-date-format","id",{a:["Min","Sen","Sel","Rab","Kam","Jum","Sab"],A:["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"],b:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agu","Sep","Okt","Nov","Des"],B:["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"],c:"%a, %Y %b %d %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_it-IT.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_it-IT.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_it-IT.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_it-IT.js index 161b8b9b5c9..065476ca481 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_it-IT.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_it-IT.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_it-IT",function(e){e.Intl.add("datatype-date-format","it-IT",{a:["dom","lun","mar","mer","gio","ven","sab"],A:["domenica","luned\u00ec","marted\u00ec","mercoled\u00ec","gioved\u00ec","venerd\u00ec","sabato"],b:["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic"],B:["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"],c:"%a %d %b %Y %H.%M.%S %Z",p:["M.","P."],P:["m.","p."],x:"%d/%m/%y",X:"%H.%M.%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_it-IT",function(e){e.Intl.add("datatype-date-format","it-IT",{a:["dom","lun","mar","mer","gio","ven","sab"],A:["domenica","luned\u00ec","marted\u00ec","mercoled\u00ec","gioved\u00ec","venerd\u00ec","sabato"],b:["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic"],B:["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"],c:"%a %d %b %Y %H.%M.%S %Z",p:["M.","P."],P:["m.","p."],x:"%d/%m/%y",X:"%H.%M.%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_it.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_it.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_it.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_it.js index f84a03cdc4c..ba3ccebd476 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_it.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_it.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_it",function(e){e.Intl.add("datatype-date-format","it",{a:["dom","lun","mar","mer","gio","ven","sab"],A:["domenica","luned\u00ec","marted\u00ec","mercoled\u00ec","gioved\u00ec","venerd\u00ec","sabato"],b:["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic"],B:["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"],c:"%a %d %b %Y %H.%M.%S %Z",p:["M.","P."],P:["m.","p."],x:"%d/%m/%y",X:"%H.%M.%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_it",function(e){e.Intl.add("datatype-date-format","it",{a:["dom","lun","mar","mer","gio","ven","sab"],A:["domenica","luned\u00ec","marted\u00ec","mercoled\u00ec","gioved\u00ec","venerd\u00ec","sabato"],b:["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic"],B:["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"],c:"%a %d %b %Y %H.%M.%S %Z",p:["M.","P."],P:["m.","p."],x:"%d/%m/%y",X:"%H.%M.%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ja-JP.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ja-JP.js old mode 100644 new mode 100755 similarity index 78% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ja-JP.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ja-JP.js index 890b7d9a983..4815d42532d --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ja-JP.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ja-JP.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ja-JP",function(e){e.Intl.add("datatype-date-format","ja-JP",{a:["\u65e5","\u6708","\u706b","\u6c34","\u6728","\u91d1","\u571f"],A:["\u65e5\u66dc\u65e5","\u6708\u66dc\u65e5","\u706b\u66dc\u65e5","\u6c34\u66dc\u65e5","\u6728\u66dc\u65e5","\u91d1\u66dc\u65e5","\u571f\u66dc\u65e5"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%m\u6708%d\u65e5(%a)%k\u6642%M\u5206%S\u79d2 %Z",p:["\u5348\u524d","\u5348\u5f8c"],P:["\u5348\u524d","\u5348\u5f8c"],x:"%y/%m/%d",X:"%k\u6642%M\u5206%S\u79d2"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ja-JP",function(e){e.Intl.add("datatype-date-format","ja-JP",{a:["\u65e5","\u6708","\u706b","\u6c34","\u6728","\u91d1","\u571f"],A:["\u65e5\u66dc\u65e5","\u6708\u66dc\u65e5","\u706b\u66dc\u65e5","\u6c34\u66dc\u65e5","\u6728\u66dc\u65e5","\u91d1\u66dc\u65e5","\u571f\u66dc\u65e5"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%m\u6708%d\u65e5(%a)%k\u6642%M\u5206%S\u79d2 %Z",p:["\u5348\u524d","\u5348\u5f8c"],P:["\u5348\u524d","\u5348\u5f8c"],x:"%y/%m/%d",X:"%k\u6642%M\u5206%S\u79d2"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ja.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ja.js old mode 100644 new mode 100755 similarity index 78% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ja.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ja.js index edb8a8a67c1..4342ee13cb9 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ja.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ja.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ja",function(e){e.Intl.add("datatype-date-format","ja",{a:["\u65e5","\u6708","\u706b","\u6c34","\u6728","\u91d1","\u571f"],A:["\u65e5\u66dc\u65e5","\u6708\u66dc\u65e5","\u706b\u66dc\u65e5","\u6c34\u66dc\u65e5","\u6728\u66dc\u65e5","\u91d1\u66dc\u65e5","\u571f\u66dc\u65e5"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%m\u6708%d\u65e5(%a)%k\u6642%M\u5206%S\u79d2 %Z",p:["\u5348\u524d","\u5348\u5f8c"],P:["\u5348\u524d","\u5348\u5f8c"],x:"%y/%m/%d",X:"%k\u6642%M\u5206%S\u79d2"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ja",function(e){e.Intl.add("datatype-date-format","ja",{a:["\u65e5","\u6708","\u706b","\u6c34","\u6728","\u91d1","\u571f"],A:["\u65e5\u66dc\u65e5","\u6708\u66dc\u65e5","\u706b\u66dc\u65e5","\u6c34\u66dc\u65e5","\u6728\u66dc\u65e5","\u91d1\u66dc\u65e5","\u571f\u66dc\u65e5"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%m\u6708%d\u65e5(%a)%k\u6642%M\u5206%S\u79d2 %Z",p:["\u5348\u524d","\u5348\u5f8c"],P:["\u5348\u524d","\u5348\u5f8c"],x:"%y/%m/%d",X:"%k\u6642%M\u5206%S\u79d2"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ko-KR.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ko-KR.js old mode 100644 new mode 100755 similarity index 77% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ko-KR.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ko-KR.js index adb080fd8d2..fc5263758ea --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ko-KR.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ko-KR.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ko-KR",function(e){e.Intl.add("datatype-date-format","ko-KR",{a:["\uc77c","\uc6d4","\ud654","\uc218","\ubaa9","\uae08","\ud1a0"],A:["\uc77c\uc694\uc77c","\uc6d4\uc694\uc77c","\ud654\uc694\uc77c","\uc218\uc694\uc77c","\ubaa9\uc694\uc77c","\uae08\uc694\uc77c","\ud1a0\uc694\uc77c"],b:["1\uc6d4","2\uc6d4","3\uc6d4","4\uc6d4","5\uc6d4","6\uc6d4","7\uc6d4","8\uc6d4","9\uc6d4","10\uc6d4","11\uc6d4","12\uc6d4"],B:["1\uc6d4","2\uc6d4","3\uc6d4","4\uc6d4","5\uc6d4","6\uc6d4","7\uc6d4","8\uc6d4","9\uc6d4","10\uc6d4","11\uc6d4","12\uc6d4"],c:"%Y\ub144 %b %d\uc77c %a%p %I\uc2dc %M\ubd84 %S\ucd08 %Z",p:["\uc624\uc804","\uc624\ud6c4"],P:["\uc624\uc804","\uc624\ud6c4"],x:"%y. %m. %d.",X:"%p %I\uc2dc %M\ubd84 %S\ucd08"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ko-KR",function(e){e.Intl.add("datatype-date-format","ko-KR",{a:["\uc77c","\uc6d4","\ud654","\uc218","\ubaa9","\uae08","\ud1a0"],A:["\uc77c\uc694\uc77c","\uc6d4\uc694\uc77c","\ud654\uc694\uc77c","\uc218\uc694\uc77c","\ubaa9\uc694\uc77c","\uae08\uc694\uc77c","\ud1a0\uc694\uc77c"],b:["1\uc6d4","2\uc6d4","3\uc6d4","4\uc6d4","5\uc6d4","6\uc6d4","7\uc6d4","8\uc6d4","9\uc6d4","10\uc6d4","11\uc6d4","12\uc6d4"],B:["1\uc6d4","2\uc6d4","3\uc6d4","4\uc6d4","5\uc6d4","6\uc6d4","7\uc6d4","8\uc6d4","9\uc6d4","10\uc6d4","11\uc6d4","12\uc6d4"],c:"%Y\ub144 %b %d\uc77c %a%p %I\uc2dc %M\ubd84 %S\ucd08 %Z",p:["\uc624\uc804","\uc624\ud6c4"],P:["\uc624\uc804","\uc624\ud6c4"],x:"%y. %m. %d.",X:"%p %I\uc2dc %M\ubd84 %S\ucd08"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ko.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ko.js old mode 100644 new mode 100755 similarity index 78% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ko.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ko.js index 623d786aa98..3915b2bbe96 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ko.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ko.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ko",function(e){e.Intl.add("datatype-date-format","ko",{a:["\uc77c","\uc6d4","\ud654","\uc218","\ubaa9","\uae08","\ud1a0"],A:["\uc77c\uc694\uc77c","\uc6d4\uc694\uc77c","\ud654\uc694\uc77c","\uc218\uc694\uc77c","\ubaa9\uc694\uc77c","\uae08\uc694\uc77c","\ud1a0\uc694\uc77c"],b:["1\uc6d4","2\uc6d4","3\uc6d4","4\uc6d4","5\uc6d4","6\uc6d4","7\uc6d4","8\uc6d4","9\uc6d4","10\uc6d4","11\uc6d4","12\uc6d4"],B:["1\uc6d4","2\uc6d4","3\uc6d4","4\uc6d4","5\uc6d4","6\uc6d4","7\uc6d4","8\uc6d4","9\uc6d4","10\uc6d4","11\uc6d4","12\uc6d4"],c:"%Y\ub144 %b %d\uc77c %a%p %I\uc2dc %M\ubd84 %S\ucd08 %Z",p:["\uc624\uc804","\uc624\ud6c4"],P:["\uc624\uc804","\uc624\ud6c4"],x:"%y. %m. %d.",X:"%p %I\uc2dc %M\ubd84 %S\ucd08"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ko",function(e){e.Intl.add("datatype-date-format","ko",{a:["\uc77c","\uc6d4","\ud654","\uc218","\ubaa9","\uae08","\ud1a0"],A:["\uc77c\uc694\uc77c","\uc6d4\uc694\uc77c","\ud654\uc694\uc77c","\uc218\uc694\uc77c","\ubaa9\uc694\uc77c","\uae08\uc694\uc77c","\ud1a0\uc694\uc77c"],b:["1\uc6d4","2\uc6d4","3\uc6d4","4\uc6d4","5\uc6d4","6\uc6d4","7\uc6d4","8\uc6d4","9\uc6d4","10\uc6d4","11\uc6d4","12\uc6d4"],B:["1\uc6d4","2\uc6d4","3\uc6d4","4\uc6d4","5\uc6d4","6\uc6d4","7\uc6d4","8\uc6d4","9\uc6d4","10\uc6d4","11\uc6d4","12\uc6d4"],c:"%Y\ub144 %b %d\uc77c %a%p %I\uc2dc %M\ubd84 %S\ucd08 %Z",p:["\uc624\uc804","\uc624\ud6c4"],P:["\uc624\uc804","\uc624\ud6c4"],x:"%y. %m. %d.",X:"%p %I\uc2dc %M\ubd84 %S\ucd08"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ms-MY.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ms-MY.js old mode 100644 new mode 100755 similarity index 70% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ms-MY.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ms-MY.js index 2514230b1ba..493323e4ead --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ms-MY.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ms-MY.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ms-MY",function(e){e.Intl.add("datatype-date-format","ms-MY",{a:["Ahd","Isn","Sel","Rab","Kha","Jum","Sab"],A:["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"],b:["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sep","Okt","Nov","Dis"],B:["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember"],c:"%a, %Y %b %d %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%Y-%m-%d",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ms-MY",function(e){e.Intl.add("datatype-date-format","ms-MY",{a:["Ahd","Isn","Sel","Rab","Kha","Jum","Sab"],A:["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"],b:["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sep","Okt","Nov","Dis"],B:["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember"],c:"%a, %Y %b %d %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%Y-%m-%d",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ms.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ms.js old mode 100644 new mode 100755 similarity index 71% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ms.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ms.js index 8b0a47eaf6a..73242925ef9 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ms.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ms.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ms",function(e){e.Intl.add("datatype-date-format","ms",{a:["Ahd","Isn","Sel","Rab","Kha","Jum","Sab"],A:["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"],b:["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sep","Okt","Nov","Dis"],B:["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember"],c:"%a, %Y %b %d %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%Y-%m-%d",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ms",function(e){e.Intl.add("datatype-date-format","ms",{a:["Ahd","Isn","Sel","Rab","Kha","Jum","Sab"],A:["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"],b:["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sep","Okt","Nov","Dis"],B:["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember"],c:"%a, %Y %b %d %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%Y-%m-%d",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nb-NO.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nb-NO.js old mode 100644 new mode 100755 similarity index 74% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nb-NO.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nb-NO.js index 196fa2aa545..dfb1e0a3b7e --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nb-NO.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nb-NO.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_nb-NO",function(e){e.Intl.add("datatype-date-format","nb-NO",{a:["s\u00f8n.","man.","tir.","ons.","tor.","fre.","l\u00f8r."],A:["s\u00f8ndag","mandag","tirsdag","onsdag","torsdag","fredag","l\u00f8rdag"],b:["jan.","feb.","mars","apr.","mai","juni","juli","aug.","sep.","okt.","nov.","des."],B:["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"],c:"%a %d. %b %Y kl. %H.%M.%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%y",X:"kl. %H.%M.%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_nb-NO",function(e){e.Intl.add("datatype-date-format","nb-NO",{a:["s\u00f8n.","man.","tir.","ons.","tor.","fre.","l\u00f8r."],A:["s\u00f8ndag","mandag","tirsdag","onsdag","torsdag","fredag","l\u00f8rdag"],b:["jan.","feb.","mars","apr.","mai","juni","juli","aug.","sep.","okt.","nov.","des."],B:["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"],c:"%a %d. %b %Y kl. %H.%M.%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%y",X:"kl. %H.%M.%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nb.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nb.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nb.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nb.js index 94f6ce662c6..e1c5dad06a8 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nb.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nb.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_nb",function(e){e.Intl.add("datatype-date-format","nb",{a:["s\u00f8n.","man.","tir.","ons.","tor.","fre.","l\u00f8r."],A:["s\u00f8ndag","mandag","tirsdag","onsdag","torsdag","fredag","l\u00f8rdag"],b:["jan.","feb.","mars","apr.","mai","juni","juli","aug.","sep.","okt.","nov.","des."],B:["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"],c:"%a %d. %b %Y kl. %H.%M.%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%y",X:"kl. %H.%M.%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_nb",function(e){e.Intl.add("datatype-date-format","nb",{a:["s\u00f8n.","man.","tir.","ons.","tor.","fre.","l\u00f8r."],A:["s\u00f8ndag","mandag","tirsdag","onsdag","torsdag","fredag","l\u00f8rdag"],b:["jan.","feb.","mars","apr.","mai","juni","juli","aug.","sep.","okt.","nov.","des."],B:["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"],c:"%a %d. %b %Y kl. %H.%M.%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%y",X:"kl. %H.%M.%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nl-BE.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nl-BE.js old mode 100644 new mode 100755 similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nl-BE.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nl-BE.js index b31674f5871..95f353d8443 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nl-BE.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nl-BE.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_nl-BE",function(e){e.Intl.add("datatype-date-format","nl-BE",{a:["zo","ma","di","wo","do","vr","za"],A:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],b:["jan.","feb.","mrt.","apr.","mei","jun.","jul.","aug.","sep.","okt.","nov.","dec."],B:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],c:"%a %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_nl-BE",function(e){e.Intl.add("datatype-date-format","nl-BE",{a:["zo","ma","di","wo","do","vr","za"],A:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],b:["jan.","feb.","mrt.","apr.","mei","jun.","jul.","aug.","sep.","okt.","nov.","dec."],B:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],c:"%a %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nl-NL.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nl-NL.js old mode 100644 new mode 100755 similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nl-NL.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nl-NL.js index 29989434c8c..434fecf96c7 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nl-NL.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nl-NL.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_nl-NL",function(e){e.Intl.add("datatype-date-format","nl-NL",{a:["zo","ma","di","wo","do","vr","za"],A:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],b:["jan.","feb.","mrt.","apr.","mei","jun.","jul.","aug.","sep.","okt.","nov.","dec."],B:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],c:"%a %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_nl-NL",function(e){e.Intl.add("datatype-date-format","nl-NL",{a:["zo","ma","di","wo","do","vr","za"],A:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],b:["jan.","feb.","mrt.","apr.","mei","jun.","jul.","aug.","sep.","okt.","nov.","dec."],B:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],c:"%a %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nl.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nl.js old mode 100644 new mode 100755 similarity index 68% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nl.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nl.js index 1a4c43fd2bc..addd7ee2ee4 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_nl.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_nl.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_nl",function(e){e.Intl.add("datatype-date-format","nl",{a:["zo","ma","di","wo","do","vr","za"],A:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],b:["jan.","feb.","mrt.","apr.","mei","jun.","jul.","aug.","sep.","okt.","nov.","dec."],B:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],c:"%a %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_nl",function(e){e.Intl.add("datatype-date-format","nl",{a:["zo","ma","di","wo","do","vr","za"],A:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],b:["jan.","feb.","mrt.","apr.","mei","jun.","jul.","aug.","sep.","okt.","nov.","dec."],B:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],c:"%a %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pl-PL.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pl-PL.js old mode 100644 new mode 100755 similarity index 72% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pl-PL.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pl-PL.js index 27975822dce..3745b3133ed --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pl-PL.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pl-PL.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_pl-PL",function(e){e.Intl.add("datatype-date-format","pl-PL",{a:["niedz.","pon.","wt.","\u015br.","czw.","pt.","sob."],A:["niedziela","poniedzia\u0142ek","wtorek","\u015broda","czwartek","pi\u0105tek","sobota"],b:["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","pa\u017a","lis","gru"],B:["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","wrze\u015bnia","pa\u017adziernika","listopada","grudnia"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_pl-PL",function(e){e.Intl.add("datatype-date-format","pl-PL",{a:["niedz.","pon.","wt.","\u015br.","czw.","pt.","sob."],A:["niedziela","poniedzia\u0142ek","wtorek","\u015broda","czwartek","pi\u0105tek","sobota"],b:["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","pa\u017a","lis","gru"],B:["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","wrze\u015bnia","pa\u017adziernika","listopada","grudnia"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pl.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pl.js old mode 100644 new mode 100755 similarity index 73% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pl.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pl.js index 2451a1eeedc..a22b1c9a90f --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pl.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pl.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_pl",function(e){e.Intl.add("datatype-date-format","pl",{a:["niedz.","pon.","wt.","\u015br.","czw.","pt.","sob."],A:["niedziela","poniedzia\u0142ek","wtorek","\u015broda","czwartek","pi\u0105tek","sobota"],b:["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","pa\u017a","lis","gru"],B:["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","wrze\u015bnia","pa\u017adziernika","listopada","grudnia"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_pl",function(e){e.Intl.add("datatype-date-format","pl",{a:["niedz.","pon.","wt.","\u015br.","czw.","pt.","sob."],A:["niedziela","poniedzia\u0142ek","wtorek","\u015broda","czwartek","pi\u0105tek","sobota"],b:["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","pa\u017a","lis","gru"],B:["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","wrze\u015bnia","pa\u017adziernika","listopada","grudnia"],c:"%a, %d %b %Y %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d-%m-%y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pt-BR.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pt-BR.js old mode 100644 new mode 100755 similarity index 72% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pt-BR.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pt-BR.js index 46ccb7f7f21..626531df4a5 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pt-BR.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pt-BR.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_pt-BR",function(e){e.Intl.add("datatype-date-format","pt-BR",{a:["dom","seg","ter","qua","qui","sex","s\u00e1b"],A:["domingo","segunda-feira","ter\u00e7a-feira","quarta-feira","quinta-feira","sexta-feira","s\u00e1bado"],b:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],B:["janeiro","fevereiro","mar\u00e7o","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"],c:"%a, %d de %b de %Y %Hh%Mmin%Ss %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%Hh%Mmin%Ss"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_pt-BR",function(e){e.Intl.add("datatype-date-format","pt-BR",{a:["dom","seg","ter","qua","qui","sex","s\u00e1b"],A:["domingo","segunda-feira","ter\u00e7a-feira","quarta-feira","quinta-feira","sexta-feira","s\u00e1bado"],b:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],B:["janeiro","fevereiro","mar\u00e7o","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"],c:"%a, %d de %b de %Y %Hh%Mmin%Ss %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%Hh%Mmin%Ss"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pt.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pt.js old mode 100644 new mode 100755 similarity index 73% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pt.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pt.js index acdd0b177f1..189ec970db2 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_pt.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_pt.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_pt",function(e){e.Intl.add("datatype-date-format","pt",{a:["dom","seg","ter","qua","qui","sex","s\u00e1b"],A:["domingo","segunda-feira","ter\u00e7a-feira","quarta-feira","quinta-feira","sexta-feira","s\u00e1bado"],b:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],B:["janeiro","fevereiro","mar\u00e7o","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"],c:"%a, %d de %b de %Y %Hh%Mmin%Ss %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%Hh%Mmin%Ss"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_pt",function(e){e.Intl.add("datatype-date-format","pt",{a:["dom","seg","ter","qua","qui","sex","s\u00e1b"],A:["domingo","segunda-feira","ter\u00e7a-feira","quarta-feira","quinta-feira","sexta-feira","s\u00e1bado"],b:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],B:["janeiro","fevereiro","mar\u00e7o","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"],c:"%a, %d de %b de %Y %Hh%Mmin%Ss %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%Hh%Mmin%Ss"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ro-RO.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ro-RO.js old mode 100644 new mode 100755 similarity index 74% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ro-RO.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ro-RO.js index 4d21e084692..8ee07872e1b --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ro-RO.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ro-RO.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ro-RO",function(e){e.Intl.add("datatype-date-format","ro-RO",{a:["Du","Lu","Ma","Mi","Jo","Vi","S\u00e2"],A:["duminic\u0103","luni","mar\u021bi","miercuri","joi","vineri","s\u00e2mb\u0103t\u0103"],b:["ian.","feb.","mar.","apr.","mai","iun.","iul.","aug.","sept.","oct.","nov.","dec."],B:["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie"],c:"%a, %d %b %Y, %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%Y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ro-RO",function(e){e.Intl.add("datatype-date-format","ro-RO",{a:["Du","Lu","Ma","Mi","Jo","Vi","S\u00e2"],A:["duminic\u0103","luni","mar\u021bi","miercuri","joi","vineri","s\u00e2mb\u0103t\u0103"],b:["ian.","feb.","mar.","apr.","mai","iun.","iul.","aug.","sept.","oct.","nov.","dec."],B:["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie"],c:"%a, %d %b %Y, %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%Y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ro.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ro.js old mode 100644 new mode 100755 similarity index 74% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ro.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ro.js index 84e4f2051ea..ef2989455c7 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ro.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ro.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ro",function(e){e.Intl.add("datatype-date-format","ro",{a:["Du","Lu","Ma","Mi","Jo","Vi","S\u00e2"],A:["duminic\u0103","luni","mar\u021bi","miercuri","joi","vineri","s\u00e2mb\u0103t\u0103"],b:["ian.","feb.","mar.","apr.","mai","iun.","iul.","aug.","sept.","oct.","nov.","dec."],B:["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie"],c:"%a, %d %b %Y, %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%Y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ro",function(e){e.Intl.add("datatype-date-format","ro",{a:["Du","Lu","Ma","Mi","Jo","Vi","S\u00e2"],A:["duminic\u0103","luni","mar\u021bi","miercuri","joi","vineri","s\u00e2mb\u0103t\u0103"],b:["ian.","feb.","mar.","apr.","mai","iun.","iul.","aug.","sept.","oct.","nov.","dec."],B:["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie"],c:"%a, %d %b %Y, %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%Y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ru-RU.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ru-RU.js old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ru-RU.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ru-RU.js index 475e6a10421..b2b089ae5a6 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ru-RU.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ru-RU.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ru-RU",function(e){e.Intl.add("datatype-date-format","ru-RU",{a:["\u0412\u0441","\u041f\u043d","\u0412\u0442","\u0421\u0440","\u0427\u0442","\u041f\u0442","\u0421\u0431"],A:["\u0432\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435","\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a","\u0432\u0442\u043e\u0440\u043d\u0438\u043a","\u0441\u0440\u0435\u0434\u0430","\u0447\u0435\u0442\u0432\u0435\u0440\u0433","\u043f\u044f\u0442\u043d\u0438\u0446\u0430","\u0441\u0443\u0431\u0431\u043e\u0442\u0430"],b:["\u044f\u043d\u0432.","\u0444\u0435\u0432\u0440.","\u043c\u0430\u0440\u0442\u0430","\u0430\u043f\u0440.","\u043c\u0430\u044f","\u0438\u044e\u043d\u044f","\u0438\u044e\u043b\u044f","\u0430\u0432\u0433.","\u0441\u0435\u043d\u0442.","\u043e\u043a\u0442.","\u043d\u043e\u044f\u0431.","\u0434\u0435\u043a."],B:["\u044f\u043d\u0432\u0430\u0440\u044f","\u0444\u0435\u0432\u0440\u0430\u043b\u044f","\u043c\u0430\u0440\u0442\u0430","\u0430\u043f\u0440\u0435\u043b\u044f","\u043c\u0430\u044f","\u0438\u044e\u043d\u044f","\u0438\u044e\u043b\u044f","\u0430\u0432\u0433\u0443\u0441\u0442\u0430","\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f","\u043e\u043a\u0442\u044f\u0431\u0440\u044f","\u043d\u043e\u044f\u0431\u0440\u044f","\u0434\u0435\u043a\u0430\u0431\u0440\u044f"],c:"%a, %d %b %Y %k:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%y",X:"%k:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ru-RU",function(e){e.Intl.add("datatype-date-format","ru-RU",{a:["\u0412\u0441","\u041f\u043d","\u0412\u0442","\u0421\u0440","\u0427\u0442","\u041f\u0442","\u0421\u0431"],A:["\u0432\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435","\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a","\u0432\u0442\u043e\u0440\u043d\u0438\u043a","\u0441\u0440\u0435\u0434\u0430","\u0447\u0435\u0442\u0432\u0435\u0440\u0433","\u043f\u044f\u0442\u043d\u0438\u0446\u0430","\u0441\u0443\u0431\u0431\u043e\u0442\u0430"],b:["\u044f\u043d\u0432.","\u0444\u0435\u0432\u0440.","\u043c\u0430\u0440\u0442\u0430","\u0430\u043f\u0440.","\u043c\u0430\u044f","\u0438\u044e\u043d\u044f","\u0438\u044e\u043b\u044f","\u0430\u0432\u0433.","\u0441\u0435\u043d\u0442.","\u043e\u043a\u0442.","\u043d\u043e\u044f\u0431.","\u0434\u0435\u043a."],B:["\u044f\u043d\u0432\u0430\u0440\u044f","\u0444\u0435\u0432\u0440\u0430\u043b\u044f","\u043c\u0430\u0440\u0442\u0430","\u0430\u043f\u0440\u0435\u043b\u044f","\u043c\u0430\u044f","\u0438\u044e\u043d\u044f","\u0438\u044e\u043b\u044f","\u0430\u0432\u0433\u0443\u0441\u0442\u0430","\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f","\u043e\u043a\u0442\u044f\u0431\u0440\u044f","\u043d\u043e\u044f\u0431\u0440\u044f","\u0434\u0435\u043a\u0430\u0431\u0440\u044f"],c:"%a, %d %b %Y %k:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%y",X:"%k:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ru.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ru.js old mode 100644 new mode 100755 similarity index 90% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ru.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ru.js index cd2623e5363..edfdf050130 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_ru.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_ru.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_ru",function(e){e.Intl.add("datatype-date-format","ru",{a:["\u0412\u0441","\u041f\u043d","\u0412\u0442","\u0421\u0440","\u0427\u0442","\u041f\u0442","\u0421\u0431"],A:["\u0432\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435","\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a","\u0432\u0442\u043e\u0440\u043d\u0438\u043a","\u0441\u0440\u0435\u0434\u0430","\u0447\u0435\u0442\u0432\u0435\u0440\u0433","\u043f\u044f\u0442\u043d\u0438\u0446\u0430","\u0441\u0443\u0431\u0431\u043e\u0442\u0430"],b:["\u044f\u043d\u0432.","\u0444\u0435\u0432\u0440.","\u043c\u0430\u0440\u0442\u0430","\u0430\u043f\u0440.","\u043c\u0430\u044f","\u0438\u044e\u043d\u044f","\u0438\u044e\u043b\u044f","\u0430\u0432\u0433.","\u0441\u0435\u043d\u0442.","\u043e\u043a\u0442.","\u043d\u043e\u044f\u0431.","\u0434\u0435\u043a."],B:["\u044f\u043d\u0432\u0430\u0440\u044f","\u0444\u0435\u0432\u0440\u0430\u043b\u044f","\u043c\u0430\u0440\u0442\u0430","\u0430\u043f\u0440\u0435\u043b\u044f","\u043c\u0430\u044f","\u0438\u044e\u043d\u044f","\u0438\u044e\u043b\u044f","\u0430\u0432\u0433\u0443\u0441\u0442\u0430","\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f","\u043e\u043a\u0442\u044f\u0431\u0440\u044f","\u043d\u043e\u044f\u0431\u0440\u044f","\u0434\u0435\u043a\u0430\u0431\u0440\u044f"],c:"%a, %d %b %Y %k:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%y",X:"%k:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_ru",function(e){e.Intl.add("datatype-date-format","ru",{a:["\u0412\u0441","\u041f\u043d","\u0412\u0442","\u0421\u0440","\u0427\u0442","\u041f\u0442","\u0421\u0431"],A:["\u0432\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435","\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a","\u0432\u0442\u043e\u0440\u043d\u0438\u043a","\u0441\u0440\u0435\u0434\u0430","\u0447\u0435\u0442\u0432\u0435\u0440\u0433","\u043f\u044f\u0442\u043d\u0438\u0446\u0430","\u0441\u0443\u0431\u0431\u043e\u0442\u0430"],b:["\u044f\u043d\u0432.","\u0444\u0435\u0432\u0440.","\u043c\u0430\u0440\u0442\u0430","\u0430\u043f\u0440.","\u043c\u0430\u044f","\u0438\u044e\u043d\u044f","\u0438\u044e\u043b\u044f","\u0430\u0432\u0433.","\u0441\u0435\u043d\u0442.","\u043e\u043a\u0442.","\u043d\u043e\u044f\u0431.","\u0434\u0435\u043a."],B:["\u044f\u043d\u0432\u0430\u0440\u044f","\u0444\u0435\u0432\u0440\u0430\u043b\u044f","\u043c\u0430\u0440\u0442\u0430","\u0430\u043f\u0440\u0435\u043b\u044f","\u043c\u0430\u044f","\u0438\u044e\u043d\u044f","\u0438\u044e\u043b\u044f","\u0430\u0432\u0433\u0443\u0441\u0442\u0430","\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f","\u043e\u043a\u0442\u044f\u0431\u0440\u044f","\u043d\u043e\u044f\u0431\u0440\u044f","\u0434\u0435\u043a\u0430\u0431\u0440\u044f"],c:"%a, %d %b %Y %k:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%y",X:"%k:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_sv-SE.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_sv-SE.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_sv-SE.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_sv-SE.js index 3b5bb24c248..c80a424fa96 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_sv-SE.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_sv-SE.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_sv-SE",function(e){e.Intl.add("datatype-date-format","sv-SE",{a:["s\u00f6n","m\u00e5n","tis","ons","tors","fre","l\u00f6r"],A:["s\u00f6ndag","m\u00e5ndag","tisdag","onsdag","torsdag","fredag","l\u00f6rdag"],b:["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec"],B:["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december"],c:"%a %d %b %Y kl. %H.%M.%S %Z",p:["FM","EM"],P:["fm","em"],x:"%Y-%m-%d",X:"kl. %H.%M.%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_sv-SE",function(e){e.Intl.add("datatype-date-format","sv-SE",{a:["s\u00f6n","m\u00e5n","tis","ons","tors","fre","l\u00f6r"],A:["s\u00f6ndag","m\u00e5ndag","tisdag","onsdag","torsdag","fredag","l\u00f6rdag"],b:["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec"],B:["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december"],c:"%a %d %b %Y kl. %H.%M.%S %Z",p:["FM","EM"],P:["fm","em"],x:"%Y-%m-%d",X:"kl. %H.%M.%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_sv.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_sv.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_sv.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_sv.js index 412fd269e64..14710d064a6 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_sv.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_sv.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_sv",function(e){e.Intl.add("datatype-date-format","sv",{a:["s\u00f6n","m\u00e5n","tis","ons","tors","fre","l\u00f6r"],A:["s\u00f6ndag","m\u00e5ndag","tisdag","onsdag","torsdag","fredag","l\u00f6rdag"],b:["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec"],B:["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december"],c:"%a %d %b %Y kl. %H.%M.%S %Z",p:["FM","EM"],P:["fm","em"],x:"%Y-%m-%d",X:"kl. %H.%M.%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_sv",function(e){e.Intl.add("datatype-date-format","sv",{a:["s\u00f6n","m\u00e5n","tis","ons","tors","fre","l\u00f6r"],A:["s\u00f6ndag","m\u00e5ndag","tisdag","onsdag","torsdag","fredag","l\u00f6rdag"],b:["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec"],B:["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december"],c:"%a %d %b %Y kl. %H.%M.%S %Z",p:["FM","EM"],P:["fm","em"],x:"%Y-%m-%d",X:"kl. %H.%M.%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_th-TH.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_th-TH.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_th-TH.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_th-TH.js index 273a73c9da8..a74cf4c81ab --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_th-TH.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_th-TH.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_th-TH",function(e){e.Intl.add("datatype-date-format","th-TH",{a:["\u0e2d\u0e32.","\u0e08.","\u0e2d.","\u0e1e.","\u0e1e\u0e24.","\u0e28.","\u0e2a."],A:["\u0e27\u0e31\u0e19\u0e2d\u0e32\u0e17\u0e34\u0e15\u0e22\u0e4c","\u0e27\u0e31\u0e19\u0e08\u0e31\u0e19\u0e17\u0e23\u0e4c","\u0e27\u0e31\u0e19\u0e2d\u0e31\u0e07\u0e04\u0e32\u0e23","\u0e27\u0e31\u0e19\u0e1e\u0e38\u0e18","\u0e27\u0e31\u0e19\u0e1e\u0e24\u0e2b\u0e31\u0e2a\u0e1a\u0e14\u0e35","\u0e27\u0e31\u0e19\u0e28\u0e38\u0e01\u0e23\u0e4c","\u0e27\u0e31\u0e19\u0e40\u0e2a\u0e32\u0e23\u0e4c"],b:["\u0e21.\u0e04.","\u0e01.\u0e1e.","\u0e21\u0e35.\u0e04.","\u0e40\u0e21.\u0e22.","\u0e1e.\u0e04.","\u0e21\u0e34.\u0e22.","\u0e01.\u0e04.","\u0e2a.\u0e04.","\u0e01.\u0e22.","\u0e15.\u0e04.","\u0e1e.\u0e22.","\u0e18.\u0e04."],B:["\u0e21\u0e01\u0e23\u0e32\u0e04\u0e21","\u0e01\u0e38\u0e21\u0e20\u0e32\u0e1e\u0e31\u0e19\u0e18\u0e4c","\u0e21\u0e35\u0e19\u0e32\u0e04\u0e21","\u0e40\u0e21\u0e29\u0e32\u0e22\u0e19","\u0e1e\u0e24\u0e29\u0e20\u0e32\u0e04\u0e21","\u0e21\u0e34\u0e16\u0e38\u0e19\u0e32\u0e22\u0e19","\u0e01\u0e23\u0e01\u0e0e\u0e32\u0e04\u0e21","\u0e2a\u0e34\u0e07\u0e2b\u0e32\u0e04\u0e21","\u0e01\u0e31\u0e19\u0e22\u0e32\u0e22\u0e19","\u0e15\u0e38\u0e25\u0e32\u0e04\u0e21","\u0e1e\u0e24\u0e28\u0e08\u0e34\u0e01\u0e32\u0e22\u0e19","\u0e18\u0e31\u0e19\u0e27\u0e32\u0e04\u0e21"],c:"%a %d %b %Y, %k \u0e19\u0e32\u0e2c\u0e34\u0e01\u0e32 %M \u0e19\u0e32\u0e17\u0e35 %S \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35 %Z",p:["\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07","\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"],P:["\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07","\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"],x:"%d/%m/%Y",X:"%k \u0e19\u0e32\u0e2c\u0e34\u0e01\u0e32 %M \u0e19\u0e32\u0e17\u0e35 %S \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_th-TH",function(e){e.Intl.add("datatype-date-format","th-TH",{a:["\u0e2d\u0e32.","\u0e08.","\u0e2d.","\u0e1e.","\u0e1e\u0e24.","\u0e28.","\u0e2a."],A:["\u0e27\u0e31\u0e19\u0e2d\u0e32\u0e17\u0e34\u0e15\u0e22\u0e4c","\u0e27\u0e31\u0e19\u0e08\u0e31\u0e19\u0e17\u0e23\u0e4c","\u0e27\u0e31\u0e19\u0e2d\u0e31\u0e07\u0e04\u0e32\u0e23","\u0e27\u0e31\u0e19\u0e1e\u0e38\u0e18","\u0e27\u0e31\u0e19\u0e1e\u0e24\u0e2b\u0e31\u0e2a\u0e1a\u0e14\u0e35","\u0e27\u0e31\u0e19\u0e28\u0e38\u0e01\u0e23\u0e4c","\u0e27\u0e31\u0e19\u0e40\u0e2a\u0e32\u0e23\u0e4c"],b:["\u0e21.\u0e04.","\u0e01.\u0e1e.","\u0e21\u0e35.\u0e04.","\u0e40\u0e21.\u0e22.","\u0e1e.\u0e04.","\u0e21\u0e34.\u0e22.","\u0e01.\u0e04.","\u0e2a.\u0e04.","\u0e01.\u0e22.","\u0e15.\u0e04.","\u0e1e.\u0e22.","\u0e18.\u0e04."],B:["\u0e21\u0e01\u0e23\u0e32\u0e04\u0e21","\u0e01\u0e38\u0e21\u0e20\u0e32\u0e1e\u0e31\u0e19\u0e18\u0e4c","\u0e21\u0e35\u0e19\u0e32\u0e04\u0e21","\u0e40\u0e21\u0e29\u0e32\u0e22\u0e19","\u0e1e\u0e24\u0e29\u0e20\u0e32\u0e04\u0e21","\u0e21\u0e34\u0e16\u0e38\u0e19\u0e32\u0e22\u0e19","\u0e01\u0e23\u0e01\u0e0e\u0e32\u0e04\u0e21","\u0e2a\u0e34\u0e07\u0e2b\u0e32\u0e04\u0e21","\u0e01\u0e31\u0e19\u0e22\u0e32\u0e22\u0e19","\u0e15\u0e38\u0e25\u0e32\u0e04\u0e21","\u0e1e\u0e24\u0e28\u0e08\u0e34\u0e01\u0e32\u0e22\u0e19","\u0e18\u0e31\u0e19\u0e27\u0e32\u0e04\u0e21"],c:"%a %d %b %Y, %k \u0e19\u0e32\u0e2c\u0e34\u0e01\u0e32 %M \u0e19\u0e32\u0e17\u0e35 %S \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35 %Z",p:["\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07","\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"],P:["\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07","\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"],x:"%d/%m/%Y",X:"%k \u0e19\u0e32\u0e2c\u0e34\u0e01\u0e32 %M \u0e19\u0e32\u0e17\u0e35 %S \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_th.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_th.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_th.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_th.js index 5edf49596f5..cab00b97c20 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_th.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_th.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_th",function(e){e.Intl.add("datatype-date-format","th",{a:["\u0e2d\u0e32.","\u0e08.","\u0e2d.","\u0e1e.","\u0e1e\u0e24.","\u0e28.","\u0e2a."],A:["\u0e27\u0e31\u0e19\u0e2d\u0e32\u0e17\u0e34\u0e15\u0e22\u0e4c","\u0e27\u0e31\u0e19\u0e08\u0e31\u0e19\u0e17\u0e23\u0e4c","\u0e27\u0e31\u0e19\u0e2d\u0e31\u0e07\u0e04\u0e32\u0e23","\u0e27\u0e31\u0e19\u0e1e\u0e38\u0e18","\u0e27\u0e31\u0e19\u0e1e\u0e24\u0e2b\u0e31\u0e2a\u0e1a\u0e14\u0e35","\u0e27\u0e31\u0e19\u0e28\u0e38\u0e01\u0e23\u0e4c","\u0e27\u0e31\u0e19\u0e40\u0e2a\u0e32\u0e23\u0e4c"],b:["\u0e21.\u0e04.","\u0e01.\u0e1e.","\u0e21\u0e35.\u0e04.","\u0e40\u0e21.\u0e22.","\u0e1e.\u0e04.","\u0e21\u0e34.\u0e22.","\u0e01.\u0e04.","\u0e2a.\u0e04.","\u0e01.\u0e22.","\u0e15.\u0e04.","\u0e1e.\u0e22.","\u0e18.\u0e04."],B:["\u0e21\u0e01\u0e23\u0e32\u0e04\u0e21","\u0e01\u0e38\u0e21\u0e20\u0e32\u0e1e\u0e31\u0e19\u0e18\u0e4c","\u0e21\u0e35\u0e19\u0e32\u0e04\u0e21","\u0e40\u0e21\u0e29\u0e32\u0e22\u0e19","\u0e1e\u0e24\u0e29\u0e20\u0e32\u0e04\u0e21","\u0e21\u0e34\u0e16\u0e38\u0e19\u0e32\u0e22\u0e19","\u0e01\u0e23\u0e01\u0e0e\u0e32\u0e04\u0e21","\u0e2a\u0e34\u0e07\u0e2b\u0e32\u0e04\u0e21","\u0e01\u0e31\u0e19\u0e22\u0e32\u0e22\u0e19","\u0e15\u0e38\u0e25\u0e32\u0e04\u0e21","\u0e1e\u0e24\u0e28\u0e08\u0e34\u0e01\u0e32\u0e22\u0e19","\u0e18\u0e31\u0e19\u0e27\u0e32\u0e04\u0e21"],c:"%a %d %b %Y, %k \u0e19\u0e32\u0e2c\u0e34\u0e01\u0e32 %M \u0e19\u0e32\u0e17\u0e35 %S \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35 %Z",p:["\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07","\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"],P:["\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07","\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"],x:"%d/%m/%Y",X:"%k \u0e19\u0e32\u0e2c\u0e34\u0e01\u0e32 %M \u0e19\u0e32\u0e17\u0e35 %S \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_th",function(e){e.Intl.add("datatype-date-format","th",{a:["\u0e2d\u0e32.","\u0e08.","\u0e2d.","\u0e1e.","\u0e1e\u0e24.","\u0e28.","\u0e2a."],A:["\u0e27\u0e31\u0e19\u0e2d\u0e32\u0e17\u0e34\u0e15\u0e22\u0e4c","\u0e27\u0e31\u0e19\u0e08\u0e31\u0e19\u0e17\u0e23\u0e4c","\u0e27\u0e31\u0e19\u0e2d\u0e31\u0e07\u0e04\u0e32\u0e23","\u0e27\u0e31\u0e19\u0e1e\u0e38\u0e18","\u0e27\u0e31\u0e19\u0e1e\u0e24\u0e2b\u0e31\u0e2a\u0e1a\u0e14\u0e35","\u0e27\u0e31\u0e19\u0e28\u0e38\u0e01\u0e23\u0e4c","\u0e27\u0e31\u0e19\u0e40\u0e2a\u0e32\u0e23\u0e4c"],b:["\u0e21.\u0e04.","\u0e01.\u0e1e.","\u0e21\u0e35.\u0e04.","\u0e40\u0e21.\u0e22.","\u0e1e.\u0e04.","\u0e21\u0e34.\u0e22.","\u0e01.\u0e04.","\u0e2a.\u0e04.","\u0e01.\u0e22.","\u0e15.\u0e04.","\u0e1e.\u0e22.","\u0e18.\u0e04."],B:["\u0e21\u0e01\u0e23\u0e32\u0e04\u0e21","\u0e01\u0e38\u0e21\u0e20\u0e32\u0e1e\u0e31\u0e19\u0e18\u0e4c","\u0e21\u0e35\u0e19\u0e32\u0e04\u0e21","\u0e40\u0e21\u0e29\u0e32\u0e22\u0e19","\u0e1e\u0e24\u0e29\u0e20\u0e32\u0e04\u0e21","\u0e21\u0e34\u0e16\u0e38\u0e19\u0e32\u0e22\u0e19","\u0e01\u0e23\u0e01\u0e0e\u0e32\u0e04\u0e21","\u0e2a\u0e34\u0e07\u0e2b\u0e32\u0e04\u0e21","\u0e01\u0e31\u0e19\u0e22\u0e32\u0e22\u0e19","\u0e15\u0e38\u0e25\u0e32\u0e04\u0e21","\u0e1e\u0e24\u0e28\u0e08\u0e34\u0e01\u0e32\u0e22\u0e19","\u0e18\u0e31\u0e19\u0e27\u0e32\u0e04\u0e21"],c:"%a %d %b %Y, %k \u0e19\u0e32\u0e2c\u0e34\u0e01\u0e32 %M \u0e19\u0e32\u0e17\u0e35 %S \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35 %Z",p:["\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07","\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"],P:["\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07","\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"],x:"%d/%m/%Y",X:"%k \u0e19\u0e32\u0e2c\u0e34\u0e01\u0e32 %M \u0e19\u0e32\u0e17\u0e35 %S \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_tr-TR.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_tr-TR.js old mode 100644 new mode 100755 similarity index 73% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_tr-TR.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_tr-TR.js index 64d08900aff..9c1c3ff25d8 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_tr-TR.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_tr-TR.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_tr-TR",function(e){e.Intl.add("datatype-date-format","tr-TR",{a:["Paz","Pzt","Sal","\u00c7ar","Per","Cum","Cmt"],A:["Pazar","Pazartesi","Sal\u0131","\u00c7ar\u015famba","Per\u015fembe","Cuma","Cumartesi"],b:["Oca","\u015eub","Mar","Nis","May","Haz","Tem","A\u011fu","Eyl","Eki","Kas","Ara"],B:["Ocak","\u015eubat","Mart","Nisan","May\u0131s","Haziran","Temmuz","A\u011fustos","Eyl\u00fcl","Ekim","Kas\u0131m","Aral\u0131k"],c:"%d %b %Y %a %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%Y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_tr-TR",function(e){e.Intl.add("datatype-date-format","tr-TR",{a:["Paz","Pzt","Sal","\u00c7ar","Per","Cum","Cmt"],A:["Pazar","Pazartesi","Sal\u0131","\u00c7ar\u015famba","Per\u015fembe","Cuma","Cumartesi"],b:["Oca","\u015eub","Mar","Nis","May","Haz","Tem","A\u011fu","Eyl","Eki","Kas","Ara"],B:["Ocak","\u015eubat","Mart","Nisan","May\u0131s","Haziran","Temmuz","A\u011fustos","Eyl\u00fcl","Ekim","Kas\u0131m","Aral\u0131k"],c:"%d %b %Y %a %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%Y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_tr.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_tr.js old mode 100644 new mode 100755 similarity index 73% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_tr.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_tr.js index 4d4a73ca6f0..4427d01054e --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_tr.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_tr.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_tr",function(e){e.Intl.add("datatype-date-format","tr",{a:["Paz","Pzt","Sal","\u00c7ar","Per","Cum","Cmt"],A:["Pazar","Pazartesi","Sal\u0131","\u00c7ar\u015famba","Per\u015fembe","Cuma","Cumartesi"],b:["Oca","\u015eub","Mar","Nis","May","Haz","Tem","A\u011fu","Eyl","Eki","Kas","Ara"],B:["Ocak","\u015eubat","Mart","Nisan","May\u0131s","Haziran","Temmuz","A\u011fustos","Eyl\u00fcl","Ekim","Kas\u0131m","Aral\u0131k"],c:"%d %b %Y %a %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%Y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_tr",function(e){e.Intl.add("datatype-date-format","tr",{a:["Paz","Pzt","Sal","\u00c7ar","Per","Cum","Cmt"],A:["Pazar","Pazartesi","Sal\u0131","\u00c7ar\u015famba","Per\u015fembe","Cuma","Cumartesi"],b:["Oca","\u015eub","Mar","Nis","May","Haz","Tem","A\u011fu","Eyl","Eki","Kas","Ara"],B:["Ocak","\u015eubat","Mart","Nisan","May\u0131s","Haziran","Temmuz","A\u011fustos","Eyl\u00fcl","Ekim","Kas\u0131m","Aral\u0131k"],c:"%d %b %Y %a %H:%M:%S %Z",p:["AM","PM"],P:["am","pm"],x:"%d.%m.%Y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_vi-VN.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_vi-VN.js old mode 100644 new mode 100755 similarity index 77% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_vi-VN.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_vi-VN.js index 4f8713e3c71..9081e8ae90e --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_vi-VN.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_vi-VN.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_vi-VN",function(e){e.Intl.add("datatype-date-format","vi-VN",{a:["CN","Th 2","Th 3","Th 4","Th 5","Th 6","Th 7"],A:["Ch\u1ee7 nh\u1eadt","Th\u1ee9 hai","Th\u1ee9 ba","Th\u1ee9 t\u01b0","Th\u1ee9 n\u0103m","Th\u1ee9 s\u00e1u","Th\u1ee9 b\u1ea3y"],b:["thg 1","thg 2","thg 3","thg 4","thg 5","thg 6","thg 7","thg 8","thg 9","thg 10","thg 11","thg 12"],B:["th\u00e1ng m\u1ed9t","th\u00e1ng hai","th\u00e1ng ba","th\u00e1ng t\u01b0","th\u00e1ng n\u0103m","th\u00e1ng s\u00e1u","th\u00e1ng b\u1ea3y","th\u00e1ng t\u00e1m","th\u00e1ng ch\u00edn","th\u00e1ng m\u01b0\u1eddi","th\u00e1ng m\u01b0\u1eddi m\u1ed9t","th\u00e1ng m\u01b0\u1eddi hai"],c:"%H:%M:%S %Z %a, %d %b %Y",p:["SA","CH"],P:["sa","ch"],x:"%d/%m/%Y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_vi-VN",function(e){e.Intl.add("datatype-date-format","vi-VN",{a:["CN","Th 2","Th 3","Th 4","Th 5","Th 6","Th 7"],A:["Ch\u1ee7 nh\u1eadt","Th\u1ee9 hai","Th\u1ee9 ba","Th\u1ee9 t\u01b0","Th\u1ee9 n\u0103m","Th\u1ee9 s\u00e1u","Th\u1ee9 b\u1ea3y"],b:["thg 1","thg 2","thg 3","thg 4","thg 5","thg 6","thg 7","thg 8","thg 9","thg 10","thg 11","thg 12"],B:["th\u00e1ng m\u1ed9t","th\u00e1ng hai","th\u00e1ng ba","th\u00e1ng t\u01b0","th\u00e1ng n\u0103m","th\u00e1ng s\u00e1u","th\u00e1ng b\u1ea3y","th\u00e1ng t\u00e1m","th\u00e1ng ch\u00edn","th\u00e1ng m\u01b0\u1eddi","th\u00e1ng m\u01b0\u1eddi m\u1ed9t","th\u00e1ng m\u01b0\u1eddi hai"],c:"%H:%M:%S %Z %a, %d %b %Y",p:["SA","CH"],P:["sa","ch"],x:"%d/%m/%Y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_vi.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_vi.js old mode 100644 new mode 100755 similarity index 77% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_vi.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_vi.js index 5feefe062fd..2c2e7acbf88 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_vi.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_vi.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_vi",function(e){e.Intl.add("datatype-date-format","vi",{a:["CN","Th 2","Th 3","Th 4","Th 5","Th 6","Th 7"],A:["Ch\u1ee7 nh\u1eadt","Th\u1ee9 hai","Th\u1ee9 ba","Th\u1ee9 t\u01b0","Th\u1ee9 n\u0103m","Th\u1ee9 s\u00e1u","Th\u1ee9 b\u1ea3y"],b:["thg 1","thg 2","thg 3","thg 4","thg 5","thg 6","thg 7","thg 8","thg 9","thg 10","thg 11","thg 12"],B:["th\u00e1ng m\u1ed9t","th\u00e1ng hai","th\u00e1ng ba","th\u00e1ng t\u01b0","th\u00e1ng n\u0103m","th\u00e1ng s\u00e1u","th\u00e1ng b\u1ea3y","th\u00e1ng t\u00e1m","th\u00e1ng ch\u00edn","th\u00e1ng m\u01b0\u1eddi","th\u00e1ng m\u01b0\u1eddi m\u1ed9t","th\u00e1ng m\u01b0\u1eddi hai"],c:"%H:%M:%S %Z %a, %d %b %Y",p:["SA","CH"],P:["sa","ch"],x:"%d/%m/%Y",X:"%H:%M:%S"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_vi",function(e){e.Intl.add("datatype-date-format","vi",{a:["CN","Th 2","Th 3","Th 4","Th 5","Th 6","Th 7"],A:["Ch\u1ee7 nh\u1eadt","Th\u1ee9 hai","Th\u1ee9 ba","Th\u1ee9 t\u01b0","Th\u1ee9 n\u0103m","Th\u1ee9 s\u00e1u","Th\u1ee9 b\u1ea3y"],b:["thg 1","thg 2","thg 3","thg 4","thg 5","thg 6","thg 7","thg 8","thg 9","thg 10","thg 11","thg 12"],B:["th\u00e1ng m\u1ed9t","th\u00e1ng hai","th\u00e1ng ba","th\u00e1ng t\u01b0","th\u00e1ng n\u0103m","th\u00e1ng s\u00e1u","th\u00e1ng b\u1ea3y","th\u00e1ng t\u00e1m","th\u00e1ng ch\u00edn","th\u00e1ng m\u01b0\u1eddi","th\u00e1ng m\u01b0\u1eddi m\u1ed9t","th\u00e1ng m\u01b0\u1eddi hai"],c:"%H:%M:%S %Z %a, %d %b %Y",p:["SA","CH"],P:["sa","ch"],x:"%d/%m/%Y",X:"%H:%M:%S"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hans-CN.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hans-CN.js old mode 100644 new mode 100755 similarity index 81% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hans-CN.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hans-CN.js index 7e8fdafdc13..aea340b790e --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hans-CN.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hans-CN.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_zh-Hans-CN",function(e){e.Intl.add("datatype-date-format","zh-Hans-CN",{a:["\u5468\u65e5","\u5468\u4e00","\u5468\u4e8c","\u5468\u4e09","\u5468\u56db","\u5468\u4e94","\u5468\u516d"],A:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%b%d\u65e5%a%Z%p%l\u65f6%M\u5206%S\u79d2",p:["\u4e0a\u5348","\u4e0b\u5348"],P:["\u4e0a\u5348","\u4e0b\u5348"],x:"%y-%m-%d",X:"%p%l\u65f6%M\u5206%S\u79d2"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_zh-Hans-CN",function(e){e.Intl.add("datatype-date-format","zh-Hans-CN",{a:["\u5468\u65e5","\u5468\u4e00","\u5468\u4e8c","\u5468\u4e09","\u5468\u56db","\u5468\u4e94","\u5468\u516d"],A:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%b%d\u65e5%a%Z%p%l\u65f6%M\u5206%S\u79d2",p:["\u4e0a\u5348","\u4e0b\u5348"],P:["\u4e0a\u5348","\u4e0b\u5348"],x:"%y-%m-%d",X:"%p%l\u65f6%M\u5206%S\u79d2"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hans.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hans.js old mode 100644 new mode 100755 similarity index 81% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hans.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hans.js index 245b525cefa..20752f5e3b3 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hans.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hans.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_zh-Hans",function(e){e.Intl.add("datatype-date-format","zh-Hans",{a:["\u5468\u65e5","\u5468\u4e00","\u5468\u4e8c","\u5468\u4e09","\u5468\u56db","\u5468\u4e94","\u5468\u516d"],A:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%b%d\u65e5%a%Z%p%l\u65f6%M\u5206%S\u79d2",p:["\u4e0a\u5348","\u4e0b\u5348"],P:["\u4e0a\u5348","\u4e0b\u5348"],x:"%y-%m-%d",X:"%p%l\u65f6%M\u5206%S\u79d2"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_zh-Hans",function(e){e.Intl.add("datatype-date-format","zh-Hans",{a:["\u5468\u65e5","\u5468\u4e00","\u5468\u4e8c","\u5468\u4e09","\u5468\u56db","\u5468\u4e94","\u5468\u516d"],A:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%b%d\u65e5%a%Z%p%l\u65f6%M\u5206%S\u79d2",p:["\u4e0a\u5348","\u4e0b\u5348"],P:["\u4e0a\u5348","\u4e0b\u5348"],x:"%y-%m-%d",X:"%p%l\u65f6%M\u5206%S\u79d2"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hant-HK.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hant-HK.js old mode 100644 new mode 100755 similarity index 79% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hant-HK.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hant-HK.js index 9cfa1378c1a..f649d74003e --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hant-HK.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hant-HK.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_zh-Hant-HK",function(e){e.Intl.add("datatype-date-format","zh-Hant-HK",{a:["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"],A:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%b%d\u65e5%a%Z%p%l\u6642%M\u5206%S\u79d2",p:["\u4e0a\u5348","\u4e0b\u5348"],P:["\u4e0a\u5348","\u4e0b\u5348"],x:"%y\u5e74%m\u6708%d\u65e5",X:"%p%l\u6642%M\u5206%S\u79d2"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_zh-Hant-HK",function(e){e.Intl.add("datatype-date-format","zh-Hant-HK",{a:["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"],A:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%b%d\u65e5%a%Z%p%l\u6642%M\u5206%S\u79d2",p:["\u4e0a\u5348","\u4e0b\u5348"],P:["\u4e0a\u5348","\u4e0b\u5348"],x:"%y\u5e74%m\u6708%d\u65e5",X:"%p%l\u6642%M\u5206%S\u79d2"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hant-TW.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hant-TW.js old mode 100644 new mode 100755 similarity index 81% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hant-TW.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hant-TW.js index b486d774e47..6055bac6bb7 --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hant-TW.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hant-TW.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_zh-Hant-TW",function(e){e.Intl.add("datatype-date-format","zh-Hant-TW",{a:["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"],A:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%b%d\u65e5%a%Z%p%l\u6642%M\u5206%S\u79d2",p:["\u4e0a\u5348","\u4e0b\u5348"],P:["\u4e0a\u5348","\u4e0b\u5348"],x:"%y/%m/%d",X:"%p%l\u6642%M\u5206%S\u79d2"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_zh-Hant-TW",function(e){e.Intl.add("datatype-date-format","zh-Hant-TW",{a:["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"],A:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%b%d\u65e5%a%Z%p%l\u6642%M\u5206%S\u79d2",p:["\u4e0a\u5348","\u4e0b\u5348"],P:["\u4e0a\u5348","\u4e0b\u5348"],x:"%y/%m/%d",X:"%p%l\u6642%M\u5206%S\u79d2"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hant.js b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hant.js old mode 100644 new mode 100755 similarity index 81% rename from lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hant.js rename to lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hant.js index aba64dec686..8cfcb51837e --- a/lib/yuilib/3.9.1/build/datatype-date-format/lang/datatype-date-format_zh-Hant.js +++ b/lib/yuilib/3.12.0/datatype-date-format/lang/datatype-date-format_zh-Hant.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/datatype-date-format_zh-Hant",function(e){e.Intl.add("datatype-date-format","zh-Hant",{a:["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"],A:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%b%d\u65e5%a%Z%p%l\u6642%M\u5206%S\u79d2",p:["\u4e0a\u5348","\u4e0b\u5348"],P:["\u4e0a\u5348","\u4e0b\u5348"],x:"%y/%m/%d",X:"%p%l\u6642%M\u5206%S\u79d2"})},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/datatype-date-format_zh-Hant",function(e){e.Intl.add("datatype-date-format","zh-Hant",{a:["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"],A:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],b:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],B:["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],c:"%Y\u5e74%b%d\u65e5%a%Z%p%l\u6642%M\u5206%S\u79d2",p:["\u4e0a\u5348","\u4e0b\u5348"],P:["\u4e0a\u5348","\u4e0b\u5348"],x:"%y/%m/%d",X:"%p%l\u6642%M\u5206%S\u79d2"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-math/datatype-date-math-debug.js b/lib/yuilib/3.12.0/datatype-date-math/datatype-date-math-debug.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/datatype-date-math/datatype-date-math-debug.js rename to lib/yuilib/3.12.0/datatype-date-math/datatype-date-math-debug.js index a9f53f441a7..3fbd78d60ef --- a/lib/yuilib/3.9.1/build/datatype-date-math/datatype-date-math-debug.js +++ b/lib/yuilib/3.12.0/datatype-date-math/datatype-date-math-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-date-math', function (Y, NAME) { /** @@ -206,4 +212,4 @@ Y.namespace("DataType"); Y.DataType.Date = Y.Date; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/datatype-date-math/datatype-date-math-min.js b/lib/yuilib/3.12.0/datatype-date-math/datatype-date-math-min.js old mode 100644 new mode 100755 similarity index 87% rename from lib/yuilib/3.9.1/build/datatype-date-math/datatype-date-math-min.js rename to lib/yuilib/3.12.0/datatype-date-math/datatype-date-math-min.js index b270d954103..35ba422a998 --- a/lib/yuilib/3.9.1/build/datatype-date-math/datatype-date-math-min.js +++ b/lib/yuilib/3.12.0/datatype-date-math/datatype-date-math-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datatype-date-math",function(e,t){var n=e.Lang;e.mix(e.namespace("Date"),{isValidDate:function(e){return n.isDate(e)&&isFinite(e)&&e!="Invalid Date"&&!isNaN(e)&&e!=null?!0:!1},areEqual:function(e,t){return this.isValidDate(e)&&this.isValidDate(t)&&e.getTime()==t.getTime()},isGreater:function(e,t){return this.isValidDate(e)&&this.isValidDate(t)&&e.getTime()>t.getTime()},isGreaterOrEqual:function(e,t){return this.isValidDate(e)&&this.isValidDate(t)&&e.getTime()>=t.getTime()},isInRange:function(e,t,n){return this.isGreaterOrEqual(e,t)&&this.isGreaterOrEqual(n,e)},addDays:function(e,t){return new Date(e.getTime()+864e5*t)},addMonths:function(e,t){var n=e.getFullYear(),r=e.getMonth()+t;n=Math.floor(n+r/12),r=(r%12+12)%12;var i=new Date(e.getTime());return i.setFullYear(n),i.setMonth(r),i},addYears:function(e,t){var n=e.getFullYear()+t,r=new Date(e.getTime());return r.setFullYear(n),r},listOfDatesInMonth:function(e){if(!this.isValidDate(e))return[];var t=this.daysInMonth(e),n=e.getFullYear(),r=e.getMonth(),i=[];for(var s=1;s<=t;s++)i.push(new Date(n,r,s,12,0,0));return i},daysInMonth:function(e){if(!this.isValidDate(e))return 0;var t=e.getMonth(),n=[31,28,31,30,31,30,31,31,30,31,30,31];if(t!=1)return n[t];var r=e.getFullYear();return r%400===0?29:r%100===0?28:r%4===0?29:28}}),e.namespace("DataType"),e.DataType.Date=e.Date},"3.9.1",{requires:["yui-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datatype-date-math",function(e,t){var n=e.Lang;e.mix(e.namespace("Date"),{isValidDate:function(e){return n.isDate(e)&&isFinite(e)&&e!="Invalid Date"&&!isNaN(e)&&e!=null?!0:!1},areEqual:function(e,t){return this.isValidDate(e)&&this.isValidDate(t)&&e.getTime()==t.getTime()},isGreater:function(e,t){return this.isValidDate(e)&&this.isValidDate(t)&&e.getTime()>t.getTime()},isGreaterOrEqual:function(e,t){return this.isValidDate(e)&&this.isValidDate(t)&&e.getTime()>=t.getTime()},isInRange:function(e,t,n){return this.isGreaterOrEqual(e,t)&&this.isGreaterOrEqual(n,e)},addDays:function(e,t){return new Date(e.getTime()+864e5*t)},addMonths:function(e,t){var n=e.getFullYear(),r=e.getMonth()+t;n=Math.floor(n+r/12),r=(r%12+12)%12;var i=new Date(e.getTime());return i.setFullYear(n),i.setMonth(r),i},addYears:function(e,t){var n=e.getFullYear()+t,r=new Date(e.getTime());return r.setFullYear(n),r},listOfDatesInMonth:function(e){if(!this.isValidDate(e))return[];var t=this.daysInMonth(e),n=e.getFullYear(),r=e.getMonth(),i=[];for(var s=1;s<=t;s++)i.push(new Date(n,r,s,12,0,0));return i},daysInMonth:function(e){if(!this.isValidDate(e))return 0;var t=e.getMonth(),n=[31,28,31,30,31,30,31,31,30,31,30,31];if(t!=1)return n[t];var r=e.getFullYear();return r%400===0?29:r%100===0?28:r%4===0?29:28}}),e.namespace("DataType"),e.DataType.Date=e.Date},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/datatype-date-math/datatype-date-math.js b/lib/yuilib/3.12.0/datatype-date-math/datatype-date-math.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/datatype-date-math/datatype-date-math.js rename to lib/yuilib/3.12.0/datatype-date-math/datatype-date-math.js index abf25e167b0..c560a56880e --- a/lib/yuilib/3.9.1/build/datatype-date-math/datatype-date-math.js +++ b/lib/yuilib/3.12.0/datatype-date-math/datatype-date-math.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-date-math', function (Y, NAME) { /** @@ -205,4 +211,4 @@ Y.namespace("DataType"); Y.DataType.Date = Y.Date; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/datatype-date-parse/datatype-date-parse-debug.js b/lib/yuilib/3.12.0/datatype-date-parse/datatype-date-parse-debug.js old mode 100644 new mode 100755 similarity index 84% rename from lib/yuilib/3.9.1/build/datatype-date-parse/datatype-date-parse-debug.js rename to lib/yuilib/3.12.0/datatype-date-parse/datatype-date-parse-debug.js index 97949c00a9d..1d800eb21d4 --- a/lib/yuilib/3.9.1/build/datatype-date-parse/datatype-date-parse-debug.js +++ b/lib/yuilib/3.12.0/datatype-date-parse/datatype-date-parse-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-date-parse', function (Y, NAME) { /** @@ -34,4 +40,4 @@ Y.namespace("DataType"); Y.DataType.Date = Y.Date; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.12.0/datatype-date-parse/datatype-date-parse-min.js b/lib/yuilib/3.12.0/datatype-date-parse/datatype-date-parse-min.js new file mode 100755 index 00000000000..f1e0af56dc6 --- /dev/null +++ b/lib/yuilib/3.12.0/datatype-date-parse/datatype-date-parse-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datatype-date-parse",function(e,t){e.mix(e.namespace("Date"),{parse:function(t){var n=new Date(+t||t);return e.Lang.isDate(n)?n:null}}),e.namespace("Parsers").date=e.Date.parse,e.namespace("DataType"),e.DataType.Date=e.Date},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-date-parse/datatype-date-parse.js b/lib/yuilib/3.12.0/datatype-date-parse/datatype-date-parse.js old mode 100644 new mode 100755 similarity index 82% rename from lib/yuilib/3.9.1/build/datatype-date-parse/datatype-date-parse.js rename to lib/yuilib/3.12.0/datatype-date-parse/datatype-date-parse.js index f892b739187..8eaf84d8b4c --- a/lib/yuilib/3.9.1/build/datatype-date-parse/datatype-date-parse.js +++ b/lib/yuilib/3.12.0/datatype-date-parse/datatype-date-parse.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-date-parse', function (Y, NAME) { /** @@ -33,4 +39,4 @@ Y.namespace("DataType"); Y.DataType.Date = Y.Date; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/datatype-number-format/datatype-number-format-debug.js b/lib/yuilib/3.12.0/datatype-number-format/datatype-number-format-debug.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/datatype-number-format/datatype-number-format-debug.js rename to lib/yuilib/3.12.0/datatype-number-format/datatype-number-format-debug.js index 0c68a16e841..0b64c315474 --- a/lib/yuilib/3.9.1/build/datatype-number-format/datatype-number-format-debug.js +++ b/lib/yuilib/3.12.0/datatype-number-format/datatype-number-format-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-number-format', function (Y, NAME) { /** @@ -107,4 +113,4 @@ Y.namespace("DataType"); Y.DataType.Number = Y.Number; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/datatype-number-format/datatype-number-format-min.js b/lib/yuilib/3.12.0/datatype-number-format/datatype-number-format-min.js old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/datatype-number-format/datatype-number-format-min.js rename to lib/yuilib/3.12.0/datatype-number-format/datatype-number-format-min.js index 2e7e67ab9f6..599d4166697 --- a/lib/yuilib/3.9.1/build/datatype-number-format/datatype-number-format-min.js +++ b/lib/yuilib/3.12.0/datatype-number-format/datatype-number-format-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datatype-number-format",function(e,t){var n=e.Lang;e.mix(e.namespace("Number"),{format:function(e,t){if(n.isNumber(e)){t=t||{};var r=e<0,i=e+"",s=t.decimalPlaces,o=t.decimalSeparator||".",u=t.thousandsSeparator,a,f,l,c;n.isNumber(s)&&s>=0&&s<=20&&(i=e.toFixed(s)),o!=="."&&(i=i.replace(".",o));if(u){a=i.lastIndexOf(o),a=a>-1?a:i.length,f=i.substring(a);for(l=0,c=a;c>0;c--)l%3===0&&c!==a&&(!r||c>1)&&(f=u+f),f=i.charAt(c-1)+f,l++;i=f}return i=t.prefix?t.prefix+i:i,i=t.suffix?i+t.suffix:i,i}return n.isValue(e)&&e.toString?e.toString():""}}),e.namespace("DataType"),e.DataType.Number=e.Number},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datatype-number-format",function(e,t){var n=e.Lang;e.mix(e.namespace("Number"),{format:function(e,t){if(n.isNumber(e)){t=t||{};var r=e<0,i=e+"",s=t.decimalPlaces,o=t.decimalSeparator||".",u=t.thousandsSeparator,a,f,l,c;n.isNumber(s)&&s>=0&&s<=20&&(i=e.toFixed(s)),o!=="."&&(i=i.replace(".",o));if(u){a=i.lastIndexOf(o),a=a>-1?a:i.length,f=i.substring(a);for(l=0,c=a;c>0;c--)l%3===0&&c!==a&&(!r||c>1)&&(f=u+f),f=i.charAt(c-1)+f,l++;i=f}return i=t.prefix?t.prefix+i:i,i=t.suffix?i+t.suffix:i,i}return n.isValue(e)&&e.toString?e.toString():""}}),e.namespace("DataType"),e.DataType.Number=e.Number},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-number-format/datatype-number-format.js b/lib/yuilib/3.12.0/datatype-number-format/datatype-number-format.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/datatype-number-format/datatype-number-format.js rename to lib/yuilib/3.12.0/datatype-number-format/datatype-number-format.js index 0624a5b0bad..700a8f1c95d --- a/lib/yuilib/3.9.1/build/datatype-number-format/datatype-number-format.js +++ b/lib/yuilib/3.12.0/datatype-number-format/datatype-number-format.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-number-format', function (Y, NAME) { /** @@ -106,4 +112,4 @@ Y.namespace("DataType"); Y.DataType.Number = Y.Number; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/datatype-number-parse/datatype-number-parse-debug.js b/lib/yuilib/3.12.0/datatype-number-parse/datatype-number-parse-debug.js old mode 100644 new mode 100755 similarity index 85% rename from lib/yuilib/3.9.1/build/datatype-number-parse/datatype-number-parse-debug.js rename to lib/yuilib/3.12.0/datatype-number-parse/datatype-number-parse-debug.js index ed21f4e40bf..47606a6c5a4 --- a/lib/yuilib/3.9.1/build/datatype-number-parse/datatype-number-parse-debug.js +++ b/lib/yuilib/3.12.0/datatype-number-parse/datatype-number-parse-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-number-parse', function (Y, NAME) { /** @@ -38,4 +44,4 @@ Y.namespace("DataType"); Y.DataType.Number = Y.Number; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/datatype-number-parse/datatype-number-parse-min.js b/lib/yuilib/3.12.0/datatype-number-parse/datatype-number-parse-min.js old mode 100644 new mode 100755 similarity index 61% rename from lib/yuilib/3.9.1/build/datatype-number-parse/datatype-number-parse-min.js rename to lib/yuilib/3.12.0/datatype-number-parse/datatype-number-parse-min.js index c1a729fd06f..58a7aeb9c68 --- a/lib/yuilib/3.9.1/build/datatype-number-parse/datatype-number-parse-min.js +++ b/lib/yuilib/3.12.0/datatype-number-parse/datatype-number-parse-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datatype-number-parse",function(e,t){var n=e.Lang;e.mix(e.namespace("Number"),{parse:function(e){var t=e===null||e===""?e:+e;return n.isNumber(t)?t:null}}),e.namespace("Parsers").number=e.Number.parse,e.namespace("DataType"),e.DataType.Number=e.Number},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datatype-number-parse",function(e,t){var n=e.Lang;e.mix(e.namespace("Number"),{parse:function(e){var t=e===null||e===""?e:+e;return n.isNumber(t)?t:null}}),e.namespace("Parsers").number=e.Number.parse,e.namespace("DataType"),e.DataType.Number=e.Number},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-number-parse/datatype-number-parse.js b/lib/yuilib/3.12.0/datatype-number-parse/datatype-number-parse.js old mode 100644 new mode 100755 similarity index 84% rename from lib/yuilib/3.9.1/build/datatype-number-parse/datatype-number-parse.js rename to lib/yuilib/3.12.0/datatype-number-parse/datatype-number-parse.js index 27f3ae175ec..4c75df784f5 --- a/lib/yuilib/3.9.1/build/datatype-number-parse/datatype-number-parse.js +++ b/lib/yuilib/3.12.0/datatype-number-parse/datatype-number-parse.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-number-parse', function (Y, NAME) { /** @@ -37,4 +43,4 @@ Y.namespace("DataType"); Y.DataType.Number = Y.Number; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/datatype-xml-format/datatype-xml-format-debug.js b/lib/yuilib/3.12.0/datatype-xml-format/datatype-xml-format-debug.js old mode 100644 new mode 100755 similarity index 88% rename from lib/yuilib/3.9.1/build/datatype-xml-format/datatype-xml-format-debug.js rename to lib/yuilib/3.12.0/datatype-xml-format/datatype-xml-format-debug.js index 15dd893144a..ebab04fe5bb --- a/lib/yuilib/3.9.1/build/datatype-xml-format/datatype-xml-format-debug.js +++ b/lib/yuilib/3.12.0/datatype-xml-format/datatype-xml-format-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-xml-format', function (Y, NAME) { /** @@ -51,4 +57,4 @@ Y.namespace("DataType"); Y.DataType.XML = Y.XML; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/datatype-xml-format/datatype-xml-format-min.js b/lib/yuilib/3.12.0/datatype-xml-format/datatype-xml-format-min.js old mode 100644 new mode 100755 similarity index 62% rename from lib/yuilib/3.9.1/build/datatype-xml-format/datatype-xml-format-min.js rename to lib/yuilib/3.12.0/datatype-xml-format/datatype-xml-format-min.js index 7e6843d094d..966dcb7b856 --- a/lib/yuilib/3.9.1/build/datatype-xml-format/datatype-xml-format-min.js +++ b/lib/yuilib/3.12.0/datatype-xml-format/datatype-xml-format-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datatype-xml-format",function(e,t){var n=e.Lang;e.mix(e.namespace("XML"),{format:function(e){try{if(!n.isUndefined(e.getXml))return e.getXml();if(!n.isUndefined(XMLSerializer))return(new XMLSerializer).serializeToString(e)}catch(t){return e&&e.xml?e.xml:n.isValue(e)&&e.toString?e.toString():""}}}),e.namespace("DataType"),e.DataType.XML=e.XML},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datatype-xml-format",function(e,t){var n=e.Lang;e.mix(e.namespace("XML"),{format:function(e){try{if(!n.isUndefined(e.getXml))return e.getXml();if(!n.isUndefined(XMLSerializer))return(new XMLSerializer).serializeToString(e)}catch(t){return e&&e.xml?e.xml:n.isValue(e)&&e.toString?e.toString():""}}}),e.namespace("DataType"),e.DataType.XML=e.XML},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-xml-format/datatype-xml-format.js b/lib/yuilib/3.12.0/datatype-xml-format/datatype-xml-format.js old mode 100644 new mode 100755 similarity index 87% rename from lib/yuilib/3.9.1/build/datatype-xml-format/datatype-xml-format.js rename to lib/yuilib/3.12.0/datatype-xml-format/datatype-xml-format.js index 95771e172d4..3a803ba219c --- a/lib/yuilib/3.9.1/build/datatype-xml-format/datatype-xml-format.js +++ b/lib/yuilib/3.12.0/datatype-xml-format/datatype-xml-format.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-xml-format', function (Y, NAME) { /** @@ -50,4 +56,4 @@ Y.namespace("DataType"); Y.DataType.XML = Y.XML; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/datatype-xml-parse/datatype-xml-parse-debug.js b/lib/yuilib/3.12.0/datatype-xml-parse/datatype-xml-parse-debug.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/datatype-xml-parse/datatype-xml-parse-debug.js rename to lib/yuilib/3.12.0/datatype-xml-parse/datatype-xml-parse-debug.js index 5d7a750bd22..3e407c778d5 --- a/lib/yuilib/3.9.1/build/datatype-xml-parse/datatype-xml-parse-debug.js +++ b/lib/yuilib/3.12.0/datatype-xml-parse/datatype-xml-parse-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-xml-parse', function (Y, NAME) { /** @@ -60,4 +66,4 @@ Y.namespace("DataType"); Y.DataType.XML = Y.XML; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/datatype-xml-parse/datatype-xml-parse-min.js b/lib/yuilib/3.12.0/datatype-xml-parse/datatype-xml-parse-min.js old mode 100644 new mode 100755 similarity index 76% rename from lib/yuilib/3.9.1/build/datatype-xml-parse/datatype-xml-parse-min.js rename to lib/yuilib/3.12.0/datatype-xml-parse/datatype-xml-parse-min.js index 835d50b9a7b..c61f114f7c8 --- a/lib/yuilib/3.9.1/build/datatype-xml-parse/datatype-xml-parse-min.js +++ b/lib/yuilib/3.12.0/datatype-xml-parse/datatype-xml-parse-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("datatype-xml-parse",function(e,t){var n=e.Lang;e.mix(e.namespace("XML"),{parse:function(e){var t=null;if(n.isString(e))try{n.isUndefined(ActiveXObject)||(t=new ActiveXObject("Microsoft.XMLDOM"),t.async=!1,t.loadXML(e))}catch(r){try{n.isUndefined(DOMParser)||(t=(new DOMParser).parseFromString(e,"text/xml")),n.isUndefined(Windows.Data.Xml.Dom)||(t=new Windows.Data.Xml.Dom.XmlDocument,t.loadXml(e))}catch(i){}}return n.isNull(t)||n.isNull(t.documentElement)||t.documentElement.nodeName==="parsererror",t}}),e.namespace("Parsers").xml=e.XML.parse,e.namespace("DataType"),e.DataType.XML=e.XML},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("datatype-xml-parse",function(e,t){var n=e.Lang;e.mix(e.namespace("XML"),{parse:function(e){var t=null;if(n.isString(e))try{n.isUndefined(ActiveXObject)||(t=new ActiveXObject("Microsoft.XMLDOM"),t.async=!1,t.loadXML(e))}catch(r){try{n.isUndefined(DOMParser)||(t=(new DOMParser).parseFromString(e,"text/xml")),n.isUndefined(Windows.Data.Xml.Dom)||(t=new Windows.Data.Xml.Dom.XmlDocument,t.loadXml(e))}catch(i){}}return n.isNull(t)||n.isNull(t.documentElement)||t.documentElement.nodeName==="parsererror",t}}),e.namespace("Parsers").xml=e.XML.parse,e.namespace("DataType"),e.DataType.XML=e.XML},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/datatype-xml-parse/datatype-xml-parse.js b/lib/yuilib/3.12.0/datatype-xml-parse/datatype-xml-parse.js old mode 100644 new mode 100755 similarity index 90% rename from lib/yuilib/3.9.1/build/datatype-xml-parse/datatype-xml-parse.js rename to lib/yuilib/3.12.0/datatype-xml-parse/datatype-xml-parse.js index d1a5b480f01..b0fcb853e8a --- a/lib/yuilib/3.9.1/build/datatype-xml-parse/datatype-xml-parse.js +++ b/lib/yuilib/3.12.0/datatype-xml-parse/datatype-xml-parse.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('datatype-xml-parse', function (Y, NAME) { /** @@ -58,4 +64,4 @@ Y.namespace("DataType"); Y.DataType.XML = Y.XML; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/dd-constrain/dd-constrain-debug.js b/lib/yuilib/3.12.0/dd-constrain/dd-constrain-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/dd-constrain/dd-constrain-debug.js rename to lib/yuilib/3.12.0/dd-constrain/dd-constrain-debug.js index bb5c7cc637e..1ce2dc9b745 --- a/lib/yuilib/3.9.1/build/dd-constrain/dd-constrain-debug.js +++ b/lib/yuilib/3.12.0/dd-constrain/dd-constrain-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-constrain', function (Y, NAME) { @@ -560,4 +566,4 @@ YUI.add('dd-constrain', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag"]}); +}, '3.12.0', {"requires": ["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-constrain/dd-constrain-min.js b/lib/yuilib/3.12.0/dd-constrain/dd-constrain-min.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/dd-constrain/dd-constrain-min.js rename to lib/yuilib/3.12.0/dd-constrain/dd-constrain-min.js index f18a05a62ef..c50d0ca310e --- a/lib/yuilib/3.9.1/build/dd-constrain/dd-constrain-min.js +++ b/lib/yuilib/3.12.0/dd-constrain/dd-constrain-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dd-constrain",function(e,t){var n="dragNode",r="offsetHeight",i="offsetWidth",s="host",o="tickXArray",u="tickYArray",a=e.DD.DDM,f="top",l="right",c="bottom",h="left",p="view",d=null,v="drag:tickAlignX",m="drag:tickAlignY",g=function(){this._lazyAddAttrs=!1,g.superclass.constructor.apply(this,arguments)};g.NAME="ddConstrained",g.NS="con",g.ATTRS={host:{},stickX:{value:!1},stickY:{value:!1},tickX:{value:!1},tickY:{value:!1},tickXArray:{value:!1},tickYArray:{value:!1},gutter:{value:"0",setter:function(t){return e.DD.DDM.cssSizestoObject(t)}},constrain:{value:p,setter:function(t){var n=e.one(t);return n&&(t=n),t}},constrain2region:{setter:function(e){return this.set("constrain",e)}},constrain2node:{setter:function(t){return this.set("constrain",e.one(t))}},constrain2view:{setter:function(){return this.set("constrain",p)}},cacheRegion:{value:!0}},d={_lastTickXFired:null,_lastTickYFired:null,initializer:function(){this._createEvents(),this._eventHandles=[this.get(s).on("drag:end",e.bind(this._handleEnd,this)),this.get(s).on("drag:start",e.bind(this._handleStart,this)),this.get(s).after("drag:align",e.bind(this.align,this)),this.get(s).after("drag:drag",e.bind(this.drag,this))]},destructor:function(){e.Array.each(this._eventHandles,function(e){e.detach()}),this._eventHandles.length=0},_createEvents:function(){var t=[v,m];e.Array.each(t,function(e){this.publish(e,{type:e,emitFacade:!0,bubbles:!0,queuable:!1,prefix:"drag"})},this)},_handleEnd:function(){this._lastTickYFired=null,this._lastTickXFired=null},_handleStart:function(){this.resetCache()},_regionCache:null,_cacheRegion:function(){this._regionCache=this.get("constrain").get("region")},resetCache:function(){this._regionCache=null},_getConstraint:function(){var t=this.get("constrain"),r=this.get("gutter"),i;t&&(t instanceof e.Node?(this._regionCache||(this._eventHandles.push(e.on("resize",e.bind(this._cacheRegion,this),e.config.win)),this._cacheRegion()),i=e.clone(this._regionCache),this.get("cacheRegion")||this.resetCache()):e.Lang.isObject(t)&&(i=e.clone(t)));if(!t||!i)t=p;return t===p&&(i=this.get(s).get(n).get("viewportRegion")),e.Object.each(r,function(e,t){t===l||t===c?i[t]-=e:i[t]+=e}),i},getRegion:function(e){var t={},o=null,u=null,a=this.get(s);return t=this._getConstraint(),e&&(o=a.get(n).get(r),u=a.get(n).get(i),t[l]=t[l]-u,t[c]=t[c]-o),t},_checkRegion:function(e){var t=e,o=this.getRegion(),u=this.get(s),a=u.get(n).get(r),p=u.get(n).get(i);return t[1]>o[c]-a&&(e[1]=o[c]-a),o[f]>t[1]&&(e[1]=o[f]),t[0]>o[l]-p&&(e[0]=o[l]-p),o[h]>t[0]&&(e[0]=o[h]),e},inRegion:function(e){e=e||this.get(s).get(n).getXY();var t=this._checkRegion([e[0],e[1]]),r=!1;return e[0]===t[0]&&e[1]===t[1]&&(r=!0),r},align:function(){var e=this.get(s),t=[e.actXY[0],e.actXY[1]],n=this.getRegion(!0);this.get("stickX")&&(t[1]=e.startXY[1]-e.deltaXY[1]),this.get("stickY")&&(t[0]=e.startXY[0]-e.deltaXY[0]),n&&(t=this._checkRegion(t)),t=this._checkTicks(t,n),e.actXY=t},drag:function(){var t=this.get(s),n=this.get("tickX"),r=this.get("tickY"),i=[t.actXY[0],t.actXY[1]];(e.Lang.isNumber(n)||this.get(o))&&this._lastTickXFired!==i[0]&&(this._tickAlignX(),this._lastTickXFired=i[0]),(e.Lang.isNumber(r)||this.get(u))&&this._lastTickYFired!==i[1]&&(this._tickAlignY(),this._lastTickYFired=i[1])},_checkTicks:function(e,t){var n=this.get(s),r=n.startXY[0]-n.deltaXY[0],i=n.startXY[1]-n.deltaXY[1],p=this.get("tickX"),d=this.get("tickY");return p&&!this.get(o)&&(e[0]=a._calcTicks(e[0],r,p,t[h],t[l])),d&&!this.get(u)&&(e[1]=a._calcTicks(e[1],i,d,t[f],t[c])),this.get(o)&&(e[0]=a._calcTickArray(e[0],this.get(o),t[h],t[l])),this.get(u)&&(e[1]=a._calcTickArray(e[1],this.get(u),t[f],t[c])),e},_tickAlignX:function(){this.fire(v)},_tickAlignY:function(){this.fire(m)}},e.namespace("Plugin"),e.extend(g,e.Base,d),e.Plugin.DDConstrained=g,e.mix(a,{_calcTicks:function(e,t,n,r,i){var s=(e-t)/n,o=Math.floor(s),u=Math.ceil(s);return(o!==0||u!==0)&&s>=o&&s<=u&&(e=t+n*o,r&&i&&(ei&&(e=t+n*(o-1)))),e},_calcTickArray:function(e,t,n,r){var i=0,s=t.length,o=0,u,a,f;if(!t||t.length===0)return e;if(t[0]>=e)return t[0];for(i=0;i=e)return u=e-t[i],a=t[o]-e,f=a>u?t[i]:t[o],n&&r&&f>r&&(t[i]?f=t[i]:f=t[s-1]),f}return t[t.length-1]}})},"3.9.1",{requires:["dd-drag"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-constrain",function(e,t){var n="dragNode",r="offsetHeight",i="offsetWidth",s="host",o="tickXArray",u="tickYArray",a=e.DD.DDM,f="top",l="right",c="bottom",h="left",p="view",d=null,v="drag:tickAlignX",m="drag:tickAlignY",g=function(){this._lazyAddAttrs=!1,g.superclass.constructor.apply(this,arguments)};g.NAME="ddConstrained",g.NS="con",g.ATTRS={host:{},stickX:{value:!1},stickY:{value:!1},tickX:{value:!1},tickY:{value:!1},tickXArray:{value:!1},tickYArray:{value:!1},gutter:{value:"0",setter:function(t){return e.DD.DDM.cssSizestoObject(t)}},constrain:{value:p,setter:function(t){var n=e.one(t);return n&&(t=n),t}},constrain2region:{setter:function(e){return this.set("constrain",e)}},constrain2node:{setter:function(t){return this.set("constrain",e.one(t))}},constrain2view:{setter:function(){return this.set("constrain",p)}},cacheRegion:{value:!0}},d={_lastTickXFired:null,_lastTickYFired:null,initializer:function(){this._createEvents(),this._eventHandles=[this.get(s).on("drag:end",e.bind(this._handleEnd,this)),this.get(s).on("drag:start",e.bind(this._handleStart,this)),this.get(s).after("drag:align",e.bind(this.align,this)),this.get(s).after("drag:drag",e.bind(this.drag,this))]},destructor:function(){e.Array.each(this._eventHandles,function(e){e.detach()}),this._eventHandles.length=0},_createEvents:function(){var t=[v,m];e.Array.each(t,function(e){this.publish(e,{type:e,emitFacade:!0,bubbles:!0,queuable:!1,prefix:"drag"})},this)},_handleEnd:function(){this._lastTickYFired=null,this._lastTickXFired=null},_handleStart:function(){this.resetCache()},_regionCache:null,_cacheRegion:function(){this._regionCache=this.get("constrain").get("region")},resetCache:function(){this._regionCache=null},_getConstraint:function(){var t=this.get("constrain"),r=this.get("gutter"),i;t&&(t instanceof e.Node?(this._regionCache||(this._eventHandles.push(e.on("resize",e.bind(this._cacheRegion,this),e.config.win)),this._cacheRegion()),i=e.clone(this._regionCache),this.get("cacheRegion")||this.resetCache()):e.Lang.isObject(t)&&(i=e.clone(t)));if(!t||!i)t=p;return t===p&&(i=this.get(s).get(n).get("viewportRegion")),e.Object.each(r,function(e,t){t===l||t===c?i[t]-=e:i[t]+=e}),i},getRegion:function(e){var t={},o=null,u=null,a=this.get(s);return t=this._getConstraint(),e&&(o=a.get(n).get(r),u=a.get(n).get(i),t[l]=t[l]-u,t[c]=t[c]-o),t},_checkRegion:function(e){var t=e,o=this.getRegion(),u=this.get(s),a=u.get(n).get(r),p=u.get(n).get(i);return t[1]>o[c]-a&&(e[1]=o[c]-a),o[f]>t[1]&&(e[1]=o[f]),t[0]>o[l]-p&&(e[0]=o[l]-p),o[h]>t[0]&&(e[0]=o[h]),e},inRegion:function(e){e=e||this.get(s).get(n).getXY();var t=this._checkRegion([e[0],e[1]]),r=!1;return e[0]===t[0]&&e[1]===t[1]&&(r=!0),r},align:function(){var e=this.get(s),t=[e.actXY[0],e.actXY[1]],n=this.getRegion(!0);this.get("stickX")&&(t[1]=e.startXY[1]-e.deltaXY[1]),this.get("stickY")&&(t[0]=e.startXY[0]-e.deltaXY[0]),n&&(t=this._checkRegion(t)),t=this._checkTicks(t,n),e.actXY=t},drag:function(){var t=this.get(s),n=this.get("tickX"),r=this.get("tickY"),i=[t.actXY[0],t.actXY[1]];(e.Lang.isNumber(n)||this.get(o))&&this._lastTickXFired!==i[0]&&(this._tickAlignX(),this._lastTickXFired=i[0]),(e.Lang.isNumber(r)||this.get(u))&&this._lastTickYFired!==i[1]&&(this._tickAlignY(),this._lastTickYFired=i[1])},_checkTicks:function(e,t){var n=this.get(s),r=n.startXY[0]-n.deltaXY[0],i=n.startXY[1]-n.deltaXY[1],p=this.get("tickX"),d=this.get("tickY");return p&&!this.get(o)&&(e[0]=a._calcTicks(e[0],r,p,t[h],t[l])),d&&!this.get(u)&&(e[1]=a._calcTicks(e[1],i,d,t[f],t[c])),this.get(o)&&(e[0]=a._calcTickArray(e[0],this.get(o),t[h],t[l])),this.get(u)&&(e[1]=a._calcTickArray(e[1],this.get(u),t[f],t[c])),e},_tickAlignX:function(){this.fire(v)},_tickAlignY:function(){this.fire(m)}},e.namespace("Plugin"),e.extend(g,e.Base,d),e.Plugin.DDConstrained=g,e.mix(a,{_calcTicks:function(e,t,n,r,i){var s=(e-t)/n,o=Math.floor(s),u=Math.ceil(s);return(o!==0||u!==0)&&s>=o&&s<=u&&(e=t+n*o,r&&i&&(ei&&(e=t+n*(o-1)))),e},_calcTickArray:function(e,t,n,r){var i=0,s=t.length,o=0,u,a,f;if(!t||t.length===0)return e;if(t[0]>=e)return t[0];for(i=0;i=e)return u=e-t[i],a=t[o]-e,f=a>u?t[i]:t[o],n&&r&&f>r&&(t[i]?f=t[i]:f=t[s-1]),f}return t[t.length-1]}})},"3.12.0",{requires:["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-constrain/dd-constrain.js b/lib/yuilib/3.12.0/dd-constrain/dd-constrain.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/dd-constrain/dd-constrain.js rename to lib/yuilib/3.12.0/dd-constrain/dd-constrain.js index bb5c7cc637e..1ce2dc9b745 --- a/lib/yuilib/3.9.1/build/dd-constrain/dd-constrain.js +++ b/lib/yuilib/3.12.0/dd-constrain/dd-constrain.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-constrain', function (Y, NAME) { @@ -560,4 +566,4 @@ YUI.add('dd-constrain', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag"]}); +}, '3.12.0', {"requires": ["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-ddm-base/dd-ddm-base-debug.js b/lib/yuilib/3.12.0/dd-ddm-base/dd-ddm-base-debug.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/dd-ddm-base/dd-ddm-base-debug.js rename to lib/yuilib/3.12.0/dd-ddm-base/dd-ddm-base-debug.js index 44309c1aad6..b07cea9c184 --- a/lib/yuilib/3.9.1/build/dd-ddm-base/dd-ddm-base-debug.js +++ b/lib/yuilib/3.12.0/dd-ddm-base/dd-ddm-base-debug.js @@ -1,14 +1,20 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-ddm-base', function (Y, NAME) { /** - * Provides the base Drag Drop Manger required for making a Node draggable. + * Provides the base Drag Drop Manager required for making a Node draggable. * @module dd * @submodule dd-ddm-base */ /** - * Provides the base Drag Drop Manger required for making a Node draggable. + * Provides the base Drag Drop Manager required for making a Node draggable. * @class DDM * @extends Base * @constructor @@ -373,4 +379,4 @@ YUI.add('dd-ddm-base', function (Y, NAME) { -}, '3.9.1', {"requires": ["node", "base", "yui-throttle", "classnamemanager"]}); +}, '3.12.0', {"requires": ["node", "base", "yui-throttle", "classnamemanager"]}); diff --git a/lib/yuilib/3.9.1/build/dd-ddm-base/dd-ddm-base-min.js b/lib/yuilib/3.12.0/dd-ddm-base/dd-ddm-base-min.js old mode 100644 new mode 100755 similarity index 90% rename from lib/yuilib/3.9.1/build/dd-ddm-base/dd-ddm-base-min.js rename to lib/yuilib/3.12.0/dd-ddm-base/dd-ddm-base-min.js index 560c7a5f4f1..15ed556a458 --- a/lib/yuilib/3.9.1/build/dd-ddm-base/dd-ddm-base-min.js +++ b/lib/yuilib/3.12.0/dd-ddm-base/dd-ddm-base-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dd-ddm-base",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};n.NAME="ddm",n.ATTRS={dragCursor:{value:"move"},clickPixelThresh:{value:3},clickTimeThresh:{value:1e3},throttleTime:{value:-1},dragMode:{value:"point",setter:function(e){return this._setDragMode(e),e}}},e.extend(n,e.Base,{_createPG:function(){},_active:null,_setDragMode:function(t){t===null&&(t=e.DD.DDM.get("dragMode"));switch(t){case 1:case"intersect":return 1;case 2:case"strict":return 2;case 0:case"point":return 0}return 0},CSS_PREFIX:e.ClassNameManager.getClassName("dd"),_activateTargets:function(){},_drags:[],activeDrag:!1,_regDrag:function(e){return this.getDrag(e.get("node"))?!1:(this._active||this._setupListeners(),this._drags.push(e),!0)},_unregDrag:function(t){var n=[];e.Array.each(this._drags,function(e){e!==t&&(n[n.length]=e)}),this._drags=n},_setupListeners:function(){this._createPG(),this._active=!0;var t=e.one(e.config.doc);t.on("mousemove",e.throttle(e.bind(this._docMove,this),this.get("throttleTime"))),t.on("mouseup",e.bind(this._end,this))},_start:function(){this.fire("ddm:start"),this._startDrag()},_startDrag:function(){},_endDrag:function(){},_dropMove:function(){},_end:function(){this.activeDrag&&(this._shimming=!1,this._endDrag(),this.fire("ddm:end"),this.activeDrag.end.call(this.activeDrag),this.activeDrag=null)},stopDrag:function(){return this.activeDrag&&this._end(),this},_shimming:!1,_docMove:function(e){this._shimming||this._move(e)},_move:function(e){this.activeDrag&&(this.activeDrag._move.call(this.activeDrag,e),this._dropMove())},cssSizestoObject:function(e){var t=e.split(" ");switch(t.length){case 1:t[1]=t[2]=t[3]=t[0];break;case 2:t[2]=t[0],t[3]=t[1];break;case 3:t[3]=t[1]}return{top:parseInt(t[0],10),right:parseInt(t[1],10),bottom:parseInt(t[2],10),left:parseInt(t[3],10)}},getDrag:function(t){var n=!1,r=e.one(t);return r instanceof e.Node&&e.Array.each(this._drags,function(e){r.compareTo(e.get("node"))&&(n=e)}),n},swapPosition:function(t,n){t=e.DD.DDM.getNode(t),n=e.DD.DDM.getNode(n);var r=t.getXY(),i=n.getXY();return t.setXY(i),n.setXY(r),t},getNode:function(t){return t instanceof e.Node?t:(t&&t.get?e.Widget&&t instanceof e.Widget?t=t.get("boundingBox"):t=t.get("node"):t=e.one(t),t)},swapNode:function(t,n){t=e.DD.DDM.getNode(t),n=e.DD.DDM.getNode(n);var r=n.get("parentNode"),i=n.get("nextSibling");return i===t?r.insertBefore(t,n):n===t.get("nextSibling")?r.insertBefore(n,t):(t.get("parentNode").replaceChild(n,t),r.insertBefore(t,i)),t}}),e.namespace("DD"),e.DD.DDM=new n},"3.9.1",{requires:["node","base","yui-throttle","classnamemanager"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-ddm-base",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};n.NAME="ddm",n.ATTRS={dragCursor:{value:"move"},clickPixelThresh:{value:3},clickTimeThresh:{value:1e3},throttleTime:{value:-1},dragMode:{value:"point",setter:function(e){return this._setDragMode(e),e}}},e.extend(n,e.Base,{_createPG:function(){},_active:null,_setDragMode:function(t){t===null&&(t=e.DD.DDM.get("dragMode"));switch(t){case 1:case"intersect":return 1;case 2:case"strict":return 2;case 0:case"point":return 0}return 0},CSS_PREFIX:e.ClassNameManager.getClassName("dd"),_activateTargets:function(){},_drags:[],activeDrag:!1,_regDrag:function(e){return this.getDrag(e.get("node"))?!1:(this._active||this._setupListeners(),this._drags.push(e),!0)},_unregDrag:function(t){var n=[];e.Array.each(this._drags,function(e){e!==t&&(n[n.length]=e)}),this._drags=n},_setupListeners:function(){this._createPG(),this._active=!0;var t=e.one(e.config.doc);t.on("mousemove",e.throttle(e.bind(this._docMove,this),this.get("throttleTime"))),t.on("mouseup",e.bind(this._end,this))},_start:function(){this.fire("ddm:start"),this._startDrag()},_startDrag:function(){},_endDrag:function(){},_dropMove:function(){},_end:function(){this.activeDrag&&(this._shimming=!1,this._endDrag(),this.fire("ddm:end"),this.activeDrag.end.call(this.activeDrag),this.activeDrag=null)},stopDrag:function(){return this.activeDrag&&this._end(),this},_shimming:!1,_docMove:function(e){this._shimming||this._move(e)},_move:function(e){this.activeDrag&&(this.activeDrag._move.call(this.activeDrag,e),this._dropMove())},cssSizestoObject:function(e){var t=e.split(" ");switch(t.length){case 1:t[1]=t[2]=t[3]=t[0];break;case 2:t[2]=t[0],t[3]=t[1];break;case 3:t[3]=t[1]}return{top:parseInt(t[0],10),right:parseInt(t[1],10),bottom:parseInt(t[2],10),left:parseInt(t[3],10)}},getDrag:function(t){var n=!1,r=e.one(t);return r instanceof e.Node&&e.Array.each(this._drags,function(e){r.compareTo(e.get("node"))&&(n=e)}),n},swapPosition:function(t,n){t=e.DD.DDM.getNode(t),n=e.DD.DDM.getNode(n);var r=t.getXY(),i=n.getXY();return t.setXY(i),n.setXY(r),t},getNode:function(t){return t instanceof e.Node?t:(t&&t.get?e.Widget&&t instanceof e.Widget?t=t.get("boundingBox"):t=t.get("node"):t=e.one(t),t)},swapNode:function(t,n){t=e.DD.DDM.getNode(t),n=e.DD.DDM.getNode(n);var r=n.get("parentNode"),i=n.get("nextSibling");return i===t?r.insertBefore(t,n):n===t.get("nextSibling")?r.insertBefore(n,t):(t.get("parentNode").replaceChild(n,t),r.insertBefore(t,i)),t}}),e.namespace("DD"),e.DD.DDM=new n},"3.12.0",{requires:["node","base","yui-throttle","classnamemanager"]}); diff --git a/lib/yuilib/3.9.1/build/dd-ddm-base/dd-ddm-base.js b/lib/yuilib/3.12.0/dd-ddm-base/dd-ddm-base.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/dd-ddm-base/dd-ddm-base.js rename to lib/yuilib/3.12.0/dd-ddm-base/dd-ddm-base.js index 44309c1aad6..b07cea9c184 --- a/lib/yuilib/3.9.1/build/dd-ddm-base/dd-ddm-base.js +++ b/lib/yuilib/3.12.0/dd-ddm-base/dd-ddm-base.js @@ -1,14 +1,20 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-ddm-base', function (Y, NAME) { /** - * Provides the base Drag Drop Manger required for making a Node draggable. + * Provides the base Drag Drop Manager required for making a Node draggable. * @module dd * @submodule dd-ddm-base */ /** - * Provides the base Drag Drop Manger required for making a Node draggable. + * Provides the base Drag Drop Manager required for making a Node draggable. * @class DDM * @extends Base * @constructor @@ -373,4 +379,4 @@ YUI.add('dd-ddm-base', function (Y, NAME) { -}, '3.9.1', {"requires": ["node", "base", "yui-throttle", "classnamemanager"]}); +}, '3.12.0', {"requires": ["node", "base", "yui-throttle", "classnamemanager"]}); diff --git a/lib/yuilib/3.9.1/build/dd-ddm-drop/dd-ddm-drop-debug.js b/lib/yuilib/3.12.0/dd-ddm-drop/dd-ddm-drop-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/dd-ddm-drop/dd-ddm-drop-debug.js rename to lib/yuilib/3.12.0/dd-ddm-drop/dd-ddm-drop-debug.js index 1dc495bb71e..2223b47472b --- a/lib/yuilib/3.9.1/build/dd-ddm-drop/dd-ddm-drop-debug.js +++ b/lib/yuilib/3.12.0/dd-ddm-drop/dd-ddm-drop-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-ddm-drop', function (Y, NAME) { @@ -399,4 +405,4 @@ YUI.add('dd-ddm-drop', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-ddm"]}); +}, '3.12.0', {"requires": ["dd-ddm"]}); diff --git a/lib/yuilib/3.9.1/build/dd-ddm-drop/dd-ddm-drop-min.js b/lib/yuilib/3.12.0/dd-ddm-drop/dd-ddm-drop-min.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/dd-ddm-drop/dd-ddm-drop-min.js rename to lib/yuilib/3.12.0/dd-ddm-drop/dd-ddm-drop-min.js index 04fe585c27e..4d95e0403c5 --- a/lib/yuilib/3.9.1/build/dd-ddm-drop/dd-ddm-drop-min.js +++ b/lib/yuilib/3.12.0/dd-ddm-drop/dd-ddm-drop-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dd-ddm-drop",function(e,t){e.mix(e.DD.DDM,{_noShim:!1,_activeShims:[],_hasActiveShim:function(){return this._noShim?!0:this._activeShims.length},_addActiveShim:function(e){this._activeShims.push(e)},_removeActiveShim:function(t){var n=[];e.Array.each(this._activeShims,function(e){e._yuid!==t._yuid&&n.push(e)}),this._activeShims=n},syncActiveShims:function(t){e.later(0,this,function(t){var n=t?this.targets:this._lookup();e.Array.each(n,function(e){e.sizeShim.call(e)},this)},t)},mode:0,POINT:0,INTERSECT:1,STRICT:2,useHash:!0,activeDrop:null,validDrops:[],otherDrops:{},targets:[],_addValid:function(e){return this.validDrops.push(e),this},_removeValid:function(t){var n=[];return e.Array.each(this.validDrops,function(e){e!==t&&n.push(e)}),this.validDrops=n,this},isOverTarget:function(e){if(this.activeDrag&&e){var t=this.activeDrag.mouseXY,n,r=this.activeDrag.get("dragMode"),i,s=e.shim;if(t&&this.activeDrag){i=this.activeDrag.region;if(r===this.STRICT)return this.activeDrag.get("dragNode").inRegion(e.region,!0,i);if(e&&e.shim)return r===this.INTERSECT&&this._noShim?(n=i||this.activeDrag.get("node"),e.get("node").intersect(n,e.region).inRegion):(this._noShim&&(s=e.get("node")),s.intersect({top:t[1],bottom:t[1],left:t[0],right:t[0]},e.region).inRegion)}}return!1},clearCache:function(){this.validDrops=[],this.otherDrops={},this._activeShims=[]},_activateTargets:function(){this._noShim=!0,this.clearCache(),e.Array.each(this.targets,function(e){e._activateShim([]),e.get("noShim")===!0&&(this._noShim=!1)},this),this._handleTargetOver()},getBestMatch:function(t,n){var r=null,i=0,s;return e.Array.each(t,function(e){var t=this.activeDrag.get("dragNode").intersect(e.get("node"));e.region.area=t.area,t.inRegion&&t.area>i&&(i=t.area,r=e)},this),n?(s=[],e.Array.each(t,function(e){e!==r&&s.push(e)},this),[r,s]):r},_deactivateTargets:function(){var t=[],n,r=this.activeDrag,i=this.activeDrop;r&&i&&this.otherDrops[i]?(r.get("dragMode")?(n=this.getBestMatch(this.otherDrops,!0),i=n[0],t=n[1]):(t=this.otherDrops,delete t[i]),r.get("node").removeClass(this.CSS_PREFIX+"-drag-over"),i&&(i.fire("drop:hit",{drag:r,drop:i,others:t}),r.fire("drag:drophit",{drag:r,drop:i,others:t}))):r&&r.get("dragging")&&(r.get("node").removeClass(this.CSS_PREFIX+"-drag-over"),r.fire("drag:dropmiss",{pageX:r.lastXY[0],pageY:r.lastXY[1]})),this.activeDrop=null,e.Array.each(this.targets,function(e){e._deactivateShim([])},this)},_dropMove:function(){this._hasActiveShim()?this._handleTargetOver():e.Array.each(this.otherDrops,function(e){e._handleOut.apply(e,[])})},_lookup:function(){if(!this.useHash||this._noShim)return this.validDrops;var t=[];return e.Array.each(this.validDrops,function(e){e.shim&&e.shim.inViewportRegion(!1,e.region)&&t.push(e)}),t},_handleTargetOver:function(){var t=this._lookup();e.Array.each(t,function(e){e._handleTargetOver.call(e)},this)},_regTarget:function(e){this.targets.push(e)},_unregTarget:function(t){var n=[],r;e.Array.each(this.targets,function(e){e!==t&&n.push(e)},this),this.targets=n,r=[],e.Array.each(this.validDrops,function(e){e!==t&&r.push(e)}),this.validDrops=r},getDrop:function(t){var n=!1,r=e.one(t);return r instanceof e.Node&&e.Array.each(this.targets,function(e){r.compareTo(e.get("node"))&&(n=e)}),n}},!0)},"3.9.1",{requires:["dd-ddm"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-ddm-drop",function(e,t){e.mix(e.DD.DDM,{_noShim:!1,_activeShims:[],_hasActiveShim:function(){return this._noShim?!0:this._activeShims.length},_addActiveShim:function(e){this._activeShims.push(e)},_removeActiveShim:function(t){var n=[];e.Array.each(this._activeShims,function(e){e._yuid!==t._yuid&&n.push(e)}),this._activeShims=n},syncActiveShims:function(t){e.later(0,this,function(t){var n=t?this.targets:this._lookup();e.Array.each(n,function(e){e.sizeShim.call(e)},this)},t)},mode:0,POINT:0,INTERSECT:1,STRICT:2,useHash:!0,activeDrop:null,validDrops:[],otherDrops:{},targets:[],_addValid:function(e){return this.validDrops.push(e),this},_removeValid:function(t){var n=[];return e.Array.each(this.validDrops,function(e){e!==t&&n.push(e)}),this.validDrops=n,this},isOverTarget:function(e){if(this.activeDrag&&e){var t=this.activeDrag.mouseXY,n,r=this.activeDrag.get("dragMode"),i,s=e.shim;if(t&&this.activeDrag){i=this.activeDrag.region;if(r===this.STRICT)return this.activeDrag.get("dragNode").inRegion(e.region,!0,i);if(e&&e.shim)return r===this.INTERSECT&&this._noShim?(n=i||this.activeDrag.get("node"),e.get("node").intersect(n,e.region).inRegion):(this._noShim&&(s=e.get("node")),s.intersect({top:t[1],bottom:t[1],left:t[0],right:t[0]},e.region).inRegion)}}return!1},clearCache:function(){this.validDrops=[],this.otherDrops={},this._activeShims=[]},_activateTargets:function(){this._noShim=!0,this.clearCache(),e.Array.each(this.targets,function(e){e._activateShim([]),e.get("noShim")===!0&&(this._noShim=!1)},this),this._handleTargetOver()},getBestMatch:function(t,n){var r=null,i=0,s;return e.Array.each(t,function(e){var t=this.activeDrag.get("dragNode").intersect(e.get("node"));e.region.area=t.area,t.inRegion&&t.area>i&&(i=t.area,r=e)},this),n?(s=[],e.Array.each(t,function(e){e!==r&&s.push(e)},this),[r,s]):r},_deactivateTargets:function(){var t=[],n,r=this.activeDrag,i=this.activeDrop;r&&i&&this.otherDrops[i]?(r.get("dragMode")?(n=this.getBestMatch(this.otherDrops,!0),i=n[0],t=n[1]):(t=this.otherDrops,delete t[i]),r.get("node").removeClass(this.CSS_PREFIX+"-drag-over"),i&&(i.fire("drop:hit",{drag:r,drop:i,others:t}),r.fire("drag:drophit",{drag:r,drop:i,others:t}))):r&&r.get("dragging")&&(r.get("node").removeClass(this.CSS_PREFIX+"-drag-over"),r.fire("drag:dropmiss",{pageX:r.lastXY[0],pageY:r.lastXY[1]})),this.activeDrop=null,e.Array.each(this.targets,function(e){e._deactivateShim([])},this)},_dropMove:function(){this._hasActiveShim()?this._handleTargetOver():e.Array.each(this.otherDrops,function(e){e._handleOut.apply(e,[])})},_lookup:function(){if(!this.useHash||this._noShim)return this.validDrops;var t=[];return e.Array.each(this.validDrops,function(e){e.shim&&e.shim.inViewportRegion(!1,e.region)&&t.push(e)}),t},_handleTargetOver:function(){var t=this._lookup();e.Array.each(t,function(e){e._handleTargetOver.call(e)},this)},_regTarget:function(e){this.targets.push(e)},_unregTarget:function(t){var n=[],r;e.Array.each(this.targets,function(e){e!==t&&n.push(e)},this),this.targets=n,r=[],e.Array.each(this.validDrops,function(e){e!==t&&r.push(e)}),this.validDrops=r},getDrop:function(t){var n=!1,r=e.one(t);return r instanceof e.Node&&e.Array.each(this.targets,function(e){r.compareTo(e.get("node"))&&(n=e)}),n}},!0)},"3.12.0",{requires:["dd-ddm"]}); diff --git a/lib/yuilib/3.9.1/build/dd-ddm-drop/dd-ddm-drop.js b/lib/yuilib/3.12.0/dd-ddm-drop/dd-ddm-drop.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/dd-ddm-drop/dd-ddm-drop.js rename to lib/yuilib/3.12.0/dd-ddm-drop/dd-ddm-drop.js index 1dc495bb71e..2223b47472b --- a/lib/yuilib/3.9.1/build/dd-ddm-drop/dd-ddm-drop.js +++ b/lib/yuilib/3.12.0/dd-ddm-drop/dd-ddm-drop.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-ddm-drop', function (Y, NAME) { @@ -399,4 +405,4 @@ YUI.add('dd-ddm-drop', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-ddm"]}); +}, '3.12.0', {"requires": ["dd-ddm"]}); diff --git a/lib/yuilib/3.9.1/build/dd-ddm/dd-ddm-debug.js b/lib/yuilib/3.12.0/dd-ddm/dd-ddm-debug.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/dd-ddm/dd-ddm-debug.js rename to lib/yuilib/3.12.0/dd-ddm/dd-ddm-debug.js index fad441c0748..41c93aaa6fd --- a/lib/yuilib/3.9.1/build/dd-ddm/dd-ddm-debug.js +++ b/lib/yuilib/3.12.0/dd-ddm/dd-ddm-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-ddm', function (Y, NAME) { @@ -124,4 +130,4 @@ YUI.add('dd-ddm', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-ddm-base", "event-resize"]}); +}, '3.12.0', {"requires": ["dd-ddm-base", "event-resize"]}); diff --git a/lib/yuilib/3.9.1/build/dd-ddm/dd-ddm-min.js b/lib/yuilib/3.12.0/dd-ddm/dd-ddm-min.js old mode 100644 new mode 100755 similarity index 85% rename from lib/yuilib/3.9.1/build/dd-ddm/dd-ddm-min.js rename to lib/yuilib/3.12.0/dd-ddm/dd-ddm-min.js index 64661e56a30..30e92ef2d34 --- a/lib/yuilib/3.9.1/build/dd-ddm/dd-ddm-min.js +++ b/lib/yuilib/3.12.0/dd-ddm/dd-ddm-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dd-ddm",function(e,t){e.mix(e.DD.DDM,{_pg:null,_debugShim:!1,_activateTargets:function(){},_deactivateTargets:function(){},_startDrag:function(){this.activeDrag&&this.activeDrag.get("useShim")&&(this._shimming=!0,this._pg_activate(),this._activateTargets())},_endDrag:function(){this._pg_deactivate(),this._deactivateTargets()},_pg_deactivate:function(){this._pg.setStyle("display","none")},_pg_activate:function(){this._pg||this._createPG();var e=this.activeDrag.get("activeHandle"),t="auto";e&&(t=e.getStyle("cursor")),t==="auto"&&(t=this.get("dragCursor")),this._pg_size(),this._pg.setStyles({top:0,left:0,display:"block",opacity:this._debugShim?".5":"0",cursor:t})},_pg_size:function(){if(this.activeDrag){var t=e.one("body"),n=t.get("docHeight"),r=t.get("docWidth");this._pg.setStyles({height:n+"px",width:r+"px"})}},_createPG:function(){var t=e.Node.create("
    "),n=e.one("body"),r;t.setStyles({top:"0",left:"0",position:"absolute",zIndex:"9999",overflow:"hidden",backgroundColor:"red",display:"none",height:"5px",width:"5px"}),t.set("id",e.stamp(t)),t.addClass(e.DD.DDM.CSS_PREFIX+"-shim"),n.prepend(t),this._pg=t,this._pg.on("mousemove",e.throttle(e.bind(this._move,this),this.get("throttleTime"))),this._pg.on("mouseup",e.bind(this._end,this)),r=e.one("win"),e.on("window:resize",e.bind(this._pg_size,this)),r.on("scroll",e.bind(this._pg_size,this))}},!0)},"3.9.1",{requires:["dd-ddm-base","event-resize"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-ddm",function(e,t){e.mix(e.DD.DDM,{_pg:null,_debugShim:!1,_activateTargets:function(){},_deactivateTargets:function(){},_startDrag:function(){this.activeDrag&&this.activeDrag.get("useShim")&&(this._shimming=!0,this._pg_activate(),this._activateTargets())},_endDrag:function(){this._pg_deactivate(),this._deactivateTargets()},_pg_deactivate:function(){this._pg.setStyle("display","none")},_pg_activate:function(){this._pg||this._createPG();var e=this.activeDrag.get("activeHandle"),t="auto";e&&(t=e.getStyle("cursor")),t==="auto"&&(t=this.get("dragCursor")),this._pg_size(),this._pg.setStyles({top:0,left:0,display:"block",opacity:this._debugShim?".5":"0",cursor:t})},_pg_size:function(){if(this.activeDrag){var t=e.one("body"),n=t.get("docHeight"),r=t.get("docWidth");this._pg.setStyles({height:n+"px",width:r+"px"})}},_createPG:function(){var t=e.Node.create("
    "),n=e.one("body"),r;t.setStyles({top:"0",left:"0",position:"absolute",zIndex:"9999",overflow:"hidden",backgroundColor:"red",display:"none",height:"5px",width:"5px"}),t.set("id",e.stamp(t)),t.addClass(e.DD.DDM.CSS_PREFIX+"-shim"),n.prepend(t),this._pg=t,this._pg.on("mousemove",e.throttle(e.bind(this._move,this),this.get("throttleTime"))),this._pg.on("mouseup",e.bind(this._end,this)),r=e.one("win"),e.on("window:resize",e.bind(this._pg_size,this)),r.on("scroll",e.bind(this._pg_size,this))}},!0)},"3.12.0",{requires:["dd-ddm-base","event-resize"]}); diff --git a/lib/yuilib/3.9.1/build/dd-ddm/dd-ddm.js b/lib/yuilib/3.12.0/dd-ddm/dd-ddm.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/dd-ddm/dd-ddm.js rename to lib/yuilib/3.12.0/dd-ddm/dd-ddm.js index fad441c0748..41c93aaa6fd --- a/lib/yuilib/3.9.1/build/dd-ddm/dd-ddm.js +++ b/lib/yuilib/3.12.0/dd-ddm/dd-ddm.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-ddm', function (Y, NAME) { @@ -124,4 +130,4 @@ YUI.add('dd-ddm', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-ddm-base", "event-resize"]}); +}, '3.12.0', {"requires": ["dd-ddm-base", "event-resize"]}); diff --git a/lib/yuilib/3.9.1/build/dd-delegate/dd-delegate-debug.js b/lib/yuilib/3.12.0/dd-delegate/dd-delegate-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/dd-delegate/dd-delegate-debug.js rename to lib/yuilib/3.12.0/dd-delegate/dd-delegate-debug.js index d9dc7ad0b45..5f1ccd271e6 --- a/lib/yuilib/3.9.1/build/dd-delegate/dd-delegate-debug.js +++ b/lib/yuilib/3.12.0/dd-delegate/dd-delegate-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-delegate', function (Y, NAME) { @@ -336,4 +342,4 @@ YUI.add('dd-delegate', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag", "dd-drop-plugin", "event-mouseenter"]}); +}, '3.12.0', {"requires": ["dd-drag", "dd-drop-plugin", "event-mouseenter"]}); diff --git a/lib/yuilib/3.9.1/build/dd-delegate/dd-delegate-min.js b/lib/yuilib/3.12.0/dd-delegate/dd-delegate-min.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/dd-delegate/dd-delegate-min.js rename to lib/yuilib/3.12.0/dd-delegate/dd-delegate-min.js index c5b9f8925e9..0436a7d3755 --- a/lib/yuilib/3.9.1/build/dd-delegate/dd-delegate-min.js +++ b/lib/yuilib/3.12.0/dd-delegate/dd-delegate-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dd-delegate",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="container",i="nodes",s=e.Node.create("
    Temp Node
    ");e.extend(n,e.Base,{_bubbleTargets:e.DD.DDM,dd:null,_shimState:null,_handles:null,_onNodeChange:function(e){this.set("dragNode",e.newVal)},_afterDragEnd:function(){e.DD.DDM._noShim=this._shimState,this.set("lastNode",this.dd.get("node")),this.get("lastNode").removeClass(e.DD.DDM.CSS_PREFIX+"-dragging"),this.dd._unprep(),this.dd.set("node",s)},_delMouseDown:function(t){var n=t.currentTarget,r=this.dd,s=n,o=this.get("dragConfig");n.test(this.get(i))&&!n.test(this.get("invalid"))&&(this._shimState=e.DD.DDM._noShim,e.DD.DDM._noShim=!0,this.set("currentNode",n),r.set("node",n),o&&o.dragNode?s=o.dragNode:r.proxy&&(s=e.DD.DDM._proxy),r.set("dragNode",s),r._prep(),r.fire("drag:mouseDown",{ev:t}))},_onMouseEnter:function(){this._shimState=e.DD.DDM._noShim,e.DD.DDM._noShim=!0},_onMouseLeave:function(){e.DD.DDM._noShim=this._shimState},initializer:function(){this._handles=[];var t=this.get("dragConfig")||{},n=this.get(r);t.node=s.cloneNode(!0),t.bubbleTargets=this,this.get("handles")&&(t.handles=this.get("handles")),this.dd=new e.DD.Drag(t),this.dd.after("drag:end",e.bind(this._afterDragEnd,this)),this.dd.on("dragNodeChange",e.bind(this._onNodeChange,this)),this.dd.after("drag:mouseup",function(){this._unprep()}),this._handles.push(e.delegate(e.DD.Drag.START_EVENT,e.bind(this._delMouseDown,this),n,this.get(i))),this._handles.push(e.on("mouseenter",e.bind(this._onMouseEnter,this),n)),this._handles.push(e.on("mouseleave",e.bind(this._onMouseLeave,this),n)),e.later(50,this,this.syncTargets),e.DD.DDM.regDelegate(this)},syncTargets:function(){if(!e.Plugin.Drop||this.get("destroyed"))return;var t,n,s;return this.get("target")&&(t=e.one(this.get(r)).all(this.get(i)),n=this.dd.get("groups"),s=this.get("dragConfig"),s&&s.groups&&(n=s.groups),t.each(function(e){this.createDrop(e,n)},this)),this},createDrop:function(t,n){var r={useShim:!1,bubbleTargets:this};return t.drop||t.plug(e.Plugin.Drop,r),t.drop.set("groups",n),t},destructor:function(){this.dd&&this.dd.destroy();if(e.Plugin.Drop){var t=e.one(this.get(r)).all(this.get(i));t.unplug(e.Plugin.Drop)}e.Array.each(this._handles,function(e){e.detach()})}},{NAME:"delegate",ATTRS:{container:{value:"body"},nodes:{value:".dd-draggable"},invalid:{value:"input, select, button, a, textarea"},lastNode:{value:s},currentNode:{value:s},dragNode:{value:s},over:{value:!1},target:{value:!1},dragConfig:{value:null},handles:{value:null}}}),e.mix(e.DD.DDM,{_delegates:[],regDelegate:function(e){this._delegates.push(e)},getDelegate:function(t){var n=null;return t=e.one(t),e.Array.each(this._delegates,function(e){t.test(e.get(r))&&(n=e)},this),n}}),e.namespace("DD"),e.DD.Delegate=n},"3.9.1",{requires:["dd-drag","dd-drop-plugin","event-mouseenter"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-delegate",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="container",i="nodes",s=e.Node.create("
    Temp Node
    ");e.extend(n,e.Base,{_bubbleTargets:e.DD.DDM,dd:null,_shimState:null,_handles:null,_onNodeChange:function(e){this.set("dragNode",e.newVal)},_afterDragEnd:function(){e.DD.DDM._noShim=this._shimState,this.set("lastNode",this.dd.get("node")),this.get("lastNode").removeClass(e.DD.DDM.CSS_PREFIX+"-dragging"),this.dd._unprep(),this.dd.set("node",s)},_delMouseDown:function(t){var n=t.currentTarget,r=this.dd,s=n,o=this.get("dragConfig");n.test(this.get(i))&&!n.test(this.get("invalid"))&&(this._shimState=e.DD.DDM._noShim,e.DD.DDM._noShim=!0,this.set("currentNode",n),r.set("node",n),o&&o.dragNode?s=o.dragNode:r.proxy&&(s=e.DD.DDM._proxy),r.set("dragNode",s),r._prep(),r.fire("drag:mouseDown",{ev:t}))},_onMouseEnter:function(){this._shimState=e.DD.DDM._noShim,e.DD.DDM._noShim=!0},_onMouseLeave:function(){e.DD.DDM._noShim=this._shimState},initializer:function(){this._handles=[];var t=this.get("dragConfig")||{},n=this.get(r);t.node=s.cloneNode(!0),t.bubbleTargets=this,this.get("handles")&&(t.handles=this.get("handles")),this.dd=new e.DD.Drag(t),this.dd.after("drag:end",e.bind(this._afterDragEnd,this)),this.dd.on("dragNodeChange",e.bind(this._onNodeChange,this)),this.dd.after("drag:mouseup",function(){this._unprep()}),this._handles.push(e.delegate(e.DD.Drag.START_EVENT,e.bind(this._delMouseDown,this),n,this.get(i))),this._handles.push(e.on("mouseenter",e.bind(this._onMouseEnter,this),n)),this._handles.push(e.on("mouseleave",e.bind(this._onMouseLeave,this),n)),e.later(50,this,this.syncTargets),e.DD.DDM.regDelegate(this)},syncTargets:function(){if(!e.Plugin.Drop||this.get("destroyed"))return;var t,n,s;return this.get("target")&&(t=e.one(this.get(r)).all(this.get(i)),n=this.dd.get("groups"),s=this.get("dragConfig"),s&&s.groups&&(n=s.groups),t.each(function(e){this.createDrop(e,n)},this)),this},createDrop:function(t,n){var r={useShim:!1,bubbleTargets:this};return t.drop||t.plug(e.Plugin.Drop,r),t.drop.set("groups",n),t},destructor:function(){this.dd&&this.dd.destroy();if(e.Plugin.Drop){var t=e.one(this.get(r)).all(this.get(i));t.unplug(e.Plugin.Drop)}e.Array.each(this._handles,function(e){e.detach()})}},{NAME:"delegate",ATTRS:{container:{value:"body"},nodes:{value:".dd-draggable"},invalid:{value:"input, select, button, a, textarea"},lastNode:{value:s},currentNode:{value:s},dragNode:{value:s},over:{value:!1},target:{value:!1},dragConfig:{value:null},handles:{value:null}}}),e.mix(e.DD.DDM,{_delegates:[],regDelegate:function(e){this._delegates.push(e)},getDelegate:function(t){var n=null;return t=e.one(t),e.Array.each(this._delegates,function(e){t.test(e.get(r))&&(n=e)},this),n}}),e.namespace("DD"),e.DD.Delegate=n},"3.12.0",{requires:["dd-drag","dd-drop-plugin","event-mouseenter"]}); diff --git a/lib/yuilib/3.9.1/build/dd-delegate/dd-delegate.js b/lib/yuilib/3.12.0/dd-delegate/dd-delegate.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/dd-delegate/dd-delegate.js rename to lib/yuilib/3.12.0/dd-delegate/dd-delegate.js index d9dc7ad0b45..5f1ccd271e6 --- a/lib/yuilib/3.9.1/build/dd-delegate/dd-delegate.js +++ b/lib/yuilib/3.12.0/dd-delegate/dd-delegate.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-delegate', function (Y, NAME) { @@ -336,4 +342,4 @@ YUI.add('dd-delegate', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag", "dd-drop-plugin", "event-mouseenter"]}); +}, '3.12.0', {"requires": ["dd-drag", "dd-drop-plugin", "event-mouseenter"]}); diff --git a/lib/yuilib/3.9.1/build/dd-drag/dd-drag-debug.js b/lib/yuilib/3.12.0/dd-drag/dd-drag-debug.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/dd-drag/dd-drag-debug.js rename to lib/yuilib/3.12.0/dd-drag/dd-drag-debug.js index e086ae5cb69..d77213bed1a --- a/lib/yuilib/3.9.1/build/dd-drag/dd-drag-debug.js +++ b/lib/yuilib/3.12.0/dd-drag/dd-drag-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-drag', function (Y, NAME) { @@ -504,7 +510,7 @@ YUI.add('dd-drag', function (Y, NAME) { if (!Y.Lang.isObject(config)) { config = {}; } - config.bubbleTargets = config.bubbleTargets || Y.Object.values(this._yuievt.targets); + config.bubbleTargets = config.bubbleTargets || this.getTargets(); config.node = this.get(NODE); config.groups = config.groups || this.get('groups'); this.target = new Y.DD.Drop(config); @@ -1274,4 +1280,4 @@ YUI.add('dd-drag', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-ddm-base"]}); +}, '3.12.0', {"requires": ["dd-ddm-base"]}); diff --git a/lib/yuilib/3.12.0/dd-drag/dd-drag-min.js b/lib/yuilib/3.12.0/dd-drag/dd-drag-min.js new file mode 100755 index 00000000000..68ede9aa8c4 --- /dev/null +++ b/lib/yuilib/3.12.0/dd-drag/dd-drag-min.js @@ -0,0 +1,9 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-drag",function(e,t){var n=e.DD.DDM,r="node",i="dragging",s="dragNode",o="offsetHeight",u="offsetWidth",a="drag:mouseDown",f="drag:afterMouseDown",l="drag:removeHandle",c="drag:addHandle",h="drag:removeInvalid",p="drag:addInvalid",d="drag:start",v="drag:end",m="drag:drag",g="drag:align",y=function(t){this._lazyAddAttrs=!1,y.superclass.constructor.apply(this,arguments);var r=n._regDrag(this);r||e.error("Failed to register node, already in use: "+t.node)};y.NAME="drag",y.START_EVENT="mousedown",y.ATTRS={node:{setter:function(t){if(this._canDrag(t))return t;var n=e.one(t);return n||e.error("DD.Drag: Invalid Node Given: "+t),n}},dragNode:{setter:function(t){if(this._canDrag(t))return t;var n=e.one(t);return n||e.error("DD.Drag: Invalid dragNode Given: "+t),n}},offsetNode:{value:!0},startCentered:{value:!1},clickPixelThresh:{value:n.get("clickPixelThresh")},clickTimeThresh:{value:n.get("clickTimeThresh")},lock:{value:!1,setter:function(e){return e?this.get(r).addClass(n.CSS_PREFIX+"-locked"):this.get(r).removeClass(n.CSS_PREFIX+"-locked"),e}},data:{value:!1},move:{value:!0},useShim:{value:!0},activeHandle:{value:!1},primaryButtonOnly:{value:!0},dragging:{value:!1},parent:{value:!1},target:{value:!1,setter:function(e){return this._handleTarget(e),e}},dragMode:{value:null,setter:function(e){return n._setDragMode(e)}},groups:{value:["default"],getter:function(){return this._groups?e.Object.keys(this._groups):(this._groups={},[])},setter:function(t){return this._groups=e.Array.hash(t),t}},handles:{value:null,setter:function(t){return t?(this._handles={},e.Array.each(t,function(t){var n=t;if(t instanceof e.Node||t instanceof e.NodeList)n=t._yuid;this._handles[n]=t},this)):this._handles=null,t}},bubbles:{setter:function(e){return this.addTarget(e),e}},haltDown:{value:!0}},e.extend(y,e.Base,{_canDrag:function(e){return e&&e.setXY&&e.getXY&&e.test&&e.contains?!0:!1},_bubbleTargets:e.DD.DDM,addToGroup:function(e){return this._groups[e]=!0,n._activateTargets(),this},removeFromGroup:function(e){return delete this._groups[e],n._activateTargets(),this},target:null,_handleTarget:function(t){e.DD.Drop&&(t===!1?this.target&&(n._unregTarget(this.target),this.target=null):(e.Lang.isObject(t)||(t={}),t.bubbleTargets=t.bubbleTargets||this.getTargets(),t.node=this.get(r),t.groups=t.groups||this.get("groups"),this.target=new e.DD.Drop(t)))},_groups:null,_createEvents:function(){this.publish(a,{defaultFn:this._defMouseDownFn,queuable:!1,emitFacade:!0,bubbles:!0,prefix:"drag"}),this.publish(g,{defaultFn:this._defAlignFn,queuable:!1,emitFacade:!0,bubbles:!0,prefix:"drag"}),this.publish(m,{defaultFn:this._defDragFn,queuable:!1,emitFacade:!0,bubbles:!0,prefix:"drag"}),this.publish(v,{defaultFn:this._defEndFn,preventedFn:this._prevEndFn,queuable:!1,emitFacade:!0,bubbles:!0,prefix:"drag"});var t=[f,l,c,h,p,d,"drag:drophit","drag:dropmiss","drag:over","drag:enter","drag:exit"];e.Array.each(t,function(e){this.publish(e,{type:e,emitFacade:!0,bubbles:!0,preventable:!1,queuable:!1,prefix:"drag"})},this)},_ev_md:null,_startTime:null,_endTime:null,_handles:null,_invalids:null,_invalidsDefault:{textarea:!0,input:!0,a:!0,button:!0,select:!0},_dragThreshMet:null,_fromTimeout:null,_clickTimeout:null,deltaXY:null,startXY:null,nodeXY:null,lastXY:null,actXY:null,realXY:null,mouseXY:null,region:null,_handleMouseUp:function(){this.fire("drag:mouseup"),this._fixIEMouseUp(),n.activeDrag&&n._end()},_fixDragStart:function(e){this.validClick(e)&&e.preventDefault()},_ieSelectFix:function(){return!1},_ieSelectBack:null,_fixIEMouseDown:function(){e.UA.ie&&(this._ieSelectBack=e.config.doc.body.onselectstart,e.config.doc.body.onselectstart=this._ieSelectFix)},_fixIEMouseUp:function(){e.UA.ie&&(e.config.doc.body.onselectstart=this._ieSelectBack)},_handleMouseDownEvent:function(e){this.fire(a,{ev:e})},_defMouseDownFn:function(t){var r=t.ev;this._dragThreshMet=!1,this._ev_md=r;if(this.get("primaryButtonOnly")&&r.button>1)return!1;this.validClick(r)&&(this._fixIEMouseDown(r),y.START_EVENT.indexOf("gesture")!==0&&(this.get("haltDown")?r.halt():r.preventDefault()),this._setStartPosition([r.pageX,r.pageY]),n.activeDrag=this,this._clickTimeout=e.later(this.get("clickTimeThresh"),this,this._timeoutCheck)),this.fire(f,{ev:r})},validClick:function(t){var n=!1,i=!1,s=t.target,o=null,u=null,a=null,f=!1;if(this._handles)e.Object.each(this._handles,function(t,r){t instanceof e.Node||t instanceof e.NodeList?n||(a=t,a instanceof e.Node&&(a=new e.NodeList(t._node)),a.each(function(e){e.contains(s)&&(n=!0)})):e.Lang.isString(r)&&s.test(r+", "+r+" *")&&!o&&(o=r,n=!0)});else{i=this.get(r);if(i.contains(s)||i.compareTo(s))n=!0}return n&&this._invalids&&e.Object.each(this._invalids,function(t,r){e.Lang.isString(r)&&s.test(r+", "+r+" *")&&(n=!1)}),n&&(o?(u=t.currentTarget.all(o),f=!1,u.each(function(e){(e.contains(s)||e.compareTo(s))&&!f&&(f=!0,this.set("activeHandle",e))},this)):this.set("activeHandle",this.get(r))),n},_setStartPosition:function(e){this.startXY=e,this.nodeXY=this.lastXY=this.realXY=this.get(r).getXY(),this.get("offsetNode")?this.deltaXY=[this.startXY[0]-this.nodeXY[0],this.startXY[1]-this.nodeXY[1]]:this.deltaXY=[0,0]},_timeoutCheck:function(){!this.get("lock")&&!this._dragThreshMet&&this._ev_md&&(this._fromTimeout=this._dragThreshMet=!0,this.start(),this._alignNode([this._ev_md.pageX,this._ev_md.pageY],!0))},removeHandle:function(t){var n=t;if(t instanceof e.Node||t instanceof e.NodeList)n=t._yuid;return this._handles[n]&&(delete this._handles[n],this.fire(l,{handle:t})),this},addHandle:function(t){this._handles||(this._handles={});var n=t;if(t instanceof e.Node||t instanceof e.NodeList)n=t._yuid;return this._handles[n]=t,this.fire(c,{handle:t}),this},removeInvalid:function(e){return this._invalids[e]&&(this._invalids[e]=null,delete this._invalids[e],this.fire(h,{handle:e})),this},addInvalid:function(t){return e.Lang.isString(t)&&(this._invalids[t]=!0,this.fire(p,{handle:t})),this},initializer:function(){this.get(r).dd=this;if(!this.get(r).get +("id")){var t=e.stamp(this.get(r));this.get(r).set("id",t)}this.actXY=[],this._invalids=e.clone(this._invalidsDefault,!0),this._createEvents(),this.get(s)||this.set(s,this.get(r)),this.on("initializedChange",e.bind(this._prep,this)),this.set("groups",this.get("groups"))},_prep:function(){this._dragThreshMet=!1;var t=this.get(r);t.addClass(n.CSS_PREFIX+"-draggable"),t.on(y.START_EVENT,e.bind(this._handleMouseDownEvent,this)),t.on("mouseup",e.bind(this._handleMouseUp,this)),t.on("dragstart",e.bind(this._fixDragStart,this))},_unprep:function(){var e=this.get(r);e.removeClass(n.CSS_PREFIX+"-draggable"),e.detachAll("mouseup"),e.detachAll("dragstart"),e.detachAll(y.START_EVENT),this.mouseXY=[],this.deltaXY=[0,0],this.startXY=[],this.nodeXY=[],this.lastXY=[],this.actXY=[],this.realXY=[]},start:function(){if(!this.get("lock")&&!this.get(i)){var e=this.get(r),t,a,f;this._startTime=(new Date).getTime(),n._start(),e.addClass(n.CSS_PREFIX+"-dragging"),this.fire(d,{pageX:this.nodeXY[0],pageY:this.nodeXY[1],startTime:this._startTime}),e=this.get(s),f=this.nodeXY,t=e.get(u),a=e.get(o),this.get("startCentered")&&this._setStartPosition([f[0]+t/2,f[1]+a/2]),this.region={0:f[0],1:f[1],area:0,top:f[1],right:f[0]+t,bottom:f[1]+a,left:f[0]},this.set(i,!0)}return this},end:function(){return this._endTime=(new Date).getTime(),this._clickTimeout&&this._clickTimeout.cancel(),this._dragThreshMet=this._fromTimeout=!1,!this.get("lock")&&this.get(i)&&this.fire(v,{pageX:this.lastXY[0],pageY:this.lastXY[1],startTime:this._startTime,endTime:this._endTime}),this.get(r).removeClass(n.CSS_PREFIX+"-dragging"),this.set(i,!1),this.deltaXY=[0,0],this},_defEndFn:function(){this._fixIEMouseUp(),this._ev_md=null},_prevEndFn:function(){this._fixIEMouseUp(),this.get(s).setXY(this.nodeXY),this._ev_md=null,this.region=null},_align:function(e){this.fire(g,{pageX:e[0],pageY:e[1]})},_defAlignFn:function(e){this.actXY=[e.pageX-this.deltaXY[0],e.pageY-this.deltaXY[1]]},_alignNode:function(e,t){this._align(e),t||this._moveNode()},_moveNode:function(e){var t=[],n=[],r=this.nodeXY,i=this.actXY;t[0]=i[0]-this.lastXY[0],t[1]=i[1]-this.lastXY[1],n[0]=i[0]-this.nodeXY[0],n[1]=i[1]-this.nodeXY[1],this.region={0:i[0],1:i[1],area:0,top:i[1],right:i[0]+this.get(s).get(u),bottom:i[1]+this.get(s).get(o),left:i[0]},this.fire(m,{pageX:i[0],pageY:i[1],scroll:e,info:{start:r,xy:i,delta:t,offset:n}}),this.lastXY=i},_defDragFn:function(t){if(this.get("move")){if(t.scroll&&t.scroll.node){var n=t.scroll.node.getDOMNode();n===e.config.win?n.scrollTo(t.scroll.left,t.scroll.top):(t.scroll.node.set("scrollTop",t.scroll.top),t.scroll.node.set("scrollLeft",t.scroll.left))}this.get(s).setXY([t.pageX,t.pageY]),this.realXY=[t.pageX,t.pageY]}},_move:function(e){if(this.get("lock"))return!1;this.mouseXY=[e.pageX,e.pageY];if(!this._dragThreshMet){var t=Math.abs(this.startXY[0]-e.pageX),n=Math.abs(this.startXY[1]-e.pageY);if(t>this.get("clickPixelThresh")||n>this.get("clickPixelThresh"))this._dragThreshMet=!0,this.start(),e&&e.preventDefault&&e.preventDefault(),this._alignNode([e.pageX,e.pageY])}else this._clickTimeout&&this._clickTimeout.cancel(),this._alignNode([e.pageX,e.pageY])},stopDrag:function(){return this.get(i)&&n._end(),this},destructor:function(){this._unprep(),this.target&&this.target.destroy(),n._unregDrag(this)}}),e.namespace("DD"),e.DD.Drag=y},"3.12.0",{requires:["dd-ddm-base"]}); diff --git a/lib/yuilib/3.9.1/build/dd-drag/dd-drag.js b/lib/yuilib/3.12.0/dd-drag/dd-drag.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/dd-drag/dd-drag.js rename to lib/yuilib/3.12.0/dd-drag/dd-drag.js index e2a165a22b9..a7c271c96f1 --- a/lib/yuilib/3.9.1/build/dd-drag/dd-drag.js +++ b/lib/yuilib/3.12.0/dd-drag/dd-drag.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-drag', function (Y, NAME) { @@ -503,7 +509,7 @@ YUI.add('dd-drag', function (Y, NAME) { if (!Y.Lang.isObject(config)) { config = {}; } - config.bubbleTargets = config.bubbleTargets || Y.Object.values(this._yuievt.targets); + config.bubbleTargets = config.bubbleTargets || this.getTargets(); config.node = this.get(NODE); config.groups = config.groups || this.get('groups'); this.target = new Y.DD.Drop(config); @@ -1271,4 +1277,4 @@ YUI.add('dd-drag', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-ddm-base"]}); +}, '3.12.0', {"requires": ["dd-ddm-base"]}); diff --git a/lib/yuilib/3.9.1/build/dd-drop-plugin/dd-drop-plugin-debug.js b/lib/yuilib/3.12.0/dd-drop-plugin/dd-drop-plugin-debug.js old mode 100644 new mode 100755 similarity index 84% rename from lib/yuilib/3.9.1/build/dd-drop-plugin/dd-drop-plugin-debug.js rename to lib/yuilib/3.12.0/dd-drop-plugin/dd-drop-plugin-debug.js index e821b5d573a..719e8229798 --- a/lib/yuilib/3.9.1/build/dd-drop-plugin/dd-drop-plugin-debug.js +++ b/lib/yuilib/3.12.0/dd-drop-plugin/dd-drop-plugin-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-drop-plugin', function (Y, NAME) { @@ -42,4 +48,4 @@ YUI.add('dd-drop-plugin', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drop"]}); +}, '3.12.0', {"requires": ["dd-drop"]}); diff --git a/lib/yuilib/3.12.0/dd-drop-plugin/dd-drop-plugin-min.js b/lib/yuilib/3.12.0/dd-drop-plugin/dd-drop-plugin-min.js new file mode 100755 index 00000000000..e34d26bd440 --- /dev/null +++ b/lib/yuilib/3.12.0/dd-drop-plugin/dd-drop-plugin-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-drop-plugin",function(e,t){var n=function(e){e.node=e.host,n.superclass.constructor.apply(this,arguments)};n.NAME="dd-drop-plugin",n.NS="drop",e.extend(n,e.DD.Drop),e.namespace("Plugin"),e.Plugin.Drop=n},"3.12.0",{requires:["dd-drop"]}); diff --git a/lib/yuilib/3.9.1/build/dd-drop-plugin/dd-drop-plugin.js b/lib/yuilib/3.12.0/dd-drop-plugin/dd-drop-plugin.js old mode 100644 new mode 100755 similarity index 84% rename from lib/yuilib/3.9.1/build/dd-drop-plugin/dd-drop-plugin.js rename to lib/yuilib/3.12.0/dd-drop-plugin/dd-drop-plugin.js index e821b5d573a..719e8229798 --- a/lib/yuilib/3.9.1/build/dd-drop-plugin/dd-drop-plugin.js +++ b/lib/yuilib/3.12.0/dd-drop-plugin/dd-drop-plugin.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-drop-plugin', function (Y, NAME) { @@ -42,4 +48,4 @@ YUI.add('dd-drop-plugin', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drop"]}); +}, '3.12.0', {"requires": ["dd-drop"]}); diff --git a/lib/yuilib/3.9.1/build/dd-drop/dd-drop-debug.js b/lib/yuilib/3.12.0/dd-drop/dd-drop-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/dd-drop/dd-drop-debug.js rename to lib/yuilib/3.12.0/dd-drop/dd-drop-debug.js index d5b9ac30071..1b96a62d85a --- a/lib/yuilib/3.9.1/build/dd-drop/dd-drop-debug.js +++ b/lib/yuilib/3.12.0/dd-drop/dd-drop-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-drop', function (Y, NAME) { @@ -553,4 +559,4 @@ YUI.add('dd-drop', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag", "dd-ddm-drop"]}); +}, '3.12.0', {"requires": ["dd-drag", "dd-ddm-drop"]}); diff --git a/lib/yuilib/3.9.1/build/dd-drop/dd-drop-min.js b/lib/yuilib/3.12.0/dd-drop/dd-drop-min.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/dd-drop/dd-drop-min.js rename to lib/yuilib/3.12.0/dd-drop/dd-drop-min.js index 68654bb170f..dd82baac422 --- a/lib/yuilib/3.9.1/build/dd-drop/dd-drop-min.js +++ b/lib/yuilib/3.12.0/dd-drop/dd-drop-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dd-drop",function(e,t){var n="node",r=e.DD.DDM,i="offsetHeight",s="offsetWidth",o="drop:over",u="drop:enter",a="drop:exit",f=function(){this._lazyAddAttrs=!1,f.superclass.constructor.apply(this,arguments),e.on("domready",e.bind(function(){e.later(100,this,this._createShim)},this)),r._regTarget(this)};f.NAME="drop",f.ATTRS={node:{setter:function(t){var n=e.one(t);return n||e.error("DD.Drop: Invalid Node Given: "+t),n}},groups:{value:["default"],getter:function(){return this._groups?e.Object.keys(this._groups):(this._groups={},[])},setter:function(t){return this._groups=e.Array.hash(t),t}},padding:{value:"0",setter:function(e){return r.cssSizestoObject(e)}},lock:{value:!1,setter:function(e){return e?this.get(n).addClass(r.CSS_PREFIX+"-drop-locked"):this.get(n).removeClass(r.CSS_PREFIX+"-drop-locked"),e}},bubbles:{setter:function(e){return this.addTarget(e),e}},useShim:{value:!0,setter:function(t){return e.DD.DDM._noShim=!t,t}}},e.extend(f,e.Base,{_bubbleTargets:e.DD.DDM,addToGroup:function(e){return this._groups[e]=!0,this},removeFromGroup:function(e){return delete this._groups[e],this},_createEvents:function(){var t=[o,u,a,"drop:hit"];e.Array.each(t,function(e){this.publish(e,{type:e,emitFacade:!0,preventable:!1,bubbles:!0,queuable:!1,prefix:"drop"})},this)},_valid:null,_groups:null,shim:null,region:null,overTarget:null,inGroup:function(t){this._valid=!1;var n=!1;return e.Array.each(t,function(e){this._groups[e]&&(n=!0,this._valid=!0)},this),n},initializer:function(){e.later(100,this,this._createEvents);var t=this.get(n),i;t.get("id")||(i=e.stamp(t),t.set("id",i)),t.addClass(r.CSS_PREFIX+"-drop"),this.set("groups",this.get("groups"))},destructor:function(){r._unregTarget(this),this.shim&&this.shim!==this.get(n)&&(this.shim.detachAll(),this.shim.remove(),this.shim=null),this.get(n).removeClass(r.CSS_PREFIX+"-drop"),this.detachAll()},_deactivateShim:function(){if(!this.shim)return!1;this.get(n).removeClass(r.CSS_PREFIX+"-drop-active-valid"),this.get(n).removeClass(r.CSS_PREFIX+"-drop-active-invalid"),this.get(n).removeClass(r.CSS_PREFIX+"-drop-over"),this.get("useShim")&&this.shim.setStyles({top:"-999px",left:"-999px",zIndex:"1"}),this.overTarget=!1},_activateShim:function(){if(!r.activeDrag)return!1;if(this.get(n)===r.activeDrag.get(n))return!1;if(this.get("lock"))return!1;var e=this.get(n);this.inGroup(r.activeDrag.get("groups"))?(e.removeClass(r.CSS_PREFIX+"-drop-active-invalid"),e.addClass(r.CSS_PREFIX+"-drop-active-valid"),r._addValid(this),this.overTarget=!1,this.get("useShim")||(this.shim=this.get(n)),this.sizeShim()):(r._removeValid(this),e.removeClass(r.CSS_PREFIX+"-drop-active-valid"),e.addClass(r.CSS_PREFIX+"-drop-active-invalid"))},sizeShim:function(){if(!r.activeDrag)return!1;if(this.get(n)===r.activeDrag.get(n))return!1;if(this.get("lock"))return!1;if(!this.shim)return e.later(100,this,this.sizeShim),!1;var t=this.get(n),o=t.get(i),u=t.get(s),a=t.getXY(),f=this.get("padding"),l,c,h;u=u+f.left+f.right,o=o+f.top+f.bottom,a[0]=a[0]-f.left,a[1]=a[1]-f.top,r.activeDrag.get("dragMode")===r.INTERSECT&&(l=r.activeDrag,c=l.get(n).get(i),h=l.get(n).get(s),o+=c,u+=h,a[0]=a[0]-(h-l.deltaXY[0]),a[1]=a[1]-(c-l.deltaXY[1])),this.get("useShim")&&this.shim.setStyles({height:o+"px",width:u+"px",top:a[1]+"px",left:a[0]+"px"}),this.region={0:a[0],1:a[1],area:0,top:a[1],right:a[0]+u,bottom:a[1]+o,left:a[0]}},_createShim:function(){if(!r._pg){e.later(10,this,this._createShim);return}if(this.shim)return;var t=this.get("node");this.get("useShim")&&(t=e.Node.create('
    '),t.setStyles({height:this.get(n).get(i)+"px",width:this.get(n).get(s)+"px",backgroundColor:"yellow",opacity:".5",zIndex:"1",overflow:"hidden",top:"-900px",left:"-900px",position:"absolute"}),r._pg.appendChild(t),t.on("mouseover",e.bind(this._handleOverEvent,this)),t.on("mouseout",e.bind(this._handleOutEvent,this))),this.shim=t},_handleTargetOver:function(){r.isOverTarget(this)?(this.get(n).addClass(r.CSS_PREFIX+"-drop-over"),r.activeDrop=this,r.otherDrops[this]=this,this.overTarget?(r.activeDrag.fire("drag:over",{drop:this,drag:r.activeDrag}),this.fire(o,{drop:this,drag:r.activeDrag})):r.activeDrag.get("dragging")&&(this.overTarget=!0,this.fire(u,{drop:this,drag:r.activeDrag}),r.activeDrag.fire("drag:enter",{drop:this,drag:r.activeDrag}),r.activeDrag.get(n).addClass(r.CSS_PREFIX+"-drag-over"))):this._handleOut()},_handleOverEvent:function(){this.shim.setStyle("zIndex","999"),r._addActiveShim(this)},_handleOutEvent:function(){this.shim.setStyle("zIndex","1"),r._removeActiveShim(this)},_handleOut:function(e){(!r.isOverTarget(this)||e)&&this.overTarget&&(this.overTarget=!1,e||r._removeActiveShim(this),r.activeDrag&&(this.get(n).removeClass(r.CSS_PREFIX+"-drop-over"),r.activeDrag.get(n).removeClass(r.CSS_PREFIX+"-drag-over"),this.fire(a,{drop:this,drag:r.activeDrag}),r.activeDrag.fire("drag:exit",{drop:this,drag:r.activeDrag}),delete r.otherDrops[this]))}}),e.DD.Drop=f},"3.9.1",{requires:["dd-drag","dd-ddm-drop"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-drop",function(e,t){var n="node",r=e.DD.DDM,i="offsetHeight",s="offsetWidth",o="drop:over",u="drop:enter",a="drop:exit",f=function(){this._lazyAddAttrs=!1,f.superclass.constructor.apply(this,arguments),e.on("domready",e.bind(function(){e.later(100,this,this._createShim)},this)),r._regTarget(this)};f.NAME="drop",f.ATTRS={node:{setter:function(t){var n=e.one(t);return n||e.error("DD.Drop: Invalid Node Given: "+t),n}},groups:{value:["default"],getter:function(){return this._groups?e.Object.keys(this._groups):(this._groups={},[])},setter:function(t){return this._groups=e.Array.hash(t),t}},padding:{value:"0",setter:function(e){return r.cssSizestoObject(e)}},lock:{value:!1,setter:function(e){return e?this.get(n).addClass(r.CSS_PREFIX+"-drop-locked"):this.get(n).removeClass(r.CSS_PREFIX+"-drop-locked"),e}},bubbles:{setter:function(e){return this.addTarget(e),e}},useShim:{value:!0,setter:function(t){return e.DD.DDM._noShim=!t,t}}},e.extend(f,e.Base,{_bubbleTargets:e.DD.DDM,addToGroup:function(e){return this._groups[e]=!0,this},removeFromGroup:function(e){return delete this._groups[e],this},_createEvents:function(){var t=[o,u,a,"drop:hit"];e.Array.each(t,function(e){this.publish(e,{type:e,emitFacade:!0,preventable:!1,bubbles:!0,queuable:!1,prefix:"drop"})},this)},_valid:null,_groups:null,shim:null,region:null,overTarget:null,inGroup:function(t){this._valid=!1;var n=!1;return e.Array.each(t,function(e){this._groups[e]&&(n=!0,this._valid=!0)},this),n},initializer:function(){e.later(100,this,this._createEvents);var t=this.get(n),i;t.get("id")||(i=e.stamp(t),t.set("id",i)),t.addClass(r.CSS_PREFIX+"-drop"),this.set("groups",this.get("groups"))},destructor:function(){r._unregTarget(this),this.shim&&this.shim!==this.get(n)&&(this.shim.detachAll(),this.shim.remove(),this.shim=null),this.get(n).removeClass(r.CSS_PREFIX+"-drop"),this.detachAll()},_deactivateShim:function(){if(!this.shim)return!1;this.get(n).removeClass(r.CSS_PREFIX+"-drop-active-valid"),this.get(n).removeClass(r.CSS_PREFIX+"-drop-active-invalid"),this.get(n).removeClass(r.CSS_PREFIX+"-drop-over"),this.get("useShim")&&this.shim.setStyles({top:"-999px",left:"-999px",zIndex:"1"}),this.overTarget=!1},_activateShim:function(){if(!r.activeDrag)return!1;if(this.get(n)===r.activeDrag.get(n))return!1;if(this.get("lock"))return!1;var e=this.get(n);this.inGroup(r.activeDrag.get("groups"))?(e.removeClass(r.CSS_PREFIX+"-drop-active-invalid"),e.addClass(r.CSS_PREFIX+"-drop-active-valid"),r._addValid(this),this.overTarget=!1,this.get("useShim")||(this.shim=this.get(n)),this.sizeShim()):(r._removeValid(this),e.removeClass(r.CSS_PREFIX+"-drop-active-valid"),e.addClass(r.CSS_PREFIX+"-drop-active-invalid"))},sizeShim:function(){if(!r.activeDrag)return!1;if(this.get(n)===r.activeDrag.get(n))return!1;if(this.get("lock"))return!1;if(!this.shim)return e.later(100,this,this.sizeShim),!1;var t=this.get(n),o=t.get(i),u=t.get(s),a=t.getXY(),f=this.get("padding"),l,c,h;u=u+f.left+f.right,o=o+f.top+f.bottom,a[0]=a[0]-f.left,a[1]=a[1]-f.top,r.activeDrag.get("dragMode")===r.INTERSECT&&(l=r.activeDrag,c=l.get(n).get(i),h=l.get(n).get(s),o+=c,u+=h,a[0]=a[0]-(h-l.deltaXY[0]),a[1]=a[1]-(c-l.deltaXY[1])),this.get("useShim")&&this.shim.setStyles({height:o+"px",width:u+"px",top:a[1]+"px",left:a[0]+"px"}),this.region={0:a[0],1:a[1],area:0,top:a[1],right:a[0]+u,bottom:a[1]+o,left:a[0]}},_createShim:function(){if(!r._pg){e.later(10,this,this._createShim);return}if(this.shim)return;var t=this.get("node");this.get("useShim")&&(t=e.Node.create('
    '),t.setStyles({height:this.get(n).get(i)+"px",width:this.get(n).get(s)+"px",backgroundColor:"yellow",opacity:".5",zIndex:"1",overflow:"hidden",top:"-900px",left:"-900px",position:"absolute"}),r._pg.appendChild(t),t.on("mouseover",e.bind(this._handleOverEvent,this)),t.on("mouseout",e.bind(this._handleOutEvent,this))),this.shim=t},_handleTargetOver:function(){r.isOverTarget(this)?(this.get(n).addClass(r.CSS_PREFIX+"-drop-over"),r.activeDrop=this,r.otherDrops[this]=this,this.overTarget?(r.activeDrag.fire("drag:over",{drop:this,drag:r.activeDrag}),this.fire(o,{drop:this,drag:r.activeDrag})):r.activeDrag.get("dragging")&&(this.overTarget=!0,this.fire(u,{drop:this,drag:r.activeDrag}),r.activeDrag.fire("drag:enter",{drop:this,drag:r.activeDrag}),r.activeDrag.get(n).addClass(r.CSS_PREFIX+"-drag-over"))):this._handleOut()},_handleOverEvent:function(){this.shim.setStyle("zIndex","999"),r._addActiveShim(this)},_handleOutEvent:function(){this.shim.setStyle("zIndex","1"),r._removeActiveShim(this)},_handleOut:function(e){(!r.isOverTarget(this)||e)&&this.overTarget&&(this.overTarget=!1,e||r._removeActiveShim(this),r.activeDrag&&(this.get(n).removeClass(r.CSS_PREFIX+"-drop-over"),r.activeDrag.get(n).removeClass(r.CSS_PREFIX+"-drag-over"),this.fire(a,{drop:this,drag:r.activeDrag}),r.activeDrag.fire("drag:exit",{drop:this,drag:r.activeDrag}),delete r.otherDrops[this]))}}),e.DD.Drop=f},"3.12.0",{requires:["dd-drag","dd-ddm-drop"]}); diff --git a/lib/yuilib/3.9.1/build/dd-drop/dd-drop.js b/lib/yuilib/3.12.0/dd-drop/dd-drop.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/dd-drop/dd-drop.js rename to lib/yuilib/3.12.0/dd-drop/dd-drop.js index 94c731a1eda..794174cdb8f --- a/lib/yuilib/3.9.1/build/dd-drop/dd-drop.js +++ b/lib/yuilib/3.12.0/dd-drop/dd-drop.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-drop', function (Y, NAME) { @@ -552,4 +558,4 @@ YUI.add('dd-drop', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag", "dd-ddm-drop"]}); +}, '3.12.0', {"requires": ["dd-drag", "dd-ddm-drop"]}); diff --git a/lib/yuilib/3.9.1/build/dd-gestures/dd-gestures-debug.js b/lib/yuilib/3.12.0/dd-gestures/dd-gestures-debug.js old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/dd-gestures/dd-gestures-debug.js rename to lib/yuilib/3.12.0/dd-gestures/dd-gestures-debug.js index 58ea7f63bf8..7274c8bc968 --- a/lib/yuilib/3.9.1/build/dd-gestures/dd-gestures-debug.js +++ b/lib/yuilib/3.12.0/dd-gestures/dd-gestures-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-gestures', function (Y, NAME) { @@ -52,4 +58,4 @@ YUI.add('dd-gestures', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag", "event-synthetic", "event-gestures"]}); +}, '3.12.0', {"requires": ["dd-drag", "event-synthetic", "event-gestures"]}); diff --git a/lib/yuilib/3.9.1/build/dd-gestures/dd-gestures-min.js b/lib/yuilib/3.12.0/dd-gestures/dd-gestures-min.js old mode 100644 new mode 100755 similarity index 74% rename from lib/yuilib/3.9.1/build/dd-gestures/dd-gestures-min.js rename to lib/yuilib/3.12.0/dd-gestures/dd-gestures-min.js index 7d9e7b0fbe7..35782838d40 --- a/lib/yuilib/3.9.1/build/dd-gestures/dd-gestures-min.js +++ b/lib/yuilib/3.12.0/dd-gestures/dd-gestures-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dd-gestures",function(e,t){e.DD.Drag.START_EVENT="gesturemovestart",e.DD.Drag.prototype._prep=function(){this._dragThreshMet=!1;var t=this.get("node"),n=e.DD.DDM;t.addClass(n.CSS_PREFIX+"-draggable"),t.on(e.DD.Drag.START_EVENT,e.bind(this._handleMouseDownEvent,this),{minDistance:this.get("clickPixelThresh"),minTime:this.get("clickTimeThresh")}),t.on("gesturemoveend",e.bind(this._handleMouseUp,this),{standAlone:!0}),t.on("dragstart",e.bind(this._fixDragStart,this))};var n=e.DD.Drag.prototype._unprep;e.DD.Drag.prototype._unprep=function(){var e=this.get("node");n.call(this),e.detachAll("gesturemoveend")},e.DD.DDM._setupListeners=function(){var t=e.DD.DDM;this._createPG(),this._active=!0,e.one(e.config.doc).on("gesturemove",e.throttle(e.bind(t._move,t),t.get("throttleTime")),{standAlone:!0})}},"3.9.1",{requires:["dd-drag","event-synthetic","event-gestures"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-gestures",function(e,t){e.DD.Drag.START_EVENT="gesturemovestart",e.DD.Drag.prototype._prep=function(){this._dragThreshMet=!1;var t=this.get("node"),n=e.DD.DDM;t.addClass(n.CSS_PREFIX+"-draggable"),t.on(e.DD.Drag.START_EVENT,e.bind(this._handleMouseDownEvent,this),{minDistance:this.get("clickPixelThresh"),minTime:this.get("clickTimeThresh")}),t.on("gesturemoveend",e.bind(this._handleMouseUp,this),{standAlone:!0}),t.on("dragstart",e.bind(this._fixDragStart,this))};var n=e.DD.Drag.prototype._unprep;e.DD.Drag.prototype._unprep=function(){var e=this.get("node");n.call(this),e.detachAll("gesturemoveend")},e.DD.DDM._setupListeners=function(){var t=e.DD.DDM;this._createPG(),this._active=!0,e.one(e.config.doc).on("gesturemove",e.throttle(e.bind(t._move,t),t.get("throttleTime")),{standAlone:!0})}},"3.12.0",{requires:["dd-drag","event-synthetic","event-gestures"]}); diff --git a/lib/yuilib/3.9.1/build/dd-gestures/dd-gestures.js b/lib/yuilib/3.12.0/dd-gestures/dd-gestures.js old mode 100644 new mode 100755 similarity index 88% rename from lib/yuilib/3.9.1/build/dd-gestures/dd-gestures.js rename to lib/yuilib/3.12.0/dd-gestures/dd-gestures.js index 161da77fba3..2e3ed5a7c3c --- a/lib/yuilib/3.9.1/build/dd-gestures/dd-gestures.js +++ b/lib/yuilib/3.12.0/dd-gestures/dd-gestures.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-gestures', function (Y, NAME) { @@ -50,4 +56,4 @@ YUI.add('dd-gestures', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag", "event-synthetic", "event-gestures"]}); +}, '3.12.0', {"requires": ["dd-drag", "event-synthetic", "event-gestures"]}); diff --git a/lib/yuilib/3.9.1/build/dd-plugin/dd-plugin-debug.js b/lib/yuilib/3.12.0/dd-plugin/dd-plugin-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/dd-plugin/dd-plugin-debug.js rename to lib/yuilib/3.12.0/dd-plugin/dd-plugin-debug.js index adfb6576c8b..70dc4cb2bda --- a/lib/yuilib/3.9.1/build/dd-plugin/dd-plugin-debug.js +++ b/lib/yuilib/3.12.0/dd-plugin/dd-plugin-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-plugin', function (Y, NAME) { @@ -203,4 +209,4 @@ YUI.add('dd-plugin', function (Y, NAME) { -}, '3.9.1', {"optional": ["dd-constrain", "dd-proxy"], "requires": ["dd-drag"]}); +}, '3.12.0', {"optional": ["dd-constrain", "dd-proxy"], "requires": ["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-plugin/dd-plugin-min.js b/lib/yuilib/3.12.0/dd-plugin/dd-plugin-min.js old mode 100644 new mode 100755 similarity index 85% rename from lib/yuilib/3.9.1/build/dd-plugin/dd-plugin-min.js rename to lib/yuilib/3.12.0/dd-plugin/dd-plugin-min.js index 97e14496ba2..344fe1f6134 --- a/lib/yuilib/3.9.1/build/dd-plugin/dd-plugin-min.js +++ b/lib/yuilib/3.12.0/dd-plugin/dd-plugin-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dd-plugin",function(e,t){var n=function(t){e.Widget&&t.host instanceof e.Widget?(t.node=t.host.get("boundingBox"),t.widget=t.host):(t.node=t.host,t.widget=!1),n.superclass.constructor.call(this,t)},r="drag:start",i="drag:drag",s="drag:end";n.NAME="dd-plugin",n.NS="dd",e.extend(n,e.DD.Drag,{_widgetHandles:null,_widget:undefined,_stoppedPosition:undefined,_usesWidgetPosition:function(t){var n=!1;return t&&(n=t.hasImpl&&t.hasImpl(e.WidgetPosition)?!0:!1),n},_checkEvents:function(){this._widget&&(this.proxy?this._widgetHandles.length>0&&this._removeWidgetListeners():this._widgetHandles.length===0&&this._attachWidgetListeners())},_removeWidgetListeners:function(){e.Array.each(this._widgetHandles,function(e){e.detach()}),this._widgetHandles=[]},_attachWidgetListeners:function(){this._usesWidgetPosition(this._widget)&&(this._widgetHandles.push(this.on(i,this._setWidgetCoords)),this._widgetHandles.push(this.on(s,this._updateStopPosition)))},initializer:function(e){this._widgetHandles=[],this._widget=e.widget,this.on(r,this._checkEvents),this._attachWidgetListeners()},_setWidgetCoords:function(e){var t=this._stoppedPosition||e.target.nodeXY,n=e.target.realXY,r=[n[0]-t[0],n[1]-t[1]];r[0]!==0&&r[1]!==0?this._widget.set("xy",n):r[0]===0?this._widget.set("y",n[1]):r[1]===0&&this._widget.set("x",n[0])},_updateStopPosition:function(e){this._stoppedPosition=e.target.realXY}}),e.namespace("Plugin"),e.Plugin.Drag=n},"3.9.1",{optional:["dd-constrain","dd-proxy"],requires:["dd-drag"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-plugin",function(e,t){var n=function(t){e.Widget&&t.host instanceof e.Widget?(t.node=t.host.get("boundingBox"),t.widget=t.host):(t.node=t.host,t.widget=!1),n.superclass.constructor.call(this,t)},r="drag:start",i="drag:drag",s="drag:end";n.NAME="dd-plugin",n.NS="dd",e.extend(n,e.DD.Drag,{_widgetHandles:null,_widget:undefined,_stoppedPosition:undefined,_usesWidgetPosition:function(t){var n=!1;return t&&(n=t.hasImpl&&t.hasImpl(e.WidgetPosition)?!0:!1),n},_checkEvents:function(){this._widget&&(this.proxy?this._widgetHandles.length>0&&this._removeWidgetListeners():this._widgetHandles.length===0&&this._attachWidgetListeners())},_removeWidgetListeners:function(){e.Array.each(this._widgetHandles,function(e){e.detach()}),this._widgetHandles=[]},_attachWidgetListeners:function(){this._usesWidgetPosition(this._widget)&&(this._widgetHandles.push(this.on(i,this._setWidgetCoords)),this._widgetHandles.push(this.on(s,this._updateStopPosition)))},initializer:function(e){this._widgetHandles=[],this._widget=e.widget,this.on(r,this._checkEvents),this._attachWidgetListeners()},_setWidgetCoords:function(e){var t=this._stoppedPosition||e.target.nodeXY,n=e.target.realXY,r=[n[0]-t[0],n[1]-t[1]];r[0]!==0&&r[1]!==0?this._widget.set("xy",n):r[0]===0?this._widget.set("y",n[1]):r[1]===0&&this._widget.set("x",n[0])},_updateStopPosition:function(e){this._stoppedPosition=e.target.realXY}}),e.namespace("Plugin"),e.Plugin.Drag=n},"3.12.0",{optional:["dd-constrain","dd-proxy"],requires:["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-plugin/dd-plugin.js b/lib/yuilib/3.12.0/dd-plugin/dd-plugin.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/dd-plugin/dd-plugin.js rename to lib/yuilib/3.12.0/dd-plugin/dd-plugin.js index d461d859a17..15c3a3f389d --- a/lib/yuilib/3.9.1/build/dd-plugin/dd-plugin.js +++ b/lib/yuilib/3.12.0/dd-plugin/dd-plugin.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-plugin', function (Y, NAME) { @@ -198,4 +204,4 @@ YUI.add('dd-plugin', function (Y, NAME) { -}, '3.9.1', {"optional": ["dd-constrain", "dd-proxy"], "requires": ["dd-drag"]}); +}, '3.12.0', {"optional": ["dd-constrain", "dd-proxy"], "requires": ["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-proxy/dd-proxy-debug.js b/lib/yuilib/3.12.0/dd-proxy/dd-proxy-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/dd-proxy/dd-proxy-debug.js rename to lib/yuilib/3.12.0/dd-proxy/dd-proxy-debug.js index e27d0149da2..af0a6227733 --- a/lib/yuilib/3.9.1/build/dd-proxy/dd-proxy-debug.js +++ b/lib/yuilib/3.12.0/dd-proxy/dd-proxy-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-proxy', function (Y, NAME) { @@ -247,4 +253,4 @@ YUI.add('dd-proxy', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag"]}); +}, '3.12.0', {"requires": ["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-proxy/dd-proxy-min.js b/lib/yuilib/3.12.0/dd-proxy/dd-proxy-min.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/dd-proxy/dd-proxy-min.js rename to lib/yuilib/3.12.0/dd-proxy/dd-proxy-min.js index e47ca7ba2b0..b90d1c53a65 --- a/lib/yuilib/3.9.1/build/dd-proxy/dd-proxy-min.js +++ b/lib/yuilib/3.12.0/dd-proxy/dd-proxy-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dd-proxy",function(e,t){var n=e.DD.DDM,r="node",i="dragNode",s="host",o=!0,u,a=function(){a.superclass.constructor.apply(this,arguments)};a.NAME="DDProxy",a.NS="proxy",a.ATTRS={host:{},moveOnEnd:{value:o},hideOnEnd:{value:o},resizeFrame:{value:o},positionProxy:{value:o},borderStyle:{value:"1px solid #808080"},cloneNode:{value:!1}},u={_hands:null,_init:function(){if(!n._proxy){n._createFrame(),e.on("domready",e.bind(this._init,this));return}this._hands||(this._hands=[]);var t,o,u=this.get(s),a=u.get(i);a.compareTo(u.get(r))&&n._proxy&&u.set(i,n._proxy),e.Array.each(this._hands,function(e){e.detach()}),t=n.on("ddm:start",e.bind(function(){n.activeDrag===u&&n._setFrame(u)},this)),o=n.on("ddm:end",e.bind(function(){u.get("dragging")&&(this.get("moveOnEnd")&&u.get(r).setXY(u.lastXY),this.get("hideOnEnd")&&u.get(i).setStyle("display","none"),this.get("cloneNode")&&(u.get(i).remove(),u.set(i,n._proxy)))},this)),this._hands=[t,o]},initializer:function(){this._init()},destructor:function(){var t=this.get(s);e.Array.each(this._hands,function(e){e.detach()}),t.set(i,t.get(r))},clone:function(){var t=this.get(s),n=t.get(r),o=n.cloneNode(!0);return delete o._yuid,o.setAttribute("id",e.guid()),o.setStyle("position","absolute"),n.get("parentNode").appendChild(o),t.set(i,o),o}},e.namespace("Plugin"),e.extend(a,e.Base,u),e.Plugin.DDProxy=a,e.mix(n,{_createFrame:function(){if(!n._proxy){n._proxy=o;var t=e.Node.create("
    "),r=e.one("body");t.setStyles({position:"absolute",display:"none",zIndex:"999",top:"-999px",left:"-999px"}),r.prepend(t),t.set("id",e.guid()),t.addClass(n.CSS_PREFIX+"-proxy"),n._proxy=t}},_setFrame:function(e){var t=e.get(r),s=e.get(i),o,u="auto";o=n.activeDrag.get("activeHandle"),o&&(u=o.getStyle("cursor")),u==="auto"&&(u=n.get("dragCursor")),s.setStyles({visibility:"hidden",display:"block",cursor:u,border:e.proxy.get("borderStyle")}),e.proxy.get("cloneNode")&&(s=e.proxy.clone()),e.proxy.get("resizeFrame")&&s.setStyles({height:t.get("offsetHeight")+"px",width:t.get("offsetWidth")+"px"}),e.proxy.get("positionProxy")&&s.setXY(e.nodeXY),s.setStyle("visibility","visible")}})},"3.9.1",{requires:["dd-drag"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-proxy",function(e,t){var n=e.DD.DDM,r="node",i="dragNode",s="host",o=!0,u,a=function(){a.superclass.constructor.apply(this,arguments)};a.NAME="DDProxy",a.NS="proxy",a.ATTRS={host:{},moveOnEnd:{value:o},hideOnEnd:{value:o},resizeFrame:{value:o},positionProxy:{value:o},borderStyle:{value:"1px solid #808080"},cloneNode:{value:!1}},u={_hands:null,_init:function(){if(!n._proxy){n._createFrame(),e.on("domready",e.bind(this._init,this));return}this._hands||(this._hands=[]);var t,o,u=this.get(s),a=u.get(i);a.compareTo(u.get(r))&&n._proxy&&u.set(i,n._proxy),e.Array.each(this._hands,function(e){e.detach()}),t=n.on("ddm:start",e.bind(function(){n.activeDrag===u&&n._setFrame(u)},this)),o=n.on("ddm:end",e.bind(function(){u.get("dragging")&&(this.get("moveOnEnd")&&u.get(r).setXY(u.lastXY),this.get("hideOnEnd")&&u.get(i).setStyle("display","none"),this.get("cloneNode")&&(u.get(i).remove(),u.set(i,n._proxy)))},this)),this._hands=[t,o]},initializer:function(){this._init()},destructor:function(){var t=this.get(s);e.Array.each(this._hands,function(e){e.detach()}),t.set(i,t.get(r))},clone:function(){var t=this.get(s),n=t.get(r),o=n.cloneNode(!0);return delete o._yuid,o.setAttribute("id",e.guid()),o.setStyle("position","absolute"),n.get("parentNode").appendChild(o),t.set(i,o),o}},e.namespace("Plugin"),e.extend(a,e.Base,u),e.Plugin.DDProxy=a,e.mix(n,{_createFrame:function(){if(!n._proxy){n._proxy=o;var t=e.Node.create("
    "),r=e.one("body");t.setStyles({position:"absolute",display:"none",zIndex:"999",top:"-999px",left:"-999px"}),r.prepend(t),t.set("id",e.guid()),t.addClass(n.CSS_PREFIX+"-proxy"),n._proxy=t}},_setFrame:function(e){var t=e.get(r),s=e.get(i),o,u="auto";o=n.activeDrag.get("activeHandle"),o&&(u=o.getStyle("cursor")),u==="auto"&&(u=n.get("dragCursor")),s.setStyles({visibility:"hidden",display:"block",cursor:u,border:e.proxy.get("borderStyle")}),e.proxy.get("cloneNode")&&(s=e.proxy.clone()),e.proxy.get("resizeFrame")&&s.setStyles({height:t.get("offsetHeight")+"px",width:t.get("offsetWidth")+"px"}),e.proxy.get("positionProxy")&&s.setXY(e.nodeXY),s.setStyle("visibility","visible")}})},"3.12.0",{requires:["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-proxy/dd-proxy.js b/lib/yuilib/3.12.0/dd-proxy/dd-proxy.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/dd-proxy/dd-proxy.js rename to lib/yuilib/3.12.0/dd-proxy/dd-proxy.js index e27d0149da2..af0a6227733 --- a/lib/yuilib/3.9.1/build/dd-proxy/dd-proxy.js +++ b/lib/yuilib/3.12.0/dd-proxy/dd-proxy.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-proxy', function (Y, NAME) { @@ -247,4 +253,4 @@ YUI.add('dd-proxy', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag"]}); +}, '3.12.0', {"requires": ["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-scroll/dd-scroll-debug.js b/lib/yuilib/3.12.0/dd-scroll/dd-scroll-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/dd-scroll/dd-scroll-debug.js rename to lib/yuilib/3.12.0/dd-scroll/dd-scroll-debug.js index 17de5425420..cb4424956fb --- a/lib/yuilib/3.9.1/build/dd-scroll/dd-scroll-debug.js +++ b/lib/yuilib/3.12.0/dd-scroll/dd-scroll-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-scroll', function (Y, NAME) { @@ -420,4 +426,4 @@ YUI.add('dd-scroll', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag"]}); +}, '3.12.0', {"requires": ["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-scroll/dd-scroll-min.js b/lib/yuilib/3.12.0/dd-scroll/dd-scroll-min.js old mode 100644 new mode 100755 similarity index 92% rename from lib/yuilib/3.9.1/build/dd-scroll/dd-scroll-min.js rename to lib/yuilib/3.12.0/dd-scroll/dd-scroll-min.js index 30c210f4d36..fae49be12b2 --- a/lib/yuilib/3.9.1/build/dd-scroll/dd-scroll-min.js +++ b/lib/yuilib/3.12.0/dd-scroll/dd-scroll-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dd-scroll",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r,i,s="host",o="buffer",u="parentScroll",a="windowScroll",f="scrollTop",l="scrollLeft",c="offsetWidth",h="offsetHeight";n.ATTRS={parentScroll:{value:!1,setter:function(e){return e?e:!1}},buffer:{value:30,validator:e.Lang.isNumber},scrollDelay:{value:235,validator:e.Lang.isNumber},host:{value:null},windowScroll:{value:!1,validator:e.Lang.isBoolean},vertical:{value:!0,validator:e.Lang.isBoolean},horizontal:{value:!0,validator:e.Lang.isBoolean}},e.extend(n,e.Base,{_scrolling:null,_vpRegionCache:null,_dimCache:null,_scrollTimer:null,_getVPRegion:function(){var e={},t=this.get(u),n=this.get(o),r=this.get(a),i=r?[]:t.getXY(),s=r?"winWidth":c,p=r?"winHeight":h,d=r?t.get(f):i[1],v=r?t.get(l):i[0];return e={top:d+n,right:t.get(s)+v-n,bottom:t.get(p)+d-n,left:v+n},this._vpRegionCache=e,e},initializer:function(){var t=this.get(s);t.after("drag:start",e.bind(this.start,this)),t.after("drag:end",e.bind(this.end,this)),t.on("drag:align",e.bind(this.align,this)),e.one("win").on("scroll",e.bind(function(){this._vpRegionCache=null},this))},_checkWinScroll:function(e){var t=this._getVPRegion(),n=this.get(s),r=this.get(a),i=n.lastXY,c=!1,h=this.get(o),p=this.get(u),d=p.get(f),v=p.get(l),m=this._dimCache.w,g=this._dimCache.h,y=i[1]+g,b=i[1],w=i[0]+m,E=i[0],S=b,x=E,T=d,N=v;this.get("horizontal")&&(E<=t.left&&(c=!0,x=i[0]-(r?h:0),N=v-h),w>=t.right&&(c=!0,x=i[0]+(r?h:0),N=v+h)),this.get("vertical")&&(y>=t.bottom&&(c=!0,S=i[1]+(r?h:0),T=d+h),b<=t.top&&(c=!0,S=i[1]-(r?h:0),T=d-h)),T<0&&(T=0,S=i[1]),N<0&&(N=0,x=i[0]),S<0&&(S=i[1]),x<0&&(x=i[0]),e?(n.actXY=[x,S],n._alignNode([x,S],!0),i=n.actXY,n.actXY=[x,S],n._moveNode({node:p,top:T,left:N}),!T&&!N&&this._cancelScroll()):c?this._initScroll():this._cancelScroll()},_initScroll:function(){this._cancelScroll(),this._scrollTimer=e.Lang.later(this.get("scrollDelay"),this,this._checkWinScroll,[!0],!0)},_cancelScroll:function(){this._scrolling=!1,this._scrollTimer&&(this._scrollTimer.cancel(),delete this._scrollTimer)},align:function(e){this._scrolling&&(this._cancelScroll(),e.preventDefault()),this._scrolling||this._checkWinScroll()},_setDimCache:function(){var e=this.get(s).get("dragNode");this._dimCache={h:e.get(h),w:e.get(c)}},start:function(){this._setDimCache()},end:function(){this._dimCache=null,this._cancelScroll()}}),e.namespace("Plugin"),r=function(){r.superclass.constructor.apply(this,arguments)},r.ATTRS=e.merge(n.ATTRS,{windowScroll:{value:!0,setter:function(t){return t&&this.set(u,e.one("win")),t}}}),e.extend(r,n,{initializer:function(){this.set("windowScroll",this.get("windowScroll"))}}),r.NAME=r.NS="winscroll",e.Plugin.DDWinScroll=r,i=function(){i.superclass.constructor.apply(this,arguments)},i.ATTRS=e.merge(n.ATTRS,{node:{value:!1,setter:function(t){var n=e.one(t);return n?this.set(u,n):t!==!1&&e.error("DDNodeScroll: Invalid Node Given: "+t),n}}}),e.extend(i,n,{initializer:function(){this.set("node",this.get("node"))}}),i.NAME=i.NS="nodescroll",e.Plugin.DDNodeScroll=i,e.DD.Scroll=n},"3.9.1",{requires:["dd-drag"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dd-scroll",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r,i,s="host",o="buffer",u="parentScroll",a="windowScroll",f="scrollTop",l="scrollLeft",c="offsetWidth",h="offsetHeight";n.ATTRS={parentScroll:{value:!1,setter:function(e){return e?e:!1}},buffer:{value:30,validator:e.Lang.isNumber},scrollDelay:{value:235,validator:e.Lang.isNumber},host:{value:null},windowScroll:{value:!1,validator:e.Lang.isBoolean},vertical:{value:!0,validator:e.Lang.isBoolean},horizontal:{value:!0,validator:e.Lang.isBoolean}},e.extend(n,e.Base,{_scrolling:null,_vpRegionCache:null,_dimCache:null,_scrollTimer:null,_getVPRegion:function(){var e={},t=this.get(u),n=this.get(o),r=this.get(a),i=r?[]:t.getXY(),s=r?"winWidth":c,p=r?"winHeight":h,d=r?t.get(f):i[1],v=r?t.get(l):i[0];return e={top:d+n,right:t.get(s)+v-n,bottom:t.get(p)+d-n,left:v+n},this._vpRegionCache=e,e},initializer:function(){var t=this.get(s);t.after("drag:start",e.bind(this.start,this)),t.after("drag:end",e.bind(this.end,this)),t.on("drag:align",e.bind(this.align,this)),e.one("win").on("scroll",e.bind(function(){this._vpRegionCache=null},this))},_checkWinScroll:function(e){var t=this._getVPRegion(),n=this.get(s),r=this.get(a),i=n.lastXY,c=!1,h=this.get(o),p=this.get(u),d=p.get(f),v=p.get(l),m=this._dimCache.w,g=this._dimCache.h,y=i[1]+g,b=i[1],w=i[0]+m,E=i[0],S=b,x=E,T=d,N=v;this.get("horizontal")&&(E<=t.left&&(c=!0,x=i[0]-(r?h:0),N=v-h),w>=t.right&&(c=!0,x=i[0]+(r?h:0),N=v+h)),this.get("vertical")&&(y>=t.bottom&&(c=!0,S=i[1]+(r?h:0),T=d+h),b<=t.top&&(c=!0,S=i[1]-(r?h:0),T=d-h)),T<0&&(T=0,S=i[1]),N<0&&(N=0,x=i[0]),S<0&&(S=i[1]),x<0&&(x=i[0]),e?(n.actXY=[x,S],n._alignNode([x,S],!0),i=n.actXY,n.actXY=[x,S],n._moveNode({node:p,top:T,left:N}),!T&&!N&&this._cancelScroll()):c?this._initScroll():this._cancelScroll()},_initScroll:function(){this._cancelScroll(),this._scrollTimer=e.Lang.later(this.get("scrollDelay"),this,this._checkWinScroll,[!0],!0)},_cancelScroll:function(){this._scrolling=!1,this._scrollTimer&&(this._scrollTimer.cancel(),delete this._scrollTimer)},align:function(e){this._scrolling&&(this._cancelScroll(),e.preventDefault()),this._scrolling||this._checkWinScroll()},_setDimCache:function(){var e=this.get(s).get("dragNode");this._dimCache={h:e.get(h),w:e.get(c)}},start:function(){this._setDimCache()},end:function(){this._dimCache=null,this._cancelScroll()}}),e.namespace("Plugin"),r=function(){r.superclass.constructor.apply(this,arguments)},r.ATTRS=e.merge(n.ATTRS,{windowScroll:{value:!0,setter:function(t){return t&&this.set(u,e.one("win")),t}}}),e.extend(r,n,{initializer:function(){this.set("windowScroll",this.get("windowScroll"))}}),r.NAME=r.NS="winscroll",e.Plugin.DDWinScroll=r,i=function(){i.superclass.constructor.apply(this,arguments)},i.ATTRS=e.merge(n.ATTRS,{node:{value:!1,setter:function(t){var n=e.one(t);return n?this.set(u,n):t!==!1&&e.error("DDNodeScroll: Invalid Node Given: "+t),n}}}),e.extend(i,n,{initializer:function(){this.set("node",this.get("node"))}}),i.NAME=i.NS="nodescroll",e.Plugin.DDNodeScroll=i,e.DD.Scroll=n},"3.12.0",{requires:["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dd-scroll/dd-scroll.js b/lib/yuilib/3.12.0/dd-scroll/dd-scroll.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/dd-scroll/dd-scroll.js rename to lib/yuilib/3.12.0/dd-scroll/dd-scroll.js index 17de5425420..cb4424956fb --- a/lib/yuilib/3.9.1/build/dd-scroll/dd-scroll.js +++ b/lib/yuilib/3.12.0/dd-scroll/dd-scroll.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dd-scroll', function (Y, NAME) { @@ -420,4 +426,4 @@ YUI.add('dd-scroll', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-drag"]}); +}, '3.12.0', {"requires": ["dd-drag"]}); diff --git a/lib/yuilib/3.9.1/build/dial/assets/dial-core.css b/lib/yuilib/3.12.0/dial/assets/dial-core.css old mode 100644 new mode 100755 similarity index 87% rename from lib/yuilib/3.9.1/build/dial/assets/dial-core.css rename to lib/yuilib/3.12.0/dial/assets/dial-core.css index c3e7971f675..583630b795b --- a/lib/yuilib/3.9.1/build/dial/assets/dial-core.css +++ b/lib/yuilib/3.12.0/dial/assets/dial-core.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + v\:oval, v\:shadow, v\:fill { diff --git a/lib/yuilib/3.9.1/build/dial/assets/skins/night/dial-skin.css b/lib/yuilib/3.12.0/dial/assets/skins/night/dial-skin.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/dial/assets/skins/night/dial-skin.css rename to lib/yuilib/3.12.0/dial/assets/skins/night/dial-skin.css index b551f5e7708..8f51c903d0a --- a/lib/yuilib/3.9.1/build/dial/assets/skins/night/dial-skin.css +++ b/lib/yuilib/3.12.0/dial/assets/skins/night/dial-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-night .yui3-dial { color:#fff; } diff --git a/lib/yuilib/3.12.0/dial/assets/skins/night/dial.css b/lib/yuilib/3.12.0/dial/assets/skins/night/dial.css new file mode 100755 index 00000000000..edbaa8b6f27 --- /dev/null +++ b/lib/yuilib/3.12.0/dial/assets/skins/night/dial.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +v\:oval,v\:shadow,v\:fill{behavior:url(#default#VML);display:inline-block;zoom:1;*display:inline}.yui3-dial{position:relative;display:-moz-inline-stack;display:inline-block;zoom:1;*display:inline}.yui3-dial-content,.yui3-dial-ring{position:relative}.yui3-dial-handle,.yui3-dial-marker,.yui3-dial-center-button,.yui3-dial-reset-string,.yui3-dial-handle-vml,.yui3-dial-marker-vml,.yui3-dial-center-button-vml,.yui3-dial-ring-vml v\:oval,.yui3-dial-center-button-vml v\:oval{position:absolute}.yui3-dial-center-button-vml v\:oval{font-size:1px;top:0;left:0}.yui3-dial-content .yui3-dial-ring .yui3-dial-hidden v\:oval,.yui3-dial-content .yui3-dial-ring .yui3-dial-hidden{opacity:0;filter:alpha(opacity=0)}.yui3-skin-night .yui3-dial{color:#fff}.yui3-skin-night .yui3-dial-handle{background:#439ede;opacity:.3;-moz-box-shadow:1px 1px 1px rgba(0,0,0,0.9) inset;-webkit-box-shadow:1px 1px 1px rgba(0,0,0,0.9) inset;box-shadow:1px 1px 1px rgba(0,0,0,0.9) inset;cursor:pointer;font-size:1px}.yui3-skin-night .yui3-dial-ring{background:#595b5b;background:-moz-linear-gradient(0% 100% 315deg,#5e6060,#2d2e2f);background:-webkit-gradient(linear,50% 0,100% 100%,from(#636666),to(#424344));-moz-box-shadow:1px 1px 2px rgba(0,0,0,0.7) inset;-webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.7) inset;box-shadow:1px 1px 5px rgba(0,0,0,0.4) inset}.yui3-skin-night .yui3-dial-center-button{-moz-box-shadow:-1px -1px 2px rgba(0,0,0,0.3) inset,1px 1px 2px rgba(0,0,0,0.5);-webkit-box-shadow:-1px -1px 2px rgba(0,0,0,0.3) inset,1px 1px 2px rgba(0,0,0,0.5);box-shadow:-1px -1px 2px rgba(0,0,0,0.3) inset,1px 1px 2px rgba(0,0,0,0.5);background:#dddbd4;background:-moz-radial-gradient(30% 30% 0deg,circle farthest-side,#999c9c 24%,#898989 41%,#535555 87%) repeat scroll 0 0 transparent;background:-webkit-gradient(radial,15 15,15,30 30,40,from(#999c9c),to(#535555),color-stop(.2,#898989));cursor:pointer;opacity:.7}.yui3-skin-night .yui3-dial-reset-string{color:#fff;font-size:72%;text-decoration:none}.yui3-skin-night .yui3-dial-label{color:#cbcbcb;margin-bottom:.8em}.yui3-skin-night .yui3-dial-value-string{margin-left:.5em;color:#dcdcdc;font-size:130%}.yui3-skin-night .yui3-dial-value{visibility:hidden;position:absolute;top:0;left:102%;width:4em}.yui3-skin-night .yui3-dial-north-mark{position:absolute;border-left:2px solid #434343;height:5px;left:50%;top:-7px;font-size:1px}.yui3-skin-night .yui3-dial-marker{background-color:#a0d8ff;opacity:.2;font-size:1px}.yui3-skin-night .yui3-dial-marker-max-min{background-color:#ff0404;opacity:.6}.yui3-skin-night .yui3-dial-ring-vml,.yui3-skin-night .yui3-dial-center-button-vml,.yui3-skin-night .yui3-dial-marker v\:oval.yui3-dial-marker-max-min,.yui3-skin-night v\:oval.yui3-dial-marker-max-min,.yui3-skin-night .yui3-dial-marker-vml,.yui3-skin-night .yui3-dial-handle-vml{background:0;opacity:1}#yui3-css-stamp.skin-night-dial{display:none} diff --git a/lib/yuilib/3.9.1/build/dial/assets/skins/sam/dial-skin.css b/lib/yuilib/3.12.0/dial/assets/skins/sam/dial-skin.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/dial/assets/skins/sam/dial-skin.css rename to lib/yuilib/3.12.0/dial/assets/skins/sam/dial-skin.css index 09ba31d7ed5..a59cb2c1649 --- a/lib/yuilib/3.9.1/build/dial/assets/skins/sam/dial-skin.css +++ b/lib/yuilib/3.12.0/dial/assets/skins/sam/dial-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-sam .yui3-dial-handle{ /*container. top left corner used for trig positioning*/ background:#6C3A3A; opacity:0.3; diff --git a/lib/yuilib/3.9.1/build/dial/assets/skins/sam/dial.css b/lib/yuilib/3.12.0/dial/assets/skins/sam/dial.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/dial/assets/skins/sam/dial.css rename to lib/yuilib/3.12.0/dial/assets/skins/sam/dial.css index 055f89e143a..390f206c7a5 --- a/lib/yuilib/3.9.1/build/dial/assets/skins/sam/dial.css +++ b/lib/yuilib/3.12.0/dial/assets/skins/sam/dial.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + v\:oval,v\:shadow,v\:fill{behavior:url(#default#VML);display:inline-block;zoom:1;*display:inline}.yui3-dial{position:relative;display:-moz-inline-stack;display:inline-block;zoom:1;*display:inline}.yui3-dial-content,.yui3-dial-ring{position:relative}.yui3-dial-handle,.yui3-dial-marker,.yui3-dial-center-button,.yui3-dial-reset-string,.yui3-dial-handle-vml,.yui3-dial-marker-vml,.yui3-dial-center-button-vml,.yui3-dial-ring-vml v\:oval,.yui3-dial-center-button-vml v\:oval{position:absolute}.yui3-dial-center-button-vml v\:oval{font-size:1px;top:0;left:0}.yui3-dial-content .yui3-dial-ring .yui3-dial-hidden v\:oval,.yui3-dial-content .yui3-dial-ring .yui3-dial-hidden{opacity:0;filter:alpha(opacity=0)}.yui3-skin-sam .yui3-dial-handle{background:#6c3a3a;opacity:.3;-moz-box-shadow:1px 1px 1px rgba(0,0,0,0.9) inset;cursor:pointer;font-size:1px}.yui3-skin-sam .yui3-dial-ring{background:#bebdb7;background:-moz-linear-gradient(100% 100% 135deg,#7b7a6d,#fff);background:-webkit-gradient(linear,left top,right bottom,from(#fff),to(#7b7a6d));box-shadow:1px 1px 5px rgba(0,0,0,0.4) inset;-webkit-box-shadow:1px 1px 5px rgba(0,0,0,0.4) inset;-moz-box-shadow:1px 1px 5px rgba(0,0,0,0.4) inset}.yui3-skin-sam .yui3-dial-center-button{box-shadow:-1px -1px 2px rgba(0,0,0,0.3) inset,1px 1px 2px rgba(0,0,0,0.5);-moz-box-shadow:-1px -1px 2px rgba(0,0,0,0.3) inset,1px 1px 2px rgba(0,0,0,0.5);background:#dddbd4;background:-moz-radial-gradient(30% 30% 0deg,circle farthest-side,#fbfbf9 24%,#f2f0ea 41%,#d3d0c3 83%) repeat scroll 0 0 transparent;background:-webkit-gradient(radial,15 15,15,30 30,40,from(#fbfbf9),to(#d3d0c3),color-stop(.2,#f2f0ea));cursor:pointer;opacity:.7}.yui3-skin-sam .yui3-dial-reset-string{color:#676767;font-size:85%;text-decoration:underline}.yui3-skin-sam .yui3-dial-label{color:#808080;margin-bottom:.8em}.yui3-skin-sam .yui3-dial-value-string{margin-left:.5em;color:#000;font-size:130%}.yui3-skin-sam .yui3-dial-value{visibility:hidden;position:absolute;top:0;left:102%;width:4em}.yui3-skin-sam .yui3-dial-north-mark{position:absolute;border-left:2px solid #ccc;height:5px;width:10px;left:50%;top:-7px;font-size:1px}.yui3-skin-sam .yui3-dial-marker{background-color:#000;opacity:.2;font-size:1px}.yui3-skin-sam .yui3-dial-marker-max-min{background-color:#ab3232;opacity:.6}.yui3-skin-sam .yui3-dial-ring-vml,.yui3-skin-sam .yui3-dial-center-button-vml,.yui3-skin-sam .yui3-dial-marker v\:oval.yui3-dial-marker-max-min,.yui3-skin-sam v\:oval.yui3-dial-marker-max-min,.yui3-skin-sam .yui3-dial-marker-vml,.yui3-skin-sam .yui3-dial-handle-vml{background:0;opacity:1}#yui3-css-stamp.skin-sam-dial{display:none} diff --git a/lib/yuilib/3.9.1/build/dial/dial-debug.js b/lib/yuilib/3.12.0/dial/dial-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/dial/dial-debug.js rename to lib/yuilib/3.12.0/dial/dial-debug.js index 80b1075be37..342909509ad --- a/lib/yuilib/3.9.1/build/dial/dial-debug.js +++ b/lib/yuilib/3.12.0/dial/dial-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dial', function (Y, NAME) { /** @@ -729,9 +735,23 @@ YUI.add('dial', function (Y, NAME) { } } - // Now that _timesWrapped is set value ....................................................................... + // Now that _timesWrapped is set, set newValue ....................................................................... newValue = this._getValueFromAngle(ang); // This function needs the correct, current _timesWrapped value. - this._prevAng = ang; + + + /* updating _prevAng (previous angle) + * When past min or max, _prevAng is set to the angle of min or max + * Don't do this in a drag method, or it will affect wrapping, + * causing the marker to stick at min, when min is 0 degrees (north) + * #2532878 + */ + if (newValue > this._maxValue) { + this._prevAng = this._getAngleFromValue(this._maxValue); // #2530766 need for mousedown on the ring; causes prob for drag + } else if (newValue < this._minValue) { + this._prevAng = this._getAngleFromValue(this._minValue); + } else { + this._prevAng = ang; + } this._handleValuesBeyondMinMax(e, newValue); } @@ -739,6 +759,7 @@ YUI.add('dial', function (Y, NAME) { /** * handles the case where the value is less than min or greater than max + * This is used both when handle is dragged and when the ring is clicked * * @method _handleValuesBeyondMinMax * @param e {DOMEvent} the event object @@ -755,12 +776,10 @@ YUI.add('dial', function (Y, NAME) { // Delegate to DD's natural behavior this._dd1._handleMouseDownEvent(e); } - } else if(newValue > this._maxValue){ + } else if (newValue > this._maxValue) { this.set('value', this._maxValue); - this._prevAng = this._getAngleFromValue(this._maxValue); // #2530766 need for mousedown on the ring; causes prob for drag - } else if(newValue < this._minValue){ + } else if (newValue < this._minValue) { this.set('value', this._minValue); - this._prevAng = this._getAngleFromValue(this._minValue); } }, @@ -1296,7 +1315,7 @@ YUI.add('dial', function (Y, NAME) { Y.Dial = Dial; -}, '3.9.1', { +}, '3.12.0', { "requires": [ "widget", "dd-drag", @@ -1308,7 +1327,8 @@ YUI.add('dial', function (Y, NAME) { ], "lang": [ "en", - "es" + "es", + "hu" ], "skinnable": true }); diff --git a/lib/yuilib/3.9.1/build/dial/dial-min.js b/lib/yuilib/3.12.0/dial/dial-min.js old mode 100644 new mode 100755 similarity index 52% rename from lib/yuilib/3.9.1/build/dial/dial-min.js rename to lib/yuilib/3.12.0/dial/dial-min.js index 5f72beeba61..88ab802570b --- a/lib/yuilib/3.9.1/build/dial/dial-min.js +++ b/lib/yuilib/3.12.0/dial/dial-min.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("dial",function(e,t){function o(e){o.superclass.constructor.apply(this,arguments)}function u(t){return e.ClassNameManager.getClassName(o.NAME,t)}var n=!1;e.UA.ie&&e.UA.ie<9&&(n=!0);var r=e.Lang,i=e.Widget,s=e.Node;o.NAME="dial",o.ATTRS={min:{value:-220},max:{value:220},diameter:{value:100},handleDiameter:{value:.2},markerDiameter:{value:.1},centerButtonDiameter:{value:.5},value:{value:0,validator:function(e){return this._validateValue(e)}},minorStep:{value:1},majorStep:{value:10},stepsPerRevolution:{value:100},decimalPlaces:{value:0},strings:{valueFn:function(){return e.Intl.get("dial")}},handleDistance:{value:.75}},o.CSS_CLASSES={label:u("label"),labelString:u("label-string"),valueString:u("value-string"),northMark:u("north-mark"),ring:u("ring"),ringVml:u("ring-vml"),marker:u("marker"),markerVml:u("marker-vml"),markerMaxMin:u("marker-max-min"),centerButton:u("center-button"),centerButtonVml:u("center-button-vml"),resetString:u("reset-string"),handle:u("handle"),handleVml:u("handle-vml"),hidden:u("hidden"),dragging:e.ClassNameManager.getClassName("dd-dragging")},o.LABEL_TEMPLATE='
    {label}
    ',n===!1?(o.RING_TEMPLATE='
    ',o.MARKER_TEMPLATE='
    ',o.CENTER_BUTTON_TEMPLATE='
    {resetStr}
    ',o.HANDLE_TEMPLATE='
    '):(o.RING_TEMPLATE='
    '+'
    '+''+"
    "+"",o.MARKER_TEMPLATE='
    '+''+''+""+"
    "+"",o.CENTER_BUTTON_TEMPLATE='
    '+''+''+''+""+'
    {resetStr}
    '+"
    "+"",o.HANDLE_TEMPLATE='
    '+''+''+""+"
    "+""),e.extend(o,i,{renderUI:function(){this._renderLabel(),this._renderRing(),this._renderMarker(),this._renderCenterButton(),this._renderHandle(),this.contentBox=this.get("contentBox"),this._originalValue=this.get("value"),this._minValue=this.get("min"),this._maxValue=this.get("max"),this._stepsPerRevolution=this.get("stepsPerRevolution"),this._minTimesWrapped=Math.floor(this._minValue/this._stepsPerRevolution-1),this._maxTimesWrapped=Math.floor(this._maxValue/this._stepsPerRevolution+1),this._timesWrapped=0,this._angle=this._getAngleFromValue(this.get("value")),this._prevAng=this._angle,this._setTimesWrappedFromValue(this._originalValue),this._handleNode.set("aria-valuemin",this._minValue),this._handleNode.set("aria-valuemax",this._maxValue)},_setBorderRadius:function(){this._ringNode.setStyles({WebkitBorderRadius:this._ringNodeRadius+"px",MozBorderRadius:this._ringNodeRadius+"px",borderRadius:this._ringNodeRadius+"px"}),this._handleNode.setStyles({WebkitBorderRadius:this._handleNodeRadius+"px",MozBorderRadius:this._handleNodeRadius+"px",borderRadius:this._handleNodeRadius+"px"}),this._markerNode.setStyles({WebkitBorderRadius:this._markerNodeRadius+"px",MozBorderRadius:this._markerNodeRadius+"px",borderRadius:this._markerNodeRadius+"px"}),this._centerButtonNode.setStyles({WebkitBorderRadius:this._centerButtonNodeRadius+"px",MozBorderRadius:this._centerButtonNodeRadius+"px",borderRadius:this._centerButtonNodeRadius+"px"})},_handleCenterButtonEnter:function(){this._resetString.removeClass(o.CSS_CLASSES.hidden)},_handleCenterButtonLeave:function(){this._resetString.addClass(o.CSS_CLASSES.hidden)},bindUI:function(){this.after("valueChange",this._afterValueChange);var t=this.get("boundingBox"),n=e.UA.opera?"press:":"down:",r=n+"38,40,33,34,35,36",i=n+"37,39",s=n+"37+meta,39+meta",o=e.DD.Drag;e.on("key",e.bind(this._onDirectionKey,this),t,r),e.on("key",e.bind(this._onLeftRightKey,this),t,i),t.on("key",this._onLeftRightKeyMeta,s,this),e.on("mouseenter",e.bind(this._handleCenterButtonEnter,this),this._centerButtonNode),e.on("mouseleave",e.bind(this._handleCenterButtonLeave,this),this._centerButtonNode),e.on("gesturemovestart",e.bind(this._resetDial,this),this._centerButtonNode),e.on("gesturemoveend",e.bind(this._handleCenterButtonMouseup,this),this._centerButtonNode),e.on(o.START_EVENT,e.bind(this._handleHandleMousedown,this),this._handleNode),e.on(o.START_EVENT,e.bind(this._handleMousedown,this),this._ringNode),e.on("gesturemoveend",e.bind(this._handleRingMouseup,this),this._ringNode),this._dd1=new o({node:this._handleNode,on:{"drag:drag":e.bind(this._handleDrag,this),"drag:start":e.bind(this._handleDragStart,this),"drag:end":e.bind(this._handleDragEnd,this)}}),e.bind(this._dd1.addHandle(this._ringNode),this)},_setTimesWrappedFromValue:function(e){e%this._stepsPerRevolution===0?this._timesWrapped=e/this._stepsPerRevolution:this._timesWrapped=Math.floor(e/this._stepsPerRevolution)},_getAngleFromHandleCenter:function(e,t){var n=Math.atan(( -this._dialCenterY-t)/(this._dialCenterX-e))*(180/Math.PI);return n=this._dialCenterX-e<0?n+90:n+90+180,n},_calculateDialCenter:function(){this._dialCenterX=this._ringNode.get("offsetWidth")/2,this._dialCenterY=this._ringNode.get("offsetHeight")/2},_handleRingMouseup:function(){this._handleNode.focus()},_handleCenterButtonMouseup:function(){this._handleNode.focus()},_handleHandleMousedown:function(){this._handleNode.focus()},_handleDrag:function(e){var t,n,r,i;t=parseInt(this._handleNode.getStyle("left"),10)+this._handleNodeRadius,n=parseInt(this._handleNode.getStyle("top"),10)+this._handleNodeRadius,r=this._getAngleFromHandleCenter(t,n),this._prevAng>270&&r<90?this._timesWrapped270&&this._timesWrapped>this._minTimesWrapped&&(this._timesWrapped=this._timesWrapped-1),i=this._getValueFromAngle(r),i>this._maxValue+this._stepsPerRevolution?this._timesWrapped--:ithis._stepsPerRevolution)Math.abs(this._prevAng-a)>180?this._timesWrapped>this._minTimesWrapped&&this._timesWrapped0?this._timesWrapped+1:this._timesWrapped-1):this._timesWrapped===this._minTimesWrapped&&a-this._prevAng<180&&this._timesWrapped++;else if(this._maxValue-this._minValue===this._stepsPerRevolution)ar)this._prevAng>=n&&a<=(n+r)/2?this._timesWrapped++:this._prevAng<=r&&a>(n+r)/2&&this._timesWrapped--;else if(ar){s=((n+r)/2+180)%360,s>180?i=ra&&a>s?this.get("min"):this.get("max"),this._prevAng=this._getAngleFromValue(i),this.set("value",i),this._setTimesWrappedFromValue(i);return}i=this._getValueFromAngle(a),this._prevAng=a,this._handleValuesBeyondMinMax(t,i)}},_handleValuesBeyondMinMax:function(e,t){t>=this._minValue&&t<=this._maxValue?(this.set("value",t),e.currentTarget===this._ringNode&&this._dd1._handleMouseDownEvent(e)):t>this._maxValue?(this.set("value",this._maxValue),this._prevAng=this._getAngleFromValue(this._maxValue)):tthis._minValue&&e=t&&e<=n}}),e.Dial=o},"3.9.1",{requires:["widget","dd-drag","event-mouseenter","event-move","event-key","transition","intl"],lang:["en","es"],skinnable:!0}); +this._dialCenterY-t)/(this._dialCenterX-e))*(180/Math.PI);return n=this._dialCenterX-e<0?n+90:n+90+180,n},_calculateDialCenter:function(){this._dialCenterX=this._ringNode.get("offsetWidth")/2,this._dialCenterY=this._ringNode.get("offsetHeight")/2},_handleRingMouseup:function(){this._handleNode.focus()},_handleCenterButtonMouseup:function(){this._handleNode.focus()},_handleHandleMousedown:function(){this._handleNode.focus()},_handleDrag:function(e){var t,n,r,i;t=parseInt(this._handleNode.getStyle("left"),10)+this._handleNodeRadius,n=parseInt(this._handleNode.getStyle("top"),10)+this._handleNodeRadius,r=this._getAngleFromHandleCenter(t,n),this._prevAng>270&&r<90?this._timesWrapped270&&this._timesWrapped>this._minTimesWrapped&&(this._timesWrapped=this._timesWrapped-1),i=this._getValueFromAngle(r),i>this._maxValue+this._stepsPerRevolution?this._timesWrapped--:ithis._stepsPerRevolution)Math.abs(this._prevAng-a)>180?this._timesWrapped>this._minTimesWrapped&&this._timesWrapped0?this._timesWrapped+1:this._timesWrapped-1):this._timesWrapped===this._minTimesWrapped&&a-this._prevAng<180&&this._timesWrapped++;else if(this._maxValue-this._minValue===this._stepsPerRevolution)ar)this._prevAng>=n&&a<=(n+r)/2?this._timesWrapped++:this._prevAng<=r&&a>(n+r)/2&&this._timesWrapped--;else if(ar){s=((n+r)/2+180)%360,s>180?i=ra&&a>s?this.get("min"):this.get("max"),this._prevAng=this._getAngleFromValue(i),this.set("value",i),this._setTimesWrappedFromValue(i);return}i=this._getValueFromAngle(a),i>this._maxValue?this._prevAng=this._getAngleFromValue(this._maxValue):i=this._minValue&&t<=this._maxValue?(this.set("value",t),e.currentTarget===this._ringNode&&this._dd1._handleMouseDownEvent(e)):t>this._maxValue?this.set("value",this._maxValue):tthis._minValue&&e=t&&e<=n}}),e.Dial=o},"3.12.0",{requires:["widget","dd-drag","event-mouseenter","event-move","event-key","transition","intl"],lang:["en","es","hu"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/dial/dial.js b/lib/yuilib/3.12.0/dial/dial.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/dial/dial.js rename to lib/yuilib/3.12.0/dial/dial.js index 80b1075be37..342909509ad --- a/lib/yuilib/3.9.1/build/dial/dial.js +++ b/lib/yuilib/3.12.0/dial/dial.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dial', function (Y, NAME) { /** @@ -729,9 +735,23 @@ YUI.add('dial', function (Y, NAME) { } } - // Now that _timesWrapped is set value ....................................................................... + // Now that _timesWrapped is set, set newValue ....................................................................... newValue = this._getValueFromAngle(ang); // This function needs the correct, current _timesWrapped value. - this._prevAng = ang; + + + /* updating _prevAng (previous angle) + * When past min or max, _prevAng is set to the angle of min or max + * Don't do this in a drag method, or it will affect wrapping, + * causing the marker to stick at min, when min is 0 degrees (north) + * #2532878 + */ + if (newValue > this._maxValue) { + this._prevAng = this._getAngleFromValue(this._maxValue); // #2530766 need for mousedown on the ring; causes prob for drag + } else if (newValue < this._minValue) { + this._prevAng = this._getAngleFromValue(this._minValue); + } else { + this._prevAng = ang; + } this._handleValuesBeyondMinMax(e, newValue); } @@ -739,6 +759,7 @@ YUI.add('dial', function (Y, NAME) { /** * handles the case where the value is less than min or greater than max + * This is used both when handle is dragged and when the ring is clicked * * @method _handleValuesBeyondMinMax * @param e {DOMEvent} the event object @@ -755,12 +776,10 @@ YUI.add('dial', function (Y, NAME) { // Delegate to DD's natural behavior this._dd1._handleMouseDownEvent(e); } - } else if(newValue > this._maxValue){ + } else if (newValue > this._maxValue) { this.set('value', this._maxValue); - this._prevAng = this._getAngleFromValue(this._maxValue); // #2530766 need for mousedown on the ring; causes prob for drag - } else if(newValue < this._minValue){ + } else if (newValue < this._minValue) { this.set('value', this._minValue); - this._prevAng = this._getAngleFromValue(this._minValue); } }, @@ -1296,7 +1315,7 @@ YUI.add('dial', function (Y, NAME) { Y.Dial = Dial; -}, '3.9.1', { +}, '3.12.0', { "requires": [ "widget", "dd-drag", @@ -1308,7 +1327,8 @@ YUI.add('dial', function (Y, NAME) { ], "lang": [ "en", - "es" + "es", + "hu" ], "skinnable": true }); diff --git a/lib/yuilib/3.12.0/dial/lang/dial.js b/lib/yuilib/3.12.0/dial/lang/dial.js new file mode 100755 index 00000000000..9d2a7653271 --- /dev/null +++ b/lib/yuilib/3.12.0/dial/lang/dial.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/dial",function(e){e.Intl.add("dial","",{label:"My label",resetStr:"Reset",tooltipHandle:"Drag to set value"})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/dial/lang/dial_en.js b/lib/yuilib/3.12.0/dial/lang/dial_en.js new file mode 100755 index 00000000000..b85723894f3 --- /dev/null +++ b/lib/yuilib/3.12.0/dial/lang/dial_en.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/dial_en",function(e){e.Intl.add("dial","en",{label:"My label",resetStr:"Reset",tooltipHandle:"Drag to set value"})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/dial/lang/dial_es.js b/lib/yuilib/3.12.0/dial/lang/dial_es.js new file mode 100755 index 00000000000..699ef8e79f1 --- /dev/null +++ b/lib/yuilib/3.12.0/dial/lang/dial_es.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/dial_es",function(e){e.Intl.add("dial","es",{label:"Mi etiqueta",resetStr:"Resetear",tooltipHandle:"Arrastre para ajustar el valor"})},"3.12.0"); diff --git a/lib/yuilib/3.12.0/dial/lang/dial_hu.js b/lib/yuilib/3.12.0/dial/lang/dial_hu.js new file mode 100755 index 00000000000..cf86d981e2b --- /dev/null +++ b/lib/yuilib/3.12.0/dial/lang/dial_hu.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("lang/dial_hu",function(e){e.Intl.add("dial","hu",{label:"Saj\u00e1t c\u00edmke",resetStr:"\u00dajrakezd",tooltipHandle:"H\u00e1zza az \u00e9rt\u00e9k be\u00e1ll\u00edt\u00e1s\u00e1hoz"})},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/dom-base/dom-base-debug.js b/lib/yuilib/3.12.0/dom-base/dom-base-debug.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/dom-base/dom-base-debug.js rename to lib/yuilib/3.12.0/dom-base/dom-base-debug.js index dbd0b1ed789..24d81ed7e22 --- a/lib/yuilib/3.9.1/build/dom-base/dom-base-debug.js +++ b/lib/yuilib/3.12.0/dom-base/dom-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dom-base', function (Y, NAME) { /** @@ -686,4 +692,4 @@ Y.mix(Y.DOM, { }); -}, '3.9.1', {"requires": ["dom-core"]}); +}, '3.12.0', {"requires": ["dom-core"]}); diff --git a/lib/yuilib/3.9.1/build/dom-base/dom-base-min.js b/lib/yuilib/3.12.0/dom-base/dom-base-min.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/dom-base/dom-base-min.js rename to lib/yuilib/3.12.0/dom-base/dom-base-min.js index 7ce57bcee85..c043f85bc2b --- a/lib/yuilib/3.9.1/build/dom-base/dom-base-min.js +++ b/lib/yuilib/3.12.0/dom-base/dom-base-min.js @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("dom-base",function(e,t){var n=e.config.doc.documentElement,r=e.DOM,i="tagName",s="ownerDocument",o="",u=e.Features.add,a=e.Features.test;e.mix(r,{getText:n.textContent!==undefined?function(e){var t="";return e&&(t=e.textContent),t||""}:function(e){var t="";return e&&(t=e.innerText||e.nodeValue),t||""},setText:n.textContent!==undefined?function(e,t){e&&(e.textContent=t)}:function(e,t){"innerText"in e?e.innerText=t:"nodeValue"in e&&(e.nodeValue=t)},CUSTOM_ATTRIBUTES:n.hasAttribute?{htmlFor:"for",className:"class"}:{"for":"htmlFor","class":"className"},setAttribute:function(e,t,n,i){e&&t&&e.setAttribute&&(t=r.CUSTOM_ATTRIBUTES[t]||t,e.setAttribute(t,n,i))},getAttribute:function(e,t,n){n=n!==undefined?n:2;var i="";return e&&t&&e.getAttribute&&(t=r.CUSTOM_ATTRIBUTES[t]||t,i=e.getAttribute(t,n),i===null&&(i="")),i},VALUE_SETTERS:{},VALUE_GETTERS:{},getValue:function(e){var t="",n;return e&&e[i]&&(n=r.VALUE_GETTERS[e[i].toLowerCase()],n?t=n(e):t=e.value),t===o&&(t=o),typeof t=="string"?t:""},setValue:function(e,t){var n;e&&e[i]&&(n=r.VALUE_SETTERS[e[i].toLowerCase()],n?n(e,t):e.value=t)},creators:{}}),u("value-set","select",{test:function(){var t=e.config.doc.createElement("select");return t.innerHTML="",t.value="2",t.value&&t.value==="2"}}),a("value-set","select")||(r.VALUE_SETTERS.select=function(e,t){for(var n=0,i=e.getElementsByTagName("option"),s;s=i[n++];)if(r.getValue(s)===t){s.selected=!0;break}}),e.mix(r.VALUE_GETTERS,{button:function(e){return e.attributes&&e.attributes.value?e.attributes.value.value:""}}),e.mix(r.VALUE_SETTERS,{button:function(e,t){var n=e.attributes.value;n||(n=e[s].createAttribute("value"),e.setAttributeNode(n)),n.value=t}}),e.mix(r.VALUE_GETTERS,{option:function(e){var t=e.attributes;return t.value&&t.value.specified?e.value:e.text},select:function(e){var t=e.value,n=e.options;return n&&n.length&&(e.multiple||e.selectedIndex>-1&&(t=r.getValue(n[e.selectedIndex]))),t}});var f,l,c;e.mix(e.DOM,{hasClass:function(t,n){var r=e.DOM._getRegExp("(?:^|\\s+)"+n+"(?:\\s+|$)");return r.test(t.className)},addClass:function(t,n){e.DOM.hasClass(t,n)||(t.className=e.Lang.trim([t.className,n].join(" ")))},removeClass:function(t,n){n&&l(t,n)&&(t.className=e.Lang.trim(t.className.replace(e.DOM._getRegExp("(?:^|\\s+)"+n+"(?:\\s+|$)")," ")),l(t,n)&&c(t,n))},replaceClass:function(e,t,n){c(e,t),f(e,n)},toggleClass:function(e,t,n){var r=n!==undefined?n:!l(e,t);r?f(e,t):c(e,t)}}),l=e.DOM.hasClass,c=e.DOM.removeClass,f=e.DOM.addClass;var h=/<([a-z]+)/i,r=e.DOM,u=e.Features.add,a=e.Features.test,p={},d=function(t,n){var r=e.config.doc.createElement("div"),i=!0;r.innerHTML=t;if(!r.firstChild||r.firstChild.tagName!==n.toUpperCase())i=!1;return i},v=/(?:\/(?:thead|tfoot|tbody|caption|col|colgroup)>)+\s*
    "}catch(n){return!1}return t.firstChild&&t.firstChild.nodeName==="TBODY"}}),u("innerhtml-div","tr",{test:function(){return d("","tr")}}),u("innerhtml-div","script",{test:function(){return d("","script")}}),a("innerhtml","table")||(p.tbody=function(t,n){var i=r.create(m+t+g,n),s=e.DOM._children(i,"tbody")[0];return i.children.length>1&&s&&!v.test(t)&&s.parentNode.removeChild(s),i}),a("innerhtml-div","script")||(p.script=function(e,t){var n=t.createElement("div");return n.innerHTML="-"+e,n.removeChild(n.firstChild),n},p.link=p.style=p.script),a("innerhtml-div","tr")||(e.mix(p,{option:function(e,t){return r.create('",t)},tr:function(e,t){return r.create(""+e+"",t)},td:function(e,t){return r.create(""+e+"",t)},col:function(e,t){return r.create(""+e+"",t)},tbody:"table"}),e.mix(p,{legend:"fieldset",th:p.td,thead:p.tbody,tfoot:p.tbody,caption:p.tbody,colgroup:p.tbody,optgroup:p.option})),r.creators=p,e.mix( -e.DOM,{setWidth:function(t,n){e.DOM._setSize(t,"width",n)},setHeight:function(t,n){e.DOM._setSize(t,"height",n)},_setSize:function(e,t,n){n=n>0?n:0;var r=0;e.style[t]=n+"px",r=t==="height"?e.offsetHeight:e.offsetWidth,r>n&&(n-=r-n,n<0&&(n=0),e.style[t]=n+"px")}})},"3.9.1",{requires:["dom-core"]}); +e.DOM,{setWidth:function(t,n){e.DOM._setSize(t,"width",n)},setHeight:function(t,n){e.DOM._setSize(t,"height",n)},_setSize:function(e,t,n){n=n>0?n:0;var r=0;e.style[t]=n+"px",r=t==="height"?e.offsetHeight:e.offsetWidth,r>n&&(n-=r-n,n<0&&(n=0),e.style[t]=n+"px")}})},"3.12.0",{requires:["dom-core"]}); diff --git a/lib/yuilib/3.9.1/build/dom-base/dom-base.js b/lib/yuilib/3.12.0/dom-base/dom-base.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/dom-base/dom-base.js rename to lib/yuilib/3.12.0/dom-base/dom-base.js index c0110345b05..f9030bcbfea --- a/lib/yuilib/3.9.1/build/dom-base/dom-base.js +++ b/lib/yuilib/3.12.0/dom-base/dom-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dom-base', function (Y, NAME) { /** @@ -682,4 +688,4 @@ Y.mix(Y.DOM, { }); -}, '3.9.1', {"requires": ["dom-core"]}); +}, '3.12.0', {"requires": ["dom-core"]}); diff --git a/lib/yuilib/3.9.1/build/dom-core/dom-core-debug.js b/lib/yuilib/3.12.0/dom-core/dom-core-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/dom-core/dom-core-debug.js rename to lib/yuilib/3.12.0/dom-core/dom-core-debug.js index 51e49624b2a..fb74b665a9a --- a/lib/yuilib/3.9.1/build/dom-core/dom-core-debug.js +++ b/lib/yuilib/3.12.0/dom-core/dom-core-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dom-core', function (Y, NAME) { var NODE_TYPE = 'nodeType', @@ -387,4 +393,4 @@ Y_DOM = { Y.DOM = Y_DOM; -}, '3.9.1', {"requires": ["oop", "features"]}); +}, '3.12.0', {"requires": ["oop", "features"]}); diff --git a/lib/yuilib/3.9.1/build/dom-core/dom-core-min.js b/lib/yuilib/3.12.0/dom-core/dom-core-min.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/dom-core/dom-core-min.js rename to lib/yuilib/3.12.0/dom-core/dom-core-min.js index 02201cc494d..539957bc024 --- a/lib/yuilib/3.9.1/build/dom-core/dom-core-min.js +++ b/lib/yuilib/3.12.0/dom-core/dom-core-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dom-core",function(e,t){var n="nodeType",r="ownerDocument",i="documentElement",s="defaultView",o="parentWindow",u="tagName",a="parentNode",f="previousSibling",l="nextSibling",c="contains",h="compareDocumentPosition",p=[],d=function(){var t=e.config.doc.createElement("div"),n=t.appendChild(e.config.doc.createTextNode("")),r=!1;try{r=t.contains(n)}catch(i){}return r}(),v={byId:function(e,t){return v.allById(e,t)[0]||null},getId:function(e){var t;return e.id&&!e.id.tagName&&!e.id.item?t=e.id:e.attributes&&e.attributes.id&&(t=e.attributes.id.value),t},setId:function(e,t){e.setAttribute?e.setAttribute("id",t):e.id=t},ancestor:function(e,t,n,r){var i=null;return n&&(i=!t||t(e)?e:null),i||v.elementByAxis(e,a,t,null,r)},ancestors:function(e,t,n,r){var i=e,s=[];while(i=v.ancestor(i,t,n,r)){n=!1;if(i){s.unshift(i);if(r&&r(i))return s}}return s},elementByAxis:function(e,t,n,r,i){while(e&&(e=e[t])){if((r||e[u])&&(!n||n(e)))return e;if(i&&i(e))return null}return null},contains:function(e,t){var r=!1;if(!t||!e||!t[n]||!e[n])r=!1;else if(e[c]&&(t[n]===1||d))r=e[c](t);else if(e[h]){if(e===t||!!(e[h](t)&16))r=!0}else r=v._bruteContains(e,t);return r},inDoc:function(e,t){var n=!1,s;return e&&e.nodeType&&(t||(t=e[r]),s=t[i],s&&s.contains&&e.tagName?n=s.contains(e):n=v.contains(s,e)),n},allById:function(t,n){n=n||e.config.doc;var r=[],i=[],s,o;if(n.querySelectorAll)i=n.querySelectorAll('[id="'+t+'"]');else if(n.all){r=n.all(t);if(r){r.nodeName&&(r.id===t?(i.push(r),r=p):r=[r]);if(r.length)for(s=0;o=r[s++];)(o.id===t||o.attributes&&o.attributes.id&&o.attributes.id.value===t)&&i.push(o)}}else i=[v._getDoc(n).getElementById(t)];return i},isWindow:function(e){return!!(e&&e.scrollTo&&e.document)},_removeChildNodes:function(e){while(e.firstChild)e.removeChild(e.firstChild)},siblings:function(e,t){var n=[],r=e;while(r=r[f])r[u]&&(!t||t(r))&&n.unshift(r);r=e;while(r=r[l])r[u]&&(!t||t(r))&&n.push(r);return n},_bruteContains:function(e,t){while(t){if(e===t)return!0;t=t.parentNode}return!1},_getRegExp:function(e,t){return t=t||"",v._regexCache=v._regexCache||{},v._regexCache[e+t]||(v._regexCache[e+t]=new RegExp(e,t)),v._regexCache[e+t]},_getDoc:function(t){var i=e.config.doc;return t&&(i=t[n]===9?t:t[r]||t.document||e.config.doc),i},_getWin:function(t){var n=v._getDoc(t);return n[s]||n[o]||e.config.win},_batch:function(e,t,n,r,i,s){t=typeof t=="string"?v[t]:t;var o,u=0,a,f;if(t&&e)while(a=e[u++])o=o=t.call(v,a,n,r,i,s),typeof o!="undefined"&&(f||(f=[]),f.push(o));return typeof f!="undefined"?f:e},generateID:function(t){var n=t.id;return n||(n=e.stamp(t),t.id=n),n}};e.DOM=v},"3.9.1",{requires:["oop","features"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dom-core",function(e,t){var n="nodeType",r="ownerDocument",i="documentElement",s="defaultView",o="parentWindow",u="tagName",a="parentNode",f="previousSibling",l="nextSibling",c="contains",h="compareDocumentPosition",p=[],d=function(){var t=e.config.doc.createElement("div"),n=t.appendChild(e.config.doc.createTextNode("")),r=!1;try{r=t.contains(n)}catch(i){}return r}(),v={byId:function(e,t){return v.allById(e,t)[0]||null},getId:function(e){var t;return e.id&&!e.id.tagName&&!e.id.item?t=e.id:e.attributes&&e.attributes.id&&(t=e.attributes.id.value),t},setId:function(e,t){e.setAttribute?e.setAttribute("id",t):e.id=t},ancestor:function(e,t,n,r){var i=null;return n&&(i=!t||t(e)?e:null),i||v.elementByAxis(e,a,t,null,r)},ancestors:function(e,t,n,r){var i=e,s=[];while(i=v.ancestor(i,t,n,r)){n=!1;if(i){s.unshift(i);if(r&&r(i))return s}}return s},elementByAxis:function(e,t,n,r,i){while(e&&(e=e[t])){if((r||e[u])&&(!n||n(e)))return e;if(i&&i(e))return null}return null},contains:function(e,t){var r=!1;if(!t||!e||!t[n]||!e[n])r=!1;else if(e[c]&&(t[n]===1||d))r=e[c](t);else if(e[h]){if(e===t||!!(e[h](t)&16))r=!0}else r=v._bruteContains(e,t);return r},inDoc:function(e,t){var n=!1,s;return e&&e.nodeType&&(t||(t=e[r]),s=t[i],s&&s.contains&&e.tagName?n=s.contains(e):n=v.contains(s,e)),n},allById:function(t,n){n=n||e.config.doc;var r=[],i=[],s,o;if(n.querySelectorAll)i=n.querySelectorAll('[id="'+t+'"]');else if(n.all){r=n.all(t);if(r){r.nodeName&&(r.id===t?(i.push(r),r=p):r=[r]);if(r.length)for(s=0;o=r[s++];)(o.id===t||o.attributes&&o.attributes.id&&o.attributes.id.value===t)&&i.push(o)}}else i=[v._getDoc(n).getElementById(t)];return i},isWindow:function(e){return!!(e&&e.scrollTo&&e.document)},_removeChildNodes:function(e){while(e.firstChild)e.removeChild(e.firstChild)},siblings:function(e,t){var n=[],r=e;while(r=r[f])r[u]&&(!t||t(r))&&n.unshift(r);r=e;while(r=r[l])r[u]&&(!t||t(r))&&n.push(r);return n},_bruteContains:function(e,t){while(t){if(e===t)return!0;t=t.parentNode}return!1},_getRegExp:function(e,t){return t=t||"",v._regexCache=v._regexCache||{},v._regexCache[e+t]||(v._regexCache[e+t]=new RegExp(e,t)),v._regexCache[e+t]},_getDoc:function(t){var i=e.config.doc;return t&&(i=t[n]===9?t:t[r]||t.document||e.config.doc),i},_getWin:function(t){var n=v._getDoc(t);return n[s]||n[o]||e.config.win},_batch:function(e,t,n,r,i,s){t=typeof t=="string"?v[t]:t;var o,u=0,a,f;if(t&&e)while(a=e[u++])o=o=t.call(v,a,n,r,i,s),typeof o!="undefined"&&(f||(f=[]),f.push(o));return typeof f!="undefined"?f:e},generateID:function(t){var n=t.id;return n||(n=e.stamp(t),t.id=n),n}};e.DOM=v},"3.12.0",{requires:["oop","features"]}); diff --git a/lib/yuilib/3.9.1/build/dom-core/dom-core.js b/lib/yuilib/3.12.0/dom-core/dom-core.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/dom-core/dom-core.js rename to lib/yuilib/3.12.0/dom-core/dom-core.js index 51e49624b2a..fb74b665a9a --- a/lib/yuilib/3.9.1/build/dom-core/dom-core.js +++ b/lib/yuilib/3.12.0/dom-core/dom-core.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dom-core', function (Y, NAME) { var NODE_TYPE = 'nodeType', @@ -387,4 +393,4 @@ Y_DOM = { Y.DOM = Y_DOM; -}, '3.9.1', {"requires": ["oop", "features"]}); +}, '3.12.0', {"requires": ["oop", "features"]}); diff --git a/lib/yuilib/3.9.1/build/dom-screen/dom-screen-debug.js b/lib/yuilib/3.12.0/dom-screen/dom-screen-debug.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/dom-screen/dom-screen-debug.js rename to lib/yuilib/3.12.0/dom-screen/dom-screen-debug.js index 39b381adbb0..49e118b2572 --- a/lib/yuilib/3.9.1/build/dom-screen/dom-screen-debug.js +++ b/lib/yuilib/3.12.0/dom-screen/dom-screen-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dom-screen', function (Y, NAME) { (function(Y) { @@ -609,4 +615,4 @@ Y.mix(DOM, { })(Y); -}, '3.9.1', {"requires": ["dom-base", "dom-style"]}); +}, '3.12.0', {"requires": ["dom-base", "dom-style"]}); diff --git a/lib/yuilib/3.9.1/build/dom-screen/dom-screen-min.js b/lib/yuilib/3.12.0/dom-screen/dom-screen-min.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/dom-screen/dom-screen-min.js rename to lib/yuilib/3.12.0/dom-screen/dom-screen-min.js index a09dbf1971e..9f48f13ebe6 --- a/lib/yuilib/3.9.1/build/dom-screen/dom-screen-min.js +++ b/lib/yuilib/3.12.0/dom-screen/dom-screen-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dom-screen",function(e,t){(function(e){var t="documentElement",n="compatMode",r="position",i="fixed",s="relative",o="left",u="top",a="BackCompat",f="medium",l="borderLeftWidth",c="borderTopWidth",h="getBoundingClientRect",p="getComputedStyle",d=e.DOM,v=/^t(?:able|d|h)$/i,m;e.UA.ie&&(e.config.doc[n]!=="BackCompat"?m=t:m="body"),e.mix(d,{winHeight:function(e){var t=d._getWinSize(e).height;return t},winWidth:function(e){var t=d._getWinSize(e).width;return t},docHeight:function(e){var t=d._getDocSize(e).height;return Math.max(t,d._getWinSize(e).height)},docWidth:function(e){var t=d._getDocSize(e).width;return Math.max(t,d._getWinSize(e).width)},docScrollX:function(n,r){r=r||n?d._getDoc(n):e.config.doc;var i=r.defaultView,s=i?i.pageXOffset:0;return Math.max(r[t].scrollLeft,r.body.scrollLeft,s)},docScrollY:function(n,r){r=r||n?d._getDoc(n):e.config.doc;var i=r.defaultView,s=i?i.pageYOffset:0;return Math.max(r[t].scrollTop,r.body.scrollTop,s)},getXY:function(){return e.config.doc[t][h]?function(r){var i=null,s,o,u,f,l,c,p,v,g,y;if(r&&r.tagName){p=r.ownerDocument,u=p[n],u!==a?y=p[t]:y=p.body,y.contains?g=y.contains(r):g=e.DOM.contains(y,r);if(g){v=p.defaultView,v&&"pageXOffset"in v?(s=v.pageXOffset,o=v.pageYOffset):(s=m?p[m].scrollLeft:d.docScrollX(r,p),o=m?p[m].scrollTop:d.docScrollY(r,p)),e.UA.ie&&(!p.documentMode||p.documentMode<8||u===a)&&(l=y.clientLeft,c=y.clientTop),f=r[h](),i=[f.left,f.top];if(l||c)i[0]-=l,i[1]-=c;if(o||s)if(!e.UA.ios||e.UA.ios>=4.2)i[0]+=s,i[1]+=o}else i=d._getOffset(r)}return i}:function(t){var n=null,s,o,u,a,f;if(t)if(d.inDoc(t)){n=[t.offsetLeft,t.offsetTop],s=t.ownerDocument,o=t,u=e.UA.gecko||e.UA.webkit>519?!0:!1;while(o=o.offsetParent)n[0]+=o.offsetLeft,n[1]+=o.offsetTop,u&&(n=d._calcBorders(o,n));if(d.getStyle(t,r)!=i){o=t;while(o=o.parentNode){a=o.scrollTop,f=o.scrollLeft,e.UA.gecko&&d.getStyle(o,"overflow")!=="visible"&&(n=d._calcBorders(o,n));if(a||f)n[0]-=f,n[1]-=a}n[0]+=d.docScrollX(t,s),n[1]+=d.docScrollY(t,s)}else n[0]+=d.docScrollX(t,s),n[1]+=d.docScrollY(t,s)}else n=d._getOffset(t);return n}}(),getScrollbarWidth:e.cached(function(){var t=e.config.doc,n=t.createElement("div"),r=t.getElementsByTagName("body")[0],i=.1;return r&&(n.style.cssText="position:absolute;visibility:hidden;overflow:scroll;width:20px;",n.appendChild(t.createElement("p")).style.height="1px",r.insertBefore(n,r.firstChild),i=n.offsetWidth-n.clientWidth,r.removeChild(n)),i},null,.1),getX:function(e){return d.getXY(e)[0]},getY:function(e){return d.getXY(e)[1]},setXY:function(e,t,n){var i=d.setStyle,a,f,l,c;e&&t&&(a=d.getStyle(e,r),f=d._getOffset(e),a=="static"&&(a=s,i(e,r,a)),c=d.getXY(e),t[0]!==null&&i(e,o,t[0]-c[0]+f[0]+"px"),t[1]!==null&&i(e,u,t[1]-c[1]+f[1]+"px"),n||(l=d.getXY(e),(l[0]!==t[0]||l[1]!==t[1])&&d.setXY(e,t,!0)))},setX:function(e,t){return d.setXY(e,[t,null])},setY:function(e,t){return d.setXY(e,[null,t])},swapXY:function(e,t){var n=d.getXY(e);d.setXY(e,d.getXY(t)),d.setXY(t,n)},_calcBorders:function(t,n){var r=parseInt(d[p](t,c),10)||0,i=parseInt(d[p](t,l),10)||0;return e.UA.gecko&&v.test(t.tagName)&&(r=0,i=0),n[0]+=i,n[1]+=r,n},_getWinSize:function(r,i){i=i||r?d._getDoc(r):e.config.doc;var s=i.defaultView||i.parentWindow,o=i[n],u=s.innerHeight,a=s.innerWidth,f=i[t];return o&&!e.UA.opera&&(o!="CSS1Compat"&&(f=i.body),u=f.clientHeight,a=f.clientWidth),{height:u,width:a}},_getDocSize:function(r){var i=r?d._getDoc(r):e.config.doc,s=i[t];return i[n]!="CSS1Compat"&&(s=i.body),{height:s.scrollHeight,width:s.scrollWidth}}})})(e),function(e){var t="top",n="right",r="bottom",i="left",s=function(e,s){var o=Math.max(e[t],s[t]),u=Math.min(e[n],s[n]),a=Math.min(e[r],s[r]),f=Math.max(e[i],s[i]),l={};return l[t]=o,l[n]=u,l[r]=a,l[i]=f,l},o=e.DOM;e.mix(o,{region:function(e){var t=o.getXY(e),n=!1;return e&&t&&(n=o._getRegion(t[1],t[0]+e.offsetWidth,t[1]+e.offsetHeight,t[0])),n},intersect:function(u,a,f){var l=f||o.region(u),c={},h=a,p;if(h.tagName)c=o.region(h);else{if(!e.Lang.isObject(a))return!1;c=a}return p=s(c,l),{top:p[t],right:p[n],bottom:p[r],left:p[i],area:(p[r]-p[t])*(p[n]-p[i]),yoff:p[r]-p[t],xoff:p[n]-p[i],inRegion:o.inRegion(u,a,!1,f)}},inRegion:function(u,a,f,l){var c={},h=l||o.region(u),p=a,d;if(p.tagName)c=o.region(p);else{if(!e.Lang.isObject(a))return!1;c=a}return f?h[i]>=c[i]&&h[n]<=c[n]&&h[t]>=c[t]&&h[r]<=c[r]:(d=s(c,h),d[r]>=d[t]&&d[n]>=d[i]?!0:!1)},inViewportRegion:function(e,t,n){return o.inRegion(e,o.viewportRegion(e),t,n)},_getRegion:function(e,s,o,u){var a={};return a[t]=a[1]=e,a[i]=a[0]=u,a[r]=o,a[n]=s,a.width=a[n]-a[i],a.height=a[r]-a[t],a},viewportRegion:function(t){t=t||e.config.doc.documentElement;var n=!1,r,i;return t&&(r=o.docScrollX(t),i=o.docScrollY(t),n=o._getRegion(i,o.winWidth(t)+r,i+o.winHeight(t),r)),n}})}(e)},"3.9.1",{requires:["dom-base","dom-style"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dom-screen",function(e,t){(function(e){var t="documentElement",n="compatMode",r="position",i="fixed",s="relative",o="left",u="top",a="BackCompat",f="medium",l="borderLeftWidth",c="borderTopWidth",h="getBoundingClientRect",p="getComputedStyle",d=e.DOM,v=/^t(?:able|d|h)$/i,m;e.UA.ie&&(e.config.doc[n]!=="BackCompat"?m=t:m="body"),e.mix(d,{winHeight:function(e){var t=d._getWinSize(e).height;return t},winWidth:function(e){var t=d._getWinSize(e).width;return t},docHeight:function(e){var t=d._getDocSize(e).height;return Math.max(t,d._getWinSize(e).height)},docWidth:function(e){var t=d._getDocSize(e).width;return Math.max(t,d._getWinSize(e).width)},docScrollX:function(n,r){r=r||n?d._getDoc(n):e.config.doc;var i=r.defaultView,s=i?i.pageXOffset:0;return Math.max(r[t].scrollLeft,r.body.scrollLeft,s)},docScrollY:function(n,r){r=r||n?d._getDoc(n):e.config.doc;var i=r.defaultView,s=i?i.pageYOffset:0;return Math.max(r[t].scrollTop,r.body.scrollTop,s)},getXY:function(){return e.config.doc[t][h]?function(r){var i=null,s,o,u,f,l,c,p,v,g,y;if(r&&r.tagName){p=r.ownerDocument,u=p[n],u!==a?y=p[t]:y=p.body,y.contains?g=y.contains(r):g=e.DOM.contains(y,r);if(g){v=p.defaultView,v&&"pageXOffset"in v?(s=v.pageXOffset,o=v.pageYOffset):(s=m?p[m].scrollLeft:d.docScrollX(r,p),o=m?p[m].scrollTop:d.docScrollY(r,p)),e.UA.ie&&(!p.documentMode||p.documentMode<8||u===a)&&(l=y.clientLeft,c=y.clientTop),f=r[h](),i=[f.left,f.top];if(l||c)i[0]-=l,i[1]-=c;if(o||s)if(!e.UA.ios||e.UA.ios>=4.2)i[0]+=s,i[1]+=o}else i=d._getOffset(r)}return i}:function(t){var n=null,s,o,u,a,f;if(t)if(d.inDoc(t)){n=[t.offsetLeft,t.offsetTop],s=t.ownerDocument,o=t,u=e.UA.gecko||e.UA.webkit>519?!0:!1;while(o=o.offsetParent)n[0]+=o.offsetLeft,n[1]+=o.offsetTop,u&&(n=d._calcBorders(o,n));if(d.getStyle(t,r)!=i){o=t;while(o=o.parentNode){a=o.scrollTop,f=o.scrollLeft,e.UA.gecko&&d.getStyle(o,"overflow")!=="visible"&&(n=d._calcBorders(o,n));if(a||f)n[0]-=f,n[1]-=a}n[0]+=d.docScrollX(t,s),n[1]+=d.docScrollY(t,s)}else n[0]+=d.docScrollX(t,s),n[1]+=d.docScrollY(t,s)}else n=d._getOffset(t);return n}}(),getScrollbarWidth:e.cached(function(){var t=e.config.doc,n=t.createElement("div"),r=t.getElementsByTagName("body")[0],i=.1;return r&&(n.style.cssText="position:absolute;visibility:hidden;overflow:scroll;width:20px;",n.appendChild(t.createElement("p")).style.height="1px",r.insertBefore(n,r.firstChild),i=n.offsetWidth-n.clientWidth,r.removeChild(n)),i},null,.1),getX:function(e){return d.getXY(e)[0]},getY:function(e){return d.getXY(e)[1]},setXY:function(e,t,n){var i=d.setStyle,a,f,l,c;e&&t&&(a=d.getStyle(e,r),f=d._getOffset(e),a=="static"&&(a=s,i(e,r,a)),c=d.getXY(e),t[0]!==null&&i(e,o,t[0]-c[0]+f[0]+"px"),t[1]!==null&&i(e,u,t[1]-c[1]+f[1]+"px"),n||(l=d.getXY(e),(l[0]!==t[0]||l[1]!==t[1])&&d.setXY(e,t,!0)))},setX:function(e,t){return d.setXY(e,[t,null])},setY:function(e,t){return d.setXY(e,[null,t])},swapXY:function(e,t){var n=d.getXY(e);d.setXY(e,d.getXY(t)),d.setXY(t,n)},_calcBorders:function(t,n){var r=parseInt(d[p](t,c),10)||0,i=parseInt(d[p](t,l),10)||0;return e.UA.gecko&&v.test(t.tagName)&&(r=0,i=0),n[0]+=i,n[1]+=r,n},_getWinSize:function(r,i){i=i||r?d._getDoc(r):e.config.doc;var s=i.defaultView||i.parentWindow,o=i[n],u=s.innerHeight,a=s.innerWidth,f=i[t];return o&&!e.UA.opera&&(o!="CSS1Compat"&&(f=i.body),u=f.clientHeight,a=f.clientWidth),{height:u,width:a}},_getDocSize:function(r){var i=r?d._getDoc(r):e.config.doc,s=i[t];return i[n]!="CSS1Compat"&&(s=i.body),{height:s.scrollHeight,width:s.scrollWidth}}})})(e),function(e){var t="top",n="right",r="bottom",i="left",s=function(e,s){var o=Math.max(e[t],s[t]),u=Math.min(e[n],s[n]),a=Math.min(e[r],s[r]),f=Math.max(e[i],s[i]),l={};return l[t]=o,l[n]=u,l[r]=a,l[i]=f,l},o=e.DOM;e.mix(o,{region:function(e){var t=o.getXY(e),n=!1;return e&&t&&(n=o._getRegion(t[1],t[0]+e.offsetWidth,t[1]+e.offsetHeight,t[0])),n},intersect:function(u,a,f){var l=f||o.region(u),c={},h=a,p;if(h.tagName)c=o.region(h);else{if(!e.Lang.isObject(a))return!1;c=a}return p=s(c,l),{top:p[t],right:p[n],bottom:p[r],left:p[i],area:(p[r]-p[t])*(p[n]-p[i]),yoff:p[r]-p[t],xoff:p[n]-p[i],inRegion:o.inRegion(u,a,!1,f)}},inRegion:function(u,a,f,l){var c={},h=l||o.region(u),p=a,d;if(p.tagName)c=o.region(p);else{if(!e.Lang.isObject(a))return!1;c=a}return f?h[i]>=c[i]&&h[n]<=c[n]&&h[t]>=c[t]&&h[r]<=c[r]:(d=s(c,h),d[r]>=d[t]&&d[n]>=d[i]?!0:!1)},inViewportRegion:function(e,t,n){return o.inRegion(e,o.viewportRegion(e),t,n)},_getRegion:function(e,s,o,u){var a={};return a[t]=a[1]=e,a[i]=a[0]=u,a[r]=o,a[n]=s,a.width=a[n]-a[i],a.height=a[r]-a[t],a},viewportRegion:function(t){t=t||e.config.doc.documentElement;var n=!1,r,i;return t&&(r=o.docScrollX(t),i=o.docScrollY(t),n=o._getRegion(i,o.winWidth(t)+r,i+o.winHeight(t),r)),n}})}(e)},"3.12.0",{requires:["dom-base","dom-style"]}); diff --git a/lib/yuilib/3.9.1/build/dom-screen/dom-screen.js b/lib/yuilib/3.12.0/dom-screen/dom-screen.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/dom-screen/dom-screen.js rename to lib/yuilib/3.12.0/dom-screen/dom-screen.js index 6ad16ad7995..34bc9d99ac9 --- a/lib/yuilib/3.9.1/build/dom-screen/dom-screen.js +++ b/lib/yuilib/3.12.0/dom-screen/dom-screen.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dom-screen', function (Y, NAME) { (function(Y) { @@ -603,4 +609,4 @@ Y.mix(DOM, { })(Y); -}, '3.9.1', {"requires": ["dom-base", "dom-style"]}); +}, '3.12.0', {"requires": ["dom-base", "dom-style"]}); diff --git a/lib/yuilib/3.9.1/build/dom-style-ie/dom-style-ie-debug.js b/lib/yuilib/3.12.0/dom-style-ie/dom-style-ie-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/dom-style-ie/dom-style-ie-debug.js rename to lib/yuilib/3.12.0/dom-style-ie/dom-style-ie-debug.js index 478e72dbe84..1bd5728b8af --- a/lib/yuilib/3.9.1/build/dom-style-ie/dom-style-ie-debug.js +++ b/lib/yuilib/3.12.0/dom-style-ie/dom-style-ie-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dom-style-ie', function (Y, NAME) { (function(Y) { @@ -304,4 +310,4 @@ if (!testFeature('style', 'computedStyle')) { })(Y); -}, '3.9.1', {"requires": ["dom-style"]}); +}, '3.12.0', {"requires": ["dom-style"]}); diff --git a/lib/yuilib/3.9.1/build/dom-style-ie/dom-style-ie-min.js b/lib/yuilib/3.12.0/dom-style-ie/dom-style-ie-min.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/dom-style-ie/dom-style-ie-min.js rename to lib/yuilib/3.12.0/dom-style-ie/dom-style-ie-min.js index 99efc0b7bc1..27537360a8f --- a/lib/yuilib/3.9.1/build/dom-style-ie/dom-style-ie-min.js +++ b/lib/yuilib/3.12.0/dom-style-ie/dom-style-ie-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dom-style-ie",function(e,t){(function(e){var t="hasLayout",n="px",r="filter",i="filters",s="opacity",o="auto",u="borderWidth",a="borderTopWidth",f="borderRightWidth",l="borderBottomWidth",c="borderLeftWidth",h="width",p="height",d="transparent",v="visible",m="getComputedStyle",g=undefined,y=e.config.doc.documentElement,b=e.Features.test,w=e.Features.add,E=/^(\d[.\d]*)+(em|ex|px|gd|rem|vw|vh|vm|ch|mm|cm|in|pt|pc|deg|rad|ms|s|hz|khz|%){1}?/i,S=e.UA.ie>=8,x=function(e){return e.currentStyle||e.style},T={CUSTOM_STYLES:{},get:function(t,r){var i="",o;return t&&(o=x(t)[r],r===s&&e.DOM.CUSTOM_STYLES[s]?i=e.DOM.CUSTOM_STYLES[s].get(t):!o||o.indexOf&&o.indexOf(n)>-1?i=o:e.DOM.IE.COMPUTED[r]?i=e.DOM.IE.COMPUTED[r](t,r):E.test(o)?i=T.getPixel(t,r)+n:i=o),i},sizeOffsets:{width:["Left","Right"],height:["Top","Bottom"],top:["Top"],bottom:["Bottom"]},getOffset:function(e,t){var r=x(e)[t],i=t.charAt(0).toUpperCase()+t.substr(1),s="offset"+i,u="pixel"+i,a=T.sizeOffsets[t],f=e.ownerDocument.compatMode,l="";return r===o||r.indexOf("%")>-1?(l=e["offset"+i],f!=="BackCompat"&&(a[0]&&(l-=T.getPixel(e,"padding"+a[0]),l-=T.getBorderWidth(e,"border"+a[0]+"Width",1)),a[1]&&(l-=T.getPixel(e,"padding"+a[1]),l-=T.getBorderWidth(e,"border"+a[1]+"Width",1)))):(!e.style[u]&&!e.style[t]&&(e.style[t]=r),l=e.style[u]),l+n},borderMap:{thin:S?"1px":"2px",medium:S?"3px":"4px",thick:S?"5px":"6px"},getBorderWidth:function(e,t,r){var i=r?"":n,s=e.currentStyle[t];return s.indexOf(n)<0&&(T.borderMap[s]&&e.currentStyle.borderStyle!=="none"?s=T.borderMap[s]:s=0),r?parseFloat(s):s},getPixel:function(e,t){var n=null,r=x(e),i=r.right,s=r[t];return e.style.right=s,n=e.style.pixelRight,e.style.right=i,n},getMargin:function(e,t){var r,i=x(e);return i[t]==o?r=0:r=T.getPixel(e,t),r+n},getVisibility:function(e,t){var n;while((n=e.currentStyle)&&n[t]=="inherit")e=e.parentNode;return n?n[t]:v},getColor:function(t,n){var r=x(t)[n];return(!r||r===d)&&e.DOM.elementByAxis(t,"parentNode",null,function(e){r=x(e)[n];if(r&&r!==d)return t=e,!0}),e.Color.toRGB(r)},getBorderColor:function(t,n){var r=x(t),i=r[n]||r.color;return e.Color.toRGB(e.Color.toHex(i))}},N={};w("style","computedStyle",{test:function(){return"getComputedStyle"in e.config.win}}),w("style","opacity",{test:function(){return"opacity"in y.style}}),w("style","filter",{test:function(){return"filters"in y}}),!b("style","opacity")&&b("style","filter")&&(e.DOM.CUSTOM_STYLES[s]={get:function(e){var t=100;try{t=e[i]["DXImageTransform.Microsoft.Alpha"][s]}catch(n){try{t=e[i]("alpha")[s]}catch(r){}}return t/100},set:function(e,n,i){var o,u=x(e),a=u[r];i=i||e.style,n===""&&(o=s in u?u[s]:1,n=o),typeof a=="string"&&(i[r]=a.replace(/alpha([^)]*\))/gi,"")+(n<1?"alpha("+s+"="+n*100+")":""),i[r]||i.removeAttribute(r),u[t]||(i.zoom=1))}});try{e.config.doc.createElement("div").style.height="-1px"}catch(C){e.DOM.CUSTOM_STYLES.height={set:function(e,t,n){var r=parseFloat(t);if(r>=0||t==="auto"||t==="")n.height=t}},e.DOM.CUSTOM_STYLES.width={set:function(e,t,n){var r=parseFloat(t);if(r>=0||t==="auto"||t==="")n.width=t}}}b("style","computedStyle")||(N[h]=N[p]=T.getOffset,N.color=N.backgroundColor=T.getColor,N[u]=N[a]=N[f]=N[l]=N[c]=T.getBorderWidth,N.marginTop=N.marginRight=N.marginBottom=N.marginLeft=T.getMargin,N.visibility=T.getVisibility,N.borderColor=N.borderTopColor=N.borderRightColor=N.borderBottomColor=N.borderLeftColor=T.getBorderColor,e.DOM[m]=T.get,e.namespace("DOM.IE"),e.DOM.IE.COMPUTED=N,e.DOM.IE.ComputedStyle=T)})(e)},"3.9.1",{requires:["dom-style"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dom-style-ie",function(e,t){(function(e){var t="hasLayout",n="px",r="filter",i="filters",s="opacity",o="auto",u="borderWidth",a="borderTopWidth",f="borderRightWidth",l="borderBottomWidth",c="borderLeftWidth",h="width",p="height",d="transparent",v="visible",m="getComputedStyle",g=undefined,y=e.config.doc.documentElement,b=e.Features.test,w=e.Features.add,E=/^(\d[.\d]*)+(em|ex|px|gd|rem|vw|vh|vm|ch|mm|cm|in|pt|pc|deg|rad|ms|s|hz|khz|%){1}?/i,S=e.UA.ie>=8,x=function(e){return e.currentStyle||e.style},T={CUSTOM_STYLES:{},get:function(t,r){var i="",o;return t&&(o=x(t)[r],r===s&&e.DOM.CUSTOM_STYLES[s]?i=e.DOM.CUSTOM_STYLES[s].get(t):!o||o.indexOf&&o.indexOf(n)>-1?i=o:e.DOM.IE.COMPUTED[r]?i=e.DOM.IE.COMPUTED[r](t,r):E.test(o)?i=T.getPixel(t,r)+n:i=o),i},sizeOffsets:{width:["Left","Right"],height:["Top","Bottom"],top:["Top"],bottom:["Bottom"]},getOffset:function(e,t){var r=x(e)[t],i=t.charAt(0).toUpperCase()+t.substr(1),s="offset"+i,u="pixel"+i,a=T.sizeOffsets[t],f=e.ownerDocument.compatMode,l="";return r===o||r.indexOf("%")>-1?(l=e["offset"+i],f!=="BackCompat"&&(a[0]&&(l-=T.getPixel(e,"padding"+a[0]),l-=T.getBorderWidth(e,"border"+a[0]+"Width",1)),a[1]&&(l-=T.getPixel(e,"padding"+a[1]),l-=T.getBorderWidth(e,"border"+a[1]+"Width",1)))):(!e.style[u]&&!e.style[t]&&(e.style[t]=r),l=e.style[u]),l+n},borderMap:{thin:S?"1px":"2px",medium:S?"3px":"4px",thick:S?"5px":"6px"},getBorderWidth:function(e,t,r){var i=r?"":n,s=e.currentStyle[t];return s.indexOf(n)<0&&(T.borderMap[s]&&e.currentStyle.borderStyle!=="none"?s=T.borderMap[s]:s=0),r?parseFloat(s):s},getPixel:function(e,t){var n=null,r=x(e),i=r.right,s=r[t];return e.style.right=s,n=e.style.pixelRight,e.style.right=i,n},getMargin:function(e,t){var r,i=x(e);return i[t]==o?r=0:r=T.getPixel(e,t),r+n},getVisibility:function(e,t){var n;while((n=e.currentStyle)&&n[t]=="inherit")e=e.parentNode;return n?n[t]:v},getColor:function(t,n){var r=x(t)[n];return(!r||r===d)&&e.DOM.elementByAxis(t,"parentNode",null,function(e){r=x(e)[n];if(r&&r!==d)return t=e,!0}),e.Color.toRGB(r)},getBorderColor:function(t,n){var r=x(t),i=r[n]||r.color;return e.Color.toRGB(e.Color.toHex(i))}},N={};w("style","computedStyle",{test:function(){return"getComputedStyle"in e.config.win}}),w("style","opacity",{test:function(){return"opacity"in y.style}}),w("style","filter",{test:function(){return"filters"in y}}),!b("style","opacity")&&b("style","filter")&&(e.DOM.CUSTOM_STYLES[s]={get:function(e){var t=100;try{t=e[i]["DXImageTransform.Microsoft.Alpha"][s]}catch(n){try{t=e[i]("alpha")[s]}catch(r){}}return t/100},set:function(e,n,i){var o,u=x(e),a=u[r];i=i||e.style,n===""&&(o=s in u?u[s]:1,n=o),typeof a=="string"&&(i[r]=a.replace(/alpha([^)]*\))/gi,"")+(n<1?"alpha("+s+"="+n*100+")":""),i[r]||i.removeAttribute(r),u[t]||(i.zoom=1))}});try{e.config.doc.createElement("div").style.height="-1px"}catch(C){e.DOM.CUSTOM_STYLES.height={set:function(e,t,n){var r=parseFloat(t);if(r>=0||t==="auto"||t==="")n.height=t}},e.DOM.CUSTOM_STYLES.width={set:function(e,t,n){var r=parseFloat(t);if(r>=0||t==="auto"||t==="")n.width=t}}}b("style","computedStyle")||(N[h]=N[p]=T.getOffset,N.color=N.backgroundColor=T.getColor,N[u]=N[a]=N[f]=N[l]=N[c]=T.getBorderWidth,N.marginTop=N.marginRight=N.marginBottom=N.marginLeft=T.getMargin,N.visibility=T.getVisibility,N.borderColor=N.borderTopColor=N.borderRightColor=N.borderBottomColor=N.borderLeftColor=T.getBorderColor,e.DOM[m]=T.get,e.namespace("DOM.IE"),e.DOM.IE.COMPUTED=N,e.DOM.IE.ComputedStyle=T)})(e)},"3.12.0",{requires:["dom-style"]}); diff --git a/lib/yuilib/3.9.1/build/dom-style-ie/dom-style-ie.js b/lib/yuilib/3.12.0/dom-style-ie/dom-style-ie.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/dom-style-ie/dom-style-ie.js rename to lib/yuilib/3.12.0/dom-style-ie/dom-style-ie.js index 06f14a6a9c8..f43345f1ff9 --- a/lib/yuilib/3.9.1/build/dom-style-ie/dom-style-ie.js +++ b/lib/yuilib/3.12.0/dom-style-ie/dom-style-ie.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dom-style-ie', function (Y, NAME) { (function(Y) { @@ -301,4 +307,4 @@ if (!testFeature('style', 'computedStyle')) { })(Y); -}, '3.9.1', {"requires": ["dom-style"]}); +}, '3.12.0', {"requires": ["dom-style"]}); diff --git a/lib/yuilib/3.9.1/build/dom-style/dom-style-debug.js b/lib/yuilib/3.12.0/dom-style/dom-style-debug.js old mode 100644 new mode 100755 similarity index 80% rename from lib/yuilib/3.9.1/build/dom-style/dom-style-debug.js rename to lib/yuilib/3.12.0/dom-style/dom-style-debug.js index b5a62dcf548..25617033384 --- a/lib/yuilib/3.9.1/build/dom-style/dom-style-debug.js +++ b/lib/yuilib/3.12.0/dom-style/dom-style-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dom-style', function (Y, NAME) { (function(Y) { @@ -262,80 +268,6 @@ Y_DOM.CUSTOM_STYLES.transformOrigin = { })(Y); -(function(Y) { -var PARSE_INT = parseInt, - RE = RegExp; - -Y.Color = { - KEYWORDS: { - black: '000', - silver: 'c0c0c0', - gray: '808080', - white: 'fff', - maroon: '800000', - red: 'f00', - purple: '800080', - fuchsia: 'f0f', - green: '008000', - lime: '0f0', - olive: '808000', - yellow: 'ff0', - navy: '000080', - blue: '00f', - teal: '008080', - aqua: '0ff' - }, - - re_RGB: /^rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)$/i, - re_hex: /^#?([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i, - re_hex3: /([0-9A-F])/gi, - - toRGB: function(val) { - if (!Y.Color.re_RGB.test(val)) { - val = Y.Color.toHex(val); - } - - if(Y.Color.re_hex.exec(val)) { - val = 'rgb(' + [ - PARSE_INT(RE.$1, 16), - PARSE_INT(RE.$2, 16), - PARSE_INT(RE.$3, 16) - ].join(', ') + ')'; - } - return val; - }, - - toHex: function(val) { - val = Y.Color.KEYWORDS[val] || val; - if (Y.Color.re_RGB.exec(val)) { - val = [ - Number(RE.$1).toString(16), - Number(RE.$2).toString(16), - Number(RE.$3).toString(16) - ]; - - for (var i = 0; i < val.length; i++) { - if (val[i].length < 2) { - val[i] = '0' + val[i]; - } - } - - val = val.join(''); - } - - if (val.length < 6) { - val = val.replace(Y.Color.re_hex3, '$1$1'); - } - - if (val !== 'transparent' && val.indexOf('#') < 0) { - val = '#' + val; - } - - return val.toUpperCase(); - } -}; -})(Y); - -}, '3.9.1', {"requires": ["dom-base"]}); +}, '3.12.0', {"requires": ["dom-base", "color-base"]}); diff --git a/lib/yuilib/3.9.1/build/dom-style/dom-style-min.js b/lib/yuilib/3.12.0/dom-style/dom-style-min.js old mode 100644 new mode 100755 similarity index 67% rename from lib/yuilib/3.9.1/build/dom-style/dom-style-min.js rename to lib/yuilib/3.12.0/dom-style/dom-style-min.js index 332c7bdfdef..19f7398b93f --- a/lib/yuilib/3.9.1/build/dom-style/dom-style-min.js +++ b/lib/yuilib/3.12.0/dom-style/dom-style-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("dom-style",function(e,t){(function(e){var t="documentElement",n="defaultView",r="ownerDocument",i="style",s="float",o="cssFloat",u="styleFloat",a="transparent",f="getComputedStyle",l="getBoundingClientRect",c=e.config.win,h=e.config.doc,p=undefined,d=e.DOM,v="transform",m="transformOrigin",g=["WebkitTransform","MozTransform","OTransform","msTransform"],y=/color$/i,b=/width|height|top|left|right|bottom|margin|padding/i;e.Array.each(g,function(e){e in h[t].style&&(v=e,m=e+"Origin")}),e.mix(d,{DEFAULT_UNIT:"px",CUSTOM_STYLES:{},setStyle:function(e,t,n,r){r=r||e.style;var i=d.CUSTOM_STYLES;if(r){n===null||n===""?n="":!isNaN(new Number(n))&&b.test(t)&&(n+=d.DEFAULT_UNIT);if(t in i){if(i[t].set){i[t].set(e,n,r);return}typeof i[t]=="string"&&(t=i[t])}else t===""&&(t="cssText",n="");r[t]=n}},getStyle:function(e,t,n){n=n||e.style;var r=d.CUSTOM_STYLES,i="";if(n){if(t in r){if(r[t].get)return r[t].get(e,t,n);typeof r[t]=="string"&&(t=r[t])}i=n[t],i===""&&(i=d[f](e,t))}return i},setStyles:function(t,n){var r=t.style;e.each(n,function(e,n){d.setStyle(t,n,e,r)},d)},getComputedStyle:function(e,t){var s="",o=e[r],u;return e[i]&&o[n]&&o[n][f]&&(u=o[n][f](e,null),u&&(s=u[t])),s}}),h[t][i][o]!==p?d.CUSTOM_STYLES[s]=o:h[t][i][u]!==p&&(d.CUSTOM_STYLES[s]=u),e.UA.opera&&(d[f]=function(t,i){var s=t[r][n],o=s[f](t,"")[i];return y.test(i)&&(o=e.Color.toRGB(o)),o}),e.UA.webkit&&(d[f]=function(e,t){var i=e[r][n],s=i[f](e,"")[t];return s==="rgba(0, 0, 0, 0)"&&(s=a),s}),e.DOM._getAttrOffset=function(t,n){var r=e.DOM[f](t,n),i=t.offsetParent,s,o,u;return r==="auto"&&(s=e.DOM.getStyle(t,"position"),s==="static"||s==="relative"?r=0:i&&i[l]&&(o=i[l]()[n],u=t[l]()[n],n==="left"||n==="top"?r=u-o:r=o-t[l]()[n])),r},e.DOM._getOffset=function(e){var t,n=null;return e&&(t=d.getStyle(e,"position"),n=[parseInt(d[f](e,"left"),10),parseInt(d[f](e,"top"),10)],isNaN(n[0])&&(n[0]=parseInt(d.getStyle(e,"left"),10),isNaN(n[0])&&(n[0]=t==="relative"?0:e.offsetLeft||0)),isNaN(n[1])&&(n[1]=parseInt(d.getStyle(e,"top"),10),isNaN(n[1])&&(n[1]=t==="relative"?0:e.offsetTop||0))),n},d.CUSTOM_STYLES.transform={set:function(e,t,n){n[v]=t},get:function(e,t){return d[f](e,v)}},d.CUSTOM_STYLES.transformOrigin={set:function(e,t,n){n[m]=t},get:function(e,t){return d[f](e,m)}}})(e),function(e){var t=parseInt,n=RegExp;e.Color={KEYWORDS:{black:"000",silver:"c0c0c0",gray:"808080",white:"fff",maroon:"800000",red:"f00",purple:"800080",fuchsia:"f0f",green:"008000",lime:"0f0",olive:"808000",yellow:"ff0",navy:"000080",blue:"00f",teal:"008080",aqua:"0ff"},re_RGB:/^rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)$/i,re_hex:/^#?([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i,re_hex3:/([0-9A-F])/gi,toRGB:function(r){return e.Color.re_RGB.test(r)||(r=e.Color.toHex(r)),e.Color.re_hex.exec(r)&&(r="rgb("+[t(n.$1,16),t(n.$2,16),t(n.$3,16)].join(", ")+")"),r},toHex:function(t){t=e.Color.KEYWORDS[t]||t;if(e.Color.re_RGB.exec(t)){t=[Number(n.$1).toString(16),Number(n.$2).toString(16),Number(n.$3).toString(16)];for(var r=0;r0?n.dump(e[u],t-1):r):f.push(e[u]),f.push(s);f.length>1&&f.pop(),f.push("]")}else if(l=="regexp")f.push(e.toString());else{f.push("{");for(u in e)if(e.hasOwnProperty(u))try{f.push(u+o),n.isObject(e[u])?f.push(t>0?n.dump(e[u],t-1):r):f.push(e[u]),f.push(s)}catch(c){f.push("Error: "+c.message)}f.length>1&&f.pop(),f.push("}")}return f.join("")};e.dump=u,n.dump=u},"3.9.1",{requires:["yui-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("dump",function(e,t){var n=e.Lang,r="{...}",i="f(){...}",s=", ",o=" => ",u=function(e,t){var u,a,f=[],l=n.type(e);if(!n.isObject(e))return e+"";if(l=="date")return e;if(e.nodeType&&e.tagName)return e.tagName+"#"+e.id;if(e.document&&e.navigator)return"window";if(e.location&&e.body)return"document";if(l=="function")return i;t=n.isNumber(t)?t:3;if(l=="array"){f.push("[");for(u=0,a=e.length;u0?n.dump(e[u],t-1):r):f.push(e[u]),f.push(s);f.length>1&&f.pop(),f.push("]")}else if(l=="regexp")f.push(e.toString());else{f.push("{");for(u in e)if(e.hasOwnProperty(u))try{f.push(u+o),n.isObject(e[u])?f.push(t>0?n.dump(e[u],t-1):r):f.push(e[u]),f.push(s)}catch(c){f.push("Error: "+c.message)}f.length>1&&f.pop(),f.push("}")}return f.join("")};e.dump=u,n.dump=u},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/dump/dump.js b/lib/yuilib/3.12.0/dump/dump.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/dump/dump.js rename to lib/yuilib/3.12.0/dump/dump.js index 3f8ef4fa2a4..9b4dba4efa1 --- a/lib/yuilib/3.9.1/build/dump/dump.js +++ b/lib/yuilib/3.12.0/dump/dump.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('dump', function (Y, NAME) { /** @@ -103,4 +109,4 @@ YUI.add('dump', function (Y, NAME) { -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-base/editor-base-debug.js b/lib/yuilib/3.12.0/editor-base/editor-base-debug.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/editor-base/editor-base-debug.js rename to lib/yuilib/3.12.0/editor-base/editor-base-debug.js index 6acbdeef326..81800776448 --- a/lib/yuilib/3.9.1/build/editor-base/editor-base-debug.js +++ b/lib/yuilib/3.12.0/editor-base/editor-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-base', function (Y, NAME) { @@ -916,4 +922,4 @@ YUI.add('editor-base', function (Y, NAME) { -}, '3.9.1', {"requires": ["base", "frame", "node", "exec-command", "editor-selection"]}); +}, '3.12.0', {"requires": ["base", "frame", "node", "exec-command", "editor-selection"]}); diff --git a/lib/yuilib/3.9.1/build/editor-base/editor-base-min.js b/lib/yuilib/3.12.0/editor-base/editor-base-min.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/editor-base/editor-base-min.js rename to lib/yuilib/3.12.0/editor-base/editor-base-min.js index b9ea50c3c32..c4da1251087 --- a/lib/yuilib/3.9.1/build/editor-base/editor-base-min.js +++ b/lib/yuilib/3.12.0/editor-base/editor-base-min.js @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("editor-base",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r=":last-child",i="body";e.extend(n,e.Base,{frame:null,initializer:function(){var t=(new e.Frame({designMode:!0,title:n.STRINGS.title,use:n.USE,dir:this.get("dir"),extracss:this.get("extracss"),linkedcss:this.get("linkedcss"),defaultblock:this.get("defaultblock"),host:this})).plug(e.Plugin.ExecCommand);t.after("ready",e.bind(this._afterFrameReady,this)),t.addTarget(this),this.frame=t,this.publish("nodeChange",{emitFacade:!0,bubbles:!0,defaultFn:this._defNodeChangeFn})},destructor:function(){this.frame.destroy(),this.detachAll()},copyStyles:function(t,n){if(t.test("a"))return;var r=["color","fontSize","fontFamily","backgroundColor","fontStyle"],i={};e.each(r,function(e){i[e]=t.getStyle(e)}),t.ancestor("b,strong")&&(i.fontWeight="bold"),t.ancestor("u")&&(i.textDecoration||(i.textDecoration="underline")),n.setStyles(i)},_lastBookmark:null,_resolveChangedNode:function(e){var t=this.getInstance(),n,s,o,u;e&&e.test(i)&&(u=new t.EditorSelection,u&&u.anchorNode&&(e=u.anchorNode));if(t&&e&&e.test("html")){n=t.one(i).one(r);while(!o)n?(s=n.one(r),s?n=s:o=!0):o=!0;n&&(n.test("br")&&(n.previous()?n=n.previous():n=n.get("parentNode")),n&&(e=n))}return e||(e=t.one(i)),e},_defNodeChangeFn:function(t){var r=(new Date).getTime(),i=this.getInstance(),s,o,u,a={},f,l,c=[],h="",p="",d,v=!1;if(e.UA.ie)try{s=i.config.doc.selection.createRange(),s.getBookmark&&(this._lastBookmark=s.getBookmark())}catch(m){}t.changedNode=this._resolveChangedNode(t.changedNode);switch(t.changedType){case"tab":!t.changedNode.test("li, li *")&&!t.changedEvent.shiftKey&&(t.changedEvent.frameEvent.preventDefault(),e.UA.webkit?this.execCommand("inserttext"," "):e.UA.gecko?this.frame.exec._command("inserthtml",n.TABKEY):e.UA.ie&&this.execCommand("inserthtml",n.TABKEY));break;case"backspace-up":e.UA.webkit&&t.changedNode&&t.changedNode.set("innerHTML",t.changedNode.get("innerHTML"))}e.UA.webkit&&t.commands&&(t.commands.indent||t.commands.outdent)&&(d=i.all(".webkit-indent-blockquote, blockquote"),d.size()&&d.setStyle("margin","")),o=this.getDomPath(t.changedNode,!1),t.commands&&(a=t.commands),e.each(o,function(t){var r=t.tagName.toLowerCase(),s=n.TAG2CMD[r],o,u,d,m,g;s&&(a[s]=1),o=t.currentStyle||t.style,""+o.fontWeight=="normal"&&(v=!0),""+o.fontWeight=="bold"&&(a.bold=1),e.UA.ie&&o.fontWeight>400&&(a.bold=1),o.fontStyle==="italic"&&(a.italic=1),o.textDecoration.indexOf("underline")>-1&&(a.underline=1),o.textDecoration.indexOf("line-through")>-1&&(a.strikethrough=1),u=i.one(t),u.getStyle("fontFamily")&&(d=u.getStyle("fontFamily").split(",")[0].toLowerCase(),d&&(f=d),f&&(f=f.replace(/'/g,"").replace(/"/g,""))),l=n.NORMALIZE_FONTSIZE(u),m=t.className.split(" "),e.each(m,function(e){e!==""&&e.substr(0,4)!=="yui_"&&c.push(e)}),h=n.FILTER_RGB(u.getStyle("color")),g=n.FILTER_RGB(o.backgroundColor),g!=="transparent"&&g!==""&&(p=g)}),v&&(delete a.bold,delete a.italic),t.dompath=i.all(o),t.classNames=c,t.commands=a,t.fontFamily||(t.fontFamily=f),t.fontSize||(t.fontSize=l),t.fontColor||(t.fontColor=h),t.backgroundColor||(t.backgroundColor=p),u=(new Date).getTime()},getDomPath:function(e,t){var n=[],r,i=this.frame.getInstance();r=i.Node.getDOMNode(e);while(r!==null){if(r===i.config.doc.documentElement||r===i.config.doc||!r.tagName){r=null;break}if(!i.DOM.inDoc(r)){r=null;break}r.nodeName&&r.nodeType&&r.nodeType===1&&n.push(r);if(r===i.config.doc.body){r=null;break}r=r.parentNode}return n.length===0&&(n[0]=i.config.doc.body),t?i.all(n.reverse()):n.reverse()},_afterFrameReady:function(){var t=this.frame.getInstance();this.frame.on("dom:mouseup",e.bind(this._onFrameMouseUp,this)),this.frame.on("dom:mousedown",e.bind(this._onFrameMouseDown,this)),this.frame.on("dom:keydown",e.bind(this._onFrameKeyDown,this)),e.UA.ie&&(this.frame.on("dom:activate",e.bind(this._onFrameActivate,this)),this.frame.on("dom:beforedeactivate",e.bind(this._beforeFrameDeactivate,this))),this.frame.on("dom:keyup",e.bind(this._onFrameKeyUp,this)),this.frame.on("dom:keypress",e.bind(this._onFrameKeyPress,this)),this.frame.on("dom:paste",e.bind(this._onPaste,this)),t.EditorSelection.filter(),this.fire("ready")},_beforeFrameDeactivate:function(e){if(e.frameTarget.test("html"))return;var t=this.getInstance(),n=t.config.doc.selection.createRange();n.compareEndPoints&&!n.compareEndPoints("StartToEnd",n)&&n.pasteHTML('')},_onFrameActivate:function(e){if(e.frameTarget.test("html"))return;var t=this.getInstance(),n=new t.EditorSelection,r=n.createRange(),i=t.all("#yui-ie-cursor");i.size()&&i.each(function(e){e.set("id","");if(r.moveToElementText)try{r.moveToElementText(e._node);var t=r.move("character",-1);t===-1&&r.move("character",1),r.select(),r.text=""}catch(n){}e.remove()})},_onPaste:function(e){this.fire("nodeChange",{changedNode:e.frameTarget,changedType:"paste",changedEvent:e.frameEvent})},_onFrameMouseUp:function(e){this.fire("nodeChange",{changedNode:e.frameTarget,changedType:"mouseup",changedEvent:e.frameEvent})},_onFrameMouseDown:function(e){this.fire("nodeChange",{changedNode:e.frameTarget,changedType:"mousedown",changedEvent:e.frameEvent})},_currentSelection:null,_currentSelectionTimer:null,_currentSelectionClear:null,_onFrameKeyDown:function(t){var r,i;this._currentSelection?i=this._currentSelection:(this._currentSelectionTimer&&this._currentSelectionTimer.cancel(),this._currentSelectionTimer=e.later(850,this,function(){this._currentSelectionClear=!0}),r=this.frame.getInstance(),i=new r.EditorSelection(t),this._currentSelection=i),r=this.frame.getInstance(),i=new r.EditorSelection,this._currentSelection=i,i&&i.anchorNode&&(this.fire("nodeChange",{changedNode:i.anchorNode,changedType:"keydown",changedEvent:t.frameEvent}),n.NC_KEYS[t.keyCode]&&(this.fire("nodeChange",{changedNode:i.anchorNode,changedType:n.NC_KEYS[t.keyCode],changedEvent:t.frameEvent}),this.fire("nodeChange",{changedNode:i.anchorNode,changedType:n.NC_KEYS[t.keyCode]+"-down",changedEvent -:t.frameEvent})))},_onFrameKeyPress:function(e){var t=this._currentSelection;t&&t.anchorNode&&(this.fire("nodeChange",{changedNode:t.anchorNode,changedType:"keypress",changedEvent:e.frameEvent}),n.NC_KEYS[e.keyCode]&&this.fire("nodeChange",{changedNode:t.anchorNode,changedType:n.NC_KEYS[e.keyCode]+"-press",changedEvent:e.frameEvent}))},_onFrameKeyUp:function(e){var t=this.frame.getInstance(),r=new t.EditorSelection(e);r&&r.anchorNode&&(this.fire("nodeChange",{changedNode:r.anchorNode,changedType:"keyup",selection:r,changedEvent:e.frameEvent}),n.NC_KEYS[e.keyCode]&&this.fire("nodeChange",{changedNode:r.anchorNode,changedType:n.NC_KEYS[e.keyCode]+"-up",selection:r,changedEvent:e.frameEvent})),this._currentSelectionClear&&(this._currentSelectionClear=this._currentSelection=null)},execCommand:function(e,t){var n=this.frame.execCommand(e,t),r=this.frame.getInstance(),i=new r.EditorSelection,s={},o={changedNode:i.anchorNode,changedType:"execcommand",nodes:n};switch(e){case"forecolor":o.fontColor=t;break;case"backcolor":o.backgroundColor=t;break;case"fontsize":o.fontSize=t;break;case"fontname":o.fontFamily=t}return s[e]=1,o.commands=s,this.fire("nodeChange",o),n},getInstance:function(){return this.frame.getInstance()},render:function(e){return this.frame.set("content",this.get("content")),this.frame.render(e),this},focus:function(e){return this.frame.focus(e),this},show:function(){return this.frame.show(),this},hide:function(){return this.frame.hide(),this},getContent:function(){var e="",t=this.getInstance();return t&&t.EditorSelection&&(e=t.EditorSelection.unfilter()),e=e.replace(/ _yuid="([^>]*)"/g,""),e}},{NORMALIZE_FONTSIZE:function(e){var t=e.getStyle("fontSize"),n=t;switch(t){case"-webkit-xxx-large":t="48px";break;case"xx-large":t="32px";break;case"x-large":t="24px";break;case"large":t="18px";break;case"medium":t="16px";break;case"small":t="13px";break;case"x-small":t="10px"}return n!==t&&e.setStyle("fontSize",t),t},TABKEY:'    ',FILTER_RGB:function(e){if(e.toLowerCase().indexOf("rgb")!==-1){var t=new RegExp("(.*?)rgb\\s*?\\(\\s*?([0-9]+).*?,\\s*?([0-9]+).*?,\\s*?([0-9]+).*?\\)(.*?)","gi"),n=e.replace(t,"$1,$2,$3,$4,$5").split(","),r,i,s;n.length===5&&(r=parseInt(n[1],10).toString(16),i=parseInt(n[2],10).toString(16),s=parseInt(n[3],10).toString(16),r=r.length===1?"0"+r:r,i=i.length===1?"0"+i:i,s=s.length===1?"0"+s:s,e="#"+r+i+s)}return e},TAG2CMD:{b:"bold",strong:"bold",i:"italic",em:"italic",u:"underline",sup:"superscript",sub:"subscript",img:"insertimage",a:"createlink",ul:"insertunorderedlist",ol:"insertorderedlist"},NC_KEYS:{8:"backspace",9:"tab",13:"enter",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",46:"delete"},USE:["node","selector-css3","editor-selection","stylesheet"],NAME:"editorBase",STRINGS:{title:"Rich Text Editor"},ATTRS:{content:{value:'
    ',setter:function(t){return t.substr(0,1)==="\n"&&(t=t.substr(1)),t===""&&(t='
    '),t===" "&&e.UA.gecko&&(t='
    '),this.frame.set("content",t)},getter:function(){return this.frame.get("content")}},dir:{writeOnce:!0,value:"ltr"},linkedcss:{value:"",setter:function(e){return this.frame&&this.frame.set("linkedcss",e),e}},extracss:{value:!1,setter:function(e){return this.frame&&this.frame.set("extracss",e),e}},defaultblock:{value:"p"}}}),e.EditorBase=n},"3.9.1",{requires:["base","frame","node","exec-command","editor-selection"]}); +:t.frameEvent})))},_onFrameKeyPress:function(e){var t=this._currentSelection;t&&t.anchorNode&&(this.fire("nodeChange",{changedNode:t.anchorNode,changedType:"keypress",changedEvent:e.frameEvent}),n.NC_KEYS[e.keyCode]&&this.fire("nodeChange",{changedNode:t.anchorNode,changedType:n.NC_KEYS[e.keyCode]+"-press",changedEvent:e.frameEvent}))},_onFrameKeyUp:function(e){var t=this.frame.getInstance(),r=new t.EditorSelection(e);r&&r.anchorNode&&(this.fire("nodeChange",{changedNode:r.anchorNode,changedType:"keyup",selection:r,changedEvent:e.frameEvent}),n.NC_KEYS[e.keyCode]&&this.fire("nodeChange",{changedNode:r.anchorNode,changedType:n.NC_KEYS[e.keyCode]+"-up",selection:r,changedEvent:e.frameEvent})),this._currentSelectionClear&&(this._currentSelectionClear=this._currentSelection=null)},execCommand:function(e,t){var n=this.frame.execCommand(e,t),r=this.frame.getInstance(),i=new r.EditorSelection,s={},o={changedNode:i.anchorNode,changedType:"execcommand",nodes:n};switch(e){case"forecolor":o.fontColor=t;break;case"backcolor":o.backgroundColor=t;break;case"fontsize":o.fontSize=t;break;case"fontname":o.fontFamily=t}return s[e]=1,o.commands=s,this.fire("nodeChange",o),n},getInstance:function(){return this.frame.getInstance()},render:function(e){return this.frame.set("content",this.get("content")),this.frame.render(e),this},focus:function(e){return this.frame.focus(e),this},show:function(){return this.frame.show(),this},hide:function(){return this.frame.hide(),this},getContent:function(){var e="",t=this.getInstance();return t&&t.EditorSelection&&(e=t.EditorSelection.unfilter()),e=e.replace(/ _yuid="([^>]*)"/g,""),e}},{NORMALIZE_FONTSIZE:function(e){var t=e.getStyle("fontSize"),n=t;switch(t){case"-webkit-xxx-large":t="48px";break;case"xx-large":t="32px";break;case"x-large":t="24px";break;case"large":t="18px";break;case"medium":t="16px";break;case"small":t="13px";break;case"x-small":t="10px"}return n!==t&&e.setStyle("fontSize",t),t},TABKEY:'    ',FILTER_RGB:function(e){if(e.toLowerCase().indexOf("rgb")!==-1){var t=new RegExp("(.*?)rgb\\s*?\\(\\s*?([0-9]+).*?,\\s*?([0-9]+).*?,\\s*?([0-9]+).*?\\)(.*?)","gi"),n=e.replace(t,"$1,$2,$3,$4,$5").split(","),r,i,s;n.length===5&&(r=parseInt(n[1],10).toString(16),i=parseInt(n[2],10).toString(16),s=parseInt(n[3],10).toString(16),r=r.length===1?"0"+r:r,i=i.length===1?"0"+i:i,s=s.length===1?"0"+s:s,e="#"+r+i+s)}return e},TAG2CMD:{b:"bold",strong:"bold",i:"italic",em:"italic",u:"underline",sup:"superscript",sub:"subscript",img:"insertimage",a:"createlink",ul:"insertunorderedlist",ol:"insertorderedlist"},NC_KEYS:{8:"backspace",9:"tab",13:"enter",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",46:"delete"},USE:["node","selector-css3","editor-selection","stylesheet"],NAME:"editorBase",STRINGS:{title:"Rich Text Editor"},ATTRS:{content:{value:'
    ',setter:function(t){return t.substr(0,1)==="\n"&&(t=t.substr(1)),t===""&&(t='
    '),t===" "&&e.UA.gecko&&(t='
    '),this.frame.set("content",t)},getter:function(){return this.frame.get("content")}},dir:{writeOnce:!0,value:"ltr"},linkedcss:{value:"",setter:function(e){return this.frame&&this.frame.set("linkedcss",e),e}},extracss:{value:!1,setter:function(e){return this.frame&&this.frame.set("extracss",e),e}},defaultblock:{value:"p"}}}),e.EditorBase=n},"3.12.0",{requires:["base","frame","node","exec-command","editor-selection"]}); diff --git a/lib/yuilib/3.9.1/build/editor-base/editor-base.js b/lib/yuilib/3.12.0/editor-base/editor-base.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/editor-base/editor-base.js rename to lib/yuilib/3.12.0/editor-base/editor-base.js index bfc13fec5ec..af8c518051b --- a/lib/yuilib/3.9.1/build/editor-base/editor-base.js +++ b/lib/yuilib/3.12.0/editor-base/editor-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-base', function (Y, NAME) { @@ -913,4 +919,4 @@ YUI.add('editor-base', function (Y, NAME) { -}, '3.9.1', {"requires": ["base", "frame", "node", "exec-command", "editor-selection"]}); +}, '3.12.0', {"requires": ["base", "frame", "node", "exec-command", "editor-selection"]}); diff --git a/lib/yuilib/3.9.1/build/editor-bidi/editor-bidi-debug.js b/lib/yuilib/3.12.0/editor-bidi/editor-bidi-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/editor-bidi/editor-bidi-debug.js rename to lib/yuilib/3.12.0/editor-bidi/editor-bidi-debug.js index 32320b704c1..8ce8e4b7f46 --- a/lib/yuilib/3.9.1/build/editor-bidi/editor-bidi-debug.js +++ b/lib/yuilib/3.12.0/editor-bidi/editor-bidi-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-bidi', function (Y, NAME) { @@ -335,4 +341,4 @@ YUI.add('editor-bidi', function (Y, NAME) { -}, '3.9.1', {"requires": ["editor-base"]}); +}, '3.12.0', {"requires": ["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-bidi/editor-bidi-min.js b/lib/yuilib/3.12.0/editor-bidi/editor-bidi-min.js old mode 100644 new mode 100755 similarity index 92% rename from lib/yuilib/3.9.1/build/editor-bidi/editor-bidi-min.js rename to lib/yuilib/3.12.0/editor-bidi/editor-bidi-min.js index 6787f5c9a22..4c989506840 --- a/lib/yuilib/3.9.1/build/editor-bidi/editor-bidi-min.js +++ b/lib/yuilib/3.12.0/editor-bidi/editor-bidi-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("editor-bidi",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="host",i="dir",s="BODY",o="nodeChange",u="bidiContextChange",a="style";e.extend(n,e.Base,{lastDirection:null,firstEvent:null,_checkForChange:function(){var e=this.get(r),t=e.getInstance(),i=new t.EditorSelection,s,o;i.isCollapsed?(s=n.blockParent(i.focusNode),s&&(o=s.getStyle("direction"),o!==this.lastDirection&&(e.fire(u,{changedTo:o}),this.lastDirection=o))):(e.fire(u,{changedTo:"select"}),this.lastDirection=null)},_afterNodeChange:function(e){if(this.firstEvent||n.EVENTS[e.changedType])this._checkForChange(),this.firstEvent=!1},_afterMouseUp:function(){this._checkForChange(),this.firstEvent=!1},initializer:function(){var t=this.get(r);this.firstEvent=!0,t.after(o,e.bind(this._afterNodeChange,this)),t.after("dom:mouseup",e.bind(this._afterMouseUp,this))}},{EVENTS:{"backspace-up":!0,"pageup-up":!0,"pagedown-down":!0,"end-up":!0,"home-up":!0,"left-up":!0,"up-up":!0,"right-up":!0,"down-up":!0,"delete-up":!0},BLOCKS:e.EditorSelection.BLOCKS,DIV_WRAPPER:"
    ",blockParent:function(t,r){var i=t,o,u;return i||(i=e.one(s)),i.test(n.BLOCKS)||(i=i.ancestor(n.BLOCKS)),r&&i.test(s)&&(o=e.Node.create(n.DIV_WRAPPER),i.get("children").each(function(e,t){t===0?u=e:o.append(e)}),u.replace(o),o.prepend(u),i=o),i},_NODE_SELECTED:"bidiSelected",addParents:function(e){var t,r,i;tester=function(e){if(!e.getData(n._NODE_SELECTED))return i=!1,!0};for(t=0;t",blockParent:function(t,r){var i=t,o,u;return i||(i=e.one(s)),i.test(n.BLOCKS)||(i=i.ancestor(n.BLOCKS)),r&&i.test(s)&&(o=e.Node.create(n.DIV_WRAPPER),i.get("children").each(function(e,t){t===0?u=e:o.append(e)}),u.replace(o),o.prepend(u),i=o),i},_NODE_SELECTED:"bidiSelected",addParents:function(e){var t,r,i;tester=function(e){if(!e.getData(n._NODE_SELECTED))return i=!1,!0};for(t=0;t"),a.previous(r).append(f),f.append(a),h=!0)),h&&(a.test(r)||(a=a.ancestor(r)),a.all(n.REMOVE).remove(),e.UA.ie&&(a=a.append(n.NON).one(n.NON_SEL)),(new u.EditorSelection).selectNode(a,!0,d)))},initializer:function(){this.get(o).on("nodeChange",e.bind(this._onNodeChange,this))}},{NON:' ',NON_SEL:"span.yui-non",REMOVE:"br",NAME:"editorLists",NS:"lists",ATTRS:{host:{value:!1}}}),e.namespace("Plugin"),e.Plugin.EditorLists=n},"3.9.1",{requires:["editor-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("editor-lists",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="li",i="ol",s="ul",o="host";e.extend(n,e.Base,{_onNodeChange:function(t){var u=this.get(o).getInstance(),a,f,l,c,h=!1,p,d=!1;t.changedType==="tab"&&(t.changedNode.test(r+", "+r+" *")&&(t.changedEvent.halt(),t.preventDefault(),a=t.changedNode,l=t.changedEvent.shiftKey,c=a.ancestor(i+","+s),p=s,c.get("tagName").toLowerCase()===i&&(p=i),a.test(r)||(a=a.ancestor(r)),l?a.ancestor(r)&&(a.ancestor(r).insert(a,"after"),h=!0,d=!0):a.previous(r)&&(f=u.Node.create("<"+p+">"),a.previous(r).append(f),f.append(a),h=!0)),h&&(a.test(r)||(a=a.ancestor(r)),a.all(n.REMOVE).remove(),e.UA.ie&&(a=a.append(n.NON).one(n.NON_SEL)),(new u.EditorSelection).selectNode(a,!0,d)))},initializer:function(){this.get(o).on("nodeChange",e.bind(this._onNodeChange,this))}},{NON:' ',NON_SEL:"span.yui-non",REMOVE:"br",NAME:"editorLists",NS:"lists",ATTRS:{host:{value:!1}}}),e.namespace("Plugin"),e.Plugin.EditorLists=n},"3.12.0",{requires:["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-lists/editor-lists.js b/lib/yuilib/3.12.0/editor-lists/editor-lists.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/editor-lists/editor-lists.js rename to lib/yuilib/3.12.0/editor-lists/editor-lists.js index c911226aceb..72e66224729 --- a/lib/yuilib/3.9.1/build/editor-lists/editor-lists.js +++ b/lib/yuilib/3.12.0/editor-lists/editor-lists.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-lists', function (Y, NAME) { @@ -120,4 +126,4 @@ YUI.add('editor-lists', function (Y, NAME) { -}, '3.9.1', {"requires": ["editor-base"]}); +}, '3.12.0', {"requires": ["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-para-base/editor-para-base-debug.js b/lib/yuilib/3.12.0/editor-para-base/editor-para-base-debug.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/editor-para-base/editor-para-base-debug.js rename to lib/yuilib/3.12.0/editor-para-base/editor-para-base-debug.js index 247ff64f5c6..b543948d9b7 --- a/lib/yuilib/3.9.1/build/editor-para-base/editor-para-base-debug.js +++ b/lib/yuilib/3.12.0/editor-para-base/editor-para-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-para-base', function (Y, NAME) { @@ -121,4 +127,4 @@ YUI.add('editor-para-base', function (Y, NAME) { -}, '3.9.1', {"requires": ["editor-base"]}); +}, '3.12.0', {"requires": ["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-para-base/editor-para-base-min.js b/lib/yuilib/3.12.0/editor-para-base/editor-para-base-min.js old mode 100644 new mode 100755 similarity index 84% rename from lib/yuilib/3.9.1/build/editor-para-base/editor-para-base-min.js rename to lib/yuilib/3.12.0/editor-para-base/editor-para-base-min.js index 3bc69791f22..b71f33cca47 --- a/lib/yuilib/3.9.1/build/editor-para-base/editor-para-base-min.js +++ b/lib/yuilib/3.12.0/editor-para-base/editor-para-base-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("editor-para-base",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="host",i="body",s=i+" > p",o="p",u="
    ";e.extend(n,e.Base,{_fixFirstPara:function(){var e=this.get(r),t=e.getInstance(),n,i,a=t.config.doc.body,f=a.innerHTML,l=f.length?!0:!1;f===u&&(f="",l=!1),a.innerHTML="<"+o+">"+f+t.EditorSelection.CURSOR+"",i=t.one(s),n=new t.EditorSelection,n.selectNode(i,!0,l)},_afterEditorReady:function(){var e=this.get(r),t=e.getInstance(),n;t&&(t.EditorSelection.filterBlocks(),n=t.EditorSelection.DEFAULT_BLOCK_TAG,s=i+" > "+n,o=n)},_afterContentChange:function(){var e=this.get(r),t=e.getInstance();t&&t.EditorSelection&&t.EditorSelection.filterBlocks()},_afterPaste:function(){var t=this.get(r),n=t.getInstance();e.later(50,t,function(){n.EditorSelection.filterBlocks()})},initializer:function(){var t=this.get(r);if(t.editorBR){e.error("Can not plug EditorPara and EditorBR at the same time.");return}t.after("ready",e.bind(this._afterEditorReady,this)),t.after("contentChange",e.bind(this._afterContentChange,this)),e.Env.webkit&&t.after("dom:paste",e.bind(this._afterPaste,this))}},{NAME:"editorParaBase",NS:"editorParaBase",ATTRS:{host:{value:!1}}}),e.namespace("Plugin"),e.Plugin.EditorParaBase=n},"3.9.1",{requires:["editor-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("editor-para-base",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="host",i="body",s=i+" > p",o="p",u="
    ";e.extend(n,e.Base,{_fixFirstPara:function(){var e=this.get(r),t=e.getInstance(),n,i,a=t.config.doc.body,f=a.innerHTML,l=f.length?!0:!1;f===u&&(f="",l=!1),a.innerHTML="<"+o+">"+f+t.EditorSelection.CURSOR+"",i=t.one(s),n=new t.EditorSelection,n.selectNode(i,!0,l)},_afterEditorReady:function(){var e=this.get(r),t=e.getInstance(),n;t&&(t.EditorSelection.filterBlocks(),n=t.EditorSelection.DEFAULT_BLOCK_TAG,s=i+" > "+n,o=n)},_afterContentChange:function(){var e=this.get(r),t=e.getInstance();t&&t.EditorSelection&&t.EditorSelection.filterBlocks()},_afterPaste:function(){var t=this.get(r),n=t.getInstance();e.later(50,t,function(){n.EditorSelection.filterBlocks()})},initializer:function(){var t=this.get(r);if(t.editorBR){e.error("Can not plug EditorPara and EditorBR at the same time.");return}t.after("ready",e.bind(this._afterEditorReady,this)),t.after("contentChange",e.bind(this._afterContentChange,this)),e.Env.webkit&&t.after("dom:paste",e.bind(this._afterPaste,this))}},{NAME:"editorParaBase",NS:"editorParaBase",ATTRS:{host:{value:!1}}}),e.namespace("Plugin"),e.Plugin.EditorParaBase=n},"3.12.0",{requires:["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-para-base/editor-para-base.js b/lib/yuilib/3.12.0/editor-para-base/editor-para-base.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/editor-para-base/editor-para-base.js rename to lib/yuilib/3.12.0/editor-para-base/editor-para-base.js index 257b561b1ec..fed985cea26 --- a/lib/yuilib/3.9.1/build/editor-para-base/editor-para-base.js +++ b/lib/yuilib/3.12.0/editor-para-base/editor-para-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-para-base', function (Y, NAME) { @@ -120,4 +126,4 @@ YUI.add('editor-para-base', function (Y, NAME) { -}, '3.9.1', {"requires": ["editor-base"]}); +}, '3.12.0', {"requires": ["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-para-ie/editor-para-ie-debug.js b/lib/yuilib/3.12.0/editor-para-ie/editor-para-ie-debug.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/editor-para-ie/editor-para-ie-debug.js rename to lib/yuilib/3.12.0/editor-para-ie/editor-para-ie-debug.js index 66879585e37..4b6c98c43e9 --- a/lib/yuilib/3.9.1/build/editor-para-ie/editor-para-ie-debug.js +++ b/lib/yuilib/3.12.0/editor-para-ie/editor-para-ie-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-para-ie', function (Y, NAME) { @@ -123,4 +129,4 @@ YUI.add('editor-para-ie', function (Y, NAME) { -}, '3.9.1', {"requires": ["editor-para-base"]}); +}, '3.12.0', {"requires": ["editor-para-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-para-ie/editor-para-ie-min.js b/lib/yuilib/3.12.0/editor-para-ie/editor-para-ie-min.js old mode 100644 new mode 100755 similarity index 85% rename from lib/yuilib/3.9.1/build/editor-para-ie/editor-para-ie-min.js rename to lib/yuilib/3.12.0/editor-para-ie/editor-para-ie-min.js index 2aaab5df236..4943aa59bd6 --- a/lib/yuilib/3.9.1/build/editor-para-ie/editor-para-ie-min.js +++ b/lib/yuilib/3.12.0/editor-para-ie/editor-para-ie-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("editor-para-ie",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="host",i="nodeChange",s="p";e.extend(n,e.Plugin.EditorParaBase,{_onNodeChange:function(e){var t=this.get(r),n=t.getInstance(),i=n.EditorSelection.DEFAULT_BLOCK_TAG,o,u=":last-child",a,f,l,c,h,p=!1;switch(e.changedType){case"enter-up":a=this._lastPara?this._lastPara:e.changedNode,f=a.one("br.yui-cursor"),this._lastPara&&delete this._lastPara,f&&(f.previous()||f.next())&&f.ancestor(s)&&f.remove(),a.test(i)||(l=a.ancestor(i),l&&(a=l,l=null));if(a.test(i)){o=a.previous();if(o){c=o.one(u);while(!p)c?(h=c.one(u),h?c=h:p=!0):p=!0;c&&t.copyStyles(c,a)}}break;case"enter":e.changedNode.test("br")?e.changedNode.remove():e.changedNode.test("p, span")&&(f=e.changedNode.one("br.yui-cursor"),f&&f.remove())}},initializer:function(){var t=this.get(r);if(t.editorBR){e.error("Can not plug EditorPara and EditorBR at the same time.");return}t.on(i,e.bind(this._onNodeChange,this))}},{NAME:"editorPara",NS:"editorPara",ATTRS:{host:{value:!1}}}),e.namespace("Plugin"),e.Plugin.EditorPara=n},"3.9.1",{requires:["editor-para-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("editor-para-ie",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="host",i="nodeChange",s="p";e.extend(n,e.Plugin.EditorParaBase,{_onNodeChange:function(e){var t=this.get(r),n=t.getInstance(),i=n.EditorSelection.DEFAULT_BLOCK_TAG,o,u=":last-child",a,f,l,c,h,p=!1;switch(e.changedType){case"enter-up":a=this._lastPara?this._lastPara:e.changedNode,f=a.one("br.yui-cursor"),this._lastPara&&delete this._lastPara,f&&(f.previous()||f.next())&&f.ancestor(s)&&f.remove(),a.test(i)||(l=a.ancestor(i),l&&(a=l,l=null));if(a.test(i)){o=a.previous();if(o){c=o.one(u);while(!p)c?(h=c.one(u),h?c=h:p=!0):p=!0;c&&t.copyStyles(c,a)}}break;case"enter":e.changedNode.test("br")?e.changedNode.remove():e.changedNode.test("p, span")&&(f=e.changedNode.one("br.yui-cursor"),f&&f.remove())}},initializer:function(){var t=this.get(r);if(t.editorBR){e.error("Can not plug EditorPara and EditorBR at the same time.");return}t.on(i,e.bind(this._onNodeChange,this))}},{NAME:"editorPara",NS:"editorPara",ATTRS:{host:{value:!1}}}),e.namespace("Plugin"),e.Plugin.EditorPara=n},"3.12.0",{requires:["editor-para-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-para-ie/editor-para-ie.js b/lib/yuilib/3.12.0/editor-para-ie/editor-para-ie.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/editor-para-ie/editor-para-ie.js rename to lib/yuilib/3.12.0/editor-para-ie/editor-para-ie.js index 66879585e37..4b6c98c43e9 --- a/lib/yuilib/3.9.1/build/editor-para-ie/editor-para-ie.js +++ b/lib/yuilib/3.12.0/editor-para-ie/editor-para-ie.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-para-ie', function (Y, NAME) { @@ -123,4 +129,4 @@ YUI.add('editor-para-ie', function (Y, NAME) { -}, '3.9.1', {"requires": ["editor-para-base"]}); +}, '3.12.0', {"requires": ["editor-para-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-para/editor-para-debug.js b/lib/yuilib/3.12.0/editor-para/editor-para-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/editor-para/editor-para-debug.js rename to lib/yuilib/3.12.0/editor-para/editor-para-debug.js index e2f6d971538..09ced3919d8 --- a/lib/yuilib/3.9.1/build/editor-para/editor-para-debug.js +++ b/lib/yuilib/3.12.0/editor-para/editor-para-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-para', function (Y, NAME) { @@ -300,4 +306,4 @@ YUI.add('editor-para', function (Y, NAME) { -}, '3.9.1', {"requires": ["editor-para-base"]}); +}, '3.12.0', {"requires": ["editor-para-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-para/editor-para-min.js b/lib/yuilib/3.12.0/editor-para/editor-para-min.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/editor-para/editor-para-min.js rename to lib/yuilib/3.12.0/editor-para/editor-para-min.js index 01e4c46d14a..1a922f1d900 --- a/lib/yuilib/3.9.1/build/editor-para/editor-para-min.js +++ b/lib/yuilib/3.12.0/editor-para/editor-para-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("editor-para",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="host",i="body",s="nodeChange",o="parentNode",u=i+" > p",a="p",f="
    ",l="firstChild",c="li";e.extend(n,e.Plugin.EditorParaBase,{_onNodeChange:function(t){var n=this.get(r),s=n.getInstance(),h,p,d,v,m,g=s.EditorSelection.DEFAULT_BLOCK_TAG,y,b,w,E,S,x,T,N,C,k,L,A,O,M,_,D,H=":last-child",B,j,F,I,q,R=!1,U;switch(t.changedType){case"enter-up":B=this._lastPara?this._lastPara:t.changedNode,j=B.one("br.yui-cursor"),this._lastPara&&delete this._lastPara,j&&(j.previous()||j.next())&&j.ancestor(a)&&j.remove(),B.test(g)||(C=B.ancestor(g),C&&(B=C,C=null));if(B.test(g)){k=B.previous();if(k){I=k.one(H);while(!R)I?(q=I.one(H),q?I=q:R=!0):R=!0;I&&n.copyStyles(I,B)}}break;case"enter":e.UA.webkit&&t.changedEvent.shiftKey&&(n.execCommand("insertbr"),t.changedEvent.preventDefault()),t.changedNode.test("li")&&!e.UA.ie&&(h=s.EditorSelection.getText(t.changedNode),h===""&&(d=t.changedNode.ancestor("ol,ul"),F=d.getAttribute("dir"),F!==""&&(F=' dir = "'+F+'"'),d=t.changedNode.ancestor(s.EditorSelection.BLOCKS),v=s.Node.create(""+s.EditorSelection.CURSOR+"

    "),d.insert(v,"after"),t.changedNode.remove(),t.changedEvent.halt(),m=new s.EditorSelection,m.selectNode(v,!0,!1)));if(e.UA.gecko&&n.get("defaultblock")!=="p"){d=t.changedNode;if(!d.test(c)&&!d.ancestor(c)){d.test(g)||(d=d.ancestor(g)),v=s.Node.create("<"+g+">"),d.insert(v,"after"),m=new s.EditorSelection;if(m.anchorOffset){y=m.anchorNode.get("textContent"),p=s.one(s.config.doc.createTextNode(y.substr(0,m.anchorOffset))),b=s.one(s.config.doc.createTextNode(y.substr(m.anchorOffset))),E=m.anchorNode,E.setContent(""),S=E.cloneNode(),S.append(b),x=!1,N=E;while(!x)N=N.get(o),N&&!N.test(g)?(T=N.cloneNode(),T.set("innerHTML",""),T.append(S),w=N.get("childNodes"),U=!1,w.each(function(e){U&&T.append(e),e===E&&(U=!0)}),E=N,S=T):x=!0;b=S,m.anchorNode.append(p),b&&v.append(b)}v.get(l)&&(v=v.get(l)),v.prepend(s.EditorSelection.CURSOR),m.focusCursor(!0,!0),h=s.EditorSelection.getText(v),h!==""&&s.EditorSelection.cleanCursor(),t.changedEvent.preventDefault()}}break;case"keyup":e.UA.gecko&&s.config.doc&&s.config.doc.body&&s.config.doc.body.innerHTML.length<20&&(s.one(u)||this._fixFirstPara());break;case"backspace-up":case"backspace-down":case"delete-up":e.UA.ie||(L=s.all(u),O=s.one(i),L.item(0)&&(O=L.item(0)),A=O.one("br"),A&&(A.removeAttribute("id"),A.removeAttribute("class")),p=s.EditorSelection.getText(O),p=p.replace(/ /g,"").replace(/\n/g,""),_=O.all("img"),p.length===0&&!_.size()&&(O.test(a)||this._fixFirstPara(),M=null,t.changedNode&&t.changedNode.test(a)&&(M=t.changedNode),!M&&n._lastPara&&n._lastPara.inDoc()&&(M=n._lastPara),M&&!M.test(a)&&(M=M.ancestor(a)),M&&!M.previous()&&M.get(o)&&M.get(o).test(i)&&(t.changedEvent.frameEvent.halt(),t.preventDefault())),e.UA.webkit&&t.changedNode&&(t.preventDefault(),O=t.changedNode,O.test("li")&&!O.previous()&&!O.next()&&(h=O.get("innerHTML").replace(f,""),h===""&&O.get(o)&&(O.get(o).replace(s.Node.create(f)),t.changedEvent.frameEvent.halt(),s.EditorSelection.filterBlocks())))),e.UA.gecko&&(v=t.changedNode,D=s.config.doc.createTextNode(" "),v.appendChild(D),v.removeChild(D))}e.UA.gecko&&t.changedNode&&!t.changedNode.test(g)&&(M=t.changedNode.ancestor(g),M&&(this._lastPara=M))},initializer:function(){var t=this.get(r);if(t.editorBR){e.error("Can not plug EditorPara and EditorBR at the same time.");return}t.on(s,e.bind(this._onNodeChange,this))}},{NAME:"editorPara",NS:"editorPara",ATTRS:{host:{value:!1}}}),e.namespace("Plugin"),e.Plugin.EditorPara=n},"3.9.1",{requires:["editor-para-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("editor-para",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="host",i="body",s="nodeChange",o="parentNode",u=i+" > p",a="p",f="
    ",l="firstChild",c="li";e.extend(n,e.Plugin.EditorParaBase,{_onNodeChange:function(t){var n=this.get(r),s=n.getInstance(),h,p,d,v,m,g=s.EditorSelection.DEFAULT_BLOCK_TAG,y,b,w,E,S,x,T,N,C,k,L,A,O,M,_,D,H=":last-child",B,j,F,I,q,R=!1,U;switch(t.changedType){case"enter-up":B=this._lastPara?this._lastPara:t.changedNode,j=B.one("br.yui-cursor"),this._lastPara&&delete this._lastPara,j&&(j.previous()||j.next())&&j.ancestor(a)&&j.remove(),B.test(g)||(C=B.ancestor(g),C&&(B=C,C=null));if(B.test(g)){k=B.previous();if(k){I=k.one(H);while(!R)I?(q=I.one(H),q?I=q:R=!0):R=!0;I&&n.copyStyles(I,B)}}break;case"enter":e.UA.webkit&&t.changedEvent.shiftKey&&(n.execCommand("insertbr"),t.changedEvent.preventDefault()),t.changedNode.test("li")&&!e.UA.ie&&(h=s.EditorSelection.getText(t.changedNode),h===""&&(d=t.changedNode.ancestor("ol,ul"),F=d.getAttribute("dir"),F!==""&&(F=' dir = "'+F+'"'),d=t.changedNode.ancestor(s.EditorSelection.BLOCKS),v=s.Node.create(""+s.EditorSelection.CURSOR+"

    "),d.insert(v,"after"),t.changedNode.remove(),t.changedEvent.halt(),m=new s.EditorSelection,m.selectNode(v,!0,!1)));if(e.UA.gecko&&n.get("defaultblock")!=="p"){d=t.changedNode;if(!d.test(c)&&!d.ancestor(c)){d.test(g)||(d=d.ancestor(g)),v=s.Node.create("<"+g+">"),d.insert(v,"after"),m=new s.EditorSelection;if(m.anchorOffset){y=m.anchorNode.get("textContent"),p=s.one(s.config.doc.createTextNode(y.substr(0,m.anchorOffset))),b=s.one(s.config.doc.createTextNode(y.substr(m.anchorOffset))),E=m.anchorNode,E.setContent(""),S=E.cloneNode(),S.append(b),x=!1,N=E;while(!x)N=N.get(o),N&&!N.test(g)?(T=N.cloneNode(),T.set("innerHTML",""),T.append(S),w=N.get("childNodes"),U=!1,w.each(function(e){U&&T.append(e),e===E&&(U=!0)}),E=N,S=T):x=!0;b=S,m.anchorNode.append(p),b&&v.append(b)}v.get(l)&&(v=v.get(l)),v.prepend(s.EditorSelection.CURSOR),m.focusCursor(!0,!0),h=s.EditorSelection.getText(v),h!==""&&s.EditorSelection.cleanCursor(),t.changedEvent.preventDefault()}}break;case"keyup":e.UA.gecko&&s.config.doc&&s.config.doc.body&&s.config.doc.body.innerHTML.length<20&&(s.one(u)||this._fixFirstPara());break;case"backspace-up":case"backspace-down":case"delete-up":e.UA.ie||(L=s.all(u),O=s.one(i),L.item(0)&&(O=L.item(0)),A=O.one("br"),A&&(A.removeAttribute("id"),A.removeAttribute("class")),p=s.EditorSelection.getText(O),p=p.replace(/ /g,"").replace(/\n/g,""),_=O.all("img"),p.length===0&&!_.size()&&(O.test(a)||this._fixFirstPara(),M=null,t.changedNode&&t.changedNode.test(a)&&(M=t.changedNode),!M&&n._lastPara&&n._lastPara.inDoc()&&(M=n._lastPara),M&&!M.test(a)&&(M=M.ancestor(a)),M&&!M.previous()&&M.get(o)&&M.get(o).test(i)&&(t.changedEvent.frameEvent.halt(),t.preventDefault())),e.UA.webkit&&t.changedNode&&(t.preventDefault(),O=t.changedNode,O.test("li")&&!O.previous()&&!O.next()&&(h=O.get("innerHTML").replace(f,""),h===""&&O.get(o)&&(O.get(o).replace(s.Node.create(f)),t.changedEvent.frameEvent.halt(),s.EditorSelection.filterBlocks())))),e.UA.gecko&&(v=t.changedNode,D=s.config.doc.createTextNode(" "),v.appendChild(D),v.removeChild(D))}e.UA.gecko&&t.changedNode&&!t.changedNode.test(g)&&(M=t.changedNode.ancestor(g),M&&(this._lastPara=M))},initializer:function(){var t=this.get(r);if(t.editorBR){e.error("Can not plug EditorPara and EditorBR at the same time.");return}t.on(s,e.bind(this._onNodeChange,this))}},{NAME:"editorPara",NS:"editorPara",ATTRS:{host:{value:!1}}}),e.namespace("Plugin"),e.Plugin.EditorPara=n},"3.12.0",{requires:["editor-para-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-para/editor-para.js b/lib/yuilib/3.12.0/editor-para/editor-para.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/editor-para/editor-para.js rename to lib/yuilib/3.12.0/editor-para/editor-para.js index b09f563a129..5fde6c7f03f --- a/lib/yuilib/3.9.1/build/editor-para/editor-para.js +++ b/lib/yuilib/3.12.0/editor-para/editor-para.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-para', function (Y, NAME) { @@ -299,4 +305,4 @@ YUI.add('editor-para', function (Y, NAME) { -}, '3.9.1', {"requires": ["editor-para-base"]}); +}, '3.12.0', {"requires": ["editor-para-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-selection/editor-selection-debug.js b/lib/yuilib/3.12.0/editor-selection/editor-selection-debug.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/editor-selection/editor-selection-debug.js rename to lib/yuilib/3.12.0/editor-selection/editor-selection-debug.js index 208dfc0223a..bf4784eb63a --- a/lib/yuilib/3.9.1/build/editor-selection/editor-selection-debug.js +++ b/lib/yuilib/3.12.0/editor-selection/editor-selection-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-selection', function (Y, NAME) { /** @@ -978,4 +984,4 @@ YUI.add('editor-selection', function (Y, NAME) { -}, '3.9.1', {"requires": ["node"]}); +}, '3.12.0', {"requires": ["node"]}); diff --git a/lib/yuilib/3.9.1/build/editor-selection/editor-selection-min.js b/lib/yuilib/3.12.0/editor-selection/editor-selection-min.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/editor-selection/editor-selection-min.js rename to lib/yuilib/3.12.0/editor-selection/editor-selection-min.js index 6aabb1920df..e93fcbadb13 --- a/lib/yuilib/3.9.1/build/editor-selection/editor-selection-min.js +++ b/lib/yuilib/3.12.0/editor-selection/editor-selection-min.js @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("editor-selection",function(e,t){var n="textContent",r="innerHTML",i="fontFamily";e.UA.ie&&(n="nodeValue"),e.EditorSelection=function(t){var n,r,i,s,o,u,a,f=0,l,c;e.config.win.getSelection&&(!e.UA.ie||e.UA.ie<9)?n=e.config.win.getSelection():e.config.doc.selection&&(n=e.config.doc.selection.createRange()),this._selection=n;if(!n)return!1;if(n.pasteHTML){this.isCollapsed=n.compareEndPoints("StartToEnd",n)?!1:!0;if(this.isCollapsed){this.anchorNode=this.focusNode=e.one(n.parentElement()),t&&(i=e.config.doc.elementFromPoint(t.clientX,t.clientY)),o=n.duplicate();if(!i){r=n.parentElement(),s=r.childNodes;for(u=0;u\?]/gi,e.EditorSelection.REG_NON=/[\s|\n|\t]/gi,e.EditorSelection.REG_NOHTML=/<\S[^><]*>/g,e.EditorSelection._wrapBlock=function(t){if(t){var n=e.Node.create("<"+e.EditorSelection.DEFAULT_BLOCK_TAG+">"),r=e.one(t[0]),i;for(i=1;i
    ","").replace("
    ",""),n},e.EditorSelection.DEFAULT_BLOCK_TAG="p",e.EditorSelection.ALL="[style],font[face]",e.EditorSelection.BLOCKS="p,div,ul,ol,table,style",e.EditorSelection.TMP="yui-tmp",e.EditorSelection.DEFAULT_TAG="span",e.EditorSelection.CURID="yui-cursor",e.EditorSelection.CUR_WRAPID="yui-cursor-wrapper",e.EditorSelection.CURSOR='
    ',e.EditorSelection.hasCursor=function(){var t=e.all("#"+e.EditorSelection.CUR_WRAPID);return t.size()},e.EditorSelection.cleanCursor=function(){var t,n="br.yui-cursor";t=e.all(n),t.size()&&t.each(function(t){var n=t.get("parentNode.parentNode.childNodes"),r;n.size()?t.remove -():(r=e.EditorSelection.getText(n.item(0)),r!==""&&t.remove())})},e.EditorSelection.prototype={text:null,isCollapsed:null,anchorNode:null,anchorOffset:null,anchorTextNode:null,focusNode:null,focusOffset:null,focusTextNode:null,_selection:null,_wrap:function(t,n){var i=e.Node.create("<"+n+">");return i.set(r,t.get(r)),t.set(r,""),t.append(i),e.Node.getDOMNode(i)},_swap:function(t,n){var i=e.Node.create("<"+n+">");return i.set(r,t.get(r)),t.replace(i,t),e.Node.getDOMNode(i)},getSelected:function(){e.EditorSelection.filter(),e.config.doc.execCommand("fontname",null,e.EditorSelection.TMP);var t=e.all(e.EditorSelection.ALL),n=[];return t.each(function(r,s){r.getStyle(i)===e.EditorSelection.TMP&&(r.setStyle(i,""),e.EditorSelection.removeFontFamily(r),r.test("body")||n.push(e.Node.getDOMNode(t.item(s))))}),e.all(n)},insertContent:function(e){return this.insertAtCursor(e,this.anchorTextNode,this.anchorOffset,!0)},insertAtCursor:function(t,r,i,s){var o=e.Node.create("<"+e.EditorSelection.DEFAULT_TAG+' class="yui-non">"),u,a,f,l,c=this.createRange(),h;r&&r.test("body")&&(h=e.Node.create(""),r.append(h),r=h);if(c.pasteHTML){if(i===0&&r&&!r.previous()&&r.get("nodeType")===3)return r.insert(t,"before"),c.moveToElementText&&c.moveToElementText(e.Node.getDOMNode(r.previous())),c.collapse(!1),c.select(),r.previous();l=e.Node.create(t);try{c.pasteHTML('')}catch(p){}u=e.one("#rte-insert");if(u)return u.set("id",""),u.replace(l),c.moveToElementText&&c.moveToElementText(e.Node.getDOMNode(l)),c.collapse(!1),c.select(),l;e.on("available",function(){u.set("id",""),u.replace(l),c.moveToElementText&&c.moveToElementText(e.Node.getDOMNode(l)),c.collapse(!1),c.select()},"#rte-insert")}else i>0?(u=r.get(n),a=e.one(e.config.doc.createTextNode(u.substr(0,i))),f=e.one(e.config.doc.createTextNode(u.substr(i))),r.replace(a,r),l=e.Node.create(t),l.get("nodeType")===11&&(h=e.Node.create(""),h.append(l),l=h),a.insert(l,"after"),f&&(l.insert(o,"after"),o.insert(f,"after"),this.selectNode(o,s))):(r.get("nodeType")===3&&(r=r.get("parentNode")),l=e.Node.create(t),t=r.get("innerHTML").replace(/\n/gi,""),t===""||t==="
    "?r.append(l):l.get("parentNode")?r.insert(l,"before"):e.one("body").prepend(l),r.get("firstChild").test("br")&&r.get("firstChild").remove());return l},wrapContent:function(t){t=t?t:e.EditorSelection.DEFAULT_TAG;if(!this.isCollapsed){var n=this.getSelected(),r=[],i,s,o,u;return n.each(function(e,i){var s=e.get("tagName").toLowerCase();s==="font"?r.push(this._swap(n.item(i),t)):r.push(this._wrap(n.item(i),t))},this),i=this.createRange(),o=r[0],s=r[r.length-1],this._selection.removeAllRanges?(i.setStart(r[0],0),i.setEnd(s,s.childNodes.length),this._selection.removeAllRanges(),this._selection.addRange(i)):(i.moveToElementText&&(i.moveToElementText(e.Node.getDOMNode(o)),u=this.createRange(),u.moveToElementText(e.Node.getDOMNode(s)),i.setEndPoint("EndToEnd",u)),i.select()),r=e.all(r),r}return e.all([])},replace:function(t,r){var i=this.createRange(),s,o,u,a;return i.getBookmark?(u=i.getBookmark(),o=this.anchorNode.get("innerHTML").replace(t,r),this.anchorNode.set("innerHTML",o),i.moveToBookmark(u),a=e.one(i.parentElement())):(s=this.anchorTextNode,o=s.get(n),u=o.indexOf(t),o=o.replace(t,""),s.set(n,o),a=this.insertAtCursor(r,s,u,!0)),a},remove:function(){return this._selection&&this._selection.removeAllRanges&&this._selection.removeAllRanges(),this},createRange:function(){return e.config.doc.selection?e.config.doc.selection.createRange():e.config.doc.createRange()},selectNode:function(t,n,r){if(!t)return;r=r||0,t=e.Node.getDOMNode(t);var i=this.createRange();if(i.selectNode){i.selectNode(t),this._selection.removeAllRanges(),this._selection.addRange(i);if(n)try{this._selection.collapse(t,r)}catch(s){this._selection.collapse(t,0)}}else{t.nodeType===3&&(t=t.parentNode);try{i.moveToElementText(t)}catch(o){}n&&i.collapse(r?!1:!0),i.select()}return this},setCursor:function(){return this.removeCursor(!1),this.insertContent(e.EditorSelection.CURSOR)},getCursor:function(){return e.all("#"+e.EditorSelection.CURID)},removeCursor:function(e){var t=this.getCursor();return t&&(e?(t.removeAttribute("id"),t.set("innerHTML",'
    ')):t.remove()),t},focusCursor:function(e,t){e!==!1&&(e=!0),t!==!1&&(t=!0);var n=this.removeCursor(!0);n&&n.each(function(n){this.selectNode(n,e,t)},this)},toString:function(){return"EditorSelection Object"}},e.Selection=e.EditorSelection},"3.9.1",{requires:["node"]}); +():(r=e.EditorSelection.getText(n.item(0)),r!==""&&t.remove())})},e.EditorSelection.prototype={text:null,isCollapsed:null,anchorNode:null,anchorOffset:null,anchorTextNode:null,focusNode:null,focusOffset:null,focusTextNode:null,_selection:null,_wrap:function(t,n){var i=e.Node.create("<"+n+">");return i.set(r,t.get(r)),t.set(r,""),t.append(i),e.Node.getDOMNode(i)},_swap:function(t,n){var i=e.Node.create("<"+n+">");return i.set(r,t.get(r)),t.replace(i,t),e.Node.getDOMNode(i)},getSelected:function(){e.EditorSelection.filter(),e.config.doc.execCommand("fontname",null,e.EditorSelection.TMP);var t=e.all(e.EditorSelection.ALL),n=[];return t.each(function(r,s){r.getStyle(i)===e.EditorSelection.TMP&&(r.setStyle(i,""),e.EditorSelection.removeFontFamily(r),r.test("body")||n.push(e.Node.getDOMNode(t.item(s))))}),e.all(n)},insertContent:function(e){return this.insertAtCursor(e,this.anchorTextNode,this.anchorOffset,!0)},insertAtCursor:function(t,r,i,s){var o=e.Node.create("<"+e.EditorSelection.DEFAULT_TAG+' class="yui-non">"),u,a,f,l,c=this.createRange(),h;r&&r.test("body")&&(h=e.Node.create(""),r.append(h),r=h);if(c.pasteHTML){if(i===0&&r&&!r.previous()&&r.get("nodeType")===3)return r.insert(t,"before"),c.moveToElementText&&c.moveToElementText(e.Node.getDOMNode(r.previous())),c.collapse(!1),c.select(),r.previous();l=e.Node.create(t);try{c.pasteHTML('')}catch(p){}u=e.one("#rte-insert");if(u)return u.set("id",""),u.replace(l),c.moveToElementText&&c.moveToElementText(e.Node.getDOMNode(l)),c.collapse(!1),c.select(),l;e.on("available",function(){u.set("id",""),u.replace(l),c.moveToElementText&&c.moveToElementText(e.Node.getDOMNode(l)),c.collapse(!1),c.select()},"#rte-insert")}else i>0?(u=r.get(n),a=e.one(e.config.doc.createTextNode(u.substr(0,i))),f=e.one(e.config.doc.createTextNode(u.substr(i))),r.replace(a,r),l=e.Node.create(t),l.get("nodeType")===11&&(h=e.Node.create(""),h.append(l),l=h),a.insert(l,"after"),f&&(l.insert(o,"after"),o.insert(f,"after"),this.selectNode(o,s))):(r.get("nodeType")===3&&(r=r.get("parentNode")),l=e.Node.create(t),t=r.get("innerHTML").replace(/\n/gi,""),t===""||t==="
    "?r.append(l):l.get("parentNode")?r.insert(l,"before"):e.one("body").prepend(l),r.get("firstChild").test("br")&&r.get("firstChild").remove());return l},wrapContent:function(t){t=t?t:e.EditorSelection.DEFAULT_TAG;if(!this.isCollapsed){var n=this.getSelected(),r=[],i,s,o,u;return n.each(function(e,i){var s=e.get("tagName").toLowerCase();s==="font"?r.push(this._swap(n.item(i),t)):r.push(this._wrap(n.item(i),t))},this),i=this.createRange(),o=r[0],s=r[r.length-1],this._selection.removeAllRanges?(i.setStart(r[0],0),i.setEnd(s,s.childNodes.length),this._selection.removeAllRanges(),this._selection.addRange(i)):(i.moveToElementText&&(i.moveToElementText(e.Node.getDOMNode(o)),u=this.createRange(),u.moveToElementText(e.Node.getDOMNode(s)),i.setEndPoint("EndToEnd",u)),i.select()),r=e.all(r),r}return e.all([])},replace:function(t,r){var i=this.createRange(),s,o,u,a;return i.getBookmark?(u=i.getBookmark(),o=this.anchorNode.get("innerHTML").replace(t,r),this.anchorNode.set("innerHTML",o),i.moveToBookmark(u),a=e.one(i.parentElement())):(s=this.anchorTextNode,o=s.get(n),u=o.indexOf(t),o=o.replace(t,""),s.set(n,o),a=this.insertAtCursor(r,s,u,!0)),a},remove:function(){return this._selection&&this._selection.removeAllRanges&&this._selection.removeAllRanges(),this},createRange:function(){return e.config.doc.selection?e.config.doc.selection.createRange():e.config.doc.createRange()},selectNode:function(t,n,r){if(!t)return;r=r||0,t=e.Node.getDOMNode(t);var i=this.createRange();if(i.selectNode){i.selectNode(t),this._selection.removeAllRanges(),this._selection.addRange(i);if(n)try{this._selection.collapse(t,r)}catch(s){this._selection.collapse(t,0)}}else{t.nodeType===3&&(t=t.parentNode);try{i.moveToElementText(t)}catch(o){}n&&i.collapse(r?!1:!0),i.select()}return this},setCursor:function(){return this.removeCursor(!1),this.insertContent(e.EditorSelection.CURSOR)},getCursor:function(){return e.all("#"+e.EditorSelection.CURID)},removeCursor:function(e){var t=this.getCursor();return t&&(e?(t.removeAttribute("id"),t.set("innerHTML",'
    ')):t.remove()),t},focusCursor:function(e,t){e!==!1&&(e=!0),t!==!1&&(t=!0);var n=this.removeCursor(!0);n&&n.each(function(n){this.selectNode(n,e,t)},this)},toString:function(){return"EditorSelection Object"}},e.Selection=e.EditorSelection},"3.12.0",{requires:["node"]}); diff --git a/lib/yuilib/3.9.1/build/editor-selection/editor-selection.js b/lib/yuilib/3.12.0/editor-selection/editor-selection.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/editor-selection/editor-selection.js rename to lib/yuilib/3.12.0/editor-selection/editor-selection.js index 894df22063e..7f127620a67 --- a/lib/yuilib/3.9.1/build/editor-selection/editor-selection.js +++ b/lib/yuilib/3.12.0/editor-selection/editor-selection.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-selection', function (Y, NAME) { /** @@ -962,4 +968,4 @@ YUI.add('editor-selection', function (Y, NAME) { -}, '3.9.1', {"requires": ["node"]}); +}, '3.12.0', {"requires": ["node"]}); diff --git a/lib/yuilib/3.9.1/build/editor-tab/editor-tab-debug.js b/lib/yuilib/3.12.0/editor-tab/editor-tab-debug.js old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/editor-tab/editor-tab-debug.js rename to lib/yuilib/3.12.0/editor-tab/editor-tab-debug.js index 1550065142b..b934780678d --- a/lib/yuilib/3.9.1/build/editor-tab/editor-tab-debug.js +++ b/lib/yuilib/3.12.0/editor-tab/editor-tab-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-tab', function (Y, NAME) { @@ -67,4 +73,4 @@ YUI.add('editor-tab', function (Y, NAME) { Y.Plugin.EditorTab = EditorTab; -}, '3.9.1', {"requires": ["editor-base"]}); +}, '3.12.0', {"requires": ["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-tab/editor-tab-min.js b/lib/yuilib/3.12.0/editor-tab/editor-tab-min.js old mode 100644 new mode 100755 similarity index 72% rename from lib/yuilib/3.9.1/build/editor-tab/editor-tab-min.js rename to lib/yuilib/3.12.0/editor-tab/editor-tab-min.js index 572ec174217..0addd97d7d7 --- a/lib/yuilib/3.9.1/build/editor-tab/editor-tab-min.js +++ b/lib/yuilib/3.12.0/editor-tab/editor-tab-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("editor-tab",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="host";e.extend(n,e.Base,{_onNodeChange:function(e){var t="indent";e.changedType==="tab"&&(e.changedNode.test("li, li *")||(e.changedEvent.halt(),e.preventDefault(),e.changedEvent.shiftKey&&(t="outdent"),this.get(r).execCommand(t,"")))},initializer:function(){this.get(r).on("nodeChange",e.bind(this._onNodeChange,this))}},{NAME:"editorTab",NS:"tab",ATTRS:{host:{value:!1}}}),e.namespace("Plugin"),e.Plugin.EditorTab=n},"3.9.1",{requires:["editor-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("editor-tab",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="host";e.extend(n,e.Base,{_onNodeChange:function(e){var t="indent";e.changedType==="tab"&&(e.changedNode.test("li, li *")||(e.changedEvent.halt(),e.preventDefault(),e.changedEvent.shiftKey&&(t="outdent"),this.get(r).execCommand(t,"")))},initializer:function(){this.get(r).on("nodeChange",e.bind(this._onNodeChange,this))}},{NAME:"editorTab",NS:"tab",ATTRS:{host:{value:!1}}}),e.namespace("Plugin"),e.Plugin.EditorTab=n},"3.12.0",{requires:["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/editor-tab/editor-tab.js b/lib/yuilib/3.12.0/editor-tab/editor-tab.js old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/editor-tab/editor-tab.js rename to lib/yuilib/3.12.0/editor-tab/editor-tab.js index 9adc094a533..2c05aa8bef6 --- a/lib/yuilib/3.9.1/build/editor-tab/editor-tab.js +++ b/lib/yuilib/3.12.0/editor-tab/editor-tab.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('editor-tab', function (Y, NAME) { @@ -66,4 +72,4 @@ YUI.add('editor-tab', function (Y, NAME) { Y.Plugin.EditorTab = EditorTab; -}, '3.9.1', {"requires": ["editor-base"]}); +}, '3.12.0', {"requires": ["editor-base"]}); diff --git a/lib/yuilib/3.9.1/build/escape/escape-debug.js b/lib/yuilib/3.12.0/escape/escape-debug.js old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/escape/escape-debug.js rename to lib/yuilib/3.12.0/escape/escape-debug.js index b25c6b82e7a..1b307f63d29 --- a/lib/yuilib/3.9.1/build/escape/escape-debug.js +++ b/lib/yuilib/3.12.0/escape/escape-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('escape', function (Y, NAME) { /** @@ -90,4 +96,4 @@ Escape.regexp = Escape.regex; Y.Escape = Escape; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/escape/escape-min.js b/lib/yuilib/3.12.0/escape/escape-min.js old mode 100644 new mode 100755 similarity index 61% rename from lib/yuilib/3.9.1/build/escape/escape-min.js rename to lib/yuilib/3.12.0/escape/escape-min.js index 8240889f151..c41a4bc53ee --- a/lib/yuilib/3.9.1/build/escape/escape-min.js +++ b/lib/yuilib/3.12.0/escape/escape-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("escape",function(e,t){var n={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`"},r={html:function(e){return(e+"").replace(/[&<>"'\/`]/g,r._htmlReplacer)},regex:function(e){return(e+"").replace(/[\-$\^*()+\[\]{}|\\,.?\s]/g,"\\$&")},_htmlReplacer:function(e){return n[e]}};r.regexp=r.regex,e.Escape=r},"3.9.1",{requires:["yui-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("escape",function(e,t){var n={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`"},r={html:function(e){return(e+"").replace(/[&<>"'\/`]/g,r._htmlReplacer)},regex:function(e){return(e+"").replace(/[\-$\^*()+\[\]{}|\\,.?\s]/g,"\\$&")},_htmlReplacer:function(e){return n[e]}};r.regexp=r.regex,e.Escape=r},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/escape/escape.js b/lib/yuilib/3.12.0/escape/escape.js old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/escape/escape.js rename to lib/yuilib/3.12.0/escape/escape.js index b25c6b82e7a..1b307f63d29 --- a/lib/yuilib/3.9.1/build/escape/escape.js +++ b/lib/yuilib/3.12.0/escape/escape.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('escape', function (Y, NAME) { /** @@ -90,4 +96,4 @@ Escape.regexp = Escape.regex; Y.Escape = Escape; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-base-ie/event-base-ie-debug.js b/lib/yuilib/3.12.0/event-base-ie/event-base-ie-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/event-base-ie/event-base-ie-debug.js rename to lib/yuilib/3.12.0/event-base-ie/event-base-ie-debug.js index 3d6758a6426..724c23dadba --- a/lib/yuilib/3.9.1/build/event-base-ie/event-base-ie-debug.js +++ b/lib/yuilib/3.12.0/event-base-ie/event-base-ie-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + (function() { var stateChangeListener, @@ -220,7 +226,7 @@ IELazyFacade._lazyProperties = { var e = this._event, val = e.pageX, doc, bodyScroll, docScroll; - + if (val === undefined) { doc = Y.config.doc; bodyScroll = doc.body && doc.body.scrollLeft; @@ -235,7 +241,7 @@ IELazyFacade._lazyProperties = { var e = this._event, val = e.pageY, doc, bodyScroll, docScroll; - + if (val === undefined) { doc = Y.config.doc; bodyScroll = doc.body && doc.body.scrollTop; @@ -296,9 +302,9 @@ if (imp && (!imp.hasFeature('Events', '2.0'))) { useLazyFacade = false; } } - + Y.DOMEventFacade = (useLazyFacade) ? IELazyFacade : IEEventFacade; } -}, '3.9.1', {"requires": ["node-base"]}); +}, '3.12.0', {"requires": ["node-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-base-ie/event-base-ie-min.js b/lib/yuilib/3.12.0/event-base-ie/event-base-ie-min.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/event-base-ie/event-base-ie-min.js rename to lib/yuilib/3.12.0/event-base-ie/event-base-ie-min.js index 523de258924..6fd8174a5a7 --- a/lib/yuilib/3.9.1/build/event-base-ie/event-base-ie-min.js +++ b/lib/yuilib/3.12.0/event-base-ie/event-base-ie-min.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + (function(){var e,t=YUI.Env,n=YUI.config,r=n.doc,i=r&&r.documentElement,s="onreadystatechange",o=n.pollInterval||40;i.doScroll&&!t._ieready&&(t._ieready=function(){t._ready()}, /*! DOMReady: based on work by: Dean Edwards/John Resig/Matthias Miller/Diego Perini */ -self!==self.top?(e=function(){r.readyState=="complete"&&(t.remove(r,s,e),t.ieready())},t.add(r,s,e)):t._dri=setInterval(function(){try{i.doScroll("left"),clearInterval(t._dri),t._dri=null,t._ieready()}catch(e){}},o))})(),YUI.add("event-base-ie",function(e,t){function n(){e.DOM2EventFacade.apply(this,arguments)}function r(t){var n=e.config.doc.createEventObject(t),i=r.prototype;return n.hasOwnProperty=function(){return!0},n.init=i.init,n.halt=i.halt,n.preventDefault=i.preventDefault,n.stopPropagation=i.stopPropagation,n.stopImmediatePropagation=i.stopImmediatePropagation,e.DOM2EventFacade.apply(n,arguments),n}var i=e.config.doc&&e.config.doc.implementation,s=e.config.lazyEventFacade,o={0:1,4:2,2:3},u={mouseout:"toElement",mouseover:"fromElement"},a=e.DOM2EventFacade.resolve,f={init:function(){n.superclass.init.apply(this,arguments);var t=this._event,r,i,s,u,f,l;this.target=a(t.srcElement),"clientX"in t&&!r&&0!==r&&(r=t.clientX,i=t.clientY,s=e.config.doc,u=s.body,f=s.documentElement,r+=f.scrollLeft||u&&u.scrollLeft||0,i+=f.scrollTop||u&&u.scrollTop||0,this.pageX=r,this.pageY=i),t.type=="mouseout"?l=t.toElement:t.type=="mouseover"&&(l=t.fromElement),this.relatedTarget=a(l||t.relatedTarget),this.which=this.button=t.keyCode||o[t.button]||t.button},stopPropagation:function(){this._event.cancelBubble=!0,this._wrapper.stopped=1,this.stopped=1},stopImmediatePropagation:function(){this.stopPropagation(),this._wrapper.stopped=2,this.stopped=2},preventDefault:function(e){this._event.returnValue=e||!1,this._wrapper.prevented=1,this.prevented=1}};e.extend(n,e.DOM2EventFacade,f),e.extend(r,e.DOM2EventFacade,f),r.prototype.init=function(){var e=this._event,t=this._wrapper.overrides,n=r._define,i=r._lazyProperties,s;this.altKey=e.altKey,this.ctrlKey=e.ctrlKey,this.metaKey=e.metaKey,this.shiftKey=e.shiftKey,this.type=t&&t.type||e.type,this.clientX=e.clientX,this.clientY=e.clientY,this.keyCode=this.charCode=e.keyCode,this.which=this.button=e.keyCode||o[e.button]||e.button;for(s in i)i.hasOwnProperty(s)&&n(this,s,i[s]);this._touch&&this._touch(e,this._currentTarget,this._wrapper)},r._lazyProperties={target:function(){return a(this._event.srcElement)},relatedTarget:function(){var e=this._event,t=u[e.type]||"relatedTarget";return a(e[t]||e.relatedTarget)},currentTarget:function(){return a(this._currentTarget)},wheelDelta:function(){var e=this._event;if(e.type==="mousewheel"||e.type==="DOMMouseScroll")return e.detail?e.detail*-1:Math.round(e.wheelDelta/80)||(e.wheelDelta<0?-1:1)},pageX:function(){var t=this._event,n=t.pageX,r,i,s;return n===undefined&&(r=e.config.doc,i=r.body&&r.body.scrollLeft,s=r.documentElement.scrollLeft,n=t.clientX+(s||i||0)),n},pageY:function(){var t=this._event,n=t.pageY,r,i,s;return n===undefined&&(r=e.config.doc,i=r.body&&r.body.scrollTop,s=r.documentElement.scrollTop,n=t.clientY+(s||i||0)),n}},r._define=function(e,t,n){function r(r){var i=arguments.length?r:n.call(this);return delete e[t],Object.defineProperty(e,t,{value:i,configurable:!0,writable:!0}),i}Object.defineProperty(e,t,{get:r,set:r,configurable:!0})};if(i&&!i.hasFeature("Events","2.0")){if(s)try{Object.defineProperty(e.config.doc.createEventObject(),"z",{})}catch(l){s=!1}e.DOMEventFacade=s?r:n}},"3.9.1",{requires:["node-base"]}); +self!==self.top?(e=function(){r.readyState=="complete"&&(t.remove(r,s,e),t.ieready())},t.add(r,s,e)):t._dri=setInterval(function(){try{i.doScroll("left"),clearInterval(t._dri),t._dri=null,t._ieready()}catch(e){}},o))})(),YUI.add("event-base-ie",function(e,t){function n(){e.DOM2EventFacade.apply(this,arguments)}function r(t){var n=e.config.doc.createEventObject(t),i=r.prototype;return n.hasOwnProperty=function(){return!0},n.init=i.init,n.halt=i.halt,n.preventDefault=i.preventDefault,n.stopPropagation=i.stopPropagation,n.stopImmediatePropagation=i.stopImmediatePropagation,e.DOM2EventFacade.apply(n,arguments),n}var i=e.config.doc&&e.config.doc.implementation,s=e.config.lazyEventFacade,o={0:1,4:2,2:3},u={mouseout:"toElement",mouseover:"fromElement"},a=e.DOM2EventFacade.resolve,f={init:function(){n.superclass.init.apply(this,arguments);var t=this._event,r,i,s,u,f,l;this.target=a(t.srcElement),"clientX"in t&&!r&&0!==r&&(r=t.clientX,i=t.clientY,s=e.config.doc,u=s.body,f=s.documentElement,r+=f.scrollLeft||u&&u.scrollLeft||0,i+=f.scrollTop||u&&u.scrollTop||0,this.pageX=r,this.pageY=i),t.type=="mouseout"?l=t.toElement:t.type=="mouseover"&&(l=t.fromElement),this.relatedTarget=a(l||t.relatedTarget),this.which=this.button=t.keyCode||o[t.button]||t.button},stopPropagation:function(){this._event.cancelBubble=!0,this._wrapper.stopped=1,this.stopped=1},stopImmediatePropagation:function(){this.stopPropagation(),this._wrapper.stopped=2,this.stopped=2},preventDefault:function(e){this._event.returnValue=e||!1,this._wrapper.prevented=1,this.prevented=1}};e.extend(n,e.DOM2EventFacade,f),e.extend(r,e.DOM2EventFacade,f),r.prototype.init=function(){var e=this._event,t=this._wrapper.overrides,n=r._define,i=r._lazyProperties,s;this.altKey=e.altKey,this.ctrlKey=e.ctrlKey,this.metaKey=e.metaKey,this.shiftKey=e.shiftKey,this.type=t&&t.type||e.type,this.clientX=e.clientX,this.clientY=e.clientY,this.keyCode=this.charCode=e.keyCode,this.which=this.button=e.keyCode||o[e.button]||e.button;for(s in i)i.hasOwnProperty(s)&&n(this,s,i[s]);this._touch&&this._touch(e,this._currentTarget,this._wrapper)},r._lazyProperties={target:function(){return a(this._event.srcElement)},relatedTarget:function(){var e=this._event,t=u[e.type]||"relatedTarget";return a(e[t]||e.relatedTarget)},currentTarget:function(){return a(this._currentTarget)},wheelDelta:function(){var e=this._event;if(e.type==="mousewheel"||e.type==="DOMMouseScroll")return e.detail?e.detail*-1:Math.round(e.wheelDelta/80)||(e.wheelDelta<0?-1:1)},pageX:function(){var t=this._event,n=t.pageX,r,i,s;return n===undefined&&(r=e.config.doc,i=r.body&&r.body.scrollLeft,s=r.documentElement.scrollLeft,n=t.clientX+(s||i||0)),n},pageY:function(){var t=this._event,n=t.pageY,r,i,s;return n===undefined&&(r=e.config.doc,i=r.body&&r.body.scrollTop,s=r.documentElement.scrollTop,n=t.clientY+(s||i||0)),n}},r._define=function(e,t,n){function r(r){var i=arguments.length?r:n.call(this);return delete e[t],Object.defineProperty(e,t,{value:i,configurable:!0,writable:!0}),i}Object.defineProperty(e,t,{get:r,set:r,configurable:!0})};if(i&&!i.hasFeature("Events","2.0")){if(s)try{Object.defineProperty(e.config.doc.createEventObject(),"z",{})}catch(l){s=!1}e.DOMEventFacade=s?r:n}},"3.12.0",{requires:["node-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-base-ie/event-base-ie.js b/lib/yuilib/3.12.0/event-base-ie/event-base-ie.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/event-base-ie/event-base-ie.js rename to lib/yuilib/3.12.0/event-base-ie/event-base-ie.js index 3d6758a6426..724c23dadba --- a/lib/yuilib/3.9.1/build/event-base-ie/event-base-ie.js +++ b/lib/yuilib/3.12.0/event-base-ie/event-base-ie.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + (function() { var stateChangeListener, @@ -220,7 +226,7 @@ IELazyFacade._lazyProperties = { var e = this._event, val = e.pageX, doc, bodyScroll, docScroll; - + if (val === undefined) { doc = Y.config.doc; bodyScroll = doc.body && doc.body.scrollLeft; @@ -235,7 +241,7 @@ IELazyFacade._lazyProperties = { var e = this._event, val = e.pageY, doc, bodyScroll, docScroll; - + if (val === undefined) { doc = Y.config.doc; bodyScroll = doc.body && doc.body.scrollTop; @@ -296,9 +302,9 @@ if (imp && (!imp.hasFeature('Events', '2.0'))) { useLazyFacade = false; } } - + Y.DOMEventFacade = (useLazyFacade) ? IELazyFacade : IEEventFacade; } -}, '3.9.1', {"requires": ["node-base"]}); +}, '3.12.0', {"requires": ["node-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-base/event-base-debug.js b/lib/yuilib/3.12.0/event-base/event-base-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/event-base/event-base-debug.js rename to lib/yuilib/3.12.0/event-base/event-base-debug.js index e7865ea1ef4..f1fe77cc91d --- a/lib/yuilib/3.9.1/build/event-base/event-base-debug.js +++ b/lib/yuilib/3.12.0/event-base/event-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + (function () { var GLOBAL_ENV = YUI.Env; @@ -158,7 +164,7 @@ Y.extend(DOMEventFacade, Object, { // Webkit and IE9+? duplicate charCode in keyCode. // Opera never sets charCode, always keyCode (though with the charCode). // IE6-8 don't set charCode or which. - // All browsers other than IE6-8 set which=keyCode in keydown, keyup, and + // All browsers other than IE6-8 set which=keyCode in keydown, keyup, and // which=charCode in keypress. // // Moral of the story: (e.which || e.keyCode) will always return the @@ -377,6 +383,7 @@ Y.DOMEventFacade = DOMEventFacade; * on the current target will not be executed */ (function() { + /** * The event utility provides functions to add and remove event listeners, * event cleansing. It also tries to automatically remove listeners it @@ -398,8 +405,7 @@ Y.DOMEventFacade = DOMEventFacade; Y.Env.evt.dom_wrappers = {}; Y.Env.evt.dom_map = {}; -var YDOM = Y.DOM, - _eventenv = Y.Env.evt, +var _eventenv = Y.Env.evt, config = Y.config, win = config.win, add = YUI.Env.add, @@ -422,7 +428,7 @@ var YDOM = Y.DOM, shouldIterate = function(o) { try { // TODO: See if there's a more performant way to return true early on this, for the common case - return (o && typeof o !== "string" && Y.Lang.isNumber(o.length) && !o.tagName && !YDOM.isWindow(o)); + return (o && typeof o !== "string" && Y.Lang.isNumber(o.length) && !o.tagName && !Y.DOM.isWindow(o)); } catch(ex) { Y.log("collection check failure", "warn", "event"); return false; @@ -707,6 +713,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); cewrapper = Y.publish(key, { silent: true, bubbles: false, + emitFacade:false, contextFn: function() { if (compat) { return cewrapper.el; @@ -792,7 +799,7 @@ Y.log(type + " attach call failed, invalid callback", "error", "event"); // oEl = (compat) ? Y.DOM.byId(el) : Y.Selector.query(el); if (compat) { - oEl = YDOM.byId(el); + oEl = Y.DOM.byId(el); } else { oEl = Y.Selector.query(el); @@ -909,7 +916,7 @@ Y.log(type + " attach call failed, invalid callback", "error", "event"); // el = (compat) ? Y.DOM.byId(el) : Y.all(el); if (compat) { - el = YDOM.byId(el); + el = Y.DOM.byId(el); } else { el = Y.Selector.query(el); l = el.length; @@ -983,7 +990,7 @@ Y.log(type + " attach call failed, invalid callback", "error", "event"); * @static */ generateId: function(el) { - return YDOM.generateID(el); + return Y.DOM.generateID(el); }, /** @@ -1093,7 +1100,7 @@ Y.log(type + " attach call failed, invalid callback", "error", "event"); if (item && !item.checkReady) { // el = (item.compat) ? Y.DOM.byId(item.id) : Y.one(item.id); - el = (item.compat) ? YDOM.byId(item.id) : Y.Selector.query(item.id, null, true); + el = (item.compat) ? Y.DOM.byId(item.id) : Y.Selector.query(item.id, null, true); if (el) { // Y.log('avail: ' + el); @@ -1112,7 +1119,7 @@ Y.log(type + " attach call failed, invalid callback", "error", "event"); if (item && item.checkReady) { // el = (item.compat) ? Y.DOM.byId(item.id) : Y.one(item.id); - el = (item.compat) ? YDOM.byId(item.id) : Y.Selector.query(item.id, null, true); + el = (item.compat) ? Y.DOM.byId(item.id) : Y.Selector.query(item.id, null, true); if (el) { // The element is available, but not necessarily ready @@ -1307,12 +1314,18 @@ if (config.injected || YUI.Env.windowLoaded) { // Process onAvailable/onContentReady items when when the DOM is ready in IE if (Y.UA.ie) { Y.on(EVENT_READY, Event._poll); -} -try { - add(win, "unload", onUnload); -} catch(e) { - Y.log("Registering unload listener failed. This is known to happen in Chrome Packaged Apps and Extensions, which don't support unload, and don't provide a way to test for support", "warn", "event-base"); + // In IE6 and below, detach event handlers when the page is unloaded in + // order to try and prevent cross-page memory leaks. This isn't done in + // other browsers because a) it's not necessary, and b) it breaks the + // back/forward cache. + if (Y.UA.ie < 7) { + try { + add(win, "unload", onUnload); + } catch(e) { + Y.log("Registering unload listener failed.", "warn", "event-base"); + } + } } Event.Custom = Y.CustomEvent; @@ -1378,4 +1391,4 @@ Y.Env.evt.plugins.contentready = { }; -}, '3.9.1', {"requires": ["event-custom-base"]}); +}, '3.12.0', {"requires": ["event-custom-base"]}); diff --git a/lib/yuilib/3.12.0/event-base/event-base-min.js b/lib/yuilib/3.12.0/event-base/event-base-min.js new file mode 100755 index 00000000000..0c0800fc724 --- /dev/null +++ b/lib/yuilib/3.12.0/event-base/event-base-min.js @@ -0,0 +1,9 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +(function(){var e=YUI.Env;e._ready||(e._ready=function(){e.DOMReady=!0,e.remove(YUI.config.doc,"DOMContentLoaded",e._ready)},e.add(YUI.config.doc,"DOMContentLoaded",e._ready))})(),YUI.add("event-base",function(e,t){e.publish("domready",{fireOnce:!0,async:!0}),YUI.Env.DOMReady?e.fire("domready"):e.Do.before(function(){e.fire("domready")},YUI.Env,"_ready");var n=e.UA,r={},i={63232:38,63233:40,63234:37,63235:39,63276:33,63277:34,25:9,63272:46,63273:36,63275:35},s=function(t){if(!t)return t;try{t&&3==t.nodeType&&(t=t.parentNode)}catch(n){return null}return e.one(t)},o=function(e,t,n){this._event=e,this._currentTarget=t,this._wrapper=n||r,this.init()};e.extend(o,Object,{init:function(){var e=this._event,t=this._wrapper.overrides,r=e.pageX,o=e.pageY,u,a=this._currentTarget;this.altKey=e.altKey,this.ctrlKey=e.ctrlKey,this.metaKey=e.metaKey,this.shiftKey=e.shiftKey,this.type=t&&t.type||e.type,this.clientX=e.clientX,this.clientY=e.clientY,this.pageX=r,this.pageY=o,u=e.keyCode||e.charCode,n.webkit&&u in i&&(u=i[u]),this.keyCode=u,this.charCode=u,this.which=e.which||e.charCode||u,this.button=this.which,this.target=s(e.target),this.currentTarget=s(a),this.relatedTarget=s(e.relatedTarget);if(e.type=="mousewheel"||e.type=="DOMMouseScroll")this.wheelDelta=e.detail?e.detail*-1:Math.round(e.wheelDelta/80)||(e.wheelDelta<0?-1:1);this._touch&&this._touch(e,a,this._wrapper)},stopPropagation:function(){this._event.stopPropagation(),this._wrapper.stopped=1,this.stopped=1},stopImmediatePropagation:function(){var e=this._event;e.stopImmediatePropagation?e.stopImmediatePropagation():this.stopPropagation(),this._wrapper.stopped=2,this.stopped=2},preventDefault:function(e){var t=this._event;t.preventDefault(),t.returnValue=e||!1,this._wrapper.prevented=1,this.prevented=1},halt:function(e){e?this.stopImmediatePropagation():this.stopPropagation(),this.preventDefault()}}),o.resolve=s,e.DOM2EventFacade=o,e.DOMEventFacade=o,function(){e.Env.evt.dom_wrappers={},e.Env.evt.dom_map={};var t=e.Env.evt,n=e.config,r=n.win,i=YUI.Env.add,s=YUI.Env.remove,o=function(){YUI.Env.windowLoaded=!0,e.Event._load(),s(r,"load",o)},u=function(){e.Event._unload()},a="domready",f="~yui|2|compat~",l=function(t){try{return t&&typeof t!="string"&&e.Lang.isNumber(t.length)&&!t.tagName&&!e.DOM.isWindow(t)}catch(n){return!1}},c=e.CustomEvent.prototype._delete,h=function(t){var n=c.apply(this,arguments);return this.hasSubs()||e.Event._clean(this),n},p=function(){var n=!1,o=0,c=[],d=t.dom_wrappers,v=null,m=t.dom_map;return{POLL_RETRYS:1e3,POLL_INTERVAL:40,lastError:null,_interval:null,_dri:null,DOMReady:!1,startInterval:function(){p._interval||(p._interval=setInterval(p._poll,p.POLL_INTERVAL))},onAvailable:function(t,n,r,i,s,u){var a=e.Array(t),f,l;for(f=0;f4?t.slice(4):null),c&&u.fire(),h):!1},detach:function(t,n,r,i){var s=e.Array(arguments,0,!0),o,u,a,c,h,v;s[s.length-1]===f&&(o=!0);if(t&&t.detach)return t.detach();typeof r=="string"&&(o?r=e.DOM.byId(r):(r=e.Selector.query(r),u=r.length,u<1?r=null:u==1&&(r=r[0])));if(!r)return!1;if(r.detach)return s.splice(2,1),r.detach.apply(r,s);if(l(r)){a=!0;for(c=0,u=r.length;c0),u=[],a=function(t,n){var r,i=n.override;try{n.compat?(n.override?i===!0?r=n.obj:r=i:r=t,n.fn.call(r,n.obj)):(r=n.obj||e.one(t),n.fn.apply(r,e.Lang.isArray(i)?i:[]))}catch(s){}};for(t=0,r=c.length;t4?e.Array(arguments,4,!0):null;return e.Event.onAvailable.call(e.Event,r,n,i,s)}},e.Env.evt.plugins.contentready={on:function(t,n,r,i){var s=arguments.length>4?e.Array(arguments,4,!0):null;return e.Event.onContentReady.call(e.Event,r,n,i,s)}}},"3.12.0",{requires:["event-custom-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-base/event-base.js b/lib/yuilib/3.12.0/event-base/event-base.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/event-base/event-base.js rename to lib/yuilib/3.12.0/event-base/event-base.js index 28717010a1a..890ca2b02dd --- a/lib/yuilib/3.9.1/build/event-base/event-base.js +++ b/lib/yuilib/3.12.0/event-base/event-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + (function () { var GLOBAL_ENV = YUI.Env; @@ -158,7 +164,7 @@ Y.extend(DOMEventFacade, Object, { // Webkit and IE9+? duplicate charCode in keyCode. // Opera never sets charCode, always keyCode (though with the charCode). // IE6-8 don't set charCode or which. - // All browsers other than IE6-8 set which=keyCode in keydown, keyup, and + // All browsers other than IE6-8 set which=keyCode in keydown, keyup, and // which=charCode in keypress. // // Moral of the story: (e.which || e.keyCode) will always return the @@ -377,6 +383,7 @@ Y.DOMEventFacade = DOMEventFacade; * on the current target will not be executed */ (function() { + /** * The event utility provides functions to add and remove event listeners, * event cleansing. It also tries to automatically remove listeners it @@ -398,8 +405,7 @@ Y.DOMEventFacade = DOMEventFacade; Y.Env.evt.dom_wrappers = {}; Y.Env.evt.dom_map = {}; -var YDOM = Y.DOM, - _eventenv = Y.Env.evt, +var _eventenv = Y.Env.evt, config = Y.config, win = config.win, add = YUI.Env.add, @@ -422,7 +428,7 @@ var YDOM = Y.DOM, shouldIterate = function(o) { try { // TODO: See if there's a more performant way to return true early on this, for the common case - return (o && typeof o !== "string" && Y.Lang.isNumber(o.length) && !o.tagName && !YDOM.isWindow(o)); + return (o && typeof o !== "string" && Y.Lang.isNumber(o.length) && !o.tagName && !Y.DOM.isWindow(o)); } catch(ex) { return false; } @@ -705,6 +711,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); cewrapper = Y.publish(key, { silent: true, bubbles: false, + emitFacade:false, contextFn: function() { if (compat) { return cewrapper.el; @@ -789,7 +796,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); // oEl = (compat) ? Y.DOM.byId(el) : Y.Selector.query(el); if (compat) { - oEl = YDOM.byId(el); + oEl = Y.DOM.byId(el); } else { oEl = Y.Selector.query(el); @@ -903,7 +910,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); // el = (compat) ? Y.DOM.byId(el) : Y.all(el); if (compat) { - el = YDOM.byId(el); + el = Y.DOM.byId(el); } else { el = Y.Selector.query(el); l = el.length; @@ -977,7 +984,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); * @static */ generateId: function(el) { - return YDOM.generateID(el); + return Y.DOM.generateID(el); }, /** @@ -1084,7 +1091,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); if (item && !item.checkReady) { // el = (item.compat) ? Y.DOM.byId(item.id) : Y.one(item.id); - el = (item.compat) ? YDOM.byId(item.id) : Y.Selector.query(item.id, null, true); + el = (item.compat) ? Y.DOM.byId(item.id) : Y.Selector.query(item.id, null, true); if (el) { executeItem(el, item); @@ -1101,7 +1108,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); if (item && item.checkReady) { // el = (item.compat) ? Y.DOM.byId(item.id) : Y.one(item.id); - el = (item.compat) ? YDOM.byId(item.id) : Y.Selector.query(item.id, null, true); + el = (item.compat) ? Y.DOM.byId(item.id) : Y.Selector.query(item.id, null, true); if (el) { // The element is available, but not necessarily ready @@ -1296,11 +1303,17 @@ if (config.injected || YUI.Env.windowLoaded) { // Process onAvailable/onContentReady items when when the DOM is ready in IE if (Y.UA.ie) { Y.on(EVENT_READY, Event._poll); -} -try { - add(win, "unload", onUnload); -} catch(e) { + // In IE6 and below, detach event handlers when the page is unloaded in + // order to try and prevent cross-page memory leaks. This isn't done in + // other browsers because a) it's not necessary, and b) it breaks the + // back/forward cache. + if (Y.UA.ie < 7) { + try { + add(win, "unload", onUnload); + } catch(e) { + } + } } Event.Custom = Y.CustomEvent; @@ -1366,4 +1379,4 @@ Y.Env.evt.plugins.contentready = { }; -}, '3.9.1', {"requires": ["event-custom-base"]}); +}, '3.12.0', {"requires": ["event-custom-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-contextmenu/event-contextmenu-debug.js b/lib/yuilib/3.12.0/event-contextmenu/event-contextmenu-debug.js old mode 100644 new mode 100755 similarity index 87% rename from lib/yuilib/3.9.1/build/event-contextmenu/event-contextmenu-debug.js rename to lib/yuilib/3.12.0/event-contextmenu/event-contextmenu-debug.js index beea562d7e8..ca3784eb8f4 --- a/lib/yuilib/3.9.1/build/event-contextmenu/event-contextmenu-debug.js +++ b/lib/yuilib/3.12.0/event-contextmenu/event-contextmenu-debug.js @@ -1,14 +1,27 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-contextmenu', function (Y, NAME) { /** * Provides extended keyboard support for the "contextmenu" event such that: *
      *
    • The browser's default context menu is suppressed regardless of how the event is triggered.
    • - *
    • On Windows the "contextmenu" event is fired consistently regardless of whether the user pressed the Menu key or Shift + F10.
    • - *
    • When the "contextmenu" event is fired via the keyboard, the pageX, pageY, clientX and clientY properties reference the center of the event target. This makes it easy for "contextmenu" event listeners to position an overlay in response to the event by not having to worry about special handling of the x and y coordinates based on the device that fired the event.
    • - *
    • For Webkit and Gecko on the Mac it enables the use of the Shift + Control + Option + M keyboard shortcut to fire the "contextmenu" event, which (by default) is only available when VoiceOver (the screen reader on the Mac) is enabled.
    • - *
    • For Opera on the Mac it ensures the "contextmenu" event is fired when the user presses Shift + Command + M (Opera's context menu keyboard shortcut).
    • + *
    • On Windows the "contextmenu" event is fired consistently regardless of whether the user + * pressed the Menu key or Shift + F10.
    • + *
    • When the "contextmenu" event is fired via the keyboard, the pageX, pageY, clientX and clientY + * properties reference the center of the event target. This makes it easy for "contextmenu" event listeners + * to position an overlay in response to the event by not having to worry about special handling of the x + * and y coordinates based on the device that fired the event.
    • + *
    • For Webkit and Gecko on the Mac it enables the use of the Shift + Control + Option + M keyboard + * shortcut to fire the "contextmenu" event, which (by default) is only available when VoiceOver + * (the screen reader on the Mac) is enabled.
    • + *
    • For Opera on the Mac it ensures the "contextmenu" event is fired when the user presses + * Shift + Command + M (Opera's context menu keyboard shortcut).
    • *
    * @module event-contextmenu * @requires event @@ -38,7 +51,7 @@ var Event = Y.Event, handles.push(Event._attach(["contextmenu", function (e) { // Any developer listening for the "contextmenu" event is likely - // going to call preventDefault() to prevent the display of + // going to call preventDefault() to prevent the display of // the browser's context menu. So, you know, save them a step. e.preventDefault(); @@ -125,7 +138,7 @@ var Event = Y.Event, // the x & x coords to the center of the event target. if (menuKey || (isWin && webkit && shiftF10)) { - eventData[Y.stamp(node)] = { + eventData[Y.stamp(node)] = { clientX: clientX, clientY: clientY, pageX: pageX, @@ -183,4 +196,4 @@ conf.detachDelegate = conf.detach; Event.define("contextmenu", conf, true); -}, '3.9.1', {"requires": ["event-synthetic", "dom-screen"]}); +}, '3.12.0', {"requires": ["event-synthetic", "dom-screen"]}); diff --git a/lib/yuilib/3.9.1/build/event-contextmenu/event-contextmenu-min.js b/lib/yuilib/3.12.0/event-contextmenu/event-contextmenu-min.js old mode 100644 new mode 100755 similarity index 83% rename from lib/yuilib/3.9.1/build/event-contextmenu/event-contextmenu-min.js rename to lib/yuilib/3.12.0/event-contextmenu/event-contextmenu-min.js index a0e7065fce0..5d404324e54 --- a/lib/yuilib/3.9.1/build/event-contextmenu/event-contextmenu-min.js +++ b/lib/yuilib/3.12.0/event-contextmenu/event-contextmenu-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("event-contextmenu",function(e,t){var n=e.Event,r=e.DOM,i=e.UA,s=e.UA.os,o=i.ie,u=i.gecko,a=i.webkit,f=i.opera,l=s==="windows",c=s==="macintosh",h={},p={on:function(t,i,s,p){var d=[];d.push(n._attach(["contextmenu",function(n){n.preventDefault();var r=e.stamp(t),i=h[r];i&&(n.clientX=i.clientX,n.clientY=i.clientY,n.pageX=i.pageX,n.pageY=i.pageY,delete h[r]),s.fire(n)},t])),d.push(t[p?"delegate":"on"]("keydown",function(n){var i=this.getDOMNode(),p=n.shiftKey,d=n.keyCode,v=p&&d==121,m=l&&d==93,g=n.ctrlKey,y=d===77,b=c&&(a||u)&&g&&p&&n.altKey&&y,w=c&&f&&g&&p&&y,E=0,S=0,x,T,N,C,k,L,A;if(l&&(v||m)||b||w){((o||l&&(u||f))&&v||w)&&n.preventDefault(),k=r.getXY(i),L=k[0],A=k[1],x=r.docScrollX(),T=r.docScrollY(),e.Lang.isUndefined(L)||(E=L+i.offsetWidth/2-x,S=A+i.offsetHeight/2-T),N=E+x,C=S+T;if(m||l&&a&&v)h[e.stamp(t)]={clientX:E,clientY:S,pageX:N,pageY:C};if((o||l&&(u||f))&&v||c)n.clientX=E,n.clientY=S,n.pageX=N,n.pageY=C,s.fire(n)}},p)),i._handles=d},detach:function(t,n,r){e.each(n._handles,function(e){e.detach()})}};p.delegate=p.on,p.detachDelegate=p.detach,n.define("contextmenu",p,!0)},"3.9.1",{requires:["event-synthetic","dom-screen"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-contextmenu",function(e,t){var n=e.Event,r=e.DOM,i=e.UA,s=e.UA.os,o=i.ie,u=i.gecko,a=i.webkit,f=i.opera,l=s==="windows",c=s==="macintosh",h={},p={on:function(t,i,s,p){var d=[];d.push(n._attach(["contextmenu",function(n){n.preventDefault();var r=e.stamp(t),i=h[r];i&&(n.clientX=i.clientX,n.clientY=i.clientY,n.pageX=i.pageX,n.pageY=i.pageY,delete h[r]),s.fire(n)},t])),d.push(t[p?"delegate":"on"]("keydown",function(n){var i=this.getDOMNode(),p=n.shiftKey,d=n.keyCode,v=p&&d==121,m=l&&d==93,g=n.ctrlKey,y=d===77,b=c&&(a||u)&&g&&p&&n.altKey&&y,w=c&&f&&g&&p&&y,E=0,S=0,x,T,N,C,k,L,A;if(l&&(v||m)||b||w){((o||l&&(u||f))&&v||w)&&n.preventDefault(),k=r.getXY(i),L=k[0],A=k[1],x=r.docScrollX(),T=r.docScrollY(),e.Lang.isUndefined(L)||(E=L+i.offsetWidth/2-x,S=A+i.offsetHeight/2-T),N=E+x,C=S+T;if(m||l&&a&&v)h[e.stamp(t)]={clientX:E,clientY:S,pageX:N,pageY:C};if((o||l&&(u||f))&&v||c)n.clientX=E,n.clientY=S,n.pageX=N,n.pageY=C,s.fire(n)}},p)),i._handles=d},detach:function(t,n,r){e.each(n._handles,function(e){e.detach()})}};p.delegate=p.on,p.detachDelegate=p.detach,n.define("contextmenu",p,!0)},"3.12.0",{requires:["event-synthetic","dom-screen"]}); diff --git a/lib/yuilib/3.9.1/build/event-contextmenu/event-contextmenu.js b/lib/yuilib/3.12.0/event-contextmenu/event-contextmenu.js old mode 100644 new mode 100755 similarity index 87% rename from lib/yuilib/3.9.1/build/event-contextmenu/event-contextmenu.js rename to lib/yuilib/3.12.0/event-contextmenu/event-contextmenu.js index beea562d7e8..ca3784eb8f4 --- a/lib/yuilib/3.9.1/build/event-contextmenu/event-contextmenu.js +++ b/lib/yuilib/3.12.0/event-contextmenu/event-contextmenu.js @@ -1,14 +1,27 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-contextmenu', function (Y, NAME) { /** * Provides extended keyboard support for the "contextmenu" event such that: *
      *
    • The browser's default context menu is suppressed regardless of how the event is triggered.
    • - *
    • On Windows the "contextmenu" event is fired consistently regardless of whether the user pressed the Menu key or Shift + F10.
    • - *
    • When the "contextmenu" event is fired via the keyboard, the pageX, pageY, clientX and clientY properties reference the center of the event target. This makes it easy for "contextmenu" event listeners to position an overlay in response to the event by not having to worry about special handling of the x and y coordinates based on the device that fired the event.
    • - *
    • For Webkit and Gecko on the Mac it enables the use of the Shift + Control + Option + M keyboard shortcut to fire the "contextmenu" event, which (by default) is only available when VoiceOver (the screen reader on the Mac) is enabled.
    • - *
    • For Opera on the Mac it ensures the "contextmenu" event is fired when the user presses Shift + Command + M (Opera's context menu keyboard shortcut).
    • + *
    • On Windows the "contextmenu" event is fired consistently regardless of whether the user + * pressed the Menu key or Shift + F10.
    • + *
    • When the "contextmenu" event is fired via the keyboard, the pageX, pageY, clientX and clientY + * properties reference the center of the event target. This makes it easy for "contextmenu" event listeners + * to position an overlay in response to the event by not having to worry about special handling of the x + * and y coordinates based on the device that fired the event.
    • + *
    • For Webkit and Gecko on the Mac it enables the use of the Shift + Control + Option + M keyboard + * shortcut to fire the "contextmenu" event, which (by default) is only available when VoiceOver + * (the screen reader on the Mac) is enabled.
    • + *
    • For Opera on the Mac it ensures the "contextmenu" event is fired when the user presses + * Shift + Command + M (Opera's context menu keyboard shortcut).
    • *
    * @module event-contextmenu * @requires event @@ -38,7 +51,7 @@ var Event = Y.Event, handles.push(Event._attach(["contextmenu", function (e) { // Any developer listening for the "contextmenu" event is likely - // going to call preventDefault() to prevent the display of + // going to call preventDefault() to prevent the display of // the browser's context menu. So, you know, save them a step. e.preventDefault(); @@ -125,7 +138,7 @@ var Event = Y.Event, // the x & x coords to the center of the event target. if (menuKey || (isWin && webkit && shiftF10)) { - eventData[Y.stamp(node)] = { + eventData[Y.stamp(node)] = { clientX: clientX, clientY: clientY, pageX: pageX, @@ -183,4 +196,4 @@ conf.detachDelegate = conf.detach; Event.define("contextmenu", conf, true); -}, '3.9.1', {"requires": ["event-synthetic", "dom-screen"]}); +}, '3.12.0', {"requires": ["event-synthetic", "dom-screen"]}); diff --git a/lib/yuilib/3.9.1/build/event-custom-base/event-custom-base-debug.js b/lib/yuilib/3.12.0/event-custom-base/event-custom-base-debug.js old mode 100644 new mode 100755 similarity index 84% rename from lib/yuilib/3.9.1/build/event-custom-base/event-custom-base-debug.js rename to lib/yuilib/3.12.0/event-custom-base/event-custom-base-debug.js index 482db8265ba..4c1e7615054 --- a/lib/yuilib/3.9.1/build/event-custom-base/event-custom-base-debug.js +++ b/lib/yuilib/3.12.0/event-custom-base/event-custom-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-custom-base', function (Y, NAME) { /** @@ -36,12 +42,12 @@ DO = { * Cache of objects touched by the utility * @property objs * @static - * @deprecated Since 3.6.0. The `_yuiaop` property on the AOP'd object - * replaces the role of this property, but is considered to be private, and + * @deprecated Since 3.6.0. The `_yuiaop` property on the AOP'd object + * replaces the role of this property, but is considered to be private, and * is only mentioned to provide a migration path. - * - * If you have a use case which warrants migration to the _yuiaop property, - * please file a ticket to let us know what it's used for and we can see if + * + * If you have a use case which warrants migration to the _yuiaop property, + * please file a ticket to let us know what it's used for and we can see if * we need to expose hooks for that functionality more formally. */ objs: null, @@ -176,9 +182,6 @@ DO = { if (handle.detach) { handle.detach(); } - }, - - _unload: function(e, me) { } }; @@ -305,10 +308,10 @@ DO.Method.prototype.exec = function () { if (af.hasOwnProperty(i)) { newRet = af[i].apply(this.obj, args); // Stop processing if a Halt object is returned - if (newRet && newRet.constructor == DO.Halt) { + if (newRet && newRet.constructor === DO.Halt) { return newRet.retVal; // Check for a new return value - } else if (newRet && newRet.constructor == DO.AlterReturn) { + } else if (newRet && newRet.constructor === DO.AlterReturn) { ret = newRet.newRetVal; // Update the static retval state DO.currentRetVal = ret; @@ -393,9 +396,6 @@ DO.Error = DO.Halt; ////////////////////////////////////////////////////////////////////////// -// Y["Event"] && Y.Event.addListener(window, "unload", Y.Do._unload, Y.Do); - - /** * Custom event engine, DOM event listener abstraction layer, synthetic DOM * events. @@ -433,7 +433,7 @@ var YArray = Y.Array, CONFIGS_HASH = YArray.hash(CONFIGS), - nativeSlice = Array.prototype.slice, + nativeSlice = Array.prototype.slice, YUI3_SIGNATURE = 9, YUI_LOG = 'yui:log', @@ -442,7 +442,7 @@ var YArray = Y.Array, var p; for (p in s) { - if (CONFIGS_HASH[p] && (ov || !(p in r))) { + if (CONFIGS_HASH[p] && (ov || !(p in r))) { r[p] = s[p]; } } @@ -456,258 +456,69 @@ var YArray = Y.Array, * * @param {String} type The type of event, which is passed to the callback * when the event fires. - * @param {object} o configuration object. + * @param {object} defaults configuration object. * @class CustomEvent * @constructor */ -Y.CustomEvent = function(type, o) { + + /** + * The type of event, returned to subscribers when the event fires + * @property type + * @type string + */ + +/** + * By default all custom events are logged in the debug build, set silent + * to true to disable debug outpu for this event. + * @property silent + * @type boolean + */ + +Y.CustomEvent = function(type, defaults) { this._kds = Y.CustomEvent.keepDeprecatedSubs; - o = o || {}; + this.id = Y.guid(); - this.id = Y.stamp(this); - - /** - * The type of event, returned to subscribers when the event fires - * @property type - * @type string - */ this.type = type; + this.silent = this.logSystem = (type === YUI_LOG); - /** - * The context the the event will fire from by default. Defaults to the YUI - * instance. - * @property context - * @type object - */ - this.context = Y; - - /** - * Monitor when an event is attached or detached. - * - * @property monitored - * @type boolean - */ - // this.monitored = false; - - this.logSystem = (type == YUI_LOG); - - /** - * If 0, this event does not broadcast. If 1, the YUI instance is notified - * every time this event fires. If 2, the YUI instance and the YUI global - * (if event is enabled on the global) are notified every time this event - * fires. - * @property broadcast - * @type int - */ - // this.broadcast = 0; - - /** - * By default all custom events are logged in the debug build, set silent - * to true to disable debug outpu for this event. - * @property silent - * @type boolean - */ - this.silent = this.logSystem; - - /** - * Specifies whether this event should be queued when the host is actively - * processing an event. This will effect exectution order of the callbacks - * for the various events. - * @property queuable - * @type boolean - * @default false - */ - // this.queuable = false; - - /** - * The subscribers to this event - * @property subscribers - * @type Subscriber {} - * @deprecated - */ if (this._kds) { + /** + * The subscribers to this event + * @property subscribers + * @type Subscriber {} + * @deprecated + */ + + /** + * 'After' subscribers + * @property afters + * @type Subscriber {} + * @deprecated + */ this.subscribers = {}; - } - - /** - * The subscribers to this event - * @property _subscribers - * @type Subscriber [] - * @private - */ - this._subscribers = []; - - /** - * 'After' subscribers - * @property afters - * @type Subscriber {} - */ - if (this._kds) { this.afters = {}; } - /** - * 'After' subscribers - * @property _afters - * @type Subscriber [] - * @private - */ - this._afters = []; - - /** - * This event has fired if true - * - * @property fired - * @type boolean - * @default false; - */ - // this.fired = false; - - /** - * An array containing the arguments the custom event - * was last fired with. - * @property firedWith - * @type Array - */ - // this.firedWith; - - /** - * This event should only fire one time if true, and if - * it has fired, any new subscribers should be notified - * immediately. - * - * @property fireOnce - * @type boolean - * @default false; - */ - // this.fireOnce = false; - - /** - * fireOnce listeners will fire syncronously unless async - * is set to true - * @property async - * @type boolean - * @default false - */ - //this.async = false; - - /** - * Flag for stopPropagation that is modified during fire() - * 1 means to stop propagation to bubble targets. 2 means - * to also stop additional subscribers on this target. - * @property stopped - * @type int - */ - // this.stopped = 0; - - /** - * Flag for preventDefault that is modified during fire(). - * if it is not 0, the default behavior for this event - * @property prevented - * @type int - */ - // this.prevented = 0; - - /** - * Specifies the host for this custom event. This is used - * to enable event bubbling - * @property host - * @type EventTarget - */ - // this.host = null; - - /** - * The default function to execute after event listeners - * have fire, but only if the default action was not - * prevented. - * @property defaultFn - * @type Function - */ - // this.defaultFn = null; - - /** - * The function to execute if a subscriber calls - * stopPropagation or stopImmediatePropagation - * @property stoppedFn - * @type Function - */ - // this.stoppedFn = null; - - /** - * The function to execute if a subscriber calls - * preventDefault - * @property preventedFn - * @type Function - */ - // this.preventedFn = null; - - /** - * Specifies whether or not this event's default function - * can be cancelled by a subscriber by executing preventDefault() - * on the event facade - * @property preventable - * @type boolean - * @default true - */ - this.preventable = true; - - /** - * Specifies whether or not a subscriber can stop the event propagation - * via stopPropagation(), stopImmediatePropagation(), or halt() - * - * Events can only bubble if emitFacade is true. - * - * @property bubbles - * @type boolean - * @default true - */ - this.bubbles = true; - - /** - * Supports multiple options for listener signatures in order to - * port YUI 2 apps. - * @property signature - * @type int - * @default 9 - */ - this.signature = YUI3_SIGNATURE; - - // this.subCount = 0; - // this.afterCount = 0; - - // this.hasSubscribers = false; - // this.hasAfters = false; - - /** - * If set to true, the custom event will deliver an EventFacade object - * that is similar to a DOM event object. - * @property emitFacade - * @type boolean - * @default false - */ - // this.emitFacade = false; - - this.applyConfig(o, true); - - // this.log("Creating " + this.type); - + if (defaults) { + mixConfigs(this, defaults, true); + } }; /** * Static flag to enable population of the `subscribers` * and `afters` properties held on a `CustomEvent` instance. - * - * These properties were changed to private properties (`_subscribers` and `_afters`), and - * converted from objects to arrays for performance reasons. * - * Setting this property to true will populate the deprecated `subscribers` and `afters` + * These properties were changed to private properties (`_subscribers` and `_afters`), and + * converted from objects to arrays for performance reasons. + * + * Setting this property to true will populate the deprecated `subscribers` and `afters` * properties for people who may be using them (which is expected to be rare). There will * be a performance hit, compared to the new array based implementation. * * If you are using these deprecated properties for a use case which the public API - * does not support, please file an enhancement request, and we can provide an alternate + * does not support, please file an enhancement request, and we can provide an alternate * public implementation which doesn't have the performance cost required to maintiain the * properties as objects. * @@ -726,6 +537,169 @@ Y.CustomEvent.prototype = { constructor: Y.CustomEvent, + /** + * Monitor when an event is attached or detached. + * + * @property monitored + * @type boolean + */ + + /** + * If 0, this event does not broadcast. If 1, the YUI instance is notified + * every time this event fires. If 2, the YUI instance and the YUI global + * (if event is enabled on the global) are notified every time this event + * fires. + * @property broadcast + * @type int + */ + + /** + * Specifies whether this event should be queued when the host is actively + * processing an event. This will effect exectution order of the callbacks + * for the various events. + * @property queuable + * @type boolean + * @default false + */ + + /** + * This event has fired if true + * + * @property fired + * @type boolean + * @default false; + */ + + /** + * An array containing the arguments the custom event + * was last fired with. + * @property firedWith + * @type Array + */ + + /** + * This event should only fire one time if true, and if + * it has fired, any new subscribers should be notified + * immediately. + * + * @property fireOnce + * @type boolean + * @default false; + */ + + /** + * fireOnce listeners will fire syncronously unless async + * is set to true + * @property async + * @type boolean + * @default false + */ + + /** + * Flag for stopPropagation that is modified during fire() + * 1 means to stop propagation to bubble targets. 2 means + * to also stop additional subscribers on this target. + * @property stopped + * @type int + */ + + /** + * Flag for preventDefault that is modified during fire(). + * if it is not 0, the default behavior for this event + * @property prevented + * @type int + */ + + /** + * Specifies the host for this custom event. This is used + * to enable event bubbling + * @property host + * @type EventTarget + */ + + /** + * The default function to execute after event listeners + * have fire, but only if the default action was not + * prevented. + * @property defaultFn + * @type Function + */ + + /** + * The function to execute if a subscriber calls + * stopPropagation or stopImmediatePropagation + * @property stoppedFn + * @type Function + */ + + /** + * The function to execute if a subscriber calls + * preventDefault + * @property preventedFn + * @type Function + */ + + /** + * The subscribers to this event + * @property _subscribers + * @type Subscriber [] + * @private + */ + + /** + * 'After' subscribers + * @property _afters + * @type Subscriber [] + * @private + */ + + /** + * If set to true, the custom event will deliver an EventFacade object + * that is similar to a DOM event object. + * @property emitFacade + * @type boolean + * @default false + */ + + /** + * Supports multiple options for listener signatures in order to + * port YUI 2 apps. + * @property signature + * @type int + * @default 9 + */ + signature : YUI3_SIGNATURE, + + /** + * The context the the event will fire from by default. Defaults to the YUI + * instance. + * @property context + * @type object + */ + context : Y, + + /** + * Specifies whether or not this event's default function + * can be cancelled by a subscriber by executing preventDefault() + * on the event facade + * @property preventable + * @type boolean + * @default true + */ + preventable : true, + + /** + * Specifies whether or not a subscriber can stop the event propagation + * via stopPropagation(), stopImmediatePropagation(), or halt() + * + * Events can only bubble if emitFacade is true. + * + * @property bubbles + * @type boolean + * @default true + */ + bubbles : true, + /** * Returns the number of subscribers for this event as the sum of the on() * subscribers and after() subscribers. @@ -734,15 +708,35 @@ Y.CustomEvent.prototype = { * @return Number */ hasSubs: function(when) { - var s = this._subscribers.length, a = this._afters.length, sib = this.sibling; + var s = 0, + a = 0, + subs = this._subscribers, + afters = this._afters, + sib = this.sibling; + + if (subs) { + s = subs.length; + } + + if (afters) { + a = afters.length; + } if (sib) { - s += sib._subscribers.length; - a += sib._afters.length; + subs = sib._subscribers; + afters = sib._afters; + + if (subs) { + s += subs.length; + } + + if (afters) { + a += afters.length; + } } if (when) { - return (when == 'after') ? a : s; + return (when === 'after') ? a : s; } return (s + a); @@ -770,12 +764,47 @@ Y.CustomEvent.prototype = { * @return {Array} first item is the on subscribers, second the after. */ getSubs: function() { - var s = this._subscribers, a = this._afters, sib = this.sibling; - s = (sib) ? s.concat(sib._subscribers) : s.concat(); - a = (sib) ? a.concat(sib._afters) : a.concat(); + var sibling = this.sibling, + subs = this._subscribers, + afters = this._afters, + siblingSubs, + siblingAfters; - return [s, a]; + if (sibling) { + siblingSubs = sibling._subscribers; + siblingAfters = sibling._afters; + } + + if (siblingSubs) { + if (subs) { + subs = subs.concat(siblingSubs); + } else { + subs = siblingSubs.concat(); + } + } else { + if (subs) { + subs = subs.concat(); + } else { + subs = []; + } + } + + if (siblingAfters) { + if (afters) { + afters = afters.concat(siblingAfters); + } else { + afters = siblingAfters.concat(); + } + } else { + if (afters) { + afters = afters.concat(); + } else { + afters = []; + } + } + + return [subs, afters]; }, /** @@ -791,7 +820,7 @@ Y.CustomEvent.prototype = { /** * Create the Subscription for subscribing function, context, and bound - * arguments. If this is a fireOnce event, the subscriber is immediately + * arguments. If this is a fireOnce event, the subscriber is immediately * notified. * * @method _on @@ -806,24 +835,41 @@ Y.CustomEvent.prototype = { if (!fn) { this.log('Invalid callback for CE: ' + this.type); } - var s = new Y.Subscriber(fn, context, args, when); + var s = new Y.Subscriber(fn, context, args, when), + firedWith; if (this.fireOnce && this.fired) { + + firedWith = this.firedWith; + + // It's a little ugly for this to know about facades, + // but given the current breakup, not much choice without + // moving a whole lot of stuff around. + if (this.emitFacade && this._addFacadeToArgs) { + this._addFacadeToArgs(firedWith); + } + if (this.async) { - setTimeout(Y.bind(this._notify, this, s, this.firedWith), 0); + setTimeout(Y.bind(this._notify, this, s, firedWith), 0); } else { - this._notify(s, this.firedWith); + this._notify(s, firedWith); } } - if (when == AFTER) { + if (when === AFTER) { + if (!this._afters) { + this._afters = []; + } this._afters.push(s); } else { + if (!this._subscribers) { + this._subscribers = []; + } this._subscribers.push(s); } if (this._kds) { - if (when == AFTER) { + if (when === AFTER) { this.afters[s.id] = s; } else { this.subscribers[s.id] = s; @@ -845,7 +891,7 @@ Y.CustomEvent.prototype = { var a = (arguments.length > 2) ? nativeSlice.call(arguments, 2) : null; return this._on(fn, context, a, true); }, - + /** * Listen for this event * @method on @@ -895,25 +941,29 @@ Y.CustomEvent.prototype = { if (fn && fn.detach) { return fn.detach(); } - + var i, s, found = 0, subs = this._subscribers, afters = this._afters; - for (i = subs.length; i >= 0; i--) { - s = subs[i]; - if (s && (!fn || fn === s.fn)) { - this._delete(s, subs, i); - found++; + if (subs) { + for (i = subs.length; i >= 0; i--) { + s = subs[i]; + if (s && (!fn || fn === s.fn)) { + this._delete(s, subs, i); + found++; + } } } - for (i = afters.length; i >= 0; i--) { - s = afters[i]; - if (s && (!fn || fn === s.fn)) { - this._delete(s, afters, i); - found++; + if (afters) { + for (i = afters.length; i >= 0; i--) { + s = afters[i]; + if (s && (!fn || fn === s.fn)) { + this._delete(s, afters, i); + found++; + } } } @@ -984,13 +1034,34 @@ Y.CustomEvent.prototype = { * */ fire: function() { + + // push is the fastest way to go from arguments to arrays + // for most browsers currently + // http://jsperf.com/push-vs-concat-vs-slice/2 + + var args = []; + args.push.apply(args, arguments); + + return this._fire(args); + }, + + /** + * Private internal implementation for `fire`, which is can be used directly by + * `EventTarget` and other event module classes which have already converted from + * an `arguments` list to an array, to avoid the repeated overhead. + * + * @method _fire + * @private + * @param {Array} args The array of arguments passed to be passed to handlers. + * @return {boolean} false if one of the subscribers returned false, true otherwise. + */ + _fire: function(args) { + if (this.fireOnce && this.fired) { this.log('fireOnce event: ' + this.type + ' already fired'); return true; } else { - var args = nativeSlice.call(arguments, 0); - // this doesn't happen if the event isn't published // this.host._monitor('fire', this.type, args); @@ -1024,7 +1095,9 @@ Y.CustomEvent.prototype = { this._procSubs(subs[0], args); this._procSubs(subs[1], args); } - this._broadcast(args); + if (this.broadcast) { + this._broadcast(args); + } return this.stopped ? false : true; }, @@ -1056,7 +1129,7 @@ Y.CustomEvent.prototype = { if (false === this._notify(s, args, ef)) { this.stopped = 2; } - if (this.stopped == 2) { + if (this.stopped === 2) { return false; } } @@ -1083,7 +1156,7 @@ Y.CustomEvent.prototype = { Y.fire.apply(Y, a); } - if (this.broadcast == 2) { + if (this.broadcast === 2) { Y.Global.fire.apply(Y.Global, a); } } @@ -1122,12 +1195,15 @@ Y.CustomEvent.prototype = { var when = s._when; if (!subs) { - subs = (when === AFTER) ? this._afters : this._subscribers; - i = YArray.indexOf(subs, s, 0); + subs = (when === AFTER) ? this._afters : this._subscribers; } - if (s && subs[i] === s) { - subs.splice(i, 1); + if (subs) { + i = YArray.indexOf(subs, s, 0); + + if (s && subs[i] === s) { + subs.splice(i, 1); + } } if (this._kds) { @@ -1181,7 +1257,7 @@ Y.Subscriber = function(fn, context, args, when) { * @property id * @type String */ - this.id = Y.stamp(this); + this.id = Y.guid(); /** * Additional arguments to propagate to the subscriber @@ -1285,12 +1361,12 @@ Y.Subscriber.prototype = { */ contains: function(fn, context) { if (context) { - return ((this.fn == fn) && this.context == context); + return ((this.fn === fn) && this.context === context); } else { - return (this.fn == fn); + return (this.fn === fn); } }, - + valueOf : function() { return this.id; } @@ -1409,14 +1485,14 @@ var L = Y.Lang, * @method _getType * @private */ - _getType = Y.cached(function(type, pre) { + _getType = function(type, pre) { - if (!pre || (typeof type !== "string") || type.indexOf(PREFIX_DELIMITER) > -1) { + if (!pre || !type || type.indexOf(PREFIX_DELIMITER) > -1) { return type; } return pre + PREFIX_DELIMITER + type; - }), + }, /** * Returns an array with the detach key (if provided), @@ -1438,7 +1514,6 @@ var L = Y.Lang, if (i > -1) { after = true; t = t.substr(AFTER_PREFIX.length); - // Y.log(t); } i = t.indexOf(CATEGORY_DELIMITER); @@ -1446,7 +1521,7 @@ var L = Y.Lang, if (i > -1) { detachcategory = t.substr(0, (i)); t = t.substr(i+1); - if (t == '*') { + if (t === '*') { t = null; } } @@ -1457,40 +1532,38 @@ var L = Y.Lang, ET = function(opts) { - // Y.log('EventTarget constructor executed: ' + this._yuid); + var etState = this._yuievt, + etConfig; - var o = (L.isObject(opts)) ? opts : {}; + if (!etState) { + etState = this._yuievt = { + events: {}, // PERF: Not much point instantiating lazily. We're bound to have events + targets: null, // PERF: Instantiate lazily, if user actually adds target, + config: { + host: this, + context: this + }, + chain: Y.config.chain + }; + } - this._yuievt = this._yuievt || { + etConfig = etState.config; - id: Y.guid(), + if (opts) { + mixConfigs(etConfig, opts, true); - events: {}, - - targets: {}, - - config: o, - - chain: ('chain' in o) ? o.chain : Y.config.chain, - - bubbling: false, - - defaults: { - context: o.context || this, - host: this, - emitFacade: o.emitFacade, - fireOnce: o.fireOnce, - queuable: o.queuable, - monitored: o.monitored, - broadcast: o.broadcast, - defaultTargetOnly: o.defaultTargetOnly, - bubbles: ('bubbles' in o) ? o.bubbles : true + if (opts.chain !== undefined) { + etState.chain = opts.chain; } - }; + + if (opts.prefix) { + etConfig.prefix = opts.prefix; + } + } }; - ET.prototype = { + constructor: ET, /** @@ -1688,6 +1761,11 @@ ET.prototype = { if (!handle) { ce = yuievt.events[type] || this.publish(type); handle = ce._on(fn, context, (arguments.length > 3) ? nativeSlice.call(arguments, 3) : null, (after) ? 'after' : true); + + // TODO: More robust regex, accounting for category + if (type.indexOf("*:") !== -1) { + this._hasSiblings = true; + } } if (detachcategory) { @@ -1727,8 +1805,11 @@ ET.prototype = { * @return {EventTarget} the host */ detach: function(type, fn, context) { - var evts = this._yuievt.events, i, - Node = Y.Node, isNode = Node && (Y.instanceOf(this, Node)); + + var evts = this._yuievt.events, + i, + Node = Y.Node, + isNode = Node && (Y.instanceOf(this, Node)); // detachAll disabled on the Y instance. if (!type && (this !== Y)) { @@ -1921,53 +2002,102 @@ Y.log('EventTarget unsubscribeAll() is deprecated, use detachAll()', 'warn', 'de * */ publish: function(type, opts) { - var events, ce, ret, defaults, - edata = this._yuievt, - pre = edata.config.prefix; - if (L.isObject(type)) { + var ret, + etState = this._yuievt, + etConfig = etState.config, + pre = etConfig.prefix; + + if (typeof type === "string") { + if (pre) { + type = _getType(type, pre); + } + ret = this._publish(type, etConfig, opts); + } else { ret = {}; + Y.each(type, function(v, k) { - ret[k] = this.publish(k, v || opts); + if (pre) { + k = _getType(k, pre); + } + ret[k] = this._publish(k, etConfig, v || opts); }, this); - return ret; } - type = (pre) ? _getType(type, pre) : type; + return ret; + }, - events = edata.events; - ce = events[type]; + /** + * Returns the fully qualified type, given a short type string. + * That is, returns "foo:bar" when given "bar" if "foo" is the configured prefix. + * + * NOTE: This method, unlike _getType, does no checking of the value passed in, and + * is designed to be used with the low level _publish() method, for critical path + * implementations which need to fast-track publish for performance reasons. + * + * @method _getFullType + * @private + * @param {String} type The short type to prefix + * @return {String} The prefixed type, if a prefix is set, otherwise the type passed in + */ + _getFullType : function(type) { - this._monitor('publish', type, { - args: arguments - }); + var pre = this._yuievt.config.prefix; - if (ce) { - // ce.log("publish applying new config to published event: '"+type+"' exists", 'info', 'event'); - if (opts) { - ce.applyConfig(opts, true); - } + if (pre) { + return pre + PREFIX_DELIMITER + type; } else { - // TODO: Lazy publish goes here. - defaults = edata.defaults; + return type; + } + }, - // apply defaults - ce = new Y.CustomEvent(type, defaults); - if (opts) { - ce.applyConfig(opts, true); - } + /** + * The low level event publish implementation. It expects all the massaging to have been done + * outside of this method. e.g. the `type` to `fullType` conversion. It's designed to be a fast + * path publish, which can be used by critical code paths to improve performance. + * + * @method _publish + * @private + * @param {String} fullType The prefixed type of the event to publish. + * @param {Object} etOpts The EventTarget specific configuration to mix into the published event. + * @param {Object} ceOpts The publish specific configuration to mix into the published event. + * @return {CustomEvent} The published event. If called without `etOpts` or `ceOpts`, this will + * be the default `CustomEvent` instance, and can be configured independently. + */ + _publish : function(fullType, etOpts, ceOpts) { - events[type] = ce; + var ce, + etState = this._yuievt, + etConfig = etState.config, + host = etConfig.host, + context = etConfig.context, + events = etState.events; + + ce = events[fullType]; + + // PERF: Hate to pull the check out of monitor, but trying to keep critical path tight. + if ((etConfig.monitored && !ce) || (ce && ce.monitored)) { + this._monitor('publish', fullType, { + args: arguments + }); } - // make sure we turn the broadcast flag off if this - // event was published as a result of bubbling - // if (opts instanceof Y.CustomEvent) { - // events[type].broadcast = false; - // } + if (!ce) { + // Publish event + ce = events[fullType] = new Y.CustomEvent(fullType, etOpts); - return events[type]; + if (!etOpts) { + ce.host = host; + ce.context = context; + } + } + + if (ceOpts) { + mixConfigs(ce, ceOpts, true); + } + + return ce; }, /** @@ -2007,23 +2137,23 @@ Y.log('EventTarget unsubscribeAll() is deprecated, use detachAll()', 'warn', 'de } }, - /** + /** * Fire a custom event by name. The callback functions will be executed * from the context specified when the event was created, and with the * following parameters. * - * If the custom event object hasn't been created, then the event hasn't - * been published and it has no subscribers. For performance sake, we - * immediate exit in this case. This means the event won't bubble, so - * if the intention is that a bubble target be notified, the event must - * be published on this object first. - * * The first argument is the event type, and any additional arguments are * passed to the listeners as parameters. If the first of these is an * object literal, and the event is configured to emit an event facade, * that object is mixed into the event facade and the facade is provided * in place of the original object. * + * If the custom event object hasn't been created, then the event hasn't + * been published and it has no subscribers. For performance sake, we + * immediate exit in this case. This means the event won't bubble, so + * if the intention is that a bubble target be notified, the event must + * be published on this object first. + * * @method fire * @param type {String|Object} The type of the event, or an object that contains * a 'type' property. @@ -2032,30 +2162,63 @@ Y.log('EventTarget unsubscribeAll() is deprecated, use detachAll()', 'warn', 'de * configured to emit an event facade, the event facade will replace that * parameter after the properties the object literal contains are copied to * the event facade. - * @return {EventTarget} the event host + * @return {Boolean} True if the whole lifecycle of the event went through, + * false if at any point the event propagation was halted. */ fire: function(type) { - var typeIncluded = L.isString(type), - t = (typeIncluded) ? type : (type && type.type), + var typeIncluded = (typeof type === "string"), + argCount = arguments.length, + t = type, yuievt = this._yuievt, - pre = yuievt.config.prefix, - ce, ret, + etConfig = yuievt.config, + pre = etConfig.prefix, + ret, + ce, ce2, - args = (typeIncluded) ? nativeSlice.call(arguments, 1) : arguments; + args; - t = (pre) ? _getType(t, pre) : t; + if (typeIncluded && argCount <= 3) { - ce = this.getEvent(t, true); - ce2 = this.getSibling(t, ce); + // PERF: Try to avoid slice/iteration for the common signatures - if (ce2 && !ce) { - ce = this.publish(t); + // Most common + if (argCount === 2) { + args = [arguments[1]]; // fire("foo", {}) + } else if (argCount === 3) { + args = [arguments[1], arguments[2]]; // fire("foo", {}, opts) + } else { + args = []; // fire("foo") + } + + } else { + args = nativeSlice.call(arguments, ((typeIncluded) ? 1 : 0)); } - this._monitor('fire', (ce || t), { - args: args - }); + if (!typeIncluded) { + t = (type && type.type); + } + + if (pre) { + t = _getType(t, pre); + } + + ce = yuievt.events[t]; + + if (this._hasSiblings) { + ce2 = this.getSibling(t, ce); + + if (ce2 && !ce) { + ce = this.publish(t); + } + } + + // PERF: trying to avoid function call, since this is a critical path + if ((etConfig.monitored && (!ce || ce.monitored)) || (ce && ce.monitored)) { + this._monitor('fire', (ce || t), { + args: args + }); + } // this event has not been published or subscribed to if (!ce) { @@ -2066,8 +2229,12 @@ Y.log('EventTarget unsubscribeAll() is deprecated, use detachAll()', 'warn', 'de // otherwise there is nothing to be done ret = true; } else { - ce.sibling = ce2; - ret = ce.fire.apply(ce, args); + + if (ce2) { + ce.sibling = ce2; + } + + ret = ce._fire(args); } return (yuievt.chain) ? this : ret; @@ -2075,17 +2242,15 @@ Y.log('EventTarget unsubscribeAll() is deprecated, use detachAll()', 'warn', 'de getSibling: function(type, ce) { var ce2; + // delegate to *:type events if there are subscribers if (type.indexOf(PREFIX_DELIMITER) > -1) { type = _wildType(type); - // console.log(type); ce2 = this.getEvent(type, true); if (ce2) { - // console.log("GOT ONE: " + type); ce2.applyConfig(ce); ce2.bubbles = false; ce2.broadcast = 0; - // ret = ce2.fire.apply(ce2, a); } } @@ -2102,6 +2267,7 @@ Y.log('EventTarget unsubscribeAll() is deprecated, use detachAll()', 'warn', 'de */ getEvent: function(type, prefixed) { var pre, e; + if (!prefixed) { pre = this._yuievt.config.prefix; type = (pre) ? _getType(type, pre) : type; @@ -2200,7 +2366,9 @@ Y.Global = YUI.Env.globalEvents; treating that method as an event -For custom event subscriptions, pass the custom event name as the first argument and callback as the second. The `this` object in the callback will be `Y` unless an override is passed as the third argument. +For custom event subscriptions, pass the custom event name as the first argument +and callback as the second. The `this` object in the callback will be `Y` unless +an override is passed as the third argument. Y.on('io:complete', function () { Y.MyApp.updateStatus('Transaction complete'); @@ -2226,7 +2394,7 @@ selector or other identifier. `defaultFn` can prevent the default behavior with `e.preventDefault()` from the event object passed as the first parameter to the subscription callback. -To subscribe to the execution of an object method, pass arguments corresponding to the call signature for +To subscribe to the execution of an object method, pass arguments corresponding to the call signature for `Y.Do.before(...)`. NOTE: The formal parameter list below is for events, not for function @@ -2311,4 +2479,4 @@ for that signature. **/ -}, '3.9.1', {"requires": ["oop"]}); +}, '3.12.0', {"requires": ["oop"]}); diff --git a/lib/yuilib/3.12.0/event-custom-base/event-custom-base-min.js b/lib/yuilib/3.12.0/event-custom-base/event-custom-base-min.js new file mode 100755 index 00000000000..42f83ee5814 --- /dev/null +++ b/lib/yuilib/3.12.0/event-custom-base/event-custom-base-min.js @@ -0,0 +1,10 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-custom-base",function(e,t){e.Env.evt={handles:{},plugins:{}};var n=0,r=1,i={objs:null,before:function(t,r,i,s){var o=t,u;return s&&(u=[t,s].concat(e.Array(arguments,4,!0)),o=e.rbind.apply(e,u)),this._inject(n,o,r,i)},after:function(t,n,i,s){var o=t,u;return s&&(u=[t,s].concat(e.Array(arguments,4,!0)),o=e.rbind.apply(e,u)),this._inject(r,o,n,i)},_inject:function(t,n,r,i){var s=e.stamp(r),o,u;return r._yuiaop||(r._yuiaop={}),o=r._yuiaop,o[i]||(o[i]=new e.Do.Method(r,i),r[i]=function(){return o[i].exec.apply(o[i],arguments)}),u=s+e.stamp(n)+i,o[i].register(u,n,t),new e.EventHandle(o[i],u)},detach:function(e){e.detach&&e.detach()}};e.Do=i,i.Method=function(e,t){this.obj=e,this.methodName=t,this.method=e[t],this.before={},this.after={}},i.Method.prototype.register=function(e,t,n){n?this.after[e]=t:this.before[e]=t},i.Method.prototype._delete=function(e){delete this.before[e],delete this.after[e]},i.Method.prototype.exec=function(){var t=e.Array(arguments,0,!0),n,r,s,o=this.before,u=this.after,a=!1;for(n in o)if(o.hasOwnProperty(n)){r=o[n].apply(this.obj,t);if(r)switch(r.constructor){case i.Halt:return r.retVal;case i.AlterArgs:t=r.newArgs;break;case i.Prevent:a=!0;break;default:}}a||(r=this.method.apply(this.obj,t)),i.originalRetVal=r,i.currentRetVal=r;for(n in u)if(u.hasOwnProperty(n)){s=u[n].apply(this.obj,t);if(s&&s.constructor===i.Halt)return s.retVal;s&&s.constructor===i.AlterReturn&&(r=s.newRetVal,i.currentRetVal=r)}return r},i.AlterArgs=function(e,t){this.msg=e,this.newArgs=t},i.AlterReturn=function(e,t){this.msg=e,this.newRetVal=t},i.Halt=function(e,t){this.msg=e,this.retVal=t},i.Prevent=function(e){this.msg=e},i.Error=i.Halt;var s=e.Array,o="after",u=["broadcast","monitored","bubbles","context","contextFn","currentTarget","defaultFn","defaultTargetOnly","details","emitFacade","fireOnce","async","host","preventable","preventedFn","queuable","silent","stoppedFn","target","type"],a=s.hash(u),f=Array.prototype.slice,l=9,c="yui:log",h=function(e,t,n){var r;for(r in t)a[r]&&(n||!(r in e))&&(e[r]=t[r]);return e};e.CustomEvent=function(t,n){this._kds=e.CustomEvent.keepDeprecatedSubs,this.id=e.guid(),this.type=t,this.silent=this.logSystem=t===c,this._kds&&(this.subscribers={},this.afters={}),n&&h(this,n,!0)},e.CustomEvent.keepDeprecatedSubs=!1,e.CustomEvent.mixConfigs=h,e.CustomEvent.prototype={constructor:e.CustomEvent,signature:l,context:e,preventable:!0,bubbles:!0,hasSubs:function(e){var t=0,n=0,r=this._subscribers,i=this._afters,s=this.sibling;return r&&(t=r.length),i&&(n=i.length),s&&(r=s._subscribers,i=s._afters,r&&(t+=r.length),i&&(n+=i.length)),e?e==="after"?n:t:t+n},monitor:function(e){this.monitored=!0;var t=this.id+"|"+this.type+"_"+e,n=f.call(arguments,0);return n[0]=t,this.host.on.apply(this.host,n)},getSubs:function(){var e=this.sibling,t=this._subscribers,n=this._afters,r,i;return e&&(r=e._subscribers,i=e._afters),r?t?t=t.concat(r):t=r.concat():t?t=t.concat():t=[],i?n?n=n.concat(i):n=i.concat():n?n=n.concat():n=[],[t,n]},applyConfig:function(e,t){h(this,e,t)},_on:function(t,n,r,i){var s=new e.Subscriber(t,n,r,i),u;return this.fireOnce&&this.fired&&(u=this.firedWith,this.emitFacade&&this._addFacadeToArgs&&this._addFacadeToArgs(u),this.async?setTimeout(e.bind(this._notify,this,s,u),0):this._notify(s,u)),i===o?(this._afters||(this._afters=[]),this._afters.push(s)):(this._subscribers||(this._subscribers=[]),this._subscribers.push(s)),this._kds&&(i===o?this.afters[s.id]=s:this.subscribers[s.id]=s),new e.EventHandle(this,s)},subscribe:function(e,t){var n=arguments.length>2?f.call(arguments,2):null;return this._on(e,t,n,!0)},on:function(e,t){var n=arguments.length>2?f.call(arguments,2):null;return this.monitored&&this.host&&this.host._monitor("attach",this,{args:arguments}),this._on(e,t,n,!0)},after:function(e,t){var n=arguments.length>2?f.call(arguments,2):null;return this._on(e,t,n,o)},detach:function(e,t){if(e&&e.detach)return e.detach();var n,r,i=0,s=this._subscribers,o=this._afters;if(s)for(n=s.length;n>=0;n--)r=s[n],r&&(!e||e===r.fn)&&(this._delete(r,s,n),i++);if(o)for(n=o.length;n>=0;n--)r=o[n],r&&(!e||e===r.fn)&&(this._delete(r,o,n),i++);return i},unsubscribe:function(){return this.detach.apply(this,arguments)},_notify:function(e,t,n){var r;return r=e.notify(t,this),!1===r||this.stopped>1?!1:!0},log:function(e,t){},fire:function(){var e=[];return e.push.apply(e,arguments),this._fire(e)},_fire:function(e){return this.fireOnce&&this.fired?!0:(this.fired=!0,this.fireOnce&&(this.firedWith=e),this.emitFacade?this.fireComplex(e):this.fireSimple(e))},fireSimple:function(e){this.stopped=0,this.prevented=0;if(this.hasSubs()){var t=this.getSubs();this._procSubs(t[0],e),this._procSubs(t[1],e)}return this.broadcast&&this._broadcast(e),this.stopped?!1:!0},fireComplex:function(e){return e[0]=e[0]||{},this.fireSimple(e)},_procSubs:function(e,t,n){var r,i,s;for(i=0,s=e.length;i-1?e:t+d+e},w=e.cached(function(e,t){var n=e,r,i,s;return p.isString(n)?(s=n.indexOf(m),s>-1&&(i=!0,n=n.substr(m.length)),s=n.indexOf(v),s>-1&&(r=n.substr(0,s),n=n.substr(s+1),n==="*"&&(n=null)),[r,t?b(n,t):n,i,n]):n}),E=function(t){var n=this._yuievt,r;n||(n=this._yuievt={events:{},targets:null,config:{host:this,context:this},chain:e.config.chain}),r=n.config,t&&(h(r,t,!0),t.chain!==undefined&&(n.chain=t.chain),t.prefix&&(r.prefix=t.prefix))};E.prototype={constructor:E,once:function(){var e=this.on.apply(this,arguments);return e.batch(function(e){e.sub&&(e.sub.once=!0)}),e},onceAfter:function(){var e=this.after.apply(this,arguments);return e.batch(function(e){e.sub&&(e.sub.once=!0)}),e},parseType:function(e,t){return w(e,t||this._yuievt.config.prefix)},on:function(t,n,r){var i=this._yuievt,s=w(t,i.config.prefix),o,u,a,l,c,h,d,v=e.Env.evt.handles,g,y,b,E=e.Node,S,x,T;this._monitor("attach",s[1],{args:arguments,category:s[0],after:s[2]});if(p.isObject(t))return p.isFunction(t)?e.Do.before.apply(e.Do,arguments):(o=n,u=r,a=f.call(arguments,0),l=[],p.isArray(t)&&(T=!0),g=t._after,delete t._after,e.each(t,function(e,t){p.isObject(e)&&(o=e.fn||(p.isFunction(e)?e:o),u=e.context||u);var n=g?m:"";a[0]=n+(T?e:t),a[1]=o,a[2]=u,l.push(this.on.apply(this,a))},this),i.chain?this:new e.EventHandle(l));h=s[0],g=s[2],b=s[3];if(E&&e.instanceOf(this,E)&&b in E.DOM_EVENTS)return a=f.call(arguments,0),a.splice(2,0,E.getDOMNode(this)),e.on.apply(e,a);t=s[1];if(e.instanceOf(this,YUI)){y=e.Env.evt.plugins[t],a=f.call(arguments,0),a[0]=b,E&&(S=a[2],e.instanceOf(S,e.NodeList)?S=e.NodeList.getDOMNodes(S):e.instanceOf(S,E)&&(S=E.getDOMNode(S)),x=b in E.DOM_EVENTS,x&&(a[2]=S));if(y)d=y.on.apply(e,a);else if(!t||x)d=e.Event._attach(a)}return d||(c=i.events[t]||this.publish(t),d=c._on(n,r,arguments.length>3?f.call(arguments,3):null,g?"after":!0),t.indexOf("*:")!==-1&&(this._hasSiblings=!0)),h&&(v[h]=v[h]||{},v[h][t]=v[h][t]||[],v[h][t].push(d)),i.chain?this:d},subscribe:function(){return this.on.apply(this,arguments)},detach:function(t,n,r){var i=this._yuievt.events,s,o=e.Node,u=o&&e.instanceOf(this,o);if(!t&&this!==e){for(s in i)i.hasOwnProperty(s)&&i[s].detach(n,r);return u&&e.Event.purgeElement(o.getDOMNode(this)),this}var a=w(t,this._yuievt.config.prefix),l=p.isArray(a)?a[0]:null,c=a?a[3]:null,h,d=e.Env.evt.handles,v,m,g,y,b=function(e,t,n){var r=e[t],i,s;if(r)for(s=r.length-1;s>=0;--s)i=r[s].evt,(i.host===n||i.el===n)&&r[s].detach()};if(l){m=d[l],t=a[1],v=u?e.Node.getDOMNode(this):this;if(m){if(t)b(m,t,v);else for(s in m)m.hasOwnProperty(s)&&b(m,s,v);return this}}else{if(p.isObject(t)&&t.detach)return t.detach(),this;if(u&&(!c||c in o.DOM_EVENTS))return g=f.call(arguments,0),g[2]=o.getDOMNode(this),e.detach.apply(e,g),this}h=e.Env.evt.plugins[c];if(e.instanceOf(this,YUI)){g=f.call(arguments,0);if(h&&h.detach)return h.detach.apply(e,g),this;if(!t||!h&&o&&t in o.DOM_EVENTS)return g[0]=t,e.Event.detach.apply(e.Event,g),this}return y=i[a[1]],y&&y.detach(n,r),this},unsubscribe:function(){return this.detach.apply(this,arguments)},detachAll:function(e){return this.detach(e)},unsubscribeAll:function(){return this.detachAll.apply(this,arguments)},publish:function(t,n){var r,i=this._yuievt,s=i.config,o=s.prefix;return typeof t=="string"?(o&&(t=b(t,o)),r=this._publish(t,s,n)):(r={},e.each(t,function(e,t){o&&(t=b(t,o)),r[t]=this._publish(t,s,e||n)},this)),r},_getFullType:function(e){var t=this._yuievt.config.prefix;return t?t+d+e:e},_publish:function(t,n,r){var i,s=this._yuievt,o=s.config,u=o.host,a=o.context,f=s.events;return i=f[t],(o.monitored&&!i||i&&i.monitored)&&this._monitor("publish",t,{args:arguments}),i||(i=f[t]=new e.CustomEvent(t,n),n||(i.host=u,i.context=a)),r&&h(i,r,!0),i},_monitor:function(e,t,n){var r,i,s;if(t){typeof t=="string"?(s=t,i=this.getEvent(t,!0)):(i=t,s=t.type);if(this._yuievt.config.monitored&&(!i||i.monitored)||i&&i.monitored)r=s+"_"+e,n.monitored=e,this.fire.call(this,r,n)}},fire:function(e){var t=typeof e=="string",n=arguments.length,r=e,i=this._yuievt,s=i.config,o=s.prefix,u,a,l,c;t&&n<=3?n===2?c=[arguments[1]]:n===3?c=[arguments[1],arguments[2]]:c=[]:c=f.call(arguments,t?1:0),t||(r=e&&e.type),o&&(r=b(r,o)),a=i.events[r],this._hasSiblings&&(l=this.getSibling(r,a),l&&!a&&(a=this.publish(r))),(s.monitored&&(!a||a.monitored)||a&&a.monitored)&&this._monitor("fire",a||r,{args:c});if(!a){if(i.hasTargets)return this.bubble({type:r},c,this);u=!0}else l&&(a.sibling=l),u=a._fire(c);return i.chain?this:u},getSibling:function(e,t){var n;return e.indexOf(d)>-1&&(e=y(e),n=this.getEvent(e,!0),n&&(n.applyConfig(t),n.bubbles=!1,n.broadcast=0)),n},getEvent:function(e,t){var n,r;return t||(n=this._yuievt.config.prefix,e=n?b(e,n):e),r=this._yuievt.events,r[e]||null},after:function(t,n){var r=f.call(arguments,0);switch(p.type(t)){case"function":return e.Do.after.apply(e.Do,arguments);case"array":case"object":r[0]._after=!0;break;default:r[0]=m+t}return this.on.apply(this,r)},before:function(){return this.on.apply +(this,arguments)}},e.EventTarget=E,e.mix(e,E.prototype),E.call(e,{bubbles:!1}),YUI.Env.globalEvents=YUI.Env.globalEvents||new E,e.Global=YUI.Env.globalEvents},"3.12.0",{requires:["oop"]}); diff --git a/lib/yuilib/3.9.1/build/event-custom-base/event-custom-base.js b/lib/yuilib/3.12.0/event-custom-base/event-custom-base.js old mode 100644 new mode 100755 similarity index 84% rename from lib/yuilib/3.9.1/build/event-custom-base/event-custom-base.js rename to lib/yuilib/3.12.0/event-custom-base/event-custom-base.js index cebb1484487..3f5b9b63b0c --- a/lib/yuilib/3.9.1/build/event-custom-base/event-custom-base.js +++ b/lib/yuilib/3.12.0/event-custom-base/event-custom-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-custom-base', function (Y, NAME) { /** @@ -36,12 +42,12 @@ DO = { * Cache of objects touched by the utility * @property objs * @static - * @deprecated Since 3.6.0. The `_yuiaop` property on the AOP'd object - * replaces the role of this property, but is considered to be private, and + * @deprecated Since 3.6.0. The `_yuiaop` property on the AOP'd object + * replaces the role of this property, but is considered to be private, and * is only mentioned to provide a migration path. - * - * If you have a use case which warrants migration to the _yuiaop property, - * please file a ticket to let us know what it's used for and we can see if + * + * If you have a use case which warrants migration to the _yuiaop property, + * please file a ticket to let us know what it's used for and we can see if * we need to expose hooks for that functionality more formally. */ objs: null, @@ -175,9 +181,6 @@ DO = { if (handle.detach) { handle.detach(); } - }, - - _unload: function(e, me) { } }; @@ -303,10 +306,10 @@ DO.Method.prototype.exec = function () { if (af.hasOwnProperty(i)) { newRet = af[i].apply(this.obj, args); // Stop processing if a Halt object is returned - if (newRet && newRet.constructor == DO.Halt) { + if (newRet && newRet.constructor === DO.Halt) { return newRet.retVal; // Check for a new return value - } else if (newRet && newRet.constructor == DO.AlterReturn) { + } else if (newRet && newRet.constructor === DO.AlterReturn) { ret = newRet.newRetVal; // Update the static retval state DO.currentRetVal = ret; @@ -391,9 +394,6 @@ DO.Error = DO.Halt; ////////////////////////////////////////////////////////////////////////// -// Y["Event"] && Y.Event.addListener(window, "unload", Y.Do._unload, Y.Do); - - /** * Custom event engine, DOM event listener abstraction layer, synthetic DOM * events. @@ -431,7 +431,7 @@ var YArray = Y.Array, CONFIGS_HASH = YArray.hash(CONFIGS), - nativeSlice = Array.prototype.slice, + nativeSlice = Array.prototype.slice, YUI3_SIGNATURE = 9, YUI_LOG = 'yui:log', @@ -440,7 +440,7 @@ var YArray = Y.Array, var p; for (p in s) { - if (CONFIGS_HASH[p] && (ov || !(p in r))) { + if (CONFIGS_HASH[p] && (ov || !(p in r))) { r[p] = s[p]; } } @@ -454,257 +454,69 @@ var YArray = Y.Array, * * @param {String} type The type of event, which is passed to the callback * when the event fires. - * @param {object} o configuration object. + * @param {object} defaults configuration object. * @class CustomEvent * @constructor */ -Y.CustomEvent = function(type, o) { + + /** + * The type of event, returned to subscribers when the event fires + * @property type + * @type string + */ + +/** + * By default all custom events are logged in the debug build, set silent + * to true to disable debug outpu for this event. + * @property silent + * @type boolean + */ + +Y.CustomEvent = function(type, defaults) { this._kds = Y.CustomEvent.keepDeprecatedSubs; - o = o || {}; + this.id = Y.guid(); - this.id = Y.stamp(this); - - /** - * The type of event, returned to subscribers when the event fires - * @property type - * @type string - */ this.type = type; + this.silent = this.logSystem = (type === YUI_LOG); - /** - * The context the the event will fire from by default. Defaults to the YUI - * instance. - * @property context - * @type object - */ - this.context = Y; - - /** - * Monitor when an event is attached or detached. - * - * @property monitored - * @type boolean - */ - // this.monitored = false; - - this.logSystem = (type == YUI_LOG); - - /** - * If 0, this event does not broadcast. If 1, the YUI instance is notified - * every time this event fires. If 2, the YUI instance and the YUI global - * (if event is enabled on the global) are notified every time this event - * fires. - * @property broadcast - * @type int - */ - // this.broadcast = 0; - - /** - * By default all custom events are logged in the debug build, set silent - * to true to disable debug outpu for this event. - * @property silent - * @type boolean - */ - this.silent = this.logSystem; - - /** - * Specifies whether this event should be queued when the host is actively - * processing an event. This will effect exectution order of the callbacks - * for the various events. - * @property queuable - * @type boolean - * @default false - */ - // this.queuable = false; - - /** - * The subscribers to this event - * @property subscribers - * @type Subscriber {} - * @deprecated - */ if (this._kds) { + /** + * The subscribers to this event + * @property subscribers + * @type Subscriber {} + * @deprecated + */ + + /** + * 'After' subscribers + * @property afters + * @type Subscriber {} + * @deprecated + */ this.subscribers = {}; - } - - /** - * The subscribers to this event - * @property _subscribers - * @type Subscriber [] - * @private - */ - this._subscribers = []; - - /** - * 'After' subscribers - * @property afters - * @type Subscriber {} - */ - if (this._kds) { this.afters = {}; } - /** - * 'After' subscribers - * @property _afters - * @type Subscriber [] - * @private - */ - this._afters = []; - - /** - * This event has fired if true - * - * @property fired - * @type boolean - * @default false; - */ - // this.fired = false; - - /** - * An array containing the arguments the custom event - * was last fired with. - * @property firedWith - * @type Array - */ - // this.firedWith; - - /** - * This event should only fire one time if true, and if - * it has fired, any new subscribers should be notified - * immediately. - * - * @property fireOnce - * @type boolean - * @default false; - */ - // this.fireOnce = false; - - /** - * fireOnce listeners will fire syncronously unless async - * is set to true - * @property async - * @type boolean - * @default false - */ - //this.async = false; - - /** - * Flag for stopPropagation that is modified during fire() - * 1 means to stop propagation to bubble targets. 2 means - * to also stop additional subscribers on this target. - * @property stopped - * @type int - */ - // this.stopped = 0; - - /** - * Flag for preventDefault that is modified during fire(). - * if it is not 0, the default behavior for this event - * @property prevented - * @type int - */ - // this.prevented = 0; - - /** - * Specifies the host for this custom event. This is used - * to enable event bubbling - * @property host - * @type EventTarget - */ - // this.host = null; - - /** - * The default function to execute after event listeners - * have fire, but only if the default action was not - * prevented. - * @property defaultFn - * @type Function - */ - // this.defaultFn = null; - - /** - * The function to execute if a subscriber calls - * stopPropagation or stopImmediatePropagation - * @property stoppedFn - * @type Function - */ - // this.stoppedFn = null; - - /** - * The function to execute if a subscriber calls - * preventDefault - * @property preventedFn - * @type Function - */ - // this.preventedFn = null; - - /** - * Specifies whether or not this event's default function - * can be cancelled by a subscriber by executing preventDefault() - * on the event facade - * @property preventable - * @type boolean - * @default true - */ - this.preventable = true; - - /** - * Specifies whether or not a subscriber can stop the event propagation - * via stopPropagation(), stopImmediatePropagation(), or halt() - * - * Events can only bubble if emitFacade is true. - * - * @property bubbles - * @type boolean - * @default true - */ - this.bubbles = true; - - /** - * Supports multiple options for listener signatures in order to - * port YUI 2 apps. - * @property signature - * @type int - * @default 9 - */ - this.signature = YUI3_SIGNATURE; - - // this.subCount = 0; - // this.afterCount = 0; - - // this.hasSubscribers = false; - // this.hasAfters = false; - - /** - * If set to true, the custom event will deliver an EventFacade object - * that is similar to a DOM event object. - * @property emitFacade - * @type boolean - * @default false - */ - // this.emitFacade = false; - - this.applyConfig(o, true); - - + if (defaults) { + mixConfigs(this, defaults, true); + } }; /** * Static flag to enable population of the `subscribers` * and `afters` properties held on a `CustomEvent` instance. - * - * These properties were changed to private properties (`_subscribers` and `_afters`), and - * converted from objects to arrays for performance reasons. * - * Setting this property to true will populate the deprecated `subscribers` and `afters` + * These properties were changed to private properties (`_subscribers` and `_afters`), and + * converted from objects to arrays for performance reasons. + * + * Setting this property to true will populate the deprecated `subscribers` and `afters` * properties for people who may be using them (which is expected to be rare). There will * be a performance hit, compared to the new array based implementation. * * If you are using these deprecated properties for a use case which the public API - * does not support, please file an enhancement request, and we can provide an alternate + * does not support, please file an enhancement request, and we can provide an alternate * public implementation which doesn't have the performance cost required to maintiain the * properties as objects. * @@ -723,6 +535,169 @@ Y.CustomEvent.prototype = { constructor: Y.CustomEvent, + /** + * Monitor when an event is attached or detached. + * + * @property monitored + * @type boolean + */ + + /** + * If 0, this event does not broadcast. If 1, the YUI instance is notified + * every time this event fires. If 2, the YUI instance and the YUI global + * (if event is enabled on the global) are notified every time this event + * fires. + * @property broadcast + * @type int + */ + + /** + * Specifies whether this event should be queued when the host is actively + * processing an event. This will effect exectution order of the callbacks + * for the various events. + * @property queuable + * @type boolean + * @default false + */ + + /** + * This event has fired if true + * + * @property fired + * @type boolean + * @default false; + */ + + /** + * An array containing the arguments the custom event + * was last fired with. + * @property firedWith + * @type Array + */ + + /** + * This event should only fire one time if true, and if + * it has fired, any new subscribers should be notified + * immediately. + * + * @property fireOnce + * @type boolean + * @default false; + */ + + /** + * fireOnce listeners will fire syncronously unless async + * is set to true + * @property async + * @type boolean + * @default false + */ + + /** + * Flag for stopPropagation that is modified during fire() + * 1 means to stop propagation to bubble targets. 2 means + * to also stop additional subscribers on this target. + * @property stopped + * @type int + */ + + /** + * Flag for preventDefault that is modified during fire(). + * if it is not 0, the default behavior for this event + * @property prevented + * @type int + */ + + /** + * Specifies the host for this custom event. This is used + * to enable event bubbling + * @property host + * @type EventTarget + */ + + /** + * The default function to execute after event listeners + * have fire, but only if the default action was not + * prevented. + * @property defaultFn + * @type Function + */ + + /** + * The function to execute if a subscriber calls + * stopPropagation or stopImmediatePropagation + * @property stoppedFn + * @type Function + */ + + /** + * The function to execute if a subscriber calls + * preventDefault + * @property preventedFn + * @type Function + */ + + /** + * The subscribers to this event + * @property _subscribers + * @type Subscriber [] + * @private + */ + + /** + * 'After' subscribers + * @property _afters + * @type Subscriber [] + * @private + */ + + /** + * If set to true, the custom event will deliver an EventFacade object + * that is similar to a DOM event object. + * @property emitFacade + * @type boolean + * @default false + */ + + /** + * Supports multiple options for listener signatures in order to + * port YUI 2 apps. + * @property signature + * @type int + * @default 9 + */ + signature : YUI3_SIGNATURE, + + /** + * The context the the event will fire from by default. Defaults to the YUI + * instance. + * @property context + * @type object + */ + context : Y, + + /** + * Specifies whether or not this event's default function + * can be cancelled by a subscriber by executing preventDefault() + * on the event facade + * @property preventable + * @type boolean + * @default true + */ + preventable : true, + + /** + * Specifies whether or not a subscriber can stop the event propagation + * via stopPropagation(), stopImmediatePropagation(), or halt() + * + * Events can only bubble if emitFacade is true. + * + * @property bubbles + * @type boolean + * @default true + */ + bubbles : true, + /** * Returns the number of subscribers for this event as the sum of the on() * subscribers and after() subscribers. @@ -731,15 +706,35 @@ Y.CustomEvent.prototype = { * @return Number */ hasSubs: function(when) { - var s = this._subscribers.length, a = this._afters.length, sib = this.sibling; + var s = 0, + a = 0, + subs = this._subscribers, + afters = this._afters, + sib = this.sibling; + + if (subs) { + s = subs.length; + } + + if (afters) { + a = afters.length; + } if (sib) { - s += sib._subscribers.length; - a += sib._afters.length; + subs = sib._subscribers; + afters = sib._afters; + + if (subs) { + s += subs.length; + } + + if (afters) { + a += afters.length; + } } if (when) { - return (when == 'after') ? a : s; + return (when === 'after') ? a : s; } return (s + a); @@ -767,12 +762,47 @@ Y.CustomEvent.prototype = { * @return {Array} first item is the on subscribers, second the after. */ getSubs: function() { - var s = this._subscribers, a = this._afters, sib = this.sibling; - s = (sib) ? s.concat(sib._subscribers) : s.concat(); - a = (sib) ? a.concat(sib._afters) : a.concat(); + var sibling = this.sibling, + subs = this._subscribers, + afters = this._afters, + siblingSubs, + siblingAfters; - return [s, a]; + if (sibling) { + siblingSubs = sibling._subscribers; + siblingAfters = sibling._afters; + } + + if (siblingSubs) { + if (subs) { + subs = subs.concat(siblingSubs); + } else { + subs = siblingSubs.concat(); + } + } else { + if (subs) { + subs = subs.concat(); + } else { + subs = []; + } + } + + if (siblingAfters) { + if (afters) { + afters = afters.concat(siblingAfters); + } else { + afters = siblingAfters.concat(); + } + } else { + if (afters) { + afters = afters.concat(); + } else { + afters = []; + } + } + + return [subs, afters]; }, /** @@ -788,7 +818,7 @@ Y.CustomEvent.prototype = { /** * Create the Subscription for subscribing function, context, and bound - * arguments. If this is a fireOnce event, the subscriber is immediately + * arguments. If this is a fireOnce event, the subscriber is immediately * notified. * * @method _on @@ -802,24 +832,41 @@ Y.CustomEvent.prototype = { _on: function(fn, context, args, when) { - var s = new Y.Subscriber(fn, context, args, when); + var s = new Y.Subscriber(fn, context, args, when), + firedWith; if (this.fireOnce && this.fired) { + + firedWith = this.firedWith; + + // It's a little ugly for this to know about facades, + // but given the current breakup, not much choice without + // moving a whole lot of stuff around. + if (this.emitFacade && this._addFacadeToArgs) { + this._addFacadeToArgs(firedWith); + } + if (this.async) { - setTimeout(Y.bind(this._notify, this, s, this.firedWith), 0); + setTimeout(Y.bind(this._notify, this, s, firedWith), 0); } else { - this._notify(s, this.firedWith); + this._notify(s, firedWith); } } - if (when == AFTER) { + if (when === AFTER) { + if (!this._afters) { + this._afters = []; + } this._afters.push(s); } else { + if (!this._subscribers) { + this._subscribers = []; + } this._subscribers.push(s); } if (this._kds) { - if (when == AFTER) { + if (when === AFTER) { this.afters[s.id] = s; } else { this.subscribers[s.id] = s; @@ -840,7 +887,7 @@ Y.CustomEvent.prototype = { var a = (arguments.length > 2) ? nativeSlice.call(arguments, 2) : null; return this._on(fn, context, a, true); }, - + /** * Listen for this event * @method on @@ -890,25 +937,29 @@ Y.CustomEvent.prototype = { if (fn && fn.detach) { return fn.detach(); } - + var i, s, found = 0, subs = this._subscribers, afters = this._afters; - for (i = subs.length; i >= 0; i--) { - s = subs[i]; - if (s && (!fn || fn === s.fn)) { - this._delete(s, subs, i); - found++; + if (subs) { + for (i = subs.length; i >= 0; i--) { + s = subs[i]; + if (s && (!fn || fn === s.fn)) { + this._delete(s, subs, i); + found++; + } } } - for (i = afters.length; i >= 0; i--) { - s = afters[i]; - if (s && (!fn || fn === s.fn)) { - this._delete(s, afters, i); - found++; + if (afters) { + for (i = afters.length; i >= 0; i--) { + s = afters[i]; + if (s && (!fn || fn === s.fn)) { + this._delete(s, afters, i); + found++; + } } } @@ -976,12 +1027,33 @@ Y.CustomEvent.prototype = { * */ fire: function() { + + // push is the fastest way to go from arguments to arrays + // for most browsers currently + // http://jsperf.com/push-vs-concat-vs-slice/2 + + var args = []; + args.push.apply(args, arguments); + + return this._fire(args); + }, + + /** + * Private internal implementation for `fire`, which is can be used directly by + * `EventTarget` and other event module classes which have already converted from + * an `arguments` list to an array, to avoid the repeated overhead. + * + * @method _fire + * @private + * @param {Array} args The array of arguments passed to be passed to handlers. + * @return {boolean} false if one of the subscribers returned false, true otherwise. + */ + _fire: function(args) { + if (this.fireOnce && this.fired) { return true; } else { - var args = nativeSlice.call(arguments, 0); - // this doesn't happen if the event isn't published // this.host._monitor('fire', this.type, args); @@ -1015,7 +1087,9 @@ Y.CustomEvent.prototype = { this._procSubs(subs[0], args); this._procSubs(subs[1], args); } - this._broadcast(args); + if (this.broadcast) { + this._broadcast(args); + } return this.stopped ? false : true; }, @@ -1046,7 +1120,7 @@ Y.CustomEvent.prototype = { if (false === this._notify(s, args, ef)) { this.stopped = 2; } - if (this.stopped == 2) { + if (this.stopped === 2) { return false; } } @@ -1073,7 +1147,7 @@ Y.CustomEvent.prototype = { Y.fire.apply(Y, a); } - if (this.broadcast == 2) { + if (this.broadcast === 2) { Y.Global.fire.apply(Y.Global, a); } } @@ -1112,12 +1186,15 @@ Y.CustomEvent.prototype = { var when = s._when; if (!subs) { - subs = (when === AFTER) ? this._afters : this._subscribers; - i = YArray.indexOf(subs, s, 0); + subs = (when === AFTER) ? this._afters : this._subscribers; } - if (s && subs[i] === s) { - subs.splice(i, 1); + if (subs) { + i = YArray.indexOf(subs, s, 0); + + if (s && subs[i] === s) { + subs.splice(i, 1); + } } if (this._kds) { @@ -1171,7 +1248,7 @@ Y.Subscriber = function(fn, context, args, when) { * @property id * @type String */ - this.id = Y.stamp(this); + this.id = Y.guid(); /** * Additional arguments to propagate to the subscriber @@ -1275,12 +1352,12 @@ Y.Subscriber.prototype = { */ contains: function(fn, context) { if (context) { - return ((this.fn == fn) && this.context == context); + return ((this.fn === fn) && this.context === context); } else { - return (this.fn == fn); + return (this.fn === fn); } }, - + valueOf : function() { return this.id; } @@ -1398,14 +1475,14 @@ var L = Y.Lang, * @method _getType * @private */ - _getType = Y.cached(function(type, pre) { + _getType = function(type, pre) { - if (!pre || (typeof type !== "string") || type.indexOf(PREFIX_DELIMITER) > -1) { + if (!pre || !type || type.indexOf(PREFIX_DELIMITER) > -1) { return type; } return pre + PREFIX_DELIMITER + type; - }), + }, /** * Returns an array with the detach key (if provided), @@ -1434,7 +1511,7 @@ var L = Y.Lang, if (i > -1) { detachcategory = t.substr(0, (i)); t = t.substr(i+1); - if (t == '*') { + if (t === '*') { t = null; } } @@ -1445,39 +1522,38 @@ var L = Y.Lang, ET = function(opts) { + var etState = this._yuievt, + etConfig; - var o = (L.isObject(opts)) ? opts : {}; + if (!etState) { + etState = this._yuievt = { + events: {}, // PERF: Not much point instantiating lazily. We're bound to have events + targets: null, // PERF: Instantiate lazily, if user actually adds target, + config: { + host: this, + context: this + }, + chain: Y.config.chain + }; + } - this._yuievt = this._yuievt || { + etConfig = etState.config; - id: Y.guid(), + if (opts) { + mixConfigs(etConfig, opts, true); - events: {}, - - targets: {}, - - config: o, - - chain: ('chain' in o) ? o.chain : Y.config.chain, - - bubbling: false, - - defaults: { - context: o.context || this, - host: this, - emitFacade: o.emitFacade, - fireOnce: o.fireOnce, - queuable: o.queuable, - monitored: o.monitored, - broadcast: o.broadcast, - defaultTargetOnly: o.defaultTargetOnly, - bubbles: ('bubbles' in o) ? o.bubbles : true + if (opts.chain !== undefined) { + etState.chain = opts.chain; } - }; + + if (opts.prefix) { + etConfig.prefix = opts.prefix; + } + } }; - ET.prototype = { + constructor: ET, /** @@ -1673,6 +1749,11 @@ ET.prototype = { if (!handle) { ce = yuievt.events[type] || this.publish(type); handle = ce._on(fn, context, (arguments.length > 3) ? nativeSlice.call(arguments, 3) : null, (after) ? 'after' : true); + + // TODO: More robust regex, accounting for category + if (type.indexOf("*:") !== -1) { + this._hasSiblings = true; + } } if (detachcategory) { @@ -1711,8 +1792,11 @@ ET.prototype = { * @return {EventTarget} the host */ detach: function(type, fn, context) { - var evts = this._yuievt.events, i, - Node = Y.Node, isNode = Node && (Y.instanceOf(this, Node)); + + var evts = this._yuievt.events, + i, + Node = Y.Node, + isNode = Node && (Y.instanceOf(this, Node)); // detachAll disabled on the Y instance. if (!type && (this !== Y)) { @@ -1903,53 +1987,102 @@ ET.prototype = { * */ publish: function(type, opts) { - var events, ce, ret, defaults, - edata = this._yuievt, - pre = edata.config.prefix; - if (L.isObject(type)) { + var ret, + etState = this._yuievt, + etConfig = etState.config, + pre = etConfig.prefix; + + if (typeof type === "string") { + if (pre) { + type = _getType(type, pre); + } + ret = this._publish(type, etConfig, opts); + } else { ret = {}; + Y.each(type, function(v, k) { - ret[k] = this.publish(k, v || opts); + if (pre) { + k = _getType(k, pre); + } + ret[k] = this._publish(k, etConfig, v || opts); }, this); - return ret; } - type = (pre) ? _getType(type, pre) : type; + return ret; + }, - events = edata.events; - ce = events[type]; + /** + * Returns the fully qualified type, given a short type string. + * That is, returns "foo:bar" when given "bar" if "foo" is the configured prefix. + * + * NOTE: This method, unlike _getType, does no checking of the value passed in, and + * is designed to be used with the low level _publish() method, for critical path + * implementations which need to fast-track publish for performance reasons. + * + * @method _getFullType + * @private + * @param {String} type The short type to prefix + * @return {String} The prefixed type, if a prefix is set, otherwise the type passed in + */ + _getFullType : function(type) { - this._monitor('publish', type, { - args: arguments - }); + var pre = this._yuievt.config.prefix; - if (ce) { - // ce.log("publish applying new config to published event: '"+type+"' exists", 'info', 'event'); - if (opts) { - ce.applyConfig(opts, true); - } + if (pre) { + return pre + PREFIX_DELIMITER + type; } else { - // TODO: Lazy publish goes here. - defaults = edata.defaults; + return type; + } + }, - // apply defaults - ce = new Y.CustomEvent(type, defaults); - if (opts) { - ce.applyConfig(opts, true); - } + /** + * The low level event publish implementation. It expects all the massaging to have been done + * outside of this method. e.g. the `type` to `fullType` conversion. It's designed to be a fast + * path publish, which can be used by critical code paths to improve performance. + * + * @method _publish + * @private + * @param {String} fullType The prefixed type of the event to publish. + * @param {Object} etOpts The EventTarget specific configuration to mix into the published event. + * @param {Object} ceOpts The publish specific configuration to mix into the published event. + * @return {CustomEvent} The published event. If called without `etOpts` or `ceOpts`, this will + * be the default `CustomEvent` instance, and can be configured independently. + */ + _publish : function(fullType, etOpts, ceOpts) { - events[type] = ce; + var ce, + etState = this._yuievt, + etConfig = etState.config, + host = etConfig.host, + context = etConfig.context, + events = etState.events; + + ce = events[fullType]; + + // PERF: Hate to pull the check out of monitor, but trying to keep critical path tight. + if ((etConfig.monitored && !ce) || (ce && ce.monitored)) { + this._monitor('publish', fullType, { + args: arguments + }); } - // make sure we turn the broadcast flag off if this - // event was published as a result of bubbling - // if (opts instanceof Y.CustomEvent) { - // events[type].broadcast = false; - // } + if (!ce) { + // Publish event + ce = events[fullType] = new Y.CustomEvent(fullType, etOpts); - return events[type]; + if (!etOpts) { + ce.host = host; + ce.context = context; + } + } + + if (ceOpts) { + mixConfigs(ce, ceOpts, true); + } + + return ce; }, /** @@ -1989,23 +2122,23 @@ ET.prototype = { } }, - /** + /** * Fire a custom event by name. The callback functions will be executed * from the context specified when the event was created, and with the * following parameters. * - * If the custom event object hasn't been created, then the event hasn't - * been published and it has no subscribers. For performance sake, we - * immediate exit in this case. This means the event won't bubble, so - * if the intention is that a bubble target be notified, the event must - * be published on this object first. - * * The first argument is the event type, and any additional arguments are * passed to the listeners as parameters. If the first of these is an * object literal, and the event is configured to emit an event facade, * that object is mixed into the event facade and the facade is provided * in place of the original object. * + * If the custom event object hasn't been created, then the event hasn't + * been published and it has no subscribers. For performance sake, we + * immediate exit in this case. This means the event won't bubble, so + * if the intention is that a bubble target be notified, the event must + * be published on this object first. + * * @method fire * @param type {String|Object} The type of the event, or an object that contains * a 'type' property. @@ -2014,30 +2147,63 @@ ET.prototype = { * configured to emit an event facade, the event facade will replace that * parameter after the properties the object literal contains are copied to * the event facade. - * @return {EventTarget} the event host + * @return {Boolean} True if the whole lifecycle of the event went through, + * false if at any point the event propagation was halted. */ fire: function(type) { - var typeIncluded = L.isString(type), - t = (typeIncluded) ? type : (type && type.type), + var typeIncluded = (typeof type === "string"), + argCount = arguments.length, + t = type, yuievt = this._yuievt, - pre = yuievt.config.prefix, - ce, ret, + etConfig = yuievt.config, + pre = etConfig.prefix, + ret, + ce, ce2, - args = (typeIncluded) ? nativeSlice.call(arguments, 1) : arguments; + args; - t = (pre) ? _getType(t, pre) : t; + if (typeIncluded && argCount <= 3) { - ce = this.getEvent(t, true); - ce2 = this.getSibling(t, ce); + // PERF: Try to avoid slice/iteration for the common signatures - if (ce2 && !ce) { - ce = this.publish(t); + // Most common + if (argCount === 2) { + args = [arguments[1]]; // fire("foo", {}) + } else if (argCount === 3) { + args = [arguments[1], arguments[2]]; // fire("foo", {}, opts) + } else { + args = []; // fire("foo") + } + + } else { + args = nativeSlice.call(arguments, ((typeIncluded) ? 1 : 0)); } - this._monitor('fire', (ce || t), { - args: args - }); + if (!typeIncluded) { + t = (type && type.type); + } + + if (pre) { + t = _getType(t, pre); + } + + ce = yuievt.events[t]; + + if (this._hasSiblings) { + ce2 = this.getSibling(t, ce); + + if (ce2 && !ce) { + ce = this.publish(t); + } + } + + // PERF: trying to avoid function call, since this is a critical path + if ((etConfig.monitored && (!ce || ce.monitored)) || (ce && ce.monitored)) { + this._monitor('fire', (ce || t), { + args: args + }); + } // this event has not been published or subscribed to if (!ce) { @@ -2048,8 +2214,12 @@ ET.prototype = { // otherwise there is nothing to be done ret = true; } else { - ce.sibling = ce2; - ret = ce.fire.apply(ce, args); + + if (ce2) { + ce.sibling = ce2; + } + + ret = ce._fire(args); } return (yuievt.chain) ? this : ret; @@ -2057,17 +2227,15 @@ ET.prototype = { getSibling: function(type, ce) { var ce2; + // delegate to *:type events if there are subscribers if (type.indexOf(PREFIX_DELIMITER) > -1) { type = _wildType(type); - // console.log(type); ce2 = this.getEvent(type, true); if (ce2) { - // console.log("GOT ONE: " + type); ce2.applyConfig(ce); ce2.bubbles = false; ce2.broadcast = 0; - // ret = ce2.fire.apply(ce2, a); } } @@ -2084,6 +2252,7 @@ ET.prototype = { */ getEvent: function(type, prefixed) { var pre, e; + if (!prefixed) { pre = this._yuievt.config.prefix; type = (pre) ? _getType(type, pre) : type; @@ -2182,7 +2351,9 @@ Y.Global = YUI.Env.globalEvents; treating that method as an event -For custom event subscriptions, pass the custom event name as the first argument and callback as the second. The `this` object in the callback will be `Y` unless an override is passed as the third argument. +For custom event subscriptions, pass the custom event name as the first argument +and callback as the second. The `this` object in the callback will be `Y` unless +an override is passed as the third argument. Y.on('io:complete', function () { Y.MyApp.updateStatus('Transaction complete'); @@ -2208,7 +2379,7 @@ selector or other identifier. `defaultFn` can prevent the default behavior with `e.preventDefault()` from the event object passed as the first parameter to the subscription callback. -To subscribe to the execution of an object method, pass arguments corresponding to the call signature for +To subscribe to the execution of an object method, pass arguments corresponding to the call signature for `Y.Do.before(...)`. NOTE: The formal parameter list below is for events, not for function @@ -2293,4 +2464,4 @@ for that signature. **/ -}, '3.9.1', {"requires": ["oop"]}); +}, '3.12.0', {"requires": ["oop"]}); diff --git a/lib/yuilib/3.12.0/event-custom-complex/event-custom-complex-debug.js b/lib/yuilib/3.12.0/event-custom-complex/event-custom-complex-debug.js new file mode 100755 index 00000000000..bf2cefd4e8b --- /dev/null +++ b/lib/yuilib/3.12.0/event-custom-complex/event-custom-complex-debug.js @@ -0,0 +1,674 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('event-custom-complex', function (Y, NAME) { + + +/** + * Adds event facades, preventable default behavior, and bubbling. + * events. + * @module event-custom + * @submodule event-custom-complex + */ + +var FACADE, + FACADE_KEYS, + YObject = Y.Object, + key, + EMPTY = {}, + CEProto = Y.CustomEvent.prototype, + ETProto = Y.EventTarget.prototype, + + mixFacadeProps = function(facade, payload) { + var p; + + for (p in payload) { + if (!(FACADE_KEYS.hasOwnProperty(p))) { + facade[p] = payload[p]; + } + } + }; + +/** + * Wraps and protects a custom event for use when emitFacade is set to true. + * Requires the event-custom-complex module + * @class EventFacade + * @param e {Event} the custom event + * @param currentTarget {HTMLElement} the element the listener was attached to + */ + +Y.EventFacade = function(e, currentTarget) { + + if (!e) { + e = EMPTY; + } + + this._event = e; + + /** + * The arguments passed to fire + * @property details + * @type Array + */ + this.details = e.details; + + /** + * The event type, this can be overridden by the fire() payload + * @property type + * @type string + */ + this.type = e.type; + + /** + * The real event type + * @property _type + * @type string + * @private + */ + this._type = e.type; + + ////////////////////////////////////////////////////// + + /** + * Node reference for the targeted eventtarget + * @property target + * @type Node + */ + this.target = e.target; + + /** + * Node reference for the element that the listener was attached to. + * @property currentTarget + * @type Node + */ + this.currentTarget = currentTarget; + + /** + * Node reference to the relatedTarget + * @property relatedTarget + * @type Node + */ + this.relatedTarget = e.relatedTarget; + +}; + +Y.mix(Y.EventFacade.prototype, { + + /** + * Stops the propagation to the next bubble target + * @method stopPropagation + */ + stopPropagation: function() { + this._event.stopPropagation(); + this.stopped = 1; + }, + + /** + * Stops the propagation to the next bubble target and + * prevents any additional listeners from being exectued + * on the current target. + * @method stopImmediatePropagation + */ + stopImmediatePropagation: function() { + this._event.stopImmediatePropagation(); + this.stopped = 2; + }, + + /** + * Prevents the event's default behavior + * @method preventDefault + */ + preventDefault: function() { + this._event.preventDefault(); + this.prevented = 1; + }, + + /** + * Stops the event propagation and prevents the default + * event behavior. + * @method halt + * @param immediate {boolean} if true additional listeners + * on the current target will not be executed + */ + halt: function(immediate) { + this._event.halt(immediate); + this.prevented = 1; + this.stopped = (immediate) ? 2 : 1; + } + +}); + +CEProto.fireComplex = function(args) { + + var es, + ef, + q, + queue, + ce, + ret = true, + events, + subs, + ons, + afters, + afterQueue, + postponed, + prevented, + preventedFn, + defaultFn, + self = this, + host = self.host || self, + next, + oldbubble, + stack = self.stack, + yuievt = host._yuievt, + hasPotentialSubscribers; + + if (stack) { + + // queue this event if the current item in the queue bubbles + if (self.queuable && self.type !== stack.next.type) { + self.log('queue ' + self.type); + + if (!stack.queue) { + stack.queue = []; + } + stack.queue.push([self, args]); + + return true; + } + } + + hasPotentialSubscribers = self.hasSubs() || yuievt.hasTargets || self.broadcast; + + self.target = self.target || host; + self.currentTarget = host; + + self.details = args.concat(); + + if (hasPotentialSubscribers) { + + es = stack || { + + id: self.id, // id of the first event in the stack + next: self, + silent: self.silent, + stopped: 0, + prevented: 0, + bubbling: null, + type: self.type, + // defaultFnQueue: new Y.Queue(), + defaultTargetOnly: self.defaultTargetOnly + + }; + + subs = self.getSubs(); + ons = subs[0]; + afters = subs[1]; + + self.stopped = (self.type !== es.type) ? 0 : es.stopped; + self.prevented = (self.type !== es.type) ? 0 : es.prevented; + + if (self.stoppedFn) { + // PERF TODO: Can we replace with callback, like preventedFn. Look into history + events = new Y.EventTarget({ + fireOnce: true, + context: host + }); + self.events = events; + events.on('stopped', self.stoppedFn); + } + + // self.log("Firing " + self + ", " + "args: " + args); + self.log("Firing " + self.type); + + self._facade = null; // kill facade to eliminate stale properties + + ef = self._createFacade(args); + + if (ons) { + self._procSubs(ons, args, ef); + } + + // bubble if this is hosted in an event target and propagation has not been stopped + if (self.bubbles && host.bubble && !self.stopped) { + oldbubble = es.bubbling; + + es.bubbling = self.type; + + if (es.type !== self.type) { + es.stopped = 0; + es.prevented = 0; + } + + ret = host.bubble(self, args, null, es); + + self.stopped = Math.max(self.stopped, es.stopped); + self.prevented = Math.max(self.prevented, es.prevented); + + es.bubbling = oldbubble; + } + + prevented = self.prevented; + + if (prevented) { + preventedFn = self.preventedFn; + if (preventedFn) { + preventedFn.apply(host, args); + } + } else { + defaultFn = self.defaultFn; + + if (defaultFn && ((!self.defaultTargetOnly && !es.defaultTargetOnly) || host === ef.target)) { + defaultFn.apply(host, args); + } + } + + // broadcast listeners are fired as discreet events on the + // YUI instance and potentially the YUI global. + if (self.broadcast) { + self._broadcast(args); + } + + if (afters && !self.prevented && self.stopped < 2) { + + // Queue the after + afterQueue = es.afterQueue; + + if (es.id === self.id || self.type !== yuievt.bubbling) { + + self._procSubs(afters, args, ef); + + if (afterQueue) { + while ((next = afterQueue.last())) { + next(); + } + } + } else { + postponed = afters; + + if (es.execDefaultCnt) { + postponed = Y.merge(postponed); + + Y.each(postponed, function(s) { + s.postponed = true; + }); + } + + if (!afterQueue) { + es.afterQueue = new Y.Queue(); + } + + es.afterQueue.add(function() { + self._procSubs(postponed, args, ef); + }); + } + + } + + self.target = null; + + if (es.id === self.id) { + + queue = es.queue; + + if (queue) { + while (queue.length) { + q = queue.pop(); + ce = q[0]; + // set up stack to allow the next item to be processed + es.next = ce; + ce._fire(q[1]); + } + } + + self.stack = null; + } + + ret = !(self.stopped); + + if (self.type !== yuievt.bubbling) { + es.stopped = 0; + es.prevented = 0; + self.stopped = 0; + self.prevented = 0; + } + + } else { + defaultFn = self.defaultFn; + + if(defaultFn) { + ef = self._createFacade(args); + + if ((!self.defaultTargetOnly) || (host === ef.target)) { + defaultFn.apply(host, args); + } + } + } + + // Kill the cached facade to free up memory. + // Otherwise we have the facade from the last fire, sitting around forever. + self._facade = null; + + return ret; +}; + +/** + * @method _hasPotentialSubscribers + * @for CustomEvent + * @private + * @return {boolean} Whether the event has potential subscribers or not + */ +CEProto._hasPotentialSubscribers = function() { + return this.hasSubs() || this.host._yuievt.hasTargets || this.broadcast; +}; + +/** + * Internal utility method to create a new facade instance and + * insert it into the fire argument list, accounting for any payload + * merging which needs to happen. + * + * This used to be called `_getFacade`, but the name seemed inappropriate + * when it was used without a need for the return value. + * + * @method _createFacade + * @private + * @param fireArgs {Array} The arguments passed to "fire", which need to be + * shifted (and potentially merged) when the facade is added. + * @return {EventFacade} The event facade created. + */ + +// TODO: Remove (private) _getFacade alias, once synthetic.js is updated. +CEProto._createFacade = CEProto._getFacade = function(fireArgs) { + + var userArgs = this.details, + firstArg = userArgs && userArgs[0], + firstArgIsObj = (firstArg && (typeof firstArg === "object")), + ef = this._facade; + + if (!ef) { + ef = new Y.EventFacade(this, this.currentTarget); + } + + if (firstArgIsObj) { + // protect the event facade properties + mixFacadeProps(ef, firstArg); + + // Allow the event type to be faked http://yuilibrary.com/projects/yui3/ticket/2528376 + if (firstArg.type) { + ef.type = firstArg.type; + } + + if (fireArgs) { + fireArgs[0] = ef; + } + } else { + if (fireArgs) { + fireArgs.unshift(ef); + } + } + + // update the details field with the arguments + ef.details = this.details; + + // use the original target when the event bubbled to this target + ef.target = this.originalTarget || this.target; + + ef.currentTarget = this.currentTarget; + ef.stopped = 0; + ef.prevented = 0; + + this._facade = ef; + + return this._facade; +}; + +/** + * Utility method to manipulate the args array passed in, to add the event facade, + * if it's not already the first arg. + * + * @method _addFacadeToArgs + * @private + * @param {Array} The arguments to manipulate + */ +CEProto._addFacadeToArgs = function(args) { + var e = args[0]; + + // Trying not to use instanceof, just to avoid potential cross Y edge case issues. + if (!(e && e.halt && e.stopImmediatePropagation && e.stopPropagation && e._event)) { + this._createFacade(args); + } +}; + +/** + * Stop propagation to bubble targets + * @for CustomEvent + * @method stopPropagation + */ +CEProto.stopPropagation = function() { + this.stopped = 1; + if (this.stack) { + this.stack.stopped = 1; + } + if (this.events) { + this.events.fire('stopped', this); + } +}; + +/** + * Stops propagation to bubble targets, and prevents any remaining + * subscribers on the current target from executing. + * @method stopImmediatePropagation + */ +CEProto.stopImmediatePropagation = function() { + this.stopped = 2; + if (this.stack) { + this.stack.stopped = 2; + } + if (this.events) { + this.events.fire('stopped', this); + } +}; + +/** + * Prevents the execution of this event's defaultFn + * @method preventDefault + */ +CEProto.preventDefault = function() { + if (this.preventable) { + this.prevented = 1; + if (this.stack) { + this.stack.prevented = 1; + } + } +}; + +/** + * Stops the event propagation and prevents the default + * event behavior. + * @method halt + * @param immediate {boolean} if true additional listeners + * on the current target will not be executed + */ +CEProto.halt = function(immediate) { + if (immediate) { + this.stopImmediatePropagation(); + } else { + this.stopPropagation(); + } + this.preventDefault(); +}; + +/** + * Registers another EventTarget as a bubble target. Bubble order + * is determined by the order registered. Multiple targets can + * be specified. + * + * Events can only bubble if emitFacade is true. + * + * Included in the event-custom-complex submodule. + * + * @method addTarget + * @param o {EventTarget} the target to add + * @for EventTarget + */ +ETProto.addTarget = function(o) { + var etState = this._yuievt; + + if (!etState.targets) { + etState.targets = {}; + } + + etState.targets[Y.stamp(o)] = o; + etState.hasTargets = true; +}; + +/** + * Returns an array of bubble targets for this object. + * @method getTargets + * @return EventTarget[] + */ +ETProto.getTargets = function() { + var targets = this._yuievt.targets; + return targets ? YObject.values(targets) : []; +}; + +/** + * Removes a bubble target + * @method removeTarget + * @param o {EventTarget} the target to remove + * @for EventTarget + */ +ETProto.removeTarget = function(o) { + var targets = this._yuievt.targets; + + if (targets) { + delete targets[Y.stamp(o, true)]; + + if (YObject.size(targets) === 0) { + this._yuievt.hasTargets = false; + } + } +}; + +/** + * Propagate an event. Requires the event-custom-complex module. + * @method bubble + * @param evt {CustomEvent} the custom event to propagate + * @return {boolean} the aggregated return value from Event.Custom.fire + * @for EventTarget + */ +ETProto.bubble = function(evt, args, target, es) { + + var targs = this._yuievt.targets, + ret = true, + t, + ce, + i, + bc, + ce2, + type = evt && evt.type, + originalTarget = target || (evt && evt.target) || this, + oldbubble; + + if (!evt || ((!evt.stopped) && targs)) { + + for (i in targs) { + if (targs.hasOwnProperty(i)) { + + t = targs[i]; + + ce = t._yuievt.events[type]; + + if (t._hasSiblings) { + ce2 = t.getSibling(type, ce); + } + + if (ce2 && !ce) { + ce = t.publish(type); + } + + oldbubble = t._yuievt.bubbling; + t._yuievt.bubbling = type; + + // if this event was not published on the bubble target, + // continue propagating the event. + if (!ce) { + if (t._yuievt.hasTargets) { + t.bubble(evt, args, originalTarget, es); + } + } else { + + if (ce2) { + ce.sibling = ce2; + } + + // set the original target to that the target payload on the facade is correct. + ce.target = originalTarget; + ce.originalTarget = originalTarget; + ce.currentTarget = t; + bc = ce.broadcast; + ce.broadcast = false; + + // default publish may not have emitFacade true -- that + // shouldn't be what the implementer meant to do + ce.emitFacade = true; + + ce.stack = es; + + // TODO: See what's getting in the way of changing this to use + // the more performant ce._fire(args || evt.details || []). + + // Something in Widget Parent/Child tests is not happy if we + // change it - maybe evt.details related? + ret = ret && ce.fire.apply(ce, args || evt.details || []); + + ce.broadcast = bc; + ce.originalTarget = null; + + // stopPropagation() was called + if (ce.stopped) { + break; + } + } + + t._yuievt.bubbling = oldbubble; + } + } + } + + return ret; +}; + +/** + * @method _hasPotentialSubscribers + * @for EventTarget + * @private + * @param {String} fullType The fully prefixed type name + * @return {boolean} Whether the event has potential subscribers or not + */ +ETProto._hasPotentialSubscribers = function(fullType) { + + var etState = this._yuievt, + e = etState.events[fullType]; + + if (e) { + return e.hasSubs() || etState.hasTargets || e.broadcast; + } else { + return false; + } +}; + +FACADE = new Y.EventFacade(); +FACADE_KEYS = {}; + +// Flatten whitelist +for (key in FACADE) { + FACADE_KEYS[key] = true; +} + + +}, '3.12.0', {"requires": ["event-custom-base"]}); diff --git a/lib/yuilib/3.12.0/event-custom-complex/event-custom-complex-min.js b/lib/yuilib/3.12.0/event-custom-complex/event-custom-complex-min.js new file mode 100755 index 00000000000..8e5d6ad166c --- /dev/null +++ b/lib/yuilib/3.12.0/event-custom-complex/event-custom-complex-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-custom-complex",function(e,t){var n,r,i=e.Object,s,o={},u=e.CustomEvent.prototype,a=e.EventTarget.prototype,f=function(e,t){var n;for(n in t)r.hasOwnProperty(n)||(e[n]=t[n])};e.EventFacade=function(e,t){e||(e=o),this._event=e,this.details=e.details,this.type=e.type,this._type=e.type,this.target=e.target,this.currentTarget=t,this.relatedTarget=e.relatedTarget},e.mix(e.EventFacade.prototype,{stopPropagation:function(){this._event.stopPropagation(),this.stopped=1},stopImmediatePropagation:function(){this._event.stopImmediatePropagation(),this.stopped=2},preventDefault:function(){this._event.preventDefault(),this.prevented=1},halt:function(e){this._event.halt(e),this.prevented=1,this.stopped=e?2:1}}),u.fireComplex=function(t){var n,r,i,s,o,u=!0,a,f,l,c,h,p,d,v,m,g=this,y=g.host||g,b,w,E=g.stack,S=y._yuievt,x;if(E&&g.queuable&&g.type!==E.next.type)return E.queue||(E.queue=[]),E.queue.push([g,t]),!0;x=g.hasSubs()||S.hasTargets||g.broadcast,g.target=g.target||y,g.currentTarget=y,g.details=t.concat();if(x){n=E||{id:g.id,next:g,silent:g.silent,stopped:0,prevented:0,bubbling:null,type:g.type,defaultTargetOnly:g.defaultTargetOnly},f=g.getSubs(),l=f[0],c=f[1],g.stopped=g.type!==n.type?0:n.stopped,g.prevented=g.type!==n.type?0:n.prevented,g.stoppedFn&&(a=new e.EventTarget({fireOnce:!0,context:y}),g.events=a,a.on("stopped",g.stoppedFn)),g._facade=null,r=g._createFacade(t),l&&g._procSubs(l,t,r),g.bubbles&&y.bubble&&!g.stopped&&(w=n.bubbling,n.bubbling=g.type,n.type!==g.type&&(n.stopped=0,n.prevented=0),u=y.bubble(g,t,null,n),g.stopped=Math.max(g.stopped,n.stopped),g.prevented=Math.max(g.prevented,n.prevented),n.bubbling=w),d=g.prevented,d?(v=g.preventedFn,v&&v.apply(y,t)):(m=g.defaultFn,m&&(!g.defaultTargetOnly&&!n.defaultTargetOnly||y===r.target)&&m.apply(y,t)),g.broadcast&&g._broadcast(t);if(c&&!g.prevented&&g.stopped<2){h=n.afterQueue;if(n.id===g.id||g.type!==S.bubbling){g._procSubs(c,t,r);if(h)while(b=h.last())b()}else p=c,n.execDefaultCnt&&(p=e.merge(p),e.each(p,function(e){e.postponed=!0})),h||(n.afterQueue=new e.Queue),n.afterQueue.add(function(){g._procSubs(p,t,r)})}g.target=null;if(n.id===g.id){s=n.queue;if(s)while(s.length)i=s.pop(),o=i[0],n.next=o,o._fire(i[1]);g.stack=null}u=!g.stopped,g.type!==S.bubbling&&(n.stopped=0,n.prevented=0,g.stopped=0,g.prevented=0)}else m=g.defaultFn,m&&(r=g._createFacade(t),(!g.defaultTargetOnly||y===r.target)&&m.apply(y,t));return g._facade=null,u},u._hasPotentialSubscribers=function(){return this.hasSubs()||this.host._yuievt.hasTargets||this.broadcast},u._createFacade=u._getFacade=function(t){var n=this.details,r=n&&n[0],i=r&&typeof r=="object",s=this._facade;return s||(s=new e.EventFacade(this,this.currentTarget)),i?(f(s,r),r.type&&(s.type=r.type),t&&(t[0]=s)):t&&t.unshift(s),s.details=this.details,s.target=this.originalTarget||this.target,s.currentTarget=this.currentTarget,s.stopped=0,s.prevented=0,this._facade=s,this._facade},u._addFacadeToArgs=function(e){var t=e[0];t&&t.halt&&t.stopImmediatePropagation&&t.stopPropagation&&t._event||this._createFacade(e)},u.stopPropagation=function(){this.stopped=1,this.stack&&(this.stack.stopped=1),this.events&&this.events.fire("stopped",this)},u.stopImmediatePropagation=function(){this.stopped=2,this.stack&&(this.stack.stopped=2),this.events&&this.events.fire("stopped",this)},u.preventDefault=function(){this.preventable&&(this.prevented=1,this.stack&&(this.stack.prevented=1))},u.halt=function(e){e?this.stopImmediatePropagation():this.stopPropagation(),this.preventDefault()},a.addTarget=function(t){var n=this._yuievt;n.targets||(n.targets={}),n.targets[e.stamp(t)]=t,n.hasTargets=!0},a.getTargets=function(){var e=this._yuievt.targets;return e?i.values(e):[]},a.removeTarget=function(t){var n=this._yuievt.targets;n&&(delete n[e.stamp(t,!0)],i.size(n)===0&&(this._yuievt.hasTargets=!1))},a.bubble=function(e,t,n,r){var i=this._yuievt.targets,s=!0,o,u,a,f,l,c=e&&e.type,h=n||e&&e.target||this,p;if(!e||!e.stopped&&i)for(a in i)if(i.hasOwnProperty(a)){o=i[a],u=o._yuievt.events[c],o._hasSiblings&&(l=o.getSibling(c,u)),l&&!u&&(u=o.publish(c)),p=o._yuievt.bubbling,o._yuievt.bubbling=c;if(!u)o._yuievt.hasTargets&&o.bubble(e,t,h,r);else{l&&(u.sibling=l),u.target=h,u.originalTarget=h,u.currentTarget=o,f=u.broadcast,u.broadcast=!1,u.emitFacade=!0,u.stack=r,s=s&&u.fire.apply(u,t||e.details||[]),u.broadcast=f,u.originalTarget=null;if(u.stopped)break}o._yuievt.bubbling=p}return s},a._hasPotentialSubscribers=function(e){var t=this._yuievt,n=t.events[e];return n?n.hasSubs()||t.hasTargets||n.broadcast:!1},n=new e.EventFacade,r={};for(s in n)r[s]=!0},"3.12.0",{requires:["event-custom-base"]}); diff --git a/lib/yuilib/3.12.0/event-custom-complex/event-custom-complex.js b/lib/yuilib/3.12.0/event-custom-complex/event-custom-complex.js new file mode 100755 index 00000000000..783c3b1db6e --- /dev/null +++ b/lib/yuilib/3.12.0/event-custom-complex/event-custom-complex.js @@ -0,0 +1,671 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('event-custom-complex', function (Y, NAME) { + + +/** + * Adds event facades, preventable default behavior, and bubbling. + * events. + * @module event-custom + * @submodule event-custom-complex + */ + +var FACADE, + FACADE_KEYS, + YObject = Y.Object, + key, + EMPTY = {}, + CEProto = Y.CustomEvent.prototype, + ETProto = Y.EventTarget.prototype, + + mixFacadeProps = function(facade, payload) { + var p; + + for (p in payload) { + if (!(FACADE_KEYS.hasOwnProperty(p))) { + facade[p] = payload[p]; + } + } + }; + +/** + * Wraps and protects a custom event for use when emitFacade is set to true. + * Requires the event-custom-complex module + * @class EventFacade + * @param e {Event} the custom event + * @param currentTarget {HTMLElement} the element the listener was attached to + */ + +Y.EventFacade = function(e, currentTarget) { + + if (!e) { + e = EMPTY; + } + + this._event = e; + + /** + * The arguments passed to fire + * @property details + * @type Array + */ + this.details = e.details; + + /** + * The event type, this can be overridden by the fire() payload + * @property type + * @type string + */ + this.type = e.type; + + /** + * The real event type + * @property _type + * @type string + * @private + */ + this._type = e.type; + + ////////////////////////////////////////////////////// + + /** + * Node reference for the targeted eventtarget + * @property target + * @type Node + */ + this.target = e.target; + + /** + * Node reference for the element that the listener was attached to. + * @property currentTarget + * @type Node + */ + this.currentTarget = currentTarget; + + /** + * Node reference to the relatedTarget + * @property relatedTarget + * @type Node + */ + this.relatedTarget = e.relatedTarget; + +}; + +Y.mix(Y.EventFacade.prototype, { + + /** + * Stops the propagation to the next bubble target + * @method stopPropagation + */ + stopPropagation: function() { + this._event.stopPropagation(); + this.stopped = 1; + }, + + /** + * Stops the propagation to the next bubble target and + * prevents any additional listeners from being exectued + * on the current target. + * @method stopImmediatePropagation + */ + stopImmediatePropagation: function() { + this._event.stopImmediatePropagation(); + this.stopped = 2; + }, + + /** + * Prevents the event's default behavior + * @method preventDefault + */ + preventDefault: function() { + this._event.preventDefault(); + this.prevented = 1; + }, + + /** + * Stops the event propagation and prevents the default + * event behavior. + * @method halt + * @param immediate {boolean} if true additional listeners + * on the current target will not be executed + */ + halt: function(immediate) { + this._event.halt(immediate); + this.prevented = 1; + this.stopped = (immediate) ? 2 : 1; + } + +}); + +CEProto.fireComplex = function(args) { + + var es, + ef, + q, + queue, + ce, + ret = true, + events, + subs, + ons, + afters, + afterQueue, + postponed, + prevented, + preventedFn, + defaultFn, + self = this, + host = self.host || self, + next, + oldbubble, + stack = self.stack, + yuievt = host._yuievt, + hasPotentialSubscribers; + + if (stack) { + + // queue this event if the current item in the queue bubbles + if (self.queuable && self.type !== stack.next.type) { + + if (!stack.queue) { + stack.queue = []; + } + stack.queue.push([self, args]); + + return true; + } + } + + hasPotentialSubscribers = self.hasSubs() || yuievt.hasTargets || self.broadcast; + + self.target = self.target || host; + self.currentTarget = host; + + self.details = args.concat(); + + if (hasPotentialSubscribers) { + + es = stack || { + + id: self.id, // id of the first event in the stack + next: self, + silent: self.silent, + stopped: 0, + prevented: 0, + bubbling: null, + type: self.type, + // defaultFnQueue: new Y.Queue(), + defaultTargetOnly: self.defaultTargetOnly + + }; + + subs = self.getSubs(); + ons = subs[0]; + afters = subs[1]; + + self.stopped = (self.type !== es.type) ? 0 : es.stopped; + self.prevented = (self.type !== es.type) ? 0 : es.prevented; + + if (self.stoppedFn) { + // PERF TODO: Can we replace with callback, like preventedFn. Look into history + events = new Y.EventTarget({ + fireOnce: true, + context: host + }); + self.events = events; + events.on('stopped', self.stoppedFn); + } + + + self._facade = null; // kill facade to eliminate stale properties + + ef = self._createFacade(args); + + if (ons) { + self._procSubs(ons, args, ef); + } + + // bubble if this is hosted in an event target and propagation has not been stopped + if (self.bubbles && host.bubble && !self.stopped) { + oldbubble = es.bubbling; + + es.bubbling = self.type; + + if (es.type !== self.type) { + es.stopped = 0; + es.prevented = 0; + } + + ret = host.bubble(self, args, null, es); + + self.stopped = Math.max(self.stopped, es.stopped); + self.prevented = Math.max(self.prevented, es.prevented); + + es.bubbling = oldbubble; + } + + prevented = self.prevented; + + if (prevented) { + preventedFn = self.preventedFn; + if (preventedFn) { + preventedFn.apply(host, args); + } + } else { + defaultFn = self.defaultFn; + + if (defaultFn && ((!self.defaultTargetOnly && !es.defaultTargetOnly) || host === ef.target)) { + defaultFn.apply(host, args); + } + } + + // broadcast listeners are fired as discreet events on the + // YUI instance and potentially the YUI global. + if (self.broadcast) { + self._broadcast(args); + } + + if (afters && !self.prevented && self.stopped < 2) { + + // Queue the after + afterQueue = es.afterQueue; + + if (es.id === self.id || self.type !== yuievt.bubbling) { + + self._procSubs(afters, args, ef); + + if (afterQueue) { + while ((next = afterQueue.last())) { + next(); + } + } + } else { + postponed = afters; + + if (es.execDefaultCnt) { + postponed = Y.merge(postponed); + + Y.each(postponed, function(s) { + s.postponed = true; + }); + } + + if (!afterQueue) { + es.afterQueue = new Y.Queue(); + } + + es.afterQueue.add(function() { + self._procSubs(postponed, args, ef); + }); + } + + } + + self.target = null; + + if (es.id === self.id) { + + queue = es.queue; + + if (queue) { + while (queue.length) { + q = queue.pop(); + ce = q[0]; + // set up stack to allow the next item to be processed + es.next = ce; + ce._fire(q[1]); + } + } + + self.stack = null; + } + + ret = !(self.stopped); + + if (self.type !== yuievt.bubbling) { + es.stopped = 0; + es.prevented = 0; + self.stopped = 0; + self.prevented = 0; + } + + } else { + defaultFn = self.defaultFn; + + if(defaultFn) { + ef = self._createFacade(args); + + if ((!self.defaultTargetOnly) || (host === ef.target)) { + defaultFn.apply(host, args); + } + } + } + + // Kill the cached facade to free up memory. + // Otherwise we have the facade from the last fire, sitting around forever. + self._facade = null; + + return ret; +}; + +/** + * @method _hasPotentialSubscribers + * @for CustomEvent + * @private + * @return {boolean} Whether the event has potential subscribers or not + */ +CEProto._hasPotentialSubscribers = function() { + return this.hasSubs() || this.host._yuievt.hasTargets || this.broadcast; +}; + +/** + * Internal utility method to create a new facade instance and + * insert it into the fire argument list, accounting for any payload + * merging which needs to happen. + * + * This used to be called `_getFacade`, but the name seemed inappropriate + * when it was used without a need for the return value. + * + * @method _createFacade + * @private + * @param fireArgs {Array} The arguments passed to "fire", which need to be + * shifted (and potentially merged) when the facade is added. + * @return {EventFacade} The event facade created. + */ + +// TODO: Remove (private) _getFacade alias, once synthetic.js is updated. +CEProto._createFacade = CEProto._getFacade = function(fireArgs) { + + var userArgs = this.details, + firstArg = userArgs && userArgs[0], + firstArgIsObj = (firstArg && (typeof firstArg === "object")), + ef = this._facade; + + if (!ef) { + ef = new Y.EventFacade(this, this.currentTarget); + } + + if (firstArgIsObj) { + // protect the event facade properties + mixFacadeProps(ef, firstArg); + + // Allow the event type to be faked http://yuilibrary.com/projects/yui3/ticket/2528376 + if (firstArg.type) { + ef.type = firstArg.type; + } + + if (fireArgs) { + fireArgs[0] = ef; + } + } else { + if (fireArgs) { + fireArgs.unshift(ef); + } + } + + // update the details field with the arguments + ef.details = this.details; + + // use the original target when the event bubbled to this target + ef.target = this.originalTarget || this.target; + + ef.currentTarget = this.currentTarget; + ef.stopped = 0; + ef.prevented = 0; + + this._facade = ef; + + return this._facade; +}; + +/** + * Utility method to manipulate the args array passed in, to add the event facade, + * if it's not already the first arg. + * + * @method _addFacadeToArgs + * @private + * @param {Array} The arguments to manipulate + */ +CEProto._addFacadeToArgs = function(args) { + var e = args[0]; + + // Trying not to use instanceof, just to avoid potential cross Y edge case issues. + if (!(e && e.halt && e.stopImmediatePropagation && e.stopPropagation && e._event)) { + this._createFacade(args); + } +}; + +/** + * Stop propagation to bubble targets + * @for CustomEvent + * @method stopPropagation + */ +CEProto.stopPropagation = function() { + this.stopped = 1; + if (this.stack) { + this.stack.stopped = 1; + } + if (this.events) { + this.events.fire('stopped', this); + } +}; + +/** + * Stops propagation to bubble targets, and prevents any remaining + * subscribers on the current target from executing. + * @method stopImmediatePropagation + */ +CEProto.stopImmediatePropagation = function() { + this.stopped = 2; + if (this.stack) { + this.stack.stopped = 2; + } + if (this.events) { + this.events.fire('stopped', this); + } +}; + +/** + * Prevents the execution of this event's defaultFn + * @method preventDefault + */ +CEProto.preventDefault = function() { + if (this.preventable) { + this.prevented = 1; + if (this.stack) { + this.stack.prevented = 1; + } + } +}; + +/** + * Stops the event propagation and prevents the default + * event behavior. + * @method halt + * @param immediate {boolean} if true additional listeners + * on the current target will not be executed + */ +CEProto.halt = function(immediate) { + if (immediate) { + this.stopImmediatePropagation(); + } else { + this.stopPropagation(); + } + this.preventDefault(); +}; + +/** + * Registers another EventTarget as a bubble target. Bubble order + * is determined by the order registered. Multiple targets can + * be specified. + * + * Events can only bubble if emitFacade is true. + * + * Included in the event-custom-complex submodule. + * + * @method addTarget + * @param o {EventTarget} the target to add + * @for EventTarget + */ +ETProto.addTarget = function(o) { + var etState = this._yuievt; + + if (!etState.targets) { + etState.targets = {}; + } + + etState.targets[Y.stamp(o)] = o; + etState.hasTargets = true; +}; + +/** + * Returns an array of bubble targets for this object. + * @method getTargets + * @return EventTarget[] + */ +ETProto.getTargets = function() { + var targets = this._yuievt.targets; + return targets ? YObject.values(targets) : []; +}; + +/** + * Removes a bubble target + * @method removeTarget + * @param o {EventTarget} the target to remove + * @for EventTarget + */ +ETProto.removeTarget = function(o) { + var targets = this._yuievt.targets; + + if (targets) { + delete targets[Y.stamp(o, true)]; + + if (YObject.size(targets) === 0) { + this._yuievt.hasTargets = false; + } + } +}; + +/** + * Propagate an event. Requires the event-custom-complex module. + * @method bubble + * @param evt {CustomEvent} the custom event to propagate + * @return {boolean} the aggregated return value from Event.Custom.fire + * @for EventTarget + */ +ETProto.bubble = function(evt, args, target, es) { + + var targs = this._yuievt.targets, + ret = true, + t, + ce, + i, + bc, + ce2, + type = evt && evt.type, + originalTarget = target || (evt && evt.target) || this, + oldbubble; + + if (!evt || ((!evt.stopped) && targs)) { + + for (i in targs) { + if (targs.hasOwnProperty(i)) { + + t = targs[i]; + + ce = t._yuievt.events[type]; + + if (t._hasSiblings) { + ce2 = t.getSibling(type, ce); + } + + if (ce2 && !ce) { + ce = t.publish(type); + } + + oldbubble = t._yuievt.bubbling; + t._yuievt.bubbling = type; + + // if this event was not published on the bubble target, + // continue propagating the event. + if (!ce) { + if (t._yuievt.hasTargets) { + t.bubble(evt, args, originalTarget, es); + } + } else { + + if (ce2) { + ce.sibling = ce2; + } + + // set the original target to that the target payload on the facade is correct. + ce.target = originalTarget; + ce.originalTarget = originalTarget; + ce.currentTarget = t; + bc = ce.broadcast; + ce.broadcast = false; + + // default publish may not have emitFacade true -- that + // shouldn't be what the implementer meant to do + ce.emitFacade = true; + + ce.stack = es; + + // TODO: See what's getting in the way of changing this to use + // the more performant ce._fire(args || evt.details || []). + + // Something in Widget Parent/Child tests is not happy if we + // change it - maybe evt.details related? + ret = ret && ce.fire.apply(ce, args || evt.details || []); + + ce.broadcast = bc; + ce.originalTarget = null; + + // stopPropagation() was called + if (ce.stopped) { + break; + } + } + + t._yuievt.bubbling = oldbubble; + } + } + } + + return ret; +}; + +/** + * @method _hasPotentialSubscribers + * @for EventTarget + * @private + * @param {String} fullType The fully prefixed type name + * @return {boolean} Whether the event has potential subscribers or not + */ +ETProto._hasPotentialSubscribers = function(fullType) { + + var etState = this._yuievt, + e = etState.events[fullType]; + + if (e) { + return e.hasSubs() || etState.hasTargets || e.broadcast; + } else { + return false; + } +}; + +FACADE = new Y.EventFacade(); +FACADE_KEYS = {}; + +// Flatten whitelist +for (key in FACADE) { + FACADE_KEYS[key] = true; +} + + +}, '3.12.0', {"requires": ["event-custom-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-delegate/event-delegate-debug.js b/lib/yuilib/3.12.0/event-delegate/event-delegate-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/event-delegate/event-delegate-debug.js rename to lib/yuilib/3.12.0/event-delegate/event-delegate-debug.js index edd9485b612..08215a75c8d --- a/lib/yuilib/3.9.1/build/event-delegate/event-delegate-debug.js +++ b/lib/yuilib/3.12.0/event-delegate/event-delegate-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-delegate', function (Y, NAME) { /** @@ -346,4 +352,4 @@ delegate._applyFilter = function (filter, args, ce) { Y.delegate = Y.Event.delegate = delegate; -}, '3.9.1', {"requires": ["node-base"]}); +}, '3.12.0', {"requires": ["node-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-delegate/event-delegate-min.js b/lib/yuilib/3.12.0/event-delegate/event-delegate-min.js old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/event-delegate/event-delegate-min.js rename to lib/yuilib/3.12.0/event-delegate/event-delegate-min.js index 06b0d2a23c2..c0d112a2dcb --- a/lib/yuilib/3.9.1/build/event-delegate/event-delegate-min.js +++ b/lib/yuilib/3.12.0/event-delegate/event-delegate-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("event-delegate",function(e,t){function f(t,r,u,l){var c=n(arguments,0,!0),h=i(u)?u:null,p,d,v,m,g,y,b,w,E;if(s(t)){w=[];if(o(t))for(y=0,b=t.length;y1&&(g=p.shift(),c[0]=t=p.shift()),d=e.Node.DOM_EVENTS[t],s(d)&&d.delegate&&(E=d.delegate.apply(d,arguments));if(!E){if(!t||!r||!u||!l)return;v=h?e.Selector.query(h,null,!0):u,!v&&i(u)&&(E=e.on("available",function(){e.mix(E,e.delegate.apply(e,c),!0)},u)),!E&&v&&(c.splice(2,2,v),E=e.Event._attach(c,{facade:!1}),E.sub.filter=l,E.sub._notify=f.notifySub)}return E&&g&&(m=a[g]||(a[g]={}),m=m[t]||(m[t]=[]),m.push(E)),E}var n=e.Array,r=e.Lang,i=r.isString,s=r.isObject,o=r.isArray,u=e.Selector.test,a=e.Env.evt.handles;f.notifySub=function(t,r,i){r=r.slice(),this.args&&r.push.apply(r,this.args);var s=f._applyFilter(this.filter,r,i),o,u,a,l;if(s){s=n(s),o=r[0]=new e.DOMEventFacade(r[0],i.el,i),o.container=e.one(i.el);for(u=0,a=s.length;u1&&(g=p.shift(),c[0]=t=p.shift()),d=e.Node.DOM_EVENTS[t],s(d)&&d.delegate&&(E=d.delegate.apply(d,arguments));if(!E){if(!t||!r||!u||!l)return;v=h?e.Selector.query(h,null,!0):u,!v&&i(u)&&(E=e.on("available",function(){e.mix(E,e.delegate.apply(e,c),!0)},u)),!E&&v&&(c.splice(2,2,v),E=e.Event._attach(c,{facade:!1}),E.sub.filter=l,E.sub._notify=f.notifySub)}return E&&g&&(m=a[g]||(a[g]={}),m=m[t]||(m[t]=[]),m.push(E)),E}var n=e.Array,r=e.Lang,i=r.isString,s=r.isObject,o=r.isArray,u=e.Selector.test,a=e.Env.evt.handles;f.notifySub=function(t,r,i){r=r.slice(),this.args&&r.push.apply(r,this.args);var s=f._applyFilter(this.filter,r,i),o,u,a,l;if(s){s=n(s),o=r[0]=new e.DOMEventFacade(r[0],i.el,i),o.container=e.one(i.el);for(u=0,a=s.length;u3?e.merge(t.splice(3,1)[0]):{};return a in n||(n[a]=this.MIN_VELOCITY),f in n||(n[f]=this.MIN_DISTANCE),l in n||(n[l]=this.PREVENT_DEFAULT),n},_onStart:function(t,n,i,a){var f=!0,l,h,m,g=i._extra.preventDefault,y=t;t.touches&&(f=t.touches.length===1,t=t.touches[0]),f&&(g&&(!g.call||g(t))&&y.preventDefault(),t.flick={time:(new Date).getTime()},i[c]=t,l=i[p],m=n.get(v)===9?n:n.get(u),l||(l=m.on(r[s],e.bind(this._onEnd,this),null,n,i,a),i[p]=l),i[d]=m.once(r[o],e.bind(this._onMove,this),null,n,i,a))},_onMove:function(e,t,n,r){var i=n[c];i&&i.flick&&(i.flick.time=(new Date).getTime())},_onEnd:function(e,t,n,r){var i=(new Date).getTime(),s=n[c],o=!!s,u=e,h,p,v,m,g,y,b,w,E=n[d];E&&(E.detach(),delete n[d]),o&&(e.changedTouches&&(e.changedTouches.length===1&&e.touches.length===0?u=e.changedTouches[0]:o=!1),o&&(m=n._extra,v=m[l],v&&(!v.call||v(e))&&e.preventDefault(),h=s.flick.time,i=(new Date).getTime(),p=i-h,g=[u.pageX-s.pageX,u.pageY-s.pageY],m.axis?w=m.axis:w=Math.abs(g[0])>=Math.abs(g[1])?"x":"y",y=g[w==="x"?0:1],b=p!==0?y/p:0,isFinite(b)&&Math.abs(y)>=m[f]&&Math.abs(b)>=m[a]&&(e.type="flick",e.flick={time:p,distance:y,velocity:b,axis:w,start:s},r.fire(e)),n[c]=null))},MIN_VELOCITY:0,MIN_DISTANCE:0,PREVENT_DEFAULT:!1})},"3.9.1",{requires:["node-base","event-touch","event-synthetic"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-flick",function(e,t){var n=e.Event._GESTURE_MAP,r={start:n.start,end:n.end,move:n.move},i="start",s="end",o="move",u="ownerDocument",a="minVelocity",f="minDistance",l="preventDefault",c="_fs",h="_fsh",p="_feh",d="_fmh",v="nodeType";e.Event.define("flick",{on:function(e,t,n){var s=e.on(r[i],this._onStart,this,e,t,n);t[h]=s},detach:function(e,t,n){var r=t[h],i=t[p];r&&(r.detach(),t[h]=null),i&&(i.detach(),t[p]=null)},processArgs:function(t){var n=t.length>3?e.merge(t.splice(3,1)[0]):{};return a in n||(n[a]=this.MIN_VELOCITY),f in n||(n[f]=this.MIN_DISTANCE),l in n||(n[l]=this.PREVENT_DEFAULT),n},_onStart:function(t,n,i,a){var f=!0,l,h,m,g=i._extra.preventDefault,y=t;t.touches&&(f=t.touches.length===1,t=t.touches[0]),f&&(g&&(!g.call||g(t))&&y.preventDefault(),t.flick={time:(new Date).getTime()},i[c]=t,l=i[p],m=n.get(v)===9?n:n.get(u),l||(l=m.on(r[s],e.bind(this._onEnd,this),null,n,i,a),i[p]=l),i[d]=m.once(r[o],e.bind(this._onMove,this),null,n,i,a))},_onMove:function(e,t,n,r){var i=n[c];i&&i.flick&&(i.flick.time=(new Date).getTime())},_onEnd:function(e,t,n,r){var i=(new Date).getTime(),s=n[c],o=!!s,u=e,h,p,v,m,g,y,b,w,E=n[d];E&&(E.detach(),delete n[d]),o&&(e.changedTouches&&(e.changedTouches.length===1&&e.touches.length===0?u=e.changedTouches[0]:o=!1),o&&(m=n._extra,v=m[l],v&&(!v.call||v(e))&&e.preventDefault(),h=s.flick.time,i=(new Date).getTime(),p=i-h,g=[u.pageX-s.pageX,u.pageY-s.pageY],m.axis?w=m.axis:w=Math.abs(g[0])>=Math.abs(g[1])?"x":"y",y=g[w==="x"?0:1],b=p!==0?y/p:0,isFinite(b)&&Math.abs(y)>=m[f]&&Math.abs(b)>=m[a]&&(e.type="flick",e.flick={time:p,distance:y,velocity:b,axis:w,start:s},r.fire(e)),n[c]=null))},MIN_VELOCITY:0,MIN_DISTANCE:0,PREVENT_DEFAULT:!1})},"3.12.0",{requires:["node-base","event-touch","event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-flick/event-flick.js b/lib/yuilib/3.12.0/event-flick/event-flick.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/event-flick/event-flick.js rename to lib/yuilib/3.12.0/event-flick/event-flick.js index b871f0c27c6..8e3be79a274 --- a/lib/yuilib/3.9.1/build/event-flick/event-flick.js +++ b/lib/yuilib/3.12.0/event-flick/event-flick.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-flick', function (Y, NAME) { /** @@ -269,4 +275,4 @@ Y.Event.define('flick', { }); -}, '3.9.1', {"requires": ["node-base", "event-touch", "event-synthetic"]}); +}, '3.12.0', {"requires": ["node-base", "event-touch", "event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-focus/event-focus-debug.js b/lib/yuilib/3.12.0/event-focus/event-focus-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/event-focus/event-focus-debug.js rename to lib/yuilib/3.12.0/event-focus/event-focus-debug.js index 645119db843..580db4706e6 --- a/lib/yuilib/3.9.1/build/event-focus/event-focus-debug.js +++ b/lib/yuilib/3.12.0/event-focus/event-focus-debug.js @@ -1,9 +1,15 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-focus', function (Y, NAME) { /** * Adds bubbling and delegation support to DOM events focus and blur. - * + * * @module event * @submodule event-focus */ @@ -69,7 +75,7 @@ function define(type, proxy, directEvent) { yuid = Y.stamp(currentTarget._node), defer = (useActivate || target !== currentTarget), directSub; - + notifier.currentTarget = (delegate) ? target : currentTarget; notifier.container = (delegate) ? currentTarget : null; @@ -196,7 +202,7 @@ function define(type, proxy, directEvent) { break; } } - + delete notifiers[yuid]; count--; } @@ -271,4 +277,4 @@ if (useActivate) { } -}, '3.9.1', {"requires": ["event-synthetic"]}); +}, '3.12.0', {"requires": ["event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-focus/event-focus-min.js b/lib/yuilib/3.12.0/event-focus/event-focus-min.js old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/event-focus/event-focus-min.js rename to lib/yuilib/3.12.0/event-focus/event-focus-min.js index 7c303126748..f6a218e7c74 --- a/lib/yuilib/3.9.1/build/event-focus/event-focus-min.js +++ b/lib/yuilib/3.12.0/event-focus/event-focus-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("event-focus",function(e,t){function u(t,r,u){var a="_"+t+"Notifiers";e.Event.define(t,{_useActivate:o,_attach:function(i,s,o){return e.DOM.isWindow(i)?n._attach([t,function(e){s.fire(e)},i]):n._attach([r,this._proxy,i,this,s,o],{capture:!0})},_proxy:function(t,r,i){var s=t.target,f=t.currentTarget,l=s.getData(a),c=e.stamp(f._node),h=o||s!==f,p;r.currentTarget=i?s:f,r.container=i?f:null,l?h=!0:(l={},s.setData(a,l),h&&(p=n._attach([u,this._notify,s._node]).sub,p.once=!0)),l[c]||(l[c]=[]),l[c].push(r),h||this._notify(t)},_notify:function(t,n){var r=t.currentTarget,i=r.getData(a),o=r.ancestors(),u=r.get("ownerDocument"),f=[],l=i?e.Object.keys(i).length:0,c,h,p,d,v,m,g,y,b,w;r.clearData(a),o.push(r),u&&o.unshift(u),o._nodes.reverse(),l&&(m=l,o.some(function(t){var n=e.stamp(t),r=i[n],s,o;if(r){l--;for(s=0,o=r.length;sAdd a key listener. The listener will only be notified if the * keystroke detected meets the supplied specification. The * specification is a string that is defined as:

    - * + * *
    *
    spec
    *
    [{type}:]{code}[,{code}]*
    @@ -155,7 +161,7 @@ eventDef.detachDelegate = eventDef.detach; *
  • Y.delegate("key", preventSubmit, "#forms", "enter", "input[type=text]");
  • *
  • Y.one("doc").on("key", viNav, "j,k,l,;");
  • * - * + * * @event key * @for YUI * @param type {string} 'key' @@ -169,4 +175,4 @@ eventDef.detachDelegate = eventDef.detach; Y.Event.define('key', eventDef, true); -}, '3.9.1', {"requires": ["event-synthetic"]}); +}, '3.12.0', {"requires": ["event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-key/event-key-min.js b/lib/yuilib/3.12.0/event-key/event-key-min.js old mode 100644 new mode 100755 similarity index 85% rename from lib/yuilib/3.9.1/build/event-key/event-key-min.js rename to lib/yuilib/3.12.0/event-key/event-key-min.js index e5429a98dc8..46392840688 --- a/lib/yuilib/3.9.1/build/event-key/event-key-min.js +++ b/lib/yuilib/3.12.0/event-key/event-key-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("event-key",function(e,t){var n="+alt",r="+ctrl",i="+meta",s="+shift",o=e.Lang.trim,u={KEY_MAP:{enter:13,esc:27,backspace:8,tab:9,pageup:33,pagedown:34},_typeRE:/^(up|down|press):/,_keysRE:/^(?:up|down|press):|\+(alt|ctrl|meta|shift)/g,processArgs:function(t){var n=t.splice(3,1)[0],r=e.Array.hash(n.match(/\+(?:alt|ctrl|meta|shift)\b/g)||[]),i={type:this._typeRE.test(n)?RegExp.$1:null,mods:r,keys:null},s=n.replace(this._keysRE,""),u,a,f,l;if(s){s=s.split(","),i.keys={};for(l=s.length-1;l>=0;--l){u=o(s[l]);if(!u)continue;+u==u?i.keys[u]=r:(f=u.toLowerCase(),this.KEY_MAP[f]?(i.keys[this.KEY_MAP[f]]=r,i.type||(i.type="down")):(u=u.charAt(0),a=u.toUpperCase(),r["+shift"]&&(u=a),i.keys[u.charCodeAt(0)]=u===a?e.merge(r,{"+shift":!0}):r))}}return i.type||(i.type="press"),i},on:function(e,t,o,u){var a=t._extra,f="key"+a.type,l=a.keys,c=u?"delegate":"on";t._detach=e[c](f,function(e){var t=l?l[e.which]:a.mods;t&&(!t[n]||t[n]&&e.altKey)&&(!t[r]||t[r]&&e.ctrlKey)&&(!t[i]||t[i]&&e.metaKey)&&(!t[s]||t[s]&&e.shiftKey)&&o.fire(e)},u)},detach:function(e,t,n){t._detach.detach()}};u.delegate=u.on,u.detachDelegate=u.detach,e.Event.define("key",u,!0)},"3.9.1",{requires:["event-synthetic"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-key",function(e,t){var n="+alt",r="+ctrl",i="+meta",s="+shift",o=e.Lang.trim,u={KEY_MAP:{enter:13,esc:27,backspace:8,tab:9,pageup:33,pagedown:34},_typeRE:/^(up|down|press):/,_keysRE:/^(?:up|down|press):|\+(alt|ctrl|meta|shift)/g,processArgs:function(t){var n=t.splice(3,1)[0],r=e.Array.hash(n.match(/\+(?:alt|ctrl|meta|shift)\b/g)||[]),i={type:this._typeRE.test(n)?RegExp.$1:null,mods:r,keys:null},s=n.replace(this._keysRE,""),u,a,f,l;if(s){s=s.split(","),i.keys={};for(l=s.length-1;l>=0;--l){u=o(s[l]);if(!u)continue;+u==u?i.keys[u]=r:(f=u.toLowerCase(),this.KEY_MAP[f]?(i.keys[this.KEY_MAP[f]]=r,i.type||(i.type="down")):(u=u.charAt(0),a=u.toUpperCase(),r["+shift"]&&(u=a),i.keys[u.charCodeAt(0)]=u===a?e.merge(r,{"+shift":!0}):r))}}return i.type||(i.type="press"),i},on:function(e,t,o,u){var a=t._extra,f="key"+a.type,l=a.keys,c=u?"delegate":"on";t._detach=e[c](f,function(e){var t=l?l[e.which]:a.mods;t&&(!t[n]||t[n]&&e.altKey)&&(!t[r]||t[r]&&e.ctrlKey)&&(!t[i]||t[i]&&e.metaKey)&&(!t[s]||t[s]&&e.shiftKey)&&o.fire(e)},u)},detach:function(e,t,n){t._detach.detach()}};u.delegate=u.on,u.detachDelegate=u.detach,e.Event.define("key",u,!0)},"3.12.0",{requires:["event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-key/event-key.js b/lib/yuilib/3.12.0/event-key/event-key.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/event-key/event-key.js rename to lib/yuilib/3.12.0/event-key/event-key.js index 7a888977d1c..bf372298768 --- a/lib/yuilib/3.9.1/build/event-key/event-key.js +++ b/lib/yuilib/3.12.0/event-key/event-key.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-key', function (Y, NAME) { /** @@ -135,7 +141,7 @@ eventDef.detachDelegate = eventDef.detach; *

    Add a key listener. The listener will only be notified if the * keystroke detected meets the supplied specification. The * specification is a string that is defined as:

    - * + * *
    *
    spec
    *
    [{type}:]{code}[,{code}]*
    @@ -155,7 +161,7 @@ eventDef.detachDelegate = eventDef.detach; *
  • Y.delegate("key", preventSubmit, "#forms", "enter", "input[type=text]");
  • *
  • Y.one("doc").on("key", viNav, "j,k,l,;");
  • * - * + * * @event key * @for YUI * @param type {string} 'key' @@ -169,4 +175,4 @@ eventDef.detachDelegate = eventDef.detach; Y.Event.define('key', eventDef, true); -}, '3.9.1', {"requires": ["event-synthetic"]}); +}, '3.12.0', {"requires": ["event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-mouseenter/event-mouseenter-debug.js b/lib/yuilib/3.12.0/event-mouseenter/event-mouseenter-debug.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/event-mouseenter/event-mouseenter-debug.js rename to lib/yuilib/3.12.0/event-mouseenter/event-mouseenter-debug.js index 1550ba03bcb..42f37856f72 --- a/lib/yuilib/3.9.1/build/event-mouseenter/event-mouseenter-debug.js +++ b/lib/yuilib/3.12.0/event-mouseenter/event-mouseenter-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-mouseenter', function (Y, NAME) { /** @@ -92,7 +98,7 @@ var domEventProxies = Y.Env.evt.dom_wrappers, if (currentTarget) { currentTarget = toArray(currentTarget); - + for (i = 0, len = currentTarget.length && (!e || !e.stopped); i < len; ++i) { ct = currentTarget[0]; if (!contains(ct, related)) { @@ -127,4 +133,4 @@ Y.Event.define("mouseleave", Y.merge(config, { }), true); -}, '3.9.1', {"requires": ["event-synthetic"]}); +}, '3.12.0', {"requires": ["event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-mouseenter/event-mouseenter-min.js b/lib/yuilib/3.12.0/event-mouseenter/event-mouseenter-min.js old mode 100644 new mode 100755 similarity index 86% rename from lib/yuilib/3.9.1/build/event-mouseenter/event-mouseenter-min.js rename to lib/yuilib/3.12.0/event-mouseenter/event-mouseenter-min.js index 8a91d6ba7f3..d41842978be --- a/lib/yuilib/3.9.1/build/event-mouseenter/event-mouseenter-min.js +++ b/lib/yuilib/3.12.0/event-mouseenter/event-mouseenter-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("event-mouseenter",function(e,t){var n=e.Env.evt.dom_wrappers,r=e.DOM.contains,i=e.Array,s=function(){},o={proxyType:"mouseover",relProperty:"fromElement",_notify:function(t,i,s){var o=this._node,u=t.relatedTarget||t[i];o!==u&&!r(o,u)&&s.fire(new e.DOMEventFacade(t,o,n["event:"+e.stamp(o)+t.type]))},on:function(t,n,r){var i=e.Node.getDOMNode(t),s=[this.proxyType,this._notify,i,null,this.relProperty,r];n.handle=e.Event._attach(s,{facade:!1})},detach:function(e,t){t.handle.detach()},delegate:function(t,n,r,i){var o=e.Node.getDOMNode(t),u=[this.proxyType,s,o,null,r];n.handle=e.Event._attach(u,{facade:!1}),n.handle.sub.filter=i,n.handle.sub.relProperty=this.relProperty,n.handle.sub._notify=this._filterNotify},_filterNotify:function(t,n,s){n=n.slice(),this.args&&n.push.apply(n,this.args);var o=e.delegate._applyFilter(this.filter,n,s),u=n[0].relatedTarget||n[0][this.relProperty],a,f,l,c,h;if(o){o=i(o);for(f=0,l=o.length&&(!a||!a.stopped);fi?e.merge(n.splice(i,1)[0]):{};return w in s||(s[w]=t.PREVENT_DEFAULT),s},O=function(e,t){return t._extra.root||e.get(N)===9?e:e.get(S)},M=function(t){var n=t.getDOMNode();return t.compareTo(e.config.doc)&&n.documentElement?n.documentElement:!1},_=function(e,t,n){e.pageX=t.pageX,e.pageY=t.pageY,e.screenX=t.screenX,e.screenY=t.screenY,e.clientX=t.clientX,e.clientY=t.clientY,e[T]=e[T]||t[T],e[x]=e[x]||t[x],e[E]=n&&n[E]||1},D=function(t){var n=M(t)||t.getDOMNode(),r=t.getData(k);C&&(r||(r=0,t.setData(L,n.style.msTouchAction)),n.style.msTouchAction=e.Event._DEFAULT_TOUCH_ACTION,r++,t.setData(k,r))},P=function(e){var t=M(e)||e.getDOMNode(),n=e.getData(k),r=e.getData(L);C&&(n--,e.setData(k,n),n===0&&t.style.msTouchAction!==r&&(t.style.msTouchAction=r))},H=function(e,t){t&&(!t.call||t(e))&&e.preventDefault()},B=e.Event.define;e.Event._DEFAULT_TOUCH_ACTION="none",B(f,{on:function(e,t,n){D(e),t[l]=e.on(r[i],this._onStart,this,e,t,n)},delegate:function(e,t,n,s){var o=this;t[p]=e.delegate(r[i],function(r){o._onStart(r,e,t,n,!0)},s)},detachDelegate:function(e,t,n,r){var i=t[p];i&&(i.detach(),t[p]=null),P(e)},detach:function(e,t,n){var r=t[l];r&&(r.detach(),t[l]=null),P(e)},processArgs:function(e,t){var n=A(this,e,t);return y in n||(n[y]=this.MIN_TIME),b in n||(n[b]=this.MIN_DISTANCE),n},_onStart:function(t,n,i,u,a){a&&(n=t[x]);var f=i._extra,l=!0,c=f[y],h=f[b],p=f.button,d=f[w],v=O(n,i),m;t.touches?t.touches.length===1?_(t,t.touches[0],f):l=!1:l=p===undefined||p===t.button,l&&(H(t,d),c===0||h===0?this._start(t,n,u,f):(m=[t.pageX,t.pageY],c>0&&(f._ht=e.later(c,this,this._start,[t,n,u,f]),f._hme=v.on(r[o],e.bind(function(){this._cancel(f)},this))),h>0&&(f._hm=v.on(r[s],e.bind(function(e){(Math.abs(e.pageX-m[0])>h||Math.abs(e.pageY-m[1])>h)&&this._start(t,n,u,f)},this)))))},_cancel:function(e){e._ht&&(e._ht.cancel(),e._ht=null),e._hme&&(e._hme.detach(),e._hme=null),e._hm&&(e._hm.detach(),e._hm=null)},_start:function(e,t,n,r){r&&this._cancel(r),e.type=f,t.setData(m,e),n.fire(e)},MIN_TIME:0,MIN_DISTANCE:0,PREVENT_DEFAULT:!1}),B(u,{on:function(e,t,n){D(e);var i=O(e,t,r[s]),o=i.on(r[s],this._onMove,this,e,t,n);t[c]=o},delegate:function(e,t,n,i){var o=this;t[d]=e.delegate(r[s],function(r){o._onMove(r,e,t,n,!0)},i)},detach:function(e,t,n){var r=t[c];r&&(r.detach(),t[c]=null),P(e)},detachDelegate:function(e,t,n,r){var i=t[d];i&&(i.detach(),t[d]=null),P(e)},processArgs:function(e,t){return A(this,e,t)},_onMove:function(e,t,n,r,i){i&&(t=e[x]);var s=n._extra.standAlone||t.getData(m),o=n._extra.preventDefault;s&&(e.touches&&(e.touches.length===1?_(e,e.touches[0]):s=!1),s&&(H(e,o),e.type=u,r.fire(e)))},PREVENT_DEFAULT:!1}),B(a,{on:function(e,t,n){D(e);var i=O(e,t),s=i.on(r[o],this._onEnd,this,e,t,n);t[h]=s},delegate:function(e,t,n,i){var s=this;t[v]=e.delegate(r[o],function(r){s._onEnd(r,e,t,n,!0)},i)},detachDelegate:function(e,t,n,r){var i=t[v];i&&(i.detach(),t[v]=null),P(e)},detach:function(e,t,n){var r=t[h];r&&(r.detach(),t[h]=null),P(e)},processArgs:function(e,t){return A(this,e,t)},_onEnd:function(e,t,n,r,i){i&&(t=e[x]);var s=n._extra.standAlone||t.getData(g)||t.getData(m),o=n._extra.preventDefault;s&&(e.changedTouches&&(e.changedTouches.length===1?_(e,e.changedTouches[0]):s=!1),s&&(H(e,o),e.type=a,r.fire(e),t.clearData(m),t.clearData(g)))},PREVENT_DEFAULT:!1})},"3.9.1",{requires:["node-base","event-touch","event-synthetic"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-move",function(e,t){var n=e.Event._GESTURE_MAP,r={start:n.start,end:n.end,move:n.move},i="start",s="move",o="end",u="gesture"+s,a=u+o,f=u+i,l="_msh",c="_mh",h="_meh",p="_dmsh",d="_dmh",v="_dmeh",m="_ms",g="_m",y="minTime",b="minDistance",w="preventDefault",E="button",S="ownerDocument",x="currentTarget",T="target",N="nodeType",C=e.config.win&&"msPointerEnabled"in e.config.win.navigator,k="msTouchActionCount",L="msInitTouchAction",A=function(t,n,r){var i=r?4:3,s=n.length>i?e.merge(n.splice(i,1)[0]):{};return w in s||(s[w]=t.PREVENT_DEFAULT),s},O=function(e,t){return t._extra.root||e.get(N)===9?e:e.get(S)},M=function(t){var n=t.getDOMNode();return t.compareTo(e.config.doc)&&n.documentElement?n.documentElement:!1},_=function(e,t,n){e.pageX=t.pageX,e.pageY=t.pageY,e.screenX=t.screenX,e.screenY=t.screenY,e.clientX=t.clientX,e.clientY=t.clientY,e[T]=e[T]||t[T],e[x]=e[x]||t[x],e[E]=n&&n[E]||1},D=function(t){var n=M(t)||t.getDOMNode(),r=t.getData(k);C&&(r||(r=0,t.setData(L,n.style.msTouchAction)),n.style.msTouchAction=e.Event._DEFAULT_TOUCH_ACTION,r++,t.setData(k,r))},P=function(e){var t=M(e)||e.getDOMNode(),n=e.getData(k),r=e.getData(L);C&&(n--,e.setData(k,n),n===0&&t.style.msTouchAction!==r&&(t.style.msTouchAction=r))},H=function(e,t){t&&(!t.call||t(e))&&e.preventDefault()},B=e.Event.define;e.Event._DEFAULT_TOUCH_ACTION="none",B(f,{on:function(e,t,n){D(e),t[l]=e.on(r[i],this._onStart,this,e,t,n)},delegate:function(e,t,n,s){var o=this;t[p]=e.delegate(r[i],function(r){o._onStart(r,e,t,n,!0)},s)},detachDelegate:function(e,t,n,r){var i=t[p];i&&(i.detach(),t[p]=null),P(e)},detach:function(e,t,n){var r=t[l];r&&(r.detach(),t[l]=null),P(e)},processArgs:function(e,t){var n=A(this,e,t);return y in n||(n[y]=this.MIN_TIME),b in n||(n[b]=this.MIN_DISTANCE),n},_onStart:function(t,n,i,u,a){a&&(n=t[x]);var f=i._extra,l=!0,c=f[y],h=f[b],p=f.button,d=f[w],v=O(n,i),m;t.touches?t.touches.length===1?_(t,t.touches[0],f):l=!1:l=p===undefined||p===t.button,l&&(H(t,d),c===0||h===0?this._start(t,n,u,f):(m=[t.pageX,t.pageY],c>0&&(f._ht=e.later(c,this,this._start,[t,n,u,f]),f._hme=v.on(r[o],e.bind(function(){this._cancel(f)},this))),h>0&&(f._hm=v.on(r[s],e.bind(function(e){(Math.abs(e.pageX-m[0])>h||Math.abs(e.pageY-m[1])>h)&&this._start(t,n,u,f)},this)))))},_cancel:function(e){e._ht&&(e._ht.cancel(),e._ht=null),e._hme&&(e._hme.detach(),e._hme=null),e._hm&&(e._hm.detach(),e._hm=null)},_start:function(e,t,n,r){r&&this._cancel(r),e.type=f,t.setData(m,e),n.fire(e)},MIN_TIME:0,MIN_DISTANCE:0,PREVENT_DEFAULT:!1}),B(u,{on:function(e,t,n){D(e);var i=O(e,t,r[s]),o=i.on(r[s],this._onMove,this,e,t,n);t[c]=o},delegate:function(e,t,n,i){var o=this;t[d]=e.delegate(r[s],function(r){o._onMove(r,e,t,n,!0)},i)},detach:function(e,t,n){var r=t[c];r&&(r.detach(),t[c]=null),P(e)},detachDelegate:function(e,t,n,r){var i=t[d];i&&(i.detach(),t[d]=null),P(e)},processArgs:function(e,t){return A(this,e,t)},_onMove:function(e,t,n,r,i){i&&(t=e[x]);var s=n._extra.standAlone||t.getData(m),o=n._extra.preventDefault;s&&(e.touches&&(e.touches.length===1?_(e,e.touches[0]):s=!1),s&&(H(e,o),e.type=u,r.fire(e)))},PREVENT_DEFAULT:!1}),B(a,{on:function(e,t,n){D(e);var i=O(e,t),s=i.on(r[o],this._onEnd,this,e,t,n);t[h]=s},delegate:function(e,t,n,i){var s=this;t[v]=e.delegate(r[o],function(r){s._onEnd(r,e,t,n,!0)},i)},detachDelegate:function(e,t,n,r){var i=t[v];i&&(i.detach(),t[v]=null),P(e)},detach:function(e,t,n){var r=t[h];r&&(r.detach(),t[h]=null),P(e)},processArgs:function(e,t){return A(this,e,t)},_onEnd:function(e,t,n,r,i){i&&(t=e[x]);var s=n._extra.standAlone||t.getData(g)||t.getData(m),o=n._extra.preventDefault;s&&(e.changedTouches&&(e.changedTouches.length===1?_(e,e.changedTouches[0]):s=!1),s&&(H(e,o),e.type=a,r.fire(e),t.clearData(m),t.clearData(g)))},PREVENT_DEFAULT:!1})},"3.12.0",{requires:["node-base","event-touch","event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-move/event-move.js b/lib/yuilib/3.12.0/event-move/event-move.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/event-move/event-move.js rename to lib/yuilib/3.12.0/event-move/event-move.js index baa8795a37e..cc2483fba52 --- a/lib/yuilib/3.9.1/build/event-move/event-move.js +++ b/lib/yuilib/3.12.0/event-move/event-move.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-move', function (Y, NAME) { /** @@ -586,4 +592,4 @@ define(GESTURE_MOVE_END, { }); -}, '3.9.1', {"requires": ["node-base", "event-touch", "event-synthetic"]}); +}, '3.12.0', {"requires": ["node-base", "event-touch", "event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-outside/event-outside-debug.js b/lib/yuilib/3.12.0/event-outside/event-outside-debug.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/event-outside/event-outside-debug.js rename to lib/yuilib/3.12.0/event-outside/event-outside-debug.js index 79fec83563c..3da504a7885 --- a/lib/yuilib/3.9.1/build/event-outside/event-outside-debug.js +++ b/lib/yuilib/3.12.0/event-outside/event-outside-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-outside', function (Y, NAME) { /** @@ -66,7 +72,7 @@ Y.Event.defineOutside = function (event, name) { name = name || (event + 'outside'); var config = { - + on: function (node, sub, notifier) { sub.handle = Y.one('doc').on(event, function(e) { if (this.isOutside(node, e.target)) { @@ -75,11 +81,11 @@ Y.Event.defineOutside = function (event, name) { } }, this); }, - + detach: function (node, sub, notifier) { sub.handle.detach(); }, - + delegate: function (node, sub, notifier, filter) { sub.handle = Y.one('doc').delegate(event, function (e) { if (this.isOutside(node, e.target)) { @@ -87,7 +93,7 @@ Y.Event.defineOutside = function (event, name) { } }, filter, this); }, - + isOutside: function (node, target) { return target !== node && !target.ancestor(function (p) { return p === node; @@ -105,4 +111,4 @@ Y.Array.each(nativeEvents, function (event) { }); -}, '3.9.1', {"requires": ["event-synthetic"]}); +}, '3.12.0', {"requires": ["event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-outside/event-outside-min.js b/lib/yuilib/3.12.0/event-outside/event-outside-min.js old mode 100644 new mode 100755 similarity index 77% rename from lib/yuilib/3.9.1/build/event-outside/event-outside-min.js rename to lib/yuilib/3.12.0/event-outside/event-outside-min.js index f7c64d7249f..25e58fb50ef --- a/lib/yuilib/3.9.1/build/event-outside/event-outside-min.js +++ b/lib/yuilib/3.12.0/event-outside/event-outside-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("event-outside",function(e,t){var n=["blur","change","click","dblclick","focus","keydown","keypress","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","select","submit"];e.Event.defineOutside=function(t,n){n=n||t+"outside";var r={on:function(n,r,i){r.handle=e.one("doc").on(t,function(e){this.isOutside(n,e.target)&&(e.currentTarget=n,i.fire(e))},this)},detach:function(e,t,n){t.handle.detach()},delegate:function(n,r,i,s){r.handle=e.one("doc").delegate(t,function(e){this.isOutside(n,e.target)&&i.fire(e)},s,this)},isOutside:function(e,t){return t!==e&&!t.ancestor(function(t){return t===e})}};r.detachDelegate=r.detach,e.Event.define(n,r)},e.Array.each(n,function(t){e.Event.defineOutside(t)})},"3.9.1",{requires:["event-synthetic"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-outside",function(e,t){var n=["blur","change","click","dblclick","focus","keydown","keypress","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","select","submit"];e.Event.defineOutside=function(t,n){n=n||t+"outside";var r={on:function(n,r,i){r.handle=e.one("doc").on(t,function(e){this.isOutside(n,e.target)&&(e.currentTarget=n,i.fire(e))},this)},detach:function(e,t,n){t.handle.detach()},delegate:function(n,r,i,s){r.handle=e.one("doc").delegate(t,function(e){this.isOutside(n,e.target)&&i.fire(e)},s,this)},isOutside:function(e,t){return t!==e&&!t.ancestor(function(t){return t===e})}};r.detachDelegate=r.detach,e.Event.define(n,r)},e.Array.each(n,function(t){e.Event.defineOutside(t)})},"3.12.0",{requires:["event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-outside/event-outside.js b/lib/yuilib/3.12.0/event-outside/event-outside.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/event-outside/event-outside.js rename to lib/yuilib/3.12.0/event-outside/event-outside.js index 79fec83563c..3da504a7885 --- a/lib/yuilib/3.9.1/build/event-outside/event-outside.js +++ b/lib/yuilib/3.12.0/event-outside/event-outside.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-outside', function (Y, NAME) { /** @@ -66,7 +72,7 @@ Y.Event.defineOutside = function (event, name) { name = name || (event + 'outside'); var config = { - + on: function (node, sub, notifier) { sub.handle = Y.one('doc').on(event, function(e) { if (this.isOutside(node, e.target)) { @@ -75,11 +81,11 @@ Y.Event.defineOutside = function (event, name) { } }, this); }, - + detach: function (node, sub, notifier) { sub.handle.detach(); }, - + delegate: function (node, sub, notifier, filter) { sub.handle = Y.one('doc').delegate(event, function (e) { if (this.isOutside(node, e.target)) { @@ -87,7 +93,7 @@ Y.Event.defineOutside = function (event, name) { } }, filter, this); }, - + isOutside: function (node, target) { return target !== node && !target.ancestor(function (p) { return p === node; @@ -105,4 +111,4 @@ Y.Array.each(nativeEvents, function (event) { }); -}, '3.9.1', {"requires": ["event-synthetic"]}); +}, '3.12.0', {"requires": ["event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-resize/event-resize-debug.js b/lib/yuilib/3.12.0/event-resize/event-resize-debug.js old mode 100644 new mode 100755 similarity index 87% rename from lib/yuilib/3.9.1/build/event-resize/event-resize-debug.js rename to lib/yuilib/3.12.0/event-resize/event-resize-debug.js index 05f3ec844e3..208d8c8ab31 --- a/lib/yuilib/3.9.1/build/event-resize/event-resize-debug.js +++ b/lib/yuilib/3.12.0/event-resize/event-resize-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-resize', function (Y, NAME) { /** @@ -12,7 +18,7 @@ YUI.add('event-resize', function (Y, NAME) { /** * Old firefox fires the window resize event once when the resize action * finishes, other browsers fire the event periodically during the - * resize. This code uses timeout logic to simulate the Firefox + * resize. This code uses timeout logic to simulate the Firefox * behavior in other browsers. * @event windowresize * @for YUI @@ -51,4 +57,4 @@ Y.Event.define('windowresize', { }); -}, '3.9.1', {"requires": ["node-base", "event-synthetic"]}); +}, '3.12.0', {"requires": ["node-base", "event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-resize/event-resize-min.js b/lib/yuilib/3.12.0/event-resize/event-resize-min.js old mode 100644 new mode 100755 similarity index 61% rename from lib/yuilib/3.9.1/build/event-resize/event-resize-min.js rename to lib/yuilib/3.12.0/event-resize/event-resize-min.js index c4644515814..167df8f1a70 --- a/lib/yuilib/3.9.1/build/event-resize/event-resize-min.js +++ b/lib/yuilib/3.12.0/event-resize/event-resize-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("event-resize",function(e,t){e.Event.define("windowresize",{on:e.UA.gecko&&e.UA.gecko<1.91?function(t,n,r){n._handle=e.Event.attach("resize",function(e){r.fire(e)})}:function(t,n,r){var i=e.config.windowResizeDelay||100;n._handle=e.Event.attach("resize",function(t){n._timer&&n._timer.cancel(),n._timer=e.later(i,e,function(){r.fire(t)})})},detach:function(e,t){t._timer&&t._timer.cancel(),t._handle.detach()}})},"3.9.1",{requires:["node-base","event-synthetic"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-resize",function(e,t){e.Event.define("windowresize",{on:e.UA.gecko&&e.UA.gecko<1.91?function(t,n,r){n._handle=e.Event.attach("resize",function(e){r.fire(e)})}:function(t,n,r){var i=e.config.windowResizeDelay||100;n._handle=e.Event.attach("resize",function(t){n._timer&&n._timer.cancel(),n._timer=e.later(i,e,function(){r.fire(t)})})},detach:function(e,t){t._timer&&t._timer.cancel(),t._handle.detach()}})},"3.12.0",{requires:["node-base","event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-resize/event-resize.js b/lib/yuilib/3.12.0/event-resize/event-resize.js old mode 100644 new mode 100755 similarity index 87% rename from lib/yuilib/3.9.1/build/event-resize/event-resize.js rename to lib/yuilib/3.12.0/event-resize/event-resize.js index 05f3ec844e3..208d8c8ab31 --- a/lib/yuilib/3.9.1/build/event-resize/event-resize.js +++ b/lib/yuilib/3.12.0/event-resize/event-resize.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-resize', function (Y, NAME) { /** @@ -12,7 +18,7 @@ YUI.add('event-resize', function (Y, NAME) { /** * Old firefox fires the window resize event once when the resize action * finishes, other browsers fire the event periodically during the - * resize. This code uses timeout logic to simulate the Firefox + * resize. This code uses timeout logic to simulate the Firefox * behavior in other browsers. * @event windowresize * @for YUI @@ -51,4 +57,4 @@ Y.Event.define('windowresize', { }); -}, '3.9.1', {"requires": ["node-base", "event-synthetic"]}); +}, '3.12.0', {"requires": ["node-base", "event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-simulate/event-simulate-debug.js b/lib/yuilib/3.12.0/event-simulate/event-simulate-debug.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/event-simulate/event-simulate-debug.js rename to lib/yuilib/3.12.0/event-simulate/event-simulate-debug.js index 09e6ed87446..2d639261121 --- a/lib/yuilib/3.9.1/build/event-simulate/event-simulate-debug.js +++ b/lib/yuilib/3.12.0/event-simulate/event-simulate-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-simulate', function (Y, NAME) { (function() { @@ -951,4 +957,4 @@ Y.Event.simulate = function(target, type, options){ -}, '3.9.1', {"requires": ["event-base"]}); +}, '3.12.0', {"requires": ["event-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-simulate/event-simulate-min.js b/lib/yuilib/3.12.0/event-simulate/event-simulate-min.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/event-simulate/event-simulate-min.js rename to lib/yuilib/3.12.0/event-simulate/event-simulate-min.js index 76bff615b4a..0e4e5f3543b --- a/lib/yuilib/3.9.1/build/event-simulate/event-simulate-min.js +++ b/lib/yuilib/3.12.0/event-simulate/event-simulate-min.js @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("event-simulate",function(e,t){(function(){function d(t,u,a,f,l,c,h,p,d,v,m){t||e.error("simulateKeyEvent(): Invalid target.");if(r(u)){u=u.toLowerCase();switch(u){case"textevent":u="keypress";break;case"keyup":case"keydown":case"keypress":break;default:e.error("simulateKeyEvent(): Event type '"+u+"' not supported.")}}else e.error("simulateKeyEvent(): Event type must be a string.");i(a)||(a=!0),i(f)||(f=!0),s(l)||(l=e.config.win),i(c)||(c=!1),i(h)||(h=!1),i(p)||(p=!1),i(d)||(d=!1),o(v)||(v=0),o(m)||(m=0);var g=null;if(n(e.config.doc.createEvent)){try{g=e.config.doc.createEvent("KeyEvents"),g.initKeyEvent(u,a,f,l,c,h,p,d,v,m)}catch(y){try{g=e.config.doc.createEvent("Events")}catch(b){g=e.config.doc.createEvent("UIEvents")}finally{g.initEvent(u,a,f),g.view=l,g.altKey=h,g.ctrlKey=c,g.shiftKey=p,g.metaKey=d,g.keyCode=v,g.charCode=m}}t.dispatchEvent(g)}else s(e.config.doc.createEventObject)?(g=e.config.doc.createEventObject(),g.bubbles=a,g.cancelable=f,g.view=l,g.ctrlKey=c,g.altKey=h,g.shiftKey=p,g.metaKey=d,g.keyCode=m>0?m:v,t.fireEvent("on"+u,g)):e.error("simulateKeyEvent(): No event simulation framework present.")}function v(t,f,l,c,h,p,d,v,m,g,y,b,w,E,S,x){t||e.error("simulateMouseEvent(): Invalid target."),r(f)?!u[f.toLowerCase()]&&!a[f]&&e.error("simulateMouseEvent(): Event type '"+f+"' not supported."):e.error("simulateMouseEvent(): Event type must be a string."),i(l)||(l=!0),i(c)||(c=f!=="mousemove"),s(h)||(h=e.config.win),o(p)||(p=1),o(d)||(d=0),o(v)||(v=0),o(m)||(m=0),o(g)||(g=0),i(y)||(y=!1),i(b)||(b=!1),i(w)||(w=!1),i(E)||(E=!1),o(S)||(S=0),x=x||null;var T=null;if(n(e.config.doc.createEvent))T=e.config.doc.createEvent("MouseEvents"),T.initMouseEvent?T.initMouseEvent(f,l,c,h,p,d,v,m,g,y,b,w,E,S,x):(T=e.config.doc.createEvent("UIEvents"),T.initEvent(f,l,c),T.view=h,T.detail=p,T.screenX=d,T.screenY=v,T.clientX=m,T.clientY=g,T.ctrlKey=y,T.altKey=b,T.metaKey=E,T.shiftKey=w,T.button=S,T.relatedTarget=x),x&&!T.relatedTarget&&(f==="mouseout"?T.toElement=x:f==="mouseover"&&(T.fromElement=x)),t.dispatchEvent(T);else if(s(e.config.doc.createEventObject)){T=e.config.doc.createEventObject(),T.bubbles=l,T.cancelable=c,T.view=h,T.detail=p,T.screenX=d,T.screenY=v,T.clientX=m,T.clientY=g,T.ctrlKey=y,T.altKey=b,T.metaKey=E,T.shiftKey=w;switch(S){case 0:T.button=1;break;case 1:T.button=4;break;case 2:break;default:T.button=0}T.relatedTarget=x,t.fireEvent("on"+f,T)}else e.error("simulateMouseEvent(): No event simulation framework present.")}function m(t,u,a,f,h,p){t||e.error("simulateUIEvent(): Invalid target."),r(u)?(u=u.toLowerCase(),l[u]||e.error("simulateUIEvent(): Event type '"+u+"' not supported.")):e.error("simulateUIEvent(): Event type must be a string.");var d=null;i(a)||(a=u in c),i(f)||(f=u==="submit"),s(h)||(h=e.config.win),o(p)||(p=1),n(e.config.doc.createEvent)?(d=e.config.doc.createEvent("UIEvents"),d.initUIEvent(u,a,f,h,p),t.dispatchEvent(d)):s(e.config.doc.createEventObject)?(d=e.config.doc.createEventObject(),d.bubbles=a,d.cancelable=f,d.view=h,d.detail=p,t.fireEvent("on"+u,d)):e.error("simulateUIEvent(): No event simulation framework present.")}function g(t,n,r,i,s,o,u,a,f,l,c,h,d,v,m,g){var y;(!e.UA.ios||e.UA.ios<2)&&e.error("simulateGestureEvent(): Native gesture DOM eventframe is not available in this platform."),t||e.error("simulateGestureEvent(): Invalid target."),e.Lang.isString(n)?(n=n.toLowerCase(),p[n]||e.error("simulateTouchEvent(): Event type '"+n+"' not supported.")):e.error("simulateGestureEvent(): Event type must be a string."),e.Lang.isBoolean(r)||(r=!0),e.Lang.isBoolean(i)||(i=!0),e.Lang.isObject(s)||(s=e.config.win),e.Lang.isNumber(o)||(o=2),e.Lang.isNumber(u)||(u=0),e.Lang.isNumber(a)||(a=0),e.Lang.isNumber(f)||(f=0),e.Lang.isNumber(l)||(l=0),e.Lang.isBoolean(c)||(c=!1),e.Lang.isBoolean(h)||(h=!1),e.Lang.isBoolean(d)||(d=!1),e.Lang.isBoolean(v)||(v=!1),e.Lang.isNumber(m)||(m=1),e.Lang.isNumber(g)||(g=0),y=e.config.doc.createEvent("GestureEvent"),y.initGestureEvent(n,r,i,s,o,u,a,f,l,c,h,d,v,t,m,g),t.dispatchEvent(y)}function y(t,n,r,i,s,o,u,a,f,l,c,p,d,v,m,g,y,b,w){var E;t||e.error("simulateTouchEvent(): Invalid target."),e.Lang.isString(n)?(n=n.toLowerCase(),h[n]||e.error("simulateTouchEvent(): Event type '"+n+"' not supported.")):e.error("simulateTouchEvent(): Event type must be a string."),n==="touchstart"||n==="touchmove"?m.length===0&&e.error("simulateTouchEvent(): No touch object in touches"):n==="touchend"&&y.length===0&&e.error("simulateTouchEvent(): No touch object in changedTouches"),e.Lang.isBoolean(r)||(r=!0),e.Lang.isBoolean(i)||(i=n!=="touchcancel"),e.Lang.isObject(s)||(s=e.config.win),e.Lang.isNumber(o)||(o=1),e.Lang.isNumber(u)||(u=0),e.Lang.isNumber(a)||(a=0),e.Lang.isNumber(f)||(f=0),e.Lang.isNumber(l)||(l=0),e.Lang.isBoolean(c)||(c=!1),e.Lang.isBoolean(p)||(p=!1),e.Lang.isBoolean(d)||(d=!1),e.Lang.isBoolean(v)||(v=!1),e.Lang.isNumber(b)||(b=1),e.Lang.isNumber(w)||(w=0),e.Lang.isFunction(e.config.doc.createEvent)?(e.UA.android?e.UA.android<4?(E=e.config.doc.createEvent("MouseEvents"),E.initMouseEvent(n,r,i,s,o,u,a,f,l,c,p,d,v,0,t),E.touches=m,E.targetTouches=g,E.changedTouches=y):(E=e.config.doc.createEvent("TouchEvent"),E.initTouchEvent(m,g,y,n,s,u,a,f,l,c,p,d,v)):e.UA.ios?e.UA.ios>=2?(E=e.config.doc.createEvent("TouchEvent"),E.initTouchEvent(n,r,i,s,o,u,a,f,l,c,p,d,v,m,g,y,b,w)):e.error("simulateTouchEvent(): No touch event simulation framework present for iOS, "+e.UA.ios+"."):e.error("simulateTouchEvent(): Not supported agent yet, "+e.UA.userAgent),t.dispatchEvent(E)):e.error("simulateTouchEvent(): No event simulation framework present.")}var t=e.Lang,n=t.isFunction,r=t.isString,i=t.isBoolean,s=t.isObject,o=t.isNumber,u={click:1,dblclick:1,mouseover:1,mouseout:1,mousedown:1,mouseup:1,mousemove:1,contextmenu:1},a={MSPointerOver:1,MSPointerOut:1,MSPointerDown:1,MSPointerUp:1,MSPointerMove:1},f={keydown:1,keyup:1,keypress:1},l={submit:1,blur:1,change:1,focus:1,resize:1,scroll:1,select:1},c={scroll:1,resize:1,reset:1,submit:1,change:1,select -:1,error:1,abort:1},h={touchstart:1,touchmove:1,touchend:1,touchcancel:1},p={gesturestart:1,gesturechange:1,gestureend:1};e.mix(c,u),e.mix(c,f),e.mix(c,h),e.Event.simulate=function(t,n,r){r=r||{},u[n]||a[n]?v(t,n,r.bubbles,r.cancelable,r.view,r.detail,r.screenX,r.screenY,r.clientX,r.clientY,r.ctrlKey,r.altKey,r.shiftKey,r.metaKey,r.button,r.relatedTarget):f[n]?d(t,n,r.bubbles,r.cancelable,r.view,r.ctrlKey,r.altKey,r.shiftKey,r.metaKey,r.keyCode,r.charCode):l[n]?m(t,n,r.bubbles,r.cancelable,r.view,r.detail):h[n]?e.config.win&&"ontouchstart"in e.config.win&&!e.UA.phantomjs&&!(e.UA.chrome&&e.UA.chrome<6)?y(t,n,r.bubbles,r.cancelable,r.view,r.detail,r.screenX,r.screenY,r.clientX,r.clientY,r.ctrlKey,r.altKey,r.shiftKey,r.metaKey,r.touches,r.targetTouches,r.changedTouches,r.scale,r.rotation):e.error("simulate(): Event '"+n+"' can't be simulated. Use gesture-simulate module instead."):e.UA.ios&&e.UA.ios>=2&&p[n]?g(t,n,r.bubbles,r.cancelable,r.view,r.detail,r.screenX,r.screenY,r.clientX,r.clientY,r.ctrlKey,r.altKey,r.shiftKey,r.metaKey,r.scale,r.rotation):e.error("simulate(): Event '"+n+"' can't be simulated.")}})()},"3.9.1",{requires:["event-base"]}); +:1,error:1,abort:1},h={touchstart:1,touchmove:1,touchend:1,touchcancel:1},p={gesturestart:1,gesturechange:1,gestureend:1};e.mix(c,u),e.mix(c,f),e.mix(c,h),e.Event.simulate=function(t,n,r){r=r||{},u[n]||a[n]?v(t,n,r.bubbles,r.cancelable,r.view,r.detail,r.screenX,r.screenY,r.clientX,r.clientY,r.ctrlKey,r.altKey,r.shiftKey,r.metaKey,r.button,r.relatedTarget):f[n]?d(t,n,r.bubbles,r.cancelable,r.view,r.ctrlKey,r.altKey,r.shiftKey,r.metaKey,r.keyCode,r.charCode):l[n]?m(t,n,r.bubbles,r.cancelable,r.view,r.detail):h[n]?e.config.win&&"ontouchstart"in e.config.win&&!e.UA.phantomjs&&!(e.UA.chrome&&e.UA.chrome<6)?y(t,n,r.bubbles,r.cancelable,r.view,r.detail,r.screenX,r.screenY,r.clientX,r.clientY,r.ctrlKey,r.altKey,r.shiftKey,r.metaKey,r.touches,r.targetTouches,r.changedTouches,r.scale,r.rotation):e.error("simulate(): Event '"+n+"' can't be simulated. Use gesture-simulate module instead."):e.UA.ios&&e.UA.ios>=2&&p[n]?g(t,n,r.bubbles,r.cancelable,r.view,r.detail,r.screenX,r.screenY,r.clientX,r.clientY,r.ctrlKey,r.altKey,r.shiftKey,r.metaKey,r.scale,r.rotation):e.error("simulate(): Event '"+n+"' can't be simulated.")}})()},"3.12.0",{requires:["event-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-simulate/event-simulate.js b/lib/yuilib/3.12.0/event-simulate/event-simulate.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/event-simulate/event-simulate.js rename to lib/yuilib/3.12.0/event-simulate/event-simulate.js index 09e6ed87446..2d639261121 --- a/lib/yuilib/3.9.1/build/event-simulate/event-simulate.js +++ b/lib/yuilib/3.12.0/event-simulate/event-simulate.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-simulate', function (Y, NAME) { (function() { @@ -951,4 +957,4 @@ Y.Event.simulate = function(target, type, options){ -}, '3.9.1', {"requires": ["event-base"]}); +}, '3.12.0', {"requires": ["event-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-synthetic/event-synthetic-debug.js b/lib/yuilib/3.12.0/event-synthetic/event-synthetic-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/event-synthetic/event-synthetic-debug.js rename to lib/yuilib/3.12.0/event-synthetic/event-synthetic-debug.js index 1e4beafdeba..def388dbb1e --- a/lib/yuilib/3.9.1/build/event-synthetic/event-synthetic-debug.js +++ b/lib/yuilib/3.12.0/event-synthetic/event-synthetic-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-synthetic', function (Y, NAME) { /** @@ -98,6 +104,17 @@ Notifier.prototype.fire = function (e) { sub.context = thisObj || event.currentTarget || ce.host; ret = ce.fire.apply(ce, args); + + // have to handle preventedFn and stoppedFn manually because + // Notifier CustomEvents are forced to emitFacade=false + if (e.prevented && ce.preventedFn) { + ce.preventedFn.apply(ce, args); + } + + if (e.stopped && ce.stoppedFn) { + ce.stoppedFn.apply(ce, args); + } + sub.context = thisObj; // reset for future firing // to capture callbacks that return false to stopPropagation. @@ -106,7 +123,9 @@ Notifier.prototype.fire = function (e) { }; /** - * Manager object for synthetic event subscriptions to aggregate multiple synths on the same node without colliding with actual DOM subscription entries in the global map of DOM subscriptions. Also facilitates proper cleanup on page unload. + * Manager object for synthetic event subscriptions to aggregate multiple synths on the + * same node without colliding with actual DOM subscription entries in the global map of + * DOM subscriptions. Also facilitates proper cleanup on page unload. * * @class SynthRegistry * @constructor @@ -236,7 +255,7 @@ Y.mix(SyntheticEvent, { yuid = Y.stamp(el), key = 'event:' + yuid + type + '_synth', events = DOMMap[yuid]; - + if (create) { if (!events) { events = DOMMap[yuid] = {}; @@ -830,4 +849,4 @@ Y.Event.define = function (type, config, force) { }; -}, '3.9.1', {"requires": ["node-base", "event-custom-complex"]}); +}, '3.12.0', {"requires": ["node-base", "event-custom-complex"]}); diff --git a/lib/yuilib/3.12.0/event-synthetic/event-synthetic-min.js b/lib/yuilib/3.12.0/event-synthetic/event-synthetic-min.js new file mode 100755 index 00000000000..1b23ede4dda --- /dev/null +++ b/lib/yuilib/3.12.0/event-synthetic/event-synthetic-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-synthetic",function(e,t){function c(e,t){this.handle=e,this.emitFacade=t}function h(e,t,n){this.handles=[],this.el=e,this.key=n,this.domkey=t}function p(){this._init.apply(this,arguments)}var n=e.CustomEvent,r=e.Env.evt.dom_map,i=e.Array,s=e.Lang,o=s.isObject,u=s.isString,a=s.isArray,f=e.Selector.query,l=function(){};c.prototype.fire=function(t){var n=i(arguments,0,!0),r=this.handle,s=r.evt,u=r.sub,a=u.context,f=u.filter,l=t||{},c;if(this.emitFacade){if(!t||!t.preventDefault)l=s._getFacade(),o(t)&&!t.preventDefault?(e.mix(l,t,!0),n[0]=l):n.unshift(l);l.type=s.type,l.details=n.slice(),f&&(l.container=s.host)}else f&&o(t)&&t.currentTarget&&n.shift();return u.context=a||l.currentTarget||s.host,c=s.fire.apply(s,n),t.prevented&&s.preventedFn&&s.preventedFn.apply(s,n),t.stopped&&s.stoppedFn&&s.stoppedFn.apply(s,n),u.context=a,c},h.prototype={constructor:h,type:"_synth",fn:l,capture:!1,register:function(e){e.evt.registry=this,this.handles.push(e)},unregister:function(t){var n=this.handles,i=r[this.domkey],s;for(s=n.length-1;s>=0;--s)if(n[s].sub===t){n.splice(s,1);break}n.length||(delete i[this.key],e.Object.size(i)||delete r[this.domkey])},detachAll:function(){var e=this.handles,t=e.length;while(--t>=0)e[t].detach()}},e.mix(p,{Notifier:c,SynthRegistry:h,getRegistry:function(t,n,i){var s=t._node,o=e.stamp(s),u="event:"+o+n+"_synth",a=r[o];return i&&(a||(a=r[o]={}),a[u]||(a[u]=new h(s,o,u))),a&&a[u]||null},_deleteSub:function(e){if(e&&e.fn){var t=this.eventDef,r=e.filter?"detachDelegate":"detach";this._subscribers=[],n.keepDeprecatedSubs&&(this.subscribers={}),t[r](e.node,e,this.notifier,e.filter),this.registry.unregister(e),delete e.fn,delete e.node,delete e.context}},prototype:{constructor:p,_init:function(){var e=this.publishConfig||(this.publishConfig={});this.emitFacade="emitFacade"in e?e.emitFacade:!0,e.emitFacade=!1},processArgs:l,on:l,detach:l,delegate:l,detachDelegate:l,_on:function(t,n){var r=[],s=t.slice(),o=this.processArgs(t,n),a=t[2],l=n?"delegate":"on",c,h;return c=u(a)?f(a):i(a||e.one(e.config.win)),!c.length&&u(a)?(h=e.on("available",function(){e.mix(h,e[l].apply(e,s),!0)},a),h):(e.Array.each(c,function(i){var s=t.slice(),u;i=e.one(i),i&&(n&&(u=s.splice(3,1)[0]),s.splice(0,4,s[1],s[3]),(!this.preventDups||!this.getSubs(i,t,null,!0))&&r.push(this._subscribe(i,l,s,o,u)))},this),r.length===1?r[0]:new e.EventHandle(r))},_subscribe:function(t,n,r,i,s){var o=new e.CustomEvent(this.type,this.publishConfig),u=o.on.apply(o,r),a=new c(u,this.emitFacade),f=p.getRegistry(t,this.type,!0),l=u.sub;return l.node=t,l.filter=s,i&&this.applyArgExtras(i,l),e.mix(o,{eventDef:this,notifier:a,host:t,currentTarget:t,target:t,el:t._node,_delete:p._deleteSub},!0),u.notifier=a,f.register(u),this[n](t,l,a,s),u},applyArgExtras:function(e,t){t._extra=e},_detach:function(t){var n=t[2],r=u(n)?f(n):i(n),s,o,a,l,c;t.splice(2,1);for(o=0,a=r.length;o=0;--c)l[c].detach()}}},getSubs:function(e,t,n,r){var i=p.getRegistry(e,this.type),s=[],o,u,a,f;if(i){o=i.handles,n||(n=this.subMatch);for(u=0,a=o.length;u= 0) { + sensitivity = subscription._extra.sensitivity; + } //There is a double check in here to support event simulation tests, in which //event.touches can be undefined when simulating 'touchstart' on touch devices. - if (SUPPORTS_TOUCHES && event.changedTouches) { + if (event.changedTouches) { endXY = [ event.changedTouches[0].pageX, event.changedTouches[0].pageY ]; clientXY = [event.changedTouches[0].clientX, event.changedTouches[0].clientY]; } @@ -239,10 +284,8 @@ Y.Event.define(EVT_TAP, { clientXY = [event.clientX, event.clientY]; } - detachHelper(subscription, [ HANDLES.MOVE, HANDLES.END, HANDLES.CANCEL ], true, context); - // make sure mouse didn't move - if (Math.abs(endXY[0] - startXY[0]) === 0 && Math.abs(endXY[1] - startXY[1]) === 0) { + if (Math.abs(endXY[0] - startXY[0]) <= sensitivity && Math.abs(endXY[1] - startXY[1]) <= sensitivity) { event.type = EVT_TAP; event.pageX = endXY[0]; @@ -253,8 +296,10 @@ Y.Event.define(EVT_TAP, { notifier.fire(event); } + + detachHandles(subscription, [HANDLES.END, HANDLES.CANCEL]); } }); -}, '3.9.1', {"requires": ["node-base", "event-base", "event-touch", "event-synthetic"]}); +}, '3.12.0', {"requires": ["node-base", "event-base", "event-touch", "event-synthetic"]}); diff --git a/lib/yuilib/3.12.0/event-tap/event-tap-min.js b/lib/yuilib/3.12.0/event-tap/event-tap-min.js new file mode 100755 index 00000000000..81bc0c6ed9e --- /dev/null +++ b/lib/yuilib/3.12.0/event-tap/event-tap-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-tap",function(e,t){function u(t,n){n=n||e.Object.values(o),e.Array.each(n,function(e){var n=t[e];n&&(n.detach(),t[e]=null)})}var n=e.config.doc,r=e.Event._GESTURE_MAP,i=r.start,s="tap",o={START:"Y_TAP_ON_START_HANDLE",END:"Y_TAP_ON_END_HANDLE",CANCEL:"Y_TAP_ON_CANCEL_HANDLE"};e.Event.define(s,{publishConfig:{preventedFn:function(e){var t=e.target.once("click",function(e){e.preventDefault()});setTimeout(function(){t.detach()},100)}},processArgs:function(e,t){if(!t){var n=e[3];return e.splice(3,1),n}},on:function(e,t,n){t[o.START]=e.on(i,this._start,this,e,t,n)},detach:function(e,t,n){u(t)},delegate:function(e,t,n,r){t[o.START]=e.delegate(i,function(r){this._start(r,e,t,n,!0)},r,this)},detachDelegate:function(e,t,n){u(t)},_start:function(e,t,n,r,i){var s={canceled:!1,eventType:e.type},u=n.preventMouse||!1;if(e.button&&e.button===3)return;if(e.touches&&e.touches.length!==1)return;s.node=i?e.currentTarget:t,e.touches?s.startXY=[e.touches[0].pageX,e.touches[0].pageY]:s.startXY=[e.pageX,e.pageY],e.touches?(n[o.END]=t.once("touchend",this._end,this,t,n,r,i,s),n[o.CANCEL]=t.once("touchcancel",this.detach,this,t,n,r,i,s),n.preventMouse=!0):s.eventType.indexOf("mouse")!==-1&&!u?(n[o.END]=t.once("mouseup",this._end,this,t,n,r,i,s),n[o.CANCEL]=t.once("mousecancel",this.detach,this,t,n,r,i,s)):s.eventType.indexOf("mouse")!==-1&&u?n.preventMouse=!1:s.eventType.indexOf("MSPointer")!==-1&&(n[o.END]=t.once("MSPointerUp",this._end,this,t,n,r,i,s),n[o.CANCEL]=t.once("MSPointerCancel",this.detach,this,t,n,r,i,s))},_end:function(e,t,n,r,i,a){var f=a.startXY,l,c,h=15;n._extra&&n._extra.sensitivity>=0&&(h=n._extra.sensitivity),e.changedTouches?(l=[e.changedTouches[0].pageX,e.changedTouches[0].pageY],c=[e.changedTouches[0].clientX,e.changedTouches[0].clientY]):(l=[e.pageX,e.pageY],c=[e.clientX,e.clientY]),Math.abs(l[0]-f[0])<=h&&Math.abs(l[1]-f[1])<=h&&(e.type=s,e.pageX=l[0],e.pageY=l[1],e.clientX=c[0],e.clientY=c[1],e.currentTarget=a.node,r.fire(e)),u(n,[o.END,o.CANCEL])}})},"3.12.0",{requires:["node-base","event-base","event-touch","event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-tap/event-tap.js b/lib/yuilib/3.12.0/event-tap/event-tap.js old mode 100644 new mode 100755 similarity index 54% rename from lib/yuilib/3.9.1/build/event-tap/event-tap.js rename to lib/yuilib/3.12.0/event-tap/event-tap.js index 1069d8927f7..a12485a2c89 --- a/lib/yuilib/3.9.1/build/event-tap/event-tap.js +++ b/lib/yuilib/3.12.0/event-tap/event-tap.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-tap', function (Y, NAME) { /** @@ -8,7 +14,7 @@ to build input device agnostic components which behave the same in response to e interaction. 'tap' is like a touchscreen 'click', only it requires much less finger-down time since it listens to touch events, -but reverts to mouse events if touch is not supported. +but reverts to mouse events if touch is not supported. @example @@ -20,30 +26,24 @@ but reverts to mouse events if touch is not supported. @module event @submodule event-tap @author Andres Garza, matuzak and tilo mitra -@since 3.7.0 +@since 3.7.0 */ var doc = Y.config.doc, GESTURE_MAP = Y.Event._GESTURE_MAP, - SUPPORTS_TOUCHES = !!(doc && doc.createTouch), EVT_START = GESTURE_MAP.start, - EVT_MOVE = GESTURE_MAP.move, - EVT_END = GESTURE_MAP.end, - EVT_CANCEL = GESTURE_MAP.cancel, EVT_TAP = 'tap', HANDLES = { START: 'Y_TAP_ON_START_HANDLE', - MOVE: 'Y_TAP_ON_MOVE_HANDLE', END: 'Y_TAP_ON_END_HANDLE', CANCEL: 'Y_TAP_ON_CANCEL_HANDLE' }; -function detachHelper(subscription, handles, subset, context) { +function detachHandles(subscription, handles) { + handles = handles || Y.Object.values(HANDLES); - handles = subset ? handles : [ handles.START, handles.MOVE, handles.END, handles.CANCEL ]; - - Y.Array.each(handles, function (item, index, array) { + Y.Array.each(handles, function (item) { var handle = subscription[item]; if (handle) { handle.detach(); @@ -66,11 +66,40 @@ This event can also be listened for using node.delegate(). @return {EventHandle} the detach handle */ Y.Event.define(EVT_TAP, { + publishConfig: { + preventedFn: function (e) { + var sub = e.target.once('click', function (click) { + click.preventDefault(); + }); + // Make sure to detach the subscription during the next event loop + // so this doesn't `preventDefault()` on the wrong click event. + setTimeout(function () { + sub.detach(); + //Setting this to `0` causes the detachment to occur before the click + //comes in on Android 4.0.3-4.0.4. 100ms seems to be a reliable number here + //that works across the board. + }, 100); + } + }, + + processArgs: function (args, isDelegate) { + + //if we return for the delegate use case, then the `filter` argument + //returns undefined, and we have to get the filter from sub._extra[0] (ugly) + + if (!isDelegate) { + var extra = args[3]; + // remove the extra arguments from the array as specified by + // http://yuilibrary.com/yui/docs/event/synths.html + args.splice(3,1); + return extra; + } + }, /** This function should set up the node that will eventually fire the event. - Usage: + Usage: node.on('tap', function (e) { }); @@ -83,7 +112,7 @@ Y.Event.define(EVT_TAP, { @static **/ on: function (node, subscription, notifier) { - subscription[HANDLES.START] = node.on(EVT_START, this.touchStart, this, node, subscription, notifier); + subscription[HANDLES.START] = node.on(EVT_START, this._start, this, node, subscription, notifier); }, /** @@ -97,15 +126,15 @@ Y.Event.define(EVT_TAP, { @static **/ detach: function (node, subscription, notifier) { - detachHelper(subscription, HANDLES); + detachHandles(subscription); }, /** - Event delegation for the 'tap' event. The delegated event will use a - supplied selector or filtering function to test if the event references at least one + Event delegation for the 'tap' event. The delegated event will use a + supplied selector or filtering function to test if the event references at least one node that should trigger the subscription callback. - Usage: + Usage: node.delegate('tap', function (e) { }, 'li a'); @@ -120,7 +149,7 @@ Y.Event.define(EVT_TAP, { **/ delegate: function (node, subscription, notifier, filter) { subscription[HANDLES.START] = node.delegate(EVT_START, function (e) { - this.touchStart(e, node, subscription, notifier, true); + this._start(e, node, subscription, notifier, true); }, filter, this); }, @@ -136,14 +165,13 @@ Y.Event.define(EVT_TAP, { @static **/ detachDelegate: function (node, subscription, notifier) { - detachHelper(subscription, HANDLES); + detachHandles(subscription); }, - /** Called when the monitor(s) are tapped on, either through touchstart or mousedown. - @method touchStart + @method _start @param {DOMEventFacade} event @param {Y.Node} node @param {Array} subscription @@ -152,13 +180,15 @@ Y.Event.define(EVT_TAP, { @protected @static **/ - touchStart: function (event, node, subscription, notifier, delegate) { + _start: function (event, node, subscription, notifier, delegate) { var context = { - canceled: false - }; - //move ways to quit early to the top. + canceled: false, + eventType: event.type + }, + preventMouse = subscription.preventMouse || false; + //move ways to quit early to the top. // no right clicks if (event.button && event.button === 3) { return; @@ -173,44 +203,54 @@ Y.Event.define(EVT_TAP, { //There is a double check in here to support event simulation tests, in which //event.touches can be undefined when simulating 'touchstart' on touch devices. - if (SUPPORTS_TOUCHES && event.touches) { + if (event.touches) { context.startXY = [ event.touches[0].pageX, event.touches[0].pageY ]; } else { context.startXY = [ event.pageX, event.pageY ]; } - //Possibly outdated issue: something is off with the move that it attaches it but never triggers the handler - subscription[HANDLES.MOVE] = node.once(EVT_MOVE, this.touchMove, this, node, subscription, notifier, delegate, context); - subscription[HANDLES.END] = node.once(EVT_END, this.touchEnd, this, node, subscription, notifier, delegate, context); - subscription[HANDLES.CANCEL] = node.once(EVT_CANCEL, this.touchMove, this, node, subscription, notifier, delegate, context); - }, + //If `onTouchStart()` was called by a touch event, set up touch event subscriptions. + //Otherwise, set up mouse/pointer event event subscriptions. + if (event.touches) { - /** - Called when the monitor(s) fires a touchmove or touchcancel event (or the mouse equivalent). - This method detaches event handlers so that 'tap' is not fired. + subscription[HANDLES.END] = node.once('touchend', this._end, this, node, subscription, notifier, delegate, context); + subscription[HANDLES.CANCEL] = node.once('touchcancel', this.detach, this, node, subscription, notifier, delegate, context); - @method touchMove - @param {DOMEventFacade} event - @param {Y.Node} node - @param {Array} subscription - @param {Boolean} notifier - @param {Boolean} delegate - @param {Object} context - @protected - @static - **/ - touchMove: function (event, node, subscription, notifier, delegate, context) { - detachHelper(subscription, [ HANDLES.MOVE, HANDLES.END, HANDLES.CANCEL ], true, context); - context.cancelled = true; + //Since this is a touch* event, there will be corresponding mouse events + //that will be fired. We don't want these events to get picked up and fire + //another `tap` event, so we'll set this variable to `true`. + subscription.preventMouse = true; + } + + //Only add these listeners if preventMouse is `false` + //ie: not when touch events have already been subscribed to + else if (context.eventType.indexOf('mouse') !== -1 && !preventMouse) { + subscription[HANDLES.END] = node.once('mouseup', this._end, this, node, subscription, notifier, delegate, context); + subscription[HANDLES.CANCEL] = node.once('mousecancel', this.detach, this, node, subscription, notifier, delegate, context); + } + + //If a mouse event comes in after a touch event, it will go in here and + //reset preventMouse to `true`. + //If a mouse event comes in without a prior touch event, preventMouse will be + //false in any case, so this block doesn't do anything. + else if (context.eventType.indexOf('mouse') !== -1 && preventMouse) { + subscription.preventMouse = false; + } + + else if (context.eventType.indexOf('MSPointer') !== -1) { + subscription[HANDLES.END] = node.once('MSPointerUp', this._end, this, node, subscription, notifier, delegate, context); + subscription[HANDLES.CANCEL] = node.once('MSPointerCancel', this.detach, this, node, subscription, notifier, delegate, context); + } }, + /** Called when the monitor(s) fires a touchend event (or the mouse equivalent). This method fires the 'tap' event if certain requirements are met. - @method touchEnd + @method _end @param {DOMEventFacade} event @param {Y.Node} node @param {Array} subscription @@ -220,14 +260,19 @@ Y.Event.define(EVT_TAP, { @protected @static **/ - touchEnd: function (event, node, subscription, notifier, delegate, context) { + _end: function (event, node, subscription, notifier, delegate, context) { var startXY = context.startXY, endXY, - clientXY; + clientXY, + sensitivity = 15; + + if (subscription._extra && subscription._extra.sensitivity >= 0) { + sensitivity = subscription._extra.sensitivity; + } //There is a double check in here to support event simulation tests, in which //event.touches can be undefined when simulating 'touchstart' on touch devices. - if (SUPPORTS_TOUCHES && event.changedTouches) { + if (event.changedTouches) { endXY = [ event.changedTouches[0].pageX, event.changedTouches[0].pageY ]; clientXY = [event.changedTouches[0].clientX, event.changedTouches[0].clientY]; } @@ -236,10 +281,8 @@ Y.Event.define(EVT_TAP, { clientXY = [event.clientX, event.clientY]; } - detachHelper(subscription, [ HANDLES.MOVE, HANDLES.END, HANDLES.CANCEL ], true, context); - // make sure mouse didn't move - if (Math.abs(endXY[0] - startXY[0]) === 0 && Math.abs(endXY[1] - startXY[1]) === 0) { + if (Math.abs(endXY[0] - startXY[0]) <= sensitivity && Math.abs(endXY[1] - startXY[1]) <= sensitivity) { event.type = EVT_TAP; event.pageX = endXY[0]; @@ -250,8 +293,10 @@ Y.Event.define(EVT_TAP, { notifier.fire(event); } + + detachHandles(subscription, [HANDLES.END, HANDLES.CANCEL]); } }); -}, '3.9.1', {"requires": ["node-base", "event-base", "event-touch", "event-synthetic"]}); +}, '3.12.0', {"requires": ["node-base", "event-base", "event-touch", "event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-touch/event-touch-debug.js b/lib/yuilib/3.12.0/event-touch/event-touch-debug.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/event-touch/event-touch-debug.js rename to lib/yuilib/3.12.0/event-touch/event-touch-debug.js index d33d0cf26c3..9474499b586 --- a/lib/yuilib/3.9.1/build/event-touch/event-touch-debug.js +++ b/lib/yuilib/3.12.0/event-touch/event-touch-debug.js @@ -1,9 +1,15 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-touch', function (Y, NAME) { /** Adds touch event facade normalization properties (touches, changedTouches, targetTouches etc.) to the DOM event facade. Adds -touch events to the DOM events whitelist. +touch events to the DOM events whitelist. @example YUI().use('event-touch', function (Y) { @@ -73,7 +79,7 @@ Y.DOMEventFacade.prototype._touch = function(e, currentTarget, wrapper) { etCached = touchCache && touchCache[Y.stamp(et, true)]; this.targetTouches[i] = etCached || new Y.DOMEventFacade(et, currentTarget, wrapper); - + if (etCached) { Y.log("Found native event in touches. Using same facade in targetTouches", "info", "event-touch"); } } } @@ -89,7 +95,7 @@ Y.DOMEventFacade.prototype._touch = function(e, currentTarget, wrapper) { For `touchmove`, the touch points that have changed since the last event. - + For `touchend`, the touch points that have been removed from the touch surface. @@ -103,7 +109,7 @@ Y.DOMEventFacade.prototype._touch = function(e, currentTarget, wrapper) { etCached = touchCache && touchCache[Y.stamp(et, true)]; this.changedTouches[i] = etCached || new Y.DOMEventFacade(et, currentTarget, wrapper); - + if (etCached) { Y.log("Found native event in touches. Using same facade in changedTouches", "info", "event-touch"); } } } @@ -132,7 +138,7 @@ if (Y.Node.DOM_EVENTS) { gesturestart:1, gesturechange:1, gestureend:1, - MSPointerDown:1, + MSPointerDown:1, MSPointerUp:1, MSPointerMove:1 }); @@ -140,10 +146,10 @@ if (Y.Node.DOM_EVENTS) { //Add properties to Y.EVENT.GESTURE_MAP based on feature detection. if ((win && ("ontouchstart" in win)) && !(Y.UA.chrome && Y.UA.chrome < 6)) { - GESTURE_MAP.start = "touchstart"; - GESTURE_MAP.end = "touchend"; - GESTURE_MAP.move = "touchmove"; - GESTURE_MAP.cancel = "touchcancel"; + GESTURE_MAP.start = ["touchstart", "mousedown"]; + GESTURE_MAP.end = ["touchend", "mouseup"]; + GESTURE_MAP.move = ["touchmove", "mousemove"]; + GESTURE_MAP.cancel = ["touchcancel", "mousecancel"]; } @@ -175,4 +181,4 @@ else { Y.Event._GESTURE_MAP = GESTURE_MAP; -}, '3.9.1', {"requires": ["node-base"]}); +}, '3.12.0', {"requires": ["node-base"]}); diff --git a/lib/yuilib/3.9.1/build/event-touch/event-touch-min.js b/lib/yuilib/3.12.0/event-touch/event-touch-min.js old mode 100644 new mode 100755 similarity index 62% rename from lib/yuilib/3.9.1/build/event-touch/event-touch-min.js rename to lib/yuilib/3.12.0/event-touch/event-touch-min.js index 336ece90c70..7183bf1e160 --- a/lib/yuilib/3.9.1/build/event-touch/event-touch-min.js +++ b/lib/yuilib/3.12.0/event-touch/event-touch-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("event-touch",function(e,t){var n="scale",r="rotation",i="identifier",s=e.config.win,o={};e.DOMEventFacade.prototype._touch=function(t,s,o){var u,a,f,l,c;if(t.touches){this.touches=[],c={};for(u=0,a=t.touches.length;u stopped) { + stopped = newStopped; + + if (stopped === 1) { + stopElement = evt.el; + } + } + + // support e.stopImmediatePropagation() + if (stopped === 2) { + return true; + } }); VC._refreshTimeout(node); @@ -199,7 +233,7 @@ VC = { vcData.notifiers[Y.stamp(notifier)] = notifier; vcData.interval = setInterval(function () { - VC._poll(node, vcData, options); + VC._poll(node, options); }, VC.POLL_INTERVAL); Y.log('_startPolling: #' + node.get('id'), 'info', 'event-valuechange'); @@ -473,4 +507,4 @@ Y.Event.define('valueChange', config); // deprecated, but supported for backcomp Y.ValueChange = VC; -}, '3.9.1', {"requires": ["event-focus", "event-synthetic"]}); +}, '3.12.0', {"requires": ["event-focus", "event-synthetic"]}); diff --git a/lib/yuilib/3.12.0/event-valuechange/event-valuechange-min.js b/lib/yuilib/3.12.0/event-valuechange/event-valuechange-min.js new file mode 100755 index 00000000000..2445fb480f1 --- /dev/null +++ b/lib/yuilib/3.12.0/event-valuechange/event-valuechange-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("event-valuechange",function(e,t){var n="_valuechange",r="value",i,s={POLL_INTERVAL:50,TIMEOUT:1e4,_poll:function(t,r){var i=t._node,o=r.e,u=i&&i.value,a=t._data&&t._data[n],f=0,l,c,h;if(!i||!a){s._stopPolling(t);return}c=a.prevVal,u!==c&&(a.prevVal=u,l={_event:o,currentTarget:o&&o.currentTarget||t,newVal:u,prevVal:c,target:o&&o.target||t},e.Object.some(a.notifiers,function(e){var t=e.handle.evt,n;f!==1?e.fire(l):t.el===h&&e.fire(l),n=t&&t._facade?t._facade.stopped:0,n>f&&(f=n,f===1&&(h=t.el));if(f===2)return!0}),s._refreshTimeout(t))},_refreshTimeout:function(e,t){if(!e._node)return;var r=e.getData(n);s._stopTimeout(e),r.timeout=setTimeout(function(){s._stopPolling(e,t)},s.TIMEOUT)},_startPolling:function(t,i,o){if(!t.test("input,textarea"))return;var u=t.getData(n);u||(u={prevVal:t.get(r)},t.setData(n,u)),u.notifiers||(u.notifiers={});if(u.interval){if(!o.force){u.notifiers[e.stamp(i)]=i;return}s._stopPolling(t,i)}u.notifiers[e.stamp(i)]=i,u.interval=setInterval(function(){s._poll(t,o)},s.POLL_INTERVAL),s._refreshTimeout(t,i)},_stopPolling:function(t,r){if(!t._node)return;var i=t.getData(n)||{};clearInterval(i.interval),delete i.interval,s._stopTimeout(t),r?i.notifiers&&delete i.notifiers[e.stamp(r)]:i.notifiers={}},_stopTimeout:function(e){var t=e.getData(n)||{};clearTimeout(t.timeout),delete t.timeout},_onBlur:function(e,t){s._stopPolling(e.currentTarget,t)},_onFocus:function(e,t){var i=e.currentTarget,o=i.getData(n);o||(o={},i.setData(n,o)),o.prevVal=i.get(r),s._startPolling(i,t,{e:e})},_onKeyDown:function(e,t){s._startPolling(e.currentTarget,t,{e:e})},_onKeyUp:function(e,t){(e.charCode===229||e.charCode===197)&&s._startPolling(e.currentTarget,t,{e:e,force:!0})},_onMouseDown:function(e,t){s._startPolling(e.currentTarget,t,{e:e})},_onSubscribe:function(t,i,o,u){var a,f,l;f={blur:s._onBlur,focus:s._onFocus,keydown:s._onKeyDown,keyup:s._onKeyUp,mousedown:s._onMouseDown},a=o._valuechange={};if(u)a.delegated=!0,a.getNodes=function(){return t.all("input,textarea").filter(u)},a.getNodes().each(function(e){e.getData(n)||e.setData(n,{prevVal:e.get(r)})}),o._handles=e.delegate(f,t,u,null,o);else{if(!t.test("input,textarea"))return;t.getData(n)||t.setData(n,{prevVal:t.get(r)}),o._handles=t.on(f,null,null,o)}},_onUnsubscribe:function(e,t,n){var r=n._valuechange;n._handles&&n._handles.detach(),r.delegated?r.getNodes().each(function(e){s._stopPolling(e,n)}):s._stopPolling(e,n)}};i={detach:s._onUnsubscribe,on:s._onSubscribe,delegate:s._onSubscribe,detachDelegate:s._onUnsubscribe,publishConfig:{emitFacade:!0}},e.Event.define("valuechange",i),e.Event.define("valueChange",i),e.ValueChange=s},"3.12.0",{requires:["event-focus","event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/event-valuechange/event-valuechange.js b/lib/yuilib/3.12.0/event-valuechange/event-valuechange.js old mode 100644 new mode 100755 similarity index 90% rename from lib/yuilib/3.9.1/build/event-valuechange/event-valuechange.js rename to lib/yuilib/3.12.0/event-valuechange/event-valuechange.js index f9041c6f3d5..672be640a14 --- a/lib/yuilib/3.9.1/build/event-valuechange/event-valuechange.js +++ b/lib/yuilib/3.12.0/event-valuechange/event-valuechange.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('event-valuechange', function (Y, NAME) { /** @@ -84,7 +90,8 @@ VC = { event = options.e, newVal = domNode && domNode.value, vcData = node._data && node._data[DATA_KEY], // another perf cheat - facade, prevVal; + stopped = 0, + facade, prevVal, stopElement; if (!domNode || !vcData) { VC._stopPolling(node); @@ -104,8 +111,35 @@ VC = { target : (event && event.target) || node }; - Y.Object.each(vcData.notifiers, function (notifier) { - notifier.fire(facade); + Y.Object.some(vcData.notifiers, function (notifier) { + var evt = notifier.handle.evt, + newStopped; + + // support e.stopPropagation() + if (stopped !== 1) { + notifier.fire(facade); + } else if (evt.el === stopElement) { + notifier.fire(facade); + } + + newStopped = evt && evt._facade ? evt._facade.stopped : 0; + + // need to consider the condition in which there are two + // listeners on the same element: + // listener 1 calls e.stopPropagation() + // listener 2 calls e.stopImmediatePropagation() + if (newStopped > stopped) { + stopped = newStopped; + + if (stopped === 1) { + stopElement = evt.el; + } + } + + // support e.stopImmediatePropagation() + if (stopped === 2) { + return true; + } }); VC._refreshTimeout(node); @@ -190,7 +224,7 @@ VC = { vcData.notifiers[Y.stamp(notifier)] = notifier; vcData.interval = setInterval(function () { - VC._poll(node, vcData, options); + VC._poll(node, options); }, VC.POLL_INTERVAL); @@ -459,4 +493,4 @@ Y.Event.define('valueChange', config); // deprecated, but supported for backcomp Y.ValueChange = VC; -}, '3.9.1', {"requires": ["event-focus", "event-synthetic"]}); +}, '3.12.0', {"requires": ["event-focus", "event-synthetic"]}); diff --git a/lib/yuilib/3.9.1/build/exec-command/exec-command-debug.js b/lib/yuilib/3.12.0/exec-command/exec-command-debug.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/exec-command/exec-command-debug.js rename to lib/yuilib/3.12.0/exec-command/exec-command-debug.js index ca315029049..a1ec8199b6d --- a/lib/yuilib/3.9.1/build/exec-command/exec-command-debug.js +++ b/lib/yuilib/3.12.0/exec-command/exec-command-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('exec-command', function (Y, NAME) { @@ -717,4 +723,4 @@ YUI.add('exec-command', function (Y, NAME) { -}, '3.9.1', {"requires": ["frame"]}); +}, '3.12.0', {"requires": ["frame"]}); diff --git a/lib/yuilib/3.9.1/build/exec-command/exec-command-min.js b/lib/yuilib/3.12.0/exec-command/exec-command-min.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/exec-command/exec-command-min.js rename to lib/yuilib/3.12.0/exec-command/exec-command-min.js index 32e481c35d5..80d2c211270 --- a/lib/yuilib/3.9.1/build/exec-command/exec-command-min.js +++ b/lib/yuilib/3.12.0/exec-command/exec-command-min.js @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("exec-command",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r=function(t,n,r){var i=this.getInstance(),s=i.config.doc,o=s.selection.createRange(),u=s.queryCommandValue(t),a,f,l,c,h,p,d;u&&(a=o.htmlText,f=new RegExp(r,"g"),l=a.match(f),l&&(a=a.replace(r+";","").replace(r,""),o.pasteHTML(''),c=s.getElementById("yui-ie-bs"),h=s.createElement("div"),p=s.createElement(n),h.innerHTML=a,c.parentNode!==i.config.doc.body&&(c=c.parentNode),d=h.childNodes,c.parentNode.replaceChild(p,c),e.each(d,function(e){p.appendChild(e)}),o.collapse(),o.moveToElementText&&o.moveToElementText(p),o.select())),this._command(t)};e.extend(n,e.Base,{_lastKey:null,_inst:null,command:function(e,t){var r=n.COMMANDS[e];return r?r.call(this,e,t):this._command(e,t)},_command:function(e,t){var n=this.getInstance();try{try{n.config.doc.execCommand("styleWithCSS",null,1)}catch(r){try{n.config.doc.execCommand("useCSS",null,0)}catch(i){}}n.config.doc.execCommand(e,null,t)}catch(s){}},getInstance:function(){return this._inst||(this._inst=this.get("host").getInstance()),this._inst},initializer:function(){e.mix(this.get("host"),{execCommand:function(e,t){return this.exec.command(e,t)},_execCommand:function(e,t){return this.exec._command(e,t)}}),this.get("host").on("dom:keypress",e.bind(function(e){this._lastKey=e.keyCode},this))},_wrapContent:function(e,t){var n=this.getInstance().host.editorPara&&!t?!0:!1;return n?e="

    "+e+"

    ":e+="
    ",e}},{NAME:"execCommand",NS:"exec",ATTRS:{host:{value:!1}},COMMANDS:{wrap:function(e,t){var n=this.getInstance();return(new n.EditorSelection).wrapContent(t)},inserthtml:function(t,n){var r=this.getInstance();if(r.EditorSelection.hasCursor()||e.UA.ie)return(new r.EditorSelection).insertContent(n);this._command("inserthtml",n)},insertandfocus:function(e,t){var n=this.getInstance(),r,i;return n.EditorSelection.hasCursor()?(t+=n.EditorSelection.CURSOR,r=this.command("inserthtml",t),i=new n.EditorSelection,i.focusCursor(!0,!0)):this.command("inserthtml",t),r},insertbr:function(){var t=this.getInstance(),n=new t.EditorSelection,r="|",i=null,s=e.UA.webkit?"span.Apple-style-span,var":"var",o=function(e){var n=t.Node.create("
    ");return e.insert(n,"before"),n};n._selection.pasteHTML?n._selection.pasteHTML(r):this._command("inserthtml",r),t.all(s).each(function(t){var n=!0,r;e.UA.webkit&&(n=!1,t.get("innerHTML")==="|"&&(n=!0)),n&&(i=o(t),(!i.previous()||!i.previous().test("br"))&&e.UA.gecko&&(r=i.cloneNode(),i.insert(r,"after"),i=r),t.remove())}),e.UA.webkit&&i&&(o(i),n.selectNode(i))},insertimage:function(e,t){return this.command("inserthtml",'')},addclass:function(e,t){var n=this.getInstance();return(new n.EditorSelection).getSelected().addClass(t)},removeclass:function(e,t){var n=this.getInstance();return(new n.EditorSelection).getSelected().removeClass(t)},forecolor:function(t,n){var r=this.getInstance(),i=new r.EditorSelection,s;e.UA.ie||this._command("useCSS",!1);if(r.EditorSelection.hasCursor())return i.isCollapsed?(i.anchorNode&&i.anchorNode.get("innerHTML")===" "?(i.anchorNode.setStyle("color",n),s=i.anchorNode):(s=this.command("inserthtml",''+r.EditorSelection.CURSOR+""),i.focusCursor(!0,!0)),s):this._command(t,n);this._command(t,n)},backcolor:function(t,n){var r=this.getInstance(),i=new r.EditorSelection,s;if(e.UA.gecko||e.UA.opera)t="hilitecolor";e.UA.ie||this._command("useCSS",!1);if(r.EditorSelection.hasCursor())return i.isCollapsed?(i.anchorNode&&i.anchorNode.get("innerHTML")===" "?(i.anchorNode.setStyle("backgroundColor",n),s=i.anchorNode):(s=this.command("inserthtml",''+r.EditorSelection.CURSOR+""),i.focusCursor(!0,!0)),s):this._command(t,n);this._command(t,n)},hilitecolor:function(){return n.COMMANDS.backcolor.apply(this,arguments)},fontname2:function(e,t){this._command("fontname",t);var n=this.getInstance(),r=new n.EditorSelection;r.isCollapsed&&this._lastKey!==32&&r.anchorNode.test("font")&&r.anchorNode.set("face",t)},fontsize2:function(t,n){this._command("fontsize",n);var r=this.getInstance(),i=new r.EditorSelection,s;i.isCollapsed&&i.anchorNode&&this._lastKey!==32&&(e.UA.webkit&&i.anchorNode.getStyle("lineHeight")&&i.anchorNode.setStyle("lineHeight",""),i.anchorNode.test("font")?i.anchorNode.set("size",n):e.UA.gecko&&(s=i.anchorNode.ancestor(r.EditorSelection.DEFAULT_BLOCK_TAG),s&&s.setStyle("fontSize","")))},insertunorderedlist:function(){this.command("list","ul")},insertorderedlist:function(){this.command("list","ol")},list:function(t,n){var r=this.getInstance(),i,s=this,o="dir",u="yui3-touched",a,f,l,c,h,p,d,v,m,g,y=r.host.editorPara?!0:!1,b,w,E,S,x=new r.EditorSelection;t="insert"+(n==="ul"?"un":"")+"orderedlist";if(e.UA.ie&&!x.isCollapsed){f=x._selection,i=f.htmlText,l=r.Node.create(i)||r.one("body");if(l.test("li")||l.one("li")){this._command(t,null);return}l.test(n)?(c=f.item?f.item(0):f.parentElement(),h=r.one(c),g=h.all("li"),p="
    ",g.each(function(e){p=s._wrapContent(e.get("innerHTML"))}),p+="
    ",d=r.Node.create(p),h.get("parentNode").test("div")&&(h=h.get("parentNode")),h&&h.hasAttribute(o)&&(y?d.all("p").setAttribute(o,h.getAttribute(o)):d.setAttribute(o,h.getAttribute(o))),y?h.replace(d.get("innerHTML")):h.replace(d),f.moveToElementText&&f.moveToElementText(d._node),f.select()):(v=e.one(f.parentElement()),v.test(r.EditorSelection.BLOCKS)||(v=v.ancestor(r.EditorSelection.BLOCKS)),v&&v.hasAttribute(o)&&(a=v.getAttribute(o)),i.indexOf("
    ")>-1?i=i.split(/
    /i):(b=r.Node.create(i),ps=b?b.all("p"):null,ps&&ps.size()?(i=[],ps.each(function(e){i.push(e.get("innerHTML"))})):i=[i]),m="<"+n+' id="ie-list">',e.each(i,function(e){var t=r.Node.create(e);t&&t.test("p")&&(t.hasAttribute(o)&&(a=t.getAttribute(o)),e=t.get("innerHTML")),m+="
  • "+e+"
  • "}),m+="",f.pasteHTML(m),c=r.config.doc.getElementById("ie-list"),c.id="",a&&c.setAttribute(o,a),f.moveToElementText&&f.moveToElementText(c) -,f.select())}else e.UA.ie?(v=r.one(x._selection.parentElement()),v.test("p")?(v&&v.hasAttribute(o)&&(a=v.getAttribute(o)),i=e.EditorSelection.getText(v),i===""?(w="",a&&(w=' dir="'+a+'"'),m=r.Node.create(e.Lang.sub("<{tag}{dir}>
  • ",{tag:n,dir:w})),v.replace(m),x.selectNode(m.one("li"))):this._command(t,null)):this._command(t,null)):(r.all(n).addClass(u),x.anchorNode.test(r.EditorSelection.BLOCKS)?v=x.anchorNode:v=x.anchorNode.ancestor(r.EditorSelection.BLOCKS),v||(v=x.anchorNode.one(r.EditorSelection.BLOCKS)),v&&v.hasAttribute(o)&&(a=v.getAttribute(o)),v&&v.test(n)?(E=v.ancestor("p"),i=r.Node.create("
    "),c=v.all("li"),c.each(function(e){i.append(s._wrapContent(e.get("innerHTML"),E))}),a&&(y?i.all("p").setAttribute(o,a):i.setAttribute(o,a)),y&&(i=r.Node.create(i.get("innerHTML"))),S=i.get("firstChild"),v.replace(i),x.selectNode(S)):this._command(t,null),m=r.all(n),a&&m.size()&&m.each(function(e){e.hasClass(u)||e.setAttribute(o,a)}),m.removeClass(u))},justify:function(t,n){if(e.UA.webkit){var r=this.getInstance(),i=new r.EditorSelection,s=i.anchorNode,o,u=s.getStyle("backgroundColor");this._command(n),i=new r.EditorSelection,i.anchorNode.test("div")&&(o=""+i.anchorNode.get("innerHTML")+"",i.anchorNode.set("innerHTML",o),i.anchorNode.one("span").setStyle("backgroundColor",u),i.selectNode(i.anchorNode.one("span")))}else this._command(n)},justifycenter:function(){this.command("justify","justifycenter")},justifyleft:function(){this.command("justify","justifyleft")},justifyright:function(){this.command("justify","justifyright")},justifyfull:function(){this.command("justify","justifyfull")}}}),e.UA.ie&&(n.COMMANDS.bold=function(){r.call(this,"bold","b","FONT-WEIGHT: bold")},n.COMMANDS.italic=function(){r.call(this,"italic","i","FONT-STYLE: italic")},n.COMMANDS.underline=function(){r.call(this,"underline","u","TEXT-DECORATION: underline")}),e.namespace("Plugin"),e.Plugin.ExecCommand=n},"3.9.1",{requires:["frame"]}); +,f.select())}else e.UA.ie?(v=r.one(x._selection.parentElement()),v.test("p")?(v&&v.hasAttribute(o)&&(a=v.getAttribute(o)),i=e.EditorSelection.getText(v),i===""?(w="",a&&(w=' dir="'+a+'"'),m=r.Node.create(e.Lang.sub("<{tag}{dir}>
  • ",{tag:n,dir:w})),v.replace(m),x.selectNode(m.one("li"))):this._command(t,null)):this._command(t,null)):(r.all(n).addClass(u),x.anchorNode.test(r.EditorSelection.BLOCKS)?v=x.anchorNode:v=x.anchorNode.ancestor(r.EditorSelection.BLOCKS),v||(v=x.anchorNode.one(r.EditorSelection.BLOCKS)),v&&v.hasAttribute(o)&&(a=v.getAttribute(o)),v&&v.test(n)?(E=v.ancestor("p"),i=r.Node.create("
    "),c=v.all("li"),c.each(function(e){i.append(s._wrapContent(e.get("innerHTML"),E))}),a&&(y?i.all("p").setAttribute(o,a):i.setAttribute(o,a)),y&&(i=r.Node.create(i.get("innerHTML"))),S=i.get("firstChild"),v.replace(i),x.selectNode(S)):this._command(t,null),m=r.all(n),a&&m.size()&&m.each(function(e){e.hasClass(u)||e.setAttribute(o,a)}),m.removeClass(u))},justify:function(t,n){if(e.UA.webkit){var r=this.getInstance(),i=new r.EditorSelection,s=i.anchorNode,o,u=s.getStyle("backgroundColor");this._command(n),i=new r.EditorSelection,i.anchorNode.test("div")&&(o=""+i.anchorNode.get("innerHTML")+"",i.anchorNode.set("innerHTML",o),i.anchorNode.one("span").setStyle("backgroundColor",u),i.selectNode(i.anchorNode.one("span")))}else this._command(n)},justifycenter:function(){this.command("justify","justifycenter")},justifyleft:function(){this.command("justify","justifyleft")},justifyright:function(){this.command("justify","justifyright")},justifyfull:function(){this.command("justify","justifyfull")}}}),e.UA.ie&&(n.COMMANDS.bold=function(){r.call(this,"bold","b","FONT-WEIGHT: bold")},n.COMMANDS.italic=function(){r.call(this,"italic","i","FONT-STYLE: italic")},n.COMMANDS.underline=function(){r.call(this,"underline","u","TEXT-DECORATION: underline")}),e.namespace("Plugin"),e.Plugin.ExecCommand=n},"3.12.0",{requires:["frame"]}); diff --git a/lib/yuilib/3.9.1/build/exec-command/exec-command.js b/lib/yuilib/3.12.0/exec-command/exec-command.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/exec-command/exec-command.js rename to lib/yuilib/3.12.0/exec-command/exec-command.js index 4ed685e7956..9a41c455f58 --- a/lib/yuilib/3.9.1/build/exec-command/exec-command.js +++ b/lib/yuilib/3.12.0/exec-command/exec-command.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('exec-command', function (Y, NAME) { @@ -713,4 +719,4 @@ YUI.add('exec-command', function (Y, NAME) { -}, '3.9.1', {"requires": ["frame"]}); +}, '3.12.0', {"requires": ["frame"]}); diff --git a/lib/yuilib/3.9.1/build/features/features-debug.js b/lib/yuilib/3.12.0/features/features-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/features/features-debug.js rename to lib/yuilib/3.12.0/features/features-debug.js index b662c367961..2359e3dc6ef --- a/lib/yuilib/3.9.1/build/features/features-debug.js +++ b/lib/yuilib/3.12.0/features/features-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('features', function (Y, NAME) { var feature_tests = {}; @@ -114,7 +120,7 @@ Y.mix(Y.namespace('Features'), { // Y.Features.test("load", "1"); // caps=1:1;2:0;3:1; -/* This file is auto-generated by (yogi loader --yes --mix --start ../) */ +/* This file is auto-generated by (yogi.js loader --mix --yes) */ /*jshint maxlen:900, eqeqeq: false */ var add = Y.Features.add; // app-transitions-native @@ -407,4 +413,4 @@ add('load', '22', { "when": "after" }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/features/features-min.js b/lib/yuilib/3.12.0/features/features-min.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/features/features-min.js rename to lib/yuilib/3.12.0/features/features-min.js index 7d39767bd3f..f17dfa9a798 --- a/lib/yuilib/3.9.1/build/features/features-min.js +++ b/lib/yuilib/3.12.0/features/features-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"3.9.1",{requires:["yui-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/features/features.js b/lib/yuilib/3.12.0/features/features.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/features/features.js rename to lib/yuilib/3.12.0/features/features.js index c78d13e8460..5eb70481b0e --- a/lib/yuilib/3.9.1/build/features/features.js +++ b/lib/yuilib/3.12.0/features/features.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('features', function (Y, NAME) { var feature_tests = {}; @@ -113,7 +119,7 @@ Y.mix(Y.namespace('Features'), { // Y.Features.test("load", "1"); // caps=1:1;2:0;3:1; -/* This file is auto-generated by (yogi loader --yes --mix --start ../) */ +/* This file is auto-generated by (yogi.js loader --mix --yes) */ /*jshint maxlen:900, eqeqeq: false */ var add = Y.Features.add; // app-transitions-native @@ -406,4 +412,4 @@ add('load', '22', { "when": "after" }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/file-flash/file-flash-debug.js b/lib/yuilib/3.12.0/file-flash/file-flash-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/file-flash/file-flash-debug.js rename to lib/yuilib/3.12.0/file-flash/file-flash-debug.js index ec1f14dd76e..4ab5704cb4b --- a/lib/yuilib/3.9.1/build/file-flash/file-flash-debug.js +++ b/lib/yuilib/3.12.0/file-flash/file-flash-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('file-flash', function (Y, NAME) { /** @@ -338,4 +344,4 @@ YUI.add('file-flash', function (Y, NAME) { Y.FileFlash = FileFlash; -}, '3.9.1', {"requires": ["base"]}); +}, '3.12.0', {"requires": ["base"]}); diff --git a/lib/yuilib/3.9.1/build/file-flash/file-flash-min.js b/lib/yuilib/3.12.0/file-flash/file-flash-min.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/file-flash/file-flash-min.js rename to lib/yuilib/3.12.0/file-flash/file-flash-min.js index ec388b89daa..9cee70ff338 --- a/lib/yuilib/3.9.1/build/file-flash/file-flash-min.js +++ b/lib/yuilib/3.12.0/file-flash/file-flash-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("file-flash",function(e,t){var n=function(e){n.superclass.constructor.apply(this,arguments)};e.extend(n,e.Base,{initializer:function(t){this.get("id")||this._set("id",e.guid("file"))},_swfEventHandler:function(e){if(e.id===this.get("id"))switch(e.type){case"uploadstart":this.fire("uploadstart",{uploader:this.get("uploader")});break;case"uploadprogress":this.fire("uploadprogress",{originEvent:e,bytesLoaded:e.bytesLoaded,bytesTotal:e.bytesTotal,percentLoaded:Math.min(100,Math.round(1e4*e.bytesLoaded/e.bytesTotal)/100)}),this._set("bytesUploaded",e.bytesLoaded);break;case"uploadcomplete":this.fire("uploadfinished",{originEvent:e});break;case"uploadcompletedata":this.fire("uploadcomplete",{originEvent:e,data:e.data});break;case"uploadcancel":this.fire("uploadcancel",{originEvent:e});break;case"uploaderror":this.fire("uploaderror",{originEvent:e,status:e.status,statusText:e.message,source:e.source})}},startUpload:function(e,t,n){if(this.get("uploader")){var r=this.get("uploader"),i=n||"Filedata",s=this.get("id"),o=t||null;this._set("bytesUploaded",0),r.on("uploadstart",this._swfEventHandler,this),r.on("uploadprogress",this._swfEventHandler,this),r.on("uploadcomplete",this._swfEventHandler,this),r.on("uploadcompletedata",this._swfEventHandler,this),r.on("uploaderror",this._swfEventHandler,this),r.callSWF("upload",[s,e,o,i])}},cancelUpload:function(){this.get("uploader")&&(this.get("uploader").callSWF("cancel",[this.get("id")]),this.fire("uploadcancel"))}},{NAME:"file",TYPE:"flash",ATTRS:{id:{writeOnce:"initOnly",value:null},size:{writeOnce:"initOnly",value:0},name:{writeOnce:"initOnly",value:null},dateCreated:{writeOnce:"initOnly",value:null},dateModified:{writeOnce:"initOnly",value:null},bytesUploaded:{readOnly:!0,value:0},type:{writeOnce:"initOnly",value:null},uploader:{writeOnce:"initOnly",value:null}}}),e.FileFlash=n},"3.9.1",{requires:["base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("file-flash",function(e,t){var n=function(e){n.superclass.constructor.apply(this,arguments)};e.extend(n,e.Base,{initializer:function(t){this.get("id")||this._set("id",e.guid("file"))},_swfEventHandler:function(e){if(e.id===this.get("id"))switch(e.type){case"uploadstart":this.fire("uploadstart",{uploader:this.get("uploader")});break;case"uploadprogress":this.fire("uploadprogress",{originEvent:e,bytesLoaded:e.bytesLoaded,bytesTotal:e.bytesTotal,percentLoaded:Math.min(100,Math.round(1e4*e.bytesLoaded/e.bytesTotal)/100)}),this._set("bytesUploaded",e.bytesLoaded);break;case"uploadcomplete":this.fire("uploadfinished",{originEvent:e});break;case"uploadcompletedata":this.fire("uploadcomplete",{originEvent:e,data:e.data});break;case"uploadcancel":this.fire("uploadcancel",{originEvent:e});break;case"uploaderror":this.fire("uploaderror",{originEvent:e,status:e.status,statusText:e.message,source:e.source})}},startUpload:function(e,t,n){if(this.get("uploader")){var r=this.get("uploader"),i=n||"Filedata",s=this.get("id"),o=t||null;this._set("bytesUploaded",0),r.on("uploadstart",this._swfEventHandler,this),r.on("uploadprogress",this._swfEventHandler,this),r.on("uploadcomplete",this._swfEventHandler,this),r.on("uploadcompletedata",this._swfEventHandler,this),r.on("uploaderror",this._swfEventHandler,this),r.callSWF("upload",[s,e,o,i])}},cancelUpload:function(){this.get("uploader")&&(this.get("uploader").callSWF("cancel",[this.get("id")]),this.fire("uploadcancel"))}},{NAME:"file",TYPE:"flash",ATTRS:{id:{writeOnce:"initOnly",value:null},size:{writeOnce:"initOnly",value:0},name:{writeOnce:"initOnly",value:null},dateCreated:{writeOnce:"initOnly",value:null},dateModified:{writeOnce:"initOnly",value:null},bytesUploaded:{readOnly:!0,value:0},type:{writeOnce:"initOnly",value:null},uploader:{writeOnce:"initOnly",value:null}}}),e.FileFlash=n},"3.12.0",{requires:["base"]}); diff --git a/lib/yuilib/3.9.1/build/file-flash/file-flash.js b/lib/yuilib/3.12.0/file-flash/file-flash.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/file-flash/file-flash.js rename to lib/yuilib/3.12.0/file-flash/file-flash.js index ec1f14dd76e..4ab5704cb4b --- a/lib/yuilib/3.9.1/build/file-flash/file-flash.js +++ b/lib/yuilib/3.12.0/file-flash/file-flash.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('file-flash', function (Y, NAME) { /** @@ -338,4 +344,4 @@ YUI.add('file-flash', function (Y, NAME) { Y.FileFlash = FileFlash; -}, '3.9.1', {"requires": ["base"]}); +}, '3.12.0', {"requires": ["base"]}); diff --git a/lib/yuilib/3.9.1/build/file-html5/file-html5-debug.js b/lib/yuilib/3.12.0/file-html5/file-html5-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/file-html5/file-html5-debug.js rename to lib/yuilib/3.12.0/file-html5/file-html5-debug.js index 73599c48c6a..fbdeeabf4ba --- a/lib/yuilib/3.9.1/build/file-html5/file-html5-debug.js +++ b/lib/yuilib/3.12.0/file-html5/file-html5-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('file-html5', function (Y, NAME) { /** @@ -493,4 +499,4 @@ YUI.add('file-html5', function (Y, NAME) { Y.FileHTML5 = FileHTML5; -}, '3.9.1', {"requires": ["base"]}); +}, '3.12.0', {"requires": ["base"]}); diff --git a/lib/yuilib/3.9.1/build/file-html5/file-html5-min.js b/lib/yuilib/3.12.0/file-html5/file-html5-min.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/file-html5/file-html5-min.js rename to lib/yuilib/3.12.0/file-html5/file-html5-min.js index f5eaa0db527..14e50e00606 --- a/lib/yuilib/3.9.1/build/file-html5/file-html5-min.js +++ b/lib/yuilib/3.12.0/file-html5/file-html5-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("file-html5",function(e,t){var n=e.Lang,r=e.bind,i=e.config.win,s=function(e){var t=null;s.isValidFile(e)?t=e:s.isValidFile(e.file)?t=e.file:t=!1,s.superclass.constructor.apply(this,arguments),t&&s.canUpload()&&(this.get("file")||this._set("file",t),this.get("name")||this._set("name",t.name||t.fileName),this.get("size")!=(t.size||t.fileSize)&&this._set("size",t.size||t.fileSize),this.get("type")||this._set("type",t.type),t.hasOwnProperty("lastModifiedDate")&&!this.get("dateModified")&&this._set("dateModified",t.lastModifiedDate))};e.extend(s,e.Base,{initializer:function(t){this.get("id")||this._set("id",e.guid("file"))},_uploadEventHandler:function(e){var t=this.get("xhr");switch(e.type){case"progress":this.fire("uploadprogress",{originEvent:e,bytesLoaded:e.loaded,bytesTotal:this.get("size"),percentLoaded:Math.min(100,Math.round(1e4*e.loaded/this.get("size"))/100)}),this._set("bytesUploaded",e.loaded);break;case"load":if(t.status>=200&&t.status<=299){this.fire("uploadcomplete",{originEvent:e,data:e.target.responseText});var n=t.upload,r=this.get("boundEventHandler");n.removeEventListener("progress",r),n.removeEventListener("error",r),n.removeEventListener("abort",r),t.removeEventListener("load",r),t.removeEventListener("error",r),t.removeEventListener("readystatechange",r),this._set("xhr",null)}else this.fire("uploaderror",{originEvent:e,status:t.status,statusText:t.statusText,source:"http"});break;case"error":this.fire("uploaderror",{originEvent:e,status:t.status,statusText:t.statusText,source:"io"});break;case"abort":this.fire("uploadcancel",{originEvent:e});break;case"readystatechange":this.fire("readystatechange",{readyState:e.target.readyState,originEvent:e})}},startUpload:function(t,n,i){this._set("bytesUploaded",0),this._set("xhr",new XMLHttpRequest),this._set("boundEventHandler",r(this._uploadEventHandler,this));var s=new FormData,o=i||"Filedata",u=this.get("xhr"),a=this.get("xhr").upload,f=this.get("boundEventHandler");e.each(n,function(e,t){s.append(t,e)}),s.append(o,this.get("file")),u.addEventListener("loadstart",f,!1),a.addEventListener("progress",f,!1),u.addEventListener("load",f,!1),u.addEventListener("error",f,!1),a.addEventListener("error",f,!1),a.addEventListener("abort",f,!1),u.addEventListener("abort",f,!1),u.addEventListener("loadend",f,!1),u.addEventListener("readystatechange",f,!1),u.open("POST",t,!0),u.withCredentials=this.get("xhrWithCredentials"),e.each(this.get("xhrHeaders"),function(e,t){u.setRequestHeader(t,e)}),u.send(s),this.fire("uploadstart",{xhr:u})},cancelUpload:function(){this.get("xhr").abort()}},{NAME:"file",TYPE:"html5",ATTRS:{id:{writeOnce:"initOnly",value:null},size:{writeOnce:"initOnly",value:0},name:{writeOnce:"initOnly",value:null},dateCreated:{writeOnce:"initOnly",value:null},dateModified:{writeOnce:"initOnly",value:null},bytesUploaded:{readOnly:!0,value:0},type:{writeOnce:"initOnly",value:null},file:{writeOnce:"initOnly",value:null},xhr:{readOnly:!0,value:null},xhrHeaders:{value:{}},xhrWithCredentials:{value:!0},boundEventHandler:{readOnly:!0,value:null}},isValidFile:function(e){return i&&i.File&&e instanceof File},canUpload:function(){return i&&i.FormData&&i.XMLHttpRequest}}),e.FileHTML5=s},"3.9.1",{requires:["base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("file-html5",function(e,t){var n=e.Lang,r=e.bind,i=e.config.win,s=function(e){var t=null;s.isValidFile(e)?t=e:s.isValidFile(e.file)?t=e.file:t=!1,s.superclass.constructor.apply(this,arguments),t&&s.canUpload()&&(this.get("file")||this._set("file",t),this.get("name")||this._set("name",t.name||t.fileName),this.get("size")!=(t.size||t.fileSize)&&this._set("size",t.size||t.fileSize),this.get("type")||this._set("type",t.type),t.hasOwnProperty("lastModifiedDate")&&!this.get("dateModified")&&this._set("dateModified",t.lastModifiedDate))};e.extend(s,e.Base,{initializer:function(t){this.get("id")||this._set("id",e.guid("file"))},_uploadEventHandler:function(e){var t=this.get("xhr");switch(e.type){case"progress":this.fire("uploadprogress",{originEvent:e,bytesLoaded:e.loaded,bytesTotal:this.get("size"),percentLoaded:Math.min(100,Math.round(1e4*e.loaded/this.get("size"))/100)}),this._set("bytesUploaded",e.loaded);break;case"load":if(t.status>=200&&t.status<=299){this.fire("uploadcomplete",{originEvent:e,data:e.target.responseText});var n=t.upload,r=this.get("boundEventHandler");n.removeEventListener("progress",r),n.removeEventListener("error",r),n.removeEventListener("abort",r),t.removeEventListener("load",r),t.removeEventListener("error",r),t.removeEventListener("readystatechange",r),this._set("xhr",null)}else this.fire("uploaderror",{originEvent:e,status:t.status,statusText:t.statusText,source:"http"});break;case"error":this.fire("uploaderror",{originEvent:e,status:t.status,statusText:t.statusText,source:"io"});break;case"abort":this.fire("uploadcancel",{originEvent:e});break;case"readystatechange":this.fire("readystatechange",{readyState:e.target.readyState,originEvent:e})}},startUpload:function(t,n,i){this._set("bytesUploaded",0),this._set("xhr",new XMLHttpRequest),this._set("boundEventHandler",r(this._uploadEventHandler,this));var s=new FormData,o=i||"Filedata",u=this.get("xhr"),a=this.get("xhr").upload,f=this.get("boundEventHandler");e.each(n,function(e,t){s.append(t,e)}),s.append(o,this.get("file")),u.addEventListener("loadstart",f,!1),a.addEventListener("progress",f,!1),u.addEventListener("load",f,!1),u.addEventListener("error",f,!1),a.addEventListener("error",f,!1),a.addEventListener("abort",f,!1),u.addEventListener("abort",f,!1),u.addEventListener("loadend",f,!1),u.addEventListener("readystatechange",f,!1),u.open("POST",t,!0),u.withCredentials=this.get("xhrWithCredentials"),e.each(this.get("xhrHeaders"),function(e,t){u.setRequestHeader(t,e)}),u.send(s),this.fire("uploadstart",{xhr:u})},cancelUpload:function(){this.get("xhr").abort()}},{NAME:"file",TYPE:"html5",ATTRS:{id:{writeOnce:"initOnly",value:null},size:{writeOnce:"initOnly",value:0},name:{writeOnce:"initOnly",value:null},dateCreated:{writeOnce:"initOnly",value:null},dateModified:{writeOnce:"initOnly",value:null},bytesUploaded:{readOnly:!0,value:0},type:{writeOnce:"initOnly",value:null},file:{writeOnce:"initOnly",value:null},xhr:{readOnly:!0,value:null},xhrHeaders:{value:{}},xhrWithCredentials:{value:!0},boundEventHandler:{readOnly:!0,value:null}},isValidFile:function(e){return i&&i.File&&e instanceof File},canUpload:function(){return i&&i.FormData&&i.XMLHttpRequest}}),e.FileHTML5=s},"3.12.0",{requires:["base"]}); diff --git a/lib/yuilib/3.9.1/build/file-html5/file-html5.js b/lib/yuilib/3.12.0/file-html5/file-html5.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/file-html5/file-html5.js rename to lib/yuilib/3.12.0/file-html5/file-html5.js index 73599c48c6a..fbdeeabf4ba --- a/lib/yuilib/3.9.1/build/file-html5/file-html5.js +++ b/lib/yuilib/3.12.0/file-html5/file-html5.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('file-html5', function (Y, NAME) { /** @@ -493,4 +499,4 @@ YUI.add('file-html5', function (Y, NAME) { Y.FileHTML5 = FileHTML5; -}, '3.9.1', {"requires": ["base"]}); +}, '3.12.0', {"requires": ["base"]}); diff --git a/lib/yuilib/3.9.1/build/file/file-debug.js b/lib/yuilib/3.12.0/file/file-debug.js old mode 100644 new mode 100755 similarity index 79% rename from lib/yuilib/3.9.1/build/file/file-debug.js rename to lib/yuilib/3.12.0/file/file-debug.js index c7ffe8d3e4b..69701a2475f --- a/lib/yuilib/3.9.1/build/file/file-debug.js +++ b/lib/yuilib/3.12.0/file/file-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('file', function (Y, NAME) { /** @@ -28,4 +34,4 @@ YUI.add('file', function (Y, NAME) { Y.File = Y.FileFlash; } -}, '3.9.1', {"requires": ["file-flash", "file-html5"]}); +}, '3.12.0', {"requires": ["file-flash", "file-html5"]}); diff --git a/lib/yuilib/3.12.0/file/file-min.js b/lib/yuilib/3.12.0/file/file-min.js new file mode 100755 index 00000000000..f7e80e859c2 --- /dev/null +++ b/lib/yuilib/3.12.0/file/file-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("file",function(e,t){var n=e.config.win;n&&n.File&&n.FormData&&n.XMLHttpRequest?e.File=e.FileHTML5:e.File=e.FileFlash},"3.12.0",{requires:["file-flash","file-html5"]}); diff --git a/lib/yuilib/3.9.1/build/file/file.js b/lib/yuilib/3.12.0/file/file.js old mode 100644 new mode 100755 similarity index 79% rename from lib/yuilib/3.9.1/build/file/file.js rename to lib/yuilib/3.12.0/file/file.js index c7ffe8d3e4b..69701a2475f --- a/lib/yuilib/3.9.1/build/file/file.js +++ b/lib/yuilib/3.12.0/file/file.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('file', function (Y, NAME) { /** @@ -28,4 +34,4 @@ YUI.add('file', function (Y, NAME) { Y.File = Y.FileFlash; } -}, '3.9.1', {"requires": ["file-flash", "file-html5"]}); +}, '3.12.0', {"requires": ["file-flash", "file-html5"]}); diff --git a/lib/yuilib/3.9.1/build/frame/frame-debug.js b/lib/yuilib/3.12.0/frame/frame-debug.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/frame/frame-debug.js rename to lib/yuilib/3.12.0/frame/frame-debug.js index 492c1c26fb0..aa6cf91d1ff --- a/lib/yuilib/3.9.1/build/frame/frame-debug.js +++ b/lib/yuilib/3.12.0/frame/frame-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('frame', function (Y, NAME) { /*jshint maxlen: 500 */ @@ -1043,4 +1049,4 @@ YUI.add('frame', function (Y, NAME) { -}, '3.9.1', {"requires": ["base", "node", "selector-css3", "yui-throttle"]}); +}, '3.12.0', {"requires": ["base", "node", "selector-css3", "yui-throttle"]}); diff --git a/lib/yuilib/3.9.1/build/frame/frame-min.js b/lib/yuilib/3.12.0/frame/frame-min.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/frame/frame-min.js rename to lib/yuilib/3.12.0/frame/frame-min.js index b759851f7ac..ee1c442189a --- a/lib/yuilib/3.9.1/build/frame/frame-min.js +++ b/lib/yuilib/3.12.0/frame/frame-min.js @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("frame",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.extend(n,e.Base,{_ready:null,_rendered:null,_iframe:null,_instance:null,_create:function(t){var r,i="",s,o=this.get("src")===n.ATTRS.src.value,u=this.get("extracss")?'":"";this._iframe=e.one(e.config.doc.createElement("iframe")),this._iframe.setAttrs(n.IFRAME_ATTRS),this._iframe.setStyle("visibility","hidden"),this._iframe.set("src",this.get("src")),this.get("container").append(this._iframe),this._iframe.set("height","99%"),o&&(i=e.Lang.sub(n.PAGE_HTML,{DIR:this.get("dir"),LANG:this.get("lang"),TITLE:this.get("title"),META:n.META,LINKED_CSS:this.get("linkedcss"),CONTENT:this.get("content"),BASE_HREF:this.get("basehref"),DEFAULT_CSS:n.DEFAULT_CSS,EXTRA_CSS:u}),e.config.doc.compatMode!=="BackCompat"&&(i=n.getDocType()+"\n"+i)),r=this._resolveWinDoc(),i&&(r.doc.open(),r.doc.write(i),r.doc.close()),r.doc.documentElement?t(r):s=e.later(1,this,function(){r.doc&&r.doc.documentElement&&(t(r),s.cancel())},null,!0)},_resolveWinDoc:function(t){var n=t?t:{};return n.win=e.Node.getDOMNode(this._iframe.get("contentWindow")),n.doc=e.Node.getDOMNode(this._iframe.get("contentWindow.document")),n.doc||(n.doc=e.config.doc),n.win||(n.win=e.config.win),n},_onDomEvent:function(t){var n,r;if(!e.Node.getDOMNode(this._iframe))return;t.frameX=t.frameY=0,(t.pageX>0||t.pageY>0)&&t.type.substring(0,3)!=="key"&&(r=this._instance.one("win"),n=this._iframe.getXY(),t.frameX=n[0]+t.pageX-r.get("scrollLeft"),t.frameY=n[1]+t.pageY-r.get("scrollTop")),t.frameTarget=t.target,t.frameCurrentTarget=t.currentTarget,t.frameEvent=t,this.fire("dom:"+t.type,t)},initializer:function(){this.publish("ready",{emitFacade:!0,defaultFn:this._defReadyFn})},destructor:function(){var e=this.getInstance();e.one("doc").detachAll(),e=null,this._iframe.remove()},_DOMPaste:function(e){var t=this.getInstance(),n="",r=t.config.win;e._event.originalTarget&&(n=e._event.originalTarget),e._event.clipboardData&&(n=e._event.clipboardData.getData("Text")),r.clipboardData&&(n=r.clipboardData.getData("Text"),n===""&&(r.clipboardData.setData("Text",n)||(n=null))),e.frameTarget=e.target,e.frameCurrentTarget=e.currentTarget,e.frameEvent=e,n?e.clipboardData={data:n,getData:function(){return n}}:e.clipboardData=null,this.fire("dom:paste",e)},_defReadyFn:function(){var t=this.getInstance();e.each(n.DOM_EVENTS,function(r,i){var s=e.bind(this._onDomEvent,this),o=e.UA.ie&&n.THROTTLE_TIME>0?e.throttle(s,n.THROTTLE_TIME):s;t.Node.DOM_EVENTS[i]||(t.Node.DOM_EVENTS[i]=1),r===1&&i!=="focus"&&i!=="blur"&&i!=="paste"&&(i.substring(0,3)==="key"?t.on(i,o,t.config.doc):t.on(i,s,t.config.doc))},this),t.Node.DOM_EVENTS.paste=1,t.on("paste",e.bind(this._DOMPaste,this),t.one("body")),t.on("focus",e.bind(this._onDomEvent,this),t.config.win),t.on("blur",e.bind(this._onDomEvent,this),t.config.win),t.__use=t.use,t.use=e.bind(this.use,this),this._iframe.setStyles({visibility:"inherit"}),t.one("body").setStyle("display","block")},_fixIECursors:function(){var e=this.getInstance(),t=e.all("table"),n=e.all("br"),r;t.size()&&n.size()&&(r=t.item(0).get("sourceIndex"),n.each(function(t){var n=t.get("parentNode"),i=n.get("children"),s=n.all(">br");n.test("div")&&(i.size()>2?t.replace(e.Node.create("")):t.get("sourceIndex")>r?s.size()&&t.replace(e.Node.create("")):s.size()>1&&t.replace(e.Node.create("")))}))},_onContentReady:function(t){if(!this._ready){this._ready=!0;var n=this.getInstance(),r=e.clone(this.get("use"));this.fire("contentready"),t&&(n.config.doc=e.Node.getDOMNode(t.target)),r.push(e.bind(function(){n.EditorSelection&&(n.EditorSelection.DEFAULT_BLOCK_TAG=this.get("defaultblock")),this.get("designMode")&&(e.UA.ie?(n.config.doc.body.contentEditable="true",this._ieSetBodyHeight(),n.on("keyup",e.bind(this._ieSetBodyHeight,this),n.config.doc)):n.config.doc.designMode="on"),this.fire("ready")},this)),n.use.apply(n,r),n.one("doc").get("documentElement").addClass("yui-js-enabled")}},_ieHeightCounter:null,_ieSetBodyHeight:function(t){this._ieHeightCounter||(this._ieHeightCounter=0),this._ieHeightCounter++;var n=!1,r,i,s;t||(n=!0);if(t){switch(t.keyCode){case 8:case 13:n=!0}if(t.ctrlKey||t.shiftKey)n=!0}if(n)try{r=this.getInstance(),i=this._iframe.get("offsetHeight"),s=r.config.doc.body.scrollHeight,i>s?(i=i-15+"px",r.config.doc.body.style.height=i):r.config.doc.body.style.height="auto"}catch(t){this._ieHeightCounter<100&&e.later(200,this,this._ieSetBodyHeight)}},_resolveBaseHref:function(t){if(!t||t==="")t=e.config.doc.location.href,t.indexOf("?")!==-1&&(t=t.substring(0,t.indexOf("?"))),t=t.substring(0,t.lastIndexOf("/"))+"/";return t},_getHTML:function(e){if(this._ready){var t=this.getInstance();e=t.one("body").get("innerHTML")}return e},_setHTML:function(t){if(this._ready){var n=this.getInstance();n.one("body").set("innerHTML",t)}else this.on("contentready",e.bind(function(e){var t=this.getInstance();t.one("body").set("innerHTML",e)},this,t));return t},_getLinkedCSS:function(t){e.Lang.isArray(t)||(t=[t]);var n="";return this._ready?n=t:e.each(t,function(e){e!==""&&(n+='')}),n},_setLinkedCSS:function(e){if(this._ready){var t=this.getInstance();t.Get.css(e)}return e},_setExtraCSS:function(e){if(this._ready){var t=this.getInstance(),n=t.one("#extra_css");n.remove(),t.one("head").append('")}return e},_instanceLoaded:function(t){this._instance=t,this._onContentReady();var n=this._instance.config.doc;if(this.get("designMode")&&!e.UA.ie)try{n.execCommand("styleWithCSS",!1,!1),n.execCommand("insertbronreturn",!1,!1)}catch(r){}},use:function(){var t=this.getInstance(),n=e.Array(arguments),r=!1;e.Lang.isFunction(n[n.length-1])&&(r=n.pop()),r&&n.push(function(){r.apply(t,arguments)}),t.__use.apply(t,n)},delegate:function(e,t,n,r){var i=this.getInstance();return i?(r||(r=n,n="body"),i.delegate(e,t,n,r)):!1},getInstance:function(){return this._instance -},render:function(t){return this._rendered?this:(this._rendered=!0,t&&this.set("container",t),this._create(e.bind(function(t){var n,r,i=e.bind(function(e){this._instanceLoaded(e)},this),s=e.clone(this.get("use")),o={debug:!1,win:t.win,doc:t.doc},u=e.bind(function(){o=this._resolveWinDoc(o),n=YUI(o),n.host=this.get("host");try{n.use("node-base",i),r&&clearInterval(r)}catch(e){r=setInterval(function(){u()},350)}},this);s.push(u),e.use.apply(e,s)},this)),this)},_handleFocus:function(){var e=this.getInstance(),t=new e.EditorSelection,n,r,i,s;t.anchorNode&&(n=t.anchorNode,n.test("p")&&n.get("innerHTML")===""&&(n=n.get("parentNode")),r=n.get("childNodes"),r.size()&&(r.item(0).test("br")?t.selectNode(n,!0,!1):r.item(0).test("p")?(n=r.item(0).one("br.yui-cursor"),n&&(n=n.get("parentNode")),n||(n=r.item(0).get("firstChild")),n||(n=r.item(0)),n&&t.selectNode(n,!0,!1)):(i=e.one("br.yui-cursor"),i&&(s=i.get("parentNode"),s&&t.selectNode(s,!0,!1)))))},focus:function(t){if(e.UA.ie&&e.UA.ie<9){try{e.one("win").focus(),this.getInstance()&&this.getInstance().one("win")&&this.getInstance().one("win").focus()}catch(n){}t===!0&&this._handleFocus(),e.Lang.isFunction(t)&&t()}else try{e.one("win").focus(),e.later(100,this,function(){this.getInstance()&&this.getInstance().one("win")&&this.getInstance().one("win").focus(),t===!0&&this._handleFocus(),e.Lang.isFunction(t)&&t()})}catch(r){}return this},show:function(){this._iframe.setStyles({position:"static",left:""});if(e.UA.gecko){try{this.getInstance()&&(this.getInstance().config.doc.designMode="on")}catch(t){}this.focus()}return this},hide:function(){return this._iframe.setStyles({position:"absolute",left:"-999999px"}),this}},{THROTTLE_TIME:100,DOM_EVENTS:{dblclick:1,click:1,paste:1,mouseup:1,mousedown:1,keyup:1,keydown:1,keypress:1,activate:1,deactivate:1,beforedeactivate:1,focusin:1,focusout:1},DEFAULT_CSS:"body { background-color: #fff; font: 13px/1.22 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small; } a, a:visited, a:hover { color: blue !important; text-decoration: underline !important; cursor: text !important; } img { cursor: pointer !important; border: none; }",IFRAME_ATTRS:{border:"0",frameBorder:"0",marginWidth:"0",marginHeight:"0",leftMargin:"0",topMargin:"0",allowTransparency:"true",width:"100%",height:"99%"},PAGE_HTML:'{TITLE}{META}{LINKED_CSS}{EXTRA_CSS}{CONTENT}',getDocType:function(){var t=e.config.doc.doctype,r=n.DOC_TYPE;return t?r="":e.config.doc.all&&(t=e.config.doc.all[0],t.nodeType&&t.nodeType===8&&t.nodeValue&&t.nodeValue.toLowerCase().indexOf("doctype")!==-1&&(r="")),r},DOC_TYPE:'',META:'',NAME:"frame",ATTRS:{title:{value:"Blank Page"},dir:{value:"ltr"},lang:{value:"en-US"},src:{value:"javascript"+(e.UA.ie?":false":":")+";"},designMode:{writeOnce:!0,value:!1},content:{value:"
    ",setter:"_setHTML",getter:"_getHTML"},basehref:{value:!1,getter:"_resolveBaseHref"},use:{writeOnce:!0,value:["node","node-style","selector-css3"]},container:{value:"body",setter:function(t){return e.one(t)}},node:{readOnly:!0,value:null,getter:function(){return this._iframe}},id:{writeOnce:!0,getter:function(t){return t||(t="iframe-"+e.guid()),t}},linkedcss:{value:"",getter:"_getLinkedCSS",setter:"_setLinkedCSS"},extracss:{value:"",setter:"_setExtraCSS"},host:{value:!1},defaultblock:{value:"p"}}}),e.Frame=n},"3.9.1",{requires:["base","node","selector-css3","yui-throttle"]}); +},render:function(t){return this._rendered?this:(this._rendered=!0,t&&this.set("container",t),this._create(e.bind(function(t){var n,r,i=e.bind(function(e){this._instanceLoaded(e)},this),s=e.clone(this.get("use")),o={debug:!1,win:t.win,doc:t.doc},u=e.bind(function(){o=this._resolveWinDoc(o),n=YUI(o),n.host=this.get("host");try{n.use("node-base",i),r&&clearInterval(r)}catch(e){r=setInterval(function(){u()},350)}},this);s.push(u),e.use.apply(e,s)},this)),this)},_handleFocus:function(){var e=this.getInstance(),t=new e.EditorSelection,n,r,i,s;t.anchorNode&&(n=t.anchorNode,n.test("p")&&n.get("innerHTML")===""&&(n=n.get("parentNode")),r=n.get("childNodes"),r.size()&&(r.item(0).test("br")?t.selectNode(n,!0,!1):r.item(0).test("p")?(n=r.item(0).one("br.yui-cursor"),n&&(n=n.get("parentNode")),n||(n=r.item(0).get("firstChild")),n||(n=r.item(0)),n&&t.selectNode(n,!0,!1)):(i=e.one("br.yui-cursor"),i&&(s=i.get("parentNode"),s&&t.selectNode(s,!0,!1)))))},focus:function(t){if(e.UA.ie&&e.UA.ie<9){try{e.one("win").focus(),this.getInstance()&&this.getInstance().one("win")&&this.getInstance().one("win").focus()}catch(n){}t===!0&&this._handleFocus(),e.Lang.isFunction(t)&&t()}else try{e.one("win").focus(),e.later(100,this,function(){this.getInstance()&&this.getInstance().one("win")&&this.getInstance().one("win").focus(),t===!0&&this._handleFocus(),e.Lang.isFunction(t)&&t()})}catch(r){}return this},show:function(){this._iframe.setStyles({position:"static",left:""});if(e.UA.gecko){try{this.getInstance()&&(this.getInstance().config.doc.designMode="on")}catch(t){}this.focus()}return this},hide:function(){return this._iframe.setStyles({position:"absolute",left:"-999999px"}),this}},{THROTTLE_TIME:100,DOM_EVENTS:{dblclick:1,click:1,paste:1,mouseup:1,mousedown:1,keyup:1,keydown:1,keypress:1,activate:1,deactivate:1,beforedeactivate:1,focusin:1,focusout:1},DEFAULT_CSS:"body { background-color: #fff; font: 13px/1.22 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small; } a, a:visited, a:hover { color: blue !important; text-decoration: underline !important; cursor: text !important; } img { cursor: pointer !important; border: none; }",IFRAME_ATTRS:{border:"0",frameBorder:"0",marginWidth:"0",marginHeight:"0",leftMargin:"0",topMargin:"0",allowTransparency:"true",width:"100%",height:"99%"},PAGE_HTML:'{TITLE}{META}{LINKED_CSS}{EXTRA_CSS}{CONTENT}',getDocType:function(){var t=e.config.doc.doctype,r=n.DOC_TYPE;return t?r="":e.config.doc.all&&(t=e.config.doc.all[0],t.nodeType&&t.nodeType===8&&t.nodeValue&&t.nodeValue.toLowerCase().indexOf("doctype")!==-1&&(r="")),r},DOC_TYPE:'',META:'',NAME:"frame",ATTRS:{title:{value:"Blank Page"},dir:{value:"ltr"},lang:{value:"en-US"},src:{value:"javascript"+(e.UA.ie?":false":":")+";"},designMode:{writeOnce:!0,value:!1},content:{value:"
    ",setter:"_setHTML",getter:"_getHTML"},basehref:{value:!1,getter:"_resolveBaseHref"},use:{writeOnce:!0,value:["node","node-style","selector-css3"]},container:{value:"body",setter:function(t){return e.one(t)}},node:{readOnly:!0,value:null,getter:function(){return this._iframe}},id:{writeOnce:!0,getter:function(t){return t||(t="iframe-"+e.guid()),t}},linkedcss:{value:"",getter:"_getLinkedCSS",setter:"_setLinkedCSS"},extracss:{value:"",setter:"_setExtraCSS"},host:{value:!1},defaultblock:{value:"p"}}}),e.Frame=n},"3.12.0",{requires:["base","node","selector-css3","yui-throttle"]}); diff --git a/lib/yuilib/3.9.1/build/frame/frame.js b/lib/yuilib/3.12.0/frame/frame.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/frame/frame.js rename to lib/yuilib/3.12.0/frame/frame.js index 7a7cda355a2..406f88740a0 --- a/lib/yuilib/3.9.1/build/frame/frame.js +++ b/lib/yuilib/3.12.0/frame/frame.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('frame', function (Y, NAME) { /*jshint maxlen: 500 */ @@ -1014,4 +1020,4 @@ YUI.add('frame', function (Y, NAME) { -}, '3.9.1', {"requires": ["base", "node", "selector-css3", "yui-throttle"]}); +}, '3.12.0', {"requires": ["base", "node", "selector-css3", "yui-throttle"]}); diff --git a/lib/yuilib/3.9.1/build/gesture-simulate/gesture-simulate-debug.js b/lib/yuilib/3.12.0/gesture-simulate/gesture-simulate-debug.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/gesture-simulate/gesture-simulate-debug.js rename to lib/yuilib/3.12.0/gesture-simulate/gesture-simulate-debug.js index ee19e8306f5..6794aa5434e --- a/lib/yuilib/3.9.1/build/gesture-simulate/gesture-simulate-debug.js +++ b/lib/yuilib/3.12.0/gesture-simulate/gesture-simulate-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('gesture-simulate', function (Y, NAME) { /** @@ -1321,4 +1327,4 @@ Y.Event.simulateGesture = function(node, name, options, cb) { }; -}, '3.9.1', {"requires": ["async-queue", "event-simulate", "node-screen"]}); +}, '3.12.0', {"requires": ["async-queue", "event-simulate", "node-screen"]}); diff --git a/lib/yuilib/3.9.1/build/gesture-simulate/gesture-simulate-min.js b/lib/yuilib/3.12.0/gesture-simulate/gesture-simulate-min.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/gesture-simulate/gesture-simulate-min.js rename to lib/yuilib/3.12.0/gesture-simulate/gesture-simulate-min.js index fb56752d43a..35fed7c2e61 --- a/lib/yuilib/3.9.1/build/gesture-simulate/gesture-simulate-min.js +++ b/lib/yuilib/3.12.0/gesture-simulate/gesture-simulate-min.js @@ -1,3 +1,9 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("gesture-simulate",function(e,t){function T(n){n||e.error(t+": invalid target node"),this.node=n,this.target=e.Node.getDOMNode(n);var r=this.node.getXY(),i=this._getDims();a=r[0]+i[0]/2,f=r[1]+i[1]/2}var t="gesture-simulate",n=e.config.win&&"ontouchstart"in e.config.win&&!e.UA.phantomjs&&!(e.UA.chrome&&e.UA.chrome<6),r={tap:1,doubletap:1,press:1,move:1,flick:1,pinch:1,rotate:1},i={touchstart:1,touchmove:1,touchend:1,touchcancel:1},s=e.config.doc,o,u=20,a,f,l={HOLD_TAP:10,DELAY_TAP:10,HOLD_PRESS:3e3,MIN_HOLD_PRESS:1e3,MAX_HOLD_PRESS:6e4,DISTANCE_MOVE:200,DURATION_MOVE:1e3,MAX_DURATION_MOVE:5e3,MIN_VELOCITY_FLICK:1.3,DISTANCE_FLICK:200,DURATION_FLICK:1e3,MAX_DURATION_FLICK:5e3,DURATION_PINCH:1e3},c="touchstart",h="touchmove",p="touchend",d="gesturestart",v="gesturechange",m="gestureend",g="mouseup",y="mousemove",b="mousedown",w="click",E="dblclick",S="x",x="y";T.prototype={_toRadian:function(e){return e*(Math.PI/180)},_getDims:function(){var e,t,n;return this.target.getBoundingClientRect?(e=this.target.getBoundingClientRect(),"height"in e?n=e.height:n=Math.abs(e.bottom-e.top),"width"in e?t=e.width:t=Math.abs(e.right-e.left)):(e=this.node.get("region"),t=e.width,n=e.height),[t,n]},_calculateDefaultPoint:function(t){var n;return!e.Lang.isArray(t)||t.length===0?t=[a,f]:(t.length==1&&(n=this._getDims[1],t[1]=n/2),t[0]=this.node.getX()+t[0],t[1]=this.node.getY()+t[1]),t},rotate:function(n,r,i,s,o,u,a){var f,l=i,c=s;if(!e.Lang.isNumber(l)||!e.Lang.isNumber(c)||l<0||c<0)f=this.target.offsetWidth=2&&this._simulateEvent(this.target,d,e.merge({scale:k,rotation:O},r))},timeout:0,context:this}),H=Math.floor(o/b),T=(x-S)/H,A=(L-k)/H,_=(M-O)/H,B=function(t){var n=S+T*t,r=N+n*Math.sin(this._toRadian(O+_*t)),i=C-n*Math.cos(this._toRadian(O+_*t)),s=N-n*Math.sin(this._toRadian(O+_*t)),o=C+n*Math.cos(this._toRadian(O+_*t)),u=(r+s)/2,a=(i+o)/2,f,l,c,p;f={pageX:r,pageY:i,clientX:r,clientY:i},l={pageX:s,pageY:o,clientX:s,clientY:o},p=this._createTouchList([e.merge({identifier:E++},f),e.merge({identifier:E++},l)]),c={pageX:u,pageY:a,clientX:u,clientY:a},this._simulateEvent(this.target,h,e.merge({touches:p,targetTouches:p,changedTouches:p,scale:k+A*t,rotation:O+_*t},c)),e.UA.ios>=2&&this._simulateEvent(this.target,v,e.merge({scale:k+A*t,rotation:O+_*t},c))};for(y=0;y=2&&this._simulateEvent(this.target,m,e.merge({scale:L,rotation:M},i)),this._simulateEvent(this.target,p,e.merge({touches:t,targetTouches:t,changedTouches:s,scale:L,rotation:M},i))},context:this}),n&&e.Lang.isFunction(n)&&g.add({fn:n,context:this.node}),g.run()},tap:function(t,r,i,s,o){var u=new e.AsyncQueue,a=this._getEmptyTouchList(),f,h,d,v,m;r=this._calculateDefaultPoint(r);if(!e.Lang.isNumber(i)||i<1)i=1;e.Lang.isNumber(s)||(s=l.HOLD_TAP),e.Lang.isNumber(o)||(o=l.DELAY_TAP),h={pageX:r[0],pageY:r[1],clientX:r[0],clientY:r[1]},f=this._createTouchList([e.merge({identifier:0},h)]),v=function(){this._simulateEvent(this.target,c,e.merge({touches:f,targetTouches:f,changedTouches:f},h))},m=function(){this._simulateEvent(this.target,p,e.merge({touches:a,targetTouches:a,changedTouches:f},h))};for(d=0;d1&&!n&&u.add({fn:function(){this._simulateEvent(this.target,E,h)},context:this}),t&&e.Lang.isFunction(t)&&u.add({fn:t,context:this.node}),u.run()},flick:function(n,r,i,s,o){var u;r=this._calculateDefaultPoint(r),e.Lang.isString(i)?(i=i.toLowerCase(),i!==S&&i!==x&&e.error(t+"(flick): Only x or y axis allowed")):i=S,e.Lang.isNumber(s)||(s=l.DISTANCE_FLICK),e.Lang.isNumber(o)?o>l.MAX_DURATION_FLICK&&(o=l.MAX_DURATION_FLICK):o=l.DURATION_FLICK,Math.abs(s)/ol.MAX_DURATION_MOVE&&(r=l.MAX_DURATION_MOVE):r=l.DURATION_MOVE,i={start:e.clone(n.point),end:[n.point[0]+n.xdist,n.point[1]+n.ydist]},this._move(t,i,r)},_move:function(t,n,r){var i,s,o=u,d,v,m,g=0,y;e.Lang.isNumber(r)?r>l.MAX_DURATION_MOVE&&(r=l.MAX_DURATION_MOVE):r=l.DURATION_MOVE,e.Lang.isObject(n)?(e.Lang.isArray(n.start)||(n.start=[a,f]),e.Lang.isArray(n.end)||(n.end=[a+l.DISTANCE_MOVE,f])):n={start:[a,f],end:[a+l.DISTANCE_MOVE,f]},e.AsyncQueue.defaults.timeout=o,i=new e.AsyncQueue,i.add({fn:function(){var t={pageX:n.start[0],pageY:n.start[1],clientX:n.start[0],clientY:n.start[1]},r=this._createTouchList([e.merge({identifier:g++},t)]);this._simulateEvent(this.target,c,e.merge({touches:r,targetTouches:r,changedTouches:r},t))},timeout:0,context:this}),d=Math.floor(r/o),v=(n.end[0]-n.start[0])/d,m=(n.end[1]-n.start[1])/d,y=function(t){var r=n.start[0]+v*t,i=n.start[1]+m*t,s={pageX:r,pageY:i,clientX:r,clientY:i},o=this._createTouchList([e.merge({identifier:g++},s)]);this._simulateEvent(this.target,h,e.merge({touches:o,targetTouches:o,changedTouches:o},s))};for(s=0;s=4||e.UA.ios&&e.UA.ios>=2?(e.each(n,function(t){t.identifier||(t.identifier=0),t.pageX||(t.pageX=0),t.pageY||(t.pageY=0),t.screenX||(t.screenX=0),t.screenY||(t.screenY=0),r.push(s.createTouch(e.config.win,o.target,t.identifier,t.pageX,t.pageY,t.screenX,t.screenY))}),i=s.createTouchList.apply(s,r)):e.UA.ios&&e.UA.ios<2?e.error(t+": No touch event simulation framework present."):(i=[],e.each(n,function(e){e.identifier||(e.identifier=0),e.clientX||(e.clientX=0),e.clientY||(e.clientY=0),e.pageX||(e.pageX=0),e.pageY||(e.pageY=0),e.screenX||(e.screenX=0),e.screenY||(e.screenY=0),i.push({target:o.target,identifier:e.identifier,clientX:e.clientX,clientY:e.clientY,pageX:e.pageX,pageY:e.pageY,screenX:e.screenX,screenY:e.screenY})}),i.item=function(e){return i[e]}):e.error(t+": Invalid touchPoints passed"),i},_simulateEvent:function(t,r,s){var o;i[r]?n?e.Event.simulate(t,r,s):this._isSingleTouch(s.touches,s.targetTouches,s.changedTouches)?(r={touchstart:b,touchmove:y,touchend:g}[r],s.button=0,s.relatedTarget=null,o=r===g?s.changedTouches:s.touches,s=e.mix(s,{screenX:o.item(0).screenX,screenY:o.item(0).screenY,clientX:o.item(0).clientX,clientY:o.item(0).clientY},!0),e.Event.simulate(t,r,s),r==g&&e.Event.simulate(t,w,s)):e.error("_simulateEvent(): Event '"+r+"' has multi touch objects that can't be simulated in your platform."):e.Event.simulate(t,r,s)},_isSingleTouch:function(e,t,n){return e&&e.length<=1&&t&&t.length<=1&&n&&n.length<=1}},e.GestureSimulation=T,e.GestureSimulation.defaults=l,e.GestureSimulation.GESTURES=r,e.Event.simulateGesture=function(n,i,s,o){n=e.one(n);var u=new e.GestureSimulation(n);i=i.toLowerCase(),!o&&e.Lang.isFunction(s)&&(o=s,s={}),s=s||{};if(r[i])switch(i){case"tap":u.tap(o,s.point,s.times,s.hold,s.delay);break;case"doubletap":u.tap(o,s.point,2);break;case"press":e.Lang.isNumber(s.hold)?s.holdl.MAX_HOLD_PRESS&&(s.hold=l.MAX_HOLD_PRESS):s.hold=l.HOLD_PRESS,u.tap(o,s.point,1,s.hold);break;case"move":u.move(o,s.path,s.duration);break;case"flick":u.flick(o,s.point,s.axis,s.distance,s.duration);break;case"pinch":u.pinch(o,s.center,s.r1,s.r2,s.duration,s.start,s.rotation);break;case"rotate":u.rotate(o,s.center,s.r1,s.r2,s.duration,s.start,s.rotation)}else e.error(t+": Not a supported gesture simulation: "+i)}},"3.9.1",{requires:["async-queue","event-simulate","node-screen"]}); +DISTANCE_MOVE,ydist:0},e.Lang.isNumber(r)?r>l.MAX_DURATION_MOVE&&(r=l.MAX_DURATION_MOVE):r=l.DURATION_MOVE,i={start:e.clone(n.point),end:[n.point[0]+n.xdist,n.point[1]+n.ydist]},this._move(t,i,r)},_move:function(t,n,r){var i,s,o=u,d,v,m,g=0,y;e.Lang.isNumber(r)?r>l.MAX_DURATION_MOVE&&(r=l.MAX_DURATION_MOVE):r=l.DURATION_MOVE,e.Lang.isObject(n)?(e.Lang.isArray(n.start)||(n.start=[a,f]),e.Lang.isArray(n.end)||(n.end=[a+l.DISTANCE_MOVE,f])):n={start:[a,f],end:[a+l.DISTANCE_MOVE,f]},e.AsyncQueue.defaults.timeout=o,i=new e.AsyncQueue,i.add({fn:function(){var t={pageX:n.start[0],pageY:n.start[1],clientX:n.start[0],clientY:n.start[1]},r=this._createTouchList([e.merge({identifier:g++},t)]);this._simulateEvent(this.target,c,e.merge({touches:r,targetTouches:r,changedTouches:r},t))},timeout:0,context:this}),d=Math.floor(r/o),v=(n.end[0]-n.start[0])/d,m=(n.end[1]-n.start[1])/d,y=function(t){var r=n.start[0]+v*t,i=n.start[1]+m*t,s={pageX:r,pageY:i,clientX:r,clientY:i},o=this._createTouchList([e.merge({identifier:g++},s)]);this._simulateEvent(this.target,h,e.merge({touches:o,targetTouches:o,changedTouches:o},s))};for(s=0;s=4||e.UA.ios&&e.UA.ios>=2?(e.each(n,function(t){t.identifier||(t.identifier=0),t.pageX||(t.pageX=0),t.pageY||(t.pageY=0),t.screenX||(t.screenX=0),t.screenY||(t.screenY=0),r.push(s.createTouch(e.config.win,o.target,t.identifier,t.pageX,t.pageY,t.screenX,t.screenY))}),i=s.createTouchList.apply(s,r)):e.UA.ios&&e.UA.ios<2?e.error(t+": No touch event simulation framework present."):(i=[],e.each(n,function(e){e.identifier||(e.identifier=0),e.clientX||(e.clientX=0),e.clientY||(e.clientY=0),e.pageX||(e.pageX=0),e.pageY||(e.pageY=0),e.screenX||(e.screenX=0),e.screenY||(e.screenY=0),i.push({target:o.target,identifier:e.identifier,clientX:e.clientX,clientY:e.clientY,pageX:e.pageX,pageY:e.pageY,screenX:e.screenX,screenY:e.screenY})}),i.item=function(e){return i[e]}):e.error(t+": Invalid touchPoints passed"),i},_simulateEvent:function(t,r,s){var o;i[r]?n?e.Event.simulate(t,r,s):this._isSingleTouch(s.touches,s.targetTouches,s.changedTouches)?(r={touchstart:b,touchmove:y,touchend:g}[r],s.button=0,s.relatedTarget=null,o=r===g?s.changedTouches:s.touches,s=e.mix(s,{screenX:o.item(0).screenX,screenY:o.item(0).screenY,clientX:o.item(0).clientX,clientY:o.item(0).clientY},!0),e.Event.simulate(t,r,s),r==g&&e.Event.simulate(t,w,s)):e.error("_simulateEvent(): Event '"+r+"' has multi touch objects that can't be simulated in your platform."):e.Event.simulate(t,r,s)},_isSingleTouch:function(e,t,n){return e&&e.length<=1&&t&&t.length<=1&&n&&n.length<=1}},e.GestureSimulation=T,e.GestureSimulation.defaults=l,e.GestureSimulation.GESTURES=r,e.Event.simulateGesture=function(n,i,s,o){n=e.one(n);var u=new e.GestureSimulation(n);i=i.toLowerCase(),!o&&e.Lang.isFunction(s)&&(o=s,s={}),s=s||{};if(r[i])switch(i){case"tap":u.tap(o,s.point,s.times,s.hold,s.delay);break;case"doubletap":u.tap(o,s.point,2);break;case"press":e.Lang.isNumber(s.hold)?s.holdl.MAX_HOLD_PRESS&&(s.hold=l.MAX_HOLD_PRESS):s.hold=l.HOLD_PRESS,u.tap(o,s.point,1,s.hold);break;case"move":u.move(o,s.path,s.duration);break;case"flick":u.flick(o,s.point,s.axis,s.distance,s.duration);break;case"pinch":u.pinch(o,s.center,s.r1,s.r2,s.duration,s.start,s.rotation);break;case"rotate":u.rotate(o,s.center,s.r1,s.r2,s.duration,s.start,s.rotation)}else e.error(t+": Not a supported gesture simulation: "+i)}},"3.12.0",{requires:["async-queue","event-simulate","node-screen"]}); diff --git a/lib/yuilib/3.9.1/build/gesture-simulate/gesture-simulate.js b/lib/yuilib/3.12.0/gesture-simulate/gesture-simulate.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/gesture-simulate/gesture-simulate.js rename to lib/yuilib/3.12.0/gesture-simulate/gesture-simulate.js index ee19e8306f5..6794aa5434e --- a/lib/yuilib/3.9.1/build/gesture-simulate/gesture-simulate.js +++ b/lib/yuilib/3.12.0/gesture-simulate/gesture-simulate.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('gesture-simulate', function (Y, NAME) { /** @@ -1321,4 +1327,4 @@ Y.Event.simulateGesture = function(node, name, options, cb) { }; -}, '3.9.1', {"requires": ["async-queue", "event-simulate", "node-screen"]}); +}, '3.12.0', {"requires": ["async-queue", "event-simulate", "node-screen"]}); diff --git a/lib/yuilib/3.9.1/build/get-nodejs/get-nodejs-debug.js b/lib/yuilib/3.12.0/get-nodejs/get-nodejs-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/get-nodejs/get-nodejs-debug.js rename to lib/yuilib/3.12.0/get-nodejs/get-nodejs-debug.js index 9610176727a..3c402bb2e32 --- a/lib/yuilib/3.9.1/build/get-nodejs/get-nodejs-debug.js +++ b/lib/yuilib/3.12.0/get-nodejs/get-nodejs-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('get', function (Y, NAME) { /** @@ -196,4 +202,4 @@ YUI.add('get', function (Y, NAME) { -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/get-nodejs/get-nodejs-min.js b/lib/yuilib/3.12.0/get-nodejs/get-nodejs-min.js old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/get-nodejs/get-nodejs-min.js rename to lib/yuilib/3.12.0/get-nodejs/get-nodejs-min.js index 62fc8bee98e..9ff980d74ac --- a/lib/yuilib/3.9.1/build/get-nodejs/get-nodejs-min.js +++ b/lib/yuilib/3.12.0/get-nodejs/get-nodejs-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("get",function(e,t){var n=require("module"),r=require("path"),i=require("fs"),s=require("request"),o=function(t,n,r){e.Lang.isFunction(t.onEnd)&&t.onEnd.call(e,n,r)},u=function(t){e.Lang.isFunction(t.onSuccess)&&t.onSuccess.call(e,t),o(t,"success","success")},a=function(t,n){n.errors=[n],e.Lang.isFunction(t.onFailure)&&t.onFailure.call(e,n,t),o(t,n,"fail")};e.Get=function(){},e.config.base=r.join(__dirname,"../"),YUI.require=require,YUI.process=process,e.Get._exec=function(e,t,i){e.charCodeAt(0)===65279&&(e=e.slice(1));var s=new n(t,module);s.filename=t,s.paths=n._nodeModulePaths(r.dirname(t)),typeof YUI._getLoadHook=="function"&&(e=YUI._getLoadHook(e,t)),s._compile("module.exports = function (YUI) {"+e+"\n;return YUI;};",t),YUI=s.exports(YUI),s.loaded=!0,i(null,t)},e.Get._include=function(t,r){var o,u,a=this;if(t.match(/^https?:\/\//))o={url:t,timeout:a.timeout},s(o,function(n,i,s){n?r(n,t):e.Get._exec(s,t,r)});else{try{t=n._findPath(t,n._resolveLookupPaths(t,module.parent.parent)[1]);if(!e.config.useSync){i.readFile(t,"utf8",function(n,i){n?r(n,t):e.Get._exec(i,t,r)});return}u=i.readFileSync(t,"utf8")}catch(f){r(f,t);return}e.Get._exec(u,t,r)}},e.Get.js=function(t,n){var r=e.Array(t),i,s,o=r.length,f=0,l=function(){f===o&&u(n)};for(s=0;s=e&&this._purge(this._purgeNodes)},_getEnv:function(){var t=e.config.doc,n=e.UA;return this._env={async:t&&t.createElement("script").async===!0||n.ie>=10,cssFail:n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0,cssLoad:(!n.gecko&&!n.webkit||n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0)&&!(n.chrome&&n.chrome<=18),preservesScriptOrder:!!(n.gecko||n.opera||n.ie&&n.ie>=10)}},_getTransaction:function(t,r){var i=[],o,u,a,f;n.isArray(t)||(t=[t]),r=e.merge(this.options,r),r.attributes=e.merge(this.options.attributes,r.attributes);for(o=0,u=t.length;o-1&&n.splice(i,1))}}},i.script=i.js,i.Transaction=s=function(t,n){var r=this;r.id=s._lastId+=1,r.data=n.data,r.errors=[],r.nodes=[],r.options=n,r.requests=t,r._callbacks=[],r._queue=[],r._reqsWaiting=0,r.tId=r.id,r.win=n.win||e.config.win},s._lastId=0,s.prototype={_state:"new",abort:function(e){this._pending=null,this._pendingCSS=null,this._pollTimer=clearTimeout(this._pollTimer),this._queue=[],this._reqsWaiting=0,this.errors.push({error:e||"Aborted"}),this._finish()},execute:function(e){var t=this,n=t.requests,r=t._state,i,s,o,u;if(r==="done"){e&&e(t.errors.length?t.errors:null,t);return}e&&t._callbacks.push(e);if(r==="executing")return;t._state="executing",t._queue=o=[],t.options.timeout&&(t._timeout=setTimeout(function(){t.abort("Timeout")},t.options.timeout)),t._reqsWaiting=n.length;for(i=0,s=n.length;i=10?(o.onerror=function(){setTimeout(c,0)},o.onload=function(){setTimeout(h,0)}):(o.onerror=c,o.onload=h),!n.cssFail&&!s&&(f=setTimeout(c,t.timeout||3e3))),this.nodes.push(o),r.parentNode.insertBefore(o,r)},_next:function(){if(this._pending)return;this._queue.length?this._insert(this._queue.shift()):this._reqsWaiting||this._finish()},_poll:function(t){var n=this,r=n._pendingCSS,i=e.UA.webkit,s,o,u,a,f,l;if(t){r||(r=n._pendingCSS=[]),r.push(t);if(n._pollTimer)return}n._pollTimer=null;for(s=0;s=0)if(l[u].href===a){r.splice(s,1),s-=1,n._progress(null,f);break} -}else try{o=!!f.node.sheet.cssRules,r.splice(s,1),s-=1,n._progress(null,f)}catch(c){}}r.length&&(n._pollTimer=setTimeout(function(){n._poll.call(n)},n.options.pollInterval))},_progress:function(e,t){var n=this.options;e&&(t.error=e,this.errors.push({error:e,request:t})),t.node._yuiget_finished=t.finished=!0,n.onProgress&&n.onProgress.call(n.context||this,this._getEventData(t)),t.autopurge&&(i._autoPurge(this.options.purgethreshold),i._purgeNodes.push(t.node)),this._pending===t&&(this._pending=null),this._reqsWaiting-=1,this._next()}}},"3.9.1",{requires:["yui-base"]}); +}else try{o=!!f.node.sheet.cssRules,r.splice(s,1),s-=1,n._progress(null,f)}catch(c){}}r.length&&(n._pollTimer=setTimeout(function(){n._poll.call(n)},n.options.pollInterval))},_progress:function(e,t){var n=this.options;e&&(t.error=e,this.errors.push({error:e,request:t})),t.node._yuiget_finished=t.finished=!0,n.onProgress&&n.onProgress.call(n.context||this,this._getEventData(t)),t.autopurge&&(i._autoPurge(this.options.purgethreshold),i._purgeNodes.push(t.node)),this._pending===t&&(this._pending=null),this._reqsWaiting-=1,this._next()}}},"@VERSION@",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/get/get.js b/lib/yuilib/3.12.0/get/get.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/get/get.js rename to lib/yuilib/3.12.0/get/get.js index da97cae20ca..16cfe57112f --- a/lib/yuilib/3.9.1/build/get/get.js +++ b/lib/yuilib/3.12.0/get/get.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('get', function (Y, NAME) { /*jslint boss:true, expr:true, laxbreak: true */ @@ -1272,4 +1278,4 @@ Transaction.prototype = { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/graphics-canvas-default/graphics-canvas-default-debug.js b/lib/yuilib/3.12.0/graphics-canvas-default/graphics-canvas-default-debug.js old mode 100644 new mode 100755 similarity index 60% rename from lib/yuilib/3.9.1/build/graphics-canvas-default/graphics-canvas-default-debug.js rename to lib/yuilib/3.12.0/graphics-canvas-default/graphics-canvas-default-debug.js index 8d892c9c9af..5d17a5fd1be --- a/lib/yuilib/3.9.1/build/graphics-canvas-default/graphics-canvas-default-debug.js +++ b/lib/yuilib/3.12.0/graphics-canvas-default/graphics-canvas-default-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics-canvas-default', function (Y, NAME) { Y.Graphic = Y.CanvasGraphic; @@ -10,4 +16,4 @@ Y.Path = Y.CanvasPath; Y.Drawing = Y.CanvasDrawing; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/graphics-canvas-default/graphics-canvas-default-min.js b/lib/yuilib/3.12.0/graphics-canvas-default/graphics-canvas-default-min.js old mode 100644 new mode 100755 similarity index 52% rename from lib/yuilib/3.9.1/build/graphics-canvas-default/graphics-canvas-default-min.js rename to lib/yuilib/3.12.0/graphics-canvas-default/graphics-canvas-default-min.js index 09b29e39ea2..e784c8b582b --- a/lib/yuilib/3.9.1/build/graphics-canvas-default/graphics-canvas-default-min.js +++ b/lib/yuilib/3.12.0/graphics-canvas-default/graphics-canvas-default-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("graphics-canvas-default",function(e,t){e.Graphic=e.CanvasGraphic,e.Shape=e.CanvasShape,e.Circle=e.CanvasCircle,e.Rect=e.CanvasRect,e.Ellipse=e.CanvasEllipse,e.Path=e.CanvasPath,e.Drawing=e.CanvasDrawing},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("graphics-canvas-default",function(e,t){e.Graphic=e.CanvasGraphic,e.Shape=e.CanvasShape,e.Circle=e.CanvasCircle,e.Rect=e.CanvasRect,e.Ellipse=e.CanvasEllipse,e.Path=e.CanvasPath,e.Drawing=e.CanvasDrawing},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/graphics-canvas-default/graphics-canvas-default.js b/lib/yuilib/3.12.0/graphics-canvas-default/graphics-canvas-default.js old mode 100644 new mode 100755 similarity index 60% rename from lib/yuilib/3.9.1/build/graphics-canvas-default/graphics-canvas-default.js rename to lib/yuilib/3.12.0/graphics-canvas-default/graphics-canvas-default.js index 8d892c9c9af..5d17a5fd1be --- a/lib/yuilib/3.9.1/build/graphics-canvas-default/graphics-canvas-default.js +++ b/lib/yuilib/3.12.0/graphics-canvas-default/graphics-canvas-default.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics-canvas-default', function (Y, NAME) { Y.Graphic = Y.CanvasGraphic; @@ -10,4 +16,4 @@ Y.Path = Y.CanvasPath; Y.Drawing = Y.CanvasDrawing; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/graphics-canvas/graphics-canvas-debug.js b/lib/yuilib/3.12.0/graphics-canvas/graphics-canvas-debug.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/graphics-canvas/graphics-canvas-debug.js rename to lib/yuilib/3.12.0/graphics-canvas/graphics-canvas-debug.js index 6b3e3eda92f..9cda8cf5048 --- a/lib/yuilib/3.9.1/build/graphics-canvas/graphics-canvas-debug.js +++ b/lib/yuilib/3.12.0/graphics-canvas/graphics-canvas-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics-canvas', function (Y, NAME) { var IMPLEMENTATION = "canvas", @@ -3671,4 +3677,4 @@ Y.extend(CanvasGraphic, Y.GraphicBase, { Y.CanvasGraphic = CanvasGraphic; -}, '3.9.1', {"requires": ["graphics"]}); +}, '3.12.0', {"requires": ["graphics"]}); diff --git a/lib/yuilib/3.9.1/build/graphics-canvas/graphics-canvas-min.js b/lib/yuilib/3.12.0/graphics-canvas/graphics-canvas-min.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/graphics-canvas/graphics-canvas-min.js rename to lib/yuilib/3.12.0/graphics-canvas/graphics-canvas-min.js index 4b970a9a898..7f77c7be47b --- a/lib/yuilib/3.9.1/build/graphics-canvas/graphics-canvas-min.js +++ b/lib/yuilib/3.12.0/graphics-canvas/graphics-canvas-min.js @@ -1,6 +1,12 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("graphics-canvas",function(e,t){function T(){}function N(){N.superclass.constructor.apply(this,arguments)}var n="canvas",r="shape",i=/[a-z][^a-z]*/ig,s=/[\-]?[0-9]*[0-9|\.][0-9]*/g,o=e.config.doc,u=e.Lang,a=e.AttributeLite,f,l,c,h,p,d,v=e.DOM,m=e.Color,g=parseInt,y=parseFloat,b=u.isNumber,w=RegExp,E=m.toRGB,S=m.toHex,x=e.ClassNameManager.getClassName;T.prototype={_pathSymbolToMethod:{M:"moveTo",m:"relativeMoveTo",L:"lineTo",l:"relativeLineTo",C:"curveTo",c:"relativeCurveTo",Q:"quadraticCurveTo",q:"relativeQuadraticCurveTo",z:"closePath",Z:"closePath"},_currentX:0,_currentY:0,_toRGBA:function(e,t){return t=t!==undefined?t:1,m.re_RGB.test(e)||(e=S(e)),m.re_hex.exec(e)&&(e="rgba("+[g(w.$1,16),g(w.$2,16),g(w.$3,16)].join(",")+","+t+")"),e},_toRGB:function(e){return E(e)},setSize:function(e,t){this.get("autoSize")&&(e>this.node.getAttribute("width")&&(this.node.style.width=e+"px",this.node.setAttribute("width",e)),t>this.node.getAttribute("height")&&(this.node.style.height=t+"px",this.node.setAttribute("height",t)))},_updateCoords:function(e,t){this._xcoords.push(e),this._ycoords.push(t),this._currentX=e,this._currentY=t},_clearAndUpdateCoords:function(){var e=this._xcoords.pop()||0,t=this._ycoords.pop()||0;this._updateCoords(e,t)},_updateNodePosition:function(){var e=this.get("node"),t=this.get("x"),n=this.get("y");e.style.position="absolute",e.style.left=t+this._left+"px",e.style.top=n+this._top+"px"},_updateDrawingQueue:function(e){this._methods.push(e)},lineTo:function(){return this._lineTo.apply(this,[e.Array(arguments),!1]),this},relativeLineTo:function(){return this._lineTo.apply(this,[e.Array(arguments),!0]),this},_lineTo:function(e,t){var n=e[0],r,i,s,o,u=this._stroke&&this._strokeWeight?this._strokeWeight:0,a=t?parseFloat(this._currentX):0,f=t?parseFloat(this._currentY):0;this._lineToMethods||(this._lineToMethods=[]),i=e.length-1;if(typeof n=="string"||typeof n=="number")for(r=0;r360&&(r=360),u=Math.ceil(Math.abs(r)/45),a=r/u,f=-(a/180)*Math.PI,l=n/180*Math.PI;if(u>0){h=e+Math.cos(n/180*Math.PI)*i,p=t+Math.sin(n/180*Math.PI)*s,this.lineTo(h,p);for(y=0;y=p/2?(d<180?(g=c,y=c+p):(g=c+p,y=c),v=b-(w-g)/T,m=b-(w-y)/T):(d>90&&d<270?(v=l+h,m=l):(v=l,m=l+h),g=(T*(b-v)-w)*-1,y=(T*(b-m)-w)*-1),f=this._context.createLinearGradient(v,g,m,y);for(u=0;u=S&&(A=k/S,A===1&&(A=1.01),N=(g-x)/A,C=(b-T)/A,N=N>0?Math.floor(N):Math.ceil(N),C=C>0?Math.floor(C):Math.ceil(C),g=x+N,b=T+C),r>=.5?(h=this._context.createRadialGradient(g,b,r,y,w,r*v),O=1):(h=this._context.createRadialGradient(g,b,r,y,w,v/2),O=r*2);for(l=0;lthis._right&&(this._right=e),ethis._bottom&&(this._bottom=t),this._width=this._right-this._left,this._height=this._bottom-this._top}},e.CanvasDrawing=T,f=function(){this._transforms=[],this.matrix=new e.Matrix,f.superclass.constructor.apply(this,arguments)},f.NAME="shape",e.extend(f,e.GraphicBase,e.mix({init:function(){this.initializer.apply(this,arguments)},initializer:function(e){var t=this,n=e.graphic,r=this.get("data");t._initProps(),t.createNode(),t._xcoords=[0],t._ycoords=[0],n&&this._setGraphic(n),r&&t._parsePathData(r),t._updateHandler()},_setGraphic:function(t){var n;t instanceof e.CanvasGraphic?this._graphic=t:(t=e.one(t),n=new e.CanvasGraphic({render:t}),n._appendShape(this),this._graphic=n)},addClass:function(t){var n=e.one(this.get("node"));n.addClass(t)},removeClass:function(t){var n=e.one(this.get("node"));n.removeClass(t)},getXY:function(){var e=this.get("graphic"),t=e.getXY(),n=this.get("x"),r=this.get("y");return[t[0]+n,t[1]+r]},setXY:function(e){var t=this.get("graphic"),n=t.getXY(),r=e[0]-n[0],i=e[1]-n[1];this._set("x",r),this._set("y",i),this._updateNodePosition(r,i)},contains:function(t){return t===e.one(this.node)},test:function(t){return e.one(this.get("node")).test(t)},compareTo:function(e){var t=this.node;return t===e},_getDefaultFill:function(){return{type:"solid",opacity:1,cx:.5,cy:.5,fx:.5,fy:.5,r:.5}},_getDefaultStroke:function(){return{weight:1,dashstyle:"none",color:"#000",opacity:1}},_left:0,_right:0,_top:0,_bottom:0,createNode:function(){var t=this,i=e.config.doc.createElement("canvas"),s=t.get("id"),o=t._camelCaseConcat,u=t.name;t._context=i.getContext("2d"),i.setAttribute("overflow","visible"),i.style.overflow="visible",t.get("visible")||(i.style.visibility="hidden"),i.setAttribute("id",s),s="#"+s,t.node=i,t.addClass(x(r)+" "+x(o(n,r))+" "+x(u)+" "+x(o(n,u)))},on:function(t,n){return e.Node.DOM_EVENTS[t]?e.one("#"+this.get("id")).on(t,n):e.on.apply(this,arguments)},_setStrokeProps:function(t){var n,r,i,s,o,u;t?(n=t.color,r=y(t.weight),i=y(t.opacity),s=t.linejoin||"round",o=t.linecap||"butt",u=t.dashstyle,this._miterlimit=null,this._dashstyle=u&&e.Lang.isArray(u)&&u.length>1?u:null,this._strokeWeight=r,b(r)&&r>0?this._stroke=1:this._stroke=0,b(i)?this._strokeStyle=this._toRGBA(n,i):this._strokeStyle=n,this._linecap=o,s==="round"||s==="bevel"?this._linejoin=s:(s=parseInt(s,10),b(s)&&(this._miterlimit=Math.max(s,1),this._linejoin="miter"))):this._stroke=0},set:function(){var e=this;a.prototype.set.apply(e,arguments),e.initialized&&e._updateHandler()},_setFillProps:function(e){var t=b,n,r,i;e?(n=e.color,i=e.type,i==="linear"||i==="radial"?this._fillType=i:n?(r=e.opacity,t(r)?(r=Math.max(0 ,Math.min(1,r)),n=this._toRGBA(n,r)):n=E(n),this._fillColor=n,this._fillType="solid"):this._fillColor=null):(this._fillType=null,this._fillColor=null)},translate:function(e,t){this._translateX+=e,this._translateY+=t,this._addTransform("translate",arguments)},translateX:function(e){this._translateX+=e,this._addTransform("translateX",arguments)},translateY:function(e){this._translateY+=e,this._addTransform("translateY",arguments)},skew:function(){this._addTransform("skew",arguments)},skewX:function(){this._addTransform("skewX",arguments)},skewY:function(){this._addTransform("skewY",arguments)},rotate:function(){this._addTransform("rotate",arguments)},scale:function(){this._addTransform("scale",arguments)},_transform:"",_addTransform:function(t,n){n=e.Array(n),this._transform=u.trim(this._transform+" "+t+"("+n.join(", ")+")"),n.unshift(t),this._transforms.push(n),this.initialized&&this._updateTransform()},_updateTransform:function(){var e=this.node,t,n,r=this.get("transformOrigin"),i=this.matrix,s,o=this._transforms.length;if(this._transforms&&this._transforms.length>0){for(s=0;s0&&(a=f.shift(),a&&(a==="closePath"?(r.closePath(),this._strokeAndFill(r)):a&&a==="lineTo"&&this._dashstyle?(f.unshift(this._xcoords[o]-this._left,this._ycoords[o]-this._top),this._drawDashedLine.apply(this,f)):r[a].apply(r,f)));this._strokeAndFill(r),this._drawingComplete=!0,this._clearAndUpdateCoords(),this._updateNodePosition(),this._methods=s}},_strokeAndFill:function(e){this._fillType&&(this._fillType==="linear"?e.fillStyle=this._getLinearGradient():this._fillType==="radial"?e.fillStyle=this._getRadialGradient():e.fillStyle=this._fillColor,e.closePath(),e.fill()),this._stroke&&(this._strokeWeight&&(e.lineWidth=this._strokeWeight),e.lineCap=this._linecap,e.lineJoin=this._linejoin,this._miterlimit&&(e.miterLimit=this._miterlimit),e.strokeStyle=this._strokeStyle,e.stroke())},_drawDashedLine:function(e,t,n,r){var i=this._context,s=this._dashstyle[0],o=this._dashstyle[1],u=s+o,a=n-e,f=r-t,l=Math.sqrt(Math.pow(a,2)+Math.pow(f,2)),c=Math.floor(Math.abs(l/u)),h=Math.atan2(f,a),p=e,d=t,v;a=Math.cos(h)*u,f=Math.sin(h)*u;for(v=0;vs?i.lineTo(p+Math.cos(h)*s,d+Math.sin(h)*s):l>0&&i.lineTo(p+Math.cos(h)*l,d+Math.sin(h)*l),i.moveTo(n,r)},getBounds:function(){var e=this._type,t=this.get("width"),n=this.get("height"),r=this.get("x"),i=this.get("y");return e==="path"&&(r+=this._left,i+=this._top,t=this._right-this._left,n=this._bottom-this._top),this._getContentRect(t,n,r,i)},_getContentRect:function(t,n,r,i){var s=this.get("transformOrigin"),o=s[0]*t,u=s[1]*n,a=this.matrix.getTransformArray(this.get("transform")),f=new e.Matrix,l,c=a.length,h,p,d;this._type==="path"&&(o+=r,u+=i),o=isNaN(o)?0:o,u=isNaN(u)?0:u,f.translate(o,u);for(l=0;l0)if(u.isString&&r[n])s=!0;else if(u.isObject(n))for(i in r)if(r.hasOwnProperty(i)&&n[i]){s=!0;break}s&&t._redraw()},_x:0,_y:0,getXY:function(){var t=e.one(this._node),n;return t&&(n=t.getXY()),n},initializer:function(){var e=this.get("render"),t=this.get("visible")?"visible":"hidden",n=this.get("width")||0,r=this.get("height")||0;this._shapes={},this._redrawQueue={},this._contentBounds={left:0,top:0,right:0,bottom:0},this._node=o.createElement("div"),this._node.style.position="absolute",this._node.style.visibility=t,this.set("width",n),this.set("height",r),e&&this.render(e)},render:function(t){var n=e.one(t),r=this._node,i=this.get("width")||parseInt(n.getComputedStyle("width"),10),s=this.get("height")||parseInt(n.getComputedStyle("height"),10);return n=n||o.body,n.appendChild(r),r.style.display="block",r.style.position="absolute",r.style.left="0px",r.style.top="0px",this.set("width",i),this.set("height",s),this.parentNode=n,this},destroy:function(){this.removeAllShapes(),this._node&&(this._removeChildren(this._node),e.one(this._node).destroy())},addShape:function(e){e.graphic=this,this.get("visible")||(e.visible=!1);var t=this._getShapeClass(e.type),n=new t(e);return this._appendShape(n),n},_appendShape:function(e){var t=e.node,n=this._frag||this._node;this.get("autoDraw")?n.appendChild(t):this._getDocFrag().appendChild(t)},removeShape:function(e){return e instanceof f||u.isString(e)&&(e=this._shapes[e]),e&&e instanceof f&&(e._destroy(),delete this._shapes[e.get("id")]),this.get("autoDraw")&&this._redraw(),e},removeAllShapes:function(){var e=this._shapes,t;for(t in e)e.hasOwnProperty(t)&&e[t].destroy();this._shapes={}},clear:function(){this.removeAllShapes()},_removeChildren:function(e){if(e&&e.hasChildNodes()){var t;while(e.firstChild)t=e.firstChild,this._removeChildren(t),e.removeChild(t)}},_toggleVisible:function(e){var t,n=this._shapes,r=e?"visible":"hidden";if(n)for(t in n)n.hasOwnProperty(t)&&n[t].set("visible",e);this._node&&(this._node.style.visibility=r)},_getShapeClass:function(e){var t=this._shapeClass[e];return t?t:e},_shapeClass:{circle:e.CanvasCircle,rect:e.CanvasRect,path:e.CanvasPath,ellipse:e.CanvasEllipse,pieslice:e.CanvasPieSlice},getShapeById:function(e){var t=this._shapes -[e];return t},batch:function(e){var t=this.get("autoDraw");this.set("autoDraw",!1),e(),this.set("autoDraw",t)},_getDocFrag:function(){return this._frag||(this._frag=o.createDocumentFragment()),this._frag},_redraw:function(){var t=this.get("autoSize"),n=this.get("preserveAspectRatio"),r=this.get("resizeDown")?this._getUpdatedContentBounds():this._contentBounds,i,s,o,u,a,f,l=0,c=0,h,p=this.get("node");t&&(t==="sizeContentToGraphic"?(i=r.right-r.left,s=r.bottom-r.top,o=parseFloat(v.getComputedStyle(p,"width")),u=parseFloat(v.getComputedStyle(p,"height")),h=new e.Matrix,n==="none"?(a=o/i,f=u/s):i/s!==o/u&&(i*u/s>o?(a=f=o/i,c=this._calculateTranslate(n.slice(5).toLowerCase(),s*o/i,u)):(a=f=u/s,l=this._calculateTranslate(n.slice(1,4).toLowerCase(),i*u/s,o))),v.setStyle(p,"transformOrigin","0% 0%"),l-=r.left*a,c-=r.top*f,h.translate(l,c),h.scale(a,f),v.setStyle(p,"transform",h.toCSSText())):(this.set("width",r.right),this.set("height",r.bottom))),this._frag&&(this._node.appendChild(this._frag),this._frag=null)},_calculateTranslate:function(e,t,n){var r=n-t,i;switch(e){case"mid":i=r*.5;break;case"max":i=r;break;default:i=0}return i},addToRedrawQueue:function(e){var t,n;this._shapes[e.get("id")]=e,this.get("resizeDown")||(t=e.getBounds(),n=this._contentBounds,n.left=n.leftt.right?n.right:t.right,n.bottom=n.bottom>t.bottom?n.bottom:t.bottom,this._contentBounds=n),this.get("autoDraw")&&this._redraw()},_getUpdatedContentBounds:function(){var e,t,n,r=this._shapes,i={};for(t in r)r.hasOwnProperty(t)&&(n=r[t],e=n.getBounds(),i.left=u.isNumber(i.left)?Math.min(i.left,e.left):e.left,i.top=u.isNumber(i.top)?Math.min(i.top,e.top):e.top,i.right=u.isNumber(i.right)?Math.max(i.right,e.right):e.right,i.bottom=u.isNumber(i.bottom)?Math.max(i.bottom,e.bottom):e.bottom);return i.left=u.isNumber(i.left)?i.left:0,i.top=u.isNumber(i.top)?i.top:0,i.right=u.isNumber(i.right)?i.right:0,i.bottom=u.isNumber(i.bottom)?i.bottom:0,this._contentBounds=i,i},_toFront:function(t){var n=this.get("node");t instanceof e.CanvasShape&&(t=t.get("node")),n&&t&&n.appendChild(t)},_toBack:function(t){var n=this.get("node"),r;t instanceof e.CanvasShape&&(t=t.get("node")),n&&t&&(r=n.firstChild,r?n.insertBefore(t,r):n.appendChild(t))}}),e.CanvasGraphic=N},"3.9.1",{requires:["graphics"]}); +[e];return t},batch:function(e){var t=this.get("autoDraw");this.set("autoDraw",!1),e(),this.set("autoDraw",t)},_getDocFrag:function(){return this._frag||(this._frag=o.createDocumentFragment()),this._frag},_redraw:function(){var t=this.get("autoSize"),n=this.get("preserveAspectRatio"),r=this.get("resizeDown")?this._getUpdatedContentBounds():this._contentBounds,i,s,o,u,a,f,l=0,c=0,h,p=this.get("node");t&&(t==="sizeContentToGraphic"?(i=r.right-r.left,s=r.bottom-r.top,o=parseFloat(v.getComputedStyle(p,"width")),u=parseFloat(v.getComputedStyle(p,"height")),h=new e.Matrix,n==="none"?(a=o/i,f=u/s):i/s!==o/u&&(i*u/s>o?(a=f=o/i,c=this._calculateTranslate(n.slice(5).toLowerCase(),s*o/i,u)):(a=f=u/s,l=this._calculateTranslate(n.slice(1,4).toLowerCase(),i*u/s,o))),v.setStyle(p,"transformOrigin","0% 0%"),l-=r.left*a,c-=r.top*f,h.translate(l,c),h.scale(a,f),v.setStyle(p,"transform",h.toCSSText())):(this.set("width",r.right),this.set("height",r.bottom))),this._frag&&(this._node.appendChild(this._frag),this._frag=null)},_calculateTranslate:function(e,t,n){var r=n-t,i;switch(e){case"mid":i=r*.5;break;case"max":i=r;break;default:i=0}return i},addToRedrawQueue:function(e){var t,n;this._shapes[e.get("id")]=e,this.get("resizeDown")||(t=e.getBounds(),n=this._contentBounds,n.left=n.leftt.right?n.right:t.right,n.bottom=n.bottom>t.bottom?n.bottom:t.bottom,this._contentBounds=n),this.get("autoDraw")&&this._redraw()},_getUpdatedContentBounds:function(){var e,t,n,r=this._shapes,i={};for(t in r)r.hasOwnProperty(t)&&(n=r[t],e=n.getBounds(),i.left=u.isNumber(i.left)?Math.min(i.left,e.left):e.left,i.top=u.isNumber(i.top)?Math.min(i.top,e.top):e.top,i.right=u.isNumber(i.right)?Math.max(i.right,e.right):e.right,i.bottom=u.isNumber(i.bottom)?Math.max(i.bottom,e.bottom):e.bottom);return i.left=u.isNumber(i.left)?i.left:0,i.top=u.isNumber(i.top)?i.top:0,i.right=u.isNumber(i.right)?i.right:0,i.bottom=u.isNumber(i.bottom)?i.bottom:0,this._contentBounds=i,i},_toFront:function(t){var n=this.get("node");t instanceof e.CanvasShape&&(t=t.get("node")),n&&t&&n.appendChild(t)},_toBack:function(t){var n=this.get("node"),r;t instanceof e.CanvasShape&&(t=t.get("node")),n&&t&&(r=n.firstChild,r?n.insertBefore(t,r):n.appendChild(t))}}),e.CanvasGraphic=N},"3.12.0",{requires:["graphics"]}); diff --git a/lib/yuilib/3.9.1/build/graphics-canvas/graphics-canvas.js b/lib/yuilib/3.12.0/graphics-canvas/graphics-canvas.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/graphics-canvas/graphics-canvas.js rename to lib/yuilib/3.12.0/graphics-canvas/graphics-canvas.js index 6b3e3eda92f..9cda8cf5048 --- a/lib/yuilib/3.9.1/build/graphics-canvas/graphics-canvas.js +++ b/lib/yuilib/3.12.0/graphics-canvas/graphics-canvas.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics-canvas', function (Y, NAME) { var IMPLEMENTATION = "canvas", @@ -3671,4 +3677,4 @@ Y.extend(CanvasGraphic, Y.GraphicBase, { Y.CanvasGraphic = CanvasGraphic; -}, '3.9.1', {"requires": ["graphics"]}); +}, '3.12.0', {"requires": ["graphics"]}); diff --git a/lib/yuilib/3.9.1/build/graphics-group/graphics-group-debug.js b/lib/yuilib/3.12.0/graphics-group/graphics-group-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/graphics-group/graphics-group-debug.js rename to lib/yuilib/3.12.0/graphics-group/graphics-group-debug.js index 0064682b184..043c4c2a5d9 --- a/lib/yuilib/3.9.1/build/graphics-group/graphics-group-debug.js +++ b/lib/yuilib/3.12.0/graphics-group/graphics-group-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics-group', function (Y, NAME) { /** @@ -308,4 +314,4 @@ EllipseGroup.ATTRS = Y.ShapeGroup.ATTRS; Y.EllipseGroup = EllipseGroup; -}, '3.9.1', {"requires": ["graphics"]}); +}, '3.12.0', {"requires": ["graphics"]}); diff --git a/lib/yuilib/3.9.1/build/graphics-group/graphics-group-min.js b/lib/yuilib/3.12.0/graphics-group/graphics-group-min.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/graphics-group/graphics-group-min.js rename to lib/yuilib/3.12.0/graphics-group/graphics-group-min.js index 38b3b118465..bdc8292c432 --- a/lib/yuilib/3.9.1/build/graphics-group/graphics-group-min.js +++ b/lib/yuilib/3.12.0/graphics-group/graphics-group-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("graphics-group",function(e,t){var n,r,i,s,o,u=e.Lang;n=function(){n.superclass.constructor.apply(this,arguments)},n.NAME="shapeGroup",e.extend(n,e.Path,{_draw:function(){var e=this.get("xvalues"),t=this.get("yvalues"),n,r,i,s,o=0,a,f=this.get("dimensions"),l=f.width,c=f.height,h=f.radius,p=f.yRadius,d=u.isArray(l),v=u.isArray(c),m=u.isArray(h),g=u.isArray(p);if(e&&t&&e.length>0){this.clear(),a=e.length;for(;o0){this.clear(),a=e.length;for(;o360&&(r=360),o=Math.ceil(Math.abs(r)/45),u=r/o,a=-(u/180)*Math.PI,f=n/180*Math.PI;if(o>0){c=e+Math.cos(n/180*Math.PI)*i,h=t+Math.sin(n/180*Math.PI)*s,this._pathType="L",w++,this._pathArray[w]=["L"],this._pathArray[w].push(this._round(c)),this._pathArray[w].push(this._round(h)),w++,this._pathType="Q",this._pathArray[w]=["Q"];for(g=0;g0){n=t.shift(),i=n.length,r=n[0],r==="A"?u+=r+n[1]+","+n[2]:r==="z"||r==="Z"?u+=" z ":r==="C"||r==="c"?u+=r+(n[1]-f)+","+(n[2]-l):u+=" "+r+parseFloat(n[1]-f);switch(r){case"L":case"l":case"M":case"m":case"Q":case"q":for(o=2;othis._right&&(this._right=e),ethis._bottom&&(this._bottom=t),this._width=this._right-this._left,this._height=this._bottom-this._top}},e.SVGDrawing=g,f=function(){this._transforms=[],this.matrix=new e.Matrix,this._normalizedMatrix=new e.Matrix,f.superclass.constructor.apply(this,arguments)},f.NAME="shape",e.extend(f,e.GraphicBase,e.mix({_x:0,_y:0,init:function(){this.initializer.apply(this,arguments)},initializer:function(e){var t=this,n=e.graphic,r=this.get("data");t.createNode(),n&&t._setGraphic(n),r&&t._parsePathData(r),t._updateHandler()},_setGraphic:function(t){var n;t instanceof e.SVGGraphic?this._graphic=t:(t=e.one(t),n=new e.SVGGraphic({render:t}),n._appendShape(this),this._graphic=n)},addClass:function(e){var t=this.node;t.className.baseVal=o.trim([t.className.baseVal,e].join(" "))},removeClass:function(e){var t=this.node,n=t.className.baseVal;n=n.replace(new RegExp(e+" "),e).replace(new RegExp(e),""),t.className.baseVal=n},getXY:function(){var e=this._graphic,t=e.getXY(),n=this._x,r=this._y;return[t[0]+n,t[1]+r]},setXY:function(e){var t=this._graphic,n=t.getXY();this._x=e[0]-n[0],this._y=e[1]-n[1],this.set("transform",this.get("transform"))},contains:function(t){return t===e.one(this.node)},compareTo:function(e){var t=this.node;return t===e},test:function(t){return e.Selector.test(this.node,t)},_getDefaultFill:function(){return{type:"solid",opacity:1,cx:.5,cy:.5,fx:.5,fy:.5,r:.5}},_getDefaultStroke:function(){return{weight:1,dashstyle:"none",color:"#000",opacity:1}},createNode:function(){var t=this,i=v.createElementNS("http://www.w3.org/2000/svg","svg:"+this._type),s=t.get("id"),o=t.name,u=t._camelCaseConcat,a=t.get("pointerEvents");t.node=i,t.addClass(m(r)+" "+m(u(n,r))+" "+m(o)+" "+m(u(n,o))),s&&i.setAttribute("id",s),a&&i.setAttribute("pointer-events",a),t.get("visible")||e.one(i).setStyle("visibility","hidden")},on:function(t,n){return e.Node.DOM_EVENTS[t]?e.one("#"+this.get("id")).on(t,n):e.on.apply(this,arguments)},_strokeChangeHandler:function(){var e=this.node,t=this.get("stroke"),n,r,i,s;t&&t.weight&&t.weight>0?(s=t.linejoin||"round",n=parseFloat(t.opacity),r=t.dashstyle||"none",i=o.isArray(r)?r.toString():r,t.color=t.color||"#000000",t.weight=t.weight||1,t.opacity=o.isNumber(n)?n:1,t.linecap=t.linecap||"butt",e.setAttribute("stroke-dasharray",i),e.setAttribute("stroke",t.color),e.setAttribute("stroke-linecap",t.linecap),e.setAttribute("stroke-width",t.weight),e.setAttribute("stroke-opacity",t.opacity),s==="round"||s==="bevel"?e.setAttribute("stroke-linejoin",s):(s=parseInt(s,10),o.isNumber(s)&&(e.setAttribute("stroke-miterlimit",Math.max(s,1)),e.setAttribute("stroke-linejoin","miter")))):e.setAttribute("stroke","none")},_fillChangeHandler:function(){var e=this.node,t=this.get("fill"),n,r;t?(r=t.type,r==="linear"||r==="radial"?(this._setGradientFill(t),e.setAttribute("fill","url(#grad"+this.get("id")+")")):t.color?(n=parseFloat(t.opacity),n=o.isNumber(n)?n:1,e.setAttribute("fill",t.color),e.setAttribute("fill-opacity",n)):e.setAttribute("fill","none")):e.setAttribute("fill","none")},_setGradientFill:function(e){var t,n,r,i,s,u=o.isNumber,a=this._graphic,f=e.type,l=a.getGradientNode("grad"+this.get("id"),f),c=e.stops,h=this.get("width"),p=this.get("height"),d=e.rotation||0,v=Math.PI/180,m=parseFloat(parseFloat(Math.tan(d*v)).toFixed(8)),g,y,b,w,E="0%",S="100%",x="0%",T="0%",N=e.cx,C=e.cy,k=e.fx,L=e.fy,A=e.r,O=[];f==="linear"?(N=h/2,C=p/2,Math.abs(m)*h/2>=p/2?(d<180?(x=0,T=p):(x=p,T=0),E=N-(C-x)/m,S=N-(C-T)/m):(d>90&&d<270?(E=h,S=0):(E=0,S=h),x=(m*(N-E)-C)*-1,T=(m*(N-S)-C)*-1),E=Math.round(100*E/h),S=Math.round(100*S/h),x=Math.round(100*x/p),T=Math.round(100*T/p),E=u(E)?E:0,S=u(S)?S:100,x=u(x)?x:0,T=u(T)?T:0,l.setAttribute("spreadMethod","pad"),l.setAttribute("width",h),l.setAttribute("height",p),l.setAttribute +("x1",E+"%"),l.setAttribute("x2",S+"%"),l.setAttribute("y1",x+"%"),l.setAttribute("y2",T+"%")):(l.setAttribute("cx",N*100+"%"),l.setAttribute("cy",C*100+"%"),l.setAttribute("fx",k*100+"%"),l.setAttribute("fy",L*100+"%"),l.setAttribute("r",A*100+"%")),y=c.length,b=0;for(g=0;g0?(i=this._stops.shift(),s=!1):(i=a._createGraphicNode("stop"),s=!0),w=c[g],n=w.opacity,r=w.color,t=w.offset||g/(y-1),t=Math.round(t*100)+"%",n=u(n)?n:1,n=Math.max(0,Math.min(1,n)),b=(g+1)/y,i.setAttribute("offset",t),i.setAttribute("stop-color",r),i.setAttribute("stop-opacity",n),s&&l.appendChild(i),O.push(i);while(this._stops&&this._stops.length>0)l.removeChild(this._stops.shift());this._stops=O},_stops:null,set:function(){var e=this;u.prototype.set.apply(e,arguments),e.initialized&&e._updateHandler()},translate:function(){this._addTransform("translate",arguments)},translateX:function(){this._addTransform("translateX",arguments)},translateY:function(){this._addTransform("translateY",arguments)},skew:function(){this._addTransform("skew",arguments)},skewX:function(){this._addTransform("skewX",arguments)},skewY:function(){this._addTransform("skewY",arguments)},rotate:function(){this._addTransform("rotate",arguments)},scale:function(){this._addTransform("scale",arguments)},_addTransform:function(t,n){n=e.Array(n),this._transform=o.trim(this._transform+" "+t+"("+n.join(", ")+")"),n.unshift(t),this._transforms.push(n),this.initialized&&this._updateTransform()},_updateTransform:function(){var t=this._type==="path",n=this.node,r,i,s,o,u,a,f,l=this.matrix,c=this._normalizedMatrix,h,p=this._transforms.length;if(t||this._transforms&&this._transforms.length>0){o=this._x,u=this._y,s=this.get("transformOrigin"),a=o+s[0]*this.get("width"),f=u+s[1]*this.get("height"),t&&(this instanceof e.SVGPath||(a=this._left+s[0]*this.get("width"),f=this._top+s[1]*this.get("height")),c.init({dx:o+this._left,dy:u+this._top})),c.translate(a,f);for(h=0;h0)if(o.isString&&r[n])s=!0;else if(o.isObject(n))for(i in r)if(r.hasOwnProperty(i)&&n[i]){s=!0;break}s&&t._redraw()},_x:0,_y:0,getXY:function(){var t=e.one(this._node),n;return t&&(n=t.getXY()),n},initializer:function(){var e=this.get("render"),t=this.get("visible")?"visible":"hidden";this._shapes={},this._contentBounds={left:0,top:0,right:0,bottom:0},this._gradients={},this._node=v.createElement("div"),this._node.style.position="absolute",this._node.style.left=this.get("x")+"px",this._node.style.top=this.get("y")+"px",this._node.style.visibility=t,this._contentNode=this._createGraphics(),this._contentNode.style.visibility=t,this._contentNode.setAttribute("id",this.get("id")),this._node.appendChild(this._contentNode),e&&this.render(e)},render:function(t){var n=e.one(t),r=this.get("width")||parseInt(n.getComputedStyle("width"),10),i=this.get("height")||parseInt(n.getComputedStyle("height"),10);return n=n||e.one(v.body),n.append(this._node),this.parentNode=n,this.set("width",r),this.set("height",i),this},destroy:function(){this.removeAllShapes(),this._contentNode&&(this._removeChildren(this._contentNode),this._contentNode.parentNode&&this._contentNode.parentNode.removeChild(this._contentNode),this._contentNode=null),this._node&&(this._removeChildren(this._node),e.one(this._node).remove(!0),this._node=null)},addShape:function(e){e.graphic=this,this.get("visible")||(e.visible=!1);var t=this._getShapeClass(e.type),n=new t(e);return this._appendShape(n),n},_appendShape:function(e){var t=e.node,n=this._frag||this._contentNode;this.get("autoDraw")?n.appendChild(t):this._getDocFrag().appendChild(t)},removeShape:function(e){return e instanceof f||o.isString(e)&&(e=this._shapes[e]),e&&e instanceof f&&(e._destroy(),delete this._shapes[e.get("id")]),this.get("autoDraw")&&this._redraw(),e},removeAllShapes:function(){var e=this._shapes,t;for(t in e)e.hasOwnProperty(t)&&e[t]._destroy();this._shapes={}},_removeChildren:function(e){if(e.hasChildNodes()){var t;while(e.firstChild)t=e.firstChild,this._removeChildren(t),e.removeChild(t)}},clear:function(){this.removeAllShapes()},_toggleVisible:function(e){var t,n=this._shapes,r=e?"visible":"hidden";if(n)for(t in n)n.hasOwnProperty(t)&&n[t].set("visible",e);this._contentNode&&(this._contentNode.style.visibility=r),this._node&&(this._node.style.visibility=r)},_getShapeClass:function(e){var t=this._shapeClass[e];return t?t:e},_shapeClass:{circle:e.SVGCircle,rect:e.SVGRect,path:e.SVGPath,ellipse:e.SVGEllipse,pieslice:e.SVGPieSlice},getShapeById:function(e){var t=this._shapes[e];return t},batch:function(e){var t=this.get("autoDraw");this.set("autoDraw",!1),e(),this.set("autoDraw",t)},_getDocFrag:function(){return this._frag||(this._frag=v.createDocumentFragment()),this._frag},_redraw:function(){var t=this.get("autoSize"),n=this.get("preserveAspectRatio"),r=this.get("resizeDown")?this._getUpdatedContentBounds():this._contentBounds,i=r.left,s=r.right,o=r.top,u=r.bottom,a=s-i,f=u-o,l,c,h,p,d;t?t==="sizeContentToGraphic"?(d=e.one(this._node),l=parseFloat(d.getComputedStyle("width")),c=parseFloat(d.getComputedStyle("height")),h=p=0,this._contentNode.setAttribute("preserveAspectRatio",n)):(l=a,c=f,h=i,p=o,this._state.width=a,this._state.height=f,this._node&&(this._node.style.width=a+"px" +,this._node.style.height=f+"px")):(l=a,c=f,h=i,p=o),this._contentNode&&(this._contentNode.style.left=h+"px",this._contentNode.style.top=p+"px",this._contentNode.setAttribute("width",l),this._contentNode.setAttribute("height",c),this._contentNode.style.width=l+"px",this._contentNode.style.height=c+"px",this._contentNode.setAttribute("viewBox",""+i+" "+o+" "+a+" "+f+"")),this._frag&&(this._contentNode&&this._contentNode.appendChild(this._frag),this._frag=null)},addToRedrawQueue:function(e){var t,n;this._shapes[e.get("id")]=e,this.get("resizeDown")||(t=e.getBounds(),n=this._contentBounds,n.left=n.leftt.right?n.right:t.right,n.bottom=n.bottom>t.bottom?n.bottom:t.bottom,n.width=n.right-n.left,n.height=n.bottom-n.top,this._contentBounds=n),this.get("autoDraw")&&this._redraw()},_getUpdatedContentBounds:function(){var e,t,n,r=this._shapes,i={};for(t in r)r.hasOwnProperty(t)&&(n=r[t],e=n.getBounds(),i.left=o.isNumber(i.left)?Math.min(i.left,e.left):e.left,i.top=o.isNumber(i.top)?Math.min(i.top,e.top):e.top,i.right=o.isNumber(i.right)?Math.max(i.right,e.right):e.right,i.bottom=o.isNumber(i.bottom)?Math.max(i.bottom,e.bottom):e.bottom);return i.left=o.isNumber(i.left)?i.left:0,i.top=o.isNumber(i.top)?i.top:0,i.right=o.isNumber(i.right)?i.right:0,i.bottom=o.isNumber(i.bottom)?i.bottom:0,this._contentBounds=i,i},_createGraphics:function(){var e=this._createGraphicNode("svg"),t=this.get("pointerEvents");return e.style.position="absolute",e.style.top="0px",e.style.left="0px",e.style.overflow="auto",e.setAttribute("overflow","auto"),e.setAttribute("pointer-events",t),e},_createGraphicNode:function(e,t){var n=v.createElementNS("http://www.w3.org/2000/svg","svg:"+e),r=t||"none";return e!=="defs"&&e!=="stop"&&e!=="linearGradient"&&e!=="radialGradient"&&n.setAttribute("pointer-events",r),n},getGradientNode:function(e,t){var n=this._gradients,r,i=t+"Gradient";return n.hasOwnProperty(e)&&n[e].tagName.indexOf(t)>-1?r=this._gradients[e]:(r=this._createGraphicNode(i),this._defs||(this._defs=this._createGraphicNode("defs"),this._contentNode.appendChild(this._defs)),this._defs.appendChild(r),e=e||"gradient"+Math.round(1e5*Math.random()),r.setAttribute("id",e),n.hasOwnProperty(e)&&this._defs.removeChild(n[e]),n[e]=r),r},_toFront:function(t){var n=this._contentNode;t instanceof e.SVGShape&&(t=t.get("node")),n&&t&&n.appendChild(t)},_toBack:function(t){var n=this._contentNode,r;t instanceof e.SVGShape&&(t=t.get("node")),n&&t&&(r=n.firstChild,r?n.insertBefore(t,r):n.appendChild(t))}}),e.SVGGraphic=a},"3.12.0",{requires:["graphics"]}); diff --git a/lib/yuilib/3.9.1/build/graphics-svg/graphics-svg.js b/lib/yuilib/3.12.0/graphics-svg/graphics-svg.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/graphics-svg/graphics-svg.js rename to lib/yuilib/3.12.0/graphics-svg/graphics-svg.js index 9225e776b30..12930a1d73d --- a/lib/yuilib/3.9.1/build/graphics-svg/graphics-svg.js +++ b/lib/yuilib/3.12.0/graphics-svg/graphics-svg.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics-svg', function (Y, NAME) { var IMPLEMENTATION = "svg", @@ -30,6 +36,18 @@ function SVGDrawing(){} * @constructor */ SVGDrawing.prototype = { + /** + * Rounds a value to the nearest hundredth. + * + * @method _round + * @param {Number} val Value to be rounded. + * @return Number + * @private + */ + _round: function(val) { + return Math.round(val * 100)/100; + }, + /** * Maps path to methods * @@ -466,8 +484,8 @@ SVGDrawing.prototype = { this._pathType = "L"; pathArrayLen++; this._pathArray[pathArrayLen] = ["L"]; - this._pathArray[pathArrayLen].push(Math.round(ax)); - this._pathArray[pathArrayLen].push(Math.round(ay)); + this._pathArray[pathArrayLen].push(this._round(ax)); + this._pathArray[pathArrayLen].push(this._round(ay)); pathArrayLen++; this._pathType = "Q"; this._pathArray[pathArrayLen] = ["Q"]; @@ -479,10 +497,10 @@ SVGDrawing.prototype = { by = y + Math.sin(angle) * yRadius; cx = x + Math.cos(angleMid) * (radius / Math.cos(theta / 2)); cy = y + Math.sin(angleMid) * (yRadius / Math.cos(theta / 2)); - this._pathArray[pathArrayLen].push(Math.round(cx)); - this._pathArray[pathArrayLen].push(Math.round(cy)); - this._pathArray[pathArrayLen].push(Math.round(bx)); - this._pathArray[pathArrayLen].push(Math.round(by)); + this._pathArray[pathArrayLen].push(this._round(cx)); + this._pathArray[pathArrayLen].push(this._round(cy)); + this._pathArray[pathArrayLen].push(this._round(bx)); + this._pathArray[pathArrayLen].push(this._round(by)); } } this._currentX = x; @@ -3499,4 +3517,4 @@ Y.SVGGraphic = SVGGraphic; -}, '3.9.1', {"requires": ["graphics"]}); +}, '3.12.0', {"requires": ["graphics"]}); diff --git a/lib/yuilib/3.9.1/build/graphics-vml-default/graphics-vml-default-debug.js b/lib/yuilib/3.12.0/graphics-vml-default/graphics-vml-default-debug.js old mode 100644 new mode 100755 similarity index 58% rename from lib/yuilib/3.9.1/build/graphics-vml-default/graphics-vml-default-debug.js rename to lib/yuilib/3.12.0/graphics-vml-default/graphics-vml-default-debug.js index 2f1a27f5fb6..2c044aac016 --- a/lib/yuilib/3.9.1/build/graphics-vml-default/graphics-vml-default-debug.js +++ b/lib/yuilib/3.12.0/graphics-vml-default/graphics-vml-default-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics-vml-default', function (Y, NAME) { Y.Graphic = Y.VMLGraphic; @@ -10,4 +16,4 @@ Y.Path = Y.VMLPath; Y.Drawing = Y.VMLDrawing; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/graphics-vml-default/graphics-vml-default-min.js b/lib/yuilib/3.12.0/graphics-vml-default/graphics-vml-default-min.js old mode 100644 new mode 100755 similarity index 55% rename from lib/yuilib/3.9.1/build/graphics-vml-default/graphics-vml-default-min.js rename to lib/yuilib/3.12.0/graphics-vml-default/graphics-vml-default-min.js index 34a67f131dc..f2ab43f11c2 --- a/lib/yuilib/3.9.1/build/graphics-vml-default/graphics-vml-default-min.js +++ b/lib/yuilib/3.12.0/graphics-vml-default/graphics-vml-default-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("graphics-vml-default",function(e,t){e.Graphic=e.VMLGraphic,e.Shape=e.VMLShape,e.Circle=e.VMLCircle,e.Rect=e.VMLRect,e.Ellipse=e.VMLEllipse,e.Path=e.VMLPath,e.Drawing=e.VMLDrawing},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("graphics-vml-default",function(e,t){e.Graphic=e.VMLGraphic,e.Shape=e.VMLShape,e.Circle=e.VMLCircle,e.Rect=e.VMLRect,e.Ellipse=e.VMLEllipse,e.Path=e.VMLPath,e.Drawing=e.VMLDrawing},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/graphics-vml-default/graphics-vml-default.js b/lib/yuilib/3.12.0/graphics-vml-default/graphics-vml-default.js old mode 100644 new mode 100755 similarity index 58% rename from lib/yuilib/3.9.1/build/graphics-vml-default/graphics-vml-default.js rename to lib/yuilib/3.12.0/graphics-vml-default/graphics-vml-default.js index 2f1a27f5fb6..2c044aac016 --- a/lib/yuilib/3.9.1/build/graphics-vml-default/graphics-vml-default.js +++ b/lib/yuilib/3.12.0/graphics-vml-default/graphics-vml-default.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics-vml-default', function (Y, NAME) { Y.Graphic = Y.VMLGraphic; @@ -10,4 +16,4 @@ Y.Path = Y.VMLPath; Y.Drawing = Y.VMLDrawing; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/graphics-vml/graphics-vml-debug.js b/lib/yuilib/3.12.0/graphics-vml/graphics-vml-debug.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/graphics-vml/graphics-vml-debug.js rename to lib/yuilib/3.12.0/graphics-vml/graphics-vml-debug.js index 0460786b988..ddcc8675213 --- a/lib/yuilib/3.9.1/build/graphics-vml/graphics-vml-debug.js +++ b/lib/yuilib/3.12.0/graphics-vml/graphics-vml-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics-vml', function (Y, NAME) { var IMPLEMENTATION = "vml", @@ -3715,4 +3721,4 @@ Y.VMLGraphic = VMLGraphic; -}, '3.9.1', {"requires": ["graphics"]}); +}, '3.12.0', {"requires": ["graphics"]}); diff --git a/lib/yuilib/3.9.1/build/graphics-vml/graphics-vml-min.js b/lib/yuilib/3.12.0/graphics-vml/graphics-vml-min.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/graphics-vml/graphics-vml-min.js rename to lib/yuilib/3.12.0/graphics-vml/graphics-vml-min.js index ef4295fede0..0921a84f077 --- a/lib/yuilib/3.9.1/build/graphics-vml/graphics-vml-min.js +++ b/lib/yuilib/3.12.0/graphics-vml/graphics-vml-min.js @@ -1,6 +1,12 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add("graphics-vml",function(e,t){function E(){}var n="vml",r="shape",i=/[a-z][^a-z]*/ig,s=/[\-]?[0-9]*[0-9|\.][0-9]*/g,o=e.Lang,u=o.isNumber,a=o.isArray,f=e.DOM,l=e.Selector,c=e.config.doc,h=e.AttributeLite,p,d,v,m,g,y,b,w=e.ClassNameManager.getClassName;E.prototype={_pathSymbolToMethod:{M:"moveTo",m:"relativeMoveTo",L:"lineTo",l:"relativeLineTo",C:"curveTo",c:"relativeCurveTo",Q:"quadraticCurveTo",q:"relativeQuadraticCurveTo",z:"closePath",Z:"closePath"},_coordSpaceMultiplier:100,_round:function(e){return Math.round(e*this._coordSpaceMultiplier)},_addToPath:function(e){this._path=this._path||"",this._movePath&&(this._path+=this._movePath,this._movePath=null),this._path+=e},_currentX:0,_currentY:0,curveTo:function(){return this._curveTo.apply(this,[e.Array(arguments),!1]),this},relativeCurveTo:function(){return this._curveTo.apply(this,[e.Array(arguments),!0]),this},_curveTo:function(e,t){var n,r,i,s,o,u,a,f,l,c,h,p,d,v,m,g,y=t?" v ":" c ",b=t?parseFloat(this._currentX):0,w=t?parseFloat(this._currentY):0;m=e.length-5,g=y;for(v=0;v0&&(g+=", "),g=g+this._round(o)+", "+this._round(u)+", "+this._round(a)+", "+this._round(f)+", "+this._round(i)+", "+this._round(s),o+=b,u+=w,a+=b,f+=w,i+=b,s+=w,c=Math.max(i,Math.max(o,a)),p=Math.max(s,Math.max(u,f)),h=Math.min(i,Math.min(o,a)),d=Math.min(s,Math.min(u,f)),n=Math.abs(c-h),r=Math.abs(p-d),l=[[this._currentX,this._currentY],[o,u],[a,f],[i,s]],this._setCurveBoundingBox(l,n,r),this._currentX=i,this._currentY=s;this._addToPath(g)},quadraticCurveTo:function(){return this._quadraticCurveTo.apply(this,[e.Array(arguments),!1]),this},relativeQuadraticCurveTo:function(){return this._quadraticCurveTo.apply(this,[e.Array(arguments),!0]),this},_quadraticCurveTo:function(e,t){var n,r,i,s,o,u,a,f,l=this._currentX,c=this._currentY,h,p=e.length-3,d=[],v=t?parseFloat(this._currentX):0,m=t?parseFloat(this._currentY):0;for(h=0;h360&&(r=360),this._currentX=e,this._currentY=t,n*=-65535,r*=65536,n=Math.round(n),r=Math.round(r),this.moveTo(e,t),this._addToPath(" ae "+this._round(e)+", "+this._round(t)+", "+this._round(i)+" "+this._round(i)+", "+n+", "+r),this._trackSize(s,s),this},lineTo:function(){return this._lineTo.apply(this,[e.Array(arguments),!1]),this},relativeLineTo:function(){return this._lineTo.apply(this,[e.Array(arguments),!0]),this},_lineTo:function(e,t){var n=e[0],r,i,s,o,u=t?" r ":" l ",a=t?parseFloat(this._currentX):0,f=t?parseFloat(this._currentY):0;if(typeof n=="string"||typeof n=="number"){i=e.length-1;for(r=0;rthis._right&&(this._right=e),ethis._bottom&&(this._bottom=t),this._width=this._right-this._left,this._height=this._bottom-this._top},_left:0,_right:0,_top:0,_bottom:0,_width:0,_height:0},e.VMLDrawing=E,p=function(){this._transforms=[],this.matrix=new e.Matrix,this._normalizedMatrix=new e.Matrix,p.superclass.constructor.apply(this,arguments)},p.NAME="shape",e.extend(p,e.GraphicBase,e.mix({_type:"shape",init:function(){this.initializer.apply(this,arguments)},initializer:function(e){var t=this,n=e.graphic,r=this.get("data");t.createNode(),n&&this._setGraphic(n),r&&t._parsePathData(r),this._updateHandler()},_setGraphic:function(t){var n;t instanceof e.VMLGraphic?this._graphic=t:(t=e.one(t),n=new e.VMLGraphic({render:t}),n._appendShape(this),this._graphic=n,this._appendStrokeAndFill())},_appendStrokeAndFill:function(){this._strokeNode&&this.node.appendChild(this._strokeNode),this._fillNode&&this.node.appendChild(this._fillNode)},createNode:function(){var e,t=this._camelCaseConcat,i=this.get("x"),s=this.get("y"),o=this.get("width"),u=this.get("height"),a,f,l=this.name,h,p=this.get("visible")?"visible":"hidden",d,v,m,g,y,b,E,S,x,T;a=this.get("id"),f=this._type==="path"?"shape":this._type,v=w(r)+" "+w(t(n,r))+" "+w(l)+" "+w(t(n,l))+" "+n+f,m=this._getStrokeProps(),x=this._getFillProps(),h="<"+f+' xmlns="urn:schemas-microsft.com:vml" id="'+a+'" class="'+v+'" style="behavior:url(#default#VML);display:inline-block;position:absolute;left:'+i+"px;top:"+s+"px;width:"+o+"px;height:"+u+"px;visibility:"+p+'"',m&&m.weight&&m.weight>0?(g=m.endcap,y=parseFloat(m.opacity),b=m.joinstyle,E=m.miterlimit,S=m.dashstyle,h+=' stroked="t" strokecolor="'+m.color+'" strokeWeight="'+m.weight+'px"',d='",e=c.createElement(h),this.node=e,this._strokeFlag=!1,this._fillFlag=!1},addClass:function(e){var t=this.node;f.addClass(t,e)},removeClass:function(e){var t=this.node;f.removeClass(t,e)},getXY:function(){var e=this._graphic,t=e.getXY(),n=this.get("x"),r=this.get("y");return[t[0]+n,t[1]+r]},setXY:function(e){var t=this._graphic,n=t.getXY();this.set("x",e[0]-n[0]),this.set("y",e[1]-n[1])},contains:function(t){return t===e.one(this.node)},compareTo:function(e){var t=this.node;return t===e},test:function(e){return l.test(this.node,e)},_getStrokeProps:function(){var e,t=this.get("stroke"),n,r,i="",s,o=0,f,l,c;if(t&&t.weight&&t.weight>0){e={},l=t.linecap||"flat",c=t.linejoin||"round",l!=="round"&&l!=="square"&&(l="flat"),n=parseFloat(t.opacity),r=t.dashstyle||"none",t.color=t.color||"#000000",t.weight=t.weight||1,t.opacity=u(n)?n:1,e.stroked=!0,e.color=t.color,e.weight=t.weight,e.endcap=l,e.opacity=t.opacity;if(a(r)){i=[],f=r.length;for(o=0;o0){l=t.linecap||"flat",c=t.linejoin||"round",l!=="round"&&l!=="square"&&(l="flat"),n=parseFloat(t.opacity),r=t.dashstyle||"none",t.color=t.color||"#000000",t.weight=t.weight||1,t.opacity=u(n)?n:1,e.stroked=!0,e.strokeColor=t.color,e.strokeWeight=t.weight+"px",this._strokeNode||(this._strokeNode=this._createGraphicNode("stroke"),e.appendChild(this._strokeNode)),this._strokeNode.endcap=l,this._strokeNode.opacity=t.opacity;if(a(r)){i=[],f=r.length;for(o=0;o')));n.filled=o}return n},_fillChangeHandler:function(){if(!this._fillFlag)return;var e=this.node,t=this.get("fill"),n,r,i=!1,s,o;if(t)if(t.type==="radial"||t.type==="linear"){i=!0,o=this._getGradientFill(t);if(this._fillNode)for(s in o)o.hasOwnProperty(s)&&(s==="colors"?this._fillNode.colors.value=o[s]:this._fillNode[s]=o[s]);else{r='",this._fillNode=c.createElement(r),e.appendChild(this._fillNode))):this._fillNode&&(this._fillNode.opacity=1,this._fillNode.type="solid"));e.filled=i,this._fillFlag=!1},_updateFillNode:function(e){this._fillNode||(this._fillNode=this._createGraphicNode("fill"),e.appendChild(this._fillNode))},_getGradientFill:function(e){var t={},n,r,i=e.type,s=this.get("width"),o=this.get("height"),a=u,f,l=e.stops,c=l.length,h,p,d,v,m="",g=e.cx,y=e.cy,b=e.fx,w=e.fy,E=e.r,S,x=e.rotation||0;i==="linear"?(x<=270?x=Math.abs(x-270):x<360?x=270+(360-x):x=270,t.type="gradient",t.angle=x):i==="radial"&&(n=s*E*2,r=o*E*2,b=E*2*(b-.5),w=E*2*(w-.5),b+=g,w+=y,t.focussize=n/s/10+"% "+r/o/10+"%",t.alignshape=!1,t.type="gradientradial",t.focus="100%",t.focusposition=Math.round(b*100)+"% "+Math.round(w*100)+"%");for(d=0;d0?d+1:"",t["opacity"+v]=h+"",m+=", "+S+" "+p;return parseFloat(S)<100&&(m+=", 100% "+p),t.colors=m.substr(2),t},_addTransform:function(t,n){n=e.Array(n),this._transform=o.trim(this._transform+" "+t+"("+n.join(", ")+")"),n.unshift(t),this._transforms.push(n),this.initialized&&this._updateTransform()},_updateTransform:function(){var t=this.node,n,r,i,s=this.get("x"),o=this.get("y"),u,a,f=this.matrix,l=this._normalizedMatrix,h=this instanceof e.VMLPath,p,d=this._transforms.length;if(this._transforms&&this._transforms.length>0){i=this.get("transformOrigin"),h&&l.translate(this._left,this._top),u=i[0]-.5,a=i[1]-.5,u=Math.max(-0.5,Math.min(.5,u)),a=Math.max(-0.5,Math.min(.5,a));for(p=0;p'),this.node.appendChild(this._skew)),this._skew.matrix=r,this._skew.on=!0,this._skew.origin=u+", "+a),this._type!=="path"&&(this._transforms=[]),t.style.left=s+this._getSkewOffsetValue(l.dx)+"px",t.style.top=o+this._getSkewOffsetValue(l.dy)+"px"},_getSkewOffsetValue:function(t){var n=e.MatrixUtil.sign(t),r=Math.abs(t);return t=Math.min(r,32767)*n,t},_translateX:0,_translateY:0,_transform:"",translate:function(e,t){this._translateX+=e,this._translateY+=t,this._addTransform("translate",arguments)},translateX:function(e){this._translateX+=e,this._addTransform("translateX",arguments)},translateY:function(e){this._translateY+=e,this._addTransform("translateY",arguments)},skew:function(){this._addTransform("skew",arguments)},skewX:function(){this._addTransform("skewX",arguments)},skewY:function(){this._addTransform("skewY",arguments)},rotate:function(){this._addTransform("rotate",arguments)},scale:function(){this._addTransform("scale",arguments)},on:function(t,n){return e.Node.DOM_EVENTS[t]?e.one("#"+this.get("id")).on(t,n):e.on.apply(this,arguments)},_draw:function(){},_updateHandler:function(){var e=this,t=e.node;e._fillChangeHandler(),e._strokeChangeHandler(),t.style.width=this.get("width")+"px",t.style.height=this.get("height")+"px",this._draw(),e._updateTransform()},_createGraphicNode:function(e){return e=e||this._type,c.createElement("<"+e+' xmlns="urn:schemas-microsft.com:vml"'+' style="behavior:url(#default#VML);display:inline-block;"'+' class="vml'+e+'"'+"/>")},_getDefaultFill:function(){return{type:"solid",opacity:1,cx:.5,cy:.5,fx:.5,fy:.5,r:.5}},_getDefaultStroke:function(){return{weight:1,dashstyle:"none",color:"#000",opacity:1}},set:function(){var e=this;h.prototype.set.apply(e,arguments),e.initialized&&e._updateHandler()},getBounds:function(){var t=this instanceof e.VMLPath,n=this.get("width"),r=this.get("height"),i=this.get("x"),s=this.get("y");return t&&(i+=this._left,s+=this._top,n=this._right-this._left,r=this._bottom-this._top),this._getContentRect(n,r,i,s)},_getContentRect:function(t,n,r,i){var s=this.get("transformOrigin"),o=s[0]*t,u=s[1]*n,a=this.matrix.getTransformArray(this.get("transform")),f=new e.Matrix,l,c=a.length,h,p,d,v=this instanceof e.VMLPath;v&&f.translate(this._left,this._top),o=isNaN(o)?0:o,u=isNaN(u)?0:u,f.translate(o,u);for(l=0;l0?e*2:0;return t}},height:{setter:function(e){return this.set("radius",e/2),e},getter:function(){var e=this.get("radius"),t=e&&e>0?e*2:0;return t}}}),e.VMLCircle=d,b=function(){b.superclass.constructor.apply(this,arguments)},b.NAME="vmlPieSlice",e.extend(b,e.VMLShape,e.mix({_type:"shape",_draw:function(){var e=this.get("cx"),t=this.get("cy"),n=this.get("startAngle"),r=this.get("arc"),i=this.get("radius");this.clear(),this.drawWedge(e,t,n,r,i),this.end()}},e.VMLDrawing.prototype)),b.ATTRS=e.mix({cx:{value:0},cy:{value:0},startAngle:{value:0},arc:{value:0},radius:{value:0}},e.VMLShape.ATTRS),e.VMLPieSlice=b,y=function(){y.superclass.constructor.apply(this,arguments)},y.NAME="vmlGraphic",y.ATTRS={render:{},id:{valueFn:function(){return e.guid()},setter:function(e){var t=this._node;return t&&t.setAttribute("id",e),e}},shapes:{readOnly:!0,getter:function(){return this._shapes}},contentBounds:{readOnly:!0,getter:function(){return this._contentBounds}},node:{readOnly:!0,getter:function(){return this._node}},width:{setter:function(e){return this._node&&(this._node.style.width=e+"px"),e}},height:{setter:function(e){return this._node&&(this._node.style.height=e+"px"),e}},autoSize:{value:!1},preserveAspectRatio:{value:"xMidYMid"},resizeDown:{resizeDown:!1},x:{getter:function(){return this._x},setter:function(e){return this._x=e,this._node&&(this._node.style.left=e+"px"),e}},y:{getter:function(){return this._y},setter:function(e){return this._y=e,this._node&&(this._node.style.top=e+"px"),e}},autoDraw:{value:!0},visible:{value:!0,setter:function(e){return this._toggleVisible(e),e}}},e.extend(y,e.GraphicBase,{set:function(){var t=this,n=arguments[0],r={autoDraw:!0,autoSize:!0,preserveAspectRatio:!0,resizeDown:!0},i,s=!1;h.prototype.set.apply(t,arguments);if(t._state.autoDraw===!0&&e.Object.size(this._shapes)>0)if(o.isString&&r[n])s=!0;else if(o.isObject(n))for(i in r)if(r.hasOwnProperty(i)&&n[i]){s=!0;break}s&&t._redraw()},_x:0,_y:0,getXY:function(){var t=this.parentNode,n=this.get("x"),r=this.get("y"),i;return t?(i=e.one(t).getXY(),i[0]+=n,i[1]+=r):i=e.DOM._getOffset(this._node),i},initializer:function(){var e=this.get("render"),t=this.get("visible")?"visible":"hidden";this._shapes={},this._contentBounds={left:0,top:0,right:0,bottom:0},this._node=this._createGraphic(),this._node.style.left=this.get("x")+"px",this._node.style.top=this.get("y")+"px",this._node.style.visibility=t,this._node.setAttribute("id",this.get("id")),e&&this.render(e)},render:function(t){var n=e.one(t),r=this.get("width")||parseInt(n.getComputedStyle("width"),10),i=this.get("height")||parseInt(n.getComputedStyle("height"),10);return n=n||c.body,n.appendChild(this._node),this.parentNode=n,this.set("width",r),this.set("height",i),this},destroy:function(){this.clear(),e.one(this._node).remove(!0)},addShape:function(e){e.graphic=this,this.get("visible")||(e.visible=!1);var t=this._getShapeClass(e.type),n=new t(e);return this._appendShape(n),n._appendStrokeAndFill(),n},_appendShape:function(e){var t=e.node,n=this._frag||this._node;this.get("autoDraw")||this.get("autoSize")==="sizeContentToGraphic"?n.appendChild(t):this._getDocFrag().appendChild(t)},removeShape:function(e){e instanceof p||o.isString(e)&&(e=this._shapes[e]),e&&e instanceof p&&(e._destroy(),this._shapes[e.get("id")]=null,delete this._shapes[e.get("id")]),this.get("autoDraw")&&this._redraw()},removeAllShapes:function(){var e=this._shapes,t;for(t in e)e.hasOwnProperty(t)&&e[t].destroy();this._shapes={}},_removeChildren:function(e){if(e.hasChildNodes()){var t;while(e.firstChild)t=e.firstChild,this._removeChildren(t),e.removeChild(t)}},clear:function(){this.removeAllShapes(),this._removeChildren(this._node)},_toggleVisible:function(e){var t,n=this._shapes,r=e?"visible":"hidden";if(n)for(t in n)n.hasOwnProperty(t)&&n[t].set("visible",e);this._node&&(this._node.style.visibility=r),this -._node&&(this._node.style.visibility=r)},setSize:function(e,t){e=Math.round(e),t=Math.round(t),this._node.style.width=e+"px",this._node.style.height=t+"px"},setPosition:function(e,t){e=Math.round(e),t=Math.round(t),this._node.style.left=e+"px",this._node.style.top=t+"px"},_createGraphic:function(){var e=c.createElement('');return e},_createGraphicNode:function(e){return c.createElement("<"+e+' xmlns="urn:schemas-microsft.com:vml"'+' style="behavior:url(#default#VML);display:inline-block;zoom:1;"'+"/>")},getShapeById:function(e){return this._shapes[e]},_getShapeClass:function(e){var t=this._shapeClass[e];return t?t:e},_shapeClass:{circle:e.VMLCircle,rect:e.VMLRect,path:e.VMLPath,ellipse:e.VMLEllipse,pieslice:e.VMLPieSlice},batch:function(e){var t=this.get("autoDraw");this.set("autoDraw",!1),e.apply(),this.set("autoDraw",t)},_getDocFrag:function(){return this._frag||(this._frag=c.createDocumentFragment()),this._frag},addToRedrawQueue:function(e){var t,n;this._shapes[e.get("id")]=e,this.get("resizeDown")||(t=e.getBounds(),n=this._contentBounds,n.left=n.leftt.right?n.right:t.right,n.bottom=n.bottom>t.bottom?n.bottom:t.bottom,n.width=n.right-n.left,n.height=n.bottom-n.top,this._contentBounds=n),this.get("autoDraw")&&this._redraw()},_redraw:function(){var e=this.get("autoSize"),t,n=this.parentNode,r=parseFloat(n.getComputedStyle("width")),i=parseFloat(n.getComputedStyle("height")),s=0,o=0,u=this.get("resizeDown")?this._getUpdatedContentBounds():this._contentBounds,a=u.left,f=u.right,l=u.top,c=u.bottom,h=f-a,p=c-l,d,v,m,g,y,b=this.get("visible");this._node.style.visibility="hidden",e?(e==="sizeContentToGraphic"?(t=this.get("preserveAspectRatio"),t==="none"||h/p===r/i?(s=a,o=l,v=h,m=p):h*i/p>r?(d=i/r,v=h,m=h*d,y=r*(p/h)*(m/i),o=this._calculateCoordOrigin(t.slice(5).toLowerCase(),y,m),o=l+o,s=a):(d=r/i,v=p*d,m=p,g=i*(h/p)*(v/r),s=this._calculateCoordOrigin(t.slice(1,4).toLowerCase(),g,v),s+=a,o=l),this._node.style.width=r+"px",this._node.style.height=i+"px",this._node.coordOrigin=s+", "+o):(v=h,m=p,this._node.style.width=h+"px",this._node.style.height=p+"px",this._state.width=h,this._state.height=p),this._node.coordSize=v+", "+m):(this._node.style.width=r+"px",this._node.style.height=i+"px",this._node.coordSize=r+", "+i),this._frag&&(this._node.appendChild(this._frag),this._frag=null),b&&(this._node.style.visibility="visible")},_calculateCoordOrigin:function(e,t,n){var r;switch(e){case"min":r=0;break;case"mid":r=(t-n)/2;break;case"max":r=t-n}return r},_getUpdatedContentBounds:function(){var e,t,n,r=this._shapes,i={};for(t in r)r.hasOwnProperty(t)&&(n=r[t],e=n.getBounds(),i.left=o.isNumber(i.left)?Math.min(i.left,e.left):e.left,i.top=o.isNumber(i.top)?Math.min(i.top,e.top):e.top,i.right=o.isNumber(i.right)?Math.max(i.right,e.right):e.right,i.bottom=o.isNumber(i.bottom)?Math.max(i.bottom,e.bottom):e.bottom);return i.left=o.isNumber(i.left)?i.left:0,i.top=o.isNumber(i.top)?i.top:0,i.right=o.isNumber(i.right)?i.right:0,i.bottom=o.isNumber(i.bottom)?i.bottom:0,this._contentBounds=i,i},_toFront:function(t){var n=this._node;t instanceof e.VMLShape&&(t=t.get("node")),n&&t&&n.appendChild(t)},_toBack:function(t){var n=this._node,r;t instanceof e.VMLShape&&(t=t.get("node")),n&&t&&(r=n.firstChild,r?n.insertBefore(t,r):n.appendChild(t))}}),e.VMLGraphic=y},"3.9.1",{requires:["graphics"]}); +._node&&(this._node.style.visibility=r)},setSize:function(e,t){e=Math.round(e),t=Math.round(t),this._node.style.width=e+"px",this._node.style.height=t+"px"},setPosition:function(e,t){e=Math.round(e),t=Math.round(t),this._node.style.left=e+"px",this._node.style.top=t+"px"},_createGraphic:function(){var e=c.createElement('');return e},_createGraphicNode:function(e){return c.createElement("<"+e+' xmlns="urn:schemas-microsft.com:vml"'+' style="behavior:url(#default#VML);display:inline-block;zoom:1;"'+"/>")},getShapeById:function(e){return this._shapes[e]},_getShapeClass:function(e){var t=this._shapeClass[e];return t?t:e},_shapeClass:{circle:e.VMLCircle,rect:e.VMLRect,path:e.VMLPath,ellipse:e.VMLEllipse,pieslice:e.VMLPieSlice},batch:function(e){var t=this.get("autoDraw");this.set("autoDraw",!1),e.apply(),this.set("autoDraw",t)},_getDocFrag:function(){return this._frag||(this._frag=c.createDocumentFragment()),this._frag},addToRedrawQueue:function(e){var t,n;this._shapes[e.get("id")]=e,this.get("resizeDown")||(t=e.getBounds(),n=this._contentBounds,n.left=n.leftt.right?n.right:t.right,n.bottom=n.bottom>t.bottom?n.bottom:t.bottom,n.width=n.right-n.left,n.height=n.bottom-n.top,this._contentBounds=n),this.get("autoDraw")&&this._redraw()},_redraw:function(){var e=this.get("autoSize"),t,n=this.parentNode,r=parseFloat(n.getComputedStyle("width")),i=parseFloat(n.getComputedStyle("height")),s=0,o=0,u=this.get("resizeDown")?this._getUpdatedContentBounds():this._contentBounds,a=u.left,f=u.right,l=u.top,c=u.bottom,h=f-a,p=c-l,d,v,m,g,y,b=this.get("visible");this._node.style.visibility="hidden",e?(e==="sizeContentToGraphic"?(t=this.get("preserveAspectRatio"),t==="none"||h/p===r/i?(s=a,o=l,v=h,m=p):h*i/p>r?(d=i/r,v=h,m=h*d,y=r*(p/h)*(m/i),o=this._calculateCoordOrigin(t.slice(5).toLowerCase(),y,m),o=l+o,s=a):(d=r/i,v=p*d,m=p,g=i*(h/p)*(v/r),s=this._calculateCoordOrigin(t.slice(1,4).toLowerCase(),g,v),s+=a,o=l),this._node.style.width=r+"px",this._node.style.height=i+"px",this._node.coordOrigin=s+", "+o):(v=h,m=p,this._node.style.width=h+"px",this._node.style.height=p+"px",this._state.width=h,this._state.height=p),this._node.coordSize=v+", "+m):(this._node.style.width=r+"px",this._node.style.height=i+"px",this._node.coordSize=r+", "+i),this._frag&&(this._node.appendChild(this._frag),this._frag=null),b&&(this._node.style.visibility="visible")},_calculateCoordOrigin:function(e,t,n){var r;switch(e){case"min":r=0;break;case"mid":r=(t-n)/2;break;case"max":r=t-n}return r},_getUpdatedContentBounds:function(){var e,t,n,r=this._shapes,i={};for(t in r)r.hasOwnProperty(t)&&(n=r[t],e=n.getBounds(),i.left=o.isNumber(i.left)?Math.min(i.left,e.left):e.left,i.top=o.isNumber(i.top)?Math.min(i.top,e.top):e.top,i.right=o.isNumber(i.right)?Math.max(i.right,e.right):e.right,i.bottom=o.isNumber(i.bottom)?Math.max(i.bottom,e.bottom):e.bottom);return i.left=o.isNumber(i.left)?i.left:0,i.top=o.isNumber(i.top)?i.top:0,i.right=o.isNumber(i.right)?i.right:0,i.bottom=o.isNumber(i.bottom)?i.bottom:0,this._contentBounds=i,i},_toFront:function(t){var n=this._node;t instanceof e.VMLShape&&(t=t.get("node")),n&&t&&n.appendChild(t)},_toBack:function(t){var n=this._node,r;t instanceof e.VMLShape&&(t=t.get("node")),n&&t&&(r=n.firstChild,r?n.insertBefore(t,r):n.appendChild(t))}}),e.VMLGraphic=y},"3.12.0",{requires:["graphics"]}); diff --git a/lib/yuilib/3.9.1/build/graphics-vml/graphics-vml.js b/lib/yuilib/3.12.0/graphics-vml/graphics-vml.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/graphics-vml/graphics-vml.js rename to lib/yuilib/3.12.0/graphics-vml/graphics-vml.js index 0460786b988..ddcc8675213 --- a/lib/yuilib/3.9.1/build/graphics-vml/graphics-vml.js +++ b/lib/yuilib/3.12.0/graphics-vml/graphics-vml.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics-vml', function (Y, NAME) { var IMPLEMENTATION = "vml", @@ -3715,4 +3721,4 @@ Y.VMLGraphic = VMLGraphic; -}, '3.9.1', {"requires": ["graphics"]}); +}, '3.12.0', {"requires": ["graphics"]}); diff --git a/lib/yuilib/3.9.1/build/graphics/graphics-debug.js b/lib/yuilib/3.12.0/graphics/graphics-debug.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/graphics/graphics-debug.js rename to lib/yuilib/3.12.0/graphics/graphics-debug.js index 784a3d13edf..d23058f2e95 --- a/lib/yuilib/3.9.1/build/graphics/graphics-debug.js +++ b/lib/yuilib/3.12.0/graphics/graphics-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics', function (Y, NAME) { /** @@ -309,20 +315,6 @@ Y.GraphicBase = GraphicBase; * @class Drawing * @constructor */ - /** - * Draws a line segment using the current line style from the current drawing position to the specified x and y coordinates. - * - * @method lineTo - * @param {Number} point1 x-coordinate for the end point. - * @param {Number} point2 y-coordinate for the end point. - */ - /** - * Moves the current drawing position to specified x and y coordinates. - * - * @method moveTo - * @param {Number} x x-coordinate for the end point. - * @param {Number} y y-coordinate for the end point. - */ /** * Draws a bezier curve. * @@ -333,6 +325,7 @@ Y.GraphicBase = GraphicBase; * @param {Number} cp2y y-coordinate for the second control point. * @param {Number} x x-coordinate for the end point. * @param {Number} y y-coordinate for the end point. + * @chainable */ /** * Draws a quadratic bezier curve. @@ -342,6 +335,7 @@ Y.GraphicBase = GraphicBase; * @param {Number} cpy y-coordinate for the control point. * @param {Number} x x-coordinate for the end point. * @param {Number} y y-coordinate for the end point. + * @chainable */ /** * Draws a rectangle. @@ -351,6 +345,7 @@ Y.GraphicBase = GraphicBase; * @param {Number} y y-coordinate * @param {Number} w width * @param {Number} h height + * @chainable */ /** * Draws a rectangle with rounded corners. @@ -362,16 +357,102 @@ Y.GraphicBase = GraphicBase; * @param {Number} h height * @param {Number} ew width of the ellipse used to draw the rounded corners * @param {Number} eh height of the ellipse used to draw the rounded corners + * @chainable + */ + /** + * Draws a circle. + * + * @method drawCircle + * @param {Number} x y-coordinate + * @param {Number} y x-coordinate + * @param {Number} r radius + * @chainable + * @protected + */ + /** + * Draws an ellipse. + * + * @method drawEllipse + * @param {Number} x x-coordinate + * @param {Number} y y-coordinate + * @param {Number} w width + * @param {Number} h height + * @chainable + * @protected + */ + /** + * Draws a diamond. + * + * @method drawDiamond + * @param {Number} x y-coordinate + * @param {Number} y x-coordinate + * @param {Number} width width + * @param {Number} height height + * @chainable + * @protected + */ + /** + * Draws a wedge. + * + * @method drawWedge + * @param {Number} x x-coordinate of the wedge's center point + * @param {Number} y y-coordinate of the wedge's center point + * @param {Number} startAngle starting angle in degrees + * @param {Number} arc sweep of the wedge. Negative values draw clockwise. + * @param {Number} radius radius of wedge. If [optional] yRadius is defined, then radius is the x radius. + * @param {Number} yRadius [optional] y radius for wedge. + * @chainable + * @private + */ + /** + * Draws a line segment using the current line style from the current drawing position to the specified x and y coordinates. + * + * @method lineTo + * @param {Number} point1 x-coordinate for the end point. + * @param {Number} point2 y-coordinate for the end point. + * @chainable + */ + /** + * Draws a line segment using the current line style from the current drawing position to the relative x and y coordinates. + * + * @method relativeLineTo + * @param {Number} point1 x-coordinate for the end point. + * @param {Number} point2 y-coordinate for the end point. + * @chainable + */ + /** + * Moves the current drawing position to specified x and y coordinates. + * + * @method moveTo + * @param {Number} x x-coordinate for the end point. + * @param {Number} y y-coordinate for the end point. + * @chainable + */ + /** + * Moves the current drawing position relative to specified x and y coordinates. + * + * @method relativeMoveTo + * @param {Number} x x-coordinate for the end point. + * @param {Number} y y-coordinate for the end point. + * @chainable */ /** * Completes a drawing operation. * * @method end + * @chainable */ /** * Clears the path. * * @method clear + * @chainable + */ + /** + * Ends a fill and stroke + * + * @method closePath + * @chainable */ /** *

    Base class for creating shapes.

    @@ -1193,4 +1274,4 @@ Y.GraphicBase = GraphicBase; */ -}, '3.9.1', {"requires": ["node", "event-custom", "pluginhost", "matrix", "classnamemanager"]}); +}, '3.12.0', {"requires": ["node", "event-custom", "pluginhost", "matrix", "classnamemanager"]}); diff --git a/lib/yuilib/3.9.1/build/graphics/graphics-min.js b/lib/yuilib/3.12.0/graphics/graphics-min.js old mode 100644 new mode 100755 similarity index 88% rename from lib/yuilib/3.9.1/build/graphics/graphics-min.js rename to lib/yuilib/3.12.0/graphics/graphics-min.js index 4b23d14bb3e..c50581c73f6 --- a/lib/yuilib/3.9.1/build/graphics/graphics-min.js +++ b/lib/yuilib/3.12.0/graphics/graphics-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("graphics",function(e,t){var n="setter",r=e.Plugin.Host,i="value",s="valueFn",o="readOnly",u=e.Lang,a="string",f="writeOnce",l,c;c=function(){var t=this;t._ATTR_E_FACADE={},e.EventTarget.call(this,{emitFacade:!0}),t._state={},t.prototype=e.mix(c.prototype,t.prototype)},c.prototype={addAttrs:function(e){var t=this,r=this.constructor.ATTRS,a,l,c,h=t._state;for(l in r)r.hasOwnProperty(l)&&(a=r[l],a.hasOwnProperty(i)?h[l]=a.value:a.hasOwnProperty(s)&&(c=a.valueFn,u.isString(c)?h[l]=t[c].apply(t):h[l]=c.apply(t)));t._state=h;for(l in r)if(r.hasOwnProperty(l)){a=r[l];if(a.hasOwnProperty(o)&&a.readOnly)continue;a.hasOwnProperty(f)&&a.writeOnce&&(a.readOnly=!0),e&&e.hasOwnProperty(l)&&(a.hasOwnProperty(n)?t._state[l]=a.setter.apply(t,[e[l]]):t._state[l]=e[l])}},get:function(e){var t=this,n,r=t.constructor.ATTRS;if(r&&r[e])return n=r[e].getter,n?typeof n===a?t[n].apply(t):r[e].getter.apply(t):t._state[e];return null},set:function(){var e=arguments[0],t;if(u.isObject(e))for(t in e)e.hasOwnProperty(t)&&this._set(t,e[t]);else this._set.apply(this,arguments)},_set:function(e,t){var n=this,r,i,s=n.constructor.ATTRS;s&&s.hasOwnProperty(e)&&(r=s[e].setter,r&&(i=[t],typeof r===a?t=n[r].apply(n,i):t=s[e].setter.apply(n,i)),n._state[e]=t)}},e.mix(c,e.EventTarget,!1,null,1),e.AttributeLite=c,l=function(t){var n=this,r=e.Plugin&&e.Plugin.Host;n._initPlugins&&r&&r.call(n),n.name=n.constructor.NAME,n._eventPrefix=n.constructor.EVENT_PREFIX||n.constructor.NAME,c.call(n),n.addAttrs(t),n.init.apply(this,arguments),n._initPlugins&&n._initPlugins(t),n.initialized=!0},l.NAME="baseGraphic",l.prototype={init:function(){this.publish("init",{fireOnce:!0}),this.initializer.apply(this,arguments),this.fire("init",{cfg:arguments[0]})},_camelCaseConcat:function(e,t){return e+t.charAt(0).toUpperCase()+t.slice(1)}},e.mix(l,e.AttributeLite,!1,null,1),e.mix(l,r,!1,null,1),l.prototype.constructor=l,l.plug=r.plug,l.unplug=r.unplug,e.GraphicBase=l},"3.9.1",{requires:["node","event-custom","pluginhost","matrix","classnamemanager"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("graphics",function(e,t){var n="setter",r=e.Plugin.Host,i="value",s="valueFn",o="readOnly",u=e.Lang,a="string",f="writeOnce",l,c;c=function(){var t=this;t._ATTR_E_FACADE={},e.EventTarget.call(this,{emitFacade:!0}),t._state={},t.prototype=e.mix(c.prototype,t.prototype)},c.prototype={addAttrs:function(e){var t=this,r=this.constructor.ATTRS,a,l,c,h=t._state;for(l in r)r.hasOwnProperty(l)&&(a=r[l],a.hasOwnProperty(i)?h[l]=a.value:a.hasOwnProperty(s)&&(c=a.valueFn,u.isString(c)?h[l]=t[c].apply(t):h[l]=c.apply(t)));t._state=h;for(l in r)if(r.hasOwnProperty(l)){a=r[l];if(a.hasOwnProperty(o)&&a.readOnly)continue;a.hasOwnProperty(f)&&a.writeOnce&&(a.readOnly=!0),e&&e.hasOwnProperty(l)&&(a.hasOwnProperty(n)?t._state[l]=a.setter.apply(t,[e[l]]):t._state[l]=e[l])}},get:function(e){var t=this,n,r=t.constructor.ATTRS;if(r&&r[e])return n=r[e].getter,n?typeof n===a?t[n].apply(t):r[e].getter.apply(t):t._state[e];return null},set:function(){var e=arguments[0],t;if(u.isObject(e))for(t in e)e.hasOwnProperty(t)&&this._set(t,e[t]);else this._set.apply(this,arguments)},_set:function(e,t){var n=this,r,i,s=n.constructor.ATTRS;s&&s.hasOwnProperty(e)&&(r=s[e].setter,r&&(i=[t],typeof r===a?t=n[r].apply(n,i):t=s[e].setter.apply(n,i)),n._state[e]=t)}},e.mix(c,e.EventTarget,!1,null,1),e.AttributeLite=c,l=function(t){var n=this,r=e.Plugin&&e.Plugin.Host;n._initPlugins&&r&&r.call(n),n.name=n.constructor.NAME,n._eventPrefix=n.constructor.EVENT_PREFIX||n.constructor.NAME,c.call(n),n.addAttrs(t),n.init.apply(this,arguments),n._initPlugins&&n._initPlugins(t),n.initialized=!0},l.NAME="baseGraphic",l.prototype={init:function(){this.publish("init",{fireOnce:!0}),this.initializer.apply(this,arguments),this.fire("init",{cfg:arguments[0]})},_camelCaseConcat:function(e,t){return e+t.charAt(0).toUpperCase()+t.slice(1)}},e.mix(l,e.AttributeLite,!1,null,1),e.mix(l,r,!1,null,1),l.prototype.constructor=l,l.plug=r.plug,l.unplug=r.unplug,e.GraphicBase=l},"3.12.0",{requires:["node","event-custom","pluginhost","matrix","classnamemanager"]}); diff --git a/lib/yuilib/3.9.1/build/graphics/graphics.js b/lib/yuilib/3.12.0/graphics/graphics.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/graphics/graphics.js rename to lib/yuilib/3.12.0/graphics/graphics.js index 784a3d13edf..d23058f2e95 --- a/lib/yuilib/3.9.1/build/graphics/graphics.js +++ b/lib/yuilib/3.12.0/graphics/graphics.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('graphics', function (Y, NAME) { /** @@ -309,20 +315,6 @@ Y.GraphicBase = GraphicBase; * @class Drawing * @constructor */ - /** - * Draws a line segment using the current line style from the current drawing position to the specified x and y coordinates. - * - * @method lineTo - * @param {Number} point1 x-coordinate for the end point. - * @param {Number} point2 y-coordinate for the end point. - */ - /** - * Moves the current drawing position to specified x and y coordinates. - * - * @method moveTo - * @param {Number} x x-coordinate for the end point. - * @param {Number} y y-coordinate for the end point. - */ /** * Draws a bezier curve. * @@ -333,6 +325,7 @@ Y.GraphicBase = GraphicBase; * @param {Number} cp2y y-coordinate for the second control point. * @param {Number} x x-coordinate for the end point. * @param {Number} y y-coordinate for the end point. + * @chainable */ /** * Draws a quadratic bezier curve. @@ -342,6 +335,7 @@ Y.GraphicBase = GraphicBase; * @param {Number} cpy y-coordinate for the control point. * @param {Number} x x-coordinate for the end point. * @param {Number} y y-coordinate for the end point. + * @chainable */ /** * Draws a rectangle. @@ -351,6 +345,7 @@ Y.GraphicBase = GraphicBase; * @param {Number} y y-coordinate * @param {Number} w width * @param {Number} h height + * @chainable */ /** * Draws a rectangle with rounded corners. @@ -362,16 +357,102 @@ Y.GraphicBase = GraphicBase; * @param {Number} h height * @param {Number} ew width of the ellipse used to draw the rounded corners * @param {Number} eh height of the ellipse used to draw the rounded corners + * @chainable + */ + /** + * Draws a circle. + * + * @method drawCircle + * @param {Number} x y-coordinate + * @param {Number} y x-coordinate + * @param {Number} r radius + * @chainable + * @protected + */ + /** + * Draws an ellipse. + * + * @method drawEllipse + * @param {Number} x x-coordinate + * @param {Number} y y-coordinate + * @param {Number} w width + * @param {Number} h height + * @chainable + * @protected + */ + /** + * Draws a diamond. + * + * @method drawDiamond + * @param {Number} x y-coordinate + * @param {Number} y x-coordinate + * @param {Number} width width + * @param {Number} height height + * @chainable + * @protected + */ + /** + * Draws a wedge. + * + * @method drawWedge + * @param {Number} x x-coordinate of the wedge's center point + * @param {Number} y y-coordinate of the wedge's center point + * @param {Number} startAngle starting angle in degrees + * @param {Number} arc sweep of the wedge. Negative values draw clockwise. + * @param {Number} radius radius of wedge. If [optional] yRadius is defined, then radius is the x radius. + * @param {Number} yRadius [optional] y radius for wedge. + * @chainable + * @private + */ + /** + * Draws a line segment using the current line style from the current drawing position to the specified x and y coordinates. + * + * @method lineTo + * @param {Number} point1 x-coordinate for the end point. + * @param {Number} point2 y-coordinate for the end point. + * @chainable + */ + /** + * Draws a line segment using the current line style from the current drawing position to the relative x and y coordinates. + * + * @method relativeLineTo + * @param {Number} point1 x-coordinate for the end point. + * @param {Number} point2 y-coordinate for the end point. + * @chainable + */ + /** + * Moves the current drawing position to specified x and y coordinates. + * + * @method moveTo + * @param {Number} x x-coordinate for the end point. + * @param {Number} y y-coordinate for the end point. + * @chainable + */ + /** + * Moves the current drawing position relative to specified x and y coordinates. + * + * @method relativeMoveTo + * @param {Number} x x-coordinate for the end point. + * @param {Number} y y-coordinate for the end point. + * @chainable */ /** * Completes a drawing operation. * * @method end + * @chainable */ /** * Clears the path. * * @method clear + * @chainable + */ + /** + * Ends a fill and stroke + * + * @method closePath + * @chainable */ /** *

    Base class for creating shapes.

    @@ -1193,4 +1274,4 @@ Y.GraphicBase = GraphicBase; */ -}, '3.9.1', {"requires": ["node", "event-custom", "pluginhost", "matrix", "classnamemanager"]}); +}, '3.12.0', {"requires": ["node", "event-custom", "pluginhost", "matrix", "classnamemanager"]}); diff --git a/lib/yuilib/3.9.1/build/handlebars-base/handlebars-base-debug.js b/lib/yuilib/3.12.0/handlebars-base/handlebars-base-debug.js old mode 100644 new mode 100755 similarity index 80% rename from lib/yuilib/3.9.1/build/handlebars-base/handlebars-base-debug.js rename to lib/yuilib/3.12.0/handlebars-base/handlebars-base-debug.js index 92ee57d6271..94b1e204fb9 --- a/lib/yuilib/3.9.1/build/handlebars-base/handlebars-base-debug.js +++ b/lib/yuilib/3.12.0/handlebars-base/handlebars-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('handlebars-base', function (Y, NAME) { /*! @@ -39,38 +45,49 @@ This is a YUI port of the original Handlebars project, which can be found at var Handlebars = Y.namespace('Handlebars'); /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) - -Handlebars.VERSION = "1.0.0-rc.3"; -Handlebars.COMPILER_REVISION = 2; +Handlebars.VERSION = "1.0.0"; +Handlebars.COMPILER_REVISION = 4; Handlebars.REVISION_CHANGES = { 1: '<= 1.0.rc.2', // 1.0.rc.2 is actually rev2 but doesn't report it - 2: '>= 1.0.0-rc.3' + 2: '== 1.0.0-rc.3', + 3: '== 1.0.0-rc.4', + 4: '>= 1.0.0' }; Handlebars.helpers = {}; Handlebars.partials = {}; +var toString = Object.prototype.toString, + functionType = '[object Function]', + objectType = '[object Object]'; + Handlebars.registerHelper = function(name, fn, inverse) { - if(inverse) { fn.not = inverse; } - this.helpers[name] = fn; + if (toString.call(name) === objectType) { + if (inverse || fn) { throw new Handlebars.Exception('Arg not supported with multiple helpers'); } + Handlebars.Utils.extend(this.helpers, name); + } else { + if (inverse) { fn.not = inverse; } + this.helpers[name] = fn; + } }; Handlebars.registerPartial = function(name, str) { - this.partials[name] = str; + if (toString.call(name) === objectType) { + Handlebars.Utils.extend(this.partials, name); + } else { + this.partials[name] = str; + } }; Handlebars.registerHelper('helperMissing', function(arg) { if(arguments.length === 2) { return undefined; } else { - throw new Error("Could not find property '" + arg + "'"); + throw new Error("Missing helper: '" + arg + "'"); } }); -var toString = Object.prototype.toString, functionType = "[object Function]"; - Handlebars.registerHelper('blockHelperMissing', function(context, options) { var inverse = options.inverse || function() {}, fn = options.fn; @@ -124,6 +141,9 @@ Handlebars.registerHelper('each', function(context, options) { var fn = options.fn, inverse = options.inverse; var i = 0, ret = "", data; + var type = toString.call(context); + if(type === functionType) { context = context.call(this); } + if (options.data) { data = Handlebars.createFrame(options.data); } @@ -152,35 +172,34 @@ Handlebars.registerHelper('each', function(context, options) { return ret; }); -Handlebars.registerHelper('if', function(context, options) { - var type = toString.call(context); - if(type === functionType) { context = context.call(this); } +Handlebars.registerHelper('if', function(conditional, options) { + var type = toString.call(conditional); + if(type === functionType) { conditional = conditional.call(this); } - if(!context || Handlebars.Utils.isEmpty(context)) { + if(!conditional || Handlebars.Utils.isEmpty(conditional)) { return options.inverse(this); } else { return options.fn(this); } }); -Handlebars.registerHelper('unless', function(context, options) { - return Handlebars.helpers['if'].call(this, context, {fn: options.inverse, inverse: options.fn}); +Handlebars.registerHelper('unless', function(conditional, options) { + return Handlebars.helpers['if'].call(this, conditional, {fn: options.inverse, inverse: options.fn}); }); Handlebars.registerHelper('with', function(context, options) { - return options.fn(context); + var type = toString.call(context); + if(type === functionType) { context = context.call(this); } + + if (!Handlebars.Utils.isEmpty(context)) return options.fn(context); }); Handlebars.registerHelper('log', function(context, options) { var level = options.data && options.data.level != null ? parseInt(options.data.level, 10) : 1; Handlebars.log(level, context); }); - -// END(BROWSER) /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) - var errorProps = ['description', 'fileName', 'lineNumber', 'message', 'name', 'number', 'stack']; Handlebars.Exception = function(message) { @@ -218,6 +237,14 @@ var escapeChar = function(chr) { }; Handlebars.Utils = { + extend: function(obj, value) { + for(var key in value) { + if(value.hasOwnProperty(key)) { + obj[key] = value[key]; + } + } + }, + escapeExpression: function(string) { // don't escape SafeStrings, since they're already safe if (string instanceof Handlebars.SafeString) { @@ -226,6 +253,11 @@ Handlebars.Utils = { return ""; } + // Force a string conversion as this will be done by the append regardless and + // the regex test will do this transparently behind the scenes, causing issues if + // an object's to string has escaped characters in it. + string = string.toString(); + if(!possible.test(string)) { return string; } return string.replace(badChars, escapeChar); }, @@ -240,12 +272,8 @@ Handlebars.Utils = { } } }; - -// END(BROWSER) /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) - Handlebars.VM = { template: function(templateSpec) { // Just add water @@ -256,13 +284,21 @@ Handlebars.VM = { program: function(i, fn, data) { var programWrapper = this.programs[i]; if(data) { - return Handlebars.VM.program(fn, data); - } else if(programWrapper) { - return programWrapper; - } else { - programWrapper = this.programs[i] = Handlebars.VM.program(fn); - return programWrapper; + programWrapper = Handlebars.VM.program(i, fn, data); + } else if (!programWrapper) { + programWrapper = this.programs[i] = Handlebars.VM.program(i, fn); } + return programWrapper; + }, + merge: function(param, common) { + var ret = param || common; + + if (param && common) { + ret = {}; + Handlebars.Utils.extend(ret, common); + Handlebars.Utils.extend(ret, param); + } + return ret; }, programWithDepth: Handlebars.VM.programWithDepth, noop: Handlebars.VM.noop, @@ -294,21 +330,27 @@ Handlebars.VM = { }; }, - programWithDepth: function(fn, data, $depth) { - var args = Array.prototype.slice.call(arguments, 2); + programWithDepth: function(i, fn, data /*, $depth */) { + var args = Array.prototype.slice.call(arguments, 3); - return function(context, options) { + var program = function(context, options) { options = options || {}; return fn.apply(this, [context, options.data || data].concat(args)); }; + program.program = i; + program.depth = args.length; + return program; }, - program: function(fn, data) { - return function(context, options) { + program: function(i, fn, data) { + var program = function(context, options) { options = options || {}; return fn(context, options.data || data); }; + program.program = i; + program.depth = 0; + return program; }, noop: function() { return ""; }, invokePartial: function(partial, name, context, helpers, partials, data) { @@ -328,8 +370,6 @@ Handlebars.VM = { }; Handlebars.template = Handlebars.VM.template; - -// END(BROWSER) // This file contains YUI-specific wrapper code and overrides for the // handlebars-base module. @@ -420,4 +460,4 @@ Handlebars.revive = Handlebars.template; Y.namespace('Template').Handlebars = Handlebars; -}, '3.9.1', {"requires": []}); +}, '3.12.0', {"requires": []}); diff --git a/lib/yuilib/3.12.0/handlebars-base/handlebars-base-min.js b/lib/yuilib/3.12.0/handlebars-base/handlebars-base-min.js new file mode 100755 index 00000000000..5fde677dc7c --- /dev/null +++ b/lib/yuilib/3.12.0/handlebars-base/handlebars-base-min.js @@ -0,0 +1,13 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("handlebars-base",function(e,t){ +/*! +Handlebars.js - Copyright (C) 2011 Yehuda Katz +https://raw.github.com/wycats/handlebars.js/master/LICENSE +*/ +;var n=e.namespace("Handlebars");n.VERSION="1.0.0",n.COMPILER_REVISION=4,n.REVISION_CHANGES={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:">= 1.0.0"},n.helpers={},n.partials={};var r=Object.prototype.toString,i="[object Function]",s="[object Object]";n.registerHelper=function(e,t,i){if(r.call(e)===s){if(i||t)throw new n.Exception("Arg not supported with multiple helpers");n.Utils.extend(this.helpers,e)}else i&&(t.not=i),this.helpers[e]=t},n.registerPartial=function(e,t){r.call(e)===s?n.Utils.extend(this.partials,e):this.partials[e]=t},n.registerHelper("helperMissing",function(e){if(arguments.length===2)return undefined;throw new Error("Missing helper: '"+e+"'")}),n.registerHelper("blockHelperMissing",function(e,t){var s=t.inverse||function(){},o=t.fn,u=r.call(e);return u===i&&(e=e.call(this)),e===!0?o(this):e===!1||e==null?s(this):u==="[object Array]"?e.length>0?n.helpers.each(e,t):s(this):o(e)}),n.K=function(){},n.createFrame=Object.create||function(e){n.K.prototype=e;var t=new n.K;return n.K.prototype=null,t},n.logger={DEBUG:0,INFO:1,WARN:2,ERROR:3,level:3,methodMap:{0:"debug",1:"info",2:"warn",3:"error"},log:function(e,t){if(n.logger.level<=e){var r=n.logger.methodMap[e];typeof console!="undefined"&&console[r]&&console[r].call(console,t)}}},n.log=function(e,t){n.logger.log(e,t)},n.registerHelper("each",function(e,t){var s=t.fn,o=t.inverse,u=0,a="",f,l=r.call(e);l===i&&(e=e.call(this)),t.data&&(f=n.createFrame(t.data));if(e&&typeof e=="object")if(e instanceof Array)for(var c=e.length;u":">",'"':""","'":"'","`":"`"},a=/[&<>"'`]/g,f=/[&<>"'`]/,l=function(e){return u[e]||"&"};n.Utils={extend:function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},escapeExpression:function(e){return e instanceof n.SafeString?e.toString():e==null||e===!1?"":(e=e.toString(),f.test(e)?e.replace(a,l):e)},isEmpty:function(e){return!e&&e!==0?!0:r.call(e)==="[object Array]"&&e.length===0?!0:!1}},n.VM={template:function(e){var t={escapeExpression:n.Utils.escapeExpression,invokePartial:n.VM.invokePartial,programs:[],program:function(e,t,r){var i=this.programs[e];return r?i=n.VM.program(e,t,r):i||(i=this.programs[e]=n.VM.program(e,t)),i},merge:function(e,t){var r=e||t;return e&&t&&(r={},n.Utils.extend(r,t),n.Utils.extend(r,e)),r},programWithDepth:n.VM.programWithDepth,noop:n.VM.noop,compilerInfo:null};return function(r,i){i=i||{};var s=e.call(t,n,r,i.helpers,i.partials,i.data),o=t.compilerInfo||[],u=o[0]||1,a=n.COMPILER_REVISION;if(u!==a){if(u= 1.0.0-rc.3' + 2: '== 1.0.0-rc.3', + 3: '== 1.0.0-rc.4', + 4: '>= 1.0.0' }; Handlebars.helpers = {}; Handlebars.partials = {}; +var toString = Object.prototype.toString, + functionType = '[object Function]', + objectType = '[object Object]'; + Handlebars.registerHelper = function(name, fn, inverse) { - if(inverse) { fn.not = inverse; } - this.helpers[name] = fn; + if (toString.call(name) === objectType) { + if (inverse || fn) { throw new Handlebars.Exception('Arg not supported with multiple helpers'); } + Handlebars.Utils.extend(this.helpers, name); + } else { + if (inverse) { fn.not = inverse; } + this.helpers[name] = fn; + } }; Handlebars.registerPartial = function(name, str) { - this.partials[name] = str; + if (toString.call(name) === objectType) { + Handlebars.Utils.extend(this.partials, name); + } else { + this.partials[name] = str; + } }; Handlebars.registerHelper('helperMissing', function(arg) { if(arguments.length === 2) { return undefined; } else { - throw new Error("Could not find property '" + arg + "'"); + throw new Error("Missing helper: '" + arg + "'"); } }); -var toString = Object.prototype.toString, functionType = "[object Function]"; - Handlebars.registerHelper('blockHelperMissing', function(context, options) { var inverse = options.inverse || function() {}, fn = options.fn; @@ -124,6 +141,9 @@ Handlebars.registerHelper('each', function(context, options) { var fn = options.fn, inverse = options.inverse; var i = 0, ret = "", data; + var type = toString.call(context); + if(type === functionType) { context = context.call(this); } + if (options.data) { data = Handlebars.createFrame(options.data); } @@ -152,35 +172,34 @@ Handlebars.registerHelper('each', function(context, options) { return ret; }); -Handlebars.registerHelper('if', function(context, options) { - var type = toString.call(context); - if(type === functionType) { context = context.call(this); } +Handlebars.registerHelper('if', function(conditional, options) { + var type = toString.call(conditional); + if(type === functionType) { conditional = conditional.call(this); } - if(!context || Handlebars.Utils.isEmpty(context)) { + if(!conditional || Handlebars.Utils.isEmpty(conditional)) { return options.inverse(this); } else { return options.fn(this); } }); -Handlebars.registerHelper('unless', function(context, options) { - return Handlebars.helpers['if'].call(this, context, {fn: options.inverse, inverse: options.fn}); +Handlebars.registerHelper('unless', function(conditional, options) { + return Handlebars.helpers['if'].call(this, conditional, {fn: options.inverse, inverse: options.fn}); }); Handlebars.registerHelper('with', function(context, options) { - return options.fn(context); + var type = toString.call(context); + if(type === functionType) { context = context.call(this); } + + if (!Handlebars.Utils.isEmpty(context)) return options.fn(context); }); Handlebars.registerHelper('log', function(context, options) { var level = options.data && options.data.level != null ? parseInt(options.data.level, 10) : 1; Handlebars.log(level, context); }); - -// END(BROWSER) /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) - var errorProps = ['description', 'fileName', 'lineNumber', 'message', 'name', 'number', 'stack']; Handlebars.Exception = function(message) { @@ -218,6 +237,14 @@ var escapeChar = function(chr) { }; Handlebars.Utils = { + extend: function(obj, value) { + for(var key in value) { + if(value.hasOwnProperty(key)) { + obj[key] = value[key]; + } + } + }, + escapeExpression: function(string) { // don't escape SafeStrings, since they're already safe if (string instanceof Handlebars.SafeString) { @@ -226,6 +253,11 @@ Handlebars.Utils = { return ""; } + // Force a string conversion as this will be done by the append regardless and + // the regex test will do this transparently behind the scenes, causing issues if + // an object's to string has escaped characters in it. + string = string.toString(); + if(!possible.test(string)) { return string; } return string.replace(badChars, escapeChar); }, @@ -240,12 +272,8 @@ Handlebars.Utils = { } } }; - -// END(BROWSER) /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) - Handlebars.VM = { template: function(templateSpec) { // Just add water @@ -256,13 +284,21 @@ Handlebars.VM = { program: function(i, fn, data) { var programWrapper = this.programs[i]; if(data) { - return Handlebars.VM.program(fn, data); - } else if(programWrapper) { - return programWrapper; - } else { - programWrapper = this.programs[i] = Handlebars.VM.program(fn); - return programWrapper; + programWrapper = Handlebars.VM.program(i, fn, data); + } else if (!programWrapper) { + programWrapper = this.programs[i] = Handlebars.VM.program(i, fn); } + return programWrapper; + }, + merge: function(param, common) { + var ret = param || common; + + if (param && common) { + ret = {}; + Handlebars.Utils.extend(ret, common); + Handlebars.Utils.extend(ret, param); + } + return ret; }, programWithDepth: Handlebars.VM.programWithDepth, noop: Handlebars.VM.noop, @@ -294,21 +330,27 @@ Handlebars.VM = { }; }, - programWithDepth: function(fn, data, $depth) { - var args = Array.prototype.slice.call(arguments, 2); + programWithDepth: function(i, fn, data /*, $depth */) { + var args = Array.prototype.slice.call(arguments, 3); - return function(context, options) { + var program = function(context, options) { options = options || {}; return fn.apply(this, [context, options.data || data].concat(args)); }; + program.program = i; + program.depth = args.length; + return program; }, - program: function(fn, data) { - return function(context, options) { + program: function(i, fn, data) { + var program = function(context, options) { options = options || {}; return fn(context, options.data || data); }; + program.program = i; + program.depth = 0; + return program; }, noop: function() { return ""; }, invokePartial: function(partial, name, context, helpers, partials, data) { @@ -328,8 +370,6 @@ Handlebars.VM = { }; Handlebars.template = Handlebars.VM.template; - -// END(BROWSER) // This file contains YUI-specific wrapper code and overrides for the // handlebars-base module. @@ -420,4 +460,4 @@ Handlebars.revive = Handlebars.template; Y.namespace('Template').Handlebars = Handlebars; -}, '3.9.1', {"requires": []}); +}, '3.12.0', {"requires": []}); diff --git a/lib/yuilib/3.9.1/build/handlebars-compiler/handlebars-compiler-debug.js b/lib/yuilib/3.12.0/handlebars-compiler/handlebars-compiler-debug.js old mode 100644 new mode 100755 similarity index 85% rename from lib/yuilib/3.9.1/build/handlebars-compiler/handlebars-compiler-debug.js rename to lib/yuilib/3.12.0/handlebars-compiler/handlebars-compiler-debug.js index 1c8f96cbb63..d0a9259092f --- a/lib/yuilib/3.9.1/build/handlebars-compiler/handlebars-compiler-debug.js +++ b/lib/yuilib/3.12.0/handlebars-compiler/handlebars-compiler-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('handlebars-compiler', function (Y, NAME) { /*! @@ -14,14 +20,13 @@ https://raw.github.com/wycats/handlebars.js/master/LICENSE var Handlebars = Y.Handlebars; /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) /* Jison generated parser */ var handlebars = (function(){ var parser = {trace: function trace() { }, yy: {}, -symbols_: {"error":2,"root":3,"program":4,"EOF":5,"simpleInverse":6,"statements":7,"statement":8,"openInverse":9,"closeBlock":10,"openBlock":11,"mustache":12,"partial":13,"CONTENT":14,"COMMENT":15,"OPEN_BLOCK":16,"inMustache":17,"CLOSE":18,"OPEN_INVERSE":19,"OPEN_ENDBLOCK":20,"path":21,"OPEN":22,"OPEN_UNESCAPED":23,"OPEN_PARTIAL":24,"partialName":25,"params":26,"hash":27,"DATA":28,"param":29,"STRING":30,"INTEGER":31,"BOOLEAN":32,"hashSegments":33,"hashSegment":34,"ID":35,"EQUALS":36,"PARTIAL_NAME":37,"pathSegments":38,"SEP":39,"$accept":0,"$end":1}, -terminals_: {2:"error",5:"EOF",14:"CONTENT",15:"COMMENT",16:"OPEN_BLOCK",18:"CLOSE",19:"OPEN_INVERSE",20:"OPEN_ENDBLOCK",22:"OPEN",23:"OPEN_UNESCAPED",24:"OPEN_PARTIAL",28:"DATA",30:"STRING",31:"INTEGER",32:"BOOLEAN",35:"ID",36:"EQUALS",37:"PARTIAL_NAME",39:"SEP"}, -productions_: [0,[3,2],[4,2],[4,3],[4,2],[4,1],[4,1],[4,0],[7,1],[7,2],[8,3],[8,3],[8,1],[8,1],[8,1],[8,1],[11,3],[9,3],[10,3],[12,3],[12,3],[13,3],[13,4],[6,2],[17,3],[17,2],[17,2],[17,1],[17,1],[26,2],[26,1],[29,1],[29,1],[29,1],[29,1],[29,1],[27,1],[33,2],[33,1],[34,3],[34,3],[34,3],[34,3],[34,3],[25,1],[21,1],[38,3],[38,1]], +symbols_: {"error":2,"root":3,"program":4,"EOF":5,"simpleInverse":6,"statements":7,"statement":8,"openInverse":9,"closeBlock":10,"openBlock":11,"mustache":12,"partial":13,"CONTENT":14,"COMMENT":15,"OPEN_BLOCK":16,"inMustache":17,"CLOSE":18,"OPEN_INVERSE":19,"OPEN_ENDBLOCK":20,"path":21,"OPEN":22,"OPEN_UNESCAPED":23,"CLOSE_UNESCAPED":24,"OPEN_PARTIAL":25,"partialName":26,"params":27,"hash":28,"dataName":29,"param":30,"STRING":31,"INTEGER":32,"BOOLEAN":33,"hashSegments":34,"hashSegment":35,"ID":36,"EQUALS":37,"DATA":38,"pathSegments":39,"SEP":40,"$accept":0,"$end":1}, +terminals_: {2:"error",5:"EOF",14:"CONTENT",15:"COMMENT",16:"OPEN_BLOCK",18:"CLOSE",19:"OPEN_INVERSE",20:"OPEN_ENDBLOCK",22:"OPEN",23:"OPEN_UNESCAPED",24:"CLOSE_UNESCAPED",25:"OPEN_PARTIAL",31:"STRING",32:"INTEGER",33:"BOOLEAN",36:"ID",37:"EQUALS",38:"DATA",40:"SEP"}, +productions_: [0,[3,2],[4,2],[4,3],[4,2],[4,1],[4,1],[4,0],[7,1],[7,2],[8,3],[8,3],[8,1],[8,1],[8,1],[8,1],[11,3],[9,3],[10,3],[12,3],[12,3],[13,3],[13,4],[6,2],[17,3],[17,2],[17,2],[17,1],[17,1],[27,2],[27,1],[30,1],[30,1],[30,1],[30,1],[30,1],[28,1],[34,2],[34,1],[35,3],[35,3],[35,3],[35,3],[35,3],[26,1],[26,1],[26,1],[29,2],[21,1],[39,3],[39,1]], performAction: function anonymous(yytext,yyleng,yylineno,yy,yystate,$$,_$) { var $0 = $$.length - 1; @@ -62,7 +67,10 @@ case 17: this.$ = new yy.MustacheNode($$[$0-1][0], $$[$0-1][1]); break; case 18: this.$ = $$[$0-1]; break; -case 19: this.$ = new yy.MustacheNode($$[$0-1][0], $$[$0-1][1]); +case 19: + // Parsing out the '&' escape token at this level saves ~500 bytes after min due to the removal of one parser node. + this.$ = new yy.MustacheNode($$[$0-1][0], $$[$0-1][1], $$[$0-2][2] === '&'); + break; case 20: this.$ = new yy.MustacheNode($$[$0-1][0], $$[$0-1][1], true); break; @@ -80,7 +88,7 @@ case 26: this.$ = [[$$[$0-1]], $$[$0]]; break; case 27: this.$ = [[$$[$0]], null]; break; -case 28: this.$ = [[new yy.DataNode($$[$0])], null]; +case 28: this.$ = [[$$[$0]], null]; break; case 29: $$[$0-1].push($$[$0]); this.$ = $$[$0-1]; break; @@ -94,7 +102,7 @@ case 33: this.$ = new yy.IntegerNode($$[$0]); break; case 34: this.$ = new yy.BooleanNode($$[$0]); break; -case 35: this.$ = new yy.DataNode($$[$0]); +case 35: this.$ = $$[$0]; break; case 36: this.$ = new yy.HashNode($$[$0]); break; @@ -110,20 +118,26 @@ case 41: this.$ = [$$[$0-2], new yy.IntegerNode($$[$0])]; break; case 42: this.$ = [$$[$0-2], new yy.BooleanNode($$[$0])]; break; -case 43: this.$ = [$$[$0-2], new yy.DataNode($$[$0])]; +case 43: this.$ = [$$[$0-2], $$[$0]]; break; case 44: this.$ = new yy.PartialNameNode($$[$0]); break; -case 45: this.$ = new yy.IdNode($$[$0]); +case 45: this.$ = new yy.PartialNameNode(new yy.StringNode($$[$0])); break; -case 46: $$[$0-2].push($$[$0]); this.$ = $$[$0-2]; +case 46: this.$ = new yy.PartialNameNode(new yy.IntegerNode($$[$0])); break; -case 47: this.$ = [$$[$0]]; +case 47: this.$ = new yy.DataNode($$[$0]); +break; +case 48: this.$ = new yy.IdNode($$[$0]); +break; +case 49: $$[$0-2].push({part: $$[$0], separator: $$[$0-1]}); this.$ = $$[$0-2]; +break; +case 50: this.$ = [{part: $$[$0]}]; break; } }, -table: [{3:1,4:2,5:[2,7],6:3,7:4,8:6,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,5],22:[1,14],23:[1,15],24:[1,16]},{1:[3]},{5:[1,17]},{5:[2,6],7:18,8:6,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,19],20:[2,6],22:[1,14],23:[1,15],24:[1,16]},{5:[2,5],6:20,8:21,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,5],20:[2,5],22:[1,14],23:[1,15],24:[1,16]},{17:23,18:[1,22],21:24,28:[1,25],35:[1,27],38:26},{5:[2,8],14:[2,8],15:[2,8],16:[2,8],19:[2,8],20:[2,8],22:[2,8],23:[2,8],24:[2,8]},{4:28,6:3,7:4,8:6,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,5],20:[2,7],22:[1,14],23:[1,15],24:[1,16]},{4:29,6:3,7:4,8:6,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,5],20:[2,7],22:[1,14],23:[1,15],24:[1,16]},{5:[2,12],14:[2,12],15:[2,12],16:[2,12],19:[2,12],20:[2,12],22:[2,12],23:[2,12],24:[2,12]},{5:[2,13],14:[2,13],15:[2,13],16:[2,13],19:[2,13],20:[2,13],22:[2,13],23:[2,13],24:[2,13]},{5:[2,14],14:[2,14],15:[2,14],16:[2,14],19:[2,14],20:[2,14],22:[2,14],23:[2,14],24:[2,14]},{5:[2,15],14:[2,15],15:[2,15],16:[2,15],19:[2,15],20:[2,15],22:[2,15],23:[2,15],24:[2,15]},{17:30,21:24,28:[1,25],35:[1,27],38:26},{17:31,21:24,28:[1,25],35:[1,27],38:26},{17:32,21:24,28:[1,25],35:[1,27],38:26},{25:33,37:[1,34]},{1:[2,1]},{5:[2,2],8:21,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,19],20:[2,2],22:[1,14],23:[1,15],24:[1,16]},{17:23,21:24,28:[1,25],35:[1,27],38:26},{5:[2,4],7:35,8:6,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,19],20:[2,4],22:[1,14],23:[1,15],24:[1,16]},{5:[2,9],14:[2,9],15:[2,9],16:[2,9],19:[2,9],20:[2,9],22:[2,9],23:[2,9],24:[2,9]},{5:[2,23],14:[2,23],15:[2,23],16:[2,23],19:[2,23],20:[2,23],22:[2,23],23:[2,23],24:[2,23]},{18:[1,36]},{18:[2,27],21:41,26:37,27:38,28:[1,45],29:39,30:[1,42],31:[1,43],32:[1,44],33:40,34:46,35:[1,47],38:26},{18:[2,28]},{18:[2,45],28:[2,45],30:[2,45],31:[2,45],32:[2,45],35:[2,45],39:[1,48]},{18:[2,47],28:[2,47],30:[2,47],31:[2,47],32:[2,47],35:[2,47],39:[2,47]},{10:49,20:[1,50]},{10:51,20:[1,50]},{18:[1,52]},{18:[1,53]},{18:[1,54]},{18:[1,55],21:56,35:[1,27],38:26},{18:[2,44],35:[2,44]},{5:[2,3],8:21,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,19],20:[2,3],22:[1,14],23:[1,15],24:[1,16]},{14:[2,17],15:[2,17],16:[2,17],19:[2,17],20:[2,17],22:[2,17],23:[2,17],24:[2,17]},{18:[2,25],21:41,27:57,28:[1,45],29:58,30:[1,42],31:[1,43],32:[1,44],33:40,34:46,35:[1,47],38:26},{18:[2,26]},{18:[2,30],28:[2,30],30:[2,30],31:[2,30],32:[2,30],35:[2,30]},{18:[2,36],34:59,35:[1,60]},{18:[2,31],28:[2,31],30:[2,31],31:[2,31],32:[2,31],35:[2,31]},{18:[2,32],28:[2,32],30:[2,32],31:[2,32],32:[2,32],35:[2,32]},{18:[2,33],28:[2,33],30:[2,33],31:[2,33],32:[2,33],35:[2,33]},{18:[2,34],28:[2,34],30:[2,34],31:[2,34],32:[2,34],35:[2,34]},{18:[2,35],28:[2,35],30:[2,35],31:[2,35],32:[2,35],35:[2,35]},{18:[2,38],35:[2,38]},{18:[2,47],28:[2,47],30:[2,47],31:[2,47],32:[2,47],35:[2,47],36:[1,61],39:[2,47]},{35:[1,62]},{5:[2,10],14:[2,10],15:[2,10],16:[2,10],19:[2,10],20:[2,10],22:[2,10],23:[2,10],24:[2,10]},{21:63,35:[1,27],38:26},{5:[2,11],14:[2,11],15:[2,11],16:[2,11],19:[2,11],20:[2,11],22:[2,11],23:[2,11],24:[2,11]},{14:[2,16],15:[2,16],16:[2,16],19:[2,16],20:[2,16],22:[2,16],23:[2,16],24:[2,16]},{5:[2,19],14:[2,19],15:[2,19],16:[2,19],19:[2,19],20:[2,19],22:[2,19],23:[2,19],24:[2,19]},{5:[2,20],14:[2,20],15:[2,20],16:[2,20],19:[2,20],20:[2,20],22:[2,20],23:[2,20],24:[2,20]},{5:[2,21],14:[2,21],15:[2,21],16:[2,21],19:[2,21],20:[2,21],22:[2,21],23:[2,21],24:[2,21]},{18:[1,64]},{18:[2,24]},{18:[2,29],28:[2,29],30:[2,29],31:[2,29],32:[2,29],35:[2,29]},{18:[2,37],35:[2,37]},{36:[1,61]},{21:65,28:[1,69],30:[1,66],31:[1,67],32:[1,68],35:[1,27],38:26},{18:[2,46],28:[2,46],30:[2,46],31:[2,46],32:[2,46],35:[2,46],39:[2,46]},{18:[1,70]},{5:[2,22],14:[2,22],15:[2,22],16:[2,22],19:[2,22],20:[2,22],22:[2,22],23:[2,22],24:[2,22]},{18:[2,39],35:[2,39]},{18:[2,40],35:[2,40]},{18:[2,41],35:[2,41]},{18:[2,42],35:[2,42]},{18:[2,43],35:[2,43]},{5:[2,18],14:[2,18],15:[2,18],16:[2,18],19:[2,18],20:[2,18],22:[2,18],23:[2,18],24:[2,18]}], -defaultActions: {17:[2,1],25:[2,28],38:[2,26],57:[2,24]}, +table: [{3:1,4:2,5:[2,7],6:3,7:4,8:6,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,5],22:[1,14],23:[1,15],25:[1,16]},{1:[3]},{5:[1,17]},{5:[2,6],7:18,8:6,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,19],20:[2,6],22:[1,14],23:[1,15],25:[1,16]},{5:[2,5],6:20,8:21,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,5],20:[2,5],22:[1,14],23:[1,15],25:[1,16]},{17:23,18:[1,22],21:24,29:25,36:[1,28],38:[1,27],39:26},{5:[2,8],14:[2,8],15:[2,8],16:[2,8],19:[2,8],20:[2,8],22:[2,8],23:[2,8],25:[2,8]},{4:29,6:3,7:4,8:6,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,5],20:[2,7],22:[1,14],23:[1,15],25:[1,16]},{4:30,6:3,7:4,8:6,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,5],20:[2,7],22:[1,14],23:[1,15],25:[1,16]},{5:[2,12],14:[2,12],15:[2,12],16:[2,12],19:[2,12],20:[2,12],22:[2,12],23:[2,12],25:[2,12]},{5:[2,13],14:[2,13],15:[2,13],16:[2,13],19:[2,13],20:[2,13],22:[2,13],23:[2,13],25:[2,13]},{5:[2,14],14:[2,14],15:[2,14],16:[2,14],19:[2,14],20:[2,14],22:[2,14],23:[2,14],25:[2,14]},{5:[2,15],14:[2,15],15:[2,15],16:[2,15],19:[2,15],20:[2,15],22:[2,15],23:[2,15],25:[2,15]},{17:31,21:24,29:25,36:[1,28],38:[1,27],39:26},{17:32,21:24,29:25,36:[1,28],38:[1,27],39:26},{17:33,21:24,29:25,36:[1,28],38:[1,27],39:26},{21:35,26:34,31:[1,36],32:[1,37],36:[1,28],39:26},{1:[2,1]},{5:[2,2],8:21,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,19],20:[2,2],22:[1,14],23:[1,15],25:[1,16]},{17:23,21:24,29:25,36:[1,28],38:[1,27],39:26},{5:[2,4],7:38,8:6,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,19],20:[2,4],22:[1,14],23:[1,15],25:[1,16]},{5:[2,9],14:[2,9],15:[2,9],16:[2,9],19:[2,9],20:[2,9],22:[2,9],23:[2,9],25:[2,9]},{5:[2,23],14:[2,23],15:[2,23],16:[2,23],19:[2,23],20:[2,23],22:[2,23],23:[2,23],25:[2,23]},{18:[1,39]},{18:[2,27],21:44,24:[2,27],27:40,28:41,29:48,30:42,31:[1,45],32:[1,46],33:[1,47],34:43,35:49,36:[1,50],38:[1,27],39:26},{18:[2,28],24:[2,28]},{18:[2,48],24:[2,48],31:[2,48],32:[2,48],33:[2,48],36:[2,48],38:[2,48],40:[1,51]},{21:52,36:[1,28],39:26},{18:[2,50],24:[2,50],31:[2,50],32:[2,50],33:[2,50],36:[2,50],38:[2,50],40:[2,50]},{10:53,20:[1,54]},{10:55,20:[1,54]},{18:[1,56]},{18:[1,57]},{24:[1,58]},{18:[1,59],21:60,36:[1,28],39:26},{18:[2,44],36:[2,44]},{18:[2,45],36:[2,45]},{18:[2,46],36:[2,46]},{5:[2,3],8:21,9:7,11:8,12:9,13:10,14:[1,11],15:[1,12],16:[1,13],19:[1,19],20:[2,3],22:[1,14],23:[1,15],25:[1,16]},{14:[2,17],15:[2,17],16:[2,17],19:[2,17],20:[2,17],22:[2,17],23:[2,17],25:[2,17]},{18:[2,25],21:44,24:[2,25],28:61,29:48,30:62,31:[1,45],32:[1,46],33:[1,47],34:43,35:49,36:[1,50],38:[1,27],39:26},{18:[2,26],24:[2,26]},{18:[2,30],24:[2,30],31:[2,30],32:[2,30],33:[2,30],36:[2,30],38:[2,30]},{18:[2,36],24:[2,36],35:63,36:[1,64]},{18:[2,31],24:[2,31],31:[2,31],32:[2,31],33:[2,31],36:[2,31],38:[2,31]},{18:[2,32],24:[2,32],31:[2,32],32:[2,32],33:[2,32],36:[2,32],38:[2,32]},{18:[2,33],24:[2,33],31:[2,33],32:[2,33],33:[2,33],36:[2,33],38:[2,33]},{18:[2,34],24:[2,34],31:[2,34],32:[2,34],33:[2,34],36:[2,34],38:[2,34]},{18:[2,35],24:[2,35],31:[2,35],32:[2,35],33:[2,35],36:[2,35],38:[2,35]},{18:[2,38],24:[2,38],36:[2,38]},{18:[2,50],24:[2,50],31:[2,50],32:[2,50],33:[2,50],36:[2,50],37:[1,65],38:[2,50],40:[2,50]},{36:[1,66]},{18:[2,47],24:[2,47],31:[2,47],32:[2,47],33:[2,47],36:[2,47],38:[2,47]},{5:[2,10],14:[2,10],15:[2,10],16:[2,10],19:[2,10],20:[2,10],22:[2,10],23:[2,10],25:[2,10]},{21:67,36:[1,28],39:26},{5:[2,11],14:[2,11],15:[2,11],16:[2,11],19:[2,11],20:[2,11],22:[2,11],23:[2,11],25:[2,11]},{14:[2,16],15:[2,16],16:[2,16],19:[2,16],20:[2,16],22:[2,16],23:[2,16],25:[2,16]},{5:[2,19],14:[2,19],15:[2,19],16:[2,19],19:[2,19],20:[2,19],22:[2,19],23:[2,19],25:[2,19]},{5:[2,20],14:[2,20],15:[2,20],16:[2,20],19:[2,20],20:[2,20],22:[2,20],23:[2,20],25:[2,20]},{5:[2,21],14:[2,21],15:[2,21],16:[2,21],19:[2,21],20:[2,21],22:[2,21],23:[2,21],25:[2,21]},{18:[1,68]},{18:[2,24],24:[2,24]},{18:[2,29],24:[2,29],31:[2,29],32:[2,29],33:[2,29],36:[2,29],38:[2,29]},{18:[2,37],24:[2,37],36:[2,37]},{37:[1,65]},{21:69,29:73,31:[1,70],32:[1,71],33:[1,72],36:[1,28],38:[1,27],39:26},{18:[2,49],24:[2,49],31:[2,49],32:[2,49],33:[2,49],36:[2,49],38:[2,49],40:[2,49]},{18:[1,74]},{5:[2,22],14:[2,22],15:[2,22],16:[2,22],19:[2,22],20:[2,22],22:[2,22],23:[2,22],25:[2,22]},{18:[2,39],24:[2,39],36:[2,39]},{18:[2,40],24:[2,40],36:[2,40]},{18:[2,41],24:[2,41],36:[2,41]},{18:[2,42],24:[2,42],36:[2,42]},{18:[2,43],24:[2,43],36:[2,43]},{5:[2,18],14:[2,18],15:[2,18],16:[2,18],19:[2,18],20:[2,18],22:[2,18],23:[2,18],25:[2,18]}], +defaultActions: {17:[2,1]}, parseError: function parseError(str, hash) { throw new Error(str); }, @@ -404,94 +418,89 @@ lexer.performAction = function anonymous(yy,yy_,$avoiding_name_collisions,YY_STA var YYSTATE=YY_START switch($avoiding_name_collisions) { -case 0: +case 0: yy_.yytext = "\\"; return 14; +break; +case 1: if(yy_.yytext.slice(-1) !== "\\") this.begin("mu"); if(yy_.yytext.slice(-1) === "\\") yy_.yytext = yy_.yytext.substr(0,yy_.yyleng-1), this.begin("emu"); if(yy_.yytext) return 14; break; -case 1: return 14; +case 2: return 14; break; -case 2: +case 3: if(yy_.yytext.slice(-1) !== "\\") this.popState(); if(yy_.yytext.slice(-1) === "\\") yy_.yytext = yy_.yytext.substr(0,yy_.yyleng-1); return 14; break; -case 3: yy_.yytext = yy_.yytext.substr(0, yy_.yyleng-4); this.popState(); return 15; +case 4: yy_.yytext = yy_.yytext.substr(0, yy_.yyleng-4); this.popState(); return 15; break; -case 4: this.begin("par"); return 24; +case 5: return 25; break; -case 5: return 16; +case 6: return 16; break; -case 6: return 20; -break; -case 7: return 19; +case 7: return 20; break; case 8: return 19; break; -case 9: return 23; +case 9: return 19; break; case 10: return 23; break; -case 11: this.popState(); this.begin('com'); +case 11: return 22; break; -case 12: yy_.yytext = yy_.yytext.substr(3,yy_.yyleng-5); this.popState(); return 15; +case 12: this.popState(); this.begin('com'); break; -case 13: return 22; +case 13: yy_.yytext = yy_.yytext.substr(3,yy_.yyleng-5); this.popState(); return 15; break; -case 14: return 36; +case 14: return 22; break; -case 15: return 35; +case 15: return 37; break; -case 16: return 35; +case 16: return 36; break; -case 17: return 39; +case 17: return 36; break; -case 18: /*ignore whitespace*/ +case 18: return 40; break; -case 19: this.popState(); return 18; +case 19: /*ignore whitespace*/ break; -case 20: this.popState(); return 18; +case 20: this.popState(); return 24; break; -case 21: yy_.yytext = yy_.yytext.substr(1,yy_.yyleng-2).replace(/\\"/g,'"'); return 30; +case 21: this.popState(); return 18; break; -case 22: yy_.yytext = yy_.yytext.substr(1,yy_.yyleng-2).replace(/\\'/g,"'"); return 30; +case 22: yy_.yytext = yy_.yytext.substr(1,yy_.yyleng-2).replace(/\\"/g,'"'); return 31; break; -case 23: yy_.yytext = yy_.yytext.substr(1); return 28; +case 23: yy_.yytext = yy_.yytext.substr(1,yy_.yyleng-2).replace(/\\'/g,"'"); return 31; break; -case 24: return 32; +case 24: return 38; break; -case 25: return 32; +case 25: return 33; break; -case 26: return 31; +case 26: return 33; break; -case 27: return 35; +case 27: return 32; break; -case 28: yy_.yytext = yy_.yytext.substr(1, yy_.yyleng-2); return 35; +case 28: return 36; break; -case 29: return 'INVALID'; +case 29: yy_.yytext = yy_.yytext.substr(1, yy_.yyleng-2); return 36; break; -case 30: /*ignore whitespace*/ +case 30: return 'INVALID'; break; -case 31: this.popState(); return 37; -break; -case 32: return 5; +case 31: return 5; break; } }; -lexer.rules = [/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|$)))/,/^(?:[\s\S]*?--\}\})/,/^(?:\{\{>)/,/^(?:\{\{#)/,/^(?:\{\{\/)/,/^(?:\{\{\^)/,/^(?:\{\{\s*else\b)/,/^(?:\{\{\{)/,/^(?:\{\{&)/,/^(?:\{\{!--)/,/^(?:\{\{![\s\S]*?\}\})/,/^(?:\{\{)/,/^(?:=)/,/^(?:\.(?=[} ]))/,/^(?:\.\.)/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}\}\})/,/^(?:\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@[a-zA-Z]+)/,/^(?:true(?=[}\s]))/,/^(?:false(?=[}\s]))/,/^(?:-?[0-9]+(?=[}\s]))/,/^(?:[a-zA-Z0-9_$-]+(?=[=}\s\/.]))/,/^(?:\[[^\]]*\])/,/^(?:.)/,/^(?:\s+)/,/^(?:[a-zA-Z0-9_$-/]+)/,/^(?:$)/]; -lexer.conditions = {"mu":{"rules":[4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,32],"inclusive":false},"emu":{"rules":[2],"inclusive":false},"com":{"rules":[3],"inclusive":false},"par":{"rules":[30,31],"inclusive":false},"INITIAL":{"rules":[0,1,32],"inclusive":true}}; +lexer.rules = [/^(?:\\\\(?=(\{\{)))/,/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|$)))/,/^(?:[\s\S]*?--\}\})/,/^(?:\{\{>)/,/^(?:\{\{#)/,/^(?:\{\{\/)/,/^(?:\{\{\^)/,/^(?:\{\{\s*else\b)/,/^(?:\{\{\{)/,/^(?:\{\{&)/,/^(?:\{\{!--)/,/^(?:\{\{![\s\S]*?\}\})/,/^(?:\{\{)/,/^(?:=)/,/^(?:\.(?=[}\/ ]))/,/^(?:\.\.)/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}\}\})/,/^(?:\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=[}\s]))/,/^(?:false(?=[}\s]))/,/^(?:-?[0-9]+(?=[}\s]))/,/^(?:[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.]))/,/^(?:\[[^\]]*\])/,/^(?:.)/,/^(?:$)/]; +lexer.conditions = {"mu":{"rules":[5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],"inclusive":false},"emu":{"rules":[3],"inclusive":false},"com":{"rules":[4],"inclusive":false},"INITIAL":{"rules":[0,1,2,31],"inclusive":true}}; return lexer;})() parser.lexer = lexer; function Parser () { this.yy = {}; }Parser.prototype = parser;parser.Parser = Parser; return new Parser; })(); -// END(BROWSER) /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) - Handlebars.Parser = handlebars; Handlebars.parse = function(input) { @@ -502,11 +511,8 @@ Handlebars.parse = function(input) { Handlebars.Parser.yy = Handlebars.AST; return Handlebars.Parser.parse(input); }; - -// END(BROWSER) /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) Handlebars.AST = {}; Handlebars.AST.ProgramNode = function(statements, inverse) { @@ -573,21 +579,24 @@ Handlebars.AST.HashNode = function(pairs) { Handlebars.AST.IdNode = function(parts) { this.type = "ID"; - this.original = parts.join("."); - var dig = [], depth = 0; + var original = "", + dig = [], + depth = 0; for(var i=0,l=parts.length; i 0) { throw new Handlebars.Exception("Invalid path: " + this.original); } + if (dig.length > 0) { throw new Handlebars.Exception("Invalid path: " + original); } else if (part === "..") { depth++; } else { this.isScoped = true; } } else { dig.push(part); } } + this.original = original; this.parts = dig; this.string = dig.join('.'); this.depth = depth; @@ -601,7 +610,7 @@ Handlebars.AST.IdNode = function(parts) { Handlebars.AST.PartialNameNode = function(name) { this.type = "PARTIAL_NAME"; - this.name = name; + this.name = name.original; }; Handlebars.AST.DataNode = function(id) { @@ -611,13 +620,15 @@ Handlebars.AST.DataNode = function(id) { Handlebars.AST.StringNode = function(string) { this.type = "STRING"; - this.string = string; - this.stringModeValue = string; + this.original = + this.string = + this.stringModeValue = string; }; Handlebars.AST.IntegerNode = function(integer) { this.type = "INTEGER"; - this.integer = integer; + this.original = + this.integer = integer; this.stringModeValue = Number(integer); }; @@ -631,12 +642,8 @@ Handlebars.AST.CommentNode = function(comment) { this.type = "comment"; this.comment = comment; }; - -// END(BROWSER) /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) - /*jshint eqnull:true*/ var Compiler = Handlebars.Compiler = function() {}; var JavaScriptCompiler = Handlebars.JavaScriptCompiler = function() {}; @@ -820,6 +827,10 @@ Compiler.prototype = { val = pair[1]; if (this.options.stringParams) { + if(val.depth) { + this.addDepth(val.depth); + } + this.opcode('getContext', val.depth || 0); this.opcode('pushStringParam', val.stringModeValue, val.type); } else { this.accept(val); @@ -903,7 +914,7 @@ Compiler.prototype = { if (this.options.knownHelpers[name]) { this.opcode('invokeKnownHelper', params.length, name); - } else if (this.knownHelpersOnly) { + } else if (this.options.knownHelpersOnly) { throw new Error("You specified knownHelpersOnly, but used the unknown helper " + name); } else { this.opcode('invokeHelper', params.length, name); @@ -928,7 +939,15 @@ Compiler.prototype = { DATA: function(data) { this.options.data = true; - this.opcode('lookupData', data.id); + if (data.id.isScoped || data.id.depth) { + throw new Handlebars.Exception('Scoped data references are not supported: ' + data.original); + } + + this.opcode('lookupData'); + var parts = data.id.parts; + for(var i=0, l=parts.length; i2&&k.push("'"+this.terminals_[T]+"'");this.lexer.showPosition?L="Parse error on line "+(a+1)+":\n"+this.lexer.showPosition()+"\nExpecting "+k.join(", ")+", got '"+(this.terminals_[g]||g)+"'":L="Parse error on line "+(a+1)+": Unexpected "+(g==1?"end of input":"'"+(this.terminals_[g]||g)+"'"),this.parseError(L,{text:this.lexer.match,token:this.terminals_[g]||g,line:this.lexer.yylineno,loc:p,expected:k})}}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+b+", token: "+g);switch(w[0]){case 1:r.push(g),i.push(this.lexer.yytext),s.push(this.lexer.yylloc),r.push(w[1]),g=null,y?(g=y,y=null):(f=this.lexer.yyleng,u=this.lexer.yytext,a=this.lexer.yylineno,p=this.lexer.yylloc,l>0&&l--);break;case 2:N=this.productions_[w[1]][1],x.$=i[i.length-N],x._$={first_line:s[s.length-(N||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(N||1)].first_column,last_column:s[s.length-1].last_column},d&&(x._$.range=[s[s.length-(N||1)].range[0],s[s.length-1].range[1]]),S=this.performAction.call(x,u,f,a,this.yy,w[1],i,s);if(typeof S!="undefined")return S;N&&(r=r.slice(0,-1*N*2),i=i.slice(0,-1*N),s=s.slice(0,-1*N)),r.push(this.productions_[w[1]][0]),i.push(x.$),s.push(x._$),C=o[r[r.length-2]][r[r.length-1]],r.push(C);break;case 3:return!0}}return!0}},t=function(){var e={EOF:1,parseError:function(t,n){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,n)},setInput:function(e){return this._input=e,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var e=this._input[0];this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e;var t=e.match(/(?:\r\n?|\n).*/g);return t?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t=e.length,n=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t-1),this.offset-=t;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),this},more:function(){return this._more=!0,this},less:function(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function( +){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=(new Array(e.length+1)).join("-");return e+this.upcomingInput()+"\n"+t+"^"},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var e,t,n,r,i,s;this._more||(this.yytext="",this.match="");var o=this._currentRules();for(var u=0;ut[0].length)){t=n,r=u;if(!this.options.flex)break}}if(t){s=t[0].match(/(?:\r\n?|\n).*/g),s&&(this.yylineno+=s.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:s?s[s.length-1].length-s[s.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],e=this.performAction.call(this,this.yy,this,o[r],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1);if(e)return e;return}return this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var t=this.next();return typeof t!="undefined"?t:this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(t){this.begin(t)}};return e.options={},e.performAction=function(t,n,r,i){var s=i;switch(r){case 0:return n.yytext="\\",14;case 1:n.yytext.slice(-1)!=="\\"&&this.begin("mu"),n.yytext.slice(-1)==="\\"&&(n.yytext=n.yytext.substr(0,n.yyleng-1),this.begin("emu"));if(n.yytext)return 14;break;case 2:return 14;case 3:return n.yytext.slice(-1)!=="\\"&&this.popState(),n.yytext.slice(-1)==="\\"&&(n.yytext=n.yytext.substr(0,n.yyleng-1)),14;case 4:return n.yytext=n.yytext.substr(0,n.yyleng-4),this.popState(),15;case 5:return 25;case 6:return 16;case 7:return 20;case 8:return 19;case 9:return 19;case 10:return 23;case 11:return 22;case 12:this.popState(),this.begin("com");break;case 13:return n.yytext=n.yytext.substr(3,n.yyleng-5),this.popState(),15;case 14:return 22;case 15:return 37;case 16:return 36;case 17:return 36;case 18:return 40;case 19:break;case 20:return this.popState(),24;case 21:return this.popState(),18;case 22:return n.yytext=n.yytext.substr(1,n.yyleng-2).replace(/\\"/g,'"'),31;case 23:return n.yytext=n.yytext.substr(1,n.yyleng-2).replace(/\\'/g,"'"),31;case 24:return 38;case 25:return 33;case 26:return 33;case 27:return 32;case 28:return 36;case 29:return n.yytext=n.yytext.substr(1,n.yyleng-2),36;case 30:return"INVALID";case 31:return 5}},e.rules=[/^(?:\\\\(?=(\{\{)))/,/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|$)))/,/^(?:[\s\S]*?--\}\})/,/^(?:\{\{>)/,/^(?:\{\{#)/,/^(?:\{\{\/)/,/^(?:\{\{\^)/,/^(?:\{\{\s*else\b)/,/^(?:\{\{\{)/,/^(?:\{\{&)/,/^(?:\{\{!--)/,/^(?:\{\{![\s\S]*?\}\})/,/^(?:\{\{)/,/^(?:=)/,/^(?:\.(?=[}\/ ]))/,/^(?:\.\.)/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}\}\})/,/^(?:\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=[}\s]))/,/^(?:false(?=[}\s]))/,/^(?:-?[0-9]+(?=[}\s]))/,/^(?:[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.]))/,/^(?:\[[^\]]*\])/,/^(?:.)/,/^(?:$)/],e.conditions={mu:{rules:[5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],inclusive:!1},emu:{rules:[3],inclusive:!1},com:{rules:[4],inclusive:!1},INITIAL:{rules:[0,1,2,31],inclusive:!0}},e}();return e.lexer=t,n.prototype=e,e.Parser=n,new n}();n.Parser=r,n.parse=function(e){return e.constructor===n.AST.ProgramNode?e:(n.Parser.yy=n.AST,n.Parser.parse(e))},n.AST={},n.AST.ProgramNode=function(e,t){this.type="program",this.statements=e,t&&(this.inverse=new n.AST.ProgramNode(t))},n.AST.MustacheNode=function(e,t,n){this.type="mustache",this.escaped=!n,this.hash=t;var r=this.id=e[0],i=this.params=e.slice(1),s=this.eligibleHelper=r.isSimple;this.isHelper=s&&(i.length||t)},n.AST.PartialNode=function(e,t){this.type="partial",this.partialName=e,this.context=t},n.AST.BlockNode=function(e,t,r,i){var s=function(e,t){if(e.original!==t.original)throw new n.Exception(e.original+" doesn't match "+t.original)};s(e.id,i),this.type="block",this.mustache=e,this.program=t,this.inverse=r,this.inverse&&!this.program&&(this.isInverse=!0)},n.AST.ContentNode=function(e){this.type="content",this.string=e},n.AST.HashNode=function(e){this.type="hash",this.pairs=e},n.AST.IdNode=function(e){this.type="ID";var t="",r=[],i=0;for(var s=0,o=e.length;s0)throw new n.Exception("Invalid path: "+t);u===".."?i++:this.isScoped=!0}else r.push(u)}this.original=t,this.parts=r,this.string=r.join("."),this.depth=i,this.isSimple=e.length===1&&!this.isScoped&&i===0,this.stringModeValue=this.string},n.AST.PartialNameNode=function(e){this.type="PARTIAL_NAME",this.name=e.original},n.AST.DataNode=function(e){this.type="DATA",this.id=e},n.AST.StringNode=function(e){this.type="STRING",this.original=this.string=this.stringModeValue=e},n.AST.IntegerNode=function(e){this.type="INTEGER",this.original=this.integer=e,this.stringModeValue=Number(e)},n.AST.BooleanNode=function(e){this.type="BOOLEAN",this.bool=e,this.stringModeValue=e==="true"},n.AST.CommentNode=function(e){this.type="comment",this.comment=e};var i=n.Compiler=function(){},s=n.JavaScriptCompiler=function(){};i.prototype={compiler:i,disassemble:function(){var e=this.opcodes,t,n=[],r,i;for(var s=0,o=e.length;sthis.stackVars.length&&this.stackVars.push("stack"+this.stackSlot),this.topStackName()},topStackName:function(){return"stack"+this.stackSlot},flushInline:function(){var e=this.inlineStack;if(e.length){this.inlineStack=[];for(var t=0,n=e.length;t)/,/^(?:\{\{#)/,/^(?:\{\{\/)/,/^(?:\{\{\^)/,/^(?:\{\{\s*else\b)/,/^(?:\{\{\{)/,/^(?:\{\{&)/,/^(?:\{\{!--)/,/^(?:\{\{![\s\S]*?\}\})/,/^(?:\{\{)/,/^(?:=)/,/^(?:\.(?=[} ]))/,/^(?:\.\.)/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}\}\})/,/^(?:\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@[a-zA-Z]+)/,/^(?:true(?=[}\s]))/,/^(?:false(?=[}\s]))/,/^(?:-?[0-9]+(?=[}\s]))/,/^(?:[a-zA-Z0-9_$-]+(?=[=}\s\/.]))/,/^(?:\[[^\]]*\])/,/^(?:.)/,/^(?:\s+)/,/^(?:[a-zA-Z0-9_$-/]+)/,/^(?:$)/]; -lexer.conditions = {"mu":{"rules":[4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,32],"inclusive":false},"emu":{"rules":[2],"inclusive":false},"com":{"rules":[3],"inclusive":false},"par":{"rules":[30,31],"inclusive":false},"INITIAL":{"rules":[0,1,32],"inclusive":true}}; +lexer.rules = [/^(?:\\\\(?=(\{\{)))/,/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|$)))/,/^(?:[\s\S]*?--\}\})/,/^(?:\{\{>)/,/^(?:\{\{#)/,/^(?:\{\{\/)/,/^(?:\{\{\^)/,/^(?:\{\{\s*else\b)/,/^(?:\{\{\{)/,/^(?:\{\{&)/,/^(?:\{\{!--)/,/^(?:\{\{![\s\S]*?\}\})/,/^(?:\{\{)/,/^(?:=)/,/^(?:\.(?=[}\/ ]))/,/^(?:\.\.)/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}\}\})/,/^(?:\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=[}\s]))/,/^(?:false(?=[}\s]))/,/^(?:-?[0-9]+(?=[}\s]))/,/^(?:[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.]))/,/^(?:\[[^\]]*\])/,/^(?:.)/,/^(?:$)/]; +lexer.conditions = {"mu":{"rules":[5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],"inclusive":false},"emu":{"rules":[3],"inclusive":false},"com":{"rules":[4],"inclusive":false},"INITIAL":{"rules":[0,1,2,31],"inclusive":true}}; return lexer;})() parser.lexer = lexer; function Parser () { this.yy = {}; }Parser.prototype = parser;parser.Parser = Parser; return new Parser; })(); -// END(BROWSER) /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) - Handlebars.Parser = handlebars; Handlebars.parse = function(input) { @@ -502,11 +511,8 @@ Handlebars.parse = function(input) { Handlebars.Parser.yy = Handlebars.AST; return Handlebars.Parser.parse(input); }; - -// END(BROWSER) /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) Handlebars.AST = {}; Handlebars.AST.ProgramNode = function(statements, inverse) { @@ -573,21 +579,24 @@ Handlebars.AST.HashNode = function(pairs) { Handlebars.AST.IdNode = function(parts) { this.type = "ID"; - this.original = parts.join("."); - var dig = [], depth = 0; + var original = "", + dig = [], + depth = 0; for(var i=0,l=parts.length; i 0) { throw new Handlebars.Exception("Invalid path: " + this.original); } + if (dig.length > 0) { throw new Handlebars.Exception("Invalid path: " + original); } else if (part === "..") { depth++; } else { this.isScoped = true; } } else { dig.push(part); } } + this.original = original; this.parts = dig; this.string = dig.join('.'); this.depth = depth; @@ -601,7 +610,7 @@ Handlebars.AST.IdNode = function(parts) { Handlebars.AST.PartialNameNode = function(name) { this.type = "PARTIAL_NAME"; - this.name = name; + this.name = name.original; }; Handlebars.AST.DataNode = function(id) { @@ -611,13 +620,15 @@ Handlebars.AST.DataNode = function(id) { Handlebars.AST.StringNode = function(string) { this.type = "STRING"; - this.string = string; - this.stringModeValue = string; + this.original = + this.string = + this.stringModeValue = string; }; Handlebars.AST.IntegerNode = function(integer) { this.type = "INTEGER"; - this.integer = integer; + this.original = + this.integer = integer; this.stringModeValue = Number(integer); }; @@ -631,12 +642,8 @@ Handlebars.AST.CommentNode = function(comment) { this.type = "comment"; this.comment = comment; }; - -// END(BROWSER) /* THIS FILE IS GENERATED BY A BUILD SCRIPT - DO NOT EDIT! */ -// BEGIN(BROWSER) - /*jshint eqnull:true*/ var Compiler = Handlebars.Compiler = function() {}; var JavaScriptCompiler = Handlebars.JavaScriptCompiler = function() {}; @@ -820,6 +827,10 @@ Compiler.prototype = { val = pair[1]; if (this.options.stringParams) { + if(val.depth) { + this.addDepth(val.depth); + } + this.opcode('getContext', val.depth || 0); this.opcode('pushStringParam', val.stringModeValue, val.type); } else { this.accept(val); @@ -903,7 +914,7 @@ Compiler.prototype = { if (this.options.knownHelpers[name]) { this.opcode('invokeKnownHelper', params.length, name); - } else if (this.knownHelpersOnly) { + } else if (this.options.knownHelpersOnly) { throw new Error("You specified knownHelpersOnly, but used the unknown helper " + name); } else { this.opcode('invokeHelper', params.length, name); @@ -928,7 +939,15 @@ Compiler.prototype = { DATA: function(data) { this.options.data = true; - this.opcode('lookupData', data.id); + if (data.id.isScoped || data.id.depth) { + throw new Handlebars.Exception('Scoped data references are not supported: ' + data.original); + } + + this.opcode('lookupData'); + var parts = data.id.parts; + for(var i=0, l=parts.length; i{s}',all:function(e,t,n){var i=[],u,f,l,c,h,p;n||(n=o),u=n.escapeHTML!==!1,h=n.startsWith?a._START_REGEX:a._REGEX,p=n.replacer||a._REPLACER,t=s(t)?t:[t];for(f=0,l=t.length;f{s}',all:function(e,t,n){var i=[],u,f,l,c,h,p;n||(n=o),u=n.escapeHTML!==!1,h=n.startsWith?a._START_REGEX:a._REGEX,p=n.replacer||a._REPLACER,t=s(t)?t:[t];for(f=0,l=t.length;f=2)&&(!e.UA.android||e.UA.android>=2.4)),p.nativeHashChange=("onhashchange"in a||"onhashchange"in o)&&(!u||u>7),e.mix(p.prototype,{_init:function(e){var t;e=this._config=e||{},this.force=!!e.force,t=this._initialState=this._initialState||e.initialState||null,this.publish(l,{broadcast:2,defaultFn:this._defChangeFn}),t&&this.replace(t)},add:function(){var e=s(arguments,0,!0);return e.unshift(c),this._change.apply(this,e)},addValue:function(e,t,n){var r={};return r[e]=t,this._change(c,r,n)},get:function(t){var n=i._state,s=d(n);return t?s&&r.owns(n,t)?n[t]:undefined:s?e.mix({},n,!0):n},replace:function(){var e=s(arguments,0,!0);return e.unshift(h),this._change.apply(this,e)},replaceValue:function(e,t,n){var r={};return r[e]=t,this._change(h,r,n)},_change:function(t,n,r){return r=r?e.merge(f,r):f,r.merge&&d(n)&&d(i._state)&&(n=e.merge(i._state,n)),this._resolveChanges(t,n,r),this},_fireEvents:function(e,t,n){this.fire(l,{_options:n,changed:t.changed,newVal:t.newState,prevVal:t.prevState,removed:t.removed,src:e}),r.each(t.changed,function(t,n){this._fireChangeEvent(e,n,t)},this),r.each(t.removed,function(t,n){this._fireRemoveEvent(e,n,t)},this)},_fireChangeEvent:function(e,t,n){this.fire(t+"Change",{newVal:n.newVal,prevVal:n.prevVal,src:e})},_fireRemoveEvent:function(e,t,n){this.fire(t+"Remove",{prevVal:n,src:e})},_resolveChanges:function(e,t,n){var s={},o,u=i._state,a={};t||(t={}),n||(n={}),d(t)&&d(u)?(r.each(t,function(e,t){var n=u[t];e!==n&&(s[t]={newVal:e,prevVal:n},o=!0)},this),r.each(u,function(e,n){if(!r.owns(t,n)||t[n]===null)delete t[n],a[n]=e,o=!0},this)):o=t!==u,(o||this.force)&&this._fireEvents(e,{changed:s,newState:t,prevState:u,removed:a},n)},_storeState:function(e,t){i._state=t||{}},_defChangeFn:function(e){this._storeState(e.src,e.newVal,e._options)}},!0),e.HistoryBase=p},"3.9.1",{requires:["event-custom-complex"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("history-base",function(e,t){function p(){this._init.apply(this,arguments)}function d(e){return n.type(e)==="object"}var n=e.Lang,r=e.Object,i=YUI.namespace("Env.History"),s=e.Array,o=e.config.doc,u=o.documentMode,a=e.config.win,f={merge:!0},l="change",c="add",h="replace";e.augment(p,e.EventTarget,null,null,{emitFacade:!0,prefix:"history",preventable:!1,queueable:!0}),i._state||(i._state={}),p.NAME="historyBase",p.SRC_ADD=c,p.SRC_REPLACE=h,p.html5=!!(a.history&&a.history.pushState&&a.history.replaceState&&("onpopstate"in a||e.UA.gecko>=2)&&(!e.UA.android||e.UA.android>=2.4)),p.nativeHashChange=("onhashchange"in a||"onhashchange"in o)&&(!u||u>7),e.mix(p.prototype,{_init:function(e){var t;e=this._config=e||{},this.force=!!e.force,t=this._initialState=this._initialState||e.initialState||null,this.publish(l,{broadcast:2,defaultFn:this._defChangeFn}),t&&this.replace(t)},add:function(){var e=s(arguments,0,!0);return e.unshift(c),this._change.apply(this,e)},addValue:function(e,t,n){var r={};return r[e]=t,this._change(c,r,n)},get:function(t){var n=i._state,s=d(n);return t?s&&r.owns(n,t)?n[t]:undefined:s?e.mix({},n,!0):n},replace:function(){var e=s(arguments,0,!0);return e.unshift(h),this._change.apply(this,e)},replaceValue:function(e,t,n){var r={};return r[e]=t,this._change(h,r,n)},_change:function(t,n,r){return r=r?e.merge(f,r):f,r.merge&&d(n)&&d(i._state)&&(n=e.merge(i._state,n)),this._resolveChanges(t,n,r),this},_fireEvents:function(e,t,n){this.fire(l,{_options:n,changed:t.changed,newVal:t.newState,prevVal:t.prevState,removed:t.removed,src:e}),r.each(t.changed,function(t,n){this._fireChangeEvent(e,n,t)},this),r.each(t.removed,function(t,n){this._fireRemoveEvent(e,n,t)},this)},_fireChangeEvent:function(e,t,n){this.fire(t+"Change",{newVal:n.newVal,prevVal:n.prevVal,src:e})},_fireRemoveEvent:function(e,t,n){this.fire(t+"Remove",{prevVal:n,src:e})},_resolveChanges:function(e,t,n){var s={},o,u=i._state,a={};t||(t={}),n||(n={}),d(t)&&d(u)?(r.each(t,function(e,t){var n=u[t];e!==n&&(s[t]={newVal:e,prevVal:n},o=!0)},this),r.each(u,function(e,n){if(!r.owns(t,n)||t[n]===null)delete t[n],a[n]=e,o=!0},this)):o=t!==u,(o||this.force)&&this._fireEvents(e,{changed:s,newState:t,prevState:u,removed:a},n)},_storeState:function(e,t){i._state=t||{}},_defChangeFn:function(e){this._storeState(e.src,e.newVal,e._options)}},!0),e.HistoryBase=p},"3.12.0",{requires:["event-custom-complex"]}); diff --git a/lib/yuilib/3.9.1/build/history-base/history-base.js b/lib/yuilib/3.12.0/history-base/history-base.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/history-base/history-base.js rename to lib/yuilib/3.12.0/history-base/history-base.js index b3b108c1341..43c03c18100 --- a/lib/yuilib/3.9.1/build/history-base/history-base.js +++ b/lib/yuilib/3.12.0/history-base/history-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('history-base', function (Y, NAME) { /** @@ -638,4 +644,4 @@ Y.mix(HistoryBase.prototype, { Y.HistoryBase = HistoryBase; -}, '3.9.1', {"requires": ["event-custom-complex"]}); +}, '3.12.0', {"requires": ["event-custom-complex"]}); diff --git a/lib/yuilib/3.9.1/build/history-hash-ie/history-hash-ie-debug.js b/lib/yuilib/3.12.0/history-hash-ie/history-hash-ie-debug.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/history-hash-ie/history-hash-ie-debug.js rename to lib/yuilib/3.12.0/history-hash-ie/history-hash-ie-debug.js index 6aa8b13a1ee..489422a4533 --- a/lib/yuilib/3.9.1/build/history-hash-ie/history-hash-ie-debug.js +++ b/lib/yuilib/3.12.0/history-hash-ie/history-hash-ie-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('history-hash-ie', function (Y, NAME) { /** @@ -136,4 +142,4 @@ if (Y.UA.ie && !Y.HistoryBase.nativeHashChange) { } -}, '3.9.1', {"requires": ["history-hash", "node-base"]}); +}, '3.12.0', {"requires": ["history-hash", "node-base"]}); diff --git a/lib/yuilib/3.9.1/build/history-hash-ie/history-hash-ie-min.js b/lib/yuilib/3.12.0/history-hash-ie/history-hash-ie-min.js old mode 100644 new mode 100755 similarity index 79% rename from lib/yuilib/3.9.1/build/history-hash-ie/history-hash-ie-min.js rename to lib/yuilib/3.12.0/history-hash-ie/history-hash-ie-min.js index 2cb9a5a2b4a..a3b471eafe3 --- a/lib/yuilib/3.9.1/build/history-hash-ie/history-hash-ie-min.js +++ b/lib/yuilib/3.12.0/history-hash-ie/history-hash-ie-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("history-hash-ie",function(e,t){if(e.UA.ie&&!e.HistoryBase.nativeHashChange){var n=e.Do,r=YUI.namespace("Env.HistoryHash"),i=e.HistoryHash,s=r._iframe,o=e.config.win;i.getIframeHash=function(){if(!s||!s.contentWindow)return"";var e=i.hashPrefix,t=s.contentWindow.location.hash.substr(1);return e&&t.indexOf(e)===0?t.replace(e,""):t},i._updateIframe=function(e,t){var n=s&&s.contentWindow&&s.contentWindow.document,r=n&&n.location;if(!n||!r)return;t?r.replace(e.charAt(0)==="#"?e:"#"+e):(n.open().close(),r.hash=e)},n.before(i._updateIframe,i,"replaceHash",i,!0),s||e.on("domready",function(){var t=i.getHash();s=r._iframe=e.Node.getDOMNode(e.Node.create('',vt.ATTRS={useARIA:{value:!0,writeOnce:!0,lazyAdd:!1,setter:function(t){var n=this.get(D),r,u,a,f;t&&(n.set(N,s),n.all("ul,li,"+$).set(N,C),n.all(d+i(o,_)).set(N,o),n.all(d+q).each(function(t){r=t,u=t.one(V),u&&(u.set(N,C),r=u.previous()),r.set(N,o),r.set("aria-haspopup",!0),a=t.next(),a&&(a.set(N,s),r=a.previous(),u=r.one(V),u&&(r=u),f=e.stamp(r),r.get(p)||r.set(p,f),a.set("aria-labelledby",f),a.set(M,!0))}))}},autoSubmenuDisplay:{value:!0,writeOnce:!0},submenuShowDelay:{value:250,writeOnce:!0},submenuHideDelay:{value:250,writeOnce:!0},mouseOutHideDelay:{value:750,writeOnce:!0}},e.extend(vt,e.Plugin.Base,{_rootMenu:null,_activeItem:null,_activeMenu:null,_hasFocus:!1,_blockMouseEvent:!1,_currentMouseX:0,_movingToSubmenu:!1,_showSubmenuTimer:null,_hideSubmenuTimer:null,_hideAllSubmenusTimer:null,_firstItem:null,initializer:function(t){var n=this,r=this.get(D),i=[],s;r&&(n._rootMenu=r,r.all("ul:first-child").addClass(T),r.all(X).addClass(F),i.push(r.on("mouseover",n._onMouseOver,n)),i.push(r.on("mouseout",n._onMouseOut,n)),i.push(r.on("mousemove",n._onMouseMove,n)),i.push(r.on(w,n._toggleSubmenuDisplay,n)),i.push(e.on("key",n._toggleSubmenuDisplay,r,"down:13",n)),i.push(r.on(S,n._toggleSubmenuDisplay,n)),i.push(r.on("keypress",n._onKeyPress,n)),i.push(r.on(E,n._onKeyDown,n)),s=r.get("ownerDocument"),i.push(s.on(w,n._onDocMouseDown,n)),i.push(s.on("focus",n._onDocFocus,n)),this._eventHandlers=i,n._initFocusManager())},destructor:function(){var t=this._eventHandlers;t&&(e.Array.each(t,function(e){e.detach()}),this._eventHandlers=null),this.get(D).unplug("focusManager")},_isRoot:function(e){return this._rootMenu.compareTo(e)},_getTopmostSubmenu:function(e){var t=this,n=ot(e),r;return n?t._isRoot(n)?r=e:r=t._getTopmostSubmenu(n):r=e,r},_clearActiveItem:function(){var e=this,t=e._activeItem;t&&t.removeClass(ht(t)),e._activeItem=null},_setActiveItem:function(e){var t=this;e&&(t._clearActiveItem(),e.addClass(ht(e)),t._activeItem=e)},_focusItem:function(e){var t=this,n,r;e&&t._hasFocus&&(n=ot(e),r=it(e),n&&!n.compareTo(t._activeMenu)&&(t._activeMenu=n,t._initFocusManager()),t._focusManager.focus(r))},_showMenu:function(t){var r=ot(t),i=t.get(a),s=i.getXY();this.get(O)&&t.set(M,!1),nt(r)?s[1]=s[1]+i.get(l):s[0]=s[0]+i.get(c),t.setXY(s),n.ie<8&&(n.ie===6&&!t.hasIFrameShim&&(t.appendChild(e.Node.create(vt.SHIM_TEMPLATE)),t.hasIFrameShim=!0),t.setStyles({height:x,width:x}),t.setStyles({height:t.get(l)+h,width:t.get(c)+h})),t.previous().addClass(U),t.removeClass(F)},_hideMenu:function(e,t){var n=this,r=e.previous(),i;r.removeClass(U),t&&(n._focusItem(r),n._setActiveItem(r)),i=e.one(d+W),i&&i.removeClass(W),e.setStyles({left:x,top:x}),e.addClass(F),n.get(O)&&e.set(M,!0)},_hideAllSubmenus:function(t){var n=this;t.all(X).each(e.bind(function(e){n._hideMenu(e)},n))},_cancelShowSubmenuTimer:function(){var e=this,t=e._showSubmenuTimer;t&&(t.cancel(),e._showSubmenuTimer=null)},_cancelHideSubmenuTimer:function(){var e=this,t=e._hideSubmenuTimer;t&&(t.cancel(),e._hideSubmenuTimer=null)},_initFocusManager:function(){var t=this,n=t._rootMenu,r=t._activeMenu||n,i=t._isRoot(r)?x:"#"+r.get("id"),s=t._focusManager,o,u,a;nt(r)?(u=i+K+","+i+Q,o={next:"down:39",previous:"down:37"}):(u=i+K,o={next:"down:40",previous:"down:38"}),s?(s.set(A,-1),s.set(k,u),s.set("keys",o)):(n.plug(e.Plugin.NodeFocusManager,{descendants:u,keys:o,circular:!0}),s=n.focusManager,a="#"+n.get("id")+X+" a,"+V,n.all(a).set("tabIndex",-1),s.on(P,this._onActiveDescendantChange,s,this),s.after(P,this._afterActiveDescendantChange,s,this),t._focusManager=s)},_onActiveDescendantChange:function(e,t){e.src===L&&t._activeMenu&&!t._movingToSubmenu&&t._hideAllSubmenus(t._activeMenu)},_afterActiveDescendantChange:function(e,t){var n;e.src===L&&(n=lt(this.get(k).item(e.newVal),!0),t._setActiveItem(n))},_onDocFocus:function(e){var t=this,n=t._activeItem,r=e.target,i;t._rootMenu.contains(r)?t._hasFocus?(i=ot(r),t._activeMenu.compareTo(i)||(t._activeMenu=i,t._initFocusManager(),t._focusManager.set(A,r),t._setActiveItem(lt(r,!0)))):(t._hasFocus=!0 -,n=lt(r,!0),n&&t._setActiveItem(n)):(t._clearActiveItem(),t._cancelShowSubmenuTimer(),t._hideAllSubmenus(t._rootMenu),t._activeMenu=t._rootMenu,t._initFocusManager(),t._focusManager.set(A,0),t._hasFocus=!1)},_onMenuMouseOver:function(e,t){var n=this,r=n._hideAllSubmenusTimer;r&&(r.cancel(),n._hideAllSubmenusTimer=null),n._cancelHideSubmenuTimer(),e&&!e.compareTo(n._activeMenu)&&(n._activeMenu=e,n._hasFocus&&n._initFocusManager()),n._movingToSubmenu&&nt(e)&&(n._movingToSubmenu=!1)},_hideAndFocusLabel:function(){var e=this,t=e._activeMenu,n;e._hideAllSubmenus(e._rootMenu),t&&(n=e._getTopmostSubmenu(t),e._focusItem(n.previous()))},_onMenuMouseOut:function(e,t){var n=this,i=n._activeMenu,s=t.relatedTarget,o=n._activeItem,u,a;i&&!i.contains(s)&&(u=ot(i),u&&!u.contains(s)?n.get(B)>0&&(n._cancelShowSubmenuTimer(),n._hideAllSubmenusTimer=r(n.get(B),n,n._hideAndFocusLabel)):o&&(a=ot(o),n._isRoot(a)||n._focusItem(a.previous())))},_onMenuLabelMouseOver:function(e,t){var n=this,i=n._activeMenu,s=n._isRoot(i),o=n.get(H)&&s||!s,u=n.get("submenuShowDelay"),a,f=function(t){n._cancelHideSubmenuTimer(),n._cancelShowSubmenuTimer(),rt(e)||(a=e.next(),a&&(n._hideAllSubmenus(i),n._showSubmenuTimer=r(t,n,n._showMenu,a)))};n._focusItem(e),n._setActiveItem(e),o&&(n._movingToSubmenu?n._hoverTimer=r(u,n,function(){f(0)}):f(u))},_onMenuLabelMouseOut:function(e,t){var n=this,i=n._isRoot(n._activeMenu),s=n.get(H)&&i||!i,o=t.relatedTarget,u=e.next(),a=n._hoverTimer;a&&a.cancel(),n._clearActiveItem(),s&&(n._movingToSubmenu&&!n._showSubmenuTimer&&u?n._hideSubmenuTimer=r(n.get("submenuHideDelay"),n,n._hideMenu,u):!n._movingToSubmenu&&u&&(!o||o&&!u.contains(o)&&!o.compareTo(u))&&(n._cancelShowSubmenuTimer(),n._hideMenu(u)))},_onMenuItemMouseOver:function(e,t){var n=this,r=n._activeMenu,i=n._isRoot(r),s=n.get(H)&&i||!i;n._focusItem(e),n._setActiveItem(e),s&&!n._movingToSubmenu&&n._hideAllSubmenus(r)},_onMenuItemMouseOut:function(e,t){this._clearActiveItem()},_onVerticalMenuKeyDown:function(e){var t=this,n=t._activeMenu,r=t._rootMenu,i=e.target,s=!1,o=e.keyCode,u,f,l,c;switch(o){case 37:f=ot(n),f&&nt(f)?(t._hideMenu(n),l=G(n.get(a)),c=lt(l),c&&(tt(c)?(u=c.next(),u?(t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u))):(t._focusItem(c),t._setActiveItem(c))):(t._focusItem(c),t._setActiveItem(c)))):t._isRoot(n)||t._hideMenu(n,!0),s=!0;break;case 39:tt(i)?(u=i.next(),u&&(t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u)))):nt(r)&&(u=t._getTopmostSubmenu(n),l=Y(u.get(a)),c=lt(l),t._hideAllSubmenus(r),c&&(tt(c)?(u=c.next(),u?(t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u))):(t._focusItem(c),t._setActiveItem(c))):(t._focusItem(c),t._setActiveItem(c)))),s=!0}s&&e.preventDefault()},_onHorizontalMenuKeyDown:function(e){var t=this,n=t._activeMenu,r=e.target,i=lt(r,!0),s=!1,o=e.keyCode,u;o===40&&(t._hideAllSubmenus(n),tt(i)&&(u=i.next(),u&&(t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u))),s=!0)),s&&e.preventDefault()},_onMouseMove:function(e){var t=this;r(10,t,function(){t._currentMouseX=e.pageX})},_onMouseOver:function(e){var t=this,n,r,i,s,o;t._blockMouseEvent?t._blockMouseEvent=!1:(n=e.target,r=ut(n,!0),i=ft(n,!0),o=at(n,!0),pt(r,n)&&(t._onMenuMouseOver(r,e),r[m]=!0,r[v]=!1,s=ot(r),s&&(s[v]=!0,s[m]=!1)),pt(i,n)&&(t._onMenuLabelMouseOver(i,e),i[m]=!0,i[v]=!1),pt(o,n)&&(t._onMenuItemMouseOver(o,e),o[m]=!0,o[v]=!1))},_onMouseOut:function(e){var t=this,n=t._activeMenu,r=!1,i,s,o,u,a,f;t._movingToSubmenu=n&&!nt(n)&&e.pageX-5>t._currentMouseX,i=e.target,s=e.relatedTarget,o=ut(i,!0),u=ft(i,!0),f=at(i,!0),dt(u,s)&&(t._onMenuLabelMouseOut(u,e),u[v]=!0,u[m]=!1),dt(f,s)&&(t._onMenuItemMouseOut(f,e),f[v]=!0,f[m]=!1),u&&(a=u.next(),a&&s&&(s.compareTo(a)||a.contains(s))&&(r=!0));if(dt(o,s)||r)t._onMenuMouseOut(o,e),o[v]=!0,o[m]=!1},_toggleSubmenuDisplay:function(e){var t=this,r=e.target,i=ft(r,!0),s=e.type,o,u,a,f,l,c;if(i){o=Z(r)?r:r.ancestor(Z);if(o){a=o.getAttribute("href",2),f=a.indexOf("#"),l=a.length;if(f===0&&l>1){c=a.substr(1,l),u=i.next();if(u&&u.get(p)===c){if(s===w||s===E)(n.opera||n.gecko||n.ie)&&s===E&&!t._preventClickHandle&&(t._preventClickHandle=t._rootMenu.on("click",function(e){e.preventDefault(),t._preventClickHandle.detach(),t._preventClickHandle=null})),s==w&&(e.preventDefault(),e.stopImmediatePropagation(),t._hasFocus=!0),t._isRoot(ot(r))?rt(i)?(t._hideMenu(u),t._focusItem(i),t._setActiveItem(i)):(t._hideAllSubmenus(t._rootMenu),t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u))):t._activeItem==i?(t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u))):i._clickHandle||(i._clickHandle=i.on("click",function(){t._hideAllSubmenus(t._rootMenu),t._hasFocus=!1,t._clearActiveItem(),i._clickHandle.detach(),i._clickHandle=null}));s===S&&e.preventDefault()}}}}},_onKeyPress:function(e){switch(e.keyCode){case 37:case 38:case 39:case 40:e.preventDefault()}},_onKeyDown:function(e){var t=this,i=t._activeItem,s=e.target,o=ot(s),u;o&&(t._activeMenu=o,nt(o)?t._onHorizontalMenuKeyDown(e):t._onVerticalMenuKeyDown(e),e.keyCode===27&&(t._isRoot(o)?i&&(tt(i)&&rt(i)?(u=i.next(),u&&t._hideMenu(u)):(t._focusManager.blur(),t._clearActiveItem(),t._hasFocus=!1)):(n.opera?r(0,t,function(){t._hideMenu(o,!0)}):t._hideMenu(o,!0),e.stopPropagation(),t._blockMouseEvent=n.gecko?!0:!1)))},_onDocMouseDown:function(e){var t=this,r=t._rootMenu,i=e.target;!r.compareTo(i)&&!r.contains(i)&&(t._hideAllSubmenus(r),n.webkit&&(t._hasFocus=!1,t._clearActiveItem()))}}),e.namespace("Plugin"),e.Plugin.NodeMenuNav=vt},"3.9.1",{requires:["node","classnamemanager","plugin","node-focusmanager"],skinnable:!0}); +,n=lt(r,!0),n&&t._setActiveItem(n)):(t._clearActiveItem(),t._cancelShowSubmenuTimer(),t._hideAllSubmenus(t._rootMenu),t._activeMenu=t._rootMenu,t._initFocusManager(),t._focusManager.set(A,0),t._hasFocus=!1)},_onMenuMouseOver:function(e,t){var n=this,r=n._hideAllSubmenusTimer;r&&(r.cancel(),n._hideAllSubmenusTimer=null),n._cancelHideSubmenuTimer(),e&&!e.compareTo(n._activeMenu)&&(n._activeMenu=e,n._hasFocus&&n._initFocusManager()),n._movingToSubmenu&&nt(e)&&(n._movingToSubmenu=!1)},_hideAndFocusLabel:function(){var e=this,t=e._activeMenu,n;e._hideAllSubmenus(e._rootMenu),t&&(n=e._getTopmostSubmenu(t),e._focusItem(n.previous()))},_onMenuMouseOut:function(e,t){var n=this,i=n._activeMenu,s=t.relatedTarget,o=n._activeItem,u,a;i&&!i.contains(s)&&(u=ot(i),u&&!u.contains(s)?n.get(B)>0&&(n._cancelShowSubmenuTimer(),n._hideAllSubmenusTimer=r(n.get(B),n,n._hideAndFocusLabel)):o&&(a=ot(o),n._isRoot(a)||n._focusItem(a.previous())))},_onMenuLabelMouseOver:function(e,t){var n=this,i=n._activeMenu,s=n._isRoot(i),o=n.get(H)&&s||!s,u=n.get("submenuShowDelay"),a,f=function(t){n._cancelHideSubmenuTimer(),n._cancelShowSubmenuTimer(),rt(e)||(a=e.next(),a&&(n._hideAllSubmenus(i),n._showSubmenuTimer=r(t,n,n._showMenu,a)))};n._focusItem(e),n._setActiveItem(e),o&&(n._movingToSubmenu?n._hoverTimer=r(u,n,function(){f(0)}):f(u))},_onMenuLabelMouseOut:function(e,t){var n=this,i=n._isRoot(n._activeMenu),s=n.get(H)&&i||!i,o=t.relatedTarget,u=e.next(),a=n._hoverTimer;a&&a.cancel(),n._clearActiveItem(),s&&(n._movingToSubmenu&&!n._showSubmenuTimer&&u?n._hideSubmenuTimer=r(n.get("submenuHideDelay"),n,n._hideMenu,u):!n._movingToSubmenu&&u&&(!o||o&&!u.contains(o)&&!o.compareTo(u))&&(n._cancelShowSubmenuTimer(),n._hideMenu(u)))},_onMenuItemMouseOver:function(e,t){var n=this,r=n._activeMenu,i=n._isRoot(r),s=n.get(H)&&i||!i;n._focusItem(e),n._setActiveItem(e),s&&!n._movingToSubmenu&&n._hideAllSubmenus(r)},_onMenuItemMouseOut:function(e,t){this._clearActiveItem()},_onVerticalMenuKeyDown:function(e){var t=this,n=t._activeMenu,r=t._rootMenu,i=e.target,s=!1,o=e.keyCode,u,f,l,c;switch(o){case 37:f=ot(n),f&&nt(f)?(t._hideMenu(n),l=G(n.get(a)),c=lt(l),c&&(tt(c)?(u=c.next(),u?(t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u))):(t._focusItem(c),t._setActiveItem(c))):(t._focusItem(c),t._setActiveItem(c)))):t._isRoot(n)||t._hideMenu(n,!0),s=!0;break;case 39:tt(i)?(u=i.next(),u&&(t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u)))):nt(r)&&(u=t._getTopmostSubmenu(n),l=Y(u.get(a)),c=lt(l),t._hideAllSubmenus(r),c&&(tt(c)?(u=c.next(),u?(t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u))):(t._focusItem(c),t._setActiveItem(c))):(t._focusItem(c),t._setActiveItem(c)))),s=!0}s&&e.preventDefault()},_onHorizontalMenuKeyDown:function(e){var t=this,n=t._activeMenu,r=e.target,i=lt(r,!0),s=!1,o=e.keyCode,u;o===40&&(t._hideAllSubmenus(n),tt(i)&&(u=i.next(),u&&(t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u))),s=!0)),s&&e.preventDefault()},_onMouseMove:function(e){var t=this;r(10,t,function(){t._currentMouseX=e.pageX})},_onMouseOver:function(e){var t=this,n,r,i,s,o;t._blockMouseEvent?t._blockMouseEvent=!1:(n=e.target,r=ut(n,!0),i=ft(n,!0),o=at(n,!0),pt(r,n)&&(t._onMenuMouseOver(r,e),r[m]=!0,r[v]=!1,s=ot(r),s&&(s[v]=!0,s[m]=!1)),pt(i,n)&&(t._onMenuLabelMouseOver(i,e),i[m]=!0,i[v]=!1),pt(o,n)&&(t._onMenuItemMouseOver(o,e),o[m]=!0,o[v]=!1))},_onMouseOut:function(e){var t=this,n=t._activeMenu,r=!1,i,s,o,u,a,f;t._movingToSubmenu=n&&!nt(n)&&e.pageX-5>t._currentMouseX,i=e.target,s=e.relatedTarget,o=ut(i,!0),u=ft(i,!0),f=at(i,!0),dt(u,s)&&(t._onMenuLabelMouseOut(u,e),u[v]=!0,u[m]=!1),dt(f,s)&&(t._onMenuItemMouseOut(f,e),f[v]=!0,f[m]=!1),u&&(a=u.next(),a&&s&&(s.compareTo(a)||a.contains(s))&&(r=!0));if(dt(o,s)||r)t._onMenuMouseOut(o,e),o[v]=!0,o[m]=!1},_toggleSubmenuDisplay:function(e){var t=this,r=e.target,i=ft(r,!0),s=e.type,o,u,a,f,l,c;if(i){o=Z(r)?r:r.ancestor(Z);if(o){a=o.getAttribute("href",2),f=a.indexOf("#"),l=a.length;if(f===0&&l>1){c=a.substr(1,l),u=i.next();if(u&&u.get(p)===c){if(s===w||s===E)(n.opera||n.gecko||n.ie)&&s===E&&!t._preventClickHandle&&(t._preventClickHandle=t._rootMenu.on("click",function(e){e.preventDefault(),t._preventClickHandle.detach(),t._preventClickHandle=null})),s==w&&(e.preventDefault(),e.stopImmediatePropagation(),t._hasFocus=!0),t._isRoot(ot(r))?rt(i)?(t._hideMenu(u),t._focusItem(i),t._setActiveItem(i)):(t._hideAllSubmenus(t._rootMenu),t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u))):t._activeItem==i?(t._showMenu(u),t._focusItem(ct(u)),t._setActiveItem(ct(u))):i._clickHandle||(i._clickHandle=i.on("click",function(){t._hideAllSubmenus(t._rootMenu),t._hasFocus=!1,t._clearActiveItem(),i._clickHandle.detach(),i._clickHandle=null}));s===S&&e.preventDefault()}}}}},_onKeyPress:function(e){switch(e.keyCode){case 37:case 38:case 39:case 40:e.preventDefault()}},_onKeyDown:function(e){var t=this,i=t._activeItem,s=e.target,o=ot(s),u;o&&(t._activeMenu=o,nt(o)?t._onHorizontalMenuKeyDown(e):t._onVerticalMenuKeyDown(e),e.keyCode===27&&(t._isRoot(o)?i&&(tt(i)&&rt(i)?(u=i.next(),u&&t._hideMenu(u)):(t._focusManager.blur(),t._clearActiveItem(),t._hasFocus=!1)):(n.opera?r(0,t,function(){t._hideMenu(o,!0)}):t._hideMenu(o,!0),e.stopPropagation(),t._blockMouseEvent=n.gecko?!0:!1)))},_onDocMouseDown:function(e){var t=this,r=t._rootMenu,i=e.target;!r.compareTo(i)&&!r.contains(i)&&(t._hideAllSubmenus(r),n.webkit&&(t._hasFocus=!1,t._clearActiveItem()))}}),e.namespace("Plugin"),e.Plugin.NodeMenuNav=vt},"3.12.0",{requires:["node","classnamemanager","plugin","node-focusmanager"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/node-menunav/node-menunav.js b/lib/yuilib/3.12.0/node-menunav/node-menunav.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/node-menunav/node-menunav.js rename to lib/yuilib/3.12.0/node-menunav/node-menunav.js index d42107ec1d4..4d91f0170fc --- a/lib/yuilib/3.9.1/build/node-menunav/node-menunav.js +++ b/lib/yuilib/3.12.0/node-menunav/node-menunav.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('node-menunav', function (Y, NAME) { /** @@ -2186,4 +2192,4 @@ Y.namespace('Plugin'); Y.Plugin.NodeMenuNav = NodeMenuNav; -}, '3.9.1', {"requires": ["node", "classnamemanager", "plugin", "node-focusmanager"], "skinnable": true}); +}, '3.12.0', {"requires": ["node", "classnamemanager", "plugin", "node-focusmanager"], "skinnable": true}); diff --git a/lib/yuilib/3.9.1/build/node-pluginhost/node-pluginhost-debug.js b/lib/yuilib/3.12.0/node-pluginhost/node-pluginhost-debug.js old mode 100644 new mode 100755 similarity index 88% rename from lib/yuilib/3.9.1/build/node-pluginhost/node-pluginhost-debug.js rename to lib/yuilib/3.12.0/node-pluginhost/node-pluginhost-debug.js index 8627c2eb565..99cf9e6805f --- a/lib/yuilib/3.9.1/build/node-pluginhost/node-pluginhost-debug.js +++ b/lib/yuilib/3.12.0/node-pluginhost/node-pluginhost-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('node-pluginhost', function (Y, NAME) { /** @@ -40,6 +46,11 @@ Y.Node.unplug = function() { Y.mix(Y.Node, Y.Plugin.Host, false, null, 1); +// run PluginHost constructor on cached Node instances +Y.Object.each(Y.Node._instances, function (node) { + Y.Plugin.Host.apply(node); +}); + // allow batching of plug/unplug via NodeList // doesn't use NodeList.importMethod because we need real Nodes (not tmpNode) /** @@ -84,4 +95,4 @@ Y.NodeList.prototype.unplug = function() { }; -}, '3.9.1', {"requires": ["node-base", "pluginhost"]}); +}, '3.12.0', {"requires": ["node-base", "pluginhost"]}); diff --git a/lib/yuilib/3.12.0/node-pluginhost/node-pluginhost-min.js b/lib/yuilib/3.12.0/node-pluginhost/node-pluginhost-min.js new file mode 100755 index 00000000000..c4e860ab55b --- /dev/null +++ b/lib/yuilib/3.12.0/node-pluginhost/node-pluginhost-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("node-pluginhost",function(e,t){e.Node.plug=function(){var t=e.Array(arguments);return t.unshift(e.Node),e.Plugin.Host.plug.apply(e.Base,t),e.Node},e.Node.unplug=function(){var t=e.Array(arguments);return t.unshift(e.Node),e.Plugin.Host.unplug.apply(e.Base,t),e.Node},e.mix(e.Node,e.Plugin.Host,!1,null,1),e.Object.each(e.Node._instances,function(t){e.Plugin.Host.apply(t)}),e.NodeList.prototype.plug=function(){var t=arguments;return e.NodeList.each(this,function(n){e.Node.prototype.plug.apply(e.one(n),t)}),this},e.NodeList.prototype.unplug=function(){var t=arguments;return e.NodeList.each(this,function(n){e.Node.prototype.unplug.apply(e.one(n),t)}),this}},"3.12.0",{requires:["node-base","pluginhost"]}); diff --git a/lib/yuilib/3.9.1/build/node-pluginhost/node-pluginhost.js b/lib/yuilib/3.12.0/node-pluginhost/node-pluginhost.js old mode 100644 new mode 100755 similarity index 88% rename from lib/yuilib/3.9.1/build/node-pluginhost/node-pluginhost.js rename to lib/yuilib/3.12.0/node-pluginhost/node-pluginhost.js index 8627c2eb565..99cf9e6805f --- a/lib/yuilib/3.9.1/build/node-pluginhost/node-pluginhost.js +++ b/lib/yuilib/3.12.0/node-pluginhost/node-pluginhost.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('node-pluginhost', function (Y, NAME) { /** @@ -40,6 +46,11 @@ Y.Node.unplug = function() { Y.mix(Y.Node, Y.Plugin.Host, false, null, 1); +// run PluginHost constructor on cached Node instances +Y.Object.each(Y.Node._instances, function (node) { + Y.Plugin.Host.apply(node); +}); + // allow batching of plug/unplug via NodeList // doesn't use NodeList.importMethod because we need real Nodes (not tmpNode) /** @@ -84,4 +95,4 @@ Y.NodeList.prototype.unplug = function() { }; -}, '3.9.1', {"requires": ["node-base", "pluginhost"]}); +}, '3.12.0', {"requires": ["node-base", "pluginhost"]}); diff --git a/lib/yuilib/3.9.1/build/node-screen/node-screen-debug.js b/lib/yuilib/3.12.0/node-screen/node-screen-debug.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/node-screen/node-screen-debug.js rename to lib/yuilib/3.12.0/node-screen/node-screen-debug.js index 8f2a7551dc3..d0cf9b8370a --- a/lib/yuilib/3.9.1/build/node-screen/node-screen-debug.js +++ b/lib/yuilib/3.12.0/node-screen/node-screen-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('node-screen', function (Y, NAME) { /** @@ -227,7 +233,7 @@ Y.Node.prototype.intersect = function(node2, altRegion) { * @param {Node|Object} node2 The node or region to compare with. * @param {Boolean} all Whether or not all of the node must be in the region. * @param {Object} altRegion An alternate region to use (rather than this node's). - * @return {Object} An object representing the intersection of the regions. + * @return {Boolean} True if in region, false if not. */ Y.Node.prototype.inRegion = function(node2, all, altRegion) { var node1 = Y.Node.getDOMNode(this); @@ -238,4 +244,4 @@ Y.Node.prototype.inRegion = function(node2, all, altRegion) { }; -}, '3.9.1', {"requires": ["dom-screen", "node-base"]}); +}, '3.12.0', {"requires": ["dom-screen", "node-base"]}); diff --git a/lib/yuilib/3.9.1/build/node-screen/node-screen-min.js b/lib/yuilib/3.12.0/node-screen/node-screen-min.js old mode 100644 new mode 100755 similarity index 86% rename from lib/yuilib/3.9.1/build/node-screen/node-screen-min.js rename to lib/yuilib/3.12.0/node-screen/node-screen-min.js index 5e2a58e4647..552bcbfc7c4 --- a/lib/yuilib/3.9.1/build/node-screen/node-screen-min.js +++ b/lib/yuilib/3.12.0/node-screen/node-screen-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("node-screen",function(e,t){e.each(["winWidth","winHeight","docWidth","docHeight","docScrollX","docScrollY"],function(t){e.Node.ATTRS[t]={getter:function(){var n=Array.prototype.slice.call(arguments);return n.unshift(e.Node.getDOMNode(this)),e.DOM[t].apply(this,n)}}}),e.Node.ATTRS.scrollLeft={getter:function(){var t=e.Node.getDOMNode(this);return"scrollLeft"in t?t.scrollLeft:e.DOM.docScrollX(t)},setter:function(t){var n=e.Node.getDOMNode(this);n&&("scrollLeft"in n?n.scrollLeft=t:(n.document||n.nodeType===9)&&e.DOM._getWin(n).scrollTo(t,e.DOM.docScrollY(n)))}},e.Node.ATTRS.scrollTop={getter:function(){var t=e.Node.getDOMNode(this);return"scrollTop"in t?t.scrollTop:e.DOM.docScrollY(t)},setter:function(t){var n=e.Node.getDOMNode(this);n&&("scrollTop"in n?n.scrollTop=t:(n.document||n.nodeType===9)&&e.DOM._getWin(n).scrollTo(e.DOM.docScrollX(n),t))}},e.Node.importMethod(e.DOM,["getXY","setXY","getX","setX","getY","setY","swapXY"]),e.Node.ATTRS.region={getter:function(){var t=this.getDOMNode(),n;return t&&!t.tagName&&t.nodeType===9&&(t=t.documentElement),e.DOM.isWindow(t)?n=e.DOM.viewportRegion(t):n=e.DOM.region(t),n}},e.Node.ATTRS.viewportRegion={getter:function(){return e.DOM.viewportRegion(e.Node.getDOMNode(this))}},e.Node.importMethod(e.DOM,"inViewportRegion"),e.Node.prototype.intersect=function(t,n){var r=e.Node.getDOMNode(this);return e.instanceOf(t,e.Node)&&(t=e.Node.getDOMNode(t)),e.DOM.intersect(r,t,n)},e.Node.prototype.inRegion=function(t,n,r){var i=e.Node.getDOMNode(this);return e.instanceOf(t,e.Node)&&(t=e.Node.getDOMNode(t)),e.DOM.inRegion(i,t,n,r)}},"3.9.1",{requires:["dom-screen","node-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("node-screen",function(e,t){e.each(["winWidth","winHeight","docWidth","docHeight","docScrollX","docScrollY"],function(t){e.Node.ATTRS[t]={getter:function(){var n=Array.prototype.slice.call(arguments);return n.unshift(e.Node.getDOMNode(this)),e.DOM[t].apply(this,n)}}}),e.Node.ATTRS.scrollLeft={getter:function(){var t=e.Node.getDOMNode(this);return"scrollLeft"in t?t.scrollLeft:e.DOM.docScrollX(t)},setter:function(t){var n=e.Node.getDOMNode(this);n&&("scrollLeft"in n?n.scrollLeft=t:(n.document||n.nodeType===9)&&e.DOM._getWin(n).scrollTo(t,e.DOM.docScrollY(n)))}},e.Node.ATTRS.scrollTop={getter:function(){var t=e.Node.getDOMNode(this);return"scrollTop"in t?t.scrollTop:e.DOM.docScrollY(t)},setter:function(t){var n=e.Node.getDOMNode(this);n&&("scrollTop"in n?n.scrollTop=t:(n.document||n.nodeType===9)&&e.DOM._getWin(n).scrollTo(e.DOM.docScrollX(n),t))}},e.Node.importMethod(e.DOM,["getXY","setXY","getX","setX","getY","setY","swapXY"]),e.Node.ATTRS.region={getter:function(){var t=this.getDOMNode(),n;return t&&!t.tagName&&t.nodeType===9&&(t=t.documentElement),e.DOM.isWindow(t)?n=e.DOM.viewportRegion(t):n=e.DOM.region(t),n}},e.Node.ATTRS.viewportRegion={getter:function(){return e.DOM.viewportRegion(e.Node.getDOMNode(this))}},e.Node.importMethod(e.DOM,"inViewportRegion"),e.Node.prototype.intersect=function(t,n){var r=e.Node.getDOMNode(this);return e.instanceOf(t,e.Node)&&(t=e.Node.getDOMNode(t)),e.DOM.intersect(r,t,n)},e.Node.prototype.inRegion=function(t,n,r){var i=e.Node.getDOMNode(this);return e.instanceOf(t,e.Node)&&(t=e.Node.getDOMNode(t)),e.DOM.inRegion(i,t,n,r)}},"3.12.0",{requires:["dom-screen","node-base"]}); diff --git a/lib/yuilib/3.9.1/build/node-screen/node-screen.js b/lib/yuilib/3.12.0/node-screen/node-screen.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/node-screen/node-screen.js rename to lib/yuilib/3.12.0/node-screen/node-screen.js index c8221cd95a5..32827a28d7d --- a/lib/yuilib/3.9.1/build/node-screen/node-screen.js +++ b/lib/yuilib/3.12.0/node-screen/node-screen.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('node-screen', function (Y, NAME) { /** @@ -225,7 +231,7 @@ Y.Node.prototype.intersect = function(node2, altRegion) { * @param {Node|Object} node2 The node or region to compare with. * @param {Boolean} all Whether or not all of the node must be in the region. * @param {Object} altRegion An alternate region to use (rather than this node's). - * @return {Object} An object representing the intersection of the regions. + * @return {Boolean} True if in region, false if not. */ Y.Node.prototype.inRegion = function(node2, all, altRegion) { var node1 = Y.Node.getDOMNode(this); @@ -236,4 +242,4 @@ Y.Node.prototype.inRegion = function(node2, all, altRegion) { }; -}, '3.9.1', {"requires": ["dom-screen", "node-base"]}); +}, '3.12.0', {"requires": ["dom-screen", "node-base"]}); diff --git a/lib/yuilib/3.9.1/build/node-scroll-info/node-scroll-info-debug.js b/lib/yuilib/3.12.0/node-scroll-info/node-scroll-info-debug.js old mode 100644 new mode 100755 similarity index 67% rename from lib/yuilib/3.9.1/build/node-scroll-info/node-scroll-info-debug.js rename to lib/yuilib/3.12.0/node-scroll-info/node-scroll-info-debug.js index b995d40d559..78e55d60b8f --- a/lib/yuilib/3.9.1/build/node-scroll-info/node-scroll-info-debug.js +++ b/lib/yuilib/3.12.0/node-scroll-info/node-scroll-info-debug.js @@ -1,6 +1,14 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('node-scroll-info', function (Y, NAME) { +/*jshint onevar:false */ + /** Provides the ScrollInfo Node plugin, which exposes convenient events and methods related to scrolling. @@ -29,6 +37,9 @@ the current scroll position. @since 3.7.0 **/ +var doc = Y.config.doc, + win = Y.config.win; + /** Fired when the user scrolls within the host node. @@ -162,14 +173,53 @@ var EVT_SCROLL = 'scroll', EVT_SCROLL_TO_TOP = 'scrollToTop'; Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { + // -- Protected Properties ------------------------------------------------- + + /** + Height of the visible region of the host node in pixels. If the host node is + the body, this will be the same as `_winHeight`. + + @property {Number} _height + @protected + **/ + + /** + Whether or not the host node is the `` element. + + @property {Boolean} _hostIsBody + @protected + **/ + + /** + Width of the visible region of the host node in pixels. If the host node is + the body, this will be the same as `_winWidth`. + + @property {Number} _width + @protected + **/ + + /** + Height of the viewport in pixels. + + @property {Number} _winHeight + @protected + **/ + + /** + Width of the viewport in pixels. + + @property {Number} _winWidth + @protected + **/ + // -- Lifecycle Methods ---------------------------------------------------- initializer: function (config) { // Cache for quicker lookups in the critical path. - this._host = config.host; - this._hostIsBody = this._host.get('nodeName').toLowerCase() === 'body'; - this._scrollDelay = this.get('scrollDelay'); - this._scrollMargin = this.get('scrollMargin'); - this._scrollNode = this._getScrollNode(); + this._host = config.host; + this._hostIsBody = this._host.get('nodeName').toLowerCase() === 'body'; + this._scrollDelay = this.get('scrollDelay'); + this._scrollMargin = this.get('scrollMargin'); + this._scrollNode = this._getScrollNode(); this.refreshDimensions(); @@ -179,8 +229,8 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { }, destructor: function () { - (new Y.EventHandle(this._events)).detach(); - delete this._events; + new Y.EventHandle(this._events).detach(); + this._events = null; }, // -- Public Methods ------------------------------------------------------- @@ -205,45 +255,11 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { margin = this._scrollMargin; } - var lastScroll = this._lastScroll, - nodes = this._host.all(selector || '*'), + var elements = Y.Selector.query(selector || '*', this._host._node); - scrollBottom = lastScroll.scrollBottom + margin, - scrollLeft = lastScroll.scrollLeft - margin, - scrollRight = lastScroll.scrollRight + margin, - scrollTop = lastScroll.scrollTop - margin, - - self = this; - - return nodes.filter(function (el) { - var xy = Y.DOM.getXY(el), - elLeft = xy[0] - self._left, - elTop = xy[1] - self._top, - elBottom, elRight; - - // Check whether the element's top left point is within the - // viewport. This is the least expensive check. - if (elLeft >= scrollLeft && elLeft < scrollRight && - elTop >= scrollTop && elTop < scrollBottom) { - - return false; - } - - // Check whether the element's bottom right point is within the - // viewport. This check is more expensive since we have to get the - // element's height and width. - elBottom = elTop + el.offsetHeight; - elRight = elLeft + el.offsetWidth; - - if (elRight < scrollRight && elRight >= scrollLeft && - elBottom < scrollBottom && elBottom >= scrollTop) { - - return false; - } - - // If we get here, the element isn't within the viewport. - return true; - }); + return new Y.NodeList(Y.Array.filter(elements, function (el) { + return !this._isElementOnscreen(el, margin); + }, this)); }, /** @@ -266,45 +282,11 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { margin = this._scrollMargin; } - var lastScroll = this._lastScroll, - nodes = this._host.all(selector || '*'), + var elements = Y.Selector.query(selector || '*', this._host._node); - scrollBottom = lastScroll.scrollBottom + margin, - scrollLeft = lastScroll.scrollLeft - margin, - scrollRight = lastScroll.scrollRight + margin, - scrollTop = lastScroll.scrollTop - margin, - - self = this; - - return nodes.filter(function (el) { - var xy = Y.DOM.getXY(el), - elLeft = xy[0] - self._left, - elTop = xy[1] - self._top, - elBottom, elRight; - - // Check whether the element's top left point is within the - // viewport. This is the least expensive check. - if (elLeft >= scrollLeft && elLeft < scrollRight && - elTop >= scrollTop && elTop < scrollBottom) { - - return true; - } - - // Check whether the element's bottom right point is within the - // viewport. This check is more expensive since we have to get the - // element's height and width. - elBottom = elTop + el.offsetHeight; - elRight = elLeft + el.offsetWidth; - - if (elRight < scrollRight && elRight >= scrollLeft && - elBottom < scrollBottom && elBottom >= scrollTop) { - - return true; - } - - // If we get here, the element isn't within the viewport. - return false; - }); + return new Y.NodeList(Y.Array.filter(elements, function (el) { + return this._isElementOnscreen(el, margin); + }, this)); }, /** @@ -351,6 +333,24 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { }; }, + /** + Returns `true` if _node_ is at least partially onscreen within the host + node, `false` otherwise. + + @method isNodeOnscreen + @param {HTMLElement|Node|String} node Node or selector to check. + @param {Number} [margin] Additional margin in pixels beyond the actual + onscreen region that should be considered "onscreen" for the purposes of + this query. Defaults to the value of the `scrollMargin` attribute. + @return {Boolean} `true` if _node_ is at least partially onscreen within the + host node, `false` otherwise. + @since 3.11.0 + **/ + isNodeOnscreen: function (node, margin) { + node = Y.one(node); + return !!(node && this._isElementOnscreen(node._node, margin)); + }, + /** Refreshes cached position, height, and width dimensions for the host node. If the host node is the body, then the viewport height and width will be @@ -365,30 +365,28 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { @method refreshDimensions **/ refreshDimensions: function () { - // WebKit only returns reliable scroll info on the body, and only - // returns reliable height/width info on the documentElement, so we - // have to special-case it (see the other special case in - // _getScrollNode()). - // + var docEl = doc.documentElement; + // On iOS devices, documentElement.clientHeight/Width aren't reliable, - // but window.innerHeight/Width are. And no, dom-screen's viewport size - // methods don't account for this, which is why we do it here. - - var hostIsBody = this._hostIsBody, - iosHack = hostIsBody && Y.UA.ios, - win = Y.config.win, - el; - - if (hostIsBody && Y.UA.webkit) { - el = Y.config.doc.documentElement; + // but window.innerHeight/Width are. The dom-screen module's viewport + // size methods don't account for this, which is why we do it here. + if (Y.UA.ios) { + this._winHeight = win.innerHeight; + this._winWidth = win.innerWidth; } else { - el = this._scrollNode; + this._winHeight = docEl.clientHeight; + this._winWidth = docEl.clientWidth; } - this._height = iosHack ? win.innerHeight : el.clientHeight; - this._left = el.offsetLeft; - this._top = el.offsetTop; - this._width = iosHack ? win.innerWidth : el.clientWidth; + if (this._hostIsBody) { + this._height = this._winHeight; + this._width = this._winWidth; + } else { + this._height = this._scrollNode.clientHeight; + this._width = this._scrollNode.clientWidth; + } + + this._refreshHostBoundingRect(); }, // -- Protected Methods ---------------------------------------------------- @@ -408,13 +406,22 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { scrollMarginChange: this._afterScrollMarginChange }), - winNode.on('windowresize', this._afterResize, this), - - // If we're attached to the body, listen for the scroll event on the - // window, since doesn't have a scroll event. - (this._hostIsBody ? winNode : this._host).after( - 'scroll', this._afterScroll, this) + winNode.on('windowresize', this._afterResize, this) ]; + + // If the host node is the body, listen for the scroll event on the + // window, since doesn't have a scroll event. + if (this._hostIsBody) { + this._events.push(winNode.after('scroll', this._afterHostScroll, this)); + } else { + // The host node is not the body, but we still need to listen for + // window scroll events so we can determine whether nodes are + // onscreen. + this._events.push( + winNode.after('scroll', this._afterWindowScroll, this), + this._host.after('scroll', this._afterHostScroll, this) + ); + } }, /** @@ -430,10 +437,73 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { _getScrollNode: function () { // WebKit returns scroll coordinates on the body element, but other // browsers don't, so we have to use the documentElement. - return this._hostIsBody && !Y.UA.webkit ? Y.config.doc.documentElement : + return this._hostIsBody && !Y.UA.webkit ? doc.documentElement : Y.Node.getDOMNode(this._host); }, + /** + Underlying element-based implementation for `isNodeOnscreen()`. + + @method _isElementOnscreen + @param {HTMLElement} el HTML element. + @param {Number} [margin] Additional margin in pixels beyond the actual + onscreen region that should be considered "onscreen" for the purposes of + this query. Defaults to the value of the `scrollMargin` attribute. + @return {Boolean} `true` if _el_ is at least partially onscreen within the + host node, `false` otherwise. + @since 3.11.0 + **/ + _isElementOnscreen: function (el, margin) { + var hostRect = this._hostRect, + rect = el.getBoundingClientRect(); + + if (typeof margin === 'undefined') { + margin = this._scrollMargin; + } + + // Determine whether any part of _el_ is within the visible region of + // the host element or the specified margin around the visible region of + // the host element. + return !(rect.top > hostRect.bottom + margin + || rect.bottom < hostRect.top - margin + || rect.right < hostRect.left - margin + || rect.left > hostRect.right + margin); + }, + + /** + Caches the bounding rect of the host node. + + If the host node is the body, the bounding rect will be faked to represent + the dimensions of the viewport, since the actual body dimensions may extend + beyond the viewport and we only care about the visible region. + + @method _refreshHostBoundingRect + @protected + **/ + _refreshHostBoundingRect: function () { + var winHeight = this._winHeight, + winWidth = this._winWidth, + + hostRect; + + if (this._hostIsBody) { + hostRect = { + bottom: winHeight, + height: winHeight, + left : 0, + right : winWidth, + top : 0, + width : winWidth + }; + + this._isHostOnscreen = true; + } else { + hostRect = this._scrollNode.getBoundingClientRect(); + } + + this._hostRect = hostRect; + }, + /** Mixes detailed scroll information into the given DOM `scroll` event facade and fires appropriate local events. @@ -487,24 +557,13 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { // -- Protected Event Handlers --------------------------------------------- /** - Handles browser resize events. + Handles DOM `scroll` events on the host node. - @method _afterResize + @method _afterHostScroll @param {EventFacade} e @protected **/ - _afterResize: function (e) { - this.refreshDimensions(); - }, - - /** - Handles DOM `scroll` events. - - @method _afterScroll - @param {EventFacade} e - @protected - **/ - _afterScroll: function (e) { + _afterHostScroll: function (e) { var self = this; clearTimeout(this._scrollTimeout); @@ -514,6 +573,16 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { }, this._scrollDelay); }, + /** + Handles browser resize events. + + @method _afterResize + @protected + **/ + _afterResize: function () { + this.refreshDimensions(); + }, + /** Caches the `scrollDelay` value after that attribute changes to allow quicker lookups in critical path code. @@ -536,6 +605,17 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { **/ _afterScrollMarginChange: function (e) { this._scrollMargin = e.newVal; + }, + + /** + Handles DOM `scroll` events on the window. + + @method _afterWindowScroll + @param {EventFacade} e + @protected + **/ + _afterWindowScroll: function () { + this._refreshHostBoundingRect(); } }, { NS: 'scrollInfo', @@ -578,4 +658,4 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { }); -}, '3.9.1', {"requires": ["base-build", "dom-screen", "event-resize", "node-pluginhost", "plugin"]}); +}, '3.12.0', {"requires": ["array-extras", "base-build", "event-resize", "node-pluginhost", "plugin", "selector"]}); diff --git a/lib/yuilib/3.12.0/node-scroll-info/node-scroll-info-min.js b/lib/yuilib/3.12.0/node-scroll-info/node-scroll-info-min.js new file mode 100755 index 00000000000..bcc0a9b18d3 --- /dev/null +++ b/lib/yuilib/3.12.0/node-scroll-info/node-scroll-info-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("node-scroll-info",function(e,t){var n=e.config.doc,r=e.config.win,i="scroll",s="scrollDown",o="scrollLeft",u="scrollRight",a="scrollUp",f="scrollToBottom",l="scrollToLeft",c="scrollToRight",h="scrollToTop";e.Plugin.ScrollInfo=e.Base.create("scrollInfoPlugin",e.Plugin.Base,[],{initializer:function(e){this._host=e.host,this._hostIsBody=this._host.get("nodeName").toLowerCase()==="body",this._scrollDelay=this.get("scrollDelay"),this._scrollMargin=this.get("scrollMargin"),this._scrollNode=this._getScrollNode(),this.refreshDimensions(),this._lastScroll=this.getScrollInfo(),this._bind()},destructor:function(){(new e.EventHandle(this._events)).detach(),this._events=null},getOffscreenNodes:function(t,n){typeof n=="undefined"&&(n=this._scrollMargin);var r=e.Selector.query(t||"*",this._host._node);return new e.NodeList(e.Array.filter(r,function(e){return!this._isElementOnscreen(e,n)},this))},getOnscreenNodes:function(t,n){typeof n=="undefined"&&(n=this._scrollMargin);var r=e.Selector.query(t||"*",this._host._node);return new e.NodeList(e.Array.filter(r,function(e){return this._isElementOnscreen(e,n)},this))},getScrollInfo:function(){var e=this._scrollNode,t=this._lastScroll,n=this._scrollMargin,r=e.scrollLeft,i=e.scrollHeight,s=e.scrollTop,o=e.scrollWidth,u=s+this._height,a=r+this._width;return{atBottom:u>i-n,atLeft:ro-n,atTop:st.scrollTop,isScrollLeft:t&&rt.scrollLeft,isScrollUp:t&&sn.bottom+t||r.bottomn.right+t)},_refreshHostBoundingRect:function(){var e=this._winHeight,t=this._winWidth,n;this._hostIsBody?(n={bottom:e,height:e,left:0,right:t,top:0,width:t},this._isHostOnscreen=!0):n=this._scrollNode.getBoundingClientRect(),this._hostRect=n},_triggerScroll:function(t){var n=this.getScrollInfo(),r=e.merge(t,n),p=this._lastScroll;this._lastScroll=n,this.fire(i,r),n.isScrollLeft?this.fire(o,r):n.isScrollRight&&this.fire(u,r),n.isScrollUp?this.fire(a,r):n.isScrollDown&&this.fire(s,r),n.atBottom&&(!p.atBottom||n.scrollHeight>p.scrollHeight)&&this.fire(f,r),n.atLeft&&!p.atLeft&&this.fire(l,r),n.atRight&&(!p.atRight||n.scrollWidth>p.scrollWidth)&&this.fire(c,r),n.atTop&&!p.atTop&&this.fire(h,r)},_afterHostScroll:function(e){var t=this;clearTimeout(this._scrollTimeout),this._scrollTimeout=setTimeout(function(){t._triggerScroll(e)},this._scrollDelay)},_afterResize:function(){this.refreshDimensions()},_afterScrollDelayChange:function(e){this._scrollDelay=e.newVal},_afterScrollMarginChange:function(e){this._scrollMargin=e.newVal},_afterWindowScroll:function(){this._refreshHostBoundingRect()}},{NS:"scrollInfo",ATTRS:{scrollDelay:{value:50},scrollMargin:{value:50}}})},"3.12.0",{requires:["array-extras","base-build","event-resize","node-pluginhost","plugin","selector"]}); diff --git a/lib/yuilib/3.9.1/build/node-scroll-info/node-scroll-info.js b/lib/yuilib/3.12.0/node-scroll-info/node-scroll-info.js old mode 100644 new mode 100755 similarity index 67% rename from lib/yuilib/3.9.1/build/node-scroll-info/node-scroll-info.js rename to lib/yuilib/3.12.0/node-scroll-info/node-scroll-info.js index b995d40d559..78e55d60b8f --- a/lib/yuilib/3.9.1/build/node-scroll-info/node-scroll-info.js +++ b/lib/yuilib/3.12.0/node-scroll-info/node-scroll-info.js @@ -1,6 +1,14 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('node-scroll-info', function (Y, NAME) { +/*jshint onevar:false */ + /** Provides the ScrollInfo Node plugin, which exposes convenient events and methods related to scrolling. @@ -29,6 +37,9 @@ the current scroll position. @since 3.7.0 **/ +var doc = Y.config.doc, + win = Y.config.win; + /** Fired when the user scrolls within the host node. @@ -162,14 +173,53 @@ var EVT_SCROLL = 'scroll', EVT_SCROLL_TO_TOP = 'scrollToTop'; Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { + // -- Protected Properties ------------------------------------------------- + + /** + Height of the visible region of the host node in pixels. If the host node is + the body, this will be the same as `_winHeight`. + + @property {Number} _height + @protected + **/ + + /** + Whether or not the host node is the `` element. + + @property {Boolean} _hostIsBody + @protected + **/ + + /** + Width of the visible region of the host node in pixels. If the host node is + the body, this will be the same as `_winWidth`. + + @property {Number} _width + @protected + **/ + + /** + Height of the viewport in pixels. + + @property {Number} _winHeight + @protected + **/ + + /** + Width of the viewport in pixels. + + @property {Number} _winWidth + @protected + **/ + // -- Lifecycle Methods ---------------------------------------------------- initializer: function (config) { // Cache for quicker lookups in the critical path. - this._host = config.host; - this._hostIsBody = this._host.get('nodeName').toLowerCase() === 'body'; - this._scrollDelay = this.get('scrollDelay'); - this._scrollMargin = this.get('scrollMargin'); - this._scrollNode = this._getScrollNode(); + this._host = config.host; + this._hostIsBody = this._host.get('nodeName').toLowerCase() === 'body'; + this._scrollDelay = this.get('scrollDelay'); + this._scrollMargin = this.get('scrollMargin'); + this._scrollNode = this._getScrollNode(); this.refreshDimensions(); @@ -179,8 +229,8 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { }, destructor: function () { - (new Y.EventHandle(this._events)).detach(); - delete this._events; + new Y.EventHandle(this._events).detach(); + this._events = null; }, // -- Public Methods ------------------------------------------------------- @@ -205,45 +255,11 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { margin = this._scrollMargin; } - var lastScroll = this._lastScroll, - nodes = this._host.all(selector || '*'), + var elements = Y.Selector.query(selector || '*', this._host._node); - scrollBottom = lastScroll.scrollBottom + margin, - scrollLeft = lastScroll.scrollLeft - margin, - scrollRight = lastScroll.scrollRight + margin, - scrollTop = lastScroll.scrollTop - margin, - - self = this; - - return nodes.filter(function (el) { - var xy = Y.DOM.getXY(el), - elLeft = xy[0] - self._left, - elTop = xy[1] - self._top, - elBottom, elRight; - - // Check whether the element's top left point is within the - // viewport. This is the least expensive check. - if (elLeft >= scrollLeft && elLeft < scrollRight && - elTop >= scrollTop && elTop < scrollBottom) { - - return false; - } - - // Check whether the element's bottom right point is within the - // viewport. This check is more expensive since we have to get the - // element's height and width. - elBottom = elTop + el.offsetHeight; - elRight = elLeft + el.offsetWidth; - - if (elRight < scrollRight && elRight >= scrollLeft && - elBottom < scrollBottom && elBottom >= scrollTop) { - - return false; - } - - // If we get here, the element isn't within the viewport. - return true; - }); + return new Y.NodeList(Y.Array.filter(elements, function (el) { + return !this._isElementOnscreen(el, margin); + }, this)); }, /** @@ -266,45 +282,11 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { margin = this._scrollMargin; } - var lastScroll = this._lastScroll, - nodes = this._host.all(selector || '*'), + var elements = Y.Selector.query(selector || '*', this._host._node); - scrollBottom = lastScroll.scrollBottom + margin, - scrollLeft = lastScroll.scrollLeft - margin, - scrollRight = lastScroll.scrollRight + margin, - scrollTop = lastScroll.scrollTop - margin, - - self = this; - - return nodes.filter(function (el) { - var xy = Y.DOM.getXY(el), - elLeft = xy[0] - self._left, - elTop = xy[1] - self._top, - elBottom, elRight; - - // Check whether the element's top left point is within the - // viewport. This is the least expensive check. - if (elLeft >= scrollLeft && elLeft < scrollRight && - elTop >= scrollTop && elTop < scrollBottom) { - - return true; - } - - // Check whether the element's bottom right point is within the - // viewport. This check is more expensive since we have to get the - // element's height and width. - elBottom = elTop + el.offsetHeight; - elRight = elLeft + el.offsetWidth; - - if (elRight < scrollRight && elRight >= scrollLeft && - elBottom < scrollBottom && elBottom >= scrollTop) { - - return true; - } - - // If we get here, the element isn't within the viewport. - return false; - }); + return new Y.NodeList(Y.Array.filter(elements, function (el) { + return this._isElementOnscreen(el, margin); + }, this)); }, /** @@ -351,6 +333,24 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { }; }, + /** + Returns `true` if _node_ is at least partially onscreen within the host + node, `false` otherwise. + + @method isNodeOnscreen + @param {HTMLElement|Node|String} node Node or selector to check. + @param {Number} [margin] Additional margin in pixels beyond the actual + onscreen region that should be considered "onscreen" for the purposes of + this query. Defaults to the value of the `scrollMargin` attribute. + @return {Boolean} `true` if _node_ is at least partially onscreen within the + host node, `false` otherwise. + @since 3.11.0 + **/ + isNodeOnscreen: function (node, margin) { + node = Y.one(node); + return !!(node && this._isElementOnscreen(node._node, margin)); + }, + /** Refreshes cached position, height, and width dimensions for the host node. If the host node is the body, then the viewport height and width will be @@ -365,30 +365,28 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { @method refreshDimensions **/ refreshDimensions: function () { - // WebKit only returns reliable scroll info on the body, and only - // returns reliable height/width info on the documentElement, so we - // have to special-case it (see the other special case in - // _getScrollNode()). - // + var docEl = doc.documentElement; + // On iOS devices, documentElement.clientHeight/Width aren't reliable, - // but window.innerHeight/Width are. And no, dom-screen's viewport size - // methods don't account for this, which is why we do it here. - - var hostIsBody = this._hostIsBody, - iosHack = hostIsBody && Y.UA.ios, - win = Y.config.win, - el; - - if (hostIsBody && Y.UA.webkit) { - el = Y.config.doc.documentElement; + // but window.innerHeight/Width are. The dom-screen module's viewport + // size methods don't account for this, which is why we do it here. + if (Y.UA.ios) { + this._winHeight = win.innerHeight; + this._winWidth = win.innerWidth; } else { - el = this._scrollNode; + this._winHeight = docEl.clientHeight; + this._winWidth = docEl.clientWidth; } - this._height = iosHack ? win.innerHeight : el.clientHeight; - this._left = el.offsetLeft; - this._top = el.offsetTop; - this._width = iosHack ? win.innerWidth : el.clientWidth; + if (this._hostIsBody) { + this._height = this._winHeight; + this._width = this._winWidth; + } else { + this._height = this._scrollNode.clientHeight; + this._width = this._scrollNode.clientWidth; + } + + this._refreshHostBoundingRect(); }, // -- Protected Methods ---------------------------------------------------- @@ -408,13 +406,22 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { scrollMarginChange: this._afterScrollMarginChange }), - winNode.on('windowresize', this._afterResize, this), - - // If we're attached to the body, listen for the scroll event on the - // window, since doesn't have a scroll event. - (this._hostIsBody ? winNode : this._host).after( - 'scroll', this._afterScroll, this) + winNode.on('windowresize', this._afterResize, this) ]; + + // If the host node is the body, listen for the scroll event on the + // window, since doesn't have a scroll event. + if (this._hostIsBody) { + this._events.push(winNode.after('scroll', this._afterHostScroll, this)); + } else { + // The host node is not the body, but we still need to listen for + // window scroll events so we can determine whether nodes are + // onscreen. + this._events.push( + winNode.after('scroll', this._afterWindowScroll, this), + this._host.after('scroll', this._afterHostScroll, this) + ); + } }, /** @@ -430,10 +437,73 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { _getScrollNode: function () { // WebKit returns scroll coordinates on the body element, but other // browsers don't, so we have to use the documentElement. - return this._hostIsBody && !Y.UA.webkit ? Y.config.doc.documentElement : + return this._hostIsBody && !Y.UA.webkit ? doc.documentElement : Y.Node.getDOMNode(this._host); }, + /** + Underlying element-based implementation for `isNodeOnscreen()`. + + @method _isElementOnscreen + @param {HTMLElement} el HTML element. + @param {Number} [margin] Additional margin in pixels beyond the actual + onscreen region that should be considered "onscreen" for the purposes of + this query. Defaults to the value of the `scrollMargin` attribute. + @return {Boolean} `true` if _el_ is at least partially onscreen within the + host node, `false` otherwise. + @since 3.11.0 + **/ + _isElementOnscreen: function (el, margin) { + var hostRect = this._hostRect, + rect = el.getBoundingClientRect(); + + if (typeof margin === 'undefined') { + margin = this._scrollMargin; + } + + // Determine whether any part of _el_ is within the visible region of + // the host element or the specified margin around the visible region of + // the host element. + return !(rect.top > hostRect.bottom + margin + || rect.bottom < hostRect.top - margin + || rect.right < hostRect.left - margin + || rect.left > hostRect.right + margin); + }, + + /** + Caches the bounding rect of the host node. + + If the host node is the body, the bounding rect will be faked to represent + the dimensions of the viewport, since the actual body dimensions may extend + beyond the viewport and we only care about the visible region. + + @method _refreshHostBoundingRect + @protected + **/ + _refreshHostBoundingRect: function () { + var winHeight = this._winHeight, + winWidth = this._winWidth, + + hostRect; + + if (this._hostIsBody) { + hostRect = { + bottom: winHeight, + height: winHeight, + left : 0, + right : winWidth, + top : 0, + width : winWidth + }; + + this._isHostOnscreen = true; + } else { + hostRect = this._scrollNode.getBoundingClientRect(); + } + + this._hostRect = hostRect; + }, + /** Mixes detailed scroll information into the given DOM `scroll` event facade and fires appropriate local events. @@ -487,24 +557,13 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { // -- Protected Event Handlers --------------------------------------------- /** - Handles browser resize events. + Handles DOM `scroll` events on the host node. - @method _afterResize + @method _afterHostScroll @param {EventFacade} e @protected **/ - _afterResize: function (e) { - this.refreshDimensions(); - }, - - /** - Handles DOM `scroll` events. - - @method _afterScroll - @param {EventFacade} e - @protected - **/ - _afterScroll: function (e) { + _afterHostScroll: function (e) { var self = this; clearTimeout(this._scrollTimeout); @@ -514,6 +573,16 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { }, this._scrollDelay); }, + /** + Handles browser resize events. + + @method _afterResize + @protected + **/ + _afterResize: function () { + this.refreshDimensions(); + }, + /** Caches the `scrollDelay` value after that attribute changes to allow quicker lookups in critical path code. @@ -536,6 +605,17 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { **/ _afterScrollMarginChange: function (e) { this._scrollMargin = e.newVal; + }, + + /** + Handles DOM `scroll` events on the window. + + @method _afterWindowScroll + @param {EventFacade} e + @protected + **/ + _afterWindowScroll: function () { + this._refreshHostBoundingRect(); } }, { NS: 'scrollInfo', @@ -578,4 +658,4 @@ Y.Plugin.ScrollInfo = Y.Base.create('scrollInfoPlugin', Y.Plugin.Base, [], { }); -}, '3.9.1', {"requires": ["base-build", "dom-screen", "event-resize", "node-pluginhost", "plugin"]}); +}, '3.12.0', {"requires": ["array-extras", "base-build", "event-resize", "node-pluginhost", "plugin", "selector"]}); diff --git a/lib/yuilib/3.9.1/build/node-style/node-style-debug.js b/lib/yuilib/3.12.0/node-style/node-style-debug.js old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/node-style/node-style-debug.js rename to lib/yuilib/3.12.0/node-style/node-style-debug.js index beb15a29542..024cd86bcbb --- a/lib/yuilib/3.9.1/build/node-style/node-style-debug.js +++ b/lib/yuilib/3.12.0/node-style/node-style-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('node-style', function (Y, NAME) { (function(Y) { @@ -104,4 +110,4 @@ Y.NodeList.importMethod(Y.Node.prototype, ['getStyle', 'getComputedStyle', 'setS })(Y); -}, '3.9.1', {"requires": ["dom-style", "node-base"]}); +}, '3.12.0', {"requires": ["dom-style", "node-base"]}); diff --git a/lib/yuilib/3.9.1/build/node-style/node-style-min.js b/lib/yuilib/3.12.0/node-style/node-style-min.js old mode 100644 new mode 100755 similarity index 60% rename from lib/yuilib/3.9.1/build/node-style/node-style-min.js rename to lib/yuilib/3.12.0/node-style/node-style-min.js index 76a5501a1a4..cfbea608e1d --- a/lib/yuilib/3.9.1/build/node-style/node-style-min.js +++ b/lib/yuilib/3.12.0/node-style/node-style-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("node-style",function(e,t){(function(e){e.mix(e.Node.prototype,{setStyle:function(t,n){return e.DOM.setStyle(this._node,t,n),this},setStyles:function(t){return e.DOM.setStyles(this._node,t),this},getStyle:function(t){return e.DOM.getStyle(this._node,t)},getComputedStyle:function(t){return e.DOM.getComputedStyle(this._node,t)}}),e.NodeList.importMethod(e.Node.prototype,["getStyle","getComputedStyle","setStyle","setStyles"])})(e)},"3.9.1",{requires:["dom-style","node-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("node-style",function(e,t){(function(e){e.mix(e.Node.prototype,{setStyle:function(t,n){return e.DOM.setStyle(this._node,t,n),this},setStyles:function(t){return e.DOM.setStyles(this._node,t),this},getStyle:function(t){return e.DOM.getStyle(this._node,t)},getComputedStyle:function(t){return e.DOM.getComputedStyle(this._node,t)}}),e.NodeList.importMethod(e.Node.prototype,["getStyle","getComputedStyle","setStyle","setStyles"])})(e)},"3.12.0",{requires:["dom-style","node-base"]}); diff --git a/lib/yuilib/3.9.1/build/node-style/node-style.js b/lib/yuilib/3.12.0/node-style/node-style.js old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/node-style/node-style.js rename to lib/yuilib/3.12.0/node-style/node-style.js index beb15a29542..024cd86bcbb --- a/lib/yuilib/3.9.1/build/node-style/node-style.js +++ b/lib/yuilib/3.12.0/node-style/node-style.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('node-style', function (Y, NAME) { (function(Y) { @@ -104,4 +110,4 @@ Y.NodeList.importMethod(Y.Node.prototype, ['getStyle', 'getComputedStyle', 'setS })(Y); -}, '3.9.1', {"requires": ["dom-style", "node-base"]}); +}, '3.12.0', {"requires": ["dom-style", "node-base"]}); diff --git a/lib/yuilib/3.9.1/build/oop/oop-debug.js b/lib/yuilib/3.12.0/oop/oop-debug.js old mode 100644 new mode 100755 similarity index 76% rename from lib/yuilib/3.9.1/build/oop/oop-debug.js rename to lib/yuilib/3.12.0/oop/oop-debug.js index a4c603c4007..5a9beb94de9 --- a/lib/yuilib/3.9.1/build/oop/oop-debug.js +++ b/lib/yuilib/3.12.0/oop/oop-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('oop', function (Y, NAME) { /** @@ -234,56 +240,66 @@ Y.some = function(o, f, c, proto) { }; /** - * Deep object/array copy. Function clones are actually - * wrappers around the original function. - * Array-like objects are treated as arrays. - * Primitives are returned untouched. Optionally, a - * function can be provided to handle other data types, - * filter keys, validate values, etc. - * - * NOTE: Cloning a non-trivial object is a reasonably heavy operation, due to - * the need to recurrsively iterate down non-primitive properties. Clone - * should be used only when a deep clone down to leaf level properties - * is explicitly required. - * - * In many cases (for example, when trying to isolate objects used as - * hashes for configuration properties), a shallow copy, using Y.merge is - * normally sufficient. If more than one level of isolation is required, - * Y.merge can be used selectively at each level which needs to be - * isolated from the original without going all the way to leaf properties. - * - * @method clone - * @param {object} o what to clone. - * @param {boolean} safe if true, objects will not have prototype - * items from the source. If false, they will. In this case, the - * original is initially protected, but the clone is not completely - * immune from changes to the source object prototype. Also, cloned - * prototype items that are deleted from the clone will result - * in the value of the source prototype being exposed. If operating - * on a non-safe clone, items should be nulled out rather than deleted. - * @param {function} f optional function to apply to each item in a - * collection; it will be executed prior to applying the value to - * the new object. Return false to prevent the copy. - * @param {object} c optional execution context for f. - * @param {object} owner Owner object passed when clone is iterating - * an object. Used to set up context for cloned functions. - * @param {object} cloned hash of previously cloned objects to avoid - * multiple clones. - * @return {Array|Object} the cloned object. - */ +Deep object/array copy. Function clones are actually wrappers around the +original function. Array-like objects are treated as arrays. Primitives are +returned untouched. Optionally, a function can be provided to handle other data +types, filter keys, validate values, etc. + +**Note:** Cloning a non-trivial object is a reasonably heavy operation, due to +the need to recursively iterate down non-primitive properties. Clone should be +used only when a deep clone down to leaf level properties is explicitly +required. This method will also + +In many cases (for example, when trying to isolate objects used as hashes for +configuration properties), a shallow copy, using `Y.merge()` is normally +sufficient. If more than one level of isolation is required, `Y.merge()` can be +used selectively at each level which needs to be isolated from the original +without going all the way to leaf properties. + +@method clone +@param {object} o what to clone. +@param {boolean} safe if true, objects will not have prototype items from the + source. If false, they will. In this case, the original is initially + protected, but the clone is not completely immune from changes to the source + object prototype. Also, cloned prototype items that are deleted from the + clone will result in the value of the source prototype being exposed. If + operating on a non-safe clone, items should be nulled out rather than + deleted. +@param {function} f optional function to apply to each item in a collection; it + will be executed prior to applying the value to the new object. + Return false to prevent the copy. +@param {object} c optional execution context for f. +@param {object} owner Owner object passed when clone is iterating an object. + Used to set up context for cloned functions. +@param {object} cloned hash of previously cloned objects to avoid multiple + clones. +@return {Array|Object} the cloned object. +**/ Y.clone = function(o, safe, f, c, owner, cloned) { + var o2, marked, stamp; + + // Does not attempt to clone: + // + // * Non-typeof-object values, "primitive" values don't need cloning. + // + // * YUI instances, cloning complex object like YUI instances is not + // advised, this is like cloning the world. + // + // * DOM nodes (#2528250), common host objects like DOM nodes cannot be + // "subclassed" in Firefox and old versions of IE. Trying to use + // `Object.create()` or `Y.extend()` on a DOM node will throw an error in + // these browsers. + // + // Instad, the passed-in `o` will be return as-is when it matches one of the + // above criteria. + if (!L.isObject(o) || + Y.instanceOf(o, YUI) || + (o.addEventListener || o.attachEvent)) { - if (!L.isObject(o)) { return o; } - // @todo cloning YUI instances doesn't currently work - if (Y.instanceOf(o, YUI)) { - return o; - } - - var o2, marked = cloned || {}, stamp, - yeach = Y.each; + marked = cloned || {}; switch (L.type(o)) { case 'date': @@ -314,23 +330,20 @@ Y.clone = function(o, safe, f, c, owner, cloned) { marked[stamp] = o; } - // #2528250 don't try to clone element properties - if (!o.addEventListener && !o.attachEvent) { - yeach(o, function(v, k) { -if ((k || k === 0) && (!f || (f.call(c || this, v, k, this, o) !== false))) { - if (k !== CLONE_MARKER) { - if (k == 'prototype') { - // skip the prototype - // } else if (o[k] === o) { - // this[k] = this; - } else { - this[k] = - Y.clone(v, safe, f, c, owner || o, marked); - } + Y.each(o, function(v, k) { + if ((k || k === 0) && (!f || (f.call(c || this, v, k, this, o) !== false))) { + if (k !== CLONE_MARKER) { + if (k == 'prototype') { + // skip the prototype + // } else if (o[k] === o) { + // this[k] = this; + } else { + this[k] = + Y.clone(v, safe, f, c, owner || o, marked); } } - }, o2); - } + } + }, o2); if (!cloned) { Y.Object.each(marked, function(v, k) { @@ -348,7 +361,6 @@ if ((k || k === 0) && (!f || (f.call(c || this, v, k, this, o) !== false))) { return o2; }; - /** * Returns a function that will execute the supplied function in the * supplied object's context, optionally adding any additional @@ -399,4 +411,4 @@ Y.rbind = function(f, c) { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/oop/oop-min.js b/lib/yuilib/3.12.0/oop/oop-min.js old mode 100644 new mode 100755 similarity index 52% rename from lib/yuilib/3.9.1/build/oop/oop-min.js rename to lib/yuilib/3.12.0/oop/oop-min.js index 6738b9be8a6..6e327432e0f --- a/lib/yuilib/3.9.1/build/oop/oop-min.js +++ b/lib/yuilib/3.12.0/oop/oop-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("oop",function(e,t){function a(t,n,i,s,o){if(t&&t[o]&&t!==e)return t[o].call(t,n,i);switch(r.test(t)){case 1:return r[o](t,n,i);case 2:return r[o](e.Array(t,0,!0),n,i);default:return e.Object[o](t,n,i,s)}}var n=e.Lang,r=e.Array,i=Object.prototype,s="_~yuim~_",o=i.hasOwnProperty,u=i.toString;e.augment=function(t,n,r,i,s){var a=t.prototype,f=a&&n,l=n.prototype,c=a||t,h,p,d,v,m;return s=s?e.Array(s):[],f&&(p={},d={},v={},h=function(e,t){if(r||!(t in a))u.call(e)==="[object Function]"?(v[t]=e,p[t]=d[t]=function(){return m(this,e,arguments)}):p[t]=e},m=function(e,t,r){for(var i in v)o.call(v,i)&&e[i]===d[i]&&(e[i]=v[i]);return n.apply(e,s),t.apply(e,r)},i?e.Array.each(i,function(e){e in l&&h(l[e],e)}):e.Object.each(l,h,null,!0)),e.mix(c,p||l,r,i),f||n.apply(c,s),t},e.aggregate=function(t,n,r,i){return e.mix(t,n,r,i,0,!0)},e.extend=function(t,n,r,s){(!n||!t)&&e.error("extend failed, verify dependencies");var o=n.prototype,u=e.Object(o);return t.prototype=u,u.constructor=t,t.superclass=o,n!=Object&&o.constructor==i.constructor&&(o.constructor=n),r&&e.mix(u,r,!0),s&&e.mix(t,s,!0),t},e.each=function(e,t,n,r){return a(e,t,n,r,"each")},e.some=function(e,t,n,r){return a(e,t,n,r,"some")},e.clone=function(t,r,i,o,u,a){if(!n.isObject(t))return t;if(e.instanceOf(t,YUI))return t;var f,l=a||{},c,h=e.each;switch(n.type(t)){case"date":return new Date(t);case"regexp":return t;case"function":return t;case"array":f=[];break;default:if(t[s])return l[t[s]];c=e.guid(),f=r?{}:e.Object(t),t[s]=c,l[c]=t}return!t.addEventListener&&!t.attachEvent&&h(t,function(n,a){(a||a===0)&&(!i||i.call(o||this,n,a,this,t)!==!1)&&a!==s&&a!="prototype"&&(this[a]=e.clone(n,r,i,o,u||t,l))},f),a||(e.Object.each(l,function(e,t){if(e[s])try{delete e[s]}catch(n){e[s]=null}},this),l=null),f},e.bind=function(t,r){var i=arguments.length>2?e.Array(arguments,2,!0):null;return function(){var s=n.isString(t)?r[t]:t,o=i?i.concat(e.Array(arguments,0,!0)):arguments;return s.apply(r||s,o)}},e.rbind=function(t,r){var i=arguments.length>2?e.Array(arguments,2,!0):null;return function(){var s=n.isString(t)?r[t]:t,o=i?e.Array(arguments,0,!0).concat(i):arguments;return s.apply(r||s,o)}}},"3.9.1",{requires:["yui-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("oop",function(e,t){function a(t,n,i,s,o){if(t&&t[o]&&t!==e)return t[o].call(t,n,i);switch(r.test(t)){case 1:return r[o](t,n,i);case 2:return r[o](e.Array(t,0,!0),n,i);default:return e.Object[o](t,n,i,s)}}var n=e.Lang,r=e.Array,i=Object.prototype,s="_~yuim~_",o=i.hasOwnProperty,u=i.toString;e.augment=function(t,n,r,i,s){var a=t.prototype,f=a&&n,l=n.prototype,c=a||t,h,p,d,v,m;return s=s?e.Array(s):[],f&&(p={},d={},v={},h=function(e,t){if(r||!(t in a))u.call(e)==="[object Function]"?(v[t]=e,p[t]=d[t]=function(){return m(this,e,arguments)}):p[t]=e},m=function(e,t,r){for(var i in v)o.call(v,i)&&e[i]===d[i]&&(e[i]=v[i]);return n.apply(e,s),t.apply(e,r)},i?e.Array.each(i,function(e){e in l&&h(l[e],e)}):e.Object.each(l,h,null,!0)),e.mix(c,p||l,r,i),f||n.apply(c,s),t},e.aggregate=function(t,n,r,i){return e.mix(t,n,r,i,0,!0)},e.extend=function(t,n,r,s){(!n||!t)&&e.error("extend failed, verify dependencies");var o=n.prototype,u=e.Object(o);return t.prototype=u,u.constructor=t,t.superclass=o,n!=Object&&o.constructor==i.constructor&&(o.constructor=n),r&&e.mix(u,r,!0),s&&e.mix(t,s,!0),t},e.each=function(e,t,n,r){return a(e,t,n,r,"each")},e.some=function(e,t,n,r){return a(e,t,n,r,"some")},e.clone=function(t,r,i,o,u,a){var f,l,c;if(!n.isObject(t)||e.instanceOf(t,YUI)||t.addEventListener||t.attachEvent)return t;l=a||{};switch(n.type(t)){case"date":return new Date(t);case"regexp":return t;case"function":return t;case"array":f=[];break;default:if(t[s])return l[t[s]];c=e.guid(),f=r?{}:e.Object(t),t[s]=c,l[c]=t}return e.each(t,function(n,a){(a||a===0)&&(!i||i.call(o||this,n,a,this,t)!==!1)&&a!==s&&a!="prototype"&&(this[a]=e.clone(n,r,i,o,u||t,l))},f),a||(e.Object.each(l,function(e,t){if(e[s])try{delete e[s]}catch(n){e[s]=null}},this),l=null),f},e.bind=function(t,r){var i=arguments.length>2?e.Array(arguments,2,!0):null;return function(){var s=n.isString(t)?r[t]:t,o=i?i.concat(e.Array(arguments,0,!0)):arguments;return s.apply(r||s,o)}},e.rbind=function(t,r){var i=arguments.length>2?e.Array(arguments,2,!0):null;return function(){var s=n.isString(t)?r[t]:t,o=i?e.Array(arguments,0,!0).concat(i):arguments;return s.apply(r||s,o)}}},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/oop/oop.js b/lib/yuilib/3.12.0/oop/oop.js old mode 100644 new mode 100755 similarity index 76% rename from lib/yuilib/3.9.1/build/oop/oop.js rename to lib/yuilib/3.12.0/oop/oop.js index a4c603c4007..5a9beb94de9 --- a/lib/yuilib/3.9.1/build/oop/oop.js +++ b/lib/yuilib/3.12.0/oop/oop.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('oop', function (Y, NAME) { /** @@ -234,56 +240,66 @@ Y.some = function(o, f, c, proto) { }; /** - * Deep object/array copy. Function clones are actually - * wrappers around the original function. - * Array-like objects are treated as arrays. - * Primitives are returned untouched. Optionally, a - * function can be provided to handle other data types, - * filter keys, validate values, etc. - * - * NOTE: Cloning a non-trivial object is a reasonably heavy operation, due to - * the need to recurrsively iterate down non-primitive properties. Clone - * should be used only when a deep clone down to leaf level properties - * is explicitly required. - * - * In many cases (for example, when trying to isolate objects used as - * hashes for configuration properties), a shallow copy, using Y.merge is - * normally sufficient. If more than one level of isolation is required, - * Y.merge can be used selectively at each level which needs to be - * isolated from the original without going all the way to leaf properties. - * - * @method clone - * @param {object} o what to clone. - * @param {boolean} safe if true, objects will not have prototype - * items from the source. If false, they will. In this case, the - * original is initially protected, but the clone is not completely - * immune from changes to the source object prototype. Also, cloned - * prototype items that are deleted from the clone will result - * in the value of the source prototype being exposed. If operating - * on a non-safe clone, items should be nulled out rather than deleted. - * @param {function} f optional function to apply to each item in a - * collection; it will be executed prior to applying the value to - * the new object. Return false to prevent the copy. - * @param {object} c optional execution context for f. - * @param {object} owner Owner object passed when clone is iterating - * an object. Used to set up context for cloned functions. - * @param {object} cloned hash of previously cloned objects to avoid - * multiple clones. - * @return {Array|Object} the cloned object. - */ +Deep object/array copy. Function clones are actually wrappers around the +original function. Array-like objects are treated as arrays. Primitives are +returned untouched. Optionally, a function can be provided to handle other data +types, filter keys, validate values, etc. + +**Note:** Cloning a non-trivial object is a reasonably heavy operation, due to +the need to recursively iterate down non-primitive properties. Clone should be +used only when a deep clone down to leaf level properties is explicitly +required. This method will also + +In many cases (for example, when trying to isolate objects used as hashes for +configuration properties), a shallow copy, using `Y.merge()` is normally +sufficient. If more than one level of isolation is required, `Y.merge()` can be +used selectively at each level which needs to be isolated from the original +without going all the way to leaf properties. + +@method clone +@param {object} o what to clone. +@param {boolean} safe if true, objects will not have prototype items from the + source. If false, they will. In this case, the original is initially + protected, but the clone is not completely immune from changes to the source + object prototype. Also, cloned prototype items that are deleted from the + clone will result in the value of the source prototype being exposed. If + operating on a non-safe clone, items should be nulled out rather than + deleted. +@param {function} f optional function to apply to each item in a collection; it + will be executed prior to applying the value to the new object. + Return false to prevent the copy. +@param {object} c optional execution context for f. +@param {object} owner Owner object passed when clone is iterating an object. + Used to set up context for cloned functions. +@param {object} cloned hash of previously cloned objects to avoid multiple + clones. +@return {Array|Object} the cloned object. +**/ Y.clone = function(o, safe, f, c, owner, cloned) { + var o2, marked, stamp; + + // Does not attempt to clone: + // + // * Non-typeof-object values, "primitive" values don't need cloning. + // + // * YUI instances, cloning complex object like YUI instances is not + // advised, this is like cloning the world. + // + // * DOM nodes (#2528250), common host objects like DOM nodes cannot be + // "subclassed" in Firefox and old versions of IE. Trying to use + // `Object.create()` or `Y.extend()` on a DOM node will throw an error in + // these browsers. + // + // Instad, the passed-in `o` will be return as-is when it matches one of the + // above criteria. + if (!L.isObject(o) || + Y.instanceOf(o, YUI) || + (o.addEventListener || o.attachEvent)) { - if (!L.isObject(o)) { return o; } - // @todo cloning YUI instances doesn't currently work - if (Y.instanceOf(o, YUI)) { - return o; - } - - var o2, marked = cloned || {}, stamp, - yeach = Y.each; + marked = cloned || {}; switch (L.type(o)) { case 'date': @@ -314,23 +330,20 @@ Y.clone = function(o, safe, f, c, owner, cloned) { marked[stamp] = o; } - // #2528250 don't try to clone element properties - if (!o.addEventListener && !o.attachEvent) { - yeach(o, function(v, k) { -if ((k || k === 0) && (!f || (f.call(c || this, v, k, this, o) !== false))) { - if (k !== CLONE_MARKER) { - if (k == 'prototype') { - // skip the prototype - // } else if (o[k] === o) { - // this[k] = this; - } else { - this[k] = - Y.clone(v, safe, f, c, owner || o, marked); - } + Y.each(o, function(v, k) { + if ((k || k === 0) && (!f || (f.call(c || this, v, k, this, o) !== false))) { + if (k !== CLONE_MARKER) { + if (k == 'prototype') { + // skip the prototype + // } else if (o[k] === o) { + // this[k] = this; + } else { + this[k] = + Y.clone(v, safe, f, c, owner || o, marked); } } - }, o2); - } + } + }, o2); if (!cloned) { Y.Object.each(marked, function(v, k) { @@ -348,7 +361,6 @@ if ((k || k === 0) && (!f || (f.call(c || this, v, k, this, o) !== false))) { return o2; }; - /** * Returns a function that will execute the supplied function in the * supplied object's context, optionally adding any additional @@ -399,4 +411,4 @@ Y.rbind = function(f, c) { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/overlay/assets/overlay-core.css b/lib/yuilib/3.12.0/overlay/assets/overlay-core.css old mode 100644 new mode 100755 similarity index 54% rename from lib/yuilib/3.9.1/build/overlay/assets/overlay-core.css rename to lib/yuilib/3.12.0/overlay/assets/overlay-core.css index 954af0825c3..b94d63e5580 --- a/lib/yuilib/3.9.1/build/overlay/assets/overlay-core.css +++ b/lib/yuilib/3.12.0/overlay/assets/overlay-core.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-overlay { position:absolute; } diff --git a/lib/yuilib/3.9.1/build/overlay/assets/skins/night/overlay-skin.css b/lib/yuilib/3.12.0/overlay/assets/skins/night/overlay-skin.css old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/overlay/assets/skins/night/overlay-skin.css rename to lib/yuilib/3.12.0/overlay/assets/skins/night/overlay-skin.css index e92595678e2..c5b7c85f0c6 --- a/lib/yuilib/3.9.1/build/overlay/assets/skins/night/overlay-skin.css +++ b/lib/yuilib/3.12.0/overlay/assets/skins/night/overlay-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-night{ background-color:#000; font-family: HelveticaNeue,arial,helvetica,clean,sans-serif; diff --git a/lib/yuilib/3.12.0/overlay/assets/skins/night/overlay.css b/lib/yuilib/3.12.0/overlay/assets/skins/night/overlay.css new file mode 100755 index 00000000000..f62197e4fa1 --- /dev/null +++ b/lib/yuilib/3.12.0/overlay/assets/skins/night/overlay.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-overlay{position:absolute}.yui3-overlay-hidden{visibility:hidden}.yui3-widget-tmp-forcesize .yui3-overlay-content{overflow:hidden!important}.yui3-skin-night{background-color:#000;font-family:HelveticaNeue,arial,helvetica,clean,sans-serif;color:#fff}.yui3-skin-night .yui3-overlay-content ul,ol,li{margin:0;padding:0;list-style:none;zoom:1}.yui3-skin-night .yui3-overlay-content li{*float:left}.yui3-skin-night .yui3-overlay-content{background-color:#6d6e6e;-moz-box-shadow:0 0 17px rgba(0,0,0,0.58);-webkit-box-shadow:0 0 17px rgba(0,0,0,0.58);box-shadow:0 0 17px rgba(0,0,0,0.58);-moz-border-radius:7px;-webkit-border-radius:7px;border-radius:7px}.yui3-skin-night .yui3-overlay-content .yui3-widget-hd{background-color:#6d6e6e;-moz-border-radius:7px 7px 0 0;-webkit-border-radius:7px 7px 0 0;border-radius:7px 7px 0 0;color:#fff;margin:0;padding:20px 22px 0;font-size:147%}.yui3-skin-night .yui3-overlay-content .yui3-widget-bd{padding:11px 22px 17px;font-size:92%}.yui3-skin-night .yui3-overlay .yui3-widget-bd li{margin:.04em}.yui3-skin-night .yui3-overlay-content .yui3-widget-ft{background-color:#575858;border-top:solid 1px #494a4a;-moz-border-radius:0 0 7px 7px;-webkit-border-radius:0 0 7px 7px;border-radius:0 0 7px 7px;padding:17px 25px 20px;text-align:center}.yui3-skin-night .yui3-overlay-content .yui3-widget-ft li{margin:3px;display:inline-block}.yui3-skin-night .yui3-overlay-content .yui3-widget-ft li a{border:solid 1px #1b1c1c;border-radius:6px;-moz-box-shadow:0 1px #677478;-webkit-box-shadow:0 1px #677478;box-shadow:0 1px #677478;text-shadow:0 -1px 0 rgba(0,0,0,0.7);font-size:85%;text-align:center;color:#fff;padding:6px 28px;background-color:#2b2d2d;background:-moz-linear-gradient(0% 100% 90deg,#242526 0,#3b3c3d 96%,#2c2d2f 100%);background:-webkit-gradient(linear,left bottom,left top,from(#242526),color-stop(0.96,#3b3c3d),to(#2c2d2f))}.yui3-skin-night .yui3-overlay .yui3-widget-ft li:first-child{margin-left:0}.yui3-skin-night .yui3-overlay .yui3-widget-ft li:last-child{margin-right:0}.yui3-skin-night .yui3-overlay .yui3-widget-ft li:last-child a{border:solid 1px #520e00;-moz-box-shadow:0 1px #7d5d57;-webkit-box-shadow:0 1px #7d5d57;box-shadow:0 1px #7d5d57;background-color:#901704;background:-moz-linear-gradient(100% 0 270deg,#ab1c0b,#7b1400);background:-webkit-gradient(linear,left top,left bottom,from(#ab1c0b),to(#7b1400));margin-right:0}#yui3-widget-mask{background-color:#000;opacity:.5}#yui3-css-stamp.skin-night-overlay{display:none} diff --git a/lib/yuilib/3.12.0/overlay/assets/skins/sam/overlay-skin.css b/lib/yuilib/3.12.0/overlay/assets/skins/sam/overlay-skin.css new file mode 100755 index 00000000000..ab09cf0948f --- /dev/null +++ b/lib/yuilib/3.12.0/overlay/assets/skins/sam/overlay-skin.css @@ -0,0 +1,7 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + diff --git a/lib/yuilib/3.9.1/build/overlay/assets/skins/sam/overlay.css b/lib/yuilib/3.12.0/overlay/assets/skins/sam/overlay.css old mode 100644 new mode 100755 similarity index 57% rename from lib/yuilib/3.9.1/build/overlay/assets/skins/sam/overlay.css rename to lib/yuilib/3.12.0/overlay/assets/skins/sam/overlay.css index c2a201aad81..142828f28ee --- a/lib/yuilib/3.9.1/build/overlay/assets/skins/sam/overlay.css +++ b/lib/yuilib/3.12.0/overlay/assets/skins/sam/overlay.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-overlay{position:absolute}.yui3-overlay-hidden{visibility:hidden}.yui3-widget-tmp-forcesize .yui3-overlay-content{overflow:hidden!important}#yui3-css-stamp.skin-sam-overlay{display:none} diff --git a/lib/yuilib/3.9.1/build/overlay/overlay-debug.js b/lib/yuilib/3.12.0/overlay/overlay-debug.js old mode 100644 new mode 100755 similarity index 88% rename from lib/yuilib/3.9.1/build/overlay/overlay-debug.js rename to lib/yuilib/3.12.0/overlay/overlay-debug.js index ffa19cba05d..886ed3bd177 --- a/lib/yuilib/3.9.1/build/overlay/overlay-debug.js +++ b/lib/yuilib/3.12.0/overlay/overlay-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('overlay', function (Y, NAME) { /** @@ -27,7 +33,7 @@ YUI.add('overlay', function (Y, NAME) { Y.Overlay = Y.Base.create("overlay", Y.Widget, [Y.WidgetStdMod, Y.WidgetPosition, Y.WidgetStack, Y.WidgetPositionAlign, Y.WidgetPositionConstrain]); -}, '3.9.1', { +}, '3.12.0', { "requires": [ "widget", "widget-stdmod", diff --git a/lib/yuilib/3.12.0/overlay/overlay-min.js b/lib/yuilib/3.12.0/overlay/overlay-min.js new file mode 100755 index 00000000000..c5d32265eb8 --- /dev/null +++ b/lib/yuilib/3.12.0/overlay/overlay-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("overlay",function(e,t){e.Overlay=e.Base.create("overlay",e.Widget,[e.WidgetStdMod,e.WidgetPosition,e.WidgetStack,e.WidgetPositionAlign,e.WidgetPositionConstrain])},"3.12.0",{requires:["widget","widget-stdmod","widget-position","widget-position-align","widget-stack","widget-position-constrain"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/overlay/overlay.js b/lib/yuilib/3.12.0/overlay/overlay.js old mode 100644 new mode 100755 similarity index 88% rename from lib/yuilib/3.9.1/build/overlay/overlay.js rename to lib/yuilib/3.12.0/overlay/overlay.js index ffa19cba05d..886ed3bd177 --- a/lib/yuilib/3.9.1/build/overlay/overlay.js +++ b/lib/yuilib/3.12.0/overlay/overlay.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('overlay', function (Y, NAME) { /** @@ -27,7 +33,7 @@ YUI.add('overlay', function (Y, NAME) { Y.Overlay = Y.Base.create("overlay", Y.Widget, [Y.WidgetStdMod, Y.WidgetPosition, Y.WidgetStack, Y.WidgetPositionAlign, Y.WidgetPositionConstrain]); -}, '3.9.1', { +}, '3.12.0', { "requires": [ "widget", "widget-stdmod", diff --git a/lib/yuilib/3.12.0/paginator-core/paginator-core-debug.js b/lib/yuilib/3.12.0/paginator-core/paginator-core-debug.js new file mode 100755 index 00000000000..4f726b86a23 --- /dev/null +++ b/lib/yuilib/3.12.0/paginator-core/paginator-core-debug.js @@ -0,0 +1,153 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('paginator-core', function (Y, NAME) { + +/** + Paginator's core functionality consists of keeping track of the current page + being displayed and providing information for previous and next pages. + + @module paginator + @submodule paginator-core + @since 3.11.0 + */ + +/** + _API docs for this extension are included in the Paginator class._ + + Class extension providing the core API and structure for the Paginator module. + + Use this class extension with Widget or another Base-based superclass to + create the basic Paginator model API and composing class structure. + + @class Paginator.Core + @for Paginator + @since 3.11.0 + */ + +var PaginatorCore = Y.namespace('Paginator').Core = function () {}; + +PaginatorCore.ATTRS = { + /** + Current page count. First page is 1. + + @attribute page + @type Number + @default 1 + **/ + page: { + value: 1 + }, + + /** + Total number of pages to display + + @readOnly + @attribute totalPages + @type Number + **/ + totalPages: { + readOnly: true, + getter: '_getTotalPagesFn' + }, + + /** + Maximum number of items per page. A value of negative one (-1) indicates + all items on one page. + + @attribute itemsPerPage + @type Number + @default 10 + **/ + itemsPerPage: { + value: 10 + }, + + /** + Total number of items in all pages. + + @attribute totalItems + @type Number + @default 0 + **/ + totalItems: { + value: 0 + } +}; + +Y.mix(PaginatorCore.prototype, { + /** + Sets the page to the previous page in the set, if there is a previous page. + @method prevPage + @chainable + */ + prevPage: function () { + if (this.hasPrevPage()) { + this.set('page', this.get('page') - 1); + } + + return this; + }, + + /** + Sets the page to the next page in the set, if there is a next page. + + @method nextPage + @chainable + */ + nextPage: function () { + if (this.hasNextPage()) { + this.set('page', this.get('page') + 1); + } + + return this; + }, + + /** + Returns True if there is a previous page in the set. + + @method hasPrevPage + @return {Boolean} `true` if there is a previous page, `false` otherwise. + */ + hasPrevPage: function () { + return this.get('page') > 1; + }, + + /** + Returns True if there is a next page in the set. + + If totalItems isn't set, assume there is always next page. + + @method hasNextPage + @return {Boolean} `true` if there is a next page, `false` otherwise. + */ + hasNextPage: function () { + return (!this.get('totalItems') || this.get('page') < this.get('totalPages')); + }, + + + //--- P R O T E C T E D + + /** + Returns the total number of pages based on the total number of + items provided and the number of items per page + + @protected + @method _getTotalPagesFn + @return {Number} Total number of pages based on total number of items and + items per page or one if itemsPerPage is less than one + */ + _getTotalPagesFn: function () { + var itemsPerPage = this.get('itemsPerPage'); + + return (itemsPerPage < 1) ? 1 : Math.ceil(this.get('totalItems') / itemsPerPage); + } +}); + + + +}, '3.12.0', {"requires": ["base"]}); diff --git a/lib/yuilib/3.12.0/paginator-core/paginator-core-min.js b/lib/yuilib/3.12.0/paginator-core/paginator-core-min.js new file mode 100755 index 00000000000..0a2a53a271e --- /dev/null +++ b/lib/yuilib/3.12.0/paginator-core/paginator-core-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("paginator-core",function(e,t){var n=e.namespace("Paginator").Core=function(){};n.ATTRS={page:{value:1},totalPages:{readOnly:!0,getter:"_getTotalPagesFn"},itemsPerPage:{value:10},totalItems:{value:0}},e.mix(n.prototype,{prevPage:function(){return this.hasPrevPage()&&this.set("page",this.get("page")-1),this},nextPage:function(){return this.hasNextPage()&&this.set("page",this.get("page")+1),this},hasPrevPage:function(){return this.get("page")>1},hasNextPage:function(){return!this.get("totalItems")||this.get("page") 1; + }, + + /** + Returns True if there is a next page in the set. + + If totalItems isn't set, assume there is always next page. + + @method hasNextPage + @return {Boolean} `true` if there is a next page, `false` otherwise. + */ + hasNextPage: function () { + return (!this.get('totalItems') || this.get('page') < this.get('totalPages')); + }, + + + //--- P R O T E C T E D + + /** + Returns the total number of pages based on the total number of + items provided and the number of items per page + + @protected + @method _getTotalPagesFn + @return {Number} Total number of pages based on total number of items and + items per page or one if itemsPerPage is less than one + */ + _getTotalPagesFn: function () { + var itemsPerPage = this.get('itemsPerPage'); + + return (itemsPerPage < 1) ? 1 : Math.ceil(this.get('totalItems') / itemsPerPage); + } +}); + + + +}, '3.12.0', {"requires": ["base"]}); diff --git a/lib/yuilib/3.12.0/paginator-url/paginator-url-debug.js b/lib/yuilib/3.12.0/paginator-url/paginator-url-debug.js new file mode 100755 index 00000000000..aad4a037e12 --- /dev/null +++ b/lib/yuilib/3.12.0/paginator-url/paginator-url-debug.js @@ -0,0 +1,74 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('paginator-url', function (Y, NAME) { + +/** + Adds in URL options for paginator links. + + @module paginator + @submodule paginator-url + @class Paginator.Url + @since 3.10.0 + */ + +function PaginatorUrl () {} + +PaginatorUrl.ATTRS = { + /** + URL to return formatted with the page number. URL uses `Y.Lang.sub` for page number stubstitutions. + + For example, if the page number is `3`, setting the `pageUrl` to `"?pg={page}"`, will result in `?pg=3` + + @attribute pageUrl + @type String + **/ + pageUrl: {} +}; + +PaginatorUrl.prototype = { + /** + Returns a formated URL for the previous page. + @method prevPageUrl + @return {String | null} Formatted URL for the previous page, or `null` if there is no previous page. + */ + prevPageUrl: function () { + return (this.hasPrevPage() && this.formatPageUrl(this.get('page') - 1)) || null; + }, + + /** + Returns a formated URL for the next page. + @method nextPageUrl + @return {String | null} Formatted URL for the next page or `null` if there is no next page. + */ + nextPageUrl: function () { + return (this.hasNextPage() && this.formatPageUrl(this.get('page') + 1)) || null; + }, + + /** + Returns a formated URL for the provided page number. + @method formatPageUrl + @param {Number} [page] Page value to be used in the formatted URL. If empty, page will be the value of the `page` ATTRS. + @return {String | null} Formatted URL for the page or `null` if there is not a `pageUrl` set. + */ + formatPageUrl: function (page) { + var pageUrl = this.get('pageUrl'); + if (pageUrl) { + return Y.Lang.sub(pageUrl, { + page: page || this.get('page') + }); + } + return null; + } +}; + +Y.namespace('Paginator').Url = PaginatorUrl; + +Y.Base.mix(Y.Paginator, [PaginatorUrl]); + + +}, '3.12.0', {"requires": ["paginator"]}); diff --git a/lib/yuilib/3.12.0/paginator-url/paginator-url-min.js b/lib/yuilib/3.12.0/paginator-url/paginator-url-min.js new file mode 100755 index 00000000000..03dc569f6f0 --- /dev/null +++ b/lib/yuilib/3.12.0/paginator-url/paginator-url-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("paginator-url",function(e,t){function n(){}n.ATTRS={pageUrl:{}},n.prototype={prevPageUrl:function(){return this.hasPrevPage()&&this.formatPageUrl(this.get("page")-1)||null},nextPageUrl:function(){return this.hasNextPage()&&this.formatPageUrl(this.get("page")+1)||null},formatPageUrl:function(t){var n=this.get("pageUrl");return n?e.Lang.sub(n,{page:t||this.get("page")}):null}},e.namespace("Paginator").Url=n,e.Base.mix(e.Paginator,[n])},"3.12.0",{requires:["paginator"]}); diff --git a/lib/yuilib/3.12.0/paginator-url/paginator-url.js b/lib/yuilib/3.12.0/paginator-url/paginator-url.js new file mode 100755 index 00000000000..aad4a037e12 --- /dev/null +++ b/lib/yuilib/3.12.0/paginator-url/paginator-url.js @@ -0,0 +1,74 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('paginator-url', function (Y, NAME) { + +/** + Adds in URL options for paginator links. + + @module paginator + @submodule paginator-url + @class Paginator.Url + @since 3.10.0 + */ + +function PaginatorUrl () {} + +PaginatorUrl.ATTRS = { + /** + URL to return formatted with the page number. URL uses `Y.Lang.sub` for page number stubstitutions. + + For example, if the page number is `3`, setting the `pageUrl` to `"?pg={page}"`, will result in `?pg=3` + + @attribute pageUrl + @type String + **/ + pageUrl: {} +}; + +PaginatorUrl.prototype = { + /** + Returns a formated URL for the previous page. + @method prevPageUrl + @return {String | null} Formatted URL for the previous page, or `null` if there is no previous page. + */ + prevPageUrl: function () { + return (this.hasPrevPage() && this.formatPageUrl(this.get('page') - 1)) || null; + }, + + /** + Returns a formated URL for the next page. + @method nextPageUrl + @return {String | null} Formatted URL for the next page or `null` if there is no next page. + */ + nextPageUrl: function () { + return (this.hasNextPage() && this.formatPageUrl(this.get('page') + 1)) || null; + }, + + /** + Returns a formated URL for the provided page number. + @method formatPageUrl + @param {Number} [page] Page value to be used in the formatted URL. If empty, page will be the value of the `page` ATTRS. + @return {String | null} Formatted URL for the page or `null` if there is not a `pageUrl` set. + */ + formatPageUrl: function (page) { + var pageUrl = this.get('pageUrl'); + if (pageUrl) { + return Y.Lang.sub(pageUrl, { + page: page || this.get('page') + }); + } + return null; + } +}; + +Y.namespace('Paginator').Url = PaginatorUrl; + +Y.Base.mix(Y.Paginator, [PaginatorUrl]); + + +}, '3.12.0', {"requires": ["paginator"]}); diff --git a/lib/yuilib/3.12.0/paginator/paginator-debug.js b/lib/yuilib/3.12.0/paginator/paginator-debug.js new file mode 100755 index 00000000000..aebd6fe09a6 --- /dev/null +++ b/lib/yuilib/3.12.0/paginator/paginator-debug.js @@ -0,0 +1,81 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('paginator', function (Y, NAME) { + +/** + The Paginator utility allows you to display an item or a group of items + depending on the number of items you wish to display at one time. + + Paginator's primary functionality is contained in `paginator-core` and is mixed + into `paginator` to allow `paginator` to have extra functionality added to it + while leaving the core functionality untouched. This allows `paginator-core` to + remain available for use later on or used in isolation if it is the only piece + you need. + + Due to the vast number of interfaces a paginator could possibly consist of, + `Paginator` does not contain any ready to use UIs. However, `Paginator` is + ready to be used in any Based-based, module such as a Widget, by extending your + desired class and mixing in `Paginator`. This is displayed in the following + example: + +
    
    + YUI().use('paginator-url', 'widget', function (Y){
    +     var MyPaginator = Y.Base.create('my-paginator', Y.Widget, [Y.Paginator], {
    +
    +        renderUI: function () {
    +            var numbers = '',
    +                i, numberOfPages = this.get('totalPages');
    +
    +            for (i = 1; i <= numberOfPages; i++) {
    +                // use paginator-url's formatUrl method
    +                numbers += '<a href="' + this.formatUrl(i) + '">' + i + '</a>';
    +            }
    +
    +            this.get('boundingBox').append(numbers);
    +        },
    +
    +        bindUI: function () {
    +            this.get('boundingBox').delegate('click', function (e) {
    +                // let's not go to the page, just update internally
    +                e.preventDefault();
    +                this.set('page', parseInt(e.currentTarget.getContent(), 10));
    +            }, 'a', this);
    +
    +            this.after('pageChange', function (e) {
    +                // mark the link selected when it's the page being displayed
    +                var bb = this.get('boundingBox'),
    +                    activeClass = 'selected';
    +
    +                bb.all('a').removeClass(activeClass).item(e.newVal).addClass(activeClass);
    +            });
    +        }
    +
    +     });
    +
    +     var myPg = new MyPaginator({
    +                    totalItems: 100,
    +                    pageUrl: '?pg={page}'
    +                });
    +
    +     myPg.render();
    + });
    + 
    + + @module paginator + @main paginator + @class Paginator + @constructor + @since 3.11.0 + */ + +Y.Paginator = Y.mix( + Y.Base.create('pagiantor', Y.Base, [Y.Paginator.Core]), + Y.Paginator +); + +}, '3.12.0', {"requires": ["paginator-core"]}); diff --git a/lib/yuilib/3.12.0/paginator/paginator-min.js b/lib/yuilib/3.12.0/paginator/paginator-min.js new file mode 100755 index 00000000000..8adb407d152 --- /dev/null +++ b/lib/yuilib/3.12.0/paginator/paginator-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("paginator",function(e,t){e.Paginator=e.mix(e.Base.create("pagiantor",e.Base,[e.Paginator.Core]),e.Paginator)},"3.12.0",{requires:["paginator-core"]}); diff --git a/lib/yuilib/3.12.0/paginator/paginator.js b/lib/yuilib/3.12.0/paginator/paginator.js new file mode 100755 index 00000000000..aebd6fe09a6 --- /dev/null +++ b/lib/yuilib/3.12.0/paginator/paginator.js @@ -0,0 +1,81 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('paginator', function (Y, NAME) { + +/** + The Paginator utility allows you to display an item or a group of items + depending on the number of items you wish to display at one time. + + Paginator's primary functionality is contained in `paginator-core` and is mixed + into `paginator` to allow `paginator` to have extra functionality added to it + while leaving the core functionality untouched. This allows `paginator-core` to + remain available for use later on or used in isolation if it is the only piece + you need. + + Due to the vast number of interfaces a paginator could possibly consist of, + `Paginator` does not contain any ready to use UIs. However, `Paginator` is + ready to be used in any Based-based, module such as a Widget, by extending your + desired class and mixing in `Paginator`. This is displayed in the following + example: + +
    
    + YUI().use('paginator-url', 'widget', function (Y){
    +     var MyPaginator = Y.Base.create('my-paginator', Y.Widget, [Y.Paginator], {
    +
    +        renderUI: function () {
    +            var numbers = '',
    +                i, numberOfPages = this.get('totalPages');
    +
    +            for (i = 1; i <= numberOfPages; i++) {
    +                // use paginator-url's formatUrl method
    +                numbers += '<a href="' + this.formatUrl(i) + '">' + i + '</a>';
    +            }
    +
    +            this.get('boundingBox').append(numbers);
    +        },
    +
    +        bindUI: function () {
    +            this.get('boundingBox').delegate('click', function (e) {
    +                // let's not go to the page, just update internally
    +                e.preventDefault();
    +                this.set('page', parseInt(e.currentTarget.getContent(), 10));
    +            }, 'a', this);
    +
    +            this.after('pageChange', function (e) {
    +                // mark the link selected when it's the page being displayed
    +                var bb = this.get('boundingBox'),
    +                    activeClass = 'selected';
    +
    +                bb.all('a').removeClass(activeClass).item(e.newVal).addClass(activeClass);
    +            });
    +        }
    +
    +     });
    +
    +     var myPg = new MyPaginator({
    +                    totalItems: 100,
    +                    pageUrl: '?pg={page}'
    +                });
    +
    +     myPg.render();
    + });
    + 
    + + @module paginator + @main paginator + @class Paginator + @constructor + @since 3.11.0 + */ + +Y.Paginator = Y.mix( + Y.Base.create('pagiantor', Y.Base, [Y.Paginator.Core]), + Y.Paginator +); + +}, '3.12.0', {"requires": ["paginator-core"]}); diff --git a/lib/yuilib/3.9.1/build/panel/assets/panel-core.css b/lib/yuilib/3.12.0/panel/assets/panel-core.css old mode 100644 new mode 100755 similarity index 75% rename from lib/yuilib/3.9.1/build/panel/assets/panel-core.css rename to lib/yuilib/3.12.0/panel/assets/panel-core.css index 284e1e6b633..108e8d35e03 --- a/lib/yuilib/3.9.1/build/panel/assets/panel-core.css +++ b/lib/yuilib/3.12.0/panel/assets/panel-core.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-panel { position: absolute; } diff --git a/lib/yuilib/3.9.1/build/panel/assets/skins/night/panel-skin.css b/lib/yuilib/3.12.0/panel/assets/skins/night/panel-skin.css old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/panel/assets/skins/night/panel-skin.css rename to lib/yuilib/3.12.0/panel/assets/skins/night/panel-skin.css index 92a46b48c16..2f571bb5a8f --- a/lib/yuilib/3.9.1/build/panel/assets/skins/night/panel-skin.css +++ b/lib/yuilib/3.12.0/panel/assets/skins/night/panel-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-night .yui3-panel { color: #FFFFFF; font-family: HelveticaNeue, arial, helvetica, clean, sans-serif; diff --git a/lib/yuilib/3.12.0/panel/assets/skins/night/panel.css b/lib/yuilib/3.12.0/panel/assets/skins/night/panel.css new file mode 100755 index 00000000000..f460b5b7cd3 --- /dev/null +++ b/lib/yuilib/3.12.0/panel/assets/skins/night/panel.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-panel{position:absolute}.yui3-panel-hidden{visibility:hidden}.yui3-widget-tmp-forcesize .yui3-panel-content{overflow:hidden!important}.yui3-panel .yui3-widget-hd{position:relative}.yui3-panel .yui3-widget-hd .yui3-widget-buttons{position:absolute;top:0;right:0}.yui3-panel .yui3-widget-ft .yui3-widget-buttons{display:inline-block;*display:inline;zoom:1}.yui3-skin-night .yui3-panel{color:#fff;font-family:HelveticaNeue,arial,helvetica,clean,sans-serif}.yui3-skin-night .yui3-panel-content{background:#6d6e6e;-webkit-box-shadow:0 0 20px #000;-moz-box-shadow:0 0 20px #000;box-shadow:0 0 20px #000;border:1px solid black;-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px}.yui3-skin-night .yui3-panel .yui3-widget-hd{padding:11px 57px 11px 22px;min-height:17px;_height:17px;-webkit-border-top-left-radius:7px;-webkit-border-top-right-radius:7px;-moz-border-radius-topleft:7px;-moz-border-radius-topright:7px;border-top-left-radius:7px;border-top-right-radius:7px;font-weight:bold;color:white;background-color:#555658;background:-moz-linear-gradient(0% 100% 90deg,#343536 0,#555658 96%,#3e3f41 100%);background:-webkit-gradient(linear,left bottom,left top,from(#343536),color-stop(0.96,#555658),to(#3e3f41))}.yui3-skin-night .yui3-panel .yui3-widget-hd .yui3-widget-buttons{padding:11px}.yui3-skin-night .yui3-panel .yui3-widget-bd{padding:11px 22px 17px}.yui3-skin-night .yui3-panel .yui3-widget-ft{background-color:#575858;border-top:1px solid #494a4a;padding:6px 16px 8px;text-align:center;-webkit-border-bottom-right-radius:7px;-webkit-border-bottom-left-radius:7px;-moz-border-radius-bottomright:7px;-moz-border-radius-bottomleft:7px;border-bottom-right-radius:7px;border-bottom-left-radius:7px}.yui3-skin-night .yui3-panel .yui3-widget-ft .yui3-widget-buttons{bottom:0;position:relative;right:auto;width:100%;text-align:center;padding-bottom:0;margin-left:-5px;margin-right:-5px}.yui3-skin-night .yui3-panel .yui3-widget-ft .yui3-button{margin:5px}.yui3-skin-night .yui3-panel .yui3-widget-hd .yui3-button-close{background:transparent;filter:none;border:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;width:22px;height:17px;padding:0;overflow:hidden;vertical-align:top;*font-size:0;*line-height:0;*letter-spacing:-1000px;*color:#86a5ec;*background:url(sprite_icons.png) no-repeat center 3px}.yui3-skin-night .yui3-panel .yui3-widget-hd .yui3-button-close:hover{background-color:#333}.yui3-skin-night .yui3-panel .yui3-widget-hd .yui3-button-close:before{content:url(sprite_icons.png);display:inline-block;text-align:center;font-size:0;line-height:0;width:22px;margin:3px 0 0 1px}.yui3-skin-night .yui3-panel-hidden .yui3-widget-hd .yui3-button-close{display:none}#yui3-css-stamp.skin-night-panel{display:none} diff --git a/lib/yuilib/3.12.0/panel/assets/skins/night/sprite_icons.png b/lib/yuilib/3.12.0/panel/assets/skins/night/sprite_icons.png new file mode 100755 index 0000000000000000000000000000000000000000..34fd6cdc6443c083be6e5c9191d2e302e2b6f74a GIT binary patch literal 176 zcmeAS@N?(olHy`uVBq!ia0vp@K%BzC3?#G8dEEh0JOMr-u0T38Ji',classNames:n("button","close")}}},{ATTRS:{buttons:{value:["close"]}}})},"3.9.1",{requires:["widget","widget-autohide","widget-buttons","widget-modality","widget-position","widget-position-align","widget-position-constrain","widget-stack","widget-stdmod"],skinnable:!0}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("panel",function(e,t){var n=e.ClassNameManager.getClassName;e.Panel=e.Base.create("panel",e.Widget,[e.WidgetPosition,e.WidgetStdMod,e.WidgetAutohide,e.WidgetButtons,e.WidgetModality,e.WidgetPositionAlign,e.WidgetPositionConstrain,e.WidgetStack],{BUTTONS:{close:{label:"Close",action:"hide",section:"header",template:'
    * *
    form
    @@ -18950,7 +19807,7 @@ Y.mix(Y.IO.prototype, { -}, '3.9.1', {"requires": ["event-custom-base", "querystring-stringify-simple"]}); +}, '3.12.0', {"requires": ["event-custom-base", "querystring-stringify-simple"]}); YUI.add('json-parse', function (Y, NAME) { var _JSON = Y.config.global.JSON; @@ -18960,7 +19817,7 @@ Y.namespace('JSON').parse = function (obj, reviver, space) { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('transition', function (Y, NAME) { /** @@ -19712,7 +20569,7 @@ Y.mix(Transition.toggles, { }); -}, '3.9.1', {"requires": ["node-style"]}); +}, '3.12.0', {"requires": ["node-style"]}); YUI.add('selector-css2', function (Y, NAME) { /** @@ -19775,13 +20632,15 @@ var PARENT_NODE = 'parentNode', _bruteQuery: function(selector, root, firstOnly) { var ret = [], nodes = [], + visited, tokens = Selector._tokenize(selector), token = tokens[tokens.length - 1], rootDoc = Y.DOM._getDoc(root), child, id, className, - tagName; + tagName, + isUniversal; if (token) { // prefilter nodes @@ -19802,16 +20661,30 @@ var PARENT_NODE = 'parentNode', } } else { // brute getElementsByTagName() + visited = []; child = root.firstChild; + isUniversal = tagName === "*"; while (child) { - // only collect HTMLElements - // match tag to supplement missing getElementsByTagName - if (child.tagName && (tagName === '*' || child.tagName === tagName)) { - nodes.push(child); + while (child) { + // IE 6-7 considers comment nodes as element nodes, and gives them the tagName "!". + // We can filter them out by checking if its tagName is > "@". + // This also avoids a superflous nodeType === 1 check. + if (child.tagName > "@" && (isUniversal || child.tagName === tagName)) { + nodes.push(child); + } + + // We may need to traverse back up the tree to find more unvisited subtrees. + visited.push(child); + child = child.firstChild; + } + + // Find the most recently visited node who has a next sibling. + while (visited.length > 0 && !child) { + child = visited.pop().nextSibling; } - child = child.nextSibling || child.firstChild; } } + if (nodes.length) { ret = Selector._filterNodes(nodes, tokens, firstOnly); } @@ -20156,8 +21029,7 @@ if (Y.Selector.useNative && Y.config.doc.querySelector) { } - -}, '3.9.1', {"requires": ["selector-native"]}); +}, '3.12.0', {"requires": ["selector-native"]}); YUI.add('selector-css3', function (Y, NAME) { /** @@ -20309,7 +21181,7 @@ Y.Selector.combinators['~'] = { }; -}, '3.9.1', {"requires": ["selector-native", "selector-css2"]}); +}, '3.12.0', {"requires": ["selector-native", "selector-css2"]}); YUI.add('yui-log', function (Y, NAME) { /** @@ -20325,9 +21197,9 @@ var INSTANCE = Y, LOGEVENT = 'yui:log', UNDEFINED = 'undefined', LEVELS = { debug: 1, - info: 1, - warn: 1, - error: 1 }; + info: 2, + warn: 4, + error: 8 }; /** * If the 'debug' config is true, a 'yui:log' event will be @@ -20349,7 +21221,7 @@ var INSTANCE = Y, * @return {YUI} YUI instance. */ INSTANCE.log = function(msg, cat, src, silent) { - var bail, excl, incl, m, f, + var bail, excl, incl, m, f, minlevel, Y = INSTANCE, c = Y.config, publisher = (Y.fire) ? Y : YUI.Env.globalEvents; @@ -20368,6 +21240,15 @@ INSTANCE.log = function(msg, cat, src, silent) { } else if (excl && (src in excl)) { bail = excl[src]; } + + // Determine the current minlevel as defined in configuration + Y.config.logLevel = Y.config.logLevel || 'debug'; + minlevel = LEVELS[Y.config.logLevel.toLowerCase()]; + + if (cat in LEVELS && LEVELS[cat] < minlevel) { + // Skip this message if the we don't meet the defined minlevel + bail = 1; + } } if (!bail) { if (c.useBrowserConsole) { @@ -20420,7 +21301,7 @@ INSTANCE.message = function() { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('dump', function (Y, NAME) { /** @@ -20525,7 +21406,7 @@ YUI.add('dump', function (Y, NAME) { -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('transition-timer', function (Y, NAME) { /** @@ -20859,14 +21740,14 @@ Transition.behaviors.top = Transition.behaviors.bottom = Transition.behaviors.ri Y.Transition = Transition; -}, '3.9.1', {"requires": ["transition"]}); +}, '3.12.0', {"requires": ["transition"]}); YUI.add('yui', function (Y, NAME) { // empty -}, '3.9.1', { +}, '3.12.0', { "use": [ "yui", "oop", diff --git a/lib/yuilib/3.12.0/simpleyui/simpleyui-min.js b/lib/yuilib/3.12.0/simpleyui/simpleyui-min.js new file mode 100755 index 00000000000..7697f090821 --- /dev/null +++ b/lib/yuilib/3.12.0/simpleyui/simpleyui-min.js @@ -0,0 +1,34 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +typeof YUI!="undefined"&&(YUI._YUI=YUI);var YUI=function(){var e=0,t=this,n=arguments,r=n.length,i=function(e,t){return e&&e.hasOwnProperty&&e instanceof t},s=typeof YUI_config!="undefined"&&YUI_config;i(t,YUI)?(t._init(),YUI.GlobalConfig&&t.applyConfig(YUI.GlobalConfig),s&&t.applyConfig(s),r||t._setup()):t=new YUI;if(r){for(;e-1&&(n="3.5.0"),e={applyConfig:function(e){e=e||u;var t,n,r=this.config,i=r.modules,s=r.groups,o=r.aliases,a=this.Env._loader;for(n in e)e.hasOwnProperty(n)&&(t=e[n],i&&n=="modules"?E(i,t):o&&n=="aliases"?E(o,t):s&&n=="groups"?E(s,t):n=="win"?(r[n]=t&&t.contentWindow||t,r.doc=r[n]?r[n].document:null):n!="_yuid"&&(r[n]=t));a&&a._config(e)},_config:function(e){this.applyConfig(e)},_init:function(){var e,t,r=this,s=YUI.Env,u=r.Env,a;r.version=n;if(!u){r.Env={core:["get","features","intl-base","yui-log","yui-later"],loaderExtras:["loader-rollup","loader-yui3"],mods:{},versions:{},base:i,cdn:i+n+"/build/",_idx:0,_used:{},_attached:{},_missed:[],_yidx:0,_uidx:0,_guidp:"y",_loaded:{},_BASE_RE:/(?:\?(?:[^&]*&)*([^&]*))?\b(simpleyui|yui(?:-\w+)?)\/\2(?:-(min|debug))?\.js/,parseBasePath:function(e,t){var n=e.match(t),r,i;return n&&(r=RegExp.leftContext||e.slice(0,e.indexOf(n[0])),i=n[3],n[1]&&(r+="?"+n[1]),r={filter:i,path:r}),r},getBase:s&&s.getBase||function(t){var n=h&&h.getElementsByTagName("script")||[],i=u.cdn,s,o,a,f;for(o=0,a=n.length;o',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},m.indexOf=p._isNative(d.indexOf)?function(e,t,n){return d.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,y):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},E.each=function(t,n,r,i){var s;for(s in t)(i||N(t,s))&&n.call(r||e,t[s],s,t);return e},E.some=function(t,n,r,i){var s;for(s in t)if(i||N(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},E.getValue=function(t,n){if(!p.isObject(t))return w;var r,i=e.Array(n),s=i.length;for(r=0;t!==w&&r=0){for(i=0;u!==w&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"@VERSION@",{use:["get","features","intl-base","yui-log","yui-later"]}),YUI.add("get",function(e,t){var n=e.Lang,r,i,s;e.Get=i={cssOptions:{attributes:{rel:"stylesheet"},doc:e.config.linkDoc||e.config.doc,pollInterval:50},jsOptions:{autopurge:!0,doc:e.config.scriptDoc||e.config.doc},options:{attributes:{charset:"utf-8"},purgethreshold:20},REGEX_CSS:/\.css(?:[?;].*)?$/i,REGEX_JS:/\.js(?:[?;].*)?$/i,_insertCache:{},_pending:null,_purgeNodes:[],_queue:[],abort:function(e){var t,n,r,i,s;if(!e.abort){n=e,s=this._pending,e=null;if(s&&s.transaction.id===n)e=s.transaction,this._pending=null;else for(t=0,i=this._queue.length;t=e&&this._purge(this._purgeNodes)},_getEnv:function(){var t=e.config.doc,n=e.UA;return this._env={async:t&&t.createElement("script").async===!0||n.ie>=10,cssFail:n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0,cssLoad:(!n.gecko&&!n.webkit||n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0)&&!(n.chrome&&n.chrome<=18),preservesScriptOrder:!!(n.gecko||n.opera||n.ie&&n.ie>=10)}},_getTransaction:function(t,r){var i=[ +],o,u,a,f;n.isArray(t)||(t=[t]),r=e.merge(this.options,r),r.attributes=e.merge(this.options.attributes,r.attributes);for(o=0,u=t.length;o-1&&n.splice(i,1))}}},i.script=i.js,i.Transaction=s=function(t,n){var r=this;r.id=s._lastId+=1,r.data=n.data,r.errors=[],r.nodes=[],r.options=n,r.requests=t,r._callbacks=[],r._queue=[],r._reqsWaiting=0,r.tId=r.id,r.win=n.win||e.config.win},s._lastId=0,s.prototype={_state:"new",abort:function(e){this._pending=null,this._pendingCSS=null,this._pollTimer=clearTimeout(this._pollTimer),this._queue=[],this._reqsWaiting=0,this.errors.push({error:e||"Aborted"}),this._finish()},execute:function(e){var t=this,n=t.requests,r=t._state,i,s,o,u;if(r==="done"){e&&e(t.errors.length?t.errors:null,t);return}e&&t._callbacks.push(e);if(r==="executing")return;t._state="executing",t._queue=o=[],t.options.timeout&&(t._timeout=setTimeout(function(){t.abort("Timeout")},t.options.timeout)),t._reqsWaiting=n.length;for(i=0,s=n.length;i=10?(o.onerror=function(){setTimeout(c,0)},o.onload=function(){setTimeout(h,0)}):(o.onerror=c,o.onload=h),!n.cssFail&&!s&&(f=setTimeout(c,t.timeout||3e3))),this.nodes.push(o),r.parentNode.insertBefore(o,r)},_next:function(){if(this._pending)return;this._queue.length?this._insert(this._queue.shift()):this._reqsWaiting||this._finish()},_poll:function(t){var n=this,r=n._pendingCSS,i=e.UA.webkit,s,o,u,a,f,l;if(t){r||(r=n._pendingCSS=[]),r.push(t);if(n._pollTimer)return}n._pollTimer=null;for(s=0;s=0)if(l[u].href===a){r.splice(s,1),s-=1,n._progress(null,f);break}}else try{o=!!f.node.sheet.cssRules,r.splice(s,1),s-=1,n._progress(null,f)}catch(c){}}r.length&&(n._pollTimer=setTimeout(function(){n._poll.call(n)},n.options.pollInterval))},_progress:function(e,t){var n=this.options;e&&(t.error=e,this.errors.push({error:e,request:t})),t.node._yuiget_finished=t.finished=!0,n.onProgress&&n.onProgress.call(n.context||this,this._getEventData(t)),t.autopurge&&(i._autoPurge(this.options.purgethreshold),i._purgeNodes.push(t.node)),this._pending===t&&(this._pending=null),this._reqsWaiting-=1,this._next()}}},"@VERSION@",{requires:["yui-base"]}),YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions" +}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"@VERSION@",{requires:["yui-base"]}),YUI.add("intl-base",function(e,t){var n=/[, ]/;e.mix(e.namespace("Intl"),{lookupBestLang:function(t,r){function a(e){var t;for(t=0;t0){o=a(s);if(o)return o;u=s.lastIndexOf("-");if(!(u>=0))break;s=s.substring(0,u),u>=2&&s.charAt(u-2)==="-"&&(s=s.substring(0,u-2))}}return""}})},"@VERSION@",{requires:["yui-base"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:2,warn:4,error:8};n.log=function(e,t,o,u){var a,f,l,c,h,p,d=n,v=d.config,m=d.fire?d:YUI.Env.globalEvents;return v.debug&&(o=o||"",typeof o!="undefined"&&(f=v.logExclude,l=v.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1,d.config.logLevel=d.config.logLevel||"debug",p=s[d.config.logLevel.toLowerCase()],t in s&&s[t]2?e.Array(arguments,2,!0):null;return function(){var s=n.isString(t)?r[t]:t,o=i?i.concat(e.Array(arguments,0,!0)):arguments;return s.apply(r||s,o)}},e.rbind=function(t,r){var i=arguments.length>2?e.Array(arguments,2,!0):null;return function(){var s=n.isString(t)?r[t]:t,o=i?e.Array(arguments,0,!0).concat(i):arguments;return s.apply(r||s,o)}}},"@VERSION@",{requires:["yui-base"]}),YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name +:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"@VERSION@",{requires:["yui-base"]}),YUI.add("dom-core",function(e,t){var n="nodeType",r="ownerDocument",i="documentElement",s="defaultView",o="parentWindow",u="tagName",a="parentNode",f="previousSibling",l="nextSibling",c="contains",h="compareDocumentPosition",p=[],d=function(){var t=e.config.doc.createElement("div"),n=t.appendChild(e.config.doc.createTextNode("")),r=!1;try{r=t.contains(n)}catch(i){}return r}(),v={byId:function(e,t){return v.allById(e,t)[0]||null},getId:function(e){var t;return e.id&&!e.id.tagName&&!e.id.item?t=e.id:e.attributes&&e.attributes.id&&(t=e.attributes.id.value),t},setId:function(e,t){e.setAttribute?e.setAttribute("id",t):e.id=t},ancestor:function(e,t,n,r){var i=null;return n&&(i=!t||t(e)?e:null),i||v.elementByAxis(e,a,t,null,r)},ancestors:function(e,t,n,r){var i=e,s=[];while(i=v.ancestor(i,t,n,r)){n=!1;if(i){s.unshift(i);if(r&&r(i))return s}}return s},elementByAxis:function(e,t,n,r,i){while(e&&(e=e[t])){if((r||e[u])&&(!n||n(e)))return e;if(i&&i(e))return null}return null},contains:function(e,t){var r=!1;if(!t||!e||!t[n]||!e[n])r=!1;else if(e[c]&&(t[n]===1||d))r=e[c](t);else if(e[h]){if(e===t||!!(e[h](t)&16))r=!0}else r=v._bruteContains(e,t);return r},inDoc:function(e,t){var n=!1,s;return e&&e.nodeType&&(t||(t=e[r]),s=t[i],s&&s.contains&&e.tagName?n=s.contains(e):n=v.contains(s,e)),n},allById:function(t,n){n=n||e.config.doc;var r=[],i=[],s,o;if(n.querySelectorAll)i=n.querySelectorAll('[id="'+t+'"]');else if(n.all){r=n.all(t);if(r){r.nodeName&&(r.id===t?(i.push(r),r=p):r=[r]);if(r.length)for(s=0;o=r[s++];)(o.id===t||o.attributes&&o.attributes.id&&o.attributes.id.value===t)&&i.push(o)}}else i=[v._getDoc(n).getElementById(t)];return i},isWindow:function(e){return!!(e&&e.scrollTo&&e.document)},_removeChildNodes:function(e){while(e.firstChild)e.removeChild(e.firstChild)},siblings:function(e,t){var n=[],r=e;while(r=r[f])r[u]&&(!t||t(r))&&n.unshift(r);r=e;while(r=r[l])r[u]&&(!t||t(r))&&n.push(r);return n},_bruteContains:function(e,t){while(t){if(e===t)return!0;t=t.parentNode}return!1},_getRegExp:function(e,t){return t=t||"",v._regexCache=v._regexCache||{},v._regexCache[e+t]||(v._regexCache[e+t]=new RegExp(e,t)),v._regexCache[e+t]},_getDoc:function(t){var i=e.config.doc;return t&&(i=t[n]===9?t:t[r]||t.document||e.config.doc),i},_getWin:function(t){var n=v._getDoc(t);return n[s]||n[o]||e.config.win},_batch:function(e,t,n,r,i,s){t=typeof t=="string"?v[t]:t;var o,u=0,a,f;if(t&&e)while(a=e[u++])o=o=t.call(v,a,n,r,i,s),typeof o!="undefined"&&(f||(f=[]),f.push(o));return typeof f!="undefined"?f:e},generateID:function(t){var n=t.id;return n||(n=e.stamp(t),t.id=n),n}};e.DOM=v},"@VERSION@",{requires:["oop","features"]}),YUI.add("dom-base",function(e,t){var n=e.config.doc.documentElement,r=e.DOM,i="tagName",s="ownerDocument",o="",u=e.Features.add,a=e.Features.test;e.mix(r,{getText:n.textContent!==undefined?function(e){var t="";return e&&(t=e.textContent),t||""}:function(e){var t="";return e&&(t=e.innerText||e.nodeValue),t||""},setText:n.textContent!==undefined?function(e,t){e&&(e.textContent=t)}:function(e,t){"innerText"in e?e.innerText=t:"nodeValue"in e&&(e.nodeValue=t)},CUSTOM_ATTRIBUTES:n.hasAttribute?{htmlFor:"for",className:"class"}:{"for":"htmlFor","class":"className"},setAttribute:function(e,t,n,i){e&&t&&e.setAttribute&&(t=r.CUSTOM_ATTRIBUTES[t]||t,e.setAttribute(t,n,i))},getAttribute:function(e,t,n){n=n!==undefined?n:2;var i="";return e&&t&&e.getAttribute&&(t=r.CUSTOM_ATTRIBUTES[t]||t,i=e.getAttribute(t,n),i===null&&(i="")),i},VALUE_SETTERS:{},VALUE_GETTERS:{},getValue:function(e){var t="",n;return e&&e[i]&&(n=r.VALUE_GETTERS[e[i].toLowerCase()],n?t=n(e):t=e.value),t===o&&(t=o),typeof t=="string"?t:""},setValue:function(e,t){var n;e&&e[i]&&(n=r.VALUE_SETTERS[e[i].toLowerCase()],n?n(e,t):e.value=t)},creators:{}}),u("value-set","select",{test:function(){var t=e.config.doc.createElement("select");return t.innerHTML="",t.value="2",t.value&&t.value==="2"}}),a("value-set","select")||(r.VALUE_SETTERS.select=function(e,t){for(var n=0,i=e.getElementsByTagName("option"),s;s=i[n++];)if(r.getValue(s)===t){s.selected=!0;break}}),e.mix(r.VALUE_GETTERS,{button:function(e){return e.attributes&&e.attributes.value?e.attributes.value.value:""}}),e.mix(r.VALUE_SETTERS,{button:function(e,t){var n=e.attributes.value;n||(n=e[s].createAttribute("value"),e.setAttributeNode(n)),n.value=t}}),e.mix(r.VALUE_GETTERS,{option:function(e){var t=e.attributes;return t.value&&t.value.specified?e.value:e.text},select:function(e){var t=e.value,n=e.options;return n&&n.length&&(e.multiple||e.selectedIndex>-1&&(t=r.getValue(n[e.selectedIndex]))),t}});var f,l,c;e.mix(e.DOM +,{hasClass:function(t,n){var r=e.DOM._getRegExp("(?:^|\\s+)"+n+"(?:\\s+|$)");return r.test(t.className)},addClass:function(t,n){e.DOM.hasClass(t,n)||(t.className=e.Lang.trim([t.className,n].join(" ")))},removeClass:function(t,n){n&&l(t,n)&&(t.className=e.Lang.trim(t.className.replace(e.DOM._getRegExp("(?:^|\\s+)"+n+"(?:\\s+|$)")," ")),l(t,n)&&c(t,n))},replaceClass:function(e,t,n){c(e,t),f(e,n)},toggleClass:function(e,t,n){var r=n!==undefined?n:!l(e,t);r?f(e,t):c(e,t)}}),l=e.DOM.hasClass,c=e.DOM.removeClass,f=e.DOM.addClass;var h=/<([a-z]+)/i,r=e.DOM,u=e.Features.add,a=e.Features.test,p={},d=function(t,n){var r=e.config.doc.createElement("div"),i=!0;r.innerHTML=t;if(!r.firstChild||r.firstChild.tagName!==n.toUpperCase())i=!1;return i},v=/(?:\/(?:thead|tfoot|tbody|caption|col|colgroup)>)+\s*
    "}catch(n){return!1}return t.firstChild&&t.firstChild.nodeName==="TBODY"}}),u("innerhtml-div","tr",{test:function(){return d("","tr")}}),u("innerhtml-div","script",{test:function(){return d("","script")}}),a("innerhtml","table")||(p.tbody=function(t,n){var i=r.create(m+t+g,n),s=e.DOM._children(i,"tbody")[0];return i.children.length>1&&s&&!v.test(t)&&s.parentNode.removeChild(s),i}),a("innerhtml-div","script")||(p.script=function(e,t){var n=t.createElement("div");return n.innerHTML="-"+e,n.removeChild(n.firstChild),n},p.link=p.style=p.script),a("innerhtml-div","tr")||(e.mix(p,{option:function(e,t){return r.create('",t)},tr:function(e,t){return r.create(""+e+"",t)},td:function(e,t){return r.create(""+e+"",t)},col:function(e,t){return r.create(""+e+"",t)},tbody:"table"}),e.mix(p,{legend:"fieldset",th:p.td,thead:p.tbody,tfoot:p.tbody,caption:p.tbody,colgroup:p.tbody,optgroup:p.option})),r.creators=p,e.mix(e.DOM,{setWidth:function(t,n){e.DOM._setSize(t,"width",n)},setHeight:function(t,n){e.DOM._setSize(t,"height",n)},_setSize:function(e,t,n){n=n>0?n:0;var r=0;e.style[t]=n+"px",r=t==="height"?e.offsetHeight:e.offsetWidth,r>n&&(n-=r-n,n<0&&(n=0),e.style[t]=n+"px")}})},"@VERSION@",{requires:["dom-core"]}),YUI.add("color-base",function(e,t){var n=/^#?([\da-fA-F]{2})([\da-fA-F]{2})([\da-fA-F]{2})(\ufffe)?/,r=/^#?([\da-fA-F]{1})([\da-fA-F]{1})([\da-fA-F]{1})(\ufffe)?/,i=/rgba?\(([\d]{1,3}), ?([\d]{1,3}), ?([\d]{1,3}),? ?([.\d]*)?\)/,s={HEX:"hex",RGB:"rgb",RGBA:"rgba"},o={hex:"toHex",rgb:"toRGB",rgba:"toRGBA"};e.Color={KEYWORDS:{black:"000",silver:"c0c0c0",gray:"808080",white:"fff",maroon:"800000",red:"f00",purple:"800080",fuchsia:"f0f",green:"008000",lime:"0f0",olive:"808000",yellow:"ff0",navy:"000080",blue:"00f",teal:"008080",aqua:"0ff"},REGEX_HEX:n,REGEX_HEX3:r,REGEX_RGB:i,re_RGB:i,re_hex:n,re_hex3:r,STR_HEX:"#{*}{*}{*}",STR_RGB:"rgb({*}, {*}, {*})",STR_RGBA:"rgba({*}, {*}, {*}, {*})",TYPES:s,CONVERTS:o,convert:function(t,n){var r=e.Color.CONVERTS[n.toLowerCase()],i=t;return r&&e.Color[r]&&(i=e.Color[r](t)),i},toHex:function(t){var n=e.Color._convertTo(t,"hex"),r=n.toLowerCase()==="transparent";return n.charAt(0)!=="#"&&!r&&(n="#"+n),r?n.toLowerCase():n.toUpperCase()},toRGB:function(t){var n=e.Color._convertTo(t,"rgb");return n.toLowerCase()},toRGBA:function(t){var n=e.Color._convertTo(t,"rgba");return n.toLowerCase()},toArray:function(t){var n=e.Color.findType(t).toUpperCase(),r,i,s,o;return n==="HEX"&&t.length<5&&(n="HEX3"),n.charAt(n.length-1)==="A"&&(n=n.slice(0,-1)),r=e.Color["REGEX_"+n],r&&(i=r.exec(t)||[],s=i.length,s&&(i.shift(),s--,n==="HEX3"&&(i[0]+=i[0],i[1]+=i[1],i[2]+=i[2]),o=i[s-1],o||(i[s-1]=1))),i},fromArray:function(t,n){t=t.concat();if(typeof n=="undefined")return t.join(", ");var r="{*}";n=e.Color["STR_"+n.toUpperCase()],t.length===3&&n.match(/\{\*\}/g).length===4&&t.push(1);while(n.indexOf(r)>=0&&t.length>0)n=n.replace(r,t.shift());return n},findType +:function(t){if(e.Color.KEYWORDS[t])return"keyword";var n=t.indexOf("("),r;return n>0&&(r=t.substr(0,n)),r&&e.Color.TYPES[r.toUpperCase()]?e.Color.TYPES[r.toUpperCase()]:"hex"},_getAlpha:function(t){var n,r=e.Color.toArray(t);return r.length>3&&(n=r.pop()),+n||1},_keywordToHex:function(t){var n=e.Color.KEYWORDS[t];if(n)return n},_convertTo:function(t,n){if(t==="transparent")return t;var r=e.Color.findType(t),i=n,s,o,u,a;return r==="keyword"&&(t=e.Color._keywordToHex(t),r="hex"),r==="hex"&&t.length<5&&(t.charAt(0)==="#"&&(t=t.substr(1)),t="#"+t.charAt(0)+t.charAt(0)+t.charAt(1)+t.charAt(1)+t.charAt(2)+t.charAt(2)),r===n?t:(r.charAt(r.length-1)==="a"&&(r=r.slice(0,-1)),s=n.charAt(n.length-1)==="a",s&&(n=n.slice(0,-1),o=e.Color._getAlpha(t)),a=n.charAt(0).toUpperCase()+n.substr(1).toLowerCase(),u=e.Color["_"+r+"To"+a],u||r!=="rgb"&&n!=="rgb"&&(t=e.Color["_"+r+"ToRgb"](t),r="rgb",u=e.Color["_"+r+"To"+a]),u&&(t=u(t,s)),s&&(e.Lang.isArray(t)||(t=e.Color.toArray(t)),t.push(o),t=e.Color.fromArray(t,i.toUpperCase())),t)},_hexToRgb:function(e,t){var n,r,i;return e.charAt(0)==="#"&&(e=e.substr(1)),e=parseInt(e,16),n=e>>16,r=e>>8&255,i=e&255,t?[n,r,i]:"rgb("+n+", "+r+", "+i+")"},_rgbToHex:function(t){var n=e.Color.toArray(t),r=n[2]|n[1]<<8|n[0]<<16;r=(+r).toString(16);while(r.length<6)r="0"+r;return"#"+r}}},"@VERSION@",{requires:["yui-base"]}),YUI.add("dom-style",function(e,t){(function(e){var t="documentElement",n="defaultView",r="ownerDocument",i="style",s="float",o="cssFloat",u="styleFloat",a="transparent",f="getComputedStyle",l="getBoundingClientRect",c=e.config.win,h=e.config.doc,p=undefined,d=e.DOM,v="transform",m="transformOrigin",g=["WebkitTransform","MozTransform","OTransform","msTransform"],y=/color$/i,b=/width|height|top|left|right|bottom|margin|padding/i;e.Array.each(g,function(e){e in h[t].style&&(v=e,m=e+"Origin")}),e.mix(d,{DEFAULT_UNIT:"px",CUSTOM_STYLES:{},setStyle:function(e,t,n,r){r=r||e.style;var i=d.CUSTOM_STYLES;if(r){n===null||n===""?n="":!isNaN(new Number(n))&&b.test(t)&&(n+=d.DEFAULT_UNIT);if(t in i){if(i[t].set){i[t].set(e,n,r);return}typeof i[t]=="string"&&(t=i[t])}else t===""&&(t="cssText",n="");r[t]=n}},getStyle:function(e,t,n){n=n||e.style;var r=d.CUSTOM_STYLES,i="";if(n){if(t in r){if(r[t].get)return r[t].get(e,t,n);typeof r[t]=="string"&&(t=r[t])}i=n[t],i===""&&(i=d[f](e,t))}return i},setStyles:function(t,n){var r=t.style;e.each(n,function(e,n){d.setStyle(t,n,e,r)},d)},getComputedStyle:function(e,t){var s="",o=e[r],u;return e[i]&&o[n]&&o[n][f]&&(u=o[n][f](e,null),u&&(s=u[t])),s}}),h[t][i][o]!==p?d.CUSTOM_STYLES[s]=o:h[t][i][u]!==p&&(d.CUSTOM_STYLES[s]=u),e.UA.opera&&(d[f]=function(t,i){var s=t[r][n],o=s[f](t,"")[i];return y.test(i)&&(o=e.Color.toRGB(o)),o}),e.UA.webkit&&(d[f]=function(e,t){var i=e[r][n],s=i[f](e,"")[t];return s==="rgba(0, 0, 0, 0)"&&(s=a),s}),e.DOM._getAttrOffset=function(t,n){var r=e.DOM[f](t,n),i=t.offsetParent,s,o,u;return r==="auto"&&(s=e.DOM.getStyle(t,"position"),s==="static"||s==="relative"?r=0:i&&i[l]&&(o=i[l]()[n],u=t[l]()[n],n==="left"||n==="top"?r=u-o:r=o-t[l]()[n])),r},e.DOM._getOffset=function(e){var t,n=null;return e&&(t=d.getStyle(e,"position"),n=[parseInt(d[f](e,"left"),10),parseInt(d[f](e,"top"),10)],isNaN(n[0])&&(n[0]=parseInt(d.getStyle(e,"left"),10),isNaN(n[0])&&(n[0]=t==="relative"?0:e.offsetLeft||0)),isNaN(n[1])&&(n[1]=parseInt(d.getStyle(e,"top"),10),isNaN(n[1])&&(n[1]=t==="relative"?0:e.offsetTop||0))),n},d.CUSTOM_STYLES.transform={set:function(e,t,n){n[v]=t},get:function(e,t){return d[f](e,v)}},d.CUSTOM_STYLES.transformOrigin={set:function(e,t,n){n[m]=t},get:function(e,t){return d[f](e,m)}}})(e)},"@VERSION@",{requires:["dom-base","color-base"]}),YUI.add("dom-style-ie",function(e,t){(function(e){var t="hasLayout",n="px",r="filter",i="filters",s="opacity",o="auto",u="borderWidth",a="borderTopWidth",f="borderRightWidth",l="borderBottomWidth",c="borderLeftWidth",h="width",p="height",d="transparent",v="visible",m="getComputedStyle",g=undefined,y=e.config.doc.documentElement,b=e.Features.test,w=e.Features.add,E=/^(\d[.\d]*)+(em|ex|px|gd|rem|vw|vh|vm|ch|mm|cm|in|pt|pc|deg|rad|ms|s|hz|khz|%){1}?/i,S=e.UA.ie>=8,x=function(e){return e.currentStyle||e.style},T={CUSTOM_STYLES:{},get:function(t,r){var i="",o;return t&&(o=x(t)[r],r===s&&e.DOM.CUSTOM_STYLES[s]?i=e.DOM.CUSTOM_STYLES[s].get(t):!o||o.indexOf&&o.indexOf(n)>-1?i=o:e.DOM.IE.COMPUTED[r]?i=e.DOM.IE.COMPUTED[r](t,r):E.test(o)?i=T.getPixel(t,r)+n:i=o),i},sizeOffsets:{width:["Left","Right"],height:["Top","Bottom"],top:["Top"],bottom:["Bottom"]},getOffset:function(e,t){var r=x(e)[t],i=t.charAt(0).toUpperCase()+t.substr(1),s="offset"+i,u="pixel"+i,a=T.sizeOffsets[t],f=e.ownerDocument.compatMode,l="";return r===o||r.indexOf("%")>-1?(l=e["offset"+i],f!=="BackCompat"&&(a[0]&&(l-=T.getPixel(e,"padding"+a[0]),l-=T.getBorderWidth(e,"border"+a[0]+"Width",1)),a[1]&&(l-=T.getPixel(e,"padding"+a[1]),l-=T.getBorderWidth(e,"border"+a[1]+"Width",1)))):(!e.style[u]&&!e.style[t]&&(e.style[t]=r),l=e.style[u]),l+n},borderMap:{thin:S?"1px":"2px",medium:S?"3px":"4px",thick:S?"5px":"6px"},getBorderWidth:function(e,t,r){var i=r?"":n,s=e.currentStyle[t];return s.indexOf(n)<0&&(T.borderMap[s]&&e.currentStyle.borderStyle!=="none"?s=T.borderMap[s]:s=0),r?parseFloat(s):s},getPixel:function(e,t){var n=null,r=x(e),i=r.right,s=r[t];return e.style.right=s,n=e.style.pixelRight,e.style.right=i,n},getMargin:function(e,t){var r,i=x(e);return i[t]==o?r=0:r=T.getPixel(e,t),r+n},getVisibility:function(e,t){var n;while((n=e.currentStyle)&&n[t]=="inherit")e=e.parentNode;return n?n[t]:v},getColor:function(t,n){var r=x(t)[n];return(!r||r===d)&&e.DOM.elementByAxis(t,"parentNode",null,function(e){r=x(e)[n];if(r&&r!==d)return t=e,!0}),e.Color.toRGB(r)},getBorderColor:function(t,n){var r=x(t),i=r[n]||r.color;return e.Color.toRGB(e.Color.toHex(i))}},N={};w("style","computedStyle",{test:function(){return"getComputedStyle"in e.config.win}}),w("style","opacity",{test:function(){return"opacity"in y.style}}),w("style","filter",{test:function( +){return"filters"in y}}),!b("style","opacity")&&b("style","filter")&&(e.DOM.CUSTOM_STYLES[s]={get:function(e){var t=100;try{t=e[i]["DXImageTransform.Microsoft.Alpha"][s]}catch(n){try{t=e[i]("alpha")[s]}catch(r){}}return t/100},set:function(e,n,i){var o,u=x(e),a=u[r];i=i||e.style,n===""&&(o=s in u?u[s]:1,n=o),typeof a=="string"&&(i[r]=a.replace(/alpha([^)]*\))/gi,"")+(n<1?"alpha("+s+"="+n*100+")":""),i[r]||i.removeAttribute(r),u[t]||(i.zoom=1))}});try{e.config.doc.createElement("div").style.height="-1px"}catch(C){e.DOM.CUSTOM_STYLES.height={set:function(e,t,n){var r=parseFloat(t);if(r>=0||t==="auto"||t==="")n.height=t}},e.DOM.CUSTOM_STYLES.width={set:function(e,t,n){var r=parseFloat(t);if(r>=0||t==="auto"||t==="")n.width=t}}}b("style","computedStyle")||(N[h]=N[p]=T.getOffset,N.color=N.backgroundColor=T.getColor,N[u]=N[a]=N[f]=N[l]=N[c]=T.getBorderWidth,N.marginTop=N.marginRight=N.marginBottom=N.marginLeft=T.getMargin,N.visibility=T.getVisibility,N.borderColor=N.borderTopColor=N.borderRightColor=N.borderBottomColor=N.borderLeftColor=T.getBorderColor,e.DOM[m]=T.get,e.namespace("DOM.IE"),e.DOM.IE.COMPUTED=N,e.DOM.IE.ComputedStyle=T)})(e)},"@VERSION@",{requires:["dom-style"]}),YUI.add("dom-screen",function(e,t){(function(e){var t="documentElement",n="compatMode",r="position",i="fixed",s="relative",o="left",u="top",a="BackCompat",f="medium",l="borderLeftWidth",c="borderTopWidth",h="getBoundingClientRect",p="getComputedStyle",d=e.DOM,v=/^t(?:able|d|h)$/i,m;e.UA.ie&&(e.config.doc[n]!=="BackCompat"?m=t:m="body"),e.mix(d,{winHeight:function(e){var t=d._getWinSize(e).height;return t},winWidth:function(e){var t=d._getWinSize(e).width;return t},docHeight:function(e){var t=d._getDocSize(e).height;return Math.max(t,d._getWinSize(e).height)},docWidth:function(e){var t=d._getDocSize(e).width;return Math.max(t,d._getWinSize(e).width)},docScrollX:function(n,r){r=r||n?d._getDoc(n):e.config.doc;var i=r.defaultView,s=i?i.pageXOffset:0;return Math.max(r[t].scrollLeft,r.body.scrollLeft,s)},docScrollY:function(n,r){r=r||n?d._getDoc(n):e.config.doc;var i=r.defaultView,s=i?i.pageYOffset:0;return Math.max(r[t].scrollTop,r.body.scrollTop,s)},getXY:function(){return e.config.doc[t][h]?function(r){var i=null,s,o,u,f,l,c,p,v,g,y;if(r&&r.tagName){p=r.ownerDocument,u=p[n],u!==a?y=p[t]:y=p.body,y.contains?g=y.contains(r):g=e.DOM.contains(y,r);if(g){v=p.defaultView,v&&"pageXOffset"in v?(s=v.pageXOffset,o=v.pageYOffset):(s=m?p[m].scrollLeft:d.docScrollX(r,p),o=m?p[m].scrollTop:d.docScrollY(r,p)),e.UA.ie&&(!p.documentMode||p.documentMode<8||u===a)&&(l=y.clientLeft,c=y.clientTop),f=r[h](),i=[f.left,f.top];if(l||c)i[0]-=l,i[1]-=c;if(o||s)if(!e.UA.ios||e.UA.ios>=4.2)i[0]+=s,i[1]+=o}else i=d._getOffset(r)}return i}:function(t){var n=null,s,o,u,a,f;if(t)if(d.inDoc(t)){n=[t.offsetLeft,t.offsetTop],s=t.ownerDocument,o=t,u=e.UA.gecko||e.UA.webkit>519?!0:!1;while(o=o.offsetParent)n[0]+=o.offsetLeft,n[1]+=o.offsetTop,u&&(n=d._calcBorders(o,n));if(d.getStyle(t,r)!=i){o=t;while(o=o.parentNode){a=o.scrollTop,f=o.scrollLeft,e.UA.gecko&&d.getStyle(o,"overflow")!=="visible"&&(n=d._calcBorders(o,n));if(a||f)n[0]-=f,n[1]-=a}n[0]+=d.docScrollX(t,s),n[1]+=d.docScrollY(t,s)}else n[0]+=d.docScrollX(t,s),n[1]+=d.docScrollY(t,s)}else n=d._getOffset(t);return n}}(),getScrollbarWidth:e.cached(function(){var t=e.config.doc,n=t.createElement("div"),r=t.getElementsByTagName("body")[0],i=.1;return r&&(n.style.cssText="position:absolute;visibility:hidden;overflow:scroll;width:20px;",n.appendChild(t.createElement("p")).style.height="1px",r.insertBefore(n,r.firstChild),i=n.offsetWidth-n.clientWidth,r.removeChild(n)),i},null,.1),getX:function(e){return d.getXY(e)[0]},getY:function(e){return d.getXY(e)[1]},setXY:function(e,t,n){var i=d.setStyle,a,f,l,c;e&&t&&(a=d.getStyle(e,r),f=d._getOffset(e),a=="static"&&(a=s,i(e,r,a)),c=d.getXY(e),t[0]!==null&&i(e,o,t[0]-c[0]+f[0]+"px"),t[1]!==null&&i(e,u,t[1]-c[1]+f[1]+"px"),n||(l=d.getXY(e),(l[0]!==t[0]||l[1]!==t[1])&&d.setXY(e,t,!0)))},setX:function(e,t){return d.setXY(e,[t,null])},setY:function(e,t){return d.setXY(e,[null,t])},swapXY:function(e,t){var n=d.getXY(e);d.setXY(e,d.getXY(t)),d.setXY(t,n)},_calcBorders:function(t,n){var r=parseInt(d[p](t,c),10)||0,i=parseInt(d[p](t,l),10)||0;return e.UA.gecko&&v.test(t.tagName)&&(r=0,i=0),n[0]+=i,n[1]+=r,n},_getWinSize:function(r,i){i=i||r?d._getDoc(r):e.config.doc;var s=i.defaultView||i.parentWindow,o=i[n],u=s.innerHeight,a=s.innerWidth,f=i[t];return o&&!e.UA.opera&&(o!="CSS1Compat"&&(f=i.body),u=f.clientHeight,a=f.clientWidth),{height:u,width:a}},_getDocSize:function(r){var i=r?d._getDoc(r):e.config.doc,s=i[t];return i[n]!="CSS1Compat"&&(s=i.body),{height:s.scrollHeight,width:s.scrollWidth}}})})(e),function(e){var t="top",n="right",r="bottom",i="left",s=function(e,s){var o=Math.max(e[t],s[t]),u=Math.min(e[n],s[n]),a=Math.min(e[r],s[r]),f=Math.max(e[i],s[i]),l={};return l[t]=o,l[n]=u,l[r]=a,l[i]=f,l},o=e.DOM;e.mix(o,{region:function(e){var t=o.getXY(e),n=!1;return e&&t&&(n=o._getRegion(t[1],t[0]+e.offsetWidth,t[1]+e.offsetHeight,t[0])),n},intersect:function(u,a,f){var l=f||o.region(u),c={},h=a,p;if(h.tagName)c=o.region(h);else{if(!e.Lang.isObject(a))return!1;c=a}return p=s(c,l),{top:p[t],right:p[n],bottom:p[r],left:p[i],area:(p[r]-p[t])*(p[n]-p[i]),yoff:p[r]-p[t],xoff:p[n]-p[i],inRegion:o.inRegion(u,a,!1,f)}},inRegion:function(u,a,f,l){var c={},h=l||o.region(u),p=a,d;if(p.tagName)c=o.region(p);else{if(!e.Lang.isObject(a))return!1;c=a}return f?h[i]>=c[i]&&h[n]<=c[n]&&h[t]>=c[t]&&h[r]<=c[r]:(d=s(c,h),d[r]>=d[t]&&d[n]>=d[i]?!0:!1)},inViewportRegion:function(e,t,n){return o.inRegion(e,o.viewportRegion(e),t,n)},_getRegion:function(e,s,o,u){var a={};return a[t]=a[1]=e,a[i]=a[0]=u,a[r]=o,a[n]=s,a.width=a[n]-a[i],a.height=a[r]-a[t],a},viewportRegion:function(t){t=t||e.config.doc.documentElement;var n=!1,r,i;return t&&(r=o.docScrollX(t),i=o.docScrollY(t),n=o._getRegion(i,o.winWidth(t)+r,i+o.winHeight(t),r)),n}})}(e)},"@VERSION@",{requires:["dom-base","dom-style"]}),YUI.add("selector-native" +,function(e,t){(function(e){e.namespace("Selector");var t="compareDocumentPosition",n="ownerDocument",r={_types:{esc:{token:"\ue000",re:/\\[:\[\]\(\)#\.\'\>+~"]/gi},attr:{token:"\ue001",re:/(\[[^\]]*\])/g},pseudo:{token:"\ue002",re:/(\([^\)]*\))/g}},useNative:!0,_escapeId:function(e){return e&&(e=e.replace(/([:\[\]\(\)#\.'<>+~"])/g,"\\$1")),e},_compare:"sourceIndex"in e.config.doc.documentElement?function(e,t){var n=e.sourceIndex,r=t.sourceIndex;return n===r?0:n>r?1:-1}:e.config.doc.documentElement[t]?function(e,n){return e[t](n)&4?-1:1}:function(e,t){var r,i,s;return e&&t&&(r=e[n].createRange(),r.setStart(e,0),i=t[n].createRange(),i.setStart(t,0),s=r.compareBoundaryPoints(1,i)),s},_sort:function(t){return t&&(t=e.Array(t,0,!0),t.sort&&t.sort(r._compare)),t},_deDupe:function(e){var t=[],n,r;for(n=0;r=e[n++];)r._found||(t[t.length]=r,r._found=!0);for(n=0;r=t[n++];)r._found=null,r.removeAttribute("_found");return t},query:function(t,n,i,s){n=n||e.config.doc;var o=[],u=e.Selector.useNative&&e.config.doc.querySelector&&!s,a=[[t,n]],f,l,c,h=u?e.Selector._nativeQuery:e.Selector._bruteQuery;if(t&&h){!s&&(!u||n.tagName)&&(a=r._splitQueries(t,n));for(c=0;f=a[c++];)l=h(f[0],f[1],i),i||(l=e.Array(l,0,!0)),l&&(o=o.concat(l));a.length>1&&(o=r._sort(r._deDupe(o)))}return i?o[0]||null:o},_replaceSelector:function(t){var n=e.Selector._parse("esc",t),i,s;return t=e.Selector._replace("esc",t),s=e.Selector._parse("pseudo",t),t=r._replace("pseudo",t),i=e.Selector._parse("attr",t),t=e.Selector._replace("attr",t),{esc:n,attrs:i,pseudos:s,selector:t}},_restoreSelector:function(t){var n=t.selector;return n=e.Selector._restore("attr",n,t.attrs),n=e.Selector._restore("pseudo",n,t.pseudos),n=e.Selector._restore("esc",n,t.esc),n},_replaceCommas:function(t){var n=e.Selector._replaceSelector(t),t=n.selector;return t&&(t=t.replace(/,/g,"\ue007"),n.selector=t,t=e.Selector._restoreSelector(n)),t},_splitQueries:function(t,n){t.indexOf(",")>-1&&(t=e.Selector._replaceCommas(t));var r=t.split("\ue007"),i=[],s="",o,u,a;if(n){n.nodeType===1&&(o=e.Selector._escapeId(e.DOM.getId(n)),o||(o=e.guid(),e.DOM.setId(n,o)),s='[id="'+o+'"] ');for(u=0,a=r.length;u-1&&e.Selector.pseudos&&e.Selector.pseudos.checked)return e.Selector.query(t,n,r,!0);try{return n["querySelector"+(r?"":"All")](t)}catch(i){return e.Selector.query(t,n,r,!0)}},filter:function(t,n){var r=[],i,s;if(t&&n)for(i=0;s=t[i++];)e.Selector.test(s,n)&&(r[r.length]=s);return r},test:function(t,r,i){var s=!1,o=!1,u,a,f,l,c,h,p,d,v;if(t&&t.tagName)if(typeof r=="function")s=r.call(t,t);else{u=r.split(","),!i&&!e.DOM.inDoc(t)&&(a=t.parentNode,a?i=a:(c=t[n].createDocumentFragment(),c.appendChild(t),i=c,o=!0)),i=i||t[n],h=e.Selector._escapeId(e.DOM.getId(t)),h||(h=e.guid(),e.DOM.setId(t,h));for(p=0;v=u[p++];){v+='[id="'+h+'"]',l=e.Selector.query(v,i);for(d=0;f=l[d++];)if(f===t){s=!0;break}if(s)break}o&&c.removeChild(t)}return s},ancestor:function(t,n,r){return e.DOM.ancestor(t,function(t){return e.Selector.test(t,n)},r)},_parse:function(t,n){return n.match(e.Selector._types[t].re)},_replace:function(t,n){var r=e.Selector._types[t];return n.replace(r.re,r.token)},_restore:function(t,n,r){if(r){var i=e.Selector._types[t].token,s,o;for(s=0,o=r.length;s2?f.call(arguments,2):null;return this._on(e,t,n,!0)},on:function(e,t){var n=arguments.length>2?f.call(arguments,2):null;return this.monitored&&this.host&&this.host._monitor("attach",this,{args:arguments}),this._on(e,t,n,!0)},after:function(e,t){var n=arguments.length>2?f.call(arguments,2):null;return this._on(e,t,n,o)},detach:function(e,t){if(e&&e.detach)return e.detach();var n,r,i=0,s=this._subscribers,o=this._afters;if(s)for(n=s.length;n>=0;n--)r=s[n],r&&(!e||e===r.fn)&&(this._delete(r,s,n),i++);if(o)for(n=o.length;n>=0;n--)r=o[n],r&&(!e||e===r.fn)&&(this._delete(r,o,n),i++);return i},unsubscribe:function(){return this.detach.apply(this,arguments)},_notify:function(e,t,n){this.log(this.type+"->"+"sub: "+e.id);var r;return r=e.notify(t,this),!1===r||this.stopped>1?(this.log(this.type+" cancelled by subscriber"),!1):!0},log:function(e,t){},fire:function(){var e=[];return e.push.apply(e,arguments),this._fire(e)},_fire:function(e){return this.fireOnce&&this.fired?(this.log("fireOnce event: "+this.type+" already fired"),!0):(this.fired=!0,this.fireOnce&&(this.firedWith=e),this.emitFacade?this.fireComplex(e):this.fireSimple(e))},fireSimple:function(e){this.stopped=0,this.prevented=0;if(this.hasSubs()){var t=this.getSubs();this._procSubs(t[0],e),this._procSubs(t[1],e)}return this.broadcast&&this._broadcast(e),this.stopped?!1:!0},fireComplex:function(e){return this.log("Missing event-custom-complex needed to emit a facade for: "+this.type),e[0]=e[0]||{},this.fireSimple(e)},_procSubs:function(e,t,n){var r,i,s;for(i=0,s=e.length;i-1?e:t+d+e},w=e.cached(function(e,t){var n=e,r,i,s;return p.isString(n)?(s=n.indexOf(m),s>-1&&(i=!0,n=n.substr(m.length)),s=n.indexOf(v),s>-1&&(r=n.substr(0,s),n=n.substr(s+1),n==="*"&&(n=null)),[r,t?b(n,t):n,i,n]):n}),E=function(t){var n=this._yuievt,r;n||(n=this._yuievt={events:{},targets:null,config:{host:this,context:this},chain:e.config.chain}),r=n.config,t&&(h(r,t,!0),t.chain!==undefined&&(n.chain=t.chain),t.prefix&&(r.prefix=t.prefix))};E.prototype={constructor:E,once:function(){var e=this.on.apply(this,arguments);return e.batch(function(e){e.sub&&(e.sub.once=!0)}),e},onceAfter:function(){var e=this.after.apply(this,arguments);return e.batch(function(e){e.sub&&(e.sub.once=!0)}),e},parseType:function(e,t){return w(e,t||this._yuievt.config.prefix)},on:function(t,n,r){var i=this._yuievt,s=w(t,i.config.prefix),o,u,a,l,c,h,d,v=e.Env.evt.handles,g,y,b,E=e.Node,S,x,T;this._monitor("attach",s[1],{args:arguments,category:s[0],after:s[2]});if(p.isObject(t))return p.isFunction(t)?e.Do.before.apply(e.Do,arguments):(o=n,u=r,a=f.call(arguments,0),l=[],p.isArray(t)&&(T=!0),g=t._after,delete t._after,e.each(t,function(e,t){p.isObject(e)&&(o=e.fn||(p.isFunction(e)?e:o), +u=e.context||u);var n=g?m:"";a[0]=n+(T?e:t),a[1]=o,a[2]=u,l.push(this.on.apply(this,a))},this),i.chain?this:new e.EventHandle(l));h=s[0],g=s[2],b=s[3];if(E&&e.instanceOf(this,E)&&b in E.DOM_EVENTS)return a=f.call(arguments,0),a.splice(2,0,E.getDOMNode(this)),e.on.apply(e,a);t=s[1];if(e.instanceOf(this,YUI)){y=e.Env.evt.plugins[t],a=f.call(arguments,0),a[0]=b,E&&(S=a[2],e.instanceOf(S,e.NodeList)?S=e.NodeList.getDOMNodes(S):e.instanceOf(S,E)&&(S=E.getDOMNode(S)),x=b in E.DOM_EVENTS,x&&(a[2]=S));if(y)d=y.on.apply(e,a);else if(!t||x)d=e.Event._attach(a)}return d||(c=i.events[t]||this.publish(t),d=c._on(n,r,arguments.length>3?f.call(arguments,3):null,g?"after":!0),t.indexOf("*:")!==-1&&(this._hasSiblings=!0)),h&&(v[h]=v[h]||{},v[h][t]=v[h][t]||[],v[h][t].push(d)),i.chain?this:d},subscribe:function(){return this.on.apply(this,arguments)},detach:function(t,n,r){var i=this._yuievt.events,s,o=e.Node,u=o&&e.instanceOf(this,o);if(!t&&this!==e){for(s in i)i.hasOwnProperty(s)&&i[s].detach(n,r);return u&&e.Event.purgeElement(o.getDOMNode(this)),this}var a=w(t,this._yuievt.config.prefix),l=p.isArray(a)?a[0]:null,c=a?a[3]:null,h,d=e.Env.evt.handles,v,m,g,y,b=function(e,t,n){var r=e[t],i,s;if(r)for(s=r.length-1;s>=0;--s)i=r[s].evt,(i.host===n||i.el===n)&&r[s].detach()};if(l){m=d[l],t=a[1],v=u?e.Node.getDOMNode(this):this;if(m){if(t)b(m,t,v);else for(s in m)m.hasOwnProperty(s)&&b(m,s,v);return this}}else{if(p.isObject(t)&&t.detach)return t.detach(),this;if(u&&(!c||c in o.DOM_EVENTS))return g=f.call(arguments,0),g[2]=o.getDOMNode(this),e.detach.apply(e,g),this}h=e.Env.evt.plugins[c];if(e.instanceOf(this,YUI)){g=f.call(arguments,0);if(h&&h.detach)return h.detach.apply(e,g),this;if(!t||!h&&o&&t in o.DOM_EVENTS)return g[0]=t,e.Event.detach.apply(e.Event,g),this}return y=i[a[1]],y&&y.detach(n,r),this},unsubscribe:function(){return this.detach.apply(this,arguments)},detachAll:function(e){return this.detach(e)},unsubscribeAll:function(){return this.detachAll.apply(this,arguments)},publish:function(t,n){var r,i=this._yuievt,s=i.config,o=s.prefix;return typeof t=="string"?(o&&(t=b(t,o)),r=this._publish(t,s,n)):(r={},e.each(t,function(e,t){o&&(t=b(t,o)),r[t]=this._publish(t,s,e||n)},this)),r},_getFullType:function(e){var t=this._yuievt.config.prefix;return t?t+d+e:e},_publish:function(t,n,r){var i,s=this._yuievt,o=s.config,u=o.host,a=o.context,f=s.events;return i=f[t],(o.monitored&&!i||i&&i.monitored)&&this._monitor("publish",t,{args:arguments}),i||(i=f[t]=new e.CustomEvent(t,n),n||(i.host=u,i.context=a)),r&&h(i,r,!0),i},_monitor:function(e,t,n){var r,i,s;if(t){typeof t=="string"?(s=t,i=this.getEvent(t,!0)):(i=t,s=t.type);if(this._yuievt.config.monitored&&(!i||i.monitored)||i&&i.monitored)r=s+"_"+e,n.monitored=e,this.fire.call(this,r,n)}},fire:function(e){var t=typeof e=="string",n=arguments.length,r=e,i=this._yuievt,s=i.config,o=s.prefix,u,a,l,c;t&&n<=3?n===2?c=[arguments[1]]:n===3?c=[arguments[1],arguments[2]]:c=[]:c=f.call(arguments,t?1:0),t||(r=e&&e.type),o&&(r=b(r,o)),a=i.events[r],this._hasSiblings&&(l=this.getSibling(r,a),l&&!a&&(a=this.publish(r))),(s.monitored&&(!a||a.monitored)||a&&a.monitored)&&this._monitor("fire",a||r,{args:c});if(!a){if(i.hasTargets)return this.bubble({type:r},c,this);u=!0}else l&&(a.sibling=l),u=a._fire(c);return i.chain?this:u},getSibling:function(e,t){var n;return e.indexOf(d)>-1&&(e=y(e),n=this.getEvent(e,!0),n&&(n.applyConfig(t),n.bubbles=!1,n.broadcast=0)),n},getEvent:function(e,t){var n,r;return t||(n=this._yuievt.config.prefix,e=n?b(e,n):e),r=this._yuievt.events,r[e]||null},after:function(t,n){var r=f.call(arguments,0);switch(p.type(t)){case"function":return e.Do.after.apply(e.Do,arguments);case"array":case"object":r[0]._after=!0;break;default:r[0]=m+t}return this.on.apply(this,r)},before:function(){return this.on.apply(this,arguments)}},e.EventTarget=E,e.mix(e,E.prototype),E.call(e,{bubbles:!1}),YUI.Env.globalEvents=YUI.Env.globalEvents||new E,e.Global=YUI.Env.globalEvents},"@VERSION@",{requires:["oop"]}),YUI.add("event-custom-complex",function(e,t){var n,r,i=e.Object,s,o={},u=e.CustomEvent.prototype,a=e.EventTarget.prototype,f=function(e,t){var n;for(n in t)r.hasOwnProperty(n)||(e[n]=t[n])};e.EventFacade=function(e,t){e||(e=o),this._event=e,this.details=e.details,this.type=e.type,this._type=e.type,this.target=e.target,this.currentTarget=t,this.relatedTarget=e.relatedTarget},e.mix(e.EventFacade.prototype,{stopPropagation:function(){this._event.stopPropagation(),this.stopped=1},stopImmediatePropagation:function(){this._event.stopImmediatePropagation(),this.stopped=2},preventDefault:function(){this._event.preventDefault(),this.prevented=1},halt:function(e){this._event.halt(e),this.prevented=1,this.stopped=e?2:1}}),u.fireComplex=function(t){var n,r,i,s,o,u=!0,a,f,l,c,h,p,d,v,m,g=this,y=g.host||g,b,w,E=g.stack,S=y._yuievt,x;if(E&&g.queuable&&g.type!==E.next.type)return g.log("queue "+g.type),E.queue||(E.queue=[]),E.queue.push([g,t]),!0;x=g.hasSubs()||S.hasTargets||g.broadcast,g.target=g.target||y,g.currentTarget=y,g.details=t.concat();if(x){n=E||{id:g.id,next:g,silent:g.silent,stopped:0,prevented:0,bubbling:null,type:g.type,defaultTargetOnly:g.defaultTargetOnly},f=g.getSubs(),l=f[0],c=f[1],g.stopped=g.type!==n.type?0:n.stopped,g.prevented=g.type!==n.type?0:n.prevented,g.stoppedFn&&(a=new e.EventTarget({fireOnce:!0,context:y}),g.events=a,a.on("stopped",g.stoppedFn)),g.log("Firing "+g.type),g._facade=null,r=g._createFacade(t),l&&g._procSubs(l,t,r),g.bubbles&&y.bubble&&!g.stopped&&(w=n.bubbling,n.bubbling=g.type,n.type!==g.type&&(n.stopped=0,n.prevented=0),u=y.bubble(g,t,null,n),g.stopped=Math.max(g.stopped,n.stopped),g.prevented=Math.max(g.prevented,n.prevented),n.bubbling=w),d=g.prevented,d?(v=g.preventedFn,v&&v.apply(y,t)):(m=g.defaultFn,m&&(!g.defaultTargetOnly&&!n.defaultTargetOnly||y===r.target)&&m.apply(y,t)),g.broadcast&&g._broadcast(t);if(c&&!g.prevented&&g.stopped<2){h=n.afterQueue;if(n.id===g.id||g.type!==S.bubbling){g._procSubs(c,t,r);if(h)while(b=h.last())b()}else p=c,n +.execDefaultCnt&&(p=e.merge(p),e.each(p,function(e){e.postponed=!0})),h||(n.afterQueue=new e.Queue),n.afterQueue.add(function(){g._procSubs(p,t,r)})}g.target=null;if(n.id===g.id){s=n.queue;if(s)while(s.length)i=s.pop(),o=i[0],n.next=o,o._fire(i[1]);g.stack=null}u=!g.stopped,g.type!==S.bubbling&&(n.stopped=0,n.prevented=0,g.stopped=0,g.prevented=0)}else m=g.defaultFn,m&&(r=g._createFacade(t),(!g.defaultTargetOnly||y===r.target)&&m.apply(y,t));return g._facade=null,u},u._hasPotentialSubscribers=function(){return this.hasSubs()||this.host._yuievt.hasTargets||this.broadcast},u._createFacade=u._getFacade=function(t){var n=this.details,r=n&&n[0],i=r&&typeof r=="object",s=this._facade;return s||(s=new e.EventFacade(this,this.currentTarget)),i?(f(s,r),r.type&&(s.type=r.type),t&&(t[0]=s)):t&&t.unshift(s),s.details=this.details,s.target=this.originalTarget||this.target,s.currentTarget=this.currentTarget,s.stopped=0,s.prevented=0,this._facade=s,this._facade},u._addFacadeToArgs=function(e){var t=e[0];t&&t.halt&&t.stopImmediatePropagation&&t.stopPropagation&&t._event||this._createFacade(e)},u.stopPropagation=function(){this.stopped=1,this.stack&&(this.stack.stopped=1),this.events&&this.events.fire("stopped",this)},u.stopImmediatePropagation=function(){this.stopped=2,this.stack&&(this.stack.stopped=2),this.events&&this.events.fire("stopped",this)},u.preventDefault=function(){this.preventable&&(this.prevented=1,this.stack&&(this.stack.prevented=1))},u.halt=function(e){e?this.stopImmediatePropagation():this.stopPropagation(),this.preventDefault()},a.addTarget=function(t){var n=this._yuievt;n.targets||(n.targets={}),n.targets[e.stamp(t)]=t,n.hasTargets=!0},a.getTargets=function(){var e=this._yuievt.targets;return e?i.values(e):[]},a.removeTarget=function(t){var n=this._yuievt.targets;n&&(delete n[e.stamp(t,!0)],i.size(n)===0&&(this._yuievt.hasTargets=!1))},a.bubble=function(e,t,n,r){var i=this._yuievt.targets,s=!0,o,u,a,f,l,c=e&&e.type,h=n||e&&e.target||this,p;if(!e||!e.stopped&&i)for(a in i)if(i.hasOwnProperty(a)){o=i[a],u=o._yuievt.events[c],o._hasSiblings&&(l=o.getSibling(c,u)),l&&!u&&(u=o.publish(c)),p=o._yuievt.bubbling,o._yuievt.bubbling=c;if(!u)o._yuievt.hasTargets&&o.bubble(e,t,h,r);else{l&&(u.sibling=l),u.target=h,u.originalTarget=h,u.currentTarget=o,f=u.broadcast,u.broadcast=!1,u.emitFacade=!0,u.stack=r,s=s&&u.fire.apply(u,t||e.details||[]),u.broadcast=f,u.originalTarget=null;if(u.stopped)break}o._yuievt.bubbling=p}return s},a._hasPotentialSubscribers=function(e){var t=this._yuievt,n=t.events[e];return n?n.hasSubs()||t.hasTargets||n.broadcast:!1},n=new e.EventFacade,r={};for(s in n)r[s]=!0},"@VERSION@",{requires:["event-custom-base"]}),YUI.add("node-core",function(e,t){var n=".",r="nodeName",i="nodeType",s="ownerDocument",o="tagName",u="_yuid",a={},f=Array.prototype.slice,l=e.DOM,c=function(t){if(!this.getDOMNode)return new c(t);if(typeof t=="string"){t=c._fromString(t);if(!t)return null}var n=t.nodeType!==9?t.uniqueID:t[u];n&&c._instances[n]&&c._instances[n]._node!==t&&(t[u]=null),n=n||e.stamp(t),n||(n=e.guid()),this[u]=n,this._node=t,this._stateProxy=t,this._initPlugins&&this._initPlugins()},h=function(t){var n=null;return t&&(n=typeof t=="string"?function(n){return e.Selector.test(n,t)}:function(n){return t(e.one(n))}),n};c.ATTRS={},c.DOM_EVENTS={},c._fromString=function(t){return t&&(t.indexOf("doc")===0?t=e.config.doc:t.indexOf("win")===0?t=e.config.win:t=e.Selector.query(t,null,!0)),t||null},c.NAME="node",c.re_aria=/^(?:role$|aria-)/,c.SHOW_TRANSITION="fadeIn",c.HIDE_TRANSITION="fadeOut",c._instances={},c.getDOMNode=function(e){return e?e.nodeType?e:e._node||null:null},c.scrubVal=function(t,n){if(t){if(typeof t=="object"||typeof t=="function")if(i in t||l.isWindow(t))t=e.one(t);else if(t.item&&!t._nodes||t[0]&&t[0][i])t=e.all(t)}else typeof t=="undefined"?t=n:t===null&&(t=null);return t},c.addMethod=function(e,t,n){e&&t&&typeof t=="function"&&(c.prototype[e]=function(){var e=f.call(arguments),r=this,i;return e[0]&&e[0]._node&&(e[0]=e[0]._node),e[1]&&e[1]._node&&(e[1]=e[1]._node),e.unshift(r._node),i=t.apply(n||r,e),i&&(i=c.scrubVal(i,r)),typeof i!="undefined"||(i=r),i})},c.importMethod=function(t,n,r){typeof n=="string"?(r=r||n,c.addMethod(r,t[n],t)):e.Array.each(n,function(e){c.importMethod(t,e)})},c.one=function(t){var n=null,r,i;if(t){if(typeof t=="string"){t=c._fromString(t);if(!t)return null}else if(t.getDOMNode)return t;if(t.nodeType||e.DOM.isWindow(t)){i=t.uniqueID&&t.nodeType!==9?t.uniqueID:t._yuid,n=c._instances[i],r=n?n._node:null;if(!n||r&&t!==r)n=new c(t),t.nodeType!=11&&(c._instances[n[u]]=n)}}return n},c.DEFAULT_SETTER=function(t,r){var i=this._stateProxy,s;return t.indexOf(n)>-1?(s=t,t=t.split(n),e.Object.setValue(i,t,r)):typeof i[t]!="undefined"&&(i[t]=r),r},c.DEFAULT_GETTER=function(t){var r=this._stateProxy,i;return t.indexOf&&t.indexOf(n)>-1?i=e.Object.getValue(r,t.split(n)):typeof r[t]!="undefined"&&(i=r[t]),i},e.mix(c.prototype,{DATA_PREFIX:"data-",toString:function(){var e=this[u]+": not bound to a node",t=this._node,n,i,s;return t&&(n=t.attributes,i=n&&n.id?t.getAttribute("id"):null,s=n&&n.className?t.getAttribute("className"):null,e=t[r],i&&(e+="#"+i),s&&(e+="."+s.replace(" ",".")),e+=" "+this[u]),e},get:function(e){var t;return this._getAttr?t=this._getAttr(e):t=this._get(e),t?t=c.scrubVal(t,this):t===null&&(t=null),t},_get:function(e){var t=c.ATTRS[e],n;return t&&t.getter?n=t.getter.call(this):c.re_aria.test(e)?n=this._node.getAttribute(e,2):n=c.DEFAULT_GETTER.apply(this,arguments),n},set:function(e,t){var n=c.ATTRS[e];return this._setAttr?this._setAttr.apply(this,arguments):n&&n.setter?n.setter.call(this,t,e):c.re_aria.test(e)?this._node.setAttribute(e,t):c.DEFAULT_SETTER.apply(this,arguments),this},setAttrs:function(t){return this._setAttrs?this._setAttrs(t):e.Object.each(t,function(e,t){this.set(t,e)},this),this},getAttrs:function(t){var n={};return this._getAttrs?this._getAttrs(t):e.Array.each(t,function(e,t){n[e]=this.get(e)},this),n},compareTo:function(e){var t= +this._node;return e&&e._node&&(e=e._node),t===e},inDoc:function(e){var t=this._node;e=e?e._node||e:t[s];if(e.documentElement)return l.contains(e.documentElement,t)},getById:function(t){var n=this._node,r=l.byId(t,n[s]);return r&&l.contains(n,r)?r=e.one(r):r=null,r},ancestor:function(t,n,r){return arguments.length===2&&(typeof n=="string"||typeof n=="function")&&(r=n),e.one(l.ancestor(this._node,h(t),n,h(r)))},ancestors:function(t,n,r){return arguments.length===2&&(typeof n=="string"||typeof n=="function")&&(r=n),e.all(l.ancestors(this._node,h(t),n,h(r)))},previous:function(t,n){return e.one(l.elementByAxis(this._node,"previousSibling",h(t),n))},next:function(t,n){return e.one(l.elementByAxis(this._node,"nextSibling",h(t),n))},siblings:function(t){return e.all(l.siblings(this._node,h(t)))},one:function(t){return e.one(e.Selector.query(t,this._node,!0))},all:function(t){var n;return this._node&&(n=e.all(e.Selector.query(t,this._node)),n._query=t,n._queryRoot=this._node),n||e.all([])},test:function(t){return e.Selector.test(this._node,t)},remove:function(e){var t=this._node;return t&&t.parentNode&&t.parentNode.removeChild(t),e&&this.destroy(),this},replace:function(e){var t=this._node;return typeof e=="string"&&(e=c.create(e)),t.parentNode.replaceChild(c.getDOMNode(e),t),this},replaceChild:function(t,n){return typeof t=="string"&&(t=l.create(t)),e.one(this._node.replaceChild(c.getDOMNode(t),c.getDOMNode(n)))},destroy:function(t){var n=e.config.doc.uniqueID?"uniqueID":"_yuid",r;this.purge(),this.unplug&&this.unplug(),this.clearData(),t&&e.NodeList.each(this.all("*"),function(t){r=c._instances[t[n]],r?r.destroy():e.Event.purgeElement(t)}),this._node=null,this._stateProxy=null,delete c._instances[this._yuid]},invoke:function(e,t,n,r,i,s){var o=this._node,u;return t&&t._node&&(t=t._node),n&&n._node&&(n=n._node),u=o[e](t,n,r,i,s),c.scrubVal(u,this)},swap:e.config.doc.documentElement.swapNode?function(e){this._node.swapNode(c.getDOMNode(e))}:function(e){e=c.getDOMNode(e);var t=this._node,n=e.parentNode,r=e.nextSibling;return r===t?n.insertBefore(t,e):e===t.nextSibling?n.insertBefore(e,t):(t.parentNode.replaceChild(e,t),l.addHTML(n,t,r)),this},hasMethod:function(e){var t=this._node;return!(!(t&&e in t&&typeof t[e]!="unknown")||typeof t[e]!="function"&&String(t[e]).indexOf("function")!==1)},isFragment:function(){return this.get("nodeType")===11},empty:function(){return this.get("childNodes").remove().destroy(!0),this},getDOMNode:function(){return this._node}},!0),e.Node=c,e.one=c.one;var p=function(t){var n=[];t&&(typeof t=="string"?(this._query=t,t=e.Selector.query(t)):t.nodeType||l.isWindow(t)?t=[t]:t._node?t=[t._node]:t[0]&&t[0]._node?(e.Array.each(t,function(e){e._node&&n.push(e._node)}),t=n):t=e.Array(t,0,!0)),this._nodes=t||[]};p.NAME="NodeList",p.getDOMNodes=function(e){return e&&e._nodes?e._nodes:e},p.each=function(t,n,r){var i=t._nodes;i&&i.length&&e.Array.each(i,n,r||t)},p.addMethod=function(t,n,r){t&&n&&(p.prototype[t]=function(){var t=[],i=arguments;return e.Array.each(this._nodes,function(s){var o=s.uniqueID&&s.nodeType!==9?"uniqueID":"_yuid",u=e.Node._instances[s[o]],a,f;u||(u=p._getTempNode(s)),a=r||u,f=n.apply(a,i),f!==undefined&&f!==u&&(t[t.length]=f)}),t.length?t:this})},p.importMethod=function(t,n,r){typeof n=="string"?(r=r||n,p.addMethod(n,t[n])):e.Array.each(n,function(e){p.importMethod(t,e)})},p._getTempNode=function(t){var n=p._tempNode;return n||(n=e.Node.create("
    "),p._tempNode=n),n._node=t,n._stateProxy=t,n},e.mix(p.prototype,{_invoke:function(e,t,n){var r=n?[]:this;return this.each(function(i){var s=i[e].apply(i,t);n&&r.push(s)}),r},item:function(t){return e.one((this._nodes||[])[t])},each:function(t,n){var r=this;return e.Array.each(this._nodes,function(i,s){return i=e.one(i),t.call(n||i,i,s,r)}),r},batch:function(t,n){var r=this;return e.Array.each(this._nodes,function(i,s){var o=e.Node._instances[i[u]];return o||(o=p._getTempNode(i)),t.call(n||o,o,s,r)}),r},some:function(t,n){var r=this;return e.Array.some(this._nodes,function(i,s){return i=e.one(i),n=n||i,t.call(n,i,s,r)})},toFrag:function(){return e.one(e.DOM._nl2frag(this._nodes))},indexOf:function(t){return e.Array.indexOf(this._nodes,e.Node.getDOMNode(t))},filter:function(t){return e.all(e.Selector.filter(this._nodes,t))},modulus:function(t,n){n=n||0;var r=[];return p.each(this,function(e,i){i%t===n&&r.push(e)}),e.all(r)},odd:function(){return this.modulus(2,1)},even:function(){return this.modulus(2)},destructor:function(){},refresh:function(){var t,n=this._nodes,r=this._query,i=this._queryRoot;return r&&(i||n&&n[0]&&n[0].ownerDocument&&(i=n[0].ownerDocument),this._nodes=e.Selector.query(r,i)),this},size:function(){return this._nodes.length},isEmpty:function(){return this._nodes.length<1},toString:function(){var e="",t=this[u]+": not bound to any nodes",n=this._nodes,i;return n&&n[0]&&(i=n[0],e+=i[r],i.id&&(e+="#"+i.id),i.className&&(e+="."+i.className.replace(" ",".")),n.length>1&&(e+="...["+n.length+" items]")),e||t},getDOMNodes:function(){return this._nodes}},!0),p.importMethod(e.Node.prototype,["destroy","empty","remove","set"]),p.prototype.get=function(t){var n=[],r=this._nodes,i=!1,s=p._getTempNode,o,u;return r[0]&&(o=e.Node._instances[r[0]._yuid]||s(r[0]),u=o._get(t),u&&u.nodeType&&(i=!0)),e.Array.each(r,function(r){o=e.Node._instances[r._yuid],o||(o=s(r)),u=o._get(t),i||(u=e.Node.scrubVal(u,o)),n.push(u)}),i?e.all(n):n},e.NodeList=p,e.all=function(e){return new p(e)},e.Node.all=e.all;var d=e.NodeList,v=Array.prototype,m={concat:1,pop:0,push:0,shift:0,slice:1,splice:1,unshift:0};e.Object.each(m,function(t,n){d.prototype[n]=function(){var r=[],i=0,s,o;while(typeof (s=arguments[i++])!="undefined")r.push(s._node||s._nodes||s);return o=v[n].apply(this._nodes,r),t?o=e.all(o):o=e.Node.scrubVal(o),o}}),e.Array.each(["removeChild","hasChildNodes","cloneNode","hasAttribute","scrollIntoView","getElementsByTagName","focus","blur","submit","reset","select","createCaption"],function(t){e.Node.prototype[t]=function( +e,n,r){var i=this.invoke(t,e,n,r);return i}}),e.Node.prototype.removeAttribute=function(e){var t=this._node;return t&&t.removeAttribute(e,0),this},e.Node.importMethod(e.DOM,["contains","setAttribute","getAttribute","wrap","unwrap","generateID"]),e.NodeList.importMethod(e.Node.prototype,["getAttribute","setAttribute","removeAttribute","unwrap","wrap","generateID"])},"@VERSION@",{requires:["dom-core","selector"]}),YUI.add("node-base",function(e,t){var n=["hasClass","addClass","removeClass","replaceClass","toggleClass"];e.Node.importMethod(e.DOM,n),e.NodeList.importMethod(e.Node.prototype,n);var r=e.Node,i=e.DOM;r.create=function(t,n){return n&&n._node&&(n=n._node),e.one(i.create(t,n))},e.mix(r.prototype,{create:r.create,insert:function(e,t){return this._insert(e,t),this},_insert:function(e,t){var n=this._node,r=null;return typeof t=="number"?t=this._node.childNodes[t]:t&&t._node&&(t=t._node),e&&typeof e!="string"&&(e=e._node||e._nodes||e),r=i.addHTML(n,e,t),r},prepend:function(e){return this.insert(e,0)},append:function(e){return this.insert(e,null)},appendChild:function(e){return r.scrubVal(this._insert(e))},insertBefore:function(t,n){return e.Node.scrubVal(this._insert(t,n))},appendTo:function(t){return e.one(t).append(this),this},setContent:function(e){return this._insert(e,"replace"),this},getContent:function(){var e=this;return e._node.nodeType===11&&(e=e.create("
    ").append(e.cloneNode(!0))),e.get("innerHTML")}}),e.Node.prototype.setHTML=e.Node.prototype.setContent,e.Node.prototype.getHTML=e.Node.prototype.getContent,e.NodeList.importMethod(e.Node.prototype,["append","insert","appendChild","insertBefore","prepend","setContent","getContent","setHTML","getHTML"]);var r=e.Node,i=e.DOM;r.ATTRS={text:{getter:function(){return i.getText(this._node)},setter:function(e){return i.setText(this._node,e),e}},"for":{getter:function(){return i.getAttribute(this._node,"for")},setter:function(e){return i.setAttribute(this._node,"for",e),e}},options:{getter:function(){return this._node.getElementsByTagName("option")}},children:{getter:function(){var t=this._node,n=t.children,r,i,s;if(!n){r=t.childNodes,n=[];for(i=0,s=r.length;i1?this._data[e]=t:this._data=e,this},clearData:function(e){return"_data"in this&&(typeof e!="undefined"?delete this._data[e]:delete this._data),this}}),e.mix(e.NodeList.prototype,{getData:function(e){var t=arguments.length?[e]:[];return this._invoke("getData",t,!0)},setData:function(e,t){var n=arguments.length>1?[e,t]:[e];return this._invoke("setData",n)},clearData:function(e){var t=arguments.length?[e]:[];return this._invoke("clearData",[e])}})},"@VERSION@",{requires:["event-base","node-core","dom-base","dom-style"]}),function(){var e=YUI.Env;e._ready||(e._ready=function(){e.DOMReady=!0,e.remove(YUI.config.doc,"DOMContentLoaded",e._ready)},e.add(YUI.config.doc,"DOMContentLoaded",e._ready))}(),YUI.add("event-base",function(e,t){e.publish("domready",{fireOnce:!0,async:!0}),YUI.Env.DOMReady?e.fire("domready"):e.Do.before(function(){e.fire("domready")},YUI.Env,"_ready");var n=e.UA,r={},i={63232:38,63233:40,63234:37,63235:39,63276:33,63277:34,25:9,63272:46,63273:36,63275:35},s=function(t){if(!t)return t;try{t&&3==t.nodeType&&(t=t.parentNode)}catch(n){return null}return e.one(t)},o=function(e,t,n){this._event=e,this._currentTarget=t,this._wrapper=n||r,this.init()};e.extend(o,Object,{init:function(){var e=this._event,t=this._wrapper.overrides,r=e.pageX,o=e.pageY,u,a=this._currentTarget;this.altKey=e.altKey,this.ctrlKey=e.ctrlKey,this.metaKey=e.metaKey,this.shiftKey=e.shiftKey,this.type=t&&t.type||e.type,this.clientX=e.clientX,this.clientY=e.clientY,this.pageX=r,this.pageY=o,u=e.keyCode||e.charCode,n.webkit&&u in i&&(u=i[u]),this.keyCode=u,this.charCode=u,this.which=e.which||e.charCode||u,this.button=this.which,this.target=s(e.target),this.currentTarget=s(a),this.relatedTarget=s(e.relatedTarget);if(e.type=="mousewheel"||e.type=="DOMMouseScroll")this.wheelDelta=e.detail?e.detail*-1:Math.round(e.wheelDelta/80)||(e.wheelDelta<0?-1:1);this._touch&&this._touch(e,a,this._wrapper)},stopPropagation:function(){this._event.stopPropagation(),this._wrapper.stopped=1,this.stopped=1},stopImmediatePropagation:function(){var e=this._event;e.stopImmediatePropagation?e.stopImmediatePropagation():this.stopPropagation(),this._wrapper.stopped=2,this.stopped=2},preventDefault:function(e){var t=this._event;t.preventDefault(),t.returnValue=e||!1,this._wrapper.prevented=1,this.prevented=1},halt:function(e){e?this.stopImmediatePropagation():this.stopPropagation(),this.preventDefault()}}),o.resolve=s,e.DOM2EventFacade=o,e.DOMEventFacade=o,function(){e.Env.evt.dom_wrappers={},e.Env.evt.dom_map={};var t=e.Env.evt,n=e.config,r=n.win,i=YUI.Env.add,s=YUI.Env.remove,o=function(){YUI.Env.windowLoaded=!0,e.Event._load(),s(r,"load",o)},u=function(){e.Event._unload()},a="domready",f="~yui|2|compat~",l=function(t){try{return t&&typeof t!="string"&&e.Lang.isNumber(t.length)&&!t.tagName&&!e.DOM.isWindow(t)}catch(n){return!1}},c=e.CustomEvent.prototype._delete,h=function(t){var n=c.apply(this,arguments);return this.hasSubs()||e.Event._clean(this),n},p=function(){var n=!1,o=0,c=[],d=t.dom_wrappers,v=null,m=t.dom_map;return{POLL_RETRYS:1e3,POLL_INTERVAL:40,lastError:null,_interval:null,_dri:null,DOMReady:!1,startInterval:function(){p._interval||(p._interval=setInterval(p._poll,p.POLL_INTERVAL))},onAvailable:function(t,n,r,i,s,u){var a=e.Array(t),f,l;for(f=0;f4?t.slice(4):null),c&&u.fire(),h):!1},detach:function(t,n,r,i){var s=e.Array(arguments,0,!0),o,u,a,c,h,v;s[s.length-1]===f&&(o=!0);if(t&&t.detach)return t.detach();typeof r=="string"&&(o?r=e.DOM.byId(r):(r=e.Selector.query(r),u=r.length,u<1?r=null:u==1&&(r=r[0])));if(!r)return!1;if(r.detach)return s.splice(2,1),r.detach.apply(r,s);if(l(r)){a=!0;for(c=0,u=r.length;c0),u=[],a=function(t,n){var r,i=n.override;try{n.compat?(n.override?i===!0?r=n.obj:r=i:r=t,n.fn.call(r,n.obj)):(r=n.obj||e.one(t),n.fn.apply(r,e.Lang.isArray(i)?i:[]))}catch(s){}};for(t=0,r=c.length;t4?e.Array(arguments,4,!0):null;return e.Event.onAvailable.call(e.Event,r,n,i,s)}},e.Env.evt.plugins.contentready={on:function(t,n,r,i){var s=arguments.length>4?e.Array(arguments,4,!0):null;return e.Event.onContentReady.call(e.Event,r,n,i,s)}}},"@VERSION@",{requires:["event-custom-base"]}),function(){var e,t=YUI.Env,n=YUI.config,r=n.doc,i=r&&r.documentElement,s="onreadystatechange",o=n.pollInterval||40;i.doScroll&&!t._ieready&&(t._ieready=function(){t._ready()}, +/*! DOMReady: based on work by: Dean Edwards/John Resig/Matthias Miller/Diego Perini */ +self!==self.top?(e=function(){r.readyState=="complete"&&(t.remove(r,s,e),t.ieready())},t.add(r,s,e)):t._dri=setInterval(function(){try{i.doScroll("left"),clearInterval(t._dri),t._dri=null,t._ieready()}catch(e){}},o))}(),YUI.add("event-base-ie",function(e,t){function n(){e.DOM2EventFacade.apply(this,arguments)}function r(t){var n=e.config.doc.createEventObject(t),i=r.prototype;return n.hasOwnProperty=function(){return!0},n.init=i.init,n.halt=i.halt,n.preventDefault=i.preventDefault,n.stopPropagation=i.stopPropagation,n.stopImmediatePropagation=i.stopImmediatePropagation,e.DOM2EventFacade.apply(n,arguments),n}var i=e.config.doc&&e.config.doc.implementation,s=e.config.lazyEventFacade,o={0:1,4:2,2:3},u={mouseout:"toElement",mouseover:"fromElement"},a=e.DOM2EventFacade.resolve,f={init:function(){n.superclass.init.apply(this,arguments);var t=this._event,r,i,s,u,f,l;this.target=a(t.srcElement),"clientX"in t&&!r&&0!==r&&(r=t.clientX,i=t.clientY,s=e.config.doc,u=s.body,f=s.documentElement,r+=f.scrollLeft||u&&u.scrollLeft||0,i+=f.scrollTop||u&&u.scrollTop||0,this.pageX=r,this.pageY=i),t.type=="mouseout"?l=t.toElement:t.type=="mouseover"&&(l=t.fromElement),this.relatedTarget=a(l||t.relatedTarget),this.which=this.button=t.keyCode||o[t.button]||t.button},stopPropagation:function(){this._event.cancelBubble=!0,this._wrapper.stopped=1,this.stopped=1},stopImmediatePropagation:function(){this.stopPropagation(),this._wrapper.stopped=2,this.stopped=2},preventDefault:function(e){this._event.returnValue=e||!1,this._wrapper.prevented=1,this.prevented=1}};e.extend(n,e.DOM2EventFacade,f),e.extend(r,e.DOM2EventFacade,f),r.prototype.init=function(){var e=this._event,t=this._wrapper.overrides,n=r._define,i=r._lazyProperties,s;this.altKey=e.altKey,this.ctrlKey=e.ctrlKey,this.metaKey=e.metaKey,this.shiftKey=e.shiftKey,this.type=t&&t.type||e.type,this.clientX=e.clientX,this.clientY=e.clientY,this.keyCode=this.charCode=e.keyCode,this.which=this.button=e.keyCode||o[e.button]||e.button;for(s in i)i.hasOwnProperty(s)&&n(this,s,i[s]);this._touch&&this._touch(e,this._currentTarget,this._wrapper)},r._lazyProperties={target:function(){return a(this._event.srcElement)},relatedTarget:function(){var e=this._event,t=u[e.type]||"relatedTarget";return a(e[t]||e.relatedTarget)},currentTarget:function(){return a(this._currentTarget)},wheelDelta:function(){var e=this._event;if(e.type==="mousewheel"||e.type==="DOMMouseScroll")return e.detail?e.detail*-1:Math.round(e.wheelDelta/80)||(e.wheelDelta<0?-1:1)},pageX:function(){var t=this._event,n=t.pageX,r,i,s;return n===undefined&&(r=e.config.doc,i=r.body&&r.body.scrollLeft,s=r.documentElement.scrollLeft,n=t.clientX+(s||i||0)),n},pageY:function(){var t=this._event,n=t.pageY,r,i,s;return n===undefined&&(r=e.config.doc,i=r.body&&r.body.scrollTop,s=r.documentElement.scrollTop,n=t.clientY+(s||i||0)),n}},r._define=function(e,t,n){function r(r){var i=arguments.length?r:n.call(this);return delete e[t],Object.defineProperty(e,t,{value:i,configurable:!0,writable:!0}),i}Object.defineProperty(e,t,{get:r,set:r,configurable:!0})};if(i&&!i.hasFeature("Events","2.0")){if(s)try{Object.defineProperty(e.config.doc.createEventObject(),"z",{})}catch(l){s=!1}e.DOMEventFacade=s?r:n}},"@VERSION@",{requires:["node-base"]}),YUI.add("pluginhost-base",function(e,t){function r(){this._plugins={}}var n=e.Lang;r.prototype={plug:function(e,t){var r,i,s;if(n.isArray(e))for(r=0,i=e.length;r=0;o--)s=n[o],a=s._UNPLUG,a&&e.mix(i,a,!0),u=s._PLUG,u&&e.mix(r,u,!0);for(f in r)r.hasOwnProperty(f)&&(i[f]||this.plug(r[f]));t&&t.plugins&&this.plug(t.plugins)},n.plug=function(t,n,i){var s,o,u,a;if(t!==e.Base){t._PLUG=t._PLUG||{},r.isArray(n)||(i&&(n={fn:n,cfg:i}),n=[n]);for(o=0,u=n.length;o1&&(g=p.shift(),c[0]=t=p.shift()),d=e.Node.DOM_EVENTS[t],s(d)&&d.delegate&&(E=d.delegate.apply(d,arguments));if(!E){if(!t||!r||!u||!l)return;v=h?e.Selector.query(h,null,!0):u,!v&&i(u)&&(E=e.on("available",function(){e.mix(E,e.delegate.apply(e,c),!0)},u)),!E&&v&&(c.splice(2,2,v),E=e.Event._attach(c,{facade:!1}),E.sub.filter=l,E.sub._notify=f.notifySub)}return E&&g&&(m=a[g]||(a[g]={}),m=m[t]||(m[t]=[]),m.push(E)),E}var n=e.Array,r=e.Lang,i=r.isString,s=r.isObject,o=r.isArray,u=e.Selector.test,a=e.Env.evt.handles;f.notifySub=function(t,r,i){r=r.slice(),this.args&&r.push.apply(r,this.args);var s=f._applyFilter(this.filter,r,i),o,u,a,l;if(s){s=n(s),o=r[0]=new e.DOMEventFacade(r[0],i.el,i),o.container=e.one(i.el);for(u=0,a=s.length;u=200&&n<300||n===304||n===1223?this.success(e,t):this.failure(e,t)},_rS:function(e,t){var n=this;e.c.readyState===4&&(t.timeout&&n._clearTimeout(e.id),setTimeout(function(){n.complete(e,t),n._result(e,t)},0))},_abort:function(e,t){e&&e.c&&(e.e=t,e.c.abort())},send:function(t,n,i){var s,o,u,a,f,c,h=this,p=t,d={};n=n?e.Object(n):{},s=h._create(n,i),o=n.method?n.method.toUpperCase():"GET",f=n.sync,c=n.data,e.Lang.isObject(c)&&!c.nodeType&&!s.upload&&e.QueryString&&e.QueryString.stringify&&(n.data=c=e.QueryString.stringify(c));if(n.form){if(n.form.upload)return h.upload(s,t,n);c=h._serialize(n.form,c)}c||(c="");if(c)switch(o){case"GET":case"HEAD":case"DELETE":p=h._concat(p,c),c="";break;case"POST":case"PUT":n.headers=e.merge({"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},n.headers)}if(s.xdr)return h.xdr(p,s,n);if(s.notify)return s.c.send(s,t,n);!f&&!s.upload&&(s.c.onreadystatechange=function(){h._rS(s,n)});try{s.c.open(o,p,!f,n.username||null,n.password||null),h._setHeaders(s.c,n.headers||{}),h.start(s,n),n.xdr&&n.xdr.credentials&&l&&(s.c.withCredentials=!0),s.c.send(c);if(f){for(u=0,a=r.length;u"@"&&(v||c.tagName===d)&&s.push(c),o.push(c),c=c.firstChild;while(o.length>0&&!c)c=o.pop().nextSibling}}s.length&&(i=u._filterNodes(s,a,r))}return i},_filterNodes:function(t,n,r){var i=0,s,o=n.length,a=o-1,f=[],l=t[0],c=l,h=e.Selector.getters,p,d,v,m,g,y,b,w;for(i=0;c=l=t[i++];){a=o-1,m=null;e:while(c&&c.tagName){v=n[a],b=v.tests,s=b.length;if(s&&!g)while(w=b[--s]){p=w[1],h[w[0]]?y=h[w[0]](c,w[0]):(y=c[w[0]],w[0]==="tagName"&&!u._isXML&&(y=y.toUpperCase()),typeof y!="string"&&y!==undefined&&y.toString?y=y.toString():y===undefined&&c.getAttribute&&(y=c.getAttribute(w[0],2)));if(p==="="&&y!==w[2]||typeof p!="string"&&p.test&&!p.test(y)||!p.test&&typeof p=="function"&&!p(c,w[0],w[2])){if(c=c[m])while(c&&(!c.tagName||v.tagName&&v.tagName!==c.tagName))c=c[m];continue e}}a--;if(!!g||!(d=v.combinator)){f.push(l);if(r)return f;break}m=d.axis,c=c[m];while(c&&!c.tagName)c=c[m];d.direct&&(m=null)}}return l=c=null,f},combinators:{" ":{axis:"parentNode"},">":{axis:"parentNode",direct:!0},"+":{axis:"previousSibling",direct:!0}},_parsers:[{name:i,re:/^\uE003(-?[a-z]+[\w\-]*)+([~\|\^\$\*!=]=?)?['"]?([^\uE004'"]*)['"]?\uE004/i,fn:function(t,n){var r=t[2]||"",i=u.operators,s=t[3]?t[3].replace(/\\/g,""):"",o;if(t[1]==="id"&&r==="="||t[1]==="className"&&e.config.doc.documentElement.getElementsByClassName&&(r==="~="||r==="="))n.prefilter=t[1],t[3]=s,n[t[1]]=t[1]==="id"?t[3]:s;r in i&&(o=i[r],typeof o=="string"&&(t[3]=s.replace(u._reRegExpTokens,"\\$1"),o=new RegExp(o.replace("{val}",t[3]))),t[2]=o);if(!n.last||n.prefilter!==t[1])return t.slice(1)}},{name:r,re:/^((?:-?[_a-z]+[\w-]*)|\*)/i,fn:function(e,t){var n=e[1];u._isXML||(n=n.toUpperCase()),t.tagName=n;if(n!=="*"&&(!t.last||t.prefilter))return[r,"=",n];t.prefilter||(t.prefilter="tagName")}},{name:s,re:/^\s*([>+~]|\s)\s*/,fn:function(e,t){}},{name:o,re:/^:([\-\w]+)(?:\uE005['"]?([^\uE005]*)['"]?\uE006)*/i,fn:function(e,t){var n=u[o][e[1]];return n?(e[2]&&(e[2]=e[2].replace(/\\/g,"")),[e[2],n]):!1}}],_getToken:function(e){return{tagName:null,id:null,className:null,attributes:{},combinator:null,tests:[]}},_tokenize:function(t){t=t||"",t=u._parseSelector(e.Lang.trim(t));var n=u._getToken(),r=t,i=[],o=!1,a,f,l,c;e:do{o=!1;for(l=0;c=u._parsers[l++];)if(a=c.re.exec(t)){c.name!==s&&(n.selector=t),t=t.replace(a[0],""),t.length||(n.last=!0),u._attrFilters[a[1]]&&(a[1]=u._attrFilters[a[1]]),f=c.fn(a,n);if(f===!1){o=!1;break e}f&&n.tests.push(f);if(!t.length||c.name===s)i.push(n),n=u._getToken(n),c.name===s&&(n.combinator=e.Selector.combinators[a[1]]);o=!0}}while(o&&t.length);if(!o||t.length)i=[];return i},_replaceMarkers:function(e){return e=e.replace(/\[/g,"\ue003"),e=e.replace(/\]/g,"\ue004"),e=e.replace(/\(/g,"\ue005"),e=e.replace(/\)/g,"\ue006"),e},_replaceShorthand:function(t){var n=e.Selector.shorthand,r;for(r in n)n.hasOwnProperty(r)&&(t=t.replace(new RegExp(r,"gi"),n[r]));return t},_parseSelector:function(t){var n=e.Selector._replaceSelector(t),t=n.selector;return t=e.Selector._replaceShorthand(t),t=e.Selector._restore("attr",t,n.attrs),t=e.Selector._restore("pseudo",t,n.pseudos),t=e.Selector._replaceMarkers(t),t=e.Selector._restore("esc",t,n.esc),t},_attrFilters:{"class":"className","for":"htmlFor"},getters:{href:function(t,n){return e.DOM.getAttribute(t,n)},id:function(t,n){return e.DOM.getId(t)}}};e.mix(e.Selector,a,!0),e.Selector.getters.src=e.Selector.getters.rel=e.Selector.getters.href,e.Selector.useNative&&e.config.doc.querySelector&&(e.Selector.shorthand["\\.(-?[_a-z]+[-\\w]*)"]="[class~=$1]")},"@VERSION@",{requires:["selector-native"]}),YUI.add("selector-css3",function(e,t){e.Selector +._reNth=/^(?:([\-]?\d*)(n){1}|(odd|even)$)*([\-+]?\d*)$/,e.Selector._getNth=function(t,n,r,i){e.Selector._reNth.test(n);var s=parseInt(RegExp.$1,10),o=RegExp.$2,u=RegExp.$3,a=parseInt(RegExp.$4,10)||0,f=[],l=e.DOM._children(t.parentNode,r),c;u?(s=2,c="+",o="n",a=u==="odd"?1:0):isNaN(s)&&(s=o?1:0);if(s===0)return i&&(a=l.length-a+1),l[a-1]===t?!0:!1;s<0&&(i=!!i,s=Math.abs(s));if(!i){for(var h=a-1,p=l.length;h=0&&l[h]===t)return!0}else for(var h=l.length-a,p=l.length;h>=0;h-=s)if(h-1},checked:function(e){return e.checked===!0||e.selected===!0},enabled:function(e){return e.disabled!==undefined&&!e.disabled},disabled:function(e){return e.disabled}}),e.mix(e.Selector.operators,{"^=":"^{val}","$=":"{val}$","*=":"{val}"}),e.Selector.combinators["~"]={axis:"previousSibling"}},"@VERSION@",{requires:["selector-native","selector-css2"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:2,warn:4,error:8};n.log=function(e,t,o,u){var a,f,l,c,h,p,d=n,v=d.config,m=d.fire?d:YUI.Env.globalEvents;return v.debug&&(o=o||"",typeof o!="undefined"&&(f=v.logExclude,l=v.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1,d.config.logLevel=d.config.logLevel||"debug",p=s[d.config.logLevel.toLowerCase()],t in s&&s[t]0?n.dump(e[u],t-1):r):f.push(e[u]),f.push(s);f.length>1&&f.pop(),f.push("]")}else if(l=="regexp")f.push(e.toString());else{f.push("{");for(u in e)if(e.hasOwnProperty(u))try{f.push(u+o),n.isObject(e[u])?f.push(t>0?n.dump(e[u],t-1):r):f.push(e[u]),f.push(s)}catch(c){f.push("Error: "+c.message)}f.length>1&&f.pop(),f.push("}")}return f.join("")};e.dump=u,n.dump=u},"@VERSION@",{requires:["yui-base"]}),YUI.add("transition-timer",function(e,t){var n=e.Transition;e.mix(n.prototype,{_start:function(){n.useNative?this._runNative():this._runTimer()},_runTimer:function(){var t=this;t._initAttrs(),n._running[e.stamp(t)]=t,t._startTime=new Date,n._startTimer()},_endTimer:function(){var t=this;delete n._running[e.stamp(t)],t._startTime=null},_runFrame:function(){var e=new Date-this._startTime;this._runAttrs(e)},_runAttrs:function(t){var r=this,i=r._node,s=r._config,o=e.stamp(i),u=n._nodeAttrs[o],a=n.behaviors,f=!1,l=!1,c,h,p,d,v,m,g,y,b;for(h in u)if((p=u[h])&&p.transition===r){g=p.duration,m=p.delay,v=(t-m)/1e3,y=t,c={type:"propertyEnd",propertyName:h,config:s,elapsedTime:v},d=b in a&&"set"in a[b]?a[b].set:n.DEFAULT_SETTER,f=y>=g,y>g&&(y=g);if(!m||t>=m)d(r,h,p.from,p.to,y-m,g-m,p.easing,p.unit),f&&(delete u[h],r._count--,s[h]&&s[h].on&&s[h].on.end&&s[h].on.end.call(e.one(i),c),!l&&r._count<=0&&(l=!0,r._end(v),r._endTimer()))}},_initAttrs:function(){var t=this,r=n.behaviors,i=e.stamp(t._node),s=n._nodeAttrs[i],o,u,a,f,l,c,h,p,d,v,m;for(c in s)(o=s[c])&&o.transition===t&&(u=o.duration*1e3,a=o.delay*1e3,f=o.easing,l=o.value,c in t._node.style||c in e.DOM.CUSTOM_STYLES?(v=c in r&&"get"in r[c]?r[c].get(t,c):n.DEFAULT_GETTER(t,c),p=n.RE_UNITS.exec(v),h=n.RE_UNITS.exec(l),v=p?p[1]:v,m=h?h[1]:l,d=h?h[2]:p?p[2]:"",!d&&n.RE_DEFAULT_UNIT.test(c)&&(d=n.DEFAULT_UNIT),typeof f=="string"&&(f.indexOf("cubic-bezier")>-1?f=f.substring(13,f.length-1).split(","):n.easings[f]&&(f=n.easings[f])),o.from=Number(v),o.to=Number(m),o.unit=d,o.easing=f,o.duration=u+a,o.delay=a):(delete s[c],t._count--))},destroy:function(){this.detachAll(),this._node=null}},!0),e.mix(e.Transition,{_runtimeAttrs:{},RE_DEFAULT_UNIT:/^width|height|top|right|bottom|left|margin.*|padding.*|border.*$/i,DEFAULT_UNIT:"px",intervalTime:20,behaviors:{left:{get:function(t,n){return e.DOM._getAttrOffset(t._node,n)}}},DEFAULT_SETTER:function(t,r,i,s,o,u,a,f){i=Number(i),s=Number(s);var l=t._node,c=n.cubicBezier(a,o/u);c=i+c[0]*(s-i);if(l){if(r in l.style||r in e.DOM.CUSTOM_STYLES)f=f||"",e.DOM.setStyle(l,r,c+f)}else t._end()},DEFAULT_GETTER:function(t,n){var r=t._node,i="";if(n in r.style||n in e.DOM.CUSTOM_STYLES)i=e.DOM.getComputedStyle(r,n);return i},_startTimer:function(){n._timer||(n._timer=setInterval(n._runFrame,n.intervalTime))},_stopTimer:function(){clearInterval(n._timer),n._timer=null},_runFrame:function(){var e=!0,t;for(t in n._running)n._running[t]._runFrame&&(e=!1,n +._running[t]._runFrame());e&&n._stopTimer()},cubicBezier:function(e,t){var n=0,r=0,i=e[0],s=e[1],o=e[2],u=e[3],a=1,f=0,l=a-3*o+3*i-n,c=3*o-6*i+3*n,h=3*i-3*n,p=n,d=f-3*u+3*s-r,v=3*u-6*s+3*r,m=3*s-3*r,g=r,y=((l*t+c)*t+h)*t+p,b=((d*t+v)*t+m)*t+g;return[y,b]},easings:{ease:[.25,0,1,.25],linear:[0,0,1,1],"ease-in":[.42,0,1,1],"ease-out":[0,0,.58,1],"ease-in-out":[.42,0,.58,1]},_running:{},_timer:null,RE_UNITS:/^(-?\d*\.?\d*){1}(em|ex|px|in|cm|mm|pt|pc|%)*$/},!0),n.behaviors.top=n.behaviors.bottom=n.behaviors.right=n.behaviors.left,e.Transition=n},"@VERSION@",{requires:["transition"]}),YUI.add("yui",function(e,t){},"@VERSION@",{use:["yui","oop","dom","event-custom-base","event-base","pluginhost","node","event-delegate","io-base","json-parse","transition","selector-css3","dom-style-ie","querystring-stringify-simple"]});var Y=YUI().use("*"); diff --git a/lib/yuilib/3.9.1/build/simpleyui/simpleyui.js b/lib/yuilib/3.12.0/simpleyui/simpleyui.js old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/simpleyui/simpleyui.js rename to lib/yuilib/3.12.0/simpleyui/simpleyui.js index d92d286ea37..4df14f54345 --- a/lib/yuilib/3.9.1/build/simpleyui/simpleyui.js +++ b/lib/yuilib/3.12.0/simpleyui/simpleyui.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /** The YUI module contains the components required for building the YUI seed file. This includes the script loading mechanism, a simple queue, and the core @@ -157,7 +163,7 @@ available. (function() { var proto, prop, - VERSION = '3.9.1', + VERSION = '3.12.0', PERIOD = '.', BASE = 'http://yui.yahooapis.com/', /* @@ -1501,6 +1507,7 @@ with any configuration info required for the module. YUI._getLoadHook = null; } + YUI.Env[VERSION] = {}; }()); @@ -1636,6 +1643,22 @@ supported native console. This function is executed with the YUI instance as its @since 3.1.0 **/ +/** +The minimum log level to log messages for. Log levels are defined +incrementally. Messages greater than or equal to the level specified will +be shown. All others will be discarded. The order of log levels in +increasing priority is: + + debug + info + warn + error + +@property {String} logLevel +@default 'debug' +@since 3.10.0 +**/ + /** Callback to execute when `Y.error()` is called. It receives the error message and a JavaScript error object if one was provided. @@ -1721,8 +1744,8 @@ relying on ES5 functionality, even when ES5 functionality is available. /** Delay the `use` callback until a specific event has passed (`load`, `domready`, `contentready` or `available`) -@property delayUntil -@type String|Object + +@property {Object|String} delayUntil @since 3.6.0 @example @@ -1746,8 +1769,6 @@ Or you can delay until a node is available (with `available` or `contentready`): // available in the DOM. }); -@property {Object|String} delayUntil -@since 3.6.0 **/ YUI.add('yui-base', function (Y, NAME) { @@ -1788,9 +1809,15 @@ TYPES = { '[object Error]' : 'error' }, -SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, -TRIMREGEX = /^\s+|\s+$/g, -NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; +SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, + +WHITESPACE = "\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF", +WHITESPACE_CLASS = "[\x09-\x0D\x20\xA0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]+", +TRIM_LEFT_REGEX = new RegExp("^" + WHITESPACE_CLASS), +TRIM_RIGHT_REGEX = new RegExp(WHITESPACE_CLASS + "$"), +TRIMREGEX = new RegExp(TRIM_LEFT_REGEX.source + "|" + TRIM_RIGHT_REGEX.source, "g"), + +NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; // -- Protected Methods -------------------------------------------------------- @@ -2014,7 +2041,7 @@ L.sub = function(s, o) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trim = STRING_PROTO.trim ? function(s) { +L.trim = L._isNative(STRING_PROTO.trim) && !WHITESPACE.trim() ? function(s) { return s && s.trim ? s.trim() : s; } : function (s) { try { @@ -2031,10 +2058,10 @@ L.trim = STRING_PROTO.trim ? function(s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimLeft = STRING_PROTO.trimLeft ? function (s) { +L.trimLeft = L._isNative(STRING_PROTO.trimLeft) && !WHITESPACE.trimLeft() ? function (s) { return s.trimLeft(); } : function (s) { - return s.replace(/^\s+/, ''); + return s.replace(TRIM_LEFT_REGEX, ''); }; /** @@ -2044,10 +2071,10 @@ L.trimLeft = STRING_PROTO.trimLeft ? function (s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimRight = STRING_PROTO.trimRight ? function (s) { +L.trimRight = L._isNative(STRING_PROTO.trimRight) && !WHITESPACE.trimRight() ? function (s) { return s.trimRight(); } : function (s) { - return s.replace(/\s+$/, ''); + return s.replace(TRIM_RIGHT_REGEX, ''); }; /** @@ -2149,16 +2176,34 @@ Dedupes an array of strings, returning an array that's guaranteed to contain only one copy of a given string. This method differs from `Array.unique()` in that it's optimized for use only -with strings, whereas `unique` may be used with other types (but is slower). -Using `dedupe()` with non-string values may result in unexpected behavior. +with arrays consisting entirely of strings or entirely of numbers, whereas +`unique` may be used with other value types (but is slower). + +Using `dedupe()` with values other than strings or numbers, or with arrays +containing a mix of strings and numbers, may result in unexpected behavior. @method dedupe -@param {String[]} array Array of strings to dedupe. -@return {Array} Deduped copy of _array_. +@param {String[]|Number[]} array Array of strings or numbers to dedupe. +@return {Array} Copy of _array_ containing no duplicate values. @static @since 3.4.0 **/ -YArray.dedupe = function (array) { +YArray.dedupe = Lang._isNative(Object.create) ? function (array) { + var hash = Object.create(null), + results = [], + i, item, len; + + for (i = 0, len = array.length; i < len; ++i) { + item = array[i]; + + if (!hash[item]) { + hash[item] = 1; + results.push(item); + } + } + + return results; +} : function (array) { var hash = {}, results = [], i, item, len; @@ -2800,7 +2845,7 @@ hasEnumBug = O._hasEnumBug = !{valueOf: 0}.propertyIsEnumerable('valueOf'), /** * `true` if this browser incorrectly considers the `prototype` property of - * functions to be enumerable. Currently known to affect Opera 11.50. + * functions to be enumerable. Currently known to affect Opera 11.50 and Android 2.3.x. * * @property _hasProtoEnumBug * @type Boolean @@ -2844,7 +2889,9 @@ O.hasKey = owns; * as the order in which they were defined. * * This method is an alias for the native ES5 `Object.keys()` method if - * available. + * available and non-buggy. The Opera 11.50 and Android 2.3.x versions of + * `Object.keys()` have an inconsistency as they consider `prototype` to be + * enumerable, so a non-native shim is used to rectify the difference. * * @example * @@ -2856,7 +2903,7 @@ O.hasKey = owns; * @return {String[]} Array of keys. * @static */ -O.keys = Lang._isNative(Object.keys) ? Object.keys : function (obj) { +O.keys = Lang._isNative(Object.keys) && !hasProtoEnumBug ? Object.keys : function (obj) { if (!Lang.isObject(obj)) { throw new TypeError('Object.keys called on a non-object'); } @@ -3463,17 +3510,25 @@ YUI.Env.parseUA = function(subUA) { } } - m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); - if (m && m[1] && m[2]) { - o.chrome = numberify(m[2]); // Chrome - o.safari = 0; //Reset safari back to 0 - if (m[1] === 'CrMo') { - o.mobile = 'chrome'; - } + m = ua.match(/OPR\/(\d+\.\d+)/); + + if (m && m[1]) { + // Opera 15+ with Blink (pretends to be both Chrome and Safari) + o.opera = numberify(m[1]); } else { - m = ua.match(/AdobeAIR\/([^\s]*)/); - if (m) { - o.air = m[0]; // Adobe AIR 1.0 or better + m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); + + if (m && m[1] && m[2]) { + o.chrome = numberify(m[2]); // Chrome + o.safari = 0; //Reset safari back to 0 + if (m[1] === 'CrMo') { + o.mobile = 'chrome'; + } + } else { + m = ua.match(/AdobeAIR\/([^\s]*)/); + if (m) { + o.air = m[0]; // Adobe AIR 1.0 or better + } } } } @@ -3503,16 +3558,21 @@ YUI.Env.parseUA = function(subUA) { o.mobile = m[0]; // ex: Opera Mini/2.0.4509/1316 } } else { // not opera or webkit - m = ua.match(/MSIE\s([^;]*)/); - if (m && m[1]) { - o.ie = numberify(m[1]); + m = ua.match(/MSIE ([^;]*)|Trident.*; rv:([0-9.]+)/); + + if (m && (m[1] || m[2])) { + o.ie = numberify(m[1] || m[2]); } else { // not opera, webkit, or ie m = ua.match(/Gecko\/([^\s]*)/); + if (m) { o.gecko = 1; // Gecko detected, look for revision m = ua.match(/rv:([^\s\)]*)/); if (m && m[1]) { o.gecko = numberify(m[1]); + if (/Mobile|Tablet/.test(ua)) { + o.mobile = "ffos"; + } } } } @@ -3643,7 +3703,7 @@ YUI.Env.aliases = { }; -}, '3.9.1', {"use": ["get", "features", "intl-base", "yui-log", "yui-later"]}); +}, '3.12.0', {"use": ["get", "features", "intl-base", "yui-log", "yui-later"]}); YUI.add('get', function (Y, NAME) { /*jslint boss:true, expr:true, laxbreak: true */ @@ -4917,7 +4977,7 @@ Transaction.prototype = { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('features', function (Y, NAME) { var feature_tests = {}; @@ -5325,7 +5385,7 @@ add('load', '22', { "when": "after" }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('intl-base', function (Y, NAME) { /** @@ -5413,7 +5473,7 @@ Y.mix(Y.namespace('Intl'), { }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('yui-log', function (Y, NAME) { /** @@ -5429,9 +5489,9 @@ var INSTANCE = Y, LOGEVENT = 'yui:log', UNDEFINED = 'undefined', LEVELS = { debug: 1, - info: 1, - warn: 1, - error: 1 }; + info: 2, + warn: 4, + error: 8 }; /** * If the 'debug' config is true, a 'yui:log' event will be @@ -5453,7 +5513,7 @@ var INSTANCE = Y, * @return {YUI} YUI instance. */ INSTANCE.log = function(msg, cat, src, silent) { - var bail, excl, incl, m, f, + var bail, excl, incl, m, f, minlevel, Y = INSTANCE, c = Y.config, publisher = (Y.fire) ? Y : YUI.Env.globalEvents; @@ -5472,6 +5532,15 @@ INSTANCE.log = function(msg, cat, src, silent) { } else if (excl && (src in excl)) { bail = excl[src]; } + + // Determine the current minlevel as defined in configuration + Y.config.logLevel = Y.config.logLevel || 'debug'; + minlevel = LEVELS[Y.config.logLevel.toLowerCase()]; + + if (cat in LEVELS && LEVELS[cat] < minlevel) { + // Skip this message if the we don't meet the defined minlevel + bail = 1; + } } if (!bail) { if (c.useBrowserConsole) { @@ -5524,7 +5593,7 @@ INSTANCE.message = function() { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('yui-later', function (Y, NAME) { /** @@ -5602,8 +5671,8 @@ Y.Lang.later = Y.later; -}, '3.9.1', {"requires": ["yui-base"]}); -YUI.add('yui', function (Y, NAME) {}, '3.9.1', {"use": ["get", "features", "intl-base", "yui-log", "yui-later"]}); +}, '3.12.0', {"requires": ["yui-base"]}); +YUI.add('yui', function (Y, NAME) {}, '3.12.0', {"use": ["get", "features", "intl-base", "yui-log", "yui-later"]}); YUI.add('oop', function (Y, NAME) { /** @@ -5839,56 +5908,66 @@ Y.some = function(o, f, c, proto) { }; /** - * Deep object/array copy. Function clones are actually - * wrappers around the original function. - * Array-like objects are treated as arrays. - * Primitives are returned untouched. Optionally, a - * function can be provided to handle other data types, - * filter keys, validate values, etc. - * - * NOTE: Cloning a non-trivial object is a reasonably heavy operation, due to - * the need to recurrsively iterate down non-primitive properties. Clone - * should be used only when a deep clone down to leaf level properties - * is explicitly required. - * - * In many cases (for example, when trying to isolate objects used as - * hashes for configuration properties), a shallow copy, using Y.merge is - * normally sufficient. If more than one level of isolation is required, - * Y.merge can be used selectively at each level which needs to be - * isolated from the original without going all the way to leaf properties. - * - * @method clone - * @param {object} o what to clone. - * @param {boolean} safe if true, objects will not have prototype - * items from the source. If false, they will. In this case, the - * original is initially protected, but the clone is not completely - * immune from changes to the source object prototype. Also, cloned - * prototype items that are deleted from the clone will result - * in the value of the source prototype being exposed. If operating - * on a non-safe clone, items should be nulled out rather than deleted. - * @param {function} f optional function to apply to each item in a - * collection; it will be executed prior to applying the value to - * the new object. Return false to prevent the copy. - * @param {object} c optional execution context for f. - * @param {object} owner Owner object passed when clone is iterating - * an object. Used to set up context for cloned functions. - * @param {object} cloned hash of previously cloned objects to avoid - * multiple clones. - * @return {Array|Object} the cloned object. - */ +Deep object/array copy. Function clones are actually wrappers around the +original function. Array-like objects are treated as arrays. Primitives are +returned untouched. Optionally, a function can be provided to handle other data +types, filter keys, validate values, etc. + +**Note:** Cloning a non-trivial object is a reasonably heavy operation, due to +the need to recursively iterate down non-primitive properties. Clone should be +used only when a deep clone down to leaf level properties is explicitly +required. This method will also + +In many cases (for example, when trying to isolate objects used as hashes for +configuration properties), a shallow copy, using `Y.merge()` is normally +sufficient. If more than one level of isolation is required, `Y.merge()` can be +used selectively at each level which needs to be isolated from the original +without going all the way to leaf properties. + +@method clone +@param {object} o what to clone. +@param {boolean} safe if true, objects will not have prototype items from the + source. If false, they will. In this case, the original is initially + protected, but the clone is not completely immune from changes to the source + object prototype. Also, cloned prototype items that are deleted from the + clone will result in the value of the source prototype being exposed. If + operating on a non-safe clone, items should be nulled out rather than + deleted. +@param {function} f optional function to apply to each item in a collection; it + will be executed prior to applying the value to the new object. + Return false to prevent the copy. +@param {object} c optional execution context for f. +@param {object} owner Owner object passed when clone is iterating an object. + Used to set up context for cloned functions. +@param {object} cloned hash of previously cloned objects to avoid multiple + clones. +@return {Array|Object} the cloned object. +**/ Y.clone = function(o, safe, f, c, owner, cloned) { + var o2, marked, stamp; + + // Does not attempt to clone: + // + // * Non-typeof-object values, "primitive" values don't need cloning. + // + // * YUI instances, cloning complex object like YUI instances is not + // advised, this is like cloning the world. + // + // * DOM nodes (#2528250), common host objects like DOM nodes cannot be + // "subclassed" in Firefox and old versions of IE. Trying to use + // `Object.create()` or `Y.extend()` on a DOM node will throw an error in + // these browsers. + // + // Instad, the passed-in `o` will be return as-is when it matches one of the + // above criteria. + if (!L.isObject(o) || + Y.instanceOf(o, YUI) || + (o.addEventListener || o.attachEvent)) { - if (!L.isObject(o)) { return o; } - // @todo cloning YUI instances doesn't currently work - if (Y.instanceOf(o, YUI)) { - return o; - } - - var o2, marked = cloned || {}, stamp, - yeach = Y.each; + marked = cloned || {}; switch (L.type(o)) { case 'date': @@ -5919,23 +5998,20 @@ Y.clone = function(o, safe, f, c, owner, cloned) { marked[stamp] = o; } - // #2528250 don't try to clone element properties - if (!o.addEventListener && !o.attachEvent) { - yeach(o, function(v, k) { -if ((k || k === 0) && (!f || (f.call(c || this, v, k, this, o) !== false))) { - if (k !== CLONE_MARKER) { - if (k == 'prototype') { - // skip the prototype - // } else if (o[k] === o) { - // this[k] = this; - } else { - this[k] = - Y.clone(v, safe, f, c, owner || o, marked); - } + Y.each(o, function(v, k) { + if ((k || k === 0) && (!f || (f.call(c || this, v, k, this, o) !== false))) { + if (k !== CLONE_MARKER) { + if (k == 'prototype') { + // skip the prototype + // } else if (o[k] === o) { + // this[k] = this; + } else { + this[k] = + Y.clone(v, safe, f, c, owner || o, marked); } } - }, o2); - } + } + }, o2); if (!cloned) { Y.Object.each(marked, function(v, k) { @@ -5953,7 +6029,6 @@ if ((k || k === 0) && (!f || (f.call(c || this, v, k, this, o) !== false))) { return o2; }; - /** * Returns a function that will execute the supplied function in the * supplied object's context, optionally adding any additional @@ -6004,7 +6079,7 @@ Y.rbind = function(f, c) { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('features', function (Y, NAME) { var feature_tests = {}; @@ -6412,7 +6487,7 @@ add('load', '22', { "when": "after" }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('dom-core', function (Y, NAME) { var NODE_TYPE = 'nodeType', @@ -6801,7 +6876,7 @@ Y_DOM = { Y.DOM = Y_DOM; -}, '3.9.1', {"requires": ["oop", "features"]}); +}, '3.12.0', {"requires": ["oop", "features"]}); YUI.add('dom-base', function (Y, NAME) { /** @@ -7485,7 +7560,499 @@ Y.mix(Y.DOM, { }); -}, '3.9.1', {"requires": ["dom-core"]}); +}, '3.12.0', {"requires": ["dom-core"]}); +YUI.add('color-base', function (Y, NAME) { + +/** +Color provides static methods for color conversion. + + Y.Color.toRGB('f00'); // rgb(255, 0, 0) + + Y.Color.toHex('rgb(255, 255, 0)'); // #ffff00 + +@module color +@submodule color-base +@class Color +@since 3.8.0 +**/ + +var REGEX_HEX = /^#?([\da-fA-F]{2})([\da-fA-F]{2})([\da-fA-F]{2})(\ufffe)?/, + REGEX_HEX3 = /^#?([\da-fA-F]{1})([\da-fA-F]{1})([\da-fA-F]{1})(\ufffe)?/, + REGEX_RGB = /rgba?\(([\d]{1,3}), ?([\d]{1,3}), ?([\d]{1,3}),? ?([.\d]*)?\)/, + TYPES = { 'HEX': 'hex', 'RGB': 'rgb', 'RGBA': 'rgba' }, + CONVERTS = { 'hex': 'toHex', 'rgb': 'toRGB', 'rgba': 'toRGBA' }; + + +Y.Color = { + /** + @static + @property KEYWORDS + @type Object + @since 3.8.0 + **/ + KEYWORDS: { + 'black': '000', 'silver': 'c0c0c0', 'gray': '808080', 'white': 'fff', + 'maroon': '800000', 'red': 'f00', 'purple': '800080', 'fuchsia': 'f0f', + 'green': '008000', 'lime': '0f0', 'olive': '808000', 'yellow': 'ff0', + 'navy': '000080', 'blue': '00f', 'teal': '008080', 'aqua': '0ff' + }, + + /** + NOTE: `(\ufffe)?` is added to the Regular Expression to carve out a + place for the alpha channel that is returned from toArray + without compromising any usage of the Regular Expression + + @static + @property REGEX_HEX + @type RegExp + @default /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})(\ufffe)?/ + @since 3.8.0 + **/ + REGEX_HEX: REGEX_HEX, + + /** + NOTE: `(\ufffe)?` is added to the Regular Expression to carve out a + place for the alpha channel that is returned from toArray + without compromising any usage of the Regular Expression + + @static + @property REGEX_HEX3 + @type RegExp + @default /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})(\ufffe)?/ + @since 3.8.0 + **/ + REGEX_HEX3: REGEX_HEX3, + + /** + @static + @property REGEX_RGB + @type RegExp + @default /rgba?\(([0-9]{1,3}), ?([0-9]{1,3}), ?([0-9]{1,3}),? ?([.0-9]{1,3})?\)/ + @since 3.8.0 + **/ + REGEX_RGB: REGEX_RGB, + + re_RGB: REGEX_RGB, + + re_hex: REGEX_HEX, + + re_hex3: REGEX_HEX3, + + /** + @static + @property STR_HEX + @type String + @default #{*}{*}{*} + @since 3.8.0 + **/ + STR_HEX: '#{*}{*}{*}', + + /** + @static + @property STR_RGB + @type String + @default rgb({*}, {*}, {*}) + @since 3.8.0 + **/ + STR_RGB: 'rgb({*}, {*}, {*})', + + /** + @static + @property STR_RGBA + @type String + @default rgba({*}, {*}, {*}, {*}) + @since 3.8.0 + **/ + STR_RGBA: 'rgba({*}, {*}, {*}, {*})', + + /** + @static + @property TYPES + @type Object + @default {'rgb':'rgb', 'rgba':'rgba'} + @since 3.8.0 + **/ + TYPES: TYPES, + + /** + @static + @property CONVERTS + @type Object + @default {} + @since 3.8.0 + **/ + CONVERTS: CONVERTS, + + /** + Converts the provided string to the provided type. + You can use the `Y.Color.TYPES` to get a valid `to` type. + If the color cannot be converted, the original color will be returned. + + @public + @method convert + @param {String} str + @param {String} to + @return {String} + @since 3.8.0 + **/ + convert: function (str, to) { + var convert = Y.Color.CONVERTS[to.toLowerCase()], + clr = str; + + if (convert && Y.Color[convert]) { + clr = Y.Color[convert](str); + } + + return clr; + }, + + /** + Converts provided color value to a hex value string + + @public + @method toHex + @param {String} str Hex or RGB value string + @return {String} returns array of values or CSS string if options.css is true + @since 3.8.0 + **/ + toHex: function (str) { + var clr = Y.Color._convertTo(str, 'hex'), + isTransparent = clr.toLowerCase() === 'transparent'; + + if (clr.charAt(0) !== '#' && !isTransparent) { + clr = '#' + clr; + } + + return isTransparent ? clr.toLowerCase() : clr.toUpperCase(); + }, + + /** + Converts provided color value to an RGB value string + @public + @method toRGB + @param {String} str Hex or RGB value string + @return {String} + @since 3.8.0 + **/ + toRGB: function (str) { + var clr = Y.Color._convertTo(str, 'rgb'); + return clr.toLowerCase(); + }, + + /** + Converts provided color value to an RGB value string + @public + @method toRGBA + @param {String} str Hex or RGB value string + @return {String} + @since 3.8.0 + **/ + toRGBA: function (str) { + var clr = Y.Color._convertTo(str, 'rgba' ); + return clr.toLowerCase(); + }, + + /** + Converts the provided color string to an array of values where the + last value is the alpha value. Will return an empty array if + the provided string is not able to be parsed. + + NOTE: `(\ufffe)?` is added to `HEX` and `HEX3` Regular Expressions to + carve out a place for the alpha channel that is returned from + toArray without compromising any usage of the Regular Expression + + Y.Color.toArray('fff'); // ['ff', 'ff', 'ff', 1] + Y.Color.toArray('rgb(0, 0, 0)'); // ['0', '0', '0', 1] + Y.Color.toArray('rgba(0, 0, 0, 0)'); // ['0', '0', '0', 1] + + + + @public + @method toArray + @param {String} str + @return {Array} + @since 3.8.0 + **/ + toArray: function(str) { + // parse with regex and return "matches" array + var type = Y.Color.findType(str).toUpperCase(), + regex, + arr, + length, + lastItem; + + if (type === 'HEX' && str.length < 5) { + type = 'HEX3'; + } + + if (type.charAt(type.length - 1) === 'A') { + type = type.slice(0, -1); + } + + regex = Y.Color['REGEX_' + type]; + + if (regex) { + arr = regex.exec(str) || []; + length = arr.length; + + if (length) { + + arr.shift(); + length--; + + if (type === 'HEX3') { + arr[0] += arr[0]; + arr[1] += arr[1]; + arr[2] += arr[2]; + } + + lastItem = arr[length - 1]; + if (!lastItem) { + arr[length - 1] = 1; + } + } + } + + return arr; + + }, + + /** + Converts the array of values to a string based on the provided template. + @public + @method fromArray + @param {Array} arr + @param {String} template + @return {String} + @since 3.8.0 + **/ + fromArray: function(arr, template) { + arr = arr.concat(); + + if (typeof template === 'undefined') { + return arr.join(', '); + } + + var replace = '{*}'; + + template = Y.Color['STR_' + template.toUpperCase()]; + + if (arr.length === 3 && template.match(/\{\*\}/g).length === 4) { + arr.push(1); + } + + while ( template.indexOf(replace) >= 0 && arr.length > 0) { + template = template.replace(replace, arr.shift()); + } + + return template; + }, + + /** + Finds the value type based on the str value provided. + @public + @method findType + @param {String} str + @return {String} + @since 3.8.0 + **/ + findType: function (str) { + if (Y.Color.KEYWORDS[str]) { + return 'keyword'; + } + + var index = str.indexOf('('), + key; + + if (index > 0) { + key = str.substr(0, index); + } + + if (key && Y.Color.TYPES[key.toUpperCase()]) { + return Y.Color.TYPES[key.toUpperCase()]; + } + + return 'hex'; + + }, // return 'keyword', 'hex', 'rgb' + + /** + Retrives the alpha channel from the provided string. If no alpha + channel is present, `1` will be returned. + @protected + @method _getAlpha + @param {String} clr + @return {Number} + @since 3.8.0 + **/ + _getAlpha: function (clr) { + var alpha, + arr = Y.Color.toArray(clr); + + if (arr.length > 3) { + alpha = arr.pop(); + } + + return +alpha || 1; + }, + + /** + Returns the hex value string if found in the KEYWORDS object + @protected + @method _keywordToHex + @param {String} clr + @return {String} + @since 3.8.0 + **/ + _keywordToHex: function (clr) { + var keyword = Y.Color.KEYWORDS[clr]; + + if (keyword) { + return keyword; + } + }, + + /** + Converts the provided color string to the value type provided as `to` + @protected + @method _convertTo + @param {String} clr + @param {String} to + @return {String} + @since 3.8.0 + **/ + _convertTo: function(clr, to) { + + if (clr === 'transparent') { + return clr; + } + + var from = Y.Color.findType(clr), + originalTo = to, + needsAlpha, + alpha, + method, + ucTo; + + if (from === 'keyword') { + clr = Y.Color._keywordToHex(clr); + from = 'hex'; + } + + if (from === 'hex' && clr.length < 5) { + if (clr.charAt(0) === '#') { + clr = clr.substr(1); + } + + clr = '#' + clr.charAt(0) + clr.charAt(0) + + clr.charAt(1) + clr.charAt(1) + + clr.charAt(2) + clr.charAt(2); + } + + if (from === to) { + return clr; + } + + if (from.charAt(from.length - 1) === 'a') { + from = from.slice(0, -1); + } + + needsAlpha = (to.charAt(to.length - 1) === 'a'); + if (needsAlpha) { + to = to.slice(0, -1); + alpha = Y.Color._getAlpha(clr); + } + + ucTo = to.charAt(0).toUpperCase() + to.substr(1).toLowerCase(); + method = Y.Color['_' + from + 'To' + ucTo ]; + + // check to see if need conversion to rgb first + // check to see if there is a direct conversion method + // convertions are: hex <-> rgb <-> hsl + if (!method) { + if (from !== 'rgb' && to !== 'rgb') { + clr = Y.Color['_' + from + 'ToRgb'](clr); + from = 'rgb'; + method = Y.Color['_' + from + 'To' + ucTo ]; + } + } + + if (method) { + clr = ((method)(clr, needsAlpha)); + } + + // process clr from arrays to strings after conversions if alpha is needed + if (needsAlpha) { + if (!Y.Lang.isArray(clr)) { + clr = Y.Color.toArray(clr); + } + clr.push(alpha); + clr = Y.Color.fromArray(clr, originalTo.toUpperCase()); + } + + return clr; + }, + + /** + Processes the hex string into r, g, b values. Will return values as + an array, or as an rgb string. + @protected + @method _hexToRgb + @param {String} str + @param {Boolean} [toArray] + @return {String|Array} + @since 3.8.0 + **/ + _hexToRgb: function (str, toArray) { + var r, g, b; + + /*jshint bitwise:false*/ + if (str.charAt(0) === '#') { + str = str.substr(1); + } + + str = parseInt(str, 16); + + r = str >> 16; + g = str >> 8 & 0xFF; + b = str & 0xFF; + + if (toArray) { + return [r, g, b]; + } + + return 'rgb(' + r + ', ' + g + ', ' + b + ')'; + }, + + /** + Processes the rgb string into r, g, b values. Will return values as + an array, or as a hex string. + @protected + @method _rgbToHex + @param {String} str + @param {Boolean} [toArray] + @return {String|Array} + @since 3.8.0 + **/ + _rgbToHex: function (str) { + /*jshint bitwise:false*/ + var rgb = Y.Color.toArray(str), + hex = rgb[2] | (rgb[1] << 8) | (rgb[0] << 16); + + hex = (+hex).toString(16); + + while (hex.length < 6) { + hex = '0' + hex; + } + + return '#' + hex; + } + +}; + + + +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('dom-style', function (Y, NAME) { (function(Y) { @@ -7749,83 +8316,9 @@ Y_DOM.CUSTOM_STYLES.transformOrigin = { })(Y); -(function(Y) { -var PARSE_INT = parseInt, - RE = RegExp; - -Y.Color = { - KEYWORDS: { - black: '000', - silver: 'c0c0c0', - gray: '808080', - white: 'fff', - maroon: '800000', - red: 'f00', - purple: '800080', - fuchsia: 'f0f', - green: '008000', - lime: '0f0', - olive: '808000', - yellow: 'ff0', - navy: '000080', - blue: '00f', - teal: '008080', - aqua: '0ff' - }, - - re_RGB: /^rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)$/i, - re_hex: /^#?([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i, - re_hex3: /([0-9A-F])/gi, - - toRGB: function(val) { - if (!Y.Color.re_RGB.test(val)) { - val = Y.Color.toHex(val); - } - - if(Y.Color.re_hex.exec(val)) { - val = 'rgb(' + [ - PARSE_INT(RE.$1, 16), - PARSE_INT(RE.$2, 16), - PARSE_INT(RE.$3, 16) - ].join(', ') + ')'; - } - return val; - }, - - toHex: function(val) { - val = Y.Color.KEYWORDS[val] || val; - if (Y.Color.re_RGB.exec(val)) { - val = [ - Number(RE.$1).toString(16), - Number(RE.$2).toString(16), - Number(RE.$3).toString(16) - ]; - - for (var i = 0; i < val.length; i++) { - if (val[i].length < 2) { - val[i] = '0' + val[i]; - } - } - - val = val.join(''); - } - - if (val.length < 6) { - val = val.replace(Y.Color.re_hex3, '$1$1'); - } - - if (val !== 'transparent' && val.indexOf('#') < 0) { - val = '#' + val; - } - - return val.toUpperCase(); - } -}; -})(Y); - -}, '3.9.1', {"requires": ["dom-base"]}); +}, '3.12.0', {"requires": ["dom-base", "color-base"]}); YUI.add('dom-style-ie', function (Y, NAME) { (function(Y) { @@ -8128,7 +8621,7 @@ if (!testFeature('style', 'computedStyle')) { })(Y); -}, '3.9.1', {"requires": ["dom-style"]}); +}, '3.12.0', {"requires": ["dom-style"]}); YUI.add('dom-screen', function (Y, NAME) { (function(Y) { @@ -8733,7 +9226,7 @@ Y.mix(DOM, { })(Y); -}, '3.9.1', {"requires": ["dom-base", "dom-style"]}); +}, '3.12.0', {"requires": ["dom-base", "dom-style"]}); YUI.add('selector-native', function (Y, NAME) { (function(Y) { @@ -8974,8 +9467,11 @@ var Selector = { }, _nativeQuery: function(selector, root, one) { - if (Y.UA.webkit && selector.indexOf(':checked') > -1 && - (Y.Selector.pseudos && Y.Selector.pseudos.checked)) { // webkit (chrome, safari) fails to pick up "selected" with "checked" + if ( + (Y.UA.webkit || Y.UA.opera) && // webkit (chrome, safari) and Opera + selector.indexOf(':checked') > -1 && // fail to pick up "selected" with ":checked" + (Y.Selector.pseudos && Y.Selector.pseudos.checked) + ) { return Y.Selector.query(selector, root, one, true); // redo with skipNative true to try brute query } try { @@ -9103,12 +9599,12 @@ Y.mix(Y.Selector, Selector, true); })(Y); -}, '3.9.1', {"requires": ["dom-base"]}); +}, '3.12.0', {"requires": ["dom-base"]}); YUI.add('selector', function (Y, NAME) { -}, '3.9.1', {"requires": ["selector-native"]}); +}, '3.12.0', {"requires": ["selector-native"]}); YUI.add('event-custom-base', function (Y, NAME) { /** @@ -9146,12 +9642,12 @@ DO = { * Cache of objects touched by the utility * @property objs * @static - * @deprecated Since 3.6.0. The `_yuiaop` property on the AOP'd object - * replaces the role of this property, but is considered to be private, and + * @deprecated Since 3.6.0. The `_yuiaop` property on the AOP'd object + * replaces the role of this property, but is considered to be private, and * is only mentioned to provide a migration path. - * - * If you have a use case which warrants migration to the _yuiaop property, - * please file a ticket to let us know what it's used for and we can see if + * + * If you have a use case which warrants migration to the _yuiaop property, + * please file a ticket to let us know what it's used for and we can see if * we need to expose hooks for that functionality more formally. */ objs: null, @@ -9285,9 +9781,6 @@ DO = { if (handle.detach) { handle.detach(); } - }, - - _unload: function(e, me) { } }; @@ -9413,10 +9906,10 @@ DO.Method.prototype.exec = function () { if (af.hasOwnProperty(i)) { newRet = af[i].apply(this.obj, args); // Stop processing if a Halt object is returned - if (newRet && newRet.constructor == DO.Halt) { + if (newRet && newRet.constructor === DO.Halt) { return newRet.retVal; // Check for a new return value - } else if (newRet && newRet.constructor == DO.AlterReturn) { + } else if (newRet && newRet.constructor === DO.AlterReturn) { ret = newRet.newRetVal; // Update the static retval state DO.currentRetVal = ret; @@ -9501,9 +9994,6 @@ DO.Error = DO.Halt; ////////////////////////////////////////////////////////////////////////// -// Y["Event"] && Y.Event.addListener(window, "unload", Y.Do._unload, Y.Do); - - /** * Custom event engine, DOM event listener abstraction layer, synthetic DOM * events. @@ -9541,7 +10031,7 @@ var YArray = Y.Array, CONFIGS_HASH = YArray.hash(CONFIGS), - nativeSlice = Array.prototype.slice, + nativeSlice = Array.prototype.slice, YUI3_SIGNATURE = 9, YUI_LOG = 'yui:log', @@ -9550,7 +10040,7 @@ var YArray = Y.Array, var p; for (p in s) { - if (CONFIGS_HASH[p] && (ov || !(p in r))) { + if (CONFIGS_HASH[p] && (ov || !(p in r))) { r[p] = s[p]; } } @@ -9564,258 +10054,69 @@ var YArray = Y.Array, * * @param {String} type The type of event, which is passed to the callback * when the event fires. - * @param {object} o configuration object. + * @param {object} defaults configuration object. * @class CustomEvent * @constructor */ -Y.CustomEvent = function(type, o) { + + /** + * The type of event, returned to subscribers when the event fires + * @property type + * @type string + */ + +/** + * By default all custom events are logged in the debug build, set silent + * to true to disable debug outpu for this event. + * @property silent + * @type boolean + */ + +Y.CustomEvent = function(type, defaults) { this._kds = Y.CustomEvent.keepDeprecatedSubs; - o = o || {}; + this.id = Y.guid(); - this.id = Y.stamp(this); - - /** - * The type of event, returned to subscribers when the event fires - * @property type - * @type string - */ this.type = type; + this.silent = this.logSystem = (type === YUI_LOG); - /** - * The context the the event will fire from by default. Defaults to the YUI - * instance. - * @property context - * @type object - */ - this.context = Y; - - /** - * Monitor when an event is attached or detached. - * - * @property monitored - * @type boolean - */ - // this.monitored = false; - - this.logSystem = (type == YUI_LOG); - - /** - * If 0, this event does not broadcast. If 1, the YUI instance is notified - * every time this event fires. If 2, the YUI instance and the YUI global - * (if event is enabled on the global) are notified every time this event - * fires. - * @property broadcast - * @type int - */ - // this.broadcast = 0; - - /** - * By default all custom events are logged in the debug build, set silent - * to true to disable debug outpu for this event. - * @property silent - * @type boolean - */ - this.silent = this.logSystem; - - /** - * Specifies whether this event should be queued when the host is actively - * processing an event. This will effect exectution order of the callbacks - * for the various events. - * @property queuable - * @type boolean - * @default false - */ - // this.queuable = false; - - /** - * The subscribers to this event - * @property subscribers - * @type Subscriber {} - * @deprecated - */ if (this._kds) { + /** + * The subscribers to this event + * @property subscribers + * @type Subscriber {} + * @deprecated + */ + + /** + * 'After' subscribers + * @property afters + * @type Subscriber {} + * @deprecated + */ this.subscribers = {}; - } - - /** - * The subscribers to this event - * @property _subscribers - * @type Subscriber [] - * @private - */ - this._subscribers = []; - - /** - * 'After' subscribers - * @property afters - * @type Subscriber {} - */ - if (this._kds) { this.afters = {}; } - /** - * 'After' subscribers - * @property _afters - * @type Subscriber [] - * @private - */ - this._afters = []; - - /** - * This event has fired if true - * - * @property fired - * @type boolean - * @default false; - */ - // this.fired = false; - - /** - * An array containing the arguments the custom event - * was last fired with. - * @property firedWith - * @type Array - */ - // this.firedWith; - - /** - * This event should only fire one time if true, and if - * it has fired, any new subscribers should be notified - * immediately. - * - * @property fireOnce - * @type boolean - * @default false; - */ - // this.fireOnce = false; - - /** - * fireOnce listeners will fire syncronously unless async - * is set to true - * @property async - * @type boolean - * @default false - */ - //this.async = false; - - /** - * Flag for stopPropagation that is modified during fire() - * 1 means to stop propagation to bubble targets. 2 means - * to also stop additional subscribers on this target. - * @property stopped - * @type int - */ - // this.stopped = 0; - - /** - * Flag for preventDefault that is modified during fire(). - * if it is not 0, the default behavior for this event - * @property prevented - * @type int - */ - // this.prevented = 0; - - /** - * Specifies the host for this custom event. This is used - * to enable event bubbling - * @property host - * @type EventTarget - */ - // this.host = null; - - /** - * The default function to execute after event listeners - * have fire, but only if the default action was not - * prevented. - * @property defaultFn - * @type Function - */ - // this.defaultFn = null; - - /** - * The function to execute if a subscriber calls - * stopPropagation or stopImmediatePropagation - * @property stoppedFn - * @type Function - */ - // this.stoppedFn = null; - - /** - * The function to execute if a subscriber calls - * preventDefault - * @property preventedFn - * @type Function - */ - // this.preventedFn = null; - - /** - * Specifies whether or not this event's default function - * can be cancelled by a subscriber by executing preventDefault() - * on the event facade - * @property preventable - * @type boolean - * @default true - */ - this.preventable = true; - - /** - * Specifies whether or not a subscriber can stop the event propagation - * via stopPropagation(), stopImmediatePropagation(), or halt() - * - * Events can only bubble if emitFacade is true. - * - * @property bubbles - * @type boolean - * @default true - */ - this.bubbles = true; - - /** - * Supports multiple options for listener signatures in order to - * port YUI 2 apps. - * @property signature - * @type int - * @default 9 - */ - this.signature = YUI3_SIGNATURE; - - // this.subCount = 0; - // this.afterCount = 0; - - // this.hasSubscribers = false; - // this.hasAfters = false; - - /** - * If set to true, the custom event will deliver an EventFacade object - * that is similar to a DOM event object. - * @property emitFacade - * @type boolean - * @default false - */ - // this.emitFacade = false; - - this.applyConfig(o, true); - - // this.log("Creating " + this.type); - + if (defaults) { + mixConfigs(this, defaults, true); + } }; /** * Static flag to enable population of the `subscribers` * and `afters` properties held on a `CustomEvent` instance. - * - * These properties were changed to private properties (`_subscribers` and `_afters`), and - * converted from objects to arrays for performance reasons. * - * Setting this property to true will populate the deprecated `subscribers` and `afters` + * These properties were changed to private properties (`_subscribers` and `_afters`), and + * converted from objects to arrays for performance reasons. + * + * Setting this property to true will populate the deprecated `subscribers` and `afters` * properties for people who may be using them (which is expected to be rare). There will * be a performance hit, compared to the new array based implementation. * * If you are using these deprecated properties for a use case which the public API - * does not support, please file an enhancement request, and we can provide an alternate + * does not support, please file an enhancement request, and we can provide an alternate * public implementation which doesn't have the performance cost required to maintiain the * properties as objects. * @@ -9834,6 +10135,169 @@ Y.CustomEvent.prototype = { constructor: Y.CustomEvent, + /** + * Monitor when an event is attached or detached. + * + * @property monitored + * @type boolean + */ + + /** + * If 0, this event does not broadcast. If 1, the YUI instance is notified + * every time this event fires. If 2, the YUI instance and the YUI global + * (if event is enabled on the global) are notified every time this event + * fires. + * @property broadcast + * @type int + */ + + /** + * Specifies whether this event should be queued when the host is actively + * processing an event. This will effect exectution order of the callbacks + * for the various events. + * @property queuable + * @type boolean + * @default false + */ + + /** + * This event has fired if true + * + * @property fired + * @type boolean + * @default false; + */ + + /** + * An array containing the arguments the custom event + * was last fired with. + * @property firedWith + * @type Array + */ + + /** + * This event should only fire one time if true, and if + * it has fired, any new subscribers should be notified + * immediately. + * + * @property fireOnce + * @type boolean + * @default false; + */ + + /** + * fireOnce listeners will fire syncronously unless async + * is set to true + * @property async + * @type boolean + * @default false + */ + + /** + * Flag for stopPropagation that is modified during fire() + * 1 means to stop propagation to bubble targets. 2 means + * to also stop additional subscribers on this target. + * @property stopped + * @type int + */ + + /** + * Flag for preventDefault that is modified during fire(). + * if it is not 0, the default behavior for this event + * @property prevented + * @type int + */ + + /** + * Specifies the host for this custom event. This is used + * to enable event bubbling + * @property host + * @type EventTarget + */ + + /** + * The default function to execute after event listeners + * have fire, but only if the default action was not + * prevented. + * @property defaultFn + * @type Function + */ + + /** + * The function to execute if a subscriber calls + * stopPropagation or stopImmediatePropagation + * @property stoppedFn + * @type Function + */ + + /** + * The function to execute if a subscriber calls + * preventDefault + * @property preventedFn + * @type Function + */ + + /** + * The subscribers to this event + * @property _subscribers + * @type Subscriber [] + * @private + */ + + /** + * 'After' subscribers + * @property _afters + * @type Subscriber [] + * @private + */ + + /** + * If set to true, the custom event will deliver an EventFacade object + * that is similar to a DOM event object. + * @property emitFacade + * @type boolean + * @default false + */ + + /** + * Supports multiple options for listener signatures in order to + * port YUI 2 apps. + * @property signature + * @type int + * @default 9 + */ + signature : YUI3_SIGNATURE, + + /** + * The context the the event will fire from by default. Defaults to the YUI + * instance. + * @property context + * @type object + */ + context : Y, + + /** + * Specifies whether or not this event's default function + * can be cancelled by a subscriber by executing preventDefault() + * on the event facade + * @property preventable + * @type boolean + * @default true + */ + preventable : true, + + /** + * Specifies whether or not a subscriber can stop the event propagation + * via stopPropagation(), stopImmediatePropagation(), or halt() + * + * Events can only bubble if emitFacade is true. + * + * @property bubbles + * @type boolean + * @default true + */ + bubbles : true, + /** * Returns the number of subscribers for this event as the sum of the on() * subscribers and after() subscribers. @@ -9842,15 +10306,35 @@ Y.CustomEvent.prototype = { * @return Number */ hasSubs: function(when) { - var s = this._subscribers.length, a = this._afters.length, sib = this.sibling; + var s = 0, + a = 0, + subs = this._subscribers, + afters = this._afters, + sib = this.sibling; + + if (subs) { + s = subs.length; + } + + if (afters) { + a = afters.length; + } if (sib) { - s += sib._subscribers.length; - a += sib._afters.length; + subs = sib._subscribers; + afters = sib._afters; + + if (subs) { + s += subs.length; + } + + if (afters) { + a += afters.length; + } } if (when) { - return (when == 'after') ? a : s; + return (when === 'after') ? a : s; } return (s + a); @@ -9878,12 +10362,47 @@ Y.CustomEvent.prototype = { * @return {Array} first item is the on subscribers, second the after. */ getSubs: function() { - var s = this._subscribers, a = this._afters, sib = this.sibling; - s = (sib) ? s.concat(sib._subscribers) : s.concat(); - a = (sib) ? a.concat(sib._afters) : a.concat(); + var sibling = this.sibling, + subs = this._subscribers, + afters = this._afters, + siblingSubs, + siblingAfters; - return [s, a]; + if (sibling) { + siblingSubs = sibling._subscribers; + siblingAfters = sibling._afters; + } + + if (siblingSubs) { + if (subs) { + subs = subs.concat(siblingSubs); + } else { + subs = siblingSubs.concat(); + } + } else { + if (subs) { + subs = subs.concat(); + } else { + subs = []; + } + } + + if (siblingAfters) { + if (afters) { + afters = afters.concat(siblingAfters); + } else { + afters = siblingAfters.concat(); + } + } else { + if (afters) { + afters = afters.concat(); + } else { + afters = []; + } + } + + return [subs, afters]; }, /** @@ -9899,7 +10418,7 @@ Y.CustomEvent.prototype = { /** * Create the Subscription for subscribing function, context, and bound - * arguments. If this is a fireOnce event, the subscriber is immediately + * arguments. If this is a fireOnce event, the subscriber is immediately * notified. * * @method _on @@ -9914,24 +10433,41 @@ Y.CustomEvent.prototype = { if (!fn) { this.log('Invalid callback for CE: ' + this.type); } - var s = new Y.Subscriber(fn, context, args, when); + var s = new Y.Subscriber(fn, context, args, when), + firedWith; if (this.fireOnce && this.fired) { + + firedWith = this.firedWith; + + // It's a little ugly for this to know about facades, + // but given the current breakup, not much choice without + // moving a whole lot of stuff around. + if (this.emitFacade && this._addFacadeToArgs) { + this._addFacadeToArgs(firedWith); + } + if (this.async) { - setTimeout(Y.bind(this._notify, this, s, this.firedWith), 0); + setTimeout(Y.bind(this._notify, this, s, firedWith), 0); } else { - this._notify(s, this.firedWith); + this._notify(s, firedWith); } } - if (when == AFTER) { + if (when === AFTER) { + if (!this._afters) { + this._afters = []; + } this._afters.push(s); } else { + if (!this._subscribers) { + this._subscribers = []; + } this._subscribers.push(s); } if (this._kds) { - if (when == AFTER) { + if (when === AFTER) { this.afters[s.id] = s; } else { this.subscribers[s.id] = s; @@ -9952,7 +10488,7 @@ Y.CustomEvent.prototype = { var a = (arguments.length > 2) ? nativeSlice.call(arguments, 2) : null; return this._on(fn, context, a, true); }, - + /** * Listen for this event * @method on @@ -10002,25 +10538,29 @@ Y.CustomEvent.prototype = { if (fn && fn.detach) { return fn.detach(); } - + var i, s, found = 0, subs = this._subscribers, afters = this._afters; - for (i = subs.length; i >= 0; i--) { - s = subs[i]; - if (s && (!fn || fn === s.fn)) { - this._delete(s, subs, i); - found++; + if (subs) { + for (i = subs.length; i >= 0; i--) { + s = subs[i]; + if (s && (!fn || fn === s.fn)) { + this._delete(s, subs, i); + found++; + } } } - for (i = afters.length; i >= 0; i--) { - s = afters[i]; - if (s && (!fn || fn === s.fn)) { - this._delete(s, afters, i); - found++; + if (afters) { + for (i = afters.length; i >= 0; i--) { + s = afters[i]; + if (s && (!fn || fn === s.fn)) { + this._delete(s, afters, i); + found++; + } } } @@ -10090,13 +10630,34 @@ Y.CustomEvent.prototype = { * */ fire: function() { + + // push is the fastest way to go from arguments to arrays + // for most browsers currently + // http://jsperf.com/push-vs-concat-vs-slice/2 + + var args = []; + args.push.apply(args, arguments); + + return this._fire(args); + }, + + /** + * Private internal implementation for `fire`, which is can be used directly by + * `EventTarget` and other event module classes which have already converted from + * an `arguments` list to an array, to avoid the repeated overhead. + * + * @method _fire + * @private + * @param {Array} args The array of arguments passed to be passed to handlers. + * @return {boolean} false if one of the subscribers returned false, true otherwise. + */ + _fire: function(args) { + if (this.fireOnce && this.fired) { this.log('fireOnce event: ' + this.type + ' already fired'); return true; } else { - var args = nativeSlice.call(arguments, 0); - // this doesn't happen if the event isn't published // this.host._monitor('fire', this.type, args); @@ -10130,7 +10691,9 @@ Y.CustomEvent.prototype = { this._procSubs(subs[0], args); this._procSubs(subs[1], args); } - this._broadcast(args); + if (this.broadcast) { + this._broadcast(args); + } return this.stopped ? false : true; }, @@ -10162,7 +10725,7 @@ Y.CustomEvent.prototype = { if (false === this._notify(s, args, ef)) { this.stopped = 2; } - if (this.stopped == 2) { + if (this.stopped === 2) { return false; } } @@ -10189,7 +10752,7 @@ Y.CustomEvent.prototype = { Y.fire.apply(Y, a); } - if (this.broadcast == 2) { + if (this.broadcast === 2) { Y.Global.fire.apply(Y.Global, a); } } @@ -10228,12 +10791,15 @@ Y.CustomEvent.prototype = { var when = s._when; if (!subs) { - subs = (when === AFTER) ? this._afters : this._subscribers; - i = YArray.indexOf(subs, s, 0); + subs = (when === AFTER) ? this._afters : this._subscribers; } - if (s && subs[i] === s) { - subs.splice(i, 1); + if (subs) { + i = YArray.indexOf(subs, s, 0); + + if (s && subs[i] === s) { + subs.splice(i, 1); + } } if (this._kds) { @@ -10287,7 +10853,7 @@ Y.Subscriber = function(fn, context, args, when) { * @property id * @type String */ - this.id = Y.stamp(this); + this.id = Y.guid(); /** * Additional arguments to propagate to the subscriber @@ -10391,12 +10957,12 @@ Y.Subscriber.prototype = { */ contains: function(fn, context) { if (context) { - return ((this.fn == fn) && this.context == context); + return ((this.fn === fn) && this.context === context); } else { - return (this.fn == fn); + return (this.fn === fn); } }, - + valueOf : function() { return this.id; } @@ -10514,14 +11080,14 @@ var L = Y.Lang, * @method _getType * @private */ - _getType = Y.cached(function(type, pre) { + _getType = function(type, pre) { - if (!pre || (typeof type !== "string") || type.indexOf(PREFIX_DELIMITER) > -1) { + if (!pre || !type || type.indexOf(PREFIX_DELIMITER) > -1) { return type; } return pre + PREFIX_DELIMITER + type; - }), + }, /** * Returns an array with the detach key (if provided), @@ -10550,7 +11116,7 @@ var L = Y.Lang, if (i > -1) { detachcategory = t.substr(0, (i)); t = t.substr(i+1); - if (t == '*') { + if (t === '*') { t = null; } } @@ -10561,39 +11127,38 @@ var L = Y.Lang, ET = function(opts) { + var etState = this._yuievt, + etConfig; - var o = (L.isObject(opts)) ? opts : {}; + if (!etState) { + etState = this._yuievt = { + events: {}, // PERF: Not much point instantiating lazily. We're bound to have events + targets: null, // PERF: Instantiate lazily, if user actually adds target, + config: { + host: this, + context: this + }, + chain: Y.config.chain + }; + } - this._yuievt = this._yuievt || { + etConfig = etState.config; - id: Y.guid(), + if (opts) { + mixConfigs(etConfig, opts, true); - events: {}, - - targets: {}, - - config: o, - - chain: ('chain' in o) ? o.chain : Y.config.chain, - - bubbling: false, - - defaults: { - context: o.context || this, - host: this, - emitFacade: o.emitFacade, - fireOnce: o.fireOnce, - queuable: o.queuable, - monitored: o.monitored, - broadcast: o.broadcast, - defaultTargetOnly: o.defaultTargetOnly, - bubbles: ('bubbles' in o) ? o.bubbles : true + if (opts.chain !== undefined) { + etState.chain = opts.chain; } - }; + + if (opts.prefix) { + etConfig.prefix = opts.prefix; + } + } }; - ET.prototype = { + constructor: ET, /** @@ -10789,6 +11354,11 @@ ET.prototype = { if (!handle) { ce = yuievt.events[type] || this.publish(type); handle = ce._on(fn, context, (arguments.length > 3) ? nativeSlice.call(arguments, 3) : null, (after) ? 'after' : true); + + // TODO: More robust regex, accounting for category + if (type.indexOf("*:") !== -1) { + this._hasSiblings = true; + } } if (detachcategory) { @@ -10827,8 +11397,11 @@ ET.prototype = { * @return {EventTarget} the host */ detach: function(type, fn, context) { - var evts = this._yuievt.events, i, - Node = Y.Node, isNode = Node && (Y.instanceOf(this, Node)); + + var evts = this._yuievt.events, + i, + Node = Y.Node, + isNode = Node && (Y.instanceOf(this, Node)); // detachAll disabled on the Y instance. if (!type && (this !== Y)) { @@ -11019,53 +11592,102 @@ ET.prototype = { * */ publish: function(type, opts) { - var events, ce, ret, defaults, - edata = this._yuievt, - pre = edata.config.prefix; - if (L.isObject(type)) { + var ret, + etState = this._yuievt, + etConfig = etState.config, + pre = etConfig.prefix; + + if (typeof type === "string") { + if (pre) { + type = _getType(type, pre); + } + ret = this._publish(type, etConfig, opts); + } else { ret = {}; + Y.each(type, function(v, k) { - ret[k] = this.publish(k, v || opts); + if (pre) { + k = _getType(k, pre); + } + ret[k] = this._publish(k, etConfig, v || opts); }, this); - return ret; } - type = (pre) ? _getType(type, pre) : type; + return ret; + }, - events = edata.events; - ce = events[type]; + /** + * Returns the fully qualified type, given a short type string. + * That is, returns "foo:bar" when given "bar" if "foo" is the configured prefix. + * + * NOTE: This method, unlike _getType, does no checking of the value passed in, and + * is designed to be used with the low level _publish() method, for critical path + * implementations which need to fast-track publish for performance reasons. + * + * @method _getFullType + * @private + * @param {String} type The short type to prefix + * @return {String} The prefixed type, if a prefix is set, otherwise the type passed in + */ + _getFullType : function(type) { - this._monitor('publish', type, { - args: arguments - }); + var pre = this._yuievt.config.prefix; - if (ce) { - // ce.log("publish applying new config to published event: '"+type+"' exists", 'info', 'event'); - if (opts) { - ce.applyConfig(opts, true); - } + if (pre) { + return pre + PREFIX_DELIMITER + type; } else { - // TODO: Lazy publish goes here. - defaults = edata.defaults; + return type; + } + }, - // apply defaults - ce = new Y.CustomEvent(type, defaults); - if (opts) { - ce.applyConfig(opts, true); - } + /** + * The low level event publish implementation. It expects all the massaging to have been done + * outside of this method. e.g. the `type` to `fullType` conversion. It's designed to be a fast + * path publish, which can be used by critical code paths to improve performance. + * + * @method _publish + * @private + * @param {String} fullType The prefixed type of the event to publish. + * @param {Object} etOpts The EventTarget specific configuration to mix into the published event. + * @param {Object} ceOpts The publish specific configuration to mix into the published event. + * @return {CustomEvent} The published event. If called without `etOpts` or `ceOpts`, this will + * be the default `CustomEvent` instance, and can be configured independently. + */ + _publish : function(fullType, etOpts, ceOpts) { - events[type] = ce; + var ce, + etState = this._yuievt, + etConfig = etState.config, + host = etConfig.host, + context = etConfig.context, + events = etState.events; + + ce = events[fullType]; + + // PERF: Hate to pull the check out of monitor, but trying to keep critical path tight. + if ((etConfig.monitored && !ce) || (ce && ce.monitored)) { + this._monitor('publish', fullType, { + args: arguments + }); } - // make sure we turn the broadcast flag off if this - // event was published as a result of bubbling - // if (opts instanceof Y.CustomEvent) { - // events[type].broadcast = false; - // } + if (!ce) { + // Publish event + ce = events[fullType] = new Y.CustomEvent(fullType, etOpts); - return events[type]; + if (!etOpts) { + ce.host = host; + ce.context = context; + } + } + + if (ceOpts) { + mixConfigs(ce, ceOpts, true); + } + + return ce; }, /** @@ -11105,23 +11727,23 @@ ET.prototype = { } }, - /** + /** * Fire a custom event by name. The callback functions will be executed * from the context specified when the event was created, and with the * following parameters. * - * If the custom event object hasn't been created, then the event hasn't - * been published and it has no subscribers. For performance sake, we - * immediate exit in this case. This means the event won't bubble, so - * if the intention is that a bubble target be notified, the event must - * be published on this object first. - * * The first argument is the event type, and any additional arguments are * passed to the listeners as parameters. If the first of these is an * object literal, and the event is configured to emit an event facade, * that object is mixed into the event facade and the facade is provided * in place of the original object. * + * If the custom event object hasn't been created, then the event hasn't + * been published and it has no subscribers. For performance sake, we + * immediate exit in this case. This means the event won't bubble, so + * if the intention is that a bubble target be notified, the event must + * be published on this object first. + * * @method fire * @param type {String|Object} The type of the event, or an object that contains * a 'type' property. @@ -11130,30 +11752,63 @@ ET.prototype = { * configured to emit an event facade, the event facade will replace that * parameter after the properties the object literal contains are copied to * the event facade. - * @return {EventTarget} the event host + * @return {Boolean} True if the whole lifecycle of the event went through, + * false if at any point the event propagation was halted. */ fire: function(type) { - var typeIncluded = L.isString(type), - t = (typeIncluded) ? type : (type && type.type), + var typeIncluded = (typeof type === "string"), + argCount = arguments.length, + t = type, yuievt = this._yuievt, - pre = yuievt.config.prefix, - ce, ret, + etConfig = yuievt.config, + pre = etConfig.prefix, + ret, + ce, ce2, - args = (typeIncluded) ? nativeSlice.call(arguments, 1) : arguments; + args; - t = (pre) ? _getType(t, pre) : t; + if (typeIncluded && argCount <= 3) { - ce = this.getEvent(t, true); - ce2 = this.getSibling(t, ce); + // PERF: Try to avoid slice/iteration for the common signatures - if (ce2 && !ce) { - ce = this.publish(t); + // Most common + if (argCount === 2) { + args = [arguments[1]]; // fire("foo", {}) + } else if (argCount === 3) { + args = [arguments[1], arguments[2]]; // fire("foo", {}, opts) + } else { + args = []; // fire("foo") + } + + } else { + args = nativeSlice.call(arguments, ((typeIncluded) ? 1 : 0)); } - this._monitor('fire', (ce || t), { - args: args - }); + if (!typeIncluded) { + t = (type && type.type); + } + + if (pre) { + t = _getType(t, pre); + } + + ce = yuievt.events[t]; + + if (this._hasSiblings) { + ce2 = this.getSibling(t, ce); + + if (ce2 && !ce) { + ce = this.publish(t); + } + } + + // PERF: trying to avoid function call, since this is a critical path + if ((etConfig.monitored && (!ce || ce.monitored)) || (ce && ce.monitored)) { + this._monitor('fire', (ce || t), { + args: args + }); + } // this event has not been published or subscribed to if (!ce) { @@ -11164,8 +11819,12 @@ ET.prototype = { // otherwise there is nothing to be done ret = true; } else { - ce.sibling = ce2; - ret = ce.fire.apply(ce, args); + + if (ce2) { + ce.sibling = ce2; + } + + ret = ce._fire(args); } return (yuievt.chain) ? this : ret; @@ -11173,17 +11832,15 @@ ET.prototype = { getSibling: function(type, ce) { var ce2; + // delegate to *:type events if there are subscribers if (type.indexOf(PREFIX_DELIMITER) > -1) { type = _wildType(type); - // console.log(type); ce2 = this.getEvent(type, true); if (ce2) { - // console.log("GOT ONE: " + type); ce2.applyConfig(ce); ce2.bubbles = false; ce2.broadcast = 0; - // ret = ce2.fire.apply(ce2, a); } } @@ -11200,6 +11857,7 @@ ET.prototype = { */ getEvent: function(type, prefixed) { var pre, e; + if (!prefixed) { pre = this._yuievt.config.prefix; type = (pre) ? _getType(type, pre) : type; @@ -11298,7 +11956,9 @@ Y.Global = YUI.Env.globalEvents; treating that method as an event -For custom event subscriptions, pass the custom event name as the first argument and callback as the second. The `this` object in the callback will be `Y` unless an override is passed as the third argument. +For custom event subscriptions, pass the custom event name as the first argument +and callback as the second. The `this` object in the callback will be `Y` unless +an override is passed as the third argument. Y.on('io:complete', function () { Y.MyApp.updateStatus('Transaction complete'); @@ -11324,7 +11984,7 @@ selector or other identifier. `defaultFn` can prevent the default behavior with `e.preventDefault()` from the event object passed as the first parameter to the subscription callback. -To subscribe to the execution of an object method, pass arguments corresponding to the call signature for +To subscribe to the execution of an object method, pass arguments corresponding to the call signature for `Y.Do.before(...)`. NOTE: The formal parameter list below is for events, not for function @@ -11409,7 +12069,7 @@ for that signature. **/ -}, '3.9.1', {"requires": ["oop"]}); +}, '3.12.0', {"requires": ["oop"]}); YUI.add('event-custom-complex', function (Y, NAME) { @@ -11422,10 +12082,11 @@ YUI.add('event-custom-complex', function (Y, NAME) { var FACADE, FACADE_KEYS, + YObject = Y.Object, key, EMPTY = {}, CEProto = Y.CustomEvent.prototype, - ETProto = Y.EventTarget.prototype, + ETProto = Y.EventTarget.prototype, mixFacadeProps = function(facade, payload) { var p; @@ -11447,7 +12108,9 @@ var FACADE, Y.EventFacade = function(e, currentTarget) { - e = e || EMPTY; + if (!e) { + e = EMPTY; + } this._event = e; @@ -11546,151 +12209,209 @@ Y.mix(Y.EventFacade.prototype, { CEProto.fireComplex = function(args) { - var es, ef, q, queue, ce, ret, events, subs, postponed, - self = this, host = self.host || self, next, oldbubble; + var es, + ef, + q, + queue, + ce, + ret = true, + events, + subs, + ons, + afters, + afterQueue, + postponed, + prevented, + preventedFn, + defaultFn, + self = this, + host = self.host || self, + next, + oldbubble, + stack = self.stack, + yuievt = host._yuievt, + hasPotentialSubscribers; + + if (stack) { - if (self.stack) { // queue this event if the current item in the queue bubbles - if (self.queuable && self.type != self.stack.next.type) { + if (self.queuable && self.type !== stack.next.type) { self.log('queue ' + self.type); - self.stack.queue.push([self, args]); + + if (!stack.queue) { + stack.queue = []; + } + stack.queue.push([self, args]); + return true; } } - es = self.stack || { - // id of the first event in the stack - id: self.id, - next: self, - silent: self.silent, - stopped: 0, - prevented: 0, - bubbling: null, - type: self.type, - // defaultFnQueue: new Y.Queue(), - afterQueue: new Y.Queue(), - defaultTargetOnly: self.defaultTargetOnly, - queue: [] - }; - - subs = self.getSubs(); - - self.stopped = (self.type !== es.type) ? 0 : es.stopped; - self.prevented = (self.type !== es.type) ? 0 : es.prevented; + hasPotentialSubscribers = self.hasSubs() || yuievt.hasTargets || self.broadcast; self.target = self.target || host; - - if (self.stoppedFn) { - events = new Y.EventTarget({ - fireOnce: true, - context: host - }); - - self.events = events; - - events.on('stopped', self.stoppedFn); - } - self.currentTarget = host; - self.details = args.slice(); // original arguments in the details + self.details = args.concat(); - // self.log("Firing " + self + ", " + "args: " + args); - self.log("Firing " + self.type); + if (hasPotentialSubscribers) { - self._facade = null; // kill facade to eliminate stale properties + es = stack || { - ef = self._getFacade(args); + id: self.id, // id of the first event in the stack + next: self, + silent: self.silent, + stopped: 0, + prevented: 0, + bubbling: null, + type: self.type, + // defaultFnQueue: new Y.Queue(), + defaultTargetOnly: self.defaultTargetOnly - if (Y.Lang.isObject(args[0])) { - args[0] = ef; - } else { - args.unshift(ef); - } + }; - if (subs[0]) { - self._procSubs(subs[0], args, ef); - } + subs = self.getSubs(); + ons = subs[0]; + afters = subs[1]; - // bubble if this is hosted in an event target and propagation has not been stopped - if (self.bubbles && host.bubble && !self.stopped) { + self.stopped = (self.type !== es.type) ? 0 : es.stopped; + self.prevented = (self.type !== es.type) ? 0 : es.prevented; - oldbubble = es.bubbling; - - es.bubbling = self.type; - - if (es.type != self.type) { - es.stopped = 0; - es.prevented = 0; + if (self.stoppedFn) { + // PERF TODO: Can we replace with callback, like preventedFn. Look into history + events = new Y.EventTarget({ + fireOnce: true, + context: host + }); + self.events = events; + events.on('stopped', self.stoppedFn); } - ret = host.bubble(self, args, null, es); + // self.log("Firing " + self + ", " + "args: " + args); + self.log("Firing " + self.type); - self.stopped = Math.max(self.stopped, es.stopped); - self.prevented = Math.max(self.prevented, es.prevented); + self._facade = null; // kill facade to eliminate stale properties - es.bubbling = oldbubble; - } + ef = self._createFacade(args); - if (self.prevented) { - if (self.preventedFn) { - self.preventedFn.apply(host, args); + if (ons) { + self._procSubs(ons, args, ef); } - } else if (self.defaultFn && - ((!self.defaultTargetOnly && !es.defaultTargetOnly) || - host === ef.target)) { - self.defaultFn.apply(host, args); - } - // broadcast listeners are fired as discreet events on the - // YUI instance and potentially the YUI global. - self._broadcast(args); + // bubble if this is hosted in an event target and propagation has not been stopped + if (self.bubbles && host.bubble && !self.stopped) { + oldbubble = es.bubbling; - // Queue the after - if (subs[1] && !self.prevented && self.stopped < 2) { - if (es.id === self.id || self.type != host._yuievt.bubbling) { - self._procSubs(subs[1], args, ef); - while ((next = es.afterQueue.last())) { - next(); + es.bubbling = self.type; + + if (es.type !== self.type) { + es.stopped = 0; + es.prevented = 0; + } + + ret = host.bubble(self, args, null, es); + + self.stopped = Math.max(self.stopped, es.stopped); + self.prevented = Math.max(self.prevented, es.prevented); + + es.bubbling = oldbubble; + } + + prevented = self.prevented; + + if (prevented) { + preventedFn = self.preventedFn; + if (preventedFn) { + preventedFn.apply(host, args); } } else { - postponed = subs[1]; - if (es.execDefaultCnt) { - postponed = Y.merge(postponed); - Y.each(postponed, function(s) { - s.postponed = true; + defaultFn = self.defaultFn; + + if (defaultFn && ((!self.defaultTargetOnly && !es.defaultTargetOnly) || host === ef.target)) { + defaultFn.apply(host, args); + } + } + + // broadcast listeners are fired as discreet events on the + // YUI instance and potentially the YUI global. + if (self.broadcast) { + self._broadcast(args); + } + + if (afters && !self.prevented && self.stopped < 2) { + + // Queue the after + afterQueue = es.afterQueue; + + if (es.id === self.id || self.type !== yuievt.bubbling) { + + self._procSubs(afters, args, ef); + + if (afterQueue) { + while ((next = afterQueue.last())) { + next(); + } + } + } else { + postponed = afters; + + if (es.execDefaultCnt) { + postponed = Y.merge(postponed); + + Y.each(postponed, function(s) { + s.postponed = true; + }); + } + + if (!afterQueue) { + es.afterQueue = new Y.Queue(); + } + + es.afterQueue.add(function() { + self._procSubs(postponed, args, ef); }); } - es.afterQueue.add(function() { - self._procSubs(postponed, args, ef); - }); - } - } - - self.target = null; - - if (es.id === self.id) { - queue = es.queue; - - while (queue.length) { - q = queue.pop(); - ce = q[0]; - // set up stack to allow the next item to be processed - es.next = ce; - ce.fire.apply(ce, q[1]); } - self.stack = null; - } + self.target = null; - ret = !(self.stopped); + if (es.id === self.id) { - if (self.type != host._yuievt.bubbling) { - es.stopped = 0; - es.prevented = 0; - self.stopped = 0; - self.prevented = 0; + queue = es.queue; + + if (queue) { + while (queue.length) { + q = queue.pop(); + ce = q[0]; + // set up stack to allow the next item to be processed + es.next = ce; + ce._fire(q[1]); + } + } + + self.stack = null; + } + + ret = !(self.stopped); + + if (self.type !== yuievt.bubbling) { + es.stopped = 0; + es.prevented = 0; + self.stopped = 0; + self.prevented = 0; + } + + } else { + defaultFn = self.defaultFn; + + if(defaultFn) { + ef = self._createFacade(args); + + if ((!self.defaultTargetOnly) || (host === ef.target)) { + defaultFn.apply(host, args); + } + } } // Kill the cached facade to free up memory. @@ -11700,31 +12421,62 @@ CEProto.fireComplex = function(args) { return ret; }; -CEProto._getFacade = function() { +/** + * @method _hasPotentialSubscribers + * @for CustomEvent + * @private + * @return {boolean} Whether the event has potential subscribers or not + */ +CEProto._hasPotentialSubscribers = function() { + return this.hasSubs() || this.host._yuievt.hasTargets || this.broadcast; +}; - var ef = this._facade, o, - args = this.details; +/** + * Internal utility method to create a new facade instance and + * insert it into the fire argument list, accounting for any payload + * merging which needs to happen. + * + * This used to be called `_getFacade`, but the name seemed inappropriate + * when it was used without a need for the return value. + * + * @method _createFacade + * @private + * @param fireArgs {Array} The arguments passed to "fire", which need to be + * shifted (and potentially merged) when the facade is added. + * @return {EventFacade} The event facade created. + */ + +// TODO: Remove (private) _getFacade alias, once synthetic.js is updated. +CEProto._createFacade = CEProto._getFacade = function(fireArgs) { + + var userArgs = this.details, + firstArg = userArgs && userArgs[0], + firstArgIsObj = (firstArg && (typeof firstArg === "object")), + ef = this._facade; if (!ef) { ef = new Y.EventFacade(this, this.currentTarget); } - // if the first argument is an object literal, apply the - // properties to the event facade - o = args && args[0]; - - if (Y.Lang.isObject(o, true)) { - + if (firstArgIsObj) { // protect the event facade properties - mixFacadeProps(ef, o); + mixFacadeProps(ef, firstArg); - // Allow the event type to be faked - // http://yuilibrary.com/projects/yui3/ticket/2528376 - ef.type = o.type || ef.type; + // Allow the event type to be faked http://yuilibrary.com/projects/yui3/ticket/2528376 + if (firstArg.type) { + ef.type = firstArg.type; + } + + if (fireArgs) { + fireArgs[0] = ef; + } + } else { + if (fireArgs) { + fireArgs.unshift(ef); + } } // update the details field with the arguments - // ef.type = this.type; ef.details = this.details; // use the original target when the event bubbled to this target @@ -11739,6 +12491,23 @@ CEProto._getFacade = function() { return this._facade; }; +/** + * Utility method to manipulate the args array passed in, to add the event facade, + * if it's not already the first arg. + * + * @method _addFacadeToArgs + * @private + * @param {Array} The arguments to manipulate + */ +CEProto._addFacadeToArgs = function(args) { + var e = args[0]; + + // Trying not to use instanceof, just to avoid potential cross Y edge case issues. + if (!(e && e.halt && e.stopImmediatePropagation && e.stopPropagation && e._event)) { + this._createFacade(args); + } +}; + /** * Stop propagation to bubble targets * @for CustomEvent @@ -11812,8 +12581,14 @@ CEProto.halt = function(immediate) { * @for EventTarget */ ETProto.addTarget = function(o) { - this._yuievt.targets[Y.stamp(o)] = o; - this._yuievt.hasTargets = true; + var etState = this._yuievt; + + if (!etState.targets) { + etState.targets = {}; + } + + etState.targets[Y.stamp(o)] = o; + etState.hasTargets = true; }; /** @@ -11822,7 +12597,8 @@ ETProto.addTarget = function(o) { * @return EventTarget[] */ ETProto.getTargets = function() { - return Y.Object.values(this._yuievt.targets); + var targets = this._yuievt.targets; + return targets ? YObject.values(targets) : []; }; /** @@ -11832,7 +12608,15 @@ ETProto.getTargets = function() { * @for EventTarget */ ETProto.removeTarget = function(o) { - delete this._yuievt.targets[Y.stamp(o)]; + var targets = this._yuievt.targets; + + if (targets) { + delete targets[Y.stamp(o, true)]; + + if (YObject.size(targets) === 0) { + this._yuievt.hasTargets = false; + } + } }; /** @@ -11844,8 +12628,14 @@ ETProto.removeTarget = function(o) { */ ETProto.bubble = function(evt, args, target, es) { - var targs = this._yuievt.targets, ret = true, - t, type = evt && evt.type, ce, i, bc, ce2, + var targs = this._yuievt.targets, + ret = true, + t, + ce, + i, + bc, + ce2, + type = evt && evt.type, originalTarget = target || (evt && evt.target) || this, oldbubble; @@ -11853,9 +12643,14 @@ ETProto.bubble = function(evt, args, target, es) { for (i in targs) { if (targs.hasOwnProperty(i)) { + t = targs[i]; - ce = t.getEvent(type, true); - ce2 = t.getSibling(type, ce); + + ce = t._yuievt.events[type]; + + if (t._hasSiblings) { + ce2 = t.getSibling(type, ce); + } if (ce2 && !ce) { ce = t.publish(type); @@ -11872,10 +12667,11 @@ ETProto.bubble = function(evt, args, target, es) { } } else { - ce.sibling = ce2; + if (ce2) { + ce.sibling = ce2; + } - // set the original target to that the target payload on the - // facade is correct. + // set the original target to that the target payload on the facade is correct. ce.target = originalTarget; ce.originalTarget = originalTarget; ce.currentTarget = t; @@ -11888,7 +12684,13 @@ ETProto.bubble = function(evt, args, target, es) { ce.stack = es; + // TODO: See what's getting in the way of changing this to use + // the more performant ce._fire(args || evt.details || []). + + // Something in Widget Parent/Child tests is not happy if we + // change it - maybe evt.details related? ret = ret && ce.fire.apply(ce, args || evt.details || []); + ce.broadcast = bc; ce.originalTarget = null; @@ -11906,6 +12708,25 @@ ETProto.bubble = function(evt, args, target, es) { return ret; }; +/** + * @method _hasPotentialSubscribers + * @for EventTarget + * @private + * @param {String} fullType The fully prefixed type name + * @return {boolean} Whether the event has potential subscribers or not + */ +ETProto._hasPotentialSubscribers = function(fullType) { + + var etState = this._yuievt, + e = etState.events[fullType]; + + if (e) { + return e.hasSubs() || etState.hasTargets || e.broadcast; + } else { + return false; + } +}; + FACADE = new Y.EventFacade(); FACADE_KEYS = {}; @@ -11914,7 +12735,8 @@ for (key in FACADE) { FACADE_KEYS[key] = true; } -}, '3.9.1', {"requires": ["event-custom-base"]}); + +}, '3.12.0', {"requires": ["event-custom-base"]}); YUI.add('node-core', function (Y, NAME) { /** @@ -12124,7 +12946,7 @@ Y_Node.addMethod = function(name, fn, context) { } args.unshift(node._node); - ret = fn.apply(node, args); + ret = fn.apply(context || node, args); if (ret) { // scrub truthy ret = Y_Node.scrubVal(ret, node); @@ -12552,10 +13374,15 @@ Y.mix(Y_Node.prototype, { * @return {NodeList} A NodeList instance for the matching HTMLCollection/Array. */ all: function(selector) { - var nodelist = Y.all(Y.Selector.query(selector, this._node)); - nodelist._query = selector; - nodelist._queryRoot = this._node; - return nodelist; + var nodelist; + + if (this._node) { + nodelist = Y.all(Y.Selector.query(selector, this._node)); + nodelist._query = selector; + nodelist._queryRoot = this._node; + } + + return nodelist || Y.all([]); }, // TODO: allow fn test @@ -13214,7 +14041,7 @@ var Y_NodeList = Y.NodeList, /** Removes the last from the NodeList and returns it. * @for NodeList * @method pop - * @return {Node} The last item in the NodeList. + * @return {Node | null} The last item in the NodeList, or null if the list is empty. */ 'pop': 0, /** Adds the given Node(s) to the end of the NodeList. @@ -13226,7 +14053,7 @@ var Y_NodeList = Y.NodeList, /** Removes the first item from the NodeList and returns it. * @for NodeList * @method shift - * @return {Node} The first item in the NodeList. + * @return {Node | null} The first item in the NodeList, or null if the NodeList is empty. */ 'shift': 0, /** Returns a new NodeList comprising the Nodes in the given range. @@ -13512,7 +14339,7 @@ Y.NodeList.importMethod(Y.Node.prototype, [ ]); -}, '3.9.1', {"requires": ["dom-core", "selector"]}); +}, '3.12.0', {"requires": ["dom-core", "selector"]}); YUI.add('node-base', function (Y, NAME) { /** @@ -13776,8 +14603,17 @@ Y.mix(Y_Node.prototype, { * @deprecated Use getHTML * @return {String} The current content */ - getContent: function(content) { - return this.get('innerHTML'); + getContent: function() { + var node = this; + + if (node._node.nodeType === 11) { // 11 === Node.DOCUMENT_FRAGMENT_NODE + // "this", when it is a document fragment, must be cloned because + // the nodes contained in the fragment actually disappear once + // the fragment is appended anywhere + node = node.create("
    ").append(node.cloneNode(true)); + } + + return node.get("innerHTML"); } }); @@ -14315,18 +15151,23 @@ Y.mix(Y_Node.prototype, { /** * The implementation for showing nodes. - * Default is to toggle the style.display property. + * Default is to remove the hidden attribute and reset the CSS style.display property. * @method _show * @protected * @chainable */ _show: function() { + this.removeAttribute('hidden'); + + // For back-compat we need to leave this in for browsers that + // do not visually hide a node via the hidden attribute + // and for users that check visibility based on style display. this.setStyle('display', ''); }, _isHidden: function() { - return Y.DOM.getStyle(this._node, 'display') === 'none'; + return this.hasAttribute('hidden') || Y.DOM.getComputedStyle(this._node, 'display') === 'none'; }, /** @@ -14385,12 +15226,17 @@ Y.mix(Y_Node.prototype, { /** * The implementation for hiding nodes. - * Default is to toggle the style.display property. + * Default is to set the hidden attribute to true and set the CSS style.display to 'none'. * @method _hide * @protected * @chainable */ _hide: function() { + this.setAttribute('hidden', ''); + + // For back-compat we need to leave this in for browsers that + // do not visually hide a node via the hidden attribute + // and for users that check visibility based on style display. this.setStyle('display', 'none'); } }); @@ -14669,7 +15515,7 @@ Y.mix(Y.NodeList.prototype, { }); -}, '3.9.1', {"requires": ["event-base", "node-core", "dom-base"]}); +}, '3.12.0', {"requires": ["event-base", "node-core", "dom-base", "dom-style"]}); (function () { var GLOBAL_ENV = YUI.Env; @@ -14829,7 +15675,7 @@ Y.extend(DOMEventFacade, Object, { // Webkit and IE9+? duplicate charCode in keyCode. // Opera never sets charCode, always keyCode (though with the charCode). // IE6-8 don't set charCode or which. - // All browsers other than IE6-8 set which=keyCode in keydown, keyup, and + // All browsers other than IE6-8 set which=keyCode in keydown, keyup, and // which=charCode in keypress. // // Moral of the story: (e.which || e.keyCode) will always return the @@ -15048,6 +15894,7 @@ Y.DOMEventFacade = DOMEventFacade; * on the current target will not be executed */ (function() { + /** * The event utility provides functions to add and remove event listeners, * event cleansing. It also tries to automatically remove listeners it @@ -15069,8 +15916,7 @@ Y.DOMEventFacade = DOMEventFacade; Y.Env.evt.dom_wrappers = {}; Y.Env.evt.dom_map = {}; -var YDOM = Y.DOM, - _eventenv = Y.Env.evt, +var _eventenv = Y.Env.evt, config = Y.config, win = config.win, add = YUI.Env.add, @@ -15093,7 +15939,7 @@ var YDOM = Y.DOM, shouldIterate = function(o) { try { // TODO: See if there's a more performant way to return true early on this, for the common case - return (o && typeof o !== "string" && Y.Lang.isNumber(o.length) && !o.tagName && !YDOM.isWindow(o)); + return (o && typeof o !== "string" && Y.Lang.isNumber(o.length) && !o.tagName && !Y.DOM.isWindow(o)); } catch(ex) { return false; } @@ -15376,6 +16222,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); cewrapper = Y.publish(key, { silent: true, bubbles: false, + emitFacade:false, contextFn: function() { if (compat) { return cewrapper.el; @@ -15460,7 +16307,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); // oEl = (compat) ? Y.DOM.byId(el) : Y.Selector.query(el); if (compat) { - oEl = YDOM.byId(el); + oEl = Y.DOM.byId(el); } else { oEl = Y.Selector.query(el); @@ -15574,7 +16421,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); // el = (compat) ? Y.DOM.byId(el) : Y.all(el); if (compat) { - el = YDOM.byId(el); + el = Y.DOM.byId(el); } else { el = Y.Selector.query(el); l = el.length; @@ -15648,7 +16495,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); * @static */ generateId: function(el) { - return YDOM.generateID(el); + return Y.DOM.generateID(el); }, /** @@ -15755,7 +16602,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); if (item && !item.checkReady) { // el = (item.compat) ? Y.DOM.byId(item.id) : Y.one(item.id); - el = (item.compat) ? YDOM.byId(item.id) : Y.Selector.query(item.id, null, true); + el = (item.compat) ? Y.DOM.byId(item.id) : Y.Selector.query(item.id, null, true); if (el) { executeItem(el, item); @@ -15772,7 +16619,7 @@ Event._interval = setInterval(Event._poll, Event.POLL_INTERVAL); if (item && item.checkReady) { // el = (item.compat) ? Y.DOM.byId(item.id) : Y.one(item.id); - el = (item.compat) ? YDOM.byId(item.id) : Y.Selector.query(item.id, null, true); + el = (item.compat) ? Y.DOM.byId(item.id) : Y.Selector.query(item.id, null, true); if (el) { // The element is available, but not necessarily ready @@ -15967,11 +16814,17 @@ if (config.injected || YUI.Env.windowLoaded) { // Process onAvailable/onContentReady items when when the DOM is ready in IE if (Y.UA.ie) { Y.on(EVENT_READY, Event._poll); -} -try { - add(win, "unload", onUnload); -} catch(e) { + // In IE6 and below, detach event handlers when the page is unloaded in + // order to try and prevent cross-page memory leaks. This isn't done in + // other browsers because a) it's not necessary, and b) it breaks the + // back/forward cache. + if (Y.UA.ie < 7) { + try { + add(win, "unload", onUnload); + } catch(e) { + } + } } Event.Custom = Y.CustomEvent; @@ -16037,7 +16890,7 @@ Y.Env.evt.plugins.contentready = { }; -}, '3.9.1', {"requires": ["event-custom-base"]}); +}, '3.12.0', {"requires": ["event-custom-base"]}); (function() { var stateChangeListener, @@ -16259,7 +17112,7 @@ IELazyFacade._lazyProperties = { var e = this._event, val = e.pageX, doc, bodyScroll, docScroll; - + if (val === undefined) { doc = Y.config.doc; bodyScroll = doc.body && doc.body.scrollLeft; @@ -16274,7 +17127,7 @@ IELazyFacade._lazyProperties = { var e = this._event, val = e.pageY, doc, bodyScroll, docScroll; - + if (val === undefined) { doc = Y.config.doc; bodyScroll = doc.body && doc.body.scrollTop; @@ -16335,12 +17188,12 @@ if (imp && (!imp.hasFeature('Events', '2.0'))) { useLazyFacade = false; } } - + Y.DOMEventFacade = (useLazyFacade) ? IELazyFacade : IEEventFacade; } -}, '3.9.1', {"requires": ["node-base"]}); +}, '3.12.0', {"requires": ["node-base"]}); YUI.add('pluginhost-base', function (Y, NAME) { /** @@ -16521,7 +17374,7 @@ YUI.add('pluginhost-base', function (Y, NAME) { Y.namespace("Plugin").Host = PluginHost; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('pluginhost-config', function (Y, NAME) { /** @@ -16651,7 +17504,7 @@ YUI.add('pluginhost-config', function (Y, NAME) { }; -}, '3.9.1', {"requires": ["pluginhost-base"]}); +}, '3.12.0', {"requires": ["pluginhost-base"]}); YUI.add('event-delegate', function (Y, NAME) { /** @@ -16998,7 +17851,7 @@ delegate._applyFilter = function (filter, args, ce) { Y.delegate = Y.Event.delegate = delegate; -}, '3.9.1', {"requires": ["node-base"]}); +}, '3.12.0', {"requires": ["node-base"]}); YUI.add('node-event-delegate', function (Y, NAME) { /** @@ -17052,7 +17905,7 @@ Y.Node.prototype.delegate = function(type) { }; -}, '3.9.1', {"requires": ["node-base", "event-delegate"]}); +}, '3.12.0', {"requires": ["node-base", "event-delegate"]}); YUI.add('node-pluginhost', function (Y, NAME) { /** @@ -17094,6 +17947,11 @@ Y.Node.unplug = function() { Y.mix(Y.Node, Y.Plugin.Host, false, null, 1); +// run PluginHost constructor on cached Node instances +Y.Object.each(Y.Node._instances, function (node) { + Y.Plugin.Host.apply(node); +}); + // allow batching of plug/unplug via NodeList // doesn't use NodeList.importMethod because we need real Nodes (not tmpNode) /** @@ -17138,7 +17996,7 @@ Y.NodeList.prototype.unplug = function() { }; -}, '3.9.1', {"requires": ["node-base", "pluginhost"]}); +}, '3.12.0', {"requires": ["node-base", "pluginhost"]}); YUI.add('node-screen', function (Y, NAME) { /** @@ -17365,7 +18223,7 @@ Y.Node.prototype.intersect = function(node2, altRegion) { * @param {Node|Object} node2 The node or region to compare with. * @param {Boolean} all Whether or not all of the node must be in the region. * @param {Object} altRegion An alternate region to use (rather than this node's). - * @return {Object} An object representing the intersection of the regions. + * @return {Boolean} True if in region, false if not. */ Y.Node.prototype.inRegion = function(node2, all, altRegion) { var node1 = Y.Node.getDOMNode(this); @@ -17376,7 +18234,7 @@ Y.Node.prototype.inRegion = function(node2, all, altRegion) { }; -}, '3.9.1', {"requires": ["dom-screen", "node-base"]}); +}, '3.12.0', {"requires": ["dom-screen", "node-base"]}); YUI.add('node-style', function (Y, NAME) { (function(Y) { @@ -17482,7 +18340,7 @@ Y.NodeList.importMethod(Y.Node.prototype, ['getStyle', 'getComputedStyle', 'setS })(Y); -}, '3.9.1', {"requires": ["dom-style", "node-base"]}); +}, '3.12.0', {"requires": ["dom-style", "node-base"]}); YUI.add('querystring-stringify-simple', function (Y, NAME) { /*global Y */ @@ -17526,7 +18384,7 @@ QueryString.stringify = function (obj, c) { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('io-base', function (Y, NAME) { /** @@ -18085,6 +18943,8 @@ IO.prototype = { *
    dataType
    *
    Set the value to 'XML' if that is the expected response * content type.
    + *
    credentials
    + *
    Set the value to 'true' to set XHR.withCredentials property to true.
    * * *
    form
    @@ -18532,7 +19392,7 @@ Y.mix(Y.IO.prototype, { -}, '3.9.1', {"requires": ["event-custom-base", "querystring-stringify-simple"]}); +}, '3.12.0', {"requires": ["event-custom-base", "querystring-stringify-simple"]}); YUI.add('json-parse', function (Y, NAME) { var _JSON = Y.config.global.JSON; @@ -18542,7 +19402,7 @@ Y.namespace('JSON').parse = function (obj, reviver, space) { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('transition', function (Y, NAME) { /** @@ -19292,7 +20152,7 @@ Y.mix(Transition.toggles, { }); -}, '3.9.1', {"requires": ["node-style"]}); +}, '3.12.0', {"requires": ["node-style"]}); YUI.add('selector-css2', function (Y, NAME) { /** @@ -19355,13 +20215,15 @@ var PARENT_NODE = 'parentNode', _bruteQuery: function(selector, root, firstOnly) { var ret = [], nodes = [], + visited, tokens = Selector._tokenize(selector), token = tokens[tokens.length - 1], rootDoc = Y.DOM._getDoc(root), child, id, className, - tagName; + tagName, + isUniversal; if (token) { // prefilter nodes @@ -19382,16 +20244,30 @@ var PARENT_NODE = 'parentNode', } } else { // brute getElementsByTagName() + visited = []; child = root.firstChild; + isUniversal = tagName === "*"; while (child) { - // only collect HTMLElements - // match tag to supplement missing getElementsByTagName - if (child.tagName && (tagName === '*' || child.tagName === tagName)) { - nodes.push(child); + while (child) { + // IE 6-7 considers comment nodes as element nodes, and gives them the tagName "!". + // We can filter them out by checking if its tagName is > "@". + // This also avoids a superflous nodeType === 1 check. + if (child.tagName > "@" && (isUniversal || child.tagName === tagName)) { + nodes.push(child); + } + + // We may need to traverse back up the tree to find more unvisited subtrees. + visited.push(child); + child = child.firstChild; + } + + // Find the most recently visited node who has a next sibling. + while (visited.length > 0 && !child) { + child = visited.pop().nextSibling; } - child = child.nextSibling || child.firstChild; } } + if (nodes.length) { ret = Selector._filterNodes(nodes, tokens, firstOnly); } @@ -19735,8 +20611,7 @@ if (Y.Selector.useNative && Y.config.doc.querySelector) { } - -}, '3.9.1', {"requires": ["selector-native"]}); +}, '3.12.0', {"requires": ["selector-native"]}); YUI.add('selector-css3', function (Y, NAME) { /** @@ -19888,7 +20763,7 @@ Y.Selector.combinators['~'] = { }; -}, '3.9.1', {"requires": ["selector-native", "selector-css2"]}); +}, '3.12.0', {"requires": ["selector-native", "selector-css2"]}); YUI.add('yui-log', function (Y, NAME) { /** @@ -19904,9 +20779,9 @@ var INSTANCE = Y, LOGEVENT = 'yui:log', UNDEFINED = 'undefined', LEVELS = { debug: 1, - info: 1, - warn: 1, - error: 1 }; + info: 2, + warn: 4, + error: 8 }; /** * If the 'debug' config is true, a 'yui:log' event will be @@ -19928,7 +20803,7 @@ var INSTANCE = Y, * @return {YUI} YUI instance. */ INSTANCE.log = function(msg, cat, src, silent) { - var bail, excl, incl, m, f, + var bail, excl, incl, m, f, minlevel, Y = INSTANCE, c = Y.config, publisher = (Y.fire) ? Y : YUI.Env.globalEvents; @@ -19947,6 +20822,15 @@ INSTANCE.log = function(msg, cat, src, silent) { } else if (excl && (src in excl)) { bail = excl[src]; } + + // Determine the current minlevel as defined in configuration + Y.config.logLevel = Y.config.logLevel || 'debug'; + minlevel = LEVELS[Y.config.logLevel.toLowerCase()]; + + if (cat in LEVELS && LEVELS[cat] < minlevel) { + // Skip this message if the we don't meet the defined minlevel + bail = 1; + } } if (!bail) { if (c.useBrowserConsole) { @@ -19999,7 +20883,7 @@ INSTANCE.message = function() { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('dump', function (Y, NAME) { /** @@ -20104,7 +20988,7 @@ YUI.add('dump', function (Y, NAME) { -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('transition-timer', function (Y, NAME) { /** @@ -20438,14 +21322,14 @@ Transition.behaviors.top = Transition.behaviors.bottom = Transition.behaviors.ri Y.Transition = Transition; -}, '3.9.1', {"requires": ["transition"]}); +}, '3.12.0', {"requires": ["transition"]}); YUI.add('yui', function (Y, NAME) { // empty -}, '3.9.1', { +}, '3.12.0', { "use": [ "yui", "oop", diff --git a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong-dark.png b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/rail-x.png old mode 100644 new mode 100755 similarity index 74% rename from lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong-dark.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/rail-x.png index bc0aa14ce4d3ebdf7b47c35ef6ba4c639a3af728..4cd29b45b9a6e36b8da640f7f56dc78e21b70411 GIT binary patch delta 505 zcmX>le??}3IF~U8GXn!dC_^ygM#U{$^_MSS{_*3-#*G^vKYsk;#fyxLjH_3#{{R1< zgM)*Ulaq^!i<_I9hlhukmzR%^kDs4kKtMoHP*6xnNLW}{L_|bXR8&k%Ok7-CLPA1P zQc_AvN?KZ4Mn*%*@=}+`_`b($dn(%F5c> z+Q!Dl*4Ea}&d%Q6-oe4a(b3V#$;sK-*~P`h)z#I_&CT82-NVDf)6>(-%gfu_+sDVp z*Vot2&(GiAKOi6=FfcGEC@45MI3y%4Bs4TMEG#TMJUk*IA~G^EDk>^EIyxpMCN?%U zE-o%UK0YBKAu%yADJdyAIXNXIB{elQEiElQJslWSnVFecSy|cH**Q5mxw*M{d3pKy z`2__9g@uJhMMcHM#hVRzmN3@mHTmlU!?E6uX%4IP|V-c#WAGf)|*Ki zc@H@7FnKan{O_%2%!r$)No3wlr%nwB2xxC_udJ-BtE=FGH*IILW`a>|q`MMXvS_Vy7G5oTs)8#itY3=9kp58u9hyNQX3 zk&#hfUtd^Q7%MBQsi~=#mzS@vud}nWf`UR!OpJzxhLe-i+_`gea&jy!Ee#C~-QC>< z1O$qUi)YT985|sZ`t)f#J3AQ}8Ge5L0|ySQTNk%({rdIF%F4{l%pDyaU0q$Bot^6H z>J=3g+1c4APMlb?W=&pR9vd55O-;?#ty`O$o8{%@`S|$y`};*jMO|H8nV6WCELoD3 zm8GPlv|zykPEO9m#Kc9576HQ;2sRt?EMcsl`k?DEkW*3;-aMMsQG(Z>@Tj{o(0 z|CVVd@0KU`gSNb9QJg-R)$Huiyf?phtx@A~3zYB`yP>yE`O4k@+rE0buv}ML%=4Bn zbJLVJkF2V!Zr|EFZ=a7L7n1;Go=b>C*6Z#0q#0lJ1G z{l|)QC8>J7kCPuiK3#0x5wV}?-^^?3+m>i9xtQ$Syf^uRguq?a*#ReFPpp-lzNwy# YVcmwUA}fUolt8iW>FVdQ&MBb@0C8ityZ`_I diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong-dark.png b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/rail-y.png old mode 100644 new mode 100755 similarity index 74% rename from lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong-dark.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/rail-y.png index bc0aa14ce4d3ebdf7b47c35ef6ba4c639a3af728..9bcd2128bafc1f678fecbe5cda0b3b8ae20e4347 GIT binary patch delta 522 zcmX>le?dmEGr-TCmrII^fq{Y7)59eQNE-vOBnLB)T zEFvNzDk>@_CMGT}E+HWyDJdx>B_%B_Eh8f%D=RA}Cnqm2ub`lysHmuCc{uWw*rU}$J)WMpJ)Y;0m;Vrpt? zW@ct?Zf;>=VQFb;Wo2b;ZEa&?V{2<`XJ=<`Z|~sX;OOY+lq=?d{{^~85I>39UUDL6B8R78y6QBA0MBPkdT;|n3R;1oSdAJl9HO5nwFN9o}La2s?5yH ztgNi;?ChMJoZQ^pyu7^p{QQD~g2KYWqN1YW;^NJQJWCj>jZRzN1%^3CNswPKFla%5 z;a>CJNT8Uvr;B4q#jQ6J9Jv}Cc#foPfBWRW{WpcKjy2C)pNVKVD>_Y5IaT@c?3V|= zmR~=t{~b2_rJ{mTQ_;Ln=RciaHaqVE?=D6epgI5lGc(+2R@9mN_ir4K%i!ti=d#Wz Gp$Pyl>ZrH? delta 903 zcmca0b4p&ZGr-TCmrII^fq{Y7)59eQNJ|2-8wWFxXDo();2midfvQwNl8hI7cZVOXU@Wf3seQ(L0Ripp?Uj|4b#-++1^(3u9$vH8nN$^78Wa^>uc3R!~rgiHXtB&~S2c znmc!HPEL-crKO>vp}V`gfPg@8aq-NVGlPSJPoF+*XJ;oPBg4~BB0D?##EBDY)~w0P%VT3>tEs8kx^-)FbF;j>JRcul ze}BKIsHm%}D-#pbk|j&Bva*zvlol*lz{$y(n3%X|(IQ|N1HooPo+XU+Qy+9a269SD zg8YL2(;w6`d@DJc&A`AI>FMGaQgQ3eCHLS%3<9hVd=;0>P*QPWVO$z69pBLW)_U1i3>#{*?UR=?VaFb0F551ml za!K4=I84{(tiO_Ahvmf+Zd&T{o7aR!NN)MF>s0zF50*(98(wM*?1{Cq(>K+#F|6CLRb-`5ff6XzJzf1=);T3K0RZiQx*h-k diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/slider-base-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/slider-base-skin.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/slider-base-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/slider-base-skin.css index 6ae98e0a28a..1a3100dedda --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/slider-base-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/slider-base-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/audio/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/slider-base.css b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/slider-base.css new file mode 100755 index 00000000000..83f42bc7832 --- /dev/null +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/slider-base.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail,.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail{height:35px;background-position:0 7px}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-thumb{height:35px;width:19px}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:13px;left:-5px;width:5px;top:7px}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:13px;right:-5px;width:5px;top:7px}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-3px}.yui3-skin-audio-light .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-43px}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail,.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail{width:35px;background-position:7px 0}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-thumb{width:35px;height:19px}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:13px;top:-5px;height:5px;left:7px}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:13px;bottom:-5px;height:5px;left:7px}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-thumb-image{left:-3px;top:0}.yui3-skin-audio-light .yui3-slider-y .yui3-slider-thumb-shadow{left:-43px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-audio-light-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/slider-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/slider-skin.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/slider-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/slider-skin.css index 6ae98e0a28a..1a3100dedda --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/audio-light/slider-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/slider-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/audio/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/thumb-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/thumb-x.png new file mode 100755 index 0000000000000000000000000000000000000000..f9f69a8ca9247ae94d59c48ab7a7b237532cad05 GIT binary patch literal 400 zcmeAS@N?(olHy`uVBq!ia0vp^!a(fD!3-q7&bxaZNU@|l`Z_W&tUqDS+Vv91mn?CO zC<)F_D=AMbN@Z|N$xljE@XSq2PYp^7PG;W@cu-efw5O zNNC%(Z98`C`1F!Z!VqYYcddMeHg_OsHL@H@4Qd{@?T1rZgXfd)#-T{UuQYnv#s>- zjpfr4#oKyvSikvMU7eI0Fl#M~)`JZ0>Iy6@X{p4;_gZ#s6|G-coYq;A!yyNgY4svi4QAe_LkIdEp{ Tyt~&vfPCWV>gTe~DWM4f$$ZKx literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/thumb-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/audio-light/thumb-y.png new file mode 100755 index 0000000000000000000000000000000000000000..20120d34b92f11e34389bfbf6958a7fc42168f33 GIT binary patch literal 503 zcmeAS@N?(olHy`uVBq!ia0vp^en2eD!3-ohQ%sWz&6_u`TD3}BTl@5xQ}^!OJ9PM9nYLOvw#2oQzwtl zn>Q~tHC0GRC?g}|)TvWeR#wxdO*?+_(;G5 ze*Adw-~lr;^U0GZj~_oickbNFmoKkgy?V=*E%)!=2f7FdrgA@#22utkL4LviNdpW? zOD|La^=|ZZaSW-rb>s>+cawp@fsd)F-|F_uf7_OO{oCLDvCEyZ1+MdT)g>1#`V+{~ zx^-Lqx_~lvX`cuC?qmw;hxaSHKm4@Z$NqgBFHh<={o<}mr8{>n+Pww{GoRHNEJYD@< J);T3K0RURw3M&8r literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.9.1/build/range-slider/assets/thumb-x-oblong-dark.png b/lib/yuilib/3.12.0/slider-base/assets/skins/audio/rail-x.png old mode 100644 new mode 100755 similarity index 74% rename from lib/yuilib/3.9.1/build/range-slider/assets/thumb-x-oblong-dark.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/audio/rail-x.png index bc0aa14ce4d3ebdf7b47c35ef6ba4c639a3af728..dc37bb24906ed215d6bc881f5c9c584043f79a1c GIT binary patch delta 499 zcmX>le@gwu1>oherwd%FBw6(Q$ zbaZreb%Bo1*Vi{NFfcSUG%_+WHa0dfF)=kYH8V3aH#fJiu&}hWw6e0Ywzjshu>m^T z&d$!>-rm8%!O_vt$;rvt+1bU##nsi-&CSi--QB~(!_(8#%gf8#+uO&-$Jf`_&(F`_ z-yi77z`($uprGL3;E<5GkkHW3u&}W3@bHL;h{(vusHmvu=;)Z3nAq6ZxVX6Z`1pi` zgv7+eq@<+e4s82# ztNy8uf~X;n1jiYtv)Lspmvw|z&e|0DY@My^Or>Qj`uuklweC{7S*GndDURWtTfOSG gwf*%B7fx9-WcrA=r0jYq12mSw)78&qol`;+0LXxiZ2$lO delta 882 zcmX>nb4q@KIF}m-GXnzy-~02$8x^;3)mvCttXQ#P#*7&~Jw3Lzw$ahi^XAP3wlr%nwB2xxC_udJ-BtE=FGH*IILW`a>|q`MMXvS_Vy7G5oTs)8#itY3=9kp58u9hyNQX3 zk&#hfUtd^Q7%MBQsi~=#mzS@vud}nWf`UR!OpJzxhLe-i+_`gea&jy!Ee#C~-QC>< z1O$qUi)YT985|sZ`t)f#J3AQ}8Ge5L0|ySQTNk%({rdIF%F4{l%pDyaU0q$Bot^6H z>J=3g+1c4APMlb?W=&pR9vd55O-;?#ty`O$o8{%@`S|$y`};*jMO|H8nV6WCELoD3 zm8GPlv|zykPEO9m#Kc9576HQ;2sRt?EMcsl`k?DEkW*3;-aMMsQG(Z>@Tj{o(0 z|CVVd@0KU`gSNb9QJg-R)$Huiyf?phtx@A~3zYB`yP>yE`O4k@+rE0buv}ML%=4Bn zbJLVJkF2V!Zr|EFZ=a7L7n1;Go=b>C*6Z#0q#0lJ1G z{l|)QC8>J7kCPuiK3#0x5wV}?-^^?3+m>i9xtQ$Syf^uRguq?a*#ReFPpp-lzNwy# YVcmwUA}fUolt8iW>FVdQ&MBb@09?1Xwg3PC diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong2-dark.png b/lib/yuilib/3.12.0/slider-base/assets/skins/audio/rail-y.png old mode 100644 new mode 100755 similarity index 74% rename from lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong2-dark.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/audio/rail-y.png index 20f126029f17c8f7b37458b0da6e14cfbd3207f4..7bb0d90e3d3c6d258b2f6c38e519f527a94660d3 GIT binary patch delta 551 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 VtV-R literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-x-dots.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-x-dots.png new file mode 100755 index 0000000000000000000000000000000000000000..453fb64f38c36c8fcfba553b0945fc8e5a38e7eb GIT binary patch literal 3651 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 literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-x.png new file mode 100755 index 0000000000000000000000000000000000000000..f1aa290eec7e98f039467ecee049af443301b74c GIT binary patch literal 3710 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 R8u;JaQkK_{s{vbt{0}=e13CZz literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-y-dots.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-y-dots.png new file mode 100755 index 0000000000000000000000000000000000000000..0555b19d613d80c66f81aa736102a4af03ba96bf GIT binary patch literal 3642 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 M07*qoM6N<$g5Q75IsgCw literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-y-lines.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-y-lines.png new file mode 100755 index 0000000000000000000000000000000000000000..178aa85e139c48ed6023c3595f38018d15fc073e GIT binary patch literal 3667 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 literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/rail-y.png new file mode 100755 index 0000000000000000000000000000000000000000..a47997f25576d6e4ace641bf2284712a1ad09037 GIT binary patch literal 3673 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 literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/slider-base-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/slider-base-skin.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/slider-base-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/slider-base-skin.css index f8b2d51b56b..e4b5473ee6c --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/slider-base-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/slider-base-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/capsule-dark/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/slider-base.css b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/slider-base.css new file mode 100755 index 00000000000..39be9d731f2 --- /dev/null +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/slider-base.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail,.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail{height:25px}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-thumb{height:30px;width:14px}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:20px;left:-2px;width:5px}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:20px;right:-2px;width:5px}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-10px}.yui3-skin-capsule-dark .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-50px}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail,.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail{width:25px}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-thumb{width:30px;height:14px}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:20px;top:-2px;height:5px}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:20px;bottom:-2px;height:5px}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-thumb-image{left:-10px;top:0}.yui3-skin-capsule-dark .yui3-slider-y .yui3-slider-thumb-shadow{left:-50px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-capsule-dark-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/slider-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/slider-skin.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/slider-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/slider-skin.css index f8b2d51b56b..e4b5473ee6c --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule-dark/slider-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/slider-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/capsule-dark/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-x-line.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-x-line.png new file mode 100755 index 0000000000000000000000000000000000000000..bfdbe0db89e433034eb04bfb4d70964e55ddd8eb GIT binary patch literal 3845 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 literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-x.png new file mode 100755 index 0000000000000000000000000000000000000000..abed0253316931534bbdaacf4d169fe8fa90df24 GIT binary patch literal 4166 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 HaJln8US{B+ literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-y-line.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule-dark/thumb-y-line.png new file mode 100755 index 0000000000000000000000000000000000000000..037dca38de3a9cc98aad216825ad0ce3caa86397 GIT binary patch literal 518 zcmeAS@N?(olHy`uVBq!ia0vp^{vb97GmyMrb@(!nVo7)Ob!1>zf5M!#>m`scS>hT| z5}cn_Ql40p%HWuipOmWLnVXoN8kCxtQdxL1)dr|&et=JiYkPZpY;0^oLPA|#T~ANX zq)C&4f`XEhlWS^fQd3hqJ3F(pvy+mNLPA2Mq@+qpN}8IQ3JVMQ`S~YIn9$wbZD3%K zmX@ZXq7oV!%E`%TYHC_qT54}^-_Xzy6&2;+;Gm|aR$gB26A z01P!-FMvXBji-xaNX4x+myh!uGT>==*t6|r(p1~i_ZF+w{ZDUZ_Fxk|+501ZXH8d< zyMpfQIacPAo*&)&S3q0k#X|eO+yACM`8|)r_wL2n?w*SkGS?nnG}R@OGsFA$2Q%iC zA{igoY5K03GAW47=N+fedme_Z*1U17G3TNlD}J{m`m37%(U+J{|%>#yDa}1*15U9ora@ocD)4hB}-f* zN`mv#O3D+9QW+dm@{>{(JaZG%Q-e|yQz{EjrrH1%9SHCVag7R%3JVN(v~|?eG_bX> z^K$jJFtIW-vWSa}GuAV4b#N0A776qX(p1$_RZ-JY)iE(J^YQe}&B%=ij^yU%(b3Q| z)G-S14s^A5v$J&YaPr7X&2n>cw=uJ|GPN$uDfIL7bFg-ll#q0`b5WF2GBGqUH@4K* zHq_G4(oohi)i+aD(hT+s(bLw`*3i*b(={_N)6>vTOG@|m3dl{*jSh>B4v(&{st*qe zH#RWQ*D>&R_jYk`c6adr`Tz*56`5`VDTk6Ezu^Cr0fs}>8(kO}7}Y&p978H@ExCNV zsL4QpEx|#d^TbaDg@a8~nsuXYIjsz<_`f|XWzWHDGdrrM$JA_|{rB*f>#0xgENbIj zU7WP?NLYQmVR*W$`L*{OV!0Z3KdcBmE&P(v|I&5s6Z`Z^50+c*ckox8 zfa|>J6Sr;P*w#^y704L1?zP*!SKMZ$XAPF!+?K;}?((hbohvSN-s6v{d2y(dr}|#2 z+p?{m)%p(eUU;fcTXRTu$Cum+o2>x{56*h=^-{3{OUmXYySb+`&WZjT((kg2WybT9 zdIC-gN8@%();RoWzx%)FIU1kVl}z|nyW{Wu6`zX21E2gfEZp&1G=X9JpXZMhuE?~2 OqQTSE&t;ucLK6UTmMlB~ literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-x-dots.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-x-dots.png new file mode 100755 index 0000000000000000000000000000000000000000..b3f65d4996892afc0d9582ef734c5d6784605661 GIT binary patch literal 3655 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 Z0RXXX4QA30kRbp7002ovPDHLkV1nMu?tB0M literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-x-lines.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-x-lines.png new file mode 100755 index 0000000000000000000000000000000000000000..26374dfad07a34a04d0f01fbccc6eaab486e031e GIT binary patch literal 3669 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 literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-y-dots.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-y-dots.png new file mode 100755 index 0000000000000000000000000000000000000000..798c2ce3c7e654226a48770bd0d5b4551855e3dd GIT binary patch literal 3643 zcmV-B4#e?^P)KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=00004XF*Lt006O$eEU(80000WV@Og>004R=004l4008;_004mL004C` z008P>0026e000+nl3&F}00093P)t-s_V)Ju{r&In@3FD5^78V_%gf^8;{X5u2nYxX z2?+`c3JVJh3=9kn4Gj(s4i66x5D*X%5fKs+5)%^>6ciK{6%`g178e&67#J8C85tTH z8XFrM92^`S9UUGX9v>ecARr(iAt53nA|oRsBqSsyB_$>%CMPE+C@3f?DJd!{Dl021 zEG#T7EiEoCE-x=HFfcGNF)=bSGBYzXG&D3dH8nOiHa9mnI5;>tIXOByIy*Z%JUl!- zJv}}?K0iM{KtMo2K|w-7LPJACL_|bIMMXwNMn^|SNJvOYNl8jdN=r*iOiWBoO-)Wt zPESuyP*6}&QBhJ-Qd3h?R8&+|RaI72R##V7SXfwDSy@_IT3cINTwGjTU0q&YUSD5d zU|?WjVPRroVq;@tWMpJzWo2e&W@l$-XlQ6@X=!R|YHMq2Y;0_8ZEbFDZf|dIaBy&O zadC2Ta&vQYbaZreb#-=jc6WDoczAeud3kzzdV70&e0+R;eSLm@et&;|fPjF3fq{a8 zf`fyDgoK2Jg@uNOhKGlTh=_=ZiHVAeii?YjjEszpjg5|uj*pLzkdTm(k&%*;l9Q8@ zl$4Z}m6ev3mY0{8n3$NEnVFiJnwy)OoSdAUot>VZo}ZteprD|kp`oIpqNAguq@<*! zrKP5(rl+T;sHmu^si~@}s;jH3tgNi9t*x%EuCK4Ju&}VPv9YqUva_?Zw6wIfwY9dk zwzs#pxVX5vxw*Q!y1To(yu7@dCU z$jHda$;ryf%FD~k%*@Qq&CSlv&d<-!(9qD)(b3Y<($mw^)YR0~)z#M4*4Nk9*x1lt)=I7_<=;-L_>FMg~ z>g((4?Ck9A?d|UF?(gsK@bK{Q@$vHV^7Hfa^z`)g_4W4l_V@Sq`1ttw`T6?#`uqF) z{QUg={r&#_{{R2~<;D2K00008bW%=J|NsC0|Ns90-h;ha0000sNkl&D57i48-!zPbk56j@v!@$OXR}T&_-1Gnd009600|0Yr4Q4O)=eGa= N002ovPDHLkV1o0@<*)z% literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-y-lines.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-y-lines.png new file mode 100755 index 0000000000000000000000000000000000000000..798c2ce3c7e654226a48770bd0d5b4551855e3dd GIT binary patch literal 3643 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 N002ovPDHLkV1o0@<*)z% literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/rail-y.png new file mode 100755 index 0000000000000000000000000000000000000000..d20d3c3e991e9df9e806cd49381436d8cd2692ee GIT binary patch literal 3689 zcmZwJbx_pJ8vyVxFG!b22nf>MDGhgY$Kf5_93hQTf=8!x!yzHvAcu5!gLFv?2)q)4 zQonou|Lx4P&pb0bJG0Mzc4nh>wN;4lY48C6AW~CR)JJDgbl~G+qGx9EeMxk}b5}L; z0sw+%{{;q+o%Bdb-`D|w?+VfY4ly{Sl)2ux z1ZhMeQZ?N4DR3F|L9qz(BsMNaJW};2#)4%Ey`HB^N?5eR`B9kh@rXDIJs!ds{3V=S z#=`i}qNteB+pT~i=Y{s`{fURBMcIR@3uNOIPB$)Lx~j0AD1xvYME~@A=urRQ)-IoX zFg}YrK#JRF%jk8_i~-yPNlSAxb>nmb7`}4^xInj7PPf2|$VZYRP?jkMA`GM3JL#1M zE`l78_m2ma0P@Nh2xKOk0g#UcSdQ6P?*O{IfF=8f{W$=EyvYi{08CODDKPSr0ETCF zQHp?r6i_wwIz|bA2>|5w8vPQ$5-%X22DMiO>Y9P>Nm7Ca0GALD(2EM^1h4`C%VB0_ zUmz?CAXh$zO8?@nAwA$icPgtvx`jnTDcA&;*8>L%<)i1ARHNc17qj}uDqEhf*Ds4& zC|HE#`^7i_cW0xvbNrN*qf?!mj{3?@1U6n9{xre zgcLTy<)M)E6wAS!Aph-ktbGHCd=rp=xB|U!|F1Vn1&J-o%X_=KOX~d~6RS~Z-~+tZ zq8obu=1-9H-SyS?&TW=pA+ul=tefw>ihN89a9o?A@WO;MoENfsj@iMPzm2J^QDJ1NY&d;1yy z&fDC2zH#7UA{;`urhFdH|ktlLKCXFOfRYCn2 z2!o+2-MNhCKN69q%B@LK!+=o8T|~QzU}|uKp3FDGCU8rcI8B&xA;Gk*w_tVxWq!`I z=NB58II)6*=}HHZl>}MvkU;m3=QzUsZv^-T`#|-tc<@qe#_E}>2rCC^>Rwl2wnbmr zOx62fkp(Mt6Ufw=29$yUTcPf{(P8_xOBcu+5=A>ZDG+N4h7nhi#WBq+nQ-t-oGY z0C_5!U<|4*K(?<#6p-`@_5S>3SNycE&VxcI;5) zN5&7#OCLg_2#V05C^!do&U2jSaB83DwV9eF)N`@aLl6OR!Q;$>ERrlYLl_r|>pex% zD1MrH8e1AI7eA!DqNHM@g23>?a14@AZf+1*qiiT_uv3orExppP0;zj!Kx+Ummnw^_ zfS0*JAzgP&fMWFgg=eM!XFc?Psf>SbqPGt1a`M zt}RxkqP#!?EUYdJZPdR=wU@)$$@I9%_14Ba;3&G+3Mf9ZkE`sBgIR%uolTVY8pGtx!#${&?U;v5G}cUX2@23-b=*s$3c*)+6{v`(}2 zwOUFzOQbZVG>0a}CkiJPvP5%a1Q&%4at?A9b2ghTjeU)IP-UpEc4`f~#wA9lsCL(I zV+o^Tn4z&*qjEK}nsuSAx~=qSX^VD>c4giIysz#TY6Ml@OkKCPguPmWazO=J!L6y_ z%>y-krzssNfvtfb?`3d^BA1CP>5S=uyuNsnOTL!e$ezqSl?xoWOh4p@!=^~5mV|du z&&D|W9gzk(b1HBuc#Bu)MO19GM#vanhAdwW?cn-w$F92fm514u|Lheqr!lAZq-?eJ zRP5C8G;;0JxX35YJR@PR>Aqp`cfGwCIf74V0?wONK{{ZaV0hC3GrtXg60~};uDRH! z;@awrO7^#`=cgUn9cl3mp$#L8aq;fv;pQ=&KDRuJ@J;Xs=11E{|Hm1i6v2uC$BYhE z2sZiW_QwA`V^_SKX5yjYDS0QpNZ9s*9V!CNt2Gm;krRT z7N&8m_N`+3f(Y5eBg3H)a`Em_Fq#>`3{jt%HL%yF;$Ovd#f==eppHZ>uevCgYz3c_ z^on?^NUPi+pS{ueJPZj_d!z9}f{&|4%=Jy@=H1Cf_cFYc zvYd~MM>1VrGfMka>c0x4TxFDTtmn^sSmW{idg*%MO#CxqGf_)mQ!aY#b5$-a|Ky)Z z?V^4x1H#2Tdo5w?<%#W@M4Ib4l6jQb?-*Q!WF$KTLz9ydJwO$VS}7>_5q#hN-B^`f zc*DbhYiu(=eHzY)b7NxF6C+-H6sY6}#F%4|3#S2Y2et2-h#r+lugv3~I2msoT}>3v zJ^S={Le@*Rm5eHm(17yN!S*|A?7nHk+*eMj&ZrDWYR)$XBT{C_XH4toiQI zM!Jo5Wv!)tDX;8rv7NG?wLje7;LS53POr$=&meXsT3-1=wE6nW$<=SARsM_#j@7nM z6u70ROZscOUFpc=gp?fQGvpHT7b12#yWV8Ac;h;AN*mDrTjb~bs!99xz3fQmsv(A< z*1Y|^-L2Yf0~p+dSQ@3`9R+f%{m6c<5#4 z1Mtv|xPYoHoVl0p=-_nxPN3}bY~>t->{}CS zlUAK^*_nl-4gWip)t4l>BGN{F>KBj^$Cbm7xfJ;MR2(u585qR(XU%f85EXD>Gr8$R z;&#?b>b*6q^cZ^})h;z@dj8e>ykT|k8T2bOyH?V|<;eR;`XOabXQ(Z=ExV@0)Vbx< zzoRL@{`!zMPkeIyvcvBe<>SJ9o`lSL$A!P!^}zMjCgpmNC;R>6SlhA>`)PH%PP@gW z{E5Occs+7n&g5Zj>1^$TQ@2n4#mt(@HFkLD)I-u$0txs@LRP|91X09s-YZ!NiETO0 z`@_3Z@RaQoTOQRz;lo%B6(xVr&HVA= zLG#PkwT3ajKPvzrLIL2^KfPkQ&ppcM| zu&}U*h={1DsF;|TxVZSMSFa=_BqSvzrKF^!rKM$LWMpM!<>ch#<>eI=6hI&l7z|ca zR8&$@QdU-0QBhG)z#C})7RHGFff2XAcls9 zuV250LZL7i%*e>d*x1;_#KhFp)XdDx+}zy4!ot$h(#p!p+S=O2#>Upx*3Qn(-rgP# zhdVepI668yIXO8yJHL7J#>K_O)z#I_&CT82-NVDf)6>(-%gfu_`|aDe@7}%h@$vEX z_4V`f^Y`};2ncxp{(WFzU{FxdhYueR2t;sja7aia`bgqR#sM3 zRaIA4*VNS1*4Eb5)z#P6H#9UfHa33w@};S%357y6H#dL%`W20#wY9aat*yPiy`!U} zv$M0StE;=ayQin8x3{;iudlzqe_&u>aBy&FXlQtNcw}T`baWKW15IdRVq$V~a%yU7 zdU_hoX?AvYZf*|kZGL`!VPRo$adByBX?b}WZESUQ6)kXmeSKqN1C8+e_wQRZNJUKZzJv}`;JNx(Fe}Db@g~o}7dU<(yb#;Y? zeSLj>b93|O&mXi{w05+4v}ZJLG+O=EY4p1QsJ->I4bbKP9RP+1elvQJftsQM#COFy z5dnDU3EC^0Yvb8=k1`KVjYl!DF!FJ+vGDXFzI$BY2^LgZQc*JI6GTVyL=?n^@|e8| tVL9HmerjVy)?G><{=B9Yy&drQhzaZ`@oBjQE<^vT)s(aqYe1GE{{ui%CFTGC literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/slider-base-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/slider-base-skin.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/slider-base-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/capsule/slider-base-skin.css index ab74df9da99..ff007068459 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/slider-base-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/slider-base-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/capsule/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/slider-base.css b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/slider-base.css new file mode 100755 index 00000000000..212baf54b64 --- /dev/null +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/slider-base.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail,.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x;background-repeat:repeat-x}.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail{height:25px}.yui3-skin-capsule .yui3-slider-x .yui3-slider-thumb{height:30px;width:14px}.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:20px;left:-2px;width:5px}.yui3-skin-capsule .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:20px;right:-2px;width:5px}.yui3-skin-capsule .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-10px}.yui3-skin-capsule .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-50px}.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail,.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y;background-repeat:repeat-y}.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail{width:25px}.yui3-skin-capsule .yui3-slider-y .yui3-slider-thumb{width:30px;height:14px}.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:20px;top:-2px;height:5px}.yui3-skin-capsule .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:20px;bottom:-2px;height:5px}.yui3-skin-capsule .yui3-slider-y .yui3-slider-thumb-image{left:-10px;top:0}.yui3-skin-capsule .yui3-slider-y .yui3-slider-thumb-shadow{left:-50px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-capsule-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/slider-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/slider-skin.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/slider-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/capsule/slider-skin.css index ab74df9da99..ff007068459 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/capsule/slider-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/slider-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/capsule/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-x-line.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-x-line.png new file mode 100755 index 0000000000000000000000000000000000000000..849a4548c0ec51777cc863d01b06bba60a1c63f1 GIT binary patch literal 828 zcmeAS@N?(olHy`uVBq!ia0vp@Kpeoq3?#p*@}~nSmUKs7M+S!VC(K#9UIO`&C9V-A z!TD(=<%vb942~)JNvR5+xryniL8*x;m4zo$Z5S9B^#goDTn`;Ov}4DPR~_Uu`+X3g^D%XjbIec-@>{rmT?TD5B7!i7hV9zA*TeZ{?zI|(NZ*OdDyl&mPnKNf@-@d)FvU2g_#ZR6* zIdS5|zJ2@d+_}Ta$@%Z!zhlRatzEnJ+qZA3s;ZYSU(U?TOh`z0{P^*W8#iQSWxss+ zGG)q?zP`Romo9DHx^?Q*skXMZOO`CzvSrKFt5<*h`qkgx|Lobb3l}b2ym+yvr>Cv0 zO+rFKPEPK}j~|~ue@;zJZE9*VF)?}l`t`JF)4qQF+TGnfZ{9o+5fM#I&D*zcGcz;a zym@omwrxj_9QpnGcU@iGqeqYK-@h*^DthqXL04DTYuB#r+`04g>C?-WE&KofKQL5* zz+%qjpFk?LB*-rqC`fa_AenKg85mbeo-U3d6}Qe@yqb5|K%^ltJ#*KVNQc73K6WFzPE))!yU%q_CvYab+%N%C=am>$KL%+g2HGr{^r1`D#mC#q&~gt=HDAcmDjpQEgLYHEV@j%dQe0trrn1_`EpwHnN;>aOu3^niQbFLZ^gdmS_~)RJYp_>8yLD p+g{qNU;XwV@6+4wtA7Y3Fo-M-I6L)bk^m^0JYD@<);T3K0RWpB);ItF literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-x.png new file mode 100755 index 0000000000000000000000000000000000000000..09baa964b8306317ae679fc4f1816562b69e8b5c GIT binary patch literal 768 zcmeAS@N?(olHy`uVBq!ia0vp^d_e5a!3-qdOk&XjQY`6?zK#qG>ra@ocD)4hB}-f* zN`mv#O3D+9QW+dm@{>{(JaZG%Q-e|yQz{EjrrH1%9SHCVag~;q&dtqTvSi7F2M-o4 zT6E;dk&`D+?%1(o-MV%2=FQu>b?b!-7dCF(xMt0oLx&EXIdf+D^5y&X?OU~K)vQ^w zrcIl6<;s;ymoB-wx<*GwfBg7y!GZ;E-n^MIWy+j6bN1}n^X%EPCr_T-zJ2@p_3Pih zeOs|&#g;8wHf`F(&CPx8+_@h=e$1FLh2M!!~_3G7&7ccJKy?f`*ok^1>efjbw zF){JcqerJsojP{xn2wH)mzP&cO3LotyZ`?Ed*jB9-@ktYeE&iYc$0$&>x0a;#D<4TMk%gbURhbGDdt;0{QtlDTS4cV z=W;gwHQDQDnx^ZYc$jfwWx@RQlddj$YUh9Lr`2g`y-9COJ0I_O_B{2}kG(uUmL&Z< zAosI2;a5!Y{-nqJ9}_-VH_p(x^wnJ_=w1IZwThE!8%0*icSUljJua5Ch}4j|&Uo3v z;HN>e4tL6>Cv{(VD$O6Ta4DNLYe;-3P?>h-Q`HrQ_``Dx(!%5~Y2LRC-ahH#brIw1 z&FgYrHL2;n4Axl0G{tJsHd)P8@kgsH*mOhv_y0V3DR9Y^OI=_0-H}iVYTdi~S~}aJ z*N=WZTl((Q_Rv6)Z!1>n6}EZZ?8~Y4JG5{6570PwoMPWt$DU+ zne}?h<)Y@PH;*N_MNKmFIQ>5GLF94WANL9w_LbH!d%827vp#q5)A2vP^>hE0eqQkS z_s7-e4x}E}F1V9>zf5M!#>m`scS>hT| z5}cn_Ql40p%HWuipOmWLnVXoN8kCxtQdxL1)dr~OK!8t(YjSe3q@?7kRjZC3J-TMi znga(8bai#Tdi839%d#HgDei>C>l&4C++&YW3US^4(u+b2(+oH%h}-@bhE z=FOXznVDHvSLf>L`t|GA7cXA?`0?ZP>C?-WE&KofKhOt2us&se4Ulpu3GxdD3Q__X z4pnb-VPIes_jGX#skk*~a<+f7fk<0p*&XwM<98ggG`Gj5%>KM?>c9W>sm^Y1xKvJk zUh8>&^0PhpqH3QaV;ij*8MyW*{dW}PXVduha=OE;CWDzaJzvf)ca{i_e3-Hs=dgrD?u)+WO8l zmV2M=(z5;UHC`_3u4>r%!209K9p|4{PRh4l^4R;&-mfndmfVcIGwGr<$4@SE>u|op z3*p^ArIx)`sgyq6GWqe5&UoASPqP1?B?k-0R{Zz6w`Wrhmqe1Uxvpj3OsgfqQ%}1_ zv)_(>#rvK2w(q`o+um0?h^uf(x8DAJ$n~JxuZX4VnRaS#|C9WW!+_yS+x3@!Ql>8i O1-qxKpUXO@geCwuPHz|h literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-y-lines.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-y-lines.png new file mode 100755 index 0000000000000000000000000000000000000000..4421d7027a7fcb8683604cf13145af696776d662 GIT binary patch literal 3665 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 literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/capsule/thumb-y.png new file mode 100755 index 0000000000000000000000000000000000000000..4040ee3522ee9136400c291aba40f33275a21955 GIT binary patch literal 541 zcmeAS@N?(olHy`uVBq!ia0vp^{y@yf!3-oL-)*b~QY`6?zK#qG>ra@ocD)4hB}-f* zN`mv#O3D+9QW+dm@{>{(JaZG%Q-e|yQz{EjrrH1%B?S0{xTdG4FI~Fy&!0cCva)N} zu3fNT!Q8oXFI>2=bLY;dPoM7Fx9`oHH#29>JbU)+g9i_$OqsHE>(*7PR&Ct4@#f8& zhYlS&di3av7cWkpJbCr%)tH!=yLaz?`}WPv&F#a74?r7$K=|^M3?QXY666>BA3tD- ziIINGz`!W(>Eaktacjxt+eOU^BCG)#N(*9K91Ns>{@>5DWNrj&`m7Rrt6gc2EgLG% zT`zh+ljl(6^Ujz@)r_sz{4cRQ%5{Hv1`88z8znaZ4n`O zYa8!E(S*pVl`@mnwikbUsk$!r_Cl^hmci8*)|`)fme(n4KgUnz`Kq^Gy=S6l&Xn2v z`>dtArtG9c`~7bhEuErgu`zG!nnw@5df)fId_-b$(7QQVr|$2&%Ix>oNv^f_tkV22 zO&@Ol*oqex{9(ymvv4FO#m&w5fcCa literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-x-lines.png b/lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-x-lines.png new file mode 100755 index 0000000000000000000000000000000000000000..4e5a44070151295167b505cdd43db9c54a4da8e6 GIT binary patch literal 301 zcmeAS@N?(olHy`uVBq!ia0vp^Ahsz7Gm!K@(DfZiNtU=qlmzFem6RtIr7}3CT?()5S5Q;?|Lg zmV5^kcvxifiWvUa=NfSHv1U$Q%jRt+rJI}DaxG%o4Am(rpTA7Fpt;c7X?M$_Cr`Jp zpXl>$#cHt)CmD6K8AY=hWwXDU#&12gal)hbPX766dv=)HZtbjmeU>TGmof4zzopr0IFtz!T|6H_V+Po~-c6&VEhgt$gVMy8~sw70h>BqTI6G<0=!RaREEw6y&A@#F2= zw?~g2y>#i)g9i`Ru3fuh#}1&TE;V-_ASF-|3t2fkHP@^yGg)xpvR|X(yK2!JEM<+Z3%K{x|K4;$c+ID%o}~OO z<~L5O>CZe?e{beeyR~1l+N-;(7gsk|NndnV;%8)Im@dRys`&eL2hbV@Pgg&ebxsLQ E0Ayx#HUIzs literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-y-lines.png b/lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-y-lines.png new file mode 100755 index 0000000000000000000000000000000000000000..af2bc24808b9db73534e761108cfe0933e6c311f GIT binary patch literal 262 zcmeAS@N?(olHy`uVBq!ia0vp^ra;Wa!3-poMV?s!DajJoh?3y^w370~qErUQl>DSr z1<%~X^wgl##FWaylc_d9MaBU>A+C{;kpTe#?d|QAm6Z(*4P9MbDJdx}EiDNN2|s@P zc>DJ4(W6H%UApw(!GpDH*Y4P{1E?>zh-EXn44aTj2o1uSs$~o)40If#x!Jy85}Sb4q9e0Ai?bHUIzs literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/night/rail-y.png new file mode 100755 index 0000000000000000000000000000000000000000..bc096bc773cd9da6a2d4ff5a5bfde7917a29b5f5 GIT binary patch literal 321 zcmeAS@N?(olHy`uVBq!ia0vp^ra;Wf!3-oXIfc9jQj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS>JioyeYLR_t^tRf>L1q1}r)6-K@Qm$UT+S1Yz5)$(1)2D=l zgocKO_3PKWxw&oJxUsUbvc0{%tE-ETk8k3{i3blJw6nAO@#Dwaw{O?3UHjm{gQG`} zUb=K?$BrF9vnTiL_yDA2OM?7@|KkA+k!{bjKyLALaSW-rl{A5oF|#n!QS o-PBdM;8#yz!+cjaHiZKWH1boFyt=akR{0ILv;1ONa4 literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/night/slider-base-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/night/slider-base-skin.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/night/slider-base-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/night/slider-base-skin.css index bbeab1cd5b6..417ccdad646 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/night/slider-base-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/night/slider-base-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/night/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/night/slider-base.css b/lib/yuilib/3.12.0/slider-base/assets/skins/night/slider-base.css new file mode 100755 index 00000000000..49692f374e5 --- /dev/null +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/night/slider-base.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-night .yui3-slider-x .yui3-slider-rail,.yui3-skin-night .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-night .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-night .yui3-slider-x .yui3-slider-rail{height:25px}.yui3-skin-night .yui3-slider-x .yui3-slider-thumb{height:26px;width:21px}.yui3-skin-night .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:20px;left:-5px;width:5px}.yui3-skin-night .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:20px;right:-5px;width:5px}.yui3-skin-night .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-10px}.yui3-skin-night .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-50px}.yui3-skin-night .yui3-slider-y .yui3-slider-rail,.yui3-skin-night .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-night .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-night .yui3-slider-y .yui3-slider-rail{width:25px}.yui3-skin-night .yui3-slider-y .yui3-slider-thumb{width:26px;height:21px}.yui3-skin-night .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:20px;top:-5px;height:5px}.yui3-skin-night .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:20px;bottom:-5px;height:5px}.yui3-skin-night .yui3-slider-y .yui3-slider-thumb-image{left:-10px;top:0}.yui3-skin-night .yui3-slider-y .yui3-slider-thumb-shadow{left:-50px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-night-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/night/slider-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/night/slider-skin.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/night/slider-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/night/slider-skin.css index 51483e63f12..c95e9a2e53a --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/night/slider-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/night/slider-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/sam-dark/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/night/thumb-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/night/thumb-x.png new file mode 100755 index 0000000000000000000000000000000000000000..2045257c2d7ab870e83eea2417fd57109c262de4 GIT binary patch literal 467 zcmeAS@N?(olHy`uVBq!ia0vp^B0%iM!3-pS3%VQzQj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS>Jidq7ELR=3YK78WDiL+_8 zxn5pghYlT*k&!VqH9dFk91|1M>eZ{6nVBCwdbDTHp0>8OEnBuID=VKod2;I1sS6h_ z^!4=xx&jDpU0o;(q;yJx{DS`z4;YSLaYO-d?wfG$Prg4R7+1=LF-ph?=zd1I=^s~ao zuS+67TE#wj<(+q=r)Tb}_uB0F&u{mdKI;Vst0DN-s{r~^~ literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/night/thumb-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/night/thumb-y.png new file mode 100755 index 0000000000000000000000000000000000000000..5ea57f08ee0db3636d221207e1522ad5fd9045bc GIT binary patch literal 566 zcmeAS@N?(olHy`uVBq!ia0vp^Za^%;!3-qXx9#=8U}fi7AzZCsS>JiVg($gt(qRe}31lT_;bT+`oVS{rmTi9zA;N)~%;cpI*Is zb=$UWFJHdgxN+m!wQJwLef#Otr&X&~&6_vx;lqdg{QTd(eOtP8DKj(knKNe!3JSEe zv}9ytzJC3>ef#zmD^@f&H)myKWn^S5Tej@fsZ%p%%+S-*PP? zr%s(ZbLLDwKEChYzvt!U?bxwHUtfRIrcL|y?Q?N)>Fw=pXlPisZr$~~x#B8x z*nr0&aQT#FFC1ph)J(ndH$U`Kij1#X>DTh8A8U0CKO8^Pog3a>{6qiQ>|=B1ytuH~ z*xdH@(%lQ+%PnF^OI^0)%(up$66S41Q>XMR8{TGF<(QP^dBwrE z(psoEX$5bmrCR`7XW=6aza+1~D@{kHm|mHAYmqR*(Mft6-e>bftQDqAM+<%CVl~d?(a04U5A4!Fq@;pgTe~ HDWM4fIbbT- literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/rail-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/rail-x.png new file mode 100755 index 0000000000000000000000000000000000000000..ce0ee5024faa796680eb5d396cf55cd64ff3354c GIT binary patch literal 3637 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 Hu0mjfXI;)3 literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/rail-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/rail-y.png new file mode 100755 index 0000000000000000000000000000000000000000..7fedc219cefaeeac597f4e0bbb6353b6421e802f GIT binary patch literal 3635 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 literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/slider-base-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/slider-base-skin.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/slider-base-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/slider-base-skin.css index 913da7da0e4..3d691819aa3 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/slider-base-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/slider-base-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/round-dark/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/slider-base.css b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/slider-base.css new file mode 100755 index 00000000000..392ab65089d --- /dev/null +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/slider-base.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail,.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail{height:25px;background-position:0 3px}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-thumb{height:26px;width:24px}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -17px;height:20px;left:-2px;width:5px}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -37px;height:20px;right:-2px;width:5px}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-7px}.yui3-skin-round-dark .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-47px}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail,.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail{width:25px;background-position:3px 0}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-thumb{width:26px;height:24px}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-17px 0;width:20px;top:-2px;height:5px}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-37px 0;width:20px;bottom:-2px;height:5px}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-thumb-image{top:0;left:-7px}.yui3-skin-round-dark .yui3-slider-y .yui3-slider-thumb-shadow{top:0;left:-47px;opacity:.15;filter:alpha(opacity=15)}#yui3-css-stamp.skin-round-dark-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/slider-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/slider-skin.css old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/slider-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/slider-skin.css index 913da7da0e4..3d691819aa3 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/round-dark/slider-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/slider-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/round-dark/thumb-x.png */ diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/thumb-x-grip.png b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/thumb-x-grip.png new file mode 100755 index 0000000000000000000000000000000000000000..858964b82f0222f5348afc18eabc3e4ec10d6824 GIT binary patch literal 4365 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 literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/thumb-y-grip.png b/lib/yuilib/3.12.0/slider-base/assets/skins/round-dark/thumb-y-grip.png new file mode 100755 index 0000000000000000000000000000000000000000..2773a4a9f977065c5e69410d6ff5d95644e78373 GIT binary patch literal 648 zcmeAS@N?(olHy`uVBq!ia0vp^olO9@DVB6cUq=Rp^(V|(yIunMk|nMY zCBgY=CFO}lsSJ)O`AMk?p1FzXsX?iUDV2pMQ*D5X5(0ceTusePU%Y&|Xz}8Z(9oMV zZ}#-|9z1xkxus>#o;~jF?x|_1lO|27s;=I)ZQI(lYp2hc@%#7hjhi;f$jB5G6`eVA zX2r^ttJkcVzhJ@o_3P{E>o;%NvV6sg_KuFF%a#Fc0D_b+zl?#DLP?Nc@PGV(Atpxp zEdv8%lc$SgNX4xsS8kRqQ4nBDh+4uBnWH&1wC4Zzp1ChQ(_g0We7;}k_fvMmf)oEV zlf#yZ*uB}$`*VlLA{VnhR`w(RCuXeYiiuO6koD>F@~`vMC(Ws>-+SPeui4kX9uwyj z+*|Ygs9U_A=Src_5TCR29%(+$+dDa6xi-U$6!nQg3=gKvYstIfT*R|}Gw50!k7M35l}v<=5Mtb-r{%`u0=P ziu}p`*>T&$JipJ;7Wjlx9xf=+D>=RC*SgPkOEPtX zws}liH?vSy@_A2Tm_)dSXZI7fIsL&)4SWxEsN_hkEYS^GYBbyCX`c7&t?umRzA3pA z%iJ?9(uDPoUw-Vf@v;8Sy`HODF6A^e+&=2VJ$cdb}r(zN5CwvJNl#9lFoq?4|3L|CA0eEECvn TRh}Yi4T?ceS3j3^P6lO9@DVB6cUq=Rp^(V|(yIunMk|nMY zCBgY=CFO}lsSJ)O`AMk?p1FzXsX?iUDV2pMQ*D5X4g~mwxVE&k6c-nFcXw~uvL!e; zI3^}$^5n^f4jnQxGdq9&ypNC1sZ*ycEiGrwnsxN((bcP0U%7H6D=X{5g$o)Q8mXzN z&z?QIapT6_yLVk&T+W<1bLsM>|NsBj)zwK!Nj-Y>C^t8^va<5syZ86*-AhPF`19w_ z)oa&IoH+6I>(^ViZn3hmK6vop*RNkMU%p(hV8N3oPj1|}e&_a`$B!T1zJ2@b*|Rrq z-V6^9x3jamfB$|)M#k~u$1h&IcgXTRG_-3rr{-V}&LBVS7K8YQ1+o~ttUw_W^*MAS!35heAWyBB6c-->nviZyR z|E6?JRV}KHv7d4E#7aYlqe?G&tMnZ^<8y0+Et8(Ed#22BLh1S0D)qIMl~b2p(#U(Z zBrzm$fqu)mE3S(^+SPfuepH=a*ZNb%ZHnuq{DW)X=cPUGIPWP@Qn*84*2->|umGc@ zF-3*;74xoVNBBKB8`N>BdrCp0ZO$|PPgC9`$QrTsXSqbEh&EJfmT#OMd4JWbmnpoK zA*^C6nID+E|2!e`YHg(5ZU0l;CNq|(HQboGp=iat_pf&8<))hOw7X_C_q~tx-T3Cy zMU&^tr_atitJLavJT-6r+&9PX_TSYry}Q8BNvu<;<44?SzpK~g-_F`JLEw~$dYlho9m*!oRZ>u5jKkmil@?+J1YQDLY&^Eq(dca5U1%%q*V z>8ng9C@6%wwk+shSbz7yb$Jf~Ar3{S$1U8)@33ETao$^cOWJk`xBL71YIm>yD*3f3 eX#MN?Ogs!eR|*fXn3pUBB@RzlKbLh*2~7aqJG%@3 literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round/rail-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/round/rail-x.png new file mode 100755 index 0000000000000000000000000000000000000000..62a4e92d6cdb1368f7b3d19925e0886c82f8ce73 GIT binary patch literal 3642 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 M07*qoM6N<$g1VsKQUCw| literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round/rail-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/round/rail-y.png new file mode 100755 index 0000000000000000000000000000000000000000..86f0b8ca2905bee4bed4314bad9365a971f1dd45 GIT binary patch literal 3637 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 LS3j3^P6v}mh%`zg-O>$1N;k+L>CoMhLr9l^ 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 S+H?GOBPq$L%T_^51OErntx=l* literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round/thumb-y-grip.png b/lib/yuilib/3.12.0/slider-base/assets/skins/round/thumb-y-grip.png new file mode 100755 index 0000000000000000000000000000000000000000..1bf7ff3e4448befe4f777c2c123642dba617718a GIT binary patch literal 731 zcmeAS@N?(olHy`uVBq!ia0vp^olO9@DVB6cUq=Rp^(V|(yIunMk|nMY zCBgY=CFO}lsSJ)O`AMk?p1FzXsX?iUDV2pMQ*D5X5(0ceT(@l9`uxR<#Y>hPI&`SJ zrza#d#N6Dxxw(1I-o4q`*^?$uK7IQ1uV261+}vi(npIt0{qf_+wd>Xumy}$&a^?2z z+d@J@D^{*ty=KjZ4IAp}>*vp(zij#P_V)I~#6+MCK;ZCC^9hhrC<*cl{*NCp#KcIy zWnf^u>gnPbQgLg^)r)lApE<#%`K9g!|r z=WbnB7&YgcvhX(Xl~=Da1T9l&PTABekvG@x{qh&@VzW$nrUWrOW^GtLCApsc;XkoA z=YmvcuQQcX>TF|(Jjrz9&XwzL{gn^w^OduXgP*4)qLretFZv zlbbu2*L<;HTeET=lm&kk%Rhd(BJy+QpBej_Iab*%T2t^nxv$3SiPdpgRnKU-mBshf z@@v{3eeM2me&KTE;LFG5m)yxLU2|=TNBN!~f(Z;Zr#8;rbfxwzC{cL2`njxgN@xNA D9)Mw} literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/round/thumb-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/round/thumb-y.png new file mode 100755 index 0000000000000000000000000000000000000000..a8a0c620233f052a3e7014bcf8b4877a24ed8795 GIT binary patch literal 890 zcmeAS@N?(olHy`uVBq!ia0vp^olO9@DVB6cUq=Rp^(V|(yIunMk|nMY zCBgY=CFO}lsSJ)O`AMk?p1FzXsX?iUDV2pMQ*D5X4g~mwxPJNa<>8};fkA;eIXROj zPcAMlo;h>ox^?RoFJ659{Q0`Ny0p~PqeqXPI(6#Gl`FBav3vIH`ThI%vuDo^9Xj;y z-@h9-Zd|x<;m@BxckbNr@$p%?a^=>oTQ6O@v}x0(GiS~;H8ojUT6T7J_Vx9(wzlrv zx%1t-_fMWYxp(hgWo6~HYu64OJaFQ~iCedBB_<}meEIUmjq4d18J8|yJbwK6+8RL`xYJ^wtxTr+qZ9@J$rV+g82^~Jh*uAVs%Xo&<8+Zx2?+_NI8@Q`33){3@{w3 z-sr->!1%?}#WAGf){?6?i<%51SQEHhcqT4T3}kVf7A2mwv}uRpzW>ptWmb!?dAL`% zN$dSk`>Af}as2fK!MyBQyH&pYNLcdvy5P1ub59AIn*X1uG1E!C=Wqb~WP=jxt?^|# zv3yLC+pV?>ZJjClHsPD&o5(40kJ4nHvR?IPdheFhw!BZ{V01^kQ8=UX^M7FhrGhH4 z-ZP)Cm^;sKbCk`o=RS0a{3Ns3Q${$~c`>OJ@S z-}1&WsZ2?ks4`zwo&AEjLR`)<{m5x=bN9Gu2zfSoaGkqk<$w3m`%kKG?{hr#e<||v zon&T>$KjRnkIH}hMtKJH|EO%db^cA?sskmbFVAwDl78jtlbz@0&HN$A+;Z(Mqp~cY z;14VPXZJqN3_g&)ZpMk`*lo`*-^*HIp!_lR=j)VD#{z>lOIW>DiL|b2oFZ|5=Yje= z(}b@&EYq3YmGtfRvP%cby_f!Dt6y$wxby1tr%XFcO~dbN+4o+^d%_@d<+^Ka=5@2X k$t!d3AOG~b|AXoQ1}U|)Hn)k1Z$N3v)78&qol`;+0A5PftpET3 literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.9.1/build/range-slider/assets/thumb-x-oblong2-dark.png b/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/rail-x-lines.png old mode 100644 new mode 100755 similarity index 74% rename from lib/yuilib/3.9.1/build/range-slider/assets/thumb-x-oblong2-dark.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/rail-x-lines.png index 20f126029f17c8f7b37458b0da6e14cfbd3207f4..39ac404cc35b374e578b6a29ab55f3dea65da302 GIT binary patch delta 538 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 FV1k?N%F_S< literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/rail-y-lines.png b/lib/yuilib/3.12.0/slider-base/assets/skins/sam-dark/rail-y-lines.png new file mode 100755 index 0000000000000000000000000000000000000000..0553faa9a5570a19afac705ebfc8f8f3ec5d7f72 GIT binary patch literal 3640 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 dS3V;f!FFq8lQ literal 0 HcmV?d00001 diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/rail-x-lines.png b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/rail-x-lines.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/rail-x-lines.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam/rail-x-lines.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/rail-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/rail-x.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/rail-x.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam/rail-x.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/rail-y-lines.png b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/rail-y-lines.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/rail-y-lines.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam/rail-y-lines.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/rail-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/rail-y.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/rail-y.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam/rail-y.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/slider-base-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/slider-base-skin.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/slider-base-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam/slider-base-skin.css index f07d1f7a977..878b84991c8 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/slider-base-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/slider-base-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/sam/thumb-x.png */ diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/slider-base.css b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/slider-base.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/assets/skins/sam/slider-base.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam/slider-base.css index 91327390bc9..f1510ef323c --- a/lib/yuilib/3.9.1/build/assets/skins/sam/slider-base.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/slider-base.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-sam .yui3-slider-x .yui3-slider-rail,.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-sam .yui3-slider-x .yui3-slider-rail{height:26px}.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb{height:26px;width:15px}.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:20px;left:-2px;width:5px}.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:20px;right:-2px;width:5px}.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-10px}.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-50px}.yui3-skin-sam .yui3-slider-y .yui3-slider-rail,.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-sam .yui3-slider-y .yui3-slider-rail{width:26px}.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb{width:26px;height:15px}.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:20px;top:-2px;height:5px}.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:20px;bottom:-2px;height:5px}.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb-image{left:-10px;top:0}.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb-shadow{left:-50px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-sam-slider-base{display:none} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/slider-skin.css b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/slider-skin.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/slider-skin.css rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam/slider-skin.css index f07d1f7a977..878b84991c8 --- a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/slider-skin.css +++ b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/slider-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Horizontal Slider */ /* Use thumbUrl /build/slider-base/assets/skins/sam/thumb-x.png */ diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/thumb-x.png b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/thumb-x.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/thumb-x.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam/thumb-x.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/thumb-y.png b/lib/yuilib/3.12.0/slider-base/assets/skins/sam/thumb-y.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/slider-base/assets/skins/sam/thumb-y.png rename to lib/yuilib/3.12.0/slider-base/assets/skins/sam/thumb-y.png diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/slider-base-core.css b/lib/yuilib/3.12.0/slider-base/assets/slider-base-core.css old mode 100644 new mode 100755 similarity index 80% rename from lib/yuilib/3.9.1/build/slider-base/assets/slider-base-core.css rename to lib/yuilib/3.12.0/slider-base/assets/slider-base-core.css index 0bd472112f7..be540f68d4e --- a/lib/yuilib/3.9.1/build/slider-base/assets/slider-base-core.css +++ b/lib/yuilib/3.12.0/slider-base/assets/slider-base-core.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-slider, .yui3-slider-rail { /* xbrowser inline-block styles */ diff --git a/lib/yuilib/3.9.1/build/range-slider/assets/slider-core.css b/lib/yuilib/3.12.0/slider-base/assets/slider-core.css old mode 100644 new mode 100755 similarity index 80% rename from lib/yuilib/3.9.1/build/range-slider/assets/slider-core.css rename to lib/yuilib/3.12.0/slider-base/assets/slider-core.css index 0bd472112f7..be540f68d4e --- a/lib/yuilib/3.9.1/build/range-slider/assets/slider-core.css +++ b/lib/yuilib/3.12.0/slider-base/assets/slider-core.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-slider, .yui3-slider-rail { /* xbrowser inline-block styles */ diff --git a/lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-x-oblong-dark.png b/lib/yuilib/3.12.0/slider-base/assets/thumb-x-oblong-dark.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-x-oblong-dark.png rename to lib/yuilib/3.12.0/slider-base/assets/thumb-x-oblong-dark.png diff --git a/lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-x-oblong.png b/lib/yuilib/3.12.0/slider-base/assets/thumb-x-oblong.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-x-oblong.png rename to lib/yuilib/3.12.0/slider-base/assets/thumb-x-oblong.png diff --git a/lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-x-oblong2-dark.png b/lib/yuilib/3.12.0/slider-base/assets/thumb-x-oblong2-dark.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-x-oblong2-dark.png rename to lib/yuilib/3.12.0/slider-base/assets/thumb-x-oblong2-dark.png diff --git a/lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-x-oblong2.png b/lib/yuilib/3.12.0/slider-base/assets/thumb-x-oblong2.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-x-oblong2.png rename to lib/yuilib/3.12.0/slider-base/assets/thumb-x-oblong2.png diff --git a/lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-y-oblong-dark.png b/lib/yuilib/3.12.0/slider-base/assets/thumb-y-oblong-dark.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-y-oblong-dark.png rename to lib/yuilib/3.12.0/slider-base/assets/thumb-y-oblong-dark.png diff --git a/lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-y-oblong.png b/lib/yuilib/3.12.0/slider-base/assets/thumb-y-oblong.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-y-oblong.png rename to lib/yuilib/3.12.0/slider-base/assets/thumb-y-oblong.png diff --git a/lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-y-oblong2-dark.png b/lib/yuilib/3.12.0/slider-base/assets/thumb-y-oblong2-dark.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-y-oblong2-dark.png rename to lib/yuilib/3.12.0/slider-base/assets/thumb-y-oblong2-dark.png diff --git a/lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-y-oblong2.png b/lib/yuilib/3.12.0/slider-base/assets/thumb-y-oblong2.png old mode 100644 new mode 100755 similarity index 100% rename from lib/yuilib/3.9.1/build/clickable-rail/assets/thumb-y-oblong2.png rename to lib/yuilib/3.12.0/slider-base/assets/thumb-y-oblong2.png diff --git a/lib/yuilib/3.9.1/build/slider-base/slider-base-debug.js b/lib/yuilib/3.12.0/slider-base/slider-base-debug.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/slider-base/slider-base-debug.js rename to lib/yuilib/3.12.0/slider-base/slider-base-debug.js index 5c77211bfff..a5408d459a8 --- a/lib/yuilib/3.9.1/build/slider-base/slider-base-debug.js +++ b/lib/yuilib/3.12.0/slider-base/slider-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('slider-base', function (Y, NAME) { /** @@ -760,4 +766,4 @@ Y.SliderBase = Y.extend( SliderBase, Y.Widget, { }); -}, '3.9.1', {"requires": ["widget", "dd-constrain", "event-key"], "skinnable": true}); +}, '3.12.0', {"requires": ["widget", "dd-constrain", "event-key"], "skinnable": true}); diff --git a/lib/yuilib/3.9.1/build/slider-base/slider-base-min.js b/lib/yuilib/3.12.0/slider-base/slider-base-min.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/slider-base/slider-base-min.js rename to lib/yuilib/3.12.0/slider-base/slider-base-min.js index 06a3135ba5a..0e1c726b98a --- a/lib/yuilib/3.9.1/build/slider-base/slider-base-min.js +++ b/lib/yuilib/3.12.0/slider-base/slider-base-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("slider-base",function(e,t){function r(){r.superclass.constructor.apply(this,arguments)}var n=e.Attribute.INVALID_VALUE;e.SliderBase=e.extend(r,e.Widget,{initializer:function(){this.axis=this.get("axis"),this._key={dim:this.axis==="y"?"height":"width",minEdge:this.axis==="y"?"top":"left",maxEdge:this.axis==="y"?"bottom":"right",xyIndex:this.axis==="y"?1:0},this.publish("thumbMove",{defaultFn:this._defThumbMoveFn,queuable:!0})},renderUI:function(){var e=this.get("contentBox");this.rail=this.renderRail(),this._uiSetRailLength(this.get("length")),this.thumb=this.renderThumb(),this.rail.appendChild(this.thumb),e.appendChild(this.rail),e.addClass(this.getClassName(this.axis))},renderRail:function(){var t=this.getClassName("rail","cap",this._key.minEdge),n=this.getClassName("rail","cap",this._key.maxEdge);return e.Node.create(e.Lang.sub(this.RAIL_TEMPLATE,{railClass:this.getClassName("rail"),railMinCapClass:t,railMaxCapClass:n}))},_uiSetRailLength:function(e){this.rail.setStyle(this._key.dim,e)},renderThumb:function(){this._initThumbUrl();var t=this.get("thumbUrl");return e.Node.create(e.Lang.sub(this.THUMB_TEMPLATE,{thumbClass:this.getClassName("thumb"),thumbShadowClass:this.getClassName("thumb","shadow"),thumbImageClass:this.getClassName("thumb","image"),thumbShadowUrl:t,thumbImageUrl:t,thumbAriaLabelId:this.getClassName("label",e.guid())}))},_onThumbClick:function(e){this.thumb.focus()},bindUI:function(){var t=this.get("boundingBox"),n=e.UA.opera?"press:":"down:",r=n+"38,40,33,34,35,36",i=n+"37,39",s=n+"37+meta,39+meta";t.on("key",this._onDirectionKey,r,this),t.on("key",this._onLeftRightKey,i,this),t.on("key",this._onLeftRightKeyMeta,s,this),this.thumb.on("click",this._onThumbClick,this),this._bindThumbDD(),this._bindValueLogic(),this.after("disabledChange",this._afterDisabledChange),this.after("lengthChange",this._afterLengthChange)},_incrMinor:function(){this.set("value",this.get("value")+this.get("minorStep"))},_decrMinor:function(){this.set("value",this.get("value")-this.get("minorStep"))},_incrMajor:function(){this.set("value",this.get("value")+this.get("majorStep"))},_decrMajor:function(){this.set("value",this.get("value")-this.get("majorStep"))},_setToMin:function(e){this.set("value",this.get("min"))},_setToMax:function(e){this.set("value",this.get("max"))},_onDirectionKey:function(e){e.preventDefault();if(this.get("disabled")===!1)switch(e.charCode){case 38:this._incrMinor();break;case 40:this._decrMinor();break;case 36:this._setToMin();break;case 35:this._setToMax();break;case 33:this._incrMajor();break;case 34:this._decrMajor()}},_onLeftRightKey:function(e){e.preventDefault();if(this.get("disabled")===!1)switch(e.charCode){case 37:this._decrMinor();break;case 39:this._incrMinor()}},_onLeftRightKeyMeta:function(e){e.preventDefault();if(this.get("disabled")===!1)switch(e.charCode){case 37:this._setToMin();break;case 39:this._setToMax()}},_bindThumbDD:function(){var t={constrain:this.rail};t["stick"+this.axis.toUpperCase()]=!0,this._dd=new e.DD.Drag({node:this.thumb,bubble:!1,on:{"drag:start":e.bind(this._onDragStart,this)},after:{"drag:drag":e.bind(this._afterDrag,this),"drag:end":e.bind(this._afterDragEnd,this)}}),this._dd.plug(e.Plugin.DDConstrained,t)},_bindValueLogic:function(){},_uiMoveThumb:function(e,t){this.thumb&&(this.thumb.setStyle(this._key.minEdge,e+"px"),t||(t={}),t.offset=e,this.fire("thumbMove",t))},_onDragStart:function(e){this.fire("slideStart",{ddEvent:e,originEvent:e})},_afterDrag:function(e){var t=e.info.xy[this._key.xyIndex],n=e.target.con._regionCache[this._key.minEdge];this.fire("thumbMove",{offset:t-n,ddEvent:e,originEvent:e})},_afterDragEnd:function(e){this.fire("slideEnd",{ddEvent:e,originEvent:e})},_afterDisabledChange:function(e){this._dd.set("lock",e.newVal)},_afterLengthChange:function(e){this.get("rendered")&&(this._uiSetRailLength(e.newVal),this.syncUI())},syncUI:function(){this._dd.con.resetCache(),this._syncThumbPosition(),this.thumb.set("aria-valuemin",this.get("min")),this.thumb.set("aria-valuemax",this.get("max")),this._dd.set("lock",this.get("disabled"))},_syncThumbPosition:function(){},_setAxis:function(e){return e=(e+"").toLowerCase(),e==="x"||e==="y"?e:n},_setLength:function(e){e=(e+"").toLowerCase();var t=parseFloat(e,10),r=e.replace(/[\d\.\-]/g,"")||this.DEF_UNIT;return t>0?t+r:n},_initThumbUrl:function(){if(!this.get("thumbUrl")){var t=this.getSkinName()||"sam",n=e.config.base;n.indexOf("http://yui.yahooapis.com/combo")===0&&(n="http://yui.yahooapis.com/"+e.version+"/build/"),this.set("thumbUrl",n+"slider-base/assets/skins/"+t+"/thumb-"+this.axis+".png")}},BOUNDING_TEMPLATE:"",CONTENT_TEMPLATE:"",RAIL_TEMPLATE:'',THUMB_TEMPLATE:'Slider thumb shadowSlider thumb'},{NAME:"sliderBase",ATTRS:{axis:{value:"x",writeOnce:!0,setter:"_setAxis",lazyAdd:!1},length:{value:"150px",setter:"_setLength"},thumbUrl:{value:null,validator:e.Lang.isString}}})},"3.9.1",{requires:["widget","dd-constrain","event-key"],skinnable:!0}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("slider-base",function(e,t){function r(){r.superclass.constructor.apply(this,arguments)}var n=e.Attribute.INVALID_VALUE;e.SliderBase=e.extend(r,e.Widget,{initializer:function(){this.axis=this.get("axis"),this._key={dim:this.axis==="y"?"height":"width",minEdge:this.axis==="y"?"top":"left",maxEdge:this.axis==="y"?"bottom":"right",xyIndex:this.axis==="y"?1:0},this.publish("thumbMove",{defaultFn:this._defThumbMoveFn,queuable:!0})},renderUI:function(){var e=this.get("contentBox");this.rail=this.renderRail(),this._uiSetRailLength(this.get("length")),this.thumb=this.renderThumb(),this.rail.appendChild(this.thumb),e.appendChild(this.rail),e.addClass(this.getClassName(this.axis))},renderRail:function(){var t=this.getClassName("rail","cap",this._key.minEdge),n=this.getClassName("rail","cap",this._key.maxEdge);return e.Node.create(e.Lang.sub(this.RAIL_TEMPLATE,{railClass:this.getClassName("rail"),railMinCapClass:t,railMaxCapClass:n}))},_uiSetRailLength:function(e){this.rail.setStyle(this._key.dim,e)},renderThumb:function(){this._initThumbUrl();var t=this.get("thumbUrl");return e.Node.create(e.Lang.sub(this.THUMB_TEMPLATE,{thumbClass:this.getClassName("thumb"),thumbShadowClass:this.getClassName("thumb","shadow"),thumbImageClass:this.getClassName("thumb","image"),thumbShadowUrl:t,thumbImageUrl:t,thumbAriaLabelId:this.getClassName("label",e.guid())}))},_onThumbClick:function(e){this.thumb.focus()},bindUI:function(){var t=this.get("boundingBox"),n=e.UA.opera?"press:":"down:",r=n+"38,40,33,34,35,36",i=n+"37,39",s=n+"37+meta,39+meta";t.on("key",this._onDirectionKey,r,this),t.on("key",this._onLeftRightKey,i,this),t.on("key",this._onLeftRightKeyMeta,s,this),this.thumb.on("click",this._onThumbClick,this),this._bindThumbDD(),this._bindValueLogic(),this.after("disabledChange",this._afterDisabledChange),this.after("lengthChange",this._afterLengthChange)},_incrMinor:function(){this.set("value",this.get("value")+this.get("minorStep"))},_decrMinor:function(){this.set("value",this.get("value")-this.get("minorStep"))},_incrMajor:function(){this.set("value",this.get("value")+this.get("majorStep"))},_decrMajor:function(){this.set("value",this.get("value")-this.get("majorStep"))},_setToMin:function(e){this.set("value",this.get("min"))},_setToMax:function(e){this.set("value",this.get("max"))},_onDirectionKey:function(e){e.preventDefault();if(this.get("disabled")===!1)switch(e.charCode){case 38:this._incrMinor();break;case 40:this._decrMinor();break;case 36:this._setToMin();break;case 35:this._setToMax();break;case 33:this._incrMajor();break;case 34:this._decrMajor()}},_onLeftRightKey:function(e){e.preventDefault();if(this.get("disabled")===!1)switch(e.charCode){case 37:this._decrMinor();break;case 39:this._incrMinor()}},_onLeftRightKeyMeta:function(e){e.preventDefault();if(this.get("disabled")===!1)switch(e.charCode){case 37:this._setToMin();break;case 39:this._setToMax()}},_bindThumbDD:function(){var t={constrain:this.rail};t["stick"+this.axis.toUpperCase()]=!0,this._dd=new e.DD.Drag({node:this.thumb,bubble:!1,on:{"drag:start":e.bind(this._onDragStart,this)},after:{"drag:drag":e.bind(this._afterDrag,this),"drag:end":e.bind(this._afterDragEnd,this)}}),this._dd.plug(e.Plugin.DDConstrained,t)},_bindValueLogic:function(){},_uiMoveThumb:function(e,t){this.thumb&&(this.thumb.setStyle(this._key.minEdge,e+"px"),t||(t={}),t.offset=e,this.fire("thumbMove",t))},_onDragStart:function(e){this.fire("slideStart",{ddEvent:e,originEvent:e})},_afterDrag:function(e){var t=e.info.xy[this._key.xyIndex],n=e.target.con._regionCache[this._key.minEdge];this.fire("thumbMove",{offset:t-n,ddEvent:e,originEvent:e})},_afterDragEnd:function(e){this.fire("slideEnd",{ddEvent:e,originEvent:e})},_afterDisabledChange:function(e){this._dd.set("lock",e.newVal)},_afterLengthChange:function(e){this.get("rendered")&&(this._uiSetRailLength(e.newVal),this.syncUI())},syncUI:function(){this._dd.con.resetCache(),this._syncThumbPosition(),this.thumb.set("aria-valuemin",this.get("min")),this.thumb.set("aria-valuemax",this.get("max")),this._dd.set("lock",this.get("disabled"))},_syncThumbPosition:function(){},_setAxis:function(e){return e=(e+"").toLowerCase(),e==="x"||e==="y"?e:n},_setLength:function(e){e=(e+"").toLowerCase();var t=parseFloat(e,10),r=e.replace(/[\d\.\-]/g,"")||this.DEF_UNIT;return t>0?t+r:n},_initThumbUrl:function(){if(!this.get("thumbUrl")){var t=this.getSkinName()||"sam",n=e.config.base;n.indexOf("http://yui.yahooapis.com/combo")===0&&(n="http://yui.yahooapis.com/"+e.version+"/build/"),this.set("thumbUrl",n+"slider-base/assets/skins/"+t+"/thumb-"+this.axis+".png")}},BOUNDING_TEMPLATE:"",CONTENT_TEMPLATE:"",RAIL_TEMPLATE:'',THUMB_TEMPLATE:'Slider thumb shadowSlider thumb'},{NAME:"sliderBase",ATTRS:{axis:{value:"x",writeOnce:!0,setter:"_setAxis",lazyAdd:!1},length:{value:"150px",setter:"_setLength"},thumbUrl:{value:null,validator:e.Lang.isString}}})},"3.12.0",{requires:["widget","dd-constrain","event-key"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/slider-base/slider-base.js b/lib/yuilib/3.12.0/slider-base/slider-base.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/slider-base/slider-base.js rename to lib/yuilib/3.12.0/slider-base/slider-base.js index e60f1f8fdc8..de489f313c8 --- a/lib/yuilib/3.9.1/build/slider-base/slider-base.js +++ b/lib/yuilib/3.12.0/slider-base/slider-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('slider-base', function (Y, NAME) { /** @@ -758,4 +764,4 @@ Y.SliderBase = Y.extend( SliderBase, Y.Widget, { }); -}, '3.9.1', {"requires": ["widget", "dd-constrain", "event-key"], "skinnable": true}); +}, '3.12.0', {"requires": ["widget", "dd-constrain", "event-key"], "skinnable": true}); diff --git a/lib/yuilib/3.9.1/build/slider-value-range/slider-value-range-debug.js b/lib/yuilib/3.12.0/slider-value-range/slider-value-range-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/slider-value-range/slider-value-range-debug.js rename to lib/yuilib/3.12.0/slider-value-range/slider-value-range-debug.js index e5caa8142d8..984eb044287 --- a/lib/yuilib/3.9.1/build/slider-value-range/slider-value-range-debug.js +++ b/lib/yuilib/3.12.0/slider-value-range/slider-value-range-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('slider-value-range', function (Y, NAME) { /** @@ -417,4 +423,4 @@ Y.SliderValueRange = Y.mix( SliderValueRange, { }, true ); -}, '3.9.1', {"requires": ["slider-base"]}); +}, '3.12.0', {"requires": ["slider-base"]}); diff --git a/lib/yuilib/3.9.1/build/slider-value-range/slider-value-range-min.js b/lib/yuilib/3.12.0/slider-value-range/slider-value-range-min.js old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/slider-value-range/slider-value-range-min.js rename to lib/yuilib/3.12.0/slider-value-range/slider-value-range-min.js index e3a54a31384..d63e0d1d475 --- a/lib/yuilib/3.9.1/build/slider-value-range/slider-value-range-min.js +++ b/lib/yuilib/3.12.0/slider-value-range/slider-value-range-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("slider-value-range",function(e,t){function o(){this._initSliderValueRange()}var n="min",r="max",i="value",s=Math.round;e.SliderValueRange=e.mix(o,{prototype:{_factor:1,_initSliderValueRange:function(){},_bindValueLogic:function(){this.after({minChange:this._afterMinChange,maxChange:this._afterMaxChange,valueChange:this._afterValueChange})},_syncThumbPosition:function(){this._calculateFactor(),this._setPosition(this.get(i))},_calculateFactor:function(){var e=this.get("length"),t=this.thumb.getStyle(this._key.dim),i=this.get(n),s=this.get(r);e=parseFloat(e)||150,t=parseFloat(t)||15,this._factor=(s-i)/(e-t)},_defThumbMoveFn:function(e){e.source!=="set"&&this.set(i,this._offsetToValue(e.offset))},_offsetToValue:function(e){var t=s(e*this._factor)+this.get(n);return s(this._nearestValue(t))},_valueToOffset:function(e){var t=s((e-this.get(n))/this._factor);return t},getValue:function(){return this.get(i)},setValue:function(e){return this.set(i,e)},_afterMinChange:function(e){this._verifyValue(),this._syncThumbPosition()},_afterMaxChange:function(e){this._verifyValue(),this._syncThumbPosition()},_verifyValue:function(){var e=this.get(i),t=this._nearestValue(e);e!==t&&this.set(i,t)},_afterValueChange:function(e){var t=e.newVal;this._setPosition(t,{source:"set"})},_setPosition:function(e,t){this._uiMoveThumb(this._valueToOffset(e),t),this.thumb.set("aria-valuenow",e),this.thumb.set("aria-valuetext",e)},_validateNewMin:function(t){return e.Lang.isNumber(t)},_validateNewMax:function(t){return e.Lang.isNumber(t)},_setNewValue:function(e){return s(this._nearestValue(e))},_nearestValue:function(e){var t=this.get(n),i=this.get(r),s;return s=i>t?i:t,t=i>t?t:i,i=s,ei?i:e}},ATTRS:{min:{value:0,validator:"_validateNewMin"},max:{value:100,validator:"_validateNewMax"},minorStep:{value:1},majorStep:{value:10},value:{value:0,setter:"_setNewValue"}}},!0)},"3.9.1",{requires:["slider-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("slider-value-range",function(e,t){function o(){this._initSliderValueRange()}var n="min",r="max",i="value",s=Math.round;e.SliderValueRange=e.mix(o,{prototype:{_factor:1,_initSliderValueRange:function(){},_bindValueLogic:function(){this.after({minChange:this._afterMinChange,maxChange:this._afterMaxChange,valueChange:this._afterValueChange})},_syncThumbPosition:function(){this._calculateFactor(),this._setPosition(this.get(i))},_calculateFactor:function(){var e=this.get("length"),t=this.thumb.getStyle(this._key.dim),i=this.get(n),s=this.get(r);e=parseFloat(e)||150,t=parseFloat(t)||15,this._factor=(s-i)/(e-t)},_defThumbMoveFn:function(e){e.source!=="set"&&this.set(i,this._offsetToValue(e.offset))},_offsetToValue:function(e){var t=s(e*this._factor)+this.get(n);return s(this._nearestValue(t))},_valueToOffset:function(e){var t=s((e-this.get(n))/this._factor);return t},getValue:function(){return this.get(i)},setValue:function(e){return this.set(i,e)},_afterMinChange:function(e){this._verifyValue(),this._syncThumbPosition()},_afterMaxChange:function(e){this._verifyValue(),this._syncThumbPosition()},_verifyValue:function(){var e=this.get(i),t=this._nearestValue(e);e!==t&&this.set(i,t)},_afterValueChange:function(e){var t=e.newVal;this._setPosition(t,{source:"set"})},_setPosition:function(e,t){this._uiMoveThumb(this._valueToOffset(e),t),this.thumb.set("aria-valuenow",e),this.thumb.set("aria-valuetext",e)},_validateNewMin:function(t){return e.Lang.isNumber(t)},_validateNewMax:function(t){return e.Lang.isNumber(t)},_setNewValue:function(e){return s(this._nearestValue(e))},_nearestValue:function(e){var t=this.get(n),i=this.get(r),s;return s=i>t?i:t,t=i>t?t:i,i=s,ei?i:e}},ATTRS:{min:{value:0,validator:"_validateNewMin"},max:{value:100,validator:"_validateNewMax"},minorStep:{value:1},majorStep:{value:10},value:{value:0,setter:"_setNewValue"}}},!0)},"3.12.0",{requires:["slider-base"]}); diff --git a/lib/yuilib/3.9.1/build/slider-value-range/slider-value-range.js b/lib/yuilib/3.12.0/slider-value-range/slider-value-range.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/slider-value-range/slider-value-range.js rename to lib/yuilib/3.12.0/slider-value-range/slider-value-range.js index c3e9c80f63d..2204fbfb0f3 --- a/lib/yuilib/3.9.1/build/slider-value-range/slider-value-range.js +++ b/lib/yuilib/3.12.0/slider-value-range/slider-value-range.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('slider-value-range', function (Y, NAME) { /** @@ -413,4 +419,4 @@ Y.SliderValueRange = Y.mix( SliderValueRange, { }, true ); -}, '3.9.1', {"requires": ["slider-base"]}); +}, '3.12.0', {"requires": ["slider-base"]}); diff --git a/lib/yuilib/3.9.1/build/sortable-scroll/sortable-scroll-debug.js b/lib/yuilib/3.12.0/sortable-scroll/sortable-scroll-debug.js old mode 100644 new mode 100755 similarity index 88% rename from lib/yuilib/3.9.1/build/sortable-scroll/sortable-scroll-debug.js rename to lib/yuilib/3.12.0/sortable-scroll/sortable-scroll-debug.js index 11863f3fed1..a3197e48667 --- a/lib/yuilib/3.9.1/build/sortable-scroll/sortable-scroll-debug.js +++ b/lib/yuilib/3.12.0/sortable-scroll/sortable-scroll-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('sortable-scroll', function (Y, NAME) { @@ -65,4 +71,4 @@ YUI.add('sortable-scroll', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-scroll", "sortable"]}); +}, '3.12.0', {"requires": ["dd-scroll", "sortable"]}); diff --git a/lib/yuilib/3.9.1/build/sortable-scroll/sortable-scroll-min.js b/lib/yuilib/3.12.0/sortable-scroll/sortable-scroll-min.js old mode 100644 new mode 100755 similarity index 66% rename from lib/yuilib/3.9.1/build/sortable-scroll/sortable-scroll-min.js rename to lib/yuilib/3.12.0/sortable-scroll/sortable-scroll-min.js index b3af3efcd9e..5c3a11b7fa0 --- a/lib/yuilib/3.9.1/build/sortable-scroll/sortable-scroll-min.js +++ b/lib/yuilib/3.12.0/sortable-scroll/sortable-scroll-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("sortable-scroll",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.extend(n,e.Base,{initializer:function(){var t=this.get("host");t.plug(e.Plugin.DDNodeScroll,{node:t.get("container")}),t.delegate.on("drop:over",function(t){this.dd.nodescroll&&t.drag.nodescroll&&t.drag.nodescroll.set("parentScroll",e.one(this.get("container")))})}},{ATTRS:{host:{value:""}},NAME:"SortScroll",NS:"scroll"}),e.namespace("Y.Plugin"),e.Plugin.SortableScroll=n},"3.9.1",{requires:["dd-scroll","sortable"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("sortable-scroll",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)};e.extend(n,e.Base,{initializer:function(){var t=this.get("host");t.plug(e.Plugin.DDNodeScroll,{node:t.get("container")}),t.delegate.on("drop:over",function(t){this.dd.nodescroll&&t.drag.nodescroll&&t.drag.nodescroll.set("parentScroll",e.one(this.get("container")))})}},{ATTRS:{host:{value:""}},NAME:"SortScroll",NS:"scroll"}),e.namespace("Y.Plugin"),e.Plugin.SortableScroll=n},"3.12.0",{requires:["dd-scroll","sortable"]}); diff --git a/lib/yuilib/3.9.1/build/sortable-scroll/sortable-scroll.js b/lib/yuilib/3.12.0/sortable-scroll/sortable-scroll.js old mode 100644 new mode 100755 similarity index 88% rename from lib/yuilib/3.9.1/build/sortable-scroll/sortable-scroll.js rename to lib/yuilib/3.12.0/sortable-scroll/sortable-scroll.js index 11863f3fed1..a3197e48667 --- a/lib/yuilib/3.9.1/build/sortable-scroll/sortable-scroll.js +++ b/lib/yuilib/3.12.0/sortable-scroll/sortable-scroll.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('sortable-scroll', function (Y, NAME) { @@ -65,4 +71,4 @@ YUI.add('sortable-scroll', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-scroll", "sortable"]}); +}, '3.12.0', {"requires": ["dd-scroll", "sortable"]}); diff --git a/lib/yuilib/3.9.1/build/sortable/sortable-debug.js b/lib/yuilib/3.12.0/sortable/sortable-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/sortable/sortable-debug.js rename to lib/yuilib/3.12.0/sortable/sortable-debug.js index 9e24842eb16..33d56dec9a2 --- a/lib/yuilib/3.9.1/build/sortable/sortable-debug.js +++ b/lib/yuilib/3.12.0/sortable/sortable-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('sortable', function (Y, NAME) { @@ -530,4 +536,4 @@ YUI.add('sortable', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-delegate", "dd-drop-plugin", "dd-proxy"]}); +}, '3.12.0', {"requires": ["dd-delegate", "dd-drop-plugin", "dd-proxy"]}); diff --git a/lib/yuilib/3.9.1/build/sortable/sortable-min.js b/lib/yuilib/3.12.0/sortable/sortable-min.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/sortable/sortable-min.js rename to lib/yuilib/3.12.0/sortable/sortable-min.js index 171c143ae39..2d87053b4c3 --- a/lib/yuilib/3.9.1/build/sortable/sortable-min.js +++ b/lib/yuilib/3.12.0/sortable/sortable-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("sortable",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="currentNode",i="opacityNode",s="container",o="id",u="zIndex",a="opacity",f="parentNode",l="nodes",c="node";e.extend(n,e.Base,{delegate:null,drop:null,initializer:function(){var t="sortable-"+e.guid(),r={container:this.get(s),nodes:this.get(l),target:!0,invalid:this.get("invalid"),dragConfig:{groups:[t]}},i;this.get("handles")&&(r.handles=this.get("handles")),i=new e.DD.Delegate(r),this.set(o,t),i.dd.plug(e.Plugin.DDProxy,{moveOnEnd:!1,cloneNode:!0}),this.drop=new e.DD.Drop({node:this.get(s),bubbleTarget:i,groups:i.dd.get("groups")}),this.drop.on("drop:enter",e.bind(this._onDropEnter,this)),i.on({"drag:start":e.bind(this._onDragStart,this),"drag:end":e.bind(this._onDragEnd,this),"drag:over":e.bind(this._onDragOver,this),"drag:drag":e.bind(this._onDrag,this)}),this.delegate=i,n.reg(this,t)},_up:null,_y:null,_onDrag:function(e){e.pageYthis._y&&(this._up=!1),this._y=e.pageY},_onDropEnter:function(e){var t=e.drop.get(c),n=e.drag.get(c);!t.test(this.get(l))&&!n.get(f).compareTo(t)&&t.append(n)},_onDragOver:function(t){if(!t.drop.get(c).test(this.get(l)))return;if(t.drag.get(c)===t.drop.get(c))return;if(t.drag.get(c).contains(t.drop.get(c)))return;var n=!1,r,i,u,a,h,p=this.get("moveType").toLowerCase();t.drag.get(c).get(f).contains(t.drop.get(c))&&(n=!0),n&&p==="move"&&(p="insert");switch(p){case"insert":r=this._up?"before":"after",h=t.drop.get(c),e.Sortable._test(h,this.get(s))?h.append(t.drag.get(c)):h.insert(t.drag.get(c),r);break;case"swap":e.DD.DDM.swapNode(t.drag,t.drop);break;case"move":case"copy":a=e.Sortable.getSortable(t.drop.get(c).get(f));if(!a)return;e.DD.DDM.getDrop(t.drag.get(c)).addToGroup(a.get(o)),n?e.DD.DDM.swapNode(t.drag,t.drop):(this.get("moveType")==="copy"&&(i=t.drag.get(c),u=i.cloneNode(!0),u.set(o,""),t.drag.set(c,u),a.delegate.createDrop(u,[a.get(o)]),i.setStyles({top:"",left:""})),t.drop.get(c).insert(t.drag.get(c),"before"))}this.fire(p,{same:n,drag:t.drag,drop:t.drop}),this.fire("moved",{same:n,drag:t.drag,drop:t.drop})},_onDragStart:function(){var e=this.delegate,t=e.get("lastNode");t&&t.getDOMNode()&&t.setStyle(u,""),e.get(this.get(i)).setStyle(a,this.get(a)),e.get(r).setStyle(u,"999")},_onDragEnd:function(){this.delegate.get(this.get(i)).setStyle(a,1),this.delegate.get(r).setStyles({top:"",left:""}),this.sync()},plug:function(e,t){return e&&e.NAME.substring(0,4).toLowerCase()==="sort"?this.constructor.superclass.plug.call(this,e,t):this.delegate.dd.plug(e,t),this},sync:function(){return this.delegate.syncTargets(),this},destructor:function(){this.drop.destroy(),this.delegate.destroy(),n.unreg(this,this.get(o))},join:function(t,n){if(t instanceof e.Sortable){n||(n="full"),n=n.toLowerCase();var r="_join_"+n;return this[r]&&this[r](t),this}return e.error("Sortable: join needs a Sortable Instance"),this},_join_none:function(e){this.delegate.dd.removeFromGroup(e.get(o)),e.delegate.dd.removeFromGroup(this.get(o))},_join_full:function(e){this.delegate.dd.addToGroup(e.get(o)),e.delegate.dd.addToGroup(this.get(o))},_join_outer:function(e){this.delegate.dd.addToGroup(e.get(o))},_join_inner:function(e){e.delegate.dd.addToGroup(this.get(o))},getOrdering:function(t){var n=[];return e.Lang.isFunction(t)||(t=function(e){return e}),e.one(this.get(s)).all(this.get(l)).each(function(e){n.push(t(e))}),n}},{NAME:"sortable",ATTRS:{handles:{value:!1},container:{value:"body"},nodes:{value:".dd-draggable"},opacity:{value:".75"},opacityNode:{value:"currentNode"},id:{value:null},moveType:{value:"insert"},invalid:{value:""}},_sortables:{},_test:function(t,n){var r;return n instanceof e.Node?r=n===t:r=t.test(n),r},getSortable:function(t){var n=null,r=null;return t=e.one(t),r=t.get(o),r&&e.Sortable._sortables[r]?e.Sortable._sortables[r]:(e.Object.each(e.Sortable._sortables,function(r){e.Sortable._test(t,r.get(s))&&(n=r)}),n)},reg:function(t,n){n||(n=t.get(o)),e.Sortable._sortables[n]=t},unreg:function(t,r){r||(r=t.get(o));if(r&&e.Sortable._sortables[r]){delete e.Sortable._sortables[r];return}e.Object.each(e.Sortable._sortables,function(e,r){e===t&&delete n._sortables[r]})}}),e.Sortable=n},"3.9.1",{requires:["dd-delegate","dd-drop-plugin","dd-proxy"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("sortable",function(e,t){var n=function(){n.superclass.constructor.apply(this,arguments)},r="currentNode",i="opacityNode",s="container",o="id",u="zIndex",a="opacity",f="parentNode",l="nodes",c="node";e.extend(n,e.Base,{delegate:null,drop:null,initializer:function(){var t="sortable-"+e.guid(),r={container:this.get(s),nodes:this.get(l),target:!0,invalid:this.get("invalid"),dragConfig:{groups:[t]}},i;this.get("handles")&&(r.handles=this.get("handles")),i=new e.DD.Delegate(r),this.set(o,t),i.dd.plug(e.Plugin.DDProxy,{moveOnEnd:!1,cloneNode:!0}),this.drop=new e.DD.Drop({node:this.get(s),bubbleTarget:i,groups:i.dd.get("groups")}),this.drop.on("drop:enter",e.bind(this._onDropEnter,this)),i.on({"drag:start":e.bind(this._onDragStart,this),"drag:end":e.bind(this._onDragEnd,this),"drag:over":e.bind(this._onDragOver,this),"drag:drag":e.bind(this._onDrag,this)}),this.delegate=i,n.reg(this,t)},_up:null,_y:null,_onDrag:function(e){e.pageYthis._y&&(this._up=!1),this._y=e.pageY},_onDropEnter:function(e){var t=e.drop.get(c),n=e.drag.get(c);!t.test(this.get(l))&&!n.get(f).compareTo(t)&&t.append(n)},_onDragOver:function(t){if(!t.drop.get(c).test(this.get(l)))return;if(t.drag.get(c)===t.drop.get(c))return;if(t.drag.get(c).contains(t.drop.get(c)))return;var n=!1,r,i,u,a,h,p=this.get("moveType").toLowerCase();t.drag.get(c).get(f).contains(t.drop.get(c))&&(n=!0),n&&p==="move"&&(p="insert");switch(p){case"insert":r=this._up?"before":"after",h=t.drop.get(c),e.Sortable._test(h,this.get(s))?h.append(t.drag.get(c)):h.insert(t.drag.get(c),r);break;case"swap":e.DD.DDM.swapNode(t.drag,t.drop);break;case"move":case"copy":a=e.Sortable.getSortable(t.drop.get(c).get(f));if(!a)return;e.DD.DDM.getDrop(t.drag.get(c)).addToGroup(a.get(o)),n?e.DD.DDM.swapNode(t.drag,t.drop):(this.get("moveType")==="copy"&&(i=t.drag.get(c),u=i.cloneNode(!0),u.set(o,""),t.drag.set(c,u),a.delegate.createDrop(u,[a.get(o)]),i.setStyles({top:"",left:""})),t.drop.get(c).insert(t.drag.get(c),"before"))}this.fire(p,{same:n,drag:t.drag,drop:t.drop}),this.fire("moved",{same:n,drag:t.drag,drop:t.drop})},_onDragStart:function(){var e=this.delegate,t=e.get("lastNode");t&&t.getDOMNode()&&t.setStyle(u,""),e.get(this.get(i)).setStyle(a,this.get(a)),e.get(r).setStyle(u,"999")},_onDragEnd:function(){this.delegate.get(this.get(i)).setStyle(a,1),this.delegate.get(r).setStyles({top:"",left:""}),this.sync()},plug:function(e,t){return e&&e.NAME.substring(0,4).toLowerCase()==="sort"?this.constructor.superclass.plug.call(this,e,t):this.delegate.dd.plug(e,t),this},sync:function(){return this.delegate.syncTargets(),this},destructor:function(){this.drop.destroy(),this.delegate.destroy(),n.unreg(this,this.get(o))},join:function(t,n){if(t instanceof e.Sortable){n||(n="full"),n=n.toLowerCase();var r="_join_"+n;return this[r]&&this[r](t),this}return e.error("Sortable: join needs a Sortable Instance"),this},_join_none:function(e){this.delegate.dd.removeFromGroup(e.get(o)),e.delegate.dd.removeFromGroup(this.get(o))},_join_full:function(e){this.delegate.dd.addToGroup(e.get(o)),e.delegate.dd.addToGroup(this.get(o))},_join_outer:function(e){this.delegate.dd.addToGroup(e.get(o))},_join_inner:function(e){e.delegate.dd.addToGroup(this.get(o))},getOrdering:function(t){var n=[];return e.Lang.isFunction(t)||(t=function(e){return e}),e.one(this.get(s)).all(this.get(l)).each(function(e){n.push(t(e))}),n}},{NAME:"sortable",ATTRS:{handles:{value:!1},container:{value:"body"},nodes:{value:".dd-draggable"},opacity:{value:".75"},opacityNode:{value:"currentNode"},id:{value:null},moveType:{value:"insert"},invalid:{value:""}},_sortables:{},_test:function(t,n){var r;return n instanceof e.Node?r=n===t:r=t.test(n),r},getSortable:function(t){var n=null,r=null;return t=e.one(t),r=t.get(o),r&&e.Sortable._sortables[r]?e.Sortable._sortables[r]:(e.Object.each(e.Sortable._sortables,function(r){e.Sortable._test(t,r.get(s))&&(n=r)}),n)},reg:function(t,n){n||(n=t.get(o)),e.Sortable._sortables[n]=t},unreg:function(t,r){r||(r=t.get(o));if(r&&e.Sortable._sortables[r]){delete e.Sortable._sortables[r];return}e.Object.each(e.Sortable._sortables,function(e,r){e===t&&delete n._sortables[r]})}}),e.Sortable=n},"3.12.0",{requires:["dd-delegate","dd-drop-plugin","dd-proxy"]}); diff --git a/lib/yuilib/3.9.1/build/sortable/sortable.js b/lib/yuilib/3.12.0/sortable/sortable.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/sortable/sortable.js rename to lib/yuilib/3.12.0/sortable/sortable.js index 1cd79b7d69a..bc8a0999e80 --- a/lib/yuilib/3.9.1/build/sortable/sortable.js +++ b/lib/yuilib/3.12.0/sortable/sortable.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('sortable', function (Y, NAME) { @@ -529,4 +535,4 @@ YUI.add('sortable', function (Y, NAME) { -}, '3.9.1', {"requires": ["dd-delegate", "dd-drop-plugin", "dd-proxy"]}); +}, '3.12.0', {"requires": ["dd-delegate", "dd-drop-plugin", "dd-proxy"]}); diff --git a/lib/yuilib/3.9.1/build/stylesheet/stylesheet-debug.js b/lib/yuilib/3.12.0/stylesheet/stylesheet-debug.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/stylesheet/stylesheet-debug.js rename to lib/yuilib/3.12.0/stylesheet/stylesheet-debug.js index 3fe38e7f036..0bc704f933c --- a/lib/yuilib/3.9.1/build/stylesheet/stylesheet-debug.js +++ b/lib/yuilib/3.12.0/stylesheet/stylesheet-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('stylesheet', function (Y, NAME) { /** @@ -640,4 +646,4 @@ NOTES -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/stylesheet/stylesheet-min.js b/lib/yuilib/3.12.0/stylesheet/stylesheet-min.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/stylesheet/stylesheet-min.js rename to lib/yuilib/3.12.0/stylesheet/stylesheet-min.js index 8052307c8a7..b2ec0d9742a --- a/lib/yuilib/3.9.1/build/stylesheet/stylesheet-min.js +++ b/lib/yuilib/3.12.0/stylesheet/stylesheet-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("stylesheet",function(e,t){function v(t,r){var o,a,f,l={},h,p,m,g,y,b;if(!e.instanceOf(this,v))return new v(t,r);if(t){if(e.Node&&t instanceof e.Node)a=t._node;else if(t.nodeName)a=t;else if(s(t)){if(t&&u[t])return u[t];a=n.getElementById(t.replace(/^#/,d))}if(a&&u[e.stamp(a)])return u[e.stamp(a)]}if(!a||!/^(?:style|link)$/i.test(a.nodeName))a=n.createElement("style"),a.type="text/css";s(t)&&(t.indexOf("{")!=-1?a.styleSheet?a.styleSheet.cssText=t:a.appendChild(n.createTextNode(t)):r||(r=t));if(!a.parentNode||a.parentNode.nodeName.toLowerCase()!=="head")o=(a.ownerDocument||n).getElementsByTagName("head")[0],o.appendChild(a);f=a.sheet||a.styleSheet,h=f&&"cssRules"in f?"cssRules":"rules",m="deleteRule"in f?function(e){f.deleteRule(e)}:function(e){f.removeRule(e)},p="insertRule"in f?function(e,t,n){f.insertRule(e+" {"+t+"}",n)}:function(e,t,n){f.addRule(e,t,n)};for(g=f[h].length-1;g>=0;--g)y=f[h][g],b=y.selectorText,l[b]?(l[b].style.cssText+=";"+y.style.cssText,m(g)):l[b]=y;v.register(e.stamp(a),this),r&&v.register(r,this),e.mix(this,{getId:function(){return e.stamp(a)},enable:function(){return f.disabled=!1,this},disable:function(){return f.disabled=!0,this},isEnabled:function(){return!f.disabled},set:function(e,t){var n=l[e],r=e.split(/\s*,\s*/),i,s;if(r.length>1){for(i=r.length-1;i>=0;--i)this.set(r[i],t);return this}return v.isValidSelector(e)?(n?n.style.cssText=v.toCssText(t,n.style.cssText):(s=f[h].length,t=v.toCssText(t),t&&(p(e,t,s),l[e]=f[h][s])),this):this},unset:function(t,n){var r=l[t],s=t.split(/\s*,\s*/),o=!n,u,a;if(s.length>1){for(a=s.length-1;a>=0;--a)this.unset(s[a],n);return this}if(r){if(!o){n=e.Array(n),i.cssText=r.style.cssText;for(a=n.length-1;a>=0;--a)c(i,n[a]);i.cssText?r.style.cssText=i.cssText:o=!0}if(o){u=f[h];for(a=u.length-1;a>=0;--a)if(u[a]===r){delete l[t],m(a);break}}}return this},getCssText:function(e){var t,n,r;if(s(e))return t=l[e.split(/\s*,\s*/)[0]],t?t.style.cssText:null;n=[];for(r in l)l.hasOwnProperty(r)&&(t=l[r],n.push(t.selectorText+" {"+t.style.cssText+"}"));return n.join("\n")}})}var n=e.config.doc,r=n.createElement("p"),i=r.style,s=e.Lang.isString,o={},u={},a="cssFloat"in i?"cssFloat":"styleFloat",f,l,c,h="opacity",p="float",d="";l=h in i?function(e){e.opacity=d}:function(e){e.filter=d},i.border="1px solid red",i.border=d,c=i.borderLeft?function(e,t){var n;t!==a&&t.toLowerCase().indexOf(p)!=-1&&(t=a);if(s(e[t]))switch(t){case h:case"filter":l(e);break;case"font":e.font=e.fontStyle=e.fontVariant=e.fontWeight=e.fontSize=e.lineHeight=e.fontFamily=d;break;default:for(n in e)n.indexOf(t)===0&&(e[n]=d)}}:function(e,t){t!==a&&t.toLowerCase().indexOf(p)!=-1&&(t=a),s(e[t])&&(t===h?l(e):e[t]=d)},f=function(t,s){var o=t.styleFloat||t.cssFloat||t[p],u=e.Lang.trim,f;try{i.cssText=s||d}catch(l){r=n.createElement("p"),i=r.style,i.cssText=s||d}o&&!t[a]&&(t=e.merge(t),delete t.styleFloat,delete t.cssFloat,delete t[p],t[a]=o);for(f in t)if(t.hasOwnProperty(f))try{i[f]=u(t[f])}catch(c){}return i.cssText},e.mix(v,{toCssText:h in i?f:function(t,n){return h in t&&(t=e.merge(t,{filter:"alpha(opacity="+t.opacity*100+")"}),delete t.opacity),f(t,n)},register:function(e,t){return!!(e&&t instanceof v&&!u[e]&&(u[e]=t))},isValidSelector:function(e){var t=!1;return e&&s(e)&&(o.hasOwnProperty(e)||(o[e]=!/\S/.test(e.replace(/\s+|\s*[+~>]\s*/g," ").replace(/([^ ])\[.*?\]/g,"$1").replace(/([^ ])::?[a-z][a-z\-]+[a-z](?:\(.*?\))?/ig,"$1").replace(/(?:^| )[a-z0-6]+/ig," ").replace(/\\./g,d).replace(/[.#]\w[\w\-]*/g,d))),t=o[e]),t}},!0),e.StyleSheet=v},"3.9.1",{requires:["yui-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("stylesheet",function(e,t){function v(t,r){var o,a,f,l={},h,p,m,g,y,b;if(!e.instanceOf(this,v))return new v(t,r);if(t){if(e.Node&&t instanceof e.Node)a=t._node;else if(t.nodeName)a=t;else if(s(t)){if(t&&u[t])return u[t];a=n.getElementById(t.replace(/^#/,d))}if(a&&u[e.stamp(a)])return u[e.stamp(a)]}if(!a||!/^(?:style|link)$/i.test(a.nodeName))a=n.createElement("style"),a.type="text/css";s(t)&&(t.indexOf("{")!=-1?a.styleSheet?a.styleSheet.cssText=t:a.appendChild(n.createTextNode(t)):r||(r=t));if(!a.parentNode||a.parentNode.nodeName.toLowerCase()!=="head")o=(a.ownerDocument||n).getElementsByTagName("head")[0],o.appendChild(a);f=a.sheet||a.styleSheet,h=f&&"cssRules"in f?"cssRules":"rules",m="deleteRule"in f?function(e){f.deleteRule(e)}:function(e){f.removeRule(e)},p="insertRule"in f?function(e,t,n){f.insertRule(e+" {"+t+"}",n)}:function(e,t,n){f.addRule(e,t,n)};for(g=f[h].length-1;g>=0;--g)y=f[h][g],b=y.selectorText,l[b]?(l[b].style.cssText+=";"+y.style.cssText,m(g)):l[b]=y;v.register(e.stamp(a),this),r&&v.register(r,this),e.mix(this,{getId:function(){return e.stamp(a)},enable:function(){return f.disabled=!1,this},disable:function(){return f.disabled=!0,this},isEnabled:function(){return!f.disabled},set:function(e,t){var n=l[e],r=e.split(/\s*,\s*/),i,s;if(r.length>1){for(i=r.length-1;i>=0;--i)this.set(r[i],t);return this}return v.isValidSelector(e)?(n?n.style.cssText=v.toCssText(t,n.style.cssText):(s=f[h].length,t=v.toCssText(t),t&&(p(e,t,s),l[e]=f[h][s])),this):this},unset:function(t,n){var r=l[t],s=t.split(/\s*,\s*/),o=!n,u,a;if(s.length>1){for(a=s.length-1;a>=0;--a)this.unset(s[a],n);return this}if(r){if(!o){n=e.Array(n),i.cssText=r.style.cssText;for(a=n.length-1;a>=0;--a)c(i,n[a]);i.cssText?r.style.cssText=i.cssText:o=!0}if(o){u=f[h];for(a=u.length-1;a>=0;--a)if(u[a]===r){delete l[t],m(a);break}}}return this},getCssText:function(e){var t,n,r;if(s(e))return t=l[e.split(/\s*,\s*/)[0]],t?t.style.cssText:null;n=[];for(r in l)l.hasOwnProperty(r)&&(t=l[r],n.push(t.selectorText+" {"+t.style.cssText+"}"));return n.join("\n")}})}var n=e.config.doc,r=n.createElement("p"),i=r.style,s=e.Lang.isString,o={},u={},a="cssFloat"in i?"cssFloat":"styleFloat",f,l,c,h="opacity",p="float",d="";l=h in i?function(e){e.opacity=d}:function(e){e.filter=d},i.border="1px solid red",i.border=d,c=i.borderLeft?function(e,t){var n;t!==a&&t.toLowerCase().indexOf(p)!=-1&&(t=a);if(s(e[t]))switch(t){case h:case"filter":l(e);break;case"font":e.font=e.fontStyle=e.fontVariant=e.fontWeight=e.fontSize=e.lineHeight=e.fontFamily=d;break;default:for(n in e)n.indexOf(t)===0&&(e[n]=d)}}:function(e,t){t!==a&&t.toLowerCase().indexOf(p)!=-1&&(t=a),s(e[t])&&(t===h?l(e):e[t]=d)},f=function(t,s){var o=t.styleFloat||t.cssFloat||t[p],u=e.Lang.trim,f;try{i.cssText=s||d}catch(l){r=n.createElement("p"),i=r.style,i.cssText=s||d}o&&!t[a]&&(t=e.merge(t),delete t.styleFloat,delete t.cssFloat,delete t[p],t[a]=o);for(f in t)if(t.hasOwnProperty(f))try{i[f]=u(t[f])}catch(c){}return i.cssText},e.mix(v,{toCssText:h in i?f:function(t,n){return h in t&&(t=e.merge(t,{filter:"alpha(opacity="+t.opacity*100+")"}),delete t.opacity),f(t,n)},register:function(e,t){return!!(e&&t instanceof v&&!u[e]&&(u[e]=t))},isValidSelector:function(e){var t=!1;return e&&s(e)&&(o.hasOwnProperty(e)||(o[e]=!/\S/.test(e.replace(/\s+|\s*[+~>]\s*/g," ").replace(/([^ ])\[.*?\]/g,"$1").replace(/([^ ])::?[a-z][a-z\-]+[a-z](?:\(.*?\))?/ig,"$1").replace(/(?:^| )[a-z0-6]+/ig," ").replace(/\\./g,d).replace(/[.#]\w[\w\-]*/g,d))),t=o[e]),t}},!0),e.StyleSheet=v},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/stylesheet/stylesheet.js b/lib/yuilib/3.12.0/stylesheet/stylesheet.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/stylesheet/stylesheet.js rename to lib/yuilib/3.12.0/stylesheet/stylesheet.js index 1bdd84dbd89..3478dea7607 --- a/lib/yuilib/3.9.1/build/stylesheet/stylesheet.js +++ b/lib/yuilib/3.12.0/stylesheet/stylesheet.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('stylesheet', function (Y, NAME) { /** @@ -636,4 +642,4 @@ NOTES -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/substitute/substitute-debug.js b/lib/yuilib/3.12.0/substitute/substitute-debug.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/substitute/substitute-debug.js rename to lib/yuilib/3.12.0/substitute/substitute-debug.js index c2d6e25a655..83ff9bbfab1 --- a/lib/yuilib/3.9.1/build/substitute/substitute-debug.js +++ b/lib/yuilib/3.12.0/substitute/substitute-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('substitute', function (Y, NAME) { /** @@ -168,4 +174,4 @@ to `Y.dump(...)`, e.g. "{someObject 2}". See the -}, '3.9.1', {"requires": ["yui-base"], "optional": ["dump"]}); +}, '3.12.0', {"requires": ["yui-base"], "optional": ["dump"]}); diff --git a/lib/yuilib/3.9.1/build/substitute/substitute-min.js b/lib/yuilib/3.12.0/substitute/substitute-min.js old mode 100644 new mode 100755 similarity index 76% rename from lib/yuilib/3.9.1/build/substitute/substitute-min.js rename to lib/yuilib/3.12.0/substitute/substitute-min.js index 2a1550b5e95..b4979925466 --- a/lib/yuilib/3.9.1/build/substitute/substitute-min.js +++ b/lib/yuilib/3.12.0/substitute/substitute-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("substitute",function(e,t){var n=e.Lang,r="dump",i=" ",s="{",o="}",u=/(~-(\d+)-~)/g,a=/\{LBRACE\}/g,f=/\{RBRACE\}/g,l=function(t,l,c,h){var p,d,v,m,g,y,b=[],w,E,S=t.length;for(;;){p=t.lastIndexOf(s,S);if(p<0)break;d=t.indexOf(o,p);if(p+1>=d)break;w=t.substring(p+1,d),m=w,y=null,v=m.indexOf(i),v>-1&&(y=m.substring(v+1),m=m.substring(0,v)),g=l[m],c&&(g=c(m,g,y)),n.isObject(g)?e.dump?n.isArray(g)?g=e.dump(g,parseInt(y,10)):(y=y||"",E=y.indexOf(r),E>-1&&(y=y.substring(4)),g.toString===Object.prototype.toString||E>-1?g=e.dump(g,parseInt(y,10)):g=g.toString()):g=g.toString():n.isUndefined(g)&&(g="~-"+b.length+"-~",b.push(w)),t=t.substring(0,p)+g+t.substring(d+1),h||(S=p-1)}return t.replace(u,function(e,t,n){return s+b[parseInt(n,10)]+o}).replace(a,s).replace(f,o)};e.substitute=l,n.substitute=l},"3.9.1",{requires:["yui-base"],optional:["dump"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("substitute",function(e,t){var n=e.Lang,r="dump",i=" ",s="{",o="}",u=/(~-(\d+)-~)/g,a=/\{LBRACE\}/g,f=/\{RBRACE\}/g,l=function(t,l,c,h){var p,d,v,m,g,y,b=[],w,E,S=t.length;for(;;){p=t.lastIndexOf(s,S);if(p<0)break;d=t.indexOf(o,p);if(p+1>=d)break;w=t.substring(p+1,d),m=w,y=null,v=m.indexOf(i),v>-1&&(y=m.substring(v+1),m=m.substring(0,v)),g=l[m],c&&(g=c(m,g,y)),n.isObject(g)?e.dump?n.isArray(g)?g=e.dump(g,parseInt(y,10)):(y=y||"",E=y.indexOf(r),E>-1&&(y=y.substring(4)),g.toString===Object.prototype.toString||E>-1?g=e.dump(g,parseInt(y,10)):g=g.toString()):g=g.toString():n.isUndefined(g)&&(g="~-"+b.length+"-~",b.push(w)),t=t.substring(0,p)+g+t.substring(d+1),h||(S=p-1)}return t.replace(u,function(e,t,n){return s+b[parseInt(n,10)]+o}).replace(a,s).replace(f,o)};e.substitute=l,n.substitute=l},"3.12.0",{requires:["yui-base"],optional:["dump"]}); diff --git a/lib/yuilib/3.9.1/build/substitute/substitute.js b/lib/yuilib/3.12.0/substitute/substitute.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/substitute/substitute.js rename to lib/yuilib/3.12.0/substitute/substitute.js index c2d6e25a655..83ff9bbfab1 --- a/lib/yuilib/3.9.1/build/substitute/substitute.js +++ b/lib/yuilib/3.12.0/substitute/substitute.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('substitute', function (Y, NAME) { /** @@ -168,4 +174,4 @@ to `Y.dump(...)`, e.g. "{someObject 2}". See the -}, '3.9.1', {"requires": ["yui-base"], "optional": ["dump"]}); +}, '3.12.0', {"requires": ["yui-base"], "optional": ["dump"]}); diff --git a/lib/yuilib/3.9.1/build/swf/swf-debug.js b/lib/yuilib/3.12.0/swf/swf-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/swf/swf-debug.js rename to lib/yuilib/3.12.0/swf/swf-debug.js index 6259a7c1f91..101905ef5c0 --- a/lib/yuilib/3.9.1/build/swf/swf-debug.js +++ b/lib/yuilib/3.12.0/swf/swf-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('swf', function (Y, NAME) { /** @@ -201,4 +207,4 @@ Y.augment(SWF, Y.EventTarget); Y.SWF = SWF; -}, '3.9.1', {"requires": ["event-custom", "node", "swfdetect", "escape"]}); +}, '3.12.0', {"requires": ["event-custom", "node", "swfdetect", "escape"]}); diff --git a/lib/yuilib/3.9.1/build/swf/swf-min.js b/lib/yuilib/3.12.0/swf/swf-min.js old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/swf/swf-min.js rename to lib/yuilib/3.12.0/swf/swf-min.js index f9bd8ff48d3..4891f331fd1 --- a/lib/yuilib/3.9.1/build/swf/swf-min.js +++ b/lib/yuilib/3.12.0/swf/swf-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("swf",function(e,t){function d(t,n,d){this._id=e.guid("yuiswf");var v=this._id,m=o.one(t),d=d||{},g=d.version||l,y=(g+"").split("."),b=r.isFlashVersionAtLeast(parseInt(y[0],10),parseInt(y[1],10),parseInt(y[2],10)),w=r.isFlashVersionAtLeast(8,0,0),E=w&&!b&&d.useExpressInstall,S=E?c:n,x="',s.ie&&(x+='');for(var k in d.fixedAttributes)p.hasOwnProperty(k)&&(x+='');for(var L in d.flashVars){var A=d.flashVars[L];i.isString(A)&&(C+="&"+u.html(L)+"="+u.html(encodeURIComponent(A)))}C&&(x+=''),x+="",m.set("innerHTML",x),this._swf=o.one("#"+v)}else{var O={};O.type="wrongflashversion",this.publish("wrongflashversion",{fireOnce:!0}),this.fire("wrongflashversion",O)}}var n=e.Event,r=e.SWFDetect,i=e.Lang,s=e.UA,o=e.Node,u=e.Escape,a="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000",f="application/x-shockwave-flash",l="10.0.22",c="http://fpdownload.macromedia.com/pub/flashplayer/update/current/swf/autoUpdater.swf?"+Math.random(),h="SWF.eventHandler",p={align:"",allowFullScreen:"",allowNetworking:"",allowScriptAccess:"",base:"",bgcolor:"",loop:"",menu:"",name:"",play:"",quality:"",salign:"",scale:"",tabindex:"",wmode:""};d._instances=d._instances||{},d.eventHandler=function(e,t){d._instances[e]._eventHandler(t)},d.prototype={_eventHandler:function(e){e.type==="swfReady"?(this.publish("swfReady",{fireOnce:!0}),this.fire("swfReady",e)):e.type!=="log"&&this.fire(e.type,e)},callSWF:function(e,t){return t||(t=[]),this._swf._node[e]?this._swf._node[e].apply(this._swf._node,t):null},toString:function(){return"SWF "+this._id}},e.augment(d,e.EventTarget),e.SWF=d},"3.9.1",{requires:["event-custom","node","swfdetect","escape"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("swf",function(e,t){function d(t,n,d){this._id=e.guid("yuiswf");var v=this._id,m=o.one(t),d=d||{},g=d.version||l,y=(g+"").split("."),b=r.isFlashVersionAtLeast(parseInt(y[0],10),parseInt(y[1],10),parseInt(y[2],10)),w=r.isFlashVersionAtLeast(8,0,0),E=w&&!b&&d.useExpressInstall,S=E?c:n,x="',s.ie&&(x+='');for(var k in d.fixedAttributes)p.hasOwnProperty(k)&&(x+='');for(var L in d.flashVars){var A=d.flashVars[L];i.isString(A)&&(C+="&"+u.html(L)+"="+u.html(encodeURIComponent(A)))}C&&(x+=''),x+="",m.set("innerHTML",x),this._swf=o.one("#"+v)}else{var O={};O.type="wrongflashversion",this.publish("wrongflashversion",{fireOnce:!0}),this.fire("wrongflashversion",O)}}var n=e.Event,r=e.SWFDetect,i=e.Lang,s=e.UA,o=e.Node,u=e.Escape,a="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000",f="application/x-shockwave-flash",l="10.0.22",c="http://fpdownload.macromedia.com/pub/flashplayer/update/current/swf/autoUpdater.swf?"+Math.random(),h="SWF.eventHandler",p={align:"",allowFullScreen:"",allowNetworking:"",allowScriptAccess:"",base:"",bgcolor:"",loop:"",menu:"",name:"",play:"",quality:"",salign:"",scale:"",tabindex:"",wmode:""};d._instances=d._instances||{},d.eventHandler=function(e,t){d._instances[e]._eventHandler(t)},d.prototype={_eventHandler:function(e){e.type==="swfReady"?(this.publish("swfReady",{fireOnce:!0}),this.fire("swfReady",e)):e.type!=="log"&&this.fire(e.type,e)},callSWF:function(e,t){return t||(t=[]),this._swf._node[e]?this._swf._node[e].apply(this._swf._node,t):null},toString:function(){return"SWF "+this._id}},e.augment(d,e.EventTarget),e.SWF=d},"3.12.0",{requires:["event-custom","node","swfdetect","escape"]}); diff --git a/lib/yuilib/3.9.1/build/swf/swf.js b/lib/yuilib/3.12.0/swf/swf.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/swf/swf.js rename to lib/yuilib/3.12.0/swf/swf.js index bc56946feda..a46720c3106 --- a/lib/yuilib/3.9.1/build/swf/swf.js +++ b/lib/yuilib/3.12.0/swf/swf.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('swf', function (Y, NAME) { /** @@ -200,4 +206,4 @@ Y.augment(SWF, Y.EventTarget); Y.SWF = SWF; -}, '3.9.1', {"requires": ["event-custom", "node", "swfdetect", "escape"]}); +}, '3.12.0', {"requires": ["event-custom", "node", "swfdetect", "escape"]}); diff --git a/lib/yuilib/3.9.1/build/swfdetect/swfdetect-debug.js b/lib/yuilib/3.12.0/swfdetect/swfdetect-debug.js old mode 100644 new mode 100755 similarity index 94% rename from lib/yuilib/3.9.1/build/swfdetect/swfdetect-debug.js rename to lib/yuilib/3.12.0/swfdetect/swfdetect-debug.js index c6d0b0326b5..41d2ec527b2 --- a/lib/yuilib/3.9.1/build/swfdetect/swfdetect-debug.js +++ b/lib/yuilib/3.12.0/swfdetect/swfdetect-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('swfdetect', function (Y, NAME) { /** @@ -114,4 +120,4 @@ Y.SWFDetect = { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/swfdetect/swfdetect-min.js b/lib/yuilib/3.12.0/swfdetect/swfdetect-min.js old mode 100644 new mode 100755 similarity index 78% rename from lib/yuilib/3.9.1/build/swfdetect/swfdetect-min.js rename to lib/yuilib/3.12.0/swfdetect/swfdetect-min.js index c08de19bc67..c0aa024dfe0 --- a/lib/yuilib/3.9.1/build/swfdetect/swfdetect-min.js +++ b/lib/yuilib/3.12.0/swfdetect/swfdetect-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("swfdetect",function(e,t){function c(e){return parseInt(e,10)}function h(e){i.isNumber(c(e[0]))&&(r.flashMajor=e[0]),i.isNumber(c(e[1]))&&(r.flashMinor=e[1]),i.isNumber(c(e[2]))&&(r.flashRev=e[2])}var n=0,r=e.UA,i=e.Lang,s="ShockwaveFlash",o,u,a,f,l;if(r.gecko||r.webkit||r.opera){if(o=navigator.mimeTypes["application/x-shockwave-flash"])if(u=o.enabledPlugin)a=u.description.replace(/\s[rd]/g,".").replace(/[A-Za-z\s]+/g,"").split("."),h(a)}else if(r.ie){try{f=new ActiveXObject(s+"."+s+".6"),f.AllowScriptAccess="always"}catch(p){f!==null&&(n=6)}if(n===0)try{l=new ActiveXObject(s+"."+s),a=l.GetVariable("$version").replace(/[A-Za-z\s]+/g,"").split(","),h(a)}catch(d){}}e.SWFDetect={getFlashVersion:function(){return String(r.flashMajor)+"."+String(r.flashMinor)+"."+String(r.flashRev)},isFlashVersionAtLeast:function(e,t,n){var i=c(r.flashMajor),s=c(r.flashMinor),o=c(r.flashRev);return e=c(e||0),t=c(t||0),n=c(n||0),e===i?t===s?n<=o:t ul', - tab: '> ul > li', - tabLabel: '> ul > li > a', - tabviewPanel: '> div', - tabPanel: '> div > div', - selectedTab: '> ul > ' + DOT + _classNames.selectedTab, - selectedPanel: '> div ' + DOT + _classNames.selectedPanel - }, - TabviewBase = function() { this.init.apply(this, arguments); }; TabviewBase.NAME = 'tabviewBase'; -TabviewBase._queries = _queries; -TabviewBase._classNames = _classNames; +TabviewBase._classNames = { + tabview: getClassName(TABVIEW), + tabviewPanel: getClassName(TABVIEW, PANEL), + tabviewList: getClassName(TABVIEW, 'list'), + tab: getClassName(TAB), + tabLabel: getClassName(TAB, 'label'), + tabPanel: getClassName(TAB, PANEL), + selectedTab: getClassName(TAB, SELECTED), + selectedPanel: getClassName(TAB, PANEL, SELECTED) +}; +TabviewBase._queries = { + tabview: DOT + TabviewBase._classNames.tabview, + tabviewList: '> ul', + tab: '> ul > li', + tabLabel: '> ul > li > a', + tabviewPanel: '> div', + tabPanel: '> div > div', + selectedTab: '> ul > ' + DOT + TabviewBase._classNames.selectedTab, + selectedPanel: '> div ' + DOT + TabviewBase._classNames.selectedPanel +}; Y.mix(TabviewBase.prototype, { init: function(config) { @@ -48,11 +50,13 @@ Y.mix(TabviewBase.prototype, { }, initClassNames: function(index) { - Y.Object.each(_queries, function(query, name) { + var _classNames = Y.TabviewBase._classNames; + + Y.Object.each(Y.TabviewBase._queries, function(query, name) { // this === tabview._node if (_classNames[name]) { var result = this.all(query); - + if (index !== undefined) { result = result.item(index); } @@ -67,7 +71,9 @@ Y.mix(TabviewBase.prototype, { }, _select: function(index) { - var node = this._node, + var _classNames = Y.TabviewBase._classNames, + _queries = Y.TabviewBase._queries, + node = this._node, oldItem = node.one(_queries.selectedTab), oldContent = node.one(_queries.selectedPanel), newItem = node.all(_queries.tab).item(index), @@ -91,7 +97,8 @@ Y.mix(TabviewBase.prototype, { }, initState: function() { - var node = this._node, + var _queries = Y.TabviewBase._queries, + node = this._node, activeNode = node.one(_queries.selectedTab), activeIndex = activeNode ? node.all(_queries.tab).indexOf(activeNode) : 0; @@ -101,7 +108,7 @@ Y.mix(TabviewBase.prototype, { // collapse extra space between list-items _scrubTextNodes: function() { - this._node.one(_queries.tabviewList).get('childNodes').each(function(node) { + this._node.one(Y.TabviewBase._queries.tabviewList).get('childNodes').each(function(node) { if (node.get('nodeType') === 3) { // text node node.remove(); } @@ -123,14 +130,14 @@ Y.mix(TabviewBase.prototype, { // this._node.delegate('tabview|' + this.tabEventName), this._node.delegate(this.tabEventName, this.onTabEvent, - _queries.tab, + Y.TabviewBase._queries.tab, this ); }, onTabEvent: function(e) { e.preventDefault(); - this._select(this._node.all(_queries.tab).indexOf(e.currentTarget)); + this._select(this._node.all(Y.TabviewBase._queries.tab).indexOf(e.currentTarget)); }, destroy: function() { @@ -141,4 +148,4 @@ Y.mix(TabviewBase.prototype, { Y.TabviewBase = TabviewBase; -}, '3.9.1', {"requires": ["node-event-delegate", "classnamemanager", "skin-sam-tabview"]}); +}, '3.12.0', {"requires": ["node-event-delegate", "classnamemanager"]}); diff --git a/lib/yuilib/3.12.0/tabview-base/tabview-base-min.js b/lib/yuilib/3.12.0/tabview-base/tabview-base-min.js new file mode 100755 index 00000000000..9d5d4e5fd2a --- /dev/null +++ b/lib/yuilib/3.12.0/tabview-base/tabview-base-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("tabview-base",function(e,t){var n=e.ClassNameManager.getClassName,r="tabview",i="tab",s="panel",o="selected",u={},a=".",f=function(){this.init.apply(this,arguments)};f.NAME="tabviewBase",f._classNames={tabview:n(r),tabviewPanel:n(r,s),tabviewList:n(r,"list"),tab:n(i),tabLabel:n(i,"label"),tabPanel:n(i,s),selectedTab:n(i,o),selectedPanel:n(i,s,o)},f._queries={tabview:a+f._classNames.tabview,tabviewList:"> ul",tab:"> ul > li",tabLabel:"> ul > li > a",tabviewPanel:"> div",tabPanel:"> div > div",selectedTab:"> ul > "+a+f._classNames.selectedTab,selectedPanel:"> div "+a+f._classNames.selectedPanel},e.mix(f.prototype,{init:function(t){t=t||u,this._node=t.host||e.one(t.node),this.refresh()},initClassNames:function(t){var n=e.TabviewBase._classNames;e.Object.each(e.TabviewBase._queries,function(e,r){if(n[r]){var i=this.all(e);t!==undefined&&(i=i.item(t)),i&&i.addClass(n[r])}},this._node),this._node.addClass(n.tabview)},_select:function(t){var n=e.TabviewBase._classNames,r=e.TabviewBase._queries,i=this._node,s=i.one(r.selectedTab),o=i.one(r.selectedPanel),u=i.all(r.tab).item(t),a=i.all(r.tabPanel).item(t);s&&s.removeClass(n.selectedTab),o&&o.removeClass(n.selectedPanel),u&&u.addClass(n.selectedTab),a&&a.addClass(n.selectedPanel)},initState:function(){var t=e.TabviewBase._queries,n=this._node,r=n.one(t.selectedTab),i=r?n.all(t.tab).indexOf(r):0;this._select(i)},_scrubTextNodes:function(){this._node.one(e.TabviewBase._queries.tabviewList).get("childNodes").each(function(e){e.get("nodeType")===3&&e.remove()})},refresh:function(){this._scrubTextNodes(),this.initClassNames(),this.initState(),this.initEvents()},tabEventName:"click",initEvents:function(){this._node.delegate(this.tabEventName,this.onTabEvent,e.TabviewBase._queries.tab,this)},onTabEvent:function(t){t.preventDefault(),this._select(this._node.all(e.TabviewBase._queries.tab).indexOf(t.currentTarget))},destroy:function(){this._node.detach(this.tabEventName)}}),e.TabviewBase=f},"3.12.0",{requires:["node-event-delegate","classnamemanager"]}); diff --git a/lib/yuilib/3.9.1/build/tabview-base/tabview-base.js b/lib/yuilib/3.12.0/tabview-base/tabview-base.js old mode 100644 new mode 100755 similarity index 64% rename from lib/yuilib/3.9.1/build/tabview-base/tabview-base.js rename to lib/yuilib/3.12.0/tabview-base/tabview-base.js index bc0bba49b00..767e5c45d48 --- a/lib/yuilib/3.9.1/build/tabview-base/tabview-base.js +++ b/lib/yuilib/3.12.0/tabview-base/tabview-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('tabview-base', function (Y, NAME) { var getClassName = Y.ClassNameManager.getClassName, @@ -9,35 +15,31 @@ var getClassName = Y.ClassNameManager.getClassName, EMPTY_OBJ = {}, DOT = '.', - _classNames = { - tabview: getClassName(TABVIEW), - tabviewPanel: getClassName(TABVIEW, PANEL), - tabviewList: getClassName(TABVIEW, 'list'), - tab: getClassName(TAB), - tabLabel: getClassName(TAB, 'label'), - tabPanel: getClassName(TAB, PANEL), - selectedTab: getClassName(TAB, SELECTED), - selectedPanel: getClassName(TAB, PANEL, SELECTED) - }, - - _queries = { - tabview: DOT + _classNames.tabview, - tabviewList: '> ul', - tab: '> ul > li', - tabLabel: '> ul > li > a', - tabviewPanel: '> div', - tabPanel: '> div > div', - selectedTab: '> ul > ' + DOT + _classNames.selectedTab, - selectedPanel: '> div ' + DOT + _classNames.selectedPanel - }, - TabviewBase = function() { this.init.apply(this, arguments); }; TabviewBase.NAME = 'tabviewBase'; -TabviewBase._queries = _queries; -TabviewBase._classNames = _classNames; +TabviewBase._classNames = { + tabview: getClassName(TABVIEW), + tabviewPanel: getClassName(TABVIEW, PANEL), + tabviewList: getClassName(TABVIEW, 'list'), + tab: getClassName(TAB), + tabLabel: getClassName(TAB, 'label'), + tabPanel: getClassName(TAB, PANEL), + selectedTab: getClassName(TAB, SELECTED), + selectedPanel: getClassName(TAB, PANEL, SELECTED) +}; +TabviewBase._queries = { + tabview: DOT + TabviewBase._classNames.tabview, + tabviewList: '> ul', + tab: '> ul > li', + tabLabel: '> ul > li > a', + tabviewPanel: '> div', + tabPanel: '> div > div', + selectedTab: '> ul > ' + DOT + TabviewBase._classNames.selectedTab, + selectedPanel: '> div ' + DOT + TabviewBase._classNames.selectedPanel +}; Y.mix(TabviewBase.prototype, { init: function(config) { @@ -48,11 +50,13 @@ Y.mix(TabviewBase.prototype, { }, initClassNames: function(index) { - Y.Object.each(_queries, function(query, name) { + var _classNames = Y.TabviewBase._classNames; + + Y.Object.each(Y.TabviewBase._queries, function(query, name) { // this === tabview._node if (_classNames[name]) { var result = this.all(query); - + if (index !== undefined) { result = result.item(index); } @@ -67,7 +71,9 @@ Y.mix(TabviewBase.prototype, { }, _select: function(index) { - var node = this._node, + var _classNames = Y.TabviewBase._classNames, + _queries = Y.TabviewBase._queries, + node = this._node, oldItem = node.one(_queries.selectedTab), oldContent = node.one(_queries.selectedPanel), newItem = node.all(_queries.tab).item(index), @@ -91,7 +97,8 @@ Y.mix(TabviewBase.prototype, { }, initState: function() { - var node = this._node, + var _queries = Y.TabviewBase._queries, + node = this._node, activeNode = node.one(_queries.selectedTab), activeIndex = activeNode ? node.all(_queries.tab).indexOf(activeNode) : 0; @@ -101,7 +108,7 @@ Y.mix(TabviewBase.prototype, { // collapse extra space between list-items _scrubTextNodes: function() { - this._node.one(_queries.tabviewList).get('childNodes').each(function(node) { + this._node.one(Y.TabviewBase._queries.tabviewList).get('childNodes').each(function(node) { if (node.get('nodeType') === 3) { // text node node.remove(); } @@ -123,14 +130,14 @@ Y.mix(TabviewBase.prototype, { // this._node.delegate('tabview|' + this.tabEventName), this._node.delegate(this.tabEventName, this.onTabEvent, - _queries.tab, + Y.TabviewBase._queries.tab, this ); }, onTabEvent: function(e) { e.preventDefault(); - this._select(this._node.all(_queries.tab).indexOf(e.currentTarget)); + this._select(this._node.all(Y.TabviewBase._queries.tab).indexOf(e.currentTarget)); }, destroy: function() { @@ -141,4 +148,4 @@ Y.mix(TabviewBase.prototype, { Y.TabviewBase = TabviewBase; -}, '3.9.1', {"requires": ["node-event-delegate", "classnamemanager", "skin-sam-tabview"]}); +}, '3.12.0', {"requires": ["node-event-delegate", "classnamemanager"]}); diff --git a/lib/yuilib/3.9.1/build/tabview-plugin/tabview-plugin-debug.js b/lib/yuilib/3.12.0/tabview-plugin/tabview-plugin-debug.js old mode 100644 new mode 100755 similarity index 61% rename from lib/yuilib/3.9.1/build/tabview-plugin/tabview-plugin-debug.js rename to lib/yuilib/3.12.0/tabview-plugin/tabview-plugin-debug.js index 5d58531230c..0c1ec17aee9 --- a/lib/yuilib/3.9.1/build/tabview-plugin/tabview-plugin-debug.js +++ b/lib/yuilib/3.12.0/tabview-plugin/tabview-plugin-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('tabview-plugin', function (Y, NAME) { function TabviewPlugin() { @@ -14,4 +20,4 @@ Y.namespace('Plugin'); Y.Plugin.Tabview = TabviewPlugin; -}, '3.9.1', {"requires": ["tabview-base"]}); +}, '3.12.0', {"requires": ["tabview-base"]}); diff --git a/lib/yuilib/3.12.0/tabview-plugin/tabview-plugin-min.js b/lib/yuilib/3.12.0/tabview-plugin/tabview-plugin-min.js new file mode 100755 index 00000000000..8169a4df970 --- /dev/null +++ b/lib/yuilib/3.12.0/tabview-plugin/tabview-plugin-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("tabview-plugin",function(e,t){function n(){n.superclass.constructor.apply(this,arguments)}n.NAME="tabviewPlugin",n.NS="tabs",e.extend(n,e.TabviewBase),e.namespace("Plugin"),e.Plugin.Tabview=n},"3.12.0",{requires:["tabview-base"]}); diff --git a/lib/yuilib/3.9.1/build/tabview-plugin/tabview-plugin.js b/lib/yuilib/3.12.0/tabview-plugin/tabview-plugin.js old mode 100644 new mode 100755 similarity index 61% rename from lib/yuilib/3.9.1/build/tabview-plugin/tabview-plugin.js rename to lib/yuilib/3.12.0/tabview-plugin/tabview-plugin.js index 5d58531230c..0c1ec17aee9 --- a/lib/yuilib/3.9.1/build/tabview-plugin/tabview-plugin.js +++ b/lib/yuilib/3.12.0/tabview-plugin/tabview-plugin.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('tabview-plugin', function (Y, NAME) { function TabviewPlugin() { @@ -14,4 +20,4 @@ Y.namespace('Plugin'); Y.Plugin.Tabview = TabviewPlugin; -}, '3.9.1', {"requires": ["tabview-base"]}); +}, '3.12.0', {"requires": ["tabview-base"]}); diff --git a/lib/yuilib/3.9.1/build/tabview/assets/skins/night/tabview-skin.css b/lib/yuilib/3.12.0/tabview/assets/skins/night/tabview-skin.css old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/tabview/assets/skins/night/tabview-skin.css rename to lib/yuilib/3.12.0/tabview/assets/skins/night/tabview-skin.css index f2c71b8d7f4..eb44bae5825 --- a/lib/yuilib/3.9.1/build/tabview/assets/skins/night/tabview-skin.css +++ b/lib/yuilib/3.12.0/tabview/assets/skins/night/tabview-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-skin-night .yui3-tabview-panel{ background-color:#333333; color:#808080; diff --git a/lib/yuilib/3.12.0/tabview/assets/skins/night/tabview.css b/lib/yuilib/3.12.0/tabview/assets/skins/night/tabview.css new file mode 100755 index 00000000000..8a8d4a4f972 --- /dev/null +++ b/lib/yuilib/3.12.0/tabview/assets/skins/night/tabview.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-tab-panel{display:none}.yui3-tab-panel-selected{display:block}.yui3-tabview-list,.yui3-tab{margin:0;padding:0;list-style:none}.yui3-tabview{position:relative}.yui3-tabview,.yui3-tabview-list,.yui3-tabview-panel,.yui3-tab,.yui3-tab-panel{zoom:1}.yui3-tab{display:inline-block;*display:inline;vertical-align:bottom;cursor:pointer}.yui3-tab-label{display:block;display:inline-block;padding:6px 10px;position:relative;text-decoration:none;vertical-align:bottom}.yui3-skin-night .yui3-tabview-panel{background-color:#333;color:#808080;padding:1px}.yui3-skin-night .yui3-tab-panel p{margin:10px}.yui3-skin-night .yui3-tabview-list{background-color:#0f0f0f;border-top:1px solid #000;text-align:center;height:46px;background:-moz-linear-gradient(0% 100% 90deg,#0f0f0f 0,#1e1e1e 96%,#292929 100%);background:-webkit-gradient(linear,left bottom,left top,from(#0f0f0f),color-stop(0.96,#1e1e1e),to(#292929))}.yui3-skin-night .yui3-tabview-list li{margin-top:8px}.yui3-skin-night .yui3-tabview-list li a{border:solid 1px #0c0c0c;border-right-style:none;-moz-box-shadow:0 1px #222;-webkit-box-shadow:0 1px #222;box-shadow:0 1px #222;text-shadow:0 -1px 0 rgba(0,0,0,0.7);font-size:85%;text-align:center;color:#fff;padding:6px 28px;background-color:#555658;background:-moz-linear-gradient(0% 100% 90deg,#343536 0,#555658 96%,#3e3f41 100%);background:-webkit-gradient(linear,left bottom,left top,from(#343536),color-stop(0.96,#555658),to(#3e3f41))}.yui3-skin-night .yui3-tabview-list li.yui3-tab-selected a{background-color:#2b2d2d;background:-moz-linear-gradient(0% 100% 90deg,#242526 0,#3b3c3d 96%,#2c2d2f 100%);background:-webkit-gradient(linear,left bottom,left top,from(#242526),color-stop(0.96,#3b3c3d),to(#2c2d2f))}.yui3-skin-night .yui3-tabview-list li:first-child a{-moz-border-radius:6px 0 0 6px;-webkit-border-radius:6px 0 0 6px;border-radius:6px 0 0 6px}.yui3-skin-night .yui3-tabview-list li:last-child a{border-right-style:solid;-moz-border-radius:0 6px 6px 0;-webkit-border-radius:0 6px 6px 0;border-radius:0 6px 6px 0}#yui3-css-stamp.skin-night-tabview{display:none} diff --git a/lib/yuilib/3.9.1/build/tabview/assets/skins/sam/tabview-skin.css b/lib/yuilib/3.12.0/tabview/assets/skins/sam/tabview-skin.css old mode 100644 new mode 100755 similarity index 92% rename from lib/yuilib/3.9.1/build/tabview/assets/skins/sam/tabview-skin.css rename to lib/yuilib/3.12.0/tabview/assets/skins/sam/tabview-skin.css index 47b6e8407cf..ad9809b2409 --- a/lib/yuilib/3.9.1/build/tabview/assets/skins/sam/tabview-skin.css +++ b/lib/yuilib/3.12.0/tabview/assets/skins/sam/tabview-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* .yui-navset defaults to .yui-navset-top */ .yui3-skin-sam .yui3-tabview-list { border:solid #2647a0; /* color between tab list and content */ diff --git a/lib/yuilib/3.12.0/tabview/assets/skins/sam/tabview.css b/lib/yuilib/3.12.0/tabview/assets/skins/sam/tabview.css new file mode 100755 index 00000000000..fc28685c477 --- /dev/null +++ b/lib/yuilib/3.12.0/tabview/assets/skins/sam/tabview.css @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +.yui3-tab-panel{display:none}.yui3-tab-panel-selected{display:block}.yui3-tabview-list,.yui3-tab{margin:0;padding:0;list-style:none}.yui3-tabview{position:relative}.yui3-tabview,.yui3-tabview-list,.yui3-tabview-panel,.yui3-tab,.yui3-tab-panel{zoom:1}.yui3-tab{display:inline-block;*display:inline;vertical-align:bottom;cursor:pointer}.yui3-tab-label{display:block;display:inline-block;padding:6px 10px;position:relative;text-decoration:none;vertical-align:bottom}.yui3-skin-sam .yui3-tabview-list{border:solid #2647a0;border-width:0 0 5px;zoom:1}.yui3-skin-sam .yui3-tab{margin:0 .2em 0 0;padding:1px 0 0;zoom:1}.yui3-skin-sam .yui3-tab-selected{margin-bottom:-1px}.yui3-skin-sam .yui3-tab-label{background:#d8d8d8 url(../../../../assets/skins/sam/sprite.png) repeat-x;border:solid #a3a3a3;border-width:1px 1px 0 1px;color:#000;cursor:pointer;font-size:85%;padding:.3em .75em;text-decoration:none}.yui3-skin-sam .yui3-tab-label:hover,.yui3-skin-sam .yui3-tab-label:focus{background:#bfdaff url(../../../../assets/skins/sam/sprite.png) repeat-x left -1300px;outline:0}.yui3-skin-sam .yui3-tab-selected .yui3-tab-label,.yui3-skin-sam .yui3-tab-selected .yui3-tab-label:focus,.yui3-skin-sam .yui3-tab-selected .yui3-tab-label:hover{background:#2647a0 url(../../../../assets/skins/sam/sprite.png) repeat-x left -1400px;color:#fff}.yui3-skin-sam .yui3-tab-selected .yui3-tab-label{padding:.4em .75em}.yui3-skin-sam .yui3-tab-selected .yui3-tab-label{border-color:#243356}.yui3-skin-sam .yui3-tabview-panel{background:#edf5ff}.yui3-skin-sam .yui3-tabview-panel{border:1px solid #808080;border-top-color:#243356;padding:.25em .5em}#yui3-css-stamp.skin-sam-tabview{display:none} diff --git a/lib/yuilib/3.9.1/build/tabview-base/assets/tabview-core.css b/lib/yuilib/3.12.0/tabview/assets/tabview-core.css old mode 100644 new mode 100755 similarity index 84% rename from lib/yuilib/3.9.1/build/tabview-base/assets/tabview-core.css rename to lib/yuilib/3.12.0/tabview/assets/tabview-core.css index 66c74c57155..1d709d19590 --- a/lib/yuilib/3.9.1/build/tabview-base/assets/tabview-core.css +++ b/lib/yuilib/3.12.0/tabview/assets/tabview-core.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-tab-panel { display:none; } diff --git a/lib/yuilib/3.9.1/build/tabview/tabview-debug.js b/lib/yuilib/3.12.0/tabview/tabview-debug.js old mode 100644 new mode 100755 similarity index 81% rename from lib/yuilib/3.9.1/build/tabview/tabview-debug.js rename to lib/yuilib/3.12.0/tabview/tabview-debug.js index 014857921d9..3e5ccc67849 --- a/lib/yuilib/3.9.1/build/tabview/tabview-debug.js +++ b/lib/yuilib/3.12.0/tabview/tabview-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('tabview', function (Y, NAME) { /** @@ -7,9 +13,7 @@ YUI.add('tabview', function (Y, NAME) { * @module tabview */ -var _queries = Y.TabviewBase._queries, - _classNames = Y.TabviewBase._classNames, - DOT = '.', +var DOT = '.', /** * Provides a tabbed widget interface @@ -21,16 +25,25 @@ var _queries = Y.TabviewBase._queries, * @uses WidgetParent */ TabView = Y.Base.create('tabView', Y.Widget, [Y.WidgetParent], { + _afterChildAdded: function() { this.get('contentBox').focusManager.refresh(); }, _defListNodeValueFn: function() { - return Y.Node.create(TabView.LIST_TEMPLATE); + var node = Y.Node.create(this.LIST_TEMPLATE); + + node.addClass(Y.TabviewBase._classNames.tabviewList); + + return node; }, _defPanelNodeValueFn: function() { - return Y.Node.create(TabView.PANEL_TEMPLATE); + var node = Y.Node.create(this.PANEL_TEMPLATE); + + node.addClass(Y.TabviewBase._classNames.tabviewPanel); + + return node; }, _afterChildRemoved: function(e) { // update the selected tab when removed @@ -47,9 +60,8 @@ var _queries = Y.TabviewBase._queries, this.get('contentBox').focusManager.refresh(); }, - _initAria: function() { - var contentBox = this.get('contentBox'), - tablist = contentBox.one(_queries.tabviewList); + _initAria: function(contentBox) { + var tablist = contentBox.one(Y.TabviewBase._queries.tabviewList); if (tablist) { tablist.setAttrs({ @@ -65,7 +77,7 @@ var _queries = Y.TabviewBase._queries, // among each of the tabs. this.get('contentBox').plug(Y.Plugin.NodeFocusManager, { - descendants: DOT + _classNames.tabLabel, + descendants: DOT + Y.TabviewBase._classNames.tabLabel, keys: { next: 'down:39', // Right arrow previous: 'down:37' }, // Left arrow circular: true @@ -75,13 +87,14 @@ var _queries = Y.TabviewBase._queries, this.after('addChild', this._afterChildAdded); this.after('removeChild', this._afterChildRemoved); }, - + renderUI: function() { var contentBox = this.get('contentBox'); this._renderListBox(contentBox); this._renderPanelBox(contentBox); this._childrenContainer = this.get('listNode'); this._renderTabs(contentBox); + this._initAria(contentBox); }, _setDefSelection: function() { @@ -116,7 +129,9 @@ var _queries = Y.TabviewBase._queries, }, _renderTabs: function(contentBox) { - var tabs = contentBox.all(_queries.tab), + var _classNames = Y.TabviewBase._classNames, + _queries = Y.TabviewBase._queries, + tabs = contentBox.all(_queries.tab), panelNode = this.get('panelNode'), panels = (panelNode) ? this.get('panelNode').get('children') : null, tabview = this; @@ -137,10 +152,6 @@ var _queries = Y.TabviewBase._queries, } } }, { - - LIST_TEMPLATE: '
      ', - PANEL_TEMPLATE: '
      ', - ATTRS: { defaultChildType: { value: 'Tab' @@ -150,7 +161,7 @@ var _queries = Y.TabviewBase._queries, setter: function(node) { node = Y.one(node); if (node) { - node.addClass(_classNames.tabviewList); + node.addClass(Y.TabviewBase._classNames.tabviewList); } return node; }, @@ -162,7 +173,7 @@ var _queries = Y.TabviewBase._queries, setter: function(node) { node = Y.one(node); if (node) { - node.addClass(_classNames.tabviewPanel); + node.addClass(Y.TabviewBase._classNames.tabviewPanel); } return node; }, @@ -177,15 +188,24 @@ var _queries = Y.TabviewBase._queries, }, HTML_PARSER: { - listNode: _queries.tabviewList, - panelNode: _queries.tabviewPanel - } + listNode: function(srcNode) { + return srcNode.one(Y.TabviewBase._queries.tabviewList); + }, + panelNode: function(srcNode) { + return srcNode.one(Y.TabviewBase._queries.tabviewPanel); + } + }, + + // Static for legacy support. + LIST_TEMPLATE: '
        ', + PANEL_TEMPLATE: '
        ' }); -Y.TabView = TabView; -var Lang = Y.Lang, - _classNames = Y.TabviewBase._classNames; +// Map to static values by default. +TabView.prototype.LIST_TEMPLATE = TabView.LIST_TEMPLATE; +TabView.prototype.PANEL_TEMPLATE = TabView.PANEL_TEMPLATE; +Y.TabView = TabView; /** * Provides Tab instances for use with TabView * @param config {Object} Object literal specifying tabview configuration properties. @@ -196,12 +216,12 @@ var Lang = Y.Lang, * @uses WidgetChild */ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { - BOUNDING_TEMPLATE: '
      • ', - CONTENT_TEMPLATE: '
        ', - PANEL_TEMPLATE: '
        ', + BOUNDING_TEMPLATE: '
      • ', + CONTENT_TEMPLATE: '', + PANEL_TEMPLATE: '
        ', _uiSetSelectedPanel: function(selected) { - this.get('panelNode').toggleClass(_classNames.selectedPanel, selected); + this.get('panelNode').toggleClass(Y.TabviewBase._classNames.selectedPanel, selected); }, _afterTabSelectedChange: function(event) { @@ -220,7 +240,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { var anchor = this.get('contentBox'), id = anchor.get('id'), panel = this.get('panelNode'); - + if (!id) { id = Y.guid(); anchor.set('id', id); @@ -228,8 +248,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { // Apply the ARIA roles, states and properties to each tab anchor.set('role', 'tab'); anchor.get('parentNode').set('role', 'presentation'); - - + // Apply the ARIA roles, states and properties to each panel panel.setAttrs({ role: 'tabpanel', @@ -238,6 +257,10 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { }, syncUI: function() { + var _classNames = Y.TabviewBase._classNames; + + this.get('boundingBox').addClass(_classNames.tab); + this.get('contentBox').addClass(_classNames.tabLabel); this.set('label', this.get('label')); this.set('content', this.get('content')); this._uiSetSelectedPanel(this.get('selected')); @@ -271,7 +294,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { panel.appendChild(this.get('panelNode')); } }, - + _remove: function() { this.get('boundingBox').remove(); this.get('panelNode').remove(); @@ -285,7 +308,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { e.target.set('selected', 1); } }, - + initializer: function() { this.publish(this.get('triggerEvent'), { defaultFn: this._onActivate @@ -318,7 +341,8 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { // find panel by ID mapping from label href _defPanelNodeValueFn: function() { - var href = this.get('contentBox').get('href') || '', + var _classNames = Y.TabviewBase._classNames, + href = this.get('contentBox').get('href') || '', parent = this.get('parent'), hashIndex = href.indexOf('#'), panel; @@ -340,6 +364,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { if (!panel) { // create if none found panel = Y.Node.create(this.PANEL_TEMPLATE); + panel.addClass(_classNames.tabPanel); } return panel; } @@ -380,13 +405,13 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { setter: function(node) { node = Y.one(node); if (node) { - node.addClass(_classNames.tabPanel); + node.addClass(Y.TabviewBase._classNames.tabPanel); } return node; }, valueFn: '_defPanelNodeValueFn' }, - + tabIndex: { value: null, validator: '_validTabIndex' @@ -396,7 +421,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { HTML_PARSER: { selected: function() { - var ret = (this.get('boundingBox').hasClass(_classNames.selectedTab)) ? + var ret = (this.get('boundingBox').hasClass(Y.TabviewBase._classNames.selectedTab)) ? 1 : 0; return ret; } @@ -405,7 +430,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { }); -}, '3.9.1', { +}, '3.12.0', { "requires": [ "widget", "widget-parent", diff --git a/lib/yuilib/3.12.0/tabview/tabview-min.js b/lib/yuilib/3.12.0/tabview/tabview-min.js new file mode 100755 index 00000000000..97bee44c1d5 --- /dev/null +++ b/lib/yuilib/3.12.0/tabview/tabview-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("tabview",function(e,t){var n=".",r=e.Base.create("tabView",e.Widget,[e.WidgetParent],{_afterChildAdded:function(){this.get("contentBox").focusManager.refresh()},_defListNodeValueFn:function(){var t=e.Node.create(this.LIST_TEMPLATE);return t.addClass(e.TabviewBase._classNames.tabviewList),t},_defPanelNodeValueFn:function(){var t=e.Node.create(this.PANEL_TEMPLATE);return t.addClass(e.TabviewBase._classNames.tabviewPanel),t},_afterChildRemoved:function(e){var t=e.index,n=this.get("selection");n||(n=this.item(t-1)||this.item(0),n&&n.set("selected",1)),this.get("contentBox").focusManager.refresh()},_initAria:function(t){var n=t.one(e.TabviewBase._queries.tabviewList);n&&n.setAttrs({role:"tablist"})},bindUI:function(){this.get("contentBox").plug(e.Plugin.NodeFocusManager,{descendants:n+e.TabviewBase._classNames.tabLabel,keys:{next:"down:39",previous:"down:37"},circular:!0}),this.after("render",this._setDefSelection),this.after("addChild",this._afterChildAdded),this.after("removeChild",this._afterChildRemoved)},renderUI:function(){var e=this.get("contentBox");this._renderListBox(e),this._renderPanelBox(e),this._childrenContainer=this.get("listNode"),this._renderTabs(e),this._initAria(e)},_setDefSelection:function(){var e=this.get("selection")||this.item(0);this.some(function(t){if(t.get("selected"))return e=t,!0}),e&&(this.set("selection",e),e.set("selected",1))},_renderListBox:function(e){var t=this.get("listNode");t.inDoc()||e.append(t)},_renderPanelBox:function(e){var t=this.get("panelNode");t.inDoc()||e.append(t)},_renderTabs:function(t){var r=e.TabviewBase._classNames,i=e.TabviewBase._queries,s=t.all(i.tab),o=this.get("panelNode"),u=o?this.get("panelNode").get("children"):null,a=this;s&&(s.addClass(r.tab),t.all(i.tabLabel).addClass(r.tabLabel),t.all(i.tabPanel).addClass(r.tabPanel),s.each(function(e,t){var i=u?u.item(t):null;a.add({boundingBox:e,contentBox:e.one(n+r.tabLabel),panelNode:i})}))}},{ATTRS:{defaultChildType:{value:"Tab"},listNode:{setter:function(t){return t=e.one(t),t&&t.addClass(e.TabviewBase._classNames.tabviewList),t},valueFn:"_defListNodeValueFn"},panelNode:{setter:function(t){return t=e.one(t),t&&t.addClass(e.TabviewBase._classNames.tabviewPanel),t},valueFn:"_defPanelNodeValueFn"},tabIndex:{value:null}},HTML_PARSER:{listNode:function(t){return t.one(e.TabviewBase._queries.tabviewList)},panelNode:function(t){return t.one(e.TabviewBase._queries.tabviewPanel)}},LIST_TEMPLATE:"
          ",PANEL_TEMPLATE:"
          "});r.prototype.LIST_TEMPLATE=r.LIST_TEMPLATE,r.prototype.PANEL_TEMPLATE=r.PANEL_TEMPLATE,e.TabView=r,e.Tab=e.Base.create("tab",e.Widget,[e.WidgetChild],{BOUNDING_TEMPLATE:"
        • ",CONTENT_TEMPLATE:"",PANEL_TEMPLATE:"
          ",_uiSetSelectedPanel:function(t){this.get("panelNode").toggleClass(e.TabviewBase._classNames.selectedPanel,t)},_afterTabSelectedChange:function(e){this._uiSetSelectedPanel(e.newVal)},_afterParentChange:function(e){e.newVal?this._add():this._remove()},_initAria:function(){var t=this.get("contentBox"),n=t.get("id"),r=this.get("panelNode");n||(n=e.guid(),t.set("id",n)),t.set("role","tab"),t.get("parentNode").set("role","presentation"),r.setAttrs({role:"tabpanel","aria-labelledby":n})},syncUI:function(){var t=e.TabviewBase._classNames;this.get("boundingBox").addClass(t.tab),this.get("contentBox").addClass(t.tabLabel),this.set("label",this.get("label")),this.set("content",this.get("content")),this._uiSetSelectedPanel(this.get("selected"))},bindUI:function(){this.after("selectedChange",this._afterTabSelectedChange),this.after("parentChange",this._afterParentChange)},renderUI:function(){this._renderPanel(),this._initAria()},_renderPanel:function(){this.get("parent").get("panelNode").appendChild(this.get("panelNode"))},_add:function(){var e=this.get("parent").get("contentBox"),t=e.get("listNode"),n=e.get("panelNode");t&&t.appendChild(this.get("boundingBox")),n&&n.appendChild(this.get("panelNode"))},_remove:function(){this.get("boundingBox").remove(),this.get("panelNode").remove()},_onActivate:function(e){e.target===this&&(e.domEvent.preventDefault(),e.target.set("selected",1))},initializer:function(){this.publish(this.get("triggerEvent"),{defaultFn:this._onActivate})},_defLabelGetter:function(){return this.get("contentBox").getHTML()},_defLabelSetter:function(e){var t=this.get("contentBox");return t.getHTML()!==e&&t.setHTML(e),e},_defContentSetter:function(e){var t=this.get("panelNode");return t.getHTML()!==e&&t.setHTML(e),e},_defContentGetter:function(){return this.get("panelNode").getHTML()},_defPanelNodeValueFn:function(){var t=e.TabviewBase._classNames,n=this.get("contentBox").get("href")||"",r=this.get("parent"),i=n.indexOf("#"),s;return n=n.substr(i),n.charAt(0)==="#"&&(s=e.one(n),s&&s.addClass(t.tabPanel)),!s&&r&&(s=r.get("panelNode").get("children").item(this.get("index"))),s||(s=e.Node.create(this.PANEL_TEMPLATE),s.addClass(t.tabPanel)),s}},{ATTRS:{triggerEvent:{value:"click"},label:{setter:"_defLabelSetter",getter:"_defLabelGetter"},content:{setter:"_defContentSetter",getter:"_defContentGetter"},panelNode:{setter:function(t){return t=e.one(t),t&&t.addClass(e.TabviewBase._classNames.tabPanel),t},valueFn:"_defPanelNodeValueFn"},tabIndex:{value:null,validator:"_validTabIndex"}},HTML_PARSER:{selected:function(){var t=this.get("boundingBox").hasClass(e.TabviewBase._classNames.selectedTab)?1:0;return t}}})},"3.12.0",{requires:["widget","widget-parent","widget-child","tabview-base","node-pluginhost","node-focusmanager"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/tabview/tabview.js b/lib/yuilib/3.12.0/tabview/tabview.js old mode 100644 new mode 100755 similarity index 81% rename from lib/yuilib/3.9.1/build/tabview/tabview.js rename to lib/yuilib/3.12.0/tabview/tabview.js index 014857921d9..3e5ccc67849 --- a/lib/yuilib/3.9.1/build/tabview/tabview.js +++ b/lib/yuilib/3.12.0/tabview/tabview.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('tabview', function (Y, NAME) { /** @@ -7,9 +13,7 @@ YUI.add('tabview', function (Y, NAME) { * @module tabview */ -var _queries = Y.TabviewBase._queries, - _classNames = Y.TabviewBase._classNames, - DOT = '.', +var DOT = '.', /** * Provides a tabbed widget interface @@ -21,16 +25,25 @@ var _queries = Y.TabviewBase._queries, * @uses WidgetParent */ TabView = Y.Base.create('tabView', Y.Widget, [Y.WidgetParent], { + _afterChildAdded: function() { this.get('contentBox').focusManager.refresh(); }, _defListNodeValueFn: function() { - return Y.Node.create(TabView.LIST_TEMPLATE); + var node = Y.Node.create(this.LIST_TEMPLATE); + + node.addClass(Y.TabviewBase._classNames.tabviewList); + + return node; }, _defPanelNodeValueFn: function() { - return Y.Node.create(TabView.PANEL_TEMPLATE); + var node = Y.Node.create(this.PANEL_TEMPLATE); + + node.addClass(Y.TabviewBase._classNames.tabviewPanel); + + return node; }, _afterChildRemoved: function(e) { // update the selected tab when removed @@ -47,9 +60,8 @@ var _queries = Y.TabviewBase._queries, this.get('contentBox').focusManager.refresh(); }, - _initAria: function() { - var contentBox = this.get('contentBox'), - tablist = contentBox.one(_queries.tabviewList); + _initAria: function(contentBox) { + var tablist = contentBox.one(Y.TabviewBase._queries.tabviewList); if (tablist) { tablist.setAttrs({ @@ -65,7 +77,7 @@ var _queries = Y.TabviewBase._queries, // among each of the tabs. this.get('contentBox').plug(Y.Plugin.NodeFocusManager, { - descendants: DOT + _classNames.tabLabel, + descendants: DOT + Y.TabviewBase._classNames.tabLabel, keys: { next: 'down:39', // Right arrow previous: 'down:37' }, // Left arrow circular: true @@ -75,13 +87,14 @@ var _queries = Y.TabviewBase._queries, this.after('addChild', this._afterChildAdded); this.after('removeChild', this._afterChildRemoved); }, - + renderUI: function() { var contentBox = this.get('contentBox'); this._renderListBox(contentBox); this._renderPanelBox(contentBox); this._childrenContainer = this.get('listNode'); this._renderTabs(contentBox); + this._initAria(contentBox); }, _setDefSelection: function() { @@ -116,7 +129,9 @@ var _queries = Y.TabviewBase._queries, }, _renderTabs: function(contentBox) { - var tabs = contentBox.all(_queries.tab), + var _classNames = Y.TabviewBase._classNames, + _queries = Y.TabviewBase._queries, + tabs = contentBox.all(_queries.tab), panelNode = this.get('panelNode'), panels = (panelNode) ? this.get('panelNode').get('children') : null, tabview = this; @@ -137,10 +152,6 @@ var _queries = Y.TabviewBase._queries, } } }, { - - LIST_TEMPLATE: '
            ', - PANEL_TEMPLATE: '
            ', - ATTRS: { defaultChildType: { value: 'Tab' @@ -150,7 +161,7 @@ var _queries = Y.TabviewBase._queries, setter: function(node) { node = Y.one(node); if (node) { - node.addClass(_classNames.tabviewList); + node.addClass(Y.TabviewBase._classNames.tabviewList); } return node; }, @@ -162,7 +173,7 @@ var _queries = Y.TabviewBase._queries, setter: function(node) { node = Y.one(node); if (node) { - node.addClass(_classNames.tabviewPanel); + node.addClass(Y.TabviewBase._classNames.tabviewPanel); } return node; }, @@ -177,15 +188,24 @@ var _queries = Y.TabviewBase._queries, }, HTML_PARSER: { - listNode: _queries.tabviewList, - panelNode: _queries.tabviewPanel - } + listNode: function(srcNode) { + return srcNode.one(Y.TabviewBase._queries.tabviewList); + }, + panelNode: function(srcNode) { + return srcNode.one(Y.TabviewBase._queries.tabviewPanel); + } + }, + + // Static for legacy support. + LIST_TEMPLATE: '
              ', + PANEL_TEMPLATE: '
              ' }); -Y.TabView = TabView; -var Lang = Y.Lang, - _classNames = Y.TabviewBase._classNames; +// Map to static values by default. +TabView.prototype.LIST_TEMPLATE = TabView.LIST_TEMPLATE; +TabView.prototype.PANEL_TEMPLATE = TabView.PANEL_TEMPLATE; +Y.TabView = TabView; /** * Provides Tab instances for use with TabView * @param config {Object} Object literal specifying tabview configuration properties. @@ -196,12 +216,12 @@ var Lang = Y.Lang, * @uses WidgetChild */ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { - BOUNDING_TEMPLATE: '
            • ', - CONTENT_TEMPLATE: '', - PANEL_TEMPLATE: '
              ', + BOUNDING_TEMPLATE: '
            • ', + CONTENT_TEMPLATE: '', + PANEL_TEMPLATE: '
              ', _uiSetSelectedPanel: function(selected) { - this.get('panelNode').toggleClass(_classNames.selectedPanel, selected); + this.get('panelNode').toggleClass(Y.TabviewBase._classNames.selectedPanel, selected); }, _afterTabSelectedChange: function(event) { @@ -220,7 +240,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { var anchor = this.get('contentBox'), id = anchor.get('id'), panel = this.get('panelNode'); - + if (!id) { id = Y.guid(); anchor.set('id', id); @@ -228,8 +248,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { // Apply the ARIA roles, states and properties to each tab anchor.set('role', 'tab'); anchor.get('parentNode').set('role', 'presentation'); - - + // Apply the ARIA roles, states and properties to each panel panel.setAttrs({ role: 'tabpanel', @@ -238,6 +257,10 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { }, syncUI: function() { + var _classNames = Y.TabviewBase._classNames; + + this.get('boundingBox').addClass(_classNames.tab); + this.get('contentBox').addClass(_classNames.tabLabel); this.set('label', this.get('label')); this.set('content', this.get('content')); this._uiSetSelectedPanel(this.get('selected')); @@ -271,7 +294,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { panel.appendChild(this.get('panelNode')); } }, - + _remove: function() { this.get('boundingBox').remove(); this.get('panelNode').remove(); @@ -285,7 +308,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { e.target.set('selected', 1); } }, - + initializer: function() { this.publish(this.get('triggerEvent'), { defaultFn: this._onActivate @@ -318,7 +341,8 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { // find panel by ID mapping from label href _defPanelNodeValueFn: function() { - var href = this.get('contentBox').get('href') || '', + var _classNames = Y.TabviewBase._classNames, + href = this.get('contentBox').get('href') || '', parent = this.get('parent'), hashIndex = href.indexOf('#'), panel; @@ -340,6 +364,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { if (!panel) { // create if none found panel = Y.Node.create(this.PANEL_TEMPLATE); + panel.addClass(_classNames.tabPanel); } return panel; } @@ -380,13 +405,13 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { setter: function(node) { node = Y.one(node); if (node) { - node.addClass(_classNames.tabPanel); + node.addClass(Y.TabviewBase._classNames.tabPanel); } return node; }, valueFn: '_defPanelNodeValueFn' }, - + tabIndex: { value: null, validator: '_validTabIndex' @@ -396,7 +421,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { HTML_PARSER: { selected: function() { - var ret = (this.get('boundingBox').hasClass(_classNames.selectedTab)) ? + var ret = (this.get('boundingBox').hasClass(Y.TabviewBase._classNames.selectedTab)) ? 1 : 0; return ret; } @@ -405,7 +430,7 @@ Y.Tab = Y.Base.create('tab', Y.Widget, [Y.WidgetChild], { }); -}, '3.9.1', { +}, '3.12.0', { "requires": [ "widget", "widget-parent", diff --git a/lib/yuilib/3.9.1/build/template-base/template-base-debug.js b/lib/yuilib/3.12.0/template-base/template-base-debug.js old mode 100644 new mode 100755 similarity index 55% rename from lib/yuilib/3.9.1/build/template-base/template-base-debug.js rename to lib/yuilib/3.12.0/template-base/template-base-debug.js index 7fdbe42214a..b6eb8970865 --- a/lib/yuilib/3.9.1/build/template-base/template-base-debug.js +++ b/lib/yuilib/3.12.0/template-base/template-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('template-base', function (Y, NAME) { /** @@ -74,6 +80,119 @@ function Template(engine, defaults) { } } +/** +Registry that maps template names to revived template functions. + +@property _registry +@type Object +@static +@protected +@since 3.12.0 +**/ +Template._registry = {}; + +/** +Registers a pre-compiled template into the central template registry with a +given template string, allowing that template to be called and rendered by +that name using the `Y.Template.render()` static method. + +For example, given the following simple Handlebars template, in `foo.hbs`: +@example +

              {{tagline}}

              + +It can be precompiled using the Handlebars CLI, and added into a YUI module +in the following way. Alternatively, `locator` can be used to automate this +process for you: +@example + YUI.add('templates-foo', function (Y) { + + var engine = new Y.Template(Y.Handlebars), + precompiled; + + precompiled = // Long precompiled template function here // + + Y.Template.register('foo', engine.revive(precompiled)); + + }, '0.0.1', {requires: ['template-base', 'handlebars-base']}); + +See the `Y.Template#render` method to see how a registered template is used. + +@method register +@param {String} templateName The template name. +@param {Function} template The function that returns the rendered string. The + function should take the following parameters. If a pre-compiled template + does not accept these parameters, it is up to the developer to normalize it. + @param {Object} [template.data] Data object to provide when rendering the + template. + @param {Object} [template.options] Options to pass along to the template + engine. See template engine docs for options supported by each engine. +@return {Function} revivedTemplate This is the same function as in `template`, + and is done to maintain compatibility with the `Y.Template#revive()` method. +@static +@since 3.12.0 +**/ +Template.register = function (templateName, template) { + Template._registry[templateName] = template; + return template; +}; + +/** +Returns the registered template function, given the template name. If an +unregistered template is accessed, this will return `undefined`. + +@method get +@param {String} templateName The template name. +@return {Function} revivedTemplate The revived template function, or `undefined` + if it has not been registered. +@static +@since 3.12.0 +**/ + +Template.get = function (templateName) { + return Template._registry[templateName]; +} + +/** +Renders a template into a string, given the registered template name and data +to be interpolated. The template name must have been registered previously with +`register()`. + +Once the template has been registered and built into a YUI module, it can be +listed as a dependency for any other YUI module. Continuing from the above +example, the registered template can be used in the following way: + +@example + YUI.add('bar', function (Y) { + + var html = Y.Template.render('foo', { + tagline: '"bar" is now template language agnostic' + }); + + }, '0.0.1', {requires: ['template-base', 'templates-foo']}); + +The template can now be used without having to know which specific rendering +engine generated it. + +@param {String} templateName The abstracted name to reference the template. +@param {Object} [data] The data to be interpolated into the template. +@param {Object} [options] Any additional options to be passed into the template. +@return {String} output The rendered result. +@static +@since 3.12.0 +**/ +Template.render = function (templateName, data, options) { + var template = Template._registry[templateName], + result = ''; + + if (template) { + result = template(data, options); + } else { + Y.error('Unregistered template: "' + templateName + '"'); + } + + return result; +}; + Template.prototype = { /** Compiles a template with the current template engine and returns a compiled @@ -156,4 +275,4 @@ Template.prototype = { Y.Template = Y.Template ? Y.mix(Template, Y.Template) : Template; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.12.0/template-base/template-base-min.js b/lib/yuilib/3.12.0/template-base/template-base-min.js new file mode 100755 index 00000000000..6dc95116893 --- /dev/null +++ b/lib/yuilib/3.12.0/template-base/template-base-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("template-base",function(e,t){function n(t,n){this.defaults=n,this.engine=t||e.Template.Micro,this.engine||e.error("No template engine loaded.")}n._registry={},n.register=function(e,t){return n._registry[e]=t,t},n.get=function(e){return n._registry[e]},n.render=function(t,r,i){var s=n._registry[t],o="";return s?o=s(r,i):e.error('Unregistered template: "'+t+'"'),o},n.prototype={compile:function(t,n){return n=n?e.merge(this.defaults,n):this.defaults,this.engine.compile(t,n)},precompile:function(t,n){return n=n?e.merge(this.defaults,n):this.defaults,this.engine.precompile(t,n)},render:function(t,n,r){return r=r?e.merge(this.defaults,r):this.defaults,this.engine.render?this.engine.render(t,n,r):this.engine.compile(t,r)(n,r)},revive:function(t,n){return n=n?e.merge(this.defaults,n):this.defaults,this.engine.revive?this.engine.revive(t,n):t}},e.Template=e.Template?e.mix(n,e.Template):n},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/template-base/template-base.js b/lib/yuilib/3.12.0/template-base/template-base.js old mode 100644 new mode 100755 similarity index 55% rename from lib/yuilib/3.9.1/build/template-base/template-base.js rename to lib/yuilib/3.12.0/template-base/template-base.js index 7fdbe42214a..b6eb8970865 --- a/lib/yuilib/3.9.1/build/template-base/template-base.js +++ b/lib/yuilib/3.12.0/template-base/template-base.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('template-base', function (Y, NAME) { /** @@ -74,6 +80,119 @@ function Template(engine, defaults) { } } +/** +Registry that maps template names to revived template functions. + +@property _registry +@type Object +@static +@protected +@since 3.12.0 +**/ +Template._registry = {}; + +/** +Registers a pre-compiled template into the central template registry with a +given template string, allowing that template to be called and rendered by +that name using the `Y.Template.render()` static method. + +For example, given the following simple Handlebars template, in `foo.hbs`: +@example +

              {{tagline}}

              + +It can be precompiled using the Handlebars CLI, and added into a YUI module +in the following way. Alternatively, `locator` can be used to automate this +process for you: +@example + YUI.add('templates-foo', function (Y) { + + var engine = new Y.Template(Y.Handlebars), + precompiled; + + precompiled = // Long precompiled template function here // + + Y.Template.register('foo', engine.revive(precompiled)); + + }, '0.0.1', {requires: ['template-base', 'handlebars-base']}); + +See the `Y.Template#render` method to see how a registered template is used. + +@method register +@param {String} templateName The template name. +@param {Function} template The function that returns the rendered string. The + function should take the following parameters. If a pre-compiled template + does not accept these parameters, it is up to the developer to normalize it. + @param {Object} [template.data] Data object to provide when rendering the + template. + @param {Object} [template.options] Options to pass along to the template + engine. See template engine docs for options supported by each engine. +@return {Function} revivedTemplate This is the same function as in `template`, + and is done to maintain compatibility with the `Y.Template#revive()` method. +@static +@since 3.12.0 +**/ +Template.register = function (templateName, template) { + Template._registry[templateName] = template; + return template; +}; + +/** +Returns the registered template function, given the template name. If an +unregistered template is accessed, this will return `undefined`. + +@method get +@param {String} templateName The template name. +@return {Function} revivedTemplate The revived template function, or `undefined` + if it has not been registered. +@static +@since 3.12.0 +**/ + +Template.get = function (templateName) { + return Template._registry[templateName]; +} + +/** +Renders a template into a string, given the registered template name and data +to be interpolated. The template name must have been registered previously with +`register()`. + +Once the template has been registered and built into a YUI module, it can be +listed as a dependency for any other YUI module. Continuing from the above +example, the registered template can be used in the following way: + +@example + YUI.add('bar', function (Y) { + + var html = Y.Template.render('foo', { + tagline: '"bar" is now template language agnostic' + }); + + }, '0.0.1', {requires: ['template-base', 'templates-foo']}); + +The template can now be used without having to know which specific rendering +engine generated it. + +@param {String} templateName The abstracted name to reference the template. +@param {Object} [data] The data to be interpolated into the template. +@param {Object} [options] Any additional options to be passed into the template. +@return {String} output The rendered result. +@static +@since 3.12.0 +**/ +Template.render = function (templateName, data, options) { + var template = Template._registry[templateName], + result = ''; + + if (template) { + result = template(data, options); + } else { + Y.error('Unregistered template: "' + templateName + '"'); + } + + return result; +}; + Template.prototype = { /** Compiles a template with the current template engine and returns a compiled @@ -156,4 +275,4 @@ Template.prototype = { Y.Template = Y.Template ? Y.mix(Template, Y.Template) : Template; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/template-micro/template-micro-debug.js b/lib/yuilib/3.12.0/template-micro/template-micro-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/template-micro/template-micro-debug.js rename to lib/yuilib/3.12.0/template-micro/template-micro-debug.js index 46606b922cd..6045e704934 --- a/lib/yuilib/3.9.1/build/template-micro/template-micro-debug.js +++ b/lib/yuilib/3.12.0/template-micro/template-micro-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('template-micro', function (Y, NAME) { /*jshint expr:true */ @@ -247,4 +253,4 @@ Micro.revive = function (precompiled) { }; -}, '3.9.1', {"requires": ["escape"]}); +}, '3.12.0', {"requires": ["escape"]}); diff --git a/lib/yuilib/3.9.1/build/template-micro/template-micro-min.js b/lib/yuilib/3.12.0/template-micro/template-micro-min.js old mode 100644 new mode 100755 similarity index 85% rename from lib/yuilib/3.9.1/build/template-micro/template-micro-min.js rename to lib/yuilib/3.12.0/template-micro/template-micro-min.js index 8333c28a972..5108b322579 --- a/lib/yuilib/3.9.1/build/template-micro/template-micro-min.js +++ b/lib/yuilib/3.12.0/template-micro/template-micro-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("template-micro",function(e,t){var n=e.namespace("Template.Micro");n.options={code:/<%([\s\S]+?)%>/g,escapedOutput:/<%=([\s\S]+?)%>/g,rawOutput:/<%==([\s\S]+?)%>/g,stringEscape:/\\|'|\r|\n|\t|\u2028|\u2029/g,stringReplace:{"\\":"\\\\","'":"\\'","\r":"\\r","\n":"\\n"," ":"\\t","\u2028":"\\u2028","\u2029":"\\u2029"}},n.compile=function(t,r){var i=[],s="\uffff",o="\ufffe",u;return r=e.merge(n.options,r),u="var $b='', $v=function (v){return v || v === 0 ? v : $b;}, $t='"+t.replace(/\ufffe|\uffff/g,"").replace(r.rawOutput,function(e,t){return o+(i.push("'+\n$v("+t+")+\n'")-1)+s}).replace(r.escapedOutput,function(e,t){return o+(i.push("'+\n$e($v("+t+"))+\n'")-1)+s}).replace(r.code,function(e,t){return o+(i.push("';\n"+t+"\n$t+='")-1)+s}).replace(r.stringEscape,function(e){return r.stringReplace[e]||""}).replace(/\ufffe(\d+)\uffff/g,function(e,t){return i[parseInt(t,10)]}).replace(/\n\$t\+='';\n/g,"\n")+"';\nreturn $t;",r.precompile?"function (Y, $e, data) {\n"+u+"\n}":this.revive(new Function("Y","$e","data",u))},n.precompile=function(e,t){return t||(t={}),t.precompile=!0,this.compile(e,t)},n.render=function(e,t,n){return this.compile(e,n)(t)},n.revive=function(t){return function(n){return n||(n={}),t.call(n,e,e.Escape.html,n)}}},"3.9.1",{requires:["escape"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("template-micro",function(e,t){var n=e.namespace("Template.Micro");n.options={code:/<%([\s\S]+?)%>/g,escapedOutput:/<%=([\s\S]+?)%>/g,rawOutput:/<%==([\s\S]+?)%>/g,stringEscape:/\\|'|\r|\n|\t|\u2028|\u2029/g,stringReplace:{"\\":"\\\\","'":"\\'","\r":"\\r","\n":"\\n"," ":"\\t","\u2028":"\\u2028","\u2029":"\\u2029"}},n.compile=function(t,r){var i=[],s="\uffff",o="\ufffe",u;return r=e.merge(n.options,r),u="var $b='', $v=function (v){return v || v === 0 ? v : $b;}, $t='"+t.replace(/\ufffe|\uffff/g,"").replace(r.rawOutput,function(e,t){return o+(i.push("'+\n$v("+t+")+\n'")-1)+s}).replace(r.escapedOutput,function(e,t){return o+(i.push("'+\n$e($v("+t+"))+\n'")-1)+s}).replace(r.code,function(e,t){return o+(i.push("';\n"+t+"\n$t+='")-1)+s}).replace(r.stringEscape,function(e){return r.stringReplace[e]||""}).replace(/\ufffe(\d+)\uffff/g,function(e,t){return i[parseInt(t,10)]}).replace(/\n\$t\+='';\n/g,"\n")+"';\nreturn $t;",r.precompile?"function (Y, $e, data) {\n"+u+"\n}":this.revive(new Function("Y","$e","data",u))},n.precompile=function(e,t){return t||(t={}),t.precompile=!0,this.compile(e,t)},n.render=function(e,t,n){return this.compile(e,n)(t)},n.revive=function(t){return function(n){return n||(n={}),t.call(n,e,e.Escape.html,n)}}},"3.12.0",{requires:["escape"]}); diff --git a/lib/yuilib/3.9.1/build/template-micro/template-micro.js b/lib/yuilib/3.12.0/template-micro/template-micro.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/template-micro/template-micro.js rename to lib/yuilib/3.12.0/template-micro/template-micro.js index 46606b922cd..6045e704934 --- a/lib/yuilib/3.9.1/build/template-micro/template-micro.js +++ b/lib/yuilib/3.12.0/template-micro/template-micro.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('template-micro', function (Y, NAME) { /*jshint expr:true */ @@ -247,4 +253,4 @@ Micro.revive = function (precompiled) { }; -}, '3.9.1', {"requires": ["escape"]}); +}, '3.12.0', {"requires": ["escape"]}); diff --git a/lib/yuilib/3.9.1/build/test-console/assets/skins/sam/test-console-skin.css b/lib/yuilib/3.12.0/test-console/assets/skins/sam/test-console-skin.css old mode 100644 new mode 100755 similarity index 92% rename from lib/yuilib/3.9.1/build/test-console/assets/skins/sam/test-console-skin.css rename to lib/yuilib/3.12.0/test-console/assets/skins/sam/test-console-skin.css index 7dd678e54d6..092597f66a1 --- a/lib/yuilib/3.9.1/build/test-console/assets/skins/sam/test-console-skin.css +++ b/lib/yuilib/3.12.0/test-console/assets/skins/sam/test-console-skin.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /* Reset base Console skin styles */ .yui3-skin-sam .yui3-testconsole .yui3-console-content, .yui3-skin-sam .yui3-testconsole .yui3-console-bd, diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/test-console.css b/lib/yuilib/3.12.0/test-console/assets/skins/sam/test-console.css old mode 100644 new mode 100755 similarity index 92% rename from lib/yuilib/3.9.1/build/assets/skins/sam/test-console.css rename to lib/yuilib/3.12.0/test-console/assets/skins/sam/test-console.css index 6a4aa84007b..f47c54f17e2 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/test-console.css +++ b/lib/yuilib/3.12.0/test-console/assets/skins/sam/test-console.css @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-testconsole .yui3-console-entry{min-height:inherit;padding:5px}.yui3-testconsole .yui3-console-controls{display:none}.yui3-skin-sam .yui3-testconsole .yui3-console-content,.yui3-skin-sam .yui3-testconsole .yui3-console-bd,.yui3-skin-sam .yui3-testconsole .yui3-console-entry,.yui3-skin-sam .yui3-testconsole .yui3-console-ft,.yui3-skin-sam .yui3-testconsole .yui3-console-ft .yui3-console-filters-categories,.yui3-skin-sam .yui3-testconsole .yui3-console-ft .yui3-console-filters-sources,.yui3-skin-sam .yui3-testconsole .yui3-console-hd{background:0;border:0;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.yui3-skin-sam .yui3-testconsole-content,.yui3-skin-sam .yui3-testconsole .yui3-console-bd{color:#333;font:13px/1.4 Helvetica,'DejaVu Sans','Bitstream Vera Sans',Arial,sans-serif}.yui3-skin-sam .yui3-testconsole-content{border:1px solid #afafaf}.yui3-skin-sam .yui3-testconsole .yui3-console-entry{border-bottom:1px solid #eaeaea;font-family:Menlo,Inconsolata,Consolas,'DejaVu Mono','Bitstream Vera Sans Mono',monospace;font-size:11px}.yui3-skin-sam .yui3-testconsole .yui3-console-ft{border-top:1px solid}.yui3-skin-sam .yui3-testconsole .yui3-console-hd{border-bottom:1px solid;*zoom:1}.yui3-skin-sam .yui3-testconsole.yui3-console-collapsed .yui3-console-hd{border:0}.yui3-skin-sam .yui3-testconsole .yui3-console-ft,.yui3-skin-sam .yui3-testconsole .yui3-console-hd{border-color:#cfcfcf}.yui3-skin-sam .yui3-testconsole .yui3-testconsole-entry-fail{background-color:#ffe0e0;border-bottom-color:#ffc5c4}.yui3-skin-sam .yui3-testconsole .yui3-testconsole-entry-pass{background-color:#ecffea;border-bottom-color:#d1ffcc}#yui3-css-stamp.skin-sam-test-console{display:none} diff --git a/lib/yuilib/3.9.1/build/test-console/assets/test-console-core.css b/lib/yuilib/3.12.0/test-console/assets/test-console-core.css old mode 100644 new mode 100755 similarity index 50% rename from lib/yuilib/3.9.1/build/test-console/assets/test-console-core.css rename to lib/yuilib/3.12.0/test-console/assets/test-console-core.css index 602a605951c..ece9f85175a --- a/lib/yuilib/3.9.1/build/test-console/assets/test-console-core.css +++ b/lib/yuilib/3.12.0/test-console/assets/test-console-core.css @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + .yui3-testconsole .yui3-console-entry { min-height: inherit; padding: 5px; diff --git a/lib/yuilib/3.9.1/build/test-console/test-console-debug.js b/lib/yuilib/3.12.0/test-console/test-console-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/test-console/test-console-debug.js rename to lib/yuilib/3.12.0/test-console/test-console-debug.js index 06f75edaff7..0a75301c496 --- a/lib/yuilib/3.9.1/build/test-console/test-console-debug.js +++ b/lib/yuilib/3.12.0/test-console/test-console-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('test-console', function (Y, NAME) { /** @@ -305,4 +311,4 @@ Y.namespace('Test').Console = Y.extend(TestConsole, Y.Console, { }); -}, '3.9.1', {"requires": ["console-filters", "test", "array-extras"], "skinnable": true}); +}, '3.12.0', {"requires": ["console-filters", "test", "array-extras"], "skinnable": true}); diff --git a/lib/yuilib/3.9.1/build/test-console/test-console-min.js b/lib/yuilib/3.12.0/test-console/test-console-min.js old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/test-console/test-console-min.js rename to lib/yuilib/3.12.0/test-console/test-console-min.js index dc45a297f18..3278a7f5f8e --- a/lib/yuilib/3.9.1/build/test-console/test-console-min.js +++ b/lib/yuilib/3.12.0/test-console/test-console-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("test-console",function(e,t){function n(){n.superclass.constructor.apply(this,arguments)}e.namespace("Test").Console=e.extend(n,e.Console,{initializer:function(t){this.on("entry",this._onEntry),this.plug(e.Plugin.ConsoleFilters,{category:e.merge({info:!0,pass:!1,fail:!0,status:!1},t&&t.filters||{}),defaultVisibility:!1,source:{TestRunner:!0}}),e.Test.Runner.on("complete",e.bind(this._parseCoverage,this))},_isIstanbul:function(t){var n=e.Object.keys(t)[0],r=!1;return t[n].s!==undefined&&t[n].fnMap!==undefined&&(r=!0),t.s!==undefined&&t.fnMap!==undefined&&(r=!0),r},parseYUITestCoverage:function(t){var n={lines:{hit:0,miss:0,total:0,percent:0},functions:{hit:0,miss:0,total:0,percent:0}},r;e.Object.each(t,function(e){n.lines.total+=e.coveredLines,n.lines.hit+=e.calledLines,n.lines.miss+=e.coveredLines-e.calledLines,n.lines.percent=Math.floor(n.lines.hit/n.lines.total*100),n.functions.total+=e.coveredFunctions,n.functions.hit+=e.calledFunctions,n.functions.miss+=e.coveredFunctions-e.calledFunctions,n.functions.percent=Math.floor(n.functions.hit/n.functions.total*100)}),r="Lines: Hit:"+n.lines.hit+" Missed:"+n.lines.miss+" Total:"+n.lines.total+" Percent:"+n.lines.percent+"%\n",r+="Functions: Hit:"+n.functions.hit+" Missed:"+n.functions.miss+" Total:"+n.functions.total+" Percent:"+n.functions.percent+"%",this.log("Coverage: "+r,"info","TestRunner")},_blankSummary:function(){return{lines:{total:0,covered:0,pct:"Unknown"},statements:{total:0,covered:0,pct:"Unknown"},functions:{total:0,covered:0,pct:"Unknown"},branches:{total:0,covered:0,pct:"Unknown"}}},_addDerivedInfoForFile:function(t){var n=t.statementMap,r=t.s,i;t.l||(t.l=i={},e.Object.each(r,function(e,t){var s=n[t].start.line,o=r[t],u=i[s];if(typeof u=="undefined"||u0&&(n=1e5*e/t+5,r=Math.floor(n/10)/100),r},_computeSimpleTotals:function(t,n){var r=t[n],i={total:0,covered:0};return e.Object.each(r,function(e){i.total+=1,e&&(i.covered+=1)}),i.pct=this._percent(i.covered,i.total),i},_computeBranchTotals:function(t){var n=t.b,r={total:0,covered:0};return e.Object.each(n,function(t){var n=e.Array.filter(t,function(e){return e>0});r.total+=t.length,r.covered+=n.length}),r.pct=this._percent(r.covered,r.total),r},parseIstanbul:function(t){var n=this,r="Coverage Report:\n";e.Object.each(t,function(t,i){var s=n._blankSummary();n._addDerivedInfoForFile(t),s.lines=n._computeSimpleTotals(t,"l"),s.functions=n._computeSimpleTotals(t,"f"),s.statements=n._computeSimpleTotals(t,"s"),s.branches=n._computeBranchTotals(t),r+=i+":\n",e.Array.each(["lines","functions","statements","branches"],function(e){r+=" "+e+": "+s[e].covered+"/"+s[e].total+" : "+s[e].pct+"%\n"})}),this.log(r,"info","TestRunner")},_parseCoverage:function(){var t=e.Test.Runner.getCoverage();if(!t)return;this._isIstanbul(t)?this.parseIstanbul(t):this.parseYUITestCoverage(t)},_onEntry:function(e){var t=e.message;t.category==="info"&&/\s(?:case|suite)\s|yuitests\d+|began/.test(t.message)?t.category="status":t.category==="fail"&&this.printBuffer()}},{NAME:"testConsole",ATTRS:{entryTemplate:{value:'
              {message}
              '},height:{value:"350px"},newestOnTop:{value:!1},style:{value:"block"},width:{value:e.UA.ie&&e.UA.ie<9?"100%":"inherit"}}})},"3.9.1",{requires:["console-filters","test","array-extras"],skinnable:!0}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("test-console",function(e,t){function n(){n.superclass.constructor.apply(this,arguments)}e.namespace("Test").Console=e.extend(n,e.Console,{initializer:function(t){this.on("entry",this._onEntry),this.plug(e.Plugin.ConsoleFilters,{category:e.merge({info:!0,pass:!1,fail:!0,status:!1},t&&t.filters||{}),defaultVisibility:!1,source:{TestRunner:!0}}),e.Test.Runner.on("complete",e.bind(this._parseCoverage,this))},_isIstanbul:function(t){var n=e.Object.keys(t)[0],r=!1;return t[n].s!==undefined&&t[n].fnMap!==undefined&&(r=!0),t.s!==undefined&&t.fnMap!==undefined&&(r=!0),r},parseYUITestCoverage:function(t){var n={lines:{hit:0,miss:0,total:0,percent:0},functions:{hit:0,miss:0,total:0,percent:0}},r;e.Object.each(t,function(e){n.lines.total+=e.coveredLines,n.lines.hit+=e.calledLines,n.lines.miss+=e.coveredLines-e.calledLines,n.lines.percent=Math.floor(n.lines.hit/n.lines.total*100),n.functions.total+=e.coveredFunctions,n.functions.hit+=e.calledFunctions,n.functions.miss+=e.coveredFunctions-e.calledFunctions,n.functions.percent=Math.floor(n.functions.hit/n.functions.total*100)}),r="Lines: Hit:"+n.lines.hit+" Missed:"+n.lines.miss+" Total:"+n.lines.total+" Percent:"+n.lines.percent+"%\n",r+="Functions: Hit:"+n.functions.hit+" Missed:"+n.functions.miss+" Total:"+n.functions.total+" Percent:"+n.functions.percent+"%",this.log("Coverage: "+r,"info","TestRunner")},_blankSummary:function(){return{lines:{total:0,covered:0,pct:"Unknown"},statements:{total:0,covered:0,pct:"Unknown"},functions:{total:0,covered:0,pct:"Unknown"},branches:{total:0,covered:0,pct:"Unknown"}}},_addDerivedInfoForFile:function(t){var n=t.statementMap,r=t.s,i;t.l||(t.l=i={},e.Object.each(r,function(e,t){var s=n[t].start.line,o=r[t],u=i[s];if(typeof u=="undefined"||u0&&(n=1e5*e/t+5,r=Math.floor(n/10)/100),r},_computeSimpleTotals:function(t,n){var r=t[n],i={total:0,covered:0};return e.Object.each(r,function(e){i.total+=1,e&&(i.covered+=1)}),i.pct=this._percent(i.covered,i.total),i},_computeBranchTotals:function(t){var n=t.b,r={total:0,covered:0};return e.Object.each(n,function(t){var n=e.Array.filter(t,function(e){return e>0});r.total+=t.length,r.covered+=n.length}),r.pct=this._percent(r.covered,r.total),r},parseIstanbul:function(t){var n=this,r="Coverage Report:\n";e.Object.each(t,function(t,i){var s=n._blankSummary();n._addDerivedInfoForFile(t),s.lines=n._computeSimpleTotals(t,"l"),s.functions=n._computeSimpleTotals(t,"f"),s.statements=n._computeSimpleTotals(t,"s"),s.branches=n._computeBranchTotals(t),r+=i+":\n",e.Array.each(["lines","functions","statements","branches"],function(e){r+=" "+e+": "+s[e].covered+"/"+s[e].total+" : "+s[e].pct+"%\n"})}),this.log(r,"info","TestRunner")},_parseCoverage:function(){var t=e.Test.Runner.getCoverage();if(!t)return;this._isIstanbul(t)?this.parseIstanbul(t):this.parseYUITestCoverage(t)},_onEntry:function(e){var t=e.message;t.category==="info"&&/\s(?:case|suite)\s|yuitests\d+|began/.test(t.message)?t.category="status":t.category==="fail"&&this.printBuffer()}},{NAME:"testConsole",ATTRS:{entryTemplate:{value:'
              {message}
              '},height:{value:"350px"},newestOnTop:{value:!1},style:{value:"block"},width:{value:e.UA.ie&&e.UA.ie<9?"100%":"inherit"}}})},"3.12.0",{requires:["console-filters","test","array-extras"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/test-console/test-console.js b/lib/yuilib/3.12.0/test-console/test-console.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/test-console/test-console.js rename to lib/yuilib/3.12.0/test-console/test-console.js index 06f75edaff7..0a75301c496 --- a/lib/yuilib/3.9.1/build/test-console/test-console.js +++ b/lib/yuilib/3.12.0/test-console/test-console.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('test-console', function (Y, NAME) { /** @@ -305,4 +311,4 @@ Y.namespace('Test').Console = Y.extend(TestConsole, Y.Console, { }); -}, '3.9.1', {"requires": ["console-filters", "test", "array-extras"], "skinnable": true}); +}, '3.12.0', {"requires": ["console-filters", "test", "array-extras"], "skinnable": true}); diff --git a/lib/yuilib/3.9.1/build/test/test-debug.js b/lib/yuilib/3.12.0/test/test-debug.js old mode 100644 new mode 100755 similarity index 99% rename from lib/yuilib/3.9.1/build/test/test-debug.js rename to lib/yuilib/3.12.0/test/test-debug.js index cbfa1556b06..d8cf36ca5f4 --- a/lib/yuilib/3.9.1/build/test/test-debug.js +++ b/lib/yuilib/3.12.0/test/test-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('test', function (Y, NAME) { @@ -20,7 +26,7 @@ if (YUI.YUITest) { //Make this global for back compat YUITest = { - version: "3.9.1", + version: "3.12.0", guid: function(pre) { return Y.guid(pre); } @@ -3295,14 +3301,8 @@ YUITest.ObjectAssert = { */ ownsNoKeys : function (object, message) { YUITest.Assert._increment(); - var count = 0, - name; - for (name in object){ - if (object.hasOwnProperty(name)){ - count++; - } - } - + var count = YUITest.Object.keys(object).length; + if (count !== 0){ YUITest.Assert.fail(YUITest.Assert._formatMessage(message, "Object owns " + count + " properties but should own none.")); } @@ -3764,4 +3764,4 @@ if (!YUI.YUITest) { } //End if for YUI.YUITest -}, '3.9.1', {"requires": ["event-simulate", "event-custom", "json-stringify"]}); +}, '3.12.0', {"requires": ["event-simulate", "event-custom", "json-stringify"]}); diff --git a/lib/yuilib/3.9.1/build/test/test-min.js b/lib/yuilib/3.12.0/test/test-min.js old mode 100644 new mode 100755 similarity index 67% rename from lib/yuilib/3.9.1/build/test/test-min.js rename to lib/yuilib/3.12.0/test/test-min.js index 106ad08ac48..6cc5b289b38 --- a/lib/yuilib/3.9.1/build/test/test-min.js +++ b/lib/yuilib/3.12.0/test/test-min.js @@ -1,7 +1,13 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("test",function(e,t){YUI.YUITest?e.Test=YUI.YUITest:(YUITest={version:"3.9.1",guid:function(t){return e.guid(t)}},e.namespace("Test"),YUITest.Object=e.Object,YUITest.Array=e.Array,YUITest.Util={mix:e.mix,JSON:e.JSON},YUITest.EventTarget=function(){this._handlers={}},YUITest.EventTarget.prototype={constructor:YUITest.EventTarget,attach:function(e,t){typeof this._handlers[e]=="undefined"&&(this._handlers[e]=[]),this._handlers[e].push(t)},subscribe:function(e,t){this.attach.apply(this,arguments)},fire:function(e){typeof e=="string"&&(e={type:e}),e.target||(e.target=this);if(!e.type)throw new Error("Event object missing 'type' property.");if(this._handlers[e.type]instanceof Array){var t=this._handlers[e.type];for(var n=0,r=t.length;n"'&]/g,function(e){switch(e){case"<":return"<";case">":return">";case'"':return""";case"'":return"'";case"&":return"&"}})}return{JSON:function(e){return YUITest.Util.JSON.stringify(e)},XML:function(t){function n(t){var r="<"+t.type+' name="'+e(t.name)+'"';typeof t.duration=="number"&&(r+=' duration="'+t.duration+'"');if(t.type=="test")r+=' result="'+t.result+'" message="'+e(t.message)+'">';else{r+=' passed="'+t.passed+'" failed="'+t.failed+'" ignored="'+t.ignored+'" total="'+t.total+'">';for(var i in t)t.hasOwnProperty(i)&&t[i]&&typeof t[i]=="object"&&!(t[i]instanceof Array)&&(r+=n(t[i]))}return r+="",r}return''+n(t)},JUnitXML:function(t){function n(t){var r="";switch(t.type){case"test":t.result!="ignore"&&(r='',t.result=="fail"&&(r+='"),r+="");break;case"testcase":r='';for(var i in t)t.hasOwnProperty(i)&&t[i]&&typeof t[i]=="object"&&!(t[i]instanceof Array)&&(r+=n(t[i]));r+="";break;case"testsuite":for(var i in t)t.hasOwnProperty(i)&&t[i]&&typeof t[i]=="object"&&!(t[i]instanceof Array)&&(r+=n(t[i]));break;case"report":r="";for(var i in t)t.hasOwnProperty(i)&&t[i]&&typeof t[i]=="object"&&!(t[i]instanceof Array)&&(r+=n(t[i]));r+=""}return r}return''+n(t)},TAP:function(e){function n(e){var r="";switch(e.type){case"test":e.result!="ignore"?(r="ok "+t++ +" - "+e.name,e.result=="fail"&&(r="not "+r+" - "+e.message),r+="\n"):r="#Ignored test "+e.name+"\n";break;case"testcase":r="#Begin testcase "+e.name+"("+e.failed+" failed of "+e.total+")\n";for(var i in e)e.hasOwnProperty(i)&&e[i]&&typeof e[i]=="object"&&!(e[i]instanceof Array)&&(r+=n(e[i]));r+="#End testcase "+e.name+"\n";break;case"testsuite":r="#Begin testsuite "+e.name+"("+e.failed+" failed of "+e.total+")\n";for(var i in e)e.hasOwnProperty(i)&&e[i]&&typeof e[i]=="object"&&!(e[i]instanceof Array)&&(r+=n(e[i]));r+="#End testsuite "+e.name+"\n";break;case"report":for(var i in e)e.hasOwnProperty(i)&&e[i]&&typeof e[i]=="object"&&!(e[i]instanceof Array)&&(r+=n(e[i]))}return r}var t=1;return"1.."+e.total+"\n"+n(e)}}}(),YUITest.Reporter=function(e,t){this.url=e,this.format=t||YUITest.TestFormat.XML,this._fields=new Object,this._form=null,this._iframe=null},YUITest.Reporter.prototype={constructor:YUITest.Reporter,addField:function(e,t){this._fields[e]=t},clearFields:function(){this._fields=new Object},destroy:function(){this._form&&(this._form.parentNode.removeChild(this._form),this._form=null),this._iframe&&(this._iframe.parentNode.removeChild(this._iframe),this._iframe=null),this._fields=null},report:function(e){if(!this._form){this._form=document.createElement("form"),this._form.method="post",this._form.style.visibility="hidden",this._form.style.position="absolute",this._form.style.top=0,document.body.appendChild(this._form);try{this._iframe=document.createElement('',O.prototype={initializer:function(){this._stackNode=this.get(f),this._stackHandles={},e.after(this._renderUIStack,this,l),e.after(this._syncUIStack,this,h),e.after(this._bindUIStack,this,c)},_syncUIStack:function(){this._uiSetShim(this.get(u)),this._uiSetZIndex(this.get(o))},_bindUIStack:function(){this.after(C,this._afterShimChange),this.after(k,this._afterZIndexChange)},_renderUIStack:function(){this._stackNode.addClass(O.STACKED_CLASS_NAME)},_parseZIndex:function(e){var t;return!e.inDoc()||e.getStyle("position")==="static"?t="auto":t=e.getComputedStyle("zIndex"),t==="auto"?null:t},_setZIndex:function(e){return n.isString(e)&&(e=parseInt(e,10)),n.isNumber(e)||(e=0),e},_afterShimChange:function(e){this._uiSetShim(e.newVal)},_afterZIndexChange:function(e){this._uiSetZIndex(e.newVal)},_uiSetZIndex:function(e){this._stackNode.setStyle(o,e)},_uiSetShim:function(e){e?(this.get(a)?this._renderShim():this._renderShimDeferred(),r.ie==6&&this._addShimResizeHandlers()):this._destroyShim()},_renderShimDeferred:function(){this._stackHandles[E]=this._stackHandles[E]||[];var e=this._stackHandles[E],t=function(e){e.newVal&&this._renderShim()};e.push(this.on(x,t))},_addShimResizeHandlers:function(){this._stackHandles[S]=this._stackHandles[S]||[];var e=this.sizeShim,t=this._stackHandles[S];t.push(this.after(x,e)),t.push(this.after(T,e)),t.push(this.after(N,e)),t.push(this.after(L,e))},_detachStackHandles:function(e){var t=this._stackHandles[e],n;if(t&&t.length>0)while(n=t.pop())n.detach()},_renderShim:function(){var e=this._shimNode,t=this._stackNode;e||(e=this._shimNode=this._getShimTemplate(),t.insertBefore(e,t.get(m)),this._detachStackHandles(E),this.sizeShim())},_destroyShim:function(){this._shimNode&&(this._shimNode.get(v).removeChild(this._shimNode),this._shimNode=null,this._detachStackHandles(E),this._detachStackHandles(S))},sizeShim:function(){var e=this._shimNode,t=this._stackNode;e&&r.ie===6&&this.get(a)&&(e.setStyle(y,t.get(p)+w),e.setStyle(b,t.get(d)+w))},_getShimTemplate:function(){return i.create(O.SHIM_TEMPLATE,this._stackNode.get(g))}},e.WidgetStack=O},"3.12.0",{requires:["base-build","widget"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/widget-stack/widget-stack.js b/lib/yuilib/3.12.0/widget-stack/widget-stack.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/widget-stack/widget-stack.js rename to lib/yuilib/3.12.0/widget-stack/widget-stack.js index e7120c03de9..e05934029f1 --- a/lib/yuilib/3.9.1/build/widget-stack/widget-stack.js +++ b/lib/yuilib/3.12.0/widget-stack/widget-stack.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('widget-stack', function (Y, NAME) { /** @@ -54,15 +60,7 @@ YUI.add('widget-stack', function (Y, NAME) { * @class WidgetStack * @param {Object} User configuration object */ - function Stack(config) { - this._stackNode = this.get(BOUNDING_BOX); - this._stackHandles = {}; - - // WIDGET METHOD OVERLAP - Y.after(this._renderUIStack, this, RENDER_UI); - Y.after(this._syncUIStack, this, SYNC_UI); - Y.after(this._bindUIStack, this, BIND_UI); - } + function Stack(config) {} // Static Properties /** @@ -143,6 +141,16 @@ YUI.add('widget-stack', function (Y, NAME) { Stack.prototype = { + initializer : function() { + this._stackNode = this.get(BOUNDING_BOX); + this._stackHandles = {}; + + // WIDGET METHOD OVERLAP + Y.after(this._renderUIStack, this, RENDER_UI); + Y.after(this._syncUIStack, this, SYNC_UI); + Y.after(this._bindUIStack, this, BIND_UI); + }, + /** * Synchronizes the UI to match the Widgets stack state. This method in * invoked after syncUI is invoked for the Widget class using YUI's aop infrastructure. @@ -436,4 +444,4 @@ YUI.add('widget-stack', function (Y, NAME) { Y.WidgetStack = Stack; -}, '3.9.1', {"requires": ["base-build", "widget"], "skinnable": true}); +}, '3.12.0', {"requires": ["base-build", "widget"], "skinnable": true}); diff --git a/lib/yuilib/3.9.1/build/widget-stdmod/widget-stdmod-debug.js b/lib/yuilib/3.12.0/widget-stdmod/widget-stdmod-debug.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/widget-stdmod/widget-stdmod-debug.js rename to lib/yuilib/3.12.0/widget-stdmod/widget-stdmod-debug.js index bd606b247e8..730e49ccbaa --- a/lib/yuilib/3.9.1/build/widget-stdmod/widget-stdmod-debug.js +++ b/lib/yuilib/3.12.0/widget-stdmod/widget-stdmod-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('widget-stdmod', function (Y, NAME) { /** @@ -60,14 +66,7 @@ YUI.add('widget-stdmod', function (Y, NAME) { * @class WidgetStdMod * @param {Object} The user configuration object */ - function StdMod(config) { - - this._stdModNode = this.get(CONTENT_BOX); - - Y.before(this._renderUIStdMod, this, RENDERUI); - Y.before(this._bindUIStdMod, this, BINDUI); - Y.before(this._syncUIStdMod, this, SYNCUI); - } + function StdMod(config) {} /** * Constant used to refer the the standard module header, in methods which expect a section specifier @@ -257,6 +256,14 @@ YUI.add('widget-stdmod', function (Y, NAME) { StdMod.prototype = { + initializer : function() { + this._stdModNode = this.get(CONTENT_BOX); + + Y.before(this._renderUIStdMod, this, RENDERUI); + Y.before(this._bindUIStdMod, this, BINDUI); + Y.before(this._syncUIStdMod, this, SYNCUI); + }, + /** * Synchronizes the UI to match the Widgets standard module state. *

              @@ -434,7 +441,7 @@ YUI.add('widget-stdmod', function (Y, NAME) { if (this.get(FILL_HEIGHT)) { var height = this.get(HEIGHT); if (height != EMPTY && height != AUTO) { - this.fillHeight(this._currFillNode); + this.fillHeight(this.getStdModNode(this.get(FILL_HEIGHT))); } } }, @@ -777,4 +784,4 @@ YUI.add('widget-stdmod', function (Y, NAME) { Y.WidgetStdMod = StdMod; -}, '3.9.1', {"requires": ["base-build", "widget"]}); +}, '3.12.0', {"requires": ["base-build", "widget"]}); diff --git a/lib/yuilib/3.12.0/widget-stdmod/widget-stdmod-min.js b/lib/yuilib/3.12.0/widget-stdmod/widget-stdmod-min.js new file mode 100755 index 00000000000..53433787b3e --- /dev/null +++ b/lib/yuilib/3.12.0/widget-stdmod/widget-stdmod-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("widget-stdmod",function(e,t){function H(e){}var n=e.Lang,r=e.Node,i=e.UA,s=e.Widget,o="",u="hd",a="bd",f="ft",l="header",c="body",h="footer",p="fillHeight",d="stdmod",v="Node",m="Content",g="firstChild",y="childNodes",b="ownerDocument",w="contentBox",E="height",S="offsetHeight",x="auto",T="headerContentChange",N="bodyContentChange",C="footerContentChange",k="fillHeightChange",L="heightChange",A="contentUpdate",O="renderUI",M="bindUI",_="syncUI",D="_applyParsedConfig",P=e.Widget.UI_SRC;H.HEADER=l,H.BODY=c,H.FOOTER=h,H.AFTER="after",H.BEFORE="before",H.REPLACE="replace";var B=H.HEADER,j=H.BODY,F=H.FOOTER,I=B+m,q=F+m,R=j+m;H.ATTRS={headerContent:{value:null},footerContent:{value:null},bodyContent:{value:null},fillHeight:{value:H.BODY,validator:function(e){return this._validateFillHeight(e)}}},H.HTML_PARSER={headerContent:function(e){return this._parseStdModHTML(B)},bodyContent:function(e){return this._parseStdModHTML(j)},footerContent:function(e){return this._parseStdModHTML(F)}},H.SECTION_CLASS_NAMES={header:s.getClassName(u),body:s.getClassName(a),footer:s.getClassName(f)},H.TEMPLATES={header:'

              ',body:'
              ',footer:'
              '},H.prototype={initializer:function(){this._stdModNode=this.get(w),e.before(this._renderUIStdMod,this,O),e.before(this._bindUIStdMod,this,M),e.before(this._syncUIStdMod,this,_)},_syncUIStdMod:function(){var e=this._stdModParsed;(!e||!e[I])&&this._uiSetStdMod(B,this.get(I)),(!e||!e[R])&&this._uiSetStdMod(j,this.get(R)),(!e||!e[q])&&this._uiSetStdMod(F,this.get(q)),this._uiSetFillHeight(this.get(p))},_renderUIStdMod:function(){this._stdModNode.addClass(s.getClassName(d)),this._renderStdModSections(),this.after(T,this._afterHeaderChange),this.after(N,this._afterBodyChange),this.after(C,this._afterFooterChange)},_renderStdModSections:function(){n.isValue(this.get(I))&&this._renderStdMod(B),n.isValue(this.get(R))&&this._renderStdMod(j),n.isValue(this.get(q))&&this._renderStdMod(F)},_bindUIStdMod:function(){this.after(k,this._afterFillHeightChange),this.after(L,this._fillHeight),this.after(A,this._fillHeight)},_afterHeaderChange:function(e){e.src!==P&&this._uiSetStdMod(B,e.newVal,e.stdModPosition)},_afterBodyChange:function(e){e.src!==P&&this._uiSetStdMod(j,e.newVal,e.stdModPosition)},_afterFooterChange:function(e){e.src!==P&&this._uiSetStdMod(F,e.newVal,e.stdModPosition)},_afterFillHeightChange:function(e){this._uiSetFillHeight(e.newVal)},_validateFillHeight:function(e){return!e||e==H.BODY||e==H.HEADER||e==H.FOOTER},_uiSetFillHeight:function(e){var t=this.getStdModNode(e),n=this._currFillNode;n&&t!==n&&n.setStyle(E,o),t&&(this._currFillNode=t),this._fillHeight()},_fillHeight:function(){if(this.get(p)){var e=this.get(E);e!=o&&e!=x&&this.fillHeight(this.getStdModNode(this.get(p)))}},_uiSetStdMod:function(e,t,r){if(n.isValue(t)){var i=this.getStdModNode(e,!0);this._addStdModContent(i,t,r),this.set(e+m,this._getStdModContent(e),{src:P})}else this._eraseStdMod(e);this.fire(A)},_renderStdMod:function(e){var t=this.get(w),n=this._findStdModSection(e);return n||(n=this._getStdModTemplate(e)),this._insertStdModSection(t,e,n),this[e+v]=n,this[e+v]},_eraseStdMod:function(e){var t=this.getStdModNode(e);t&&(t.remove(!0),delete this[e+v])},_insertStdModSection:function(e,t,n){var r=e.get(g);if(t===F||!r)e.appendChild(n);else if(t===B)e.insertBefore(n,r);else{var i=this[F+v];i?e.insertBefore(n,i):e.appendChild(n)}},_getStdModTemplate:function(e){return r.create(H.TEMPLATES[e],this._stdModNode.get(b))},_addStdModContent:function(e,t,n){switch(n){case H.BEFORE:n=0;break;case H.AFTER:n=undefined;break;default:n=H.REPLACE}e.insert(t,n)},_getPreciseHeight:function(e){var t=e?e.get(S):0,n="getBoundingClientRect";if(e&&e.hasMethod(n)){var r=e.invoke(n);r&&(t=r.bottom-r.top)}return t},_findStdModSection:function(e){return this.get(w).one("> ."+H.SECTION_CLASS_NAMES[e])},_parseStdModHTML:function(t){var n=this._findStdModSection(t);return n?(this._stdModParsed||(this._stdModParsed={},e.before(this._applyStdModParsedConfig,this,D)),this._stdModParsed[t+m]=1,n.get("innerHTML")):null},_applyStdModParsedConfig:function(e,t,n){var r=this._stdModParsed;r&&(r[I]=!(I in t)&&I in r,r[R]=!(R in t)&&R in r,r[q]=!(q in t)&&q in r)},_getStdModContent:function(e){return this[e+v]?this[e+v].get(y):null},setStdModContent:function(e,t,n){this.set(e+m,t,{stdModPosition:n})},getStdModNode:function(e,t){var n=this[e+v]||null;return!n&&t&&(n=this._renderStdMod(e)),n},fillHeight:function(e){if(e){var t=this.get(w),r=[this.headerNode,this.bodyNode,this.footerNode],s,o,u=0,a=0,f=!1;for(var l=0,c=r.length;l=0&&e.set(S,a)))}}},e.WidgetStdMod=H},"3.12.0",{requires:["base-build","widget"]}); diff --git a/lib/yuilib/3.9.1/build/widget-stdmod/widget-stdmod.js b/lib/yuilib/3.12.0/widget-stdmod/widget-stdmod.js old mode 100644 new mode 100755 similarity index 98% rename from lib/yuilib/3.9.1/build/widget-stdmod/widget-stdmod.js rename to lib/yuilib/3.12.0/widget-stdmod/widget-stdmod.js index bd606b247e8..730e49ccbaa --- a/lib/yuilib/3.9.1/build/widget-stdmod/widget-stdmod.js +++ b/lib/yuilib/3.12.0/widget-stdmod/widget-stdmod.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('widget-stdmod', function (Y, NAME) { /** @@ -60,14 +66,7 @@ YUI.add('widget-stdmod', function (Y, NAME) { * @class WidgetStdMod * @param {Object} The user configuration object */ - function StdMod(config) { - - this._stdModNode = this.get(CONTENT_BOX); - - Y.before(this._renderUIStdMod, this, RENDERUI); - Y.before(this._bindUIStdMod, this, BINDUI); - Y.before(this._syncUIStdMod, this, SYNCUI); - } + function StdMod(config) {} /** * Constant used to refer the the standard module header, in methods which expect a section specifier @@ -257,6 +256,14 @@ YUI.add('widget-stdmod', function (Y, NAME) { StdMod.prototype = { + initializer : function() { + this._stdModNode = this.get(CONTENT_BOX); + + Y.before(this._renderUIStdMod, this, RENDERUI); + Y.before(this._bindUIStdMod, this, BINDUI); + Y.before(this._syncUIStdMod, this, SYNCUI); + }, + /** * Synchronizes the UI to match the Widgets standard module state. *

              @@ -434,7 +441,7 @@ YUI.add('widget-stdmod', function (Y, NAME) { if (this.get(FILL_HEIGHT)) { var height = this.get(HEIGHT); if (height != EMPTY && height != AUTO) { - this.fillHeight(this._currFillNode); + this.fillHeight(this.getStdModNode(this.get(FILL_HEIGHT))); } } }, @@ -777,4 +784,4 @@ YUI.add('widget-stdmod', function (Y, NAME) { Y.WidgetStdMod = StdMod; -}, '3.9.1', {"requires": ["base-build", "widget"]}); +}, '3.12.0', {"requires": ["base-build", "widget"]}); diff --git a/lib/yuilib/3.9.1/build/widget-uievents/widget-uievents-debug.js b/lib/yuilib/3.12.0/widget-uievents/widget-uievents-debug.js old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/widget-uievents/widget-uievents-debug.js rename to lib/yuilib/3.12.0/widget-uievents/widget-uievents-debug.js index b13d221cfc9..42892290157 --- a/lib/yuilib/3.9.1/build/widget-uievents/widget-uievents-debug.js +++ b/lib/yuilib/3.12.0/widget-uievents/widget-uievents-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('widget-uievents', function (Y, NAME) { /** @@ -38,7 +44,7 @@ Y.mix(Widget.prototype, { // event listener. delete info.instances[widgetGuid]; - // There are no more Widget instances using this delegated + // There are no more Widget instances using this delegated // event listener, so detach it. if (Y.Object.isEmpty(info.instances)) { @@ -53,7 +59,7 @@ Y.mix(Widget.prototype, { }, /** - * Map of DOM events that should be fired as Custom Events by the + * Map of DOM events that should be fired as Custom Events by the * Widget instance. * * @property UI_EVENTS @@ -74,12 +80,12 @@ Y.mix(Widget.prototype, { }, /** - * Binds a delegated DOM event listener of the specified type to the + * Binds a delegated DOM event listener of the specified type to the * Widget's outtermost DOM element to facilitate the firing of a Custom - * Event of the same type for the Widget instance. + * Event of the same type for the Widget instance. * * @method _createUIEvent - * @for Widget + * @for Widget * @param type {String} String representing the name of the event * @private */ @@ -120,27 +126,27 @@ Y.mix(Widget.prototype, { /** * This method is used to determine if we should fire * the UI Event or not. The default implementation makes sure - * that for nested delegates (nested unrelated widgets), we don't + * that for nested delegates (nested unrelated widgets), we don't * fire the UI event listener more than once at each level. * - *

              For example, without the additional filter, if you have nested - * widgets, each widget will have a delegate listener. If you - * click on the inner widget, the inner delegate listener's - * filter will match once, but the outer will match twice - * (based on delegate's design) - once for the inner widget, + *

              For example, without the additional filter, if you have nested + * widgets, each widget will have a delegate listener. If you + * click on the inner widget, the inner delegate listener's + * filter will match once, but the outer will match twice + * (based on delegate's design) - once for the inner widget, * and once for the outer.

              * * @method _filterUIEvent - * @for Widget + * @for Widget * @param {DOMEventFacade} evt * @return {boolean} true if it's OK to fire the custom UI event, false if not. * @private - * + * */ _filterUIEvent: function(evt) { - // Either it's hitting this widget's delegate container (and not some other widget's), + // Either it's hitting this widget's delegate container (and not some other widget's), // or the container it's hitting is handling this widget's ui events. - return (evt.currentTarget.compareTo(evt.container) || evt.container.compareTo(this._getUIEventNode())); + return (evt.currentTarget.compareTo(evt.container) || evt.container.compareTo(this._getUIEventNode())); }, /** @@ -148,9 +154,9 @@ Y.mix(Widget.prototype, { * * @private * @method _isUIEvent - * @for Widget + * @for Widget * @param type {String} String representing the name of the event - * @return {String} Event Returns the name of the UI Event, otherwise + * @return {String} Event Returns the name of the UI Event, otherwise * undefined. */ _getUIEvent: function (type) { @@ -178,12 +184,12 @@ Y.mix(Widget.prototype, { /** * Sets up infrastructure required to fire a UI event. - * + * * @private * @method _initUIEvent * @for Widget * @param type {String} String representing the name of the event - * @return {String} + * @return {String} */ _initUIEvent: function (type) { var sType = this._getUIEvent(type), @@ -194,7 +200,7 @@ Y.mix(Widget.prototype, { this._uiEvtsInitQueue = queue[sType] = 1; - this.after(RENDER, function() { + this.after(RENDER, function() { this._createUIEvent(sType); delete this._uiEvtsInitQueue[sType]; }); @@ -203,7 +209,7 @@ Y.mix(Widget.prototype, { // Override of "on" from Base to facilitate the firing of Widget events // based on DOM events of the same name/type (e.g. "click", "mouseover"). - // Temporary solution until we have the ability to listen to when + // Temporary solution until we have the ability to listen to when // someone adds an event listener (bug 2528230) on: function (type) { this._initUIEvent(type); @@ -211,18 +217,18 @@ Y.mix(Widget.prototype, { }, // Override of "publish" from Base to facilitate the firing of Widget events - // based on DOM events of the same name/type (e.g. "click", "mouseover"). - // Temporary solution until we have the ability to listen to when - // someone publishes an event (bug 2528230) + // based on DOM events of the same name/type (e.g. "click", "mouseover"). + // Temporary solution until we have the ability to listen to when + // someone publishes an event (bug 2528230) publish: function (type, config) { var sType = this._getUIEvent(type); if (sType && config && config.defaultFn) { this._initUIEvent(sType); - } + } return Widget.superclass.publish.apply(this, arguments); } }, true); // overwrite existing EventTarget methods -}, '3.9.1', {"requires": ["node-event-delegate", "widget-base"]}); +}, '3.12.0', {"requires": ["node-event-delegate", "widget-base"]}); diff --git a/lib/yuilib/3.9.1/build/widget-uievents/widget-uievents-min.js b/lib/yuilib/3.12.0/widget-uievents/widget-uievents-min.js old mode 100644 new mode 100755 similarity index 87% rename from lib/yuilib/3.9.1/build/widget-uievents/widget-uievents-min.js rename to lib/yuilib/3.12.0/widget-uievents/widget-uievents-min.js index 7d9b9d9d32f..5a11b4eedc5 --- a/lib/yuilib/3.9.1/build/widget-uievents/widget-uievents-min.js +++ b/lib/yuilib/3.12.0/widget-uievents/widget-uievents-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("widget-uievents",function(e,t){var n="boundingBox",r=e.Widget,i="render",s=e.Lang,o=":",u=e.Widget._uievts=e.Widget._uievts||{};e.mix(r.prototype,{_destroyUIEvents:function(){var t=e.stamp(this,!0);e.each(u,function(n,r){n.instances[t]&&(delete n.instances[t],e.Object.isEmpty(n.instances)&&(n.handle.detach(),u[r]&&delete u[r]))})},UI_EVENTS:e.Node.DOM_EVENTS,_getUIEventNode:function(){return this.get(n)},_createUIEvent:function(t){var n=this._getUIEventNode(),i=e.stamp(n)+t,s=u[i],o;s||(o=n.delegate(t,function(e){var t=r.getByNode(this);t&&t._filterUIEvent(e)&&t.fire(e.type,{domEvent:e})},"."+e.Widget.getClassName()),u[i]=s={instances:{},handle:o}),s.instances[e.stamp(this)]=1},_filterUIEvent:function(e){return e.currentTarget.compareTo(e.container)||e.container.compareTo(this._getUIEventNode())},_getUIEvent:function(e){if(s.isString(e)){var t=this.parseType(e)[1],n,r;return t&&(n=t.indexOf(o),n>-1&&(t=t.substring(n+o.length)),this.UI_EVENTS[t]&&(r=t)),r}},_initUIEvent:function(e){var t=this._getUIEvent(e),n=this._uiEvtsInitQueue||{};t&&!n[t]&&(this._uiEvtsInitQueue=n[t]=1,this.after(i,function(){this._createUIEvent(t),delete this._uiEvtsInitQueue[t]}))},on:function(e){return this._initUIEvent(e),r.superclass.on.apply(this,arguments)},publish:function(e,t){var n=this._getUIEvent(e);return n&&t&&t.defaultFn&&this._initUIEvent(n),r.superclass.publish.apply(this,arguments)}},!0)},"3.9.1",{requires:["node-event-delegate","widget-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("widget-uievents",function(e,t){var n="boundingBox",r=e.Widget,i="render",s=e.Lang,o=":",u=e.Widget._uievts=e.Widget._uievts||{};e.mix(r.prototype,{_destroyUIEvents:function(){var t=e.stamp(this,!0);e.each(u,function(n,r){n.instances[t]&&(delete n.instances[t],e.Object.isEmpty(n.instances)&&(n.handle.detach(),u[r]&&delete u[r]))})},UI_EVENTS:e.Node.DOM_EVENTS,_getUIEventNode:function(){return this.get(n)},_createUIEvent:function(t){var n=this._getUIEventNode(),i=e.stamp(n)+t,s=u[i],o;s||(o=n.delegate(t,function(e){var t=r.getByNode(this);t&&t._filterUIEvent(e)&&t.fire(e.type,{domEvent:e})},"."+e.Widget.getClassName()),u[i]=s={instances:{},handle:o}),s.instances[e.stamp(this)]=1},_filterUIEvent:function(e){return e.currentTarget.compareTo(e.container)||e.container.compareTo(this._getUIEventNode())},_getUIEvent:function(e){if(s.isString(e)){var t=this.parseType(e)[1],n,r;return t&&(n=t.indexOf(o),n>-1&&(t=t.substring(n+o.length)),this.UI_EVENTS[t]&&(r=t)),r}},_initUIEvent:function(e){var t=this._getUIEvent(e),n=this._uiEvtsInitQueue||{};t&&!n[t]&&(this._uiEvtsInitQueue=n[t]=1,this.after(i,function(){this._createUIEvent(t),delete this._uiEvtsInitQueue[t]}))},on:function(e){return this._initUIEvent(e),r.superclass.on.apply(this,arguments)},publish:function(e,t){var n=this._getUIEvent(e);return n&&t&&t.defaultFn&&this._initUIEvent(n),r.superclass.publish.apply(this,arguments)}},!0)},"3.12.0",{requires:["node-event-delegate","widget-base"]}); diff --git a/lib/yuilib/3.9.1/build/widget-uievents/widget-uievents.js b/lib/yuilib/3.12.0/widget-uievents/widget-uievents.js old mode 100644 new mode 100755 similarity index 89% rename from lib/yuilib/3.9.1/build/widget-uievents/widget-uievents.js rename to lib/yuilib/3.12.0/widget-uievents/widget-uievents.js index e07f0a2b17b..f32a1bc4ace --- a/lib/yuilib/3.9.1/build/widget-uievents/widget-uievents.js +++ b/lib/yuilib/3.12.0/widget-uievents/widget-uievents.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('widget-uievents', function (Y, NAME) { /** @@ -38,7 +44,7 @@ Y.mix(Widget.prototype, { // event listener. delete info.instances[widgetGuid]; - // There are no more Widget instances using this delegated + // There are no more Widget instances using this delegated // event listener, so detach it. if (Y.Object.isEmpty(info.instances)) { @@ -53,7 +59,7 @@ Y.mix(Widget.prototype, { }, /** - * Map of DOM events that should be fired as Custom Events by the + * Map of DOM events that should be fired as Custom Events by the * Widget instance. * * @property UI_EVENTS @@ -74,12 +80,12 @@ Y.mix(Widget.prototype, { }, /** - * Binds a delegated DOM event listener of the specified type to the + * Binds a delegated DOM event listener of the specified type to the * Widget's outtermost DOM element to facilitate the firing of a Custom - * Event of the same type for the Widget instance. + * Event of the same type for the Widget instance. * * @method _createUIEvent - * @for Widget + * @for Widget * @param type {String} String representing the name of the event * @private */ @@ -120,27 +126,27 @@ Y.mix(Widget.prototype, { /** * This method is used to determine if we should fire * the UI Event or not. The default implementation makes sure - * that for nested delegates (nested unrelated widgets), we don't + * that for nested delegates (nested unrelated widgets), we don't * fire the UI event listener more than once at each level. * - *

              For example, without the additional filter, if you have nested - * widgets, each widget will have a delegate listener. If you - * click on the inner widget, the inner delegate listener's - * filter will match once, but the outer will match twice - * (based on delegate's design) - once for the inner widget, + *

              For example, without the additional filter, if you have nested + * widgets, each widget will have a delegate listener. If you + * click on the inner widget, the inner delegate listener's + * filter will match once, but the outer will match twice + * (based on delegate's design) - once for the inner widget, * and once for the outer.

              * * @method _filterUIEvent - * @for Widget + * @for Widget * @param {DOMEventFacade} evt * @return {boolean} true if it's OK to fire the custom UI event, false if not. * @private - * + * */ _filterUIEvent: function(evt) { - // Either it's hitting this widget's delegate container (and not some other widget's), + // Either it's hitting this widget's delegate container (and not some other widget's), // or the container it's hitting is handling this widget's ui events. - return (evt.currentTarget.compareTo(evt.container) || evt.container.compareTo(this._getUIEventNode())); + return (evt.currentTarget.compareTo(evt.container) || evt.container.compareTo(this._getUIEventNode())); }, /** @@ -148,9 +154,9 @@ Y.mix(Widget.prototype, { * * @private * @method _isUIEvent - * @for Widget + * @for Widget * @param type {String} String representing the name of the event - * @return {String} Event Returns the name of the UI Event, otherwise + * @return {String} Event Returns the name of the UI Event, otherwise * undefined. */ _getUIEvent: function (type) { @@ -178,12 +184,12 @@ Y.mix(Widget.prototype, { /** * Sets up infrastructure required to fire a UI event. - * + * * @private * @method _initUIEvent * @for Widget * @param type {String} String representing the name of the event - * @return {String} + * @return {String} */ _initUIEvent: function (type) { var sType = this._getUIEvent(type), @@ -193,7 +199,7 @@ Y.mix(Widget.prototype, { this._uiEvtsInitQueue = queue[sType] = 1; - this.after(RENDER, function() { + this.after(RENDER, function() { this._createUIEvent(sType); delete this._uiEvtsInitQueue[sType]; }); @@ -202,7 +208,7 @@ Y.mix(Widget.prototype, { // Override of "on" from Base to facilitate the firing of Widget events // based on DOM events of the same name/type (e.g. "click", "mouseover"). - // Temporary solution until we have the ability to listen to when + // Temporary solution until we have the ability to listen to when // someone adds an event listener (bug 2528230) on: function (type) { this._initUIEvent(type); @@ -210,18 +216,18 @@ Y.mix(Widget.prototype, { }, // Override of "publish" from Base to facilitate the firing of Widget events - // based on DOM events of the same name/type (e.g. "click", "mouseover"). - // Temporary solution until we have the ability to listen to when - // someone publishes an event (bug 2528230) + // based on DOM events of the same name/type (e.g. "click", "mouseover"). + // Temporary solution until we have the ability to listen to when + // someone publishes an event (bug 2528230) publish: function (type, config) { var sType = this._getUIEvent(type); if (sType && config && config.defaultFn) { this._initUIEvent(sType); - } + } return Widget.superclass.publish.apply(this, arguments); } }, true); // overwrite existing EventTarget methods -}, '3.9.1', {"requires": ["node-event-delegate", "widget-base"]}); +}, '3.12.0', {"requires": ["node-event-delegate", "widget-base"]}); diff --git a/lib/yuilib/3.9.1/build/yql-jsonp/yql-jsonp-debug.js b/lib/yuilib/3.12.0/yql-jsonp/yql-jsonp-debug.js old mode 100644 new mode 100755 similarity index 79% rename from lib/yuilib/3.9.1/build/yql-jsonp/yql-jsonp-debug.js rename to lib/yuilib/3.12.0/yql-jsonp/yql-jsonp-debug.js index e9b7cbb4c76..5ec329d93f8 --- a/lib/yuilib/3.9.1/build/yql-jsonp/yql-jsonp-debug.js +++ b/lib/yuilib/3.12.0/yql-jsonp/yql-jsonp-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yql-jsonp', function (Y, NAME) { /** @@ -27,4 +33,4 @@ Y.YQLRequest.prototype._send = function (url, o) { -}, '3.9.1', {"requires": ["jsonp", "jsonp-url"]}); +}, '3.12.0', {"requires": ["jsonp", "jsonp-url"]}); diff --git a/lib/yuilib/3.9.1/build/yql-jsonp/yql-jsonp-min.js b/lib/yuilib/3.12.0/yql-jsonp/yql-jsonp-min.js old mode 100644 new mode 100755 similarity index 57% rename from lib/yuilib/3.9.1/build/yql-jsonp/yql-jsonp-min.js rename to lib/yuilib/3.12.0/yql-jsonp/yql-jsonp-min.js index 97cd6e472dd..d7f2e567271 --- a/lib/yuilib/3.9.1/build/yql-jsonp/yql-jsonp-min.js +++ b/lib/yuilib/3.12.0/yql-jsonp/yql-jsonp-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("yql-jsonp",function(e,t){e.YQLRequest.prototype._send=function(t,n){n.allowCache!==!1&&(n.allowCache=!0),this._jsonp?(this._jsonp.url=t,n.on&&n.on.success&&(this._jsonp._config.on.success=n.on.success),this._jsonp.send()):this._jsonp=e.jsonp(t,n)}},"3.9.1",{requires:["jsonp","jsonp-url"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("yql-jsonp",function(e,t){e.YQLRequest.prototype._send=function(t,n){n.allowCache!==!1&&(n.allowCache=!0),this._jsonp?(this._jsonp.url=t,n.on&&n.on.success&&(this._jsonp._config.on.success=n.on.success),this._jsonp.send()):this._jsonp=e.jsonp(t,n)}},"3.12.0",{requires:["jsonp","jsonp-url"]}); diff --git a/lib/yuilib/3.9.1/build/yql-jsonp/yql-jsonp.js b/lib/yuilib/3.12.0/yql-jsonp/yql-jsonp.js old mode 100644 new mode 100755 similarity index 79% rename from lib/yuilib/3.9.1/build/yql-jsonp/yql-jsonp.js rename to lib/yuilib/3.12.0/yql-jsonp/yql-jsonp.js index e9b7cbb4c76..5ec329d93f8 --- a/lib/yuilib/3.9.1/build/yql-jsonp/yql-jsonp.js +++ b/lib/yuilib/3.12.0/yql-jsonp/yql-jsonp.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yql-jsonp', function (Y, NAME) { /** @@ -27,4 +33,4 @@ Y.YQLRequest.prototype._send = function (url, o) { -}, '3.9.1', {"requires": ["jsonp", "jsonp-url"]}); +}, '3.12.0', {"requires": ["jsonp", "jsonp-url"]}); diff --git a/lib/yuilib/3.9.1/build/yql-nodejs/yql-nodejs-debug.js b/lib/yuilib/3.12.0/yql-nodejs/yql-nodejs-debug.js old mode 100644 new mode 100755 similarity index 82% rename from lib/yuilib/3.9.1/build/yql-nodejs/yql-nodejs-debug.js rename to lib/yuilib/3.12.0/yql-nodejs/yql-nodejs-debug.js index 5aa1d26ccca..051355eaa7c --- a/lib/yuilib/3.9.1/build/yql-nodejs/yql-nodejs-debug.js +++ b/lib/yuilib/3.12.0/yql-nodejs/yql-nodejs-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yql-nodejs', function (Y, NAME) { /** @@ -28,4 +34,4 @@ Y.YQLRequest.prototype._send = function (url, o) { }; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/yql-nodejs/yql-nodejs-min.js b/lib/yuilib/3.12.0/yql-nodejs/yql-nodejs-min.js old mode 100644 new mode 100755 similarity index 50% rename from lib/yuilib/3.9.1/build/yql-nodejs/yql-nodejs-min.js rename to lib/yuilib/3.12.0/yql-nodejs/yql-nodejs-min.js index b4756d33811..234645a4a6a --- a/lib/yuilib/3.9.1/build/yql-nodejs/yql-nodejs-min.js +++ b/lib/yuilib/3.12.0/yql-nodejs/yql-nodejs-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("yql-nodejs",function(e,t){var n=require("request");e.YQLRequest.prototype._send=function(e,t){n(e,{method:"GET",timeout:t.timeout||3e4},function(e,n){e?t.on.success({error:e}):t.on.success(JSON.parse(n.body))})}},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("yql-nodejs",function(e,t){var n=require("request");e.YQLRequest.prototype._send=function(e,t){n(e,{method:"GET",timeout:t.timeout||3e4},function(e,n){e?t.on.success({error:e}):t.on.success(JSON.parse(n.body))})}},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/yql-nodejs/yql-nodejs.js b/lib/yuilib/3.12.0/yql-nodejs/yql-nodejs.js old mode 100644 new mode 100755 similarity index 82% rename from lib/yuilib/3.9.1/build/yql-nodejs/yql-nodejs.js rename to lib/yuilib/3.12.0/yql-nodejs/yql-nodejs.js index 5aa1d26ccca..051355eaa7c --- a/lib/yuilib/3.9.1/build/yql-nodejs/yql-nodejs.js +++ b/lib/yuilib/3.12.0/yql-nodejs/yql-nodejs.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yql-nodejs', function (Y, NAME) { /** @@ -28,4 +34,4 @@ Y.YQLRequest.prototype._send = function (url, o) { }; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/yql-winjs/yql-winjs-debug.js b/lib/yuilib/3.12.0/yql-winjs/yql-winjs-debug.js old mode 100644 new mode 100755 similarity index 85% rename from lib/yuilib/3.9.1/build/yql-winjs/yql-winjs-debug.js rename to lib/yuilib/3.12.0/yql-winjs/yql-winjs-debug.js index 69600a4cb1a..37853918417 --- a/lib/yuilib/3.9.1/build/yql-winjs/yql-winjs-debug.js +++ b/lib/yuilib/3.12.0/yql-winjs/yql-winjs-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yql-winjs', function (Y, NAME) { /** @@ -32,4 +38,4 @@ Y.YQLRequest.prototype._send = function (url, o) { }; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/yql-winjs/yql-winjs-min.js b/lib/yuilib/3.12.0/yql-winjs/yql-winjs-min.js old mode 100644 new mode 100755 similarity index 66% rename from lib/yuilib/3.9.1/build/yql-winjs/yql-winjs-min.js rename to lib/yuilib/3.12.0/yql-winjs/yql-winjs-min.js index a6595e2f603..b9847888dcf --- a/lib/yuilib/3.9.1/build/yql-winjs/yql-winjs-min.js +++ b/lib/yuilib/3.12.0/yql-winjs/yql-winjs-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("yql-winjs",function(e,t){e.YQLRequest.prototype._send=function(e,t){var n=new XMLHttpRequest,r;n.open("GET",e,!0),n.onreadystatechange=function(){n.readyState===4&&(clearTimeout(r),t.on.success(JSON.parse(n.responseText)))},n.send(),r=setTimeout(function(){n.abort(),t.on.timeout("script timeout")},t.timeout||3e4)}},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("yql-winjs",function(e,t){e.YQLRequest.prototype._send=function(e,t){var n=new XMLHttpRequest,r;n.open("GET",e,!0),n.onreadystatechange=function(){n.readyState===4&&(clearTimeout(r),t.on.success(JSON.parse(n.responseText)))},n.send(),r=setTimeout(function(){n.abort(),t.on.timeout("script timeout")},t.timeout||3e4)}},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/yql-winjs/yql-winjs.js b/lib/yuilib/3.12.0/yql-winjs/yql-winjs.js old mode 100644 new mode 100755 similarity index 85% rename from lib/yuilib/3.9.1/build/yql-winjs/yql-winjs.js rename to lib/yuilib/3.12.0/yql-winjs/yql-winjs.js index 69600a4cb1a..37853918417 --- a/lib/yuilib/3.9.1/build/yql-winjs/yql-winjs.js +++ b/lib/yuilib/3.12.0/yql-winjs/yql-winjs.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yql-winjs', function (Y, NAME) { /** @@ -32,4 +38,4 @@ Y.YQLRequest.prototype._send = function (url, o) { }; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/yql/yql-debug.js b/lib/yuilib/3.12.0/yql/yql-debug.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/yql/yql-debug.js rename to lib/yuilib/3.12.0/yql/yql-debug.js index 48e973d1a31..5d26379c499 --- a/lib/yuilib/3.9.1/build/yql/yql-debug.js +++ b/lib/yuilib/3.12.0/yql/yql-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yql', function (Y, NAME) { /** @@ -166,4 +172,4 @@ Y.YQL = function (sql, callback, params, opts) { }; -}, '3.9.1', {"requires": ["oop"]}); +}, '3.12.0', {"requires": ["oop"]}); diff --git a/lib/yuilib/3.9.1/build/yql/yql-min.js b/lib/yuilib/3.12.0/yql/yql-min.js old mode 100644 new mode 100755 similarity index 82% rename from lib/yuilib/3.9.1/build/yql/yql-min.js rename to lib/yuilib/3.12.0/yql/yql-min.js index 213e2089acd..05499f37a9b --- a/lib/yuilib/3.9.1/build/yql/yql-min.js +++ b/lib/yuilib/3.12.0/yql/yql-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("yql",function(e,t){var n=function(t,n,r,i){r||(r={}),r.q=t,r.format||(r.format=e.YQLRequest.FORMAT),r.env||(r.env=e.YQLRequest.ENV),this._context=this,i&&i.context&&(this._context=i.context,delete i.context),r&&r.context&&(this._context=r.context,delete r.context),this._params=r,this._opts=i,this._callback=n};n.prototype={_jsonp:null,_opts:null,_callback:null,_params:null,_context:null,_internal:function(){this._callback.apply(this._context,arguments)},send:function(){var t=[],n=this._opts&&this._opts.proto?this._opts.proto:e.YQLRequest.PROTO,r;return e.Object.each(this._params,function(e,n){t.push(n+"="+encodeURIComponent(e))}),t=t.join("&"),n+=(this._opts&&this._opts.base?this._opts.base:e.YQLRequest.BASE_URL)+t,r=e.Lang.isFunction(this._callback)?{on:{success:this._callback}}:this._callback,r.on=r.on||{},this._callback=r.on.success,r.on.success=e.bind(this._internal,this),this._send(n,r),this},_send:function(){}},n.FORMAT="json",n.PROTO="http",n.BASE_URL="://query.yahooapis.com/v1/public/yql?",n.ENV="http://datatables.org/alltables.env",e.YQLRequest=n,e.YQL=function(t,n,r,i){return(new e.YQLRequest(t,n,r,i)).send()}},"3.9.1",{requires:["oop"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("yql",function(e,t){var n=function(t,n,r,i){r||(r={}),r.q=t,r.format||(r.format=e.YQLRequest.FORMAT),r.env||(r.env=e.YQLRequest.ENV),this._context=this,i&&i.context&&(this._context=i.context,delete i.context),r&&r.context&&(this._context=r.context,delete r.context),this._params=r,this._opts=i,this._callback=n};n.prototype={_jsonp:null,_opts:null,_callback:null,_params:null,_context:null,_internal:function(){this._callback.apply(this._context,arguments)},send:function(){var t=[],n=this._opts&&this._opts.proto?this._opts.proto:e.YQLRequest.PROTO,r;return e.Object.each(this._params,function(e,n){t.push(n+"="+encodeURIComponent(e))}),t=t.join("&"),n+=(this._opts&&this._opts.base?this._opts.base:e.YQLRequest.BASE_URL)+t,r=e.Lang.isFunction(this._callback)?{on:{success:this._callback}}:this._callback,r.on=r.on||{},this._callback=r.on.success,r.on.success=e.bind(this._internal,this),this._send(n,r),this},_send:function(){}},n.FORMAT="json",n.PROTO="http",n.BASE_URL="://query.yahooapis.com/v1/public/yql?",n.ENV="http://datatables.org/alltables.env",e.YQLRequest=n,e.YQL=function(t,n,r,i){return(new e.YQLRequest(t,n,r,i)).send()}},"3.12.0",{requires:["oop"]}); diff --git a/lib/yuilib/3.9.1/build/yql/yql.js b/lib/yuilib/3.12.0/yql/yql.js old mode 100644 new mode 100755 similarity index 95% rename from lib/yuilib/3.9.1/build/yql/yql.js rename to lib/yuilib/3.12.0/yql/yql.js index 0b26d6b944e..484ccd3a3f8 --- a/lib/yuilib/3.9.1/build/yql/yql.js +++ b/lib/yuilib/3.12.0/yql/yql.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yql', function (Y, NAME) { /** @@ -165,4 +171,4 @@ Y.YQL = function (sql, callback, params, opts) { }; -}, '3.9.1', {"requires": ["oop"]}); +}, '3.12.0', {"requires": ["oop"]}); diff --git a/lib/yuilib/3.9.1/build/yui-base/yui-base-debug.js b/lib/yuilib/3.12.0/yui-base/yui-base-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/yui-base/yui-base-debug.js rename to lib/yuilib/3.12.0/yui-base/yui-base-debug.js index 0ed287e616f..f1e2ae19f7c --- a/lib/yuilib/3.9.1/build/yui-base/yui-base-debug.js +++ b/lib/yuilib/3.12.0/yui-base/yui-base-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /** The YUI module contains the components required for building the YUI seed file. This includes the script loading mechanism, a simple queue, and the core @@ -157,7 +163,7 @@ available. (function() { var proto, prop, - VERSION = '3.9.1', + VERSION = '3.12.0', PERIOD = '.', BASE = 'http://yui.yahooapis.com/', /* @@ -1521,6 +1527,7 @@ Y.log('Fetching loader: ' + config.base + config.loaderPath, 'info', 'yui'); YUI._getLoadHook = null; } + YUI.Env[VERSION] = {}; }()); @@ -1975,6 +1982,22 @@ supported native console. This function is executed with the YUI instance as its @since 3.1.0 **/ +/** +The minimum log level to log messages for. Log levels are defined +incrementally. Messages greater than or equal to the level specified will +be shown. All others will be discarded. The order of log levels in +increasing priority is: + + debug + info + warn + error + +@property {String} logLevel +@default 'debug' +@since 3.10.0 +**/ + /** Callback to execute when `Y.error()` is called. It receives the error message and a JavaScript error object if one was provided. @@ -2060,8 +2083,8 @@ relying on ES5 functionality, even when ES5 functionality is available. /** Delay the `use` callback until a specific event has passed (`load`, `domready`, `contentready` or `available`) -@property delayUntil -@type String|Object + +@property {Object|String} delayUntil @since 3.6.0 @example @@ -2085,8 +2108,6 @@ Or you can delay until a node is available (with `available` or `contentready`): // available in the DOM. }); -@property {Object|String} delayUntil -@since 3.6.0 **/ YUI.add('yui-base', function (Y, NAME) { @@ -2127,9 +2148,15 @@ TYPES = { '[object Error]' : 'error' }, -SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, -TRIMREGEX = /^\s+|\s+$/g, -NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; +SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, + +WHITESPACE = "\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF", +WHITESPACE_CLASS = "[\x09-\x0D\x20\xA0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]+", +TRIM_LEFT_REGEX = new RegExp("^" + WHITESPACE_CLASS), +TRIM_RIGHT_REGEX = new RegExp(WHITESPACE_CLASS + "$"), +TRIMREGEX = new RegExp(TRIM_LEFT_REGEX.source + "|" + TRIM_RIGHT_REGEX.source, "g"), + +NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; // -- Protected Methods -------------------------------------------------------- @@ -2353,7 +2380,7 @@ L.sub = function(s, o) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trim = STRING_PROTO.trim ? function(s) { +L.trim = L._isNative(STRING_PROTO.trim) && !WHITESPACE.trim() ? function(s) { return s && s.trim ? s.trim() : s; } : function (s) { try { @@ -2370,10 +2397,10 @@ L.trim = STRING_PROTO.trim ? function(s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimLeft = STRING_PROTO.trimLeft ? function (s) { +L.trimLeft = L._isNative(STRING_PROTO.trimLeft) && !WHITESPACE.trimLeft() ? function (s) { return s.trimLeft(); } : function (s) { - return s.replace(/^\s+/, ''); + return s.replace(TRIM_LEFT_REGEX, ''); }; /** @@ -2383,10 +2410,10 @@ L.trimLeft = STRING_PROTO.trimLeft ? function (s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimRight = STRING_PROTO.trimRight ? function (s) { +L.trimRight = L._isNative(STRING_PROTO.trimRight) && !WHITESPACE.trimRight() ? function (s) { return s.trimRight(); } : function (s) { - return s.replace(/\s+$/, ''); + return s.replace(TRIM_RIGHT_REGEX, ''); }; /** @@ -2488,16 +2515,34 @@ Dedupes an array of strings, returning an array that's guaranteed to contain only one copy of a given string. This method differs from `Array.unique()` in that it's optimized for use only -with strings, whereas `unique` may be used with other types (but is slower). -Using `dedupe()` with non-string values may result in unexpected behavior. +with arrays consisting entirely of strings or entirely of numbers, whereas +`unique` may be used with other value types (but is slower). + +Using `dedupe()` with values other than strings or numbers, or with arrays +containing a mix of strings and numbers, may result in unexpected behavior. @method dedupe -@param {String[]} array Array of strings to dedupe. -@return {Array} Deduped copy of _array_. +@param {String[]|Number[]} array Array of strings or numbers to dedupe. +@return {Array} Copy of _array_ containing no duplicate values. @static @since 3.4.0 **/ -YArray.dedupe = function (array) { +YArray.dedupe = Lang._isNative(Object.create) ? function (array) { + var hash = Object.create(null), + results = [], + i, item, len; + + for (i = 0, len = array.length; i < len; ++i) { + item = array[i]; + + if (!hash[item]) { + hash[item] = 1; + results.push(item); + } + } + + return results; +} : function (array) { var hash = {}, results = [], i, item, len; @@ -3139,7 +3184,7 @@ hasEnumBug = O._hasEnumBug = !{valueOf: 0}.propertyIsEnumerable('valueOf'), /** * `true` if this browser incorrectly considers the `prototype` property of - * functions to be enumerable. Currently known to affect Opera 11.50. + * functions to be enumerable. Currently known to affect Opera 11.50 and Android 2.3.x. * * @property _hasProtoEnumBug * @type Boolean @@ -3183,7 +3228,9 @@ O.hasKey = owns; * as the order in which they were defined. * * This method is an alias for the native ES5 `Object.keys()` method if - * available. + * available and non-buggy. The Opera 11.50 and Android 2.3.x versions of + * `Object.keys()` have an inconsistency as they consider `prototype` to be + * enumerable, so a non-native shim is used to rectify the difference. * * @example * @@ -3195,7 +3242,7 @@ O.hasKey = owns; * @return {String[]} Array of keys. * @static */ -O.keys = Lang._isNative(Object.keys) ? Object.keys : function (obj) { +O.keys = Lang._isNative(Object.keys) && !hasProtoEnumBug ? Object.keys : function (obj) { if (!Lang.isObject(obj)) { throw new TypeError('Object.keys called on a non-object'); } @@ -3802,17 +3849,25 @@ YUI.Env.parseUA = function(subUA) { } } - m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); - if (m && m[1] && m[2]) { - o.chrome = numberify(m[2]); // Chrome - o.safari = 0; //Reset safari back to 0 - if (m[1] === 'CrMo') { - o.mobile = 'chrome'; - } + m = ua.match(/OPR\/(\d+\.\d+)/); + + if (m && m[1]) { + // Opera 15+ with Blink (pretends to be both Chrome and Safari) + o.opera = numberify(m[1]); } else { - m = ua.match(/AdobeAIR\/([^\s]*)/); - if (m) { - o.air = m[0]; // Adobe AIR 1.0 or better + m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); + + if (m && m[1] && m[2]) { + o.chrome = numberify(m[2]); // Chrome + o.safari = 0; //Reset safari back to 0 + if (m[1] === 'CrMo') { + o.mobile = 'chrome'; + } + } else { + m = ua.match(/AdobeAIR\/([^\s]*)/); + if (m) { + o.air = m[0]; // Adobe AIR 1.0 or better + } } } } @@ -3842,16 +3897,21 @@ YUI.Env.parseUA = function(subUA) { o.mobile = m[0]; // ex: Opera Mini/2.0.4509/1316 } } else { // not opera or webkit - m = ua.match(/MSIE\s([^;]*)/); - if (m && m[1]) { - o.ie = numberify(m[1]); + m = ua.match(/MSIE ([^;]*)|Trident.*; rv:([0-9.]+)/); + + if (m && (m[1] || m[2])) { + o.ie = numberify(m[1] || m[2]); } else { // not opera, webkit, or ie m = ua.match(/Gecko\/([^\s]*)/); + if (m) { o.gecko = 1; // Gecko detected, look for revision m = ua.match(/rv:([^\s\)]*)/); if (m && m[1]) { o.gecko = numberify(m[1]); + if (/Mobile|Tablet/.test(ua)) { + o.mobile = "ffos"; + } } } } @@ -3982,7 +4042,7 @@ YUI.Env.aliases = { }; -}, '3.9.1', {"use": ["get", "features", "intl-base", "yui-log", "yui-later"]}); +}, '3.12.0', {"use": ["get", "features", "intl-base", "yui-log", "yui-later"]}); YUI.add('get', function (Y, NAME) { /*jslint boss:true, expr:true, laxbreak: true */ @@ -5273,7 +5333,7 @@ Transaction.prototype = { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('features', function (Y, NAME) { var feature_tests = {}; @@ -5389,7 +5449,7 @@ Y.mix(Y.namespace('Features'), { // Y.Features.test("load", "1"); // caps=1:1;2:0;3:1; -/* This file is auto-generated by (yogi loader --yes --mix --start ../) */ +/* This file is auto-generated by (yogi.js loader --mix --yes) */ /*jshint maxlen:900, eqeqeq: false */ var add = Y.Features.add; // app-transitions-native @@ -5682,7 +5742,7 @@ add('load', '22', { "when": "after" }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('intl-base', function (Y, NAME) { /** @@ -5770,7 +5830,7 @@ Y.mix(Y.namespace('Intl'), { }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('yui-log', function (Y, NAME) { /** @@ -5786,9 +5846,9 @@ var INSTANCE = Y, LOGEVENT = 'yui:log', UNDEFINED = 'undefined', LEVELS = { debug: 1, - info: 1, - warn: 1, - error: 1 }; + info: 2, + warn: 4, + error: 8 }; /** * If the 'debug' config is true, a 'yui:log' event will be @@ -5810,7 +5870,7 @@ var INSTANCE = Y, * @return {YUI} YUI instance. */ INSTANCE.log = function(msg, cat, src, silent) { - var bail, excl, incl, m, f, + var bail, excl, incl, m, f, minlevel, Y = INSTANCE, c = Y.config, publisher = (Y.fire) ? Y : YUI.Env.globalEvents; @@ -5829,6 +5889,15 @@ INSTANCE.log = function(msg, cat, src, silent) { } else if (excl && (src in excl)) { bail = excl[src]; } + + // Determine the current minlevel as defined in configuration + Y.config.logLevel = Y.config.logLevel || 'debug'; + minlevel = LEVELS[Y.config.logLevel.toLowerCase()]; + + if (cat in LEVELS && LEVELS[cat] < minlevel) { + // Skip this message if the we don't meet the defined minlevel + bail = 1; + } } if (!bail) { if (c.useBrowserConsole) { @@ -5881,7 +5950,7 @@ INSTANCE.message = function() { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('yui-later', function (Y, NAME) { /** @@ -5959,5 +6028,5 @@ Y.Lang.later = Y.later; -}, '3.9.1', {"requires": ["yui-base"]}); -YUI.add('yui', function (Y, NAME) {}, '3.9.1', {"use": ["get", "features", "intl-base", "yui-log", "yui-later"]}); +}, '3.12.0', {"requires": ["yui-base"]}); +YUI.add('yui', function (Y, NAME) {}, '3.12.0', {"use": ["get", "features", "intl-base", "yui-log", "yui-later"]}); diff --git a/lib/yuilib/3.12.0/yui-base/yui-base-min.js b/lib/yuilib/3.12.0/yui-base/yui-base-min.js new file mode 100755 index 00000000000..69437438c34 --- /dev/null +++ b/lib/yuilib/3.12.0/yui-base/yui-base-min.js @@ -0,0 +1,14 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +typeof YUI!="undefined"&&(YUI._YUI=YUI);var YUI=function(){var e=0,t=this,n=arguments,r=n.length,i=function(e,t){return e&&e.hasOwnProperty&&e instanceof t},s=typeof YUI_config!="undefined"&&YUI_config;i(t,YUI)?(t._init(),YUI.GlobalConfig&&t.applyConfig(YUI.GlobalConfig),s&&t.applyConfig(s),r||t._setup()):t=new YUI;if(r){for(;e-1&&(n="3.5.0"),e={applyConfig:function(e){e=e||u;var t,n,r=this.config,i=r.modules,s=r.groups,o=r.aliases,a=this.Env._loader;for(n in e)e.hasOwnProperty(n)&&(t=e[n],i&&n=="modules"?E(i,t):o&&n=="aliases"?E(o,t):s&&n=="groups"?E(s,t):n=="win"?(r[n]=t&&t.contentWindow||t,r.doc=r[n]?r[n].document:null):n!="_yuid"&&(r[n]=t));a&&a._config(e)},_config:function(e){this.applyConfig(e)},_init:function(){var e,t,r=this,s=YUI.Env,u=r.Env,a;r.version=n;if(!u){r.Env={core:["get","features","intl-base","yui-log","yui-later"],loaderExtras:["loader-rollup","loader-yui3"],mods:{},versions:{},base:i,cdn:i+n+"/build/",_idx:0,_used:{},_attached:{},_missed:[],_yidx:0,_uidx:0,_guidp:"y",_loaded:{},_BASE_RE:/(?:\?(?:[^&]*&)*([^&]*))?\b(simpleyui|yui(?:-\w+)?)\/\2(?:-(min|debug))?\.js/,parseBasePath:function(e,t){var n=e.match(t),r,i;return n&&(r=RegExp.leftContext||e.slice(0,e.indexOf(n[0])),i=n[3],n[1]&&(r+="?"+n[1]),r={filter:i,path:r}),r},getBase:s&&s.getBase||function(t){var n=h&&h.getElementsByTagName("script")||[],i=u.cdn,s,o,a,f;for(o=0,a=n.length;o
              ',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},m.indexOf=p._isNative(d.indexOf)?function(e,t,n){return d.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,y):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},E.each=function(t,n,r,i){var s;for(s in t)(i||N(t,s))&&n.call(r||e,t[s],s,t);return e},E.some=function(t,n,r,i){var s;for(s in t)if(i||N(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},E.getValue=function(t,n){if(!p.isObject(t))return w;var r,i=e.Array(n),s=i.length;for(r=0;t!==w&&r=0){for(i=0;u!==w&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"3.12.0",{use:["get","features","intl-base","yui-log","yui-later"]}),YUI.add("get",function(e,t){var n=e.Lang,r,i,s;e.Get=i={cssOptions:{attributes:{rel:"stylesheet"},doc:e.config.linkDoc||e.config.doc,pollInterval:50},jsOptions:{autopurge:!0,doc:e.config.scriptDoc||e.config.doc},options:{attributes:{charset:"utf-8"},purgethreshold:20},REGEX_CSS:/\.css(?:[?;].*)?$/i,REGEX_JS:/\.js(?:[?;].*)?$/i,_insertCache:{},_pending:null,_purgeNodes:[],_queue:[],abort:function(e){var t,n,r,i,s;if(!e.abort){n=e,s=this._pending,e=null;if(s&&s.transaction.id===n)e=s.transaction,this._pending=null;else for(t=0,i=this._queue.length;t=e&&this._purge(this._purgeNodes)},_getEnv:function(){var t=e.config.doc,n=e.UA;return this._env={async:t&&t.createElement("script").async===!0||n.ie>=10,cssFail:n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0,cssLoad:(!n.gecko&&!n.webkit||n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0)&&!(n.chrome&&n.chrome<=18),preservesScriptOrder:!!(n.gecko||n.opera||n.ie&&n.ie>=10)}},_getTransaction:function(t,r){var i=[],o +,u,a,f;n.isArray(t)||(t=[t]),r=e.merge(this.options,r),r.attributes=e.merge(this.options.attributes,r.attributes);for(o=0,u=t.length;o-1&&n.splice(i,1))}}},i.script=i.js,i.Transaction=s=function(t,n){var r=this;r.id=s._lastId+=1,r.data=n.data,r.errors=[],r.nodes=[],r.options=n,r.requests=t,r._callbacks=[],r._queue=[],r._reqsWaiting=0,r.tId=r.id,r.win=n.win||e.config.win},s._lastId=0,s.prototype={_state:"new",abort:function(e){this._pending=null,this._pendingCSS=null,this._pollTimer=clearTimeout(this._pollTimer),this._queue=[],this._reqsWaiting=0,this.errors.push({error:e||"Aborted"}),this._finish()},execute:function(e){var t=this,n=t.requests,r=t._state,i,s,o,u;if(r==="done"){e&&e(t.errors.length?t.errors:null,t);return}e&&t._callbacks.push(e);if(r==="executing")return;t._state="executing",t._queue=o=[],t.options.timeout&&(t._timeout=setTimeout(function(){t.abort("Timeout")},t.options.timeout)),t._reqsWaiting=n.length;for(i=0,s=n.length;i=10?(o.onerror=function(){setTimeout(c,0)},o.onload=function(){setTimeout(h,0)}):(o.onerror=c,o.onload=h),!n.cssFail&&!s&&(f=setTimeout(c,t.timeout||3e3))),this.nodes.push(o),r.parentNode.insertBefore(o,r)},_next:function(){if(this._pending)return;this._queue.length?this._insert(this._queue.shift()):this._reqsWaiting||this._finish()},_poll:function(t){var n=this,r=n._pendingCSS,i=e.UA.webkit,s,o,u,a,f,l;if(t){r||(r=n._pendingCSS=[]),r.push(t);if(n._pollTimer)return}n._pollTimer=null;for(s=0;s=0)if(l[u].href===a){r.splice(s,1),s-=1,n._progress(null,f);break}}else try{o=!!f.node.sheet.cssRules,r.splice(s,1),s-=1,n._progress(null,f)}catch(c){}}r.length&&(n._pollTimer=setTimeout(function(){n._poll.call(n)},n.options.pollInterval))},_progress:function(e,t){var n=this.options;e&&(t.error=e,this.errors.push({error:e,request:t})),t.node._yuiget_finished=t.finished=!0,n.onProgress&&n.onProgress.call(n.context||this,this._getEventData(t)),t.autopurge&&(i._autoPurge(this.options.purgethreshold),i._purgeNodes.push(t.node)),this._pending===t&&(this._pending=null),this._reqsWaiting-=1,this._next()}}},"3.12.0",{requires:["yui-base"]}),YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions" +}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"3.12.0",{requires:["yui-base"]}),YUI.add("intl-base",function(e,t){var n=/[, ]/;e.mix(e.namespace("Intl"),{lookupBestLang:function(t,r){function a(e){var t;for(t=0;t0){o=a(s);if(o)return o;u=s.lastIndexOf("-");if(!(u>=0))break;s=s.substring(0,u),u>=2&&s.charAt(u-2)==="-"&&(s=s.substring(0,u-2))}}return""}})},"3.12.0",{requires:["yui-base"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:2,warn:4,error:8};n.log=function(e,t,o,u){var a,f,l,c,h,p,d=n,v=d.config,m=d.fire?d:YUI.Env.globalEvents;return v.debug&&(o=o||"",typeof o!="undefined"&&(f=v.logExclude,l=v.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1,d.config.logLevel=d.config.logLevel||"debug",p=s[d.config.logLevel.toLowerCase()],t in s&&s[t]-1&&(n="3.5.0"),e={applyConfig:function(e){e=e||u;var t,n,r=this.config,i=r.modules,s=r.groups,o=r.aliases,a=this.Env._loader;for(n in e)e.hasOwnProperty(n)&&(t=e[n],i&&n=="modules"?E(i,t):o&&n=="aliases"?E(o,t):s&&n=="groups"?E(s,t):n=="win"?(r[n]=t&&t.contentWindow||t,r.doc=r[n]?r[n].document:null):n!="_yuid"&&(r[n]=t));a&&a._config(e)},_config:function(e){this.applyConfig(e)},_init:function(){var e,t,r=this,s=YUI.Env,u=r.Env,a;r.version=n;if(!u){r.Env={core:["intl-base"],loaderExtras:["loader-rollup","loader-yui3"],mods:{},versions:{},base:i,cdn:i+n+"/build/",_idx:0,_used:{},_attached:{},_missed:[],_yidx:0,_uidx:0,_guidp:"y",_loaded:{},_BASE_RE:/(?:\?(?:[^&]*&)*([^&]*))?\b(simpleyui|yui(?:-\w+)?)\/\2(?:-(min|debug))?\.js/,parseBasePath:function(e,t){var n=e.match(t),r,i;return n&&(r=RegExp.leftContext||e.slice(0,e.indexOf(n[0])),i=n[3],n[1]&&(r+="?"+n[1]),r={filter:i,path:r}),r},getBase:s&&s.getBase||function(t){var n=h&&h.getElementsByTagName("script")||[],i=u.cdn,s,o,a,f;for(o=0,a=n.length;o
              ',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},m.indexOf=p._isNative(d.indexOf)?function(e,t,n){return d.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,y):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},E.each=function(t,n,r,i){var s;for(s in t)(i||N(t,s))&&n.call(r||e,t[s],s,t);return e},E.some=function(t,n,r,i){var s;for(s in t)if(i||N(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},E.getValue=function(t,n){if(!p.isObject(t))return w;var r,i=e.Array(n),s=i.length;for(r=0;t!==w&&r=0){for(i=0;u!==w&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/yui-core/yui-core.js b/lib/yuilib/3.12.0/yui-core/yui-core.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/yui-core/yui-core.js rename to lib/yuilib/3.12.0/yui-core/yui-core.js index 69e39d70356..ef82f2636c9 --- a/lib/yuilib/3.9.1/build/yui-core/yui-core.js +++ b/lib/yuilib/3.12.0/yui-core/yui-core.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /** The YUI module contains the components required for building the YUI seed file. This includes the script loading mechanism, a simple queue, and the core @@ -157,7 +163,7 @@ available. (function() { var proto, prop, - VERSION = '3.9.1', + VERSION = '3.12.0', PERIOD = '.', BASE = 'http://yui.yahooapis.com/', /* @@ -1501,6 +1507,7 @@ with any configuration info required for the module. YUI._getLoadHook = null; } + YUI.Env[VERSION] = {}; }()); @@ -1636,6 +1643,22 @@ supported native console. This function is executed with the YUI instance as its @since 3.1.0 **/ +/** +The minimum log level to log messages for. Log levels are defined +incrementally. Messages greater than or equal to the level specified will +be shown. All others will be discarded. The order of log levels in +increasing priority is: + + debug + info + warn + error + +@property {String} logLevel +@default 'debug' +@since 3.10.0 +**/ + /** Callback to execute when `Y.error()` is called. It receives the error message and a JavaScript error object if one was provided. @@ -1721,8 +1744,8 @@ relying on ES5 functionality, even when ES5 functionality is available. /** Delay the `use` callback until a specific event has passed (`load`, `domready`, `contentready` or `available`) -@property delayUntil -@type String|Object + +@property {Object|String} delayUntil @since 3.6.0 @example @@ -1746,8 +1769,6 @@ Or you can delay until a node is available (with `available` or `contentready`): // available in the DOM. }); -@property {Object|String} delayUntil -@since 3.6.0 **/ YUI.add('yui-base', function (Y, NAME) { @@ -1788,9 +1809,15 @@ TYPES = { '[object Error]' : 'error' }, -SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, -TRIMREGEX = /^\s+|\s+$/g, -NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; +SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, + +WHITESPACE = "\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF", +WHITESPACE_CLASS = "[\x09-\x0D\x20\xA0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]+", +TRIM_LEFT_REGEX = new RegExp("^" + WHITESPACE_CLASS), +TRIM_RIGHT_REGEX = new RegExp(WHITESPACE_CLASS + "$"), +TRIMREGEX = new RegExp(TRIM_LEFT_REGEX.source + "|" + TRIM_RIGHT_REGEX.source, "g"), + +NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; // -- Protected Methods -------------------------------------------------------- @@ -2014,7 +2041,7 @@ L.sub = function(s, o) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trim = STRING_PROTO.trim ? function(s) { +L.trim = L._isNative(STRING_PROTO.trim) && !WHITESPACE.trim() ? function(s) { return s && s.trim ? s.trim() : s; } : function (s) { try { @@ -2031,10 +2058,10 @@ L.trim = STRING_PROTO.trim ? function(s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimLeft = STRING_PROTO.trimLeft ? function (s) { +L.trimLeft = L._isNative(STRING_PROTO.trimLeft) && !WHITESPACE.trimLeft() ? function (s) { return s.trimLeft(); } : function (s) { - return s.replace(/^\s+/, ''); + return s.replace(TRIM_LEFT_REGEX, ''); }; /** @@ -2044,10 +2071,10 @@ L.trimLeft = STRING_PROTO.trimLeft ? function (s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimRight = STRING_PROTO.trimRight ? function (s) { +L.trimRight = L._isNative(STRING_PROTO.trimRight) && !WHITESPACE.trimRight() ? function (s) { return s.trimRight(); } : function (s) { - return s.replace(/\s+$/, ''); + return s.replace(TRIM_RIGHT_REGEX, ''); }; /** @@ -2149,16 +2176,34 @@ Dedupes an array of strings, returning an array that's guaranteed to contain only one copy of a given string. This method differs from `Array.unique()` in that it's optimized for use only -with strings, whereas `unique` may be used with other types (but is slower). -Using `dedupe()` with non-string values may result in unexpected behavior. +with arrays consisting entirely of strings or entirely of numbers, whereas +`unique` may be used with other value types (but is slower). + +Using `dedupe()` with values other than strings or numbers, or with arrays +containing a mix of strings and numbers, may result in unexpected behavior. @method dedupe -@param {String[]} array Array of strings to dedupe. -@return {Array} Deduped copy of _array_. +@param {String[]|Number[]} array Array of strings or numbers to dedupe. +@return {Array} Copy of _array_ containing no duplicate values. @static @since 3.4.0 **/ -YArray.dedupe = function (array) { +YArray.dedupe = Lang._isNative(Object.create) ? function (array) { + var hash = Object.create(null), + results = [], + i, item, len; + + for (i = 0, len = array.length; i < len; ++i) { + item = array[i]; + + if (!hash[item]) { + hash[item] = 1; + results.push(item); + } + } + + return results; +} : function (array) { var hash = {}, results = [], i, item, len; @@ -2800,7 +2845,7 @@ hasEnumBug = O._hasEnumBug = !{valueOf: 0}.propertyIsEnumerable('valueOf'), /** * `true` if this browser incorrectly considers the `prototype` property of - * functions to be enumerable. Currently known to affect Opera 11.50. + * functions to be enumerable. Currently known to affect Opera 11.50 and Android 2.3.x. * * @property _hasProtoEnumBug * @type Boolean @@ -2844,7 +2889,9 @@ O.hasKey = owns; * as the order in which they were defined. * * This method is an alias for the native ES5 `Object.keys()` method if - * available. + * available and non-buggy. The Opera 11.50 and Android 2.3.x versions of + * `Object.keys()` have an inconsistency as they consider `prototype` to be + * enumerable, so a non-native shim is used to rectify the difference. * * @example * @@ -2856,7 +2903,7 @@ O.hasKey = owns; * @return {String[]} Array of keys. * @static */ -O.keys = Lang._isNative(Object.keys) ? Object.keys : function (obj) { +O.keys = Lang._isNative(Object.keys) && !hasProtoEnumBug ? Object.keys : function (obj) { if (!Lang.isObject(obj)) { throw new TypeError('Object.keys called on a non-object'); } @@ -3463,17 +3510,25 @@ YUI.Env.parseUA = function(subUA) { } } - m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); - if (m && m[1] && m[2]) { - o.chrome = numberify(m[2]); // Chrome - o.safari = 0; //Reset safari back to 0 - if (m[1] === 'CrMo') { - o.mobile = 'chrome'; - } + m = ua.match(/OPR\/(\d+\.\d+)/); + + if (m && m[1]) { + // Opera 15+ with Blink (pretends to be both Chrome and Safari) + o.opera = numberify(m[1]); } else { - m = ua.match(/AdobeAIR\/([^\s]*)/); - if (m) { - o.air = m[0]; // Adobe AIR 1.0 or better + m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); + + if (m && m[1] && m[2]) { + o.chrome = numberify(m[2]); // Chrome + o.safari = 0; //Reset safari back to 0 + if (m[1] === 'CrMo') { + o.mobile = 'chrome'; + } + } else { + m = ua.match(/AdobeAIR\/([^\s]*)/); + if (m) { + o.air = m[0]; // Adobe AIR 1.0 or better + } } } } @@ -3503,16 +3558,21 @@ YUI.Env.parseUA = function(subUA) { o.mobile = m[0]; // ex: Opera Mini/2.0.4509/1316 } } else { // not opera or webkit - m = ua.match(/MSIE\s([^;]*)/); - if (m && m[1]) { - o.ie = numberify(m[1]); + m = ua.match(/MSIE ([^;]*)|Trident.*; rv:([0-9.]+)/); + + if (m && (m[1] || m[2])) { + o.ie = numberify(m[1] || m[2]); } else { // not opera, webkit, or ie m = ua.match(/Gecko\/([^\s]*)/); + if (m) { o.gecko = 1; // Gecko detected, look for revision m = ua.match(/rv:([^\s\)]*)/); if (m && m[1]) { o.gecko = numberify(m[1]); + if (/Mobile|Tablet/.test(ua)) { + o.mobile = "ffos"; + } } } } @@ -3643,4 +3703,4 @@ YUI.Env.aliases = { }; -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/yui-later/yui-later-debug.js b/lib/yuilib/3.12.0/yui-later/yui-later-debug.js old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/yui-later/yui-later-debug.js rename to lib/yuilib/3.12.0/yui-later/yui-later-debug.js index 01b019d1c04..7c5a0b8c79d --- a/lib/yuilib/3.9.1/build/yui-later/yui-later-debug.js +++ b/lib/yuilib/3.12.0/yui-later/yui-later-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yui-later', function (Y, NAME) { /** @@ -76,4 +82,4 @@ Y.Lang.later = Y.later; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/yui-later/yui-later-min.js b/lib/yuilib/3.12.0/yui-later/yui-later-min.js old mode 100644 new mode 100755 similarity index 66% rename from lib/yuilib/3.9.1/build/yui-later/yui-later-min.js rename to lib/yuilib/3.12.0/yui-later/yui-later-min.js index 753430e1d24..92344a496a2 --- a/lib/yuilib/3.9.1/build/yui-later/yui-later-min.js +++ b/lib/yuilib/3.12.0/yui-later/yui-later-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("yui-later",function(e,t){var n=[];e.later=function(t,r,i,s,o){t=t||0,s=e.Lang.isUndefined(s)?n:e.Array(s),r=r||e.config.win||e;var u=!1,a=r&&e.Lang.isString(i)?r[i]:i,f=function(){u||(a.apply?a.apply(r,s||n):a(s[0],s[1],s[2],s[3]))},l=o?setInterval(f,t):setTimeout(f,t);return{id:l,interval:o,cancel:function(){u=!0,this.interval?clearInterval(l):clearTimeout(l)}}},e.Lang.later=e.later},"3.9.1",{requires:["yui-base"]}); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("yui-later",function(e,t){var n=[];e.later=function(t,r,i,s,o){t=t||0,s=e.Lang.isUndefined(s)?n:e.Array(s),r=r||e.config.win||e;var u=!1,a=r&&e.Lang.isString(i)?r[i]:i,f=function(){u||(a.apply?a.apply(r,s||n):a(s[0],s[1],s[2],s[3]))},l=o?setInterval(f,t):setTimeout(f,t);return{id:l,interval:o,cancel:function(){u=!0,this.interval?clearInterval(l):clearTimeout(l)}}},e.Lang.later=e.later},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/yui-later/yui-later.js b/lib/yuilib/3.12.0/yui-later/yui-later.js old mode 100644 new mode 100755 similarity index 93% rename from lib/yuilib/3.9.1/build/yui-later/yui-later.js rename to lib/yuilib/3.12.0/yui-later/yui-later.js index 01b019d1c04..7c5a0b8c79d --- a/lib/yuilib/3.9.1/build/yui-later/yui-later.js +++ b/lib/yuilib/3.12.0/yui-later/yui-later.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yui-later', function (Y, NAME) { /** @@ -76,4 +82,4 @@ Y.Lang.later = Y.later; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/yui-log-nodejs/yui-log-nodejs-debug.js b/lib/yuilib/3.12.0/yui-log-nodejs/yui-log-nodejs-debug.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/yui-log-nodejs/yui-log-nodejs-debug.js rename to lib/yuilib/3.12.0/yui-log-nodejs/yui-log-nodejs-debug.js index ccb9c9d63ff..555eed0ad0d --- a/lib/yuilib/3.9.1/build/yui-log-nodejs/yui-log-nodejs-debug.js +++ b/lib/yuilib/3.12.0/yui-log-nodejs/yui-log-nodejs-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yui-log-nodejs', function (Y, NAME) { var sys = require(process.binding('natives').util ? 'util' : 'sys'), @@ -79,4 +85,4 @@ if (!Y.config.logFn) { -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/yui-log-nodejs/yui-log-nodejs-min.js b/lib/yuilib/3.12.0/yui-log-nodejs/yui-log-nodejs-min.js old mode 100644 new mode 100755 similarity index 84% rename from lib/yuilib/3.9.1/build/yui-log-nodejs/yui-log-nodejs-min.js rename to lib/yuilib/3.12.0/yui-log-nodejs/yui-log-nodejs-min.js index 52e8c696d03..56d1718a1e3 --- a/lib/yuilib/3.9.1/build/yui-log-nodejs/yui-log-nodejs-min.js +++ b/lib/yuilib/3.12.0/yui-log-nodejs/yui-log-nodejs-min.js @@ -1,2 +1,8 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("yui-log-nodejs",function(e,t){var n=require(process.binding("natives").util?"util":"sys"),r=!1;try{var i=require("stdio");r=i.isStderrATTY()}catch(s){r=!0}e.config.useColor=r,e.consoleColor=function(e,t){return this.config.useColor?(t||(t="32"),"["+t+"m"+e+""):e};var o=function(e,t,r){var i="",s,o;this.id&&(i="["+this.id+"]:"),t=t||"info",r=r?this.consoleColor(" ("+r.toLowerCase()+"):",35):"",e===null&&(e="null");if(typeof e=="object"||e instanceof Array)try{e.tagName||e._yuid||e._query?e=e.toString():e=n.inspect(e)}catch(u){}s="37;40",o=e?"":31,t+="";switch(t.toLowerCase()){case"error":s=o=31;break;case"warn":s=33;break;case"debug":s=34}typeof e=="string"&&e&&e.indexOf("\n")!==-1&&(e="\n"+e),n.error(this.consoleColor(t.toLowerCase()+":",s)+r+" "+this.consoleColor(e,o))};e.config.logFn||(e.config.logFn=o)},"3.9.1"); +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("yui-log-nodejs",function(e,t){var n=require(process.binding("natives").util?"util":"sys"),r=!1;try{var i=require("stdio");r=i.isStderrATTY()}catch(s){r=!0}e.config.useColor=r,e.consoleColor=function(e,t){return this.config.useColor?(t||(t="32"),"["+t+"m"+e+""):e};var o=function(e,t,r){var i="",s,o;this.id&&(i="["+this.id+"]:"),t=t||"info",r=r?this.consoleColor(" ("+r.toLowerCase()+"):",35):"",e===null&&(e="null");if(typeof e=="object"||e instanceof Array)try{e.tagName||e._yuid||e._query?e=e.toString():e=n.inspect(e)}catch(u){}s="37;40",o=e?"":31,t+="";switch(t.toLowerCase()){case"error":s=o=31;break;case"warn":s=33;break;case"debug":s=34}typeof e=="string"&&e&&e.indexOf("\n")!==-1&&(e="\n"+e),n.error(this.consoleColor(t.toLowerCase()+":",s)+r+" "+this.consoleColor(e,o))};e.config.logFn||(e.config.logFn=o)},"3.12.0"); diff --git a/lib/yuilib/3.9.1/build/yui-log-nodejs/yui-log-nodejs.js b/lib/yuilib/3.12.0/yui-log-nodejs/yui-log-nodejs.js old mode 100644 new mode 100755 similarity index 91% rename from lib/yuilib/3.9.1/build/yui-log-nodejs/yui-log-nodejs.js rename to lib/yuilib/3.12.0/yui-log-nodejs/yui-log-nodejs.js index ccb9c9d63ff..555eed0ad0d --- a/lib/yuilib/3.9.1/build/yui-log-nodejs/yui-log-nodejs.js +++ b/lib/yuilib/3.12.0/yui-log-nodejs/yui-log-nodejs.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yui-log-nodejs', function (Y, NAME) { var sys = require(process.binding('natives').util ? 'util' : 'sys'), @@ -79,4 +85,4 @@ if (!Y.config.logFn) { -}, '3.9.1'); +}, '3.12.0'); diff --git a/lib/yuilib/3.9.1/build/yui-log/yui-log-debug.js b/lib/yuilib/3.12.0/yui-log/yui-log-debug.js old mode 100644 new mode 100755 similarity index 84% rename from lib/yuilib/3.9.1/build/yui-log/yui-log-debug.js rename to lib/yuilib/3.12.0/yui-log/yui-log-debug.js index b9d5b2649aa..2bf24981b8a --- a/lib/yuilib/3.9.1/build/yui-log/yui-log-debug.js +++ b/lib/yuilib/3.12.0/yui-log/yui-log-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yui-log', function (Y, NAME) { /** @@ -14,9 +20,9 @@ var INSTANCE = Y, LOGEVENT = 'yui:log', UNDEFINED = 'undefined', LEVELS = { debug: 1, - info: 1, - warn: 1, - error: 1 }; + info: 2, + warn: 4, + error: 8 }; /** * If the 'debug' config is true, a 'yui:log' event will be @@ -38,7 +44,7 @@ var INSTANCE = Y, * @return {YUI} YUI instance. */ INSTANCE.log = function(msg, cat, src, silent) { - var bail, excl, incl, m, f, + var bail, excl, incl, m, f, minlevel, Y = INSTANCE, c = Y.config, publisher = (Y.fire) ? Y : YUI.Env.globalEvents; @@ -57,6 +63,15 @@ INSTANCE.log = function(msg, cat, src, silent) { } else if (excl && (src in excl)) { bail = excl[src]; } + + // Determine the current minlevel as defined in configuration + Y.config.logLevel = Y.config.logLevel || 'debug'; + minlevel = LEVELS[Y.config.logLevel.toLowerCase()]; + + if (cat in LEVELS && LEVELS[cat] < minlevel) { + // Skip this message if the we don't meet the defined minlevel + bail = 1; + } } if (!bail) { if (c.useBrowserConsole) { @@ -109,4 +124,4 @@ INSTANCE.message = function() { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.12.0/yui-log/yui-log-min.js b/lib/yuilib/3.12.0/yui-log/yui-log-min.js new file mode 100755 index 00000000000..892045e5ef2 --- /dev/null +++ b/lib/yuilib/3.12.0/yui-log/yui-log-min.js @@ -0,0 +1,8 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:2,warn:4,error:8};n.log=function(e,t,o,u){var a,f,l,c,h,p,d=n,v=d.config,m=d.fire?d:YUI.Env.globalEvents;return v.debug&&(o=o||"",typeof o!="undefined"&&(f=v.logExclude,l=v.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1,d.config.logLevel=d.config.logLevel||"debug",p=s[d.config.logLevel.toLowerCase()],t in s&&s[t]Y.UA object that returns true when the module is to be loaded. e.g., `"ie"`, `"nodejs"`. * @param {String} [config.condition.when] Specifies the load order of the conditional module * with regard to the position of the trigger module. * This should be one of three values: `before`, `after`, or `instead`. The default is `after`. @@ -7779,7 +7861,7 @@ Y.log('Undefined module: ' + mname + ', matched a pattern: ' + -}, '3.9.1', {"requires": ["get", "features"]}); +}, '3.12.0', {"requires": ["get", "features"]}); YUI.add('loader-rollup', function (Y, NAME) { /** @@ -7881,10 +7963,10 @@ Y.Loader.prototype._rollup = function() { }; -}, '3.9.1', {"requires": ["loader-base"]}); +}, '3.12.0', {"requires": ["loader-base"]}); YUI.add('loader-yui3', function (Y, NAME) { -/* This file is auto-generated by (yogi loader --yes --mix --start ../) */ +/* This file is auto-generated by (yogi.js loader --mix --yes) */ /*jshint maxlen:900, eqeqeq: false */ @@ -8145,7 +8227,9 @@ Y.mix(YUI.Env[Y.version].modules, { ], "lang": [ "en", - "es" + "es", + "hu", + "it" ], "requires": [ "autocomplete-base", @@ -8367,20 +8451,6 @@ Y.mix(YUI.Env[Y.version].modules, { ] }, "calendar": { - "lang": [ - "de", - "en", - "es", - "es-AR", - "fr", - "it", - "ja", - "nb-NO", - "nl", - "pt-BR", - "ru", - "zh-HANT-TW" - ], "requires": [ "calendar-base", "calendarnavigator" @@ -8394,12 +8464,17 @@ Y.mix(YUI.Env[Y.version].modules, { "es", "es-AR", "fr", + "hu", "it", "ja", "nb-NO", "nl", "pt-BR", "ru", + "zh-Hans", + "zh-Hans-CN", + "zh-Hant", + "zh-Hant-HK", "zh-HANT-TW" ], "requires": [ @@ -8507,6 +8582,8 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "es", + "hu", + "it", "ja" ], "requires": [ @@ -8570,22 +8647,19 @@ Y.mix(YUI.Env[Y.version].modules, { }, "cssgrids": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "type": "css" }, "cssgrids-base": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "type": "css" }, "cssgrids-responsive": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "requires": [ "cssgrids", @@ -8595,8 +8669,7 @@ Y.mix(YUI.Env[Y.version].modules, { }, "cssgrids-units": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "requires": [ "cssgrids-base" @@ -8778,6 +8851,12 @@ Y.mix(YUI.Env[Y.version].modules, { "datasource-local" ] }, + "datatable-foot": { + "requires": [ + "datatable-core", + "view" + ] + }, "datatable-formatters": { "requires": [ "datatable-body", @@ -8797,7 +8876,9 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "fr", - "es" + "es", + "hu", + "it" ], "requires": [ "datatable-base" @@ -8809,6 +8890,24 @@ Y.mix(YUI.Env[Y.version].modules, { "datatable-base" ] }, + "datatable-paginator": { + "lang": [ + "en" + ], + "requires": [ + "model", + "view", + "paginator-core", + "datatable-foot", + "datatable-paginator-templates" + ], + "skinnable": true + }, + "datatable-paginator-templates": { + "requires": [ + "template" + ] + }, "datatable-scroll": { "requires": [ "datatable-base", @@ -8821,7 +8920,8 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "fr", - "es" + "es", + "hu" ], "requires": [ "datatable-base" @@ -8897,6 +8997,7 @@ Y.mix(YUI.Env[Y.version].modules, { "fr-FR", "hi", "hi-IN", + "hu", "id", "id-ID", "it", @@ -9051,7 +9152,8 @@ Y.mix(YUI.Env[Y.version].modules, { "dial": { "lang": [ "en", - "es" + "es", + "hu" ], "requires": [ "widget", @@ -9097,7 +9199,8 @@ Y.mix(YUI.Env[Y.version].modules, { }, "dom-style": { "requires": [ - "dom-base" + "dom-base", + "color-base" ] }, "dom-style-ie": { @@ -9822,7 +9925,8 @@ Y.mix(YUI.Env[Y.version].modules, { "requires": [ "event-base", "node-core", - "dom-base" + "dom-base", + "dom-style" ] }, "node-core": { @@ -9902,11 +10006,12 @@ Y.mix(YUI.Env[Y.version].modules, { }, "node-scroll-info": { "requires": [ + "array-extras", "base-build", - "dom-screen", "event-resize", "node-pluginhost", - "plugin" + "plugin", + "selector" ] }, "node-style": { @@ -9931,6 +10036,21 @@ Y.mix(YUI.Env[Y.version].modules, { ], "skinnable": true }, + "paginator": { + "requires": [ + "paginator-core" + ] + }, + "paginator-core": { + "requires": [ + "base" + ] + }, + "paginator-url": { + "requires": [ + "paginator" + ] + }, "panel": { "requires": [ "widget", @@ -9998,11 +10118,6 @@ Y.mix(YUI.Env[Y.version].modules, { "pluginhost-base" ] }, - "profiler": { - "requires": [ - "yui-base" - ] - }, "promise": { "requires": [ "timers" @@ -10445,8 +10560,7 @@ Y.mix(YUI.Env[Y.version].modules, { "tabview-base": { "requires": [ "node-event-delegate", - "classnamemanager", - "skin-sam-tabview" + "classnamemanager" ] }, "tabview-plugin": { @@ -10572,6 +10686,11 @@ Y.mix(YUI.Env[Y.version].modules, { "tree" ] }, + "tree-sortable": { + "requires": [ + "tree" + ] + }, "uploader": { "requires": [ "uploader-html5", @@ -10794,11 +10913,11 @@ Y.mix(YUI.Env[Y.version].modules, { ] } }); -YUI.Env[Y.version].md5 = '660f328e92276f36e9abfafb02169183'; +YUI.Env[Y.version].md5 = 'fd7c67956df50e445f40d1668dd1dc80'; -}, '3.9.1', {"requires": ["loader-base"]}); -YUI.add('yui', function (Y, NAME) {}, '3.9.1', { +}, '3.12.0', {"requires": ["loader-base"]}); +YUI.add('yui', function (Y, NAME) {}, '3.12.0', { "use": [ "get", "features", diff --git a/lib/yuilib/3.12.0/yui-nodejs/yui-nodejs-min.js b/lib/yuilib/3.12.0/yui-nodejs/yui-nodejs-min.js new file mode 100755 index 00000000000..58b22085f4a --- /dev/null +++ b/lib/yuilib/3.12.0/yui-nodejs/yui-nodejs-min.js @@ -0,0 +1,22 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +typeof YUI!="undefined"&&(YUI._YUI=YUI);var YUI=function(){var e=0,t=this,n=arguments,r=n.length,i=function(e,t){return e&&e.hasOwnProperty&&e instanceof t},s=typeof YUI_config!="undefined"&&YUI_config;i(t,YUI)?(t._init(),YUI.GlobalConfig&&t.applyConfig(YUI.GlobalConfig),s&&t.applyConfig(s),r||t._setup()):t=new YUI;if(r){for(;e-1&&(n="3.5.0"),e={applyConfig:function(e){e=e||u;var t,n,r=this.config,i=r.modules,s=r.groups,o=r.aliases,a=this.Env._loader;for(n in e)e.hasOwnProperty(n)&&(t=e[n],i&&n=="modules"?E(i,t):o&&n=="aliases"?E(o,t):s&&n=="groups"?E(s,t):n=="win"?(r[n]=t&&t.contentWindow||t,r.doc=r[n]?r[n].document:null):n!="_yuid"&&(r[n]=t));a&&a._config(e)},_config:function(e){this.applyConfig(e)},_init:function(){var e,t,r=this,s=YUI.Env,u=r.Env,a;r.version=n;if(!u){r.Env={core:["get","features","intl-base","yui-log","yui-log-nodejs","yui-later","loader-base","loader-rollup","loader-yui3"],loaderExtras:["loader-rollup","loader-yui3"],mods:{},versions:{},base:i,cdn:i+n+"/build/",_idx:0,_used:{},_attached:{},_missed:[],_yidx:0,_uidx:0,_guidp:"y",_loaded:{},_BASE_RE:/(?:\?(?:[^&]*&)*([^&]*))?\b(simpleyui|yui(?:-\w+)?)\/\2(?:-(min|debug))?\.js/,parseBasePath:function(e,t){var n=e.match(t),r,i;return n&&(r=RegExp.leftContext||e.slice(0,e.indexOf(n[0])),i=n[3],n[1]&&(r+="?"+n[1]),r={filter:i,path:r}),r},getBase:s&&s.getBase||function(t){var n=h&&h.getElementsByTagName("script")||[],i=u.cdn,s,o,a,f;for(o=0,a=n.length;o',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},m.indexOf=p._isNative(d.indexOf)?function(e,t,n){return d.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,y):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},E.each=function(t,n,r,i){var s;for(s in t)(i||N(t,s))&&n.call(r||e,t[s],s,t);return e},E.some=function(t,n,r,i){var s;for(s in t)if(i||N(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},E.getValue=function(t,n){if(!p.isObject(t))return w;var r,i=e.Array(n),s=i.length;for(r=0;t!==w&&r=0){for(i=0;u!==w&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"3.12.0",{use:["yui-base","get","features","intl-base","yui-log","yui-log-nodejs","yui-later","loader-base","loader-rollup","loader-yui3"]}),YUI.add("get",function(e,t){var n=require("module"),r=require("path"),i=require("fs"),s=require("request"),o=function(t,n,r){e.Lang.isFunction(t.onEnd)&&t.onEnd.call(e,n,r)},u=function(t){e.Lang.isFunction(t.onSuccess)&&t.onSuccess.call(e,t),o(t,"success","success")},a=function(t,n){n.errors=[n],e.Lang.isFunction(t.onFailure)&&t.onFailure.call(e,n,t),o(t,n,"fail")};e.Get=function(){},e.config.base=r.join(__dirname,"../"),YUI.require=require,YUI.process=process,e.Get._exec=function(e,t,i){e.charCodeAt(0)===65279&&(e=e.slice(1));var s=new n(t,module);s.filename=t,s.paths=n._nodeModulePaths(r.dirname(t)),typeof YUI._getLoadHook=="function"&&(e=YUI._getLoadHook(e,t)),s._compile("module.exports = function (YUI) {"+e+"\n;return YUI;};",t),YUI=s.exports(YUI),s.loaded=!0,i(null,t)},e.Get._include=function(t,r){var o,u,a=this;if(t.match(/^https?:\/\//))o={url:t,timeout:a.timeout},s(o,function(n,i,s){n?r(n,t):e.Get._exec(s,t,r)});else{try{t=n._findPath(t,n._resolveLookupPaths(t,module.parent.parent)[1]);if(!e.config.useSync){i.readFile(t,"utf8",function(n,i){n?r(n,t):e.Get._exec(i,t,r)});return}u=i.readFileSync +(t,"utf8")}catch(f){r(f,t);return}e.Get._exec(u,t,r)}},e.Get.js=function(t,n){var r=e.Array(t),i,s,o=r.length,f=0,l=function(){f===o&&u(n)};for(s=0;s0){o=a(s);if(o)return o;u=s.lastIndexOf("-");if(!(u>=0))break;s=s.substring(0,u),u>=2&&s.charAt(u-2)==="-"&&(s=s.substring(0,u-2))}}return""}})},"3.12.0",{requires:["yui-base"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log" +,i="undefined",s={debug:1,info:2,warn:4,error:8};n.log=function(e,t,o,u){var a,f,l,c,h,p,d=n,v=d.config,m=d.fire?d:YUI.Env.globalEvents;return v.debug&&(o=o||"",typeof o!="undefined"&&(f=v.logExclude,l=v.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1,d.config.logLevel=d.config.logLevel||"debug",p=s[d.config.logLevel.toLowerCase()],t in s&&s[t]-1,n.comboSep="&",n.maxURLLength=i,n.ignoreRegistered=t.ignoreRegistered,n.root=e.Env.meta.root,n.timeout=0,n.forceMap={},n.allowRollup=!1,n.filters={},n.required={},n.patterns={},n.moduleInfo={},n.groups=e.merge(e.Env.meta.groups),n.skin=e.merge(e.Env.meta.skin),n.conditions={},n.config=t,n._internal=!0,n._populateCache(),n.loaded=o[c],n.async=!0,n._inspectPage(),n._internal=!1,n._config(t),n.forceMap=n.force?e.Array.hash(n.force):{},n.testresults=null,e.config.tests&&(n.testresults=e.config.tests),n.sorted=[],n.dirty=!0,n.inserted={},n.skipped={},n.tested={},n.ignoreRegistered&&n._resetModules()},e.Loader.prototype={_populateCache:function(){var t=this,n=g.modules,r=s._renderedMods,i;if(r&&!t.ignoreRegistered){for(i in r)r.hasOwnProperty(i)&&(t.moduleInfo[i]=e.merge(r[i]));r=s._conditions;for(i in r)r.hasOwnProperty(i)&&(t.conditions[i]=e.merge(r[i]))}else for(i in n)n.hasOwnProperty(i)&&t.addModule(n[i],i)},_resetModules:function(){var e=this,t,n,r,i,s;for(t in e.moduleInfo)if(e.moduleInfo.hasOwnProperty(t)){r=e.moduleInfo[t],i=r.name,s=YUI.Env.mods[i]?YUI.Env.mods[i].details:null,s&&(e.moduleInfo[i]._reset=!0,e.moduleInfo[i].requires=s.requires||[],e.moduleInfo[i].optional=s.optional||[],e.moduleInfo[i].supersedes=s.supercedes||[]);if(r.defaults)for(n in r.defaults)r.defaults.hasOwnProperty(n)&&r[n]&&(r[n]=r.defaults[n]);delete r.langCache,delete r.skinCache,r.skinnable&&e._addSkin(e.skin.defaultSkin,r.name)}},REGEX_CSS:/\.css(?:[?;].*)?$/i,FILTER_DEFS:{RAW:{searchExp:"-min\\.js",replaceStr:".js"},DEBUG:{searchExp:"-min\\.js",replaceStr:"-debug.js"},COVERAGE:{searchExp:"-min\\.js",replaceStr:"-coverage.js"}},_inspectPage:function(){var e=this,t,n,r,i,s;for(s in e.moduleInfo)e.moduleInfo.hasOwnProperty(s)&&(t=e.moduleInfo[s],t.type&&t.type===u&&e.isCSSLoaded(t.name)&&(e.loaded[s]=!0));for(s in w)w.hasOwnProperty(s)&&(t=w[s],t.details&&(n=e.moduleInfo[t.name],r=t.details.requires,i=n&&n.requires,n?!n._inspected&&r&&i.length!==r.length&&delete n.expanded:n=e.addModule(t.details,s),n._inspected=!0))},_requires:function(e,t){var n,r,i,s,o=this.moduleInfo,a=o[e],f=o[t];if(!a||!f)return!1;r=a.expanded_map,i=a.after_map;if(i&&t in i)return!0;i=f.after_map;if(i&&e in i)return!1;s=o[t]&&o[t].supersedes;if(s)for(n=0;n-1&&(k=n);if(C&&(C[c]||k&&C[k])){L=c,C[k]&&(L=k);for(n=0;n-1},getModule:function(t){if(!t)return null;var n,r,i,s=this.moduleInfo[t],o=this.patterns;if(!s||s&&s.ext)for(i in o)if(o.hasOwnProperty(i)){n=o[i],n.test||(n.test=this._patternTest);if(n.test(t,i)){r=n;break}}return s?r&&s&&r.configFn&&!s.configFn&&(s.configFn=r.configFn,s.configFn(s)):r&&(n.action?n.action.call(this,t,i):(s=this.addModule(e.merge(r),t),r.configFn&&(s.configFn=r.configFn),s.temp=!0)),s},_rollup:function(){},_reduce:function(e){e=e||this.required;var t,n,r,i,s=this.loadType,o=this.ignore?v.hash(this.ignore):!1;for(t in e)if(e.hasOwnProperty(t)){i=this.getModule(t),((this.loaded[t]||w[t])&&!this.forceMap[t]&&!this.ignoreRegistered||s&&i&&i.type!==s)&&delete e[t],o&&o[t]&&delete e[t],r=i&&i.supersedes;if(r)for(n=0;n0&&(m.running=!0,m.next()())},insert:function(t,n,r){var i=this,s=e.merge(this);delete s.require,delete s.dirty,m.add(function(){i._insert(s,t,n,r)}),this._continue()},loadNext:function(){return},_filter:function(e,t,n){var r=this.filter,i=t&&t in this.filters,s=i&&this.filters[t],o=n||(this.moduleInfo[t]?this.moduleInfo[t].group:null);return o&&this.groups[o]&&this.groups[o].filter&&(s=this.groups[o].filter,i=!0),e&&(i&&(r=b.isString(s)?this.FILTER_DEFS[s.toUpperCase()]||null:s),r&&(e=e.replace(new RegExp(r.searchExp,"g"),r.replaceStr))),e},_url:function(e,t,n){return this._filter((n||this.base||"")+e,t)},resolve:function(e,t){var r,s,o,f,c,h,p,d,v,m,g,y,w,E,S=[],x,T,N={},C=this,k,A,O=C.ignoreRegistered?{}:C.inserted,M={js:[],jsMods:[],css:[],cssMods:[]},_=C.loadType||"js",D;(C.skin.overrides||C.skin.defaultSkin!==l||C.ignoreRegistered)&&C._resetModules(),e&&C.calculate(),t=t||C.sorted,D=function(e){if(e){c=e.group&&C.groups[e.group]||n,c.async===!1&&(e.async=c.async),f=e.fullpath?C._filter(e.fullpath,t[s]):C._url(e.path,t[s],c.base||e.base);if(e.attributes||e.async===!1)f={url:f,async:e.async},e.attributes&&(f.attributes=e.attributes);M[e.type].push(f),M[e.type+"Mods"].push(e)}},r=t.length,y=C.comboBase,f=y,m={};for(s=0;sA){S=[];for(t=0;tA&&(o=S.pop(),x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)),S=[],o&&S.push(o));S.length&&(x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)))}else M[_].push(C._filter(x,null,N[w].group));M[_+"Mods"]=M[_+"Mods"].concat(g)}}return N=null,M},load:function(e){if(!e)return;var t=this,n=t.resolve(!0);t.data=n,t.onEnd=function(){e.apply(t.context||t,arguments)},t.insert()}}},"3.12.0",{requires:["get","features"]}),YUI.add("loader-rollup",function(e,t){e.Loader.prototype._rollup=function(){var e,t,n,r,i=this.required,s,o=this.moduleInfo,u,a,f;if(this.dirty||!this.rollups){this.rollups={};for(e in o)o.hasOwnProperty(e)&&(n=this.getModule(e),n&&n.rollup&&(this.rollups[e]=n))}for(;;){u=!1;for(e in this.rollups)if(this.rollups.hasOwnProperty(e)&&!i[e]&&(!this.loaded[e]||this.forceMap[e])){n=this.getModule(e),r=n.supersedes||[],s=!1;if(!n.rollup)continue;a=0;for(t=0;t=n.rollup;if(s)break}}s&&(i[e]=!0,u=!0,this.getRequires(n))}if(!u)break}}},"3.12.0",{requires:["loader-base"]}),YUI.add("loader-yui3",function(e,t){YUI.Env[e.version].modules=YUI.Env[e.version].modules||{},e.mix(YUI.Env[e.version].modules,{"align-plugin":{requires:["node-screen","node-pluginhost"]},anim:{use:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"]},"anim-base":{requires:["base-base","node-style" +]},"anim-color":{requires:["anim-base"]},"anim-curve":{requires:["anim-xy"]},"anim-easing":{requires:["anim-base"]},"anim-node-plugin":{requires:["node-pluginhost","anim-base"]},"anim-scroll":{requires:["anim-base"]},"anim-shape":{requires:["anim-base","anim-easing","anim-color","matrix"]},"anim-shape-transform":{use:["anim-shape"]},"anim-xy":{requires:["anim-base","node-screen"]},app:{use:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"]},"app-base":{requires:["classnamemanager","pjax-base","router","view"]},"app-content":{requires:["app-base","pjax-content"]},"app-transitions":{requires:["app-base"]},"app-transitions-css":{type:"css"},"app-transitions-native":{condition:{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"},requires:["app-transitions","app-transitions-css","parallel","transition"]},"array-extras":{requires:["yui-base"]},"array-invoke":{requires:["yui-base"]},arraylist:{requires:["yui-base"]},"arraylist-add":{requires:["arraylist"]},"arraylist-filter":{requires:["arraylist"]},arraysort:{requires:["yui-base"]},"async-queue":{requires:["event-custom"]},attribute:{use:["attribute-base","attribute-complex"]},"attribute-base":{requires:["attribute-core","attribute-observable","attribute-extras"]},"attribute-complex":{requires:["attribute-base"]},"attribute-core":{requires:["oop"]},"attribute-events":{use:["attribute-observable"]},"attribute-extras":{requires:["oop"]},"attribute-observable":{requires:["event-custom"]},autocomplete:{use:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"]},"autocomplete-base":{optional:["autocomplete-sources"],requires:["array-extras","base-build","escape","event-valuechange","node-base"]},"autocomplete-filters":{requires:["array-extras","text-wordbreak"]},"autocomplete-filters-accentfold":{requires:["array-extras","text-accentfold","text-wordbreak"]},"autocomplete-highlighters":{requires:["array-extras","highlight-base"]},"autocomplete-highlighters-accentfold":{requires:["array-extras","highlight-accentfold"]},"autocomplete-list":{after:["autocomplete-sources"],lang:["en","es","hu","it"],requires:["autocomplete-base","event-resize","node-screen","selector-css3","shim-plugin","widget","widget-position","widget-position-align"],skinnable:!0},"autocomplete-list-keys":{condition:{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"},requires:["autocomplete-list","base-build"]},"autocomplete-plugin":{requires:["autocomplete-list","node-pluginhost"]},"autocomplete-sources":{optional:["io-base","json-parse","jsonp","yql"],requires:["autocomplete-base"]},axes:{use:["axis-numeric","axis-category","axis-time","axis-stacked"]},"axes-base":{use:["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"]},axis:{requires:["dom","widget","widget-position","widget-stack","graphics","axis-base"]},"axis-base":{requires:["classnamemanager","datatype-number","datatype-date","base","event-custom"]},"axis-category":{requires:["axis","axis-category-base"]},"axis-category-base":{requires:["axis-base"]},"axis-numeric":{requires:["axis","axis-numeric-base"]},"axis-numeric-base":{requires:["axis-base"]},"axis-stacked":{requires:["axis-numeric","axis-stacked-base"]},"axis-stacked-base":{requires:["axis-numeric-base"]},"axis-time":{requires:["axis","axis-time-base"]},"axis-time-base":{requires:["axis-base"]},base:{use:["base-base","base-pluginhost","base-build"]},"base-base":{requires:["attribute-base","base-core","base-observable"]},"base-build":{requires:["base-base"]},"base-core":{requires:["attribute-core"]},"base-observable":{requires:["attribute-observable"]},"base-pluginhost":{requires:["base-base","pluginhost"]},button:{requires:["button-core","cssbutton","widget"]},"button-core":{requires:["attribute-core","classnamemanager","node-base"]},"button-group":{requires:["button-plugin","cssbutton","widget"]},"button-plugin":{requires:["button-core","cssbutton","node-pluginhost"]},cache:{use:["cache-base","cache-offline","cache-plugin"]},"cache-base":{requires:["base"]},"cache-offline":{requires:["cache-base","json"]},"cache-plugin":{requires:["plugin","cache-base"]},calendar:{requires:["calendar-base","calendarnavigator"],skinnable:!0},"calendar-base":{lang:["de","en","es","es-AR","fr","hu","it","ja","nb-NO","nl","pt-BR","ru","zh-Hans","zh-Hans-CN","zh-Hant","zh-Hant-HK","zh-HANT-TW"],requires:["widget","datatype-date","datatype-date-math","cssgrids"],skinnable:!0},calendarnavigator:{requires:["plugin","classnamemanager","datatype-date","node"],skinnable:!0},charts:{use:["charts-base"]},"charts-base":{requires:["dom","event-mouseenter","event-touch","graphics-group","axes","series-pie","series-line","series-marker","series-area","series-spline","series-column","series-bar","series-areaspline","series-combo","series-combospline","series-line-stacked","series-marker-stacked","series-area-stacked","series-spline-stacked","series-column-stacked","series-bar-stacked","series-areaspline-stacked","series-combo-stacked","series-combospline-stacked"]},"charts-legend":{requires:["charts-base"]},classnamemanager:{requires:["yui-base"]},"clickable-rail":{requires:["slider-base"]},collection:{use:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"]},color:{use:["color-base","color-hsl","color-harmony"]},"color-base":{requires:["yui-base"]},"color-harmony":{requires:["color-hsl"]},"color-hsl":{requires:["color-base"]},"color-hsv":{requires:["color-base"]},console:{lang:["en","es","hu","it","ja"],requires:["yui-log","widget"],skinnable:!0},"console-filters":{requires:["plugin","console"],skinnable:!0},controller:{use:["router"]},cookie:{requires:["yui-base"]},"createlink-base":{requires:["editor-base"]},cssbase +:{after:["cssreset","cssfonts","cssgrids","cssreset-context","cssfonts-context","cssgrids-context"],type:"css"},"cssbase-context":{after:["cssreset","cssfonts","cssgrids","cssreset-context","cssfonts-context","cssgrids-context"],type:"css"},cssbutton:{type:"css"},cssfonts:{type:"css"},"cssfonts-context":{type:"css"},cssgrids:{optional:["cssnormalize"],type:"css"},"cssgrids-base":{optional:["cssnormalize"],type:"css"},"cssgrids-responsive":{optional:["cssnormalize"],requires:["cssgrids","cssgrids-responsive-base"],type:"css"},"cssgrids-units":{optional:["cssnormalize"],requires:["cssgrids-base"],type:"css"},cssnormalize:{type:"css"},"cssnormalize-context":{type:"css"},cssreset:{type:"css"},"cssreset-context":{type:"css"},dataschema:{use:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"]},"dataschema-array":{requires:["dataschema-base"]},"dataschema-base":{requires:["base"]},"dataschema-json":{requires:["dataschema-base","json"]},"dataschema-text":{requires:["dataschema-base"]},"dataschema-xml":{requires:["dataschema-base"]},datasource:{use:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"]},"datasource-arrayschema":{requires:["datasource-local","plugin","dataschema-array"]},"datasource-cache":{requires:["datasource-local","plugin","cache-base"]},"datasource-function":{requires:["datasource-local"]},"datasource-get":{requires:["datasource-local","get"]},"datasource-io":{requires:["datasource-local","io-base"]},"datasource-jsonschema":{requires:["datasource-local","plugin","dataschema-json"]},"datasource-local":{requires:["base"]},"datasource-polling":{requires:["datasource-local"]},"datasource-textschema":{requires:["datasource-local","plugin","dataschema-text"]},"datasource-xmlschema":{requires:["datasource-local","plugin","datatype-xml","dataschema-xml"]},datatable:{use:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"]},"datatable-base":{requires:["datatable-core","datatable-table","datatable-head","datatable-body","base-build","widget"],skinnable:!0},"datatable-body":{requires:["datatable-core","view","classnamemanager"]},"datatable-column-widths":{requires:["datatable-base"]},"datatable-core":{requires:["escape","model-list","node-event-delegate"]},"datatable-datasource":{requires:["datatable-base","plugin","datasource-local"]},"datatable-foot":{requires:["datatable-core","view"]},"datatable-formatters":{requires:["datatable-body","datatype-number-format","datatype-date-format","escape"]},"datatable-head":{requires:["datatable-core","view","classnamemanager"]},"datatable-message":{lang:["en","fr","es","hu","it"],requires:["datatable-base"],skinnable:!0},"datatable-mutable":{requires:["datatable-base"]},"datatable-paginator":{lang:["en"],requires:["model","view","paginator-core","datatable-foot","datatable-paginator-templates"],skinnable:!0},"datatable-paginator-templates":{requires:["template"]},"datatable-scroll":{requires:["datatable-base","datatable-column-widths","dom-screen"],skinnable:!0},"datatable-sort":{lang:["en","fr","es","hu"],requires:["datatable-base"],skinnable:!0},"datatable-table":{requires:["datatable-core","datatable-head","datatable-body","view","classnamemanager"]},datatype:{use:["datatype-date","datatype-number","datatype-xml"]},"datatype-date":{use:["datatype-date-parse","datatype-date-format","datatype-date-math"]},"datatype-date-format":{lang:["ar","ar-JO","ca","ca-ES","da","da-DK","de","de-AT","de-DE","el","el-GR","en","en-AU","en-CA","en-GB","en-IE","en-IN","en-JO","en-MY","en-NZ","en-PH","en-SG","en-US","es","es-AR","es-BO","es-CL","es-CO","es-EC","es-ES","es-MX","es-PE","es-PY","es-US","es-UY","es-VE","fi","fi-FI","fr","fr-BE","fr-CA","fr-FR","hi","hi-IN","hu","id","id-ID","it","it-IT","ja","ja-JP","ko","ko-KR","ms","ms-MY","nb","nb-NO","nl","nl-BE","nl-NL","pl","pl-PL","pt","pt-BR","ro","ro-RO","ru","ru-RU","sv","sv-SE","th","th-TH","tr","tr-TR","vi","vi-VN","zh-Hans","zh-Hans-CN","zh-Hant","zh-Hant-HK","zh-Hant-TW"]},"datatype-date-math":{requires:["yui-base"]},"datatype-date-parse":{},"datatype-number":{use:["datatype-number-parse","datatype-number-format"]},"datatype-number-format":{},"datatype-number-parse":{},"datatype-xml":{use:["datatype-xml-parse","datatype-xml-format"]},"datatype-xml-format":{},"datatype-xml-parse":{},dd:{use:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"]},"dd-constrain":{requires:["dd-drag"]},"dd-ddm":{requires:["dd-ddm-base","event-resize"]},"dd-ddm-base":{requires:["node","base","yui-throttle","classnamemanager"]},"dd-ddm-drop":{requires:["dd-ddm"]},"dd-delegate":{requires:["dd-drag","dd-drop-plugin","event-mouseenter"]},"dd-drag":{requires:["dd-ddm-base"]},"dd-drop":{requires:["dd-drag","dd-ddm-drop"]},"dd-drop-plugin":{requires:["dd-drop"]},"dd-gestures":{condition:{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"},requires:["dd-drag","event-synthetic","event-gestures"]},"dd-plugin":{optional:["dd-constrain","dd-proxy"],requires:["dd-drag"]},"dd-proxy":{requires:["dd-drag"]},"dd-scroll":{requires:["dd-drag"]},dial:{lang:["en","es","hu"],requires:["widget","dd-drag","event-mouseenter","event-move","event-key","transition","intl"],skinnable:!0},dom:{use:["dom-base","dom-screen","dom-style","selector-native","selector"]},"dom-base":{requires:["dom-core"]},"dom-core":{requires:["oop","features"]},"dom-deprecated":{requires:["dom-base"]},"dom-screen":{requires:["dom-base","dom-style"]},"dom-style":{requires:["dom-base","color-base"]},"dom-style-ie":{condition:{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test +:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"},requires:["dom-style"]},dump:{requires:["yui-base"]},editor:{use:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"]},"editor-base":{requires:["base","frame","node","exec-command","editor-selection"]},"editor-bidi":{requires:["editor-base"]},"editor-br":{requires:["editor-base"]},"editor-lists":{requires:["editor-base"]},"editor-para":{requires:["editor-para-base"]},"editor-para-base":{requires:["editor-base"]},"editor-para-ie":{condition:{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"},requires:["editor-para-base"]},"editor-selection":{requires:["node"]},"editor-tab":{requires:["editor-base"]},escape:{requires:["yui-base"]},event:{after:["node-base"],use:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"]},"event-base":{after:["node-base"],requires:["event-custom-base"]},"event-base-ie":{after:["event-base"],condition:{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"},requires:["node-base"]},"event-contextmenu":{requires:["event-synthetic","dom-screen"]},"event-custom":{use:["event-custom-base","event-custom-complex"]},"event-custom-base":{requires:["oop"]},"event-custom-complex":{requires:["event-custom-base"]},"event-delegate":{requires:["node-base"]},"event-flick":{requires:["node-base","event-touch","event-synthetic"]},"event-focus":{requires:["event-synthetic"]},"event-gestures":{use:["event-flick","event-move"]},"event-hover":{requires:["event-mouseenter"]},"event-key":{requires:["event-synthetic"]},"event-mouseenter":{requires:["event-synthetic"]},"event-mousewheel":{requires:["node-base"]},"event-move":{requires:["node-base","event-touch","event-synthetic"]},"event-outside":{requires:["event-synthetic"]},"event-resize":{requires:["node-base","event-synthetic"]},"event-simulate":{requires:["event-base"]},"event-synthetic":{requires:["node-base","event-custom-complex"]},"event-tap":{requires:["node-base","event-base","event-touch","event-synthetic"]},"event-touch":{requires:["node-base"]},"event-valuechange":{requires:["event-focus","event-synthetic"]},"exec-command":{requires:["frame"]},features:{requires:["yui-base"]},file:{requires:["file-flash","file-html5"]},"file-flash":{requires:["base"]},"file-html5":{requires:["base"]},frame:{requires:["base","node","selector-css3","yui-throttle"]},"gesture-simulate":{requires:["async-queue","event-simulate","node-screen"]},get:{requires:["yui-base"]},graphics:{requires:["node","event-custom","pluginhost","matrix","classnamemanager"]},"graphics-canvas":{condition:{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"},requires:["graphics"]},"graphics-canvas-default":{condition:{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}},"graphics-group":{requires:["graphics"]},"graphics-svg":{condition:{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"},requires:["graphics"]},"graphics-svg-default":{condition:{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}},"graphics-vml":{condition:{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"},requires:["graphics"]},"graphics-vml-default":{condition:{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}},handlebars:{use:["handlebars-compiler"]},"handlebars-base":{requires:[]},"handlebars-compiler":{requires:["handlebars-base"]},highlight:{use:["highlight-base","highlight-accentfold"]},"highlight-accentfold":{requires:["highlight-base","text-accentfold"]},"highlight-base":{requires:["array-extras","classnamemanager","escape","text-wordbreak"]},history:{use:["history-base","history-hash","history-hash-ie","history-html5"]},"history-base":{requires:["event-custom-complex"]},"history-hash":{after:["history-html5"],requires:["event-synthetic","history-base","yui-later"]},"history-hash-ie":{condition:{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"},requires:["history-hash","node-base"]},"history-html5":{optional:["json"],requires:["event-base","history-base","node-base"]},imageloader:{requires:["base-base","node-style" +,"node-screen"]},intl:{requires:["intl-base","event-custom"]},"intl-base":{requires:["yui-base"]},io:{use:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"]},"io-base":{requires:["event-custom-base","querystring-stringify-simple"]},"io-form":{requires:["io-base","node-base"]},"io-nodejs":{condition:{name:"io-nodejs",trigger:"io-base",ua:"nodejs"},requires:["io-base"]},"io-queue":{requires:["io-base","queue-promote"]},"io-upload-iframe":{requires:["io-base","node-base"]},"io-xdr":{requires:["io-base","datatype-xml-parse"]},json:{use:["json-parse","json-stringify"]},"json-parse":{requires:["yui-base"]},"json-parse-shim":{condition:{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"},requires:["json-parse"]},"json-stringify":{requires:["yui-base"]},"json-stringify-shim":{condition:{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"},requires:["json-stringify"]},jsonp:{requires:["get","oop"]},"jsonp-url":{requires:["jsonp"]},"lazy-model-list":{requires:["model-list"]},loader:{use:["loader-base","loader-rollup","loader-yui3"]},"loader-base":{requires:["get","features"]},"loader-rollup":{requires:["loader-base"]},"loader-yui3":{requires:["loader-base"]},matrix:{requires:["yui-base"]},model:{requires:["base-build","escape","json-parse"]},"model-list":{requires:["array-extras","array-invoke","arraylist","base-build","escape","json-parse","model"]},"model-sync-rest":{requires:["model","io-base","json-stringify"]},node:{use:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"]},"node-base":{requires:["event-base","node-core","dom-base","dom-style"]},"node-core":{requires:["dom-core","selector"]},"node-deprecated":{requires:["node-base"]},"node-event-delegate":{requires:["node-base","event-delegate"]},"node-event-html5":{requires:["node-base"]},"node-event-simulate":{requires:["node-base","event-simulate","gesture-simulate"]},"node-flick":{requires:["classnamemanager","transition","event-flick","plugin"],skinnable:!0},"node-focusmanager":{requires:["attribute","node","plugin","node-event-simulate","event-key","event-focus"]},"node-load":{requires:["node-base","io-base"]},"node-menunav":{requires:["node","classnamemanager","plugin","node-focusmanager"],skinnable:!0},"node-pluginhost":{requires:["node-base","pluginhost"]},"node-screen":{requires:["dom-screen","node-base"]},"node-scroll-info":{requires:["array-extras","base-build","event-resize","node-pluginhost","plugin","selector"]},"node-style":{requires:["dom-style","node-base"]},oop:{requires:["yui-base"]},overlay:{requires:["widget","widget-stdmod","widget-position","widget-position-align","widget-stack","widget-position-constrain"],skinnable:!0},paginator:{requires:["paginator-core"]},"paginator-core":{requires:["base"]},"paginator-url":{requires:["paginator"]},panel:{requires:["widget","widget-autohide","widget-buttons","widget-modality","widget-position","widget-position-align","widget-position-constrain","widget-stack","widget-stdmod"],skinnable:!0},parallel:{requires:["yui-base"]},pjax:{requires:["pjax-base","pjax-content"]},"pjax-base":{requires:["classnamemanager","node-event-delegate","router"]},"pjax-content":{requires:["io-base","node-base","router"]},"pjax-plugin":{requires:["node-pluginhost","pjax","plugin"]},plugin:{requires:["base-base"]},pluginhost:{use:["pluginhost-base","pluginhost-config"]},"pluginhost-base":{requires:["yui-base"]},"pluginhost-config":{requires:["pluginhost-base"]},promise:{requires:["timers"]},querystring:{use:["querystring-parse","querystring-stringify"]},"querystring-parse":{requires:["yui-base","array-extras"]},"querystring-parse-simple":{requires:["yui-base"]},"querystring-stringify":{requires:["yui-base"]},"querystring-stringify-simple":{requires:["yui-base"]},"queue-promote":{requires:["yui-base"]},"range-slider":{requires:["slider-base","slider-value-range","clickable-rail"]},recordset:{use:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"]},"recordset-base":{requires:["base","arraylist"]},"recordset-filter":{requires:["recordset-base","array-extras","plugin"]},"recordset-indexer":{requires:["recordset-base","plugin"]},"recordset-sort":{requires:["arraysort","recordset-base","plugin"]},resize:{use:["resize-base","resize-proxy","resize-constrain"]},"resize-base":{requires:["base","widget","event","oop","dd-drag","dd-delegate","dd-drop"],skinnable:!0},"resize-constrain":{requires:["plugin","resize-base"]},"resize-plugin":{optional:["resize-constrain"],requires:["resize-base","plugin"]},"resize-proxy":{requires:["plugin","resize-base"]},router:{optional:["querystring-parse"],requires:["array-extras","base-build","history"]},scrollview:{requires:["scrollview-base","scrollview-scrollbars"]},"scrollview-base":{requires:["widget","event-gestures","event-mousewheel","transition"],skinnable:!0},"scrollview-base-ie":{condition:{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"},requires:["scrollview-base"]},"scrollview-list":{requires:["plugin","classnamemanager"],skinnable:!0},"scrollview-paginator":{requires:["plugin","classnamemanager"]},"scrollview-scrollbars":{requires:["classnamemanager","transition","plugin"],skinnable:!0},selector:{requires:["selector-native"]},"selector-css2":{condition:{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"},requires:["selector-native"]},"selector-css3":{requires:["selector-native","selector-css2"]},"selector-native":{requires:["dom-base"]},"series-area":{requires:["series-cartesian","series-fill-util"]},"series-area-stacked" +:{requires:["series-stacked","series-area"]},"series-areaspline":{requires:["series-area","series-curve-util"]},"series-areaspline-stacked":{requires:["series-stacked","series-areaspline"]},"series-bar":{requires:["series-marker","series-histogram-base"]},"series-bar-stacked":{requires:["series-stacked","series-bar"]},"series-base":{requires:["graphics","axis-base"]},"series-candlestick":{requires:["series-range"]},"series-cartesian":{requires:["series-base"]},"series-column":{requires:["series-marker","series-histogram-base"]},"series-column-stacked":{requires:["series-stacked","series-column"]},"series-combo":{requires:["series-cartesian","series-line-util","series-plot-util","series-fill-util"]},"series-combo-stacked":{requires:["series-stacked","series-combo"]},"series-combospline":{requires:["series-combo","series-curve-util"]},"series-combospline-stacked":{requires:["series-combo-stacked","series-curve-util"]},"series-curve-util":{},"series-fill-util":{},"series-histogram-base":{requires:["series-cartesian","series-plot-util"]},"series-line":{requires:["series-cartesian","series-line-util"]},"series-line-stacked":{requires:["series-stacked","series-line"]},"series-line-util":{},"series-marker":{requires:["series-cartesian","series-plot-util"]},"series-marker-stacked":{requires:["series-stacked","series-marker"]},"series-ohlc":{requires:["series-range"]},"series-pie":{requires:["series-base","series-plot-util"]},"series-plot-util":{},"series-range":{requires:["series-cartesian"]},"series-spline":{requires:["series-line","series-curve-util"]},"series-spline-stacked":{requires:["series-stacked","series-spline"]},"series-stacked":{requires:["axis-stacked"]},"shim-plugin":{requires:["node-style","node-pluginhost"]},slider:{use:["slider-base","slider-value-range","clickable-rail","range-slider"]},"slider-base":{requires:["widget","dd-constrain","event-key"],skinnable:!0},"slider-value-range":{requires:["slider-base"]},sortable:{requires:["dd-delegate","dd-drop-plugin","dd-proxy"]},"sortable-scroll":{requires:["dd-scroll","sortable"]},stylesheet:{requires:["yui-base"]},substitute:{optional:["dump"],requires:["yui-base"]},swf:{requires:["event-custom","node","swfdetect","escape"]},swfdetect:{requires:["yui-base"]},tabview:{requires:["widget","widget-parent","widget-child","tabview-base","node-pluginhost","node-focusmanager"],skinnable:!0},"tabview-base":{requires:["node-event-delegate","classnamemanager"]},"tabview-plugin":{requires:["tabview-base"]},template:{use:["template-base","template-micro"]},"template-base":{requires:["yui-base"]},"template-micro":{requires:["escape"]},test:{requires:["event-simulate","event-custom","json-stringify"]},"test-console":{requires:["console-filters","test","array-extras"],skinnable:!0},text:{use:["text-accentfold","text-wordbreak"]},"text-accentfold":{requires:["array-extras","text-data-accentfold"]},"text-data-accentfold":{requires:["yui-base"]},"text-data-wordbreak":{requires:["yui-base"]},"text-wordbreak":{requires:["array-extras","text-data-wordbreak"]},timers:{requires:["yui-base"]},transition:{requires:["node-style"]},"transition-timer":{condition:{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"},requires:["transition"]},tree:{requires:["base-build","tree-node"]},"tree-labelable":{requires:["tree"]},"tree-lazy":{requires:["base-pluginhost","plugin","tree"]},"tree-node":{},"tree-openable":{requires:["tree"]},"tree-selectable":{requires:["tree"]},"tree-sortable":{requires:["tree"]},uploader:{requires:["uploader-html5","uploader-flash"]},"uploader-flash":{requires:["swf","widget","base","cssbutton","node","event-custom","file-flash","uploader-queue"]},"uploader-html5":{requires:["widget","node-event-simulate","file-html5","uploader-queue"]},"uploader-queue":{requires:["base"]},view:{requires:["base-build","node-event-delegate"]},"view-node-map":{requires:["view"]},widget:{use:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]},"widget-anim":{requires:["anim-base","plugin","widget"]},"widget-autohide":{requires:["base-build","event-key","event-outside","widget"]},"widget-base":{requires:["attribute","base-base","base-pluginhost","classnamemanager","event-focus","node-base","node-style"],skinnable:!0},"widget-base-ie":{condition:{name:"widget-base-ie",trigger:"widget-base",ua:"ie"},requires:["widget-base"]},"widget-buttons":{requires:["button-plugin","cssbutton","widget-stdmod"]},"widget-child":{requires:["base-build","widget"]},"widget-htmlparser":{requires:["widget-base"]},"widget-locale":{requires:["widget-base"]},"widget-modality":{requires:["base-build","event-outside","widget"],skinnable:!0},"widget-parent":{requires:["arraylist","base-build","widget"]},"widget-position":{requires:["base-build","node-screen","widget"]},"widget-position-align":{requires:["widget-position"]},"widget-position-constrain":{requires:["widget-position"]},"widget-skin":{requires:["widget-base"]},"widget-stack":{requires:["base-build","widget"],skinnable:!0},"widget-stdmod":{requires:["base-build","widget"]},"widget-uievents":{requires:["node-event-delegate","widget-base"]},yql:{requires:["oop"]},"yql-jsonp":{condition:{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"},requires:["jsonp","jsonp-url"]},"yql-nodejs":{condition:{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}},"yql-winjs":{condition:{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"}},yui:{},"yui-base":{},"yui-later":{requires:["yui-base"]},"yui-log":{requires:["yui-base"]},"yui-throttle":{requires:["yui-base"]}}),YUI.Env[e.version].md5="fd7c67956df50e445f40d1668dd1dc80"},"3.12.0",{requires:["loader-base"]}),YUI.add("yui",function(e,t){},"3.12.0",{use:["get","features","intl-base","yui-log","yui-log-nodejs","yui-later","loader-base","loader-rollup","loader-yui3"]} +); diff --git a/lib/yuilib/3.9.1/build/yui-nodejs/yui-nodejs.js b/lib/yuilib/3.12.0/yui-nodejs/yui-nodejs.js old mode 100644 new mode 100755 similarity index 96% rename from lib/yuilib/3.9.1/build/yui-nodejs/yui-nodejs.js rename to lib/yuilib/3.12.0/yui-nodejs/yui-nodejs.js index 4768c0af417..12cf49670ee --- a/lib/yuilib/3.9.1/build/yui-nodejs/yui-nodejs.js +++ b/lib/yuilib/3.12.0/yui-nodejs/yui-nodejs.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /** The YUI module contains the components required for building the YUI seed file. This includes the script loading mechanism, a simple queue, and the core @@ -157,7 +163,7 @@ available. (function() { var proto, prop, - VERSION = '3.9.1', + VERSION = '3.12.0', PERIOD = '.', BASE = 'http://yui.yahooapis.com/', /* @@ -1501,6 +1507,7 @@ with any configuration info required for the module. YUI._getLoadHook = null; } + YUI.Env[VERSION] = {}; }()); @@ -1636,6 +1643,22 @@ supported native console. This function is executed with the YUI instance as its @since 3.1.0 **/ +/** +The minimum log level to log messages for. Log levels are defined +incrementally. Messages greater than or equal to the level specified will +be shown. All others will be discarded. The order of log levels in +increasing priority is: + + debug + info + warn + error + +@property {String} logLevel +@default 'debug' +@since 3.10.0 +**/ + /** Callback to execute when `Y.error()` is called. It receives the error message and a JavaScript error object if one was provided. @@ -1721,8 +1744,8 @@ relying on ES5 functionality, even when ES5 functionality is available. /** Delay the `use` callback until a specific event has passed (`load`, `domready`, `contentready` or `available`) -@property delayUntil -@type String|Object + +@property {Object|String} delayUntil @since 3.6.0 @example @@ -1746,8 +1769,6 @@ Or you can delay until a node is available (with `available` or `contentready`): // available in the DOM. }); -@property {Object|String} delayUntil -@since 3.6.0 **/ YUI.add('yui-base', function (Y, NAME) { @@ -1788,9 +1809,15 @@ TYPES = { '[object Error]' : 'error' }, -SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, -TRIMREGEX = /^\s+|\s+$/g, -NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; +SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, + +WHITESPACE = "\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF", +WHITESPACE_CLASS = "[\x09-\x0D\x20\xA0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]+", +TRIM_LEFT_REGEX = new RegExp("^" + WHITESPACE_CLASS), +TRIM_RIGHT_REGEX = new RegExp(WHITESPACE_CLASS + "$"), +TRIMREGEX = new RegExp(TRIM_LEFT_REGEX.source + "|" + TRIM_RIGHT_REGEX.source, "g"), + +NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; // -- Protected Methods -------------------------------------------------------- @@ -2014,7 +2041,7 @@ L.sub = function(s, o) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trim = STRING_PROTO.trim ? function(s) { +L.trim = L._isNative(STRING_PROTO.trim) && !WHITESPACE.trim() ? function(s) { return s && s.trim ? s.trim() : s; } : function (s) { try { @@ -2031,10 +2058,10 @@ L.trim = STRING_PROTO.trim ? function(s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimLeft = STRING_PROTO.trimLeft ? function (s) { +L.trimLeft = L._isNative(STRING_PROTO.trimLeft) && !WHITESPACE.trimLeft() ? function (s) { return s.trimLeft(); } : function (s) { - return s.replace(/^\s+/, ''); + return s.replace(TRIM_LEFT_REGEX, ''); }; /** @@ -2044,10 +2071,10 @@ L.trimLeft = STRING_PROTO.trimLeft ? function (s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimRight = STRING_PROTO.trimRight ? function (s) { +L.trimRight = L._isNative(STRING_PROTO.trimRight) && !WHITESPACE.trimRight() ? function (s) { return s.trimRight(); } : function (s) { - return s.replace(/\s+$/, ''); + return s.replace(TRIM_RIGHT_REGEX, ''); }; /** @@ -2149,16 +2176,34 @@ Dedupes an array of strings, returning an array that's guaranteed to contain only one copy of a given string. This method differs from `Array.unique()` in that it's optimized for use only -with strings, whereas `unique` may be used with other types (but is slower). -Using `dedupe()` with non-string values may result in unexpected behavior. +with arrays consisting entirely of strings or entirely of numbers, whereas +`unique` may be used with other value types (but is slower). + +Using `dedupe()` with values other than strings or numbers, or with arrays +containing a mix of strings and numbers, may result in unexpected behavior. @method dedupe -@param {String[]} array Array of strings to dedupe. -@return {Array} Deduped copy of _array_. +@param {String[]|Number[]} array Array of strings or numbers to dedupe. +@return {Array} Copy of _array_ containing no duplicate values. @static @since 3.4.0 **/ -YArray.dedupe = function (array) { +YArray.dedupe = Lang._isNative(Object.create) ? function (array) { + var hash = Object.create(null), + results = [], + i, item, len; + + for (i = 0, len = array.length; i < len; ++i) { + item = array[i]; + + if (!hash[item]) { + hash[item] = 1; + results.push(item); + } + } + + return results; +} : function (array) { var hash = {}, results = [], i, item, len; @@ -2800,7 +2845,7 @@ hasEnumBug = O._hasEnumBug = !{valueOf: 0}.propertyIsEnumerable('valueOf'), /** * `true` if this browser incorrectly considers the `prototype` property of - * functions to be enumerable. Currently known to affect Opera 11.50. + * functions to be enumerable. Currently known to affect Opera 11.50 and Android 2.3.x. * * @property _hasProtoEnumBug * @type Boolean @@ -2844,7 +2889,9 @@ O.hasKey = owns; * as the order in which they were defined. * * This method is an alias for the native ES5 `Object.keys()` method if - * available. + * available and non-buggy. The Opera 11.50 and Android 2.3.x versions of + * `Object.keys()` have an inconsistency as they consider `prototype` to be + * enumerable, so a non-native shim is used to rectify the difference. * * @example * @@ -2856,7 +2903,7 @@ O.hasKey = owns; * @return {String[]} Array of keys. * @static */ -O.keys = Lang._isNative(Object.keys) ? Object.keys : function (obj) { +O.keys = Lang._isNative(Object.keys) && !hasProtoEnumBug ? Object.keys : function (obj) { if (!Lang.isObject(obj)) { throw new TypeError('Object.keys called on a non-object'); } @@ -3463,17 +3510,25 @@ YUI.Env.parseUA = function(subUA) { } } - m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); - if (m && m[1] && m[2]) { - o.chrome = numberify(m[2]); // Chrome - o.safari = 0; //Reset safari back to 0 - if (m[1] === 'CrMo') { - o.mobile = 'chrome'; - } + m = ua.match(/OPR\/(\d+\.\d+)/); + + if (m && m[1]) { + // Opera 15+ with Blink (pretends to be both Chrome and Safari) + o.opera = numberify(m[1]); } else { - m = ua.match(/AdobeAIR\/([^\s]*)/); - if (m) { - o.air = m[0]; // Adobe AIR 1.0 or better + m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); + + if (m && m[1] && m[2]) { + o.chrome = numberify(m[2]); // Chrome + o.safari = 0; //Reset safari back to 0 + if (m[1] === 'CrMo') { + o.mobile = 'chrome'; + } + } else { + m = ua.match(/AdobeAIR\/([^\s]*)/); + if (m) { + o.air = m[0]; // Adobe AIR 1.0 or better + } } } } @@ -3503,16 +3558,21 @@ YUI.Env.parseUA = function(subUA) { o.mobile = m[0]; // ex: Opera Mini/2.0.4509/1316 } } else { // not opera or webkit - m = ua.match(/MSIE\s([^;]*)/); - if (m && m[1]) { - o.ie = numberify(m[1]); + m = ua.match(/MSIE ([^;]*)|Trident.*; rv:([0-9.]+)/); + + if (m && (m[1] || m[2])) { + o.ie = numberify(m[1] || m[2]); } else { // not opera, webkit, or ie m = ua.match(/Gecko\/([^\s]*)/); + if (m) { o.gecko = 1; // Gecko detected, look for revision m = ua.match(/rv:([^\s\)]*)/); if (m && m[1]) { o.gecko = numberify(m[1]); + if (/Mobile|Tablet/.test(ua)) { + o.mobile = "ffos"; + } } } } @@ -3643,7 +3703,7 @@ YUI.Env.aliases = { }; -}, '3.9.1', { +}, '3.12.0', { "use": [ "yui-base", "get", @@ -3844,7 +3904,7 @@ YUI.add('get', function (Y, NAME) { -}, '3.9.1'); +}, '3.12.0'); YUI.add('features', function (Y, NAME) { var feature_tests = {}; @@ -3959,7 +4019,7 @@ Y.mix(Y.namespace('Features'), { // Y.Features.test("load", "1"); // caps=1:1;2:0;3:1; -/* This file is auto-generated by (yogi loader --yes --mix --start ../) */ +/* This file is auto-generated by (yogi.js loader --mix --yes) */ /*jshint maxlen:900, eqeqeq: false */ var add = Y.Features.add; // app-transitions-native @@ -4252,7 +4312,7 @@ add('load', '22', { "when": "after" }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('intl-base', function (Y, NAME) { /** @@ -4340,7 +4400,7 @@ Y.mix(Y.namespace('Intl'), { }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('yui-log', function (Y, NAME) { /** @@ -4356,9 +4416,9 @@ var INSTANCE = Y, LOGEVENT = 'yui:log', UNDEFINED = 'undefined', LEVELS = { debug: 1, - info: 1, - warn: 1, - error: 1 }; + info: 2, + warn: 4, + error: 8 }; /** * If the 'debug' config is true, a 'yui:log' event will be @@ -4380,7 +4440,7 @@ var INSTANCE = Y, * @return {YUI} YUI instance. */ INSTANCE.log = function(msg, cat, src, silent) { - var bail, excl, incl, m, f, + var bail, excl, incl, m, f, minlevel, Y = INSTANCE, c = Y.config, publisher = (Y.fire) ? Y : YUI.Env.globalEvents; @@ -4399,6 +4459,15 @@ INSTANCE.log = function(msg, cat, src, silent) { } else if (excl && (src in excl)) { bail = excl[src]; } + + // Determine the current minlevel as defined in configuration + Y.config.logLevel = Y.config.logLevel || 'debug'; + minlevel = LEVELS[Y.config.logLevel.toLowerCase()]; + + if (cat in LEVELS && LEVELS[cat] < minlevel) { + // Skip this message if the we don't meet the defined minlevel + bail = 1; + } } if (!bail) { if (c.useBrowserConsole) { @@ -4451,7 +4520,7 @@ INSTANCE.message = function() { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('yui-log-nodejs', function (Y, NAME) { var sys = require(process.binding('natives').util ? 'util' : 'sys'), @@ -4532,7 +4601,7 @@ if (!Y.config.logFn) { -}, '3.9.1'); +}, '3.12.0'); YUI.add('yui-later', function (Y, NAME) { /** @@ -4610,7 +4679,7 @@ Y.Lang.later = Y.later; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('loader-base', function (Y, NAME) { /** @@ -4619,98 +4688,110 @@ YUI.add('loader-base', function (Y, NAME) { * @submodule loader-base */ -if (!YUI.Env[Y.version]) { - - (function() { - var VERSION = Y.version, - BUILD = '/build/', - ROOT = VERSION + BUILD, - CDN_BASE = Y.Env.base, - GALLERY_VERSION = 'gallery-2013.02.27-21-03', - TNT = '2in3', - TNT_VERSION = '4', - YUI2_VERSION = '2.9.0', - COMBO_BASE = CDN_BASE + 'combo?', - META = { version: VERSION, - root: ROOT, - base: Y.Env.base, - comboBase: COMBO_BASE, - skin: { defaultSkin: 'sam', - base: 'assets/skins/', - path: 'skin.css', - after: ['cssreset', - 'cssfonts', - 'cssgrids', - 'cssbase', - 'cssreset-context', - 'cssfonts-context']}, - groups: {}, - patterns: {} }, - groups = META.groups, - yui2Update = function(tnt, yui2, config) { - - var root = TNT + '.' + - (tnt || TNT_VERSION) + '/' + - (yui2 || YUI2_VERSION) + BUILD, - base = (config && config.base) ? config.base : CDN_BASE, - combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; - - groups.yui2.base = base + root; - groups.yui2.root = root; - groups.yui2.comboBase = combo; - }, - galleryUpdate = function(tag, config) { - var root = (tag || GALLERY_VERSION) + BUILD, - base = (config && config.base) ? config.base : CDN_BASE, - combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; - - groups.gallery.base = base + root; - groups.gallery.root = root; - groups.gallery.comboBase = combo; - }; - - - groups[VERSION] = {}; - - groups.gallery = { - ext: false, - combine: true, +(function() { + var VERSION = Y.version, + BUILD = '/build/', + ROOT = VERSION + '/', + CDN_BASE = Y.Env.base, + GALLERY_VERSION = 'gallery-2013.08.22-21-03', + TNT = '2in3', + TNT_VERSION = '4', + YUI2_VERSION = '2.9.0', + COMBO_BASE = CDN_BASE + 'combo?', + META = { + version: VERSION, + root: ROOT, + base: Y.Env.base, comboBase: COMBO_BASE, - update: galleryUpdate, - patterns: { 'gallery-': { }, - 'lang/gallery-': {}, - 'gallerycss-': { type: 'css' } } + skin: { + defaultSkin: 'sam', + base: 'assets/skins/', + path: 'skin.css', + after: [ + 'cssreset', + 'cssfonts', + 'cssgrids', + 'cssbase', + 'cssreset-context', + 'cssfonts-context' + ] + }, + groups: {}, + patterns: {} + }, + groups = META.groups, + yui2Update = function(tnt, yui2, config) { + var root = TNT + '.' + + (tnt || TNT_VERSION) + '/' + + (yui2 || YUI2_VERSION) + BUILD, + base = (config && config.base) ? config.base : CDN_BASE, + combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; + + groups.yui2.base = base + root; + groups.yui2.root = root; + groups.yui2.comboBase = combo; + }, + galleryUpdate = function(tag, config) { + var root = (tag || GALLERY_VERSION) + BUILD, + base = (config && config.base) ? config.base : CDN_BASE, + combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; + + groups.gallery.base = base + root; + groups.gallery.root = root; + groups.gallery.comboBase = combo; }; - groups.yui2 = { - combine: true, - ext: false, - comboBase: COMBO_BASE, - update: yui2Update, - patterns: { - 'yui2-': { - configFn: function(me) { - if (/-skin|reset|fonts|grids|base/.test(me.name)) { - me.type = 'css'; - me.path = me.path.replace(/\.js/, '.css'); - // this makes skins in builds earlier than - // 2.6.0 work as long as combine is false - me.path = me.path.replace(/\/yui2-skin/, - '/assets/skins/sam/yui2-skin'); - } + + groups[VERSION] = {}; + + groups.gallery = { + ext: false, + combine: true, + comboBase: COMBO_BASE, + update: galleryUpdate, + patterns: { + 'gallery-': {}, + 'lang/gallery-': {}, + 'gallerycss-': { + type: 'css' + } + } + }; + + groups.yui2 = { + combine: true, + ext: false, + comboBase: COMBO_BASE, + update: yui2Update, + patterns: { + 'yui2-': { + configFn: function(me) { + if (/-skin|reset|fonts|grids|base/.test(me.name)) { + me.type = 'css'; + me.path = me.path.replace(/\.js/, '.css'); + // this makes skins in builds earlier than + // 2.6.0 work as long as combine is false + me.path = me.path.replace(/\/yui2-skin/, + '/assets/skins/sam/yui2-skin'); } } } - }; + } + }; - galleryUpdate(); - yui2Update(); - - YUI.Env[VERSION] = META; - }()); -} + galleryUpdate(); + yui2Update(); + if (YUI.Env[VERSION]) { + Y.mix(META, YUI.Env[VERSION], false, [ + 'modules', + 'groups', + 'skin' + ], 0, true); + } + YUI.Env[VERSION] = META; +}()); /*jslint forin: true, maxlen: 350 */ /** @@ -5702,9 +5783,10 @@ Y.Loader.prototype = { * @param {Object} [config.submodules] Hash of submodules * @param {String} [config.group] The group the module belongs to -- this is set automatically when it is added as part of a group configuration. * @param {Array} [config.lang] Array of BCP 47 language tags of languages for which this module has localized resource bundles, e.g., `["en-GB", "zh-Hans-CN"]` - * @param {Object} [config.condition] Specifies that the module should be loaded automatically if a condition is met. This is an object with up to three fields: + * @param {Object} [config.condition] Specifies that the module should be loaded automatically if a condition is met. This is an object with up to four fields: * @param {String} [config.condition.trigger] The name of a module that can trigger the auto-load * @param {Function} [config.condition.test] A function that returns true when the module is to be loaded. + * @param {String} [config.condition.ua] The UA name of Y.UA object that returns true when the module is to be loaded. e.g., `"ie"`, `"nodejs"`. * @param {String} [config.condition.when] Specifies the load order of the conditional module * with regard to the position of the trigger module. * This should be one of three values: `before`, `after`, or `instead`. The default is `after`. @@ -7388,7 +7470,7 @@ Y.Loader.prototype = { -}, '3.9.1', {"requires": ["get", "features"]}); +}, '3.12.0', {"requires": ["get", "features"]}); YUI.add('loader-rollup', function (Y, NAME) { /** @@ -7487,10 +7569,10 @@ Y.Loader.prototype._rollup = function() { }; -}, '3.9.1', {"requires": ["loader-base"]}); +}, '3.12.0', {"requires": ["loader-base"]}); YUI.add('loader-yui3', function (Y, NAME) { -/* This file is auto-generated by (yogi loader --yes --mix --start ../) */ +/* This file is auto-generated by (yogi.js loader --mix --yes) */ /*jshint maxlen:900, eqeqeq: false */ @@ -7751,7 +7833,9 @@ Y.mix(YUI.Env[Y.version].modules, { ], "lang": [ "en", - "es" + "es", + "hu", + "it" ], "requires": [ "autocomplete-base", @@ -7973,20 +8057,6 @@ Y.mix(YUI.Env[Y.version].modules, { ] }, "calendar": { - "lang": [ - "de", - "en", - "es", - "es-AR", - "fr", - "it", - "ja", - "nb-NO", - "nl", - "pt-BR", - "ru", - "zh-HANT-TW" - ], "requires": [ "calendar-base", "calendarnavigator" @@ -8000,12 +8070,17 @@ Y.mix(YUI.Env[Y.version].modules, { "es", "es-AR", "fr", + "hu", "it", "ja", "nb-NO", "nl", "pt-BR", "ru", + "zh-Hans", + "zh-Hans-CN", + "zh-Hant", + "zh-Hant-HK", "zh-HANT-TW" ], "requires": [ @@ -8113,6 +8188,8 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "es", + "hu", + "it", "ja" ], "requires": [ @@ -8176,22 +8253,19 @@ Y.mix(YUI.Env[Y.version].modules, { }, "cssgrids": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "type": "css" }, "cssgrids-base": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "type": "css" }, "cssgrids-responsive": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "requires": [ "cssgrids", @@ -8201,8 +8275,7 @@ Y.mix(YUI.Env[Y.version].modules, { }, "cssgrids-units": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "requires": [ "cssgrids-base" @@ -8384,6 +8457,12 @@ Y.mix(YUI.Env[Y.version].modules, { "datasource-local" ] }, + "datatable-foot": { + "requires": [ + "datatable-core", + "view" + ] + }, "datatable-formatters": { "requires": [ "datatable-body", @@ -8403,7 +8482,9 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "fr", - "es" + "es", + "hu", + "it" ], "requires": [ "datatable-base" @@ -8415,6 +8496,24 @@ Y.mix(YUI.Env[Y.version].modules, { "datatable-base" ] }, + "datatable-paginator": { + "lang": [ + "en" + ], + "requires": [ + "model", + "view", + "paginator-core", + "datatable-foot", + "datatable-paginator-templates" + ], + "skinnable": true + }, + "datatable-paginator-templates": { + "requires": [ + "template" + ] + }, "datatable-scroll": { "requires": [ "datatable-base", @@ -8427,7 +8526,8 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "fr", - "es" + "es", + "hu" ], "requires": [ "datatable-base" @@ -8503,6 +8603,7 @@ Y.mix(YUI.Env[Y.version].modules, { "fr-FR", "hi", "hi-IN", + "hu", "id", "id-ID", "it", @@ -8657,7 +8758,8 @@ Y.mix(YUI.Env[Y.version].modules, { "dial": { "lang": [ "en", - "es" + "es", + "hu" ], "requires": [ "widget", @@ -8703,7 +8805,8 @@ Y.mix(YUI.Env[Y.version].modules, { }, "dom-style": { "requires": [ - "dom-base" + "dom-base", + "color-base" ] }, "dom-style-ie": { @@ -9428,7 +9531,8 @@ Y.mix(YUI.Env[Y.version].modules, { "requires": [ "event-base", "node-core", - "dom-base" + "dom-base", + "dom-style" ] }, "node-core": { @@ -9508,11 +9612,12 @@ Y.mix(YUI.Env[Y.version].modules, { }, "node-scroll-info": { "requires": [ + "array-extras", "base-build", - "dom-screen", "event-resize", "node-pluginhost", - "plugin" + "plugin", + "selector" ] }, "node-style": { @@ -9537,6 +9642,21 @@ Y.mix(YUI.Env[Y.version].modules, { ], "skinnable": true }, + "paginator": { + "requires": [ + "paginator-core" + ] + }, + "paginator-core": { + "requires": [ + "base" + ] + }, + "paginator-url": { + "requires": [ + "paginator" + ] + }, "panel": { "requires": [ "widget", @@ -9604,11 +9724,6 @@ Y.mix(YUI.Env[Y.version].modules, { "pluginhost-base" ] }, - "profiler": { - "requires": [ - "yui-base" - ] - }, "promise": { "requires": [ "timers" @@ -10051,8 +10166,7 @@ Y.mix(YUI.Env[Y.version].modules, { "tabview-base": { "requires": [ "node-event-delegate", - "classnamemanager", - "skin-sam-tabview" + "classnamemanager" ] }, "tabview-plugin": { @@ -10178,6 +10292,11 @@ Y.mix(YUI.Env[Y.version].modules, { "tree" ] }, + "tree-sortable": { + "requires": [ + "tree" + ] + }, "uploader": { "requires": [ "uploader-html5", @@ -10400,11 +10519,11 @@ Y.mix(YUI.Env[Y.version].modules, { ] } }); -YUI.Env[Y.version].md5 = '660f328e92276f36e9abfafb02169183'; +YUI.Env[Y.version].md5 = 'fd7c67956df50e445f40d1668dd1dc80'; -}, '3.9.1', {"requires": ["loader-base"]}); -YUI.add('yui', function (Y, NAME) {}, '3.9.1', { +}, '3.12.0', {"requires": ["loader-base"]}); +YUI.add('yui', function (Y, NAME) {}, '3.12.0', { "use": [ "get", "features", diff --git a/lib/yuilib/3.9.1/build/yui-throttle/yui-throttle-debug.js b/lib/yuilib/3.12.0/yui-throttle/yui-throttle-debug.js old mode 100644 new mode 100755 similarity index 82% rename from lib/yuilib/3.9.1/build/yui-throttle/yui-throttle-debug.js rename to lib/yuilib/3.12.0/yui-throttle/yui-throttle-debug.js index ef6b464a8c6..84bbf5667d1 --- a/lib/yuilib/3.9.1/build/yui-throttle/yui-throttle-debug.js +++ b/lib/yuilib/3.12.0/yui-throttle/yui-throttle-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yui-throttle', function (Y, NAME) { /** @@ -36,7 +42,7 @@ Y.throttle = function(fn, ms) { if (ms === -1) { return function() { - fn.apply(null, arguments); + fn.apply(this, arguments); }; } @@ -46,10 +52,10 @@ Y.throttle = function(fn, ms) { var now = Y.Lang.now(); if (now - last > ms) { last = now; - fn.apply(null, arguments); + fn.apply(this, arguments); } }; }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.12.0/yui-throttle/yui-throttle-min.js b/lib/yuilib/3.12.0/yui-throttle/yui-throttle-min.js new file mode 100755 index 00000000000..801f3c1ab24 --- /dev/null +++ b/lib/yuilib/3.12.0/yui-throttle/yui-throttle-min.js @@ -0,0 +1,10 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add("yui-throttle",function(e,t){ +/*! Based on work by Simon Willison: http://gist.github.com/292562 */ +;e.throttle=function(t,n){n=n?n:e.config.throttleTime||150;if(n===-1)return function(){t.apply(this,arguments)};var r=e.Lang.now();return function(){var i=e.Lang.now();i-r>n&&(r=i,t.apply(this,arguments))}}},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/yui-throttle/yui-throttle.js b/lib/yuilib/3.12.0/yui-throttle/yui-throttle.js old mode 100644 new mode 100755 similarity index 82% rename from lib/yuilib/3.9.1/build/yui-throttle/yui-throttle.js rename to lib/yuilib/3.12.0/yui-throttle/yui-throttle.js index ef6b464a8c6..84bbf5667d1 --- a/lib/yuilib/3.9.1/build/yui-throttle/yui-throttle.js +++ b/lib/yuilib/3.12.0/yui-throttle/yui-throttle.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + YUI.add('yui-throttle', function (Y, NAME) { /** @@ -36,7 +42,7 @@ Y.throttle = function(fn, ms) { if (ms === -1) { return function() { - fn.apply(null, arguments); + fn.apply(this, arguments); }; } @@ -46,10 +52,10 @@ Y.throttle = function(fn, ms) { var now = Y.Lang.now(); if (now - last > ms) { last = now; - fn.apply(null, arguments); + fn.apply(this, arguments); } }; }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/yui/yui-debug.js b/lib/yuilib/3.12.0/yui/yui-debug.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/yui/yui-debug.js rename to lib/yuilib/3.12.0/yui/yui-debug.js index 885880430ab..b58f01ab755 --- a/lib/yuilib/3.9.1/build/yui/yui-debug.js +++ b/lib/yuilib/3.12.0/yui/yui-debug.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /** The YUI module contains the components required for building the YUI seed file. This includes the script loading mechanism, a simple queue, and the core @@ -157,7 +163,7 @@ available. (function() { var proto, prop, - VERSION = '3.9.1', + VERSION = '3.12.0', PERIOD = '.', BASE = 'http://yui.yahooapis.com/', /* @@ -1521,6 +1527,7 @@ Y.log('Fetching loader: ' + config.base + config.loaderPath, 'info', 'yui'); YUI._getLoadHook = null; } + YUI.Env[VERSION] = {}; }()); @@ -1975,6 +1982,22 @@ supported native console. This function is executed with the YUI instance as its @since 3.1.0 **/ +/** +The minimum log level to log messages for. Log levels are defined +incrementally. Messages greater than or equal to the level specified will +be shown. All others will be discarded. The order of log levels in +increasing priority is: + + debug + info + warn + error + +@property {String} logLevel +@default 'debug' +@since 3.10.0 +**/ + /** Callback to execute when `Y.error()` is called. It receives the error message and a JavaScript error object if one was provided. @@ -2060,8 +2083,8 @@ relying on ES5 functionality, even when ES5 functionality is available. /** Delay the `use` callback until a specific event has passed (`load`, `domready`, `contentready` or `available`) -@property delayUntil -@type String|Object + +@property {Object|String} delayUntil @since 3.6.0 @example @@ -2085,8 +2108,6 @@ Or you can delay until a node is available (with `available` or `contentready`): // available in the DOM. }); -@property {Object|String} delayUntil -@since 3.6.0 **/ YUI.add('yui-base', function (Y, NAME) { @@ -2127,9 +2148,15 @@ TYPES = { '[object Error]' : 'error' }, -SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, -TRIMREGEX = /^\s+|\s+$/g, -NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; +SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, + +WHITESPACE = "\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF", +WHITESPACE_CLASS = "[\x09-\x0D\x20\xA0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]+", +TRIM_LEFT_REGEX = new RegExp("^" + WHITESPACE_CLASS), +TRIM_RIGHT_REGEX = new RegExp(WHITESPACE_CLASS + "$"), +TRIMREGEX = new RegExp(TRIM_LEFT_REGEX.source + "|" + TRIM_RIGHT_REGEX.source, "g"), + +NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; // -- Protected Methods -------------------------------------------------------- @@ -2353,7 +2380,7 @@ L.sub = function(s, o) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trim = STRING_PROTO.trim ? function(s) { +L.trim = L._isNative(STRING_PROTO.trim) && !WHITESPACE.trim() ? function(s) { return s && s.trim ? s.trim() : s; } : function (s) { try { @@ -2370,10 +2397,10 @@ L.trim = STRING_PROTO.trim ? function(s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimLeft = STRING_PROTO.trimLeft ? function (s) { +L.trimLeft = L._isNative(STRING_PROTO.trimLeft) && !WHITESPACE.trimLeft() ? function (s) { return s.trimLeft(); } : function (s) { - return s.replace(/^\s+/, ''); + return s.replace(TRIM_LEFT_REGEX, ''); }; /** @@ -2383,10 +2410,10 @@ L.trimLeft = STRING_PROTO.trimLeft ? function (s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimRight = STRING_PROTO.trimRight ? function (s) { +L.trimRight = L._isNative(STRING_PROTO.trimRight) && !WHITESPACE.trimRight() ? function (s) { return s.trimRight(); } : function (s) { - return s.replace(/\s+$/, ''); + return s.replace(TRIM_RIGHT_REGEX, ''); }; /** @@ -2488,16 +2515,34 @@ Dedupes an array of strings, returning an array that's guaranteed to contain only one copy of a given string. This method differs from `Array.unique()` in that it's optimized for use only -with strings, whereas `unique` may be used with other types (but is slower). -Using `dedupe()` with non-string values may result in unexpected behavior. +with arrays consisting entirely of strings or entirely of numbers, whereas +`unique` may be used with other value types (but is slower). + +Using `dedupe()` with values other than strings or numbers, or with arrays +containing a mix of strings and numbers, may result in unexpected behavior. @method dedupe -@param {String[]} array Array of strings to dedupe. -@return {Array} Deduped copy of _array_. +@param {String[]|Number[]} array Array of strings or numbers to dedupe. +@return {Array} Copy of _array_ containing no duplicate values. @static @since 3.4.0 **/ -YArray.dedupe = function (array) { +YArray.dedupe = Lang._isNative(Object.create) ? function (array) { + var hash = Object.create(null), + results = [], + i, item, len; + + for (i = 0, len = array.length; i < len; ++i) { + item = array[i]; + + if (!hash[item]) { + hash[item] = 1; + results.push(item); + } + } + + return results; +} : function (array) { var hash = {}, results = [], i, item, len; @@ -3139,7 +3184,7 @@ hasEnumBug = O._hasEnumBug = !{valueOf: 0}.propertyIsEnumerable('valueOf'), /** * `true` if this browser incorrectly considers the `prototype` property of - * functions to be enumerable. Currently known to affect Opera 11.50. + * functions to be enumerable. Currently known to affect Opera 11.50 and Android 2.3.x. * * @property _hasProtoEnumBug * @type Boolean @@ -3183,7 +3228,9 @@ O.hasKey = owns; * as the order in which they were defined. * * This method is an alias for the native ES5 `Object.keys()` method if - * available. + * available and non-buggy. The Opera 11.50 and Android 2.3.x versions of + * `Object.keys()` have an inconsistency as they consider `prototype` to be + * enumerable, so a non-native shim is used to rectify the difference. * * @example * @@ -3195,7 +3242,7 @@ O.hasKey = owns; * @return {String[]} Array of keys. * @static */ -O.keys = Lang._isNative(Object.keys) ? Object.keys : function (obj) { +O.keys = Lang._isNative(Object.keys) && !hasProtoEnumBug ? Object.keys : function (obj) { if (!Lang.isObject(obj)) { throw new TypeError('Object.keys called on a non-object'); } @@ -3802,17 +3849,25 @@ YUI.Env.parseUA = function(subUA) { } } - m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); - if (m && m[1] && m[2]) { - o.chrome = numberify(m[2]); // Chrome - o.safari = 0; //Reset safari back to 0 - if (m[1] === 'CrMo') { - o.mobile = 'chrome'; - } + m = ua.match(/OPR\/(\d+\.\d+)/); + + if (m && m[1]) { + // Opera 15+ with Blink (pretends to be both Chrome and Safari) + o.opera = numberify(m[1]); } else { - m = ua.match(/AdobeAIR\/([^\s]*)/); - if (m) { - o.air = m[0]; // Adobe AIR 1.0 or better + m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); + + if (m && m[1] && m[2]) { + o.chrome = numberify(m[2]); // Chrome + o.safari = 0; //Reset safari back to 0 + if (m[1] === 'CrMo') { + o.mobile = 'chrome'; + } + } else { + m = ua.match(/AdobeAIR\/([^\s]*)/); + if (m) { + o.air = m[0]; // Adobe AIR 1.0 or better + } } } } @@ -3842,16 +3897,21 @@ YUI.Env.parseUA = function(subUA) { o.mobile = m[0]; // ex: Opera Mini/2.0.4509/1316 } } else { // not opera or webkit - m = ua.match(/MSIE\s([^;]*)/); - if (m && m[1]) { - o.ie = numberify(m[1]); + m = ua.match(/MSIE ([^;]*)|Trident.*; rv:([0-9.]+)/); + + if (m && (m[1] || m[2])) { + o.ie = numberify(m[1] || m[2]); } else { // not opera, webkit, or ie m = ua.match(/Gecko\/([^\s]*)/); + if (m) { o.gecko = 1; // Gecko detected, look for revision m = ua.match(/rv:([^\s\)]*)/); if (m && m[1]) { o.gecko = numberify(m[1]); + if (/Mobile|Tablet/.test(ua)) { + o.mobile = "ffos"; + } } } } @@ -3982,7 +4042,7 @@ YUI.Env.aliases = { }; -}, '3.9.1', { +}, '3.12.0', { "use": [ "yui-base", "get", @@ -5285,7 +5345,7 @@ Transaction.prototype = { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('features', function (Y, NAME) { var feature_tests = {}; @@ -5401,7 +5461,7 @@ Y.mix(Y.namespace('Features'), { // Y.Features.test("load", "1"); // caps=1:1;2:0;3:1; -/* This file is auto-generated by (yogi loader --yes --mix --start ../) */ +/* This file is auto-generated by (yogi.js loader --mix --yes) */ /*jshint maxlen:900, eqeqeq: false */ var add = Y.Features.add; // app-transitions-native @@ -5694,7 +5754,7 @@ add('load', '22', { "when": "after" }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('intl-base', function (Y, NAME) { /** @@ -5782,7 +5842,7 @@ Y.mix(Y.namespace('Intl'), { }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('yui-log', function (Y, NAME) { /** @@ -5798,9 +5858,9 @@ var INSTANCE = Y, LOGEVENT = 'yui:log', UNDEFINED = 'undefined', LEVELS = { debug: 1, - info: 1, - warn: 1, - error: 1 }; + info: 2, + warn: 4, + error: 8 }; /** * If the 'debug' config is true, a 'yui:log' event will be @@ -5822,7 +5882,7 @@ var INSTANCE = Y, * @return {YUI} YUI instance. */ INSTANCE.log = function(msg, cat, src, silent) { - var bail, excl, incl, m, f, + var bail, excl, incl, m, f, minlevel, Y = INSTANCE, c = Y.config, publisher = (Y.fire) ? Y : YUI.Env.globalEvents; @@ -5841,6 +5901,15 @@ INSTANCE.log = function(msg, cat, src, silent) { } else if (excl && (src in excl)) { bail = excl[src]; } + + // Determine the current minlevel as defined in configuration + Y.config.logLevel = Y.config.logLevel || 'debug'; + minlevel = LEVELS[Y.config.logLevel.toLowerCase()]; + + if (cat in LEVELS && LEVELS[cat] < minlevel) { + // Skip this message if the we don't meet the defined minlevel + bail = 1; + } } if (!bail) { if (c.useBrowserConsole) { @@ -5893,7 +5962,7 @@ INSTANCE.message = function() { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('yui-later', function (Y, NAME) { /** @@ -5971,7 +6040,7 @@ Y.Lang.later = Y.later; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('loader-base', function (Y, NAME) { /** @@ -5980,98 +6049,110 @@ YUI.add('loader-base', function (Y, NAME) { * @submodule loader-base */ -if (!YUI.Env[Y.version]) { - - (function() { - var VERSION = Y.version, - BUILD = '/build/', - ROOT = VERSION + BUILD, - CDN_BASE = Y.Env.base, - GALLERY_VERSION = 'gallery-2013.02.27-21-03', - TNT = '2in3', - TNT_VERSION = '4', - YUI2_VERSION = '2.9.0', - COMBO_BASE = CDN_BASE + 'combo?', - META = { version: VERSION, - root: ROOT, - base: Y.Env.base, - comboBase: COMBO_BASE, - skin: { defaultSkin: 'sam', - base: 'assets/skins/', - path: 'skin.css', - after: ['cssreset', - 'cssfonts', - 'cssgrids', - 'cssbase', - 'cssreset-context', - 'cssfonts-context']}, - groups: {}, - patterns: {} }, - groups = META.groups, - yui2Update = function(tnt, yui2, config) { - - var root = TNT + '.' + - (tnt || TNT_VERSION) + '/' + - (yui2 || YUI2_VERSION) + BUILD, - base = (config && config.base) ? config.base : CDN_BASE, - combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; - - groups.yui2.base = base + root; - groups.yui2.root = root; - groups.yui2.comboBase = combo; - }, - galleryUpdate = function(tag, config) { - var root = (tag || GALLERY_VERSION) + BUILD, - base = (config && config.base) ? config.base : CDN_BASE, - combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; - - groups.gallery.base = base + root; - groups.gallery.root = root; - groups.gallery.comboBase = combo; - }; - - - groups[VERSION] = {}; - - groups.gallery = { - ext: false, - combine: true, +(function() { + var VERSION = Y.version, + BUILD = '/build/', + ROOT = VERSION + '/', + CDN_BASE = Y.Env.base, + GALLERY_VERSION = 'gallery-2013.08.22-21-03', + TNT = '2in3', + TNT_VERSION = '4', + YUI2_VERSION = '2.9.0', + COMBO_BASE = CDN_BASE + 'combo?', + META = { + version: VERSION, + root: ROOT, + base: Y.Env.base, comboBase: COMBO_BASE, - update: galleryUpdate, - patterns: { 'gallery-': { }, - 'lang/gallery-': {}, - 'gallerycss-': { type: 'css' } } + skin: { + defaultSkin: 'sam', + base: 'assets/skins/', + path: 'skin.css', + after: [ + 'cssreset', + 'cssfonts', + 'cssgrids', + 'cssbase', + 'cssreset-context', + 'cssfonts-context' + ] + }, + groups: {}, + patterns: {} + }, + groups = META.groups, + yui2Update = function(tnt, yui2, config) { + var root = TNT + '.' + + (tnt || TNT_VERSION) + '/' + + (yui2 || YUI2_VERSION) + BUILD, + base = (config && config.base) ? config.base : CDN_BASE, + combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; + + groups.yui2.base = base + root; + groups.yui2.root = root; + groups.yui2.comboBase = combo; + }, + galleryUpdate = function(tag, config) { + var root = (tag || GALLERY_VERSION) + BUILD, + base = (config && config.base) ? config.base : CDN_BASE, + combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; + + groups.gallery.base = base + root; + groups.gallery.root = root; + groups.gallery.comboBase = combo; }; - groups.yui2 = { - combine: true, - ext: false, - comboBase: COMBO_BASE, - update: yui2Update, - patterns: { - 'yui2-': { - configFn: function(me) { - if (/-skin|reset|fonts|grids|base/.test(me.name)) { - me.type = 'css'; - me.path = me.path.replace(/\.js/, '.css'); - // this makes skins in builds earlier than - // 2.6.0 work as long as combine is false - me.path = me.path.replace(/\/yui2-skin/, - '/assets/skins/sam/yui2-skin'); - } + + groups[VERSION] = {}; + + groups.gallery = { + ext: false, + combine: true, + comboBase: COMBO_BASE, + update: galleryUpdate, + patterns: { + 'gallery-': {}, + 'lang/gallery-': {}, + 'gallerycss-': { + type: 'css' + } + } + }; + + groups.yui2 = { + combine: true, + ext: false, + comboBase: COMBO_BASE, + update: yui2Update, + patterns: { + 'yui2-': { + configFn: function(me) { + if (/-skin|reset|fonts|grids|base/.test(me.name)) { + me.type = 'css'; + me.path = me.path.replace(/\.js/, '.css'); + // this makes skins in builds earlier than + // 2.6.0 work as long as combine is false + me.path = me.path.replace(/\/yui2-skin/, + '/assets/skins/sam/yui2-skin'); } } } - }; + } + }; - galleryUpdate(); - yui2Update(); - - YUI.Env[VERSION] = META; - }()); -} + galleryUpdate(); + yui2Update(); + if (YUI.Env[VERSION]) { + Y.mix(META, YUI.Env[VERSION], false, [ + 'modules', + 'groups', + 'skin' + ], 0, true); + } + YUI.Env[VERSION] = META; +}()); /*jslint forin: true, maxlen: 350 */ /** @@ -7066,9 +7147,10 @@ Y.Loader.prototype = { * @param {Object} [config.submodules] Hash of submodules * @param {String} [config.group] The group the module belongs to -- this is set automatically when it is added as part of a group configuration. * @param {Array} [config.lang] Array of BCP 47 language tags of languages for which this module has localized resource bundles, e.g., `["en-GB", "zh-Hans-CN"]` - * @param {Object} [config.condition] Specifies that the module should be loaded automatically if a condition is met. This is an object with up to three fields: + * @param {Object} [config.condition] Specifies that the module should be loaded automatically if a condition is met. This is an object with up to four fields: * @param {String} [config.condition.trigger] The name of a module that can trigger the auto-load * @param {Function} [config.condition.test] A function that returns true when the module is to be loaded. + * @param {String} [config.condition.ua] The UA name of Y.UA object that returns true when the module is to be loaded. e.g., `"ie"`, `"nodejs"`. * @param {String} [config.condition.when] Specifies the load order of the conditional module * with regard to the position of the trigger module. * This should be one of three values: `before`, `after`, or `instead`. The default is `after`. @@ -8790,7 +8872,7 @@ Y.log('Undefined module: ' + mname + ', matched a pattern: ' + -}, '3.9.1', {"requires": ["get", "features"]}); +}, '3.12.0', {"requires": ["get", "features"]}); YUI.add('loader-rollup', function (Y, NAME) { /** @@ -8892,10 +8974,10 @@ Y.Loader.prototype._rollup = function() { }; -}, '3.9.1', {"requires": ["loader-base"]}); +}, '3.12.0', {"requires": ["loader-base"]}); YUI.add('loader-yui3', function (Y, NAME) { -/* This file is auto-generated by (yogi loader --yes --mix --start ../) */ +/* This file is auto-generated by (yogi.js loader --mix --yes) */ /*jshint maxlen:900, eqeqeq: false */ @@ -9156,7 +9238,9 @@ Y.mix(YUI.Env[Y.version].modules, { ], "lang": [ "en", - "es" + "es", + "hu", + "it" ], "requires": [ "autocomplete-base", @@ -9378,20 +9462,6 @@ Y.mix(YUI.Env[Y.version].modules, { ] }, "calendar": { - "lang": [ - "de", - "en", - "es", - "es-AR", - "fr", - "it", - "ja", - "nb-NO", - "nl", - "pt-BR", - "ru", - "zh-HANT-TW" - ], "requires": [ "calendar-base", "calendarnavigator" @@ -9405,12 +9475,17 @@ Y.mix(YUI.Env[Y.version].modules, { "es", "es-AR", "fr", + "hu", "it", "ja", "nb-NO", "nl", "pt-BR", "ru", + "zh-Hans", + "zh-Hans-CN", + "zh-Hant", + "zh-Hant-HK", "zh-HANT-TW" ], "requires": [ @@ -9518,6 +9593,8 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "es", + "hu", + "it", "ja" ], "requires": [ @@ -9581,22 +9658,19 @@ Y.mix(YUI.Env[Y.version].modules, { }, "cssgrids": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "type": "css" }, "cssgrids-base": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "type": "css" }, "cssgrids-responsive": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "requires": [ "cssgrids", @@ -9606,8 +9680,7 @@ Y.mix(YUI.Env[Y.version].modules, { }, "cssgrids-units": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "requires": [ "cssgrids-base" @@ -9789,6 +9862,12 @@ Y.mix(YUI.Env[Y.version].modules, { "datasource-local" ] }, + "datatable-foot": { + "requires": [ + "datatable-core", + "view" + ] + }, "datatable-formatters": { "requires": [ "datatable-body", @@ -9808,7 +9887,9 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "fr", - "es" + "es", + "hu", + "it" ], "requires": [ "datatable-base" @@ -9820,6 +9901,24 @@ Y.mix(YUI.Env[Y.version].modules, { "datatable-base" ] }, + "datatable-paginator": { + "lang": [ + "en" + ], + "requires": [ + "model", + "view", + "paginator-core", + "datatable-foot", + "datatable-paginator-templates" + ], + "skinnable": true + }, + "datatable-paginator-templates": { + "requires": [ + "template" + ] + }, "datatable-scroll": { "requires": [ "datatable-base", @@ -9832,7 +9931,8 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "fr", - "es" + "es", + "hu" ], "requires": [ "datatable-base" @@ -9908,6 +10008,7 @@ Y.mix(YUI.Env[Y.version].modules, { "fr-FR", "hi", "hi-IN", + "hu", "id", "id-ID", "it", @@ -10062,7 +10163,8 @@ Y.mix(YUI.Env[Y.version].modules, { "dial": { "lang": [ "en", - "es" + "es", + "hu" ], "requires": [ "widget", @@ -10108,7 +10210,8 @@ Y.mix(YUI.Env[Y.version].modules, { }, "dom-style": { "requires": [ - "dom-base" + "dom-base", + "color-base" ] }, "dom-style-ie": { @@ -10833,7 +10936,8 @@ Y.mix(YUI.Env[Y.version].modules, { "requires": [ "event-base", "node-core", - "dom-base" + "dom-base", + "dom-style" ] }, "node-core": { @@ -10913,11 +11017,12 @@ Y.mix(YUI.Env[Y.version].modules, { }, "node-scroll-info": { "requires": [ + "array-extras", "base-build", - "dom-screen", "event-resize", "node-pluginhost", - "plugin" + "plugin", + "selector" ] }, "node-style": { @@ -10942,6 +11047,21 @@ Y.mix(YUI.Env[Y.version].modules, { ], "skinnable": true }, + "paginator": { + "requires": [ + "paginator-core" + ] + }, + "paginator-core": { + "requires": [ + "base" + ] + }, + "paginator-url": { + "requires": [ + "paginator" + ] + }, "panel": { "requires": [ "widget", @@ -11009,11 +11129,6 @@ Y.mix(YUI.Env[Y.version].modules, { "pluginhost-base" ] }, - "profiler": { - "requires": [ - "yui-base" - ] - }, "promise": { "requires": [ "timers" @@ -11456,8 +11571,7 @@ Y.mix(YUI.Env[Y.version].modules, { "tabview-base": { "requires": [ "node-event-delegate", - "classnamemanager", - "skin-sam-tabview" + "classnamemanager" ] }, "tabview-plugin": { @@ -11583,6 +11697,11 @@ Y.mix(YUI.Env[Y.version].modules, { "tree" ] }, + "tree-sortable": { + "requires": [ + "tree" + ] + }, "uploader": { "requires": [ "uploader-html5", @@ -11805,11 +11924,11 @@ Y.mix(YUI.Env[Y.version].modules, { ] } }); -YUI.Env[Y.version].md5 = '660f328e92276f36e9abfafb02169183'; +YUI.Env[Y.version].md5 = 'fd7c67956df50e445f40d1668dd1dc80'; -}, '3.9.1', {"requires": ["loader-base"]}); -YUI.add('yui', function (Y, NAME) {}, '3.9.1', { +}, '3.12.0', {"requires": ["loader-base"]}); +YUI.add('yui', function (Y, NAME) {}, '3.12.0', { "use": [ "yui-base", "get", diff --git a/lib/yuilib/3.12.0/yui/yui-min.js b/lib/yuilib/3.12.0/yui/yui-min.js new file mode 100755 index 00000000000..7ee761bf544 --- /dev/null +++ b/lib/yuilib/3.12.0/yui/yui-min.js @@ -0,0 +1,22 @@ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +typeof YUI!="undefined"&&(YUI._YUI=YUI);var YUI=function(){var e=0,t=this,n=arguments,r=n.length,i=function(e,t){return e&&e.hasOwnProperty&&e instanceof t},s=typeof YUI_config!="undefined"&&YUI_config;i(t,YUI)?(t._init(),YUI.GlobalConfig&&t.applyConfig(YUI.GlobalConfig),s&&t.applyConfig(s),r||t._setup()):t=new YUI;if(r){for(;e-1&&(n="3.5.0"),e={applyConfig:function(e){e=e||u;var t,n,r=this.config,i=r.modules,s=r.groups,o=r.aliases,a=this.Env._loader;for(n in e)e.hasOwnProperty(n)&&(t=e[n],i&&n=="modules"?E(i,t):o&&n=="aliases"?E(o,t):s&&n=="groups"?E(s,t):n=="win"?(r[n]=t&&t.contentWindow||t,r.doc=r[n]?r[n].document:null):n!="_yuid"&&(r[n]=t));a&&a._config(e)},_config:function(e){this.applyConfig(e)},_init:function(){var e,t,r=this,s=YUI.Env,u=r.Env,a;r.version=n;if(!u){r.Env={core:["get","features","intl-base","yui-log","yui-later","loader-base","loader-rollup","loader-yui3"],loaderExtras:["loader-rollup","loader-yui3"],mods:{},versions:{},base:i,cdn:i+n+"/build/",_idx:0,_used:{},_attached:{},_missed:[],_yidx:0,_uidx:0,_guidp:"y",_loaded:{},_BASE_RE:/(?:\?(?:[^&]*&)*([^&]*))?\b(simpleyui|yui(?:-\w+)?)\/\2(?:-(min|debug))?\.js/,parseBasePath:function(e,t){var n=e.match(t),r,i;return n&&(r=RegExp.leftContext||e.slice(0,e.indexOf(n[0])),i=n[3],n[1]&&(r+="?"+n[1]),r={filter:i,path:r}),r},getBase:s&&s.getBase||function(t){var n=h&&h.getElementsByTagName("script")||[],i=u.cdn,s,o,a,f;for(o=0,a=n.length;o',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},m.indexOf=p._isNative(d.indexOf)?function(e,t,n){return d.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,y):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},E.each=function(t,n,r,i){var s;for(s in t)(i||N(t,s))&&n.call(r||e,t[s],s,t);return e},E.some=function(t,n,r,i){var s;for(s in t)if(i||N(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},E.getValue=function(t,n){if(!p.isObject(t))return w;var r,i=e.Array(n),s=i.length;for(r=0;t!==w&&r=0){for(i=0;u!==w&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"3.12.0",{use:["yui-base","get","features","intl-base","yui-log","yui-later","loader-base","loader-rollup","loader-yui3"]}),YUI.add("get",function(e,t){var n=e.Lang,r,i,s;e.Get=i={cssOptions:{attributes:{rel:"stylesheet"},doc:e.config.linkDoc||e.config.doc,pollInterval:50},jsOptions:{autopurge:!0,doc:e.config.scriptDoc||e.config.doc},options:{attributes:{charset:"utf-8"},purgethreshold:20},REGEX_CSS:/\.css(?:[?;].*)?$/i,REGEX_JS:/\.js(?:[?;].*)?$/i,_insertCache:{},_pending:null,_purgeNodes:[],_queue:[],abort:function(e){var t,n,r,i,s;if(!e.abort){n=e,s=this._pending,e=null;if(s&&s.transaction.id===n)e=s.transaction,this._pending=null;else for(t=0,i=this._queue.length;t=e&&this._purge(this._purgeNodes)},_getEnv:function(){var t=e.config.doc,n=e.UA;return this._env={async:t&&t.createElement("script").async===!0||n.ie>=10,cssFail:n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0,cssLoad:(!n.gecko&&!n.webkit||n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0)&&! +(n.chrome&&n.chrome<=18),preservesScriptOrder:!!(n.gecko||n.opera||n.ie&&n.ie>=10)}},_getTransaction:function(t,r){var i=[],o,u,a,f;n.isArray(t)||(t=[t]),r=e.merge(this.options,r),r.attributes=e.merge(this.options.attributes,r.attributes);for(o=0,u=t.length;o-1&&n.splice(i,1))}}},i.script=i.js,i.Transaction=s=function(t,n){var r=this;r.id=s._lastId+=1,r.data=n.data,r.errors=[],r.nodes=[],r.options=n,r.requests=t,r._callbacks=[],r._queue=[],r._reqsWaiting=0,r.tId=r.id,r.win=n.win||e.config.win},s._lastId=0,s.prototype={_state:"new",abort:function(e){this._pending=null,this._pendingCSS=null,this._pollTimer=clearTimeout(this._pollTimer),this._queue=[],this._reqsWaiting=0,this.errors.push({error:e||"Aborted"}),this._finish()},execute:function(e){var t=this,n=t.requests,r=t._state,i,s,o,u;if(r==="done"){e&&e(t.errors.length?t.errors:null,t);return}e&&t._callbacks.push(e);if(r==="executing")return;t._state="executing",t._queue=o=[],t.options.timeout&&(t._timeout=setTimeout(function(){t.abort("Timeout")},t.options.timeout)),t._reqsWaiting=n.length;for(i=0,s=n.length;i=10?(o.onerror=function(){setTimeout(c,0)},o.onload=function(){setTimeout(h,0)}):(o.onerror=c,o.onload=h),!n.cssFail&&!s&&(f=setTimeout(c,t.timeout||3e3))),this.nodes.push(o),r.parentNode.insertBefore(o,r)},_next:function(){if(this._pending)return;this._queue.length?this._insert(this._queue.shift()):this._reqsWaiting||this._finish()},_poll:function(t){var n=this,r=n._pendingCSS,i=e.UA.webkit,s,o,u,a,f,l;if(t){r||(r=n._pendingCSS=[]),r.push(t);if(n._pollTimer)return}n._pollTimer=null;for(s=0;s=0)if(l[u].href===a){r.splice(s,1),s-=1,n._progress(null,f);break}}else try{o=!!f.node.sheet.cssRules,r.splice(s,1),s-=1,n._progress(null,f)}catch(c){}}r.length&&(n._pollTimer=setTimeout(function(){n._poll.call(n)},n.options.pollInterval))},_progress:function(e,t){var n=this.options;e&&(t.error=e,this.errors.push({error:e,request:t})),t.node._yuiget_finished=t.finished=!0,n.onProgress&&n.onProgress.call(n.context||this,this._getEventData(t)),t.autopurge&&(i._autoPurge(this.options.purgethreshold),i._purgeNodes.push(t.node)),this._pending===t&&(this._pending=null),this._reqsWaiting-=1,this._next()}}},"3.12.0",{requires:["yui-base"]}),YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null +;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"3.12.0",{requires:["yui-base"]}),YUI.add("intl-base",function(e,t){var n=/[, ]/;e.mix(e.namespace("Intl"),{lookupBestLang:function(t,r){function a(e){var t;for(t=0;t0){o=a(s);if(o)return o;u=s.lastIndexOf("-");if(!(u>=0))break;s=s.substring(0,u),u>=2&&s.charAt(u-2)==="-"&&(s=s.substring(0,u-2))}}return""}})},"3.12.0",{requires:["yui-base"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:2,warn:4,error:8};n.log=function(e,t,o,u){var a,f,l,c,h,p,d=n,v=d.config,m=d.fire?d:YUI.Env.globalEvents;return v.debug&&(o=o||"",typeof o!="undefined"&&(f=v.logExclude,l=v.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1,d.config.logLevel=d.config.logLevel||"debug",p=s[d.config.logLevel.toLowerCase()],t in s&&s[t]-1,n.comboSep="&",n.maxURLLength=i,n.ignoreRegistered=t.ignoreRegistered,n.root=e.Env.meta.root,n.timeout=0,n.forceMap={},n.allowRollup=!1,n.filters={},n.required={},n.patterns={},n.moduleInfo={},n.groups=e.merge(e.Env.meta.groups),n.skin=e.merge(e.Env.meta.skin),n.conditions={},n.config=t,n._internal=!0,n._populateCache(),n.loaded=o[c],n.async=!0,n._inspectPage(),n._internal=!1,n._config(t),n.forceMap=n.force?e.Array.hash(n.force):{},n.testresults=null,e.config.tests&&(n.testresults=e.config.tests),n.sorted=[],n.dirty=!0,n.inserted={},n.skipped={},n.tested={},n.ignoreRegistered&&n._resetModules()},e.Loader.prototype={_populateCache:function(){var t=this,n=g.modules,r=s._renderedMods,i;if(r&&!t.ignoreRegistered){for(i in r)r.hasOwnProperty(i)&&(t.moduleInfo[i]=e.merge(r[i]));r=s._conditions;for(i in r)r.hasOwnProperty(i)&&(t.conditions[i]=e.merge(r[i]))}else for(i in n)n.hasOwnProperty(i)&&t.addModule(n[i],i)},_resetModules:function(){var e=this,t,n,r,i,s;for(t in e.moduleInfo)if(e.moduleInfo.hasOwnProperty(t)){r=e.moduleInfo[t],i=r.name,s=YUI.Env.mods[i]?YUI.Env.mods[i].details:null,s&&(e.moduleInfo[i]._reset=!0,e.moduleInfo[i].requires=s.requires||[],e.moduleInfo[i].optional=s.optional||[],e.moduleInfo[i].supersedes=s.supercedes||[]);if(r.defaults)for(n in r.defaults)r.defaults.hasOwnProperty(n)&&r[n]&&(r[n]=r.defaults[n]);delete r.langCache,delete r.skinCache,r.skinnable&&e._addSkin(e.skin.defaultSkin,r.name)}},REGEX_CSS:/\.css(?:[?;].*)?$/i,FILTER_DEFS:{RAW:{searchExp:"-min\\.js",replaceStr:".js"},DEBUG:{searchExp:"-min\\.js",replaceStr:"-debug.js"},COVERAGE:{searchExp:"-min\\.js",replaceStr:"-coverage.js"}},_inspectPage:function(){var e=this,t,n,r,i,s;for(s in e.moduleInfo)e.moduleInfo.hasOwnProperty(s)&&(t=e.moduleInfo[s],t.type&&t.type===u&&e.isCSSLoaded(t.name)&&(e.loaded[s]=!0));for(s in w)w.hasOwnProperty(s)&&(t=w[s],t.details&&(n=e.moduleInfo[t.name],r=t.details.requires,i=n&&n.requires,n?!n._inspected&&r&&i.length!==r.length&&delete n.expanded:n=e.addModule(t.details,s),n._inspected=!0))},_requires:function(e,t){var n,r,i,s,o=this.moduleInfo,a=o[e],f=o[t];if(!a||!f)return!1;r=a.expanded_map,i=a.after_map;if(i&&t in i)return!0;i=f.after_map;if(i&&e in i)return!1;s=o[t]&&o[t].supersedes;if(s)for(n=0;n-1&&(k=n);if(C&&(C[c]||k&&C[k])){L=c,C[k]&&(L=k);for(n=0;n-1},getModule:function(t){if(!t)return null;var n,r,i,s=this.moduleInfo[t],o=this.patterns;if(!s||s&&s.ext)for(i in o)if(o.hasOwnProperty(i)){n=o[i],n.test||(n.test=this._patternTest);if(n.test(t,i)){r=n;break}}return s?r&&s&&r.configFn&&!s.configFn&&(s.configFn=r.configFn,s.configFn(s)):r&&(n.action?n.action.call(this,t,i):(s=this.addModule(e.merge(r),t),r.configFn&&(s.configFn=r.configFn),s.temp=!0)),s},_rollup:function(){},_reduce:function(e){e=e||this.required;var t,n,r,i,s=this.loadType,o=this.ignore?v.hash(this.ignore):!1;for(t in e)if(e.hasOwnProperty(t)){i=this.getModule(t),((this.loaded[t]||w[t])&&!this.forceMap[t]&&!this.ignoreRegistered||s&&i&&i.type!==s)&&delete e[t],o&&o[t]&&delete e[t],r=i&&i.supersedes;if(r)for(n=0;n0&&(m.running=!0,m.next()())},insert:function(t,n,r){var i=this,s=e.merge(this);delete s.require,delete s.dirty,m.add(function(){i._insert(s,t,n,r)}),this._continue()},loadNext:function(){return},_filter:function(e,t,n){var r=this.filter,i=t&&t in this.filters,s=i&&this.filters[t],o=n||(this.moduleInfo[t]?this.moduleInfo[t].group:null);return o&&this.groups[o]&&this.groups[o].filter&&(s=this.groups[o].filter,i=!0),e&&(i&&(r=b.isString(s)?this.FILTER_DEFS[s.toUpperCase()]||null:s),r&&(e=e.replace(new RegExp(r.searchExp,"g"),r.replaceStr))),e},_url:function(e,t,n){return this._filter((n||this.base||"")+e,t)},resolve:function(e,t){var r,s,o,f,c,h,p,d,v,m,g,y,w,E,S=[],x,T,N={},C=this,k,A,O=C.ignoreRegistered?{}:C.inserted,M={js:[],jsMods:[],css:[],cssMods:[]},_=C.loadType||"js",D;(C.skin.overrides||C.skin.defaultSkin!==l||C.ignoreRegistered)&&C._resetModules(),e&&C.calculate(),t=t||C.sorted,D=function(e){if(e){c=e.group&&C.groups[e.group]||n,c.async===!1&&(e.async=c.async),f=e.fullpath?C._filter(e.fullpath,t[s]):C._url(e.path,t[s],c.base||e.base);if(e.attributes||e.async===!1)f={url:f,async:e.async},e.attributes&&(f.attributes=e.attributes);M[e.type].push(f),M[e.type+"Mods"].push(e)}},r=t.length,y=C.comboBase,f=y,m={};for(s=0;sA){S=[];for(t=0;tA&&(o=S.pop(),x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)),S=[],o&&S.push(o));S.length&&(x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)))}else M[_].push(C._filter(x,null,N[w].group));M[_+"Mods"]=M[_+"Mods"].concat(g)}}return N=null,M},load:function(e){if(!e)return;var t=this,n=t.resolve(!0);t.data=n,t.onEnd=function(){e.apply(t.context||t,arguments)},t.insert()}}},"3.12.0",{requires:["get","features"]}),YUI.add("loader-rollup",function(e,t){e.Loader.prototype._rollup=function(){var e,t,n,r,i=this.required,s,o=this.moduleInfo,u,a,f;if(this.dirty||!this.rollups){this.rollups={};for(e in o)o.hasOwnProperty(e)&&(n=this.getModule(e),n&&n.rollup&&(this.rollups[e]=n))}for(;;){u=!1;for(e in this.rollups)if(this.rollups.hasOwnProperty(e)&&!i[e]&&(!this.loaded[e]||this.forceMap[e])){n=this.getModule(e),r=n.supersedes||[],s=!1;if(!n.rollup)continue;a=0;for(t=0;t=n.rollup;if(s)break}}s&&(i[e]=!0,u=!0,this.getRequires(n))}if(!u)break}}},"3.12.0",{requires:["loader-base"]}),YUI.add("loader-yui3",function(e,t){YUI.Env[e.version].modules=YUI.Env[e.version].modules||{},e.mix(YUI.Env[e.version].modules,{"align-plugin":{requires:["node-screen","node-pluginhost"]},anim:{use:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"]},"anim-base":{requires:["base-base","node-style"]},"anim-color":{requires:["anim-base"]},"anim-curve":{requires:["anim-xy"]},"anim-easing":{requires:["anim-base"]},"anim-node-plugin":{requires:["node-pluginhost","anim-base"]},"anim-scroll":{requires:["anim-base"]},"anim-shape":{requires:["anim-base","anim-easing","anim-color","matrix"]},"anim-shape-transform":{use:["anim-shape"]},"anim-xy":{requires:["anim-base","node-screen"]},app:{use:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"]},"app-base":{requires:["classnamemanager","pjax-base","router","view"]},"app-content":{requires:["app-base","pjax-content"]},"app-transitions":{requires:["app-base"]},"app-transitions-css":{type:"css"},"app-transitions-native":{condition:{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"},requires:["app-transitions","app-transitions-css","parallel","transition"]},"array-extras":{requires:["yui-base"]},"array-invoke":{requires:["yui-base"]},arraylist:{requires:["yui-base"]},"arraylist-add":{requires:["arraylist"]},"arraylist-filter":{requires:["arraylist"]},arraysort:{requires:["yui-base"]},"async-queue":{requires:["event-custom"]},attribute:{use:["attribute-base","attribute-complex"]},"attribute-base":{requires:["attribute-core","attribute-observable","attribute-extras"]},"attribute-complex":{requires:["attribute-base"]},"attribute-core":{requires:["oop"]},"attribute-events":{use:["attribute-observable"]},"attribute-extras":{requires:["oop"]},"attribute-observable":{requires:["event-custom"]},autocomplete:{use:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"]},"autocomplete-base":{optional:["autocomplete-sources" +],requires:["array-extras","base-build","escape","event-valuechange","node-base"]},"autocomplete-filters":{requires:["array-extras","text-wordbreak"]},"autocomplete-filters-accentfold":{requires:["array-extras","text-accentfold","text-wordbreak"]},"autocomplete-highlighters":{requires:["array-extras","highlight-base"]},"autocomplete-highlighters-accentfold":{requires:["array-extras","highlight-accentfold"]},"autocomplete-list":{after:["autocomplete-sources"],lang:["en","es","hu","it"],requires:["autocomplete-base","event-resize","node-screen","selector-css3","shim-plugin","widget","widget-position","widget-position-align"],skinnable:!0},"autocomplete-list-keys":{condition:{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"},requires:["autocomplete-list","base-build"]},"autocomplete-plugin":{requires:["autocomplete-list","node-pluginhost"]},"autocomplete-sources":{optional:["io-base","json-parse","jsonp","yql"],requires:["autocomplete-base"]},axes:{use:["axis-numeric","axis-category","axis-time","axis-stacked"]},"axes-base":{use:["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"]},axis:{requires:["dom","widget","widget-position","widget-stack","graphics","axis-base"]},"axis-base":{requires:["classnamemanager","datatype-number","datatype-date","base","event-custom"]},"axis-category":{requires:["axis","axis-category-base"]},"axis-category-base":{requires:["axis-base"]},"axis-numeric":{requires:["axis","axis-numeric-base"]},"axis-numeric-base":{requires:["axis-base"]},"axis-stacked":{requires:["axis-numeric","axis-stacked-base"]},"axis-stacked-base":{requires:["axis-numeric-base"]},"axis-time":{requires:["axis","axis-time-base"]},"axis-time-base":{requires:["axis-base"]},base:{use:["base-base","base-pluginhost","base-build"]},"base-base":{requires:["attribute-base","base-core","base-observable"]},"base-build":{requires:["base-base"]},"base-core":{requires:["attribute-core"]},"base-observable":{requires:["attribute-observable"]},"base-pluginhost":{requires:["base-base","pluginhost"]},button:{requires:["button-core","cssbutton","widget"]},"button-core":{requires:["attribute-core","classnamemanager","node-base"]},"button-group":{requires:["button-plugin","cssbutton","widget"]},"button-plugin":{requires:["button-core","cssbutton","node-pluginhost"]},cache:{use:["cache-base","cache-offline","cache-plugin"]},"cache-base":{requires:["base"]},"cache-offline":{requires:["cache-base","json"]},"cache-plugin":{requires:["plugin","cache-base"]},calendar:{requires:["calendar-base","calendarnavigator"],skinnable:!0},"calendar-base":{lang:["de","en","es","es-AR","fr","hu","it","ja","nb-NO","nl","pt-BR","ru","zh-Hans","zh-Hans-CN","zh-Hant","zh-Hant-HK","zh-HANT-TW"],requires:["widget","datatype-date","datatype-date-math","cssgrids"],skinnable:!0},calendarnavigator:{requires:["plugin","classnamemanager","datatype-date","node"],skinnable:!0},charts:{use:["charts-base"]},"charts-base":{requires:["dom","event-mouseenter","event-touch","graphics-group","axes","series-pie","series-line","series-marker","series-area","series-spline","series-column","series-bar","series-areaspline","series-combo","series-combospline","series-line-stacked","series-marker-stacked","series-area-stacked","series-spline-stacked","series-column-stacked","series-bar-stacked","series-areaspline-stacked","series-combo-stacked","series-combospline-stacked"]},"charts-legend":{requires:["charts-base"]},classnamemanager:{requires:["yui-base"]},"clickable-rail":{requires:["slider-base"]},collection:{use:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"]},color:{use:["color-base","color-hsl","color-harmony"]},"color-base":{requires:["yui-base"]},"color-harmony":{requires:["color-hsl"]},"color-hsl":{requires:["color-base"]},"color-hsv":{requires:["color-base"]},console:{lang:["en","es","hu","it","ja"],requires:["yui-log","widget"],skinnable:!0},"console-filters":{requires:["plugin","console"],skinnable:!0},controller:{use:["router"]},cookie:{requires:["yui-base"]},"createlink-base":{requires:["editor-base"]},cssbase:{after:["cssreset","cssfonts","cssgrids","cssreset-context","cssfonts-context","cssgrids-context"],type:"css"},"cssbase-context":{after:["cssreset","cssfonts","cssgrids","cssreset-context","cssfonts-context","cssgrids-context"],type:"css"},cssbutton:{type:"css"},cssfonts:{type:"css"},"cssfonts-context":{type:"css"},cssgrids:{optional:["cssnormalize"],type:"css"},"cssgrids-base":{optional:["cssnormalize"],type:"css"},"cssgrids-responsive":{optional:["cssnormalize"],requires:["cssgrids","cssgrids-responsive-base"],type:"css"},"cssgrids-units":{optional:["cssnormalize"],requires:["cssgrids-base"],type:"css"},cssnormalize:{type:"css"},"cssnormalize-context":{type:"css"},cssreset:{type:"css"},"cssreset-context":{type:"css"},dataschema:{use:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"]},"dataschema-array":{requires:["dataschema-base"]},"dataschema-base":{requires:["base"]},"dataschema-json":{requires:["dataschema-base","json"]},"dataschema-text":{requires:["dataschema-base"]},"dataschema-xml":{requires:["dataschema-base"]},datasource:{use:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"]},"datasource-arrayschema":{requires:["datasource-local","plugin","dataschema-array"]},"datasource-cache":{requires:["datasource-local","plugin","cache-base"]},"datasource-function":{requires:["datasource-local"]},"datasource-get":{requires:["datasource-local","get"]},"datasource-io":{requires:["datasource-local","io-base"]},"datasource-jsonschema":{requires:["datasource-local","plugin","dataschema-json"]},"datasource-local":{requires:["base"]},"datasource-polling":{requires:["datasource-local"]},"datasource-textschema":{requires:["datasource-local" +,"plugin","dataschema-text"]},"datasource-xmlschema":{requires:["datasource-local","plugin","datatype-xml","dataschema-xml"]},datatable:{use:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"]},"datatable-base":{requires:["datatable-core","datatable-table","datatable-head","datatable-body","base-build","widget"],skinnable:!0},"datatable-body":{requires:["datatable-core","view","classnamemanager"]},"datatable-column-widths":{requires:["datatable-base"]},"datatable-core":{requires:["escape","model-list","node-event-delegate"]},"datatable-datasource":{requires:["datatable-base","plugin","datasource-local"]},"datatable-foot":{requires:["datatable-core","view"]},"datatable-formatters":{requires:["datatable-body","datatype-number-format","datatype-date-format","escape"]},"datatable-head":{requires:["datatable-core","view","classnamemanager"]},"datatable-message":{lang:["en","fr","es","hu","it"],requires:["datatable-base"],skinnable:!0},"datatable-mutable":{requires:["datatable-base"]},"datatable-paginator":{lang:["en"],requires:["model","view","paginator-core","datatable-foot","datatable-paginator-templates"],skinnable:!0},"datatable-paginator-templates":{requires:["template"]},"datatable-scroll":{requires:["datatable-base","datatable-column-widths","dom-screen"],skinnable:!0},"datatable-sort":{lang:["en","fr","es","hu"],requires:["datatable-base"],skinnable:!0},"datatable-table":{requires:["datatable-core","datatable-head","datatable-body","view","classnamemanager"]},datatype:{use:["datatype-date","datatype-number","datatype-xml"]},"datatype-date":{use:["datatype-date-parse","datatype-date-format","datatype-date-math"]},"datatype-date-format":{lang:["ar","ar-JO","ca","ca-ES","da","da-DK","de","de-AT","de-DE","el","el-GR","en","en-AU","en-CA","en-GB","en-IE","en-IN","en-JO","en-MY","en-NZ","en-PH","en-SG","en-US","es","es-AR","es-BO","es-CL","es-CO","es-EC","es-ES","es-MX","es-PE","es-PY","es-US","es-UY","es-VE","fi","fi-FI","fr","fr-BE","fr-CA","fr-FR","hi","hi-IN","hu","id","id-ID","it","it-IT","ja","ja-JP","ko","ko-KR","ms","ms-MY","nb","nb-NO","nl","nl-BE","nl-NL","pl","pl-PL","pt","pt-BR","ro","ro-RO","ru","ru-RU","sv","sv-SE","th","th-TH","tr","tr-TR","vi","vi-VN","zh-Hans","zh-Hans-CN","zh-Hant","zh-Hant-HK","zh-Hant-TW"]},"datatype-date-math":{requires:["yui-base"]},"datatype-date-parse":{},"datatype-number":{use:["datatype-number-parse","datatype-number-format"]},"datatype-number-format":{},"datatype-number-parse":{},"datatype-xml":{use:["datatype-xml-parse","datatype-xml-format"]},"datatype-xml-format":{},"datatype-xml-parse":{},dd:{use:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"]},"dd-constrain":{requires:["dd-drag"]},"dd-ddm":{requires:["dd-ddm-base","event-resize"]},"dd-ddm-base":{requires:["node","base","yui-throttle","classnamemanager"]},"dd-ddm-drop":{requires:["dd-ddm"]},"dd-delegate":{requires:["dd-drag","dd-drop-plugin","event-mouseenter"]},"dd-drag":{requires:["dd-ddm-base"]},"dd-drop":{requires:["dd-drag","dd-ddm-drop"]},"dd-drop-plugin":{requires:["dd-drop"]},"dd-gestures":{condition:{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"},requires:["dd-drag","event-synthetic","event-gestures"]},"dd-plugin":{optional:["dd-constrain","dd-proxy"],requires:["dd-drag"]},"dd-proxy":{requires:["dd-drag"]},"dd-scroll":{requires:["dd-drag"]},dial:{lang:["en","es","hu"],requires:["widget","dd-drag","event-mouseenter","event-move","event-key","transition","intl"],skinnable:!0},dom:{use:["dom-base","dom-screen","dom-style","selector-native","selector"]},"dom-base":{requires:["dom-core"]},"dom-core":{requires:["oop","features"]},"dom-deprecated":{requires:["dom-base"]},"dom-screen":{requires:["dom-base","dom-style"]},"dom-style":{requires:["dom-base","color-base"]},"dom-style-ie":{condition:{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"},requires:["dom-style"]},dump:{requires:["yui-base"]},editor:{use:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"]},"editor-base":{requires:["base","frame","node","exec-command","editor-selection"]},"editor-bidi":{requires:["editor-base"]},"editor-br":{requires:["editor-base"]},"editor-lists":{requires:["editor-base"]},"editor-para":{requires:["editor-para-base"]},"editor-para-base":{requires:["editor-base"]},"editor-para-ie":{condition:{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"},requires:["editor-para-base"]},"editor-selection":{requires:["node"]},"editor-tab":{requires:["editor-base"]},escape:{requires:["yui-base"]},event:{after:["node-base"],use:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"]},"event-base":{after:["node-base"],requires:["event-custom-base"]},"event-base-ie":{after:["event-base"],condition:{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"},requires:["node-base"]},"event-contextmenu":{requires:["event-synthetic","dom-screen"]},"event-custom":{use:["event-custom-base","event-custom-complex"]},"event-custom-base":{requires:["oop"]},"event-custom-complex":{requires:["event-custom-base"]},"event-delegate":{requires:["node-base"]},"event-flick":{requires:["node-base","event-touch","event-synthetic"]},"event-focus":{requires:["event-synthetic" +]},"event-gestures":{use:["event-flick","event-move"]},"event-hover":{requires:["event-mouseenter"]},"event-key":{requires:["event-synthetic"]},"event-mouseenter":{requires:["event-synthetic"]},"event-mousewheel":{requires:["node-base"]},"event-move":{requires:["node-base","event-touch","event-synthetic"]},"event-outside":{requires:["event-synthetic"]},"event-resize":{requires:["node-base","event-synthetic"]},"event-simulate":{requires:["event-base"]},"event-synthetic":{requires:["node-base","event-custom-complex"]},"event-tap":{requires:["node-base","event-base","event-touch","event-synthetic"]},"event-touch":{requires:["node-base"]},"event-valuechange":{requires:["event-focus","event-synthetic"]},"exec-command":{requires:["frame"]},features:{requires:["yui-base"]},file:{requires:["file-flash","file-html5"]},"file-flash":{requires:["base"]},"file-html5":{requires:["base"]},frame:{requires:["base","node","selector-css3","yui-throttle"]},"gesture-simulate":{requires:["async-queue","event-simulate","node-screen"]},get:{requires:["yui-base"]},graphics:{requires:["node","event-custom","pluginhost","matrix","classnamemanager"]},"graphics-canvas":{condition:{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"},requires:["graphics"]},"graphics-canvas-default":{condition:{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}},"graphics-group":{requires:["graphics"]},"graphics-svg":{condition:{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"},requires:["graphics"]},"graphics-svg-default":{condition:{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}},"graphics-vml":{condition:{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"},requires:["graphics"]},"graphics-vml-default":{condition:{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}},handlebars:{use:["handlebars-compiler"]},"handlebars-base":{requires:[]},"handlebars-compiler":{requires:["handlebars-base"]},highlight:{use:["highlight-base","highlight-accentfold"]},"highlight-accentfold":{requires:["highlight-base","text-accentfold"]},"highlight-base":{requires:["array-extras","classnamemanager","escape","text-wordbreak"]},history:{use:["history-base","history-hash","history-hash-ie","history-html5"]},"history-base":{requires:["event-custom-complex"]},"history-hash":{after:["history-html5"],requires:["event-synthetic","history-base","yui-later"]},"history-hash-ie":{condition:{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"},requires:["history-hash","node-base"]},"history-html5":{optional:["json"],requires:["event-base","history-base","node-base"]},imageloader:{requires:["base-base","node-style","node-screen"]},intl:{requires:["intl-base","event-custom"]},"intl-base":{requires:["yui-base"]},io:{use:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"]},"io-base":{requires:["event-custom-base","querystring-stringify-simple"]},"io-form":{requires:["io-base","node-base"]},"io-nodejs":{condition:{name:"io-nodejs",trigger:"io-base",ua:"nodejs"},requires:["io-base"]},"io-queue":{requires:["io-base","queue-promote"]},"io-upload-iframe":{requires:["io-base","node-base"]},"io-xdr":{requires:["io-base","datatype-xml-parse"]},json:{use:["json-parse","json-stringify"]},"json-parse":{requires:["yui-base"]},"json-parse-shim":{condition:{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"},requires:["json-parse"]},"json-stringify":{requires:["yui-base"]},"json-stringify-shim":{condition:{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"},requires:["json-stringify"]},jsonp:{requires:["get","oop"]},"jsonp-url":{requires:["jsonp"]},"lazy-model-list":{requires:["model-list"]},loader:{use:["loader-base","loader-rollup","loader-yui3"]},"loader-base":{requires:["get","features"]},"loader-rollup":{requires:["loader-base"]},"loader-yui3":{requires:["loader-base"]},matrix:{requires:["yui-base"]},model:{requires:["base-build","escape","json-parse"]},"model-list":{requires:["array-extras","array-invoke","arraylist","base-build","escape","json-parse","model"]},"model-sync-rest":{requires:["model","io-base" +,"json-stringify"]},node:{use:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"]},"node-base":{requires:["event-base","node-core","dom-base","dom-style"]},"node-core":{requires:["dom-core","selector"]},"node-deprecated":{requires:["node-base"]},"node-event-delegate":{requires:["node-base","event-delegate"]},"node-event-html5":{requires:["node-base"]},"node-event-simulate":{requires:["node-base","event-simulate","gesture-simulate"]},"node-flick":{requires:["classnamemanager","transition","event-flick","plugin"],skinnable:!0},"node-focusmanager":{requires:["attribute","node","plugin","node-event-simulate","event-key","event-focus"]},"node-load":{requires:["node-base","io-base"]},"node-menunav":{requires:["node","classnamemanager","plugin","node-focusmanager"],skinnable:!0},"node-pluginhost":{requires:["node-base","pluginhost"]},"node-screen":{requires:["dom-screen","node-base"]},"node-scroll-info":{requires:["array-extras","base-build","event-resize","node-pluginhost","plugin","selector"]},"node-style":{requires:["dom-style","node-base"]},oop:{requires:["yui-base"]},overlay:{requires:["widget","widget-stdmod","widget-position","widget-position-align","widget-stack","widget-position-constrain"],skinnable:!0},paginator:{requires:["paginator-core"]},"paginator-core":{requires:["base"]},"paginator-url":{requires:["paginator"]},panel:{requires:["widget","widget-autohide","widget-buttons","widget-modality","widget-position","widget-position-align","widget-position-constrain","widget-stack","widget-stdmod"],skinnable:!0},parallel:{requires:["yui-base"]},pjax:{requires:["pjax-base","pjax-content"]},"pjax-base":{requires:["classnamemanager","node-event-delegate","router"]},"pjax-content":{requires:["io-base","node-base","router"]},"pjax-plugin":{requires:["node-pluginhost","pjax","plugin"]},plugin:{requires:["base-base"]},pluginhost:{use:["pluginhost-base","pluginhost-config"]},"pluginhost-base":{requires:["yui-base"]},"pluginhost-config":{requires:["pluginhost-base"]},promise:{requires:["timers"]},querystring:{use:["querystring-parse","querystring-stringify"]},"querystring-parse":{requires:["yui-base","array-extras"]},"querystring-parse-simple":{requires:["yui-base"]},"querystring-stringify":{requires:["yui-base"]},"querystring-stringify-simple":{requires:["yui-base"]},"queue-promote":{requires:["yui-base"]},"range-slider":{requires:["slider-base","slider-value-range","clickable-rail"]},recordset:{use:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"]},"recordset-base":{requires:["base","arraylist"]},"recordset-filter":{requires:["recordset-base","array-extras","plugin"]},"recordset-indexer":{requires:["recordset-base","plugin"]},"recordset-sort":{requires:["arraysort","recordset-base","plugin"]},resize:{use:["resize-base","resize-proxy","resize-constrain"]},"resize-base":{requires:["base","widget","event","oop","dd-drag","dd-delegate","dd-drop"],skinnable:!0},"resize-constrain":{requires:["plugin","resize-base"]},"resize-plugin":{optional:["resize-constrain"],requires:["resize-base","plugin"]},"resize-proxy":{requires:["plugin","resize-base"]},router:{optional:["querystring-parse"],requires:["array-extras","base-build","history"]},scrollview:{requires:["scrollview-base","scrollview-scrollbars"]},"scrollview-base":{requires:["widget","event-gestures","event-mousewheel","transition"],skinnable:!0},"scrollview-base-ie":{condition:{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"},requires:["scrollview-base"]},"scrollview-list":{requires:["plugin","classnamemanager"],skinnable:!0},"scrollview-paginator":{requires:["plugin","classnamemanager"]},"scrollview-scrollbars":{requires:["classnamemanager","transition","plugin"],skinnable:!0},selector:{requires:["selector-native"]},"selector-css2":{condition:{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"},requires:["selector-native"]},"selector-css3":{requires:["selector-native","selector-css2"]},"selector-native":{requires:["dom-base"]},"series-area":{requires:["series-cartesian","series-fill-util"]},"series-area-stacked":{requires:["series-stacked","series-area"]},"series-areaspline":{requires:["series-area","series-curve-util"]},"series-areaspline-stacked":{requires:["series-stacked","series-areaspline"]},"series-bar":{requires:["series-marker","series-histogram-base"]},"series-bar-stacked":{requires:["series-stacked","series-bar"]},"series-base":{requires:["graphics","axis-base"]},"series-candlestick":{requires:["series-range"]},"series-cartesian":{requires:["series-base"]},"series-column":{requires:["series-marker","series-histogram-base"]},"series-column-stacked":{requires:["series-stacked","series-column"]},"series-combo":{requires:["series-cartesian","series-line-util","series-plot-util","series-fill-util"]},"series-combo-stacked":{requires:["series-stacked","series-combo"]},"series-combospline":{requires:["series-combo","series-curve-util"]},"series-combospline-stacked":{requires:["series-combo-stacked","series-curve-util"]},"series-curve-util":{},"series-fill-util":{},"series-histogram-base":{requires:["series-cartesian","series-plot-util"]},"series-line":{requires:["series-cartesian","series-line-util"]},"series-line-stacked":{requires:["series-stacked","series-line"]},"series-line-util":{},"series-marker":{requires:["series-cartesian","series-plot-util"]},"series-marker-stacked":{requires:["series-stacked","series-marker"]},"series-ohlc":{requires:["series-range"]},"series-pie":{requires:["series-base","series-plot-util"]},"series-plot-util":{},"series-range":{requires:["series-cartesian"]},"series-spline":{requires:["series-line","series-curve-util"]},"series-spline-stacked":{requires:["series-stacked","series-spline"]},"series-stacked":{requires:["axis-stacked"]},"shim-plugin":{requires:["node-style","node-pluginhost"]},slider:{use:["slider-base","slider-value-range","clickable-rail","range-slider"]},"slider-base" +:{requires:["widget","dd-constrain","event-key"],skinnable:!0},"slider-value-range":{requires:["slider-base"]},sortable:{requires:["dd-delegate","dd-drop-plugin","dd-proxy"]},"sortable-scroll":{requires:["dd-scroll","sortable"]},stylesheet:{requires:["yui-base"]},substitute:{optional:["dump"],requires:["yui-base"]},swf:{requires:["event-custom","node","swfdetect","escape"]},swfdetect:{requires:["yui-base"]},tabview:{requires:["widget","widget-parent","widget-child","tabview-base","node-pluginhost","node-focusmanager"],skinnable:!0},"tabview-base":{requires:["node-event-delegate","classnamemanager"]},"tabview-plugin":{requires:["tabview-base"]},template:{use:["template-base","template-micro"]},"template-base":{requires:["yui-base"]},"template-micro":{requires:["escape"]},test:{requires:["event-simulate","event-custom","json-stringify"]},"test-console":{requires:["console-filters","test","array-extras"],skinnable:!0},text:{use:["text-accentfold","text-wordbreak"]},"text-accentfold":{requires:["array-extras","text-data-accentfold"]},"text-data-accentfold":{requires:["yui-base"]},"text-data-wordbreak":{requires:["yui-base"]},"text-wordbreak":{requires:["array-extras","text-data-wordbreak"]},timers:{requires:["yui-base"]},transition:{requires:["node-style"]},"transition-timer":{condition:{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"},requires:["transition"]},tree:{requires:["base-build","tree-node"]},"tree-labelable":{requires:["tree"]},"tree-lazy":{requires:["base-pluginhost","plugin","tree"]},"tree-node":{},"tree-openable":{requires:["tree"]},"tree-selectable":{requires:["tree"]},"tree-sortable":{requires:["tree"]},uploader:{requires:["uploader-html5","uploader-flash"]},"uploader-flash":{requires:["swf","widget","base","cssbutton","node","event-custom","file-flash","uploader-queue"]},"uploader-html5":{requires:["widget","node-event-simulate","file-html5","uploader-queue"]},"uploader-queue":{requires:["base"]},view:{requires:["base-build","node-event-delegate"]},"view-node-map":{requires:["view"]},widget:{use:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]},"widget-anim":{requires:["anim-base","plugin","widget"]},"widget-autohide":{requires:["base-build","event-key","event-outside","widget"]},"widget-base":{requires:["attribute","base-base","base-pluginhost","classnamemanager","event-focus","node-base","node-style"],skinnable:!0},"widget-base-ie":{condition:{name:"widget-base-ie",trigger:"widget-base",ua:"ie"},requires:["widget-base"]},"widget-buttons":{requires:["button-plugin","cssbutton","widget-stdmod"]},"widget-child":{requires:["base-build","widget"]},"widget-htmlparser":{requires:["widget-base"]},"widget-locale":{requires:["widget-base"]},"widget-modality":{requires:["base-build","event-outside","widget"],skinnable:!0},"widget-parent":{requires:["arraylist","base-build","widget"]},"widget-position":{requires:["base-build","node-screen","widget"]},"widget-position-align":{requires:["widget-position"]},"widget-position-constrain":{requires:["widget-position"]},"widget-skin":{requires:["widget-base"]},"widget-stack":{requires:["base-build","widget"],skinnable:!0},"widget-stdmod":{requires:["base-build","widget"]},"widget-uievents":{requires:["node-event-delegate","widget-base"]},yql:{requires:["oop"]},"yql-jsonp":{condition:{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"},requires:["jsonp","jsonp-url"]},"yql-nodejs":{condition:{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}},"yql-winjs":{condition:{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"}},yui:{},"yui-base":{},"yui-later":{requires:["yui-base"]},"yui-log":{requires:["yui-base"]},"yui-throttle":{requires:["yui-base"]}}),YUI.Env[e.version].md5="fd7c67956df50e445f40d1668dd1dc80"},"3.12.0",{requires:["loader-base"]}),YUI.add("yui",function(e,t){},"3.12.0",{use:["yui-base","get","features","intl-base","yui-log","yui-later","loader-base","loader-rollup","loader-yui3"]}); diff --git a/lib/yuilib/3.9.1/build/yui/yui.js b/lib/yuilib/3.12.0/yui/yui.js old mode 100644 new mode 100755 similarity index 97% rename from lib/yuilib/3.9.1/build/yui/yui.js rename to lib/yuilib/3.12.0/yui/yui.js index 84a74d88308..f95f2370bd7 --- a/lib/yuilib/3.9.1/build/yui/yui.js +++ b/lib/yuilib/3.12.0/yui/yui.js @@ -1,4 +1,10 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ +/* +YUI 3.12.0 (build 8655935) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + /** The YUI module contains the components required for building the YUI seed file. This includes the script loading mechanism, a simple queue, and the core @@ -157,7 +163,7 @@ available. (function() { var proto, prop, - VERSION = '3.9.1', + VERSION = '3.12.0', PERIOD = '.', BASE = 'http://yui.yahooapis.com/', /* @@ -1501,6 +1507,7 @@ with any configuration info required for the module. YUI._getLoadHook = null; } + YUI.Env[VERSION] = {}; }()); @@ -1636,6 +1643,22 @@ supported native console. This function is executed with the YUI instance as its @since 3.1.0 **/ +/** +The minimum log level to log messages for. Log levels are defined +incrementally. Messages greater than or equal to the level specified will +be shown. All others will be discarded. The order of log levels in +increasing priority is: + + debug + info + warn + error + +@property {String} logLevel +@default 'debug' +@since 3.10.0 +**/ + /** Callback to execute when `Y.error()` is called. It receives the error message and a JavaScript error object if one was provided. @@ -1721,8 +1744,8 @@ relying on ES5 functionality, even when ES5 functionality is available. /** Delay the `use` callback until a specific event has passed (`load`, `domready`, `contentready` or `available`) -@property delayUntil -@type String|Object + +@property {Object|String} delayUntil @since 3.6.0 @example @@ -1746,8 +1769,6 @@ Or you can delay until a node is available (with `available` or `contentready`): // available in the DOM. }); -@property {Object|String} delayUntil -@since 3.6.0 **/ YUI.add('yui-base', function (Y, NAME) { @@ -1788,9 +1809,15 @@ TYPES = { '[object Error]' : 'error' }, -SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, -TRIMREGEX = /^\s+|\s+$/g, -NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; +SUBREGEX = /\{\s*([^|}]+?)\s*(?:\|([^}]*))?\s*\}/g, + +WHITESPACE = "\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF", +WHITESPACE_CLASS = "[\x09-\x0D\x20\xA0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]+", +TRIM_LEFT_REGEX = new RegExp("^" + WHITESPACE_CLASS), +TRIM_RIGHT_REGEX = new RegExp(WHITESPACE_CLASS + "$"), +TRIMREGEX = new RegExp(TRIM_LEFT_REGEX.source + "|" + TRIM_RIGHT_REGEX.source, "g"), + +NATIVE_FN_REGEX = /\{\s*\[(?:native code|function)\]\s*\}/i; // -- Protected Methods -------------------------------------------------------- @@ -2014,7 +2041,7 @@ L.sub = function(s, o) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trim = STRING_PROTO.trim ? function(s) { +L.trim = L._isNative(STRING_PROTO.trim) && !WHITESPACE.trim() ? function(s) { return s && s.trim ? s.trim() : s; } : function (s) { try { @@ -2031,10 +2058,10 @@ L.trim = STRING_PROTO.trim ? function(s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimLeft = STRING_PROTO.trimLeft ? function (s) { +L.trimLeft = L._isNative(STRING_PROTO.trimLeft) && !WHITESPACE.trimLeft() ? function (s) { return s.trimLeft(); } : function (s) { - return s.replace(/^\s+/, ''); + return s.replace(TRIM_LEFT_REGEX, ''); }; /** @@ -2044,10 +2071,10 @@ L.trimLeft = STRING_PROTO.trimLeft ? function (s) { * @param s {string} the string to trim. * @return {string} the trimmed string. */ -L.trimRight = STRING_PROTO.trimRight ? function (s) { +L.trimRight = L._isNative(STRING_PROTO.trimRight) && !WHITESPACE.trimRight() ? function (s) { return s.trimRight(); } : function (s) { - return s.replace(/\s+$/, ''); + return s.replace(TRIM_RIGHT_REGEX, ''); }; /** @@ -2149,16 +2176,34 @@ Dedupes an array of strings, returning an array that's guaranteed to contain only one copy of a given string. This method differs from `Array.unique()` in that it's optimized for use only -with strings, whereas `unique` may be used with other types (but is slower). -Using `dedupe()` with non-string values may result in unexpected behavior. +with arrays consisting entirely of strings or entirely of numbers, whereas +`unique` may be used with other value types (but is slower). + +Using `dedupe()` with values other than strings or numbers, or with arrays +containing a mix of strings and numbers, may result in unexpected behavior. @method dedupe -@param {String[]} array Array of strings to dedupe. -@return {Array} Deduped copy of _array_. +@param {String[]|Number[]} array Array of strings or numbers to dedupe. +@return {Array} Copy of _array_ containing no duplicate values. @static @since 3.4.0 **/ -YArray.dedupe = function (array) { +YArray.dedupe = Lang._isNative(Object.create) ? function (array) { + var hash = Object.create(null), + results = [], + i, item, len; + + for (i = 0, len = array.length; i < len; ++i) { + item = array[i]; + + if (!hash[item]) { + hash[item] = 1; + results.push(item); + } + } + + return results; +} : function (array) { var hash = {}, results = [], i, item, len; @@ -2800,7 +2845,7 @@ hasEnumBug = O._hasEnumBug = !{valueOf: 0}.propertyIsEnumerable('valueOf'), /** * `true` if this browser incorrectly considers the `prototype` property of - * functions to be enumerable. Currently known to affect Opera 11.50. + * functions to be enumerable. Currently known to affect Opera 11.50 and Android 2.3.x. * * @property _hasProtoEnumBug * @type Boolean @@ -2844,7 +2889,9 @@ O.hasKey = owns; * as the order in which they were defined. * * This method is an alias for the native ES5 `Object.keys()` method if - * available. + * available and non-buggy. The Opera 11.50 and Android 2.3.x versions of + * `Object.keys()` have an inconsistency as they consider `prototype` to be + * enumerable, so a non-native shim is used to rectify the difference. * * @example * @@ -2856,7 +2903,7 @@ O.hasKey = owns; * @return {String[]} Array of keys. * @static */ -O.keys = Lang._isNative(Object.keys) ? Object.keys : function (obj) { +O.keys = Lang._isNative(Object.keys) && !hasProtoEnumBug ? Object.keys : function (obj) { if (!Lang.isObject(obj)) { throw new TypeError('Object.keys called on a non-object'); } @@ -3463,17 +3510,25 @@ YUI.Env.parseUA = function(subUA) { } } - m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); - if (m && m[1] && m[2]) { - o.chrome = numberify(m[2]); // Chrome - o.safari = 0; //Reset safari back to 0 - if (m[1] === 'CrMo') { - o.mobile = 'chrome'; - } + m = ua.match(/OPR\/(\d+\.\d+)/); + + if (m && m[1]) { + // Opera 15+ with Blink (pretends to be both Chrome and Safari) + o.opera = numberify(m[1]); } else { - m = ua.match(/AdobeAIR\/([^\s]*)/); - if (m) { - o.air = m[0]; // Adobe AIR 1.0 or better + m = ua.match(/(Chrome|CrMo|CriOS)\/([^\s]*)/); + + if (m && m[1] && m[2]) { + o.chrome = numberify(m[2]); // Chrome + o.safari = 0; //Reset safari back to 0 + if (m[1] === 'CrMo') { + o.mobile = 'chrome'; + } + } else { + m = ua.match(/AdobeAIR\/([^\s]*)/); + if (m) { + o.air = m[0]; // Adobe AIR 1.0 or better + } } } } @@ -3503,16 +3558,21 @@ YUI.Env.parseUA = function(subUA) { o.mobile = m[0]; // ex: Opera Mini/2.0.4509/1316 } } else { // not opera or webkit - m = ua.match(/MSIE\s([^;]*)/); - if (m && m[1]) { - o.ie = numberify(m[1]); + m = ua.match(/MSIE ([^;]*)|Trident.*; rv:([0-9.]+)/); + + if (m && (m[1] || m[2])) { + o.ie = numberify(m[1] || m[2]); } else { // not opera, webkit, or ie m = ua.match(/Gecko\/([^\s]*)/); + if (m) { o.gecko = 1; // Gecko detected, look for revision m = ua.match(/rv:([^\s\)]*)/); if (m && m[1]) { o.gecko = numberify(m[1]); + if (/Mobile|Tablet/.test(ua)) { + o.mobile = "ffos"; + } } } } @@ -3643,7 +3703,7 @@ YUI.Env.aliases = { }; -}, '3.9.1', { +}, '3.12.0', { "use": [ "yui-base", "get", @@ -4929,7 +4989,7 @@ Transaction.prototype = { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('features', function (Y, NAME) { var feature_tests = {}; @@ -5044,7 +5104,7 @@ Y.mix(Y.namespace('Features'), { // Y.Features.test("load", "1"); // caps=1:1;2:0;3:1; -/* This file is auto-generated by (yogi loader --yes --mix --start ../) */ +/* This file is auto-generated by (yogi.js loader --mix --yes) */ /*jshint maxlen:900, eqeqeq: false */ var add = Y.Features.add; // app-transitions-native @@ -5337,7 +5397,7 @@ add('load', '22', { "when": "after" }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('intl-base', function (Y, NAME) { /** @@ -5425,7 +5485,7 @@ Y.mix(Y.namespace('Intl'), { }); -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('yui-log', function (Y, NAME) { /** @@ -5441,9 +5501,9 @@ var INSTANCE = Y, LOGEVENT = 'yui:log', UNDEFINED = 'undefined', LEVELS = { debug: 1, - info: 1, - warn: 1, - error: 1 }; + info: 2, + warn: 4, + error: 8 }; /** * If the 'debug' config is true, a 'yui:log' event will be @@ -5465,7 +5525,7 @@ var INSTANCE = Y, * @return {YUI} YUI instance. */ INSTANCE.log = function(msg, cat, src, silent) { - var bail, excl, incl, m, f, + var bail, excl, incl, m, f, minlevel, Y = INSTANCE, c = Y.config, publisher = (Y.fire) ? Y : YUI.Env.globalEvents; @@ -5484,6 +5544,15 @@ INSTANCE.log = function(msg, cat, src, silent) { } else if (excl && (src in excl)) { bail = excl[src]; } + + // Determine the current minlevel as defined in configuration + Y.config.logLevel = Y.config.logLevel || 'debug'; + minlevel = LEVELS[Y.config.logLevel.toLowerCase()]; + + if (cat in LEVELS && LEVELS[cat] < minlevel) { + // Skip this message if the we don't meet the defined minlevel + bail = 1; + } } if (!bail) { if (c.useBrowserConsole) { @@ -5536,7 +5605,7 @@ INSTANCE.message = function() { }; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('yui-later', function (Y, NAME) { /** @@ -5614,7 +5683,7 @@ Y.Lang.later = Y.later; -}, '3.9.1', {"requires": ["yui-base"]}); +}, '3.12.0', {"requires": ["yui-base"]}); YUI.add('loader-base', function (Y, NAME) { /** @@ -5623,98 +5692,110 @@ YUI.add('loader-base', function (Y, NAME) { * @submodule loader-base */ -if (!YUI.Env[Y.version]) { - - (function() { - var VERSION = Y.version, - BUILD = '/build/', - ROOT = VERSION + BUILD, - CDN_BASE = Y.Env.base, - GALLERY_VERSION = 'gallery-2013.02.27-21-03', - TNT = '2in3', - TNT_VERSION = '4', - YUI2_VERSION = '2.9.0', - COMBO_BASE = CDN_BASE + 'combo?', - META = { version: VERSION, - root: ROOT, - base: Y.Env.base, - comboBase: COMBO_BASE, - skin: { defaultSkin: 'sam', - base: 'assets/skins/', - path: 'skin.css', - after: ['cssreset', - 'cssfonts', - 'cssgrids', - 'cssbase', - 'cssreset-context', - 'cssfonts-context']}, - groups: {}, - patterns: {} }, - groups = META.groups, - yui2Update = function(tnt, yui2, config) { - - var root = TNT + '.' + - (tnt || TNT_VERSION) + '/' + - (yui2 || YUI2_VERSION) + BUILD, - base = (config && config.base) ? config.base : CDN_BASE, - combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; - - groups.yui2.base = base + root; - groups.yui2.root = root; - groups.yui2.comboBase = combo; - }, - galleryUpdate = function(tag, config) { - var root = (tag || GALLERY_VERSION) + BUILD, - base = (config && config.base) ? config.base : CDN_BASE, - combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; - - groups.gallery.base = base + root; - groups.gallery.root = root; - groups.gallery.comboBase = combo; - }; - - - groups[VERSION] = {}; - - groups.gallery = { - ext: false, - combine: true, +(function() { + var VERSION = Y.version, + BUILD = '/build/', + ROOT = VERSION + '/', + CDN_BASE = Y.Env.base, + GALLERY_VERSION = 'gallery-2013.08.22-21-03', + TNT = '2in3', + TNT_VERSION = '4', + YUI2_VERSION = '2.9.0', + COMBO_BASE = CDN_BASE + 'combo?', + META = { + version: VERSION, + root: ROOT, + base: Y.Env.base, comboBase: COMBO_BASE, - update: galleryUpdate, - patterns: { 'gallery-': { }, - 'lang/gallery-': {}, - 'gallerycss-': { type: 'css' } } + skin: { + defaultSkin: 'sam', + base: 'assets/skins/', + path: 'skin.css', + after: [ + 'cssreset', + 'cssfonts', + 'cssgrids', + 'cssbase', + 'cssreset-context', + 'cssfonts-context' + ] + }, + groups: {}, + patterns: {} + }, + groups = META.groups, + yui2Update = function(tnt, yui2, config) { + var root = TNT + '.' + + (tnt || TNT_VERSION) + '/' + + (yui2 || YUI2_VERSION) + BUILD, + base = (config && config.base) ? config.base : CDN_BASE, + combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; + + groups.yui2.base = base + root; + groups.yui2.root = root; + groups.yui2.comboBase = combo; + }, + galleryUpdate = function(tag, config) { + var root = (tag || GALLERY_VERSION) + BUILD, + base = (config && config.base) ? config.base : CDN_BASE, + combo = (config && config.comboBase) ? config.comboBase : COMBO_BASE; + + groups.gallery.base = base + root; + groups.gallery.root = root; + groups.gallery.comboBase = combo; }; - groups.yui2 = { - combine: true, - ext: false, - comboBase: COMBO_BASE, - update: yui2Update, - patterns: { - 'yui2-': { - configFn: function(me) { - if (/-skin|reset|fonts|grids|base/.test(me.name)) { - me.type = 'css'; - me.path = me.path.replace(/\.js/, '.css'); - // this makes skins in builds earlier than - // 2.6.0 work as long as combine is false - me.path = me.path.replace(/\/yui2-skin/, - '/assets/skins/sam/yui2-skin'); - } + + groups[VERSION] = {}; + + groups.gallery = { + ext: false, + combine: true, + comboBase: COMBO_BASE, + update: galleryUpdate, + patterns: { + 'gallery-': {}, + 'lang/gallery-': {}, + 'gallerycss-': { + type: 'css' + } + } + }; + + groups.yui2 = { + combine: true, + ext: false, + comboBase: COMBO_BASE, + update: yui2Update, + patterns: { + 'yui2-': { + configFn: function(me) { + if (/-skin|reset|fonts|grids|base/.test(me.name)) { + me.type = 'css'; + me.path = me.path.replace(/\.js/, '.css'); + // this makes skins in builds earlier than + // 2.6.0 work as long as combine is false + me.path = me.path.replace(/\/yui2-skin/, + '/assets/skins/sam/yui2-skin'); } } } - }; + } + }; - galleryUpdate(); - yui2Update(); - - YUI.Env[VERSION] = META; - }()); -} + galleryUpdate(); + yui2Update(); + if (YUI.Env[VERSION]) { + Y.mix(META, YUI.Env[VERSION], false, [ + 'modules', + 'groups', + 'skin' + ], 0, true); + } + YUI.Env[VERSION] = META; +}()); /*jslint forin: true, maxlen: 350 */ /** @@ -6706,9 +6787,10 @@ Y.Loader.prototype = { * @param {Object} [config.submodules] Hash of submodules * @param {String} [config.group] The group the module belongs to -- this is set automatically when it is added as part of a group configuration. * @param {Array} [config.lang] Array of BCP 47 language tags of languages for which this module has localized resource bundles, e.g., `["en-GB", "zh-Hans-CN"]` - * @param {Object} [config.condition] Specifies that the module should be loaded automatically if a condition is met. This is an object with up to three fields: + * @param {Object} [config.condition] Specifies that the module should be loaded automatically if a condition is met. This is an object with up to four fields: * @param {String} [config.condition.trigger] The name of a module that can trigger the auto-load * @param {Function} [config.condition.test] A function that returns true when the module is to be loaded. + * @param {String} [config.condition.ua] The UA name of Y.UA object that returns true when the module is to be loaded. e.g., `"ie"`, `"nodejs"`. * @param {String} [config.condition.when] Specifies the load order of the conditional module * with regard to the position of the trigger module. * This should be one of three values: `before`, `after`, or `instead`. The default is `after`. @@ -8392,7 +8474,7 @@ Y.Loader.prototype = { -}, '3.9.1', {"requires": ["get", "features"]}); +}, '3.12.0', {"requires": ["get", "features"]}); YUI.add('loader-rollup', function (Y, NAME) { /** @@ -8491,10 +8573,10 @@ Y.Loader.prototype._rollup = function() { }; -}, '3.9.1', {"requires": ["loader-base"]}); +}, '3.12.0', {"requires": ["loader-base"]}); YUI.add('loader-yui3', function (Y, NAME) { -/* This file is auto-generated by (yogi loader --yes --mix --start ../) */ +/* This file is auto-generated by (yogi.js loader --mix --yes) */ /*jshint maxlen:900, eqeqeq: false */ @@ -8755,7 +8837,9 @@ Y.mix(YUI.Env[Y.version].modules, { ], "lang": [ "en", - "es" + "es", + "hu", + "it" ], "requires": [ "autocomplete-base", @@ -8977,20 +9061,6 @@ Y.mix(YUI.Env[Y.version].modules, { ] }, "calendar": { - "lang": [ - "de", - "en", - "es", - "es-AR", - "fr", - "it", - "ja", - "nb-NO", - "nl", - "pt-BR", - "ru", - "zh-HANT-TW" - ], "requires": [ "calendar-base", "calendarnavigator" @@ -9004,12 +9074,17 @@ Y.mix(YUI.Env[Y.version].modules, { "es", "es-AR", "fr", + "hu", "it", "ja", "nb-NO", "nl", "pt-BR", "ru", + "zh-Hans", + "zh-Hans-CN", + "zh-Hant", + "zh-Hant-HK", "zh-HANT-TW" ], "requires": [ @@ -9117,6 +9192,8 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "es", + "hu", + "it", "ja" ], "requires": [ @@ -9180,22 +9257,19 @@ Y.mix(YUI.Env[Y.version].modules, { }, "cssgrids": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "type": "css" }, "cssgrids-base": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "type": "css" }, "cssgrids-responsive": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "requires": [ "cssgrids", @@ -9205,8 +9279,7 @@ Y.mix(YUI.Env[Y.version].modules, { }, "cssgrids-units": { "optional": [ - "cssreset", - "cssfonts" + "cssnormalize" ], "requires": [ "cssgrids-base" @@ -9388,6 +9461,12 @@ Y.mix(YUI.Env[Y.version].modules, { "datasource-local" ] }, + "datatable-foot": { + "requires": [ + "datatable-core", + "view" + ] + }, "datatable-formatters": { "requires": [ "datatable-body", @@ -9407,7 +9486,9 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "fr", - "es" + "es", + "hu", + "it" ], "requires": [ "datatable-base" @@ -9419,6 +9500,24 @@ Y.mix(YUI.Env[Y.version].modules, { "datatable-base" ] }, + "datatable-paginator": { + "lang": [ + "en" + ], + "requires": [ + "model", + "view", + "paginator-core", + "datatable-foot", + "datatable-paginator-templates" + ], + "skinnable": true + }, + "datatable-paginator-templates": { + "requires": [ + "template" + ] + }, "datatable-scroll": { "requires": [ "datatable-base", @@ -9431,7 +9530,8 @@ Y.mix(YUI.Env[Y.version].modules, { "lang": [ "en", "fr", - "es" + "es", + "hu" ], "requires": [ "datatable-base" @@ -9507,6 +9607,7 @@ Y.mix(YUI.Env[Y.version].modules, { "fr-FR", "hi", "hi-IN", + "hu", "id", "id-ID", "it", @@ -9661,7 +9762,8 @@ Y.mix(YUI.Env[Y.version].modules, { "dial": { "lang": [ "en", - "es" + "es", + "hu" ], "requires": [ "widget", @@ -9707,7 +9809,8 @@ Y.mix(YUI.Env[Y.version].modules, { }, "dom-style": { "requires": [ - "dom-base" + "dom-base", + "color-base" ] }, "dom-style-ie": { @@ -10432,7 +10535,8 @@ Y.mix(YUI.Env[Y.version].modules, { "requires": [ "event-base", "node-core", - "dom-base" + "dom-base", + "dom-style" ] }, "node-core": { @@ -10512,11 +10616,12 @@ Y.mix(YUI.Env[Y.version].modules, { }, "node-scroll-info": { "requires": [ + "array-extras", "base-build", - "dom-screen", "event-resize", "node-pluginhost", - "plugin" + "plugin", + "selector" ] }, "node-style": { @@ -10541,6 +10646,21 @@ Y.mix(YUI.Env[Y.version].modules, { ], "skinnable": true }, + "paginator": { + "requires": [ + "paginator-core" + ] + }, + "paginator-core": { + "requires": [ + "base" + ] + }, + "paginator-url": { + "requires": [ + "paginator" + ] + }, "panel": { "requires": [ "widget", @@ -10608,11 +10728,6 @@ Y.mix(YUI.Env[Y.version].modules, { "pluginhost-base" ] }, - "profiler": { - "requires": [ - "yui-base" - ] - }, "promise": { "requires": [ "timers" @@ -11055,8 +11170,7 @@ Y.mix(YUI.Env[Y.version].modules, { "tabview-base": { "requires": [ "node-event-delegate", - "classnamemanager", - "skin-sam-tabview" + "classnamemanager" ] }, "tabview-plugin": { @@ -11182,6 +11296,11 @@ Y.mix(YUI.Env[Y.version].modules, { "tree" ] }, + "tree-sortable": { + "requires": [ + "tree" + ] + }, "uploader": { "requires": [ "uploader-html5", @@ -11404,11 +11523,11 @@ Y.mix(YUI.Env[Y.version].modules, { ] } }); -YUI.Env[Y.version].md5 = '660f328e92276f36e9abfafb02169183'; +YUI.Env[Y.version].md5 = 'fd7c67956df50e445f40d1668dd1dc80'; -}, '3.9.1', {"requires": ["loader-base"]}); -YUI.add('yui', function (Y, NAME) {}, '3.9.1', { +}, '3.12.0', {"requires": ["loader-base"]}); +YUI.add('yui', function (Y, NAME) {}, '3.12.0', { "use": [ "yui-base", "get", diff --git a/lib/yuilib/3.9.1/build/anim-node-plugin/anim-node-plugin-min.js b/lib/yuilib/3.9.1/build/anim-node-plugin/anim-node-plugin-min.js deleted file mode 100644 index 367a6180958..00000000000 --- a/lib/yuilib/3.9.1/build/anim-node-plugin/anim-node-plugin-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("anim-node-plugin",function(e,t){var n=function(t){t=t?e.merge(t):{},t.node=t.host,n.superclass.constructor.apply(this,arguments)};n.NAME="nodefx",n.NS="fx",e.extend(n,e.Anim),e.namespace("Plugin"),e.Plugin.NodeFX=n},"3.9.1",{requires:["node-pluginhost","anim-base"]}); diff --git a/lib/yuilib/3.9.1/build/anim-xy/anim-xy-min.js b/lib/yuilib/3.9.1/build/anim-xy/anim-xy-min.js deleted file mode 100644 index 7b1e6d93390..00000000000 --- a/lib/yuilib/3.9.1/build/anim-xy/anim-xy-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("anim-xy",function(e,t){var n=Number;e.Anim.behaviors.xy={set:function(e,t,r,i,s,o,u){e._node.setXY([u(s,n(r[0]),n(i[0])-n(r[0]),o),u(s,n(r[1]),n(i[1])-n(r[1]),o)])},get:function(e){return e._node.getXY()}}},"3.9.1",{requires:["anim-base","node-screen"]}); diff --git a/lib/yuilib/3.9.1/build/array-invoke/array-invoke-min.js b/lib/yuilib/3.9.1/build/array-invoke/array-invoke-min.js deleted file mode 100644 index 1a657383d06..00000000000 --- a/lib/yuilib/3.9.1/build/array-invoke/array-invoke-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("array-invoke",function(e,t){e.Array.invoke=function(t,n){var r=e.Array(arguments,2,!0),i=e.Lang.isFunction,s=[];return e.Array.each(e.Array(t),function(e,t){e&&i(e[n])&&(s[t]=e[n].apply(e,r))}),s}},"3.9.1",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/arraylist-filter/arraylist-filter-min.js b/lib/yuilib/3.9.1/build/arraylist-filter/arraylist-filter-min.js deleted file mode 100644 index 19e2195f938..00000000000 --- a/lib/yuilib/3.9.1/build/arraylist-filter/arraylist-filter-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("arraylist-filter",function(e,t){e.mix(e.ArrayList.prototype,{filter:function(t){var n=[];return e.Array.each(this._items,function(e,r){e=this.item(r),t(e)&&n.push(e)},this),new this.constructor(n)}})},"3.9.1",{requires:["arraylist"]}); diff --git a/lib/yuilib/3.9.1/build/arraysort/arraysort-debug.js b/lib/yuilib/3.9.1/build/arraysort/arraysort-debug.js deleted file mode 100644 index a47ec2379f8..00000000000 --- a/lib/yuilib/3.9.1/build/arraysort/arraysort-debug.js +++ /dev/null @@ -1,66 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add('arraysort', function (Y, NAME) { - -/** -Provides a case-insenstive comparator which can be used for array sorting. - -@module arraysort -*/ - -var LANG = Y.Lang, - ISVALUE = LANG.isValue, - ISSTRING = LANG.isString; - -/** -Provides a case-insenstive comparator which can be used for array sorting. - -@class ArraySort -*/ - -Y.ArraySort = { - - /** - Comparator function for simple case-insensitive sorting of an array of - strings. - - @method compare - @param a {Object} First sort argument. - @param b {Object} Second sort argument. - @param desc {Boolean} `true` if sort direction is descending, `false` if - sort direction is ascending. - @return {Boolean} -1 when a < b. 0 when a == b. 1 when a > b. - */ - compare: function(a, b, desc) { - if(!ISVALUE(a)) { - if(!ISVALUE(b)) { - return 0; - } - else { - return 1; - } - } - else if(!ISVALUE(b)) { - return -1; - } - - if(ISSTRING(a)) { - a = a.toLowerCase(); - } - if(ISSTRING(b)) { - b = b.toLowerCase(); - } - if(a < b) { - return (desc) ? 1 : -1; - } - else if (a > b) { - return (desc) ? -1 : 1; - } - else { - return 0; - } - } - -}; - - -}, '3.9.1', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/arraysort/arraysort-min.js b/lib/yuilib/3.9.1/build/arraysort/arraysort-min.js deleted file mode 100644 index 6e31be8b5ec..00000000000 --- a/lib/yuilib/3.9.1/build/arraysort/arraysort-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("arraysort",function(e,t){var n=e.Lang,r=n.isValue,i=n.isString;e.ArraySort={compare:function(e,t,n){return r(e)?r(t)?(i(e)&&(e=e.toLowerCase()),i(t)&&(t=t.toLowerCase()),et?n?-1:1:0):-1:r(t)?1:0}}},"3.9.1",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/arraysort/arraysort.js b/lib/yuilib/3.9.1/build/arraysort/arraysort.js deleted file mode 100644 index a47ec2379f8..00000000000 --- a/lib/yuilib/3.9.1/build/arraysort/arraysort.js +++ /dev/null @@ -1,66 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add('arraysort', function (Y, NAME) { - -/** -Provides a case-insenstive comparator which can be used for array sorting. - -@module arraysort -*/ - -var LANG = Y.Lang, - ISVALUE = LANG.isValue, - ISSTRING = LANG.isString; - -/** -Provides a case-insenstive comparator which can be used for array sorting. - -@class ArraySort -*/ - -Y.ArraySort = { - - /** - Comparator function for simple case-insensitive sorting of an array of - strings. - - @method compare - @param a {Object} First sort argument. - @param b {Object} Second sort argument. - @param desc {Boolean} `true` if sort direction is descending, `false` if - sort direction is ascending. - @return {Boolean} -1 when a < b. 0 when a == b. 1 when a > b. - */ - compare: function(a, b, desc) { - if(!ISVALUE(a)) { - if(!ISVALUE(b)) { - return 0; - } - else { - return 1; - } - } - else if(!ISVALUE(b)) { - return -1; - } - - if(ISSTRING(a)) { - a = a.toLowerCase(); - } - if(ISSTRING(b)) { - b = b.toLowerCase(); - } - if(a < b) { - return (desc) ? 1 : -1; - } - else if (a > b) { - return (desc) ? -1 : 1; - } - else { - return 0; - } - } - -}; - - -}, '3.9.1', {"requires": ["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-base-deprecated.css b/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-base-deprecated.css deleted file mode 100644 index b6a21e68bcb..00000000000 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-base-deprecated.css +++ /dev/null @@ -1,3 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-skin-sam .yui3-datatable-mask{position:absolute;z-index:9500}.yui3-datatable-tmp{position:absolute;left:-9000px}.yui3-datatable-scrollable .yui3-datatable-bd{overflow:auto}.yui3-datatable-scrollable .yui3-datatable-hd{overflow:hidden;position:relative}.yui3-datatable-scrollable .yui3-datatable-bd thead tr,.yui3-datatable-scrollable .yui3-datatable-bd thead th{position:absolute;left:-1500px}.yui3-datatable-scrollable tbody{-moz-outline:0}.yui3-skin-sam thead .yui3-datatable-sortable{cursor:pointer}.yui3-skin-sam thead .yui3-datatable-draggable{cursor:move}.yui3-datatable-coltarget{position:absolute;z-index:999}.yui3-datatable-hd{zoom:1}th.yui3-datatable-resizeable .yui3-datatable-resizerliner{position:relative}.yui3-datatable-resizer{position:absolute;right:0;bottom:0;height:100%;cursor:e-resize;cursor:col-resize;background-color:#CCC;opacity:0;filter:alpha(opacity=0)}.yui3-datatable-resizerproxy{visibility:hidden;position:absolute;z-index:9000;background-color:#CCC;opacity:0;filter:alpha(opacity=0)}th.yui3-datatable-hidden .yui3-datatable-liner,td.yui3-datatable-hidden .yui3-datatable-liner,th.yui3-datatable-hidden .yui3-datatable-resizer{display:none}.yui3-datatable-editor,.yui3-datatable-editor-shim{position:absolute;z-index:9000}.yui3-skin-sam .yui3-datatable table{margin:0;padding:0;font-family:arial;font-size:inherit;border-collapse:separate;*border-collapse:collapse;border-spacing:0;border:1px solid #7f7f7f}.yui3-skin-sam .yui3-datatable thead{border-spacing:0}.yui3-skin-sam .yui3-datatable caption{color:#000;font-size:85%;font-weight:normal;font-style:italic;line-height:1;padding:1em 0;text-align:center}.yui3-skin-sam .yui3-datatable th{background:#d8d8da url(sprite.png) repeat-x 0 0}.yui3-skin-sam .yui3-datatable th,.yui3-skin-sam .yui3-datatable th a{font-weight:normal;text-decoration:none;color:#000;vertical-align:bottom}.yui3-skin-sam .yui3-datatable th{margin:0;padding:0;border:0;border-right:1px solid #cbcbcb}.yui3-skin-sam .yui3-datatable tr.yui3-datatable-first td{border-top:1px solid #7f7f7f}.yui3-skin-sam .yui3-datatable th .yui3-datatable-liner{white-space:nowrap}.yui3-skin-sam .yui3-datatable-liner{margin:0;padding:0;padding:4px 10px 4px 10px;overflow:visible;border:0 solid black}.yui3-skin-sam .yui3-datatable-coltarget{width:5px;background-color:red}.yui3-skin-sam .yui3-datatable td{margin:0;padding:0;border:0;border-right:1px solid #cbcbcb;text-align:left}.yui3-skin-sam .yui3-datatable-list td{border-right:0}.yui3-skin-sam .yui3-datatable-resizer{width:6px}.yui3-skin-sam .yui3-datatable-mask{background-color:#000;opacity:.25;filter:alpha(opacity=25)}.yui3-skin-sam .yui3-datatable-message{background-color:#FFF}.yui3-skin-sam .yui3-datatable-scrollable table{border:0}.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-hd{border-left:1px solid #7f7f7f;border-top:1px solid #7f7f7f;border-right:1px solid #7f7f7f}.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-bd{border-left:1px solid #7f7f7f;border-bottom:1px solid #7f7f7f;border-right:1px solid #7f7f7f;background-color:#FFF}.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-data tr.yui3-datatable-last td{border-bottom:1px solid #7f7f7f}.yui3-skin-sam th.yui3-datatable-asc,.yui3-skin-sam th.yui3-datatable-desc{background:url(sprite.png) repeat-x 0 -100px}.yui3-skin-sam th.yui3-datatable-sortable .yui3-datatable-liner{padding-right:20px}.yui3-skin-sam th.yui3-datatable-asc .yui3-datatable-liner{background:url(dt-arrow-up.png) no-repeat right}.yui3-skin-sam th.yui3-datatable-desc .yui3-datatable-liner{background:url(dt-arrow-dn.png) no-repeat right}tbody .yui3-datatable-editable{cursor:pointer}.yui3-datatable-editor{text-align:left;background-color:#f2f2f2;border:1px solid #808080;padding:6px}.yui3-datatable-editor label{padding-left:4px;padding-right:6px}.yui3-datatable-editor .yui3-datatable-button{padding-top:6px;text-align:right}.yui3-datatable-editor .yui3-datatable-button button{background:url(sprite.png) repeat-x 0 0;border:1px solid #999;width:4em;height:1.8em;margin-left:6px}.yui3-datatable-editor .yui3-datatable-button button.yui3-datatable-default{background:url(sprite.png) repeat-x 0 -1400px;background-color:#5584e0;border:1px solid #304369;color:#FFF}.yui3-datatable-editor .yui3-datatable-button button:hover{background:url(sprite.png) repeat-x 0 -1300px;color:#000}.yui3-datatable-editor .yui3-datatable-button button:active{background:url(sprite.png) repeat-x 0 -1700px;color:#000}.yui3-skin-sam .yui3-datatable td{background-color:transparent}.yui3-skin-sam tr.yui3-datatable-even td{background-color:#FFF}.yui3-skin-sam tr.yui3-datatable-odd td{background-color:#edf5ff}.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-desc{background-color:#edf5ff}.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-desc{background-color:#dbeaff}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even{background-color:#FFF}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd{background-color:#FFF}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-desc{background-color:#edf5ff}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-desc{background-color:#edf5ff}.yui3-skin-sam th.yui3-datatable-highlighted,.yui3-skin-sam th.yui3-datatable-highlighted a{background-color:#b2d2ff}.yui3-skin-sam tr.yui3-datatable-highlighted,.yui3-skin-sam tr.yui3-datatable-highlighted td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-highlighted td.yui3-datatable-desc,.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-highlighted,.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-highlighted{cursor:pointer;background-color:#b2d2ff} -.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-highlighted,.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-highlighted a{background-color:#b2d2ff}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-desc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-highlighted,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-highlighted{cursor:pointer;background-color:#b2d2ff}.yui3-skin-sam th.yui3-datatable-selected,.yui3-skin-sam th.yui3-datatable-selected a{background-color:#446cd7}.yui3-skin-sam tr.yui3-datatable-selected td,.yui3-skin-sam tr.yui3-datatable-selected td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-selected td.yui3-datatable-desc{background-color:#426fd9;color:#FFF}.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-selected,.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-selected{background-color:#446cd7;color:#FFF}.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-selected,.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-selected a{background-color:#446cd7}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-desc{background-color:#426fd9;color:#FFF}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-selected,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-selected{background-color:#446cd7;color:#FFF}.yui3-skin-sam .yui3-datatable-paginator{display:block;margin:6px 0;white-space:nowrap}.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-first,.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-last,.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-selected{padding:2px 6px}.yui3-skin-sam .yui3-datatable-paginator a.yui3-datatable-first,.yui3-skin-sam .yui3-datatable-paginator a.yui3-datatable-last{text-decoration:none}.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-previous,.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-next{display:none}.yui3-skin-sam a.yui3-datatable-page{border:1px solid #cbcbcb;padding:2px 6px;text-decoration:none;background-color:#fff}.yui3-skin-sam .yui3-datatable-selected{border:1px solid #fff;background-color:#fff}#yui3-css-stamp.skin-sam-datatable-base-deprecated{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-base.css b/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-base.css deleted file mode 100644 index b830747aa99..00000000000 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-base.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-datatable-table{empty-cells:show}.yui3-skin-sam .yui3-datatable-table{margin:0;padding:0;font-family:arial,sans-serif;border-collapse:separate;border-spacing:0;border:1px solid #cbcbcb}.yui3-skin-sam .yui3-datatable-caption{color:#000;font:italic 85%/1 arial,sans-serif;padding:1em 0;text-align:center}.yui3-skin-sam .yui3-datatable-cell,.yui3-skin-sam .yui3-datatable-header{border-left:1px solid #cbcbcb;border-width:0 0 0 1px;font-size:inherit;margin:0;overflow:visible;padding:4px 10px 4px 10px}.yui3-skin-sam .yui3-datatable-cell:first-child,.yui3-skin-sam .yui3-datatable-first-header{border-left-width:0}.yui3-skin-sam .yui3-datatable-header{background:#fff url(sprite.png) repeat-x 0 0;background-image:-webkit-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:-moz-linear-gradient(top,transparent 40%,rgba(0,0,0,0.21));background-image:-ms-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:-o-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:linear-gradient(transparent 40%,rgba(0,0,0,0.21));color:#000;font-weight:normal;text-align:left;text-shadow:0 1px 1px #fff;vertical-align:bottom;white-space:nowrap}.yui3-skin-sam .yui3-datatable-cell{background-color:transparent}.yui3-skin-sam .yui3-datatable-even .yui3-datatable-cell{background-color:#fff}.yui3-skin-sam .yui3-datatable-odd .yui3-datatable-cell{background-color:#edf5ff}#yui3-css-stamp.skin-sam-datatable-base{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-sort.css b/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-sort.css deleted file mode 100644 index cc85fa79cf7..00000000000 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/datatable-sort.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-datatable-sortable-column{z-index:1}.yui3-datatable-sortable-column:focus,.yui3-datatable-sortable-column:active{z-index:2}.yui3-datatable-sort-liner{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.yui3-skin-sam .yui3-datatable-sortable-column{cursor:pointer}.yui3-skin-sam .yui3-datatable-columns .yui3-datatable-sorted,.yui3-skin-sam .yui3-datatable-sortable-column:hover{*background:#c1c4c8 url(sprite.png) repeat-x 0 -100px;background-color:#f1f2f3}.yui3-skin-sam .yui3-datatable-sort-liner{display:block;height:100%;position:relative;padding-right:15px;position:relative}.yui3-skin-sam .yui3-datatable-sort-indicator{position:absolute;right:0;bottom:.5ex;width:7px;height:10px;background:url(sort-arrow-sprite.png) no-repeat 0 0;_background:url(sort-arrow-sprite-ie.png) no-repeat 0 0;overflow:hidden}.yui3-skin-sam .yui3-datatable-sorted .yui3-datatable-sort-indicator{background-position:0 -10px}.yui3-skin-sam .yui3-datatable-sorted-desc .yui3-datatable-sort-indicator{background-position:0 -20px}.yui3-skin-sam .yui3-datatable-data .yui3-datatable-even .yui3-datatable-sorted{background-color:#edf5ff}.yui3-skin-sam .yui3-datatable-data .yui3-datatable-odd .yui3-datatable-sorted{background-color:#dbeaff}#yui3-css-stamp.skin-sam-datatable-sort{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/dt-arrow-dn.png b/lib/yuilib/3.9.1/build/assets/skins/sam/dt-arrow-dn.png deleted file mode 100644 index 9c42b83318d2e2cf2b9210564a65f46b0e722ccd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 101 zcmeAS@N?(olHy`uVBq!ia0vp@K+M9y1|&nDY~2E+bUa-gLnNjqcl7l9IDgsko|&iJ_1J&* w#1z9E30G$33EYQTOp-Db+?2z3TTGZ3!WgRm?u^q}4%Efq>FVdQ&MBb@0G4GM%K!iX diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/node-flick.css b/lib/yuilib/3.9.1/build/assets/skins/sam/node-flick.css deleted file mode 100644 index 566f526c713..00000000000 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/node-flick.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-flick{position:relative;overflow:hidden}.yui3-flick-content{position:relative}#yui3-css-stamp.skin-sam-node-flick{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/node-menunav.css b/lib/yuilib/3.9.1/build/assets/skins/sam/node-menunav.css deleted file mode 100644 index 0e2a683ccb9..00000000000 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/node-menunav.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-menu .yui3-menu{position:absolute;z-index:1}.yui3-menu .yui3-shim{position:absolute;top:0;left:0;z-index:-1;opacity:0;filter:alpha(opacity=0);border:0;margin:0;padding:0;height:100%;width:100%}.yui3-menu-hidden{top:-10000px;left:-10000px;visibility:hidden}.yui3-menu li{list-style-type:none}.yui3-menu ul,.yui3-menu li{margin:0;padding:0}.yui3-menu-label,.yui3-menuitem-content{text-align:left;white-space:nowrap;display:block}.yui3-menu-horizontal li{float:left;width:auto}.yui3-menu-horizontal li li{float:none}.yui3-menu-horizontal ul{*zoom:1}.yui3-menu-horizontal ul ul{*zoom:normal}.yui3-menu-horizontal>.yui3-menu-content>ul:after{content:"";display:block;clear:both;line-height:0;font-size:0;visibility:hidden}.yui3-menu-content{*zoom:1}.yui3-menu-hidden .yui3-menu-content{*zoom:normal}.yui3-menuitem-content,.yui3-menu-label{_zoom:1}.yui3-menu-hidden .yui3-menuitem-content,.yui3-menu-hidden .yui3-menu-label{_zoom:normal}.yui3-skin-sam .yui3-menu-content,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-content{font-size:93%;line-height:1.5;*line-height:1.45;border:solid 1px #808080;background:#fff;padding:3px 0}.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-content{font-size:100%}.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-content{line-height:2;*line-height:1.9;background:url(sprite.png) repeat-x 0 0;padding:0}.yui3-skin-sam .yui3-menu ul,.yui3-skin-sam .yui3-menu ul ul{margin-top:3px;padding-top:3px;border-top:solid 1px #ccc}.yui3-skin-sam .yui3-menu ul.first-of-type{border:0;margin:0;padding:0}.yui3-skin-sam .yui3-menu-horizontal ul{padding:0;margin:0;border:0}.yui3-skin-sam .yui3-menu li,.yui3-skin-sam .yui3-menu .yui3-menu li{_border-bottom:solid 1px #fff}.yui3-skin-sam .yui3-menu-horizontal li{_border-bottom:0}.yui3-skin-sam .yui3-menubuttonnav li{border-right:solid 1px #ccc}.yui3-skin-sam .yui3-splitbuttonnav li{border-right:solid 1px #808080}.yui3-skin-sam .yui3-menubuttonnav li li,.yui3-skin-sam .yui3-splitbuttonnav li li{border-right:0}.yui3-skin-sam .yui3-menu-label,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label,.yui3-skin-sam .yui3-menuitem-content,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menuitem-content{padding:0 1em;color:#000;text-decoration:none;cursor:default;float:none;border:0;margin:0}.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label,.yui3-skin-sam .yui3-menu-horizontal .yui3-menuitem-content{padding:0 10px;border-style:solid;border-color:#808080;border-width:1px 0;margin:-1px 0;float:left;width:auto}.yui3-skin-sam .yui3-menu-label,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label{background:url(vertical-menu-submenu-indicator.png) right center no-repeat}.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label{background:url(sprite.png) repeat-x 0 0}.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label,.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label{background-image:none}.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label{padding-right:0}.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label em{font-style:normal;padding-right:20px;display:block;background:url(horizontal-menu-submenu-indicator.png) right center no-repeat}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label{padding:0}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label a{float:left;width:auto;color:#000;text-decoration:none;cursor:default;padding:0 5px 0 10px}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label .yui3-menu-toggle{padding:0;border-left:solid 1px #ccc;width:15px;overflow:hidden;text-indent:-1000px;background:url(horizontal-menu-submenu-indicator.png) 3px center no-repeat}.yui3-skin-sam .yui3-menu-label-active,.yui3-skin-sam .yui3-menu-label-menuvisible,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label-active,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label-menuvisible{background-color:#b3d4ff}.yui3-skin-sam .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menuitem-active .yui3-menuitem-content{background-image:none;background-color:#b3d4ff;border-left-width:0;margin-left:0}.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label-active,.yui3-skin-sam .yui3-menu-horizontal .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label-menuvisible{border-color:#7d98b8;background:url(sprite.png) repeat-x 0 -1700px}.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label-active,.yui3-skin-sam .yui3-menubuttonnav .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label-menuvisible,.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-active,.yui3-skin-sam .yui3-splitbuttonnav .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-menuvisible{border-left-width:1px;margin-left:-1px}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-menuvisible{border-color:#808080;background:transparent}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-menuvisible .yui3-menu-toggle{border-color:#7d98b8;background:url(horizontal-menu-submenu-toggle.png) left center no-repeat}#yui3-css-stamp.skin-sam-node-menunav{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/skin.css b/lib/yuilib/3.9.1/build/assets/skins/sam/skin.css deleted file mode 100644 index a55250464e9..00000000000 --- a/lib/yuilib/3.9.1/build/assets/skins/sam/skin.css +++ /dev/null @@ -1,29 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-aclist{position:absolute;z-index:1}.yui3-aclist-hidden{visibility:hidden}.yui3-aclist-aria{left:-9999px;position:absolute}.yui3-aclist-list{list-style:none;margin:0;overflow:hidden;padding:0}.yui3-aclist-item{cursor:pointer;list-style:none;padding:2px 5px}.yui3-aclist-item-active{outline:#afafaf dotted thin}.yui3-skin-sam .yui3-aclist-content{background:#fff;border:1px solid #afafaf;-moz-box-shadow:1px 1px 4px rgba(0,0,0,0.58);-webkit-box-shadow:1px 1px 4px rgba(0,0,0,0.58);box-shadow:1px 1px 4px rgba(0,0,0,0.58)}.yui3-skin-sam .yui3-aclist-item-hover{background:#bfdaff}.yui3-skin-sam .yui3-aclist-item-active{background:#2647a0;color:#fff;outline:0}#yui3-css-stamp.skin-sam-autocomplete-list{display:none} -.yui3-calendar-pane{width:100%}.yui3-calendar-grid{width:100%}.yui3-calendar-column-hidden,.yui3-calendar-hidden{display:none}.yui3-skin-sam .yui3-calendar-content{padding:10px;color:#000;border:1px solid gray;background:#f2f2f2;background:-moz-linear-gradient(top,#f9f9f9 0,#f2f2f2 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#f9f9f9),color-stop(100%,#f2f2f2));background:-webkit-linear-gradient(top,#f9f9f9 0,#f2f2f2 100%);background:-o-linear-gradient(top,#f9f9f9 0,#f2f2f2 100%);background:-ms-linear-gradient(top,#f9f9f9 0,#f2f2f2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f9f9f9',endColorstr='#f2f2f2',GradientType=0);background:linear-gradient(top,#f9f9f9 0,#f2f2f2 100%);-moz-border-radius:5px;border-radius:5px}.yui3-skin-sam .yui3-calendar-grid{padding:5px;border-collapse:collapse}.yui3-skin-sam .yui3-calendar-header{padding-bottom:10px}.yui3-skin-sam .yui3-calendar-header-label{margin:0;font-size:1em;font-weight:bold}.yui3-skin-sam .yui3-calendar-day,.yui3-skin-sam .yui3-calendar-prevmonth-day,.yui3-skin-sam .yui3-calendar-nextmonth-day{padding:5px;border:1px solid #ccc;background:#fff;text-align:center}.yui3-skin-sam .yui3-calendar-day:hover{background:#06c;color:#fff}.yui3-skin-sam .yui3-calendar-selection-disabled,.yui3-skin-sam .yui3-calendar-selection-disabled:hover{color:#a6a6a6;background:#ccc}.yui3-skin-sam .yui3-calendar-weekday{font-weight:bold}.yui3-skin-sam .yui3-calendar-prevmonth-day,.yui3-skin-sam .yui3-calendar-nextmonth-day{color:#a6a6a6}.yui3-skin-sam .yui3-calendar-day{font-weight:bold}.yui3-skin-sam .yui3-calendar-day-selected{background-color:#b3d4ff;color:#000}.yui3-skin-sam .yui3-calendar-header-label{text-align:center}.yui3-skin-sam .yui3-calendar-left-grid{margin-right:1em}.yui3-skin-sam .yui3-calendar-right-grid{margin-left:1em}.yui3-skin-sam .yui3-calendar-day-highlighted{background-color:#dcdef5}.yui3-skin-sam .yui3-calendar-day-selected.yui3-calendar-day-highlighted{background-color:#758fbb}#yui3-css-stamp.skin-sam-calendar-base{display:none} -.yui3-calendar-column-hidden,.yui3-calendar-hidden{display:none}.yui3-calendar-day{cursor:pointer}.yui3-calendar-selection-disabled{cursor:default}.yui3-calendar-prevmonth-day{cursor:default}.yui3-calendar-nextmonth-day{cursor:default}.yui3-calendar-content:hover .yui3-calendar-day,.yui3-calendar-content:hover .yui3-calendar-prevmonth-day,.yui3-calendar-content:hover .yui3-calendar-nextmonth-day{-moz-user-select:none}.yui3-skin-sam .yui3-calendar-day-highlighted{background-color:#dcdef5}.yui3-skin-sam .yui3-calendar-day-selected.yui3-calendar-day-highlighted{background-color:#758fbb}#yui3-css-stamp.skin-sam-calendar{display:none} -.yui3-calendar-header{padding-left:15px;padding-right:15px}.yui3-calendar-header-label{width:100%}.yui3-calendarnav-prevmonth{cursor:pointer}.yui3-calendarnav-nextmonth{cursor:pointer}.yui3-skin-sam .yui3-calendarnav-prevmonth,.yui3-skin-sam .yui3-calendarnav-nextmonth{color:#000;width:12px;height:14px;background:transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAOCAYAAAA1+Nx+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAKNJREFUeNpiYCAeSAPxUiiWZqAi4ATiaiD+DMT/ofgzVIyTUsMDgfghksHo+CFUDcnAAIgP4DEYHR+A6iEIhIB4GgkGo+NpUDMwADMQFwHxBwoMh+EPULOYYYZ7APFVKhiMjkFmejBBLWFjoD5gQ+dQO4iwOloUiOdQYPgcqBkDl0zRQRQRGS2KGkVFHRB/QzL4G1SMk5qpQg6psJMjVhNAgAEAH+qPqeiPEUsAAAAASUVORK5CYII=);background-repeat:no-repeat}.yui3-skin-sam .yui3-calendarnav-prevmonth:hover,.yui3-skin-sam .yui3-calendarnav-nextmonth:hover{background:transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAOCAYAAAA1+Nx+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAPpJREFUeNpi/P//PwMxQD9jszSQ6oJyyy7O8H1KjD5GQhYADeYEUkVAXAHEPFDhL0DcAcR9QIu+k20B0PBAIDUBiOVwKHkExAVAS9aTZAHQYAOowfYMxIGDUIsu4LUAaLAQkGoB4kwG8sB0IK4BWvQOxQKgwcxAdj4Q1wExPwNl4CMQNwHxRKBFfxn10jd5ADm9QKzFQF1wDYiLmaAcNgbqA7CZTEBv7ADS2iDboN5joEIQgczSBpmNHsmiQKodiJPJNHwuEFcCDX49MMkUi0VRUB/hy2ggFy+jtKgohRYVnFDh79CiopuiogLNIjmobxigrn5EjD6AAAMAok9vhfHG8wQAAAAASUVORK5CYII=);color:#06c}.yui3-skin-sam .yui3-calendarnav-month-disabled,.yui3-skin-sam .yui3-calendarnav-month-disabled:hover{background:transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAOCAYAAAA1+Nx+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAQhJREFUeNqs0yGLAlEUhuHrKoIgCFbBJghb3F+g0WrVarEqLIhBEEFYWKNNMBktU4z6C5RNkwyCyWQSTPuOfCOCrHNnxwMPyOGe73DAiTmOYywrhy/9/sTBZujN4k0KPbioi6teKuqCmsKGSN/10+q5ehN6QQkrLJB/Mp/Xm5VmAhdkMcEGZWNfZc1MlPGwII42dmiZ/1dLGW1lXhdU8YNvZEz0yijLy6z6FyTN6yvpX7DEOzo4vSD4pCwvc+lfcMEYBUwjhE+VMVbmw7/oiCY+sA4RvNZMUxmB38EWFTSwfxK815uKZkJ/yXMU0cf5rn9Wr6g3f1bC4nwvbIAZRup1Ay671a8AAwC3OzOqxK+rkwAAAABJRU5ErkJggg==);cursor:default;color:#ccc}.yui3-skin-sam .yui3-calendarnav-prevmonth,.yui3-skin-sam .yui3-calendarnav-prevmonth:hover{background-position:0 0;margin-left:-12px}.yui3-skin-sam .yui3-calendarnav-nextmonth,.yui3-skin-sam .yui3-calendarnav-nextmonth:hover{background-position:-12px 0;margin-right:-12px}.yui3-skin-sam .yui3-calendarnav-prevmonth span,.yui3-skin-sam .yui3-calendarnav-nextmonth span{display:none;*display:block}#yui3-css-stamp.skin-sam-calendarnavigator{display:none} -.yui3-skin-sam .yui3-console-ft .yui3-console-filters-categories,.yui3-skin-sam .yui3-console-ft .yui3-console-filters-sources{text-align:left;padding:5px 0;border:1px inset;margin:0 2px}.yui3-skin-sam .yui3-console-ft .yui3-console-filters-categories{background:#fff;border-bottom:2px ridge}.yui3-skin-sam .yui3-console-ft .yui3-console-filters-sources{background:#fff;margin-bottom:2px;border-top:0 none;border-bottom-right-radius:10px;border-bottom-left-radius:10px;-moz-border-radius-bottomright:10px;-moz-border-radius-bottomleft:10px;-webkit-border-bottom-right-radius:10px;-webkit-border-bottom-left-radius:10px}.yui3-skin-sam .yui3-console-filter-label{white-space:nowrap;margin-left:1ex}#yui3-css-stamp.skin-sam-console-filters{display:none} -.yui3-skin-sam .yui3-console-separate{position:absolute;right:1em;top:1em;z-index:999}.yui3-skin-sam .yui3-console-inline{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:top}.yui3-skin-sam .yui3-console-inline .yui3-console-content{position:relative}.yui3-skin-sam .yui3-console-content{background:#777;_background:#d8d8da url(bg.png) repeat-x 0 0;font:normal 13px/1.3 Arial,sans-serif;text-align:left;border:1px solid #777;border-radius:10px;-moz-border-radius:10px;-webkit-border-radius:10px}.yui3-skin-sam .yui3-console-hd,.yui3-skin-sam .yui3-console-bd,.yui3-skin-sam .yui3-console-ft{position:relative}.yui3-skin-sam .yui3-console-hd,.yui3-skin-sam .yui3-console-ft .yui3-console-controls{text-align:right}.yui3-skin-sam .yui3-console-hd{background:#d8d8da url(bg.png) repeat-x 0 0;padding:1ex;border:1px solid transparent;_border:0 none;border-top-right-radius:10px;border-top-left-radius:10px;-moz-border-radius-topright:10px;-moz-border-radius-topleft:10px;-webkit-border-top-right-radius:10px;-webkit-border-top-left-radius:10px}.yui3-skin-sam .yui3-console-bd{background:#fff;border-top:1px solid #777;border-bottom:1px solid #777;color:#000;font-size:11px;overflow:auto;overflow-x:auto;overflow-y:scroll;_width:100%}.yui3-skin-sam .yui3-console-ft{background:#d8d8da url(bg.png) repeat-x 0 0;border:1px solid transparent;_border:0 none;border-bottom-right-radius:10px;border-bottom-left-radius:10px;-moz-border-radius-bottomright:10px;-moz-border-radius-bottomleft:10px;-webkit-border-bottom-right-radius:10px;-webkit-border-bottom-left-radius:10px}.yui3-skin-sam .yui3-console-controls{padding:4px 1ex;zoom:1}.yui3-skin-sam .yui3-console-title{color:#000;display:inline;float:left;font-weight:bold;font-size:13px;height:24px;line-height:24px;margin:0;padding-left:1ex}.yui3-skin-sam .yui3-console-pause-label{float:left}.yui3-skin-sam .yui3-console-button{line-height:1.3}.yui3-skin-sam .yui3-console-collapsed .yui3-console-bd,.yui3-skin-sam .yui3-console-collapsed .yui3-console-ft{display:none}.yui3-skin-sam .yui3-console-content.yui3-console-collapsed{-webkit-border-radius:0}.yui3-skin-sam .yui3-console-collapsed .yui3-console-hd{border-radius:10px;-moz-border-radius:10px;-webkit-border-radius:0}.yui3-skin-sam .yui3-console-entry{border-bottom:1px solid #aaa;min-height:32px;_height:32px}.yui3-skin-sam .yui3-console-entry-meta{margin:0;overflow:hidden}.yui3-skin-sam .yui3-console-entry-content{margin:0;padding:0 1ex;white-space:pre-wrap;word-wrap:break-word}.yui3-skin-sam .yui3-console-entry-meta .yui3-console-entry-src{color:#000;font-style:italic;font-weight:bold;float:right;margin:2px 5px 0 0}.yui3-skin-sam .yui3-console-entry-meta .yui3-console-entry-time{color:#777;padding-left:1ex}.yui3-skin-sam .yui3-console-entry-warn .yui3-console-entry-meta .yui3-console-entry-time{color:#555}.yui3-skin-sam .yui3-console-entry-info .yui3-console-entry-meta .yui3-console-entry-cat,.yui3-skin-sam .yui3-console-entry-warn .yui3-console-entry-meta .yui3-console-entry-cat,.yui3-skin-sam .yui3-console-entry-error .yui3-console-entry-meta .yui3-console-entry-cat{display:none}.yui3-skin-sam .yui3-console-entry-warn{background:#aee url(warn_error.png) no-repeat -15px 15px}.yui3-skin-sam .yui3-console-entry-error{background:#ffa url(warn_error.png) no-repeat 5px -24px;color:#900}.yui3-skin-sam .yui3-console-entry-warn .yui3-console-entry-content,.yui3-skin-sam .yui3-console-entry-error .yui3-console-entry-content{padding-left:24px}.yui3-skin-sam .yui3-console-entry-cat{text-transform:uppercase;padding:1px 4px;background-color:#ccc}.yui3-skin-sam .yui3-console-entry-info .yui3-console-entry-cat{background-color:#ac2}.yui3-skin-sam .yui3-console-entry-warn .yui3-console-entry-cat{background-color:#e81}.yui3-skin-sam .yui3-console-entry-error .yui3-console-entry-cat{background-color:#b00;color:#fff}.yui3-skin-sam .yui3-console-hidden{display:none}#yui3-css-stamp.skin-sam-console{display:none} -.yui3-skin-sam .yui3-datatable-mask{position:absolute;z-index:9500}.yui3-datatable-tmp{position:absolute;left:-9000px}.yui3-datatable-scrollable .yui3-datatable-bd{overflow:auto}.yui3-datatable-scrollable .yui3-datatable-hd{overflow:hidden;position:relative}.yui3-datatable-scrollable .yui3-datatable-bd thead tr,.yui3-datatable-scrollable .yui3-datatable-bd thead th{position:absolute;left:-1500px}.yui3-datatable-scrollable tbody{-moz-outline:0}.yui3-skin-sam thead .yui3-datatable-sortable{cursor:pointer}.yui3-skin-sam thead .yui3-datatable-draggable{cursor:move}.yui3-datatable-coltarget{position:absolute;z-index:999}.yui3-datatable-hd{zoom:1}th.yui3-datatable-resizeable .yui3-datatable-resizerliner{position:relative}.yui3-datatable-resizer{position:absolute;right:0;bottom:0;height:100%;cursor:e-resize;cursor:col-resize;background-color:#CCC;opacity:0;filter:alpha(opacity=0)}.yui3-datatable-resizerproxy{visibility:hidden;position:absolute;z-index:9000;background-color:#CCC;opacity:0;filter:alpha(opacity=0)}th.yui3-datatable-hidden .yui3-datatable-liner,td.yui3-datatable-hidden .yui3-datatable-liner,th.yui3-datatable-hidden .yui3-datatable-resizer{display:none}.yui3-datatable-editor,.yui3-datatable-editor-shim{position:absolute;z-index:9000}.yui3-skin-sam .yui3-datatable table{margin:0;padding:0;font-family:arial;font-size:inherit;border-collapse:separate;*border-collapse:collapse;border-spacing:0;border:1px solid #7f7f7f}.yui3-skin-sam .yui3-datatable thead{border-spacing:0}.yui3-skin-sam .yui3-datatable caption{color:#000;font-size:85%;font-weight:normal;font-style:italic;line-height:1;padding:1em 0;text-align:center}.yui3-skin-sam .yui3-datatable th{background:#d8d8da url(sprite.png) repeat-x 0 0}.yui3-skin-sam .yui3-datatable th,.yui3-skin-sam .yui3-datatable th a{font-weight:normal;text-decoration:none;color:#000;vertical-align:bottom}.yui3-skin-sam .yui3-datatable th{margin:0;padding:0;border:0;border-right:1px solid #cbcbcb}.yui3-skin-sam .yui3-datatable tr.yui3-datatable-first td{border-top:1px solid #7f7f7f}.yui3-skin-sam .yui3-datatable th .yui3-datatable-liner{white-space:nowrap}.yui3-skin-sam .yui3-datatable-liner{margin:0;padding:0;padding:4px 10px 4px 10px;overflow:visible;border:0 solid black}.yui3-skin-sam .yui3-datatable-coltarget{width:5px;background-color:red}.yui3-skin-sam .yui3-datatable td{margin:0;padding:0;border:0;border-right:1px solid #cbcbcb;text-align:left}.yui3-skin-sam .yui3-datatable-list td{border-right:0}.yui3-skin-sam .yui3-datatable-resizer{width:6px}.yui3-skin-sam .yui3-datatable-mask{background-color:#000;opacity:.25;filter:alpha(opacity=25)}.yui3-skin-sam .yui3-datatable-message{background-color:#FFF}.yui3-skin-sam .yui3-datatable-scrollable table{border:0}.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-hd{border-left:1px solid #7f7f7f;border-top:1px solid #7f7f7f;border-right:1px solid #7f7f7f}.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-bd{border-left:1px solid #7f7f7f;border-bottom:1px solid #7f7f7f;border-right:1px solid #7f7f7f;background-color:#FFF}.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-data tr.yui3-datatable-last td{border-bottom:1px solid #7f7f7f}.yui3-skin-sam th.yui3-datatable-asc,.yui3-skin-sam th.yui3-datatable-desc{background:url(sprite.png) repeat-x 0 -100px}.yui3-skin-sam th.yui3-datatable-sortable .yui3-datatable-liner{padding-right:20px}.yui3-skin-sam th.yui3-datatable-asc .yui3-datatable-liner{background:url(dt-arrow-up.png) no-repeat right}.yui3-skin-sam th.yui3-datatable-desc .yui3-datatable-liner{background:url(dt-arrow-dn.png) no-repeat right}tbody .yui3-datatable-editable{cursor:pointer}.yui3-datatable-editor{text-align:left;background-color:#f2f2f2;border:1px solid #808080;padding:6px}.yui3-datatable-editor label{padding-left:4px;padding-right:6px}.yui3-datatable-editor .yui3-datatable-button{padding-top:6px;text-align:right}.yui3-datatable-editor .yui3-datatable-button button{background:url(sprite.png) repeat-x 0 0;border:1px solid #999;width:4em;height:1.8em;margin-left:6px}.yui3-datatable-editor .yui3-datatable-button button.yui3-datatable-default{background:url(sprite.png) repeat-x 0 -1400px;background-color:#5584e0;border:1px solid #304369;color:#FFF}.yui3-datatable-editor .yui3-datatable-button button:hover{background:url(sprite.png) repeat-x 0 -1300px;color:#000}.yui3-datatable-editor .yui3-datatable-button button:active{background:url(sprite.png) repeat-x 0 -1700px;color:#000}.yui3-skin-sam .yui3-datatable td{background-color:transparent}.yui3-skin-sam tr.yui3-datatable-even td{background-color:#FFF}.yui3-skin-sam tr.yui3-datatable-odd td{background-color:#edf5ff}.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-desc{background-color:#edf5ff}.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-desc{background-color:#dbeaff}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even{background-color:#FFF}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd{background-color:#FFF}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-desc{background-color:#edf5ff}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-desc{background-color:#edf5ff}.yui3-skin-sam th.yui3-datatable-highlighted,.yui3-skin-sam th.yui3-datatable-highlighted a{background-color:#b2d2ff}.yui3-skin-sam tr.yui3-datatable-highlighted,.yui3-skin-sam tr.yui3-datatable-highlighted td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-highlighted td.yui3-datatable-desc,.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-highlighted,.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-highlighted{cursor:pointer;background-color:#b2d2ff} -.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-highlighted,.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-highlighted a{background-color:#b2d2ff}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-desc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-highlighted,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-highlighted{cursor:pointer;background-color:#b2d2ff}.yui3-skin-sam th.yui3-datatable-selected,.yui3-skin-sam th.yui3-datatable-selected a{background-color:#446cd7}.yui3-skin-sam tr.yui3-datatable-selected td,.yui3-skin-sam tr.yui3-datatable-selected td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-selected td.yui3-datatable-desc{background-color:#426fd9;color:#FFF}.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-selected,.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-selected{background-color:#446cd7;color:#FFF}.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-selected,.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-selected a{background-color:#446cd7}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-desc{background-color:#426fd9;color:#FFF}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-selected,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-selected{background-color:#446cd7;color:#FFF}.yui3-skin-sam .yui3-datatable-paginator{display:block;margin:6px 0;white-space:nowrap}.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-first,.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-last,.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-selected{padding:2px 6px}.yui3-skin-sam .yui3-datatable-paginator a.yui3-datatable-first,.yui3-skin-sam .yui3-datatable-paginator a.yui3-datatable-last{text-decoration:none}.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-previous,.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-next{display:none}.yui3-skin-sam a.yui3-datatable-page{border:1px solid #cbcbcb;padding:2px 6px;text-decoration:none;background-color:#fff}.yui3-skin-sam .yui3-datatable-selected{border:1px solid #fff;background-color:#fff}#yui3-css-stamp.skin-sam-datatable-base-deprecated{display:none} -.yui3-datatable-table{empty-cells:show}.yui3-skin-sam .yui3-datatable-table{margin:0;padding:0;font-family:arial,sans-serif;border-collapse:separate;border-spacing:0;border:1px solid #cbcbcb}.yui3-skin-sam .yui3-datatable-caption{color:#000;font:italic 85%/1 arial,sans-serif;padding:1em 0;text-align:center}.yui3-skin-sam .yui3-datatable-cell,.yui3-skin-sam .yui3-datatable-header{border-left:1px solid #cbcbcb;border-width:0 0 0 1px;font-size:inherit;margin:0;overflow:visible;padding:4px 10px 4px 10px}.yui3-skin-sam .yui3-datatable-cell:first-child,.yui3-skin-sam .yui3-datatable-first-header{border-left-width:0}.yui3-skin-sam .yui3-datatable-header{background:#fff url(sprite.png) repeat-x 0 0;background-image:-webkit-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:-moz-linear-gradient(top,transparent 40%,rgba(0,0,0,0.21));background-image:-ms-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:-o-linear-gradient(transparent 40%,rgba(0,0,0,0.21));background-image:linear-gradient(transparent 40%,rgba(0,0,0,0.21));color:#000;font-weight:normal;text-align:left;text-shadow:0 1px 1px #fff;vertical-align:bottom;white-space:nowrap}.yui3-skin-sam .yui3-datatable-cell{background-color:transparent}.yui3-skin-sam .yui3-datatable-even .yui3-datatable-cell{background-color:#fff}.yui3-skin-sam .yui3-datatable-odd .yui3-datatable-cell{background-color:#edf5ff}#yui3-css-stamp.skin-sam-datatable-base{display:none} -.yui3-datatable-message{display:none}.yui3-datatable-message-visible .yui3-datatable-message{display:block;display:table-row-group}.yui3-skin-sam .yui3-datatable-message-content{border:0 none;border-bottom:1px solid #cbcbcb;padding:4px 10px}#yui3-css-stamp.skin-sam-datatable-message{display:none} -.yui3-datatable-scrollable-x{_overflow-x:hidden;_position:relative}.yui3-datatable-scrollable-y,.yui3-datatable-scrollable-y .yui3-datatable-x-scroller{_overflow-y:hidden;_position:relative}.yui3-datatable-y-scroller-container{overflow-x:hidden;position:relative}.yui3-datatable-scrollable-y .yui3-datatable-content{position:relative}.yui3-datatable-scrollable-y .yui3-datatable-table .yui3-datatable-columns{visibility:hidden}.yui3-datatable-scroll-columns{position:absolute;width:100%;z-index:2}.yui3-datatable-y-scroller,.yui3-datatable-scrollable-x .yui3-datatable-caption-table{width:100%}.yui3-datatable-x-scroller{position:relative;overflow-x:scroll;overflow-y:hidden}.yui3-datatable-scrollable-y .yui3-datatable-y-scroller{position:relative;overflow-x:hidden;overflow-y:scroll;z-index:1;-webkit-overflow-scrolling:touch}.yui3-datatable-scrollbar{position:absolute;overflow-x:hidden;overflow-y:scroll;z-index:2}.yui3-datatable-scrollbar div{position:absolute;width:1px;visibility:hidden}.yui3-skin-sam .yui3-datatable-scroll-columns{border-collapse:separate;border-spacing:0;font-family:arial,sans-serif;margin:0;padding:0;top:0;left:0}.yui3-skin-sam .yui3-datatable-scroll-columns .yui3-datatable-header{padding:0}.yui3-skin-sam .yui3-datatable-x-scroller,.yui3-skin-sam .yui3-datatable-y-scroller-container{border:1px solid #cbcbcb}.yui3-skin-sam .yui3-datatable-scrollable-x .yui3-datatable-y-scroller-container,.yui3-skin-sam .yui3-datatable-x-scroller .yui3-datatable-table,.yui3-skin-sam .yui3-datatable-y-scroller .yui3-datatable-table{border:0 none}#yui3-css-stamp.skin-sam-datatable-scroll{display:none} -.yui3-datatable-sortable-column{z-index:1}.yui3-datatable-sortable-column:focus,.yui3-datatable-sortable-column:active{z-index:2}.yui3-datatable-sort-liner{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.yui3-skin-sam .yui3-datatable-sortable-column{cursor:pointer}.yui3-skin-sam .yui3-datatable-columns .yui3-datatable-sorted,.yui3-skin-sam .yui3-datatable-sortable-column:hover{*background:#c1c4c8 url(sprite.png) repeat-x 0 -100px;background-color:#f1f2f3}.yui3-skin-sam .yui3-datatable-sort-liner{display:block;height:100%;position:relative;padding-right:15px;position:relative}.yui3-skin-sam .yui3-datatable-sort-indicator{position:absolute;right:0;bottom:.5ex;width:7px;height:10px;background:url(sort-arrow-sprite.png) no-repeat 0 0;_background:url(sort-arrow-sprite-ie.png) no-repeat 0 0;overflow:hidden}.yui3-skin-sam .yui3-datatable-sorted .yui3-datatable-sort-indicator{background-position:0 -10px}.yui3-skin-sam .yui3-datatable-sorted-desc .yui3-datatable-sort-indicator{background-position:0 -20px}.yui3-skin-sam .yui3-datatable-data .yui3-datatable-even .yui3-datatable-sorted{background-color:#edf5ff}.yui3-skin-sam .yui3-datatable-data .yui3-datatable-odd .yui3-datatable-sorted{background-color:#dbeaff}#yui3-css-stamp.skin-sam-datatable-sort{display:none} -v\:oval,v\:shadow,v\:fill{behavior:url(#default#VML);display:inline-block;zoom:1;*display:inline}.yui3-dial{position:relative;display:-moz-inline-stack;display:inline-block;zoom:1;*display:inline}.yui3-dial-content,.yui3-dial-ring{position:relative}.yui3-dial-handle,.yui3-dial-marker,.yui3-dial-center-button,.yui3-dial-reset-string,.yui3-dial-handle-vml,.yui3-dial-marker-vml,.yui3-dial-center-button-vml,.yui3-dial-ring-vml v\:oval,.yui3-dial-center-button-vml v\:oval{position:absolute}.yui3-dial-center-button-vml v\:oval{font-size:1px;top:0;left:0}.yui3-dial-content .yui3-dial-ring .yui3-dial-hidden v\:oval,.yui3-dial-content .yui3-dial-ring .yui3-dial-hidden{opacity:0;filter:alpha(opacity=0)}.yui3-skin-sam .yui3-dial-handle{background:#6c3a3a;opacity:.3;-moz-box-shadow:1px 1px 1px rgba(0,0,0,0.9) inset;cursor:pointer;font-size:1px}.yui3-skin-sam .yui3-dial-ring{background:#bebdb7;background:-moz-linear-gradient(100% 100% 135deg,#7b7a6d,#fff);background:-webkit-gradient(linear,left top,right bottom,from(#fff),to(#7b7a6d));box-shadow:1px 1px 5px rgba(0,0,0,0.4) inset;-webkit-box-shadow:1px 1px 5px rgba(0,0,0,0.4) inset;-moz-box-shadow:1px 1px 5px rgba(0,0,0,0.4) inset}.yui3-skin-sam .yui3-dial-center-button{box-shadow:-1px -1px 2px rgba(0,0,0,0.3) inset,1px 1px 2px rgba(0,0,0,0.5);-moz-box-shadow:-1px -1px 2px rgba(0,0,0,0.3) inset,1px 1px 2px rgba(0,0,0,0.5);background:#dddbd4;background:-moz-radial-gradient(30% 30% 0deg,circle farthest-side,#fbfbf9 24%,#f2f0ea 41%,#d3d0c3 83%) repeat scroll 0 0 transparent;background:-webkit-gradient(radial,15 15,15,30 30,40,from(#fbfbf9),to(#d3d0c3),color-stop(.2,#f2f0ea));cursor:pointer;opacity:.7}.yui3-skin-sam .yui3-dial-reset-string{color:#676767;font-size:85%;text-decoration:underline}.yui3-skin-sam .yui3-dial-label{color:#808080;margin-bottom:.8em}.yui3-skin-sam .yui3-dial-value-string{margin-left:.5em;color:#000;font-size:130%}.yui3-skin-sam .yui3-dial-value{visibility:hidden;position:absolute;top:0;left:102%;width:4em}.yui3-skin-sam .yui3-dial-north-mark{position:absolute;border-left:2px solid #ccc;height:5px;width:10px;left:50%;top:-7px;font-size:1px}.yui3-skin-sam .yui3-dial-marker{background-color:#000;opacity:.2;font-size:1px}.yui3-skin-sam .yui3-dial-marker-max-min{background-color:#ab3232;opacity:.6}.yui3-skin-sam .yui3-dial-ring-vml,.yui3-skin-sam .yui3-dial-center-button-vml,.yui3-skin-sam .yui3-dial-marker v\:oval.yui3-dial-marker-max-min,.yui3-skin-sam v\:oval.yui3-dial-marker-max-min,.yui3-skin-sam .yui3-dial-marker-vml,.yui3-skin-sam .yui3-dial-handle-vml{background:0;opacity:1}#yui3-css-stamp.skin-sam-dial{display:none} -.yui3-flick{position:relative;overflow:hidden}.yui3-flick-content{position:relative}#yui3-css-stamp.skin-sam-node-flick{display:none} -.yui3-menu .yui3-menu{position:absolute;z-index:1}.yui3-menu .yui3-shim{position:absolute;top:0;left:0;z-index:-1;opacity:0;filter:alpha(opacity=0);border:0;margin:0;padding:0;height:100%;width:100%}.yui3-menu-hidden{top:-10000px;left:-10000px;visibility:hidden}.yui3-menu li{list-style-type:none}.yui3-menu ul,.yui3-menu li{margin:0;padding:0}.yui3-menu-label,.yui3-menuitem-content{text-align:left;white-space:nowrap;display:block}.yui3-menu-horizontal li{float:left;width:auto}.yui3-menu-horizontal li li{float:none}.yui3-menu-horizontal ul{*zoom:1}.yui3-menu-horizontal ul ul{*zoom:normal}.yui3-menu-horizontal>.yui3-menu-content>ul:after{content:"";display:block;clear:both;line-height:0;font-size:0;visibility:hidden}.yui3-menu-content{*zoom:1}.yui3-menu-hidden .yui3-menu-content{*zoom:normal}.yui3-menuitem-content,.yui3-menu-label{_zoom:1}.yui3-menu-hidden .yui3-menuitem-content,.yui3-menu-hidden .yui3-menu-label{_zoom:normal}.yui3-skin-sam .yui3-menu-content,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-content{font-size:93%;line-height:1.5;*line-height:1.45;border:solid 1px #808080;background:#fff;padding:3px 0}.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-content{font-size:100%}.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-content{line-height:2;*line-height:1.9;background:url(sprite.png) repeat-x 0 0;padding:0}.yui3-skin-sam .yui3-menu ul,.yui3-skin-sam .yui3-menu ul ul{margin-top:3px;padding-top:3px;border-top:solid 1px #ccc}.yui3-skin-sam .yui3-menu ul.first-of-type{border:0;margin:0;padding:0}.yui3-skin-sam .yui3-menu-horizontal ul{padding:0;margin:0;border:0}.yui3-skin-sam .yui3-menu li,.yui3-skin-sam .yui3-menu .yui3-menu li{_border-bottom:solid 1px #fff}.yui3-skin-sam .yui3-menu-horizontal li{_border-bottom:0}.yui3-skin-sam .yui3-menubuttonnav li{border-right:solid 1px #ccc}.yui3-skin-sam .yui3-splitbuttonnav li{border-right:solid 1px #808080}.yui3-skin-sam .yui3-menubuttonnav li li,.yui3-skin-sam .yui3-splitbuttonnav li li{border-right:0}.yui3-skin-sam .yui3-menu-label,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label,.yui3-skin-sam .yui3-menuitem-content,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menuitem-content{padding:0 1em;color:#000;text-decoration:none;cursor:default;float:none;border:0;margin:0}.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label,.yui3-skin-sam .yui3-menu-horizontal .yui3-menuitem-content{padding:0 10px;border-style:solid;border-color:#808080;border-width:1px 0;margin:-1px 0;float:left;width:auto}.yui3-skin-sam .yui3-menu-label,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label{background:url(vertical-menu-submenu-indicator.png) right center no-repeat}.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label{background:url(sprite.png) repeat-x 0 0}.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label,.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label{background-image:none}.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label{padding-right:0}.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label em{font-style:normal;padding-right:20px;display:block;background:url(horizontal-menu-submenu-indicator.png) right center no-repeat}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label{padding:0}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label a{float:left;width:auto;color:#000;text-decoration:none;cursor:default;padding:0 5px 0 10px}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label .yui3-menu-toggle{padding:0;border-left:solid 1px #ccc;width:15px;overflow:hidden;text-indent:-1000px;background:url(horizontal-menu-submenu-indicator.png) 3px center no-repeat}.yui3-skin-sam .yui3-menu-label-active,.yui3-skin-sam .yui3-menu-label-menuvisible,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label-active,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menu-label-menuvisible{background-color:#b3d4ff}.yui3-skin-sam .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-sam .yui3-menu .yui3-menu .yui3-menuitem-active .yui3-menuitem-content{background-image:none;background-color:#b3d4ff;border-left-width:0;margin-left:0}.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label-active,.yui3-skin-sam .yui3-menu-horizontal .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-sam .yui3-menu-horizontal .yui3-menu-label-menuvisible{border-color:#7d98b8;background:url(sprite.png) repeat-x 0 -1700px}.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label-active,.yui3-skin-sam .yui3-menubuttonnav .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-sam .yui3-menubuttonnav .yui3-menu-label-menuvisible,.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-active,.yui3-skin-sam .yui3-splitbuttonnav .yui3-menuitem-active .yui3-menuitem-content,.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-menuvisible{border-left-width:1px;margin-left:-1px}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-menuvisible{border-color:#808080;background:transparent}.yui3-skin-sam .yui3-splitbuttonnav .yui3-menu-label-menuvisible .yui3-menu-toggle{border-color:#7d98b8;background:url(horizontal-menu-submenu-toggle.png) left center no-repeat}#yui3-css-stamp.skin-sam-node-menunav{display:none} -.yui3-overlay{position:absolute}.yui3-overlay-hidden{visibility:hidden}.yui3-widget-tmp-forcesize .yui3-overlay-content{overflow:hidden!important}#yui3-css-stamp.skin-sam-overlay{display:none} -.yui3-panel{position:absolute}.yui3-panel-hidden{visibility:hidden}.yui3-widget-tmp-forcesize .yui3-panel-content{overflow:hidden!important}.yui3-panel .yui3-widget-hd{position:relative}.yui3-panel .yui3-widget-hd .yui3-widget-buttons{position:absolute;top:0;right:0}.yui3-panel .yui3-widget-ft .yui3-widget-buttons{display:inline-block;*display:inline;zoom:1}.yui3-skin-sam .yui3-panel-content{-webkit-box-shadow:0 0 5px #333;-moz-box-shadow:0 0 5px #333;box-shadow:0 0 5px #333;border:1px solid black;background:white}.yui3-skin-sam .yui3-panel .yui3-widget-hd{padding:8px 28px 8px 8px;min-height:13px;_height:13px;color:white;background-color:#3961c5;background:-moz-linear-gradient(0% 100% 90deg,#2647a0 7%,#3d67ce 50%,#426fd9 100%);background:-webkit-gradient(linear,left bottom,left top,from(#2647a0),color-stop(0.07,#2647a0),color-stop(0.5,#3d67ce),to(#426fd9))}.yui3-skin-sam .yui3-panel .yui3-widget-hd .yui3-widget-buttons{padding:8px}.yui3-skin-sam .yui3-panel .yui3-widget-bd{padding:10px}.yui3-skin-sam .yui3-panel .yui3-widget-ft{background:#edf5ff;padding:8px;text-align:right}.yui3-skin-sam .yui3-panel .yui3-widget-ft .yui3-button{margin-left:8px}.yui3-skin-sam .yui3-panel .yui3-widget-hd .yui3-button-close{background:transparent;filter:none;border:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;width:13px;height:13px;padding:0;overflow:hidden;vertical-align:top;*font-size:0;*line-height:0;*letter-spacing:-1000px;*color:#86a5ec;*background:url(sprite_icons.png) no-repeat 1px 1px}.yui3-skin-sam .yui3-panel .yui3-widget-hd .yui3-button-close:before{content:url(sprite_icons.png);display:inline-block;text-align:center;font-size:0;line-height:0;width:13px;margin:1px 0 0 1px}.yui3-skin-sam .yui3-panel-hidden .yui3-widget-hd .yui3-button-close{display:none}#yui3-css-stamp.skin-sam-panel{display:none} -.yui3-resize,.yui3-resize-wrapper{z-index:0;zoom:1}.yui3-resize-handle{position:absolute;display:block;z-index:100;zoom:1}.yui3-resize-proxy{position:absolute;border:1px dashed #000;position:absolute;z-index:10000}.yui3-resize-hidden-handles .yui3-resize-handle{opacity:0;filter:alpha(opacity=0)}.yui3-resize-handle-t,.yui3-resize-handle-b{width:100%;left:0;height:6px}.yui3-resize-handle-l,.yui3-resize-handle-r{height:100%;top:0;width:6px}.yui3-resize-handle-t{cursor:n-resize;top:0}.yui3-resize-handle-b{cursor:s-resize;bottom:0}.yui3-resize-handle-l{cursor:w-resize;left:0}.yui3-resize-handle-r{cursor:e-resize;right:0}.yui3-resize-handle-inner{position:absolute;zoom:1}@media only screen and (min-device-width :320px) and (max-device-width :480px){.yui3-resize-handle-inner:after{content:"";width:40px;height:40px;position:absolute}.yui3-resize-handle-inner-r,.yui3-resize-handle-inner-l,.yui3-resize-handle-inner-t,.yui3-resize-handle-inner-b,.yui3-resize-handle-inner-tr,.yui3-resize-handle-inner-br,.yui3-resize-handle-inner-tl,.yui3-resize-handle-inner-bl{overflow:visible!important}.yui3-resize-handle-inner-r:after{top:-12px;right:0}.yui3-resize-handle-inner-l:after{top:-12px;left:0}.yui3-resize-handle-inner-t:after{top:0;left:-12px}.yui3-resize-handle-inner-b:after{bottom:0;left:-12px}.yui3-resize-handle-inner-tr:after{top:0;right:0}.yui3-resize-handle-inner-br:after{bottom:0;right:0}.yui3-resize-handle-inner-tl:after{top:0;left:0}.yui3-resize-handle-inner-bl:after{bottom:0;left:0}}@media only screen and (min-device-width :768px) and (max-device-width :1024px){.yui3-resize-handle-inner:after{content:"";width:30px;height:30px;position:absolute}.yui3-resize-handle-inner-r,.yui3-resize-handle-inner-l,.yui3-resize-handle-inner-t,.yui3-resize-handle-inner-b,.yui3-resize-handle-inner-tr,.yui3-resize-handle-inner-br,.yui3-resize-handle-inner-tl,.yui3-resize-handle-inner-bl{overflow:visible!important}.yui3-resize-handle-inner-r:after{top:-6px;right:0}.yui3-resize-handle-inner-l:after{top:-6px;left:0}.yui3-resize-handle-inner-t:after{top:0;left:-6px}.yui3-resize-handle-inner-b:after{bottom:0;left:-6px}.yui3-resize-handle-inner-tr:after{top:0;right:0}.yui3-resize-handle-inner-br:after{bottom:0;right:0}.yui3-resize-handle-inner-tl:after{top:0;left:0}.yui3-resize-handle-inner-bl:after{bottom:0;left:0}}.yui3-resize-handle-inner-t,.yui3-resize-handle-inner-b{margin-left:-8px;left:50%}.yui3-resize-handle-inner-l,.yui3-resize-handle-inner-r{margin-top:-8px;top:50%}.yui3-resize-handle-inner-t{top:-4px}.yui3-resize-handle-inner-b{bottom:-4px}.yui3-resize-handle-inner-l{left:-4px}.yui3-resize-handle-inner-r{right:-4px}.yui3-resize-handle-tr,.yui3-resize-handle-br,.yui3-resize-handle-tl,.yui3-resize-handle-bl{height:15px;width:15px;z-index:200}.yui3-resize-handle-tr{cursor:ne-resize;top:0;right:0}.yui3-resize-handle-tl{cursor:nw-resize;top:0;left:0}.yui3-resize-handle-br{cursor:se-resize;bottom:0;right:0}.yui3-resize-handle-bl{cursor:sw-resize;bottom:0;left:0}.yui3-resize-handle-inner-r,.yui3-resize-handle-inner-l,.yui3-resize-handle-inner-t,.yui3-resize-handle-inner-b,.yui3-resize-handle-inner-tr,.yui3-resize-handle-inner-br,.yui3-resize-handle-inner-tl,.yui3-resize-handle-inner-bl{background-repeat:no-repeat;background:url(arrows.png) no-repeat 0 0;display:block;height:15px;overflow:hidden;text-indent:-99999em;width:15px}.yui3-resize-handle-inner-br{background-position:-30px 0;bottom:-2px;right:-2px}.yui3-resize-handle-inner-tr{background-position:-58px 0;bottom:0;right:-2px}.yui3-resize-handle-inner-bl{background-position:-75px 0;bottom:-2px;right:-2px}.yui3-resize-handle-inner-tl{background-position:-47px 0;bottom:0;right:-2px}.yui3-resize-handle-inner-b,.yui3-resize-handle-inner-t{background-position:-15px 0}#yui3-css-stamp.skin-sam-resize-base{display:none} -.yui3-scrollview{position:relative;overflow:hidden;-webkit-user-select:none;-moz-user-select:none}.yui3-scrollview-hidden{display:none}.yui3-scrollview-content{position:relative}.yui3-skin-sam .yui3-scrollview{-webkit-tap-highlight-color:rgba(255,255,255,0)}#yui3-css-stamp.skin-sam-scrollview-base{display:none} -.yui3-skin-sam .yui3-scrollview{-webkit-tap-highlight-color:rgba(255,255,255,0)}.yui3-skin-sam .yui3-scrollview{background-color:white}.yui3-skin-sam .yui3-scrollview-vert .yui3-scrollview-content .yui3-scrollview-item{*zoom:1}.yui3-skin-sam .yui3-scrollview-vert .yui3-scrollview-content .yui3-scrollview-list{*zoom:1;list-style:none;padding:0;margin:0}.yui3-skin-sam .yui3-scrollview-vert .yui3-scrollview-content{border-top:0;background-color:white;font-family:HelveticaNeue,arial,helvetica,clean,sans-serif;color:black}.yui3-skin-sam .yui3-scrollview-vert .yui3-scrollview-content .yui3-scrollview-item{border-bottom:1px solid #303030;padding:15px 20px 16px;font-size:100%;font-weight:bold;background-color:white;cursor:pointer}#yui3-css-stamp.skin-sam-scrollview-list{display:none} -.yui3-scrollview-scrollbar{opacity:1;position:absolute;width:6px;height:10px}.yui3-scrollview-scrollbar{top:0;right:1px}.yui3-scrollview-scrollbar-horiz{top:auto;height:8px;width:20px;bottom:1px;left:0}.yui3-scrollview-scrollbar .yui3-scrollview-child{position:absolute;right:0;display:block;width:100%;height:4px}.yui3-scrollview-scrollbar .yui3-scrollview-first{top:0}.yui3-scrollview-scrollbar .yui3-scrollview-last{top:0}.yui3-scrollview-scrollbar .yui3-scrollview-middle{position:absolute;top:4px;height:1px}.yui3-scrollview-scrollbar-horiz .yui3-scrollview-child{display:-moz-inline-stack;display:inline-block;zoom:1;*display:inline;top:0;left:0;bottom:auto;right:auto}.yui3-scrollview-scrollbar-horiz .yui3-scrollview-first,.yui3-scrollview-scrollbar-horiz .yui3-scrollview-last{width:4px;height:6px}.yui3-scrollview-scrollbar-horiz .yui3-scrollview-middle{top:0;left:4px;width:1px;height:6px}.yui3-scrollview-scrollbar-vert-basic{height:auto}.yui3-scrollview-scrollbar-vert-basic .yui3-scrollview-child{position:static;_overflow:hidden;_line-height:4px}.yui3-scrollview-scrollbar-horiz-basic{width:auto;white-space:nowrap;line-height:6px;_overflow:hidden}.yui3-scrollview-scrollbar-horiz-basic .yui3-scrollview-child{position:static;padding:0;margin:0;top:auto;left:auto;right:auto;bottom:auto}.yui3-skin-sam .yui3-scrollview-scrollbar{-webkit-transform:translate3d(0,0,0);-moz-transform:translate(0,0)}.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-first,.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-middle,.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-last{border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAABCAYAAAD9yd/wAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAABJJREFUeNpiZGBgSGPAAgACDAAIkABoFyloZQAAAABJRU5ErkJggg==)}.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-first,.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-last{border-bottom-right-radius:0;border-bottom-left-radius:0;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:0}.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-last{border-radius:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px;-webkit-border-radius:0;-webkit-border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:3px;-webkit-transform:translate3d(0,0,0);-moz-border-radius:0;-moz-border-radius-bottomright:3px;-moz-border-radius-bottomleft:3px;-moz-transform:translate(0,0)}.yui3-skin-sam .yui3-scrollview-scrollbar .yui3-scrollview-middle{border-radius:0;-webkit-border-radius:0;-moz-border-radius:0;-webkit-transform:translate3d(0,0,0) scaleY(1);-webkit-transform-origin-y:0;-moz-transform:translate(0,0) scaleY(1);-moz-transform-origin:0 0}.yui3-skin-sam .yui3-scrollview-scrollbar-horiz .yui3-scrollview-first,.yui3-skin-sam .yui3-scrollview-scrollbar-horiz .yui3-scrollview-last{border-top-right-radius:0;border-bottom-left-radius:3px;-webkit-border-top-right-radius:0;-webkit-border-bottom-left-radius:3px;-moz-border-radius-topright:0;-moz-border-radius-bottomleft:3px}.yui3-skin-sam .yui3-scrollview-scrollbar-horiz .yui3-scrollview-last{border-bottom-left-radius:0;border-top-right-radius:3px;-webkit-border-bottom-left-radius:0;-webkit-border-top-right-radius:3px;-moz-border-radius-bottomleft:0;-moz-border-radius-topright:3px}.yui3-skin-sam .yui3-scrollview-scrollbar-horiz .yui3-scrollview-middle{-webkit-transform:translate3d(0,0,0) scaleX(1);-webkit-transform-origin:0 0;-moz-transform:translate(0,0) scaleX(1);-moz-transform-origin:0 0}.yui3-skin-sam .yui3-scrollview-scrollbar-vert-basic .yui3-scrollview-child,.yui3-skin-sam .yui3-scrollview-scrollbar-horiz-basic .yui3-scrollview-child{background-color:#aaa;background-image:none}#yui3-css-stamp.skin-sam-scrollview-scrollbars{display:none} -.yui3-slider,.yui3-slider-rail{display:-moz-inline-stack;display:inline-block;*display:inline;zoom:1;vertical-align:middle}.yui3-slider-content{position:relative;display:block}.yui3-slider-rail{position:relative}.yui3-slider-rail-cap-top,.yui3-slider-rail-cap-left,.yui3-slider-rail-cap-bottom,.yui3-slider-rail-cap-right,.yui3-slider-thumb,.yui3-slider-thumb-image,.yui3-slider-thumb-shadow{position:absolute}.yui3-slider-thumb{overflow:hidden}.yui3-skin-sam .yui3-slider-x .yui3-slider-rail,.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-left,.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-right{background-image:url(rail-x.png);background-repeat:repeat-x}.yui3-skin-sam .yui3-slider-x .yui3-slider-rail{height:26px}.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb{height:26px;width:15px}.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-left{background-position:0 -20px;height:20px;left:-2px;width:5px}.yui3-skin-sam .yui3-slider-x .yui3-slider-rail-cap-right{background-position:0 -40px;height:20px;right:-2px;width:5px}.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb-image{left:0;top:-10px}.yui3-skin-sam .yui3-slider-x .yui3-slider-thumb-shadow{left:0;opacity:.15;filter:alpha(opacity=15);top:-50px}.yui3-skin-sam .yui3-slider-y .yui3-slider-rail,.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-top,.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-bottom{background-image:url(rail-y.png);background-repeat:repeat-y}.yui3-skin-sam .yui3-slider-y .yui3-slider-rail{width:26px}.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb{width:26px;height:15px}.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-top{background-position:-20px 0;width:20px;top:-2px;height:5px}.yui3-skin-sam .yui3-slider-y .yui3-slider-rail-cap-bottom{background-position:-40px 0;width:20px;bottom:-2px;height:5px}.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb-image{left:-10px;top:0}.yui3-skin-sam .yui3-slider-y .yui3-slider-thumb-shadow{left:-50px;opacity:.15;filter:alpha(opacity=15);top:0}#yui3-css-stamp.skin-sam-slider-base{display:none} -.yui3-tab-panel{display:none}.yui3-tab-panel-selected{display:block}.yui3-tabview-list,.yui3-tab{margin:0;padding:0;list-style:none}.yui3-tabview{position:relative}.yui3-tabview,.yui3-tabview-list,.yui3-tabview-panel,.yui3-tab,.yui3-tab-panel{zoom:1}.yui3-tab{display:inline-block;*display:inline;vertical-align:bottom;cursor:pointer}.yui3-tab-label{display:block;display:inline-block;padding:6px 10px;position:relative;text-decoration:none;vertical-align:bottom}.yui3-skin-sam .yui3-tabview-list{border:solid #2647a0;border-width:0 0 5px;zoom:1}.yui3-skin-sam .yui3-tab{margin:0 .2em 0 0;padding:1px 0 0;zoom:1}.yui3-skin-sam .yui3-tab-selected{margin-bottom:-1px}.yui3-skin-sam .yui3-tab-label{background:#d8d8d8 url(sprite.png) repeat-x;border:solid #a3a3a3;border-width:1px 1px 0 1px;color:#000;cursor:pointer;font-size:85%;padding:.3em .75em;text-decoration:none}.yui3-skin-sam .yui3-tab-label:hover,.yui3-skin-sam .yui3-tab-label:focus{background:#bfdaff url(sprite.png) repeat-x left -1300px;outline:0}.yui3-skin-sam .yui3-tab-selected .yui3-tab-label,.yui3-skin-sam .yui3-tab-selected .yui3-tab-label:focus,.yui3-skin-sam .yui3-tab-selected .yui3-tab-label:hover{background:#2647a0 url(sprite.png) repeat-x left -1400px;color:#fff}.yui3-skin-sam .yui3-tab-selected .yui3-tab-label{padding:.4em .75em}.yui3-skin-sam .yui3-tab-selected .yui3-tab-label{border-color:#243356}.yui3-skin-sam .yui3-tabview-panel{background:#edf5ff}.yui3-skin-sam .yui3-tabview-panel{border:1px solid #808080;border-top-color:#243356;padding:.25em .5em}#yui3-css-stamp.skin-sam-tabview{display:none} -.yui3-testconsole .yui3-console-entry{min-height:inherit;padding:5px}.yui3-testconsole .yui3-console-controls{display:none}.yui3-skin-sam .yui3-testconsole .yui3-console-content,.yui3-skin-sam .yui3-testconsole .yui3-console-bd,.yui3-skin-sam .yui3-testconsole .yui3-console-entry,.yui3-skin-sam .yui3-testconsole .yui3-console-ft,.yui3-skin-sam .yui3-testconsole .yui3-console-ft .yui3-console-filters-categories,.yui3-skin-sam .yui3-testconsole .yui3-console-ft .yui3-console-filters-sources,.yui3-skin-sam .yui3-testconsole .yui3-console-hd{background:0;border:0;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.yui3-skin-sam .yui3-testconsole-content,.yui3-skin-sam .yui3-testconsole .yui3-console-bd{color:#333;font:13px/1.4 Helvetica,'DejaVu Sans','Bitstream Vera Sans',Arial,sans-serif}.yui3-skin-sam .yui3-testconsole-content{border:1px solid #afafaf}.yui3-skin-sam .yui3-testconsole .yui3-console-entry{border-bottom:1px solid #eaeaea;font-family:Menlo,Inconsolata,Consolas,'DejaVu Mono','Bitstream Vera Sans Mono',monospace;font-size:11px}.yui3-skin-sam .yui3-testconsole .yui3-console-ft{border-top:1px solid}.yui3-skin-sam .yui3-testconsole .yui3-console-hd{border-bottom:1px solid;*zoom:1}.yui3-skin-sam .yui3-testconsole.yui3-console-collapsed .yui3-console-hd{border:0}.yui3-skin-sam .yui3-testconsole .yui3-console-ft,.yui3-skin-sam .yui3-testconsole .yui3-console-hd{border-color:#cfcfcf}.yui3-skin-sam .yui3-testconsole .yui3-testconsole-entry-fail{background-color:#ffe0e0;border-bottom-color:#ffc5c4}.yui3-skin-sam .yui3-testconsole .yui3-testconsole-entry-pass{background-color:#ecffea;border-bottom-color:#d1ffcc}#yui3-css-stamp.skin-sam-test-console{display:none} -.yui3-widget-hidden{display:none}.yui3-widget-content{overflow:hidden}.yui3-widget-content-expanded{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;height:100%}.yui3-widget-tmp-forcesize{overflow:hidden!important}#yui3-css-stamp.skin-sam-widget-base{display:none} -.yui3-widget-buttons .yui3-button-close,.yui3-widget-buttons .yui3-button-close .yui3-button-content,.yui3-widget-buttons .yui3-button-close .yui3-button-icon{display:inline-block;*display:inline;zoom:1;width:13px;height:13px;line-height:13px;vertical-align:top}.yui3-widget-buttons .yui3-button-close .yui3-button-icon{background-repeat:no-repeat;background-position:1px 1px}.yui3-skin-sam .yui3-widget-buttons .yui3-button-icon{background-image:url(sprite_icons.gif)}#yui3-css-stamp.skin-sam-widget-buttons{display:none} -.yui3-skin-sam .yui3-widget-mask{background-color:black;zoom:1;-ms-filter:"alpha(opacity=40)";filter:alpha(opacity=40);opacity:.4}#yui3-css-stamp.skin-sam-widget-modality{display:none} -.yui3-widget-stacked .yui3-widget-shim{opacity:0;filter:alpha(opacity=0);position:absolute;border:0;top:0;left:0;padding:0;margin:0;z-index:-1;width:100%;height:100%;_width:0;_height:0}#yui3-css-stamp.skin-sam-widget-stack{display:none} diff --git a/lib/yuilib/3.9.1/build/assets/skins/sam/sprite_icons.gif b/lib/yuilib/3.9.1/build/assets/skins/sam/sprite_icons.gif deleted file mode 100644 index fa26094f60eef65b2c1ab2d07c640cd44140f701..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 142 zcmV;90CE3ENk%w1VGRIe0FeU#Om)^pYRHDA>;M1&A^8LW00093EC2ui01W_S0007C z95kr{E9hW)kg8}e)|X1{JzSPeVx$D$6maef$MQ_q_KoNI&iDQh3JQm-Q4w_PBptF7 w%=sdQe$=Y-1?this._q[t]:null},promote:function(e){var t={callback:e},n;return this.isRunning()?n=this.after(i,function(){this.fire(s,t),n.detach()},this):this.fire(s,t),this},_defPromoteFn:function(e){var t=this.indexOf(e.callback),n=t>-1?this._q.splice(t,1)[0]:null;e.promoted=n,n&&this._q.unshift(n)},remove:function(e){var t={callback:e},n;return this.isRunning()?n=this.after(i,function(){this.fire(o,t),n.detach()},this):this.fire(o,t),this},_defRemoveFn:function(e){var t=this.indexOf(e.callback);e.removed=t>-1?this._q.splice(t,1)[0]:null},size:function(){return this.isRunning()||this.next(),this._q.length}})},"3.9.1",{requires:["event-custom"]}); diff --git a/lib/yuilib/3.9.1/build/attribute-complex/attribute-complex-min.js b/lib/yuilib/3.9.1/build/attribute-complex/attribute-complex-min.js deleted file mode 100644 index e2c64031f52..00000000000 --- a/lib/yuilib/3.9.1/build/attribute-complex/attribute-complex-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("attribute-complex",function(e,t){var n=e.Attribute;n.Complex=function(){},n.Complex.prototype={_normAttrVals:n.prototype._normAttrVals,_getAttrInitVal:n.prototype._getAttrInitVal},e.AttributeComplex=n.Complex},"3.9.1",{requires:["attribute-base"]}); diff --git a/lib/yuilib/3.9.1/build/attribute-core/attribute-core-min.js b/lib/yuilib/3.9.1/build/attribute-core/attribute-core-min.js deleted file mode 100644 index 0f9a9f2971c..00000000000 --- a/lib/yuilib/3.9.1/build/attribute-core/attribute-core-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("attribute-core",function(e,t){function E(e,t,n){this._yuievt=null,this._initAttrHost(e,t,n)}e.State=function(){this.data={}},e.State.prototype={add:function(e,t,n){var r=this.data[e];r||(r=this.data[e]={}),r[t]=n},addAll:function(e,t){var n=this.data[e],r;n||(n=this.data[e]={});for(r in t)t.hasOwnProperty(r)&&(n[r]=t[r])},remove:function(e,t){var n=this.data[e];n&&delete n[t]},removeAll:function(t,n){var r;n?e.each(n,function(e,n){this.remove(t,typeof n=="string"?n:e)},this):(r=this.data,t in r&&delete r[t])},get:function(e,t){var n=this.data[e];if(n)return n[t]},getAll:function(e,t){var n=this.data[e],r,i;if(t)i=n;else if(n){i={};for(r in n)n.hasOwnProperty(r)&&(i[r]=n[r])}return i}};var n=e.Object,r=e.Lang,i=".",s="getter",o="setter",u="readOnly",a="writeOnce",f="initOnly",l="validator",c="value",h="valueFn",p="lazyAdd",d="added",v="_bypassProxy",m="initializing",g="initValue",y="lazy",b="isLazyAdd",w;E.INVALID_VALUE={},w=E.INVALID_VALUE,E._ATTR_CFG=[o,s,l,c,h,a,u,p,v],E.protectAttrs=function(t){if(t){t=e.merge(t);for(var n in t)t.hasOwnProperty(n)&&(t[n]=e.merge(t[n]))}return t},E.prototype={_initAttrHost:function(t,n,r){this._state=new e.State,this._initAttrs(t,n,r)},addAttr:function(e,t,n){var r=this,i=r._state,s,o;t=t||{},n=p in t?t[p]:n;if(n&&!r.attrAdded(e))i.addAll(e,{lazy:t,added:!0});else if(!r.attrAdded(e)||i.get(e,b))o=c in t,o&&(s=t.value,delete t.value),t.added=!0,t.initializing=!0,i.addAll(e,t),o&&r.set(e,s),i.remove(e,m);return r},attrAdded:function(e){return!!this._state.get(e,d)},get:function(e){return this._getAttr(e)},_isLazyAttr:function(e){return this._state.get(e,y)},_addLazyAttr:function(e){var t=this._state,n=t.get(e,y);t.add(e,b,!0),t.remove(e,y),this.addAttr(e,n)},set:function(e,t,n){return this._setAttr(e,t,n)},_set:function(e,t,n){return this._setAttr(e,t,n,!0)},_setAttr:function(t,r,s,o){var u=!0,a=this._state,l=this._stateProxy,h,p,d,v,m,g,y;return t.indexOf(i)!==-1&&(d=t,v=t.split(i),t=v.shift()),this._isLazyAttr(t)&&this._addLazyAttr(t),h=a.getAll(t,!0)||{},p=!(c in h),l&&t in l&&!h._bypassProxy&&(p=!1),g=h.writeOnce,y=h.initializing,!p&&!o&&(g&&(u=!1),h.readOnly&&(u=!1)),!y&&!o&&g===f&&(u=!1),u&&(p||(m=this.get(t)),v&&(r=n.setValue(e.clone(m),v,r),r===undefined&&(u=!1)),u&&(s=s||{},!this._fireAttrChange||y?this._setAttrVal(t,d,m,r,s):this._fireAttrChange(t,d,m,r,s))),this},_getAttr:function(e){var t=this,r=e,o=t._state,u,a,f,l;return e.indexOf(i)!==-1&&(u=e.split(i),e=u.shift()),t._tCfgs&&t._tCfgs[e]&&(l={},l[e]=t._tCfgs[e],delete t._tCfgs[e],t._addAttrs(l,t._tVals)),t._isLazyAttr(e)&&t._addLazyAttr(e),f=t._getStateVal(e),a=o.get(e,s),a&&!a.call&&(a=this[a]),f=a?a.call(t,f,r):f,f=u?n.getValue(f,u):f,f},_getStateVal:function(e){var t=this._stateProxy;return t&&e in t&&!this._state.get(e,v)?t[e]:this._state.get(e,c)},_setStateVal:function(e,t){var n=this._stateProxy;n&&e in n&&!this._state.get(e,v)?n[e]=t:this._state.add(e,c,t)},_setAttrVal:function(e,t,n,i,s){var o=this,u=!0,a=this._state.getAll(e,!0)||{},f=a.validator,l=a.setter,c=a.initializing,h=this._getStateVal(e),p=t||e,d,v;return f&&(f.call||(f=this[f]),f&&(v=f.call(o,i,p,s),!v&&c&&(i=a.defaultValue,v=!0))),!f||v?(l&&(l.call||(l=this[l]),l&&(d=l.call(o,i,p,s),d===w?c?i=a.defaultValue:u=!1:d!==undefined&&(i=d))),u&&(!t&&i===h&&!r.isObject(i)?u=!1:(g in a||(a.initValue=i),o._setStateVal(e,i)))):u=!1,u},setAttrs:function(e,t){return this._setAttrs(e,t)},_setAttrs:function(e,t){var n;for(n in e)e.hasOwnProperty(n)&&this.set(n,e[n],t);return this},getAttrs:function(e){return this._getAttrs(e)},_getAttrs:function(e){var t={},r,i,s,o=e===!0;if(!e||o)e=n.keys(this._state.data);for(i=0,s=e.length;i=t?(i=Math.floor((r/2-t)/(Math.pow(10,n-1)/2)),t=r/2-i*Math.pow(10,n-1)/2):t=r,isNaN(t)?e:t},_updateMinAndMax:function(){var e=this.get("data"),t,n,r,i,s=0,o=this.get("setMax"),u=this.get("setMin");if(!o||!u){if(e&&e.length&&e.length>0){r=e.length;for(;s=0,u=t>0,a,f,l,c,h,p,d,v=this.getTotalMajorUnits()-1,m=this.get("alwaysShowZero"),g=this.get("roundingMethod"),y=(t-e)/v>=1;if(g)if(g==="niceNumber"){i=this._getMinimumUnit(t,e,v);if(o&&u)(m||e=0)h--,c++,p=Math.ceil(t/c),d=Math.floor(e/h)*-1;h>0?t=d*c:t=e+i*v}else if(r){while(p=0)h++,c--,d=Math.floor(e/h)*-1,p=Math.ceil(t/c);c>0?e=p*h*-1:e=t-i*v}else i=Math.max(p,d),i=this._getNiceNumber(i),t=i*c,e=i*h*-1}else r?e=t-i*v:n?t=e+i*v:(e=this._roundDownToNearest(e,i),t=this._roundUpToNearest(t,i));else n?m?t=0:t=e+i*v:r?e=t-i*v:m||t===0||t+i>0?(t=0,i=this._getMinimumUnit(t,e,v),e=t-i*v):(e=this._roundDownToNearest(e,i),t=this._roundUpToNearest(t,i))}else g==="auto"?o&&u?((m||e<(t-e)/v)&&!n&&(e=0),i=(t-e)/v,y?(i=Math.ceil(i),t=e+i*v):t=e+Math.ceil(i*v*1e5)/1e5):u&&!o?m?(c=Math.round(v/(-1*e/t+1)),c=Math.max(Math.min(c,v-1),1),h=v-c,y?(p=Math.ceil(t/c),d=Math.floor(e/h)*-1,i=Math.max(p,d),t=i*c,e=i*h*-1):(p=t/c,d=e/h*-1,i=Math.max(p,d),t=Math.ceil(i*c*1e5)/1e5,e=Math.ceil(i*h*1e5)/1e5*-1)):(i=(t-e)/v,y&&(i=Math.ceil(i)),e=Math.round(this._roundDownToNearest(e,i)*1e5)/1e5,t=Math.round(this._roundUpToNearest(t,i)*1e5)/1e5):(i=(t-e)/v,y&&(i=Math.ceil(i)),m||t===0||t+i>0?(t=0,i=(t-e)/v,y?(Math.ceil(i),e=t-i*v):e=t-Math.ceil(i*v*1e5)/1e5):(e=this._roundDownToNearest(e,i),t=this._roundUpToNearest(t,i))):!isNaN(g)&&isFinite(g)&&(i=g,s=i*v,a=t-e>s,l=this._roundDownToNearest(e,i),f=this._roundUpToNearest(t,i),r?e=t-s:n?t=e+s:o&&u?(m||l<=0?e=0:e=l,t=e+s):u&&!o?(e=l,t=f):(m||f>=0?t=0:t=f,e=t-s));this._dataMaximum=t,this._dataMinimum=e},_roundToNearest:function(e,t){t=t||1;var n=Math.round(this._roundToPrecision(e/t,10))*t;return this._roundToPrecision(n,10)},_roundUpToNearest:function(e,t){return t=t||1,Math.ceil(this._roundToPrecision(e/t,10))*t},_roundDownToNearest:function(e,t){return t=t||1,Math.floor(this._roundToPrecision(e/t,10))*t},_roundToPrecision:function(e,t){t=t||0;var n=Math.pow(10,t);return Math.round(n*e)/n}},e.NumericImpl=n,e.NumericAxisBase=e.Base.create("numericAxisBase",e.AxisBase,[e.NumericImpl])},"3.9.1",{requires:["axis-base"]}); diff --git a/lib/yuilib/3.9.1/build/axis-numeric/axis-numeric-min.js b/lib/yuilib/3.9.1/build/axis-numeric/axis-numeric-min.js deleted file mode 100644 index 938f9a69c59..00000000000 --- a/lib/yuilib/3.9.1/build/axis-numeric/axis-numeric-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("axis-numeric",function(e,t){Y_Lang=e.Lang,e.NumericAxis=e.Base.create("numericAxis",e.Axis,[e.NumericImpl],{_getLabelByIndex:function(){var e=arguments[0],t=arguments[1],n=this.get("minimum"),r=this.get("maximum"),i=(r-n)/(t-1),s,o=this.get("roundingMethod");return t-=1,e===0?s=n:e===t?s=r:(s=e*i,o==="niceNumber"&&(s=this._roundToNearest(s,i)),s+=n),parseFloat(s)},_hasDataOverflow:function(){var e,t,n;return this.get("setMin")||this.get("setMax")?!0:(e=this.get("roundingMethod"),t=this._actualMinimum,n=this._actualMaximum,Y_Lang.isNumber(e)&&(Y_Lang.isNumber(n)&&n>this._dataMaximum||Y_Lang.isNumber(t)&&t=0;--v){o=t[v];for(s in o)o.hasOwnProperty(s)&&(u=d({},o[s],g),h=u.value,m=u.cloneDefaultValue,h&&(m===undefined&&(f===h.constructor||r.isArray(h))||m===l||m===!0?u.value=e.clone(h):m===c&&(u.value=e.merge(h))),p=null,s.indexOf(i)!==-1&&(p=s.split(i),s=p.shift()),y=b[s],p&&y&&y.value?n.setValue(y.value,p,h):p||(y?(y.valueFn&&a in u&&(y.valueFn=null),d(y,u,g)):b[s]=u))}return b},_initHierarchy:function(e){var t=this._lazyAddAttrs,n,r,i,s,o,a,f,l=this._getClasses(),c=this._getAttrCfgs(),h=l.length-1;for(i=h;i>=0;i--){n=l[i],r=n.prototype,f=n._yuibuild&&n._yuibuild.exts;if(f)for(s=0,o=f.length;s=parseInt(i[0],10)&&e<=parseInt(i[1],10))return!0;if(i.length===1&&parseInt(n[r],10)===e)return!0}return!1},_getRulesForDate:function(e){var t=e.getFullYear(),n=e.getMonth(),r=e.getDate(),i=e.getDay(),s=this._rules,o=[],u,a,f,l;for(u in s)if(this._isNumInList(t,u))if(S.isString(s[u]))o.push(s[u]);else for(a in s[u])if(this._isNumInList(n,a))if(S.isString(s[u][a]))o.push(s[u][a]);else for(f in s[u][a])if(this._isNumInList(r,f))if(S.isString(s[u][a][f]))o.push(s[u][a][f]);else for(l in s[u][a][f])this._isNumInList(i,l)&&S.isString(s[u][a][f][l])&&o.push(s[u][a][f][l]);return o},_matchesRule:function(e,t){return C(this._getRulesForDate(e),t)>=0},_canBeSelected:function(e){var t=this.get("enabledDatesRule"),n=this.get("disabledDatesRule");return t?this._matchesRule(e,t):n?!this._matchesRule(e,n):!0},selectDates:function(e){return O.isValidDate(e)?this._addDateToSelection(e):S.isArray(e)&&this._addDatesToSelection(e),this},deselectDates:function(e){return e?O.isValidDate(e)?this._removeDateFromSelection(e):S.isArray(e)&&this._removeDatesFromSelection(e):this._clearSelection(),this},_addDateToSelection:function(e,t){if(this._canBeSelected(e)){var n=e.getFullYear(),r=e.getMonth(),i=e.getDate();k(this._selectedDates,n)?k(this._selectedDates[n],r)?this._selectedDates[n][r][i]=e:(this._selectedDates[n][r]={},this._selectedDates[n][r][i]=e):(this._selectedDates[n]={},this._selectedDates[n][r]={},this._selectedDates[n][r][i]=e),this._selectedDates=L(this._selectedDates,[n,r,i],e),t||this._fireSelectionChange()}},_addDatesToSelection:function(e){T(e,this._addDateToSelection,this),this._fireSelectionChange()},_addDateRangeToSelection:function(e,t){var n=(t.getTimezoneOffset()-e.getTimezoneOffset())*6e4,r=e.getTime(),i=t.getTime(),s,o,u;r>i?(s=r,r=i,i=s+n):i-=n;for(o=r;o<=i;o+=864e5)u=new Date(o),u.setHours(12),this._addDateToSelection(u,o);this._fireSelectionChange()},_removeDateFromSelection:function(e,t){var n=e.getFullYear(),r=e.getMonth(),i=e.getDate();k(this._selectedDates,n)&&k(this._selectedDates[n],r)&&k(this._selectedDates[n][r],i)&&(delete this._selectedDates[n][r][i],t||this._fireSelectionChange())},_removeDatesFromSelection:function(e){T(e,this._removeDateFromSelection,this),this._fireSelectionChange()},_removeDateRangeFromSelection:function(e,t){var n=e.getTime(),r=t.getTime(),i;for(i=n;i<=r;i+=864e5)this._removeDateFromSelection(new Date(i),i);this._fireSelectionChange()},_clearSelection:function(e){this._selectedDates={},this.get("contentBox").all("."+p).removeClass(p).setAttribute("aria-selected",!1),e||this._fireSelectionChange()},_fireSelectionChange:function(){this.fire("selectionChange",{newSelection:this._getSelectedDatesList()})},_restoreModifiedCells:function(){var e=this.get("contentBox"),t;for(t in this._storedDateCells)e.one("#"+t).replace(this._storedDateCells[t]),delete this._storedDateCells[t]},_renderCustomRules:function(){this.get("contentBox").all("."+m+",."+y).removeClass(d).setAttribute("aria-disabled",!1);if(!A(this._rules)){var t,n,r;for(t=0;t0?(i=this._dateToNode(e),(t&&C(r,t)<0||!t&&n&&C(r,n)>=0)&&i.addClass(d).setAttribute("aria-disabled",!0),S.isFunction(this._filterFunction)&&(this._storedDateCells[i.get("id")]=i.cloneNode(!0),this._filterFunction(e,i,r))):t&&(i=this._dateToNode(e),i.addClass(d).setAttribute("aria-disabled",!0))},_renderSelectedDates:function(){this. -get("contentBox").all("."+p).removeClass(p).setAttribute("aria-selected",!1);var t,n,r;for(t=0;t=6?n=12:n=5;break;case 1:n=6;break;case 2:o>0?n=7:n=0;break;case 3:o>1?n=8:n=1;break;case 4:o>2?n=9:n=2;break;case 5:o>3?n=10:n=3;break;case 6:o>4?n=11:n=4}return this.get("contentBox").one("#"+this._calendarId+"_pane_"+i+"_"+n+"_"+t)},_nodeToDate:function(e){var t=e.get("id").split("_").reverse(),n=parseInt(t[2],10),r=parseInt(t[0],10),i=O.addMonths(this.get("date"),n),s=i.getFullYear(),o=i.getMonth();return new Date(s,o,r,12,0,0,0)},_bindCalendarEvents:function(){},_normalizeDate:function(e){return e?new Date(e.getFullYear(),e.getMonth(),1,12,0,0,0):null},_getCutoffColumn:function(e,t){var n=this._normalizeDate(e).getDay()-t,r=6-(n+7)%7;return r},_turnPrevMonthOn:function(e){var t=e.get("id"),n=this._paneProperties[t].paneDate,r=O.daysInMonth(O.addMonths(n,-1)),i;this._paneProperties[t].hasOwnProperty("daysInPrevMonth")||(this._paneProperties[t].daysInPrevMonth=0);if(r!==this._paneProperties[t].daysInPrevMonth){this._paneProperties[t].daysInPrevMonth=r;for(i=5;i>=0;i--)e.one("#"+t+"_"+i+"_"+(i-5)).set("text",r--)}},_turnPrevMonthOff:function(e){var t=e.get("id"),n;this._paneProperties[t].daysInPrevMonth=0;for(n=5;n>=0;n--)e.one("#"+t+"_"+n+"_"+(n-5)).setContent(" ")},_cleanUpNextMonthCells:function(e){var t=e.get("id");e.one("#"+t+"_6_29").removeClass(y),e.one("#"+t+"_7_30").removeClass(y),e.one("#"+t+"_8_31").removeClass(y),e.one("#"+t+"_0_30").removeClass(y),e.one("#"+t+"_1_31").removeClass(y)},_turnNextMonthOn:function(e){var t=1,n=e.get("id"),r=this._paneProperties[n].daysInMonth,i=this._paneProperties[n].cutoffCol,s,o;for(s=r-22;so&&(v=y);if(p<1||p>o)p=" ";b=c>=s&&c=r+7)u.addClass(h);else switch(o){case 0:a=t.one("#"+s+"_0_30"),i>=30?(a.set("text","30"),a.removeClass(y).addClass(m)):(a.setContent(" "),a.addClass(y).addClass(m));break;case 1:a=t.one("#"+s+"_1_31"),i>=31?(a.set("text","31"),a.removeClass(y).addClass(m)):(a.setContent(" "),a.removeClass(m).addClass(y));break;case 6:a=t.one("#"+s+"_6_29"),i>=29?(a.set("text","29"),a.removeClass(y).addClass(m)):(a.setContent(" "),a.removeClass(m).addClass(y));break;case 7:a=t.one("#"+s+"_7_30"),i>=30?(a.set("text","30"),a.removeClass(y).addClass(m)):(a.setContent(" "),a.removeClass(m).addClass(y));break;case 8:a=t.one("#"+s+"_8_31"),i>=31?(a.set("text","31"),a.removeClass(y).addClass(m)):(a.setContent(" "),a.removeClass(m).addClass(y))}}this._paneProperties[s].cutoffCol=r,this._paneProperties[s].daysInMonth= -i,this._paneProperties[s].paneDate=e,t.setStyle("visibility","visible")},_updateCalendarHeader:function(t){var n="",r=this.get("headerRenderer");return e.Lang.isString(r)?n=O.format(t,{format:r}):r instanceof Function&&(n=r.call(this,t)),n},_initCalendarHeader:function(e){return x(x(M.HEADER_TEMPLATE,{calheader:this._updateCalendarHeader(e),calendar_id:this._calendarId}),M.CALENDAR_STRINGS)},_initCalendarHTML:function(t){function o(){return i=this._initCalendarPane(O.addMonths(t,r),n.calendar_id+"_pane_"+r),r++,i}var n={},r=0,i,s;return n.header_template=this._initCalendarHeader(t),n.calendar_id=this._calendarId,n.body_template=x(x(M.CONTENT_TEMPLATE,n),M.CALENDAR_STRINGS),s=n.body_template.replace(/\{calendar_grid_template\}/g,e.bind(o,this)),this._paneNumber=r,s}},{CALENDAR_STRINGS:{calendar_grid_class:i,calendar_body_class:u,calendar_hd_class:a,calendar_hd_label_class:f,calendar_weekdayrow_class:l,calendar_weekday_class:c,calendar_row_class:v,calendar_day_class:m,calendar_dayanchor_class:b,calendar_pane_class:w,calendar_right_grid_class:o,calendar_left_grid_class:s,calendar_status_class:E},CONTENT_TEMPLATE:'
              {header_template}
              {calendar_grid_template}
              ',ONE_PANE_TEMPLATE:'
              {header_template}
              {calendar_grid_template}
              ',TWO_PANE_TEMPLATE:'
              {header_template}
              {calendar_grid_template}
              {calendar_grid_template}
              ',THREE_PANE_TEMPLATE:'
              {header_template}
              {calendar_grid_template}
              {calendar_grid_template}
              {calendar_grid_template}
              ',CALENDAR_GRID_TEMPLATE:'
              {weekday_row_template}{body_template}
              ',HEADER_TEMPLATE:'
              {calheader}
              ',WEEKDAY_ROW_TEMPLATE:'{weekday_row}',CALDAY_ROW_TEMPLATE:'{calday_row}',WEEKDAY_TEMPLATE:'{weekdayname}',CALDAY_TEMPLATE:'{day_content}',NAME:"calendarBase",ATTRS:{tabIndex:{value:1},date:{value:new Date,setter:function(e){var t=this._normalizeDate(e);return O.areEqual(t,this.get("date"))?this.get("date"):t}},showPrevMonth:{value:!1},showNextMonth:{value:!1},strings:{valueFn:function(){return e.Intl.get("calendar-base")}},headerRenderer:{value:"%B %Y"},enabledDatesRule:{value:null},disabledDatesRule:{value:null},selectedDates:{readOnly:!0,getter:function(){return this._getSelectedDatesList()}},customRenderer:{lazyAdd:!1,value:{},setter:function(e){this._rules=e.rules,this._filterFunction=e.filterFunction}}}})},"3.9.1",{requires:["widget","datatype-date","datatype-date-math","cssgrids"],lang:["de","en","es","es-AR","fr","it","ja","nb-NO","nl","pt-BR","ru","zh-HANT-TW"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base.js deleted file mode 100644 index 2c6bd97ffe7..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base",function(e){e.Intl.add("calendar-base","",{weekdays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],short_weekdays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],very_short_weekdays:["Su","Mo","Tu","We","Th","Fr","Sa"],first_weekday:0,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_de.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_de.js deleted file mode 100644 index 51748daf036..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_de.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_de",function(e){e.Intl.add("calendar-base","de",{weekdays:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],very_short_weekdays:["So","Mo","Di","Mi","Do","Fr","Sa"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_en.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_en.js deleted file mode 100644 index 70e1e75e852..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_en.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_en",function(e){e.Intl.add("calendar-base","en",{weekdays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],short_weekdays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],very_short_weekdays:["Su","Mo","Tu","We","Th","Fr","Sa"],first_weekday:0,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_es-AR.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_es-AR.js deleted file mode 100644 index 94cadad4174..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_es-AR.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_es-AR",function(e){e.Intl.add("calendar-base","es-AR",{weekdays:["Domingo","Lunes","Martes","Mi\u00e9rcoles","Jueves","Viernes","S\u00e1bado"],short_weekdays:["Dom","Lun","Mar","Mie","Jue","Vie","Sab"],very_short_weekdays:["Do","Lu","Ma","Mi","Ju","Vi","Sa"],first_weekday:0,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_es.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_es.js deleted file mode 100644 index 887a18d3085..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_es.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_es",function(e){e.Intl.add("calendar-base","es",{weekdays:["Domingo","Lunes","Martes","Mi\u00e9rcoles","Jueves","Viernes","S\u00e1bado"],short_weekdays:["Dom","Lun","Mar","Mie","Jue","Vie","Sab"],very_short_weekdays:["Do","Lu","Ma","Mi","Ju","Vi","Sa"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_fr.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_fr.js deleted file mode 100644 index 86b50df17a3..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_fr.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_fr",function(e){e.Intl.add("calendar-base","fr",{weekdays:["Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"],short_weekdays:["Dim","Lun","Mar","Mer","Jeu","Ven","Sam"],very_short_weekdays:["Di","Lu","Ma","Me","Je","Ve","Sa"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_it.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_it.js deleted file mode 100644 index b0e7dccf7c4..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_it.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_it",function(e){e.Intl.add("calendar-base","it",{weekdays:["Domenica","Luned\u00ec","Marted\u00ec","Mercoled\u00ec","Gioved\u00ec","Venerd\u00ec","Sabato"],short_weekdays:["Dom","Lun","Mar","Mer","Gio","Ven","Sab"],very_short_weekdays:["Do","Lu","Ma","Me","Gi","Ve","Sa"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_ja.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_ja.js deleted file mode 100644 index 9b6cf028c05..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_ja.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_ja",function(e){e.Intl.add("calendar-base","ja",{weekdays:["\u65e5\u66dc\u65e5","\u6708\u66dc\u65e5","\u706b\u66dc\u65e5","\u6c34\u66dc\u65e5","\u6728\u66dc\u65e5","\u91d1\u66dc\u65e5","\u571f\u66dc\u65e5"],short_weekdays:["\u65e5\u66dc","\u6708\u66dc","\u706b\u66dc","\u6c34\u66dc","\u6728\u66dc","\u91d1\u66dc","\u571f\u66dc"],very_short_weekdays:["\u65e5","\u6708","\u706b","\u6c34","\u6728","\u91d1","\u571f"],first_weekday:0,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_nb-NO.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_nb-NO.js deleted file mode 100644 index 8a3af25ff14..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_nb-NO.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_nb-NO",function(e){e.Intl.add("calendar-base","nb-NO",{weekdays:["S\u00f8ndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","L\u00f8rdag"],very_short_weekdays:["S\u00f8","Ma","Ti","On","To","Fr","L\u00f8"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_nl.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_nl.js deleted file mode 100644 index 1796e64653b..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_nl.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_nl",function(e){e.Intl.add("calendar-base","nl",{weekdays:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],short_weekdays:["zon","maan","dins","woens","don","vrij","zat"],very_short_weekdays:["zo","ma","di","woe","do","vr","za"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_pt-BR.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_pt-BR.js deleted file mode 100644 index bbd295ca942..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_pt-BR.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_pt-BR",function(e){e.Intl.add("calendar-base","pt-BR",{weekdays:["Domingo","Segunda","Ter\u00e7a","Quarta","Quinta","Sexta","S\u00e1bado"],short_weekdays:["Dom","Seg","Ter","Qua","Qui","Sex","Sab"],very_short_weekdays:["Dom","Seg","Ter","Qua","Qui","Sex","Sab"],first_weekday:0,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_ru.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_ru.js deleted file mode 100644 index 8dad70cdf79..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_ru.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_ru",function(e){e.Intl.add("calendar-base","ru",{weekdays:["\u0412\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435","\u041f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a","\u0412\u0442\u043e\u0440\u043d\u0438\u043a","\u0421\u0440\u0435\u0434\u0430","\u0427\u0435\u0442\u0432\u0435\u0440\u0433","\u041f\u044f\u0442\u043d\u0438\u0446\u0430","\u0421\u0443\u0431\u0431\u043e\u0442\u0430"],very_short_weekdays:["\u0412\u0441","\u041f\u043d","\u0412\u0442","\u0421\u0440","\u0427\u0442","\u041f\u0442","\u0421\u0431"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_zh-HANT-TW.js b/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_zh-HANT-TW.js deleted file mode 100644 index d7dd63a0766..00000000000 --- a/lib/yuilib/3.9.1/build/calendar-base/lang/calendar-base_zh-HANT-TW.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar-base_zh-HANT-TW",function(e){e.Intl.add("calendar-base","zh-HANT-TW",{weekdays:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],short_weekdays:["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"],very_short_weekdays:["\u65e5","\u4e00","\u4e8c","\u4e09","\u56db","\u4e94","\u516d"],first_weekday:0,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/calendar-min.js b/lib/yuilib/3.9.1/build/calendar/calendar-min.js deleted file mode 100644 index 124eba36625..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/calendar-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("calendar",function(e,t){function b(){b.superclass.constructor.apply(this,arguments)}var n=e.ClassNameManager.getClassName,r="calendar",i=40,s=38,o=37,u=39,a=13,f=32,l=n(r,"day-selected"),c=n(r,"day-highlighted"),h=n(r,"day"),p=n(r,"prevmonth-day"),d=n(r,"nextmonth-day"),v=n(r,"grid"),m=e.DataType.Date,g=n(r,"pane"),y=e.UA.os;e.Calendar=e.extend(b,e.CalendarBase,{_keyEvents:[],_highlightedDateNode:null,_lastSelectedDate:null,initializer:function(){this.plug(e.Plugin.CalendarNavigator),this._keyEvents=[],this._highlightedDateNode=null,this._lastSelectedDate=null},_bindCalendarEvents:function(){var e=this.get("contentBox"),t=e.one("."+g);t.on("selectstart",this._preventSelectionStart),t.delegate("click",this._clickCalendar,"."+h+", ."+p+", ."+d,this),t.delegate("keydown",this._keydownCalendar,"."+v,this),t.delegate("focus",this._focusCalendarGrid,"."+v,this),t.delegate("focus",this._focusCalendarCell,"."+h,this),t.delegate("blur",this._blurCalendarGrid,"."+v+",."+h,this)},_preventSelectionStart:function(e){e.preventDefault()},_highlightDateNode:function(e){this._unhighlightCurrentDateNode();var t=this._dateToNode(e);t.focus(),t.addClass(c)},_unhighlightCurrentDateNode:function(){var e=this.get("contentBox").all("."+c);e&&e.removeClass(c)},_getGridNumber:function(e){var t=e.get("id").split("_").reverse();return parseInt(t[0],10)},_blurCalendarGrid:function(){this._unhighlightCurrentDateNode()},_focusCalendarCell:function(e){this._highlightedDateNode=e.target,e.stopPropagation()},_focusCalendarGrid:function(){this._unhighlightCurrentDateNode(),this._highlightedDateNode=null},_keydownCalendar:function(e){var t=this._getGridNumber(e.target),n=this._highlightedDateNode?this._nodeToDate(this._highlightedDateNode):null,r=e.keyCode,c=0,h="",p,d,v,g,y;switch(r){case i:c=7,h="s";break;case s:c=-7,h="n";break;case o:c=-1,h="w";break;case u:c=1,h="e";break;case f:case a:e.preventDefault();if(this._highlightedDateNode){p=this.get("selectionMode");if(p==="single"&&!this._highlightedDateNode.hasClass(l))this._clearSelection(!0),this._addDateToSelection(n);else if(p==="multiple"||p==="multiple-sticky")this._highlightedDateNode.hasClass(l)?this._removeDateFromSelection(n):this._addDateToSelection(n)}}if(r===i||r===s||r===o||r===u)n||(n=m.addMonths(this.get("date"),t),c=0),e.preventDefault(),d=m.addDays(n,c),v=this.get("date"),g=m.addMonths(this.get("date"),this._paneNumber-1),y=new Date(g),g.setDate(m.daysInMonth(g)),m.isInRange(d,v,g)?this._highlightDateNode(d):m.isGreater(v,d)?m.isGreaterOrEqual(this.get("minimumDate"),v)||(this.set("date",m.addMonths(v,-1)),this._highlightDateNode(d)):m.isGreater(d,g)&&(m.isGreaterOrEqual(y,this.get("maximumDate"))||(this.set("date",m.addMonths(v,1)),this._highlightDateNode(d)))},_clickCalendar:function(e){var t=e.currentTarget,n=t.hasClass(h)&&!t.hasClass(p)&&!t.hasClass(d),r=t.hasClass(l),i;switch(this.get("selectionMode")){case"single":n&&(r||(this._clearSelection(!0),this._addDateToSelection(this._nodeToDate(t))));break;case"multiple-sticky":n&&(r?this._removeDateFromSelection(this._nodeToDate(t)):this._addDateToSelection(this._nodeToDate(t)));break;case"multiple":n&&(!e.metaKey&&!e.ctrlKey&&!e.shiftKey?(this._clearSelection(!0),this._lastSelectedDate=this._nodeToDate(t),this._addDateToSelection(this._lastSelectedDate)):(y==="macintosh"&&e.metaKey||y!=="macintosh"&&e.ctrlKey)&&!e.shiftKey?r?(this._removeDateFromSelection(this._nodeToDate(t)),this._lastSelectedDate=null):(this._lastSelectedDate=this._nodeToDate(t),this._addDateToSelection(this._lastSelectedDate)):(y==="macintosh"&&e.metaKey||y!=="macintosh"&&e.ctrlKey)&&e.shiftKey?this._lastSelectedDate?(i=this._nodeToDate(t),this._addDateRangeToSelection(i,this._lastSelectedDate),this._lastSelectedDate=i):(this._lastSelectedDate=this._nodeToDate(t),this._addDateToSelection(this._lastSelectedDate)):e.shiftKey&&(this._lastSelectedDate?(i=this._nodeToDate(t),this._clearSelection(!0),this._addDateRangeToSelection(i,this._lastSelectedDate),this._lastSelectedDate=i):(this._clearSelection(!0),this._lastSelectedDate=this._nodeToDate(t),this._addDateToSelection(this._lastSelectedDate))))}n?this.fire("dateClick",{cell:t,date:this._nodeToDate(t)}):t.hasClass(p)?this.fire("prevMonthClick"):t.hasClass(d)&&this.fire("nextMonthClick")},subtractMonth:function(e){return this.set("date",m.addMonths(this.get("date"),-1)),e&&e.halt(),this},subtractYear:function(e){return this.set("date",m.addYears(this.get("date"),-1)),e&&e.halt(),this},addMonth:function(e){return this.set("date",m.addMonths(this.get("date"),1)),e&&e.halt(),this},addYear:function(e){return this.set("date",m.addYears(this.get("date"),1)),e&&e.halt(),this}},{NAME:"calendar",ATTRS:{selectionMode:{value:"single"},date:{value:new Date,lazyAdd:!1,setter:function(e){var t=this._normalizeDate(e),n=m.addMonths(t,this._paneNumber-1),r=this.get("minimumDate"),i=this.get("maximumDate"),s;if((!r||m.isGreaterOrEqual(t,r))&&(!i||m.isGreaterOrEqual(i,n)))return t;if(r&&m.isGreater(r,t))return r;if(i&&m.isGreater(n,i))return s=m.addMonths(i,-1*(this._paneNumber-1)),s}},minimumDate:{value:null,setter:function(e){if(e){var t=this.get("date"),n=this._normalizeDate(e);return t&&!m.isGreaterOrEqual(t,n)&&this.set("date",n),n}return this._normalizeDate(e)}},maximumDate:{value:null,setter:function(e){if(e){var t=this.get("date"),n=this._normalizeDate(e);return t&&!m.isGreaterOrEqual(e,m.addMonths(t,this._paneNumber-1))&&this.set("date",m.addMonths(n,-1*(this._paneNumber-1))),n}return e}}}})},"3.9.1",{requires:["calendar-base","calendarnavigator"],lang:["de","en","es","es-AR","fr","it","ja","nb-NO","nl","pt-BR","ru","zh-HANT-TW"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar.js deleted file mode 100644 index 354f46a79e4..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar",function(e){e.Intl.add("calendar","",{weekdays:["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],short_weekdays:["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],very_short_weekdays:["Mo","Tu","We","Th","Fr","Sa","Su"]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_de.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_de.js deleted file mode 100644 index 1a02820faea..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_de.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_de",function(e){e.Intl.add("calendar","de",{weekdays:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],very_short_weekdays:["So","Mo","Di","Mi","Do","Fr","Sa"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_en.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_en.js deleted file mode 100644 index ae987f0f3de..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_en.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_en",function(e){e.Intl.add("calendar","en",{weekdays:["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],short_weekdays:["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],very_short_weekdays:["Mo","Tu","We","Th","Fr","Sa","Su"]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_es-AR.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_es-AR.js deleted file mode 100644 index 83569d64c57..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_es-AR.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_es-AR",function(e){e.Intl.add("calendar","es-AR",{weekdays:["Domingo","Lunes","Martes","Mi\u00e9rcoles","Jueves","Viernes","S\u00e1bado"],short_weekdays:["Dom","Lun","Mar","Mie","Jue","Vie","Sab"],very_short_weekdays:["Do","Lu","Ma","Mi","Ju","Vi","Sa"]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_es.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_es.js deleted file mode 100644 index 09ac5813197..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_es.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_es",function(e){e.Intl.add("calendar","es",{weekdays:["Domingo","Lunes","Martes","Mi\u00e9rcoles","Jueves","Viernes","S\u00e1bado"],short_weekdays:["Dom","Lun","Mar","Mie","Jue","Vie","Sab"],very_short_weekdays:["Do","Lu","Ma","Mi","Ju","Vi","Sa"]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_fr.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_fr.js deleted file mode 100644 index 3db662195d0..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_fr.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_fr",function(e){e.Intl.add("calendar","fr",{weekdays:["Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"],short_weekdays:["Dim","Lun","Mar","Mer","Jeu","Ven","Sam"],very_short_weekdays:["Di","Lu","Ma","Me","Je","Ve","Sa"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_it.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_it.js deleted file mode 100644 index 9a54ca2573d..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_it.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_it",function(e){e.Intl.add("calendar","it",{weekdays:["Domenica","Luned\u00ec","Marted\u00ec","Mercoled\u00ec","Gioved\u00ec","Venerd\u00ec","Sabato"],short_weekdays:["Dom","Lun","Mar","Mer","Gio","Ven","Sab"],very_short_weekdays:["Do","Lu","Ma","Me","Gi","Ve","Sa"]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_ja.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_ja.js deleted file mode 100644 index dd7e93c10e8..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_ja.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_ja",function(e){e.Intl.add("calendar","ja",{weekdays:["\u6708\u66dc\u65e5","\u706b\u66dc\u65e5","\u6c34\u66dc\u65e5","\u6728\u66dc\u65e5","\u91d1\u66dc\u65e5","\u571f\u66dc\u65e5","\u65e5\u66dc\u65e5"],short_weekdays:["\u6708\u66dc","\u706b\u66dc","\u6c34\u66dc","\u6728\u66dc","\u91d1\u66dc","\u571f\u66dc","\u65e5\u66dc"],very_short_weekdays:["\u6708","\u706b","\u6c34","\u6728","\u91d1","\u571f","\u65e5"]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_nb-NO.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_nb-NO.js deleted file mode 100644 index 36875bb2a1a..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_nb-NO.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_nb-NO",function(e){e.Intl.add("calendar","nb-NO",{weekdays:["S\u00f8ndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","L\u00f8rdag"],very_short_weekdays:["S\u00f8","Ma","Ti","On","To","Fr","L\u00f8"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_nl.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_nl.js deleted file mode 100644 index 2b9677b4ef6..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_nl.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_nl",function(e){e.Intl.add("calendar","nl",{weekdays:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],short_weekdays:["zon","maan","dins","woens","don","vrij","zat"],very_short_weekdays:["zo","ma","di","woe","do","vr","za"]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_pt-BR.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_pt-BR.js deleted file mode 100644 index 23d20d73c4b..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_pt-BR.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_pt-BR",function(e){e.Intl.add("calendar","pt-BR",{weekdays:["Domingo","Segunda","Ter\u00e7a","Quarta","Quinta","Sexta","S\u00e1bado"],short_weekdays:["Dom","Seg","Ter","Qua","Qui","Sex","Sab"],very_short_weekdays:["Dom","Seg","Ter","Qua","Qui","Sex","Sab"]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_ru.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_ru.js deleted file mode 100644 index d15085e8e8c..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_ru.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_ru",function(e){e.Intl.add("calendar","ru",{weekdays:["\u0412\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435","\u041f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a","\u0412\u0442\u043e\u0440\u043d\u0438\u043a","\u0421\u0440\u0435\u0434\u0430","\u0427\u0435\u0442\u0432\u0435\u0440\u0433","\u041f\u044f\u0442\u043d\u0438\u0446\u0430","\u0421\u0443\u0431\u0431\u043e\u0442\u0430"],very_short_weekdays:["\u0412\u0441","\u041f\u043d","\u0412\u0442","\u0421\u0440","\u0427\u0442","\u041f\u0442","\u0421\u0431"],first_weekday:1,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendar/lang/calendar_zh-HANT-TW.js b/lib/yuilib/3.9.1/build/calendar/lang/calendar_zh-HANT-TW.js deleted file mode 100644 index 603050dfcfc..00000000000 --- a/lib/yuilib/3.9.1/build/calendar/lang/calendar_zh-HANT-TW.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/calendar_zh-HANT-TW",function(e){e.Intl.add("calendar","zh-HANT-TW",{weekdays:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],short_weekdays:["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"],very_short_weekdays:["\u65e5","\u4e00","\u4e8c","\u4e09","\u56db","\u4e94","\u516d"],first_weekday:0,weekends:[0,6]})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/calendarnavigator/calendarnavigator-min.js b/lib/yuilib/3.9.1/build/calendarnavigator/calendarnavigator-min.js deleted file mode 100644 index c2386ecc52f..00000000000 --- a/lib/yuilib/3.9.1/build/calendarnavigator/calendarnavigator-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("calendarnavigator",function(e,t){function v(){v.superclass.constructor.apply(this,arguments)}var n="contentBox",r="host",i=e.ClassNameManager.getClassName,s=e.Lang.sub,o=e.Node,u=o.create,a="calendar",f="calendarnav",l=i(a,"header"),c=i(f,"prevmonth"),h=i(f,"nextmonth"),p=i(f,"month-disabled"),d=e.DataType.Date;v.NS="navigator",v.NAME="pluginCalendarNavigator",v.ATTRS={shiftByMonths:{value:1}},v.CALENDARNAV_STRINGS={prev_month_class:c,next_month_class:h},v.PREV_MONTH_CONTROL_TEMPLATE='<',v.NEXT_MONTH_CONTROL_TEMPLATE='>',e.extend(v,e.Plugin.Base,{_eventAttachments:{},_controls:{},initializer:function(){this._controls={},this._eventAttachments={},this.afterHostMethod("renderUI",this._initNavigationControls)},destructor:function(){},_focusNavigation:function(e){e.currentTarget.focus()},_subtractMonths:function(e){if(e.type==="click"||e.type==="keydown"&&(e.keyCode===13||e.keyCode===32)){var t=this.get(r),n=t.get("date");t.set("date",d.addMonths(n,-1*this.get("shiftByMonths"))),e.preventDefault()}},_addMonths:function(e){if(e.type==="click"||e.type==="keydown"&&(e.keyCode===13||e.keyCode===32)){var t=this.get(r),n=t.get("date");t.set("date",d.addMonths(n,this.get("shiftByMonths"))),e.preventDefault()}},_updateControlState:function(){var e=this.get(r);d.areEqual(e.get("minimumDate"),e.get("date"))?(this._eventAttachments.prevMonth&&(this._eventAttachments.prevMonth.detach(),this._eventAttachments.prevMonth=!1),this._controls.prevMonth.hasClass(p)||this._controls.prevMonth.addClass(p).setAttribute("aria-disabled","true")):(this._eventAttachments.prevMonth||(this._eventAttachments.prevMonth=this._controls.prevMonth.on(["click","keydown"],this._subtractMonths,this)),this._controls.prevMonth.hasClass(p)&&this._controls.prevMonth.removeClass(p).setAttribute("aria-disabled","false")),d.areEqual(e.get("maximumDate"),d.addMonths(e.get("date"),e._paneNumber-1))?(this._eventAttachments.nextMonth&&(this._eventAttachments.nextMonth.detach(),this._eventAttachments.nextMonth=!1),this._controls.nextMonth.hasClass(p)||this._controls.nextMonth.addClass(p).setAttribute("aria-disabled","true")):(this._eventAttachments.nextMonth||(this._eventAttachments.nextMonth=this._controls.nextMonth.on(["click","keydown"],this._addMonths,this)),this._controls.nextMonth.hasClass(p)&&this._controls.nextMonth.removeClass(p).setAttribute("aria-disabled","false")),this._controls.prevMonth.on(["click","keydown"],this._focusNavigation,this),this._controls.nextMonth.on(["click","keydown"],this._focusNavigation,this)},_renderPrevControls:function(){var e=u(s(v.PREV_MONTH_CONTROL_TEMPLATE,v.CALENDARNAV_STRINGS));return e.on("selectstart",this.get(r)._preventSelectionStart),e},_renderNextControls:function(){var e=u(s(v.NEXT_MONTH_CONTROL_TEMPLATE,v.CALENDARNAV_STRINGS));return e.on("selectstart",this.get(r)._preventSelectionStart),e},_initNavigationControls:function(){var e=this.get(r),t=e.get(n).one("."+l);v.CALENDARNAV_STRINGS.control_tabindex=e.get("tabIndex"),v.CALENDARNAV_STRINGS.prev_month_arialabel="Go to previous month",v.CALENDARNAV_STRINGS.next_month_arialabel="Go to next month",this._controls.prevMonth=this._renderPrevControls(),this._controls.nextMonth=this._renderNextControls(),this._updateControlState(),e.after("dateChange",this._updateControlState,this),e.after("minimumDateChange",this._updateControlState,this),e.after("maximumDateChange",this._updateControlState,this),t.prepend(this._controls.prevMonth),t.append(this._controls.nextMonth)}}),e.namespace("Plugin").CalendarNavigator=v},"3.9.1",{requires:["plugin","classnamemanager","datatype-date","node"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/charts-base/charts-base-min.js b/lib/yuilib/3.9.1/build/charts-base/charts-base-min.js deleted file mode 100644 index 19f4f1fb44a..00000000000 --- a/lib/yuilib/3.9.1/build/charts-base/charts-base-min.js +++ /dev/null @@ -1,9 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("charts-base",function(e,t){function f(){}function l(t){return t.type!=="pie"?new e.CartesianChart(t):new e.PieChart(t)}var n=e.config,r=n.win,i=n.doc,s=e.Lang,o=s.isString,u=e.ClassNameManager.getClassName,a=u("seriesmarker");e.Gridlines=e.Base.create("gridlines",e.Base,[e.Renderer],{_path:null,remove:function(){var e=this._path;e&&e.destroy()},draw:function(){this.get("axis")&&this.get("graph")&&this._drawGridlines()},_drawGridlines:function(){var t,n=this.get("axis"),r=n.get("position"),i,s=0,o,u=this.get("direction"),a=this.get("graph"),f=a.get("width"),l=a.get("height"),c=this.get("styles").line,h=c.color,p=c.weight,d=c.alpha,v=this.get("count"),m,g;if(isFinite(f)&&isFinite(l)&&f>0&&l>0){v&&e.Lang.isNumber(v)?i=this._getPoints(v,f,l):r!=="none"&&n&&n.get("tickPoints")?i=n.get("tickPoints"):i=this._getPoints(n.get("styles").majorUnit.count,f,l),o=i.length,t=a.get("gridlines"),t.set("width",f),t.set("height",l),t.set("stroke",{weight:p,color:h,opacity:d}),u==="vertical"?(g=this._verticalLine,m=l):(g=this._horizontalLine,m=f);for(s=0;se&&(n=t[e]),n},getSeriesByKey:function(e){var t=this._seriesDictionary,n;return t&&t.hasOwnProperty(e)&&(n=t[e]),n},addDispatcher:function(e){this._dispatchers||(this._dispatchers=[]),this._dispatchers.push(e)},_seriesCollection:null,_seriesDictionary:null,_parseSeriesCollection:function(t){if(!t)return;var n=t.length,r=0,i,s;this._seriesCollection=[],this._seriesDictionary={},this.seriesTypes=[];for(;r-1&&this._dispatchers.splice(i,1),this._dispatchers.length<1&&(r=this.get("graphic"),r.get("autoDraw")||r._redraw(),this.fire("chartRendered"))},_getDefaultStyles:function(){var e={background:{shape:"rect",fill:{color:"#faf9f2"},border:{color:"#dad8c9",weight:1}}};return e},destructor:function(){this._graphic&&(this._graphic.destroy(),this._graphic=null),this._background&&(this._background.get("graphic").destroy(),this._background=null),this._gridlines&&(this._gridlines.get("graphic").destroy(),this._gridlines=null)}},{ATTRS:{x:{setter:function(e){return this.get("boundingBox").setStyle("left",e+"px"),e}},y:{setter:function(e){return this.get("boundingBox").setStyle("top",e+"px"),e}},chart:{getter:function(){var e=this._state.chart||this;return e}},seriesCollection:{getter:function(){return this._seriesCollection},setter:function(e){return this._parseSeriesCollection(e),this._seriesCollection}},showBackground:{value:!0},seriesDictionary:{readOnly:!0,getter:function(){return this._seriesDictionary}},horizontalGridlines:{value:null,setter:function(t){var n,r,i=this.get("horizontalGridlines");i&&i instanceof e.Gridlines&&i.remove();if(t instanceof e.Gridlines)return i=t,t.set("graph",this),t;if(t){n={direction:"horizonal",graph:this};for(r in t)t.hasOwnProperty(r)&&(n[r]=t[r]);return i=new e.Gridlines(n),i}}},verticalGridlines:{value:null,setter:function(t){var n,r,i=this.get("verticalGridlines");i&&i instanceof e.Gridlines&&i.remove();if(t instanceof e.Gridlines)return i=t,t.set("graph",this),t;if(t){n={direction:"vertical",graph:this};for(r in t)t.hasOwnProperty(r)&&(n[r]=t[r]);return i=new e.Gridlines(n),i}}},background:{getter:function(){return this._background||(this._backgroundGraphic=new e.Graphic({render:this.get("contentBox")}),this._backgroundGraphic.get("node").style.zIndex=0,this._background=this._backgroundGraphic.addShape({type:"rect"})),this._background}},gridlines:{readOnly:!0,getter:function(){return this._gridlines||(this._gridlinesGraphic=new e.Graphic({render:this.get("contentBox")}),this._gridlinesGraphic.get("node").style.zIndex=1,this._gridlines=this._gridlinesGraphic.addShape({type:"path"})),this._gridlines}},graphic:{readOnly:!0,getter:function(){return this._graphic||(this._graphic=new e.Graphic({render:this.get("contentBox")}),this._graphic.get("node").style.zIndex=2,this._graphic.set("autoDraw",!1)),this._graphic}},groupMarkers:{value:!1}}}),f.ATTRS={dataProvider:{lazyAdd:!1,valueFn:function(){var e=[];return this._seriesKeysExplicitlySet||(this._seriesKeys=this._buildSeriesKeys(e)),e},setter:function(e){var t=this._setDataValues(e);return this._seriesKeysExplicitlySet||(this._seriesKeys=this._buildSeriesKeys(t)),t}},seriesKeys:{getter:function(){return this._seriesKeys},setter:function(e){return this._seriesKeysExplicitlySet=!0,this._seriesKeys=e,e}},ariaLabel:{value:"Chart Application",setter:function(e){var t=this.get("contentBox");return t&&t.setAttribute("aria-label",e),e}},ariaDescription:{value:"Use the up and down keys to navigate between series. Use the left and right keys to navigate through items in a series.",setter:function(e){return this._description&&(this._description.setContent(""),this._description.appendChild(i.createTextNode(e))),e}},tooltip:{valueFn:"_getTooltip",setter:function(e){return this._updateTooltip(e)}},categoryKey:{value:"category"},categoryType:{value:"category"},interactionType:{value:"marker"},axesCollection:{},graph:{valueFn:"_getGraph"},groupMarkers:{value:!1}},f.prototype={_groupMarkersChangeHandler:function(e){var t=this.get("graph"),n=e.newVal;t&&t.set("groupMarkers",n)},_itemRendered:function(t){this._itemRenderQueue=this._itemRenderQueue.splice(1+e.Array.indexOf(this._itemRenderQueue,t.currentTarget),1),this._itemRenderQueue.length<1&&this._redraw()},_getGraph:function(){var t=new e.Graph({chart:this,groupMarkers:this.get("groupMarkers")});return t.after("chartRendered",e.bind(function(){this.fire("chartRendered")},this)),t},getSeries:function(e){var t=null,n=this.get("graph");return n&&(s.isNumber(e)?t=n.getSeriesByIndex(e):t=n.getSeriesByKey(e)),t},getAxisByKey:function(e){var t,n=this.get("axes");return n&&n.hasOwnProperty(e)&&(t=n[e]),t},getCategoryAxis:function(){var e,t=this.get("categoryKey"),n=this.get("axes");return n.hasOwnProperty(t)&&(e=n[t]),e},_direction:"horizontal",_dataProvider:null,_setDataValues:function(e){if(s.isArray(e[0])){var t,n=[],r=e[0],i=0,o=r.length,u,a=e.length;for(;i
              "),n=e.UA.ie,r=n&&n<8?"rect(1px 1px 1px 1px)":"rect(1px, 1px, 1px, 1px)";return t.setStyle("position","absolute"),t.setStyle("height","1px" -),t.setStyle("width","1px"),t.setStyle("overflow","hidden"),t.setStyle("clip",r),t},syncUI:function(){this._redraw()},bindUI:function(){this.after("tooltipChange",e.bind(this._tooltipChangeHandler,this)),this.after("widthChange",this._sizeChanged),this.after("heightChange",this._sizeChanged),this.after("groupMarkersChange",this._groupMarkersChangeHandler);var t=this.get("tooltip"),n="mouseout",o="mouseover",u=this.get("contentBox"),f=this.get("interactionType"),l=0,c,h="."+a,p=r&&"ontouchstart"in r&&!(e.UA.chrome&&e.UA.chrome<6);e.on("keydown",e.bind(function(e){var t=e.keyCode,n=parseFloat(t),r;n>36&&n<41&&(e.halt(),r=this._getAriaMessage(n),this._liveRegion.setContent(""),this._liveRegion.appendChild(i.createTextNode(r)))},this),this.get("contentBox")),f==="marker"?(n=t.hideEvent,o=t.showEvent,p?(e.delegate("touchend",e.bind(this._markerEventDispatcher,this),u,h),e.on("touchend",e.bind(function(e){u.contains(e.target)&&e.halt(!0),this._activeMarker&&(this._activeMarker=null,this.hideTooltip(e))},this))):(e.delegate("mouseenter",e.bind(this._markerEventDispatcher,this),u,h),e.delegate("mousedown",e.bind(this._markerEventDispatcher,this),u,h),e.delegate("mouseup",e.bind(this._markerEventDispatcher,this),u,h),e.delegate("mouseleave",e.bind(this._markerEventDispatcher,this),u,h),e.delegate("click",e.bind(this._markerEventDispatcher,this),u,h),e.delegate("mousemove",e.bind(this._positionTooltip,this),u,h))):f==="planar"&&(p?this._overlay.on("touchend",e.bind(this._planarEventDispatcher,this)):(this._overlay.on("mousemove",e.bind(this._planarEventDispatcher,this)),this.on("mouseout",this.hideTooltip)));if(t){this.on("markerEvent:touchend",e.bind(function(e){var n=e.series.get("markers")[e.index];this._activeMarker&&n===this._activeMarker?(this._activeMarker=null,this.hideTooltip(e)):(this._activeMarker=n,t.markerEventHandler.apply(this,[e]))},this));if(n&&o&&n===o)this.on(f+"Event:"+n,this.toggleTooltip);else{o&&this.on(f+"Event:"+o,t[f+"EventHandler"]);if(n){if(s.isArray(n)){c=n.length;for(;l=T[h].start){p=h;break}N=l.length;for(h=0;h-1&&c.updateMarkerState("mouseout",d),C&&C[p]>-1&&(w&&!isNaN(p)&&p>-1&&c.updateMarkerState("mouseover",p),v=this.getSeriesItems(c,p),g.push(v.category),y.push(v.value),m.push(c));this._selectedIndex=p,p>-1?this.fire("planarEvent:mouseover",{categoryItem:g,valueItem:y,x:u,y:a,pageX:s,pageY:o,items:m,index:p,originEvent:e}):this.fire("planarEvent:mouseout")}},_type:"combo",_itemRenderQueue:null,_addToAxesRenderQueue:function(t){this._itemRenderQueue||(this._itemRenderQueue=[]),e.Array.indexOf(this._itemRenderQueue,t)<0&&this._itemRenderQueue.push(t)},_addToAxesCollection:function(e,t){var n=this.get(e+"AxesCollection");n||(n=[],this.set(e+"AxesCollection",n)),n.push(t)},_getDefaultSeriesCollection:function(){var e,t=this.get("dataProvider");return t&&(e=this._parseSeriesCollection()),e},_parseSeriesCollection:function(t){var n=this.get("direction"),r=[],i,s,o=[],u,a=this.get("seriesKeys").concat(),f,l,c,h=this.get("type"),p,d,v,m,g=[],y=this.get("categoryKey"),b=this.get("showMarkers"),w=this.get("showAreaFill"),E=this.get("showLines");t=t?t.concat():[],n==="vertical"?(i="yAxis",d="yKey",s="xAxis",v="xKey"):(i="xAxis",d="xKey",s="yAxis",v="yKey"),c=t.length;while(t&&t.length>0)u=t.shift(),p=this._getBaseAttribute(u,v),p?(l=e.Array.indexOf(a,p),l>-1?(a.splice(l,1),o.push(p),r.push(u)):g.push(u)):g.push(u);while(g.length>0)u=g.shift(),a.length>0?(p=a.shift(),this._setBaseAttribute(u,v,p),o.push(p),r.push(u)):u instanceof e.CartesianSeries&&u.destroy(!0);a.length>0&&(o=o.concat(a)),c=o.length;for(f=0;f0&&f.set("overlapGraph",!1),r[u]=f)}return r},_addAxes:function(){var t=this.get("axes"),n,r,i,s=this.get("width"),o=this.get("height"),u=e.Node.one(this._parentNode);this._axesCollection||(this._axesCollection=[]);for(n in t)t.hasOwnProperty(n)&&(r=t[n],r instanceof e.Axis&&(s||(this.set("width",u.get("offsetWidth")),s=this.get("width")),o||(this.set("height",u.get("offsetHeight")),o=this.get("height")),this._addToAxesRenderQueue(r),i=r.get("position"),this.get(i+"AxesCollection")?this.get(i+"AxesCollection").push(r):this.set(i+"AxesCollection",[r]),this._axesCollection.push(r),r.get("keys").hasOwnProperty(this.get("categoryKey"))&&this.set("categoryAxis",r),r.render(this.get("contentBox"))))},_addSeries:function(){var e=this.get("graph");e.render(this.get("contentBox"))},_addGridlines:function(){var t=this.get("graph"),n=this.get("horizontalGridlines"),r=this.get("verticalGridlines"),i=this.get("direction"),s=this.get("leftAxesCollection"),o=this.get("rightAxesCollection"),u=this.get("bottomAxesCollection"),a=this.get("topAxesCollection"),f,l=this.get("categoryAxis"),c,h;this._axesCollection&&(f=this._axesCollection.concat(),f.splice(e.Array.indexOf(f,l),1)),n&&(s&&s[0]?c=s[0]:o&&o[0]?c=o[0]:c=i==="horizontal"?l:f[0],!this._getBaseAttribute(n,"axis")&&c&&this._setBaseAttribute(n,"axis",c),this._getBaseAttribute(n,"axis")&&t.set("horizontalGridlines",n)),r&&(u&&u[0]?h=u[0]:a&&a[0]?h=a[0]:h=i==="vertical"?l:f[0],!this._getBaseAttribute(r,"axis")&&h&&this._setBaseAttribute(r,"axis",h),this._getBaseAttribute(r,"axis")&&t.set("verticalGridlines",r))},_getDefaultAxes:function(){var e;return this.get("dataProvider")&&(e=this._parseAxes()),e},_parseAxes:function(t){var n=this.get("categoryKey"),r,i,o,u={},a=[],f=this.get("categoryAxisName")||this.get("categoryKey"),l=this.get("valueAxisName"),c=this.get("seriesKeys").concat(),h,p,d,v,m,g=this.get("direction"),y,b,w=[],E=this.get("stacked")?"stacked":"numeric";g==="vertical"?(y="bottom",b="left"):(y="left",b="bottom");if(t)for(h in t)if(t.hasOwnProperty(h)){r=t[h],o=this._getBaseAttribute(r,"keys"),i=this._getBaseAttribute(r,"type");if(i==="time"||i==="category")f=h,this.set("categoryAxisName",h),s.isArray(o)&&o.length>0&&(n=o[0],this.set("categoryKey",n)),u[h]=r;else if(h===f)u[h]=r;else{u[h]=r;if(h!==l&&o&&s.isArray(o)){v=o.length;for(d=0;d-1&&c.splice(m,1),p=a.length;for(h=0;h-1&&c.splice(m,1);return u.hasOwnProperty(f)||(u[f]={}),this._getBaseAttribute(u[f],"keys")||this._setBaseAttribute(u[f],"keys",[n]),this._getBaseAttribute(u[f],"position")||this._setBaseAttribute(u[f],"position",b),this._getBaseAttribute(u[f],"type")||this._setBaseAttribute(u[f],"type",this.get("categoryType")),!u.hasOwnProperty(l)&&c&&c.length>0&&(u[l]={keys:c},w.push(u[l])),a.length>0&&(c.length>0?c=a.concat(c):c=a),u.hasOwnProperty(l)&&(this._getBaseAttribute(u[l],"position")||this._setBaseAttribute(u[l],"position",this._getDefaultAxisPosition(u[l],w,y)),this._setBaseAttribute(u[l],"type",E),this._setBaseAttribute(u[l],"keys",c)),this._seriesKeysExplicitlySet||(this._seriesKeys=c),u},_getDefaultAxisPosition:function(t,n,r){var i=this.get("direction"),s=e.Array.indexOf(n,t);return n[s-1]&&n[s-1].position&&(i==="horizontal"?n[s-1].position==="left"?r="right":n[s-1].position==="right"&&(r="left"):n[s-1].position==="bottom"?r="top":r="bottom"),r},getSeriesItems:function(e,t){var n=e.get("xAxis"),r=e.get("yAxis"),i=e.get("xKey"),s=e.get("yKey"),o,u;return this.get("direction")==="vertical"?(o={axis:r,key:s,value:r.getKeyValueAt(s,t)},u={axis:n,key:i,value:n.getKeyValueAt(i,t)}):(u={axis:r,key:s,value:r.getKeyValueAt(s,t)},o={axis:n,key:i,value:n.getKeyValueAt(i,t)}),o.displayName=e.get("categoryDisplayName"),u.displayName=e.get("valueDisplayName"),o.value=o.axis.getKeyValueAt(o.key,t),u.value=u.axis.getKeyValueAt(u.key,t),{category:o,value:u}},_sizeChanged:function(){if(this._axesCollection){var e=this._axesCollection,t=0,n=e.length;for(;t-1;--l)C.unshift(n),n+=o[l].get("width")}if(u){N=[],c=u.length,l=0;for(l=c-1;l>-1;--l)r+=u[l].get("width"),N.unshift(e-r)}if(a){k=[],c=a.length;for(l=c-1;l>-1;--l)k.unshift(i),i+=a[l].get("height")}if(f){L=[],c=f.length;for(l=c-1;l>-1;--l)s+=f[l].get("height"),L.unshift(t-s)}b=e-(n+r),w=t-(s+i),A.left=n,A.top=i,A.bottom=t-s,A.right=e-r;if(!x){v=this._getTopOverflow(o,u),m=this._getBottomOverflow(o,u),g=this._getLeftOverflow(f,a),y=this._getRightOverflow(f,a),T=v-i;if(T>0){A.top=v;if(k){l=0,c=k.length;for(;l0){A.bottom=t-m;if(L){l=0,c=L.length;for(;l0){A.left=g;if(C){l=0,c=C.length;for(;l0){A.right=e-y;if(N){l=0,c=N.length;for(;l1?(e===38?o=o<1?f-1:o-1:e===40&&(o=o>=f-1?0:o+1),this._itemIndex=-1):o=0,this._seriesIndex=o,n=this.getSeries(parseInt(o,10)),t=n.get("valueDisplayName")+" series."):(o>-1?(t="",n=this.getSeries(parseInt(o,10))):(o=0,this._seriesIndex=o,n=this.getSeries(parseInt(o,10)),t=n.get("valueDisplayName")+" series."),l=n._dataLength?n._dataLength:0,e===37?u=u>0?u-1:l-1:e===39&&(u=u>=l-1?0:u+1),this._itemIndex=u,r=this.getSeriesItems(n,u),i=r.category,s=r.value,i&&s&&i.value&&s.value?(t+=i.displayName+": "+i.axis.formatLabel.apply(this,[i.value,i.axis.get("labelFormat")])+", ",t+=s.displayName+": "+s.axis.formatLabel.apply(this,[s.value,s.axis.get("labelFormat")])+", "):t+="No data available.",t+=u+1+" of "+l+". "),t}},{ATTRS:{allowContentOverflow:{value:!1},axesStyles:{getter:function(){var t=this.get("axes"),n,r=this._axesStyles;if(t)for(n in t)t.hasOwnProperty(n)&&t[n]instanceof e.Axis&&(r||(r={}),r[n]=t[n].get("styles"));return r},setter:function(e){var t=this.get("axes"),n;for(n in e)e.hasOwnProperty(n)&&t.hasOwnProperty(n)&&this._setBaseAttribute(t[n],"styles",e[n])}},seriesStyles:{getter:function(){var e=this._seriesStyles,t=this.get("graph"),n,r;if(t){n=t.get("seriesDictionary");if(n){e={};for(r in n)n.hasOwnProperty(r)&&(e[r]=n[r].get("styles"))}}return e},setter:function(e){var t,n,r;if(s.isArray(e)){r=this.get("seriesCollection"),t=0,n=e.length;for(;t0?u-1:a-1:e===39&&(u=u>=a-1?0:u+1),this._itemIndex=u,r=this.getSeriesItems(i,u),n=r.category,s=r.value,f=i.getTotalValues(),l=Math.round(s.value/f*1e4)/100,n&&s?(t+=n.displayName+": "+n.axis.formatLabel.apply(this,[n.value,n.axis.get("labelFormat")])+", ",t+=s.displayName+": "+s.axis.formatLabel.apply(this,[s.value,s.axis.get("labelFormat")])+", ",t+="Percent of total "+s.displayName+": "+l+"%,"):t+="No data available,",t+=u+1+" of "+a+". ",t}},{ATTRS:{ariaDescription:{value:"Use the left and right keys to navigate through items.",setter:function(e){return this._description&&(this._description.setContent(""),this._description.appendChild(i.createTextNode(e))),e}},axes:{getter:function(){return this._axes},setter:function(e){this._parseAxes(e)}},seriesCollection:{lazyAdd:!1,getter:function(){return this._getSeriesCollection()},setter:function(e){return this._setSeriesCollection(e)}},type:{value:"pie"}}}),e.Chart=l},"3.9.1",{requires:["dom","event-mouseenter","event-touch","graphics-group","axes","series-pie" -,"series-line","series-marker","series-area","series-spline","series-column","series-bar","series-areaspline","series-combo","series-combospline","series-line-stacked","series-marker-stacked","series-area-stacked","series-spline-stacked","series-column-stacked","series-bar-stacked","series-areaspline-stacked","series-combo-stacked","series-combospline-stacked"]}); diff --git a/lib/yuilib/3.9.1/build/charts/charts-debug.js b/lib/yuilib/3.9.1/build/charts/charts-debug.js deleted file mode 100644 index b8287a48e57..00000000000 --- a/lib/yuilib/3.9.1/build/charts/charts-debug.js +++ /dev/null @@ -1,25 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add('charts', function (Y, NAME) { - -/** - * The Chart class is the basic application used to create a chart. - * - * @module charts - * @class Chart - * @constructor - */ -function Chart(cfg) -{ - if(cfg.type != "pie") - { - return new Y.CartesianChart(cfg); - } - else - { - return new Y.PieChart(cfg); - } -} -Y.Chart = Chart; - - -}, '3.9.1', {"requires": ["charts-base"]}); diff --git a/lib/yuilib/3.9.1/build/charts/charts-min.js b/lib/yuilib/3.9.1/build/charts/charts-min.js deleted file mode 100644 index 955e5e09ecd..00000000000 --- a/lib/yuilib/3.9.1/build/charts/charts-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("charts",function(e,t){function n(t){return t.type!="pie"?new e.CartesianChart(t):new e.PieChart(t)}e.Chart=n},"3.9.1",{requires:["charts-base"]}); diff --git a/lib/yuilib/3.9.1/build/charts/charts.js b/lib/yuilib/3.9.1/build/charts/charts.js deleted file mode 100644 index b8287a48e57..00000000000 --- a/lib/yuilib/3.9.1/build/charts/charts.js +++ /dev/null @@ -1,25 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add('charts', function (Y, NAME) { - -/** - * The Chart class is the basic application used to create a chart. - * - * @module charts - * @class Chart - * @constructor - */ -function Chart(cfg) -{ - if(cfg.type != "pie") - { - return new Y.CartesianChart(cfg); - } - else - { - return new Y.PieChart(cfg); - } -} -Y.Chart = Chart; - - -}, '3.9.1', {"requires": ["charts-base"]}); diff --git a/lib/yuilib/3.9.1/build/clickable-rail/assets/slider-base-core.css b/lib/yuilib/3.9.1/build/clickable-rail/assets/slider-base-core.css deleted file mode 100644 index 0bd472112f7..00000000000 --- a/lib/yuilib/3.9.1/build/clickable-rail/assets/slider-base-core.css +++ /dev/null @@ -1,32 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-slider, -.yui3-slider-rail { - /* xbrowser inline-block styles */ - display: -moz-inline-stack; /* FF2 */ - display: inline-block; - *display: inline; /* IE 7- (with zoom) */ - zoom: 1; - vertical-align: middle; -} - -.yui3-slider-content { - position: relative; - display: block; -} -.yui3-slider-rail { - position: relative; -} - -.yui3-slider-rail-cap-top, -.yui3-slider-rail-cap-left, -.yui3-slider-rail-cap-bottom, -.yui3-slider-rail-cap-right, -.yui3-slider-thumb, -.yui3-slider-thumb-image, -.yui3-slider-thumb-shadow { - position: absolute; -} - -.yui3-slider-thumb { - overflow: hidden; -} diff --git a/lib/yuilib/3.9.1/build/clickable-rail/assets/slider-core.css b/lib/yuilib/3.9.1/build/clickable-rail/assets/slider-core.css deleted file mode 100644 index 0bd472112f7..00000000000 --- a/lib/yuilib/3.9.1/build/clickable-rail/assets/slider-core.css +++ /dev/null @@ -1,32 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-slider, -.yui3-slider-rail { - /* xbrowser inline-block styles */ - display: -moz-inline-stack; /* FF2 */ - display: inline-block; - *display: inline; /* IE 7- (with zoom) */ - zoom: 1; - vertical-align: middle; -} - -.yui3-slider-content { - position: relative; - display: block; -} -.yui3-slider-rail { - position: relative; -} - -.yui3-slider-rail-cap-top, -.yui3-slider-rail-cap-left, -.yui3-slider-rail-cap-bottom, -.yui3-slider-rail-cap-right, -.yui3-slider-thumb, -.yui3-slider-thumb-image, -.yui3-slider-thumb-shadow { - position: absolute; -} - -.yui3-slider-thumb { - overflow: hidden; -} diff --git a/lib/yuilib/3.9.1/build/color-base/color-base-min.js b/lib/yuilib/3.9.1/build/color-base/color-base-min.js deleted file mode 100644 index 6f458ae8fe6..00000000000 --- a/lib/yuilib/3.9.1/build/color-base/color-base-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("color-base",function(e,t){var n=/^#?([\da-fA-F]{2})([\da-fA-F]{2})([\da-fA-F]{2})/,r=/^#?([\da-fA-F]{1})([\da-fA-F]{1})([\da-fA-F]{1})/,i=/rgba?\(([\d]{1,3}), ?([\d]{1,3}), ?([\d]{1,3}),? ?([.\d]*)?\)/,s={HEX:"hex",RGB:"rgb",RGBA:"rgba"},o={hex:"toHex",rgb:"toRGB",rgba:"toRGBA"};e.Color={KEYWORDS:{black:"000",silver:"c0c0c0",gray:"808080",white:"fff",maroon:"800000",red:"f00",purple:"800080",fuchsia:"f0f",green:"008000",lime:"0f0",olive:"808000",yellow:"ff0",navy:"000080",blue:"00f",teal:"008080",aqua:"0ff"},REGEX_HEX:n,REGEX_HEX3:r,REGEX_RGB:i,re_RGB:i,re_hex:n,re_hex3:r,STR_HEX:"#{*}{*}{*}",STR_RGB:"rgb({*}, {*}, {*})",STR_RGBA:"rgba({*}, {*}, {*}, {*})",TYPES:s,CONVERTS:o,convert:function(t,n){var r=e.Color.CONVERTS[n],i=e.Color[r](t);return i.toLowerCase()},toHex:function(t){var n=e.Color._convertTo(t,"hex");return n.toLowerCase()},toRGB:function(t){var n=e.Color._convertTo(t,"rgb");return n.toLowerCase()},toRGBA:function(t){var n=e.Color._convertTo(t,"rgba");return n.toLowerCase()},toArray:function(t){var n=e.Color.findType(t).toUpperCase(),r,i,s,o;return n==="HEX"&&t.length<5&&(n="HEX3"),n.charAt(n.length-1)==="A"&&(n=n.slice(0,-1)),r=e.Color["REGEX_"+n],r&&(i=r.exec(t)||[],s=i.length,s&&(i.shift(),s--,o=i[s-1],o||(i[s-1]=1))),i},fromArray:function(t,n){t=t.concat();if(typeof n=="undefined")return t.join(", ");var r="{*}";n=e.Color["STR_"+n.toUpperCase()],t.length===3&&n.match(/\{\*\}/g).length===4&&t.push(1);while(n.indexOf(r)>=0&&t.length>0)n=n.replace(r,t.shift());return n},findType:function(t){if(e.Color.KEYWORDS[t])return"keyword";var n=t.indexOf("("),r;return n>0&&(r=t.substr(0,n)),r&&e.Color.TYPES[r.toUpperCase()]?e.Color.TYPES[r.toUpperCase()]:"hex"},_getAlpha:function(t){var n,r=e.Color.toArray(t);return r.length>3&&(n=r.pop()),+n||1},_keywordToHex:function(t){var n=e.Color.KEYWORDS[t];if(n)return n},_convertTo:function(t,n){var r=e.Color.findType(t),i=n,s,o,u,a;return r==="keyword"&&(t=e.Color._keywordToHex(t),r="hex"),r==="hex"&&t.length<5&&(t.charAt(0)==="#"&&(t=t.substr(1)),t="#"+t.charAt(0)+t.charAt(0)+t.charAt(1)+t.charAt(1)+t.charAt(2)+t.charAt(2)),r===n?t:(r.charAt(r.length-1)==="a"&&(r=r.slice(0,-1)),s=n.charAt(n.length-1)==="a",s&&(n=n.slice(0,-1),o=e.Color._getAlpha(t)),a=n.charAt(0).toUpperCase()+n.substr(1).toLowerCase(),u=e.Color["_"+r+"To"+a],u||r!=="rgb"&&n!=="rgb"&&(t=e.Color["_"+r+"ToRgb"](t),r="rgb",u=e.Color["_"+r+"To"+a]),u&&(t=u(t,s)),s&&(e.Lang.isArray(t)||(t=e.Color.toArray(t)),t.push(o),t=e.Color.fromArray(t,i.toUpperCase())),t)},_hexToRgb:function(e,t){var n,r,i;return e.charAt(0)==="#"&&(e=e.substr(1)),e=parseInt(e,16),n=e>>16,r=e>>8&255,i=e&255,t?[n,r,i]:"rgb("+n+", "+r+", "+i+")"},_rgbToHex:function(t){var n=e.Color.toArray(t),r=n[2]|n[1]<<8|n[0]<<16;r=(+r).toString(16);while(r.length<6)r="0"+r;return"#"+r}}},"3.9.1",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/console-filters/assets/console-filters-core.css b/lib/yuilib/3.9.1/build/console-filters/assets/console-filters-core.css deleted file mode 100644 index 032880fae8e..00000000000 --- a/lib/yuilib/3.9.1/build/console-filters/assets/console-filters-core.css +++ /dev/null @@ -1 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ diff --git a/lib/yuilib/3.9.1/build/console-filters/assets/skins/sam/console-filters-skin.css b/lib/yuilib/3.9.1/build/console-filters/assets/skins/sam/console-filters-skin.css deleted file mode 100644 index eb988f35b21..00000000000 --- a/lib/yuilib/3.9.1/build/console-filters/assets/skins/sam/console-filters-skin.css +++ /dev/null @@ -1,28 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-skin-sam .yui3-console-ft .yui3-console-filters-categories, -.yui3-skin-sam .yui3-console-ft .yui3-console-filters-sources { - text-align: left; - padding: 5px 0; - border: 1px inset; - margin: 0 2px; -} -.yui3-skin-sam .yui3-console-ft .yui3-console-filters-categories { - background: #fff; - border-bottom: 2px ridge; -} -.yui3-skin-sam .yui3-console-ft .yui3-console-filters-sources { - background: #fff; - margin-bottom: 2px; - - border-top: 0 none; - border-bottom-right-radius: 10px; - border-bottom-left-radius: 10px; - -moz-border-radius-bottomright: 10px; - -moz-border-radius-bottomleft: 10px; - -webkit-border-bottom-right-radius: 10px; - -webkit-border-bottom-left-radius: 10px; -} -.yui3-skin-sam .yui3-console-filter-label { - white-space: nowrap; - margin-left: 1ex; -} diff --git a/lib/yuilib/3.9.1/build/console/assets/console-core.css b/lib/yuilib/3.9.1/build/console/assets/console-core.css deleted file mode 100644 index 032880fae8e..00000000000 --- a/lib/yuilib/3.9.1/build/console/assets/console-core.css +++ /dev/null @@ -1 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ diff --git a/lib/yuilib/3.9.1/build/console/assets/console-filters-core.css b/lib/yuilib/3.9.1/build/console/assets/console-filters-core.css deleted file mode 100644 index 032880fae8e..00000000000 --- a/lib/yuilib/3.9.1/build/console/assets/console-filters-core.css +++ /dev/null @@ -1 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ diff --git a/lib/yuilib/3.9.1/build/console/assets/skins/sam/console-filters.css b/lib/yuilib/3.9.1/build/console/assets/skins/sam/console-filters.css deleted file mode 100644 index eacf2cbe562..00000000000 --- a/lib/yuilib/3.9.1/build/console/assets/skins/sam/console-filters.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-skin-sam .yui3-console-ft .yui3-console-filters-categories,.yui3-skin-sam .yui3-console-ft .yui3-console-filters-sources{text-align:left;padding:5px 0;border:1px inset;margin:0 2px;}.yui3-skin-sam .yui3-console-ft .yui3-console-filters-categories{background:#fff;border-bottom:2px ridge;}.yui3-skin-sam .yui3-console-ft .yui3-console-filters-sources{background:#fff;margin-bottom:2px;border-top:0 none;border-bottom-right-radius:10px;border-bottom-left-radius:10px;-moz-border-radius-bottomright:10px;-moz-border-radius-bottomleft:10px;-webkit-border-bottom-right-radius:10px;-webkit-border-bottom-left-radius:10px;}.yui3-skin-sam .yui3-console-filter-label{white-space:nowrap;margin-left:1ex;} diff --git a/lib/yuilib/3.9.1/build/console/lang/console.js b/lib/yuilib/3.9.1/build/console/lang/console.js deleted file mode 100644 index edf867084d3..00000000000 --- a/lib/yuilib/3.9.1/build/console/lang/console.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/console",function(e){e.Intl.add("console","",{title:"Log Console",pause:"Pause",clear:"Clear",collapse:"Collapse",expand:"Expand"})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/console/lang/console_en.js b/lib/yuilib/3.9.1/build/console/lang/console_en.js deleted file mode 100644 index 6ce443719d0..00000000000 --- a/lib/yuilib/3.9.1/build/console/lang/console_en.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/console_en",function(e){e.Intl.add("console","en",{title:"Log Console",pause:"Pause",clear:"Clear",collapse:"Collapse",expand:"Expand"})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/console/lang/console_es.js b/lib/yuilib/3.9.1/build/console/lang/console_es.js deleted file mode 100644 index 76ddf3ace8c..00000000000 --- a/lib/yuilib/3.9.1/build/console/lang/console_es.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/console_es",function(e){e.Intl.add("console","es",{title:"Consola de informaci\u00f3n",pause:"Pausa",clear:"Borrar",collapse:"Colapsar",expand:"Expandir"})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/console/lang/console_ja.js b/lib/yuilib/3.9.1/build/console/lang/console_ja.js deleted file mode 100644 index 0bd364cca73..00000000000 --- a/lib/yuilib/3.9.1/build/console/lang/console_ja.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("lang/console_ja",function(e){e.Intl.add("console","ja",{title:"\u30ed\u30b0\u30b3\u30f3\u30bd\u30fc\u30eb",pause:"\u4e00\u6642\u505c\u6b62",clear:"\u30af\u30ea\u30a2",collapse:"\u9589\u3058\u308b",expand:"\u958b\u304f"})},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/cssbase-context/base-context-min.css b/lib/yuilib/3.9.1/build/cssbase-context/base-context-min.css deleted file mode 100644 index 88e4403ab6f..00000000000 --- a/lib/yuilib/3.9.1/build/cssbase-context/base-context-min.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-cssbase h1{font-size:138.5%}.yui3-cssbase h2{font-size:123.1%}.yui3-cssbase h3{font-size:108%}.yui3-cssbase h1,.yui3-cssbase h2,.yui3-cssbase h3{margin:1em 0}.yui3-cssbase h1,.yui3-cssbase h2,.yui3-cssbase h3,.yui3-cssbase h4,.yui3-cssbase h5,.yui3-cssbase h6,.yui3-cssbase strong{font-weight:bold}.yui3-cssbase abbr,.yui3-cssbase acronym{border-bottom:1px dotted #000;cursor:help}.yui3-cssbase em{font-style:italic}.yui3-cssbase blockquote,.yui3-cssbase ul,.yui3-cssbase ol,.yui3-cssbase dl{margin:1em}.yui3-cssbase ol,.yui3-cssbase ul,.yui3-cssbase dl{margin-left:2em}.yui3-cssbase ol{list-style:decimal outside}.yui3-cssbase ul{list-style:disc outside}.yui3-cssbase dl dd{margin-left:1em}.yui3-cssbase th,.yui3-cssbase td{border:1px solid #000;padding:.5em}.yui3-cssbase th{font-weight:bold;text-align:center}.yui3-cssbase caption{margin-bottom:.5em;text-align:center}.yui3-cssbase p,.yui3-cssbase fieldset,.yui3-cssbase table,.yui3-cssbase pre{margin-bottom:1em}.yui3-cssbase input[type=text],.yui3-cssbase input[type=password],.yui3-cssbase textarea{width:12.25em;*width:11.9em}#yui3-css-stamp.cssbase-context{display:none} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/cssbase-context/base-context.css b/lib/yuilib/3.9.1/build/cssbase-context/base-context.css deleted file mode 100644 index 0f08118e5d3..00000000000 --- a/lib/yuilib/3.9.1/build/cssbase-context/base-context.css +++ /dev/null @@ -1,76 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -/* base.css, part of YUI's CSS Foundation */ -.yui3-cssbase h1 { - /*18px via YUI Fonts CSS foundation*/ - font-size:138.5%; -} -.yui3-cssbase h2 { - /*16px via YUI Fonts CSS foundation*/ - font-size:123.1%; -} -.yui3-cssbase h3 { - /*14px via YUI Fonts CSS foundation*/ - font-size:108%; -} -.yui3-cssbase h1,.yui3-cssbase h2,.yui3-cssbase h3 { - /* top & bottom margin based on font size */ - margin:1em 0; -} -.yui3-cssbase h1,.yui3-cssbase h2,.yui3-cssbase h3,.yui3-cssbase h4,.yui3-cssbase h5,.yui3-cssbase h6,.yui3-cssbase strong { - /*bringing boldness back to headers and the strong element*/ - font-weight:bold; -} -.yui3-cssbase abbr,.yui3-cssbase acronym { - /*indicating to users that more info is available */ - border-bottom:1px dotted #000; - cursor:help; -} -.yui3-cssbase em { - /*bringing italics back to the em element*/ - font-style:italic; -} -.yui3-cssbase blockquote,.yui3-cssbase ul,.yui3-cssbase ol,.yui3-cssbase dl { - /*giving blockquotes and lists room to breath*/ - margin:1em; -} -.yui3-cssbase ol,.yui3-cssbase ul,.yui3-cssbase dl { - /*bringing lists on to the page with breathing room */ - margin-left:2em; -} -.yui3-cssbase ol { - /*giving OL's LIs generated numbers*/ - list-style: decimal outside; -} -.yui3-cssbase ul { - /*giving UL's LIs generated disc markers*/ - list-style: disc outside; -} -.yui3-cssbase dl dd { - /*providing spacing for definition terms*/ - margin-left:1em; -} -.yui3-cssbase th,.yui3-cssbase td { - /*borders and padding to make the table readable*/ - border:1px solid #000; - padding:.5em; -} -.yui3-cssbase th { - /*distinguishing table headers from data cells*/ - font-weight:bold; - text-align:center; -} -.yui3-cssbase caption { - /*coordinated margin to match cell's padding*/ - margin-bottom:.5em; - /*centered so it doesn't blend in to other content*/ - text-align:center; -} -.yui3-cssbase p,.yui3-cssbase fieldset,.yui3-cssbase table,.yui3-cssbase pre { - /*so things don't run into each other*/ - margin-bottom:1em; -} -/* setting a consistent width, 160px; - control of type=file still not possible */ -.yui3-cssbase input[type=text],.yui3-cssbase input[type=password],.yui3-cssbase textarea{width:12.25em;*width:11.9em;} -/* YUI CSS Detection Stamp */ -#yui3-css-stamp.cssbase-context { display: none; } diff --git a/lib/yuilib/3.9.1/build/cssbase/base-min.css b/lib/yuilib/3.9.1/build/cssbase/base-min.css deleted file mode 100644 index 994997eb00b..00000000000 --- a/lib/yuilib/3.9.1/build/cssbase/base-min.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -h1{font-size:138.5%}h2{font-size:123.1%}h3{font-size:108%}h1,h2,h3{margin:1em 0}h1,h2,h3,h4,h5,h6,strong{font-weight:bold}abbr,acronym{border-bottom:1px dotted #000;cursor:help}em{font-style:italic}blockquote,ul,ol,dl{margin:1em}ol,ul,dl{margin-left:2em}ol{list-style:decimal outside}ul{list-style:disc outside}dl dd{margin-left:1em}th,td{border:1px solid #000;padding:.5em}th{font-weight:bold;text-align:center}caption{margin-bottom:.5em;text-align:center}p,fieldset,table,pre{margin-bottom:1em}input[type=text],input[type=password],textarea{width:12.25em;*width:11.9em}#yui3-css-stamp.cssbase{display:none} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/cssbase/base.css b/lib/yuilib/3.9.1/build/cssbase/base.css deleted file mode 100644 index 8d6e0676500..00000000000 --- a/lib/yuilib/3.9.1/build/cssbase/base.css +++ /dev/null @@ -1,76 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -/* base.css, part of YUI's CSS Foundation */ -h1 { - /*18px via YUI Fonts CSS foundation*/ - font-size:138.5%; -} -h2 { - /*16px via YUI Fonts CSS foundation*/ - font-size:123.1%; -} -h3 { - /*14px via YUI Fonts CSS foundation*/ - font-size:108%; -} -h1,h2,h3 { - /* top & bottom margin based on font size */ - margin:1em 0; -} -h1,h2,h3,h4,h5,h6,strong { - /*bringing boldness back to headers and the strong element*/ - font-weight:bold; -} -abbr,acronym { - /*indicating to users that more info is available */ - border-bottom:1px dotted #000; - cursor:help; -} -em { - /*bringing italics back to the em element*/ - font-style:italic; -} -blockquote,ul,ol,dl { - /*giving blockquotes and lists room to breath*/ - margin:1em; -} -ol,ul,dl { - /*bringing lists on to the page with breathing room */ - margin-left:2em; -} -ol { - /*giving OL's LIs generated numbers*/ - list-style: decimal outside; -} -ul { - /*giving UL's LIs generated disc markers*/ - list-style: disc outside; -} -dl dd { - /*providing spacing for definition terms*/ - margin-left:1em; -} -th,td { - /*borders and padding to make the table readable*/ - border:1px solid #000; - padding:.5em; -} -th { - /*distinguishing table headers from data cells*/ - font-weight:bold; - text-align:center; -} -caption { - /*coordinated margin to match cell's padding*/ - margin-bottom:.5em; - /*centered so it doesn't blend in to other content*/ - text-align:center; -} -p,fieldset,table,pre { - /*so things don't run into each other*/ - margin-bottom:1em; -} -/* setting a consistent width, 160px; - control of type=file still not possible */ -input[type=text],input[type=password],textarea{width:12.25em;*width:11.9em;} -/* YUI CSS Detection Stamp */ -#yui3-css-stamp.cssbase { display: none; } diff --git a/lib/yuilib/3.9.1/build/cssfonts-context/fonts-context-min.css b/lib/yuilib/3.9.1/build/cssfonts-context/fonts-context-min.css deleted file mode 100644 index 0baa53d239d..00000000000 --- a/lib/yuilib/3.9.1/build/cssfonts-context/fonts-context-min.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-cssfonts body,.yui3-cssfonts{font:13px/1.231 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small}.yui3-cssfonts select,.yui3-cssfonts input,.yui3-cssfonts button,.yui3-cssfonts textarea{font:99% arial,helvetica,clean,sans-serif}.yui3-cssfonts table{font-size:inherit;font:100%}.yui3-cssfonts pre,.yui3-cssfonts code,.yui3-cssfonts kbd,.yui3-cssfonts samp,.yui3-cssfonts tt{font-family:monospace;*font-size:108%;line-height:100%}#yui3-css-stamp.cssfonts-context{display:none} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/cssfonts-context/fonts-context.css b/lib/yuilib/3.9.1/build/cssfonts-context/fonts-context.css deleted file mode 100644 index 490823d0c8e..00000000000 --- a/lib/yuilib/3.9.1/build/cssfonts-context/fonts-context.css +++ /dev/null @@ -1,43 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -/** - * Percents could work for IE, but for backCompat purposes, we are using keywords. - * x-small is for IE6/7 quirks mode. - */ -.yui3-cssfonts body, .yui3-cssfonts { - font:13px/1.231 arial,helvetica,clean,sans-serif; - *font-size:small; /* for IE */ - *font:x-small; /* for IE in quirks mode */ -} - -/** - * Nudge down to get to 13px equivalent for these form elements - */ -.yui3-cssfonts select, -.yui3-cssfonts input, -.yui3-cssfonts button, -.yui3-cssfonts textarea { - font:99% arial,helvetica,clean,sans-serif; -} - -/** - * To help tables remember to inherit - */ -.yui3-cssfonts table { - font-size:inherit; - font:100%; -} - -/** - * Bump up IE to get to 13px equivalent for these fixed-width elements - */ -.yui3-cssfonts pre, -.yui3-cssfonts code, -.yui3-cssfonts kbd, -.yui3-cssfonts samp, -.yui3-cssfonts tt { - font-family:monospace; - *font-size:108%; - line-height:100%; -} -/* YUI CSS Detection Stamp */ -#yui3-css-stamp.cssfonts-context { display: none; } diff --git a/lib/yuilib/3.9.1/build/cssfonts/fonts-min.css b/lib/yuilib/3.9.1/build/cssfonts/fonts-min.css deleted file mode 100644 index 272d2304a4f..00000000000 --- a/lib/yuilib/3.9.1/build/cssfonts/fonts-min.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -body{font:13px/1.231 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small}select,input,button,textarea{font:99% arial,helvetica,clean,sans-serif}table{font-size:inherit;font:100%}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%}#yui3-css-stamp.cssfonts{display:none} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/cssfonts/fonts.css b/lib/yuilib/3.9.1/build/cssfonts/fonts.css deleted file mode 100644 index 93e5b54bfad..00000000000 --- a/lib/yuilib/3.9.1/build/cssfonts/fonts.css +++ /dev/null @@ -1,43 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -/** - * Percents could work for IE, but for backCompat purposes, we are using keywords. - * x-small is for IE6/7 quirks mode. - */ -body { - font:13px/1.231 arial,helvetica,clean,sans-serif; - *font-size:small; /* for IE */ - *font:x-small; /* for IE in quirks mode */ -} - -/** - * Nudge down to get to 13px equivalent for these form elements - */ -select, -input, -button, -textarea { - font:99% arial,helvetica,clean,sans-serif; -} - -/** - * To help tables remember to inherit - */ -table { - font-size:inherit; - font:100%; -} - -/** - * Bump up IE to get to 13px equivalent for these fixed-width elements - */ -pre, -code, -kbd, -samp, -tt { - font-family:monospace; - *font-size:108%; - line-height:100%; -} -/* YUI CSS Detection Stamp */ -#yui3-css-stamp.cssfonts { display: none; } diff --git a/lib/yuilib/3.9.1/build/cssgrids-context-deprecated/grids-context-min.css b/lib/yuilib/3.9.1/build/cssgrids-context-deprecated/grids-context-min.css deleted file mode 100644 index 8539bd254b6..00000000000 --- a/lib/yuilib/3.9.1/build/cssgrids-context-deprecated/grids-context-min.css +++ /dev/null @@ -1,3 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-cssgrids body{text-align:center;margin-left:auto;margin-right:auto}.yui3-cssgrids .yui3-d0,.yui3-cssgrids .yui3-d1,.yui3-cssgrids .yui3-d1f,.yui3-cssgrids .yui3-d2,.yui3-cssgrids .yui3-d2f,.yui3-cssgrids .yui3-d3,.yui3-cssgrids .yui3-d3f{margin:auto;text-align:left;width:57.69em;*width:56.25em}.yui3-cssgrids .yui3-t1,.yui3-cssgrids .yui3-t2,.yui3-cssgrids .yui3-t3,.yui3-cssgrids .yui3-t4,.yui3-cssgrids .yui3-t5,.yui3-cssgrids .yui3-t6{margin:auto;text-align:left;width:100%}.yui3-cssgrids .yui3-d0{margin:auto 10px;width:auto}.yui3-cssgrids .yui3-d0f{width:100%}.yui3-cssgrids .yui3-d2{width:73.076em;*width:71.25em}.yui3-cssgrids .yui3-d2f{width:950px}.yui3-cssgrids .yui3-d3{width:74.923em;*width:73.05em}.yui3-cssgrids .yui3-d3f{width:974px}.yui3-cssgrids .yui3-b{position:relative}.yui3-cssgrids .yui3-b{_position:static}.yui3-cssgrids .yui3-main .yui3-b{position:static}.yui3-cssgrids .yui3-main{width:100%}.yui3-cssgrids .yui3-t1 .yui3-main,.yui3-cssgrids .yui3-t2 .yui3-main,.yui3-cssgrids .yui3-t3 .yui3-main{float:right;margin-left:-25em}.yui3-cssgrids .yui3-t4 .yui3-main,.yui3-cssgrids .yui3-t5 .yui3-main,.yui3-cssgrids .yui3-t6 .yui3-main{float:left;margin-right:-25em}.yui3-cssgrids .yui3-t1 .yui3-b{float:left;width:12.30769em;*width:12.00em}.yui3-cssgrids .yui3-t1 .yui3-main .yui3-b{margin-left:13.30769em;*margin-left:12.975em}.yui3-cssgrids .yui3-t2 .yui3-b{float:left;width:13.84615em;*width:13.50em}.yui3-cssgrids .yui3-t2 .yui3-main .yui3-b{margin-left:14.84615em;*margin-left:14.475em}.yui3-cssgrids .yui3-t3 .yui3-b{float:left;width:23.0769em;*width:22.50em}.yui3-cssgrids .yui3-t3 .yui3-main .yui3-b{margin-left:24.0769em;*margin-left:23.475em}.yui3-cssgrids .yui3-t4 .yui3-b{float:right;width:13.8456em;*width:13.50em}.yui3-cssgrids .yui3-t4 .yui3-main .yui3-b{margin-right:14.8456em;*margin-right:14.475em}.yui3-cssgrids .yui3-t5 .yui3-b{float:right;width:18.4615em;*width:18.00em}.yui3-cssgrids .yui3-t5 .yui3-main .yui3-b{margin-right:19.4615em;*margin-right:18.975em}.yui3-cssgrids .yui3-t6 .yui3-b{float:right;width:23.0769em;*width:22.50em}.yui3-cssgrids .yui3-t6 .yui3-main .yui3-b{margin-right:24.0769em;*margin-right:23.475em}.yui3-cssgrids .yui3-main .yui3-b{float:none;width:auto}.yui3-cssgrids .yui3-gb .yui3-u,.yui3-cssgrids .yui3-g .yui3-gb .yui3-u,.yui3-cssgrids .yui3-gb .yui3-g,.yui3-cssgrids .yui3-gb .yui3-gb,.yui3-cssgrids .yui3-gb .yui3-gc,.yui3-cssgrids .yui3-gb .yui3-gd,.yui3-cssgrids .yui3-gb .yui3-ge,.yui3-cssgrids .yui3-gb .yui3-gf,.yui3-cssgrids .yui3-gc .yui3-u,.yui3-cssgrids .yui3-gc .yui3-g,.yui3-cssgrids .yui3-gd .yui3-u{float:left}.yui3-cssgrids .yui3-g .yui3-u,.yui3-cssgrids .yui3-g .yui3-g,.yui3-cssgrids .yui3-g .yui3-gb,.yui3-cssgrids .yui3-g .yui3-gc,.yui3-cssgrids .yui3-g .yui3-gd,.yui3-cssgrids .yui3-g .yui3-ge,.yui3-cssgrids .yui3-g .yui3-gf,.yui3-cssgrids .yui3-gc .yui3-u,.yui3-cssgrids .yui3-gd .yui3-g,.yui3-cssgrids .yui3-g .yui3-gc .yui3-u,.yui3-cssgrids .yui3-ge .yui3-u,.yui3-cssgrids .yui3-ge .yui3-g,.yui3-cssgrids .yui3-gf .yui3-g,.yui3-cssgrids .yui3-gf .yui3-u{float:right}.yui3-cssgrids .yui3-g div.first,.yui3-cssgrids .yui3-gb div.first,.yui3-cssgrids .yui3-gc div.first,.yui3-cssgrids .yui3-gd div.first,.yui3-cssgrids .yui3-ge div.first,.yui3-cssgrids .yui3-gf div.first,.yui3-cssgrids .yui3-g .yui3-gc div.first,.yui3-cssgrids .yui3-g .yui3-ge div.first,.yui3-cssgrids .yui3-gc div.first div.first{float:left}.yui3-cssgrids .yui3-g .yui3-u,.yui3-cssgrids .yui3-g .yui3-g,.yui3-cssgrids .yui3-g .yui3-gb,.yui3-cssgrids .yui3-g .yui3-gc,.yui3-cssgrids .yui3-g .yui3-gd,.yui3-cssgrids .yui3-g .yui3-ge,.yui3-cssgrids .yui3-g .yui3-gf{width:49.1%}.yui3-cssgrids .yui3-gb .yui3-u,.yui3-cssgrids .yui3-g .yui3-gb .yui3-u,.yui3-cssgrids .yui3-gb .yui3-g,.yui3-cssgrids .yui3-gb .yui3-gb,.yui3-cssgrids .yui3-gb .yui3-gc,.yui3-cssgrids .yui3-gb .yui3-gd,.yui3-cssgrids .yui3-gb .yui3-ge,.yui3-cssgrids .yui3-gb .yui3-gf,.yui3-cssgrids .yui3-gc .yui3-u,.yui3-cssgrids .yui3-gc .yui3-g,.yui3-cssgrids .yui3-gd .yui3-u{width:32%;margin-left:2.0%}.yui3-cssgrids .yui3-gb .yui3-u{*width:31.8%;*margin-left:1.9%}.yui3-cssgrids .yui3-gc div.first,.yui3-cssgrids .yui3-gd .yui3-u{width:66%;_width:65.7%}.yui3-cssgrids .yui3-gd div.first{width:32%;_width:31.5%}.yui3-cssgrids .yui3-ge div.first,.yui3-cssgrids .yui3-gf .yui3-u{width:74.2%;_width:74%}.yui3-cssgrids .yui3-ge .yui3-u,.yui3-cssgrids .yui3-gf div.first{width:24%;_width:23.8%}.yui3-cssgrids .yui3-g .yui3-gb div.first,.yui3-cssgrids .yui3-gb div.first,.yui3-cssgrids .yui3-gc div.first,.yui3-cssgrids .yui3-gd div.first{margin-left:0}.yui3-cssgrids .yui3-g .yui3-g .yui3-u,.yui3-cssgrids .yui3-gb .yui3-g .yui3-u,.yui3-cssgrids .yui3-gc .yui3-g .yui3-u,.yui3-cssgrids .yui3-gd .yui3-g .yui3-u,.yui3-cssgrids .yui3-ge .yui3-g .yui3-u,.yui3-cssgrids .yui3-gf .yui3-g .yui3-u{width:49%;*width:48.1%;*margin-left:0}.yui3-cssgrids .yui3-g .yui3-gb div.first,.yui3-cssgrids .yui3-gb .yui3-gb div.first{*margin-right:0;*width:32%;_width:31.7%}.yui3-cssgrids .yui3-g .yui3-gc div.first,.yui3-cssgrids .yui3-gd .yui3-g{width:66%}.yui3-cssgrids .yui3-gb .yui3-g div.first{*margin-right:4%;_margin-right:1.3%}.yui3-cssgrids .yui3-gb .yui3-gc div.first,.yui3-cssgrids .yui3-gb .yui3-gd div.first{*margin-right:0}.yui3-cssgrids .yui3-gb .yui3-gb .yui3-u,.yui3-cssgrids .yui3-gb .yui3-gc .yui3-u{*margin-left:1.8%;_margin-left:4%}.yui3-cssgrids .yui3-g .yui3-gb .yui3-u{_margin-left:1.0%}.yui3-cssgrids .yui3-gb .yui3-gd .yui3-u{*width:66%;_width:61.2%}.yui3-cssgrids .yui3-gb .yui3-gd div.first{*width:31%;_width:29.5%}.yui3-cssgrids .yui3-g .yui3-gc .yui3-u,.yui3-cssgrids .yui3-gb .yui3-gc .yui3-u{width:32%;_float:right;margin-right:0;_margin-left:0}.yui3-cssgrids .yui3-gb .yui3-gc div.first{width:66%;*float:left;*margin-left:0}.yui3-cssgrids .yui3-gb .yui3-ge .yui3-u,.yui3-cssgrids .yui3-gb .yui3-gf .yui3-u{margin:0}.yui3-cssgrids .yui3-gb .yui3-gb .yui3-u{_margin-left:.7%}.yui3-cssgrids .yui3-gb .yui3-g div.first,.yui3-cssgrids .yui3-gb .yui3-gb div.first{*margin-left:0} -.yui3-cssgrids .yui3-gc .yui3-g .yui3-u,.yui3-cssgrids .yui3-gd .yui3-g .yui3-u{*width:48.1%;*margin-left:0}.yui3-cssgrids .yui3-gb .yui3-gd div.first{width:32%}.yui3-cssgrids .yui3-g .yui3-gd div.first{_width:29.9%}.yui3-cssgrids .yui3-ge .yui3-g{width:24%}.yui3-cssgrids .yui3-gf .yui3-g{width:74.2%}.yui3-cssgrids .yui3-gb .yui3-ge div.yui3-u,.yui3-cssgrids .yui3-gb .yui3-gf div.yui3-u{float:right}.yui3-cssgrids .yui3-gb .yui3-ge div.first,.yui3-cssgrids .yui3-gb .yui3-gf div.first{float:left}.yui3-cssgrids .yui3-gb .yui3-ge .yui3-u,.yui3-cssgrids .yui3-gb .yui3-gf div.first{*width:24%;_width:20%}.yui3-cssgrids .yui3-gc .yui3-gf .yui3-u{width:74%;_width:73%}.yui3-cssgrids .yui3-gc .yui3-gf div.first{width:24%}.yui3-cssgrids .yui3-gb .yui3-ge div.first,.yui3-cssgrids .yui3-gb .yui3-gf .yui3-u{*width:73.5%;_width:65.5%}.yui3-cssgrids .yui3-ge div.first .yui3-gd .yui3-u{width:65%}.yui3-cssgrids .yui3-ge div.first .yui3-gd div.first{width:32%}.yui3-cssgrids #bd:after,.yui3-cssgrids .yui3-g:after,.yui3-cssgrids .yui3-gb:after,.yui3-cssgrids .yui3-gc:after,.yui3-cssgrids .yui3-gd:after,.yui3-cssgrids .yui3-ge:after,.yui3-cssgrids .yui3-gf:after,.yui3-cssgrids .yui3-t1:after,.yui3-cssgrids .yui3-t2:after,.yui3-cssgrids .yui3-t3:after,.yui3-cssgrids .yui3-t4:after,.yui3-cssgrids .yui3-t5:after,.yui3-cssgrids .yui3-t6:after{content:".";display:block;height:0;clear:both;visibility:hidden}.yui3-cssgrids #bd,.yui3-cssgrids .yui3-g,.yui3-cssgrids .yui3-gb,.yui3-cssgrids .yui3-gc,.yui3-cssgrids .yui3-gd,.yui3-cssgrids .yui3-ge,.yui3-cssgrids .yui3-gf,.yui3-cssgrids .yui3-t1,.yui3-cssgrids .yui3-t2,.yui3-cssgrids .yui3-t3,.yui3-cssgrids .yui3-t4,.yui3-cssgrids .yui3-t5,.yui3-cssgrids .yui3-t6{zoom:1} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/cssgrids-context-deprecated/grids-context.css b/lib/yuilib/3.9.1/build/cssgrids-context-deprecated/grids-context.css deleted file mode 100644 index 5413755907b..00000000000 --- a/lib/yuilib/3.9.1/build/cssgrids-context-deprecated/grids-context.css +++ /dev/null @@ -1,485 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -/* -* -* The YUI CSS Foundation uses the *property and _property CSS filter -* techniques to shield a value from A-grade browsers [1] other than -* IE6 & IE7 (*property) and IE6 (_property) -* -/ -Section: General Rules -*/ -.yui3-cssgrids body { - /* center the page */ - text-align: center; - margin-left: auto; - margin-right: auto; -} -/* -Section: Page Width Rules (#doc, #doc2, #doc3, #doc4) -*/ -/* -Subsection: General -*/ -.yui3-cssgrids .yui3-d0, /* 100% */ -.yui3-cssgrids .yui3-d1, /* 750px */ -.yui3-cssgrids .yui3-d1f, /* 750px fixed */ -.yui3-cssgrids .yui3-d2, /* 950px */ -.yui3-cssgrids .yui3-d2f, /* 950px fixed */ -.yui3-cssgrids .yui3-d3, /* 974px */ -.yui3-cssgrids .yui3-d3f { /* 974px fixed */ - margin: auto; - text-align: left; - width: 57.69em; - *width: 56.25em; /* doc1*/ -} - -.yui3-cssgrids .yui3-t1, -.yui3-cssgrids .yui3-t2, -.yui3-cssgrids .yui3-t3, -.yui3-cssgrids .yui3-t4, -.yui3-cssgrids .yui3-t5, -.yui3-cssgrids .yui3-t6 { - margin: auto; - text-align: left; - width: 100%; -} - -/* -Subsection: 100% (doc) -*/ -.yui3-cssgrids .yui3-d0 { - /* Left and Right margins are not a structural part of Grids. Without them Grids - works fine, but content bleeds to the very edge of the document, which often - impairs readability and usability. They are - provided because they prevent the content from "bleeding" into the browser's chrome.*/ - margin: auto 10px; - width: auto; -} -.yui3-cssgrids .yui3-d0f { - width: 100%; -} - -/* -Subsection: 950 Centered (doc2) -*/ -.yui3-cssgrids .yui3-d2 { - width: 73.076em; - *width: 71.25em; -} -.yui3-cssgrids .yui3-d2f { - width: 950px; -} -/* -Subsection: 974 Centered (doc3) -*/ -.yui3-cssgrids .yui3-d3 { - width: 74.923em; - *width: 73.05em; -} -.yui3-cssgrids .yui3-d3f { - width: 974px; -} -/* -Section: Preset Template Rules (.yui3-t[1-6]) -*/ -/* -Subsection: General -*/ - -/* to preserve source-order independence for Gecko without breaking IE */ -.yui3-cssgrids .yui3-b { - position: relative; -} -.yui3-cssgrids .yui3-b { - _position: static; -} -.yui3-cssgrids .yui3-main .yui3-b { - position: static; -} -.yui3-cssgrids .yui3-main { - width: 100%; -} -.yui3-cssgrids .yui3-t1 .yui3-main, -.yui3-cssgrids .yui3-t2 .yui3-main, -.yui3-cssgrids .yui3-t3 .yui3-main { - float: right; - /* IE: preserve layout at narrow widths */ - margin-left: -25em; -} -.yui3-cssgrids .yui3-t4 .yui3-main, -.yui3-cssgrids .yui3-t5 .yui3-main, -.yui3-cssgrids .yui3-t6 .yui3-main { - float: left; - /* IE: preserve layout at narrow widths */ - margin-right: -25em; -} - -/* Subsection: For Specific Template Presets */ - -/** -* Nudge down to get to 13px equivalent for these form elements -*/ - -/* -TODO Create t1-6's that are based on fixed widths -*/ -/* t1 narrow block = left, equivalent of 160px */ -.yui3-cssgrids .yui3-t1 .yui3-b { - float: left; - width: 12.30769em; - *width: 12.00em; -} -.yui3-cssgrids .yui3-t1 .yui3-main .yui3-b { - margin-left: 13.30769em; - *margin-left:12.975em; -} -/* t2 narrow block = left, equivalent of 180px */ -.yui3-cssgrids .yui3-t2 .yui3-b { - float: left; - width: 13.84615em; - *width: 13.50em; -} -.yui3-cssgrids .yui3-t2 .yui3-main .yui3-b { - margin-left: 14.84615em; - *margin-left: 14.475em; -} -/* t3 narrow block = left, equivalent of 300px */ -.yui3-cssgrids .yui3-t3 .yui3-b { - float: left; - width: 23.0769em; - *width: 22.50em; -} -.yui3-cssgrids .yui3-t3 .yui3-main .yui3-b { - margin-left: 24.0769em; - *margin-left: 23.475em; -} -/* t4 narrow block = right, equivalent of 180px */ -.yui3-cssgrids .yui3-t4 .yui3-b { - float: right; - width: 13.8456em; - *width: 13.50em; -} -.yui3-cssgrids .yui3-t4 .yui3-main .yui3-b { - margin-right: 14.8456em; - *margin-right: 14.475em; -} -/* t5 narrow block = right, equivalent of 240px */ -.yui3-cssgrids .yui3-t5 .yui3-b { - float: right; - width: 18.4615em; - *width: 18.00em; -} -.yui3-cssgrids .yui3-t5 .yui3-main .yui3-b { - margin-right: 19.4615em; - *margin-right: 18.975em; -} -/* t6 narrow block = equivalent of 300px */ -.yui3-cssgrids .yui3-t6 .yui3-b { - float: right; - width: 23.0769em; - *width: 22.50em; -} -.yui3-cssgrids .yui3-t6 .yui3-main .yui3-b { - margin-right: 24.0769em; - *margin-right: 23.475em; -} - -.yui3-cssgrids .yui3-main .yui3-b { - float: none; - width: auto; -} - -/* -Section: Grids and Nesting Grids -*/ - -/* -Subsection: Children generally take half the available space -*/ - -.yui3-cssgrids .yui3-gb .yui3-u, -.yui3-cssgrids .yui3-g .yui3-gb .yui3-u, -.yui3-cssgrids .yui3-gb .yui3-g, -.yui3-cssgrids .yui3-gb .yui3-gb, -.yui3-cssgrids .yui3-gb .yui3-gc, -.yui3-cssgrids .yui3-gb .yui3-gd, -.yui3-cssgrids .yui3-gb .yui3-ge, -.yui3-cssgrids .yui3-gb .yui3-gf, -.yui3-cssgrids .yui3-gc .yui3-u, -.yui3-cssgrids .yui3-gc .yui3-g, -.yui3-cssgrids .yui3-gd .yui3-u { - float: left; -} - -/*Float units (and sub grids) to the right */ -.yui3-cssgrids .yui3-g .yui3-u, -.yui3-cssgrids .yui3-g .yui3-g, -.yui3-cssgrids .yui3-g .yui3-gb, -.yui3-cssgrids .yui3-g .yui3-gc, -.yui3-cssgrids .yui3-g .yui3-gd, -.yui3-cssgrids .yui3-g .yui3-ge, -.yui3-cssgrids .yui3-g .yui3-gf, -.yui3-cssgrids .yui3-gc .yui3-u, -.yui3-cssgrids .yui3-gd .yui3-g, -.yui3-cssgrids .yui3-g .yui3-gc .yui3-u, -.yui3-cssgrids .yui3-ge .yui3-u, -.yui3-cssgrids .yui3-ge .yui3-g, -.yui3-cssgrids .yui3-gf .yui3-g, -.yui3-cssgrids .yui3-gf .yui3-u { - float: right; -} - -/*Float units (and sub grids) to the left */ -.yui3-cssgrids .yui3-g div.first, -.yui3-cssgrids .yui3-gb div.first, -.yui3-cssgrids .yui3-gc div.first, -.yui3-cssgrids .yui3-gd div.first, -.yui3-cssgrids .yui3-ge div.first, -.yui3-cssgrids .yui3-gf div.first, -.yui3-cssgrids .yui3-g .yui3-gc div.first, -.yui3-cssgrids .yui3-g .yui3-ge div.first, -.yui3-cssgrids .yui3-gc div.first div.first { - float: left; -} - -.yui3-cssgrids .yui3-g .yui3-u, -.yui3-cssgrids .yui3-g .yui3-g, -.yui3-cssgrids .yui3-g .yui3-gb, -.yui3-cssgrids .yui3-g .yui3-gc, -.yui3-cssgrids .yui3-g .yui3-gd, -.yui3-cssgrids .yui3-g .yui3-ge, -.yui3-cssgrids .yui3-g .yui3-gf { - width: 49.1%; -} - -.yui3-cssgrids .yui3-gb .yui3-u, -.yui3-cssgrids .yui3-g .yui3-gb .yui3-u, -.yui3-cssgrids .yui3-gb .yui3-g, -.yui3-cssgrids .yui3-gb .yui3-gb, -.yui3-cssgrids .yui3-gb .yui3-gc, -.yui3-cssgrids .yui3-gb .yui3-gd, -.yui3-cssgrids .yui3-gb .yui3-ge, -.yui3-cssgrids .yui3-gb .yui3-gf, -.yui3-cssgrids .yui3-gc .yui3-u, -.yui3-cssgrids .yui3-gc .yui3-g, -.yui3-cssgrids .yui3-gd .yui3-u { - width: 32%; - margin-left: 2.0%; -} - -/* Give IE some extra breathing room for 1/3-based rounding issues */ -.yui3-cssgrids .yui3-gb .yui3-u { - *width: 31.8%; - *margin-left: 1.9%; -} - -.yui3-cssgrids .yui3-gc div.first, -.yui3-cssgrids .yui3-gd .yui3-u { - width: 66%; - _width: 65.7%; -} -.yui3-cssgrids .yui3-gd div.first { - width: 32%; - _width: 31.5%; -} - -.yui3-cssgrids .yui3-ge div.first, -.yui3-cssgrids .yui3-gf .yui3-u { - width: 74.2%; - _width: 74%; -} - -.yui3-cssgrids .yui3-ge .yui3-u, -.yui3-cssgrids .yui3-gf div.first { - width: 24%; - _width: 23.8%; -} - -.yui3-cssgrids .yui3-g .yui3-gb div.first, -.yui3-cssgrids .yui3-gb div.first, -.yui3-cssgrids .yui3-gc div.first, -.yui3-cssgrids .yui3-gd div.first { - margin-left: 0; -} - -/* -Section: Deep Nesting -*/ -.yui3-cssgrids .yui3-g .yui3-g .yui3-u, -.yui3-cssgrids .yui3-gb .yui3-g .yui3-u, -.yui3-cssgrids .yui3-gc .yui3-g .yui3-u, -.yui3-cssgrids .yui3-gd .yui3-g .yui3-u, -.yui3-cssgrids .yui3-ge .yui3-g .yui3-u, -.yui3-cssgrids .yui3-gf .yui3-g .yui3-u { - width: 49%; - *width: 48.1%; - *margin-left: 0; -} - -.yui3-cssgrids .yui3-g .yui3-gb div.first, -.yui3-cssgrids .yui3-gb .yui3-gb div.first { - *margin-right: 0; - *width: 32%; - _width: 31.7%; -} - -.yui3-cssgrids .yui3-g .yui3-gc div.first, -.yui3-cssgrids .yui3-gd .yui3-g { - width: 66%; -} - -.yui3-cssgrids .yui3-gb .yui3-g div.first { - *margin-right: 4%; - _margin-right: 1.3%; -} - -.yui3-cssgrids .yui3-gb .yui3-gc div.first, -.yui3-cssgrids .yui3-gb .yui3-gd div.first { - *margin-right: 0; -} - -.yui3-cssgrids .yui3-gb .yui3-gb .yui3-u, -.yui3-cssgrids .yui3-gb .yui3-gc .yui3-u { - *margin-left: 1.8%; - _margin-left: 4%; -} - -.yui3-cssgrids .yui3-g .yui3-gb .yui3-u { - _margin-left: 1.0%; -} - -.yui3-cssgrids .yui3-gb .yui3-gd .yui3-u { - *width: 66%; - _width: 61.2%; -} -.yui3-cssgrids .yui3-gb .yui3-gd div.first { - *width: 31%; - _width: 29.5%; -} - -.yui3-cssgrids .yui3-g .yui3-gc .yui3-u, -.yui3-cssgrids .yui3-gb .yui3-gc .yui3-u { - width: 32%; - _float: right; - margin-right: 0; - _margin-left: 0; -} -.yui3-cssgrids .yui3-gb .yui3-gc div.first { - width: 66%; - *float: left; - *margin-left: 0; -} - -.yui3-cssgrids .yui3-gb .yui3-ge .yui3-u, -.yui3-cssgrids .yui3-gb .yui3-gf .yui3-u { - margin: 0; -} - -.yui3-cssgrids .yui3-gb .yui3-gb .yui3-u { - _margin-left: .7%; -} - -.yui3-cssgrids .yui3-gb .yui3-g div.first, -.yui3-cssgrids .yui3-gb .yui3-gb div.first { - *margin-left:0; -} - -.yui3-cssgrids .yui3-gc .yui3-g .yui3-u, -.yui3-cssgrids .yui3-gd .yui3-g .yui3-u { - *width: 48.1%; - *margin-left: 0; -} - -.yui3-cssgrids .yui3-gb .yui3-gd div.first { - width: 32%; -} -.yui3-cssgrids .yui3-g .yui3-gd div.first { - _width: 29.9%; -} - -.yui3-cssgrids .yui3-ge .yui3-g { - width: 24%; -} -.yui3-cssgrids .yui3-gf .yui3-g { - width: 74.2%; -} - -.yui3-cssgrids .yui3-gb .yui3-ge div.yui3-u, -.yui3-cssgrids .yui3-gb .yui3-gf div.yui3-u { - float: right; -} -.yui3-cssgrids .yui3-gb .yui3-ge div.first, -.yui3-cssgrids .yui3-gb .yui3-gf div.first { - float: left; -} - -/* Width Accommodation for Nested Contexts */ -.yui3-cssgrids .yui3-gb .yui3-ge .yui3-u, -.yui3-cssgrids .yui3-gb .yui3-gf div.first { - *width: 24%; - _width: 20%; -} - -/* Width Accommodation for Nested Contexts */ - -.yui3-cssgrids .yui3-gc .yui3-gf .yui3-u { - width: 74%; - _width: 73%; -} - -.yui3-cssgrids .yui3-gc .yui3-gf div.first { - width: 24%; -} - -.yui3-cssgrids .yui3-gb .yui3-ge div.first, -.yui3-cssgrids .yui3-gb .yui3-gf .yui3-u { - *width: 73.5%; - _width: 65.5%; -} - -/* Patch for GD within GE */ -.yui3-cssgrids .yui3-ge div.first .yui3-gd .yui3-u { - width: 65%; -} -.yui3-cssgrids .yui3-ge div.first .yui3-gd div.first { - width: 32%; -} - -/* -Section: Clearing. zoom for IE, :after for others -*/ - -.yui3-cssgrids #bd:after, -.yui3-cssgrids .yui3-g:after, -.yui3-cssgrids .yui3-gb:after, -.yui3-cssgrids .yui3-gc:after, -.yui3-cssgrids .yui3-gd:after, -.yui3-cssgrids .yui3-ge:after, -.yui3-cssgrids .yui3-gf:after, -.yui3-cssgrids .yui3-t1:after, -.yui3-cssgrids .yui3-t2:after, -.yui3-cssgrids .yui3-t3:after, -.yui3-cssgrids .yui3-t4:after, -.yui3-cssgrids .yui3-t5:after, -.yui3-cssgrids .yui3-t6:after { - content: "."; - display: block; - height: 0; - clear: both; - visibility: hidden; -} -.yui3-cssgrids #bd, -.yui3-cssgrids .yui3-g, -.yui3-cssgrids .yui3-gb, -.yui3-cssgrids .yui3-gc, -.yui3-cssgrids .yui3-gd, -.yui3-cssgrids .yui3-ge, -.yui3-cssgrids .yui3-gf, -.yui3-cssgrids .yui3-t1, -.yui3-cssgrids .yui3-t2, -.yui3-cssgrids .yui3-t3, -.yui3-cssgrids .yui3-t4, -.yui3-cssgrids .yui3-t5, -.yui3-cssgrids .yui3-t6 { - zoom: 1; -} diff --git a/lib/yuilib/3.9.1/build/cssgrids/grids-min.css b/lib/yuilib/3.9.1/build/cssgrids/grids-min.css deleted file mode 100644 index 18cc27ec268..00000000000 --- a/lib/yuilib/3.9.1/build/cssgrids/grids-min.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-g{letter-spacing:-0.31em;*letter-spacing:normal;word-spacing:-0.43em}.yui3-u{display:inline-block;zoom:1;*display:inline;letter-spacing:normal;word-spacing:normal;vertical-align:top}.yui3-u-1,.yui3-u-1-2,.yui3-u-1-3,.yui3-u-2-3,.yui3-u-1-4,.yui3-u-3-4,.yui3-u-1-5,.yui3-u-2-5,.yui3-u-3-5,.yui3-u-4-5,.yui3-u-1-6,.yui3-u-5-6,.yui3-u-1-8,.yui3-u-3-8,.yui3-u-5-8,.yui3-u-7-8,.yui3-u-1-12,.yui3-u-5-12,.yui3-u-7-12,.yui3-u-11-12,.yui3-u-1-24,.yui3-u-5-24,.yui3-u-7-24,.yui3-u-11-24,.yui3-u-13-24,.yui3-u-17-24,.yui3-u-19-24,.yui3-u-23-24{display:inline-block;zoom:1;*display:inline;letter-spacing:normal;word-spacing:normal;vertical-align:top}.yui3-u-1{display:block}.yui3-u-1-2{width:50%}.yui3-u-1-3{width:33.33333%}.yui3-u-2-3{width:66.66666%}.yui3-u-1-4{width:25%}.yui3-u-3-4{width:75%}.yui3-u-1-5{width:20%}.yui3-u-2-5{width:40%}.yui3-u-3-5{width:60%}.yui3-u-4-5{width:80%}.yui3-u-1-6{width:16.656%}.yui3-u-5-6{width:83.33%}.yui3-u-1-8{width:12.5%}.yui3-u-3-8{width:37.5%}.yui3-u-5-8{width:62.5%}.yui3-u-7-8{width:87.5%}.yui3-u-1-12{width:8.3333%}.yui3-u-5-12{width:41.6666%}.yui3-u-7-12{width:58.3333%}.yui3-u-11-12{width:91.6666%}.yui3-u-1-24{width:4.1666%}.yui3-u-5-24{width:20.8333%}.yui3-u-7-24{width:29.1666%}.yui3-u-11-24{width:45.8333%}.yui3-u-13-24{width:54.1666%}.yui3-u-17-24{width:70.8333%}.yui3-u-19-24{width:79.1666%}.yui3-u-23-24{width:95.8333%}#yui3-css-stamp.cssgrids{display:none} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/cssgrids/grids.css b/lib/yuilib/3.9.1/build/cssgrids/grids.css deleted file mode 100644 index 899d6353b87..00000000000 --- a/lib/yuilib/3.9.1/build/cssgrids/grids.css +++ /dev/null @@ -1,162 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-g { - letter-spacing: -0.31em; /* webkit: collapse white-space between units */ - *letter-spacing: normal; /* reset IE < 8 */ - word-spacing: -0.43em; /* IE < 8 && gecko: collapse white-space between units */ -} - -.yui3-u { - display: inline-block; - zoom: 1; *display: inline; /* IE < 8: fake inline-block */ - letter-spacing: normal; - word-spacing: normal; - vertical-align: top; -} -.yui3-u-1, -.yui3-u-1-2, -.yui3-u-1-3, -.yui3-u-2-3, -.yui3-u-1-4, -.yui3-u-3-4, -.yui3-u-1-5, -.yui3-u-2-5, -.yui3-u-3-5, -.yui3-u-4-5, -.yui3-u-1-6, -.yui3-u-5-6, -.yui3-u-1-8, -.yui3-u-3-8, -.yui3-u-5-8, -.yui3-u-7-8, -.yui3-u-1-12, -.yui3-u-5-12, -.yui3-u-7-12, -.yui3-u-11-12, -.yui3-u-1-24, -.yui3-u-5-24, -.yui3-u-7-24, -.yui3-u-11-24, -.yui3-u-13-24, -.yui3-u-17-24, -.yui3-u-19-24, -.yui3-u-23-24 { - display: inline-block; - zoom: 1; *display: inline; /* IE < 8: fake inline-block */ - letter-spacing: normal; - word-spacing: normal; - vertical-align: top; -} - -.yui3-u-1 { - display: block; -} - -.yui3-u-1-2 { - width: 50%; -} - -.yui3-u-1-3 { - width: 33.33333%; -} - -.yui3-u-2-3 { - width: 66.66666%; -} - -.yui3-u-1-4 { - width: 25%; -} - -.yui3-u-3-4 { - width: 75%; -} - -.yui3-u-1-5 { - width: 20%; -} - -.yui3-u-2-5 { - width: 40%; -} - -.yui3-u-3-5 { - width: 60%; -} - -.yui3-u-4-5 { - width: 80%; -} - -.yui3-u-1-6 { - width: 16.656%; -} - -.yui3-u-5-6 { - width: 83.33%; -} - -.yui3-u-1-8 { - width: 12.5%; -} - -.yui3-u-3-8 { - width: 37.5%; -} - -.yui3-u-5-8 { - width: 62.5%; -} - -.yui3-u-7-8 { - width: 87.5%; -} - -.yui3-u-1-12 { - width: 8.3333%; -} - -.yui3-u-5-12 { - width: 41.6666%; -} - -.yui3-u-7-12 { - width: 58.3333%; -} - -.yui3-u-11-12 { - width: 91.6666%; -} - -.yui3-u-1-24 { - width: 4.1666%; -} - -.yui3-u-5-24 { - width: 20.8333%; -} - -.yui3-u-7-24 { - width: 29.1666%; -} - -.yui3-u-11-24 { - width: 45.8333%; -} - -.yui3-u-13-24 { - width: 54.1666%; -} - -.yui3-u-17-24 { - width: 70.8333%; -} - -.yui3-u-19-24 { - width: 79.1666%; -} - -.yui3-u-23-24 { - width: 95.8333%; -} -/* YUI CSS Detection Stamp */ -#yui3-css-stamp.cssgrids { display: none; } diff --git a/lib/yuilib/3.9.1/build/cssreset-context/reset-context-min.css b/lib/yuilib/3.9.1/build/cssreset-context/reset-context-min.css deleted file mode 100644 index 77f574e0cbc..00000000000 --- a/lib/yuilib/3.9.1/build/cssreset-context/reset-context-min.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-cssreset html{color:#000;background:#FFF}.yui3-cssreset body,.yui3-cssreset div,.yui3-cssreset dl,.yui3-cssreset dt,.yui3-cssreset dd,.yui3-cssreset ul,.yui3-cssreset ol,.yui3-cssreset li,.yui3-cssreset h1,.yui3-cssreset h2,.yui3-cssreset h3,.yui3-cssreset h4,.yui3-cssreset h5,.yui3-cssreset h6,.yui3-cssreset pre,.yui3-cssreset code,.yui3-cssreset form,.yui3-cssreset fieldset,.yui3-cssreset legend,.yui3-cssreset input,.yui3-cssreset textarea,.yui3-cssreset p,.yui3-cssreset blockquote,.yui3-cssreset th,.yui3-cssreset td{margin:0;padding:0}.yui3-cssreset table{border-collapse:collapse;border-spacing:0}.yui3-cssreset fieldset,.yui3-cssreset img{border:0}.yui3-cssreset address,.yui3-cssreset caption,.yui3-cssreset cite,.yui3-cssreset code,.yui3-cssreset dfn,.yui3-cssreset em,.yui3-cssreset strong,.yui3-cssreset th,.yui3-cssreset var{font-style:normal;font-weight:normal}.yui3-cssreset ol,.yui3-cssreset ul{list-style:none}.yui3-cssreset caption,.yui3-cssreset th{text-align:left}.yui3-cssreset h1,.yui3-cssreset h2,.yui3-cssreset h3,.yui3-cssreset h4,.yui3-cssreset h5,.yui3-cssreset h6{font-size:100%;font-weight:normal}.yui3-cssreset q:before,.yui3-cssreset q:after{content:''}.yui3-cssreset abbr,.yui3-cssreset acronym{border:0;font-variant:normal}.yui3-cssreset sup{vertical-align:text-top}.yui3-cssreset sub{vertical-align:text-bottom}.yui3-cssreset input,.yui3-cssreset textarea,.yui3-cssreset select{font-family:inherit;font-size:inherit;font-weight:inherit}.yui3-cssreset input,.yui3-cssreset textarea,.yui3-cssreset select{*font-size:100%}.yui3-cssreset legend{color:#000}#yui3-css-stamp.cssreset-context{display:none} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/cssreset-context/reset-context.css b/lib/yuilib/3.9.1/build/cssreset-context/reset-context.css deleted file mode 100644 index cffff522cc0..00000000000 --- a/lib/yuilib/3.9.1/build/cssreset-context/reset-context.css +++ /dev/null @@ -1,121 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -/*e - TODO will need to remove settings on HTML since we can't namespace it. - TODO with the prefix, should I group by selector or property for weight savings? -*/ -.yui3-cssreset html{ - color:#000; - background:#FFF; -} -/* - TODO remove settings on BODY since we can't namespace it. -*/ -/* - TODO test putting a class on HEAD. - - Fails on FF. -*/ -.yui3-cssreset body, -.yui3-cssreset div, -.yui3-cssreset dl, -.yui3-cssreset dt, -.yui3-cssreset dd, -.yui3-cssreset ul, -.yui3-cssreset ol, -.yui3-cssreset li, -.yui3-cssreset h1, -.yui3-cssreset h2, -.yui3-cssreset h3, -.yui3-cssreset h4, -.yui3-cssreset h5, -.yui3-cssreset h6, -.yui3-cssreset pre, -.yui3-cssreset code, -.yui3-cssreset form, -.yui3-cssreset fieldset, -.yui3-cssreset legend, -.yui3-cssreset input, -.yui3-cssreset textarea, -.yui3-cssreset p, -.yui3-cssreset blockquote, -.yui3-cssreset th, -.yui3-cssreset td { - margin:0; - padding:0; -} -.yui3-cssreset table { - border-collapse:collapse; - border-spacing:0; -} -.yui3-cssreset fieldset, -.yui3-cssreset img { - border:0; -} -/* - TODO think about hanlding inheritence differently, maybe letting IE6 fail a bit... -*/ -.yui3-cssreset address, -.yui3-cssreset caption, -.yui3-cssreset cite, -.yui3-cssreset code, -.yui3-cssreset dfn, -.yui3-cssreset em, -.yui3-cssreset strong, -.yui3-cssreset th, -.yui3-cssreset var { - font-style:normal; - font-weight:normal; -} - -.yui3-cssreset ol, -.yui3-cssreset ul { - list-style:none; -} - -.yui3-cssreset caption, -.yui3-cssreset th { - text-align:left; -} -.yui3-cssreset h1, -.yui3-cssreset h2, -.yui3-cssreset h3, -.yui3-cssreset h4, -.yui3-cssreset h5, -.yui3-cssreset h6 { - font-size:100%; - font-weight:normal; -} -.yui3-cssreset q:before, -.yui3-cssreset q:after { - content:''; -} -.yui3-cssreset abbr, -.yui3-cssreset acronym { - border:0; - font-variant:normal; -} -/* to preserve line-height and selector appearance */ -.yui3-cssreset sup { - vertical-align:text-top; -} -.yui3-cssreset sub { - vertical-align:text-bottom; -} -.yui3-cssreset input, -.yui3-cssreset textarea, -.yui3-cssreset select { - font-family:inherit; - font-size:inherit; - font-weight:inherit; -} -/*to enable resizing for IE*/ -.yui3-cssreset input, -.yui3-cssreset textarea, -.yui3-cssreset select { - *font-size:100%; -} -/*because legend doesn't inherit in IE */ -.yui3-cssreset legend { - color:#000; -} -/* YUI CSS Detection Stamp */ -#yui3-css-stamp.cssreset-context { display: none; } diff --git a/lib/yuilib/3.9.1/build/cssreset/reset-min.css b/lib/yuilib/3.9.1/build/cssreset/reset-min.css deleted file mode 100644 index b5bef607b8e..00000000000 --- a/lib/yuilib/3.9.1/build/cssreset/reset-min.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -html{color:#000;background:#FFF}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit}input,textarea,select{*font-size:100%}legend{color:#000}#yui3-css-stamp.cssreset{display:none} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/cssreset/reset.css b/lib/yuilib/3.9.1/build/cssreset/reset.css deleted file mode 100644 index 365d9d388d4..00000000000 --- a/lib/yuilib/3.9.1/build/cssreset/reset.css +++ /dev/null @@ -1,121 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -/* - TODO will need to remove settings on HTML since we can't namespace it. - TODO with the prefix, should I group by selector or property for weight savings? -*/ -html{ - color:#000; - background:#FFF; -} -/* - TODO remove settings on BODY since we can't namespace it. -*/ -/* - TODO test putting a class on HEAD. - - Fails on FF. -*/ -body, -div, -dl, -dt, -dd, -ul, -ol, -li, -h1, -h2, -h3, -h4, -h5, -h6, -pre, -code, -form, -fieldset, -legend, -input, -textarea, -p, -blockquote, -th, -td { - margin:0; - padding:0; -} -table { - border-collapse:collapse; - border-spacing:0; -} -fieldset, -img { - border:0; -} -/* - TODO think about hanlding inheritence differently, maybe letting IE6 fail a bit... -*/ -address, -caption, -cite, -code, -dfn, -em, -strong, -th, -var { - font-style:normal; - font-weight:normal; -} - -ol, -ul { - list-style:none; -} - -caption, -th { - text-align:left; -} -h1, -h2, -h3, -h4, -h5, -h6 { - font-size:100%; - font-weight:normal; -} -q:before, -q:after { - content:''; -} -abbr, -acronym { - border:0; - font-variant:normal; -} -/* to preserve line-height and selector appearance */ -sup { - vertical-align:text-top; -} -sub { - vertical-align:text-bottom; -} -input, -textarea, -select { - font-family:inherit; - font-size:inherit; - font-weight:inherit; -} -/*to enable resizing for IE*/ -input, -textarea, -select { - *font-size:100%; -} -/*because legend doesn't inherit in IE */ -legend { - color:#000; -} -/* YUI CSS Detection Stamp */ -#yui3-css-stamp.cssreset { display: none; } diff --git a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/datatable-base-deprecated-core.css b/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/datatable-base-deprecated-core.css deleted file mode 100644 index 2d4b3fda6c4..00000000000 --- a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/datatable-base-deprecated-core.css +++ /dev/null @@ -1,88 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -/* foundational CSS */ - -/* mask */ -.yui3-skin-sam .yui3-datatable-mask { - position:absolute; - z-index:9500; -} - -/* scrollable */ -.yui3-datatable-tmp { - position:absolute; - left:-9000px; -} - -.yui3-datatable-scrollable .yui3-datatable-bd { - overflow:auto; -} -.yui3-datatable-scrollable .yui3-datatable-hd { - overflow:hidden; - position:relative; /* for ie overflow bug http://rowanw.com/bugs/overflow_relative.htm */ -} - -.yui3-datatable-scrollable .yui3-datatable-bd thead tr, -.yui3-datatable-scrollable .yui3-datatable-bd thead th { - position:absolute; - left:-1500px; -} - -.yui3-datatable-scrollable tbody { - -moz-outline:none; -} - -/* sortable columns */ - -.yui3-skin-sam thead .yui3-datatable-sortable { - cursor:pointer; -} - -/* draggable columns */ -.yui3-skin-sam thead .yui3-datatable-draggable { - cursor: move; -} -.yui3-datatable-coltarget { - position: absolute; - z-index: 999; -} - -/* resizeable columns */ -.yui3-datatable-hd { - zoom:1; -} -th.yui3-datatable-resizeable .yui3-datatable-resizerliner { - position:relative; -} -.yui3-datatable-resizer { - position:absolute; - right:0; - bottom:0; - height:100%; - cursor:e-resize; - cursor:col-resize; - background-color:#CCC;opacity:0;filter: alpha(opacity=0); /* Bug 1952811: IE transparency z-index */ -} -.yui3-datatable-resizerproxy { - visibility:hidden; - position:absolute; - z-index:9000; - background-color:#CCC;opacity:0;filter: alpha(opacity=0); /* Bug 1952811: IE transparency z-index */ -} - -/* hidden columns */ -th.yui3-datatable-hidden .yui3-datatable-liner, -td.yui3-datatable-hidden .yui3-datatable-liner, -th.yui3-datatable-hidden .yui3-datatable-resizer { - /*TODO: document change from 2.5.2 to 2.6 - margin:0; - padding:0; - white-space:nowrap; - width:1px; - overflow:hidden;*/ - display:none; -} - -/* editing */ -.yui3-datatable-editor, .yui3-datatable-editor-shim { - position:absolute;z-index:9000; -} diff --git a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/night/datatable-base-deprecated-skin.css b/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/night/datatable-base-deprecated-skin.css deleted file mode 100644 index 2182caa6e73..00000000000 --- a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/night/datatable-base-deprecated-skin.css +++ /dev/null @@ -1,290 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-skin-night .yui3-datatable{ - font-family: HelveticaNeue,arial,helvetica,clean,sans-serif; - color:#8E8E8E; -} -.yui3-skin-night .yui3-datatable table { - margin:0; - padding:0; - font-size:inherit; - border-collapse:separate;*border-collapse:collapse;border-spacing:0; /* since ie6 and ie7 behave differently */ - border:1px solid #323434; - border-right:none; -} -.yui3-skin-night .yui3-datatable thead {border-spacing:0;} /* for safari bug */ - -.yui3-skin-night .yui3-datatable caption { - color:#474747; - font-size:85%; - font-weight:normal; - font-style:italic; - line-height:1; - padding:1em 0; - text-align:center; -} - -.yui3-skin-night .yui3-datatable th { - background-color:#3b3c3d; - - background: -moz-linear-gradient( - 0% 100% 90deg, - #242526 0%, - #3b3c3d 96%, - #2C2D2F 100% - ); - background: -webkit-gradient( - linear, - left bottom, - left top, - from(#242526), - color-stop(0.96, #3b3c3d), - to(#2C2D2F) - ); -} - -.yui3-skin-night .yui3-datatable th, -.yui3-skin-night .yui3-datatable th a { - font-weight:normal;text-decoration:none;color:#eee; /* header text */ - vertical-align:bottom; -} -.yui3-skin-night .yui3-datatable th { - margin:0;padding:0; - border:none; - border-right:1px solid #303030;/* inner column border */ -} -.yui3-skin-night .yui3-datatable tr.yui3-datatable-first td { - border-top:1px solid #323434; /*f00 tbody top border */ -} -.yui3-skin-night .yui3-datatable th .yui3-datatable-liner { - white-space:nowrap; -} -.yui3-skin-night .yui3-datatable-liner { - margin:0;padding:0; - padding:4px 10px 4px 10px; /* cell padding */ - overflow:visible; /*to make ths where the title is really long work*/ - border:0 solid black; -} -.yui3-skin-night .yui3-datatable-coltarget { - width: 5px; - background-color: red; /*#foo*/ -} -.yui3-skin-night .yui3-datatable td { - margin:0;padding:0; - border:none; - border-right:1px solid #303030; /* inner column border */ - text-align:left; -} -.yui3-skin-night .yui3-datatable-list td { - border-right:none; /* disable inner column border in list mode */ -} -.yui3-skin-night .yui3-datatable-resizer { - width:6px; -} - -/* mask */ -.yui3-skin-night .yui3-datatable-mask { - background-color: #000; - opacity: .25; - filter: alpha(opacity=25); /* Set opacity in IE */ -} - -/* messaging */ -.yui3-skin-night .yui3-datatable-message { - background-color:#FFF; -} - -/* scrolling */ - - -/* Jeff added this to cover the datatable attribute COLOR_COLUMNFILLER which sets the style through js */ -.yui3-skin-night .yui3-datatable-scrollable thead .yui3-datatable-first th:last-child div{ - border-right:solid 30px #2F3031; -} - -.yui3-skin-night .yui3-datatable-scrollable table {border:none;} -.yui3-skin-night .yui3-datatable-scrollable .yui3-datatable-hd { - border-left:1px solid #303030; - border-top:1px solid #303030; - border-right:1px solid #303030; -} -.yui3-skin-night .yui3-datatable-scrollable .yui3-datatable-bd { - border-left:1px solid #303030; - border-bottom:1px solid #303030; - border-right:1px solid #303030; - background-color:#000;/*FFF*/ -} -.yui3-skin-night .yui3-datatable-scrollable .yui3-datatable-data tr.yui3-datatable-last td {border-bottom:1px solid #303030;} - -/* sortable columns */ -.yui3-skin-night th.yui3-datatable-asc, -.yui3-skin-night th.yui3-datatable-desc { - background-color:#555658; - background: -moz-linear-gradient( - 0% 100% 90deg, - #343536 0%, - #555658 96%, - #3E3F41 100% - ); - background: -webkit-gradient( - linear, - left bottom, - left top, - from(#343536), - color-stop(0.96, #555658), - to(#3E3F41) - ); - -} -.yui3-skin-night th.yui3-datatable-sortable .yui3-datatable-liner { - padding-right:20px; /* room for arrow */ -} -.yui3-skin-night th.yui3-datatable-asc .yui3-datatable-liner { - background:url(dt-arrow-up.png) no-repeat right; /* up arrow */ -} -.yui3-skin-night th.yui3-datatable-desc .yui3-datatable-liner { - background:url(dt-arrow-dn.png) no-repeat right; /* down arrow */ -} - -/* editing */ -tbody .yui3-datatable-editable { - cursor:pointer; -} -.yui3-datatable-editor { - text-align:left; - background-color:#F2F2F2; - border:1px solid #808080; - padding:6px; -} -.yui3-datatable-editor label { - padding-left:4px;padding-right:6px; -} -.yui3-datatable-editor .yui3-datatable-button { - padding-top:6px;text-align:right; -} -.yui3-datatable-editor .yui3-datatable-button button { - background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0; - border:1px solid #999; - width:4em;height:1.8em; - margin-left:6px; -} -.yui3-datatable-editor .yui3-datatable-button button.yui3-datatable-default { - background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1400px; - background-color: #5584E0; - border:1px solid #304369; - color:#FFF -} -.yui3-datatable-editor .yui3-datatable-button button:hover { - background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1300px; - color:#000; -} -.yui3-datatable-editor .yui3-datatable-button button:active { - background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1700px; - color:#000; -} - -/* striping */ -.yui3-skin-night .yui3-datatable td { background-color:transparent; } /* none */ -.yui3-skin-night tr.yui3-datatable-even td { background-color:#0E0E0E; } /* darkest bkg even*/ -.yui3-skin-night tr.yui3-datatable-odd td { background-color:#1D1E1E; } /* lighter odd */ -.yui3-skin-night tr.yui3-datatable-even td.yui3-datatable-asc, -.yui3-skin-night tr.yui3-datatable-even td.yui3-datatable-desc { background-color:#191a1A; } /* dark sorted */ -.yui3-skin-night tr.yui3-datatable-odd td.yui3-datatable-asc, -.yui3-skin-night tr.yui3-datatable-odd td.yui3-datatable-desc { background-color:#2B2C2C; } /* light sorted */ - -/* disable striping in list mode */ -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-even { background-color:#0E0E0E; } /* darkest bkg */ -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-odd { background-color:#0E0E0E; } /* darkest bkg */ -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-asc, -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-desc { background-color:#151515; } /* light blue sorted */ -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-asc, -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-desc { background-color:#151515; } /* light blue sorted */ - -/* highlighting */ -.yui3-skin-night th.yui3-datatable-highlighted, -.yui3-skin-night th.yui3-datatable-highlighted a { - background-color:#B2D2FF; /* med blue hover */ -} -.yui3-skin-night tr.yui3-datatable-highlighted, -.yui3-skin-night tr.yui3-datatable-highlighted td.yui3-datatable-asc, -.yui3-skin-night tr.yui3-datatable-highlighted td.yui3-datatable-desc, -.yui3-skin-night tr.yui3-datatable-even td.yui3-datatable-highlighted, -.yui3-skin-night tr.yui3-datatable-odd td.yui3-datatable-highlighted { - cursor:pointer; - background-color:#B2D2FF; /* med blue hover */ -} - -/* enable highlighting in list mode */ -.yui3-skin-night .yui3-datatable-list th.yui3-datatable-highlighted, -.yui3-skin-night .yui3-datatable-list th.yui3-datatable-highlighted a { - background-color:#B2D2FF; /* med blue hover */ -} -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-highlighted, -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-asc, -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-desc, -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-highlighted, -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-highlighted { - cursor:pointer; - background-color:#B2D2FF; /* med blue hover */ -} - -/* selection */ -.yui3-skin-night th.yui3-datatable-selected, -.yui3-skin-night th.yui3-datatable-selected a { - background-color:#446CD7; /* bright blue selected cell */ -} -.yui3-skin-night tr.yui3-datatable-selected td, -.yui3-skin-night tr.yui3-datatable-selected td.yui3-datatable-asc, -.yui3-skin-night tr.yui3-datatable-selected td.yui3-datatable-desc { - background-color:#426FD9; /* bright blue selected row */ - color:#FFF; -} -.yui3-skin-night tr.yui3-datatable-even td.yui3-datatable-selected, -.yui3-skin-night tr.yui3-datatable-odd td.yui3-datatable-selected { - background-color:#446CD7; /* bright blue selected cell */ - color:#FFF; -} - -/* enable selection in list mode */ -.yui3-skin-night .yui3-datatable-list th.yui3-datatable-selected, -.yui3-skin-night .yui3-datatable-list th.yui3-datatable-selected a { - background-color:#446CD7; /* bright blue selected cell */ -} -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-selected td, -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-asc, -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-desc { - background-color:#426FD9; /* bright blue selected row */ - color:#FFF; -} -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-selected, -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-selected { - background-color:#446CD7; /* bright blue selected cell */ - color:#FFF; -} - -/* pagination */ -.yui3-skin-night .yui3-datatable-paginator { - display:block;margin:6px 0;white-space:nowrap; -} -.yui3-skin-night .yui3-datatable-paginator .yui3-datatable-first, -.yui3-skin-night .yui3-datatable-paginator .yui3-datatable-last, -.yui3-skin-night .yui3-datatable-paginator .yui3-datatable-selected { - padding:2px 6px; -} -.yui3-skin-night .yui3-datatable-paginator a.yui3-datatable-first, -.yui3-skin-night .yui3-datatable-paginator a.yui3-datatable-last { - text-decoration:none; -} -.yui3-skin-night .yui3-datatable-paginator .yui3-datatable-previous, -.yui3-skin-night .yui3-datatable-paginator .yui3-datatable-next { - display:none; -} -.yui3-skin-night a.yui3-datatable-page { - border:1px solid #303030; - padding:2px 6px; - text-decoration:none; - background-color:#fff -} -.yui3-skin-night .yui3-datatable-selected { - border:1px solid #fff; - background-color:#fff; -} diff --git a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/night/datatable-base-deprecated.css b/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/night/datatable-base-deprecated.css deleted file mode 100644 index 26208526ab2..00000000000 --- a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/night/datatable-base-deprecated.css +++ /dev/null @@ -1,3 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-skin-sam .yui3-datatable-mask{position:absolute;z-index:9500}.yui3-datatable-tmp{position:absolute;left:-9000px}.yui3-datatable-scrollable .yui3-datatable-bd{overflow:auto}.yui3-datatable-scrollable .yui3-datatable-hd{overflow:hidden;position:relative}.yui3-datatable-scrollable .yui3-datatable-bd thead tr,.yui3-datatable-scrollable .yui3-datatable-bd thead th{position:absolute;left:-1500px}.yui3-datatable-scrollable tbody{-moz-outline:0}.yui3-skin-sam thead .yui3-datatable-sortable{cursor:pointer}.yui3-skin-sam thead .yui3-datatable-draggable{cursor:move}.yui3-datatable-coltarget{position:absolute;z-index:999}.yui3-datatable-hd{zoom:1}th.yui3-datatable-resizeable .yui3-datatable-resizerliner{position:relative}.yui3-datatable-resizer{position:absolute;right:0;bottom:0;height:100%;cursor:e-resize;cursor:col-resize;background-color:#CCC;opacity:0;filter:alpha(opacity=0)}.yui3-datatable-resizerproxy{visibility:hidden;position:absolute;z-index:9000;background-color:#CCC;opacity:0;filter:alpha(opacity=0)}th.yui3-datatable-hidden .yui3-datatable-liner,td.yui3-datatable-hidden .yui3-datatable-liner,th.yui3-datatable-hidden .yui3-datatable-resizer{display:none}.yui3-datatable-editor,.yui3-datatable-editor-shim{position:absolute;z-index:9000}.yui3-skin-night .yui3-datatable{font-family:HelveticaNeue,arial,helvetica,clean,sans-serif;color:#8e8e8e}.yui3-skin-night .yui3-datatable table{margin:0;padding:0;font-size:inherit;border-collapse:separate;*border-collapse:collapse;border-spacing:0;border:1px solid #323434;border-right:0}.yui3-skin-night .yui3-datatable thead{border-spacing:0}.yui3-skin-night .yui3-datatable caption{color:#474747;font-size:85%;font-weight:normal;font-style:italic;line-height:1;padding:1em 0;text-align:center}.yui3-skin-night .yui3-datatable th{background-color:#3b3c3d;background:-moz-linear-gradient(0% 100% 90deg,#242526 0,#3b3c3d 96%,#2c2d2f 100%);background:-webkit-gradient(linear,left bottom,left top,from(#242526),color-stop(0.96,#3b3c3d),to(#2c2d2f))}.yui3-skin-night .yui3-datatable th,.yui3-skin-night .yui3-datatable th a{font-weight:normal;text-decoration:none;color:#eee;vertical-align:bottom}.yui3-skin-night .yui3-datatable th{margin:0;padding:0;border:0;border-right:1px solid #303030}.yui3-skin-night .yui3-datatable tr.yui3-datatable-first td{border-top:1px solid #323434}.yui3-skin-night .yui3-datatable th .yui3-datatable-liner{white-space:nowrap}.yui3-skin-night .yui3-datatable-liner{margin:0;padding:0;padding:4px 10px 4px 10px;overflow:visible;border:0 solid black}.yui3-skin-night .yui3-datatable-coltarget{width:5px;background-color:red}.yui3-skin-night .yui3-datatable td{margin:0;padding:0;border:0;border-right:1px solid #303030;text-align:left}.yui3-skin-night .yui3-datatable-list td{border-right:0}.yui3-skin-night .yui3-datatable-resizer{width:6px}.yui3-skin-night .yui3-datatable-mask{background-color:#000;opacity:.25;filter:alpha(opacity=25)}.yui3-skin-night .yui3-datatable-message{background-color:#FFF}.yui3-skin-night .yui3-datatable-scrollable thead .yui3-datatable-first th:last-child div{border-right:solid 30px #2f3031}.yui3-skin-night .yui3-datatable-scrollable table{border:0}.yui3-skin-night .yui3-datatable-scrollable .yui3-datatable-hd{border-left:1px solid #303030;border-top:1px solid #303030;border-right:1px solid #303030}.yui3-skin-night .yui3-datatable-scrollable .yui3-datatable-bd{border-left:1px solid #303030;border-bottom:1px solid #303030;border-right:1px solid #303030;background-color:#000}.yui3-skin-night .yui3-datatable-scrollable .yui3-datatable-data tr.yui3-datatable-last td{border-bottom:1px solid #303030}.yui3-skin-night th.yui3-datatable-asc,.yui3-skin-night th.yui3-datatable-desc{background-color:#555658;background:-moz-linear-gradient(0% 100% 90deg,#343536 0,#555658 96%,#3e3f41 100%);background:-webkit-gradient(linear,left bottom,left top,from(#343536),color-stop(0.96,#555658),to(#3e3f41))}.yui3-skin-night th.yui3-datatable-sortable .yui3-datatable-liner{padding-right:20px}.yui3-skin-night th.yui3-datatable-asc .yui3-datatable-liner{background:url(dt-arrow-up.png) no-repeat right}.yui3-skin-night th.yui3-datatable-desc .yui3-datatable-liner{background:url(dt-arrow-dn.png) no-repeat right}tbody .yui3-datatable-editable{cursor:pointer}.yui3-datatable-editor{text-align:left;background-color:#f2f2f2;border:1px solid #808080;padding:6px}.yui3-datatable-editor label{padding-left:4px;padding-right:6px}.yui3-datatable-editor .yui3-datatable-button{padding-top:6px;text-align:right}.yui3-datatable-editor .yui3-datatable-button button{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;border:1px solid #999;width:4em;height:1.8em;margin-left:6px}.yui3-datatable-editor .yui3-datatable-button button.yui3-datatable-default{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1400px;background-color:#5584e0;border:1px solid #304369;color:#FFF}.yui3-datatable-editor .yui3-datatable-button button:hover{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1300px;color:#000}.yui3-datatable-editor .yui3-datatable-button button:active{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1700px;color:#000}.yui3-skin-night .yui3-datatable td{background-color:transparent}.yui3-skin-night tr.yui3-datatable-even td{background-color:#0e0e0e}.yui3-skin-night tr.yui3-datatable-odd td{background-color:#1d1e1e}.yui3-skin-night tr.yui3-datatable-even td.yui3-datatable-asc,.yui3-skin-night tr.yui3-datatable-even td.yui3-datatable-desc{background-color:#191a1a}.yui3-skin-night tr.yui3-datatable-odd td.yui3-datatable-asc,.yui3-skin-night tr.yui3-datatable-odd td.yui3-datatable-desc{background-color:#2b2c2c}.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-even{background-color:#0e0e0e}.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-odd{background-color:#0e0e0e}.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-asc,.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-desc{background-color:#151515} -.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-asc,.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-desc{background-color:#151515}.yui3-skin-night th.yui3-datatable-highlighted,.yui3-skin-night th.yui3-datatable-highlighted a{background-color:#b2d2ff}.yui3-skin-night tr.yui3-datatable-highlighted,.yui3-skin-night tr.yui3-datatable-highlighted td.yui3-datatable-asc,.yui3-skin-night tr.yui3-datatable-highlighted td.yui3-datatable-desc,.yui3-skin-night tr.yui3-datatable-even td.yui3-datatable-highlighted,.yui3-skin-night tr.yui3-datatable-odd td.yui3-datatable-highlighted{cursor:pointer;background-color:#b2d2ff}.yui3-skin-night .yui3-datatable-list th.yui3-datatable-highlighted,.yui3-skin-night .yui3-datatable-list th.yui3-datatable-highlighted a{background-color:#b2d2ff}.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-highlighted,.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-asc,.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-desc,.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-highlighted,.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-highlighted{cursor:pointer;background-color:#b2d2ff}.yui3-skin-night th.yui3-datatable-selected,.yui3-skin-night th.yui3-datatable-selected a{background-color:#446cd7}.yui3-skin-night tr.yui3-datatable-selected td,.yui3-skin-night tr.yui3-datatable-selected td.yui3-datatable-asc,.yui3-skin-night tr.yui3-datatable-selected td.yui3-datatable-desc{background-color:#426fd9;color:#FFF}.yui3-skin-night tr.yui3-datatable-even td.yui3-datatable-selected,.yui3-skin-night tr.yui3-datatable-odd td.yui3-datatable-selected{background-color:#446cd7;color:#FFF}.yui3-skin-night .yui3-datatable-list th.yui3-datatable-selected,.yui3-skin-night .yui3-datatable-list th.yui3-datatable-selected a{background-color:#446cd7}.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-selected td,.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-asc,.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-desc{background-color:#426fd9;color:#FFF}.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-selected,.yui3-skin-night .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-selected{background-color:#446cd7;color:#FFF}.yui3-skin-night .yui3-datatable-paginator{display:block;margin:6px 0;white-space:nowrap}.yui3-skin-night .yui3-datatable-paginator .yui3-datatable-first,.yui3-skin-night .yui3-datatable-paginator .yui3-datatable-last,.yui3-skin-night .yui3-datatable-paginator .yui3-datatable-selected{padding:2px 6px}.yui3-skin-night .yui3-datatable-paginator a.yui3-datatable-first,.yui3-skin-night .yui3-datatable-paginator a.yui3-datatable-last{text-decoration:none}.yui3-skin-night .yui3-datatable-paginator .yui3-datatable-previous,.yui3-skin-night .yui3-datatable-paginator .yui3-datatable-next{display:none}.yui3-skin-night a.yui3-datatable-page{border:1px solid #303030;padding:2px 6px;text-decoration:none;background-color:#fff}.yui3-skin-night .yui3-datatable-selected{border:1px solid #fff;background-color:#fff}#yui3-css-stamp.skin-night-datatable-base-deprecated{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/datatable-base-deprecated-skin.css b/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/datatable-base-deprecated-skin.css deleted file mode 100644 index 2436361230f..00000000000 --- a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/datatable-base-deprecated-skin.css +++ /dev/null @@ -1,238 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -/* basic skin styles */ -.yui3-skin-sam .yui3-datatable table { - margin:0;padding:0; - font-family:arial;font-size:inherit; - border-collapse:separate;*border-collapse:collapse;border-spacing:0; /* since ie6 and ie7 behave differently */ - border:1px solid #7F7F7F; -} -.yui3-skin-sam .yui3-datatable thead {border-spacing:0;} /* for safari bug */ - -.yui3-skin-sam .yui3-datatable caption { - color:#000000; - font-size:85%; - font-weight:normal; - font-style:italic; - line-height:1; - padding:1em 0pt; - text-align:center; -} - -.yui3-skin-sam .yui3-datatable th { - background:#D8D8DA url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0; /* header gradient */ -} -.yui3-skin-sam .yui3-datatable th, -.yui3-skin-sam .yui3-datatable th a { - font-weight:normal;text-decoration:none;color:#000; /* header text */ - vertical-align:bottom; -} -.yui3-skin-sam .yui3-datatable th { - margin:0;padding:0; - border:none; - border-right:1px solid #CBCBCB;/* inner column border */ -} -.yui3-skin-sam .yui3-datatable tr.yui3-datatable-first td { - border-top:1px solid #7F7F7F; /* tbody top border */ -} -.yui3-skin-sam .yui3-datatable th .yui3-datatable-liner { - white-space:nowrap; -} -.yui3-skin-sam .yui3-datatable-liner { - margin:0;padding:0; - padding:4px 10px 4px 10px; /* cell padding */ - overflow:visible; /*to make ths where the title is really long work*/ - border:0px solid black; -} -.yui3-skin-sam .yui3-datatable-coltarget { - width: 5px; - background-color: red; -} -.yui3-skin-sam .yui3-datatable td { - margin:0;padding:0; - border:none; - border-right:1px solid #CBCBCB; /* inner column border */ - text-align:left; -} -.yui3-skin-sam .yui3-datatable-list td { - border-right:none; /* disable inner column border in list mode */ -} -.yui3-skin-sam .yui3-datatable-resizer { - width:6px; -} - -/* mask */ -.yui3-skin-sam .yui3-datatable-mask { - background-color: #000; - opacity: .25; - filter: alpha(opacity=25); /* Set opacity in IE */ -} - -/* messaging */ -.yui3-skin-sam .yui3-datatable-message { - background-color:#FFF; -} - -/* scrolling */ -.yui3-skin-sam .yui3-datatable-scrollable table {border:none;} -.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-hd {border-left:1px solid #7F7F7F;border-top:1px solid #7F7F7F;border-right:1px solid #7F7F7F;} -.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-bd {border-left:1px solid #7F7F7F;border-bottom:1px solid #7F7F7F;border-right:1px solid #7F7F7F;background-color:#FFF;} -.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-data tr.yui3-datatable-last td {border-bottom:1px solid #7F7F7F;} - -/* sortable columns */ -.yui3-skin-sam th.yui3-datatable-asc, -.yui3-skin-sam th.yui3-datatable-desc { - background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -100px; /* sorted header gradient */ -} -.yui3-skin-sam th.yui3-datatable-sortable .yui3-datatable-liner { - padding-right:20px; /* room for arrow */ -} -.yui3-skin-sam th.yui3-datatable-asc .yui3-datatable-liner { - background:url(dt-arrow-up.png) no-repeat right; /* up arrow */ -} -.yui3-skin-sam th.yui3-datatable-desc .yui3-datatable-liner { - background:url(dt-arrow-dn.png) no-repeat right; /* down arrow */ -} - -/* editing */ -tbody .yui3-datatable-editable { - cursor:pointer; -} -.yui3-datatable-editor { - text-align:left; - background-color:#F2F2F2; - border:1px solid #808080; - padding:6px; -} -.yui3-datatable-editor label { - padding-left:4px;padding-right:6px; -} -.yui3-datatable-editor .yui3-datatable-button { - padding-top:6px;text-align:right; -} -.yui3-datatable-editor .yui3-datatable-button button { - background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0; - border:1px solid #999; - width:4em;height:1.8em; - margin-left:6px; -} -.yui3-datatable-editor .yui3-datatable-button button.yui3-datatable-default { - background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1400px; - background-color: #5584E0; - border:1px solid #304369; - color:#FFF -} -.yui3-datatable-editor .yui3-datatable-button button:hover { - background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1300px; - color:#000; -} -.yui3-datatable-editor .yui3-datatable-button button:active { - background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1700px; - color:#000; -} - -/* striping */ -.yui3-skin-sam .yui3-datatable td { background-color:transparent; } /* none */ -.yui3-skin-sam tr.yui3-datatable-even td { background-color:#FFF; } /* white */ -.yui3-skin-sam tr.yui3-datatable-odd td { background-color:#EDF5FF; } /* light blue */ -.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-asc, -.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-desc { background-color:#EDF5FF; } /* light blue sorted */ -.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-asc, -.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-desc { background-color:#DBEAFF; } /* dark blue sorted */ - -/* disable striping in list mode */ -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even { background-color:#FFF; } /* white */ -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd { background-color:#FFF; } /* white */ -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-asc, -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-desc { background-color:#EDF5FF; } /* light blue sorted */ -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-asc, -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-desc { background-color:#EDF5FF; } /* light blue sorted */ - -/* highlighting */ -.yui3-skin-sam th.yui3-datatable-highlighted, -.yui3-skin-sam th.yui3-datatable-highlighted a { - background-color:#B2D2FF; /* med blue hover */ -} -.yui3-skin-sam tr.yui3-datatable-highlighted, -.yui3-skin-sam tr.yui3-datatable-highlighted td.yui3-datatable-asc, -.yui3-skin-sam tr.yui3-datatable-highlighted td.yui3-datatable-desc, -.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-highlighted, -.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-highlighted { - cursor:pointer; - background-color:#B2D2FF; /* med blue hover */ -} - -/* enable highlighting in list mode */ -.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-highlighted, -.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-highlighted a { - background-color:#B2D2FF; /* med blue hover */ -} -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted, -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-asc, -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-desc, -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-highlighted, -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-highlighted { - cursor:pointer; - background-color:#B2D2FF; /* med blue hover */ -} - -/* selection */ -.yui3-skin-sam th.yui3-datatable-selected, -.yui3-skin-sam th.yui3-datatable-selected a { - background-color:#446CD7; /* bright blue selected cell */ -} -.yui3-skin-sam tr.yui3-datatable-selected td, -.yui3-skin-sam tr.yui3-datatable-selected td.yui3-datatable-asc, -.yui3-skin-sam tr.yui3-datatable-selected td.yui3-datatable-desc { - background-color:#426FD9; /* bright blue selected row */ - color:#FFF; -} -.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-selected, -.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-selected { - background-color:#446CD7; /* bright blue selected cell */ - color:#FFF; -} - -/* enable selection in list mode */ -.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-selected, -.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-selected a { - background-color:#446CD7; /* bright blue selected cell */ -} -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td, -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-asc, -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-desc { - background-color:#426FD9; /* bright blue selected row */ - color:#FFF; -} -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-selected, -.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-selected { - background-color:#446CD7; /* bright blue selected cell */ - color:#FFF; -} - -/* pagination */ -.yui3-skin-sam .yui3-datatable-paginator { - display:block;margin:6px 0;white-space:nowrap; -} -.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-first, -.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-last, -.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-selected { - padding:2px 6px; -} -.yui3-skin-sam .yui3-datatable-paginator a.yui3-datatable-first, -.yui3-skin-sam .yui3-datatable-paginator a.yui3-datatable-last { - text-decoration:none; -} -.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-previous, -.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-next { - display:none; -} -.yui3-skin-sam a.yui3-datatable-page { - border:1px solid #CBCBCB; - padding:2px 6px; - text-decoration:none; - background-color:#fff -} -.yui3-skin-sam .yui3-datatable-selected { - border:1px solid #fff; - background-color:#fff; -} diff --git a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/datatable-base-deprecated.css b/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/datatable-base-deprecated.css deleted file mode 100644 index 6b122786f63..00000000000 --- a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/datatable-base-deprecated.css +++ /dev/null @@ -1,3 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-skin-sam .yui3-datatable-mask{position:absolute;z-index:9500}.yui3-datatable-tmp{position:absolute;left:-9000px}.yui3-datatable-scrollable .yui3-datatable-bd{overflow:auto}.yui3-datatable-scrollable .yui3-datatable-hd{overflow:hidden;position:relative}.yui3-datatable-scrollable .yui3-datatable-bd thead tr,.yui3-datatable-scrollable .yui3-datatable-bd thead th{position:absolute;left:-1500px}.yui3-datatable-scrollable tbody{-moz-outline:0}.yui3-skin-sam thead .yui3-datatable-sortable{cursor:pointer}.yui3-skin-sam thead .yui3-datatable-draggable{cursor:move}.yui3-datatable-coltarget{position:absolute;z-index:999}.yui3-datatable-hd{zoom:1}th.yui3-datatable-resizeable .yui3-datatable-resizerliner{position:relative}.yui3-datatable-resizer{position:absolute;right:0;bottom:0;height:100%;cursor:e-resize;cursor:col-resize;background-color:#CCC;opacity:0;filter:alpha(opacity=0)}.yui3-datatable-resizerproxy{visibility:hidden;position:absolute;z-index:9000;background-color:#CCC;opacity:0;filter:alpha(opacity=0)}th.yui3-datatable-hidden .yui3-datatable-liner,td.yui3-datatable-hidden .yui3-datatable-liner,th.yui3-datatable-hidden .yui3-datatable-resizer{display:none}.yui3-datatable-editor,.yui3-datatable-editor-shim{position:absolute;z-index:9000}.yui3-skin-sam .yui3-datatable table{margin:0;padding:0;font-family:arial;font-size:inherit;border-collapse:separate;*border-collapse:collapse;border-spacing:0;border:1px solid #7f7f7f}.yui3-skin-sam .yui3-datatable thead{border-spacing:0}.yui3-skin-sam .yui3-datatable caption{color:#000;font-size:85%;font-weight:normal;font-style:italic;line-height:1;padding:1em 0;text-align:center}.yui3-skin-sam .yui3-datatable th{background:#d8d8da url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0}.yui3-skin-sam .yui3-datatable th,.yui3-skin-sam .yui3-datatable th a{font-weight:normal;text-decoration:none;color:#000;vertical-align:bottom}.yui3-skin-sam .yui3-datatable th{margin:0;padding:0;border:0;border-right:1px solid #cbcbcb}.yui3-skin-sam .yui3-datatable tr.yui3-datatable-first td{border-top:1px solid #7f7f7f}.yui3-skin-sam .yui3-datatable th .yui3-datatable-liner{white-space:nowrap}.yui3-skin-sam .yui3-datatable-liner{margin:0;padding:0;padding:4px 10px 4px 10px;overflow:visible;border:0 solid black}.yui3-skin-sam .yui3-datatable-coltarget{width:5px;background-color:red}.yui3-skin-sam .yui3-datatable td{margin:0;padding:0;border:0;border-right:1px solid #cbcbcb;text-align:left}.yui3-skin-sam .yui3-datatable-list td{border-right:0}.yui3-skin-sam .yui3-datatable-resizer{width:6px}.yui3-skin-sam .yui3-datatable-mask{background-color:#000;opacity:.25;filter:alpha(opacity=25)}.yui3-skin-sam .yui3-datatable-message{background-color:#FFF}.yui3-skin-sam .yui3-datatable-scrollable table{border:0}.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-hd{border-left:1px solid #7f7f7f;border-top:1px solid #7f7f7f;border-right:1px solid #7f7f7f}.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-bd{border-left:1px solid #7f7f7f;border-bottom:1px solid #7f7f7f;border-right:1px solid #7f7f7f;background-color:#FFF}.yui3-skin-sam .yui3-datatable-scrollable .yui3-datatable-data tr.yui3-datatable-last td{border-bottom:1px solid #7f7f7f}.yui3-skin-sam th.yui3-datatable-asc,.yui3-skin-sam th.yui3-datatable-desc{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -100px}.yui3-skin-sam th.yui3-datatable-sortable .yui3-datatable-liner{padding-right:20px}.yui3-skin-sam th.yui3-datatable-asc .yui3-datatable-liner{background:url(dt-arrow-up.png) no-repeat right}.yui3-skin-sam th.yui3-datatable-desc .yui3-datatable-liner{background:url(dt-arrow-dn.png) no-repeat right}tbody .yui3-datatable-editable{cursor:pointer}.yui3-datatable-editor{text-align:left;background-color:#f2f2f2;border:1px solid #808080;padding:6px}.yui3-datatable-editor label{padding-left:4px;padding-right:6px}.yui3-datatable-editor .yui3-datatable-button{padding-top:6px;text-align:right}.yui3-datatable-editor .yui3-datatable-button button{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;border:1px solid #999;width:4em;height:1.8em;margin-left:6px}.yui3-datatable-editor .yui3-datatable-button button.yui3-datatable-default{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1400px;background-color:#5584e0;border:1px solid #304369;color:#FFF}.yui3-datatable-editor .yui3-datatable-button button:hover{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1300px;color:#000}.yui3-datatable-editor .yui3-datatable-button button:active{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1700px;color:#000}.yui3-skin-sam .yui3-datatable td{background-color:transparent}.yui3-skin-sam tr.yui3-datatable-even td{background-color:#FFF}.yui3-skin-sam tr.yui3-datatable-odd td{background-color:#edf5ff}.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-desc{background-color:#edf5ff}.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-desc{background-color:#dbeaff}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even{background-color:#FFF}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd{background-color:#FFF}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-desc{background-color:#edf5ff}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-desc{background-color:#edf5ff}.yui3-skin-sam th.yui3-datatable-highlighted,.yui3-skin-sam th.yui3-datatable-highlighted a{background-color:#b2d2ff}.yui3-skin-sam tr.yui3-datatable-highlighted,.yui3-skin-sam tr.yui3-datatable-highlighted td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-highlighted td.yui3-datatable-desc,.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-highlighted,.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-highlighted{cursor:pointer;background-color:#b2d2ff} -.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-highlighted,.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-highlighted a{background-color:#b2d2ff}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-highlighted td.yui3-datatable-desc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-highlighted,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-highlighted{cursor:pointer;background-color:#b2d2ff}.yui3-skin-sam th.yui3-datatable-selected,.yui3-skin-sam th.yui3-datatable-selected a{background-color:#446cd7}.yui3-skin-sam tr.yui3-datatable-selected td,.yui3-skin-sam tr.yui3-datatable-selected td.yui3-datatable-asc,.yui3-skin-sam tr.yui3-datatable-selected td.yui3-datatable-desc{background-color:#426fd9;color:#FFF}.yui3-skin-sam tr.yui3-datatable-even td.yui3-datatable-selected,.yui3-skin-sam tr.yui3-datatable-odd td.yui3-datatable-selected{background-color:#446cd7;color:#FFF}.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-selected,.yui3-skin-sam .yui3-datatable-list th.yui3-datatable-selected a{background-color:#446cd7}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-asc,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-selected td.yui3-datatable-desc{background-color:#426fd9;color:#FFF}.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-even td.yui3-datatable-selected,.yui3-skin-sam .yui3-datatable-list tr.yui3-datatable-odd td.yui3-datatable-selected{background-color:#446cd7;color:#FFF}.yui3-skin-sam .yui3-datatable-paginator{display:block;margin:6px 0;white-space:nowrap}.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-first,.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-last,.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-selected{padding:2px 6px}.yui3-skin-sam .yui3-datatable-paginator a.yui3-datatable-first,.yui3-skin-sam .yui3-datatable-paginator a.yui3-datatable-last{text-decoration:none}.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-previous,.yui3-skin-sam .yui3-datatable-paginator .yui3-datatable-next{display:none}.yui3-skin-sam a.yui3-datatable-page{border:1px solid #cbcbcb;padding:2px 6px;text-decoration:none;background-color:#fff}.yui3-skin-sam .yui3-datatable-selected{border:1px solid #fff;background-color:#fff}#yui3-css-stamp.skin-sam-datatable-base-deprecated{display:none} diff --git a/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/dt-arrow-dn.png b/lib/yuilib/3.9.1/build/datatable-base-deprecated/assets/skins/sam/dt-arrow-dn.png deleted file mode 100644 index 9c42b83318d2e2cf2b9210564a65f46b0e722ccd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 101 zcmeAS@N?(olHy`uVBq!ia0vp@K+M9y1|&nDY~2E+bUa-gLnNjqcl7l9IDgsko|&iJ_1J&* w#1z9E30G$33EYQTOp-Db+?2z3TTGZ3!WgRm?u^q}4%Efq>FVdQ&MBb@0G4GM%K!iX diff --git a/lib/yuilib/3.9.1/build/datatable-base-deprecated/datatable-base-deprecated-debug.js b/lib/yuilib/3.9.1/build/datatable-base-deprecated/datatable-base-deprecated-debug.js deleted file mode 100644 index a4967314d6f..00000000000 --- a/lib/yuilib/3.9.1/build/datatable-base-deprecated/datatable-base-deprecated-debug.js +++ /dev/null @@ -1,1740 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add('datatable-base-deprecated', function(Y) { - -// API Doc comments disabled to avoid deprecated class leakage into -// non-deprecated class API docs. See the 3.4.1 datatable API doc files in the -// download at http://yui.zenfs.com/releases/yui3/yui_3.4.1.zip for reference. -var YLang = Y.Lang, - YisValue = YLang.isValue, - fromTemplate = Y.Lang.sub, - YNode = Y.Node, - Ycreate = YNode.create, - YgetClassName = Y.ClassNameManager.getClassName, - - DATATABLE = "datatable", - COLUMN = "column", - - FOCUS = "focus", - KEYDOWN = "keydown", - MOUSEENTER = "mouseenter", - MOUSELEAVE = "mouseleave", - MOUSEUP = "mouseup", - MOUSEDOWN = "mousedown", - CLICK = "click", - DBLCLICK = "dblclick", - - CLASS_COLUMNS = YgetClassName(DATATABLE, "columns"), - CLASS_DATA = YgetClassName(DATATABLE, "data"), - CLASS_MSG = YgetClassName(DATATABLE, "msg"), - CLASS_LINER = YgetClassName(DATATABLE, "liner"), - CLASS_FIRST = YgetClassName(DATATABLE, "first"), - CLASS_LAST = YgetClassName(DATATABLE, "last"), - CLASS_EVEN = YgetClassName(DATATABLE, "even"), - CLASS_ODD = YgetClassName(DATATABLE, "odd"), - - TEMPLATE_TABLE = '
              ', - TEMPLATE_COL = '', - TEMPLATE_THEAD = '', - TEMPLATE_TBODY = '', - TEMPLATE_TH = '
              {value}
              ', - TEMPLATE_TR = '', - TEMPLATE_TD = '
              {value}
              ', - TEMPLATE_VALUE = '{value}', - TEMPLATE_MSG = ''; - - - -// API Doc comments disabled to avoid deprecated class leakage into -// non-deprecated class API docs. See the 3.4.1 datatable API doc files in the -// download at http://yui.zenfs.com/releases/yui3/yui_3.4.1.zip for reference. -/* - * The Column class defines and manages attributes of Columns for DataTable. - * - * @class Column - * @extends Widget - * @constructor - */ -function Column(config) { - Column.superclass.constructor.apply(this, arguments); -} - -///////////////////////////////////////////////////////////////////////////// -// -// STATIC PROPERTIES -// -///////////////////////////////////////////////////////////////////////////// -Y.mix(Column, { - /* - * Class name. - * - * @property NAME - * @type {String} - * @static - * @final - * @value "column" - */ - NAME: "column", - -///////////////////////////////////////////////////////////////////////////// -// -// ATTRIBUTES -// -///////////////////////////////////////////////////////////////////////////// - ATTRS: { - /* - Unique internal identifier, used to stamp ID on TH element. - - @attribute id - @type {String} - @readOnly - **/ - id: { - valueFn: "_defaultId", - readOnly: true - }, - - /* - User-supplied identifier. Defaults to id. - @attribute key - @type {String} - **/ - key: { - valueFn: "_defaultKey" - }, - - /* - Points to underlying data field (for sorting or formatting, for - example). Useful when column doesn't hold any data itself, but is just - a visual representation of data from another column or record field. - Defaults to key. - - @attribute field - @type {String} - @default (column key) - **/ - field: { - valueFn: "_defaultField" - }, - - /* - Display label for column header. Defaults to key. - - @attribute label - @type {String} - **/ - label: { - valueFn: "_defaultLabel" - }, - - /* - Array of child column definitions (for nested headers). - - @attribute children - @type {String} - @default null - **/ - children: { - value: null - }, - - /* - TH abbr attribute. - - @attribute abbr - @type {String} - @default "" - **/ - abbr: { - value: "" - }, - - //TODO: support custom classnames - // TH CSS classnames - classnames: { - readOnly: true, - getter: "_getClassnames" - }, - - /* - Formating template string or function for cells in this column. - - Function formatters receive a single object (described below) and are - expected to output the `innerHTML` of the cell. - - String templates can include markup and {placeholder} tokens to be - filled in from the object passed to function formatters. - - @attribute formatter - @type {String|Function} - @param {Object} data Data relevant to the rendering of this cell - @param {String} data.classnames CSS classes to add to the cell - @param {Column} data.column This Column instance - @param {Object} data.data The raw object data from the Record - @param {String} data.field This Column's "field" attribute value - @param {String} data.headers TH ids to reference in the cell's - "headers" attribute - @param {Record} data.record The Record instance for this row - @param {Number} data.rowindex The index for this row - @param {Node} data.tbody The TBODY Node that will house the cell - @param {Node} data.tr The row TR Node that will house the cell - @param {Any} data.value The raw Record data for this cell - **/ - formatter: {}, - - /* - The default markup to display in cells that have no corresponding record - data or content from formatters. - - @attribute emptyCellValue - @type {String} - @default '' - **/ - emptyCellValue: { - value: '', - validator: Y.Lang.isString - }, - - //requires datatable-sort - sortable: { - value: false - }, - //sortOptions:defaultDir, sortFn, field - - //TODO: support editable columns - // Column editor - editor: {}, - - //TODO: support resizeable columns - //TODO: support setting widths - // requires datatable-colresize - width: {}, - resizeable: {}, - minimized: {}, - minWidth: {}, - maxAutoWidth: {} - } -}); - -///////////////////////////////////////////////////////////////////////////// -// -// PROTOTYPE -// -///////////////////////////////////////////////////////////////////////////// -Y.extend(Column, Y.Widget, { - ///////////////////////////////////////////////////////////////////////////// - // - // ATTRIBUTE HELPERS - // - ///////////////////////////////////////////////////////////////////////////// - /* - * Return ID for instance. - * - * @method _defaultId - * @return {String} - * @private - */ - _defaultId: function() { - return Y.guid(); - }, - - /* - * Return key for instance. Defaults to ID if one was not provided. - * - * @method _defaultKey - * @return {String} - * @private - */ - _defaultKey: function() { - return Y.guid(); - }, - - /* - * Return field for instance. Defaults to key if one was not provided. - * - * @method _defaultField - * @return {String} - * @private - */ - _defaultField: function() { - return this.get("key"); - }, - - /* - * Return label for instance. Defaults to key if one was not provided. - * - * @method _defaultLabel - * @return {String} - * @private - */ - _defaultLabel: function() { - return this.get("key"); - }, - - /* - * Updates the UI if changes are made to abbr. - * - * @method _afterAbbrChange - * @param e {Event} Custom event for the attribute change. - * @private - */ - _afterAbbrChange: function (e) { - this._uiSetAbbr(e.newVal); - }, - - ///////////////////////////////////////////////////////////////////////////// - // - // PROPERTIES - // - ///////////////////////////////////////////////////////////////////////////// - /* - * Reference to Column's current position index within its Columnset's keys - * array, if applicable. This property only applies to non-nested and bottom- - * level child Columns. Value is set by Columnset code. - * - * @property keyIndex - * @type {Number} - */ - keyIndex: null, - - /* - * Array of TH IDs associated with this column, for TD "headers" attribute. - * Value is set by Columnset code - * - * @property headers - * @type {String[]} - */ - headers: null, - - /* - * Number of cells the header spans. Value is set by Columnset code. - * - * @property colSpan - * @type {Number} - * @default 1 - */ - colSpan: 1, - - /* - * Number of rows the header spans. Value is set by Columnset code. - * - * @property rowSpan - * @type {Number} - * @default 1 - */ - rowSpan: 1, - - /* - * Column's parent Column instance, if applicable. Value is set by Columnset - * code. - * - * @property parent - * @type {Column} - */ - parent: null, - - /* - * The Node reference to the associated TH element. - * - * @property thNode - * @type {Node} - */ - - thNode: null, - - /*TODO - * The Node reference to the associated liner element. - * - * @property thLinerNode - * @type {Node} - - thLinerNode: null,*/ - - ///////////////////////////////////////////////////////////////////////////// - // - // METHODS - // - ///////////////////////////////////////////////////////////////////////////// - /* - * Initializer. - * - * @method initializer - * @param config {Object} Config object. - * @private - */ - initializer: function(config) { - }, - - /* - * Destructor. - * - * @method destructor - * @private - */ - destructor: function() { - }, - - /* - * Returns classnames for Column. - * - * @method _getClassnames - * @private - */ - _getClassnames: function () { - return Y.ClassNameManager.getClassName(COLUMN, this.get("key").replace(/[^\w\-]/g,"")); - }, - - //////////////////////////////////////////////////////////////////////////// - // - // SYNC - // - //////////////////////////////////////////////////////////////////////////// - /* - * Syncs UI to intial state. - * - * @method syncUI - * @private - */ - syncUI: function() { - this._uiSetAbbr(this.get("abbr")); - }, - - /* - * Updates abbr. - * - * @method _uiSetAbbr - * @param val {String} New abbr. - * @protected - */ - _uiSetAbbr: function(val) { - this.thNode.set("abbr", val); - } -}); - -Y.Column = Column; -// API Doc comments disabled to avoid deprecated class leakage into -// non-deprecated class API docs. See the 3.4.1 datatable API doc files in the -// download at http://yui.zenfs.com/releases/yui3/yui_3.4.1.zip for reference. -/* - * The Columnset class defines and manages a collection of Columns. - * - * @class Columnset - * @extends Base - * @constructor - */ -function Columnset(config) { - Columnset.superclass.constructor.apply(this, arguments); -} - -///////////////////////////////////////////////////////////////////////////// -// -// STATIC PROPERTIES -// -///////////////////////////////////////////////////////////////////////////// -Y.mix(Columnset, { - /* - * Class name. - * - * @property NAME - * @type String - * @static - * @final - * @value "columnset" - */ - NAME: "columnset", - - ///////////////////////////////////////////////////////////////////////////// - // - // ATTRIBUTES - // - ///////////////////////////////////////////////////////////////////////////// - ATTRS: { - /* - * @attribute definitions - * @description Array of column definitions that will populate this Columnset. - * @type Array - */ - definitions: { - setter: "_setDefinitions" - } - - } -}); - -///////////////////////////////////////////////////////////////////////////// -// -// PROTOTYPE -// -///////////////////////////////////////////////////////////////////////////// -Y.extend(Columnset, Y.Base, { - ///////////////////////////////////////////////////////////////////////////// - // - // ATTRIBUTE HELPERS - // - ///////////////////////////////////////////////////////////////////////////// - /* - * @method _setDefinitions - * @description Clones definitions before setting. - * @param definitions {Array} Array of column definitions. - * @return Array - * @private - */ - _setDefinitions: function(definitions) { - return Y.clone(definitions); - }, - - ///////////////////////////////////////////////////////////////////////////// - // - // PROPERTIES - // - ///////////////////////////////////////////////////////////////////////////// - /* - * Top-down tree representation of Column hierarchy. Used to create DOM - * elements. - * - * @property tree - * @type {Column[]} - */ - tree: null, - - /* - * Hash of all Columns by ID. - * - * @property idHash - * @type Object - */ - idHash: null, - - /* - * Hash of all Columns by key. - * - * @property keyHash - * @type Object - */ - keyHash: null, - - /* - * Array of only Columns that are meant to be displayed in DOM. - * - * @property keys - * @type {Column[]} - */ - keys: null, - - ///////////////////////////////////////////////////////////////////////////// - // - // METHODS - // - ///////////////////////////////////////////////////////////////////////////// - /* - * Initializer. Generates all internal representations of the collection of - * Columns. - * - * @method initializer - * @param config {Object} Config object. - * @private - */ - initializer: function() { - - // DOM tree representation of all Columns - var tree = [], - // Hash of all Columns by ID - idHash = {}, - // Hash of all Columns by key - keyHash = {}, - // Flat representation of only Columns that are meant to display data - keys = [], - // Original definitions - definitions = this.get("definitions"), - - self = this; - - // Internal recursive function to define Column instances - function parseColumns(depth, currentDefinitions, parent) { - var i=0, - len = currentDefinitions.length, - currentDefinition, - column, - currentChildren; - - // One level down - depth++; - - // Create corresponding dom node if not already there for this depth - if(!tree[depth]) { - tree[depth] = []; - } - - // Parse each node at this depth for attributes and any children - for(; i maxRowDepth) { - maxRowDepth = tmpRowDepth; - } - } - } - } - - // Count max row depth for each row - for(m=0; m' - */ - trTemplate: { - value: TEMPLATE_TR - } - }, - -///////////////////////////////////////////////////////////////////////////// -// -// TODO: HTML_PARSER -// -///////////////////////////////////////////////////////////////////////////// - HTML_PARSER: { - /*caption: function (srcNode) { - - }*/ - } -}); - -///////////////////////////////////////////////////////////////////////////// -// -// PROTOTYPE -// -///////////////////////////////////////////////////////////////////////////// -Y.extend(DTBase, Y.Widget, { - /* - * @property thTemplate - * @description Tokenized markup template for TH node creation. - * @type String - * @default '
              {value}
              ' - */ - thTemplate: TEMPLATE_TH, - - /* - * @property tdTemplate - * @description Tokenized markup template for TD node creation. - * @type String - * @default '
              {value}
              ' - */ - tdTemplate: TEMPLATE_TD, - - /* - * @property _theadNode - * @description Pointer to THEAD node. - * @type {Node} - * @private - */ - _theadNode: null, - - /* - * @property _tbodyNode - * @description Pointer to TBODY node. - * @type {Node} - * @private - */ - _tbodyNode: null, - - /* - * @property _msgNode - * @description Pointer to message display node. - * @type {Node} - * @private - */ - _msgNode: null, - - ///////////////////////////////////////////////////////////////////////////// - // - // ATTRIBUTE HELPERS - // - ///////////////////////////////////////////////////////////////////////////// - /* - * @method _setColumnset - * @description Converts Array to Y.Columnset. - * @param columns {Array | Y.Columnset} - * @return {Columnset} - * @private - */ - _setColumnset: function(columns) { - return YLang.isArray(columns) ? new Y.Columnset({definitions:columns}) : columns; - }, - - /* - * Updates the UI if Columnset is changed. - * - * @method _afterColumnsetChange - * @param e {Event} Custom event for the attribute change. - * @protected - */ - _afterColumnsetChange: function (e) { - this._uiSetColumnset(e.newVal); - }, - - /* - * @method _setRecordset - * @description Converts Array to Y.Recordset. - * @param records {Array | Recordset} - * @return {Recordset} - * @private - */ - _setRecordset: function(rs) { - if(YLang.isArray(rs)) { - rs = new Y.Recordset({records:rs}); - } - - rs.addTarget(this); - return rs; - }, - - /* - * Updates the UI if Recordset is changed. - * - * @method _afterRecordsetChange - * @param e {Event} Custom event for the attribute change. - * @protected - */ - _afterRecordsetChange: function (e) { - this._uiSetRecordset(e.newVal); - }, - - /* - * Updates the UI if Recordset records are changed. - * - * @method _afterRecordsChange - * @param e {Event} Custom event for the attribute change. - * @protected - */ - _afterRecordsChange: function (e) { - this._uiSetRecordset(this.get('recordset')); - }, - - /* - * Updates the UI if summary is changed. - * - * @method _afterSummaryChange - * @param e {Event} Custom event for the attribute change. - * @protected - */ - _afterSummaryChange: function (e) { - this._uiSetSummary(e.newVal); - }, - - /* - * Updates the UI if caption is changed. - * - * @method _afterCaptionChange - * @param e {Event} Custom event for the attribute change. - * @protected - */ - _afterCaptionChange: function (e) { - this._uiSetCaption(e.newVal); - }, - - //////////////////////////////////////////////////////////////////////////// - // - // METHODS - // - //////////////////////////////////////////////////////////////////////////// - - /* - * Destructor. - * - * @method destructor - * @private - */ - destructor: function() { - this.get("recordset").removeTarget(this); - }, - - //////////////////////////////////////////////////////////////////////////// - // - // RENDER - // - //////////////////////////////////////////////////////////////////////////// - - /* - * Renders UI. - * - * @method renderUI - * @private - */ - renderUI: function() { - // TABLE - this._addTableNode(this.get("contentBox")); - - // COLGROUP - this._addColgroupNode(this._tableNode); - - // THEAD - this._addTheadNode(this._tableNode); - - // Primary TBODY - this._addTbodyNode(this._tableNode); - - // Message TBODY - this._addMessageNode(this._tableNode); - - // CAPTION - this._addCaptionNode(this._tableNode); - }, - - /* - * Creates and attaches TABLE element to given container. - * - * @method _addTableNode - * @param containerNode {Node} Parent node. - * @protected - * @return {Node} - */ - _addTableNode: function(containerNode) { - if (!this._tableNode) { - this._tableNode = containerNode.appendChild(Ycreate(TEMPLATE_TABLE)); - } - return this._tableNode; - }, - - /* - * Creates and attaches COLGROUP element to given TABLE. - * - * @method _addColgroupNode - * @param tableNode {Node} Parent node. - * @protected - * @return {Node} - */ - _addColgroupNode: function(tableNode) { - // Add COLs to DOCUMENT FRAGMENT - var len = this.get("columnset").keys.length, - i = 0, - allCols = [""]; - - for(; i"); - - // Create COLGROUP - this._colgroupNode = tableNode.insertBefore(Ycreate(allCols.join("")), tableNode.get("firstChild")); - - return this._colgroupNode; - }, - - /* - * Creates and attaches THEAD element to given container. - * - * @method _addTheadNode - * @param tableNode {Node} Parent node. - * @protected - * @return {Node} - */ - _addTheadNode: function(tableNode) { - if(tableNode) { - this._theadNode = tableNode.insertBefore(Ycreate(TEMPLATE_THEAD), this._colgroupNode.next()); - return this._theadNode; - } - }, - - /* - * Creates and attaches TBODY element to given container. - * - * @method _addTbodyNode - * @param tableNode {Node} Parent node. - * @protected - * @return {Node} - */ - _addTbodyNode: function(tableNode) { - this._tbodyNode = tableNode.appendChild(Ycreate(TEMPLATE_TBODY)); - return this._tbodyNode; - }, - - /* - * Creates and attaches message display element to given container. - * - * @method _addMessageNode - * @param tableNode {Node} Parent node. - * @protected - * @return {Node} - */ - _addMessageNode: function(tableNode) { - this._msgNode = tableNode.insertBefore(Ycreate(TEMPLATE_MSG), this._tbodyNode); - return this._msgNode; - }, - - /* - * Creates and attaches CAPTION element to given container. - * - * @method _addCaptionNode - * @param tableNode {Node} Parent node. - * @protected - * @return {Node} - */ - _addCaptionNode: function(tableNode) { - this._captionNode = Y.Node.create(''); - }, - - //////////////////////////////////////////////////////////////////////////// - // - // BIND - // - //////////////////////////////////////////////////////////////////////////// - - /* - * Binds events. - * - * @method bindUI - * @private - */ - bindUI: function() { - this.after({ - columnsetChange: this._afterColumnsetChange, - summaryChange : this._afterSummaryChange, - captionChange : this._afterCaptionChange, - recordsetChange: this._afterRecordsChange, - "recordset:tableChange": this._afterRecordsChange - }); - }, - - delegate: function(type) { - //TODO: is this necessary? - if(type==="dblclick") { - this.get("boundingBox").delegate.apply(this.get("boundingBox"), arguments); - } - else { - this.get("contentBox").delegate.apply(this.get("contentBox"), arguments); - } - }, - - - //////////////////////////////////////////////////////////////////////////// - // - // SYNC - // - //////////////////////////////////////////////////////////////////////////// - - /* - * Syncs UI to intial state. - * - * @method syncUI - * @private - */ - syncUI: function() { - // THEAD ROWS - this._uiSetColumnset(this.get("columnset")); - // DATA ROWS - this._uiSetRecordset(this.get("recordset")); - // SUMMARY - this._uiSetSummary(this.get("summary")); - // CAPTION - this._uiSetCaption(this.get("caption")); - }, - - /* - * Updates summary. - * - * @method _uiSetSummary - * @param val {String} New summary. - * @protected - */ - _uiSetSummary: function(val) { - val = YisValue(val) ? val : ""; - this._tableNode.set("summary", val); - }, - - /* - * Updates caption. - * - * @method _uiSetCaption - * @param val {String} New caption. - * @protected - */ - _uiSetCaption: function(val) { - var caption = this._captionNode, - inDoc = caption.inDoc(), - method = val ? (!inDoc && 'prepend') : (inDoc && 'removeChild'); - - caption.setContent(val || ''); - - if (method) { - // prepend of remove necessary - this._tableNode[method](caption); - } - }, - - - //////////////////////////////////////////////////////////////////////////// - // - // THEAD/COLUMNSET FUNCTIONALITY - // - //////////////////////////////////////////////////////////////////////////// - /* - * Updates THEAD. - * - * @method _uiSetColumnset - * @param cs {Columnset} New Columnset. - * @protected - */ - _uiSetColumnset: function(cs) { - var tree = cs.tree, - thead = this._theadNode, - i = 0, - len = tree.length, - parent = thead.get("parentNode"), - nextSibling = thead.next(); - - // Move THEAD off DOM - thead.remove(); - - thead.get("children").remove(true); - - // Iterate tree of columns to add THEAD rows - for(; i
              ',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},h.indexOf=f._isNative(l.indexOf)?function(e,t,n){return l.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,d):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},g.each=function(t,n,r,i){var s;for(s in t)(i||E(t,s))&&n.call(r||e,t[s],s,t);return e},g.some=function(t,n,r,i){var s;for(s in t)if(i||E(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},g.getValue=function(t,n){if(!f.isObject(t))return m;var r,i=e.Array(n),s=i.length;for(r=0;t!==m&&r=0){for(i=0;u!==m&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"3.9.1",{use:["get","features","intl-base","yui-log","yui-later"]}),YUI.add("get",function(e,t){var n=e.Lang,r,i,s;e.Get=i={cssOptions:{attributes:{rel:"stylesheet"},doc:e.config.linkDoc||e.config.doc,pollInterval:50},jsOptions:{autopurge:!0,doc:e.config.scriptDoc||e.config.doc},options:{attributes:{charset:"utf-8"},purgethreshold:20},REGEX_CSS:/\.css(?:[?;].*)?$/i,REGEX_JS:/\.js(?:[?;].*)?$/i,_insertCache:{},_pending:null,_purgeNodes:[],_queue:[],abort:function(e){var t,n,r,i,s;if(!e.abort){n=e,s=this._pending,e=null;if(s&&s.transaction.id===n)e=s.transaction,this._pending=null;else for(t=0,i=this._queue.length;t=e&&this._purge(this._purgeNodes)},_getEnv:function(){var t=e.config.doc,n=e.UA;return this._env={async:t&&t.createElement("script").async===!0||n.ie>=10,cssFail:n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0,cssLoad:(!n.gecko&&!n.webkit||n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0)&&!(n.chrome&&n.chrome<=18),preservesScriptOrder:!!(n.gecko||n.opera||n.ie&&n.ie>=10)}},_getTransaction:function(t,r){var i=[],o,u,a,f;n.isArray(t)||(t=[t]),r=e.merge(this.options,r),r.attributes=e.merge(this.options.attributes,r.attributes);for(o=0,u=t.length;o-1&&n.splice(i,1))}}},i.script=i.js,i.Transaction=s=function(t,n){var r=this;r.id=s._lastId+=1,r.data=n.data,r.errors=[],r.nodes=[],r.options=n,r.requests=t,r._callbacks=[],r._queue=[],r._reqsWaiting=0,r.tId=r.id,r.win=n.win||e.config.win},s._lastId=0,s.prototype={_state:"new",abort:function(e){this._pending=null,this._pendingCSS=null,this._pollTimer=clearTimeout(this._pollTimer),this._queue=[],this._reqsWaiting=0,this.errors.push({error:e||"Aborted"}),this._finish()},execute:function(e){var t=this,n=t.requests,r=t._state,i,s,o,u;if(r==="done"){e&&e(t.errors.length?t.errors:null,t);return}e&&t._callbacks.push(e);if(r==="executing")return;t._state="executing",t._queue=o=[],t.options.timeout&&(t._timeout=setTimeout(function(){t.abort("Timeout")},t.options.timeout)),t._reqsWaiting=n.length;for(i=0,s=n.length;i=10?(o.onerror=function(){setTimeout(c,0)},o.onload=function(){setTimeout(h,0)}):(o.onerror=c,o.onload=h),!n.cssFail&&!s&&(f=setTimeout(c,t.timeout||3e3))),this.nodes.push(o),r.parentNode.insertBefore(o,r)},_next:function(){if(this._pending)return;this._queue.length?this._insert(this._queue.shift()):this._reqsWaiting||this._finish()},_poll:function(t){var n=this,r=n._pendingCSS,i=e.UA.webkit,s,o,u,a,f,l;if(t){r||(r=n._pendingCSS=[]),r.push(t);if(n._pollTimer)return}n._pollTimer=null;for(s=0;s=0)if(l[u].href===a){r.splice(s,1),s-=1,n._progress(null,f);break}}else try{o=!!f.node.sheet.cssRules,r.splice(s,1),s-=1,n._progress(null,f)}catch(c){}}r.length&&(n._pollTimer=setTimeout(function(){n._poll.call(n)},n.options.pollInterval))},_progress:function(e,t){var n=this.options;e&&(t.error=e,this.errors.push({error:e,request:t})),t.node._yuiget_finished=t.finished=!0,n.onProgress&&n.onProgress.call(n.context||this,this._getEventData(t)),t.autopurge&&(i._autoPurge(this.options.purgethreshold),i._purgeNodes.push(t.node)),this._pending===t&&(this._pending=null),this._reqsWaiting-=1,this._next()}}},"3.9.1",{requires:["yui-base"]}),YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger -:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"3.9.1",{requires:["yui-base"]}),YUI.add("intl-base",function(e,t){var n=/[, ]/;e.mix(e.namespace("Intl"),{lookupBestLang:function(t,r){function a(e){var t;for(t=0;t0){o=a(s);if(o)return o;u=s.lastIndexOf("-");if(!(u>=0))break;s=s.substring(0,u),u>=2&&s.charAt(u-2)==="-"&&(s=s.substring(0,u-2))}}return""}})},"3.9.1",{requires:["yui-base"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:1,warn:1,error:1};n.log=function(e,t,o,u){var a,f,l,c,h,p=n,d=p.config,v=p.fire?p:YUI.Env.globalEvents;return d.debug&&(o=o||"",typeof o!="undefined"&&(f=d.logExclude,l=d.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1),a||(d.useBrowserConsole&&(c=o?o+": "+e:e,p.Lang.isFunction(d.logFn)?d.logFn.call(p,e,t,o):typeof console!==i&&console.log?(h=t&&console[t]&&t in s?t:"log",console[h](c)):typeof opera!==i&&opera.postError(c)),v&&!u&&(v===p&&!v.getEvent(r)&&v.publish(r,{broadcast:2}),v.fire(r,{msg:e,cat:t,src:o})))),p},n.message=function(){return n.log.apply(n,arguments)}},"3.9.1",{requires:["yui-base"]}),YUI.add("yui-later",function(e,t){var n=[];e.later=function(t,r,i,s,o){t=t||0,s=e.Lang.isUndefined(s)?n:e.Array(s),r=r||e.config.win||e;var u=!1,a=r&&e.Lang.isString(i)?r[i]:i,f=function(){u||(a.apply?a.apply(r,s||n):a(s[0],s[1],s[2],s[3]))},l=o?setInterval(f,t):setTimeout(f,t);return{id:l,interval:o,cancel:function(){u=!0,this.interval?clearInterval(l):clearTimeout(l)}}},e.Lang.later=e.later},"3.9.1",{requires:["yui-base"]}),YUI.add("yui",function(e,t){},"3.9.1",{use:["get","features","intl-base","yui-log","yui-later"]}),YUI.add("oop",function(e,t){function a(t,n,i,s,o){if(t&&t[o]&&t!==e)return t[o].call(t,n,i);switch(r.test(t)){case 1:return r[o](t,n,i);case 2:return r[o](e.Array(t,0,!0),n,i);default:return e.Object[o](t,n,i,s)}}var n=e.Lang,r=e.Array,i=Object.prototype,s="_~yuim~_",o=i.hasOwnProperty,u=i.toString;e.augment=function(t,n,r,i,s){var a=t.prototype,f=a&&n,l=n.prototype,c=a||t,h,p,d,v,m;return s=s?e.Array(s):[],f&&(p={},d={},v={},h=function(e,t){if(r||!(t in a))u.call(e)==="[object Function]"?(v[t]=e,p[t]=d[t]=function(){return m(this,e,arguments)}):p[t]=e},m=function( -e,t,r){for(var i in v)o.call(v,i)&&e[i]===d[i]&&(e[i]=v[i]);return n.apply(e,s),t.apply(e,r)},i?e.Array.each(i,function(e){e in l&&h(l[e],e)}):e.Object.each(l,h,null,!0)),e.mix(c,p||l,r,i),f||n.apply(c,s),t},e.aggregate=function(t,n,r,i){return e.mix(t,n,r,i,0,!0)},e.extend=function(t,n,r,s){(!n||!t)&&e.error("extend failed, verify dependencies");var o=n.prototype,u=e.Object(o);return t.prototype=u,u.constructor=t,t.superclass=o,n!=Object&&o.constructor==i.constructor&&(o.constructor=n),r&&e.mix(u,r,!0),s&&e.mix(t,s,!0),t},e.each=function(e,t,n,r){return a(e,t,n,r,"each")},e.some=function(e,t,n,r){return a(e,t,n,r,"some")},e.clone=function(t,r,i,o,u,a){if(!n.isObject(t))return t;if(e.instanceOf(t,YUI))return t;var f,l=a||{},c,h=e.each;switch(n.type(t)){case"date":return new Date(t);case"regexp":return t;case"function":return t;case"array":f=[];break;default:if(t[s])return l[t[s]];c=e.guid(),f=r?{}:e.Object(t),t[s]=c,l[c]=t}return!t.addEventListener&&!t.attachEvent&&h(t,function(n,a){(a||a===0)&&(!i||i.call(o||this,n,a,this,t)!==!1)&&a!==s&&a!="prototype"&&(this[a]=e.clone(n,r,i,o,u||t,l))},f),a||(e.Object.each(l,function(e,t){if(e[s])try{delete e[s]}catch(n){e[s]=null}},this),l=null),f},e.bind=function(t,r){var i=arguments.length>2?e.Array(arguments,2,!0):null;return function(){var s=n.isString(t)?r[t]:t,o=i?i.concat(e.Array(arguments,0,!0)):arguments;return s.apply(r||s,o)}},e.rbind=function(t,r){var i=arguments.length>2?e.Array(arguments,2,!0):null;return function(){var s=n.isString(t)?r[t]:t,o=i?e.Array(arguments,0,!0).concat(i):arguments;return s.apply(r||s,o)}}},"3.9.1",{requires:["yui-base"]}),YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in -t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"3.9.1",{requires:["yui-base"]}),YUI.add("dom-core",function(e,t){var n="nodeType",r="ownerDocument",i="documentElement",s="defaultView",o="parentWindow",u="tagName",a="parentNode",f="previousSibling",l="nextSibling",c="contains",h="compareDocumentPosition",p=[],d=function(){var t=e.config.doc.createElement("div"),n=t.appendChild(e.config.doc.createTextNode("")),r=!1;try{r=t.contains(n)}catch(i){}return r}(),v={byId:function(e,t){return v.allById(e,t)[0]||null},getId:function(e){var t;return e.id&&!e.id.tagName&&!e.id.item?t=e.id:e.attributes&&e.attributes.id&&(t=e.attributes.id.value),t},setId:function(e,t){e.setAttribute?e.setAttribute("id",t):e.id=t},ancestor:function(e,t,n,r){var i=null;return n&&(i=!t||t(e)?e:null),i||v.elementByAxis(e,a,t,null,r)},ancestors:function(e,t,n,r){var i=e,s=[];while(i=v.ancestor(i,t,n,r)){n=!1;if(i){s.unshift(i);if(r&&r(i))return s}}return s},elementByAxis:function(e,t,n,r,i){while(e&&(e=e[t])){if((r||e[u])&&(!n||n(e)))return e;if(i&&i(e))return null}return null},contains:function(e,t){var r=!1;if(!t||!e||!t[n]||!e[n])r=!1;else if(e[c]&&(t[n]===1||d))r=e[c](t);else if(e[h]){if(e===t||!!(e[h](t)&16))r=!0}else r=v._bruteContains(e,t);return r},inDoc:function(e,t){var n=!1,s;return e&&e.nodeType&&(t||(t=e[r]),s=t[i],s&&s.contains&&e.tagName?n=s.contains(e):n=v.contains(s,e)),n},allById:function(t,n){n=n||e.config.doc;var r=[],i=[],s,o;if(n.querySelectorAll)i=n.querySelectorAll('[id="'+t+'"]');else if(n.all){r=n.all(t);if(r){r.nodeName&&(r.id===t?(i.push(r),r=p):r=[r]);if(r.length)for(s=0;o=r[s++];)(o.id===t||o.attributes&&o.attributes.id&&o.attributes.id.value===t)&&i.push(o)}}else i=[v._getDoc(n).getElementById(t)];return i},isWindow:function(e){return!!(e&&e.scrollTo&&e.document)},_removeChildNodes:function(e){while(e.firstChild)e.removeChild(e.firstChild)},siblings:function(e,t){var n=[],r=e;while(r=r[f])r[u]&&(!t||t(r))&&n.unshift(r);r=e;while(r=r[l])r[u]&&(!t||t(r))&&n.push(r);return n},_bruteContains:function(e,t){while(t){if(e===t)return!0;t=t.parentNode}return!1},_getRegExp:function(e,t){return t=t||"",v._regexCache=v._regexCache||{},v._regexCache[e+t]||(v._regexCache[e+t]=new RegExp(e,t)),v._regexCache[e+t]},_getDoc:function(t){var i=e.config.doc;return t&&(i=t[n]===9?t:t[r]||t.document||e.config.doc),i},_getWin:function(t){var n=v._getDoc(t);return n[s]||n[o]||e.config.win},_batch:function(e,t,n,r,i,s){t=typeof t=="string"?v[t]:t;var o,u=0,a,f;if(t&&e)while(a=e[u++])o=o=t.call(v,a,n,r,i,s),typeof o!="undefined"&&(f||(f=[]),f.push(o));return typeof f!="undefined"?f:e},generateID:function(t){var n=t.id;return n||(n=e.stamp(t),t.id=n),n}};e.DOM=v},"3.9.1",{requires:["oop","features"]}),YUI.add("dom-base",function(e,t){var n=e.config.doc.documentElement,r=e.DOM,i="tagName",s="ownerDocument",o="",u=e.Features.add,a=e.Features.test;e.mix(r,{getText:n.textContent!==undefined?function(e){var t="";return e&&(t=e.textContent),t||""}:function(e){var t="";return e&&(t=e.innerText||e.nodeValue),t||""},setText:n.textContent!==undefined?function(e,t){e&&(e.textContent=t)}:function(e,t){"innerText"in e?e.innerText=t:"nodeValue"in e&&(e.nodeValue=t)},CUSTOM_ATTRIBUTES:n.hasAttribute?{htmlFor:"for",className:"class"}:{"for":"htmlFor","class":"className"},setAttribute:function(e,t,n,i){e&&t&&e.setAttribute&&(t=r.CUSTOM_ATTRIBUTES[t]||t,e.setAttribute(t,n,i))},getAttribute:function(e,t,n){n=n!==undefined?n:2;var i="";return e&&t&&e.getAttribute&&(t=r.CUSTOM_ATTRIBUTES[t]||t,i=e.getAttribute(t,n),i===null&&(i="")),i},VALUE_SETTERS:{},VALUE_GETTERS:{},getValue:function(e){var t="",n;return e&&e[i]&&(n=r.VALUE_GETTERS[e[i].toLowerCase()],n?t=n(e):t=e.value),t===o&&(t=o),typeof t=="string"?t:""},setValue:function(e,t){var n;e&&e[i]&&(n=r.VALUE_SETTERS[e[i].toLowerCase()],n?n(e,t):e.value=t)},creators:{}}),u("value-set","select",{test:function(){var t=e.config.doc.createElement("select");return t.innerHTML="",t.value="2",t.value&&t.value==="2"}}),a("value-set","select")||(r.VALUE_SETTERS.select=function(e,t){for(var n=0,i=e.getElementsByTagName("option"),s;s=i[n++];)if(r.getValue(s)===t){s.selected=!0;break}}),e.mix(r.VALUE_GETTERS,{button:function(e){return e.attributes&&e.attributes.value?e.attributes.value.value:""}}),e.mix(r.VALUE_SETTERS,{button:function(e,t){var n=e.attributes.value;n||(n=e[s].createAttribute("value"),e.setAttributeNode(n)),n.value=t}}),e.mix(r.VALUE_GETTERS,{option:function(e){var t=e.attributes;return t.value&&t.value.specified?e.value:e.text},select:function(e){var t=e.value,n=e.options;return n&&n.length&&(e.multiple||e.selectedIndex>-1&&(t=r.getValue(n[e.selectedIndex]))),t}});var f,l,c;e.mix(e.DOM,{hasClass:function(t,n){var r=e.DOM._getRegExp("(?:^|\\s+)"+n+"(?:\\s+|$)");return r.test(t.className)},addClass:function(t,n){e.DOM.hasClass(t,n)||(t.className=e.Lang.trim([t.className,n].join(" ")))},removeClass:function(t,n){n&&l(t,n)&&(t.className=e.Lang.trim(t.className.replace(e.DOM._getRegExp("(?:^|\\s+)"+n+"(?:\\s+|$)")," ")),l(t,n)&&c(t,n))},replaceClass:function(e,t,n){c(e,t),f(e,n)},toggleClass:function(e,t,n){var r=n!==undefined?n:!l(e,t);r?f(e,t):c(e,t)}}),l=e.DOM.hasClass,c=e.DOM.removeClass,f=e.DOM.addClass;var h=/<([a-z]+)/i,r=e.DOM,u=e.Features.add,a=e.Features.test,p={},d=function(t,n){var r=e.config.doc.createElement("div"),i=!0;r.innerHTML=t;if(!r.firstChild||r.firstChild.tagName!==n.toUpperCase())i=!1 -;return i},v=/(?:\/(?:thead|tfoot|tbody|caption|col|colgroup)>)+\s*"}catch(n){return!1}return t.firstChild&&t.firstChild.nodeName==="TBODY"}}),u("innerhtml-div","tr",{test:function(){return d("","tr")}}),u("innerhtml-div","script",{test:function(){return d("","script")}}),a("innerhtml","table")||(p.tbody=function(t,n){var i=r.create(m+t+g,n),s=e.DOM._children(i,"tbody")[0];return i.children.length>1&&s&&!v.test(t)&&s.parentNode.removeChild(s),i}),a("innerhtml-div","script")||(p.script=function(e,t){var n=t.createElement("div");return n.innerHTML="-"+e,n.removeChild(n.firstChild),n},p.link=p.style=p.script),a("innerhtml-div","tr")||(e.mix(p,{option:function(e,t){return r.create('",t)},tr:function(e,t){return r.create(""+e+"",t)},td:function(e,t){return r.create(""+e+"",t)},col:function(e,t){return r.create(""+e+"",t)},tbody:"table"}),e.mix(p,{legend:"fieldset",th:p.td,thead:p.tbody,tfoot:p.tbody,caption:p.tbody,colgroup:p.tbody,optgroup:p.option})),r.creators=p,e.mix(e.DOM,{setWidth:function(t,n){e.DOM._setSize(t,"width",n)},setHeight:function(t,n){e.DOM._setSize(t,"height",n)},_setSize:function(e,t,n){n=n>0?n:0;var r=0;e.style[t]=n+"px",r=t==="height"?e.offsetHeight:e.offsetWidth,r>n&&(n-=r-n,n<0&&(n=0),e.style[t]=n+"px")}})},"3.9.1",{requires:["dom-core"]}),YUI.add("dom-style",function(e,t){(function(e){var t="documentElement",n="defaultView",r="ownerDocument",i="style",s="float",o="cssFloat",u="styleFloat",a="transparent",f="getComputedStyle",l="getBoundingClientRect",c=e.config.win,h=e.config.doc,p=undefined,d=e.DOM,v="transform",m="transformOrigin",g=["WebkitTransform","MozTransform","OTransform","msTransform"],y=/color$/i,b=/width|height|top|left|right|bottom|margin|padding/i;e.Array.each(g,function(e){e in h[t].style&&(v=e,m=e+"Origin")}),e.mix(d,{DEFAULT_UNIT:"px",CUSTOM_STYLES:{},setStyle:function(e,t,n,r){r=r||e.style;var i=d.CUSTOM_STYLES;if(r){n===null||n===""?n="":!isNaN(new Number(n))&&b.test(t)&&(n+=d.DEFAULT_UNIT);if(t in i){if(i[t].set){i[t].set(e,n,r);return}typeof i[t]=="string"&&(t=i[t])}else t===""&&(t="cssText",n="");r[t]=n}},getStyle:function(e,t,n){n=n||e.style;var r=d.CUSTOM_STYLES,i="";if(n){if(t in r){if(r[t].get)return r[t].get(e,t,n);typeof r[t]=="string"&&(t=r[t])}i=n[t],i===""&&(i=d[f](e,t))}return i},setStyles:function(t,n){var r=t.style;e.each(n,function(e,n){d.setStyle(t,n,e,r)},d)},getComputedStyle:function(e,t){var s="",o=e[r],u;return e[i]&&o[n]&&o[n][f]&&(u=o[n][f](e,null),u&&(s=u[t])),s}}),h[t][i][o]!==p?d.CUSTOM_STYLES[s]=o:h[t][i][u]!==p&&(d.CUSTOM_STYLES[s]=u),e.UA.opera&&(d[f]=function(t,i){var s=t[r][n],o=s[f](t,"")[i];return y.test(i)&&(o=e.Color.toRGB(o)),o}),e.UA.webkit&&(d[f]=function(e,t){var i=e[r][n],s=i[f](e,"")[t];return s==="rgba(0, 0, 0, 0)"&&(s=a),s}),e.DOM._getAttrOffset=function(t,n){var r=e.DOM[f](t,n),i=t.offsetParent,s,o,u;return r==="auto"&&(s=e.DOM.getStyle(t,"position"),s==="static"||s==="relative"?r=0:i&&i[l]&&(o=i[l]()[n],u=t[l]()[n],n==="left"||n==="top"?r=u-o:r=o-t[l]()[n])),r},e.DOM._getOffset=function(e){var t,n=null;return e&&(t=d.getStyle(e,"position"),n=[parseInt(d[f](e,"left"),10),parseInt(d[f](e,"top"),10)],isNaN(n[0])&&(n[0]=parseInt(d.getStyle(e,"left"),10),isNaN(n[0])&&(n[0]=t==="relative"?0:e.offsetLeft||0)),isNaN(n[1])&&(n[1]=parseInt(d.getStyle(e,"top"),10),isNaN(n[1])&&(n[1]=t==="relative"?0:e.offsetTop||0))),n},d.CUSTOM_STYLES.transform={set:function(e,t,n){n[v]=t},get:function(e,t){return d[f](e,v)}},d.CUSTOM_STYLES.transformOrigin={set:function(e,t,n){n[m]=t},get:function(e,t){return d[f](e,m)}}})(e),function(e){var t=parseInt,n=RegExp;e.Color={KEYWORDS:{black:"000",silver:"c0c0c0",gray:"808080",white:"fff",maroon:"800000",red:"f00",purple:"800080",fuchsia -:"f0f",green:"008000",lime:"0f0",olive:"808000",yellow:"ff0",navy:"000080",blue:"00f",teal:"008080",aqua:"0ff"},re_RGB:/^rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)$/i,re_hex:/^#?([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i,re_hex3:/([0-9A-F])/gi,toRGB:function(r){return e.Color.re_RGB.test(r)||(r=e.Color.toHex(r)),e.Color.re_hex.exec(r)&&(r="rgb("+[t(n.$1,16),t(n.$2,16),t(n.$3,16)].join(", ")+")"),r},toHex:function(t){t=e.Color.KEYWORDS[t]||t;if(e.Color.re_RGB.exec(t)){t=[Number(n.$1).toString(16),Number(n.$2).toString(16),Number(n.$3).toString(16)];for(var r=0;r=8,x=function(e){return e.currentStyle||e.style},T={CUSTOM_STYLES:{},get:function(t,r){var i="",o;return t&&(o=x(t)[r],r===s&&e.DOM.CUSTOM_STYLES[s]?i=e.DOM.CUSTOM_STYLES[s].get(t):!o||o.indexOf&&o.indexOf(n)>-1?i=o:e.DOM.IE.COMPUTED[r]?i=e.DOM.IE.COMPUTED[r](t,r):E.test(o)?i=T.getPixel(t,r)+n:i=o),i},sizeOffsets:{width:["Left","Right"],height:["Top","Bottom"],top:["Top"],bottom:["Bottom"]},getOffset:function(e,t){var r=x(e)[t],i=t.charAt(0).toUpperCase()+t.substr(1),s="offset"+i,u="pixel"+i,a=T.sizeOffsets[t],f=e.ownerDocument.compatMode,l="";return r===o||r.indexOf("%")>-1?(l=e["offset"+i],f!=="BackCompat"&&(a[0]&&(l-=T.getPixel(e,"padding"+a[0]),l-=T.getBorderWidth(e,"border"+a[0]+"Width",1)),a[1]&&(l-=T.getPixel(e,"padding"+a[1]),l-=T.getBorderWidth(e,"border"+a[1]+"Width",1)))):(!e.style[u]&&!e.style[t]&&(e.style[t]=r),l=e.style[u]),l+n},borderMap:{thin:S?"1px":"2px",medium:S?"3px":"4px",thick:S?"5px":"6px"},getBorderWidth:function(e,t,r){var i=r?"":n,s=e.currentStyle[t];return s.indexOf(n)<0&&(T.borderMap[s]&&e.currentStyle.borderStyle!=="none"?s=T.borderMap[s]:s=0),r?parseFloat(s):s},getPixel:function(e,t){var n=null,r=x(e),i=r.right,s=r[t];return e.style.right=s,n=e.style.pixelRight,e.style.right=i,n},getMargin:function(e,t){var r,i=x(e);return i[t]==o?r=0:r=T.getPixel(e,t),r+n},getVisibility:function(e,t){var n;while((n=e.currentStyle)&&n[t]=="inherit")e=e.parentNode;return n?n[t]:v},getColor:function(t,n){var r=x(t)[n];return(!r||r===d)&&e.DOM.elementByAxis(t,"parentNode",null,function(e){r=x(e)[n];if(r&&r!==d)return t=e,!0}),e.Color.toRGB(r)},getBorderColor:function(t,n){var r=x(t),i=r[n]||r.color;return e.Color.toRGB(e.Color.toHex(i))}},N={};w("style","computedStyle",{test:function(){return"getComputedStyle"in e.config.win}}),w("style","opacity",{test:function(){return"opacity"in y.style}}),w("style","filter",{test:function(){return"filters"in y}}),!b("style","opacity")&&b("style","filter")&&(e.DOM.CUSTOM_STYLES[s]={get:function(e){var t=100;try{t=e[i]["DXImageTransform.Microsoft.Alpha"][s]}catch(n){try{t=e[i]("alpha")[s]}catch(r){}}return t/100},set:function(e,n,i){var o,u=x(e),a=u[r];i=i||e.style,n===""&&(o=s in u?u[s]:1,n=o),typeof a=="string"&&(i[r]=a.replace(/alpha([^)]*\))/gi,"")+(n<1?"alpha("+s+"="+n*100+")":""),i[r]||i.removeAttribute(r),u[t]||(i.zoom=1))}});try{e.config.doc.createElement("div").style.height="-1px"}catch(C){e.DOM.CUSTOM_STYLES.height={set:function(e,t,n){var r=parseFloat(t);if(r>=0||t==="auto"||t==="")n.height=t}},e.DOM.CUSTOM_STYLES.width={set:function(e,t,n){var r=parseFloat(t);if(r>=0||t==="auto"||t==="")n.width=t}}}b("style","computedStyle")||(N[h]=N[p]=T.getOffset,N.color=N.backgroundColor=T.getColor,N[u]=N[a]=N[f]=N[l]=N[c]=T.getBorderWidth,N.marginTop=N.marginRight=N.marginBottom=N.marginLeft=T.getMargin,N.visibility=T.getVisibility,N.borderColor=N.borderTopColor=N.borderRightColor=N.borderBottomColor=N.borderLeftColor=T.getBorderColor,e.DOM[m]=T.get,e.namespace("DOM.IE"),e.DOM.IE.COMPUTED=N,e.DOM.IE.ComputedStyle=T)})(e)},"3.9.1",{requires:["dom-style"]}),YUI.add("dom-screen",function(e,t){(function(e){var t="documentElement",n="compatMode",r="position",i="fixed",s="relative",o="left",u="top",a="BackCompat",f="medium",l="borderLeftWidth",c="borderTopWidth",h="getBoundingClientRect",p="getComputedStyle",d=e.DOM,v=/^t(?:able|d|h)$/i,m;e.UA.ie&&(e.config.doc[n]!=="BackCompat"?m=t:m="body"),e.mix(d,{winHeight:function(e){var t=d._getWinSize(e).height;return t},winWidth:function(e){var t=d._getWinSize(e).width;return t},docHeight:function(e){var t=d._getDocSize(e).height;return Math.max(t,d._getWinSize(e).height)},docWidth:function(e){var t=d._getDocSize(e).width;return Math.max(t,d._getWinSize(e).width)},docScrollX:function(n,r){r=r||n?d._getDoc(n):e.config.doc;var i=r.defaultView,s=i?i.pageXOffset:0;return Math.max(r[t].scrollLeft,r.body.scrollLeft,s)},docScrollY:function(n,r){r=r||n?d._getDoc(n):e.config.doc;var i=r.defaultView,s=i?i.pageYOffset:0;return Math.max(r[t].scrollTop,r.body.scrollTop,s)},getXY:function(){return e.config.doc[t][h]?function(r){var i=null,s,o,u,f,l,c,p,v,g,y;if(r&&r.tagName){p=r.ownerDocument,u=p[n],u!==a?y=p[t]:y=p.body,y.contains?g=y.contains(r):g=e.DOM.contains(y,r);if(g){v=p.defaultView,v&&"pageXOffset"in v?(s=v.pageXOffset,o=v.pageYOffset):(s=m?p[m].scrollLeft:d.docScrollX(r,p),o=m?p[m].scrollTop:d.docScrollY(r,p)),e.UA.ie&&(!p.documentMode||p.documentMode<8||u===a)&&(l=y.clientLeft,c=y.clientTop),f=r[h](),i=[f.left,f.top];if(l||c)i[0]-=l,i[1]-=c;if(o||s)if(!e.UA.ios||e.UA.ios>=4.2)i[0]+=s,i[1]+=o}else i=d._getOffset(r)}return i}:function(t){var n=null,s,o,u,a,f;if(t)if(d.inDoc(t)){n=[t.offsetLeft,t.offsetTop],s=t.ownerDocument,o=t,u=e.UA.gecko||e.UA.webkit>519?!0:!1;while(o=o.offsetParent -)n[0]+=o.offsetLeft,n[1]+=o.offsetTop,u&&(n=d._calcBorders(o,n));if(d.getStyle(t,r)!=i){o=t;while(o=o.parentNode){a=o.scrollTop,f=o.scrollLeft,e.UA.gecko&&d.getStyle(o,"overflow")!=="visible"&&(n=d._calcBorders(o,n));if(a||f)n[0]-=f,n[1]-=a}n[0]+=d.docScrollX(t,s),n[1]+=d.docScrollY(t,s)}else n[0]+=d.docScrollX(t,s),n[1]+=d.docScrollY(t,s)}else n=d._getOffset(t);return n}}(),getScrollbarWidth:e.cached(function(){var t=e.config.doc,n=t.createElement("div"),r=t.getElementsByTagName("body")[0],i=.1;return r&&(n.style.cssText="position:absolute;visibility:hidden;overflow:scroll;width:20px;",n.appendChild(t.createElement("p")).style.height="1px",r.insertBefore(n,r.firstChild),i=n.offsetWidth-n.clientWidth,r.removeChild(n)),i},null,.1),getX:function(e){return d.getXY(e)[0]},getY:function(e){return d.getXY(e)[1]},setXY:function(e,t,n){var i=d.setStyle,a,f,l,c;e&&t&&(a=d.getStyle(e,r),f=d._getOffset(e),a=="static"&&(a=s,i(e,r,a)),c=d.getXY(e),t[0]!==null&&i(e,o,t[0]-c[0]+f[0]+"px"),t[1]!==null&&i(e,u,t[1]-c[1]+f[1]+"px"),n||(l=d.getXY(e),(l[0]!==t[0]||l[1]!==t[1])&&d.setXY(e,t,!0)))},setX:function(e,t){return d.setXY(e,[t,null])},setY:function(e,t){return d.setXY(e,[null,t])},swapXY:function(e,t){var n=d.getXY(e);d.setXY(e,d.getXY(t)),d.setXY(t,n)},_calcBorders:function(t,n){var r=parseInt(d[p](t,c),10)||0,i=parseInt(d[p](t,l),10)||0;return e.UA.gecko&&v.test(t.tagName)&&(r=0,i=0),n[0]+=i,n[1]+=r,n},_getWinSize:function(r,i){i=i||r?d._getDoc(r):e.config.doc;var s=i.defaultView||i.parentWindow,o=i[n],u=s.innerHeight,a=s.innerWidth,f=i[t];return o&&!e.UA.opera&&(o!="CSS1Compat"&&(f=i.body),u=f.clientHeight,a=f.clientWidth),{height:u,width:a}},_getDocSize:function(r){var i=r?d._getDoc(r):e.config.doc,s=i[t];return i[n]!="CSS1Compat"&&(s=i.body),{height:s.scrollHeight,width:s.scrollWidth}}})})(e),function(e){var t="top",n="right",r="bottom",i="left",s=function(e,s){var o=Math.max(e[t],s[t]),u=Math.min(e[n],s[n]),a=Math.min(e[r],s[r]),f=Math.max(e[i],s[i]),l={};return l[t]=o,l[n]=u,l[r]=a,l[i]=f,l},o=e.DOM;e.mix(o,{region:function(e){var t=o.getXY(e),n=!1;return e&&t&&(n=o._getRegion(t[1],t[0]+e.offsetWidth,t[1]+e.offsetHeight,t[0])),n},intersect:function(u,a,f){var l=f||o.region(u),c={},h=a,p;if(h.tagName)c=o.region(h);else{if(!e.Lang.isObject(a))return!1;c=a}return p=s(c,l),{top:p[t],right:p[n],bottom:p[r],left:p[i],area:(p[r]-p[t])*(p[n]-p[i]),yoff:p[r]-p[t],xoff:p[n]-p[i],inRegion:o.inRegion(u,a,!1,f)}},inRegion:function(u,a,f,l){var c={},h=l||o.region(u),p=a,d;if(p.tagName)c=o.region(p);else{if(!e.Lang.isObject(a))return!1;c=a}return f?h[i]>=c[i]&&h[n]<=c[n]&&h[t]>=c[t]&&h[r]<=c[r]:(d=s(c,h),d[r]>=d[t]&&d[n]>=d[i]?!0:!1)},inViewportRegion:function(e,t,n){return o.inRegion(e,o.viewportRegion(e),t,n)},_getRegion:function(e,s,o,u){var a={};return a[t]=a[1]=e,a[i]=a[0]=u,a[r]=o,a[n]=s,a.width=a[n]-a[i],a.height=a[r]-a[t],a},viewportRegion:function(t){t=t||e.config.doc.documentElement;var n=!1,r,i;return t&&(r=o.docScrollX(t),i=o.docScrollY(t),n=o._getRegion(i,o.winWidth(t)+r,i+o.winHeight(t),r)),n}})}(e)},"3.9.1",{requires:["dom-base","dom-style"]}),YUI.add("selector-native",function(e,t){(function(e){e.namespace("Selector");var t="compareDocumentPosition",n="ownerDocument",r={_types:{esc:{token:"\ue000",re:/\\[:\[\]\(\)#\.\'\>+~"]/gi},attr:{token:"\ue001",re:/(\[[^\]]*\])/g},pseudo:{token:"\ue002",re:/(\([^\)]*\))/g}},useNative:!0,_escapeId:function(e){return e&&(e=e.replace(/([:\[\]\(\)#\.'<>+~"])/g,"\\$1")),e},_compare:"sourceIndex"in e.config.doc.documentElement?function(e,t){var n=e.sourceIndex,r=t.sourceIndex;return n===r?0:n>r?1:-1}:e.config.doc.documentElement[t]?function(e,n){return e[t](n)&4?-1:1}:function(e,t){var r,i,s;return e&&t&&(r=e[n].createRange(),r.setStart(e,0),i=t[n].createRange(),i.setStart(t,0),s=r.compareBoundaryPoints(1,i)),s},_sort:function(t){return t&&(t=e.Array(t,0,!0),t.sort&&t.sort(r._compare)),t},_deDupe:function(e){var t=[],n,r;for(n=0;r=e[n++];)r._found||(t[t.length]=r,r._found=!0);for(n=0;r=t[n++];)r._found=null,r.removeAttribute("_found");return t},query:function(t,n,i,s){n=n||e.config.doc;var o=[],u=e.Selector.useNative&&e.config.doc.querySelector&&!s,a=[[t,n]],f,l,c,h=u?e.Selector._nativeQuery:e.Selector._bruteQuery;if(t&&h){!s&&(!u||n.tagName)&&(a=r._splitQueries(t,n));for(c=0;f=a[c++];)l=h(f[0],f[1],i),i||(l=e.Array(l,0,!0)),l&&(o=o.concat(l));a.length>1&&(o=r._sort(r._deDupe(o)))}return i?o[0]||null:o},_replaceSelector:function(t){var n=e.Selector._parse("esc",t),i,s;return t=e.Selector._replace("esc",t),s=e.Selector._parse("pseudo",t),t=r._replace("pseudo",t),i=e.Selector._parse("attr",t),t=e.Selector._replace("attr",t),{esc:n,attrs:i,pseudos:s,selector:t}},_restoreSelector:function(t){var n=t.selector;return n=e.Selector._restore("attr",n,t.attrs),n=e.Selector._restore("pseudo",n,t.pseudos),n=e.Selector._restore("esc",n,t.esc),n},_replaceCommas:function(t){var n=e.Selector._replaceSelector(t),t=n.selector;return t&&(t=t.replace(/,/g,"\ue007"),n.selector=t,t=e.Selector._restoreSelector(n)),t},_splitQueries:function(t,n){t.indexOf(",")>-1&&(t=e.Selector._replaceCommas(t));var r=t.split("\ue007"),i=[],s="",o,u,a;if(n){n.nodeType===1&&(o=e.Selector._escapeId(e.DOM.getId(n)),o||(o=e.guid(),e.DOM.setId(n,o)),s='[id="'+o+'"] ');for(u=0,a=r.length;u-1&&e.Selector.pseudos&&e.Selector.pseudos.checked)return e.Selector.query(t,n,r,!0);try{return n["querySelector"+(r?"":"All")](t)}catch(i){return e.Selector.query(t,n,r,!0)}},filter:function(t,n){var r=[],i,s;if(t&&n)for(i=0;s=t[i++];)e.Selector.test(s,n)&&(r[r.length]=s);return r},test:function(t,r,i){var s=!1,o=!1,u,a,f,l,c,h,p,d,v;if(t&&t.tagName)if(typeof r=="function")s=r.call(t,t);else{u=r.split(","),!i&&!e.DOM.inDoc(t)&&(a=t.parentNode,a?i=a:(c=t[n].createDocumentFragment(),c.appendChild(t),i=c,o=!0)),i=i||t[n],h=e.Selector._escapeId(e.DOM.getId(t)),h||(h=e.guid(),e.DOM.setId(t,h));for(p=0;v=u[p++];){v+='[id="'+ -h+'"]',l=e.Selector.query(v,i);for(d=0;f=l[d++];)if(f===t){s=!0;break}if(s)break}o&&c.removeChild(t)}return s},ancestor:function(t,n,r){return e.DOM.ancestor(t,function(t){return e.Selector.test(t,n)},r)},_parse:function(t,n){return n.match(e.Selector._types[t].re)},_replace:function(t,n){var r=e.Selector._types[t];return n.replace(r.re,r.token)},_restore:function(t,n,r){if(r){var i=e.Selector._types[t].token,s,o;for(s=0,o=r.length;s2?f.call(arguments,2):null;return this._on(e,t,n,!0)},on:function(e,t){var n=arguments.length>2?f.call(arguments,2):null;return this.monitored&&this.host&&this.host._monitor("attach",this,{args:arguments}),this._on(e,t,n,!0)},after:function(e,t){var n=arguments.length>2?f.call(arguments,2):null;return this._on(e,t,n,o)},detach:function(e,t){if(e&&e.detach)return e.detach();var n,r,i=0,s=this._subscribers,o=this._afters;for(n=s.length;n>=0;n--)r=s[n],r&&(!e||e===r.fn)&&(this._delete(r,s,n),i++);for(n=o.length;n>=0;n--)r=o[n],r&&(!e||e===r.fn)&&(this._delete(r,o,n),i++);return i},unsubscribe:function(){return this.detach.apply(this,arguments)},_notify:function(e,t,n){this.log(this.type+"->"+"sub: "+e.id);var r;return r=e.notify(t,this),!1===r||this.stopped>1?(this.log(this.type+" cancelled by subscriber"),!1):!0},log:function(e,t){},fire:function(){if(this.fireOnce&&this.fired)return this.log("fireOnce event: "+this.type+" already fired"),!0;var e=f.call(arguments,0);return this.fired=!0,this.fireOnce&&(this.firedWith=e),this.emitFacade?this.fireComplex(e):this.fireSimple(e)},fireSimple:function(e){this.stopped=0,this.prevented=0;if(this.hasSubs()){var t=this.getSubs();this._procSubs(t[0],e),this._procSubs(t[1],e)}return this._broadcast(e),this.stopped?!1:!0},fireComplex:function(e){return this.log("Missing event-custom-complex needed to emit a facade for: "+this.type),e[0]=e[0]||{},this.fireSimple(e)},_procSubs:function(e,t,n){var r,i,s;for(i=0,s=e.length;i-1?e:t+d+e}),w=e.cached(function(e,t){var n=e,r,i,s;return p.isString(n)?(s=n.indexOf(m),s>-1&&(i=!0,n=n.substr(m.length)),s=n.indexOf(v),s>-1&&(r=n.substr(0,s),n=n.substr(s+1),n=="*"&&(n=null)),[r,t?b(n,t):n,i,n]):n}),E=function(t){var n=p.isObject(t)?t:{};this._yuievt=this._yuievt||{id:e.guid(),events:{},targets:{},config:n,chain:"chain"in n?n.chain:e.config.chain,bubbling:!1,defaults:{context:n.context||this,host:this,emitFacade:n.emitFacade,fireOnce:n.fireOnce,queuable:n.queuable,monitored:n.monitored,broadcast:n.broadcast,defaultTargetOnly:n.defaultTargetOnly,bubbles:"bubbles"in n?n.bubbles:!0}}};E.prototype={constructor:E,once:function(){var e=this.on.apply(this,arguments);return e.batch(function(e){e.sub&&(e.sub.once=!0)}),e},onceAfter:function(){var e=this.after.apply(this,arguments);return e.batch(function(e){e.sub&&(e.sub.once=!0)}),e},parseType:function(e,t){return w(e,t||this._yuievt.config.prefix)},on:function(t,n,r){var i=this._yuievt,s=w(t,i.config.prefix),o,u,a,l,c,h,d,v=e.Env.evt.handles,g,y,b,E=e.Node,S,x,T;this._monitor("attach",s[1],{args:arguments,category:s[0],after:s[2]});if(p.isObject(t))return p.isFunction(t)?e.Do.before.apply(e.Do,arguments):(o=n,u=r,a=f.call(arguments,0),l=[],p.isArray(t)&&(T=!0),g=t._after,delete t._after,e.each(t,function(e,t){p.isObject(e)&&(o=e.fn||(p.isFunction(e)?e:o),u=e.context||u);var n=g?m:"";a[0]=n+(T?e:t),a[1]=o,a[2]=u,l.push(this.on.apply(this,a))},this),i.chain?this:new e.EventHandle(l));h=s[0],g=s[2],b=s[3];if(E&&e.instanceOf(this,E)&&b in E.DOM_EVENTS)return a=f.call(arguments,0),a.splice(2,0,E.getDOMNode(this)),e.on.apply(e,a);t=s[1];if(e.instanceOf(this,YUI)){y=e.Env.evt.plugins[t],a=f.call(arguments,0),a[0]=b,E&&(S=a[2],e.instanceOf(S,e.NodeList)?S=e.NodeList.getDOMNodes(S):e.instanceOf(S,E)&&(S=E.getDOMNode(S)),x=b in E.DOM_EVENTS,x&&(a[2]=S));if(y)d=y.on.apply(e,a);else if(!t||x)d=e.Event._attach(a)}return d||(c=i.events[t]||this.publish(t),d=c._on(n,r,arguments.length>3?f.call(arguments,3):null,g?"after":!0)),h&&(v[h]=v[h]||{},v[h][t]=v[h][t]||[],v[h][t].push(d)),i.chain?this:d},subscribe:function(){return this.on.apply(this,arguments)},detach:function(t,n,r){var i=this._yuievt.events,s,o=e.Node,u=o&&e.instanceOf(this,o);if(!t&&this!==e){for(s in i)i.hasOwnProperty(s)&&i[s].detach(n,r);return u&&e.Event.purgeElement(o.getDOMNode(this)),this}var a=w(t,this._yuievt.config.prefix),l=p.isArray(a)?a[0]:null,c=a?a[3]:null,h,d=e.Env.evt.handles,v,m,g,y,b=function(e,t,n){var r=e[t],i,s;if(r)for(s=r.length-1;s>=0;--s)i=r[s].evt,(i.host===n||i.el===n)&&r[s].detach()};if(l){m=d[l],t=a[1],v=u?e.Node.getDOMNode(this):this;if(m){if(t)b(m,t,v);else for(s in m)m.hasOwnProperty(s)&&b(m,s,v);return this}}else{if(p.isObject(t)&&t.detach)return t.detach(),this;if(u&&(!c||c in o.DOM_EVENTS))return g=f.call(arguments,0),g[2]=o.getDOMNode(this),e.detach.apply(e,g),this}h=e.Env.evt.plugins[c];if(e.instanceOf(this,YUI)){g=f.call(arguments,0);if(h&&h.detach)return h.detach.apply(e,g),this;if(!t||!h&&o&&t in o.DOM_EVENTS)return g[0]=t,e.Event.detach.apply(e.Event,g),this}return y=i[a[1]],y&&y.detach(n,r),this},unsubscribe:function(){return this.detach.apply(this,arguments)},detachAll:function(e){return this.detach(e)},unsubscribeAll:function(){return this.detachAll.apply(this,arguments)},publish:function(t,n){var r,i,s,o,u=this._yuievt,a=u.config.prefix;return p.isObject(t)?(s={},e.each(t,function(e,t){s[t]=this.publish(t,e||n)},this),s):(t=a?b(t,a):t,r=u.events,i=r[t],this._monitor("publish",t,{args:arguments}),i?n&&i.applyConfig(n,!0):(o=u.defaults,i=new e.CustomEvent(t,o),n&&i.applyConfig(n,!0),r[t]=i),r[t])},_monitor:function(e,t,n){var r,i,s;if(t){typeof t=="string"?(s=t,i=this.getEvent(t,!0)):(i=t,s=t.type);if(this._yuievt.config.monitored&&(!i||i.monitored)||i&&i.monitored)r=s+"_"+e,n.monitored=e,this.fire.call(this,r,n)}},fire:function(e){var t=p.isString(e),n=t?e:e&&e.type,r=this._yuievt,i=r.config.prefix,s,o,u,a=t?f.call(arguments,1):arguments;n=i?b(n,i):n,s=this.getEvent(n,!0),u=this.getSibling(n,s),u&&!s&&(s=this.publish(n)),this._monitor("fire",s||n,{args:a});if(!s){if(r.hasTargets)return this.bubble({type:n},a,this);o=!0}else s.sibling=u,o=s.fire.apply(s,a);return r.chain?this:o},getSibling:function(e,t){var n;return e -.indexOf(d)>-1&&(e=y(e),n=this.getEvent(e,!0),n&&(n.applyConfig(t),n.bubbles=!1,n.broadcast=0)),n},getEvent:function(e,t){var n,r;return t||(n=this._yuievt.config.prefix,e=n?b(e,n):e),r=this._yuievt.events,r[e]||null},after:function(t,n){var r=f.call(arguments,0);switch(p.type(t)){case"function":return e.Do.after.apply(e.Do,arguments);case"array":case"object":r[0]._after=!0;break;default:r[0]=m+t}return this.on.apply(this,r)},before:function(){return this.on.apply(this,arguments)}},e.EventTarget=E,e.mix(e,E.prototype),E.call(e,{bubbles:!1}),YUI.Env.globalEvents=YUI.Env.globalEvents||new E,e.Global=YUI.Env.globalEvents},"3.9.1",{requires:["oop"]}),YUI.add("event-custom-complex",function(e,t){var n,r,i,s={},o=e.CustomEvent.prototype,u=e.EventTarget.prototype,a=function(e,t){var n;for(n in t)r.hasOwnProperty(n)||(e[n]=t[n])};e.EventFacade=function(e,t){e=e||s,this._event=e,this.details=e.details,this.type=e.type,this._type=e.type,this.target=e.target,this.currentTarget=t,this.relatedTarget=e.relatedTarget},e.mix(e.EventFacade.prototype,{stopPropagation:function(){this._event.stopPropagation(),this.stopped=1},stopImmediatePropagation:function(){this._event.stopImmediatePropagation(),this.stopped=2},preventDefault:function(){this._event.preventDefault(),this.prevented=1},halt:function(e){this._event.halt(e),this.prevented=1,this.stopped=e?2:1}}),o.fireComplex=function(t){var n,r,i,s,o,u,a,f,l,c=this,h=c.host||c,p,d;if(c.stack&&c.queuable&&c.type!=c.stack.next.type)return c.log("queue "+c.type),c.stack.queue.push([c,t]),!0;n=c.stack||{id:c.id,next:c,silent:c.silent,stopped:0,prevented:0,bubbling:null,type:c.type,afterQueue:new e.Queue,defaultTargetOnly:c.defaultTargetOnly,queue:[]},f=c.getSubs(),c.stopped=c.type!==n.type?0:n.stopped,c.prevented=c.type!==n.type?0:n.prevented,c.target=c.target||h,c.stoppedFn&&(a=new e.EventTarget({fireOnce:!0,context:h}),c.events=a,a.on("stopped",c.stoppedFn)),c.currentTarget=h,c.details=t.slice(),c.log("Firing "+c.type),c._facade=null,r=c._getFacade(t),e.Lang.isObject(t[0])?t[0]=r:t.unshift(r),f[0]&&c._procSubs(f[0],t,r),c.bubbles&&h.bubble&&!c.stopped&&(d=n.bubbling,n.bubbling=c.type,n.type!=c.type&&(n.stopped=0,n.prevented=0),u=h.bubble(c,t,null,n),c.stopped=Math.max(c.stopped,n.stopped),c.prevented=Math.max(c.prevented,n.prevented),n.bubbling=d),c.prevented?c.preventedFn&&c.preventedFn.apply(h,t):c.defaultFn&&(!c.defaultTargetOnly&&!n.defaultTargetOnly||h===r.target)&&c.defaultFn.apply(h,t),c._broadcast(t);if(f[1]&&!c.prevented&&c.stopped<2)if(n.id===c.id||c.type!=h._yuievt.bubbling){c._procSubs(f[1],t,r);while(p=n.afterQueue.last())p()}else l=f[1],n.execDefaultCnt&&(l=e.merge(l),e.each(l,function(e){e.postponed=!0})),n.afterQueue.add(function(){c._procSubs(l,t,r)});c.target=null;if(n.id===c.id){s=n.queue;while(s.length)i=s.pop(),o=i[0],n.next=o,o.fire.apply(o,i[1]);c.stack=null}return u=!c.stopped,c.type!=h._yuievt.bubbling&&(n.stopped=0,n.prevented=0,c.stopped=0,c.prevented=0),c._facade=null,u},o._getFacade=function(){var t=this._facade,n,r=this.details;return t||(t=new e.EventFacade(this,this.currentTarget)),n=r&&r[0],e.Lang.isObject(n,!0)&&(a(t,n),t.type=n.type||t.type),t.details=this.details,t.target=this.originalTarget||this.target,t.currentTarget=this.currentTarget,t.stopped=0,t.prevented=0,this._facade=t,this._facade},o.stopPropagation=function(){this.stopped=1,this.stack&&(this.stack.stopped=1),this.events&&this.events.fire("stopped",this)},o.stopImmediatePropagation=function(){this.stopped=2,this.stack&&(this.stack.stopped=2),this.events&&this.events.fire("stopped",this)},o.preventDefault=function(){this.preventable&&(this.prevented=1,this.stack&&(this.stack.prevented=1))},o.halt=function(e){e?this.stopImmediatePropagation():this.stopPropagation(),this.preventDefault()},u.addTarget=function(t){this._yuievt.targets[e.stamp(t)]=t,this._yuievt.hasTargets=!0},u.getTargets=function(){return e.Object.values(this._yuievt.targets)},u.removeTarget=function(t){delete this._yuievt.targets[e.stamp(t)]},u.bubble=function(e,t,n,r){var i=this._yuievt.targets,s=!0,o,u=e&&e.type,a,f,l,c,h=n||e&&e.target||this,p;if(!e||!e.stopped&&i)for(f in i)if(i.hasOwnProperty(f)){o=i[f],a=o.getEvent(u,!0),c=o.getSibling(u,a),c&&!a&&(a=o.publish(u)),p=o._yuievt.bubbling,o._yuievt.bubbling=u;if(!a)o._yuievt.hasTargets&&o.bubble(e,t,h,r);else{a.sibling=c,a.target=h,a.originalTarget=h,a.currentTarget=o,l=a.broadcast,a.broadcast=!1,a.emitFacade=!0,a.stack=r,s=s&&a.fire.apply(a,t||e.details||[]),a.broadcast=l,a.originalTarget=null;if(a.stopped)break}o._yuievt.bubbling=p}return s},n=new e.EventFacade,r={};for(i in n)r[i]=!0},"3.9.1",{requires:["event-custom-base"]}),YUI.add("node-core",function(e,t){var n=".",r="nodeName",i="nodeType",s="ownerDocument",o="tagName",u="_yuid",a={},f=Array.prototype.slice,l=e.DOM,c=function(t){if(!this.getDOMNode)return new c(t);if(typeof t=="string"){t=c._fromString(t);if(!t)return null}var n=t.nodeType!==9?t.uniqueID:t[u];n&&c._instances[n]&&c._instances[n]._node!==t&&(t[u]=null),n=n||e.stamp(t),n||(n=e.guid()),this[u]=n,this._node=t,this._stateProxy=t,this._initPlugins&&this._initPlugins()},h=function(t){var n=null;return t&&(n=typeof t=="string"?function(n){return e.Selector.test(n,t)}:function(n){return t(e.one(n))}),n};c.ATTRS={},c.DOM_EVENTS={},c._fromString=function(t){return t&&(t.indexOf("doc")===0?t=e.config.doc:t.indexOf("win")===0?t=e.config.win:t=e.Selector.query(t,null,!0)),t||null},c.NAME="node",c.re_aria=/^(?:role$|aria-)/,c.SHOW_TRANSITION="fadeIn",c.HIDE_TRANSITION="fadeOut",c._instances={},c.getDOMNode=function(e){return e?e.nodeType?e:e._node||null:null},c.scrubVal=function(t,n){if(t){if(typeof t=="object"||typeof t=="function")if(i in t||l.isWindow(t))t=e.one(t);else if(t.item&&!t._nodes||t[0]&&t[0][i])t=e.all(t)}else typeof t=="undefined"?t=n:t===null&&(t=null);return t},c.addMethod=function(e,t,n){e&&t&&typeof t=="function"&&(c.prototype[e]=function(){var e=f.call(arguments),n=this,r;return e[0]&&e[0]._node&&(e[0]=e[0]._node -),e[1]&&e[1]._node&&(e[1]=e[1]._node),e.unshift(n._node),r=t.apply(n,e),r&&(r=c.scrubVal(r,n)),typeof r!="undefined"||(r=n),r})},c.importMethod=function(t,n,r){typeof n=="string"?(r=r||n,c.addMethod(r,t[n],t)):e.Array.each(n,function(e){c.importMethod(t,e)})},c.one=function(t){var n=null,r,i;if(t){if(typeof t=="string"){t=c._fromString(t);if(!t)return null}else if(t.getDOMNode)return t;if(t.nodeType||e.DOM.isWindow(t)){i=t.uniqueID&&t.nodeType!==9?t.uniqueID:t._yuid,n=c._instances[i],r=n?n._node:null;if(!n||r&&t!==r)n=new c(t),t.nodeType!=11&&(c._instances[n[u]]=n)}}return n},c.DEFAULT_SETTER=function(t,r){var i=this._stateProxy,s;return t.indexOf(n)>-1?(s=t,t=t.split(n),e.Object.setValue(i,t,r)):typeof i[t]!="undefined"&&(i[t]=r),r},c.DEFAULT_GETTER=function(t){var r=this._stateProxy,i;return t.indexOf&&t.indexOf(n)>-1?i=e.Object.getValue(r,t.split(n)):typeof r[t]!="undefined"&&(i=r[t]),i},e.mix(c.prototype,{DATA_PREFIX:"data-",toString:function(){var e=this[u]+": not bound to a node",t=this._node,n,i,s;return t&&(n=t.attributes,i=n&&n.id?t.getAttribute("id"):null,s=n&&n.className?t.getAttribute("className"):null,e=t[r],i&&(e+="#"+i),s&&(e+="."+s.replace(" ",".")),e+=" "+this[u]),e},get:function(e){var t;return this._getAttr?t=this._getAttr(e):t=this._get(e),t?t=c.scrubVal(t,this):t===null&&(t=null),t},_get:function(e){var t=c.ATTRS[e],n;return t&&t.getter?n=t.getter.call(this):c.re_aria.test(e)?n=this._node.getAttribute(e,2):n=c.DEFAULT_GETTER.apply(this,arguments),n},set:function(e,t){var n=c.ATTRS[e];return this._setAttr?this._setAttr.apply(this,arguments):n&&n.setter?n.setter.call(this,t,e):c.re_aria.test(e)?this._node.setAttribute(e,t):c.DEFAULT_SETTER.apply(this,arguments),this},setAttrs:function(t){return this._setAttrs?this._setAttrs(t):e.Object.each(t,function(e,t){this.set(t,e)},this),this},getAttrs:function(t){var n={};return this._getAttrs?this._getAttrs(t):e.Array.each(t,function(e,t){n[e]=this.get(e)},this),n},compareTo:function(e){var t=this._node;return e&&e._node&&(e=e._node),t===e},inDoc:function(e){var t=this._node;e=e?e._node||e:t[s];if(e.documentElement)return l.contains(e.documentElement,t)},getById:function(t){var n=this._node,r=l.byId(t,n[s]);return r&&l.contains(n,r)?r=e.one(r):r=null,r},ancestor:function(t,n,r){return arguments.length===2&&(typeof n=="string"||typeof n=="function")&&(r=n),e.one(l.ancestor(this._node,h(t),n,h(r)))},ancestors:function(t,n,r){return arguments.length===2&&(typeof n=="string"||typeof n=="function")&&(r=n),e.all(l.ancestors(this._node,h(t),n,h(r)))},previous:function(t,n){return e.one(l.elementByAxis(this._node,"previousSibling",h(t),n))},next:function(t,n){return e.one(l.elementByAxis(this._node,"nextSibling",h(t),n))},siblings:function(t){return e.all(l.siblings(this._node,h(t)))},one:function(t){return e.one(e.Selector.query(t,this._node,!0))},all:function(t){var n=e.all(e.Selector.query(t,this._node));return n._query=t,n._queryRoot=this._node,n},test:function(t){return e.Selector.test(this._node,t)},remove:function(e){var t=this._node;return t&&t.parentNode&&t.parentNode.removeChild(t),e&&this.destroy(),this},replace:function(e){var t=this._node;return typeof e=="string"&&(e=c.create(e)),t.parentNode.replaceChild(c.getDOMNode(e),t),this},replaceChild:function(t,n){return typeof t=="string"&&(t=l.create(t)),e.one(this._node.replaceChild(c.getDOMNode(t),c.getDOMNode(n)))},destroy:function(t){var n=e.config.doc.uniqueID?"uniqueID":"_yuid",r;this.purge(),this.unplug&&this.unplug(),this.clearData(),t&&e.NodeList.each(this.all("*"),function(t){r=c._instances[t[n]],r?r.destroy():e.Event.purgeElement(t)}),this._node=null,this._stateProxy=null,delete c._instances[this._yuid]},invoke:function(e,t,n,r,i,s){var o=this._node,u;return t&&t._node&&(t=t._node),n&&n._node&&(n=n._node),u=o[e](t,n,r,i,s),c.scrubVal(u,this)},swap:e.config.doc.documentElement.swapNode?function(e){this._node.swapNode(c.getDOMNode(e))}:function(e){e=c.getDOMNode(e);var t=this._node,n=e.parentNode,r=e.nextSibling;return r===t?n.insertBefore(t,e):e===t.nextSibling?n.insertBefore(e,t):(t.parentNode.replaceChild(e,t),l.addHTML(n,t,r)),this},hasMethod:function(e){var t=this._node;return!(!(t&&e in t&&typeof t[e]!="unknown")||typeof t[e]!="function"&&String(t[e]).indexOf("function")!==1)},isFragment:function(){return this.get("nodeType")===11},empty:function(){return this.get("childNodes").remove().destroy(!0),this},getDOMNode:function(){return this._node}},!0),e.Node=c,e.one=c.one;var p=function(t){var n=[];t&&(typeof t=="string"?(this._query=t,t=e.Selector.query(t)):t.nodeType||l.isWindow(t)?t=[t]:t._node?t=[t._node]:t[0]&&t[0]._node?(e.Array.each(t,function(e){e._node&&n.push(e._node)}),t=n):t=e.Array(t,0,!0)),this._nodes=t||[]};p.NAME="NodeList",p.getDOMNodes=function(e){return e&&e._nodes?e._nodes:e},p.each=function(t,n,r){var i=t._nodes;i&&i.length&&e.Array.each(i,n,r||t)},p.addMethod=function(t,n,r){t&&n&&(p.prototype[t]=function(){var t=[],i=arguments;return e.Array.each(this._nodes,function(s){var o=s.uniqueID&&s.nodeType!==9?"uniqueID":"_yuid",u=e.Node._instances[s[o]],a,f;u||(u=p._getTempNode(s)),a=r||u,f=n.apply(a,i),f!==undefined&&f!==u&&(t[t.length]=f)}),t.length?t:this})},p.importMethod=function(t,n,r){typeof n=="string"?(r=r||n,p.addMethod(n,t[n])):e.Array.each(n,function(e){p.importMethod(t,e)})},p._getTempNode=function(t){var n=p._tempNode;return n||(n=e.Node.create("
              "),p._tempNode=n),n._node=t,n._stateProxy=t,n},e.mix(p.prototype,{_invoke:function(e,t,n){var r=n?[]:this;return this.each(function(i){var s=i[e].apply(i,t);n&&r.push(s)}),r},item:function(t){return e.one((this._nodes||[])[t])},each:function(t,n){var r=this;return e.Array.each(this._nodes,function(i,s){return i=e.one(i),t.call(n||i,i,s,r)}),r},batch:function(t,n){var r=this;return e.Array.each(this._nodes,function(i,s){var o=e.Node._instances[i[u]];return o||(o=p._getTempNode(i)),t.call(n||o,o,s,r)}),r},some:function(t,n){var r=this;return e.Array.some(this._nodes,function(i,s){return i= -e.one(i),n=n||i,t.call(n,i,s,r)})},toFrag:function(){return e.one(e.DOM._nl2frag(this._nodes))},indexOf:function(t){return e.Array.indexOf(this._nodes,e.Node.getDOMNode(t))},filter:function(t){return e.all(e.Selector.filter(this._nodes,t))},modulus:function(t,n){n=n||0;var r=[];return p.each(this,function(e,i){i%t===n&&r.push(e)}),e.all(r)},odd:function(){return this.modulus(2,1)},even:function(){return this.modulus(2)},destructor:function(){},refresh:function(){var t,n=this._nodes,r=this._query,i=this._queryRoot;return r&&(i||n&&n[0]&&n[0].ownerDocument&&(i=n[0].ownerDocument),this._nodes=e.Selector.query(r,i)),this},size:function(){return this._nodes.length},isEmpty:function(){return this._nodes.length<1},toString:function(){var e="",t=this[u]+": not bound to any nodes",n=this._nodes,i;return n&&n[0]&&(i=n[0],e+=i[r],i.id&&(e+="#"+i.id),i.className&&(e+="."+i.className.replace(" ",".")),n.length>1&&(e+="...["+n.length+" items]")),e||t},getDOMNodes:function(){return this._nodes}},!0),p.importMethod(e.Node.prototype,["destroy","empty","remove","set"]),p.prototype.get=function(t){var n=[],r=this._nodes,i=!1,s=p._getTempNode,o,u;return r[0]&&(o=e.Node._instances[r[0]._yuid]||s(r[0]),u=o._get(t),u&&u.nodeType&&(i=!0)),e.Array.each(r,function(r){o=e.Node._instances[r._yuid],o||(o=s(r)),u=o._get(t),i||(u=e.Node.scrubVal(u,o)),n.push(u)}),i?e.all(n):n},e.NodeList=p,e.all=function(e){return new p(e)},e.Node.all=e.all;var d=e.NodeList,v=Array.prototype,m={concat:1,pop:0,push:0,shift:0,slice:1,splice:1,unshift:0};e.Object.each(m,function(t,n){d.prototype[n]=function(){var r=[],i=0,s,o;while(typeof (s=arguments[i++])!="undefined")r.push(s._node||s._nodes||s);return o=v[n].apply(this._nodes,r),t?o=e.all(o):o=e.Node.scrubVal(o),o}}),e.Array.each(["removeChild","hasChildNodes","cloneNode","hasAttribute","scrollIntoView","getElementsByTagName","focus","blur","submit","reset","select","createCaption"],function(t){e.Node.prototype[t]=function(e,n,r){var i=this.invoke(t,e,n,r);return i}}),e.Node.prototype.removeAttribute=function(e){var t=this._node;return t&&t.removeAttribute(e,0),this},e.Node.importMethod(e.DOM,["contains","setAttribute","getAttribute","wrap","unwrap","generateID"]),e.NodeList.importMethod(e.Node.prototype,["getAttribute","setAttribute","removeAttribute","unwrap","wrap","generateID"])},"3.9.1",{requires:["dom-core","selector"]}),YUI.add("node-base",function(e,t){var n=["hasClass","addClass","removeClass","replaceClass","toggleClass"];e.Node.importMethod(e.DOM,n),e.NodeList.importMethod(e.Node.prototype,n);var r=e.Node,i=e.DOM;r.create=function(t,n){return n&&n._node&&(n=n._node),e.one(i.create(t,n))},e.mix(r.prototype,{create:r.create,insert:function(e,t){return this._insert(e,t),this},_insert:function(e,t){var n=this._node,r=null;return typeof t=="number"?t=this._node.childNodes[t]:t&&t._node&&(t=t._node),e&&typeof e!="string"&&(e=e._node||e._nodes||e),r=i.addHTML(n,e,t),r},prepend:function(e){return this.insert(e,0)},append:function(e){return this.insert(e,null)},appendChild:function(e){return r.scrubVal(this._insert(e))},insertBefore:function(t,n){return e.Node.scrubVal(this._insert(t,n))},appendTo:function(t){return e.one(t).append(this),this},setContent:function(e){return this._insert(e,"replace"),this},getContent:function(e){return this.get("innerHTML")}}),e.Node.prototype.setHTML=e.Node.prototype.setContent,e.Node.prototype.getHTML=e.Node.prototype.getContent,e.NodeList.importMethod(e.Node.prototype,["append","insert","appendChild","insertBefore","prepend","setContent","getContent","setHTML","getHTML"]);var r=e.Node,i=e.DOM;r.ATTRS={text:{getter:function(){return i.getText(this._node)},setter:function(e){return i.setText(this._node,e),e}},"for":{getter:function(){return i.getAttribute(this._node,"for")},setter:function(e){return i.setAttribute(this._node,"for",e),e}},options:{getter:function(){return this._node.getElementsByTagName("option")}},children:{getter:function(){var t=this._node,n=t.children,r,i,s;if(!n){r=t.childNodes,n=[];for(i=0,s=r.length;i1?this._data[e]=t:this._data=e,this},clearData:function(e){return"_data"in this&&(typeof e!="undefined"?delete this._data[e]:delete this._data),this}}),e.mix(e.NodeList.prototype,{getData:function(e){var t=arguments.length?[e]:[];return this._invoke("getData",t,!0)},setData:function(e,t){var n=arguments.length>1?[e,t]:[e];return this._invoke("setData",n)},clearData:function(e){var t=arguments.length?[e]:[];return this._invoke("clearData",[e])}})},"3.9.1",{requires:["event-base","node-core","dom-base"]}),function(){var e=YUI.Env;e._ready||(e._ready=function(){e.DOMReady=!0,e.remove(YUI.config.doc,"DOMContentLoaded",e._ready)},e.add(YUI.config.doc,"DOMContentLoaded",e._ready))}(),YUI.add("event-base",function(e,t){e.publish("domready",{fireOnce:!0,async:!0}),YUI.Env.DOMReady?e.fire("domready"):e.Do.before(function(){e.fire("domready")},YUI.Env,"_ready");var n=e.UA,r={},i={63232:38,63233:40,63234:37,63235:39,63276:33,63277:34,25:9,63272:46,63273:36,63275:35},s=function(t){if(!t)return t;try{t&&3==t.nodeType&&(t=t.parentNode)}catch(n){return null}return e.one(t)},o=function(e,t,n){this._event=e,this._currentTarget=t,this._wrapper=n||r,this.init()};e.extend(o,Object,{init:function(){var e=this._event,t=this._wrapper.overrides,r=e.pageX,o=e.pageY,u,a=this._currentTarget;this.altKey=e.altKey,this.ctrlKey=e.ctrlKey,this.metaKey=e.metaKey,this.shiftKey=e.shiftKey,this.type=t&&t.type||e.type,this.clientX=e.clientX,this.clientY=e.clientY,this.pageX=r,this.pageY=o,u=e.keyCode||e.charCode,n.webkit&&u in i&&(u=i[u]),this.keyCode=u,this.charCode=u,this.which=e.which||e.charCode||u,this.button=this.which,this.target=s(e.target),this.currentTarget=s(a),this.relatedTarget=s(e.relatedTarget);if(e.type=="mousewheel"||e.type=="DOMMouseScroll")this.wheelDelta=e.detail?e.detail*-1:Math.round(e.wheelDelta/80)||(e.wheelDelta<0?-1:1);this._touch&&this._touch(e,a,this._wrapper)},stopPropagation:function(){this._event.stopPropagation(),this._wrapper.stopped=1,this.stopped=1},stopImmediatePropagation:function(){var e=this._event;e.stopImmediatePropagation?e.stopImmediatePropagation():this.stopPropagation(),this._wrapper.stopped=2,this.stopped=2},preventDefault:function(e){var t=this._event;t.preventDefault(),t.returnValue=e||!1,this._wrapper.prevented=1,this.prevented=1},halt:function(e){e?this.stopImmediatePropagation():this.stopPropagation(),this.preventDefault()}}),o.resolve=s,e.DOM2EventFacade=o,e.DOMEventFacade=o,function(){e.Env.evt.dom_wrappers={},e.Env.evt.dom_map={};var t=e.DOM,n=e.Env.evt,r=e.config,i=r.win,s=YUI.Env.add,o=YUI.Env.remove,u=function(){YUI.Env.windowLoaded=!0,e.Event._load(),o(i,"load",u)},a=function(){e.Event._unload()},f="domready",l="~yui|2|compat~",c=function(n){try{return n&&typeof n!="string"&&e.Lang.isNumber(n.length)&&!n.tagName&&!t.isWindow(n)}catch(r){return!1}},h=e.CustomEvent.prototype._delete,p=function(t){var n=h.apply(this,arguments);return this.hasSubs()||e.Event._clean(this),n},d=function(){var r=!1,u=0,h=[],v=n.dom_wrappers,m=null,g=n.dom_map;return{POLL_RETRYS:1e3,POLL_INTERVAL:40,lastError:null,_interval:null,_dri:null,DOMReady:!1,startInterval:function(){d._interval||(d._interval=setInterval(d._poll,d.POLL_INTERVAL))},onAvailable:function(t,n,r,i,s,o){var a=e.Array(t),f,l;for(f=0;f4?n.slice(4):null),h&&a.fire(),p):!1},detach:function(n,r,i,s){var o=e.Array(arguments,0,!0),u,a,f,h,p,m;o[o.length-1]===l&&(u=!0);if(n&&n.detach)return n.detach();typeof i=="string"&&(u?i=t.byId(i):(i=e.Selector.query(i),a=i.length,a<1?i=null:a==1&&(i=i[0])));if(!i)return!1;if(i.detach)return o.splice(2,1),i.detach.apply(i,o);if(c(i)){f=!0;for(h=0,a=i.length;h0),a=[],f=function(t,n){var r,i=n.override;try{n.compat?(n.override?i===!0?r=n.obj:r=i:r=t,n.fn.call(r,n.obj)):(r=n.obj||e.one(t),n.fn.apply(r,e.Lang.isArray(i)?i:[]))}catch(s){}};for(n=0,i=h.length;n4?e.Array(arguments,4,!0):null;return e.Event.onAvailable.call(e.Event,r,n,i,s)}},e.Env.evt.plugins.contentready={on:function(t,n,r,i){var s=arguments.length>4?e.Array(arguments,4,!0):null;return e.Event.onContentReady.call(e.Event,r,n,i,s)}}},"3.9.1",{requires:["event-custom-base"]}),function(){var e,t=YUI.Env,n=YUI.config,r=n.doc,i=r&&r.documentElement,s="onreadystatechange",o=n.pollInterval||40;i.doScroll&&!t._ieready&&(t._ieready=function(){t._ready()}, -/*! DOMReady: based on work by: Dean Edwards/John Resig/Matthias Miller/Diego Perini */ -self!==self.top?(e=function(){r.readyState=="complete"&&(t.remove(r,s,e),t.ieready())},t.add(r,s,e)):t._dri=setInterval(function(){try{i.doScroll("left"),clearInterval(t._dri),t._dri=null,t._ieready()}catch(e){}},o))}(),YUI.add("event-base-ie",function(e,t){function n(){e.DOM2EventFacade.apply(this,arguments)}function r(t){var n=e.config.doc.createEventObject(t),i=r.prototype;return n.hasOwnProperty=function(){return!0},n.init=i.init,n.halt=i.halt,n.preventDefault=i.preventDefault,n.stopPropagation=i.stopPropagation,n.stopImmediatePropagation=i.stopImmediatePropagation,e.DOM2EventFacade.apply(n,arguments),n}var i=e.config.doc&&e.config.doc.implementation,s=e.config.lazyEventFacade,o={0:1,4:2,2:3},u={mouseout:"toElement",mouseover:"fromElement"},a=e.DOM2EventFacade.resolve,f={init:function(){n.superclass.init.apply(this,arguments);var t=this._event,r,i,s,u,f,l;this.target=a(t.srcElement),"clientX"in t&&!r&&0!==r&&(r=t.clientX,i=t.clientY,s=e.config.doc,u=s.body,f=s.documentElement,r+=f.scrollLeft||u&&u.scrollLeft||0,i+=f.scrollTop||u&&u.scrollTop||0,this.pageX=r,this.pageY=i),t.type=="mouseout"?l=t.toElement:t.type=="mouseover"&&(l=t.fromElement),this.relatedTarget=a(l||t.relatedTarget),this.which=this.button=t.keyCode||o[t.button]||t.button},stopPropagation:function(){this._event.cancelBubble=!0,this._wrapper.stopped=1,this.stopped=1},stopImmediatePropagation:function(){this.stopPropagation(),this._wrapper.stopped=2,this.stopped=2},preventDefault:function(e){this._event.returnValue=e||!1,this._wrapper.prevented=1,this.prevented=1}};e.extend(n,e.DOM2EventFacade,f),e.extend(r,e.DOM2EventFacade,f),r.prototype.init=function(){var e=this._event,t=this._wrapper.overrides,n=r._define,i=r._lazyProperties,s;this.altKey=e.altKey,this.ctrlKey=e.ctrlKey,this.metaKey=e.metaKey,this.shiftKey=e.shiftKey,this.type=t&&t.type||e.type,this.clientX=e.clientX,this.clientY=e.clientY,this.keyCode=this.charCode= -e.keyCode,this.which=this.button=e.keyCode||o[e.button]||e.button;for(s in i)i.hasOwnProperty(s)&&n(this,s,i[s]);this._touch&&this._touch(e,this._currentTarget,this._wrapper)},r._lazyProperties={target:function(){return a(this._event.srcElement)},relatedTarget:function(){var e=this._event,t=u[e.type]||"relatedTarget";return a(e[t]||e.relatedTarget)},currentTarget:function(){return a(this._currentTarget)},wheelDelta:function(){var e=this._event;if(e.type==="mousewheel"||e.type==="DOMMouseScroll")return e.detail?e.detail*-1:Math.round(e.wheelDelta/80)||(e.wheelDelta<0?-1:1)},pageX:function(){var t=this._event,n=t.pageX,r,i,s;return n===undefined&&(r=e.config.doc,i=r.body&&r.body.scrollLeft,s=r.documentElement.scrollLeft,n=t.clientX+(s||i||0)),n},pageY:function(){var t=this._event,n=t.pageY,r,i,s;return n===undefined&&(r=e.config.doc,i=r.body&&r.body.scrollTop,s=r.documentElement.scrollTop,n=t.clientY+(s||i||0)),n}},r._define=function(e,t,n){function r(r){var i=arguments.length?r:n.call(this);return delete e[t],Object.defineProperty(e,t,{value:i,configurable:!0,writable:!0}),i}Object.defineProperty(e,t,{get:r,set:r,configurable:!0})};if(i&&!i.hasFeature("Events","2.0")){if(s)try{Object.defineProperty(e.config.doc.createEventObject(),"z",{})}catch(l){s=!1}e.DOMEventFacade=s?r:n}},"3.9.1",{requires:["node-base"]}),YUI.add("pluginhost-base",function(e,t){function r(){this._plugins={}}var n=e.Lang;r.prototype={plug:function(e,t){var r,i,s;if(n.isArray(e))for(r=0,i=e.length;r=0;o--)s=n[o],a=s._UNPLUG,a&&e.mix(i,a,!0),u=s._PLUG,u&&e.mix(r,u,!0);for(f in r)r.hasOwnProperty(f)&&(i[f]||this.plug(r[f]));t&&t.plugins&&this.plug(t.plugins)},n.plug=function(t,n,i){var s,o,u,a;if(t!==e.Base){t._PLUG=t._PLUG||{},r.isArray(n)||(i&&(n={fn:n,cfg:i}),n=[n]);for(o=0,u=n.length;o1&&(g=p.shift(),c[0]=t=p.shift()),d=e.Node.DOM_EVENTS[t],s(d)&&d.delegate&&(E=d.delegate.apply(d,arguments));if(!E){if(!t||!r||!u||!l)return;v=h?e.Selector.query(h,null,!0):u,!v&&i(u)&&(E=e.on("available",function(){e.mix(E,e.delegate.apply(e,c),!0)},u)),!E&&v&&(c.splice(2,2,v),E=e.Event._attach(c,{facade:!1}),E.sub.filter=l,E.sub._notify=f.notifySub)}return E&&g&&(m=a[g]||(a[g]={}),m=m[t]||(m[t]=[]),m.push(E)),E}var n=e.Array,r=e.Lang,i=r.isString,s=r.isObject,o=r.isArray,u=e.Selector.test,a=e.Env.evt.handles;f.notifySub=function(t,r,i){r=r.slice(),this.args&&r.push.apply(r,this.args);var s=f._applyFilter(this.filter,r,i),o,u,a,l;if(s){s=n(s),o=r[0]=new e.DOMEventFacade(r[0],i.el,i),o.container=e.one(i.el);for(u=0,a=s.length;u=200&&n<300||n===304||n===1223?this.success(e,t):this.failure(e,t)},_rS:function(e,t){var n=this;e.c.readyState===4&&(t.timeout&&n._clearTimeout(e.id),setTimeout(function(){n.complete(e,t),n._result(e,t)},0))},_abort:function(e,t){e&&e.c&&(e.e=t,e.c.abort())},send:function(t,n,i){var s,o,u,a,f,c,h=this,p=t,d={};n=n?e.Object(n):{},s=h._create(n,i),o=n.method?n.method.toUpperCase():"GET",f=n.sync,c=n.data,e.Lang.isObject(c)&&!c.nodeType&&!s.upload&&e.QueryString&&e.QueryString.stringify&&(n.data=c=e.QueryString.stringify(c));if(n.form){if(n.form.upload)return h.upload(s,t,n);c=h._serialize(n.form,c)}c||(c="");if(c)switch(o){case"GET":case"HEAD":case"DELETE":p=h._concat(p,c),c="";break;case"POST":case"PUT":n.headers=e.merge({"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},n.headers)}if(s.xdr)return h.xdr(p,s,n);if(s.notify)return s.c.send(s,t,n);!f&&!s.upload&&(s.c.onreadystatechange=function(){h._rS(s,n)});try{s.c.open(o,p,!f,n.username|| -null,n.password||null),h._setHeaders(s.c,n.headers||{}),h.start(s,n),n.xdr&&n.xdr.credentials&&l&&(s.c.withCredentials=!0),s.c.send(c);if(f){for(u=0,a=r.length;u":{axis:"parentNode",direct:!0},"+":{axis:"previousSibling",direct:!0}},_parsers:[{name:i,re:/^\uE003(-?[a-z]+[\w\-]*)+([~\|\^\$\*!=]=?)?['"]?([^\uE004'"]*)['"]?\uE004/i,fn:function(t,n){var r=t[2]||"",i=u.operators,s=t[3]?t[3].replace(/\\/g,""):"",o;if(t[1]==="id"&&r==="="||t[1]==="className"&&e.config.doc.documentElement.getElementsByClassName&&(r==="~="||r==="="))n.prefilter=t[1],t[3]=s,n[t[1]]=t[1]==="id"?t[3]:s;r in i&&(o=i[r],typeof o=="string"&&(t[3]=s.replace(u._reRegExpTokens,"\\$1"),o=new RegExp(o.replace("{val}",t[3]))),t[2]=o);if(!n.last||n.prefilter!==t[1])return t.slice(1)}},{name:r,re:/^((?:-?[_a-z]+[\w-]*)|\*)/i,fn:function(e,t){var n=e[1];u._isXML||(n=n.toUpperCase()),t.tagName=n;if(n!=="*"&&(!t.last||t.prefilter))return[r,"=",n];t.prefilter||(t.prefilter="tagName")}},{name:s,re:/^\s*([>+~]|\s)\s*/,fn:function(e,t){}},{name:o,re:/^:([\-\w]+)(?:\uE005['"]?([^\uE005]*)['"]?\uE006)*/i,fn:function(e,t){var n=u[o][e[1]];return n?(e[2]&&(e[2]=e[2].replace(/\\/g,"")),[e[2],n]):!1}}],_getToken:function( -e){return{tagName:null,id:null,className:null,attributes:{},combinator:null,tests:[]}},_tokenize:function(t){t=t||"",t=u._parseSelector(e.Lang.trim(t));var n=u._getToken(),r=t,i=[],o=!1,a,f,l,c;e:do{o=!1;for(l=0;c=u._parsers[l++];)if(a=c.re.exec(t)){c.name!==s&&(n.selector=t),t=t.replace(a[0],""),t.length||(n.last=!0),u._attrFilters[a[1]]&&(a[1]=u._attrFilters[a[1]]),f=c.fn(a,n);if(f===!1){o=!1;break e}f&&n.tests.push(f);if(!t.length||c.name===s)i.push(n),n=u._getToken(n),c.name===s&&(n.combinator=e.Selector.combinators[a[1]]);o=!0}}while(o&&t.length);if(!o||t.length)i=[];return i},_replaceMarkers:function(e){return e=e.replace(/\[/g,"\ue003"),e=e.replace(/\]/g,"\ue004"),e=e.replace(/\(/g,"\ue005"),e=e.replace(/\)/g,"\ue006"),e},_replaceShorthand:function(t){var n=e.Selector.shorthand,r;for(r in n)n.hasOwnProperty(r)&&(t=t.replace(new RegExp(r,"gi"),n[r]));return t},_parseSelector:function(t){var n=e.Selector._replaceSelector(t),t=n.selector;return t=e.Selector._replaceShorthand(t),t=e.Selector._restore("attr",t,n.attrs),t=e.Selector._restore("pseudo",t,n.pseudos),t=e.Selector._replaceMarkers(t),t=e.Selector._restore("esc",t,n.esc),t},_attrFilters:{"class":"className","for":"htmlFor"},getters:{href:function(t,n){return e.DOM.getAttribute(t,n)},id:function(t,n){return e.DOM.getId(t)}}};e.mix(e.Selector,a,!0),e.Selector.getters.src=e.Selector.getters.rel=e.Selector.getters.href,e.Selector.useNative&&e.config.doc.querySelector&&(e.Selector.shorthand["\\.(-?[_a-z]+[-\\w]*)"]="[class~=$1]")},"3.9.1",{requires:["selector-native"]}),YUI.add("selector-css3",function(e,t){e.Selector._reNth=/^(?:([\-]?\d*)(n){1}|(odd|even)$)*([\-+]?\d*)$/,e.Selector._getNth=function(t,n,r,i){e.Selector._reNth.test(n);var s=parseInt(RegExp.$1,10),o=RegExp.$2,u=RegExp.$3,a=parseInt(RegExp.$4,10)||0,f=[],l=e.DOM._children(t.parentNode,r),c;u?(s=2,c="+",o="n",a=u==="odd"?1:0):isNaN(s)&&(s=o?1:0);if(s===0)return i&&(a=l.length-a+1),l[a-1]===t?!0:!1;s<0&&(i=!!i,s=Math.abs(s));if(!i){for(var h=a-1,p=l.length;h=0&&l[h]===t)return!0}else for(var h=l.length-a,p=l.length;h>=0;h-=s)if(h-1},checked:function(e){return e.checked===!0||e.selected===!0},enabled:function(e){return e.disabled!==undefined&&!e.disabled},disabled:function(e){return e.disabled}}),e.mix(e.Selector.operators,{"^=":"^{val}","$=":"{val}$","*=":"{val}"}),e.Selector.combinators["~"]={axis:"previousSibling"}},"3.9.1",{requires:["selector-native","selector-css2"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:1,warn:1,error:1};n.log=function(e,t,o,u){var a,f,l,c,h,p=n,d=p.config,v=p.fire?p:YUI.Env.globalEvents;return d.debug&&(o=o||"",typeof o!="undefined"&&(f=d.logExclude,l=d.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1),a||(d.useBrowserConsole&&(c=o?o+": "+e:e,p.Lang.isFunction(d.logFn)?d.logFn.call(p,e,t,o):typeof console!==i&&console.log?(h=t&&console[t]&&t in s?t:"log",console[h](c)):typeof opera!==i&&opera.postError(c)),v&&!u&&(v===p&&!v.getEvent(r)&&v.publish(r,{broadcast:2}),v.fire(r,{msg:e,cat:t,src:o})))),p},n.message=function(){return n.log.apply(n,arguments)}},"3.9.1",{requires:["yui-base"]}),YUI.add("dump",function(e,t){var n=e.Lang,r="{...}",i="f(){...}",s=", ",o=" => ",u=function(e,t){var u,a,f=[],l=n.type(e);if(!n.isObject(e))return e+"";if(l=="date")return e;if(e.nodeType&&e.tagName)return e.tagName+"#"+e.id;if(e.document&&e.navigator)return"window";if(e.location&&e.body)return"document";if(l=="function")return i;t=n.isNumber(t)?t:3;if(l=="array"){f.push("[");for(u=0,a=e.length;u0?n.dump(e[u],t-1):r):f.push(e[u]),f.push(s);f.length>1&&f.pop(),f.push("]")}else if(l=="regexp")f.push(e.toString());else{f.push("{");for(u in e)if(e.hasOwnProperty(u))try{f.push(u+o),n.isObject(e[u])?f.push(t>0?n.dump(e[u],t-1):r):f.push(e[u]),f.push(s)}catch(c){f.push("Error: "+c.message)}f.length>1&&f.pop(),f.push("}")}return f.join("")};e.dump=u,n.dump=u},"3.9.1",{requires:["yui-base"]}),YUI.add("transition-timer",function(e,t){var n=e.Transition;e.mix(n.prototype,{_start:function(){n.useNative?this._runNative():this._runTimer()},_runTimer:function(){var t=this;t._initAttrs(),n._running[e.stamp(t)]=t,t._startTime=new Date,n._startTimer()},_endTimer:function(){var t=this;delete n._running[e.stamp(t)],t._startTime=null},_runFrame:function(){var e=new Date-this._startTime;this._runAttrs(e)},_runAttrs:function(t){var r=this,i=r._node,s=r._config,o=e.stamp(i),u=n._nodeAttrs[o],a=n.behaviors,f=!1,l=!1,c,h,p,d,v,m,g,y,b;for(h in u)if((p=u[h])&&p.transition===r){g=p.duration,m=p.delay,v=(t-m)/1e3,y=t,c={type:"propertyEnd",propertyName:h,config:s,elapsedTime:v},d=b in a&&"set"in a[b]?a[b].set:n.DEFAULT_SETTER,f=y>=g,y>g&&(y=g);if(!m||t>=m)d(r,h,p.from,p.to,y-m,g-m,p.easing,p.unit),f&&(delete u[h],r._count--,s[h]&&s[h].on&&s[h].on.end&&s[h].on.end.call(e.one(i),c),!l&&r._count<=0&&(l=!0,r._end(v),r._endTimer()))}},_initAttrs:function(){var t= -this,r=n.behaviors,i=e.stamp(t._node),s=n._nodeAttrs[i],o,u,a,f,l,c,h,p,d,v,m;for(c in s)(o=s[c])&&o.transition===t&&(u=o.duration*1e3,a=o.delay*1e3,f=o.easing,l=o.value,c in t._node.style||c in e.DOM.CUSTOM_STYLES?(v=c in r&&"get"in r[c]?r[c].get(t,c):n.DEFAULT_GETTER(t,c),p=n.RE_UNITS.exec(v),h=n.RE_UNITS.exec(l),v=p?p[1]:v,m=h?h[1]:l,d=h?h[2]:p?p[2]:"",!d&&n.RE_DEFAULT_UNIT.test(c)&&(d=n.DEFAULT_UNIT),typeof f=="string"&&(f.indexOf("cubic-bezier")>-1?f=f.substring(13,f.length-1).split(","):n.easings[f]&&(f=n.easings[f])),o.from=Number(v),o.to=Number(m),o.unit=d,o.easing=f,o.duration=u+a,o.delay=a):(delete s[c],t._count--))},destroy:function(){this.detachAll(),this._node=null}},!0),e.mix(e.Transition,{_runtimeAttrs:{},RE_DEFAULT_UNIT:/^width|height|top|right|bottom|left|margin.*|padding.*|border.*$/i,DEFAULT_UNIT:"px",intervalTime:20,behaviors:{left:{get:function(t,n){return e.DOM._getAttrOffset(t._node,n)}}},DEFAULT_SETTER:function(t,r,i,s,o,u,a,f){i=Number(i),s=Number(s);var l=t._node,c=n.cubicBezier(a,o/u);c=i+c[0]*(s-i);if(l){if(r in l.style||r in e.DOM.CUSTOM_STYLES)f=f||"",e.DOM.setStyle(l,r,c+f)}else t._end()},DEFAULT_GETTER:function(t,n){var r=t._node,i="";if(n in r.style||n in e.DOM.CUSTOM_STYLES)i=e.DOM.getComputedStyle(r,n);return i},_startTimer:function(){n._timer||(n._timer=setInterval(n._runFrame,n.intervalTime))},_stopTimer:function(){clearInterval(n._timer),n._timer=null},_runFrame:function(){var e=!0,t;for(t in n._running)n._running[t]._runFrame&&(e=!1,n._running[t]._runFrame());e&&n._stopTimer()},cubicBezier:function(e,t){var n=0,r=0,i=e[0],s=e[1],o=e[2],u=e[3],a=1,f=0,l=a-3*o+3*i-n,c=3*o-6*i+3*n,h=3*i-3*n,p=n,d=f-3*u+3*s-r,v=3*u-6*s+3*r,m=3*s-3*r,g=r,y=((l*t+c)*t+h)*t+p,b=((d*t+v)*t+m)*t+g;return[y,b]},easings:{ease:[.25,0,1,.25],linear:[0,0,1,1],"ease-in":[.42,0,1,1],"ease-out":[0,0,.58,1],"ease-in-out":[.42,0,.58,1]},_running:{},_timer:null,RE_UNITS:/^(-?\d*\.?\d*){1}(em|ex|px|in|cm|mm|pt|pc|%)*$/},!0),n.behaviors.top=n.behaviors.bottom=n.behaviors.right=n.behaviors.left,e.Transition=n},"3.9.1",{requires:["transition"]}),YUI.add("yui",function(e,t){},"3.9.1",{use:["yui","oop","dom","event-custom-base","event-base","pluginhost","node","event-delegate","io-base","json-parse","transition","selector-css3","dom-style-ie","querystring-stringify-simple"]});var Y=YUI().use("*"); diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/slider-core.css b/lib/yuilib/3.9.1/build/slider-base/assets/slider-core.css deleted file mode 100644 index 0bd472112f7..00000000000 --- a/lib/yuilib/3.9.1/build/slider-base/assets/slider-core.css +++ /dev/null @@ -1,32 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-slider, -.yui3-slider-rail { - /* xbrowser inline-block styles */ - display: -moz-inline-stack; /* FF2 */ - display: inline-block; - *display: inline; /* IE 7- (with zoom) */ - zoom: 1; - vertical-align: middle; -} - -.yui3-slider-content { - position: relative; - display: block; -} -.yui3-slider-rail { - position: relative; -} - -.yui3-slider-rail-cap-top, -.yui3-slider-rail-cap-left, -.yui3-slider-rail-cap-bottom, -.yui3-slider-rail-cap-right, -.yui3-slider-thumb, -.yui3-slider-thumb-image, -.yui3-slider-thumb-shadow { - position: absolute; -} - -.yui3-slider-thumb { - overflow: hidden; -} diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong.png b/lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong.png deleted file mode 100644 index 670ba1ea15cff5688b25dee454435466d5f7629c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 961 zcmeAS@N?(olHy`uVBq!ia0vp^5KB_c=6)hyLT^N zzRb_hzi{EgxpU`!`}Xb5oja#ao!Yf)*S>xGu3fvfcJ12Jr%!L#u;Kpw`>R*4-nMPq zx^?RoFJ64}=FLl&E-hca{QUXz$BrF4eE9J7>({qz+4A)1(|U_4D)N<>h5#W9#nj ze)Q-O2M5QKCr_?ixssZiT2WE4d-v|QZ{MCgdGh)5=d)(bvaqm7OiY|VfBvUWpB_Jc z{NlxnqN1W5J9eyEwd&2AHy18k`1kMM-@ktY0|Q%ITU%OMSXfwo{rY8NW3zel<{v+P zoH=u5{rdIn?CjH~P1DfOc=ztz?Af#T?Afz@`}VVE&wlvuVej6(A3uIPaNvNcsVOiD zfFL9>BNa%Mlmz(&|EE7-_*QZ>8yL^oo-U3d6}R48at}V_Aada2T>*~_M<;Htsan2W zL9QWPmqHwl+^ZJf|G#IqqRf;7J>l);fBqNU_^$RK`%Hu8A5NdG1`HFHJ`GxbB<%V% zmJ_xN9ainT!ji(+g#7Pm^R(M?+}dmA&aS;eU*lQY^Yk1`7F`bM_YI4!r+(s=D4Bk_ ze*v@O>JybsDT{8TF3vY%E4{DWB$6{hs^2wy9g|z~RKvjQ`}8M0IoSByan@dCh&b29GnFvSUp~GAA=0ujxdG8}I|H+(Su58|F4|N&AS@!dsvzj-~ zv|PC2vQO==c;AQe4LSMI>;1p82k)A|>5#YfYrRiZ`;mmGxBX|9aW-z$H*#Y+o>b7E z;L3AN-O-ch6UUdNg0=+;Y^|Q>Wp_V#;rXd~@*lfLZ`JJ{ZD(L+uyU-sc677U8c_6m My85}Sb4q9e0AJ}QUH||9 diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong2.png b/lib/yuilib/3.9.1/build/slider-base/assets/thumb-x-oblong2.png deleted file mode 100644 index 76e34e60ae94c245164762070f44d23d79da343e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 706 zcmeAS@N?(olHy`uVBq!ia0vp^GC=Ig!3-qxg34wBDVB6cUq=Rp^(V|(yIunMk|nMY zCBgY=CFO}lsSJ)O`AMk?p1FzXsX?iUDV2pMQ*D5X4g~mwxZb&Q=j5qVn>KI0aN)w9 zJ$r84xN+z1;z@|-zy?%lh0?%cTt4<0;x z`0(PTOXts@H#0M1VPX04({UU{rh+4u3h`~?YsZr!G{kYzJLFI z?)>?qM~@ypa^&vayN{nddG+$;*>mT1?b&nn>eXe-m!Ca*7U%;Y=>B=V7Dzdi1o;L3 zrwlM0s@~|rz`$tZ>EaktaqG?Hn`KP~0&EEf6tubnTs0JSKiU_vrMuz%|FE-4msl@# z-~04j@BYlmXIN%PtNL{RKl;{b>eQ#VKV*uwo+&B5D>E&qbJ8jeE~SqJFY~HiPd>M7 znNNU~R(EEc>I~L53`^J!t=(1A`SBgg`h;tpYaQ`=9ohAoC-KE|exBcg3ddqNJ}qZ=bGRe?S+{5X-Uodv{A7eb z2lsfLd$q(qWc#I#nKEvj_RFo_?PXrGu~Kc@X@h$y-;&o)y!XC*V-TP8thI&@c3kuj z*p#ms?^?%xhyT>A_uGz&y}s}vXZwmtJGP}y;h6I%T*g7*O!urajQ{NCE;8$5yr?bp z$Z^Z;3vDmV7IGVA9(uCg>($IFw}XB!@$0a=eJuQ^NCJb6;+lv~wZjKNapURg=d#Wz Gp$PzOWSBhw diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong-dark.png b/lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong-dark.png deleted file mode 100644 index a0eed7087f4b74e66d16ca2adc1ab444e777d186..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 519 zcmeAS@N?(olHy`uVBq!ia0vp^Za^%_!3-pKYpj?8q*&4&eH|GX)}JtE?Rp84EOCt} z3C>R|DNig)WpGT%PfAtr%uP&B4N6T+sVqF1Y6Dc15a1KydhFOSXJ_Z==;$q5wp3J9 zELyaPpPzrmj2S&WJ(-!AQ>IK&Qc{{QVM1YHp^uNx(xpq=+S(Em6GKBo-QC^i&!2B= zYa19CXklStWMoudU%z6-iZyH2%$YN%v$GRu0}y03wHg2^g_0n@;Q#mmLrjeHTLuP3 zMo$;VkcwMNu3qG8R^VX`IHIYgb;?Cjs-4n(v>N8+<})%I)mE0V*Mr z+BW9oT`^Tp_;k;qGbh35|52G@b{^AX%h;yu+VQ{RF`uYG)do#Z$CX|0j>WDKGP<(l zNZzT(%N|LVr&)Qgsn9TF7oi4+g=1Y^Udjfr{sCQcHNoMxmdC;U|G#kqt#7IE49VXon@c=+CnwK&fn^KLPp&~q59-S iua`WS`MLRy#OyDkcY0?^ad&t;ucLK6V^kmc+E diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong.png b/lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong.png deleted file mode 100644 index e63c8d7d867761291e8a50a2a802296fc7b70ccb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1023 zcmchV`A^yh0L8xpuhdejX`L+DV!NzSnkALg%~-9XQiV*W$gFnG$-;NKE~J~I)it(D z1l%mHRilPV6%PbFLFH0J7`9sQ0u=;L5D}e9Q8#Cd(y@PHFM02i_w#$@X}DzAnfJ~B z006_JB;h?odmQ2i^&~4%h4jEHAC-y%0Kw}|y`OA(I-G*eqGa6rmQqA41OXK3-Zx+< zhD^){@gR}(^N$)Z1_0j4N&Ad|wpc7HD=UqSjZ;%o8yg!2gJED`fJ&t~b`t*AJ^78WR>})_lKy!0*Lqo&i;o;KKl2)r792^`T9yS_{ z-QC^enM^G{ArLPA0y5D1w}#^G=<7|h4V zhrwX1t*!a_`K_<7&&|z&AXr>nESJl7cXu@!jlPUm*JPft(N)6?m6I*ms2^71-9K8}fr>F@79Iy#z|m=FjAzP`S7 zb#-B3VNR!$#bON&4N0Za$;nBV%cW2#_V)HvDph1;q-O$;2*d)=0}2I?%Xs_$3pk{_ z`rfm1J0=N5C|-Cmmz<%F2fQt*ewQdI1$d5sDW6Y3ZH1u;@jHql>)UBrR4C>g!zs55 zS4j_6ZeBaTQ6OkYk>ylLZGXf;XzcA+NSQ&~R^?w}uL_MH@eWkHMA|uKO0}luEbB^t zRs>XMY85@+dO^B{2@Sm48mIO72!HpbJ2`z@nn=oxpb{j^!TioIEbYM?cDqzDyThBRXBT;CI9igVVIZ9Wx~Fn z`JkdQU-smK%uGjY)&U%YEPEsuJ1zye;6)l{*Hb*UWF05M{}e5_Av~gnvh|i~K}mVd zcJ^-^rw#eMED>>CFqExFs;sb^uWa$q!?^VW^8x#B bcW@rC@Xur8;FtB=|D6Ye#wGP6qF&73*2qN1Xtw6wRk zH!m-*si|r8>eVi;t~Ir_b#-;w+1XN3Ql_S+?HwJ54jt0b(OI*0?W9SQQq$5ry}a7m z+6oH`=gpfpXU-fSU*GlX*K=}m=H%o=L`DV#28M=(+1uOqPnZy&kg#&)%FfQt?(Xi! z#>Pd97UdTdG&D5m8yHyI*i4-|)!D^m!GZ-sLPGNL@=KR3tE{Z_4+tnODXAzgZ)|Sv z>FIIv@W{=}tE#C94h?m1aw;z`2l@aA@?!p71yT+rL4LviDFY0LsyDhYFfiJ9x;TbZ z+?sRsW>J%YNW(*o?nJ@B1tE)fgrpQ}-?*jw^ zkE9o>XP4!4iugERY%*PY`QGo`i8lEf&l^7N;a?!ML*`|gS-{QWrQOE@j=n8mxhb*E zCgf|CM`fed+}w|5uECl-p*&%3UyM!`tjIfX%0nkzQ+=oP$%3ao`jdUsHZg~}v|l={ z;*`}eb!&{>#zlE4$0M3W)gN{6hneNeeEi6_!oxqaw?ojcp{rad%f)9SXUL;~pnVgL zTV8AA+NkThcEVe(_*mxaBFp;IwLQNszHa$WULqv1YSPUeI(7y-4xKRcE9+c2d0X|9 m@9%59>+^*qg6G(?N-*rYuv)rRCGb8dZaiK6T-G@yGywnr!bwj6 diff --git a/lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong2.png b/lib/yuilib/3.9.1/build/slider-base/assets/thumb-y-oblong2.png deleted file mode 100644 index 89a46672709883a4afd613324090fd8e7fdacf71..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 746 zcmeAS@N?(olHy`uVBq!ia0vp^u0Slq!3-oBE;XqDNtSd+Uq=Rp^(V|(yIunMk|nMY zCBgY=CFO}lsSJ)O`AMk?p1FzXsX?iUDV2pMQ*D5X4g~mwxSl+9>du`z8#iq_di3ax z8#ngs*>mgm?Uk!mUAb~)*REZU9zXu|`}dnSZ{ELu|Ki1qPoF*=I&|p3fdkK;JzKkW z?U^%Y?%%(E?b@}=moM+!x%1|&Td!Wdx_9s1xpU|I{rw+2cra(qoQDq|Uc7WEA|gUr zS^50=^A|2$xOfpLaOua7A7*A|Po6w^{rWWv3(NQK-|s(o@b~ZEox65@`0!!hzJ2G; zpTBgCJLTen`ldUe;HJ&&I}S+;!n*|TSXJ^%twh5U&?%Aq94FZe%Y zfZF!bFSVjYBCUEd*I=*HRn-~hQ@+`@3kwhO>6mHzj{$f@{E@& z&(^bw*A&kU{W_m9o@ki>5oApgcqW8Xwj&ffccy&tnm$Nww`ChK;Hjw-Gaf$p! zrPS0=b1~;CKk0fi839GcWOKKGW5;$l6s4_J5SVEo7r0VdZtt-$jxSb>yZaZ+V0)UW z*&wv>zUbo<6Z2McX&5dzqtmx1G}ytD;pvShCm2GWH6;1IJgu6Tf5Bg|mC-AB@t3c2 z(w$;5Q+F*ns$zTA)>C`$;nZn0lX4GF3_GMA<+I3FHZ*GGo6nJYlW%NOUt6*Dv*7o; zlNVR{Upn=>Ls>NQ>6XVQ9HVY--yOb0`Tt%W!CgwSI&05-n)k<1Mz!`&z7LCQd55jm zgiKB_c=6)hyLT^N zzRb_hzi{EgxpU`!`}Xb5oja#ao!Yf)*S>xGu3fvfcJ12Jr%!L#u;Kpw`>R*4-nMPq zx^?RoFJ64}=FLl&E-hca{QUXz$BrF4eE9J7>({qz+4A)1(|U_4D)N<>h5#W9#nj ze)Q-O2M5QKCr_?ixssZiT2WE4d-v|QZ{MCgdGh)5=d)(bvaqm7OiY|VfBvUWpB_Jc z{NlxnqN1W5J9eyEwd&2AHy18k`1kMM-@ktY0|Q%ITU%OMSXfwo{rY8NW3zel<{v+P zoH=u5{rdIn?CjH~P1DfOc=ztz?Af#T?Afz@`}VVE&wlvuVej6(A3uIPaNvNcsVOiD zfFL9>BNa%Mlmz(&|EE7-_*QZ>8yL^oo-U3d6}R48at}V_Aada2T>*~_M<;Htsan2W zL9QWPmqHwl+^ZJf|G#IqqRf;7J>l);fBqNU_^$RK`%Hu8A5NdG1`HFHJ`GxbB<%V% zmJ_xN9ainT!ji(+g#7Pm^R(M?+}dmA&aS;eU*lQY^Yk1`7F`bM_YI4!r+(s=D4Bk_ ze*v@O>JybsDT{8TF3vY%E4{DWB$6{hs^2wy9g|z~RKvjQ`}8M0IoSByan@dCh&b29GnFvSUp~GAA=0ujxdG8}I|H+(Su58|F4|N&AS@!dsvzj-~ zv|PC2vQO==c;AQe4LSMI>;1p82k)A|>5#YfYrRiZ`;mmGxBX|9aW-z$H*#Y+o>b7E z;L3AN-O-ch6UUdNg0=+;Y^|Q>Wp_V#;rXd~@*lfLZ`JJ{ZD(L+uyU-sc677U8c_6m My85}Sb4q9e0AJ}QUH||9 diff --git a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong2-dark.png b/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong2-dark.png deleted file mode 100644 index 20f126029f17c8f7b37458b0da6e14cfbd3207f4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4045 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 diff --git a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong2.png b/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-x-oblong2.png deleted file mode 100644 index 76e34e60ae94c245164762070f44d23d79da343e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 706 zcmeAS@N?(olHy`uVBq!ia0vp^GC=Ig!3-qxg34wBDVB6cUq=Rp^(V|(yIunMk|nMY zCBgY=CFO}lsSJ)O`AMk?p1FzXsX?iUDV2pMQ*D5X4g~mwxZb&Q=j5qVn>KI0aN)w9 zJ$r84xN+z1;z@|-zy?%lh0?%cTt4<0;x z`0(PTOXts@H#0M1VPX04({UU{rh+4u3h`~?YsZr!G{kYzJLFI z?)>?qM~@ypa^&vayN{nddG+$;*>mT1?b&nn>eXe-m!Ca*7U%;Y=>B=V7Dzdi1o;L3 zrwlM0s@~|rz`$tZ>EaktaqG?Hn`KP~0&EEf6tubnTs0JSKiU_vrMuz%|FE-4msl@# z-~04j@BYlmXIN%PtNL{RKl;{b>eQ#VKV*uwo+&B5D>E&qbJ8jeE~SqJFY~HiPd>M7 znNNU~R(EEc>I~L53`^J!t=(1A`SBgg`h;tpYaQ`=9ohAoC-KE|exBcg3ddqNJ}qZ=bGRe?S+{5X-Uodv{A7eb z2lsfLd$q(qWc#I#nKEvj_RFo_?PXrGu~Kc@X@h$y-;&o)y!XC*V-TP8thI&@c3kuj z*p#ms?^?%xhyT>A_uGz&y}s}vXZwmtJGP}y;h6I%T*g7*O!urajQ{NCE;8$5yr?bp z$Z^Z;3vDmV7IGVA9(uCg>($IFw}XB!@$0a=eJuQ^NCJb6;+lv~wZjKNapURg=d#Wz Gp$PzOWSBhw diff --git a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong-dark.png b/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong-dark.png deleted file mode 100644 index a0eed7087f4b74e66d16ca2adc1ab444e777d186..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 519 zcmeAS@N?(olHy`uVBq!ia0vp^Za^%_!3-pKYpj?8q*&4&eH|GX)}JtE?Rp84EOCt} z3C>R|DNig)WpGT%PfAtr%uP&B4N6T+sVqF1Y6Dc15a1KydhFOSXJ_Z==;$q5wp3J9 zELyaPpPzrmj2S&WJ(-!AQ>IK&Qc{{QVM1YHp^uNx(xpq=+S(Em6GKBo-QC^i&!2B= zYa19CXklStWMoudU%z6-iZyH2%$YN%v$GRu0}y03wHg2^g_0n@;Q#mmLrjeHTLuP3 zMo$;VkcwMNu3qG8R^VX`IHIYgb;?Cjs-4n(v>N8+<})%I)mE0V*Mr z+BW9oT`^Tp_;k;qGbh35|52G@b{^AX%h;yu+VQ{RF`uYG)do#Z$CX|0j>WDKGP<(l zNZzT(%N|LVr&)Qgsn9TF7oi4+g=1Y^Udjfr{sCQcHNoMxmdC;U|G#kqt#7IE49VXon@c=+CnwK&fn^KLPp&~q59-S iua`WS`MLRy#OyDkcY0?^ad&t;ucLK6V^kmc+E diff --git a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong.png b/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong.png deleted file mode 100644 index e63c8d7d867761291e8a50a2a802296fc7b70ccb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1023 zcmchV`A^yh0L8xpuhdejX`L+DV!NzSnkALg%~-9XQiV*W$gFnG$-;NKE~J~I)it(D z1l%mHRilPV6%PbFLFH0J7`9sQ0u=;L5D}e9Q8#Cd(y@PHFM02i_w#$@X}DzAnfJ~B z006_JB;h?odmQ2i^&~4%h4jEHAC-y%0Kw}|y`OA(I-G*eqGa6rmQqA41OXK3-Zx+< zhD^){@gR}(^N$)Z1_0j4N&Ad|wpc7HD=UqSjZ;%o8yg!2gJED`fJ&t~b`t*AJ^78WR>})_lKy!0*Lqo&i;o;KKl2)r792^`T9yS_{ z-QC^enM^G{ArLPA0y5D1w}#^G=<7|h4V zhrwX1t*!a_`K_<7&&|z&AXr>nESJl7cXu@!jlPUm*JPft(N)6?m6I*ms2^71-9K8}fr>F@79Iy#z|m=FjAzP`S7 zb#-B3VNR!$#bON&4N0Za$;nBV%cW2#_V)HvDph1;q-O$;2*d)=0}2I?%Xs_$3pk{_ z`rfm1J0=N5C|-Cmmz<%F2fQt*ewQdI1$d5sDW6Y3ZH1u;@jHql>)UBrR4C>g!zs55 zS4j_6ZeBaTQ6OkYk>ylLZGXf;XzcA+NSQ&~R^?w}uL_MH@eWkHMA|uKO0}luEbB^t zRs>XMY85@+dO^B{2@Sm48mIO72!HpbJ2`z@nn=oxpb{j^!TioIEbYM?cDqzDyThBRXBT;CI9igVVIZ9Wx~Fn z`JkdQU-smK%uGjY)&U%YEPEsuJ1zye;6)l{*Hb*UWF05M{}e5_Av~gnvh|i~K}mVd zcJ^-^rw#eMED>>CFqExFs;sb^uWa$q!?^VW^8x#B bcW@rC@Xur8;FtB=|D6Ye#wGP6qF&73*2qN1Xtw6wRk zH!m-*si|r8>eVi;t~Ir_b#-;w+1XN3Ql_S+?HwJ54jt0b(OI*0?W9SQQq$5ry}a7m z+6oH`=gpfpXU-fSU*GlX*K=}m=H%o=L`DV#28M=(+1uOqPnZy&kg#&)%FfQt?(Xi! z#>Pd97UdTdG&D5m8yHyI*i4-|)!D^m!GZ-sLPGNL@=KR3tE{Z_4+tnODXAzgZ)|Sv z>FIIv@W{=}tE#C94h?m1aw;z`2l@aA@?!p71yT+rL4LviDFY0LsyDhYFfiJ9x;TbZ z+?sRsW>J%YNW(*o?nJ@B1tE)fgrpQ}-?*jw^ zkE9o>XP4!4iugERY%*PY`QGo`i8lEf&l^7N;a?!ML*`|gS-{QWrQOE@j=n8mxhb*E zCgf|CM`fed+}w|5uECl-p*&%3UyM!`tjIfX%0nkzQ+=oP$%3ao`jdUsHZg~}v|l={ z;*`}eb!&{>#zlE4$0M3W)gN{6hneNeeEi6_!oxqaw?ojcp{rad%f)9SXUL;~pnVgL zTV8AA+NkThcEVe(_*mxaBFp;IwLQNszHa$WULqv1YSPUeI(7y-4xKRcE9+c2d0X|9 m@9%59>+^*qg6G(?N-*rYuv)rRCGb8dZaiK6T-G@yGywnr!bwj6 diff --git a/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong2.png b/lib/yuilib/3.9.1/build/slider-value-range/assets/thumb-y-oblong2.png deleted file mode 100644 index 89a46672709883a4afd613324090fd8e7fdacf71..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 746 zcmeAS@N?(olHy`uVBq!ia0vp^u0Slq!3-oBE;XqDNtSd+Uq=Rp^(V|(yIunMk|nMY zCBgY=CFO}lsSJ)O`AMk?p1FzXsX?iUDV2pMQ*D5X4g~mwxSl+9>du`z8#iq_di3ax z8#ngs*>mgm?Uk!mUAb~)*REZU9zXu|`}dnSZ{ELu|Ki1qPoF*=I&|p3fdkK;JzKkW z?U^%Y?%%(E?b@}=moM+!x%1|&Td!Wdx_9s1xpU|I{rw+2cra(qoQDq|Uc7WEA|gUr zS^50=^A|2$xOfpLaOua7A7*A|Po6w^{rWWv3(NQK-|s(o@b~ZEox65@`0!!hzJ2G; zpTBgCJLTen`ldUe;HJ&&I}S+;!n*|TSXJ^%twh5U&?%Aq94FZe%Y zfZF!bFSVjYBCUEd*I=*HRn-~hQ@+`@3kwhO>6mHzj{$f@{E@& z&(^bw*A&kU{W_m9o@ki>5oApgcqW8Xwj&ffccy&tnm$Nww`ChK;Hjw-Gaf$p! zrPS0=b1~;CKk0fi839GcWOKKGW5;$l6s4_J5SVEo7r0VdZtt-$jxSb>yZaZ+V0)UW z*&wv>zUbo<6Z2McX&5dzqtmx1G}ytD;pvShCm2GWH6;1IJgu6Tf5Bg|mC-AB@t3c2 z(w$;5Q+F*ns$zTA)>C`$;nZn0lX4GF3_GMA<+I3FHZ*GGo6nJYlW%NOUt6*Dv*7o; zlNVR{Upn=>Ls>NQ>6XVQ9HVY--yOb0`Tt%W!CgwSI&05-n)k<1Mz!`&z7LCQd55jm zgi ul",tab:"> ul > li",tabLabel:"> ul > li > a",tabviewPanel:"> div",tabPanel:"> div > div",selectedTab:"> ul > "+a+f.selectedTab,selectedPanel:"> div "+a+f.selectedPanel},c=function(){this.init.apply(this,arguments)};c.NAME="tabviewBase",c._queries=l,c._classNames=f,e.mix(c.prototype,{init:function(t){t=t||u,this._node=t.host||e.one(t.node),this.refresh()},initClassNames:function(t){e.Object.each(l,function(e,n){if(f[n]){var r=this.all(e);t!==undefined&&(r=r.item(t)),r&&r.addClass(f[n])}},this._node),this._node.addClass(f.tabview)},_select:function(e){var t=this._node,n=t.one(l.selectedTab),r=t.one(l.selectedPanel),i=t.all(l.tab).item(e),s=t.all(l.tabPanel).item(e);n&&n.removeClass(f.selectedTab),r&&r.removeClass(f.selectedPanel),i&&i.addClass(f.selectedTab),s&&s.addClass(f.selectedPanel)},initState:function(){var e=this._node,t=e.one(l.selectedTab),n=t?e.all(l.tab).indexOf(t):0;this._select(n)},_scrubTextNodes:function(){this._node.one(l.tabviewList).get("childNodes").each(function(e){e.get("nodeType")===3&&e.remove()})},refresh:function(){this._scrubTextNodes(),this.initClassNames(),this.initState(),this.initEvents()},tabEventName:"click",initEvents:function(){this._node.delegate(this.tabEventName,this.onTabEvent,l.tab,this)},onTabEvent:function(e){e.preventDefault(),this._select(this._node.all(l.tab).indexOf(e.currentTarget))},destroy:function(){this._node.detach(this.tabEventName)}}),e.TabviewBase=c},"3.9.1",{requires:["node-event-delegate","classnamemanager","skin-sam-tabview"]}); diff --git a/lib/yuilib/3.9.1/build/tabview-plugin/assets/tabview-core.css b/lib/yuilib/3.9.1/build/tabview-plugin/assets/tabview-core.css deleted file mode 100644 index 66c74c57155..00000000000 --- a/lib/yuilib/3.9.1/build/tabview-plugin/assets/tabview-core.css +++ /dev/null @@ -1,43 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-tab-panel { - display:none; -} - -.yui3-tab-panel-selected { - display:block; -} - -.yui3-tabview-list, -.yui3-tab { - margin:0; - padding:0; - list-style:none; -} - -.yui3-tabview { - position:relative; /* contain absolute positioned tabs (left/right) */ -} - -.yui3-tabview, -.yui3-tabview-list, -.yui3-tabview-panel, -.yui3-tab, -.yui3-tab-panel { /* IE: kill space between horizontal tabs */ - zoom:1; -} - -.yui3-tab { - display:inline-block; - *display:inline; /* IE */ - vertical-align:bottom; /* safari: for overlap */ - cursor:pointer; -} - -.yui3-tab-label { - display:block; - display:inline-block; - padding: 6px 10px; - position:relative; /* IE: to allow overlap */ - text-decoration: none; - vertical-align:bottom; /* safari: for overlap */ -} diff --git a/lib/yuilib/3.9.1/build/tabview-plugin/assets/tabview.css b/lib/yuilib/3.9.1/build/tabview-plugin/assets/tabview.css deleted file mode 100644 index 0b7f25f95e4..00000000000 --- a/lib/yuilib/3.9.1/build/tabview-plugin/assets/tabview.css +++ /dev/null @@ -1,23 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-tab-panel { - display: none; -} - -.yui3-tab-selected { - background: yellow; -} - -.yui3-tab-selected { - background: yellow; -} - -.yui3-tab-panel-selected { - background: yellow; - display: block; -} - -.yui3-tab { - display: inline-block; - margin-right: 0.5em; - zoom: 1; -}; diff --git a/lib/yuilib/3.9.1/build/tabview-plugin/tabview-plugin-min.js b/lib/yuilib/3.9.1/build/tabview-plugin/tabview-plugin-min.js deleted file mode 100644 index cd00ae4470c..00000000000 --- a/lib/yuilib/3.9.1/build/tabview-plugin/tabview-plugin-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("tabview-plugin",function(e,t){function n(){n.superclass.constructor.apply(this,arguments)}n.NAME="tabviewPlugin",n.NS="tabs",e.extend(n,e.TabviewBase),e.namespace("Plugin"),e.Plugin.Tabview=n},"3.9.1",{requires:["tabview-base"]}); diff --git a/lib/yuilib/3.9.1/build/tabview/assets/tabview-core.css b/lib/yuilib/3.9.1/build/tabview/assets/tabview-core.css deleted file mode 100644 index 66c74c57155..00000000000 --- a/lib/yuilib/3.9.1/build/tabview/assets/tabview-core.css +++ /dev/null @@ -1,43 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-tab-panel { - display:none; -} - -.yui3-tab-panel-selected { - display:block; -} - -.yui3-tabview-list, -.yui3-tab { - margin:0; - padding:0; - list-style:none; -} - -.yui3-tabview { - position:relative; /* contain absolute positioned tabs (left/right) */ -} - -.yui3-tabview, -.yui3-tabview-list, -.yui3-tabview-panel, -.yui3-tab, -.yui3-tab-panel { /* IE: kill space between horizontal tabs */ - zoom:1; -} - -.yui3-tab { - display:inline-block; - *display:inline; /* IE */ - vertical-align:bottom; /* safari: for overlap */ - cursor:pointer; -} - -.yui3-tab-label { - display:block; - display:inline-block; - padding: 6px 10px; - position:relative; /* IE: to allow overlap */ - text-decoration: none; - vertical-align:bottom; /* safari: for overlap */ -} diff --git a/lib/yuilib/3.9.1/build/tabview/assets/tabview.css b/lib/yuilib/3.9.1/build/tabview/assets/tabview.css deleted file mode 100644 index f15f45f0731..00000000000 --- a/lib/yuilib/3.9.1/build/tabview/assets/tabview.css +++ /dev/null @@ -1,23 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-tab-panel { - display: none; -} - -.yui3-tab-selected { - background: yellow; -} - -.yui3-tab-selected { - background: yellow; -} - -.yui3-tab-panel-selected { - background: yellow; - display: block; -} - -.yui3-tab { - display: inline-block; - margin-right: 0.5em; - zoom: 1; -} diff --git a/lib/yuilib/3.9.1/build/tabview/tabview-min.js b/lib/yuilib/3.9.1/build/tabview/tabview-min.js deleted file mode 100644 index f8aaa72a6a6..00000000000 --- a/lib/yuilib/3.9.1/build/tabview/tabview-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("tabview",function(e,t){var n=e.TabviewBase._queries,r=e.TabviewBase._classNames,i=".",s=e.Base.create("tabView",e.Widget,[e.WidgetParent],{_afterChildAdded:function(){this.get("contentBox").focusManager.refresh()},_defListNodeValueFn:function(){return e.Node.create(s.LIST_TEMPLATE)},_defPanelNodeValueFn:function(){return e.Node.create(s.PANEL_TEMPLATE)},_afterChildRemoved:function(e){var t=e.index,n=this.get("selection");n||(n=this.item(t-1)||this.item(0),n&&n.set("selected",1)),this.get("contentBox").focusManager.refresh()},_initAria:function(){var e=this.get("contentBox"),t=e.one(n.tabviewList);t&&t.setAttrs({role:"tablist"})},bindUI:function(){this.get("contentBox").plug(e.Plugin.NodeFocusManager,{descendants:i+r.tabLabel,keys:{next:"down:39",previous:"down:37"},circular:!0}),this.after("render",this._setDefSelection),this.after("addChild",this._afterChildAdded),this.after("removeChild",this._afterChildRemoved)},renderUI:function(){var e=this.get("contentBox");this._renderListBox(e),this._renderPanelBox(e),this._childrenContainer=this.get("listNode"),this._renderTabs(e)},_setDefSelection:function(){var e=this.get("selection")||this.item(0);this.some(function(t){if(t.get("selected"))return e=t,!0}),e&&(this.set("selection",e),e.set("selected",1))},_renderListBox:function(e){var t=this.get("listNode");t.inDoc()||e.append(t)},_renderPanelBox:function(e){var t=this.get("panelNode");t.inDoc()||e.append(t)},_renderTabs:function(e){var t=e.all(n.tab),s=this.get("panelNode"),o=s?this.get("panelNode").get("children"):null,u=this;t&&(t.addClass(r.tab),e.all(n.tabLabel).addClass(r.tabLabel),e.all(n.tabPanel).addClass(r.tabPanel),t.each(function(e,t){var n=o?o.item(t):null;u.add({boundingBox:e,contentBox:e.one(i+r.tabLabel),panelNode:n})}))}},{LIST_TEMPLATE:'
                ',PANEL_TEMPLATE:'
                ',ATTRS:{defaultChildType:{value:"Tab"},listNode:{setter:function(t){return t=e.one(t),t&&t.addClass(r.tabviewList),t},valueFn:"_defListNodeValueFn"},panelNode:{setter:function(t){return t=e.one(t),t&&t.addClass(r.tabviewPanel),t},valueFn:"_defPanelNodeValueFn"},tabIndex:{value:null}},HTML_PARSER:{listNode:n.tabviewList,panelNode:n.tabviewPanel}});e.TabView=s;var o=e.Lang,r=e.TabviewBase._classNames;e.Tab=e.Base.create("tab",e.Widget,[e.WidgetChild],{BOUNDING_TEMPLATE:'
              • ',CONTENT_TEMPLATE:'',PANEL_TEMPLATE:'
                ',_uiSetSelectedPanel:function(e){this.get("panelNode").toggleClass(r.selectedPanel,e)},_afterTabSelectedChange:function(e){this._uiSetSelectedPanel(e.newVal)},_afterParentChange:function(e){e.newVal?this._add():this._remove()},_initAria:function(){var t=this.get("contentBox"),n=t.get("id"),r=this.get("panelNode");n||(n=e.guid(),t.set("id",n)),t.set("role","tab"),t.get("parentNode").set("role","presentation"),r.setAttrs({role:"tabpanel","aria-labelledby":n})},syncUI:function(){this.set("label",this.get("label")),this.set("content",this.get("content")),this._uiSetSelectedPanel(this.get("selected"))},bindUI:function(){this.after("selectedChange",this._afterTabSelectedChange),this.after("parentChange",this._afterParentChange)},renderUI:function(){this._renderPanel(),this._initAria()},_renderPanel:function(){this.get("parent").get("panelNode").appendChild(this.get("panelNode"))},_add:function(){var e=this.get("parent").get("contentBox"),t=e.get("listNode"),n=e.get("panelNode");t&&t.appendChild(this.get("boundingBox")),n&&n.appendChild(this.get("panelNode"))},_remove:function(){this.get("boundingBox").remove(),this.get("panelNode").remove()},_onActivate:function(e){e.target===this&&(e.domEvent.preventDefault(),e.target.set("selected",1))},initializer:function(){this.publish(this.get("triggerEvent"),{defaultFn:this._onActivate})},_defLabelGetter:function(){return this.get("contentBox").getHTML()},_defLabelSetter:function(e){var t=this.get("contentBox");return t.getHTML()!==e&&t.setHTML(e),e},_defContentSetter:function(e){var t=this.get("panelNode");return t.getHTML()!==e&&t.setHTML(e),e},_defContentGetter:function(){return this.get("panelNode").getHTML()},_defPanelNodeValueFn:function(){var t=this.get("contentBox").get("href")||"",n=this.get("parent"),i=t.indexOf("#"),s;return t=t.substr(i),t.charAt(0)==="#"&&(s=e.one(t),s&&s.addClass(r.tabPanel)),!s&&n&&(s=n.get("panelNode").get("children").item(this.get("index"))),s||(s=e.Node.create(this.PANEL_TEMPLATE)),s}},{ATTRS:{triggerEvent:{value:"click"},label:{setter:"_defLabelSetter",getter:"_defLabelGetter"},content:{setter:"_defContentSetter",getter:"_defContentGetter"},panelNode:{setter:function(t){return t=e.one(t),t&&t.addClass(r.tabPanel),t},valueFn:"_defPanelNodeValueFn"},tabIndex:{value:null,validator:"_validTabIndex"}},HTML_PARSER:{selected:function(){var e=this.get("boundingBox").hasClass(r.selectedTab)?1:0;return e}}})},"3.9.1",{requires:["widget","widget-parent","widget-child","tabview-base","node-pluginhost","node-focusmanager"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/template-base/template-base-min.js b/lib/yuilib/3.9.1/build/template-base/template-base-min.js deleted file mode 100644 index cc80c89cce0..00000000000 --- a/lib/yuilib/3.9.1/build/template-base/template-base-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("template-base",function(e,t){function n(t,n){this.defaults=n,this.engine=t||e.Template.Micro,this.engine||e.error("No template engine loaded.")}n.prototype={compile:function(t,n){return n=n?e.merge(this.defaults,n):this.defaults,this.engine.compile(t,n)},precompile:function(t,n){return n=n?e.merge(this.defaults,n):this.defaults,this.engine.precompile(t,n)},render:function(t,n,r){return r=r?e.merge(this.defaults,r):this.defaults,this.engine.render?this.engine.render(t,n,r):this.engine.compile(t,r)(n,r)},revive:function(t,n){return n=n?e.merge(this.defaults,n):this.defaults,this.engine.revive?this.engine.revive(t,n):t}},e.Template=e.Template?e.mix(n,e.Template):n},"3.9.1",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/tree-node/tree-node-min.js b/lib/yuilib/3.9.1/build/tree-node/tree-node-min.js deleted file mode 100644 index 025531a06db..00000000000 --- a/lib/yuilib/3.9.1/build/tree-node/tree-node-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("tree-node",function(e,t){function n(t,n){n||(n={}),this.id=this._yuid=n.id||this.id||e.guid("treeNode-"),this.tree=t,this.children=n.children||[],this.data=n.data||{},this.state=n.state||{},n.canHaveChildren?this.canHaveChildren=n.canHaveChildren:this.children.length&&(this.canHaveChildren=!0),e.mix(this,n);for(var r=0,i=this.children.length;r-1&&(t.children.splice(n,1),t._isIndexStale=!0,e.parent=null))},_defAddFn:function(e){var t=e.node,n=e.parent;t.parent&&this._removeNodeFromParent(t),t.parent=n,n.children.splice(e.index,0,t),n.canHaveChildren=!0,n._isIndexStale=!0},_defClearFn:function(e){var t=e.rootNode;this.rootNode&&this.destroyNode(this.rootNode,{silent:!0}),this._nodeMap={},this._nodeMap[t.id]=t,this.rootNode=t,this.children=t.children},_defRemoveFn:function(e){var t=e.node;e.destroy?this.destroyNode(t,{silent:!0}):e.parent?this._removeNodeFromParent(t):this.rootNode===t&&(this.rootNode=this.createNode(this._rootNodeConfig),this.children=this.rootNode.children)}});e.Tree=e.mix(o,e.Tree)},"3.9.1",{requires:["base-build","tree-node"]}); diff --git a/lib/yuilib/3.9.1/build/uploader-deprecated/assets/uploader.swf b/lib/yuilib/3.9.1/build/uploader-deprecated/assets/uploader.swf deleted file mode 100644 index 43a620674afcc3d4d4423b3ad402d2ad579c0131..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6681 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 diff --git a/lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated-debug.js b/lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated-debug.js deleted file mode 100644 index 017f1b8a7f6..00000000000 --- a/lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated-debug.js +++ /dev/null @@ -1,597 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add('uploader-deprecated', function(Y) { - -/** - * Attention: this is the 3.4.1 `uploader` module has been deprecated in favor of a new - * uploader with an HTML5 layer. Please refer to the new Uploader User Guide for migration - * information. - * - * This module uses Flash player transport to upload files to the server, with support for - * file filtering, multiple file uploads and progress monitoring. - * @module uploader-deprecated - * @deprecated - */ - -var Event = Y.Event, - Node = Y.Node; - -var SWFURL = Y.Env.cdn + "uploader-deprecated/assets/uploader.swf"; - -/* - *

                Attention: this is the 3.4.1 uploader module, which has - * been deprecated in favor of a new uploader with an HTML5 layer. Please refer to the new - * Uploader User Guide for migration information.

                - *

                The Uploader widget is a tool for uploading files to the server.

                - * @module uploader-deprecated - * @title Uploader - * @requires base, node, event, swf - */ - -/* - *

                Attention: this is the 3.4.1 uploader module, which has - * been deprecated in favor of a new uploader with an HTML5 layer. Please refer to the new - * Uploader User Guide for migration information.

                - *

                Creates the Uploader instance and keeps the initialization data.

                - * - * @class Uploader - * @extends Y.Base - * @constructor - * @param {Object} config (optional) Configuration parameters for the Uploader. The following parameters are available: - *
                - *
                boundingBox : String|Node (required)
                - *
                - *
                buttonSkin : String (optional)
                - *
                - *
                transparent : String (optional)
                - *
                - *
                swfURL : String (optional)
                - *
                - *
                - * @deprecated - */ - -function Uploader (config /*Object*/) { - - Uploader.superclass.constructor.apply(this, arguments); - - if (config.hasOwnProperty("boundingBox")) { - this.set("boundingBox", config.boundingBox); - }; - - if (config.hasOwnProperty("buttonSkin")) { - this.set("buttonSkin", config.buttonSkin); - }; - if (config.hasOwnProperty("transparent")) { - this.set("transparent", config.transparent); - }; - if (config.hasOwnProperty("swfURL")) { - this.set("swfURL", config.swfURL); - }; -}; - - -Y.extend(Uploader, Y.Base, { - - /* - * The reference to the instance of Y.SWF that encapsulates the instance of the Flash player with uploader logic. - * - * @private - * @property uploaderswf - * @type {SWF} - * @default null - * @deprecated - */ - uploaderswf:null, - - /* - * The id of this instance of uploader. - * - * @private - * @property _id - * @type {String} - * @deprecated - */ - _id:"", - - /* - * Construction logic executed during Uploader instantiation. - * - * @method initializer - * @protected - * @deprecated - */ - initializer : function () { - - this._id = Y.guid("uploader"); - var oElement = Node.one(this.get("boundingBox")); - - var params = {version: "10.0.45", - fixedAttributes: {allowScriptAccess:"always", allowNetworking:"all", scale: "noscale"}, - flashVars: {}}; - - if (this.get("buttonSkin") != "") { - params.flashVars["buttonSkin"] = this.get("buttonSkin"); - } - if (this.get("transparent")) { - params.fixedAttributes["wmode"] = "transparent"; - } - - this.uploaderswf = new Y.SWF(oElement, this.get("swfURL"), params); - - var upswf = this.uploaderswf; - var relEvent = Y.bind(this._relayEvent, this); - - /* - * Announces that the uploader is ready and available for calling methods - * and setting properties - * - * @event uploaderReady - * @param event {Event} The event object for the uploaderReady. - * @deprecated - */ - upswf.on ("swfReady", Y.bind(this._initializeUploader, this)); - - /* - * Fired when the mouse button is clicked on the Uploader's 'Browse' button. - * - * @event click - * @param event {Event} The event object for the click. - * @deprecated - */ - upswf.on ("click", relEvent); - - /* - * Fires when the user has finished selecting a set of files to be uploaded. - * - * @event fileselect - * @param event {Event} The event object for the fileSelect. - *
                - *
                fileList
                - *
                The file list Object with entries in the following format: - fileList[fileID] = {id: fileID, name: fileName, cDate: fileCDate, mDate: fileMDate, size: fileSize}
                - *
                - * @deprecated - */ - upswf.on ("fileselect", relEvent); - - /* - * Fired when the mouse button is pressed on the Uploader's 'Browse' button. - * - * @event mousedown - * @param event {Event} The event object for the mousedown. - * @deprecated - */ - upswf.on ("mousedown", relEvent); - - /* - * Fired when the mouse button is raised on the Uploader's 'Browse' button. - * - * @event mouseup - * @param event {Event} The event object for the mouseup. - * @deprecated - */ - upswf.on ("mouseup", relEvent); - - /* - * Fired when the mouse leaves the Uploader's 'Browse' button. - * - * @event mouseleave - * @param event {Event} The event object for the mouseleave. - * @deprecated - */ - upswf.on ("mouseleave", relEvent); - - /* - * Fired when the mouse enters the Uploader's 'Browse' button. - * - * @event mouseenter - * @param event {Event} The event object for the mouseenter. - * @deprecated - */ - upswf.on ("mouseenter", relEvent); - - /* - * Announces that the uploader is ready and available for calling methods - * and setting properties - * - * @event uploadcancel - * @param event {Event} The event object for the uploaderReady. - *
                - *
                ddEvent
                - *
                drag:start event from the thumb
                - *
                - * @deprecated - */ - upswf.on ("uploadcancel", relEvent); - - /* - * Fires when a specific file's upload is cancelled. - * - * @event uploadcomplete - * @param event {Event} The event object for the uploadcancel. - *
                - *
                id
                - *
                The id of the file whose upload has been cancelled.
                - *
                - * @deprecated - */ - upswf.on ("uploadcomplete", relEvent); - - /* - * If the server has sent a response to the file upload, this event is - * fired and the response is added to its payload. - * - * @event uploadcompletedata - * @param event {Event} The event object for the uploadcompletedata. - *
                - *
                id
                - *
                The id of the file for which the response is being provided.
                - *
                data
                - *
                The content of the server response.
                - *
                - * @deprecated - */ - upswf.on ("uploadcompletedata", relEvent); - - /* - * Provides error information if an error has occurred during the upload. - * - * @event uploaderror - * @param event {Event} The event object for the uploadeerror. - *
                - *
                id
                - *
                The id of the file for which the upload error has occurred.
                - *
                status
                - *
                Relevant error information.
                - *
                - * @deprecated - */ - upswf.on ("uploaderror", relEvent); - - /* - * Provides progress information on a specific file upload. - * - * @event uploadprogress - * @param event {Event} The event object for the uploadprogress. - *
                - *
                id
                - *
                The id of the file for which the progress information is being provided.
                - *
                bytesLoaded
                - *
                The number of bytes of the file that has been uploaded.
                - *
                bytesTotal
                - *
                The total number of bytes in the file that is being uploaded.
                - *
                - * @deprecated - */ - upswf.on ("uploadprogress", relEvent); - - /* - * Announces that the upload has been started for a specific file. - * - * @event uploadstart - * @param event {Event} The event object for the uploadstart. - *
                - *
                id
                - *
                The id of the file whose upload has been started.
                - *
                - * @deprecated - */ - upswf.on ("uploadstart", relEvent); - }, - - /* - * Removes a specific file from the upload queue. - * - * @method removeFile - * @param fileID {String} The ID of the file to be removed - * @return {Object} The updated file list, which is an object of the format: - * fileList[fileID] = {id: fileID, name: fileName, cDate: fileCDate, mDate: fileMDate, size: fileSize} - * @deprecated - */ - removeFile : function (fileID /*String*/) { - return this.uploaderswf.callSWF("removeFile", [fileID]); - }, - - /* - * Clears the upload queue. - * - * @method clearFileList - * @return {Boolean} This method always returns true. - * @deprecated - */ - clearFileList : function () { - return this.uploaderswf.callSWF("clearFileList", []); - }, - - /* - * Starts the upload of a specific file. - * - * @method upload - * @param fileID {String} The ID of the file to be uploaded. - * @param url {String} The URL to upload the file to. - * @param method {String} (optional) The HTTP method to use for sending additional variables, either 'GET' or 'POST' ('GET' by default) - * @param postVars {Object} (optional) A set of key-value pairs to send as variables along with the file upload HTTP request. - * @param postFileVarName {String} (optional) The name of the POST variable that should contain the uploaded file ('Filedata' by default) - * @return {Boolean} This method always returns true. - * @deprecated - */ - upload : function (fileID /*String*/, url /*String*/, method /*String*/, postVars /*Object*/, postFileVarName /*String*/) { - if (Y.Lang.isArray(fileID)) { - return this.uploaderswf.callSWF("uploadThese", [fileID, url, method, postVars, postFileVarName]); - } - else if (Y.Lang.isString(fileID)) { - return this.uploaderswf.callSWF("upload", [fileID, url, method, postVars, postFileVarName]); - - } - }, - - /* - * Starts the upload of a set of files, as specified in the first argument. - * The upload queue is managed automatically. - * - * @method uploadThese - * @param fileIDs {Array} The array of IDs of the files to be uploaded. - * @param url {String} The URL to upload the files to. - * @param method {String} (optional) The HTTP method to use for sending additional variables, either 'GET' or 'POST' ('GET' by default) - * @param postVars {Object} (optional) A set of key-value pairs to send as variables along with the file upload HTTP request. - * @param postFileVarName {String} (optional) The name of the POST variable that should contain the uploaded file ('Filedata' by default) - * @deprecated - */ - uploadThese : function (fileIDs /*Array*/, url /*String*/, method /*String*/, postVars /*Object*/, postFileVarName /*String*/) { - return this.uploaderswf.callSWF("uploadThese", [fileIDs, url, method, postVars, postFileVarName]); - }, - - /* - * Starts the upload of the files in the upload queue. - * The upload queue is managed automatically. - * - * @method uploadAll - * @param url {String} The URL to upload the files to. - * @param method {String} (optional) The HTTP method to use for sending additional variables, either 'GET' or 'POST' ('GET' by default) - * @param postVars {Object} (optional) A set of key-value pairs to send as variables along with the file upload HTTP request. - * @param postFileVarName {String} (optional) The name of the POST variable that should contain the uploaded file ('Filedata' by default). - * @deprecated - */ - uploadAll : function (url /*String*/, method /*String*/, postVars /*Object*/, postFileVarName /*String*/) { - return this.uploaderswf.callSWF("uploadAll", [url, method, postVars,postFileVarName]); - }, - - /* - * Cancels the upload of a specific file, if currently in progress. - * - * @method cancel - * @param fileID {String} (optional) The ID of the file whose upload should be cancelled. If no ID is specified, all uploads are cancelled. - * @deprecated - */ - cancel : function (fileID /*String*/) { - return this.uploaderswf.callSWF("cancel", [fileID]); - }, - - /* - * @private - * Setter for the 'log' property. - * @method setAllowLogging - * @param value {Boolean} The value for the 'log' property. - * @deprecated - */ - setAllowLogging : function (value /*Boolean*/) { - this.uploaderswf.callSWF("setAllowLogging", [value]); - }, - - /* - * @private - * Setter for the 'multiFiles' property. - * @method setAllowMultipleFiles - * @param value {Boolean} The value for the 'multiFiles' property. - * @deprecated - */ - setAllowMultipleFiles : function (value /*Boolean*/) { - this.uploaderswf.callSWF("setAllowMultipleFiles", [value]); - }, - - /* - * @private - * Setter for the 'simLimit' property. - * @method setSimUploadLimit - * @param value {Boolean} The value for the 'simLimit' property. - * @deprecated - */ - setSimUploadLimit : function (value /*int*/) { - this.uploaderswf.callSWF("setSimUploadLimit", [value]); - }, - - /* - * @private - * Setter for the 'fileFilters' property. - * @method setFileFilters - * @param value {Boolean} The value for the 'fileFilters' property. - * @deprecated - */ - setFileFilters : function (fileFilters /*Array*/) { - this.uploaderswf.callSWF("setFileFilters", [fileFilters]); - }, - - /* - * Enables the uploader user input (mouse clicks on the 'Browse' button). If the button skin - * is applied, the sprite is reset from the "disabled" state. - * - * @method enable - * @deprecated - */ - enable : function () { - this.uploaderswf.callSWF("enable"); - }, - - /* - * Disables the uploader user input (mouse clicks on the 'Browse' button). If the button skin - * is applied, the sprite is set to the 'disabled' state. - * - * @method enable - * @deprecated - */ - disable : function () { - this.uploaderswf.callSWF("disable"); - }, - - /* - * @private - * Called when the uploader SWF is initialized - * @method _initializeUploader - * @param event {Object} The event to be propagated from Flash. - * @deprecated - */ - _initializeUploader: function (event) { - this.publish("uploaderReady", {fireOnce:true}); - this.fire("uploaderReady", {}); - }, - - /* - * @private - * Called when an event is dispatched from Uploader - * @method _relayEvent - * @param event {Object} The event to be propagated from Flash. - * @deprecated - */ - _relayEvent: function (event) { - Y.log("Firing event..."); - Y.log(event.type); - this.fire(event.type, event); - }, - - toString: function() - { - return "Uploader " + this._id; - } - -}, -{ - ATTRS: { - /* - * The flag that allows Flash player to - * output debug messages to its trace stack - * (if the Flash debug player is used). - * - * @attribute log - * @type {Boolean} - * @default false - * @deprecated - */ - log: { - value: false, - setter : "setAllowLogging" - }, - - /* - * The flag that allows the user to select - * more than one files during the 'Browse' - * dialog (using 'Shift' or 'Ctrl' keys). - * - * @attribute multiFiles - * @type {Boolean} - * @default false - * @deprecated - */ - multiFiles : { - value: false, - setter : "setAllowMultipleFiles" - }, - - /* - * The number of files that can be uploaded - * simultaneously if the automatic queue management - * is used. This value can be in the range between 2 - * and 5. - * - * @attribute simLimit - * @type {Number} - * @default 2 - * @deprecated - */ - simLimit : { - value: 2, - setter : "setSimUploadLimit" - }, - - /* - * The array of filters on file extensions for - * the 'Browse' dialog. These filters only provide - * convenience for the user and do not strictly - * limit the selection to certain file extensions. - * Each item in the array must contain a 'description' - * property, and an 'extensions' property that must be - * in the form "*.ext;*.ext;*.ext;..." - * - * @attribute fileFilters - * @type {Array} - * @default [] - * @deprecated - */ - fileFilters : { - value: [], - setter : "setFileFilters" - }, - - /* - * The Node containing the uploader's 'Browse' button. - * - * @attribute boundingBox - * @type {Node} - * @default null - * @writeOnce - * @deprecated - */ - boundingBox : { - value: null, - writeOnce: 'initOnly' - }, - - /* - * The URL of the image sprite for skinning the uploader's 'Browse' button. - * - * @attribute buttonSkin - * @type {String} - * @default null - * @writeOnce - * @deprecated - */ - buttonSkin : { - value: null, - writeOnce: 'initOnly' - }, - - /* - * The flag indicating whether the uploader is rendered - * with a transparent background. - * - * @attribute transparent - * @type {Boolean} - * @default true - * @writeOnce - * @deprecated - */ - transparent : { - value: true, - writeOnce: 'initOnly' - }, - - /* - * The URL of the uploader's SWF. - * - * @attribute swfURL - * @type {String} - * @default "assets/uploader.swf" - * @writeOnce - * @deprecated - */ - swfURL : { - value : SWFURL, - writeOnce: 'initOnly' - } - - } -} -); -Y.Uploader = Uploader; - - -}, '3.9.1' ,{requires:['swf', 'base', 'node', 'event-custom']}); diff --git a/lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated-min.js b/lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated-min.js deleted file mode 100644 index e21cd7b26b9..00000000000 --- a/lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("uploader-deprecated",function(e){var b=e.Event,c=e.Node;var a=e.Env.cdn+"uploader-deprecated/assets/uploader.swf";function d(f){d.superclass.constructor.apply(this,arguments);if(f.hasOwnProperty("boundingBox")){this.set("boundingBox",f.boundingBox);}if(f.hasOwnProperty("buttonSkin")){this.set("buttonSkin",f.buttonSkin);}if(f.hasOwnProperty("transparent")){this.set("transparent",f.transparent);}if(f.hasOwnProperty("swfURL")){this.set("swfURL",f.swfURL);}}e.extend(d,e.Base,{uploaderswf:null,_id:"",initializer:function(){this._id=e.guid("uploader");var f=c.one(this.get("boundingBox"));var i={version:"10.0.45",fixedAttributes:{allowScriptAccess:"always",allowNetworking:"all",scale:"noscale"},flashVars:{}};if(this.get("buttonSkin")!=""){i.flashVars["buttonSkin"]=this.get("buttonSkin");}if(this.get("transparent")){i.fixedAttributes["wmode"]="transparent";}this.uploaderswf=new e.SWF(f,this.get("swfURL"),i);var h=this.uploaderswf;var g=e.bind(this._relayEvent,this);h.on("swfReady",e.bind(this._initializeUploader,this));h.on("click",g);h.on("fileselect",g);h.on("mousedown",g);h.on("mouseup",g);h.on("mouseleave",g);h.on("mouseenter",g);h.on("uploadcancel",g);h.on("uploadcomplete",g);h.on("uploadcompletedata",g);h.on("uploaderror",g);h.on("uploadprogress",g);h.on("uploadstart",g);},removeFile:function(f){return this.uploaderswf.callSWF("removeFile",[f]);},clearFileList:function(){return this.uploaderswf.callSWF("clearFileList",[]);},upload:function(f,h,j,g,i){if(e.Lang.isArray(f)){return this.uploaderswf.callSWF("uploadThese",[f,h,j,g,i]);}else{if(e.Lang.isString(f)){return this.uploaderswf.callSWF("upload",[f,h,j,g,i]);}}},uploadThese:function(h,g,j,f,i){return this.uploaderswf.callSWF("uploadThese",[h,g,j,f,i]);},uploadAll:function(g,i,f,h){return this.uploaderswf.callSWF("uploadAll",[g,i,f,h]);},cancel:function(f){return this.uploaderswf.callSWF("cancel",[f]);},setAllowLogging:function(f){this.uploaderswf.callSWF("setAllowLogging",[f]);},setAllowMultipleFiles:function(f){this.uploaderswf.callSWF("setAllowMultipleFiles",[f]);},setSimUploadLimit:function(f){this.uploaderswf.callSWF("setSimUploadLimit",[f]);},setFileFilters:function(f){this.uploaderswf.callSWF("setFileFilters",[f]);},enable:function(){this.uploaderswf.callSWF("enable");},disable:function(){this.uploaderswf.callSWF("disable");},_initializeUploader:function(f){this.publish("uploaderReady",{fireOnce:true});this.fire("uploaderReady",{});},_relayEvent:function(f){this.fire(f.type,f);},toString:function(){return"Uploader "+this._id;}},{ATTRS:{log:{value:false,setter:"setAllowLogging"},multiFiles:{value:false,setter:"setAllowMultipleFiles"},simLimit:{value:2,setter:"setSimUploadLimit"},fileFilters:{value:[],setter:"setFileFilters"},boundingBox:{value:null,writeOnce:"initOnly"},buttonSkin:{value:null,writeOnce:"initOnly"},transparent:{value:true,writeOnce:"initOnly"},swfURL:{value:a,writeOnce:"initOnly"}}});e.Uploader=d;},"3.9.1",{requires:["swf","base","node","event-custom"]}); \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated.js b/lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated.js deleted file mode 100644 index 9ad174bd20b..00000000000 --- a/lib/yuilib/3.9.1/build/uploader-deprecated/uploader-deprecated.js +++ /dev/null @@ -1,595 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add('uploader-deprecated', function(Y) { - -/** - * Attention: this is the 3.4.1 `uploader` module has been deprecated in favor of a new - * uploader with an HTML5 layer. Please refer to the new Uploader User Guide for migration - * information. - * - * This module uses Flash player transport to upload files to the server, with support for - * file filtering, multiple file uploads and progress monitoring. - * @module uploader-deprecated - * @deprecated - */ - -var Event = Y.Event, - Node = Y.Node; - -var SWFURL = Y.Env.cdn + "uploader-deprecated/assets/uploader.swf"; - -/* - *

                Attention: this is the 3.4.1 uploader module, which has - * been deprecated in favor of a new uploader with an HTML5 layer. Please refer to the new - * Uploader User Guide for migration information.

                - *

                The Uploader widget is a tool for uploading files to the server.

                - * @module uploader-deprecated - * @title Uploader - * @requires base, node, event, swf - */ - -/* - *

                Attention: this is the 3.4.1 uploader module, which has - * been deprecated in favor of a new uploader with an HTML5 layer. Please refer to the new - * Uploader User Guide for migration information.

                - *

                Creates the Uploader instance and keeps the initialization data.

                - * - * @class Uploader - * @extends Y.Base - * @constructor - * @param {Object} config (optional) Configuration parameters for the Uploader. The following parameters are available: - *
                - *
                boundingBox : String|Node (required)
                - *
                - *
                buttonSkin : String (optional)
                - *
                - *
                transparent : String (optional)
                - *
                - *
                swfURL : String (optional)
                - *
                - *
                - * @deprecated - */ - -function Uploader (config /*Object*/) { - - Uploader.superclass.constructor.apply(this, arguments); - - if (config.hasOwnProperty("boundingBox")) { - this.set("boundingBox", config.boundingBox); - }; - - if (config.hasOwnProperty("buttonSkin")) { - this.set("buttonSkin", config.buttonSkin); - }; - if (config.hasOwnProperty("transparent")) { - this.set("transparent", config.transparent); - }; - if (config.hasOwnProperty("swfURL")) { - this.set("swfURL", config.swfURL); - }; -}; - - -Y.extend(Uploader, Y.Base, { - - /* - * The reference to the instance of Y.SWF that encapsulates the instance of the Flash player with uploader logic. - * - * @private - * @property uploaderswf - * @type {SWF} - * @default null - * @deprecated - */ - uploaderswf:null, - - /* - * The id of this instance of uploader. - * - * @private - * @property _id - * @type {String} - * @deprecated - */ - _id:"", - - /* - * Construction logic executed during Uploader instantiation. - * - * @method initializer - * @protected - * @deprecated - */ - initializer : function () { - - this._id = Y.guid("uploader"); - var oElement = Node.one(this.get("boundingBox")); - - var params = {version: "10.0.45", - fixedAttributes: {allowScriptAccess:"always", allowNetworking:"all", scale: "noscale"}, - flashVars: {}}; - - if (this.get("buttonSkin") != "") { - params.flashVars["buttonSkin"] = this.get("buttonSkin"); - } - if (this.get("transparent")) { - params.fixedAttributes["wmode"] = "transparent"; - } - - this.uploaderswf = new Y.SWF(oElement, this.get("swfURL"), params); - - var upswf = this.uploaderswf; - var relEvent = Y.bind(this._relayEvent, this); - - /* - * Announces that the uploader is ready and available for calling methods - * and setting properties - * - * @event uploaderReady - * @param event {Event} The event object for the uploaderReady. - * @deprecated - */ - upswf.on ("swfReady", Y.bind(this._initializeUploader, this)); - - /* - * Fired when the mouse button is clicked on the Uploader's 'Browse' button. - * - * @event click - * @param event {Event} The event object for the click. - * @deprecated - */ - upswf.on ("click", relEvent); - - /* - * Fires when the user has finished selecting a set of files to be uploaded. - * - * @event fileselect - * @param event {Event} The event object for the fileSelect. - *
                - *
                fileList
                - *
                The file list Object with entries in the following format: - fileList[fileID] = {id: fileID, name: fileName, cDate: fileCDate, mDate: fileMDate, size: fileSize}
                - *
                - * @deprecated - */ - upswf.on ("fileselect", relEvent); - - /* - * Fired when the mouse button is pressed on the Uploader's 'Browse' button. - * - * @event mousedown - * @param event {Event} The event object for the mousedown. - * @deprecated - */ - upswf.on ("mousedown", relEvent); - - /* - * Fired when the mouse button is raised on the Uploader's 'Browse' button. - * - * @event mouseup - * @param event {Event} The event object for the mouseup. - * @deprecated - */ - upswf.on ("mouseup", relEvent); - - /* - * Fired when the mouse leaves the Uploader's 'Browse' button. - * - * @event mouseleave - * @param event {Event} The event object for the mouseleave. - * @deprecated - */ - upswf.on ("mouseleave", relEvent); - - /* - * Fired when the mouse enters the Uploader's 'Browse' button. - * - * @event mouseenter - * @param event {Event} The event object for the mouseenter. - * @deprecated - */ - upswf.on ("mouseenter", relEvent); - - /* - * Announces that the uploader is ready and available for calling methods - * and setting properties - * - * @event uploadcancel - * @param event {Event} The event object for the uploaderReady. - *
                - *
                ddEvent
                - *
                drag:start event from the thumb
                - *
                - * @deprecated - */ - upswf.on ("uploadcancel", relEvent); - - /* - * Fires when a specific file's upload is cancelled. - * - * @event uploadcomplete - * @param event {Event} The event object for the uploadcancel. - *
                - *
                id
                - *
                The id of the file whose upload has been cancelled.
                - *
                - * @deprecated - */ - upswf.on ("uploadcomplete", relEvent); - - /* - * If the server has sent a response to the file upload, this event is - * fired and the response is added to its payload. - * - * @event uploadcompletedata - * @param event {Event} The event object for the uploadcompletedata. - *
                - *
                id
                - *
                The id of the file for which the response is being provided.
                - *
                data
                - *
                The content of the server response.
                - *
                - * @deprecated - */ - upswf.on ("uploadcompletedata", relEvent); - - /* - * Provides error information if an error has occurred during the upload. - * - * @event uploaderror - * @param event {Event} The event object for the uploadeerror. - *
                - *
                id
                - *
                The id of the file for which the upload error has occurred.
                - *
                status
                - *
                Relevant error information.
                - *
                - * @deprecated - */ - upswf.on ("uploaderror", relEvent); - - /* - * Provides progress information on a specific file upload. - * - * @event uploadprogress - * @param event {Event} The event object for the uploadprogress. - *
                - *
                id
                - *
                The id of the file for which the progress information is being provided.
                - *
                bytesLoaded
                - *
                The number of bytes of the file that has been uploaded.
                - *
                bytesTotal
                - *
                The total number of bytes in the file that is being uploaded.
                - *
                - * @deprecated - */ - upswf.on ("uploadprogress", relEvent); - - /* - * Announces that the upload has been started for a specific file. - * - * @event uploadstart - * @param event {Event} The event object for the uploadstart. - *
                - *
                id
                - *
                The id of the file whose upload has been started.
                - *
                - * @deprecated - */ - upswf.on ("uploadstart", relEvent); - }, - - /* - * Removes a specific file from the upload queue. - * - * @method removeFile - * @param fileID {String} The ID of the file to be removed - * @return {Object} The updated file list, which is an object of the format: - * fileList[fileID] = {id: fileID, name: fileName, cDate: fileCDate, mDate: fileMDate, size: fileSize} - * @deprecated - */ - removeFile : function (fileID /*String*/) { - return this.uploaderswf.callSWF("removeFile", [fileID]); - }, - - /* - * Clears the upload queue. - * - * @method clearFileList - * @return {Boolean} This method always returns true. - * @deprecated - */ - clearFileList : function () { - return this.uploaderswf.callSWF("clearFileList", []); - }, - - /* - * Starts the upload of a specific file. - * - * @method upload - * @param fileID {String} The ID of the file to be uploaded. - * @param url {String} The URL to upload the file to. - * @param method {String} (optional) The HTTP method to use for sending additional variables, either 'GET' or 'POST' ('GET' by default) - * @param postVars {Object} (optional) A set of key-value pairs to send as variables along with the file upload HTTP request. - * @param postFileVarName {String} (optional) The name of the POST variable that should contain the uploaded file ('Filedata' by default) - * @return {Boolean} This method always returns true. - * @deprecated - */ - upload : function (fileID /*String*/, url /*String*/, method /*String*/, postVars /*Object*/, postFileVarName /*String*/) { - if (Y.Lang.isArray(fileID)) { - return this.uploaderswf.callSWF("uploadThese", [fileID, url, method, postVars, postFileVarName]); - } - else if (Y.Lang.isString(fileID)) { - return this.uploaderswf.callSWF("upload", [fileID, url, method, postVars, postFileVarName]); - - } - }, - - /* - * Starts the upload of a set of files, as specified in the first argument. - * The upload queue is managed automatically. - * - * @method uploadThese - * @param fileIDs {Array} The array of IDs of the files to be uploaded. - * @param url {String} The URL to upload the files to. - * @param method {String} (optional) The HTTP method to use for sending additional variables, either 'GET' or 'POST' ('GET' by default) - * @param postVars {Object} (optional) A set of key-value pairs to send as variables along with the file upload HTTP request. - * @param postFileVarName {String} (optional) The name of the POST variable that should contain the uploaded file ('Filedata' by default) - * @deprecated - */ - uploadThese : function (fileIDs /*Array*/, url /*String*/, method /*String*/, postVars /*Object*/, postFileVarName /*String*/) { - return this.uploaderswf.callSWF("uploadThese", [fileIDs, url, method, postVars, postFileVarName]); - }, - - /* - * Starts the upload of the files in the upload queue. - * The upload queue is managed automatically. - * - * @method uploadAll - * @param url {String} The URL to upload the files to. - * @param method {String} (optional) The HTTP method to use for sending additional variables, either 'GET' or 'POST' ('GET' by default) - * @param postVars {Object} (optional) A set of key-value pairs to send as variables along with the file upload HTTP request. - * @param postFileVarName {String} (optional) The name of the POST variable that should contain the uploaded file ('Filedata' by default). - * @deprecated - */ - uploadAll : function (url /*String*/, method /*String*/, postVars /*Object*/, postFileVarName /*String*/) { - return this.uploaderswf.callSWF("uploadAll", [url, method, postVars,postFileVarName]); - }, - - /* - * Cancels the upload of a specific file, if currently in progress. - * - * @method cancel - * @param fileID {String} (optional) The ID of the file whose upload should be cancelled. If no ID is specified, all uploads are cancelled. - * @deprecated - */ - cancel : function (fileID /*String*/) { - return this.uploaderswf.callSWF("cancel", [fileID]); - }, - - /* - * @private - * Setter for the 'log' property. - * @method setAllowLogging - * @param value {Boolean} The value for the 'log' property. - * @deprecated - */ - setAllowLogging : function (value /*Boolean*/) { - this.uploaderswf.callSWF("setAllowLogging", [value]); - }, - - /* - * @private - * Setter for the 'multiFiles' property. - * @method setAllowMultipleFiles - * @param value {Boolean} The value for the 'multiFiles' property. - * @deprecated - */ - setAllowMultipleFiles : function (value /*Boolean*/) { - this.uploaderswf.callSWF("setAllowMultipleFiles", [value]); - }, - - /* - * @private - * Setter for the 'simLimit' property. - * @method setSimUploadLimit - * @param value {Boolean} The value for the 'simLimit' property. - * @deprecated - */ - setSimUploadLimit : function (value /*int*/) { - this.uploaderswf.callSWF("setSimUploadLimit", [value]); - }, - - /* - * @private - * Setter for the 'fileFilters' property. - * @method setFileFilters - * @param value {Boolean} The value for the 'fileFilters' property. - * @deprecated - */ - setFileFilters : function (fileFilters /*Array*/) { - this.uploaderswf.callSWF("setFileFilters", [fileFilters]); - }, - - /* - * Enables the uploader user input (mouse clicks on the 'Browse' button). If the button skin - * is applied, the sprite is reset from the "disabled" state. - * - * @method enable - * @deprecated - */ - enable : function () { - this.uploaderswf.callSWF("enable"); - }, - - /* - * Disables the uploader user input (mouse clicks on the 'Browse' button). If the button skin - * is applied, the sprite is set to the 'disabled' state. - * - * @method enable - * @deprecated - */ - disable : function () { - this.uploaderswf.callSWF("disable"); - }, - - /* - * @private - * Called when the uploader SWF is initialized - * @method _initializeUploader - * @param event {Object} The event to be propagated from Flash. - * @deprecated - */ - _initializeUploader: function (event) { - this.publish("uploaderReady", {fireOnce:true}); - this.fire("uploaderReady", {}); - }, - - /* - * @private - * Called when an event is dispatched from Uploader - * @method _relayEvent - * @param event {Object} The event to be propagated from Flash. - * @deprecated - */ - _relayEvent: function (event) { - this.fire(event.type, event); - }, - - toString: function() - { - return "Uploader " + this._id; - } - -}, -{ - ATTRS: { - /* - * The flag that allows Flash player to - * output debug messages to its trace stack - * (if the Flash debug player is used). - * - * @attribute log - * @type {Boolean} - * @default false - * @deprecated - */ - log: { - value: false, - setter : "setAllowLogging" - }, - - /* - * The flag that allows the user to select - * more than one files during the 'Browse' - * dialog (using 'Shift' or 'Ctrl' keys). - * - * @attribute multiFiles - * @type {Boolean} - * @default false - * @deprecated - */ - multiFiles : { - value: false, - setter : "setAllowMultipleFiles" - }, - - /* - * The number of files that can be uploaded - * simultaneously if the automatic queue management - * is used. This value can be in the range between 2 - * and 5. - * - * @attribute simLimit - * @type {Number} - * @default 2 - * @deprecated - */ - simLimit : { - value: 2, - setter : "setSimUploadLimit" - }, - - /* - * The array of filters on file extensions for - * the 'Browse' dialog. These filters only provide - * convenience for the user and do not strictly - * limit the selection to certain file extensions. - * Each item in the array must contain a 'description' - * property, and an 'extensions' property that must be - * in the form "*.ext;*.ext;*.ext;..." - * - * @attribute fileFilters - * @type {Array} - * @default [] - * @deprecated - */ - fileFilters : { - value: [], - setter : "setFileFilters" - }, - - /* - * The Node containing the uploader's 'Browse' button. - * - * @attribute boundingBox - * @type {Node} - * @default null - * @writeOnce - * @deprecated - */ - boundingBox : { - value: null, - writeOnce: 'initOnly' - }, - - /* - * The URL of the image sprite for skinning the uploader's 'Browse' button. - * - * @attribute buttonSkin - * @type {String} - * @default null - * @writeOnce - * @deprecated - */ - buttonSkin : { - value: null, - writeOnce: 'initOnly' - }, - - /* - * The flag indicating whether the uploader is rendered - * with a transparent background. - * - * @attribute transparent - * @type {Boolean} - * @default true - * @writeOnce - * @deprecated - */ - transparent : { - value: true, - writeOnce: 'initOnly' - }, - - /* - * The URL of the uploader's SWF. - * - * @attribute swfURL - * @type {String} - * @default "assets/uploader.swf" - * @writeOnce - * @deprecated - */ - swfURL : { - value : SWFURL, - writeOnce: 'initOnly' - } - - } -} -); -Y.Uploader = Uploader; - - -}, '3.9.1' ,{requires:['swf', 'base', 'node', 'event-custom']}); diff --git a/lib/yuilib/3.9.1/build/uploader-flash/assets/uploader-flash-core.css b/lib/yuilib/3.9.1/build/uploader-flash/assets/uploader-flash-core.css deleted file mode 100644 index e87b265ee98..00000000000 --- a/lib/yuilib/3.9.1/build/uploader-flash/assets/uploader-flash-core.css +++ /dev/null @@ -1,5 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-uploader-selectfiles-button { - width: 100%; - height: 100%; -} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/uploader-html5/assets/uploader-flash-core.css b/lib/yuilib/3.9.1/build/uploader-html5/assets/uploader-flash-core.css deleted file mode 100644 index e87b265ee98..00000000000 --- a/lib/yuilib/3.9.1/build/uploader-html5/assets/uploader-flash-core.css +++ /dev/null @@ -1,5 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-uploader-selectfiles-button { - width: 100%; - height: 100%; -} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/uploader-queue/assets/uploader-flash-core.css b/lib/yuilib/3.9.1/build/uploader-queue/assets/uploader-flash-core.css deleted file mode 100644 index e87b265ee98..00000000000 --- a/lib/yuilib/3.9.1/build/uploader-queue/assets/uploader-flash-core.css +++ /dev/null @@ -1,5 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-uploader-selectfiles-button { - width: 100%; - height: 100%; -} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/uploader/assets/flashuploader.swf b/lib/yuilib/3.9.1/build/uploader/assets/flashuploader.swf deleted file mode 100644 index deca8a2e7e80d5411f3f529187b08735dc5513e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5150 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 M8z+$RKj3>v6}6N97ytkO diff --git a/lib/yuilib/3.9.1/build/uploader/assets/uploader-flash-core.css b/lib/yuilib/3.9.1/build/uploader/assets/uploader-flash-core.css deleted file mode 100644 index e87b265ee98..00000000000 --- a/lib/yuilib/3.9.1/build/uploader/assets/uploader-flash-core.css +++ /dev/null @@ -1,5 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-uploader-selectfiles-button { - width: 100%; - height: 100%; -} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/uploader/uploader-min.js b/lib/yuilib/3.9.1/build/uploader/uploader-min.js deleted file mode 100644 index 088619fbc97..00000000000 --- a/lib/yuilib/3.9.1/build/uploader/uploader-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("uploader",function(e,t){var n=e.config.win;n&&n.File&&n.FormData&&n.XMLHttpRequest?e.Uploader=e.UploaderHTML5:e.SWFDetect.isFlashVersionAtLeast(10,0,45)?e.Uploader=e.UploaderFlash:(e.namespace("Uploader"),e.Uploader.TYPE="none")},"3.9.1",{requires:["uploader-html5","uploader-flash"]}); diff --git a/lib/yuilib/3.9.1/build/widget-base/assets/skins/night/widget-base-skin.css b/lib/yuilib/3.9.1/build/widget-base/assets/skins/night/widget-base-skin.css deleted file mode 100644 index 032880fae8e..00000000000 --- a/lib/yuilib/3.9.1/build/widget-base/assets/skins/night/widget-base-skin.css +++ /dev/null @@ -1 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ diff --git a/lib/yuilib/3.9.1/build/widget-base/assets/skins/sam/widget-base-skin.css b/lib/yuilib/3.9.1/build/widget-base/assets/skins/sam/widget-base-skin.css deleted file mode 100644 index 032880fae8e..00000000000 --- a/lib/yuilib/3.9.1/build/widget-base/assets/skins/sam/widget-base-skin.css +++ /dev/null @@ -1 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ diff --git a/lib/yuilib/3.9.1/build/widget-base/assets/widget-base-core.css b/lib/yuilib/3.9.1/build/widget-base/assets/widget-base-core.css deleted file mode 100644 index c5c8da7725e..00000000000 --- a/lib/yuilib/3.9.1/build/widget-base/assets/widget-base-core.css +++ /dev/null @@ -1,21 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-widget-hidden { - display:none; -} - -.yui3-widget-content { - overflow:hidden; -} - -.yui3-widget-content-expanded { - -moz-box-sizing: border-box; - -webkit-box-sizing: border-box; - -ms-box-sizing: border-box; - box-sizing:border-box; - height:100%; -} - -/* Only used for IE6, to go from a bigger size to a smaller size when using cb.sizeTo(bb) */ -.yui3-widget-tmp-forcesize { - overflow:hidden !important; -} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/widget-base/widget-base-min.js b/lib/yuilib/3.9.1/build/widget-base/widget-base-min.js deleted file mode 100644 index 8741cc7354c..00000000000 --- a/lib/yuilib/3.9.1/build/widget-base/widget-base-min.js +++ /dev/null @@ -1,3 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("widget-base",function(e,t){function R(e){var t=this,n,r,i=t.constructor;t._strs={},t._cssPrefix=i.CSS_PREFIX||s(i.NAME.toLowerCase()),e=e||{},R.superclass.constructor.call(t,e),r=t.get(T),r&&(r!==P&&(n=r),t.render(n))}var n=e.Lang,r=e.Node,i=e.ClassNameManager,s=i.getClassName,o,u=e.cached(function(e){return e.substring(0,1).toUpperCase()+e.substring(1)}),a="content",f="visible",l="hidden",c="disabled",h="focused",p="width",d="height",v="boundingBox",m="contentBox",g="parentNode",y="ownerDocument",b="auto",w="srcNode",E="body",S="tabIndex",x="id",T="render",N="rendered",C="destroyed",k="strings",L="
                ",A="Change",O="loading",M="_uiSet",_="",D=function(){},P=!0,H=!1,B,j={},F=[f,c,d,p,h,S],I=e.UA.webkit,q={};R.NAME="widget",B=R.UI_SRC="ui",R.ATTRS=j,j[x]={valueFn:"_guid",writeOnce:P},j[N]={value:H,readOnly:P},j[v]={value:null,setter:"_setBB",writeOnce:P},j[m]={valueFn:"_defaultCB",setter:"_setCB",writeOnce:P},j[S]={value:null,validator:"_validTabIndex"},j[h]={value:H,readOnly:P},j[c]={value:H},j[f]={value:P},j[d]={value:_},j[p]={value:_},j[k]={value:{},setter:"_strSetter",getter:"_strGetter"},j[T]={value:H,writeOnce:P},R.CSS_PREFIX=s(R.NAME.toLowerCase()),R.getClassName=function(){return s.apply(i,[R.CSS_PREFIX].concat(e.Array(arguments),!0))},o=R.getClassName,R.getByNode=function(t){var n,i=o();return t=r.one(t),t&&(t=t.ancestor("."+i,!0),t&&(n=q[e.stamp(t,!0)])),n||null},e.extend(R,e.Base,{getClassName:function(){return s.apply(i,[this._cssPrefix].concat(e.Array(arguments),!0))},initializer:function(t){var n=this.get(v);n instanceof r&&this._mapInstance(e.stamp(n)),this._applyParser&&this._applyParser(t)},_mapInstance:function(e){q[e]=this},destructor:function(){var t=this.get(v),n;t instanceof r&&(n=e.stamp(t,!0),n in q&&delete q[n],this._destroyBox())},destroy:function(e){return this._destroyAllNodes=e,R.superclass.destroy.apply(this)},_destroyBox:function(){var e=this.get(v),t=this.get(m),n=this._destroyAllNodes,r;r=e&&e.compareTo(t),this.UI_EVENTS&&this._destroyUIEvents(),this._unbindUI(e),n?(e.empty(),e.remove(P)):(t&&t.remove(P),r||e.remove(P))},render:function(e){return!this.get(C)&&!this.get(N)&&(this.publish(T,{queuable:H,fireOnce:P,defaultTargetOnly:P,defaultFn:this._defRenderFn}),this.fire(T,{parentNode:e?r.one(e):null})),this},_defRenderFn:function(e){this._parentNode=e.parentNode,this.renderer(),this._set(N,P),this._removeLoadingClassNames()},renderer:function(){var e=this;e._renderUI(),e.renderUI(),e._bindUI(),e.bindUI(),e._syncUI(),e.syncUI()},bindUI:D,renderUI:D,syncUI:D,hide:function(){return this.set(f,H)},show:function(){return this.set(f,P)},focus:function(){return this._set(h,P)},blur:function(){return this._set(h,H)},enable:function(){return this.set(c,H)},disable:function(){return this.set(c,P)},_uiSizeCB:function(e){this.get(m).toggleClass(o(a,"expanded"),e)},_renderBox:function(e){var t=this,n=t.get(m),i=t.get(v),s=t.get(w),o=t.DEF_PARENT_NODE,u=s&&s.get(y)||i.get(y)||n.get(y);s&&!s.compareTo(n)&&!n.inDoc(u)&&s.replace(n),!i.compareTo(n.get(g))&&!i.compareTo(n)&&(n.inDoc(u)&&n.replace(i),i.appendChild(n)),e=e||o&&r.one(o),e?e.appendChild(i):i.inDoc(u)||r.one(E).insert(i,0)},_setBB:function(e){return this._setBox(this.get(x),e,this.BOUNDING_TEMPLATE,!0)},_setCB:function(e){return this.CONTENT_TEMPLATE===null?this.get(v):this._setBox(null,e,this.CONTENT_TEMPLATE,!1)},_defaultCB:function(e){return this.get(w)||null},_setBox:function(t,n,i,s){return n=r.one(n),n||(n=r.create(i),s?this._bbFromTemplate=!0:this._cbFromTemplate=!0),n.get(x)||n.set(x,t||e.guid()),n},_renderUI:function(){this._renderBoxClassNames(),this._renderBox(this._parentNode)},_renderBoxClassNames:function(){var e=this._getClasses(),t,n=this.get(v),r;n.addClass(o());for(r=e.length-3;r>=0;r--)t=e[r],n.addClass(t.CSS_PREFIX||s(t.NAME.toLowerCase()));this.get(m).addClass(this.getClassName(a))},_removeLoadingClassNames:function(){var e=this.get(v),t=this.get(m),n=this.getClassName(O),r=o(O);e.removeClass(r).removeClass(n),t.removeClass(r).removeClass(n)},_bindUI:function(){this._bindAttrUI(this._UI_ATTRS.BIND),this._bindDOM()},_unbindUI:function(e){this._unbindDOM(e)},_bindDOM:function(){var t=this.get(v).get(y),n=R._hDocFocus;n||(n=R._hDocFocus=t.on("focus",this._onDocFocus,this),n.listeners={count:0}),n.listeners[e.stamp(this,!0)]=!0,n.listeners.count++,I&&(this._hDocMouseDown=t.on("mousedown",this._onDocMouseDown,this))},_unbindDOM:function(t){var n=R._hDocFocus,r=e.stamp(this,!0),i,s=this._hDocMouseDown;n&&(i=n.listeners,i[r]&&(delete i[r],i.count--),i.count===0&&(n.detach(),R._hDocFocus=null)),I&&s&&s.detach()},_syncUI:function(){this._syncAttrUI(this._UI_ATTRS.SYNC)},_uiSetHeight:function(e){this._uiSetDim(d,e),this._uiSizeCB(e!==_&&e!==b)},_uiSetWidth:function(e){this._uiSetDim(p,e)},_uiSetDim:function(e,t){this.get(v).setStyle(e,n.isNumber(t)?t+this.DEF_UNIT:t)},_uiSetVisible:function(e){this.get(v).toggleClass(this.getClassName(l),!e)},_uiSetDisabled:function(e){this.get(v).toggleClass(this.getClassName(c),e)},_uiSetFocused:function(e,t){var n=this.get(v);n.toggleClass(this.getClassName(h),e),t!==B&&(e?n.focus():n.blur())},_uiSetTabIndex:function(e){var t=this.get(v);n.isNumber(e)?t.set(S,e):t.removeAttribute(S)},_onDocMouseDown:function(e){this._domFocus&&this._onDocFocus(e)},_onDocFocus:function(e){var t=R.getByNode(e.target),n=R._active;n&&n!==t&&(n._domFocus=!1,n._set(h,!1,{src:B}),R._active=null),t&&(t._domFocus=!0,t._set(h,!0,{src:B}),R._active=t)},toString:function(){return this.name+"["+this.get(x)+"]"},DEF_UNIT:"px",DEF_PARENT_NODE:null,CONTENT_TEMPLATE:L,BOUNDING_TEMPLATE:L,_guid:function(){return e.guid()},_validTabIndex:function(e){return n.isNumber(e)||n.isNull(e)},_bindAttrUI:function(e){var t,n=e.length;for(t=0;t;M1&A^8LW00093EC2ui01W_S0007C z95kr{E9hW)kg8}e)|X1{JzSPeVx$D$6maef$MQ_q_KoNI&iDQh3JQm-Q4w_PBptF7 w%=sdQe$=Y=0;r--)i=t[r].HTML_PARSER,i&&e.mix(n,i,!0);return n}})},"3.9.1",{requires:["widget-base"]}); diff --git a/lib/yuilib/3.9.1/build/widget-locale/assets/widget-base-core.css b/lib/yuilib/3.9.1/build/widget-locale/assets/widget-base-core.css deleted file mode 100644 index c5c8da7725e..00000000000 --- a/lib/yuilib/3.9.1/build/widget-locale/assets/widget-base-core.css +++ /dev/null @@ -1,21 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-widget-hidden { - display:none; -} - -.yui3-widget-content { - overflow:hidden; -} - -.yui3-widget-content-expanded { - -moz-box-sizing: border-box; - -webkit-box-sizing: border-box; - -ms-box-sizing: border-box; - box-sizing:border-box; - height:100%; -} - -/* Only used for IE6, to go from a bigger size to a smaller size when using cb.sizeTo(bb) */ -.yui3-widget-tmp-forcesize { - overflow:hidden !important; -} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/widget-modality/assets/widget-modality-core.css b/lib/yuilib/3.9.1/build/widget-modality/assets/widget-modality-core.css deleted file mode 100644 index aa4479600b0..00000000000 --- a/lib/yuilib/3.9.1/build/widget-modality/assets/widget-modality-core.css +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -/* WidgetModality core styles */ diff --git a/lib/yuilib/3.9.1/build/widget-modality/widget-modality-min.js b/lib/yuilib/3.9.1/build/widget-modality/widget-modality-min.js deleted file mode 100644 index e1ddde3b5e2..00000000000 --- a/lib/yuilib/3.9.1/build/widget-modality/widget-modality-min.js +++ /dev/null @@ -1,4 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("widget-modality",function(e,t){function y(e){}var n="widget",r="renderUI",i="bindUI",s="syncUI",o="boundingBox",u="contentBox",a="visible",f="zIndex",l="Change",c=e.Lang.isBoolean,h=e.ClassNameManager.getClassName,p="maskShow",d="maskHide",v="clickoutside",m="focusoutside",g=function(){ -/*! IS_POSITION_FIXED_SUPPORTED - Juriy Zaytsev (kangax) - http://yura.thinkweb2.com/cft/ */ -;var t=e.config.doc,n=null,r,i;return t.createElement&&(r=t.createElement("div"),r&&r.style&&(r.style.position="fixed",r.style.top="10px",i=t.body,i&&i.appendChild&&i.removeChild&&(i.appendChild(r),n=r.offsetTop===10,i.removeChild(r)))),n}(),b="modal",w="mask",E={modal:h(n,b),mask:h(n,w)};y.ATTRS={maskNode:{getter:"_getMaskNode",readOnly:!0},modal:{value:!1,validator:c},focusOn:{valueFn:function(){return[{eventName:v},{eventName:m}]},validator:e.Lang.isArray}},y.CLASSES=E,y._GET_MASK=function(){var t=e.one("."+E.mask),n=e.one("win");return t?t:(t=e.Node.create("
                ").addClass(E.mask),g?t.setStyles({position:"fixed",width:"100%",height:"100%",top:"0",left:"0",display:"block"}):t.setStyles({position:"absolute",width:n.get("winWidth")+"px",height:n.get("winHeight")+"px",top:"0",left:"0",display:"block"}),t)},y.STACK=[],y.prototype={initializer:function(){e.after(this._renderUIModal,this,r),e.after(this._syncUIModal,this,s),e.after(this._bindUIModal,this,i)},destructor:function(){this._uiSetHostVisibleModal(!1)},_uiHandlesModal:null,_renderUIModal:function(){var e=this.get(o);this._repositionMask(this),e.addClass(E.modal)},_bindUIModal:function(){this.after(a+l,this._afterHostVisibleChangeModal),this.after(f+l,this._afterHostZIndexChangeModal),this.after("focusOnChange",this._afterFocusOnChange),(!g||e.UA.ios&&e.UA.ios<5||e.UA.android&&e.UA.android<3)&&e.one("win").on("scroll",this._resyncMask,this)},_syncUIModal:function(){this._uiSetHostVisibleModal(this.get(a)),this._uiSetHostZIndexModal(this.get(f))},_focus:function(e){var t=this.get(o),n=t.get("tabIndex");t.set("tabIndex",n>=0?n:0),this.focus()},_blur:function(){this.blur()},_getMaskNode:function(){return y._GET_MASK()},_uiSetHostVisibleModal:function(t){var n=y.STACK,r=this.get("maskNode"),i=this.get("modal"),s,o;t?(e.Array.each(n,function(e){e._detachUIHandlesModal(),e._blur()}),n.unshift(this),this._repositionMask(this),this._uiSetHostZIndexModal(this.get(f)),i&&(r.show(),e.later(1,this,"_attachUIHandlesModal"),this._focus())):(o=e.Array.indexOf(n,this),o>=0&&n.splice(o,1),this._detachUIHandlesModal(),this._blur(),n.length?(s=n[0],this._repositionMask(s),s._uiSetHostZIndexModal(s.get(f)),s.get("modal")&&(e.later(1,s,"_attachUIHandlesModal"),s._focus())):r.getStyle("display")==="block"&&r.hide())},_uiSetHostZIndexModal:function(e){this.get("modal")&&this.get("maskNode").setStyle(f,e||0)},_attachUIHandlesModal:function(){if(this._uiHandlesModal||y.STACK[0]!==this)return;var t=this.get(o),n=this.get("maskNode"),r=this.get("focusOn"),i=e.bind(this._focus,this),s=[],u,a,f;for(u=0,a=r.length;u1?!0:!1;return t},_repositionMask:function(t){var n=this.get("modal"),r=t.get("modal"),i=this.get("maskNode"),s,u;if(n&&!r)i.remove(),this.fire(d);else if(!n&&r||n&&r)i.remove(),this.fire(d),s=t.get(o),u=s.get("parentNode")||e.one("body"),u.insert(i,u.get("firstChild")),this.fire(p)},_resyncMask:function(e){var t=e.currentTarget,n=t.get("docScrollX"),r=t.get("docScrollY"),i=t.get("innerWidth")||t.get("winWidth"),s=t.get("innerHeight")||t.get("winHeight"),o=this.get("maskNode");o.setStyles({top:r+"px",left:n+"px",width:i+"px",height:s+"px"})},_afterFocusOnChange:function(e){this._detachUIHandlesModal(),this.get(a)&&this._attachUIHandlesModal()}},e.WidgetModality=y},"3.9.1",{requires:["base-build","event-outside","widget"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/widget-position-align/widget-position-align-min.js b/lib/yuilib/3.9.1/build/widget-position-align/widget-position-align-min.js deleted file mode 100644 index 634522d18bd..00000000000 --- a/lib/yuilib/3.9.1/build/widget-position-align/widget-position-align-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("widget-position-align",function(e,t){function c(t){this._posNode||e.error("WidgetPosition needs to be added to the Widget, before WidgetPositionAlign is added"),e.after(this._bindUIPosAlign,this,"bindUI"),e.after(this._syncUIPosAlign,this,"syncUI")}var n=e.Lang,r="align",i="alignOn",s="visible",o="boundingBox",u="offsetWidth",a="offsetHeight",f="region",l="viewportRegion";c.ATTRS={align:{value:null},centered:{setter:"_setAlignCenter",lazyAdd:!1,value:!1},alignOn:{value:[],validator:e.Lang.isArray}},c.TL="tl",c.TR="tr",c.BL="bl",c.BR="br",c.TC="tc",c.RC="rc",c.BC="bc",c.LC="lc",c.CC="cc",c.prototype={_posAlignUIHandles:null,destructor:function(){this._detachPosAlignUIHandles()},_bindUIPosAlign:function(){this.after("alignChange",this._afterAlignChange),this.after("alignOnChange",this._afterAlignOnChange),this.after("visibleChange",this._syncUIPosAlign)},_syncUIPosAlign:function(){var e=this.get(r);this._uiSetVisiblePosAlign(this.get(s)),e&&this._uiSetAlign(e.node,e.points)},align:function(e,t){return arguments.length?this.set(r,{node:e,points:t}):this._syncUIPosAlign(),this},centered:function(e){return this.align(e,[c.CC,c.CC])},_setAlignCenter:function(e){return e&&this.set(r,{node:e===!0?null:e,points:[c.CC,c.CC]}),e},_uiSetAlign:function(t,r){if(!n.isArray(r)||r.length!==2){e.error("align: Invalid Points Arguments");return}var i=this._getRegion(t),s,o,u;if(!i)return;s=r[0],o=r[1];switch(o){case c.TL:u=[i.left,i.top];break;case c.TR:u=[i.right,i.top];break;case c.BL:u=[i.left,i.bottom];break;case c.BR:u=[i.right,i.bottom];break;case c.TC:u=[i.left+Math.floor(i.width/2),i.top];break;case c.BC:u=[i.left+Math.floor(i.width/2),i.bottom];break;case c.LC:u=[i.left,i.top+Math.floor(i.height/2)];break;case c.RC:u=[i.right,i.top+Math.floor(i.height/2)];break;case c.CC:u=[i.left+Math.floor(i.width/2),i.top+Math.floor(i.height/2)];break;default:}u&&this._doAlign(s,u[0],u[1])},_uiSetVisiblePosAlign:function(e){e?this._attachPosAlignUIHandles():this._detachPosAlignUIHandles()},_attachPosAlignUIHandles:function(){if(this._posAlignUIHandles)return;var t=this.get(o),n=e.bind(this._syncUIPosAlign,this),r=[];e.Array.each(this.get(i),function(i){var s=i.eventName,o=e.one(i.node)||t;s&&r.push(o.on(s,n))}),this._posAlignUIHandles=r},_detachPosAlignUIHandles:function(){var t=this._posAlignUIHandles;t&&((new e.EventHandle(t)).detach(),this._posAlignUIHandles=null)},_doAlign:function(e,t,n){var r=this._posNode,i;switch(e){case c.TL:i=[t,n];break;case c.TR:i=[t-r.get(u),n];break;case c.BL:i=[t,n-r.get(a)];break;case c.BR:i=[t-r.get(u),n-r.get(a)];break;case c.TC:i=[t-r.get(u)/2,n];break;case c.BC:i=[t-r.get(u)/2,n-r.get(a)];break;case c.LC:i=[t,n-r.get(a)/2];break;case c.RC:i=[t-r.get(u),n-r.get(a)/2];break;case c.CC:i=[t-r.get(u)/2,n-r.get(a)/2];break;default:}i&&this.move(i)},_getRegion:function(t){var n;return t?(t=e.Node.one(t),t&&(n=t.get(f))):n=this._posNode.get(l),n},_afterAlignChange:function(e){var t=e.newVal;t&&this._uiSetAlign(t.node,t.points)},_afterAlignOnChange:function(e){this._detachPosAlignUIHandles(),this.get(s)&&this._attachPosAlignUIHandles()}},e.WidgetPositionAlign=c},"3.9.1",{requires:["widget-position"]}); diff --git a/lib/yuilib/3.9.1/build/widget-position-constrain/widget-position-constrain-min.js b/lib/yuilib/3.9.1/build/widget-position-constrain/widget-position-constrain-min.js deleted file mode 100644 index e0f02fb0140..00000000000 --- a/lib/yuilib/3.9.1/build/widget-position-constrain/widget-position-constrain-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("widget-position-constrain",function(e,t){function m(t){this._posNode||e.error("WidgetPosition needs to be added to the Widget, before WidgetPositionConstrain is added"),e.after(this._bindUIPosConstrained,this,a)}var n="constrain",r="constrain|xyChange",i="constrainChange",s="preventOverlap",o="align",u="",a="bindUI",f="xy",l="x",c="y",h=e.Node,p="viewportRegion",d="region",v;m.ATTRS={constrain:{value:null,setter:"_setConstrain"},preventOverlap:{value:!1}},v=m._PREVENT_OVERLAP={x:{tltr:1,blbr:1,brbl:1,trtl:1},y:{trbr:1,tlbl:1,bltl:1,brtr:1}},m.prototype={getConstrainedXY:function(e,t){t=t||this.get(n);var r=this._getRegion(t===!0?null:t),i=this._posNode.get(d);return[this._constrain(e[0],l,i,r),this._constrain(e[1],c,i,r)]},constrain:function(e,t){var r,i,s=t||this.get(n);s&&(r=e||this.get(f),i=this.getConstrainedXY(r,s),(i[0]!==r[0]||i[1]!==r[1])&&this.set(f,i,{constrained:!0}))},_setConstrain:function(e){return e===!0?e:h.one(e)},_constrain:function(e,t,n,r){if(r){this.get(s)&&(e=this._preventOverlap(e,t,n,r));var i=t==l,o=i?r.width:r.height,u=i?n.width:n.height,a=i?r.left:r.top,f=i?r.right-u:r.bottom-u;if(ef)uf&&(e=f):e=a}return e},_preventOverlap:function(e,t,n,r){var i=this.get(o),s=t===l,a,f,c,h,p,d;return i&&i.points&&v[t][i.points.join(u)]&&(f=this._getRegion(i.node),f&&(a=s?n.width:n.height,c=s?f.left:f.top,h=s?f.right:f.bottom,p=s?f.left-r.left:f.top-r.top,d=s?r.right-f.right:r.bottom-f.bottom),e>c?da&&(e=c-a):pa&&(e=h)),e},_bindUIPosConstrained:function(){this.after(i,this._afterConstrainChange),this._enableConstraints(this.get(n))},_afterConstrainChange:function(e){this._enableConstraints(e.newVal)},_enableConstraints:function(e){e?(this.constrain(),this._cxyHandle=this._cxyHandle||this.on(r,this._constrainOnXYChange)):this._cxyHandle&&(this._cxyHandle.detach(),this._cxyHandle=null)},_constrainOnXYChange:function(e){e.constrained||(e.newVal=this.getConstrainedXY(e.newVal))},_getRegion:function(e){var t;return e?(e=h.one(e),e&&(t=e.get(d))):t=this._posNode.get(p),t}},e.WidgetPositionConstrain=m},"3.9.1",{requires:["widget-position"]}); diff --git a/lib/yuilib/3.9.1/build/widget-position/widget-position-min.js b/lib/yuilib/3.9.1/build/widget-position/widget-position-min.js deleted file mode 100644 index 27251445b14..00000000000 --- a/lib/yuilib/3.9.1/build/widget-position/widget-position-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("widget-position",function(e,t){function d(t){this._posNode=this.get(u),e.after(this._renderUIPosition,this,f),e.after(this._syncUIPosition,this,c),e.after(this._bindUIPosition,this,l)}var n=e.Lang,r=e.Widget,i="xy",s="position",o="positioned",u="boundingBox",a="relative",f="renderUI",l="bindUI",c="syncUI",h=r.UI_SRC,p="xyChange";d.ATTRS={x:{setter:function(e){this._setX(e)},getter:function(){return this._getX()},lazyAdd:!1},y:{setter:function(e){this._setY(e)},getter:function(){return this._getY()},lazyAdd:!1},xy:{value:[0,0],validator:function(e){return this._validateXY(e)}}},d.POSITIONED_CLASS_NAME=r.getClassName(o),d.prototype={_renderUIPosition:function(){this._posNode.addClass(d.POSITIONED_CLASS_NAME)},_syncUIPosition:function(){var e=this._posNode;e.getStyle(s)===a&&this.syncXY(),this._uiSetXY(this.get(i))},_bindUIPosition:function(){this.after(p,this._afterXYChange)},move:function(){var e=arguments,t=n.isArray(e[0])?e[0]:[e[0],e[1]];this.set(i,t)},syncXY:function(){this.set(i,this._posNode.getXY(),{src:h})},_validateXY:function(e){return n.isArray(e)&&n.isNumber(e[0])&&n.isNumber(e[1])},_setX:function(e){this.set(i,[e,this.get(i)[1]])},_setY:function(e){this.set(i,[this.get(i)[0],e])},_getX:function(){return this.get(i)[0]},_getY:function(){return this.get(i)[1]},_afterXYChange:function(e){e.src!=h&&this._uiSetXY(e.newVal)},_uiSetXY:function(e){this._posNode.setXY(e)}},e.WidgetPosition=d},"3.9.1",{requires:["base-build","node-screen","widget"]}); diff --git a/lib/yuilib/3.9.1/build/widget-skin/assets/widget-base-core.css b/lib/yuilib/3.9.1/build/widget-skin/assets/widget-base-core.css deleted file mode 100644 index c5c8da7725e..00000000000 --- a/lib/yuilib/3.9.1/build/widget-skin/assets/widget-base-core.css +++ /dev/null @@ -1,21 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-widget-hidden { - display:none; -} - -.yui3-widget-content { - overflow:hidden; -} - -.yui3-widget-content-expanded { - -moz-box-sizing: border-box; - -webkit-box-sizing: border-box; - -ms-box-sizing: border-box; - box-sizing:border-box; - height:100%; -} - -/* Only used for IE6, to go from a bigger size to a smaller size when using cb.sizeTo(bb) */ -.yui3-widget-tmp-forcesize { - overflow:hidden !important; -} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/widget-skin/widget-skin-debug.js b/lib/yuilib/3.9.1/build/widget-skin/widget-skin-debug.js deleted file mode 100644 index bc4b48acace..00000000000 --- a/lib/yuilib/3.9.1/build/widget-skin/widget-skin-debug.js +++ /dev/null @@ -1,44 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add('widget-skin', function (Y, NAME) { - -/** - * Provides skin related utlility methods. - * - * @module widget - * @submodule widget-skin - */ - -var BOUNDING_BOX = "boundingBox", - CONTENT_BOX = "contentBox", - SKIN = "skin", - _getClassName = Y.ClassNameManager.getClassName; - -/** - * Returns the name of the skin that's currently applied to the widget. - * This is only really useful after the widget's DOM structure is in the - * document, either by render or by progressive enhancement. Searches up - * the Widget's ancestor axis for a class yui3-skin-(name), and returns the - * (name) portion. Otherwise, returns null. - * - * @method getSkinName - * @for Widget - * @return {String} the name of the skin, or null (yui3-skin-sam => sam) - */ - -Y.Widget.prototype.getSkinName = function () { - var root = this.get( CONTENT_BOX ) || this.get( BOUNDING_BOX ), - search = new RegExp( '\\b' + _getClassName( SKIN ) + '-(\\S+)' ), - match; - - if ( root ) { - root.ancestor( function ( node ) { - match = node.get( 'className' ).match( search ); - return match; - } ); - } - - return ( match ) ? match[1] : null; -}; - - -}, '3.9.1', {"requires": ["widget-base"]}); diff --git a/lib/yuilib/3.9.1/build/widget-skin/widget-skin-min.js b/lib/yuilib/3.9.1/build/widget-skin/widget-skin-min.js deleted file mode 100644 index 9bbdd1cdceb..00000000000 --- a/lib/yuilib/3.9.1/build/widget-skin/widget-skin-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("widget-skin",function(e,t){var n="boundingBox",r="contentBox",i="skin",s=e.ClassNameManager.getClassName;e.Widget.prototype.getSkinName=function(){var e=this.get(r)||this.get(n),t=new RegExp("\\b"+s(i)+"-(\\S+)"),o;return e&&e.ancestor(function(e){return o=e.get("className").match(t),o}),o?o[1]:null}},"3.9.1",{requires:["widget-base"]}); diff --git a/lib/yuilib/3.9.1/build/widget-skin/widget-skin.js b/lib/yuilib/3.9.1/build/widget-skin/widget-skin.js deleted file mode 100644 index bc4b48acace..00000000000 --- a/lib/yuilib/3.9.1/build/widget-skin/widget-skin.js +++ /dev/null @@ -1,44 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add('widget-skin', function (Y, NAME) { - -/** - * Provides skin related utlility methods. - * - * @module widget - * @submodule widget-skin - */ - -var BOUNDING_BOX = "boundingBox", - CONTENT_BOX = "contentBox", - SKIN = "skin", - _getClassName = Y.ClassNameManager.getClassName; - -/** - * Returns the name of the skin that's currently applied to the widget. - * This is only really useful after the widget's DOM structure is in the - * document, either by render or by progressive enhancement. Searches up - * the Widget's ancestor axis for a class yui3-skin-(name), and returns the - * (name) portion. Otherwise, returns null. - * - * @method getSkinName - * @for Widget - * @return {String} the name of the skin, or null (yui3-skin-sam => sam) - */ - -Y.Widget.prototype.getSkinName = function () { - var root = this.get( CONTENT_BOX ) || this.get( BOUNDING_BOX ), - search = new RegExp( '\\b' + _getClassName( SKIN ) + '-(\\S+)' ), - match; - - if ( root ) { - root.ancestor( function ( node ) { - match = node.get( 'className' ).match( search ); - return match; - } ); - } - - return ( match ) ? match[1] : null; -}; - - -}, '3.9.1', {"requires": ["widget-base"]}); diff --git a/lib/yuilib/3.9.1/build/widget-stack/assets/skins/night/widget-stack-skin.css b/lib/yuilib/3.9.1/build/widget-stack/assets/skins/night/widget-stack-skin.css deleted file mode 100644 index 032880fae8e..00000000000 --- a/lib/yuilib/3.9.1/build/widget-stack/assets/skins/night/widget-stack-skin.css +++ /dev/null @@ -1 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ diff --git a/lib/yuilib/3.9.1/build/widget-stack/assets/skins/sam/widget-stack-skin.css b/lib/yuilib/3.9.1/build/widget-stack/assets/skins/sam/widget-stack-skin.css deleted file mode 100644 index 032880fae8e..00000000000 --- a/lib/yuilib/3.9.1/build/widget-stack/assets/skins/sam/widget-stack-skin.css +++ /dev/null @@ -1 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ diff --git a/lib/yuilib/3.9.1/build/widget-stack/widget-stack-min.js b/lib/yuilib/3.9.1/build/widget-stack/widget-stack-min.js deleted file mode 100644 index 5ea7fd01e4c..00000000000 --- a/lib/yuilib/3.9.1/build/widget-stack/widget-stack-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("widget-stack",function(e,t){function O(t){this._stackNode=this.get(f),this._stackHandles={},e.after(this._renderUIStack,this,l),e.after(this._syncUIStack,this,h),e.after(this._bindUIStack,this,c)}var n=e.Lang,r=e.UA,i=e.Node,s=e.Widget,o="zIndex",u="shim",a="visible",f="boundingBox",l="renderUI",c="bindUI",h="syncUI",p="offsetWidth",d="offsetHeight",v="parentNode",m="firstChild",g="ownerDocument",y="width",b="height",w="px",E="shimdeferred",S="shimresize",x="visibleChange",T="widthChange",N="heightChange",C="shimChange",k="zIndexChange",L="contentUpdate",A="stacked";O.ATTRS={shim:{value:r.ie==6},zIndex:{value:0,setter:"_setZIndex"}},O.HTML_PARSER={zIndex:function(e){return this._parseZIndex(e)}},O.SHIM_CLASS_NAME=s.getClassName(u),O.STACKED_CLASS_NAME=s.getClassName(A),O.SHIM_TEMPLATE='',O.prototype={_syncUIStack:function(){this._uiSetShim(this.get(u)),this._uiSetZIndex(this.get(o))},_bindUIStack:function(){this.after(C,this._afterShimChange),this.after(k,this._afterZIndexChange)},_renderUIStack:function(){this._stackNode.addClass(O.STACKED_CLASS_NAME)},_parseZIndex:function(e){var t;return!e.inDoc()||e.getStyle("position")==="static"?t="auto":t=e.getComputedStyle("zIndex"),t==="auto"?null:t},_setZIndex:function(e){return n.isString(e)&&(e=parseInt(e,10)),n.isNumber(e)||(e=0),e},_afterShimChange:function(e){this._uiSetShim(e.newVal)},_afterZIndexChange:function(e){this._uiSetZIndex(e.newVal)},_uiSetZIndex:function(e){this._stackNode.setStyle(o,e)},_uiSetShim:function(e){e?(this.get(a)?this._renderShim():this._renderShimDeferred(),r.ie==6&&this._addShimResizeHandlers()):this._destroyShim()},_renderShimDeferred:function(){this._stackHandles[E]=this._stackHandles[E]||[];var e=this._stackHandles[E],t=function(e){e.newVal&&this._renderShim()};e.push(this.on(x,t))},_addShimResizeHandlers:function(){this._stackHandles[S]=this._stackHandles[S]||[];var e=this.sizeShim,t=this._stackHandles[S];t.push(this.after(x,e)),t.push(this.after(T,e)),t.push(this.after(N,e)),t.push(this.after(L,e))},_detachStackHandles:function(e){var t=this._stackHandles[e],n;if(t&&t.length>0)while(n=t.pop())n.detach()},_renderShim:function(){var e=this._shimNode,t=this._stackNode;e||(e=this._shimNode=this._getShimTemplate(),t.insertBefore(e,t.get(m)),this._detachStackHandles(E),this.sizeShim())},_destroyShim:function(){this._shimNode&&(this._shimNode.get(v).removeChild(this._shimNode),this._shimNode=null,this._detachStackHandles(E),this._detachStackHandles(S))},sizeShim:function(){var e=this._shimNode,t=this._stackNode;e&&r.ie===6&&this.get(a)&&(e.setStyle(y,t.get(p)+w),e.setStyle(b,t.get(d)+w))},_getShimTemplate:function(){return i.create(O.SHIM_TEMPLATE,this._stackNode.get(g))}},e.WidgetStack=O},"3.9.1",{requires:["base-build","widget"],skinnable:!0}); diff --git a/lib/yuilib/3.9.1/build/widget-stdmod/widget-stdmod-min.js b/lib/yuilib/3.9.1/build/widget-stdmod/widget-stdmod-min.js deleted file mode 100644 index 859c0377cc1..00000000000 --- a/lib/yuilib/3.9.1/build/widget-stdmod/widget-stdmod-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("widget-stdmod",function(e,t){function H(t){this._stdModNode=this.get(w),e.before(this._renderUIStdMod,this,O),e.before(this._bindUIStdMod,this,M),e.before(this._syncUIStdMod,this,_)}var n=e.Lang,r=e.Node,i=e.UA,s=e.Widget,o="",u="hd",a="bd",f="ft",l="header",c="body",h="footer",p="fillHeight",d="stdmod",v="Node",m="Content",g="firstChild",y="childNodes",b="ownerDocument",w="contentBox",E="height",S="offsetHeight",x="auto",T="headerContentChange",N="bodyContentChange",C="footerContentChange",k="fillHeightChange",L="heightChange",A="contentUpdate",O="renderUI",M="bindUI",_="syncUI",D="_applyParsedConfig",P=e.Widget.UI_SRC;H.HEADER=l,H.BODY=c,H.FOOTER=h,H.AFTER="after",H.BEFORE="before",H.REPLACE="replace";var B=H.HEADER,j=H.BODY,F=H.FOOTER,I=B+m,q=F+m,R=j+m;H.ATTRS={headerContent:{value:null},footerContent:{value:null},bodyContent:{value:null},fillHeight:{value:H.BODY,validator:function(e){return this._validateFillHeight(e)}}},H.HTML_PARSER={headerContent:function(e){return this._parseStdModHTML(B)},bodyContent:function(e){return this._parseStdModHTML(j)},footerContent:function(e){return this._parseStdModHTML(F)}},H.SECTION_CLASS_NAMES={header:s.getClassName(u),body:s.getClassName(a),footer:s.getClassName(f)},H.TEMPLATES={header:'
                ',body:'
                ',footer:'
                '},H.prototype={_syncUIStdMod:function(){var e=this._stdModParsed;(!e||!e[I])&&this._uiSetStdMod(B,this.get(I)),(!e||!e[R])&&this._uiSetStdMod(j,this.get(R)),(!e||!e[q])&&this._uiSetStdMod(F,this.get(q)),this._uiSetFillHeight(this.get(p))},_renderUIStdMod:function(){this._stdModNode.addClass(s.getClassName(d)),this._renderStdModSections(),this.after(T,this._afterHeaderChange),this.after(N,this._afterBodyChange),this.after(C,this._afterFooterChange)},_renderStdModSections:function(){n.isValue(this.get(I))&&this._renderStdMod(B),n.isValue(this.get(R))&&this._renderStdMod(j),n.isValue(this.get(q))&&this._renderStdMod(F)},_bindUIStdMod:function(){this.after(k,this._afterFillHeightChange),this.after(L,this._fillHeight),this.after(A,this._fillHeight)},_afterHeaderChange:function(e){e.src!==P&&this._uiSetStdMod(B,e.newVal,e.stdModPosition)},_afterBodyChange:function(e){e.src!==P&&this._uiSetStdMod(j,e.newVal,e.stdModPosition)},_afterFooterChange:function(e){e.src!==P&&this._uiSetStdMod(F,e.newVal,e.stdModPosition)},_afterFillHeightChange:function(e){this._uiSetFillHeight(e.newVal)},_validateFillHeight:function(e){return!e||e==H.BODY||e==H.HEADER||e==H.FOOTER},_uiSetFillHeight:function(e){var t=this.getStdModNode(e),n=this._currFillNode;n&&t!==n&&n.setStyle(E,o),t&&(this._currFillNode=t),this._fillHeight()},_fillHeight:function(){if(this.get(p)){var e=this.get(E);e!=o&&e!=x&&this.fillHeight(this._currFillNode)}},_uiSetStdMod:function(e,t,r){if(n.isValue(t)){var i=this.getStdModNode(e,!0);this._addStdModContent(i,t,r),this.set(e+m,this._getStdModContent(e),{src:P})}else this._eraseStdMod(e);this.fire(A)},_renderStdMod:function(e){var t=this.get(w),n=this._findStdModSection(e);return n||(n=this._getStdModTemplate(e)),this._insertStdModSection(t,e,n),this[e+v]=n,this[e+v]},_eraseStdMod:function(e){var t=this.getStdModNode(e);t&&(t.remove(!0),delete this[e+v])},_insertStdModSection:function(e,t,n){var r=e.get(g);if(t===F||!r)e.appendChild(n);else if(t===B)e.insertBefore(n,r);else{var i=this[F+v];i?e.insertBefore(n,i):e.appendChild(n)}},_getStdModTemplate:function(e){return r.create(H.TEMPLATES[e],this._stdModNode.get(b))},_addStdModContent:function(e,t,n){switch(n){case H.BEFORE:n=0;break;case H.AFTER:n=undefined;break;default:n=H.REPLACE}e.insert(t,n)},_getPreciseHeight:function(e){var t=e?e.get(S):0,n="getBoundingClientRect";if(e&&e.hasMethod(n)){var r=e.invoke(n);r&&(t=r.bottom-r.top)}return t},_findStdModSection:function(e){return this.get(w).one("> ."+H.SECTION_CLASS_NAMES[e])},_parseStdModHTML:function(t){var n=this._findStdModSection(t);return n?(this._stdModParsed||(this._stdModParsed={},e.before(this._applyStdModParsedConfig,this,D)),this._stdModParsed[t+m]=1,n.get("innerHTML")):null},_applyStdModParsedConfig:function(e,t,n){var r=this._stdModParsed;r&&(r[I]=!(I in t)&&I in r,r[R]=!(R in t)&&R in r,r[q]=!(q in t)&&q in r)},_getStdModContent:function(e){return this[e+v]?this[e+v].get(y):null},setStdModContent:function(e,t,n){this.set(e+m,t,{stdModPosition:n})},getStdModNode:function(e,t){var n=this[e+v]||null;return!n&&t&&(n=this._renderStdMod(e)),n},fillHeight:function(e){if(e){var t=this.get(w),r=[this.headerNode,this.bodyNode,this.footerNode],s,o,u=0,a=0,f=!1;for(var l=0,c=r.length;l=0&&e.set(S,a)))}}},e.WidgetStdMod=H},"3.9.1",{requires:["base-build","widget"]}); diff --git a/lib/yuilib/3.9.1/build/widget-uievents/assets/widget-base-core.css b/lib/yuilib/3.9.1/build/widget-uievents/assets/widget-base-core.css deleted file mode 100644 index c5c8da7725e..00000000000 --- a/lib/yuilib/3.9.1/build/widget-uievents/assets/widget-base-core.css +++ /dev/null @@ -1,21 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -.yui3-widget-hidden { - display:none; -} - -.yui3-widget-content { - overflow:hidden; -} - -.yui3-widget-content-expanded { - -moz-box-sizing: border-box; - -webkit-box-sizing: border-box; - -ms-box-sizing: border-box; - box-sizing:border-box; - height:100%; -} - -/* Only used for IE6, to go from a bigger size to a smaller size when using cb.sizeTo(bb) */ -.yui3-widget-tmp-forcesize { - overflow:hidden !important; -} \ No newline at end of file diff --git a/lib/yuilib/3.9.1/build/yui-base/yui-base-min.js b/lib/yuilib/3.9.1/build/yui-base/yui-base-min.js deleted file mode 100644 index 88a1f35a41c..00000000000 --- a/lib/yuilib/3.9.1/build/yui-base/yui-base-min.js +++ /dev/null @@ -1,7 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -typeof YUI!="undefined"&&(YUI._YUI=YUI);var YUI=function(){var e=0,t=this,n=arguments,r=n.length,i=function(e,t){return e&&e.hasOwnProperty&&e instanceof t},s=typeof YUI_config!="undefined"&&YUI_config;i(t,YUI)?(t._init(),YUI.GlobalConfig&&t.applyConfig(YUI.GlobalConfig),s&&t.applyConfig(s),r||t._setup()):t=new YUI;if(r){for(;e-1&&(n="3.5.0"),e={applyConfig:function(e){e=e||u;var t,n,r=this.config,i=r.modules,s=r.groups,o=r.aliases,a=this.Env._loader;for(n in e)e.hasOwnProperty(n)&&(t=e[n],i&&n=="modules"?E(i,t):o&&n=="aliases"?E(o,t):s&&n=="groups"?E(s,t):n=="win"?(r[n]=t&&t.contentWindow||t,r.doc=r[n]?r[n].document:null):n!="_yuid"&&(r[n]=t));a&&a._config(e)},_config:function(e){this.applyConfig(e)},_init:function(){var e,t,r=this,s=YUI.Env,u=r.Env,a;r.version=n;if(!u){r.Env={core:["get","features","intl-base","yui-log","yui-later"],loaderExtras:["loader-rollup","loader-yui3"],mods:{},versions:{},base:i,cdn:i+n+"/build/",_idx:0,_used:{},_attached:{},_missed:[],_yidx:0,_uidx:0,_guidp:"y",_loaded:{},_BASE_RE:/(?:\?(?:[^&]*&)*([^&]*))?\b(simpleyui|yui(?:-\w+)?)\/\2(?:-(min|debug))?\.js/,parseBasePath:function(e,t){var n=e.match(t),r,i;return n&&(r=RegExp.leftContext||e.slice(0,e.indexOf(n[0])),i=n[3],n[1]&&(r+="?"+n[1]),r={filter:i,path:r}),r},getBase:s&&s.getBase||function(t){var n=h&&h.getElementsByTagName("script")||[],i=u.cdn,s,o,a,f;for(o=0,a=n.length;o',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},h.indexOf=f._isNative(l.indexOf)?function(e,t,n){return l.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,d):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},g.each=function(t,n,r,i){var s;for(s in t)(i||E(t,s))&&n.call(r||e,t[s],s,t);return e},g.some=function(t,n,r,i){var s;for(s in t)if(i||E(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},g.getValue=function(t,n){if(!f.isObject(t))return m;var r,i=e.Array(n),s=i.length;for(r=0;t!==m&&r=0){for(i=0;u!==m&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"3.9.1",{use:["get","features","intl-base","yui-log","yui-later"]}),YUI.add("get",function(e,t){var n=e.Lang,r,i,s;e.Get=i={cssOptions:{attributes:{rel:"stylesheet"},doc:e.config.linkDoc||e.config.doc,pollInterval:50},jsOptions:{autopurge:!0,doc:e.config.scriptDoc||e.config.doc},options:{attributes:{charset:"utf-8"},purgethreshold:20},REGEX_CSS:/\.css(?:[?;].*)?$/i,REGEX_JS:/\.js(?:[?;].*)?$/i,_insertCache:{},_pending:null,_purgeNodes:[],_queue:[],abort:function(e){var t,n,r,i,s;if(!e.abort){n=e,s=this._pending,e=null;if(s&&s.transaction.id===n)e=s.transaction,this._pending=null;else for(t=0,i=this._queue.length;t=e&&this._purge(this._purgeNodes)},_getEnv:function(){var t=e.config.doc,n=e.UA;return this._env={async:t&&t.createElement("script").async===!0||n.ie>=10,cssFail:n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0,cssLoad:(!n.gecko&&!n.webkit||n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0)&&!(n.chrome&&n.chrome<=18),preservesScriptOrder:!!(n.gecko||n.opera||n.ie&&n.ie>=10)}},_getTransaction:function(t,r){var i=[],o,u,a,f;n.isArray(t)||(t=[t]),r=e.merge(this.options,r),r.attributes=e.merge(this.options.attributes,r.attributes);for(o=0,u=t.length;o-1&&n.splice(i,1))}}},i.script=i.js,i.Transaction=s=function(t,n){var r=this;r.id=s._lastId+=1,r.data=n.data,r.errors=[],r.nodes=[],r.options=n,r.requests=t,r._callbacks=[],r._queue=[],r._reqsWaiting=0,r.tId=r.id,r.win=n.win||e.config.win},s._lastId=0,s.prototype={_state:"new",abort:function(e){this._pending=null,this._pendingCSS=null,this._pollTimer=clearTimeout(this._pollTimer),this._queue=[],this._reqsWaiting=0,this.errors.push({error:e||"Aborted"}),this._finish()},execute:function(e){var t=this,n=t.requests,r=t._state,i,s,o,u;if(r==="done"){e&&e(t.errors.length?t.errors:null,t);return}e&&t._callbacks.push(e);if(r==="executing")return;t._state="executing",t._queue=o=[],t.options.timeout&&(t._timeout=setTimeout(function(){t.abort("Timeout")},t.options.timeout)),t._reqsWaiting=n.length;for(i=0,s=n.length;i=10?(o.onerror=function(){setTimeout(c,0)},o.onload=function(){setTimeout(h,0)}):(o.onerror=c,o.onload=h),!n.cssFail&&!s&&(f=setTimeout(c,t.timeout||3e3))),this.nodes.push(o),r.parentNode.insertBefore(o,r)},_next:function(){if(this._pending)return;this._queue.length?this._insert(this._queue.shift()):this._reqsWaiting||this._finish()},_poll:function(t){var n=this,r=n._pendingCSS,i=e.UA.webkit,s,o,u,a,f,l;if(t){r||(r=n._pendingCSS=[]),r.push(t);if(n._pollTimer)return}n._pollTimer=null;for(s=0;s=0)if(l[u].href===a){r.splice(s,1),s-=1,n._progress(null,f);break}}else try{o=!!f.node.sheet.cssRules,r.splice(s,1),s-=1,n._progress(null,f)}catch(c){}}r.length&&(n._pollTimer=setTimeout(function(){n._poll.call(n)},n.options.pollInterval))},_progress:function(e,t){var n=this.options;e&&(t.error=e,this.errors.push({error:e,request:t})),t.node._yuiget_finished=t.finished=!0,n.onProgress&&n.onProgress.call(n.context||this,this._getEventData(t)),t.autopurge&&(i._autoPurge(this.options.purgethreshold),i._purgeNodes.push(t.node)),this._pending===t&&(this._pending=null),this._reqsWaiting-=1,this._next()}}},"3.9.1",{requires:["yui-base"]}),YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger -:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"3.9.1",{requires:["yui-base"]}),YUI.add("intl-base",function(e,t){var n=/[, ]/;e.mix(e.namespace("Intl"),{lookupBestLang:function(t,r){function a(e){var t;for(t=0;t0){o=a(s);if(o)return o;u=s.lastIndexOf("-");if(!(u>=0))break;s=s.substring(0,u),u>=2&&s.charAt(u-2)==="-"&&(s=s.substring(0,u-2))}}return""}})},"3.9.1",{requires:["yui-base"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:1,warn:1,error:1};n.log=function(e,t,o,u){var a,f,l,c,h,p=n,d=p.config,v=p.fire?p:YUI.Env.globalEvents;return d.debug&&(o=o||"",typeof o!="undefined"&&(f=d.logExclude,l=d.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1),a||(d.useBrowserConsole&&(c=o?o+": "+e:e,p.Lang.isFunction(d.logFn)?d.logFn.call(p,e,t,o):typeof console!==i&&console.log?(h=t&&console[t]&&t in s?t:"log",console[h](c)):typeof opera!==i&&opera.postError(c)),v&&!u&&(v===p&&!v.getEvent(r)&&v.publish(r,{broadcast:2}),v.fire(r,{msg:e,cat:t,src:o})))),p},n.message=function(){return n.log.apply(n,arguments)}},"3.9.1",{requires:["yui-base"]}),YUI.add("yui-later",function(e,t){var n=[];e.later=function(t,r,i,s,o){t=t||0,s=e.Lang.isUndefined(s)?n:e.Array(s),r=r||e.config.win||e;var u=!1,a=r&&e.Lang.isString(i)?r[i]:i,f=function(){u||(a.apply?a.apply(r,s||n):a(s[0],s[1],s[2],s[3]))},l=o?setInterval(f,t):setTimeout(f,t);return{id:l,interval:o,cancel:function(){u=!0,this.interval?clearInterval(l):clearTimeout(l)}}},e.Lang.later=e.later},"3.9.1",{requires:["yui-base"]}),YUI.add("yui",function(e,t){},"3.9.1",{use:["get","features","intl-base","yui-log","yui-later"]}); diff --git a/lib/yuilib/3.9.1/build/yui-core/yui-core-min.js b/lib/yuilib/3.9.1/build/yui-core/yui-core-min.js deleted file mode 100644 index de5c81f26a2..00000000000 --- a/lib/yuilib/3.9.1/build/yui-core/yui-core-min.js +++ /dev/null @@ -1,5 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -typeof YUI!="undefined"&&(YUI._YUI=YUI);var YUI=function(){var e=0,t=this,n=arguments,r=n.length,i=function(e,t){return e&&e.hasOwnProperty&&e instanceof t},s=typeof YUI_config!="undefined"&&YUI_config;i(t,YUI)?(t._init(),YUI.GlobalConfig&&t.applyConfig(YUI.GlobalConfig),s&&t.applyConfig(s),r||t._setup()):t=new YUI;if(r){for(;e-1&&(n="3.5.0"),e={applyConfig:function(e){e=e||u;var t,n,r=this.config,i=r.modules,s=r.groups,o=r.aliases,a=this.Env._loader;for(n in e)e.hasOwnProperty(n)&&(t=e[n],i&&n=="modules"?E(i,t):o&&n=="aliases"?E(o,t):s&&n=="groups"?E(s,t):n=="win"?(r[n]=t&&t.contentWindow||t,r.doc=r[n]?r[n].document:null):n!="_yuid"&&(r[n]=t));a&&a._config(e)},_config:function(e){this.applyConfig(e)},_init:function(){var e,t,r=this,s=YUI.Env,u=r.Env,a;r.version=n;if(!u){r.Env={core:["intl-base"],loaderExtras:["loader-rollup","loader-yui3"],mods:{},versions:{},base:i,cdn:i+n+"/build/",_idx:0,_used:{},_attached:{},_missed:[],_yidx:0,_uidx:0,_guidp:"y",_loaded:{},_BASE_RE:/(?:\?(?:[^&]*&)*([^&]*))?\b(simpleyui|yui(?:-\w+)?)\/\2(?:-(min|debug))?\.js/,parseBasePath:function(e,t){var n=e.match(t),r,i;return n&&(r=RegExp.leftContext||e.slice(0,e.indexOf(n[0])),i=n[3],n[1]&&(r+="?"+n[1]),r={filter:i,path:r}),r},getBase:s&&s.getBase||function(t){var n=h&&h.getElementsByTagName("script")||[],i=u.cdn,s,o,a,f;for(o=0,a=n.length;o',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},h.indexOf=f._isNative(l.indexOf)?function(e,t,n){return l.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,d):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},g.each=function(t,n,r,i){var s;for(s in t)(i||E(t,s))&&n.call(r||e,t[s],s,t);return e},g.some=function(t,n,r,i){var s;for(s in t)if(i||E(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},g.getValue=function(t,n){if(!f.isObject(t))return m;var r,i=e.Array(n),s=i.length;for(r=0;t!==m&&r=0){for(i=0;u!==m&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"3.9.1"); diff --git a/lib/yuilib/3.9.1/build/yui-log/yui-log-min.js b/lib/yuilib/3.9.1/build/yui-log/yui-log-min.js deleted file mode 100644 index 0feafd83fa0..00000000000 --- a/lib/yuilib/3.9.1/build/yui-log/yui-log-min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:1,warn:1,error:1};n.log=function(e,t,o,u){var a,f,l,c,h,p=n,d=p.config,v=p.fire?p:YUI.Env.globalEvents;return d.debug&&(o=o||"",typeof o!="undefined"&&(f=d.logExclude,l=d.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1),a||(d.useBrowserConsole&&(c=o?o+": "+e:e,p.Lang.isFunction(d.logFn)?d.logFn.call(p,e,t,o):typeof console!==i&&console.log?(h=t&&console[t]&&t in s?t:"log",console[h](c)):typeof opera!==i&&opera.postError(c)),v&&!u&&(v===p&&!v.getEvent(r)&&v.publish(r,{broadcast:2}),v.fire(r,{msg:e,cat:t,src:o})))),p},n.message=function(){return n.log.apply(n,arguments)}},"3.9.1",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/yui-nodejs/yui-nodejs-min.js b/lib/yuilib/3.9.1/build/yui-nodejs/yui-nodejs-min.js deleted file mode 100644 index 383d6689206..00000000000 --- a/lib/yuilib/3.9.1/build/yui-nodejs/yui-nodejs-min.js +++ /dev/null @@ -1,15 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -typeof YUI!="undefined"&&(YUI._YUI=YUI);var YUI=function(){var e=0,t=this,n=arguments,r=n.length,i=function(e,t){return e&&e.hasOwnProperty&&e instanceof t},s=typeof YUI_config!="undefined"&&YUI_config;i(t,YUI)?(t._init(),YUI.GlobalConfig&&t.applyConfig(YUI.GlobalConfig),s&&t.applyConfig(s),r||t._setup()):t=new YUI;if(r){for(;e-1&&(n="3.5.0"),e={applyConfig:function(e){e=e||u;var t,n,r=this.config,i=r.modules,s=r.groups,o=r.aliases,a=this.Env._loader;for(n in e)e.hasOwnProperty(n)&&(t=e[n],i&&n=="modules"?E(i,t):o&&n=="aliases"?E(o,t):s&&n=="groups"?E(s,t):n=="win"?(r[n]=t&&t.contentWindow||t,r.doc=r[n]?r[n].document:null):n!="_yuid"&&(r[n]=t));a&&a._config(e)},_config:function(e){this.applyConfig(e)},_init:function(){var e,t,r=this,s=YUI.Env,u=r.Env,a;r.version=n;if(!u){r.Env={core:["get","features","intl-base","yui-log","yui-log-nodejs","yui-later","loader-base","loader-rollup","loader-yui3"],loaderExtras:["loader-rollup","loader-yui3"],mods:{},versions:{},base:i,cdn:i+n+"/build/",_idx:0,_used:{},_attached:{},_missed:[],_yidx:0,_uidx:0,_guidp:"y",_loaded:{},_BASE_RE:/(?:\?(?:[^&]*&)*([^&]*))?\b(simpleyui|yui(?:-\w+)?)\/\2(?:-(min|debug))?\.js/,parseBasePath:function(e,t){var n=e.match(t),r,i;return n&&(r=RegExp.leftContext||e.slice(0,e.indexOf(n[0])),i=n[3],n[1]&&(r+="?"+n[1]),r={filter:i,path:r}),r},getBase:s&&s.getBase||function(t){var n=h&&h.getElementsByTagName("script")||[],i=u.cdn,s,o,a,f;for(o=0,a=n.length;o',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},h.indexOf=f._isNative(l.indexOf)?function(e,t,n){return l.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,d):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},g.each=function(t,n,r,i){var s;for(s in t)(i||E(t,s))&&n.call(r||e,t[s],s,t);return e},g.some=function(t,n,r,i){var s;for(s in t)if(i||E(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},g.getValue=function(t,n){if(!f.isObject(t))return m;var r,i=e.Array(n),s=i.length;for(r=0;t!==m&&r=0){for(i=0;u!==m&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"3.9.1",{use:["yui-base","get","features","intl-base","yui-log","yui-log-nodejs","yui-later","loader-base","loader-rollup","loader-yui3"]}),YUI.add("get",function(e,t){var n=require("module"),r=require("path"),i=require("fs"),s=require("request"),o=function(t,n,r){e.Lang.isFunction(t.onEnd)&&t.onEnd.call(e,n,r)},u=function(t){e.Lang.isFunction(t.onSuccess)&&t.onSuccess.call(e,t),o(t,"success","success")},a=function(t,n){n.errors=[n],e.Lang.isFunction(t.onFailure)&&t.onFailure.call(e,n,t),o(t,n,"fail")};e.Get=function(){},e.config.base=r.join(__dirname,"../"),YUI.require=require,YUI.process=process,e.Get._exec=function(e,t,i){e.charCodeAt(0)===65279&&(e=e.slice(1));var s=new n(t,module);s.filename=t,s.paths=n._nodeModulePaths(r.dirname(t)),typeof YUI._getLoadHook=="function"&&(e=YUI._getLoadHook(e,t)),s._compile("module.exports = function (YUI) {"+e+"\n;return YUI;};",t),YUI=s.exports(YUI),s.loaded=!0,i(null,t)},e.Get._include=function(t,r){var o,u,a=this;if(t.match(/^https?:\/\//))o={url:t,timeout:a.timeout},s(o,function(n,i,s){n?r(n,t):e.Get._exec(s,t,r)});else{try{t=n._findPath(t,n._resolveLookupPaths(t,module.parent.parent)[1]);if(!e.config.useSync){i.readFile(t,"utf8",function(n,i){n?r(n,t):e.Get._exec(i,t,r)});return}u=i.readFileSync(t,"utf8")}catch(f){r(f,t);return}e.Get._exec(u,t,r)}},e.Get.js=function(t,n){var r=e.Array(t),i,s,o=r.length,f=0,l=function(){f===o&&u(n)};for(s=0;s0){o=a(s);if(o)return o;u=s.lastIndexOf("-");if(!(u>=0))break;s=s.substring(0,u),u>=2&&s.charAt(u-2)==="-"&&(s=s.substring(0,u-2))}}return""}})},"3.9.1",{requires:["yui-base"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:1,warn:1,error:1};n.log=function(e,t,o,u){var a,f,l,c,h,p=n,d=p.config,v=p.fire?p:YUI.Env.globalEvents;return d.debug&&(o=o||"",typeof o!="undefined"&&(f=d.logExclude,l=d.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1),a||(d.useBrowserConsole&&(c=o?o+": "+e:e,p.Lang.isFunction(d.logFn)?d.logFn.call(p,e,t,o):typeof console!==i&&console.log?(h=t&&console[t]&&t in s?t:"log",console[h](c)):typeof opera!==i&&opera.postError(c)),v&&!u&&(v===p&&!v.getEvent(r)&&v.publish(r,{broadcast:2}),v.fire(r,{msg:e,cat:t,src:o})))),p},n.message=function(){return n.log.apply(n,arguments)}},"3.9.1",{requires: -["yui-base"]}),YUI.add("yui-log-nodejs",function(e,t){var n=require(process.binding("natives").util?"util":"sys"),r=!1;try{var i=require("stdio");r=i.isStderrATTY()}catch(s){r=!0}e.config.useColor=r,e.consoleColor=function(e,t){return this.config.useColor?(t||(t="32"),"["+t+"m"+e+""):e};var o=function(e,t,r){var i="",s,o;this.id&&(i="["+this.id+"]:"),t=t||"info",r=r?this.consoleColor(" ("+r.toLowerCase()+"):",35):"",e===null&&(e="null");if(typeof e=="object"||e instanceof Array)try{e.tagName||e._yuid||e._query?e=e.toString():e=n.inspect(e)}catch(u){}s="37;40",o=e?"":31,t+="";switch(t.toLowerCase()){case"error":s=o=31;break;case"warn":s=33;break;case"debug":s=34}typeof e=="string"&&e&&e.indexOf("\n")!==-1&&(e="\n"+e),n.error(this.consoleColor(t.toLowerCase()+":",s)+r+" "+this.consoleColor(e,o))};e.config.logFn||(e.config.logFn=o)},"3.9.1"),YUI.add("yui-later",function(e,t){var n=[];e.later=function(t,r,i,s,o){t=t||0,s=e.Lang.isUndefined(s)?n:e.Array(s),r=r||e.config.win||e;var u=!1,a=r&&e.Lang.isString(i)?r[i]:i,f=function(){u||(a.apply?a.apply(r,s||n):a(s[0],s[1],s[2],s[3]))},l=o?setInterval(f,t):setTimeout(f,t);return{id:l,interval:o,cancel:function(){u=!0,this.interval?clearInterval(l):clearTimeout(l)}}},e.Lang.later=e.later},"3.9.1",{requires:["yui-base"]}),YUI.add("loader-base",function(e,t){YUI.Env[e.version]||function(){var t=e.version,n="/build/",r=t+n,i=e.Env.base,s="gallery-2013.02.27-21-03",o="2in3",u="4",a="2.9.0",f=i+"combo?",l={version:t,root:r,base:e.Env.base,comboBase:f,skin:{defaultSkin:"sam",base:"assets/skins/",path:"skin.css",after:["cssreset","cssfonts","cssgrids","cssbase","cssreset-context","cssfonts-context"]},groups:{},patterns:{}},c=l.groups,h=function(e,t,r){var s=o+"."+(e||u)+"/"+(t||a)+n,l=r&&r.base?r.base:i,h=r&&r.comboBase?r.comboBase:f;c.yui2.base=l+s,c.yui2.root=s,c.yui2.comboBase=h},p=function(e,t){var r=(e||s)+n,o=t&&t.base?t.base:i,u=t&&t.comboBase?t.comboBase:f;c.gallery.base=o+r,c.gallery.root=r,c.gallery.comboBase=u};c[t]={},c.gallery={ext:!1,combine:!0,comboBase:f,update:p,patterns:{"gallery-":{},"lang/gallery-":{},"gallerycss-":{type:"css"}}},c.yui2={combine:!0,ext:!1,comboBase:f,update:h,patterns:{"yui2-":{configFn:function(e){/-skin|reset|fonts|grids|base/.test(e.name)&&(e.type="css",e.path=e.path.replace(/\.js/,".css"),e.path=e.path.replace(/\/yui2-skin/,"/assets/skins/sam/yui2-skin"))}}}},p(),h(),YUI.Env[t]=l}();var n={},r=[],i=1024,s=YUI.Env,o=s._loaded,u="css",a="js",f="intl",l="sam",c=e.version,h="",p=e.Object,d=p.each,v=e.Array,m=s._loaderQueue,g=s[c],y="skin-",b=e.Lang,w=s.mods,E,S=function(e,t,n,r){var i=e+"/"+t;return r||(i+="-min"),i+="."+(n||u),i};YUI.Env._cssLoaded||(YUI.Env._cssLoaded={}),e.Env.meta=g,e.Loader=function(t){var n=this;t=t||{},E=g.md5,n.context=e,n.base=e.Env.meta.base+e.Env.meta.root,n.comboBase=e.Env.meta.comboBase,n.combine=t.base&&t.base.indexOf(n.comboBase.substr(0,20))>-1,n.comboSep="&",n.maxURLLength=i,n.ignoreRegistered=t.ignoreRegistered,n.root=e.Env.meta.root,n.timeout=0,n.forceMap={},n.allowRollup=!1,n.filters={},n.required={},n.patterns={},n.moduleInfo={},n.groups=e.merge(e.Env.meta.groups),n.skin=e.merge(e.Env.meta.skin),n.conditions={},n.config=t,n._internal=!0,n._populateCache(),n.loaded=o[c],n.async=!0,n._inspectPage(),n._internal=!1,n._config(t),n.forceMap=n.force?e.Array.hash(n.force):{},n.testresults=null,e.config.tests&&(n.testresults=e.config.tests),n.sorted=[],n.dirty=!0,n.inserted={},n.skipped={},n.tested={},n.ignoreRegistered&&n._resetModules()},e.Loader.prototype={_populateCache:function(){var t=this,n=g.modules,r=s._renderedMods,i;if(r&&!t.ignoreRegistered){for(i in r)r.hasOwnProperty(i)&&(t.moduleInfo[i]=e.merge(r[i]));r=s._conditions;for(i in r)r.hasOwnProperty(i)&&(t.conditions[i]=e.merge(r[i]))}else for(i in n)n.hasOwnProperty(i)&&t.addModule(n[i],i)},_resetModules:function(){var e=this,t,n,r,i,s;for(t in e.moduleInfo)if(e.moduleInfo.hasOwnProperty(t)){r=e.moduleInfo[t],i=r.name,s=YUI.Env.mods[i]?YUI.Env.mods[i].details:null,s&&(e.moduleInfo[i]._reset=!0,e.moduleInfo[i].requires=s.requires||[],e.moduleInfo[i].optional=s.optional||[],e.moduleInfo[i].supersedes=s.supercedes||[]);if(r.defaults)for(n in r.defaults)r.defaults.hasOwnProperty(n)&&r[n]&&(r[n]=r.defaults[n]);delete r.langCache,delete r.skinCache,r.skinnable&&e._addSkin(e.skin.defaultSkin,r.name)}},REGEX_CSS:/\.css(?:[?;].*)?$/i,FILTER_DEFS:{RAW:{searchExp:"-min\\.js",replaceStr:".js"},DEBUG:{searchExp:"-min\\.js",replaceStr:"-debug.js"},COVERAGE:{searchExp:"-min\\.js",replaceStr:"-coverage.js"}},_inspectPage:function(){var e=this,t,n,r,i,s;for(s in e.moduleInfo)e.moduleInfo.hasOwnProperty(s)&&(t=e.moduleInfo[s],t.type&&t.type===u&&e.isCSSLoaded(t.name)&&(e.loaded[s]=!0));for(s in w)w.hasOwnProperty(s)&&(t=w[s],t.details&&(n=e.moduleInfo[t.name],r=t.details.requires,i=n&&n.requires,n?!n._inspected&&r&&i.length!==r.length&&delete n.expanded:n=e.addModule(t.details,s),n._inspected=!0))},_requires:function(e,t){var n,r,i,s,o=this.moduleInfo,a=o[e],f=o[t];if(!a||!f)return!1;r=a.expanded_map,i=a.after_map;if(i&&t in i)return!0;i=f.after_map;if(i&&e in i)return!1;s=o[t]&&o[t].supersedes;if(s)for(n=0;n-1&&(k=n);if(C&&(C[c]||k&&C[k])){L=c,C[k]&&(L=k);for(n=0;n-1},getModule:function(t){if(!t)return null;var n,r,i,s=this.moduleInfo[t],o=this.patterns;if(!s||s&&s.ext)for(i in o)if(o.hasOwnProperty(i)){n=o[i],n.test||(n.test=this._patternTest);if(n.test(t,i)){r=n;break}}return s?r&&s&&r.configFn&&!s.configFn&&(s.configFn=r.configFn,s.configFn(s)):r&&(n.action?n.action.call(this,t,i):(s=this.addModule(e.merge(r),t),r.configFn&&(s.configFn=r.configFn),s.temp=!0)),s},_rollup:function(){},_reduce:function(e){e=e||this.required;var t,n,r,i,s=this.loadType,o=this.ignore?v.hash(this.ignore):!1;for(t in e)if(e.hasOwnProperty(t)){i=this.getModule(t),((this.loaded[t]||w[t])&&!this.forceMap[t]&&!this.ignoreRegistered||s&&i&&i.type!==s)&&delete e[t],o&&o[t]&&delete e[t],r=i&&i.supersedes;if(r)for(n=0;n0&&(m.running=!0,m.next()())},insert:function(t,n,r){var i=this,s=e.merge(this);delete s.require,delete s.dirty,m.add(function(){i._insert(s,t,n,r)}),this._continue()},loadNext:function(){return},_filter:function(e,t,n){var r=this.filter,i=t&&t in this.filters,s=i&&this.filters[t],o=n||(this.moduleInfo[t]?this.moduleInfo[t].group:null);return o&&this.groups[o]&&this.groups[o].filter&&(s=this.groups[o].filter,i=!0),e&&(i&&(r=b.isString(s)?this.FILTER_DEFS[s.toUpperCase()]||null:s),r&&(e=e.replace(new RegExp(r.searchExp,"g"),r.replaceStr))),e},_url:function(e,t,n){return this._filter((n||this.base||"")+e,t)},resolve:function(e,t){var r,s,o,f,c,h,p,d,v,m,g,y,w,E,S=[],x,T,N={},C=this,k,A,O=C.ignoreRegistered?{}:C.inserted,M={js:[],jsMods:[],css:[],cssMods:[]},_=C.loadType||"js",D;(C.skin.overrides||C.skin.defaultSkin!==l||C.ignoreRegistered)&&C._resetModules(),e&&C.calculate(),t=t||C.sorted,D=function(e){if(e){c=e.group&&C.groups[e.group]||n,c.async===!1&&(e.async=c.async),f=e.fullpath?C._filter(e.fullpath,t[s]):C._url(e.path,t[s],c.base||e.base);if(e.attributes||e.async===!1)f={url:f,async:e.async},e.attributes&&(f.attributes=e.attributes);M[e.type].push(f),M[e.type+"Mods"].push(e)}},r=t.length,y=C.comboBase,f=y,m={};for(s=0;sA){S=[];for(t=0;tA&&(o=S.pop(),x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)),S=[],o&&S.push(o));S.length&&(x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)))}else M[_].push(C._filter(x,null,N[w].group));M[_+"Mods"]=M[_+"Mods"].concat(g)}}return N=null,M},load:function(e){if(!e)return;var t=this,n=t.resolve(!0);t.data=n,t.onEnd=function(){e.apply(t.context||t,arguments)},t.insert()}}},"3.9.1",{requires:["get","features"]}),YUI.add("loader-rollup",function(e,t){e.Loader.prototype._rollup=function(){var e,t,n,r,i=this.required,s,o=this.moduleInfo,u,a,f;if(this.dirty||!this.rollups){this.rollups={};for(e in o)o.hasOwnProperty(e)&&(n=this.getModule(e),n&&n.rollup&&(this.rollups[e]=n))}for(;;){u=!1;for(e in this.rollups)if(this.rollups.hasOwnProperty(e)&&!i[e]&&(!this.loaded[e]||this.forceMap[e])){n=this.getModule(e),r=n.supersedes||[],s=!1;if(!n.rollup)continue;a=0;for(t=0;t=n.rollup;if(s)break}}s&&(i[e]=!0,u=!0,this.getRequires(n))}if(!u)break}}},"3.9.1",{requires:["loader-base"]}),YUI.add("loader-yui3",function(e,t){YUI.Env[e.version].modules=YUI.Env[e.version].modules||{},e.mix(YUI.Env[e.version].modules,{"align-plugin":{requires:["node-screen","node-pluginhost"]},anim:{use:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"]},"anim-base":{requires:["base-base","node-style"]},"anim-color":{requires:["anim-base"]},"anim-curve":{requires:["anim-xy"]},"anim-easing":{requires:["anim-base"]},"anim-node-plugin":{requires:["node-pluginhost","anim-base"]},"anim-scroll":{requires:["anim-base"]},"anim-shape":{requires:["anim-base","anim-easing","anim-color","matrix"]},"anim-shape-transform":{use:["anim-shape"]},"anim-xy":{requires:["anim-base","node-screen"]},app:{use:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"]},"app-base":{requires:["classnamemanager","pjax-base","router","view"]},"app-content":{requires:["app-base","pjax-content"]},"app-transitions":{requires:["app-base"]},"app-transitions-css":{type:"css"},"app-transitions-native":{condition:{name:"app-transitions-native" -,test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"},requires:["app-transitions","app-transitions-css","parallel","transition"]},"array-extras":{requires:["yui-base"]},"array-invoke":{requires:["yui-base"]},arraylist:{requires:["yui-base"]},"arraylist-add":{requires:["arraylist"]},"arraylist-filter":{requires:["arraylist"]},arraysort:{requires:["yui-base"]},"async-queue":{requires:["event-custom"]},attribute:{use:["attribute-base","attribute-complex"]},"attribute-base":{requires:["attribute-core","attribute-observable","attribute-extras"]},"attribute-complex":{requires:["attribute-base"]},"attribute-core":{requires:["oop"]},"attribute-events":{use:["attribute-observable"]},"attribute-extras":{requires:["oop"]},"attribute-observable":{requires:["event-custom"]},autocomplete:{use:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"]},"autocomplete-base":{optional:["autocomplete-sources"],requires:["array-extras","base-build","escape","event-valuechange","node-base"]},"autocomplete-filters":{requires:["array-extras","text-wordbreak"]},"autocomplete-filters-accentfold":{requires:["array-extras","text-accentfold","text-wordbreak"]},"autocomplete-highlighters":{requires:["array-extras","highlight-base"]},"autocomplete-highlighters-accentfold":{requires:["array-extras","highlight-accentfold"]},"autocomplete-list":{after:["autocomplete-sources"],lang:["en","es"],requires:["autocomplete-base","event-resize","node-screen","selector-css3","shim-plugin","widget","widget-position","widget-position-align"],skinnable:!0},"autocomplete-list-keys":{condition:{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"},requires:["autocomplete-list","base-build"]},"autocomplete-plugin":{requires:["autocomplete-list","node-pluginhost"]},"autocomplete-sources":{optional:["io-base","json-parse","jsonp","yql"],requires:["autocomplete-base"]},axes:{use:["axis-numeric","axis-category","axis-time","axis-stacked"]},"axes-base":{use:["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"]},axis:{requires:["dom","widget","widget-position","widget-stack","graphics","axis-base"]},"axis-base":{requires:["classnamemanager","datatype-number","datatype-date","base","event-custom"]},"axis-category":{requires:["axis","axis-category-base"]},"axis-category-base":{requires:["axis-base"]},"axis-numeric":{requires:["axis","axis-numeric-base"]},"axis-numeric-base":{requires:["axis-base"]},"axis-stacked":{requires:["axis-numeric","axis-stacked-base"]},"axis-stacked-base":{requires:["axis-numeric-base"]},"axis-time":{requires:["axis","axis-time-base"]},"axis-time-base":{requires:["axis-base"]},base:{use:["base-base","base-pluginhost","base-build"]},"base-base":{requires:["attribute-base","base-core","base-observable"]},"base-build":{requires:["base-base"]},"base-core":{requires:["attribute-core"]},"base-observable":{requires:["attribute-observable"]},"base-pluginhost":{requires:["base-base","pluginhost"]},button:{requires:["button-core","cssbutton","widget"]},"button-core":{requires:["attribute-core","classnamemanager","node-base"]},"button-group":{requires:["button-plugin","cssbutton","widget"]},"button-plugin":{requires:["button-core","cssbutton","node-pluginhost"]},cache:{use:["cache-base","cache-offline","cache-plugin"]},"cache-base":{requires:["base"]},"cache-offline":{requires:["cache-base","json"]},"cache-plugin":{requires:["plugin","cache-base"]},calendar:{lang:["de","en","es","es-AR","fr","it","ja","nb-NO","nl","pt-BR","ru","zh-HANT-TW"],requires:["calendar-base","calendarnavigator"],skinnable:!0},"calendar-base":{lang:["de","en","es","es-AR","fr","it","ja","nb-NO","nl","pt-BR","ru","zh-HANT-TW"],requires:["widget","datatype-date","datatype-date-math","cssgrids"],skinnable:!0},calendarnavigator:{requires:["plugin","classnamemanager","datatype-date","node"],skinnable:!0},charts:{use:["charts-base"]},"charts-base":{requires:["dom","event-mouseenter","event-touch","graphics-group","axes","series-pie","series-line","series-marker","series-area","series-spline","series-column","series-bar","series-areaspline","series-combo","series-combospline","series-line-stacked","series-marker-stacked","series-area-stacked","series-spline-stacked","series-column-stacked","series-bar-stacked","series-areaspline-stacked","series-combo-stacked","series-combospline-stacked"]},"charts-legend":{requires:["charts-base"]},classnamemanager:{requires:["yui-base"]},"clickable-rail":{requires:["slider-base"]},collection:{use:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"]},color:{use:["color-base","color-hsl","color-harmony"]},"color-base":{requires:["yui-base"]},"color-harmony":{requires:["color-hsl"]},"color-hsl":{requires:["color-base"]},"color-hsv":{requires:["color-base"]},console:{lang:["en","es","ja"],requires:["yui-log","widget"],skinnable:!0},"console-filters":{requires:["plugin","console"],skinnable:!0},controller:{use:["router"]},cookie:{requires:["yui-base"]},"createlink-base":{requires:["editor-base"]},cssbase:{after:["cssreset","cssfonts","cssgrids","cssreset-context","cssfonts-context","cssgrids-context"],type:"css"},"cssbase-context":{after:["cssreset","cssfonts","cssgrids","cssreset-context","cssfonts-context","cssgrids-context"],type:"css"},cssbutton:{type:"css"},cssfonts:{type:"css"},"cssfonts-context":{type:"css"},cssgrids:{optional:["cssreset","cssfonts"],type:"css"},"cssgrids-base":{optional:["cssreset","cssfonts"],type:"css"},"cssgrids-responsive":{optional:["cssreset","cssfonts"],requires:["cssgrids","cssgrids-responsive-base"],type:"css"},"cssgrids-units":{optional:["cssreset","cssfonts"],requires:["cssgrids-base"],type:"css"},cssnormalize:{type:"css"},"cssnormalize-context":{type:"css"},cssreset:{type:"css"},"cssreset-context":{type:"css"},dataschema:{use:["dataschema-base" -,"dataschema-json","dataschema-xml","dataschema-array","dataschema-text"]},"dataschema-array":{requires:["dataschema-base"]},"dataschema-base":{requires:["base"]},"dataschema-json":{requires:["dataschema-base","json"]},"dataschema-text":{requires:["dataschema-base"]},"dataschema-xml":{requires:["dataschema-base"]},datasource:{use:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"]},"datasource-arrayschema":{requires:["datasource-local","plugin","dataschema-array"]},"datasource-cache":{requires:["datasource-local","plugin","cache-base"]},"datasource-function":{requires:["datasource-local"]},"datasource-get":{requires:["datasource-local","get"]},"datasource-io":{requires:["datasource-local","io-base"]},"datasource-jsonschema":{requires:["datasource-local","plugin","dataschema-json"]},"datasource-local":{requires:["base"]},"datasource-polling":{requires:["datasource-local"]},"datasource-textschema":{requires:["datasource-local","plugin","dataschema-text"]},"datasource-xmlschema":{requires:["datasource-local","plugin","datatype-xml","dataschema-xml"]},datatable:{use:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"]},"datatable-base":{requires:["datatable-core","datatable-table","datatable-head","datatable-body","base-build","widget"],skinnable:!0},"datatable-body":{requires:["datatable-core","view","classnamemanager"]},"datatable-column-widths":{requires:["datatable-base"]},"datatable-core":{requires:["escape","model-list","node-event-delegate"]},"datatable-datasource":{requires:["datatable-base","plugin","datasource-local"]},"datatable-formatters":{requires:["datatable-body","datatype-number-format","datatype-date-format","escape"]},"datatable-head":{requires:["datatable-core","view","classnamemanager"]},"datatable-message":{lang:["en","fr","es"],requires:["datatable-base"],skinnable:!0},"datatable-mutable":{requires:["datatable-base"]},"datatable-scroll":{requires:["datatable-base","datatable-column-widths","dom-screen"],skinnable:!0},"datatable-sort":{lang:["en","fr","es"],requires:["datatable-base"],skinnable:!0},"datatable-table":{requires:["datatable-core","datatable-head","datatable-body","view","classnamemanager"]},datatype:{use:["datatype-date","datatype-number","datatype-xml"]},"datatype-date":{use:["datatype-date-parse","datatype-date-format","datatype-date-math"]},"datatype-date-format":{lang:["ar","ar-JO","ca","ca-ES","da","da-DK","de","de-AT","de-DE","el","el-GR","en","en-AU","en-CA","en-GB","en-IE","en-IN","en-JO","en-MY","en-NZ","en-PH","en-SG","en-US","es","es-AR","es-BO","es-CL","es-CO","es-EC","es-ES","es-MX","es-PE","es-PY","es-US","es-UY","es-VE","fi","fi-FI","fr","fr-BE","fr-CA","fr-FR","hi","hi-IN","id","id-ID","it","it-IT","ja","ja-JP","ko","ko-KR","ms","ms-MY","nb","nb-NO","nl","nl-BE","nl-NL","pl","pl-PL","pt","pt-BR","ro","ro-RO","ru","ru-RU","sv","sv-SE","th","th-TH","tr","tr-TR","vi","vi-VN","zh-Hans","zh-Hans-CN","zh-Hant","zh-Hant-HK","zh-Hant-TW"]},"datatype-date-math":{requires:["yui-base"]},"datatype-date-parse":{},"datatype-number":{use:["datatype-number-parse","datatype-number-format"]},"datatype-number-format":{},"datatype-number-parse":{},"datatype-xml":{use:["datatype-xml-parse","datatype-xml-format"]},"datatype-xml-format":{},"datatype-xml-parse":{},dd:{use:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"]},"dd-constrain":{requires:["dd-drag"]},"dd-ddm":{requires:["dd-ddm-base","event-resize"]},"dd-ddm-base":{requires:["node","base","yui-throttle","classnamemanager"]},"dd-ddm-drop":{requires:["dd-ddm"]},"dd-delegate":{requires:["dd-drag","dd-drop-plugin","event-mouseenter"]},"dd-drag":{requires:["dd-ddm-base"]},"dd-drop":{requires:["dd-drag","dd-ddm-drop"]},"dd-drop-plugin":{requires:["dd-drop"]},"dd-gestures":{condition:{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"},requires:["dd-drag","event-synthetic","event-gestures"]},"dd-plugin":{optional:["dd-constrain","dd-proxy"],requires:["dd-drag"]},"dd-proxy":{requires:["dd-drag"]},"dd-scroll":{requires:["dd-drag"]},dial:{lang:["en","es"],requires:["widget","dd-drag","event-mouseenter","event-move","event-key","transition","intl"],skinnable:!0},dom:{use:["dom-base","dom-screen","dom-style","selector-native","selector"]},"dom-base":{requires:["dom-core"]},"dom-core":{requires:["oop","features"]},"dom-deprecated":{requires:["dom-base"]},"dom-screen":{requires:["dom-base","dom-style"]},"dom-style":{requires:["dom-base"]},"dom-style-ie":{condition:{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"},requires:["dom-style"]},dump:{requires:["yui-base"]},editor:{use:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"]},"editor-base":{requires:["base","frame","node","exec-command","editor-selection"]},"editor-bidi":{requires:["editor-base"]},"editor-br":{requires:["editor-base"]},"editor-lists":{requires:["editor-base"]},"editor-para":{requires:["editor-para-base"]},"editor-para-base":{requires:["editor-base"]},"editor-para-ie":{condition:{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"},requires:["editor-para-base"]},"editor-selection":{requires:["node"]},"editor-tab":{requires:["editor-base"]},escape:{requires:["yui-base"]},event:{after:["node-base"],use:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key" -,"event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"]},"event-base":{after:["node-base"],requires:["event-custom-base"]},"event-base-ie":{after:["event-base"],condition:{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"},requires:["node-base"]},"event-contextmenu":{requires:["event-synthetic","dom-screen"]},"event-custom":{use:["event-custom-base","event-custom-complex"]},"event-custom-base":{requires:["oop"]},"event-custom-complex":{requires:["event-custom-base"]},"event-delegate":{requires:["node-base"]},"event-flick":{requires:["node-base","event-touch","event-synthetic"]},"event-focus":{requires:["event-synthetic"]},"event-gestures":{use:["event-flick","event-move"]},"event-hover":{requires:["event-mouseenter"]},"event-key":{requires:["event-synthetic"]},"event-mouseenter":{requires:["event-synthetic"]},"event-mousewheel":{requires:["node-base"]},"event-move":{requires:["node-base","event-touch","event-synthetic"]},"event-outside":{requires:["event-synthetic"]},"event-resize":{requires:["node-base","event-synthetic"]},"event-simulate":{requires:["event-base"]},"event-synthetic":{requires:["node-base","event-custom-complex"]},"event-tap":{requires:["node-base","event-base","event-touch","event-synthetic"]},"event-touch":{requires:["node-base"]},"event-valuechange":{requires:["event-focus","event-synthetic"]},"exec-command":{requires:["frame"]},features:{requires:["yui-base"]},file:{requires:["file-flash","file-html5"]},"file-flash":{requires:["base"]},"file-html5":{requires:["base"]},frame:{requires:["base","node","selector-css3","yui-throttle"]},"gesture-simulate":{requires:["async-queue","event-simulate","node-screen"]},get:{requires:["yui-base"]},graphics:{requires:["node","event-custom","pluginhost","matrix","classnamemanager"]},"graphics-canvas":{condition:{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"},requires:["graphics"]},"graphics-canvas-default":{condition:{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}},"graphics-group":{requires:["graphics"]},"graphics-svg":{condition:{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"},requires:["graphics"]},"graphics-svg-default":{condition:{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}},"graphics-vml":{condition:{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"},requires:["graphics"]},"graphics-vml-default":{condition:{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}},handlebars:{use:["handlebars-compiler"]},"handlebars-base":{requires:[]},"handlebars-compiler":{requires:["handlebars-base"]},highlight:{use:["highlight-base","highlight-accentfold"]},"highlight-accentfold":{requires:["highlight-base","text-accentfold"]},"highlight-base":{requires:["array-extras","classnamemanager","escape","text-wordbreak"]},history:{use:["history-base","history-hash","history-hash-ie","history-html5"]},"history-base":{requires:["event-custom-complex"]},"history-hash":{after:["history-html5"],requires:["event-synthetic","history-base","yui-later"]},"history-hash-ie":{condition:{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"},requires:["history-hash","node-base"]},"history-html5":{optional:["json"],requires:["event-base","history-base","node-base"]},imageloader:{requires:["base-base","node-style","node-screen"]},intl:{requires:["intl-base","event-custom"]},"intl-base":{requires:["yui-base"]},io:{use:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"]},"io-base":{requires:["event-custom-base","querystring-stringify-simple"]},"io-form":{requires:["io-base","node-base"]},"io-nodejs":{condition:{name:"io-nodejs",trigger:"io-base",ua:"nodejs"},requires:["io-base"]},"io-queue":{requires:["io-base","queue-promote"]},"io-upload-iframe":{requires:["io-base","node-base"]},"io-xdr":{requires:["io-base","datatype-xml-parse"]},json:{use:["json-parse","json-stringify"]},"json-parse":{requires:["yui-base"]},"json-parse-shim":{condition:{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"},requires:["json-parse"]},"json-stringify":{requires:["yui-base"]},"json-stringify-shim":{condition:{name:"json-stringify-shim" -,test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"},requires:["json-stringify"]},jsonp:{requires:["get","oop"]},"jsonp-url":{requires:["jsonp"]},"lazy-model-list":{requires:["model-list"]},loader:{use:["loader-base","loader-rollup","loader-yui3"]},"loader-base":{requires:["get","features"]},"loader-rollup":{requires:["loader-base"]},"loader-yui3":{requires:["loader-base"]},matrix:{requires:["yui-base"]},model:{requires:["base-build","escape","json-parse"]},"model-list":{requires:["array-extras","array-invoke","arraylist","base-build","escape","json-parse","model"]},"model-sync-rest":{requires:["model","io-base","json-stringify"]},node:{use:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"]},"node-base":{requires:["event-base","node-core","dom-base"]},"node-core":{requires:["dom-core","selector"]},"node-deprecated":{requires:["node-base"]},"node-event-delegate":{requires:["node-base","event-delegate"]},"node-event-html5":{requires:["node-base"]},"node-event-simulate":{requires:["node-base","event-simulate","gesture-simulate"]},"node-flick":{requires:["classnamemanager","transition","event-flick","plugin"],skinnable:!0},"node-focusmanager":{requires:["attribute","node","plugin","node-event-simulate","event-key","event-focus"]},"node-load":{requires:["node-base","io-base"]},"node-menunav":{requires:["node","classnamemanager","plugin","node-focusmanager"],skinnable:!0},"node-pluginhost":{requires:["node-base","pluginhost"]},"node-screen":{requires:["dom-screen","node-base"]},"node-scroll-info":{requires:["base-build","dom-screen","event-resize","node-pluginhost","plugin"]},"node-style":{requires:["dom-style","node-base"]},oop:{requires:["yui-base"]},overlay:{requires:["widget","widget-stdmod","widget-position","widget-position-align","widget-stack","widget-position-constrain"],skinnable:!0},panel:{requires:["widget","widget-autohide","widget-buttons","widget-modality","widget-position","widget-position-align","widget-position-constrain","widget-stack","widget-stdmod"],skinnable:!0},parallel:{requires:["yui-base"]},pjax:{requires:["pjax-base","pjax-content"]},"pjax-base":{requires:["classnamemanager","node-event-delegate","router"]},"pjax-content":{requires:["io-base","node-base","router"]},"pjax-plugin":{requires:["node-pluginhost","pjax","plugin"]},plugin:{requires:["base-base"]},pluginhost:{use:["pluginhost-base","pluginhost-config"]},"pluginhost-base":{requires:["yui-base"]},"pluginhost-config":{requires:["pluginhost-base"]},profiler:{requires:["yui-base"]},promise:{requires:["timers"]},querystring:{use:["querystring-parse","querystring-stringify"]},"querystring-parse":{requires:["yui-base","array-extras"]},"querystring-parse-simple":{requires:["yui-base"]},"querystring-stringify":{requires:["yui-base"]},"querystring-stringify-simple":{requires:["yui-base"]},"queue-promote":{requires:["yui-base"]},"range-slider":{requires:["slider-base","slider-value-range","clickable-rail"]},recordset:{use:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"]},"recordset-base":{requires:["base","arraylist"]},"recordset-filter":{requires:["recordset-base","array-extras","plugin"]},"recordset-indexer":{requires:["recordset-base","plugin"]},"recordset-sort":{requires:["arraysort","recordset-base","plugin"]},resize:{use:["resize-base","resize-proxy","resize-constrain"]},"resize-base":{requires:["base","widget","event","oop","dd-drag","dd-delegate","dd-drop"],skinnable:!0},"resize-constrain":{requires:["plugin","resize-base"]},"resize-plugin":{optional:["resize-constrain"],requires:["resize-base","plugin"]},"resize-proxy":{requires:["plugin","resize-base"]},router:{optional:["querystring-parse"],requires:["array-extras","base-build","history"]},scrollview:{requires:["scrollview-base","scrollview-scrollbars"]},"scrollview-base":{requires:["widget","event-gestures","event-mousewheel","transition"],skinnable:!0},"scrollview-base-ie":{condition:{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"},requires:["scrollview-base"]},"scrollview-list":{requires:["plugin","classnamemanager"],skinnable:!0},"scrollview-paginator":{requires:["plugin","classnamemanager"]},"scrollview-scrollbars":{requires:["classnamemanager","transition","plugin"],skinnable:!0},selector:{requires:["selector-native"]},"selector-css2":{condition:{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"},requires:["selector-native"]},"selector-css3":{requires:["selector-native","selector-css2"]},"selector-native":{requires:["dom-base"]},"series-area":{requires:["series-cartesian","series-fill-util"]},"series-area-stacked":{requires:["series-stacked","series-area"]},"series-areaspline":{requires:["series-area","series-curve-util"]},"series-areaspline-stacked":{requires:["series-stacked","series-areaspline"]},"series-bar":{requires:["series-marker","series-histogram-base"]},"series-bar-stacked":{requires:["series-stacked","series-bar"]},"series-base":{requires:["graphics","axis-base"]},"series-candlestick":{requires:["series-range"]},"series-cartesian":{requires:["series-base"]},"series-column":{requires:["series-marker","series-histogram-base"]},"series-column-stacked":{requires:["series-stacked","series-column"]},"series-combo":{requires:["series-cartesian","series-line-util","series-plot-util","series-fill-util"]},"series-combo-stacked":{requires:["series-stacked","series-combo"]},"series-combospline":{requires:["series-combo","series-curve-util"]},"series-combospline-stacked":{requires:["series-combo-stacked","series-curve-util"]},"series-curve-util":{},"series-fill-util":{},"series-histogram-base":{requires:["series-cartesian","series-plot-util"]},"series-line":{requires:["series-cartesian","series-line-util"]},"series-line-stacked":{requires:["series-stacked" -,"series-line"]},"series-line-util":{},"series-marker":{requires:["series-cartesian","series-plot-util"]},"series-marker-stacked":{requires:["series-stacked","series-marker"]},"series-ohlc":{requires:["series-range"]},"series-pie":{requires:["series-base","series-plot-util"]},"series-plot-util":{},"series-range":{requires:["series-cartesian"]},"series-spline":{requires:["series-line","series-curve-util"]},"series-spline-stacked":{requires:["series-stacked","series-spline"]},"series-stacked":{requires:["axis-stacked"]},"shim-plugin":{requires:["node-style","node-pluginhost"]},slider:{use:["slider-base","slider-value-range","clickable-rail","range-slider"]},"slider-base":{requires:["widget","dd-constrain","event-key"],skinnable:!0},"slider-value-range":{requires:["slider-base"]},sortable:{requires:["dd-delegate","dd-drop-plugin","dd-proxy"]},"sortable-scroll":{requires:["dd-scroll","sortable"]},stylesheet:{requires:["yui-base"]},substitute:{optional:["dump"],requires:["yui-base"]},swf:{requires:["event-custom","node","swfdetect","escape"]},swfdetect:{requires:["yui-base"]},tabview:{requires:["widget","widget-parent","widget-child","tabview-base","node-pluginhost","node-focusmanager"],skinnable:!0},"tabview-base":{requires:["node-event-delegate","classnamemanager","skin-sam-tabview"]},"tabview-plugin":{requires:["tabview-base"]},template:{use:["template-base","template-micro"]},"template-base":{requires:["yui-base"]},"template-micro":{requires:["escape"]},test:{requires:["event-simulate","event-custom","json-stringify"]},"test-console":{requires:["console-filters","test","array-extras"],skinnable:!0},text:{use:["text-accentfold","text-wordbreak"]},"text-accentfold":{requires:["array-extras","text-data-accentfold"]},"text-data-accentfold":{requires:["yui-base"]},"text-data-wordbreak":{requires:["yui-base"]},"text-wordbreak":{requires:["array-extras","text-data-wordbreak"]},timers:{requires:["yui-base"]},transition:{requires:["node-style"]},"transition-timer":{condition:{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"},requires:["transition"]},tree:{requires:["base-build","tree-node"]},"tree-labelable":{requires:["tree"]},"tree-lazy":{requires:["base-pluginhost","plugin","tree"]},"tree-node":{},"tree-openable":{requires:["tree"]},"tree-selectable":{requires:["tree"]},uploader:{requires:["uploader-html5","uploader-flash"]},"uploader-flash":{requires:["swf","widget","base","cssbutton","node","event-custom","file-flash","uploader-queue"]},"uploader-html5":{requires:["widget","node-event-simulate","file-html5","uploader-queue"]},"uploader-queue":{requires:["base"]},view:{requires:["base-build","node-event-delegate"]},"view-node-map":{requires:["view"]},widget:{use:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]},"widget-anim":{requires:["anim-base","plugin","widget"]},"widget-autohide":{requires:["base-build","event-key","event-outside","widget"]},"widget-base":{requires:["attribute","base-base","base-pluginhost","classnamemanager","event-focus","node-base","node-style"],skinnable:!0},"widget-base-ie":{condition:{name:"widget-base-ie",trigger:"widget-base",ua:"ie"},requires:["widget-base"]},"widget-buttons":{requires:["button-plugin","cssbutton","widget-stdmod"]},"widget-child":{requires:["base-build","widget"]},"widget-htmlparser":{requires:["widget-base"]},"widget-locale":{requires:["widget-base"]},"widget-modality":{requires:["base-build","event-outside","widget"],skinnable:!0},"widget-parent":{requires:["arraylist","base-build","widget"]},"widget-position":{requires:["base-build","node-screen","widget"]},"widget-position-align":{requires:["widget-position"]},"widget-position-constrain":{requires:["widget-position"]},"widget-skin":{requires:["widget-base"]},"widget-stack":{requires:["base-build","widget"],skinnable:!0},"widget-stdmod":{requires:["base-build","widget"]},"widget-uievents":{requires:["node-event-delegate","widget-base"]},yql:{requires:["oop"]},"yql-jsonp":{condition:{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"},requires:["jsonp","jsonp-url"]},"yql-nodejs":{condition:{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}},"yql-winjs":{condition:{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"}},yui:{},"yui-base":{},"yui-later":{requires:["yui-base"]},"yui-log":{requires:["yui-base"]},"yui-throttle":{requires:["yui-base"]}}),YUI.Env[e.version].md5="660f328e92276f36e9abfafb02169183"},"3.9.1",{requires:["loader-base"]}),YUI.add("yui",function(e,t){},"3.9.1",{use:["get","features","intl-base","yui-log","yui-log-nodejs","yui-later","loader-base","loader-rollup","loader-yui3"]}); diff --git a/lib/yuilib/3.9.1/build/yui-throttle/yui-throttle-min.js b/lib/yuilib/3.9.1/build/yui-throttle/yui-throttle-min.js deleted file mode 100644 index 32d7a9ef644..00000000000 --- a/lib/yuilib/3.9.1/build/yui-throttle/yui-throttle-min.js +++ /dev/null @@ -1,4 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -YUI.add("yui-throttle",function(e,t){ -/*! Based on work by Simon Willison: http://gist.github.com/292562 */ -;e.throttle=function(t,n){n=n?n:e.config.throttleTime||150;if(n===-1)return function(){t.apply(null,arguments)};var r=e.Lang.now();return function(){var i=e.Lang.now();i-r>n&&(r=i,t.apply(null,arguments))}}},"3.9.1",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.9.1/build/yui/yui-min.js b/lib/yuilib/3.9.1/build/yui/yui-min.js deleted file mode 100644 index 61fb4013128..00000000000 --- a/lib/yuilib/3.9.1/build/yui/yui-min.js +++ /dev/null @@ -1,16 +0,0 @@ -/* YUI 3.9.1 (build 5852) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */ -typeof YUI!="undefined"&&(YUI._YUI=YUI);var YUI=function(){var e=0,t=this,n=arguments,r=n.length,i=function(e,t){return e&&e.hasOwnProperty&&e instanceof t},s=typeof YUI_config!="undefined"&&YUI_config;i(t,YUI)?(t._init(),YUI.GlobalConfig&&t.applyConfig(YUI.GlobalConfig),s&&t.applyConfig(s),r||t._setup()):t=new YUI;if(r){for(;e-1&&(n="3.5.0"),e={applyConfig:function(e){e=e||u;var t,n,r=this.config,i=r.modules,s=r.groups,o=r.aliases,a=this.Env._loader;for(n in e)e.hasOwnProperty(n)&&(t=e[n],i&&n=="modules"?E(i,t):o&&n=="aliases"?E(o,t):s&&n=="groups"?E(s,t):n=="win"?(r[n]=t&&t.contentWindow||t,r.doc=r[n]?r[n].document:null):n!="_yuid"&&(r[n]=t));a&&a._config(e)},_config:function(e){this.applyConfig(e)},_init:function(){var e,t,r=this,s=YUI.Env,u=r.Env,a;r.version=n;if(!u){r.Env={core:["get","features","intl-base","yui-log","yui-later","loader-base","loader-rollup","loader-yui3"],loaderExtras:["loader-rollup","loader-yui3"],mods:{},versions:{},base:i,cdn:i+n+"/build/",_idx:0,_used:{},_attached:{},_missed:[],_yidx:0,_uidx:0,_guidp:"y",_loaded:{},_BASE_RE:/(?:\?(?:[^&]*&)*([^&]*))?\b(simpleyui|yui(?:-\w+)?)\/\2(?:-(min|debug))?\.js/,parseBasePath:function(e,t){var n=e.match(t),r,i;return n&&(r=RegExp.leftContext||e.slice(0,e.indexOf(n[0])),i=n[3],n[1]&&(r+="?"+n[1]),r={filter:i,path:r}),r},getBase:s&&s.getBase||function(t){var n=h&&h.getElementsByTagName("script")||[],i=u.cdn,s,o,a,f;for(o=0,a=n.length;o',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},h.indexOf=f._isNative(l.indexOf)?function(e,t,n){return l.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,d):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},g.each=function(t,n,r,i){var s;for(s in t)(i||E(t,s))&&n.call(r||e,t[s],s,t);return e},g.some=function(t,n,r,i){var s;for(s in t)if(i||E(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},g.getValue=function(t,n){if(!f.isObject(t))return m;var r,i=e.Array(n),s=i.length;for(r=0;t!==m&&r=0){for(i=0;u!==m&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"3.9.1",{use:["yui-base","get","features","intl-base","yui-log","yui-later","loader-base","loader-rollup","loader-yui3"]}),YUI.add("get",function(e,t){var n=e.Lang,r,i,s;e.Get=i={cssOptions:{attributes:{rel:"stylesheet"},doc:e.config.linkDoc||e.config.doc,pollInterval:50},jsOptions:{autopurge:!0,doc:e.config.scriptDoc||e.config.doc},options:{attributes:{charset:"utf-8"},purgethreshold:20},REGEX_CSS:/\.css(?:[?;].*)?$/i,REGEX_JS:/\.js(?:[?;].*)?$/i,_insertCache:{},_pending:null,_purgeNodes:[],_queue:[],abort:function(e){var t,n,r,i,s;if(!e.abort){n=e,s=this._pending,e=null;if(s&&s.transaction.id===n)e=s.transaction,this._pending=null;else for(t=0,i=this._queue.length;t=e&&this._purge(this._purgeNodes)},_getEnv:function(){var t=e.config.doc,n=e.UA;return this._env={async:t&&t.createElement("script").async===!0||n.ie>=10,cssFail:n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0,cssLoad:(!n.gecko&&!n.webkit||n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0)&&!(n.chrome&&n.chrome<=18),preservesScriptOrder:!!(n.gecko||n.opera||n.ie&&n.ie>=10)}},_getTransaction:function(t,r){var i=[],o,u,a,f;n.isArray(t)||(t=[t]),r=e.merge(this.options,r),r.attributes=e.merge(this.options.attributes,r.attributes);for(o=0,u=t.length;o-1&&n.splice(i,1))}}},i.script=i.js,i.Transaction=s=function(t,n){var r=this;r.id=s._lastId+=1,r.data=n.data,r.errors=[],r.nodes=[],r.options=n,r.requests=t,r._callbacks=[],r._queue=[],r._reqsWaiting=0,r.tId=r.id,r.win=n.win||e.config.win},s._lastId=0,s.prototype={_state:"new",abort:function(e){this._pending=null,this._pendingCSS=null,this._pollTimer=clearTimeout(this._pollTimer),this._queue=[],this._reqsWaiting=0,this.errors.push({error:e||"Aborted"}),this._finish()},execute:function(e){var t=this,n=t.requests,r=t._state,i,s,o,u;if(r==="done"){e&&e(t.errors.length?t.errors:null,t);return}e&&t._callbacks.push(e);if(r==="executing")return;t._state="executing",t._queue=o=[],t.options.timeout&&(t._timeout=setTimeout(function(){t.abort("Timeout")},t.options.timeout)),t._reqsWaiting=n.length;for(i=0,s=n.length;i=10?(o.onerror=function(){setTimeout(c,0)},o.onload=function(){setTimeout(h,0)}):(o.onerror=c,o.onload=h),!n.cssFail&&!s&&(f=setTimeout(c,t.timeout||3e3))),this.nodes.push(o),r.parentNode.insertBefore(o,r)},_next:function(){if(this._pending)return;this._queue.length?this._insert(this._queue.shift()):this._reqsWaiting||this._finish()},_poll:function(t){var n=this,r=n._pendingCSS,i=e.UA.webkit,s,o,u,a,f,l;if(t){r||(r=n._pendingCSS=[]),r.push(t);if(n._pollTimer)return}n._pollTimer=null;for(s=0;s=0)if(l[u].href===a){r.splice(s,1),s-=1,n._progress(null,f);break}}else try{o=!!f.node.sheet.cssRules,r.splice(s,1),s-=1,n._progress(null,f)}catch(c){}}r.length&&(n._pollTimer=setTimeout(function(){n._poll.call(n)},n.options.pollInterval))},_progress:function(e,t){var n=this.options;e&&(t.error=e,this.errors.push({error:e,request:t})),t.node._yuiget_finished=t.finished=!0,n.onProgress&&n.onProgress.call(n.context||this,this._getEventData(t)),t.autopurge&&(i._autoPurge(this.options.purgethreshold),i._purgeNodes.push(t.node)),this._pending===t&&(this._pending=null),this._reqsWaiting-=1,this._next()}}},"3.9.1",{requires:["yui-base"]}),YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity" -)&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"3.9.1",{requires:["yui-base"]}),YUI.add("intl-base",function(e,t){var n=/[, ]/;e.mix(e.namespace("Intl"),{lookupBestLang:function(t,r){function a(e){var t;for(t=0;t0){o=a(s);if(o)return o;u=s.lastIndexOf("-");if(!(u>=0))break;s=s.substring(0,u),u>=2&&s.charAt(u-2)==="-"&&(s=s.substring(0,u-2))}}return""}})},"3.9.1",{requires:["yui-base"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:1,warn:1,error:1};n.log=function(e,t,o,u){var a,f,l,c,h,p=n,d=p.config,v=p.fire?p:YUI.Env.globalEvents;return d.debug&&(o=o||"",typeof o!="undefined"&&(f=d.logExclude,l=d.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1),a||(d.useBrowserConsole&&(c=o?o+": "+e:e,p.Lang.isFunction(d.logFn)?d.logFn.call(p,e,t,o):typeof console!==i&&console.log?(h=t&&console[t]&&t in s?t:"log",console[h](c)):typeof opera!==i&&opera.postError(c)),v&&!u&&(v===p&&!v.getEvent(r)&&v.publish(r,{broadcast:2}),v.fire(r,{msg:e,cat:t,src:o})))),p},n.message=function(){return n.log.apply(n,arguments)}},"3.9.1",{requires:["yui-base"]}),YUI.add("yui-later",function(e,t){var n=[];e.later=function(t,r,i,s,o){t=t||0,s=e.Lang.isUndefined(s)?n:e.Array(s),r=r||e.config.win||e;var u=!1,a=r&&e.Lang.isString(i)?r[i]:i,f=function(){u||(a.apply?a.apply(r,s||n):a(s[0],s[1],s[2],s[3]))},l=o?setInterval(f,t):setTimeout(f,t);return{id:l,interval:o,cancel:function(){u=!0,this.interval?clearInterval(l):clearTimeout(l)}}},e.Lang.later=e.later},"3.9.1",{requires:["yui-base"]}),YUI.add("loader-base",function(e,t){YUI.Env[e.version]||function(){var t=e.version,n="/build/",r=t+n,i=e.Env.base,s="gallery-2013.02.27-21-03",o="2in3",u="4",a="2.9.0",f=i+"combo?",l={version:t,root:r,base:e.Env.base,comboBase:f,skin:{defaultSkin:"sam",base:"assets/skins/",path:"skin.css",after:["cssreset","cssfonts","cssgrids","cssbase","cssreset-context","cssfonts-context"]},groups:{},patterns:{}},c=l.groups,h=function(e,t,r){var s=o+"."+(e||u)+"/"+(t||a)+n,l=r&&r.base?r.base:i,h=r&&r.comboBase?r.comboBase:f;c.yui2.base=l+s,c.yui2.root=s,c.yui2.comboBase=h}, -p=function(e,t){var r=(e||s)+n,o=t&&t.base?t.base:i,u=t&&t.comboBase?t.comboBase:f;c.gallery.base=o+r,c.gallery.root=r,c.gallery.comboBase=u};c[t]={},c.gallery={ext:!1,combine:!0,comboBase:f,update:p,patterns:{"gallery-":{},"lang/gallery-":{},"gallerycss-":{type:"css"}}},c.yui2={combine:!0,ext:!1,comboBase:f,update:h,patterns:{"yui2-":{configFn:function(e){/-skin|reset|fonts|grids|base/.test(e.name)&&(e.type="css",e.path=e.path.replace(/\.js/,".css"),e.path=e.path.replace(/\/yui2-skin/,"/assets/skins/sam/yui2-skin"))}}}},p(),h(),YUI.Env[t]=l}();var n={},r=[],i=1024,s=YUI.Env,o=s._loaded,u="css",a="js",f="intl",l="sam",c=e.version,h="",p=e.Object,d=p.each,v=e.Array,m=s._loaderQueue,g=s[c],y="skin-",b=e.Lang,w=s.mods,E,S=function(e,t,n,r){var i=e+"/"+t;return r||(i+="-min"),i+="."+(n||u),i};YUI.Env._cssLoaded||(YUI.Env._cssLoaded={}),e.Env.meta=g,e.Loader=function(t){var n=this;t=t||{},E=g.md5,n.context=e,n.base=e.Env.meta.base+e.Env.meta.root,n.comboBase=e.Env.meta.comboBase,n.combine=t.base&&t.base.indexOf(n.comboBase.substr(0,20))>-1,n.comboSep="&",n.maxURLLength=i,n.ignoreRegistered=t.ignoreRegistered,n.root=e.Env.meta.root,n.timeout=0,n.forceMap={},n.allowRollup=!1,n.filters={},n.required={},n.patterns={},n.moduleInfo={},n.groups=e.merge(e.Env.meta.groups),n.skin=e.merge(e.Env.meta.skin),n.conditions={},n.config=t,n._internal=!0,n._populateCache(),n.loaded=o[c],n.async=!0,n._inspectPage(),n._internal=!1,n._config(t),n.forceMap=n.force?e.Array.hash(n.force):{},n.testresults=null,e.config.tests&&(n.testresults=e.config.tests),n.sorted=[],n.dirty=!0,n.inserted={},n.skipped={},n.tested={},n.ignoreRegistered&&n._resetModules()},e.Loader.prototype={_populateCache:function(){var t=this,n=g.modules,r=s._renderedMods,i;if(r&&!t.ignoreRegistered){for(i in r)r.hasOwnProperty(i)&&(t.moduleInfo[i]=e.merge(r[i]));r=s._conditions;for(i in r)r.hasOwnProperty(i)&&(t.conditions[i]=e.merge(r[i]))}else for(i in n)n.hasOwnProperty(i)&&t.addModule(n[i],i)},_resetModules:function(){var e=this,t,n,r,i,s;for(t in e.moduleInfo)if(e.moduleInfo.hasOwnProperty(t)){r=e.moduleInfo[t],i=r.name,s=YUI.Env.mods[i]?YUI.Env.mods[i].details:null,s&&(e.moduleInfo[i]._reset=!0,e.moduleInfo[i].requires=s.requires||[],e.moduleInfo[i].optional=s.optional||[],e.moduleInfo[i].supersedes=s.supercedes||[]);if(r.defaults)for(n in r.defaults)r.defaults.hasOwnProperty(n)&&r[n]&&(r[n]=r.defaults[n]);delete r.langCache,delete r.skinCache,r.skinnable&&e._addSkin(e.skin.defaultSkin,r.name)}},REGEX_CSS:/\.css(?:[?;].*)?$/i,FILTER_DEFS:{RAW:{searchExp:"-min\\.js",replaceStr:".js"},DEBUG:{searchExp:"-min\\.js",replaceStr:"-debug.js"},COVERAGE:{searchExp:"-min\\.js",replaceStr:"-coverage.js"}},_inspectPage:function(){var e=this,t,n,r,i,s;for(s in e.moduleInfo)e.moduleInfo.hasOwnProperty(s)&&(t=e.moduleInfo[s],t.type&&t.type===u&&e.isCSSLoaded(t.name)&&(e.loaded[s]=!0));for(s in w)w.hasOwnProperty(s)&&(t=w[s],t.details&&(n=e.moduleInfo[t.name],r=t.details.requires,i=n&&n.requires,n?!n._inspected&&r&&i.length!==r.length&&delete n.expanded:n=e.addModule(t.details,s),n._inspected=!0))},_requires:function(e,t){var n,r,i,s,o=this.moduleInfo,a=o[e],f=o[t];if(!a||!f)return!1;r=a.expanded_map,i=a.after_map;if(i&&t in i)return!0;i=f.after_map;if(i&&e in i)return!1;s=o[t]&&o[t].supersedes;if(s)for(n=0;n-1&&(k=n);if(C&&(C[c]||k&&C[k])){L=c,C[k]&&(L=k);for(n=0;n-1},getModule:function(t){if(!t)return null;var n,r,i,s=this.moduleInfo[t],o=this.patterns;if(!s||s&&s.ext)for(i in o)if(o.hasOwnProperty(i)){n=o[i],n.test||(n.test=this._patternTest);if(n.test(t,i)){r=n;break}}return s?r&&s&&r.configFn&&!s.configFn&&(s.configFn=r.configFn,s.configFn(s)):r&&(n.action?n.action.call(this,t,i):(s=this.addModule(e.merge(r),t),r.configFn&&(s.configFn=r.configFn),s.temp=!0)),s},_rollup:function(){},_reduce:function(e){e=e||this.required;var t,n,r,i,s=this.loadType,o=this.ignore?v.hash(this.ignore):!1;for(t in e)if(e.hasOwnProperty(t)){i=this.getModule(t),((this.loaded[t]||w[t])&&!this.forceMap[t]&&!this.ignoreRegistered||s&&i&&i.type!==s)&&delete e[t],o&&o[t]&&delete e[t],r=i&&i.supersedes;if(r)for(n=0;n0&&(m.running=!0,m.next()())},insert:function(t,n,r){var i=this,s=e.merge(this);delete s.require,delete s.dirty,m.add(function(){i._insert(s,t,n,r)}),this._continue()},loadNext:function(){return},_filter:function(e,t,n){var r=this.filter,i=t&&t in this.filters,s=i&&this.filters[t],o=n||(this.moduleInfo[t]?this.moduleInfo[t].group:null);return o&&this.groups[o]&&this.groups -[o].filter&&(s=this.groups[o].filter,i=!0),e&&(i&&(r=b.isString(s)?this.FILTER_DEFS[s.toUpperCase()]||null:s),r&&(e=e.replace(new RegExp(r.searchExp,"g"),r.replaceStr))),e},_url:function(e,t,n){return this._filter((n||this.base||"")+e,t)},resolve:function(e,t){var r,s,o,f,c,h,p,d,v,m,g,y,w,E,S=[],x,T,N={},C=this,k,A,O=C.ignoreRegistered?{}:C.inserted,M={js:[],jsMods:[],css:[],cssMods:[]},_=C.loadType||"js",D;(C.skin.overrides||C.skin.defaultSkin!==l||C.ignoreRegistered)&&C._resetModules(),e&&C.calculate(),t=t||C.sorted,D=function(e){if(e){c=e.group&&C.groups[e.group]||n,c.async===!1&&(e.async=c.async),f=e.fullpath?C._filter(e.fullpath,t[s]):C._url(e.path,t[s],c.base||e.base);if(e.attributes||e.async===!1)f={url:f,async:e.async},e.attributes&&(f.attributes=e.attributes);M[e.type].push(f),M[e.type+"Mods"].push(e)}},r=t.length,y=C.comboBase,f=y,m={};for(s=0;sA){S=[];for(t=0;tA&&(o=S.pop(),x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)),S=[],o&&S.push(o));S.length&&(x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)))}else M[_].push(C._filter(x,null,N[w].group));M[_+"Mods"]=M[_+"Mods"].concat(g)}}return N=null,M},load:function(e){if(!e)return;var t=this,n=t.resolve(!0);t.data=n,t.onEnd=function(){e.apply(t.context||t,arguments)},t.insert()}}},"3.9.1",{requires:["get","features"]}),YUI.add("loader-rollup",function(e,t){e.Loader.prototype._rollup=function(){var e,t,n,r,i=this.required,s,o=this.moduleInfo,u,a,f;if(this.dirty||!this.rollups){this.rollups={};for(e in o)o.hasOwnProperty(e)&&(n=this.getModule(e),n&&n.rollup&&(this.rollups[e]=n))}for(;;){u=!1;for(e in this.rollups)if(this.rollups.hasOwnProperty(e)&&!i[e]&&(!this.loaded[e]||this.forceMap[e])){n=this.getModule(e),r=n.supersedes||[],s=!1;if(!n.rollup)continue;a=0;for(t=0;t=n.rollup;if(s)break}}s&&(i[e]=!0,u=!0,this.getRequires(n))}if(!u)break}}},"3.9.1",{requires:["loader-base"]}),YUI.add("loader-yui3",function(e,t){YUI.Env[e.version].modules=YUI.Env[e.version].modules||{},e.mix(YUI.Env[e.version].modules,{"align-plugin":{requires:["node-screen","node-pluginhost"]},anim:{use:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"]},"anim-base":{requires:["base-base","node-style"]},"anim-color":{requires:["anim-base"]},"anim-curve":{requires:["anim-xy"]},"anim-easing":{requires:["anim-base"]},"anim-node-plugin":{requires:["node-pluginhost","anim-base"]},"anim-scroll":{requires:["anim-base"]},"anim-shape":{requires:["anim-base","anim-easing","anim-color","matrix"]},"anim-shape-transform":{use:["anim-shape"]},"anim-xy":{requires:["anim-base","node-screen"]},app:{use:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"]},"app-base":{requires:["classnamemanager","pjax-base","router","view"]},"app-content":{requires:["app-base","pjax-content"]},"app-transitions":{requires:["app-base"]},"app-transitions-css":{type:"css"},"app-transitions-native":{condition:{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"},requires:["app-transitions","app-transitions-css","parallel","transition"]},"array-extras":{requires:["yui-base"]},"array-invoke":{requires:["yui-base"]},arraylist:{requires:["yui-base"]},"arraylist-add":{requires:["arraylist"]},"arraylist-filter":{requires:["arraylist"]},arraysort:{requires:["yui-base"]},"async-queue":{requires:["event-custom"]},attribute:{use:["attribute-base","attribute-complex"]},"attribute-base":{requires:["attribute-core","attribute-observable","attribute-extras"]},"attribute-complex":{requires:["attribute-base"]},"attribute-core":{requires:["oop"]},"attribute-events":{use:["attribute-observable"]},"attribute-extras":{requires:["oop"]},"attribute-observable":{requires:["event-custom"]},autocomplete:{use:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"]},"autocomplete-base":{optional:["autocomplete-sources"],requires:["array-extras","base-build","escape","event-valuechange","node-base"]},"autocomplete-filters":{requires:["array-extras","text-wordbreak"]},"autocomplete-filters-accentfold":{requires:["array-extras","text-accentfold","text-wordbreak"]},"autocomplete-highlighters":{requires:["array-extras","highlight-base"]},"autocomplete-highlighters-accentfold":{requires:["array-extras","highlight-accentfold"]},"autocomplete-list":{after:["autocomplete-sources"],lang:["en","es"],requires:["autocomplete-base","event-resize","node-screen","selector-css3","shim-plugin","widget","widget-position","widget-position-align"],skinnable:!0},"autocomplete-list-keys":{condition:{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"},requires: -["autocomplete-list","base-build"]},"autocomplete-plugin":{requires:["autocomplete-list","node-pluginhost"]},"autocomplete-sources":{optional:["io-base","json-parse","jsonp","yql"],requires:["autocomplete-base"]},axes:{use:["axis-numeric","axis-category","axis-time","axis-stacked"]},"axes-base":{use:["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"]},axis:{requires:["dom","widget","widget-position","widget-stack","graphics","axis-base"]},"axis-base":{requires:["classnamemanager","datatype-number","datatype-date","base","event-custom"]},"axis-category":{requires:["axis","axis-category-base"]},"axis-category-base":{requires:["axis-base"]},"axis-numeric":{requires:["axis","axis-numeric-base"]},"axis-numeric-base":{requires:["axis-base"]},"axis-stacked":{requires:["axis-numeric","axis-stacked-base"]},"axis-stacked-base":{requires:["axis-numeric-base"]},"axis-time":{requires:["axis","axis-time-base"]},"axis-time-base":{requires:["axis-base"]},base:{use:["base-base","base-pluginhost","base-build"]},"base-base":{requires:["attribute-base","base-core","base-observable"]},"base-build":{requires:["base-base"]},"base-core":{requires:["attribute-core"]},"base-observable":{requires:["attribute-observable"]},"base-pluginhost":{requires:["base-base","pluginhost"]},button:{requires:["button-core","cssbutton","widget"]},"button-core":{requires:["attribute-core","classnamemanager","node-base"]},"button-group":{requires:["button-plugin","cssbutton","widget"]},"button-plugin":{requires:["button-core","cssbutton","node-pluginhost"]},cache:{use:["cache-base","cache-offline","cache-plugin"]},"cache-base":{requires:["base"]},"cache-offline":{requires:["cache-base","json"]},"cache-plugin":{requires:["plugin","cache-base"]},calendar:{lang:["de","en","es","es-AR","fr","it","ja","nb-NO","nl","pt-BR","ru","zh-HANT-TW"],requires:["calendar-base","calendarnavigator"],skinnable:!0},"calendar-base":{lang:["de","en","es","es-AR","fr","it","ja","nb-NO","nl","pt-BR","ru","zh-HANT-TW"],requires:["widget","datatype-date","datatype-date-math","cssgrids"],skinnable:!0},calendarnavigator:{requires:["plugin","classnamemanager","datatype-date","node"],skinnable:!0},charts:{use:["charts-base"]},"charts-base":{requires:["dom","event-mouseenter","event-touch","graphics-group","axes","series-pie","series-line","series-marker","series-area","series-spline","series-column","series-bar","series-areaspline","series-combo","series-combospline","series-line-stacked","series-marker-stacked","series-area-stacked","series-spline-stacked","series-column-stacked","series-bar-stacked","series-areaspline-stacked","series-combo-stacked","series-combospline-stacked"]},"charts-legend":{requires:["charts-base"]},classnamemanager:{requires:["yui-base"]},"clickable-rail":{requires:["slider-base"]},collection:{use:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"]},color:{use:["color-base","color-hsl","color-harmony"]},"color-base":{requires:["yui-base"]},"color-harmony":{requires:["color-hsl"]},"color-hsl":{requires:["color-base"]},"color-hsv":{requires:["color-base"]},console:{lang:["en","es","ja"],requires:["yui-log","widget"],skinnable:!0},"console-filters":{requires:["plugin","console"],skinnable:!0},controller:{use:["router"]},cookie:{requires:["yui-base"]},"createlink-base":{requires:["editor-base"]},cssbase:{after:["cssreset","cssfonts","cssgrids","cssreset-context","cssfonts-context","cssgrids-context"],type:"css"},"cssbase-context":{after:["cssreset","cssfonts","cssgrids","cssreset-context","cssfonts-context","cssgrids-context"],type:"css"},cssbutton:{type:"css"},cssfonts:{type:"css"},"cssfonts-context":{type:"css"},cssgrids:{optional:["cssreset","cssfonts"],type:"css"},"cssgrids-base":{optional:["cssreset","cssfonts"],type:"css"},"cssgrids-responsive":{optional:["cssreset","cssfonts"],requires:["cssgrids","cssgrids-responsive-base"],type:"css"},"cssgrids-units":{optional:["cssreset","cssfonts"],requires:["cssgrids-base"],type:"css"},cssnormalize:{type:"css"},"cssnormalize-context":{type:"css"},cssreset:{type:"css"},"cssreset-context":{type:"css"},dataschema:{use:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"]},"dataschema-array":{requires:["dataschema-base"]},"dataschema-base":{requires:["base"]},"dataschema-json":{requires:["dataschema-base","json"]},"dataschema-text":{requires:["dataschema-base"]},"dataschema-xml":{requires:["dataschema-base"]},datasource:{use:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"]},"datasource-arrayschema":{requires:["datasource-local","plugin","dataschema-array"]},"datasource-cache":{requires:["datasource-local","plugin","cache-base"]},"datasource-function":{requires:["datasource-local"]},"datasource-get":{requires:["datasource-local","get"]},"datasource-io":{requires:["datasource-local","io-base"]},"datasource-jsonschema":{requires:["datasource-local","plugin","dataschema-json"]},"datasource-local":{requires:["base"]},"datasource-polling":{requires:["datasource-local"]},"datasource-textschema":{requires:["datasource-local","plugin","dataschema-text"]},"datasource-xmlschema":{requires:["datasource-local","plugin","datatype-xml","dataschema-xml"]},datatable:{use:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"]},"datatable-base":{requires:["datatable-core","datatable-table","datatable-head","datatable-body","base-build","widget"],skinnable:!0},"datatable-body":{requires:["datatable-core","view","classnamemanager"]},"datatable-column-widths":{requires:["datatable-base"]},"datatable-core":{requires:["escape","model-list","node-event-delegate"]},"datatable-datasource":{requires:["datatable-base","plugin","datasource-local" -]},"datatable-formatters":{requires:["datatable-body","datatype-number-format","datatype-date-format","escape"]},"datatable-head":{requires:["datatable-core","view","classnamemanager"]},"datatable-message":{lang:["en","fr","es"],requires:["datatable-base"],skinnable:!0},"datatable-mutable":{requires:["datatable-base"]},"datatable-scroll":{requires:["datatable-base","datatable-column-widths","dom-screen"],skinnable:!0},"datatable-sort":{lang:["en","fr","es"],requires:["datatable-base"],skinnable:!0},"datatable-table":{requires:["datatable-core","datatable-head","datatable-body","view","classnamemanager"]},datatype:{use:["datatype-date","datatype-number","datatype-xml"]},"datatype-date":{use:["datatype-date-parse","datatype-date-format","datatype-date-math"]},"datatype-date-format":{lang:["ar","ar-JO","ca","ca-ES","da","da-DK","de","de-AT","de-DE","el","el-GR","en","en-AU","en-CA","en-GB","en-IE","en-IN","en-JO","en-MY","en-NZ","en-PH","en-SG","en-US","es","es-AR","es-BO","es-CL","es-CO","es-EC","es-ES","es-MX","es-PE","es-PY","es-US","es-UY","es-VE","fi","fi-FI","fr","fr-BE","fr-CA","fr-FR","hi","hi-IN","id","id-ID","it","it-IT","ja","ja-JP","ko","ko-KR","ms","ms-MY","nb","nb-NO","nl","nl-BE","nl-NL","pl","pl-PL","pt","pt-BR","ro","ro-RO","ru","ru-RU","sv","sv-SE","th","th-TH","tr","tr-TR","vi","vi-VN","zh-Hans","zh-Hans-CN","zh-Hant","zh-Hant-HK","zh-Hant-TW"]},"datatype-date-math":{requires:["yui-base"]},"datatype-date-parse":{},"datatype-number":{use:["datatype-number-parse","datatype-number-format"]},"datatype-number-format":{},"datatype-number-parse":{},"datatype-xml":{use:["datatype-xml-parse","datatype-xml-format"]},"datatype-xml-format":{},"datatype-xml-parse":{},dd:{use:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"]},"dd-constrain":{requires:["dd-drag"]},"dd-ddm":{requires:["dd-ddm-base","event-resize"]},"dd-ddm-base":{requires:["node","base","yui-throttle","classnamemanager"]},"dd-ddm-drop":{requires:["dd-ddm"]},"dd-delegate":{requires:["dd-drag","dd-drop-plugin","event-mouseenter"]},"dd-drag":{requires:["dd-ddm-base"]},"dd-drop":{requires:["dd-drag","dd-ddm-drop"]},"dd-drop-plugin":{requires:["dd-drop"]},"dd-gestures":{condition:{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"},requires:["dd-drag","event-synthetic","event-gestures"]},"dd-plugin":{optional:["dd-constrain","dd-proxy"],requires:["dd-drag"]},"dd-proxy":{requires:["dd-drag"]},"dd-scroll":{requires:["dd-drag"]},dial:{lang:["en","es"],requires:["widget","dd-drag","event-mouseenter","event-move","event-key","transition","intl"],skinnable:!0},dom:{use:["dom-base","dom-screen","dom-style","selector-native","selector"]},"dom-base":{requires:["dom-core"]},"dom-core":{requires:["oop","features"]},"dom-deprecated":{requires:["dom-base"]},"dom-screen":{requires:["dom-base","dom-style"]},"dom-style":{requires:["dom-base"]},"dom-style-ie":{condition:{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"},requires:["dom-style"]},dump:{requires:["yui-base"]},editor:{use:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"]},"editor-base":{requires:["base","frame","node","exec-command","editor-selection"]},"editor-bidi":{requires:["editor-base"]},"editor-br":{requires:["editor-base"]},"editor-lists":{requires:["editor-base"]},"editor-para":{requires:["editor-para-base"]},"editor-para-base":{requires:["editor-base"]},"editor-para-ie":{condition:{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"},requires:["editor-para-base"]},"editor-selection":{requires:["node"]},"editor-tab":{requires:["editor-base"]},escape:{requires:["yui-base"]},event:{after:["node-base"],use:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"]},"event-base":{after:["node-base"],requires:["event-custom-base"]},"event-base-ie":{after:["event-base"],condition:{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"},requires:["node-base"]},"event-contextmenu":{requires:["event-synthetic","dom-screen"]},"event-custom":{use:["event-custom-base","event-custom-complex"]},"event-custom-base":{requires:["oop"]},"event-custom-complex":{requires:["event-custom-base"]},"event-delegate":{requires:["node-base"]},"event-flick":{requires:["node-base","event-touch","event-synthetic"]},"event-focus":{requires:["event-synthetic"]},"event-gestures":{use:["event-flick","event-move"]},"event-hover":{requires:["event-mouseenter"]},"event-key":{requires:["event-synthetic"]},"event-mouseenter":{requires:["event-synthetic"]},"event-mousewheel":{requires:["node-base"]},"event-move":{requires:["node-base","event-touch","event-synthetic"]},"event-outside":{requires:["event-synthetic"]},"event-resize":{requires:["node-base","event-synthetic"]},"event-simulate":{requires:["event-base"]},"event-synthetic":{requires:["node-base","event-custom-complex"]},"event-tap":{requires:["node-base","event-base","event-touch","event-synthetic"]},"event-touch":{requires:["node-base"]},"event-valuechange":{requires:["event-focus","event-synthetic"]},"exec-command":{requires:["frame"]},features:{requires:["yui-base"]},file:{requires:["file-flash","file-html5"]},"file-flash":{requires:["base"]},"file-html5":{requires:["base"]},frame:{requires:["base","node","selector-css3","yui-throttle"]},"gesture-simulate":{requires:["async-queue","event-simulate","node-screen"]},get:{requires -:["yui-base"]},graphics:{requires:["node","event-custom","pluginhost","matrix","classnamemanager"]},"graphics-canvas":{condition:{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"},requires:["graphics"]},"graphics-canvas-default":{condition:{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}},"graphics-group":{requires:["graphics"]},"graphics-svg":{condition:{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"},requires:["graphics"]},"graphics-svg-default":{condition:{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}},"graphics-vml":{condition:{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"},requires:["graphics"]},"graphics-vml-default":{condition:{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}},handlebars:{use:["handlebars-compiler"]},"handlebars-base":{requires:[]},"handlebars-compiler":{requires:["handlebars-base"]},highlight:{use:["highlight-base","highlight-accentfold"]},"highlight-accentfold":{requires:["highlight-base","text-accentfold"]},"highlight-base":{requires:["array-extras","classnamemanager","escape","text-wordbreak"]},history:{use:["history-base","history-hash","history-hash-ie","history-html5"]},"history-base":{requires:["event-custom-complex"]},"history-hash":{after:["history-html5"],requires:["event-synthetic","history-base","yui-later"]},"history-hash-ie":{condition:{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"},requires:["history-hash","node-base"]},"history-html5":{optional:["json"],requires:["event-base","history-base","node-base"]},imageloader:{requires:["base-base","node-style","node-screen"]},intl:{requires:["intl-base","event-custom"]},"intl-base":{requires:["yui-base"]},io:{use:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"]},"io-base":{requires:["event-custom-base","querystring-stringify-simple"]},"io-form":{requires:["io-base","node-base"]},"io-nodejs":{condition:{name:"io-nodejs",trigger:"io-base",ua:"nodejs"},requires:["io-base"]},"io-queue":{requires:["io-base","queue-promote"]},"io-upload-iframe":{requires:["io-base","node-base"]},"io-xdr":{requires:["io-base","datatype-xml-parse"]},json:{use:["json-parse","json-stringify"]},"json-parse":{requires:["yui-base"]},"json-parse-shim":{condition:{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"},requires:["json-parse"]},"json-stringify":{requires:["yui-base"]},"json-stringify-shim":{condition:{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"},requires:["json-stringify"]},jsonp:{requires:["get","oop"]},"jsonp-url":{requires:["jsonp"]},"lazy-model-list":{requires:["model-list"]},loader:{use:["loader-base","loader-rollup","loader-yui3"]},"loader-base":{requires:["get","features"]},"loader-rollup":{requires:["loader-base"]},"loader-yui3":{requires:["loader-base"]},matrix:{requires:["yui-base"]},model:{requires:["base-build","escape","json-parse"]},"model-list":{requires:["array-extras","array-invoke","arraylist","base-build","escape","json-parse","model"]},"model-sync-rest":{requires:["model","io-base","json-stringify"]},node:{use:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"]},"node-base":{requires:["event-base","node-core","dom-base"]},"node-core":{requires:["dom-core","selector"]},"node-deprecated":{requires:["node-base"]},"node-event-delegate":{requires:["node-base","event-delegate"]},"node-event-html5":{requires:["node-base"]},"node-event-simulate":{requires:["node-base","event-simulate","gesture-simulate"]},"node-flick":{requires:["classnamemanager","transition","event-flick","plugin"],skinnable:!0},"node-focusmanager":{requires:["attribute","node","plugin","node-event-simulate","event-key","event-focus"]},"node-load":{requires:["node-base","io-base"]},"node-menunav":{requires:["node","classnamemanager","plugin","node-focusmanager"],skinnable:!0},"node-pluginhost":{requires:["node-base","pluginhost"]},"node-screen":{requires:["dom-screen","node-base"]},"node-scroll-info":{requires:["base-build","dom-screen","event-resize","node-pluginhost","plugin"]},"node-style":{requires:["dom-style" -,"node-base"]},oop:{requires:["yui-base"]},overlay:{requires:["widget","widget-stdmod","widget-position","widget-position-align","widget-stack","widget-position-constrain"],skinnable:!0},panel:{requires:["widget","widget-autohide","widget-buttons","widget-modality","widget-position","widget-position-align","widget-position-constrain","widget-stack","widget-stdmod"],skinnable:!0},parallel:{requires:["yui-base"]},pjax:{requires:["pjax-base","pjax-content"]},"pjax-base":{requires:["classnamemanager","node-event-delegate","router"]},"pjax-content":{requires:["io-base","node-base","router"]},"pjax-plugin":{requires:["node-pluginhost","pjax","plugin"]},plugin:{requires:["base-base"]},pluginhost:{use:["pluginhost-base","pluginhost-config"]},"pluginhost-base":{requires:["yui-base"]},"pluginhost-config":{requires:["pluginhost-base"]},profiler:{requires:["yui-base"]},promise:{requires:["timers"]},querystring:{use:["querystring-parse","querystring-stringify"]},"querystring-parse":{requires:["yui-base","array-extras"]},"querystring-parse-simple":{requires:["yui-base"]},"querystring-stringify":{requires:["yui-base"]},"querystring-stringify-simple":{requires:["yui-base"]},"queue-promote":{requires:["yui-base"]},"range-slider":{requires:["slider-base","slider-value-range","clickable-rail"]},recordset:{use:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"]},"recordset-base":{requires:["base","arraylist"]},"recordset-filter":{requires:["recordset-base","array-extras","plugin"]},"recordset-indexer":{requires:["recordset-base","plugin"]},"recordset-sort":{requires:["arraysort","recordset-base","plugin"]},resize:{use:["resize-base","resize-proxy","resize-constrain"]},"resize-base":{requires:["base","widget","event","oop","dd-drag","dd-delegate","dd-drop"],skinnable:!0},"resize-constrain":{requires:["plugin","resize-base"]},"resize-plugin":{optional:["resize-constrain"],requires:["resize-base","plugin"]},"resize-proxy":{requires:["plugin","resize-base"]},router:{optional:["querystring-parse"],requires:["array-extras","base-build","history"]},scrollview:{requires:["scrollview-base","scrollview-scrollbars"]},"scrollview-base":{requires:["widget","event-gestures","event-mousewheel","transition"],skinnable:!0},"scrollview-base-ie":{condition:{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"},requires:["scrollview-base"]},"scrollview-list":{requires:["plugin","classnamemanager"],skinnable:!0},"scrollview-paginator":{requires:["plugin","classnamemanager"]},"scrollview-scrollbars":{requires:["classnamemanager","transition","plugin"],skinnable:!0},selector:{requires:["selector-native"]},"selector-css2":{condition:{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"},requires:["selector-native"]},"selector-css3":{requires:["selector-native","selector-css2"]},"selector-native":{requires:["dom-base"]},"series-area":{requires:["series-cartesian","series-fill-util"]},"series-area-stacked":{requires:["series-stacked","series-area"]},"series-areaspline":{requires:["series-area","series-curve-util"]},"series-areaspline-stacked":{requires:["series-stacked","series-areaspline"]},"series-bar":{requires:["series-marker","series-histogram-base"]},"series-bar-stacked":{requires:["series-stacked","series-bar"]},"series-base":{requires:["graphics","axis-base"]},"series-candlestick":{requires:["series-range"]},"series-cartesian":{requires:["series-base"]},"series-column":{requires:["series-marker","series-histogram-base"]},"series-column-stacked":{requires:["series-stacked","series-column"]},"series-combo":{requires:["series-cartesian","series-line-util","series-plot-util","series-fill-util"]},"series-combo-stacked":{requires:["series-stacked","series-combo"]},"series-combospline":{requires:["series-combo","series-curve-util"]},"series-combospline-stacked":{requires:["series-combo-stacked","series-curve-util"]},"series-curve-util":{},"series-fill-util":{},"series-histogram-base":{requires:["series-cartesian","series-plot-util"]},"series-line":{requires:["series-cartesian","series-line-util"]},"series-line-stacked":{requires:["series-stacked","series-line"]},"series-line-util":{},"series-marker":{requires:["series-cartesian","series-plot-util"]},"series-marker-stacked":{requires:["series-stacked","series-marker"]},"series-ohlc":{requires:["series-range"]},"series-pie":{requires:["series-base","series-plot-util"]},"series-plot-util":{},"series-range":{requires:["series-cartesian"]},"series-spline":{requires:["series-line","series-curve-util"]},"series-spline-stacked":{requires:["series-stacked","series-spline"]},"series-stacked":{requires:["axis-stacked"]},"shim-plugin":{requires:["node-style","node-pluginhost"]},slider:{use:["slider-base","slider-value-range","clickable-rail","range-slider"]},"slider-base":{requires:["widget","dd-constrain","event-key"],skinnable:!0},"slider-value-range":{requires:["slider-base"]},sortable:{requires:["dd-delegate","dd-drop-plugin","dd-proxy"]},"sortable-scroll":{requires:["dd-scroll","sortable"]},stylesheet:{requires:["yui-base"]},substitute:{optional:["dump"],requires:["yui-base"]},swf:{requires:["event-custom","node","swfdetect","escape"]},swfdetect:{requires:["yui-base"]},tabview:{requires:["widget","widget-parent","widget-child","tabview-base","node-pluginhost","node-focusmanager"],skinnable:!0},"tabview-base":{requires:["node-event-delegate","classnamemanager","skin-sam-tabview"]},"tabview-plugin":{requires:["tabview-base"]},template:{use:["template-base","template-micro"]},"template-base":{requires:["yui-base"]},"template-micro":{requires:["escape"]},test:{requires:["event-simulate","event-custom","json-stringify"]},"test-console":{requires:["console-filters","test","array-extras"],skinnable:!0},text:{use:["text-accentfold","text-wordbreak"]},"text-accentfold":{requires:["array-extras","text-data-accentfold"]},"text-data-accentfold":{requires:["yui-base"]},"text-data-wordbreak":{requires:["yui-base" -]},"text-wordbreak":{requires:["array-extras","text-data-wordbreak"]},timers:{requires:["yui-base"]},transition:{requires:["node-style"]},"transition-timer":{condition:{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"},requires:["transition"]},tree:{requires:["base-build","tree-node"]},"tree-labelable":{requires:["tree"]},"tree-lazy":{requires:["base-pluginhost","plugin","tree"]},"tree-node":{},"tree-openable":{requires:["tree"]},"tree-selectable":{requires:["tree"]},uploader:{requires:["uploader-html5","uploader-flash"]},"uploader-flash":{requires:["swf","widget","base","cssbutton","node","event-custom","file-flash","uploader-queue"]},"uploader-html5":{requires:["widget","node-event-simulate","file-html5","uploader-queue"]},"uploader-queue":{requires:["base"]},view:{requires:["base-build","node-event-delegate"]},"view-node-map":{requires:["view"]},widget:{use:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]},"widget-anim":{requires:["anim-base","plugin","widget"]},"widget-autohide":{requires:["base-build","event-key","event-outside","widget"]},"widget-base":{requires:["attribute","base-base","base-pluginhost","classnamemanager","event-focus","node-base","node-style"],skinnable:!0},"widget-base-ie":{condition:{name:"widget-base-ie",trigger:"widget-base",ua:"ie"},requires:["widget-base"]},"widget-buttons":{requires:["button-plugin","cssbutton","widget-stdmod"]},"widget-child":{requires:["base-build","widget"]},"widget-htmlparser":{requires:["widget-base"]},"widget-locale":{requires:["widget-base"]},"widget-modality":{requires:["base-build","event-outside","widget"],skinnable:!0},"widget-parent":{requires:["arraylist","base-build","widget"]},"widget-position":{requires:["base-build","node-screen","widget"]},"widget-position-align":{requires:["widget-position"]},"widget-position-constrain":{requires:["widget-position"]},"widget-skin":{requires:["widget-base"]},"widget-stack":{requires:["base-build","widget"],skinnable:!0},"widget-stdmod":{requires:["base-build","widget"]},"widget-uievents":{requires:["node-event-delegate","widget-base"]},yql:{requires:["oop"]},"yql-jsonp":{condition:{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"},requires:["jsonp","jsonp-url"]},"yql-nodejs":{condition:{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}},"yql-winjs":{condition:{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"}},yui:{},"yui-base":{},"yui-later":{requires:["yui-base"]},"yui-log":{requires:["yui-base"]},"yui-throttle":{requires:["yui-base"]}}),YUI.Env[e.version].md5="660f328e92276f36e9abfafb02169183"},"3.9.1",{requires:["loader-base"]}),YUI.add("yui",function(e,t){},"3.9.1",{use:["yui-base","get","features","intl-base","yui-log","yui-later","loader-base","loader-rollup","loader-yui3"]}); diff --git a/theme/yui_image.php b/theme/yui_image.php index f7cf0abde96..8d2e97a131c 100644 --- a/theme/yui_image.php +++ b/theme/yui_image.php @@ -63,7 +63,7 @@ if ($version == 'moodle' && count($parts) >= 3) { } else if (count($parts) == 1 && ($version == $CFG->yui3version || $version == $CFG->yui2version)) { list($image) = $parts; if ($version == $CFG->yui3version) { - $imagepath = "$CFG->dirroot/lib/yuilib/$CFG->yui3version/build/assets/skins/sam/$image"; + $imagepath = "$CFG->dirroot/lib/yuilib/$CFG->yui3version/assets/skins/sam/$image"; } else { $imagepath = "$CFG->dirroot/lib/yuilib/2in3/$CFG->yui2version/build/assets/skins/sam/$image"; } From 29bf99fdc177c540205e9bcb528dcbc2ceb5b985 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Thu, 19 Sep 2013 21:10:50 +0200 Subject: [PATCH 040/101] MDL-37324 import phpmailer 5.2.7 --- lib/phpmailer/LICENSE | 2 +- lib/phpmailer/README | 225 - lib/phpmailer/README.md | 134 + lib/phpmailer/README_MOODLE.txt | 2 +- lib/phpmailer/{changelog.txt => changelog.md} | 359 +- lib/phpmailer/class.phpmailer.php | 5598 ++++++++++------- lib/phpmailer/class.smtp.php | 1581 ++--- lib/phpmailer/language/phpmailer.lang-ar.php | 3 +- lib/phpmailer/language/phpmailer.lang-br.php | 24 +- lib/phpmailer/language/phpmailer.lang-ca.php | 3 +- lib/phpmailer/language/phpmailer.lang-ch.php | 3 +- lib/phpmailer/language/phpmailer.lang-cz.php | 33 +- lib/phpmailer/language/phpmailer.lang-de.php | 3 +- lib/phpmailer/language/phpmailer.lang-dk.php | 3 +- lib/phpmailer/language/phpmailer.lang-eo.php | 24 + lib/phpmailer/language/phpmailer.lang-es.php | 26 +- lib/phpmailer/language/phpmailer.lang-et.php | 16 +- lib/phpmailer/language/phpmailer.lang-fa.php | 25 + lib/phpmailer/language/phpmailer.lang-fi.php | 3 +- lib/phpmailer/language/phpmailer.lang-fo.php | 3 +- lib/phpmailer/language/phpmailer.lang-fr.php | 42 +- lib/phpmailer/language/phpmailer.lang-he.php | 25 + lib/phpmailer/language/phpmailer.lang-hu.php | 37 +- lib/phpmailer/language/phpmailer.lang-it.php | 21 +- lib/phpmailer/language/phpmailer.lang-ja.php | 6 +- lib/phpmailer/language/phpmailer.lang-lt.php | 24 + lib/phpmailer/language/phpmailer.lang-nl.php | 41 +- lib/phpmailer/language/phpmailer.lang-no.php | 23 +- lib/phpmailer/language/phpmailer.lang-pl.php | 35 +- lib/phpmailer/language/phpmailer.lang-ro.php | 3 +- lib/phpmailer/language/phpmailer.lang-ru.php | 13 +- lib/phpmailer/language/phpmailer.lang-se.php | 3 +- lib/phpmailer/language/phpmailer.lang-sk.php | 25 + lib/phpmailer/language/phpmailer.lang-tr.php | 35 +- lib/phpmailer/language/phpmailer.lang-uk.php | 24 + lib/phpmailer/language/phpmailer.lang-zh.php | 3 +- .../language/phpmailer.lang-zh_cn.php | 3 +- lib/phpmailer/moodle_phpmailer.php | 33 +- lib/thirdpartylibs.xml | 2 +- 39 files changed, 4746 insertions(+), 3722 deletions(-) delete mode 100644 lib/phpmailer/README create mode 100644 lib/phpmailer/README.md rename lib/phpmailer/{changelog.txt => changelog.md} (55%) create mode 100644 lib/phpmailer/language/phpmailer.lang-eo.php create mode 100644 lib/phpmailer/language/phpmailer.lang-fa.php create mode 100644 lib/phpmailer/language/phpmailer.lang-he.php create mode 100644 lib/phpmailer/language/phpmailer.lang-lt.php create mode 100644 lib/phpmailer/language/phpmailer.lang-sk.php create mode 100644 lib/phpmailer/language/phpmailer.lang-uk.php diff --git a/lib/phpmailer/LICENSE b/lib/phpmailer/LICENSE index f3f1b3b65e1..8e0763d1c21 100644 --- a/lib/phpmailer/LICENSE +++ b/lib/phpmailer/LICENSE @@ -312,7 +312,7 @@ of these things: 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 + 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 diff --git a/lib/phpmailer/README b/lib/phpmailer/README deleted file mode 100644 index f66012d40e8..00000000000 --- a/lib/phpmailer/README +++ /dev/null @@ -1,225 +0,0 @@ -/******************************************************************* -* http://code.google.com/a/apache-extras.org/p/phpmailer/ * -********************************************************************/ - -PHPMailer -Full Featured Email Transfer Class for PHP -========================================== - -Version 5.2.1 (January 16, 2012) - -Patch release (see changelog.txt). - -Version 5.2.0 (July 19, 2011) - -With the release of this version, PHPMailer has moved to Apache -Extras: - http://code.google.com/a/apache-extras.org/p/phpmailer/ - -Version 5.0.0 (April 02, 2009) - -With the release of this version, we are initiating a new version numbering -system to differentiate from the PHP4 version of PHPMailer. - -Most notable in this release is fully object oriented code. - -We now have available the PHPDocumentor (phpdocs) documentation. This is -separate from the regular download to keep file sizes down. Please see the -download area of http://phpmailer.codeworxtech.com. - -We also have created a new test script (see /test_script) that you can use -right out of the box. Copy the /test_script folder directly to your server (in -the same structure ... with class.phpmailer.php and class.smtp.php in the -folder above it. Then launch the test script with: -http://www.yourdomain.com/phpmailer/test_script/index.php -from this one script, you can test your server settings for mail(), sendmail (or -qmail), and SMTP. This will email you a sample email (using contents.html for -the email body) and two attachments. One of the attachments is used as an inline -image to demonstrate how PHPMailer will automatically detect if attachments are -the same source as inline graphics and only include one version. Once you click -the Submit button, the results will be displayed including any SMTP debug -information and send status. We will also display a version of the script that -you can cut and paste to include in your projects. Enjoy! - -Version 2.3 (November 08, 2008) - -We have removed the /phpdoc from the downloads. All documentation is now on -the http://phpmailer.codeworxtech.com website. - -The phpunit.php has been updated to support PHP5. - -For all other changes and notes, please see the changelog. - -Donations are accepted at PayPal with our id "paypal@worxteam.com". - -Version 2.2 (July 15 2008) - -- see the changelog. - -Version 2.1 (June 04 2008) - -With this release, we are announcing that the development of PHPMailer for PHP5 -will be our focus from this date on. We have implemented all the enhancements -and fixes from the latest release of PHPMailer for PHP4. - -Far more important, though, is that this release of PHPMailer (v2.1) is -fully tested with E_STRICT error checking enabled. - -** NOTE: WE HAVE A NEW LANGUAGE VARIABLE FOR DIGITALLY SIGNED S/MIME EMAILS. - IF YOU CAN HELP WITH LANGUAGES OTHER THAN ENGLISH AND SPANISH, IT WOULD BE - APPRECIATED. - -We have now added S/MIME functionality (ability to digitally sign emails). -BIG THANKS TO "sergiocambra" for posting this patch back in November 2007. -The "Signed Emails" functionality adds the Sign method to pass the private key -filename and the password to read it, and then email will be sent with -content-type multipart/signed and with the digital signature attached. - -A quick note on E_STRICT: - -- In about half the test environments the development version was subjected - to, an error was thrown for the date() functions (used at line 1565 and 1569). - This is NOT a PHPMailer error, it is the result of an incorrectly configured - PHP5 installation. The fix is to modify your 'php.ini' file and include the - date.timezone = America/New York - directive, (for your own server timezone) -- If you do get this error, and are unable to access your php.ini file, there is - a workaround. In your PHP script, add - date_default_timezone_set('America/Toronto'); - - * do NOT try to use - $myVar = date_default_timezone_get(); - as a test, it will throw an error. - -We have also included more example files to show the use of "sendmail", "mail()", -"smtp", and "gmail". - -We are also looking for more programmers to join the volunteer development team. -If you have an interest in this, please let us know. - -Enjoy! - - -Version 2.1.0beta1 & beta2 - -please note, this is BETA software -** DO NOT USE THIS IN PRODUCTION OR LIVE PROJECTS -INTENDED STRICTLY FOR TESTING - -** NOTE: - -As of November 2007, PHPMailer has a new project team headed by industry -veteran Andy Prevost (codeworxtech). The first release in more than two -years will focus on fixes, adding ease-of-use enhancements, provide -basic compatibility with PHP4 and PHP5 using PHP5 backwards compatibility -features. A new release is planned before year-end 2007 that will provide -full compatiblity with PHP4 and PHP5, as well as more bug fixes. - -We are looking for project developers to assist in restoring PHPMailer to -its leadership position. Our goals are to simplify use of PHPMailer, provide -good documentation and examples, and retain backward compatibility to level -1.7.3 standards. - -If you are interested in helping out, visit http://sourceforge.net/projects/phpmailer -and indicate your interest. - -** - -http://phpmailer.sourceforge.net/ - -This software is licenced under the LGPL. Please read LICENSE for information on the -software availability and distribution. - -Class Features: -- Send emails with multiple TOs, CCs, BCCs and REPLY-TOs -- Redundant SMTP servers -- Multipart/alternative emails for mail clients that do not read HTML email -- Support for 8bit, base64, binary, and quoted-printable encoding -- Uses the same methods as the very popular AspEmail active server (COM) component -- SMTP authentication -- Native language support -- Word wrap, and more! - -Why you might need it: - -Many PHP developers utilize email in their code. The only PHP function -that supports this is the mail() function. However, it does not expose -any of the popular features that many email clients use nowadays like -HTML-based emails and attachments. There are two proprietary -development tools out there that have all the functionality built into -easy to use classes: AspEmail(tm) and AspMail. Both of these -programs are COM components only available on Windows. They are also a -little pricey for smaller projects. - -Since I do Linux development I�ve missed these tools for my PHP coding. -So I built a version myself that implements the same methods (object -calls) that the Windows-based components do. It is open source and the -LGPL license allows you to place the class in your proprietary PHP -projects. - - -Installation: - -Copy class.phpmailer.php into your php.ini include_path. If you are -using the SMTP mailer then place class.smtp.php in your path as well. -In the language directory you will find several files like -phpmailer.lang-en.php. If you look right before the .php extension -that there are two letters. These represent the language type of the -translation file. For instance "en" is the English file and "br" is -the Portuguese file. Chose the file that best fits with your language -and place it in the PHP include path. If your language is English -then you have nothing more to do. If it is a different language then -you must point PHPMailer to the correct translation. To do this, call -the PHPMailer SetLanguage method like so: - -// To load the Portuguese version -$mail->SetLanguage("br", "/optional/path/to/language/directory/"); - -That's it. You should now be ready to use PHPMailer! - - -A Simple Example: - -IsSMTP(); // set mailer to use SMTP -$mail->Host = "smtp1.example.com;smtp2.example.com"; // specify main and backup server -$mail->SMTPAuth = true; // turn on SMTP authentication -$mail->Username = "jswan"; // SMTP username -$mail->Password = "secret"; // SMTP password - -$mail->From = "from@example.com"; -$mail->FromName = "Mailer"; -$mail->AddAddress("josh@example.net", "Josh Adams"); -$mail->AddAddress("ellen@example.com"); // name is optional -$mail->AddReplyTo("info@example.com", "Information"); - -$mail->WordWrap = 50; // set word wrap to 50 characters -$mail->AddAttachment("/var/tmp/file.tar.gz"); // add attachments -$mail->AddAttachment("/tmp/image.jpg", "new.jpg"); // optional name -$mail->IsHTML(true); // set email format to HTML - -$mail->Subject = "Here is the subject"; -$mail->Body = "This is the HTML message body in bold!"; -$mail->AltBody = "This is the body in plain text for non-HTML mail clients"; - -if(!$mail->Send()) -{ - echo "Message could not be sent.

                "; - echo "Mailer Error: " . $mail->ErrorInfo; - exit; -} - -echo "Message has been sent"; -?> - -CHANGELOG - -See ChangeLog.txt - -Download: http://sourceforge.net/project/showfiles.php?group_id=26031 - -Andy Prevost diff --git a/lib/phpmailer/README.md b/lib/phpmailer/README.md new file mode 100644 index 00000000000..de76a7679bf --- /dev/null +++ b/lib/phpmailer/README.md @@ -0,0 +1,134 @@ +# PHPMailer - A full-featured email creation and transfer class for PHP + +Build status: [![Build Status](https://travis-ci.org/Synchro/PHPMailer.png)](https://travis-ci.org/Synchro/PHPMailer) + +## Class Features + +- Probably the world's most popular code for sending email from PHP! +- Used by many open-source projects: Drupal, SugarCRM, Yii, Joomla! and many more +- Integrated SMTP support - send without a local mail server +- send emails with multiple TOs, CCs, BCCs and REPLY-TOs +- Multipart/alternative emails for mail clients that do not read HTML email +- Support for 8bit, base64, binary, and quoted-printable encoding +- SMTP authentication with LOGIN, PLAIN, NTLM and CRAM-MD5 mechanisms +- Native language support +- Compatible with PHP 5.0 and later +- Much more! + +## Why you might need it + +Many PHP developers utilize email in their code. The only PHP function that supports this is the mail() function. However, it does not provide any assistance for making use of popular features such as HTML-based emails and attachments. + +Formatting email correctly is surprisingly difficult. There are myriad overlapping RFCs, requiring tight adherence to horribly complicated formatting and encoding rules - the vast majority of code that you'll find online that uses the mail() function directly is just plain wrong! +*Please* don't be tempted to do it yourself - if you don't use PHPMailer, there are many other excellent libraries that you should look at before rolling your own - try SwiftMailer, Zend_Mail, eZcomponents etc. + +The PHP mail() function usually sends via a local mail server, typically fronted by a `sendmail` binary on Linux, BSD and OS X platforms, however, Windows usually doesn't include a local mail server; PHPMailer's integrated SMTP implementation allows email sending on Windows platforms without a local mail server. + +## License + +This software is licenced under the [LGPL 2.1](http://www.gnu.org/licenses/lgpl-2.1.html). Please read LICENSE for information on the +software availability and distribution. + +## Installation + +PHPMailer is available via [Composer/Packagist](https://packagist.org/packages/phpmailer/phpmailer). Alternatively, just copy the contents of the PHPMailer folder into somewhere that's in your PHP `include_path` setting. If you don't speak git or just want a tarball, click the 'zip' button at the top of the page in GitHub. + + +## A Simple Example + +```php +isSMTP(); // Set mailer to use SMTP +$mail->Host = 'smtp1.example.com;smtp2.example.com'; // Specify main and backup server +$mail->SMTPAuth = true; // Enable SMTP authentication +$mail->Username = 'jswan'; // SMTP username +$mail->Password = 'secret'; // SMTP password +$mail->SMTPSecure = 'tls'; // Enable encryption, 'ssl' also accepted + +$mail->From = 'from@example.com'; +$mail->FromName = 'Mailer'; +$mail->addAddress('josh@example.net', 'Josh Adams'); // Add a recipient +$mail->addAddress('ellen@example.com'); // Name is optional +$mail->addReplyTo('info@example.com', 'Information'); +$mail->addCC('cc@example.com'); +$mail->addBCC('bcc@example.com'); + +$mail->WordWrap = 50; // Set word wrap to 50 characters +$mail->addAttachment('/var/tmp/file.tar.gz'); // Add attachments +$mail->addAttachment('/tmp/image.jpg', 'new.jpg'); // Optional name +$mail->isHTML(true); // Set email format to HTML + +$mail->Subject = 'Here is the subject'; +$mail->Body = 'This is the HTML message body in bold!'; +$mail->AltBody = 'This is the body in plain text for non-HTML mail clients'; + +if(!$mail->send()) { + echo 'Message could not be sent.'; + echo 'Mailer Error: ' . $mail->ErrorInfo; + exit; +} + +echo 'Message has been sent'; +``` + +You'll find plenty more to play with in the `examples` folder. + +That's it. You should now be ready to use PHPMailer! + +## Localization +PHPMailer defaults to English, but in the `languages` folder you'll find numerous translations for PHPMailer error messages that you may encounter. Their filenames contain [ISO 639-1](http://en.wikipedia.org/wiki/ISO_639-1) language code for the translations, for example `fr` for French. To specify a language, you need to tell PHPMailer which one to use, like this: + +```php +// To load the French version +$mail->setLanguage('fr', '/optional/path/to/language/directory/'); +``` + +## Documentation + +You'll find some basic user-level docs in the docs folder, and you can generate complete API-level documentation using the `generatedocs.sh` shell script in the docs folder, though you'll need to install [PHPDocumentor](http://www.phpdoc.org) first. + +## Tests + +You'll find a PHPUnit test script in the `test` folder. + +Build status: [![Build Status](https://travis-ci.org/PHPMailer/PHPMailer.png)](https://travis-ci.org/PHPMailer/PHPMailer) + +If this isn't passing, is there something you can do to help? + +## Contributing + +Please submit bug reports, suggestions and pull requests to the [GitHub issue tracker](https://github.com/PHPMailer/PHPMailer/issues). + +We're particularly interested in fixing edge-cases, expanding test coverage and updating translations. + +With the move to the PHPMailer GitHub organisation, you'll need to update any remote URLs referencing the old GitHub location with a command like this from within your clone: + +`git remote set-url upstream https://github.com/PHPMailer/PHPMailer.git` + +Please *don't* use the SourceForge or Google Code projects any more. + +## Changelog + +See [changelog](changelog.md). + +## History +- PHPMailer was originally written in 2001 by Brent R. Matzelle as a [SourceForge project](http://sourceforge.net/projects/phpmailer/). +- Marcus Bointon (coolbru on SF) and Andy Prevost (codeworxtech) took over the project in 2004. +- Became an Apache incubator project on Google Code in 2010, managed by Jim Jagielski. +- Marcus created his fork on [GitHub](https://github.com/Synchro/PHPMailer). +- Jim and Marcus decide to join forces and use GitHub as the canonical and official repo for PHPMailer. +- PHPMailer moves to the [PHPMailer organisation](https://github.com/PHPMailer) on GitHub. + +### What's changed since moving from SourceForge? +- Official successor to the SourceForge and Google Code projects. +- Test suite. +- Continuous integration with Travis-CI. +- Composer support. +- Rolling releases. +- Additional languages and language strings. +- CRAM-MD5 authentication support. +- Preserves full repo history of authors, commits and branches from the original SourceForge project. diff --git a/lib/phpmailer/README_MOODLE.txt b/lib/phpmailer/README_MOODLE.txt index 107d288e9df..165f08c8a1d 100644 --- a/lib/phpmailer/README_MOODLE.txt +++ b/lib/phpmailer/README_MOODLE.txt @@ -1,4 +1,4 @@ -Description of PHPMailer 5.2.1 library import into Moodle +Description of PHPMailer 5.2.7 library import into Moodle We now use a vanilla version of phpmailer and do our customisations in a subclass. diff --git a/lib/phpmailer/changelog.txt b/lib/phpmailer/changelog.md similarity index 55% rename from lib/phpmailer/changelog.txt rename to lib/phpmailer/changelog.md index e2c982db4f3..4caa7778a58 100644 --- a/lib/phpmailer/changelog.txt +++ b/lib/phpmailer/changelog.md @@ -1,27 +1,144 @@ -ChangeLog +# ChangeLog -NOTE: THIS VERSION OF PHPMAILER IS DESIGNED FOR PHP5/PHP6. - IT WILL NOT WORK WITH PHP4. +## Version 5.2.7 (September 12th 2013) +* Add Ukranian translation from @Krezalis +* Support for do_verp +* Fix bug in CRAM-MD5 AUTH +* Propagate Debugoutput option to SMTP class (@Reblutus) +* Determine MIME type of attachments automatically +* Add cross-platform, multibyte-safe pathinfo replacement (with tests) and use it +* Add a new 'html' Debugoutput type +* Clean up SMTP debug output, remove embedded HTML +* Some small changes in header formatting to improve IETF msglint test results +* Update test_script to use some recently changed features, rename to code_generator +* Generated code actually works! +* Update SyntaxHighlighter +* Major overhaul and cleanup of example code +* New PHPMailer graphic +* msgHTML now uses RFC2392-compliant content ids +* Add line break normalization function and use it in msgHTML +* Don't set unnecessary reply-to addresses +* Make fakesendmail.sh a bit cleaner and safer +* Set a content-transfer-encoding on multiparts (fixes msglint error) +* Fix cid generation in msgHTML (Thanks to @digitalthought) +* Fix handling of multiple SMTP servers (Thanks to @NanoCaiordo) +* SMTP->connect() now supports stream context options (Thanks to @stanislavdavid) +* Add support for iCal event alternatives (Thanks to @reblutus) +* Update to Polish language file (Thanks to Krzysztof Kowalewski) +* Update to Norwegian language file (Thanks to @datagutten) +* Update to Hungarian language file (Thanks to @dominicus-75) +* Add Persian/Farsi translation from @jaii +* Make SMTPDebug property type match type in SMTP class +* Add unit tests for DKIM +* Major refactor of SMTP class +* Reformat to PSR-2 coding standard +* Introduce autoloader +* Allow overriding of SMTP class +* Overhaul of PHPDocs +* Fix broken Q-encoding +* Czech language update (Thanks to @nemelu) +* Removal of excess blank lines in messages +* Added fake POP server and unit tests for POP-before-SMTP -Version 5.2.1 (January 16, 2012) -* Closed several bugs +## Version 5.2.6 (April 11th 2013) +* Reflect move to PHPMailer GitHub organisation at https://github.com/PHPMailer/PHPMailer +* Fix unbumped version numbers +* Update packagist.org with new location +* Clean up Changelog + +## Version 5.2.5 (April 6th 2013) +* First official release after move from Google Code +* Fixes for qmail when sending via mail() +* Merge in changes from Google code 5.2.4 release +* Minor coding standards cleanup in SMTP class +* Improved unit tests, now tests S/MIME signing +* Travis-CI support on GitHub, runs tests with fake SMTP server + +## Version 5.2.4 (February 19, 2013) +* Fix tag and version bug. +* un-deprecate isSMTP(), isMail(), IsSendmail() and isQmail(). +* Numerous translation updates + +## Version 5.2.3 (February 8, 2013) +* Fix issue with older PCREs and ValidateAddress() (Bugz: 124) +* Add CRAM-MD5 authentication, thanks to Elijah madden, https://github.com/okonomiyaki3000 +* Replacement of obsolete Quoted-Printable encoder with a much better implementation +* Composer package definition +* New language added: Hebrew + +## Version 5.2.2 (December 3, 2012) +* Some fixes and syncs from https://github.com/Synchro/PHPMailer +* Add Slovak translation, thanks to Michal Tinka + +## Version 5.2.2-rc2 (November 6, 2012) +* Fix SMTP server rotation (Bugz: 118) +* Allow override of autogen'ed 'Date' header (for Drupal's + og_mailinglist module) +* No whitespace after '-f' option (Bugz: 116) +* Work around potential warning (Bugz: 114) + +## Version 5.2.2-rc1 (September 28, 2012) +* Header encoding works with long lines (Bugz: 93) +* Turkish language update (Bugz: 94) +* undefined $pattern in EncodeQ bug squashed (Bugz: 98) +* use of mail() in safe_mode now works (Bugz: 96) +* ValidateAddress() now 'public static' so people can override the + default and use their own validation scheme. +* ValidateAddress() no longer uses broken FILTER_VALIDATE_EMAIL +* Added in AUTH PLAIN SMTP authentication + +## Version 5.2.2-beta2 (August 17, 2012) +* Fixed Postfix VERP support (Bugz: 92) +* Allow action_function callbacks to pass/use + the From address (passed as final param) +* Prevent inf look for get_lines() (Bugz: 77) +* New public var ($UseSendmailOptions). Only pass sendmail() + options iff we really are using sendmail or something sendmail + compatible. (Bugz: 75) +* default setting for LE returned to "\n" due to popular demand. + +## Version 5.2.2-beta1 (July 13, 2012) +* Expose PreSend() and PostSend() as public methods to allow + for more control if serializing message sending. +* GetSentMIMEMessage() only constructs the message copy when + needed. Save memory. +* Only pass params to mail() if the underlying MTA is + "sendmail" (as defined as "having the string sendmail + in its pathname") [#69] +* Attachments now work with Amazon SES and others [Bugz#70] +* Debug output now sent to stdout (via echo) or error_log [Bugz#5] +* New var: Debugoutput (for above) [Bugz#5] +* SMTP reads now Timeout aware (new var: Timeout=15) [Bugz#71] +* SMTP reads now can have a Timelimit associated with them + (new var: Timelimit=30)[Bugz#71] +* Fix quoting issue associated with charsets +* default setting for LE is now RFC compliant: "\r\n" +* Return-Path can now be user defined (new var: ReturnPath) + (the default is "" which implies no change from previous + behavior, which was to use either From or Sender) [Bugz#46] +* X-Mailer header can now be disabled (by setting to a + whitespace string, eg " ") [Bugz#66] +* Bugz closed: #68, #60, #42, #43, #59, #55, #66, #48, #49, + #52, #31, #41, #5. #70, #69 + +## Version 5.2.1 (January 16, 2012) +* Closed several bugs#5 * Performance improvements * MsgHTML() now returns the message as required. * New method: GetSentMIMEMessage() (returns full copy of sent message) -Version 5.2 (July 19, 2011) +## Version 5.2 (July 19, 2011) * protected MIME body and header * better DKIM DNS Resource Record support * better aly handling * htmlfilter class added to extras * moved to Apache Extras -Version 5.1 (October 20, 2009) +## Version 5.1 (October 20, 2009) * fixed filename issue with AddStringAttachment (thanks to Tony) * fixed "SingleTo" property, now works with Senmail, Qmail, and SMTP in addition to PHP mail() -* added DKIM digital signing functionality - New properties: +* added DKIM digital signing functionality, new properties: - DKIM_domain (sets the domain name) - DKIM_private (holds DKIM private key) - DKIM_passphrase (holds your DKIM passphrase) @@ -30,7 +147,7 @@ Version 5.1 (October 20, 2009) * added callback function support - callback function parameters include: result, to, cc, bcc, subject and body - * see the test/test_callback.php file for usage. + - see the test/test_callback.php file for usage. * added "auto" identity functionality - can automatically add: - Return-path (if Sender not set) @@ -38,63 +155,62 @@ Version 5.1 (October 20, 2009) - can be disabled: - $mail->SetFrom('yourname@yourdomain.com','First Last',false); - or by adding the $mail->Sender and/or $mail->ReplyTo properties - Note: "auto" identity added to help with emails ending up in spam - or junk boxes because of missing headers -Version 5.0.2 (May 24, 2009) +Note: "auto" identity added to help with emails ending up in spam or junk boxes because of missing headers + +## Version 5.0.2 (May 24, 2009) * Fix for missing attachments when inline graphics are present * Fix for missing Cc in header when using SMTP (mail was sent, - but not displayed in header -- Cc receiver only saw email To: + but not displayed in header -- Cc receiver only saw email To: line and no Cc line, but did get the email (To receiver saw same) -Version 5.0.1 (April 05, 2009) +## Version 5.0.1 (April 05, 2009) * Temporary fix for missing attachments -Version 5.0.0 (April 02, 2009) +## Version 5.0.0 (April 02, 2009) +With the release of this version, we are initiating a new version numbering +system to differentiate from the PHP4 version of PHPMailer. +Most notable in this release is fully object oriented code. -* With the release of this version, we are initiating a new version numbering - system to differentiate from the PHP4 version of PHPMailer. -* Most notable in this release is fully object oriented code. -class.smtp.php: +### class.smtp.php: * Refactored class.smtp.php to support new exception handling - code size reduced from 29.2 Kb to 25.6 Kb +* code size reduced from 29.2 Kb to 25.6 Kb * Removed unnecessary functions from class.smtp.php: - public function Expand($name) { - public function Help($keyword="") { - public function Noop() { - public function Send($from) { - public function SendOrMail($from) { - public function Verify($name) { -class.phpmailer.php: + - public function Expand($name) { + - public function Help($keyword="") { + - public function Noop() { + - public function Send($from) { + - public function SendOrMail($from) { + - public function Verify($name) { + +### class.phpmailer.php: * Refactored class.phpmailer.php with new exception handling * Changed processing functionality of Sendmail and Qmail so they cannot be inadvertently used * removed getFile() function, just became a simple wrapper for file_get_contents() * added check for PHP version (will gracefully exit if not at least PHP 5.0) -class.phpmailer.php enhancements * enhanced code to check if an attachment source is the same as an embedded or inline graphic source to eliminate duplicate attachments -New /test_script -* We have written a test script you can use to test the script as part of your - installation. Once you press submit, the test script will send a multi-mime - email with either the message you type in or an HTML email with an inline - graphic. Two attachments are included in the email (one of the attachments - is also the inline graphic so you can see that only one copy of the graphic - is sent in the email). The test script will also display the functional - script that you can copy/paste to your editor to duplicate the functionality. -New examples -* All new examples in both basic and advanced modes. Advanced examples show - Exception handling. -PHPDocumentator (phpdocs) documentation for PHPMailer version 5.0.0 -* all new documentation -Please note: the website has been updated to reflect the changes in PHPMailer -version 5.0.0. http://phpmailer.codeworxtech.com/ +### New /test_script +We have written a test script you can use to test the script as part of your +installation. Once you press submit, the test script will send a multi-mime +email with either the message you type in or an HTML email with an inline +graphic. Two attachments are included in the email (one of the attachments +is also the inline graphic so you can see that only one copy of the graphic +is sent in the email). The test script will also display the functional +script that you can copy/paste to your editor to duplicate the functionality. -Version 2.3 (November 06, 2008) +### New examples +All new examples in both basic and advanced modes. Advanced examples show + Exception handling. +### PHPDocumentator (phpdocs) documentation for PHPMailer version 5.0.0 +All new documentation + +## Version 2.3 (November 06, 2008) * added Arabic language (many thanks to Bahjat Al Mostafa) * removed English language from language files and made it a default within class.phpmailer.php - if no language is found, it will default to use @@ -112,22 +228,17 @@ Version 2.3 (November 06, 2008) * We have removed the /phpdoc from the downloads. All documentation is now on the http://phpmailer.codeworxtech.com website. -Version 2.2.1 () July 19 2008 - +## Version 2.2.1 () July 19 2008 * fixed line 1092 in class.smtp.php (my apologies, error on my part) -Version 2.2 () July 15 2008 - +## Version 2.2 () July 15 2008 * Fixed redirect issue (display of UTF-8 in thank you redirect) * fixed error in getResponse function declaration (class.pop3.php) * PHPMailer now PHP6 compliant * fixed line 1092 in class.smtp.php (endless loop from missing = sign) -Version 2.1 (Wed, June 04 2008) - -** NOTE: WE HAVE A NEW LANGUAGE VARIABLE FOR DIGITALLY SIGNED S/MIME EMAILS. - IF YOU CAN HELP WITH LANGUAGES OTHER THAN ENGLISH AND SPANISH, IT WOULD BE - APPRECIATED. +## Version 2.1 (Wed, June 04 2008) +NOTE: WE HAVE A NEW LANGUAGE VARIABLE FOR DIGITALLY SIGNED S/MIME EMAILS. IF YOU CAN HELP WITH LANGUAGES OTHER THAN ENGLISH AND SPANISH, IT WOULD BE APPRECIATED. * added S/MIME functionality (ability to digitally sign emails) BIG THANKS TO "sergiocambra" for posting this patch back in November 2007. @@ -144,15 +255,15 @@ Version 2.1 (Wed, June 04 2008) directive, to your own server timezone - If you do get this error, and are unable to access your php.ini file: In your PHP script, add - date_default_timezone_set('America/Toronto'); - - do not try to use - $myVar = date_default_timezone_get(); + `date_default_timezone_set('America/Toronto');` + - do not try to use + `$myVar = date_default_timezone_get();` as a test, it will throw an error. * added ability to define path (mainly for embedded images) - function MsgHTML($message,$basedir='') ... where: - $basedir is the fully qualified path -* fixed MsgHTML() function: - - Embedded Images where images are specified by :// will not be altered or embedded + function `MsgHTML($message,$basedir='')` ... where: + `$basedir` is the fully qualified path +* fixed `MsgHTML()` function: + - Embedded Images where images are specified by `://` will not be altered or embedded * fixed the return value of SMTP exit code ( pclose ) * addressed issue of multibyte characters in subject line and truncating * added ability to have user specified Message ID @@ -162,21 +273,20 @@ Version 2.1 (Wed, June 04 2008) * added check for added attachments * enhanced conversion of HTML to text in MsgHTML (thanks to "brunny") -Version 2.1.0beta2 (Sun, Dec 02 2007) +## Version 2.1.0beta2 (Sun, Dec 02 2007) * implemented updated EncodeQP (thanks to coolbru, aka Marcus Bointon) * finished all testing, all known bugs corrected, enhancements tested -- note: will NOT work with PHP4. -please note, this is BETA software +Note: will NOT work with PHP4. + +Please note, this is BETA software **DO NOT USE THIS IN PRODUCTION OR LIVE PROJECTS; INTENDED STRICTLY FOR TESTING** + +## Version 2.1.0beta1 +Please note, this is BETA software ** DO NOT USE THIS IN PRODUCTION OR LIVE PROJECTS -INTENDED STRICTLY FOR TESTING + INTENDED STRICTLY FOR TESTING -Version 2.1.0beta1 -please note, this is BETA software -** DO NOT USE THIS IN PRODUCTION OR LIVE PROJECTS -INTENDED STRICTLY FOR TESTING - -Version 2.0.0 rc2 (Fri, Nov 16 2007), interim release +## Version 2.0.0 rc2 (Fri, Nov 16 2007), interim release * implements new property to control VERP in class.smtp.php example (requires instantiating class.smtp.php): $mail->do_verp = true; @@ -197,8 +307,10 @@ it's a legitimate way for you to send emails. A partial example for use with PHPMailer: +``` $mail->AddAddress("undisclosed-recipients:;"); $mail->AddBCC("email1@anydomain.com,email2@anyotherdomain.com,email3@anyalternatedomain.com"); +``` Many email service providers restrict the number of emails that can be sent in any given time period. Often that is between 50 - 60 emails maximum @@ -208,7 +320,7 @@ If that's the case, then break up your Bcc lists into chunks that are one less than your limit, and put a pause in your script. ******************* -Version 2.0.0 rc1 (Thu, Nov 08 2007), interim release +## Version 2.0.0 rc1 (Thu, Nov 08 2007), interim release * dramatically simplified using inline graphics ... it's fully automated and requires no user input * added automatic document type detection for attachments and pictures * added MsgHTML() function to replace Body tag for HTML emails @@ -221,36 +333,43 @@ Version 2.0.0 rc1 (Thu, Nov 08 2007), interim release * added header injection patch * added "set" method to permit users to create their own pseudo-properties like 'X-Headers', etc. example of use: - $mail->set('X-Priority', '3'); - $mail->set('X-MSMail-Priority', 'Normal'); + +``` +$mail->set('X-Priority', '3'); +$mail->set('X-MSMail-Priority', 'Normal'); +``` + * fixed warning message in SMTP get_lines method -* added TLS/SSL SMTP support - example of use: - $mail = new PHPMailer(); - $mail->Mailer = "smtp"; - $mail->Host = "smtp.example.com"; - $mail->SMTPSecure = "tls"; // option - //$mail->SMTPSecure = "ssl"; // option - ... - $mail->Send(); +* added TLS/SSL SMTP support. Example of use: + +``` +$mail = new PHPMailer(); +$mail->Mailer = "smtp"; +$mail->Host = "smtp.example.com"; +$mail->SMTPSecure = "tls"; // option +//$mail->SMTPSecure = "ssl"; // option +... +$mail->Send(); +``` + * PHPMailer has been tested with PHP4 (4.4.7) and PHP5 (5.2.7) * Works with PHP installed as a module or as CGI-PHP -- NOTE: will NOT work with PHP5 in E_STRICT error mode +NOTE: will NOT work with PHP5 in E_STRICT error mode -Version 1.73 (Sun, Jun 10 2005) +## Version 1.73 (Sun, Jun 10 2005) * Fixed denial of service bug: http://www.cybsec.com/vuln/PHPMailer-DOS.pdf * Now has a total of 20 translations * Fixed alt attachments bug: http://tinyurl.com/98u9k -Version 1.72 (Wed, May 25 2004) +## Version 1.72 (Wed, May 25 2004) * Added Dutch, Swedish, Czech, Norwegian, and Turkish translations. * Received: Removed this method because spam filter programs like -SpamAssassin reject this header. + SpamAssassin reject this header. * Fixed error count bug. * SetLanguage default is now "language/". * Fixed magic_quotes_runtime bug. -Version 1.71 (Tue, Jul 28 2003) +## Version 1.71 (Tue, Jul 28 2003) * Made several speed enhancements * Added German and Italian translation files * Fixed HELO/AUTH bugs on keep-alive connects @@ -259,7 +378,7 @@ Version 1.71 (Tue, Jul 28 2003) * Updated some unclear documentation * Added additional tests and improved others -Version 1.70 (Mon, Jun 20 2003) +## Version 1.70 (Mon, Jun 20 2003) * Added SMTP keep-alive support * Added IsError method for error detection * Added error message translation support (SetLanguage) @@ -279,20 +398,20 @@ Version 1.70 (Mon, Jun 20 2003) * Adds "To: undisclosed-recipients:;" when all recipients are hidden (BCC) * Multiple bug fixes -Version 1.65 (Fri, Aug 09 2002) +## Version 1.65 (Fri, Aug 09 2002) * Fixed non-visible attachment bug (#585097) for Outlook * SMTP connections are now closed after each transaction * Fixed SMTP::Expand return value * Converted SMTP class documentation to phpDocumentor format -Version 1.62 (Wed, Jun 26 2002) +## Version 1.62 (Wed, Jun 26 2002) * Fixed multi-attach bug * Set proper word wrapping * Reduced memory use with attachments * Added more debugging * Changed documentation to phpDocumentor format -Version 1.60 (Sat, Mar 30 2002) +## Version 1.60 (Sat, Mar 30 2002) * Sendmail pipe and address patch (Christian Holtje) * Added embedded image and read confirmation support (A. Ognio) * Added unit tests @@ -303,21 +422,21 @@ Version 1.60 (Sat, Mar 30 2002) * Eliminated SMTP class warnings * Added SendToQueue method for future queuing support -Version 1.54 (Wed, Dec 19 2001) +## Version 1.54 (Wed, Dec 19 2001) * Add some queuing support code * Fixed a pesky multi/alt bug * Messages are no longer forced to have "To" addresses -Version 1.50 (Thu, Nov 08 2001) +## Version 1.50 (Thu, Nov 08 2001) * Fix extra lines when not using SMTP mailer * Set WordWrap variable to int with a zero default -Version 1.47 (Tue, Oct 16 2001) +## Version 1.47 (Tue, Oct 16 2001) * Fixed Received header code format * Fixed AltBody order error * Fixed alternate port warning -Version 1.45 (Tue, Sep 25 2001) +## Version 1.45 (Tue, Sep 25 2001) * Added enhanced SMTP debug support * Added support for multiple ports on SMTP * Added Received header for tracing @@ -326,84 +445,84 @@ Version 1.45 (Tue, Sep 25 2001) * Fixed wordwrap() trim bug * Couple other small bug fixes -Version 1.41 (Wed, Aug 22 2001) +## Version 1.41 (Wed, Aug 22 2001) * Fixed AltBody bug w/o attachments * Fixed rfc_date() for certain mail servers -Version 1.40 (Sun, Aug 12 2001) +## Version 1.40 (Sun, Aug 12 2001) * Added multipart/alternative support (AltBody) * Documentation update * Fixed bug in Mercury MTA -Version 1.29 (Fri, Aug 03 2001) +## Version 1.29 (Fri, Aug 03 2001) * Added AddStringAttachment() method * Added SMTP authentication support -Version 1.28 (Mon, Jul 30 2001) +## Version 1.28 (Mon, Jul 30 2001) * Fixed a typo in SMTP class * Fixed header issue with Imail (win32) SMTP server * Made fopen() calls for attachments use "rb" to fix win32 error -Version 1.25 (Mon, Jul 02 2001) +## Version 1.25 (Mon, Jul 02 2001) * Added RFC 822 date fix (Patrice) * Added improved error handling by adding a $ErrorInfo variable * Removed MailerDebug variable (obsolete with new error handler) -Version 1.20 (Mon, Jun 25 2001) +## Version 1.20 (Mon, Jun 25 2001) * Added quoted-printable encoding (Patrice) * Set Version as public and removed PrintVersion() * Changed phpdoc to only display public variables and methods -Version 1.19 (Thu, Jun 21 2001) +## Version 1.19 (Thu, Jun 21 2001) * Fixed MS Mail header bug * Added fix for Bcc problem with mail(). *Does not work on Win32* (See PHP bug report: http://www.php.net/bugs.php?id=11616) * mail() no longer passes a fifth parameter when not needed -Version 1.15 (Fri, Jun 15 2001) -[Note: these changes contributed by Patrice Fournier] +## Version 1.15 (Fri, Jun 15 2001) +Note: these changes contributed by Patrice Fournier * Changed all remaining \n to \r\n * Bcc: header no longer writen to message except -when sent directly to sendmail + when sent directly to sendmail * Added a small message to non-MIME compliant mail reader * Added Sender variable to change the Sender email -used in -f for sendmail/mail and in 'MAIL FROM' for smtp mode + used in -f for sendmail/mail and in 'MAIL FROM' for smtp mode * Changed boundary setting to a place it will be set only once * Removed transfer encoding for whole message when using multipart * Message body now uses Encoding in multipart messages * Can set encoding and type to attachments 7bit, 8bit -and binary attachment are sent as is, base64 are encoded + and binary attachment are sent as is, base64 are encoded * Can set Encoding to base64 to send 8 bits body -through 7 bits servers + through 7 bits servers -Version 1.10 (Tue, Jun 12 2001) +## Version 1.10 (Tue, Jun 12 2001) * Fixed win32 mail header bug (printed out headers in message body) -Version 1.09 (Fri, Jun 08 2001) +## Version 1.09 (Fri, Jun 08 2001) * Changed date header to work with Netscape mail programs * Altered phpdoc documentation -Version 1.08 (Tue, Jun 05 2001) +## Version 1.08 (Tue, Jun 05 2001) * Added enhanced error-checking * Added phpdoc documentation to source -Version 1.06 (Fri, Jun 01 2001) +## Version 1.06 (Fri, Jun 01 2001) * Added optional name for file attachments -Version 1.05 (Tue, May 29 2001) +## Version 1.05 (Tue, May 29 2001) * Code cleanup * Eliminated sendmail header warning message * Fixed possible SMTP error -Version 1.03 (Thu, May 24 2001) +## Version 1.03 (Thu, May 24 2001) * Fixed problem where qmail sends out duplicate messages -Version 1.02 (Wed, May 23 2001) +## Version 1.02 (Wed, May 23 2001) * Added multiple recipient and attachment Clear* methods * Added Sendmail public variable * Fixed problem with loading SMTP library multiple times -Version 0.98 (Tue, May 22 2001) +## Version 0.98 (Tue, May 22 2001) * Fixed problem with redundant mail hosts sending out multiple messages * Added additional error handler code * Added AddCustomHeader() function @@ -411,11 +530,11 @@ Version 0.98 (Tue, May 22 2001) * Fixed small bug with Mailer variable * Added PrintVersion() function -Version 0.92 (Tue, May 15 2001) +## Version 0.92 (Tue, May 15 2001) * Changed file names to class.phpmailer.php and class.smtp.php to match current PHP class trend. * Fixed problem where body not being printed when a message is attached * Several small bug fixes -Version 0.90 (Tue, April 17 2001) -* Intial public release +## Version 0.90 (Tue, April 17 2001) +* Initial public release diff --git a/lib/phpmailer/class.phpmailer.php b/lib/phpmailer/class.phpmailer.php index af089d59789..fe37a93bf89 100644 --- a/lib/phpmailer/class.phpmailer.php +++ b/lib/phpmailer/class.phpmailer.php @@ -1,2532 +1,3268 @@ + * @author Jim Jagielski (jimjag) + * @author Andy Prevost (codeworxtech) + * @author Brent R. Matzelle (original founder) + * @copyright 2013 Marcus Bointon * @copyright 2010 - 2012 Jim Jagielski * @copyright 2004 - 2009 Andy Prevost - * @version $Id: class.phpmailer.php 450 2010-06-23 16:46:33Z coolbru $ * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License + * @note 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. */ -if (version_compare(PHP_VERSION, '5.0.0', '<') ) exit("Sorry, this version of PHPMailer will only run on PHP version 5 or greater!\n"); - -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 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 complete sent MIME message (Body and Headers) - * @var string - * @access protected - */ - protected $SentMIMEMessage = ''; - - /** - * 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'; - - /** - * 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 = ''; - - ///////////////////////////////////////////////// - // 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 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; - - /** - * 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 line ending - * @var string - */ - public $LE = "\n"; - - /** - * Used with DKIM DNS Resource Record - * @var string - */ - public $DKIM_selector = 'phpmailer'; - - /** - * Used with DKIM DNS Resource Record - * optional, in format of email address 'you@yourdomain.com' - * @var string - */ - public $DKIM_identity = ''; - - /** - * Used with DKIM DNS Resource Record - * @var string - */ - public $DKIM_passphrase = ''; - - /** - * Used with DKIM DNS Resource Record - * optional, in format of email address 'you@yourdomain.com' - * @var string - */ - public $DKIM_domain = ''; - - /** - * Used with DKIM DNS Resource Record - * optional, in format of email address 'you@yourdomain.com' - * @var string - */ - public $DKIM_private = ''; - - /** - * Callback Action function name - * the function that handles the result of the send email action. 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 - * @var string - */ - public $action_function = ''; //'callbackAction'; - - /** - * Sets the PHPMailer Version number - * @var string - */ - public $Version = '5.2.1'; - - /** - * What to use in the X-Mailer header - * @var string - */ - public $XMailer = ''; - - ///////////////////////////////////////////////// - // PROPERTIES, PRIVATE AND PROTECTED - ///////////////////////////////////////////////// - - protected $smtp = NULL; - protected $to = array(); - protected $cc = array(); - protected $bcc = array(); - protected $ReplyTo = array(); - protected $all_recipients = array(); - protected $attachment = array(); - protected $CustomHeader = array(); - protected $message_type = ''; - protected $boundary = array(); - protected $language = array(); - protected $error_count = 0; - protected $sign_cert_file = ''; - protected $sign_key_file = ''; - protected $sign_key_pass = ''; - 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 - - ///////////////////////////////////////////////// - // METHODS, VARIABLES - ///////////////////////////////////////////////// - - /** - * 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 - * @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) { - echo $this->Lang('Invalid recipient array').': '.$kind; - } - return false; - } - $address = trim($address); - $name = trim(preg_replace('/[\r\n]+/', '', $name)); //Strip breaks and trim - if (!self::ValidateAddress($address)) { - $this->SetError($this->Lang('invalid_address').': '. $address); - if ($this->exceptions) { - throw new phpmailerException($this->Lang('invalid_address').': '.$address); - } - if ($this->SMTPDebug) { - echo $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; +if (version_compare(PHP_VERSION, '5.0.0', '<')) { + exit("Sorry, PHPMailer will only run on PHP version 5 or greater!\n"); } /** - * Set the From and FromName properties - * @param string $address - * @param string $name - * @return boolean + * PHPMailer - PHP email creation and transport class. + * PHP Version 5.0.0 + * @package PHPMailer + * @author Marcus Bointon (coolbru) + * @author Jim Jagielski (jimjag) + * @author Andy Prevost (codeworxtech) + * @author Brent R. Matzelle (original founder) + * @copyright 2013 Marcus Bointon + * @copyright 2010 - 2012 Jim Jagielski + * @copyright 2004 - 2009 Andy Prevost */ - public function SetFrom($address, $name = '', $auto = 1) { - $address = trim($address); - $name = trim(preg_replace('/[\r\n]+/', '', $name)); //Strip breaks and trim - if (!self::ValidateAddress($address)) { - $this->SetError($this->Lang('invalid_address').': '. $address); - if ($this->exceptions) { - throw new phpmailerException($this->Lang('invalid_address').': '.$address); - } - if ($this->SMTPDebug) { - echo $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; - } +class PHPMailer +{ + /** + * The PHPMailer Version number. + * @type string + */ + public $Version = '5.2.7'; - /** - * Check that a string looks roughly like an email address should - * Static so it can be used without instantiation - * Tries to use PHP built-in validator in the filter extension (from PHP 5.2), falls back to a reasonably competent regex validator - * Conforms approximately to RFC2822 - * @link http://www.hexillion.com/samples/#Regex Original pattern found here - * @param string $address The email address to check - * @return boolean - * @static - * @access public - */ - public static function ValidateAddress($address) { - if (function_exists('filter_var')) { //Introduced in PHP 5.2 - if(filter_var($address, FILTER_VALIDATE_EMAIL) === FALSE) { + /** + * Email priority. + * Options: 1 = High, 3 = Normal, 5 = low. + * @type int + */ + public $Priority = 3; + + /** + * The character set of the message. + * @type string + */ + public $CharSet = 'iso-8859-1'; + + /** + * The MIME Content-type of the message. + * @type string + */ + public $ContentType = 'text/plain'; + + /** + * The message encoding. + * Options: "8bit", "7bit", "binary", "base64", and "quoted-printable". + * @type string + */ + public $Encoding = '8bit'; + + /** + * Holds the most recent mailer error message. + * @type string + */ + public $ErrorInfo = ''; + + /** + * The From email address for the message. + * @type string + */ + public $From = 'root@localhost'; + + /** + * The From name of the message. + * @type string + */ + public $FromName = 'Root User'; + + /** + * 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. + * @type string + */ + public $Sender = ''; + + /** + * The Return-Path of the message. + * If empty, it will be set to either From or Sender. + * @type string + */ + public $ReturnPath = ''; + + /** + * The Subject of the message. + * @type string + */ + public $Subject = ''; + + /** + * An HTML or plain text message body. + * If HTML then call isHTML(true). + * @type string + */ + public $Body = ''; + + /** + * The plain-text message body. + * This body can be read by mail clients that do not have HTML email + * capability such as mutt & Eudora. + * Clients that can read HTML will view the normal Body. + * @type string + */ + public $AltBody = ''; + + /** + * An iCal message part body. + * Only supported in simple alt or alt_inline message types + * To generate iCal events, use the bundled extras/EasyPeasyICS.php class or iCalcreator + * @link http://sprain.ch/blog/downloads/php-class-easypeasyics-create-ical-files-with-php/ + * @link http://kigkonsult.se/iCalcreator/ + * @type string + */ + public $Ical = ''; + + /** + * The complete compiled MIME message body. + * @access protected + * @type string + */ + protected $MIMEBody = ''; + + /** + * The complete compiled MIME message headers. + * @type string + * @access protected + */ + protected $MIMEHeader = ''; + + /** + * Extra headers that createHeader() doesn't fold in. + * @type string + * @access protected + */ + protected $mailHeader = ''; + + /** + * Word-wrap the message body to this number of chars. + * @type int + */ + public $WordWrap = 0; + + /** + * Which method to use to send mail. + * Options: "mail", "sendmail", or "smtp". + * @type string + */ + public $Mailer = 'mail'; + + /** + * The path to the sendmail program. + * @type string + */ + public $Sendmail = '/usr/sbin/sendmail'; + + /** + * Whether mail() uses a fully sendmail-compatible MTA. + * One which supports sendmail's "-oi -f" options. + * @type bool + */ + public $UseSendmailOptions = true; + + /** + * Path to PHPMailer plugins. + * Useful if the SMTP class is not in the PHP include path. + * @type string + * @deprecated Should not be needed now there is an autoloader. + */ + public $PluginDir = ''; + + /** + * The email address that a reading confirmation should be sent to. + * @type string + */ + public $ConfirmReadingTo = ''; + + /** + * 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'. + * @type string + */ + public $Hostname = ''; + + /** + * An ID to be used in the Message-Id header. + * If empty, a unique id will be generated. + * @type string + */ + public $MessageID = ''; + + /** + * The message Date to be used in the Date header. + * If empty, the current date will be added. + * @type string + */ + public $MessageDate = ''; + + /** + * SMTP hosts. + * Either a single hostname or multiple semicolon-delimited hostnames. + * 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. + * @type string + */ + public $Host = 'localhost'; + + /** + * The default SMTP server port. + * @type int + * @Todo Why is this needed when the SMTP class takes care of it? + */ + public $Port = 25; + + /** + * The SMTP HELO of the message. + * Default is $Hostname. + * @type string + * @see PHPMailer::$Hostname + */ + public $Helo = ''; + + /** + * The secure connection prefix. + * Options: "", "ssl" or "tls" + * @type string + */ + public $SMTPSecure = ''; + + /** + * Whether to use SMTP authentication. + * Uses the Username and Password properties. + * @type bool + * @see PHPMailer::$Username + * @see PHPMailer::$Password + */ + public $SMTPAuth = false; + + /** + * SMTP username. + * @type string + */ + public $Username = ''; + + /** + * SMTP password. + * @type string + */ + public $Password = ''; + + /** + * SMTP auth type. + * Options are LOGIN (default), PLAIN, NTLM, CRAM-MD5 + * @type string + */ + public $AuthType = ''; + + /** + * SMTP realm. + * Used for NTLM auth + * @type string + */ + public $Realm = ''; + + /** + * SMTP workstation. + * Used for NTLM auth + * @type string + */ + public $Workstation = ''; + + /** + * The SMTP server timeout in seconds. + * @type int + */ + public $Timeout = 10; + + /** + * SMTP class debug output mode. + * Options: 0 = off, 1 = commands, 2 = commands and data + * @type int + * @see SMTP::$do_debug + */ + public $SMTPDebug = 0; + + /** + * The function/method to use for debugging output. + * Options: "echo" or "error_log" + * @type string + * @see SMTP::$Debugoutput + */ + public $Debugoutput = "echo"; + + /** + * Whether to keep SMTP connection open after each message. + * If this is set to true then to close the connection + * requires an explicit call to smtpClose(). + * @type bool + */ + public $SMTPKeepAlive = false; + + /** + * Whether to split multiple to addresses into multiple messages + * or send them all in one message. + * @type bool + */ + public $SingleTo = false; + + /** + * Storage for addresses when SingleTo is enabled. + * @type array + * @todo This should really not be public + */ + public $SingleToArray = array(); + + /** + * Whether to generate VERP addresses on send. + * Only applicable when sending via SMTP. + * @link http://en.wikipedia.org/wiki/Variable_envelope_return_path + * @type bool + */ + public $do_verp = false; + + /** + * Whether to allow sending messages with an empty body. + * @type bool + */ + public $AllowEmpty = false; + + /** + * The default line ending. + * @note The default remains "\n". We force CRLF where we know + * it must be used via self::CRLF. + * @type string + */ + public $LE = "\n"; + + /** + * DKIM selector. + * @type string + */ + public $DKIM_selector = ''; + + /** + * DKIM Identity. + * Usually the email address used as the source of the email + * @type string + */ + public $DKIM_identity = ''; + + /** + * DKIM passphrase. + * Used if your key is encrypted. + * @type string + */ + public $DKIM_passphrase = ''; + + /** + * DKIM signing domain name. + * @example 'example.com' + * @type string + */ + public $DKIM_domain = ''; + + /** + * DKIM private key file path. + * @type 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 + * + * @type string + */ + public $action_function = ''; + + /** + * What to use in the X-Mailer header. + * Options: null for default, whitespace for none, or a string to use + * @type string + */ + public $XMailer = ''; + + /** + * An instance of the SMTP sender class. + * @type SMTP + * @access protected + */ + protected $smtp = null; + + /** + * The array of 'to' addresses. + * @type array + * @access protected + */ + protected $to = array(); + + /** + * The array of 'cc' addresses. + * @type array + * @access protected + */ + protected $cc = array(); + + /** + * The array of 'bcc' addresses. + * @type array + * @access protected + */ + protected $bcc = array(); + + /** + * The array of reply-to names and addresses. + * @type array + * @access protected + */ + protected $ReplyTo = array(); + + /** + * An array of all kinds of addresses. + * Includes all of $to, $cc, $bcc, $replyto + * @type array + * @access protected + */ + protected $all_recipients = array(); + + /** + * The array of attachments. + * @type array + * @access protected + */ + protected $attachment = array(); + + /** + * The array of custom headers. + * @type array + * @access protected + */ + protected $CustomHeader = array(); + + /** + * The most recent Message-ID (including angular brackets). + * @type string + * @access protected + */ + protected $lastMessageID = ''; + + /** + * The message's MIME type. + * @type string + * @access protected + */ + protected $message_type = ''; + + /** + * The array of MIME boundary strings. + * @type array + * @access protected + */ + protected $boundary = array(); + + /** + * The array of available languages. + * @type array + * @access protected + */ + protected $language = array(); + + /** + * The number of errors encountered. + * @type integer + * @access protected + */ + protected $error_count = 0; + + /** + * The S/MIME certificate file path. + * @type string + * @access protected + */ + protected $sign_cert_file = ''; + + /** + * The S/MIME key file path. + * @type string + * @access protected + */ + protected $sign_key_file = ''; + + /** + * The S/MIME password for the key. + * Used only if the key is encrypted. + * @type string + * @access protected + */ + protected $sign_key_pass = ''; + + /** + * Whether to throw exceptions for errors. + * @type bool + * @access protected + */ + protected $exceptions = false; + + /** + * Error severity: message only, continue processing + */ + const STOP_MESSAGE = 0; + + /** + * Error severity: message, likely ok to continue processing + */ + const STOP_CONTINUE = 1; + + /** + * Error severity: message, plus full stop, critical error reached + */ + const STOP_CRITICAL = 2; + + /** + * SMTP RFC standard line ending + */ + const CRLF = "\r\n"; + + /** + * Constructor + * @param bool $exceptions Should we throw external exceptions? + */ + public function __construct($exceptions = false) + { + $this->exceptions = ($exceptions == true); + //Make sure our autoloader is loaded + if (!in_array('PHPMailerAutoload', spl_autoload_functions())) { + require 'PHPMailerAutoload.php'; + } + } + + /** + * Destructor. + */ + public function __destruct() + { + if ($this->Mailer == 'smtp') { //close any open SMTP connection nicely + $this->smtpClose(); + } + } + + /** + * Call mail() 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 mailPassthru($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; + } + + /** + * Output debugging info via user-defined method. + * Only if debug output is enabled. + * @see PHPMailer::$Debugoutput + * @see PHPMailer::$SMTPDebug + * @param string $str + */ + protected function edebug($str) + { + if (!$this->SMTPDebug) { + return; + } + switch ($this->Debugoutput) { + case 'error_log': + error_log($str); + break; + case 'html': + //Cleans up output a bit for a better looking display that's HTML-safe + echo htmlentities(preg_replace('/[\r\n]+/', '', $str), ENT_QUOTES, $this->CharSet) . "
                \n"; + break; + case 'echo': + default: + //Just echoes exactly what was received + echo $str; + } + } + + /** + * Sets message type to HTML or plain. + * @param bool $ishtml True for HTML mode. + * @return void + */ + public function isHTML($ishtml = true) + { + if ($ishtml) { + $this->ContentType = 'text/html'; + } else { + $this->ContentType = 'text/plain'; + } + } + + /** + * Send messages using SMTP. + * @return void + */ + public function isSMTP() + { + $this->Mailer = 'smtp'; + } + + /** + * Send messages using PHP's mail() function. + * @return void + */ + public function isMail() + { + $this->Mailer = 'mail'; + } + + /** + * Send messages using $Sendmail. + * @return void + */ + public function isSendmail() + { + if (!stristr(ini_get('sendmail_path'), 'sendmail')) { + $this->Sendmail = '/var/qmail/bin/sendmail'; + } + $this->Mailer = 'sendmail'; + } + + /** + * Send messages using qmail. + * @return void + */ + public function isQmail() + { + if (stristr(ini_get('sendmail_path'), 'qmail')) { + $this->Sendmail = '/var/qmail/bin/sendmail'; + } + $this->Mailer = 'sendmail'; + } + + /** + * Add a "To" address. + * @param string $address + * @param string $name + * @return bool true on success, false if address already used + */ + public function addAddress($address, $name = '') + { + return $this->addAnAddress('to', $address, $name); + } + + /** + * Add 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 bool true on success, false if address already used + */ + public function addCC($address, $name = '') + { + return $this->addAnAddress('cc', $address, $name); + } + + /** + * Add 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 bool true on success, false if address already used + */ + public function addBCC($address, $name = '') + { + return $this->addAnAddress('bcc', $address, $name); + } + + /** + * Add a "Reply-to" address. + * @param string $address + * @param string $name + * @return bool + */ + public function addReplyTo($address, $name = '') + { + return $this->addAnAddress('Reply-To', $address, $name); + } + + /** + * Add 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 bool 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); + } + $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); + } + $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; - } else { + } + + /** + * Set the From and FromName properties. + * @param string $address + * @param string $name + * @param bool $auto Whether to also set the Sender address, defaults to true + * @throws phpmailerException + * @return bool + */ + public function setFrom($address, $name = '', $auto = true) + { + $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); + } + $this->edebug($this->lang('invalid_address') . ': ' . $address); + return false; + } + $this->From = $address; + $this->FromName = $name; + if ($auto) { + if (empty($this->Sender)) { + $this->Sender = $address; + } + } 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. - * @return bool - */ - public function Send() { - try { - if(!$this->PreSend()) return false; - return $this->PostSend(); - } catch (phpmailerException $e) { - $this->SentMIMEMessage = ''; - $this->SetError($e->getMessage()); - if ($this->exceptions) { - throw $e; - } - return false; + /** + * Return the Message-ID header of the last email. + * Technically this is the value from the last time the headers were created, + * but it's also the message ID of the last sent message except in + * pathological cases. + * @return string + */ + public function getLastMessageID() + { + return $this->lastMessageID; } - } - protected function PreSend() { - try { - $mailHeader = ""; - if ((count($this->to) + count($this->cc) + count($this->bcc)) < 1) { - throw new phpmailerException($this->Lang('provide_address'), self::STOP_CRITICAL); - } + /** + * Check that a string looks like an email address. + * @param string $address The email address to check + * @param string $patternselect A selector for the validation pattern to use : + * 'auto' - pick best one automatically; + * 'pcre8' - use the squiloople.com pattern, requires PCRE > 8.0, PHP >= 5.3.2, 5.2.14; + * 'pcre' - use old PCRE implementation; + * 'php' - use PHP built-in FILTER_VALIDATE_EMAIL; faster, less thorough; + * 'noregex' - super fast, really dumb. + * @return bool + * @static + * @access public + */ + public static function validateAddress($address, $patternselect = 'auto') + { + if ($patternselect == 'auto') { + if (defined( + 'PCRE_VERSION' + ) + ) { //Check this instead of extension_loaded so it works when that function is disabled + if (version_compare(PCRE_VERSION, '8.0') >= 0) { + $patternselect = 'pcre8'; + } else { + $patternselect = 'pcre'; + } + } else { + //Filter_var appeared in PHP 5.2.0 and does not require the PCRE extension + if (version_compare(PHP_VERSION, '5.2.0') >= 0) { + $patternselect = 'php'; + } else { + $patternselect = 'noregex'; + } + } + } + switch ($patternselect) { + case 'pcre8': + /** + * 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 :( + * @link http://squiloople.com/2009/12/20/email-address-validation/ + * @copyright 2009-2010 Michael Rushton + * Feel free to use and redistribute this code. But please keep this copyright notice. + */ + return (bool)preg_match( + '/^(?!(?>(?1)"?(?>\\\[ -~]|[^"])"?(?1)){255,})(?!(?>(?1)"?(?>\\\[ -~]|[^"])"?(?1)){65,}@)' . + '((?>(?>(?>((?>(?>(?>\x0D\x0A)?[\t ])+|(?>[\t ]*\x0D\x0A)?[\t ]+)?)(\((?>(?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][:\]]){8,})((?6)(?>:(?6)){0,6})?::(?7)?))|(?>(?>IPv6:(?>(?6)(?>:(?6)){5}:' . + '|(?!(?:.*[a-f0-9]:){6,})(?8)?::(?>((?6)(?>:(?6)){0,4}):)?))?(25[0-5]|2[0-4][0-9]|1[0-9]{2}' . + '|[1-9]?[0-9])(?>\.(?9)){3}))\])(?1)$/isD', + $address + ); + break; + case 'pcre': + //An older regex that doesn't need a recent PCRE + return (bool)preg_match( + '/^(?!(?>"?(?>\\\[ -~]|[^"])"?){255,})(?!(?>"?(?>\\\[ -~]|[^"])"?){65,}@)(?>' . + '[!#-\'*+\/-9=?^-~-]+|"(?>(?>[\x01-\x08\x0B\x0C\x0E-!#-\[\]-\x7F]|\\\[\x00-\xFF]))*")' . + '(?>\.(?>[!#-\'*+\/-9=?^-~-]+|"(?>(?>[\x01-\x08\x0B\x0C\x0E-!#-\[\]-\x7F]|\\\[\x00-\xFF]))*"))*' . + '@(?>(?![a-z0-9-]{64,})(?>[a-z0-9](?>[a-z0-9-]*[a-z0-9])?)(?>\.(?![a-z0-9-]{64,})' . + '(?>[a-z0-9](?>[a-z0-9-]*[a-z0-9])?)){0,126}|\[(?:(?>IPv6:(?>(?>[a-f0-9]{1,4})(?>:' . + '[a-f0-9]{1,4}){7}|(?!(?:.*[a-f0-9][:\]]){8,})(?>[a-f0-9]{1,4}(?>:[a-f0-9]{1,4}){0,6})?' . + '::(?>[a-f0-9]{1,4}(?>:[a-f0-9]{1,4}){0,6})?))|(?>(?>IPv6:(?>[a-f0-9]{1,4}(?>:' . + '[a-f0-9]{1,4}){5}:|(?!(?:.*[a-f0-9]:){6,})(?>[a-f0-9]{1,4}(?>:[a-f0-9]{1,4}){0,4})?' . + '::(?>(?:[a-f0-9]{1,4}(?>:[a-f0-9]{1,4}){0,4}):)?))?(?>25[0-5]|2[0-4][0-9]|1[0-9]{2}' . + '|[1-9]?[0-9])(?>\.(?>25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}))\])$/isD', + $address + ); + break; + case 'php': + default: + return (bool)filter_var($address, FILTER_VALIDATE_EMAIL); + break; + case 'noregex': + //No PCRE! Do something _very_ approximate! + //Check the address is 3 chars or longer and contains an @ that's not the first or last char + return (strlen($address) >= 3 + and strpos($address, '@') >= 1 + and strpos($address, '@') != strlen($address) - 1); + break; + } + } - // Set whether the message is multipart/alternative - if(!empty($this->AltBody)) { - $this->ContentType = 'multipart/alternative'; - } + /** + * Create a message and send it. + * Uses the sending method specified by $Mailer. + * Returns false on error - 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; + } + } - $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); - } + /** + * Prepare a message for sending. + * @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); + } - $this->MIMEHeader = $this->CreateHeader(); - $this->MIMEBody = $this->CreateBody(); + // Set whether the message is multipart/alternative + if (!empty($this->AltBody)) { + $this->ContentType = 'multipart/alternative'; + } - // 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) { - $mailHeader .= $this->AddrAppend("To", $this->to); + $this->error_count = 0; // reset errors + $this->setMessageType(); + // Refuse to send an empty message unless we are specifically allowing it + if (!$this->AllowEmpty and 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))) + ); + } + + // 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->mailHeader, + $this->encodeHeader($this->secureHeader($this->Subject)), + $this->MIMEBody + ); + $this->MIMEHeader = rtrim($this->MIMEHeader, "\r\n ") . self::CRLF . + str_replace("\r\n", "\n", $header_dkim) . self::CRLF; + } + return true; + + } catch (phpmailerException $e) { + $this->setError($e->getMessage()); + if ($this->exceptions) { + throw $e; + } + return false; + } + } + + /** + * Actually send a message. + * 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; + } + $this->edebug($e->getMessage() . "\n"); + } + return false; + } + + /** + * Send mail using the $Sendmail program. + * @param string $header The message headers + * @param string $body The message body + * @see PHPMailer::$Sendmail + * @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 { - $mailHeader .= $this->HeaderLine("To", "undisclosed-recipients:;"); + $sendmail = sprintf("%s -oi -t", escapeshellcmd($this->Sendmail)); } - $mailHeader .= $this->HeaderLine('Subject', $this->EncodeHeader($this->SecureHeader(trim($this->Subject)))); - // if(count($this->cc) > 0) { - // $mailHeader .= $this->AddrAppend("Cc", $this->cc); - // } - } - - // digitally sign with DKIM if enabled - if ($this->DKIM_domain && $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; - } - - $this->SentMIMEMessage = sprintf("%s%s\r\n\r\n%s",$this->MIMEHeader,$mailHeader,$this->MIMEBody); - return true; - - } catch (phpmailerException $e) { - $this->SetError($e->getMessage()); - if ($this->exceptions) { - throw $e; - } - return false; - } - } - - protected 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) { - echo $e->getMessage()."\n"; - } - return false; - } - } - - /** - * Sends mail using the $Sendmail program. - * @param string $header The message headers - * @param string $body The message body - * @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 $key => $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 - * @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); - if ($this->SingleTo === true && count($toArr) > 1) { - foreach ($toArr as $key => $val) { - $rt = @mail($val, $this->EncodeHeader($this->SecureHeader($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 = @mail($to, $this->EncodeHeader($this->SecureHeader($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); - } - } else { - if ($this->SingleTo === true && count($toArr) > 1) { - foreach ($toArr as $key => $val) { - $rt = @mail($val, $this->EncodeHeader($this->SecureHeader($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 = @mail($to, $this->EncodeHeader($this->SecureHeader($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 - * @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)) { - throw new phpmailerException($this->Lang('from_failed') . $smtp_from, 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(); - } - return true; - } - - /** - * Initiates a connection to an SMTP server. - * Returns false if the operation failed. - * @uses SMTP - * @access public - * @return bool - */ - public function SmtpConnect() { - if(is_null($this->smtp)) { - $this->smtp = new SMTP(); - } - - $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]; + 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, $this->From); + if ($result != 0) { + throw new phpmailerException($this->lang('execute') . $this->Sendmail, self::STOP_CRITICAL); + } + } } else { - $host = $hosts[$index]; - $port = $this->Port; + 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, $this->From); + if ($result != 0) { + throw new phpmailerException($this->lang('execute') . $this->Sendmail, self::STOP_CRITICAL); + } + } + return true; + } + + /** + * Send mail using the PHP mail() function. + * @param string $header The message headers + * @param string $body The message body + * @link http://www.php.net/manual/en/book.mail.php + * @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 = " "; + } else { + $params = sprintf("-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->mailPassthru($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, $this->From); + } + } else { + $rt = $this->mailPassthru($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, $this->From); + } + if (isset($old_from)) { + ini_set('sendmail_from', $old_from); + } + if (!$rt) { + throw new phpmailerException($this->lang('instantiate'), self::STOP_CRITICAL); + } + return true; + } + + /** + * Get an instance to use for SMTP operations. + * Override this function to load your own SMTP implementation + * @return SMTP + */ + public function getSMTPInstance() + { + if (!is_object($this->smtp)) { + $this->smtp = new SMTP; + } + return $this->smtp; + } + + /** + * Send mail via SMTP. + * Returns false if there is a bad MAIL FROM, RCPT, or DATA input. + * Uses the PHPMailerSMTP class by default. + * @see PHPMailer::getSMTPInstance() to use a different class. + * @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) + { + $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]; + $isSent = 0; + } else { + $isSent = 1; + } + $this->doCallback($isSent, $to[0], '', '', $this->Subject, $body, $this->From); + } + foreach ($this->cc as $cc) { + if (!$this->smtp->recipient($cc[0])) { + $bad_rcpt[] = $cc[0]; + $isSent = 0; + } else { + $isSent = 1; + } + $this->doCallback($isSent, '', $cc[0], '', $this->Subject, $body, $this->From); + } + foreach ($this->bcc as $bcc) { + if (!$this->smtp->recipient($bcc[0])) { + $bad_rcpt[] = $bcc[0]; + $isSent = 0; + } else { + $isSent = 1; + } + $this->doCallback($isSent, '', '', $bcc[0], $this->Subject, $body, $this->From); + } + + if (count($bad_rcpt) > 0) { //Create error message for any bad addresses + throw new phpmailerException($this->lang('recipients_failed') . implode(', ', $bad_rcpt)); + } + 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; + } + + /** + * Initiate a connection to an SMTP server. + * Returns false if the operation failed. + * @param array $options An array of options compatible with stream_context_create() + * @uses SMTP + * @access public + * @throws phpmailerException + * @return bool + */ + public function smtpConnect($options = array()) + { + if (is_null($this->smtp)) { + $this->smtp = $this->getSMTPInstance(); + } + + //Already connected? + if ($this->smtp->connected()) { + return true; + } + + $this->smtp->setTimeout($this->Timeout); + $this->smtp->setDebugLevel($this->SMTPDebug); + $this->smtp->setDebugOutput($this->Debugoutput); + $this->smtp->setVerp($this->do_verp); $tls = ($this->SMTPSecure == 'tls'); $ssl = ($this->SMTPSecure == 'ssl'); + $hosts = explode(';', $this->Host); + $lastexception = null; - 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('tls')); + foreach ($hosts as $hostentry) { + $hostinfo = array(); + $host = $hostentry; + $port = $this->Port; + if (preg_match( + '/^(.+):([0-9]+)$/', + $hostentry, + $hostinfo + ) + ) { //If $hostentry contains 'address:port', override default + $host = $hostinfo[1]; + $port = $hostinfo[2]; } + if ($this->smtp->connect(($ssl ? 'ssl://' : '') . $host, $port, $this->Timeout, $options)) { + try { + if ($this->Helo) { + $hello = $this->Helo; + } else { + $hello = $this->serverHostname(); + } + $this->smtp->hello($hello); - //We must resend HELO after tls negotiation - $this->smtp->Hello($hello); - } - - $connection = true; - if ($this->SMTPAuth) { - if (!$this->smtp->Authenticate($this->Username, $this->Password)) { - throw new phpmailerException($this->Lang('authenticate')); + if ($tls) { + if (!$this->smtp->startTLS()) { + throw new phpmailerException($this->lang('connect_host')); + } + //We must resend HELO after tls negotiation + $this->smtp->hello($hello); + } + if ($this->SMTPAuth) { + if (!$this->smtp->authenticate( + $this->Username, + $this->Password, + $this->AuthType, + $this->Realm, + $this->Workstation + ) + ) { + throw new phpmailerException($this->lang('authenticate')); + } + } + return true; + } catch (phpmailerException $e) { + $lastexception = $e; + //We must have connected, but then failed TLS or Auth, so close connection nicely + $this->smtp->quit(); + } } - } } - $index++; - if (!$connection) { - throw new phpmailerException($this->Lang('connect_host')); + //If we get here, all connection attempts have failed, so close connection hard + $this->smtp->close(); + //As we've caught all exceptions, just report whatever the last one was + if ($this->exceptions and !is_null($lastexception)) { + throw $lastexception; } - } - } 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(!is_null($this->smtp)) { - 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 - * @access public - */ - function SetLanguage($langcode = 'en', $lang_path = 'language/') { - //Define full set of translatable strings - $PHPMAILER_LANG = array( - 'provide_address' => 'You must provide at least one recipient email address.', - 'mailer_not_supported' => ' mailer is not supported.', - 'execute' => 'Could not execute: ', - 'instantiate' => 'Could not instantiate mail function.', - 'authenticate' => 'SMTP Error: Could not authenticate.', - 'from_failed' => 'The following From address failed: ', - 'recipients_failed' => 'SMTP Error: The following recipients failed: ', - 'data_not_accepted' => 'SMTP Error: Data not accepted.', - 'connect_host' => 'SMTP Error: Could not connect to SMTP host.', - 'file_access' => 'Could not access file: ', - 'file_open' => 'File Error: Could not open file: ', - 'encoding' => 'Unknown encoding: ', - 'signing' => 'Signing Error: ', - 'smtp_error' => 'SMTP server error: ', - 'empty_message' => 'Message body empty', - 'invalid_address' => 'Invalid address', - '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 - * @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 - * @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"); - - $message = $this->FixEOL($message); - if (substr($message, -1) == $this->LE) { - $message = substr($message, 0, -1); + return false; } - $line = explode($this->LE, $message); - $message = ''; - for ($i = 0 ;$i < count($line); $i++) { - $line_part = explode(' ', $line[$i]); - $buf = ''; - for ($e = 0; $e $length)) { - $space_left = $length - strlen($buf) - 1; - 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", $this->LE); - } else { - $message .= $buf . $soft_break; + /** + * Close 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(); } + } + } + + /** + * Set the language for 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. French is "fr") + * @param string $lang_path Path to the language file directory, with trailing separator (slash) + * @return bool + * @access public + */ + 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 + } + + /** + * Get the array of strings for the current language. + * @return array + */ + public function getTranslations() + { + return $this->language; + } + + /** + * Create recipient headers. + * @access public + * @param string $type + * @param array $addr An array of recipient, + * where each recipient is a 2-element indexed array with element 0 containing an address + * and element 1 containing a name, like: + * array(array('joe@example.com', 'Joe User'), array('zoe@example.com', 'Zoe User')) + * @return string + */ + public function addrAppend($type, $addr) + { + $addresses = array(); + foreach ($addr as $a) { + $addresses[] = $this->addrFormat($a); + } + return $type . ': ' . implode(', ', $addresses) . $this->LE; + } + + /** + * Format an address for use in a message header. + * @access public + * @param array $addr A 2-element indexed array, element 0 containing an address, element 1 containing a name + * like array('joe@example.com', 'Joe User') + * @return string + */ + public function addrFormat($addr) + { + if (empty($addr[1])) { // No name provided + return $this->secureHeader($addr[0]); + } else { + return $this->encodeHeader($this->secureHeader($addr[1]), 'phrase') . " <" . $this->secureHeader( + $addr[0] + ) . ">"; + } + } + + /** + * Word-wrap message. + * For use with mailers that do not automatically perform wrapping + * and for quoted-printable encoded messages. + * Original written by philippe. + * @param string $message The message to wrap + * @param integer $length The line length to wrap to + * @param bool $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 = ''; - } - 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); + 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) { + if ($length <= 0) { + break; + } + $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", $this->LE); + 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; + } + + /** + * Find the 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 { - $buf = $part; + // 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; + } + } + + /** + * Assemble message headers. + * @access public + * @return string The assembled headers + */ + 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 { - $buf_o = $buf; - $buf .= ($e == 0) ? $word : (' ' . $word); - - if (strlen($buf) > $length and $buf_o != '') { - $message .= $buf_o . $soft_break; - $buf = $word; - } + $result .= $this->headerLine('Date', $this->MessageDate); } - } - $message .= $buf . $this->LE; - } - 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; - - $result .= $this->HeaderLine('Date', self::RFCDate()); - if($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', $this->XMailer); - } else { - $result .= $this->HeaderLine('X-Mailer', 'PHPMailer '.$this->Version.' (http://code.google.com/a/apache-extras.org/p/phpmailer/)'); - } - - 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 'plain': - $result .= $this->HeaderLine('Content-Transfer-Encoding', $this->Encoding); - $result .= $this->TextLine('Content-Type: '.$this->ContentType.'; charset="'.$this->CharSet.'"'); - break; - 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; - } - - if($this->Mailer != 'mail') { - $result .= $this->LE.$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->SentMIMEMessage; - } - - - /** - * Assembles the message body. Returns an empty string on failure. - * @access public - * @return string The assembled message body - */ - public function CreateBody() { - $body = ''; - - if ($this->sign_key_file) { - $body .= $this->GetMailMIME(); - } - - $this->SetWordWrap(); - - switch($this->message_type) { - case 'plain': - $body .= $this->EncodeString($this->Body, $this->Encoding); - break; - 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; - } - - 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); + if ($this->ReturnPath) { + $result .= $this->headerLine('Return-Path', '<' . trim($this->ReturnPath) . '>'); + } elseif ($this->Sender == '') { + $result .= $this->headerLine('Return-Path', '<' . trim($this->From) . '>'); } else { - @unlink($file); - @unlink($signed); - throw new phpmailerException($this->Lang("signing").openssl_error_string()); + $result .= $this->headerLine('Return-Path', '<' . trim($this->Sender) . '>'); } - } catch (phpmailerException $e) { + + // 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:;'); + } + } + } + + $result .= $this->addrAppend('From', array(array(trim($this->From), $this->FromName))); + + // 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 != '') { + $this->lastMessageID = $this->MessageID; + } else { + $this->lastMessageID = sprintf("<%s@%s>", $uniq_id, $this->ServerHostname()); + } + $result .= $this->HeaderLine('Message-ID', $this->lastMessageID); + $result .= $this->headerLine('X-Priority', $this->Priority); + if ($this->XMailer == '') { + $result .= $this->headerLine( + 'X-Mailer', + 'PHPMailer ' . $this->Version . ' (https://github.com/PHPMailer/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; + } + + /** + * Get the message MIME type headers. + * @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->textLine('Content-Type: ' . $this->ContentType . '; charset=' . $this->CharSet); + break; + } + //RFC1341 part 5 says 7bit is assumed if not specified + if ($this->Encoding != '7bit') { + $result .= $this->headerLine('Content-Transfer-Encoding', $this->Encoding); + } + + if ($this->Mailer != 'mail') { + $result .= $this->LE; + } + + return $result; + } + + /** + * Returns the whole MIME message. + * Includes complete headers and body. + * Only valid post PreSend(). + * @see PHPMailer::PreSend() + * @access public + * @return string + */ + public function getSentMIMEMessage() + { + return $this->MIMEHeader . $this->mailHeader . self::CRLF . $this->MIMEBody; + } + + + /** + * Assemble 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->exceptions) { - throw $e; - } - } - } - return $body; - } - - /** - * Returns the start of a message boundary. - * @access protected - * @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 - * @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 - * @return string - */ - public function HeaderLine($name, $value) { - return $name . ': ' . $value . $this->LE; - } - - /** - * Returns a formatted mail line. - * @access public - * @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. - * @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) { - echo $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 - * @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 - $bString = $attachment[5]; - if ($bString) { - $string = $attachment[0]; - } else { - $path = $attachment[0]; + if ($this->sign_key_file) { + $body .= $this->getMailMIME() . $this->LE; } - $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; + $this->setWordWrap(); - $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); + 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; + if (!empty($this->Ical)) { + $body .= $this->getBoundary($this->boundary[1], '', 'text/calendar; method=REQUEST', ''); + $body .= $this->encodeString($this->Ical, $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; } - $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; + if ($this->isError()) { + $body = ''; + } elseif ($this->sign_key_file) { + try { + if (!defined('PKCS7_TEXT')) { + throw new phpmailerException($this->lang('signing') . ' OpenSSL extension missing.'); + } + $file = tempnam(sys_get_temp_dir(), 'mail'); + file_put_contents($file, $body); //TODO check this worked + $signed = tempnam(sys_get_temp_dir(), 'signed'); + if (@openssl_pkcs7_sign( + $file, + $signed, + 'file://' . realpath($this->sign_cert_file), + array('file://' . realpath($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; } - $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' - * @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; + /** + * Return 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; } - } - $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 - * @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\""); - } + if ($contentType == '') { + $contentType = $this->ContentType; } - $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); - } 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('='.$this->LE, "\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 - * @return string - */ - public function Base64EncodeWrapMB($str) { - $start = "=?".$this->CharSet."?B?"; - $end = "?="; - $encoded = ""; - - $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 . $this->LE; - } - - // Chomp the last linefeed - $encoded = substr($encoded, 0, -strlen($this->LE)); - return $encoded; - } - - /** - * Encode string to quoted-printable. - * Only uses standard PHP, slow, but will always work - * @access public - * @param string $string the text to encode - * @param integer $line_max Number of chars allowed on a line before wrapping - * @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 ($encoding == '') { + $encoding = $this->Encoding; } - 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 = floor($dec/16); - $h1 = floor($dec%16); - $c = $escape.$hex[$h2].$hex[$h1]; + $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; + } + + /** + * Return the end of a message boundary. + * @access protected + * @param string $boundary + * @return string + */ + protected function endBoundary($boundary) + { + return $this->LE . '--' . $boundary . '--' . $this->LE; + } + + /** + * Set the message type. + * PHPMailer only supports some preset message types, + * not arbitrary MIME structures. + * @access protected + * @return void + */ + protected function setMessageType() + { + $this->message_type = array(); + if ($this->alternativeExists()) { + $this->message_type[] = "alt"; } - 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'; - } + 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"; } - $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 - $encoded = preg_replace('/[\r\n]*/', '', $str); - - switch (strtolower($position)) { - case 'phrase': - $encoded = preg_replace("/([^A-Za-z0-9!*+\/ -])/e", "'='.sprintf('%02X', ord('\\1'))", $encoded); - break; - case 'comment': - $encoded = preg_replace("/([\(\)\"])/e", "'='.sprintf('%02X', ord('\\1'))", $encoded); - case 'text': - default: - // Replace every high ascii, control =, ? and _ characters - //TODO using /e (equivalent to eval()) is probably not a good idea - $encoded = preg_replace('/([\000-\011\013\014\016-\037\075\077\137\177-\377])/e', - "'='.sprintf('%02X', ord(stripslashes('\\1')))", $encoded); - break; } - // Replace every spaces to _ (more readable than =20) - $encoded = str_replace(' ', '_', $encoded); - - return $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; + /** + * Format a header line. + * @access public + * @param string $name + * @param string $value + * @return string + */ + public function headerLine($name, $value) + { + return $name . ': ' . $value . $this->LE; } - $filename = basename($path); - if ( $name == '' ) { - $name = $filename; + /** + * Return a formatted mail line. + * @access public + * @param string $value + * @return string + */ + public function textLine($value) + { + return $value . $this->LE; } - // Append to $attachment array - $this->attachment[] = array( - 0 => $path, - 1 => $filename, - 2 => $name, - 3 => $encoding, - 4 => $type, - 5 => false, // isStringAttachment - 6 => 'inline', - 7 => $cid - ); + /** + * Add an attachment from a path on the filesystem. + * Returns false if the file could not be found or read. + * @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. + * @param string $disposition Disposition to use + * @throws phpmailerException + * @return bool + */ + public function addAttachment($path, $name = '', $encoding = 'base64', $type = '', $disposition = 'attachment') + { + try { + if (!@is_file($path)) { + throw new phpmailerException($this->lang('file_access') . $path, self::STOP_CONTINUE); + } - return true; - } + //If a MIME type is not specified, try to work it out from the file name + if ($type == '') { + $type = self::filenameToType($path); + } - public function AddStringEmbeddedImage($string, $cid, $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 => 'inline', - 7 => $cid - ); - } + $filename = basename($path); + if ($name == '') { + $name = $filename; + } - /** - * Returns true if an inline attachment is present. - * @access public - * @return bool - */ - public function InlineImageExists() { - foreach($this->attachment as $attachment) { - if ($attachment[6] == 'inline') { + $this->attachment[] = array( + 0 => $path, + 1 => $filename, + 2 => $name, + 3 => $encoding, + 4 => $type, + 5 => false, // isStringAttachment + 6 => $disposition, + 7 => 0 + ); + + } catch (phpmailerException $e) { + $this->setError($e->getMessage()); + if ($this->exceptions) { + throw $e; + } + $this->edebug($e->getMessage() . "\n"); + return false; + } return true; - } - } - return false; - } - - public function AttachmentExists() { - foreach($this->attachment as $attachment) { - if ($attachment[6] == 'attachment') { - return true; - } - } - return false; - } - - public function AlternativeExists() { - return strlen($this->AltBody)>0; - } - - ///////////////////////////////////////////////// - // 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 - * @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 .= '

                ' . $this->Lang('smtp_error') . $lasterror['smtp_msg'] . "

                \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 - * @return string - */ - protected function Lang($key) { - if(count($this->language) < 1) { - $this->SetLanguage('en'); // set the default language + /** + * Return the array of attachments. + * @return array + */ + public function getAttachments() + { + return $this->attachment; } - if(isset($this->language[$key])) { - return $this->language[$key]; - } else { - return 'Language string failed to load: ' . $key; - } - } + /** + * Attach all file, 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(); - /** - * Returns true if an error occurred. - * @access public - * @return bool - */ - public function IsError() { - return ($this->error_count > 0); - } + // 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]; + } - /** - * Changes every end of line from CR or LF to CRLF. - * @access public - * @return string - */ - public function FixEOL($str) { - $str = str_replace("\r\n", "\n", $str); - $str = str_replace("\r", "\n", $str); - $str = str_replace("\n", $this->LE, $str); - return $str; - } + $inclhash = md5(serialize($attachment)); + if (in_array($inclhash, $incl)) { + continue; + } + $incl[] = $inclhash; + $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; - /** - * Adds a custom header. - * @access public - * @return void - */ - public function AddCustomHeader($custom_header) { - $this->CustomHeader[] = explode(':', $custom_header, 2); - } + $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); - /** - * Evaluates the message and returns modifications for inline images and backgrounds - * @access public - * @return $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); - ($directory == '.') ? $directory='': ''; - $cid = 'cid:' . md5($filename); - $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($filename), $filename, 'base64', $mimeType) ) { - $message = preg_replace("/".$images[1][$i]."=[\"']".preg_quote($url, '/')."[\"']/Ui", $images[1][$i]."=\"".$cid."\"", $message); - } + if ($disposition == 'inline') { + $mime[] = sprintf("Content-ID: <%s>%s", $cid, $this->LE); + } + + // If a filename contains any of these chars, it should be quoted, + // but not otherwise: RFC2183 & RFC2045 5.1 + // Fixes a warning in IETF's msglint MIME checker + // Allow for bypassing the Content-Disposition header totally + if (!(empty($disposition))) { + if (preg_match('/[ \(\)<>@,;:\\"\/\[\]\?=]/', $name)) { + $mime[] = sprintf( + "Content-Disposition: %s; filename=\"%s\"%s", + $disposition, + $this->encodeHeader($this->secureHeader($name)), + $this->LE . $this->LE + ); + } else { + $mime[] = sprintf( + "Content-Disposition: %s; filename=%s%s", + $disposition, + $this->encodeHeader($this->secureHeader($name)), + $this->LE . $this->LE + ); + } + } else { + $mime[] = $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; + } + } } - } - } - $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 File extension - * @access public - * @return string MIME type of ext - * @static - */ - public static function _mime_types($ext = '') { - $mimes = array( - 'hqx' => 'application/mac-binhex40', - 'cpt' => 'application/mac-compactpro', - 'doc' => 'application/msword', - 'bin' => 'application/macbinary', - 'dms' => 'application/octet-stream', - 'lha' => 'application/octet-stream', - 'lzh' => 'application/octet-stream', - 'exe' => 'application/octet-stream', - 'class' => 'application/octet-stream', - 'psd' => 'application/octet-stream', - 'so' => 'application/octet-stream', - 'sea' => 'application/octet-stream', - 'dll' => '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', - 'php' => 'application/x-httpd-php', - 'php4' => 'application/x-httpd-php', - 'php3' => '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', - 'xhtml' => 'application/xhtml+xml', - 'xht' => 'application/xhtml+xml', - 'zip' => 'application/zip', - 'mid' => 'audio/midi', - 'midi' => 'audio/midi', - 'mpga' => 'audio/mpeg', - 'mp2' => 'audio/mpeg', - 'mp3' => 'audio/mpeg', - 'aif' => 'audio/x-aiff', - 'aiff' => 'audio/x-aiff', - 'aifc' => 'audio/x-aiff', - 'ram' => 'audio/x-pn-realaudio', - 'rm' => 'audio/x-pn-realaudio', - 'rpm' => 'audio/x-pn-realaudio-plugin', - 'ra' => 'audio/x-realaudio', - 'rv' => 'video/vnd.rn-realvideo', - 'wav' => 'audio/x-wav', - 'bmp' => 'image/bmp', - 'gif' => 'image/gif', - 'jpeg' => 'image/jpeg', - 'jpg' => 'image/jpeg', - 'jpe' => 'image/jpeg', - 'png' => 'image/png', - 'tiff' => 'image/tiff', - 'tif' => 'image/tiff', - 'css' => 'text/css', - 'html' => 'text/html', - 'htm' => 'text/html', - 'shtml' => 'text/html', - 'txt' => 'text/plain', - 'text' => 'text/plain', - 'log' => 'text/plain', - 'rtx' => 'text/richtext', - 'rtf' => 'text/rtf', - 'xml' => 'text/xml', - 'xsl' => 'text/xml', - 'mpeg' => 'video/mpeg', - 'mpg' => 'video/mpeg', - 'mpe' => 'video/mpeg', - 'qt' => 'video/quicktime', - 'mov' => 'video/quicktime', - 'avi' => 'video/x-msvideo', - 'movie' => 'video/x-sgi-movie', - 'doc' => 'application/msword', - 'word' => 'application/msword', - 'xl' => 'application/excel', - 'eml' => 'message/rfc822' - ); - return (!isset($mimes[strtolower($ext)])) ? 'application/octet-stream' : $mimes[strtolower($ext)]; - } + $mime[] = sprintf("--%s--%s", $boundary, $this->LE); - /** - * 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 - * @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 implode("", $mime); + } + + /** + * Encode a file 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(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); + } + $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 ''; + } + } + + /** + * Encode a string in 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 optimally. + * Picks shortest of Q, B, quoted-printable 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; + /** @noinspection PhpMissingBreakStatementInspection */ + case 'comment': + $x = preg_match_all('/[()"]/', $str, $matches); + // Intentional fall-through + case 'text': + default: + $x += preg_match_all('/[\000-\010\013\014\016-\037\177-\377]/', $str, $matches); + break; + } + + if ($x == 0) { //There are no chars that need encoding + return ($str); + } + + $maxlen = 75 - 7 - strlen($this->CharSet); + // Try to select the encoding which should produce the shortest output + if ($x > strlen($str) / 3) { + //More than a third of the content will need encoding, so B encoding will be most efficient + $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; + } + + /** + * Check if a string contains multi-byte 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; + } + } + + /** + * Encode and wrap 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 + $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 a string in quoted-printable format. + * According to RFC2045 section 6.7. + * @access public + * @param string $string The text to encode + * @param integer $line_max Number of chars allowed on a line before wrapping + * @return string + * @link PHP version adapted from http://www.php.net/manual/en/function.quoted-printable-decode.php#89417 + */ + public function encodeQP($string, $line_max = 76) + { + if (function_exists('quoted_printable_encode')) { //Use native function if it's available (>= PHP5.3) + return quoted_printable_encode($string); + } + //Fall back to a pure PHP implementation + $string = str_replace( + array('%20', '%0D%0A.', '%0D%0A', '%'), + array(' ', "\r\n=2E", "\r\n", '='), + rawurlencode($string) + ); + $string = preg_replace('/[^\r\n]{' . ($line_max - 3) . '}[^=\r\n]{2}/', "$0=\r\n", $string); + return $string; + } + + /** + * Backward compatibility wrapper for an old QP encoding function that was removed. + * @see PHPMailer::encodeQP() + * @access public + * @param string $string + * @param integer $line_max + * @param bool $space_conv + * @return string + * @deprecated Use encodeQP instead. + */ + public function encodeQPphp( + $string, + $line_max = 76, + /** @noinspection PhpUnusedParameterInspection */ $space_conv = false + ) { + return $this->encodeQP($string, $line_max); + } + + /** + * Encode a string using 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': + //RFC 2047 section 5.3 + $pattern = '^A-Za-z0-9!*+\/ -'; + break; + /** @noinspection PhpMissingBreakStatementInspection */ + case 'comment': + //RFC 2047 section 5.2 + $pattern = '\(\)"'; + //intentional fall-through + //for this reason we build the $pattern without including delimiters and [] + case 'text': + default: + //RFC 2047 section 5.1 + //Replace every high ascii, control, =, ? and _ characters + $pattern = '\000-\011\013\014\016-\037\075\077\137\177-\377' . $pattern; + break; + } + $matches = array(); + if (preg_match_all("/[{$pattern}]/", $encoded, $matches)) { + //If the string contains an '=', make sure it's the first thing we replace + //so as to avoid double-encoding + $s = array_search('=', $matches[0]); + if ($s !== false) { + unset($matches[0][$s]); + array_unshift($matches[0], '='); + } + 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); + } + + + /** + * Add a string or binary attachment (non-filesystem). + * 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. + * @param string $disposition Disposition to use + * @return void + */ + public function addStringAttachment( + $string, + $filename, + $encoding = 'base64', + $type = '', + $disposition = 'attachment' + ) { + //If a MIME type is not specified, try to work it out from the file name + if ($type == '') { + $type = self::filenameToType($filename); + } + // Append to $attachment array + $this->attachment[] = array( + 0 => $string, + 1 => $filename, + 2 => basename($filename), + 3 => $encoding, + 4 => $type, + 5 => true, // isStringAttachment + 6 => $disposition, + 7 => 0 + ); + } + + /** + * Add an embedded (inline) attachment from a file. + * This can include images, sounds, and just about any other document type. + * These differ from 'regular' attachmants in that they are intended to be + * displayed inline with the message, not just attached for download. + * This is used in HTML messages that embed the images + * the HTML refers to using the $cid value. + * @param string $path Path to the attachment. + * @param string $cid Content ID of the attachment; Use this to reference + * the content when using an embedded image in HTML. + * @param string $name Overrides the attachment name. + * @param string $encoding File encoding (see $Encoding). + * @param string $type File MIME type. + * @param string $disposition Disposition to use + * @return bool True on successfully adding an attachment + */ + public function addEmbeddedImage($path, $cid, $name = '', $encoding = 'base64', $type = '', $disposition = 'inline') + { + if (!@is_file($path)) { + $this->setError($this->lang('file_access') . $path); + return false; + } + + //If a MIME type is not specified, try to work it out from the file name + if ($type == '') { + $type = self::filenameToType($path); + } + + $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 => $disposition, + 7 => $cid + ); + return true; + } + + /** + * Add an embedded stringified attachment. + * This can include images, sounds, and just about any other document type. + * Be sure to set the $type to an image type for images: + * JPEG images use 'image/jpeg', GIF uses 'image/gif', PNG uses 'image/png'. + * @param string $string The attachment binary data. + * @param string $cid Content ID of the attachment; Use this to reference + * the content when using an embedded image in HTML. + * @param string $name + * @param string $encoding File encoding (see $Encoding). + * @param string $type MIME type. + * @param string $disposition Disposition to use + * @return bool True on successfully adding an attachment + */ + public function addStringEmbeddedImage( + $string, + $cid, + $name = '', + $encoding = 'base64', + $type = '', + $disposition = 'inline' + ) { + //If a MIME type is not specified, try to work it out from the name + if ($type == '') { + $type = self::filenameToType($name); + } + + // Append to $attachment array + $this->attachment[] = array( + 0 => $string, + 1 => $name, + 2 => $name, + 3 => $encoding, + 4 => $type, + 5 => true, // isStringAttachment + 6 => $disposition, + 7 => $cid + ); + return true; + } + + /** + * Check 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; - } } - return true; - } - /** - * Strips newlines to prevent header injection. - * @access public - * @param string $str String - * @return string - */ - public function SecureHeader($str) { - $str = str_replace("\r", '', $str); - $str = str_replace("\n", '', $str); - return trim($str); - } - - /** - * Set the private key file and password to sign the message. - * - * @access public - * @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 $key_filename Parameter File Name - * @param string $key_pass Password for private key - */ - public function DKIM_QP($txt) { - $tmp = ''; - $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); - } + /** + * Check 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; } - return $line; - } - /** - * Generate DKIM signature - * - * @access public - * @param string $s Header - */ - 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; + /** + * Check if this message has an alternative body set. + * @return bool + */ + public function alternativeExists() + { + return !empty($this->AltBody); } - if (openssl_sign($s, $signature, $privKey)) { - return base64_encode($signature); - } - } - /** - * Generate DKIM Canonicalization Header - * - * @access public - * @param string $s Header - */ - 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 + /** + * Clear all To recipients. + * @return void + */ + public function clearAddresses() + { + foreach ($this->to as $to) { + unset($this->all_recipients[strtolower($to[0])]); + } + $this->to = array(); } - $s = implode("\r\n", $lines); - return $s; - } - /** - * Generate DKIM Canonicalization Body - * - * @access public - * @param string $body Message Body - */ - 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); + /** + * Clear all CC recipients. + * @return void + */ + public function clearCCs() + { + foreach ($this->cc as $cc) { + unset($this->all_recipients[strtolower($cc[0])]); + } + $this->cc = array(); } - 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 - */ - 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); - foreach($headers as $header) { - if (strpos($header, 'From:') === 0) { - $from_header = $header; - } elseif (strpos($header, 'To:') === 0) { - $to_header = $header; - } + /** + * Clear all BCC recipients. + * @return void + */ + public function clearBCCs() + { + foreach ($this->bcc as $bcc) { + unset($this->all_recipients[strtolower($bcc[0])]); + } + $this->bcc = array(); } - $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: phpmailer.worxware.com\r\n".$dkimhdrs.$signed."\r\n"; - } - protected function doCallback($isSent, $to, $cc, $bcc, $subject, $body) { - if (!empty($this->action_function) && function_exists($this->action_function)) { - $params = array($isSent, $to, $cc, $bcc, $subject, $body); - call_user_func_array($this->action_function, $params); + /** + * Clear all ReplyTo recipients. + * @return void + */ + public function clearReplyTos() + { + $this->ReplyTo = array(); + } + + /** + * Clear all recipient types. + * @return void + */ + public function clearAllRecipients() + { + $this->to = array(); + $this->cc = array(); + $this->bcc = array(); + $this->all_recipients = array(); + } + + /** + * Clear all filesystem, string, and binary attachments. + * @return void + */ + public function clearAttachments() + { + $this->attachment = array(); + } + + /** + * Clear all custom headers. + * @return void + */ + public function clearCustomHeaders() + { + $this->CustomHeader = array(); + } + + /** + * Add an 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 .= '

                ' . $this->lang('smtp_error') . $lasterror['smtp_msg'] . "

                \n"; + } + } + $this->ErrorInfo = $msg; + } + + /** + * Return an RFC 822 formatted date. + * @access public + * @return string + * @static + */ + public static function rfcDate() + { + //Set the time zone to whatever the default is to avoid 500 errors + //Will default to UTC if it's not set properly in php.ini + date_default_timezone_set(@date_default_timezone_get()); + return date('D, j M Y H:i:s O'); + } + + /** + * Get the server hostname. + * Returns '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; + } + + /** + * Get an error message in the current 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; + } + } + + /** + * Check if an error occurred. + * @access public + * @return bool True if an error did occur. + */ + public function isError() + { + return ($this->error_count > 0); + } + + /** + * Ensure consistent line endings in a string. + * 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) + { + // Normalise 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; + } + + /** + * Add 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); + } + } + + /** + * Create a message from an HTML string. + * Automatically makes modifications for inline images and backgrounds + * and creates a plain-text version by converting the HTML. + * Overwrites any existing values in $this->Body and $this->AltBody + * @access public + * @param string $message HTML message string + * @param string $basedir baseline directory for path + * @param bool $advanced Whether to use the advanced HTML to text converter + * @return string $message + */ + public function msgHTML($message, $basedir = '', $advanced = false) + { + 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 = md5($url) . '@phpmailer.0'; //RFC2392 S 2 + if (strlen($basedir) > 1 && substr($basedir, -1) != '/') { + $basedir .= '/'; + } + if (strlen($directory) > 1 && substr($directory, -1) != '/') { + $directory .= '/'; + } + if ($this->addEmbeddedImage( + $basedir . $directory . $filename, + $cid, + $filename, + 'base64', + self::_mime_types(self::mb_pathinfo($filename, PATHINFO_EXTENSION)) + ) + ) { + $message = preg_replace( + "/" . $images[1][$i] . "=[\"']" . preg_quote($url, '/') . "[\"']/Ui", + $images[1][$i] . "=\"cid:" . $cid . "\"", + $message + ); + } + } + } + } + $this->isHTML(true); + if (empty($this->AltBody)) { + $this->AltBody = 'To view this email message, open it in a program that understands HTML!' . "\n\n"; + } + //Convert all message body line breaks to CRLF, makes quoted-printable encoding work much better + $this->Body = $this->normalizeBreaks($message); + $this->AltBody = $this->normalizeBreaks($this->html2text($message, $advanced)); + return $this->Body; + } + + /** + * Convert an HTML string into plain text. + * @param string $html The HTML text to convert + * @param bool $advanced Should this use the more complex html2text converter or just a simple one? + * @return string + */ + public function html2text($html, $advanced = false) + { + if ($advanced) { + require_once 'extras/class.html2text.php'; + $h = new html2text($html); + return $h->get_text(); + } + return html_entity_decode( + trim(strip_tags(preg_replace('/<(head|title|style|script)[^>]*>.*?<\/\\1>/si', '', $html))), + ENT_QUOTES, + $this->CharSet + ); + } + + /** + * Get the MIME type for a file extension. + * @param string $ext File extension + * @access public + * @return string MIME type of file. + * @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 (array_key_exists(strtolower($ext), $mimes) ? $mimes[strtolower($ext)]: 'application/octet-stream'); + } + + /** + * Map a file name to a MIME type. + * Defaults to 'application/octet-stream', i.e.. arbitrary binary data. + * @param string $filename A file name or full path, does not need to exist as a file + * @return string + * @static + */ + public static function filenameToType($filename) + { + //In case the path is a URL, strip any query string before getting extension + $qpos = strpos($filename, '?'); + if ($qpos !== false) { + $filename = substr($filename, 0, $qpos); + } + $pathinfo = self::mb_pathinfo($filename); + return self::_mime_types($pathinfo['extension']); + } + + /** + * Multi-byte-safe pathinfo replacement. + * Drop-in replacement for pathinfo(), but multibyte-safe, cross-platform-safe, old-version-safe. + * Works similarly to the one in PHP >= 5.2.0 + * @link http://www.php.net/manual/en/function.pathinfo.php#107461 + * @param string $path A filename or path, does not need to exist as a file + * @param integer|string $options Either a PATHINFO_* constant, + * or a string name to return only the specified piece, allows 'filename' to work on PHP < 5.2 + * @return string|array + * @static + */ + public static function mb_pathinfo($path, $options = null) + { + $ret = array('dirname' => '', 'basename' => '', 'extension' => '', 'filename' => ''); + $m = array(); + preg_match('%^(.*?)[\\\\/]*(([^/\\\\]*?)(\.([^\.\\\\/]+?)|))[\\\\/\.]*$%im', $path, $m); + if (array_key_exists(1, $m)) { + $ret['dirname'] = $m[1]; + } + if (array_key_exists(2, $m)) { + $ret['basename'] = $m[2]; + } + if (array_key_exists(5, $m)) { + $ret['extension'] = $m[5]; + } + if (array_key_exists(3, $m)) { + $ret['filename'] = $m[3]; + } + switch ($options) { + case PATHINFO_DIRNAME: + case 'dirname': + return $ret['dirname']; + break; + case PATHINFO_BASENAME: + case 'basename': + return $ret['basename']; + break; + case PATHINFO_EXTENSION: + case 'extension': + return $ret['extension']; + break; + case PATHINFO_FILENAME: + case 'filename': + return $ret['filename']; + break; + default: + return $ret; + } + } + + /** + * Set or reset instance properties. + * + * Usage Example: + * $page->set('X-Priority', '3'); + * + * @access public + * @param string $name + * @param mixed $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; + } + + /** + * Strip newlines to prevent header injection. + * @access public + * @param string $str + * @return string + */ + public function secureHeader($str) + { + return trim(str_replace(array("\r", "\n"), '', $str)); + } + + /** + * Normalize line breaks in a string. + * Converts UNIX LF, Mac CR and Windows CRLF line breaks into a single line break format. + * Defaults to CRLF (for message bodies) and preserves consecutive breaks. + * @param string $text + * @param string $breaktype What kind of line break to use, defaults to CRLF + * @return string + * @access public + * @static + */ + public static function normalizeBreaks($text, $breaktype = "\r\n") + { + return preg_replace('/(\r\n|\r|\n)/ms', $breaktype, $text); + } + + + /** + * Set the private key file and password for S/MIME signing. + * @access public + * @param string $cert_filename + * @param string $key_filename + * @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; + } + + /** + * Quoted-Printable-encode a DKIM header. + * @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 a DKIM signature. + * @access public + * @param string $s Header + * @throws phpmailerException + * @return string + */ + public function DKIM_Sign($s) + { + if (!defined('PKCS7_TEXT')) { + if ($this->exceptions) { + throw new phpmailerException($this->lang("signing") . ' OpenSSL extension missing.'); + } + return ''; + } + $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 a 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 a 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 and body in a new message 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 = ''; + $current = ''; + foreach ($headers as $header) { + if (strpos($header, 'From:') === 0) { + $from_header = $header; + $current = 'from_header'; + } elseif (strpos($header, 'To:') === 0) { + $to_header = $header; + $current = 'to_header'; + } else { + if ($current && strpos($header, ' =?') === 0) { + $current .= $header; + } else { + $current = ''; + } + } + } + $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 $dkimhdrs . $signed . "\r\n"; + } + + /** + * Perform a callback. + * @param bool $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); + } } - } } -class phpmailerException extends Exception { - public function errorMessage() { - $errorMsg = '' . $this->getMessage() . "
                \n"; - return $errorMsg; - } +/** + * PHPMailer exception handler + * @package PHPMailer + */ +class phpmailerException extends Exception +{ + /** + * Prettify error message output + * @return string + */ + public function errorMessage() + { + $errorMsg = '' . $this->getMessage() . "
                \n"; + return $errorMsg; + } } -?> diff --git a/lib/phpmailer/class.smtp.php b/lib/phpmailer/class.smtp.php index 6977bffad14..e6b45222d8d 100644 --- a/lib/phpmailer/class.smtp.php +++ b/lib/phpmailer/class.smtp.php @@ -1,818 +1,943 @@ + * @author Jim Jagielski (jimjag) + * @author Andy Prevost (codeworxtech) + * @copyright 2013 Marcus Bointon * @copyright 2004 - 2008 Andy Prevost - * @author Jim Jagielski * @copyright 2010 - 2012 Jim Jagielski - * @license http://www.gnu.org/copyleft/lesser.html Distributed under the Lesser General Public License (LGPL) - * @version $Id: class.smtp.php 450 2010-06-23 16:46:33Z coolbru $ + * @license http://www.gnu.org/copyleft/lesser.html Distributed under the Lesser General Public License (LGPL) */ /** - * 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 + * PHPMailer RFC821 SMTP email transport class. + * + * Implements RFC 821 SMTP commands + * and provides some utility methods for sending mail to an SMTP server. + * + * PHP Version 5.0.0 + * + * @category PHP + * @package PHPMailer + * @link https://github.com/PHPMailer/PHPMailer/blob/master/class.smtp.php + * @author Chris Ryan + * @author Marcus Bointon + * @license http://www.gnu.org/copyleft/lesser.html Distributed under the Lesser General Public License (LGPL) */ -class SMTP { - /** - * SMTP server port - * @var int - */ - public $SMTP_PORT = 25; +class SMTP +{ + /** + * The PHPMailer SMTP Version number. + */ + const VERSION = '5.2.7'; - /** - * SMTP reply line ending - * @var string - */ - public $CRLF = "\r\n"; + /** + * SMTP line break constant. + */ + const CRLF = "\r\n"; - /** - * Sets whether debugging is turned on - * @var bool - */ - public $do_debug; // the level of debug to perform + /** + * The SMTP port to use if one is not specified. + */ + const DEFAULT_SMTP_PORT = 25; - /** - * Sets VERP use on/off (default is off) - * @var bool - */ - public $do_verp = false; + /** + * The PHPMailer SMTP Version number. + * @type string + * @deprecated This should be a constant + * @see SMTP::VERSION + */ + public $Version = '5.2.7'; - /** - * Sets the SMTP PHPMailer Version number - * @var string - */ - public $Version = '5.2.1'; + /** + * SMTP server port number. + * @type int + * @deprecated This is only ever ued as default value, so should be a constant + * @see SMTP::DEFAULT_SMTP_PORT + */ + public $SMTP_PORT = 25; - ///////////////////////////////////////////////// - // PROPERTIES, PRIVATE AND PROTECTED - ///////////////////////////////////////////////// + /** + * SMTP reply line ending + * @type string + * @deprecated Use the class constant instead + * @see SMTP::CRLF + */ + public $CRLF = "\r\n"; - 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 + /** + * Debug output level. + * Options: 0 for no output, 1 for commands, 2 for data and commands + * @type int + */ + public $do_debug = 0; - /** - * 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; + /** + * The function/method to use for debugging output. + * Options: 'echo', 'html' or 'error_log' + * @type string + */ + public $Debugoutput = 'echo'; - $this->do_debug = 0; - } + /** + * Whether to use VERP. + * @type bool + */ + public $do_verp = false; - ///////////////////////////////////////////////// - // CONNECTION FUNCTIONS - ///////////////////////////////////////////////// + /** + * The SMTP timeout value for reads, in seconds. + * @type int + */ + public $Timeout = 15; - /** - * 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; + /** + * The SMTP timelimit value for reads, in seconds. + * @type int + */ + public $Timelimit = 30; - // make sure we are __not__ connected - if($this->connected()) { - // already connected, generate error - $this->error = array("error" => "Already connected to a server"); - return false; + /** + * The socket for the server connection. + * @type resource + */ + protected $smtp_conn; + + /** + * Error message, if any, for the last call. + * @type string + */ + protected $error = ''; + + /** + * The reply the server sent to us for HELO. + * @type string + */ + protected $helo_rply = ''; + + /** + * The most recent reply received from the server. + * @type string + */ + protected $last_reply = ''; + + /** + * Constructor. + * @access public + */ + public function __construct() + { + $this->smtp_conn = 0; + $this->error = null; + $this->helo_rply = null; + + $this->do_debug = 0; } - if(empty($port)) { - $port = $this->SMTP_PORT; + /** + * Output debugging info via a user-selected method. + * @param string $str Debug string to output + * @return void + */ + protected function edebug($str) + { + switch ($this->Debugoutput) { + case 'error_log': + //Don't output, just log + error_log($str); + break; + case 'html': + //Cleans up output a bit for a better looking, HTML-safe output + echo htmlentities( + preg_replace('/[\r\n]+/', '', $str), + ENT_QUOTES, + 'UTF-8' + ) + . "
                \n"; + break; + case 'echo': + default: + //Just echoes whatever was received + echo $str; + } } - // 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 . '
                '; - } - return false; - } + /** + * Connect to an SMTP server. + * @param string $host SMTP server IP or host name + * @param int $port The port number to connect to + * @param int $timeout How long to wait for the connection to open + * @param array $options An array of options for stream_context_create() + * @access public + * @return bool + */ + public function connect($host, $port = null, $timeout = 30, $options = array()) + { + // Clear errors to avoid 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 = self::DEFAULT_SMTP_PORT; + } + + // Connect to the SMTP server + $errno = 0; + $errstr = ''; + $socket_context = stream_context_create($options); + //Suppress errors; connection failures are handled at a higher level + $this->smtp_conn = @stream_socket_client( + $host . ":" . $port, + $errno, + $errstr, + $timeout, + STREAM_CLIENT_CONNECT, + $socket_context + ); + + // 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) { + $this->edebug( + 'SMTP -> ERROR: ' . $this->error['error'] + . ": $errstr ($errno)" + ); + } + 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') { + $max = ini_get('max_execution_time'); + if ($max != 0 && $timeout > $max) { // Don't bother if unlimited + @set_time_limit($timeout); + } + stream_set_timeout($this->smtp_conn, $timeout, 0); + } - // 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(); - // get any announcement - $announce = $this->get_lines(); + if ($this->do_debug >= 2) { + $this->edebug('SMTP -> FROM SERVER:' . $announce); + } - if($this->do_debug >= 2) { - echo "SMTP -> FROM SERVER:" . $announce . $this->CRLF . '
                '; + return true; } - 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; + /** + * Initiate a TLS (encrypted) session. + * @access public + * @return bool + */ + public function startTLS() + { + if (!$this->sendCommand("STARTTLS", "STARTTLS", 220)) { + return false; + } + // Begin encrypted connection + if (!stream_socket_enable_crypto( + $this->smtp_conn, + true, + STREAM_CRYPTO_METHOD_TLS_CLIENT + ) + ) { + return false; + } + return true; } + + /** + * Perform SMTP authentication. + * Must be run after hello(). + * @see hello() + * @param string $username The user name + * @param string $password The password + * @param string $authtype The auth type (PLAIN, LOGIN, NTLM, CRAM-MD5) + * @param string $realm The auth realm for NTLM + * @param string $workstation The auth workstation for NTLM + * @access public + * @return bool True if successfully authenticated. + */ + public function authenticate( + $username, + $password, + $authtype = 'LOGIN', + $realm = '', + $workstation = '' + ) { + if (empty($authtype)) { + $authtype = 'LOGIN'; + } - fputs($this->smtp_conn,"STARTTLS" . $this->CRLF); + switch ($authtype) { + case 'PLAIN': + // Start authentication + if (!$this->sendCommand('AUTH', 'AUTH PLAIN', 334)) { + return false; + } + // Send encoded username and password + if (!$this->sendCommand( + 'User & Password', + base64_encode("\0" . $username . "\0" . $password), + 235 + ) + ) { + return false; + } + break; + case 'LOGIN': + // Start authentication + if (!$this->sendCommand('AUTH', 'AUTH LOGIN', 334)) { + return false; + } + if (!$this->sendCommand("Username", base64_encode($username), 334)) { + return false; + } + if (!$this->sendCommand("Password", base64_encode($password), 235)) { + return false; + } + break; + case 'NTLM': + /* + * ntlm_sasl_client.php + * Bundled with Permission + * + * How to telnet in windows: + * http://technet.microsoft.com/en-us/library/aa995718%28EXCHG.65%29.aspx + * PROTOCOL Docs http://curl.haxx.se/rfc/ntlm.html#ntlmSmtpAuthentication + */ + require_once 'extras/ntlm_sasl_client.php'; + $temp = new stdClass(); + $ntlm_client = new ntlm_sasl_client_class; + //Check that functions are available + if (!$ntlm_client->Initialize($temp)) { + $this->error = array('error' => $temp->error); + if ($this->do_debug >= 1) { + $this->edebug( + 'You need to enable some modules in your php.ini file: ' + . $this->error['error'] + ); + } + return false; + } + //msg1 + $msg1 = $ntlm_client->TypeMsg1($realm, $workstation); //msg1 - $rply = $this->get_lines(); - $code = substr($rply,0,3); + if (!$this->sendCommand( + 'AUTH NTLM', + 'AUTH NTLM ' . base64_encode($msg1), + 334 + ) + ) { + return false; + } - if($this->do_debug >= 2) { - echo "SMTP -> FROM SERVER:" . $rply . $this->CRLF . '
                '; + //Though 0 based, there is a white space after the 3 digit number + //msg2 + $challenge = substr($this->last_reply, 3); + $challenge = base64_decode($challenge); + $ntlm_res = $ntlm_client->NTLMResponse( + substr($challenge, 24, 8), + $password + ); + //msg3 + $msg3 = $ntlm_client->TypeMsg3( + $ntlm_res, + $username, + $realm, + $workstation + ); + // send encoded username + return $this->sendCommand('Username', base64_encode($msg3), 235); + break; + case 'CRAM-MD5': + // Start authentication + if (!$this->sendCommand('AUTH CRAM-MD5', 'AUTH CRAM-MD5', 334)) { + return false; + } + // Get the challenge + $challenge = base64_decode(substr($this->last_reply, 4)); + + // Build the response + $response = $username . ' ' . $this->hmac($challenge, $password); + + // send encoded credentials + return $this->sendCommand('Username', base64_encode($response), 235); + break; + } + return true; } - 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 . '
                '; - } - return false; - } + /** + * Calculate an MD5 HMAC hash. + * Works like hash_hmac('md5', $data, $key) + * in case that function is not available + * @param string $data The data to hash + * @param string $key The key to hash with + * @access protected + * @return string + */ + protected function hmac($data, $key) + { + if (function_exists('hash_hmac')) { + return hash_hmac('md5', $data, $key); + } - // Begin encrypted connection - if(!stream_socket_enable_crypto($this->smtp_conn, true, STREAM_CRYPTO_METHOD_TLS_CLIENT)) { - return false; - } + // The following borrowed from + // http://php.net/manual/en/function.mhash.php#27225 - 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 . '
                '; - } - return false; - } + // RFC 2104 HMAC implementation for php. + // Creates an md5 HMAC. + // Eliminates the need to install mhash to compute a HMAC + // Hacked by Lance Rushing - // 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 . '
                '; - } - return false; - } + $b = 64; // byte length for md5 + if (strlen($key) > $b) { + $key = pack('H*', md5($key)); + } + $key = str_pad($key, $b, chr(0x00)); + $ipad = str_pad('', $b, chr(0x36)); + $opad = str_pad('', $b, chr(0x5c)); + $k_ipad = $key ^ $ipad; + $k_opad = $key ^ $opad; - // 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 . '
                '; - } - return false; + return md5($k_opad . pack('H*', md5($k_ipad . $data))); } - 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"; + /** + * Check connection state. + * @access public + * @return bool True if connected. + */ + public function connected() + { + if (!empty($this->smtp_conn)) { + $sock_status = stream_get_meta_data($this->smtp_conn); + if ($sock_status['eof']) { + // the socket is valid but we are not connected + if ($this->do_debug >= 1) { + $this->edebug( + 'SMTP -> NOTICE: EOF caught while checking if connected' + ); + } + $this->close(); + return false; + } + return true; // everything looks good } - $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 with the message headers - * and the message body being seperated by and additional . - * - * Implements rfc 821: DATA - * - * SMTP CODE INTERMEDIATE: 354 - * [data] - * . - * 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 . '
                '; - } - - 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 . '
                '; - } - 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. + /** + * Close the socket and clean up the state of the class. + * Don't use this function without first trying to use QUIT. + * @see quit() + * @access public + * @return void */ - - // 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; + 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; + } } - $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); + /** + * Send an SMTP DATA command. + * 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 with the message headers + * and the message body being separated by and additional . + * Implements rfc 821: DATA + * @param string $msg_data Message data to send + * @access public + * @return bool + */ + public function data($msg_data) + { + if (!$this->sendCommand('DATA', 'DATA', 354)) { + return false; } - /* if processing headers add a LWSP-char to the front of new line - * rfc 822 on long msg headers + /* The server is ready to accept data! + * according to rfc821 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. */ - if($in_headers) { - $line = "\t" . $line; + + // Normalize the line breaks before exploding + $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 if headers are + * in the msg_data or if it is a straight msg body + * currently I am assuming rfc822 definitions of msg headers + * and if the first field of the first line (':' separated) + * 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; } - } - $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; - } + //RFC 2822 section 2.1.1 limit + $max_line_length = 998; + + foreach ($lines as $line) { + $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 + * rfc822 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; + } + } + $this->client_send($line_out . self::CRLF); + } } - fputs($this->smtp_conn,$line_out . $this->CRLF); - } + + // Message data has been sent, complete the command + return $this->sendCommand('DATA END', '.', 250); } - // message data has been sent - fputs($this->smtp_conn, $this->CRLF . "." . $this->CRLF); + /** + * Send an SMTP HELO or EHLO command. + * Used to identify the sending server to the receiving server. + * This makes sure that client and server are in a known state. + * Implements from RFC 821: HELO + * and RFC 2821 EHLO. + * @param string $host The host name or IP to connect to + * @access public + * @return bool + */ + public function hello($host = '') + { + // Try extended hello first (RFC 2821) + if (!$this->sendHello('EHLO', $host)) { + if (!$this->sendHello('HELO', $host)) { + return false; + } + } - $rply = $this->get_lines(); - $code = substr($rply,0,3); - - if($this->do_debug >= 2) { - echo "SMTP -> FROM SERVER:" . $rply . $this->CRLF . '
                '; + return true; } - 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 . '
                '; - } - 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 - * - * 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; + /** + * Send an SMTP HELO or EHLO command. + * Low-level implementation used by hello() + * @see hello() + * @param string $hello The HELO string + * @param string $host The hostname to say we are + * @access protected + * @return bool + */ + protected function sendHello($hello, $host) + { + $noerror = $this->sendCommand($hello, $hello . ' ' . $host, 250); + $this->helo_rply = $this->last_reply; + return $noerror; } - // if hostname for HELO was not specified send default - if(empty($host)) { - // determine appropriate default to send to server - $host = "localhost"; + /** + * Send an SMTP MAIL command. + * 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 FROM: + * @param string $from Source address of this message + * @access public + * @return bool + */ + public function mail($from) + { + $useVerp = ($this->do_verp ? ' XVERP' : ''); + return $this->sendCommand( + 'MAIL FROM', + 'MAIL FROM:<' . $from . '>' . $useVerp, + 250 + ); } - // Send extended hello first (RFC 2821) - if(!$this->SendHello("EHLO", $host)) { - if(!$this->SendHello("HELO", $host)) { + /** + * Send an SMTP QUIT command. + * Closes the socket if there is no error or the $close_on_error argument is true. + * Implements from rfc 821: QUIT + * @param bool $close_on_error Should the connection close if an error occurs? + * @access public + * @return bool + */ + public function quit($close_on_error = true) + { + $noerror = $this->sendCommand('QUIT', 'QUIT', 221); + $e = $this->error; //Save any error + if ($noerror or $close_on_error) { + $this->close(); + $this->error = $e; //Restore any error from the quit command + } + return $noerror; + } + + /** + * Send an SMTP RCPT command. + * Sets the TO argument to $to. + * Returns true if the recipient was accepted false if it was rejected. + * Implements from rfc 821: RCPT TO: + * @param string $to The address the message is being sent to + * @access public + * @return bool + */ + public function recipient($to) + { + return $this->sendCommand( + 'RCPT TO ', + 'RCPT TO:<' . $to . '>', + array(250, 251) + ); + } + + /** + * Send an SMTP RSET command. + * Abort any transaction that is currently in progress. + * Implements rfc 821: RSET + * @access public + * @return bool True on success. + */ + public function reset() + { + return $this->sendCommand('RSET', 'RSET', 250); + } + + /** + * Send a command to an SMTP server and check its return code. + * @param string $command The command name - not sent to the server + * @param string $commandstring The actual command to send + * @param int|array $expect One or more expected integer success codes + * @access protected + * @return bool True on success. + */ + protected function sendCommand($command, $commandstring, $expect) + { + if (!$this->connected()) { + $this->error = array( + "error" => "Called $command without being connected" + ); + return false; + } + $this->client_send($commandstring . self::CRLF); + + $reply = $this->get_lines(); + $code = substr($reply, 0, 3); + + if ($this->do_debug >= 2) { + $this->edebug('SMTP -> FROM SERVER:' . $reply); + } + + if (!in_array($code, (array)$expect)) { + $this->last_reply = null; + $this->error = array( + "error" => "$command command failed", + "smtp_code" => $code, + "detail" => substr($reply, 4) + ); + if ($this->do_debug >= 1) { + $this->edebug( + 'SMTP -> ERROR: ' . $this->error['error'] . ': ' . $reply + ); + } + return false; + } + + $this->last_reply = $reply; + $this->error = null; + return true; + } + + /** + * Send an SMTP SAML command. + * 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 FROM: + * @param string $from The address the message is from + * @access public + * @return bool + */ + public function sendAndMail($from) + { + return $this->sendCommand("SAML", "SAML FROM:$from", 250); + } + + /** + * Send an SMTP VRFY command. + * @param string $name The name to verify + * @access public + * @return bool + */ + public function verify($name) + { + return $this->sendCommand("VRFY", "VRFY $name", array(250, 251)); + } + + /** + * Send an SMTP NOOP command. + * Used to keep keep-alives alive, doesn't actually do anything + * @access public + * @return bool + */ + public function noop() + { + return $this->sendCommand("NOOP", "NOOP", 250); + } + + /** + * Send an SMTP TURN command. + * 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 implemented in future + * Implements from rfc 821: TURN + * @access public + * @return bool + */ + public function turn() + { + $this->error = array( + 'error' => 'The SMTP TURN command is not implemented' + ); + if ($this->do_debug >= 1) { + $this->edebug('SMTP -> NOTICE: ' . $this->error['error']); + } 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 . '
                '; + /** + * Send raw data to the server. + * @param string $data The data to send + * @access public + * @return int|bool The number of bytes sent to the server or FALSE on error + */ + public function client_send($data) + { + if ($this->do_debug >= 1) { + $this->edebug("CLIENT -> SMTP: $data"); + } + return fwrite($this->smtp_conn, $data); } - 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 . '
                '; - } - return false; + /** + * Get the latest error. + * @access public + * @return array + */ + public function getError() + { + return $this->error; } - $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 FROM: - * - * 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; + /** + * Get the last reply from the server. + * @access public + * @return string + */ + public function getLastReply() + { + return $this->last_reply; } - $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 . '
                '; + /** + * Read the SMTP server's response. + * 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 protected + * @return string + */ + protected function get_lines() + { + $data = ''; + $endtime = 0; + // If the connection is bad, give up now + if (!is_resource($this->smtp_conn)) { + return $data; + } + stream_set_timeout($this->smtp_conn, $this->Timeout); + if ($this->Timelimit > 0) { + $endtime = time() + $this->Timelimit; + } + while (is_resource($this->smtp_conn) && !feof($this->smtp_conn)) { + $str = @fgets($this->smtp_conn, 515); + if ($this->do_debug >= 4) { + $this->edebug("SMTP -> get_lines(): \$data was \"$data\""); + $this->edebug("SMTP -> get_lines(): \$str is \"$str\""); + } + $data .= $str; + if ($this->do_debug >= 4) { + $this->edebug("SMTP -> get_lines(): \$data is \"$data\""); + } + // if 4th character is a space, we are done reading, break the loop + if (substr($str, 3, 1) == ' ') { + break; + } + // Timed-out? Log and break + $info = stream_get_meta_data($this->smtp_conn); + if ($info['timed_out']) { + if ($this->do_debug >= 4) { + $this->edebug( + 'SMTP -> get_lines(): timed-out (' . $this->Timeout . ' sec)' + ); + } + break; + } + // Now check if reads took too long + if ($endtime) { + if (time() > $endtime) { + if ($this->do_debug >= 4) { + $this->edebug( + 'SMTP -> get_lines(): timelimit reached (' + . $this->Timelimit . ' sec)' + ); + } + break; + } + } + } + return $data; } - 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 . '
                '; - } - 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 - * - * 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; + /** + * Enable or disable VERP address generation. + * @param bool $enabled + */ + public function setVerp($enabled = false) + { + $this->do_verp = $enabled; } - // 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 . '
                '; + /** + * Get VERP address generation mode. + * @return bool + */ + public function getVerp() + { + return $this->do_verp; } - $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 . '
                '; - } + /** + * Set debug output method. + * @param string $method The function/method to use for debugging output. + */ + public function setDebugOutput($method = 'echo') + { + $this->Debugoutput = $method; } - if(empty($e) || $close_on_error) { - $this->Close(); + /** + * Get debug output method. + * @return string + */ + public function getDebugOutput() + { + return $this->Debugoutput; } - 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 TO: - * - * 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; + /** + * Set debug output level. + * @param int $level + */ + public function setDebugLevel($level = 0) + { + $this->do_debug = $level; } - 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 . '
                '; + /** + * Get debug output level. + * @return int + */ + public function getDebugLevel() + { + return $this->do_debug; } - 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 . '
                '; - } - 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 - * - * 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; + /** + * Set SMTP timeout. + * @param int $timeout + */ + public function setTimeout($timeout = 0) + { + $this->Timeout = $timeout; } - 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 . '
                '; + /** + * Get SMTP timeout. + * @return int + */ + public function getTimeout() + { + return $this->Timeout; } - - 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 . '
                '; - } - 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 FROM: - * - * 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 . '
                '; - } - - 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 . '
                '; - } - 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 - * - * 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 . '
                '; - } - 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(!feof($this->smtp_conn)) { - $str = @fgets($this->smtp_conn,515); - if($this->do_debug >= 4) { - echo "SMTP -> get_lines(): \$data was \"$data\"" . $this->CRLF . '
                '; - echo "SMTP -> get_lines(): \$str is \"$str\"" . $this->CRLF . '
                '; - } - $data .= $str; - if($this->do_debug >= 4) { - echo "SMTP -> get_lines(): \$data is \"$data\"" . $this->CRLF . '
                '; - } - // if 4th character is a space, we are done reading, break the loop - if(substr($str,3,1) == " ") { break; } - } - return $data; - } - } - -?> diff --git a/lib/phpmailer/language/phpmailer.lang-ar.php b/lib/phpmailer/language/phpmailer.lang-ar.php index b7c5057d0c2..67364e967a4 100644 --- a/lib/phpmailer/language/phpmailer.lang-ar.php +++ b/lib/phpmailer/language/phpmailer.lang-ar.php @@ -15,7 +15,7 @@ $PHPMAILER_LANG['file_access'] = 'لم نستطع الوصول للمل $PHPMAILER_LANG['file_open'] = 'File Error: لم نستطع ÙØªØ­ الملÙ: '; $PHPMAILER_LANG['from_failed'] = 'البريد التالي لم نستطع ارسال البريد له : '; $PHPMAILER_LANG['instantiate'] = 'لم نستطع توÙير خدمة البريد.'; -//$PHPMAILER_LANG['invalid_email'] = 'Not sending, email address is invalid: '; +//$PHPMAILER_LANG['invalid_address'] = 'Not sending, email address is invalid: '; $PHPMAILER_LANG['mailer_not_supported'] = ' mailer غير مدعوم.'; //$PHPMAILER_LANG['provide_address'] = 'You must provide at least one recipient email address.'; $PHPMAILER_LANG['recipients_failed'] = 'SMTP Error: الأخطاء التالية ' . @@ -24,4 +24,3 @@ $PHPMAILER_LANG['signing'] = 'خطأ ÙÙŠ التوقيع: '; //$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; //$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: '; //$PHPMAILER_LANG['variable_set'] = 'Cannot set or reset variable: '; -?> \ No newline at end of file diff --git a/lib/phpmailer/language/phpmailer.lang-br.php b/lib/phpmailer/language/phpmailer.lang-br.php index 6afe60b18cd..87ecbdfa5e1 100644 --- a/lib/phpmailer/language/phpmailer.lang-br.php +++ b/lib/phpmailer/language/phpmailer.lang-br.php @@ -3,24 +3,24 @@ * PHPMailer language file: refer to English translation for definitive list * Portuguese Version * By Paulo Henrique Garcia - paulo@controllerweb.com.br +* Edited by Lucas Guimarães - lucas@lucasguimaraes.com */ $PHPMAILER_LANG['authenticate'] = 'Erro de SMTP: Não foi possível autenticar.'; $PHPMAILER_LANG['connect_host'] = 'Erro de SMTP: Não foi possível conectar com o servidor SMTP.'; -$PHPMAILER_LANG['data_not_accepted'] = 'Erro de SMTP: Dados não aceitos.'; -//$PHPMAILER_LANG['empty_message'] = 'Message body empty'; +$PHPMAILER_LANG['data_not_accepted'] = 'Erro de SMTP: Dados rejeitados.'; +$PHPMAILER_LANG['empty_message'] = 'Corpo da mensagem vazio'; $PHPMAILER_LANG['encoding'] = 'Codificação desconhecida: '; $PHPMAILER_LANG['execute'] = 'Não foi possível executar: '; $PHPMAILER_LANG['file_access'] = 'Não foi possível acessar o arquivo: '; $PHPMAILER_LANG['file_open'] = 'Erro de Arquivo: Não foi possível abrir o arquivo: '; -$PHPMAILER_LANG['from_failed'] = 'Os endereços de rementente a seguir falharam: '; -$PHPMAILER_LANG['instantiate'] = 'Não foi possível instanciar a função mail.'; -//$PHPMAILER_LANG['invalid_email'] = 'Not sending, email address is invalid: '; -$PHPMAILER_LANG['mailer_not_supported'] = ' mailer não suportado.'; -$PHPMAILER_LANG['provide_address'] = 'Você deve fornecer pelo menos um endereço de destinatário de email.'; +$PHPMAILER_LANG['from_failed'] = 'Os endereços dos remententes a seguir falharam: '; +$PHPMAILER_LANG['instantiate'] = 'Não foi possível iniciar uma instância da função mail.'; +$PHPMAILER_LANG['invalid_address'] = 'Não enviando, endereço de e-mail inválido: '; +$PHPMAILER_LANG['mailer_not_supported'] = ' mailer não é suportado.'; +$PHPMAILER_LANG['provide_address'] = 'Você deve fornecer pelo menos um endereço de destinatário de e-mail.'; $PHPMAILER_LANG['recipients_failed'] = 'Erro de SMTP: Os endereços de destinatário a seguir falharam: '; -//$PHPMAILER_LANG['signing'] = 'Signing Error: '; -//$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; -//$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: '; -//$PHPMAILER_LANG['variable_set'] = 'Cannot set or reset variable: '; -?> \ No newline at end of file +$PHPMAILER_LANG['signing'] = 'Erro ao assinar: '; +$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() falhou.'; +$PHPMAILER_LANG['smtp_error'] = 'Erro de servidor SMTP: '; +$PHPMAILER_LANG['variable_set'] = 'Não foi possível definir ou resetar a variável: '; diff --git a/lib/phpmailer/language/phpmailer.lang-ca.php b/lib/phpmailer/language/phpmailer.lang-ca.php index 4a160a21ebe..dc563e77f6c 100644 --- a/lib/phpmailer/language/phpmailer.lang-ca.php +++ b/lib/phpmailer/language/phpmailer.lang-ca.php @@ -15,7 +15,7 @@ $PHPMAILER_LANG['file_access'] = 'No es pot accedir a l\'arxiu: '; $PHPMAILER_LANG['file_open'] = 'Error d\'Arxiu: No es pot obrir l\'arxiu: '; $PHPMAILER_LANG['from_failed'] = 'La(s) següent(s) adreces de remitent han fallat: '; $PHPMAILER_LANG['instantiate'] = 'No s\'ha pogut crear una instància de la funció Mail.'; -//$PHPMAILER_LANG['invalid_email'] = 'Not sending, email address is invalid: '; +//$PHPMAILER_LANG['invalid_address'] = 'Not sending, email address is invalid: '; $PHPMAILER_LANG['mailer_not_supported'] = ' mailer no està suportat'; $PHPMAILER_LANG['provide_address'] = 'S\'ha de proveir almenys una adreça d\'email com a destinatari.'; $PHPMAILER_LANG['recipients_failed'] = 'Error SMTP: Els següents destinataris han fallat: '; @@ -23,4 +23,3 @@ $PHPMAILER_LANG['recipients_failed'] = 'Error SMTP: Els següents destinatari //$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; //$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: '; //$PHPMAILER_LANG['variable_set'] = 'Cannot set or reset variable: '; -?> \ No newline at end of file diff --git a/lib/phpmailer/language/phpmailer.lang-ch.php b/lib/phpmailer/language/phpmailer.lang-ch.php index 31ebd861cbe..d28eba611b0 100644 --- a/lib/phpmailer/language/phpmailer.lang-ch.php +++ b/lib/phpmailer/language/phpmailer.lang-ch.php @@ -15,7 +15,7 @@ $PHPMAILER_LANG['file_access'] = 'ä¸èƒ½è®¿é—®æ–‡ä»¶ï¼š'; $PHPMAILER_LANG['file_open'] = '文件错误:ä¸èƒ½æ‰“开文件:'; $PHPMAILER_LANG['from_failed'] = '下é¢çš„å‘é€åœ°å€é‚®ä»¶å‘é€å¤±è´¥äº†ï¼š '; $PHPMAILER_LANG['instantiate'] = 'ä¸èƒ½å®žçްmail方法。'; -//$PHPMAILER_LANG['invalid_email'] = 'Not sending, email address is invalid: '; +//$PHPMAILER_LANG['invalid_address'] = 'Not sending, email address is invalid: '; $PHPMAILER_LANG['mailer_not_supported'] = ' 您所选择的å‘é€é‚®ä»¶çš„æ–¹æ³•并䏿”¯æŒã€‚'; $PHPMAILER_LANG['provide_address'] = '您必须æä¾›è‡³å°‘一个 收信人的email地å€ã€‚'; $PHPMAILER_LANG['recipients_failed'] = 'SMTP 错误: 下é¢çš„ æ”¶ä»¶äººå¤±è´¥äº†ï¼š '; @@ -23,4 +23,3 @@ $PHPMAILER_LANG['recipients_failed'] = 'SMTP 错误: 下é¢çš„ æ”¶ä»¶äººå¤±è´¥ //$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; //$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: '; //$PHPMAILER_LANG['variable_set'] = 'Cannot set or reset variable: '; -?> \ No newline at end of file diff --git a/lib/phpmailer/language/phpmailer.lang-cz.php b/lib/phpmailer/language/phpmailer.lang-cz.php index 1c8b2063926..6da3bd8a987 100644 --- a/lib/phpmailer/language/phpmailer.lang-cz.php +++ b/lib/phpmailer/language/phpmailer.lang-cz.php @@ -4,22 +4,21 @@ * Czech Version */ -$PHPMAILER_LANG['authenticate'] = 'SMTP Error: Chyba autentikace.'; -$PHPMAILER_LANG['connect_host'] = 'SMTP Error: Nelze navázat spojení se SMTP serverem.'; -$PHPMAILER_LANG['data_not_accepted'] = 'SMTP Error: Data nebyla pøijata'; -//$PHPMAILER_LANG['empty_message'] = 'Message body empty'; +$PHPMAILER_LANG['authenticate'] = 'Chyba SMTP: Autentizace selhala.'; +$PHPMAILER_LANG['connect_host'] = 'Chyba SMTP: Nelze navázat spojení se SMTP serverem.'; +$PHPMAILER_LANG['data_not_accepted'] = 'Chyba SMTP: Data nebyla pÅ™ijata.'; +$PHPMAILER_LANG['empty_message'] = 'Prázdné tÄ›lo zprávy'; $PHPMAILER_LANG['encoding'] = 'Neznámé kódování: '; $PHPMAILER_LANG['execute'] = 'Nelze provést: '; -$PHPMAILER_LANG['file_access'] = 'Soubor nenalezen: '; -$PHPMAILER_LANG['file_open'] = 'File Error: Nelze otevøít soubor pro ètení: '; -$PHPMAILER_LANG['from_failed'] = 'Následující adresa From je nesprávná: '; -$PHPMAILER_LANG['instantiate'] = 'Nelze vytvoøit instanci emailové funkce.'; -//$PHPMAILER_LANG['invalid_email'] = 'Not sending, email address is invalid: '; -$PHPMAILER_LANG['mailer_not_supported'] = ' mailový klient není podporován.'; -$PHPMAILER_LANG['provide_address'] = 'Musíte zadat alespoò jednu emailovou adresu pøíjemce.'; -$PHPMAILER_LANG['recipients_failed'] = 'SMTP Error: Adresy pøíjemcù nejsou správné '; -//$PHPMAILER_LANG['signing'] = 'Signing Error: '; -//$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; -//$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: '; -//$PHPMAILER_LANG['variable_set'] = 'Cannot set or reset variable: '; -?> \ No newline at end of file +$PHPMAILER_LANG['file_access'] = 'Nelze získat přístup k souboru: '; +$PHPMAILER_LANG['file_open'] = 'Chyba souboru: Nelze otevřít soubor pro Ätení: '; +$PHPMAILER_LANG['from_failed'] = 'Následující adresa odesílatele je nesprávná: '; +$PHPMAILER_LANG['instantiate'] = 'Nelze vytvoÅ™it instanci emailové funkce.'; +$PHPMAILER_LANG['invalid_address'] = 'Neplatná adresa: '; +$PHPMAILER_LANG['mailer_not_supported'] = ' mailer není podporován.'; +$PHPMAILER_LANG['provide_address'] = 'Musíte zadat alespoň jednu emailovou adresu příjemce.'; +$PHPMAILER_LANG['recipients_failed'] = 'Chyba SMTP: Následující adresy příjemců nejsou správnÄ›: '; +$PHPMAILER_LANG['signing'] = 'Chyba pÅ™ihlaÅ¡ování: '; +$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() selhal.'; +$PHPMAILER_LANG['smtp_error'] = 'Chyba SMTP serveru: '; +$PHPMAILER_LANG['variable_set'] = 'Nelze nastavit nebo zmÄ›nit promÄ›nnou: '; diff --git a/lib/phpmailer/language/phpmailer.lang-de.php b/lib/phpmailer/language/phpmailer.lang-de.php index b2a76ce1b55..ba17a92a951 100644 --- a/lib/phpmailer/language/phpmailer.lang-de.php +++ b/lib/phpmailer/language/phpmailer.lang-de.php @@ -14,7 +14,7 @@ $PHPMAILER_LANG['file_access'] = 'Zugriff auf folgende Datei fehlgeschl $PHPMAILER_LANG['file_open'] = 'Datei Fehler: konnte folgende Datei nicht öffnen: '; $PHPMAILER_LANG['from_failed'] = 'Die folgende Absenderadresse ist nicht korrekt: '; $PHPMAILER_LANG['instantiate'] = 'Mail Funktion konnte nicht initialisiert werden.'; -$PHPMAILER_LANG['invalid_email'] = 'E-Mail wird nicht gesendet, die Adresse ist ungültig.'; +$PHPMAILER_LANG['invalid_address'] = 'E-Mail wird nicht gesendet, die Adresse ist ungültig.'; $PHPMAILER_LANG['mailer_not_supported'] = ' mailer wird nicht unterstützt.'; $PHPMAILER_LANG['provide_address'] = 'Bitte geben Sie mindestens eine Empfänger E-Mailadresse an.'; $PHPMAILER_LANG['recipients_failed'] = 'SMTP Fehler: Die folgenden Empfänger sind nicht korrekt: '; @@ -22,4 +22,3 @@ $PHPMAILER_LANG['signing'] = 'Fehler beim Signieren: '; $PHPMAILER_LANG['smtp_connect_failed'] = 'Verbindung zu SMTP Server fehlgeschlagen.'; $PHPMAILER_LANG['smtp_error'] = 'Fehler vom SMTP Server: '; $PHPMAILER_LANG['variable_set'] = 'Kann Variable nicht setzen oder zurücksetzen: '; -?> \ No newline at end of file diff --git a/lib/phpmailer/language/phpmailer.lang-dk.php b/lib/phpmailer/language/phpmailer.lang-dk.php index b26257316b1..fdb0b17b856 100644 --- a/lib/phpmailer/language/phpmailer.lang-dk.php +++ b/lib/phpmailer/language/phpmailer.lang-dk.php @@ -15,7 +15,7 @@ $PHPMAILER_LANG['file_access'] = 'Ingen adgang til fil: '; $PHPMAILER_LANG['file_open'] = 'Fil fejl: Kunne ikke Ã¥bne filen: '; $PHPMAILER_LANG['from_failed'] = 'Følgende afsenderadresse er forkert: '; $PHPMAILER_LANG['instantiate'] = 'Kunne ikke initialisere email funktionen.'; -//$PHPMAILER_LANG['invalid_email'] = 'Not sending, email address is invalid: '; +//$PHPMAILER_LANG['invalid_address'] = 'Not sending, email address is invalid: '; $PHPMAILER_LANG['mailer_not_supported'] = ' mailer understøttes ikke.'; $PHPMAILER_LANG['provide_address'] = 'Du skal indtaste mindst en modtagers emailadresse.'; $PHPMAILER_LANG['recipients_failed'] = 'SMTP fejl: Følgende modtagere er forkerte: '; @@ -23,4 +23,3 @@ $PHPMAILER_LANG['recipients_failed'] = 'SMTP fejl: Følgende modtagere er for //$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; //$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: '; //$PHPMAILER_LANG['variable_set'] = 'Cannot set or reset variable: '; -?> \ No newline at end of file diff --git a/lib/phpmailer/language/phpmailer.lang-eo.php b/lib/phpmailer/language/phpmailer.lang-eo.php new file mode 100644 index 00000000000..799b3319632 --- /dev/null +++ b/lib/phpmailer/language/phpmailer.lang-eo.php @@ -0,0 +1,24 @@ + \ No newline at end of file +$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() se falló.'; +$PHPMAILER_LANG['smtp_error'] = 'Error del servidor SMTP: '; +$PHPMAILER_LANG['variable_set'] = 'No se pudo ajustar o reajustar la variable: '; diff --git a/lib/phpmailer/language/phpmailer.lang-et.php b/lib/phpmailer/language/phpmailer.lang-et.php index cf61779b08b..eee4e58e88d 100644 --- a/lib/phpmailer/language/phpmailer.lang-et.php +++ b/lib/phpmailer/language/phpmailer.lang-et.php @@ -3,24 +3,24 @@ * PHPMailer language file: refer to English translation for definitive list * Estonian Version * By Indrek Päri +* Revised By Elan Ruusamäe */ $PHPMAILER_LANG['authenticate'] = 'SMTP Viga: Autoriseerimise viga.'; $PHPMAILER_LANG['connect_host'] = 'SMTP Viga: Ei õnnestunud luua ühendust SMTP serveriga.'; $PHPMAILER_LANG['data_not_accepted'] = 'SMTP Viga: Vigased andmed.'; -//$PHPMAILER_LANG['empty_message'] = 'Message body empty'; -$PHPMAILER_LANG['encoding'] = 'Tundmatu Unknown kodeering: '; +$PHPMAILER_LANG['empty_message'] = 'Tühi kirja sisu'; +$PHPMAILER_LANG["encoding"] = 'Tundmatu kodeering: '; $PHPMAILER_LANG['execute'] = 'Tegevus ebaõnnestus: '; $PHPMAILER_LANG['file_access'] = 'Pole piisavalt õiguseid järgneva faili avamiseks: '; $PHPMAILER_LANG['file_open'] = 'Faili Viga: Faili avamine ebaõnnestus: '; $PHPMAILER_LANG['from_failed'] = 'Järgnev saatja e-posti aadress on vigane: '; $PHPMAILER_LANG['instantiate'] = 'mail funktiooni käivitamine ebaõnnestus.'; -//$PHPMAILER_LANG['invalid_email'] = 'Not sending, email address is invalid: '; +$PHPMAILER_LANG['invalid_address'] = 'Saatmine peatatud, e-posti address vigane: '; $PHPMAILER_LANG['provide_address'] = 'Te peate määrama vähemalt ühe saaja e-posti aadressi.'; $PHPMAILER_LANG['mailer_not_supported'] = ' maileri tugi puudub.'; $PHPMAILER_LANG['recipients_failed'] = 'SMTP Viga: Järgnevate saajate e-posti aadressid on vigased: '; -//$PHPMAILER_LANG['signing'] = 'Signing Error: '; -//$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; -//$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: '; -//$PHPMAILER_LANG['variable_set'] = 'Cannot set or reset variable: '; -?> \ No newline at end of file +$PHPMAILER_LANG["signing"] = 'Viga allkirjastamisel: '; +$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() ebaõnnestus.'; +$PHPMAILER_LANG['smtp_error'] = 'SMTP serveri viga: '; +$PHPMAILER_LANG['variable_set'] = 'Ei õnnestunud määrata või lähtestada muutujat: '; diff --git a/lib/phpmailer/language/phpmailer.lang-fa.php b/lib/phpmailer/language/phpmailer.lang-fa.php new file mode 100644 index 00000000000..49aad1b534c --- /dev/null +++ b/lib/phpmailer/language/phpmailer.lang-fa.php @@ -0,0 +1,25 @@ + +*/ + +$PHPMAILER_LANG['authenticate'] = 'SMTP Error: احراز هویت با شکست مواجه شد.'; +$PHPMAILER_LANG['connect_host'] = 'SMTP Error: اتصال به سرور SMTP برقرار نشد.'; +$PHPMAILER_LANG['data_not_accepted'] = 'SMTP Error: داده ها نادرست هستند.'; +$PHPMAILER_LANG['empty_message'] = 'بخش متن پیام خالی است.'; +$PHPMAILER_LANG['encoding'] = 'رمزگذاری ناشناخته: '; +$PHPMAILER_LANG['execute'] = 'امکان اجرا وجود ندارد: '; +$PHPMAILER_LANG['file_access'] = 'امکان دسترسی به ÙØ§ÛŒÙ„ وجود ندارد: '; +$PHPMAILER_LANG['file_open'] = 'File Error: امکان بازکردن ÙØ§ÛŒÙ„ وجود ندارد: '; +$PHPMAILER_LANG['from_failed'] = 'آدرس ÙØ±Ø³ØªÙ†Ø¯Ù‡ اشتباه است: '; +$PHPMAILER_LANG['instantiate'] = 'امکان معرÙÛŒ تابع ایمیل وجود ندارد.'; +$PHPMAILER_LANG['invalid_address'] = 'آدرس ایمیل معتبر نیست: '; +$PHPMAILER_LANG['mailer_not_supported'] = ' mailer پشتیبانی نمی شود.'; +$PHPMAILER_LANG['provide_address'] = 'باید حداقل یک آدرس گیرنده وارد کنید.'; +$PHPMAILER_LANG['recipients_failed'] = 'SMTP Error: ارسال به آدرس گیرنده با خطا مواجه شد: '; +$PHPMAILER_LANG['signing'] = 'خطا در امضا: '; +$PHPMAILER_LANG['smtp_connect_failed'] = 'خطا در اتصال به SMTP.'; +$PHPMAILER_LANG['smtp_error'] = 'خطا در SMTP Server: '; +$PHPMAILER_LANG['variable_set'] = 'امکان ارسال یا ارسال مجدد متغیرها وجود ندارد: '; diff --git a/lib/phpmailer/language/phpmailer.lang-fi.php b/lib/phpmailer/language/phpmailer.lang-fi.php index 12a845aad6b..16a02e13803 100644 --- a/lib/phpmailer/language/phpmailer.lang-fi.php +++ b/lib/phpmailer/language/phpmailer.lang-fi.php @@ -15,7 +15,7 @@ $PHPMAILER_LANG['file_access'] = 'Seuraavaan tiedostoon ei ole oikeuksi $PHPMAILER_LANG['file_open'] = 'Tiedostovirhe: Ei voida avata tiedostoa: '; $PHPMAILER_LANG['from_failed'] = 'Seuraava lähettäjän osoite on virheellinen: '; $PHPMAILER_LANG['instantiate'] = 'mail-funktion luonti epäonnistui.'; -//$PHPMAILER_LANG['invalid_email'] = 'Not sending, email address is invalid: '; +//$PHPMAILER_LANG['invalid_address'] = 'Not sending, email address is invalid: '; $PHPMAILER_LANG['mailer_not_supported'] = 'postivälitintyyppiä ei tueta.'; $PHPMAILER_LANG['provide_address'] = 'Aseta vähintään yksi vastaanottajan sähköpostiosoite.'; $PHPMAILER_LANG['recipients_failed'] = 'SMTP-virhe: seuraava vastaanottaja osoite on virheellinen.'; @@ -24,4 +24,3 @@ $PHPMAILER_LANG['encoding'] = 'Tuntematon koodaustyyppi: '; //$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; //$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: '; //$PHPMAILER_LANG['variable_set'] = 'Cannot set or reset variable: '; -?> \ No newline at end of file diff --git a/lib/phpmailer/language/phpmailer.lang-fo.php b/lib/phpmailer/language/phpmailer.lang-fo.php index 6bd9b0a213d..fc5d6d5654b 100644 --- a/lib/phpmailer/language/phpmailer.lang-fo.php +++ b/lib/phpmailer/language/phpmailer.lang-fo.php @@ -16,7 +16,7 @@ $PHPMAILER_LANG['file_access'] = 'Kundi ikki tilganga fílu: '; $PHPMAILER_LANG['file_open'] = 'Fílu feilur: Kundi ikki opna fílu: '; $PHPMAILER_LANG['from_failed'] = 'fylgjandi Frá/From adressa miseydnaðist: '; $PHPMAILER_LANG['instantiate'] = 'Kuni ikki instantiera mail funktión.'; -//$PHPMAILER_LANG['invalid_email'] = 'Not sending, email address is invalid: '; +//$PHPMAILER_LANG['invalid_address'] = 'Not sending, email address is invalid: '; $PHPMAILER_LANG['mailer_not_supported'] = ' er ikki supporterað.'; $PHPMAILER_LANG['provide_address'] = 'Tú skal uppgeva minst móttakara-emailadressu(r).'; $PHPMAILER_LANG['recipients_failed'] = 'SMTP Feilur: Fylgjandi móttakarar miseydnaðust: '; @@ -24,4 +24,3 @@ $PHPMAILER_LANG['recipients_failed'] = 'SMTP Feilur: Fylgjandi móttakarar mi //$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; //$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: '; //$PHPMAILER_LANG['variable_set'] = 'Cannot set or reset variable: '; -?> \ No newline at end of file diff --git a/lib/phpmailer/language/phpmailer.lang-fr.php b/lib/phpmailer/language/phpmailer.lang-fr.php index c99ac3caf92..2d23cf51151 100644 --- a/lib/phpmailer/language/phpmailer.lang-fr.php +++ b/lib/phpmailer/language/phpmailer.lang-fr.php @@ -1,25 +1,29 @@ \ No newline at end of file +$PHPMAILER_LANG['recipients_failed'] = 'Erreur SMTP : les destinataires suivants sont en erreur : '; +$PHPMAILER_LANG['signing'] = 'Erreur de signature : '; +$PHPMAILER_LANG['smtp_connect_failed'] = 'Échec de la connexion SMTP.'; +$PHPMAILER_LANG['smtp_error'] = 'Erreur du serveur SMTP : '; +$PHPMAILER_LANG['variable_set'] = 'Ne peut initialiser ou réinitialiser une variable : '; diff --git a/lib/phpmailer/language/phpmailer.lang-he.php b/lib/phpmailer/language/phpmailer.lang-he.php new file mode 100644 index 00000000000..e30b596d601 --- /dev/null +++ b/lib/phpmailer/language/phpmailer.lang-he.php @@ -0,0 +1,25 @@ + +*/ + +$PHPMAILER_LANG['authenticate'] = 'שגי×ת SMTP: פעולת ×”×ימות נכשלה.'; +$PHPMAILER_LANG['connect_host'] = 'שגי×ת SMTP: ×œ× ×”×¦×œ×—×ª×™ להתחבר לשרת SMTP.'; +$PHPMAILER_LANG['data_not_accepted'] = 'שגי×ת SMTP: מידע ×œ× ×”×ª×§×‘×œ.'; +$PHPMAILER_LANG['empty_message'] = 'גוף ההודעה ריק'; +$PHPMAILER_LANG['invalid_address'] = 'כתובת שגויה'; +$PHPMAILER_LANG['encoding'] = 'קידוד ×œ× ×ž×•×›×¨: '; +$PHPMAILER_LANG['execute'] = '×œ× ×”×¦×œ×—×ª×™ להפעיל ×ת: '; +$PHPMAILER_LANG['file_access'] = '×œ× × ×™×ª×Ÿ לגשת לקובץ: '; +$PHPMAILER_LANG['file_open'] = 'שגי×ת קובץ: ×œ× × ×™×ª×Ÿ לגשת לקובץ: '; +$PHPMAILER_LANG['from_failed'] = 'כתובות ×”× ×ž×¢× ×™× ×”×‘×ות נכשלו: '; +$PHPMAILER_LANG['instantiate'] = '×œ× ×”×¦×œ×—×ª×™ להפעיל ×ת פונקציית המייל.'; +$PHPMAILER_LANG['mailer_not_supported'] = ' ××™× ×” נתמכת.'; +$PHPMAILER_LANG['provide_address'] = 'חובה לספק לפחות כתובת ×חת של מקבל המייל.'; +$PHPMAILER_LANG['recipients_failed'] = 'שגי×ת SMTP: ×”× ×ž×¢× ×™× ×”×‘××™× × ×›×©×œ×•: '; +$PHPMAILER_LANG['signing'] = 'שגי×ת חתימה: '; +$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; +$PHPMAILER_LANG['smtp_error'] = 'שגי×ת שרת SMTP: '; +$PHPMAILER_LANG['variable_set'] = '×œ× × ×™×ª×Ÿ לקבוע ×ו לשנות ×ת המשתנה: '; diff --git a/lib/phpmailer/language/phpmailer.lang-hu.php b/lib/phpmailer/language/phpmailer.lang-hu.php index caca0b50f14..d8d19267960 100644 --- a/lib/phpmailer/language/phpmailer.lang-hu.php +++ b/lib/phpmailer/language/phpmailer.lang-hu.php @@ -1,25 +1,24 @@ \ No newline at end of file +$PHPMAILER_LANG['execute'] = 'Nem lehet végrehajtani: '; +$PHPMAILER_LANG['file_access'] = 'A következÅ‘ fájl nem elérhetÅ‘: '; +$PHPMAILER_LANG['file_open'] = 'Fájl hiba: a következÅ‘ fájlt nem lehet megnyitni: '; +$PHPMAILER_LANG['from_failed'] = 'A feladóként megadott következÅ‘ cím hibás: '; +$PHPMAILER_LANG['instantiate'] = 'A PHP mail() függvényt nem sikerült végrehajtani.'; +$PHPMAILER_LANG['invalid_address'] = 'Érvénytelen cím: '; +$PHPMAILER_LANG['mailer_not_supported'] = ' a mailer-osztály nem támogatott.'; +$PHPMAILER_LANG['provide_address'] = 'Legalább egy címzettet fel kell tüntetni.'; +$PHPMAILER_LANG['recipients_failed'] = 'SMTP hiba: a címzettként megadott következÅ‘ címek hibásak: '; +$PHPMAILER_LANG['signing'] = 'Hibás aláírás: '; +$PHPMAILER_LANG['smtp_connect_failed'] = 'Hiba az SMTP-kapcsolatban.'; +$PHPMAILER_LANG['smtp_error'] = 'SMTP-szerver hiba: '; +$PHPMAILER_LANG['variable_set'] = 'A következÅ‘ változók beállítása nem sikerült: '; diff --git a/lib/phpmailer/language/phpmailer.lang-it.php b/lib/phpmailer/language/phpmailer.lang-it.php index fc1fcb8d2ec..27ab0ead006 100644 --- a/lib/phpmailer/language/phpmailer.lang-it.php +++ b/lib/phpmailer/language/phpmailer.lang-it.php @@ -3,25 +3,24 @@ * PHPMailer language file: refer to English translation for definitive list * Italian version * @package PHPMailer -* @author Ilias Bartolini +* @author Ilias Bartolini , Stefano Sabatini */ $PHPMAILER_LANG['authenticate'] = 'SMTP Error: Impossibile autenticarsi.'; $PHPMAILER_LANG['connect_host'] = 'SMTP Error: Impossibile connettersi all\'host SMTP.'; -$PHPMAILER_LANG['data_not_accepted'] = 'SMTP Error: Data non accettati dal server.'; -//$PHPMAILER_LANG['empty_message'] = 'Message body empty'; -$PHPMAILER_LANG['encoding'] = 'Encoding set dei caratteri sconosciuto: '; +$PHPMAILER_LANG['data_not_accepted'] = 'SMTP Error: Dati non accettati dal server.'; +$PHPMAILER_LANG['empty_message'] = 'Il corpo del messaggio è vuoto'; +$PHPMAILER_LANG['encoding'] = 'Codifica dei caratteri sconosciuta: '; $PHPMAILER_LANG['execute'] = 'Impossibile eseguire l\'operazione: '; $PHPMAILER_LANG['file_access'] = 'Impossibile accedere al file: '; $PHPMAILER_LANG['file_open'] = 'File Error: Impossibile aprire il file: '; $PHPMAILER_LANG['from_failed'] = 'I seguenti indirizzi mittenti hanno generato errore: '; $PHPMAILER_LANG['instantiate'] = 'Impossibile istanziare la funzione mail'; -//$PHPMAILER_LANG['invalid_email'] = 'Not sending, email address is invalid: '; +$PHPMAILER_LANG['invalid_address'] = 'Impossibile inviare, l\'indirizzo email non è valido: '; $PHPMAILER_LANG['provide_address'] = 'Deve essere fornito almeno un indirizzo ricevente'; $PHPMAILER_LANG['mailer_not_supported'] = 'Mailer non supportato'; -$PHPMAILER_LANG['recipients_failed'] = 'SMTP Error: I seguenti indirizzi destinatari hanno generato errore: '; -//$PHPMAILER_LANG['signing'] = 'Signing Error: '; -//$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; -//$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: '; -//$PHPMAILER_LANG['variable_set'] = 'Cannot set or reset variable: '; -?> \ No newline at end of file +$PHPMAILER_LANG['recipients_failed'] = 'SMTP Error: I seguenti indirizzi destinatari hanno generato un errore: '; +$PHPMAILER_LANG['signing'] = 'Errore nella firma: '; +$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() fallita.'; +$PHPMAILER_LANG['smtp_error'] = 'Errore del server SMTP: '; +$PHPMAILER_LANG['variable_set'] = 'Impossibile impostare o resettare la variabile: '; diff --git a/lib/phpmailer/language/phpmailer.lang-ja.php b/lib/phpmailer/language/phpmailer.lang-ja.php index 63cfb23b6af..ca6de909da5 100644 --- a/lib/phpmailer/language/phpmailer.lang-ja.php +++ b/lib/phpmailer/language/phpmailer.lang-ja.php @@ -3,6 +3,7 @@ * PHPMailer language file: refer to English translation for definitive list * Japanese Version * By Mitsuhiro Yoshida - http://mitstek.com/ +* Modified by Yoshi Sakai - http://bluemooninc.jp/ */ $PHPMAILER_LANG['authenticate'] = 'SMTPエラー: èªè¨¼ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚'; @@ -13,9 +14,9 @@ $PHPMAILER_LANG['encoding'] = '䏿˜Žãªã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°: '; $PHPMAILER_LANG['execute'] = '実行ã§ãã¾ã›ã‚“ã§ã—ãŸ: '; $PHPMAILER_LANG['file_access'] = 'ファイルã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã›ã‚“: '; $PHPMAILER_LANG['file_open'] = 'ファイルエラー: ファイルを開ã‘ã¾ã›ã‚“: '; -$PHPMAILER_LANG['from_failed'] = '次ã®Fromアドレスã«é–“é•ã„ãŒã‚りã¾ã™: '; +$PHPMAILER_LANG['from_failed'] = 'Fromアドレスを登録ã™ã‚‹éš›ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: '; $PHPMAILER_LANG['instantiate'] = 'ãƒ¡ãƒ¼ãƒ«é–¢æ•°ãŒæ­£å¸¸ã«å‹•作ã—ã¾ã›ã‚“ã§ã—ãŸã€‚'; -//$PHPMAILER_LANG['invalid_email'] = 'Not sending, email address is invalid: '; +//$PHPMAILER_LANG['invalid_address'] = 'Not sending, email address is invalid: '; $PHPMAILER_LANG['provide_address'] = 'å°‘ãªãã¨ã‚‚1ã¤ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’ 指定ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚'; $PHPMAILER_LANG['mailer_not_supported'] = ' メーラーãŒã‚µãƒãƒ¼ãƒˆã•れã¦ã„ã¾ã›ã‚“。'; $PHPMAILER_LANG['recipients_failed'] = 'SMTPエラー: 次ã®å—信者アドレス㫠間é•ã„ãŒã‚りã¾ã™: '; @@ -23,4 +24,3 @@ $PHPMAILER_LANG['recipients_failed'] = 'SMTPエラー: 次ã®å—信者アドレ //$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; //$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: '; //$PHPMAILER_LANG['variable_set'] = 'Cannot set or reset variable: '; -?> \ No newline at end of file diff --git a/lib/phpmailer/language/phpmailer.lang-lt.php b/lib/phpmailer/language/phpmailer.lang-lt.php new file mode 100644 index 00000000000..5dba58a9322 --- /dev/null +++ b/lib/phpmailer/language/phpmailer.lang-lt.php @@ -0,0 +1,24 @@ + +*/ + +$PHPMAILER_LANG['authenticate'] = 'SMTP klaida: autentifikacija nepavyko.'; +$PHPMAILER_LANG['connect_host'] = 'SMTP klaida: nepavyksta prisijungti prie SMTP stoties.'; +$PHPMAILER_LANG['data_not_accepted'] = 'SMTP klaida: duomenys nepriimti.'; +$PHPMAILER_LANG['empty_message'] = 'LaiÅ¡ko turinys tuÅ¡Äias'; +$PHPMAILER_LANG['encoding'] = 'Neatpažinta koduotÄ—: '; +$PHPMAILER_LANG['execute'] = 'Nepavyko įvykdyti komandos: '; +$PHPMAILER_LANG['file_access'] = 'Byla nepasiekiama: '; +$PHPMAILER_LANG['file_open'] = 'Bylos klaida: Nepavyksta atidaryti: '; +$PHPMAILER_LANG['from_failed'] = 'Neteisingas siuntÄ—jo adresas: '; +$PHPMAILER_LANG['instantiate'] = 'Nepavyko paleisti mail funkcijos.'; +$PHPMAILER_LANG['invalid_address'] = 'Neteisingas adresas'; +$PHPMAILER_LANG['mailer_not_supported'] = ' paÅ¡to stotis nepalaikoma.'; +$PHPMAILER_LANG['provide_address'] = 'Nurodykite bent vienÄ… gavÄ—jo adresÄ….'; +$PHPMAILER_LANG['recipients_failed'] = 'SMTP klaida: nepavyko iÅ¡siųsti Å¡iems gavÄ—jams: '; +$PHPMAILER_LANG['signing'] = 'Prisijungimo klaida: '; +$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP susijungimo klaida'; +$PHPMAILER_LANG['smtp_error'] = 'SMTP stoties klaida: '; +$PHPMAILER_LANG['variable_set'] = 'Nepavyko priskirti reikÅ¡mÄ—s kintamajam: '; diff --git a/lib/phpmailer/language/phpmailer.lang-nl.php b/lib/phpmailer/language/phpmailer.lang-nl.php index d2c380b09d3..c86d7699bfb 100644 --- a/lib/phpmailer/language/phpmailer.lang-nl.php +++ b/lib/phpmailer/language/phpmailer.lang-nl.php @@ -1,25 +1,24 @@ */ -$PHPMAILER_LANG['authenticate'] = 'SMTP Fout: authenticatie mislukt.'; -$PHPMAILER_LANG['connect_host'] = 'SMTP Fout: Kon niet verbinden met SMTP host.'; -$PHPMAILER_LANG['data_not_accepted'] = 'SMTP Fout: Data niet geaccepteerd.'; -//$PHPMAILER_LANG['empty_message'] = 'Message body empty'; -$PHPMAILER_LANG['encoding'] = 'Onbekende codering: '; -$PHPMAILER_LANG['execute'] = 'Kon niet uitvoeren: '; -$PHPMAILER_LANG['file_access'] = 'Kreeg geen toegang tot bestand: '; -$PHPMAILER_LANG['file_open'] = 'Bestandsfout: Kon bestand niet openen: '; -$PHPMAILER_LANG['from_failed'] = 'De volgende afzender adressen zijn mislukt: '; -$PHPMAILER_LANG['instantiate'] = 'Kon mail functie niet initialiseren.'; -//$PHPMAILER_LANG['invalid_email'] = 'Not sending, email address is invalid: '; -$PHPMAILER_LANG['provide_address'] = 'Er moet tenmiste één ontvanger emailadres opgegeven worden.'; -$PHPMAILER_LANG['mailer_not_supported'] = ' mailer wordt niet ondersteund.'; -$PHPMAILER_LANG['recipients_failed'] = 'SMTP Fout: De volgende ontvangers zijn mislukt: '; -//$PHPMAILER_LANG['signing'] = 'Signing Error: '; -//$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; -//$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: '; -//$PHPMAILER_LANG['variable_set'] = 'Cannot set or reset variable: '; -?> \ No newline at end of file +$PHPMAILER_LANG['authenticate'] = 'SMTP-fout: authenticatie mislukt.';//SMTP Error: Could not authenticate. +$PHPMAILER_LANG['connect_host'] = 'SMTP-fout: kon niet verbinden met SMTP-host.';//SMTP Error: Could not connect to SMTP host. +$PHPMAILER_LANG['data_not_accepted'] = 'SMTP-fout: data niet geaccepteerd.';//SMTP Error: Data not accepted. +$PHPMAILER_LANG['empty_message'] = 'Berichttekst is leeg';//Message body empty +$PHPMAILER_LANG['encoding'] = 'Onbekende codering: ';//Unknown encoding: +$PHPMAILER_LANG['execute'] = 'Kon niet uitvoeren: ';//Could not execute: +$PHPMAILER_LANG['file_access'] = 'Kreeg geen toegang tot bestand: ';//Could not access file: +$PHPMAILER_LANG['file_open'] = 'Bestandsfout: kon bestand niet openen: ';//File Error: Could not open file: +$PHPMAILER_LANG['from_failed'] = 'Het volgende afzendersadres is mislukt: ';//The following From address failed: +$PHPMAILER_LANG['instantiate'] = 'Kon mailfunctie niet initialiseren.';//Could not instantiate mail function. +$PHPMAILER_LANG['invalid_address'] = 'Ongeldig adres';//Invalid address +$PHPMAILER_LANG['mailer_not_supported'] = ' mailer wordt niet ondersteund.';// mailer is not supported. +$PHPMAILER_LANG['provide_address'] = 'Er moet minstens één ontvanger worden opgegeven.';//You must provide at least one recipient email address. +$PHPMAILER_LANG['recipients_failed'] = 'SMTP-fout: de volgende ontvangers zijn mislukt: ';//SMTP Error: The following recipients failed: +$PHPMAILER_LANG['signing'] = 'Signeerfout: ';//Signing Error: +$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Verbinding mislukt.'; +$PHPMAILER_LANG['smtp_error'] = 'SMTP-serverfout: ';//SMTP server error: +$PHPMAILER_LANG['variable_set'] = 'Kan de volgende variablen niet instellen of resetten: ';//Cannot set or reset variable: diff --git a/lib/phpmailer/language/phpmailer.lang-no.php b/lib/phpmailer/language/phpmailer.lang-no.php index 65cb884399c..e6975203e3f 100644 --- a/lib/phpmailer/language/phpmailer.lang-no.php +++ b/lib/phpmailer/language/phpmailer.lang-no.php @@ -7,19 +7,18 @@ $PHPMAILER_LANG['authenticate'] = 'SMTP Feil: Kunne ikke authentisere.'; $PHPMAILER_LANG['connect_host'] = 'SMTP Feil: Kunne ikke koble til SMTP host.'; $PHPMAILER_LANG['data_not_accepted'] = 'SMTP Feil: Data ble ikke akseptert.'; -//$PHPMAILER_LANG['empty_message'] = 'Message body empty'; -$PHPMAILER_LANG['encoding'] = 'Ukjent encoding: '; +$PHPMAILER_LANG['empty_message'] = 'Meldingsinnholdet er tomt'; +$PHPMAILER_LANG['encoding'] = 'Ukjent tegnkoding: '; $PHPMAILER_LANG['execute'] = 'Kunne ikke utføre: '; -$PHPMAILER_LANG['file_access'] = 'Kunne ikke fÃ¥ tilgang til filen: '; +$PHPMAILER_LANG['file_access'] = 'FÃ¥r ikke tilgang til filen: '; $PHPMAILER_LANG['file_open'] = 'Fil feil: Kunne ikke Ã¥pne filen: '; -$PHPMAILER_LANG['from_failed'] = 'Følgende Fra feilet: '; -$PHPMAILER_LANG['instantiate'] = 'Kunne ikke instantiate mail funksjonen.'; -//$PHPMAILER_LANG['invalid_email'] = 'Not sending, email address is invalid: '; -$PHPMAILER_LANG['provide_address'] = 'Du mÃ¥ ha med minst en mottager adresse.'; +$PHPMAILER_LANG['from_failed'] = 'Følgende avsenderadresse feilet: '; +$PHPMAILER_LANG['instantiate'] = 'Kunne ikke initialisere mailfunksjonen.'; +$PHPMAILER_LANG['invalid_address'] = 'Meldingen ble ikke sendt, følgende adresse er ugyldig: '; +$PHPMAILER_LANG['provide_address'] = 'Du mÃ¥ angi minst en mottakeradresse.'; $PHPMAILER_LANG['mailer_not_supported'] = ' mailer er ikke supportert.'; $PHPMAILER_LANG['recipients_failed'] = 'SMTP Feil: Følgende mottagere feilet: '; -//$PHPMAILER_LANG['signing'] = 'Signing Error: '; -//$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; -//$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: '; -//$PHPMAILER_LANG['variable_set'] = 'Cannot set or reset variable: '; -?> \ No newline at end of file +$PHPMAILER_LANG['signing'] = 'Signeringsfeil: '; +$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() feilet.'; +$PHPMAILER_LANG['smtp_error'] = 'SMTP-serverfeil: '; +$PHPMAILER_LANG['variable_set'] = 'Kan ikke sette eller resette variabelen: '; \ No newline at end of file diff --git a/lib/phpmailer/language/phpmailer.lang-pl.php b/lib/phpmailer/language/phpmailer.lang-pl.php index f4fd801d616..5a4ad38318c 100644 --- a/lib/phpmailer/language/phpmailer.lang-pl.php +++ b/lib/phpmailer/language/phpmailer.lang-pl.php @@ -4,22 +4,21 @@ * Polish Version */ -$PHPMAILER_LANG['authenticate'] = 'Błąd SMTP: Nie można przeprowadzić autentykacji.'; -$PHPMAILER_LANG['connect_host'] = 'Błąd SMTP: Nie można połączyć siÄ™ z wybranym hostem.'; -$PHPMAILER_LANG['data_not_accepted'] = 'Błąd SMTP: Dane nie zostaÅ‚y przyjÄ™te.'; -//$PHPMAILER_LANG['empty_message'] = 'Message body empty'; -$PHPMAILER_LANG['encoding'] = 'Nieznany sposób kodowania znaków: '; -$PHPMAILER_LANG['execute'] = 'Nie można uruchomić: '; -$PHPMAILER_LANG['file_access'] = 'Brak dostÄ™pu do pliku: '; -$PHPMAILER_LANG['file_open'] = 'Nie można otworzyć pliku: '; -$PHPMAILER_LANG['from_failed'] = 'NastÄ™pujÄ…cy adres Nadawcy jest jest nieprawidÅ‚owy: '; -$PHPMAILER_LANG['instantiate'] = 'Nie można wywoÅ‚ać funkcji mail(). Sprawdź konfiguracjÄ™ serwera.'; -//$PHPMAILER_LANG['invalid_email'] = 'Not sending, email address is invalid: '; -$PHPMAILER_LANG['provide_address'] = 'Należy podać prawidÅ‚owy adres email Odbiorcy.'; +$PHPMAILER_LANG['authenticate'] = 'Błąd SMTP: Nie można przeprowadzić autentykacji.'; +$PHPMAILER_LANG['connect_host'] = 'Błąd SMTP: Nie można połączyć siÄ™ z wybranym hostem.'; +$PHPMAILER_LANG['data_not_accepted'] = 'Błąd SMTP: Dane nie zostaÅ‚y przyjÄ™te.'; +$PHPMAILER_LANG['empty_message'] = 'Wiadomość jest pusta.'; +$PHPMAILER_LANG['encoding'] = 'Nieznany sposób kodowania znaków: '; +$PHPMAILER_LANG['execute'] = 'Nie można uruchomić: '; +$PHPMAILER_LANG['file_access'] = 'Brak dostÄ™pu do pliku: '; +$PHPMAILER_LANG['file_open'] = 'Nie można otworzyć pliku: '; +$PHPMAILER_LANG['from_failed'] = 'NastÄ™pujÄ…cy adres Nadawcy jest nieprawidÅ‚owy: '; +$PHPMAILER_LANG['instantiate'] = 'Nie można wywoÅ‚ać funkcji mail(). Sprawdź konfiguracjÄ™ serwera.'; +$PHPMAILER_LANG['invalid_address'] = 'Nie można wysÅ‚ać wiadomoÅ›ci, nastÄ™pujÄ…cy adres Odbiorcy jest nieprawidÅ‚owy: '; +$PHPMAILER_LANG['provide_address'] = 'Należy podać prawidÅ‚owy adres email Odbiorcy.'; $PHPMAILER_LANG['mailer_not_supported'] = 'Wybrana metoda wysyÅ‚ki wiadomoÅ›ci nie jest obsÅ‚ugiwana.'; -$PHPMAILER_LANG['recipients_failed'] = 'Błąd SMTP: NastÄ™pujÄ…cy odbiorcy sÄ… nieprawidÅ‚owi: '; -//$PHPMAILER_LANG['signing'] = 'Signing Error: '; -//$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; -//$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: '; -//$PHPMAILER_LANG['variable_set'] = 'Cannot set or reset variable: '; -?> \ No newline at end of file +$PHPMAILER_LANG['recipients_failed'] = 'Błąd SMTP: NastÄ™pujÄ…cy odbiorcy sÄ… nieprawidÅ‚owi: '; +$PHPMAILER_LANG['signing'] = 'Błąd podpisywania wiadomoÅ›ci: '; +$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() zakoÅ„czone niepowodzeniem.'; +$PHPMAILER_LANG['smtp_error'] = 'Błąd SMTP: '; +$PHPMAILER_LANG['variable_set'] = 'Nie można zmienić zmiennej: '; diff --git a/lib/phpmailer/language/phpmailer.lang-ro.php b/lib/phpmailer/language/phpmailer.lang-ro.php index f6aa922556b..1727cef04ac 100644 --- a/lib/phpmailer/language/phpmailer.lang-ro.php +++ b/lib/phpmailer/language/phpmailer.lang-ro.php @@ -16,7 +16,7 @@ $PHPMAILER_LANG['file_access'] = 'Nu pot accesa fisierul: '; $PHPMAILER_LANG['file_open'] = 'Eroare de fisier: Nu pot deschide fisierul: '; $PHPMAILER_LANG['from_failed'] = 'Urmatoarele adrese From au dat eroare: '; $PHPMAILER_LANG['instantiate'] = 'Nu am putut instantia functia mail.'; -//$PHPMAILER_LANG['invalid_email'] = 'Not sending, email address is invalid: '; +//$PHPMAILER_LANG['invalid_address'] = 'Not sending, email address is invalid: '; $PHPMAILER_LANG['mailer_not_supported'] = ' mailer nu este suportat.'; $PHPMAILER_LANG['provide_address'] = 'Trebuie sa adaugati cel putin un recipient (adresa de mail).'; $PHPMAILER_LANG['recipients_failed'] = 'Eroare SMTP: Urmatoarele adrese de mail au dat eroare: '; @@ -24,4 +24,3 @@ $PHPMAILER_LANG['recipients_failed'] = 'Eroare SMTP: Urmatoarele adrese de ma //$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; //$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: '; //$PHPMAILER_LANG['variable_set'] = 'Cannot set or reset variable: '; -?> \ No newline at end of file diff --git a/lib/phpmailer/language/phpmailer.lang-ru.php b/lib/phpmailer/language/phpmailer.lang-ru.php index d6990525de2..9e583dae050 100644 --- a/lib/phpmailer/language/phpmailer.lang-ru.php +++ b/lib/phpmailer/language/phpmailer.lang-ru.php @@ -7,19 +7,18 @@ $PHPMAILER_LANG['authenticate'] = 'Ошибка SMTP: ошибка авторизации.'; $PHPMAILER_LANG['connect_host'] = 'Ошибка SMTP: не удаетÑÑ Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡Ð¸Ñ‚ÑŒÑÑ Ðº Ñерверу SMTP.'; $PHPMAILER_LANG['data_not_accepted'] = 'Ошибка SMTP: данные не принÑты.'; -//$PHPMAILER_LANG['empty_message'] = 'Message body empty'; $PHPMAILER_LANG['encoding'] = 'ÐеизвеÑтный вид кодировки: '; $PHPMAILER_LANG['execute'] = 'Ðевозможно выполнить команду: '; $PHPMAILER_LANG['file_access'] = 'Ðет доÑтупа к файлу: '; $PHPMAILER_LANG['file_open'] = 'Ð¤Ð°Ð¹Ð»Ð¾Ð²Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ°: не удаетÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ файл: '; $PHPMAILER_LANG['from_failed'] = 'Ðеверный Ð°Ð´Ñ€ÐµÑ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²Ð¸Ñ‚ÐµÐ»Ñ: '; $PHPMAILER_LANG['instantiate'] = 'Ðевозможно запуÑтить функцию mail.'; -//$PHPMAILER_LANG['invalid_email'] = 'Not sending, email address is invalid: '; $PHPMAILER_LANG['provide_address'] = 'ПожалуйÑта, введите Ñ…Ð¾Ñ‚Ñ Ð±Ñ‹ один Ð°Ð´Ñ€ÐµÑ e-mail получателÑ.'; $PHPMAILER_LANG['mailer_not_supported'] = ' - почтовый Ñервер не поддерживаетÑÑ.'; $PHPMAILER_LANG['recipients_failed'] = 'Ошибка SMTP: отправка по Ñледующим адреÑам получателей не удалаÑÑŒ: '; -//$PHPMAILER_LANG['signing'] = 'Signing Error: '; -//$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; -//$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: '; -//$PHPMAILER_LANG['variable_set'] = 'Cannot set or reset variable: '; -?> \ No newline at end of file +$PHPMAILER_LANG['empty_message'] = 'ПуÑтое тело ÑообщениÑ'; +$PHPMAILER_LANG['invalid_address'] = 'Ðе отоÑлано, неправильный формат email адреÑа: '; +$PHPMAILER_LANG['signing'] = 'Ошибка подпиÑываниÑ: '; +$PHPMAILER_LANG['smtp_connect_failed'] = 'Ошибка ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ñ SMTP-Ñервером'; +$PHPMAILER_LANG['smtp_error'] = 'Ошибка SMTP-Ñервера: '; +$PHPMAILER_LANG['variable_set'] = 'Ðевозможно уÑтановить или переуÑтановить переменную: '; diff --git a/lib/phpmailer/language/phpmailer.lang-se.php b/lib/phpmailer/language/phpmailer.lang-se.php index 67e05f59c69..65d197995c5 100644 --- a/lib/phpmailer/language/phpmailer.lang-se.php +++ b/lib/phpmailer/language/phpmailer.lang-se.php @@ -15,7 +15,7 @@ $PHPMAILER_LANG['file_access'] = 'Ingen Ã¥tkomst till fil: '; $PHPMAILER_LANG['file_open'] = 'Fil fel: Kunde inte öppna fil: '; $PHPMAILER_LANG['from_failed'] = 'Följande avsändaradress är felaktig: '; $PHPMAILER_LANG['instantiate'] = 'Kunde inte initiera e-postfunktion.'; -//$PHPMAILER_LANG['invalid_email'] = 'Not sending, email address is invalid: '; +//$PHPMAILER_LANG['invalid_address'] = 'Not sending, email address is invalid: '; $PHPMAILER_LANG['provide_address'] = 'Du mÃ¥ste ange minst en mottagares e-postadress.'; $PHPMAILER_LANG['mailer_not_supported'] = ' mailer stöds inte.'; $PHPMAILER_LANG['recipients_failed'] = 'SMTP fel: Följande mottagare är felaktig: '; @@ -23,4 +23,3 @@ $PHPMAILER_LANG['recipients_failed'] = 'SMTP fel: Följande mottagare är fel //$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; //$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: '; //$PHPMAILER_LANG['variable_set'] = 'Cannot set or reset variable: '; -?> \ No newline at end of file diff --git a/lib/phpmailer/language/phpmailer.lang-sk.php b/lib/phpmailer/language/phpmailer.lang-sk.php new file mode 100644 index 00000000000..1722a5f526c --- /dev/null +++ b/lib/phpmailer/language/phpmailer.lang-sk.php @@ -0,0 +1,25 @@ + +*/ + +$PHPMAILER_LANG['authenticate'] = 'SMTP Error: Chyba autentifikácie.'; +$PHPMAILER_LANG['connect_host'] = 'SMTP Error: Nebolo možné nadviazaÅ¥ spojenie so SMTP serverom.'; +$PHPMAILER_LANG['data_not_accepted'] = 'SMTP Error: Dáta neboli prijaté'; +$PHPMAILER_LANG['empty_message'] = 'Prázdne telo správy.'; +$PHPMAILER_LANG['encoding'] = 'Neznáme kódovanie: '; +$PHPMAILER_LANG['execute'] = 'Nedá sa vykonaÅ¥: '; +$PHPMAILER_LANG['file_access'] = 'Súbor nebol nájdený: '; +$PHPMAILER_LANG['file_open'] = 'File Error: Súbor sa otvoriÅ¥ pre Äítanie: '; +$PHPMAILER_LANG['from_failed'] = 'Následujúca adresa From je nesprávna: '; +$PHPMAILER_LANG['instantiate'] = 'Nedá sa vytvoriÅ¥ inÅ¡tancia emailovej funkcie.'; +$PHPMAILER_LANG['invalid_address'] = 'Neodoslané, emailová adresa je nesprávna: '; +$PHPMAILER_LANG['mailer_not_supported'] = ' emailový klient nieje podporovaný.'; +$PHPMAILER_LANG['provide_address'] = 'Musíte zadaÅ¥ aspoň jednu emailovú adresu príjemcu.'; +$PHPMAILER_LANG['recipients_failed'] = 'SMTP Error: Adresy príjemcov niesu správne '; +$PHPMAILER_LANG['signing'] = 'Chyba prihlasovania: '; +$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() zlyhalo.'; +$PHPMAILER_LANG['smtp_error'] = 'SMTP chyba serveru: '; +$PHPMAILER_LANG['variable_set'] = 'Nemožno nastaviÅ¥ alebo resetovaÅ¥ premennú: '; diff --git a/lib/phpmailer/language/phpmailer.lang-tr.php b/lib/phpmailer/language/phpmailer.lang-tr.php index d24627a49af..abba0818d49 100644 --- a/lib/phpmailer/language/phpmailer.lang-tr.php +++ b/lib/phpmailer/language/phpmailer.lang-tr.php @@ -6,22 +6,21 @@ * ÃZYAZILIM - Elçin Özel - Can Yýlmaz - Mehmet Benlioðlu */ -$PHPMAILER_LANG['authenticate'] = 'SMTP Hatasý: Doðrulanamýyor.'; -$PHPMAILER_LANG['connect_host'] = 'SMTP Hatasý: SMTP hosta baðlanýlamýyor.'; -$PHPMAILER_LANG['data_not_accepted'] = 'SMTP Hatasý: Veri kabul edilmedi.'; -//$PHPMAILER_LANG['empty_message'] = 'Message body empty'; -$PHPMAILER_LANG['encoding'] = 'Bilinmeyen þifreleme: '; -$PHPMAILER_LANG['execute'] = 'Çalýþtýrýlamýyor: '; -$PHPMAILER_LANG['file_access'] = 'Dosyaya eriþilemiyor: '; -$PHPMAILER_LANG['file_open'] = 'Dosya Hatasý: Dosya açýlamýyor: '; -$PHPMAILER_LANG['from_failed'] = 'Baþarýsýz olan gönderici adresi: '; -$PHPMAILER_LANG['instantiate'] = 'Örnek mail fonksiyonu yaratýlamadý.'; -//$PHPMAILER_LANG['invalid_email'] = 'Not sending, email address is invalid: '; -$PHPMAILER_LANG['provide_address'] = 'En az bir tane mail adresi belirtmek zorundasýnýz alýcýnýn email adresi.'; +$PHPMAILER_LANG['authenticate'] = 'SMTP Hatası: DoÄŸrulanamıyor.'; +$PHPMAILER_LANG['connect_host'] = 'SMTP Hatası: SMTP hosta baÄŸlanılamıyor.'; +$PHPMAILER_LANG['data_not_accepted'] = 'SMTP Hatası: Veri kabul edilmedi.'; +$PHPMAILER_LANG['empty_message'] = 'Mesaj içeriÄŸi boÅŸ'; +$PHPMAILER_LANG['encoding'] = 'Bilinmeyen ÅŸifreleme: '; +$PHPMAILER_LANG['execute'] = 'Çalıtırılamıyor: '; +$PHPMAILER_LANG['file_access'] = 'Dosyaya eriÅŸilemiyor: '; +$PHPMAILER_LANG['file_open'] = 'Dosya Hatası: Dosya açılamıyor: '; +$PHPMAILER_LANG['from_failed'] = 'BaÅŸarısız olan gönderici adresi: '; +$PHPMAILER_LANG['instantiate'] = 'Örnek mail fonksiyonu oluÅŸturulamadı.'; +$PHPMAILER_LANG['invalid_address'] = 'Gönderilmedi, email adresi geçersiz: '; +$PHPMAILER_LANG['provide_address'] = 'En az bir tane mail adresi belirtmek zorundasınız alıcının email adresi.'; $PHPMAILER_LANG['mailer_not_supported'] = ' mailler desteklenmemektedir.'; -$PHPMAILER_LANG['recipients_failed'] = 'SMTP Hatasý: alýcýlara ulaþmadý: '; -//$PHPMAILER_LANG['signing'] = 'Signing Error: '; -//$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; -//$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: '; -//$PHPMAILER_LANG['variable_set'] = 'Cannot set or reset variable: '; -?> \ No newline at end of file +$PHPMAILER_LANG['recipients_failed'] = 'SMTP Hatası: alıcılara ulaımadı: '; +$PHPMAILER_LANG['signing'] = 'İmzalama hatası: '; +$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP baÄŸlantı() baÅŸarısız.'; +$PHPMAILER_LANG['smtp_error'] = 'SMTP sunucu hatası: '; +$PHPMAILER_LANG['variable_set'] = 'Ayarlanamıyor yada sıfırlanamıyor: '; diff --git a/lib/phpmailer/language/phpmailer.lang-uk.php b/lib/phpmailer/language/phpmailer.lang-uk.php new file mode 100644 index 00000000000..112bba8468c --- /dev/null +++ b/lib/phpmailer/language/phpmailer.lang-uk.php @@ -0,0 +1,24 @@ + +*/ + +$PHPMAILER_LANG['authenticate'] = 'Помилка SMTP: помилка авторизації.'; +$PHPMAILER_LANG['connect_host'] = 'Помилка SMTP: не вдаєтьÑÑ Ð¿Ñ–Ð´Ñ”Ð´Ð½Ð°Ñ‚Ð¸ÑÑ Ð´Ð¾ Ñерверу SMTP.'; +$PHPMAILER_LANG['data_not_accepted'] = 'Помилка SMTP: дані не прийнÑті.'; +$PHPMAILER_LANG['encoding'] = 'Ðевідомий тип кодуваннÑ: '; +$PHPMAILER_LANG['execute'] = 'Ðеможливо виконати команду: '; +$PHPMAILER_LANG['file_access'] = 'Ðемає доÑтупу до файлу: '; +$PHPMAILER_LANG['file_open'] = 'Помилка файлової ÑиÑтеми: не вдаєтьÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ файл: '; +$PHPMAILER_LANG['from_failed'] = 'Ðевірна адреÑа відправника: '; +$PHPMAILER_LANG['instantiate'] = 'Ðеможливо запуÑтити функцію mail.'; +$PHPMAILER_LANG['provide_address'] = 'Будь-лаÑка, введіть хоча б одну адреÑу e-mail отримувача.'; +$PHPMAILER_LANG['mailer_not_supported'] = ' - поштовий Ñервер не підтримуєтьÑÑ.'; +$PHPMAILER_LANG['recipients_failed'] = 'Помилка SMTP: відправти наÑтупним отрмувачам не вдалаÑÑ: '; +$PHPMAILER_LANG['empty_message'] = 'ПуÑте тіло повідомленнÑ'; +$PHPMAILER_LANG['invalid_address'] = 'Ðе відправлено, невірний формат email адреÑи: '; +$PHPMAILER_LANG['signing'] = 'Помилка підпиÑу: '; +$PHPMAILER_LANG['smtp_connect_failed'] = 'Помилка Ð·Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ñ–Ð· SMTP-Ñервером'; +$PHPMAILER_LANG['smtp_error'] = 'Помилка SMTP-Ñервера: '; +$PHPMAILER_LANG['variable_set'] = 'Ðеможливо вÑтановити або перевÑтановити змінну: '; diff --git a/lib/phpmailer/language/phpmailer.lang-zh.php b/lib/phpmailer/language/phpmailer.lang-zh.php index fef66f8cb15..b0e8f4e0913 100644 --- a/lib/phpmailer/language/phpmailer.lang-zh.php +++ b/lib/phpmailer/language/phpmailer.lang-zh.php @@ -15,7 +15,7 @@ $PHPMAILER_LANG['file_open'] = '文件錯誤:無法打開文件:'; $PHPMAILER_LANG['from_failed'] = '發é€åœ°å€éŒ¯èª¤ï¼š'; $PHPMAILER_LANG['execute'] = '無法執行:'; $PHPMAILER_LANG['instantiate'] = '未知函數調用。'; -//$PHPMAILER_LANG['invalid_email'] = 'Not sending, email address is invalid: '; +//$PHPMAILER_LANG['invalid_address'] = 'Not sending, email address is invalid: '; $PHPMAILER_LANG['provide_address'] = 'å¿…é ˆæä¾›è‡³å°‘一個收件人地å€ã€‚'; $PHPMAILER_LANG['mailer_not_supported'] = '發信客戶端ä¸è¢«æ”¯æŒã€‚'; $PHPMAILER_LANG['recipients_failed'] = 'SMTP 錯誤:收件人地å€éŒ¯èª¤ï¼š'; @@ -23,4 +23,3 @@ $PHPMAILER_LANG['recipients_failed'] = 'SMTP 錯誤:收件人地å€éŒ¯èª¤ï¼š'; //$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; //$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: '; //$PHPMAILER_LANG['variable_set'] = 'Cannot set or reset variable: '; -?> \ No newline at end of file diff --git a/lib/phpmailer/language/phpmailer.lang-zh_cn.php b/lib/phpmailer/language/phpmailer.lang-zh_cn.php index b1884043597..78eb9acf365 100644 --- a/lib/phpmailer/language/phpmailer.lang-zh_cn.php +++ b/lib/phpmailer/language/phpmailer.lang-zh_cn.php @@ -15,7 +15,7 @@ $PHPMAILER_LANG['file_access'] = '无法访问文件:'; $PHPMAILER_LANG['file_open'] = '文件错误:无法打开文件:'; $PHPMAILER_LANG['from_failed'] = 'å‘é€åœ°å€é”™è¯¯ï¼š'; $PHPMAILER_LANG['instantiate'] = '未知函数调用。'; -//$PHPMAILER_LANG['invalid_email'] = 'Not sending, email address is invalid: '; +//$PHPMAILER_LANG['invalid_address'] = 'Not sending, email address is invalid: '; $PHPMAILER_LANG['mailer_not_supported'] = 'å‘信客户端ä¸è¢«æ”¯æŒã€‚'; $PHPMAILER_LANG['provide_address'] = 'å¿…é¡»æä¾›è‡³å°‘一个收件人地å€ã€‚'; $PHPMAILER_LANG['recipients_failed'] = 'SMTP 错误:收件人地å€é”™è¯¯ï¼š'; @@ -23,4 +23,3 @@ $PHPMAILER_LANG['recipients_failed'] = 'SMTP 错误:收件人地å€é”™è¯¯ï¼š'; //$PHPMAILER_LANG['smtp_connect_failed'] = 'SMTP Connect() failed.'; //$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: '; //$PHPMAILER_LANG['variable_set'] = 'Cannot set or reset variable: '; -?> \ No newline at end of file diff --git a/lib/phpmailer/moodle_phpmailer.php b/lib/phpmailer/moodle_phpmailer.php index 01cdadc018d..9bff57ca731 100644 --- a/lib/phpmailer/moodle_phpmailer.php +++ b/lib/phpmailer/moodle_phpmailer.php @@ -17,8 +17,7 @@ /** * Customised version of phpmailer for Moodle * - * @package moodle - * @subpackage lib + * @package core * @author Dan Poltawski * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ @@ -28,7 +27,9 @@ defined('MOODLE_INTERNAL') || die(); // PLEASE NOTE: we use the phpmailer class _unmodified_ // through the joys of OO. Distros are free to use their stock // version of this file. +// NOTE: do not rely on phpmailer autoloader for performance reasons. require_once($CFG->libdir.'/phpmailer/class.phpmailer.php'); +require_once($CFG->libdir.'/phpmailer/class.smtp.php'); /** * Moodle Customised version of the PHPMailer class @@ -50,7 +51,6 @@ class moodle_phpmailer extends PHPMailer { public function __construct(){ global $CFG; $this->Version = 'Moodle '.$CFG->version; // mailer version - $this->PluginDir = $CFG->libdir.'/phpmailer/'; // plugin directory (eg smtp plugin) $this->CharSet = 'UTF-8'; } @@ -59,12 +59,15 @@ class moodle_phpmailer extends PHPMailer { * message-ids * http://tracker.moodle.org/browse/MDL-3681 */ - public function AddCustomHeader($custom_header) { - if(preg_match('/message-id:(.*)/i', $custom_header, $matches)){ + public function addCustomHeader($custom_header, $value = null) { + if ($value === null and preg_match('/message-id:(.*)/i', $custom_header, $matches)) { $this->MessageID = $matches[1]; return true; - }else{ - return parent::AddCustomHeader($custom_header); + } else if ($value !== null and strcasecmp($custom_header, 'message-id') === 0) { + $this->MessageID = $value; + return true; + } else { + return parent::addCustomHeader($custom_header, $value); } } @@ -72,24 +75,24 @@ class moodle_phpmailer extends PHPMailer { * Use internal moodles own core_text to encode mimeheaders. * Fall back to phpmailers inbuilt functions if not */ - public function EncodeHeader($str, $position = 'text') { + public function encodeHeader($str, $position = 'text') { $encoded = core_text::encode_mimeheader($str, $this->CharSet); if ($encoded !== false) { $encoded = str_replace("\n", $this->LE, $encoded); - if ($position == 'phrase') { + if ($position === 'phrase') { return ("\"$encoded\""); } return $encoded; } - return parent::EncodeHeader($str, $position); + return parent::encodeHeader($str, $position); } /** * Replaced function to fix tz bug: * http://tracker.moodle.org/browse/MDL-12596 */ - public static function RFCDate() { + public static function rfcDate() { $tz = date('Z'); $tzs = ($tz < 0) ? '-' : '+'; $tz = abs($tz); @@ -105,13 +108,13 @@ class moodle_phpmailer extends PHPMailer { * * @see parent::EncodeQP() for full documentation */ - public function EncodeQP($string, $line_max = 76, $space_conv = false) { + public function encodeQP($string, $line_max = 76) { //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 + return parent::encodeQP($string, $line_max); //Fall back to old implementation } $fp = fopen('php://temp/', 'r+'); $string = preg_replace('/\r\n?/', $this->LE, $string); //Normalise line breaks @@ -133,7 +136,7 @@ class moodle_phpmailer extends PHPMailer { * * @return bool */ - protected function PostSend() { + public function postSend() { // Now ask phpunit if it wants to catch this message. if (PHPUNIT_TEST && phpunit_util::is_redirecting_messages()) { $mail = new stdClass(); @@ -144,7 +147,7 @@ class moodle_phpmailer extends PHPMailer { phpunit_util::phpmailer_sent($mail); return true; } else { - return parent::PostSend(); + return parent::postSend(); } } } diff --git a/lib/thirdpartylibs.xml b/lib/thirdpartylibs.xml index 6ec4089fb9f..17ee5e6da43 100644 --- a/lib/thirdpartylibs.xml +++ b/lib/thirdpartylibs.xml @@ -172,7 +172,7 @@ phpmailer PHPMailer LGPL - 5.2.1 + 5.2.7 2.1 From d79d5ac2760b7c5508aca8a7b319543ce08e1b17 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Sun, 8 Sep 2013 08:38:52 +0200 Subject: [PATCH 041/101] MDL-31501 rework user session architecture List of changes: * New OOP API using PHP namespace \core\session\. * All handlers now update the sessions table consistently. * Experimental DB session support in Oracle. * Full support for session file handler (filesystem locking required). * New option for alternative session directory. * Official memcached session handler support. * Workaround for memcached version with non-functional gc. * Improved security - forced session id regeneration. * Improved compatibility with recent PHP releases. * Fixed borked CSS during install in debug mode. * Switched to file based sessions in new installs. * DB session setting disappears if DB does not support sessions. * DB session setting disappears if session handler specified in config.php. * Fast purging of sessions used in request only. * No legacy distinction - file, database and memcached support the same functionality. * Session handler name included in performance info. * Fixed user_loggedin and user_loggedout event triggering. * Other minor bugfixing and improvements. * Fixed database session segfault if MUC disposed before $DB. Limitations: * Session access time is now updated right after session start. * Support for $CFG->sessionlockloggedinonly was removed. * First request does not update userid in sessions table. * The timeouts may break badly if server hosting forces PHP.ini session settings. * The session GC is a lot slower, we do not rely on external session timeouts. * There cannot be any hooks triggered at the session write time. * File and memcached handlers do not support session lock acquire timeouts. * Some low level PHP session functions can not be used directly in Moodle code. --- admin/auth.php | 4 +- admin/cli/upgrade.php | 2 +- admin/cron.php | 2 +- admin/index.php | 2 +- admin/settings/server.php | 4 +- admin/tool/assignmentupgrade/batchupgrade.php | 2 +- admin/tool/dbtransfer/locallib.php | 4 +- admin/tool/generator/cli/maketestcourse.php | 2 +- admin/tool/generator/cli/maketestsite.php | 2 +- admin/tool/uploaduser/index.php | 2 +- admin/user.php | 6 +- admin/user/user_bulk_delete.php | 2 +- auth/ldap/auth.php | 2 +- auth/mnet/auth.php | 10 +- auth/shibboleth/index.php | 2 +- badges/ajax.php | 2 +- blocks/html/lib.php | 2 +- blocks/mnet_hosts/block_mnet_hosts.php | 2 +- calendar/tests/calendartype_test.php | 2 +- config-dist.php | 20 +- course/loginas.php | 4 +- draftfile.php | 2 +- enrol/index.php | 2 +- file.php | 2 +- lang/en/error.php | 1 + lib/authlib.php | 4 +- lib/classes/event/user_loggedin.php | 2 +- lib/classes/event/user_loggedout.php | 1 + lib/classes/session/database.php | 315 +++++ lib/classes/session/exception.php | 34 + lib/classes/session/file.php | 120 ++ lib/classes/session/handler.php | 63 + lib/classes/session/manager.php | 754 ++++++++++++ lib/classes/session/memcached.php | 187 +++ lib/cronlib.php | 7 +- lib/datalib.php | 4 +- lib/deprecatedlib.php | 134 +++ lib/dml/moodle_database.php | 35 +- lib/dml/mssql_native_moodle_database.php | 7 +- lib/dml/mysqli_native_moodle_database.php | 7 +- lib/dml/oci_native_moodle_database.php | 11 +- lib/dml/pgsql_native_moodle_database.php | 7 +- lib/dml/sqlite3_pdo_moodle_database.php | 7 +- lib/dml/sqlsrv_native_moodle_database.php | 7 +- lib/filelib.php | 52 +- lib/installlib.php | 2 +- lib/moodlelib.php | 96 +- lib/navigationlib.php | 8 +- lib/outputrenderers.php | 6 +- lib/phpunit/classes/advanced_testcase.php | 2 +- lib/phpunit/classes/util.php | 2 +- lib/phpunit/tests/advanced_test.php | 2 +- lib/sessionlib.php | 1056 +---------------- lib/setup.php | 15 +- lib/setuplib.php | 2 +- lib/tests/authlib_test.php | 20 - lib/tests/behat/behat_hooks.php | 2 +- lib/tests/moodlelib_test.php | 25 +- lib/tests/session_manager_test.php | 374 ++++++ lib/tests/sessionlib_test.php | 88 -- lib/upgrade.txt | 12 + lib/weblib.php | 9 +- login/change_password.php | 2 +- login/token.php | 5 +- .../type/online/assignment.class.php | 2 +- mod/chat/chat_ajax.php | 2 +- mod/chat/gui_header_js/insert.php | 2 +- mod/quiz/report/overview/report.php | 2 +- report/log/index.php | 2 +- report/loglive/index.php | 2 +- repository/lib.php | 2 +- repository/tests/repositorylib_test.php | 2 +- rss/file.php | 2 +- theme/mymobile/renderers.php | 10 +- user/editadvanced.php | 4 +- user/index.php | 2 +- webservice/lib.php | 10 +- 77 files changed, 2267 insertions(+), 1350 deletions(-) create mode 100644 lib/classes/session/database.php create mode 100644 lib/classes/session/exception.php create mode 100644 lib/classes/session/file.php create mode 100644 lib/classes/session/handler.php create mode 100644 lib/classes/session/manager.php create mode 100644 lib/classes/session/memcached.php create mode 100644 lib/tests/session_manager_test.php delete mode 100644 lib/tests/sessionlib_test.php diff --git a/admin/auth.php b/admin/auth.php index 934acd371ef..300dead1a54 100644 --- a/admin/auth.php +++ b/admin/auth.php @@ -51,7 +51,7 @@ switch ($action) { if ($auth == $CFG->registerauth) { set_config('registerauth', ''); } - session_gc(); // remove stale sessions + \core\session\manager::gc(); // Remove stale sessions. break; case 'enable': @@ -61,7 +61,7 @@ switch ($action) { $authsenabled = array_unique($authsenabled); set_config('auth', implode(',', $authsenabled)); } - session_gc(); // remove stale sessions + \core\session\manager::gc(); // Remove stale sessions. break; case 'down': diff --git a/admin/cli/upgrade.php b/admin/cli/upgrade.php index 98e87264b0b..28d7c8d2342 100644 --- a/admin/cli/upgrade.php +++ b/admin/cli/upgrade.php @@ -172,7 +172,7 @@ set_config('branch', $branch); upgrade_noncore(true); // log in as admin - we need doanything permission when applying defaults -session_set_user(get_admin()); +\core\session\manager::set_user(get_admin()); // apply all default settings, just in case do it twice to fill all defaults admin_apply_default_settings(NULL, false); diff --git a/admin/cron.php b/admin/cron.php index e4115458c76..ed19d46360e 100644 --- a/admin/cron.php +++ b/admin/cron.php @@ -53,7 +53,7 @@ require_once($CFG->libdir.'/clilib.php'); require_once($CFG->libdir.'/cronlib.php'); // extra safety -session_get_instance()->write_close(); +\core\session\manager::write_close(); // check if execution allowed if (!empty($CFG->cronclionly)) { diff --git a/admin/index.php b/admin/index.php index 1f186b6417a..3c0cb6c1a95 100644 --- a/admin/index.php +++ b/admin/index.php @@ -163,7 +163,7 @@ if (!core_tables_exist()) { $strinstallation = get_string('installation', 'install'); // remove current session content completely - session_get_instance()->terminate_current(); + \core\session\manager::terminate_current(); if (empty($agreelicense)) { $strlicense = get_string('license'); diff --git a/admin/settings/server.php b/admin/settings/server.php index 3a58d34479e..ea2491a14bc 100644 --- a/admin/settings/server.php +++ b/admin/settings/server.php @@ -35,7 +35,9 @@ $ADMIN->add('server', $temp); // "sessionhandling" settingpage $temp = new admin_settingpage('sessionhandling', new lang_string('sessionhandling', 'admin')); -$temp->add(new admin_setting_configcheckbox('dbsessions', new lang_string('dbsessions', 'admin'), new lang_string('configdbsessions', 'admin'), 1)); +if (empty($CFG->session_handler_class) and $DB->session_lock_supported()) { + $temp->add(new admin_setting_configcheckbox('dbsessions', new lang_string('dbsessions', 'admin'), new lang_string('configdbsessions', 'admin'), 0)); +} $temp->add(new admin_setting_configselect('sessiontimeout', new lang_string('sessiontimeout', 'admin'), new lang_string('configsessiontimeout', 'admin'), 7200, array(14400 => new lang_string('numhours', '', 4), 10800 => new lang_string('numhours', '', 3), 7200 => new lang_string('numhours', '', 2), diff --git a/admin/tool/assignmentupgrade/batchupgrade.php b/admin/tool/assignmentupgrade/batchupgrade.php index bab7a943cbb..0d92dc0cb56 100644 --- a/admin/tool/assignmentupgrade/batchupgrade.php +++ b/admin/tool/assignmentupgrade/batchupgrade.php @@ -47,7 +47,7 @@ if (!$confirm) { } raise_memory_limit(MEMORY_EXTRA); // Release session. -session_get_instance()->write_close(); +\core\session\manager::write_close(); echo $renderer->header(); echo $renderer->heading(get_string('batchupgrade', 'tool_assignmentupgrade')); diff --git a/admin/tool/dbtransfer/locallib.php b/admin/tool/dbtransfer/locallib.php index 190d86fc84a..3357365165d 100644 --- a/admin/tool/dbtransfer/locallib.php +++ b/admin/tool/dbtransfer/locallib.php @@ -52,7 +52,7 @@ require_once($CFG->libdir.'/dtllib.php'); function tool_dbtransfer_export_xml_database($description, $mdb) { @set_time_limit(0); - session_get_instance()->write_close(); // Release session. + \core\session\manager::write_close(); // Release session. header('Content-Type: application/xhtml+xml; charset=utf-8'); header('Content-Disposition: attachment; filename=database.xml'); @@ -79,7 +79,7 @@ function tool_dbtransfer_export_xml_database($description, $mdb) { function tool_dbtransfer_transfer_database(moodle_database $sourcedb, moodle_database $targetdb, progress_trace $feedback = null) { @set_time_limit(0); - session_get_instance()->write_close(); // Release session. + \core\session\manager::write_close(); // Release session. $var = new database_mover($sourcedb, $targetdb, true, $feedback); $var->export_database(null); diff --git a/admin/tool/generator/cli/maketestcourse.php b/admin/tool/generator/cli/maketestcourse.php index 407a58f12db..940e753b92f 100644 --- a/admin/tool/generator/cli/maketestcourse.php +++ b/admin/tool/generator/cli/maketestcourse.php @@ -90,7 +90,7 @@ if ($error = tool_generator_course_backend::check_shortname_available($shortname } // Switch to admin user account. -session_set_user(get_admin()); +\core\session\manager::set_user(get_admin()); // Do backend code to generate course. $backend = new tool_generator_course_backend($shortname, $size, $fixeddataset, empty($options['quiet'])); diff --git a/admin/tool/generator/cli/maketestsite.php b/admin/tool/generator/cli/maketestsite.php index bc91d7d8a9f..1e2a7d40141 100644 --- a/admin/tool/generator/cli/maketestsite.php +++ b/admin/tool/generator/cli/maketestsite.php @@ -88,7 +88,7 @@ try { } // Switch to admin user account. -session_set_user(get_admin()); +\core\session\manager::set_user(get_admin()); // Do backend code to generate site. $backend = new tool_generator_site_backend($size, $options['bypasscheck'], $fixeddataset, empty($options['quiet'])); diff --git a/admin/tool/uploaduser/index.php b/admin/tool/uploaduser/index.php index 7949d94eada..509374cf6a3 100644 --- a/admin/tool/uploaduser/index.php +++ b/admin/tool/uploaduser/index.php @@ -687,7 +687,7 @@ if ($formdata = $mform2->is_cancelled()) { } if ($dologout) { - session_kill_user($existinguser->id); + \core\session\manager::kill_user_sessions($existinguser->id); } } else { diff --git a/admin/user.php b/admin/user.php index 699babbeea8..45ddc21a33b 100644 --- a/admin/user.php +++ b/admin/user.php @@ -82,10 +82,10 @@ die; } else if (data_submitted() and !$user->deleted) { if (delete_user($user)) { - session_gc(); // remove stale sessions + \core\session\manager::gc(); // Remove stale sessions. redirect($returnurl); } else { - session_gc(); // remove stale sessions + \core\session\manager::gc(); // Remove stale sessions. echo $OUTPUT->header(); echo $OUTPUT->notification($returnurl, get_string('deletednot', '', fullname($user, true))); } @@ -125,7 +125,7 @@ if (!is_siteadmin($user) and $USER->id != $user->id and $user->suspended != 1) { $user->suspended = 1; // Force logout. - session_kill_user($user->id); + \core\session\manager::kill_user_sessions($user->id); user_update_user($user, false); } } diff --git a/admin/user/user_bulk_delete.php b/admin/user/user_bulk_delete.php index 4dbb75df057..474903a7055 100644 --- a/admin/user/user_bulk_delete.php +++ b/admin/user/user_bulk_delete.php @@ -34,7 +34,7 @@ if ($confirm and confirm_sesskey()) { } } $rs->close(); - session_gc(); // remove stale sessions + \core\session\manager::gc(); // Remove stale sessions. echo $OUTPUT->box_start('generalbox', 'notice'); if (!empty($notifications)) { echo $notifications; diff --git a/auth/ldap/auth.php b/auth/ldap/auth.php index a435caaa1b1..0f80f7d30bb 100644 --- a/auth/ldap/auth.php +++ b/auth/ldap/auth.php @@ -808,7 +808,7 @@ class auth_plugin_ldap extends auth_plugin_base { $updateuser->suspended = 1; user_update_user($updateuser, false); echo "\t"; print_string('auth_dbsuspenduser', 'auth_db', array('name'=>$user->username, 'id'=>$user->id)); echo "\n"; - session_kill_user($user->id); + \core\session\manager::kill_user_sessions($user->id); } } else { print_string('nouserentriestoremove', 'auth_ldap'); diff --git a/auth/mnet/auth.php b/auth/mnet/auth.php index e21d77a687c..e9950215705 100644 --- a/auth/mnet/auth.php +++ b/auth/mnet/auth.php @@ -141,7 +141,7 @@ class auth_plugin_mnet extends auth_plugin_base { global $CFG, $USER, $DB; require_once $CFG->dirroot . '/mnet/xmlrpc/client.php'; - if (session_is_loggedinas()) { + if (\core\session\manager::is_loggedinas()) { print_error('notpermittedtojumpas', 'mnet'); } @@ -919,7 +919,7 @@ class auth_plugin_mnet extends auth_plugin_base { $returnString .= "We failed to refresh the session for the following usernames: \n".implode("\n", $subArray)."\n\n"; } else { foreach($results as $emigrant) { - session_touch($emigrant->session_id); + \core\session\manager::touch_session($emigrant->session_id); } } } @@ -1076,7 +1076,7 @@ class auth_plugin_mnet extends auth_plugin_base { array('useragent'=>$useragent, 'userid'=>$userid)); if (isset($remoteclient) && isset($remoteclient->id)) { - session_kill_user($userid); + \core\session\manager::kill_user_sessions($userid); } return $returnstring; } @@ -1096,7 +1096,7 @@ class auth_plugin_mnet extends auth_plugin_base { $session = $DB->get_record('mnet_session', array('username'=>$username, 'mnethostid'=>$remoteclient->id, 'useragent'=>$useragent)); $DB->delete_records('mnet_session', array('username'=>$username, 'mnethostid'=>$remoteclient->id, 'useragent'=>$useragent)); if (false != $session) { - session_kill($session->session_id); + \core\session\manager::kill_session($session->session_id); return true; } return false; @@ -1113,7 +1113,7 @@ class auth_plugin_mnet extends auth_plugin_base { global $CFG; if (is_array($sessionArray)) { while($session = array_pop($sessionArray)) { - session_kill($session->session_id); + \core\session\manager::kill_session($session->session_id); } return true; } diff --git a/auth/shibboleth/index.php b/auth/shibboleth/index.php index 61f6ba877f8..3eaf702d651 100644 --- a/auth/shibboleth/index.php +++ b/auth/shibboleth/index.php @@ -48,7 +48,7 @@ && $user = authenticate_user_login($frm->username, $frm->password)) { enrol_check_plugins($user); - session_set_user($user); + \core\session\manager::set_user($user); $USER->loggedin = true; $USER->site = $CFG->wwwroot; // for added security, store the site in the diff --git a/badges/ajax.php b/badges/ajax.php index 76e8c26581b..29c1f1d6b18 100644 --- a/badges/ajax.php +++ b/badges/ajax.php @@ -34,7 +34,7 @@ $PAGE->set_url('/badges/ajax.php'); $PAGE->set_context(context_system::instance()); // Unlock session during potentially long curl request. -session_get_instance()->write_close(); +\core\session\manager::write_close(); $result = badges_check_backpack_accessibility(); diff --git a/blocks/html/lib.php b/blocks/html/lib.php index 58de649618a..98906612d45 100644 --- a/blocks/html/lib.php +++ b/blocks/html/lib.php @@ -81,7 +81,7 @@ function block_html_pluginfile($course, $birecord_or_cm, $context, $filearea, $a $forcedownload = true; } - session_get_instance()->write_close(); + \core\session\manager::write_close(); send_stored_file($file, 60*60, 0, $forcedownload, $options); } diff --git a/blocks/mnet_hosts/block_mnet_hosts.php b/blocks/mnet_hosts/block_mnet_hosts.php index 2021fefe151..e776a4565d8 100644 --- a/blocks/mnet_hosts/block_mnet_hosts.php +++ b/blocks/mnet_hosts/block_mnet_hosts.php @@ -25,7 +25,7 @@ class block_mnet_hosts extends block_list { return false; } - if (session_is_loggedinas()) { + if (\core\session\manager::is_loggedinas()) { $this->content = new stdClass(); $this->content->footer = html_writer::tag('span', get_string('notpermittedtojumpas', 'mnet')); diff --git a/calendar/tests/calendartype_test.php b/calendar/tests/calendartype_test.php index 10e72ea254f..9f117992c76 100644 --- a/calendar/tests/calendartype_test.php +++ b/calendar/tests/calendartype_test.php @@ -277,6 +277,6 @@ class core_calendar_type_testcase extends advanced_testcase { */ private function set_calendar_type($type) { $this->user->calendartype = $type; - session_set_user($this->user); + \core\session\manager::set_user($this->user); } } diff --git a/config-dist.php b/config-dist.php index 186516637ae..59830d9862b 100644 --- a/config-dist.php +++ b/config-dist.php @@ -224,10 +224,22 @@ $CFG->admin = 'admin'; // RewriteRule (^.*/theme/yui_combo\.php)(/.*) $1?file=$2 // // -// By default all user sessions should be using locking, uncomment -// the following setting to prevent locking for guests and not-logged-in -// accounts. This may improve performance significantly. -// $CFG->sessionlockloggedinonly = 1; +// Following settings may be used to select session driver, uncomment only one of the handlers. +// Database session handler (not compatible with MyISAM): +// $CFG->session_handler_class = '\core\session\database'; +// $CFG->session_database_acquire_lock_timeout = 120; +// +// File session handler (file system locking required): +// $CFG->session_handler_class = '\core\session\file'; +// $CFG->session_file_save_path = $CFG->dataroot.'/sessions'; +// +// Memcached session handler (requires memcached server and extension): +// $CFG->session_handler_class = '\core\session\memcached'; +// $CFG->session_memcached_save_path = '127.0.0.1:11211'; +// $CFG->session_memcached_prefix = 'memc.sess.key.'; +// +// Following setting allows you to alter how frequently is timemodified updated in sessions table. +// $CFG->session_update_timemodified_frequency = 20; // In seconds. // // If this setting is set to true, then Moodle will track the IP of the // current user to make sure it hasn't changed during a session. This diff --git a/course/loginas.php b/course/loginas.php index 97f7d2a81ef..bfc3495eb75 100644 --- a/course/loginas.php +++ b/course/loginas.php @@ -11,7 +11,7 @@ $url = new moodle_url('/course/loginas.php', array('id'=>$id)); $PAGE->set_url($url); // Reset user back to their real self if needed, for security reasons you need to log out and log in again. -if (session_is_loggedinas()) { +if (\core\session\manager::is_loggedinas()) { require_sesskey(); require_logout(); @@ -61,7 +61,7 @@ if (has_capability('moodle/user:loginas', $systemcontext)) { } // Login as this user and return to course home page. -session_loginas($userid, $context); +\core\session\manager::loginas($userid, $context); $newfullname = fullname($USER, true); $strloginas = get_string('loginas'); diff --git a/draftfile.php b/draftfile.php index 821ae576650..ce61d199e0c 100644 --- a/draftfile.php +++ b/draftfile.php @@ -84,5 +84,5 @@ if (!$file = $fs->get_file_by_hash(sha1($fullpath)) or $file->get_filename() == // ======================================== // finally send the file // ======================================== -session_get_instance()->write_close(); // unlock session during fileserving +\core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 0, false, true, array('preview' => $preview)); // force download - security first! diff --git a/enrol/index.php b/enrol/index.php index d0e91b53443..3cc533507c0 100644 --- a/enrol/index.php +++ b/enrol/index.php @@ -46,7 +46,7 @@ $PAGE->set_pagelayout('course'); $PAGE->set_url('/enrol/index.php', array('id'=>$course->id)); // do not allow enrols when in login-as session -if (session_is_loggedinas() and $USER->loginascontext->contextlevel == CONTEXT_COURSE) { +if (\core\session\manager::is_loggedinas() and $USER->loginascontext->contextlevel == CONTEXT_COURSE) { print_error('loginasnoenrol', '', $CFG->wwwroot.'/course/view.php?id='.$USER->loginascontext->instanceid); } diff --git a/file.php b/file.php index fce3f788ec1..bfbe8701961 100644 --- a/file.php +++ b/file.php @@ -111,7 +111,7 @@ if ($file->get_filename() == '.') { // ======================================== // finally send the file // ======================================== -session_get_instance()->write_close(); // unlock session during fileserving +\core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, $lifetime, $CFG->filteruploadedfiles, $forcedownload); diff --git a/lang/en/error.php b/lang/en/error.php index 2f18aa61dfa..d615046c251 100644 --- a/lang/en/error.php +++ b/lang/en/error.php @@ -466,6 +466,7 @@ $string['servicedonotexist'] = 'The service does not exist'; $string['sessionwaiterr'] = 'Timed out while waiting for session lock.
                Wait for your current requests to finish and try again later.'; $string['sessioncookiesdisable'] = 'Incorrect use of require_key_login() - session cookies must be disabled!'; $string['sessiondiskfull'] = 'The session partition is full. It is not possible to login at this time.

                Please notify server administrator.'; +$string['sessionhandlerproblem'] = 'Session handler is misconfigured'; $string['sessionerroruser'] = 'Your session has timed out. Please login again.'; $string['sessionerroruser2'] = 'A server error that affects your login session was detected. Please login again or restart your browser.'; $string['sessionipnomatch'] = 'Sorry, but your IP number seems to have changed from when you first logged in. This security feature prevents crackers stealing your identity while logged in to this site. Normal users should not be seeing this message - please ask the site administrator for help.'; diff --git a/lib/authlib.php b/lib/authlib.php index f8fac6ea501..736374214a2 100644 --- a/lib/authlib.php +++ b/lib/authlib.php @@ -618,9 +618,7 @@ function login_is_lockedout($user) { function login_attempt_valid($user) { global $CFG; - $event = \core\event\user_loggedin::create(array('objectid' => $user->id, 'other' => array('username' => $user->username))); - $event->add_record_snapshot('user', $user); - $event->trigger(); + // Note: user_loggedin event is triggered in complete_user_login(). if ($user->mnethostid != $CFG->mnet_localhost_id) { return; diff --git a/lib/classes/event/user_loggedin.php b/lib/classes/event/user_loggedin.php index 006485f75f9..9065aa77363 100644 --- a/lib/classes/event/user_loggedin.php +++ b/lib/classes/event/user_loggedin.php @@ -96,7 +96,7 @@ class user_loggedin extends \core\event\base { /** * Custom validation. * - * @throws coding_exception when validation does not pass. + * @throws \coding_exception when validation does not pass. * @return void */ protected function validate_data() { diff --git a/lib/classes/event/user_loggedout.php b/lib/classes/event/user_loggedout.php index f881b471884..8f2c6aacfdd 100644 --- a/lib/classes/event/user_loggedout.php +++ b/lib/classes/event/user_loggedout.php @@ -38,6 +38,7 @@ class user_loggedout extends base { * Initialise required event data properties. */ protected function init() { + $this->context = \context_system::instance(); $this->data['objecttable'] = 'user'; $this->data['crud'] = 'r'; $this->data['level'] = self::LEVEL_OTHER; diff --git a/lib/classes/session/database.php b/lib/classes/session/database.php new file mode 100644 index 00000000000..4216980dff2 --- /dev/null +++ b/lib/classes/session/database.php @@ -0,0 +1,315 @@ +. + +/** + * Database based session handler. + * + * @package core + * @copyright 2013 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace core\session; + +defined('MOODLE_INTERNAL') || die(); + +/** + * Database based session handler. + * + * @package core + * @copyright 2013 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class database extends handler { + /** @var \stdClass $record session record */ + protected $recordid = null; + + /** @var \moodle_database $database session database */ + protected $database = null; + + /** @var bool $failed session read/init failed, do not write back to DB */ + protected $failed = false; + + /** @var string $lasthash hash of the session data content */ + protected $lasthash = null; + + /** @var int $acquiretimeout how long to wait for session lock */ + protected $acquiretimeout = 120; + + /** + * Create new instance of handler. + */ + public function __construct() { + global $DB, $CFG; + // Note: we store the reference here because we need to modify database in shutdown handler. + $this->database = $DB; + + if (!empty($CFG->session_database_acquire_lock_timeout)) { + $this->acquiretimeout = (int)$CFG->session_database_acquire_lock_timeout; + } + } + + /** + * Init session handler. + */ + public function init() { + if (!$this->database->session_lock_supported()) { + throw new exception('sessionhandlerproblem', 'error', '', null, 'Database does not support session locking'); + } + + $result = session_set_save_handler(array($this, 'handler_open'), + array($this, 'handler_close'), + array($this, 'handler_read'), + array($this, 'handler_write'), + array($this, 'handler_destroy'), + array($this, 'handler_gc')); + if (!$result) { + throw new exception('dbsessionhandlerproblem', 'error'); + } + + register_shutdown_function(array($this, 'handler_shutdown')); + } + + /** + * Check for existing session with id $sid. + * + * Note: this verifies the storage backend only, not the actual session records. + * + * @param string $sid + * @return bool true if session found. + */ + public function session_exists($sid) { + try { + return $this->database->record_exists('sessions', array('sid'=>$sid, 'state'=>0)); + } catch (\dml_exception $ex) { + return false; + } + } + + /** + * Kill all active sessions, the core sessions table is + * purged afterwards. + */ + public function kill_all_sessions() { + // Nothing to do, the sessions table is cleared from core. + return; + } + + /** + * Kill one session, the session record is removed afterwards. + * @param string $sid + */ + public function kill_session($sid) { + // Nothing to do, the sessions table is purged afterwards. + return; + } + + /** + * Open session handler. + * + * {@see http://php.net/manual/en/function.session-set-save-handler.php} + * + * @param string $save_path + * @param string $session_name + * @return bool success + */ + public function handler_open($save_path, $session_name) { + // Note: we use the already open database. + return true; + } + + /** + * Close session handler. + * + * {@see http://php.net/manual/en/function.session-set-save-handler.php} + * + * @return bool success + */ + public function handler_close() { + if ($this->recordid) { + try { + $this->database->release_session_lock($this->recordid); + } catch (\Exception $ex) { + // Ignore any problems. + } + } + $this->recordid = null; + $this->lasthash = null; + return true; + } + + /** + * Read session handler. + * + * {@see http://php.net/manual/en/function.session-set-save-handler.php} + * + * @param string $sid + * @return string + */ + public function handler_read($sid) { + try { + if (!$record = $this->database->get_record('sessions', array('sid'=>$sid), 'id')) { + // Let's cheat and skip locking if this is the first access, + // do not create the record here, let the manager do it after session init. + $this->failed = false; + $this->recordid = null; + $this->lasthash = sha1(''); + return ''; + } + if ($this->recordid and $this->recordid != $record->id) { + error_log('Second session read with different record id detected, cannot read session'); + $this->failed = true; + $this->recordid = null; + return ''; + } + if (!$this->recordid) { + // Lock session if exists and not already locked. + $this->database->get_session_lock($record->id, $this->acquiretimeout); + $this->recordid = $record->id; + } + } catch (\dml_sessionwait_exception $ex) { + // This is a fatal error, better inform users. + // It should not happen very often - all pages that need long time to execute + // should close session immediately after access control checks. + error_log('Cannot obtain session lock for sid: '.$sid); + $this->failed = true; + throw $ex; + + } catch (\Exception $ex) { + // Do not rethrow exceptions here, this should not happen. + error_log('Unknown exception when starting database session : '.$sid.' - '.$ex->getMessage()); + $this->failed = true; + $this->recordid = null; + return ''; + } + + // Finally read the full session data because we know we have the lock now. + if (!$record = $this->database->get_record('sessions', array('id'=>$record->id), 'id, sessdata')) { + // Ignore - something else just deleted the session record. + $this->failed = true; + $this->recordid = null; + return ''; + } + $this->failed = false; + + if (is_null($record->sessdata)) { + $data = ''; + $this->lasthash = sha1(''); + } else { + $data = base64_decode($record->sessdata); + $this->lasthash = sha1($record->sessdata); + } + + return $data; + } + + /** + * Write session handler. + * + * {@see http://php.net/manual/en/function.session-set-save-handler.php} + * + * NOTE: Do not write to output or throw any exceptions! + * Hopefully the next page is going to display nice error or it recovers... + * + * @param string $sid + * @param string $session_data + * @return bool success + */ + public function handler_write($sid, $session_data) { + if ($this->failed) { + // Do not write anything back - we failed to start the session properly. + return false; + } + + $sessdata = base64_encode($session_data); // There might be some binary mess :-( + $hash = sha1($sessdata); + + if ($hash === $this->lasthash) { + return true; + } + + try { + if ($this->recordid) { + $this->database->set_field('sessions', 'sessdata', $sessdata, array('id'=>$this->recordid)); + } else { + // This happens in the first request when session record was just created in manager. + $this->database->set_field('sessions', 'sessdata', $sessdata, array('sid'=>$sid)); + } + } catch (\Exception $ex) { + // Do not rethrow exceptions here, this should not happen. + error_log('Unknown exception when writing database session data : '.$sid.' - '.$ex->getMessage()); + } + + return true; + } + + /** + * Destroy session handler. + * + * {@see http://php.net/manual/en/function.session-set-save-handler.php} + * + * @param string $sid + * @return bool success + */ + public function handler_destroy($sid) { + if (!$session = $this->database->get_record('sessions', array('sid'=>$sid), 'id, sid')) { + if ($sid == session_id()) { + $this->recordid = null; + $this->lasthash = null; + } + return true; + } + + if ($this->recordid and $session->id == $this->recordid) { + try { + $this->database->release_session_lock($this->recordid); + } catch (\Exception $ex) { + // Ignore problems. + } + $this->recordid = null; + $this->lasthash = null; + } + + $this->database->delete_records('sessions', array('id'=>$session->id)); + + return true; + } + + /** + * GC session handler. + * + * {@see http://php.net/manual/en/function.session-set-save-handler.php} + * + * @param int $ignored_maxlifetime moodle uses special timeout rules + * @return bool success + */ + public function handler_gc($ignored_maxlifetime) { + // This should do something only if cron is not running properly... + if (!$stalelifetime = ini_get('session.gc_maxlifetime')) { + return true; + } + $params = array('purgebefore' => (time() - $stalelifetime)); + $this->database->delete_records_select('sessions', 'userid = 0 AND timemodified < :purgebefore', $params); + return true; + } + + /** + * This makes sure the session is written to disk at the end of request. + */ + public function handler_shutdown() { + $this->database->dispose(); + } +} diff --git a/lib/classes/session/exception.php b/lib/classes/session/exception.php new file mode 100644 index 00000000000..ea58b0f5e8f --- /dev/null +++ b/lib/classes/session/exception.php @@ -0,0 +1,34 @@ +. + +/** + * Session exception. + * + * @package core + * @copyright 2013 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace core\session; + +defined('MOODLE_INTERNAL') || die(); + +/** + * Session related exception class. + * @package core + */ +class exception extends \moodle_exception { +} diff --git a/lib/classes/session/file.php b/lib/classes/session/file.php new file mode 100644 index 00000000000..7ecb00c2f33 --- /dev/null +++ b/lib/classes/session/file.php @@ -0,0 +1,120 @@ +. + +/** + * File based session handler. + * + * @package core + * @copyright 2013 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace core\session; + +defined('MOODLE_INTERNAL') || die(); + +/** + * File based session handler. + * + * @package core + * @copyright 2013 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class file extends handler { + /** @var string session dir */ + protected $sessiondir; + + /** + * Create new instance of handler. + */ + public function __construct() { + global $CFG; + + if (!empty($CFG->session_file_save_path)) { + $this->sessiondir = $CFG->session_file_save_path; + } else { + $this->sessiondir = "$CFG->dataroot/sessions"; + } + } + + /** + * Init session handler. + */ + public function init() { + if (preg_match('/^[0-9]+;/', $this->sessiondir)) { + throw new exception('sessionhandlerproblem', 'error', '', null, 'Multilevel session directories are not supported'); + } + // Make sure session directory exists and is writable. + make_writable_directory($this->sessiondir, false); + if (!is_writable($this->sessiondir)) { + throw new exception('sessionhandlerproblem', 'error', '', null, 'Session directory is not writable'); + } + // Need to disable debugging since disk_free_space() + // will fail on very large partitions (see MDL-19222). + $freespace = @disk_free_space($this->sessiondir); + if (!($freespace > 2048) and $freespace !== false) { + throw new exception('sessiondiskfull', 'error'); + } + + // NOTE: we cannot set any lock acquiring timeout here - bad luck. + ini_set('session.save_handler', 'files'); + ini_set('session.save_path', $this->sessiondir); + } + + /** + * Check for existing session with id $sid. + * + * Note: this verifies the storage backend only, not the actual session records. + * + * @param string $sid + * @return bool true if session found. + */ + public function session_exists($sid) { + $sid = clean_param($sid, PARAM_FILE); + if (!$sid) { + return false; + } + $sessionfile = "$this->sessiondir/sess_$sid"; + return file_exists($sessionfile); + } + + /** + * Kill all active sessions, the core sessions table is + * purged afterwards. + */ + public function kill_all_sessions() { + if (is_dir($this->sessiondir)) { + foreach (glob("$this->sessiondir/sess_*") as $filename) { + @unlink($filename); + } + } + } + + /** + * Kill one session, the session record is removed afterwards. + * @param string $sid + */ + public function kill_session($sid) { + $sid = clean_param($sid, PARAM_FILE); + if (!$sid) { + return; + } + $sessionfile = "$this->sessiondir/sess_$sid"; + if (file_exists($sessionfile)) { + @unlink($sessionfile); + } + } +} diff --git a/lib/classes/session/handler.php b/lib/classes/session/handler.php new file mode 100644 index 00000000000..a656175f74d --- /dev/null +++ b/lib/classes/session/handler.php @@ -0,0 +1,63 @@ +. + +/** + * Session handler base. + * + * @package core + * @copyright 2013 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace core\session; + +defined('MOODLE_INTERNAL') || die(); + +/** + * Session handler base. + * + * @package core + * @copyright 2013 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +abstract class handler { + /** + * Init session handler. + */ + public abstract function init(); + + /** + * Check for existing session with id $sid. + * + * Note: this verifies the storage backend only, not the actual session records. + * + * @param string $sid + * @return bool true if session found. + */ + public abstract function session_exists($sid); + + /** + * Kill all active sessions, the core sessions table is + * purged afterwards. + */ + public abstract function kill_all_sessions(); + + /** + * Kill one session, the session record is removed afterwards. + * @param string $sid + */ + public abstract function kill_session($sid); +} diff --git a/lib/classes/session/manager.php b/lib/classes/session/manager.php new file mode 100644 index 00000000000..90153ef46ed --- /dev/null +++ b/lib/classes/session/manager.php @@ -0,0 +1,754 @@ +. + +/** + * Session manager class. + * + * @package core + * @copyright 2013 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace core\session; + +defined('MOODLE_INTERNAL') || die(); + +/** + * Session manager, this is the public Moodle API for sessions. + * + * Following PHP functions MUST NOT be used directly: + * - session_start() - not necessary, lib/setup.php starts session automatically, + * use define('NO_MOODLE_COOKIE', true) if session not necessary. + * - session_write_close() - use \core\session\manager::write_close() instead. + * - session_destroy() - use require_logout() instead. + * + * @package core + * @copyright 2013 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class manager { + /** @var handler $handler active session handler instance */ + protected static $handler; + + /** @var bool $sessionactive Is the session active? */ + protected static $sessionactive = null; + + /** + * Start user session. + * + * Note: This is intended to be called only from lib/setup.php! + */ + public static function start() { + global $CFG, $DB; + + if (isset(self::$sessionactive)) { + debugging('Session was already started!', DEBUG_DEVELOPER); + return; + } + + self::load_handler(); + + // Init the session handler only if everything initialised properly in lib/setup.php file + // and the session is actually required. + if (empty($DB) or empty($CFG->version) or !defined('NO_MOODLE_COOKIES') or NO_MOODLE_COOKIES or CLI_SCRIPT) { + self::$sessionactive = false; + self::init_empty_session(); + return; + } + + try { + self::$handler->init(); + self::prepare_cookies(); + $newsid = empty($_COOKIE[session_name()]); + + session_start(); + + self::initialise_user_session($newsid); + self::check_security(); + + } catch (\Exception $ex) { + @session_write_close(); + self::init_empty_session(); + self::$sessionactive = false; + throw $ex; + } + + self::$sessionactive = true; + } + + /** + * Returns current page performance info. + * + * @return array perf info + */ + public static function get_performance_info() { + if (!session_id()) { + return array(); + } + + self::load_handler(); + $size = display_size(strlen(session_encode())); + $handler = get_class(self::$handler); + + $info = array(); + $info['size'] = $size; + $info['html'] = "Session ($handler): $size "; + $info['txt'] = "Session ($handler): $size "; + + return $info; + } + + /** + * Create handler instance. + */ + protected static function load_handler() { + global $CFG, $DB; + + if (self::$handler) { + return; + } + + // Find out which handler to use. + if (PHPUNIT_TEST) { + $class = '\core\session\file'; + + } else if (!empty($CFG->session_handler_class)) { + $class = $CFG->session_handler_class; + + } else if (!empty($CFG->dbsessions) and $DB->session_lock_supported()) { + $class = '\core\session\database'; + + } else { + $class = '\core\session\file'; + } + self::$handler = new $class(); + } + + /** + * Empty current session, fill it with not-logged-in user info. + */ + protected static function init_empty_session() { + global $CFG; + + // Session not used at all. + $_SESSION = array(); + $_SESSION['SESSION'] = new \stdClass(); + $_SESSION['USER'] = new \stdClass(); + $_SESSION['USER']->id = 0; + if (isset($CFG->mnet_localhost_id)) { + $_SESSION['USER']->mnethostid = $CFG->mnet_localhost_id; + } else { + // Not installed yet, the future host id will be most probably 1. + $_SESSION['USER']->mnethostid = 1; + } + + if (PHPUNIT_TEST) { + // Phpunit tests use reversed reference. + global $USER, $SESSION; + $USER = $_SESSION['USER']; + $SESSION = $_SESSION['SESSION']; + $_SESSION['USER'] =& $USER; + $_SESSION['SESSION'] =& $SESSION; + } + } + + /** + * Make sure all cookie and session related stuff is configured properly before session start. + */ + protected static function prepare_cookies() { + global $CFG; + + if (!isset($CFG->cookiesecure) or (strpos($CFG->wwwroot, 'https://') !== 0 and empty($CFG->sslproxy))) { + $CFG->cookiesecure = 0; + } + + if (!isset($CFG->cookiehttponly)) { + $CFG->cookiehttponly = 0; + } + + // Set sessioncookie variable if it isn't already. + if (!isset($CFG->sessioncookie)) { + $CFG->sessioncookie = ''; + } + $sessionname = 'MoodleSession'.$CFG->sessioncookie; + + // Make sure cookie domain makes sense for this wwwroot. + if (!isset($CFG->sessioncookiedomain)) { + $CFG->sessioncookiedomain = ''; + } else if ($CFG->sessioncookiedomain !== '') { + $host = parse_url($CFG->wwwroot, PHP_URL_HOST); + if ($CFG->sessioncookiedomain !== $host) { + if (substr($CFG->sessioncookiedomain, 0, 1) === '.') { + if (!preg_match('|^.*'.preg_quote($CFG->sessioncookiedomain, '|').'$|', $host)) { + // Invalid domain - it must be end part of host. + $CFG->sessioncookiedomain = ''; + } + } else { + if (!preg_match('|^.*\.'.preg_quote($CFG->sessioncookiedomain, '|').'$|', $host)) { + // Invalid domain - it must be end part of host. + $CFG->sessioncookiedomain = ''; + } + } + } + } + + // Make sure the cookiepath is valid for this wwwroot or autodetect if not specified. + if (!isset($CFG->sessioncookiepath)) { + $CFG->sessioncookiepath = ''; + } + if ($CFG->sessioncookiepath !== '/') { + $path = parse_url($CFG->wwwroot, PHP_URL_PATH).'/'; + if ($CFG->sessioncookiepath === '') { + $CFG->sessioncookiepath = $path; + } else { + if (strpos($path, $CFG->sessioncookiepath) !== 0 or substr($CFG->sessioncookiepath, -1) !== '/') { + $CFG->sessioncookiepath = $path; + } + } + } + + // Discard session ID from POST, GET and globals to tighten security, + // this is session fixation prevention. + unset($GLOBALS[$sessionname]); + unset($_GET[$sessionname]); + unset($_POST[$sessionname]); + unset($_REQUEST[$sessionname]); + + // Compatibility hack for non-browser access to our web interface. + if (!empty($_COOKIE[$sessionname]) && $_COOKIE[$sessionname] == "deleted") { + unset($_COOKIE[$sessionname]); + } + + // Set configuration. + session_name($sessionname); + session_set_cookie_params(0, $CFG->sessioncookiepath, $CFG->sessioncookiedomain, $CFG->cookiesecure, $CFG->cookiehttponly); + ini_set('session.use_trans_sid', '0'); + ini_set('session.use_only_cookies', '1'); + ini_set('session.hash_function', '0'); // For now MD5 - we do not have room for sha-1 in sessions table. + ini_set('session.use_strict_mode', '0'); // We have custom protection in session init. + ini_set('session.serialize_handler', 'php'); // We can move to 'php_serialize' after we require PHP 5.5.4 form Moodle. + + // Moodle does normal session timeouts, this is for leftovers only. + ini_set('session.gc_probability', 1); + ini_set('session.gc_divisor', 1000); + ini_set('session.gc_maxlifetime', 60*60*24*4); + } + + /** + * Initialise $USER and $SESSION objects, handles google access + * and sets up not-logged-in user properly. + * + * @param bool $newsid is this a new session in first http request? + */ + protected static function initialise_user_session($newsid) { + global $CFG, $DB; + + $sid = session_id(); + if (!$sid) { + // No session, very weird. + error_log('Missing session ID, session not started!'); + self::init_empty_session(); + return; + } + + if (!$record = $DB->get_record('sessions', array('sid'=>$sid), 'id, sid, state, userid, lastip, timecreated, timemodified')) { + if (!$newsid) { + if (!empty($_SESSION['USER']->id)) { + // This should not happen, just log it, we MUST not produce any output here! + error_log("Cannot find session record $sid for user ".$_SESSION['USER']->id.", creating new session."); + } + } + session_regenerate_id(true); + $_SESSION = array(); + } + unset($sid); + + if (isset($_SESSION['USER']->id)) { + if (!empty($_SESSION['USER']->realuser)) { + $userid = $_SESSION['USER']->realuser; + } else { + $userid = $_SESSION['USER']->id; + } + + // Verify timeout first. + $maxlifetime = $CFG->sessiontimeout; + $timeout = false; + if (isguestuser($userid) or empty($userid)) { + // Ignore guest and not-logged in timeouts, there is very little risk here. + $timeout = false; + + } else if ($record->timemodified < time() - $maxlifetime) { + $timeout = true; + $authsequence = get_enabled_auth_plugins(); // Auths, in sequence. + foreach ($authsequence as $authname) { + $authplugin = get_auth_plugin($authname); + if ($authplugin->ignore_timeout_hook($_SESSION['USER'], $record->sid, $record->timecreated, $record->timemodified)) { + $timeout = false; + break; + } + } + } + + if ($timeout) { + session_regenerate_id(true); + $_SESSION = array(); + $DB->delete_records('sessions', array('id'=>$record->id)); + + } else { + // Update session tracking record. + + $update = new \stdClass(); + $updated = false; + + if ($record->userid != $userid) { + $update->userid = $record->userid = $userid; + $updated = true; + } + + $ip = getremoteaddr(); + if ($record->lastip != $ip) { + $update->lastip = $record->lastip = $ip; + $updated = true; + } + + $updatefreq = empty($CFG->session_update_timemodified_frequency) ? 20 : $CFG->session_update_timemodified_frequency; + + if ($record->timemodified == $record->timecreated) { + // Always do first update of existing record. + $update->timemodified = $record->timemodified = time(); + $updated = true; + + } else if ($record->timemodified < time() - $updatefreq) { + // Update the session modified flag only once every 20 seconds. + $update->timemodified = $record->timemodified = time(); + $updated = true; + } + + if ($updated) { + $update->id = $record->id; + $DB->update_record('sessions', $update); + } + + return; + } + } else { + if ($record) { + // This happens when people switch session handlers... + session_regenerate_id(true); + $_SESSION = array(); + $DB->delete_records('sessions', array('id'=>$record->id)); + } + } + unset($record); + + $timedout = false; + if (!isset($_SESSION['SESSION'])) { + $_SESSION['SESSION'] = new \stdClass(); + if (!$newsid) { + $timedout = true; + } + } + + $user = null; + + if (!empty($CFG->opentogoogle)) { + if (is_web_crawler()) { + $user = guest_user(); + } + if (!empty($CFG->guestloginbutton) and !$user and !empty($_SERVER['HTTP_REFERER'])) { + // Automatically log in users coming from search engine results. + if (strpos($_SERVER['HTTP_REFERER'], 'google') !== false ) { + $user = guest_user(); + } else if (strpos($_SERVER['HTTP_REFERER'], 'altavista') !== false ) { + $user = guest_user(); + } + } + } + + // Setup $USER and insert the session tracking record. + if ($user) { + self::set_user($user); + self::add_session_record($user->id); + } else { + self::init_empty_session(); + self::add_session_record(0); + } + + if ($timedout) { + $_SESSION['SESSION']->has_timed_out = true; + } + } + + /** + * Insert new empty session record. + * @param int $userid + * @return \stdClass the new record + */ + protected static function add_session_record($userid) { + global $DB; + $record = new \stdClass(); + $record->state = 0; + $record->sid = session_id(); + $record->sessdata = null; + $record->userid = $userid; + $record->timecreated = $record->timemodified = time(); + $record->firstip = $record->lastip = getremoteaddr(); + + $record->id = $DB->insert_record('sessions', $record); + + return $record; + } + + /** + * Do various session security checks. + */ + protected static function check_security() { + global $CFG; + + if (!empty($_SESSION['USER']->id) and !empty($CFG->tracksessionip)) { + // Make sure current IP matches the one for this session. + $remoteaddr = getremoteaddr(); + + if (empty($_SESSION['USER']->sessionip)) { + $_SESSION['USER']->sessionip = $remoteaddr; + } + + if ($_SESSION['USER']->sessionip != $remoteaddr) { + // This is a security feature - terminate the session in case of any doubt. + self::terminate_current(); + throw new exception('sessionipnomatch2', 'error'); + } + } + } + + /** + * Login user, to be called from complete_user_login() only. + * @param \stdClass $user + */ + public static function login_user(\stdClass $user) { + global $DB; + + // Regenerate session id and delete old session, + // this helps prevent session fixation attacks from the same domain. + + $sid = session_id(); + session_regenerate_id(true); + $DB->delete_records('sessions', array('sid'=>$sid)); + self::add_session_record($user->id); + + // Let enrol plugins deal with new enrolments if necessary. + enrol_check_plugins($user); + + // Setup $USER object. + self::set_user($user); + } + + /** + * Terminate current user session. + * @return void + */ + public static function terminate_current() { + global $DB; + + if (!self::$sessionactive) { + self::init_empty_session(); + self::$sessionactive = false; + return; + } + + try { + $DB->delete_records('external_tokens', array('sid'=>session_id(), 'tokentype'=>EXTERNAL_TOKEN_EMBEDDED)); + } catch (\Exception $ignored) { + // Probably install/upgrade - ignore this problem. + } + + // Initialize variable to pass-by-reference to headers_sent(&$file, &$line). + $file = null; + $line = null; + if (headers_sent($file, $line)) { + error_log('Cannot terminate session properly - headers were already sent in file: '.$file.' on line '.$line); + } + + // Write new empty session and make sure the old one is deleted. + $sid = session_id(); + session_regenerate_id(true); + $DB->delete_records('sessions', array('sid'=>$sid)); + self::init_empty_session(); + self::add_session_record($_SESSION['USER']->id); + session_write_close(); + self::$sessionactive = false; + } + + /** + * No more changes in session expected. + * Unblocks the sessions, other scripts may start executing in parallel. + */ + public static function write_close() { + if (self::$sessionactive) { + session_write_close(); + } else { + if (session_id()) { + @session_write_close(); + } + } + self::$sessionactive = false; + } + + /** + * Does the PHP session with given id exist? + * + * Note: this does not actually verify the presence of sessions record. + * + * @param string $sid + * @return bool + */ + public static function session_exists($sid) { + self::load_handler(); + return self::$handler->session_exists($sid); + } + + /** + * Fake last access for given session, this prevents session timeout. + * @param string $sid + */ + public static function touch_session($sid) { + global $DB; + + // Timeouts depend on core sessions table only, no need to update anything in external stores. + + $sql = "UPDATE {sessions} SET timemodified = :now WHERE sid = :sid"; + $DB->execute($sql, array('now'=>time(), 'sid'=>$sid)); + } + + /** + * Terminate all sessions unconditionally. + */ + public static function kill_all_sessions() { + global $DB; + + self::terminate_current(); + + self::load_handler(); + self::$handler->kill_all_sessions(); + + try { + $DB->delete_records('sessions'); + } catch (\dml_exception $ignored) { + // Do not show any warnings - might be during upgrade/installation. + } + } + + /** + * Terminate give session unconditionally. + * @param string $sid + */ + public static function kill_session($sid) { + global $DB; + + self::load_handler(); + + if ($sid === session_id()) { + self::write_close(); + } + + self::$handler->kill_session($sid); + + $DB->delete_records('sessions', array('sid'=>$sid)); + } + + /** + * Terminate all sessions of given user unconditionally. + * @param int $userid + */ + public static function kill_user_sessions($userid) { + global $DB; + + $sessions = $DB->get_records('sessions', array('userid'=>$userid), 'id DESC', 'id, sid'); + foreach ($sessions as $session) { + self::kill_session($session->sid); + } + } + + /** + * Set current user. + * + * @param \stdClass $user record + */ + public static function set_user(\stdClass $user) { + $_SESSION['USER'] = $user; + unset($_SESSION['USER']->description); // Conserve memory. + unset($_SESSION['USER']->password); // Improve security. + if (isset($_SESSION['USER']->lang)) { + // Make sure it is a valid lang pack name. + $_SESSION['USER']->lang = clean_param($_SESSION['USER']->lang, PARAM_LANG); + } + sesskey(); // Init session key. + + if (PHPUNIT_TEST) { + // Phpunit tests use reversed reference. + global $USER; + $USER = $_SESSION['USER']; + $_SESSION['USER'] =& $USER; + } + } + + /** + * Periodic timed-out session cleanup. + */ + public static function gc() { + global $CFG, $DB; + + // This may take a long time... + set_time_limit(0); + + $maxlifetime = $CFG->sessiontimeout; + + try { + // Kill all sessions of deleted and suspended users without any hesitation. + $rs = $DB->get_recordset_select('sessions', "userid IN (SELECT id FROM {user} WHERE deleted <> 0 OR suspended <> 0)", array(), 'id DESC', 'id, sid'); + foreach ($rs as $session) { + self::kill_session($session->sid); + } + $rs->close(); + + // Kill sessions of users with disabled plugins. + $auth_sequence = get_enabled_auth_plugins(true); + $auth_sequence = array_flip($auth_sequence); + unset($auth_sequence['nologin']); // No login means user cannot login. + $auth_sequence = array_flip($auth_sequence); + + list($notplugins, $params) = $DB->get_in_or_equal($auth_sequence, SQL_PARAMS_QM, '', false); + $rs = $DB->get_recordset_select('sessions', "userid IN (SELECT id FROM {user} WHERE auth $notplugins)", $params, 'id DESC', 'id, sid'); + foreach ($rs as $session) { + self::kill_session($session->sid); + } + $rs->close(); + + // Now get a list of time-out candidates - real users only. + $sql = "SELECT u.*, s.sid, s.timecreated AS s_timecreated, s.timemodified AS s_timemodified + FROM {user} u + JOIN {sessions} s ON s.userid = u.id + WHERE s.timemodified < :purgebefore AND u.id <> :guestid"; + $params = array('purgebefore' => (time() - $maxlifetime), 'guestid'=>$CFG->siteguest); + + $authplugins = array(); + foreach ($auth_sequence as $authname) { + $authplugins[$authname] = get_auth_plugin($authname); + } + $rs = $DB->get_recordset_sql($sql, $params); + foreach ($rs as $user) { + foreach ($authplugins as $authplugin) { + /** @var \auth_plugin_base $authplugin*/ + if ($authplugin->ignore_timeout_hook($user, $user->sid, $user->s_timecreated, $user->s_timemodified)) { + continue; + } + } + self::kill_session($user->sid); + } + $rs->close(); + + // Delete expired sessions for guest user account, give them larger timeout, there is no security risk here. + $params = array('purgebefore' => (time() - ($maxlifetime * 5)), 'guestid'=>$CFG->siteguest); + $rs = $DB->get_recordset_select('sessions', 'userid = :guestid AND timemodified < :purgebefore', $params, 'id DESC', 'id, sid'); + foreach ($rs as $session) { + self::kill_session($session->sid); + } + $rs->close(); + + // Delete expired sessions for userid = 0 (not logged in), better kill them asap to release memory. + $params = array('purgebefore' => (time() - $maxlifetime)); + $rs = $DB->get_recordset_select('sessions', 'userid = 0 AND timemodified < :purgebefore', $params, 'id DESC', 'id, sid'); + foreach ($rs as $session) { + self::kill_session($session->sid); + } + $rs->close(); + + // Cleanup letfovers from the first browser access because it may set multiple cookies and then use only one. + $params = array('purgebefore' => (time() - 60*3)); + $rs = $DB->get_recordset_select('sessions', 'userid = 0 AND timemodified = timecreated AND timemodified < :purgebefore', $params, 'id ASC', 'id, sid'); + foreach ($rs as $session) { + self::kill_session($session->sid); + } + $rs->close(); + + } catch (\Exception $ex) { + debugging('Error gc-ing sessions: '.$ex->getMessage(), DEBUG_NORMAL, $ex->getTrace()); + } + } + + /** + * Is current $USER logged-in-as somebody else? + * @return bool + */ + public static function is_loggedinas() { + return !empty($_SESSION['USER']->realuser); + } + + /** + * Returns the $USER object ignoring current login-as session + * @return \stdClass user object + */ + public static function get_realuser() { + if (self::is_loggedinas()) { + return $_SESSION['REALUSER']; + } else { + return $_SESSION['USER']; + } + } + + /** + * Login as another user - no security checks here. + * @param int $userid + * @param \context $context + * @return void + */ + public static function loginas($userid, \context $context) { + global $USER; + + if (self::is_loggedinas()) { + return; + } + + // Switch to fresh new $SESSION. + $_SESSION['REALSESSION'] = $_SESSION['SESSION']; + $_SESSION['SESSION'] = new \stdClass(); + + // Create the new $USER object with all details and reload needed capabilities. + $_SESSION['REALUSER'] = $_SESSION['USER']; + $user = get_complete_user_data('id', $userid); + $user->realuser = $_SESSION['REALUSER']->id; + $user->loginascontext = $context; + + // Let enrol plugins deal with new enrolments if necessary. + enrol_check_plugins($user); + + // Create event before $USER is updated. + $event = \core\event\user_loggedinas::create( + array( + 'objectid' => $USER->id, + 'context' => $context, + 'relateduserid' => $userid, + 'other' => array( + 'originalusername' => fullname($USER, true), + 'loggedinasusername' => fullname($user, true) + ) + ) + ); + // Set up global $USER. + \core\session\manager::set_user($user); + $event->trigger(); + } +} diff --git a/lib/classes/session/memcached.php b/lib/classes/session/memcached.php new file mode 100644 index 00000000000..728153705cb --- /dev/null +++ b/lib/classes/session/memcached.php @@ -0,0 +1,187 @@ +. + +/** + * Memcached based session handler. + * + * @package core + * @copyright 2013 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace core\session; + +defined('MOODLE_INTERNAL') || die(); + +/** + * Memcached based session handler. + * + * @package core + * @copyright 2013 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class memcached extends handler { + /** @var string $savepath save_path string */ + protected $savepath; + /** @var array $servers list of servers parsed from save_path */ + protected $servers; + /** @var string $prefix session key prefix */ + protected $prefix; + + /** + * Create new instance of handler. + */ + public function __construct() { + global $CFG; + + if (empty($CFG->session_memcached_save_path)) { + $this->savepath = ''; + } else { + $this->savepath = $CFG->session_memcached_save_path; + } + + if (empty($this->savepath)) { + $this->servers = array(); + } else { + $this->servers = self::connection_string_to_servers($this->savepath); + } + + if (empty($CFG->session_memcached_prefix)) { + $this->prefix = ini_get('memcached.sess_prefix'); + } else { + $this->prefix = $CFG->session_memcached_prefix; + } + } + + /** + * Init session handler. + */ + public function init() { + if (!extension_loaded('memcached')) { + throw new exception('sessionhandlerproblem', 'error', '', null, 'memcached extension is not loaded'); + } + $version = phpversion('memcached'); + if (!$version or version_compare($version, '2.0') < 0) { + throw new exception('sessionhandlerproblem', 'error', '', null, 'memcached extension version must be at least 2.0'); + } + if (empty($this->savepath)) { + throw new exception('sessionhandlerproblem', 'error', '', null, '$CFG->session_memcached_save_path must be specified in config.php'); + } + + // NOTE: we cannot set any lock acquiring timeout here - bad luck. + ini_set('session.save_handler', 'memcached'); + ini_set('session.save_path', $this->savepath); + ini_set('memcached.sess_prefix', $this->prefix); + ini_set('memcached.sess_locking', '1'); // Locking is required! + } + + /** + * Check for existing session with id $sid. + * + * Note: this verifies the storage backend only, not the actual session records. + * + * @param string $sid + * @return bool true if session found. + */ + public function session_exists($sid) { + if (!$this->servers) { + return false; + } + + $memcached = new \Memcached(); + $memcached->addServers($this->servers); + $value = $memcached->get($this->prefix.$sid); + $memcached->quit(); + + return ($value !== false); + } + + /** + * Kill all active sessions, the core sessions table is + * purged afterwards. + */ + public function kill_all_sessions() { + global $DB; + if (!$this->servers) { + return; + } + + $memcached = new \Memcached(); + $memcached->addServers($this->servers); + + // Note: this can be significantly improved by fetching keys from memcached, + // but we need to make sure we are not deleting somebody else's sessions. + + $rs = $DB->get_recordset('sessions', array(), 'id DESC', 'id, sid'); + foreach ($rs as $record) { + $memcached->delete($this->prefix.$record->sid); + } + $rs->close(); + + $memcached->quit(); + } + + /** + * Kill one session, the session record is removed afterwards. + * @param string $sid + */ + public function kill_session($sid) { + if (!$this->servers) { + return; + } + + $memcached = new \Memcached(); + $memcached->addServers($this->servers); + $memcached->delete($this->prefix.$sid); + + $memcached->quit(); + } + + /** + * Convert a connection string to an array of servers + * + * EG: Converts: "abc:123, xyz:789" to + * + * array( + * array('abc', '123'), + * array('xyz', '789'), + * ) + * + * @copyright 2013 Moodlerooms Inc. (http://www.moodlerooms.com) + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + * @author Mark Nielsen + * + * @param string $str save_path value containing memcached connection string + * @return array + */ + protected static function connection_string_to_servers($str) { + $servers = array(); + $parts = explode(',', $str); + foreach ($parts as $part) { + $part = trim($part); + $pos = strrpos($part, ':'); + if ($pos !== false) { + $host = substr($part, 0, $pos); + $port = substr($part, ($pos + 1)); + } else { + $host = $part; + $port = 11211; + } + $servers[] = array($host, $port); + } + return $servers; + } +} diff --git a/lib/cronlib.php b/lib/cronlib.php index b15105a4c98..0f95c752bb8 100644 --- a/lib/cronlib.php +++ b/lib/cronlib.php @@ -190,9 +190,10 @@ function cron_run() { mtrace(' Created missing context instances'); - // Session gc - session_gc(); - mtrace("Cleaned up stale user sessions"); + // Session gc. + mtrace("Running session gc tasks..."); + \core\session\manager::gc(); + mtrace("...finished stale session cleanup"); // Run the auth cron, if any before enrolments diff --git a/lib/datalib.php b/lib/datalib.php index f2044c34d96..3509b444495 100644 --- a/lib/datalib.php +++ b/lib/datalib.php @@ -1645,7 +1645,7 @@ function add_to_log($courseid, $module, $action, $url='', $info='', $cm=0, $user if ($user) { $userid = $user; } else { - if (session_is_loggedinas()) { // Don't log + if (\core\session\manager::is_loggedinas()) { // Don't log return; } $userid = empty($USER->id) ? '0' : $USER->id; @@ -1727,7 +1727,7 @@ function add_to_log($courseid, $module, $action, $url='', $info='', $cm=0, $user function user_accesstime_log($courseid=0) { global $USER, $CFG, $DB; - if (!isloggedin() or session_is_loggedinas()) { + if (!isloggedin() or \core\session\manager::is_loggedinas()) { // no access tracking return; } diff --git a/lib/deprecatedlib.php b/lib/deprecatedlib.php index 3cc26edb3e2..6ef7851d6eb 100644 --- a/lib/deprecatedlib.php +++ b/lib/deprecatedlib.php @@ -30,6 +30,140 @@ defined('MOODLE_INTERNAL') || die(); +/** + * Factory method that was returning moodle_session object. + * + * @deprecated since 2.6 + * @return \core\session\manager + */ +function session_get_instance() { + // Note: the new session manager includes all methods from the original session class. + static $deprecatedinstance = null; + + debugging('session_get_instance() is deprecated, use \core\session\manager instead', DEBUG_DEVELOPER); + + if (!$deprecatedinstance) { + $deprecatedinstance = new \core\session\manager(); + } + + return $deprecatedinstance; +} + +/** + * Returns true if legacy session used. + * + * @deprecated since 2.6 + * @return bool + */ +function session_is_legacy() { + debugging('session_is_legacy() is deprecated, do not use any more', DEBUG_DEVELOPER); + return false; +} + +/** + * Terminates all sessions, auth hooks are not executed. + * Useful in upgrade scripts. + * + * @deprecated since 2.6 + */ +function session_kill_all() { + debugging('session_kill_all() is deprecated, use \core\session\manager::kill_all_sessions() instead', DEBUG_DEVELOPER); + \core\session\manager::kill_all_sessions(); +} + +/** + * Mark session as accessed, prevents timeouts. + * + * @deprecated since 2.6 + * @param string $sid + */ +function session_touch($sid) { + debugging('session_touch() is deprecated, use \core\session\manager::touch_session() instead', DEBUG_DEVELOPER); + \core\session\manager::touch_session($sid); +} + +/** + * Terminates one sessions, auth hooks are not executed. + * + * @deprecated since 2.6 + * @param string $sid session id + */ +function session_kill($sid) { + debugging('session_kill() is deprecated, use \core\session\manager::kill_session() instead', DEBUG_DEVELOPER); + \core\session\manager::kill_session($sid); +} + +/** + * Terminates all sessions of one user, auth hooks are not executed. + * NOTE: This can not work for file based sessions! + * + * @deprecated since 2.6 + * @param int $userid user id + */ +function session_kill_user($userid) { + debugging('session_kill_user() is deprecated, use \core\session\manager::kill_user_sessions() instead', DEBUG_DEVELOPER); + \core\session\manager::kill_user_sessions($userid); +} + +/** + * Session garbage collection + * - verify timeout for all users + * - kill sessions of all deleted users + * - kill sessions of users with disabled plugins or 'nologin' plugin + * + * @deprecated since 2.6 + */ +function session_gc() { + debugging('session_gc() is deprecated, use \core\session\manager::gc() instead', DEBUG_DEVELOPER); + \core\session\manager::gc(); +} + +/** + * Setup $USER object - called during login, loginas, etc. + * + * Call sync_user_enrolments() manually after log-in, or log-in-as. + * + * @deprecated since 2.6 + * @param stdClass $user full user record object + * @return void + */ +function session_set_user($user) { + debugging('session_set_user() is deprecated, use \core\session\manager::set_user() instead', DEBUG_DEVELOPER); + \core\session\manager::set_user($user); +} + +/** + * Is current $USER logged-in-as somebody else? + * @deprecated since 2.6 + * @return bool + */ +function session_is_loggedinas() { + debugging('session_is_loggedinas() is deprecated, use \core\session\manager::is_loggedinas() instead', DEBUG_DEVELOPER); + return \core\session\manager::is_loggedinas(); +} + +/** + * Returns the $USER object ignoring current login-as session + * @deprecated since 2.6 + * @return stdClass user object + */ +function session_get_realuser() { + debugging('session_get_realuser() is deprecated, use \core\session\manager::get_realuser() instead', DEBUG_DEVELOPER); + return \core\session\manager::get_realuser(); +} + +/** + * Login as another user - no security checks here. + * @deprecated since 2.6 + * @param int $userid + * @param stdClass $context + * @return void + */ +function session_loginas($userid, $context) { + debugging('session_loginas() is deprecated, use \core\session\manager::loginas() instead', DEBUG_DEVELOPER); + \core\session\manager::loginas($userid, $context); +} + /** * Minify JavaScript files. * diff --git a/lib/dml/moodle_database.php b/lib/dml/moodle_database.php index c9ab87c60e5..815248758b1 100644 --- a/lib/dml/moodle_database.php +++ b/lib/dml/moodle_database.php @@ -119,6 +119,12 @@ abstract class moodle_database { /** @var string MD5 of settings used for connection. Used by MUC as an identifier. */ private $settingshash; + /** @var cache_application for column info */ + protected $metacache; + + /** @var bool flag marking database instance as disposed */ + protected $disposed; + /** * @var int internal temporary variable used to fix params. Its used by {@link _fix_sql_params_dollar_callback()}. */ @@ -337,6 +343,10 @@ abstract class moodle_database { * @return void */ public function dispose() { + if ($this->disposed) { + return; + } + $this->disposed = true; if ($this->transactions) { // this should not happen, it usually indicates wrong catching of exceptions, // because all transactions should be finished manually or in default exception handler. @@ -354,9 +364,7 @@ abstract class moodle_database { } // Always terminate sessions here to make it consistent, // this is needed because we need to save session to db before closing it. - if (function_exists('session_get_instance')) { - session_get_instance()->write_close(); - } + \core\session\manager::write_close(); $this->used_for_db_sessions = false; if ($this->temptables) { @@ -368,6 +376,10 @@ abstract class moodle_database { $this->database_manager = null; } $this->tables = null; + + // We do not need the MUC cache any more, + // if we did not keep it as property it might be already gone before we saved the session. + $this->metacache = null; } /** @@ -955,12 +967,27 @@ abstract class moodle_database { * @return void */ public function reset_caches() { - $this->tables = null; + $this->tables = null; + $this->metacache = null; // Purge MUC as well $identifiers = array('dbfamily' => $this->get_dbfamily(), 'settings' => $this->get_settings_hash()); cache_helper::purge_by_definition('core', 'databasemeta', $identifiers); } + /** + * Call before using $this->metacache. + * + * Note: this is necessary because we want to write to database in shutdown handler + * and it needs to use the caches, but MUC would be already disposed. + */ + protected function init_caches() { + if ($this->metacache) { + return; + } + $properties = array('dbfamily' => $this->get_dbfamily(), 'settings' => $this->get_settings_hash()); + $this->metacache = cache::make('core', 'databasemeta', $properties); + } + /** * Returns the sql generator used for db manipulation. * Used mostly in upgrade.php scripts. diff --git a/lib/dml/mssql_native_moodle_database.php b/lib/dml/mssql_native_moodle_database.php index b4def7a0260..88c35755822 100644 --- a/lib/dml/mssql_native_moodle_database.php +++ b/lib/dml/mssql_native_moodle_database.php @@ -398,9 +398,8 @@ class mssql_native_moodle_database extends moodle_database { public function get_columns($table, $usecache=true) { if ($usecache) { - $properties = array('dbfamily' => $this->get_dbfamily(), 'settings' => $this->get_settings_hash()); - $cache = cache::make('core', 'databasemeta', $properties); - if ($data = $cache->get($table)) { + $this->init_caches(); + if ($data = $this->metacache->get($table)) { return $data; } } @@ -496,7 +495,7 @@ class mssql_native_moodle_database extends moodle_database { $this->free_result($result); if ($usecache) { - $result = $cache->set($table, $structure); + $result = $this->metacache->set($table, $structure); } return $structure; diff --git a/lib/dml/mysqli_native_moodle_database.php b/lib/dml/mysqli_native_moodle_database.php index 7a2d31f1707..f80c479259a 100644 --- a/lib/dml/mysqli_native_moodle_database.php +++ b/lib/dml/mysqli_native_moodle_database.php @@ -511,9 +511,8 @@ class mysqli_native_moodle_database extends moodle_database { public function get_columns($table, $usecache=true) { if ($usecache) { - $properties = array('dbfamily' => $this->get_dbfamily(), 'settings' => $this->get_settings_hash()); - $cache = cache::make('core', 'databasemeta', $properties); - if ($data = $cache->get($table)) { + $this->init_caches(); + if ($data = $this->metacache->get($table)) { return $data; } } @@ -619,7 +618,7 @@ class mysqli_native_moodle_database extends moodle_database { } if ($usecache) { - $result = $cache->set($table, $structure); + $result = $this->metacache->set($table, $structure); } return $structure; diff --git a/lib/dml/oci_native_moodle_database.php b/lib/dml/oci_native_moodle_database.php index 10906b88f95..5f412ef5c3f 100644 --- a/lib/dml/oci_native_moodle_database.php +++ b/lib/dml/oci_native_moodle_database.php @@ -470,9 +470,8 @@ class oci_native_moodle_database extends moodle_database { public function get_columns($table, $usecache=true) { if ($usecache) { - $properties = array('dbfamily' => $this->get_dbfamily(), 'settings' => $this->get_settings_hash()); - $cache = cache::make('core', 'databasemeta', $properties); - if ($data = $cache->get($table)) { + $this->init_caches(); + if ($data = $this->metacache->get($table)) { return $data; } } @@ -664,7 +663,7 @@ class oci_native_moodle_database extends moodle_database { } if ($usecache) { - $result = $cache->set($table, $structure); + $result = $this->metacache->set($table, $structure); } return $structure; @@ -1722,6 +1721,10 @@ class oci_native_moodle_database extends moodle_database { } } + public function session_lock_supported() { + return true; + } + /** * Obtain session lock * @param int $rowid id of the row with session record diff --git a/lib/dml/pgsql_native_moodle_database.php b/lib/dml/pgsql_native_moodle_database.php index 7c9792ecf0c..3ae868d4eac 100644 --- a/lib/dml/pgsql_native_moodle_database.php +++ b/lib/dml/pgsql_native_moodle_database.php @@ -385,9 +385,8 @@ class pgsql_native_moodle_database extends moodle_database { */ public function get_columns($table, $usecache=true) { if ($usecache) { - $properties = array('dbfamily' => $this->get_dbfamily(), 'settings' => $this->get_settings_hash()); - $cache = cache::make('core', 'databasemeta', $properties); - if ($data = $cache->get($table)) { + $this->init_caches(); + if ($data = $this->metacache->get($table)) { return $data; } } @@ -570,7 +569,7 @@ class pgsql_native_moodle_database extends moodle_database { pg_free_result($result); if ($usecache) { - $result = $cache->set($table, $structure); + $result = $this->metacache->set($table, $structure); } return $structure; diff --git a/lib/dml/sqlite3_pdo_moodle_database.php b/lib/dml/sqlite3_pdo_moodle_database.php index d5a0080bc05..c71119700ea 100644 --- a/lib/dml/sqlite3_pdo_moodle_database.php +++ b/lib/dml/sqlite3_pdo_moodle_database.php @@ -201,9 +201,8 @@ class sqlite3_pdo_moodle_database extends pdo_moodle_database { public function get_columns($table, $usecache=true) { if ($usecache) { - $properties = array('dbfamily' => $this->get_dbfamily(), 'settings' => $this->get_settings_hash()); - $cache = cache::make('core', 'databasemeta', $properties); - if ($data = $cache->get($table)) { + $this->init_caches(); + if ($data = $this->metacache->get($table)) { return $data; } } @@ -300,7 +299,7 @@ class sqlite3_pdo_moodle_database extends pdo_moodle_database { } if ($usecache) { - $result = $cache->set($table, $structure); + $result = $this->metacache->set($table, $structure); } return $structure; diff --git a/lib/dml/sqlsrv_native_moodle_database.php b/lib/dml/sqlsrv_native_moodle_database.php index b939e9f9307..3d456970be4 100644 --- a/lib/dml/sqlsrv_native_moodle_database.php +++ b/lib/dml/sqlsrv_native_moodle_database.php @@ -462,9 +462,8 @@ class sqlsrv_native_moodle_database extends moodle_database { */ public function get_columns($table, $usecache = true) { if ($usecache) { - $properties = array('dbfamily' => $this->get_dbfamily(), 'settings' => $this->get_settings_hash()); - $cache = cache::make('core', 'databasemeta', $properties); - if ($data = $cache->get($table)) { + $this->init_caches(); + if ($data = $this->metacache->get($table)) { return $data; } } @@ -560,7 +559,7 @@ class sqlsrv_native_moodle_database extends moodle_database { $this->free_result($result); if ($usecache) { - $result = $cache->set($table, $structure); + $result = $this->metacache->set($table, $structure); } return $structure; diff --git a/lib/filelib.php b/lib/filelib.php index cf825852b83..8127f408497 100644 --- a/lib/filelib.php +++ b/lib/filelib.php @@ -2171,7 +2171,7 @@ function send_temp_file($path, $filename, $pathisstring=false) { } // close session - not needed anymore - session_get_instance()->write_close(); + \core\session\manager::write_close(); if (!$pathisstring) { if (!file_exists($path)) { @@ -2254,7 +2254,7 @@ function send_file($path, $filename, $lifetime = 'default' , $filter=0, $pathiss } } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. // Use given MIME type if specified, otherwise guess it using mimeinfo. // IE, Konqueror and Opera open html file directly in browser from web even when directed to save it to disk :-O @@ -2417,7 +2417,7 @@ function send_stored_file($stored_file, $lifetime=86400 , $filter=0, $forcedownl ignore_user_abort(true); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. // Use given MIME type if specified, otherwise guess it using mimeinfo. // IE, Konqueror and Opera open html file directly in browser from web even when directed to save it to disk :-O @@ -3918,7 +3918,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 60*60, 0, $forcedownload, array('preview' => $preview)); } else if ($filearea === 'feedback' and $context->contextlevel == CONTEXT_COURSE) { @@ -3935,7 +3935,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 60*60, 0, $forcedownload, array('preview' => $preview)); } else { send_file_not_found(); @@ -3956,7 +3956,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 60*60, 0, true, array('preview' => $preview)); } else { @@ -3978,14 +3978,14 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); + \core\session\manager::write_close(); send_stored_file($file, 60*60, 0, $forcedownload, array('preview' => $preview)); } else if ($filearea === 'userbadge' and $context->contextlevel == CONTEXT_USER) { if (!$file = $fs->get_file($context->id, 'badges', 'userbadge', $badge->id, '/', $filename.'.png')) { send_file_not_found(); } - session_get_instance()->write_close(); + \core\session\manager::write_close(); send_stored_file($file, 60*60, 0, true, array('preview' => $preview)); } // ======================================================================================================================== @@ -4012,7 +4012,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 60*60, 0, $forcedownload, array('preview' => $preview)); } else if ($filearea === 'event_description' and $context->contextlevel == CONTEXT_USER) { @@ -4040,7 +4040,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 60*60, 0, $forcedownload, array('preview' => $preview)); } else if ($filearea === 'event_description' and $context->contextlevel == CONTEXT_COURSE) { @@ -4087,7 +4087,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 60*60, 0, $forcedownload, array('preview' => $preview)); } else { @@ -4161,7 +4161,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 0, 0, true, array('preview' => $preview)); // must force download - security! } else if ($filearea === 'profile' and $context->contextlevel == CONTEXT_USER) { @@ -4208,7 +4208,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 0, 0, true, array('preview' => $preview)); // must force download - security! } else if ($filearea === 'profile' and $context->contextlevel == CONTEXT_COURSE) { @@ -4246,7 +4246,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 0, 0, true, array('preview' => $preview)); // must force download - security! } else if ($filearea === 'backup' and $context->contextlevel == CONTEXT_USER) { @@ -4267,7 +4267,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 0, 0, true, array('preview' => $preview)); // must force download - security! } else { @@ -4292,7 +4292,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 60*60, 0, $forcedownload, array('preview' => $preview)); } else { send_file_not_found(); @@ -4315,7 +4315,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 60*60, 0, $forcedownload, array('preview' => $preview)); } else if ($filearea === 'section') { @@ -4337,7 +4337,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 60*60, 0, $forcedownload, array('preview' => $preview)); } else { @@ -4369,7 +4369,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 60*60, 0, $forcedownload, array('preview' => $preview)); } else if ($filearea === 'icon') { @@ -4384,7 +4384,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { } } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 60*60, 0, false, array('preview' => $preview)); } else { @@ -4409,7 +4409,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 60*60, 0, $forcedownload, array('preview' => $preview)); } else { @@ -4428,7 +4428,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 0, 0, $forcedownload, array('preview' => $preview)); } else if ($filearea === 'section' and $context->contextlevel == CONTEXT_COURSE) { @@ -4443,7 +4443,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); + \core\session\manager::write_close(); send_stored_file($file, 60*60, 0, $forcedownload, array('preview' => $preview)); } else if ($filearea === 'activity' and $context->contextlevel == CONTEXT_MODULE) { @@ -4456,7 +4456,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); + \core\session\manager::write_close(); send_stored_file($file, 60*60, 0, $forcedownload, array('preview' => $preview)); } else if ($filearea === 'automated' and $context->contextlevel == CONTEXT_COURSE) { @@ -4471,7 +4471,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 0, 0, $forcedownload, array('preview' => $preview)); } else { @@ -4517,7 +4517,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) { send_file_not_found(); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 60*60, 0, $forcedownload, array('preview' => $preview)); } diff --git a/lib/installlib.php b/lib/installlib.php index f60605b1eef..40705f1006f 100644 --- a/lib/installlib.php +++ b/lib/installlib.php @@ -495,7 +495,7 @@ function install_cli_database(array $options, $interactive) { upgrade_finished(); // log in as admin - we need do anything when applying defaults - session_set_user(get_admin()); + \core\session\manager::set_user(get_admin()); // apply all default settings, do it twice to fill all defaults - some settings depend on other setting admin_apply_default_settings(NULL, true); diff --git a/lib/moodlelib.php b/lib/moodlelib.php index 92091ea16df..a7708cfabee 100644 --- a/lib/moodlelib.php +++ b/lib/moodlelib.php @@ -1582,7 +1582,7 @@ function get_users_from_config($value, $capability, $includeadmins = true) { * @return void */ function purge_all_caches() { - global $CFG; + global $CFG, $DB; reset_text_filters_cache(); js_reset_all_caches(); @@ -1597,6 +1597,7 @@ function purge_all_caches() { // Ignore exception since this function is also called before upgrade script when field course.cacherev does not exist yet. } + $DB->reset_caches(); cache_helper::purge_all(); // Purge all other caches: rss, simplepie, etc. @@ -2896,7 +2897,7 @@ function require_login($courseorid = null, $autologinguest = true, $cm = null, $ } // Loginas as redirection if needed. - if ($course->id != SITEID and session_is_loggedinas()) { + if ($course->id != SITEID and \core\session\manager::is_loggedinas()) { if ($USER->loginascontext->contextlevel == CONTEXT_COURSE) { if ($USER->loginascontext->instanceid != $course->id) { print_error('loginasonecourse', '', $CFG->wwwroot.'/course/view.php?id='.$USER->loginascontext->instanceid); @@ -2905,7 +2906,7 @@ function require_login($courseorid = null, $autologinguest = true, $cm = null, $ } // Check whether the user should be changing password (but only if it is REALLY them). - if (get_user_preferences('auth_forcepasswordchange') && !session_is_loggedinas()) { + if (get_user_preferences('auth_forcepasswordchange') && !\core\session\manager::is_loggedinas()) { $userauth = get_auth_plugin($USER->auth); if ($userauth->can_change_password() and !$preventredirect) { if ($setwantsurltome) { @@ -3013,9 +3014,9 @@ function require_login($courseorid = null, $autologinguest = true, $cm = null, $ if ($course->id == SITEID) { // Everybody is enrolled on the frontpage. } else { - if (session_is_loggedinas()) { + if (\core\session\manager::is_loggedinas()) { // Make sure the REAL person can access this course first. - $realuser = session_get_realuser(); + $realuser = \core\session\manager::get_realuser(); if (!is_enrolled($coursecontext, $realuser->id, '', true) and !is_viewing($coursecontext, $realuser->id) and !is_siteadmin($realuser->id)) { if ($preventredirect) { @@ -3147,26 +3148,39 @@ function require_login($courseorid = null, $autologinguest = true, $cm = null, $ * @category access */ function require_logout() { - global $USER; + global $USER, $DB; - if (isloggedin()) { - $authsequence = get_enabled_auth_plugins(); // Auths, in sequence. - foreach ($authsequence as $authname) { - $authplugin = get_auth_plugin($authname); - $authplugin->prelogout_hook(); - } + if (!isloggedin()) { + // This should not happen often, no need for hooks or events here. + \core\session\manager::terminate_current(); + return; } - $event = \core\event\user_loggedout::create( - array( - 'objectid' => $USER->id, - 'context' => context_user::instance($USER->id) - ) - ); - $event->trigger(); + // Execute hooks before action. + $authsequence = get_enabled_auth_plugins(); + foreach ($authsequence as $authname) { + $authplugin = get_auth_plugin($authname); + $authplugin->prelogout_hook(); + } - session_get_instance()->terminate_current(); - unset($GLOBALS['USER']); + // Store info that gets removed during logout. + $sid = session_id(); + $event = \core\event\user_loggedout::create( + array( + 'userid' => $USER->id, + 'objectid' => $USER->id, + 'other' => array('sessionid' => $sid), + ) + ); + if ($session = $DB->get_record('sessions', array('sid'=>$sid))) { + $event->add_record_snapshot('sessions', $session); + } + + // Delete session record and drop $_SESSION content. + \core\session\manager::terminate_current(); + + // Trigger event AFTER action. + $event->trigger(); } /** @@ -3271,7 +3285,7 @@ function require_user_key_login($script, $instance=null) { } // Extra safety. - @session_write_close(); + \core\session\manager::write_close(); $keyvalue = required_param('key', PARAM_ALPHANUM); @@ -3296,7 +3310,7 @@ function require_user_key_login($script, $instance=null) { // Emulate normal session. enrol_check_plugins($user); - session_set_user($user); + \core\session\manager::set_user($user); // Note we are not using normal login. if (!defined('USER_KEY_LOGIN')) { @@ -4154,7 +4168,7 @@ function delete_user(stdClass $user) { $DB->delete_records('user_private_key', array('userid' => $user->id)); // Force logout - may fail if file based sessions used, sorry. - session_kill_user($user->id); + \core\session\manager::kill_user_sessions($user->id); // Workaround for bulk deletes of users with the same email address. $delname = "$user->email.".time(); @@ -4386,15 +4400,7 @@ function authenticate_user_login($username, $password, $ignorelockout=false, &$f function complete_user_login($user) { global $CFG, $USER; - // Regenerate session id and delete old session, - // this helps prevent session fixation attacks from the same domain. - session_regenerate_id(true); - - // Let enrol plugins deal with new enrolments if necessary. - enrol_check_plugins($user); - - // Check enrolments, load caps and setup $USER object. - session_set_user($user); + \core\session\manager::login_user($user); // Reload preferences from DB. unset($USER->preference); @@ -4406,11 +4412,27 @@ function complete_user_login($user) { // Extra session prefs init. set_login_session_preferences(); + // Trigger login event. + $event = \core\event\user_loggedin::create( + array( + 'userid' => $USER->id, + 'objectid' => $USER->id, + 'other' => array('username' => $USER->username), + ) + ); + $event->add_record_snapshot('user', $user); + $event->trigger(); + if (isguestuser()) { // No need to continue when user is THE guest. return $USER; } + if (CLI_SCRIPT) { + // We can redirect to password change URL only in browser. + return $USER; + } + // Select password change url. $userauth = get_auth_plugin($USER->auth); @@ -8834,10 +8856,10 @@ function get_performance_info() { } // Display size of session if session started. - if (session_id()) { - $info['sessionsize'] = display_size(strlen(session_encode())); - $info['html'] .= 'Session: ' . $info['sessionsize'] . ' '; - $info['txt'] .= "Session: {$info['sessionsize']} "; + if ($si = \core\session\manager::get_performance_info()) { + $info['sessionsize'] = $si['size']; + $info['html'] .= $si['html']; + $info['txt'] .= $si['txt']; } if ($stats = cache_helper::get_stats()) { diff --git a/lib/navigationlib.php b/lib/navigationlib.php index bf958a61dcc..506d2d7cc32 100644 --- a/lib/navigationlib.php +++ b/lib/navigationlib.php @@ -3347,9 +3347,9 @@ class settings_navigation extends navigation_node { } // Check if the user is currently logged in as another user - if (session_is_loggedinas()) { + if (\core\session\manager::is_loggedinas()) { // Get the actual user, we need this so we can display an informative return link - $realuser = session_get_realuser(); + $realuser = \core\session\manager::get_realuser(); // Add the informative return to original user link $url = new moodle_url('/course/loginas.php',array('id'=>$this->page->course->id, 'return'=>1,'sesskey'=>sesskey())); $this->add(get_string('returntooriginaluser', 'moodle', fullname($realuser, true)), $url, self::TYPE_SETTING, null, null, new pix_icon('t/left', '')); @@ -4075,7 +4075,7 @@ class settings_navigation extends navigation_node { } // Change password link - if ($userauthplugin && $currentuser && !session_is_loggedinas() && !isguestuser() && has_capability('moodle/user:changeownpassword', $systemcontext) && $userauthplugin->can_change_password()) { + if ($userauthplugin && $currentuser && !\core\session\manager::is_loggedinas() && !isguestuser() && has_capability('moodle/user:changeownpassword', $systemcontext) && $userauthplugin->can_change_password()) { $passwordchangeurl = $userauthplugin->change_password_url(); if (empty($passwordchangeurl)) { $passwordchangeurl = new moodle_url('/login/change_password.php', array('id'=>$course->id)); @@ -4193,7 +4193,7 @@ class settings_navigation extends navigation_node { $reporttab->trim_if_empty(); // Login as ... - if (!$user->deleted and !$currentuser && !session_is_loggedinas() && has_capability('moodle/user:loginas', $coursecontext) && !is_siteadmin($user->id)) { + if (!$user->deleted and !$currentuser && !\core\session\manager::is_loggedinas() && has_capability('moodle/user:loginas', $coursecontext) && !is_siteadmin($user->id)) { $url = new moodle_url('/course/loginas.php', array('id'=>$course->id, 'user'=>$user->id, 'sesskey'=>sesskey())); $usersetting->add(get_string('loginas'), $url, self::TYPE_SETTING); } diff --git a/lib/outputrenderers.php b/lib/outputrenderers.php index 35173a8f641..15de22ba808 100644 --- a/lib/outputrenderers.php +++ b/lib/outputrenderers.php @@ -578,8 +578,8 @@ class core_renderer extends renderer_base { $loginpage = ((string)$this->page->url === get_login_url()); $course = $this->page->course; - if (session_is_loggedinas()) { - $realuser = session_get_realuser(); + if (\core\session\manager::is_loggedinas()) { + $realuser = \core\session\manager::get_realuser(); $fullname = fullname($realuser, true); if ($withlinks) { $loginastitle = get_string('loginas'); @@ -775,7 +775,7 @@ class core_renderer extends renderer_base { public function header() { global $USER, $CFG; - if (session_is_loggedinas()) { + if (\core\session\manager::is_loggedinas()) { $this->page->add_body_class('userloggedinas'); } diff --git a/lib/phpunit/classes/advanced_testcase.php b/lib/phpunit/classes/advanced_testcase.php index 4b60ec3a7c4..42d4dd3f577 100644 --- a/lib/phpunit/classes/advanced_testcase.php +++ b/lib/phpunit/classes/advanced_testcase.php @@ -422,7 +422,7 @@ abstract class advanced_testcase extends PHPUnit_Framework_TestCase { unset($user->access); unset($user->preference); - session_set_user($user); + \core\session\manager::set_user($user); } /** diff --git a/lib/phpunit/classes/util.php b/lib/phpunit/classes/util.php index a48f71daeef..b0c5bed6df4 100644 --- a/lib/phpunit/classes/util.php +++ b/lib/phpunit/classes/util.php @@ -191,7 +191,7 @@ class phpunit_util extends testing_util { $user = new stdClass(); $user->id = 0; $user->mnethostid = $CFG->mnet_localhost_id; - session_set_user($user); + \core\session\manager::set_user($user); // reset all static caches \core\event\manager::phpunit_reset(); diff --git a/lib/phpunit/tests/advanced_test.php b/lib/phpunit/tests/advanced_test.php index fba7d04ca2f..52328afe831 100644 --- a/lib/phpunit/tests/advanced_test.php +++ b/lib/phpunit/tests/advanced_test.php @@ -89,7 +89,7 @@ class core_phpunit_advanced_testcase extends advanced_testcase { $this->assertEquals(3, $_SESSION['USER']->id); $this->assertSame($_SESSION['USER'], $USER); - session_set_user($user); + \core\session\manager::set_user($user); $this->assertEquals(2, $USER->id); $this->assertEquals(2, $_SESSION['USER']->id); $this->assertSame($_SESSION['USER'], $USER); diff --git a/lib/sessionlib.php b/lib/sessionlib.php index 8063106df65..49b542da7bb 100644 --- a/lib/sessionlib.php +++ b/lib/sessionlib.php @@ -24,969 +24,6 @@ defined('MOODLE_INTERNAL') || die(); -if (!defined('SESSION_ACQUIRE_LOCK_TIMEOUT')) { - /** - * How much time to wait for session lock before displaying error (in seconds), - * 2 minutes by default should be a reasonable time before telling users to wait and refresh browser. - */ - define('SESSION_ACQUIRE_LOCK_TIMEOUT', 60*2); -} - -/** - * Factory method returning moodle_session object. - * @return moodle_session - */ -function session_get_instance() { - global $CFG, $DB; - - static $session = null; - - if (is_null($session)) { - if (!defined('NO_MOODLE_COOKIES') or empty($DB)) { - // Moodle was not initialised properly in lib/setup.php. - $session = new emergency_session(); - return $session; - } - - if (empty($CFG->sessiontimeout)) { - $CFG->sessiontimeout = 7200; - } - - try { - if (defined('SESSION_CUSTOM_CLASS')) { - // this is a hook for webservices, key based login, etc. - if (defined('SESSION_CUSTOM_FILE')) { - require_once($CFG->dirroot.SESSION_CUSTOM_FILE); - } - $session_class = SESSION_CUSTOM_CLASS; - $session = new $session_class(); - - } else if ((!isset($CFG->dbsessions) or $CFG->dbsessions) and $DB->session_lock_supported()) { - // default recommended session type - $session = new database_session(); - - } else { - // legacy limited file based storage - some features and auth plugins will not work, sorry - $session = new legacy_file_session(); - } - } catch (Exception $ex) { - // prevent repeated inits - $session = new emergency_session(); - throw $ex; - } - } - - return $session; -} - - -/** - * Moodle session abstraction - * - * @package core - * @subpackage session - * @copyright 2008 Petr Skoda {@link http://skodak.org} - * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later - */ -interface moodle_session { - /** - * Terminate current session - * @return void - */ - public function terminate_current(); - - /** - * No more changes in session expected. - * Unblocks the sessions, other scripts may start executing in parallel. - * @return void - */ - public function write_close(); - - /** - * Check for existing session with id $sid - * @param unknown_type $sid - * @return boolean true if session found. - */ - public function session_exists($sid); -} - - -/** - * Fallback session handler when standard session init fails. - * This prevents repeated attempts to init faulty handler. - * - * @package core - * @subpackage session - * @copyright 2011 Petr Skoda {@link http://skodak.org} - * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later - */ -class emergency_session implements moodle_session { - - public function __construct() { - // session not used at all - $_SESSION = array(); - $_SESSION['SESSION'] = new stdClass(); - $_SESSION['USER'] = new stdClass(); - } - - /** - * Terminate current session - * @return void - */ - public function terminate_current() { - return; - } - - /** - * No more changes in session expected. - * Unblocks the sessions, other scripts may start executing in parallel. - * @return void - */ - public function write_close() { - return; - } - - /** - * Check for existing session with id $sid - * @param unknown_type $sid - * @return boolean true if session found. - */ - public function session_exists($sid) { - return false; - } -} - - -/** - * Class handling all session and cookies related stuff. - * - * @package core - * @subpackage session - * @copyright 2009 Petr Skoda {@link http://skodak.org} - * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later - */ -abstract class session_stub implements moodle_session { - protected $justloggedout; - - public function __construct() { - global $CFG; - - if (NO_MOODLE_COOKIES) { - // session not used at all - $_SESSION = array(); - $_SESSION['SESSION'] = new stdClass(); - $_SESSION['USER'] = new stdClass(); - - } else { - $this->prepare_cookies(); - $this->init_session_storage(); - - $newsession = empty($_COOKIE['MoodleSession'.$CFG->sessioncookie]); - - ini_set('session.use_trans_sid', '0'); - - session_name('MoodleSession'.$CFG->sessioncookie); - session_set_cookie_params(0, $CFG->sessioncookiepath, $CFG->sessioncookiedomain, $CFG->cookiesecure, $CFG->cookiehttponly); - session_start(); - if (!isset($_SESSION['SESSION'])) { - $_SESSION['SESSION'] = new stdClass(); - if (!$newsession and !$this->justloggedout) { - $_SESSION['SESSION']->has_timed_out = true; - } - } - if (!isset($_SESSION['USER'])) { - $_SESSION['USER'] = new stdClass(); - } - } - - $this->check_user_initialised(); - - $this->check_security(); - } - - /** - * Terminate current session - * @return void - */ - public function terminate_current() { - global $CFG, $SESSION, $USER, $DB; - - try { - $DB->delete_records('external_tokens', array('sid'=>session_id(), 'tokentype'=>EXTERNAL_TOKEN_EMBEDDED)); - } catch (Exception $ignored) { - // probably install/upgrade - ignore this problem - } - - if (NO_MOODLE_COOKIES) { - return; - } - - // Initialize variable to pass-by-reference to headers_sent(&$file, &$line) - $_SESSION = array(); - $_SESSION['SESSION'] = new stdClass(); - $_SESSION['USER'] = new stdClass(); - $_SESSION['USER']->id = 0; - if (isset($CFG->mnet_localhost_id)) { - $_SESSION['USER']->mnethostid = $CFG->mnet_localhost_id; - } - $SESSION = $_SESSION['SESSION']; // this may not work properly - $USER = $_SESSION['USER']; // this may not work properly - - $file = null; - $line = null; - if (headers_sent($file, $line)) { - error_log('Can not terminate session properly - headers were already sent in file: '.$file.' on line '.$line); - } - - // now let's try to get a new session id and delete the old one - $this->justloggedout = true; - session_regenerate_id(true); - $this->justloggedout = false; - - // write the new session - session_write_close(); - } - - /** - * No more changes in session expected. - * Unblocks the sessions, other scripts may start executing in parallel. - * @return void - */ - public function write_close() { - if (NO_MOODLE_COOKIES) { - return; - } - - session_write_close(); - } - - /** - * Initialise $USER object, handles google access - * and sets up not logged in user properly. - * - * @return void - */ - protected function check_user_initialised() { - global $CFG; - - if (isset($_SESSION['USER']->id)) { - // already set up $USER - return; - } - - $user = null; - - if (!empty($CFG->opentogoogle) and !NO_MOODLE_COOKIES) { - if (is_web_crawler()) { - $user = guest_user(); - } - if (!empty($CFG->guestloginbutton) and !$user and !empty($_SERVER['HTTP_REFERER'])) { - // automaticaly log in users coming from search engine results - if (strpos($_SERVER['HTTP_REFERER'], 'google') !== false ) { - $user = guest_user(); - } else if (strpos($_SERVER['HTTP_REFERER'], 'altavista') !== false ) { - $user = guest_user(); - } - } - } - - if (!$user) { - $user = new stdClass(); - $user->id = 0; // to enable proper function of $CFG->notloggedinroleid hack - if (isset($CFG->mnet_localhost_id)) { - $user->mnethostid = $CFG->mnet_localhost_id; - } else { - $user->mnethostid = 1; - } - } - session_set_user($user); - } - - /** - * Does various session security checks - * @global void - */ - protected function check_security() { - global $CFG; - - if (NO_MOODLE_COOKIES) { - return; - } - - if (!empty($_SESSION['USER']->id) and !empty($CFG->tracksessionip)) { - /// Make sure current IP matches the one for this session - $remoteaddr = getremoteaddr(); - - if (empty($_SESSION['USER']->sessionip)) { - $_SESSION['USER']->sessionip = $remoteaddr; - } - - if ($_SESSION['USER']->sessionip != $remoteaddr) { - // this is a security feature - terminate the session in case of any doubt - $this->terminate_current(); - print_error('sessionipnomatch2', 'error'); - } - } - } - - /** - * Prepare cookies and various system settings - */ - protected function prepare_cookies() { - global $CFG; - - if (!isset($CFG->cookiesecure) or (strpos($CFG->wwwroot, 'https://') !== 0 and empty($CFG->sslproxy))) { - $CFG->cookiesecure = 0; - } - - if (!isset($CFG->cookiehttponly)) { - $CFG->cookiehttponly = 0; - } - - /// Set sessioncookie and sessioncookiepath variable if it isn't already - if (!isset($CFG->sessioncookie)) { - $CFG->sessioncookie = ''; - } - - // make sure cookie domain makes sense for this wwwroot - if (!isset($CFG->sessioncookiedomain)) { - $CFG->sessioncookiedomain = ''; - } else if ($CFG->sessioncookiedomain !== '') { - $host = parse_url($CFG->wwwroot, PHP_URL_HOST); - if ($CFG->sessioncookiedomain !== $host) { - if (substr($CFG->sessioncookiedomain, 0, 1) === '.') { - if (!preg_match('|^.*'.preg_quote($CFG->sessioncookiedomain, '|').'$|', $host)) { - // invalid domain - it must be end part of host - $CFG->sessioncookiedomain = ''; - } - } else { - if (!preg_match('|^.*\.'.preg_quote($CFG->sessioncookiedomain, '|').'$|', $host)) { - // invalid domain - it must be end part of host - $CFG->sessioncookiedomain = ''; - } - } - } - } - - // make sure the cookiepath is valid for this wwwroot or autodetect if not specified - if (!isset($CFG->sessioncookiepath)) { - $CFG->sessioncookiepath = ''; - } - if ($CFG->sessioncookiepath !== '/') { - $path = parse_url($CFG->wwwroot, PHP_URL_PATH).'/'; - if ($CFG->sessioncookiepath === '') { - $CFG->sessioncookiepath = $path; - } else { - if (strpos($path, $CFG->sessioncookiepath) !== 0 or substr($CFG->sessioncookiepath, -1) !== '/') { - $CFG->sessioncookiepath = $path; - } - } - } - - //discard session ID from POST, GET and globals to tighten security, - //this is session fixation prevention - unset(${'MoodleSession'.$CFG->sessioncookie}); - unset($_GET['MoodleSession'.$CFG->sessioncookie]); - unset($_POST['MoodleSession'.$CFG->sessioncookie]); - unset($_REQUEST['MoodleSession'.$CFG->sessioncookie]); - - //compatibility hack for Moodle Cron, cookies not deleted, but set to "deleted" - should not be needed with NO_MOODLE_COOKIES in cron.php now - if (!empty($_COOKIE['MoodleSession'.$CFG->sessioncookie]) && $_COOKIE['MoodleSession'.$CFG->sessioncookie] == "deleted") { - unset($_COOKIE['MoodleSession'.$CFG->sessioncookie]); - } - } - - /** - * Init session storage. - */ - protected abstract function init_session_storage(); -} - - -/** - * Legacy moodle sessions stored in files, not recommended any more. - * - * @package core - * @subpackage session - * @copyright 2009 Petr Skoda {@link http://skodak.org} - * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later - */ -class legacy_file_session extends session_stub { - /** - * Init session storage. - */ - protected function init_session_storage() { - global $CFG; - - ini_set('session.save_handler', 'files'); - - // Some distros disable GC by setting probability to 0 - // overriding the PHP default of 1 - // (gc_probability is divided by gc_divisor, which defaults to 1000) - if (ini_get('session.gc_probability') == 0) { - ini_set('session.gc_probability', 1); - } - - ini_set('session.gc_maxlifetime', $CFG->sessiontimeout); - - // make sure sessions dir exists and is writable, throws exception if not - make_upload_directory('sessions'); - - // Need to disable debugging since disk_free_space() - // will fail on very large partitions (see MDL-19222) - $freespace = @disk_free_space($CFG->dataroot.'/sessions'); - if (!($freespace > 2048) and $freespace !== false) { - print_error('sessiondiskfull', 'error'); - } - ini_set('session.save_path', $CFG->dataroot .'/sessions'); - } - /** - * Check for existing session with id $sid - * @param unknown_type $sid - * @return boolean true if session found. - */ - public function session_exists($sid){ - global $CFG; - - $sid = clean_param($sid, PARAM_FILE); - $sessionfile = "$CFG->dataroot/sessions/sess_$sid"; - return file_exists($sessionfile); - } -} - - -/** - * Recommended moodle session storage. - * - * @package core - * @subpackage session - * @copyright 2009 Petr Skoda {@link http://skodak.org} - * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later - */ -class database_session extends session_stub { - /** @var stdClass $record session record */ - protected $record = null; - - /** @var moodle_database $database session database */ - protected $database = null; - - /** @var bool $failed session read/init failed, do not write back to DB */ - protected $failed = false; - - /** @var string hash of the session data content */ - protected $lasthash = null; - - public function __construct() { - global $DB; - $this->database = $DB; - parent::__construct(); - - if (!empty($this->record->state)) { - // something is very wrong - session_kill($this->record->sid); - - if ($this->record->state == 9) { - print_error('dbsessionmysqlpacketsize', 'error'); - } - } - } - - /** - * Check for existing session with id $sid - * @param string $sid - * @return boolean true if session found. - */ - public function session_exists($sid){ - global $CFG; - try { - $sql = "SELECT * FROM {sessions} WHERE timemodified < ? AND sid=? AND state=?"; - $params = array(time() + $CFG->sessiontimeout, $sid, 0); - - return $this->database->record_exists_sql($sql, $params); - } catch (dml_exception $ex) { - error_log('Error checking existance of database session'); - return false; - } - } - - /** - * Init session storage. - */ - protected function init_session_storage() { - global $CFG; - - // gc only from CRON - individual user timeouts now checked during each access - ini_set('session.gc_probability', 0); - - ini_set('session.gc_maxlifetime', $CFG->sessiontimeout); - - $result = session_set_save_handler(array($this, 'handler_open'), - array($this, 'handler_close'), - array($this, 'handler_read'), - array($this, 'handler_write'), - array($this, 'handler_destroy'), - array($this, 'handler_gc')); - if (!$result) { - print_error('dbsessionhandlerproblem', 'error'); - } - } - - /** - * Open session handler - * - * {@see http://php.net/manual/en/function.session-set-save-handler.php} - * - * @param string $save_path - * @param string $session_name - * @return bool success - */ - public function handler_open($save_path, $session_name) { - return true; - } - - /** - * Close session handler - * - * {@see http://php.net/manual/en/function.session-set-save-handler.php} - * - * @return bool success - */ - public function handler_close() { - if (isset($this->record->id)) { - try { - $this->database->release_session_lock($this->record->id); - } catch (Exception $ex) { - // ignore any problems - } - } - $this->record = null; - return true; - } - - /** - * Read session handler - * - * {@see http://php.net/manual/en/function.session-set-save-handler.php} - * - * @param string $sid - * @return string - */ - public function handler_read($sid) { - global $CFG; - - if ($this->record and $this->record->sid != $sid) { - error_log('Weird error reading database session - mismatched sid'); - $this->failed = true; - return ''; - } - - try { - // Do not fetch full record yet, wait until it is locked. - if (!$record = $this->database->get_record('sessions', array('sid'=>$sid), 'id, userid')) { - $record = new stdClass(); - $record->state = 0; - $record->sid = $sid; - $record->sessdata = null; - $record->userid = 0; - $record->timecreated = $record->timemodified = time(); - $record->firstip = $record->lastip = getremoteaddr(); - $record->id = $this->database->insert_record_raw('sessions', $record); - } - } catch (Exception $ex) { - // do not rethrow exceptions here, we need this to work somehow before 1.9.x upgrade and during install - error_log('Can not read or insert database sessions'); - $this->failed = true; - return ''; - } - - try { - if (!empty($CFG->sessionlockloggedinonly) and (isguestuser($record->userid) or empty($record->userid))) { - // No session locking for guests and not-logged-in users, - // these users mostly read stuff, there should not be any major - // session race conditions. Hopefully they do not access other - // pages while being logged-in. - } else { - $this->database->get_session_lock($record->id, SESSION_ACQUIRE_LOCK_TIMEOUT); - } - } catch (Exception $ex) { - // This is a fatal error, better inform users. - // It should not happen very often - all pages that need long time to execute - // should close session soon after access control checks - error_log('Can not obtain session lock'); - $this->failed = true; - throw $ex; - } - - // Finally read the full session data because we know we have the lock now. - if (!$record = $this->database->get_record('sessions', array('id'=>$record->id))) { - error_log('Cannot read session record'); - $this->failed = true; - return ''; - } - - // verify timeout - if ($record->timemodified + $CFG->sessiontimeout < time()) { - $ignoretimeout = false; - if (!empty($record->userid)) { // skips not logged in - if ($user = $this->database->get_record('user', array('id'=>$record->userid))) { - - // Refresh session if logged as a guest - if (isguestuser($user)) { - $ignoretimeout = true; - } else { - $authsequence = get_enabled_auth_plugins(); // auths, in sequence - foreach($authsequence as $authname) { - $authplugin = get_auth_plugin($authname); - if ($authplugin->ignore_timeout_hook($user, $record->sid, $record->timecreated, $record->timemodified)) { - $ignoretimeout = true; - break; - } - } - } - } - } - if ($ignoretimeout) { - //refresh session - $record->timemodified = time(); - try { - $this->database->update_record('sessions', $record); - } catch (Exception $ex) { - // very unlikely error - error_log('Can not refresh database session'); - $this->failed = true; - throw $ex; - } - } else { - //time out session - $record->state = 0; - $record->sessdata = null; - $record->userid = 0; - $record->timecreated = $record->timemodified = time(); - $record->firstip = $record->lastip = getremoteaddr(); - try { - $this->database->update_record('sessions', $record); - } catch (Exception $ex) { - // very unlikely error - error_log('Can not time out database session'); - $this->failed = true; - throw $ex; - } - } - } - - if (is_null($record->sessdata)) { - $data = ''; - $this->lasthash = sha1(''); - } else { - $data = base64_decode($record->sessdata); - $this->lasthash = sha1($record->sessdata); - } - - unset($record->sessdata); // conserve memory - $this->record = $record; - - return $data; - } - - /** - * Write session handler. - * - * {@see http://php.net/manual/en/function.session-set-save-handler.php} - * - * NOTE: Do not write to output or throw any exceptions! - * Hopefully the next page is going to display nice error or it recovers... - * - * @param string $sid - * @param string $session_data - * @return bool success - */ - public function handler_write($sid, $session_data) { - global $USER; - - // TODO: MDL-20625 we need to rollback all active transactions and log error if any open needed - - if ($this->failed) { - // do not write anything back - we failed to start the session properly - return false; - } - - $userid = 0; - if (!empty($USER->realuser)) { - $userid = $USER->realuser; - } else if (!empty($USER->id)) { - $userid = $USER->id; - } - - if (isset($this->record->id)) { - $data = base64_encode($session_data); // There might be some binary mess :-( - - // Skip db update if nothing changed, - // do not update the timemodified each second. - $hash = sha1($data); - if ($this->lasthash === $hash - and $this->record->userid == $userid - and (time() - $this->record->timemodified < 20) - and $this->record->lastip == getremoteaddr() - ) { - // No need to update anything! - return true; - } - - $this->record->sessdata = $data; - $this->record->userid = $userid; - $this->record->timemodified = time(); - $this->record->lastip = getremoteaddr(); - - try { - $this->database->update_record_raw('sessions', $this->record); - $this->lasthash = $hash; - } catch (dml_exception $ex) { - if ($this->database->get_dbfamily() === 'mysql') { - try { - $this->database->set_field('sessions', 'state', 9, array('id'=>$this->record->id)); - } catch (Exception $ignored) { - } - error_log('Can not write database session - please verify max_allowed_packet is at least 4M!'); - } else { - error_log('Can not write database session'); - } - return false; - } catch (Exception $ex) { - error_log('Can not write database session'); - return false; - } - - } else { - // fresh new session - try { - $record = new stdClass(); - $record->state = 0; - $record->sid = $sid; - $record->sessdata = base64_encode($session_data); // there might be some binary mess :-( - $record->userid = $userid; - $record->timecreated = $record->timemodified = time(); - $record->firstip = $record->lastip = getremoteaddr(); - $record->id = $this->database->insert_record_raw('sessions', $record); - - $this->record = $this->database->get_record('sessions', array('id'=>$record->id)); - $this->lasthash = sha1($record->sessdata); - - $this->database->get_session_lock($this->record->id, SESSION_ACQUIRE_LOCK_TIMEOUT); - } catch (Exception $ex) { - // this should not happen - error_log('Can not write new database session or acquire session lock'); - $this->failed = true; - return false; - } - } - - return true; - } - - /** - * Destroy session handler - * - * {@see http://php.net/manual/en/function.session-set-save-handler.php} - * - * @param string $sid - * @return bool success - */ - public function handler_destroy($sid) { - session_kill($sid); - - if (isset($this->record->id) and $this->record->sid === $sid) { - try { - $this->database->release_session_lock($this->record->id); - } catch (Exception $ex) { - // ignore problems - } - $this->record = null; - } - - $this->lasthash = null; - - return true; - } - - /** - * GC session handler - * - * {@see http://php.net/manual/en/function.session-set-save-handler.php} - * - * @param int $ignored_maxlifetime moodle uses special timeout rules - * @return bool success - */ - public function handler_gc($ignored_maxlifetime) { - session_gc(); - return true; - } -} - - -/** - * returns true if legacy session used. - * @return bool true if legacy(==file) based session used - */ -function session_is_legacy() { - global $CFG, $DB; - return ((isset($CFG->dbsessions) and !$CFG->dbsessions) or !$DB->session_lock_supported()); -} - -/** - * Terminates all sessions, auth hooks are not executed. - * Useful in upgrade scripts. - */ -function session_kill_all() { - global $CFG, $DB; - - // always check db table - custom session classes use sessions table - try { - $DB->delete_records('sessions'); - } catch (dml_exception $ignored) { - // do not show any warnings - might be during upgrade/installation - } - - if (session_is_legacy()) { - $sessiondir = "$CFG->dataroot/sessions"; - if (is_dir($sessiondir)) { - foreach (glob("$sessiondir/sess_*") as $filename) { - @unlink($filename); - } - } - } -} - -/** - * Mark session as accessed, prevents timeouts. - * @param string $sid - */ -function session_touch($sid) { - global $CFG, $DB; - - // always check db table - custom session classes use sessions table - try { - $sql = "UPDATE {sessions} SET timemodified=? WHERE sid=?"; - $params = array(time(), $sid); - $DB->execute($sql, $params); - } catch (dml_exception $ignored) { - // do not show any warnings - might be during upgrade/installation - } - - if (session_is_legacy()) { - $sid = clean_param($sid, PARAM_FILE); - $sessionfile = clean_param("$CFG->dataroot/sessions/sess_$sid", PARAM_FILE); - if (file_exists($sessionfile)) { - // if the file is locked it means that it will be updated anyway - @touch($sessionfile); - } - } -} - -/** - * Terminates one sessions, auth hooks are not executed. - * - * @param string $sid session id - */ -function session_kill($sid) { - global $CFG, $DB; - - // always check db table - custom session classes use sessions table - try { - $DB->delete_records('sessions', array('sid'=>$sid)); - } catch (dml_exception $ignored) { - // do not show any warnings - might be during upgrade/installation - } - - if (session_is_legacy()) { - $sid = clean_param($sid, PARAM_FILE); - $sessionfile = "$CFG->dataroot/sessions/sess_$sid"; - if (file_exists($sessionfile)) { - @unlink($sessionfile); - } - } -} - -/** - * Terminates all sessions of one user, auth hooks are not executed. - * NOTE: This can not work for file based sessions! - * - * @param int $userid user id - */ -function session_kill_user($userid) { - global $CFG, $DB; - - // always check db table - custom session classes use sessions table - try { - $DB->delete_records('sessions', array('userid'=>$userid)); - } catch (dml_exception $ignored) { - // do not show any warnings - might be during upgrade/installation - } - - if (session_is_legacy()) { - // log error? - } -} - -/** - * Session garbage collection - * - verify timeout for all users - * - kill sessions of all deleted users - * - kill sessions of users with disabled plugins or 'nologin' plugin - * - * NOTE: this can not work when legacy file sessions used! - */ -function session_gc() { - global $CFG, $DB; - - $maxlifetime = $CFG->sessiontimeout; - - try { - /// kill all sessions of deleted users - $DB->delete_records_select('sessions', "userid IN (SELECT id FROM {user} WHERE deleted <> 0)"); - - /// kill sessions of users with disabled plugins - $auth_sequence = get_enabled_auth_plugins(true); - $auth_sequence = array_flip($auth_sequence); - unset($auth_sequence['nologin']); // no login allowed - $auth_sequence = array_flip($auth_sequence); - $notplugins = null; - list($notplugins, $params) = $DB->get_in_or_equal($auth_sequence, SQL_PARAMS_QM, '', false); - $DB->delete_records_select('sessions', "userid IN (SELECT id FROM {user} WHERE auth $notplugins)", $params); - - /// now get a list of time-out candidates - $sql = "SELECT u.*, s.sid, s.timecreated AS s_timecreated, s.timemodified AS s_timemodified - FROM {user} u - JOIN {sessions} s ON s.userid = u.id - WHERE s.timemodified + ? < ? AND u.id <> ?"; - $params = array($maxlifetime, time(), $CFG->siteguest); - - $authplugins = array(); - foreach($auth_sequence as $authname) { - $authplugins[$authname] = get_auth_plugin($authname); - } - $rs = $DB->get_recordset_sql($sql, $params); - foreach ($rs as $user) { - foreach ($authplugins as $authplugin) { - if ($authplugin->ignore_timeout_hook($user, $user->sid, $user->s_timecreated, $user->s_timemodified)) { - continue; - } - } - $DB->delete_records('sessions', array('sid'=>$user->sid)); - } - $rs->close(); - - // Extending the timeout period for guest sessions as they are renewed. - $purgebefore = time() - $maxlifetime; - $purgebeforeguests = time() - ($maxlifetime * 5); - - // delete expired sessions for guest user account - $DB->delete_records_select('sessions', 'userid = ? AND timemodified < ?', array($CFG->siteguest, $purgebeforeguests)); - // delete expired sessions for userid = 0 (not logged in) - $DB->delete_records_select('sessions', 'userid = 0 AND timemodified < ?', array($purgebefore)); - } catch (dml_exception $ex) { - error_log('Error gc-ing sessions'); - } -} /** * Makes sure that $USER->sesskey exists, if $USER itself exists. It sets a new sesskey @@ -1110,95 +147,6 @@ function get_moodle_cookie() { } } - -/** - * Setup $USER object - called during login, loginas, etc. - * - * Call sync_user_enrolments() manually after log-in, or log-in-as. - * - * @param stdClass $user full user record object - * @return void - */ -function session_set_user($user) { - $_SESSION['USER'] = $user; - unset($_SESSION['USER']->description); // conserve memory - if (isset($_SESSION['USER']->lang)) { - // Make sure it is a valid lang pack name. - $_SESSION['USER']->lang = clean_param($_SESSION['USER']->lang, PARAM_LANG); - } - sesskey(); // init session key - - if (PHPUNIT_TEST || defined('BEHAT_TEST')) { - // phpunit tests use reversed reference - global $USER; - $USER = $_SESSION['USER']; - $_SESSION['USER'] =& $USER; - } -} - -/** - * Is current $USER logged-in-as somebody else? - * @return bool - */ -function session_is_loggedinas() { - return !empty($_SESSION['USER']->realuser); -} - -/** - * Returns the $USER object ignoring current login-as session - * @return stdClass user object - */ -function session_get_realuser() { - if (session_is_loggedinas()) { - return $_SESSION['REALUSER']; - } else { - return $_SESSION['USER']; - } -} - -/** - * Login as another user - no security checks here. - * @param int $userid - * @param stdClass $context - * @return void - */ -function session_loginas($userid, $context) { - global $USER; - - if (session_is_loggedinas()) { - return; - } - - // Switch to fresh new $SESSION. - $_SESSION['REALSESSION'] = $_SESSION['SESSION']; - $_SESSION['SESSION'] = new stdClass(); - - /// Create the new $USER object with all details and reload needed capabilities - $_SESSION['REALUSER'] = $_SESSION['USER']; - $user = get_complete_user_data('id', $userid); - $user->realuser = $_SESSION['REALUSER']->id; - $user->loginascontext = $context; - - // Let enrol plugins deal with new enrolments if necessary. - enrol_check_plugins($user); - - // Create event before $USER is updated. - $event = \core\event\user_loggedinas::create( - array( - 'objectid' => $USER->id, - 'context' => $context, - 'relateduserid' => $userid, - 'other' => array( - 'originalusername' => fullname($USER, true), - 'loggedinasusername' => fullname($user, true) - ) - ) - ); - // Set up global $USER. - session_set_user($user); - $event->trigger(); -} - /** * Sets up current user and course environment (lang, etc.) in cron. * Do not use outside of cron script! @@ -1226,13 +174,13 @@ function cron_setup_user($user = NULL, $course = NULL) { if (!$user) { // cached default cron user (==modified admin for now) - session_set_user($cronuser); + \core\session\manager::set_user($cronuser); $_SESSION['SESSION'] = $cronsession; } else { // emulate real user session - needed for caps in cron if ($_SESSION['USER']->id != $user->id) { - session_set_user($user); + \core\session\manager::set_user($user); $_SESSION['SESSION'] = new stdClass(); } } diff --git a/lib/setup.php b/lib/setup.php index ecf49176559..4c7600a1a2d 100644 --- a/lib/setup.php +++ b/lib/setup.php @@ -728,7 +728,7 @@ if (!defined('SYSCONTEXTID')) { // Defining the site - aka frontpage course try { $SITE = get_site(); -} catch (dml_exception $e) { +} catch (moodle_exception $e) { $SITE = null; if (empty($CFG->version)) { $SITE = new stdClass(); @@ -760,8 +760,11 @@ if (CLI_SCRIPT) { } } -// start session and prepare global $SESSION, $USER -session_get_instance(); +// Start session and prepare global $SESSION, $USER. +if (empty($CFG->sessiontimeout)) { + $CFG->sessiontimeout = 7200; +} +\core\session\manager::start(); $SESSION = &$_SESSION['SESSION']; $USER = &$_SESSION['USER']; @@ -848,7 +851,7 @@ if (!empty($CFG->debugvalidators) and !empty($CFG->guestloginbutton)) { } else { $user = guest_user(); } - session_set_user($user); + \core\session\manager::set_user($user); } } } @@ -867,8 +870,8 @@ if ($USER && function_exists('apache_note') $apachelog_name = clean_filename($USER->firstname . " " . $USER->lastname); } - if (session_is_loggedinas()) { - $realuser = session_get_realuser(); + if (\core\session\manager::is_loggedinas()) { + $realuser = \core\session\manager::get_realuser(); $apachelog_username = clean_filename($realuser->username." as ".$apachelog_username); $apachelog_name = clean_filename($realuser->firstname." ".$realuser->lastname ." as ".$apachelog_name); $apachelog_userid = clean_filename($realuser->id." as ".$apachelog_userid); diff --git a/lib/setuplib.php b/lib/setuplib.php index 906ead52a6c..fcbad372157 100644 --- a/lib/setuplib.php +++ b/lib/setuplib.php @@ -1165,7 +1165,7 @@ function redirect_if_major_upgrade_required() { if (empty($CFG->version) or (float)$CFG->version < $lastmajordbchanges or during_initial_install() or !empty($CFG->adminsetuppending)) { try { - @session_get_instance()->terminate_current(); + @\core\session\manager::terminate_current(); } catch (Exception $e) { // Ignore any errors, redirect to upgrade anyway. } diff --git a/lib/tests/authlib_test.php b/lib/tests/authlib_test.php index 851b14106d3..2abcd82d96e 100644 --- a/lib/tests/authlib_test.php +++ b/lib/tests/authlib_test.php @@ -185,26 +185,6 @@ class core_authlib_testcase extends advanced_testcase { ini_set('error_log', $oldlog); } - public function test_user_loggedin_event() { - global $USER; - $this->resetAfterTest(true); - $this->setAdminUser(); - - $sink = $this->redirectEvents(); - $user = clone($USER); - login_attempt_valid($user); - $events = $sink->get_events(); - $sink->close(); - - $this->assertCount(1, $events); - $event = reset($events); - $this->assertInstanceOf('\core\event\user_loggedin', $event); - $this->assertEquals('user', $event->objecttable); - $this->assertEquals('2', $event->objectid); - $this->assertEquals(context_system::instance()->id, $event->contextid); - $this->assertEquals($user, $event->get_record_snapshot('user', 2)); - } - public function test_user_loggedin_event_exceptions() { try { $event = \core\event\user_loggedin::create(array('objectid' => 1)); diff --git a/lib/tests/behat/behat_hooks.php b/lib/tests/behat/behat_hooks.php index b0e17e3b7eb..08e64a2df03 100644 --- a/lib/tests/behat/behat_hooks.php +++ b/lib/tests/behat/behat_hooks.php @@ -176,7 +176,7 @@ class behat_hooks extends behat_base { // Assing valid data to admin user (some generator-related code needs a valid user). $user = $DB->get_record('user', array('username' => 'admin')); - session_set_user($user); + \core\session\manager::set_user($user); // Reset the browser if specified in config.php. if (!empty($CFG->behat_restart_browser_after) && $this->running_javascript()) { diff --git a/lib/tests/moodlelib_test.php b/lib/tests/moodlelib_test.php index 2a70acc1c17..4ef9da68073 100644 --- a/lib/tests/moodlelib_test.php +++ b/lib/tests/moodlelib_test.php @@ -2422,6 +2422,30 @@ class core_moodlelib_testcase extends advanced_testcase { $this->assertEquals($expectedarray, order_in_string($valuearray, $formatstring)); } + public function test_complete_user_login() { + global $USER; + + $this->resetAfterTest(); + $user = $this->getDataGenerator()->create_user(); + $this->setUser(0); + + $sink = $this->redirectEvents(); + @complete_user_login($user); // Hide session header errors. + $this->assertEquals($user->id, $USER->id); + $events = $sink->get_events(); + $sink->close(); + + $this->assertCount(2, $events); + $event = $events[0]; + $this->assertInstanceOf('\core\event\user_updated', $event); + $event = $events[1]; + $this->assertInstanceOf('\core\event\user_loggedin', $event); + $this->assertEquals('user', $event->objecttable); + $this->assertEquals($user->id, $event->objectid); + $this->assertEquals(context_system::instance()->id, $event->contextid); + $this->assertEquals($user, $event->get_record_snapshot('user', $user->id)); + } + /** * Test require_logout. */ @@ -2429,7 +2453,6 @@ class core_moodlelib_testcase extends advanced_testcase { $this->resetAfterTest(); $user = $this->getDataGenerator()->create_user(); $this->setUser($user); - $course = $this->getDataGenerator()->create_course(); $this->assertTrue(isloggedin()); diff --git a/lib/tests/session_manager_test.php b/lib/tests/session_manager_test.php new file mode 100644 index 00000000000..d964b9c459d --- /dev/null +++ b/lib/tests/session_manager_test.php @@ -0,0 +1,374 @@ +. + +/** + * Unit tests for session manager class. + * + * @package core + * @category phpunit + * @copyright 2013 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +/** + * Unit tests for session manager class. + * + * @package core + * @category phpunit + * @copyright 2013 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class core_session_manager_testcase extends advanced_testcase { + public function test_start() { + $this->resetAfterTest(); + // Session must be started only once... + \core\session\manager::start(); + $this->assertDebuggingCalled('Session was already started!', DEBUG_DEVELOPER); + } + + public function test_set_user() { + global $USER; + $this->resetAfterTest(); + + $user = $this->getDataGenerator()->create_user(); + $this->setUser(0); + $this->assertEquals(0, $USER->id); + + \core\session\manager::set_user($user); + $this->assertEquals($user->id, $USER->id); + } + + public function test_login_user() { + global $USER; + $this->resetAfterTest(); + + $user = $this->getDataGenerator()->create_user(); + $this->setUser(0); + $this->assertEquals(0, $USER->id); + + @\core\session\manager::login_user($user); // Ignore header error messages. + $this->assertEquals($user->id, $USER->id); + } + + public function test_terminate_current() { + global $USER; + $this->resetAfterTest(); + + // This can not be tested much without real session... + $this->setAdminUser(); + \core\session\manager::terminate_current(); + $this->assertEquals(0, $USER->id); + } + + public function test_write_close() { + global $USER; + $this->resetAfterTest(); + + // Just make sure no errors and $USER->id is kept + $this->setAdminUser(); + $userid = $USER->id; + \core\session\manager::write_close(); + $this->assertSame($userid, $USER->id); + } + + public function test_session_exists() { + global $CFG; + $this->resetAfterTest(); + + // The file handler is used by default, so let's fake the data somehow. + $sid = md5('hokus'); + mkdir("$CFG->dataroot/sessions/", $CFG->directorypermissions, true); + touch("$CFG->dataroot/sessions/sess_$sid"); + + $this->assertTrue(\core\session\manager::session_exists($sid)); + } + + public function test_touch_session() { + global $DB; + $this->resetAfterTest(); + + $sid = md5('hokus'); + $record = new \stdClass(); + $record->state = 0; + $record->sid = $sid; + $record->sessdata = null; + $record->userid = 2; + $record->timecreated = time() - 60*60; + $record->timemodified = time() - 30; + $record->firstip = $record->lastip = '10.0.0.1'; + $record->id = $DB->insert_record('sessions', $record); + + $now = time(); + \core\session\manager::touch_session($sid); + $updated = $DB->get_field('sessions', 'timemodified', array('id'=>$record->id)); + + $this->assertGreaterThanOrEqual($now, $updated); + $this->assertLessThanOrEqual(time(), $updated); + } + + public function test_kill_session() { + global $DB, $USER; + $this->resetAfterTest(); + + $this->setAdminUser(); + $userid = $USER->id; + + $sid = md5('hokus'); + $record = new \stdClass(); + $record->state = 0; + $record->sid = $sid; + $record->sessdata = null; + $record->userid = $userid; + $record->timecreated = time() - 60*60; + $record->timemodified = time() - 30; + $record->firstip = $record->lastip = '10.0.0.1'; + $DB->insert_record('sessions', $record); + + $record->userid = 0; + $record->sid = md5('pokus'); + $DB->insert_record('sessions', $record); + + $this->assertEquals(2, $DB->count_records('sessions')); + + \core\session\manager::kill_session($sid); + + $this->assertEquals(1, $DB->count_records('sessions')); + $this->assertFalse($DB->record_exists('sessions', array('sid'=>$sid))); + + $this->assertSame($userid, $USER->id); + } + + public function test_kill_user_sessions() { + global $DB, $USER; + $this->resetAfterTest(); + + $this->setAdminUser(); + $userid = $USER->id; + + $sid = md5('hokus'); + $record = new \stdClass(); + $record->state = 0; + $record->sid = $sid; + $record->sessdata = null; + $record->userid = $userid; + $record->timecreated = time() - 60*60; + $record->timemodified = time() - 30; + $record->firstip = $record->lastip = '10.0.0.1'; + $DB->insert_record('sessions', $record); + + $record->sid = md5('hokus2'); + $DB->insert_record('sessions', $record); + + $record->userid = 0; + $record->sid = md5('pokus'); + $DB->insert_record('sessions', $record); + + $this->assertEquals(3, $DB->count_records('sessions')); + + \core\session\manager::kill_user_sessions($userid); + + $this->assertEquals(1, $DB->count_records('sessions')); + $this->assertFalse($DB->record_exists('sessions', array('userid'=>$userid))); + } + + public function test_kill_all_sessions() { + global $DB, $USER; + $this->resetAfterTest(); + + $this->setAdminUser(); + $userid = $USER->id; + + $sid = md5('hokus'); + $record = new \stdClass(); + $record->state = 0; + $record->sid = $sid; + $record->sessdata = null; + $record->userid = $userid; + $record->timecreated = time() - 60*60; + $record->timemodified = time() - 30; + $record->firstip = $record->lastip = '10.0.0.1'; + $DB->insert_record('sessions', $record); + + $record->sid = md5('hokus2'); + $DB->insert_record('sessions', $record); + + $record->userid = 0; + $record->sid = md5('pokus'); + $DB->insert_record('sessions', $record); + + $this->assertEquals(3, $DB->count_records('sessions')); + + \core\session\manager::kill_all_sessions(); + + $this->assertEquals(0, $DB->count_records('sessions')); + $this->assertSame(0, $USER->id); + } + + public function test_gc() { + global $CFG, $DB, $USER; + $this->resetAfterTest(); + + $this->setAdminUser(); + $adminid = $USER->id; + $this->setGuestUser(); + $guestid = $USER->id; + $this->setUser(0); + + $CFG->sessiontimeout = 60*10; + + $record = new \stdClass(); + $record->state = 0; + $record->sid = md5('hokus1'); + $record->sessdata = null; + $record->userid = $adminid; + $record->timecreated = time() - 60*60; + $record->timemodified = time() - 30; + $record->firstip = $record->lastip = '10.0.0.1'; + $r1 = $DB->insert_record('sessions', $record); + + $record->sid = md5('hokus2'); + $record->userid = $adminid; + $record->timecreated = time() - 60*60; + $record->timemodified = time() - 60*20; + $r2 = $DB->insert_record('sessions', $record); + + $record->sid = md5('hokus3'); + $record->userid = $guestid; + $record->timecreated = time() - 60*60*60; + $record->timemodified = time() - 60*20; + $r3 = $DB->insert_record('sessions', $record); + + $record->sid = md5('hokus4'); + $record->userid = $guestid; + $record->timecreated = time() - 60*60*60; + $record->timemodified = time() - 60*10*5 - 60; + $r4 = $DB->insert_record('sessions', $record); + + $record->sid = md5('hokus5'); + $record->userid = 0; + $record->timecreated = time() - 60*5; + $record->timemodified = time() - 60*5; + $r5 = $DB->insert_record('sessions', $record); + + $record->sid = md5('hokus6'); + $record->userid = 0; + $record->timecreated = time() - 60*60; + $record->timemodified = time() - 60*10 -10; + $r6 = $DB->insert_record('sessions', $record); + + $record->sid = md5('hokus7'); + $record->userid = 0; + $record->timecreated = time() - 60*60; + $record->timemodified = time() - 60*9; + $r7 = $DB->insert_record('sessions', $record); + + \core\session\manager::gc(); + + $this->assertTrue($DB->record_exists('sessions', array('id'=>$r1))); + $this->assertFalse($DB->record_exists('sessions', array('id'=>$r2))); + $this->assertTrue($DB->record_exists('sessions', array('id'=>$r3))); + $this->assertFalse($DB->record_exists('sessions', array('id'=>$r4))); + $this->assertFalse($DB->record_exists('sessions', array('id'=>$r5))); + $this->assertFalse($DB->record_exists('sessions', array('id'=>$r6))); + $this->assertTrue($DB->record_exists('sessions', array('id'=>$r7))); + } + + /** + * Test loginas. + * @copyright 2103 Rajesh Taneja + */ + public function test_loginas() { + global $USER; + $this->resetAfterTest(); + + // Set current user as Admin user and save it for later use. + $this->setAdminUser(); + $adminuser = $USER; + + // Create a new user and try admin loginas this user. + $user = $this->getDataGenerator()->create_user(); + \core\session\manager::loginas($user->id, context_system::instance()); + + $this->assertSame($user->id, $USER->id); + $this->assertSame(context_system::instance(), $USER->loginascontext); + $this->assertSame($adminuser->id, $USER->realuser); + + // Set user as current user and login as admin user in course context. + $this->setUser($user); + $this->assertNotEquals($adminuser->id, $USER->id); + $course = $this->getDataGenerator()->create_course(); + $coursecontext = context_course::instance($course->id); + + // Catch event triggered. + $sink = $this->redirectEvents(); + \core\session\manager::loginas($adminuser->id, $coursecontext); + $events = $sink->get_events(); + $sink->close(); + $event = array_pop($events); + + $this->assertSame($adminuser->id, $USER->id); + $this->assertSame($coursecontext, $USER->loginascontext); + $this->assertSame($user->id, $USER->realuser); + + // Test event captured has proper information. + $this->assertInstanceOf('\core\event\user_loggedinas', $event); + $this->assertSame($user->id, $event->objectid); + $this->assertSame($adminuser->id, $event->relateduserid); + $this->assertSame($course->id, $event->courseid); + $this->assertEquals($coursecontext, $event->get_context()); + $oldfullname = fullname($user, true); + $newfullname = fullname($adminuser, true); + $expectedlogdata = array($course->id, "course", "loginas", "../user/view.php?id=$course->id&user=$user->id", "$oldfullname -> $newfullname"); + $this->assertEventLegacyLogData($expectedlogdata, $event); + } + + public function test_is_loggedinas() { + $this->resetAfterTest(); + + $user1 = $this->getDataGenerator()->create_user(); + $user2 = $this->getDataGenerator()->create_user(); + + $this->assertFalse(\core\session\manager::is_loggedinas()); + + $this->setUser($user1); + \core\session\manager::loginas($user2->id, context_system::instance()); + + $this->assertTrue(\core\session\manager::is_loggedinas()); + } + + public function test_get_realuser() { + $this->resetAfterTest(); + + $user1 = $this->getDataGenerator()->create_user(); + $user2 = $this->getDataGenerator()->create_user(); + + $this->setUser($user1); + \core\session\manager::loginas($user2->id, context_system::instance()); + + $real = \core\session\manager::get_realuser(); + + unset($real->password); + unset($real->description); + unset($real->sesskey); + unset($user1->password); + unset($user1->description); + unset($user1->sesskey); + + $this->assertEquals($real, $user1); + } +} diff --git a/lib/tests/sessionlib_test.php b/lib/tests/sessionlib_test.php deleted file mode 100644 index 5f3b0329199..00000000000 --- a/lib/tests/sessionlib_test.php +++ /dev/null @@ -1,88 +0,0 @@ -. - -/** - * Unit tests for (some of) ../sessionlib.php. - * - * @package core_session - * @category phpunit - * @copyright 2103 Rajesh Taneja - * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later - */ - -defined('MOODLE_INTERNAL') || die(); - -global $CFG; -require_once($CFG->libdir . '/sessionlib.php'); - -/** - * Unit tests for (some of) ../sessionlib.php. - * - * @package core_session - * @category phpunit - * @copyright 2103 Rajesh Taneja - * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later - */ -class core_sessionlib_testcase extends advanced_testcase { - - /** - * Test session_loginas. - */ - public function test_session_loginas() { - global $USER; - $this->resetAfterTest(); - - // Set current user as Admin user and save it for later use. - $this->setAdminUser(); - $adminuser = $USER; - - // Create a new user and try admin loginas this user. - $user = $this->getDataGenerator()->create_user(); - session_loginas($user->id, context_system::instance()); - - $this->assertSame($user->id, $USER->id); - $this->assertSame(context_system::instance(), $USER->loginascontext); - $this->assertSame($adminuser->id, $USER->realuser); - - // Set user as current user and login as admin user in course context. - $this->setUser($user); - $this->assertNotEquals($adminuser->id, $USER->id); - $course = $this->getDataGenerator()->create_course(); - $coursecontext = context_course::instance($course->id); - - // Catch event triggred. - $sink = $this->redirectEvents(); - session_loginas($adminuser->id, $coursecontext); - $events = $sink->get_events(); - $sink->close(); - $event = array_pop($events); - - $this->assertSame($adminuser->id, $USER->id); - $this->assertSame($coursecontext, $USER->loginascontext); - $this->assertSame($user->id, $USER->realuser); - - // Test event captured has proper information. - $this->assertInstanceOf('\core\event\user_loggedinas', $event); - $this->assertSame($user->id, $event->objectid); - $this->assertSame($adminuser->id, $event->relateduserid); - $this->assertSame($course->id, $event->courseid); - $this->assertEquals($coursecontext, $event->get_context()); - $oldfullname = fullname($user, true); - $newfullname = fullname($adminuser, true); - $expectedlogdata = array($course->id, "course", "loginas", "../user/view.php?id=$course->id&user=$user->id", "$oldfullname -> $newfullname"); - $this->assertEventLegacyLogData($expectedlogdata, $event); - } -} diff --git a/lib/upgrade.txt b/lib/upgrade.txt index ae667267642..62d2037706e 100644 --- a/lib/upgrade.txt +++ b/lib/upgrade.txt @@ -110,6 +110,18 @@ Misc: * course_modinfo::build_section_cache() -> (no replacement) * generate_email_supportuser() -> core_user::get_support_user() +Sessions: + * session_get_instance()->xxx() -> \core\session\manager::xxx() + * session_kill_all() -> \core\session\manager::kill_all_sessions() + * session_touch() -> \core\session\manager::touch_session() + * session_kill() -> \core\session\manager::kill_session() + * session_kill_user() -> \core\session\manager::kill_user_sessions() + * session_gc() -> \core\session\manager::gc() + * session_set_user() -> \core\session\manager::set_user() + * session_is_loggedinas() -> \core\session\manager::is_loggedinas() + * session_get_realuser() -> \core\session\manager::get_realuser() + * session_loginas() -> \core\session\manager::loginas() + User-agent related functions: * check_browser_operating_system() -> core_useragent::check_browser_operating_system() * check_browser_version() -> core_useragent::check_browser_version() diff --git a/lib/weblib.php b/lib/weblib.php index fdde141ad5f..20e99973f02 100644 --- a/lib/weblib.php +++ b/lib/weblib.php @@ -2588,12 +2588,11 @@ function redirect($url, $message='', $delay=-1) { } } - if ($delay == 0 && !$debugdisableredirect && !headers_sent()) { - // Workaround for IIS bug http://support.microsoft.com/kb/q176113/. - if (session_id()) { - session_get_instance()->write_close(); - } + // Make sure the session is closed properly, this prevents problems in IIS + // and also some potential PHP shutdown issues. + \core\session\manager::write_close(); + if ($delay == 0 && !$debugdisableredirect && !headers_sent()) { // 302 might not work for POST requests, 303 is ignored by obsolete clients. @header($_SERVER['SERVER_PROTOCOL'] . ' 303 See Other'); @header('Location: '.$url); diff --git a/login/change_password.php b/login/change_password.php index 73f0e8e5b19..88a7cf50fb4 100644 --- a/login/change_password.php +++ b/login/change_password.php @@ -73,7 +73,7 @@ if (!get_user_preferences('auth_forcepasswordchange', false)) { } // do not allow "Logged in as" users to change any passwords -if (session_is_loggedinas()) { +if (\core\session\manager::is_loggedinas()) { print_error('cannotcallscript'); } diff --git a/login/token.php b/login/token.php index 412b24725e8..9fd88b069ef 100644 --- a/login/token.php +++ b/login/token.php @@ -68,7 +68,7 @@ if (!empty($user)) { enrol_check_plugins($user); // setup user session to check capability - session_set_user($user); + \core\session\manager::set_user($user); //check if the service exists and is enabled $service = $DB->get_record('external_services', array('shortname' => $serviceshortname, 'enabled' => 1)); @@ -116,8 +116,7 @@ if (!empty($user)) { $unsettoken = false; //if sid is set then there must be a valid associated session no matter the token type if (!empty($token->sid)) { - $session = session_get_instance(); - if (!$session->session_exists($token->sid)){ + if (!\core\session\manager::session_exists($token->sid)){ //this token will never be valid anymore, delete it $DB->delete_records('external_tokens', array('sid'=>$token->sid)); $unsettoken = true; diff --git a/mod/assignment/type/online/assignment.class.php b/mod/assignment/type/online/assignment.class.php index 63c436728d1..8888caa1c06 100644 --- a/mod/assignment/type/online/assignment.class.php +++ b/mod/assignment/type/online/assignment.class.php @@ -420,7 +420,7 @@ class assignment_online extends assignment_base { send_file_not_found(); } - session_get_instance()->write_close(); // unlock session during fileserving + \core\session\manager::write_close(); // Unlock session during file serving. send_stored_file($file, 60*60, 0, true, $options); } diff --git a/mod/chat/chat_ajax.php b/mod/chat/chat_ajax.php index d9e6b374829..8de18fc949c 100644 --- a/mod/chat/chat_ajax.php +++ b/mod/chat/chat_ajax.php @@ -68,7 +68,7 @@ case 'init': break; case 'chat': - session_get_instance()->write_close(); + \core\session\manager::write_close(); chat_delete_old_users(); $chat_message = clean_text($chat_message, FORMAT_MOODLE); diff --git a/mod/chat/gui_header_js/insert.php b/mod/chat/gui_header_js/insert.php index 6b842d2977b..0573fcf3472 100644 --- a/mod/chat/gui_header_js/insert.php +++ b/mod/chat/gui_header_js/insert.php @@ -30,7 +30,7 @@ if (isguestuser()) { print_error('noguests'); } -session_get_instance()->write_close(); +\core\session\manager::write_close(); /// Delete old users now diff --git a/mod/quiz/report/overview/report.php b/mod/quiz/report/overview/report.php index 38bb483a769..5f62bc12c57 100644 --- a/mod/quiz/report/overview/report.php +++ b/mod/quiz/report/overview/report.php @@ -320,7 +320,7 @@ class quiz_overview_report extends quiz_attempts_report { * Unlock the session and allow the regrading process to run in the background. */ protected function unlock_session() { - session_get_instance()->write_close(); + \core\session\manager::write_close(); ignore_user_abort(true); } diff --git a/report/log/index.php b/report/log/index.php index 6468d0427e1..ad946395b75 100644 --- a/report/log/index.php +++ b/report/log/index.php @@ -135,7 +135,7 @@ $adminediting = optional_param('adminedit', -1, PARAM_BOOL); if ($PAGE->user_allowed_editing() && $adminediting != -1) { $USER->editing = $adminediting; } -session_get_instance()->write_close(); +\core\session\manager::write_close(); if (!empty($chooselog)) { $userinfo = get_string('allparticipants'); diff --git a/report/loglive/index.php b/report/loglive/index.php index 90e3eb90671..7bb84d82a52 100644 --- a/report/loglive/index.php +++ b/report/loglive/index.php @@ -46,7 +46,7 @@ require_capability('report/loglive:view', $context); $strlivelogs = get_string('livelogs', 'report_loglive'); if ($inpopup) { - session_get_instance()->write_close(); + \core\session\manager::write_close(); $date = time() - 3600; diff --git a/repository/lib.php b/repository/lib.php index 276c0e9edb0..4231205b0ac 100644 --- a/repository/lib.php +++ b/repository/lib.php @@ -743,7 +743,7 @@ abstract class repository implements cacheable_object { $repocontext = context::instance_by_id($this->instance->contextid); // Prevent access to private repositories when logged in as. - if ($can && session_is_loggedinas()) { + if ($can && \core\session\manager::is_loggedinas()) { if ($this->contains_private_data() || $repocontext->contextlevel == CONTEXT_USER) { $can = false; } diff --git a/repository/tests/repositorylib_test.php b/repository/tests/repositorylib_test.php index 3d41ab0f8a9..fefb6bec4aa 100644 --- a/repository/tests/repositorylib_test.php +++ b/repository/tests/repositorylib_test.php @@ -436,7 +436,7 @@ class core_repositorylib_testcase extends advanced_testcase { $userrepo = repository::get_repository_by_id($user1repoid, $syscontext); $this->setAdminUser(); - session_loginas($user1->id, $syscontext); + \core\session\manager::loginas($user1->id, $syscontext); // Logged in as, I cannot view a user instance. $caughtexception = false; diff --git a/rss/file.php b/rss/file.php index 6d7dbc03042..cdd6f8971d6 100644 --- a/rss/file.php +++ b/rss/file.php @@ -128,7 +128,7 @@ $user = get_complete_user_data('id', $userid); // let enrol plugins deal with new enrolments if necessary enrol_check_plugins($user); -session_set_user($user); //for login and capability checks +\core\session\manager::set_user($user); //for login and capability checks try { $autologinguest = true; diff --git a/theme/mymobile/renderers.php b/theme/mymobile/renderers.php index 2969e972d2e..fa812698944 100644 --- a/theme/mymobile/renderers.php +++ b/theme/mymobile/renderers.php @@ -307,8 +307,8 @@ class theme_mymobile_core_renderer extends core_renderer { $course = $this->page->course; - if (session_is_loggedinas()) { - $realuser = session_get_realuser(); + if (\core\session\manager::is_loggedinas()) { + $realuser = \core\session\manager::get_realuser(); $fullname = fullname($realuser, true); $realuserinfo = " [wwwroot/course/loginas.php?id=$course->id&sesskey=".sesskey()."\">$fullname] "; } else { @@ -386,8 +386,8 @@ class theme_mymobile_core_renderer extends core_renderer { $loginpage = ((string)$this->page->url === get_login_url()); $course = $this->page->course; - if (session_is_loggedinas()) { - $realuser = session_get_realuser(); + if (\core\session\manager::is_loggedinas()) { + $realuser = \core\session\manager::get_realuser(); $fullname = fullname($realuser, true); $realuserinfo = ' [$fullname] '; } else { @@ -628,7 +628,7 @@ class theme_mymobile_core_renderer extends core_renderer { public function header() { global $USER, $CFG; - if (session_is_loggedinas()) { + if (\core\session\manager::is_loggedinas()) { $this->page->add_body_class('userloggedinas'); } diff --git a/user/editadvanced.php b/user/editadvanced.php index 9728bbdcc81..924ebb1a12f 100644 --- a/user/editadvanced.php +++ b/user/editadvanced.php @@ -200,7 +200,7 @@ if ($usernew = $userform->get_data()) { // force logout if user just suspended if (isset($usernew->suspended) and $usernew->suspended and !$user->suspended) { - session_kill_user($user->id); + \core\session\manager::kill_user_sessions($user->id); } } @@ -255,7 +255,7 @@ if ($usernew = $userform->get_data()) { redirect("$CFG->wwwroot/user/view.php?id=$USER->id&course=$course->id"); } } else { - session_gc(); // remove stale sessions + \core\session\manager::gc(); // Remove stale sessions. redirect("$CFG->wwwroot/$CFG->admin/user.php"); } //never reached diff --git a/user/index.php b/user/index.php index 8130981ae6f..c6029b1cee1 100644 --- a/user/index.php +++ b/user/index.php @@ -673,7 +673,7 @@ $links[] = html_writer::link(new moodle_url('/course/user.php?id='. $course->id .'&user='. $user->id), get_string('activity')); } - if ($USER->id != $user->id && !session_is_loggedinas() && has_capability('moodle/user:loginas', $context) && !is_siteadmin($user->id)) { + if ($USER->id != $user->id && !\core\session\manager::is_loggedinas() && has_capability('moodle/user:loginas', $context) && !is_siteadmin($user->id)) { $links[] = html_writer::link(new moodle_url('/course/loginas.php?id='. $course->id .'&user='. $user->id .'&sesskey='. sesskey()), get_string('loginas')); } diff --git a/webservice/lib.php b/webservice/lib.php index 8e1898f9327..1723d723740 100644 --- a/webservice/lib.php +++ b/webservice/lib.php @@ -90,12 +90,11 @@ class webservice { enrol_check_plugins($user); // setup user session to check capability - session_set_user($user); + \core\session\manager::set_user($user); //assumes that if sid is set then there must be a valid associated session no matter the token type if ($token->sid) { - $session = session_get_instance(); - if (!$session->session_exists($token->sid)) { + if (!\core\session\manager::session_exists($token->sid)) { $DB->delete_records('external_tokens', array('sid' => $token->sid)); throw new webservice_access_exception('Invalid session based token - session not found or expired'); } @@ -905,7 +904,7 @@ abstract class webservice_server implements webservice_server_interface { // now fake user login, the session is completely empty too enrol_check_plugins($user); - session_set_user($user); + \core\session\manager::set_user($user); $this->userid = $user->id; if ($this->authmethod != WEBSERVICE_AUTHMETHOD_SESSION_TOKEN && !has_capability("webservice/$this->wsname:use", $this->restricted_context)) { @@ -936,8 +935,7 @@ abstract class webservice_server implements webservice_server_interface { } if ($token->sid){//assumes that if sid is set then there must be a valid associated session no matter the token type - $session = session_get_instance(); - if (!$session->session_exists($token->sid)){ + if (!\core\session\manager::session_exists($token->sid)){ $DB->delete_records('external_tokens', array('sid'=>$token->sid)); throw new webservice_access_exception('Invalid session based token - session not found or expired'); } From 64bf9dbc3016ff77e7548153d44e4043b45c0965 Mon Sep 17 00:00:00 2001 From: Mary Evans Date: Sun, 22 Sep 2013 15:11:39 +0100 Subject: [PATCH 042/101] MDL-35217 theme_afterburner: reduce size of sideblocks in Afterburner and make into fully responsive design. Squashed commit of the following: commit 8871ed6a5ca3f3ecbf6d9c20ebe5a9badcfe0fef Author: Mary Evans Date: Sun Sep 22 14:57:18 2013 +0100 MDL-35217 theme_afterburner: Added styles to block and course page editing icons. Adjusted @media styles in syyle/responsive.css. commit 6ee5035b77f4e6fb10fc14b4d18e70ab5b8cb174 Author: Mary Evans Date: Mon Sep 16 02:09:01 2013 +0100 MDL-35217 theme_afterbuener: Fix for first docked block top-margin reduced to zero. commit fc6a3fbf9267d778b8f85af0c73f6628890ccbc4 Author: Mary Evans Date: Mon Sep 16 01:23:21 2013 +0100 MDL-35217_M26 theme_afterburner: Improvment to make Afterburner fully responsive. This commit builds on the work already commited by Richard Olemann. commit f7a750a90d40d60e965485b2a3fcb112b5e2bd80 Author: roelmann Date: Thu Sep 12 15:55:46 2013 +0100 wip-MDL_35217-afterburner: Reduce sidebar widths, make layout responsive, hide logo on small screens --- theme/afterburner/config.php | 1 + .../afterburner/style/afterburner_blocks.css | 51 ++- theme/afterburner/style/afterburner_dock.css | 2 +- theme/afterburner/style/afterburner_menu.css | 393 +++++++++--------- .../style/afterburner_pagelayout.css | 27 +- .../style/afterburner_responsive.css | 153 +++++++ .../afterburner/style/afterburner_styles.css | 4 +- 7 files changed, 414 insertions(+), 217 deletions(-) create mode 100644 theme/afterburner/style/afterburner_responsive.css diff --git a/theme/afterburner/config.php b/theme/afterburner/config.php index 473cb4c3000..fe0673f9165 100644 --- a/theme/afterburner/config.php +++ b/theme/afterburner/config.php @@ -13,6 +13,7 @@ $THEME->sheets = array( 'afterburner_calendar', 'afterburner_dock', 'afterburner_rtl', + 'afterburner_responsive', 'afterburner_settings', ); diff --git a/theme/afterburner/style/afterburner_blocks.css b/theme/afterburner/style/afterburner_blocks.css index 003a145e9f3..ffc29659686 100644 --- a/theme/afterburner/style/afterburner_blocks.css +++ b/theme/afterburner/style/afterburner_blocks.css @@ -53,7 +53,8 @@ Block } .block-region .invisible { opacity: 0.5; - filter: alpha(opacity=50); + -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; /** must come first! **/ + filter: alpha(opacity=50); /** must come second! **/ } .block .block-hider-show, .block .block-hider-hide { @@ -77,9 +78,7 @@ Block list-style-type: none; } .block-region li { - padding: 0 0 20px 0; -} -.block-region li ul { + padding: 0; } .block-region li li { margin: 0 20px 0 10px; @@ -91,7 +90,7 @@ Block width: 100%; } .block .header div.commands { - margin-left: 10px; + margin-left: 0; } #region-pre .block .header { background:url([[pix:theme|images/light3]]) 0 -136px repeat-x; @@ -152,4 +151,46 @@ Block left:0px; bottom: 0px; position:absolute; +} +/* COMMAND ICONS +-----------------------*/ +img.iconsmall, +.block.block_with_controls div.header div.commands a img, +.block-control-actions span.moodle-core-dragdrop-draghandle img, +.course-content ul.topics li.section .right img, +.course-content ul.topics li.section .left img { + height:15px; + margin:2px; + width:15px; + background-color: #eee; + border: 1px solid #aaa; + padding:1px; + -webkit-border-radius:5px; + -moz-border-radius: 5px; + border-radius: 5px; +} +.course-content ul.topics li.section .right img.spacer, +.course-content ul.topics li.section .left img.spacer { + height: 1px; + margin: 0; + width: 1px; + background: none; + border: 0 none; + padding: 0; + border-radius: 0; +} +.block .header .commands { + text-align: center; +} +.block-control-actions span.moodle-core-dragdrop-draghandle { + position: relative; + top: 5px; +} +.moodle-actionmenu.show[data-enhanced] .menu a { + color: #333333; + display: block; + padding: 2px 0.5em; +} +.moodle-actionmenu.show[data-enhanced] .menu { + left: 0; } \ No newline at end of file diff --git a/theme/afterburner/style/afterburner_dock.css b/theme/afterburner/style/afterburner_dock.css index 3d75263725f..2d25526f0ad 100644 --- a/theme/afterburner/style/afterburner_dock.css +++ b/theme/afterburner/style/afterburner_dock.css @@ -14,7 +14,7 @@ Docking Module display:none; } #dock .dockeditem.firstdockitem { - margin-top: 2.3em; + margin-top: 0; -webkit-border-top-right-radius: 6px; -moz-border-radius-topright: 6px; border-top-right-radius: 6px; diff --git a/theme/afterburner/style/afterburner_menu.css b/theme/afterburner/style/afterburner_menu.css index 264b3e7fb72..f4782191aab 100644 --- a/theme/afterburner/style/afterburner_menu.css +++ b/theme/afterburner/style/afterburner_menu.css @@ -1,196 +1,199 @@ -/* Custom Menu --------------------------- */ -#custommenu { - width: 100%; - margin: 0; - padding: 0; - clear:both; - height: 30px; - background: #888; - margin:0; -} -#custommenu ul li { - border-right: 1px solid #777; - border-left: 1px solid #999 -} -/* -Dropdown Menu - CSS from DeCaf Theme by Lei Zhang --------------------------------------------------*/ -ul.dropdown span.customitem { - padding:0; - border:0; - width: 100%; -} -ul.dropdown span.customitem { - padding:0; - width: 100%; -} -ul.dropdown li a, -ul.dropdown span.customitem a { - padding:6px 20px; -} -ul.dropdown span.customitem a:hover { - border: 0; -} -#custommenu ul.dropdown ul { - padding:0; - width:auto; -} -#custommenu ul.dropdown ul a { - padding:4px 18px; -} -#custommenu ul.dropdown > li span a { - height:16px; -} -ul.dropdown, -ul.dropdown li, -ul.dropdown ul { - list-style:none; - margin:0; - padding:0; -} -ul.dropdown { - position:relative; - top:0px; - z-index:597; - float:left; - font:13px "Trebuchet MS",Arial,Helvetica,sans-serif; -} -ul.dropdown li { - float:left; - line-height:1.3em; - vertical-align:middle; - background-color:transparent; - color:#fff; - zoom:1 !important; -} -ul.dropdown li.hover, -ul.dropdown li:hover { - position:relative; - z-index:599; - cursor:default; -} -ul.dropdown ul { - visibility:hidden; - position:absolute; - top:100%;z-index:598; - left:0; - right:auto; - margin-top: -1px; - font:100% "Trebuchet MS",Arial,Helvetica,sans-serif; -} -ul.dropdown ul li { - float:none; - background-color: #34637f; - border-width: 1px; - border-style: solid; - border-color: #477C9B #34637f #295770; - padding:0; -} -ul.dropdown ul ul { - top:0; - right:auto; - left:100%; - margin-top:0; - border-top:none; - border-left:none; - font-weight:400; -} -ul.dropdown li:hover > ul { - visibility:visible; -} -ul.dropdown span, -ul.dropdown span a, -ul.dropdown li.clickable-with-children > a { - background-color: #34637f; - width:auto; - padding:2px 6px 4px 20px; - color: #fff; -} -ul.dropdown ul span, -ul.dropdown ul span a, -ul.dropdown ul li.clickable-with-children > a { - background-color:#34637f; - background-image: url([[pix:theme|menu/nav-arrow-right]]); - background-position:100% 50%; - background-repeat:no-repeat; - color: #fff; -} -ul.dropdown ul ul span, -ul.dropdown ul ul span a, -ul.dropdown ul ul li.clickable-with-children > a { - background-color:#34637f; - background-image: url([[pix:theme|menu/nav-arrow-right]]); - background-position:100% 50%; - background-repeat:no-repeat; - color: #fff; -} -ul.dropdown a:link, ul.dropdown a:visited { - color: white; - text-decoration: none; -} -ul.dropdown a:hover { - border:0; - background-color: #fff; - color: #036; -} -ul.dropdown ul ul li { - background-color: #34637f; -} -ul.dropdown ul ul ul li { - background-color: #34637f; -} -ul.dropdown li a, -ul.dropdown span, -ul.dropdown span a { - border: none; - background-color: transparent; -} -ul.dropdown ul li a, -ul.dropdown ul span, -ul.dropdown ul span a { - border: 0; -} -ul.dropdown ul ul li a, -ul.dropdown ul ul span, -ul.dropdown ul ul span a { - border:0 -} -ul.dropdown ul ul ul li a, -ul.dropdown ul ul ul span, -ul.dropdown ul ul ul span a { - border:0; -} -ul.dropdown a,ul.dropdown span{ - display:block; -} -ul.dropdown ul a { - width:166px; - padding:2px 0 4px 5px; -} -ul.dropdown ul a.open:hover { - background-color: #fff; - color:#036; -} -ul.dropdown ul li:hover > span, -ul.dropdown ul li:hover > span a { - background-color:#fff; - background-image:url([[pix:theme|menu/nav-arrowover-right]]); - color: #036; -} -ul.dropdown li.clickable-with-children:hover > a { - background-image:url([[pix:theme|menu/nav-arrowover-right]]); -} -ul.dropdown *.open, -ul.dropdown li:hover > span, -ul.dropdown li:hover > span a { - background-color:#fff; - color: #036; -} -ul.dropdown ul ul *.open, -ul.dropdown ul ul li:hover > span, -ul.dropdown ul ul li:hover > span a { - background-color:#fff; - background-image:url([[pix:theme|menu/nav-arrowover-right]]); - color:#036; +@media screen and (min-width: 768px) { + + /* Custom Menu + -------------------------- */ + #custommenu { + width: 100%; + margin: 0; + padding: 0; + clear:both; + height: 30px; + background: #888; + margin:0; + } + #custommenu ul li { + border-right: 1px solid #777; + border-left: 1px solid #999 + } + /* + Dropdown Menu - CSS from DeCaf Theme by Lei Zhang + -------------------------------------------------*/ + ul.dropdown span.customitem { + padding:0; + border:0; + width: 100%; + } + ul.dropdown span.customitem { + padding:0; + width: 100%; + } + ul.dropdown li a, + ul.dropdown span.customitem a { + padding:6px 20px; + } + ul.dropdown span.customitem a:hover { + border: 0; + } + #custommenu ul.dropdown ul { + padding:0; + width:auto; + } + #custommenu ul.dropdown ul a { + padding:4px 18px; + } + #custommenu ul.dropdown > li span a { + height:16px; + } + ul.dropdown, + ul.dropdown li, + ul.dropdown ul { + list-style:none; + margin:0; + padding:0; + } + ul.dropdown { + position:relative; + top:0px; + z-index:597; + float:left; + font:13px "Trebuchet MS",Arial,Helvetica,sans-serif; + } + ul.dropdown li { + float:left; + line-height:1.3em; + vertical-align:middle; + background-color:transparent; + color:#fff; + zoom:1 !important; + } + ul.dropdown li.hover, + ul.dropdown li:hover { + position:relative; + z-index:599; + cursor:default; + } + ul.dropdown ul { + visibility:hidden; + position:absolute; + top:100%;z-index:598; + left:0; + right:auto; + margin-top: -1px; + font:100% "Trebuchet MS",Arial,Helvetica,sans-serif; + } + ul.dropdown ul li { + float:none; + background-color: #34637f; + border-width: 1px; + border-style: solid; + border-color: #477C9B #34637f #295770; + padding:0; + } + ul.dropdown ul ul { + top:0; + right:auto; + left:100%; + margin-top:0; + border-top:none; + border-left:none; + font-weight:400; + } + ul.dropdown li:hover > ul { + visibility:visible; + } + ul.dropdown span, + ul.dropdown span a, + ul.dropdown li.clickable-with-children > a { + background-color: #34637f; + width:auto; + padding:2px 6px 4px 20px; + color: #fff; + } + ul.dropdown ul span, + ul.dropdown ul span a, + ul.dropdown ul li.clickable-with-children > a { + background-color:#34637f; + background-image: url([[pix:theme|menu/nav-arrow-right]]); + background-position:100% 50%; + background-repeat:no-repeat; + color: #fff; + } + ul.dropdown ul ul span, + ul.dropdown ul ul span a, + ul.dropdown ul ul li.clickable-with-children > a { + background-color:#34637f; + background-image: url([[pix:theme|menu/nav-arrow-right]]); + background-position:100% 50%; + background-repeat:no-repeat; + color: #fff; + } + ul.dropdown a:link, ul.dropdown a:visited { + color: white; + text-decoration: none; + } + ul.dropdown a:hover { + border:0; + background-color: #fff; + color: #036; + } + ul.dropdown ul ul li { + background-color: #34637f; + } + ul.dropdown ul ul ul li { + background-color: #34637f; + } + ul.dropdown li a, + ul.dropdown span, + ul.dropdown span a { + border: none; + background-color: transparent; + } + ul.dropdown ul li a, + ul.dropdown ul span, + ul.dropdown ul span a { + border: 0; + } + ul.dropdown ul ul li a, + ul.dropdown ul ul span, + ul.dropdown ul ul span a { + border:0 + } + ul.dropdown ul ul ul li a, + ul.dropdown ul ul ul span, + ul.dropdown ul ul ul span a { + border:0; + } + ul.dropdown a,ul.dropdown span{ + display:block; + } + ul.dropdown ul a { + width:166px; + padding:2px 0 4px 5px; + } + ul.dropdown ul a.open:hover { + background-color: #fff; + color:#036; + } + ul.dropdown ul li:hover > span, + ul.dropdown ul li:hover > span a { + background-color:#fff; + background-image:url([[pix:theme|menu/nav-arrowover-right]]); + color: #036; + } + ul.dropdown li.clickable-with-children:hover > a { + background-image:url([[pix:theme|menu/nav-arrowover-right]]); + } + ul.dropdown *.open, + ul.dropdown li:hover > span, + ul.dropdown li:hover > span a { + background-color:#fff; + color: #036; + } + ul.dropdown ul ul *.open, + ul.dropdown ul ul li:hover > span, + ul.dropdown ul ul li:hover > span a { + background-color:#fff; + background-image:url([[pix:theme|menu/nav-arrowover-right]]); + color:#036; + } } \ No newline at end of file diff --git a/theme/afterburner/style/afterburner_pagelayout.css b/theme/afterburner/style/afterburner_pagelayout.css index 9fca7d9304c..f3e20c1c3a0 100644 --- a/theme/afterburner/style/afterburner_pagelayout.css +++ b/theme/afterburner/style/afterburner_pagelayout.css @@ -9,7 +9,6 @@ html { body { margin: 0; padding: 0; - min-width: 775px; background: #fff url([[pix:theme|core/bground]]) repeat-x fixed; } #page-wrapper { @@ -34,27 +33,27 @@ body { overflow: hidden; position: relative; width: 100%; - background-color: #eee; /* Right column background colour */ + background-color: #eee; /* Right column background colour */ } #region-main-box { float: left; - right: 25%; + right: 21%; position: relative; width: 100%; - background-color: #fff; /* Center column background colour */ + background-color: #fff; /* Center column background colour */ } #region-pre-box { float: left; - right: 50%; + right: 58%; position: relative; width: 100%; - background-color: #d1e0e7; /* Left column background colour */ + background-color: #d1e0e7; /* Left column background colour */ } #region-main { float: left; overflow: hidden; position: relative; - width: 50%; + width: 58%; left: 100%; background-color: #fff; } @@ -62,15 +61,15 @@ body { float: left; overflow: hidden; position: relative; - width: 25%; - left: 25%; + width: 21%; + left: 21%; } #region-post { float: left; overflow: hidden; position: relative; - width: 25%; - left: 75%; + width: 21%; + left: 79%; } #region-main .region-content { @@ -85,9 +84,9 @@ body { /** SIDE-PRE-ONLY **/ .side-pre-only #region-main-box {right: 0%;} -.side-pre-only #region-pre-box {right: 77%;} -.side-pre-only #region-main {left: 100%; width: 77%;} -.side-pre-only #region-pre {left: 0; width: 23%;} +.side-pre-only #region-pre-box {right: 79%;} +.side-pre-only #region-main {left: 100%; width: 79%;} +.side-pre-only #region-pre {left: 0; width: 21%;} .side-pre-only #region-post {width: 0;} diff --git a/theme/afterburner/style/afterburner_responsive.css b/theme/afterburner/style/afterburner_responsive.css new file mode 100644 index 00000000000..c01da88d5e8 --- /dev/null +++ b/theme/afterburner/style/afterburner_responsive.css @@ -0,0 +1,153 @@ +@media screen and (max-width: 767px) { + /* Custom Menu + -------------------------- */ + + #custommenu ul { + margin: 0; + padding: 0; + list-style-type: none; + overflow: hidden; + } + #custommenu li { + margin: 0; /** Opera hack **/ + } + #custommenu a { + display: block; + color: #fff; + background-color: #888; + width: 98%; + padding: 5px 10px; + text-decoration: none; + border-top: 1px solid #777; + border-bottom: 1px solid #999; + font-weight: bold; + } + #custommenu li li a { + display: block; + color: #fff; + background-color: #34637f; + width: 98%; + padding: 5px 20px; + text-decoration: none; + border-top: 1px solid #477C9B; + border-bottom: 1px solid #295770; + font-weight: normal; + } + #custommenu li li li a { + display: block; + color: #fff; + background-color: #34637f; + width: 98%; + padding: 5px 20px; + text-decoration: none; + border-top: 1px solid #477C9B; + border-bottom: 1px solid #295770; + font-weight: normal; + } + #custommenu a:hover { + background-color: #fff; + color: #036; + } +} + +@media screen and (min-width: 768px) and (max-width: 799px) { + /* Page Layout + -------------------------*/ + body.has_dock { + margin-left: 3%; + width: 97%; + } + #page-wrapper { + width: 94%; + } + #region-main .region-content { + padding: 0 5px; + } + #region-main-box { + right: 0%; + } + #region-pre-box { + right: 77%; + } + #region-main { + left: 100%; + width: 77%; + } + #region-pre { + left: 0; + width: 23%; + } + #region-post { + left: 0; + width: 23%; + } + #region-post .block .header { + background:url([[pix:theme|images/light3]]) 0 -136px repeat-x; + border-bottom: 1px solid #c3d9e1; + color: #50646d; + } + .headermenu { + top: 10px; + right: 10px; + } +} +@media screen and (max-width: 767px) { + /* Page Layout + -------------------------*/ + body.has_dock #dock { + display: none; + } + #page-wrapper { + width: 96%; + } + #region-main-box, + .side-pre-only #region-main-box, + .side-post-only #region-main-box { + right: 0; + } + #region-pre-box, + .side-pre-only #region-pre-box, + .side-post-only #region-pre-box { + right: 0; + } + #region-main, + .side-pre-only #region-main, + .side-post-only #region-main { + left: 0; + width: 100%; + } + #region-pre, + .side-pre-only #region-pre, + .side-post-only #region-pre { + left: 0; + width: 100%; + } + #region-post, + .side-pre-only #region-post, + .side-post-only #region-post { + left: 0; + width: 100%; + } + #region-post .block .header { + background:url([[pix:theme|images/light3]]) 0 -136px repeat-x; + border-bottom: 1px solid #c3d9e1; + color:#50646d; + } + #page-header { + height: 100px; + background: #fff; + } + a.logo { + background-size: 75% 75%; + } + .headermenu { + display: none; + } +} +@media screen and (max-width: 320px) { + + a.logo { + background-size: 50% 50%; + } + +} \ No newline at end of file diff --git a/theme/afterburner/style/afterburner_styles.css b/theme/afterburner/style/afterburner_styles.css index 9b883b6de24..b8a42d23626 100644 --- a/theme/afterburner/style/afterburner_styles.css +++ b/theme/afterburner/style/afterburner_styles.css @@ -6,8 +6,8 @@ body { padding: 0; color: #4b4b4b; } -h1,h2,h3,h4,h5,h6,p,ul,ol,dl,input,textarea { - font-family: Helvetica,Arial,sans-serif; +h1, h2, h3, h4, h5, h6, p, ul, ol, dl, input, textarea { + font-family: Helvetica, Arial, sans-serif; } a:link, a:visited { From bde002b81ac2fe003cc2b1e1db6e90c231baf1fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Sat, 14 Sep 2013 23:57:21 +0200 Subject: [PATCH 043/101] MDL-41437 rework plugin_manager caching and version info in blocks and modules This patch includes: * version column removed from modules table, now using standard config, this allows decimal version for modules * version column removed from block table, now using standard config, this allows decimal version for blocks * module version.php can safely use $plugins instead of module * new plugin_manager bulk caching, this should help with MUC performance when logged in as admin * all missing plugins are now in plugin overview (previously only blocks and modules) * simplified code and improved coding style * reworked plugin_manager unit tests - now using real plugins instead of mocks * unit tests now fail if any plugin does not contain proper version.php file * allow uninstall of deleted filters --- admin/auth.php | 3 + admin/block.php | 76 -- admin/blocks.php | 15 +- admin/courseformats.php | 2 + admin/editors.php | 2 + admin/enrol.php | 3 + admin/filters.php | 7 +- admin/localplugins.php | 1 + admin/message.php | 3 + admin/modules.php | 10 +- admin/plagiarism.php | 2 + admin/portfolio.php | 6 +- admin/qbehaviours.php | 2 + admin/reports.php | 1 + admin/repository.php | 8 +- admin/repositoryinstance.php | 4 + backup/converter/moodle1/handlerlib.php | 6 +- backup/moodle2/backup_stepslib.php | 11 +- blocks/upgrade.txt | 4 + cache/locks/file/version.php | 30 + filter/manage.php | 4 +- lang/en/cache.php | 7 +- lib/adminlib.php | 11 +- lib/classes/component.php | 16 +- lib/db/caches.php | 53 +- lib/db/install.xml | 4 +- lib/db/upgrade.php | 47 + lib/editor/atto/lib.php | 19 +- lib/editor/tinymce/adminlib.php | 50 +- lib/editor/tinymce/subplugins.php | 2 + lib/moodlelib.php | 3 + lib/pluginlib.php | 1192 ++++++++--------- lib/tests/available_update_checker_test.php | 290 ++++ lib/tests/available_update_deployer_test.php | 209 +++ .../fixtures/mockplugins/mod/bar/version.php | 4 - .../mockplugins/mod/baz/meg/one/version.php | 5 - .../fixtures/mockplugins/mod/baz/version.php | 4 - .../mockplugins/mod/foo/lish/frog/version.php | 6 - .../mod/foo/lish/hippo/version.php | 6 - .../fixtures/mockplugins/mod/foo/version.php | 10 - .../fixtures/mockplugins/mod/new/version.php | 5 - .../mockplugins/mod/qux/cat/one/version.php | 6 - .../fixtures/mockplugins/mod/qux/version.php | 5 - lib/tests/plugin_manager_test.php | 232 ++++ lib/tests/pluginlib_test.php | 950 ------------- lib/upgrade.txt | 3 + lib/upgradelib.php | 188 ++- mod/resource/backup/moodle1/lib.php | 6 +- user/portfolio.php | 6 +- version.php | 2 +- 50 files changed, 1601 insertions(+), 1940 deletions(-) delete mode 100644 admin/block.php create mode 100644 cache/locks/file/version.php create mode 100644 lib/tests/available_update_checker_test.php create mode 100644 lib/tests/available_update_deployer_test.php delete mode 100644 lib/tests/fixtures/mockplugins/mod/bar/version.php delete mode 100644 lib/tests/fixtures/mockplugins/mod/baz/meg/one/version.php delete mode 100644 lib/tests/fixtures/mockplugins/mod/baz/version.php delete mode 100644 lib/tests/fixtures/mockplugins/mod/foo/lish/frog/version.php delete mode 100644 lib/tests/fixtures/mockplugins/mod/foo/lish/hippo/version.php delete mode 100644 lib/tests/fixtures/mockplugins/mod/foo/version.php delete mode 100644 lib/tests/fixtures/mockplugins/mod/new/version.php delete mode 100644 lib/tests/fixtures/mockplugins/mod/qux/cat/one/version.php delete mode 100644 lib/tests/fixtures/mockplugins/mod/qux/version.php create mode 100644 lib/tests/plugin_manager_test.php delete mode 100644 lib/tests/pluginlib_test.php diff --git a/admin/auth.php b/admin/auth.php index 934acd371ef..4dc0a0d15d7 100644 --- a/admin/auth.php +++ b/admin/auth.php @@ -10,6 +10,7 @@ require_once('../config.php'); require_once($CFG->libdir.'/adminlib.php'); require_once($CFG->libdir.'/tablelib.php'); +require_once($CFG->libdir.'/pluginlib.php'); require_login(); require_capability('moodle/site:config', context_system::instance()); @@ -52,6 +53,7 @@ switch ($action) { set_config('registerauth', ''); } session_gc(); // remove stale sessions + plugin_manager::reset_caches(); break; case 'enable': @@ -62,6 +64,7 @@ switch ($action) { set_config('auth', implode(',', $authsenabled)); } session_gc(); // remove stale sessions + plugin_manager::reset_caches(); break; case 'down': diff --git a/admin/block.php b/admin/block.php deleted file mode 100644 index 59938ec1fef..00000000000 --- a/admin/block.php +++ /dev/null @@ -1,76 +0,0 @@ -libdir.'/adminlib.php'); - - $blockid = required_param('block', PARAM_INT); - - if(!$blockrecord = blocks_get_record($blockid)) { - print_error('blockdoesnotexist', 'error'); - } - - admin_externalpage_setup('blocksetting'.$blockrecord->name); - - $block = block_instance($blockrecord->name); - if($block === false) { - print_error('blockcannotinistantiate', 'error'); - } - - // Define the data we're going to silently include in the instance config form here, - // so we can strip them from the submitted data BEFORE handling it. - $hiddendata = array( - 'block' => $blockid, - 'sesskey' => sesskey() - ); - - /// If data submitted, then process and store. - - if ($config = data_submitted()) { - - if (!confirm_sesskey()) { - print_error('confirmsesskeybad', 'error'); - } - if(!$block->has_config()) { - print_error('blockcannotconfig', 'error'); - } - $remove = array_keys($hiddendata); - foreach($remove as $item) { - unset($config->$item); - } - $block->config_save($config); - redirect("$CFG->wwwroot/$CFG->admin/blocks.php", get_string("changessaved"), 1); - exit; - } - - /// Otherwise print the form. - - $strmanageblocks = get_string('manageblocks'); - $strblockname = $block->get_title(); - - echo $OUTPUT->header(); - - echo $OUTPUT->heading($strblockname); - - echo $OUTPUT->notification('This block still uses an old-style config_global.html file. ' . - 'It must be updated by a developer to use a settings.php file.'); - - echo $OUTPUT->box(get_string('configwarning', 'admin'), 'generalbox boxwidthnormal boxaligncenter'); - echo '
                '; - - echo '
                '; - echo '

                '; - foreach($hiddendata as $name => $val) { - echo ''; - } - echo '

                '; - - echo $OUTPUT->box_start(); - include($CFG->dirroot.'/blocks/'. $block->name() .'/config_global.html'); - echo $OUTPUT->box_end(); - - echo '
                '; - echo $OUTPUT->footer(); - - diff --git a/admin/blocks.php b/admin/blocks.php index 6a2d31efd6e..1e37dd26d73 100644 --- a/admin/blocks.php +++ b/admin/blocks.php @@ -5,6 +5,7 @@ require_once('../config.php'); require_once($CFG->libdir.'/adminlib.php'); require_once($CFG->libdir.'/tablelib.php'); + require_once($CFG->libdir.'/pluginlib.php'); admin_externalpage_setup('manageblocks'); @@ -29,9 +30,6 @@ $strprotect = get_string('blockprotect', 'admin'); $strunprotect = get_string('blockunprotect', 'admin'); - // Purge all caches related to blocks administration. - cache::make('core', 'plugininfo_block')->purge(); - /// If data submitted, then process and store. if (!empty($hide) && confirm_sesskey()) { @@ -39,6 +37,7 @@ print_error('blockdoesnotexist', 'error'); } $DB->set_field('block', 'visible', '0', array('id'=>$block->id)); // Hide block + plugin_manager::reset_caches(); admin_get_root(true, false); // settings not required - only pages } @@ -47,6 +46,7 @@ print_error('blockdoesnotexist', 'error'); } $DB->set_field('block', 'visible', '1', array('id'=>$block->id)); // Show block + plugin_manager::reset_caches(); admin_get_root(true, false); // settings not required - only pages } @@ -120,12 +120,13 @@ foreach ($blocknames as $blockid=>$strblockname) { $block = $blocks[$blockid]; $blockname = $block->name; + $dbversion = get_config('block_'.$block->name, 'version'); if (!file_exists("$CFG->dirroot/blocks/$blockname/block_$blockname.php")) { $blockobject = false; $strblockname = ''.$strblockname.' ('.get_string('missingfromdisk').')'; $plugin = new stdClass(); - $plugin->version = $block->version; + $plugin->version = $dbversion; } else { $plugin = new stdClass(); @@ -186,10 +187,10 @@ $class = ' class="dimmed_text"'; // Leading space required! } - if ($block->version == $plugin->version) { - $version = $block->version; + if ($dbversion == $plugin->version) { + $version = $dbversion; } else { - $version = "$block->version ($plugin->version)"; + $version = "$dbversion ($plugin->version)"; } if (!$blockobject) { diff --git a/admin/courseformats.php b/admin/courseformats.php index 7ea15e86d16..f86c4becc8c 100644 --- a/admin/courseformats.php +++ b/admin/courseformats.php @@ -53,11 +53,13 @@ switch ($action) { print_error('cannotdisableformat', 'error', $return); } set_config('disabled', 1, 'format_'. $formatname); + plugin_manager::reset_caches(); } break; case 'enable': if (!$formatplugins[$formatname]->is_enabled()) { unset_config('disabled', 'format_'. $formatname); + plugin_manager::reset_caches(); } break; case 'up': diff --git a/admin/editors.php b/admin/editors.php index da846faf2f8..50ee7a51086 100644 --- a/admin/editors.php +++ b/admin/editors.php @@ -7,6 +7,7 @@ require_once('../config.php'); require_once($CFG->libdir.'/adminlib.php'); require_once($CFG->libdir.'/tablelib.php'); +require_once($CFG->libdir.'/pluginlib.php'); $action = required_param('action', PARAM_ALPHANUMEXT); $editor = required_param('editor', PARAM_PLUGIN); @@ -93,6 +94,7 @@ if (empty($active_editors)) { } set_config('texteditors', implode(',', $active_editors)); +plugin_manager::reset_caches(); if ($return) { redirect ($returnurl); diff --git a/admin/enrol.php b/admin/enrol.php index 59f77c53aee..14a7649f899 100644 --- a/admin/enrol.php +++ b/admin/enrol.php @@ -27,6 +27,7 @@ define('NO_OUTPUT_BUFFERING', true); require_once('../config.php'); require_once($CFG->libdir.'/adminlib.php'); +require_once($CFG->libdir.'/pluginlib.php'); $action = required_param('action', PARAM_ALPHANUMEXT); $enrol = required_param('enrol', PARAM_PLUGIN); @@ -50,6 +51,7 @@ switch ($action) { case 'disable': unset($enabled[$enrol]); set_config('enrol_plugins_enabled', implode(',', array_keys($enabled))); + plugin_manager::reset_caches(); $syscontext->mark_dirty(); // resets all enrol caches break; @@ -60,6 +62,7 @@ switch ($action) { $enabled = array_keys($enabled); $enabled[] = $enrol; set_config('enrol_plugins_enabled', implode(',', $enabled)); + plugin_manager::reset_caches(); $syscontext->mark_dirty(); // resets all enrol caches break; diff --git a/admin/filters.php b/admin/filters.php index 6c585046ab9..334dc719fbf 100644 --- a/admin/filters.php +++ b/admin/filters.php @@ -33,6 +33,7 @@ require_once(dirname(__FILE__) . '/../config.php'); require_once($CFG->libdir . '/adminlib.php'); + require_once($CFG->libdir . '/pluginlib.php'); $action = optional_param('action', '', PARAM_ALPHANUMEXT); $filterpath = optional_param('filterpath', '', PARAM_SAFEDIR); @@ -44,9 +45,6 @@ $returnurl = "$CFG->wwwroot/$CFG->admin/filters.php"; admin_externalpage_setup('managefilters'); - // Purge all caches related to filter administration. - cache::make('core', 'plugininfo_filter')->purge(); - $filters = filter_get_global_states(); // In case any new filters have been installed, but not put in the table yet. @@ -59,7 +57,7 @@ /// Process actions ============================================================ if ($action) { - if (!isset($filters[$filterpath]) && !isset($newfilters[$filterpath])) { + if ($action !== 'delete' and !isset($filters[$filterpath]) and !isset($newfilters[$filterpath])) { throw new moodle_exception('filternotinstalled', 'error', $returnurl, $filterpath); } @@ -138,6 +136,7 @@ // Reset caches and return if ($action) { + plugin_manager::reset_caches(); reset_text_filters_cache(); redirect($returnurl); } diff --git a/admin/localplugins.php b/admin/localplugins.php index be09151a5a3..8286e96fee5 100644 --- a/admin/localplugins.php +++ b/admin/localplugins.php @@ -30,6 +30,7 @@ require_once(dirname(dirname(__FILE__)) . '/config.php'); require_once($CFG->libdir.'/adminlib.php'); require_once($CFG->libdir.'/tablelib.php'); +require_once($CFG->libdir.'/pluginlib.php'); admin_externalpage_setup('managelocalplugins'); diff --git a/admin/message.php b/admin/message.php index 88e8f856617..67a60b08b88 100644 --- a/admin/message.php +++ b/admin/message.php @@ -24,6 +24,7 @@ require_once(dirname(__FILE__) . '/../config.php'); require_once($CFG->dirroot . '/message/lib.php'); require_once($CFG->libdir.'/adminlib.php'); +require_once($CFG->libdir.'/pluginlib.php'); // This is an admin page admin_externalpage_setup('managemessageoutputs'); @@ -44,6 +45,7 @@ if (!empty($disable) && confirm_sesskey()) { print_error('outputdoesnotexist', 'message'); } $DB->set_field('message_processors', 'enabled', '0', array('id'=>$processor->id)); // Disable output + plugin_manager::reset_caches(); } if (!empty($enable) && confirm_sesskey()) { @@ -51,6 +53,7 @@ if (!empty($enable) && confirm_sesskey()) { print_error('outputdoesnotexist', 'message'); } $DB->set_field('message_processors', 'enabled', '1', array('id'=>$processor->id)); // Enable output + plugin_manager::reset_caches(); } if (!empty($uninstall) && confirm_sesskey()) { diff --git a/admin/modules.php b/admin/modules.php index c8f69d45f37..a964c73dfe4 100644 --- a/admin/modules.php +++ b/admin/modules.php @@ -5,6 +5,7 @@ require_once('../course/lib.php'); require_once($CFG->libdir.'/adminlib.php'); require_once($CFG->libdir.'/tablelib.php'); + require_once($CFG->libdir.'/pluginlib.php'); // defines define('MODULE_TABLE','module_administration_table'); @@ -27,9 +28,6 @@ $stractivitymodule = get_string("activitymodule"); $strshowmodulecourse = get_string('showmodulecourse'); - // Purge all caches related to activity modules administration. - cache::make('core', 'plugininfo_mod')->purge(); - /// If data submitted, then process and store. if (!empty($hide) and confirm_sesskey()) { @@ -50,6 +48,7 @@ FROM {course_modules} WHERE visibleold=1 AND module=?)", array($module->id)); + plugin_manager::reset_caches(); admin_get_root(true, false); // settings not required - only pages } @@ -66,6 +65,7 @@ FROM {course_modules} WHERE visible=1 AND module=?)", array($module->id)); + plugin_manager::reset_caches(); admin_get_root(true, false); // settings not required - only pages } @@ -143,12 +143,12 @@ $visible = ""; $class = ""; } - + $version = get_config('mod_'.$module->name, 'version'); $table->add_data(array( ''.$strmodulename.'', $countlink, - ''.$module->version.'', + ''.$version.'', $visible, $uninstall, $settings diff --git a/admin/plagiarism.php b/admin/plagiarism.php index ace710fd7bd..d5fc85ae125 100644 --- a/admin/plagiarism.php +++ b/admin/plagiarism.php @@ -29,6 +29,8 @@ require_once(dirname(dirname(__FILE__)) . '/config.php'); require_once($CFG->libdir.'/adminlib.php'); require_once($CFG->libdir.'/tablelib.php'); +require_once($CFG->libdir.'/pluginlib.php'); + admin_externalpage_setup('manageplagiarismplugins'); diff --git a/admin/portfolio.php b/admin/portfolio.php index f5940536139..3b460fdce2e 100644 --- a/admin/portfolio.php +++ b/admin/portfolio.php @@ -4,6 +4,7 @@ require_once(dirname(dirname(__FILE__)) . '/config.php'); require_once($CFG->libdir . '/portfoliolib.php'); require_once($CFG->libdir . '/portfolio/forms.php'); require_once($CFG->libdir . '/adminlib.php'); +require_once($CFG->libdir . '/pluginlib.php'); $portfolio = optional_param('pf', '', PARAM_ALPHANUMEXT); $action = optional_param('action', '', PARAM_ALPHA); @@ -43,9 +44,6 @@ $configstr = get_string('manageportfolios', 'portfolio'); $return = true; // direct back to the main page -// Purge all caches related to portfolio administration. -cache::make('core', 'plugininfo_portfolio')->purge(); - /** * Helper function that generates a moodle_url object * relevant to the portfolio @@ -91,6 +89,7 @@ if (($action == 'edit') || ($action == 'new')) { } else { portfolio_static_function($plugin, 'create_instance', $plugin, $fromform->name, $fromform); } + plugin_manager::reset_caches(); $savedstr = get_string('instancesaved', 'portfolio'); redirect($baseurl, $savedstr, 1); exit; @@ -119,6 +118,7 @@ if (($action == 'edit') || ($action == 'new')) { $instance->set('visible', $visible); $instance->save(); + plugin_manager::reset_caches(); $return = true; } else if ($action == 'delete') { $instance = portfolio_instance($portfolio); diff --git a/admin/qbehaviours.php b/admin/qbehaviours.php index 85f0c8ef905..8e98af4237e 100644 --- a/admin/qbehaviours.php +++ b/admin/qbehaviours.php @@ -92,6 +92,7 @@ if (($disable = optional_param('disable', '', PARAM_PLUGIN)) && confirm_sesskey( $disabledbehaviours[] = $disable; set_config('disabledbehaviours', implode(',', $disabledbehaviours), 'question'); } + plugin_manager::reset_caches(); redirect($thispageurl); } @@ -109,6 +110,7 @@ if (($enable = optional_param('enable', '', PARAM_PLUGIN)) && confirm_sesskey()) unset($disabledbehaviours[$key]); set_config('disabledbehaviours', implode(',', $disabledbehaviours), 'question'); } + plugin_manager::reset_caches(); redirect($thispageurl); } diff --git a/admin/reports.php b/admin/reports.php index 0a73d226db9..879497c5222 100644 --- a/admin/reports.php +++ b/admin/reports.php @@ -30,6 +30,7 @@ require_once(dirname(__FILE__) . '/../config.php'); require_once($CFG->libdir.'/adminlib.php'); require_once($CFG->libdir.'/tablelib.php'); +require_once($CFG->libdir.'/pluginlib.php'); admin_externalpage_setup('managereports'); diff --git a/admin/repository.php b/admin/repository.php index 8f976cf3222..05fc7557893 100644 --- a/admin/repository.php +++ b/admin/repository.php @@ -17,6 +17,7 @@ require_once(dirname(dirname(__FILE__)) . '/config.php'); require_once($CFG->dirroot . '/repository/lib.php'); require_once($CFG->libdir . '/adminlib.php'); +require_once($CFG->libdir . '/pluginlib.php'); $repository = optional_param('repos', '', PARAM_ALPHANUMEXT); $action = optional_param('action', '', PARAM_ALPHANUMEXT); @@ -61,9 +62,6 @@ if (!empty($action)) { require_sesskey(); } -// Purge all caches related to repositories administration. -cache::make('core', 'plugininfo_repository')->purge(); - /** * Helper function that generates a moodle_url object * relevant to the repository @@ -151,6 +149,7 @@ if (($action == 'edit') || ($action == 'new')) { } if ($success) { // configs saved + plugin_manager::reset_caches(); redirect($baseurl); } else { print_error('instancenotsaved', 'repository', $baseurl); @@ -191,6 +190,7 @@ if (($action == 'edit') || ($action == 'new')) { print_error('invalidplugin', 'repository', '', $repository); } $repositorytype->update_visibility(true); + plugin_manager::reset_caches(); $return = true; } else if ($action == 'hide') { if (!confirm_sesskey()) { @@ -201,6 +201,7 @@ if (($action == 'edit') || ($action == 'new')) { print_error('invalidplugin', 'repository', '', $repository); } $repositorytype->update_visibility(false); + plugin_manager::reset_caches(); $return = true; } else if ($action == 'delete') { $repositorytype = repository::get_type_by_typename($repository); @@ -211,6 +212,7 @@ if (($action == 'edit') || ($action == 'new')) { } if ($repositorytype->delete($downloadcontents)) { + plugin_manager::reset_caches(); redirect($baseurl); } else { print_error('instancenotdeleted', 'repository', $baseurl); diff --git a/admin/repositoryinstance.php b/admin/repositoryinstance.php index b5eab73ffea..3def4f3ab5d 100644 --- a/admin/repositoryinstance.php +++ b/admin/repositoryinstance.php @@ -17,6 +17,7 @@ require_once(dirname(dirname(__FILE__)) . '/config.php'); require_once($CFG->dirroot . '/repository/lib.php'); require_once($CFG->libdir . '/adminlib.php'); +require_once($CFG->libdir . '/pluginlib.php'); require_sesskey(); @@ -102,6 +103,7 @@ if (!empty($edit) || !empty($new)) { $data = data_submitted(); } if ($success) { + plugin_manager::reset_caches(); redirect($parenturl); } else { print_error('instancenotsaved', 'repository', $parenturl); @@ -118,6 +120,7 @@ if (!empty($edit) || !empty($new)) { } else if (!empty($hide)) { $instance = repository::get_type_by_typename($hide); $instance->hide(); + plugin_manager::reset_caches(); $return = true; } else if (!empty($delete)) { $instance = repository::get_instance($delete); @@ -130,6 +133,7 @@ if (!empty($edit) || !empty($new)) { if ($sure) { if ($instance->delete($downloadcontents)) { $deletedstr = get_string('instancedeleted', 'repository'); + plugin_manager::reset_caches(); redirect($parenturl, $deletedstr, 3); } else { print_error('instancenotdeleted', 'repository', $parenturl); diff --git a/backup/converter/moodle1/handlerlib.php b/backup/converter/moodle1/handlerlib.php index c3df06bec7d..3973a8bf3fc 100644 --- a/backup/converter/moodle1/handlerlib.php +++ b/backup/converter/moodle1/handlerlib.php @@ -866,9 +866,11 @@ class moodle1_course_outline_handler extends moodle1_xml_handler { // host... $versionfile = $CFG->dirroot.'/mod/'.$data['modulename'].'/version.php'; if (file_exists($versionfile)) { - $module = new stdClass(); + $plugin = new stdClass(); + $plugin->version = null; + $module = $plugin; include($versionfile); - $data['version'] = $module->version; + $data['version'] = $plugin->version; } else { $data['version'] = null; } diff --git a/backup/moodle2/backup_stepslib.php b/backup/moodle2/backup_stepslib.php index e2f47f6498c..ed53da7a5a7 100644 --- a/backup/moodle2/backup_stepslib.php +++ b/backup/moodle2/backup_stepslib.php @@ -307,6 +307,7 @@ abstract class backup_block_structure_step extends backup_structure_step { class backup_module_structure_step extends backup_structure_step { protected function define_structure() { + global $DB; // Define each element separated @@ -339,12 +340,14 @@ class backup_module_structure_step extends backup_structure_step { $availinfo->add_child($availabilityfield); // Set the sources - $module->set_source_sql(' - SELECT cm.*, m.version, m.name AS modulename, s.id AS sectionid, s.section AS sectionnumber + $concat = $DB->sql_concat("'mod_'", 'm.name'); + $module->set_source_sql(" + SELECT cm.*, cp.value AS version, m.name AS modulename, s.id AS sectionid, s.section AS sectionnumber FROM {course_modules} cm JOIN {modules} m ON m.id = cm.module + JOIN {config_plugins} cp ON cp.plugin = $concat AND cp.name = 'version' JOIN {course_sections} s ON s.id = cm.section - WHERE cm.id = ?', array(backup::VAR_MODID)); + WHERE cm.id = ?", array(backup::VAR_MODID)); $availability->set_source_table('course_modules_availability', array('coursemoduleid' => backup::VAR_MODID)); $availabilityfield->set_source_sql(' @@ -1363,7 +1366,7 @@ class backup_block_instance_structure_step extends backup_structure_step { } $blockrec->contextid = $this->task->get_contextid(); // Get the version of the block - $blockrec->version = $DB->get_field('block', 'version', array('name' => $this->task->get_blockname())); + $blockrec->version = get_config('block_'.$this->task->get_blockname(), 'version'); // Define sources diff --git a/blocks/upgrade.txt b/blocks/upgrade.txt index 23518050e13..1a9ad4863dc 100644 --- a/blocks/upgrade.txt +++ b/blocks/upgrade.txt @@ -1,6 +1,10 @@ This files describes API changes in /blocks/* - activity modules, information provided here is intended especially for developers. +=== 2.6 === + +* Deprecated /admin/block.php was removed, make sure blocks are using settings.php instead. + === 2.4 === Created new capability 'blocks/xxx:myaddinstance' that determines whether a user can add diff --git a/cache/locks/file/version.php b/cache/locks/file/version.php new file mode 100644 index 00000000000..b7955dab63f --- /dev/null +++ b/cache/locks/file/version.php @@ -0,0 +1,30 @@ +. + +/** + * File locking for the Cache API + * + * @package cachelock_file + * @category cache + * @copyright 2012 Sam Hemelryk + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +$plugin->version = 2013091300; // The current plugin version (Date: YYYYMMDDXX) +$plugin->requires = 2013091300; // Requires this Moodle version +$plugin->component = 'cachelock_file'; // Full name of the plugin (used for diagnostics) diff --git a/filter/manage.php b/filter/manage.php index 49d80ce1c27..15b493cde35 100644 --- a/filter/manage.php +++ b/filter/manage.php @@ -25,6 +25,7 @@ require_once(dirname(__FILE__) . '/../config.php'); require_once($CFG->libdir . '/adminlib.php'); +require_once($CFG->libdir . '/pluginlib.php'); $contextid = required_param('contextid',PARAM_INT); $forfilter = optional_param('filter', '', PARAM_SAFEDIR); @@ -36,9 +37,6 @@ require_login($course, false, $cm); require_capability('moodle/filter:manage', $context); $PAGE->set_context($context); -// Purge all caches related to filter administration. -cache::make('core', 'plugininfo_filter')->purge(); - $args = array('contextid'=>$contextid); $baseurl = new moodle_url('/filter/manage.php', $args); if (!empty($forfilter)) { diff --git a/lang/en/cache.php b/lang/en/cache.php index 2ec0c97bc4c..40021ed5c78 100644 --- a/lang/en/cache.php +++ b/lang/en/cache.php @@ -51,12 +51,7 @@ $string['cachedef_htmlpurifier'] = 'HTML Purifier - cleaned content'; $string['cachedef_langmenu'] = 'List of available languages'; $string['cachedef_locking'] = 'Locking'; $string['cachedef_observers'] = 'Event observers'; -$string['cachedef_plugininfo_base'] = 'Plugin info - base'; -$string['cachedef_plugininfo_block'] = 'Plugin info - blocks'; -$string['cachedef_plugininfo_filter'] = 'Plugin info - filters'; -$string['cachedef_plugininfo_mod'] = 'Plugin info - activity modules'; -$string['cachedef_plugininfo_portfolio'] = 'Plugin info - portfolios'; -$string['cachedef_plugininfo_repository'] = 'Plugin info - repositories'; +$string['cachedef_plugin_manager'] = 'Plugin info manager'; $string['cachedef_questiondata'] = 'Question definitions'; $string['cachedef_repositories'] = 'Repositories instances data'; $string['cachedef_string'] = 'Language string cache'; diff --git a/lib/adminlib.php b/lib/adminlib.php index efcf9a1be13..7ca212768d9 100644 --- a/lib/adminlib.php +++ b/lib/adminlib.php @@ -298,7 +298,10 @@ function uninstall_plugin($type, $name) { $DB->delete_records('log_display', array('component' => $component)); // delete the module configuration records - unset_all_config_for_plugin($pluginname); + unset_all_config_for_plugin($component); + if ($type === 'mod') { + unset_all_config_for_plugin($pluginname); + } // delete message provider message_provider_uninstall($component); @@ -375,9 +378,11 @@ function get_component_version($component, $source='installed') { if (empty($mods[$name]) or !is_readable($mods[$name].'/version.php')) { return false; } else { - $module = new stdclass(); + $plugin = new stdClass(); + $plugin->version = null; + $module = $plugin; include($mods[$name].'/version.php'); - return $module->version; + return $plugin->version; } } } diff --git a/lib/classes/component.php b/lib/classes/component.php index 0e21af390b4..e193399b316 100644 --- a/lib/classes/component.php +++ b/lib/classes/component.php @@ -927,17 +927,11 @@ $cache = '.var_export($cache, true).'; $plugs = self::fetch_plugins($type, $typedir); } foreach ($plugs as $plug => $fullplug) { - if ($type === 'mod') { - $module = new stdClass(); - $module->version = null; - include($fullplug.'/version.php'); - $versions[$type.'_'.$plug] = $module->version; - } else { - $plugin = new stdClass(); - $plugin->version = null; - @include($fullplug.'/version.php'); - $versions[$type.'_'.$plug] = $plugin->version; - } + $plugin = new stdClass(); + $plugin->version = null; + $module = $plugin; + @include($fullplug.'/version.php'); + $versions[$type.'_'.$plug] = $plugin->version; } } diff --git a/lib/db/caches.php b/lib/db/caches.php index 305fdbca825..0b1a99d45a4 100644 --- a/lib/db/caches.php +++ b/lib/db/caches.php @@ -141,58 +141,13 @@ $definitions = array( 'persistentmaxsize' => 2, ), - // Cache used by the {@link plugininfo_base} class. - 'plugininfo_base' => array( + // Cache used by the {@link plugin_manager} class. + // NOTE: this must be a shared cache. + 'plugin_manager' => array( 'mode' => cache_store::MODE_APPLICATION, 'simplekeys' => true, 'simpledata' => true, - 'persistent' => true, - 'persistentmaxsize' => 2, - ), - - // Cache used by the {@link plugininfo_mod} class. - 'plugininfo_mod' => array( - 'mode' => cache_store::MODE_APPLICATION, - 'simplekeys' => true, - 'simpledata' => true, - 'persistent' => true, - 'persistentmaxsize' => 1, - ), - - // Cache used by the {@link plugininfo_block} class. - 'plugininfo_block' => array( - 'mode' => cache_store::MODE_APPLICATION, - 'simplekeys' => true, - 'simpledata' => true, - 'persistent' => true, - 'persistentmaxsize' => 1, - ), - - // Cache used by the {@link plugininfo_filter} class. - 'plugininfo_filter' => array( - 'mode' => cache_store::MODE_APPLICATION, - 'simplekeys' => true, - 'simpledata' => true, - 'persistent' => true, - 'persistentmaxsize' => 1, - ), - - // Cache used by the {@link plugininfo_repository} class. - 'plugininfo_repository' => array( - 'mode' => cache_store::MODE_APPLICATION, - 'simplekeys' => true, - 'simpledata' => true, - 'persistent' => true, - 'persistentmaxsize' => 1, - ), - - // Cache used by the {@link plugininfo_portfolio} class. - 'plugininfo_portfolio' => array( - 'mode' => cache_store::MODE_APPLICATION, - 'simplekeys' => true, - 'simpledata' => true, - 'persistent' => true, - 'persistentmaxsize' => 1, + 'persistent' => false, ), // Used to store the full tree of course categories diff --git a/lib/db/install.xml b/lib/db/install.xml index d79981f92ad..8fe1b98babc 100644 --- a/lib/db/install.xml +++ b/lib/db/install.xml @@ -1,5 +1,5 @@ - @@ -668,7 +668,6 @@ - @@ -2487,7 +2486,6 @@ - diff --git a/lib/db/upgrade.php b/lib/db/upgrade.php index 543d1b3dd68..4768e85a91a 100644 --- a/lib/db/upgrade.php +++ b/lib/db/upgrade.php @@ -2450,5 +2450,52 @@ function xmldb_main_upgrade($oldversion) { upgrade_main_savepoint(true, 2013091300.01); } + if ($oldversion < 2013092001.01) { + // Force uninstall of deleted tool. + if (!file_exists("$CFG->dirroot/$CFG->admin/tool/bloglevelupgrade")) { + // Remove capabilities. + capabilities_cleanup('tool_bloglevelupgrade'); + // Remove all other associated config. + unset_all_config_for_plugin('tool_bloglevelupgrade'); + } + upgrade_main_savepoint(true, 2013092001.01); + } + + if ($oldversion < 2013092001.02) { + // Define field version to be dropped from modules. + $table = new xmldb_table('modules'); + $field = new xmldb_field('version'); + + // Conditionally launch drop field version. + if ($dbman->field_exists($table, $field)) { + // Migrate all plugin version info to config_plugins table. + $modules = $DB->get_records('modules'); + foreach ($modules as $module) { + set_config('version', $module->version, 'mod_'.$module->name); + } + unset($modules); + + $dbman->drop_field($table, $field); + } + + // Define field version to be dropped from block. + $table = new xmldb_table('block'); + $field = new xmldb_field('version'); + + // Conditionally launch drop field version. + if ($dbman->field_exists($table, $field)) { + $blocks = $DB->get_records('block'); + foreach ($blocks as $block) { + set_config('version', $block->version, 'block_'.$block->name); + } + unset($blocks); + + $dbman->drop_field($table, $field); + } + + // Main savepoint reached. + upgrade_main_savepoint(true, 2013092001.02); + } + return true; } diff --git a/lib/editor/atto/lib.php b/lib/editor/atto/lib.php index f2ec963c1aa..2b9b8a68c6f 100644 --- a/lib/editor/atto/lib.php +++ b/lib/editor/atto/lib.php @@ -74,25 +74,20 @@ class atto_texteditor extends texteditor { * @param null $fpoptions */ public function use_editor($elementid, array $options=null, $fpoptions=null) { - global $PAGE, $CFG; + global $PAGE; $PAGE->requires->yui_module('moodle-editor_atto-editor', 'M.editor_atto.init', array($this->get_init_params($elementid, $options, $fpoptions)), true); - require_once($CFG->libdir . '/pluginlib.php'); - $pluginman = plugin_manager::instance(); - $plugins = $pluginman->get_subplugins_of_plugin('editor_atto'); + $plugins = core_component::get_plugin_list('atto'); - $sortedplugins = array(); - - foreach ($plugins as $id => $plugin) { - $sortorder = component_callback($plugin->type . '_' . $plugin->name, 'sort_order', array($elementid)); - $sortedplugins[$sortorder] = $plugin; + foreach ($plugins as $name => $fulldir) { + $plugins[$name] = component_callback('atto_' . $name, 'sort_order', array($elementid)); } - ksort($sortedplugins); - foreach ($sortedplugins as $plugin) { - component_callback($plugin->type . '_' . $plugin->name, 'init_editor', array($elementid)); + asort($plugins); + foreach ($plugins as $name => $sort) { + component_callback('atto_' . $name, 'init_editor', array($elementid)); } } diff --git a/lib/editor/tinymce/adminlib.php b/lib/editor/tinymce/adminlib.php index d30f3bf5689..2bc6130f068 100644 --- a/lib/editor/tinymce/adminlib.php +++ b/lib/editor/tinymce/adminlib.php @@ -24,8 +24,6 @@ defined('MOODLE_INTERNAL') || die(); -require_once("$CFG->libdir/pluginlib.php"); - /** * Editor subplugin info class. @@ -35,6 +33,34 @@ require_once("$CFG->libdir/pluginlib.php"); * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ class plugininfo_tinymce extends plugininfo_base { + /** + * Finds all enabled plugins, the result may include missing plugins. + * @return array|null of enabled plugins $pluginname=>$pluginname, null means unknown + */ + public static function get_enabled_plugins() { + $disabledsubplugins = array(); + $config = get_config('editor_tinymce', 'disabledsubplugins'); + if ($config) { + $config = explode(',', $config); + foreach ($config as $sp) { + $sp = trim($sp); + if ($sp !== '') { + $disabledsubplugins[$sp] = $sp; + } + } + } + + $enabled = array(); + $installed = core_component::get_plugin_list('tinymce'); + foreach ($installed as $plugin => $fulldir) { + if (isset($disabledsubplugins[$plugin])) { + continue; + } + $enabled[$plugin] = $plugin; + } + + return $enabled; + } public function is_uninstall_allowed() { return true; @@ -59,26 +85,6 @@ class plugininfo_tinymce extends plugininfo_base { $ADMIN->add($parentnodename, $settings); } } - - public function is_enabled() { - static $disabledsubplugins = null; // TODO: MDL-34344 remove this once get_config() is cached via MUC! - - if (is_null($disabledsubplugins)) { - $disabledsubplugins = array(); - $config = get_config('editor_tinymce', 'disabledsubplugins'); - if ($config) { - $config = explode(',', $config); - foreach ($config as $sp) { - $sp = trim($sp); - if ($sp !== '') { - $disabledsubplugins[$sp] = $sp; - } - } - } - } - - return !isset($disabledsubplugins[$this->name]); - } } diff --git a/lib/editor/tinymce/subplugins.php b/lib/editor/tinymce/subplugins.php index 29236e81fd3..6eb01c41660 100644 --- a/lib/editor/tinymce/subplugins.php +++ b/lib/editor/tinymce/subplugins.php @@ -24,6 +24,7 @@ require(__DIR__ . '/../../../config.php'); require_once($CFG->libdir.'/adminlib.php'); +require_once($CFG->libdir.'/pluginlib.php'); $disable = optional_param('disable', '', PARAM_PLUGIN); $enable = optional_param('enable', '', PARAM_PLUGIN); @@ -61,5 +62,6 @@ if ($disable) { } set_config('disabledsubplugins', implode(',', $disabled), 'editor_tinymce'); +plugin_manager::reset_caches(); redirect($returnurl); diff --git a/lib/moodlelib.php b/lib/moodlelib.php index 92091ea16df..ad1e363caa4 100644 --- a/lib/moodlelib.php +++ b/lib/moodlelib.php @@ -1589,6 +1589,9 @@ function purge_all_caches() { theme_reset_all_caches(); get_string_manager()->reset_caches(); core_text::reset_caches(); + if (class_exists('plugin_manager')) { + plugin_manager::reset_caches(); + } // Bump up cacherev field for all courses. try { diff --git a/lib/pluginlib.php b/lib/pluginlib.php index cc8ae892676..9172fc1cd45 100644 --- a/lib/pluginlib.php +++ b/lib/pluginlib.php @@ -61,6 +61,12 @@ class plugin_manager { protected $pluginsinfo = null; /** @var array of raw subplugins information */ protected $subpluginsinfo = null; + /** @var array list of installed plugins $name=>$version */ + protected $installedplugins = null; + /** @var array list of all enabled plugins $name=>$name */ + protected $enabledplugins = null; + /** @var array list of all enabled plugins $name=>$diskversion */ + protected $presentplugins = null; /** * Direct initiation not allowed, use the factory method {@link self::instance()} @@ -87,39 +93,292 @@ class plugin_manager { } /** - * Reset any caches + * Reset all caches. * @param bool $phpunitreset */ public static function reset_caches($phpunitreset = false) { if ($phpunitreset) { self::$singletoninstance = null; + } else { + if (self::$singletoninstance) { + self::$singletoninstance->pluginsinfo = null; + self::$singletoninstance->subpluginsinfo = null; + self::$singletoninstance->installedplugins = null; + self::$singletoninstance->enabledplugins = null; + self::$singletoninstance->presentplugins = null; + } } + $cache = cache::make('core', 'plugin_manager'); + $cache->purge(); } /** * Returns the result of {@link core_component::get_plugin_types()} ordered for humans * * @see self::reorder_plugin_types() - * @param bool $fullpaths false means relative paths from dirroot * @return array (string)name => (string)location */ - public function get_plugin_types($fullpaths = true) { - return $this->reorder_plugin_types(core_component::get_plugin_types($fullpaths)); + public function get_plugin_types() { + if (func_num_args() > 0) { + if (!func_get_arg(0)) { + throw coding_exception('plugin_manager->get_plugin_types() does not support relative paths.'); + } + } + return $this->reorder_plugin_types(core_component::get_plugin_types()); } /** - * Returns list of known plugins of the given type + * Load list of installed plugins, + * always call before using $this->installedplugins. + * + * This method is caching results for all plugins. + */ + protected function load_installed_plugins() { + global $DB, $CFG; + + if ($this->installedplugins) { + return; + } + + if (empty($CFG->version)) { + // Nothing installed yet. + $this->installedplugins = array(); + return; + } + + $cache = cache::make('core', 'plugin_manager'); + $installed = $cache->get('installed'); + + if (is_array($installed)) { + $this->installedplugins = $installed; + return; + } + + $this->installedplugins = array(); + + if ($CFG->version < 2013092001.02) { + // We did not upgrade the database yet. + $modules = $DB->get_records('modules', array(), 'name ASC', 'id, name, version'); + foreach ($modules as $module) { + $this->installedplugins['mod'][$module->name] = $module->version; + } + $blocks = $DB->get_records('block', array(), 'name ASC', 'id, name, version'); + foreach ($blocks as $block) { + $this->installedplugins['block'][$block->name] = $block->version; + } + } + + $versions = $DB->get_records('config_plugins', array('name'=>'version')); + foreach ($versions as $version) { + $parts = explode('_', $version->plugin, 2); + if (!isset($parts[1])) { + // Invalid component, there must be at least one "_". + continue; + } + // Do not verify here if plugin type and name are valid. + $this->installedplugins[$parts[0]][$parts[1]] = $version->value; + } + + foreach ($this->installedplugins as $key => $value) { + ksort($this->installedplugins[$key]); + } + + $cache->set('installed', $this->installedplugins); + } + + /** + * Return list of installed plugins of given type. + * @param string $type + * @return array $name=>$version + */ + public function get_installed_plugins($type) { + $this->load_installed_plugins(); + if (isset($this->installedplugins[$type])) { + return $this->installedplugins[$type]; + } + return array(); + } + + /** + * Load list of all enabled plugins, + * call before using $this->enabledplugins. + * + * This method is caching results from individual plugin info classes. + */ + protected function load_enabled_plugins() { + global $CFG; + + if ($this->enabledplugins) { + return; + } + + if (empty($CFG->version)) { + $this->enabledplugins = array(); + return; + } + + $cache = cache::make('core', 'plugin_manager'); + $enabled = $cache->get('enabled'); + + if (is_array($enabled)) { + $this->enabledplugins = $enabled; + return; + } + + $this->enabledplugins = array(); + + require_once($CFG->libdir.'/adminlib.php'); + + $plugintypes = core_component::get_plugin_types(); + foreach ($plugintypes as $plugintype => $fulldir) { + // Hack: include mod and editor subplugin management classes first, + // the adminlib.php is supposed to contain extra admin settings too. + $plugininfoclass = 'plugininfo_' . $plugintype; + if (!class_exists($plugininfoclass) and file_exists("$fulldir/adminlib.php")) { + include_once("$fulldir/adminlib.php"); + } + if (class_exists($plugininfoclass)) { + $enabled = $plugininfoclass::get_enabled_plugins(); + if (!is_array($enabled)) { + continue; + } + $this->enabledplugins[$plugintype] = $enabled; + } + } + + $cache->set('enabled', $this->enabledplugins); + } + + /** + * Get list of enabled plugins of given type, + * the result may contain missing plugins. + * + * @param string $type + * @return array|null list of enabled plugins of this type, null if unknown + */ + public function get_enabled_plugins($type) { + $this->load_enabled_plugins(); + if (isset($this->enabledplugins[$type])) { + return $this->enabledplugins[$type]; + } + return null; + } + + /** + * Load list of all present plugins - call before using $this->presentplugins. + */ + protected function load_present_plugins() { + if ($this->presentplugins) { + return; + } + + $cache = cache::make('core', 'plugin_manager'); + $present = $cache->get('present'); + + if (is_array($present)) { + $this->presentplugins = $present; + return; + } + + $this->presentplugins = array(); + + $plugintypes = core_component::get_plugin_types(); + foreach ($plugintypes as $type => $typedir) { + $plugs = core_component::get_plugin_list($type); + foreach ($plugs as $plug => $fullplug) { + $plugin = new stdClass(); + $plugin->version = null; + $module = $plugin; + @include($fullplug.'/version.php'); + $this->presentplugins[$type][$plug] = $plugin; + } + } + + $cache->set('present', $this->presentplugins); + } + + /** + * Get list of present plugins of given type. + * + * @param string $type + * @return array|null list of presnet plugins $name=>$diskversion, null if unknown + */ + public function get_present_plugins($type) { + $this->load_present_plugins(); + if (isset($this->presentplugins[$type])) { + return $this->presentplugins[$type]; + } + return null; + } + + /** + * Returns a tree of known plugins and information about them + * + * @return array 2D array. The first keys are plugin type names (e.g. qtype); + * the second keys are the plugin local name (e.g. multichoice); and + * the values are the corresponding objects extending {@link plugininfo_base} + */ + public function get_plugins() { + global $CFG; + + if (is_array($this->pluginsinfo)) { + return $this->pluginsinfo; + } + + $this->pluginsinfo = array(); + + // Hack: include mod and editor subplugin management classes first, + // the adminlib.php is supposed to contain extra admin settings too. + require_once($CFG->libdir.'/adminlib.php'); + foreach (core_component::get_plugin_types_with_subplugins() as $type => $ignored) { + foreach (core_component::get_plugin_list($type) as $dir) { + if (file_exists("$dir/adminlib.php")) { + include_once("$dir/adminlib.php"); + } + } + } + $plugintypes = $this->get_plugin_types(); + foreach ($plugintypes as $plugintype => $plugintyperootdir) { + if (in_array($plugintype, array('base', 'general'))) { + throw new coding_exception('Illegal usage of reserved word for plugin type'); + } + if (class_exists('plugininfo_' . $plugintype)) { + $plugintypeclass = 'plugininfo_' . $plugintype; + } else { + $plugintypeclass = 'plugininfo_general'; + } + if (!in_array('plugininfo_base', class_parents($plugintypeclass))) { + throw new coding_exception('Class ' . $plugintypeclass . ' must extend plugininfo_base'); + } + $plugins = $plugintypeclass::get_plugins($plugintype, $plugintyperootdir, $plugintypeclass); + $this->pluginsinfo[$plugintype] = $plugins; + } + + if (empty($CFG->disableupdatenotifications) and !during_initial_install()) { + // append the information about available updates provided by {@link available_update_checker()} + $provider = available_update_checker::instance(); + foreach ($this->pluginsinfo as $plugintype => $plugins) { + foreach ($plugins as $plugininfoholder) { + $plugininfoholder->check_available_updates($provider); + } + } + } + + return $this->pluginsinfo; + } + + /** + * Returns list of known plugins of the given type. * * This method returns the subset of the tree returned by {@link self::get_plugins()}. * If the given type is not known, empty array is returned. * * @param string $type plugin type, e.g. 'mod' or 'workshopallocation' - * @param bool $disablecache force reload, cache can be used otherwise * @return array (string)plugin name (e.g. 'workshop') => corresponding subclass of {@link plugininfo_base} */ - public function get_plugins_of_type($type, $disablecache=false) { + public function get_plugins_of_type($type) { - $plugins = $this->get_plugins($disablecache); + $plugins = $this->get_plugins(); if (!isset($plugins[$type])) { return array(); @@ -129,78 +388,23 @@ class plugin_manager { } /** - * Returns a tree of known plugins and information about them - * - * @param bool $disablecache force reload, cache can be used otherwise - * @return array 2D array. The first keys are plugin type names (e.g. qtype); - * the second keys are the plugin local name (e.g. multichoice); and - * the values are the corresponding objects extending {@link plugininfo_base} - */ - public function get_plugins($disablecache=false) { - global $CFG; - - if ($disablecache or is_null($this->pluginsinfo)) { - // Hack: include mod and editor subplugin management classes first, - // the adminlib.php is supposed to contain extra admin settings too. - require_once($CFG->libdir.'/adminlib.php'); - foreach (core_component::get_plugin_types_with_subplugins() as $type => $ignored) { - foreach (core_component::get_plugin_list($type) as $dir) { - if (file_exists("$dir/adminlib.php")) { - include_once("$dir/adminlib.php"); - } - } - } - $this->pluginsinfo = array(); - $plugintypes = $this->get_plugin_types(); - foreach ($plugintypes as $plugintype => $plugintyperootdir) { - if (in_array($plugintype, array('base', 'general'))) { - throw new coding_exception('Illegal usage of reserved word for plugin type'); - } - if (class_exists('plugininfo_' . $plugintype)) { - $plugintypeclass = 'plugininfo_' . $plugintype; - } else { - $plugintypeclass = 'plugininfo_general'; - } - if (!in_array('plugininfo_base', class_parents($plugintypeclass))) { - throw new coding_exception('Class ' . $plugintypeclass . ' must extend plugininfo_base'); - } - $plugins = call_user_func(array($plugintypeclass, 'get_plugins'), $plugintype, $plugintyperootdir, $plugintypeclass); - $this->pluginsinfo[$plugintype] = $plugins; - } - - if (empty($CFG->disableupdatenotifications) and !during_initial_install()) { - // append the information about available updates provided by {@link available_update_checker()} - $provider = available_update_checker::instance(); - foreach ($this->pluginsinfo as $plugintype => $plugins) { - foreach ($plugins as $plugininfoholder) { - $plugininfoholder->check_available_updates($provider); - } - } - } - } - - return $this->pluginsinfo; - } - - /** - * Returns list of all known subplugins of the given plugin + * Returns list of all known subplugins of the given plugin. * * For plugins that do not provide subplugins (i.e. there is no support for it), * empty array is returned. * * @param string $component full component name, e.g. 'mod_workshop' - * @param bool $disablecache force reload, cache can be used otherwise * @return array (string) component name (e.g. 'workshopallocation_random') => subclass of {@link plugininfo_base} */ - public function get_subplugins_of_plugin($component, $disablecache=false) { + public function get_subplugins_of_plugin($component) { - $pluginfo = $this->get_plugin_info($component, $disablecache); + $pluginfo = $this->get_plugin_info($component); if (is_null($pluginfo)) { return array(); } - $subplugins = $this->get_subplugins($disablecache); + $subplugins = $this->get_subplugins(); if (!isset($subplugins[$pluginfo->component])) { return array(); @@ -221,28 +425,29 @@ class plugin_manager { * Returns list of plugins that define their subplugins and the information * about them from the db/subplugins.php file. * - * @param bool $disablecache force reload, cache can be used otherwise * @return array with keys like 'mod_quiz', and values the data from the * corresponding db/subplugins.php file. */ - public function get_subplugins($disablecache=false) { + public function get_subplugins() { - if ($disablecache or is_null($this->subpluginsinfo)) { - $this->subpluginsinfo = array(); - foreach (core_component::get_plugin_types_with_subplugins() as $type => $ignored) { - foreach (core_component::get_plugin_list($type) as $component => $ownerdir) { - $componentsubplugins = array(); - if (file_exists($ownerdir . '/db/subplugins.php')) { - $subplugins = array(); - include($ownerdir . '/db/subplugins.php'); - foreach ($subplugins as $subplugintype => $subplugintyperootdir) { - $subplugin = new stdClass(); - $subplugin->type = $subplugintype; - $subplugin->typerootdir = $subplugintyperootdir; - $componentsubplugins[$subplugintype] = $subplugin; - } - $this->subpluginsinfo[$type . '_' . $component] = $componentsubplugins; + if (is_array($this->subpluginsinfo)) { + return $this->subpluginsinfo; + } + + $this->subpluginsinfo = array(); + foreach (core_component::get_plugin_types_with_subplugins() as $type => $ignored) { + foreach (core_component::get_plugin_list($type) as $component => $ownerdir) { + $componentsubplugins = array(); + if (file_exists($ownerdir . '/db/subplugins.php')) { + $subplugins = array(); + include($ownerdir . '/db/subplugins.php'); + foreach ($subplugins as $subplugintype => $subplugintyperootdir) { + $subplugin = new stdClass(); + $subplugin->type = $subplugintype; + $subplugin->typerootdir = $subplugintyperootdir; + $componentsubplugins[$subplugintype] = $subplugin; } + $this->subpluginsinfo[$type . '_' . $component] = $componentsubplugins; } } } @@ -350,12 +555,11 @@ class plugin_manager { * Returns information about the known plugin, or null * * @param string $component frankenstyle component name. - * @param bool $disablecache force reload, cache can be used otherwise * @return plugininfo_base|null the corresponding plugin information. */ - public function get_plugin_info($component, $disablecache=false) { - list($type, $name) = $this->normalize_component($component); - $plugins = $this->get_plugins($disablecache); + public function get_plugin_info($component) { + list($type, $name) = core_component::normalize_component($component); + $plugins = $this->get_plugins(); if (isset($plugins[$type][$name])) { return $plugins[$type][$name]; } else { @@ -637,6 +841,7 @@ class plugin_manager { $plugins = array( 'qformat' => array('blackboard'), 'enrol' => array('authorize'), + 'tool' => array('bloglevelupgrade'), ); if (!isset($plugins[$type])) { @@ -879,18 +1084,6 @@ class plugin_manager { } } - /** - * Wrapper for the core function {@link core_component::normalize_component()}. - * - * This is here just to make it possible to mock it in unit tests. - * - * @param string $component - * @return array - */ - protected function normalize_component($component) { - return core_component::normalize_component($component); - } - /** * Reorders plugin types into a sequence to be displayed * @@ -2420,7 +2613,6 @@ class plugininfo_default_factory { $plugin->init_display_name(); $plugin->load_disk_version(); $plugin->load_db_version(); - $plugin->load_required_main_version(); $plugin->init_is_standard(); return $plugin; @@ -2445,7 +2637,7 @@ abstract class plugininfo_base { public $displayname; /** @var string the plugin source, one of plugin_manager::PLUGIN_SOURCE_xxx constants */ public $source; - /** @var fullpath to the location of this plugin */ + /** @var string fullpath to the location of this plugin */ public $rootdir; /** @var int|string the version of the plugin's source code */ public $versiondisk; @@ -2463,7 +2655,16 @@ abstract class plugininfo_base { public $availableupdates; /** - * Gathers and returns the information about all plugins of the given type + * Finds all enabled plugins, the result may include missing plugins. + * @return array|null of enabled plugins $pluginname=>$pluginname, null means unknown + */ + public static function get_enabled_plugins() { + return null; + } + + /** + * Gathers and returns the information about all plugins of the given type, + * either on disk or previously installed. * * @param string $type the name of the plugintype, eg. mod, auth or workshopform * @param string $typerootdir full path to the location of the plugin dir @@ -2471,15 +2672,35 @@ abstract class plugininfo_base { * @return array of plugintype classes, indexed by the plugin name */ public static function get_plugins($type, $typerootdir, $typeclass) { - - // get the information about plugins at the disk + // Get the information about plugins at the disk. $plugins = core_component::get_plugin_list($type); - $ondisk = array(); + $return = array(); foreach ($plugins as $pluginname => $pluginrootdir) { - $ondisk[$pluginname] = plugininfo_default_factory::make($type, $typerootdir, + $return[$pluginname] = plugininfo_default_factory::make($type, $typerootdir, $pluginname, $pluginrootdir, $typeclass); } - return $ondisk; + + // Fetch missing incorrectly uninstalled plugins. + $manager = plugin_manager::instance(); + $plugins = $manager->get_installed_plugins($type); + + foreach ($plugins as $name => $version) { + if (isset($return[$name])) { + continue; + } + $plugin = new $typeclass(); + $plugin->type = $type; + $plugin->typerootdir = $typerootdir; + $plugin->name = $name; + $plugin->rootdir = null; + $plugin->displayname = $name; + $plugin->versiondb = $version; + $plugin->init_is_standard(); + + $return[$name] = $plugin; + } + + return $return; } /** @@ -2524,34 +2745,6 @@ abstract class plugininfo_base { return $this->rootdir . '/' . $relativepath; } - /** - * Load the data from version.php. - * - * @param bool $disablecache do not attempt to obtain data from the cache - * @return stdClass the object called $plugin defined in version.php - */ - protected function load_version_php($disablecache=false) { - - $cache = cache::make('core', 'plugininfo_base'); - - $versionsphp = $cache->get('versions_php'); - - if (!$disablecache and $versionsphp !== false and isset($versionsphp[$this->component])) { - return $versionsphp[$this->component]; - } - - $versionfile = $this->full_path('version.php'); - - $plugin = new stdClass(); - if (is_readable($versionfile)) { - include($versionfile); - } - $versionsphp[$this->component] = $plugin; - $cache->set('versions_php', $versionsphp); - - return $plugin; - } - /** * Sets {@link $versiondisk} property to a numerical value representing the * version of the plugin's source code. @@ -2561,33 +2754,26 @@ abstract class plugininfo_base { * data) or is missing from disk. */ public function load_disk_version() { - $plugin = $this->load_version_php(); + $versions = plugin_manager::instance()->get_present_plugins($this->type); + + $this->versiondisk = null; + $this->versionrequires = null; + $this->dependencies = array(); + + if (!isset($versions[$this->name])) { + return; + } + + $plugin = $versions[$this->name]; + if (isset($plugin->version)) { $this->versiondisk = $plugin->version; } - } - - /** - * Sets {@link $versionrequires} property to a numerical value representing - * the version of Moodle core that this plugin requires. - */ - public function load_required_main_version() { - $plugin = $this->load_version_php(); if (isset($plugin->requires)) { $this->versionrequires = $plugin->requires; } - } - - /** - * Initialise {@link $dependencies} to the list of other plugins (in any) - * that this one requires to be installed. - */ - protected function load_other_required_plugins() { - $plugin = $this->load_version_php(); - if (!empty($plugin->dependencies)) { + if (isset($plugin->dependencies)) { $this->dependencies = $plugin->dependencies; - } else { - $this->dependencies = array(); // By default, no dependencies. } } @@ -2599,7 +2785,7 @@ abstract class plugininfo_base { */ public function get_other_required_plugins() { if (is_null($this->dependencies)) { - $this->load_other_required_plugins(); + $this->load_disk_version(); } return $this->dependencies; } @@ -2631,8 +2817,12 @@ abstract class plugininfo_base { * data) or has not been installed yet. */ public function load_db_version() { - if ($ver = self::get_version_from_config_plugins($this->component)) { - $this->versiondb = $ver; + $versions = plugin_manager::instance()->get_installed_plugins($this->type); + + if (isset($versions[$this->name])) { + $this->versiondb = $versions[$this->name]; + } else { + $this->versiondb = null; } } @@ -2707,7 +2897,9 @@ abstract class plugininfo_base { return plugin_manager::PLUGIN_STATUS_MISSING; } - } else if ((string)$this->versiondb === (string)$this->versiondisk) { + } else if ((float)$this->versiondb === (float)$this->versiondisk) { + // Note: the float comparison should work fine here + // because there are no arithmetic operations with the numbers. return plugin_manager::PLUGIN_STATUS_UPTODATE; } else if ($this->versiondb < $this->versiondisk) { @@ -2733,7 +2925,18 @@ abstract class plugininfo_base { * @return null|bool */ public function is_enabled() { - return null; + if (!$this->rootdir) { + // Plugin missing. + return false; + } + + $enabled = plugin_manager::instance()->get_enabled_plugins($this->type); + + if (!is_array($enabled)) { + return null; + } + + return isset($enabled[$this->name]); } /** @@ -2842,7 +3045,7 @@ abstract class plugininfo_base { * Note that even if true is returned, the core may still prohibit the uninstallation, * e.g. in case there are other plugins that depend on this one. * - * @return boolean + * @return bool */ public function is_uninstall_allowed() { @@ -2920,41 +3123,10 @@ abstract class plugininfo_base { )); } - /** - * Provides access to plugin versions from the {config_plugins} table - * - * @param string $plugin plugin name - * @param bool $disablecache do not attempt to obtain data from the cache - * @return int|bool the stored value or false if not found - */ - protected function get_version_from_config_plugins($plugin, $disablecache=false) { - global $DB; - - $cache = cache::make('core', 'plugininfo_base'); - - $pluginversions = $cache->get('versions_db'); - - if ($pluginversions === false or $disablecache) { - try { - $pluginversions = $DB->get_records_menu('config_plugins', array('name' => 'version'), 'plugin', 'plugin,value'); - } catch (dml_exception $e) { - // before install - $pluginversions = array(); - } - $cache->set('versions_db', $pluginversions); - } - - if (isset($pluginversions[$plugin])) { - return $pluginversions[$plugin]; - } else { - return false; - } - } - /** * Provides access to the plugin_manager singleton. * - * @return plugin_manmager + * @return plugin_manager */ protected function get_plugin_manager() { return plugin_manager::instance(); @@ -2973,31 +3145,14 @@ class plugininfo_general extends plugininfo_base { * Class for page side blocks */ class plugininfo_block extends plugininfo_base { + /** + * Finds all enabled plugins, the result may include missing plugins. + * @return array|null of enabled plugins $pluginname=>$pluginname, null means unknown + */ + public static function get_enabled_plugins() { + global $DB; - public static function get_plugins($type, $typerootdir, $typeclass) { - - // get the information about blocks at the disk - $blocks = parent::get_plugins($type, $typerootdir, $typeclass); - - // add blocks missing from disk - $blocksinfo = self::get_blocks_info(); - foreach ($blocksinfo as $blockname => $blockinfo) { - if (isset($blocks[$blockname])) { - continue; - } - $plugin = new $typeclass(); - $plugin->type = $type; - $plugin->typerootdir = $typerootdir; - $plugin->name = $blockname; - $plugin->rootdir = null; - $plugin->displayname = $blockname; - $plugin->versiondb = $blockinfo->version; - $plugin->init_is_standard(); - - $blocks[$blockname] = $plugin; - } - - return $blocks; + return $DB->get_records_menu('block', array('visible'=>1), 'name ASC', 'name, name AS val'); } /** @@ -3030,29 +3185,6 @@ class plugininfo_block extends plugininfo_base { } } - public function load_db_version() { - global $DB; - - $blocksinfo = self::get_blocks_info(); - if (isset($blocksinfo[$this->name]->version)) { - $this->versiondb = $blocksinfo[$this->name]->version; - } - } - - public function is_enabled() { - - $blocksinfo = self::get_blocks_info(); - if (isset($blocksinfo[$this->name]->visible)) { - if ($blocksinfo[$this->name]->visible) { - return true; - } else { - return false; - } - } else { - return parent::is_enabled(); - } - } - public function get_settings_section_name() { return 'blocksetting' . $this->name; } @@ -3061,6 +3193,12 @@ class plugininfo_block extends plugininfo_base { global $CFG, $USER, $DB, $OUTPUT, $PAGE; // in case settings.php wants to refer to them $ADMIN = $adminroot; // may be used in settings.php $block = $this; // also can be used inside settings.php + + if (!$this->rootdir) { + // Plugin missing. + return; + } + $section = $this->get_settings_section_name(); if (!$hassiteconfig || (($blockinstance = block_instance($this->name)) === false)) { @@ -3073,11 +3211,6 @@ class plugininfo_block extends plugininfo_base { $settings = new admin_settingpage($section, $this->displayname, 'moodle/site:config', $this->is_enabled() === false); include($this->full_path('settings.php')); // this may also set $settings to null - } else { - $blocksinfo = self::get_blocks_info(); - $settingsurl = new moodle_url('/admin/block.php', array('block' => $blocksinfo[$this->name]->id)); - $settings = new admin_externalpage($section, $this->displayname, - $settingsurl, 'moodle/site:config', $this->is_enabled() === false); } } if ($settings) { @@ -3103,32 +3236,6 @@ class plugininfo_block extends plugininfo_base { return '

                '.get_string('uninstallextraconfirmblock', 'core_plugin', array('instances'=>$count)).'

                '; } - - /** - * Provides access to the records in {block} table - * - * @param bool $disablecache do not attempt to obtain data from the cache - * @return array array of stdClasses - */ - protected static function get_blocks_info($disablecache=false) { - global $DB; - - $cache = cache::make('core', 'plugininfo_block'); - - $blocktypes = $cache->get('blocktypes'); - - if ($blocktypes === false or $disablecache) { - try { - $blocktypes = $DB->get_records('block', null, 'name', 'name,id,version,visible'); - } catch (dml_exception $e) { - // before install - $blocktypes = array(); - } - $cache->set('blocktypes', $blocktypes); - } - - return $blocktypes; - } } @@ -3137,80 +3244,29 @@ class plugininfo_block extends plugininfo_base { */ class plugininfo_filter extends plugininfo_base { - public static function get_plugins($type, $typerootdir, $typeclass) { - global $CFG, $DB; - - $filters = array(); - - // get the list of filters in /filter location - $installed = filter_get_all_installed(); - - foreach ($installed as $name => $displayname) { - $plugin = new $typeclass(); - $plugin->type = $type; - $plugin->typerootdir = $typerootdir; - $plugin->name = $name; - $plugin->rootdir = "$CFG->dirroot/filter/$name"; - $plugin->displayname = $displayname; - - $plugin->load_disk_version(); - $plugin->load_db_version(); - $plugin->load_required_main_version(); - $plugin->init_is_standard(); - - $filters[$plugin->name] = $plugin; - } - - // Do not mess with filter registration here! - - $globalstates = self::get_global_states(); - - // make sure that all registered filters are installed, just in case - foreach ($globalstates as $name => $info) { - if (!isset($filters[$name])) { - // oops, there is a record in filter_active but the filter is not installed - $plugin = new $typeclass(); - $plugin->type = $type; - $plugin->typerootdir = $typerootdir; - $plugin->name = $name; - $plugin->rootdir = "$CFG->dirroot/filter/$name"; - $plugin->displayname = $name; - - $plugin->load_db_version(); - - if (is_null($plugin->versiondb)) { - // this is a hack to stimulate 'Missing from disk' error - // because $plugin->versiondisk will be null !== false - $plugin->versiondb = false; - } - - $filters[$plugin->name] = $plugin; - } - } - - return $filters; - } - public function init_display_name() { - // do nothing, the name is set in self::get_plugins() + if (!get_string_manager()->string_exists('filtername', $this->component)) { + $this->displayname = '[filtername,' . $this->component . ']'; + } else { + $this->displayname = get_string('filtername', $this->component); + } } - public function is_enabled() { + /** + * Finds all enabled plugins, the result may include missing plugins. + * @return array|null of enabled plugins $pluginname=>$pluginname, null means unknown + */ + public static function get_enabled_plugins() { + global $DB, $CFG; + require_once("$CFG->libdir/filterlib.php"); - $globalstates = self::get_global_states(); - - foreach ($globalstates as $name => $info) { - if ($name === $this->name) { - if ($info->active == TEXTFILTER_DISABLED) { - return false; - } else { - // it may be 'On' or 'Off, but available' - return null; - } - } + $enabled = array(); + $filters = $DB->get_records_select('filter_active', "active <> :disabled", array('disabled'=>TEXTFILTER_DISABLED), 'filter ASC', 'id, filter'); + foreach ($filters as $filter) { + $enabled[$filter->filter] = $filter->filter; } - return null; + return $enabled; } public function get_settings_section_name() { @@ -3222,6 +3278,11 @@ class plugininfo_filter extends plugininfo_base { $ADMIN = $adminroot; // may be used in settings.php $filter = $this; // also can be used inside settings.php + if (!$this->rootdir) { + // Plugin missing. + return; + } + $settings = null; if ($hassiteconfig && file_exists($this->full_path('filtersettings.php'))) { $section = $this->get_settings_section_name(); @@ -3241,50 +3302,6 @@ class plugininfo_filter extends plugininfo_base { public function get_uninstall_url() { return new moodle_url('/admin/filters.php', array('sesskey' => sesskey(), 'filterpath' => $this->name, 'action' => 'delete')); } - - /** - * Provides access to the results of {@link filter_get_global_states()} - * but indexed by the normalized filter name - * - * The legacy filter name is available as ->legacyname property. - * - * @param bool $disablecache do not attempt to obtain data from the cache - * @return array - */ - protected static function get_global_states($disablecache=false) { - global $DB; - - $cache = cache::make('core', 'plugininfo_filter'); - - $globalstates = $cache->get('globalstates'); - - if ($globalstates === false or $disablecache) { - - if (!$DB->get_manager()->table_exists('filter_active')) { - // Not installed yet. - $cache->set('globalstates', array()); - return array(); - } - - $globalstates = array(); - - foreach (filter_get_global_states() as $name => $info) { - if (strpos($name, '/') !== false) { - // Skip existing before upgrade to new names. - continue; - } - - $filterinfo = new stdClass(); - $filterinfo->active = $info->active; - $filterinfo->sortorder = $info->sortorder; - $globalstates[$name] = $filterinfo; - } - - $cache->set('globalstates', $globalstates); - } - - return $globalstates; - } } @@ -3292,31 +3309,13 @@ class plugininfo_filter extends plugininfo_base { * Class for activity modules */ class plugininfo_mod extends plugininfo_base { - - public static function get_plugins($type, $typerootdir, $typeclass) { - - // get the information about plugins at the disk - $modules = parent::get_plugins($type, $typerootdir, $typeclass); - - // add modules missing from disk - $modulesinfo = self::get_modules_info(); - foreach ($modulesinfo as $modulename => $moduleinfo) { - if (isset($modules[$modulename])) { - continue; - } - $plugin = new $typeclass(); - $plugin->type = $type; - $plugin->typerootdir = $typerootdir; - $plugin->name = $modulename; - $plugin->rootdir = null; - $plugin->displayname = $modulename; - $plugin->versiondb = $moduleinfo->version; - $plugin->init_is_standard(); - - $modules[$modulename] = $plugin; - } - - return $modules; + /** + * Finds all enabled plugins, the result may include missing plugins. + * @return array|null of enabled plugins $pluginname=>$pluginname, null means unknown + */ + public static function get_enabled_plugins() { + global $DB; + return $DB->get_records_menu('modules', array('visible'=>1), 'name ASC', 'name, name AS val'); } /** @@ -3344,61 +3343,6 @@ class plugininfo_mod extends plugininfo_base { } } - /** - * Load the data from version.php. - * - * @param bool $disablecache do not attempt to obtain data from the cache - * @return object the data object defined in version.php. - */ - protected function load_version_php($disablecache=false) { - - $cache = cache::make('core', 'plugininfo_mod'); - - $versionsphp = $cache->get('versions_php'); - - if (!$disablecache and $versionsphp !== false and isset($versionsphp[$this->component])) { - return $versionsphp[$this->component]; - } - - $versionfile = $this->full_path('version.php'); - - $module = new stdClass(); - $plugin = new stdClass(); - if (is_readable($versionfile)) { - include($versionfile); - } - if (!isset($module->version) and isset($plugin->version)) { - $module = $plugin; - } - $versionsphp[$this->component] = $module; - $cache->set('versions_php', $versionsphp); - - return $module; - } - - public function load_db_version() { - global $DB; - - $modulesinfo = self::get_modules_info(); - if (isset($modulesinfo[$this->name]->version)) { - $this->versiondb = $modulesinfo[$this->name]->version; - } - } - - public function is_enabled() { - - $modulesinfo = self::get_modules_info(); - if (isset($modulesinfo[$this->name]->visible)) { - if ($modulesinfo[$this->name]->visible) { - return true; - } else { - return false; - } - } else { - return parent::is_enabled(); - } - } - public function get_settings_section_name() { return 'modsetting' . $this->name; } @@ -3407,11 +3351,16 @@ class plugininfo_mod extends plugininfo_base { global $CFG, $USER, $DB, $OUTPUT, $PAGE; // in case settings.php wants to refer to them $ADMIN = $adminroot; // may be used in settings.php $module = $this; // also can be used inside settings.php + + if (!$this->rootdir) { + // Plugin missing. + return; + } + $section = $this->get_settings_section_name(); - $modulesinfo = self::get_modules_info(); $settings = null; - if ($hassiteconfig && isset($modulesinfo[$this->name]) && file_exists($this->full_path('settings.php'))) { + if ($hassiteconfig && file_exists($this->full_path('settings.php'))) { $settings = new admin_settingpage($section, $this->displayname, 'moodle/site:config', $this->is_enabled() === false); include($this->full_path('settings.php')); // this may also set $settings to null @@ -3462,32 +3411,6 @@ class plugininfo_mod extends plugininfo_base { return '

                '.get_string('uninstallextraconfirmmod', 'core_plugin', array('instances'=>$count, 'courses'=>$courses)).'

                '; } - - /** - * Provides access to the records in {modules} table - * - * @param bool $disablecache do not attempt to obtain data from the cache - * @return array array of stdClasses - */ - protected static function get_modules_info($disablecache=false) { - global $DB; - - $cache = cache::make('core', 'plugininfo_mod'); - - $modulesinfo = $cache->get('modulesinfo'); - - if ($modulesinfo === false or $disablecache) { - try { - $modulesinfo = $DB->get_records('modules', null, 'name', 'name,id,version,visible'); - } catch (dml_exception $e) { - // before install - $modulesinfo = array(); - } - $cache->set('modulesinfo', $modulesinfo); - } - - return $modulesinfo; - } } @@ -3529,6 +3452,11 @@ class plugininfo_qtype extends plugininfo_base { global $CFG, $USER, $DB, $OUTPUT, $PAGE; // in case settings.php wants to refer to them $ADMIN = $adminroot; // may be used in settings.php $qtype = $this; // also can be used inside settings.php + + if (!$this->rootdir) { + // Most probably somebody deleted dir without proper uninstall. + return; + } $section = $this->get_settings_section_name(); $settings = null; @@ -3550,18 +3478,20 @@ class plugininfo_qtype extends plugininfo_base { * Class for authentication plugins */ class plugininfo_auth extends plugininfo_base { - - public function is_enabled() { + /** + * Finds all enabled plugins, the result may include missing plugins. + * @return array|null of enabled plugins $pluginname=>$pluginname, null means unknown + */ + public static function get_enabled_plugins() { global $CFG; - if (in_array($this->name, array('nologin', 'manual'))) { - // these two are always enabled and can't be disabled - return null; + // These two are always enabled and can't be disabled. + $enabled = array('nologin'=>'nologin', 'manual'=>'manual'); + foreach (explode(',', $CFG->auth) as $auth) { + $enabled[$auth] = $auth; } - $enabled = array_flip(explode(',', $CFG->auth)); - - return isset($enabled[$this->name]); + return $enabled; } public function get_settings_section_name() { @@ -3572,6 +3502,12 @@ class plugininfo_auth extends plugininfo_base { global $CFG, $USER, $DB, $OUTPUT, $PAGE; // in case settings.php wants to refer to them $ADMIN = $adminroot; // may be used in settings.php $auth = $this; // also to be used inside settings.php + + if (!$this->rootdir) { + // Plugin missing. + return; + } + $section = $this->get_settings_section_name(); $settings = null; @@ -3598,18 +3534,19 @@ class plugininfo_auth extends plugininfo_base { * Class for enrolment plugins */ class plugininfo_enrol extends plugininfo_base { - - public function is_enabled() { + /** + * Finds all enabled plugins, the result may include missing plugins. + * @return array|null of enabled plugins $pluginname=>$pluginname, null means unknown + */ + public static function get_enabled_plugins() { global $CFG; - // We do not actually need whole enrolment classes here so we do not call - // {@link enrol_get_plugins()}. Note that this may produce slightly different - // results, for example if the enrolment plugin does not contain lib.php - // but it is listed in $CFG->enrol_plugins_enabled + $enabled = array(); + foreach (explode(',', $CFG->enrol_plugins_enabled) as $enrol) { + $enabled[$enrol] = $enrol; + } - $enabled = array_flip(explode(',', $CFG->enrol_plugins_enabled)); - - return isset($enabled[$this->name]); + return $enabled; } public function get_settings_section_name() { @@ -3623,6 +3560,11 @@ class plugininfo_enrol extends plugininfo_base { public function load_settings(part_of_admin_tree $adminroot, $parentnodename, $hassiteconfig) { global $CFG, $USER, $DB, $OUTPUT, $PAGE; // in case settings.php wants to refer to them + if (!$this->rootdir) { + // Plugin missing. + return; + } + if (!$hassiteconfig or !file_exists($this->full_path('settings.php'))) { return; } @@ -3681,6 +3623,14 @@ class plugininfo_enrol extends plugininfo_base { * Class for messaging processors */ class plugininfo_message extends plugininfo_base { + /** + * Finds all enabled plugins, the result may include missing plugins. + * @return array|null of enabled plugins $pluginname=>$pluginname, null means unknown + */ + public static function get_enabled_plugins() { + global $DB; + return $DB->get_records_menu('message_processors', array('enabled'=>1), 'name ASC', 'name, name AS val'); + } public function get_settings_section_name() { return 'messagesetting' . $this->name; @@ -3689,6 +3639,12 @@ class plugininfo_message extends plugininfo_base { public function load_settings(part_of_admin_tree $adminroot, $parentnodename, $hassiteconfig) { global $CFG, $USER, $DB, $OUTPUT, $PAGE; // in case settings.php wants to refer to them $ADMIN = $adminroot; // may be used in settings.php + + if (!$this->rootdir) { + // Plugin missing. + return; + } + if (!$hassiteconfig) { return; } @@ -3709,18 +3665,6 @@ class plugininfo_message extends plugininfo_base { } } - /** - * @see plugintype_interface::is_enabled() - */ - public function is_enabled() { - $processors = get_message_processors(); - if (isset($processors[$this->name])) { - return $processors[$this->name]->configured && $processors[$this->name]->enabled; - } else { - return parent::is_enabled(); - } - } - public function is_uninstall_allowed() { $processors = get_message_processors(); if (isset($processors[$this->name])) { @@ -3744,12 +3688,13 @@ class plugininfo_message extends plugininfo_base { * Class for repositories */ class plugininfo_repository extends plugininfo_base { - - public function is_enabled() { - - $enabled = self::get_enabled_repositories(); - - return isset($enabled[$this->name]); + /** + * Finds all enabled plugins, the result may include missing plugins. + * @return array|null of enabled plugins $pluginname=>$pluginname, null means unknown + */ + public static function get_enabled_plugins() { + global $DB; + return $DB->get_records_menu('repository', array('visible'=>1), 'type ASC', 'type, type AS val'); } public function get_settings_section_name() { @@ -3757,6 +3702,11 @@ class plugininfo_repository extends plugininfo_base { } public function load_settings(part_of_admin_tree $adminroot, $parentnodename, $hassiteconfig) { + if (!$this->rootdir) { + // Plugin missing. + return; + } + if ($hassiteconfig && $this->is_enabled()) { // completely no access to repository setting when it is not enabled $sectionname = $this->get_settings_section_name(); @@ -3767,27 +3717,6 @@ class plugininfo_repository extends plugininfo_base { $adminroot->add($parentnodename, $settings); } } - - /** - * Provides access to the records in {repository} table - * - * @param bool $disablecache do not attempt to obtain data from the cache - * @return array array of stdClasses - */ - protected static function get_enabled_repositories($disablecache=false) { - global $DB; - - $cache = cache::make('core', 'plugininfo_repository'); - - $enabled = $cache->get('enabled'); - - if ($enabled === false or $disablecache) { - $enabled = $DB->get_records('repository', null, 'type', 'type,visible,sortorder'); - $cache->set('enabled', $enabled); - } - - return $enabled; - } } @@ -3795,44 +3724,17 @@ class plugininfo_repository extends plugininfo_base { * Class for portfolios */ class plugininfo_portfolio extends plugininfo_base { - - public function is_enabled() { - - $enabled = self::get_enabled_portfolios(); - - return isset($enabled[$this->name]); - } - /** - * Returns list of enabled portfolio plugins - * - * Portfolio plugin is enabled if there is at least one record in the {portfolio_instance} - * table for it. - * - * @param bool $disablecache do not attempt to obtain data from the cache - * @return array array of stdClasses with properties plugin and visible indexed by plugin + * Finds all enabled plugins, the result may include missing plugins. + * @return array|null of enabled plugins $pluginname=>$pluginname, null means unknown */ - protected static function get_enabled_portfolios($disablecache=false) { + public static function get_enabled_plugins() { global $DB; - $cache = cache::make('core', 'plugininfo_portfolio'); - - $enabled = $cache->get('enabled'); - - if ($enabled === false or $disablecache) { - $enabled = array(); - $instances = $DB->get_recordset('portfolio_instance', null, '', 'plugin,visible'); - foreach ($instances as $instance) { - if (isset($enabled[$instance->plugin])) { - if ($instance->visible) { - $enabled[$instance->plugin]->visible = $instance->visible; - } - } else { - $enabled[$instance->plugin] = $instance; - } - } - $instances->close(); - $cache->set('enabled', $enabled); + $enabled = array(); + $rs = $DB->get_recordset('portfolio_instance', array('visible'=>1), 'plugin ASC', 'plugin'); + foreach ($rs as $repository) { + $enabled[$repository->plugin] = $repository->plugin; } return $enabled; @@ -3911,6 +3813,24 @@ class plugininfo_local extends plugininfo_base { * Class for HTML editors */ class plugininfo_editor extends plugininfo_base { + /** + * Finds all enabled plugins, the result may include missing plugins. + * @return array|null of enabled plugins $pluginname=>$pluginname, null means unknown + */ + public static function get_enabled_plugins() { + global $CFG; + + if (empty($CFG->texteditors)) { + return array('tinymce'=>'tinymce', 'textarea'=>'textarea'); + } + + $enabled = array(); + foreach (explode(',', $CFG->texteditors) as $editor) { + $enabled[$editor] = $editor; + } + + return $enabled; + } public function get_settings_section_name() { return 'editorsettings' . $this->name; @@ -3920,6 +3840,12 @@ class plugininfo_editor extends plugininfo_base { global $CFG, $USER, $DB, $OUTPUT, $PAGE; // in case settings.php wants to refer to them $ADMIN = $adminroot; // may be used in settings.php $editor = $this; // also can be used inside settings.php + + if (!$this->rootdir) { + // Plugin missing. + return; + } + $section = $this->get_settings_section_name(); $settings = null; @@ -3943,27 +3869,6 @@ class plugininfo_editor extends plugininfo_base { return true; } } - - /** - * Returns the information about plugin availability - * - * True means that the plugin is enabled. False means that the plugin is - * disabled. Null means that the information is not available, or the - * plugin does not support configurable availability or the availability - * can not be changed. - * - * @return null|bool - */ - public function is_enabled() { - global $CFG; - if (empty($CFG->texteditors)) { - $CFG->texteditors = 'tinymce,textarea'; - } - if (in_array($this->name, explode(',', $CFG->texteditors))) { - return true; - } - return false; - } } /** @@ -3976,6 +3881,11 @@ class plugininfo_plagiarism extends plugininfo_base { } public function load_settings(part_of_admin_tree $adminroot, $parentnodename, $hassiteconfig) { + if (!$this->rootdir) { + // Plugin missing. + return; + } + // plagiarism plugin just redirect to settings.php in the plugins directory if ($hassiteconfig && file_exists($this->full_path('settings.php'))) { $section = $this->get_settings_section_name(); @@ -3995,6 +3905,24 @@ class plugininfo_plagiarism extends plugininfo_base { * Class for webservice protocols */ class plugininfo_webservice extends plugininfo_base { + /** + * Finds all enabled plugins, the result may include missing plugins. + * @return array|null of enabled plugins $pluginname=>$pluginname, null means unknown + */ + public static function get_enabled_plugins() { + global $CFG; + + if (empty($CFG->enablewebservices) or empty($CFG->webserviceprotocols)) { + return array(); + } + + $enabled = array(); + foreach (explode(',', $CFG->webserviceprotocols) as $protocol) { + $enabled[$protocol] = $protocol; + } + + return $enabled; + } public function get_settings_section_name() { return 'webservicesetting' . $this->name; @@ -4004,6 +3932,12 @@ class plugininfo_webservice extends plugininfo_base { global $CFG, $USER, $DB, $OUTPUT, $PAGE; // in case settings.php wants to refer to them $ADMIN = $adminroot; // may be used in settings.php $webservice = $this; // also can be used inside settings.php + + if (!$this->rootdir) { + // Plugin missing. + return; + } + $section = $this->get_settings_section_name(); $settings = null; @@ -4017,18 +3951,6 @@ class plugininfo_webservice extends plugininfo_base { } } - public function is_enabled() { - global $CFG; - if (empty($CFG->enablewebservices)) { - return false; - } - $active_webservices = empty($CFG->webserviceprotocols) ? array() : explode(',', $CFG->webserviceprotocols); - if (in_array($this->name, $active_webservices)) { - return true; - } - return false; - } - public function is_uninstall_allowed() { return false; } @@ -4038,6 +3960,36 @@ class plugininfo_webservice extends plugininfo_base { * Class for course formats */ class plugininfo_format extends plugininfo_base { + /** + * Finds all enabled plugins, the result may include missing plugins. + * @return array|null of enabled plugins $pluginname=>$pluginname, null means unknown + */ + public static function get_enabled_plugins() { + global $DB; + + $plugins = plugin_manager::instance()->get_installed_plugins('format'); + $installed = array(); + foreach ($plugins as $plugin => $version) { + $installed[] = 'format_'.$plugin; + } + + list($installed, $params) = $DB->get_in_or_equal($installed, SQL_PARAMS_NAMED); + $disabled = $DB->get_recordset_select('config_plugins', "plugin $installed AND name = 'disabled'", $params, 'plugin ASC'); + foreach ($disabled as $conf) { + if (empty($conf->value)) { + continue; + } + list($type, $name) = explode('_', $conf->component, 2); + unset($plugins[$name]); + } + + $enabled = array(); + foreach ($plugins as $plugin => $version) { + $enabled[$plugin] = $plugin; + } + + return $enabled; + } /** * Gathers and returns the information about all plugins of the given type @@ -4066,6 +4018,12 @@ class plugininfo_format extends plugininfo_base { public function load_settings(part_of_admin_tree $adminroot, $parentnodename, $hassiteconfig) { global $CFG, $USER, $DB, $OUTPUT, $PAGE; // in case settings.php wants to refer to them $ADMIN = $adminroot; // also may be used in settings.php + + if (!$this->rootdir) { + // Plugin missing. + return; + } + $section = $this->get_settings_section_name(); $settings = null; @@ -4079,10 +4037,6 @@ class plugininfo_format extends plugininfo_base { } } - public function is_enabled() { - return !get_config($this->component, 'disabled'); - } - public function is_uninstall_allowed() { if ($this->name !== get_config('moodlecourse', 'format') && $this->name !== 'site') { return true; diff --git a/lib/tests/available_update_checker_test.php b/lib/tests/available_update_checker_test.php new file mode 100644 index 00000000000..b1d9f27bb29 --- /dev/null +++ b/lib/tests/available_update_checker_test.php @@ -0,0 +1,290 @@ +. + +/** + * Unit tests for the update checker. + * + * @package core + * @category phpunit + * @copyright 2012 David Mudrak + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +global $CFG; +require_once($CFG->libdir.'/pluginlib.php'); +require_once(__DIR__.'/available_update_deployer_test.php'); + + +/** + * Tests of the basic API of the available update checker. + */ +class core_available_update_checker_testcase extends advanced_testcase { + + public function test_core_available_update() { + $provider = testable_available_update_checker::instance(); + $this->assertInstanceOf('available_update_checker', $provider); + + $provider->fake_current_environment(2012060102.00, '2.3.2 (Build: 20121012)', '2.3', array()); + $updates = $provider->get_update_info('core'); + $this->assertCount(2, $updates); + + $provider->fake_current_environment(2012060103.00, '2.3.3 (Build: 20121212)', '2.3', array()); + $updates = $provider->get_update_info('core'); + $this->assertCount(1, $updates); + + $provider->fake_current_environment(2012060103.00, '2.3.3 (Build: 20121212)', '2.3', array()); + $updates = $provider->get_update_info('core', array('minmaturity' => MATURITY_STABLE)); + $this->assertNull($updates); + } + + /** + * If there are no fetched data yet, the first cron should fetch them. + */ + public function test_cron_initial_fetch() { + $provider = testable_available_update_checker::instance(); + $provider->fakerecentfetch = null; + $provider->fakecurrenttimestamp = -1; + $this->setExpectedException('testable_available_update_checker_cron_executed'); + $provider->cron(); + } + + /** + * If there is a fresh fetch available, no cron execution is expected. + */ + public function test_cron_has_fresh_fetch() { + $provider = testable_available_update_checker::instance(); + $provider->fakerecentfetch = time() - 23 * HOURSECS; // Fetched 23 hours ago. + $provider->fakecurrenttimestamp = -1; + $provider->cron(); + $this->assertTrue(true); // We should get here with no exception thrown. + } + + /** + * If there is an outdated fetch, the cron execution is expected. + */ + public function test_cron_has_outdated_fetch() { + $provider = testable_available_update_checker::instance(); + $provider->fakerecentfetch = time() - 49 * HOURSECS; // Fetched 49 hours ago. + $provider->fakecurrenttimestamp = -1; + $this->setExpectedException('testable_available_update_checker_cron_executed'); + $provider->cron(); + } + + /** + * The first cron after 01:42 AM today should fetch the data. + * + * @see testable_available_update_checker::cron_execution_offset() + */ + public function test_cron_offset_execution_not_yet() { + $provider = testable_available_update_checker::instance(); + $provider->fakecurrenttimestamp = mktime(1, 40, 02); // 01:40:02 AM today + $provider->fakerecentfetch = $provider->fakecurrenttimestamp - 24 * HOURSECS; + $provider->cron(); + $this->assertTrue(true); // We should get here with no exception thrown. + } + + /** + * The first cron after 01:42 AM today should fetch the data and then + * it is supposed to wait next 24 hours. + * + * @see testable_available_update_checker::cron_execution_offset() + */ + public function test_cron_offset_execution() { + $provider = testable_available_update_checker::instance(); + + // The cron at 01:45 should fetch the data. + $provider->fakecurrenttimestamp = mktime(1, 45, 02); // 01:45:02 AM today + $provider->fakerecentfetch = $provider->fakecurrenttimestamp - 24 * HOURSECS - 1; + $executed = false; + try { + $provider->cron(); + } catch (testable_available_update_checker_cron_executed $e) { + $executed = true; + } + $this->assertTrue($executed, 'Cron should be executed at 01:45:02 but it was not.'); + + // Another cron at 06:45 should still consider data as fresh enough. + $provider->fakerecentfetch = $provider->fakecurrenttimestamp; + $provider->fakecurrenttimestamp = mktime(6, 45, 03); // 06:45:03 AM + $executed = false; + try { + $provider->cron(); + } catch (testable_available_update_checker_cron_executed $e) { + $executed = true; + } + $this->assertFalse($executed, 'Cron should not be executed at 06:45:03 but it was.'); + + // The next scheduled execution should happen the next day. + $provider->fakecurrenttimestamp = $provider->fakerecentfetch + 24 * HOURSECS + 1; + $executed = false; + try { + $provider->cron(); + } catch (testable_available_update_checker_cron_executed $e) { + $executed = true; + } + $this->assertTrue($executed, 'Cron should be executed the next night but it was not.'); + } + + public function test_compare_responses_both_empty() { + $provider = testable_available_update_checker::instance(); + $old = array(); + $new = array(); + $cmp = $provider->compare_responses($old, $new); + $this->assertInternalType('array', $cmp); + $this->assertEmpty($cmp); + } + + public function test_compare_responses_old_empty() { + $provider = testable_available_update_checker::instance(); + $old = array(); + $new = array( + 'updates' => array( + 'core' => array( + array( + 'version' => 2012060103 + ) + ) + ) + ); + $cmp = $provider->compare_responses($old, $new); + $this->assertInternalType('array', $cmp); + $this->assertNotEmpty($cmp); + $this->assertTrue(isset($cmp['core'][0]['version'])); + $this->assertEquals(2012060103, $cmp['core'][0]['version']); + } + + public function test_compare_responses_no_change() { + $provider = testable_available_update_checker::instance(); + $old = $new = array( + 'updates' => array( + 'core' => array( + array( + 'version' => 2012060104 + ), + array( + 'version' => 2012120100 + ) + ), + 'mod_foo' => array( + array( + 'version' => 2011010101 + ) + ) + ) + ); + $cmp = $provider->compare_responses($old, $new); + $this->assertInternalType('array', $cmp); + $this->assertEmpty($cmp); + } + + public function test_compare_responses_new_and_missing_update() { + $provider = testable_available_update_checker::instance(); + $old = array( + 'updates' => array( + 'core' => array( + array( + 'version' => 2012060104 + ) + ), + 'mod_foo' => array( + array( + 'version' => 2011010101 + ) + ) + ) + ); + $new = array( + 'updates' => array( + 'core' => array( + array( + 'version' => 2012060104 + ), + array( + 'version' => 2012120100 + ) + ) + ) + ); + $cmp = $provider->compare_responses($old, $new); + $this->assertInternalType('array', $cmp); + $this->assertNotEmpty($cmp); + $this->assertCount(1, $cmp); + $this->assertCount(1, $cmp['core']); + $this->assertEquals(2012120100, $cmp['core'][0]['version']); + } + + public function test_compare_responses_modified_update() { + $provider = testable_available_update_checker::instance(); + $old = array( + 'updates' => array( + 'mod_foo' => array( + array( + 'version' => 2011010101 + ) + ) + ) + ); + $new = array( + 'updates' => array( + 'mod_foo' => array( + array( + 'version' => 2011010102 + ) + ) + ) + ); + $cmp = $provider->compare_responses($old, $new); + $this->assertInternalType('array', $cmp); + $this->assertNotEmpty($cmp); + $this->assertCount(1, $cmp); + $this->assertCount(1, $cmp['mod_foo']); + $this->assertEquals(2011010102, $cmp['mod_foo'][0]['version']); + } + + public function test_compare_responses_invalid_format() { + $provider = testable_available_update_checker::instance(); + $broken = array( + 'status' => 'ERROR' // No 'updates' key here. + ); + $this->setExpectedException('available_update_checker_exception'); + $cmp = $provider->compare_responses($broken, $broken); + } + + public function test_is_same_release_explicit() { + $provider = testable_available_update_checker::instance(); + $this->assertTrue($provider->is_same_release('2.3dev (Build: 20120323)', '2.3dev (Build: 20120323)')); + $this->assertTrue($provider->is_same_release('2.3dev (Build: 20120323)', '2.3dev (Build: 20120330)')); + $this->assertFalse($provider->is_same_release('2.3dev (Build: 20120529)', '2.3 (Build: 20120601)')); + $this->assertFalse($provider->is_same_release('2.3dev', '2.3 dev')); + $this->assertFalse($provider->is_same_release('2.3.1', '2.3')); + $this->assertFalse($provider->is_same_release('2.3.1', '2.3.2')); + $this->assertTrue($provider->is_same_release('2.3.2+', '2.3.2')); // Yes, really! + $this->assertTrue($provider->is_same_release('2.3.2 (Build: 123456)', '2.3.2+ (Build: 123457)')); + $this->assertFalse($provider->is_same_release('3.0 Community Edition', '3.0 Enterprise Edition')); + $this->assertTrue($provider->is_same_release('3.0 Community Edition', '3.0 Community Edition (Build: 20290101)')); + } + + public function test_is_same_release_implicit() { + $provider = testable_available_update_checker::instance(); + $provider->fake_current_environment(2012060102.00, '2.3.2 (Build: 20121012)', '2.3', array()); + $this->assertTrue($provider->is_same_release('2.3.2')); + $this->assertTrue($provider->is_same_release('2.3.2+')); + $this->assertTrue($provider->is_same_release('2.3.2+ (Build: 20121013)')); + $this->assertFalse($provider->is_same_release('2.4dev (Build: 20121012)')); + } +} diff --git a/lib/tests/available_update_deployer_test.php b/lib/tests/available_update_deployer_test.php new file mode 100644 index 00000000000..23e75c52d8c --- /dev/null +++ b/lib/tests/available_update_deployer_test.php @@ -0,0 +1,209 @@ +. + +/** + * Unit tests for the update deployer. + * + * @package core + * @category phpunit + * @copyright 2012 David Mudrak + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +global $CFG; +require_once($CFG->libdir.'/pluginlib.php'); + + +/** + * Test cases for {@link available_update_deployer} class. + */ +class core_available_update_deployer_testcase extends advanced_testcase { + + public function test_magic_setters() { + $deployer = testable_available_update_deployer::instance(); + $value = new moodle_url('/'); + $deployer->set_returnurl($value); + $this->assertSame($deployer->get_returnurl(), $value); + } + + public function test_prepare_authorization() { + global $CFG; + + $deployer = testable_available_update_deployer::instance(); + list($passfile, $password) = $deployer->prepare_authorization(); + $filename = $CFG->phpunit_dataroot.'/mdeploy/auth/'.$passfile; + $this->assertFileExists($filename); + $stored = file($filename, FILE_IGNORE_NEW_LINES); + $this->assertCount(2, $stored); + $this->assertGreaterThan(23, strlen($stored[0])); + $this->assertSame($stored[0], $password); + $this->assertLessThan(60, time() - (int)$stored[1]); + } +} + + +/** + * Modified version of {@link available_update_checker} suitable for testing. + */ +class testable_available_update_checker extends available_update_checker { + + /** @var replaces the default DB table storage for the fetched response */ + protected $fakeresponsestorage; + /** @var int stores the fake recentfetch value */ + public $fakerecentfetch = -1; + /** @var int stores the fake value of time() */ + public $fakecurrenttimestamp = -1; + + /** + * Factory method for this class. + * + * @return testable_available_update_checker the singleton instance + */ + public static function instance() { + global $CFG; + + if (is_null(self::$singletoninstance)) { + self::$singletoninstance = new self(); + } + return self::$singletoninstance; + } + + protected function validate_response($response) { + } + + protected function store_response($response) { + $this->fakeresponsestorage = $response; + } + + protected function restore_response($forcereload = false) { + $this->recentfetch = time(); + $this->recentresponse = $this->decode_response($this->get_fake_response()); + } + + public function compare_responses(array $old, array $new) { + return parent::compare_responses($old, $new); + } + + public function is_same_release($remote, $local=null) { + return parent::is_same_release($remote, $local); + } + + protected function load_current_environment($forcereload=false) { + } + + public function fake_current_environment($version, $release, $branch, array $plugins) { + $this->currentversion = $version; + $this->currentrelease = $release; + $this->currentbranch = $branch; + $this->currentplugins = $plugins; + } + + public function get_last_timefetched() { + if ($this->fakerecentfetch == -1) { + return parent::get_last_timefetched(); + } else { + return $this->fakerecentfetch; + } + } + + private function get_fake_response() { + $fakeresponse = array( + 'status' => 'OK', + 'provider' => 'http://download.moodle.org/api/1.0/updates.php', + 'apiver' => '1.0', + 'timegenerated' => time(), + 'forversion' => '2012010100.00', + 'forbranch' => '2.3', + 'ticket' => sha1('No, I am not going to mention the word "frog" here. Oh crap. I just did.'), + 'updates' => array( + 'core' => array( + array( + 'version' => 2012060103.00, + 'release' => '2.3.3 (Build: 20121201)', + 'maturity' => 200, + 'url' => 'http://download.moodle.org/', + 'download' => 'http://download.moodle.org/download.php/MOODLE_23_STABLE/moodle-2.3.3-latest.zip', + ), + array( + 'version' => 2012120100.00, + 'release' => '2.4dev (Build: 20121201)', + 'maturity' => 50, + 'url' => 'http://download.moodle.org/', + 'download' => 'http://download.moodle.org/download.php/MOODLE_24_STABLE/moodle-2.4.0-latest.zip', + ), + ), + 'mod_foo' => array( + array( + 'version' => 2012030501, + 'requires' => 2012010100, + 'maturity' => 200, + 'release' => '1.1', + 'url' => 'http://moodle.org/plugins/blahblahblah/', + 'download' => 'http://moodle.org/plugins/download.php/blahblahblah', + ), + array( + 'version' => 2012030502, + 'requires' => 2012010100, + 'maturity' => 100, + 'release' => '1.2 beta', + 'url' => 'http://moodle.org/plugins/', + ), + ), + ), + ); + + return json_encode($fakeresponse); + } + + protected function cron_current_timestamp() { + if ($this->fakecurrenttimestamp == -1) { + return parent::cron_current_timestamp(); + } else { + return $this->fakecurrenttimestamp; + } + } + + protected function cron_mtrace($msg, $eol = PHP_EOL) { + } + + protected function cron_autocheck_enabled() { + return true; + } + + protected function cron_execution_offset() { + // Autofetch should run by the first cron after 01:42 AM. + return 42 * MINSECS; + } + + protected function cron_execute() { + throw new testable_available_update_checker_cron_executed('Cron executed!'); + } +} + + +/** + * Exception used to detect {@link available_update_checker::cron_execute()} calls. + */ +class testable_available_update_checker_cron_executed extends Exception { +} + +/** + * Modified {@link available_update_deployer} suitable for testing purposes. + */ +class testable_available_update_deployer extends available_update_deployer { +} diff --git a/lib/tests/fixtures/mockplugins/mod/bar/version.php b/lib/tests/fixtures/mockplugins/mod/bar/version.php deleted file mode 100644 index 47613f65a4c..00000000000 --- a/lib/tests/fixtures/mockplugins/mod/bar/version.php +++ /dev/null @@ -1,4 +0,0 @@ -version = 2012030500; -$module->requires = 2012010100; diff --git a/lib/tests/fixtures/mockplugins/mod/baz/meg/one/version.php b/lib/tests/fixtures/mockplugins/mod/baz/meg/one/version.php deleted file mode 100644 index b099a779bbf..00000000000 --- a/lib/tests/fixtures/mockplugins/mod/baz/meg/one/version.php +++ /dev/null @@ -1,5 +0,0 @@ -version = 2013041103; -$plugin->requires = 2013010100; -$plugin->component = 'bazmeg_one'; diff --git a/lib/tests/fixtures/mockplugins/mod/baz/version.php b/lib/tests/fixtures/mockplugins/mod/baz/version.php deleted file mode 100644 index 47613f65a4c..00000000000 --- a/lib/tests/fixtures/mockplugins/mod/baz/version.php +++ /dev/null @@ -1,4 +0,0 @@ -version = 2012030500; -$module->requires = 2012010100; diff --git a/lib/tests/fixtures/mockplugins/mod/foo/lish/frog/version.php b/lib/tests/fixtures/mockplugins/mod/foo/lish/frog/version.php deleted file mode 100644 index b5dd0eeba04..00000000000 --- a/lib/tests/fixtures/mockplugins/mod/foo/lish/frog/version.php +++ /dev/null @@ -1,6 +0,0 @@ -version = 2013041103; -$plugin->requires = 2013010100; -$plugin->component = 'foolish_frog'; -$plugin->dependencies = array('mod_foo' => 2012030500); diff --git a/lib/tests/fixtures/mockplugins/mod/foo/lish/hippo/version.php b/lib/tests/fixtures/mockplugins/mod/foo/lish/hippo/version.php deleted file mode 100644 index f64b02d59ff..00000000000 --- a/lib/tests/fixtures/mockplugins/mod/foo/lish/hippo/version.php +++ /dev/null @@ -1,6 +0,0 @@ -version = 2013041103; -$plugin->requires = 2012010100; -$plugin->component = 'foolish_hippo'; -$plugin->dependencies = array('foolish_frog' => ANY_VERSION); diff --git a/lib/tests/fixtures/mockplugins/mod/foo/version.php b/lib/tests/fixtures/mockplugins/mod/foo/version.php deleted file mode 100644 index a12a76a40dc..00000000000 --- a/lib/tests/fixtures/mockplugins/mod/foo/version.php +++ /dev/null @@ -1,10 +0,0 @@ -version = 2012030500; -$module->requires = 2012010100; -$module->component = 'mod_foo'; -$module->dependencies = array( - 'mod_bar' => 2012030500, - 'mod_missing' => ANY_VERSION, - 'foolish_frog' => ANY_VERSION, -); diff --git a/lib/tests/fixtures/mockplugins/mod/new/version.php b/lib/tests/fixtures/mockplugins/mod/new/version.php deleted file mode 100644 index 976ddf1204b..00000000000 --- a/lib/tests/fixtures/mockplugins/mod/new/version.php +++ /dev/null @@ -1,5 +0,0 @@ -version = 2013041900; -$module->requires = 2012010100; -$module->component = 'mod_new'; diff --git a/lib/tests/fixtures/mockplugins/mod/qux/cat/one/version.php b/lib/tests/fixtures/mockplugins/mod/qux/cat/one/version.php deleted file mode 100644 index 4c9e9781270..00000000000 --- a/lib/tests/fixtures/mockplugins/mod/qux/cat/one/version.php +++ /dev/null @@ -1,6 +0,0 @@ -version = 2013041103; -$plugin->requires = 2013010100; -$plugin->component = 'quxcat_one'; -$plugin->dependencies = array('bazmeg_one' => 2013010100); diff --git a/lib/tests/fixtures/mockplugins/mod/qux/version.php b/lib/tests/fixtures/mockplugins/mod/qux/version.php deleted file mode 100644 index 9c1c5f01a28..00000000000 --- a/lib/tests/fixtures/mockplugins/mod/qux/version.php +++ /dev/null @@ -1,5 +0,0 @@ -version = 2013041103; -$plugin->requires = 2013010100; -$plugin->component = 'mod_qux'; diff --git a/lib/tests/plugin_manager_test.php b/lib/tests/plugin_manager_test.php new file mode 100644 index 00000000000..4a8f3788354 --- /dev/null +++ b/lib/tests/plugin_manager_test.php @@ -0,0 +1,232 @@ +. + +/** + * Unit tests for plugin manager class. + * + * @package core + * @category phpunit + * @copyright 2013 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +global $CFG; +require_once($CFG->libdir.'/pluginlib.php'); + + +/** + * Tests of the basic API of the plugin manager. + */ +class core_plugin_manager_testcase extends advanced_testcase { + + public function test_instance() { + $pluginman = plugin_manager::instance(); + $this->assertInstanceOf('plugin_manager', $pluginman); + $pluginman2 = plugin_manager::instance(); + $this->assertSame($pluginman, $pluginman2); + } + + public function test_reset_caches() { + // Make sure there are no warnings or errors. + plugin_manager::reset_caches(); + } + + public function test_get_plugin_types() { + // Make sure there are no warnings or errors. + $types = plugin_manager::instance()->get_plugin_types(); + $this->assertInternalType('array', $types); + foreach ($types as $type => $fulldir) { + $this->assertFileExists($fulldir); + } + } + + public function test_get_installed_plugins() { + $types = plugin_manager::instance()->get_plugin_types(); + foreach ($types as $type => $fulldir) { + $installed = plugin_manager::instance()->get_installed_plugins($type); + foreach ($installed as $plugin => $version) { + $this->assertRegExp('/^[a-z]+[a-z0-9_]*$/', $plugin); + $this->assertTrue(is_numeric($version), 'All plugins should have a version, plugin '.$type.'_'.$plugin.' does not have version info.'); + } + } + } + + public function test_get_enabled_plugins() { + $types = plugin_manager::instance()->get_plugin_types(); + foreach ($types as $type => $fulldir) { + $enabled = plugin_manager::instance()->get_enabled_plugins($type); + if (is_array($enabled)) { + foreach ($enabled as $key => $val) { + $this->assertRegExp('/^[a-z]+[a-z0-9_]*$/', $key); + $this->assertSame($key, $val); + } + } else { + $this->assertNull($enabled); + } + } + } + + public function test_get_present_plugins() { + $types = plugin_manager::instance()->get_plugin_types(); + foreach ($types as $type => $fulldir) { + $present = plugin_manager::instance()->get_present_plugins($type); + if (is_array($present)) { + foreach ($present as $plugin => $version) { + $this->assertRegExp('/^[a-z]+[a-z0-9_]*$/', $plugin, 'All plugins are supposed to have version.php file.'); + $this->assertInternalType('object', $version); + $this->assertTrue(is_numeric($version->version), 'All plugins should have a version, plugin '.$type.'_'.$plugin.' does not have version info.'); + } + } else { + // No plugins of this type exist. + $this->assertNull($present); + } + } + } + + public function test_get_plugins() { + $plugininfos = plugin_manager::instance()->get_plugins(); + foreach ($plugininfos as $type => $infos) { + foreach ($infos as $name => $info) { + $this->assertInstanceOf('plugininfo_base', $info); + } + } + } + + public function test_get_plugins_of_type() { + $plugininfos = plugin_manager::instance()->get_plugins(); + foreach ($plugininfos as $type => $infos) { + $this->assertSame($infos, plugin_manager::instance()->get_plugins_of_type($type)); + } + } + + public function test_get_subplugins_of_plugin() { + global $CFG; + + // Any standard plugin with subplugins is suitable. + $this->assertFileExists("$CFG->dirroot/lib/editor/tinymce", 'TinyMCE is not present.'); + + $subplugins = plugin_manager::instance()->get_subplugins_of_plugin('editor_tinymce'); + foreach ($subplugins as $component => $info) { + $this->assertInstanceOf('plugininfo_base', $info); + } + } + + public function test_get_subplugins() { + // Tested already indirectly from test_get_subplugins_of_plugin(). + $subplugins = plugin_manager::instance()->get_subplugins(); + $this->assertInternalType('array', $subplugins); + } + + public function test_get_parent_of_subplugin() { + global $CFG; + + // Any standard plugin with subplugins is suitable. + $this->assertFileExists("$CFG->dirroot/lib/editor/tinymce", 'TinyMCE is not present.'); + + $parent = plugin_manager::instance()->get_parent_of_subplugin('tinymce'); + $this->assertSame('editor_tinymce', $parent); + } + + public function test_plugin_name() { + global $CFG; + + // Any standard plugin is suitable. + $this->assertFileExists("$CFG->dirroot/lib/editor/tinymce", 'TinyMCE is not present.'); + + $name = plugin_manager::instance()->plugin_name('editor_tinymce'); + $this->assertSame(get_string('pluginname', 'editor_tinymce'), $name); + } + + public function test_plugintype_name() { + $name = plugin_manager::instance()->plugintype_name('editor'); + $this->assertSame(get_string('type_editor', 'core_plugin'), $name); + } + + public function test_plugintype_name_plural() { + $name = plugin_manager::instance()->plugintype_name_plural('editor'); + $this->assertSame(get_string('type_editor_plural', 'core_plugin'), $name); + } + + public function test_get_plugin_info() { + global $CFG; + + // Any standard plugin is suitable. + $this->assertFileExists("$CFG->dirroot/lib/editor/tinymce", 'TinyMCE is not present.'); + + $info = plugin_manager::instance()->get_plugin_info('editor_tinymce'); + $this->assertInstanceOf('plugininfo_editor', $info); + } + + public function test_can_uninstall_plugin() { + global $CFG; + + // Any standard plugin that is required by some other standard plugin is ok. + $this->assertFileExists("$CFG->dirroot/$CFG->admin/tool/assignmentupgrade", 'assign upgrade tool is not present'); + $this->assertFileExists("$CFG->dirroot/mod/assign", 'assign module is not present'); + + $this->assertFalse(plugin_manager::instance()->can_uninstall_plugin('mod_assign')); + $this->assertTrue(plugin_manager::instance()->can_uninstall_plugin('tool_assignmentupgrade')); + } + + public function test_plugin_states() { + global $CFG; + $this->resetAfterTest(); + + // Any standard plugin that is ok. + $this->assertFileExists("$CFG->dirroot/mod/assign", 'assign module is not present'); + $this->assertFileExists("$CFG->dirroot/mod/forum", 'forum module is not present'); + $this->assertFileExists("$CFG->dirroot/$CFG->admin/tool/phpunit", 'phpunit tool is not present'); + $this->assertFileNotExists("$CFG->dirroot/mod/xxxxxxx"); + $this->assertFileNotExists("$CFG->dirroot/enrol/autorize"); + + // Ready for upgrade. + $assignversion = get_config('mod_assign', 'version'); + set_config('version', $assignversion - 1, 'mod_assign'); + // Downgrade problem. + $forumversion = get_config('mod_forum', 'version'); + set_config('version', $forumversion + 1, 'mod_forum'); + // Not installed yet. + unset_config('version', 'tool_phpunit'); + // Missing already installed. + set_config('version', 2013091300, 'mod_xxxxxxx'); + // Deleted present. + set_config('version', 2013091300, 'enrol_authorize'); + + plugin_manager::reset_caches(); + + $plugininfos = plugin_manager::instance()->get_plugins(); + foreach ($plugininfos as $type => $infos) { + foreach ($infos as $name => $info) { + /** @var plugininfo_base $info */ + if ($info->component === 'mod_assign') { + $this->assertSame(plugin_manager::PLUGIN_STATUS_UPGRADE, $info->get_status(), 'Invalid '.$info->component.' state'); + } else if ($info->component === 'mod_forum') { + $this->assertSame(plugin_manager::PLUGIN_STATUS_DOWNGRADE, $info->get_status(), 'Invalid '.$info->component.' state'); + } else if ($info->component === 'tool_phpunit') { + $this->assertSame(plugin_manager::PLUGIN_STATUS_NEW, $info->get_status(), 'Invalid '.$info->component.' state'); + } else if ($info->component === 'mod_xxxxxxx') { + $this->assertSame(plugin_manager::PLUGIN_STATUS_MISSING, $info->get_status(), 'Invalid '.$info->component.' state'); + } else if ($info->component === 'enrol_authorize') { + $this->assertSame(plugin_manager::PLUGIN_STATUS_DELETE, $info->get_status(), 'Invalid '.$info->component.' state'); + } else { + $this->assertSame(plugin_manager::PLUGIN_STATUS_UPTODATE, $info->get_status(), 'Invalid '.$info->component.' state'); + } + } + } + } +} diff --git a/lib/tests/pluginlib_test.php b/lib/tests/pluginlib_test.php deleted file mode 100644 index d6f47d135fb..00000000000 --- a/lib/tests/pluginlib_test.php +++ /dev/null @@ -1,950 +0,0 @@ -. - -/** - * Unit tests for the lib/pluginlib.php library - * - * Execute the core_plugin group to run all tests in this file: - * - * $ phpunit --group core_plugin - * - * @package core - * @category phpunit - * @copyright 2012 David Mudrak - * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later - */ - -defined('MOODLE_INTERNAL') || die(); - -global $CFG; -require_once($CFG->libdir.'/pluginlib.php'); - - -/** - * Tests of the basic API of the plugin manager. - * - * @group core_plugin - */ -class core_plugin_manager_testcase extends advanced_testcase { - - public function setUp() { - $this->resetAfterTest(); - } - - public function test_plugin_manager_instance() { - $pluginman = testable_plugin_manager::instance(); - $this->assertInstanceOf('testable_plugin_manager', $pluginman); - } - - public function test_get_plugins_of_type() { - $pluginman = testable_plugin_manager::instance(); - $mods = $pluginman->get_plugins_of_type('mod'); - $this->assertInternalType('array', $mods); - $this->assertCount(5, $mods); - $this->assertInstanceOf('testable_plugininfo_mod', $mods['foo']); - $this->assertInstanceOf('testable_plugininfo_mod', $mods['bar']); - $this->assertInstanceOf('testable_plugininfo_mod', $mods['baz']); - $this->assertInstanceOf('testable_plugininfo_mod', $mods['qux']); - $this->assertInstanceOf('testable_plugininfo_mod', $mods['new']); - $foolishes = $pluginman->get_plugins_of_type('foolish'); - $this->assertCount(2, $foolishes); - $this->assertInstanceOf('testable_pluginfo_foolish', $foolishes['frog']); - $this->assertInstanceOf('testable_pluginfo_foolish', $foolishes['hippo']); - $bazmegs = $pluginman->get_plugins_of_type('bazmeg'); - $this->assertCount(1, $bazmegs); - $this->assertInstanceOf('testable_pluginfo_bazmeg', $bazmegs['one']); - $quxcats = $pluginman->get_plugins_of_type('quxcat'); - $this->assertCount(1, $quxcats); - $this->assertInstanceOf('testable_pluginfo_quxcat', $quxcats['one']); - $unknown = $pluginman->get_plugins_of_type('muhehe'); - $this->assertSame(array(), $unknown); - } - - public function test_get_plugins() { - $pluginman = testable_plugin_manager::instance(); - $plugins = $pluginman->get_plugins(); - $this->assertInternalType('array', $plugins); - $this->assertTrue(isset($plugins['mod']['foo'])); - $this->assertTrue(isset($plugins['mod']['bar'])); - $this->assertTrue(isset($plugins['mod']['baz'])); - $this->assertTrue(isset($plugins['mod']['new'])); - $this->assertTrue(isset($plugins['foolish']['frog'])); - $this->assertTrue(isset($plugins['foolish']['hippo'])); - $this->assertInstanceOf('testable_plugininfo_mod', $plugins['mod']['foo']); - $this->assertInstanceOf('testable_plugininfo_mod', $plugins['mod']['bar']); - $this->assertInstanceOf('testable_plugininfo_mod', $plugins['mod']['baz']); - $this->assertInstanceOf('testable_plugininfo_mod', $plugins['mod']['new']); - $this->assertInstanceOf('testable_pluginfo_foolish', $plugins['foolish']['frog']); - $this->assertInstanceOf('testable_pluginfo_foolish', $plugins['foolish']['hippo']); - $this->assertInstanceOf('testable_pluginfo_bazmeg', $plugins['bazmeg']['one']); - $this->assertInstanceOf('testable_pluginfo_quxcat', $plugins['quxcat']['one']); - } - - public function test_get_subplugins_of_plugin() { - $pluginman = testable_plugin_manager::instance(); - $this->assertSame(array(), $pluginman->get_subplugins_of_plugin('mod_missing')); - $this->assertSame(array(), $pluginman->get_subplugins_of_plugin('mod_bar')); - $foosubs = $pluginman->get_subplugins_of_plugin('mod_foo'); - $this->assertInternalType('array', $foosubs); - $this->assertCount(2, $foosubs); - $this->assertInstanceOf('testable_pluginfo_foolish', $foosubs['foolish_frog']); - $this->assertInstanceOf('testable_pluginfo_foolish', $foosubs['foolish_hippo']); - $bazsubs = $pluginman->get_subplugins_of_plugin('mod_baz'); - $this->assertInternalType('array', $bazsubs); - $this->assertCount(1, $bazsubs); - $this->assertInstanceOf('testable_pluginfo_bazmeg', $bazsubs['bazmeg_one']); - $quxsubs = $pluginman->get_subplugins_of_plugin('mod_qux'); - $this->assertInternalType('array', $quxsubs); - $this->assertCount(1, $quxsubs); - $this->assertInstanceOf('testable_pluginfo_quxcat', $quxsubs['quxcat_one']); - } - - public function test_get_subplugins() { - $pluginman = testable_plugin_manager::instance(); - $subplugins = $pluginman->get_subplugins(); - $this->assertTrue(isset($subplugins['mod_foo']['foolish'])); - $this->assertTrue(isset($subplugins['mod_baz']['bazmeg'])); - $this->assertTrue(isset($subplugins['mod_qux']['quxcat'])); - } - - public function test_get_parent_of_subplugin() { - $pluginman = testable_plugin_manager::instance(); - $this->assertSame('mod_foo', $pluginman->get_parent_of_subplugin('foolish')); - $this->assertSame('mod_baz', $pluginman->get_parent_of_subplugin('bazmeg')); - $this->assertSame('mod_qux', $pluginman->get_parent_of_subplugin('quxcat')); - $this->assertFalse($pluginman->get_parent_of_subplugin('mod')); - $this->assertFalse($pluginman->get_parent_of_subplugin('unknown')); - $plugins = $pluginman->get_plugins(); - $this->assertFalse($plugins['mod']['foo']->is_subplugin()); - $this->assertFalse($plugins['mod']['foo']->get_parent_plugin()); - $this->assertTrue($plugins['foolish']['frog']->is_subplugin()); - $this->assertSame('mod_foo', $plugins['foolish']['frog']->get_parent_plugin()); - } - - public function test_plugin_name() { - $pluginman = testable_plugin_manager::instance(); - $this->assertSame('Foo', $pluginman->plugin_name('mod_foo')); - $this->assertSame('Bar', $pluginman->plugin_name('mod_bar')); - $this->assertSame('Frog', $pluginman->plugin_name('foolish_frog')); - $this->assertSame('Hippo', $pluginman->plugin_name('foolish_hippo')); - $this->assertSame('One', $pluginman->plugin_name('bazmeg_one')); - $this->assertSame('One', $pluginman->plugin_name('quxcat_one')); - } - - public function test_get_plugin_info() { - $pluginman = testable_plugin_manager::instance(); - $this->assertInstanceOf('testable_plugininfo_mod', $pluginman->get_plugin_info('mod_foo')); - $this->assertInstanceOf('testable_pluginfo_foolish', $pluginman->get_plugin_info('foolish_frog')); - } - - public function test_other_plugins_that_require() { - $pluginman = testable_plugin_manager::instance(); - $this->assertEquals(array('foolish_frog'), $pluginman->other_plugins_that_require('mod_foo')); - $this->assertCount(2, $pluginman->other_plugins_that_require('foolish_frog')); - $this->assertContains('foolish_hippo', $pluginman->other_plugins_that_require('foolish_frog')); - $this->assertContains('mod_foo', $pluginman->other_plugins_that_require('foolish_frog')); - $this->assertEquals(array(), $pluginman->other_plugins_that_require('foolish_hippo')); - $this->assertEquals(array('mod_foo'), $pluginman->other_plugins_that_require('mod_bar')); - $this->assertEquals(array('mod_foo'), $pluginman->other_plugins_that_require('mod_missing')); - $this->assertEquals(array('quxcat_one'), $pluginman->other_plugins_that_require('bazmeg_one')); - } - - public function test_are_dependencies_satisfied() { - $pluginman = testable_plugin_manager::instance(); - $this->assertTrue($pluginman->are_dependencies_satisfied(array())); - $this->assertTrue($pluginman->are_dependencies_satisfied(array( - 'mod_bar' => 2012030500, - ))); - $this->assertTrue($pluginman->are_dependencies_satisfied(array( - 'mod_bar' => ANY_VERSION, - ))); - $this->assertFalse($pluginman->are_dependencies_satisfied(array( - 'mod_bar' => 2099010000, - ))); - $this->assertFalse($pluginman->are_dependencies_satisfied(array( - 'mod_bar' => 2012030500, - 'mod_missing' => ANY_VERSION, - ))); - } - - public function test_all_plugins_ok() { - $pluginman = testable_plugin_manager::instance(); - $failedplugins = array(); - $this->assertFalse($pluginman->all_plugins_ok(2013010100, $failedplugins)); - $this->assertContains('mod_foo', $failedplugins); // Requires mod_missing. - $this->assertNotContains('mod_bar', $failedplugins); - $this->assertNotContains('foolish_frog', $failedplugins); - $this->assertNotContains('foolish_hippo', $failedplugins); - - $failedplugins = array(); - $this->assertFalse($pluginman->all_plugins_ok(2012010100, $failedplugins)); - $this->assertContains('mod_foo', $failedplugins); // Requires mod_missing. - $this->assertNotContains('mod_bar', $failedplugins); - $this->assertContains('foolish_frog', $failedplugins); // Requires Moodle 2013010100. - $this->assertNotContains('foolish_hippo', $failedplugins); - - $failedplugins = array(); - $this->assertFalse($pluginman->all_plugins_ok(2011010100, $failedplugins)); - $this->assertContains('mod_foo', $failedplugins); // Requires mod_missing and Moodle 2012010100. - $this->assertContains('mod_bar', $failedplugins); // Requires Moodle 2012010100. - $this->assertContains('foolish_frog', $failedplugins); // Requires Moodle 2013010100. - $this->assertContains('foolish_hippo', $failedplugins); // Requires Moodle 2012010100. - } - - public function test_some_plugins_updatable() { - $pluginman = testable_plugin_manager::instance(); - $this->assertTrue($pluginman->some_plugins_updatable()); // We have available update for mod_foo. - } - - public function test_is_standard() { - $pluginman = testable_plugin_manager::instance(); - $this->assertTrue($pluginman->get_plugin_info('mod_bar')->is_standard()); - $this->assertFalse($pluginman->get_plugin_info('mod_foo')->is_standard()); - $this->assertFalse($pluginman->get_plugin_info('foolish_frog')->is_standard()); - } - - public function test_get_status() { - $pluginman = testable_plugin_manager::instance(); - $plugins = $pluginman->get_plugins(); - $this->assertEquals(plugin_manager::PLUGIN_STATUS_UPGRADE, $plugins['mod']['foo']->get_status()); - $this->assertEquals(plugin_manager::PLUGIN_STATUS_NEW, $plugins['mod']['new']->get_status()); - $this->assertEquals(plugin_manager::PLUGIN_STATUS_NEW, $plugins['bazmeg']['one']->get_status()); - $this->assertEquals(plugin_manager::PLUGIN_STATUS_UPTODATE, $plugins['quxcat']['one']->get_status()); - } - - public function test_available_update() { - $pluginman = testable_plugin_manager::instance(); - $plugins = $pluginman->get_plugins(); - $this->assertNull($plugins['mod']['bar']->available_updates()); - $this->assertInternalType('array', $plugins['mod']['foo']->available_updates()); - foreach ($plugins['mod']['foo']->available_updates() as $availableupdate) { - $this->assertInstanceOf('available_update_info', $availableupdate); - } - } - - public function test_can_uninstall_plugin() { - $pluginman = testable_plugin_manager::instance(); - $this->assertFalse($pluginman->can_uninstall_plugin('mod_missing')); - $this->assertTrue($pluginman->can_uninstall_plugin('mod_foo')); // Because mod_foo is required by foolish_frog only - // and foolish_frog is required by mod_foo and foolish_hippo only. - $this->assertFalse($pluginman->can_uninstall_plugin('mod_bar')); // Because mod_bar is required by mod_foo. - $this->assertFalse($pluginman->can_uninstall_plugin('mod_qux')); // Because even if no plugin (not even subplugins) declare - // dependency on it, but its subplugin can't be uninstalled. - $this->assertFalse($pluginman->can_uninstall_plugin('mod_baz')); // Because it's subplugin bazmeg_one is required by quxcat_one. - $this->assertFalse($pluginman->can_uninstall_plugin('mod_new')); // Because it is not installed. - $this->assertFalse($pluginman->can_uninstall_plugin('quxcat_one')); // Because of testable_pluginfo_quxcat::is_uninstall_allowed(). - $this->assertFalse($pluginman->can_uninstall_plugin('foolish_frog')); // Because foolish_hippo requires it. - } - - public function test_get_uninstall_url() { - $pluginman = testable_plugin_manager::instance(); - foreach ($pluginman->get_plugins() as $plugintype => $plugininfos) { - foreach ($plugininfos as $plugininfo) { - $this->assertInstanceOf('moodle_url', $plugininfo->get_uninstall_url()); - } - } - } -} - - -/** - * Tests of the basic API of the available update checker. - * - * @group core_plugin - */ -class core_available_update_checker_testcase extends advanced_testcase { - - public function test_core_available_update() { - $provider = testable_available_update_checker::instance(); - $this->assertInstanceOf('available_update_checker', $provider); - - $provider->fake_current_environment(2012060102.00, '2.3.2 (Build: 20121012)', '2.3', array()); - $updates = $provider->get_update_info('core'); - $this->assertCount(2, $updates); - - $provider->fake_current_environment(2012060103.00, '2.3.3 (Build: 20121212)', '2.3', array()); - $updates = $provider->get_update_info('core'); - $this->assertCount(1, $updates); - - $provider->fake_current_environment(2012060103.00, '2.3.3 (Build: 20121212)', '2.3', array()); - $updates = $provider->get_update_info('core', array('minmaturity' => MATURITY_STABLE)); - $this->assertNull($updates); - } - - /** - * If there are no fetched data yet, the first cron should fetch them. - */ - public function test_cron_initial_fetch() { - $provider = testable_available_update_checker::instance(); - $provider->fakerecentfetch = null; - $provider->fakecurrenttimestamp = -1; - $this->setExpectedException('testable_available_update_checker_cron_executed'); - $provider->cron(); - } - - /** - * If there is a fresh fetch available, no cron execution is expected. - */ - public function test_cron_has_fresh_fetch() { - $provider = testable_available_update_checker::instance(); - $provider->fakerecentfetch = time() - 23 * HOURSECS; // Fetched 23 hours ago. - $provider->fakecurrenttimestamp = -1; - $provider->cron(); - $this->assertTrue(true); // We should get here with no exception thrown. - } - - /** - * If there is an outdated fetch, the cron execution is expected. - */ - public function test_cron_has_outdated_fetch() { - $provider = testable_available_update_checker::instance(); - $provider->fakerecentfetch = time() - 49 * HOURSECS; // Fetched 49 hours ago. - $provider->fakecurrenttimestamp = -1; - $this->setExpectedException('testable_available_update_checker_cron_executed'); - $provider->cron(); - } - - /** - * The first cron after 01:42 AM today should fetch the data. - * - * @see testable_available_update_checker::cron_execution_offset() - */ - public function test_cron_offset_execution_not_yet() { - $provider = testable_available_update_checker::instance(); - $provider->fakecurrenttimestamp = mktime(1, 40, 02); // 01:40:02 AM today - $provider->fakerecentfetch = $provider->fakecurrenttimestamp - 24 * HOURSECS; - $provider->cron(); - $this->assertTrue(true); // We should get here with no exception thrown. - } - - /** - * The first cron after 01:42 AM today should fetch the data and then - * it is supposed to wait next 24 hours. - * - * @see testable_available_update_checker::cron_execution_offset() - */ - public function test_cron_offset_execution() { - $provider = testable_available_update_checker::instance(); - - // The cron at 01:45 should fetch the data. - $provider->fakecurrenttimestamp = mktime(1, 45, 02); // 01:45:02 AM today - $provider->fakerecentfetch = $provider->fakecurrenttimestamp - 24 * HOURSECS - 1; - $executed = false; - try { - $provider->cron(); - } catch (testable_available_update_checker_cron_executed $e) { - $executed = true; - } - $this->assertTrue($executed, 'Cron should be executed at 01:45:02 but it was not.'); - - // Another cron at 06:45 should still consider data as fresh enough. - $provider->fakerecentfetch = $provider->fakecurrenttimestamp; - $provider->fakecurrenttimestamp = mktime(6, 45, 03); // 06:45:03 AM - $executed = false; - try { - $provider->cron(); - } catch (testable_available_update_checker_cron_executed $e) { - $executed = true; - } - $this->assertFalse($executed, 'Cron should not be executed at 06:45:03 but it was.'); - - // The next scheduled execution should happen the next day. - $provider->fakecurrenttimestamp = $provider->fakerecentfetch + 24 * HOURSECS + 1; - $executed = false; - try { - $provider->cron(); - } catch (testable_available_update_checker_cron_executed $e) { - $executed = true; - } - $this->assertTrue($executed, 'Cron should be executed the next night but it was not.'); - } - - public function test_compare_responses_both_empty() { - $provider = testable_available_update_checker::instance(); - $old = array(); - $new = array(); - $cmp = $provider->compare_responses($old, $new); - $this->assertInternalType('array', $cmp); - $this->assertEmpty($cmp); - } - - public function test_compare_responses_old_empty() { - $provider = testable_available_update_checker::instance(); - $old = array(); - $new = array( - 'updates' => array( - 'core' => array( - array( - 'version' => 2012060103 - ) - ) - ) - ); - $cmp = $provider->compare_responses($old, $new); - $this->assertInternalType('array', $cmp); - $this->assertNotEmpty($cmp); - $this->assertTrue(isset($cmp['core'][0]['version'])); - $this->assertEquals(2012060103, $cmp['core'][0]['version']); - } - - public function test_compare_responses_no_change() { - $provider = testable_available_update_checker::instance(); - $old = $new = array( - 'updates' => array( - 'core' => array( - array( - 'version' => 2012060104 - ), - array( - 'version' => 2012120100 - ) - ), - 'mod_foo' => array( - array( - 'version' => 2011010101 - ) - ) - ) - ); - $cmp = $provider->compare_responses($old, $new); - $this->assertInternalType('array', $cmp); - $this->assertEmpty($cmp); - } - - public function test_compare_responses_new_and_missing_update() { - $provider = testable_available_update_checker::instance(); - $old = array( - 'updates' => array( - 'core' => array( - array( - 'version' => 2012060104 - ) - ), - 'mod_foo' => array( - array( - 'version' => 2011010101 - ) - ) - ) - ); - $new = array( - 'updates' => array( - 'core' => array( - array( - 'version' => 2012060104 - ), - array( - 'version' => 2012120100 - ) - ) - ) - ); - $cmp = $provider->compare_responses($old, $new); - $this->assertInternalType('array', $cmp); - $this->assertNotEmpty($cmp); - $this->assertCount(1, $cmp); - $this->assertCount(1, $cmp['core']); - $this->assertEquals(2012120100, $cmp['core'][0]['version']); - } - - public function test_compare_responses_modified_update() { - $provider = testable_available_update_checker::instance(); - $old = array( - 'updates' => array( - 'mod_foo' => array( - array( - 'version' => 2011010101 - ) - ) - ) - ); - $new = array( - 'updates' => array( - 'mod_foo' => array( - array( - 'version' => 2011010102 - ) - ) - ) - ); - $cmp = $provider->compare_responses($old, $new); - $this->assertInternalType('array', $cmp); - $this->assertNotEmpty($cmp); - $this->assertCount(1, $cmp); - $this->assertCount(1, $cmp['mod_foo']); - $this->assertEquals(2011010102, $cmp['mod_foo'][0]['version']); - } - - public function test_compare_responses_invalid_format() { - $provider = testable_available_update_checker::instance(); - $broken = array( - 'status' => 'ERROR' // No 'updates' key here. - ); - $this->setExpectedException('available_update_checker_exception'); - $cmp = $provider->compare_responses($broken, $broken); - } - - public function test_is_same_release_explicit() { - $provider = testable_available_update_checker::instance(); - $this->assertTrue($provider->is_same_release('2.3dev (Build: 20120323)', '2.3dev (Build: 20120323)')); - $this->assertTrue($provider->is_same_release('2.3dev (Build: 20120323)', '2.3dev (Build: 20120330)')); - $this->assertFalse($provider->is_same_release('2.3dev (Build: 20120529)', '2.3 (Build: 20120601)')); - $this->assertFalse($provider->is_same_release('2.3dev', '2.3 dev')); - $this->assertFalse($provider->is_same_release('2.3.1', '2.3')); - $this->assertFalse($provider->is_same_release('2.3.1', '2.3.2')); - $this->assertTrue($provider->is_same_release('2.3.2+', '2.3.2')); // Yes, really! - $this->assertTrue($provider->is_same_release('2.3.2 (Build: 123456)', '2.3.2+ (Build: 123457)')); - $this->assertFalse($provider->is_same_release('3.0 Community Edition', '3.0 Enterprise Edition')); - $this->assertTrue($provider->is_same_release('3.0 Community Edition', '3.0 Community Edition (Build: 20290101)')); - } - - public function test_is_same_release_implicit() { - $provider = testable_available_update_checker::instance(); - $provider->fake_current_environment(2012060102.00, '2.3.2 (Build: 20121012)', '2.3', array()); - $this->assertTrue($provider->is_same_release('2.3.2')); - $this->assertTrue($provider->is_same_release('2.3.2+')); - $this->assertTrue($provider->is_same_release('2.3.2+ (Build: 20121013)')); - $this->assertFalse($provider->is_same_release('2.4dev (Build: 20121012)')); - } -} - - -/** - * Base class for testable plugininfo classes. - */ -class testable_plugininfo_base extends plugininfo_base { - - protected function get_plugin_manager() { - return testable_plugin_manager::instance(); - } -} - - -/** - * Modified {@link plugininfo_mod} suitable for testing purposes. - */ -class testable_plugininfo_mod extends plugininfo_mod { - - public function init_display_name() { - $this->displayname = ucfirst($this->name); - } - - public function is_standard() { - if ($this->component === 'mod_foo') { - return false; - } else { - return true; - } - } - - public function load_db_version() { - if ($this->component !== 'mod_new') { - $this->versiondb = 2012022900; - } - } - - public function is_uninstall_allowed() { - return true; // Allow uninstall for standard plugins too. - } - - protected function get_plugin_manager() { - return testable_plugin_manager::instance(); - } -} - - -/** - * Testable class representing subplugins of testable mod_foo. - */ -class testable_pluginfo_foolish extends testable_plugininfo_base { - - public function init_display_name() { - $this->displayname = ucfirst($this->name); - } - - public function is_standard() { - return false; - } - - public function load_db_version() { - $this->versiondb = 2012022900; - } -} - - -/** - * Testable class representing subplugins of testable mod_baz. - */ -class testable_pluginfo_bazmeg extends testable_plugininfo_base { - - public function init_display_name() { - $this->displayname = ucfirst($this->name); - } - - public function is_standard() { - return false; - } - - public function load_db_version() { - $this->versiondb = null; - } -} - - -/** - * Testable class representing subplugins of testable mod_qux. - */ -class testable_pluginfo_quxcat extends testable_plugininfo_base { - - public function init_display_name() { - $this->displayname = ucfirst($this->name); - } - - public function is_standard() { - return false; - } - - public function load_db_version() { - $this->versiondb = 2013041103; - } - - public function is_uninstall_allowed() { - return false; - } -} - - -/** - * Modified {@link plugin_manager} suitable for testing purposes - */ -class testable_plugin_manager extends plugin_manager { - - /** - * Factory method for this class - * - * @return plugin_manager the singleton instance - */ - public static function instance() { - global $CFG; - - if (is_null(self::$singletoninstance)) { - self::$singletoninstance = new self(); - } - return self::$singletoninstance; - } - - /** - * A version of {@link plugin_manager::get_plugins()} that prepares some faked - * testable instances. - * - * @param bool $disablecache ignored in this class - * @return array - */ - public function get_plugins($disablecache = false) { - - $dirroot = dirname(__FILE__).'/fixtures/mockplugins'; - - $this->pluginsinfo = array( - 'mod' => array( - 'foo' => plugininfo_default_factory::make('mod', $dirroot.'/mod', 'foo', - $dirroot.'/mod/foo', 'testable_plugininfo_mod'), - 'bar' => plugininfo_default_factory::make('mod', $dirroot.'/bar', 'bar', - $dirroot.'/mod/bar', 'testable_plugininfo_mod'), - 'baz' => plugininfo_default_factory::make('mod', $dirroot.'/baz', 'baz', - $dirroot.'/mod/baz', 'testable_plugininfo_mod'), - 'qux' => plugininfo_default_factory::make('mod', $dirroot.'/qux', 'qux', - $dirroot.'/mod/qux', 'testable_plugininfo_mod'), - 'new' => plugininfo_default_factory::make('mod', $dirroot.'/new', 'new', - $dirroot.'/mod/new', 'testable_plugininfo_mod'), - ), - 'foolish' => array( - 'frog' => plugininfo_default_factory::make('foolish', $dirroot.'/mod/foo/lish', 'frog', - $dirroot.'/mod/foo/lish/frog', 'testable_pluginfo_foolish'), - 'hippo' => plugininfo_default_factory::make('foolish', $dirroot.'/mod/foo/lish', 'hippo', - $dirroot.'/mod/foo/lish/hippo', 'testable_pluginfo_foolish'), - ), - 'bazmeg' => array( - 'one' => plugininfo_default_factory::make('bazmeg', $dirroot.'/mod/baz/meg', 'one', - $dirroot.'/mod/baz/meg/one', 'testable_pluginfo_bazmeg'), - ), - 'quxcat' => array( - 'one' => plugininfo_default_factory::make('quxcat', $dirroot.'/mod/qux/cat', 'one', - $dirroot.'/mod/qux/cat/one', 'testable_pluginfo_quxcat'), - ), - ); - - $checker = testable_available_update_checker::instance(); - $this->pluginsinfo['mod']['foo']->check_available_updates($checker); - $this->pluginsinfo['mod']['bar']->check_available_updates($checker); - $this->pluginsinfo['mod']['baz']->check_available_updates($checker); - $this->pluginsinfo['mod']['new']->check_available_updates($checker); - $this->pluginsinfo['bazmeg']['one']->check_available_updates($checker); - $this->pluginsinfo['quxcat']['one']->check_available_updates($checker); - - return $this->pluginsinfo; - } - - /** - * Testable version of {@link plugin_manager::get_subplugins()} that works with - * the simulated environment. - * - * In this case, the mod_foo fake module provides subplugins of type 'foolish', - * mod_baz provides subplugins of type 'bazmeg' and mod_qux has 'quxcat'. - * - * @param bool $disablecache ignored in this class - * @return array - */ - public function get_subplugins($disablecache = false) { - - $this->subpluginsinfo = array( - 'mod_foo' => array( - 'foolish' => (object)array( - 'type' => 'foolish', - 'typerootdir' => 'mod/foo/lish', - ), - ), - 'mod_baz' => array( - 'bazmeg' => (object)array( - 'type' => 'bazmeg', - 'typerootdir' => 'mod/baz/meg', - ), - ), - 'mod_qux' => array( - 'quxcat' => (object)array( - 'type' => 'quxcat', - 'typerootdir' => 'mod/qux/cat', - ), - ), - ); - - return $this->subpluginsinfo; - } - - /** - * Adds support for mock plugin types. - */ - protected function normalize_component($component) { - - // List of mock plugin types used in these unit tests. - $faketypes = array('foolish', 'bazmeg', 'quxcat'); - - foreach ($faketypes as $faketype) { - if (strpos($component, $faketype.'_') === 0) { - return explode('_', $component, 2); - } - } - - return parent::normalize_component($component); - } - - public function plugintype_name($type) { - return ucfirst($type); - } - - public function plugintype_name_plural($type) { - return ucfirst($type).'s'; // Simple, isn't it? ;-). - } - - public function plugin_external_source($component) { - if ($component === 'foolish_frog') { - return true; - } - return false; - } -} - - -/** - * Modified version of {@link available_update_checker} suitable for testing. - */ -class testable_available_update_checker extends available_update_checker { - - /** @var replaces the default DB table storage for the fetched response */ - protected $fakeresponsestorage; - /** @var int stores the fake recentfetch value */ - public $fakerecentfetch = -1; - /** @var int stores the fake value of time() */ - public $fakecurrenttimestamp = -1; - - /** - * Factory method for this class. - * - * @return testable_available_update_checker the singleton instance - */ - public static function instance() { - global $CFG; - - if (is_null(self::$singletoninstance)) { - self::$singletoninstance = new self(); - } - return self::$singletoninstance; - } - - protected function validate_response($response) { - } - - protected function store_response($response) { - $this->fakeresponsestorage = $response; - } - - protected function restore_response($forcereload = false) { - $this->recentfetch = time(); - $this->recentresponse = $this->decode_response($this->get_fake_response()); - } - - public function compare_responses(array $old, array $new) { - return parent::compare_responses($old, $new); - } - - public function is_same_release($remote, $local=null) { - return parent::is_same_release($remote, $local); - } - - protected function load_current_environment($forcereload=false) { - } - - public function fake_current_environment($version, $release, $branch, array $plugins) { - $this->currentversion = $version; - $this->currentrelease = $release; - $this->currentbranch = $branch; - $this->currentplugins = $plugins; - } - - public function get_last_timefetched() { - if ($this->fakerecentfetch == -1) { - return parent::get_last_timefetched(); - } else { - return $this->fakerecentfetch; - } - } - - private function get_fake_response() { - $fakeresponse = array( - 'status' => 'OK', - 'provider' => 'http://download.moodle.org/api/1.0/updates.php', - 'apiver' => '1.0', - 'timegenerated' => time(), - 'forversion' => '2012010100.00', - 'forbranch' => '2.3', - 'ticket' => sha1('No, I am not going to mention the word "frog" here. Oh crap. I just did.'), - 'updates' => array( - 'core' => array( - array( - 'version' => 2012060103.00, - 'release' => '2.3.3 (Build: 20121201)', - 'maturity' => 200, - 'url' => 'http://download.moodle.org/', - 'download' => 'http://download.moodle.org/download.php/MOODLE_23_STABLE/moodle-2.3.3-latest.zip', - ), - array( - 'version' => 2012120100.00, - 'release' => '2.4dev (Build: 20121201)', - 'maturity' => 50, - 'url' => 'http://download.moodle.org/', - 'download' => 'http://download.moodle.org/download.php/MOODLE_24_STABLE/moodle-2.4.0-latest.zip', - ), - ), - 'mod_foo' => array( - array( - 'version' => 2012030501, - 'requires' => 2012010100, - 'maturity' => 200, - 'release' => '1.1', - 'url' => 'http://moodle.org/plugins/blahblahblah/', - 'download' => 'http://moodle.org/plugins/download.php/blahblahblah', - ), - array( - 'version' => 2012030502, - 'requires' => 2012010100, - 'maturity' => 100, - 'release' => '1.2 beta', - 'url' => 'http://moodle.org/plugins/', - ), - ), - ), - ); - - return json_encode($fakeresponse); - } - - protected function cron_current_timestamp() { - if ($this->fakecurrenttimestamp == -1) { - return parent::cron_current_timestamp(); - } else { - return $this->fakecurrenttimestamp; - } - } - - protected function cron_mtrace($msg, $eol = PHP_EOL) { - } - - protected function cron_autocheck_enabled() { - return true; - } - - protected function cron_execution_offset() { - // Autofetch should run by the first cron after 01:42 AM. - return 42 * MINSECS; - } - - protected function cron_execute() { - throw new testable_available_update_checker_cron_executed('Cron executed!'); - } -} - - -/** - * Exception used to detect {@link available_update_checker::cron_execute()} calls. - */ -class testable_available_update_checker_cron_executed extends Exception { -} - - -/** - * Modified {@link available_update_deployer} suitable for testing purposes. - */ -class testable_available_update_deployer extends available_update_deployer { -} - - -/** - * Test cases for {@link available_update_deployer} class. - * - * @group core_plugin - */ -class core_available_update_deployer_testcase extends advanced_testcase { - - public function test_magic_setters() { - $deployer = testable_available_update_deployer::instance(); - $value = new moodle_url('/'); - $deployer->set_returnurl($value); - $this->assertSame($deployer->get_returnurl(), $value); - } - - public function test_prepare_authorization() { - global $CFG; - - $deployer = testable_available_update_deployer::instance(); - list($passfile, $password) = $deployer->prepare_authorization(); - $filename = $CFG->phpunit_dataroot.'/mdeploy/auth/'.$passfile; - $this->assertFileExists($filename); - $stored = file($filename, FILE_IGNORE_NEW_LINES); - $this->assertCount(2, $stored); - $this->assertGreaterThan(23, strlen($stored[0])); - $this->assertSame($stored[0], $password); - $this->assertLessThan(60, time() - (int)$stored[1]); - } -} diff --git a/lib/upgrade.txt b/lib/upgrade.txt index ae667267642..2473c306def 100644 --- a/lib/upgrade.txt +++ b/lib/upgrade.txt @@ -36,6 +36,9 @@ information provided here is intended especially for developers. Use core_user::get_noreply_user() and core_user::get_support_user() to get noreply and support user's respectively. Real users can be used as noreply/support users by setting $CFG->noreplyuserid and $CFG->supportuserid * New function readfile_allow_large() in filelib.php for use when very large files may need sending to user. +* Use plugin_manager::reset_caches() when changing visibility of plugins. +* Implement new method get_enabled_plugins() method in subplugin info classes. +* Each plugin should include version information in version.php. DEPRECATIONS: Various previously deprecated functions have now been altered to throw DEBUG_DEVELOPER debugging notices diff --git a/lib/upgradelib.php b/lib/upgradelib.php index 0ca4493b39c..12ed9b9a825 100644 --- a/lib/upgradelib.php +++ b/lib/upgradelib.php @@ -222,21 +222,25 @@ function upgrade_main_savepoint($result, $version, $allowabort=true) { function upgrade_mod_savepoint($result, $version, $modname, $allowabort=true) { global $DB; + $component = 'mod_'.$modname; + if (!$result) { - throw new upgrade_exception("mod_$modname", $version); + throw new upgrade_exception($component, $version); } + $dbversion = $DB->get_field('config_plugins', 'value', array('plugin'=>$component, 'name'=>'version')); + if (!$module = $DB->get_record('modules', array('name'=>$modname))) { print_error('modulenotexist', 'debug', '', $modname); } - if ($module->version >= $version) { + if ($dbversion >= $version) { // something really wrong is going on in upgrade script - throw new downgrade_exception("mod_$modname", $module->version, $version); + throw new downgrade_exception($component, $dbversion, $version); } - $module->version = $version; - $DB->update_record('modules', $module); - upgrade_log(UPGRADE_LOG_NORMAL, "mod_$modname", 'Upgrade savepoint reached'); + set_config('version', $version, $component); + + upgrade_log(UPGRADE_LOG_NORMAL, $component, 'Upgrade savepoint reached'); // reset upgrade timeout to default upgrade_set_timeout(); @@ -262,21 +266,25 @@ function upgrade_mod_savepoint($result, $version, $modname, $allowabort=true) { function upgrade_block_savepoint($result, $version, $blockname, $allowabort=true) { global $DB; + $component = 'block_'.$blockname; + if (!$result) { - throw new upgrade_exception("block_$blockname", $version); + throw new upgrade_exception($component, $version); } + $dbversion = $DB->get_field('config_plugins', 'value', array('plugin'=>$component, 'name'=>'version')); + if (!$block = $DB->get_record('block', array('name'=>$blockname))) { print_error('blocknotexist', 'debug', '', $blockname); } - if ($block->version >= $version) { + if ($dbversion >= $version) { // something really wrong is going on in upgrade script - throw new downgrade_exception("block_$blockname", $block->version, $version); + throw new downgrade_exception($component, $dbversion, $version); } - $block->version = $version; - $DB->update_record('block', $block); - upgrade_log(UPGRADE_LOG_NORMAL, "block_$blockname", 'Upgrade savepoint reached'); + set_config('version', $version, $component); + + upgrade_log(UPGRADE_LOG_NORMAL, $component, 'Upgrade savepoint reached'); // reset upgrade timeout to default upgrade_set_timeout(); @@ -301,16 +309,19 @@ function upgrade_block_savepoint($result, $version, $blockname, $allowabort=true * @return void */ function upgrade_plugin_savepoint($result, $version, $type, $plugin, $allowabort=true) { + global $DB; + $component = $type.'_'.$plugin; if (!$result) { throw new upgrade_exception($component, $version); } - $installedversion = get_config($component, 'version'); - if ($installedversion >= $version) { + $dbversion = $DB->get_field('config_plugins', 'value', array('plugin'=>$component, 'name'=>'version')); + + if ($dbversion >= $version) { // Something really wrong is going on in the upgrade script - throw new downgrade_exception($component, $installedversion, $version); + throw new downgrade_exception($component, $dbversion, $version); } set_config('version', $version, $component); upgrade_log(UPGRADE_LOG_NORMAL, $component, 'Upgrade savepoint reached'); @@ -338,6 +349,7 @@ function upgrade_stale_php_files_present() { $someexamplesofremovedfiles = array( // removed in 2.6dev + '/admin/block.php', '/admin/oacleanup.php', // removed in 2.5dev '/backup/lib.php', @@ -402,12 +414,10 @@ function upgrade_plugins($type, $startcallback, $endcallback, $verbose) { } $plugin = new stdClass(); - $module = new stdClass(); // Prevent some notices when plugin placed in wrong directory. + $plugin->version = null; + $module = $plugin; // Prevent some notices when plugin placed in wrong directory. require($fullplug.'/version.php'); // defines $plugin with version etc - - if (!isset($plugin->version) and isset($module->version)) { - $plugin = $module; - } + unset($module); // if plugin tells us it's full name we may check the location if (isset($plugin->component)) { @@ -425,7 +435,6 @@ function upgrade_plugins($type, $startcallback, $endcallback, $verbose) { $plugin->name = $plug; $plugin->fullname = $component; - if (!empty($plugin->requires)) { if ($plugin->requires > $CFG->version) { throw new upgrade_requires_exception($component, $plugin->version, $CFG->version, $plugin->requires); @@ -457,7 +466,7 @@ function upgrade_plugins($type, $startcallback, $endcallback, $verbose) { } } - $installedversion = get_config($plugin->fullname, 'version'); + $installedversion = $DB->get_field('config_plugins', 'value', array('name'=>'version', 'plugin'=>$component)); // No caching! if (empty($installedversion)) { // new installation $startcallback($component, true, $verbose); @@ -503,7 +512,7 @@ function upgrade_plugins($type, $startcallback, $endcallback, $verbose) { $result = true; } - $installedversion = get_config($plugin->fullname, 'version'); + $installedversion = $DB->get_field('config_plugins', 'value', array('name'=>'version', 'plugin'=>$component)); // No caching! if ($installedversion < $plugin->version) { // store version if not already there upgrade_plugin_savepoint($result, $plugin->version, $type, $plug, false); @@ -516,6 +525,7 @@ function upgrade_plugins($type, $startcallback, $endcallback, $verbose) { events_update_definition($component); message_update_providers($component); if ($type === 'message') { + // Ugly hack! message_update_processors($plug); } upgrade_plugin_mnet_functions($component); @@ -555,36 +565,34 @@ function upgrade_plugins_modules($startcallback, $endcallback, $verbose) { throw new plugin_defective_exception($component, 'Missing version.php'); } - $module = new stdClass(); - $plugin = new stdClass(); // Prevent some notices when plugin placed in wrong directory. - require($fullmod .'/version.php'); // defines $module with version etc - - if (!isset($module->version) and isset($plugin->version)) { - $module = $plugin; - } + $plugin = new stdClass(); + $plugin->version = null; + $module = $plugin; + require($fullmod .'/version.php'); // Defines $module/$plugin with version etc. + $plugin = clone($module); + unset($module->version); + unset($module->component); + unset($module->dependencies); + unset($module->release); // if plugin tells us it's full name we may check the location - if (isset($module->component)) { - if ($module->component !== $component) { + if (isset($plugin->component)) { + if ($plugin->component !== $component) { $current = str_replace($CFG->dirroot, '$CFG->dirroot', $fullmod); - $expected = str_replace($CFG->dirroot, '$CFG->dirroot', core_component::get_component_directory($module->component)); + $expected = str_replace($CFG->dirroot, '$CFG->dirroot', core_component::get_component_directory($plugin->component)); throw new plugin_misplaced_exception($component, $expected, $current); } } - if (empty($module->version)) { - if (isset($module->version)) { - // Version is empty but is set - it means its value is 0 or ''. Let us skip such module. - // This is intended for developers so they can work on the early stages of the module. - continue; - } + if (empty($plugin->version)) { + // Version must be always set now! throw new plugin_defective_exception($component, 'Missing version value in version.php'); } - if (!empty($module->requires)) { - if ($module->requires > $CFG->version) { - throw new upgrade_requires_exception($component, $module->version, $CFG->version, $module->requires); - } else if ($module->requires < 2010000000) { + if (!empty($plugin->requires)) { + if ($plugin->requires > $CFG->version) { + throw new upgrade_requires_exception($component, $plugin->version, $CFG->version, $plugin->requires); + } else if ($plugin->requires < 2010000000) { throw new plugin_defective_exception($component, 'Plugin is not compatible with Moodle 2.x or later.'); } } @@ -600,7 +608,7 @@ function upgrade_plugins_modules($startcallback, $endcallback, $verbose) { $module->name = $mod; // The name MUST match the directory - $currmodule = $DB->get_record('modules', array('name'=>$module->name)); + $installedversion = $DB->get_field('config_plugins', 'value', array('name'=>'version', 'plugin'=>$component)); // No caching! if (file_exists($fullmod.'/db/install.php')) { if (get_config($module->name, 'installrunning')) { @@ -622,7 +630,7 @@ function upgrade_plugins_modules($startcallback, $endcallback, $verbose) { } } - if (empty($currmodule->version)) { + if (empty($installedversion)) { $startcallback($component, true, $verbose); /// Execute install.xml (XMLDB) - must be present in all modules @@ -630,6 +638,7 @@ function upgrade_plugins_modules($startcallback, $endcallback, $verbose) { /// Add record into modules table - may be needed in install.php already $module->id = $DB->insert_record('modules', $module); + upgrade_mod_savepoint(true, $plugin->version, $module->name, false); /// Post installation hook - optional if (file_exists("$fullmod/db/install.php")) { @@ -651,22 +660,23 @@ function upgrade_plugins_modules($startcallback, $endcallback, $verbose) { $endcallback($component, true, $verbose); - } else if ($currmodule->version < $module->version) { + } else if ($installedversion < $plugin->version) { /// If versions say that we need to upgrade but no upgrade files are available, notify and continue $startcallback($component, false, $verbose); if (is_readable($fullmod.'/db/upgrade.php')) { require_once($fullmod.'/db/upgrade.php'); // defines new upgrading function $newupgrade_function = 'xmldb_'.$module->name.'_upgrade'; - $result = $newupgrade_function($currmodule->version, $module); + $result = $newupgrade_function($installedversion, $module); } else { $result = true; } + $installedversion = $DB->get_field('config_plugins', 'value', array('name'=>'version', 'plugin'=>$component)); // No caching! $currmodule = $DB->get_record('modules', array('name'=>$module->name)); - if ($currmodule->version < $module->version) { + if ($installedversion < $plugin->version) { // store version if not already there - upgrade_mod_savepoint($result, $module->version, $mod, false); + upgrade_mod_savepoint($result, $plugin->version, $mod, false); } // update cron flag if needed @@ -684,8 +694,8 @@ function upgrade_plugins_modules($startcallback, $endcallback, $verbose) { $endcallback($component, false, $verbose); - } else if ($currmodule->version > $module->version) { - throw new downgrade_exception($component, $currmodule->version, $module->version); + } else if ($installedversion > $plugin->version) { + throw new downgrade_exception($component, $installedversion, $plugin->version); } } } @@ -731,24 +741,30 @@ function upgrade_plugins_blocks($startcallback, $endcallback, $verbose) { throw new plugin_defective_exception('block/'.$blockname, 'Missing version.php file.'); } $plugin = new stdClass(); - $module = new stdClass(); // Prevent some notices when module placed in wrong directory. - $plugin->version = NULL; + $plugin->version = null; $plugin->cron = 0; + $module = $plugin; // Prevent some notices when module placed in wrong directory. include($fullblock.'/version.php'); - if (!isset($plugin->version) and isset($module->version)) { - $plugin = $module; - } - $block = $plugin; + unset($module); + $block = clone($plugin); + unset($block->version); + unset($block->component); + unset($block->dependencies); + unset($block->release); // if plugin tells us it's full name we may check the location - if (isset($block->component)) { - if ($block->component !== $component) { + if (isset($plugin->component)) { + if ($plugin->component !== $component) { $current = str_replace($CFG->dirroot, '$CFG->dirroot', $fullblock); - $expected = str_replace($CFG->dirroot, '$CFG->dirroot', core_component::get_component_directory($block->component)); + $expected = str_replace($CFG->dirroot, '$CFG->dirroot', core_component::get_component_directory($plugin->component)); throw new plugin_misplaced_exception($component, $expected, $current); } } + if (empty($plugin->version)) { + throw new plugin_defective_exception($component, 'Missing block version.'); + } + if (!empty($plugin->requires)) { if ($plugin->requires > $CFG->version) { throw new upgrade_requires_exception($component, $plugin->version, $CFG->version, $plugin->requires); @@ -778,11 +794,7 @@ function upgrade_plugins_blocks($startcallback, $endcallback, $verbose) { $block->name = $blockname; // The name MUST match the directory - if (empty($block->version)) { - throw new plugin_defective_exception($component, 'Missing block version.'); - } - - $currblock = $DB->get_record('block', array('name'=>$block->name)); + $installedversion = $DB->get_field('config_plugins', 'value', array('name'=>'version', 'plugin'=>$component)); // No caching! if (file_exists($fullblock.'/db/install.php')) { if (get_config('block_'.$blockname, 'installrunning')) { @@ -804,7 +816,7 @@ function upgrade_plugins_blocks($startcallback, $endcallback, $verbose) { } } - if (empty($currblock->version)) { // block not installed yet, so install it + if (empty($installedversion)) { // block not installed yet, so install it $conflictblock = array_search($blocktitle, $blocktitles); if ($conflictblock !== false) { // Duplicate block titles are not allowed, they confuse people @@ -817,6 +829,7 @@ function upgrade_plugins_blocks($startcallback, $endcallback, $verbose) { $DB->get_manager()->install_from_xmldb_file($fullblock.'/db/install.xml'); } $block->id = $DB->insert_record('block', $block); + upgrade_block_savepoint(true, $plugin->version, $block->name, false); if (file_exists($fullblock.'/db/install.php')) { require_once($fullblock.'/db/install.php'); @@ -839,21 +852,22 @@ function upgrade_plugins_blocks($startcallback, $endcallback, $verbose) { $endcallback($component, true, $verbose); - } else if ($currblock->version < $block->version) { + } else if ($installedversion < $plugin->version) { $startcallback($component, false, $verbose); if (is_readable($fullblock.'/db/upgrade.php')) { require_once($fullblock.'/db/upgrade.php'); // defines new upgrading function $newupgrade_function = 'xmldb_block_'.$blockname.'_upgrade'; - $result = $newupgrade_function($currblock->version, $block); + $result = $newupgrade_function($installedversion, $block); } else { $result = true; } + $installedversion = $DB->get_field('config_plugins', 'value', array('name'=>'version', 'plugin'=>$component)); // No caching! $currblock = $DB->get_record('block', array('name'=>$block->name)); - if ($currblock->version < $block->version) { + if ($installedversion < $plugin->version) { // store version if not already there - upgrade_block_savepoint($result, $block->version, $block->name, false); + upgrade_block_savepoint($result, $plugin->version, $block->name, false); } if ($currblock->cron != $block->cron) { @@ -871,8 +885,8 @@ function upgrade_plugins_blocks($startcallback, $endcallback, $verbose) { $endcallback($component, false, $verbose); - } else if ($currblock->version > $block->version) { - throw new downgrade_exception($component, $currblock->version, $block->version); + } else if ($installedversion > $plugin->version) { + throw new downgrade_exception($component, $installedversion, $plugin->version); } } @@ -1178,35 +1192,6 @@ function upgrade_log($type, $plugin, $info, $details=null, $backtrace=null) { include("$CFG->dirroot/version.php"); $targetversion = $version; - } else if ($plugintype === 'mod') { - try { - $currentversion = $DB->get_field('modules', 'version', array('name'=>$pluginname)); - $currentversion = ($currentversion === false) ? null : $currentversion; - } catch (Exception $ignored) { - } - $cd = core_component::get_component_directory($component); - if (file_exists("$cd/version.php")) { - $module = new stdClass(); - $module->version = null; - include("$cd/version.php"); - $targetversion = $module->version; - } - - } else if ($plugintype === 'block') { - try { - if ($block = $DB->get_record('block', array('name'=>$pluginname))) { - $currentversion = $block->version; - } - } catch (Exception $ignored) { - } - $cd = core_component::get_component_directory($component); - if (file_exists("$cd/version.php")) { - $plugin = new stdClass(); - $plugin->version = null; - include("$cd/version.php"); - $targetversion = $plugin->version; - } - } else { $pluginversion = get_config($component, 'version'); if (!empty($pluginversion)) { @@ -1216,6 +1201,7 @@ function upgrade_log($type, $plugin, $info, $details=null, $backtrace=null) { if (file_exists("$cd/version.php")) { $plugin = new stdClass(); $plugin->version = null; + $module = $plugin; include("$cd/version.php"); $targetversion = $plugin->version; } diff --git a/mod/resource/backup/moodle1/lib.php b/mod/resource/backup/moodle1/lib.php index 8fb5af344da..30eaba7058e 100644 --- a/mod/resource/backup/moodle1/lib.php +++ b/mod/resource/backup/moodle1/lib.php @@ -113,9 +113,11 @@ class moodle1_mod_resource_handler extends moodle1_mod_handler { // use the version of the successor instead of the current mod/resource // beware - the version.php declares info via $module object, do not use // a variable of such name here - $module = new stdClass(); + $plugin = new stdClass(); + $plugin->version = null; + $module = $plugin; include $CFG->dirroot.'/mod/'.$successor->get_modname().'/version.php'; - $cminfo['version'] = $module->version; + $cminfo['version'] = $plugin->version; // stash the new course module information for this successor $cminfo['modulename'] = $successor->get_modname(); diff --git a/user/portfolio.php b/user/portfolio.php index a84935ce458..e8b0b391371 100644 --- a/user/portfolio.php +++ b/user/portfolio.php @@ -29,6 +29,7 @@ if (empty($CFG->enableportfolios)) { print_error('disabled', 'portfolio'); } +require_once($CFG->libdir . '/pluginlib.php'); require_once($CFG->libdir . '/portfoliolib.php'); require_once($CFG->libdir . '/portfolio/forms.php'); @@ -57,9 +58,6 @@ $display = true; // set this to false in the conditions to stop processing require_login($course, false); -// Purge all caches related to portfolio administration. -cache::make('core', 'plugininfo_portfolio')->purge(); - $PAGE->set_url($url); $PAGE->set_context(context_user::instance($user->id)); $PAGE->set_title("$course->fullname: $fullname: $strportfolios"); @@ -84,6 +82,7 @@ if (!empty($config)) { $success = $instance->set_user_config($fromform, $USER->id); //$success = $success && $instance->save(); if ($success) { + plugin_manager::reset_caches(); redirect($baseurl, get_string('instancesaved', 'portfolio'), 3); } else { print_error('instancenotsaved', 'portfolio', $baseurl); @@ -100,6 +99,7 @@ if (!empty($config)) { } else if (!empty($hide)) { $instance = portfolio_instance($hide); $instance->set_user_config(array('visible' => !$instance->get_user_config('visible', $USER->id)), $USER->id); + plugin_manager::reset_caches(); } if ($display) { diff --git a/version.php b/version.php index 9474abd67b3..8d77f2809d8 100644 --- a/version.php +++ b/version.php @@ -29,7 +29,7 @@ defined('MOODLE_INTERNAL') || die(); -$version = 2013092000.00; // YYYYMMDD = weekly release date of this DEV branch. +$version = 2013092001.02; // YYYYMMDD = weekly release date of this DEV branch. // RR = release increments - 00 in DEV branches. // .XX = incremental changes. From 481753eca6433d02629400533416d15b9c7f6e02 Mon Sep 17 00:00:00 2001 From: Frederic Massart Date: Mon, 23 Sep 2013 10:55:18 +0800 Subject: [PATCH 044/101] MDL-40048 events: New abstract event for old 'view all' log --- .../course_module_instances_list_viewed.php | 81 +++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 lib/classes/event/course_module_instances_list_viewed.php diff --git a/lib/classes/event/course_module_instances_list_viewed.php b/lib/classes/event/course_module_instances_list_viewed.php new file mode 100644 index 00000000000..b1b6db37b66 --- /dev/null +++ b/lib/classes/event/course_module_instances_list_viewed.php @@ -0,0 +1,81 @@ +. + +/** + * Course module instances list_viewed event. + * + * @package core + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace core\event; +defined('MOODLE_INTERNAL') || die(); + +/** + * Course module instances list viewed event class. + * + * This is an abstract to guide the developers in using this event name for their events. + * It is intended to be used when the user viewes the list of all the instances of a module + * in a course. This replaces the historical 'view all' log entry generated in mod/somemod/index.php. + * + * Example: + * + * \mod_chat\event\instances_list_viewed extends \core\event\course_module_instances_list_viewed + * + * @package core + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +abstract class course_module_instances_list_viewed extends \core\event\content_viewed { + + /** + * Init method. + * + * @return void + */ + protected function init() { + $this->data['crud'] = 'r'; + $this->data['level'] = self::LEVEL_OTHER; + } + + /** + * Set page detail. + * + * Override to prevent its use. + */ + public function set_page_detail() { + } + + /** + * Custom validation. + * + * The parent validation is ignored on purpose. + * + * @throws \coding_exception + * @return void + */ + protected function validate_data() { + if ($this->context->contextlevel !== CONTEXT_COURSE) { + throw new \coding_exception('The context must be a course level context.'); + } + // Hack to by pass the requirement of the parent class. 'view_all' was the old fashioned-way + // to describe the page listing all the instances of a module in a course. + $this->data['other']['content'] = 'view_all'; + parent::validate_data(); + } + +} From 98d696b6d59d0fce3650491c23ca624da3385f83 Mon Sep 17 00:00:00 2001 From: Sam Hemelryk Date: Mon, 23 Sep 2013 15:38:45 +1200 Subject: [PATCH 045/101] MDL-31501 session: fixed missing autoloader during install --- admin/cli/install.php | 8 ++++++++ install.php | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/admin/cli/install.php b/admin/cli/install.php index fcd25b248fa..1d97e606cd0 100644 --- a/admin/cli/install.php +++ b/admin/cli/install.php @@ -189,6 +189,14 @@ require_once($CFG->libdir.'/adminlib.php'); require_once($CFG->libdir.'/componentlib.class.php'); require_once($CFG->dirroot.'/cache/lib.php'); +// Register our classloader, in theory somebody might want to replace it to load other hacked core classes. +// Required because the database checks below lead to session interaction which is going to lead us to requiring autoloaded classes. +if (defined('COMPONENT_CLASSLOADER')) { + spl_autoload_register(COMPONENT_CLASSLOADER); +} else { + spl_autoload_register('core_component::classloader'); +} + require($CFG->dirroot.'/version.php'); $CFG->target_release = $release; diff --git a/install.php b/install.php index 899ebd35e38..c1c40ca6823 100644 --- a/install.php +++ b/install.php @@ -221,6 +221,14 @@ ini_set('include_path', $CFG->libdir.'/pear' . PATH_SEPARATOR . ini_get('include //point zend include path to moodles lib/zend so that includes and requires will search there for files before anywhere else ini_set('include_path', $CFG->libdir.'/zend' . PATH_SEPARATOR . ini_get('include_path')); +// Register our classloader, in theory somebody might want to replace it to load other hacked core classes. +// Required because the database checks below lead to session interaction which is going to lead us to requiring autoloaded classes. +if (defined('COMPONENT_CLASSLOADER')) { + spl_autoload_register(COMPONENT_CLASSLOADER); +} else { + spl_autoload_register('core_component::classloader'); +} + require('version.php'); $CFG->target_release = $release; From f49d814abcb0413d577b85b3922528e1e6852324 Mon Sep 17 00:00:00 2001 From: Frederic Massart Date: Tue, 17 Sep 2013 17:23:59 +0800 Subject: [PATCH 046/101] MDL-40048 mod_chat: Replacing add_to_log with new events For this to be done properly, a new function to send the message and trigger the event has been created. Following that a data generator for chat, and some unit tests. --- mod/chat/chat_ajax.php | 14 +- mod/chat/chatd.php | 20 ++- .../classes/event/instances_list_viewed.php | 73 ++++++++ mod/chat/classes/event/message_sent.php | 97 +++++++++++ mod/chat/classes/event/sessions_viewed.php | 96 +++++++++++ mod/chat/gui_basic/index.php | 14 +- mod/chat/gui_header_js/insert.php | 14 +- mod/chat/gui_header_js/users.php | 11 +- mod/chat/index.php | 7 +- mod/chat/lang/en/chat.php | 3 + mod/chat/lib.php | 67 +++++--- mod/chat/report.php | 12 +- mod/chat/tests/events_test.php | 161 ++++++++++++++++++ mod/chat/tests/generator/lib.php | 102 +++++++++++ mod/chat/tests/generator_test.php | 53 ++++++ 15 files changed, 668 insertions(+), 76 deletions(-) create mode 100644 mod/chat/classes/event/instances_list_viewed.php create mode 100644 mod/chat/classes/event/message_sent.php create mode 100644 mod/chat/classes/event/sessions_viewed.php create mode 100644 mod/chat/tests/events_test.php create mode 100644 mod/chat/tests/generator/lib.php create mode 100644 mod/chat/tests/generator_test.php diff --git a/mod/chat/chat_ajax.php b/mod/chat/chat_ajax.php index d9e6b374829..d06127bd945 100644 --- a/mod/chat/chat_ajax.php +++ b/mod/chat/chat_ajax.php @@ -77,22 +77,14 @@ case 'chat': } if (!empty($chat_message)) { - $message = new stdClass(); - $message->chatid = $chatuser->chatid; - $message->userid = $chatuser->userid; - $message->groupid = $chatuser->groupid; - $message->message = $chat_message; - $message->timestamp = time(); + + chat_send_chatmessage($chatuser, $chat_message, 0, $cm); $chatuser->lastmessageping = time() - 2; $DB->update_record('chat_users', $chatuser); - $DB->insert_record('chat_messages', $message); - $DB->insert_record('chat_messages_current', $message); - // response ok message + // Response OK message. echo json_encode(true); - add_to_log($course->id, 'chat', 'talk', "view.php?id=$cm->id", $chat->id, $cm->id); - ob_end_flush(); } break; diff --git a/mod/chat/chatd.php b/mod/chat/chatd.php index a937b436852..567a95d00d3 100644 --- a/mod/chat/chatd.php +++ b/mod/chat/chatd.php @@ -345,6 +345,7 @@ EOD; switch($type) { case CHAT_SIDEKICK_BEEP: + // Incoming beep $msg = New stdClass; $msg->chatid = $this->sets_info[$sessionid]['chatid']; @@ -355,8 +356,8 @@ EOD; $msg->timestamp = time(); // Commit to DB - $DB->insert_record('chat_messages', $msg, false); - $DB->insert_record('chat_messages_current', $msg, false); + chat_send_chatmessage($this->sets_info[$sessionid]['chatuser'], $msg->message, false, + $this->sets_info[$sessionid]['cm']); // OK, now push it out to all users $this->message_broadcast($msg, $this->sets_info[$sessionid]['user']); @@ -450,8 +451,8 @@ EOD; $msg->message = $msg->message; // Commit to DB - $DB->insert_record('chat_messages', $msg, false); - $DB->insert_record('chat_messages_current', $msg, false); + chat_send_chatmessage($this->sets_info[$sessionid]['chatuser'], $msg->message, false, + $this->sets_info[$sessionid]['cm']); // Undo the hack $msg->message = $origmsg; @@ -517,6 +518,10 @@ EOD; $this->dismiss_half($sessionid); return false; } + if (!($cm = get_coursemodule_from_instance('chat', $chat->id, $course->id))) { + $this->dismiss_half($sessionid); + return false; + } global $CHAT_HTMLHEAD_JS, $CFG; @@ -531,6 +536,7 @@ EOD; 'courseid' => $course->id, 'chatuser' => $chatuser, 'chatid' => $chat->id, + 'cm' => $cm, 'user' => $user, 'userid' => $user->id, 'groupid' => $chatuser->groupid, @@ -573,8 +579,7 @@ EOD; $msg->message = 'enter'; $msg->timestamp = time(); - $DB->insert_record('chat_messages', $msg, false); - $DB->insert_record('chat_messages_current', $msg, false); + chat_send_chatmessage($chatuser, $msg->message, true); $this->message_broadcast($msg, $this->sets_info[$sessionid]['user']); return true; @@ -781,8 +786,7 @@ EOD; $msg->timestamp = time(); $this->trace('User has disconnected, destroying uid '.$info['userid'].' with SID '.$sessionid, E_USER_WARNING); - $DB->insert_record('chat_messages', $msg, false); - $DB->insert_record('chat_messages_current', $msg, false); + chat_send_chatmessage($info['chatuser'], $msg->message, true); // *************************** IMPORTANT // diff --git a/mod/chat/classes/event/instances_list_viewed.php b/mod/chat/classes/event/instances_list_viewed.php new file mode 100644 index 00000000000..d6bcade461e --- /dev/null +++ b/mod/chat/classes/event/instances_list_viewed.php @@ -0,0 +1,73 @@ +. + +/** + * mod_chat instances list viewed event. + * + * @package mod_chat + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace mod_chat\event; +defined('MOODLE_INTERNAL') || die(); + +/** + * mod_chat instances list viewed event class. + * + * @package mod_chat + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class instances_list_viewed extends \core\event\course_module_instances_list_viewed { + + /** + * Returns description of what happened. + * + * @return string + */ + public function get_description() { + return "User $this->userid viewed the list of chat activities in the course $this->courseid."; + } + + /** + * Return the legacy event log data. + * + * @return array|null + */ + protected function get_legacy_logdata() { + return array($this->courseid, 'chat', 'view all', 'index.php?id=' . $this->courseid, ''); + } + + /** + * Return localised event name. + * + * @return string + */ + public static function get_name() { + return get_string('event_instances_list_viewed', 'mod_chat'); + } + + /** + * Get URL related to the action + * + * @return \moodle_url + */ + public function get_url() { + return new \moodle_url('/mod/chat/index.php', array('id' => $this->courseid)); + } + +} diff --git a/mod/chat/classes/event/message_sent.php b/mod/chat/classes/event/message_sent.php new file mode 100644 index 00000000000..b8812038109 --- /dev/null +++ b/mod/chat/classes/event/message_sent.php @@ -0,0 +1,97 @@ +. + +/** + * mod_chat message sent event. + * + * @package mod_chat + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace mod_chat\event; +defined('MOODLE_INTERNAL') || die(); + +/** + * mod_chat message sent event class. + * + * @package mod_chat + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class message_sent extends \core\event\base { + + /** + * Returns description of what happened. + * + * @return string + */ + public function get_description() { + return "The user $this->relateduserid has sent a message in a chat."; + } + + /** + * Return legacy log data. + * + * @return array + */ + protected function get_legacy_logdata() { + $message = $this->get_record_snapshot('chat_messages', $this->objectid); + return array($this->courseid, 'chat', 'talk', 'view.php?id=' . $this->context->instanceid, + $message->chatid, $this->context->instanceid, $this->relateduserid); + } + + /** + * Return localised event name. + * + * @return string + */ + public static function get_name() { + return get_string('event_message_sent', 'mod_chat'); + } + + /** + * Get URL related to the action + * + * @return \moodle_url + */ + public function get_url() { + return new \moodle_url('/mod/chat/view.php', array('id' => $this->context->instanceid)); + } + + /** + * Init method. + * + * @return void + */ + protected function init() { + $this->data['crud'] = 'c'; + $this->data['level'] = self::LEVEL_PARTICIPATING; + $this->data['objecttable'] = 'chat_messages'; + } + + /** + * Custom validation. + * + * @return void + */ + protected function validate_data() { + if (!isset($this->relateduserid)) { + throw new \coding_exception('The property relateduserid must be set.'); + } + } + +} diff --git a/mod/chat/classes/event/sessions_viewed.php b/mod/chat/classes/event/sessions_viewed.php new file mode 100644 index 00000000000..e18562ba4b4 --- /dev/null +++ b/mod/chat/classes/event/sessions_viewed.php @@ -0,0 +1,96 @@ +. + +/** + * mod_chat sessions viewed event. + * + * @package mod_chat + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace mod_chat\event; +defined('MOODLE_INTERNAL') || die(); + +/** + * mod_chat sessions viewed event class. + * + * @package mod_chat + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class sessions_viewed extends \core\event\content_viewed { + + /** + * Returns description of what happened. + * + * @return string + */ + public function get_description() { + return "The user {$this->userid} has viewed the sessions of the chat {$this->objectid}."; + } + + /** + * Return the legacy event log data. + * + * @return array|null + */ + protected function get_legacy_logdata() { + return array($this->courseid, 'chat', 'report', 'report.php?id=' . $this->context->instanceid, + $this->objectid, $this->context->instanceid); + } + + /** + * Return localised event name. + * + * @return string + */ + public static function get_name() { + return get_string('event_sessions_viewed', 'mod_chat'); + } + + /** + * Get URL related to the action + * + * @return \moodle_url + */ + public function get_url() { + return new \moodle_url('/mod/chat/report.php', array('id' => $this->context->instanceid)); + } + + /** + * Init method. + * + * @return void + */ + protected function init() { + $this->data['crud'] = 'r'; + $this->data['level'] = self::LEVEL_OTHER; + $this->data['objecttable'] = 'chat'; + } + + /** + * Custom validation. + * + * @throws \coding_exception + * @return void + */ + protected function validate_data() { + // The parent class requires this to be non-empty. We are setting it and ignore the parent validation. + $this->data['other']['content'] = ''; + } + +} diff --git a/mod/chat/gui_basic/index.php b/mod/chat/gui_basic/index.php index 8bb0b9d4e2e..c82620f4abd 100644 --- a/mod/chat/gui_basic/index.php +++ b/mod/chat/gui_basic/index.php @@ -93,19 +93,11 @@ if (!empty($refresh) and data_submitted()) { } else if (empty($refresh) and data_submitted() and confirm_sesskey()) { if ($message!='') { - $newmessage = new stdClass(); - $newmessage->chatid = $chat->id; - $newmessage->userid = $USER->id; - $newmessage->groupid = $groupid; - $newmessage->systrem = 0; - $newmessage->message = $message; - $newmessage->timestamp = time(); - $DB->insert_record('chat_messages', $newmessage); - $DB->insert_record('chat_messages_current', $newmessage); + + $chatuser = $DB->get_record('chat_users', array('sid' => $chat_sid)); + chat_send_chatmessage($chatuser, $message, 0, $cm); $DB->set_field('chat_users', 'lastmessageping', time(), array('sid'=>$chat_sid)); - - add_to_log($course->id, 'chat', 'talk', "view.php?id=$cm->id", $chat->id, $cm->id); } chat_delete_old_users(); diff --git a/mod/chat/gui_header_js/insert.php b/mod/chat/gui_header_js/insert.php index 6b842d2977b..eb664923306 100644 --- a/mod/chat/gui_header_js/insert.php +++ b/mod/chat/gui_header_js/insert.php @@ -44,22 +44,10 @@ $chat_message = clean_text($chat_message, FORMAT_MOODLE); // Strip bad tags if (!empty($chat_message)) { - $message = new stdClass(); - $message->chatid = $chatuser->chatid; - $message->userid = $chatuser->userid; - $message->groupid = $chatuser->groupid; - $message->message = $chat_message; - $message->timestamp = time(); - - $DB->insert_record('chat_messages', $message); - $DB->insert_record('chat_messages_current', $message); + chat_send_chatmessage($chatuser, $chat_message, 0, $cm); $chatuser->lastmessageping = time() - 2; $DB->update_record('chat_users', $chatuser); - - if ($cm = get_coursemodule_from_instance('chat', $chat->id, $course->id)) { - add_to_log($course->id, 'chat', 'talk', "view.php?id=$cm->id", $chat->id, $cm->id); - } } if ($chatuser->version == 'header_js') { diff --git a/mod/chat/gui_header_js/users.php b/mod/chat/gui_header_js/users.php index 825f0a7e492..35fff5deda9 100644 --- a/mod/chat/gui_header_js/users.php +++ b/mod/chat/gui_header_js/users.php @@ -39,16 +39,7 @@ if (!$cm = get_coursemodule_from_instance('chat', $chatuser->chatid, $courseid)) } if ($beep) { - $message->chatid = $chatuser->chatid; - $message->userid = $chatuser->userid; - $message->groupid = $chatuser->groupid; - $message->message = "beep $beep"; - $message->system = 0; - $message->timestamp = time(); - - $DB->insert_record('chat_messages', $message); - $DB->insert_record('chat_messages_current', $message); - + chat_send_chatmessage($chatuser, "beep $beep", 0, $cm); $chatuser->lastmessageping = time(); // A beep is a ping ;-) } diff --git a/mod/chat/index.php b/mod/chat/index.php index 540aaeaba2c..e0a237e61ef 100644 --- a/mod/chat/index.php +++ b/mod/chat/index.php @@ -14,8 +14,11 @@ if (! $course = $DB->get_record('course', array('id'=>$id))) { require_course_login($course); $PAGE->set_pagelayout('incourse'); -add_to_log($course->id, 'chat', 'view all', "index.php?id=$course->id", ''); - +$params = array( + 'context' => context_course::instance($id) +); +$event = \mod_chat\event\instances_list_viewed::create($params); +$event->trigger(); /// Get all required strings diff --git a/mod/chat/lang/en/chat.php b/mod/chat/lang/en/chat.php index b94b7f6ee31..e21799c222a 100644 --- a/mod/chat/lang/en/chat.php +++ b/mod/chat/lang/en/chat.php @@ -61,6 +61,9 @@ $string['chatreport'] = 'Chat sessions'; $string['chat:talk'] = 'Talk in a chat'; $string['chattime'] = 'Next chat time'; $string['entermessage'] = "Enter your message"; +$string['event_instances_list_viewed'] = 'Instances list viewed'; +$string['event_message_sent'] = 'Message sent'; +$string['event_sessions_viewed'] = 'Sessions viewed'; $string['idle'] = 'Idle'; $string['inputarea'] = 'Input area'; $string['invalidid'] = 'Could not find that chat room!'; diff --git a/mod/chat/lib.php b/mod/chat/lib.php index 39823327e8b..0089feb3885 100644 --- a/mod/chat/lib.php +++ b/mod/chat/lib.php @@ -602,16 +602,7 @@ function chat_login_user($chatid, $version, $groupid, $course) { if ($version == 'sockets') { // do not send 'enter' message, chatd will do it } else { - $message = new stdClass(); - $message->chatid = $chatuser->chatid; - $message->userid = $chatuser->userid; - $message->groupid = $groupid; - $message->message = 'enter'; - $message->system = 1; - $message->timestamp = time(); - - $DB->insert_record('chat_messages', $message); - $DB->insert_record('chat_messages_current', $message); + chat_send_chatmessage($chatuser, 'enter', true); } } @@ -637,16 +628,7 @@ function chat_delete_old_users() { if ($oldusers = $DB->get_records_select('chat_users', $query, $params) ) { $DB->delete_records_select('chat_users', $query, $params); foreach ($oldusers as $olduser) { - $message = new stdClass(); - $message->chatid = $olduser->chatid; - $message->userid = $olduser->userid; - $message->groupid = $olduser->groupid; - $message->message = 'exit'; - $message->system = 1; - $message->timestamp = time(); - - $DB->insert_record('chat_messages', $message); - $DB->insert_record('chat_messages_current', $message); + chat_send_chatmessage($olduser, 'exit', true); } } } @@ -708,6 +690,51 @@ function chat_update_chat_times($chatid=0) { } } +/** + * Send a message on the chat. + * + * @param object $chatuser The chat user record. + * @param string $messagetext The message to be sent. + * @param bool $system False for non-system messages, true for system messages. + * @param object $cm The course module object, pass it to save a database query when we trigger the event. + * @return int The message ID. + * @since 2.6 + */ +function chat_send_chatmessage($chatuser, $messagetext, $system = false, $cm = null) { + global $DB; + + $message = new stdClass(); + $message->chatid = $chatuser->chatid; + $message->userid = $chatuser->userid; + $message->groupid = $chatuser->groupid; + $message->message = $messagetext; + $message->system = $system ? 1 : 0; + $message->timestamp = time(); + + $messageid = $DB->insert_record('chat_messages', $message); + $DB->insert_record('chat_messages_current', $message); + $message->id = $messageid; + + if (!$system) { + + if (empty($cm)) { + $cm = get_coursemodule_from_instance('chat', $chatuser->chatid, $chatuser->course); + } + + $params = array( + 'context' => context_module::instance($cm->id), + 'objectid' => $message->id, + // We set relateduserid, because when triggered from the chat daemon, the event userid is null. + 'relateduserid' => $chatuser->userid + ); + $event = \mod_chat\event\message_sent::create($params); + $event->add_record_snapshot('chat_messages', $message); + $event->trigger(); + } + + return $message->id; +} + /** * @global object * @global object diff --git a/mod/chat/report.php b/mod/chat/report.php index 43ab03007fa..eab88ed9ccc 100644 --- a/mod/chat/report.php +++ b/mod/chat/report.php @@ -47,7 +47,17 @@ notice(get_string('nopermissiontoseethechatlog', 'chat')); } - add_to_log($course->id, 'chat', 'report', "report.php?id=$cm->id", $chat->id, $cm->id); + $params = array( + 'context' => $context, + 'objectid' => $chat->id, + 'other' => array( + 'start' => $start, + 'end' => $end + ) + ); + $event = \mod_chat\event\sessions_viewed::create($params); + $event->add_record_snapshot('chat', $chat); + $event->trigger(); $strchats = get_string('modulenameplural', 'chat'); $strchat = get_string('modulename', 'chat'); diff --git a/mod/chat/tests/events_test.php b/mod/chat/tests/events_test.php new file mode 100644 index 00000000000..1ba312f19af --- /dev/null +++ b/mod/chat/tests/events_test.php @@ -0,0 +1,161 @@ +. + +/** + * Events tests. + * + * @package mod_chat + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +global $CFG; +require_once($CFG->dirroot . '/mod/chat/lib.php'); + +/** + * Events tests class. + * + * @package mod_chat + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class mod_chat_events_testcase extends advanced_testcase { + + public function test_message_sent() { + global $DB; + $this->resetAfterTest(); + + $this->setAdminUser(); + $course = $this->getDataGenerator()->create_course(); + $user1 = $this->getDataGenerator()->create_user(); + $user2 = $this->getDataGenerator()->create_user(); + $chat = $this->getDataGenerator()->create_module('chat', array('course' => $course->id)); + $cm = $DB->get_record('course_modules', array('id' => $chat->cmid)); + + // Logging in first user to the chat. + $this->setUser($user1->id); + $sid1 = chat_login_user($chat->id, 'ajax', 0, $course); + + // Logging in second user to the chat. + $this->setUser($user2->id); + $sid2 = chat_login_user($chat->id, 'ajax', 0, $course); + + // Getting the chatuser record. + $chatuser1 = $DB->get_record('chat_users', array('sid' => $sid1)); + $chatuser2 = $DB->get_record('chat_users', array('sid' => $sid2)); + + $sink = $this->redirectEvents(); + + // Send a messaging from the first user. We pass the CM to chat_send_chatmessage() this time. + // This ensures that the event triggered when sending a message is filled with the correct information. + $this->setUser($user1->id); + $messageid = chat_send_chatmessage($chatuser1, 'Hello!', false, $cm); + $events = $sink->get_events(); + $this->assertCount(1, $events); + $event = reset($events); + $this->assertInstanceOf('\mod_chat\event\message_sent', $event); + $this->assertEquals($messageid, $event->objectid); + $this->assertEquals($user1->id, $event->relateduserid); + $this->assertEquals($user1->id, $event->userid); + $expected = array($course->id, 'chat', 'talk', "view.php?id=$cm->id", $chat->id, $cm->id, $user1->id); + $this->assertEventLegacyLogData($expected, $event); + + // Send a messaging from the first user. We DO NOT pass the CM to chat_send_chatmessage() this time. + // This ensures that the event triggered when sending a message is filled with the correct information. + $sink->clear(); + $this->setUser($user2->id); + $messageid = chat_send_chatmessage($chatuser2, 'Hello!'); + $events = $sink->get_events(); + $this->assertCount(1, $events); + $event = reset($events); + $this->assertInstanceOf('\mod_chat\event\message_sent', $event); + $this->assertEquals($messageid, $event->objectid); + $this->assertEquals($user2->id, $event->relateduserid); + $this->assertEquals($user2->id, $event->userid); + $expected = array($course->id, 'chat', 'talk', "view.php?id=$cm->id", $chat->id, $cm->id, $user2->id); + $this->assertEventLegacyLogData($expected, $event); + + // Sending a message from the system should not trigger any event. + $sink->clear(); + $this->setAdminUser(); + chat_send_chatmessage($chatuser1, 'enter', true); + $this->assertEquals(0, $sink->count()); + + $sink->close(); + } + + public function test_sessions_viewed() { + global $USER; + $this->resetAfterTest(); + + // Not much can be tested here as the event is only triggered on a page load, + // let's just check that the event contains the expected basic information. + $this->setAdminUser(); + $course = $this->getDataGenerator()->create_course(); + $chat = $this->getDataGenerator()->create_module('chat', array('course' => $course->id)); + + $params = array( + 'context' => context_module::instance($chat->cmid), + 'objectid' => $chat->id, + 'other' => array( + 'start' => 1234, + 'end' => 5678 + ) + ); + $event = \mod_chat\event\sessions_viewed::create($params); + $event->add_record_snapshot('chat', $chat); + $sink = $this->redirectEvents(); + $event->trigger(); + $events = $sink->get_events(); + $event = reset($events); + $this->assertInstanceOf('\mod_chat\event\sessions_viewed', $event); + $this->assertEquals($USER->id, $event->userid); + $this->assertEquals(context_module::instance($chat->cmid), $event->get_context()); + $this->assertEquals(1234, $event->other['start']); + $this->assertEquals(5678, $event->other['end']); + $this->assertEquals($chat->id, $event->objectid); + $this->assertEquals($chat, $event->get_record_snapshot('chat', $chat->id)); + $expected = array($course->id, 'chat', 'report', "report.php?id=$chat->cmid", $chat->id, $chat->cmid); + $this->assertEventLegacyLogData($expected, $event); + } + + public function test_instances_list_viewed() { + global $USER; + $this->resetAfterTest(); + + // Not much can be tested here as the event is only triggered on a page load, + // let's just check that the event contains the expected basic information. + $this->setAdminUser(); + $course = $this->getDataGenerator()->create_course(); + + $params = array( + 'context' => context_course::instance($course->id) + ); + $event = \mod_chat\event\instances_list_viewed::create($params); + $sink = $this->redirectEvents(); + $event->trigger(); + $events = $sink->get_events(); + $event = reset($events); + $this->assertInstanceOf('\mod_chat\event\instances_list_viewed', $event); + $this->assertEquals($USER->id, $event->userid); + $this->assertEquals(context_course::instance($course->id), $event->get_context()); + $expected = array($course->id, 'chat', 'view all', "index.php?id=$course->id", ''); + $this->assertEventLegacyLogData($expected, $event); + } + +} diff --git a/mod/chat/tests/generator/lib.php b/mod/chat/tests/generator/lib.php new file mode 100644 index 00000000000..8947c3085fe --- /dev/null +++ b/mod/chat/tests/generator/lib.php @@ -0,0 +1,102 @@ +. + +/** + * mod_chat data generator. + * + * @package core + * @category test + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +/** + * mod_chat data generator class. + * + * @package core + * @category test + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class mod_chat_generator extends testing_module_generator { + + /** + * @var int keep track of how many messages have been created. + */ + protected $messagecount = 0; + + /** + * To be called from data reset code only, + * do not use in tests. + * @return void + */ + public function reset() { + $this->messagecount = 0; + parent::reset(); + } + + /** + * Create new chat module instance + * @param array|stdClass $record + * @param array $options + * @return stdClass activity record with extra cmid field + */ + public function create_instance($record = null, array $options = null) { + global $CFG; + require_once("$CFG->dirroot/mod/chat/lib.php"); + + $this->instancecount++; + $i = $this->instancecount; + + $record = (object)(array)$record; + $options = (array)$options; + + if (empty($record->course)) { + throw new coding_exception('Module generator requires $record->course.'); + } + if (!isset($record->name)) { + $record->name = get_string('pluginname', 'chat') . ' ' . $i; + } + if (!isset($record->intro)) { + $record->intro = 'Test chat ' . $i; + } + if (!isset($record->introformat)) { + $record->introformat = FORMAT_MOODLE; + } + if (!isset($record->keepdays)) { + $record->keepdays = 0; + } + if (!isset($record->studentlogs)) { + $record->studentlogs = 0; + } + if (!isset($record->chattime)) { + $record->chattime = time() - 2; + } + if (!isset($record->schedule)) { + $record->schedule = 0; + } + if (!isset($record->timemodified)) { + $record->timemodified = time(); + } + + $record->coursemodule = $this->precreate_course_module($record->course, $options); + $id = chat_add_instance($record); + return $this->post_add_instance($id, $record->coursemodule); + } + +} diff --git a/mod/chat/tests/generator_test.php b/mod/chat/tests/generator_test.php new file mode 100644 index 00000000000..81ababa90d7 --- /dev/null +++ b/mod/chat/tests/generator_test.php @@ -0,0 +1,53 @@ +. + +/** + * Genarator tests. + * + * @package mod_chat + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +/** + * Genarator tests class. + * + * @package mod_chat + * @copyright 2013 Frédéric Massart + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class mod_chat_genarator_testcase extends advanced_testcase { + + public function test_create_instance() { + global $DB; + $this->resetAfterTest(); + $this->setAdminUser(); + + $course = $this->getDataGenerator()->create_course(); + + $this->assertFalse($DB->record_exists('chat', array('course' => $course->id))); + $chat = $this->getDataGenerator()->create_module('chat', array('course' => $course->id)); + $this->assertEquals(1, $DB->count_records('chat', array('course' => $course->id))); + $this->assertTrue($DB->record_exists('chat', array('course' => $course->id))); + $this->assertTrue($DB->record_exists('chat', array('id' => $chat->id))); + + $params = array('course' => $course->id, 'name' => 'One more chat'); + $chat = $this->getDataGenerator()->create_module('chat', $params); + $this->assertEquals(2, $DB->count_records('chat', array('course' => $course->id))); + $this->assertEquals('One more chat', $DB->get_field_select('chat', 'name', 'id = :id', array('id' => $chat->id))); + } + +} From f44b89163086138750e79f4dd4a66a009dab002c Mon Sep 17 00:00:00 2001 From: Andrew Davis Date: Mon, 23 Sep 2013 11:40:34 +0700 Subject: [PATCH 047/101] MDL-41591 removed unnecessary zindexes from Clean --- theme/bootstrapbase/less/moodle/filemanager.less | 2 -- theme/bootstrapbase/style/moodle.css | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/theme/bootstrapbase/less/moodle/filemanager.less b/theme/bootstrapbase/less/moodle/filemanager.less index df6230a26da..9851e6298a3 100644 --- a/theme/bootstrapbase/less/moodle/filemanager.less +++ b/theme/bootstrapbase/less/moodle/filemanager.less @@ -874,7 +874,6 @@ a.ygtvspacer:hover { width: 100%; top: 0; left: 0; - z-index: 1000; } .fp-iconview .fp-reficons2 { position: absolute; @@ -882,7 +881,6 @@ a.ygtvspacer:hover { width: 100%; top: 0; left: 0; - z-index: 1001; } .fp-iconview .fp-file.fp-hasreferences .fp-reficons1 { background: url('[[pix:theme|fp/link]]') no-repeat; diff --git a/theme/bootstrapbase/style/moodle.css b/theme/bootstrapbase/style/moodle.css index 272b9c859d8..95562a9c8ba 100644 --- a/theme/bootstrapbase/style/moodle.css +++ b/theme/bootstrapbase/style/moodle.css @@ -1,4 +1,4 @@ -.layout-option-noheader #page-header,.layout-option-nonavbar #page-navbar,.layout-option-nofooter #page-footer,.layout-option-nocourseheader .course-content-header,.layout-option-nocoursefooter .course-content-footer{display:none}.empty-region-side-pre #block-region-side-pre,.empty-region-side-post #block-region-side-post{display:none}.empty-region-side-post #region-bs-main-and-pre.span9{width:100%}.empty-region-side-pre #region-main{float:none;width:100%}.empty-region-side-post.used-region-side-pre #region-main.span8{width:74.46808510638297%;*width:74.41489361702126%}.empty-region-side-post.used-region-side-pre #block-region-side-pre.span4{width:23.404255319148934%;*width:23.351063829787233%}.empty-region-side-post #region-bs-main-and-post.span9 #region-main.span8{width:100%}.dir-ltr,.mdl-left,.dir-rtl .mdl-right{text-align:left}.dir-rtl,.mdl-right,.dir-rtl .mdl-left{text-align:right}#add,#remove,.centerpara,.mdl-align{text-align:center}a.dimmed,a.dimmed:link,a.dimmed:visited,a.dimmed_text,a.dimmed_text:link,a.dimmed_text:visited,.dimmed_text,.dimmed_text a,.dimmed_text a:link,.dimmed_text a:visited,.usersuspended,.usersuspended a,.usersuspended a:link,.usersuspended a:visited,.dimmed_category,.dimmed_category a{color:#999}.activity.label .dimmed_text{opacity:.5;filter:alpha(opacity=50)}.unlist,.unlist li,.inline-list,.inline-list li,.block .list,.block .list li,.section li.activity,.section li.movehere,.tabtree li{padding:0;margin:0;list-style:none}.inline,.inline-list li{display:inline}.notifytiny{font-size:10.5px}.notifytiny li,.notifytiny td{font-size:100%}.red,.notifyproblem{color:#b94a48}.green,.notifysuccess{color:#468847}.reportlink{text-align:right}a.autolink.glossary:hover{cursor:help}.collapsibleregioncaption{white-space:nowrap}.collapsibleregioncaption img{vertical-align:middle}.jsenabled .hiddenifjs{display:none}.visibleifjs{display:none}.jsenabled .visibleifjs{display:inline}.jsenabled .collapsibleregion{overflow:hidden}.jsenabled .collapsed .collapsibleregioninner{visibility:hidden}.yui-overlay .yui-widget-bd{position:relative;top:0;left:0;z-index:1;padding:2px 5px;color:#000;background-color:#ffee69;border:1px solid #a6982b;border-top-color:#d4c237}.clearer{display:block;height:1px;padding:0;margin:0;clear:both;background:transparent;border-width:0}.bold,.warning,.errorbox .title,.pagingbar .title,.pagingbar .thispage,.headingblock{font-weight:bold}img.resize{width:1em;height:1em}.block img.resize,.breadcrumb img.resize{width:.8em;height:.9em}img.icon{width:16px;height:16px;padding-right:6px;vertical-align:text-bottom}.dir-rtl img.icon{padding-right:0;padding-left:6px}img.iconsmall{width:12px;height:12px;margin-right:3px;vertical-align:middle}img.iconhelp,.helplink img{width:16px;height:16px;padding-left:3px;vertical-align:text-bottom}h1 img.iconhelp,h1 img.icon,h2 img.iconhelp,h2 img.icon,h3 img.iconhelp,h3 img.icon,h4 img.iconhelp,h4 img.icon,h5 img.iconhelp,h5 img.icon,h6 img.iconhelp,h6 img.icon{vertical-align:middle}.dir-rtl img.iconhelp,.dir-rtl .helplink img{padding-right:3px;padding-left:0}img.iconlarge{width:24px;height:24px;vertical-align:middle}img.iconsort{padding-left:.3em;margin-bottom:.15em;vertical-align:text-bottom}.dir-rtl img.iconsort{padding-right:.3em;padding-left:0}img.icontoggle{width:50px;height:17px;vertical-align:middle}img.iconkbhelp{width:49px;height:17px}img.icon-pre,.dir-rtl img.icon-post{padding-right:3px;padding-left:0}img.icon-post,.dir-rtl img.icon-pre{padding-right:0;padding-left:3px}.boxaligncenter{margin-right:auto;margin-left:auto}.boxalignright{margin-right:0;margin-left:auto}.boxalignleft{margin-right:auto;margin-left:0}.boxwidthnarrow{width:30%}.boxwidthnormal{width:50%}.boxwidthwide{width:80%}.headermain{font-weight:bold}#maincontent{display:block;height:1px;overflow:hidden}img.uihint{cursor:help}#addmembersform table{margin-right:auto;margin-left:auto}.flexible th{white-space:nowrap}table.flexible .emptyrow{display:none}img.emoticon{width:15px;height:15px;vertical-align:middle}form.popupform,form.popupform div{display:inline}.arrow_button input{overflow:hidden}.action-icon img.smallicon{margin:0 .3em;vertical-align:text-bottom}.no-overflow{padding-bottom:1px;overflow:auto}.pagelayout-report .no-overflow{overflow:visible}.no-overflow>.generaltable{margin-bottom:0}.accesshide{position:absolute;left:-10000px;font-size:1em;font-weight:normal}.dir-rtl .accesshide{top:-30000px;left:auto}span.hide,div.hide{display:none}a.skip-block,a.skip{position:absolute;top:-1000em;font-size:.85em;text-decoration:none}a.skip-block:focus,a.skip-block:active,a.skip:focus,a.skip:active{position:static;display:block}.skip-block-to{display:block;height:1px;overflow:hidden}.addbloglink{text-align:center}.blog_entry .audience{padding-right:4px;text-align:right}.blog_entry .tags{margin-top:15px}.blog_entry .tags .action-icon img.smallicon{width:16px;height:16px}.blog_entry .content{margin-left:43px}#page-group-index #groupeditform{text-align:center}#doc-contents h1{margin:1em 0 0 0}#doc-contents ul{width:90%;padding:0;margin:0}#doc-contents ul li{list-style-type:none}.groupmanagementtable td{vertical-align:top}.groupmanagementtable #existingcell,.groupmanagementtable #potentialcell{width:42%}.groupmanagementtable #buttonscell{width:16%}.groupmanagementtable #buttonscell p.arrow_button input{width:auto;min-width:80%;margin:0 auto}.groupmanagementtable #removeselect_wrapper,.groupmanagementtable #addselect_wrapper{width:100%}.groupmanagementtable #removeselect_wrapper label,.groupmanagementtable #addselect_wrapper label{font-weight:normal}.dir-rtl .groupmanagementtable p{text-align:right}#group-usersummary{width:14em}.groupselector{margin-top:3px;margin-bottom:3px}.loginbox{margin:15px;overflow:visible}.loginbox.twocolumns{margin:15px}.loginbox h2,.loginbox .subcontent{padding:10px;margin:5px;text-align:center}.loginbox .loginpanel .desc{padding:0;margin:0;margin-top:15px;margin-bottom:5px}.loginbox .signuppanel .subcontent{text-align:left}.dir-rtl .loginbox .signuppanel .subcontent{text-align:right}.loginbox .loginsub{margin-right:0;margin-left:0}.loginbox .guestsub,.loginbox .forgotsub,.loginbox .potentialidps{margin:5px 12%}.loginbox .potentialidps .potentialidplist{margin-left:40%}.loginbox .potentialidps .potentialidplist div{text-align:left}.loginbox .loginform{margin-top:1em;text-align:left}.loginbox .loginform .form-label{float:left;width:44%;text-align:right;white-space:nowrap;direction:rtl}.dir-rtl .loginbox .loginform .form-label{float:left;width:44%;text-align:right;white-space:nowrap;direction:ltr}.loginbox .loginform .form-input{float:right;width:55%}.loginbox .loginform .form-input input{width:6em}.loginbox .signupform{margin-top:1em;text-align:center}.loginbox.twocolumns .loginpanel,.loginbox.twocolumns .signuppanel{display:block;float:left;width:48%;min-height:30px;padding:0;padding-bottom:2000px;margin:0;margin-bottom:-2000px;margin-left:2.76243%;border:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.loginbox .potentialidp .smallicon{margin:0 .3em;vertical-align:text-bottom}.notepost{margin-bottom:1em}.notepost .userpicture{float:left;margin-right:5px}.notepost .content,.notepost .footer{clear:both}.notesgroup{margin-left:20px}.path-my .coursebox .overview{margin:15px 30px 10px 30px}.path-my .coursebox .info{float:none;margin:0}.mod_introbox{padding:10px}table.mod_index{width:100%}.comment-ctrl{display:none;padding:0;margin:0;font-size:12px}.comment-ctrl h5{padding:5px;margin:0}.comment-area{max-width:400px;padding:5px}.comment-area textarea{width:100%;overflow:auto}.comment-area .fd{text-align:right}.comment-meta span{color:gray}.comment-link img{vertical-align:text-bottom}.comment-list{padding:0;margin:0;overflow:auto;font-size:11px;list-style:none}.comment-list li{position:relative;padding:.3em;margin:2px;margin-bottom:5px;clear:both;list-style:none}.comment-list li.first{display:none}.comment-paging{text-align:center}.comment-paging .pageno{padding:2px}.comment-paging .curpage{border:1px solid #CCC}.comment-message .picture{float:left;width:20px}.dir-rtl .comment-message .picture{float:right}.comment-message .text{padding:0;margin:0}.comment-message .text p{padding:0;margin:0 18px 0 0}.comment-delete{position:absolute;top:0;right:0;margin:.3em}.dir-rtl .comment-delete{position:absolute;right:auto;left:0;margin:.3em}.comment-delete-confirm{width:5em;padding:2px;text-align:center;background:#eee}.comment-container{float:left;margin:4px}.comment-report-selectall{display:none}.comment-link{display:none}.jsenabled .comment-link{display:block}.jsenabled .showcommentsnonjs{display:none}.jsenabled .comment-report-selectall{display:inline}.completion-expired{background:#f2dede}.completion-expected{font-size:10.5px}.completion-sortchoice,.completion-identifyfield{font-size:10.5px;vertical-align:bottom}.completion-progresscell{text-align:right}.completion-expired .completion-expected{font-weight:bold}#page-tag-coursetags_edit .coursetag_edit_centered{position:relative;width:600px;margin:20px auto}#page-tag-coursetags_edit .coursetag_edit_row{clear:both}#page-tag-coursetags_edit .coursetag_edit_row .coursetag_edit_left{float:left;width:50%;text-align:right}#page-tag-coursetags_edit .coursetag_edit_row .coursetag_edit_right{margin-left:50%}#page-tag-coursetags_edit .coursetag_edit_input3{display:none}#page-tag-coursetags_more .coursetag_more_large{font-size:120%}#page-tag-coursetags_more .coursetag_more_small{font-size:80%}#page-tag-coursetags_more .coursetag_more_link{font-size:80%}#tag-description,#tag-blogs{width:100%}#tag-management-box{margin-bottom:10px;line-height:20px}#tag-user-table{width:100%;padding:3px;clear:both}#tag-user-table{*zoom:1}#tag-user-table:before,#tag-user-table:after{display:table;line-height:0;content:""}#tag-user-table:after{clear:both}img.user-image{width:100px;height:100px}#small-tag-cloud-box{width:300px;margin:0 auto}#big-tag-cloud-box{float:none;width:600px;margin:0 auto}ul#tag-cloud-list{padding:5px;margin:0;list-style:none}ul#tag-cloud-list li{display:inline;margin:0;list-style-type:none}#tag-search-box{margin:10px auto;text-align:center}#tag-search-results-container{width:100%;padding:0}#tag-search-results{display:block;float:left;width:60%;padding:0;margin:15px 20% 0 20%}#tag-search-results li{float:left;width:30%;padding-right:1%;padding-left:1%;line-height:20px;text-align:left;list-style:none}span.flagged-tag,span.flagged-tag a{color:#b94a48}table#tag-management-list{width:100%;text-align:left}table#tag-management-list td,table#tag-management-list th{padding:4px;text-align:left;vertical-align:middle}.tag-management-form{text-align:center}#relatedtags-autocomplete-container{width:100%;min-height:4.6em;margin-right:auto;margin-left:auto}#relatedtags-autocomplete{position:relative;display:block;width:60%;margin-right:auto;margin-left:auto}#relatedtags-autocomplete .yui-ac-content{position:absolute;left:20%;z-index:9050;width:420px;overflow:hidden;background:#fff;border:1px solid #404040}#relatedtags-autocomplete .ysearchquery{position:absolute;right:10px;z-index:10;color:#808080}#relatedtags-autocomplete .yui-ac-shadow{position:absolute;z-index:9049;width:100%;margin:.3em;background:#a0a0a0}#relatedtags-autocomplete ul{width:100%;padding:0;margin:0;list-style-type:none}#relatedtags-autocomplete li{padding:0 5px;white-space:nowrap;cursor:default}#relatedtags-autocomplete li.yui-ac-highlight{background:#ffc}h2.tag-heading,div#tag-description,div#tag-blogs,body.tag .managelink{padding:5px}.tag_cloud .s20{font-size:1.5em;font-weight:bold}.tag_cloud .s19{font-size:1.5em}.tag_cloud .s18{font-size:1.4em;font-weight:bold}.tag_cloud .s17{font-size:1.4em}.tag_cloud .s16{font-size:1.3em;font-weight:bold}.tag_cloud .s15{font-size:1.3em}.tag_cloud .s14{font-size:1.2em;font-weight:bold}.tag_cloud .s13{font-size:1.2em}.tag_cloud .s12,.tag_cloud .s11{font-size:1.1em;font-weight:bold}.tag_cloud .s10,.tag_cloud .s9{font-size:1.1em}.tag_cloud .s8,.tag_cloud .s7{font-size:1em;font-weight:bold}.tag_cloud .s6,.tag_cloud .s5{font-size:1em}.tag_cloud .s4,.tag_cloud .s3{font-size:.9em;font-weight:bold}.tag_cloud .s2,.tag_cloud .s1{font-size:.9em}.tag_cloud .s0{font-size:.8em}#webservice-doc-generator td{text-align:left;border:0 solid black}.smartselect{position:absolute}.smartselect .smartselect_mask{background-color:#fff}.smartselect ul{padding:0;margin:0}.smartselect ul li{list-style:none}.smartselect .smartselect_menu{margin-right:5px}.safari .smartselect .smartselect_menu{margin-left:2px}.smartselect .smartselect_menu,.smartselect .smartselect_submenu{display:none;background-color:#FFF;border:1px solid #000}.smartselect .smartselect_menu.visible,.smartselect .smartselect_submenu.visible{display:block}.smartselect .smartselect_menu_content ul li{position:relative;padding:2px 5px}.smartselect .smartselect_menu_content ul li a{color:#333;text-decoration:none}.smartselect .smartselect_menu_content ul li a.selectable{color:inherit}.smartselect .smartselect_submenuitem{background-image:url([[pix:moodle|t/collapsed]]);background-position:100%;background-repeat:no-repeat}.smartselect.spanningmenu .smartselect_submenu{position:absolute;top:-1px;left:100%}.smartselect.spanningmenu .smartselect_submenu a{padding-right:16px;white-space:nowrap}.smartselect.spanningmenu .smartselect_menu_content ul li a.selectable:hover{text-decoration:underline}.smartselect.compactmenu .smartselect_submenu{position:relative;z-index:1010;display:none;margin:2px -3px;margin-left:10px;border-width:0}.smartselect.compactmenu .smartselect_submenu.visible{display:block}.smartselect.compactmenu .smartselect_menu{z-index:1000;overflow:hidden}.smartselect.compactmenu .smartselect_submenu .smartselect_submenu{z-index:1020}.smartselect.compactmenu .smartselect_submenuitem:hover>.smartselect_menuitem_label{font-weight:bold}#page-admin-registration-register .registration_textfield{width:300px}.userenrolment{width:100%;border-collapse:collapse}.userenrolment td{height:41px;padding:0}.userenrolment .subfield{margin-right:5px}.userenrolment .col_userdetails .subfield_picture{float:left}.userenrolment .col_lastseen{width:150px}.userenrolment .col_role{width:262px}.userenrolment .col_role .roles{margin-right:30px}.userenrolment .col_role .role{float:left;padding:3px;margin:3px}.dir-rtl .userenrolment .col_role .role{float:right}.userenrolment .col_role .role a{margin-left:3px;cursor:pointer}.userenrolment .col_role .addrole{float:right;width:18px;height:18px;margin:3px;text-align:center;background-color:#dff0d8;border:1px solid #d6e9c6}.userenrolment .col_role .addrole img{vertical-align:baseline}.userenrolment .hasAllRoles .col_role .addrole{display:none}.userenrolment .col_group .groups{margin-right:30px}.userenrolment .col_group .group{float:left;padding:3px;margin:3px;white-space:nowrap}.userenrolment .col_group .group a{margin-left:3px;cursor:pointer}.userenrolment .col_group .addgroup{float:right;width:18px;height:18px;margin:3px;text-align:center}.userenrolment .col_group .addgroup a img{vertical-align:bottom}.userenrolment .col_enrol .enrolment{float:left;padding:3px;margin:3px}.userenrolment .col_enrol .enrolment a{float:right;margin-left:3px}#page-enrol-users .enrol_user_buttons{float:right}#page-enrol-users.dir-rtl .enrol_user_buttons{float:left}#page-enrol-users .enrol_user_buttons .enrolusersbutton{display:inline;margin-left:1em}#page-enrol-users .enrol_user_buttons .enrolusersbutton div,#page-enrol-users .enrol_user_buttons .enrolusersbutton form{display:inline}#page-enrol-users .enrol_user_buttons .enrolusersbutton input{padding-right:6px;padding-left:6px}#page-enrol-users.dir-rtl .col_userdetails .subfield_picture{float:right}#page-enrol-users .user-enroller-panel .uep-search-results .user .details{width:237px}.dir-rtl .headermain{float:right}.dir-rtl .headermenu{float:left}.dir-rtl .loginbox .loginform .form-label{float:right;text-align:left}.dir-rtl .loginbox .loginform .form-input{text-align:right}.dir-rtl .yui3-menu-hidden{left:0}#page-admin-roles-define.dir-rtl #rolesform .felement{margin-right:180px}#page-message-edit.dir-rtl table.generaltable th.c0{text-align:right}.corelightbox{position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;background-color:#CCC}.corelightbox img{position:fixed;top:50%;left:50%}.mod-indent-1{margin-left:30px}.mod-indent-2{margin-left:60px}.mod-indent-3{margin-left:90px}.mod-indent-4{margin-left:120px}.mod-indent-5{margin-left:150px}.mod-indent-6{margin-left:180px}.mod-indent-7{margin-left:210px}.mod-indent-8{margin-left:240px}.mod-indent-9{margin-left:270px}.mod-indent-10{margin-left:300px}.mod-indent-11{margin-left:330px}.mod-indent-12{margin-left:360px}.mod-indent-13{margin-left:390px}.mod-indent-14{margin-left:420px}.mod-indent-15,.mod-indent-huge{margin-left:420px}.dir-rtl .mod-indent-1{margin-right:30px;margin-left:0}.dir-rtl .mod-indent-2{margin-right:60px;margin-left:0}.dir-rtl .mod-indent-3{margin-right:90px;margin-left:0}.dir-rtl .mod-indent-4{margin-right:120px;margin-left:0}.dir-rtl .mod-indent-5{margin-right:150px;margin-left:0}.dir-rtl .mod-indent-6{margin-right:180px;margin-left:0}.dir-rtl .mod-indent-7{margin-right:210px;margin-left:0}.dir-rtl .mod-indent-8{margin-right:240px;margin-left:0}.dir-rtl .mod-indent-9{margin-right:270px;margin-left:0}.dir-rtl .mod-indent-10{margin-right:300px;margin-left:0}.dir-rtl .mod-indent-11{margin-right:330px;margin-left:0}.dir-rtl .mod-indent-12{margin-right:360px;margin-left:0}.dir-rtl .mod-indent-13{margin-right:390px;margin-left:0}.dir-rtl .mod-indent-14{margin-right:420px;margin-left:0}.dir-rtl .mod-indent-15,.dir-rtl .mod-indent-huge{margin-right:420px;margin-left:0}.resourcecontent .mediaplugin_mp3 object{width:600px;height:25px}.resourcecontent audio.mediaplugin_html5audio{width:600px}.resourceimage{max-width:100%}.mediaplugin_mp3 object{width:300px;height:15px}audio.mediaplugin_html5audio{width:300px}.core_media_preview.pagelayout-embedded #content{padding:0}.core_media_preview.pagelayout-embedded #maincontent{height:0}.core_media_preview.pagelayout-embedded .mediaplugin{margin:0}.dir-rtl .ygtvtn,.dir-rtl .ygtvtm,.dir-rtl .ygtvtmh,.dir-rtl .ygtvtmhh,.dir-rtl .ygtvtp,.dir-rtl .ygtvtph,.dir-rtl .ygtvtphh,.dir-rtl .ygtvln,.dir-rtl .ygtvlm,.dir-rtl .ygtvlmh,.dir-rtl .ygtvlmhh,.dir-rtl .ygtvlp,.dir-rtl .ygtvlph,.dir-rtl .ygtvlphh,.dir-rtl .ygtvdepthcell,.dir-rtl .ygtvok,.dir-rtl .ygtvok:hover,.dir-rtl .ygtvcancel,.dir-rtl .ygtvcancel:hover{width:18px;height:22px;cursor:pointer;background-image:url([[pix:theme|yui2-treeview-sprite-rtl]]);background-repeat:no-repeat}.dir-rtl .ygtvtn{background-position:0 -5600px}.dir-rtl .ygtvtm{background-position:0 -4000px}.dir-rtl .ygtvtmh,.dir-rtl .ygtvtmhh{background-position:0 -4800px}.dir-rtl .ygtvtp{background-position:0 -6400px}.dir-rtl .ygtvtph,.dir-rtl .ygtvtphh{background-position:0 -7200px}.dir-rtl .ygtvln{background-position:0 -1600px}.dir-rtl .ygtvlm{background-position:0 0}.dir-rtl .ygtvlmh,.dir-rtl .ygtvlmhh{background-position:0 -800px}.dir-rtl .ygtvlp{background-position:0 -2400px}.dir-rtl .ygtvlph,.dir-rtl .ygtvlphh{background-position:0 -3200px}.dir-rtl .ygtvdepthcell{background-position:0 -8000px}.dir-rtl .ygtvok{background-position:0 -8800px}.dir-rtl .ygtvok:hover{background-position:0 -8844px}.dir-rtl .ygtvcancel{background-position:0 -8822px}.dir-rtl .ygtvcancel:hover{background-position:0 -8866px}.dir-rtl.yui-skin-sam .yui-panel .hd{text-align:right}.dir-rtl .yui-skin-sam .yui-layout .yui-layout-unit div.yui-layout-bd{text-align:right}.dir-rtl .clearlooks2.ie9 .mceAlert .mceMiddle span,.dir-rtl .clearlooks2 .mceConfirm .mceMiddle span{top:44px}.dir-rtl .o2k7Skin table,.dir-rtl .o2k7Skin tbody,.dir-rtl .o2k7Skin a,.dir-rtl .o2k7Skin img,.dir-rtl .o2k7Skin tr,.dir-rtl .o2k7Skin div,.dir-rtl .o2k7Skin td,.dir-rtl .o2k7Skin iframe,.dir-rtl .o2k7Skin span,.dir-rtl .o2k7Skin *,.dir-rtl .o2k7Skin .mceText,.dir-rtl .o2k7Skin .mceListBox .mceText{text-align:right}.path-rating .ratingtable{width:100%;margin-bottom:1em}.path-rating .ratingtable th.rating{width:100%}.path-rating .ratingtable td.rating,.path-rating .ratingtable td.time{text-align:center;white-space:nowrap}.initialbar a{padding-right:2px}.moodle-dialogue-base .moodle-dialogue-lightbox{background-color:#AAA}.moodle-dialogue-base .hidden,.moodle-dialogue-base .moodle-dialogue-hidden{display:none}.no-scrolling{overflow:hidden}.moodle-dialogue-fullscreen{top:0;left:0;width:100%;height:100%;overflow:auto}.moodle-dialogue-base .moodle-dialogue{z-index:600;padding:0;margin:0;background:0;border:0;outline:#000 dotted 0}.moodle-dialogue-base .moodle-dialogue-wrap{margin-top:-3px;margin-left:-3px;background-color:#fff;border:1px solid #ccc;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd{padding:5px;margin:0;font-size:12px;font-weight:normal;letter-spacing:1px;color:#333;text-align:center;text-shadow:1px 1px 1px #fff;background:#ccc;background-color:#ebebeb;background-image:-moz-linear-gradient(top,#fff,#ccc);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#ccc));background-image:-webkit-linear-gradient(top,#fff,#ccc);background-image:-o-linear-gradient(top,#fff,#ccc);background-image:linear-gradient(to bottom,#fff,#ccc);background-repeat:repeat-x;border-bottom:1px solid #bbb;-webkit-border-radius:10px 10px 0 0;-moz-border-radius:10px 10px 0 0;border-radius:10px 10px 0 0;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffcccccc',GradientType=0);filter:dropshadow(color=#ffffff,offx=1,offy=1)}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd h1{display:inline;padding:0;margin:0;font-size:100%;font-weight:bold}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd .yui3-widget-buttons{padding:5px}.moodle-dialogue-base .closebutton{display:inline-block;float:right;width:25px;height:15px;padding:0;vertical-align:middle;cursor:pointer;background-image:url([[pix:theme|sprite]]);background-repeat:no-repeat;border-style:none}.dir-rtl .moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd .yui3-widget-buttons{right:auto;left:0}.moodle-dialogue-base .moodle-dialogue .moodle-dialogue-bd{padding:1em;overflow:auto;font-size:12px;line-height:2em;color:#555}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-content{padding:0;background:#FFF}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-hd{padding:10px;font-size:16px}.moodle-dialogue-base .moodle-dialogue-fullscreen,.moodle-dialogue-fullscreen .moodle-dialogue-content{width:100%;height:100%;margin:0;border:0}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-hd,.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-wrap{border-radius:0}.moodle-dialogue-confirm .confirmation-dialogue{text-align:center}.moodle-dialogue-confirm .confirmation-dialogue input{text-align:center}.moodle-dialogue-exception .moodle-exception-message{text-align:center}.moodle-dialogue-exception .moodle-exception-param label{font-weight:bold}.moodle-dialogue-exception .param-stacktrace label{background-color:#EEE;border:1px solid #ccc;border-bottom-width:0}.moodle-dialogue-exception .param-stacktrace pre{background-color:#fff;border:1px solid #ccc}.moodle-dialogue-exception .param-stacktrace .stacktrace-file{font-size:11.9px;color:navy}.moodle-dialogue-exception .param-stacktrace .stacktrace-line{font-size:11.9px;color:#b94a48}.moodle-dialogue-exception .param-stacktrace .stacktrace-call{font-size:90%;color:#333;border-bottom:1px solid #eee}.moodle-dialogue-base .moodle-dialogue .moodle-dialogue-content .moodle-dialogue-ft{padding:0;margin:.7em 1em;font-size:12px;text-align:right;background-color:#FFF}.moodle-dialogue-confirm .confirmation-message{margin:.5em 1em}.moodle-dialogue-confirm .confirmation-dialogue input{min-width:80px}.moodle-dialogue-exception .moodle-exception-message{margin:1em}.moodle-dialogue-exception .moodle-exception-param{margin-bottom:.5em}.moodle-dialogue-exception .moodle-exception-param label{width:150px}.moodle-dialogue-exception .param-stacktrace label{display:block;padding:4px 1em;margin:0}.moodle-dialogue-exception .param-stacktrace pre{display:block;height:200px;overflow:auto}.moodle-dialogue-exception .param-stacktrace .stacktrace-file{display:inline-block;margin:4px 0}.moodle-dialogue-exception .param-stacktrace .stacktrace-line{display:inline-block;width:50px;margin:4px 1em}.moodle-dialogue-exception .param-stacktrace .stacktrace-call{padding-bottom:4px;padding-left:25px;margin-bottom:4px}.moodle-dialogue .moodle-dialogue-bd .content-lightbox{top:0;left:0;width:100%;height:100%;padding:10% 0;text-align:center;background-color:white;opacity:.75;filter:alpha(opacity=75)}.moodle-dialogue .tooltiptext{max-height:300px}.moodle-dialogue-base .moodle-dialogue.moodle-dialogue-tooltip{z-index:3001}#page-question-edit.dir-rtl a.container-close{right:auto;left:6px}.chooserdialoguebody,.choosertitle{display:none}.moodle-dialogue.chooserdialogue .moodle-dialogue-content .moodle-dialogue-ft{margin:0}.chooserdialogue .moodle-dialogue-wrap .moodle-dialogue-bd{padding:0;background:#f2f2f2;-webkit-border-bottom-right-radius:10px;border-bottom-right-radius:10px;-webkit-border-bottom-left-radius:10px;border-bottom-left-radius:10px;-moz-border-radius-bottomright:10px;-moz-border-radius-bottomleft:10px}.choosercontainer #chooseform .submitbuttons{margin:.7em 0;text-align:center}.choosercontainer #chooseform .submitbuttons input{min-width:100px;margin:0 .5em}.choosercontainer #chooseform .options{position:relative;border-bottom:1px solid #bbb}.jsenabled .choosercontainer #chooseform .alloptions{max-width:20.3em;overflow-x:hidden;overflow-y:auto;-webkit-box-shadow:inset 0 0 30px 0 #ccc;-moz-box-shadow:inset 0 0 30px 0 #ccc;box-shadow:inset 0 0 30px 0 #ccc}.dir-rtl.jsenabled .choosercontainer #chooseform .alloptions{max-width:18.3em}.choosercontainer #chooseform .moduletypetitle,.choosercontainer #chooseform .option,.choosercontainer #chooseform .nonoption{padding:0 1.6em 0 1.6em;margin-bottom:0}.choosercontainer #chooseform .moduletypetitle{padding-top:1.2em;padding-bottom:.4em;text-transform:uppercase}.choosercontainer #chooseform .option .typename,.choosercontainer #chooseform .option span.modicon img.icon,.choosercontainer #chooseform .nonoption .typename,.choosercontainer #chooseform .nonoption span.modicon img.icon{padding:0 0 0 .5em}.dir-rtl .choosercontainer #chooseform .option .typename,.dir-rtl .choosercontainer #chooseform .option span.modicon img.icon,.dir-rtl .choosercontainer #chooseform .nonoption .typename,.dir-rtl .choosercontainer #chooseform .nonoption span.modicon img.icon{padding:0 .5em 0 0}.choosercontainer #chooseform .option span.modicon img.icon,.choosercontainer #chooseform .nonoption span.modicon img.icon{width:24px;height:24px}.choosercontainer #chooseform .option input[type=radio],.choosercontainer #chooseform .option span.typename,.choosercontainer #chooseform .option span.modicon{vertical-align:middle}.choosercontainer #chooseform .option label{display:block;padding:.3em 0 .1em 0;border-bottom:1px solid #fff}.choosercontainer #chooseform .nonoption{padding-top:.3em;padding-bottom:.1em;padding-left:2.7em}.dir-rtl .choosercontainer #chooseform .nonoption{padding-right:2.7em;padding-left:0}.choosercontainer #chooseform .subtype{padding:0 1.6em 0 3.2em;margin-bottom:0}.dir-rtl .choosercontainer #chooseform .subtype{padding:0 3.2em 0 1.6em}.choosercontainer #chooseform .subtype .typename{margin:0 0 0 .2em}.dir-rtl .choosercontainer #chooseform .subtype .typename{margin:0 .2em 0 0}.jsenabled .choosercontainer #chooseform .instruction,.jsenabled .choosercontainer #chooseform .typesummary{position:absolute;top:0;right:0;bottom:0;left:20.3em;display:none;padding:1.6em;margin:0;overflow-x:hidden;overflow-y:auto;line-height:2em;background-color:#fff}.dir-rtl.jsenabled .choosercontainer #chooseform .instruction,.dir-rtl.jsenabled .choosercontainer #chooseform .typesummary{right:18.5em;left:0;border-right:1px solid grey}.jsenabled .choosercontainer #chooseform .instruction,.choosercontainer #chooseform .selected .typesummary{display:block}.choosercontainer #chooseform .selected{background-color:#fff;-webkit-box-shadow:0 0 10px 0 #ccc;-moz-box-shadow:0 0 10px 0 #ccc;box-shadow:0 0 10px 0 #ccc}.section-modchooser-link img.smallicon{padding:3px}.formlistingradio{padding-right:10px;padding-bottom:25px}.formlistinginputradio{float:left}.formlistingmain{min-height:225px}.formlisting{position:relative;padding:1px 19px 14px;margin:15px 0;background-color:white;border:1px solid #DDD;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.formlistingmore{position:absolute;right:-1px;bottom:-1px;padding:3px 7px;font-size:12px;font-weight:bold;color:#9da0a4;cursor:pointer;background-color:whiteSmoke;border:1px solid #ddd;-webkit-border-radius:4px 0 4px 0;-moz-border-radius:4px 0 4px 0;border-radius:4px 0 4px 0}.formlistingall{padding:0;margin:15px 0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.formlistingrow{top:50%;left:50%;float:left;width:150px;min-height:34px;padding:6px;cursor:pointer;background-color:#f7f7f9;border-right:1px solid #e1e1e8;border-bottom:1px solid;border-left:1px solid #e1e1e8;border-color:#e1e1e8;-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}body.jsenabled .formlistingradio{display:none}body.jsenabled .formlisting{display:block}table.collection{width:100%;margin-bottom:20px;border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}table.collection th,table.collection td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #ddd}table.collection th{font-weight:bold}table.collection thead th{vertical-align:bottom}table.collection caption+thead tr:first-child th,table.collection caption+thead tr:first-child td,table.collection colgroup+thead tr:first-child th,table.collection colgroup+thead tr:first-child td,table.collection thead:first-child tr:first-child th,table.collection thead:first-child tr:first-child td{border-top:0}table.collection tbody+tbody{border-top:2px solid #ddd}table.collection .table{background-color:#fff}table.collection th,table.collection td{border-left:1px solid #ddd}table.collection caption+thead tr:first-child th,table.collection caption+tbody tr:first-child th,table.collection caption+tbody tr:first-child td,table.collection colgroup+thead tr:first-child th,table.collection colgroup+tbody tr:first-child th,table.collection colgroup+tbody tr:first-child td,table.collection thead:first-child tr:first-child th,table.collection tbody:first-child tr:first-child th,table.collection tbody:first-child tr:first-child td{border-top:0}table.collection thead:first-child tr:first-child>th:first-child,table.collection tbody:first-child tr:first-child>td:first-child,table.collection tbody:first-child tr:first-child>th:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}table.collection thead:first-child tr:first-child>th:last-child,table.collection tbody:first-child tr:first-child>td:last-child,table.collection tbody:first-child tr:first-child>th:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}table.collection thead:last-child tr:last-child>th:first-child,table.collection tbody:last-child tr:last-child>td:first-child,table.collection tbody:last-child tr:last-child>th:first-child,table.collection tfoot:last-child tr:last-child>td:first-child,table.collection tfoot:last-child tr:last-child>th:first-child{-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px}table.collection thead:last-child tr:last-child>th:last-child,table.collection tbody:last-child tr:last-child>td:last-child,table.collection tbody:last-child tr:last-child>th:last-child,table.collection tfoot:last-child tr:last-child>td:last-child,table.collection tfoot:last-child tr:last-child>th:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px}table.collection tfoot+tbody:last-child tr:last-child td:first-child{-webkit-border-bottom-left-radius:0;border-bottom-left-radius:0;-moz-border-radius-bottomleft:0}table.collection tfoot+tbody:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:0;border-bottom-right-radius:0;-moz-border-radius-bottomright:0}table.collection caption+thead tr:first-child th:first-child,table.collection caption+tbody tr:first-child td:first-child,table.collection colgroup+thead tr:first-child th:first-child,table.collection colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}table.collection caption+thead tr:first-child th:last-child,table.collection caption+tbody tr:first-child td:last-child,table.collection colgroup+thead tr:first-child th:last-child,table.collection colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}table.collection tbody>tr:nth-child(odd)>td,table.collection tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}table.collection .name{text-align:left;vertical-align:middle}table.collection .awards{width:10%;text-align:center;vertical-align:middle}table.collection .criteria{width:40%;text-align:left;vertical-align:top}table.collection .badgeimage,table.collection .status{width:15%;text-align:center;vertical-align:middle}table.collection .description{width:25%;text-align:left}table.collection .actions{width:11em;text-align:center;vertical-align:middle}a.criteria-action{float:right;padding:0 3px}table.issuedbadgebox{width:750px;background-color:#fff}table.badgeissuedimage{width:150px;text-align:center}table.badgeissuedinfo{width:600px}table.badgeissuedinfo .bvalue{text-align:left;vertical-align:middle}table.badgeissuedinfo .bfield{width:125px;font-style:italic;text-align:left}ul.badges{margin:0;list-style:none}.badges li{position:relative;display:inline-block;width:150px;padding-bottom:2em;text-align:center;vertical-align:top}.badges li .badge-name{display:block;padding:5px}.badges li>img{position:absolute}.badges li .badge-image{top:0;left:10px;z-index:1;width:90px;height:90px}.badges li .badge-actions{position:relative}div.badge{position:relative;display:block}div.badge .expireimage{top:0;left:20px;width:100px;height:100px}.expireimage{position:absolute;top:0;left:30px;z-index:10;width:90px;height:90px;opacity:.85;filter:alpha(opacity=85)}.badge-profile{vertical-align:top}.connected{color:#468847}.notconnected{color:#b94a48}#page-badges-award .recipienttable tr td{vertical-align:top}#page-badges-award .recipienttable tr td.actions .actionbutton{width:100%;padding:.5em 0;margin:.3em 0}#page-badges-award .recipienttable tr td.existing,#page-badges-award .recipienttable tr td.potential{width:42%}.statustable{margin-bottom:0}.statusbox.active{background-color:#dff0d8}.statusbox.inactive{background-color:#fcf8e3}.activatebadge{margin:0;text-align:left;vertical-align:middle}.addcourse{float:right}.invisiblefieldset{display:inline;padding:0;margin:0;border-width:0}.breadcrumb-nav{float:left;margin-bottom:10px}.dir-rtl .breadcrumb-nav{float:right}.breadcrumb-button .singlebutton div{margin-right:0}.breadcrumb-nav .breadcrumb{margin:0}.moodle-actionmenu,.moodle-actionmenu>ul,.moodle-actionmenu>ul>li{display:inline-block}.moodle-actionmenu ul{padding:0;margin:0;list-style-type:none}.moodle-actionmenu .toggle-display,.moodle-actionmenu .menu-action-text{display:none}.jsenabled .moodle-actionmenu[data-enhance]{display:block}.jsenabled .moodle-actionmenu[data-enhance] .menu{display:none}.jsenabled .moodle-actionmenu[data-enhance] .toggle-display{display:inline;opacity:.5;filter:alpha(opacity=50)}.jsenabled .moodle-actionmenu[data-enhanced] .toggle-display{opacity:1;filter:alpha(opacity=100)}.jsenabled .moodle-actionmenu[data-enhanced] .menu-action-text{display:inline}.moodle-actionmenu[data-enhanced].show{position:relative}.moodle-actionmenu[data-enhanced].show .menu{position:absolute;z-index:1000;display:block;text-align:left;background-color:#fff;border:1px solid #ccc;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}.moodle-actionmenu[data-enhanced].show .menu a{display:block;padding:2px 1em 2px .5em;color:#333}.moodle-actionmenu[data-enhanced].show .menu a:hover,.moodle-actionmenu[data-enhanced].show .menu a:focus{color:#fff;background-color:#08c}.moodle-actionmenu[data-enhanced].show .menu a:first-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}.moodle-actionmenu[data-enhanced].show .menu a:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-moz-border-radius-bottomleft:4px}.moodle-actionmenu[data-enhanced].show .menu a.hidden{display:none}.moodle-actionmenu[data-enhanced].show .menu img{vertical-align:middle}.moodle-actionmenu[data-enhanced].show .menu .iconsmall{margin-right:8px}.moodle-actionmenu[data-enhanced].show .menu>li{display:block}.moodle-actionmenu[data-enhanced].show .menu.align-tl-bl{top:100%;left:0;margin-top:4px}.moodle-actionmenu[data-enhanced].show .menu.align-tr-bl{top:100%;right:100%}.moodle-actionmenu[data-enhanced].show .menu.align-bl-bl{bottom:100%;left:0}.moodle-actionmenu[data-enhanced].show .menu.align-br-bl{right:100%;bottom:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-br{top:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tr-br{top:100%;right:0;margin-top:4px}.moodle-actionmenu[data-enhanced].show .menu.align-bl-br{bottom:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-br-br{right:0;bottom:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-tl{top:0;left:0}.moodle-actionmenu[data-enhanced].show .menu.align-tr-tl{top:0;right:100%;margin-right:4px}.moodle-actionmenu[data-enhanced].show .menu.align-bl-tl{bottom:100%;left:0;margin-bottom:4px}.moodle-actionmenu[data-enhanced].show .menu.align-br-tl{right:100%;bottom:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-tr{top:0;left:100%;margin-left:4px}.moodle-actionmenu[data-enhanced].show .menu.align-tr-tr{top:0;right:0}.moodle-actionmenu[data-enhanced].show .menu.align-bl-tr{bottom:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-br-tr{right:0;bottom:100%;margin-bottom:4px}.action-menu-shown .moodle-actionmenu[data-enhanced] .toggle-display{background-color:#FFF}.block .moodle-actionmenu{text-align:right}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu{right:auto;left:0;text-align:right}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu .iconsmall{margin-right:0;margin-left:8px}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-bl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-bl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-bl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-bl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-br{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-br{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-br{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-br{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-tl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-tl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-tl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-tl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-tr{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-tr{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-tr{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-tr{right:auto;left:0}.dir-rtl .block .moodle-actionmenu{text-align:right}ul.dragdrop-keyboard-drag li{list-style-type:none}.block-control-actions .moodle-core-dragdrop-draghandle img{width:12px;height:12px}.formtable tbody th{font-weight:normal;text-align:right}.path-admin #assignrole{width:60%;margin-right:auto;margin-left:auto}.path-admin .admintable .leftalign{text-align:left}.environmenttable p.warn{color:#c09853;background-color:#fcf8e3}.environmenttable .error,.environmenttable span.warn,.environmenttable .ok{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.environmenttable .error:empty,.environmenttable span.warn:empty,.environmenttable .ok:empty{display:none}.environmenttable .error-important,.environmenttable span.warn-important,.environmenttable .ok-important{background-color:#b94a48}.environmenttable .error-important[href],.environmenttable span.warn-important[href],.environmenttable .ok-important[href]{background-color:#953b39}.environmenttable .error-warning,.environmenttable span.warn-warning,.environmenttable .ok-warning{background-color:#f89406}.environmenttable .error-warning[href],.environmenttable span.warn-warning[href],.environmenttable .ok-warning[href]{background-color:#c67605}.environmenttable .error-success,.environmenttable span.warn-success,.environmenttable .ok-success{background-color:#468847}.environmenttable .error-success[href],.environmenttable span.warn-success[href],.environmenttable .ok-success[href]{background-color:#356635}.environmenttable .error-info,.environmenttable span.warn-info,.environmenttable .ok-info{background-color:#3a87ad}.environmenttable .error-info[href],.environmenttable span.warn-info[href],.environmenttable .ok-info[href]{background-color:#2d6987}.environmenttable .error-inverse,.environmenttable span.warn-inverse,.environmenttable .ok-inverse{background-color:#333}.environmenttable .error-inverse[href],.environmenttable span.warn-inverse[href],.environmenttable .ok-inverse[href]{background-color:#1a1a1a}.environmenttable .error{background-color:#b94a48}.environmenttable span.warn{background-color:#f89406}.environmenttable .ok{background-color:#468847}.path-admin .admintable.environmenttable .name,.path-admin .admintable.environmenttable .info,.path-admin #assignrole .admintable .role,.path-admin #assignrole .admintable .userrole,.path-admin #assignrole .admintable .roleholder{white-space:nowrap}.path-admin .incompatibleblockstable td.c0{font-weight:bold}#page-admin-course-category .addcategory{padding:10px}#page-admin-course-index .editcourse{margin:20px auto}#page-admin-course-index .editcourse th,#page-admin-course-index .editcourse td{padding-right:10px;padding-left:10px}.timewarninghidden{display:none}.statusok,.statuswarning,.statusserious,.statuscritical{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.statusok:empty,.statuswarning:empty,.statusserious:empty,.statuscritical:empty{display:none}.statusok-important,.statuswarning-important,.statusserious-important,.statuscritical-important{background-color:#b94a48}.statusok-important[href],.statuswarning-important[href],.statusserious-important[href],.statuscritical-important[href]{background-color:#953b39}.statusok-warning,.statuswarning-warning,.statusserious-warning,.statuscritical-warning{background-color:#f89406}.statusok-warning[href],.statuswarning-warning[href],.statusserious-warning[href],.statuscritical-warning[href]{background-color:#c67605}.statusok-success,.statuswarning-success,.statusserious-success,.statuscritical-success{background-color:#468847}.statusok-success[href],.statuswarning-success[href],.statusserious-success[href],.statuscritical-success[href]{background-color:#356635}.statusok-info,.statuswarning-info,.statusserious-info,.statuscritical-info{background-color:#3a87ad}.statusok-info[href],.statuswarning-info[href],.statusserious-info[href],.statuscritical-info[href]{background-color:#2d6987}.statusok-inverse,.statuswarning-inverse,.statusserious-inverse,.statuscritical-inverse{background-color:#333}.statusok-inverse[href],.statuswarning-inverse[href],.statusserious-inverse[href],.statuscritical-inverse[href]{background-color:#1a1a1a}.statusok{background-color:#468847}.statuswarning{background-color:#c09853}.statusserious{background-color:#f89406}.statuscritical{background-color:#b94a48}#page-admin-report-capability-index #capabilitysearch{width:30em}#page-admin-report-backups-index .backup-error,#page-admin-report-backups-index .backup-unfinished{color:#b94a48}#page-admin-report-backups-index .backup-skipped,#page-admin-report-backups-index .backup-ok{color:#468847}#page-admin-report-backups-index .backup-warning{color:#c09853}#page-admin-qtypes .disabled,#page-admin-qbehaviours .disabled{color:#999}#page-admin-qtypes #qtypes div,#page-admin-qtypes #qtypes form,#page-admin-qbehaviours #qbehaviours div,#page-admin-qbehaviours #qbehaviours form{display:inline}#page-admin-qtypes #qtypes img.spacer,#page-admin-qbehaviours #qbehaviours img.spacer{width:16px}img.iconsmall{padding:.3em;margin:0}#page-admin-qbehaviours .cell.c3,#page-admin-qtypes .cell.c3{font-size:10.5px}#page-admin-lang .generalbox,#page-admin-course-index .singlebutton,#page-admin-course-index .addcategory,#page-course-index .buttons,#page-course-index-category .buttons,#page-admin-course-category .addcategory,#page-admin-stickyblocks .generalbox,#page-admin-maintenance .buttons,#page-admin-course-index .buttons,#page-admin-course-category .buttons,#page-admin-index .copyright,#page-admin-index .copyrightnotice,#page-admin-index .adminerror,#page-admin-index .availableupdatesinfo,#page-admin-index .adminerror .singlebutton,#page-admin-index .adminwarning .singlebutton,#page-admin-index #layout-table .singlebutton{margin-bottom:1em;text-align:center}.path-admin-roles .capabilitysearchui{margin-right:auto;margin-left:auto;text-align:left}#page-admin-roles-define .topfields{margin:1em 0 2em}#page-admin-roles-define .capdefault{background-color:#eee;border:1px solid #cecece}#page-filter-manage .backlink,.path-admin-roles .backlink{margin-top:1em}#page-admin-roles-explain #chooseuser h3,#page-admin-roles-usersroles .contextname{margin-top:0}#page-admin-roles-explain #chooseusersubmit{margin-top:0;text-align:center}#page-admin-roles-usersroles p{margin:0}#page-admin-roles-override .cell.c1,#page-admin-roles-assign .cell.c3,#page-admin-roles-assign .cell.c1{padding-top:.75em}#page-admin-roles-override .overridenotice,#page-admin-roles-define .definenotice{margin:1em 10% 2em 10%;text-align:left}#notice{width:60%;min-width:220px;margin:auto}#page-admin-index .releasenoteslink,#page-admin-index .adminwarning,#page-admin-index .maturitywarning,#page-admin-index .maturityinfo{width:60%;min-width:220px;padding:8px 35px 8px 14px;margin:auto;margin-bottom:20px;color:#c09853;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}#page-admin-index .maturitywarning,#page-admin-index .adminwarning.maturityinfo.maturity50{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}#page-admin-index .adminwarning.availableupdatesinfo,#page-admin-index .releasenoteslink{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo span{display:block}#page-admin-index .updateplugin div,#page-admin-plugins .updateplugin div{margin-bottom:.5em}#page-admin-index .updateplugin .updatepluginconfirmexternal,#page-admin-plugins .updateplugin .updatepluginconfirmexternal{padding:1em;background-color:#f2dede;border:1px solid #eed3d7}#page-admin-user-user_bulk #users .fgroup{white-space:nowrap}#page-admin-report-stats-index .graph{margin-bottom:1em;text-align:center}#page-admin-report-courseoverview-index .graph{margin-bottom:1em;text-align:center}#page-admin-lang .translator{border-style:solid;border-width:1px}.path-admin .roleassigntable{width:100%}.path-admin .roleassigntable td{padding:.2em .3em;vertical-align:top}.path-admin .roleassigntable p{margin:.2em 0;text-align:left}.path-admin .roleassigntable #existingcell,.path-admin .roleassigntable #potentialcell{width:42%}.path-admin .roleassigntable #existingcell p>label:first-child,.path-admin .roleassigntable #potentialcell p>label:first-child{font-weight:bold}.path-admin .roleassigntable #buttonscell{width:16%}.path-admin .roleassigntable #buttonscell #assignoptions{font-size:10.5px}.path-admin .roleassigntable #removeselect_wrapper,.path-admin .roleassigntable #addselect_wrapper{width:100%}.path-admin table.rolecap tr.rolecap th{font-weight:normal;text-align:left}.path-admin.dir-rtl table.rolecap tr.rolecap th{text-align:right}.path-admin .rolecap .hiddenrow{display:none}.path-admin #defineroletable .rolecap .inherit,.path-admin #defineroletable .rolecap .allow,.path-admin #defineroletable .rolecap .prevent,.path-admin #defineroletable .rolecap .prohibit{min-width:3.5em;padding:0;text-align:center}.path-admin .rolecap .cap-name,.path-admin .rolecap .note{display:block;font-size:10.5px;font-weight:normal;white-space:nowrap}.path-admin .rolecap label{display:block;padding:.5em;margin:0;text-align:center}.plugincheckwrapper{width:100%}.environmentbox{margin-top:1em}#mnetconfig table{margin-right:auto;margin-left:auto}.environmenttable .cell{padding:.15em .5em}.environmenttable img.iconhelp{padding-right:.3em}.dir-rtl .environmenttable img.iconhelp{padding-right:0;padding-left:.3em}#trustedhosts .generaltable{width:500px;margin-right:auto;margin-left:auto}#trustedhosts .standard{width:auto}#adminsettings legend{display:none}#adminsettings fieldset.error{margin:.2em 0 .5em 0}#adminsettings fieldset.error legend{display:block}.dir-rtl #admin-spelllanguagelist textarea,#page-admin-setting-editorsettingstinymce.dir-rtl .form-textarea textarea{text-align:left;direction:ltr}.adminsettingsflags{float:right}.dir-rtl .adminsettingsflags{float:left}.adminsettingsflags label{margin-right:7px}.dir-rtl .adminsettingsflags label{margin-left:7px}.form-description{clear:right}.dir-rtl .form-description{clear:left}.form-item .form-setting .form-htmlarea{display:inline;width:640px}.form-item .form-setting .form-htmlarea .htmlarea{display:block;width:640px}.form-item .form-setting .form-multicheckbox ul{padding:0;margin:7px 0 0 0;list-style:none}.form-item .form-setting .defaultsnext{display:inline;margin-right:.5em}.dir-rtl .form-item .form-setting .defaultsnext{margin-right:0;margin-left:.5em}.form-item .form-setting .locked-checkbox{display:inline;margin-right:.2em;margin-left:.5em}.dir-rtl .form-item .form-setting .locked-checkbox{display:inline;margin-right:.5em;margin-left:.2em}.form-item .form-setting .form-password .unmask,.form-item .form-setting .form-defaultinfo{display:inline-block}.form-item .pathok,.form-item .patherror{margin-left:.5em}#admin-devicedetectregex table{border:0}#admin-emoticons td input{width:8em}#admin-emoticons td.c0 input{width:4em}#adminthemeselector .selectedtheme td.c0{border:1px solid;border-right-width:0}#adminthemeselector .selectedtheme td.c1{border:1px solid;border-left-width:0}.admin_colourpicker,.admin_colourpicker_preview{display:none}.jsenabled .admin_colourpicker_preview{display:inline}.jsenabled .admin_colourpicker{display:block;width:410px;height:102px;margin-bottom:10px}.admin_colourpicker .loadingicon{margin-left:auto;vertical-align:middle}.admin_colourpicker .colourdialogue{float:left;border:1px solid #000}.admin_colourpicker .previewcolour{margin-left:301px;border:1px solid #000}.admin_colourpicker .currentcolour{margin-left:301px;border:1px solid #000;border-top-width:0}.dir-rtl .form-item .form-setting,.dir-rtl .form-item .form-label,.dir-rtl .form-item .form-description,.dir-rtl.path-admin .roleassigntable p{text-align:right}#page-admin-index #notice .checkforupdates{text-align:center}#plugins-check-info{margin:1em;text-align:center}#plugins-check .displayname .pluginicon{width:16px}#plugins-check .status-new .status{background-color:#dff0d8}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity200 .info.release,#plugins-check .status-upgrade .status,#plugins-check .status-delete .status{background-color:#d9edf7}#plugins-control-panel .extension .source,#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity100 .info.release,#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity150 .info.release,.pluginupdateinfo.maturity100,.pluginupdateinfo.maturity150,#plugins-check .extension .source{background-color:#fcf8e3}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity50 .info.release,.pluginupdateinfo.maturity50,#plugins-check .requires-failed,#plugins-check .missingfromdisk .displayname,#plugins-check .status-missing .status,#plugins-check .status-downgrade .status{background-color:#f2dede}#plugins-control-panel .statusmsg{padding:3px;background-color:#eee;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}#plugins-control-panel .status-missing .pluginname{background-color:#f2dede}#plugins-control-panel .status-missing .statusmsg{color:#b94a48}#plugins-control-panel .status-new .pluginname{background-color:#dff0d8}#plugins-control-panel .status-new .statusmsg{color:#468847}#plugins-control-panel .disabled .availability{background-color:#eee}#plugins-check .standard .source,#plugins-check .status-nodb .status,#plugins-check .status-uptodate .status,#plugins-check .requires-ok{color:#999}#plugins-check .requires ul{margin:0;font-size:10.5px}#plugins-check .status .pluginupdateinfo{padding:5px 10px;margin:10px;background-color:#d9edf7;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}#plugins-check .status .pluginupdateinfo span,#plugins-check .status .pluginupdateinfo a{padding-right:1em}#page-admin-index .upgradepluginsinfo{text-align:center}#page-admin-plugins .checkforupdates{margin:0 auto 1em;text-align:center}#plugins-control-panel .requiredby,#plugins-control-panel .pluginname .componentname{font-size:11.9px;color:#999}#plugins-control-panel .pluginname .componentname{margin-left:22px}#plugins-overview-filter .filter-item,#plugins-overview-panel .info{padding:0 10px}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo .separator,#plugins-check .status .pluginupdateinfo .separator,#page-admin-plugins .separator{border-left:1px dotted #999}#plugins-control-panel .msg td{text-align:center}#plugins-overview-filter,#plugins-overview-panel{margin:1em auto;text-align:center}#plugins-overview-panel .info.updatable{margin-left:10px;font-weight:bold;background-color:#d9edf7;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}#plugins-overview-filter .filter-item.active{font-weight:bold}#plugins-control-panel .displayname img.icon{padding-top:0;padding-bottom:0}#plugins-control-panel .uninstall a{color:#b94a48}#plugins-control-panel .notes .pluginupdateinfo{padding:5px 10px;margin:10px;background-color:#d9edf7;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}#plugins-control-panel .notes .pluginupdateinfo span,#plugins-control-panel .notes .pluginupdateinfo a{padding-right:1em}.dir-rtl #plugins-check .pluginupdateinfo{text-align:center;direction:ltr}.dir-rtl #plugins-check .rootdir,.dir-rtl #plugins-check .requires-ok{text-align:left;direction:ltr}#page-admin-mnet-peers .box.deletedhosts{margin-bottom:1em;font-size:11.9px}#page-admin-mnet-peers .mform .certdetails{background-color:white}#page-admin-mnet-peers .mform .deletedhostinfo{padding:4px;margin-bottom:5px;background-color:#f2dede;border:2px solid #eed3d7}#core-cache-plugin-summaries table,#core-cache-store-summaries table{width:100%}#core-cache-lock-summary table,#core-cache-definition-summaries table,#core-cache-mode-mappings table{margin:0 auto}#core-cache-store-summaries .default-store td{font-style:italic;color:#333}#core-cache-rescan-definitions,#core-cache-mode-mappings .edit-link,#core-cache-lock-summary .new-instance{margin-top:.5em;text-align:center}.tinymcesubplugins img.icon{padding-top:0;padding-bottom:0}#page-admin-roles-assign div.box.generalbox{padding:8px 35px 8px 14px;margin-bottom:20px;color:#c09853;color:#b94a48;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;background-color:#f2dede;border:1px solid #fbeed5;border-color:#eed3d7;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.calendartable{width:100%}.calendartable th,.calendartable td{width:14%;text-align:center;vertical-align:top;border:0}.calendar_event_course{background-color:#ffd3bd}.calendar_event_global{background-color:#d6f8cd}.calendar_event_group{background-color:#fee7ae}.calendar_event_user{background-color:#dce7ec}.path-calendar .calendar-controls .previous,.path-calendar .calendar-controls .next,.path-calendar .calendar-controls .current{display:block;float:left;width:12%}.path-calendar .calendar-controls .previous{text-align:left}.path-calendar .calendar-controls .current{width:76%;text-align:center}.path-calendar .calendar-controls .next{text-align:right}.path-calendar .maincalendar{padding:0;vertical-align:top}.path-calendar .maincalendar .bottom{padding:5px 0 0 0;text-align:center}.path-calendar .maincalendar .heightcontainer{position:relative;height:100%}.path-calendar .maincalendar .calendarmonth{width:98%;margin:10px auto}.path-calendar .maincalendar .calendarmonth ul{margin:0}.path-calendar .maincalendar .calendarmonth ul li{margin-top:4px;list-style-type:none}.path-calendar .maincalendar .calendarmonth td{height:5em}.path-calendar .maincalendar .calendar-controls .previous,.path-calendar .maincalendar .calendar-controls .next{width:30%}.path-calendar .maincalendar .calendar-controls .current{width:39.95%}.path-calendar .maincalendar .controls{width:98%;margin:10px auto}.path-calendar .maincalendar .eventlist .event{width:100%;margin-bottom:10px;border-collapse:separate;border-spacing:0;border-style:solid;border-width:1px}.path-calendar .maincalendar .eventlist .event .topic .name{float:left}.dir-rtl.path-calendar .maincalendar .eventlist .event .topic .name,.path-calendar .maincalendar .eventlist .event .topic .date{float:right}.dir-rtl.path-calendar .maincalendar .eventlist .event .topic .date{float:left}.path-calendar .maincalendar .eventlist .event .subscription,.path-calendar .maincalendar .eventlist .event .course{float:left;clear:left}.dir-rtl.path-calendar .maincalendar .eventlist .event .subscription,.dir-rtl.path-calendar .maincalendar .eventlist .event .course{float:right;clear:right}.path-calendar .maincalendar .eventlist .event .side{width:32px}.path-calendar .maincalendar .eventlist .event .commands a{margin:0 3px}.path-calendar .maincalendar .header{overflow:hidden}.path-calendar .maincalendar .header .buttons{float:right}.dir-rtl.path-calendar .maincalendar .header .buttons{float:left}.path-calendar .filters table{width:100%;border-collapse:separate;border-spacing:2px}#page-calendar-export .indent{padding-left:20px}.path-calendar .cal_courses_flt label{margin-right:.45em}.dir-rtl.path-calendar .cal_courses_flt label{margin-right:0;margin-left:.45em}.block .minicalendar th,.block .minicalendar td{padding:2px;font-size:.8em}.block .minicalendar{max-width:280px;margin-right:auto;margin-left:auto}.block .minicalendar td.weekend{color:#A00}.block .calendar-controls .previous{display:block;float:left;width:12%;text-align:left}.block .calendar-controls .current{display:block;float:left;width:76%;text-align:center}.block .calendar-controls .next{display:block;float:left;width:12%;text-align:right}.block .calendar_filters ul{margin:0;list-style:none}.block .calendar_filters li{margin-bottom:.2em}.block .calendar_filters li span img{padding:0 .2em}.block .calendar_filters .eventname{padding-left:.2em}.dir-rtl .block .calendar_filters .eventname{padding-right:.2em;padding-left:0}.block .content h3.eventskey{margin-top:.5em}@media(min-width:768px){#page-calender-view .container fluid{min-width:1024px}}.section_add_menus{text-align:right}.dir-rtl .section_add_menus{text-align:left}.section_add_menus .horizontal div,.section_add_menus .horizontal form{display:inline}.section_add_menus optgroup{font-style:italic;font-weight:normal}.section_add_menus .urlselect{margin-left:.4em}.dir-rtl .section_add_menus .urlselect{margin-right:.4em;margin-left:0}.section_add_menus .urlselect select{margin-left:.2em}.dir-rtl .section_add_menus .urlselect select{margin-right:.2em;margin-left:0}.section_add_menus .urlselect img.iconhelp{padding:0;margin:0;vertical-align:text-bottom}.site-topic ul.section,.course-content ul.section{margin:1em}.section .activity img.activityicon{margin-right:6px}.dir-rtl .section .activity img.activityicon{margin-right:0;margin-left:6px}.section .activity .activityinstance,.section .activity .activityinstance div{display:inline-block}.editing .section .activity .activityinstance{min-width:40%}.section .activity .activityinstance>a{display:block}.editing_show+.editing_assign,.editing_hide+.editing_assign{margin-left:20px}.section .activity .commands{display:inline;white-space:nowrap}.section .activity.modtype_label .commands{padding-left:22px;margin-left:40%}.section .activity.modtype_label.label{font-weight:normal}.section li.activity{padding:.2em;clear:both}.section .activity .activityinstance .groupinglabel{padding-left:30px}.dir-rtl .section .activity .activityinstance .groupinglabel{padding-right:30px}.section .activity .availabilityinfo,.section .activity .contentafterlink{margin-top:.5em;margin-left:30px}.dir-rtl .section .activity .availabilityinfo,.dir-rtl .section .activity .contentafterlink{margin-right:30px;margin-left:0}.section .activity .contentafterlink p{margin:.5em 0}.editing .section .activity:hover,.editing .section .activity.action-menu-shown{background-color:#eee}.course-content .current{background-color:#d9edf7}.course-content .section-summary{margin-top:5px;list-style:none;border:1px solid #DDD}.course-content .section-summary .section-title{margin:2px 5px 10px 5px}.course-content .section-summary .summarytext{margin:2px 5px 2px 5px}.course-content .section-summary .section-summary-activities .activity-count{display:inline-block;margin:3px;font-size:11.9px;color:#999;white-space:nowrap}.course-content .section-summary .summary{margin-top:5px}.course-content .single-section{margin-top:1em}.course-content .single-section .section-navigation{display:block;padding:.5em;margin-bottom:-0.5em}.course-content .single-section .section-navigation .title{clear:both;font-size:108%;font-weight:bold}.course-content .single-section .section-navigation .mdl-left{float:left;margin-right:1em;font-weight:normal}.dir-rtl .course-content .single-section .section-navigation .mdl-left{float:right}.course-content .single-section .section-navigation .mdl-left .larrow{margin-right:.1em}.course-content .single-section .section-navigation .mdl-right{float:right;margin-left:1em;font-weight:normal}.dir-rtl .course-content .single-section .section-navigation .mdl-right{float:left}.course-content .single-section .section-navigation .mdl-right .rarrow{margin-left:.1em}.course-content .single-section .section-navigation .mdl-bottom{margin-top:0}.course-content ul li.section.main{margin-top:0;border-bottom:2px solid #eee}.course-content ul li.section.hidden{opacity:.5}.course-content ul.topics li.section .content,.course-content ul.weeks li.section .content{padding:0;margin-right:20px;margin-left:20px}.course-content{margin-top:0}.course-content ul.topics li.section{padding-bottom:20px}.course-content ul.topics li.section .summary{margin-left:25px}.path-course-view .completionprogress{margin-left:25px}.path-course-view .completionprogress{position:relative;z-index:1000;display:block;float:right;height:20px}#page-site-index .subscribelink{text-align:right}#page-site-index .headingblock{margin-bottom:9px}.path-course-view a.reduce-sections{padding-left:.2em}.path-course-view .headingblock{margin-bottom:9px}.path-course-view .subscribelink{text-align:right}.path-course-view .unread{margin-left:30px}.dir-rtl.path-course-view .unread{margin-right:30px}.path-course-view .block.drag .header{cursor:move}.path-course-view .completionprogress{text-align:right}.dir-rtl.path-course-view .completionprogress{text-align:left}.path-course-view .single-section .completionprogress{margin-right:5px}.path-course-view .section .summary{line-height:normal}.path-site li.activity>div,.path-course-view li.activity>div{position:relative}.path-course-view li.activity span.autocompletion,.path-course-view li.activity form.togglecompletion{float:right}.path-course-view li.activity form.togglecompletion .ajaxworking{width:16px;height:16px;background:url([[pix:i/ajaxloader]]) no-repeat}.dir-rtl.path-course-view li.activity form.togglecompletion,.dir-rtl.path-course-view li.activity span.autocompletion{float:left}.dir-rtl.path-course-view .completionprogress{float:none}.dir-rtl.path-course-view li.activity form.togglecompletion .ajaxworking{right:-22px}li.section.hidden span.commands a.editing_hide,li.section.hidden span.commands a.editing_show{cursor:default}ul.weeks h3.sectionname{white-space:nowrap}.editing ul.weeks h3.sectionname{white-space:normal}.single-section h3.sectionname{clear:both;text-align:center}.section img.movetarget{width:80px;height:16px}input.titleeditor{width:330px;vertical-align:text-bottom}span.editinstructions{position:absolute;top:0;left:0;z-index:9999;padding:.1em .4em;margin-top:-22px;margin-left:30px;font-size:11.9px;line-height:16px;color:#3a87ad;text-decoration:none;background-color:#d9edf7;border:1px solid #bce8f1;-webkit-box-shadow:2px 2px 5px 1px #ccc;-moz-box-shadow:2px 2px 5px 1px #ccc;box-shadow:2px 2px 5px 1px #ccc}.dir-rtl span.editinstructions{right:32px;left:auto}#dndupload-status{position:absolute;z-index:9999;z-index:0;width:40%;padding:6px;margin:0 30%;color:#3a87ad;text-align:center;background:#d9edf7;border:1px solid #bce8f1;-webkit-border-bottom-right-radius:8px;border-bottom-right-radius:8px;-webkit-border-bottom-left-radius:8px;border-bottom-left-radius:8px;-moz-border-radius-bottomright:8px;-moz-border-radius-bottomleft:8px;-webkit-box-shadow:2px 2px 5px 1px #ccc;-moz-box-shadow:2px 2px 5px 1px #ccc;box-shadow:2px 2px 5px 1px #ccc}.dndupload-preview{padding:.3em;margin-top:.2em;color:#909090;list-style:none;border:1px dashed #909090}.dndupload-preview img.icon{padding:0;vertical-align:text-bottom}.dndupload-progress-outer{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#fff9f9f9',GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.dndupload-progress-inner{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf',endColorstr='#ff0480be',GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.dndupload-hidden{display:none}#page-course-pending .singlebutton,#page-course-index .singlebutton,#page-course-index-category .singlebutton,#page-course-editsection .singlebutton{text-align:center}#page-admin-course-manage #movecourses td img{margin:0 .22em;vertical-align:text-bottom}#page-admin-course-manage #movecourses td img.icon{padding:0}#coursesearch{margin-top:1em;text-align:center}#page-course-pending .pendingcourserequests{margin-bottom:1em}#page-course-pending .pendingcourserequests .singlebutton{display:inline}#page-course-pending .pendingcourserequests .cell{padding:0 5px}#page-course-pending .pendingcourserequests .cell.c6{white-space:nowrap}.coursebox{padding:5px;margin-bottom:15px;border:1px dotted #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.coursebox>.info>.name a{display:block;padding-left:21px;background-image:url([[pix:moodle|i/course]]);background-position:center left;background-repeat:no-repeat}.coursebox.remotehost>.info>.name a{background-image:url([[pix:moodle|i/mnethost]])}.coursebox>.info>.name,.coursebox .content .teachers,.coursebox .content .courseimage,.coursebox .content .coursefile{float:left;width:40%;clear:left}.coursebox>.info>h3.name{margin:5px}.coursebox>.info>.name{padding:0;margin:5px}.coursebox .content .teachers li{padding:0;margin:0;list-style-type:none}.coursebox .enrolmenticons{float:right;padding:3px 0}.coursebox .moreinfo{float:right;padding:3px 0}.coursebox .enrolmenticons img,.coursebox .moreinfo img{margin:0 .2em}.coursebox .content{clear:both}.coursebox .content .summary,.coursebox .content .coursecat{float:right;width:55%}.coursebox .content .coursecat{clear:right;text-align:right}.coursebox.remotecoursebox .remotecourseinfo{float:left;width:40%}.coursebox .content .courseimage img{max-width:100px;max-height:100px}.coursebox .content .coursecat,.coursebox .content .summary,.coursebox .content .courseimage,.coursebox .content .coursefile,.coursebox .content .teachers,.coursebox.remotecoursebox .remotecourseinfo{padding:0;margin:3px 5px}.dir-rtl .coursebox>.info>.name a{padding-right:21px;padding-left:0;background-position:center right}.dir-rtl .coursebox>.info>.name,.dir-rtl .coursebox .teachers,.dir-rtl .coursebox .content .courseimage,.dir-rtl .coursebox .content .coursefile{float:right;clear:right}.dir-rtl .coursebox .enrolmenticons,.dir-rtl .coursebox .moreinfo{float:left}.dir-rtl .coursebox .summary,.dir-rtl .coursebox .coursecat{float:left}.dir-rtl .coursebox .coursecat{clear:left;text-align:left}.coursebox.collapsed{margin-bottom:0}.coursebox.collapsed>.content{display:none}.courses .coursebox.collapsed{padding:3px 0;border:1px solid #eee}.courses .coursebox.even{background-color:#f6f6f6}.courses .coursebox:hover,.course_category_tree .courses>.paging.paging-morelink:hover{background-color:#eee}.course_category_tree .category .numberofcourse{font-size:11.9px}.course_category_tree .controls{visibility:hidden}.course_category_tree .controls div{display:inline;cursor:pointer}.jsenabled .course_category_tree .controls{visibility:visible}.course_category_tree .controls{float:right;margin-bottom:5px;text-align:right}.course_category_tree .controls div{padding-right:2em;font-size:75%}.course_category_tree .category>.info .name{padding:2px 18px;margin:3px;background-image:url([[pix:moodle|t/collapsed_empty]]);background-position:center left;background-repeat:no-repeat}.dir-rtl .course_category_tree .category>.info .name{background-image:url([[pix:moodle|t/collapsed_empty_rtl]]);background-position:center right}.course_category_tree .category.with_children>.info .name{background-image:url([[pix:moodle|t/expanded]])}.course_category_tree .category.with_children.collapsed>.info .name{background-image:url([[pix:moodle|t/collapsed]])}.dir-rtl .course_category_tree .category.with_children.collapsed>.info .name{background-image:url([[pix:moodle|t/collapsed_rtl]])}.course_category_tree .category.collapsed>.content{display:none}.course_category_tree .category>.info{min-height:20px;min-height:0;padding:19px;padding:0;margin:3px 0;margin-bottom:20px;margin-bottom:3px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.course_category_tree .category>.info blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.course_category_tree.frontpage-category-names .category>.info{margin:0;background:0;border:0}.course_category_tree .category>.content{padding-left:16px}.dir-rtl .course_category_tree .category>.content{padding-right:16px;padding-left:0}.course_category_tree .subcategories>.paging,.courses>.paging{padding:5px;margin:0;text-align:center}.courses>.paging.paging-morelink,.course_category_tree .subcategories>.paging.paging-morelink{text-align:left}.course_category_tree .paging.paging-morelink a{font-size:11.9px}.dir-rtl .courses>.paging.paging-morelink,.dir-rtl .course_category_tree .paging.paging-morelink{text-align:right}#page-course-index-category .generalbox.info{padding:5px;margin-bottom:15px;border:1px dotted #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}#page-course-index-category .categorypicker{margin:10px 0 20px;text-align:center}.section .activity .moodle-actionmenu .iconsmall{width:16px;width:1rem;height:16px;height:1rem;max-width:none!important;padding:.3em}.filemanager,.filepicker,.file-picker{font-size:11px}.filemanager a,.file-picker a,.filemanager a:hover,.file-picker a:hover{color:#555;text-decoration:none}.filemanager input[type="text"],.file-picker input[type="text"]{width:265px}.filemanager .fp-license td,.file-picker .fp-setlicense td{max-width:265px}.filemanager .fp-license select,.file-picker .fp-setlicense select{max-width:100%}.fp-content-center{display:table-cell;width:100%;height:100%;vertical-align:middle}.fp-content-hidden{visibility:hidden}.yui3-panel-focused{outline:0}#filesskin .yui3-panel-content{display:inline-block;*display:inline;padding-bottom:20px;background:#f2f2f2;border:1px solid #fff;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;*zoom:1;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}#filesskin .yui3-widget-hd{padding:5px;font-size:12px;letter-spacing:1px;color:#333;text-align:center;text-shadow:1px 1px 1px #fff;background-color:#ebebeb;background-image:-moz-linear-gradient(top,#fff,#ccc);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#ccc));background-image:-webkit-linear-gradient(top,#fff,#ccc);background-image:-o-linear-gradient(top,#fff,#ccc);background-image:linear-gradient(to bottom,#fff,#ccc);background-repeat:repeat-x;border-bottom:1px solid #bbb;-webkit-border-radius:10px 10px 0 0;-moz-border-radius:10px 10px 0 0;border-radius:10px 10px 0 0;filter:dropshadow(color=#ffffff,offx=1,offy=1);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffcccccc',GradientType=0)}.fp-panel-button{display:inline-block;*display:inline;padding:3px 20px 2px 20px;margin:10px;text-align:center;background:#fff;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;*zoom:1;-webkit-box-shadow:2px 2px 3px .1px #999;-moz-box-shadow:2px 2px 3px .1px #999;box-shadow:2px 2px 3px .1px #999}.filepicker .moodle-dialogue-wrap .moodle-dialogue-bd{padding:0}#filesskin .file-picker.fp-generallayout{position:relative;width:859px;background:#fff;border:1px solid #ccc;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.file-picker .fp-repo-area{display:inline-block;*display:inline;float:left;width:180px;height:525px;overflow:auto;border-right:1px solid #bbb;*zoom:1}.dir-rtl .file-picker .fp-repo-area{float:right;border-right:0;border-left:1px solid #bbb}.file-picker .fp-repo-items{float:left;width:693px}.dir-rtl .file-picker .fp-repo-items{float:right}.file-picker .fp-navbar{min-height:22px;padding:5px 8px;background:#f2f2f2;border-bottom:1px solid #bbb}.file-picker .fp-content{height:468px;overflow:auto;clear:both;background:#fff}.filepicker.moodle-dialogue-fullscreen .file-picker .fp-content{width:100%;height:100%}.dir-rtl .file-picker .fp-repo-items{margin-right:181px}.file-picker .fp-content-loading{display:table;width:100%;height:100%;text-align:center}.file-picker .fp-content .fp-object-container{width:98%;height:98%}.dir-rtl .file-picker .fp-list{text-align:right}.dir-rtl .file-picker .fp-toolbar{padding:0}.dir-rtl .file-picker .fp-list{text-align:right}.dir-rtl .file-picker .fp-repo-name{display:inline}.dir-rtl .file-picker .fp-pathbar{display:block;text-align:right;border-top:0}.dir-rtl .file-picker div.bd{text-align:right}.dir-rtl #filemenu .yuimenuitemlabel{text-align:right}.dir-rtl .filepicker .yui-layout-unit-left{left:500px}.dir-rtl .filepicker .yui-layout-unit-center{left:0}.dir-rtl .filemanager-toolbar a{padding:0}.file-picker .fp-list{float:left;width:100%;padding:0;margin:0;list-style-type:none}.dir-rtl .file-picker .fp-list{float:left;text-align:right}.file-picker .fp-list .fp-repo a{display:block;padding:.5em .7em}.file-picker .fp-list .fp-repo.active{background:#f2f2f2}.file-picker .fp-list .fp-repo-icon{padding:0 7px 0 5px}.fp-toolbar{display:table-row;float:left;max-width:70%;line-height:22px}.dir-rtl .fp-toolbar{float:right}.fp-toolbar.empty{display:none}.fp-toolbar .disabled{display:none}.fp-toolbar div{display:inline-block;*display:inline;padding:0 2px;padding-right:10px;*zoom:1}.dir-rtl .fp-toolbar div{width:100px;padding-right:0}.fp-toolbar img{margin-right:5px;vertical-align:-15%}.fp-toolbar .fp-tb-search{width:228px;height:14px}.fp-toolbar .fp-tb-search input{width:200px;height:16px;padding:2px 6px 1px 20px;background:#fff url('[[pix:a/search]]') no-repeat 3px 3px;border:1px solid #bbb}.fp-viewbar{float:right;width:69px;height:22px;margin-right:8px}.dir-rtl .fp-toolbar img{vertical-align:-35%}.dir-rtl .fp-viewbar{float:left;width:100px}.fp-vb-icons{display:inline-block;*display:inline;width:22px;height:22px;background:url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0;*zoom:1}.dir-rtl .fp-vb-icons{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0}.fp-vb-icons.checked{background:url('[[pix:theme|fp/view_icon_selected]]')}.dir-rtl .fp-vb-icons.checked{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_icon_selected]]')}.fp-viewbar.disabled .fp-vb-icons{background:url('[[pix:theme|fp/view_icon_inactive]]')}.fp-vb-details{display:inline-block;*display:inline;width:23px;height:22px;margin-left:-4px;background:url('[[pix:theme|fp/view_list_active]]') no-repeat 0 0;*zoom:1}.dir-rtl .fp-vb-details{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_list_active]]') no-repeat 0 0}.fp-vb-details.checked{background:url('[[pix:theme|fp/view_list_selected]]')}.dir-rtl .fp-vb-details.checked{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_list_selected]]')}.fp-viewbar.disabled .fp-vb-details{background:url('[[pix:theme|fp/view_list_inactive]]')}.fp-vb-tree{display:inline-block;*display:inline;width:23px;height:22px;margin-left:-4px;background:url('[[pix:theme|fp/view_tree_active]]') no-repeat 0 0;*zoom:1}.dir-rtl .fp-vb-tree{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_tree_active]]') no-repeat 0 0}.fp-vb-tree.checked{background:url('[[pix:theme|fp/view_tree_selected]]')}.dir-rtl .fp-vb-tree.checked{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_tree_selected]]')}.fp-viewbar.disabled .fp-vb-tree{background:url('[[pix:theme|fp/view_tree_inactive]]')}.file-picker .fp-clear-left{clear:left}.dir-rtl .filemanager-toolbar .fp-vb-icons a:hover{background:url('[[pix:theme|fp/view_icon_selected]]')}.dir-rtl .filemanager-toolbar .fp-vb-icons.checked a:hover{background:url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0}.dir-rtl .fp-vb-details a:hover{background:0;border:20px solid black}.dir-rtl .fp-vb-details.checked a:hover{background:0;border:40px solid black}.dir-rtl .fp-vb-tree a:hover{background:0;border:30px solid black}.dir-rtl .fp-vb-tree.checked a:hover{background:0;border:50px solid black}.file-picker .fp-pathbar{display:table-row}.fp-pathbar.empty{display:none}.fp-pathbar .fp-path-folder{width:27px;height:12px;margin-left:4px;background:url('[[pix:theme|fp/path_folder]]') no-repeat 0 0}.dir-rtl .fp-pathbar .fp-path-folder{width:auto;height:12px;margin-left:4px;background:url('[[pix:theme|fp/path_folder_rtl]]') no-repeat right top}.dir-rtl .fp-pathbar span{display:inline-block;*display:inline;float:right;margin-left:32px;*zoom:1}.fp-pathbar .fp-path-folder-name{margin-left:32px;line-height:20px}.dir-rtl .fp-pathbar .fp-path-folder-name{margin-right:32px;line-height:20px}.fp-iconview .fp-file{position:relative;float:left;margin:10px 10px 35px;text-align:center}.fp-iconview .fp-thumbnail{display:block;min-width:110px;min-height:110px;line-height:110px;text-align:center;border:1px solid #fff}.fp-iconview .fp-thumbnail img{padding:3px;vertical-align:middle;border:1px solid #ddd;-webkit-box-shadow:1px 1px 2px 0 #ccc;-moz-box-shadow:1px 1px 2px 0 #ccc;box-shadow:1px 1px 2px 0 #ccc}.fp-iconview .fp-thumbnail:hover{background:#fff;border:1px solid #ddd;-webkit-box-shadow:inset 0 0 10px 0 #ccc;-moz-box-shadow:inset 0 0 10px 0 #ccc;box-shadow:inset 0 0 10px 0 #ccc}.fp-iconview .fp-filename-field{position:absolute;height:33px;overflow:hidden;word-wrap:break-word}.fp-iconview .fp-filename-field:hover{z-index:1000;overflow:visible}.fp-iconview .fp-filename-field .fp-filename{min-width:112px;padding-top:5px;padding-bottom:12px;background:#fff}.dir-rtl .fp-iconview .fp-file{float:right}.file-picker .yui3-datatable table{width:100%;border:0 solid #bbb}#filesskin .file-picker .yui3-datatable-header{color:#555;background:#fff;border-bottom:1px solid #ccc;border-left:0 solid #fff}#filesskin .file-picker .yui3-datatable-odd .yui3-datatable-cell{background-color:#f6f6f6;border-left:0 solid #f6f6f6}#filesskin .file-picker .yui3-datatable-even .yui3-datatable-cell{background-color:#fff;border-left:0 solid #fff}.dir-rtl .file-picker .yui3-datatable-header{text-align:right}.file-picker .ygtvtn,.filemanager .ygtvtn{width:17px;height:22px;background:url('[[pix:moodle|y/tn]]') 0 0 no-repeat}.dir-rtl .filemanager .ygtvtn,.dir-rtl .file-picker .ygtvtn{width:17px;height:22px;background:url('[[pix:moodle|y/tn_rtl]]') 0 0 no-repeat}.file-picker .ygtvtm,.filemanager .ygtvtm{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/tm]]') 0 10px no-repeat}.file-picker .ygtvtmh,.filemanager .ygtvtmh{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/tm]]') 0 10px no-repeat}.file-picker .ygtvtp,.filemanager .ygtvtp{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/tp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvtp,.dir-rtl .filemanager .ygtvtp{background:url('[[pix:moodle|y/tp_rtl]]') 0 10px no-repeat}.file-picker .ygtvtph,.filemanager .ygtvtph{width:13px;height:22px;cursor:pointer;background:url('[[pix:moodle|y/tp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvtph,.dir-rtl .filemanager .ygtvtph{background:url('[[pix:moodle|y/tp_rtl]]') 0 10px no-repeat}.file-picker .ygtvln,.filemanager .ygtvln{width:17px;height:22px;background:url('[[pix:moodle|y/ln]]') 0 0 no-repeat}.dir-rtl .file-picker .ygtvln,.dir-rtl .filemanager .ygtvln{background:url('[[pix:moodle|y/ln_rtl]]') 0 0 no-repeat}.file-picker .ygtvlm,.filemanager .ygtvlm{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lm]]') 0 10px no-repeat}.file-picker .ygtvlmh,.filemanager .ygtvlmh{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lm]]') 0 10px no-repeat}.file-picker .ygtvlp,.filemanager .ygtvlp{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvlp,.dir-rtl .filemanager .ygtvlp{background:url('[[pix:moodle|y/lp_rtl]]') 0 10px no-repeat}.file-picker .ygtvlph,.filemanager .ygtvlph{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvlph,.dir-rtl .filemanager .ygtvlph{background:url('[[pix:moodle|y/lp_rtl]]') 0 10px no-repeat}.file-picker .ygtvloading,.filemanager .ygtvloading{width:16px;height:22px;background:transparent url('[[pix:moodle|y/loading]]') 0 0 no-repeat}.file-picker .ygtvdepthcell,.filemanager .ygtvdepthcell{width:17px;height:32px;background:url('[[pix:moodle|y/vline]]') 0 0 no-repeat}.file-picker .ygtvblankdepthcell,.filemanager .ygtvblankdepthcell{width:17px;height:22px}a.ygtvspacer:hover{color:transparent;text-decoration:none}.ygtvlabel,.ygtvlabel:link,.ygtvlabel:visited,.ygtvlabel:hover{margin-left:2px;text-decoration:none;cursor:pointer;background-color:transparent}.file-picker .ygtvfocus,.filemanager .ygtvfocus{background-color:#eee}.fp-filename-icon{position:relative;display:block;margin-top:10px}.fp-icon{float:left;width:24px;height:24px;margin-top:-7px;margin-right:10px;line-height:24px;text-align:center}.dir-rtl .fp-icon{float:right;margin-right:0;margin-left:10px}.fp-icon img{max-width:24px;max-height:24px;vertical-align:middle}.fp-filename{padding-right:10px}.dir-rtl .fp-filename{padding-right:0;padding-left:10px}.file-picker .fp-login-form{display:table;width:100%;height:100%}.file-picker .fp-login-form table{margin:0 auto}.file-picker .fp-login-form p{margin-top:3em;text-align:center}.file-picker .fp-login-form .fp-login-input label{display:block;text-align:right}.file-picker .fp-login-form .fp-login-input .input{text-align:left}.file-picker .fp-login-form input[type="checkbox"]{width:15px;height:15px}.file-picker .fp-upload-form{display:table;width:100%;height:100%}.file-picker .fp-upload-form table{margin:0 auto}.file-picker.fp-dlg{text-align:center}.file-picker.fp-dlg .fp-dlg-text{padding:30px 20px 10px;font-size:12px}.file-picker.fp-dlg .fp-dlg-buttons{margin:0 20px}.file-picker.fp-msg{text-align:center}.file-picker.fp-msg .fp-msg-text{max-width:500px;max-height:300px;min-width:200px;padding:40px 20px 10px 20px;overflow:auto;font-size:12px}.file-picker.fp-msg.fp-msg-error .fp-msg-text{padding:40px 20px 10px 20px;font-size:12px}.file-picker .fp-content-error{display:table;width:100%;height:100%;text-align:center}.file-picker .fp-content-error .fp-error{display:table-cell;width:100%;height:100%;padding:40px 20px 10px 20px;font-size:12px;vertical-align:middle}.file-picker .fp-nextpage{clear:both}.file-picker .fp-nextpage .fp-nextpage-loading{display:none}.file-picker .fp-nextpage.loading .fp-nextpage-link{display:none}.file-picker .fp-nextpage.loading .fp-nextpage-loading{display:block;height:100px;padding-top:50px;text-align:center}.fp-select form{padding:20px 20px 0}.fp-select .fp-select-loading{margin-top:20px;text-align:center}.fp-select .fp-hr{width:auto;height:1px;margin:10px 0;clear:both;background-color:#fff;border-bottom:1px solid #bbb}.fp-select table{padding:0 0 10px}.fp-select table .mdl-right{min-width:84px}.fp-select .fp-reflist .mdl-right{vertical-align:top}.fp-select .fp-select-buttons{float:right}.fp-select .fp-info{display:block;padding:1px 20px 0;clear:both}.fp-select .fp-thumbnail{float:left;min-width:110px;min-height:110px;margin:10px 20px 0 0;line-height:110px;text-align:center;background:#fff;border:1px solid #ddd;-webkit-box-shadow:inset 0 0 10px 0 #ccc;-moz-box-shadow:inset 0 0 10px 0 #ccc;box-shadow:inset 0 0 10px 0 #ccc}.fp-select .fp-thumbnail img{padding:3px;margin:10px;vertical-align:middle;border:1px solid #ddd}.fp-select .fp-fileinfo{display:inline-block;*display:inline;margin-top:10px;*zoom:1}.file-picker.fp-select .fp-fileinfo{max-width:240px}.fp-select .fp-fileinfo div{padding-bottom:5px}.file-picker.fp-select .uneditable{display:none}.file-picker.fp-select .fp-select-loading{display:none}.file-picker.fp-select.loading .fp-select-loading{display:block}.file-picker.fp-select.loading form{display:none}.fp-select .fp-dimensions.fp-unknown{display:none}.filemanager-loading{display:none}.jsenabled .filemanager-loading{display:block;margin-top:100px}.filemanager.fm-loading .filemanager-toolbar,.filemanager.fm-loading .fp-pathbar,.filemanager.fm-loading .filemanager-container,.filemanager.fm-loaded .filemanager-loading,.filemanager.fm-maxfiles .fp-btn-add,.filemanager.fm-maxfiles .dndupload-message,.filemanager.fm-noitems .fp-btn-download,.filemanager .fm-empty-container,.filemanager.fm-noitems .filemanager-container .fp-content{display:none}.filemanager .filemanager-updating{display:none;text-align:center}.filemanager.fm-updating .filemanager-updating{display:block;margin-top:37px}.filemanager.fm-updating .fm-content-wrapper,.filemanager.fm-nomkdir .fp-btn-mkdir,.fitem.disabled .filemanager .filemanager-toolbar,.fitem.disabled .filemanager .fp-pathbar,.fitem.disabled .filemanager .fp-restrictions,.fitem.disabled .filemanager .fm-content-wrapper{display:none}.fp-restrictions{text-align:right}.filemanager .fp-navbar{background:#f2f2f2;border:1px solid #bbb;border-bottom:0}.filemanager-toolbar{min-height:22px;padding:5px 8px;overflow:hidden}.fp-pathbar{min-height:20px;padding:5px 8px 1px;border-top:1px solid #bbb}.filemanager .fp-pathbar.empty{display:none}.filepicker-filelist,.filemanager-container{position:relative;min-height:140px;overflow:auto;clear:both;background:#fff;border:1px solid #bbb}.filemanager .fp-content{max-height:472px;min-height:157px;overflow:auto}.filemanager-container,.filepicker-filelist{overflow:hidden}.fitem.disabled .filepicker-filelist,.fitem.disabled .filemanager-container{background-color:#ebebe4}.fitem.disabled .fp-btn-choose{color:#999}.fitem.disabled .filepicker-filelist .filepicker-filename{display:none}.fp-iconview .fp-reficons1{position:absolute;top:0;left:0;z-index:1000;width:100%;height:100%}.fp-iconview .fp-reficons2{position:absolute;top:0;left:0;z-index:1001;width:100%;height:100%}.fp-iconview .fp-file.fp-hasreferences .fp-reficons1{background:url('[[pix:theme|fp/link]]') no-repeat;background-position:bottom right}.fp-iconview .fp-file.fp-isreference .fp-reficons2{background:url('[[pix:theme|fp/alias]]') no-repeat;background-position:bottom left}.filemanager .fp-iconview .fp-file.fp-originalmissing .fp-thumbnail img{display:none}.filemanager .fp-iconview .fp-file.fp-originalmissing .fp-thumbnail{background:url([[pix:s/dead]]) no-repeat;background-position:center center}.filemanager .yui3-datatable table{width:100%;border:0 solid #bbb}.filemanager .yui3-datatable-header{color:#555!important;background:#fff!important;border-bottom:1px solid #ccc!important;border-left:0 solid #fff!important}.filemanager .yui3-datatable-odd .yui3-datatable-cell{background-color:#f6f6f6!important;border-left:0 solid #f6f6f6}.filemanager .yui3-datatable-even .yui3-datatable-cell{background-color:#fff!important;border-left:0 solid #fff}.filemanager .fp-filename-icon.fp-hasreferences .fp-reficons1{position:absolute;top:8px;left:17px;z-index:1000;width:100%;height:100%;background:url('[[pix:theme|fp/link_sm]]') no-repeat 0 0}.filemanager .fp-filename-icon.fp-isreference .fp-reficons2{position:absolute;top:9px;left:-6px;z-index:1001;width:100%;height:100%;background:url('[[pix:theme|fp/alias_sm]]') no-repeat 0 0}.filemanager .fp-contextmenu{display:none}.filemanager .fp-iconview .fp-folder.fp-hascontextmenu .fp-contextmenu{position:absolute;right:7px;bottom:5px;display:block}.filemanager .fp-treeview .fp-folder.fp-hascontextmenu .fp-contextmenu,.filemanager .fp-tableview .fp-folder.fp-hascontextmenu .fp-contextmenu{position:absolute;top:6px;left:14px;display:inline;margin-right:-20px}.dir-rtl .filemanager .fp-iconview .fp-folder.fp-hascontextmenu .fp-contextmenu{right:inherit;left:7px}.dir-rtl .filemanager .fp-treeview .fp-folder.fp-hascontextmenu .fp-contextmenu,.dir-rtl .filemanager .fp-tableview .fp-folder.fp-hascontextmenu .fp-contextmenu{right:16px;left:inherit;margin-right:0}.filepicker-filelist .filepicker-container,.filemanager.fm-noitems .fm-empty-container{position:absolute;top:10px;right:10px;bottom:10px;left:10px;display:block;padding-top:85px;text-align:center;border:2px dashed #bbb}.filepicker-filelist .dndupload-target,.filemanager-container .dndupload-target{position:absolute;top:10px;right:10px;bottom:10px;left:10px;padding-top:85px;text-align:center;background:#fff;border:2px dashed #fb7979;-webkit-box-shadow:0 0 0 10px #fff;-moz-box-shadow:0 0 0 10px #fff;box-shadow:0 0 0 10px #fff}.filepicker-filelist.dndupload-over .dndupload-target,.filemanager-container.dndupload-over .dndupload-target{position:absolute;top:10px;right:10px;bottom:10px;left:10px;padding-top:85px;text-align:center;background:#fff;border:2px dashed #6c8cd3}.dndupload-message{display:none}.dndsupported .dndupload-message{display:inline}.dnduploadnotsupported-message{display:none}.dndnotsupported .dnduploadnotsupported-message{display:inline}.dndupload-target{display:none}.dndsupported .dndupload-ready .dndupload-target{display:block}.dndupload-uploadinprogress{display:none;text-align:center}.dndupload-uploading .dndupload-uploadinprogress{display:block}.dndupload-arrow{position:absolute;top:5px;width:100%;height:80px;margin-left:-28px;background:url([[pix:theme|fp/dnd_arrow]]) center no-repeat}.fitem.disabled .filepicker-container,.fitem.disabled .fm-empty-container{display:none}.dndupload-progressbars{display:none;padding:10px}.dndupload-inprogress .dndupload-progressbars{display:block}.dndupload-inprogress .fp-content{display:none}.filemanager.fm-noitems .dndupload-inprogress .fm-empty-container{display:none}.filepicker-filelist.dndupload-inprogress .filepicker-container{display:none}.filepicker-filelist.dndupload-inprogress a{display:none}.filemanager.fp-select .fp-select-loading{display:none}.filemanager.fp-select.loading .fp-select-loading{display:block}.filemanager.fp-select.loading form{display:none}.filemanager.fp-select.fp-folder .fp-license,.filemanager.fp-select.fp-folder .fp-author,.filemanager.fp-select.fp-file .fp-file-unzip,.filemanager.fp-select.fp-folder .fp-file-unzip,.filemanager.fp-select.fp-file .fp-file-zip,.filemanager.fp-select.fp-zip .fp-file-zip{display:none}.filemanager.fp-select .fp-file-setmain{display:none}.filemanager.fp-select.fp-cansetmain .fp-file-setmain{display:inline-block;*display:inline;*zoom:1}.filemanager .fp-mainfile .fp-filename{font-weight:bold}.filemanager.fp-select.fp-folder .fp-file-download{display:none}.fm-operation{font-weight:bold}.filemanager.fp-select .fp-original.fp-unknown,.filemanager.fp-select .fp-original .fp-originloading{display:none}.filemanager.fp-select .fp-original.fp-loading .fp-originloading{display:inline}.filemanager.fp-select .fp-reflist.fp-unknown,.filemanager.fp-select .fp-reflist .fp-reflistloading{display:none}.filemanager.fp-select .fp-refcount{max-width:265px}.filemanager.fp-select .fp-reflist.fp-loading .fp-reflistloading{display:inline}.filemanager.fp-select .fp-reflist .fp-value{max-width:265px;max-height:75px;padding:8px 7px;margin:0;overflow:auto;background:#f9f9f9;border:1px solid #bbb}.filemanager.fp-select .fp-reflist .fp-value li{padding-bottom:7px}.filemanager.fp-mkdir-dlg{text-align:center}.filemanager.fp-mkdir-dlg .fp-mkdir-dlg-text{margin:20px;text-align:left}.dir-rtl .filemanager .fp-mkdir-dlg p{text-align:right}.filemanager.fp-dlg{text-align:center}.filemanager.fp-dlg .fp-dlg-text{max-width:340px;max-height:300px;min-width:200px;padding:0 10px;margin:40px 20px 20px;overflow:auto;font-size:12px;line-height:22px}.file-picker div.bd{text-align:left}.dir-rtl .file-picker div.bd,.dir-rtl .file-picker .fp-pathbar,.dir-rtl .file-picker .fp-list,.dir-rtl #filemenu .yuimenuitemlabel,.dir-rtl .filemanager-container .yui3-skin-sam .yui3-datatable-header{text-align:right}.dir-rtl .filepicker .yui-layout-unit-left{left:500px}.dir-rtl .filepicker .yui-layout-unit-center{left:0}.message-discussion-noframes h1{font-size:1em}.message-discussion-noframes #userinfo .commands,.message .noframesjslink,.message .link{font-size:11.9px}.message .heading{font-size:1em;font-weight:bold}.message .author{font-weight:bold}.message .time{font-style:italic}#page-message-user .commands span{font-size:.7em}#page-message-user .name{font-size:1.1em;font-weight:bold}table.message_search_results td{border-color:#ddd}.message .time,.message.me .author{color:#999}.message.other .author{color:#88c}#page-message-messages{padding:10px}#page-message-send .notifysuccess{padding:1px}#page-message-send td.fixeditor{text-align:center}.message .note{padding:10px}table.message .searchresults td{padding:5px}.message .contactselector{float:left;width:24%}.message .contactselector .contact{text-align:left}.message .contactselector .messageselecteduser{font-weight:bold}.message .contactselector .paging{position:relative;z-index:1}.message .messagearea{float:right;width:74%;min-height:200px;padding-left:1%;border-left:1px solid #d3d3d3}.message .messagearea .messagehistorytype{padding-bottom:20px;clear:both}.message .messagearea .messagehistory .message_user_pictures{margin-right:auto;margin-left:auto}.message .messagearea .messagehistory .message_user_pictures #user1{width:200px;vertical-align:top}.message .messagearea .messagehistory .message_user_pictures #user2{width:200px;vertical-align:top}.message .messagearea .messagehistory .message_user_pictures .useractionlinks{font-size:.9em}.message .messagearea .messagehistory .heading{width:100%;clear:both}.message .messagearea .messagehistory .left{float:left;width:50%;padding-bottom:10px;clear:both}.message .messagearea .messagehistory .right{float:right;width:50%;padding-bottom:10px;clear:both}.message .messagearea .messagehistory .notification{padding:10px;margin-top:5px;background-color:#eee}.message .messagearea .messagesend{padding-top:20px;clear:both}.message .messagearea .messagesend .messagesendbox{width:100%}.message .messagearea .messagesend fieldset{padding:0;margin:0}.message .messagearea .messagerecent{width:100%;text-align:left}.message .messagearea .messagerecent .singlemessage{padding:10px;border-bottom:1px solid #d3d3d3}.message .messagearea .messagerecent .singlemessage .otheruser span{padding:5px}.message .messagearea .messagerecent .singlemessage .messagedate{float:right}.message .hiddenelement{display:none}.message .visible{display:inline}.message #usergroupselector.fieldset,.message #viewing{width:100%}.messagesearchresults{margin-bottom:40px}.messagesearchresults td{padding:0 10px 0 20px}.messagesearchresults td span{white-space:nowrap}.messagesearchresults td img.userpicture{padding-right:.45em;vertical-align:text-bottom}.dir-rtl .messagesearchresults td img.userpicture{padding-right:0;padding-left:.45em}.messagesearchresults td span img{padding:0 0 0 .45em;vertical-align:text-bottom}.dir-rtl .messagesearchresults td span img{padding:0 .45em 0 0}#newmessageoverlay{position:fixed;right:0;bottom:0;padding:20px;background-color:#d3d3d3;border:1px solid black}#newmessageoverlay #usermessage{padding:10px}.questionbank h2{margin-top:0}.questioncategories h3{margin-top:0}#chooseqtypebox{margin-top:1em}#chooseqtype h3{margin:0 0 .3em}#chooseqtype .instruction{display:none}#chooseqtype .fakeqtypes{border-top:1px solid silver}#chooseqtype .qtypeoption{margin-bottom:.5em}#chooseqtype label{display:block}#chooseqtype .qtypename img{padding:0 .3em}#chooseqtype .qtypename{display:inline-table;width:16em}#chooseqtype .qtypesummary{display:block;margin:0 2em}#chooseqtype .submitbuttons{margin:.7em 0;text-align:center}#qtypechoicecontainer{display:none}#qtypechoicecontainer_c.yui-panel-container.shadow .underlay{background:0}#qtypechoicecontainer.yui-panel .hd{letter-spacing:1px;color:#333;text-shadow:1px 1px 1px #fff;background-color:#ebebeb;background-image:-moz-linear-gradient(top,#fff,#ccc);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#ccc));background-image:-webkit-linear-gradient(top,#fff,#ccc);background-image:-o-linear-gradient(top,#fff,#ccc);background-image:linear-gradient(to bottom,#fff,#ccc);background-repeat:repeat-x;border:1px solid #ccc;border-bottom:1px solid #bbb;-webkit-border-top-right-radius:10px;border-top-right-radius:10px;-webkit-border-top-left-radius:10px;border-top-left-radius:10px;-moz-border-radius-topright:10px;-moz-border-radius-topleft:10px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffcccccc',GradientType=0)}#qtypechoicecontainer{font-size:12px;color:#333;background:#f2f2f2;border:1px solid #ccc;border-top:0 none;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}#chooseqtype{width:40em}#chooseqtypehead h3{margin:0;font-weight:normal}#chooseqtype .qtypes{position:relative;padding:.24em 0;border-bottom:1px solid #bbb}#chooseqtype .qtypeoption{padding:.3em .3em .3em 1.6em;margin-bottom:0}#chooseqtype .qtypeoption img{padding-right:.5em;padding-left:1em;vertical-align:text-bottom}#chooseqtype .selected{background-color:#fff;-webkit-box-shadow:0 0 10px 0 #ccc;-moz-box-shadow:0 0 10px 0 #ccc;box-shadow:0 0 10px 0 #ccc}#chooseqtype .instruction,#chooseqtype .qtypesummary{position:absolute;top:0;right:0;bottom:0;left:60%;display:none;padding:1.5em 1.6em;margin:0;overflow-y:auto;background-color:#fff}#chooseqtype .instruction,#chooseqtype .selected .qtypesummary{display:block}#categoryquestions{margin:0}#categoryquestions td,#categoryquestions th{padding:0 .2em}#categoryquestions th{font-weight:normal;text-align:left}#categoryquestions .checkbox{padding-left:20px}.dir-rtl #categoryquestions th{text-align:right}.questionbank .singleselect{margin:0}#combinedfeedbackhdr div.fhtmleditor{padding:0}#combinedfeedbackhdr div.fcheckbox{margin-bottom:1em}#multitriesheader div.fitem_feditor{margin-top:1em}#multitriesheader div.fitem_fgroup{margin-bottom:1em}#multitriesheader div.fitem_fgroup fieldset.felement label{margin-right:.3em;margin-left:.3em}body.path-question-type .fitem_fgroup .accesshide{position:static;left:0;padding-right:.3em;font:inherit}.que{margin:0 auto 1.8em auto;clear:left;text-align:left}.dir-rtl .que{text-align:right}.que .info{float:left;width:7em;padding:.5em;margin-bottom:1.8em;background-color:#eee;border:1px solid #dcdcdc;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.que h2.no{margin:0;font-size:.8em;line-height:1}.que span.qno{font-size:1.5em;font-weight:bold}.que .info>div{margin-top:.7em;font-size:.8em}.que .info .questionflag.editable{cursor:pointer}.que .info .editquestion img,.que .info .questionflag img,.que .info .questionflag input{vertical-align:bottom}.que .content{margin:0 0 0 8.5em}.que .formulation,.que .outcome,.que .comment{padding:8px 35px 8px 14px;margin-bottom:20px;color:#c09853;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.que .formulation{color:#3a87ad;color:#333;background-color:#d9edf7;border-color:#bce8f1}.formulation input[type="text"],.formulation select{width:auto}.path-mod-quiz input[size]{width:auto}.que .comment{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.que .history{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.que .history blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.que .ablock{margin:.7em 0 .3em 0}.que .im-controls{margin-top:.5em;text-align:left}.dir-rtl .que .im-controls{text-align:right}.que .specificfeedback,.que .generalfeedback,.que .rightanswer,.que .im-feedback,.que .feedback,.que p{margin:0 0 .5em}.que .qtext{margin-bottom:1.5em}.que .correctness{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.que .correctness:empty{display:none}.que .correctness-important{background-color:#b94a48}.que .correctness-important[href]{background-color:#953b39}.que .correctness-warning{background-color:#f89406}.que .correctness-warning[href]{background-color:#c67605}.que .correctness-success{background-color:#468847}.que .correctness-success[href]{background-color:#356635}.que .correctness-info{background-color:#3a87ad}.que .correctness-info[href]{background-color:#2d6987}.que .correctness-inverse{background-color:#333}.que .correctness-inverse[href]{background-color:#1a1a1a}.que .correctness.correct{background-color:#468847}.que .correctness.partiallycorrect{background-color:#f89406}.que .correctness.notanswered,.que .correctness.incorrect{background-color:#b94a48}.que .validationerror{color:#b94a48}.formulation .correct{background-color:#dff0d8}.formulation .partiallycorrect{background-color:#fcf8e3}.formulation .incorrect{background-color:#f2dede}.formulation select.correct,.formulation input.correct{color:#468847;background-color:#dff0d8;border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.correct:focus,.formulation input.correct:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.formulation select.partiallycorrect,.formulation input.partiallycorrect{color:#c09853;background-color:#fcf8e3;border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.partiallycorrect:focus,.formulation input.partiallycorrect:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.formulation select.incorrect,.formulation input.incorrect{color:#b94a48;background-color:#f2dede;border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.incorrect:focus,.formulation input.incorrect:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.que .grading,.que .comment,.que .commentlink,.que .history{margin-top:.5em}.que .history h3{margin:0 0 .2em;font-size:1em}.que .history table{width:100%;margin:0}.que .history .current{font-weight:bold}.que .questioncorrectnessicon{vertical-align:text-bottom}.que input.questionflagimage{padding-right:3px}.dir-rtl .que input.questionflagimage{padding-right:0;padding-left:3px}.importerror{margin-top:10px;border-bottom:1px solid #555}.mform .que.comment .fitemtitle{width:20%}#page-question-preview #techinfo{margin:1em 0}.dir-rtl #chooseqtype .instruction,.dir-rtl #chooseqtype .qtypesummary{right:60%;left:0;border-right:1px solid grey;border-left:0}#page-mod-quiz-edit .questionbankwindow div.header{padding:3px;padding:2px 10px 2px 10px;margin:0 -10px 0 -10px;color:#444;text-shadow:none;background:transparent;-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}#page-mod-quiz-edit .questionbankwindow div.header a:link,#page-mod-quiz-edit .questionbankwindow div.header a:visited{color:#08c}#page-mod-quiz-edit .questionbankwindow div.header a:hover{color:#005580}#page-mod-quiz-edit .questionbankwindow div.header .title{color:#333}#page-mod-quiz-edit div.container div.generalbox{padding:1.5em;background-color:transparent}#page-mod-quiz-edit .categoryinfo{background-color:#fff;border-bottom:0}#page-mod-quiz-edit div.questionbank .categoryquestionscontainer,#page-mod-quiz-edit div.questionbank .categorysortopotionscontainer,#page-mod-quiz-edit div.questionbank .categorypagingbarcontainer,#page-mod-quiz-edit div.questionbank .categoryselectallcontainer{padding:0 0 1.5em 0}#page-mod-quiz-edit div.questionbank .categorypagingbarcontainer{padding:1em;margin:0 -1.2em;background-color:transparent;border-top:0;border-bottom:0}#page-mod-quiz-edit div.questionbank .categoryquestionscontainer{margin:0 -1.2em -1em -1.2em}#page-mod-quiz-edit div.question div.content div.questioncontrols{background-color:#fff}#page-mod-quiz-edit div.question div.content div.points{padding-bottom:.5em;margin-top:-0.5em;background-color:#fff;border:0}#page-mod-quiz-edit div.question div.content div.points label{display:inline-block}#page-mod-quiz-edit div.quizpage .pagecontent .pagestatus{background-color:#fff}#page-mod-quiz-edit .quizpagedelete,#page-mod-quiz-edit .quizpagedelete img{background-color:transparent}#page-mod-quiz-edit div.quizpage .pagecontent{overflow:hidden;border:1px solid #ddd;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}#page-mod-quiz-edit .modulespecificbuttonscontainer{width:220px}.questionbankwindow .module{width:auto}#page-mod-quiz-edit div.editq div.question div.content{overflow:hidden;background-color:#fff;border:1px solid #ddd;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.path-mod-quiz .statedetails{display:block;font-size:.9em}a#hidebankcmd{color:#08c}.que.shortanswer .answer{padding:0}.que label{display:inline}.userprofile .fullprofilelink{margin:10px;text-align:center}.userprofile .description{margin-bottom:20px}.userprofile dl.list{*zoom:1}.userprofile dl.list:before,.userprofile dl.list:after{display:table;line-height:0;content:""}.userprofile dl.list:after{clear:both}.userprofile dl.list dt{float:left;width:180px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.userprofile dl.list dd{margin-left:200px}.user-box{float:left;width:115px;height:160px;margin:8px;clear:none;text-align:center}.userlist .action-icon img{vertical-align:middle}.userlist #showall{margin:10px 0}.userlist .buttons{text-align:center}.userlist .buttons label{padding:0 3px}.userlist table#participants{text-align:center}.userlist table#participants td,.userlist table#participants th{padding:4px;text-align:left;vertical-align:middle}.userlist table.controls{width:100%}.userlist table.controls tr{vertical-align:top}.userlist table.controls td.right,.userlist table.controls td.left{padding:4px}.userlist table.controls .right{text-align:right}.userinfobox{width:100%;padding:10px;border:1px solid;border-collapse:separate}.userinfobox .left,.userinfobox .side{width:100px;vertical-align:top}.userinfobox .userpicture{width:100px;height:100px}.userinfobox .content{vertical-align:top}.userinfobox .links{width:100px;padding:5px;vertical-align:bottom}.userinfobox .links a{display:block}.userinfobox .list td{padding:3px}.userinfobox .username{padding-bottom:20px;font-weight:bold}.userinfobox td.label{font-weight:bold;text-align:right;white-space:nowrap;vertical-align:top}.groupinfobox{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.groupinfobox blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.groupinfobox .left{width:100px;padding:10px;vertical-align:top}.course-participation #showall{margin:10px 0;text-align:center}#user-policy .noticebox{width:80%;height:250px;margin-right:auto;margin-bottom:10px;margin-left:auto;text-align:center}#user-policy #policyframe{width:100%;height:100%}.iplookup #map{margin:auto}.userselector select{width:100%}.userselector div{margin-top:.2em}.userselector div label{margin-right:.3em}.userselector .userselector-infobelow{font-size:.8em}#userselector_options{padding:.3em 0}#userselector_options .collapsibleregioncaption{font-weight:bold}#userselector_options p{margin:.2em 0;text-align:left}.dir-rtl #userselector_options p{text-align:right}#page-user-profile .messagebox{margin-right:auto;margin-left:auto;text-align:center}#page-course-view-weeks .messagebox{margin-right:auto;margin-left:auto;text-align:center}.dir-rtl .descriptionbox{margin-right:110px;margin-left:0}.dir-rtl .userlist table#participants td,.dir-rtl .userlist table#participants th{text-align:right}.dir-rtl .userlist table#participants{margin:0 auto}#page-my-index.dir-rtl .block h3{text-align:right}/*! +.layout-option-noheader #page-header,.layout-option-nonavbar #page-navbar,.layout-option-nofooter #page-footer,.layout-option-nocourseheader .course-content-header,.layout-option-nocoursefooter .course-content-footer{display:none}.empty-region-side-pre #block-region-side-pre,.empty-region-side-post #block-region-side-post{display:none}.empty-region-side-post #region-bs-main-and-pre.span9{width:100%}.empty-region-side-pre #region-main{float:none;width:100%}.empty-region-side-post.used-region-side-pre #region-main.span8{width:74.46808510638297%;*width:74.41489361702126%}.empty-region-side-post.used-region-side-pre #block-region-side-pre.span4{width:23.404255319148934%;*width:23.351063829787233%}.empty-region-side-post #region-bs-main-and-post.span9 #region-main.span8{width:100%}.dir-ltr,.mdl-left,.dir-rtl .mdl-right{text-align:left}.dir-rtl,.mdl-right,.dir-rtl .mdl-left{text-align:right}#add,#remove,.centerpara,.mdl-align{text-align:center}a.dimmed,a.dimmed:link,a.dimmed:visited,a.dimmed_text,a.dimmed_text:link,a.dimmed_text:visited,.dimmed_text,.dimmed_text a,.dimmed_text a:link,.dimmed_text a:visited,.usersuspended,.usersuspended a,.usersuspended a:link,.usersuspended a:visited,.dimmed_category,.dimmed_category a{color:#999}.activity.label .dimmed_text{opacity:.5;filter:alpha(opacity=50)}.unlist,.unlist li,.inline-list,.inline-list li,.block .list,.block .list li,.section li.activity,.section li.movehere,.tabtree li{padding:0;margin:0;list-style:none}.inline,.inline-list li{display:inline}.notifytiny{font-size:10.5px}.notifytiny li,.notifytiny td{font-size:100%}.red,.notifyproblem{color:#b94a48}.green,.notifysuccess{color:#468847}.reportlink{text-align:right}a.autolink.glossary:hover{cursor:help}.collapsibleregioncaption{white-space:nowrap}.collapsibleregioncaption img{vertical-align:middle}.jsenabled .hiddenifjs{display:none}.visibleifjs{display:none}.jsenabled .visibleifjs{display:inline}.jsenabled .collapsibleregion{overflow:hidden}.jsenabled .collapsed .collapsibleregioninner{visibility:hidden}.yui-overlay .yui-widget-bd{position:relative;top:0;left:0;z-index:1;padding:2px 5px;color:#000;background-color:#ffee69;border:1px solid #a6982b;border-top-color:#d4c237}.clearer{display:block;height:1px;padding:0;margin:0;clear:both;background:transparent;border-width:0}.bold,.warning,.errorbox .title,.pagingbar .title,.pagingbar .thispage,.headingblock{font-weight:bold}img.resize{width:1em;height:1em}.block img.resize,.breadcrumb img.resize{width:.8em;height:.9em}img.icon{width:16px;height:16px;padding-right:6px;vertical-align:text-bottom}.dir-rtl img.icon{padding-right:0;padding-left:6px}img.iconsmall{width:12px;height:12px;margin-right:3px;vertical-align:middle}img.iconhelp,.helplink img{width:16px;height:16px;padding-left:3px;vertical-align:text-bottom}h1 img.iconhelp,h1 img.icon,h2 img.iconhelp,h2 img.icon,h3 img.iconhelp,h3 img.icon,h4 img.iconhelp,h4 img.icon,h5 img.iconhelp,h5 img.icon,h6 img.iconhelp,h6 img.icon{vertical-align:middle}.dir-rtl img.iconhelp,.dir-rtl .helplink img{padding-right:3px;padding-left:0}img.iconlarge{width:24px;height:24px;vertical-align:middle}img.iconsort{padding-left:.3em;margin-bottom:.15em;vertical-align:text-bottom}.dir-rtl img.iconsort{padding-right:.3em;padding-left:0}img.icontoggle{width:50px;height:17px;vertical-align:middle}img.iconkbhelp{width:49px;height:17px}img.icon-pre,.dir-rtl img.icon-post{padding-right:3px;padding-left:0}img.icon-post,.dir-rtl img.icon-pre{padding-right:0;padding-left:3px}.boxaligncenter{margin-right:auto;margin-left:auto}.boxalignright{margin-right:0;margin-left:auto}.boxalignleft{margin-right:auto;margin-left:0}.boxwidthnarrow{width:30%}.boxwidthnormal{width:50%}.boxwidthwide{width:80%}.headermain{font-weight:bold}#maincontent{display:block;height:1px;overflow:hidden}img.uihint{cursor:help}#addmembersform table{margin-right:auto;margin-left:auto}.flexible th{white-space:nowrap}table.flexible .emptyrow{display:none}img.emoticon{width:15px;height:15px;vertical-align:middle}form.popupform,form.popupform div{display:inline}.arrow_button input{overflow:hidden}.action-icon img.smallicon{margin:0 .3em;vertical-align:text-bottom}.no-overflow{padding-bottom:1px;overflow:auto}.pagelayout-report .no-overflow{overflow:visible}.no-overflow>.generaltable{margin-bottom:0}.accesshide{position:absolute;left:-10000px;font-size:1em;font-weight:normal}.dir-rtl .accesshide{top:-30000px;left:auto}span.hide,div.hide{display:none}a.skip-block,a.skip{position:absolute;top:-1000em;font-size:.85em;text-decoration:none}a.skip-block:focus,a.skip-block:active,a.skip:focus,a.skip:active{position:static;display:block}.skip-block-to{display:block;height:1px;overflow:hidden}.addbloglink{text-align:center}.blog_entry .audience{padding-right:4px;text-align:right}.blog_entry .tags{margin-top:15px}.blog_entry .tags .action-icon img.smallicon{width:16px;height:16px}.blog_entry .content{margin-left:43px}#page-group-index #groupeditform{text-align:center}#doc-contents h1{margin:1em 0 0 0}#doc-contents ul{width:90%;padding:0;margin:0}#doc-contents ul li{list-style-type:none}.groupmanagementtable td{vertical-align:top}.groupmanagementtable #existingcell,.groupmanagementtable #potentialcell{width:42%}.groupmanagementtable #buttonscell{width:16%}.groupmanagementtable #buttonscell p.arrow_button input{width:auto;min-width:80%;margin:0 auto}.groupmanagementtable #removeselect_wrapper,.groupmanagementtable #addselect_wrapper{width:100%}.groupmanagementtable #removeselect_wrapper label,.groupmanagementtable #addselect_wrapper label{font-weight:normal}.dir-rtl .groupmanagementtable p{text-align:right}#group-usersummary{width:14em}.groupselector{margin-top:3px;margin-bottom:3px}.loginbox{margin:15px;overflow:visible}.loginbox.twocolumns{margin:15px}.loginbox h2,.loginbox .subcontent{padding:10px;margin:5px;text-align:center}.loginbox .loginpanel .desc{padding:0;margin:0;margin-top:15px;margin-bottom:5px}.loginbox .signuppanel .subcontent{text-align:left}.dir-rtl .loginbox .signuppanel .subcontent{text-align:right}.loginbox .loginsub{margin-right:0;margin-left:0}.loginbox .guestsub,.loginbox .forgotsub,.loginbox .potentialidps{margin:5px 12%}.loginbox .potentialidps .potentialidplist{margin-left:40%}.loginbox .potentialidps .potentialidplist div{text-align:left}.loginbox .loginform{margin-top:1em;text-align:left}.loginbox .loginform .form-label{float:left;width:44%;text-align:right;white-space:nowrap;direction:rtl}.dir-rtl .loginbox .loginform .form-label{float:left;width:44%;text-align:right;white-space:nowrap;direction:ltr}.loginbox .loginform .form-input{float:right;width:55%}.loginbox .loginform .form-input input{width:6em}.loginbox .signupform{margin-top:1em;text-align:center}.loginbox.twocolumns .loginpanel,.loginbox.twocolumns .signuppanel{display:block;float:left;width:48%;min-height:30px;padding:0;padding-bottom:2000px;margin:0;margin-bottom:-2000px;margin-left:2.76243%;border:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.loginbox .potentialidp .smallicon{margin:0 .3em;vertical-align:text-bottom}.notepost{margin-bottom:1em}.notepost .userpicture{float:left;margin-right:5px}.notepost .content,.notepost .footer{clear:both}.notesgroup{margin-left:20px}.path-my .coursebox .overview{margin:15px 30px 10px 30px}.path-my .coursebox .info{float:none;margin:0}.mod_introbox{padding:10px}table.mod_index{width:100%}.comment-ctrl{display:none;padding:0;margin:0;font-size:12px}.comment-ctrl h5{padding:5px;margin:0}.comment-area{max-width:400px;padding:5px}.comment-area textarea{width:100%;overflow:auto}.comment-area .fd{text-align:right}.comment-meta span{color:gray}.comment-link img{vertical-align:text-bottom}.comment-list{padding:0;margin:0;overflow:auto;font-size:11px;list-style:none}.comment-list li{position:relative;padding:.3em;margin:2px;margin-bottom:5px;clear:both;list-style:none}.comment-list li.first{display:none}.comment-paging{text-align:center}.comment-paging .pageno{padding:2px}.comment-paging .curpage{border:1px solid #CCC}.comment-message .picture{float:left;width:20px}.dir-rtl .comment-message .picture{float:right}.comment-message .text{padding:0;margin:0}.comment-message .text p{padding:0;margin:0 18px 0 0}.comment-delete{position:absolute;top:0;right:0;margin:.3em}.dir-rtl .comment-delete{position:absolute;right:auto;left:0;margin:.3em}.comment-delete-confirm{width:5em;padding:2px;text-align:center;background:#eee}.comment-container{float:left;margin:4px}.comment-report-selectall{display:none}.comment-link{display:none}.jsenabled .comment-link{display:block}.jsenabled .showcommentsnonjs{display:none}.jsenabled .comment-report-selectall{display:inline}.completion-expired{background:#f2dede}.completion-expected{font-size:10.5px}.completion-sortchoice,.completion-identifyfield{font-size:10.5px;vertical-align:bottom}.completion-progresscell{text-align:right}.completion-expired .completion-expected{font-weight:bold}#page-tag-coursetags_edit .coursetag_edit_centered{position:relative;width:600px;margin:20px auto}#page-tag-coursetags_edit .coursetag_edit_row{clear:both}#page-tag-coursetags_edit .coursetag_edit_row .coursetag_edit_left{float:left;width:50%;text-align:right}#page-tag-coursetags_edit .coursetag_edit_row .coursetag_edit_right{margin-left:50%}#page-tag-coursetags_edit .coursetag_edit_input3{display:none}#page-tag-coursetags_more .coursetag_more_large{font-size:120%}#page-tag-coursetags_more .coursetag_more_small{font-size:80%}#page-tag-coursetags_more .coursetag_more_link{font-size:80%}#tag-description,#tag-blogs{width:100%}#tag-management-box{margin-bottom:10px;line-height:20px}#tag-user-table{width:100%;padding:3px;clear:both}#tag-user-table{*zoom:1}#tag-user-table:before,#tag-user-table:after{display:table;line-height:0;content:""}#tag-user-table:after{clear:both}img.user-image{width:100px;height:100px}#small-tag-cloud-box{width:300px;margin:0 auto}#big-tag-cloud-box{float:none;width:600px;margin:0 auto}ul#tag-cloud-list{padding:5px;margin:0;list-style:none}ul#tag-cloud-list li{display:inline;margin:0;list-style-type:none}#tag-search-box{margin:10px auto;text-align:center}#tag-search-results-container{width:100%;padding:0}#tag-search-results{display:block;float:left;width:60%;padding:0;margin:15px 20% 0 20%}#tag-search-results li{float:left;width:30%;padding-right:1%;padding-left:1%;line-height:20px;text-align:left;list-style:none}span.flagged-tag,span.flagged-tag a{color:#b94a48}table#tag-management-list{width:100%;text-align:left}table#tag-management-list td,table#tag-management-list th{padding:4px;text-align:left;vertical-align:middle}.tag-management-form{text-align:center}#relatedtags-autocomplete-container{width:100%;min-height:4.6em;margin-right:auto;margin-left:auto}#relatedtags-autocomplete{position:relative;display:block;width:60%;margin-right:auto;margin-left:auto}#relatedtags-autocomplete .yui-ac-content{position:absolute;left:20%;z-index:9050;width:420px;overflow:hidden;background:#fff;border:1px solid #404040}#relatedtags-autocomplete .ysearchquery{position:absolute;right:10px;z-index:10;color:#808080}#relatedtags-autocomplete .yui-ac-shadow{position:absolute;z-index:9049;width:100%;margin:.3em;background:#a0a0a0}#relatedtags-autocomplete ul{width:100%;padding:0;margin:0;list-style-type:none}#relatedtags-autocomplete li{padding:0 5px;white-space:nowrap;cursor:default}#relatedtags-autocomplete li.yui-ac-highlight{background:#ffc}h2.tag-heading,div#tag-description,div#tag-blogs,body.tag .managelink{padding:5px}.tag_cloud .s20{font-size:1.5em;font-weight:bold}.tag_cloud .s19{font-size:1.5em}.tag_cloud .s18{font-size:1.4em;font-weight:bold}.tag_cloud .s17{font-size:1.4em}.tag_cloud .s16{font-size:1.3em;font-weight:bold}.tag_cloud .s15{font-size:1.3em}.tag_cloud .s14{font-size:1.2em;font-weight:bold}.tag_cloud .s13{font-size:1.2em}.tag_cloud .s12,.tag_cloud .s11{font-size:1.1em;font-weight:bold}.tag_cloud .s10,.tag_cloud .s9{font-size:1.1em}.tag_cloud .s8,.tag_cloud .s7{font-size:1em;font-weight:bold}.tag_cloud .s6,.tag_cloud .s5{font-size:1em}.tag_cloud .s4,.tag_cloud .s3{font-size:.9em;font-weight:bold}.tag_cloud .s2,.tag_cloud .s1{font-size:.9em}.tag_cloud .s0{font-size:.8em}#webservice-doc-generator td{text-align:left;border:0 solid black}.smartselect{position:absolute}.smartselect .smartselect_mask{background-color:#fff}.smartselect ul{padding:0;margin:0}.smartselect ul li{list-style:none}.smartselect .smartselect_menu{margin-right:5px}.safari .smartselect .smartselect_menu{margin-left:2px}.smartselect .smartselect_menu,.smartselect .smartselect_submenu{display:none;background-color:#FFF;border:1px solid #000}.smartselect .smartselect_menu.visible,.smartselect .smartselect_submenu.visible{display:block}.smartselect .smartselect_menu_content ul li{position:relative;padding:2px 5px}.smartselect .smartselect_menu_content ul li a{color:#333;text-decoration:none}.smartselect .smartselect_menu_content ul li a.selectable{color:inherit}.smartselect .smartselect_submenuitem{background-image:url([[pix:moodle|t/collapsed]]);background-position:100%;background-repeat:no-repeat}.smartselect.spanningmenu .smartselect_submenu{position:absolute;top:-1px;left:100%}.smartselect.spanningmenu .smartselect_submenu a{padding-right:16px;white-space:nowrap}.smartselect.spanningmenu .smartselect_menu_content ul li a.selectable:hover{text-decoration:underline}.smartselect.compactmenu .smartselect_submenu{position:relative;z-index:1010;display:none;margin:2px -3px;margin-left:10px;border-width:0}.smartselect.compactmenu .smartselect_submenu.visible{display:block}.smartselect.compactmenu .smartselect_menu{z-index:1000;overflow:hidden}.smartselect.compactmenu .smartselect_submenu .smartselect_submenu{z-index:1020}.smartselect.compactmenu .smartselect_submenuitem:hover>.smartselect_menuitem_label{font-weight:bold}#page-admin-registration-register .registration_textfield{width:300px}.userenrolment{width:100%;border-collapse:collapse}.userenrolment td{height:41px;padding:0}.userenrolment .subfield{margin-right:5px}.userenrolment .col_userdetails .subfield_picture{float:left}.userenrolment .col_lastseen{width:150px}.userenrolment .col_role{width:262px}.userenrolment .col_role .roles{margin-right:30px}.userenrolment .col_role .role{float:left;padding:3px;margin:3px}.dir-rtl .userenrolment .col_role .role{float:right}.userenrolment .col_role .role a{margin-left:3px;cursor:pointer}.userenrolment .col_role .addrole{float:right;width:18px;height:18px;margin:3px;text-align:center;background-color:#dff0d8;border:1px solid #d6e9c6}.userenrolment .col_role .addrole img{vertical-align:baseline}.userenrolment .hasAllRoles .col_role .addrole{display:none}.userenrolment .col_group .groups{margin-right:30px}.userenrolment .col_group .group{float:left;padding:3px;margin:3px;white-space:nowrap}.userenrolment .col_group .group a{margin-left:3px;cursor:pointer}.userenrolment .col_group .addgroup{float:right;width:18px;height:18px;margin:3px;text-align:center}.userenrolment .col_group .addgroup a img{vertical-align:bottom}.userenrolment .col_enrol .enrolment{float:left;padding:3px;margin:3px}.userenrolment .col_enrol .enrolment a{float:right;margin-left:3px}#page-enrol-users .enrol_user_buttons{float:right}#page-enrol-users.dir-rtl .enrol_user_buttons{float:left}#page-enrol-users .enrol_user_buttons .enrolusersbutton{display:inline;margin-left:1em}#page-enrol-users .enrol_user_buttons .enrolusersbutton div,#page-enrol-users .enrol_user_buttons .enrolusersbutton form{display:inline}#page-enrol-users .enrol_user_buttons .enrolusersbutton input{padding-right:6px;padding-left:6px}#page-enrol-users.dir-rtl .col_userdetails .subfield_picture{float:right}#page-enrol-users .user-enroller-panel .uep-search-results .user .details{width:237px}.dir-rtl .headermain{float:right}.dir-rtl .headermenu{float:left}.dir-rtl .loginbox .loginform .form-label{float:right;text-align:left}.dir-rtl .loginbox .loginform .form-input{text-align:right}.dir-rtl .yui3-menu-hidden{left:0}#page-admin-roles-define.dir-rtl #rolesform .felement{margin-right:180px}#page-message-edit.dir-rtl table.generaltable th.c0{text-align:right}.corelightbox{position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;background-color:#CCC}.corelightbox img{position:fixed;top:50%;left:50%}.mod-indent-1{margin-left:30px}.mod-indent-2{margin-left:60px}.mod-indent-3{margin-left:90px}.mod-indent-4{margin-left:120px}.mod-indent-5{margin-left:150px}.mod-indent-6{margin-left:180px}.mod-indent-7{margin-left:210px}.mod-indent-8{margin-left:240px}.mod-indent-9{margin-left:270px}.mod-indent-10{margin-left:300px}.mod-indent-11{margin-left:330px}.mod-indent-12{margin-left:360px}.mod-indent-13{margin-left:390px}.mod-indent-14{margin-left:420px}.mod-indent-15,.mod-indent-huge{margin-left:420px}.dir-rtl .mod-indent-1{margin-right:30px;margin-left:0}.dir-rtl .mod-indent-2{margin-right:60px;margin-left:0}.dir-rtl .mod-indent-3{margin-right:90px;margin-left:0}.dir-rtl .mod-indent-4{margin-right:120px;margin-left:0}.dir-rtl .mod-indent-5{margin-right:150px;margin-left:0}.dir-rtl .mod-indent-6{margin-right:180px;margin-left:0}.dir-rtl .mod-indent-7{margin-right:210px;margin-left:0}.dir-rtl .mod-indent-8{margin-right:240px;margin-left:0}.dir-rtl .mod-indent-9{margin-right:270px;margin-left:0}.dir-rtl .mod-indent-10{margin-right:300px;margin-left:0}.dir-rtl .mod-indent-11{margin-right:330px;margin-left:0}.dir-rtl .mod-indent-12{margin-right:360px;margin-left:0}.dir-rtl .mod-indent-13{margin-right:390px;margin-left:0}.dir-rtl .mod-indent-14{margin-right:420px;margin-left:0}.dir-rtl .mod-indent-15,.dir-rtl .mod-indent-huge{margin-right:420px;margin-left:0}.resourcecontent .mediaplugin_mp3 object{width:600px;height:25px}.resourcecontent audio.mediaplugin_html5audio{width:600px}.resourceimage{max-width:100%}.mediaplugin_mp3 object{width:300px;height:15px}audio.mediaplugin_html5audio{width:300px}.core_media_preview.pagelayout-embedded #content{padding:0}.core_media_preview.pagelayout-embedded #maincontent{height:0}.core_media_preview.pagelayout-embedded .mediaplugin{margin:0}.dir-rtl .ygtvtn,.dir-rtl .ygtvtm,.dir-rtl .ygtvtmh,.dir-rtl .ygtvtmhh,.dir-rtl .ygtvtp,.dir-rtl .ygtvtph,.dir-rtl .ygtvtphh,.dir-rtl .ygtvln,.dir-rtl .ygtvlm,.dir-rtl .ygtvlmh,.dir-rtl .ygtvlmhh,.dir-rtl .ygtvlp,.dir-rtl .ygtvlph,.dir-rtl .ygtvlphh,.dir-rtl .ygtvdepthcell,.dir-rtl .ygtvok,.dir-rtl .ygtvok:hover,.dir-rtl .ygtvcancel,.dir-rtl .ygtvcancel:hover{width:18px;height:22px;cursor:pointer;background-image:url([[pix:theme|yui2-treeview-sprite-rtl]]);background-repeat:no-repeat}.dir-rtl .ygtvtn{background-position:0 -5600px}.dir-rtl .ygtvtm{background-position:0 -4000px}.dir-rtl .ygtvtmh,.dir-rtl .ygtvtmhh{background-position:0 -4800px}.dir-rtl .ygtvtp{background-position:0 -6400px}.dir-rtl .ygtvtph,.dir-rtl .ygtvtphh{background-position:0 -7200px}.dir-rtl .ygtvln{background-position:0 -1600px}.dir-rtl .ygtvlm{background-position:0 0}.dir-rtl .ygtvlmh,.dir-rtl .ygtvlmhh{background-position:0 -800px}.dir-rtl .ygtvlp{background-position:0 -2400px}.dir-rtl .ygtvlph,.dir-rtl .ygtvlphh{background-position:0 -3200px}.dir-rtl .ygtvdepthcell{background-position:0 -8000px}.dir-rtl .ygtvok{background-position:0 -8800px}.dir-rtl .ygtvok:hover{background-position:0 -8844px}.dir-rtl .ygtvcancel{background-position:0 -8822px}.dir-rtl .ygtvcancel:hover{background-position:0 -8866px}.dir-rtl.yui-skin-sam .yui-panel .hd{text-align:right}.dir-rtl .yui-skin-sam .yui-layout .yui-layout-unit div.yui-layout-bd{text-align:right}.dir-rtl .clearlooks2.ie9 .mceAlert .mceMiddle span,.dir-rtl .clearlooks2 .mceConfirm .mceMiddle span{top:44px}.dir-rtl .o2k7Skin table,.dir-rtl .o2k7Skin tbody,.dir-rtl .o2k7Skin a,.dir-rtl .o2k7Skin img,.dir-rtl .o2k7Skin tr,.dir-rtl .o2k7Skin div,.dir-rtl .o2k7Skin td,.dir-rtl .o2k7Skin iframe,.dir-rtl .o2k7Skin span,.dir-rtl .o2k7Skin *,.dir-rtl .o2k7Skin .mceText,.dir-rtl .o2k7Skin .mceListBox .mceText{text-align:right}.path-rating .ratingtable{width:100%;margin-bottom:1em}.path-rating .ratingtable th.rating{width:100%}.path-rating .ratingtable td.rating,.path-rating .ratingtable td.time{text-align:center;white-space:nowrap}.initialbar a{padding-right:2px}.moodle-dialogue-base .moodle-dialogue-lightbox{background-color:#AAA}.moodle-dialogue-base .hidden,.moodle-dialogue-base .moodle-dialogue-hidden{display:none}.no-scrolling{overflow:hidden}.moodle-dialogue-fullscreen{top:0;left:0;width:100%;height:100%;overflow:auto}.moodle-dialogue-base .moodle-dialogue{z-index:600;padding:0;margin:0;background:0;border:0;outline:#000 dotted 0}.moodle-dialogue-base .moodle-dialogue-wrap{margin-top:-3px;margin-left:-3px;background-color:#fff;border:1px solid #ccc;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd{padding:5px;margin:0;font-size:12px;font-weight:normal;letter-spacing:1px;color:#333;text-align:center;text-shadow:1px 1px 1px #fff;background:#ccc;background-color:#ebebeb;background-image:-moz-linear-gradient(top,#fff,#ccc);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#ccc));background-image:-webkit-linear-gradient(top,#fff,#ccc);background-image:-o-linear-gradient(top,#fff,#ccc);background-image:linear-gradient(to bottom,#fff,#ccc);background-repeat:repeat-x;border-bottom:1px solid #bbb;-webkit-border-radius:10px 10px 0 0;-moz-border-radius:10px 10px 0 0;border-radius:10px 10px 0 0;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffcccccc',GradientType=0);filter:dropshadow(color=#ffffff,offx=1,offy=1)}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd h1{display:inline;padding:0;margin:0;font-size:100%;font-weight:bold}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd .yui3-widget-buttons{padding:5px}.moodle-dialogue-base .closebutton{display:inline-block;float:right;width:25px;height:15px;padding:0;vertical-align:middle;cursor:pointer;background-image:url([[pix:theme|sprite]]);background-repeat:no-repeat;border-style:none}.dir-rtl .moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd .yui3-widget-buttons{right:auto;left:0}.moodle-dialogue-base .moodle-dialogue .moodle-dialogue-bd{padding:1em;overflow:auto;font-size:12px;line-height:2em;color:#555}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-content{padding:0;background:#FFF}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-hd{padding:10px;font-size:16px}.moodle-dialogue-base .moodle-dialogue-fullscreen,.moodle-dialogue-fullscreen .moodle-dialogue-content{width:100%;height:100%;margin:0;border:0}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-hd,.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-wrap{border-radius:0}.moodle-dialogue-confirm .confirmation-dialogue{text-align:center}.moodle-dialogue-confirm .confirmation-dialogue input{text-align:center}.moodle-dialogue-exception .moodle-exception-message{text-align:center}.moodle-dialogue-exception .moodle-exception-param label{font-weight:bold}.moodle-dialogue-exception .param-stacktrace label{background-color:#EEE;border:1px solid #ccc;border-bottom-width:0}.moodle-dialogue-exception .param-stacktrace pre{background-color:#fff;border:1px solid #ccc}.moodle-dialogue-exception .param-stacktrace .stacktrace-file{font-size:11.9px;color:navy}.moodle-dialogue-exception .param-stacktrace .stacktrace-line{font-size:11.9px;color:#b94a48}.moodle-dialogue-exception .param-stacktrace .stacktrace-call{font-size:90%;color:#333;border-bottom:1px solid #eee}.moodle-dialogue-base .moodle-dialogue .moodle-dialogue-content .moodle-dialogue-ft{padding:0;margin:.7em 1em;font-size:12px;text-align:right;background-color:#FFF}.moodle-dialogue-confirm .confirmation-message{margin:.5em 1em}.moodle-dialogue-confirm .confirmation-dialogue input{min-width:80px}.moodle-dialogue-exception .moodle-exception-message{margin:1em}.moodle-dialogue-exception .moodle-exception-param{margin-bottom:.5em}.moodle-dialogue-exception .moodle-exception-param label{width:150px}.moodle-dialogue-exception .param-stacktrace label{display:block;padding:4px 1em;margin:0}.moodle-dialogue-exception .param-stacktrace pre{display:block;height:200px;overflow:auto}.moodle-dialogue-exception .param-stacktrace .stacktrace-file{display:inline-block;margin:4px 0}.moodle-dialogue-exception .param-stacktrace .stacktrace-line{display:inline-block;width:50px;margin:4px 1em}.moodle-dialogue-exception .param-stacktrace .stacktrace-call{padding-bottom:4px;padding-left:25px;margin-bottom:4px}.moodle-dialogue .moodle-dialogue-bd .content-lightbox{top:0;left:0;width:100%;height:100%;padding:10% 0;text-align:center;background-color:white;opacity:.75;filter:alpha(opacity=75)}.moodle-dialogue .tooltiptext{max-height:300px}.moodle-dialogue-base .moodle-dialogue.moodle-dialogue-tooltip{z-index:3001}#page-question-edit.dir-rtl a.container-close{right:auto;left:6px}.chooserdialoguebody,.choosertitle{display:none}.moodle-dialogue.chooserdialogue .moodle-dialogue-content .moodle-dialogue-ft{margin:0}.chooserdialogue .moodle-dialogue-wrap .moodle-dialogue-bd{padding:0;background:#f2f2f2;-webkit-border-bottom-right-radius:10px;border-bottom-right-radius:10px;-webkit-border-bottom-left-radius:10px;border-bottom-left-radius:10px;-moz-border-radius-bottomright:10px;-moz-border-radius-bottomleft:10px}.choosercontainer #chooseform .submitbuttons{margin:.7em 0;text-align:center}.choosercontainer #chooseform .submitbuttons input{min-width:100px;margin:0 .5em}.choosercontainer #chooseform .options{position:relative;border-bottom:1px solid #bbb}.jsenabled .choosercontainer #chooseform .alloptions{max-width:20.3em;overflow-x:hidden;overflow-y:auto;-webkit-box-shadow:inset 0 0 30px 0 #ccc;-moz-box-shadow:inset 0 0 30px 0 #ccc;box-shadow:inset 0 0 30px 0 #ccc}.dir-rtl.jsenabled .choosercontainer #chooseform .alloptions{max-width:18.3em}.choosercontainer #chooseform .moduletypetitle,.choosercontainer #chooseform .option,.choosercontainer #chooseform .nonoption{padding:0 1.6em 0 1.6em;margin-bottom:0}.choosercontainer #chooseform .moduletypetitle{padding-top:1.2em;padding-bottom:.4em;text-transform:uppercase}.choosercontainer #chooseform .option .typename,.choosercontainer #chooseform .option span.modicon img.icon,.choosercontainer #chooseform .nonoption .typename,.choosercontainer #chooseform .nonoption span.modicon img.icon{padding:0 0 0 .5em}.dir-rtl .choosercontainer #chooseform .option .typename,.dir-rtl .choosercontainer #chooseform .option span.modicon img.icon,.dir-rtl .choosercontainer #chooseform .nonoption .typename,.dir-rtl .choosercontainer #chooseform .nonoption span.modicon img.icon{padding:0 .5em 0 0}.choosercontainer #chooseform .option span.modicon img.icon,.choosercontainer #chooseform .nonoption span.modicon img.icon{width:24px;height:24px}.choosercontainer #chooseform .option input[type=radio],.choosercontainer #chooseform .option span.typename,.choosercontainer #chooseform .option span.modicon{vertical-align:middle}.choosercontainer #chooseform .option label{display:block;padding:.3em 0 .1em 0;border-bottom:1px solid #fff}.choosercontainer #chooseform .nonoption{padding-top:.3em;padding-bottom:.1em;padding-left:2.7em}.dir-rtl .choosercontainer #chooseform .nonoption{padding-right:2.7em;padding-left:0}.choosercontainer #chooseform .subtype{padding:0 1.6em 0 3.2em;margin-bottom:0}.dir-rtl .choosercontainer #chooseform .subtype{padding:0 3.2em 0 1.6em}.choosercontainer #chooseform .subtype .typename{margin:0 0 0 .2em}.dir-rtl .choosercontainer #chooseform .subtype .typename{margin:0 .2em 0 0}.jsenabled .choosercontainer #chooseform .instruction,.jsenabled .choosercontainer #chooseform .typesummary{position:absolute;top:0;right:0;bottom:0;left:20.3em;display:none;padding:1.6em;margin:0;overflow-x:hidden;overflow-y:auto;line-height:2em;background-color:#fff}.dir-rtl.jsenabled .choosercontainer #chooseform .instruction,.dir-rtl.jsenabled .choosercontainer #chooseform .typesummary{right:18.5em;left:0;border-right:1px solid grey}.jsenabled .choosercontainer #chooseform .instruction,.choosercontainer #chooseform .selected .typesummary{display:block}.choosercontainer #chooseform .selected{background-color:#fff;-webkit-box-shadow:0 0 10px 0 #ccc;-moz-box-shadow:0 0 10px 0 #ccc;box-shadow:0 0 10px 0 #ccc}.section-modchooser-link img.smallicon{padding:3px}.formlistingradio{padding-right:10px;padding-bottom:25px}.formlistinginputradio{float:left}.formlistingmain{min-height:225px}.formlisting{position:relative;padding:1px 19px 14px;margin:15px 0;background-color:white;border:1px solid #DDD;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.formlistingmore{position:absolute;right:-1px;bottom:-1px;padding:3px 7px;font-size:12px;font-weight:bold;color:#9da0a4;cursor:pointer;background-color:whiteSmoke;border:1px solid #ddd;-webkit-border-radius:4px 0 4px 0;-moz-border-radius:4px 0 4px 0;border-radius:4px 0 4px 0}.formlistingall{padding:0;margin:15px 0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.formlistingrow{top:50%;left:50%;float:left;width:150px;min-height:34px;padding:6px;cursor:pointer;background-color:#f7f7f9;border-right:1px solid #e1e1e8;border-bottom:1px solid;border-left:1px solid #e1e1e8;border-color:#e1e1e8;-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}body.jsenabled .formlistingradio{display:none}body.jsenabled .formlisting{display:block}table.collection{width:100%;margin-bottom:20px;border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}table.collection th,table.collection td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #ddd}table.collection th{font-weight:bold}table.collection thead th{vertical-align:bottom}table.collection caption+thead tr:first-child th,table.collection caption+thead tr:first-child td,table.collection colgroup+thead tr:first-child th,table.collection colgroup+thead tr:first-child td,table.collection thead:first-child tr:first-child th,table.collection thead:first-child tr:first-child td{border-top:0}table.collection tbody+tbody{border-top:2px solid #ddd}table.collection .table{background-color:#fff}table.collection th,table.collection td{border-left:1px solid #ddd}table.collection caption+thead tr:first-child th,table.collection caption+tbody tr:first-child th,table.collection caption+tbody tr:first-child td,table.collection colgroup+thead tr:first-child th,table.collection colgroup+tbody tr:first-child th,table.collection colgroup+tbody tr:first-child td,table.collection thead:first-child tr:first-child th,table.collection tbody:first-child tr:first-child th,table.collection tbody:first-child tr:first-child td{border-top:0}table.collection thead:first-child tr:first-child>th:first-child,table.collection tbody:first-child tr:first-child>td:first-child,table.collection tbody:first-child tr:first-child>th:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}table.collection thead:first-child tr:first-child>th:last-child,table.collection tbody:first-child tr:first-child>td:last-child,table.collection tbody:first-child tr:first-child>th:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}table.collection thead:last-child tr:last-child>th:first-child,table.collection tbody:last-child tr:last-child>td:first-child,table.collection tbody:last-child tr:last-child>th:first-child,table.collection tfoot:last-child tr:last-child>td:first-child,table.collection tfoot:last-child tr:last-child>th:first-child{-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px}table.collection thead:last-child tr:last-child>th:last-child,table.collection tbody:last-child tr:last-child>td:last-child,table.collection tbody:last-child tr:last-child>th:last-child,table.collection tfoot:last-child tr:last-child>td:last-child,table.collection tfoot:last-child tr:last-child>th:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px}table.collection tfoot+tbody:last-child tr:last-child td:first-child{-webkit-border-bottom-left-radius:0;border-bottom-left-radius:0;-moz-border-radius-bottomleft:0}table.collection tfoot+tbody:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:0;border-bottom-right-radius:0;-moz-border-radius-bottomright:0}table.collection caption+thead tr:first-child th:first-child,table.collection caption+tbody tr:first-child td:first-child,table.collection colgroup+thead tr:first-child th:first-child,table.collection colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}table.collection caption+thead tr:first-child th:last-child,table.collection caption+tbody tr:first-child td:last-child,table.collection colgroup+thead tr:first-child th:last-child,table.collection colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}table.collection tbody>tr:nth-child(odd)>td,table.collection tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}table.collection .name{text-align:left;vertical-align:middle}table.collection .awards{width:10%;text-align:center;vertical-align:middle}table.collection .criteria{width:40%;text-align:left;vertical-align:top}table.collection .badgeimage,table.collection .status{width:15%;text-align:center;vertical-align:middle}table.collection .description{width:25%;text-align:left}table.collection .actions{width:11em;text-align:center;vertical-align:middle}a.criteria-action{float:right;padding:0 3px}table.issuedbadgebox{width:750px;background-color:#fff}table.badgeissuedimage{width:150px;text-align:center}table.badgeissuedinfo{width:600px}table.badgeissuedinfo .bvalue{text-align:left;vertical-align:middle}table.badgeissuedinfo .bfield{width:125px;font-style:italic;text-align:left}ul.badges{margin:0;list-style:none}.badges li{position:relative;display:inline-block;width:150px;padding-bottom:2em;text-align:center;vertical-align:top}.badges li .badge-name{display:block;padding:5px}.badges li>img{position:absolute}.badges li .badge-image{top:0;left:10px;z-index:1;width:90px;height:90px}.badges li .badge-actions{position:relative}div.badge{position:relative;display:block}div.badge .expireimage{top:0;left:20px;width:100px;height:100px}.expireimage{position:absolute;top:0;left:30px;z-index:10;width:90px;height:90px;opacity:.85;filter:alpha(opacity=85)}.badge-profile{vertical-align:top}.connected{color:#468847}.notconnected{color:#b94a48}#page-badges-award .recipienttable tr td{vertical-align:top}#page-badges-award .recipienttable tr td.actions .actionbutton{width:100%;padding:.5em 0;margin:.3em 0}#page-badges-award .recipienttable tr td.existing,#page-badges-award .recipienttable tr td.potential{width:42%}.statustable{margin-bottom:0}.statusbox.active{background-color:#dff0d8}.statusbox.inactive{background-color:#fcf8e3}.activatebadge{margin:0;text-align:left;vertical-align:middle}.addcourse{float:right}.invisiblefieldset{display:inline;padding:0;margin:0;border-width:0}.breadcrumb-nav{float:left;margin-bottom:10px}.dir-rtl .breadcrumb-nav{float:right}.breadcrumb-button .singlebutton div{margin-right:0}.breadcrumb-nav .breadcrumb{margin:0}.moodle-actionmenu,.moodle-actionmenu>ul,.moodle-actionmenu>ul>li{display:inline-block}.moodle-actionmenu ul{padding:0;margin:0;list-style-type:none}.moodle-actionmenu .toggle-display,.moodle-actionmenu .menu-action-text{display:none}.jsenabled .moodle-actionmenu[data-enhance]{display:block}.jsenabled .moodle-actionmenu[data-enhance] .menu{display:none}.jsenabled .moodle-actionmenu[data-enhance] .toggle-display{display:inline;opacity:.5;filter:alpha(opacity=50)}.jsenabled .moodle-actionmenu[data-enhanced] .toggle-display{opacity:1;filter:alpha(opacity=100)}.jsenabled .moodle-actionmenu[data-enhanced] .menu-action-text{display:inline}.moodle-actionmenu[data-enhanced].show{position:relative}.moodle-actionmenu[data-enhanced].show .menu{position:absolute;z-index:1000;display:block;text-align:left;background-color:#fff;border:1px solid #ccc;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}.moodle-actionmenu[data-enhanced].show .menu a{display:block;padding:2px 1em 2px .5em;color:#333}.moodle-actionmenu[data-enhanced].show .menu a:hover,.moodle-actionmenu[data-enhanced].show .menu a:focus{color:#fff;background-color:#08c}.moodle-actionmenu[data-enhanced].show .menu a:first-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}.moodle-actionmenu[data-enhanced].show .menu a:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-moz-border-radius-bottomleft:4px}.moodle-actionmenu[data-enhanced].show .menu a.hidden{display:none}.moodle-actionmenu[data-enhanced].show .menu img{vertical-align:middle}.moodle-actionmenu[data-enhanced].show .menu .iconsmall{margin-right:8px}.moodle-actionmenu[data-enhanced].show .menu>li{display:block}.moodle-actionmenu[data-enhanced].show .menu.align-tl-bl{top:100%;left:0;margin-top:4px}.moodle-actionmenu[data-enhanced].show .menu.align-tr-bl{top:100%;right:100%}.moodle-actionmenu[data-enhanced].show .menu.align-bl-bl{bottom:100%;left:0}.moodle-actionmenu[data-enhanced].show .menu.align-br-bl{right:100%;bottom:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-br{top:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tr-br{top:100%;right:0;margin-top:4px}.moodle-actionmenu[data-enhanced].show .menu.align-bl-br{bottom:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-br-br{right:0;bottom:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-tl{top:0;left:0}.moodle-actionmenu[data-enhanced].show .menu.align-tr-tl{top:0;right:100%;margin-right:4px}.moodle-actionmenu[data-enhanced].show .menu.align-bl-tl{bottom:100%;left:0;margin-bottom:4px}.moodle-actionmenu[data-enhanced].show .menu.align-br-tl{right:100%;bottom:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-tr{top:0;left:100%;margin-left:4px}.moodle-actionmenu[data-enhanced].show .menu.align-tr-tr{top:0;right:0}.moodle-actionmenu[data-enhanced].show .menu.align-bl-tr{bottom:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-br-tr{right:0;bottom:100%;margin-bottom:4px}.action-menu-shown .moodle-actionmenu[data-enhanced] .toggle-display{background-color:#FFF}.block .moodle-actionmenu{text-align:right}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu{right:auto;left:0;text-align:right}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu .iconsmall{margin-right:0;margin-left:8px}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-bl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-bl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-bl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-bl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-br{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-br{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-br{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-br{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-tl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-tl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-tl{right:0;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-tl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-tr{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-tr{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-tr{right:100%;left:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-tr{right:auto;left:0}.dir-rtl .block .moodle-actionmenu{text-align:right}ul.dragdrop-keyboard-drag li{list-style-type:none}.block-control-actions .moodle-core-dragdrop-draghandle img{width:12px;height:12px}.formtable tbody th{font-weight:normal;text-align:right}.path-admin #assignrole{width:60%;margin-right:auto;margin-left:auto}.path-admin .admintable .leftalign{text-align:left}.environmenttable p.warn{color:#c09853;background-color:#fcf8e3}.environmenttable .error,.environmenttable span.warn,.environmenttable .ok{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.environmenttable .error:empty,.environmenttable span.warn:empty,.environmenttable .ok:empty{display:none}.environmenttable .error-important,.environmenttable span.warn-important,.environmenttable .ok-important{background-color:#b94a48}.environmenttable .error-important[href],.environmenttable span.warn-important[href],.environmenttable .ok-important[href]{background-color:#953b39}.environmenttable .error-warning,.environmenttable span.warn-warning,.environmenttable .ok-warning{background-color:#f89406}.environmenttable .error-warning[href],.environmenttable span.warn-warning[href],.environmenttable .ok-warning[href]{background-color:#c67605}.environmenttable .error-success,.environmenttable span.warn-success,.environmenttable .ok-success{background-color:#468847}.environmenttable .error-success[href],.environmenttable span.warn-success[href],.environmenttable .ok-success[href]{background-color:#356635}.environmenttable .error-info,.environmenttable span.warn-info,.environmenttable .ok-info{background-color:#3a87ad}.environmenttable .error-info[href],.environmenttable span.warn-info[href],.environmenttable .ok-info[href]{background-color:#2d6987}.environmenttable .error-inverse,.environmenttable span.warn-inverse,.environmenttable .ok-inverse{background-color:#333}.environmenttable .error-inverse[href],.environmenttable span.warn-inverse[href],.environmenttable .ok-inverse[href]{background-color:#1a1a1a}.environmenttable .error{background-color:#b94a48}.environmenttable span.warn{background-color:#f89406}.environmenttable .ok{background-color:#468847}.path-admin .admintable.environmenttable .name,.path-admin .admintable.environmenttable .info,.path-admin #assignrole .admintable .role,.path-admin #assignrole .admintable .userrole,.path-admin #assignrole .admintable .roleholder{white-space:nowrap}.path-admin .incompatibleblockstable td.c0{font-weight:bold}#page-admin-course-category .addcategory{padding:10px}#page-admin-course-index .editcourse{margin:20px auto}#page-admin-course-index .editcourse th,#page-admin-course-index .editcourse td{padding-right:10px;padding-left:10px}.timewarninghidden{display:none}.statusok,.statuswarning,.statusserious,.statuscritical{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.statusok:empty,.statuswarning:empty,.statusserious:empty,.statuscritical:empty{display:none}.statusok-important,.statuswarning-important,.statusserious-important,.statuscritical-important{background-color:#b94a48}.statusok-important[href],.statuswarning-important[href],.statusserious-important[href],.statuscritical-important[href]{background-color:#953b39}.statusok-warning,.statuswarning-warning,.statusserious-warning,.statuscritical-warning{background-color:#f89406}.statusok-warning[href],.statuswarning-warning[href],.statusserious-warning[href],.statuscritical-warning[href]{background-color:#c67605}.statusok-success,.statuswarning-success,.statusserious-success,.statuscritical-success{background-color:#468847}.statusok-success[href],.statuswarning-success[href],.statusserious-success[href],.statuscritical-success[href]{background-color:#356635}.statusok-info,.statuswarning-info,.statusserious-info,.statuscritical-info{background-color:#3a87ad}.statusok-info[href],.statuswarning-info[href],.statusserious-info[href],.statuscritical-info[href]{background-color:#2d6987}.statusok-inverse,.statuswarning-inverse,.statusserious-inverse,.statuscritical-inverse{background-color:#333}.statusok-inverse[href],.statuswarning-inverse[href],.statusserious-inverse[href],.statuscritical-inverse[href]{background-color:#1a1a1a}.statusok{background-color:#468847}.statuswarning{background-color:#c09853}.statusserious{background-color:#f89406}.statuscritical{background-color:#b94a48}#page-admin-report-capability-index #capabilitysearch{width:30em}#page-admin-report-backups-index .backup-error,#page-admin-report-backups-index .backup-unfinished{color:#b94a48}#page-admin-report-backups-index .backup-skipped,#page-admin-report-backups-index .backup-ok{color:#468847}#page-admin-report-backups-index .backup-warning{color:#c09853}#page-admin-qtypes .disabled,#page-admin-qbehaviours .disabled{color:#999}#page-admin-qtypes #qtypes div,#page-admin-qtypes #qtypes form,#page-admin-qbehaviours #qbehaviours div,#page-admin-qbehaviours #qbehaviours form{display:inline}#page-admin-qtypes #qtypes img.spacer,#page-admin-qbehaviours #qbehaviours img.spacer{width:16px}img.iconsmall{padding:.3em;margin:0}#page-admin-qbehaviours .cell.c3,#page-admin-qtypes .cell.c3{font-size:10.5px}#page-admin-lang .generalbox,#page-admin-course-index .singlebutton,#page-admin-course-index .addcategory,#page-course-index .buttons,#page-course-index-category .buttons,#page-admin-course-category .addcategory,#page-admin-stickyblocks .generalbox,#page-admin-maintenance .buttons,#page-admin-course-index .buttons,#page-admin-course-category .buttons,#page-admin-index .copyright,#page-admin-index .copyrightnotice,#page-admin-index .adminerror,#page-admin-index .availableupdatesinfo,#page-admin-index .adminerror .singlebutton,#page-admin-index .adminwarning .singlebutton,#page-admin-index #layout-table .singlebutton{margin-bottom:1em;text-align:center}.path-admin-roles .capabilitysearchui{margin-right:auto;margin-left:auto;text-align:left}#page-admin-roles-define .topfields{margin:1em 0 2em}#page-admin-roles-define .capdefault{background-color:#eee;border:1px solid #cecece}#page-filter-manage .backlink,.path-admin-roles .backlink{margin-top:1em}#page-admin-roles-explain #chooseuser h3,#page-admin-roles-usersroles .contextname{margin-top:0}#page-admin-roles-explain #chooseusersubmit{margin-top:0;text-align:center}#page-admin-roles-usersroles p{margin:0}#page-admin-roles-override .cell.c1,#page-admin-roles-assign .cell.c3,#page-admin-roles-assign .cell.c1{padding-top:.75em}#page-admin-roles-override .overridenotice,#page-admin-roles-define .definenotice{margin:1em 10% 2em 10%;text-align:left}#notice{width:60%;min-width:220px;margin:auto}#page-admin-index .releasenoteslink,#page-admin-index .adminwarning,#page-admin-index .maturitywarning,#page-admin-index .maturityinfo{width:60%;min-width:220px;padding:8px 35px 8px 14px;margin:auto;margin-bottom:20px;color:#c09853;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}#page-admin-index .maturitywarning,#page-admin-index .adminwarning.maturityinfo.maturity50{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}#page-admin-index .adminwarning.availableupdatesinfo,#page-admin-index .releasenoteslink{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo span{display:block}#page-admin-index .updateplugin div,#page-admin-plugins .updateplugin div{margin-bottom:.5em}#page-admin-index .updateplugin .updatepluginconfirmexternal,#page-admin-plugins .updateplugin .updatepluginconfirmexternal{padding:1em;background-color:#f2dede;border:1px solid #eed3d7}#page-admin-user-user_bulk #users .fgroup{white-space:nowrap}#page-admin-report-stats-index .graph{margin-bottom:1em;text-align:center}#page-admin-report-courseoverview-index .graph{margin-bottom:1em;text-align:center}#page-admin-lang .translator{border-style:solid;border-width:1px}.path-admin .roleassigntable{width:100%}.path-admin .roleassigntable td{padding:.2em .3em;vertical-align:top}.path-admin .roleassigntable p{margin:.2em 0;text-align:left}.path-admin .roleassigntable #existingcell,.path-admin .roleassigntable #potentialcell{width:42%}.path-admin .roleassigntable #existingcell p>label:first-child,.path-admin .roleassigntable #potentialcell p>label:first-child{font-weight:bold}.path-admin .roleassigntable #buttonscell{width:16%}.path-admin .roleassigntable #buttonscell #assignoptions{font-size:10.5px}.path-admin .roleassigntable #removeselect_wrapper,.path-admin .roleassigntable #addselect_wrapper{width:100%}.path-admin table.rolecap tr.rolecap th{font-weight:normal;text-align:left}.path-admin.dir-rtl table.rolecap tr.rolecap th{text-align:right}.path-admin .rolecap .hiddenrow{display:none}.path-admin #defineroletable .rolecap .inherit,.path-admin #defineroletable .rolecap .allow,.path-admin #defineroletable .rolecap .prevent,.path-admin #defineroletable .rolecap .prohibit{min-width:3.5em;padding:0;text-align:center}.path-admin .rolecap .cap-name,.path-admin .rolecap .note{display:block;font-size:10.5px;font-weight:normal;white-space:nowrap}.path-admin .rolecap label{display:block;padding:.5em;margin:0;text-align:center}.plugincheckwrapper{width:100%}.environmentbox{margin-top:1em}#mnetconfig table{margin-right:auto;margin-left:auto}.environmenttable .cell{padding:.15em .5em}.environmenttable img.iconhelp{padding-right:.3em}.dir-rtl .environmenttable img.iconhelp{padding-right:0;padding-left:.3em}#trustedhosts .generaltable{width:500px;margin-right:auto;margin-left:auto}#trustedhosts .standard{width:auto}#adminsettings legend{display:none}#adminsettings fieldset.error{margin:.2em 0 .5em 0}#adminsettings fieldset.error legend{display:block}.dir-rtl #admin-spelllanguagelist textarea,#page-admin-setting-editorsettingstinymce.dir-rtl .form-textarea textarea{text-align:left;direction:ltr}.adminsettingsflags{float:right}.dir-rtl .adminsettingsflags{float:left}.adminsettingsflags label{margin-right:7px}.dir-rtl .adminsettingsflags label{margin-left:7px}.form-description{clear:right}.dir-rtl .form-description{clear:left}.form-item .form-setting .form-htmlarea{display:inline;width:640px}.form-item .form-setting .form-htmlarea .htmlarea{display:block;width:640px}.form-item .form-setting .form-multicheckbox ul{padding:0;margin:7px 0 0 0;list-style:none}.form-item .form-setting .defaultsnext{display:inline;margin-right:.5em}.dir-rtl .form-item .form-setting .defaultsnext{margin-right:0;margin-left:.5em}.form-item .form-setting .locked-checkbox{display:inline;margin-right:.2em;margin-left:.5em}.dir-rtl .form-item .form-setting .locked-checkbox{display:inline;margin-right:.5em;margin-left:.2em}.form-item .form-setting .form-password .unmask,.form-item .form-setting .form-defaultinfo{display:inline-block}.form-item .pathok,.form-item .patherror{margin-left:.5em}#admin-devicedetectregex table{border:0}#admin-emoticons td input{width:8em}#admin-emoticons td.c0 input{width:4em}#adminthemeselector .selectedtheme td.c0{border:1px solid;border-right-width:0}#adminthemeselector .selectedtheme td.c1{border:1px solid;border-left-width:0}.admin_colourpicker,.admin_colourpicker_preview{display:none}.jsenabled .admin_colourpicker_preview{display:inline}.jsenabled .admin_colourpicker{display:block;width:410px;height:102px;margin-bottom:10px}.admin_colourpicker .loadingicon{margin-left:auto;vertical-align:middle}.admin_colourpicker .colourdialogue{float:left;border:1px solid #000}.admin_colourpicker .previewcolour{margin-left:301px;border:1px solid #000}.admin_colourpicker .currentcolour{margin-left:301px;border:1px solid #000;border-top-width:0}.dir-rtl .form-item .form-setting,.dir-rtl .form-item .form-label,.dir-rtl .form-item .form-description,.dir-rtl.path-admin .roleassigntable p{text-align:right}#page-admin-index #notice .checkforupdates{text-align:center}#plugins-check-info{margin:1em;text-align:center}#plugins-check .displayname .pluginicon{width:16px}#plugins-check .status-new .status{background-color:#dff0d8}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity200 .info.release,#plugins-check .status-upgrade .status,#plugins-check .status-delete .status{background-color:#d9edf7}#plugins-control-panel .extension .source,#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity100 .info.release,#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity150 .info.release,.pluginupdateinfo.maturity100,.pluginupdateinfo.maturity150,#plugins-check .extension .source{background-color:#fcf8e3}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity50 .info.release,.pluginupdateinfo.maturity50,#plugins-check .requires-failed,#plugins-check .missingfromdisk .displayname,#plugins-check .status-missing .status,#plugins-check .status-downgrade .status{background-color:#f2dede}#plugins-control-panel .statusmsg{padding:3px;background-color:#eee;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}#plugins-control-panel .status-missing .pluginname{background-color:#f2dede}#plugins-control-panel .status-missing .statusmsg{color:#b94a48}#plugins-control-panel .status-new .pluginname{background-color:#dff0d8}#plugins-control-panel .status-new .statusmsg{color:#468847}#plugins-control-panel .disabled .availability{background-color:#eee}#plugins-check .standard .source,#plugins-check .status-nodb .status,#plugins-check .status-uptodate .status,#plugins-check .requires-ok{color:#999}#plugins-check .requires ul{margin:0;font-size:10.5px}#plugins-check .status .pluginupdateinfo{padding:5px 10px;margin:10px;background-color:#d9edf7;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}#plugins-check .status .pluginupdateinfo span,#plugins-check .status .pluginupdateinfo a{padding-right:1em}#page-admin-index .upgradepluginsinfo{text-align:center}#page-admin-plugins .checkforupdates{margin:0 auto 1em;text-align:center}#plugins-control-panel .requiredby,#plugins-control-panel .pluginname .componentname{font-size:11.9px;color:#999}#plugins-control-panel .pluginname .componentname{margin-left:22px}#plugins-overview-filter .filter-item,#plugins-overview-panel .info{padding:0 10px}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo .separator,#plugins-check .status .pluginupdateinfo .separator,#page-admin-plugins .separator{border-left:1px dotted #999}#plugins-control-panel .msg td{text-align:center}#plugins-overview-filter,#plugins-overview-panel{margin:1em auto;text-align:center}#plugins-overview-panel .info.updatable{margin-left:10px;font-weight:bold;background-color:#d9edf7;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}#plugins-overview-filter .filter-item.active{font-weight:bold}#plugins-control-panel .displayname img.icon{padding-top:0;padding-bottom:0}#plugins-control-panel .uninstall a{color:#b94a48}#plugins-control-panel .notes .pluginupdateinfo{padding:5px 10px;margin:10px;background-color:#d9edf7;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}#plugins-control-panel .notes .pluginupdateinfo span,#plugins-control-panel .notes .pluginupdateinfo a{padding-right:1em}.dir-rtl #plugins-check .pluginupdateinfo{text-align:center;direction:ltr}.dir-rtl #plugins-check .rootdir,.dir-rtl #plugins-check .requires-ok{text-align:left;direction:ltr}#page-admin-mnet-peers .box.deletedhosts{margin-bottom:1em;font-size:11.9px}#page-admin-mnet-peers .mform .certdetails{background-color:white}#page-admin-mnet-peers .mform .deletedhostinfo{padding:4px;margin-bottom:5px;background-color:#f2dede;border:2px solid #eed3d7}#core-cache-plugin-summaries table,#core-cache-store-summaries table{width:100%}#core-cache-lock-summary table,#core-cache-definition-summaries table,#core-cache-mode-mappings table{margin:0 auto}#core-cache-store-summaries .default-store td{font-style:italic;color:#333}#core-cache-rescan-definitions,#core-cache-mode-mappings .edit-link,#core-cache-lock-summary .new-instance{margin-top:.5em;text-align:center}.tinymcesubplugins img.icon{padding-top:0;padding-bottom:0}#page-admin-roles-assign div.box.generalbox{padding:8px 35px 8px 14px;margin-bottom:20px;color:#c09853;color:#b94a48;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;background-color:#f2dede;border:1px solid #fbeed5;border-color:#eed3d7;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.calendartable{width:100%}.calendartable th,.calendartable td{width:14%;text-align:center;vertical-align:top;border:0}.calendar_event_course{background-color:#ffd3bd}.calendar_event_global{background-color:#d6f8cd}.calendar_event_group{background-color:#fee7ae}.calendar_event_user{background-color:#dce7ec}.path-calendar .calendar-controls .previous,.path-calendar .calendar-controls .next,.path-calendar .calendar-controls .current{display:block;float:left;width:12%}.path-calendar .calendar-controls .previous{text-align:left}.path-calendar .calendar-controls .current{width:76%;text-align:center}.path-calendar .calendar-controls .next{text-align:right}.path-calendar .maincalendar{padding:0;vertical-align:top}.path-calendar .maincalendar .bottom{padding:5px 0 0 0;text-align:center}.path-calendar .maincalendar .heightcontainer{position:relative;height:100%}.path-calendar .maincalendar .calendarmonth{width:98%;margin:10px auto}.path-calendar .maincalendar .calendarmonth ul{margin:0}.path-calendar .maincalendar .calendarmonth ul li{margin-top:4px;list-style-type:none}.path-calendar .maincalendar .calendarmonth td{height:5em}.path-calendar .maincalendar .calendar-controls .previous,.path-calendar .maincalendar .calendar-controls .next{width:30%}.path-calendar .maincalendar .calendar-controls .current{width:39.95%}.path-calendar .maincalendar .controls{width:98%;margin:10px auto}.path-calendar .maincalendar .eventlist .event{width:100%;margin-bottom:10px;border-collapse:separate;border-spacing:0;border-style:solid;border-width:1px}.path-calendar .maincalendar .eventlist .event .topic .name{float:left}.dir-rtl.path-calendar .maincalendar .eventlist .event .topic .name,.path-calendar .maincalendar .eventlist .event .topic .date{float:right}.dir-rtl.path-calendar .maincalendar .eventlist .event .topic .date{float:left}.path-calendar .maincalendar .eventlist .event .subscription,.path-calendar .maincalendar .eventlist .event .course{float:left;clear:left}.dir-rtl.path-calendar .maincalendar .eventlist .event .subscription,.dir-rtl.path-calendar .maincalendar .eventlist .event .course{float:right;clear:right}.path-calendar .maincalendar .eventlist .event .side{width:32px}.path-calendar .maincalendar .eventlist .event .commands a{margin:0 3px}.path-calendar .maincalendar .header{overflow:hidden}.path-calendar .maincalendar .header .buttons{float:right}.dir-rtl.path-calendar .maincalendar .header .buttons{float:left}.path-calendar .filters table{width:100%;border-collapse:separate;border-spacing:2px}#page-calendar-export .indent{padding-left:20px}.path-calendar .cal_courses_flt label{margin-right:.45em}.dir-rtl.path-calendar .cal_courses_flt label{margin-right:0;margin-left:.45em}.block .minicalendar th,.block .minicalendar td{padding:2px;font-size:.8em}.block .minicalendar{max-width:280px;margin-right:auto;margin-left:auto}.block .minicalendar td.weekend{color:#A00}.block .calendar-controls .previous{display:block;float:left;width:12%;text-align:left}.block .calendar-controls .current{display:block;float:left;width:76%;text-align:center}.block .calendar-controls .next{display:block;float:left;width:12%;text-align:right}.block .calendar_filters ul{margin:0;list-style:none}.block .calendar_filters li{margin-bottom:.2em}.block .calendar_filters li span img{padding:0 .2em}.block .calendar_filters .eventname{padding-left:.2em}.dir-rtl .block .calendar_filters .eventname{padding-right:.2em;padding-left:0}.block .content h3.eventskey{margin-top:.5em}@media(min-width:768px){#page-calender-view .container fluid{min-width:1024px}}.section_add_menus{text-align:right}.dir-rtl .section_add_menus{text-align:left}.section_add_menus .horizontal div,.section_add_menus .horizontal form{display:inline}.section_add_menus optgroup{font-style:italic;font-weight:normal}.section_add_menus .urlselect{margin-left:.4em}.dir-rtl .section_add_menus .urlselect{margin-right:.4em;margin-left:0}.section_add_menus .urlselect select{margin-left:.2em}.dir-rtl .section_add_menus .urlselect select{margin-right:.2em;margin-left:0}.section_add_menus .urlselect img.iconhelp{padding:0;margin:0;vertical-align:text-bottom}.site-topic ul.section,.course-content ul.section{margin:1em}.section .activity img.activityicon{margin-right:6px}.dir-rtl .section .activity img.activityicon{margin-right:0;margin-left:6px}.section .activity .activityinstance,.section .activity .activityinstance div{display:inline-block}.editing .section .activity .activityinstance{min-width:40%}.section .activity .activityinstance>a{display:block}.editing_show+.editing_assign,.editing_hide+.editing_assign{margin-left:20px}.section .activity .commands{display:inline;white-space:nowrap}.section .activity.modtype_label .commands{padding-left:22px;margin-left:40%}.section .activity.modtype_label.label{font-weight:normal}.section li.activity{padding:.2em;clear:both}.section .activity .activityinstance .groupinglabel{padding-left:30px}.dir-rtl .section .activity .activityinstance .groupinglabel{padding-right:30px}.section .activity .availabilityinfo,.section .activity .contentafterlink{margin-top:.5em;margin-left:30px}.dir-rtl .section .activity .availabilityinfo,.dir-rtl .section .activity .contentafterlink{margin-right:30px;margin-left:0}.section .activity .contentafterlink p{margin:.5em 0}.editing .section .activity:hover,.editing .section .activity.action-menu-shown{background-color:#eee}.course-content .current{background-color:#d9edf7}.course-content .section-summary{margin-top:5px;list-style:none;border:1px solid #DDD}.course-content .section-summary .section-title{margin:2px 5px 10px 5px}.course-content .section-summary .summarytext{margin:2px 5px 2px 5px}.course-content .section-summary .section-summary-activities .activity-count{display:inline-block;margin:3px;font-size:11.9px;color:#999;white-space:nowrap}.course-content .section-summary .summary{margin-top:5px}.course-content .single-section{margin-top:1em}.course-content .single-section .section-navigation{display:block;padding:.5em;margin-bottom:-0.5em}.course-content .single-section .section-navigation .title{clear:both;font-size:108%;font-weight:bold}.course-content .single-section .section-navigation .mdl-left{float:left;margin-right:1em;font-weight:normal}.dir-rtl .course-content .single-section .section-navigation .mdl-left{float:right}.course-content .single-section .section-navigation .mdl-left .larrow{margin-right:.1em}.course-content .single-section .section-navigation .mdl-right{float:right;margin-left:1em;font-weight:normal}.dir-rtl .course-content .single-section .section-navigation .mdl-right{float:left}.course-content .single-section .section-navigation .mdl-right .rarrow{margin-left:.1em}.course-content .single-section .section-navigation .mdl-bottom{margin-top:0}.course-content ul li.section.main{margin-top:0;border-bottom:2px solid #eee}.course-content ul li.section.hidden{opacity:.5}.course-content ul.topics li.section .content,.course-content ul.weeks li.section .content{padding:0;margin-right:20px;margin-left:20px}.course-content{margin-top:0}.course-content ul.topics li.section{padding-bottom:20px}.course-content ul.topics li.section .summary{margin-left:25px}.path-course-view .completionprogress{margin-left:25px}.path-course-view .completionprogress{position:relative;z-index:1000;display:block;float:right;height:20px}#page-site-index .subscribelink{text-align:right}#page-site-index .headingblock{margin-bottom:9px}.path-course-view a.reduce-sections{padding-left:.2em}.path-course-view .headingblock{margin-bottom:9px}.path-course-view .subscribelink{text-align:right}.path-course-view .unread{margin-left:30px}.dir-rtl.path-course-view .unread{margin-right:30px}.path-course-view .block.drag .header{cursor:move}.path-course-view .completionprogress{text-align:right}.dir-rtl.path-course-view .completionprogress{text-align:left}.path-course-view .single-section .completionprogress{margin-right:5px}.path-course-view .section .summary{line-height:normal}.path-site li.activity>div,.path-course-view li.activity>div{position:relative}.path-course-view li.activity span.autocompletion,.path-course-view li.activity form.togglecompletion{float:right}.path-course-view li.activity form.togglecompletion .ajaxworking{width:16px;height:16px;background:url([[pix:i/ajaxloader]]) no-repeat}.dir-rtl.path-course-view li.activity form.togglecompletion,.dir-rtl.path-course-view li.activity span.autocompletion{float:left}.dir-rtl.path-course-view .completionprogress{float:none}.dir-rtl.path-course-view li.activity form.togglecompletion .ajaxworking{right:-22px}li.section.hidden span.commands a.editing_hide,li.section.hidden span.commands a.editing_show{cursor:default}ul.weeks h3.sectionname{white-space:nowrap}.editing ul.weeks h3.sectionname{white-space:normal}.single-section h3.sectionname{clear:both;text-align:center}.section img.movetarget{width:80px;height:16px}input.titleeditor{width:330px;vertical-align:text-bottom}span.editinstructions{position:absolute;top:0;left:0;z-index:9999;padding:.1em .4em;margin-top:-22px;margin-left:30px;font-size:11.9px;line-height:16px;color:#3a87ad;text-decoration:none;background-color:#d9edf7;border:1px solid #bce8f1;-webkit-box-shadow:2px 2px 5px 1px #ccc;-moz-box-shadow:2px 2px 5px 1px #ccc;box-shadow:2px 2px 5px 1px #ccc}.dir-rtl span.editinstructions{right:32px;left:auto}#dndupload-status{position:absolute;z-index:9999;z-index:0;width:40%;padding:6px;margin:0 30%;color:#3a87ad;text-align:center;background:#d9edf7;border:1px solid #bce8f1;-webkit-border-bottom-right-radius:8px;border-bottom-right-radius:8px;-webkit-border-bottom-left-radius:8px;border-bottom-left-radius:8px;-moz-border-radius-bottomright:8px;-moz-border-radius-bottomleft:8px;-webkit-box-shadow:2px 2px 5px 1px #ccc;-moz-box-shadow:2px 2px 5px 1px #ccc;box-shadow:2px 2px 5px 1px #ccc}.dndupload-preview{padding:.3em;margin-top:.2em;color:#909090;list-style:none;border:1px dashed #909090}.dndupload-preview img.icon{padding:0;vertical-align:text-bottom}.dndupload-progress-outer{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#fff9f9f9',GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.dndupload-progress-inner{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf',endColorstr='#ff0480be',GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.dndupload-hidden{display:none}#page-course-pending .singlebutton,#page-course-index .singlebutton,#page-course-index-category .singlebutton,#page-course-editsection .singlebutton{text-align:center}#page-admin-course-manage #movecourses td img{margin:0 .22em;vertical-align:text-bottom}#page-admin-course-manage #movecourses td img.icon{padding:0}#coursesearch{margin-top:1em;text-align:center}#page-course-pending .pendingcourserequests{margin-bottom:1em}#page-course-pending .pendingcourserequests .singlebutton{display:inline}#page-course-pending .pendingcourserequests .cell{padding:0 5px}#page-course-pending .pendingcourserequests .cell.c6{white-space:nowrap}.coursebox{padding:5px;margin-bottom:15px;border:1px dotted #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.coursebox>.info>.name a{display:block;padding-left:21px;background-image:url([[pix:moodle|i/course]]);background-position:center left;background-repeat:no-repeat}.coursebox.remotehost>.info>.name a{background-image:url([[pix:moodle|i/mnethost]])}.coursebox>.info>.name,.coursebox .content .teachers,.coursebox .content .courseimage,.coursebox .content .coursefile{float:left;width:40%;clear:left}.coursebox>.info>h3.name{margin:5px}.coursebox>.info>.name{padding:0;margin:5px}.coursebox .content .teachers li{padding:0;margin:0;list-style-type:none}.coursebox .enrolmenticons{float:right;padding:3px 0}.coursebox .moreinfo{float:right;padding:3px 0}.coursebox .enrolmenticons img,.coursebox .moreinfo img{margin:0 .2em}.coursebox .content{clear:both}.coursebox .content .summary,.coursebox .content .coursecat{float:right;width:55%}.coursebox .content .coursecat{clear:right;text-align:right}.coursebox.remotecoursebox .remotecourseinfo{float:left;width:40%}.coursebox .content .courseimage img{max-width:100px;max-height:100px}.coursebox .content .coursecat,.coursebox .content .summary,.coursebox .content .courseimage,.coursebox .content .coursefile,.coursebox .content .teachers,.coursebox.remotecoursebox .remotecourseinfo{padding:0;margin:3px 5px}.dir-rtl .coursebox>.info>.name a{padding-right:21px;padding-left:0;background-position:center right}.dir-rtl .coursebox>.info>.name,.dir-rtl .coursebox .teachers,.dir-rtl .coursebox .content .courseimage,.dir-rtl .coursebox .content .coursefile{float:right;clear:right}.dir-rtl .coursebox .enrolmenticons,.dir-rtl .coursebox .moreinfo{float:left}.dir-rtl .coursebox .summary,.dir-rtl .coursebox .coursecat{float:left}.dir-rtl .coursebox .coursecat{clear:left;text-align:left}.coursebox.collapsed{margin-bottom:0}.coursebox.collapsed>.content{display:none}.courses .coursebox.collapsed{padding:3px 0;border:1px solid #eee}.courses .coursebox.even{background-color:#f6f6f6}.courses .coursebox:hover,.course_category_tree .courses>.paging.paging-morelink:hover{background-color:#eee}.course_category_tree .category .numberofcourse{font-size:11.9px}.course_category_tree .controls{visibility:hidden}.course_category_tree .controls div{display:inline;cursor:pointer}.jsenabled .course_category_tree .controls{visibility:visible}.course_category_tree .controls{float:right;margin-bottom:5px;text-align:right}.course_category_tree .controls div{padding-right:2em;font-size:75%}.course_category_tree .category>.info .name{padding:2px 18px;margin:3px;background-image:url([[pix:moodle|t/collapsed_empty]]);background-position:center left;background-repeat:no-repeat}.dir-rtl .course_category_tree .category>.info .name{background-image:url([[pix:moodle|t/collapsed_empty_rtl]]);background-position:center right}.course_category_tree .category.with_children>.info .name{background-image:url([[pix:moodle|t/expanded]])}.course_category_tree .category.with_children.collapsed>.info .name{background-image:url([[pix:moodle|t/collapsed]])}.dir-rtl .course_category_tree .category.with_children.collapsed>.info .name{background-image:url([[pix:moodle|t/collapsed_rtl]])}.course_category_tree .category.collapsed>.content{display:none}.course_category_tree .category>.info{min-height:20px;min-height:0;padding:19px;padding:0;margin:3px 0;margin-bottom:20px;margin-bottom:3px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.course_category_tree .category>.info blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.course_category_tree.frontpage-category-names .category>.info{margin:0;background:0;border:0}.course_category_tree .category>.content{padding-left:16px}.dir-rtl .course_category_tree .category>.content{padding-right:16px;padding-left:0}.course_category_tree .subcategories>.paging,.courses>.paging{padding:5px;margin:0;text-align:center}.courses>.paging.paging-morelink,.course_category_tree .subcategories>.paging.paging-morelink{text-align:left}.course_category_tree .paging.paging-morelink a{font-size:11.9px}.dir-rtl .courses>.paging.paging-morelink,.dir-rtl .course_category_tree .paging.paging-morelink{text-align:right}#page-course-index-category .generalbox.info{padding:5px;margin-bottom:15px;border:1px dotted #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}#page-course-index-category .categorypicker{margin:10px 0 20px;text-align:center}.section .activity .moodle-actionmenu .iconsmall{width:16px;width:1rem;height:16px;height:1rem;max-width:none!important;padding:.3em}.filemanager,.filepicker,.file-picker{font-size:11px}.filemanager a,.file-picker a,.filemanager a:hover,.file-picker a:hover{color:#555;text-decoration:none}.filemanager input[type="text"],.file-picker input[type="text"]{width:265px}.filemanager .fp-license td,.file-picker .fp-setlicense td{max-width:265px}.filemanager .fp-license select,.file-picker .fp-setlicense select{max-width:100%}.fp-content-center{display:table-cell;width:100%;height:100%;vertical-align:middle}.fp-content-hidden{visibility:hidden}.yui3-panel-focused{outline:0}#filesskin .yui3-panel-content{display:inline-block;*display:inline;padding-bottom:20px;background:#f2f2f2;border:1px solid #fff;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;*zoom:1;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}#filesskin .yui3-widget-hd{padding:5px;font-size:12px;letter-spacing:1px;color:#333;text-align:center;text-shadow:1px 1px 1px #fff;background-color:#ebebeb;background-image:-moz-linear-gradient(top,#fff,#ccc);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#ccc));background-image:-webkit-linear-gradient(top,#fff,#ccc);background-image:-o-linear-gradient(top,#fff,#ccc);background-image:linear-gradient(to bottom,#fff,#ccc);background-repeat:repeat-x;border-bottom:1px solid #bbb;-webkit-border-radius:10px 10px 0 0;-moz-border-radius:10px 10px 0 0;border-radius:10px 10px 0 0;filter:dropshadow(color=#ffffff,offx=1,offy=1);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffcccccc',GradientType=0)}.fp-panel-button{display:inline-block;*display:inline;padding:3px 20px 2px 20px;margin:10px;text-align:center;background:#fff;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;*zoom:1;-webkit-box-shadow:2px 2px 3px .1px #999;-moz-box-shadow:2px 2px 3px .1px #999;box-shadow:2px 2px 3px .1px #999}.filepicker .moodle-dialogue-wrap .moodle-dialogue-bd{padding:0}#filesskin .file-picker.fp-generallayout{position:relative;width:859px;background:#fff;border:1px solid #ccc;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.file-picker .fp-repo-area{display:inline-block;*display:inline;float:left;width:180px;height:525px;overflow:auto;border-right:1px solid #bbb;*zoom:1}.dir-rtl .file-picker .fp-repo-area{float:right;border-right:0;border-left:1px solid #bbb}.file-picker .fp-repo-items{float:left;width:693px}.dir-rtl .file-picker .fp-repo-items{float:right}.file-picker .fp-navbar{min-height:22px;padding:5px 8px;background:#f2f2f2;border-bottom:1px solid #bbb}.file-picker .fp-content{height:468px;overflow:auto;clear:both;background:#fff}.filepicker.moodle-dialogue-fullscreen .file-picker .fp-content{width:100%;height:100%}.dir-rtl .file-picker .fp-repo-items{margin-right:181px}.file-picker .fp-content-loading{display:table;width:100%;height:100%;text-align:center}.file-picker .fp-content .fp-object-container{width:98%;height:98%}.dir-rtl .file-picker .fp-list{text-align:right}.dir-rtl .file-picker .fp-toolbar{padding:0}.dir-rtl .file-picker .fp-list{text-align:right}.dir-rtl .file-picker .fp-repo-name{display:inline}.dir-rtl .file-picker .fp-pathbar{display:block;text-align:right;border-top:0}.dir-rtl .file-picker div.bd{text-align:right}.dir-rtl #filemenu .yuimenuitemlabel{text-align:right}.dir-rtl .filepicker .yui-layout-unit-left{left:500px}.dir-rtl .filepicker .yui-layout-unit-center{left:0}.dir-rtl .filemanager-toolbar a{padding:0}.file-picker .fp-list{float:left;width:100%;padding:0;margin:0;list-style-type:none}.dir-rtl .file-picker .fp-list{float:left;text-align:right}.file-picker .fp-list .fp-repo a{display:block;padding:.5em .7em}.file-picker .fp-list .fp-repo.active{background:#f2f2f2}.file-picker .fp-list .fp-repo-icon{padding:0 7px 0 5px}.fp-toolbar{display:table-row;float:left;max-width:70%;line-height:22px}.dir-rtl .fp-toolbar{float:right}.fp-toolbar.empty{display:none}.fp-toolbar .disabled{display:none}.fp-toolbar div{display:inline-block;*display:inline;padding:0 2px;padding-right:10px;*zoom:1}.dir-rtl .fp-toolbar div{width:100px;padding-right:0}.fp-toolbar img{margin-right:5px;vertical-align:-15%}.fp-toolbar .fp-tb-search{width:228px;height:14px}.fp-toolbar .fp-tb-search input{width:200px;height:16px;padding:2px 6px 1px 20px;background:#fff url('[[pix:a/search]]') no-repeat 3px 3px;border:1px solid #bbb}.fp-viewbar{float:right;width:69px;height:22px;margin-right:8px}.dir-rtl .fp-toolbar img{vertical-align:-35%}.dir-rtl .fp-viewbar{float:left;width:100px}.fp-vb-icons{display:inline-block;*display:inline;width:22px;height:22px;background:url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0;*zoom:1}.dir-rtl .fp-vb-icons{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0}.fp-vb-icons.checked{background:url('[[pix:theme|fp/view_icon_selected]]')}.dir-rtl .fp-vb-icons.checked{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_icon_selected]]')}.fp-viewbar.disabled .fp-vb-icons{background:url('[[pix:theme|fp/view_icon_inactive]]')}.fp-vb-details{display:inline-block;*display:inline;width:23px;height:22px;margin-left:-4px;background:url('[[pix:theme|fp/view_list_active]]') no-repeat 0 0;*zoom:1}.dir-rtl .fp-vb-details{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_list_active]]') no-repeat 0 0}.fp-vb-details.checked{background:url('[[pix:theme|fp/view_list_selected]]')}.dir-rtl .fp-vb-details.checked{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_list_selected]]')}.fp-viewbar.disabled .fp-vb-details{background:url('[[pix:theme|fp/view_list_inactive]]')}.fp-vb-tree{display:inline-block;*display:inline;width:23px;height:22px;margin-left:-4px;background:url('[[pix:theme|fp/view_tree_active]]') no-repeat 0 0;*zoom:1}.dir-rtl .fp-vb-tree{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_tree_active]]') no-repeat 0 0}.fp-vb-tree.checked{background:url('[[pix:theme|fp/view_tree_selected]]')}.dir-rtl .fp-vb-tree.checked{display:block;float:left;margin-right:4px;background:url('[[pix:theme|fp/view_tree_selected]]')}.fp-viewbar.disabled .fp-vb-tree{background:url('[[pix:theme|fp/view_tree_inactive]]')}.file-picker .fp-clear-left{clear:left}.dir-rtl .filemanager-toolbar .fp-vb-icons a:hover{background:url('[[pix:theme|fp/view_icon_selected]]')}.dir-rtl .filemanager-toolbar .fp-vb-icons.checked a:hover{background:url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0}.dir-rtl .fp-vb-details a:hover{background:0;border:20px solid black}.dir-rtl .fp-vb-details.checked a:hover{background:0;border:40px solid black}.dir-rtl .fp-vb-tree a:hover{background:0;border:30px solid black}.dir-rtl .fp-vb-tree.checked a:hover{background:0;border:50px solid black}.file-picker .fp-pathbar{display:table-row}.fp-pathbar.empty{display:none}.fp-pathbar .fp-path-folder{width:27px;height:12px;margin-left:4px;background:url('[[pix:theme|fp/path_folder]]') no-repeat 0 0}.dir-rtl .fp-pathbar .fp-path-folder{width:auto;height:12px;margin-left:4px;background:url('[[pix:theme|fp/path_folder_rtl]]') no-repeat right top}.dir-rtl .fp-pathbar span{display:inline-block;*display:inline;float:right;margin-left:32px;*zoom:1}.fp-pathbar .fp-path-folder-name{margin-left:32px;line-height:20px}.dir-rtl .fp-pathbar .fp-path-folder-name{margin-right:32px;line-height:20px}.fp-iconview .fp-file{position:relative;float:left;margin:10px 10px 35px;text-align:center}.fp-iconview .fp-thumbnail{display:block;min-width:110px;min-height:110px;line-height:110px;text-align:center;border:1px solid #fff}.fp-iconview .fp-thumbnail img{padding:3px;vertical-align:middle;border:1px solid #ddd;-webkit-box-shadow:1px 1px 2px 0 #ccc;-moz-box-shadow:1px 1px 2px 0 #ccc;box-shadow:1px 1px 2px 0 #ccc}.fp-iconview .fp-thumbnail:hover{background:#fff;border:1px solid #ddd;-webkit-box-shadow:inset 0 0 10px 0 #ccc;-moz-box-shadow:inset 0 0 10px 0 #ccc;box-shadow:inset 0 0 10px 0 #ccc}.fp-iconview .fp-filename-field{position:absolute;height:33px;overflow:hidden;word-wrap:break-word}.fp-iconview .fp-filename-field:hover{z-index:1000;overflow:visible}.fp-iconview .fp-filename-field .fp-filename{min-width:112px;padding-top:5px;padding-bottom:12px;background:#fff}.dir-rtl .fp-iconview .fp-file{float:right}.file-picker .yui3-datatable table{width:100%;border:0 solid #bbb}#filesskin .file-picker .yui3-datatable-header{color:#555;background:#fff;border-bottom:1px solid #ccc;border-left:0 solid #fff}#filesskin .file-picker .yui3-datatable-odd .yui3-datatable-cell{background-color:#f6f6f6;border-left:0 solid #f6f6f6}#filesskin .file-picker .yui3-datatable-even .yui3-datatable-cell{background-color:#fff;border-left:0 solid #fff}.dir-rtl .file-picker .yui3-datatable-header{text-align:right}.file-picker .ygtvtn,.filemanager .ygtvtn{width:17px;height:22px;background:url('[[pix:moodle|y/tn]]') 0 0 no-repeat}.dir-rtl .filemanager .ygtvtn,.dir-rtl .file-picker .ygtvtn{width:17px;height:22px;background:url('[[pix:moodle|y/tn_rtl]]') 0 0 no-repeat}.file-picker .ygtvtm,.filemanager .ygtvtm{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/tm]]') 0 10px no-repeat}.file-picker .ygtvtmh,.filemanager .ygtvtmh{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/tm]]') 0 10px no-repeat}.file-picker .ygtvtp,.filemanager .ygtvtp{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/tp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvtp,.dir-rtl .filemanager .ygtvtp{background:url('[[pix:moodle|y/tp_rtl]]') 0 10px no-repeat}.file-picker .ygtvtph,.filemanager .ygtvtph{width:13px;height:22px;cursor:pointer;background:url('[[pix:moodle|y/tp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvtph,.dir-rtl .filemanager .ygtvtph{background:url('[[pix:moodle|y/tp_rtl]]') 0 10px no-repeat}.file-picker .ygtvln,.filemanager .ygtvln{width:17px;height:22px;background:url('[[pix:moodle|y/ln]]') 0 0 no-repeat}.dir-rtl .file-picker .ygtvln,.dir-rtl .filemanager .ygtvln{background:url('[[pix:moodle|y/ln_rtl]]') 0 0 no-repeat}.file-picker .ygtvlm,.filemanager .ygtvlm{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lm]]') 0 10px no-repeat}.file-picker .ygtvlmh,.filemanager .ygtvlmh{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lm]]') 0 10px no-repeat}.file-picker .ygtvlp,.filemanager .ygtvlp{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvlp,.dir-rtl .filemanager .ygtvlp{background:url('[[pix:moodle|y/lp_rtl]]') 0 10px no-repeat}.file-picker .ygtvlph,.filemanager .ygtvlph{width:13px;height:12px;cursor:pointer;background:url('[[pix:moodle|y/lp]]') 0 10px no-repeat}.dir-rtl .file-picker .ygtvlph,.dir-rtl .filemanager .ygtvlph{background:url('[[pix:moodle|y/lp_rtl]]') 0 10px no-repeat}.file-picker .ygtvloading,.filemanager .ygtvloading{width:16px;height:22px;background:transparent url('[[pix:moodle|y/loading]]') 0 0 no-repeat}.file-picker .ygtvdepthcell,.filemanager .ygtvdepthcell{width:17px;height:32px;background:url('[[pix:moodle|y/vline]]') 0 0 no-repeat}.file-picker .ygtvblankdepthcell,.filemanager .ygtvblankdepthcell{width:17px;height:22px}a.ygtvspacer:hover{color:transparent;text-decoration:none}.ygtvlabel,.ygtvlabel:link,.ygtvlabel:visited,.ygtvlabel:hover{margin-left:2px;text-decoration:none;cursor:pointer;background-color:transparent}.file-picker .ygtvfocus,.filemanager .ygtvfocus{background-color:#eee}.fp-filename-icon{position:relative;display:block;margin-top:10px}.fp-icon{float:left;width:24px;height:24px;margin-top:-7px;margin-right:10px;line-height:24px;text-align:center}.dir-rtl .fp-icon{float:right;margin-right:0;margin-left:10px}.fp-icon img{max-width:24px;max-height:24px;vertical-align:middle}.fp-filename{padding-right:10px}.dir-rtl .fp-filename{padding-right:0;padding-left:10px}.file-picker .fp-login-form{display:table;width:100%;height:100%}.file-picker .fp-login-form table{margin:0 auto}.file-picker .fp-login-form p{margin-top:3em;text-align:center}.file-picker .fp-login-form .fp-login-input label{display:block;text-align:right}.file-picker .fp-login-form .fp-login-input .input{text-align:left}.file-picker .fp-login-form input[type="checkbox"]{width:15px;height:15px}.file-picker .fp-upload-form{display:table;width:100%;height:100%}.file-picker .fp-upload-form table{margin:0 auto}.file-picker.fp-dlg{text-align:center}.file-picker.fp-dlg .fp-dlg-text{padding:30px 20px 10px;font-size:12px}.file-picker.fp-dlg .fp-dlg-buttons{margin:0 20px}.file-picker.fp-msg{text-align:center}.file-picker.fp-msg .fp-msg-text{max-width:500px;max-height:300px;min-width:200px;padding:40px 20px 10px 20px;overflow:auto;font-size:12px}.file-picker.fp-msg.fp-msg-error .fp-msg-text{padding:40px 20px 10px 20px;font-size:12px}.file-picker .fp-content-error{display:table;width:100%;height:100%;text-align:center}.file-picker .fp-content-error .fp-error{display:table-cell;width:100%;height:100%;padding:40px 20px 10px 20px;font-size:12px;vertical-align:middle}.file-picker .fp-nextpage{clear:both}.file-picker .fp-nextpage .fp-nextpage-loading{display:none}.file-picker .fp-nextpage.loading .fp-nextpage-link{display:none}.file-picker .fp-nextpage.loading .fp-nextpage-loading{display:block;height:100px;padding-top:50px;text-align:center}.fp-select form{padding:20px 20px 0}.fp-select .fp-select-loading{margin-top:20px;text-align:center}.fp-select .fp-hr{width:auto;height:1px;margin:10px 0;clear:both;background-color:#fff;border-bottom:1px solid #bbb}.fp-select table{padding:0 0 10px}.fp-select table .mdl-right{min-width:84px}.fp-select .fp-reflist .mdl-right{vertical-align:top}.fp-select .fp-select-buttons{float:right}.fp-select .fp-info{display:block;padding:1px 20px 0;clear:both}.fp-select .fp-thumbnail{float:left;min-width:110px;min-height:110px;margin:10px 20px 0 0;line-height:110px;text-align:center;background:#fff;border:1px solid #ddd;-webkit-box-shadow:inset 0 0 10px 0 #ccc;-moz-box-shadow:inset 0 0 10px 0 #ccc;box-shadow:inset 0 0 10px 0 #ccc}.fp-select .fp-thumbnail img{padding:3px;margin:10px;vertical-align:middle;border:1px solid #ddd}.fp-select .fp-fileinfo{display:inline-block;*display:inline;margin-top:10px;*zoom:1}.file-picker.fp-select .fp-fileinfo{max-width:240px}.fp-select .fp-fileinfo div{padding-bottom:5px}.file-picker.fp-select .uneditable{display:none}.file-picker.fp-select .fp-select-loading{display:none}.file-picker.fp-select.loading .fp-select-loading{display:block}.file-picker.fp-select.loading form{display:none}.fp-select .fp-dimensions.fp-unknown{display:none}.filemanager-loading{display:none}.jsenabled .filemanager-loading{display:block;margin-top:100px}.filemanager.fm-loading .filemanager-toolbar,.filemanager.fm-loading .fp-pathbar,.filemanager.fm-loading .filemanager-container,.filemanager.fm-loaded .filemanager-loading,.filemanager.fm-maxfiles .fp-btn-add,.filemanager.fm-maxfiles .dndupload-message,.filemanager.fm-noitems .fp-btn-download,.filemanager .fm-empty-container,.filemanager.fm-noitems .filemanager-container .fp-content{display:none}.filemanager .filemanager-updating{display:none;text-align:center}.filemanager.fm-updating .filemanager-updating{display:block;margin-top:37px}.filemanager.fm-updating .fm-content-wrapper,.filemanager.fm-nomkdir .fp-btn-mkdir,.fitem.disabled .filemanager .filemanager-toolbar,.fitem.disabled .filemanager .fp-pathbar,.fitem.disabled .filemanager .fp-restrictions,.fitem.disabled .filemanager .fm-content-wrapper{display:none}.fp-restrictions{text-align:right}.filemanager .fp-navbar{background:#f2f2f2;border:1px solid #bbb;border-bottom:0}.filemanager-toolbar{min-height:22px;padding:5px 8px;overflow:hidden}.fp-pathbar{min-height:20px;padding:5px 8px 1px;border-top:1px solid #bbb}.filemanager .fp-pathbar.empty{display:none}.filepicker-filelist,.filemanager-container{position:relative;min-height:140px;overflow:auto;clear:both;background:#fff;border:1px solid #bbb}.filemanager .fp-content{max-height:472px;min-height:157px;overflow:auto}.filemanager-container,.filepicker-filelist{overflow:hidden}.fitem.disabled .filepicker-filelist,.fitem.disabled .filemanager-container{background-color:#ebebe4}.fitem.disabled .fp-btn-choose{color:#999}.fitem.disabled .filepicker-filelist .filepicker-filename{display:none}.fp-iconview .fp-reficons1{position:absolute;top:0;left:0;width:100%;height:100%}.fp-iconview .fp-reficons2{position:absolute;top:0;left:0;width:100%;height:100%}.fp-iconview .fp-file.fp-hasreferences .fp-reficons1{background:url('[[pix:theme|fp/link]]') no-repeat;background-position:bottom right}.fp-iconview .fp-file.fp-isreference .fp-reficons2{background:url('[[pix:theme|fp/alias]]') no-repeat;background-position:bottom left}.filemanager .fp-iconview .fp-file.fp-originalmissing .fp-thumbnail img{display:none}.filemanager .fp-iconview .fp-file.fp-originalmissing .fp-thumbnail{background:url([[pix:s/dead]]) no-repeat;background-position:center center}.filemanager .yui3-datatable table{width:100%;border:0 solid #bbb}.filemanager .yui3-datatable-header{color:#555!important;background:#fff!important;border-bottom:1px solid #ccc!important;border-left:0 solid #fff!important}.filemanager .yui3-datatable-odd .yui3-datatable-cell{background-color:#f6f6f6!important;border-left:0 solid #f6f6f6}.filemanager .yui3-datatable-even .yui3-datatable-cell{background-color:#fff!important;border-left:0 solid #fff}.filemanager .fp-filename-icon.fp-hasreferences .fp-reficons1{position:absolute;top:8px;left:17px;z-index:1000;width:100%;height:100%;background:url('[[pix:theme|fp/link_sm]]') no-repeat 0 0}.filemanager .fp-filename-icon.fp-isreference .fp-reficons2{position:absolute;top:9px;left:-6px;z-index:1001;width:100%;height:100%;background:url('[[pix:theme|fp/alias_sm]]') no-repeat 0 0}.filemanager .fp-contextmenu{display:none}.filemanager .fp-iconview .fp-folder.fp-hascontextmenu .fp-contextmenu{position:absolute;right:7px;bottom:5px;display:block}.filemanager .fp-treeview .fp-folder.fp-hascontextmenu .fp-contextmenu,.filemanager .fp-tableview .fp-folder.fp-hascontextmenu .fp-contextmenu{position:absolute;top:6px;left:14px;display:inline;margin-right:-20px}.dir-rtl .filemanager .fp-iconview .fp-folder.fp-hascontextmenu .fp-contextmenu{right:inherit;left:7px}.dir-rtl .filemanager .fp-treeview .fp-folder.fp-hascontextmenu .fp-contextmenu,.dir-rtl .filemanager .fp-tableview .fp-folder.fp-hascontextmenu .fp-contextmenu{right:16px;left:inherit;margin-right:0}.filepicker-filelist .filepicker-container,.filemanager.fm-noitems .fm-empty-container{position:absolute;top:10px;right:10px;bottom:10px;left:10px;display:block;padding-top:85px;text-align:center;border:2px dashed #bbb}.filepicker-filelist .dndupload-target,.filemanager-container .dndupload-target{position:absolute;top:10px;right:10px;bottom:10px;left:10px;padding-top:85px;text-align:center;background:#fff;border:2px dashed #fb7979;-webkit-box-shadow:0 0 0 10px #fff;-moz-box-shadow:0 0 0 10px #fff;box-shadow:0 0 0 10px #fff}.filepicker-filelist.dndupload-over .dndupload-target,.filemanager-container.dndupload-over .dndupload-target{position:absolute;top:10px;right:10px;bottom:10px;left:10px;padding-top:85px;text-align:center;background:#fff;border:2px dashed #6c8cd3}.dndupload-message{display:none}.dndsupported .dndupload-message{display:inline}.dnduploadnotsupported-message{display:none}.dndnotsupported .dnduploadnotsupported-message{display:inline}.dndupload-target{display:none}.dndsupported .dndupload-ready .dndupload-target{display:block}.dndupload-uploadinprogress{display:none;text-align:center}.dndupload-uploading .dndupload-uploadinprogress{display:block}.dndupload-arrow{position:absolute;top:5px;width:100%;height:80px;margin-left:-28px;background:url([[pix:theme|fp/dnd_arrow]]) center no-repeat}.fitem.disabled .filepicker-container,.fitem.disabled .fm-empty-container{display:none}.dndupload-progressbars{display:none;padding:10px}.dndupload-inprogress .dndupload-progressbars{display:block}.dndupload-inprogress .fp-content{display:none}.filemanager.fm-noitems .dndupload-inprogress .fm-empty-container{display:none}.filepicker-filelist.dndupload-inprogress .filepicker-container{display:none}.filepicker-filelist.dndupload-inprogress a{display:none}.filemanager.fp-select .fp-select-loading{display:none}.filemanager.fp-select.loading .fp-select-loading{display:block}.filemanager.fp-select.loading form{display:none}.filemanager.fp-select.fp-folder .fp-license,.filemanager.fp-select.fp-folder .fp-author,.filemanager.fp-select.fp-file .fp-file-unzip,.filemanager.fp-select.fp-folder .fp-file-unzip,.filemanager.fp-select.fp-file .fp-file-zip,.filemanager.fp-select.fp-zip .fp-file-zip{display:none}.filemanager.fp-select .fp-file-setmain{display:none}.filemanager.fp-select.fp-cansetmain .fp-file-setmain{display:inline-block;*display:inline;*zoom:1}.filemanager .fp-mainfile .fp-filename{font-weight:bold}.filemanager.fp-select.fp-folder .fp-file-download{display:none}.fm-operation{font-weight:bold}.filemanager.fp-select .fp-original.fp-unknown,.filemanager.fp-select .fp-original .fp-originloading{display:none}.filemanager.fp-select .fp-original.fp-loading .fp-originloading{display:inline}.filemanager.fp-select .fp-reflist.fp-unknown,.filemanager.fp-select .fp-reflist .fp-reflistloading{display:none}.filemanager.fp-select .fp-refcount{max-width:265px}.filemanager.fp-select .fp-reflist.fp-loading .fp-reflistloading{display:inline}.filemanager.fp-select .fp-reflist .fp-value{max-width:265px;max-height:75px;padding:8px 7px;margin:0;overflow:auto;background:#f9f9f9;border:1px solid #bbb}.filemanager.fp-select .fp-reflist .fp-value li{padding-bottom:7px}.filemanager.fp-mkdir-dlg{text-align:center}.filemanager.fp-mkdir-dlg .fp-mkdir-dlg-text{margin:20px;text-align:left}.dir-rtl .filemanager .fp-mkdir-dlg p{text-align:right}.filemanager.fp-dlg{text-align:center}.filemanager.fp-dlg .fp-dlg-text{max-width:340px;max-height:300px;min-width:200px;padding:0 10px;margin:40px 20px 20px;overflow:auto;font-size:12px;line-height:22px}.file-picker div.bd{text-align:left}.dir-rtl .file-picker div.bd,.dir-rtl .file-picker .fp-pathbar,.dir-rtl .file-picker .fp-list,.dir-rtl #filemenu .yuimenuitemlabel,.dir-rtl .filemanager-container .yui3-skin-sam .yui3-datatable-header{text-align:right}.dir-rtl .filepicker .yui-layout-unit-left{left:500px}.dir-rtl .filepicker .yui-layout-unit-center{left:0}.message-discussion-noframes h1{font-size:1em}.message-discussion-noframes #userinfo .commands,.message .noframesjslink,.message .link{font-size:11.9px}.message .heading{font-size:1em;font-weight:bold}.message .author{font-weight:bold}.message .time{font-style:italic}#page-message-user .commands span{font-size:.7em}#page-message-user .name{font-size:1.1em;font-weight:bold}table.message_search_results td{border-color:#ddd}.message .time,.message.me .author{color:#999}.message.other .author{color:#88c}#page-message-messages{padding:10px}#page-message-send .notifysuccess{padding:1px}#page-message-send td.fixeditor{text-align:center}.message .note{padding:10px}table.message .searchresults td{padding:5px}.message .contactselector{float:left;width:24%}.message .contactselector .contact{text-align:left}.message .contactselector .messageselecteduser{font-weight:bold}.message .contactselector .paging{position:relative;z-index:1}.message .messagearea{float:right;width:74%;min-height:200px;padding-left:1%;border-left:1px solid #d3d3d3}.message .messagearea .messagehistorytype{padding-bottom:20px;clear:both}.message .messagearea .messagehistory .message_user_pictures{margin-right:auto;margin-left:auto}.message .messagearea .messagehistory .message_user_pictures #user1{width:200px;vertical-align:top}.message .messagearea .messagehistory .message_user_pictures #user2{width:200px;vertical-align:top}.message .messagearea .messagehistory .message_user_pictures .useractionlinks{font-size:.9em}.message .messagearea .messagehistory .heading{width:100%;clear:both}.message .messagearea .messagehistory .left{float:left;width:50%;padding-bottom:10px;clear:both}.message .messagearea .messagehistory .right{float:right;width:50%;padding-bottom:10px;clear:both}.message .messagearea .messagehistory .notification{padding:10px;margin-top:5px;background-color:#eee}.message .messagearea .messagesend{padding-top:20px;clear:both}.message .messagearea .messagesend .messagesendbox{width:100%}.message .messagearea .messagesend fieldset{padding:0;margin:0}.message .messagearea .messagerecent{width:100%;text-align:left}.message .messagearea .messagerecent .singlemessage{padding:10px;border-bottom:1px solid #d3d3d3}.message .messagearea .messagerecent .singlemessage .otheruser span{padding:5px}.message .messagearea .messagerecent .singlemessage .messagedate{float:right}.message .hiddenelement{display:none}.message .visible{display:inline}.message #usergroupselector.fieldset,.message #viewing{width:100%}.messagesearchresults{margin-bottom:40px}.messagesearchresults td{padding:0 10px 0 20px}.messagesearchresults td span{white-space:nowrap}.messagesearchresults td img.userpicture{padding-right:.45em;vertical-align:text-bottom}.dir-rtl .messagesearchresults td img.userpicture{padding-right:0;padding-left:.45em}.messagesearchresults td span img{padding:0 0 0 .45em;vertical-align:text-bottom}.dir-rtl .messagesearchresults td span img{padding:0 .45em 0 0}#newmessageoverlay{position:fixed;right:0;bottom:0;padding:20px;background-color:#d3d3d3;border:1px solid black}#newmessageoverlay #usermessage{padding:10px}.questionbank h2{margin-top:0}.questioncategories h3{margin-top:0}#chooseqtypebox{margin-top:1em}#chooseqtype h3{margin:0 0 .3em}#chooseqtype .instruction{display:none}#chooseqtype .fakeqtypes{border-top:1px solid silver}#chooseqtype .qtypeoption{margin-bottom:.5em}#chooseqtype label{display:block}#chooseqtype .qtypename img{padding:0 .3em}#chooseqtype .qtypename{display:inline-table;width:16em}#chooseqtype .qtypesummary{display:block;margin:0 2em}#chooseqtype .submitbuttons{margin:.7em 0;text-align:center}#qtypechoicecontainer{display:none}#qtypechoicecontainer_c.yui-panel-container.shadow .underlay{background:0}#qtypechoicecontainer.yui-panel .hd{letter-spacing:1px;color:#333;text-shadow:1px 1px 1px #fff;background-color:#ebebeb;background-image:-moz-linear-gradient(top,#fff,#ccc);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#ccc));background-image:-webkit-linear-gradient(top,#fff,#ccc);background-image:-o-linear-gradient(top,#fff,#ccc);background-image:linear-gradient(to bottom,#fff,#ccc);background-repeat:repeat-x;border:1px solid #ccc;border-bottom:1px solid #bbb;-webkit-border-top-right-radius:10px;border-top-right-radius:10px;-webkit-border-top-left-radius:10px;border-top-left-radius:10px;-moz-border-radius-topright:10px;-moz-border-radius-topleft:10px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffcccccc',GradientType=0)}#qtypechoicecontainer{font-size:12px;color:#333;background:#f2f2f2;border:1px solid #ccc;border-top:0 none;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}#chooseqtype{width:40em}#chooseqtypehead h3{margin:0;font-weight:normal}#chooseqtype .qtypes{position:relative;padding:.24em 0;border-bottom:1px solid #bbb}#chooseqtype .qtypeoption{padding:.3em .3em .3em 1.6em;margin-bottom:0}#chooseqtype .qtypeoption img{padding-right:.5em;padding-left:1em;vertical-align:text-bottom}#chooseqtype .selected{background-color:#fff;-webkit-box-shadow:0 0 10px 0 #ccc;-moz-box-shadow:0 0 10px 0 #ccc;box-shadow:0 0 10px 0 #ccc}#chooseqtype .instruction,#chooseqtype .qtypesummary{position:absolute;top:0;right:0;bottom:0;left:60%;display:none;padding:1.5em 1.6em;margin:0;overflow-y:auto;background-color:#fff}#chooseqtype .instruction,#chooseqtype .selected .qtypesummary{display:block}#categoryquestions{margin:0}#categoryquestions td,#categoryquestions th{padding:0 .2em}#categoryquestions th{font-weight:normal;text-align:left}#categoryquestions .checkbox{padding-left:20px}.dir-rtl #categoryquestions th{text-align:right}.questionbank .singleselect{margin:0}#combinedfeedbackhdr div.fhtmleditor{padding:0}#combinedfeedbackhdr div.fcheckbox{margin-bottom:1em}#multitriesheader div.fitem_feditor{margin-top:1em}#multitriesheader div.fitem_fgroup{margin-bottom:1em}#multitriesheader div.fitem_fgroup fieldset.felement label{margin-right:.3em;margin-left:.3em}body.path-question-type .fitem_fgroup .accesshide{position:static;left:0;padding-right:.3em;font:inherit}.que{margin:0 auto 1.8em auto;clear:left;text-align:left}.dir-rtl .que{text-align:right}.que .info{float:left;width:7em;padding:.5em;margin-bottom:1.8em;background-color:#eee;border:1px solid #dcdcdc;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.que h2.no{margin:0;font-size:.8em;line-height:1}.que span.qno{font-size:1.5em;font-weight:bold}.que .info>div{margin-top:.7em;font-size:.8em}.que .info .questionflag.editable{cursor:pointer}.que .info .editquestion img,.que .info .questionflag img,.que .info .questionflag input{vertical-align:bottom}.que .content{margin:0 0 0 8.5em}.que .formulation,.que .outcome,.que .comment{padding:8px 35px 8px 14px;margin-bottom:20px;color:#c09853;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.que .formulation{color:#3a87ad;color:#333;background-color:#d9edf7;border-color:#bce8f1}.formulation input[type="text"],.formulation select{width:auto}.path-mod-quiz input[size]{width:auto}.que .comment{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.que .history{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.que .history blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.que .ablock{margin:.7em 0 .3em 0}.que .im-controls{margin-top:.5em;text-align:left}.dir-rtl .que .im-controls{text-align:right}.que .specificfeedback,.que .generalfeedback,.que .rightanswer,.que .im-feedback,.que .feedback,.que p{margin:0 0 .5em}.que .qtext{margin-bottom:1.5em}.que .correctness{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.que .correctness:empty{display:none}.que .correctness-important{background-color:#b94a48}.que .correctness-important[href]{background-color:#953b39}.que .correctness-warning{background-color:#f89406}.que .correctness-warning[href]{background-color:#c67605}.que .correctness-success{background-color:#468847}.que .correctness-success[href]{background-color:#356635}.que .correctness-info{background-color:#3a87ad}.que .correctness-info[href]{background-color:#2d6987}.que .correctness-inverse{background-color:#333}.que .correctness-inverse[href]{background-color:#1a1a1a}.que .correctness.correct{background-color:#468847}.que .correctness.partiallycorrect{background-color:#f89406}.que .correctness.notanswered,.que .correctness.incorrect{background-color:#b94a48}.que .validationerror{color:#b94a48}.formulation .correct{background-color:#dff0d8}.formulation .partiallycorrect{background-color:#fcf8e3}.formulation .incorrect{background-color:#f2dede}.formulation select.correct,.formulation input.correct{color:#468847;background-color:#dff0d8;border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.correct:focus,.formulation input.correct:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.formulation select.partiallycorrect,.formulation input.partiallycorrect{color:#c09853;background-color:#fcf8e3;border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.partiallycorrect:focus,.formulation input.partiallycorrect:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.formulation select.incorrect,.formulation input.incorrect{color:#b94a48;background-color:#f2dede;border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.incorrect:focus,.formulation input.incorrect:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.que .grading,.que .comment,.que .commentlink,.que .history{margin-top:.5em}.que .history h3{margin:0 0 .2em;font-size:1em}.que .history table{width:100%;margin:0}.que .history .current{font-weight:bold}.que .questioncorrectnessicon{vertical-align:text-bottom}.que input.questionflagimage{padding-right:3px}.dir-rtl .que input.questionflagimage{padding-right:0;padding-left:3px}.importerror{margin-top:10px;border-bottom:1px solid #555}.mform .que.comment .fitemtitle{width:20%}#page-question-preview #techinfo{margin:1em 0}.dir-rtl #chooseqtype .instruction,.dir-rtl #chooseqtype .qtypesummary{right:60%;left:0;border-right:1px solid grey;border-left:0}#page-mod-quiz-edit .questionbankwindow div.header{padding:3px;padding:2px 10px 2px 10px;margin:0 -10px 0 -10px;color:#444;text-shadow:none;background:transparent;-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}#page-mod-quiz-edit .questionbankwindow div.header a:link,#page-mod-quiz-edit .questionbankwindow div.header a:visited{color:#08c}#page-mod-quiz-edit .questionbankwindow div.header a:hover{color:#005580}#page-mod-quiz-edit .questionbankwindow div.header .title{color:#333}#page-mod-quiz-edit div.container div.generalbox{padding:1.5em;background-color:transparent}#page-mod-quiz-edit .categoryinfo{background-color:#fff;border-bottom:0}#page-mod-quiz-edit div.questionbank .categoryquestionscontainer,#page-mod-quiz-edit div.questionbank .categorysortopotionscontainer,#page-mod-quiz-edit div.questionbank .categorypagingbarcontainer,#page-mod-quiz-edit div.questionbank .categoryselectallcontainer{padding:0 0 1.5em 0}#page-mod-quiz-edit div.questionbank .categorypagingbarcontainer{padding:1em;margin:0 -1.2em;background-color:transparent;border-top:0;border-bottom:0}#page-mod-quiz-edit div.questionbank .categoryquestionscontainer{margin:0 -1.2em -1em -1.2em}#page-mod-quiz-edit div.question div.content div.questioncontrols{background-color:#fff}#page-mod-quiz-edit div.question div.content div.points{padding-bottom:.5em;margin-top:-0.5em;background-color:#fff;border:0}#page-mod-quiz-edit div.question div.content div.points label{display:inline-block}#page-mod-quiz-edit div.quizpage .pagecontent .pagestatus{background-color:#fff}#page-mod-quiz-edit .quizpagedelete,#page-mod-quiz-edit .quizpagedelete img{background-color:transparent}#page-mod-quiz-edit div.quizpage .pagecontent{overflow:hidden;border:1px solid #ddd;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}#page-mod-quiz-edit .modulespecificbuttonscontainer{width:220px}.questionbankwindow .module{width:auto}#page-mod-quiz-edit div.editq div.question div.content{overflow:hidden;background-color:#fff;border:1px solid #ddd;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.path-mod-quiz .statedetails{display:block;font-size:.9em}a#hidebankcmd{color:#08c}.que.shortanswer .answer{padding:0}.que label{display:inline}.userprofile .fullprofilelink{margin:10px;text-align:center}.userprofile .description{margin-bottom:20px}.userprofile dl.list{*zoom:1}.userprofile dl.list:before,.userprofile dl.list:after{display:table;line-height:0;content:""}.userprofile dl.list:after{clear:both}.userprofile dl.list dt{float:left;width:180px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.userprofile dl.list dd{margin-left:200px}.user-box{float:left;width:115px;height:160px;margin:8px;clear:none;text-align:center}.userlist .action-icon img{vertical-align:middle}.userlist #showall{margin:10px 0}.userlist .buttons{text-align:center}.userlist .buttons label{padding:0 3px}.userlist table#participants{text-align:center}.userlist table#participants td,.userlist table#participants th{padding:4px;text-align:left;vertical-align:middle}.userlist table.controls{width:100%}.userlist table.controls tr{vertical-align:top}.userlist table.controls td.right,.userlist table.controls td.left{padding:4px}.userlist table.controls .right{text-align:right}.userinfobox{width:100%;padding:10px;border:1px solid;border-collapse:separate}.userinfobox .left,.userinfobox .side{width:100px;vertical-align:top}.userinfobox .userpicture{width:100px;height:100px}.userinfobox .content{vertical-align:top}.userinfobox .links{width:100px;padding:5px;vertical-align:bottom}.userinfobox .links a{display:block}.userinfobox .list td{padding:3px}.userinfobox .username{padding-bottom:20px;font-weight:bold}.userinfobox td.label{font-weight:bold;text-align:right;white-space:nowrap;vertical-align:top}.groupinfobox{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.groupinfobox blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.groupinfobox .left{width:100px;padding:10px;vertical-align:top}.course-participation #showall{margin:10px 0;text-align:center}#user-policy .noticebox{width:80%;height:250px;margin-right:auto;margin-bottom:10px;margin-left:auto;text-align:center}#user-policy #policyframe{width:100%;height:100%}.iplookup #map{margin:auto}.userselector select{width:100%}.userselector div{margin-top:.2em}.userselector div label{margin-right:.3em}.userselector .userselector-infobelow{font-size:.8em}#userselector_options{padding:.3em 0}#userselector_options .collapsibleregioncaption{font-weight:bold}#userselector_options p{margin:.2em 0;text-align:left}.dir-rtl #userselector_options p{text-align:right}#page-user-profile .messagebox{margin-right:auto;margin-left:auto;text-align:center}#page-course-view-weeks .messagebox{margin-right:auto;margin-left:auto;text-align:center}.dir-rtl .descriptionbox{margin-right:110px;margin-left:0}.dir-rtl .userlist table#participants td,.dir-rtl .userlist table#participants th{text-align:right}.dir-rtl .userlist table#participants{margin:0 auto}#page-my-index.dir-rtl .block h3{text-align:right}/*! * Bootstrap v2.3.0 * * Copyright 2012 Twitter, Inc From 9ac392547756922a955ad6572a6f7baf27deb3a0 Mon Sep 17 00:00:00 2001 From: David Monllao Date: Thu, 19 Sep 2013 16:47:04 +0800 Subject: [PATCH 048/101] MDL-41889 tool_generator: Fixing problem detecting the last used course shortname --- admin/tool/generator/classes/site_backend.php | 19 ++-- .../generator/tests/maketestsite_test.php | 106 ++++++++++++++++++ 2 files changed, 117 insertions(+), 8 deletions(-) create mode 100644 admin/tool/generator/tests/maketestsite_test.php diff --git a/admin/tool/generator/classes/site_backend.php b/admin/tool/generator/classes/site_backend.php index 01bde976ec5..fe0b60fdc51 100644 --- a/admin/tool/generator/classes/site_backend.php +++ b/admin/tool/generator/classes/site_backend.php @@ -104,7 +104,7 @@ class tool_generator_site_backend extends tool_generator_backend { // Create courses. $prevchdir = getcwd(); chdir($CFG->dirroot); - $ncourse = $this->get_last_testcourse_id(); + $ncourse = self::get_last_testcourse_id(); foreach (self::$sitecourses as $coursesize => $ncourses) { for ($i = 1; $i <= $ncourses[$this->size]; $i++) { // Non language-dependant shortname. @@ -177,26 +177,29 @@ class tool_generator_site_backend extends tool_generator_backend { * * @return int The last generated numeric value. */ - protected function get_last_testcourse_id() { + protected static function get_last_testcourse_id() { global $DB; $params = array(); $params['shortnameprefix'] = $DB->sql_like_escape(self::SHORTNAMEPREFIX) . '%'; $like = $DB->sql_like('shortname', ':shortnameprefix'); - if (!$testcourses = $DB->get_records_select('course', $like, $params, 'shortname DESC')) { + if (!$testcourses = $DB->get_records_select('course', $like, $params, '', 'shortname')) { return 0; } + // SQL order by is not appropiate here as is ordering strings. + $shortnames = array_keys($testcourses); + rsort($shortnames, SORT_NATURAL); // They come ordered by shortname DESC, so non-numeric values will be the first ones. - foreach ($testcourses as $testcourse) { - $sufix = substr($testcourse->shortname, strlen(self::SHORTNAMEPREFIX)); - if (is_numeric($sufix)) { + $prefixnchars = strlen(self::SHORTNAMEPREFIX); + foreach ($shortnames as $shortname) { + $sufix = substr($shortname, $prefixnchars); + if (preg_match('/^[\d]+$/', $sufix)) { return $sufix; } } - - // If all sufixes are not numeric this is the fist make test site run. + // If all sufixes are not numeric this is the first make test site run. return 0; } diff --git a/admin/tool/generator/tests/maketestsite_test.php b/admin/tool/generator/tests/maketestsite_test.php new file mode 100644 index 00000000000..18f6aed73ab --- /dev/null +++ b/admin/tool/generator/tests/maketestsite_test.php @@ -0,0 +1,106 @@ +. + +/** + * Unit test for the site generator + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +/** + * Silly class to access site_backend internal methods. + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class testable_tool_generator_site_backend extends tool_generator_site_backend { + + /** + * Public accessor. + * + * @return int + */ + public static function get_last_testcourse_id() { + return parent::get_last_testcourse_id(); + } +} + +/** + * Unit test for the site generator + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class tool_generator_maketestsite_testcase extends advanced_testcase { + + /** + * Checks that site courses shortnames are properly generated. + */ + public function test_shortnames_generation() { + + $this->resetAfterTest(); + $this->setAdminUser(); + + $generator = $this->getDataGenerator(); + + // Shortname common prefix. + $prefix = tool_generator_site_backend::SHORTNAMEPREFIX; + + $record = array(); + + // Without courses will be 0. + $lastshortname = testable_tool_generator_site_backend::get_last_testcourse_id(); + $this->assertEquals(0, $lastshortname); + + // Without {$prefix} + {no integer} courses will be 0. + $record['shortname'] = $prefix . 'AA'; + $generator->create_course($record); + $record['shortname'] = $prefix . '__'; + $generator->create_course($record); + $record['shortname'] = $prefix . '12.2'; + $generator->create_course($record); + + $lastshortname = testable_tool_generator_site_backend::get_last_testcourse_id(); + $this->assertEquals(0, $lastshortname); + + // With {$prefix} + {integer} courses will be the higher one. + $record['shortname'] = $prefix . '2'; + $generator->create_course($record); + $record['shortname'] = $prefix . '20'; + $generator->create_course($record); + $record['shortname'] = $prefix . '8'; + $generator->create_course($record); + + $lastshortname = testable_tool_generator_site_backend::get_last_testcourse_id(); + $this->assertEquals(20, $lastshortname); + + // Numeric order. + for ($i = 9; $i < 14; $i++) { + $record['shortname'] = $prefix . $i; + $generator->create_course($record); + } + + $lastshortname = testable_tool_generator_site_backend::get_last_testcourse_id(); + $this->assertEquals(20, $lastshortname); + } + +} From 6226cc30fb688a271cb7479b897f01353623da1b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Mon, 23 Sep 2013 10:11:27 +0200 Subject: [PATCH 049/101] MDL-37324 fix phpmailer method case names and standardise phpmailer init --- lib/moodlelib.php | 48 +++++++++++------------------- lib/phpmailer/moodle_phpmailer.php | 7 +++++ 2 files changed, 25 insertions(+), 30 deletions(-) diff --git a/lib/moodlelib.php b/lib/moodlelib.php index 92091ea16df..f9296c9f308 100644 --- a/lib/moodlelib.php +++ b/lib/moodlelib.php @@ -5421,6 +5421,7 @@ function moodle_process_email($modargs, $body) { function get_mailer($action='get') { global $CFG; + /** @var moodle_phpmailer $mailer */ static $mailer = null; static $counter = 0; @@ -5432,7 +5433,7 @@ function get_mailer($action='get') { $prevkeepalive = false; if (isset($mailer) and $mailer->Mailer == 'smtp') { - if ($counter < $CFG->smtpmaxbulk and !$mailer->IsError()) { + if ($counter < $CFG->smtpmaxbulk and !$mailer->isError()) { $counter++; // Reset the mailer. $mailer->Priority = 3; @@ -5447,10 +5448,10 @@ function get_mailer($action='get') { $mailer->AltBody = ""; $mailer->ConfirmReadingTo = ""; - $mailer->ClearAllRecipients(); - $mailer->ClearReplyTos(); - $mailer->ClearAttachments(); - $mailer->ClearCustomHeaders(); + $mailer->clearAllRecipients(); + $mailer->clearReplyTos(); + $mailer->clearAttachments(); + $mailer->clearCustomHeaders(); return $mailer; } @@ -5458,35 +5459,22 @@ function get_mailer($action='get') { get_mailer('flush'); } - include_once($CFG->libdir.'/phpmailer/moodle_phpmailer.php'); + require_once($CFG->libdir.'/phpmailer/moodle_phpmailer.php'); $mailer = new moodle_phpmailer(); $counter = 1; - // Mailer version. - $mailer->Version = 'Moodle '.$CFG->version; - // Plugin directory (eg smtp plugin). - $mailer->PluginDir = $CFG->libdir.'/phpmailer/'; - $mailer->CharSet = 'UTF-8'; - - // Some MTAs may do double conversion of LF if CRLF used, CRLF is required line ending in RFC 822bis. - if (isset($CFG->mailnewline) and $CFG->mailnewline == 'CRLF') { - $mailer->LE = "\r\n"; - } else { - $mailer->LE = "\n"; - } - if ($CFG->smtphosts == 'qmail') { // Use Qmail system. - $mailer->IsQmail(); + $mailer->isQmail(); } else if (empty($CFG->smtphosts)) { // Use PHP mail() = sendmail. - $mailer->IsMail(); + $mailer->isMail(); } else { // Use SMTP directly. - $mailer->IsSMTP(); + $mailer->isSMTP(); if (!empty($CFG->debugsmtp)) { $mailer->SMTPDebug = true; } @@ -5692,10 +5680,10 @@ function email_to_user($user, $from, $subject, $messagetext, $messagehtml = '', // Add custom headers. if (is_array($from->customheaders)) { foreach ($from->customheaders as $customheader) { - $mail->AddCustomHeader($customheader); + $mail->addCustomHeader($customheader); } } else { - $mail->AddCustomHeader($from->customheaders); + $mail->addCustomHeader($from->customheaders); } } @@ -5705,7 +5693,7 @@ function email_to_user($user, $from, $subject, $messagetext, $messagehtml = '', if ($messagehtml && !empty($user->mailformat) && $user->mailformat == 1) { // Don't ever send HTML to users who don't want it. - $mail->IsHTML(true); + $mail->isHTML(true); $mail->Encoding = 'quoted-printable'; $mail->Body = $messagehtml; $mail->AltBody = "\n$messagetext\n"; @@ -5718,11 +5706,11 @@ function email_to_user($user, $from, $subject, $messagetext, $messagehtml = '', if (preg_match( "~\\.\\.~" , $attachment )) { // Security check for ".." in dir path. $temprecipients[] = array($supportuser->email, fullname($supportuser, true)); - $mail->AddStringAttachment('Error in attachment. User attempted to attach a filename with a unsafe name.', 'error.txt', '8bit', 'text/plain'); + $mail->addStringAttachment('Error in attachment. User attempted to attach a filename with a unsafe name.', 'error.txt', '8bit', 'text/plain'); } else { require_once($CFG->libdir.'/filelib.php'); $mimetype = mimeinfo('type', $attachname); - $mail->AddAttachment($CFG->dataroot .'/'. $attachment, $attachname, 'base64', $mimetype); + $mail->addAttachment($CFG->dataroot .'/'. $attachment, $attachname, 'base64', $mimetype); } } @@ -5757,13 +5745,13 @@ function email_to_user($user, $from, $subject, $messagetext, $messagehtml = '', } foreach ($temprecipients as $values) { - $mail->AddAddress($values[0], $values[1]); + $mail->addAddress($values[0], $values[1]); } foreach ($tempreplyto as $values) { - $mail->AddReplyTo($values[0], $values[1]); + $mail->addReplyTo($values[0], $values[1]); } - if ($mail->Send()) { + if ($mail->send()) { set_send_count($user); if (!empty($mail->SMTPDebug)) { echo '
                '; diff --git a/lib/phpmailer/moodle_phpmailer.php b/lib/phpmailer/moodle_phpmailer.php index 9bff57ca731..3e0e258912a 100644 --- a/lib/phpmailer/moodle_phpmailer.php +++ b/lib/phpmailer/moodle_phpmailer.php @@ -52,6 +52,13 @@ class moodle_phpmailer extends PHPMailer { global $CFG; $this->Version = 'Moodle '.$CFG->version; // mailer version $this->CharSet = 'UTF-8'; + + // Some MTAs may do double conversion of LF if CRLF used, CRLF is required line ending in RFC 822bis. + if (isset($CFG->mailnewline) and $CFG->mailnewline == 'CRLF') { + $this->LE = "\r\n"; + } else { + $this->LE = "\n"; + } } /** From 09373a5a620fc31f9d1d0c9711e144ae4a7fb0fc Mon Sep 17 00:00:00 2001 From: David Monllao Date: Tue, 17 Sep 2013 17:32:45 +0800 Subject: [PATCH 050/101] MDL-41827 tool_generator: New unit test checking the generated files size --- .../generator/tests/maketestcourse_test.php | 57 ++++++++++++++++++- 1 file changed, 55 insertions(+), 2 deletions(-) diff --git a/admin/tool/generator/tests/maketestcourse_test.php b/admin/tool/generator/tests/maketestcourse_test.php index b8637f4eb34..b5afea0bc04 100644 --- a/admin/tool/generator/tests/maketestcourse_test.php +++ b/admin/tool/generator/tests/maketestcourse_test.php @@ -35,7 +35,7 @@ class tool_generator_maketestcourse_testcase extends advanced_testcase { $this->setAdminUser(); // Create the XS course. - $backend = new tool_generator_course_backend('TOOL_MAKELARGECOURSE_XS', 0, false, false); + $backend = new tool_generator_course_backend('TOOL_MAKELARGECOURSE_XS', 0, false, false, false); $courseid = $backend->make(); // Get course details. @@ -118,7 +118,7 @@ class tool_generator_maketestcourse_testcase extends advanced_testcase { $this->setAdminUser(); // Create the S course (more sections and activities than XS). - $backend = new tool_generator_course_backend('TOOL_S_COURSE_1', 1, true, false); + $backend = new tool_generator_course_backend('TOOL_S_COURSE_1', 1, true, false, false); $courseid = $backend->make(); // Get course details. @@ -151,4 +151,57 @@ class tool_generator_maketestcourse_testcase extends advanced_testcase { } } + + /** + * Creates a small test course specifying a maximum size and checks the generated files size is limited. + */ + public function test_filesize_limit() { + + $this->resetAfterTest(); + $this->setAdminUser(); + + // Limit. + $filesizelimit = 100; + + // Create a limited XS course. + $backend = new tool_generator_course_backend('TOOL_XS_LIMITED', 0, false, $filesizelimit, false); + $courseid = $backend->make(); + + $course = get_course($courseid); + $modinfo = get_fast_modinfo($course); + + // Check there are small files. + $fs = get_file_storage(); + $resources = $modinfo->get_instances_of('resource'); + foreach ($resources as $resource) { + $resourcecontext = context_module::instance($resource->id); + $files = $fs->get_area_files($resourcecontext->id, 'mod_resource', 'content', false, 'filename', false); + foreach ($files as $file) { + if ($file->get_mimetype() == 'application/octet-stream') { + $this->assertLessThanOrEqual($filesizelimit, $file->get_filesize()); + } + } + } + + // Create a non-limited XS course. + $backend = new tool_generator_course_backend('TOOL_XS_NOLIMITS', 0, false, false, false); + $courseid = $backend->make(); + + $course = get_course($courseid); + $modinfo = get_fast_modinfo($course); + + // Check there are small files. + $fs = get_file_storage(); + $resources = $modinfo->get_instances_of('resource'); + foreach ($resources as $resource) { + $resourcecontext = context_module::instance($resource->id); + $files = $fs->get_area_files($resourcecontext->id, 'mod_resource', 'content', false, 'filename', false); + foreach ($files as $file) { + if ($file->get_mimetype() == 'application/octet-stream') { + $this->assertGreaterThan($filesizelimit, (int)$file->get_filesize()); + } + } + } + + } } From 53e6d79c39a63b73d6a331749316e447a84362df Mon Sep 17 00:00:00 2001 From: David Monllao Date: Tue, 17 Sep 2013 17:33:07 +0800 Subject: [PATCH 051/101] MDL-41827 tool_generator: Adding a file size limit --- admin/tool/generator/classes/backend.php | 9 +++++- .../tool/generator/classes/course_backend.php | 30 +++++++++++++++---- admin/tool/generator/classes/site_backend.php | 5 ++-- admin/tool/generator/cli/maketestcourse.php | 15 ++++++---- admin/tool/generator/cli/maketestsite.php | 13 ++++---- 5 files changed, 52 insertions(+), 20 deletions(-) diff --git a/admin/tool/generator/classes/backend.php b/admin/tool/generator/classes/backend.php index 20b3370bd1f..da931db0f90 100644 --- a/admin/tool/generator/classes/backend.php +++ b/admin/tool/generator/classes/backend.php @@ -51,6 +51,11 @@ abstract class tool_generator_backend { */ protected $fixeddataset; + /** + * @var int|bool Maximum number of bytes for file. + */ + protected $filesizelimit; + /** * @var bool True if displaying progress */ @@ -81,10 +86,11 @@ abstract class tool_generator_backend { * * @param int $size Size as numeric index * @param bool $fixeddataset To use fixed or random data + * @param int|bool $filesizelimit The max number of bytes for a generated file * @param bool $progress True if progress information should be displayed * @throws coding_exception If parameters are invalid */ - public function __construct($size, $fixeddataset = false, $progress = true) { + public function __construct($size, $fixeddataset = false, $filesizelimit = false, $progress = true) { // Check parameter. if ($size < self::MIN_SIZE || $size > self::MAX_SIZE) { @@ -94,6 +100,7 @@ abstract class tool_generator_backend { // Set parameters. $this->size = $size; $this->fixeddataset = $fixeddataset; + $this->filesizelimit = $filesizelimit; $this->progress = $progress; } diff --git a/admin/tool/generator/classes/course_backend.php b/admin/tool/generator/classes/course_backend.php index 07e1e7b1c85..1034b93bea0 100644 --- a/admin/tool/generator/classes/course_backend.php +++ b/admin/tool/generator/classes/course_backend.php @@ -100,15 +100,15 @@ class tool_generator_course_backend extends tool_generator_backend { * @param string $shortname Course shortname * @param int $size Size as numeric index * @param bool $fixeddataset To use fixed or random data + * @param int|bool $filesizelimit The max number of bytes for a generated file * @param bool $progress True if progress information should be displayed - * @return int Course id */ - public function __construct($shortname, $size, $fixeddataset = false, $progress = true) { + public function __construct($shortname, $size, $fixeddataset = false, $filesizelimit = false, $progress = true) { // Set parameters. $this->shortname = $shortname; - parent::__construct($size, $fixeddataset, $progress); + parent::__construct($size, $fixeddataset, $filesizelimit, $progress); } /** @@ -345,7 +345,7 @@ class tool_generator_course_backend extends tool_generator_backend { // Generate random binary data (different for each file so it // doesn't compress unrealistically). - $data = self::get_random_binary(self::$paramsmallfilesize[$this->size]); + $data = self::get_random_binary($this->limit_filesize(self::$paramsmallfilesize[$this->size])); $fs->create_file_from_string($filerecord, $data); $this->dot($i, $count); @@ -362,6 +362,7 @@ class tool_generator_course_backend extends tool_generator_backend { * @return Random data */ private static function get_random_binary($length) { + $data = microtime(true); if (strlen($data) > $length) { // Use last digits of data. @@ -382,8 +383,9 @@ class tool_generator_course_backend extends tool_generator_backend { // Work out how many files and how many blocks to use (up to 64KB). $count = self::$parambigfilecount[$this->size]; - $blocks = ceil(self::$parambigfilesize[$this->size] / 65536); - $blocksize = floor(self::$parambigfilesize[$this->size] / $blocks); + $filesize = $this->limit_filesize(self::$parambigfilesize[$this->size]); + $blocks = ceil($filesize / 65536); + $blocksize = floor($filesize / $blocks); $this->log('createbigfiles', $count, true); @@ -504,4 +506,20 @@ class tool_generator_course_backend extends tool_generator_backend { return $userid; } + /** + * Restricts the binary file size if necessary + * + * @param int $length The total length + * @return int The limited length if a limit was specified. + */ + private function limit_filesize($length) { + + // Limit to $this->filesizelimit. + if (is_numeric($this->filesizelimit) && $length > $this->filesizelimit) { + $length = floor($this->filesizelimit); + } + + return $length; + } + } diff --git a/admin/tool/generator/classes/site_backend.php b/admin/tool/generator/classes/site_backend.php index 01bde976ec5..b634c54d14c 100644 --- a/admin/tool/generator/classes/site_backend.php +++ b/admin/tool/generator/classes/site_backend.php @@ -61,15 +61,16 @@ class tool_generator_site_backend extends tool_generator_backend { * @param int $size Size as numeric index * @param bool $bypasscheck If debugging level checking was skipped. * @param bool $fixeddataset To use fixed or random data + * @param int|bool $filesizelimit The max number of bytes for a generated file * @param bool $progress True if progress information should be displayed * @return int Course id */ - public function __construct($size, $bypasscheck, $fixeddataset = false, $progress = true) { + public function __construct($size, $bypasscheck, $fixeddataset = false, $filesizelimit = false, $progress = true) { // Set parameters. $this->bypasscheck = $bypasscheck; - parent::__construct($size, $fixeddataset, $progress); + parent::__construct($size, $fixeddataset, $filesizelimit, $progress); } /** diff --git a/admin/tool/generator/cli/maketestcourse.php b/admin/tool/generator/cli/maketestcourse.php index 407a58f12db..ce242e35d3b 100644 --- a/admin/tool/generator/cli/maketestcourse.php +++ b/admin/tool/generator/cli/maketestcourse.php @@ -35,6 +35,7 @@ list($options, $unrecognized) = cli_get_params( 'shortname' => false, 'size' => false, 'fixeddataset' => false, + 'filesizelimit' => false, 'bypasscheck' => false, 'quiet' => false ), @@ -52,11 +53,12 @@ Not for use on live sites; only normally works if debugging is set to DEVELOPER level. Options: ---shortname Shortname of course to create (required) ---size Size of course to create XS, S, M, L, XL, or XXL (required) ---fixeddataset Use a fixed data set instead of randomly generated data ---bypasscheck Bypasses the developer-mode check (be careful!) ---quiet Do not show any output +--shortname Shortname of course to create (required) +--size Size of course to create XS, S, M, L, XL, or XXL (required) +--fixeddataset Use a fixed data set instead of randomly generated data +--filesizelimit Limits the size of the generated files to the specified bytes +--bypasscheck Bypasses the developer-mode check (be careful!) +--quiet Do not show any output -h, --help Print out this help @@ -76,6 +78,7 @@ if (empty($options['bypasscheck']) && !debugging('', DEBUG_DEVELOPER)) { $shortname = $options['shortname']; $sizename = $options['size']; $fixeddataset = $options['fixeddataset']; +$filesizelimit = $options['filesizelimit']; // Check size. try { @@ -93,5 +96,5 @@ if ($error = tool_generator_course_backend::check_shortname_available($shortname session_set_user(get_admin()); // Do backend code to generate course. -$backend = new tool_generator_course_backend($shortname, $size, $fixeddataset, empty($options['quiet'])); +$backend = new tool_generator_course_backend($shortname, $size, $fixeddataset, $filesizelimit, empty($options['quiet'])); $id = $backend->make(); diff --git a/admin/tool/generator/cli/maketestsite.php b/admin/tool/generator/cli/maketestsite.php index bc91d7d8a9f..7bff781d06f 100644 --- a/admin/tool/generator/cli/maketestsite.php +++ b/admin/tool/generator/cli/maketestsite.php @@ -34,6 +34,7 @@ list($options, $unrecognized) = cli_get_params( 'help' => false, 'size' => false, 'fixeddataset' => false, + 'filesizelimit' => false, 'bypasscheck' => false, 'quiet' => false ), @@ -57,10 +58,11 @@ Consider that, depending on the size you select, this CLI tool can really genera $sitesizes Options: ---size Size of the generated site, this value affects the number of courses and their size. Accepted values: XS, S, M, L, XL, or XXL (required) ---fixeddataset Use a fixed data set instead of randomly generated data ---bypasscheck Bypasses the developer-mode check (be careful!) ---quiet Do not show any output +--size Size of the generated site, this value affects the number of courses and their size. Accepted values: XS, S, M, L, XL, or XXL (required) +--fixeddataset Use a fixed data set instead of randomly generated data +--filesizelimit Limits the size of the generated files to the specified bytes +--bypasscheck Bypasses the developer-mode check (be careful!) +--quiet Do not show any output -h, --help Print out this help @@ -79,6 +81,7 @@ if (empty($options['bypasscheck']) && !$CFG->debugdeveloper) { // Get options. $sizename = $options['size']; $fixeddataset = $options['fixeddataset']; +$filesizelimit = $options['filesizelimit']; // Check size. try { @@ -91,5 +94,5 @@ try { session_set_user(get_admin()); // Do backend code to generate site. -$backend = new tool_generator_site_backend($size, $options['bypasscheck'], $fixeddataset, empty($options['quiet'])); +$backend = new tool_generator_site_backend($size, $options['bypasscheck'], $fixeddataset, $filesizelimit, empty($options['quiet'])); $backend->make(); From 0082df9d12dec05fcc4ca4a9ef0e7bce3a8d42ad Mon Sep 17 00:00:00 2001 From: Andrew Nicols Date: Sun, 22 Sep 2013 22:11:33 +0100 Subject: [PATCH 052/101] MDL-36465 Course JavaScript: Ensure that the zero section is not draggable --- course/yui/dragdrop/dragdrop.js | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/course/yui/dragdrop/dragdrop.js b/course/yui/dragdrop/dragdrop.js index fc5f88d2e40..801ffc980f0 100644 --- a/course/yui/dragdrop/dragdrop.js +++ b/course/yui/dragdrop/dragdrop.js @@ -17,7 +17,8 @@ YUI.add('moodle-course-dragdrop', function(Y) { SECTION : 'section', SECTIONADDMENUS : 'section_add_menus', SECTIONHANDLE : 'section-handle', - SUMMARY : 'summary' + SUMMARY : 'summary', + SECTIONDRAGGABLE: 'sectiondraggable' }; var DRAGSECTION = function() { @@ -28,7 +29,7 @@ YUI.add('moodle-course-dragdrop', function(Y) { initializer : function(params) { // Set group for parent class - this.groups = ['section']; + this.groups = [ CSS.SECTIONDRAGGABLE ]; this.samenodeclass = M.course.format.get_sectionwrapperclass(); this.parentnodeclass = M.course.format.get_containerclass(); @@ -40,13 +41,13 @@ YUI.add('moodle-course-dragdrop', function(Y) { this.sectionlistselector = M.course.format.get_section_wrapper(Y); if (this.sectionlistselector) { this.sectionlistselector = '.'+CSS.COURSECONTENT+' '+this.sectionlistselector; + this.setup_for_section(this.sectionlistselector); // Make each li element in the lists of sections draggable - var nodeselector = this.sectionlistselector.slice(CSS.COURSECONTENT.length+2); var del = new Y.DD.Delegate({ container: '.'+CSS.COURSECONTENT, - nodes: nodeselector, + nodes: '.' + CSS.SECTIONDRAGGABLE, target: true, handles: ['.'+CSS.LEFT], dragConfig: {groups: this.groups} @@ -95,6 +96,9 @@ YUI.add('moodle-course-dragdrop', function(Y) { if (movedown) { movedown.remove(); } + + // This section can be moved - add the class to indicate this to Y.DD. + sectionnode.addClass(CSS.SECTIONDRAGGABLE); } } }, this); From c43ef6c624953e4c94f5c0a7c364af7e3c6f1036 Mon Sep 17 00:00:00 2001 From: David Monllao Date: Thu, 19 Sep 2013 16:47:04 +0800 Subject: [PATCH 053/101] MDL-41889 tool_generator: Fixing problem detecting the last used course shortname --- admin/tool/generator/classes/site_backend.php | 23 ++-- .../generator/tests/maketestsite_test.php | 106 ++++++++++++++++++ 2 files changed, 121 insertions(+), 8 deletions(-) create mode 100644 admin/tool/generator/tests/maketestsite_test.php diff --git a/admin/tool/generator/classes/site_backend.php b/admin/tool/generator/classes/site_backend.php index b634c54d14c..41511a8a8ba 100644 --- a/admin/tool/generator/classes/site_backend.php +++ b/admin/tool/generator/classes/site_backend.php @@ -105,7 +105,7 @@ class tool_generator_site_backend extends tool_generator_backend { // Create courses. $prevchdir = getcwd(); chdir($CFG->dirroot); - $ncourse = $this->get_last_testcourse_id(); + $ncourse = self::get_last_testcourse_id(); foreach (self::$sitecourses as $coursesize => $ncourses) { for ($i = 1; $i <= $ncourses[$this->size]; $i++) { // Non language-dependant shortname. @@ -149,6 +149,10 @@ class tool_generator_site_backend extends tool_generator_backend { $options[] = '--quiet'; } + if ($this->filesizelimit) { + $options[] = '--filesizelimit="' . $this->filesizelimit . '"'; + } + // Extend options. $optionstoextend = array( 'fixeddataset' => 'fixeddataset', @@ -178,26 +182,29 @@ class tool_generator_site_backend extends tool_generator_backend { * * @return int The last generated numeric value. */ - protected function get_last_testcourse_id() { + protected static function get_last_testcourse_id() { global $DB; $params = array(); $params['shortnameprefix'] = $DB->sql_like_escape(self::SHORTNAMEPREFIX) . '%'; $like = $DB->sql_like('shortname', ':shortnameprefix'); - if (!$testcourses = $DB->get_records_select('course', $like, $params, 'shortname DESC')) { + if (!$testcourses = $DB->get_records_select('course', $like, $params, '', 'shortname')) { return 0; } + // SQL order by is not appropiate here as is ordering strings. + $shortnames = array_keys($testcourses); + rsort($shortnames, SORT_NATURAL); // They come ordered by shortname DESC, so non-numeric values will be the first ones. - foreach ($testcourses as $testcourse) { - $sufix = substr($testcourse->shortname, strlen(self::SHORTNAMEPREFIX)); - if (is_numeric($sufix)) { + $prefixnchars = strlen(self::SHORTNAMEPREFIX); + foreach ($shortnames as $shortname) { + $sufix = substr($shortname, $prefixnchars); + if (preg_match('/^[\d]+$/', $sufix)) { return $sufix; } } - - // If all sufixes are not numeric this is the fist make test site run. + // If all sufixes are not numeric this is the first make test site run. return 0; } diff --git a/admin/tool/generator/tests/maketestsite_test.php b/admin/tool/generator/tests/maketestsite_test.php new file mode 100644 index 00000000000..18f6aed73ab --- /dev/null +++ b/admin/tool/generator/tests/maketestsite_test.php @@ -0,0 +1,106 @@ +. + +/** + * Unit test for the site generator + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +/** + * Silly class to access site_backend internal methods. + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class testable_tool_generator_site_backend extends tool_generator_site_backend { + + /** + * Public accessor. + * + * @return int + */ + public static function get_last_testcourse_id() { + return parent::get_last_testcourse_id(); + } +} + +/** + * Unit test for the site generator + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class tool_generator_maketestsite_testcase extends advanced_testcase { + + /** + * Checks that site courses shortnames are properly generated. + */ + public function test_shortnames_generation() { + + $this->resetAfterTest(); + $this->setAdminUser(); + + $generator = $this->getDataGenerator(); + + // Shortname common prefix. + $prefix = tool_generator_site_backend::SHORTNAMEPREFIX; + + $record = array(); + + // Without courses will be 0. + $lastshortname = testable_tool_generator_site_backend::get_last_testcourse_id(); + $this->assertEquals(0, $lastshortname); + + // Without {$prefix} + {no integer} courses will be 0. + $record['shortname'] = $prefix . 'AA'; + $generator->create_course($record); + $record['shortname'] = $prefix . '__'; + $generator->create_course($record); + $record['shortname'] = $prefix . '12.2'; + $generator->create_course($record); + + $lastshortname = testable_tool_generator_site_backend::get_last_testcourse_id(); + $this->assertEquals(0, $lastshortname); + + // With {$prefix} + {integer} courses will be the higher one. + $record['shortname'] = $prefix . '2'; + $generator->create_course($record); + $record['shortname'] = $prefix . '20'; + $generator->create_course($record); + $record['shortname'] = $prefix . '8'; + $generator->create_course($record); + + $lastshortname = testable_tool_generator_site_backend::get_last_testcourse_id(); + $this->assertEquals(20, $lastshortname); + + // Numeric order. + for ($i = 9; $i < 14; $i++) { + $record['shortname'] = $prefix . $i; + $generator->create_course($record); + } + + $lastshortname = testable_tool_generator_site_backend::get_last_testcourse_id(); + $this->assertEquals(20, $lastshortname); + } + +} From 0793389fd63226bf08b37c62e653c48825eb30af Mon Sep 17 00:00:00 2001 From: David Monllao Date: Fri, 20 Sep 2013 12:06:38 +0800 Subject: [PATCH 054/101] MDL-41910 user: Allowing LASTACCESS_UPDATE_SECS overwrite --- lib/datalib.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/datalib.php b/lib/datalib.php index f2044c34d96..e65adcb2ad9 100644 --- a/lib/datalib.php +++ b/lib/datalib.php @@ -42,8 +42,13 @@ define('MAX_COURSE_CATEGORIES', 10000); /** * Number of seconds to wait before updating lastaccess information in DB. + * + * We allow overwrites from config.php, useful to ensure coherence in performance + * tests results. */ -define('LASTACCESS_UPDATE_SECS', 60); +if (!defined('LASTACCESS_UPDATE_SECS')) { + define('LASTACCESS_UPDATE_SECS', 60); +} /** * Returns $user object of the main admin user From 9413953f0856488b6c7b36ae9fae34be57e2ef19 Mon Sep 17 00:00:00 2001 From: Tim Hunt Date: Mon, 23 Sep 2013 18:05:57 +0100 Subject: [PATCH 055/101] MDL-41929 quiz statistics, overall stats not displayed. --- mod/quiz/report/statistics/report.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mod/quiz/report/statistics/report.php b/mod/quiz/report/statistics/report.php index f30eca23073..7e327d9f37f 100644 --- a/mod/quiz/report/statistics/report.php +++ b/mod/quiz/report/statistics/report.php @@ -465,7 +465,7 @@ class quiz_statistics_report extends quiz_default_report { // The statistics. foreach ($todisplay as $property => $format) { - if (!isset($quizstats->$property) || empty($format[$property])) { + if (!isset($quizstats->$property) || !$format) { continue; } $value = $quizstats->$property; From 1a4621d8e5dc2ce2bd999f6a9fd87ec4bfd84928 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Mon, 23 Sep 2013 21:35:18 +0200 Subject: [PATCH 056/101] MDL-31501 fake requried globals in both installers --- admin/cli/install.php | 21 +++++++++++++++++++++ install.php | 21 +++++++++++++++------ 2 files changed, 36 insertions(+), 6 deletions(-) diff --git a/admin/cli/install.php b/admin/cli/install.php index 1d97e606cd0..0a5ce9be3f5 100644 --- a/admin/cli/install.php +++ b/admin/cli/install.php @@ -151,6 +151,7 @@ if (version_compare(phpversion(), "5.3.3") < 0) { } // set up configuration +global $CFG; $CFG = new stdClass(); $CFG->lang = 'en'; $CFG->dirroot = dirname(dirname(dirname(__FILE__))); @@ -200,6 +201,26 @@ if (defined('COMPONENT_CLASSLOADER')) { require($CFG->dirroot.'/version.php'); $CFG->target_release = $release; +$_SESSION = array(); +$_SESSION['SESSION'] = new stdClass(); +$_SESSION['SESSION']->lang = $CFG->lang; +$_SESSION['USER'] = new stdClass(); +$_SESSION['USER']->id = 0; +$_SESSION['USER']->mnethostid = 1; + +global $SESSION; +global $USER; +$SESSION = &$_SESSION['SESSION']; +$USER = &$_SESSION['USER']; + +global $COURSE; +$COURSE = new stdClass(); +$COURSE->id = 1; + +global $SITE; +$SITE = $COURSE; +define('SITEID', 1); + //Database types $databases = array('mysqli' => moodle_database::get_driver_instance('mysqli', 'native'), 'mariadb'=> moodle_database::get_driver_instance('mariadb', 'native'), diff --git a/install.php b/install.php index c1c40ca6823..0c250a05f30 100644 --- a/install.php +++ b/install.php @@ -161,6 +161,7 @@ if (!empty($_POST)) { } // Fake some settings so that we can use selected functions from moodlelib.php, weblib.php and filelib.php. +global $CFG; $CFG = new stdClass(); $CFG->lang = $config->lang; $CFG->dirroot = dirname(__FILE__); @@ -232,17 +233,25 @@ if (defined('COMPONENT_CLASSLOADER')) { require('version.php'); $CFG->target_release = $release; -$SESSION = new stdClass(); -$SESSION->lang = $CFG->lang; +$_SESSION = array(); +$_SESSION['SESSION'] = new stdClass(); +$_SESSION['SESSION']->lang = $CFG->lang; +$_SESSION['USER'] = new stdClass(); +$_SESSION['USER']->id = 0; +$_SESSION['USER']->mnethostid = 1; -$USER = new stdClass(); -$USER->id = 0; +global $SESSION; +global $USER; +$SESSION = &$_SESSION['SESSION']; +$USER = &$_SESSION['USER']; +global $COURSE; $COURSE = new stdClass(); -$COURSE->id = 0; +$COURSE->id = 1; +global $SITE; $SITE = $COURSE; -define('SITEID', 0); +define('SITEID', 1); $hint_dataroot = ''; $hint_admindir = ''; From 136d9a47883acf0d5d51ba1c49d363c9968e2277 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Thu, 19 Sep 2013 21:37:59 +0200 Subject: [PATCH 057/101] MDL-40107 import tcpdf 6.0.031 Includes a few more small asian fonts. --- lib/tcpdf/CHANGELOG.TXT | 126 + lib/tcpdf/README.TXT | 43 +- lib/tcpdf/composer.json | 28 +- lib/tcpdf/config/tcpdf_config.php | 327 +- lib/tcpdf/encodings_maps.php | 846 - lib/tcpdf/fonts/freefont-20100919/ChangeLog | 6325 ------- .../AUTHORS | 15 +- .../COPYING | 0 .../CREDITS | 96 +- lib/tcpdf/fonts/freefont-20120503/ChangeLog | 14707 ++++++++++++++++ .../INSTALL | 52 +- .../README | 87 +- .../fonts/freefont-20120503/TROUBLESHOOTING | 115 + lib/tcpdf/fonts/freefont-20120503/USAGE | 185 + lib/tcpdf/fonts/freemono.ctg.z | Bin 6782 -> 7904 bytes lib/tcpdf/fonts/freemono.php | 6 +- lib/tcpdf/fonts/freemono.z | Bin 161631 -> 303175 bytes lib/tcpdf/fonts/freemonob.ctg.z | Bin 3860 -> 3970 bytes lib/tcpdf/fonts/freemonob.php | 6 +- lib/tcpdf/fonts/freemonob.z | Bin 90912 -> 160602 bytes lib/tcpdf/fonts/freemonobi.ctg.z | Bin 3320 -> 3528 bytes lib/tcpdf/fonts/freemonobi.php | 6 +- lib/tcpdf/fonts/freemonobi.z | Bin 95447 -> 169876 bytes lib/tcpdf/fonts/freemonoi.ctg.z | Bin 4124 -> 4364 bytes lib/tcpdf/fonts/freemonoi.php | 6 +- lib/tcpdf/fonts/freemonoi.z | Bin 115416 -> 221203 bytes lib/tcpdf/fonts/freesans.ctg.z | Bin 8176 -> 8661 bytes lib/tcpdf/fonts/freesans.php | 8 +- lib/tcpdf/fonts/freesans.z | Bin 372168 -> 805933 bytes lib/tcpdf/fonts/freesansb.ctg.z | Bin 4683 -> 5192 bytes lib/tcpdf/fonts/freesansb.php | 8 +- lib/tcpdf/fonts/freesansb.z | Bin 183889 -> 237861 bytes lib/tcpdf/fonts/freesansbi.ctg.z | Bin 4477 -> 4626 bytes lib/tcpdf/fonts/freesansbi.php | 8 +- lib/tcpdf/fonts/freesansbi.z | Bin 161417 -> 194106 bytes lib/tcpdf/fonts/freesansi.ctg.z | Bin 4698 -> 4927 bytes lib/tcpdf/fonts/freesansi.php | 8 +- lib/tcpdf/fonts/freesansi.z | Bin 241961 -> 420785 bytes lib/tcpdf/fonts/freeserif.ctg.z | Bin 10877 -> 12610 bytes lib/tcpdf/fonts/freeserif.php | 8 +- lib/tcpdf/fonts/freeserif.z | Bin 873623 -> 1826908 bytes lib/tcpdf/fonts/freeserifb.ctg.z | Bin 5646 -> 7836 bytes lib/tcpdf/fonts/freeserifb.php | 8 +- lib/tcpdf/fonts/freeserifb.z | Bin 301278 -> 680954 bytes lib/tcpdf/fonts/freeserifbi.ctg.z | Bin 4762 -> 5105 bytes lib/tcpdf/fonts/freeserifbi.php | 8 +- lib/tcpdf/fonts/freeserifbi.z | Bin 257310 -> 341887 bytes lib/tcpdf/fonts/freeserifi.ctg.z | Bin 4984 -> 5353 bytes lib/tcpdf/fonts/freeserifi.php | 8 +- lib/tcpdf/fonts/freeserifi.z | Bin 362277 -> 533721 bytes lib/tcpdf/fonts/kozgopromedium.php | 65 + lib/tcpdf/fonts/kozminproregular.php | 63 + lib/tcpdf/fonts/msungstdlight.php | 38 + lib/tcpdf/fonts/stsongstdlight.php | 39 + lib/tcpdf/htmlcolors.php | 199 - .../{ => include/barcodes}/datamatrix.php | 2 +- lib/tcpdf/{ => include/barcodes}/pdf417.php | 15 +- lib/tcpdf/{ => include/barcodes}/qrcode.php | 2 +- lib/tcpdf/{ => include}/sRGB.icc | Bin lib/tcpdf/include/tcpdf_colors.php | 452 + lib/tcpdf/{ => include}/tcpdf_filters.php | 142 +- .../tcpdf_font_data.php} | 138 +- lib/tcpdf/include/tcpdf_fonts.php | 2562 +++ lib/tcpdf/include/tcpdf_images.php | 355 + lib/tcpdf/include/tcpdf_static.php | 2837 +++ lib/tcpdf/readme_moodle.txt | 8 +- lib/tcpdf/spotcolors.php | 60 - lib/tcpdf/tcpdf.crt | 40 - lib/tcpdf/tcpdf.fdf | Bin 1286 -> 0 bytes lib/tcpdf/tcpdf.p12 | Bin 1749 -> 0 bytes lib/tcpdf/tcpdf.php | 7458 +------- lib/tcpdf/tcpdf_autoconfig.php | 233 + .../{barcodes.php => tcpdf_barcodes_1d.php} | 8 +- .../{2dbarcodes.php => tcpdf_barcodes_2d.php} | 14 +- lib/tcpdf/tcpdf_parser.php | 327 +- lib/tests/other/pdflibtestpage.php | 2 +- lib/thirdpartylibs.xml | 2 +- 77 files changed, 23465 insertions(+), 14636 deletions(-) delete mode 100644 lib/tcpdf/encodings_maps.php delete mode 100644 lib/tcpdf/fonts/freefont-20100919/ChangeLog rename lib/tcpdf/fonts/{freefont-20100919 => freefont-20120503}/AUTHORS (93%) rename lib/tcpdf/fonts/{freefont-20100919 => freefont-20120503}/COPYING (100%) rename lib/tcpdf/fonts/{freefont-20100919 => freefont-20120503}/CREDITS (88%) create mode 100644 lib/tcpdf/fonts/freefont-20120503/ChangeLog rename lib/tcpdf/fonts/{freefont-20100919 => freefont-20120503}/INSTALL (55%) rename lib/tcpdf/fonts/{freefont-20100919 => freefont-20120503}/README (50%) create mode 100644 lib/tcpdf/fonts/freefont-20120503/TROUBLESHOOTING create mode 100644 lib/tcpdf/fonts/freefont-20120503/USAGE create mode 100644 lib/tcpdf/fonts/kozgopromedium.php create mode 100644 lib/tcpdf/fonts/kozminproregular.php create mode 100644 lib/tcpdf/fonts/msungstdlight.php create mode 100644 lib/tcpdf/fonts/stsongstdlight.php delete mode 100644 lib/tcpdf/htmlcolors.php rename lib/tcpdf/{ => include/barcodes}/datamatrix.php (99%) rename lib/tcpdf/{ => include/barcodes}/pdf417.php (99%) rename lib/tcpdf/{ => include/barcodes}/qrcode.php (99%) rename lib/tcpdf/{ => include}/sRGB.icc (100%) create mode 100644 lib/tcpdf/include/tcpdf_colors.php rename lib/tcpdf/{ => include}/tcpdf_filters.php (77%) rename lib/tcpdf/{unicode_data.php => include/tcpdf_font_data.php} (72%) create mode 100644 lib/tcpdf/include/tcpdf_fonts.php create mode 100644 lib/tcpdf/include/tcpdf_images.php create mode 100644 lib/tcpdf/include/tcpdf_static.php delete mode 100644 lib/tcpdf/spotcolors.php delete mode 100644 lib/tcpdf/tcpdf.crt delete mode 100644 lib/tcpdf/tcpdf.fdf delete mode 100644 lib/tcpdf/tcpdf.p12 create mode 100644 lib/tcpdf/tcpdf_autoconfig.php rename lib/tcpdf/{barcodes.php => tcpdf_barcodes_1d.php} (99%) rename lib/tcpdf/{2dbarcodes.php => tcpdf_barcodes_2d.php} (96%) diff --git a/lib/tcpdf/CHANGELOG.TXT b/lib/tcpdf/CHANGELOG.TXT index c921a6cbbfd..529f4732fdf 100644 --- a/lib/tcpdf/CHANGELOG.TXT +++ b/lib/tcpdf/CHANGELOG.TXT @@ -1,3 +1,129 @@ +6.0.031 (2013-09-18) + - Bug #836 "Optional EOL marker before endstream" was fixed. + - Some additional controls were added to avoid "division by zero" error with badly formatted input. + +6.0.030 (2013-09-17) + - Bug #835 "PDF417 and Cyrilic simbols" was fixed. + +6.0.029 (2013-09-15) + - Constants K_TCPDF_PARSER_THROW_EXCEPTION_ERROR and K_TCPDF_PARSER_IGNORE_DECODING_ERRORS where removed in favor of a new configuration array in the TCPDF_PARSER class. + - The TCPDF_PARSER class can now be configured using the new $cfg parameter. + +6.0.028 (2013-09-15) + - A debug print_r was removed form tcpdf_parser.php. + - TCPDF_FILTERS class now throws an exception in case of error. + - TCPDF_PARSER class now throws an exception in case of error unless you define the constant K_TCPDF_PARSER_THROW_EXCEPTION_ERROR to false. + - The constant K_TCPDF_PARSER_IGNORE_DECODING_ERRORS can be set to tru eto ignore decoding errors on TCPDF_PARSER. + +6.0.027 (2013-09-14) + - A bug in tcpdf_parser wen parsing hexadecimal strings was fixed. + - A bug in tcpdf_parser wen looking for statxref was fixed. + - A bug on RC4 encryption was fixed. + +6.0.026 (2013-09-14) + - A bug in tcpdf_parser wen decoding streams was fixed. + +6.0.025 (2013-09-04) + - A pregSplit() bug was fixed. + - Improved content loading from URLs. + - Improved font path loading. + +6.0.024 (2013-09-02) + - Bug #826 "addEmptySignatureAppearance issue" was fixed. + +6.0.023 (2013-08-05) + - GNU Freefont fonts were updated. + - Licensing and copyright information about fonts were improved. + - PNG image support was improved. + +6.0.022 (2013-08-02) + - fixing initialization problem for signature_appearance property. + +6.0.021 (2013-07-18) + - The bug caused by the preg_split function on some PHP 5.2.x versions was fixed. + +6.0.020 (2013-06-04) + - The method addTTFfont() was fixed (Bug item #813 Undefined offset). + +6.0.019 (2013-06-04) + - The magic constant __DIR__ was replaced with dirname(__FILE__) for php 5.2 compatibility. + - The exceptions raised by file_exists() function were suppressed. + +6.0.018 (2013-05-19) + - The barcode examples were changed to automatically search for the barcode class path (in case the examples directory is not installed under the TCPDF root). + +6.0.017 (2013-05-16) + - The command line tool tcpdf_addfont.php was improved. + - The php logic was removed from configuration files that now contains only constant defines. + - The tcpdf_autoconfig.php file was added to automatically set missing configuration values. + +6.0.016 (2013-05-15) + - The tcpdf_addfont.php tool was improved (thanks to Remi Collet). + - Constant K_PATH_IMAGES is now automatically set in configuration file. + +6.0.015 (2013-05-14) + - Some unused vars were removed from AddFont() method. + - Some directories were moved inside the examples directory. + - All examples were updated to reflect the new default structure. + - Source code were clean-up up to be more compatible with system packaging. + - Files encodings and permissions were reset. + - The command line tool tcpdf_addfont.php was added on the tools directory. + +6.0.014 (2013-04-13) + - The signature of addTTFfont() method includes a new parameter to link existing fonts instead of copying and compressing them. + +6.0.013 (2013-04-10) + - Add support for SVG dx and dy text/tspan attributes. + - replace require() with require_once(). + - fix some minor typos on documentation. + - fix a problem when deleting all pages. + +6.0.012 (2013-04-24) + - An error condition in addHtmlLink() method was fixed (bug #799). + +6.0.011 (2013-04-22) + - Minor documentation changes. + +6.0.010 (2013-04-03) + - The method Rect() was fixed to print borders correctly. + +6.0.009 (2013-04-02) + - Adding back some files that were not properly committed on the latest release. + +6.0.008 (2013-04-01) + - Duplicated encoding maps was removed from tcpdf_font_data.php. + - Fixing bug on AddTTFFont(). + +6.0.007 (2013-03-29) + - HTML/CSS font size conversion were improved. + +6.0.006 (2013-03-27) + - Bug related to SVG and EPS files on xobjects were fixed. + +6.0.005 (2013-03-26) + - Default font path was fixed. + +6.0.004 (2013-03-21) + - Return value of addTTFfont() method was fixed. + +6.0.003 (2013-03-20) + - A bug related to non-unicode mode was fixed. + +6.0.002 (2013-03-18) + - _getFIXED call on tcpdf_fonts.php was fixed. + +6.0.001 (2013-03-18) + - Fixed $uni_type call on tcpdf.php. + +6.0.000 (2013-03-17) + - IMPORTANT: PHP4 support has been removed starting from this version. + - Several TCPDF methods and vars were moved to new class files: tcpdf_static.php, tcpdf_colors.php, tcpdf_images.php, tcpdf_font_data.php, tcpdf_fonts.php. + - Files htmlcolors.php, spotcolors.php, unicode_data.php and ecodings_maps.php were removed. + - Barcode classes were renamed and new barcode examples were added. + - Class TCPDF_PARSER was improved. + +******************************************************************************** + 5.9.209 (2013-03-15) - Image method was improved. diff --git a/lib/tcpdf/README.TXT b/lib/tcpdf/README.TXT index 9c33ce45d52..98b9c250ef5 100644 --- a/lib/tcpdf/README.TXT +++ b/lib/tcpdf/README.TXT @@ -8,24 +8,23 @@ http://sourceforge.net/donate/index.php?group_id=128076 ------------------------------------------------------------ Name: TCPDF -Version: 5.9.209 -Release date: 2013-03-15 +Version: 6.0.031 +Release date: 2013-09-18 Author: Nicola Asuni Copyright (c) 2002-2013: Nicola Asuni Tecnick.com LTD - Manor Coach House, Church Hill - Aldershot, Hants, GU12 4RQ - UK www.tecnick.com URLs: - http: www.tcpdf.org - http: www.sourceforge.net/projects/tcpdf + http://www.tcpdf.org + http://www.sourceforge.net/projects/tcpdf Description: TCPDF is a PHP class for generating PDF files on-the-fly without requiring external extensions. + This library includes also a class to extract data from existing PDF documents and + classes to generate 1D and 2D barcodes in various formats. Main Features: * no external libraries are required for the basic functions; @@ -67,7 +66,7 @@ Source Code Documentation: Additional Documentation: http://www.tcpdf.org -License +License: Copyright (C) 2002-2013 Nicola Asuni - Tecnick.com LTD TCPDF is free software: you can redistribute it and/or modify it @@ -86,12 +85,26 @@ License See LICENSE.TXT file for more information. -Third party fonts - This library includes third party font files released with different licenses. - These fonts are not required by TCPDF but have been included as you convenience. - The original TTF font files have been renamed for compatibility with TCPDF and compressed using the gzcompress PHP function that uses the ZLIB data format (.z files). - To get the original distribution archives please check the information on fonts subfolders: - - DejaVu fonts 2.33 (Bitstream) - Copyright, License and other info: fonts/dejavu-fonts-ttf-2.33 - - GNU FreeFont (GNU-GPLv3) - Copyright, License and other info: fonts/freefont-20100919 +Third party fonts: + + This library may include third party font files released with different licenses. + + All the PHP files on the fonts directory are subject to the general TCPDF license (GNU-LGPLv3), + they do not contain any binary data but just a description of the general properties of a particular font. + These files can be also generated on the fly using the font utilities and TCPDF methods. + + All the original binary TTF font files have been renamed for compatibility with TCPDF and compressed using the gzcompress PHP function that uses the ZLIB data format (.z files). + + The binary files (.z) that begins with the prefix "free" have been extracted from the GNU FreeFont collection (GNU-GPLv3). + The binary files (.z) that begins with the prefix "pdfa" have been derived from the GNU FreeFont, so they are subject to the same license. + For the details of Copyright, License and other information, please check the files inside the directory fonts/freefont-20120503 + Link : http://www.gnu.org/software/freefont/ + + The binary files (.z) that begins with the prefix "dejavu" have been extracted from the DejaVu fonts 2.33 (Bitstream) collection. + For the details of Copyright, License and other information, please check the files inside the directory fonts/dejavu-fonts-ttf-2.33 + Link : http://dejavu-fonts.org + + The binary files (.z) that begins with the prefix "ae" have been extracted from the Arabeyes.org collection (GNU-GPLv2). + Link : http://projects.arabeyes.org/ ============================================================ diff --git a/lib/tcpdf/composer.json b/lib/tcpdf/composer.json index 9bb7202b113..2f745dded37 100644 --- a/lib/tcpdf/composer.json +++ b/lib/tcpdf/composer.json @@ -1,10 +1,10 @@ { "name": "tecnick.com/tcpdf", - "version": "5.9.209", + "version": "6.0.031", "homepage": "http://www.tcpdf.org/", "type": "library", "description": "TCPDF is a PHP class for generating PDF documents.", - "keywords": ["pdf","tcpdf","PDFD32000-2008","qrcode","datamatrix","pdf417","barcodes"], + "keywords": ["PDF","tcpdf","PDFD32000-2008","qrcode","datamatrix","pdf417","barcodes"], "license": "LGPLv3", "authors": [ { @@ -19,20 +19,22 @@ "autoload": { "classmap": [ "fonts", - "config/lang", "config", - "2dbarcodes.php", - "barcodes.php", - "datamatrix.php", - "encodings_maps.php", - "htmlcolors.php", - "pdf417.php", - "qrcode.php", - "spotcolors.php", + "include", "tcpdf.php", - "tcpdf_filters.php", "tcpdf_parser.php", - "unicode_data.php" + "tcpdf_import.php", + "tcpdf_barcodes_1d.php", + "tcpdf_barcodes_2d.php", + "include/tcpdf_colors.php", + "include/tcpdf_filters.php", + "include/tcpdf_font_data.php", + "include/tcpdf_fonts.php", + "include/tcpdf_images.php", + "include/tcpdf_static.php", + "include/barcodes/datamatrix.php", + "include/barcodes/pdf417.php", + "include/barcodes/qrcode.php" ] } } diff --git a/lib/tcpdf/config/tcpdf_config.php b/lib/tcpdf/config/tcpdf_config.php index f5c0a182bbf..e6c1bf0d17c 100644 --- a/lib/tcpdf/config/tcpdf_config.php +++ b/lib/tcpdf/config/tcpdf_config.php @@ -2,10 +2,10 @@ //============================================================+ // File name : tcpdf_config.php // Begin : 2004-06-11 -// Last Update : 2013-02-06 +// Last Update : 2013-05-16 // // Description : Configuration file for TCPDF. -// Author : Nicola Asuni - Tecnick.com LTD - Manor Coach House, Church Hill, Aldershot, Hants, GU12 4RQ, UK - www.tecnick.com - info@tecnick.com +// Author : Nicola Asuni - Tecnick.com LTD - www.tecnick.com - info@tecnick.com // License : GNU-LGPL v3 (http://www.gnu.org/copyleft/lesser.html) // ------------------------------------------------------------------- // Copyright (C) 2004-2013 Nicola Asuni - Tecnick.com LTD @@ -38,220 +38,181 @@ // If you define the constant K_TCPDF_EXTERNAL_CONFIG, the following settings will be ignored. -if (!defined('K_TCPDF_EXTERNAL_CONFIG')) { +/** + * Installation path (/var/www/tcpdf/). + * By default it is automatically calculated but you can also set it as a fixed string to improve performances. + */ +//define ('K_PATH_MAIN', ''); - // DOCUMENT_ROOT fix for IIS Webserver - if ((!isset($_SERVER['DOCUMENT_ROOT'])) OR (empty($_SERVER['DOCUMENT_ROOT']))) { - if(isset($_SERVER['SCRIPT_FILENAME'])) { - $_SERVER['DOCUMENT_ROOT'] = str_replace( '\\', '/', substr($_SERVER['SCRIPT_FILENAME'], 0, 0-strlen($_SERVER['PHP_SELF']))); - } elseif(isset($_SERVER['PATH_TRANSLATED'])) { - $_SERVER['DOCUMENT_ROOT'] = str_replace( '\\', '/', substr(str_replace('\\\\', '\\', $_SERVER['PATH_TRANSLATED']), 0, 0-strlen($_SERVER['PHP_SELF']))); - } else { - // define here your DOCUMENT_ROOT path if the previous fails (e.g. '/var/www') - $_SERVER['DOCUMENT_ROOT'] = '/'; - } - } +/** + * URL path to tcpdf installation folder (http://localhost/tcpdf/). + * By default it is automatically set but you can also set it as a fixed string to improve performances. + */ +//define ('K_PATH_URL', ''); - // be sure that the end slash is present - $_SERVER['DOCUMENT_ROOT'] = str_replace('//', '/', $_SERVER['DOCUMENT_ROOT'].'/'); +/** + * Path for PDF fonts. + * By default it is automatically set but you can also set it as a fixed string to improve performances. + */ +//define ('K_PATH_FONTS', K_PATH_MAIN.'fonts/'); - // Automatic calculation for the following K_PATH_MAIN constant - $k_path_main = str_replace( '\\', '/', realpath(substr(dirname(__FILE__), 0, 0-strlen('config')))); - if (substr($k_path_main, -1) != '/') { - $k_path_main .= '/'; - } +/** + * Default images directory. + * By default it is automatically set but you can also set it as a fixed string to improve performances. + */ +//define ('K_PATH_IMAGES', ''); - /** - * Installation path (/var/www/tcpdf/). - * By default it is automatically calculated but you can also set it as a fixed string to improve performances. - */ - define ('K_PATH_MAIN', $k_path_main); +/** + * Deafult image logo used be the default Header() method. + * Please set here your own logo or an empty string to disable it. + */ +//define ('PDF_HEADER_LOGO', ''); - // Automatic calculation for the following K_PATH_URL constant - $k_path_url = $k_path_main; // default value for console mode - if (isset($_SERVER['HTTP_HOST']) AND (!empty($_SERVER['HTTP_HOST']))) { - if(isset($_SERVER['HTTPS']) AND (!empty($_SERVER['HTTPS'])) AND strtolower($_SERVER['HTTPS'])!='off') { - $k_path_url = 'https://'; - } else { - $k_path_url = 'http://'; - } - $k_path_url .= $_SERVER['HTTP_HOST']; - $k_path_url .= str_replace( '\\', '/', substr(K_PATH_MAIN, (strlen($_SERVER['DOCUMENT_ROOT']) - 1))); - } +/** + * Header logo image width in user units. + */ +//define ('PDF_HEADER_LOGO_WIDTH', 0); - /** - * URL path to tcpdf installation folder (http://localhost/tcpdf/). - * By default it is automatically calculated but you can also set it as a fixed string to improve performances. - */ - define ('K_PATH_URL', $k_path_url); +/** + * Cache directory for temporary files (full path). + */ +define ('K_PATH_CACHE', sys_get_temp_dir().'/'); - /** - * path for PDF fonts - * use K_PATH_MAIN.'fonts/old/' for old non-UTF8 fonts - */ - define ('K_PATH_FONTS', K_PATH_MAIN.'fonts/'); +/** + * Generic name for a blank image. + */ +define ('K_BLANK_IMAGE', '_blank.png'); - /** - * cache directory for temporary files (full path) - */ - define ('K_PATH_CACHE', K_PATH_MAIN.'cache/'); +/** + * Page format. + */ +define ('PDF_PAGE_FORMAT', 'A4'); - /** - * cache directory for temporary files (url path) - */ - define ('K_PATH_URL_CACHE', K_PATH_URL.'cache/'); +/** + * Page orientation (P=portrait, L=landscape). + */ +define ('PDF_PAGE_ORIENTATION', 'P'); - /** - *images directory - */ - define ('K_PATH_IMAGES', K_PATH_MAIN.'images/'); +/** + * Document creator. + */ +define ('PDF_CREATOR', 'TCPDF'); - /** - * blank image - */ - define ('K_BLANK_IMAGE', K_PATH_IMAGES.'_blank.png'); +/** + * Document author. + */ +define ('PDF_AUTHOR', 'TCPDF'); - /** - * page format - */ - define ('PDF_PAGE_FORMAT', 'A4'); +/** + * Header title. + */ +define ('PDF_HEADER_TITLE', 'TCPDF Example'); - /** - * page orientation (P=portrait, L=landscape) - */ - define ('PDF_PAGE_ORIENTATION', 'P'); +/** + * Header description string. + */ +define ('PDF_HEADER_STRING', "by Nicola Asuni - Tecnick.com\nwww.tcpdf.org"); - /** - * document creator - */ - define ('PDF_CREATOR', 'TCPDF'); +/** + * Document unit of measure [pt=point, mm=millimeter, cm=centimeter, in=inch]. + */ +define ('PDF_UNIT', 'mm'); - /** - * document author - */ - define ('PDF_AUTHOR', 'TCPDF'); +/** + * Header margin. + */ +define ('PDF_MARGIN_HEADER', 5); - /** - * header title - */ - define ('PDF_HEADER_TITLE', 'TCPDF Example'); +/** + * Footer margin. + */ +define ('PDF_MARGIN_FOOTER', 10); - /** - * header description string - */ - define ('PDF_HEADER_STRING', "by Nicola Asuni - Tecnick.com\nwww.tcpdf.org"); +/** + * Top margin. + */ +define ('PDF_MARGIN_TOP', 27); - /** - * image logo - */ - define ('PDF_HEADER_LOGO', 'tcpdf_logo.jpg'); +/** + * Bottom margin. + */ +define ('PDF_MARGIN_BOTTOM', 25); - /** - * header logo image width [mm] - */ - define ('PDF_HEADER_LOGO_WIDTH', 30); +/** + * Left margin. + */ +define ('PDF_MARGIN_LEFT', 15); - /** - * document unit of measure [pt=point, mm=millimeter, cm=centimeter, in=inch] - */ - define ('PDF_UNIT', 'mm'); +/** + * Right margin. + */ +define ('PDF_MARGIN_RIGHT', 15); - /** - * header margin - */ - define ('PDF_MARGIN_HEADER', 5); +/** + * Default main font name. + */ +define ('PDF_FONT_NAME_MAIN', 'helvetica'); - /** - * footer margin - */ - define ('PDF_MARGIN_FOOTER', 10); +/** + * Default main font size. + */ +define ('PDF_FONT_SIZE_MAIN', 10); - /** - * top margin - */ - define ('PDF_MARGIN_TOP', 27); +/** + * Default data font name. + */ +define ('PDF_FONT_NAME_DATA', 'helvetica'); - /** - * bottom margin - */ - define ('PDF_MARGIN_BOTTOM', 25); +/** + * Default data font size. + */ +define ('PDF_FONT_SIZE_DATA', 8); - /** - * left margin - */ - define ('PDF_MARGIN_LEFT', 15); +/** + * Default monospaced font name. + */ +define ('PDF_FONT_MONOSPACED', 'courier'); - /** - * right margin - */ - define ('PDF_MARGIN_RIGHT', 15); +/** + * Ratio used to adjust the conversion of pixels to user units. + */ +define ('PDF_IMAGE_SCALE_RATIO', 1.25); - /** - * default main font name - */ - define ('PDF_FONT_NAME_MAIN', 'helvetica'); +/** + * Magnification factor for titles. + */ +define('HEAD_MAGNIFICATION', 1.1); - /** - * default main font size - */ - define ('PDF_FONT_SIZE_MAIN', 10); +/** + * Height of cell respect font height. + */ +define('K_CELL_HEIGHT_RATIO', 1.25); - /** - * default data font name - */ - define ('PDF_FONT_NAME_DATA', 'helvetica'); +/** + * Title magnification respect main font size. + */ +define('K_TITLE_MAGNIFICATION', 1.3); - /** - * default data font size - */ - define ('PDF_FONT_SIZE_DATA', 8); +/** + * Reduction factor for small font. + */ +define('K_SMALL_RATIO', 2/3); - /** - * default monospaced font name - */ - define ('PDF_FONT_MONOSPACED', 'courier'); +/** + * Set to true to enable the special procedure used to avoid the overlappind of symbols on Thai language. + */ +define('K_THAI_TOPCHARS', true); - /** - * ratio used to adjust the conversion of pixels to user units - */ - define ('PDF_IMAGE_SCALE_RATIO', 1.25); +/** + * If true allows to call TCPDF methods using HTML syntax + * IMPORTANT: For security reason, disable this feature if you are printing user HTML content. + */ +define('K_TCPDF_CALLS_IN_HTML', true); - /** - * magnification factor for titles - */ - define('HEAD_MAGNIFICATION', 1.1); - - /** - * height of cell respect font height - */ - define('K_CELL_HEIGHT_RATIO', 1.25); - - /** - * title magnification respect main font size - */ - define('K_TITLE_MAGNIFICATION', 1.3); - - /** - * reduction factor for small font - */ - define('K_SMALL_RATIO', 2/3); - - /** - * set to true to enable the special procedure used to avoid the overlappind of symbols on Thai language - */ - define('K_THAI_TOPCHARS', true); - - /** - * if true allows to call TCPDF methods using HTML syntax - * IMPORTANT: For security reason, disable this feature if you are printing user HTML content. - */ - define('K_TCPDF_CALLS_IN_HTML', true); - - /** - * if true adn PHP version is greater than 5, then the Error() method throw new exception instead of terminating the execution. - */ - define('K_TCPDF_THROW_EXCEPTION_ERROR', false); -} +/** + * If true adn PHP version is greater than 5, then the Error() method throw new exception instead of terminating the execution. + */ +define('K_TCPDF_THROW_EXCEPTION_ERROR', false); //============================================================+ // END OF FILE diff --git a/lib/tcpdf/encodings_maps.php b/lib/tcpdf/encodings_maps.php deleted file mode 100644 index 414f8b6172f..00000000000 --- a/lib/tcpdf/encodings_maps.php +++ /dev/null @@ -1,846 +0,0 @@ -. -// -// See LICENSE.TXT file for more information. -// ------------------------------------------------------------------- -// -// Description : Unicode data for TCPDF library. -// -//============================================================+ - -/** - * @file - * Font encodings maps class for TCPDF library. - * @author Nicola Asuni - * @package com.tecnick.tcpdf - * @since 5.9.123 (2011-10-01) - */ - -/** - * @class TCPDF_ENCODING_MAPS - * This is a PHP class containing Font encodings maps class for TCPDF library. - * @package com.tecnick.tcpdf - * @version 1.0.000 - * @author Nicola Asuni - info@tecnick.com - */ -class TCPDF_ENCODING_MAPS { - -/** - * Array of Encoding Maps. - * @public - */ -public $encmap = array( - -// encoding map for: cp1251 -'cp1251' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'afii10051',129=>'afii10052',130=>'quotesinglbase',131=>'afii10100',132=>'quotedblbase',133=>'ellipsis',134=>'dagger',135=>'daggerdbl', -136=>'Euro',137=>'perthousand',138=>'afii10058',139=>'guilsinglleft',140=>'afii10059',141=>'afii10061',142=>'afii10060',143=>'afii10145', -144=>'afii10099',145=>'quoteleft',146=>'quoteright',147=>'quotedblleft',148=>'quotedblright',149=>'bullet',150=>'endash',151=>'emdash', -152=>'.notdef',153=>'trademark',154=>'afii10106',155=>'guilsinglright',156=>'afii10107',157=>'afii10109',158=>'afii10108',159=>'afii10193', -160=>'space',161=>'afii10062',162=>'afii10110',163=>'afii10057',164=>'currency',165=>'afii10050',166=>'brokenbar',167=>'section', -168=>'afii10023',169=>'copyright',170=>'afii10053',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'afii10056', -176=>'degree',177=>'plusminus',178=>'afii10055',179=>'afii10103',180=>'afii10098',181=>'mu',182=>'paragraph',183=>'periodcentered', -184=>'afii10071',185=>'afii61352',186=>'afii10101',187=>'guillemotright',188=>'afii10105',189=>'afii10054',190=>'afii10102',191=>'afii10104', -192=>'afii10017',193=>'afii10018',194=>'afii10019',195=>'afii10020',196=>'afii10021',197=>'afii10022',198=>'afii10024',199=>'afii10025', -200=>'afii10026',201=>'afii10027',202=>'afii10028',203=>'afii10029',204=>'afii10030',205=>'afii10031',206=>'afii10032',207=>'afii10033', -208=>'afii10034',209=>'afii10035',210=>'afii10036',211=>'afii10037',212=>'afii10038',213=>'afii10039',214=>'afii10040',215=>'afii10041', -216=>'afii10042',217=>'afii10043',218=>'afii10044',219=>'afii10045',220=>'afii10046',221=>'afii10047',222=>'afii10048',223=>'afii10049', -224=>'afii10065',225=>'afii10066',226=>'afii10067',227=>'afii10068',228=>'afii10069',229=>'afii10070',230=>'afii10072',231=>'afii10073', -232=>'afii10074',233=>'afii10075',234=>'afii10076',235=>'afii10077',236=>'afii10078',237=>'afii10079',238=>'afii10080',239=>'afii10081', -240=>'afii10082',241=>'afii10083',242=>'afii10084',243=>'afii10085',244=>'afii10086',245=>'afii10087',246=>'afii10088',247=>'afii10089', -248=>'afii10090',249=>'afii10091',250=>'afii10092',251=>'afii10093',252=>'afii10094',253=>'afii10095',254=>'afii10096',255=>'afii10097'), - -// encoding map for: iso-8859-4 -'iso-8859-4' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef', -136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef', -144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef', -152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef', -160=>'space',161=>'Aogonek',162=>'kgreenlandic',163=>'Rcommaaccent',164=>'currency',165=>'Itilde',166=>'Lcommaaccent',167=>'section', -168=>'dieresis',169=>'Scaron',170=>'Emacron',171=>'Gcommaaccent',172=>'Tbar',173=>'hyphen',174=>'Zcaron',175=>'macron', -176=>'degree',177=>'aogonek',178=>'ogonek',179=>'rcommaaccent',180=>'acute',181=>'itilde',182=>'lcommaaccent',183=>'caron', -184=>'cedilla',185=>'scaron',186=>'emacron',187=>'gcommaaccent',188=>'tbar',189=>'Eng',190=>'zcaron',191=>'eng', -192=>'Amacron',193=>'Aacute',194=>'Acircumflex',195=>'Atilde',196=>'Adieresis',197=>'Aring',198=>'AE',199=>'Iogonek', -200=>'Ccaron',201=>'Eacute',202=>'Eogonek',203=>'Edieresis',204=>'Edotaccent',205=>'Iacute',206=>'Icircumflex',207=>'Imacron', -208=>'Dcroat',209=>'Ncommaaccent',210=>'Omacron',211=>'Kcommaaccent',212=>'Ocircumflex',213=>'Otilde',214=>'Odieresis',215=>'multiply', -216=>'Oslash',217=>'Uogonek',218=>'Uacute',219=>'Ucircumflex',220=>'Udieresis',221=>'Utilde',222=>'Umacron',223=>'germandbls', -224=>'amacron',225=>'aacute',226=>'acircumflex',227=>'atilde',228=>'adieresis',229=>'aring',230=>'ae',231=>'iogonek', -232=>'ccaron',233=>'eacute',234=>'eogonek',235=>'edieresis',236=>'edotaccent',237=>'iacute',238=>'icircumflex',239=>'imacron', -240=>'dcroat',241=>'ncommaaccent',242=>'omacron',243=>'kcommaaccent',244=>'ocircumflex',245=>'otilde',246=>'odieresis',247=>'divide', -248=>'oslash',249=>'uogonek',250=>'uacute',251=>'ucircumflex',252=>'udieresis',253=>'utilde',254=>'umacron',255=>'dotaccent'), - -// encoding map for: cp1255 -'cp1255' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'Euro',129=>'.notdef',130=>'quotesinglbase',131=>'florin',132=>'quotedblbase',133=>'ellipsis',134=>'dagger',135=>'daggerdbl', -136=>'circumflex',137=>'perthousand',138=>'.notdef',139=>'guilsinglleft',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef', -144=>'.notdef',145=>'quoteleft',146=>'quoteright',147=>'quotedblleft',148=>'quotedblright',149=>'bullet',150=>'endash',151=>'emdash', -152=>'tilde',153=>'trademark',154=>'.notdef',155=>'guilsinglright',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef', -160=>'space',161=>'exclamdown',162=>'cent',163=>'sterling',164=>'afii57636',165=>'yen',166=>'brokenbar',167=>'section', -168=>'dieresis',169=>'copyright',170=>'multiply',171=>'guillemotleft',172=>'logicalnot',173=>'sfthyphen',174=>'registered',175=>'macron', -176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'acute',181=>'mu',182=>'paragraph',183=>'middot', -184=>'cedilla',185=>'onesuperior',186=>'divide',187=>'guillemotright',188=>'onequarter',189=>'onehalf',190=>'threequarters',191=>'questiondown', -192=>'afii57799',193=>'afii57801',194=>'afii57800',195=>'afii57802',196=>'afii57793',197=>'afii57794',198=>'afii57795',199=>'afii57798', -200=>'afii57797',201=>'afii57806',202=>'.notdef',203=>'afii57796',204=>'afii57807',205=>'afii57839',206=>'afii57645',207=>'afii57841', -208=>'afii57842',209=>'afii57804',210=>'afii57803',211=>'afii57658',212=>'afii57716',213=>'afii57717',214=>'afii57718',215=>'gereshhebrew', -216=>'gershayimhebrew',217=>'.notdef',218=>'.notdef',219=>'.notdef',220=>'.notdef',221=>'.notdef',222=>'.notdef',223=>'.notdef', -224=>'afii57664',225=>'afii57665',226=>'afii57666',227=>'afii57667',228=>'afii57668',229=>'afii57669',230=>'afii57670',231=>'afii57671', -232=>'afii57672',233=>'afii57673',234=>'afii57674',235=>'afii57675',236=>'afii57676',237=>'afii57677',238=>'afii57678',239=>'afii57679', -240=>'afii57680',241=>'afii57681',242=>'afii57682',243=>'afii57683',244=>'afii57684',245=>'afii57685',246=>'afii57686',247=>'afii57687', -248=>'afii57688',249=>'afii57689',250=>'afii57690',251=>'.notdef',252=>'.notdef',253=>'afii299',254=>'afii300',255=>'.notdef'), - -// encoding map for: iso-8859-11 -'iso-8859-11' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef', -136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef', -144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef', -152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef', -160=>'space',161=>'kokaithai',162=>'khokhaithai',163=>'khokhuatthai',164=>'khokhwaithai',165=>'khokhonthai',166=>'khorakhangthai',167=>'ngonguthai', -168=>'chochanthai',169=>'chochingthai',170=>'chochangthai',171=>'sosothai',172=>'chochoethai',173=>'yoyingthai',174=>'dochadathai',175=>'topatakthai', -176=>'thothanthai',177=>'thonangmonthothai',178=>'thophuthaothai',179=>'nonenthai',180=>'dodekthai',181=>'totaothai',182=>'thothungthai',183=>'thothahanthai', -184=>'thothongthai',185=>'nonuthai',186=>'bobaimaithai',187=>'poplathai',188=>'phophungthai',189=>'fofathai',190=>'phophanthai',191=>'fofanthai', -192=>'phosamphaothai',193=>'momathai',194=>'yoyakthai',195=>'roruathai',196=>'ruthai',197=>'lolingthai',198=>'luthai',199=>'wowaenthai', -200=>'sosalathai',201=>'sorusithai',202=>'sosuathai',203=>'hohipthai',204=>'lochulathai',205=>'oangthai',206=>'honokhukthai',207=>'paiyannoithai', -208=>'saraathai',209=>'maihanakatthai',210=>'saraaathai',211=>'saraamthai',212=>'saraithai',213=>'saraiithai',214=>'sarauethai',215=>'saraueethai', -216=>'sarauthai',217=>'sarauuthai',218=>'phinthuthai',219=>'.notdef',220=>'.notdef',221=>'.notdef',222=>'.notdef',223=>'bahtthai', -224=>'saraethai',225=>'saraaethai',226=>'saraothai',227=>'saraaimaimuanthai',228=>'saraaimaimalaithai',229=>'lakkhangyaothai',230=>'maiyamokthai',231=>'maitaikhuthai', -232=>'maiekthai',233=>'maithothai',234=>'maitrithai',235=>'maichattawathai',236=>'thanthakhatthai',237=>'nikhahitthai',238=>'yamakkanthai',239=>'fongmanthai', -240=>'zerothai',241=>'onethai',242=>'twothai',243=>'threethai',244=>'fourthai',245=>'fivethai',246=>'sixthai',247=>'seventhai', -248=>'eightthai',249=>'ninethai',250=>'angkhankhuthai',251=>'khomutthai',252=>'.notdef',253=>'.notdef',254=>'.notdef',255=>'.notdef'), - -// encoding map for: cp1257 -'cp1257' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'Euro',129=>'.notdef',130=>'quotesinglbase',131=>'.notdef',132=>'quotedblbase',133=>'ellipsis',134=>'dagger',135=>'daggerdbl', -136=>'.notdef',137=>'perthousand',138=>'.notdef',139=>'guilsinglleft',140=>'.notdef',141=>'dieresis',142=>'caron',143=>'cedilla', -144=>'.notdef',145=>'quoteleft',146=>'quoteright',147=>'quotedblleft',148=>'quotedblright',149=>'bullet',150=>'endash',151=>'emdash', -152=>'.notdef',153=>'trademark',154=>'.notdef',155=>'guilsinglright',156=>'.notdef',157=>'macron',158=>'ogonek',159=>'.notdef', -160=>'space',161=>'.notdef',162=>'cent',163=>'sterling',164=>'currency',165=>'.notdef',166=>'brokenbar',167=>'section', -168=>'Oslash',169=>'copyright',170=>'Rcommaaccent',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'AE', -176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'acute',181=>'mu',182=>'paragraph',183=>'periodcentered', -184=>'oslash',185=>'onesuperior',186=>'rcommaaccent',187=>'guillemotright',188=>'onequarter',189=>'onehalf',190=>'threequarters',191=>'ae', -192=>'Aogonek',193=>'Iogonek',194=>'Amacron',195=>'Cacute',196=>'Adieresis',197=>'Aring',198=>'Eogonek',199=>'Emacron', -200=>'Ccaron',201=>'Eacute',202=>'Zacute',203=>'Edotaccent',204=>'Gcommaaccent',205=>'Kcommaaccent',206=>'Imacron',207=>'Lcommaaccent', -208=>'Scaron',209=>'Nacute',210=>'Ncommaaccent',211=>'Oacute',212=>'Omacron',213=>'Otilde',214=>'Odieresis',215=>'multiply', -216=>'Uogonek',217=>'Lslash',218=>'Sacute',219=>'Umacron',220=>'Udieresis',221=>'Zdotaccent',222=>'Zcaron',223=>'germandbls', -224=>'aogonek',225=>'iogonek',226=>'amacron',227=>'cacute',228=>'adieresis',229=>'aring',230=>'eogonek',231=>'emacron', -232=>'ccaron',233=>'eacute',234=>'zacute',235=>'edotaccent',236=>'gcommaaccent',237=>'kcommaaccent',238=>'imacron',239=>'lcommaaccent', -240=>'scaron',241=>'nacute',242=>'ncommaaccent',243=>'oacute',244=>'omacron',245=>'otilde',246=>'odieresis',247=>'divide', -248=>'uogonek',249=>'lslash',250=>'sacute',251=>'umacron',252=>'udieresis',253=>'zdotaccent',254=>'zcaron',255=>'dotaccent'), - -// encoding map for: cp1258 -'cp1258' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'Euro',129=>'.notdef',130=>'quotesinglbase',131=>'florin',132=>'quotedblbase',133=>'ellipsis',134=>'dagger',135=>'daggerdbl', -136=>'circumflex',137=>'perthousand',138=>'.notdef',139=>'guilsinglleft',140=>'OE',141=>'.notdef',142=>'.notdef',143=>'.notdef', -144=>'.notdef',145=>'quoteleft',146=>'quoteright',147=>'quotedblleft',148=>'quotedblright',149=>'bullet',150=>'endash',151=>'emdash', -152=>'tilde',153=>'trademark',154=>'.notdef',155=>'guilsinglright',156=>'oe',157=>'.notdef',158=>'.notdef',159=>'Ydieresis', -160=>'space',161=>'exclamdown',162=>'cent',163=>'sterling',164=>'currency',165=>'yen',166=>'brokenbar',167=>'section', -168=>'dieresis',169=>'copyright',170=>'ordfeminine',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'macron', -176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'acute',181=>'mu',182=>'paragraph',183=>'periodcentered', -184=>'cedilla',185=>'onesuperior',186=>'ordmasculine',187=>'guillemotright',188=>'onequarter',189=>'onehalf',190=>'threequarters',191=>'questiondown', -192=>'Agrave',193=>'Aacute',194=>'Acircumflex',195=>'Abreve',196=>'Adieresis',197=>'Aring',198=>'AE',199=>'Ccedilla', -200=>'Egrave',201=>'Eacute',202=>'Ecircumflex',203=>'Edieresis',204=>'gravecomb',205=>'Iacute',206=>'Icircumflex',207=>'Idieresis', -208=>'Dcroat',209=>'Ntilde',210=>'hookabovecomb',211=>'Oacute',212=>'Ocircumflex',213=>'Ohorn',214=>'Odieresis',215=>'multiply', -216=>'Oslash',217=>'Ugrave',218=>'Uacute',219=>'Ucircumflex',220=>'Udieresis',221=>'Uhorn',222=>'tildecomb',223=>'germandbls', -224=>'agrave',225=>'aacute',226=>'acircumflex',227=>'abreve',228=>'adieresis',229=>'aring',230=>'ae',231=>'ccedilla', -232=>'egrave',233=>'eacute',234=>'ecircumflex',235=>'edieresis',236=>'acutecomb',237=>'iacute',238=>'icircumflex',239=>'idieresis', -240=>'dcroat',241=>'ntilde',242=>'dotbelowcomb',243=>'oacute',244=>'ocircumflex',245=>'ohorn',246=>'odieresis',247=>'divide', -248=>'oslash',249=>'ugrave',250=>'uacute',251=>'ucircumflex',252=>'udieresis',253=>'uhorn',254=>'dong',255=>'ydieresis'), - -// encoding map for: cp1253 -'cp1253' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'Euro',129=>'.notdef',130=>'quotesinglbase',131=>'florin',132=>'quotedblbase',133=>'ellipsis',134=>'dagger',135=>'daggerdbl', -136=>'.notdef',137=>'perthousand',138=>'.notdef',139=>'guilsinglleft',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef', -144=>'.notdef',145=>'quoteleft',146=>'quoteright',147=>'quotedblleft',148=>'quotedblright',149=>'bullet',150=>'endash',151=>'emdash', -152=>'.notdef',153=>'trademark',154=>'.notdef',155=>'guilsinglright',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef', -160=>'space',161=>'dieresistonos',162=>'Alphatonos',163=>'sterling',164=>'currency',165=>'yen',166=>'brokenbar',167=>'section', -168=>'dieresis',169=>'copyright',170=>'.notdef',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'afii00208', -176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'tonos',181=>'mu',182=>'paragraph',183=>'periodcentered', -184=>'Epsilontonos',185=>'Etatonos',186=>'Iotatonos',187=>'guillemotright',188=>'Omicrontonos',189=>'onehalf',190=>'Upsilontonos',191=>'Omegatonos', -192=>'iotadieresistonos',193=>'Alpha',194=>'Beta',195=>'Gamma',196=>'Delta',197=>'Epsilon',198=>'Zeta',199=>'Eta', -200=>'Theta',201=>'Iota',202=>'Kappa',203=>'Lambda',204=>'Mu',205=>'Nu',206=>'Xi',207=>'Omicron', -208=>'Pi',209=>'Rho',210=>'.notdef',211=>'Sigma',212=>'Tau',213=>'Upsilon',214=>'Phi',215=>'Chi', -216=>'Psi',217=>'Omega',218=>'Iotadieresis',219=>'Upsilondieresis',220=>'alphatonos',221=>'epsilontonos',222=>'etatonos',223=>'iotatonos', -224=>'upsilondieresistonos',225=>'alpha',226=>'beta',227=>'gamma',228=>'delta',229=>'epsilon',230=>'zeta',231=>'eta', -232=>'theta',233=>'iota',234=>'kappa',235=>'lambda',236=>'mu',237=>'nu',238=>'xi',239=>'omicron', -240=>'pi',241=>'rho',242=>'sigma1',243=>'sigma',244=>'tau',245=>'upsilon',246=>'phi',247=>'chi', -248=>'psi',249=>'omega',250=>'iotadieresis',251=>'upsilondieresis',252=>'omicrontonos',253=>'upsilontonos',254=>'omegatonos',255=>'.notdef'), - -// encoding map for: cp874 -'cp874' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'Euro',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'ellipsis',134=>'.notdef',135=>'.notdef', -136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef', -144=>'.notdef',145=>'quoteleft',146=>'quoteright',147=>'quotedblleft',148=>'quotedblright',149=>'bullet',150=>'endash',151=>'emdash', -152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef', -160=>'space',161=>'kokaithai',162=>'khokhaithai',163=>'khokhuatthai',164=>'khokhwaithai',165=>'khokhonthai',166=>'khorakhangthai',167=>'ngonguthai', -168=>'chochanthai',169=>'chochingthai',170=>'chochangthai',171=>'sosothai',172=>'chochoethai',173=>'yoyingthai',174=>'dochadathai',175=>'topatakthai', -176=>'thothanthai',177=>'thonangmonthothai',178=>'thophuthaothai',179=>'nonenthai',180=>'dodekthai',181=>'totaothai',182=>'thothungthai',183=>'thothahanthai', -184=>'thothongthai',185=>'nonuthai',186=>'bobaimaithai',187=>'poplathai',188=>'phophungthai',189=>'fofathai',190=>'phophanthai',191=>'fofanthai', -192=>'phosamphaothai',193=>'momathai',194=>'yoyakthai',195=>'roruathai',196=>'ruthai',197=>'lolingthai',198=>'luthai',199=>'wowaenthai', -200=>'sosalathai',201=>'sorusithai',202=>'sosuathai',203=>'hohipthai',204=>'lochulathai',205=>'oangthai',206=>'honokhukthai',207=>'paiyannoithai', -208=>'saraathai',209=>'maihanakatthai',210=>'saraaathai',211=>'saraamthai',212=>'saraithai',213=>'saraiithai',214=>'sarauethai',215=>'saraueethai', -216=>'sarauthai',217=>'sarauuthai',218=>'phinthuthai',219=>'.notdef',220=>'.notdef',221=>'.notdef',222=>'.notdef',223=>'bahtthai', -224=>'saraethai',225=>'saraaethai',226=>'saraothai',227=>'saraaimaimuanthai',228=>'saraaimaimalaithai',229=>'lakkhangyaothai',230=>'maiyamokthai',231=>'maitaikhuthai', -232=>'maiekthai',233=>'maithothai',234=>'maitrithai',235=>'maichattawathai',236=>'thanthakhatthai',237=>'nikhahitthai',238=>'yamakkanthai',239=>'fongmanthai', -240=>'zerothai',241=>'onethai',242=>'twothai',243=>'threethai',244=>'fourthai',245=>'fivethai',246=>'sixthai',247=>'seventhai', -248=>'eightthai',249=>'ninethai',250=>'angkhankhuthai',251=>'khomutthai',252=>'.notdef',253=>'.notdef',254=>'.notdef',255=>'.notdef'), - -// encoding map for: iso-8859-2 -'iso-8859-2' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef', -136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef', -144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef', -152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef', -160=>'space',161=>'Aogonek',162=>'breve',163=>'Lslash',164=>'currency',165=>'Lcaron',166=>'Sacute',167=>'section', -168=>'dieresis',169=>'Scaron',170=>'Scedilla',171=>'Tcaron',172=>'Zacute',173=>'hyphen',174=>'Zcaron',175=>'Zdotaccent', -176=>'degree',177=>'aogonek',178=>'ogonek',179=>'lslash',180=>'acute',181=>'lcaron',182=>'sacute',183=>'caron', -184=>'cedilla',185=>'scaron',186=>'scedilla',187=>'tcaron',188=>'zacute',189=>'hungarumlaut',190=>'zcaron',191=>'zdotaccent', -192=>'Racute',193=>'Aacute',194=>'Acircumflex',195=>'Abreve',196=>'Adieresis',197=>'Lacute',198=>'Cacute',199=>'Ccedilla', -200=>'Ccaron',201=>'Eacute',202=>'Eogonek',203=>'Edieresis',204=>'Ecaron',205=>'Iacute',206=>'Icircumflex',207=>'Dcaron', -208=>'Dcroat',209=>'Nacute',210=>'Ncaron',211=>'Oacute',212=>'Ocircumflex',213=>'Ohungarumlaut',214=>'Odieresis',215=>'multiply', -216=>'Rcaron',217=>'Uring',218=>'Uacute',219=>'Uhungarumlaut',220=>'Udieresis',221=>'Yacute',222=>'Tcommaaccent',223=>'germandbls', -224=>'racute',225=>'aacute',226=>'acircumflex',227=>'abreve',228=>'adieresis',229=>'lacute',230=>'cacute',231=>'ccedilla', -232=>'ccaron',233=>'eacute',234=>'eogonek',235=>'edieresis',236=>'ecaron',237=>'iacute',238=>'icircumflex',239=>'dcaron', -240=>'dcroat',241=>'nacute',242=>'ncaron',243=>'oacute',244=>'ocircumflex',245=>'ohungarumlaut',246=>'odieresis',247=>'divide', -248=>'rcaron',249=>'uring',250=>'uacute',251=>'uhungarumlaut',252=>'udieresis',253=>'yacute',254=>'tcommaaccent',255=>'dotaccent'), - -// encoding map for: cp1250 -'cp1250' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'Euro',129=>'.notdef',130=>'quotesinglbase',131=>'.notdef',132=>'quotedblbase',133=>'ellipsis',134=>'dagger',135=>'daggerdbl', -136=>'.notdef',137=>'perthousand',138=>'Scaron',139=>'guilsinglleft',140=>'Sacute',141=>'Tcaron',142=>'Zcaron',143=>'Zacute', -144=>'.notdef',145=>'quoteleft',146=>'quoteright',147=>'quotedblleft',148=>'quotedblright',149=>'bullet',150=>'endash',151=>'emdash', -152=>'.notdef',153=>'trademark',154=>'scaron',155=>'guilsinglright',156=>'sacute',157=>'tcaron',158=>'zcaron',159=>'zacute', -160=>'space',161=>'caron',162=>'breve',163=>'Lslash',164=>'currency',165=>'Aogonek',166=>'brokenbar',167=>'section', -168=>'dieresis',169=>'copyright',170=>'Scedilla',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'Zdotaccent', -176=>'degree',177=>'plusminus',178=>'ogonek',179=>'lslash',180=>'acute',181=>'mu',182=>'paragraph',183=>'periodcentered', -184=>'cedilla',185=>'aogonek',186=>'scedilla',187=>'guillemotright',188=>'Lcaron',189=>'hungarumlaut',190=>'lcaron',191=>'zdotaccent', -192=>'Racute',193=>'Aacute',194=>'Acircumflex',195=>'Abreve',196=>'Adieresis',197=>'Lacute',198=>'Cacute',199=>'Ccedilla', -200=>'Ccaron',201=>'Eacute',202=>'Eogonek',203=>'Edieresis',204=>'Ecaron',205=>'Iacute',206=>'Icircumflex',207=>'Dcaron', -208=>'Dcroat',209=>'Nacute',210=>'Ncaron',211=>'Oacute',212=>'Ocircumflex',213=>'Ohungarumlaut',214=>'Odieresis',215=>'multiply', -216=>'Rcaron',217=>'Uring',218=>'Uacute',219=>'Uhungarumlaut',220=>'Udieresis',221=>'Yacute',222=>'Tcommaaccent',223=>'germandbls', -224=>'racute',225=>'aacute',226=>'acircumflex',227=>'abreve',228=>'adieresis',229=>'lacute',230=>'cacute',231=>'ccedilla', -232=>'ccaron',233=>'eacute',234=>'eogonek',235=>'edieresis',236=>'ecaron',237=>'iacute',238=>'icircumflex',239=>'dcaron', -240=>'dcroat',241=>'nacute',242=>'ncaron',243=>'oacute',244=>'ocircumflex',245=>'ohungarumlaut',246=>'odieresis',247=>'divide', -248=>'rcaron',249=>'uring',250=>'uacute',251=>'uhungarumlaut',252=>'udieresis',253=>'yacute',254=>'tcommaaccent',255=>'dotaccent'), - -// encoding map for: iso-8859-7 -'iso-8859-7' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef', -136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef', -144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef', -152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef', -160=>'space',161=>'quoteleft',162=>'quoteright',163=>'sterling',164=>'.notdef',165=>'.notdef',166=>'brokenbar',167=>'section', -168=>'dieresis',169=>'copyright',170=>'.notdef',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'.notdef',175=>'afii00208', -176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'tonos',181=>'dieresistonos',182=>'Alphatonos',183=>'periodcentered', -184=>'Epsilontonos',185=>'Etatonos',186=>'Iotatonos',187=>'guillemotright',188=>'Omicrontonos',189=>'onehalf',190=>'Upsilontonos',191=>'Omegatonos', -192=>'iotadieresistonos',193=>'Alpha',194=>'Beta',195=>'Gamma',196=>'Delta',197=>'Epsilon',198=>'Zeta',199=>'Eta', -200=>'Theta',201=>'Iota',202=>'Kappa',203=>'Lambda',204=>'Mu',205=>'Nu',206=>'Xi',207=>'Omicron', -208=>'Pi',209=>'Rho',210=>'.notdef',211=>'Sigma',212=>'Tau',213=>'Upsilon',214=>'Phi',215=>'Chi', -216=>'Psi',217=>'Omega',218=>'Iotadieresis',219=>'Upsilondieresis',220=>'alphatonos',221=>'epsilontonos',222=>'etatonos',223=>'iotatonos', -224=>'upsilondieresistonos',225=>'alpha',226=>'beta',227=>'gamma',228=>'delta',229=>'epsilon',230=>'zeta',231=>'eta', -232=>'theta',233=>'iota',234=>'kappa',235=>'lambda',236=>'mu',237=>'nu',238=>'xi',239=>'omicron', -240=>'pi',241=>'rho',242=>'sigma1',243=>'sigma',244=>'tau',245=>'upsilon',246=>'phi',247=>'chi', -248=>'psi',249=>'omega',250=>'iotadieresis',251=>'upsilondieresis',252=>'omicrontonos',253=>'upsilontonos',254=>'omegatonos',255=>'.notdef'), - -// encoding map for: iso-8859-9 -'iso-8859-9' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef', -136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef', -144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef', -152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef', -160=>'space',161=>'exclamdown',162=>'cent',163=>'sterling',164=>'currency',165=>'yen',166=>'brokenbar',167=>'section', -168=>'dieresis',169=>'copyright',170=>'ordfeminine',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'macron', -176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'acute',181=>'mu',182=>'paragraph',183=>'periodcentered', -184=>'cedilla',185=>'onesuperior',186=>'ordmasculine',187=>'guillemotright',188=>'onequarter',189=>'onehalf',190=>'threequarters',191=>'questiondown', -192=>'Agrave',193=>'Aacute',194=>'Acircumflex',195=>'Atilde',196=>'Adieresis',197=>'Aring',198=>'AE',199=>'Ccedilla', -200=>'Egrave',201=>'Eacute',202=>'Ecircumflex',203=>'Edieresis',204=>'Igrave',205=>'Iacute',206=>'Icircumflex',207=>'Idieresis', -208=>'Gbreve',209=>'Ntilde',210=>'Ograve',211=>'Oacute',212=>'Ocircumflex',213=>'Otilde',214=>'Odieresis',215=>'multiply', -216=>'Oslash',217=>'Ugrave',218=>'Uacute',219=>'Ucircumflex',220=>'Udieresis',221=>'Idotaccent',222=>'Scedilla',223=>'germandbls', -224=>'agrave',225=>'aacute',226=>'acircumflex',227=>'atilde',228=>'adieresis',229=>'aring',230=>'ae',231=>'ccedilla', -232=>'egrave',233=>'eacute',234=>'ecircumflex',235=>'edieresis',236=>'igrave',237=>'iacute',238=>'icircumflex',239=>'idieresis', -240=>'gbreve',241=>'ntilde',242=>'ograve',243=>'oacute',244=>'ocircumflex',245=>'otilde',246=>'odieresis',247=>'divide', -248=>'oslash',249=>'ugrave',250=>'uacute',251=>'ucircumflex',252=>'udieresis',253=>'dotlessi',254=>'scedilla',255=>'ydieresis'), - -// encoding map for: cp1252 -'cp1252' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'Euro',129=>'.notdef',130=>'quotesinglbase',131=>'florin',132=>'quotedblbase',133=>'ellipsis',134=>'dagger',135=>'daggerdbl', -136=>'circumflex',137=>'perthousand',138=>'Scaron',139=>'guilsinglleft',140=>'OE',141=>'.notdef',142=>'Zcaron',143=>'.notdef', -144=>'.notdef',145=>'quoteleft',146=>'quoteright',147=>'quotedblleft',148=>'quotedblright',149=>'bullet',150=>'endash',151=>'emdash', -152=>'tilde',153=>'trademark',154=>'scaron',155=>'guilsinglright',156=>'oe',157=>'.notdef',158=>'zcaron',159=>'Ydieresis', -160=>'space',161=>'exclamdown',162=>'cent',163=>'sterling',164=>'currency',165=>'yen',166=>'brokenbar',167=>'section', -168=>'dieresis',169=>'copyright',170=>'ordfeminine',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'macron', -176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'acute',181=>'mu',182=>'paragraph',183=>'periodcentered', -184=>'cedilla',185=>'onesuperior',186=>'ordmasculine',187=>'guillemotright',188=>'onequarter',189=>'onehalf',190=>'threequarters',191=>'questiondown', -192=>'Agrave',193=>'Aacute',194=>'Acircumflex',195=>'Atilde',196=>'Adieresis',197=>'Aring',198=>'AE',199=>'Ccedilla', -200=>'Egrave',201=>'Eacute',202=>'Ecircumflex',203=>'Edieresis',204=>'Igrave',205=>'Iacute',206=>'Icircumflex',207=>'Idieresis', -208=>'Eth',209=>'Ntilde',210=>'Ograve',211=>'Oacute',212=>'Ocircumflex',213=>'Otilde',214=>'Odieresis',215=>'multiply', -216=>'Oslash',217=>'Ugrave',218=>'Uacute',219=>'Ucircumflex',220=>'Udieresis',221=>'Yacute',222=>'Thorn',223=>'germandbls', -224=>'agrave',225=>'aacute',226=>'acircumflex',227=>'atilde',228=>'adieresis',229=>'aring',230=>'ae',231=>'ccedilla', -232=>'egrave',233=>'eacute',234=>'ecircumflex',235=>'edieresis',236=>'igrave',237=>'iacute',238=>'icircumflex',239=>'idieresis', -240=>'eth',241=>'ntilde',242=>'ograve',243=>'oacute',244=>'ocircumflex',245=>'otilde',246=>'odieresis',247=>'divide', -248=>'oslash',249=>'ugrave',250=>'uacute',251=>'ucircumflex',252=>'udieresis',253=>'yacute',254=>'thorn',255=>'ydieresis'), - -// encoding map for: cp1254 -'cp1254' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'Euro',129=>'.notdef',130=>'quotesinglbase',131=>'florin',132=>'quotedblbase',133=>'ellipsis',134=>'dagger',135=>'daggerdbl', -136=>'circumflex',137=>'perthousand',138=>'Scaron',139=>'guilsinglleft',140=>'OE',141=>'.notdef',142=>'.notdef',143=>'.notdef', -144=>'.notdef',145=>'quoteleft',146=>'quoteright',147=>'quotedblleft',148=>'quotedblright',149=>'bullet',150=>'endash',151=>'emdash', -152=>'tilde',153=>'trademark',154=>'scaron',155=>'guilsinglright',156=>'oe',157=>'.notdef',158=>'.notdef',159=>'Ydieresis', -160=>'space',161=>'exclamdown',162=>'cent',163=>'sterling',164=>'currency',165=>'yen',166=>'brokenbar',167=>'section', -168=>'dieresis',169=>'copyright',170=>'ordfeminine',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'macron', -176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'acute',181=>'mu',182=>'paragraph',183=>'periodcentered', -184=>'cedilla',185=>'onesuperior',186=>'ordmasculine',187=>'guillemotright',188=>'onequarter',189=>'onehalf',190=>'threequarters',191=>'questiondown', -192=>'Agrave',193=>'Aacute',194=>'Acircumflex',195=>'Atilde',196=>'Adieresis',197=>'Aring',198=>'AE',199=>'Ccedilla', -200=>'Egrave',201=>'Eacute',202=>'Ecircumflex',203=>'Edieresis',204=>'Igrave',205=>'Iacute',206=>'Icircumflex',207=>'Idieresis', -208=>'Gbreve',209=>'Ntilde',210=>'Ograve',211=>'Oacute',212=>'Ocircumflex',213=>'Otilde',214=>'Odieresis',215=>'multiply', -216=>'Oslash',217=>'Ugrave',218=>'Uacute',219=>'Ucircumflex',220=>'Udieresis',221=>'Idotaccent',222=>'Scedilla',223=>'germandbls', -224=>'agrave',225=>'aacute',226=>'acircumflex',227=>'atilde',228=>'adieresis',229=>'aring',230=>'ae',231=>'ccedilla', -232=>'egrave',233=>'eacute',234=>'ecircumflex',235=>'edieresis',236=>'igrave',237=>'iacute',238=>'icircumflex',239=>'idieresis', -240=>'gbreve',241=>'ntilde',242=>'ograve',243=>'oacute',244=>'ocircumflex',245=>'otilde',246=>'odieresis',247=>'divide', -248=>'oslash',249=>'ugrave',250=>'uacute',251=>'ucircumflex',252=>'udieresis',253=>'dotlessi',254=>'scedilla',255=>'ydieresis'), - -// encoding map for: iso-8859-1 -'iso-8859-1' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef', -136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef', -144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef', -152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef', -160=>'space',161=>'exclamdown',162=>'cent',163=>'sterling',164=>'currency',165=>'yen',166=>'brokenbar',167=>'section', -168=>'dieresis',169=>'copyright',170=>'ordfeminine',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'macron', -176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'acute',181=>'mu',182=>'paragraph',183=>'periodcentered', -184=>'cedilla',185=>'onesuperior',186=>'ordmasculine',187=>'guillemotright',188=>'onequarter',189=>'onehalf',190=>'threequarters',191=>'questiondown', -192=>'Agrave',193=>'Aacute',194=>'Acircumflex',195=>'Atilde',196=>'Adieresis',197=>'Aring',198=>'AE',199=>'Ccedilla', -200=>'Egrave',201=>'Eacute',202=>'Ecircumflex',203=>'Edieresis',204=>'Igrave',205=>'Iacute',206=>'Icircumflex',207=>'Idieresis', -208=>'Eth',209=>'Ntilde',210=>'Ograve',211=>'Oacute',212=>'Ocircumflex',213=>'Otilde',214=>'Odieresis',215=>'multiply', -216=>'Oslash',217=>'Ugrave',218=>'Uacute',219=>'Ucircumflex',220=>'Udieresis',221=>'Yacute',222=>'Thorn',223=>'germandbls', -224=>'agrave',225=>'aacute',226=>'acircumflex',227=>'atilde',228=>'adieresis',229=>'aring',230=>'ae',231=>'ccedilla', -232=>'egrave',233=>'eacute',234=>'ecircumflex',235=>'edieresis',236=>'igrave',237=>'iacute',238=>'icircumflex',239=>'idieresis', -240=>'eth',241=>'ntilde',242=>'ograve',243=>'oacute',244=>'ocircumflex',245=>'otilde',246=>'odieresis',247=>'divide', -248=>'oslash',249=>'ugrave',250=>'uacute',251=>'ucircumflex',252=>'udieresis',253=>'yacute',254=>'thorn',255=>'ydieresis'), - -// encoding map for: iso-8859-15 -'iso-8859-15' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef', -136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef', -144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef', -152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef', -160=>'space',161=>'exclamdown',162=>'cent',163=>'sterling',164=>'Euro',165=>'yen',166=>'Scaron',167=>'section', -168=>'scaron',169=>'copyright',170=>'ordfeminine',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'macron', -176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'Zcaron',181=>'mu',182=>'paragraph',183=>'periodcentered', -184=>'zcaron',185=>'onesuperior',186=>'ordmasculine',187=>'guillemotright',188=>'OE',189=>'oe',190=>'Ydieresis',191=>'questiondown', -192=>'Agrave',193=>'Aacute',194=>'Acircumflex',195=>'Atilde',196=>'Adieresis',197=>'Aring',198=>'AE',199=>'Ccedilla', -200=>'Egrave',201=>'Eacute',202=>'Ecircumflex',203=>'Edieresis',204=>'Igrave',205=>'Iacute',206=>'Icircumflex',207=>'Idieresis', -208=>'Eth',209=>'Ntilde',210=>'Ograve',211=>'Oacute',212=>'Ocircumflex',213=>'Otilde',214=>'Odieresis',215=>'multiply', -216=>'Oslash',217=>'Ugrave',218=>'Uacute',219=>'Ucircumflex',220=>'Udieresis',221=>'Yacute',222=>'Thorn',223=>'germandbls', -224=>'agrave',225=>'aacute',226=>'acircumflex',227=>'atilde',228=>'adieresis',229=>'aring',230=>'ae',231=>'ccedilla', -232=>'egrave',233=>'eacute',234=>'ecircumflex',235=>'edieresis',236=>'igrave',237=>'iacute',238=>'icircumflex',239=>'idieresis', -240=>'eth',241=>'ntilde',242=>'ograve',243=>'oacute',244=>'ocircumflex',245=>'otilde',246=>'odieresis',247=>'divide', -248=>'oslash',249=>'ugrave',250=>'uacute',251=>'ucircumflex',252=>'udieresis',253=>'yacute',254=>'thorn',255=>'ydieresis'), - -// encoding map for: iso-8859-5 -'iso-8859-5' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef', -136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef', -144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef', -152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef', -160=>'space',161=>'afii10023',162=>'afii10051',163=>'afii10052',164=>'afii10053',165=>'afii10054',166=>'afii10055',167=>'afii10056', -168=>'afii10057',169=>'afii10058',170=>'afii10059',171=>'afii10060',172=>'afii10061',173=>'hyphen',174=>'afii10062',175=>'afii10145', -176=>'afii10017',177=>'afii10018',178=>'afii10019',179=>'afii10020',180=>'afii10021',181=>'afii10022',182=>'afii10024',183=>'afii10025', -184=>'afii10026',185=>'afii10027',186=>'afii10028',187=>'afii10029',188=>'afii10030',189=>'afii10031',190=>'afii10032',191=>'afii10033', -192=>'afii10034',193=>'afii10035',194=>'afii10036',195=>'afii10037',196=>'afii10038',197=>'afii10039',198=>'afii10040',199=>'afii10041', -200=>'afii10042',201=>'afii10043',202=>'afii10044',203=>'afii10045',204=>'afii10046',205=>'afii10047',206=>'afii10048',207=>'afii10049', -208=>'afii10065',209=>'afii10066',210=>'afii10067',211=>'afii10068',212=>'afii10069',213=>'afii10070',214=>'afii10072',215=>'afii10073', -216=>'afii10074',217=>'afii10075',218=>'afii10076',219=>'afii10077',220=>'afii10078',221=>'afii10079',222=>'afii10080',223=>'afii10081', -224=>'afii10082',225=>'afii10083',226=>'afii10084',227=>'afii10085',228=>'afii10086',229=>'afii10087',230=>'afii10088',231=>'afii10089', -232=>'afii10090',233=>'afii10091',234=>'afii10092',235=>'afii10093',236=>'afii10094',237=>'afii10095',238=>'afii10096',239=>'afii10097', -240=>'afii61352',241=>'afii10071',242=>'afii10099',243=>'afii10100',244=>'afii10101',245=>'afii10102',246=>'afii10103',247=>'afii10104', -248=>'afii10105',249=>'afii10106',250=>'afii10107',251=>'afii10108',252=>'afii10109',253=>'section',254=>'afii10110',255=>'afii10193'), - -// encoding map for: iso-8859-5 -'iso-8859-5' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef', -136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef', -144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef', -152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef', -160=>'space',161=>'afii10023',162=>'afii10051',163=>'afii10052',164=>'afii10053',165=>'afii10054',166=>'afii10055',167=>'afii10056', -168=>'afii10057',169=>'afii10058',170=>'afii10059',171=>'afii10060',172=>'afii10061',173=>'hyphen',174=>'afii10062',175=>'afii10145', -176=>'afii10017',177=>'afii10018',178=>'afii10019',179=>'afii10020',180=>'afii10021',181=>'afii10022',182=>'afii10024',183=>'afii10025', -184=>'afii10026',185=>'afii10027',186=>'afii10028',187=>'afii10029',188=>'afii10030',189=>'afii10031',190=>'afii10032',191=>'afii10033', -192=>'afii10034',193=>'afii10035',194=>'afii10036',195=>'afii10037',196=>'afii10038',197=>'afii10039',198=>'afii10040',199=>'afii10041', -200=>'afii10042',201=>'afii10043',202=>'afii10044',203=>'afii10045',204=>'afii10046',205=>'afii10047',206=>'afii10048',207=>'afii10049', -208=>'afii10065',209=>'afii10066',210=>'afii10067',211=>'afii10068',212=>'afii10069',213=>'afii10070',214=>'afii10072',215=>'afii10073', -216=>'afii10074',217=>'afii10075',218=>'afii10076',219=>'afii10077',220=>'afii10078',221=>'afii10079',222=>'afii10080',223=>'afii10081', -224=>'afii10082',225=>'afii10083',226=>'afii10084',227=>'afii10085',228=>'afii10086',229=>'afii10087',230=>'afii10088',231=>'afii10089', -232=>'afii10090',233=>'afii10091',234=>'afii10092',235=>'afii10093',236=>'afii10094',237=>'afii10095',238=>'afii10096',239=>'afii10097', -240=>'afii61352',241=>'afii10071',242=>'afii10099',243=>'afii10100',244=>'afii10101',245=>'afii10102',246=>'afii10103',247=>'afii10104', -248=>'afii10105',249=>'afii10106',250=>'afii10107',251=>'afii10108',252=>'afii10109',253=>'section',254=>'afii10110',255=>'afii10193'), - -// encoding map for: koi8-r -'koi8-r' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'SF100000',129=>'SF110000',130=>'SF010000',131=>'SF030000',132=>'SF020000',133=>'SF040000',134=>'SF080000',135=>'SF090000', -136=>'SF060000',137=>'SF070000',138=>'SF050000',139=>'upblock',140=>'dnblock',141=>'block',142=>'lfblock',143=>'rtblock', -144=>'ltshade',145=>'shade',146=>'dkshade',147=>'integraltp',148=>'filledbox',149=>'periodcentered',150=>'radical',151=>'approxequal', -152=>'lessequal',153=>'greaterequal',154=>'space',155=>'integralbt',156=>'degree',157=>'twosuperior',158=>'periodcentered',159=>'divide', -160=>'SF430000',161=>'SF240000',162=>'SF510000',163=>'afii10071',164=>'SF520000',165=>'SF390000',166=>'SF220000',167=>'SF210000', -168=>'SF250000',169=>'SF500000',170=>'SF490000',171=>'SF380000',172=>'SF280000',173=>'SF270000',174=>'SF260000',175=>'SF360000', -176=>'SF370000',177=>'SF420000',178=>'SF190000',179=>'afii10023',180=>'SF200000',181=>'SF230000',182=>'SF470000',183=>'SF480000', -184=>'SF410000',185=>'SF450000',186=>'SF460000',187=>'SF400000',188=>'SF540000',189=>'SF530000',190=>'SF440000',191=>'copyright', -192=>'afii10096',193=>'afii10065',194=>'afii10066',195=>'afii10088',196=>'afii10069',197=>'afii10070',198=>'afii10086',199=>'afii10068', -200=>'afii10087',201=>'afii10074',202=>'afii10075',203=>'afii10076',204=>'afii10077',205=>'afii10078',206=>'afii10079',207=>'afii10080', -208=>'afii10081',209=>'afii10097',210=>'afii10082',211=>'afii10083',212=>'afii10084',213=>'afii10085',214=>'afii10072',215=>'afii10067', -216=>'afii10094',217=>'afii10093',218=>'afii10073',219=>'afii10090',220=>'afii10095',221=>'afii10091',222=>'afii10089',223=>'afii10092', -224=>'afii10048',225=>'afii10017',226=>'afii10018',227=>'afii10040',228=>'afii10021',229=>'afii10022',230=>'afii10038',231=>'afii10020', -232=>'afii10039',233=>'afii10026',234=>'afii10027',235=>'afii10028',236=>'afii10029',237=>'afii10030',238=>'afii10031',239=>'afii10032', -240=>'afii10033',241=>'afii10049',242=>'afii10034',243=>'afii10035',244=>'afii10036',245=>'afii10037',246=>'afii10024',247=>'afii10019', -248=>'afii10046',249=>'afii10045',250=>'afii10025',251=>'afii10042',252=>'afii10047',253=>'afii10043',254=>'afii10041',255=>'afii10044'), - -// encoding map for: koi8-r -'koi8-r' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'SF100000',129=>'SF110000',130=>'SF010000',131=>'SF030000',132=>'SF020000',133=>'SF040000',134=>'SF080000',135=>'SF090000', -136=>'SF060000',137=>'SF070000',138=>'SF050000',139=>'upblock',140=>'dnblock',141=>'block',142=>'lfblock',143=>'rtblock', -144=>'ltshade',145=>'shade',146=>'dkshade',147=>'integraltp',148=>'filledbox',149=>'periodcentered',150=>'radical',151=>'approxequal', -152=>'lessequal',153=>'greaterequal',154=>'space',155=>'integralbt',156=>'degree',157=>'twosuperior',158=>'periodcentered',159=>'divide', -160=>'SF430000',161=>'SF240000',162=>'SF510000',163=>'afii10071',164=>'SF520000',165=>'SF390000',166=>'SF220000',167=>'SF210000', -168=>'SF250000',169=>'SF500000',170=>'SF490000',171=>'SF380000',172=>'SF280000',173=>'SF270000',174=>'SF260000',175=>'SF360000', -176=>'SF370000',177=>'SF420000',178=>'SF190000',179=>'afii10023',180=>'SF200000',181=>'SF230000',182=>'SF470000',183=>'SF480000', -184=>'SF410000',185=>'SF450000',186=>'SF460000',187=>'SF400000',188=>'SF540000',189=>'SF530000',190=>'SF440000',191=>'copyright', -192=>'afii10096',193=>'afii10065',194=>'afii10066',195=>'afii10088',196=>'afii10069',197=>'afii10070',198=>'afii10086',199=>'afii10068', -200=>'afii10087',201=>'afii10074',202=>'afii10075',203=>'afii10076',204=>'afii10077',205=>'afii10078',206=>'afii10079',207=>'afii10080', -208=>'afii10081',209=>'afii10097',210=>'afii10082',211=>'afii10083',212=>'afii10084',213=>'afii10085',214=>'afii10072',215=>'afii10067', -216=>'afii10094',217=>'afii10093',218=>'afii10073',219=>'afii10090',220=>'afii10095',221=>'afii10091',222=>'afii10089',223=>'afii10092', -224=>'afii10048',225=>'afii10017',226=>'afii10018',227=>'afii10040',228=>'afii10021',229=>'afii10022',230=>'afii10038',231=>'afii10020', -232=>'afii10039',233=>'afii10026',234=>'afii10027',235=>'afii10028',236=>'afii10029',237=>'afii10030',238=>'afii10031',239=>'afii10032', -240=>'afii10033',241=>'afii10049',242=>'afii10034',243=>'afii10035',244=>'afii10036',245=>'afii10037',246=>'afii10024',247=>'afii10019', -248=>'afii10046',249=>'afii10045',250=>'afii10025',251=>'afii10042',252=>'afii10047',253=>'afii10043',254=>'afii10041',255=>'afii10044'), - -// encoding map for: iso-8859-16 -'iso-8859-16' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef', -136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef', -144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef', -152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef', -160=>'space',161=>'Aogonek',162=>'aogonek',163=>'Lslash',164=>'Euro',165=>'quotedblbase',166=>'Scaron',167=>'section', -168=>'scaron',169=>'copyright',170=>'Scommaaccent',171=>'guillemotleft',172=>'Zacute',173=>'hyphen',174=>'zacute',175=>'Zdotaccent', -176=>'degree',177=>'plusminus',178=>'Ccaron',179=>'lslash',180=>'Zcaron',181=>'quotedblright',182=>'paragraph',183=>'periodcentered', -184=>'zcaron',185=>'ccaron',186=>'scommaaccent',187=>'guillemotright',188=>'OE',189=>'oe',190=>'Ydieresis',191=>'zdotaccent', -192=>'Agrave',193=>'Aacute',194=>'Acircumflex',195=>'Abreve',196=>'Adieresis',197=>'Cacute',198=>'AE',199=>'Ccedilla', -200=>'Egrave',201=>'Eacute',202=>'Ecircumflex',203=>'Edieresis',204=>'Igrave',205=>'Iacute',206=>'Icircumflex',207=>'Idieresis', -208=>'Dcroat',209=>'Nacute',210=>'Ograve',211=>'Oacute',212=>'Ocircumflex',213=>'Ohungarumlaut',214=>'Odieresis',215=>'Sacute', -216=>'Uhungarumlaut',217=>'Ugrave',218=>'Uacute',219=>'Ucircumflex',220=>'Udieresis',221=>'Eogonek',222=>'Tcommaaccent',223=>'germandbls', -224=>'agrave',225=>'aacute',226=>'acircumflex',227=>'abreve',228=>'adieresis',229=>'cacute',230=>'ae',231=>'ccedilla', -232=>'egrave',233=>'eacute',234=>'ecircumflex',235=>'edieresis',236=>'igrave',237=>'iacute',238=>'icircumflex',239=>'idieresis', -240=>'dcroat',241=>'nacute',242=>'ograve',243=>'oacute',244=>'ocircumflex',245=>'ohungarumlaut',246=>'odieresis',247=>'sacute', -248=>'uhungarumlaut',249=>'ugrave',250=>'uacute',251=>'ucircumflex',252=>'udieresis',253=>'eogonek',254=>'tcommaaccent',255=>'ydieresis'), - -// encoding map for: koi8-u -'koi8-u' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle', -40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G', -72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O', -80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W', -88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore', -96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g', -104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o', -112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w', -120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef', -128=>'SF100000',129=>'SF110000',130=>'SF010000',131=>'SF030000',132=>'SF020000',133=>'SF040000',134=>'SF080000',135=>'SF090000', -136=>'SF060000',137=>'SF070000',138=>'SF050000',139=>'upblock',140=>'dnblock',141=>'block',142=>'lfblock',143=>'rtblock', -144=>'ltshade',145=>'shade',146=>'dkshade',147=>'integraltp',148=>'filledbox',149=>'bullet',150=>'radical',151=>'approxequal', -152=>'lessequal',153=>'greaterequal',154=>'space',155=>'integralbt',156=>'degree',157=>'twosuperior',158=>'periodcentered',159=>'divide', -160=>'SF430000',161=>'SF240000',162=>'SF510000',163=>'afii10071',164=>'afii10101',165=>'SF390000',166=>'afii10103',167=>'afii10104', -168=>'SF250000',169=>'SF500000',170=>'SF490000',171=>'SF380000',172=>'SF280000',173=>'afii10098',174=>'SF260000',175=>'SF360000', -176=>'SF370000',177=>'SF420000',178=>'SF190000',179=>'afii10023',180=>'afii10053',181=>'SF230000',182=>'afii10055',183=>'afii10056', -184=>'SF410000',185=>'SF450000',186=>'SF460000',187=>'SF400000',188=>'SF540000',189=>'afii10050',190=>'SF440000',191=>'copyright', -192=>'afii10096',193=>'afii10065',194=>'afii10066',195=>'afii10088',196=>'afii10069',197=>'afii10070',198=>'afii10086',199=>'afii10068', -200=>'afii10087',201=>'afii10074',202=>'afii10075',203=>'afii10076',204=>'afii10077',205=>'afii10078',206=>'afii10079',207=>'afii10080', -208=>'afii10081',209=>'afii10097',210=>'afii10082',211=>'afii10083',212=>'afii10084',213=>'afii10085',214=>'afii10072',215=>'afii10067', -216=>'afii10094',217=>'afii10093',218=>'afii10073',219=>'afii10090',220=>'afii10095',221=>'afii10091',222=>'afii10089',223=>'afii10092', -224=>'afii10048',225=>'afii10017',226=>'afii10018',227=>'afii10040',228=>'afii10021',229=>'afii10022',230=>'afii10038',231=>'afii10020', -232=>'afii10039',233=>'afii10026',234=>'afii10027',235=>'afii10028',236=>'afii10029',237=>'afii10030',238=>'afii10031',239=>'afii10032', -240=>'afii10033',241=>'afii10049',242=>'afii10034',243=>'afii10035',244=>'afii10036',245=>'afii10037',246=>'afii10024',247=>'afii10019', -248=>'afii10046',249=>'afii10045',250=>'afii10025',251=>'afii10042',252=>'afii10047',253=>'afii10043',254=>'afii10041',255=>'afii10044'), - -// encoding map for: symbol -'symbol' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef', -8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef', -16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef', -24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef', -32=>'space',33=>'exclam',34=>'universal',35=>'numbersign',36=>'existential',37=>'percent',38=>'ampersand',39=>'suchthat', -40=>'parenleft',41=>'parenright',42=>'asteriskmath',43=>'plus',44=>'comma',45=>'minus',46=>'period',47=>'slash', -48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven', -56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question', -64=>'congruent',65=>'Alpha',66=>'Beta',67=>'Chi',68=>'Delta',69=>'Epsilon',70=>'Phi',71=>'Gamma', -72=>'Eta',73=>'Iota',74=>'theta1',75=>'Kappa',76=>'Lambda',77=>'Mu',78=>'Nu',79=>'Omicron', -80=>'Pi',81=>'Theta',82=>'Rho',83=>'Sigma',84=>'Tau',85=>'Upsilon',86=>'sigma1',87=>'Omega', -88=>'Xi',89=>'Psi',90=>'Zeta',91=>'bracketleft',92=>'therefore',93=>'bracketright',94=>'perpendicular',95=>'underscore', -96=>'radicalex',97=>'alpha',98=>'beta',99=>'chi',100=>'delta',101=>'epsilon',102=>'phi',103=>'gamma', -104=>'eta',105=>'iota',106=>'phi1',107=>'kappa',108=>'lambda',109=>'mu',110=>'nu',111=>'omicron', -112=>'pi',113=>'theta',114=>'rho',115=>'sigma',116=>'tau',117=>'upsilon',118=>'omega1',119=>'omega', -120=>'xi',121=>'psi',122=>'zeta',123=>'braceleft',124=>'bar',125=>'braceright',126=>'similar',127=>'.notdef', -128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef', -136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef', -144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef', -152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef', -160=>'Euro',161=>'Upsilon1',162=>'minute',163=>'lessequal',164=>'fraction',165=>'infinity',166=>'florin',167=>'club', -168=>'diamond',169=>'heart',170=>'spade',171=>'arrowboth',172=>'arrowleft',173=>'arrowup',174=>'arrowright',175=>'arrowdown', -176=>'degree',177=>'plusminus',178=>'second',179=>'greaterequal',180=>'multiply',181=>'proportional',182=>'partialdiff',183=>'bullet', -184=>'divide',185=>'notequal',186=>'equivalence',187=>'approxequal',188=>'ellipsis',189=>'arrowvertex',190=>'arrowhorizex',191=>'carriagereturn', -192=>'aleph',193=>'Ifraktur',194=>'Rfraktur',195=>'weierstrass',196=>'circlemultiply',197=>'circleplus',198=>'emptyset',199=>'intersection', -200=>'union',201=>'propersuperset',202=>'reflexsuperset',203=>'notsubset',204=>'propersubset',205=>'reflexsubset',206=>'element',207=>'notelement', -208=>'angle',209=>'gradient',210=>'registerserif',211=>'copyrightserif',212=>'trademarkserif',213=>'product',214=>'radical',215=>'dotmath', -216=>'logicalnot',217=>'logicaland',218=>'logicalor',219=>'arrowdblboth',220=>'arrowdblleft',221=>'arrowdblup',222=>'arrowdblright',223=>'arrowdbldown', -224=>'lozenge',225=>'angleleft',226=>'registersans',227=>'copyrightsans',228=>'trademarksans',229=>'summation',230=>'parenlefttp',231=>'parenleftex', -232=>'parenleftbt',233=>'bracketlefttp',234=>'bracketleftex',235=>'bracketleftbt',236=>'bracelefttp',237=>'braceleftmid',238=>'braceleftbt',239=>'braceex', -240=>'.notdef',241=>'angleright',242=>'integral',243=>'integraltp',244=>'integralex',245=>'integralbt',246=>'parenrighttp',247=>'parenrightex', -248=>'parenrightbt',249=>'bracketrighttp',250=>'bracketrightex',251=>'bracketrightbt',252=>'bracerighttp',253=>'bracerightmid',254=>'bracerightbt',255=>'.notdef', -1226=>'registered',1227=>'copyright',1228=>'trademark') - -); // end of encoding maps - -} // --- END OF CLASS --- - -//============================================================+ -// END OF FILE -//============================================================+ diff --git a/lib/tcpdf/fonts/freefont-20100919/ChangeLog b/lib/tcpdf/fonts/freefont-20100919/ChangeLog deleted file mode 100644 index 114032794e7..00000000000 --- a/lib/tcpdf/fonts/freefont-20100919/ChangeLog +++ /dev/null @@ -1,6325 +0,0 @@ -$Id: ChangeLog,v 1.257 2010/09/19 13:15:07 Stevan_White Exp $ -2010-09-19 Stevan_White - * FreeSerif.sfd: - - Sinhala: Fixed one lookup table mistake, and a couple of glpyh - omissions, that Harshula pointed out. - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Sans: Applied Daniel Johnsons improvement to capital Eng to Sans, as - described in previous commits. - - * FreeSerif.sfd, FreeSerifBold.sfd: - - Coptic: added alphabet to bold. Accent marks not working -- a mystery. - Some tweeks in medium face as well. - - glyph cleanup -- points too close, some glyphs outside bounding boxes. - -2010-09-17 Stevan_White - * FreeSerif.sfd: - - Sinhala: tightened up left side of na and derivatives. - tighened up left sides of u, lla, na, dha, ndha, nya, jnya - tightened up some of the vowel conjuncts, and left side of nna. - -2010-09-16 Stevan_White - * FreeSerif.sfd: - - Coptic: fiddled about with letter forms, striving for a kind of - consistency. - - Sinhala: Harshula noticed four incorrect combined forms. Fixed these. - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Latin Extended-A: Applied Daniel Johnson's patch that made two versions - of capital Eng. His explanation: - ' - http://en.wikipedia.org/wiki/%C5%8A - - The form of capital Eng currently in all three FreeFont faces - is that used by the Sami people, resembling a capital N with a - hooked right descender. - However, the form preferred for African and Amerindian - languages resembles a tall lowercase n with a hook that almost - meets the left vertical. (See wikipedia link above for a - visual.) - - Recommend moving the existing Sami-style Eng to a PUA or - non-Unicode slot, creating African-style Eng at U+014A, and - adding a LOCL table with substitution rules for - Inari Sami (ISM), Lule Sami (LSM), - Northern Sami (NSM) and Skolt Sami (SKS). - ' - Latin Extended-B: Also in his patch: - added U+0220 (Latin Capital Letter N with long leg) - -2010-09-15 Stevan_White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Latin for Sami: Daniel Johnson's patch added alternative form of Eng for - African languages and a 'local' table for the Sami form. - - * FreeSerif.sfd: - - Sinhala: regularized kundaliya a bit. - re-named a few more ligature glyphs, for consistency - - * FreeSans.sfd: - - Put stray lookup into its proper subtable. - - Gurmukhi: improved some names of ligature glyphs, and found one - apparently doubled table entry (kagurmukhi_nuktagurmukhi.nukt now - gur_ka.nukt) - - * FreeSans.sfd, FreeSerif.sfd, FreeSerifItalic.sfd: - - Various measures to fix problems FontForge Find Problems reports under - ATT, including a mass glyph rename of Sinhala ligatures. - -2010-09-15 Stevan_White - * to0ls/GenerateTrueType: - - prev. commit had one space too many - -2010-09-14 Stevan_White - * tools-- GenerateMacTT, GenerateOpenType, GenerateTrueType, checkGlyphNumbers.py, findBackLayers.py, hex_range.py, isMonoMono.py, ligatureLookups.py, nameBySlot.py, range_report.py, ranges.py, validate.py, OpenType.py: - - Added license and other tags to python files. - -2010-09-13 Stevan_White - * tools/OpenType.py: - - updated some Web links. - - * FreeMono.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Cyrillic: A few more old letters. - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Supplemental Punctuation: One character for consistency with other faces. - -2010-09-12 Stevan_White - * FreeMono.sfd, FreeSans.sfd: - - Control Pictures: Added because it was easy. - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Alphabetic Presentation Forms: filled out range in sans faces. - - * FreeMono.sfd, FreeMonoBoldOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerifBoldItalic.sfd: - - Cleared hints. - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBoldOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Dozens of measures to pass general validation tests, including - . cleanup of many glyphs for extrema and self-intersection problmes - . re-naming glyphs whose PS names are too long. - . removing blank glyphs - . giving Unicode points to glyphs missing them. - - There are still a few lookup table issues in FreeSerif and FreeSans though. - - * FreeSerif.sfd: - - Re-named some of the Sinhala lookups in somewhat better way. - Control Pictures: added a bunch (but... is it worth it?) - - * tools/nameBySlot.py: - - Corrected output for high Unicode. - - * tools/checkGlyphNumbers.py: - - Made aware of special TrueType slots. - - * tools/range_report.py: - - Added a Private Use total and better explanation of totals generally. - Some code clean-up. - -2010-09-11 Stevan_White - * tools/OpenType.py: - - made not to complain about extra TrueType characters. - - * FreeSerif.sfd: - - Coptic: Widened bowl of Khei. - Deepened descenders of small letters to same depth as in Latin - Expanded bowl of Fei and fei to resemble other samples. - -2010-09-10 Stevan_White - * FreeSerif.sfd: - - Cyrillic: mostly positioning of marks for old Cyrillic alphabets - - Coptic: Replaced acoptic with something more dramatic, fiddled with - kerning, tidied some other letters - -2010-09-09 Stevan_White - * FreeSerifBold.sfd, FreeSans.sfd, FreeSerif.sfd: - - Block Elements: replaced long-missing shade blocks - -2010-09-08 Stevan_White - * tools/range_report.py: - - More explanation in output. - - * tools/range_report.py, OpenType.py: - - another consistency check - added UCAS Extended range - -2010-09-07 Stevan_White - * FreeSerif.sfd: - - Buginese: lookup tables and glyphs to re-order vowels, courtesy of - Mohammad Anwari. - - Sinhala: complete replacement of range with glyphs extracted more - directly from Yannis Haralambous' sinha TeX font (last version was - also derived from this font, but had undergone detrimental processing). - Implements "rak" glyphs using three GSUB lookup steps. - - * FreeSans.sfd: - - Osmanya: courtesy of Daniel Johnson. - - Note this script is slanted in every sample I've seen. That is - justification enough that the glyphs in this range look slated, - although the face isn't oblique. - - UCAS Extended: by Daniel Johnson - -2010-09-05 Stevan_White - * FreeSerif.sfd: - - Fix for FontForge warning (v 20090923) - - "On Windows many apps will have problems with this font's kerning, - because because 58 of its glyph kern pairs cannot be mapped to - unicode-BMP kern pairs" - - This was due to kern tables for the Musical Symbols range, which isn't - in the Unicode Basic Multilingual Plane. - - Removed this lookup. Might consider another way to position these - symbols. - -2010-08-30 Stevan_White - * FreeSerif.sfd: - - Sinhala: patch by Harshula Jayasuriya to correct the writing system - direction in some lookups. - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Currency Symbols: additions and tweeking - -2010-08-24 Stevan_White - * FreeSerif.sfd: - - Sinhala: added one ligature glyph, from Harshula Jayasuriya - -2010-08-20 Stevan_White - * FreeSerif.sfd: - - Resolves class of validation problems in Sinhala: Bad Glyph Name. - - This is a FontForge bug, that appears when certain types of problems - occur in the glyph contours. Probably an arithmetic error causes some - corruption. - - Corrected missing extrema in recent Latin Extended-D range - - Sinhala: re-did previous patch using a more recent one. - Un-did some other glyph changes that didn't help much anyway. - - * FreeMono.sfd: - - Named letters in several ranges... should write a script for this... - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Added full GNU copyright announcement to TT Names. - Updated Copyright date. - - * FreeSerif.sfd: - - Sinhala: Applied a patch from Harshula Jayasuriya, improving glyph - names. - I tried to tidy up some of the glyphs, but it's a big job... - - Latin Extended B: fixed one case of missing extrema - -2010-08-18 Stevan_White - * FreeSerif.sfd: - - Latin Extended-D: yet a few more easily made letters - - Latin Extended-D: made a few more letters - -2010-08-09 Stevan_White - * FreeSerif.sfd: - - Supplemental Arrows-A: completed - - Arrows: completed - -2010-08-04 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd: - - Combining Diacritics: some additions in BoldOblique, corrections in - other faces. - Several improvements to Greek letter forms in BoldOblique - -2010-08-03 Stevan_White - * FreeMonoBold.sfd: - - Arrows, a few math operators, and one more combining diacritical - - * FreeMono.sfd, FreeMonoBold.sfd: - - Added some combining diacriticals to bold, touched up some spacing - modifiers. - Minor corrections to roman. - - * FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Marks, spacing modifier letters: corrected placement of marks, - added some spacing modifier letters and combining marks. - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Better Vietnamese support, using 'ccmp' and 'mark' lookup tables. - MonoBoldOblique: added Extended Latin ranges - - * FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - Vietnamese: Much adjustment of horn letters, - also general adjustement of marks - -2010-08-02 Stevan_White - * FreeSerif.sfd: - - Vietnamese: inadvertently broke the main face. This fixes it. - - * FreeMono.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Vietamese: In roman and sans, lookups are basically functional now. - Used 'ccmp' Ligature Substitution to form stacked marks (inasmuch as - glyphs for the stacked Unicode codepoints are available) - Adjusted positioning of some marks. - Named many letters and combining marks. - - roman italic. Re-designed horn of O and U. Other roman faces could also - benefit from a horn job. - - * FreeMono.sfd, FreeSerif.sfd: - - roman: correction to one math operator - mono: Mathematical Operators complete (up to some pre-5.2 Unicode version) - - * FreeMono.sfd: - - Mathematical Symbols: range nearly finished - - * tools/OpenType.py: - - Correction regarding NKo range. - - * tools/range_report.py: - - made not to complain about special TrueType slots 0x00, 0x01, 0x0D - -2010-08-01 Stevan_White - * FreeMono.sfd, FreeSerif.sfd: - - roman: corrected direction of 2 math operators - mono: added several math operators - - Worked on mark positioning for Vietnamese, Cyrillic - -2010-07-30 Stevan_White - * FreeMono.sfd: - - Reduced height of two-part Summation symbols - https://savannah.gnu.org/bugs/?23064 - - Corrected U+2626 Orthodox Cross - https://savannah.gnu.org/bugs/?27579#discussion - - * FreeSerif.sfd: - - Added some Miscellaneous Technical Symbols - -2010-07-29 Stevan_White - * FreeSerif.sfd: - - Put in some scan lines 23BA-23BD, based on 2500, as discussed in - https://savannah.gnu.org/bugs/?23064 - I still have no idea what the application for these glyphs would be... - -2010-07-17 Stevan_White - * FreeSerif.sfd: - - added mark anchors for acute, grave in cyrillic (other faces already - had them) - -2010-07-13 Stevan_White - * FreeMono.sfd: - - Made germandbls (ess-zet) a bit wider, moved a bit to left - -2010-07-10 Stevan_White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifItalic.sfd: - - Resolves bug 30344: "Greek Final Sigma could be shortened" - https://savannah.gnu.org/bugs/index.php?30344 - Problem only affected roman, but touched up other faces anyway. - -2010-05-30 Stevan_White - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Latin-extended-B: fiddled with some of the horizontal strokes - -2010-05-29 Stevan_White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Latin: accents on ogonek letters (for Navaho) - a little adjustment of apostrophe (Navaho, Hawaiian) - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Latin mark problems - * low dots in bold uneven - * ring in bold smaller than in roman, and not heavier - * apostrophe in italic too far to right (Navaho, Hawaiian) - - * FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Latin: fixed problems with various marks: ogonek, hook, comma below, - some kerning, esp. of non-ascii characters - - * FreeSans.sfd, FreeSerif.sfd: - - Sans: made dot accents same height as i-dot, kerned y with comma - Both: made low comma accent lower, smaller (esp. for Romanian) - -2010-05-27 Stevan_White - * FreeSans.sfd: - - Latin: make caron of more uniform height - - Latin: i was somehow displaced, dotlessi was much too wide for Turkish - - * FreeSans.sfd, FreeSansOblique.sfd: - - Latin: made ring accent heavier, esp. for Swedish - - -2010-05-10 Stevan_White - * FreeSans.sfd, FreeSerif.sfd: - - Latin: kerning tweeks - -2010-05-09 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - As discussed in freefont-bugs mailing list, Thu, May 6, 2010 - "FreeMono affected by OS X 10.6 nested character references bug" - reduced reference nesting in multiple quote characters, as a courtesy - to Mac OS 10.6 users, who suffer from a bug. - -2010-05-04 Stevan_White - * FreeSerif.sfd: - - Latin: kerning tweeks - -2010-05-03 Stevan_White - * FreeSerifBold.sfd: - - Latin: spacing of round small letters, kerning tweeks, fiddled with - ligatures - -2010-04-17 Stevan_White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Daniel Johnson improved Cherokee Da - -2010-04-10 Stevan_White - * FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - Emboldened underscore and related glyphs. Resolves issue 22999 - https://savannah.gnu.org/bugs/index.php?22999 - Low line (005F) in bold fonts do not have heavier weight - -2010-04-09 Stevan_White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Serif: Added Thai TTF names - -2010-04-08 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSerif.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Corrected some language names - A bit o kerning - - * FreeSerifBold.sfd: - - Fixed problem with name. This should be the same as before the revision - except for the fix. - The KDE font installer was saying this face was incorrectly named - Free Serif Bold Italic, but this wasn't quite correct. One of the other - language names said it was named Free Serif Halvfett Kursiv, which - conflicted with that language name for the real Free Serif Bold Italic. - - Regression: for some unknown reason, previous release gets built so - that my system thinks it is Free Serif Bold Italic. - This is a mystery. There is nothing about Italic in the file. - -2010-04-06 Stevan_White - * Makefile: - - Made graceful in absence of Fontforge - -2010-03-29 Stevan_White - * FreeSerifBold.sfd: - - Adjusted some accent marks, named a few characters - -2010-03-25 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - added Ukrainian TTF names - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - added bahasa indonesian TTF names - -2010-03-21 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Added several TTF Names. (Need to check with native speakers.) - -2010-03-20 Stevan_White - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Fill out TTF Names tables regarding font names - -2010-03-19 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Removed TTF Names for 'sample text' and all 'license URL' except English, - 1) in response to FontForge complain that large names tables conflict - with recent Windows patches - 2) because they are redundant and inappropriate - (Hope to post the list of sample texts elsewhere, because I like the idea.) - -2010-03-02 Stevan_White - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Latin standard ligatures: in non-bold, promoted dlig to liga. - Put standard Dutch IJ in all; Adjusted spacing a bit - -2010-02-28 Stevan_White - * FreeSerifBold.sfd, FreeSerifItalic.sfd: - - Cyrillic: further revision of spacing, in direction of loosening. - bold ze was strangely thin; made bolder. - -2010-02-27 Stevan_White - * FreeSerif.sfd: - - Cyrillic: reviewed spacing of whole range, generally loosened slightly - tidied a couple of ugly glyphs - -2010-02-09 Stevan_White - * FreeSerifBoldItalic.sfd: - - tweeks to kerning in Latin - - * FreeSerifBold.sfd: - - Tweeks to kerning in Latin - -2010-01-28 Stevan_White - * tools/isMonoMono.py: - - Implement FontForge handling of magic characters - .notdef, .null, nonmarkingreturn - at - 0x0000 0x0001 0x000D - -2010-01-27 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Improved magic characters for FreeMono, inserted them for other faces - https://savannah.gnu.org/bugs/index.php?28742 - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Added at 0x0000 0x0001 0x000D characters - .notdef .null nonmarkingreturn - These are NOT UNICODE they are to satisfy an essentially undocumented - "feature" of FontForge, ( in source tottf.c, AssignNotdefNull() ) - And a funny strong suggestion of TrueType fonts, that they begin with - three special characters (evidently different from encoding slots) - http://www.microsoft.com/typography/otspec/recom.htm - - FontForge looks for these glyphs in certain places and copies them. - Otherwise, apparently, it will find a glyph elsewhere (unclear how) and - copy it there, possibly resulting in something quite wrong - (such as a non-monospace font). - - The three are copied to the end of TTF fonts (only one to the end of OTF - fonts) - -2009-12-31 Stevan_White - * FreeSans.sfd: - - Tamil: deletd Unicode range due to absence of necessary ligatures - - * FreeSerifBold.sfd: - - Cyrillic tweek to spacing - -2009-12-29 Stevan_White - * FreeSans.sfd, FreeSansBold.sfd: - - Gurmukhi: added 2 characters to complete range - - * FreeSans.sfd, FreeSerif.sfd: - - Devanagari: filled out sans, some corrections in serif - - * FreeSerif.sfd: - - Devanagari: Drew and constructed glyphs to complete range. - -2009-12-28 Stevan_White - * OpenType.py: - - Added/corrected some ranges - -2009-12-27 Stevan_White - * tools -- CheckConformance.pl, GenerateTrueType, MES-1.lst, MES-1.txt, MES-2.lst, MES-2.txt, MES-3B.lst, MES-3B.txt, WGL4.lst, mes-list-expand.pl: - - disabled build of Mac TT - - * tools/ligatureLookups.py: - - better sanity check - - * tools/range_report.py: - - more generic title - - * tools/OpenType.py: - - correction to Tamil - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Resolves bug #23049 - Replacement character (U+FFFD) not properly styled - https://savannah.gnu.org/bugs/index.php?23049 - - * FreeSerif.sfd: - - Devanagari: added letters, completing Unicode range - - * FreeSerif.sfd: - - Tamil: added 2 monster glyphs, completing range - (0bc1-2 still questionable) - -2009-12-26 Stevan_White - * FreeSerif.sfd: - - Indic ranges: named lots of characters - Tamil: corrected and added a few letters - - Tamil: added digits - - Tamil: a few more symbols. Only a couple of monster signs still - missing, and a couple of marks seem just wrong... - - Malayalam: completed Unicode range, also moving some Chillu letters from - Private Use area to Unicode, and re-establishing ligatures - - * FreeSans.sfd: - - Tamil: completed digits, added some other chars - -2009-12-25 Stevan_White - * FreeSans.sfd: - - Indic ranges, esp. - Devanagari: added several new Unicode (not yet complete) - tidied letters - Bengali: tidying, made some refs - -2009-12-24 Stevan_White - * FreeSans.sfd: - - Indic ranges: named most of the Unicode characters - Tried to improve a few bad names for ligatures - in Private Use Area - Made a few references: not clearly an improvement. - This stuff is still a mess... - - Devanagari: added an obviously missing nukta ligature - - Gujarati: added some subvocalic letters for Sanskrit. Quality is low. - - Filled out Geometric Shapes. - - * tools/ligatureLookups.py: - - fixed syntax error - - * tools/LigatureList.pl: - - no longer relevant. - -2009-12-23 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - cosmetic re-name and re-order of lookups - - * tools/OpenType.py: - - removed links to disappeared web pages - -2009-12-22 Stevan_White - * FreeMonoOblique.sfd: - - Diagonal Fractions lookup didn't make much sense in mono anyway, - much less in just one style. - -2009-12-20 Stevan_White - * FreeSerif.sfd: - - split Diagonal Fractions lookup into two tables - - re-encoded some characters - adjusted some marks - corrected two wrongly-placed glyphs in Phonetic Extensions Supplement - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - General Punctuation: Got rid of deprecated subrange 0x206A-0x206F - - * tools/range_report.py: - - corrected script name - - * tools/OpenType.py: - - numerous changes, some reflecting changes to Unicode standard - -2009-12-14 Stevan_White - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Unicode 5.2 corrections of Abkhasian letters from Daniel Johnson. - Got rid of some old glyph names. - -2009-12-06 Stevan_White - * FreeSans.sfd, FreeSansOblique.sfd: - - Cherokee: fixed previous commit of a partial, and old range in - medium weight - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Cherokee, courtesy of Daniel Johnson. - -2009-11-20 Stevan_White - * FreeSans.sfd: - - New glyphs for Unified Canadian Aboriginal Syllabics as defined in Unicode 5.2 - by Daniel Johnson - -2009-11-14 Stevan_White - * FreeSerif.sfd: - - Resolves bug #27842: FreeSerif U+1F016 (Mahjong Tile Seven of Bamboos) Wrong - https://savannah.gnu.org/bugs/?27842 - has one extra bamboo in it for a total of eight. - The bamboo on the top left needs to be removed - - Resolves bug #27579: Orthodox cross has wrong glyph - http://savannah.gnu.org/bugs/?27579 - U+2626 Orthodox Cross should slope downwards from left to right. - -2009-11-13 Stevan_White - * FreeSerifBold.sfd, FreeSerifItalic.sfd: - - Cyrillic: corrections to Abkhazian letters by Daniel Johnson - -2009-11-05 Stevan_White - * FreeSerif.sfd: - - Cyrillic: corrections to Abkhazian letters by Daniel Johnson - -2009-10-16 Stevan_White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Cyrillic: tweeks to brev, based on Unicode 5.2 samples - -2009-10-08 Stevan_White - * FreeSerif.sfd: - - Currency Symbols: tidied - - Number Forms: three new vulgar fractions - - Currency Symbols: added "Tenga" of Kazakhstan - - Latin Extended: corrected a couple of wrong bearings - some fiddling with Vienamese letters with hook - -2009-10-01 Stevan_White - * FreeSerif.sfd: - - added missing accent - -2009-09-17 Stevan_White - * FreeSerif.sfd: - - Latin kerning: gave qj positive kerning (it must happen sometimes) - - Latin kerning: differentiated grave and dieresis vowels in some combos. - (also, adieresis hadn't been kerned at all...) - - Made ref of one Sinhala letter - -2009-07-30 Stevan_White - * FreeSans.sfd, FreeSansBold.sfd, FreeSerif.sfd: - - kerning - -2009-07-26 Stevan_White - * FreeSansBold.sfd: - - kerning - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - added some space in diaeresis - did some kerning - - * FreeSansBold.sfd: - - Revert serious mistake with previous commit: had somehow set splines - quadratic. - Here, the GaspTable from that commit is preserved, - However there were evidently numerous other changes that weren't - documented, and these are lost. - -2009-07-12 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Added GASP tables for control of hinting/smoothing (anti-alising) of - TrueType. - Now the values are better suited to the EM size of the fonts. - Further adjustment (based say on stem width) might still be profitable. - - * FreeSans.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - More tweeks on accents, especially Maltese letters. - -2009-07-11 Stevan_White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Maltese Hbar, hbar, Improved, made more consistent. - - * FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Latin: various corrections and tweeks for consistency in accented letters. - - * FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - more space to accent on lcaron - tightened DZ etc ligatures - in SerifItalic faces made references etc in Spacing Modifiers and Combining - further kerning - - * FreeSans.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - kerning - Sans: decided dots and some other marks needed more room. - -2009-07-10 Stevan_White - * FreeSerif.sfd, FreeSerifItalic.sfd: - - IPA. Phonetics: tweeks - - * FreeSerif.sfd: - - Tweeked some math symbols - - * FreeSans.sfd, FreeSansOblique.sfd: - - Letterlike: additions - - * FreeMonoOblique.sfd: - - IPA - - * FreeSerifBoldItalic.sfd: - - Another IPA symbol - - * FreeSerifBoldItalic.sfd: - - IPA and Spacing Modifier Letters: added a few - -2009-07-09 Stevan_White - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifItalic.sfd: - - Latin: various horizontal spacing and positioning issues - Replaced Tz and tz ligatures with the originals of Danial Johnson. - (range is "Mayanist" and despite Unicode samples, current usage - uses normal z in glyph) - Put stylized Tz tz in a discretionary ligature lookup. - -2009-07-08 Stevan_White - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Cyrillic yi_yi Ukrainian ligature - Latin various pointwise cleanup, made some references, horizontal adjustments - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Cyrillic: Special ligature for Ukrainian yi_yi, also some kerning - -2009-07-07 Stevan_White - * FreeSerif.sfd: - - Latin: kerning; made accents on i tighter to avoid collisions - -2009-07-05 Stevan_White - * FreeSansBold.sfd, FreeSansBoldOblique.sfd: - - Made lookup tables for Dutch IJ - - Re-did Dutch digraph IJ in bold faces as "broken-U", because I - thought it was cool and nobody was there to stop me. - - * FreeSerif.sfd: - - Corrected ligatures Tz tz; put them in special lookup - Latin Extended Additional: added medevalist letters, completing range - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Cyrillic: added yi_yi ligature for Ukrainian in roman. Not sure - if it's right. - Latin: kerning. Added longs_t ligature, and historic ligature tables - IPA: in bolditalic, added a letter or two - - * FreeSerif.sfd: - - Kerning for hbar - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - Kerning for Western Slavic languages - Added a couple of IPA to BI - -2009-07-04 Stevan_White - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Combined letters ae, oe, ij had incorrect horizontal spacing - - * FreeMono.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Combining Diacritical Marks for Symbols: additions and fiddling. - Also related circles, arrows. - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Letterlike Symbols: various additions and adjustments - Number Forms: Completed range in serif roman. Adjusted spacing - of Latin numerals in serif faces. - Diacritics for Symbols: various additions - Geometric shapes: thought it best for circle to be round even in - oblique faces. It's a choice of course. - Added to several faces. - Made all to pass tests (except Sinhala) - -2009-07-02 Stevan_White - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Letterlike Symbols: more additions, adjustments - Also fiddled with some math symbols in Sans faces - - * FreeSans.sfd, FreeSansOblique.sfd: - - Letterlike Symbols; additions and adjustments - Note: Pango is rendering very strangely: many glyphs in the font are - being stolen from some other fonts instead: All the script in - blackletter, and some others as well. Is there a cache in the system - somewhere? Or what? - -2009-06-28 Stevan_White - * FreeSerif.sfd: - - Modified glyph. From patch by Pavel Skrylev. - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Superscritps and Subscripts: made glyphs to complete range in all faces - - * FreeSans.sfd, FreeSansOblique.sfd: - - Added some combining marks for symbols and Blackboard Bold letters to - letterlike symbols - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Various adjustments regarding superscript and subscript characters in - several ranges. - -2009-06-27 Stevan_White - * FreeSerif.sfd, FreeSerifItalic.sfd: - - More fiddling with super/subscripts - Tidied points in Serif to make fontforge "wrong direction" complaint - in scaled reference go away. - Made some other references in basic latin ranges. - - * FreeSerif.sfd: - - Superscripts and subscripts (in various ranges): tried to systematize - sizing and vertical placement. Note: most letters are still simply - scaled. - This is practical maintenance-wise, but isn't typographically optimal. - - * FreeSerif.sfd: - - Cyrillic Extended A: altered mark positions - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Phonetic Extensions: various corrections and fiddling - Changed Blues values in FreeSerifBoldItalic - -2009-06-25 Stevan_White - * FreeSansBold.sfd, FreeSansBoldOblique.sfd: - - Combining Diacritical Marks for Symbols: added to bold oblique - added placement mark to many - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - IPA Extensions: completed in bold and boldoblique, completing range for face. - - All faces: deleted 'cvt', 'prep', 'fpgm' TrueType tables, because - FontForge was complaining about them (legacy hinting that could - interfere, possibly lower quality code, etc) - - * FreeSansBold.sfd, FreeSansBoldOblique.sfd: - - IPA Extensions: made several characters - - * FreeSerif.sfd, FreeSerifBold.sfd: - - IPA Extensions: completed range in bold - -2009-06-23 Stevan_White - * FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - Spacing Modifiers: added a couple - Combining Diacriticals: brought range to par with FreeSans - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Same correction as for FreeSerif - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Corrected descender of 027f - - * FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - IPA and related: made lots of additional glyphs - -2009-06-22 Stevan_White - * FreeSerif.sfd: - - Latin: further clean-up - -2009-06-21 Stevan_White - * FreeSerif.sfd: - - General pointwise clean-up of Latin and Latin Extended. - No visible changes were intended besides changed policy on - horizontal placement of some horned letters - - * FreeSerif.sfd: - - Latin Extended-C: constructed glyphs to complete range. - Latin Extended-D: constructed a bunch of glyphs; some related changes elsewhere. - -2009-06-20 Stevan_White - * FreeSerif.sfd: - - Latin Extended-C: added most of range - - Modifier Tone Letters: added glyphs to complete range. - This should also complete all the IPA/Phonetic extenseions ranges. - - Phonetic Extensions Supplement: added letters completing range - Note the superscript ones are simply scaled, so stem width is - not quite right... - -2009-06-19 Stevan_White - * FreeSerif.sfd: - - Phonetic Extensions: made letters to complete range - -2009-06-18 Stevan_White - * FreeSans.sfd: - - IPA Extensions: clean-up, fix some horizontal spacing issues - - * FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Some glyph problems clean-up, made to pass validate (BlueValues) - -2009-06-17 Stevan_White - * FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - IPA Extensions: Improved spacing and horizontal positioning - - * FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Georgian: added missing letter - - * FreeSansBold.sfd, FreeSansBoldOblique.sfd: - - IPA: made curls on some glyphs more distinct. - note horizontal placement in BO is chaotic--needs work - -2009-06-14 Stevan_White - * FreeSerif.sfd: - - Musical Symbols: various experiments with lookups. - calt: should have allowed isolatef forms of combining marks, - (but can't see application support...) - aalt, hist: for alterntative characters - Added some historical glyphs - Math Alphanumeric: some clean-up. - -2009-06-11 Stevan_White - * FreeSerif.sfd: - - Musical Symbols: various tweeks. Failed attempt to use 'isol' - lookup to put isolated combining marks above the baseline. - - More fiddling with mark placement, strengthened ornamental endings - - mkmk positioning of augmentation dot - -2009-06-10 Stevan_White - * FreeSerif.sfd: - - Musical Symbols: combining marks above and below notes now working - somewhat - -2009-06-08 Stevan_White - * FreeSerif.sfd: - - Musical Symbols: more adjustments of size and placement - -2009-06-07 Stevan_White - * FreeSerif.sfd: - - Musical Symbols: mostly work on lookups. Made tablature symbols - thinner. - -2009-06-06 Stevan_White - * FreeSerif.sfd: - - Musical Symbols: more fiddling with sizes and positions - - Byzantine Musical Symbols: minor clean-ups - - Fixed some ATT problems with 'kern' lookups for Cyrillic - -2009-06-05 Stevan_White - * FreeSerif.sfd: - - Musical Symbols: many changes to glyph positions and shapes - -2009-05-28 Stevan_White - * FreeSerif.sfd: - - Cyrillic: additions and re-naming by Pavel Skrylev. - * Added Cyrillic-B Ext glyphs, and Cyrillic-A Ext glyphs. - * Added cyr_above anchor to all cyrillic glyphs, some glyphs - was changed - * To all Cyrillic letters I've given proper names based on old - Slavic language which is source of all modern slavic languages. - - (the naming is contentious, and there are a couple of technical - problems...under consideration) - -2009-05-27 Stevan_White - * FreeSerif.sfd: - - Musical Symbols: - Scaled up accidentals a bit. - Reduced width of repeated figure marks - Reduced width of caesura even more - Tried to implement mark positioning...not working everywhere - made references - -2009-05-26 Stevan_White - * FreeSerif.sfd: - - Made all letterlike glyph parts more like those from Serif and - Serif Italic. - (Except for Ped. U+1d1ae) - -2009-05-20 Stevan_White - * FreeSerif.sfd: - - Corrected DPOS lookup for Music range to be in script 'musi' - - Western Musical Symbols: fiddling - Miscellaneous Symbols: re-design of musical flat symbol. - -2009-05-19 Stevan_White - * FreeSerif.sfd: - - Western Musical Symbols: Revised horizontal placement of notes. - Altered many combining symbols to be more like Unicode sample. - Corrected many symbols that should be spacing but had 0 width. - Raised many symbols that were far lower than in Unicode - samples. - -2009-05-18 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - U+0354 and U+0355 (combining left/right arrowhead below) were switched - -2009-05-11 Stevan_White - * FreeSans.sfd, FreeSerif.sfd: - - Hebrew: Moved vowel below mark for esh (05e8) and dalet (05d3) as - recommended in bug report #25887 - "FreeSans Hebrew most nonspacing marks are spacing" - https://savannah.gnu.org/bugs/?25887 - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Put PS Private BlueScale back to default. (Was really experiment to - alleviate excessive overshoot. Didn't work and FontForge complained.) - - * FreeSerif.sfd: - - Geometric Shapes: made two 'bullet' shapes to be consistent with 'bullet' - Blues values: put Std VH W into Stem Snap values - - * FreeSans.sfd: - - More Geometric Shapes. also worked on character widths. - -2009-05-09 Stevan_White - * FreeSans.sfd: - - More Geometric Shapes - -2009-05-02 Stevan_White - * FreeSansOblique.sfd: - - Had misplaced Tifinagh range. - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - The rest of Tifinagh, courtesy of Daniel Johnson. - + a few adjustments. - -2009-05-01 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Explicitly disabled PS Private dictionary entry BlueFuzz - as recommended in Adobe Type 1 Font Format, sect. 5.8. - - * FreeSans.sfd: - - Tifinagh range, courtesy of Daniel Johnson. - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Adjusted PS Private values according to understanding of - Adobe Type 1 Font Format (Ch. 5, Private Dictionary) - - Not completely clear on BlueScale, and StemSnap values are still a - mystery. (FontForge 'guess' seems to do little or nothing, and I - don't know where these values came from) - - Original hope was to improve appearance of overshoot in Sans, but it - seems that my renderers ignore this information. - - * tools/ranges.py: - - Corrections for Georgian and Tifinagh ranges - -2009-04-28 Stevan_White - * FreeSans.sfd: - - More Geometric Shapes - -2009-04-27 Stevan_White - * FreeSans.sfd: - - Added U+25D0-3 (half-black circles) - Note the Geometric Shapes range is still in poor shape in Sans. - -2009-04-25 Stevan_White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Serif: fiddled with mark positioning in Cyrillic and Glagolitic - Non-roman faces: Added 'mark' positioning for Cyrillic - -2009-04-14 Stevan_White - * FreeSerif.sfd: - - Cyrillic Extended-B more additions. Now has all except payerok - punctuation and Old Abkhasian letters. - -2009-04-13 Stevan_White - * FreeSerif.sfd: - - Cyrillic Extended-B a few more letters - - * FreeSans.sfd, FreeSerif.sfd: - - kerning: tweeks - -2009-04-11 Stevan_White - * FreeMono.sfd, FreeSans.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Georgian: additions and improvements. - Serif now has full compliment. - Note uppercase is questionable, being a simple scaling... - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Latin Extended-D added u+a788-c - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Latin Extended-D - corrected slots for Mayanist letters in roman - added modifier letters u+a788-c - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Latin Extended-D Mayanist letters by Daniel Johnson - - * tools/ranges.py: - - Corrected Vai range - -2009-04-10 Stevan_White - * FreeSerif.sfd, FreeSerifItalic.sfd: - - Letterlike Symbols: additions and improvements - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Letterlike Symbols: additions, improvements - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Reconsidered numeral 1. Made angle more like other angles in font. - -2009-04-09 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Increased angle of hook on numeral 'one', to improve distinction from - letter 'l' at small point sizes. (Noticed that on some systems, even - at 12 point the distinction had not been obvious.) - -2009-03-29 Stevan_White - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - General Punctuation: Adjust position, shape of quotes, fiddle with - others. - - * FreeSans.sfd: - - Kerning: Had grouped letters with round bowls on left (e,c,0,d,q) - together, but now see the original Nimbus fonts had left bounds that - vary by 10 EM or more, which is quite visible. I am correcting a - flaw in the original font in a very difficult and complex way. - It would be much better to make the bounds of these similar letters - to be equal. - To do: same for punctuation, copy to other styles of Sans. - - * FreeSerif.sfd: - - Kerning tweeks. - -2009-03-22 Stevan_White - * FreeMono.sfd: - - clean-up of some of the basic Nimbus glyphs - - * FreeSans.sfd, FreeSerif.sfd: - - Hebrew: more work on lookups regarding vowel marks - - * FreeSans.sfd: - - Hebrew: vowel mark positioning - -2009-03-16 Stevan_White - * FreeSerif.sfd, FreeSerifItalic.sfd: - - re-named some lookup tables (Sinhala, Hebrew) - -2009-03-15 Stevan_White - * FreeSerif.sfd: - - Georgian: point-wise cleanup - note: doubts about spacing and glyph bounds in capitals - - * FreeSerif.sfd: - - Greek Extended: corrected u+1fd3 - -2009-03-13 Stevan_White - * FreeSerif.sfd: - - Cyrillic (and extensions) various tweeks to old Cyrillic letters, - spacing. - -2009-03-07 Stevan_White - * FreeMonoBoldOblique.sfd: - - correct direction braceleft - - * FreeSerif.sfd: - - Glagolitic: tweeks - - * FreeMonoBold.sfd: - - correct direction of braceleft - -2009-03-05 Stevan_White - * FreeSerif.sfd: - - Glagolitic: more fiddling. Raised small letters so their tops are - even with the tops of the big letters, which is more in line with - their "hanging" nature, and with most manuscripts. - -2009-03-04 Stevan_White - * tools/ranges.py: - - ranges for Sinhala - -2009-03-03 Stevan_White - * FreeSerif.sfd: - - Glagolitic: More tweeks. Added Djervi (I think) - -2009-03-02 Stevan_White - * FreeSerif.sfd: - - Glagolitic: tweeks - -2009-02-28 Stevan_White - * FreeSerif.sfd: - - Sinhala: replaced U+0DD0-1 with ones from sinha font - - Glagolitic: Additions, improvements (Note: the characters still missing - I simply haven't yet recognized in a manuscript or found in an on-line - HTML encoded text. I would like to see real ones rather than copying - out of the Unicode samples.) - - Cyrillic Extended-B: Assembled Monograph Uk, uk. See discussion - http://en.wikipedia.org/wiki/Uk_(Cyrillic) - -2009-02-27 Stevan_White - * FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Made braces more distinctive. - -2009-02-26 Stevan_White - * FreeMono.sfd: - - ASCII: Accentuated braces (for better readability in terminals) - -2009-02-24 Stevan_White - * FreeSerif.sfd: - - Cherokee: Daniel improved U+13d2 - - Sinhala: Copied most Unicode glyphs directly from Yannis Haralambous - sinhala MetaFont files. These are: all but 0dd0 0dd1 0df4. - Gave Unicode characters names, based on a transliteration scheme from - Harshula. - The auxiliary Sinhala are all from the LKLUG font. - -2009-02-23 Stevan_White - * FreeSerif.sfd: - - Copied glyphs from LKLUG font, as discussed with Harshula Jayasuriya. - http://sinhala.cvs.sourceforge.net/viewvc/sinhala/sinhala/fonts/ - - This font is derived from a Metafont font: This package was - originally developed by Yannis Haralambous (Yannis.Haralambous at - univ-lille1 fr), with funding from the Wellcome Institute for the - History of Medicine, 183 Euston Road, London NW1 2BE, England (Contact - person: Dominik Wujastyk (D.Wujastyk at ucl ac uk)), which is using - the font in its Catalogue of Sinhala Manuscript. The original package - was available by ftp at ftp.bcc.ac.uk in: - /pub/users/ucgadkw/indology/software/sinhala1-TeX.zip - - The hope is to eventually pull glyphs directly from the original MF - files. - -2009-02-21 Stevan_White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - tidying previous commits - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Serif: Revised letter spacing in Armenian. - Serif roman: Added initial version of Glagolitic (by me) - -2009-02-18 Stevan_White - * FreeSerif.sfd: - - Armenian: spacing changes - Sinhala: deleted range, for usual reasons: - It doesn't even contain the full set of Unicode letters, and Sinhala - requires auxiliary characters and lookup tables for proper - representation. - (Found what I think are the originals at - http://www.mettanet.org/fonts/ ) - -2009-02-12 Stevan_White - * FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - SerifBoldItalic - Armenian oblique from Daniel Johnson's bold version - Added ligatures (by Daniel) and lookup tables. - - * FreeSerifItalic.sfd: - - Armenian: Made oblique version of Daniel Johnson's range - - * FreeSerifBold.sfd: - - Armenian by Daniel Johnson - - * FreeSerif.sfd: - - Improvements of a couple of Armenian characters, from Daniel Johnson. - - * tools-- GenerateOpenType, GenerateTrueType, checkGlyphNumbers.py, findBackLayers.py, isMonoMono.py, range_report.py, ranges.py, validate.py: - - Changed /usr/local/bin/fontforge to /usr/bin/fontforge - (to work with the update-alternatives mechanism, whereby a link is made - /usr/bin/fontforge -> /etc/alternatives/fontforge -> preferred binary ) - -2009-02-07 Stevan_White - * FreeSerifItalic.sfd: - - Latin: Kerning. Fixed some missing extrema - Made some more delicate italic IPA letters - -2009-02-06 Stevan_White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - Latin: kerning - - * FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - Adjusted ff etc ligatures in Italic - -2009-02-05 Stevan_White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Thai sample text (means something like - Mr Sangkapan who sells bottles was picked up by the police because he - stole the wash of ms. .....) - -2009-02-04 Stevan_White - * FreeSans.sfd: - - Vai range, by Daniel Johnson - - * FreeSerifBoldItalic.sfd: - - Latin: kerning - -2009-02-03 Stevan_White - * FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - Latin: kerning - -2009-01-26 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Made nu distinct from v. - Remedies bug #25376: https://savannah.gnu.org/bugs/?25376 - greek letter 'nu' [U+03bd] same as latin 'v' [U+0076] in FreeMono - -2009-01-22 Stevan_White - * FreeSans.sfd: - - Kerning. Need to copy to other faces - - Arabic ligatures: turned on "ignore combining marks" on advice of - Khaled Hosny. - -2009-01-20 Stevan_White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Drew U+1e9C-F in Latin Extended Additional (including capital ess-zet) - -2009-01-19 Stevan_White - * FreeMono.sfd: - - Update of Kayah Li from Daniel Johnson - -2009-01-18 Stevan_White - * FreeSerif.sfd: - - Latin: kerning - - Coptic: Laula to be same height as Phi Psi (higher than other letters). - Dei and dei also to be higher letters, adjusted widths too. - - Unified Canadian Aboriginal Syllabics: moved the non-Unicode letter - part glyphs ucas.ring ucas.horizline ucas.shortvert ucas.righttack - ucas.lefttack to the Private Use area - 59664-59668 - Technique was to edit the SFD file directly: It seems the encoding - slot for the glyph is the first field of the "Encoding:" line for - the character. - - * FreeMono.sfd: - - Cherokee: improvements from D. Johnson. - -2009-01-17 Stevan_White - * FreeSerif.sfd: - - Cyrillic: Kerning. - - Re-linked Ezh/Yogh and re-made reversed Ezh. - -2009-01-16 Stevan_White - * FreeSerif.sfd: - - Fiddled with Coptic glyphs: Longer tail on Shei, less droopy Alfa. - Made Armenian Aiw to be a link to Phi (on Daniel Johnson's advice ) - - * FreeMono.sfd: - - Kayah Li by Daniel Johnson - - Cherokee, by Daniel Johnson - - Made references of some Armenian punctuation, - Made primereversed to be really the reverse of prime. - - Removed hints - - * tools/ranges.py: - - corrected Unified Canadian Aboriginal Syllabics - -2009-01-13 Stevan_White - * FreeSans.sfd: - - named some Armenian letters - - * FreeSerif.sfd: - - Armenian range by Daniel Johnson, with ligatures. - -2009-01-12 Stevan_White - * FreeSerif.sfd: - - Coptic: Raised top of laula above common top, as it appears in most - other fonts. Makes it easier to distinguish from alfa. - A little more space around Iauda and iauda. - Kerned Dei. - -2009-01-11 Stevan_White - * FreeSerif.sfd: - - Coptic: Made capital Alpha is distinct in printed form. - Made more angular vida with flattened top and bottom. - Made small hori more curvy. - More fiddling with Hori, made Kapa much wider. - - Reduced width of small letter straight stems to match small letters - in Latin. - Kerning for capitals. - - Revised: - Added a few dialectic letters and kai symbol - Removed many "ear" serifs, preferring a slashing continuation of - long decenders and diagonals as in some manuscripts - Made Kai and kai not to go below baseline - Made Psi a little broader - Made small khei distinct from cap, - Revised Hori and hori. - Some of this toward https://savannah.gnu.org/bugs/?25289 - - Greek: Made archaic letters u+0370-3 (understand are used for - old numbering) - -2009-01-08 Stevan_White - * FreeSerif.sfd: - - Various alterations to Coptic: Re-worked K and M, added kern table. - -2009-01-07 Stevan_White - * FreeSans.sfd: - - Daniel Johnson's fix of TT reference transformation bug in - Unified Canadian Aboriginal Syllabics, - -2009-01-06 Stevan_White - * FreeSans.sfd: - - Unified Canadian Aboriginal Syllabics range, courtesy of Daniel Johnson. - -2009-01-04 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Added 2009 to copyright dates - - * FreeSans.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Added some TrueType names - -2009-01-04 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Added 2009 to copyright dates - - * AUTHORS, CREDITS: - - Removed Glagolitic range author - - * FreeSans.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Added some TrueType names - -2009-01-01 Stevan_White - * FreeSerif.sfd: - - Removed Glagolitic range, since have not (yet) received OK from author. - - Added some TrueType Names - -2008-12-31 Stevan_White - * COPYING: - - Updated license to GPL v3 - -2008-12-30 Stevan_White - * FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Oblique versions of Daniel Johnson's Cherokee. - - * FreeSerifBold.sfd: - - Cherokee Bold range from Daniel Johnson. - -2008-12-27 Stevan_White - * isMonoMono.py: - - 900 EM -> 800 - - * FreeMonoBold.sfd, FreeMonoBoldOblique.sfd: - - Made glyphs to lie between -200 and 800 EM - - * isMonoMono.py: - - check that glyphs lie in vertical bounding boxes - - * FreeMono.sfd, FreeSerif.sfd: - - Extensible bracket characters didn't exactly line up. Fixed. - Mono: a couple of glyphs had gotten out of their bounding boxes again. - - * tools/isMonoMono.py: - - 900 EM -> 800 - - check that glyphs lie in vertical bounding boxes - -2008-12-26 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Final pre-release cleanup - - * FreeSerif.sfd: - - Buginese vowel u was misnamed - - * FreeMono.sfd: - - Yatcyrillic somehow was a mark character ... fixed - - * FreeSans.sfd, FreeSansOblique.sfd: - - Had to un-link references in - Sans: uni02B2, uni02B5 - SansOblique: uni0363 - because validation of the TTF file said the glyph - "is drawn in wrong direction" - I would have preferred to have understand this... - - * Makefile: - - Added quick test for FontForge version. - - * FreeMonoBold.sfd, FreeMonoBoldOblique.sfd: - - Removed kerning tables (?? what were they doing here anyway??) - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Kerning tables for Thai. - Handles one common case: short letter followed by a tall one with - an overhang to the left. - - * tools/ranges.py: - - some changes to explanatory text - -2008-12-25 Stevan_White - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifItalic.sfd: - - More putzing with kerning tables - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Copied kerning classes - Serif -> SerifBold - SerifItalic -> SerifBoldItalic - Sans -> SansOblique SansBold SansBoldOblique - Some associated naming of characters, etc - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Additions and correction in Spacing Modifier letters and IPA Extensions - -2008-12-23 Stevan_White - * FreeSerif.sfd: - - Applied patch to Cherokee range - -2008-12-20 Stevan_White - * FreeSerif.sfd, FreeSerifItalic.sfd: - - Fixed kern classes that end in space (crashes FontForge) - - * FreeSerifItalic.sfd, FreeSerif.sfd: - - kerning - -2008-12-19 Stevan_White - * FreeSerifItalic.sfd: - - kerning - - * FreeSerif.sfd: - - kerning - Some adjustments to Glagolitc spacing, mark positioning - -2008-12-18 Stevan_White - * FreeSerif.sfd, FreeSerifItalic.sfd: - - kerning - -2008-12-17 Stevan_White - * FreeSerif.sfd, FreeSerifItalic.sfd: - - kerning - -2008-12-11 Stevan_White - * FreeSans.sfd, FreeSerif.sfd: - - kerning - -2008-12-10 Stevan_White - * FreeSans.sfd, FreeSansBold.sfd: - - kerning - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd: - - kerning - -2008-12-09 Stevan_White - * FreeSerif.sfd, FreeSerifItalic.sfd: - - kerning - -2008-12-08 Stevan_White - * FreeSansOblique.sfd: - - Slanted small final sigma. Remedies - bug #24993: U+03C2 "Greek small letter final sigma" not slanted in - Free Sans Oblique - https://savannah.gnu.org/bugs/index.php?24993 - -2008-12-07 Stevan_White - * FreeSans.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - kerning, etc - -2008-12-06 Stevan_White - * FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifItalic.sfd: - - kerning - Tweek in Sans having to do with addition of Latin Extended - -2008-12-05 Stevan_White - * FreeSansBold.sfd, FreeSansBoldOblique.sfd: - - Tweeks to Latin Extended Additional - - * FreeSansBoldOblique.sfd: - - Added Latin Extended Additional range - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Extra space at end of kern class names has bad effect on FornForge - script that try to run through kern classes. Some FontForge call - corrupts memory. - Got rid of extra space. - -2008-12-02 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Replaced U+0387 GREEK ANO TELEIA with top dot of colon. - See bug #24987: U+0387 GREEK ANO TELEIA too low - https://savannah.gnu.org/bugs/index.php?24987 - - * FreeSerif.sfd: - - more kerning in Cyrillic (broke into two tables of classes) - -2008-12-01 Stevan_White - * FreeSerif.sfd: - - tweeks to kernin - - * FreeSerifBoldItalic.sfd: - - kerning - -2008-11-30 Stevan_White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Kerning for Latin and Cyrillic fairly complete in Serif faces. - Complete in sense that it looks pretty good under Pango for - English French German Spanish Polish Czech Latvian - But have not done Vietnamese (will require many more entries). - I adjust roman and italic, then copy tables by hand to bold and - bolditalic. - Misgiving: bolditalic is much too crammed - Overall, I may have over-kerned. (A difficult temptation to master.) - - * FreeSerif.sfd, FreeSerifItalic.sfd: - - kerning - - * FreeSans.sfd, FreeSerif.sfd, FreeSerifItalic.sfd: - - kerning - In Serif, modified widths of some extended latin glyphs - -2008-11-29 Stevan_White - * FreeSerif.sfd: - - Broke Latin kerning subtable into four, hoping it will be easier to - understand and maintain. - - * FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSerif.sfd, - FreeSerifItalic.sfd, FreeSerifBold.sfd, FreeSansOblique.sfd, - FreeSans.sfd: - - kerninig - -2008-11-28 Stevan_White - * FreeSans.sfd, FreeSerif.sfd: - - more kerning; - made guillemot narrower - - * FreeSansOblique.sfd, FreeSerif.sfd: - - previous commit was incomplete - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Adjusted width of single quotes (and apostrophe) to be "punctuation width" - More fiddling with kerning. - -2008-11-27 Stevan_White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifItalic.sfd: - - much fiddling with kerning - -2008-11-26 Stevan_White - * FreeSerifBold.sfd: - - Basic kerning, named main Cyrillic letters - - * FreeSerifItalic.sfd: - - Basic Cyrillic kerning - - * FreeSerif.sfd: - - Tweeks to Cyrillic kerning - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifItalic.sfd, Makefile: - - Much fiddling with kerning, tables, and generating fonts whose kerning - tables work with OpenOffice. - - * tools/GenerateTrueType: - - Made to include old-style kerning - Converted to Python - -2008-11-24 Stevan_White - * FreeSerif.sfd: - - regularized padding in Miscellaneous symbols. - At least within related ranges tried to make similar. - Made to validate - -2008-11-23 Stevan_White - * FreeSerif.sfd: - - Filled out Miscellaneous Symbols. Used George Douros' Unicode font. - Completed Miscellaneous Symbols, with some drawings from George Douros' - Unicode Symbols, and some of mine. - - * FreeMono.sfd, FreeMonoOblique.sfd: - - Replaced Greek Exteded psili and dasia with scaled versions of the - "bent quote" mark. I think it's distinctive enough, but not so silly. - - Remedies bug #22997: Mono: Greek Extended psili is ugly - https://savannah.gnu.org/bugs/?22997 - - * FreeSerif.sfd: - - Made some recycling symbols - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - Finished with Hebrew Pointed letters in all faces. - - * tools/range_report: - - preferred to keep the file ending - -2008-11-22 Stevan_White - * FreeSans.sfd: - - Fiddled with Hebrew Pointed letters - - * FreeSerifItalic.sfd: - - Marks for Vietnamese - - * FreeSerif.sfd, FreeSerifItalic.sfd: - - Letter pe had strange thick middle ear that looked awful. lamed had ben - bumped at some point. Fixed. Adjusted some of the points. - -2008-11-21 Stevan_White - * FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - repairs to Pointed Hebrew - - * FreeSerif.sfd: - - Numeral line positioning marks for Gothic - - * FreeSerifItalic.sfd: - - Added Combining Marks for Symbols (some question about obliqueness of - some symbols) - Cleaned up some empty glyphs in Pointed Hebrew. - -2008-11-20 Stevan_White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Provided Hebrew pointed letters, with lookups, for all Serif faces. - -2008-11-19 Stevan_White - * FreeSerifBoldItalic.sfd: - - renamed Hebrew lookups - - * FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Completed Hebrew in Bold faces. - - * FreeSans.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifItalic.sfd: - - More tweeks to Hebrew points - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSerif.sfd, FreeSerifItalic.sfd: - - Adjustments corrections and additions to Hebrew points - -2008-11-18 Stevan_White - * FreeSansBold.sfd: - - Cleaned out a lot of ridiculous kernings - -2008-11-17 Stevan_White - * FreeSansBoldOblique.sfd: - - fiddled with Armenian ligatures - - * FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Added Armenian (with ligatures) to BoldOblique - Fiddled with character spacing - -2008-11-16 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Added U+01f9 and paragraph end marker to Georgian - Fiddled with Armenian ligatures - -2008-11-15 Stevan_White - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Another pass at letter spacing in Cyrillic. - Also went through ancient letters. - - Added Georgian paragraph separator 10FB - Added Georgian turned gan 10F9 (because it was easy) - - Re-worked letter spacing through modern Cyrillic range. - - * FreeSans.sfd, FreeSansBold.sfd, FreeSerif.sfd: - - Letter spacing - -2008-11-14 Stevan_White - * FreeSerif.sfd: - - Added several characters to Cyrillic Extended-B - - * FreeSansBold.sfd, FreeSansBoldOblique.sfd: - - Made Cyrillic hooked e U+04BC-F to look less goofy. - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Based on assertion on Pechatnyj Dvor's web site, Cyrillic Fita - U+0472-3 and "Barred O" U+04E8-9 are different styles the same letter, - and the fact that the tilde in the O never looked good in Sans, I - made them all barred O's. - - * FreeSerif.sfd: - - Added Cyrillic Yn, yn (U+a65e-f) - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - Synced up Cyrillic and Combining Diacritics ranges, - Couple of tweeks in Gujarati to make TT validate - - * FreeSans.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Changes to older Cyrillic letters, in response to further information. - Made omegas, omegas with titlo, and OT to all be of the same size and - shape in Serif. - Un-linked Cyrillic Psi and psi from Greek, made squarer versions. - - Some more Cyrillic diacritical marks in Sans. Re-worked U+04bc-f . - Experimenting with mark positioning for Cyrillic - -2008-11-12 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Strove to make Euro look more like the EC logo design, while making - glyph fit better with the design of its face. Bug #3576: Euro design - https://savannah.gnu.org/bugs/?23576 - - * FreeSans.sfd, FreeSerif.sfd: - - Adjustments mostly to GPOS tables having to do with Vietnamese marks. - The WAZU Vietnamese test page looks pretty good in Sans now. - Still not thrilled with below-dot when it appears with a mark over - e.g. U+0102. Pango positions one or the other but not both. - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Extensive modification of GPOS lookup tables for mark positioning. - I think they're now all functional (except styled Mono faces have none). - Also added lots of marks to faces that didn't have them, and also - fiddled with Combining Diacritical Marks. - -2008-11-10 Stevan_White - * FreeSerif.sfd: - - Made one combining mark really combining - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Made a few combining characters to be zero-width in Mono, - Added them to other styles. - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Figured out why below marks in Thai weren't working in the lowest - letters. I think Pango and other font renderers ignore 'blwm'. - However, 'mark' works. - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Tweeks to Thai marks - -2008-11-09 Stevan_White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Several bugfixes in Thai, mostly having to do with mark placement and - ligatures. Implemented ru-saraaa and lu-saraaa with ligatures. - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - added and named dottedcircle (used by Pango to render - combining mark base) - - * FreeSerif.sfd: - - Tweeks to Coptic, after viewing more papyrus samples and web pages. - - * FreeSerif.sfd: - - Weight of Coptic small letters made to match that of Latin and Greek ones. - -2008-11-08 Stevan_White - * FreeSerif.sfd: - - Made Coptic to comply better with - http://www.wazu.jp/gallery/Test_Coptic.html - Made a flourish at foot of letters with long diagonal. - - More tweeks to Coptic; put in a mark lookup table. - - Note: for small letters I made scaled references to captials. - Results in those letters looking quite light next to the capitals and - next to small Latin letters. Also, there are a few variant forms for - capitals (Unicode samples don't show this). It would be good to - re-work - - Added Coptic alphabet in u+2C80-2CB1 and u+03E2-u+03EF, drawn/built by - me, based on Unicode samples, TeX font copte, and scans at WikiPedia. - -2008-11-07 Stevan_White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Further tweeks to dieresis in Greek and Cyrillic - - * FreeSerif.sfd: - - replaced Greek I dieresis with references, tweeked height of dieresis. - -2008-11-04 Stevan_White - * FreeSerif.sfd: - - Added a few Cyrillic Extended-B letters seen in web pages while looking - for Glagolitic text. - - * FreeMono.sfd, FreeMonoOblique.sfd: - - Added a few old Cyrillic characters. - - * FreeSerif.sfd: - - Several corrections and tweeks to Glagolitic. - Still missing six slots from Unicode, but don't see them in the TeX - fonts. - On the other hand, several on-line Glagolitic pages (bibles etc) don't - seem to use these. Maybe it's OK as-is. - -2008-11-03 Stevan_White - * FreeSerif.sfd: - - Added lowercase range to Glagolitic, as a facile scaling of the - uppercase. - - Added letter to Glagolitic, scaled range. - -2008-11-02 Stevan_White - * FreeSerif.sfd: - - Replaced fraktur bold from Mathematical Alphanumeric Symbols with that - from TX Fonts by Young Ryu. - One concern: letter k is damaged (in both medium and bold). I just - hacked something up. - - Added Glagolitic "round type" font (Croation capitols only) from the - collection of Croatian fonts for LaTeX by Darko Zubrinić - ftp://ftp.dante.de/tex-archive/languages/croatian/ - http://www.tug.org/TUGboat/Articles/tb17-1/tb50zubr.pdf - - Several letters are missing besides the small letters. - - * FreeSerifBoldItalic.sfd: - - A couple of Thai references got obliqued twice. - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - By popular demand, removed 'ears' from Greek Upsilon and Psi. - Copied resulting glyphs to Serif Mathematical Alphanumeric Symbols. - - * FreeSerif.sfd: - - Some pointwise cleanup of main Tamil range - - Tried some things with lookups. Didn't make much headway. - -2008-11-01 Stevan_White - * FreeMono.sfd: - - somehow made a letter with wrong width - - * FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Added similar lookups and ligatures to Thai ranges. - - * FreeSerif.sfd: - - Lookups now work no worse than those for other Thai fonts, at least - in Pango. Still perplexed by behaviour of "Required" lookups. - - For Thai, made ligatures and lookups for yoying and thothan combined - with a lower vowel. These work well. - Attempted looksups for saraaa with ru and lu, and for saraam. - Not working. - - Cleaned up a few of the Bengali ligatures - - * FreeSerifBold.sfd: - - Tweek Thai - -2008-10-31 Stevan_White - * FreeSerif.sfd: - - Fixed ligatures and mark positioning for Hanunóo. - Problem with ligatures: Gnome pango doesn't do 'rlig', only 'liga' - - * FreeSerifItalic.sfd: - - Changed lookup table scripts for Devanagari and Bengali. - Find Problems -> ATT found several problems showing lookups acting on - glyphs that weren't listed in the script ranges, including dev2, bng2 - (why not deva and beng, I don't know). - - danda and doubledanda of Devanagari I understand are to be shared among - Indic scripts. So included bng2 and dev2 in the 'aalt' table for those. - - The 'init' and 'half' tables for Bengali made active for bng2. - - The 'locl' table for Bengali didn't do anything I could see: It mapped - the Devanagari danda to itself, and the doubledanda to itself. Deleted. - - Cleaned up some kern tables. - adjustments of under 5 EM are invisible. Some others I just didn't like. - Some were putting a letter beneath another, with is wrong. - - * FreeSerifBoldItalic.sfd: - - Added Thai - - * FreeSerifBold.sfd, FreeSerifItalic.sfd: - - Changes to mark positioning lookups, esp. in Italic. - Widened numerals in Bold - -2008-10-27 Stevan_White - * FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Tweeks regarding Armenian and lookups - - * FreeSansBold.sfd: - - Added Armenian ligatures FB13-FB17 with lookups - Also made a historical ligature ('hlig') table for u+0587. - - Toward bug #15183: missing characters from Armenian range - https://savannah.gnu.org/bugs/index.php?15183 - - * FreeSansOblique.sfd: - - Added Armenian ligatures, lookups. Cleaned up contours. - - * FreeSans.sfd: - - Added 5 Armenian ligatures to U+FB13 – FB17, and made corresponding - 'liga' lookup. Found there one ligature u+0587 that according to - http://en.wikipedia.org/wiki/Armenian_alphabet - - "in new orthography the Ö‡ character is not a typographical ligature anymore, and must never be treated as such. It is a distinct letter and has its place in the new alphabetic sequence." - So moved this out of the 'liga' lookup and into a new 'hlig' lookup. - -2008-10-26 Stevan_White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifItalic.sfd: - - Lots of improvements to Thai. - Completely revised letter spacing in Italic, and fiddled with combining - marks in all. - Still aren't working quite right, especially in Italic. - Still need to work over digits (in Bold they aren't even bold yet) - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifItalic.sfd: - - Bold Thai : added (painstakingly) constructed glyphs, lookups - roman Thai: tweeks - Italic Thai: tweeks (Note this still has multiple problems) - -2008-10-25 Stevan_White - * FreeSerif.sfd: - - WAZU says - http://www.wazu.jp/gallery/Fonts_Hanunoo.html - - MPH 2B Damase doesn't support the consonant-vowel ligatures necessary - to render Buhid writing. - - OK, so I made 'mark' lookups for combining marks and a bunch of - ligatures in an 'rlig' lookup. The latter still not working: - don't know why. - - Made page to match the example of the combining forms at - http://www.omniglot.com/writing/hanunoo.htm - -2008-10-24 Stevan_White - * FreeSerif.sfd: - - Removed some marks from Mathematical Alphanumeric Symbols - - * FreeSerif.sfd: - - Tweeked combining marks for Vietnamese. Made to satisfy - WAZU JAPAN Comprehensive Unicode Test Page for Vietnamese - http://www.wazu.jp/gallery/Test_Vietnamese.html - Could still use some tweeking... - - * FreeSerif.sfd: - - Added marks for composition of Vietnamese - - * FreeMono.sfd, FreeSerif.sfd: - - Put "below" combining mark on lots of vowels and derivatives, - for Vietnamese. - Named a bunch of composit Latin, expecting to make substitutions. - -2008-10-23 Stevan_White - * FreeSerif.sfd: - - Thai spacing alterations based on advice of a native speaker. - -2008-10-22 Stevan_White - * FreeSerif.sfd: - - re-named Thai lookups according to order - -2008-10-21 Stevan_White - * FreeSans.sfd: - - Cleanup of glyphs in Gujarati, Devanagari. - - Note: Serious problem with Sans GPOS abvm in Devanagari - "'abvm' Above Base Mark in Devanagari subtable" "gujr-0" - But all the characters that list gujr-0 are in Gujarati. - Not sure how this got broken or how to fix it. - - * FreeSerif.sfd: - - Fiddled with Thai mark positioning: passes my tests now OK. - Made a few more references in Math Symbols; more regularization of - stroke. - - * FreeSerif.sfd: - - Added mark class for Vietnamese "horn" - Several references made in General Punctuation, Arrows - - * FreeMono.sfd: - - added some Combining Diacritical Marks - -2008-10-20 Stevan_White - * FreeSerif.sfd: - - Made some references from serifed Latin capitals to Greek counterparts. - - * FreeSerif.sfd: - - Made a few repeated glyphs into references in Musical Symbols - - * tools/ranges.py, tools/validate.py: - - tweeked some ranges, format of output - -2008-10-19 Stevan_White - * FreeSerif.sfd: - - Moved several glypns from Mathematical Alphanumeric Symbols to - Letterlike Symbols. - Couple tweeks in Mathematical Symbols. - - * FreeMono.sfd, FreeSerif.sfd: - - Fiddling with Mathematical Symbols. - In Serif, trying to make stroke width more consistent. - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd: - - Added some Greek symbols in Mono and Sans to make a little more regular - and correspond better with TeX. - Tweek of serif. - - * FreeSansBold.sfd: - - a few more improvements. - - One problem with the Mathematical Alphanumeric area is, one must - remember to change it any time another face is altered... - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSerifBold.sfd: - - Several improvements and additions to Sans faces (mostly in Greek) from - experience of pasting into FreeSerif Mathematical Alphanumeric Symbols. - - * FreeSerif.sfd: - - Replaced most of Mathematical Alphanumeric Symbols - roman italic bold (latin and greek) - gothic italic bold (latin and greek) - typewriter - and numerals - with glyphs from FreeFont. These were scaled to uniform height. - - Remains: Blackboard Bold, Fraktur, Calligraphic, Script - - * FreeSerif.sfd: - - Tidied lookup table names for Malayalam - - * FreeSerif.sfd: - - Applied Malayalam patch from Hiran Venugopalan - - * FreeMono.sfd: - - Added/corrected many Mathematical Symbols - - * FreeSansOblique.sfd: - - more IPA - -2008-10-18 Stevan_White - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Made lots more IPA and Phonetic Extensions - Note: fontforge is reporting an error in a few glyphs made by scaling - another, that the glyphs are drawn in the wrong direction--only in - TrueType though. Suspect a FontForge bug. - - Added several Combining Diacritical Marks - -2008-10-17 Stevan_White - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Made several Spacing Modifier Letters, Combining Diacritical Marks, - and IPA and Phonetic Extensions - -2008-10-16 Stevan_White - * tools/ranges.py: - - un-grayed totals rows - - Fiddled Cyrillic - made output prettier - - * FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Added some Superscripts and Subscripts - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Finished off Superscripts and subscripts - - Completed General Punctuation for Mono faces - - Added some General Punctuation - -2008-10-15 Stevan_White - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - more Letterlike Symbols, Currency Symbols - - * FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Made some Combining Diacritical Marks for Symbols, Letterlike Symbols - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Added some General Punctuation - -2008-10-14 Stevan_White - * FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Added double slanted hyphen, made General Punctuaton Supplement like - Serif's - - * FreeSansBoldOblique.sfd: - - Filled out Greek Extended - - * FreeMono.sfd, FreeSerifItalic.sfd: - - fixes to last 2 commits - - * FreeSerifItalic.sfd: - - Last character to General Punctuation - - * FreeMono.sfd: - - Built some Enclosed Alphanumerics (1-10) - - * FreeSerif.sfd: - - Copied in Daniel Johnson's changes to Cherokee. - -2008-10-12 Stevan_White - * FreeSerif.sfd: - - Included Daniel Johnson's Cherokee glyphs. - -2008-10-05 Stevan_White - * FreeMono.sfd: - - Further corrections to diaresis in Cyrillic -- legibility in small sizes - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoOblique.sfd, FreeSerif.sfd: - - Regularized placement of diaresis in Cyrillic - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Added same set of glyphs to Cyrillic Supplement - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Added some of the easier letters from Cyrillic Supplement - -2008-10-04 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeSerifItalic.sfd: - - Finished high Cyrillic range for MonoBold and MonoBoldOblique. - (Remaining: historic ranges, Cyrillic extensions) - Tweeked others. - - * FreeMonoBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Serif*Italic: Added last Abkhazian letters to Cyrillic - MonoBold: tweek - -2008-10-03 Stevan_White - * FreeMono.sfd, FreeMonoOblique.sfd, FreeSerif.sfd, FreeSerifBoldItalic.sfd: - - Mono: Some additions to historic letters - - * FreeSerif.sfd: - - Added some punctuation and combining numeric marks from - Cyrillic Extended B - - * FreeMono.sfd, FreeMonoBold.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Various technical tweeks, mostly concerning recent additions. - Also did a bit more "Points too close" and "irrelevant control points". - Cyrillic millions redesign meant could not maintain use of refrences - for it. - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - More high Cyrillic - Included old Cyrillic millions combining mark in Sans, changed design - in Serif - -2008-10-02 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - More high Cyrillic - - * FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerifBoldItalic.sfd: - - More high Cyrillic glyphs - - * FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - More glyphs in high Cyrillic. Remains only some whose form I'm unsure - of in italic. - - * FreeSerifBoldItalic.sfd: - - More glyphs in higher Cyrillic range - - * FreeSerifItalic.sfd: - - Same process of tightening el, em, ge (but a P.S. to previous commit: - also did ya, ze for SerifBold.) - - * FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - BoldItalic: Tightened up spacing on left of el, em, ge (could go - farther, but it is partly a problem with glyph design... - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - More additions to Cyrillic. Finished SerifBold except for Nivkh - additions. - Used references on number combining forms. - -2008-09-30 Stevan_White - * FreeSerif.sfd: - - Added four (obsolete) Chuvash letters to Cyrillic Supplement - - completing it. - -2008-09-29 Stevan_White - * FreeSerif.sfd: - - Greek adjustments - Adjusted spacing of kappa slightly - Got rid of ears on Psi, following similar request for Upsilon. - -2008-09-28 Stevan_White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - Adding and fiddling with Spacing Modifiers and Combining Diacriticals - - * FreeSans.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Revisions of several Combining Diacritical marks - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - A few Combining Diacriticals and Spacing Modifiers - - MonoBoldOblique: Primarily filling out Spacing Modifier Letters - others: little fixes found along the way - -2008-09-27 Stevan_White - * FreeSerif.sfd: - - Replaced Malayalam range with that from Rachana_04 found on - Swathanthra Malayalam Computing project page - http://savannah.nongnu.org/projects/smc/ - Besides scaling and converting to cubic, performed much clean-up of - glyphs, added an r2 character, and re-named a bunch of characters. - -2008-09-23 Stevan_White - * tools/ranges.py: - - Corrections and additions to several ranges, - put extra row in table with character totals - -2008-09-22 Stevan_White - * FreeSerif.sfd: - - Filled in as much of Phonetic Extensions as I could without artistic - abilities. - Note 1D48-9 are not references due to apparent FontForge bug, that says - scaled references go in wrong direction. - - * FreeSerif.sfd: - - Cleaup of some Bengali glyphs. - Note many of the ligatures remain very very messy. - - * Makefile: - - added more validations - made to work with GenerateOpenType - - * FreeSerif.sfd: - - Built two more easy Phonetic Extensions - - * FreeSerif.sfd: - - Built some Phonetic Extensions letters, those with middle tilde - - * tools/GenerateOpenType: - - Replaced bash version with Python - -2008-09-21 Stevan_White - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Added lots of Spacing Modifier Letters and Combining Diacritical Marks. - - * FreeMono.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSerif.sfd: - - Wrote script to check if glyph encodings were in stated ranges, fixed - most discrepancies. - - There were a bunch of incompletely deleted characters in several faces. - - Sans: found several other problems in the process - # Tamil - Four slots labelled 0BDA-D have glyphs, not in Unicode. also 0BE1 - I think they are misplaced; added 0010 to each of them - - # Devanagari - Slot labelled U+093B is not in Unicode--can't find glyph: deleted - likewise 094F (may have been meant to be 0954) - 0955, 0973-0976 - - 0954 should be a combining mark, but it appears on the wrong side of 0. - 0971 was just wrong--made into simple dot. - 0972 is also wrong--made my own Candra A. - - # Gujarati - Slots labelled 0AE4-5 are not in Unicode; seem not to belong at all. - Deleted. 2800 is a dup of 2790. Deleted - - Serif: phillipine_double u1736 was misplaced - - A bunch of the Math Alphanumeric symbols are empty in the standard, - because they're represented elsewhere. These should be deleted - First need to make style consistent with existing symbols. - - * FreeSerif.sfd: - - Applied patch from Daniel J - Remedies bug - FreeSerif: Missing glyphs with palatal hook - https://savannah.gnu.org/bugs/index.php?24298 - Adding several letters to Phoenetic Extensions range U+1D80-BF - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Made four characters U+200C-F to be zero-width - Remedy to bug #23593: Mono 0-width chars: zero-width or space? - https://savannah.gnu.org/bugs/index.php?23593 - - * FreeSerif.sfd: - - Made Mahjong tiles to take up less space using references - Cleaned up several validation problems - -2008-09-20 Stevan_White - * tools/checkGlyphNumbers.py: - - included other Private Use Ranges - -2008-09-19 Stevan_White - * FreeSerif.sfd: - - Added several Hebrew Alphabetic Presentation Forms (some easy ones), to - make its coverage the same as Serif Bold. - - * FreeSerifBold.sfd: - - Re-encoded. - Deleted several glyphs in Hebrew Alphabetic Presentation Forms that - didn't correspond valid Unicode - - * FreeMonoBold.sfd, FreeSans.sfd, FreeSerifItalic.sfd: - - Ran script to find mis-numbered glyphs. Several were simply typos, - some offset by one. - - * FreeSansOblique.sfd: - - Numerous cases of glyphs in Private Use area incorrectly assigned - Unicode numbers and names. Gave all -1 for Unicode and named like - "slot.XXXX". - - * FreeSerif.sfd: - - Adapted Mahjong Tiles from George Douros' Unicode Symbols font. - - * FreeSerif.sfd: - - Added Domino Tiles. Domino outline is copied from George Douros' - Unicode Symbols, but the rest I preferred to do with references. - -2008-09-19 Stevan_White - * tools/ranges.py: - - corrected and simplified calculation of whether OS/2 bit is set. - Now works mostly perfectly, except for some high Unicode ranges... - - * tools/GenerateOpenType: - - Made to output old-style kerning tables for Windows - (FontForge complains though) - - * tools/GenerateTrueType: - - Made to hint before instructing: FontForge bases TT instructions on hints - although hints are not put into TrueType fonts. - - * tools/hex_range.py: - - cosmetic tweek - - * tools/isMonoMono.py: - - re-worked to take a list of files as input - - * tools/ranges.py: - - re-structured code and corrected a few ranges - -2008-09-18 Stevan_White - * FreeSerif.sfd: - - Adapted Mathematical Alphanumeric Symbols from George Douros' Unicode - Symbols font. - - * FreeMonoBoldOblique.sfd: - - This one got away from me--I don't know what I did. - Looks like some small contour edits. - - * FreeSansBoldOblique.sfd: - - Fixed one mis-numberd character in Latin Extended-B - - * FreeSerifBold.sfd, FreeSerifItalic.sfd: - - Fixed several mis-numbered characters. - - * FreeSansBold.sfd: - - SansBold: one Georgian letter with no name, one Zapf Dingbat was - unnumbered - ATT test shows a bunch of problems with Gurmukhi and 'blwf' table - indeed shows those letters at 0x10000+ - Sans names them like uni0A30_uni0A4D.blwf: they are in range - ECC6 to ED06 - - I meant to move this range into Private Use in last release, and - missed it. So now it is moved, into same range as Sans. - - Both Sans and SansBold in nukt table for Gurmukhi have duplicate - entries for uni0A15 uni0A3C. Deleted dups. - - * FreeMonoOblique.sfd: - - fixed a number of Unassigned Code Points in Greek Extended - - * FreeSansOblique.sfd: - - mis-numbered Combining Diacritics - - * FreeSansOblique.sfd: - - Several chars in Latin Extended hadn't been named. - One spurious letter in Letterlike Symbols - -2008-09-16 Stevan_White - * FreeMono.sfd, FreeSans.sfd, FreeSerif.sfd: - - Lots of additions: unless otherwise noted, they are from George Duros' - fonts Analecta, Music, and Unicode (haven't got final confirmation of - the eligibility of these glyphs, so this is just for testing.) - - Added some combining marks, fiddled a bit. In both Serif & Mono, tried - to get a key symbol characters to fit inside the key combining mark - - Serif - Got rid of ears on Upsilon - Added: - # Gothic - # Western & Byzantine Musical Symbols - - # Misc Symbols, Misc Technical Symbols (drew many myself) - # Supplemental Symbols and Arrows - - Mono - Added: - # lotsa Misc Technical Symbols - # OCR Symbols - # drew many Supplemental Symbols and Arrows, Misc Technical - - Sans - Added # Phoenecian - Made a few Letterlike Symbols; Made Re and Im to be sans-serif. - -2008-09-11 Stevan_White - * FreeSerif.sfd: - - Removed pointless entries from Latin kern table - - Tidied points in Sinhala - -2008-09-07 Stevan_White - * FreeSerif.sfd: - - Tidied up Tamil ligatures EEA8-EEAB to fix TT build warning - "MonotonicFindAlong: Never found our spline." - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeSans.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, Makefile: - - - Added APL characters to FreeMono (why?...) - - Fixed several last-minute problems, including - - Serif: Tweeked GPOS mark table for Cyrillic - Sans: Added a GPOS table for Cyrillic (but several diacritics missing) - - Serif, Mono: tweeked some bugs in extensible brackets & integrals - - Serif: Vietnamese o circumflex: accent was a bit high. fixed. - - MonoBoldOblique OTF build - uni213b intersects self - - Generation of TT fonts complains about several things to stderr, - including: - - SerifBold: "There exists a 'fpgm' code that seems incompatible with FontForge's. Instructions generated will be of lower quality. If legacy hinting is to be scrapped, it is suggested to clear the `fpgm` and repeat autoinstructing. It will be then possible to append user's code to FontForge's 'fpgm', but due to possible future updates, it is extremely advised to use high numbers for user's functions." - Probably has been there since I first copied the TT instructions in. - Just repeated the copying process carefully, and the warning went away. - - Serif: "FindMatchingHVEdge fell into an impossible position" - fixed a bunch of point too close - - REMAINING PROBLEM in Serif TT build - "MonotonicFindAlong: Never found our spline." - fixed several bad TT matrices-- there are several more - fixed many "control points too close" no luck - -2008-09-03 Stevan_White - * FreeSans.sfd, FreeSansOblique.sfd: - - Added/corrected some Misc. Symbols by copying from Serif. - Note this is only a stopgap solution. Want real sans-serif symbols. - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Added minimal Miscellaneous Symbols: card suites and some musical notes. - Note not happy with shapes...some I just drew. Sans isn't really sans. - - Fixed one APL symbol in Mono so it verified in OTF version - -2008-08-31 Stevan_White - * FreeMono.sfd: - - Built set of APL symbols. - -2008-08-30 Stevan_White - * FreeSans.sfd: - - Un-linked references in uni02B2 and uni02B5, because when validating the - TrueType version, FontForge gave an error "is drawn in wrong direction". - I suspect a bug in FontForge. Other similar glyphs make no errors. - - Fixed missing extrema in TrueType. - These were the last cases being reported by validate in all the faces. - - * FreeSerifItalic.sfd: - - fixed last missing extrema in TrueType - - * Makefile: - - restructured validation to look in a directory - - * FreeSans.sfd, FreeSansOblique.sfd, FreeSerif.sfd: - - Fixed missing extrema in TrueType versions - - * isMonoMono.py, validate.py: - - restructured validation to look in a directory - -2008-08-15 Stevan_White - * FreeSans.sfd: - - Same problem with uni0A83 as with bn_llikaar. Just made zero-width. - -2008-08-14 Stevan_White - * FreeSans.sfd, FreeSansOblique.sfd: - - Glyph bn_llikaar, U+09E3 BENGALI VOWEL SIGN VOCALIC LL, - has right bound positioned far into the negative. Causes a warning in - FontForge when opening OTF version. - Comparing with other fonts supporting Bengali, found no others that - do this. - Serif makes glyph width 0 (which sounds right according to Unicode) - and puts glyph wholly to left of 0. But, I haven't found this letter - in text anywhere. I wonder if it is really used in writing. - - * FreeSans.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifItalic.sfd: - - Further TrueType validation fixes. - Sans still has two glyps in wrong direction. - - * FreeSans.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Fixed more TrueType problems...all missing extrema in TTF validation - -2008-08-13 Stevan_White - * FreeSans.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - fixed all the TrueType validation problems of type "intersects itself" - and all but two of the "wrong directions", as well as a lot of - "missing extrema". But there remain hundreds of missing extrema in the - TrueType version. - Also, bn_llikaar in Sans and Oblique still has a problem in OTF version. - - * FreeMono.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd: - - Made .ttf files to validate. Other faces have many more problems still. - -2008-08-12 Stevan_White - * FreeMonoOblique.sfd, FreeSerif.sfd, FreeSerifItalic.sfd: - - Continuing to make OTF versions validate. - - * FreeMonoOblique.sfd: - lots of missing points at extrema - * FreeSerif.sfd: - 12 wrong directions, 1 missing extrema - * FreeSerifItalic.sfd: - many missing points at extrema, 1 self-intersecting - - What was wrong: in several oblique cases, an already-italic glyph was - made more italic, thereby fouling up extrema (although why it passed - validation in the SFD I don't know). Some glyphs were - overly-complicated with many near points. Cleaned up, rounded to int. - - Remaining problem: OTF FreeSansOblique FreeSans. one Bengali glyph in - each whose advance width and htmx don't match. - - Moral of story: validate the OTF and TTF versions too before a release. - - * FreeSansOblique.sfd: - - Reverse a mistake from last commit: somehow this file was converted to - quadratic, or something. - - * tools/GenerateTrueType: - - For TrueType, one puts in Instructions, not Hints. - This vastly improves look of TrueType fonts in Windows. - -2008-08-11 Stevan_White - * FreeMonoBoldOblique.sfd, FreeSans.sfd, FreeSansOblique.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - Found that SFD files that validated produced OpenType files that don't. - These represent the easy fixes. Some were result of conversion to - quadratic; some shouldn't have validated in the SFD... - - * MonoBoldOblique: uni0250 missing pts at extrema [reference glyph rotated...] - * Sans: uni0AC4 wrong direction [simplified, rounded to int] - * SansOblique: uni01EA wrong direction [rounded to int] - * SerifBold: uni023f wrong direction [round to int] - * SerifBoldItalic: uni0245 missing pts at extrema [ungrouped ref, added extrema] - -2008-08-06 Stevan_White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoOblique.sfd: - - Re-set font metrics, which were somehow making uneven vertical spacing. - -2008-06-22 Steve White - * FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - Made to validate - - * ranges.py: - - Brought more into line with OpenType - Added some ranges - Fixed bug with ranges outside of font - - * CREDITS: - - 3 new ranges - - * FreeSerif.sfd, FreeSerifItalic.sfd: - - Cyrillic: tweeked accents for consistency, and for readability in small - sizes. - - * FreeSerif.sfd: - - Thanna range: tweeking - - Thaana range: Scaled up by about 15%, raised by 100EM, tightened - some of the diacritics to get inside 900 to -300 EM limits. - - * FreeSans.sfd: - - Added Old Persian and Ugaritic from MPH2BDamase font. - -2008-06-21 Steve White - * FreeSerif.sfd: - - Added Tai Le range adapted from MPH2BDamase font. - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - Added some ancient Greek numerals from Tempora to high Unicode area, - (partly just to show it can now be done.) - - * FreeSerifItalic.sfd: - - Couple of tweeks putting glyphs above -300EM. - - * FreeSerif.sfd, FreeSerifItalic.sfd: - - Surgery to Thai letter 'tho than', u+0e10, to push it above -300 EM. - This makes Thai range completely between 900 and -300 EM. - - * FreeSans.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifItalic.sfd: - - Many auxilary characters (esp. for Malayalam, Bengla, and Tamil) - representing ligatures and alternative forms without their own Unicode, - were moved from - ranges above 0xFFFF (which ought to have been slots for other defined - Unicode ranges) into the Private Use area. - - In Serif, I segregated the scripts, in Sans it was hard to see where one - began and another ended, so I moved them en masse. - - Note several problems with wrongly-named characters: - I already re-named glyph570 and glyph582. - But there are others with names starting with A... - - * FreeSansBold.sfd, FreeSansOblique.sfd: - - Fixed (I hope the last) problem with scripts in lookups - Find Problems -> ATT (all selected) finds multiple issues, - - * FreeSansBold.sfd: - In addition to script 'guru', added 'gur2' to the scripts for these - lookups - 'nukt' Nukta forms in Gurmukhi - 'blwf' Below Base Forms in Gurmukhi - 'pstf' Post Base Forms in Gurmukhi - 'blws' Below Base Substitutions in Gurmukhi - 'abvs' Above Base Substitutions in Gurmukhi - 'psts' Post Base Substitutions in Gurmukhi - - * FreeSansOblique.sfd: - In addition to script 'beng', added 'bng2' to the scripts for the lookup - 'half' Half Forms in Bengali - - Moreover, the lookup - 'aalt' Access All Alternates in Latin - contains only Bengali letters. - Re-named as Bengali, made to work on beng, bng2 scripts - -2008-06-20 Steve White - * FreeSerif.sfd: - - Scaled Sinhala range. - Remedies bug #23656: Sinhala letters over-sized - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Mostly messing with Greek Extended accents again. - re-positioned ypogegrammani on advice of Alexey Kryukov - Put prosgegrammani beneath main letters in Mono, to make narrower glyphs - Implemented more distinction between tonos and acute. - -2008-06-19 Steve White - * FreeMonoBoldOblique.sfd: - - Completed fit of Mono to 800 to -200 EM. - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoOblique.sfd: - - Set Metrics to recommended values - - * FreeMonoOblique.sfd: - - Now Mono Oblique, as well as roman and Bold, are within 800 to -200 EM. - Just BoldOblique to go. - - * FreeMono.sfd, FreeMonoBold.sfd: - - More toward fitting to 800 to -200 EM. - Basically, reduced Georgian by 92%. - Also made an over-all offset, so Georgian is somehow centered (Bold...I - guess I already did this in roman). - Want to also do an emboldening to make stroke like rest of font, but - current FontForge has a nasty crash that loses data on this function. - - * FreeMono.sfd: - - In effort to make fit in 800 to -200 EM, - Scaled Georgian by 92%, centered on 600 wide box. - Next: Embolden a bit. - -2008-06-18 Steve White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Toward making all glyphs lie between -200 and 800 EM. - Numerous small changes, especially raising descenders of some Hebrew - letters. - Georgian remains a problem - -2008-06-13 Steve White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Moved prosgegrammeni up to baseline, - (and then moved all references down to baseline) - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Added Control Picture "blank" to all faces. - Switched U+0222-3 from TemporaLGCUni - -2008-06-11 Steve White - * FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - More fiddling with Greek Extended accents - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Tweeks to accents etc in Greek Extended and Cyrillic - -2008-06-10 Steve White - * FreeSerifBold.sfd, FreeSerifItalic.sfd: - - Fixed a few big horizontal spacing problems - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Implemented TemporaLCGUni glyphs in Cyrillic ranges. - Added a breve_cyrillic for the moustache breve mark. - -2008-06-08 Steve White - * FreeSerif.sfd: - - Replaced most of Cyrillic range with TemporaLGCUni. - Remodelled many of the derived Cyrillic characters after these. - Fiddled globally with spacing of small letters. - Unclear on diacritics 485-6, unhappy with breve. - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Started implementing TemporaLCGUni in Greek ranges. - - Replaced 3DC-3E1 from Tempora, because I thought they looked nicer and - more like the other existing FreeFont glyphs. - Replaced 3DA-B from Tempora, because they look more like Unicode - samples, and nicer. - Added 03f3-4, 03F7-F. - Prefer my own lunate epsilon. - Replaced Phi and Omega from Tempora. - These plainly fit the other FreeFont glyphs better than the origninals. - (How did this happen?) - - In bold, replaced U+03D7 - - Copied lbbar u+2114 - - Small italic greek--replaced most except phi, psi, omega - - Based on new information, broke the identification of oxia with Latin - acute. - -2008-06-07 Steve White - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Efforts to control heights of characters - -2008-06-06 Steve White - * FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Made to validate - -2008-06-05 Steve White - * FreeSans.sfd: - - Fixed undefined character in kerning classes - -2008-06-04 Steve White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - tweeks and additions to General Punctuation - -2008-06-03 Steve White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSansOblique.sfd: - - Completed/tweeked Number Forms - - * FreeMono.sfd, FreeSerif.sfd: - - Added some Miscellaneous Technical symbols - -2008-06-02 Steve White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - Tweeks...mostly Letterlike - -2008-06-01 Steve White - * FreeMono.sfd, FreeSerif.sfd: - - Added Box Drawing characters to Serif. - Tweeked a glyph in Mono - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Added several glyphs to Letterlike Characters - -2008-05-31 Steve White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Validation pass - - SansOblique and SansBoldOblique had validation problem with BlueValues - Private Dictionary - Elements in BlueValues/OtherBlues array are disordered - Elements in BlueValues/OtherBlues array are too close - (Change BlueFuzz) - StemSnapV does not contain StdVW value. - So I ordered the array, and based on other slanted fonts, - removed StemSnapV. - - Note however, I still think the two top Blues lines are too close - But I don't even know what the second-to-top line is meant to do. - - * FreeSerif.sfd: - - Added to Block Elements, Geometric Shapes - Made to validate - -2008-05-29 Steve White - * FreeMono.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Looking at special symbols. - Drew several Miscellaneous Symbols in Mono and Serif - > Completed/corrected planetary symbols, added Dice, - some other easy ones - > Completed Dingbats in Serif (using URW Dingbats) - Added some Block Elements to Serif - -2008-05-26 Steve White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - More changes stemming from J. Poon's report. - -2008-05-25 Steve White - * FreeSerif.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Height surgery on SerifBoldItalic. - More fiddling with accents in others. - - * FreeSerifItalic.sfd: - - More height surgery. Only a few left in Benglai and Thai - - * FreeSerifBold.sfd: - - Re-applied surgery to make glyphs between 900 and -300EM - - *** Regression - Inadvertently un-linked all references in SerifBold in r1.83. - This reverses that error (but also un-does the surgery mentioned there) - - * FreeSerifBold.sfd, FreeSerifItalic.sfd: - - Applied surgery to make Latin letters go under 900EM. - One exception yet... - -2008-05-24 Steve White - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Serif: much fiddling with accents in Latin ranges. - Re-thought some glyphs (there are still a few messy ones, especially - in bold) - Checked horizontal spacing...fixed a number of problems. - -2008-05-23 Steve White - * FreeSansBold.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - Made Latin Extended-B coverage consistent across Serif; cleaned up some - glyphs - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - Filled more of General Punctuation in Sans and Serif - Made all agree on coverage of Latin Extended Additional - -2008-05-22 Steve White - * FreeSans.sfd, FreeSansBold.sfd, FreeSansOblique.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - Added Latin Extended Additional to SansOblique. - Made Latin Extended Additional coverage consistent across Sans, B, I - Made Latin Extended-B coverage same in SerifBold. - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeSansBold.sfd: - - Mono* made Latin-B coverage consistent across faces - - * FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Made set of Latin Extended-B consistent across Sans faces - - * FreeSans.sfd, FreeSansBold.sfd: - - More filling in General Punctuation - - * FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Another bunch of J. Poon's reports - also, filling in some Combining Diacriticals, Spacing Modifiers, and - General Punctuation in bold faces - -2008-05-21 Steve White - * FreeMono.sfd, FreeMonoBold.sfd, FreeSans.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Mucking about with mark tables in Thai (Serif) - Other faces: Making changes from J. Poon's report - -2008-05-20 Steve White - * CREDITS: - - Mark Williamson - Jacob Poon - - * Makefile: - - added tests target - -2008-05-18 Steve White - * ranges.py: - - Put table explanation back in - - Improved behaviour for high Unicode - - * FreeSans.sfd: - - Revision of kerning - - * FreeSerif.sfd: - - Made Latin kerning a little more reasonable: - reduced many excessive kerns (some had letters apparently - overlapping, which shouldn't happen) - made kerns increment by 5EM for ease of reading - got rid of kerns too small to be seen - - * FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSerifBold.sfd: - - Made to verify - -2008-05-13 Steve White - * FreeSerif.sfd: - - Made to validate - - * FreeSerif.sfd: - - Gurmukhi: filled range in Serif, taking glyphs from the original - Punjabi font by Hardip Singh Pannu - http://members.aol.com/hspannu/punjabi.html (file pb_win95.exe) - -2008-05-12 Steve White - * FreeSans.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - Hebrew, basic. Some faces missing punctuation marks, added. - - * FreeMono.sfd, FreeSans.sfd: - - Armenian: Sans tried to make verticals and horizontals of more uniform - width both, finddled with punctuation - - * FreeMonoOblique.sfd: - - made to validate - - * FreeMonoBold.sfd: - - made to validate - - * FreeSans.sfd, FreeSansBold.sfd: - - Armenian in Sans: regularized letter spacing - - * FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd: - - Armenian: fill out ranges and clean up - SansBold especially had a lot of incorrect references. - Now all the ranges with Armenian at least share the same set of - characters. - - * FreeMono.sfd: - - Fixed glyph with wrong width. - -2008-05-11 Steve White - * FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerifItalic.sfd: - - 1) made to validate - 2) Mono: copied in Spacing Modifier Letters (glyphs not yet named) - 3) SerifItalic: Filled in General Punctuation - - * FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Made to validate, and pass all other FontForge tests. - Expedient: rounded everything to int - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Made to have the same Greek Symbols, - Made to validate - - * FreeSans.sfd, FreeSansBold.sfd: - - Made Greek Symbols as full as rest of Sans. Changed a name in Sans. - - * FreeMonoOblique.sfd: - - Made Greek as full as other faces - Made to validate - - * FreeSansBold.sfd: - - Deleted seven orphaned Arabic characters; looks like somebody started, - didn't get very far, putting Arabic in bold. - - Deleted orphaned Arabic glyph from Arabic Presentation forms-B - - * FreeSerifBold.sfd: - - Deleted the single Arabic character: it was clearly there by mistake. - - * FreeSansOblique.sfd: - - Made Greek Symbols as full as rest of Sans - - Tweeks to Armenian - - Comment from previous commit of FreeSans was meant for FreeSansOblique. - In FreeSans, only tweeked a few letters during putting more characters - in this face. - - Filled in Spacing Modifier Letters, increased General Punctuation. - - * FreeSans.sfd: - - Filled in Spacing Modifier Letters, increased General Punctuation - - * FreeMono.sfd: - - Made Armenian as full as other roman faces. - - Completed Spacing Modifier Letters - Added a couple of Greek Punctuation - - added more Spacing Modifier Letters - -2008-05-10 Steve White - * FreeSerif.sfd, FreeSerifItalic.sfd: - - Did same process of scaling and sizing for Thai in Sans as in Serif. - Added mark tables to Sans. Improvement, but there are questions... - - * FreeSans.sfd: - - Tidied some Gurmukhi glyphs, validated. - - Deleted ranges for Oriya, Kannada, on account of - 1) they only contained a subset of the consonant glyphs of the scripts, - few if any vowels, and had no ligature lookups as required - 2) Kannada was based on the Akurti fonts, which have copyright issues. - - See - bug #23225: Oriya range only partial - bug #23224: Kannada range only partial - - * FreeMonoBoldOblique.sfd: - - Made metrics like rest of Mono - -2008-05-09 Steve White - * ranges.py: - - More info on range intervals - - * FreeSerif.sfd: - - Deleted Telugu range. - It didn't represent a complete writing system for the language. - - See notes at https://savannah.gnu.org/bugs/index.php?23202 - Serif: Telugu range missing many characters; many wrong - - Got a copy of the original Tikkana font, - Copied in remaining consonants and vowels that I could find there. - I think one vowel 0C55 is missing according to unicode). - Strangely, the Telugu digits are alo missing. - In Tikkana, the default "checkmark" structural mark is missing from many - consonants, according to Unicode, but is a separate glyph. I put - the checkmark on. - This, and scaled up by 150% and cleaned up intersecting glyphs and - many unnecessary points. - -2008-05-08 Steve White - * FreeSerif.sfd: - - Filled out Telugu consonants. - Vowels still need to be done - -2008-05-07 Steve White - * FreeSerif.sfd: - - Operated on Latin glyphs with stacked accents to make them fit under - 900EM. - Scaled Telugu bu 150%. - -2008-05-06 Steve White - * FreeMono.sfd, FreeMonoBold.sfd, FreeSansBold.sfd, FreeSerif.sfd: - - Corrected further fontforge "find problems" - Added some math characters to FreeSerif - -2008-05-05 Steve White - * FreeSansBold.sfd: - - Made to validate, and fixed bad TT transformations - -2008-05-04 Steve White - * FreeMono.sfd, FreeSerif.sfd: - - Mainly TeX additions trying to satisfy Markus Kuhn's TeX-as-Unicode page - - * FreeMono.sfd: - - Adjusted heights of extensible brackets - - Fixed problems with extensible brackets, thanks to Markus Kuhn's page - http://www.cl.cam.ac.uk/~mgk25/ucs/examples/UTF-8-demo.txt - - * ranges.py: - - fiddled with ranges, doc - - made some ranges more correct? - - fixed some bugs in ranges - better error reporting - - Got rid of Unicode 1.1 references - - made to use OpenType table - - * FreeMono.sfd, FreeSans.sfd, FreeSerif.sfd: - - made to validate - -2008-05-03 Steve White - * FreeMono.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Removed digits from Private Use Area. - See bug 23050. - - * FreeMono.sfd, FreeSans.sfd: - - Completed General Punctuation - - * FreeSans.sfd: - - Completed IPA Extensions - - * FreeMono.sfd, FreeSans.sfd, FreeSerif.sfd: - - More work on Superscripts and Subscripts, Spacing Modifiers. - Sans is now complete in both. - Added Pfennig to Sans and Mono. - - * ranges.py: - - Restructure text output - Rearrangement and cosmetic ...except I had broken it. now fixed - Seems to be in a useful form at this point. - More docs, date - - * FreeSerif.sfd: - - Added a hand-drawn old German Pfennig to Currency Symbols - - * FreeMono.sfd, FreeSans.sfd, FreeSerif.sfd, FreeSerifItalic.sfd: - - Further additions to General Punctuation, Super and Sub Scripts, - Spacing Modifiers, etc. - -2008-05-02 Steve White - * FreeSans.sfd: - - additions to Spacing Modifiers, IPA - - * FreeSerifItalic.sfd: - - Shortening stacked accents to maintain readability when clipped - -2008-05-01 Steve White - * FreeSans.sfd: - - Additions to Spacing Modifiers and changes to Combining Diacritics - - * FreeSerif.sfd: - - Made sure all the half rings in Combining Diacriticals and Spacing - Modifiers were really half rings (J. Poon had complained about this) - - Filled out General Punctuation - Some work on Spacing Modifiers - - Filled out Mathematical Operators - still needs lots of work - Made to validate - - Filled out Latin Extended B - Added some letters with curls to Latin Extended B - More fiddling with Latin Extended B accents - -2008-04-30 Steve White - * FreeSerif.sfd: - - Added Hanunóo script, with characters based on those in - font MPH2BDamase, on request from the maintainer of that font, - http://packages.debian.org/sid/ttf-mph-2b-damase - - Glyphs are simple vector strokes. Could be a little more uniform. - - Added Buginese script "Lontara", with characters based on those in - font MPH2BDamase, on request from the maintainer of that font, - http://packages.debian.org/sid/ttf-mph-2b-damase - - Note the glyphs are pretty rough, clearly a digitization of handwriting. - I just cleaned them up, and corrected discrepancies with Unicode, - and compared with some pictorial samples of the script I could find. - -2008-04-29 Steve White - * ranges.py: - - Improved look a lot--still unhappy with some ranges - OS/2 seems sometimes bang-on, sometimes unrelated to anything (including - fontforge's OS/2 listing) - - * FreeSerif.sfd: - - Much fiddling with Tamil range. - First scaled to 78% (avoiding the references) - This gets it in the ballpark height-wise. [A bit taller than the Latin - letters, but the stroke is narrower, but then the glyphs are busier.] - Then had to re-align combined references, the trickiest being the - halants. - Checked with other fonts with Tamil text. - -2008-04-28 Steve White - * FreeSans.sfd, FreeSerif.sfd: - - Cleanup of control points in Arabic and Thaana - - * FreeSerif.sfd: - - Cleanup of missing extrema in Arabic and Thaana - - Many changes to Thai, trying to make the script fit between some lines, - so accents won't get clipped, etc. - Also, stroke weight was heavier than that of Latin. - - Scaled whole thing by 93%. - Shrank the tallest letters 0E42-4 to get them under 900EM. - Shaved off top of maiek. - Fiddled with positioning of all accents. - Made positioning tables for accents. - Note: unclear these are working correctly - - Fixed a bug having to do with character replacements for characters - named 'ng' and 'nj'; these names had been taken on by other characters. - - Made to validate - - Unicode positions of two Cyrillic Extended characters were switched. - Fiddled with a couple of Cyrillic combining diacritics - -2008-04-27 Steve White - * FreeSans.sfd: - - bugfix: a left harpoon mysteriously appeared to the left of letter p! - -2008-04-26 Steve White - * FreeMono.sfd: - - Made to validate - - * FreeSans.sfd: - - Made to validate - - Toward J. Poons report - Made 032B more like proper double-arches (and distinct fro 033C seagull) - Made 032b more like a seagull - - * FreeSans.sfd, FreeSansBold.sfd: - - Sans: fiddling with widths and terminators of math symbols, - toward J. Poon's report - R & B: removed u+2741 because it didn't match the Unicode description - - * FreeMono.sfd: - - Extensible parenthesis symbols weight/terminators - Toward bug # 23064: https://savannah.gnu.org/bugs/index.php?23064 - Rounded a bunch of terminators - -2008-04-22 Steve White - * FreeSerif.sfd: - - Small alignment problem in Greek Extended - - One more tweek to spacing in Cyrillic Extended - - Corrected spacing in Cyrillic Supplement - - Added Cyrillic Supplement letters for - Enets, Khanty, Chukchi, Itelmen, Mordvin, Kurdish, Aleut - - Added Cyrillic letters for Nivkh (completing Cyrillic range) - More tightening of accents in Latin Extended. - - * FreeSans.sfd: - - Fiddled with math--consequences of changing the "similar" operator - - More tightening of accents - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Adjustments to h and k with caron and cedilla in Latin A and B - - * FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd: - - FreeSerifBold: deleted 3 dotted Hebrew letters in Private/Corporate use - (E801-3). They weren't ligatures or in any other lookup, and they - weren't present in FreeSerif. - - * FreeSansBold: - Unlinked and deleted F6C3, which called itself commaaccent. - Made some new spacing and non-spacing accents to make up for it. - - * FreeSansBoldOblique: - Made references of many Latin Extended. - Also corrected several wrong ones. - - * Freeserif: - Re-named commaaccent - -2008-04-21 Steve White - * FreeMono.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSerif.sfd, FreeSerifBold.sfd: - - Deleted Hiragana and Katakana ranges, as discussed on bugs list. - Cleaned up some encoding issues, unnamed glyphs - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Roman: added 'sine' -- not beautiful, but I liked drawing it - All: Made special lookup for Dutch ligatures 'IJ' and 'ij' - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Roman: ffi etc Latin ligatures from 'liga' to 'dlig' (these weren't - really ligatures anyway, and only looked very bad when used. - Retain for condensed type. - Others: deleted Latin 'liga' table altogether - BoldOblique : added j to ij ligature - - Toward J. Poon's Report: - Except for issues of terminators not always vertical or horizontal, - and a few things that were too hard or I was unsure of. - -2008-04-20 Steve White - * FreeSerif.sfd: - - Futzing with accents in Latin Extended Additional and Latin Extended-B - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Added primemod character, referenced by Greek number sign - - * FreeMono.sfd, FreeMonoOblique.sfd: - - Following J. Poon's report, disconnected NJ (01CA) - -2008-04-19 Steve White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - First pass throught J. Poon's bug list. - See bug reports for details. - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Made underscore slanted in Oblique faces, made all to be width of - space character. - Towards J. Poon's report. - Disturbed that xterm and some other apps put small space between - characters when none was called for. - - * FreeMono.sfd, FreeMonoBold.sfd, FreeSans.sfd, FreeSansOblique.sfd: - - Corrections on Currency Symbols - - * FreeMono.sfd, FreeSans.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - More corrections, additions to Currency Symbols - - * FreeSans.sfd, FreeSerif.sfd: - - Filled out and corrected Currency Symbols - -2008-04-18 Steve White - * FreeSans.sfd, FreeSerif.sfd: - - Adjustments to Combining Marks for Symbols - Additions to range in Sans, and re-structured its marks table so that - "middle" can apply to any range - - * FreeSerif.sfd, FreeSerifItalic.sfd: - - Made reference between combining koronis and lenis of Greek Extended. - In Serif, re-worked combining marks lookup tables, added anchors in - Latin, moved so without marks they work in kedit (but now I'm doubting - kedit does a reasonable thing...what is a better application for - testing this?) - -2008-04-16 Steve White - * FreeSerifItalic.sfd: - - Adjusting of spacing and accents in Greek - - * FreeMono.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansOblique.sfd, FreeSerif.sfd: - - Much futzing with Greek letter spacing and accents. - Added lenis to FreeMono. - - * FreeMono.sfd, FreeSerif.sfd: - - Adjusted spacing of dots of Greek dieresistonons in Serif - Whipped up something for Greek kappascript in Mono (could use revision) - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Raised dots on double-dotted Cyrillic i, to match that of i and j. - -2008-04-14 Steve White - * FreeMono.sfd: - - Corrected 27e6-7 "white bracket" - Note it is probably a FontForge bug these symbols aren't showing up. - FontForge thinks they are in Supplemental Arrows, but they should be - in Supplemental Math-A - - Named some Greek characters - - * FreeSans.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd: - - Spacing of some Cyrillic characters - -2008-04-13 Steve White - * FreeSerif.sfd: - - Some fiddling with accents - 'yogh' was too wide - - * FreeSansBold.sfd, FreeSansOblique.sfd: - - Character spacing was chaos--tried to improve. BoldOblique also needs - it. - - * FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd: - - Completed the fix of bug #12798, Greek glyphs with accents to side - Much mucking with accents here, and fixed a few things that were just - wrong. - -2008-04-12 Steve White - * FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Made Mono curly quotes "bent" - - * FreeMono.sfd: - - More fiddling with Greek accents - Made quotes "bent" - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Adjustments on Greek diaresistonos etc. - Adjustments in Serif on combining marks for symbols - - * FreeSerif.sfd: - - More additions to Combining marks for Symbols - - Additions to Combining marks for Symbols -- now mostly full. - Lots of adjustments to middle anchor point in Latin to make big circle - (nearly) encircle preceding latter - -2008-04-11 Steve White - * FreeMono.sfd: - - Bugfix: - Had indroduce a glyph of width other than 600, making kterminal not - recognize it as a monospace font. - -2008-04-10 Steve White - * FreeSans.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - More messing with accents. - Further to bug #12798, Greek glyphs with accents to side - Much messing with glyphs in Greek Extended range - -2008-04-09 Steve White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSerif.sfd: - - Revisited Latin-1 and Latin-A accents. - Glyph B7 was called "periodcentered", but Unicode callse it Mid Dot, - and the description doesn't refer to the period. I made it like the - dot accent. throughout, and referred L-dot to it. - - Also double-checked "commaaccent" characters (some in Unicode called - cedilla, but the Unicode example shows a comma...mystery) - - Also the funny IPA upside-down f often had two bars, incorrectly. - - To do: go through rest of Serif, and Sans - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Completed re-structuring of stacked Latin accents in Mono. - Also: lots of associated adjustments of Greek Extended accents. - (Trying to at least center extremely wide characters on their box) - Repaired some victems of "find overlaps" sweeps - Worked on glyphs with apostrope/comma parts - Corrected a few wrong glyphs. - - Trying out a "bent quotes" solution to making primes distinct from - quotes. - -2008-04-08 Steve White - * FreeMonoOblique.sfd: - - Toward reducing overall height - Did similar process as for Mono, fixing a few errors along the way. - Also the Greek Extended range was very messed up vertical and - horizontally. - Horizonal spacing of the heavily accented Greek is a real problem in - Mono... - To do: - revisit "commaaccent" characters in all faces: do some have - edillas? - some Hebrew glyphs are a little low - Georgian generally is way out of bounds - -2008-04-07 Steve White - * INSTALL: - - Various updates and corrections, tweeked formatting - - * FreeMonoBold.sfd: - - Tweeking of accents - -2008-04-06 Steve White - * FreeMono.sfd, FreeMonoBold.sfd: - - Re-worked accents in FreeMonoBold.sfd to make Latin ranges lie between - 800 and -200 EM, as with FreeMono. - - * FreeMono.sfd: - - Latin Extended ranges: Implemented new policy of shortening the letters - of the characters with the highest-stacked accents. - - At this point all the Latin glyphs lie betweeen 800 and -200 EM. - - Also checked for readability of all the Latin extended letters in xterm. - (Issue: it chops letters outside their bounding boxes; many accents had - been a bit outside. Made sure that if they were chopped, they were at - least still recognizable.) - -2008-04-05 Steve White - * FreeMono.sfd: - - Following exchange about Mono on freefont-bugs with Joe Wells, who - > doesn't like the curly quote marks - > wants combining diacritics to work - > wants tight line spacing - - Trying to reduce font height: - > exclamdown was below -200 - > Throughout Extended Greek, ypogegrammeni were too low. Shortened - glyph, and raised all references. - > Lots of messing with Latin Extended ranges to make glyphs mostly - fit into 800 height. Mostly succeeded. A couple will get chopped. - > Messed with "commaaccent" glyphs, which were very low - > Cyrillic 04B1 had a tail that was incorrectly low - > Much mucking with Georgian range. Moved up by 95 (read that Georgian - is written as though centered between two horizontal lines, rather than - as sitting on a baseline) There are still a few very high glyphs. - - FontForge U+0122 called Gcommaaccent, glyph looks like that, but - Unicode says it's Gcedilla. Made the ones called cedilla by Unicode - to be cedillas - - Note bug in Unicode: standard for 0122, 0123, 0136, 0137, 013B, 013C, - 0145, 0146, 0156, 0157 all talk about cedilla, say to make it with - cedilla, but example shows comma. - - By the way: - > Got rid of commaaccent and dotlessj in Corporate Use - > Replaced shadedark, with little squares now not overlapping. - > Corrected IPA symbol 'ts' 02A6, added 02a8, 02a9, 02aa, 02ab, 02ac, - 02ad, 02ae, 02af - - (so many changes...the CVS server was down...) - - * FreeSerif.sfd: - - Re-named arabic and hebrew characters - Big adjustment to comma-accents. Mostly effects Greek Extended. - Made such accents to be like comma, rather than like Russian apostrophe - (and de-referenced that symbol) - -2008-04-04 Steve White - * FreeMono.sfd, FreeSerif.sfd: - - Raised dot on superscript i (2071) -- more distinct at small sizes - - * FreeMono.sfd: - - added two IPA symbols - -2008-04-02 Steve White - * FreeSerif.sfd: - - fixed a few more control points too close - - Fixed names of languages in ligature table for latn "w/i". - This fixes a crash when FontForge opened the ttf table - - Motivated by bug crashing FontForge when opening ttf file, - started cleanup of useless control points. Not finished. - Got partway through Sinhala - -2008-03-31 Steve White - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Fixed various "Find Problems", including glyphs with mixed-up names, - and bad TT matrices. (lots more bad TT matrices remain) - - * FreeSerif.sfd: - - Re-named a bunch of Cyrillic letters - - * FreeSerif.sfd: - - Put above mark on Cyrillic i and double-dot i for Slavonic number forms - -2008-03-30 Steve White - * FreeSans.sfd: - - Tightened spacing on glyphs of last commit - - * FreeSans.sfd, FreeSerif.sfd: - - Concerning bug #16120, Include upper case Wynn and upper case Yogh - Adapted Herman Miller's Thyromanes letters 01F7 021C 021D for Serif - Drew my own versions for Sans. - - * FreeSerif.sfd: - - Added 04F6,7 - - * FreeSerif.sfd, FreeSerifItalic.sfd: - - Made more Cyrillic diacritics really combine. - Made a mark lookup just for Cyrillic diacritics, - Marked most of the unadorned Cyrillic alphabet. - - Still not clear on correct shapes for some of the marks. - - * FreeMono.sfd, FreeMonoOblique.sfd: - - Tweeks to accents - -2008-03-29 Steve White - * FreeSans.sfd, FreeSerifItalic.sfd: - - Small adjustments in Cyrillic - - * FreeSerif.sfd: - - Corrected small palochka - Made Cyrillic combining hundred-thousands and millions really combine - Named some combining diacriticals - - * FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd: - - Mostly adjusted horizontal spacing of mono oblique faces - - * FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - More cleanup of Cyrillic ranges - - Completely re-did horizontal spacing of SerifItalic and SerifBoldItalic. - See bug #17912, poor kerning in Cyrillic oblique... - https://savannah.gnu.org/bugs/index.php?17912 - It looked like chaos to me. - Only so much can be done: the font is flawed. - But I think the changes make text readable in these faces. - - There were dozens of incorrect glyphs in higher-numbered characters. - I deleted all those I found. No glyph is better than a wrong glyph. - - Futzt with accents, shooting for consistency and readability. - - A maintenance thing: making correct references (acyrillic vs a, - although they may be the same glyph) I made a lot of headway, but - it isn't finished. - - Likewise, a large fraction of these are compound characters, which can - be made with references, resulting in easier maintenance, reduced - likelihood of errors, and smaller files. I replaced many. - - * FreeSerif.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Cyrillic italic - Added italic, bolditalic - 0493, 04a7, 04AD - because their form clearly varies in italic. But was just guessing... - - * FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Cyrillic italic - - Added italic, bolditalic - 0493, 04AD - because their form clearly varies in italic. - But was just guessing as to exact form. - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Overhaul of Cyrillic - - Italic, BoldItalic - added small yat for bug #22588 (note Times New Roman doesn't use - alternate form in Italic) - - All forms of Serif have big problems in Cyrillic. - - The ugliest is in roman. The letters, even of the Russian alphabet, are - of inconsistent height (awfully, small 0438 (ii) 0446 (tse)) - and they vary from the height of Latin - and they vary from the height of italic and bold. - They are a mish-mash of letters from several fonts, of similar (but not - quite identical) weight, and similar, (but not quite identical) size. - - I think the best solution would be to identify the face that best - matches Latin, and fill the range with that. I think this is possible - because the rarer letters seem to be better: the common letters are the - ones that are wrong. - - For now, I just increased the sized of 0438 and 0446, and 048a, 048b, - also 0459 (lje) 045A (nje) 0464 (dje) - - Other issues - -2008-03-27 Steve White - * FreeSerifBoldItalic.sfd: - - Moving all Greek capitals with accent so they don't cover previous - letter. Remedies bug #12798 - - * FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd: - - Various tweeks to accented Latin letters. - Connected O-ogonek correctly - - * FreeSerifItalic.sfd: - - Accents of numerous accented Latin letters got shifted in a previous - commit. This fixes it. - - * FreeSerif.sfd: - - Adjusted combining tack left and right (0318-0319) to be above -300 EM. - - * FreeSans.sfd, FreeSerif.sfd: - - Added some "middle" marks for positioning of diacritics - - * FreeSans.sfd: - - Copied 4 enclosing combining diacriticals from Serif 20DD - 20E0 - - * FreeSerif.sfd: - - Adjusted and added some enclosing diacritics 20DD - 20E0 - In response to Debian bug #472566 - ttf-freefont: U+20DD COMBINING ENCOLSING CIRCLE doesn't combine - http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=472566 - -2008-03-26 Steve White - * FreeSerif.sfd: - - Lowered a few over-high Latin accents - - * FreeSansBold: - - Devangari--only digits 1 and 2, and nothing else. Deleted - - * FreeMonoBold, FreeMonoOblique, - FreeSerifBold, FreeSeriftalic, FreeSerifBoldItalic, - FreeSansOblique, FreeSansBold, FreeSansBoldOblique: - - Got rid of dotlessj, comma in Corporate Use - Single Substitution lookup, ccmp table - Made proper dotlessj, re-linked j-circumflex - - Note: - FreeSansBold has a commaaccent in Corporate Use, used by several other - characers. Haven't done anything about this. - -2008-03-25 Steve White - * FreeSerif.sfd: - - Added/corrected glyphs for yeh hamza in Arabic, - Added init and medi lookups for yeh hamza. - -2008-03-24 Steve White - * FreeSerif.sfd: - - Added isolated and final forms for - 0629 teh marbuta - 0624 waw hamza - 0626 yeh hamza - 0649 alef maksura - A previous commit had added lookups that referred to these, - - More fiddling with super/subscripts - - * Makefile, Makefile, GenerateTrueType: - - Scripts and Make targets to generate OpenType fonts and zip file - - * maintenance.txt: - - Added gnupload and info about tagging - -2008-03-23 Steve White - * FreeSerif.sfd: - - Last of Find Problems -> ATT - 'mark' Latin lookup: afii10026 is in 'cyrl', also afii10074 - Upper and lower Cyrillic i. Just removed mark from both letters. - - 'half' Bengali lookup Khanda_Ta is in 'bng2'. Added bng2 to lookup - Added TtTable etc - - Clean-up of Points too Close through to end of font. - This episode completes the paths/points clean-up of Serif. - But note: many ranges, esp. Ethiopic, Japanese, and Indic, have way - too many points, resulting in lumpiness. - - At this point, FontForge can convert splines to quadratic, auto-hint, - and auto-instrument without segfault. - - * Makefile, sfd/Makefile, tools/GenerateTrueType: - - Alterations to build process: added a Makefile, and made to work - on my system. Now auto-hints before generating TrueType. - -2008-03-22 Steve White - * sfd/FreeSans.sfd: - Lots of additions of math characters. Should complete for - LaTeX 2e, except for extensible brackets. - -2008-03-21 Steve White - * *.sfd: - - Regularized stacking of accents in Latin Extended Additional - Changed name of 00B5 from 'mu' to 'micro', - 2206 from 'Delta' to 'Delta.math', - 0308 from 'diaerisis' to 'diaerisiscomb' - - * FreeMono.sfd: - - additions to IPA - - * FreeMonoBoldOblique.sfd: - - Moved dotlessj from Corporate Use, - Deleted commaaccent there - Fixed mis-named glyphs tcommaaccent, Tcommaaccent - Changed name of 030A from 'dieresis' to 'ringcomb' - - * FreeSans.sfd: - - Added some arrows, and a couple of blackboard bold characters - - Several characters in U+F600 Corporate Use range - dotlessj, onefitted, commaaccent - - dotlessj referred to by: jcircumflex, uni01F0: - renamed it to uFFFF, re-linked others by hand - - commaaccent - http://diacritics.typo.cz/index.php?id=9 - should be u+0326 but wasn't linked to anything - - * FreeSansBold.sfd: - - U+0617 etc: read glyphs "4GWglm". It should be Arabic. Deleted - - * FreeSansBold.sfd, FreeSansOblique.sfd, FreeSansBoldOblique.sfd: - - Removed bogus glyphs for 200C 200D, ZWJ and ZWNJ - - * FreeSerif.sfd: - - Split lookup for ligatures in latin into two classes; - ff, ffl, fl which are appropriate for all languages, - and fi, ffi, which are not appropriate in Turkish (due to distinction - between short and long i) - Needs to be done for other faces. - - Filled set of extensible brackets in Miscellaneous Technical - - Think IPA is now complete. - -2008-03-18 Steve White - * FreeSans.sfd: - - clean-up of all path issues and points too close - -2008-03-18 Steve White - * FreeSans.sfd: - - Something was causing crashing effects in Windows. Cleanup of - problems eventually made it go away. Now works well. - - Cleaned up many "points too close" - - Cleaned up all ATT problems, of which there were many and various. - - # Incorrectly labelled zero-width joiner used in a ligature - - # Incorrect substitution of dotlessi and dotlessj with i and j was - somehow connected with FontForge crash. Attemts to remove the - substitution would damage a 'ccmp' table; subsequent changes would - result in FontForge crashing on save, and truncating the sfd file. - Surgically removed with vi. - - # A couple of Indic lookups had incorrect script DFLT; one had 'latn'. - - # Don't understand why there are scripts named - dev2 bng2 grj2 gur2 when there are already deva beng gurj guru - But anyway, lots of 'vatu' 'pres' 'haln' and 'liga' lookups contained - characters in the '2' scripts but were lablled only for the 'non-2' - ones. Added the '2' scripts to all these lookups. Suspect a mistake. - - Note: several of these problems are repeated in other Sans faces. - -2008-03-16 Steve White - * FreeMono.sfd: - - Cleanup of many path problems "points too close" - - Strove to make accents Latin Extended range legible at small sizes - - Named some unnamed characters; removed a duplicate - - At this point, all fonts are passing FontForge Validate. - -2008-03-15 Steve White - * FreeSerif.sfd: - - CJK punctuation: made some of the very high glyphs smaller (under 900EM) - The brackets in Sans were very ugly, and not even Sans-serif. - Serif: added extensible square brackets, diddled with integral - corrected direction of some added glyphs - - Several bugs having to do with missing glyphs in Tamil range. - Also a buggy ligature in Devangari. - - Shortened names of many lookup tables - - Futzt with some combining diacriticals - - Added extensible square brackets. - - * FreeSans.sfd: - - Changed names of a bunch of glyphs with invalid - TrueType names, in range 0x1025f+ (not real Unicode). - Took pains to retain information contained in the names. - Wonder if these glyphs have ever been of any use. - - CJK Punctuation: brackets were hand-drawn and very ugly. Improved. - - * *.sfd: - - Set OS/2 Metrics back to absolute 900/300. Offsets are not - interpreted uniformly. - - Cleanup of many path problems up to extrema and self-intersecting - - Ordered PS Blue values. - -2008-03-14 Steve White - * FreeSerif.sfd: - - Got rid of mixed references and contours - Cleanup of many path problems "points too close" - - Started clean-up to satisfy FontForge Validate - - Changed names of three glyphs in the - Tamil ligatures range...all clearly bugs. - - * FreeSans.sfd: - - Added slanted-hyphen - - * *.sfd: - - Unified OS/2 Metrics - Added Grid Fit - -2008-03-13 Steve White - * FreeSans.sfd: - - Rearranged PS BluesValues so they were in increasing order, - Made all 20 in width. - -2008-03-12 Steve White - * FreeSans.sfd, FreeMono.sfd: - - Added TrueType hinting tables. - Fixed glyphs that didn't convert well to quadratics - Got rid of mixed contours and refs - - * FreeSerifBold.sfd: - - Cleanup of path problems - -2008-03-11 Steve White - * FreeMonoOblique.sfd: - - Cleanup of path problems - -2008-03-09 Steve White - * FreeSerif.sfd: - - Corrected L-dot - Further cleanup of path/ref problems - - Found several ligatures that referred to a missing glyph "ZWJ". - Took this to mean the "zero width joiner" u+200D - - * *.sfd: - - Changed OS/2 metrics to be absolute 900/300 - - * FreeSerifItalic.sfd: - - Added Greek lunate epsilon - - * FreeMono.sfd: - - Many additions in math range - Reduced size of binary union, intersection, vee, wedge - Corrected empty set - Corrected logical 'assert' relations, etc. 22a2-22af - Efforts to make Math glyphs legible at small point sizes - - * FreeSans.sfd: - - Added Greek lunate epsilon and rho symbol - Unstacked more stacked diacriticals - - Further cleanup of path/reference problems - -2008-03-08 Steve White - * FreeSans.sfd, FreeSerif.sfd: - - Added some "n-ary" Math operators - - * FreeSerif.sfd: - - Further clean-up of path problems...up to Ethiopic - > Started adding and correcting Math operators for LaTeX 2e - > Corrected n-ary union, intersection, and spikes to be larger - than the binary operators - > Made (many of) the operators based on + - = to use those - symbols directly (by reference or copying). - > Added lunate epsilon - > Corrected empty set - > Tightened up spacing of some other technical characters - > Worked on some more math operators involving = - > triangle - > Several arrows - > Supplemental Arrows-A - - * FreeSans.sfd: - - Clean-up of font paths - Open self-intersecting outermost-clockwise missing-extrema - also flipped references (unlinked) - - Added Greek lunate epsilon and rho symbol - -2008-03-06 Steve White - * sfd/FreeSerif.sfd: Shortened and thickened the combining hook mark, - U+0309, to make more like Unicode samples. - Also see (bug #22499) un-stacked incorrectly stacked accents - -2008-03-05 Steve White - * sfd/FreeSerif.sfd: vertical lines: combining diacritical marks - corrected 0300 030D 0329 0348 (were rendered as straight apostrophes) - Spacing Modifier letters added 02C8 02CC - 02B9 02Ba prime and double-prime - Fixed positioning U+1EC8, 9, I with hook above - -2008-03-03 Steve White - * sfd/FreeSerif.sfd: TT strings updates. - updated Copyright to 2008 - Added Vendor URL as the Savannah freefont site - * sfd/FreeMono.sfd: A standard pangram as the Sample Text for Russian - It reads: In the thickets of the South once there was a citrus - ...--yes, but a fake specimen! - * sfd/*.sfd: Set the OS/2 Sup/Sub settings, which by default looked - like random trash. - -2008-03-02 Steve White - * sfd/FreeSerif.sfd: began cleanup of problems given by FontForge - "Find Problems" feature. (bug #22454) - -2008-03-01 Steve White - * sfd/FreeSerif.sfd: made Arabic work for text display (bug #22329) - Added required contextual replacement tables, - Made a few missing characters, - * sfd/*.sfd: Removde all back layers from glyphs that had them. - -2008-02-27 Steve White - * sfd/FreeSans.sfd: filled in Combining Diacriticals - * sfd/FreeSerif.sfd: shifted whole Arabic range down by 200EM. - -2008-02-26 Steve White - * sfd/FreeSerif.sfd: enabled DPOS table. - -2008-02-24 Steve White - * sfd/*.sfd: Much fiddling with the "combining diacriticals" - range 0300-036F. Made to align with medium-size lowercase - preceding character if not using DPOS table. - -2008-02-23 Steve White - * sfd/FreeSerif.sfd, FreeSans.sfd, FreeMono.sfd: (bug #21784) Filled - in set of HTML 4 Character Entities. - - * sfd/FreeSerif.sfd, FreeSans.sfd, FreeMono.sfd: (bug #18413) - undertie too low -- went on to tidy other similar characters in - Combining Diacriticals range. - -2008-02-21 Steve White - * sfd/*.sfd: Moved capital Greek letters with tonos so tonos doesn't - cover preceding letter (bug #12798) - - * sfd/FreeSerif.sfd, FreeSans.sfd: (bug #13370) made extended - integrals to line up. - -2008-02-20 Steve White - * sfd/*.sfd: started removing glyphs with back layers (printing bug) - * sfd/*.sfd: adjusted vulgar fractions (bug #17756) - * sfd/*.sfd: adjusted numerical superscripts (bug #20278) - -2008-02-18 Steve White - * sfd/FreeSerif.sfd: Offset Hiragana and Katakana ranges (bug #22326) - * sfd/FreeSerif.sfd: U+30FB, KATAKANA MIDDLE DOT to be full width - (bug #18326) - - * sfd/FreeSerif.sfd: Re-promoted - ff ffi ffl fi fl - as standard ligatures in Latin. - -2008-02-17 Steve White - * sfd/*.sfd: committed to FontForge Spline Font Database (SFD) 2 - format. - -2008-02-10 Steve White - * sfd/*.sfd: brought into line with Debian ttf-freefont - Deleted a couple of patches, and applied those applied to Debian. - -2006-09-20 Primoz Peterlin - - * INSTALL: added installation procedure for MacOS X, courtesy - Philipp Kempgen. - -2006-05-04 Primoz Peterlin - - * sfd/FreeMono.sfd: deleted Russian sample text, which did not - conform to UTF-7. - -2006-04-15 Primoz Peterlin - - * sfd/FreeSerif.sfd: corrected U+10D3. - - * sfd/FreeSans.sfd: ligature U+FB06 (LATIN SMALL LIGATURE S T) - changed from mandatory ("liga") to discretionary ("dlig") (bug - #16253). - - * sfd/FreeMono.sfd: deleted incomplete glyph U+FB06 (LATIN SMALL - LIGATURE S T); deleted U+FB00, U+FB01, U+FB02, U+FB05 as - ligatures (bug #16253). - - * sfd/FreeMonoOblique.sfd, sfd/FreeMonoBoldOblique.sfd: added - U+FB00; deleted U+FB01, U+FB02 as ligatures (bug #16253). - - * sfd/FreeMonoBold.sfd: deleted U+FB00, U+FB01, U+FB02 as - ligatures (bug #16253). - - * sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd, - sfd/FreeMonoBoldOblique.sfd, sfd/FreeSans.sfd, - sfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd, - sfd/FreeSansBoldOblique.sfd, sfd/FreeSerif.sfd, - sfd/FreeSerifItalic.sfd, sfd/FreeSerifBold.sfd, - sfd/FreeSerifBoldItalic.sfd: added Georgian letters, donated by - Gia Shervashidze - -2006-02-22 Primoz Peterlin - - * sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd: ligature U+FB4F - changed from mandatory ("liga") to discretionary ("dlig"). This is - respons to Bug#349657: [bug #15792] Freefont Alef and Lamed - combine - -2006-02-21 Primoz Peterlin - - * sfd/FreeSerifBold.sfd, sfd/FreeSans.sfd, - sfd/FreeSansOblique.sfd, sfd/FreeSansBoldOblique.sfd, - sfd/FreeSansBold.sfd: ligature U+FB4F changed from mandatory - ("liga") to discretionary ("dlig"). This is respons to Bug#349657: - [bug #15792] Freefont Alef and Lamed combine - - * sfd/FreeSerif.sfd: corrected bug#275759: [bug #15790] FreeSerif - glyphs for U+2198/U+2199 were reversed. - -2006-02-15 Denis Jacquerye - * sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, - sfd/FreeMonoBoldOblique.sfd, sfd/FreeMonoBold.sfd: removed ij - and IJ ligatures. - -2006-02-10 Primoz Peterlin - - * sfd/FreeSerif.sfd: added small Georgian letters (mkhedruli), - donated by Gia Shervashidze - - * AUTHORS: Added Gia Shervashidze - - * CREDITS: Added Gia Shervashidze - -2006-01-26 Primoz Peterlin - - * notes/maintenance.txt: Added information on the Makefile now - used; username for FTP login is anonymous. - - * sfd/FreeSansBold.sfd: added U+0569, U+0571, U+0579, U+057B, - U+0586. Armenian small letters completed. - - * sfd/FreeSerif.sfd: added U+0297, U+02AD-02AF. IPA Extensions - section is now complete. Copied a dozen of glyphs from Omega IPA - to Phonetic Extension section. - -2006-01-25 Primoz Peterlin - - * sfd/FreeSans.sfd: added U+01A, U+01A3, U+01A6, U+01B2, U+01BA, - U+01BB, U+01BE, U+01BF. - - * sfd/FreeSans.sfd: aligned small Armenian letters to x-height in - response to bug #15480. Armenian in Free Sans needs a major - cleanup. - -2006-01-24 Primoz Peterlin - - * sfd/FreeSerif.sfd: changed U+0452, U+045B. Cleanup: U+0460, - U+0461, U+04Bc, U+04BD, U+0508. - - * sfd/FreeSansOblique.sfd: replaced accented chars in Latin-1 and - Latin Extended-B sections with references, where possible. - - * sfd/FreeSerif.sfd: changed U+0285. - -2006-01-23 Primoz Peterlin - - * sfd/FreeSans.sfd: added U+0195, U+01AA, U+0297, U+03D7, - U+03F0. Several flipped references replaced by outlines. - - * sfd/FreeSansOblique.sfd: Latin Extended-B section more or less - brought in sync with FreeSans. - - * sfd/FreeMonoBoldOblique.sfd: added glyphs from FreeMonoBold in - the Latin Extended-B and IPA Extensions sections. - - * sfd/FreeSerifBold.sfd: Added U+0224, U+0225. Changed U+01B7, - U+01B8, U+04E0, U+0452, U+045B. Replaced accented characters in - the Cyrillic region with references. - -2006-01-21 Primoz Peterlin - - * sfd/FreeSans.sfd: added U+0255, U+0264, U+0277, U+0286, - U+029D. Changed U+0261. Deleted spurious glyphs in the control - code area. - -2006-01-19 Primoz Peterlin - - * sfd/FreeSans.sfd: replaced Hardip Pannu Singh's Gurmukhi with - AnmolUni by Kulbir Singh Thind. - -2006-01-17 Primoz Peterlin - - * sfd/FreeSansBold.sfd: Added U+018D, U+0194, U+01B5, U+01B6, - U+01BE, U+0262, U+02A2. - - * sfd/FreeSansBold.sfd: Changed U+0261 in order to distinguish it - from U+0067. Changed U+0251, U+0252. - - * sfd/FreeSerifBold.sfd: Small changes in the Cyrillic - section. Added U+0183, U+018C. - - * sfd/FreeSans.sfd: Added U+2045, U+2046. - - * sfd/FreeSansBold.sfd: Filled in the Gurkmukhi part with the - AnmolUni-Bold by Kulbir Singh Thind. Also some minor corrections - in the Cyrillic part. - - * CREDITS: Added Kulbir Singh Thind. - - * AUTHORS: Added Kulbir Singh Thind. - -2006-01-14 Primoz Peterlin - - * sfd/FreeSerif.sfd: Thomas Ridgeway's Tamil characters replaced - by the ones released by the Samyak font project. - - * CREDITS: Added Pravin Satpute, Bageshri Salvi, Rahul Bhalerao - and Sandeep Shedmake - - * AUTHORS: Added Pravin Satpute, Bageshri Salvi, Rahul Bhalerao - and Sandeep Shedmake - -2006-01-08 Primoz Peterlin - - * sfd/FreeSansBold.sfd, sfd/FreeMonoBoldOblique.sfd: minor changes. - -2006-01-05 Denis Jacquerye - - * sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd, - sfd/FreeMonoBoldOblique.sfd, sfd/FreeSans.sfd, - sfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd, - sfd/FreeSansBoldOblique.sfd, sfd/FreeSerif.sfd, - sfd/FreeSerifItalic.sfd, sfd/FreeSerifBold.sfd, - sfd/FreeSerifBoldItalic.sfd: added cedi sign U+20B5, Ghanaian - currency - -2005-12-29 Primoz Peterlin - - * sfd/FreeSans.sfd: minor cleanup in the Gujarati part. - -2005-12-22 Primoz Peterlin - - * sfd/FreeSans.sfd: Devanagari and Gujarati parts cleared; once - again merged with Gargi 1.9 and Padmaa 0.6, this time correctly so - that the anchor points survived the merger. - -2005-12-16 Primoz Peterlin - - * sfd/FreeSans.sfd: added U+0577. - -2005-12-15 Primoz Peterlin - - * sfd/FreeSans.sfd: added U+0559, U+055F, U+2024. - - * sfd/FreeSansBold.sfd: added U+056E, U+0573. - -2005-12-14 Primoz Peterlin - - * sfd/FreeSans.sfd: Merged with Gargi 1.9 and Padmaa 0.6, - courtesy Monika Shah and Sonali Sonania from C-DAC, Mumbai. - - * CREDITS: Added Monika Shah and Sonali Sonania. - - * AUTHORS: Added Monika Shah and Sonali Sonania. - -2005-12-13 Primoz Peterlin - - * sfd/FreeSans.sfd - Removed Sinhala glyphs. - - * sfd/FreeSerif.sfd - Added Sinhala glyphs, formerly in FreeSans. - -2005-12-09 Primoz Peterlin - - * sfd/FreeSerif.sfd: added U+20AF, U+211E. Changed U+20AC (EURO - SIGN). - - * tools/freefont-ttf.spec: Added specification file for building - RPM package, courtesy Rok Papez. - - * sfd/FreeSerifBold.sfd: added more glyphs from Txfonts to the - Arrows and Mathematical Symbols ranges. - - * sfd/FreeSerifBoldItalic.sfd: added U+03F5 from Txfonts. - -2005-12-08 Primoz Peterlin - - * sfd/FreeSans.sfd: added U+0567, U+056A, U+056C, U+0582. - - * sfd/FreeSerifBold.sfd: copied Box Drawing range from FreeSans. - - * sfd/FreeSerifBold.sfd: added glyphs from Txfonts to the Arrows - and Mathematical Symbols ranges. - - * sfd/FreeSerif.sfd: added U+2259-225A, U+22BA, U+2308-230B, - U+2322-2323. Cyrillic composite characters replaced with - references. - -2005-12-07 Primoz Peterlin - - * sfd/FreeSerifBold.sfd: added U+025A, U+025D, U+026B, U+029B, - U+02AE, U+02AF, U+02DE. - - * sfd/FreeSerifBold.sfd: updated Hebrew part with Drugulin font - from the Culmus project. - - * sfd/FreeSerif.sfd: added U+207A-207C, U+208A-208C, U+2215-2216. - - * sfd/FreeSans.sfd: added U+2320 TOP HALF INTEGRAL, U+23AE - INTEGRAL EXTENSION, U+2321 BOTTOM HALF INTEGRAL (bug #13370). - -2005-12-07 Primoz Peterlin - - * sfd/FreeSerifBold.sfd: added U+0294-0296, U+02A1-02A2. Started - adding "below" anchors. Performed hinting on characters that were - not hinted "en masse". - -2005-12-06 Primoz Peterlin - - * sfd/FreeSans.sfd: fixed some more metrics problems in the - Extended Greek area; performed hinting on characters that were not - hinted "en masse". - - * Makefile: clean also signature files. - - * sfd/FreeMonoBoldOblique.sfd, sfd/FreeMonoBold.sfd: cosmetic - changes; cleaning background of referenced composed characters. - -2005-12-05 Panayotis Katsaloulis - - * sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd, - sfd/FreeMonoBoldOblique.sfd, sfd/FreeSans.sfd, - sfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd, - sfd/FreeSansBoldOblique.sfd, sfd/FreeSerif.sfd, - sfd/FreeSerifItalic.sfd, sfd/FreeSerifBold.sfd, - sfd/FreeSerifBoldItalic.sfd: Some changes to the greek glyphs, - mostly having to do with "tonos" (accent) - -2005-12-05 Primoz Peterlin - - * sfd/FreeSans.sfd: minor cosmetic changes. - - * sfd/FreeSans.sfd: adjusted widths of characters in the Extended - Greek range; accents are not any more considerably overhanging on - the left side. Added U+1EDA-1EE3, U+1EE8-1EF1. - - * sfd/FreeSans.sfd: continued working on Extended Greek range; - metrics still not finished. - -2005-12-03 Primoz Peterlin - - * sfd/FreeSans.sfd: fixed combined Greek accents (bug - #12800). Width of characters still need to be adjusted as in - FreeSerif. - - * sfd/FreeSerif.sfd: fixed positions of Greek accents (bug #12798). - - * CREDITS: Added Panayotis Katsaloulis. - - * AUTHORS: Added Panayotis Katsaloulis. - - * Makefile: minor changes; now creating also a tarfile with sfds. - -2005-12-01 Primoz Peterlin - - * sfd/FreeSerifItalic.sfd: added U+0183, U+018C, U+01C0, U+01C1, - U+01C3, U+01E0, U+01E1, U+01F8, U+01F9. - - * Makefile: created a Makefile to assist building. - - * README: an update. - - * COPYING: added GNU General Public License, version 2. - - * tools/GenerateTrueType: wrote a FontForge script for conversion - to TrueType. - - * sfd/FreeSerif.sfd: merged with SolaimanLipi Bangla OpenType font - from www.ekushey.org, courtesy Solaiman Karim. - - * sfd/FreeSerifItalic.sfd: merged with SolaimanLipi Bangla - OpenType font from www.ekushey.org, slanted by 15.5 degrees. - - * sfd/FreeSans.sfd: merged with Rupali Bangla OpenType font from - www.ekushey.org - - * sfd/FreeSansOblique.sfd: merged with Rupali Bangla OpenType font from - www.ekushey.org, slanted by 12 degrees. - - * CREDITS: added Solaiman Karim - - * AUTHORS: added Solaiman Karim - -2005-11-30 Primoz Peterlin - - * sfd/FreeSerif.sfd: merged with the Rachana Normal. - - * AUTHORS: added K.H. Hussain and R. Chitrajan - - * CREDITS: added K.H. Hussain and R. Chitrajan - -2005-11-23 Primoz Peterlin - - * sfd/FreeSans.sfd - cleaned some background images. - - * sfd/FreeSans.sfd - added U+01A0-01A1, U+01AF-01B0, U+026E, - U+028F, U+0291, U+02A3-02A5, U+031B. Modified U+0198. - -2005-11-22 Primoz Peterlin - - * sfd/FreeSans.sfd - added U+2504-250B. - - * sfd/FreeSans.sfd - added U+2591-25A1, U+25A3-25A5, U+25AA, U+25AC. - - * sfd/FreeSans.sfd, sfd/FreeSansBold.sfd - added U+0263. - -2005-11-21 Primoz Peterlin - - * sfd/FreeMono.sfd - corrected positions of some Greek diacritics - on page 0x1F. - - * sfd/FreeMonoOblique.sfd - working on bringing it in sync with - FreeMono.sfd. - - * sfd/FreeSerifBoldItalic.sfd - applied the sequence suggested by - Werner Lemberg for reducing redundant points. Added a couple of - glyphs in the IPA Extensions region. - - * sfd/FreeSansBold.sfd - added U+0574, U+0576. Removed overlaps. - -2005-11-20 Primoz Peterlin - - * sfd/FreeSerif.sfd - added U+02AA-02AC, U+02B0-02B2. - -2005-11-19 Primoz Peterlin - - * sfd/FreeSans.sfd - added U+01B7-01B9, U+0196, U+019A, U+01C3, - U+0224-0225, U+025E, U+029A, U+2422. Changed U+0184-0185, U+0192, - U+01B4, U+0282, U+0284. - -2005-11-18 Primoz Peterlin - - * sfd/FreeSerif.sfd - added U+02EE, U+207F. - - * sfd/FreeSans.sfd - started Box Drawing area. - -2005-11-17 Primoz Peterlin - - * sfd/FreeSerifBold.sfd - added glyphs from the Omega project to - Latin Extended-B, IPA Extensions and Greek ranges. - - * sfd/FreeSerifBoldItalic.sfd - added glyphs from the Omega - project to Latin Extended-B, IPA Extensions and Greek ranges. - - * sfd/FreeSerifItalic.sfd - added glyphs from the Omega - project to Latin Extended-B, IPA Extensions and Greek ranges. - - * sfd/FreeSerifItalic.sfd - added U+018B, U+025C, U+0265, U+026F, - U+0279, U+0287, U+028C-028E, U+029E. - - * sfd/FreeSerifBoldItalic.sfd - added U+1EDA-1EE3, U+1EE8-1EF1, - U+2190-219B, U+219E-21A8, U+21B9-21BA, U+21C4-21CA, U+21E4-21E5, - U+2669-266F. MES-1 compliant. - - * sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd, - sfd/FreeMonoBoldOblique.sfd, sfd/FreeSansOblique.sfd, - sfd/FreeSansBold.sfd, sfd/FreeSansBoldOblique.sfd, - sfd/FreeSerifItalic.sfd, sfd/FreeSerifBold.sfd, - sfd/FreeSerifBoldItalic.sfd - added U+FFFD. - - * sfd/FreeSerif.sfd - removed overlaps in Latin Extended-B and IPA - Extensions ranges. - -2005-11-16 Primoz Peterlin - - * sfd/FreeSerifItalic.sfd - applied the sequence suggested by - Werner Lemberg for reducing redundant points. - - * sfd/papers/eurotex2003/freefont.tex, - sfd/papers/eurotex2003/freefont.bib - Revised version, sent back - by Karl Berry on 20050110, that should match the one published in - TUGboat. - - * sfd/FreeSerifItalic.sfd - started added accent anchors. Added a - handful of Greek letters from Omega font collection. - - * sfd/FreeSerif.sfd - added a handful of letters in the Latin - Extended-B and IPA Extension ranges from the Omega font collection. - -2005-11-16 Denis Jacquerye - - * sfd/FreeSerif.sfd - moved U+0263 to U+0264; added U+0263 - - * sfd/FreeSerifItalic.sfd - fixe U+01EE; added U+01B7-U+01B9 - -2005-11-16 Primoz Peterlin - - * sfd/FreeSans.sfd - Made small Greek letters the same height as - Latin and Cyrillic ones and replaced them with references, where - applicable. - - * sfd/FreeSerif.sfd - replaced Greek letters with references, - where applicable. Added U+03D7, U+03F0-03F2. - - * sfd/FreeSerif.sfd - added U+0255, U+025A, U+025D, U+025F, - U+0262-0263, U+026B-026C, U+0274, U+0276-0277, U+028F, U+0291, - U+029D. - - * sfd/FreeMonoOblique.sfd - applied the sequence suggested by - Werner Lemberg for reducing redundant points. Added U+F6BE. - - * sfd/FreeSansOblique.sfd - applied the sequence suggested by - Werner Lemberg for reducing redundant points. - - * sfd/FreeSans.sfd - changed U+01A5. - -2005-11-16 Primoz Peterlin - - * sfd/FreeSans.sfd - applied the sequence suggested by Werner - Lemberg for reducing redundant points. Replaced accented glyphs in - the Latin-1 and Latin Extended-A areas with references. Made - capital Greek letters the same height as Latin and Cyrillic ones - and replaced them with references, where applicable. - -2005-11-15 Denis Jacquerye - - * sfd/FreeSans.sfd, sfd/FreeSansBold.sfd, - sfd/FreeSansBoldOblique.sfd, sfd/FreeSansOblique.sfd - fixed - U+026A, it was a dotlessi and therefore like U+0069 when - accented. - -2005-11-15 Primoz Peterlin - - * sfd/FreeMonoBold.sfd - corrected Greek tonos (slanted instead of - a vertical line). - - * sfd/FreeMonoBoldOblique.sfd - applied the sequence suggested by - Werner Lemberg for reducing redundant points. Replaced accented - glyphs in the Latin-1 and Latin Extended-A areas with references. - -2005-11-14 Primoz Peterlin - - * sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd, - sfd/FreeMonoBoldOblique.sfd, sfd/FreeSans.sfd, - sfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd, - sfd/FreeSansBoldOblique.sfd, sfd/FreeSerif.sfd, - sfd/FreeSerifItalic.sfd, sfd/FreeSerifBold.sfd, - sfd/FreeSerifBoldItalic.sfd - Added 2005 in copyright info. - - * sfd/FreeSansBoldOblique.sfd - applied the sequence suggested by - Werner Lemberg for reducing redundant points. Replaced accented - glyphs in the Latin-1 area with references. - - * sfd/FreeSansBoldOblique.sfd - added U+0180, U+0184, U+0185, - U+0195, U+01A0-01A2, U+01AF-01B0, U+025E, U+026E, U+0292, - U+0294-0296, U+029A, U+02A1, U+2126-2127, U+2190-219B, - U+219E-21A8, U+21C4-21CA, U+2669-266F. MES-1 compliant. - - * sfd/FreeMono.sfd - Replaced accented glyphs in the Greek and - Cyrillic areas with references. - - * sfd/FreeMonoBold.sfd - applied the sequence suggested by Werner - Lemberg for reducing redundant points. Replaced accented glyphs in - the Latin-1 and Latin Extended-A areas with references. - -2005-11-14 Primoz Peterlin - - * sfd/FreeSerif.sfd - applied the sequence suggested by Werner - Lemberg for reducing redundant points. - - * sfd/FreeSansBold.sfd - added U+219A, U+219B, U+2669-266F. - - * sfd/FreeSerifBold.sfd - added U+2669-266F. - -2005-11-12 Primoz Peterlin - - * sfd/FreeSansBold.sfd - added U+0180, U+0181, U+0183, U+0187, - U+0188, U+018A, U+018C, U+018D, U+0193, U+019C, U+01A0, U+01A1, - U+01AC, U+01AF, U+01B0, U+025C, U+0260, U+026E, U+0277, U+0281, - U+0284. - -2005-11-11 Primoz Peterlin - - * sfd/FreeSansBold.sfd - added U+195, U+1A6, U+025E, U+026E, - U+029A, U+0313, U+0314, U+0342, U+0344, U+0345. Started adding - accent anchors. - - * sfd/FreeMono.sfd - applied the sequence for reducing redundant - points, suggested by Werner Lemberg. - - * sfd/FreeMono.sfd - corrected Greek letters (using tonos instead - of a vertical line). Added U+026E, U+F6BE. Accented characters in - Latin 1, Latin Extended A and partly Latin Extended B replaced by - references. - - * sfd/FreeSerifBold.sfd - applied the sequence for reducing - redundant points, suggested by Werner Lemberg. Added U+01A5, - U+02A0, U+2190-219B, U+219E-21A8, U+21B8, U+21B9, U+21C4-21CA, - U+21E4, U+21E5. - -2005-11-10 Primoz Peterlin - - * sfd/FreeSansOblique - changed U+0192, U+01A5; added U+01C0-01C3. - - * sfd/FreeSansBold.sfd - replaced glyphs with references in the - Cyrillic area. Removed U+04A8, U+04A9. Added U+04C5, U+04C6, - U+04C9, U+04CA, U+04CD, U+04CE, U+0535, U+053F, U+0546, U+0565, - U+0584, U+0587, U+0589. - -2005-11-10 Denis Jacquerye - - * sfd/FreeSans.sfd - added U+028A-U+028B - - * sfd/FreeSansOblique - added U+028A-U+028B, U+0276, - U+0292, U+0294-U+0296, U+0298-U+0299 and U+029B; fixed some - other glyphs - -2005-11-10 Primoz Peterlin - - * sfd/FreeSerif.sfd - added U+01A6. Simplified outlines in the - ASCII range. - - * sfd/FreeSansBold.sfd - added U+00A0, U+00AD, U+0531, U+2126, - U+2190-2199, U+219E-21A8, U+21C4-21CA. - - * sfd/FreeSansBold.sfd - applied the sequence for reducing - redundant points, suggested by Werner Lemberg. Added automatically - constructed accented characters in page 0x1E. - -2005-11-09 Primoz Peterlin - - * sfd/FreeSerif.sfd - added U+0183, U+018C. - - * sfd/FreeSans.sfd - added U+1EA2, U+1EA3, U+1EA8, U+1EA9, U+1EB2, - U+1EB3, U+1EBA, U+1EBB, U+1EC2, U+1EC3, U+1EC8, U+1EC9, U+1ECE, - U+1ECF, U+1ED4, U+1ED5, U+1EE6, U+1EE7, U+1EF6, U+1EF7, U+220A, - U+220B, U+220D, U+2272, U+2273, U+2282, U+2283. - - * sfd/FreeSerifItalic.sfd - changed U+03D5. - - * sfd/FreeSerifBoldItalic.sfd - changed U+03C6; added U+2070, - U+2075-2079, U+207F, U+2080, U+2085-2089, U+2155-217F. - - * sfd/FreeSerif.sfd - added U+0184, U+0185, U+018D, U+0195, - U+0197, U+019A, U+019B, U+01A0, U+01A1, U+01AC, U+01B5, U+01B6, - U+01C0, U+01C1, U+01C3, U+01F6, U+0294-0296, U+1E9A, U+1EDA-1EE3, - U+1EE8-1EF1. - -2005-11-07 Primoz Peterlin - - * sfd/FreeSansBold.sfd - added U+0562, U+056D. U+0575. - - * sfd/FreeMono.sfd - added U+0589. - -2005-11-06 Primoz Peterlin - - * sfd/FreeSans.sfd - added U+0278, U+03D5, U+2248. Corrected - U+2071, U+222E, U+2242, U+2243 in response to bug reports - http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=276118 - http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=276120 - - * sfd/FreeMono.sfd - added U+2227, U+2228, U+2262. Corrected - U+2299-229D in response to bug report - http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=276121 - - * sfd/FreeMonoBold.sfd - added U+2010, U+2012 in response to bug - report http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=289032 - Swapped U+03C6 (Greek small letter phi) and U+03D5 (Greek phi - symbol) in order to conform to Unicode standard. Simplified glyph - shapes in ASCII range. Started adding "above" and "below" anchors. - -2005-11-05 Primoz Peterlin - - * sfd/FreeSerif.sfd - accented letters in Latin Extended-A - replaced by references wherever possible. - - * sfd/FreeSerif.sfd - added U+0180, U+0181, U+0187, U+0188, - U+018A, U+0193, U+019C, U+01A4, U+01A5, U+01A7, U+01A8, U+01AF, - U+01B0, U+026E, U+0270, U+0278, U+0280, U+0281, U+028B, U+0299, - U+029C, U+029F. - -2005-11-03 Primoz Peterlin - - * sfd/FreeSansBold.sfd - added U+0180, U+0184, U+0185, U+0192, - U+019B, U+01A0-01A2, U+01AF, U+01B0, U+01EE, U+01EF, U+0292, - U+0294-0296, U+02A1, U+0532, U+054C, U+057C, U+222B. Changed - U+014B, U+01A5, U+01B4, U+03BB. - - * sfd/FreeSans.sfd - added U+04C5, U+04C6, U+04C9, U+04CA, U+04D, - U+04CE. - - * sfd/FreeSansBold.sfd - cleaner Arabic outlines. Added U+01E4, - U+01E5. - -2005-11-02 Primoz Peterlin - - * sfd/FreeSansBold.sfd - started Armenian; added U+0538, U+0542, - U+0544, U+0548, U+054D, U+054F, U+0550, U+0553, U+0555, U+0561, - U+0563, U+0564, U+0566, U+0568 U+056B, U+056F, U+0570, U+0572, - U+0578, U+057A, U+057D-057F, U+0580, U+0581, U+0583, U+0585. - - * sfd/FreeMono.sfd - swapped U+03C6 (Greek small letter phi) and - U+03D5 (Greek phi symbol) in order to conform to Unicode standard. - Added U+04C5, U+04C6, U+04C9, U+04CA, U+04D, U+04CE. - -2005-11-01 Primoz Peterlin - - * sfd/FreeSansBold.sfd - modified U+019C. - - * sfd/FreeSansBoldOblique.sfd - added U+00A0, U+00AD, U+019C, - U+01B7, U+01B8, U+0275, U+0278, U+0298, U+2012, U+2015, - U+2070-207F, U+2080-208E, U+2153-217F, U+2213, U+2215. - -2005-10-31 Primoz Peterlin - - * sfd/FreeSerif.sfd - added U+0199, U+01AB, U+0265, U+0282, - U+0288, U+028C-028E, U+0290, U+029E, U+02A0. - -2005-10-28 Primoz Peterlin - - * sfd/FreeSerifBold.sfd - added U+019E, U+01AB, U+01AD, U+01B1, - U+0256, U+025F, U+0265, U+0269, U+026F, U+0270, U+0279-027F, - U+0282, U+0287, U+0288, U+028C-028E, U+0290. - - * sfd/FreeSerifBold.sfd - added U+2070, U+2075-2079, U+2080, - U+2085-2089, U+2153-215E, U+2113-2115, U+2119. - - * sfd/FreeSerifBold.sfd - added U+0199, U+019B, U+01B8, U+01B9, - U+01BE, U+01C0, U+0262, U+0274, U+0278, U+0280, U+028F, U+0298, - U+0299, U+029C, U+029E, U+029F, U+2012, U+2015, U+2016, U+2129, - U+2217. - -2005-10-27 Primoz Peterlin - - * sfd/FreeSans.sfd - added U+018D, U+0194, U+019B, U+019C, U+01B5, - U+01B6, U+0295, U+0296, U+029B, U+02A2, U+0472, U+0473, U+2114, - U+2119. - - * sfd/FreeSerifItalic.sfd - minor cleanup in the superscript range - (U+2070-2079). - - * sfd/FreeSansBold.sfd - added subscripts and superscripts - (U+2070-208F), completed fractions (U+2152-215F) and Roman - numerals (U+2160-217F). - - * sfd/FreeSerifBold.sfd - added U+018B, U+018E, U+018F, U+0191, - U+019D, U+01A7, U+01A8, U+01AE, U+0253, U+0266, U+0267, U+026A, - U+0271-0273, U+0283, U+0285. - -2005-10-26 Primoz Peterlin - - * sfd/FreeSans.sfd - added "above" anchors to selected Cyrillic - characters. Added U+0294, U+02A1. - - * sfd/FreeMono.sfd - added U+2011, U+2012, U+203B, U+204A, U+2071, - U+2129, U+2232, U+2233. Changed and/or corrected U+2106, U+211E, - U+2126, U+2127, U+2153-215F, U+2202. - - * sfd/FreeMono.sfd - a try to imitate Denis' work on adding - anchors by adding "above" anchor to a couple of basic Latin - characters. - - * sfd/FreeSansBold.sfd - added U+0278, U+0298. Cleaned up outlines - of most Greek letters. - - * sfd/FreeSansBold.sfd - Added U+2010-2012, U+2015, U+2032, - U+203C, U+2047-2049. - - * sfd/FreeSans.sfd - Added U+01C0-01C2, U+0276, U+0292, - U+0298. Changed U+0251, U+0294, U+02A1. - -2005-10-25 Primoz Peterlin - - * sfd/FreeSerifItalic.sfd - added U+00A0, U+00AD, U+2010-2012, - U+2015, U+2126, U+2127, U+2153-215E, U+2160-217F, U+2190-2193, - U+2669-266F. FreeSerifItalic is now MES-1 compliant. - - * sfd/FreeSerif.sfd - added U+0191, U+019D, U+01AE, U+027E, - U+027F, U+0283, U+0285. - - * sfd/FreeSerif.sfd - added U+019E, U+01AD, U+01B8, U+01B9, - U+0253, U+0256, U+0257, U+025C, U+0260, U+0266, U+0267, U+0269, - U+026D, U+0271-0273, U+0279-027D. - - * sfd/FreeSerifBoldItalic.sfd - added U+00A0, U+00AD, U+2010-2012, - U+2015, U+2032-2034, U+203C, U+2047-204A, U+2074, U+2081-2084, - U+2126, U+2153, U+2154, U+215F, U+2215. Corrected positions of - diacritics on U+0200-0217. - - * sfd/FreeSansOblique.sfd, sfd/FreeSans.sfd, sfd/FreeSansBold.sfd, - sfd/FreeSansBoldOblique.sfd, sfd/FreeMonoBoldOblique.sfd, - sfd/FreeMonoBold.sfd, sfd/FreeSerifItalic.sfd, - sfd/FreeSerifBold.sfd sfd/FreeSerifBoldItalic.sfd - brought in - sync with Valek Filipov's urw-fonts-1.0.7pre41. - - * sfd/FreeSansOblique.sfd - added U+00A0, U+2011-2012, U+2015, - U+2070, U+2071, U+2074-2079, U+2080-2089, U+2126, U+2153-215F, - U+2190-2195, U+2215, U+266A. FreeSansOblique is now MES-1 - compliant. - -2005-10-24 Denis Jacquerye - - * sfd/FreeSans.sfd, sfd/FreeSansBold.sfd, - sfd/FreeSansOblique.sfd, sfd/FreeSansBoldOblique.sfd - added - ccmp for i and j to be substituted with dotless i or j when - followed by above diacritic - -2005-10-24 Primoz Peterlin - - * sfd/FreeSans.sfd - added U+2011, U+2012, U+2015. FreeSans is now - MES-1 conformant. - -2005-10-23 Denis Jacquerye - - * sfd/FreeSans.sfd - added above, below, abovemk and belowmk - anchors for diacritics placement to many Basic Latin characters, - some Latin Extented A and B, and some IPA characters; fixed a - couple of precomposed characters to have diacritics at the same - height as similar characters. - -2005-10-21 Primoz Peterlin - - * sfd/FreeSerif.sfd - added U+02B9, U+02BA, U+02CD, U+2017, - U+2036, U+2037, U+203C, U+203E, U+2047-204A. - -2005-10-20 Primoz Peterlin - - * sfd/FreeSerifBold.sfd - added U+0182, U+0189, U+0192, U+019F, - U+01A9, U+01B7, U+01C4-01CC, U+01E0-1E2, U+01F0-01F3, U+F6BE. - Corrected position of diacritics on U+0200-0217. - - * sfd/FreeSerif.sfd - added U+00A0, U+00AD, U+0182, U+0189, - U+018B, U+018E, U+018F, U+0192, U+019F, U+01A9, U+01B1, U+01B7, - U+01DD, U+2010-2013, U+2015. FreeSerif is now MES-1 conformant. - -2005-10-19 Denis Jacquerye - - * sfd/FreeSerif.sfd - added U+0268, U+026A, U+0289, U+0292; and - anchor "above" to more base glyphs. - - * sfd/FreeSerifBold.sfd, sfd/FreeSerifItalic.sfd, - sfd/FreeSerifBoldItalic.sfd - added U+0250-0252, U+0258-0259, - U+0261, U+0268, U+026A, U+0279, U+0289 - - * sfd/FreeSerifBold.sfd - added anchor "above" to marks - U+0300-0314, and to base glyphs (vowels). - -2005-10-18 Denis Jacquerye - - * sfd/FreeSerif.sfd - added anchor "above" to marks U+0300-0314, - and bases vowel of the U+0041-007A range, U+00E6, U+0186, U+0190, - U+0254 and U+025B; fixed Latin-1 Supplement block accented glyphs - to use references. - -2005-10-17 Primoz Peterlin - - * sfd/FreeSansBold.sfd - added U+01B7, U+01B8, U+0275. - -2005-10-16 Denis Jacquerye - * sfd/FreeSans.sfd, sfd/FreeSansOblique.sfd - added some Latin - Extended-B African letters: U+0181, U+018A, U+0197-0198, U+01A4, - U+01AC, U+01B1, U+01B3-01B4; - - * sfd/FreeSansBold.sfd, sfd/FreeSansBoldOblique.sfd - added Latin - Extended-B U+0187, 018E-018F, U+0191, U+0193, U+0197-0199, - U+019D-019F, U+01AB-01AE; correcting width of non-space - Combining Diacrtical Marks; added more glyphs to IPA Extensions - to match non Bold - - * sfd/FreeSansBoldOblique.sfd - added many accented glyphs to - Latin Extended-B - -2005-10-15 Denis Jacquerye - * sfd/FreeSans.sfd, sfd/FreeSansOblique.sfd - added IPA Extensions - U+0262,U+0274,U+0280-0281, U+0299, U+029F, and Spacing Modifier - Letters U+02C9-02CB; fixed U+0287,029E height to baseline; added - stroke to U+0268 - - * sfd/FreeSansOblique.sfd - fixed skew on U+027F - - * sfd/FreeSansBold.sfd, sfd/FreeSansBoldOblique.sfd - added to Latin - Extended-B U+01A7-01A8, IPA Extensions U+0251-0253, U+0256-0257, - U+0261, U+0265-026A, U+026F-0273, U+0289, U+028C-028E - - * sfd/FreeSansBoldOblique.sfd - added to Latin extended-B U+0189, - U+01A8, U+01B1, U+0283, U+02C9 and Spacing Modifiers U+02C9-02CB - -2005-10-14 Primoz Peterlin - - * sfd/FreeSansBold.sfd - Added a couple of composite glyphs, - mostly in the IPA and Latin Extended B ranges. - -2005-10-13 Denis Jacquerye - - * FreeSans.sfd - removed overlap and simplified U+0187, 0191, - 0193, 01A5, 01AE, 0260, 0271, 0272, 0273, 027B; fixed diacritics - placement on U+0200-0217; fixed glyph for U+0283 to correct esh - without stroke; added U+025F and fixed U+025F from it; fixed - height of glyph at U+0285; arranged U+027E,027F to make more - distinguishable from U+0072. - - * FreeSansOblique.sfd - added the corrected or new glyphs from - FreeSans; diacritics on U+200-0217 will need height readjustements. - - * FreeSansBold.sfd, FreeSansBoldOblique.sfd - added U+0186, 0190, - 0250, 0254, 0258, 0259, 025B, 025C - -2005-10-13 Primoz Peterlin - - * sfd/FreeSerif.sfd - Minor changes: U+22A2, U+22A3, U+22A6, U+23AE. - Added U+0250, U+0251, U+0258, U+0259, U+0275. - - * sfd/FreeSerifItalic.sfd - Added glyphs U+222B-U+222F, U+2320, - U+2321. Fixed diacritics on U+0200-U+0217. - -2005-10-12 Denis Jacquerye - - * sfd/FreeSerif.sfd - Corrected diacritics position on - U+01D5-01D9,01DB,01EA-01ED,0200-0217 and U+022A. - - * sfd/FreeSerif.sfd, sfd/FreeSerifBold.sfd, sfd/FreeSerifItalic.sfd, - sfd/FreeSerifBoldItalic.sfd - added U+0186,0190,0254 and U+025B. - -2005-10-11 Primoz Peterlin - - * sfd/FreeSerif.sfd - Fixed bug #13399 (glyphs for U+0360 and - U+0361 were swapped). - - * sfd/FreeSerif.sfd - Attempt to correct bug #13370: INTEGRAL - EXTENSION does not align with TOP/BOTTOM HALF INTEGRAL; added - glyph U+23AE. - -2005-05-16 Primoz Peterlin - - * sfd/FreeMono.sfd - Corrected shapes for Cross of Lorraine and - Cross of Jerusalem. - -2005-04-07 Primoz Peterlin - - * sfd/FreeSansBold.sfd - Added some combining accents, just to - test the a version of FontForge. - -2003-12-05 Primoz Peterlin - - * sfd/FreeMono.sfd - Some composite Latin characters rebuilt, as - they had accents 600 points to the left due to changes on October - 2. Some other minor changes in the mathematics area. - -2003-10-08 Primoz Peterlin - - * sfd/FreeMonoOblique.sfd, sfd/FreeSerifBoldItalic.sfd, - FreeSerifItalic.sfd - applied Josef Segur's corrections from - Oct. 5. - -2003-10-02 Primoz Peterlin - - * sfd/FreeSerif.sfd - Abbas Izad's contributed Arabic/Farsi - characters added. - - * sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd, - sfd/FreeMonoBoldOblique.sfd, sfd/FreeSans.sfd, - sfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd, - sfd/FreeSansBoldOblique.sfd, sfd/FreeSerif.sfd, - sfd/FreeSerifItalic.sfd, sfd/FreeSerifBold.sfd, - sfd/FreeSerifBoldItalic.sfd - Combining characters (U+0300 - - U+036F) moved left, so that they have negative horizontal values - and zero advance width. - -2003-09-15 Primoz Peterlin - - * sfd/FreeSerifBold.sfd, sfd/FreeSerifItalic.sfd - Started working - on super- and subscripts. - -2003-09-12 Primoz Peterlin - - * sfd/FreeSans.sfd, sfd/FreeSerif.sfd - Added some missing - Hiragana and Katakana characters. - - * sfd/FreeSansBold.sfd - Cleared background characters in Latin - Extended-A. Added some automatically constructed characters in - Latin Extended-B. Started with superscripts and subscripts. - - * sfd/FreeSans.sfd - Subscript numerals (U+2080-U+2089) completed. - -2003-05-19 Primoz Peterlin - - * sfd/FreeSerif.sfd - Thai characters po pla and bo baimai - swapped; Thai character fongman corrected; all courtesy Theppitak - Karoonboonyanan. - -2003-05-17 Panayotis Katsaloulis - - * sfd/FreeSerif.sfd, sfd/FreeSerifItalic.sfd, - sfd/FreeSerifBold.sfd, sfd/FreeSerifBoldItalic.sfd - Full support - of all ancient greek glyphs - -2003-05-15 Primoz Peterlin - - * tools/KerningNumerals.pl - A Perl script for moving kerning - information from ASCII numerals (U+0030...) to characters in the - Adobe corporate use area (U+F6xx). - - * sfd/FreeSansBold.sfd, sfd/FreeSansOblique.sfd, - sfd/FreeSansBoldOblique.sfd - Created kerned numerals in the Adobe - corporate use area (U+F6xx) and moved kerning information from - ASCII numerals to the kerned numerals. - -2003-05-14 Primoz Peterlin - - * sfd/FreeSans.sfd - First approximation of super- and subscript - numerals and vulgar fractions. - - * sfd/FreeSerif.sfd - Super- and subscript numerals complete, - vulgar fractions completed and redone as references rather than - outlines. - -2003-05-12 Primoz Peterlin - - * sfd/FreeSerif.sfd - Clean-up of the Cyrillic letters added on - March 27; super- and subscripts, vulgar fractions. - -2003-05-09 Primoz Peterlin - - * sfd/FreeMonoBold.sfd - Added a couple of characters to - the Latin Extended-B area and the IPA extensions area. - -2003-05-08 Primoz Peterlin - - * sfd/FreeSerifBoldItalic.sfd - Added a couple of characters to - the Latin Extended-B area. - - * sfd/FreeSerif.sfd, sfd/FreeSerifItalic.sfd, - sfd/FreeSerifBold.sfd, sfd/FreeSerifBoldItalic.sfd - ASCII - numerals now monospaced; kerned numerals moved to Adobe corporate - use area - (U+F6xx). - -2003-05-07 Primoz Peterlin - - * sfd/FreeSerif.sfd - Roman numerals now more complete. - - * sfd/FreeSansOblique.sfd, sfd/FreeSansBoldOblique.sfd - Accented - characters added in the Latin Extended-B area. - - * sfd/FreeSans.sfd - Greek accents added in the Greek Extended - area, characters added in the Latin Extended-B area, Roman - numerals added. - - * sfd/FreeMonoOblique.sfd - Kerning pairs removed (what were they - doing in a monospaced font, anyway?). - - * sfd/FreeMonoBoldOblique.sfd - Additions in Latin Extended-B and - Basic Greek. - - * sfd/FreeMono.sfd, sfd/FreeMonoBold.sfd, sfd/FreeMonoOblique.sfd, - sfd/FreeMonoBoldOblique.sfd, sfd/FreeSans.sfd, - sfd/FreeSansBold.sfd, sfd/FreeSansOblique.sfd, - sfd/FreeSansBoldOblique.sfd - Major cleanup (fixed widths, open - paths, path directions (clockwise/counter-clockwise), points - rounded to integer values; outlines simplified etc.) - -2003-05-06 Primoz Peterlin - - * tools/OS2UnicodeRange - A simple script to display OS/2 Unicode - range table in TrueType fonts. - - * sfd/FreeSans.sfd, sfd/FreeSansBold.sfd - ASCII numerals now - monospaced; kerned numerals moved to Adobe corporate use area - (U+F6xx). FreeSans is done, FreeSansBold half-way. - - * sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd, - sfd/FreeMonoBoldOblique.sfd, sfd/FreeSans.sfd, - sfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd, - sfd/FreeSansBoldOblique.sfd, sfd/FreeSerif.sfd, - sfd/FreeSerifItalic.sfd, sfd/FreeSerifBold.sfd, - sfd/FreeSerifBoldItalic.sfd - Added 2003 in copyright info. - -2003-03-27 Primoz Peterlin - - * sfd/FreeSerif.sfd - Cyrillic and Cyrillic Supplement blocks - brought to conformance with Unicode 3.2, courtesy Daniel Shurovich - Chirkov. - -2003-03-19 Primoz Peterlin - - * sfd/FreeSans.sfd, sfd/FreeSansOblique.sfd - somewhat wider - germandbls (U+00DF), due to complaints by Walter Schmidt. - -2003-03-18 Primoz Peterlin - - * sfd/FreeSans.sfd - Added Sinhala glyphs from the Tipitaka - project , recoded to Unicode by Noah Levitt. - -2003-02-19 Primoz Peterlin - - * sfd/FreeSans.sfd - Minor changes on mathematical operators. - -2003-02-18 Primoz Peterlin - - * sfd/FreeMono.sfd - minor cleanup of glyph backgrounds; changed - integral signs (U+222B - U+2230) - -2003-02-05 Primoz Peterlin - - * sfd/FreeSans.sfd - added a couple of glyphs in the IPA and - African Latin ranges. - -2003-01-30 Primoz Peterlin - - * sfd/FreeSans.sfd, sfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd, - sfd/FreeSansBoldOblique.sfd, sfd/FreeMonoBold.sfd, - sfd/FreeMonoBoldOblique.sfd - Corrected Maltese Hbar (U+0126) - and/or hbar (U+0127). - -2003-01-28 Primoz Peterlin - - * sfd/FreeSerifItalic.sfd - Corrected Maltese hbar (U+0127). - -2002-12-18 Primoz Peterlin - - * tools/ConvertFont - PfaEdit script for converting SFD files to - TrueType fonts. - - * sfd/FreeSans.sfd - Added Tamil and Kannada glyphs from the - Akruti Indic fonts. - -2002-12-17 Primoz Peterlin - - * sfd/FreeSans.sfd - Added Devanagari and Gujarati glyphs from the - Akruti Indic fonts. - - * www/index.html - Added information on Rogier van Dalen's tools. - - * AUTHORS - Added M.S. Sridhar. - - * CREDITS - Correct spelling of Culmus project. Added M.S. Sridhar. - -2002-12-06 Primoz Peterlin - - * sfd/FreeMono.sfd - Added Braille glyphs, courtesy Vyacheslav - Dikonov. - - * sfd/FreeSans.sfd - Added Unicode Syriac glyphs, courtesy - Vyacheslav Dikonov. - -2002-10-11 Primoz Peterlin - - * www/index.html - Added information on the availability of the - Debian GNU/Linux package. - - * sfd/FreeSerif.sfd, sfd/FreeSans.sfd - added some kern pairs - beyond Latin-1 area. - - * sfd/FreeSerif.sfd, sfd/FreeSerifItalic.sfd, - sfd/FreeSerifBold.sfd, sfd/FreeSerifBoldItalic.sfd - re-introduced - all the emtpy glyph slots (changes from Sep 23 made PfaEdit - crash). - -2002-09-23 Primoz Peterlin - - * sfd/FreeSerif.sfd, sfd/FreeSerifItalic.sfd, - sfd/FreeSerifBold.sfd, sfd/FreeSerifBoldItalic.sfd - imported - kerning information from the URW++ AFM files - -2002-09-11 Primoz Peterlin - - * sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd, - sfd/FreeMonoOblique.sfd - updated Hebrew parts to comply with - Culmus v0.6. - - * sfd/FreeSans.sfd, sfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd, - sfd/FreeSansOblique.sfd - Added Danilo Segan's Serbian Cyrillic - glyphs; updated Hebrew parts to comply with Culmus v0.6. - -2002-09-09 Primoz Peterlin - - * sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd, - sfd/FreeMonoOblique.sfd, sfd/FreeSans.sfd, - sfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd, - sfd/FreeSansOblique.sfd - Updated Cyrillic part to match - Filippov's 1.0.7pre14 - - * sfd/FreeSansOblique.sfd - added Sam Stepanyan's Armenian glyphs - from FreeSans (skewed for 12 degrees). - -2002-09-06 Primoz Peterlin - - * sfd/FreeSans.sfd, sfd/FreeSansOblique.sfd, - sfd/FreeSansBold.sfd, sfd/FreeSansOblique.sfd - Added Maxim - Iorsh's Hebrew characters. - -2002-08-29 Primoz Peterlin - - * sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, - sfd/FreeMonoBold.sfd, sfd/FreeMonoOblique.sfd - Added Maxim - Iorsh's Hebrew characters. - - * AUTHORS, CREDITS - Added Maxim Iorsh as author. - -2002-08-28 Primoz Peterlin - - * www/index.html - Added information of Microsoft's withdrawal of - freely available Unicode TrueType fonts - - * www/resources.html - Added link to Maxim Iorsh's Culmus project. - -2002-07-26 Primoz Peterlin - - * sfd/FreeMono.sfd - Added a couple of characters (Arrows area). - -2002-06-11 Primoz Peterlin - - * sfd/FreeMono.sfd - Applied Michalis Kabrianis's patch concerning - perispomeni in Greek politoniko. - -2002-05-23 Primoz Peterlin - - * sfd/FreeMono.sfd - Applied Michalis Kabrianis's patch concerning - psili in Greek politoniko. Also added two working variants of - chars in the IPA range. - -2002-05-15 Primoz Peterlin - - * sfd/FreeSans.sfd, sfd/FreeSansBold.sfd, sfd/FreeSerif.sfd, - sfd/FreeSerifBold.sfd - Deleted explicit ".notdef" character with - no contours. - -2002-05-14 Primoz Peterlin - - * sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd, - sfd/FreeMonoBoldOblique.sfd, sfd/FreeSans.sfd, - sfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd, - sfd/FreeSansBoldOblique.sfd, sfd/FreeSerif.sfd, - sfd/FreeSerifItalic.sfd, sfd/FreeSerifBold.sfd, - sfd/FreeSerifBoldItalic.sfd - The new version of PfaEdit saves - correctly formed Panose and LineGap lines. - - * sfd/FreeSansBoldOblique.sfd - Filled-in the missing TTFWidth and - TTFWeight values. - -2002-05-09 Primoz Peterlin - - * sfd/FreeSans.sfd - Added diacritics to the Spacing Modifier - Letters and Combining Diacritical Marks areas. Added composed - glyphs to the Latin Extended-B area. - -2002-05-07 Primoz Peterlin - - * sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd, - sfd/FreeMonoBoldOblique.sfd, sfd/FreeSans.sfd, - sfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd, - sfd/FreeSansBoldOblique.sfd, sfd/FreeSerif.sfd, - sfd/FreeSerifItalic.sfd, sfd/FreeSerifBold.sfd, - sfd/FreeSerifBoldItalic.sfd - Updated Panose information with data - provided by Josef W. Segur. Updated TTF headers with English and - Slovenian text. - -2002-04-30 Primoz Peterlin - - * sfd/FreeMonoBold.sfd - Working on Greek small letters. Several - minor changes (lower carons etc.) - -2002-04-29 Primoz Peterlin - - * FreeMonoBoldOblique.sfd - Started adding Greek. - - * sfd/FreeMonoBold.sfd - Added glyphs in the Geometrical Shapes - and Miscellaneous Symbols area. Harmonizing Greek with Latin. Done - with capitals. - - * sfd/FreeMono.sfd - Deleted the explicit .notdef character. Added - one glyph to the Geometrical Shapes area, which is now completed; - added three glyphs to the Miscellaneous Symbols area. Harmonizing - Greek with Latin. Done with the capitals. - -2002-04-26 Primoz Peterlin - - * sfd/FreeSans.sfd - Adjusted accent positions on several glyphs - in the Latin Extended-A area. - -2002-04-25 Primoz Peterlin - - * sfd/FreeMonoBold.sfd - Box Drawing area completed. Added a - couple of glyphs in the Geometrical Shapes area. - - * sfd/FreeMono.sfd - Small corrections in the Box Drawing area. - -2002-04-24 Primoz Peterlin - - * sfd/FreeMono.sfd - Box Drawing area completed. - -2002-04-23 Primoz Peterlin - - * tools/WGL4.lst - corrected. - - * sfd/FreeMono.sfd, sfd/FreeMonoBold.sfd - Working on Box Drawing - area. - -2002-04-22 Primoz Peterlin - - * sfd/FreeMono.sfd, sfd/FreeMonoBold.sfd - Working on Latin - Extended-B and Greek. - -2002-04-19 Primoz Peterlin - - * sfd/FreeSerif.sfd - Somewhat cleaner chess figures. - - * tools/MES-2.txt, tools/MES-2.lst - Corrected list (it is not - 203C-203E, it is 203C and 203E). - - * sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd, - sfd/FreeMonoBoldOblique.sfd, sfd/FreeSans.sfd, - sfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd, - sfd/FreeSansBoldOblique.sfd, sfd/FreeSerif.sfd, - sfd/FreeSerifItalic.sfd, sfd/FreeSerifBold.sfd, - sfd/FreeSerifBoldItalic.sfd - Changed "Family Name" from Free to - FreeSerif, FreeSans and FreeMono, as appropriate. Changed Font - Modifiers from MonoBold etc. to Bold, Italic, Oblique, BoldOblique - and BoldItalic. - -2002-04-18 Primoz Peterlin - - * sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd, - sfd/FreeMonoBoldOblique.sfd - Corrected metrics; now all character - widths are set to 600. - -2002-04-17 Primoz Peterlin - - * sfd/FreeSerif.sfd - Corrected glyphs in the Box Drawing area and - Block Elements area, which should extend through the ascender *and - descender* height. - - * sfd/FreeMonoBold.sfd - Continued working on harmonizing Greek - letters with Latin and Cyrillic. - - * sfd/FreeMonoBold.sfd - Added some box drawing characters. - -2002-04-16 Primoz Peterlin - - * www/design-notes.html - Updated notes on stroke width for - symbols in Free Mono Bold. - - * sfd/FreeMono.sfd - Added a handful of characters in the - Miscellaneous Symbols area. - - * sfd/FreeMonoBoldOblique.sfd - Added subscripts, superscripts and - vulgar fractions. - - * sfd/FreeMonoBold.sfd - Started harmonizing Greek letters with - Latin and Cyrillic. - - * sfd/FreeMonoBold.sfd - Added subscripts, superscripts and vulgar - fractions. - -2002-04-15 Primoz Peterlin - - * www/design-notes.html - Updated notes on super-/subscripts in - Free Mono Bold. Separate subsections for Free Mono regular and - Free Mono Bold. - -2002-04-12 Primoz Peterlin - - * sfd/FreeSerif.sfd - Added Ethiopian glyphs, converted from the - Metafont sources from TGI, Universität Hamburg (authors Berhanu - Beyene, Prof. Dr. Manfred Kudlek, Olaf Kummer, and Jochen - Metzinger) using Szabo's TeXtrace and retouched using - PfaEdit. Ethiopian metafonts are released under GNU GPL, - . - - * sfd/FreeMonoBold.sfd - Added 40 characters, mostly in the Latin - Extended-B and IPA Extensions areas. - -2002-04-11 Primoz Peterlin - - * sfd/FreeMono.sfd - Added a handful of characters in the Latin - Extended-B, IPA Extensions, Currency Symbols and Miscellaneous - Symbols areas. - -2002-04-09 Primoz Peterlin - - * sfd/FreeMono.sfd - Correcting accent positioning in the Extended - Greek area; adding a couple of characters here and there. Still 20 - characters short of MES-2 conformance. - -2002-04-08 Primoz Peterlin - - * sfd/FreeMono.sfd - Added some characters in the Arrows area; - more or less completed Extended Greek area (accents still need to - be fine-tuned). - -2002-04-05 Primoz Peterlin - - * sfd/FreeMono.sfd - Modern non-Russian Cyrilic mostly completed. - - * sfd/FreeMonoOblique.sfd - Synchronized with FreeMono. - - * sfd/FreeSerif.sfd - Added Thomas Ridgeway's Tamil characters - (converted from Metafont and edited somehwat). - -2002-04-04 Primoz Peterlin - - * sfd/FreeMonoOblique.sfd - Armenian letters added. - - * sfd/FreeMonoBold.sfd - Serbian Cyrillic letters dje, tshe, lje - and nje corrected. - - * sfd/FreeMono.sfd - Serbian Cyrillic letters dje and tshe - corrected. Some other non-Russian Cyrillic letters modified and - "welded together". - -2002-04-03 Primoz Peterlin - - * sfd/FreeMono.sfd - Added more or less complete Armenian - area. The glyphs are a tidied-up version based on the Armenian - Courier on the . Now we have - 1673 characters. - -2002-03-28 Primoz Peterlin - - * sfd/FreeMono.sfd - Added some mathematical symbols. - -2002-03-26 Primoz Peterlin - - * sfd/FreeSans.sfd - took H.S. Pannu's Gurmukhi from FreeSerif. It - actually fits to FreeSans much better. It seems I'll have to look - for another Gurmukhi font with modulated stroke for FreeSerif. - - * sfd/FreeSerifItalic.sfd - replaced existing Hebrew glyphs by - those from FreeSerif (slanted for 15.5 degrees). - - * sfd/FreeSerif.sfd - Added dotted Hebrew letters. Changed barred H. - - * sfd/FreeMono.sfd - Completed vulgar fractions; minor changes in - Greek; added some mathematical operators. - - * sfd/FreeMonoBold.sfd - added 12 characters to Latin Extended-B - and IPA Extensions areas (total 984). - -2002-03-25 Primoz Peterlin - - * sfd/FreeMonoBold.sfd - started adding Latin Extended-B and IPA - Extensions. - - * sfd/FreeMono.sfd - Minor cosmetic changes; cleaning up Greek - (removing redundant control points), added some non-European - Cyrillic glyphs as a test. - -2002-03-22 Primoz Peterlin - - * sfd/FreeMono.sfd - Some minor modifications; letters in Latin - Extended-B area "welded" together. - -2002-03-20 Primoz Peterlin - - * www/index.html - finally linked the resources and design notes - pages. - - * www/design-notes.html - added scaling information for super- and - subscript numerals in FreeMono. - -2002-03-19 Primoz Peterlin - - * sfd/FreeMono.sfd - the Latin Extended-B and IPA Extension area - characters moved from FreeMono and skewed for 12 degrees. - -2002-03-18 Primoz Peterlin - - * sfd/FreeMono.sfd - added a dozen or two of new characters, in - particular in the Latin Extended-B and IPA Extension area. - -2002-03-15 Primoz Peterlin - - * sfd/FreeMono.sfd - added a dozen of two of new characters, in - particular in the IPA Extension area. - - * www/design-notes.html - Corrected data for x-height in FreeMono; - information on constructing small caps. - -2002-03-14 Primoz Peterlin - - * sfd/FreeMono.sfd - added three smiley characters to the - Miscallaneous Symbols area. - -2002-03-10 Primoz Peterlin - - * sfd/FreeSerif.sfd - Anshuman Pandey has only converted Gurmukhi - from TrueType to Metafont; the original author of Gurkmukhi font - is Hardip Singh Pannu . - Got the permission from him to include the Gurmukhi glyph set. - -2002-03-08 Primoz Peterlin - - * sfd/FreeSerif.sfd - Added some more glyphs in the Mathematical - Symbols area to a total number of 3374. - -2002-03-06 Primoz Peterlin - - * sfd/FreeSerif.sfd - Added a basic Gurmukhi set. - - * www/design-notes.html - started a page on design notes - - * sfd/FreeMono.sfd - realized that glyphs in the Box Drawing area - and Block Elements area should extend through the ascender *and - descender* height, and corrected it. - - * sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd - added some musical - glyphs, linking "no-break space" to space, "soft hyphen" to - hyphen-minus etc. - -2002-03-05 Primoz Peterlin - - * tools/WGL4.lst - Added Windows Glyph List 4.0 - - * tools/LigatureList.pl - Wrote a Perl script, which lists the - GSUB list (ligature list) of a OpenType font. - - * sfd/FreeSerifBold.sfd, sfd/FreeSerifBoldItalic.sfd, - sfd/FreeSerifItalic.sfd - auxilliary Hebrew glyphs added. They are - too light compared with Latin and will be substituted with better - ones. - -2002-03-04 Primoz Peterlin - - * sfd/FreeSerif.sfd - Added some more glyphs to the Mathematical - Operators area (page 0x22). - - * sfd/FreeSerif.sfd - Incomplete and fragmentary support for - Devanagari, originating from Harsh Kumar's Shusha fonts was - replaced by Frans Velthuis' Devanagari metafont, now maintained by - Anshuman Pandey and available under - GPL. Until I figure out how to provide glyph substitution table in - OpenType, only the Unicode part is there. - -2002-02-28 Primoz Peterlin - - * ChangeLog file created - - * sfd/FreeSerif.sfd - Added some Telugu glyphs to page 0x0C, - courtesy Prasad A. Chodavarapu - - * sfd/FreeSerif.sfd - Added some glyphs to the Miscellaneous - Symbols page (0x26). - -2002-02-26 Primoz Peterlin - - * mailing lists freefont-announce and freefont-bugs created - -2002-02-25 Primoz Peterlin - - * sfd/FreeSerif.sfd - Added a couple of glyphs in Mathematics - Operators area. - - * sfd/FreeMono.sfd - - Added some more glyphs, in particular in the Mathematical - Operators section. - - Changed FamilyName to Free, FontName to FreeMono, and Full name - to "Free Monospaced". - -2002-02-20 Primoz Peterlin - - * sfd/ directory added containing FreeSerif, FreeSans and FreeMono - families. - - * tools/ directory added containing lists with characters required - for MES (Multilinguag European Subset) compliance. - - * tools/mes-list-expand.pl created - a Perl script for expanding MES - ranges into simple one-char-per-line format - - * tools/CheckConformance.pl created - a Perl script for checking - conformance of a font file with a given coded character set - - * homepage created - -2002-02-19 Primoz Peterlin - - * freefont (Free UCS Scalable Fonts) project approved on - savannah.gnu.org: diff --git a/lib/tcpdf/fonts/freefont-20100919/AUTHORS b/lib/tcpdf/fonts/freefont-20120503/AUTHORS similarity index 93% rename from lib/tcpdf/fonts/freefont-20100919/AUTHORS rename to lib/tcpdf/fonts/freefont-20120503/AUTHORS index d369db63b92..e7f7575d9fa 100644 --- a/lib/tcpdf/fonts/freefont-20100919/AUTHORS +++ b/lib/tcpdf/fonts/freefont-20120503/AUTHORS @@ -167,9 +167,9 @@ particular ISO 10646 blocks. Devanagari (U+0900-U+097F) Gujarati (U+0A80-U+0AFF) -* Pravin Satpute , Bageshri Salvi - , Rahul Bhalerao and Sandeep Shedmake +* Pravin Satpute , Bageshri Salvi + , Rahul Bhalerao and + Sandeep Shedmake Devanagari (U+0900-U+097F) Gujarati (U+0A80-U+0AFF) @@ -210,6 +210,8 @@ particular ISO 10646 blocks. * Steve White Glagolitic (U+2C00-U+2C5F) Coptic (U+2C80-U+2CFF) + Arabic (U+0600-U+06FF) (Mono) + Old Italic (U+10300-U+1032F) * Pavel Skrylev is responsible for Cyrillic Extended-A (U+2DEO-U+2DFF) @@ -224,6 +226,11 @@ particular ISO 10646 blocks. Ugaritic (U+10380-U+1039F) Old Persian (U+103A0-U+103DF) +* Masoud Pourmoosa + Arabic (U+0600-U+06FF) + +* Emmanuel Vallois + Python scripts, support * Primož Peterlin maintained FreeFont for several years, and is thanked for all his work. @@ -232,4 +239,4 @@ Please see the CREDITS file for details on who contributed particular subsets of the glyphs in font files. -------------------------------------------------------------------------- -$Id: AUTHORS,v 1.23 2010/09/11 13:24:11 Stevan_White Exp $ +$Id: AUTHORS,v 1.23 2010-09-11 13:24:11 Stevan_White Exp $ diff --git a/lib/tcpdf/fonts/freefont-20100919/COPYING b/lib/tcpdf/fonts/freefont-20120503/COPYING similarity index 100% rename from lib/tcpdf/fonts/freefont-20100919/COPYING rename to lib/tcpdf/fonts/freefont-20120503/COPYING diff --git a/lib/tcpdf/fonts/freefont-20100919/CREDITS b/lib/tcpdf/fonts/freefont-20120503/CREDITS similarity index 88% rename from lib/tcpdf/fonts/freefont-20100919/CREDITS rename to lib/tcpdf/fonts/freefont-20120503/CREDITS index 66396e721b2..06d280e934d 100644 --- a/lib/tcpdf/fonts/freefont-20100919/CREDITS +++ b/lib/tcpdf/fonts/freefont-20120503/CREDITS @@ -8,7 +8,7 @@ This file lists contributors and contributions to the GNU FreeFont project. * URW++ Design & Development GmbH URW++ donated a set of 35 core PostScript Type 1 fonts to the -Ghostscript project , to be available +Ghostscript project , to be available under the terms of GNU General Public License (GPL). Basic Latin (U+0041-U+007A) @@ -56,23 +56,23 @@ Current info: Valek Filippov added Cyrillic glyphs and composite Latin Extended A to the whole set of the abovementioned URW set of 35 PostScript core fonts, -. The fonts are available under GPL. +. The fonts are available under GPL. +(The Cyrillic range was since replaced by another font.) Latin Extended-A (U+0100-U+017F) - Cyrillic (U+0400-U+04FF) * Wadalab Kanji Comittee -Between April 1990 and March 1992, Wadalab Kanji Comittee put together -a series of scalable font files with Japanese scripts, in four forms: -Sai Micho, Chu Mincho, Cho Kaku and Saimaru. The font files are -written in custom file format, while tools for conversion into -Metafont and PostScript Type 1 are also supplied. The Wadalab Kanji -Comittee has later been dismissed, and the resulting files can be now -found on the FTP server of the Depertment of Mathematical Engineering -and Information Physics, Faculty of Engineering, University of Tokyo -. +Between April 1990 and March 1992, Wadalab Kanji Comittee put together a +series of scalable font files with Japanese scripts, in four forms: +Sai Micho, Chu Mincho, Cho Kaku and Saimaru. +The font files are written in custom file format, while tools for conversion +into Metafont and PostScript Type 1 are also supplied. The Wadalab Kanji +Comittee was later dismissed. The resulting files were once found on the FTP +server of the Department of Mathematical Engineering and Information Physics, +Faculty of Engineering, University of Tokyo. Some of these are available at + Hiragana (U+3040-U+309F) Katakana (U+30A0-U+30FF) @@ -98,9 +98,9 @@ TX fonts are are distributed under the GNU public license (GPL). * Angelo Haritsis -Angelo Haritsis has compiled a set of Greek Type 1 fonts, available on -. -The glyphs from this source has been used to compose Greek glyphs in +Angelo Haritsis has compiled a set of Greek Type 1 fonts, once available as +as a tarball named greekXfonts-Type1-1.1.tgz. +The glyphs from this source have been used to compose Greek glyphs in FreeSans and FreeMono. Angelo's licence says: "You can enjoy free use of these fonts for @@ -165,14 +165,13 @@ compatible with Helvetica or Arial. Available on 2002-01-24, Sam writes: "Arial Armenian font is free for non-commercial use, so it is OK to use under GPL license." - Armenian (U+0530-U+058F) +Armenian (U+0530-U+058F) -* Mohamed Ishan +* Mohamed Ishan <> -Mohamed Ishan has started a Thaana Unicode Project - and among other things created a -couple of Thaana fonts, available under FDL or BDF license. +Mohamed Ishan started the Thaana Unicode Project and among other things +created a couple of Thaana fonts, available under FDL or BDF license. Thaana (U+0780-U+07BF) @@ -180,7 +179,7 @@ couple of Thaana fonts, available under FDL or BDF license. * Sushant Kumar Dash (*) Sushant Dash has created a font in his mother tongue, Oriya. As he -states on his web page : +states on his web page : "Please feel free to foreword this mail to your Oriya friends. No copyright law is applied for this font. It is totally free!!! Feel free to modify this using any font editing tools. This is designed for @@ -220,14 +219,13 @@ Available under the GNU General Public License. * Frans Velthuis and Anshuman Pandey -In 1991, Frans Velthuis from the Groningen University, The -Netherlands, released a Devanagari font as Metafont source, available -under the terms of GNU GPL. Later, Anshuman Pandey from the Washington -University, Seattle, USA, took over the maintenance of font. Fonts can -be found on CTAN, . I -converted the font to Type 1 format using Péter Szabó's TeXtrace -program and removed some -redundant control points with PfaEdit. +In 1991, Frans Velthuis from the Groningen University, The Netherlands, +released a Devanagari font as Metafont source, available under the terms of +GNU GPL. Later, Anshuman Pandey from the Washington University, Seattle, USA, +took over the maintenance of font. ZdenÄ›k Wagner has provided a huge amount +of expert advice regarding the implementation of the font in FreeSerif. +Fonts can be found on CTAN, +. Devanagari (U+0900-U+097F) @@ -313,8 +311,8 @@ Vyacheslav Dikonov made a Braille unicode font that could be merged with the UCS fonts to fill the 2800-28FF range completely. (uniform scaling is possible to adapt it to any cell size). He also contributed a free syriac font, whose glyphs (about half of them) are borrowed -from the "Carlo Ator" font freely downloadable from -. Vyacheslav also filled in a few missing +from the "Carlo Ator" font by Tim Erickson. +Vyacheslav also filled in a few missing spots in the U+2000-U+27FF area, e.g. the box drawing section, sets of subscript and superscript digits and capital Roman numbers. @@ -322,6 +320,13 @@ subscript and superscript digits and capital Roman numbers. Box Drawing (U+2500-U+257F) Braille (U+2800-U+28FF) +* Tim Erickson + +Is the author of several Eurasian fonts, including "Carlo Ator". +He has given his written permission for glyphs from this font to be +included in FreeFont. + Syriac (U+0700-U+074A) + * M.S. Sridhar @@ -431,9 +436,9 @@ sonalisonania AT yahoo.com, jitendras AT vsnl.com, alka AT ncst.ernet.in. website: www.janabhaaratii.org.in. -* Pravin Satpute , Bageshri Salvi - , Rahul Bhalerao and Sandeep Shedmake +* Pravin Satpute , Bageshri Salvi + , Rahul Bhalerao and Sandeep Shedmake Devanagari (U+0900-U+097F) Gujarati (U+0A80-U+0AFF) @@ -446,9 +451,9 @@ Unicode pan-Indic fonts: "Samyak" and "Samyak Sans". "Samyak" font belongs to serif style and is an original work of the team; "Samyak Sans" font belongs to sans serif style and is actually a compilation of already released Indic fonts (Gargi, Padma, Mukti, Utkal, Akruti -and ThendralUni). Both fonts are based on Unicode standard. You can -download the font files (released under GNU/GPL License) from -http://www.gnowledge.org/Gnoware/localization/font.htm +and ThendralUni). Both fonts are based on Unicode standard. +The fonts are now hosted at Sarovar.org: +http://sarovar.org/projects/samyak/ * Kulbir Singh Thind @@ -457,7 +462,7 @@ http://www.gnowledge.org/Gnoware/localization/font.htm Dr. Kulbir Singh Thind designed a set of Gurmukhi Unicode fonts, AnmolUni and AnmolUni-Bold, which are available under the terms of GNU -Generel Public Licens from the Punjabu Computing Resource Center, +Generel Public License from the Punjabu Computing Resource Center, http://guca.sourceforge.net/typography/fonts/anmoluni/. @@ -503,6 +508,8 @@ Made the TemporaLCGUni fonts, based on the URW++ fonts, from which at one point FreeSerif Cyrillic, and some of the Greek, was drawn. He also provided valuable direction about Cyrillic and Greek typesetting. + Cyrillic (U+0400-U+04FF) + * George Douros The creator of several fonts focusing on ancient scripts and symbols. @@ -512,7 +519,7 @@ of ancient sources. Aegean: Phoenecian Analecta: Gothic (U+10330-U+1034F) Musical: Byzantine & Western - Unicode: many Miscellaneous Symbols, Miscellaneous Technical, + Unicode: many Miscellaneous Symbols, Miscellaneous Technical, OCR, supplemental Symbols, and Mathematical Alphanumeric symbols, Mah Jong, and the outline of the Domino. @@ -558,19 +565,28 @@ were for a while included in FreeFont. Sinhala (U+0D80-U+0DFF) -* Steve White +* Steve White Filled in a lot of missing characters, got some font features working, left fingerprints almost everywhere, and is responsible for these blocks: + Runic (U+16A0-U+16F0) Glagolitic (U+2C00-U+2C5F) Coptic (U+2C80-U+2CFF) + Old Italic (U+10300-U+1032F) +(The design of Runic is based roughly on one originally submitted by +Vyacheslav Dikonov) + * Pavel Skrylev is responsible for Cyrillic Extended-A (U+2DEO-U+2DFF) as well as many of the additions to Cyrillic Extended-B (U+A640-U+A65F) + +* Masoud Pourmoosa corrected several letters in Arabic for Persian: + Arabic (U+0600-U+06FF) + Notes: *: The glyph collection looks license-compatible, but its author has diff --git a/lib/tcpdf/fonts/freefont-20120503/ChangeLog b/lib/tcpdf/fonts/freefont-20120503/ChangeLog new file mode 100644 index 00000000000..6f3489530cb --- /dev/null +++ b/lib/tcpdf/fonts/freefont-20120503/ChangeLog @@ -0,0 +1,14707 @@ +2012-04-22 16:18 +0000 [r2239-2240] Stevan_White: + + * INSTALL: Improved info on Debian install. + + * notes/troubleshooting.txt: More info on the blurry + text in Windows issue. + +2012-04-22 11:43 +0000 [r2238] Stevan_White: + + * tools/report/OpenType/UnicodeRanges.py: + Regularized abbreviatons of supplement, extended + +2012-04-22 11:06 +0000 [r2237] Stevan_White: + + * FreeSerifBold.sfd: Arabic: added 3 graphical + marks to complete the range. + +2012-04-22 10:51 +0000 [r2236] Stevan_White: + + * FreeSerif.sfd: Fixed problems turned up by + tests. Somehow alefmaksurainitialarabic hadn't been re-named. Two + new Combining Diacritics hadn't been given Unicode. + +2012-04-21 17:11 +0000 [r2235] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeMono.sfd, + FreeMonoBoldOblique.sfd: Revision of German + TTF Names. + +2012-04-21 16:52 +0000 [r2231-2234] Stevan_White: + + * INSTALL: More info for Windows. + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd: PS Private: put in extra + blues line, adjusted to numerals. + + * tools/report/OpenType/UnicodeRanges.py: Corrected + one range + + * tools/generate/TrueType, + tools/generate/WOFF, + tools/generate/OpenType, + tools/generate/MacTT: all: removed launch line + WOFF: made quadratic, and autoinstructed TrueType: turned off + saving of hints + +2012-04-21 11:17 +0000 [r2230] Stevan_White: + + * FreeSerifBold.sfd: Vietnamese: small + adjustment of accents + +2012-04-20 12:57 +0000 [r2228-2229] Stevan_White: + + * AUTHORS, CREDITS: Various + corrections, doing the best I could with stale URLs. + + * ChangeLog: Some typos + +2012-04-20 11:06 +0000 [r2227] Stevan_White: + + * ChangeLog: Summary of changes since late last + year. + +2012-04-19 21:07 +0000 [r2226] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Arabic: re-named + alefmaksurainitialarabic and alefmaksuramedialarabic as + alefmaksurainitialarabic and alefmaksuramedialarabic to avoid a + confusing FontForge warning. This was discussed on the FontForge + list, and a partial remedy was agreed upon. + +2012-04-19 21:02 +0000 [r2225] Stevan_White: + + * FreeSerif.sfd: GPOS table: removed the + Cyrillic kerns with non-Unicode "alternative" Cyrillic, because + FontForge warns that Windows apps will have *problems* with + mappings that aren't Unicode-Unicode. Most of the kerns were + rather small anyway. + +2012-04-19 20:39 +0000 [r2224] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSansBoldOblique.sfd, + FreeMonoBoldOblique.sfd: TTF Names: Fixes bug + #36232: Windows 7 strange bug with installation/font control + panel. Also improved French names. (Thanks to Emmanuel Vallois) + +2012-04-18 07:31 +0000 [r2223] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd: Devanagari: Regularized + overlap of horizontal. Cleaned up numerous other letters. + +2012-04-17 07:37 +0000 [r2222] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Currency Symbols: + Added/corrected/adjusted Indian Rupee. + +2012-04-16 22:45 +0000 [r2221] Stevan_White: + + * notes/maintenance.txt, + notes/usage.txt, + notes/troubleshooting.txt, + notes/webfont_guidelines.txt, + notes/features.txt: Added section about where + letters are to usage.txt Made sure svn properties are set for + others. + +2012-04-16 22:26 +0000 [r2220] Stevan_White: + + * README: Updated information about file types + +2012-04-16 22:17 +0000 [r2219] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Arabic: resolves bug + #36195: Arabic semicolon doesn't match with others + +2012-04-15 23:16 +0000 [r2218] Stevan_White: + + * FreeSerifBold.sfd: Arabic: this was meant to + be in previous commit. + +2012-04-15 18:30 +0000 [r2217] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Arabic: Remedies bug + #36196: Arabic ba and teh isolated and final. Also applied + similar alteration to some similar letters. Bold: there were some + missing ligatures of superscript marks. + +2012-04-15 17:52 +0000 [r2216] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Arabic: Remedies bug + #36198: dots for Arabic letter jeh Also revised placement dots + over some other letters. + +2012-04-15 13:24 +0000 [r2215] Stevan_White: + + * FreeSerif.sfd: Arabic: remedies bug #36191, + Arabic character DAD final form + +2012-04-15 12:23 +0000 [r2214] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Arabic: toward bug #36189: + discrepancy in different forms of Ú© and Ú¯ + +2012-04-15 12:02 +0000 [r2213] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Arabic: remedies bug + #36190, Arabic question mark too small + +2012-04-15 11:16 +0000 [r2212] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd: Devanagari: anchors for + recently added letters. Thanks, Zdenek. + +2012-04-15 10:44 +0000 [r2211] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Arabic: adjusted height of + dots on a few glyphs + +2012-04-15 10:31 +0000 [r2210] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Arabic: remedies bug + #36181: initial and final form of heh (U+0647) + https://savannah.gnu.org/bugs/?36181 + +2012-04-14 13:35 +0000 [r2209] Stevan_White: + + * tools/test/ranges/Arabic/arabic_test.py (added), + tools/test/ranges/Arabic/unicode_joining.py + (added), + tools/test/ranges/Arabic/generate_arabic_shaping.py + (added), tools/test/ranges (added), + tools/test/ranges/Arabic (added): Scripts to + generate comprehensive Arabic tests in HTML, courtesy of Emmanuel + Vallois. + +2012-04-13 09:56 +0000 [r2208] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSerif.sfd: Devanagari: serif: corrected + OpenType glyph type of ru, ruu ligatures to be base ligatures, + not marks. sans, sans bold: added ka-ra "vatu" ligature at + Zdenek's suggestion. sans: removed empty lookup. + +2012-04-10 20:33 +0000 [r2207] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Devanagari: several mark + placement issues, pointed out by Zdenek. + +2012-04-09 21:58 +0000 [r2206] Stevan_White: + + * sfd/Makefile, FreeSerif.sfd, + FreeSerifBold.sfd: Arabic: made Arabic and + Persion digits 500EM wide. + +2012-04-09 18:35 +0000 [r2205] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd: Arabic: messed with digits. + Overall, had been building with GIT version of FontForge. found + that older distro version 22-Feb-2011-ML shows warning dialogs + Internal Error: EITOfNextMajor failed! on Clockwise Test + (cleverly omitting the crucial info). Turns out, just rounding to + int on certain characters fixes it. + +2012-04-09 11:34 +0000 [r2204] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Arabic: More kerning: tried + to synch up normal and bold. Altered letters especially for + Seraiki. Lots of fiddling with heh and heh-doachashmee. Seems the + letter transforms very differently for different languages. This + is not there yet. + +2012-04-08 12:53 +0000 [r2203] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Arabic: made 'ccmp' table + and some combining marks to handle cases of letters that don't + have positional forms in Unicode. Only did a few -- more are + needed. Lots of kerning. Fiddled with shapes of several letters. + +2012-04-07 19:21 +0000 [r2202] Stevan_White: + + * FreeSerif.sfd: Arabic: more alterations toward + bug #36115: Various little problems with Arabic/Persian glyphs + More kerning. Some forms from Pashto are missing. + +2012-04-06 17:45 +0000 [r2201] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Arabic: made medial form of + loop-letters more distinctive from initial forms. (toward bug bug + #36115: Various little problems with Arabic/Persian glyphs) + +2012-04-05 16:43 +0000 [r2200] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Arabic: improvements to + digits (Persian primarily) based on patch from Masoud Pourmoosa. + +2012-04-04 17:10 +0000 [r2199] Stevan_White: + + * FreeMono.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Arabic; (for Farsi) toward + bug 34700: made farsi yeh final more like the Unicode samples. + https://savannah.gnu.org/bugs/?34700 Arabic/Persian in FreeSerif: + ending "Yeh" is annoying + +2012-04-04 14:34 +0000 [r2198] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Various attempts to make + web fonts work/look better. Sans Devanagari: made relation + between overhang and horizontal more consistent for half-forms. + Corrected metrics in FreeSansOblique. Some kerning overall, after + looking again at sample pages + +2012-04-02 13:30 +0000 [r2197] Stevan_White: + + * FreeSansBold.sfd: Devanagari: toward more + consistent spacing, especialy of half-forms + +2012-04-02 12:57 +0000 [r2196] Stevan_White: + + * FreeSans.sfd: Devanagri: better connection of + horizontals, especially half forms. + +2012-04-01 13:45 +0000 [r2195] Stevan_White: + + * FreeSerif.sfd: Combining Diacritical Marks + Supplement: made glyphs for large part of range. Latin + Extended-D: made Latin con and US glyphs. + +2012-03-30 13:34 +0000 [r2193-2194] Stevan_White: + + * tools/generate/OpenType: Turn on PS rounding for + Type1 glyphs + + * FreeSerifItalic.sfd, + FreeSans.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMonoBold.sfd, + FreeMonoBoldOblique.sfd: Pointwise cleanup + toward validation with PS rounding turned on for OpenType. + +2012-03-30 11:16 +0000 [r2192] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Devanagari: bold, italic, + re-considered vowel naming to avoid FF warnings. Latin: a bit of + kerning + +2012-03-29 20:39 +0000 [r2191] Stevan_White: + + * notes/troubleshooting.txt: corrections about + recent changes + +2012-03-28 19:59 +0000 [r2190] Stevan_White: + + * notes/troubleshooting.txt: Remarks about + LibreOffice's challenges with OpenType features. + +2012-03-28 19:38 +0000 [r2189] Stevan_White: + + * notes/README-downloads.txt: brought up to date, + regarding perferred format in various systems, and the WOFF files + +2012-03-28 19:31 +0000 [r2185-2188] Stevan_White: + + * AUTHORS, INSTALL, + COPYING: changed SVN keywords + + * ChangeLog: corrections, addition + + * CREDITS: correctons, additions + + * FreeSans.sfd, + FreeSansBold.sfd: Devanagari: simplified dist + lookup criteria + +2012-03-28 19:24 +0000 [r2184] Stevan_White: + + * tools/report/ligatureLookups.py: better error + handling, doc + +2012-03-28 19:20 +0000 [r2183] Stevan_White: + + * FreeSerifBold.sfd: Devanagari: cleaned up a + bunch of excess GPOS anchors; tidied lookups. + +2012-03-28 09:17 +0000 [r2180-2182] Stevan_White: + + * Makefile: insert troubleshooting doc + + * notes/troubleshooting.txt (added): A doc + explaining how to troubleshoot font problems. + + * notes/usage.txt: Tidied, more explanation of the + doc as a whole. + +2012-03-26 10:43 +0000 [r2179] Stevan_White: + + * FreeSerif.sfd: Devanagari: much experimenting + with lookups to center western punctuation between words + (resulted in several bug reports on firefox and xetex). + Currently, uses GSUB 'locl'. GPOS are too problematic in apps to + use. + +2012-03-25 09:49 +0000 [r2178] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd: Devanagari: added + positioning for western punctuation + +2012-03-25 09:40 +0000 [r2177] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Devanagari, Bengali: small + tweeks to dots + +2012-03-24 21:34 +0000 [r2176] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSansBoldOblique.sfd, + FreeMonoBoldOblique.sfd: TTF Names: Hindi + hyphenated term + +2012-03-24 10:20 +0000 [r2175] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Devanagari: regarding + horizontal spacing, on advice of Zdenek. o, au -- stems were too + close. danda, dbldanda: much too near preceding word. Made so + that danda-space would space the mark evenly between the words. + Made lookups for similarly-spaced question and exclamation marks. + Kerning (or dist?): Experiments -- problems include: Firefox + doesn't seem to support "dist". Xetex doesn't turn kerning on by + default. Fontforge complains Windows doesn't like to kern + auxiliaries with Unicode ranges. Nonetheless, it does pack words + rather tighter. My own advice: made ra glyph more narrow. It was + the worst, spacing wise, on the un-kerned page. Oriya: made + similar spacing for its danda. + +2012-03-23 12:56 +0000 [r2174] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Devanagari: efforts to + improve horizontal spacing, that Zdenek complains about. 1) + medium: o, au vowels: stems too close 2) danda, dbldanda, should + be widely separated from words, centred between them. 3) bold: on + horizontal, bevels extend rather more than they should (reduced + in Unicode and through first set of half marks in the + auxiliaries... willl complete later.) 4) made special localized + forms of question, exclamation mark. + +2012-03-22 23:25 +0000 [r2172-2173] Stevan_White: + + * tools/generate/TrueType, + tools/generate/WOFF, + tools/generate/OpenType: Set the encoding to + UnicodeFull before build (a bit wasteful for faces with no high + Unicode, but couldn't think of a better way.) + + * FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd: More re-thinking of OS/2 + weights. In sans, again adjusted OS/2 Windows metrics to stop + clipping. (I'm just sure this will mess up line spacing in + OpenOffice, but didn't have time to check. Something has a bug.) + +2012-03-22 19:17 +0000 [r2171] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Font Info: filled out + TTF Names Fullname for Hindi + +2012-03-22 19:00 +0000 [r2170] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Added Hindi term for + Font Style in TTF Names (courtesy of Monika Shah) + +2012-03-22 18:49 +0000 [r2169] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: FontInfo: + re-considered OS/2 and Panose weight descriptions + +2012-03-22 15:02 +0000 [r2168] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Devanagari: Replaced a + 'pres' table that got zeroed by a crash. More adjustments to mark + placement. + +2012-03-22 12:51 +0000 [r2167] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Devanagari: Replaced lost + 'pres' lookup tables. + +2012-03-22 10:35 +0000 [r2166] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Overall: Several + measures toward reducing warnings from Font Validator. In "roman" + faces, change TTF Name: SubFamily to "Regular". (FontForge binds + this to PSNames:Weight --? so changed that.) Experimenting with + General:Name For Humans (Fiddled with Family Name too...but + changed it back.) Changes to OS/2:Sub/Super Subscript Offset -- + made positive. Some fiddling with Panose info. Also: previously + OS/2 Charsets missed 708, Arabic ASMO 708. (Bug in + FontForge-patch reported.) In sans and mono oblique, bold, and + boldoblique, added some math operators to fill an Apple codepage. + Sinhala: FreeSerifBold -- implemented same change moving 'ccmp' + to 'akhn' as in roman face. Has to do with bug in OpenOffice/ICU. + +2012-03-20 08:25 +0000 [r2165] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: OS/2 small tweeks: + set "weight, width, slope only" + +2012-03-19 18:34 +0000 [r2164] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: OS/2 Charsets: made serif, + serifbold, mono to support ASMO 708 MS Codepage for Arabic (small + bug in FontForge) OS/2 Version: changed from Automatic to 3 for + all, only to satisfy old MS Font Validator, which chokes on + higher versions. + +2012-03-19 09:45 +0000 [r2163] Stevan_White: + + * FreeMono.sfd: correction-something went wrong + with the encoding two commits ago. (I switched encoding from + custom to BMP and back again.) This should encorporate the recent + changes and fix the problem. + +2012-03-19 09:07 +0000 [r2162] Stevan_White: + + * tools/report/OpenType/UnicodeRanges.py: comments + containing new Unicode ranges without ulUnicodeRange bits + +2012-03-19 08:41 +0000 [r2161] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: OS/2 version: set to + 3 (was "Automatic") mostly for MS Font Validator. Arabic + Presentation Forms B: (regular) made lam-alif ligatures, + completing range. + +2012-03-18 15:57 +0000 [r2160] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Devanagari: more toward + positioning of marks. + +2012-03-18 15:09 +0000 [r2159] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd: Devanagari: resolved some + dfficult cases reported by Zdenek. (esp. that esign and reph + could come in either order.) + +2012-03-18 06:37 +0000 [r2158] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSerif.sfd: Devanagari: More toward proper + mark placement. + +2012-03-16 17:39 +0000 [r2157] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Devanagari: more issues + regarding mark placement. + +2012-03-15 23:39 +0000 [r2156] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Devanagari: toward fixing + mark positioning problems Zdenek pointed out. + +2012-03-15 10:28 +0000 [r2155] Stevan_White: + + * FreeSerif.sfd: Latin: got i-ogonek-acute to + remove dot over i again (for Navaho). Problem was evidently a + DFLT{dflt} entry in lookup language tags. + +2012-03-15 10:03 +0000 [r2153-2154] Stevan_White: + + * FreeSans.sfd: Devanagari: fixes for some mark + issues pointed out by Zdenek. + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin: corrected + longstanding problem that made stacked Vietnamese accents fail. + Had to do with long list of languages filter of default ligature + lookup, excluding Turkish, and rendering logic I don't + understand. Devanagari: toward correcting marks stacked below + rakaar. + +2012-03-13 16:29 +0000 [r2152] Stevan_White: + + * FreeSerif.sfd: Mathematical Alphanumeric + Symbols (especially) named some characters + +2012-03-13 10:46 +0000 [r2151] Stevan_White: + + * FreeSerifBold.sfd: Devanagari: ha-rrvocalic + and improved ha-rakaar, as in medium + +2012-03-12 21:59 +0000 [r2150] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Mathematical Operators: + reduced horizontal spacing of complement operator + +2012-03-12 21:28 +0000 [r2149] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Mathematical Operators: + re-thought dimensions of "complement" symbol (after seeing it in + Dieudonné's analysis book) + +2012-03-12 18:49 +0000 [r2148] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Devanagari: various adjustments + to marks. serif: added ha-llvocalic, rplaced ha_ra conjunct, + positioned virama separately from fowels. + +2012-03-11 22:39 +0000 [r2147] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Bengali: adjustments to marks; + GPOS tables to position them. + +2012-03-11 16:37 +0000 [r2146] Stevan_White: + + * FreeSansOblique.sfd: Bengali: fixed some + horizontal spacing issues + +2012-03-11 00:56 +0000 [r2145] Stevan_White: + + * FreeSansBold.sfd, + FreeSerif.sfd: Made to pass tests -- mostly + little pointwise tweeks. One range of auxiliaries had wandered + out of the Private Use area. + +2012-03-10 23:55 +0000 [r2144] Stevan_White: + + * FreeMonoOblique.sfd: Armenian: corrected width + of one glyph + +2012-03-10 18:53 +0000 [r2143] Stevan_White: + + * FreeSans.sfd: Bengali: completed pointwise + clean-up of auxiliaries. Found a couple more with quite wrong + rignt bounds. + +2012-03-10 13:15 +0000 [r2142] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: OS/2 vertical metrics: + another change of heart: made vertical metrics like other fonts I + looked at, and tightened line spacing. Bengali: (sans) point-wise + clean-up down to bn_l_dd_ra (before I pooped out) Fixed right + bound of several auxiliaries, such as bn_p_ma, bn_m_p_la + +2012-03-09 19:04 +0000 [r2141] Stevan_White: + + * FreeSerifItalic.sfd: Removed some unintended + empty contours. Pointwise clean-up of points too close (but gave + up on Bengali range.) + +2012-03-09 18:45 +0000 [r2139-2140] Stevan_White: + + * tools/generate/TrueType: Made splines quadratic + + * FreeMonoOblique.sfd: Pointwise cleanup of + "points too close" problems. + +2012-03-09 18:35 +0000 [r2138] Stevan_White: + + * FreeSerifBold.sfd: Removed an unintended empty + contour + +2012-03-09 16:52 +0000 [r2137] Stevan_White: + + * tools/generate/TrueType, + tools/generate/WOFF, + tools/generate/OpenType, + tools/generate/buildutils.py, + tools/generate/MacTT: Updated copyrights + +2012-03-09 16:49 +0000 [r2136] Stevan_White: + + * sfd/Makefile: Made to properly report progress for + OpenType target + +2012-03-09 16:08 +0000 [r2135] Stevan_White: + + * FreeSerif.sfd: Mahjong Tiles: The previous + commit didn't quite do it. Sometimes, but starting the generate + process from scratch, it still crashed. But this "circle" glyph + was excessively elaborate anyway. Made it simpler, cleaned it up, + and now the crash isn't happening. + +2012-03-09 13:12 +0000 [r2134] Stevan_White: + + * FreeSerif.sfd: Mahjong Tiles: work-around for + FontForge crash, by use of references. Crash: Select All, + AutoHint. Generate Fonts, OpenType Options, check Postscript + Hints. Generate. segfault. + +2012-03-09 12:04 +0000 [r2133] Stevan_White: + + * FreeSerif.sfd: Mahjong Tiles: named the glyphs + +2012-03-09 01:17 +0000 [r2132] Stevan_White: + + * FreeSans.sfd: Corrected mixed reference and + contour. Overall point-wise cleanup "points too close" + +2012-03-07 23:27 +0000 [r2131] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Font Info General: + changed copyright 2011 to 2012 since no public release was made + last year. + +2012-03-07 21:06 +0000 [r2130] Stevan_White: + + * Makefile: Source tarball now includes all build + scripts etc. + +2012-03-07 14:50 +0000 [r2129] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: .notdef: made clearer + that something is missing... + +2012-03-06 19:07 +0000 [r2128] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Devanagari: mostly + adjustments to mark placement. + +2012-03-06 11:22 +0000 [r2127] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd: Devanagari: various + alterations toward ligatures as in Velthuis manual, and for + legibility. + +2012-03-05 21:18 +0000 [r2126] Stevan_White: + + * FreeSansBold.sfd: Devanagari: made half-na a + bit wider on Monika Shah's recommendation. Tweeked several other + auxiliaries for legibility. + +2012-03-05 20:25 +0000 [r2125] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd: Devanagari: Several issues + reported by Monika Shah, including rakaar being placed + improperly, and some Sanskrit ligatures leaking into Hindi. + +2012-03-05 16:41 +0000 [r2124] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd: Devanagari: combined + half-form issues, reported by Zdenek Wagner. + +2012-03-05 15:07 +0000 [r2123] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Devanagari: Several + alterations based on a report by Zdenek Wagner. Anusvara in + conjunction with other above marks, u and uumatra in conjunction + with ha and nuktas. + +2012-03-05 01:22 +0000 [r2122] Stevan_White: + + * FreeSans.sfd, + FreeSansOblique.sfd: Bengali: Several + ligatures with ba had lost the holes in their ba. (bn_k_ba, etc); + also bn_asamib_r_ukaar. Copied holes from similar glyphs. A + similar thing may have happend to a couple of other ligs + (bn_ss_tta1, bn_ss_tt_ra1). I don't know how these should look, + but they seem to be unused anyway. + +2012-03-04 18:24 +0000 [r2121] Stevan_White: + + * FreeSerifItalic.sfd: general clean-up of + points too close. Bogged down on Bengali. + +2012-03-04 18:01 +0000 [r2120] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: Currency Symbols: added + Rupee to italic. general clean-up of points too close. + +2012-03-04 13:18 +0000 [r2119] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Gurmukhi: adjusted + placement of dots. re-named tables and rounded to int in bold. + +2012-03-04 12:25 +0000 [r2118] Stevan_White: + + * FreeSerif.sfd: Devanagari Extended: completed + range + +2012-03-04 11:25 +0000 [r2117] Stevan_White: + + * FreeMono.sfd, + FreeMonoOblique.sfd: Armenian: added dhahma + (and ran clear hints) + +2012-03-04 11:21 +0000 [r2116] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, FreeMono.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Armenian: added drahma + +2012-03-04 10:45 +0000 [r2115] Stevan_White: + + * FreeSerifBold.sfd: Devanagari: completed main + Unicode range. + +2012-03-04 10:17 +0000 [r2114] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Gurmukhi: Added range in + bold. Serif: Many point-wise cleanups, in Gurmukhi and other + ranges. + +2012-03-02 22:19 +0000 [r2113] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Devanagari: starting to + converge. In serif, added ra-u and ra-uu and tables, raised + anusvara. Various small alterations to sans letters. + +2012-03-02 15:18 +0000 [r2112] Stevan_White: + + * FreeSansBold.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Devanagari: corrected + rakaar on letter da + +2012-03-02 14:56 +0000 [r2111] Stevan_White: + + * FreeSansBold.sfd: Devanagari: glyph clean-up + pass through auxiliaries. + +2012-03-02 12:22 +0000 [r2110] Stevan_White: + + * FreeSansBold.sfd: Devanagari: clean-up pass + through Unicode range. Added a few ligatures. + +2012-03-02 03:35 +0000 [r2107-2109] Stevan_White: + + * FreeSansBold.sfd: Devanagari: implemented by + increasing weight of letters from Sans. Subset of auxiliaries in + Sans: plan is to do more with tables. + + * FreeSans.sfd: Devanagari: re-instated + dev_ha_rvocalic.blws + + * FreeSerif.sfd, + FreeSerifBold.sfd: Devanagari: corrected table + having to do with rakaar on round consonants + +2012-03-01 19:50 +0000 [r2106] Stevan_White: + + * FreeSans.sfd: Devanagari: Regularized + horizontal bar height and width, as well as size and shape of dot + marks (made all diamonds). More use of references. (With GPOS + tables, most of the nuktas and halents would go away.) Latin: + made comma a bit less spindly, and likewise with derived marks. + +2012-02-29 22:29 +0000 [r2105] Stevan_White: + + * FreeSerif.sfd: Bengali: some insignificant + clean-up. what to do about these glyphs? + +2012-02-29 19:12 +0000 [r2104] Stevan_White: + + * FreeSansBold.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd: Various small corrections + to get test suite to run + +2012-02-29 17:02 +0000 [r2103] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Devanagari: corrected table + tag for style sets. Made substitutions for Marathi more like + those for Hindi than Sanskrit. + +2012-02-29 11:21 +0000 [r2102] Stevan_White: + + * FreeSerifBold.sfd: Devanagari: should now have + same coverage as regular face. + +2012-02-29 07:10 +0000 [r2101] Stevan_White: + + * FreeSerif.sfd: Devanagari: replaced + auxiliaries; added positioning anchors. + +2012-02-25 13:52 +0000 [r2100] Stevan_White: + + * Makefile: include usage notes in packages + +2012-02-25 10:40 +0000 [r2099] Stevan_White: + + * notes/usage.txt: Further notes + +2012-02-25 10:30 +0000 [r2098] Stevan_White: + + * notes/usage.txt (added), + notes/features.txt: Usage notes -- primarily about + discretionary and language-specific features, what they're for + and how to use them. + +2012-02-24 15:58 +0000 [r2097] Stevan_White: + + * FreeSerif.sfd: Oriya: Special form for ukar + under some consonants, ligatures for several consonants with + aakar, with lookups. + +2012-02-24 12:21 +0000 [r2096] Stevan_White: + + * FreeSerif.sfd: Oriya: found auxiliaries that + had excaped clean-up. + +2012-02-24 11:47 +0000 [r2095] Stevan_White: + + * FreeSerif.sfd: Oriya: Switched yophola and + yyophola for about the 3rd time. This time, following doc for + ortex. Clean-up of "points too close". + +2012-02-23 23:37 +0000 [r2094] Stevan_White: + + * FreeSerif.sfd: Oriya: removed overlap of + components, validated. + +2012-02-23 23:25 +0000 [r2093] Stevan_White: + + * FreeSerif.sfd: Oriya: glyph cleanup of + auxiliaries complete. + +2012-02-23 19:55 +0000 [r2092] Stevan_White: + + * FreeSerif.sfd: Oriya: one removed glyph had + stowed away in a chaining lookup list + +2012-02-23 18:09 +0000 [r2091] Stevan_White: + + * FreeSerif.sfd: Oriya: Corrected lookup tag for + 'haln' form for 'no'. More glyph cleanup in auxiliaries. + +2012-02-23 16:19 +0000 [r2090] daniel_j: + + * FreeSansBold.sfd, + FreeSansBoldOblique.sfd: Set correct codepoint + and Unicode name for uniA7AA (hooked H) in sans bold and + bold-oblique + +2012-02-23 14:52 +0000 [r2089] Stevan_White: + + * FreeSerif.sfd: Oriya: corrected blown-out + letter in main range, renamed an auxiliary. + +2012-02-23 14:11 +0000 [r2088] Stevan_White: + + * FreeSerif.sfd: Oriya: worked on vowels. + adjusted ii and ai_length to improve connections. Made table for + i sign beneath tho, dho. + +2012-02-23 13:35 +0000 [r2087] Stevan_White: + + * FreeSerif.sfd: Oriya: in auxiliary glyphs, a + bit more clean-up, regularizing stem widths. Moved previous + 'half' to 'haln', as 'half' isn't recognized by Pango. + +2012-02-23 12:46 +0000 [r2086] Stevan_White: + + * FreeSerif.sfd: Oriya: Re-shaped a few letters + with over-thick round parts. Made vowels a bit closer to base + letter. + +2012-02-23 11:53 +0000 [r2085] Stevan_White: + + * FreeSerif.sfd: Oriya: made verticals in main + range of more consistent width. + +2012-02-22 22:32 +0000 [r2084] Stevan_White: + + * FreeSerif.sfd: Oriya: more lookups seem to be + working, but there is a big question about why the halent + switches position. Is this the shaping engine, or something I've + done with the tables? + +2012-02-22 19:44 +0000 [r2083] Stevan_White: + + * FreeSerif.sfd: Oriya: regularized glyph + bearings + +2012-02-22 19:18 +0000 [r2082] Stevan_White: + + * FreeSerif.sfd: Oriya: enabled lookups for lots + more ligatures. Still concerned that akhans aren't activating. + Some adjustment of stem widths, etc. + +2012-02-22 09:38 +0000 [r2081] Stevan_White: + + * FreeSerif.sfd: Oriya: made anusvara a spacing + mark, made tables and spacing versions of below base marks to + avoid collisions with subscripted consonants, adjusted vowel e to + be less angular and a bit lighter. + +2012-02-22 00:44 +0000 [r2080] Stevan_White: + + * FreeSerif.sfd: Oriya: a lot of work with + tables getting examples on MS Typography pages on Oriya to work. + Glyph clean-up, mark adjustments. + +2012-02-21 10:39 +0000 [r2079] Stevan_White: + + * FreeSerif.sfd: Oriya: completed Unicode range; + more glyph clean-up. yophola and zophola were exchanged -- fixed. + made look-up for reph+canrabindu. + +2012-02-20 22:39 +0000 [r2078] Stevan_White: + + * FreeSans.sfd: Devanagari: better use of + references in auxiliary range + +2012-02-20 08:41 +0000 [r2077] Stevan_White: + + * FreeSerif.sfd: Oriya: more glyph clean-up + +2012-02-19 20:52 +0000 [r2076] Stevan_White: + + * FreeMono.sfd, + FreeSerifBold.sfd: Currency Symbols: New + Indian Rupee. + +2012-02-19 20:27 +0000 [r2075] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Currency Symbols: Rupee ought + to be shaped as a Devanagari ra with two horizontals, as pointed + out by Santhosh Thottingal. + +2012-02-19 20:05 +0000 [r2074] Stevan_White: + + * FreeSans.sfd: Malayalam: corrected l_voc_mal + and ll_voc_mal, which were completely wrong, as pointed out by + Santhosh Thottingal. + +2012-02-19 19:37 +0000 [r2073] Stevan_White: + + * FreeSerif.sfd: Oriya: Made vowels combine more + correctly. More glyph clean-up. + +2012-02-19 11:03 +0000 [r2072] Stevan_White: + + * FreeSerif.sfd: Oriya: more glyph clean-up + +2012-02-19 00:51 +0000 [r2071] Stevan_White: + + * FreeSerif.sfd: Oriya: clean-up, glyph + validation of main Unicode range. + +2012-02-18 21:50 +0000 [r2070] Stevan_White: + + * FreeSerif.sfd: Gujarati: Removed overlaps, + cleaned up resulting issues. + +2012-02-18 19:34 +0000 [r2069] Stevan_White: + + * FreeSerif.sfd: Gujarati: main glyph clean-up + done. some mods to glyph shapes . added a few i-widening table + entries. + +2012-02-18 18:16 +0000 [r2068] Stevan_White: + + * FreeSans.sfd: Malayalam: positioning tables + for below marks l_voc_mal and ll_voc_mal, as well as for reph. + (consult latest development version of Meera). Currency: made + indian Rupee sign a bit wider + +2012-02-18 00:02 +0000 [r2067] Stevan_White: + + * FreeSerif.sfd: Gujarati: further glyph + clean-up (almost there!). Adjusted marks. Made new lookups to + pick letter i based on width of the letter it goes over. + +2012-02-17 14:42 +0000 [r2066] Stevan_White: + + * FreeSerif.sfd: Gujarati: mostly messing with + mark positioning: got rid of carat-reph forms. + +2012-02-17 11:28 +0000 [r2065] Stevan_White: + + * FreeSerif.sfd: Gujarati: further glyph + clean-up, adjustments to mark placement. + +2012-02-17 01:44 +0000 [r2064] Stevan_White: + + * FreeSerif.sfd: Gujarati: replaced ha_half, + added some lookups for above marks. + +2012-02-17 00:14 +0000 [r2062-2063] Stevan_White: + + * FreeSerif.sfd: Correction: kerning tables were + blown out in commit 2056. There were several bad crashes about + that time. The effect seems to be: all kern table entries are set + to 0. + + * sfd/Makefile, FreeSansBold.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: kerning tables restored. + Problem happened in commit 2096 + +2012-02-16 23:41 +0000 [r2061] Stevan_White: + + * FreeSerif.sfd: Gujarati: more glyph clean-up, + mostly in auxiliaries. Just noticed all kern tables have been + zeroed again (thank you, FontForge). + +2012-02-16 21:11 +0000 [r2060] Stevan_White: + + * FreeSerif.sfd: Gujarati: glyph clean-up of + Unicode range, some of auxiliary glyphs. + +2012-02-15 20:16 +0000 [r2059] Stevan_White: + + * FreeSerif.sfd: Gujarati: more glyph clean-up, + re-naming. much more to do. + +2012-02-15 17:12 +0000 [r2058] Stevan_White: + + * FreeSerif.sfd: Gujurati: removed anusvara and + nukta lookups in preference of positioning. general glyph + clean-up. deleted a bunch of unused characters. Oriya: general + glyph clean-up. + +2012-02-14 23:59 +0000 [r2057] Stevan_White: + + * FreeSerif.sfd: Gujarati: Again, from Samak + Gujarati font (full GPL 3.0 with font exception) Scaled slightly + to fit bounds, moved some letters, renamed a few. Lots more to + do. + +2012-02-14 22:35 +0000 [r2056] Stevan_White: + + * FreeSerif.sfd: reverting previous commit. + lookup tables somehow got damaged + +2012-02-14 20:40 +0000 [r2055] Stevan_White: + + * FreeSerif.sfd: Gujarati: From Samak Gujarati + font (full GPL 3.0 with font exception) Scaled slightly to fit + bounds, moved some letters, renamed a few. Lots more to do. + +2012-02-14 19:37 +0000 [r2054] Stevan_White: + + * FreeSans.sfd: Gujarati: Deleted range, over + questions of its provenance. Tut mir leid. + +2012-02-13 23:16 +0000 [r2052-2053] Stevan_White: + + * FreeSerif.sfd: Tamil: cleaned up 'virama' + glyph. + + * FreeSerif.sfd: Gurmukhi: cleaned up 'aa' + glyph. + +2012-02-13 23:11 +0000 [r2051] Stevan_White: + + * FreeSerif.sfd: Gurmukhi: cleaned up 'a' glyph. + +2012-02-13 23:06 +0000 [r2049-2050] Stevan_White: + + * FreeSerif.sfd: Oriya: compacted auxiliary + glyphs a bit. + + * FreeSerif.sfd: Oriya: removed most holonto and + nukta forms in preference for positioning lookups + +2012-02-13 21:08 +0000 [r2048] Stevan_White: + + * FreeSans.sfd: Gujarati: made to validate + +2012-02-13 20:55 +0000 [r2047] Stevan_White: + + * FreeSans.sfd: Gujarati: regularized horizontal + placement and spacing, mostly increasing spacing a bit. Got rid + of nukta substitution table in favor of positioning lookup; + likewise with all anusvara lookups. The glyphs of this range are + still very erratic, and the weight is substantially greater than + that of the rest of the face. + +2012-02-13 13:56 +0000 [r2046] Stevan_White: + + * FreeSans.sfd: Gujarati: shifted entire range + up by 44EM, so it didn't dangle so. Fiddled with mark placement. + +2012-02-13 00:01 +0000 [r2045] Stevan_White: + + * FreeSerif.sfd: Gurmukhi: improved vowel a. + +2012-02-12 23:29 +0000 [r2044] Stevan_White: + + * FreeSerif.sfd: Gurmukhi: replaced range with + glyphs from 'singh' metafont by Amarjit Singh + http://www.tex.ac.uk/tex-archive/language/gurmukhi/ The 'singh' + font is properly GPL. And the overall look is much more like + serif than what had been there. Status: added a few letters and + tables. Two marks were unrepresented in 'singh', and are + leftovers. I made a ya_halant and a ra below-form. Also made + substitution and positioning tables. Worst: the vowel 'a' is very + messed up -- much too heavy; hand-drawn. Will have to replace it. + Also need to review the missing marks. Pity there's no bold... + +2012-02-12 22:02 +0000 [r2043] Stevan_White: + + * tools/utility/metafont/bulk_eps_import.py (added), + tools/utility/metafont (added): Tools for + extracting glyphs from metafont files + +2012-02-10 23:22 +0000 [r2042] Stevan_White: + + * FreeSansBold.sfd: Gurmukhi: more of same. + +2012-02-10 23:18 +0000 [r2041] Stevan_White: + + * FreeSansBold.sfd: Gurmukhi: adjusted GPOS + entries + +2012-02-10 22:58 +0000 [r2040] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd: Gurmukhi: various tweeks to + ligatures. Gujarati: various tweeks to ligatures. + +2012-02-10 19:01 +0000 [r2039] Stevan_White: + + * FreeSansBold.sfd: Gurmukhi: toward version in + medium. Geometric Shapes: made dotted circle. + +2012-02-10 17:57 +0000 [r2038] Stevan_White: + + * FreeSerif.sfd: Oriya: added letters to + complete range. re-named letters for consistency with other indic + languages. fixed a broken table. + +2012-02-10 16:46 +0000 [r2037] daniel_j: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Unicode 6.1 addition in + FreeSerif: H-hook (U+A7AA) for Chadian languages + +2012-02-10 15:46 +0000 [r2036] Stevan_White: + + * FreeSerif.sfd: Oriya: Re-introduced, using + Samak Oriya, a GPL v.3 + font exception. + http://sarovar.org/projects/samyak/ Already the original is + altered in several ways. The glyphs need a lot of work. + +2012-02-10 12:03 +0000 [r2035] Stevan_White: + + * tools/report/OpenType/UnicodeRanges.py: corrected + Private Use range + +2012-02-09 18:50 +0000 [r2034] Stevan_White: + + * FreeSans.sfd: Gujarati: added abbreviation + character + +2012-02-09 18:29 +0000 [r2033] Stevan_White: + + * FreeSans.sfd: Gurmukhi: named glyphs better. + Malayalam: corrected problems caused by recent inconsistent + naming. + +2012-02-09 16:36 +0000 [r2032] Stevan_White: + + * FreeSans.sfd: Gujurati: named characters + better -- makes it easier to see table problems. Found one error + in tables, fixed. There are others. + +2012-02-08 19:55 +0000 [r2031] Stevan_White: + + * FreeSerif.sfd: Tamil: several new tables in + effort to resolve spacing bug. + +2012-02-08 15:37 +0000 [r2030] Stevan_White: + + * FreeSerif.sfd: Tamil: fixed shrii ligature + +2012-02-08 15:15 +0000 [r2029] Stevan_White: + + * FreeSerif.sfd: Tamil: Toward resolution of bug + #35479: Tamil in FreeSerif: some ligatures wrong + https://savannah.gnu.org/bugs/index.php?35479 Removed GSUB tables + about positioning the virama; implemented this with a GPOS table + and anchor points. Corrected tables for sshri, kss ligatures. + Toward resolution of bug #35480: Tamil in FreeSerif: placement of + vowel marks poor https://savannah.gnu.org/bugs/index.php?35480 + Made a vertical ii sign, made a contextual chain that replaces + the normal ii with this one for certain letters. + +2012-02-08 01:41 +0000 [r2028] Stevan_White: + + * FreeSerif.sfd: Malayalam: Added subtable for + nta (mal_n1rh), Separated 'psts' subtable into u and uu ones, and + everything else, hoping somehow to deal with the orthographic + reform. + +2012-02-07 23:52 +0000 [r2026-2027] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Malayalam: some additions from + recent Unicode (historical letters) Rearranged akhan lookups. + + * tools/report/OpenType/UnicodeRanges.py: Recent + Unicode additions + +2012-02-06 19:24 +0000 [r2025] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd: Latin: Fixed broken + kerning. Problem was: there was an entry for 'f' as the first + letter in two subtables of the same lookup. The second subtable + was ignored, even though there was no match for the second letter + in the first lookup. That is, within a kern lookup, the first + letters of the pairs should be unique. + +2012-02-06 14:41 +0000 [r2023-2024] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: Latin: put dflt back in + Standard Ligature language list + + * FreeSerif.sfd: Devanagari: added glyphs for + Bompay, Calcutta, Nepali styles from velthuis. made Style Set + lookups for them. Latin: put dflt back in the Standard Ligatures + language list + +2012-02-05 23:59 +0000 [r2022] Stevan_White: + + * FreeSerifBold.sfd: Devanagari: named more + Unicode glyphs, tried to make tables more like latest Serif. Know + of one inconsistency remaining. + +2012-02-05 12:18 +0000 [r2021] Stevan_White: + + * FreeSerif.sfd: Devanagari: re-worked overlarge + reph-anudatta. Regularized table naming. + +2012-02-04 21:50 +0000 [r2019-2020] Stevan_White: + + * FreeSerif.sfd: Devanagari: lookup tables -- + for the first time, test matches big table of ligatures in + velthuis (wrt Sanskrit and Hindi). + + * FreeSans.sfd: Devanagari: named a bunch of + Unicode glyphs + +2012-02-03 15:09 +0000 [r2018] Stevan_White: + + * FreeSerif.sfd: Devanagari: another + re-arrangement of tables for velthuis compliance. problems + persist. + +2012-02-01 20:59 +0000 [r2017] Stevan_White: + + * FreeSerif.sfd: Devanagari: complete + re-structuring of tables in attempt to resemble better the specs + about Indic tables, and produce ligatures of the velthuis font. + Hebrew: Support raising of Yiddish vowel marks. + +2012-02-01 19:29 +0000 [r2016] daniel_j: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Unicode 6.1 additions + in FreeSans: - Tifinagh Ye, Yo - Armenian dram - African H with + hook + +2012-01-31 12:02 +0000 [r2015] Stevan_White: + + * FreeSansBoldOblique.sfd: Hebrew: last commit + accidentlly widened right side of many letters + +2012-01-31 11:51 +0000 [r2014] Stevan_White: + + * FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Hebrew: more + adjustment of points: bold--shifted letters to right + +2012-01-31 11:08 +0000 [r2013] Stevan_White: + + * FreeSansOblique.sfd: Hebrew: some adjustment + of mark positioning + +2012-01-31 10:58 +0000 [r2012] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: Hebrew: adjustments to + positioning marks; italic moved letter yod + +2012-01-31 10:33 +0000 [r2011] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: Hebrew: deleted incorrect + ligature lookup + +2012-01-31 10:24 +0000 [r2010] Stevan_White: + + * FreeSans.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Hebrew: deleted + incorrect ligature lookup + +2012-01-31 10:13 +0000 [r2009] Stevan_White: + + * FreeSansBold.sfd: Hebrew: adjustments to mark + positioning, a bit of tidying of letters. Latin: deleted a + mistakenly copied table. + +2012-01-31 09:47 +0000 [r2008] Stevan_White: + + * FreeSansBold.sfd: Hebrew: added mark + positioning + +2012-01-31 00:15 +0000 [r2007] Stevan_White: + + * FreeSans.sfd: Hebrew: should rememdy bug + #35409: Incorrect placement of khirik-yud for Yiddish in FreeSans + (At least for FreeSans medium) + +2012-01-28 14:26 +0000 [r2006] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Devanagari: roman--adjusted + auxiliary glyph names to better fit bold bold: several + corrections + +2012-01-28 12:37 +0000 [r2005] Stevan_White: + + * FreeSerifBold.sfd: Devanagari: various repairs + to glyphs and tables + +2012-01-28 01:36 +0000 [r2004] Stevan_White: + + * FreeSerifBold.sfd: Devanagari: added glyphs + from velthuis font's dvngb10.pfb, added subtables from FreeSerif. + Still plenty missing. + +2012-01-27 22:13 +0000 [r2003] Stevan_White: + + * FreeSerif.sfd: Devanagari: a couple more + tables to handle velthuis corner cases. + +2012-01-26 22:52 +0000 [r2002] Stevan_White: + + * FreeSerif.sfd: Devanagari: fixed a few lookup + problems. several more remain. + +2012-01-25 14:24 +0000 [r2000-2001] Stevan_White: + + * FreeSerif.sfd: Devanagari: adjustments to mark + positioning + + * FreeSans.sfd: Latin: adjustments to accents + Devanagari: re-working tables for better support of Hindi vs + Sanskrit + +2012-01-25 12:09 +0000 [r1999] Stevan_White: + + * FreeSerif.sfd: Devanagari: Named some letters; + some table clean-up. Devanagari Extended: Added combining + cantillation marks. + +2012-01-24 15:02 +0000 [r1998] Stevan_White: + + * FreeSerif.sfd: Devanagari: Most of the + previous commits about Hindi were in error: two columns of the + velthuis manual for Modern Hindi and Old Hindi were swapped. This + now implements Modern Hindi, except for one conjunct. Old Hindi + conjuncts are moved to separate tables, but Old Hindi is not + specifically supported. + +2012-01-23 18:48 +0000 [r1997] Stevan_White: + + * FreeSerif.sfd: Devanagari: several table + corrections, based on new tests. + +2012-01-23 10:18 +0000 [r1996] Stevan_White: + + * FreeSerif.sfd: Devanagari: table for + consonants that don't take half-form, other conjunct table + tweeks. + +2012-01-21 23:20 +0000 [r1995] Stevan_White: + + * FreeSerif.sfd: Devanagari: many small + corrections to GSUB. + +2012-01-20 13:44 +0000 [r1994] Stevan_White: + + * FreeSerif.sfd: Devanagari: Sanskrit/Hindi + distinction now seems to be working. (Was order of two 'akhn' + tables, one specialized for Sanskrit. Don't understand--thought + always all matching tables were executed.) + +2012-01-20 01:41 +0000 [r1993] Stevan_White: + + * FreeSerif.sfd: Devanagari: some clean-up, + split the akhn table into general (modern Hindi) and Sanskrit. + But not the Sanskrit doesn't activate in any environment, with + lang='sa'. However, seems to work for Hindi. + +2012-01-19 16:00 +0000 [r1992] Stevan_White: + + * FreeSerif.sfd: Devanagari: more tweeks to + rakaar slash + +2012-01-19 15:30 +0000 [r1991] Stevan_White: + + * FreeSerif.sfd: Devanagari: corrected simple + Rakaar forms again + +2012-01-19 13:52 +0000 [r1990] Stevan_White: + + * FreeSerif.sfd: Devanagari: corrected spacing + problem with combining rakaar slash. + +2012-01-19 00:52 +0000 [r1989] Stevan_White: + + * FreeSerif.sfd: Devanagari: fixed last + consonant-virama-ra conjuncts + +2012-01-19 00:32 +0000 [r1988] Stevan_White: + + * FreeSerif.sfd: Devanagari: fixed + consonant-virama-consonant-virama conjuncts + +2012-01-19 00:04 +0000 [r1987] Stevan_White: + + * FreeSerif.sfd: Devanagari: much done on tables + for compound letters. a couple of compounds were corrected. + +2012-01-18 14:40 +0000 [r1986] Stevan_White: + + * FreeSerif.sfd: Devanagari: Much messing with + combined forms for vowels+rakh, finally got features going for + distinction of Rakaar slash vs Rakaar below mark. + +2012-01-16 00:36 +0000 [r1985] Stevan_White: + + * FreeSerif.sfd: Devanagari: more lookups + working. Still a couple of letters wrong. + +2012-01-14 22:43 +0000 [r1984] Stevan_White: + + * FreeSerif.sfd: Devanagari: with help of Z. + Wagner, and a TeX cmap file making the connection betwen + conjuncts in the Velthuis font and Unicode, inserted the Velthuis + au auxiliary glyphs and made lookup tables Mostly working. + +2012-01-13 12:08 +0000 [r1983] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Devanagari: (sans) better names + for a couple of characters, (serif) made names more like sans, + added Kashmiri letters to complete Unicode 6.0 range + +2012-01-13 00:25 +0000 [r1982] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: PS: Added UniqueId TT + Names: Added UniqueID Devanagari: (serif) added ABVM, BLWM tables + and anchors Devanagari: (sans) small tweaks mostly regarding mark + placement + +2012-01-10 17:17 +0000 [r1981] Stevan_White: + + * FreeSans.sfd: Devanagari: a couple of + touch-ups: corrected 'abvs' entry for ausign-anusvera. + +2012-01-10 16:12 +0000 [r1980] Stevan_White: + + * FreeSans.sfd: Devanagari: re-named most + auxiliary glyphs to make tables more sensible. + +2012-01-10 12:56 +0000 [r1979] Stevan_White: + + * FreeSans.sfd: Devanagari: simplified and + regularized some glyph names + +2012-01-10 02:07 +0000 [r1978] Stevan_White: + + * FreeSans.sfd: Gurmukhi: tried to get marks + under control. Added GPOS tables, anchors. + +2012-01-10 00:48 +0000 [r1977] Stevan_White: + + * FreeSans.sfd: Devanagari: copied a few + ligatures that were in gargi but not in FreeSans. There are still + a few more, but I'm not clear about them. Tables: moved auxiliary + letters for Indic around a bit. + +2012-01-09 20:56 +0000 [r1976] Stevan_White: + + * FreeSans.sfd: Indic tables: rearranged + Devanagari: re-named the GPOS anchors Lagin: iogonek lookup had + gotten somehow fouled up + +2012-01-08 01:32 +0000 [r1975] Stevan_White: + + * FreeSerif.sfd: Devanagari: copied in rest of + Unicode chars from velthuis font dvng10.pfb with advice from + ZdenÄ›k Wagner. Next plan: copy in ligatures from same file and + use a cmap file provided by ZdenÄ›k to construct a basic GSUB + table. + +2012-01-08 00:25 +0000 [r1974] Stevan_White: + + * FreeSerif.sfd: Latin, Cyrillic: tweeks to + accent marks. Devanagari: beginning to replace range with + Velthuis font. + +2012-01-07 19:42 +0000 [r1973] Stevan_White: + + * FreeSans.sfd: Devanagari: widened space + between verticals in U+0906 by request. Made a lot of references + in range. Added Kashmiri letters from latest Unicode version. + +2012-01-03 20:17 +0000 [r1972] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Combining Diacritics: + forgot to add Cyrillic mark for previous commit + +2012-01-03 20:08 +0000 [r1971] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Cyrillic: Added mark + for diacriticals on capital letters. toward bug #35225: Combining + Diacritical Marks improperly positioned for Cyrillic capital + letters https://savannah.gnu.org/bugs/?35225 Latin: re-thought + spacing in bold, bold oblique, and re-positioned many accents for + legibility + +2011-12-31 20:09 +0000 [r1970] Stevan_White: + + * FreeSans.sfd: Miscellaneous Symbols: hammer + and sickle, smileface, frown face, courtesy Sander van Geloven + +2011-12-28 14:05 +0000 [r1969] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: Mathematical Operators: + revision of v. and h. placement and spacing. Reduced height of + partialdiff in some faces. + +2011-12-28 13:40 +0000 [r1968] Stevan_White: + + * FreeSerif.sfd: Mathematical Operators: lowered + nabla, made partialdiff of normal height + +2011-12-25 13:54 +0000 [r1967] Stevan_White: + + * FreeSans.sfd: Miscellaneous Symbols: uni2639 + -- a (first) contribution by Sander van Geloven + +2011-12-25 13:37 +0000 [r1966] Stevan_White: + + * FreeSerif.sfd: Mathematical Operators: + improved symbols having vertical lines + +2011-12-19 13:55 +0000 [r1965] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: General Punctuation: + regularize width of bullet chars Geometrical Shapes: made new and + regularized width of bullet chars Mathematical Operators: messed + with bullet-lige operators + +2011-12-18 17:35 +0000 [r1964] Stevan_White: + + * FreeSerif.sfd: Mathematical Operators: fixed + some spacing issues. + +2011-12-18 13:52 +0000 [r1963] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd: Latin, Punctuation: + slash and some vertical lines were wrongly spaced. + +2011-12-17 01:39 +0000 [r1962] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Mathematical Operators: in + sans, added some angle glyphs by request. General vertical + metrecs: fixed some mistakes, re-thought overall. + +2011-12-16 12:17 +0000 [r1961] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Technical Symbols: made + extensible mathematical symbol pieces for sans, adjusted + horizontal bracket in serif. + +2011-12-16 00:10 +0000 [r1960] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Sans: glyphwise same + vertical adjustments as with Serif, same caveats. All faces: + re-thought metrics. Hope they make better sense now. + +2011-12-15 18:02 +0000 [r1959] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: General alterations to make + fit in vertical bounds (-300,900). Problems remain in Sinhala and + Malayalam. Esp. note two Bengali "vocalic" glyphs, used only for + transcription of Sanskrit, were altered and moved. + +2011-12-14 22:31 +0000 [r1958] Stevan_White: + + * FreeSerif.sfd: Malayalam: some glyph clean-up + +2011-12-14 21:49 +0000 [r1957] Stevan_White: + + * FreeSerif.sfd: Changed ascent and descent of a + number of letters out of bounds (several in Arabic, also + Devnagari). The worst are in Malayalam though, and they remain. + +2011-12-14 15:59 +0000 [r1956] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Supplementary + Punctuation: made a few new ones + +2011-12-12 20:52 +0000 [r1955] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd: Latin Extended-B: + Same with tz ligature as in roman + +2011-12-12 18:42 +0000 [r1954] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Latin Extended-B: + re-thought replacement for tz ligature in German. Note: the + Unicode tz character is used in Mayanist texts. + +2011-12-11 23:25 +0000 [r1953] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Complete set of lowercse + latin super/subscripts for normal and bold, with 'subs' and + 'sups' lookups. + +2011-12-11 20:59 +0000 [r1952] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin: (roman) re-thought + tz ligature Number Forms: adjusted vulgar fractions table, to + make all work in xelatex + +2011-12-09 11:22 +0000 [r1951] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin: avoid fi, fl etc + ligatures in Turkish. Re-thought TZ, tz ligatures. + +2011-12-09 00:08 +0000 [r1950] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Proportional Numbers, + Slashed Zero + +2011-12-08 23:57 +0000 [r1948-1949] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Greek: added digamma + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Serif faces: lots of work + on numeric substitutions 'onum' Oldstyle Figures 'pnum' + Proportional Numbers 'tnum' Tabular Numbers 'lnum' Lining Figures + 'zero' Slashed Zero Cyrillic for Bulgarian: activated new-style + forms with 'ss01' Style Set 1 Cyrillic regular: Bit of kerning. + (FontForge still complains about non-Unicode glyphs) + +2011-12-06 22:40 +0000 [r1947] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: More additions to 'sups' + table in roman, bold. Added a few Phonetic Extensions to + italic... but this should wait for a set of small caps. + +2011-12-06 21:47 +0000 [r1945-1946] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Changed Bulgarian lookup + tag from cv00 to ss01 bold: adjusted some superscript letter + spacings, minute, prime spacing normal: added proportional + numerals, tables tnum, lnum, pnum adjusted widths of some + superscript letters, tweeked some others added tables sups, subs + + * FreeSans.sfd: Latin: some kerning + +2011-12-05 18:50 +0000 [r1944] Stevan_White: + + * FreeSansBold.sfd: Latin etc: re-spaced, + re-kerned letter a + +2011-12-05 13:19 +0000 [r1943] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: Cyrillic: tweeks to glyphs, + spacing for alternate Bulgarian letters. + +2011-12-05 12:47 +0000 [r1942] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: Cyrillic: kerning and spacing. + +2011-12-05 10:27 +0000 [r1941] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Cyrillic: more work on + alternative letters for Bulgarian, Serbian + +2011-12-04 23:46 +0000 [r1939-1940] Stevan_White: + + * FreeSerif.sfd: Cyrillic: adjust spacing of + some Bulgarin letters + + * FreeSerifBold.sfd: Latin: bit o kerning + +2011-12-04 14:00 +0000 [r1938] Stevan_White: + + * FreeSerif.sfd: Cyrillic: expanded/corrected + letters for Bulgarian alternate forms. + +2011-12-03 22:45 +0000 [r1937] Stevan_White: + + * FreeSerif.sfd: Cyrillic: alternative small + letters for Bulgarian, with lookup table. + +2011-12-03 18:04 +0000 [r1936] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansBoldOblique.sfd, + FreeMonoBoldOblique.sfd: glyph clean-ups + related to recent commits, toward validation + +2011-12-03 17:29 +0000 [r1935] Stevan_White: + + * FreeSansBoldOblique.sfd: Mathematical + Operators: two were out of place + +2011-12-03 17:25 +0000 [r1934] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Arrows: made new + ones, corrected others + +2011-12-03 15:48 +0000 [r1933] Stevan_White: + + * FreeSerif.sfd: Currency Symbols: added + spesmilo + +2011-12-03 15:04 +0000 [r1932] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansOblique.sfd, + FreeSerifBold.sfd: Arrows: lots of additions, + corrections + +2011-12-03 13:32 +0000 [r1931] Stevan_White: + + * FreeSansOblique.sfd: Arrows: made glyphs so + range is similar to rest of Sans. + +2011-12-03 12:59 +0000 [r1930] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Geometric Shapes: + made minimal set. Mathematical Operators: made a few more glyphs, + corrected a couple. Number Forms: deleted range in bold faces -- + can't properly represent all. + +2011-12-03 01:02 +0000 [r1929] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMonoOblique.sfd: Miscellaneous Technical + Symbols: made a few important ones. + +2011-12-03 00:33 +0000 [r1928] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Mathematical + Operators: made a few more glyphs. some clean-up. + +2011-12-02 19:12 +0000 [r1927] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Mathematical + Operators: revised a few glyphs in medium, got a sort of minimal + set into other styles + +2011-12-02 15:03 +0000 [r1926] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Mathematical + Operators: made yet more. + +2011-12-02 13:57 +0000 [r1925] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Mathematical Operators: + revised a few in medium (weight and spacing), made a lot of new + characters for other styles. + +2011-12-02 10:53 +0000 [r1924] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd: Mathematical Operators + (etc): more operators (bold), revisions (medium) + +2011-12-02 02:32 +0000 [r1923] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd: Mathematical Operators: + tried to make of more uniform weight (medium) made several new + (bold) + +2011-12-01 20:22 +0000 [r1921-1922] Stevan_White: + + * FreeSerif.sfd: Combining Half Marks: adjusted + mark anchors + + * FreeMono.sfd: Cyrillic: fix to old letter + Arabic: hah_final made all contours- no refs + +2011-12-01 19:34 +0000 [r1919-1920] Stevan_White: + + * tools/generate/TrueType, + tools/generate/OpenType, + tools/generate/MacTT: vim-style file type comment + + * tools/generate/buildutils.py: Version string to + comply with OpenType recommendation. + +2011-12-01 18:37 +0000 [r1918] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMonoBoldOblique.sfd: Misc. Math. Symbols: + made reverse logical not (req. for some MS codepages) Math. + Operators: made a few while I was around + +2011-11-30 20:50 +0000 [r1917] Stevan_White: + + * FreeMono.sfd, + FreeMonoOblique.sfd: Cyrillic: made uk letters + digraph, due to complaint by user + +2011-11-30 13:20 +0000 [r1916] Stevan_White: + + * tools/report/OpenType/UnicodeRanges.py: Corrected + Combining Half Marks + +2011-11-30 13:15 +0000 [r1915] Stevan_White: + + * FreeSerif.sfd: Combining Half Marks: made + letters, filled range, added mark anchors + +2011-11-30 12:26 +0000 [r1914] Stevan_White: + + * Makefile: targets for woff packages + +2011-11-30 12:15 +0000 [r1913] Stevan_White: + + * README: Added lines on WOFF format. + +2011-11-30 12:05 +0000 [r1912] Stevan_White: + + * notes/webfont_guidelines.txt: added WOFF + +2011-11-28 11:41 +0000 [r1911] Stevan_White: + + * FreeSerif.sfd: Latin: some light kerning + +2011-11-28 00:17 +0000 [r1910] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Grid Fitting: made + uniformly Version 1 ("Optimized for Cleartype" won't stay on in + FontForge ?) + +2011-11-27 20:52 +0000 [r1909] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSans.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: general glyph alterations + toward validation. some of these are due to some bug in FontForge + algorithms -- nothing was apparently wrong with the glyphs. + +2011-11-27 00:34 +0000 [r1907-1908] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin: some kerning + + * sfd/Makefile, + tools/test/checkGlyphNumbers.py: Made to function + either from directory or from Makefile. + +2011-11-25 11:38 +0000 [r1906] Stevan_White: + + * FreeSerifBold.sfd: correction to 'ccmp' table + for Vietnamese 2 + +2011-11-25 11:29 +0000 [r1905] Stevan_White: + + * FreeSerif.sfd: Added some fractions to the + 'frac' lookup + +2011-11-25 11:17 +0000 [r1904] Stevan_White: + + * FreeSerif.sfd: corrected some entries in + 'frac' lookup + +2011-11-25 11:08 +0000 [r1903] Stevan_White: + + * FreeSerif.sfd: Number Forms: adjusted diagonal + fractions Cyrillic: clean-up of Ksi contour + +2011-11-25 10:36 +0000 [r1901-1902] Stevan_White: + + * tools/report/kernclasses.py (added): Tabular + report of kerning classes in fonts + + * FreeSerifBoldItalic.sfd: Latin: named 2 glyphs + referred to in kern tables + +2011-11-25 10:16 +0000 [r1900] Stevan_White: + + * tools/test/checkGlyphNumbers.py: corrected for + directory move + +2011-11-24 18:35 +0000 [r1899] Stevan_White: + + * FreeSans.sfd: Cyrillic: made Ksi, ksi + +2011-11-24 17:58 +0000 [r1898] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd: Latin: for f and + other hooked letters: special punctuation lookup + +2011-11-24 17:39 +0000 [r1896-1897] Stevan_White: + + * FreeSerif.sfd: General Punctuation: adjusted, + regularized spacing of primes + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd: Latin: f and other + hooked letters: put more of hook into kerning + +2011-11-24 16:51 +0000 [r1895] Stevan_White: + + * FreeSerif.sfd: Cyrillic: improve spacing of + Ksi + +2011-11-24 15:05 +0000 [r1894] Stevan_White: + + * FreeSans.sfd: Cyrillic: Made some Old Church + Slavonic letters, by request. + +2011-11-23 15:12 +0000 [r1893] Stevan_White: + + * FreeSans.sfd: Malayalam: glyph clean-up toward + validation + +2011-11-23 01:19 +0000 [r1892] Stevan_White: + + * FreeSans.sfd: Malayalam conjuncts: numerous + contour improvements toward validation + +2011-11-22 00:25 +0000 [r1890-1891] Stevan_White: + + * tools/utility/log2changelog_CVS.pl (removed): This + is what I meant to do in the previous commit + + * tools/utility/log2changelog.pl (removed), + tools/utility/log2changelog_CVS.pl (added): No + need for this script now the VC is changed to SVN; there are + other tools for SVN that perform the same task. + +2011-11-21 19:01 +0000 [r1889] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSansOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: More individual glyph + tweeks toward validation. (Discovered trigger to one FontForge + bug: contour 1st node at sharp point.) + +2011-11-21 11:15 +0000 [r1888] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Overall glyph tweeks + to improve FontForge validation. Note some of these can be called + messy node problems, others are due to some malfunction of + FontForge. + +2011-11-20 14:36 +0000 [r1887] Stevan_White: + + * ChangeLog: brought up to date + +2011-11-18 09:55 +0000 [r1886] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Unfortunately several + unrelated changes got balled up in this commit. Generally, slight + re-wording of license (program ->font) Serif, Sans: Latin, Greek, + Cyrillic and phonetic: substantial changes to glyph bearings, + attempt to normalize; re-did kerning angled slightly + hungarianumlaut and double-grave accents toward one another. + lcaron, dcaron, tcaron: prefer an acute accent to apostrophe. + Note this messes up some letters d, l, t with acute, for + languages using IPA. Serif: Cyrillic Ouk: fixed bug #34687: Bad + shape of Cyrillic U+0478 & u+0479 Cyrillic Extended-A: increased + hight of combining marks slightly (regular face only) Italic + Cyrillic: re-did Serbian sha and te with longer line. Bengali, + Tamil, Thai, Ethiopic, Georgian, Cyrillic Extended-B, Latin + Extended-D, Arabic Presentation forms, Letterlike and + Miscellaneous Math Symbols: glyph clean-ups longs: fixed bug + #34841: U+017F LONG S upright a bit wrong Sans: acute, grave, + hungarianumlaut and double-grave accents on capitals somewhat + shorter to better fit in the line, + +2011-11-18 09:46 +0000 [r1885] Stevan_White: + + * FreeMono.sfd: Arabic: positional + substitutions; added a couple of characters + +2011-11-12 14:48 +0000 [r1883-1884] Stevan_White: + + * sfd/Makefile: target for making WOFF files + + * tools/generate/WOFF: removed one unused package + better documentation + +2011-11-12 14:37 +0000 [r1882] Stevan_White: + + * tools/generate/WOFF: removed debug strings + +2011-11-12 14:34 +0000 [r1881] Stevan_White: + + * tools/generate/WOFF (added): Generator for Web + Open Font Format files + +2011-11-05 16:43 +0000 [r1880] Stevan_White: + + * FreeMono.sfd: Arabic: addded three letters + +2011-11-05 15:06 +0000 [r1879] Stevan_White: + + * FreeMono.sfd: Arabic: Many incorrectly 0-width + chars made full width. Implemented marks, mostly for vertical + mark placement. + +2011-11-04 22:28 +0000 [r1878] Stevan_White: + + * FreeMono.sfd: Arabic: added several + characters. nearing functionality of serif version. + +2011-11-04 14:55 +0000 [r1877] Stevan_White: + + * FreeMono.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Arabic: fixed several + substitution and glyph problems. See discussion + https://savannah.gnu.org/bugs/?34190 + +2011-11-03 17:55 +0000 [r1876] Stevan_White: + + * FreeSerifBold.sfd: Arabic: improved meemfinal + +2011-11-03 16:07 +0000 [r1875] Stevan_White: + + * FreeSerif.sfd: Punctuation Suppl: a few + additions. Geometrical Shapes, Math Suppl: mostly spacing. + +2011-11-03 13:18 +0000 [r1873-1874] Stevan_White: + + * tools/report/OpenType/UnicodeRanges.py: typo in + doc + + * FreeSerif.sfd: Removed excess entry for + uni29b4. + +2011-11-03 12:55 +0000 [r1872] Stevan_White: + + * tools/report/OpenType/UnicodeRanges.py: Added to + Supplemental Punctuation + +2011-11-03 12:15 +0000 [r1871] Stevan_White: + + * FreeSerif.sfd: Punctuation: named some glyphs, + re-sized some spaces, added some Supplemental + +2011-11-03 09:48 +0000 [r1870] Stevan_White: + + * tools/utility/fontforge-interp.sh: more doc + +2011-11-03 01:40 +0000 [r1869] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: Glyph clean-up, and change + of problematic glyph names + +2011-11-03 01:21 +0000 [r1868] Stevan_White: + + * tools/test/validate.py: Better exception handling + +2011-11-03 01:09 +0000 [r1867] Stevan_White: + + * FreeSerifBold.sfd: Some glyph clean-up + +2011-11-03 00:59 +0000 [r1866] Stevan_White: + + * FreeSerif.sfd: Some glyph clean-up. + +2011-11-03 00:51 +0000 [r1862-1865] Stevan_White: + + * tools/utility/fontforge-interp.sh (added): Wrapper + for fontforge. + + * tools/test/findBackLayers.py, + tools/test/validate.py, + tools/test/checkGlyphNumbers.py, + tools/test/isMonoMono.py: Call wrapper for + fontforge rather than calling a specific instance. + + * tools/generate/TrueType, + tools/generate/OpenType, + tools/generate/MacTT: Call wrapper for fontforge + rather than calling specific instance + + * tools/report/private_use.py, + tools/report/range_report.py, + tools/report/ligatureLookups.py: Use wrapper for + fontforge rather than calling explicit instance. + +2011-11-03 00:45 +0000 [r1861] Stevan_White: + + * sfd/Makefile: Made to execute fontforge from any + instance in PATH + +2011-11-02 18:32 +0000 [r1859-1860] Stevan_White: + + * FreeSerif.sfd: Arabic: named some glyphs + + * FreeMono.sfd: Arabic: corrected slot for one + letter. + +2011-11-02 00:56 +0000 [r1858] Stevan_White: + + * FreeMono.sfd: Arabic: most of intermediate + forms with lookups: A and B. Some general contour cleanup. + +2011-10-31 22:12 +0000 [r1857] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Cyrillic: added + 'locl' lookup for Serbian/Macedonian 'be' + +2011-10-31 19:34 +0000 [r1855-1856] Stevan_White: + + * FreeSerif.sfd: Spacing Modifier Letters: + horizontal space adjustments + + * FreeSans.sfd: Latin, Diacritics, etc: + hungarian umlaut, double grave adjustments + +2011-10-31 19:27 +0000 [r1854] Stevan_White: + + * FreeMono.sfd: Arabic: Drew most of main range. + +2011-10-31 17:22 +0000 [r1853] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: Latin, Diacriticals, etc: + adjustment on hungarian umlaut, double grave + +2011-10-30 16:25 +0000 [r1852] Stevan_White: + + * FreeSerif.sfd: Arabic: removed Arabic-only + ligatures lookup, as it seems to confuse Pango. + +2011-10-30 12:51 +0000 [r1851] Stevan_White: + + * FreeSerif.sfd: Arabic: changed size of tatweel + +2011-10-30 11:07 +0000 [r1850] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd: Cyrillic: cursive + Macedonian gje. See bug 34688. + https://savannah.gnu.org/bugs/?34688 + +2011-10-29 23:12 +0000 [r1849] Stevan_White: + + * FreeSerif.sfd: Arabic Presentation Forms-B: + adjustment to meem-final. + +2011-10-29 22:01 +0000 [r1848] Stevan_White: + + * FreeSerif.sfd: Spacing Modifier/Combining + Diacritics: double-gramve and Hungarian umlaut, to make them less + extremely wide and hard to accommodate. Made less steep, at + slightly different angles, following advice at + http://typophile.com/node/78623 + http://diacritics.typo.cz/index.php?id=24 + +2011-10-29 18:53 +0000 [r1847] Stevan_White: + + * FreeSerif.sfd: Arabic: Re-worked final meem. + Put Arabic-only ligatures in Arabic-only lookup. Put Allah in a + 'dlig' lookup. Made tatweel shorter. + +2011-10-29 12:09 +0000 [r1846] Stevan_White: + + * FreeSerif.sfd: Arabic: marked some ending + ligatures as Arabic-language only, on advice from a Persan + speaker (comments to bug #34190) + +2011-10-29 06:18 +0000 [r1845] Stevan_White: + + * FreeSerif.sfd: General Punctuation: made + bullet-bullets same width as bullet + +2011-10-29 04:44 +0000 [r1844] Stevan_White: + + * FreeSerif.sfd: Punctuation, Geometric Shapes, + Miscellaneous Symbols, etc.: regularize bullet-like characters + somewhat in width and weight + +2011-10-28 23:51 +0000 [r1843] Stevan_White: + + * FreeSerifBold.sfd: Arabic Extended-A: Added 2 + ligatures + +2011-10-28 22:53 +0000 [r1842] Stevan_White: + + * FreeSans.sfd: Cyrillic Supplement: letters for + Abkhaz and Azerbaijani, and Nivkh. + +2011-10-28 22:16 +0000 [r1841] Stevan_White: + + * FreeMono.sfd: Cyrillic Supplement: letters for + Abkhaz and Azerbaijani + +2011-10-28 21:53 +0000 [r1840] Stevan_White: + + * FreeMono.sfd: Cyrillic: Added Nivkh letters + +2011-10-28 18:10 +0000 [r1839] Stevan_White: + + * tools/utility/special-purpose/makeBraille.py + (added), tools/utility/special-purpose (added), + tools/utility/makeBraille.py (removed): + special-purpose directory for one-shot scripts, included as + examples. + +2011-10-28 12:29 +0000 [r1838] Stevan_White: + + * FreeSansBold.sfd: Latin: small adjustment to + letter spacing + +2011-10-28 11:50 +0000 [r1837] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Arabic: several lookup + corrections thanks to Emmanuel Vallois, see comments to [bug + #34190] Persian characters in FreeSerif not connecting right In + bold, lots of re-namings to make lookups copied from roman work. + +2011-10-27 22:01 +0000 [r1836] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeMono.sfd: Latin (Vietnamese): adjusted + some marks. Latin: SansBold attempts to regularize spacing. + +2011-10-27 16:34 +0000 [r1834-1835] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin: kerning, a bit of + letter spacing + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Latin: much messing + with accents for Vietnamese, some kerning + +2011-10-26 22:42 +0000 [r1833] Stevan_White: + + * FreeSansBold.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin: efforts to limit + height of accents: Making shorter glyphs for some accents for + capital letters. Some compacting of taller stacked glyphs. Made + all lowercase letters' accents fall in the bounds. + +2011-10-26 14:44 +0000 [r1832] Stevan_White: + + * FreeSerifBold.sfd: Combining Diacritics: + adjustments for Serbian Cyrillic + +2011-10-26 14:36 +0000 [r1830-1831] Stevan_White: + + * FreeSans.sfd: Latin, General Punctuation: + attempts to regularize widths and spaces + + * FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Combinind + Diacriticals: corrections to mark placement for Cyrillic Serbian + +2011-10-26 12:39 +0000 [r1829] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Latin: Replaced d-, l-, t-caron + mark with one distinguishable from punctuation Sans: implemented + shorter acute, grave, circumflex, caron for caps + +2011-10-26 10:20 +0000 [r1828] Stevan_White: + + * FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Cyrillic: adjusted + mark anchors + +2011-10-26 02:16 +0000 [r1827] Stevan_White: + + * FreeSansBoldOblique.sfd: General Punctuation: + got rid of minor build warning + +2011-10-26 02:13 +0000 [r1826] Stevan_White: + + * FreeMono.sfd: Greek: got rid of build warning + +2011-10-26 01:56 +0000 [r1825] Stevan_White: + + * FreeSerif.sfd: Punctuation, Spacing + Diacritical Marks: worked on widths + +2011-10-25 21:28 +0000 [r1822-1824] Stevan_White: + + * tools/generate/TrueType, + tools/generate/OpenType, + tools/generate/buildutils.py, + tools/generate/MacTT: Again trying to set keywords + + * tools/generate/TrueType, + tools/generate/OpenType, + tools/generate/buildutils.py, + tools/generate/MacTT: Added Date svn keyword + + * tools/generate/TrueType, + tools/generate/OpenType, + tools/generate/buildutils.py, + tools/generate/MacTT: Added Revision keyword + +2011-10-25 21:13 +0000 [r1821] Stevan_White: + + * tools/generate/TrueType, + tools/generate/OpenType, + tools/generate/buildutils.py (added), + tools/generate/MacTT: Implemented cleaned-up + Revision string + +2011-10-25 20:10 +0000 [r1820] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Cyrillic: added marks for + Serbian; adjusted others + +2011-10-25 19:19 +0000 [r1819] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Cyrillic: added marks + for Serbian to roman, added mark positioning to non-roman + +2011-10-25 19:02 +0000 [r1818] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd: Adjusted the font family + class. some kerning adjusted some marks. + +2011-10-25 18:42 +0000 [r1817] Stevan_White: + + * FreeSerifItalic.sfd: Spacing + Modifiers/Diacritics: regularized spacing some + +2011-10-25 14:42 +0000 [r1816] Stevan_White: + + * FreeSerifItalic.sfd: Latin: shifted grave and + acute accents so they could be used independently. Lots more + kerning, More adjustment of extreme characters. + +2011-10-24 20:16 +0000 [r1815] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd: Cyrillic: for Serbian + 'salt' form for italic 'sha' with line below + +2011-10-24 15:02 +0000 [r1814] Stevan_White: + + * FreeSerifItalic.sfd: Cyrillic: removed lookup + for supposed Serbian gje, leaving only the Macedonian form. + +2011-10-23 12:06 +0000 [r1812-1813] Stevan_White: + + * FreeSerif.sfd: Latin, IPA: kerning + + * FreeSerifItalic.sfd: Latin, IPA: horizontal + positioning, kerning Greek, extended: re-positioning of all marks + +2011-10-22 18:24 +0000 [r1811] Stevan_White: + + * FreeSerifItalic.sfd: Cyrillic: re-kerned a bit + +2011-10-21 22:53 +0000 [r1810] Stevan_White: + + * FreeSerifItalic.sfd: Greek, Cyrillic: working + on fallout from re-spacing of Latin + +2011-10-21 20:18 +0000 [r1809] Stevan_White: + + * FreeSerifItalic.sfd: Latin: kerning + +2011-10-20 17:13 +0000 [r1808] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd: Greek, Cyrillic: made Phi, + Ef more distinct, made some overwide glyphs narrower + +2011-10-20 16:44 +0000 [r1806-1807] Stevan_White: + + * FreeSerifItalic.sfd: Latin: starting to mess + with spacing of extreme letters: f g j y + + * FreeMono.sfd: Greek, Cyrillic: make Phi, Ef + more distinct + +2011-10-19 17:24 +0000 [r1805] Stevan_White: + + * FreeSerif.sfd: Diacriticals: corrected + acutecmb placement + +2011-10-19 14:56 +0000 [r1804] Stevan_White: + + * FreeSerif.sfd: Latin/IPA: Reduced size of + hooks on many letters. Reduced spacing of grave, acute (big + overhaul). kerning in IPA for African, Americanist alphabets + +2011-10-18 23:35 +0000 [r1802-1803] Stevan_White: + + * notes/webfont_guidelines.txt: Propset id + + * notes/webfont_guidelines.txt: formatting, propset + ID + +2011-10-18 23:19 +0000 [r1801] Stevan_White: + + * notes/README-downloads.txt, + notes/webfont_guidelines.txt (added), + notes/features.txt: updates added webfont + guidelines + +2011-10-18 22:22 +0000 [r1800] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Latin: more fiddling with + kerning. Fixed longstanding bug with "equals" (had mysterious + mkmk anchors) + +2011-10-18 00:03 +0000 [r1799] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Latin: more fiddling with + kerning + +2011-10-17 23:36 +0000 [r1798] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Latin: More with j and f. + Got rid of small caps kerning, which didn't make much sense + anyway. Tried to space small caps letters a bit better. + +2011-10-17 19:13 +0000 [r1797] Stevan_White: + + * FreeSerif.sfd: Latin: a bit experimental: got + rid of overlap of tails on f and j, compensating with kerning. + More kerning. Increased width of quotesingle. + +2011-10-17 18:10 +0000 [r1796] Stevan_White: + + * FreeSerif.sfd: Latin kerning: added letters to + classes. Have not yet done Latin Extended Additional + +2011-10-17 12:40 +0000 [r1795] Stevan_White: + + * FreeSerifBold.sfd: Latin: kerning re-done + +2011-10-15 18:28 +0000 [r1794] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: Latin: more adjustments to + spacing, and re-introduced kerning, completely re-done since the + disappearance of the tables. Improvement all around. + +2011-10-15 15:28 +0000 [r1793] Stevan_White: + + * FreeSerif.sfd: Latin, Greek, Cyrillic: changes + to L and R bearings to most characters. + +2011-10-15 12:01 +0000 [r1792] Stevan_White: + + * FreeSerifItalic.sfd: Latin, Cyrillic: spacing + of a couple of letters + +2011-10-15 11:24 +0000 [r1791] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd: Latin, Cyrillic: + spacing and kerning of a few letters + +2011-10-15 09:38 +0000 [r1790] Stevan_White: + + * FreeSerifItalic.sfd: Cyrillic: some kerning, + esp. of Serbian letters + +2011-10-15 01:40 +0000 [r1789] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd: Cyrillic: adjusted + boundaries of alternate te + +2011-10-14 11:59 +0000 [r1788] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerifBold.sfd: Cyrillic: Made + Serb/Macedonian 'be' and lookups for it + +2011-10-13 11:20 +0000 [r1787] Stevan_White: + + * FreeSans.sfd: Latin, Greek, Cyrillic: attempt + to make capitals with straight sides spaced even Some clean-up of + Greek letterforms + +2011-10-13 10:18 +0000 [r1786] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: Cyrillic: made special 'be' for + Serbian/Macedonian lookup for gje for italic + +2011-10-12 22:29 +0000 [r1785] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansBoldOblique.sfd: Cyrillic: more tweeks + to Serbian Cyrillic glyphs and similar, re-named Cyrillic + auxiliary glyphs. + +2011-10-12 18:40 +0000 [r1784] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSansOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Cyrillic: Lookups for + localized forms for Serbian/Macedonian. Remedies bug #34537: + Serbian Localized Glyphs https://savannah.gnu.org/bugs/?34537 + Most look-ups were for existing glyphs. In italic also made glyph + for te, like a rotated m with macron. Re-named cyrillic auxiliary + glyphs. + +2011-10-12 12:31 +0000 [r1783] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin, Diacriticals: + adjustments for KwakÌ•wala + +2011-10-11 20:48 +0000 [r1782] Stevan_White: + + * CREDITS: to myself, for Old Italic + +2011-10-11 17:55 +0000 [r1781] Stevan_White: + + * tools/report/OpenType/UnicodeRanges.py: Update for + Old Italic + +2011-10-11 17:00 +0000 [r1780] Stevan_White: + + * FreeMono.sfd: Old Italic: I made letters for + this alphabet based on bits of existing ones. + +2011-10-11 09:55 +0000 [r1779] Stevan_White: + + * FreeSerif.sfd: IPA: adjustment to kerning, + named a few marked letters + +2011-10-11 09:45 +0000 [r1778] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd: Phonetic Extensions: + additions for Saanich/Musqueam + +2011-10-11 09:40 +0000 [r1777] Stevan_White: + + * FreeMono.sfd: Runic: completely re-did range, + to make stem width like rest of font. (ends are still square or + angular rather than round...) Consulted many inscriptions, and + changed form where seemed appropriate. + +2011-10-09 15:26 +0000 [r1776] Stevan_White: + + * FreeSerif.sfd: Kerning of IPA symbols for + Saanich/Musqueam + +2011-10-09 14:03 +0000 [r1775] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Latin, IPA + Extensions, Diacriticals: toward Sannich/Musqueam + +2011-10-09 10:52 +0000 [r1774] Stevan_White: + + * notes/maintenance.txt: about adding binaries to + cvs for web pages + +2011-10-08 22:48 +0000 [r1773] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin/IPA: further tweeks + to letter forms + +2011-10-08 19:36 +0000 [r1772] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin, Phonetic symbols, + Diacriticals: tweeks for Musqueam/Saanich + +2011-10-08 17:33 +0000 [r1771] Stevan_White: + + * FreeSans.sfd: couple of validation issues + +2011-10-08 16:47 +0000 [r1770] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin, Combining Marks, + IPA: lots of changes for Saanich/Musqueam. + +2011-10-08 01:28 +0000 [r1769] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: Latin/IPA: tweeks for + Saanich/Musqueam + +2011-10-07 12:13 +0000 [r1768] Stevan_White: + + * FreeSerif.sfd: Latin and IPA, Phonetic + Extensions: For display of Saanich language, 1) made for + combining right comma on small Latin, some IPA letters, and on + the c-hacek. 2) made ligatures for d, l, and t combined with + U+0313, 3) Adjusted the widths of some of the IPA letters. + +2011-09-30 23:31 +0000 [r1767] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Arabic: more kerning, + re-think letter ae + +2011-09-30 19:50 +0000 [r1766] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSansBold.sfd, + FreeSansBoldOblique.sfd, + FreeSerifBold.sfd: Basic Latin: emboldened + commercial at sign, to remedy bug #23574: Serif Bold: some + symbols not bold https://savannah.gnu.org/bugs/index.php?23574 + +2011-09-30 18:59 +0000 [r1765] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSans.sfd, + FreeSansOblique.sfd, + FreeSerif.sfd: Bengali: made a Ganda mark, to + remedy bug #33983: Bengali Ganda mark is missing + https://savannah.gnu.org/bugs/index.php?33983 + +2011-09-30 18:17 +0000 [r1764] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Arabic: more work on + connecting letters. Re-thought tatween. + +2011-09-30 13:00 +0000 [r1763] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Arabic: un-linking more + auxiliary dependencies. Re-thought 'v' decoration. Hebrew: dagesh + was a little small in bold. + +2011-09-29 22:39 +0000 [r1762] Stevan_White: + + * FreeSerifBold.sfd: Arabic: removed more + unnecessary auxiliary references + +2011-09-29 20:59 +0000 [r1761] Stevan_White: + + * FreeSerifBold.sfd: Arabic: emboldended the + last of the letters (I hope) un-linked some auxiliaries that were + represented by unicode + +2011-09-29 13:37 +0000 [r1760] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Arabic: alterations to + kaf/keheh, kerning to improve spacing + +2011-09-29 10:43 +0000 [r1759] Stevan_White: + + * FreeSerifBold.sfd: Arabic: lots of alterations + to letter shapes, spacing + +2011-09-28 23:03 +0000 [r1758] Stevan_White: + + * FreeSerifBold.sfd: Arabic: moved a lot of + improvements from roman to bold + +2011-09-28 14:13 +0000 [r1757] Stevan_White: + + * FreeSerif.sfd: Arabic: reduced awful space on + left side of free-standing letters + +2011-09-28 00:10 +0000 [r1756] Stevan_White: + + * FreeSerif.sfd: Arabic: regularized alef + variants, maddah, etc. + +2011-09-27 20:47 +0000 [r1755] Stevan_White: + + * FreeSerif.sfd: Arabic: More ligatures, a + couple alternative parentheses, re-worked hah medial + +2011-09-27 09:11 +0000 [r1754] Stevan_White: + + * FreeSerif.sfd: Arabic: added a few ligatures, + re-thought jeem medial, touched up some other letters + +2011-09-26 15:28 +0000 [r1753] Stevan_White: + + * FreeSerif.sfd: Arabic: more small stem width + adjustments + +2011-09-26 14:51 +0000 [r1752] Stevan_White: + + * FreeSerif.sfd: Arabic: kerning was in wrong + direction. + +2011-09-26 13:01 +0000 [r1751] Stevan_White: + + * tools/report/range_report.py, + tools/report/OpenType/UnicodeRanges.py: updated + copyright + +2011-09-26 07:06 +0000 [r1750] Stevan_White: + + * FreeSerif.sfd: Arabic: trying to regularize + stem widths + +2011-09-25 22:33 +0000 [r1749] Stevan_White: + + * FreeSerif.sfd: Arabic: more adjustment, + kerning + +2011-09-25 15:45 +0000 [r1748] Stevan_White: + + * FreeSerif.sfd: Arabic: more tweeks to shapes, + kerning + +2011-09-25 15:16 +0000 [r1747] Stevan_White: + + * FreeSerif.sfd: Arabic: tweeks to letter + shapes, spacing, mark placement + +2011-09-25 01:13 +0000 [r1746] Stevan_White: + + * FreeSerif.sfd: Arabic: shape adjustments to + dal and noon + +2011-09-24 14:58 +0000 [r1745] Stevan_White: + + * FreeSerif.sfd: Arabic: further adjustment of + letter shapes, dot placement + +2011-09-22 21:28 +0000 [r1744] Stevan_White: + + * CREDITS: Credit to Tim Erickson for Syriac glyphs. + Marked many links as being broken with FIXMEs + +2011-09-22 20:48 +0000 [r1743] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Thaana: made bold version, + adjusted spacing + +2011-09-22 20:41 +0000 [r1742] Stevan_White: + + * FreeSerif.sfd: Thaana: made new character from + parts + +2011-09-22 20:28 +0000 [r1741] Stevan_White: + + * tools/report/OpenType/UnicodeRanges.py: correct + Runic + +2011-09-22 18:54 +0000 [r1740] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Arabic: numerous tweeks to + letter shapes. In roman, some more kerning + +2011-09-22 18:16 +0000 [r1739] Stevan_White: + + * FreeSans.sfd: Syriac: filled in some missing + Unicode using Tim Erikson's Carlo Ator font (by his written + permission!) + +2011-09-21 10:13 +0000 [r1738] Stevan_White: + + * FreeSerif.sfd: Arabic: fixed lam-alef ligature + (again) (I think) Made most dots of uniform size adjusted height + of final, isolated hah started on a kerning table + +2011-09-20 17:52 +0000 [r1737] Stevan_White: + + * FreeSerif.sfd: Arabic: made a few more + low-numbered glypys, to finish off the range. + +2011-09-20 12:47 +0000 [r1736] Stevan_White: + + * tools/report/OpenType/OpenType.py (removed), + tools/report/range_report.py, + tools/report/ranges (removed), + tools/report/OpenType/UnicodeRanges.py (added), + tools/report/OpenType (added): Better naming of + packages + +2011-09-19 23:23 +0000 [r1735] Stevan_White: + + * FreeSerif.sfd: Arabic: added some low-numbered + characters: Subtending marks, Arabic ray, Poetic marks + +2011-09-19 17:54 +0000 [r1734] Stevan_White: + + * FreeSerif.sfd: Arabic: drew some more Koranic + annotations. re-thought sizing and placement of some others + +2011-09-19 13:55 +0000 [r1733] Stevan_White: + + * FreeSerif.sfd: Arabic: raised letter noon more + attempts to regularize placement of marks + +2011-09-18 21:22 +0000 [r1732] Stevan_White: + + * FreeSerif.sfd: Arabic: many adjustments, + mostly of marks + +2011-09-18 14:30 +0000 [r1731] Stevan_White: + + * FreeSerif.sfd: Arabic: adjusted marks, added + anchor points for new marks, made a couple of new letters got + ligatures working again replaced Allah and Rial ligatures + +2011-09-17 18:51 +0000 [r1730] Stevan_White: + + * FreeSerif.sfd: Arabic: mostly messing with + marks: shadda combinations seem to be working. + +2011-09-16 19:45 +0000 [r1729] Stevan_White: + + * FreeSerif.sfd: Arabic: corrected some + diacriticals in Presentation Forms-B especially FBBC-FBC1 were + messed up, unfortunately so were a lot of references to those + +2011-09-16 18:36 +0000 [r1728] Stevan_White: + + * FreeSerif.sfd: Arabic: small spacing issues, + tweeks to shapes of medial letters + +2011-09-16 17:56 +0000 [r1727] Stevan_White: + + * FreeSerif.sfd: Arabic: re-did several + combining forms (which I think I drew myself) added some + diacriticals to main range and finished Presentation Forms-B + +2011-09-16 13:54 +0000 [r1726] Stevan_White: + + * FreeSerif.sfd: Arabic: more fussing with marks + +2011-09-16 13:35 +0000 [r1725] Stevan_White: + + * FreeSerif.sfd: Arabic: more fiddling with + marks + +2011-09-16 13:23 +0000 [r1724] Stevan_White: + + * FreeSerif.sfd: Arabic: much fussing with mark + placement. horizontal spacing of waw + +2011-09-16 12:07 +0000 [r1723] Stevan_White: + + * FreeSerif.sfd: Arabic: added mark positioning. + will need to re-think some of the marks. + +2011-09-16 10:18 +0000 [r1722] Stevan_White: + + * notes/maintenance.txt: Changed some CVS info to + SVN info. Still need to test and describe tagging in SVN. + +2011-09-16 09:42 +0000 [r1721] Stevan_White: + + * README: Replaced list of character sets with + character ranges, which makes more sense at this time. + +2011-09-15 23:22 +0000 [r1720] Stevan_White: + + * FreeSerif.sfd: Arabic: big experiment + adjusting baselines of many of the deeper characters. from + looking at "Arabic Calligraphy, Nash script for beginners". Also + shortened reh. + +2011-09-15 21:32 +0000 [r1719] Stevan_White: + + * FreeSerif.sfd: Arabic: a couple more + positional forms, a couple of lookups + +2011-09-15 19:22 +0000 [r1718] Stevan_White: + + * FreeMono.sfd, + FreeSerif.sfd: Arabic Supplement: populated + +2011-09-15 14:12 +0000 [r1717] Stevan_White: + + * FreeSerif.sfd: Arabic: much concern over + proper old Arabic kah U+0643 vs the more modern "Persian" keheh + U+06a9. Fiddling with hamzas. + +2011-09-15 11:53 +0000 [r1716] Stevan_White: + + * FreeSerif.sfd: Arabic: added a few obsolete or + unexplained characters. much adjustment of combining marks and + dots for better consistency. + +2011-09-14 23:24 +0000 [r1715] Stevan_White: + + * FreeSerif.sfd: Arabic: much fiddling with + medial forms, a bit with lookups (seems ligatures are failing + altogether) + +2011-09-14 19:40 +0000 [r1714] Stevan_White: + + * FreeSerif.sfd: Arabic: added 2 radical signs + Seems the digits in Arabic have been all along the Indo-Persian + forms. Now there is a separate range for those. So I movde the + old letters, and drew new Arabic versions of those that differed. + +2011-09-14 17:26 +0000 [r1713] Stevan_White: + + * tools/report/ranges/OpenType.py: Brought Arabic up + to date + +2011-09-14 09:37 +0000 [r1712] Stevan_White: + + * FreeSerif.sfd: Arabic: further clean-up; made + swash kaf to connect as initial form + +2011-09-14 08:52 +0000 [r1711] Stevan_White: + + * FreeSerif.sfd: Arabic: further cleanup, added + pedagogical symbols (dots, etc) + +2011-09-14 01:04 +0000 [r1710] Stevan_White: + + * FreeSerif.sfd: Arabic: added letters for Malay + Big clean-up of glyphs. Still to do one section of presentation + forms. + +2011-09-13 20:46 +0000 [r1709] Stevan_White: + + * FreeSerif.sfd: Arabic: made letters for + Parkari. Added lookups init, fina, medi for letters with forms + that vary in the font. + +2011-09-13 19:43 +0000 [r1708] Stevan_White: + + * FreeSerif.sfd: Arabic: made main Arabic area + characters and presentation forms for Uighur, Kazakh, Kirghiz, + Sindhi, and Lahnda, as well as the kaf swash + +2011-09-13 19:40 +0000 [r1707] Stevan_White: + + * tools/report/range_report.py: corrected font paths + +2011-09-13 18:10 +0000 [r1706] Stevan_White: + + * FreeSerif.sfd: Arabic: added more presentation + forms mostly for Urdu and Sindhi + +2011-09-13 13:34 +0000 [r1705] Stevan_White: + + * FreeSerif.sfd: Arabic: made some presentation + forms for Urdu + +2011-09-13 11:05 +0000 [r1704] Stevan_White: + + * tools/utility/hex_range.py: doc + +2011-09-13 09:37 +0000 [r1703] Stevan_White: + + * tools/ranges.py (removed), + tools/report/range_report.py (added), + tools/report/ranges (added), + tools/range_report.py (removed), + tools/ranges (removed): rearrangement, got rid of + duplicate script + +2011-09-13 09:29 +0000 [r1702] Stevan_White: + + * tools/ranges/OpenType.py: documented, removed + copied text + +2011-09-13 09:20 +0000 [r1701] Stevan_White: + + * tools/freefont-ttf.spec (removed), + tools/utility/freefont-ttf.spec (added): + Rearranged, added a little doc + +2011-09-13 09:15 +0000 [r1700] Stevan_White: + + * tools/OS2UnicodeRange (removed), + tools/KerningNumerals.pl (removed), + tools/utility/KerningNumerals.pl (added), + tools/report/OS2UnicodeRange (added): Rearranged + some old utilities. Put in some doc of who wrote what. + +2011-09-12 23:37 +0000 [r1699] Stevan_White: + + * tools/script-menu (added), + tools/hex_range.py (removed), + tools/report/private_use.py (added), + tools/utility/log2changelog.pl (added), + tools/script-menu/nameBySlot.py (added), + tools/utility/hex_range.py (added), + tools/script-menu/unnameBySlot.py (added), + tools/utility/makeBraille.py (added), + tools/utility (added), + tools/nameBySlot.py (removed): Added some scripts, + reorganized + +2011-09-12 22:12 +0000 [r1698] Stevan_White: + + * tools/ranges/OpenType.py: Brought a few ranges up + to date + +2011-09-12 22:06 +0000 [r1697] Stevan_White: + + * FreeSerif.sfd: Arabic, etc: Added a lot of + letters, mostly following existing patterns. Especially a lot of + combinations for Urdu, Sindhi, Pashto, Kazakh, Kurdish, Kirghiz, + Turkic, Uighur Berber, Maghrib Arabic, Tunisian Arabic, Moroccan + Arabic, Not all forms are there yet. Very few lookups were + added...this has to be done too. + +2011-09-12 15:13 +0000 [r1696] Stevan_White: + + * FreeSerif.sfd: Arabic: added some Urdu letters + (drawn by myself, with apologies) + +2011-09-12 13:07 +0000 [r1695] Stevan_White: + + * FreeSerif.sfd: Arabic: added keheh and + presentation forms, added lookup entries for them. + +2011-09-12 12:25 +0000 [r1694] Stevan_White: + + * tools/test/findBackLayers.py (added), + sfd/Makefile, + tools/test/MES-Conformance (added), + tools/test/MES-Conformance/CheckConformance.pl, + tools/test/validate.py (added), + tools/generate/MacTT (added), + tools/findBackLayers.py (removed), + tools/test/MES-Conformance/WGL4.lst, + tools/report (added), + tools/generate/TrueType (added), + tools/MES-Conformance (removed), + FreeSansOblique.sfd, tools/test + (added), tools/ligatureLookups.py (removed), + tools/validate.py (removed), + FreeMonoOblique.sfd, + FreeSerifItalic.sfd, + tools/hex_range.py, + FreeSerifBoldItalic.sfd, + tools/generate (added), + tools/test/MES-Conformance/MES-1.txt, + tools/report/ligatureLookups.py (added), + tools/test/MES-Conformance/MES-2.txt, + tools/GenerateTrueType (removed), + tools/freefont-ttf.spec, + tools/generate/OpenType (added), + FreeSansBold.sfd, + tools/test/MES-Conformance/MES-3B.txt, + FreeMono.sfd, + FreeSerifBold.sfd, + FreeMonoBold.sfd, + tools/test/isMonoMono.py (added), + tools/checkGlyphNumbers.py (removed), + tools/ranges/__init__.py, + tools/ranges/OpenType.py, + tools/GenerateOpenType (removed), + tools/KerningNumerals.pl, + tools/test/MES-Conformance/MES-1.lst, + FreeSansBoldOblique.sfd, + tools/test/MES-Conformance/MES-2.lst, + tools/test/MES-Conformance/mes-list-expand.pl, + tools/test/MES-Conformance/MES-3B.lst, + FreeMonoBoldOblique.sfd, + tools/GenerateMacTT (removed), + tools/test/checkGlyphNumbers.py (added), + tools/isMonoMono.py (removed): Rearranged tools/ + directory. Made paths in sfd/Makefile agree with changes. + +2011-09-12 12:10 +0000 [r1693] Stevan_White: + + * FreeSerif.sfd: Latin Extended-B: adjusted + Hungarian umlauts Dingbats: drew several characters to fill out + range for Unicode 6 + +2011-09-12 11:40 +0000 [r1692] Stevan_White: + + * FreeSans.sfd: Osmanya: corrected Unicode + values Letterlike symbols: added one, made some references + +2011-09-02 12:07 +0000 [r1691] Stevan_White: + + * FreeSans.sfd, FreeMono.sfd, + FreeSerif.sfd: Control Pictures: U+2404 and + U+2405 glyphs are reversed. This is due to the icons for them in + FontForge being also reversed. in response to + http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=632746 + +2011-09-02 01:15 +0000 [r1690] Stevan_White: + + * FreeSerif.sfd: Arabic: (really Persian) lookup + tables added init, medi, fina lookups peh, tcheh, gaf and fina + lookup for jeh In response to ubuntu bug report + https://bugs.launchpad.net/ubuntu/+source/ttf-freefont/+bug/730770 + Not sure if this completely resolves the issue. + +2011-08-31 18:16 +0000 [r1689] Stevan_White: + + * FreeSerif.sfd: Letterlike Symbols: added a + few, made better use of small caps for others + +2011-08-31 17:24 +0000 [r1688] Stevan_White: + + * tools/ranges/OpenType.py: mostly revised some + comments + +2011-08-31 17:19 +0000 [r1687] Stevan_White: + + * FreeSerif.sfd: Miscellaneous Technical: + several additions Supplemental Punctuation: several additions + +2011-08-29 23:44 +0000 [r1686] Stevan_White: + + * tools/ranges/OpenType.py: typos + +2011-08-27 20:23 +0000 [r1685] Stevan_White: + + * FreeSans.sfd: Osmanya: resolves bug #34155: + FreeSans: Osmanya digits shifted two code positions + https://savannah.gnu.org/bugs/index.php?34155 + +2011-08-27 20:08 +0000 [r1684] Stevan_White: + + * FreeSans.sfd: Greek: added lunate letters + +2011-08-24 21:40 +0000 [r1683] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Mathematical Operators: added a + few in sans, named a few in serif + +2011-08-24 11:30 +0000 [r1682] Stevan_White: + + * FreeSerifBold.sfd: Phonetic Extensions: more + +2011-08-24 10:11 +0000 [r1681] Stevan_White: + + * FreeSerifBold.sfd: Public Use: script-size + latin Sup-sub: implemented with script-size letters Phonetic + Extensions: filled in many of them + +2011-08-24 01:09 +0000 [r1680] daniel_j: + + * FreeSans.sfd: Added U+1400. Fixes bug #34008 + +2011-08-17 20:05 +0000 [r1679] Stevan_White: + + * FreeSerifItalic.sfd: named a few characters + +2011-08-14 08:55 +0000 [r1677-1678] Stevan_White: + + * tools/ranges/OpenType.py: some changes to Latin + Extended ranges + + * tools/ranges/OpenType.py: added point for Bengali + gandha mark + +2011-08-13 23:15 +0000 [r1676] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoBoldOblique.sfd: Currency Symbols: + added a few more + +2011-08-13 19:53 +0000 [r1675] Stevan_White: + + * FreeSans.sfd, + FreeSansOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Currency Symbols: + added several + +2011-08-13 14:10 +0000 [r1674] Stevan_White: + + * FreeSans.sfd, FreeMono.sfd, + FreeSerif.sfd: Control Pictures: filled out + range + +2011-08-12 08:59 +0000 [r1673] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Specials: filled out + range + +2011-08-12 08:21 +0000 [r1672] Stevan_White: + + * FreeMono.sfd, + FreeSerif.sfd, + FreeMonoOblique.sfd: Cyrillic, Extensions: + added a few archaic letters, messed with accents + +2011-08-10 22:13 +0000 [r1671] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Super/Subscripts (mono and + serif roman) re-design of super numerals. Phonetic ranges: + fiddled a lot with superscript letters. Cyrillic: adjusted some + marks especially on antiquated letters. + +2011-08-05 16:52 +0000 [r1670] Stevan_White: + + * FreeSans.sfd, + FreeSansOblique.sfd, + FreeSerif.sfd: Phonetic Extensions: some + tweeks to small caps letters Subscripts and superscripts: tweeks + +2011-08-04 21:27 +0000 [r1669] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: superscripts, + subscripts, diagonal fractions: all faces Re-thought and + regularized positioning, fixed a few bugs. All the "superior" + numerals and a few superscript latin letters got positioned so + they go over the em height. Latin ordinals are positioned + parallel to em height, and now both a and o are underlined in all + faces. Diagonal fractions are likewise regularized. + +2011-07-31 13:42 +0000 [r1668] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: General Punctuation: remedy + bug #33905: NARROW NO-BREAK SPACE too wide In one face u+202F was + zero width, in others much too wide. Also: set both it and + thinspace to 1/6 em. + +2011-07-23 21:38 +0000 [r1667] Stevan_White: + + * FreeSerif.sfd: Sinhala: further simplification + of ccmp tables + +2011-07-23 09:58 +0000 [r1666] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Latin: Better optical + centering of j + +2011-07-22 20:25 +0000 [r1665] Stevan_White: + + * FreeSerif.sfd: Indic ranges, mostly Sinhala: + attempts to get it working in Windows. Problem: some of the + ligature lookups map to things that by themselves could not + render properly. e, o and O vowels around consonents, especially. + Seems layout engine in Linux is responsible for making it work in + the past... Cleaned up some lookups. In other ranges, added + script ranges for MS "new layout engine", e.g. dev2, bng2. Note: + Malayalam is mlm2, not mly2 as in Fontforge. + +2011-07-18 20:45 +0000 [r1664] Stevan_White: + + * FreeSerif.sfd: Greek: filled out range for + Unicode 6 special mark lookups for Greek re-named some characters + +2011-07-18 19:02 +0000 [r1663] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSansBold.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Made more to validate + Corrected one more wrong unicode in small caps + +2011-07-18 18:11 +0000 [r1662] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansBoldOblique.sfd: Private Use: + corrected small caps unicode SansBoldOblique: made to validate + +2011-07-18 17:58 +0000 [r1661] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Cyrillic Extended: finished + 4 new letters (normal face) Combining Diacritical Marks: lots of + small tweeks. Latin: fiddled with a few accent marks Private Use: + small caps glyphs corrected unicode Added missing single-digit + diagonal fractions, with lookups Added lookup to remove longs + from end of words. Still isn't right. + +2011-07-16 11:24 +0000 [r1660] Stevan_White: + + * notes/features.txt (added): Initial document about + OpenType features used in FreeFont. + +2011-07-16 11:12 +0000 [r1659] Stevan_White: + + * FreeSerif.sfd: Non-unicode vulgar fractions + (2/7, 5/9, etc) with 'frac' table entries + +2011-07-16 10:28 +0000 [r1658] Stevan_White: + + * FreeSans.sfd, FreeMono.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Added glyph for zeroslash, + and lookup 'zero' for it. Mono: added 'frac' lookup. + +2011-07-16 09:45 +0000 [r1657] Stevan_White: + + * FreeSerifItalic.sfd: Correction to ccmp table + for iogonek + +2011-07-16 08:38 +0000 [r1656] Stevan_White: + + * notes/maintenance.txt: put a title on it, a little + re-wording of new paragraphs + +2011-07-16 08:33 +0000 [r1655] Stevan_White: + + * notes/maintenance.txt: Added section on doing + tests. + +2011-07-15 12:34 +0000 [r1654] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Serif: Made the diacritical + lookups previously reserved for Latin to be generic, removed + special marks lookup for Greek/Coptic, use instead generic one. + Added a couple of new letters to Latin Extended-D Bold: Fiddling + with diactitics and marks. Something has gone very wrong with the + lookups... still not clear what. + +2011-07-13 09:20 +0000 [r1653] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Combining Diacritical + Marks: a bugfix and a few positioning tweeks + +2011-07-12 14:24 +0000 [r1652] Stevan_White: + + * FreeSans.sfd: *** empty log message *** + +2011-07-12 14:17 +0000 [r1651] Stevan_White: + + * FreeSans.sfd: Latin: all letters now have + 'above' mark. + +2011-07-12 14:04 +0000 [r1650] Stevan_White: + + * FreeSerif.sfd: Combining diacritical marks: + fiddled with positioning + +2011-07-01 10:56 +0000 [r1648-1649] Stevan_White: + + * FreeSans.sfd: Hebrew: tweeks to vowel points + + * FreeMono.sfd: Alphabetic Presentation Forms: + widened Hebrew wide letters + +2011-07-01 07:59 +0000 [r1647] Stevan_White: + + * FreeSerif.sfd: Hebrew: tweaks to absolute + placement of marks + +2011-06-30 22:47 +0000 [r1646] Stevan_White: + + * FreeSerif.sfd: Hebrew: small tweeks to + cantillation marks, etc + +2011-06-30 11:47 +0000 [r1645] Stevan_White: + + * FreeSerif.sfd: Hebrew: lower cantillation + marks to left of vowels + +2011-06-27 00:20 +0000 [r1644] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Hebrew: got rid of spurious + tables. + +2011-06-27 00:06 +0000 [r1643] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Hebrew: got yidddish CCMP with + yod and yodyod working in Serif + +2011-06-26 22:32 +0000 [r1642] Stevan_White: + + * FreeSans.sfd: Hebrew: issue with Yiddish vs + std. Hebrew scripts for MARK lookups. Somehow gets very confused + by specific ranges, in different ways on different systems. + Disabled distinction between scripts. + +2011-06-26 18:20 +0000 [r1641] Stevan_White: + + * FreeSans.sfd: Hebrew: corrected side of above + vowel. More vowel marks. + +2011-06-26 17:56 +0000 [r1640] Stevan_White: + + * FreeSerif.sfd: Hebrew: corrected placement of + top vowel. fiddled with cantellatin marks. + +2011-06-25 17:27 +0000 [r1639] Stevan_White: + + * FreeSerif.sfd: Hebrew: further fiddling with + points + +2011-06-25 14:49 +0000 [r1638] Stevan_White: + + * FreeSerif.sfd: Hebrew: more fiddling with + vowel and cantillation points + +2011-06-25 11:12 +0000 [r1637] Stevan_White: + + * FreeSerif.sfd: Hebrew: more vowel and + cantillation point marks + +2011-06-25 09:01 +0000 [r1636] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Hebrew: disabled distinction + between Yiddish and Std. vowel marks + +2011-06-24 14:57 +0000 [r1635] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Removed angle + brackets from licence text, because it caused some trouble for + some buggy software, and the offsetting could be done better with + a newline. + +2011-06-24 13:17 +0000 [r1634] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSans.sfd, FreeMono.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Hebrew: worked on MARK + tables in Sans and Serif in response to further mails regarding + bug 25887. Split one table up so lookups wre properly executed in + both Yiddish and regular Hebrew. Some adjustment of letter + spacing and punctuation in other faces. + +2011-06-12 07:14 +0000 [r1633] Stevan_White: + + * INSTALL, README: Fixed a couple of + goofs + +2011-06-11 08:12 +0000 [r1632] Stevan_White: + + * INSTALL: General update: Esp. concerning OpenType + support using FreeType2, and on Win 7 and Mac OS X. + +2011-06-11 08:07 +0000 [r1631] Stevan_White: + + * README: Removed remarks about how to install + (better for INSTALL file) General re-phrasing and tidying. + +2011-06-10 09:34 +0000 [r1630] Stevan_White: + + * INSTALL: Correct name of X Windows system. Also + added Microsoft and Apple to their product names for clarity and + consistency. + +2011-06-10 09:31 +0000 [r1629] Stevan_White: + + * README: Correct name of X Window system. Added web + page and contact info. Removed Primoz' e-mail. + +2011-06-08 11:34 +0000 [r1628] Stevan_White: + + * INSTALL: Removed remark about "cost", slight + rewording, pursuant to discussion in bug #33449: INSTALL file not + conform to FSF's policy + +2011-05-04 16:13 +0000 [r1627] Stevan_White: + + * tools/ranges/OpenType.py: new letters to Cyrillic + Supplement + +2011-04-29 10:33 +0000 [r1626] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: Latin: a few more small + adjustments to accents + +2011-04-29 10:13 +0000 [r1625] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: Latin: small adjustments to + some accents + +2011-04-29 09:48 +0000 [r1624] Stevan_White: + + * notes/maintenance.txt: info about ssh keys on + Savannah + +2011-02-03 21:13 +0000 [r1623] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Latin ^ Extensions: + various fiddling with spacing and accents for greater uniformity. + Also fixed a couple of errors. + +2011-02-02 21:33 +0000 [r1622] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Remedies bug #32326, about + alignment for combining diacritics on dottedcircle Just put main + 'mark' anchors on the dottedcircle character. + +2011-01-30 13:28 +0000 [r1621] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Latin: Much fiddling + with accents, also with width of accented i letters + +2011-01-29 18:19 +0000 [r1620] Stevan_White: + + * FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Accents macron, + acute, grave: made more consistent + +2011-01-29 17:37 +0000 [r1619] Stevan_White: + + * FreeSerif.sfd: Chess pieces: made all same + width, and in a square + +2011-01-28 21:05 +0000 [r1618] Stevan_White: + + * FreeSans.sfd: Made grave, acute, and macron a + little more consistent + +2011-01-26 20:28 +0000 [r1617] Stevan_White: + + * FreeSerifBold.sfd: Made a few accents more + consistent, re bug #32220 + +2011-01-25 22:03 +0000 [r1616] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: Latin, Cyrillic, Greek: more + toward bug #32220 + +2011-01-24 22:54 +0000 [r1615] Stevan_White: + + * FreeSerif.sfd: Latin, Cyrillic: preferred + acute, grave and dieresis to the spacing modifier versions, + somewhat in response to bug #32220 + http://savannah.gnu.org/bugs/?32220 + +2011-01-21 22:12 +0000 [r1614] Stevan_White: + + * FreeSerifBold.sfd: Sinhala: various tweeking + of auxiliary glyphs to avoid self-intersection + +2011-01-19 00:21 +0000 [r1613] Stevan_White: + + * FreeSerifBold.sfd: as prev. + +2011-01-19 00:14 +0000 [r1612] Stevan_White: + + * FreeSerifBold.sfd: Sinhala: trying to make + widths like those of normal + +2011-01-18 23:26 +0000 [r1610-1611] Stevan_White: + + * FreeSerifBold.sfd: Geometric Shapes: re-did + dotted circle, made some triangles bigger. Singhala: slight + modification to widths, to make it more like normal. + + * FreeSerif.sfd: Geometric Shapes: felt some + triangles were over-large. Scaled, and fiddled with their + references + +2011-01-18 08:53 +0000 [r1609] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Copyright: corrected + on Karl Berry's advice. + +2011-01-18 08:41 +0000 [r1608] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansBoldOblique.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: kerning + +2011-01-16 13:24 +0000 [r1606-1607] Stevan_White: + + * FreeSerif.sfd: Sinhala: fixed one + self-intersection + + * FreeSerifBold.sfd: Sinhala: Now ccmp tables + are working. Improved many gloppy self-intersections in the main + Unicode range, but many remain in the replacement area. + +2011-01-16 11:35 +0000 [r1605] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Copyright notice: + included 2011 + +2011-01-15 21:35 +0000 [r1604] Stevan_White: + + * FreeSerifBold.sfd: Sinhala: mostly emboldened + the FreeSerif glphs by 30 en. Many glyphs are pretty gloppy. Also + the rak descender isn't connecting properly. + +2011-01-15 17:24 +0000 [r1603] Stevan_White: + + * FreeSerif.sfd: Miscellaneous Mathematical + Symbols-A Mathematical Operators: a few more additions + +2011-01-09 15:08 +0000 [r1602] Stevan_White: + + * tools/ranges/OpenType.py: corrected/updated a + couple of OpenType ranges + +2011-01-09 12:58 +0000 [r1601] Stevan_White: + + * FreeSerif.sfd: Mathematical Symbols: replaced + some outlines with references Miscellaneous Mathematical + Symbols-A: added a few + +2011-01-08 23:56 +0000 [r1600] Stevan_White: + + * FreeSerif.sfd: Miscellaneous Mathematical + Symbols A & B: more + +2011-01-08 14:24 +0000 [r1599] Stevan_White: + + * FreeSerif.sfd: Miscellaneous Mathematical + Symbols-A Miscellaneous Mathematical Symbols-B Supplemental + Mathematical Operators: a few more characters + +2011-01-08 13:02 +0000 [r1598] Stevan_White: + + * FreeSerif.sfd: Miscellaneous Math Symbols-A: + added a few easy symbols + +2011-01-08 00:21 +0000 [r1597] Stevan_White: + + * FreeSerif.sfd: Supplemental Mathematical + Operators: Miscellaneous Mathematical Operators-B: a few more + symbols + +2011-01-06 22:03 +0000 [r1596] Stevan_White: + + * FreeSerif.sfd: Miscellaneous Mathematical + Symbols-B: added some easy ones + +2011-01-03 20:50 +0000 [r1595] Stevan_White: + + * FreeSerifBold.sfd: Greek Extended: U+1FC3 + should not have had a tilde resolves bug #32041: Error in + FreeSerifBold.ttf character U+1FC3 (8131) + +2010-10-31 23:35 +0000 [r1594] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Added c2sc tables, and smcp + tables for Turkish (dotted vs dotted i distinction) + +2010-10-29 06:57 +0000 [r1593] Stevan_White: + + * FreeSerif.sfd: Currency: Indian Rupee courtesy + of Daniel Johnson Named some of the other characters. + +2010-10-19 23:01 +0000 [r1592] Stevan_White: + + * FreeSansBoldOblique.sfd: Latin: a bit + o'kerning + +2010-10-19 19:25 +0000 [r1591] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Filled in IBM + Classifications + +2010-10-19 07:27 +0000 [r1590] Stevan_White: + + * FreeSansBold.sfd, + FreeSerif.sfd: roman: Mahjong made dot rounder + sans: corrected missing extrema on ssharp + +2010-10-18 19:02 +0000 [r1589] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Combining Diacritical + Marks: completed range + +2010-10-17 10:16 +0000 [r1588] Stevan_White: + + * FreeMono.sfd: Combining Diacritical Marks: + completed range + +2010-10-12 21:50 +0000 [r1587] Stevan_White: + + * FreeMono.sfd: Miscellaneous Symbols: drew a + few more. + +2010-10-12 18:27 +0000 [r1586] Stevan_White: + + * FreeMono.sfd: Miscellaneous Symbols: Corrected + comet, drew a snowman. Solves bug #31315 + (https://savannah.gnu.org/bugs/?31315) + +2010-10-11 22:01 +0000 [r1585] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Malayalam: mass rename of + auxiliary glyphs in Public Use Area + +2010-10-11 21:14 +0000 [r1584] Stevan_White: + + * FreeSerif.sfd: Adjusted spacing of some + conjunct letter parts. + +2010-10-10 23:22 +0000 [r1583] Stevan_White: + + * FreeSerif.sfd: Malayalam: Corrected a couple + of glyph names. + +2010-10-10 08:58 +0000 [r1582] Stevan_White: + + * FreeSans.sfd: Incorporated the Meera_04 font, + of the GPL project Swathanthra Malayalam Computing + http://savannah.nongnu.org/projects/smc/ Copyright (c) 2007, + Hussain K H, Suresh P, Swathanthra Malayalam Computing Drew + several additions for the modern Unicode standard. Cleaned up + many glyphs, and re-named those in the Unicode range. + Re-connected the lookups for Chillu letters to point to those in + Unicode, and deleted the counterparts in the auxiliary range. + +2010-10-10 08:48 +0000 [r1581] Stevan_White: + + * FreeSerif.sfd: Malayalam: Re-named some glyphs + so the commonly used ones were shorter. pba_mal renamed to ba_mal + chandrakkala renamed to candrakala Cleared NameMe_195551 as it + did nothing Raised ascenders on both i_sign_mal and ii_sign_mal, + and made the latter go over preceeding letter, based on other + fonts and samples. + +2010-10-07 06:21 +0000 [r1580] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Armenian: Changed U+FB13-7 + to 'dlig' lookup, based on a native speaker telling me this is + not normally seen in printed form, and on the last lines of sect + 7.7 of the Unicode standard. (sans face too will follow) + +2010-10-06 20:34 +0000 [r1579] Stevan_White: + + * FreeSerif.sfd: Bengali: cleaned up a few + conjunct glyphs + +2010-10-06 18:59 +0000 [r1578] Stevan_White: + + * FreeSerif.sfd: Phonetic Extensions Supplement: + Corrected AD9B, raised all superscripts to capital height. + (Thanks to Emmanuel Vallois for noticing!) + +2010-10-06 18:43 +0000 [r1577] Stevan_White: + + * FreeSerif.sfd: Cyrillic Extended-B: Corrected + Payerok (pajerok) A67D. (Thanks to Emmanuel Valois for pointing + it out!) + +2010-10-06 18:28 +0000 [r1576] Stevan_White: + + * FreeSerif.sfd: Tamil: Corrected position of + pulli over some letters. (Thanks to Emmanuel Valois for pointing + it out!) + +2010-10-05 21:58 +0000 [r1575] Stevan_White: + + * FreeSerif.sfd: Arabic: added some Pashto + letters. Need init, final, medial forms. + +2010-10-05 19:40 +0000 [r1574] Stevan_White: + + * FreeSerif.sfd: Buginese: On advice of Emmanuel + Vallois, corrected iya ligature per + http://www.unicode.org/versions/Unicode5.2.0/ch11.pd + +2010-10-05 07:34 +0000 [r1573] Stevan_White: + + * FreeSerif.sfd: Buginese: added iya ligature + based on WAZU test page + http://www.wazu.jp/gallery/Test_Buginese.html + +2010-10-03 16:31 +0000 [r1572] Stevan_White: + + * FreeSerif.sfd: old-style numerals and lookup + +2010-10-03 15:47 +0000 [r1571] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: combining diacritical + marks: More corrections, making dots on i and j to be replaced by + mark. + +2010-10-03 10:19 +0000 [r1570] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: combining diacritical + marks: in serif, made more marks to remove dot on i, j. Filled + out range in nono-roman faces. + +2010-10-02 22:05 +0000 [r1569] Stevan_White: + + * FreeSerif.sfd: small-caps: tweeks + +2010-10-02 21:39 +0000 [r1568] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: ssharp: made thinner, + deeper, and renamed + +2010-10-02 20:31 +0000 [r1567] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: small-caps: kerning + +2010-09-30 21:37 +0000 [r1566] Stevan_White: + + * FreeSerif.sfd: Tamil: rounded to int on the + Private Use ligatures + +2010-09-30 18:55 +0000 [r1565] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: Latin: a touch of kerning + +2010-09-29 22:16 +0000 [r1564] Stevan_White: + + * FreeMono.sfd: Braille Patterns: made the dots + bigger + +2010-09-29 21:38 +0000 [r1563] Stevan_White: + + * FreeMono.sfd: Braille Patterns: Replaced to + conform better to the Unicode Standard, sect. 15.10 and the + Unicode glyph samples: like it or not, the dots are meant to be + hollow and filled, representing 'off' and 'on'. All now reference + auxiliary characters, for consistency and flexibility. + +2010-09-28 23:16 +0000 [r1562] Stevan_White: + + * FreeSansBold.sfd: small caps + +2010-09-28 08:21 +0000 [r1561] Stevan_White: + + * FreeSerifBold.sfd: small caps: Touch-ups + +2010-09-27 20:02 +0000 [r1560] Stevan_White: + + * FreeSerifBold.sfd: small caps + +2010-09-26 16:50 +0000 [r1559] Stevan_White: + + * FreeSerifBold.sfd: Added PS Private OtherBlues + +2010-09-26 10:55 +0000 [r1558] Stevan_White: + + * FreeSerifItalic.sfd: Latin: tweeked a couple + of stacked accents + +2010-09-26 09:52 +0000 [r1557] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin: More revision of + spacing and letter forms. Still lots to do. + +2010-09-25 23:13 +0000 [r1556] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin: kerning for African + characters + +2010-09-25 22:54 +0000 [r1555] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd: Latin: spacing and glyph form + tweeks in Extended-C and IPA for African scripts. Re-worked + upsilonlatin in serif roman. + +2010-09-25 18:36 +0000 [r1554] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Latin Extended-B: + re-worked Oi, oi, and yhook; kerning and other tweeks for African + scripts. + +2010-09-25 14:04 +0000 [r1553] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: lookups for Latin as + in serif, to deal with accented i and the dot. + +2010-09-25 13:39 +0000 [r1552] Stevan_White: + + * FreeSerifItalic.sfd: Latin: tweeked kerning + and spacing, especially of apostrophe and quotes. + +2010-09-25 12:22 +0000 [r1551] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: IPA Extensions: Completed + range in bold italic. bold: characters with low right hook, made + not so extreme yhook: made narrower by bending right arm in a + bit. replacement lookups for i with accents and i-ogonek with + accents, so that accents replace the dot rather than floating + over it. + +2010-09-23 22:17 +0000 [r1550] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Latin: more fiddling with + letter forms and spacing + +2010-09-23 20:24 +0000 [r1549] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: blues values: made descender + value a bit wider (also did this in previous commit to bold + italic. Latin: more adjustments and corrections of hastily drawn + glyphs. + +2010-09-23 19:27 +0000 [r1548] Stevan_White: + + * FreeSerif.sfd: Latin: Addressed several issues + pointed out by Daniel Johnson concerning African and Navaho + samples. + +2010-09-23 08:25 +0000 [r1547] Stevan_White: + + * FreeSerifBoldItalic.sfd: Latin: Re-worked + various glyphs for consistency (mostly they appeared to have been + skewed versions from bold--or worse). Still more to be done here. + +2010-09-22 22:20 +0000 [r1546] Stevan_White: + + * FreeSerifItalic.sfd: Latin: some marks for + African languages + +2010-09-22 22:04 +0000 [r1545] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin: various measures to + improve the look of African-language samples. Kerned several + letters in IPA Extensions range. Adjusted spacing of several + letters. Re-worked Eng a bit, as well as gammalatin. Put some new + letters in bold italic. + +2010-09-22 08:42 +0000 [r1544] Stevan_White: + + * FreeSans.sfd: Latin Extended Additional: added + four letters small caps: made basic set and smcp lookup table + +2010-09-22 06:09 +0000 [r1543] Stevan_White: + + * Makefile: Was putting ttf files into the otf + tarball. One character fixes it. + +2010-09-21 19:34 +0000 [r1541-1542] Stevan_White: + + * FreeSerif.sfd: Latin Extended-C: three new + letters; two are additions for Shona + + * tools/ranges/OpenType.py: three new letters in + Latin Extended-C range + +2010-09-21 19:16 +0000 [r1540] Stevan_White: + + * FreeSerif.sfd: small caps: forms for + Vietnamese lookup tables for accessing alternate forms in Greek + and in Latin + +2010-09-21 08:29 +0000 [r1539] Stevan_White: + + * FreeSerif.sfd: small caps: tweeked spacing + +2010-09-20 22:45 +0000 [r1538] Stevan_White: + + * FreeSerif.sfd: Small caps replacements for + Latin, with the smcp table to do it. (Haven't seen this actually + function yet... ) + +2010-09-19 13:22 +0000 [r1536] Stevan_White: + + * FreeSerifBold.sfd: Fixed validation problem. + +2010-09-19 13:15 +0000 [r1535] Stevan_White: + + * ChangeLog: today's commits + +2010-09-19 12:40 +0000 [r1534] Stevan_White: + + * FreeSerif.sfd: Sinhala: Fixed one lookup table + mistake, and a couple of glpyh omissions, that Harshula pointed + out. + +2010-09-19 11:48 +0000 [r1533] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Sans: Applied Daniel + Johnsons improvement to capital Eng to Sans, as described in + previous commits. + +2010-09-19 10:32 +0000 [r1532] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Coptic: added alphabet to + bold. Accent marks not working -- a mystery. Some tweeks in + medium face as well. glyph cleanup -- points too close, some + glyphs outside bounding boxes. + +2010-09-18 08:50 +0000 [r1531] Stevan_White: + + * tools/ligatureLookups.py: mostly code style + improvements + +2010-09-18 07:54 +0000 [r1529-1530] Stevan_White: + + * tools/ligatureLookups.py: mostly code tidying + + * ChangeLog: added latest changes, and also changes + to the tools/ directory since 2008 + +2010-09-17 18:38 +0000 [r1528] Stevan_White: + + * FreeSerif.sfd: Sinhala: tightened up left side + of na and derivatives. + +2010-09-17 08:27 +0000 [r1527] Stevan_White: + + * FreeSerif.sfd: Sinhala: tighened up left sides + of u, lla, na, dha, ndha, nya, jnya + +2010-09-17 08:09 +0000 [r1526] Stevan_White: + + * FreeSerif.sfd: Sinhala: tightened up some of + the vowel conjuncts, and left side of nna. + +2010-09-16 20:05 +0000 [r1525] Stevan_White: + + * FreeSerif.sfd: Coptic: fiddled about with + letter forms, striving for a kind of consistency. Sinhala: + Harshula noticed four incorrect combined forms. Fixed these. + +2010-09-16 08:09 +0000 [r1524] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Latin Extended-A: + Applied Daniel Johnson's patch that made two versions of capital + Eng. His explanation: ' http://en.wikipedia.org/wiki/%C5%8A The + form of capital Eng currently in all three FreeFont faces is that + used by the Sami people, resembling a capital N with a hooked + right descender. However, the form preferred for African and + Amerindian languages resembles a tall lowercase n with a hook + that almost meets the left vertical. (See wikipedia link above + for a visual.) Recommend moving the existing Sami-style Eng to a + PUA or non-Unicode slot, creating African-style Eng at U+014A, + and adding a LOCL table with substitution rules for Inari Sami + (ISM), Lule Sami (LSM), Northern Sami (NSM) and Skolt Sami (SKS). + ' Latin Extended-B: Also in his patch: added U+0220 (Latin + Capital Letter N with long leg) + +2010-09-15 17:02 +0000 [r1523] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin for Sami: Daniel + Johnson's patch added alternative form of Eng for African + languages and a 'local' table for the Sami form. + +2010-09-15 16:23 +0000 [r1522] Stevan_White: + + * notes/maintenance.txt: Updated upload and release + procedures. + +2010-09-15 08:05 +0000 [r1521] Stevan_White: + + * FreeSerif.sfd: Sinhala: regularized kundaliya + a bit. + +2010-09-15 07:24 +0000 [r1520] Stevan_White: + + * FreeSans.sfd: Put stray lookup into its proper + subtable. + +2010-09-14 23:24 +0000 [r1519] Stevan_White: + + * FreeSerif.sfd: Sinhala: re-named a few more + ligature glyphs, for consistency + +2010-09-14 22:50 +0000 [r1518] Stevan_White: + + * FreeSans.sfd: Gurmukhi: improved some names of + ligature glyphs, and found one apparently doubled table entry + (kagurmukhi_nuktagurmukhi.nukt now gur_ka.nukt) + +2010-09-14 22:17 +0000 [r1517] Stevan_White: + + * tools/GenerateTrueType: prev. commit had one space + too many + +2010-09-14 22:08 +0000 [r1516] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSans.sfd, + FreeSerif.sfd: Various measures to fix + problems FontForge Find Problems reports under ATT, including a + mass glyph rename of Sinhala ligatures. + +2010-09-14 13:02 +0000 [r1514-1515] Stevan_White: + + * tools/ranges.py, + tools/hex_range.py, + tools/findBackLayers.py, + tools/ranges/OpenType.py, + tools/GenerateTrueType, + tools/GenerateOpenType, + tools/range_report.py, + tools/ligatureLookups.py, + tools/validate.py, + tools/GenerateMacTT, + tools/checkGlyphNumbers.py, + tools/isMonoMono.py, + tools/nameBySlot.py: Added license and other tags + to python files. + + * Makefile: target for tarball for OpenType + +2010-09-13 19:21 +0000 [r1513] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeMonoOblique.sfd: Cyrillic: A few more old + letters. + +2010-09-13 08:25 +0000 [r1512] Stevan_White: + + * tools/ranges/OpenType.py: updated some Web links. + +2010-09-12 22:57 +0000 [r1511] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Supplemental + Punctuation: One character for consistency with other faces. + +2010-09-12 21:18 +0000 [r1510] Stevan_White: + + * FreeSans.sfd, FreeMono.sfd: + Control Pictures: Added because it was easy. + +2010-09-12 20:49 +0000 [r1509] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Alphabetic + Presentation Forms: filled out range in sans faces. + +2010-09-12 19:55 +0000 [r1508] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeMonoBoldOblique.sfd: Cleared hints. + +2010-09-12 19:43 +0000 [r1507] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Dozens of measures to + pass general validation tests, including . cleanup of many glyphs + for extrema and self-intersection problmes . re-naming glyphs + whose PS names are too long. . removing blank glyphs . giving + Unicode points to glyphs missing them. There are still a few + lookup table issues in FreeSerif and FreeSans though. + +2010-09-12 18:42 +0000 [r1505-1506] Stevan_White: + + * tools/nameBySlot.py: Corrected output for high + Unicode. + + * tools/checkGlyphNumbers.py: Made aware of special + TrueType slots. + +2010-09-12 16:50 +0000 [r1504] Stevan_White: + + * FreeSerif.sfd: Re-named some of the Sinhala + lookups in somewhat better way. Control Pictures: added a bunch + (but... is it worth it?) + +2010-09-12 15:01 +0000 [r1503] Stevan_White: + + * tools/range_report.py: Added a Private Use total + and better explanation of totals generally. Some code clean-up. + +2010-09-11 13:24 +0000 [r1500-1502] Stevan_White: + + * ChangeLog: The sfd changes since the last release + + * AUTHORS, CREDITS: Added some recent + contributors + + * tools/ranges/OpenType.py: made not to complain + about extra TrueType characters. + +2010-09-11 09:52 +0000 [r1499] Stevan_White: + + * FreeSerif.sfd: Coptic: Widened bowl of Khei. + +2010-09-11 09:48 +0000 [r1498] Stevan_White: + + * FreeSerif.sfd: Coptic: deepened descenders of + small letters to same depth as in Latin Expanded bowl of Fei and + fei to resemble other samples. + +2010-09-10 21:38 +0000 [r1497] Stevan_White: + + * FreeSerif.sfd: Cyrillic: mostly positioning of + marks for old Cyrillic alphabets + +2010-09-10 08:05 +0000 [r1496] Stevan_White: + + * FreeSerif.sfd: Coptic: Replaced acoptic with + something more dramatic, fiddled with kerning, tidied some other + letters + +2010-09-08 22:50 +0000 [r1495] Stevan_White: + + * AUTHORS, CREDITS: mention of recent + additions + +2010-09-08 22:18 +0000 [r1494] Stevan_White: + + * FreeSerifBold.sfd: Block Elements: replaced + long-missing shade blocks + +2010-09-08 22:12 +0000 [r1493] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Block Elements: replaced + long-missing shade blocks + +2010-09-08 08:18 +0000 [r1492] Stevan_White: + + * tools/range_report.py: More explanation in output. + +2010-09-08 07:41 +0000 [r1491] Stevan_White: + + * tools/ranges/OpenType.py, + tools/range_report.py: another consistency check + added UCAS Extended range + +2010-09-07 18:30 +0000 [r1490] Stevan_White: + + * FreeSerif.sfd: Buginese: lookup tables and + glyphs to re-order vowels, courtesy of Mohammad Anwari. + +2010-09-07 17:39 +0000 [r1489] Stevan_White: + + * FreeSans.sfd: Osmanya: courtesy of Daniel + Johnson. Note this script is slanted in every sample I've seen. + That is justification enough that the glyphs in this range look + slated, although the face isn't oblique. + +2010-09-07 17:19 +0000 [r1488] Stevan_White: + + * FreeSans.sfd: UCAS Extended: by Daniel Johnson + +2010-09-07 16:43 +0000 [r1487] Stevan_White: + + * FreeSerif.sfd: Sinhala: complete replacement + of range with glyphs extracted more directly from Yannis + Haralambous' sinha TeX font (last version was also derived from + this font, but had undergone detrimental processing). Implements + "rak" glyphs using three GSUB lookup steps. + +2010-09-04 23:52 +0000 [r1486] Stevan_White: + + * FreeSerif.sfd: Fix for FontForge warning (v + 20090923) "On Windows many apps will have problems with this + font's kerning, because because 58 of its glyph kern pairs cannot + be mapped to unicode-BMP kern pairs" This was due to kern tables + for the Musical Symbols range, which isn't in the Unicode Basic + Multilingual Plane. Removed this lookup. Might consider another + way to position these symbols. + +2010-08-29 22:59 +0000 [r1485] Stevan_White: + + * FreeSerif.sfd: Sinhala: patch by Harshula + Jayasuriya to correct the writing system direction in some + lookups. + +2010-08-29 22:52 +0000 [r1484] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Currency Symbols: additions + and tweeking + +2010-08-24 19:15 +0000 [r1483] Stevan_White: + + * FreeSerif.sfd: Sinhala: added one ligature + glyph, from Harshula Jayasuriya + +2010-08-20 20:19 +0000 [r1482] Stevan_White: + + * FreeSerif.sfd: Resolves class of validation + problems in Sinhala: Bad Glyph Name. This is a FontForge bug, + that appears when certain types of problems occur in the glyph + contours. Probably an arithmetic error causes some corruption. + +2010-08-20 18:17 +0000 [r1481] Stevan_White: + + * FreeSerif.sfd: corrected missing extrema in + recent Latin Extended-D range + +2010-08-20 17:56 +0000 [r1480] Stevan_White: + + * FreeSerif.sfd: Sinhala: re-did previous patch + using a more recent one. Un-did some other glyph changes that + didn't help much anyway. + +2010-08-20 11:05 +0000 [r1479] Stevan_White: + + * FreeMono.sfd: Named letters in several + ranges... should write a script for this... + +2010-08-20 09:52 +0000 [r1478] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Added full GNU + copyright announcement to TT Names. Updated Copyright date. + +2010-08-20 09:16 +0000 [r1477] Stevan_White: + + * FreeSerif.sfd: Sinhala: Applied a patch from + Harshula Jayasuriya, improving glyph names. I tried to tidy up + some of the glyphs, but it's a big job... Latin Extended B: fixed + one case of missing extrema + +2010-08-18 09:48 +0000 [r1476] Stevan_White: + + * FreeSerif.sfd: Latin Extended-D: yet a few + more easily made letters + +2010-08-18 09:32 +0000 [r1475] Stevan_White: + + * FreeSerif.sfd: Latin Extended-D: made a few + more letters + +2010-08-09 06:34 +0000 [r1474] Stevan_White: + + * FreeSerif.sfd: Supplemental Arrows-A: + completed + +2010-08-09 05:50 +0000 [r1473] Stevan_White: + + * FreeSerif.sfd: Arrows: completed + +2010-08-08 22:38 +0000 [r1472] Stevan_White: + + * FreeSerif.sfd: Added more Arrows + +2010-08-04 17:43 +0000 [r1471] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoBoldOblique.sfd: Combining Diacritics: + some additions in BoldOblique, corrections in other faces. + Several improvements to Greek letter forms in BoldOblique + +2010-08-03 21:59 +0000 [r1470] Stevan_White: + + * FreeMonoBold.sfd: Arrows, a few math + operators, and one more combining diacritical + +2010-08-03 16:03 +0000 [r1469] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd: Added some combining + diacriticals to bold, touched up some spacing modifiers. Minor + corrections to roman. + +2010-08-03 15:06 +0000 [r1468] Stevan_White: + + * FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Marks, spacing + modifier letters: corrected placement of marks, added some + spacing modifier letters and combining marks. + +2010-08-03 12:53 +0000 [r1467] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Better Vietnamese + support, using 'ccmp' and 'mark' lookup tables. MonoBoldOblique: + added Extended Latin ranges + +2010-08-03 09:12 +0000 [r1466] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: Vietnamese: Much adjustment + of horn letters, also general adjustemen of marks + +2010-08-02 21:49 +0000 [r1465] Stevan_White: + + * FreeSerif.sfd: Vietnamese: inadvertently broke + the main face. This fixes it. + +2010-08-02 18:25 +0000 [r1464] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Vietamese: In roman and + sans, lookups are basically functional now. Used 'ccmp' Ligature + Substitution to form stacked marks (inasmuch as glyphs for the + stacked Unicode codepoints are available) Adjusted positioning of + some marks. Named many letters and combining marks. roman italic. + Re-designed horn of O and U. Other roman faces could also benefit + from a horn job. + +2010-08-02 09:43 +0000 [r1462-1463] Stevan_White: + + * tools/ranges/OpenType.py: Correction regarding NKo + range. + + * tools/range_report.py: made not to complain about + special TrueType slots 0x00, 0x01, 0x0D + +2010-08-02 08:38 +0000 [r1461] Stevan_White: + + * FreeMono.sfd, + FreeSerif.sfd: roman: correction to one math + operator mono: Mathematical Operators complete (up to some + pre-5.2 Unicode version) + +2010-08-01 22:01 +0000 [r1460] Stevan_White: + + * FreeMono.sfd: Mathematical Symbols: range + nearly finished + +2010-08-01 17:17 +0000 [r1459] Stevan_White: + + * FreeMono.sfd, + FreeSerif.sfd: roman: corrected direction of 2 + math operators mono: added several math operators + +2010-08-01 14:04 +0000 [r1458] Stevan_White: + + * FreeSerif.sfd: more improvements to marks for + Vietnamese + +2010-08-01 13:25 +0000 [r1457] Stevan_White: + + * FreeSerif.sfd: Worked on mark positioning for + Vietnamese, Cyrillic + +2010-07-30 11:59 +0000 [r1456] Stevan_White: + + * FreeMono.sfd: Reduced height of two-part + Summation symbols https://savannah.gnu.org/bugs/?23064 + +2010-07-30 10:53 +0000 [r1455] Stevan_White: + + * FreeSerif.sfd: Added some Miscellaneous + Technical Symbols + +2010-07-30 09:24 +0000 [r1454] Stevan_White: + + * FreeMono.sfd: Corrected U+2626 Orthodox Cross + https://savannah.gnu.org/bugs/?27579#discussion + +2010-07-29 19:29 +0000 [r1453] Stevan_White: + + * FreeSerif.sfd: Put in some scan lines + 23BA-23BD, based on 2500, as discussed in + https://savannah.gnu.org/bugs/?23064 I still have no idea what + the application for these glyphs would be... + +2010-07-17 20:07 +0000 [r1452] Stevan_White: + + * FreeSerif.sfd: added mark anchors for acute, + grave in cyrillic (other faces already had them) + +2010-07-13 12:30 +0000 [r1451] Stevan_White: + + * FreeMono.sfd: Made germandbls (ess-zet) a bit + wider, moved a bit to left + +2010-07-10 20:42 +0000 [r1450] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Resolves bug 30344: "Greek + Final Sigma could be shortened" + https://savannah.gnu.org/bugs/index.php?30344 Problem only + affected roman, but touched up other faces anyway. + +2010-05-30 16:20 +0000 [r1449] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin-extended-B: fiddled + with some of the horizontal strokes + +2010-05-29 16:22 +0000 [r1448] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin: accents on ogonek + letters (for Navaho) a little adjustment of apostrophe (Navaho, + Hawaiian) + +2010-05-29 15:05 +0000 [r1447] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin mark problems * low + dots in bold uneven * ring in bold smaller than in roman, and not + heavier * apostrophe in italic too far to right (Navaho, + Hawaiian) + +2010-05-29 09:19 +0000 [r1446] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin: fixed problems with + various marks: ogonek, hook, comma below, some kerning, esp. of + non-ascii characters + +2010-05-29 07:39 +0000 [r1445] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Sans: made dot accents same + height as i-dot, kerned y with comma Both: made low comma accent + lower, smaller (esp. for Romanian) + +2010-05-27 19:13 +0000 [r1444] Stevan_White: + + * FreeSans.sfd: Latin: make caron of more + uniform height + +2010-05-27 18:58 +0000 [r1443] Stevan_White: + + * FreeSans.sfd, + FreeSansOblique.sfd: Latin: made ring accent + heavier, esp. for Swedish + +2010-05-27 18:41 +0000 [r1442] Stevan_White: + + * FreeSans.sfd: Latin: i was somehow displaced, + dotlessi was much too wide for Turkish + +2010-05-10 20:17 +0000 [r1441] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Latin: kerning tweeks + +2010-05-09 18:54 +0000 [r1440] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: As discussed in + freefont-bugs mailing list, Thu, May 6, 2010 "FreeMono affected + by OS X 10.6 nested character references bug" reduced reference + nesting in multiple quote characters, as a courtesy to Mac OS + 10.6 users, who suffer from a bug. + +2010-05-03 22:52 +0000 [r1439] Stevan_White: + + * FreeSerif.sfd: Latin: kerning tweeks + +2010-05-03 20:51 +0000 [r1438] Stevan_White: + + * FreeSerifBold.sfd: Latin: spacing of round + small letters, kerning tweeks, fiddled with ligatures + +2010-04-17 19:38 +0000 [r1437] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Daniel Johnson improved + Cherokee Da + +2010-04-10 12:03 +0000 [r1436] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSansBold.sfd, + FreeSansBoldOblique.sfd, + FreeMonoBold.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Emboldened underscore + and related glyphs. Resolves issue 22999 + https://savannah.gnu.org/bugs/index.php?22999 Low line (005F) in + bold fonts do not have heavier weight + +2010-04-09 18:55 +0000 [r1435] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Serif: Added Thai TTF names + +2010-04-08 20:44 +0000 [r1434] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Corrected some + language names A bit o kerning + +2010-04-08 20:20 +0000 [r1433] Stevan_White: + + * FreeSerifBold.sfd: Fixed problem with name. + This should be the same as before the revision except for the + fix. The KDE font installer was saying this face was incorrectly + named Free Serif Bold Italic, but this wasn't quite correct. One + of the other language names said it was named Free Serif Halvfett + Kursiv, which conflicted with that language name for the real + Free Serif Bold Italic. + +2010-04-08 17:26 +0000 [r1432] Stevan_White: + + * FreeSerifBold.sfd: regression: for some + unknown reason, previous release gets built so that my system + thinks it is Free Serif Bold Italic. This is a mystery. There is + nothing about Italic in the file. + +2010-04-06 19:33 +0000 [r1431] Stevan_White: + + * sfd/Makefile: Made graceful in absence of + Fontforge + +2010-03-29 20:47 +0000 [r1430] Stevan_White: + + * FreeSerifBold.sfd: Adjusted some accent marks, + named a few characters + +2010-03-25 21:05 +0000 [r1429] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: added Ukrainian TTF + names + +2010-03-24 23:40 +0000 [r1428] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: added bahasa + indonesian TTF names + +2010-03-21 12:27 +0000 [r1427] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Added several TTF + Names. (Need to check with native speakers.) + +2010-03-20 11:39 +0000 [r1426] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Fill out TTF Names tables + regarding font names + +2010-03-19 08:37 +0000 [r1425] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Removed TTF Names for + 'sample text' and all 'license URL' except English, 1) in + response to FontForge complain that large names tables conflict + with recent Windows patches 2) because they are redundant and + inappropriate (Hope to post the list of sample texts elsewhere, + because I like the idea.) + +2010-03-02 08:13 +0000 [r1424] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Latin standard + ligatures: in non-bold, promoted dlig to liga. Put standard Dutch + IJ in all; Adjusted spacing a bit + +2010-02-28 13:04 +0000 [r1423] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBold.sfd: Cyrillic: further revision + of spacing, in direction of loosening. bold ze was strangely + thin; made bolder. + +2010-02-27 11:45 +0000 [r1422] Stevan_White: + + * FreeSerif.sfd: Cyrillic: reviewed spacing of + whole range, generally loosened slightly tidied a couple of ugly + glyphs + +2010-02-09 19:34 +0000 [r1421] Stevan_White: + + * FreeSerifBoldItalic.sfd: tweeks to kerning in + Latin + +2010-02-09 18:40 +0000 [r1420] Stevan_White: + + * FreeSerifBold.sfd: Tweeks to kerning in Latin + +2010-01-28 08:20 +0000 [r1419] Stevan_White: + + * tools/isMonoMono.py: Implement FontForge handling + of magic characters .notdef, .null, nonmarkingreturn at 0x0000 + 0x0001 0x000D + +2010-01-27 22:48 +0000 [r1418] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Improved magic + characters for FreeMono, inserted them for other faces + https://savannah.gnu.org/bugs/index.php?28742 + +2010-01-27 21:24 +0000 [r1417] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Added at 0x0000 + 0x0001 0x000D characters .notdef .null nonmarkingreturn These are + NOT UNICODE they are to satisfy an essentially undocumented + "feature" of FontForge, ( in source tottf.c, AssignNotdefNull() ) + And a funny strong suggestion of TrueType fonts, that they begin + with three special characters (evidently different from encoding + slots) http://www.microsoft.com/typography/otspec/recom.htm + FontForge looks for these glyphs in certain places and copies + them. Otherwise, apparently, it will find a glyph elsewhere + (unclear how) and copy it there, possibly resulting in something + quite wrong (such as a non-monospace font). The three are copied + to the end of TTF fonts (only one to the end of OTF fonts) + +2009-12-30 23:25 +0000 [r1416] Stevan_White: + + * FreeSans.sfd: Tamil: deletd Unicode range due + to absence of necessary ligatures + +2009-12-30 23:01 +0000 [r1415] Stevan_White: + + * FreeSerifBold.sfd: Cyrillic tweek to spacing + +2009-12-29 21:01 +0000 [r1414] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd: Gurmukhi: added 2 characters + to complete range + +2009-12-29 20:40 +0000 [r1413] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Devanagari: filled out sans, + some corrections in serif + +2009-12-29 01:42 +0000 [r1412] Stevan_White: + + * FreeSerif.sfd: Devanagari: Drew and + constructed glyphs to complete range. + +2009-12-28 19:00 +0000 [r1411] Stevan_White: + + * AUTHORS, CREDITS: added credits for + recent additions + +2009-12-28 18:36 +0000 [r1410] Stevan_White: + + * tools/ranges/OpenType.py: Added/corrected some + ranges + +2009-12-27 16:25 +0000 [r1405-1409] Stevan_White: + + * tools/MES-Conformance/WGL4.lst (added), + tools/MES-Conformance (added), + tools/MES-Conformance/MES-1.txt (added), + tools/MES-Conformance/MES-2.txt (added), + tools/MES-Conformance/CheckConformance.pl (added), + tools/MES-Conformance/MES-1.lst (added), + tools/MES-Conformance/MES-2.lst (added), + tools/MES-Conformance/MES-3B.txt (added), + tools/MES-Conformance/mes-list-expand.pl (added), + tools/MES-Conformance/MES-3B.lst (added): Moved + Primoz' conformance tools (dated 2002) to a more comfortalbe + directory. + + * tools/MES-3B.lst (removed), + tools/GenerateTrueType, + tools/WGL4.lst (removed), + tools/MES-1.txt (removed), + tools/MES-2.txt (removed), + tools/CheckConformance.pl (removed), + tools/MES-1.lst (removed), + tools/MES-2.lst (removed), + tools/MES-3B.txt (removed), + tools/mes-list-expand.pl (removed): disabled build + of Mac TT + + * tools/ligatureLookups.py: better sanity check + + * tools/range_report.py: more generic title + + * tools/ranges/OpenType.py: correction to Tamil + +2009-12-27 13:56 +0000 [r1404] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Resolves bug #23049 + Replacement character (U+FFFD) not properly styled + https://savannah.gnu.org/bugs/index.php?23049 + +2009-12-27 01:47 +0000 [r1403] Stevan_White: + + * FreeSerif.sfd: Devanagari: added letters, + completing Unicode range + +2009-12-27 01:06 +0000 [r1402] Stevan_White: + + * FreeSerif.sfd: Tamil: added 2 monster glyphs, + completing range (0bc1-2 still questionable) + +2009-12-26 18:14 +0000 [r1401] Stevan_White: + + * FreeSerif.sfd: Tamil: a few more symbols. Only + a couple of monster signs still missing, and a couple of marks + seem just wrong... + +2009-12-26 17:03 +0000 [r1400] Stevan_White: + + * FreeSerif.sfd: Tamil: added digits + +2009-12-26 15:40 +0000 [r1399] Stevan_White: + + * FreeSans.sfd: Tamil: completed digits, added + some other chars + +2009-12-26 14:12 +0000 [r1398] Stevan_White: + + * FreeSerif.sfd: Malayalam: completed Unicode + range, also moving some Chillu letters from Private Use area to + Unicode, and re-establishing ligatures + +2009-12-26 00:38 +0000 [r1397] Stevan_White: + + * FreeSerif.sfd: Indic ranges: named lots of + characters Tamil: corrected and added a few letters + +2009-12-24 23:56 +0000 [r1396] Stevan_White: + + * FreeSans.sfd: Indic ranges, esp. Devanagari: + added several new Unicode (not yet complete) tidied letters + Bengali: tidying, made some refs + +2009-12-24 18:29 +0000 [r1395] Stevan_White: + + * FreeSans.sfd: Indic ranges: named most of the + Unicode characters Tried to improve a few bad names for ligatures + in Private Use Area Made a few references: not clearly an + improvement. This stuff is still a mess... + +2009-12-24 15:19 +0000 [r1394] Stevan_White: + + * FreeSans.sfd: Devanagari: added an obviously + missing nukta ligature + +2009-12-24 14:36 +0000 [r1393] Stevan_White: + + * FreeSans.sfd: Gujarati: added some subvocalic + letters for Sanskrit. Quality is low. + +2009-12-24 13:26 +0000 [r1392] Stevan_White: + + * FreeSans.sfd: Filled out Geometric Shapes. + +2009-12-24 10:23 +0000 [r1391] Stevan_White: + + * tools/ligatureLookups.py: fixed syntax error + +2009-12-23 23:06 +0000 [r1390] Stevan_White: + + * tools/LigatureList.pl (removed): no longer + relevant. + +2009-12-23 22:58 +0000 [r1389] Stevan_White: + + * tools/ligatureLookups.py (added): Replacement for + the LigatureList.pl script, which relied on an external utility + to produce a list of replacement lookups. + +2009-12-22 23:56 +0000 [r1388] Stevan_White: + + * tools/ranges/OpenType.py: removed links to + disappeared web pages + +2009-12-22 23:45 +0000 [r1387] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: cosmetic re-name and + re-order of lookups + +2009-12-22 22:51 +0000 [r1386] Stevan_White: + + * FreeMonoOblique.sfd: Diagonal Fractions lookup + didn't make much sense in mono anyway, much less in just one + style. + +2009-12-20 13:33 +0000 [r1385] Stevan_White: + + * FreeSerif.sfd: split Diagonal Fractions lookup + into two tables + +2009-12-19 23:20 +0000 [r1382-1384] Stevan_White: + + * tools/range_report.py: corrected script name + + * tools/ranges/OpenType.py: numerous changes, some + reflecting changes to Unicode standard + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: General Punctuation: + Got rid of deprecated subrange 0x206A-0x206F + +2009-12-19 23:13 +0000 [r1381] Stevan_White: + + * FreeSerif.sfd: re-encoded some characters + adjusted some marks corrected two wrongly-placed glyphs in + Phonetic Extensions Supplement + +2009-12-14 08:22 +0000 [r1380] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Unicode 5.2 + corrections of Abkhasian letters from Daniel Johnson. Got rid of + some old glyph names. + +2009-12-06 15:07 +0000 [r1379] Stevan_White: + + * FreeSans.sfd, + FreeSansOblique.sfd: Cherokee: fixed previous + commit of a partial, and old range in medium weight + +2009-12-06 14:57 +0000 [r1378] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Cherokee, courtesy of + Daniel Johnson. + +2009-11-20 13:28 +0000 [r1377] Stevan_White: + + * FreeSans.sfd: New glyphs for Unified Canadian + Aboriginal Syllabics as defined in Unicode 5.2 by Daniel Johnson + +2009-11-14 22:47 +0000 [r1376] Stevan_White: + + * FreeSerif.sfd: Resolves bug #27842: FreeSerif + U+1F016 (Mahjong Tile Seven of Bamboos) Wrong + https://savannah.gnu.org/bugs/?27842 has one extra bamboo in it + for a total of eight. The bamboo on the top left needs to be + removed + +2009-11-14 22:31 +0000 [r1375] Stevan_White: + + * FreeSerif.sfd: Resolves bug #27579: Orthodox + cross has wrong glyph http://savannah.gnu.org/bugs/?27579 U+2626 + Orthodox Cross should slope downwards from left to right. + +2009-11-13 02:33 +0000 [r1374] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBold.sfd: Cyrillic: corrections to + Abkhazian letters by Daniel Johnson + +2009-11-05 15:33 +0000 [r1373] Stevan_White: + + * FreeSerif.sfd: Cyrillic: corrections to + Abkhazian letters by Daniel Johnson + +2009-10-16 21:12 +0000 [r1372] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Cyrillic: tweeks to brev, + based on Unicode 5.2 samples + +2009-10-08 07:38 +0000 [r1371] Stevan_White: + + * FreeSerif.sfd: Currency Symbols: tidied + +2009-10-07 23:48 +0000 [r1370] Stevan_White: + + * FreeSerif.sfd: Number Forms: three new vulgar + fractions + +2009-10-07 23:32 +0000 [r1369] Stevan_White: + + * FreeSerif.sfd: Currency Symbols: added "Tenga" + of Kazakhstan + +2009-10-07 23:19 +0000 [r1368] Stevan_White: + + * FreeSerif.sfd: Latin Extended: corrected a + couple of wrong bearings some fiddling with Vienamese letters + with hook + +2009-09-30 23:31 +0000 [r1367] Stevan_White: + + * FreeSerif.sfd: added missing accent + +2009-09-17 21:20 +0000 [r1366] Stevan_White: + + * FreeSerif.sfd: Latin kerning: gave qj positive + kerning (it must happen sometimes) + +2009-09-17 21:09 +0000 [r1365] Stevan_White: + + * FreeSerif.sfd: Latin kerning: differentiated + grave and dieresis vowels in some combos. (also, adieresis hadn't + been kerned at all...) + +2009-09-17 20:12 +0000 [r1364] Stevan_White: + + * AUTHORS: Credited Yannis & Wellcome Institute for + Sinhala glyphs + +2009-09-17 20:07 +0000 [r1363] Stevan_White: + + * FreeSerif.sfd: made ref of one sinhals letter + +2009-09-15 10:30 +0000 [r1362] Stevan_White: + + * CREDITS: Credit Wellcome Library for Sinhala, and + the Sinhala LKLUG font + +2009-07-30 14:03 +0000 [r1361] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSerif.sfd: kerning + +2009-07-26 10:41 +0000 [r1360] Stevan_White: + + * FreeSansBold.sfd: kerning + +2009-07-26 07:54 +0000 [r1359] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: added some space in + diaeresis did some kerning + +2009-07-26 07:42 +0000 [r1358] Stevan_White: + + * FreeSansBold.sfd: revert serious mistake with + previous commit: had somehow set splies quadratic. Here, the + GaspTable from that commit is preserved, However there were + evidently numerous other changes that weren't documented, and + these are lost. + +2009-07-12 16:21 +0000 [r1357] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Added GASP tables for + control of hinting/smoothing (anti-alising) of TrueType. Now the + values are better suited to the EM size of the fonts. Further + adjustment (based say on stem width) might still be profitable. + +2009-07-11 23:32 +0000 [r1356] Stevan_White: + + * FreeSans.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: More tweeks on + accents, especially Maltese letters. + +2009-07-11 19:53 +0000 [r1355] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Maltese Hbar, hbar, + Improved, made more consistent. + +2009-07-11 17:08 +0000 [r1354] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Latin: various + corrections and tweeks for consistency in accented letters. + +2009-07-11 08:23 +0000 [r1353] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSansBold.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: more space to accent on + lcaron tightened DZ etc ligatures in SerifItalic faces made + references etc in Spacing Modifiers and Combining further kerning + +2009-07-10 22:21 +0000 [r1352] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: kerning Sans: decided dots + and some other marks needed more room. + +2009-07-10 19:09 +0000 [r1351] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: IPA. Phonetics: tweeks + +2009-07-10 08:02 +0000 [r1349-1350] Stevan_White: + + * FreeSerif.sfd: Tweeked some math symbols + + * FreeSans.sfd, + FreeSansOblique.sfd: Letterlike: additions + +2009-07-10 07:21 +0000 [r1348] Stevan_White: + + * FreeMonoOblique.sfd: IPA + +2009-07-09 22:53 +0000 [r1347] Stevan_White: + + * FreeSerifBoldItalic.sfd: Another IPA symbol + +2009-07-09 22:32 +0000 [r1346] Stevan_White: + + * FreeSerifBoldItalic.sfd: IPA and Spacing + Modifier Letters: added a few + +2009-07-08 22:38 +0000 [r1345] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin: various horizontal + spacing and positioning issues Replaced Tz and tz ligatures with + the originals of Danial Johnson. (range is "Mayanist" and despite + Unicode samples, current usage uses normal z in glyph) Put + stylized Tz tz in a discretionary ligature lookup. + +2009-07-08 18:39 +0000 [r1344] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Cyrillic yi_yi + Ukrainian ligature Latin various pointwise cleanup, made some + references, horizontal adjustments + +2009-07-08 00:16 +0000 [r1343] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Cyrillic: Special ligature + for Ukrainian yi_yi, also some kerning + +2009-07-07 08:09 +0000 [r1342] Stevan_White: + + * FreeSerif.sfd: Latin: kerning; made accents on + i tighter to avoid collisions + +2009-07-05 13:08 +0000 [r1341] Stevan_White: + + * FreeSansBold.sfd, + FreeSansBoldOblique.sfd: Made lookup tables + for Dutch IJ + +2009-07-05 13:01 +0000 [r1340] Stevan_White: + + * FreeSansBold.sfd, + FreeSansBoldOblique.sfd: Re-did Dutch digraph + IJ in bold faces as "broken-U", because I thought it was cool and + nobody was there to stop me. + +2009-07-05 12:35 +0000 [r1339] Stevan_White: + + * FreeSerif.sfd: Corrected ligatures Tz tz; put + them in special lookup Latin Extended Additional: added + medevalist letters, completing range + +2009-07-05 11:07 +0000 [r1338] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Cyrillic: added yi_yi + ligature for Ukrainian in roman. Not sure if it's right. Latin: + kerning. Added longs_t ligature, and historic ligature tables + IPA: in bolditalic, added a letter or two + +2009-07-04 23:22 +0000 [r1337] Stevan_White: + + * FreeSerif.sfd: Kerning for hbar + +2009-07-04 23:10 +0000 [r1336] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Kerning for Western Slavic + languages Added a couple of IPA to BI + +2009-07-04 13:29 +0000 [r1335] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: combined letters ae, + oe, ij had incorrect horizontal spacing + +2009-07-04 13:14 +0000 [r1334] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: combined letters ae, oe, ij + had wrong horizontal spacing. + +2009-07-04 12:27 +0000 [r1333] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Combining Diacritical Marks + for Symbols: additions and fiddling. Also related circles, + arrows. + +2009-07-04 09:22 +0000 [r1332] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Letterlike Symbols: + various additions and adjustments Number Forms: Completed range + in serif roman. Adjusted spacing of Latin numerals in serif + faces. Diacritics for Symbols: various additions Geometric + shapes: thought it best for circle to be round even in oblique + faces. It's a choice of course. Added to several faces. Made all + to pass tests (except sinhals) + +2009-07-02 20:37 +0000 [r1331] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Letterlike Symbols: more + additions, adjustments Also fiddled with some math symbols in + Sans faces + +2009-07-02 09:14 +0000 [r1330] Stevan_White: + + * FreeSans.sfd, + FreeSansOblique.sfd: Letterlike Symbols; + additions and adjustments Note: Pango is rendering very + strangely: many glyphs in the font are being stolen from some + other fonts instead: All the script an blackletter, and some + others as well. Is there a cache in the system somewhere? Or + what? + +2009-06-28 19:48 +0000 [r1329] Stevan_White: + + * FreeSerif.sfd: Modified glyph. From patch by + Pavel Skrylev. + +2009-06-28 19:11 +0000 [r1328] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Superscritps and + Subscripts: made glyphs to complete range in all faces + +2009-06-28 17:43 +0000 [r1327] Stevan_White: + + * FreeSans.sfd, + FreeSansOblique.sfd: Added some combining + marks for symbols and Blackboard Bold letters to letterlike + symbols + +2009-06-28 08:59 +0000 [r1326] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerifBold.sfd: Various adjustments + regarding superscript and subscript characters in several ranges. + +2009-06-27 15:45 +0000 [r1325] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: More fiddling with + super/subscripts Tidied points in Serif to make fontforge "wrong + direction" complaint in scaled reference go away. Made some other + references in basic latin ranges. + +2009-06-27 14:54 +0000 [r1324] Stevan_White: + + * FreeSerif.sfd: Superscripts and subscripts (in + various ranges): tried to systematize sizing and vertical + placement. Note: most letters are still simply scaled. This is + practical maintenance-wise, but isn't typographically optimal. + +2009-06-27 09:04 +0000 [r1323] Stevan_White: + + * FreeSerif.sfd: Cyrillic Extended A: altered + mark positions + +2009-06-26 23:31 +0000 [r1322] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Phonetic Extensions: + various corrections and fiddling Changed Blues values in + FreeSerifBoldItalic + +2009-06-25 19:27 +0000 [r1321] Stevan_White: + + * FreeSansBold.sfd, + FreeSansBoldOblique.sfd: Combining Diacritical + Marks for Symbols: added to bold oblique added placement mark to + many + +2009-06-25 07:37 +0000 [r1320] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Deleted TrueType + tables 'cvt', 'fpgm', 'prep' because of FontForge complaints. + +2009-06-25 07:24 +0000 [r1319] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: IPA Extensions: + completed in bold and boldoblique, completing range for face. All + faces: deleted 'cvt', 'prep', 'fpgm' TrueType tables, because + FontForge was complaining about them (legacy hinting that could + interfere, possibly lower quality code, etc) + +2009-06-24 23:22 +0000 [r1318] Stevan_White: + + * FreeSansBold.sfd, + FreeSansBoldOblique.sfd: IPA Extensions: made + several characters + +2009-06-24 22:25 +0000 [r1317] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: IPA Extensions: completed + range in bold + +2009-06-23 21:48 +0000 [r1316] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: Spacing Modifiers: added a + couple Combining Diacriticals: brought range to par with FreeSans + +2009-06-23 21:11 +0000 [r1315] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Same correction as + for FreeSerif + +2009-06-23 20:58 +0000 [r1314] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Corrected descender of 027f + +2009-06-23 20:45 +0000 [r1313] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: IPA and related: made lots + of additional glyphs + +2009-06-22 08:43 +0000 [r1312] Stevan_White: + + * FreeSerif.sfd: Latin: further clean-up + +2009-06-21 10:53 +0000 [r1311] Stevan_White: + + * FreeSerif.sfd: General pointwise clean-up of + Latin and Latin Extended. No visible changes were intended + besides changed policy on horizontal placement of some horned + letters + +2009-06-21 09:21 +0000 [r1310] Stevan_White: + + * FreeSerif.sfd: Latin Extended-C: constructed + glyphs to complete range. Latin Extended-D: constructed a bunch + of glyphs; some related changes elsewhere. + +2009-06-20 17:43 +0000 [r1309] Stevan_White: + + * FreeSerif.sfd: Latin Extended-C: added most of + range + +2009-06-20 12:51 +0000 [r1308] Stevan_White: + + * FreeSerif.sfd: Modifier Tone Letters: added + glyphs to complete range. This should also complete all the + IPA/Phonetic extenseions ranges. + +2009-06-20 11:25 +0000 [r1307] Stevan_White: + + * FreeSerif.sfd: Phonetic Extensions Supplement: + added letters completing range Note the superscript ones are + simply scaled, so stem width is not quite right... + +2009-06-19 08:19 +0000 [r1306] Stevan_White: + + * FreeSerif.sfd: Phonetic Extensions: made + letters to complete range + +2009-06-18 06:40 +0000 [r1305] Stevan_White: + + * FreeSans.sfd: IPA Extensions: clean-up, fix + some horizontal spacing issues + +2009-06-18 06:16 +0000 [r1304] Stevan_White: + + * FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Some glyph problems + clean-up, made to pass validate (BlueValues) + +2009-06-17 21:13 +0000 [r1303] Stevan_White: + + * FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: IPA Extensions: + Improved spacing and horizontal positioning + +2009-06-17 08:42 +0000 [r1302] Stevan_White: + + * FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Georgian: added + missing letter + +2009-06-17 08:22 +0000 [r1301] Stevan_White: + + * FreeSansBold.sfd, + FreeSansBoldOblique.sfd: IPA: made curls on + some glyphs more distinct. note horizontal placement in BO is + chaotic--needs work + +2009-06-14 13:51 +0000 [r1300] Stevan_White: + + * FreeSerif.sfd: Musical Symbols: various + experiments with lookups. calt: should have allowed isolatef + forms of combining marks, (but can't see application support...) + aalt, hist: for alterntative characters Added some historical + glyphs Math Alphanumeric: some clean-up. + +2009-06-11 21:57 +0000 [r1299] Stevan_White: + + * FreeSerif.sfd: Musical Symbols: various + tweeks. Failed attempt to use 'isol' lookup to put isolated + combining marks above the baseline. + +2009-06-11 09:04 +0000 [r1298] Stevan_White: + + * FreeSerif.sfd: Musical Symbols: more fiddling + with mark placement, strengthened ornamental endings + +2009-06-10 22:53 +0000 [r1297] Stevan_White: + + * FreeSerif.sfd: Musical Symbols: mkmk + positioning of augmentation dot + +2009-06-10 09:09 +0000 [r1296] Stevan_White: + + * FreeSerif.sfd: Musical Symbols: combining + marks above and below notes now working somewhat + +2009-06-08 21:46 +0000 [r1295] Stevan_White: + + * FreeSerif.sfd: Musical Symbols: more + adjustments of size and placement + +2009-06-06 23:28 +0000 [r1294] Stevan_White: + + * FreeSerif.sfd: Musical Symbols: mostly work on + lookups. Made tablature symbols thinner. + +2009-06-06 19:24 +0000 [r1293] Stevan_White: + + * FreeSerif.sfd: Musical Symbols: more fiddling + with sizes and positions Byzantine Musical Symbols: minor + clean-ups + +2009-06-06 12:31 +0000 [r1292] Stevan_White: + + * FreeSerif.sfd: Fixed some ATT problems with + 'kern' lookups for Cyrillic + +2009-06-06 12:25 +0000 [r1291] Stevan_White: + + * FreeSerif.sfd: Musical Symbols: more changes + to size and position + +2009-06-05 21:28 +0000 [r1290] Stevan_White: + + * FreeSerif.sfd: Musical Symbols: many changes + to glyph positions and shapes + +2009-05-27 22:36 +0000 [r1289] Stevan_White: + + * FreeSerif.sfd: Cyrillic, additions and + re-naming by Pavel Skrylev. * Added Cyrillic-B Ext glyphs, and + Cyrillic-A Ext glyphs. * Added cyr_above anchor to all cyrillic + glyphs, some glyphs was changed * To all Cyrillic letters I've + given proper names based on old Slavic language which is source + of all modern slavic languages. (the naming is contentious, and + there are a couple of technical problems...under consideration) + +2009-05-26 23:09 +0000 [r1288] Stevan_White: + + * FreeSerif.sfd: Musical Symbols: scaled up + accidentals a bit. reduced width of repeated figure marks reduced + width of caesura even more tried to implement mark + positioning...not working everywhere made references + +2009-05-25 23:48 +0000 [r1287] Stevan_White: + + * FreeSerif.sfd: Made all letterlike glyph parts + more like those from Serif and Serif Italic. (Except for Ped. + U+1d1ae) + +2009-05-20 08:25 +0000 [r1286] Stevan_White: + + * FreeSerif.sfd: Corrected DPOS lookup for Music + range to be in script 'musi' + +2009-05-20 07:35 +0000 [r1285] Stevan_White: + + * FreeSerif.sfd: Western Musical Symbols: + fiddling Miscellaneous Symbols: re-design of musical flat symbol + +2009-05-19 07:37 +0000 [r1284] Stevan_White: + + * FreeSerif.sfd: Western Musical Symbols: + revised horizontal placement of notes + +2009-05-19 01:38 +0000 [r1283] Stevan_White: + + * FreeSerif.sfd: Western Musical Symbols: raised + some more glyphs + +2009-05-19 01:27 +0000 [r1282] Stevan_White: + + * FreeSerif.sfd: Western Musical Symbols: + altered many combining symbols to be more like Unicode sample + corrected many symbols that should be spacing but had 0 width + raised many symbols that were far lower than in Unicode samples + +2009-05-18 09:47 +0000 [r1281] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: U+0354 and U+0355 + (combining left/right arrowhead below) were switched + +2009-05-11 21:27 +0000 [r1280] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Hebrew: Moved vowel below mark + for esh (05e8) and dalet (05d3) as recommended in bug report + #25887 "FreeSans Hebrew most nonspacing marks are spacing" + https://savannah.gnu.org/bugs/?25887 + +2009-05-11 07:25 +0000 [r1279] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Put PS Private + BlueScale back to default. (Was really experiment to alleviate + excessive overshoot. Didn't work and FontForge complained.) + +2009-05-11 07:21 +0000 [r1278] Stevan_White: + + * FreeSerif.sfd: Geometric Shapes: made two + 'bullet' shapes to be consistent with 'bullet' Blues values: put + Std VH W into Stem Snap values + +2009-05-11 07:09 +0000 [r1277] Stevan_White: + + * FreeSans.sfd: More Geometric Shapes. also + worked on character widths. + +2009-05-09 19:47 +0000 [r1276] Stevan_White: + + * FreeSans.sfd: More Geometric Shapes + +2009-05-02 12:44 +0000 [r1274-1275] Stevan_White: + + * FreeSansOblique.sfd: Had misplaced Tifinagh + range. + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: The rest of Tifinagh, + courtesy of Daniel Johnson. + a few adjustments. + +2009-05-01 09:06 +0000 [r1273] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Explicitly disabled + PS Private dictionary entry BlueFuzz as recommended in Adobe Type + 1 Font Format, sect. 5.8. + +2009-05-01 07:50 +0000 [r1272] Stevan_White: + + * FreeSans.sfd: Tifinagh range, courtesy of + Daniel Johnson. + +2009-05-01 07:47 +0000 [r1271] Stevan_White: + + * tools/ranges.py: Corrections for Georgian and + Tifinagh ranges + +2009-05-01 07:17 +0000 [r1270] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Adjusted PS Private + values according to understanding of Adobe Type 1 Font Format + (Ch. 5, Private Dictionary) Not completely clear on BlueScale, + and StemSnap values are still a mystery. (FontForge 'guess' seems + to do little or nothing, and I don't know where these values came + from) Original hope was to improve appearance of overshoot in + Sans, but it seems that my renderers ignore this information. + +2009-04-28 07:41 +0000 [r1269] Stevan_White: + + * FreeSans.sfd: More Geometric Shapes + +2009-04-27 23:14 +0000 [r1268] Stevan_White: + + * FreeSans.sfd: More Geometrical Shapes + +2009-04-27 08:11 +0000 [r1267] Stevan_White: + + * FreeSans.sfd: Added U+25D0-3 (half-black + circles) Note the Geometric Shapes range is still in poor shape + in Sans. + +2009-04-25 11:55 +0000 [r1266] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Serif: fiddled with mark + positioning in Cyrillic and Glagolitic Non-roman faces: Added + 'mark' positioning for Cyrillic + +2009-04-14 09:16 +0000 [r1265] Stevan_White: + + * FreeSerif.sfd: Cyrillic Extended-B more + additions. Now has all except payerok punctuation and Old + Abkhasian letters. + +2009-04-13 18:10 +0000 [r1264] Stevan_White: + + * FreeSerif.sfd: Cyrillic Extended-B a few more + letters + +2009-04-13 17:35 +0000 [r1263] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: kerning: tweeks + +2009-04-11 15:35 +0000 [r1262] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, FreeMono.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Georgian: additions and + improvements. Serif now has full compliment. Note uppercase is + questionable, being a simple scaling... + +2009-04-11 13:20 +0000 [r1261] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Latin Extended-D + added u+a788-c + +2009-04-11 12:08 +0000 [r1260] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin Extended-D corrected + slots for Mayanist letters in roman added modifier letters + u+a788-c + +2009-04-11 11:42 +0000 [r1259] Stevan_White: + + * tools/ranges.py: Corrected Vai range + +2009-04-11 10:50 +0000 [r1258] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin Extended-D Mayanist + letters by Daniel Johnson + +2009-04-10 09:00 +0000 [r1257] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: Letterlike Symbols: additions + and improvements + +2009-04-10 08:38 +0000 [r1256] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Letterlike Symbols: + additions, improvements + +2009-04-10 07:13 +0000 [r1255] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Reconsidered numeral + 1. Made angle more like other angles in font. + +2009-04-09 06:45 +0000 [r1254] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Increased angle of + hook on numeral 'one', to improve distinction from letter 'l' at + small point sized. (Noticed that on some systems, even at 12 + point the distinction had not been obvious.) + +2009-03-29 13:56 +0000 [r1253] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: General Punctuation: + Adjust position, shape of quotes, fiddle with others. + +2009-03-29 12:12 +0000 [r1252] Stevan_White: + + * FreeSans.sfd: Kerning: Had grouped letters + with round bowls on left (e,c,0,d,q) together, but now see the + original Nimbus fonts had left bounds that vary by 10 EM or more, + which is quite visible. I am correcting a flaw in the original + font in a very difficult and complex way. It would be much better + to make the bounds of these similar letters to be equal. To do: + same for punctuation, copy to other styles of Sans + +2009-03-29 03:48 +0000 [r1251] Stevan_White: + + * FreeSerif.sfd: Kerning: tweeks + +2009-03-29 03:34 +0000 [r1250] Stevan_White: + + * FreeSerif.sfd: Kerning tweek + +2009-03-22 18:54 +0000 [r1249] Stevan_White: + + * FreeMono.sfd: clean-up of some of the basic + Nimbus glyphs + +2009-03-22 14:26 +0000 [r1248] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Hebrew: more work on lookups + regarding vowel marks + +2009-03-22 11:03 +0000 [r1247] Stevan_White: + + * FreeSans.sfd: Hebrew: vowel mark positioning + +2009-03-16 19:26 +0000 [r1246] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: re-named some lookup tables + (Sinhala, Hebrew) + +2009-03-15 11:58 +0000 [r1245] Stevan_White: + + * FreeSerif.sfd: Georgian: point-wise cleanup + note: doubts about spacing and glyph bounds in capitals + +2009-03-15 09:58 +0000 [r1244] Stevan_White: + + * FreeSerif.sfd: Greek Extended: corrected + u+1fd3 + +2009-03-13 08:15 +0000 [r1243] Stevan_White: + + * FreeSerif.sfd: Cyrillic (and extensions) + various tweeks to old Cyrillic letters, spacing. + +2009-03-07 12:30 +0000 [r1242] Stevan_White: + + * FreeMonoBoldOblique.sfd: correct direction + braceleft + +2009-03-07 12:16 +0000 [r1240-1241] Stevan_White: + + * FreeSerif.sfd: Glagolitic: tweeks + + * FreeMonoBold.sfd: correct direction of + braceleft + +2009-03-05 09:03 +0000 [r1239] Stevan_White: + + * FreeSerif.sfd: Glagolitic: more fiddling. + Raised small letters so their tops are even with the tops of the + big letters, which is more in line with their "hanging" nature, + and with most manuscripts. + +2009-03-04 07:03 +0000 [r1238] Stevan_White: + + * tools/ranges.py: ranges for Sinhala + +2009-03-03 09:54 +0000 [r1237] Stevan_White: + + * FreeSerif.sfd: Glagolitic: more tweeks + +2009-03-02 23:03 +0000 [r1236] Stevan_White: + + * FreeSerif.sfd: Glagolitic: added Djervi (I + think) + +2009-03-02 21:49 +0000 [r1235] Stevan_White: + + * tools/GenerateMacTT (added): Special script for + generating fonts that don't give errors on the Mac. I hope + somebody will fix something, either in Font Book or FontForge, + that will make this unnecessary + +2009-03-01 23:24 +0000 [r1234] Stevan_White: + + * FreeSerif.sfd: Glagolitic: tweeks + +2009-02-28 19:38 +0000 [r1233] Stevan_White: + + * FreeSerif.sfd: Sinhala: replaced U+0DD0-1 with + ones from sinha font + +2009-02-28 12:25 +0000 [r1232] Stevan_White: + + * FreeSerif.sfd: Glagolitid: Additions, + improvements (Note: the characters still missing I simply haven't + yet recognized in a manuscript or found in an on-line HTML + encoded text. I would like to see real ones rather than copying + out of the Unicode samples.) Cyrillic Extended B: Assembled + Monograph Uk, uk. See discussion + http://en.wikipedia.org/wiki/Uk_(Cyrillic) + +2009-02-28 00:14 +0000 [r1231] Stevan_White: + + * FreeSerif.sfd: More work on Glagolitic + +2009-02-27 15:35 +0000 [r1230] Stevan_White: + + * FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Made braces more + distinctive. + +2009-02-26 15:12 +0000 [r1229] Stevan_White: + + * FreeMono.sfd: ASCII: Accentuated braces (for + better readability in terminals) + +2009-02-24 22:27 +0000 [r1228] Stevan_White: + + * FreeSerif.sfd: Cherokee: Daniel improved + U+13d2 + +2009-02-24 07:41 +0000 [r1227] Stevan_White: + + * FreeSerif.sfd: Sinhala: Copied most Unicode + glyphs directly from Yannis Haralambous sinhala MetaFont files. + These are: all but 0dd0 0dd1 0df4. Gave Unicode characters names, + based on a transliteration scheme from Harshula. The auxiliary + Sinhala are all from the LKLUG font. + +2009-02-22 23:41 +0000 [r1226] Stevan_White: + + * FreeSerif.sfd: Copied glyphs from LKLUG font, + as discussed with Harshula Jayasuriya. + http://sinhala.cvs.sourceforge.net/viewvc/sinhala/sinhala/fonts/ + This font is derived from a Metafont font: This package was + originally developed by Yannis Haralambous (Yannis.Haralambous at + univ-lille1 fr), with funding from the Wellcome Institute for the + History of Medicine, 183 Euston Road, London NW1 2BE, England + (Contact person: Dominik Wujastyk (D.Wujastyk at ucl ac uk)), + which is using the font in its Catalogue of Sinhala Manuscript. + The original package was available by ftp at ftp.bcc.ac.uk in: + /pub/users/ucgadkw/indology/software/sinhala1-TeX.zip The hope is + to eventually pull glyphs directly from the original MF files. + +2009-02-21 19:48 +0000 [r1225] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: tidying previous commits + +2009-02-21 14:11 +0000 [r1224] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Serif: Revised letter + spacing in Armenian. Serif roman: Added initial version of + Glagolitic (by me) + +2009-02-18 20:38 +0000 [r1223] Stevan_White: + + * FreeSerif.sfd: Armenian: spacing changes + Sinhala: deleted range, for usual reasons: It doesn't even + contain the full set of Unicode letters, and Sinhala requires + auxiliary characters and lookup tables for proper representation. + (Found what I think are the originals at + http://www.mettanet.org/fonts/ ) + +2009-02-12 20:08 +0000 [r1222] Stevan_White: + + * tools/ranges.py, + tools/findBackLayers.py, + tools/GenerateTrueType, + tools/GenerateOpenType, + tools/range_report.py, + tools/validate.py, + tools/checkGlyphNumbers.py, + tools/isMonoMono.py: Changed + /usr/local/bin/fontforge to /usr/bin/fontforge (to work with the + update-alternatives mechanism, whereby a link is made + /usr/bin/fontforge -> /etc/alternatives/fontforge -> preferred + binary ) + +2009-02-12 19:33 +0000 [r1221] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: SerifBoldItalic - Armenian + oblique from Daniel Johnson's bold version Added ligatures (by + Daniel) and lookup tables. + +2009-02-12 08:39 +0000 [r1220] Stevan_White: + + * FreeSerifItalic.sfd: Armenian: Made oblique + version of Daniel Johnson's range + +2009-02-12 08:28 +0000 [r1219] Stevan_White: + + * FreeSerifBold.sfd: Armenian by Daniel Johnson + +2009-02-12 08:00 +0000 [r1218] Stevan_White: + + * FreeSerif.sfd: Improvements of a couple of + Armenian characters, from Daniel Johnson. + +2009-02-07 20:28 +0000 [r1217] Stevan_White: + + * FreeSerifItalic.sfd: Latin: kerning fixed some + missing extrema + +2009-02-07 19:47 +0000 [r1216] Stevan_White: + + * FreeSerifItalic.sfd: Latin: kerning made some + more delicate italic IPA letters + +2009-02-06 20:14 +0000 [r1215] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Latin: kerning + +2009-02-06 10:19 +0000 [r1214] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: Latin: kerning Adjusted ff + etc ligatures in Italic + +2009-02-05 23:20 +0000 [r1213] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: Latin: kerning + +2009-02-05 19:57 +0000 [r1212] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Thai sample text (means + something like Mr Sangkapan who sells bottles was picked up by + the police because he stole the wash of ms. .....) + +2009-02-04 20:19 +0000 [r1211] Stevan_White: + + * FreeSans.sfd: Vai range, by Daniel Johnson + +2009-02-04 20:08 +0000 [r1210] Stevan_White: + + * FreeSerifBoldItalic.sfd: Latin: kerning + +2009-02-03 20:53 +0000 [r1209] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: Latin: kerning + +2009-02-02 23:44 +0000 [r1208] Stevan_White: + + * FreeSerifBoldItalic.sfd: Latin: kerning + +2009-02-02 23:32 +0000 [r1207] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: Latin: kerning + +2009-01-26 21:00 +0000 [r1206] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Made nu distinct from + v. Remedies bug #25376: https://savannah.gnu.org/bugs/?25376 + greek letter 'nu' [U+03bd] same as latin 'v' [U+0076] in FreeMono + +2009-01-22 21:37 +0000 [r1205] Stevan_White: + + * FreeSans.sfd: Kerning. Need to copy to other + faces + +2009-01-22 01:44 +0000 [r1204] Stevan_White: + + * FreeSerif.sfd: Arabic ligatures: turned on + "ignore combining marks" on advice of Khaled Hosny. + +2009-01-20 17:09 +0000 [r1203] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Drew U+1e9C-F in Latin + Extended Additional (including capital ess-zet) + +2009-01-19 20:48 +0000 [r1202] Stevan_White: + + * FreeMono.sfd: Update ot Kayah Li from Daniel + Johnson + +2009-01-18 16:49 +0000 [r1201] Stevan_White: + + * AUTHORS, CREDITS: Daniel Johnson's + latest contributions + +2009-01-18 14:33 +0000 [r1200] Stevan_White: + + * FreeSerif.sfd: Coptic: Laula to be same height + as Phi Psi (higher than other letters). Dei and dei also to be + higher letters, adjusted widths too. + +2009-01-18 14:25 +0000 [r1199] Stevan_White: + + * FreeSans.sfd: Unified Canadian Aboriginal + Syllabics: moved the non-Unicode letter part glyphs ucas.ring + ucas.horizline ucas.shortvert ucas.righttack ucas.lefttack to the + Private Use area 59664-59668 Technique was to edit the SFD file + directly: It seems the encoding slot for the glyph is the first + field of the "Encoding:" line for the character. + +2009-01-18 13:28 +0000 [r1198] Stevan_White: + + * FreeMono.sfd: Cherokee: improvements from D. + Johnsaon + +2009-01-18 12:34 +0000 [r1197] Stevan_White: + + * FreeSerif.sfd: Latin: kerning + +2009-01-17 18:58 +0000 [r1196] Stevan_White: + + * FreeSerif.sfd: Cyrillic: kerning + +2009-01-17 15:26 +0000 [r1195] Stevan_White: + + * FreeSerif.sfd: Re-linked Ezh/Yogh and re-made + reversed Ezh + +2009-01-16 21:28 +0000 [r1194] Stevan_White: + + * FreeSerif.sfd: Fiddled with Coptic glyphs: + Longer tail on Shei, less droopy Alfa. Made Armenian Aiw to be a + link to Phi (on Daniel Johnson's advice ) + +2009-01-16 08:01 +0000 [r1193] Stevan_White: + + * tools/ranges.py: corrected Unified Canadian + Aboriginal Syllabics + +2009-01-16 07:44 +0000 [r1192] Stevan_White: + + * FreeMono.sfd: Kayah Li by Daniel Johnson + +2009-01-16 07:36 +0000 [r1190-1191] Stevan_White: + + * FreeMono.sfd: removed hints + + * FreeMono.sfd: Cherokee, by Daniel Johnson + +2009-01-16 07:27 +0000 [r1189] Stevan_White: + + * FreeSerif.sfd: Made references of some + Armenian punctuation, Made primereversed to be really the reverse + of prime. + +2009-01-13 21:43 +0000 [r1187-1188] Stevan_White: + + * FreeSans.sfd: named some Armenian letters + + * FreeSerif.sfd: Armenian range by Daniel + Johnson, with ligatures. + +2009-01-13 08:43 +0000 [r1186] Stevan_White: + + * README: GPL 2 -> GPL 3 + +2009-01-12 20:35 +0000 [r1185] Stevan_White: + + * FreeSerif.sfd: Coptic: more kerning + +2009-01-12 09:06 +0000 [r1184] Stevan_White: + + * FreeSerif.sfd: Coptic: Raised top of laula + above common top, as it appears in most other fonts.Makes it + easier to distinguish from alfa. A little more space around Iauda + and iauda. Kerned Dei. + +2009-01-11 22:30 +0000 [r1183] Stevan_White: + + * FreeSerif.sfd: Coptic: Made capital Alpha is + distinct in printed form. Made more angular vida with flattened + top and bottom. Made small hori more curvy. + +2009-01-11 14:06 +0000 [r1182] Stevan_White: + + * FreeSerif.sfd: Greek: made archaic letters + u+0370-3 (understand are used for old numbering) Coptic: more + fiddling with Hori, made Kapa much wider reduced width of small + letter straight stems to match small letters in Latin kerning for + capitals + +2009-01-11 00:39 +0000 [r1181] Stevan_White: + + * FreeSerif.sfd: Revised Coptic. Added a few + dialectic letters and kai symbol Removed many "ear" serifs, + preferring a slashing continuation of long decenders and + diagonals as in some manuscripts Made Kai and kai not to go below + baseline Made Psi a little broader Made small khei distinct from + cap, Revised Hori and hori. Some of this toward + https://savannah.gnu.org/bugs/?25289 + +2009-01-08 22:23 +0000 [r1180] Stevan_White: + + * FreeSerif.sfd: Various alterations to Coptic: + Re-worked K and M, added kern table. + +2009-01-07 10:03 +0000 [r1179] Stevan_White: + + * FreeSans.sfd: Daniel Johnson's fix of TT + reference transformation bug in Unified Canadian Aboriginal + Syllabics, + +2009-01-06 22:27 +0000 [r1178] Stevan_White: + + * FreeSans.sfd: Unified Canadian Aboriginal + Syllabics range, courtesy of Daniel Johnson. + +2009-01-04 16:12 +0000 [r1176] Stevan_White: + + * ChangeLog: copyright dates 2009 + +2009-01-04 16:08 +0000 [r1175] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Added 2009 to + copyright dates + +2009-01-04 15:59 +0000 [r1173-1174] Stevan_White: + + * ChangeLog: changes since last release + + * AUTHORS, CREDITS: Removed + Glagolitic range author + +2009-01-04 15:27 +0000 [r1172] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSerifBold.sfd: Added some TrueType names + +2009-01-01 20:47 +0000 [r1171] Stevan_White: + + * FreeSerif.sfd: Removde Glagolitic range, since + have not (yet) received OK from author. Added some TrueType Names + +2008-12-31 13:06 +0000 [r1170] Stevan_White: + + * COPYING: Updated license to GPL v3 + +2008-12-30 21:34 +0000 [r1169] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd: Oblique versions of + Daniel Johnson's Cherokee. + +2008-12-30 20:42 +0000 [r1168] Stevan_White: + + * FreeSerifBold.sfd: Cherokee Bold range from + Daniel Johnson. + +2008-12-27 16:43 +0000 [r1165-1167] Stevan_White: + + * tools/isMonoMono.py: 900 EM -> 800 + + * FreeMonoBold.sfd, + FreeMonoBoldOblique.sfd: Made glyphs to lie + between -200 and 800 EM + + * tools/isMonoMono.py: check that glyphs lie in + vertical bounding boxes + +2008-12-27 14:46 +0000 [r1164] Stevan_White: + + * FreeMono.sfd, + FreeSerif.sfd: Extensible bracket characters + didn't exactly line up. Fixed. Mono: a couple of glyphs had + gotten out of their bounding boxes again. + +2008-12-26 22:41 +0000 [r1162] Stevan_White: + + * ChangeLog: last two day's changes + +2008-12-26 22:36 +0000 [r1160-1161] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Final pre-release + cleanup + + * notes/maintenance.txt: nongnu -> gnu + +2008-12-26 20:48 +0000 [r1159] Stevan_White: + + * FreeSerif.sfd: Buginese vowel u was misnamed + +2008-12-26 20:36 +0000 [r1158] Stevan_White: + + * FreeMono.sfd: Yatcyrillic somehow was a mark + character ... fixed + +2008-12-26 20:27 +0000 [r1157] Stevan_White: + + * FreeSans.sfd, + FreeSansOblique.sfd: Had to un-link references + in Sans: uni02B2, uni02B5 SansOblique: uni0363 because validation + of the TTF file said the glyph "is drawn in wrong direction" I + would have preferred to have understand this... + +2008-12-26 20:23 +0000 [r1156] Stevan_White: + + * sfd/Makefile: Added quick test for FontForge + version. + +2008-12-26 19:52 +0000 [r1155] Stevan_White: + + * FreeMonoBold.sfd, + FreeMonoBoldOblique.sfd: Removed kerning + tables (?? what were they doing here anyway??) + +2008-12-26 19:43 +0000 [r1154] Stevan_White: + + * tools/ranges.py: some changes to explanatory text + +2008-12-26 18:54 +0000 [r1153] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Kerning tables for Thai. + Handles one common case: short letter followed by a tall one with + an overhang to the left. + +2008-12-26 12:33 +0000 [r1152] Stevan_White: + + * INSTALL: small corrections: better detail about + Windows install + +2008-12-26 12:29 +0000 [r1151] Stevan_White: + + * AUTHORS, CREDITS: added most recent + authors, synched up + +2008-12-25 20:47 +0000 [r1150] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd: More putzing with kerning + tables + +2008-12-25 14:43 +0000 [r1149] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Copied kerning classes + Serif -> SerifBold SerifItalic -> SerifBoldItalic Sans -> + SansOblique SansBold SansBoldOblique Some associated naming of + characters, etc + +2008-12-25 12:51 +0000 [r1146-1148] Stevan_White: + + * AUTHORS, CREDITS, + README: formatting + + * ChangeLog: brought up to date + + * notes/maintenance.txt: added new release + proceedures + +2008-12-25 11:54 +0000 [r1145] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Additions and correction in + Spacing Modifier letters and IPA Extensions + +2008-12-23 21:35 +0000 [r1144] Stevan_White: + + * FreeSerif.sfd: Applied patch to Cherokee range + +2008-12-20 15:57 +0000 [r1143] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: Fixed kern classes that end in + space (crashes FontForge) + +2008-12-20 15:38 +0000 [r1142] Stevan_White: + + * FreeSerifItalic.sfd: kerning + +2008-12-20 12:17 +0000 [r1141] Stevan_White: + + * FreeSerif.sfd: kerning + +2008-12-19 00:55 +0000 [r1140] Stevan_White: + + * FreeSerifItalic.sfd: kerning + +2008-12-19 00:06 +0000 [r1139] Stevan_White: + + * FreeSerif.sfd: kerning Some adjustments to + Glagolitc spacing, mark positioning + +2008-12-17 23:08 +0000 [r1138] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: kerning + +2008-12-16 23:36 +0000 [r1137] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: kerning + +2008-12-11 22:27 +0000 [r1136] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: kerning + +2008-12-10 11:03 +0000 [r1135] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd: kerning + +2008-12-10 09:34 +0000 [r1134] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: kerning + +2008-12-08 23:01 +0000 [r1133] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: kerning + +2008-12-08 09:52 +0000 [r1132] Stevan_White: + + * FreeSansOblique.sfd: Slanted small final + sigma. remedies bug #24993: U+03C2 "Greek small letter final + sigma" not slanted in Free Sans Oblique + https://savannah.gnu.org/bugs/index.php?24993 + +2008-12-07 19:30 +0000 [r1131] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: kerning, etc + +2008-12-06 23:42 +0000 [r1130] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: kerning + +2008-12-06 13:48 +0000 [r1129] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSansOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: kerning Tweek in Sans + having to do with addition of Latin Extended + +2008-12-05 20:52 +0000 [r1128] Stevan_White: + + * FreeSansBold.sfd, + FreeSansBoldOblique.sfd: Tweeks to Latin + Extended Additional + +2008-12-05 20:34 +0000 [r1127] Stevan_White: + + * FreeSansBoldOblique.sfd: Added Latin Extended + Additional range + +2008-12-05 10:35 +0000 [r1126] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Extra space at end of + kern class names has bad effect on FornForge script that try to + run through kern classes. Some FontForge call corrupts memory. + Got rid of extra space. + +2008-12-02 21:12 +0000 [r1125] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Replaced U+0387 GREEK + ANO TELEIA with top dot of colon. See bug #24987: U+0387 GREEK + ANO TELEIA too low https://savannah.gnu.org/bugs/index.php?24987 + +2008-12-02 09:25 +0000 [r1124] Stevan_White: + + * FreeSerif.sfd: more kerning in Cyrillic (broke + into two tables of classes) + +2008-12-01 20:22 +0000 [r1122-1123] Stevan_White: + + * FreeSerif.sfd: tweeks to kernin + + * FreeSerifBoldItalic.sfd: kerning + +2008-11-30 21:17 +0000 [r1121] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Kerning for Latin and + Cyrillic fairly complete in Serif faces. Complete in sense that + it looks pretty good under Pango for English French German + Spanish Polish Czech Latvian But have not done Vietnamese (will + require many more entries). I adjust roman and italic, then copy + tables by hand to bold and bolditalic. Misgiving: bolditalic is + much too crammed Overall, I may have over-kerned. (A difficult + temptation to master.) + +2008-11-30 15:06 +0000 [r1120] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: kerning + +2008-11-30 13:43 +0000 [r1119] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSans.sfd, + FreeSerif.sfd: kerning In Serif, modified + widths of some extended latin glyphs + +2008-11-29 13:44 +0000 [r1118] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: kerning + +2008-11-29 11:56 +0000 [r1117] Stevan_White: + + * FreeSerif.sfd: Broke Latin kerning subtable + into four, hoping it will be easier to understand and maintain. + +2008-11-29 11:26 +0000 [r1116] Stevan_White: + + * FreeSansBold.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: kerning + +2008-11-29 00:38 +0000 [r1115] Stevan_White: + + * FreeSansOblique.sfd: kerning + +2008-11-28 23:43 +0000 [r1114] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSerif.sfd: kerninig + +2008-11-28 21:54 +0000 [r1112-1113] Stevan_White: + + * FreeSans.sfd: kerning + + * FreeSans.sfd, + FreeSerif.sfd: more kerning; made guillemot + narrower + +2008-11-28 10:26 +0000 [r1111] Stevan_White: + + * FreeSans.sfd: kerning + +2008-11-28 00:11 +0000 [r1109-1110] Stevan_White: + + * FreeSansOblique.sfd, + FreeSerif.sfd: previous commit was incomplete + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Adjusted width of single + quotes (and apostrophe) to be "punctuation width" More fiddling + with kerning. + +2008-11-27 22:37 +0000 [r1108] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: much fiddling with kerning + +2008-11-26 19:44 +0000 [r1107] Stevan_White: + + * FreeSerifBold.sfd: Basic kerning, named main + Cyrillic letters + +2008-11-26 18:41 +0000 [r1106] Stevan_White: + + * FreeSerifItalic.sfd: Basic Cyrillic kerning + +2008-11-26 07:03 +0000 [r1105] Stevan_White: + + * FreeSerif.sfd: further tweeks to Cyrillic + kerning + +2008-11-26 06:58 +0000 [r1104] Stevan_White: + + * FreeSerif.sfd: Tweeks to Cyrillic kerning + +2008-11-26 00:32 +0000 [r1103] Stevan_White: + + * FreeSerifItalic.sfd, + sfd/Makefile, FreeSerif.sfd, + FreeSerifBold.sfd: Much fiddling with kerning, + tables, and generating fonts whose kerning tables work with + OpenOffice. + +2008-11-25 23:59 +0000 [r1102] Stevan_White: + + * tools/GenerateTrueType: Made to include old-style + kerning Converted to Python + +2008-11-24 08:11 +0000 [r1100-1101] Stevan_White: + + * FreeSerif.sfd: Prev commit to validate + + * FreeSerif.sfd: regularized padding in + Miscellaneous symbols. At least within related ranges tried to + make similar. + +2008-11-23 20:21 +0000 [r1097-1099] Stevan_White: + + * tools/ranges/__init__.py (added), + tools/ranges/OpenType.py (added), + tools/ranges (added): meant to add these before + moving the ranges.py file + + * tools/range_report (removed), + tools/range_report.py (added): preferred to keep + the file ending + + * tools/range_report (added): Starting to break out + different functionalities of this large script + +2008-11-23 15:38 +0000 [r1096] Stevan_White: + + * FreeSerif.sfd: Completed Miscellaneous + Symbols, with some drawings from George Douros' Unicode Symbols, + and some of mine. + +2008-11-23 14:21 +0000 [r1095] Stevan_White: + + * FreeSerif.sfd: Filled out Miscellaneous + Symbols. Used George Douros' Unicode font. + +2008-11-23 12:57 +0000 [r1094] Stevan_White: + + * FreeMono.sfd, + FreeMonoOblique.sfd: Replaced Greek Exteded + psili and dasia with scaled versions of the "bent quote" mark. I + think it's distinctive enough, but not so silly. Remedies bug + #22997: Mono: Greek Extended psili is ugly + https://savannah.gnu.org/bugs/?22997 + +2008-11-23 00:47 +0000 [r1093] Stevan_White: + + * FreeSerif.sfd: Made some recycling symbols + +2008-11-22 23:07 +0000 [r1092] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Finished with Hebrew + Pointed letters in all faces. + +2008-11-22 16:36 +0000 [r1091] Stevan_White: + + * FreeSans.sfd: Fiddled with Hebrew Pointed + letters + +2008-11-22 15:45 +0000 [r1090] Stevan_White: + + * FreeSerifItalic.sfd: Marks for Vietnamese + +2008-11-22 10:32 +0000 [r1089] Stevan_White: + + * CREDITS: fixed some links having to do with Omega, + intlfonts + +2008-11-22 09:32 +0000 [r1088] Stevan_White: + + * CREDITS: Fixed/removed broken links + +2008-11-21 23:53 +0000 [r1087] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: Letter pe had strange thick + middle ear that looked awful. lamed had ben bumped at some point. + Fixed. Adjusted some of the points. + +2008-11-21 22:54 +0000 [r1086] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: repairs to Pointed Hebrew + +2008-11-21 21:29 +0000 [r1085] Stevan_White: + + * FreeSerif.sfd: Numeral line positioning marks + for Gothic + +2008-11-21 10:17 +0000 [r1084] Stevan_White: + + * FreeSerifItalic.sfd: Added Combining Marks for + Symbols (some question about obliqueness of some symbols) Cleaned + up some empty glyphs in Pointed Hebrew. + +2008-11-20 21:00 +0000 [r1083] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Provided Hebrew pointed + letters, with lookups, for all Serif faces. + +2008-11-19 22:30 +0000 [r1082] Stevan_White: + + * FreeSerifBoldItalic.sfd: renamed Hebrew + lookups + +2008-11-19 22:12 +0000 [r1081] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: Completed Hebrew in Bold + faces. + +2008-11-19 00:04 +0000 [r1080] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSans.sfd, + FreeSansOblique.sfd, + FreeSerif.sfd: More tweeks to Hebrew points + +2008-11-18 23:44 +0000 [r1079] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd: Adjustments corrections and + additions to Hebrew points + +2008-11-18 20:56 +0000 [r1078] Stevan_White: + + * FreeSansBold.sfd: Cleaned out a lot of + ridiculous kernings + +2008-11-16 23:39 +0000 [r1077] Stevan_White: + + * FreeSansBoldOblique.sfd: fiddled with Armenian + ligatures + +2008-11-16 23:26 +0000 [r1076] Stevan_White: + + * FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Added Armenian (with + ligatures) to BoldOblique Fiddled with character spacing + +2008-11-16 22:56 +0000 [r1075] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Added U+01f9 and + paragraph end marker to Georgian Fiddled with Armenian ligatures + +2008-11-15 13:36 +0000 [r1074] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Added Georgian turned + gan 10F9 (because it was easy) + +2008-11-15 13:28 +0000 [r1073] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Another pass at + letter spacing in Cyrillic. Also went through ancient letters. + Added Georgian paragraph separator 10FB + +2008-11-15 10:11 +0000 [r1072] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Re-worked letter + spacing through modern Cyrillic range. + +2008-11-15 00:05 +0000 [r1071] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSerif.sfd: Letter spacing + +2008-11-14 22:48 +0000 [r1070] Stevan_White: + + * FreeSerif.sfd: Added several characters to + Cyrillic Extended-B + +2008-11-14 09:56 +0000 [r1069] Stevan_White: + + * FreeSansBold.sfd, + FreeSansBoldOblique.sfd: Made Cyrillic hooked + e U+04BC-F to look less goofy. + +2008-11-14 09:36 +0000 [r1068] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Based on assertion on + Pechatnyj Dvor's web site, Cyrillic Fita U+0472-3 and "Barred O" + U+04E8-9 are different styles the same letter, and the fact that + the tilde in the O never looked good in Sans, I made them all + barred O's. + +2008-11-14 09:32 +0000 [r1067] Stevan_White: + + * FreeSerif.sfd: Added Cyrillic Yn, yn + (U+a65e-f) + +2008-11-14 08:30 +0000 [r1066] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerifBold.sfd: Synced up Cyrillic and + Combining Diacritics ranges, Couple of tweeks in Gujarati to make + TT validate + +2008-11-13 23:44 +0000 [r1065] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Changes to older Cyrillic + letters, in response to further information. Made omegas, omegas + with titlo, and OT to all be of the same size and shape in Serif. + Un-linked Cyrillic Psi and psi from Greek, made squarer versions. + Some more Cyrillic diacritical marks in Sans. Re-worked U+04bc-f + . Experimenting with mark positioning for Cyrillic + +2008-11-12 22:53 +0000 [r1064] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Strove to make Euro + look more like the EC logo design, while making glyph fit better + with the design of its face. See bug #3576: Euro design + https://savannah.gnu.org/bugs/?23576 + +2008-11-12 21:33 +0000 [r1063] Stevan_White: + + * FreeSans.sfd: Tweeks to previous commit + +2008-11-12 21:10 +0000 [r1062] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Adjustments mostly to GPOS + tables having to do with Vietnamese marks. The WAZU Vietnamese + test page looks pretty good in Sans now. Still not thrilled with + below-dot when it appears with a mark over e.g. U+0102. Pango + positions one or the other but not both. + +2008-11-12 00:04 +0000 [r1061] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Extensive + modification of GPOS lookup tables for mark positioning. I think + they're now all functional (except styled Mono faces have none). + Also added lots of marks to faces that didn't have them, and also + fiddled with Combining Diacritical Marks. + +2008-11-10 19:53 +0000 [r1060] Stevan_White: + + * FreeSerif.sfd: Made one combining mark really + combining + +2008-11-10 19:49 +0000 [r1059] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Made a few combining + characters to be zero-width in Mono, Added them to other styles. + +2008-11-09 23:49 +0000 [r1058] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Figured out why below marks + in Thai weren't working in the lowest letters. I think Pango and + other font renderers ignore 'blwm'. 'mark' works though. + +2008-11-09 23:21 +0000 [r1057] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Tweeks to Thai marks + +2008-11-09 22:56 +0000 [r1056] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Several bugfixes in Thai, + mostly having to do with mark placement and ligatures. + Implemented ru-saraaa and lu-saraaa with ligatures. + +2008-11-09 21:21 +0000 [r1055] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: added and named + dottedcircle (used by Pango to render combining mark base) + +2008-11-09 12:42 +0000 [r1054] Stevan_White: + + * FreeSerif.sfd: More tweeks to Coptic + +2008-11-09 12:22 +0000 [r1053] Stevan_White: + + * FreeSerif.sfd: Tweeks to Coptic, after viewing + more papyrus samples and web pages. + +2008-11-09 10:41 +0000 [r1052] Stevan_White: + + * FreeSerif.sfd: Weight of Coptic small letters + made to match that of Latin and Greek ones. + +2008-11-08 20:05 +0000 [r1051] Stevan_White: + + * FreeSerif.sfd: Coptic tweek spacing + +2008-11-08 19:22 +0000 [r1050] Stevan_White: + + * FreeSerif.sfd: Made Coptic to comply better + with http://www.wazu.jp/gallery/Test_Coptic.html Made a flourish + at foot of letters with long diagonal. + +2008-11-08 15:51 +0000 [r1049] Stevan_White: + + * FreeSerif.sfd: Coptic: punctuation marks were + in the wrong row. + +2008-11-08 15:38 +0000 [r1048] Stevan_White: + + * FreeSerif.sfd: More tweeks to Coptic; put in a + mark lookup table. Note: for small letters I made scaled + references to captials. Results in those letters looking quite + light next to the capitals and next to small Latin letters. Also, + there are a few variant forms for capitals (Unicode samples don't + show this). It would be good to re-work + +2008-11-08 13:27 +0000 [r1047] Stevan_White: + + * FreeSerif.sfd: Added Coptic alphabet in + u+2C80-2CB1 and u+03E2-u+03EF, drawn/built by me, based on + Unicode samples, TeX font copte, and scans at WikiPedia. + +2008-11-07 08:12 +0000 [r1046] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Further tweeks to dieresis + in Greek and Cyrillic + +2008-11-07 07:41 +0000 [r1045] Stevan_White: + + * FreeSerif.sfd: replaced Greek I dieresis with + references, tweeked height of dieresis. + +2008-11-04 08:42 +0000 [r1044] Stevan_White: + + * FreeSerif.sfd: Added a few Cyrillic Extended-B + letters seen in web pages while looking for Glagolitic text. + +2008-11-04 00:29 +0000 [r1042-1043] Stevan_White: + + * FreeMono.sfd, + FreeMonoOblique.sfd: Added a few old Cyrillic + characters. + + * FreeSerif.sfd: Several corrections and tweeks + to Glagolitic. Still missing six slots from Unicode, but don't + see them in the TeX fonts. On the other hand, several on-line + Glagolitic pages (bibles etc) don't seem to use these. Maybe it's + OK as-is. + +2008-11-03 09:53 +0000 [r1041] Stevan_White: + + * FreeSerif.sfd: Added lowercase range to + Glagolitic, as a facile scaling of the uppercase. + +2008-11-03 09:50 +0000 [r1040] Stevan_White: + + * FreeSerif.sfd: Added letter to Glagolitic, + scaled range. + +2008-11-02 22:59 +0000 [r1039] Stevan_White: + + * FreeSerif.sfd: Replaced fraktur bold from + Mathematical Alphanumeric Symbols with that from TX Fonts by + Young Ryu. One concern: letter k is damaged (in both medium and + bold). I just hacked something up. Added Glagolitic "round type" + font (Croation capitols only) from the collection of Croatian + fonts for LaTeX by Darko Zubrinić + ftp://ftp.dante.de/tex-archive/languages/croatian/ + http://www.tug.org/TUGboat/Articles/tb17-1/tb50zubr.pdf Several + letters are missing besides the small letters. + +2008-11-02 09:06 +0000 [r1038] Stevan_White: + + * FreeSerifBoldItalic.sfd: A couple of Thai + references got obliqued twice. + +2008-11-02 08:57 +0000 [r1037] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: By popular demand, removed + 'ears' from Greek Upsilon and Psi. Copied resulting glyphs to + Serif Mathematical Alphanumeric Symbols. + +2008-11-02 00:49 +0000 [r1036] Stevan_White: + + * FreeSerif.sfd: Some pointwise cleanup of main + Tamil range + +2008-11-01 23:20 +0000 [r1035] Stevan_White: + + * FreeSerif.sfd: Tried some things with lookups. + Didn't make much headway. + +2008-11-01 22:34 +0000 [r1033-1034] Stevan_White: + + * FreeMono.sfd: somehow made a letter with wrong + width + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: Added similar lookups and + ligatures to Thai ranges. + +2008-11-01 18:34 +0000 [r1032] Stevan_White: + + * FreeSerif.sfd: Lookups now work no worse than + those for other Thai fonts, at least in Pango. Still perplexed by + behaviour of "Required" lookups. + +2008-11-01 15:44 +0000 [r1031] Stevan_White: + + * FreeSerif.sfd: For Thai, made ligatures and + lookups for yoying and thothan combined with a lower vowel. These + work well. Attempted looksups for saraaa with ru and lu, and for + saraam. Not working. + +2008-10-31 23:54 +0000 [r1030] Stevan_White: + + * FreeSans.sfd: Cleaned up a few of the Bengali + ligatures + +2008-10-31 23:46 +0000 [r1029] Stevan_White: + + * FreeSerifBold.sfd: Tweek Thai + +2008-10-31 22:48 +0000 [r1028] Stevan_White: + + * FreeSerif.sfd: Fixed ligatures and mark + positioning for Hanunóo. Problem with ligatures: Gnome pango + doesn't do 'rlig', only 'liga' + +2008-10-31 21:27 +0000 [r1027] Stevan_White: + + * FreeSerifItalic.sfd: Changed lookup table + scripts for Devanagari and Bengali. Find Problems -> ATT found + several problems showing lookups acting on glyphs that weren't + listed in the script ranges, including dev2, bng2 (why not deva + and beng, I don't know). danda and doubledanda of Devanagari I + understand are to be shared among Indic scripts. So included bng2 + and dev2 in the 'aalt' table for those. The 'init' and 'half' + tables for Bengali made active for bng2. The 'locl' table for + Bengali didn't do anything I could see: It mapped the Devanagari + danda to itself, and the doubledanda to itself. Deleted. + +2008-10-31 20:10 +0000 [r1026] Stevan_White: + + * FreeSerifItalic.sfd: Cleaned up some kern + tables. adjustments of under 5 EM are invisible. Some others I + just didn't like. Some were putting a letter beneath another, + with is wrong. + +2008-10-31 19:39 +0000 [r1025] Stevan_White: + + * FreeSerifBoldItalic.sfd: Added Thai + +2008-10-31 19:02 +0000 [r1024] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBold.sfd: Changes to mark positioning + lookups, esp. in Italic. Widened numerals in Bold + +2008-10-27 19:00 +0000 [r1023] Stevan_White: + + * FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Tweeks regarding + Armenian and lookups + +2008-10-27 18:48 +0000 [r1022] Stevan_White: + + * FreeSansBold.sfd: Added Armenian ligatures + FB13-FB17 with lookups Also made a historical ligature ('hlig') + table for u+0587. Toward bug #15183: missing characters from + Armenian range (FreeSans, Bold) + https://savannah.gnu.org/bugs/index.php?15183 + +2008-10-27 09:17 +0000 [r1021] Stevan_White: + + * FreeSansOblique.sfd: Added Armenian ligatures, + lookups. Cleaned up contours. + +2008-10-26 23:45 +0000 [r1020] Stevan_White: + + * FreeSans.sfd: Added 5 Armenian ligatures to + U+FB13 – FB17, and made corresponding 'liga' lookup. Found + there one ligature u+0587 that according to + http://en.wikipedia.org/wiki/Armenian_alphabet "in new + orthography the և character is not a typographical ligature + anymore, and must never be treated as such. It is a distinct + letter and has its place in the new alphabetic sequence." So + moved this out of the 'liga' lookup and into a new 'hlig' lookup. + +2008-10-26 22:26 +0000 [r1019] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Lots of improvements to + Thai. Completely revised letter spacing in Italic, and fiddled + with combining marks in all. Still aren't working quite right, + especially in Italic. Still need to work over digits (in Bold + they aren't even bold yet) + +2008-10-26 14:21 +0000 [r1018] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Bold Thai : added + (painstakingly) constructed glyphs, lookups roman Thai: tweeks + Italic Thai: tweeks (Note this still has multiple problems) + +2008-10-25 08:26 +0000 [r1017] Stevan_White: + + * FreeSerif.sfd: WAZU says + http://www.wazu.jp/gallery/Fonts_Hanunoo.html MPH 2B Damase + doesn't support the consonant-vowel ligatures necessary to render + Buhid writing. OK, so I made 'mark' lookups for combining marks + and a bunch of ligatures in an 'rlig' lookup. The latter still + not working: don't know why. Made page to match the example of + the combining forms at + http://www.omniglot.com/writing/hanunoo.htm + +2008-10-24 21:56 +0000 [r1016] Stevan_White: + + * FreeSerif.sfd: Removed some marks from + Mathematical Alphanumeric Symbols + +2008-10-24 08:13 +0000 [r1015] Stevan_White: + + * FreeSerif.sfd: Tweeked combining marks for + Vietnamese. Made to satisfy WAZU JAPAN Comprehensive Unicode Test + Page for Vietnamese / Quốc Ngữ + http://www.wazu.jp/gallery/Test_Vietnamese.html Could still use + some tweeking... + +2008-10-24 07:25 +0000 [r1014] Stevan_White: + + * FreeSerif.sfd: Added marks for composition of + Vietnamese + +2008-10-23 22:03 +0000 [r1013] Stevan_White: + + * FreeMono.sfd, + FreeSerif.sfd: Put "below" combining mark on + lots of vowels and derivatives, for Vietnamese. Named a bunch of + composit Latin, expecting to make substitutions. + +2008-10-23 20:14 +0000 [r1012] Stevan_White: + + * FreeSerif.sfd: Thai spacing alterations based + on advice of a native speaker. + +2008-10-22 06:30 +0000 [r1011] Stevan_White: + + * FreeSerif.sfd: re-named Thai lookups according + to order + +2008-10-21 21:28 +0000 [r1010] Stevan_White: + + * FreeSans.sfd: Cleanup of glyphs in Gujarati, + Devanagari. Note: Serious problem with Sans GPOS abvm in + Devanagari "'abvm' Above Base Mark in Devanagari subtable" + "gujr-0" But all the characters that list gujr-0 are in Gujarati. + Not sure how this got broken or how to fix it. + +2008-10-21 19:32 +0000 [r1009] Stevan_White: + + * FreeSerif.sfd: Fiddled with Thai mark + positioning: passes my tests now OK. Made a few more references + in Math Symbols; more regularization of stroke. + +2008-10-21 09:01 +0000 [r1008] Stevan_White: + + * FreeSerif.sfd: Added mark class for Vietnamese + "horn" Several references made in General Punctuation, Arrows + +2008-10-20 22:47 +0000 [r1007] Stevan_White: + + * FreeMono.sfd: added some Combining Diacritical + Marks + +2008-10-20 18:41 +0000 [r1006] Stevan_White: + + * FreeSerif.sfd: Made some references from + serifed Latin capitals to Greek counterparts. + +2008-10-20 18:24 +0000 [r1005] Stevan_White: + + * FreeSerif.sfd: Made a few repeated glyphs into + references in Musical Symbols + +2008-10-20 17:33 +0000 [r1004] Stevan_White: + + * tools/ranges.py, tools/validate.py: + tweeked some ranges, format of output + +2008-10-19 19:36 +0000 [r1003] Stevan_White: + + * FreeSerif.sfd: Moved several glypns from + Mathematical Alphanumeric Symbols to Letterlike Symbols. Couple + tweeks in Mathematical Symbols. + +2008-10-19 18:30 +0000 [r1002] Stevan_White: + + * FreeMono.sfd, + FreeSerif.sfd: Fiddling with Mathematical + Symbols. In Serif, trying to make stroke width more consistent. + +2008-10-19 16:47 +0000 [r1001] Stevan_White: + + * FreeMono.sfd: Tweek + +2008-10-19 16:44 +0000 [r1000] Stevan_White: + + * FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Added some Greek + symbols in Mono and Sans to make a little more regular and + correspond better with TeX. Tweek of serif. + +2008-10-19 14:47 +0000 [r999] Stevan_White: + + * FreeSansBold.sfd: a few more improvements. + (One problem with the Mathematical Alphanumeric area is, one must + remember to change it any time another face is altered...) + +2008-10-19 14:41 +0000 [r998] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansBoldOblique.sfd, + FreeSerifBold.sfd: Several improvements and + additions to Sans faces (mostly in Greek) from experience of + pasting into FreeSerif Mathematical Alphanumeric Symbols. + +2008-10-19 14:37 +0000 [r997] Stevan_White: + + * FreeSerif.sfd: Replaced most of Mathematical + Alphanumeric Symbols roman italic bold (latin and greek) gothic + italic bold (latin and greek) typewriter and numerals with glyphs + from FreeFont. These were scaled to uniform height. Remains: + Blackboard Bold, Fraktur, Calligraphic, Script + +2008-10-19 12:03 +0000 [r996] Stevan_White: + + * FreeSerif.sfd: Tidied lookup table names for + Malayalam + +2008-10-19 11:49 +0000 [r995] Stevan_White: + + * FreeSerif.sfd: Applied Malayalam patch from + Hiran Venugopalan + +2008-10-19 10:27 +0000 [r993-994] Stevan_White: + + * FreeMono.sfd: Added/corrected many + Mathematical Symbols + + * FreeSansOblique.sfd: more IPA + +2008-10-18 11:20 +0000 [r992] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Made lots more IPA + and Phonetic Extensions Note: fontforge is reporting an error in + a few glyphs made by scaling another, that the glyphs are drawn + in the wrong direction--only in TrueType though. Suspect a + FontForge bug. + +2008-10-17 23:10 +0000 [r991] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Added several + Combining Diacritical Marks + +2008-10-17 20:33 +0000 [r990] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Made several Spacing + Modifier Letters, Combining Diacritical Marks, and IPA and + Phonetic Extensions + +2008-10-17 06:40 +0000 [r989] Stevan_White: + + * CREDITS: Hiran Venugopalan of Swathanthra + Malayalam Computing George Douros Daniel Johnson + +2008-10-16 20:53 +0000 [r988] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: Added some Superscripts and + Subscripts + +2008-10-16 20:01 +0000 [r987] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Finished off + Superscripts and subscripts + +2008-10-16 19:06 +0000 [r986] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Completed General + Punctuation for Mono faces + +2008-10-16 08:08 +0000 [r985] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Added some General + Punctuation + +2008-10-16 06:48 +0000 [r983-984] Stevan_White: + + * tools/ranges.py: un-grayed totals rows + + * tools/ranges.py: Fiddled Cyrillic made output + prettier + +2008-10-15 18:28 +0000 [r982] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: more Letterlike + Symbols, Currency Symbols + +2008-10-15 08:49 +0000 [r981] Stevan_White: + + * FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Made some Combining + Diacritical Marks for Symbols, Letterlike Symbols + +2008-10-14 22:18 +0000 [r980] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Added some General + Punctuation + +2008-10-14 21:24 +0000 [r979] Stevan_White: + + * FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Added double slanted + hyphen, made General Punctuaton Supplement like Serif's + +2008-10-14 21:03 +0000 [r977-978] Stevan_White: + + * FreeSansBoldOblique.sfd: Filled out Greek + Extended + + * FreeSerifItalic.sfd, + FreeMono.sfd: fixes to last 2 commits + +2008-10-14 19:51 +0000 [r976] Stevan_White: + + * FreeSerifItalic.sfd: Last character to General + Punctuation + +2008-10-14 19:43 +0000 [r975] Stevan_White: + + * FreeMono.sfd: Built some Enclosed + Alphanumerics (1-10) + +2008-10-14 07:26 +0000 [r974] Stevan_White: + + * FreeSerif.sfd: Copied in Daniel Johnson's + changes to Cherokee. + +2008-10-12 15:42 +0000 [r973] Stevan_White: + + * FreeSerif.sfd: Included Daniel Johnson's + Cherokee glyphs. + +2008-10-05 11:20 +0000 [r972] Stevan_White: + + * FreeMono.sfd: Further corrections to diaresis + in Cyrillic -- legibility in small sizes + +2008-10-05 10:43 +0000 [r971] Stevan_White: + + * FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd: Regularized placement of + diaresis in Cyrillic + +2008-10-05 09:07 +0000 [r970] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Added same set of + glyphs to Cyrillic Supplement + +2008-10-04 22:26 +0000 [r969] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Added some of the + easier letters from Cyrillic Supplement + +2008-10-04 20:27 +0000 [r968] Stevan_White: + + * FreeSerifItalic.sfd, + FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoBoldOblique.sfd: Finished high + Cyrillic range for MonoBold and MonoBoldOblique. (Remaining: + historic ranges, Cyrillic extensions) Tweeked others. + +2008-10-04 13:26 +0000 [r967] Stevan_White: + + * INSTALL: Added info about Adobe ATM + +2008-10-03 22:40 +0000 [r966] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeMonoBold.sfd: Serif*Italic: Added last + Abkhazian letters to Cyrillic MonoBold: tweek + +2008-10-03 16:23 +0000 [r965] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoOblique.sfd: Mono: Some additions to + historic letters + +2008-10-03 14:55 +0000 [r964] Stevan_White: + + * FreeSerif.sfd: Added some punctuation and + combining numeric marks from Cyrillic Extended B + +2008-10-03 13:21 +0000 [r963] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeSerifBold.sfd: Various technical tweeks, + mostly concerning recent additions. Also did a bit more "Points + too close" and "irrelevant control points". Cyrillic millions + redesign meant could not maintain use of refrences for it. + +2008-10-03 11:03 +0000 [r962] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: More high Cyrillic Included + old Cyrillic millions combining mark in Sans, changed design in + Serif + +2008-10-02 21:44 +0000 [r961] Stevan_White: + + * FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: More high Cyrillic + +2008-10-02 17:45 +0000 [r960] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMonoOblique.sfd: More high Cyrillic glyphs + +2008-10-02 08:55 +0000 [r959] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd: More glyphs in high + Cyrillic. Remains only some whose form I'm unsure of in italic. + +2008-10-02 07:44 +0000 [r958] Stevan_White: + + * FreeSerifBoldItalic.sfd: More glyphs in higher + Cyrillic range + +2008-10-01 23:02 +0000 [r957] Stevan_White: + + * FreeSerifItalic.sfd: Same process of + tightening el, em, ge (but a P.S. to previous commit: also did + ya, ze for SerifBold. + +2008-10-01 22:54 +0000 [r956] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: BoldItalic: Tightened up + spacing on left of el, em, ge (could go farther, but it is partly + a problem with glyph design... + +2008-10-01 22:10 +0000 [r955] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: More additions to Cyrillic. + Finished SerifBold except for Nivkh additions. Used references on + number combining forms. + +2008-09-29 22:44 +0000 [r954] Stevan_White: + + * FreeSerif.sfd: Added four (obsolete) Chuvash + letters to Cyrillic Supplement - completing it. + +2008-09-29 21:32 +0000 [r953] Stevan_White: + + * FreeSerif.sfd: Greek adjustments Adjusted + spacing of kappa slightly Got rid of ears on Psi, following + similar request for Upsilon. + +2008-09-28 17:02 +0000 [r952] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Adding and fiddling with + Spacing Modifiers and Combining Diacriticals + +2008-09-28 10:30 +0000 [r951] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Revisions of several + Combining Diacritical marks + +2008-09-28 10:25 +0000 [r950] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: More Combining + Diacriticals + +2008-09-28 08:18 +0000 [r949] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Still more Spacing + Modifiers and Combining Diacriticals + +2008-09-28 00:10 +0000 [r948] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: A few Combining + Diacriticals and Spacing Modifiers + +2008-09-27 23:45 +0000 [r947] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: MonoBoldOblique: + Primarily filling out Spacing Modifier Letters others: little + fixes found along the way + +2008-09-27 13:04 +0000 [r946] Stevan_White: + + * FreeSerif.sfd: Replaced Malayalam range with + that from Rachana_04 found on Swathanthra Malayalam Computing + project page http://savannah.nongnu.org/projects/smc/ Besides + scaling and converting to cubic, performed much clean-up of + glyphs, added an r2 character, and re-named a bunch of + characters. + +2008-09-22 22:06 +0000 [r945] Stevan_White: + + * tools/ranges.py: Corrections and additions to + several ranges, put extra row in table with character totals + +2008-09-22 21:41 +0000 [r944] Stevan_White: + + * FreeSerif.sfd: Filled in as much of Phonetic + Extensions as I could without artistic abilities. Note 1D48-9 are + not references due to apparent FontForge bug, that says scaled + references go in wrong direction. + +2008-09-22 19:20 +0000 [r943] Stevan_White: + + * FreeSerif.sfd: Cleaup of some Bengali glyphs. + Note many of the ligatures remain very very messy. + +2008-09-22 14:29 +0000 [r940-942] Stevan_White: + + * Makefile: made some lines quiet + + * sfd/Makefile: added more validations made to work + with GenerateOpenType + + * tools/GenerateOpenType: Replaced bash version with + Python + +2008-09-22 09:23 +0000 [r939] Stevan_White: + + * FreeSerif.sfd: Built two more easy Phonetic + Extensions + +2008-09-22 09:14 +0000 [r938] Stevan_White: + + * FreeSerif.sfd: Built some Phonetic Extensions + letters, those with middle tilde + +2008-09-21 20:46 +0000 [r937] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Added lots of Spacing + Modifier Letters and Combining Diacritical Marks. + +2008-09-21 15:34 +0000 [r936] Stevan_White: + + * FreeSans.sfd, FreeMono.sfd, + FreeSerif.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Wrote script to check + if glyph encodings were in stated ranges, fixed most + discrepancies. There were a bunch of incompletely deleted + characters in several faces. Sans: found several other problems + in the process Tamil Four slots labelled 0BDA-D have glyphs, not + in Unicode. also 0BE1 I think they are misplaced; added 0010 to + each of them Devanagari Slot labelled U+093B is not in + Unicode--can't find glyph: deleted likewise 094F (may have been + meant to be 0954) 0955, 0973-0976 0954 should be a combining + mark, but it appears on the wrong side of 0. 0971 was just + wrong--made into simple dot. 0972 is also wrong--made my own + Candra A. Gujarati Slots labelled 0AE4-5 are not in Unicode; seem + not to belong at all. Deleted. 2800 is a dup of 2790. Deleted + Serif: phillipine_double u1736 was misplaced A bunch of the Math + Alphanumeric symbols are empty in the standard, because they're + represented elsewhere. These should be deleted (TO DO) First need + to make style consistent with existing symbols. + +2008-09-21 11:41 +0000 [r935] Stevan_White: + + * FreeSerif.sfd: Applied patch from Daniel J + Remedies bug FreeSerif: Missing glyphs with palatal hook + https://savannah.gnu.org/bugs/index.php?24298 Adding several + letters to Phoenetic Extensions range U+1D80-BF + +2008-09-21 11:00 +0000 [r934] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Made four characters + U+200C-F to be zero-width Remedy to bug #23593: Mono 0-width + chars: zero-width or space? + https://savannah.gnu.org/bugs/index.php?23593 + +2008-09-20 23:17 +0000 [r933] Stevan_White: + + * FreeSerif.sfd: Made Mahjong tiles to take up + less space using references Cleaned up several validation + problems + +2008-09-19 22:54 +0000 [r932] Stevan_White: + + * tools/checkGlyphNumbers.py: included other Private + Use Ranges + +2008-09-19 20:48 +0000 [r931] Stevan_White: + + * tools/checkGlyphNumbers.py (added): Added script + to check that glyph numbers match Unicode (with complication) + +2008-09-19 20:36 +0000 [r930] Stevan_White: + + * tools/ranges.py: corrected and simplified + calculation of whether OS/2 bit is set. Now works mostly + perfectly, except for some high Unicode ranges... + +2008-09-19 20:25 +0000 [r928-929] Stevan_White: + + * FreeSerif.sfd: Added several Hebrew Alphabetic + Presentation Forms (some easy ones), to make its coverage the + same as Serif Bold. + + * FreeSerifBold.sfd: Re-encoded. Deleted several + glyphs in Hebrew Alphabetic Presentation Forms that didn't + correspond valid Unicode + +2008-09-19 20:19 +0000 [r927] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSans.sfd, + FreeMonoBold.sfd: Ran script to find + mis-numbered glyphs. Several were simply typos, some offset by + one. + +2008-09-19 20:13 +0000 [r926] Stevan_White: + + * FreeSansOblique.sfd: Numerous cases of glyphs + in Private Use area incorrectly assigned Unicode numbers and + names. Gave all -1 for Unicode and named like "slot.XXXX". + +2008-09-19 09:51 +0000 [r921-925] Stevan_White: + + * tools/GenerateOpenType: Made to output old-style + kerning tables for Windows (FontForge complains though) + + * tools/GenerateTrueType: Made to hint before + instructing: FontForge bases TT instructions on hints although + hints are not put into TrueType fonts. + + * tools/hex_range.py: cosmetic tweek + + * tools/isMonoMono.py: re-worked to take a list of + files as input + + * tools/ranges.py: re-structured code and corrected + a few ranges + +2008-09-19 09:17 +0000 [r920] Stevan_White: + + * FreeSerif.sfd: Adapted Mahjong Tiles from + George Douros' Unicode Symbols font. + +2008-09-18 23:27 +0000 [r919] Stevan_White: + + * FreeSerif.sfd: Added Domino Tiles. Domino + outline is copied from George Douros' Unicode Symbols, but the + rest I preferred to do with references. + +2008-09-18 21:30 +0000 [r918] Stevan_White: + + * FreeSerif.sfd: Adapted Mathematical + Alphanumeric Symbols from George Douros' Unicode Symbols font. + +2008-09-18 21:02 +0000 [r917] Stevan_White: + + * FreeMonoBoldOblique.sfd: This one got away + from me--I don't know what I did. Looks like some small contour + edits. + +2008-09-18 20:58 +0000 [r915-916] Stevan_White: + + * FreeSansBoldOblique.sfd: Fixed one mis-numberd + character in Latin Extended-B + + * FreeSerifItalic.sfd, + FreeSerifBold.sfd: Fixed several mis-numbered + characters. + +2008-09-18 20:13 +0000 [r914] Stevan_White: + + * FreeSansBold.sfd: SansBold: one Georgian + letter with no name, one Zapf Dingbat was unnumbered ATT test + shows a bunch of problems with Gurmukhi and 'blwf' table indeed + shows those letters at 0x10000+ Sans names them like + uni0A30_uni0A4D.blwf: they are in range ECC6 to ED06 I meant to + move this range into Private Use in last release, and missed it. + So now it is moved, into same range as Sans. Both Sans and + SansBold in nukt table for Gurmukhi have duplicate entries for + uni0A15 uni0A3C. Deleted dups. + +2008-09-18 19:05 +0000 [r913] Stevan_White: + + * FreeMonoOblique.sfd: fixed a number of + Unassigned Code Points in Greek Extended + +2008-09-18 18:31 +0000 [r912] Stevan_White: + + * FreeSansOblique.sfd: mis-numbered Combining + Diacritics + +2008-09-18 18:24 +0000 [r911] Stevan_White: + + * FreeSansOblique.sfd: Several chars in Latin + Extended hadn't been named. One spurious letter in Letterlike + Symbols + +2008-09-16 19:37 +0000 [r910] Stevan_White: + + * FreeSans.sfd, FreeMono.sfd, + FreeSerif.sfd: Lots of additions: unless + otherwise noted, they are from George Duros' fonts Analecta, + Music, and Unicode (haven't got final confirmation of the + eligibility of these glyphs, so this is just for testing.) Added + some combining marks, fiddled a bit. In both Serif & Mono, tried + to get a key symbol characters to fit inside the key combining + mark Serif Got rid of ears on Upsilon Added: Gothic Western & + Byzantine Musical Symbols Misc Symbols, Misc Technical Symbols + (also drew many myself) Supplemental Symbols and Arrows Mono + Added: lotsa Misc Technical Symbols OCR Symbols drew many + Supplemental Symbols and Arrows, Misc Technical Sans Added + Phoenecian Made a few Letterlike Symbols; Made Re and Im to be + sans-serif. + +2008-09-11 20:49 +0000 [r908] Stevan_White: + + * ChangeLog: changes since June + +2008-09-11 20:42 +0000 [r907] Stevan_White: + + * FreeSerif.sfd: Removed pointless entries from + Latin kern table Tidied points in Sinhala + +2008-09-07 21:47 +0000 [r906] Stevan_White: + + * FreeSerif.sfd: Tidied up Tamil ligatures + EEA8-EEAB to fix TT build warning "MonotonicFindAlong: Never + found our spline." + +2008-09-07 21:07 +0000 [r905] Stevan_White: + + * FreeSerifBoldItalic.sfd, + sfd/Makefile, FreeSans.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Added APL characters + to FreeMono (why?...) Fixed several last-minute problems, + including Serif: Tweeked GPOS mark table for Cyrillic Sans: Added + a GPOS table for Cyrillic (but several diacritics are missing) + Serif, Mono: tweeked some bugs in extensible brackets & integrals + Serif: Vietnamese o circumflex: accent was a bit high. fixed. + MonoBoldOblique OTF build uni213b intersects self Generation of + TT fonts complains about several things to stderr, including + SerifBold: "There exists a 'fpgm' code that seems incompatible + with FontForge's. Instructions generated will be of lower + quality. If legacy hinting is to be scrapped, it is suggested to + clear the `fpgm` and repeat autoinstructing. It will be then + possible to append user's code to FontForge's 'fpgm', but due to + possible future updates, it is extremely advised to use high + numbers for user's functions." (probably has been there since I + first copied the TT instructions in. ) Just repeated the copying + process carefully, and the warning went away. Serif: + "FindMatchingHVEdge fell into an impossible position" fixed a + bunch of point too close REMAINING PROBLEM in Serif TT build + "MonotonicFindAlong: Never found our spline." fixed several bad + TT matrices-- there are several more fixed many "control points + too close" no luck + +2008-09-03 08:43 +0000 [r904] Stevan_White: + + * FreeSans.sfd, + FreeSansOblique.sfd: Added/corrected some + Misc. Symbols by copying from Serif. Note this is only a stopgap + solution. Want real sans-serif symbols. + +2008-09-02 22:41 +0000 [r903] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Put in minimal + Miscellaneous Symbols: Card suites and some musical notes. Note + not very happy with shapes...some I just drew. Sans isn't really + sans. Fixed one APL symbol in Mono so it verified in OTF version + +2008-08-31 11:39 +0000 [r902] Stevan_White: + + * FreeMono.sfd: Built set of APL symbols. + +2008-08-30 18:37 +0000 [r901] Stevan_White: + + * FreeSans.sfd: Un-linked references in uni02B2 + and uni02B5, because when validating the TrueType version, + fontforge gave an error "is drawn in wrong direction". (I suspect + a bug in fontforge. Other similar glyphs make no errors.) + +2008-08-30 16:23 +0000 [r900] Stevan_White: + + * FreeSerif.sfd: Fixed missing extrema in + TrueType. These were the last cases being reported by validate in + all the faces. + +2008-08-30 13:46 +0000 [r899] Stevan_White: + + * FreeSerifItalic.sfd: fixed last missing + extrema in TrueType + +2008-08-30 11:02 +0000 [r898] Stevan_White: + + * sfd/Makefile, Makefile, + tools/validate.py, + tools/isMonoMono.py: restructured validation to + look in a directory + +2008-08-30 10:57 +0000 [r897] Stevan_White: + + * FreeSans.sfd, + FreeSansOblique.sfd, + FreeSerif.sfd: Fixed missing extrema in + TrueType versions + +2008-08-30 09:31 +0000 [r894-896] Stevan_White: + + * AUTHORS, CREDITS: unified style + + * README: lots of re-wording, concerning goals and + purposes + + * INSTALL: Got rid of outline style, tried to make a + little more appealing. + +2008-08-14 22:01 +0000 [r893] Stevan_White: + + * FreeSans.sfd: Same problem with uni0A83 as + with bn_llikaar. Just made zero-width. + +2008-08-14 20:29 +0000 [r892] Stevan_White: + + * FreeSans.sfd, + FreeSansOblique.sfd: Glyph bn_llikaar, U+09E3 + BENGALI VOWEL SIGN VOCALIC LL, has right bound positioned far + into the negative. Causes a warning in fontforge when opening OTF + version. Comparing with other fonts supporting Bengali, found no + others that do this. FreeSerif makes glyph width 0 (which sounds + right according to Unicode) and puts glyph wholly to left of 0. + However, I haven't found this letter in text anywhere. I wonder + if it is really used in writing. + +2008-08-14 07:41 +0000 [r891] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSans.sfd, + FreeSansOblique.sfd, + FreeSerif.sfd: Further TrueType validation + fixes. Sans still has two glyps in wrong direction. + +2008-08-13 23:09 +0000 [r890] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Fixed more TrueType + problems...all with missing extrema in TTF validation + +2008-08-13 21:35 +0000 [r889] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: fixed all the TrueType + validation problems of type "intersects itself" and all but two + of the "wrong directions", as well as a lot of "missing extrema". + But there remain hundreds of missing extrema in the TrueType + version. Also, bn_llikaar in Sans and Oblique still has a problem + in OTF version. + +2008-08-12 22:21 +0000 [r888] Stevan_White: + + * FreeSansBold.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Made .ttf files to + validate. Other faces have many more problems still. + +2008-08-12 20:41 +0000 [r887] Stevan_White: + + * tools/GenerateTrueType: For TrueType, one puts in + Instructions, not Hints. This vastly improves look of TrueType + fonts in Windows. + +2008-08-11 23:07 +0000 [r886] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd, + FreeMonoOblique.sfd: Continuing to make OTF + versions validate. * FreeMonoOblique.sfd: lots of missing points + at extrema * FreeSerif.sfd 12 wrong directions, 1 missing extrema + * FreeSerifItalic.sfd many missing points at extrema, 1 + self-intersecting What was wrong: in several oblique cases, an + already-italic glyph was made more italic, thereby fouling up + extrema (although why it passed validation in the SFD I don't + know). Some glyphs were overly-complicated with many near points. + Cleaned up, rounded to int. Remaining problem: OTF + FreeSansOblique FreeSans. one Bengali glyph in each whose advance + width and htmx don't match. Moral of story: validate the OTF and + TTF versions too before a release. + +2008-08-11 22:59 +0000 [r885] Stevan_White: + + * FreeSansOblique.sfd: Reverse a mistake from + last commit: somehow this file was converted to quadratic, or + something. + +2008-08-10 22:25 +0000 [r884] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Found that SFD files + that validated produced OpenType files that don't. These + represent the easy fixes. Some were result of conversion to + quadratic; some shouldn't have validated in the SFD... * + MonoBoldOblique: uni0250 missing pts at extrema [reference glyph + rotated...] * Sans: uni0AC4 wrong direction [simplified, rounded + to int] * SansOblique: uni01EA wrong direction [rounded to int] * + SerifBold: uni023f wrong direction [round to int] * + SerifBoldItalic: uni0245 missing pts at extrema [ungrouped ref, + added extrema] + +2008-08-06 18:08 +0000 [r883] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd: Re-set font metrics, + which were somehow making uneven vertical spacing. + +2008-08-06 07:05 +0000 [r882] Stevan_White: + + * ChangeLog: Added changes since last release + +2008-06-22 09:14 +0000 [r881] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: Made to validate + +2008-06-22 09:08 +0000 [r879-880] Stevan_White: + + * tools/ranges.py: Brought more into line with + OpenType added some ranges fixed bug with ranges outside of font + + * CREDITS: 3 new ranges + +2008-06-22 07:53 +0000 [r878] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: Cyrillic: tweeked accents for + consistency, and for readability in small sizes. + +2008-06-21 23:31 +0000 [r877] Stevan_White: + + * FreeSerif.sfd: Thanna range: tweeking + +2008-06-21 23:15 +0000 [r876] Stevan_White: + + * FreeSerif.sfd: Thaana range: Scaled up by + about 15%, raised by 100EM, tightened some of the diacritics to + get inside 900 to -300 EM limits. + +2008-06-21 22:21 +0000 [r875] Stevan_White: + + * FreeSans.sfd: Added Old Persian and Ugaritic + from MPH2BDamase font. + +2008-06-21 21:50 +0000 [r874] Stevan_White: + + * FreeSerif.sfd: Added Tai Le range adapted from + MPH2BDamase font. + +2008-06-21 18:39 +0000 [r873] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Added some ancient Greek + numerals from Tempora to high Unicode area, (partly just to show + it can now be done.) + +2008-06-21 15:51 +0000 [r871-872] Stevan_White: + + * FreeSerifItalic.sfd: Couple of tweeks putting + glyphs above -300EM. + + * FreeSerifItalic.sfd, + FreeSerif.sfd: Surgery to Thai letter 'tho + than', u+0e10, to push it above -300 EM. This makes Thai range + completely between 900 and -300 EM. + +2008-06-21 11:20 +0000 [r870] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSans.sfd, + FreeSansOblique.sfd, + FreeSerif.sfd: Many auxilary characters (esp. + for Malayalam, Bengla, and Tamil) representing ligatures and + alternative forms without their own Unicode, were moved from + ranges above 0xFFFF (which ought to have been slots for other + defined Unicode ranges) into the Private Use area. In Serif, I + segregated the scripts, in Sans it was hard to see where one + began and another ended, so I moved them en masse. Note several + problems with wrongly-named characters: I already re-named + glyph570 and glyph582. But there are others with names starting + with A... + +2008-06-21 11:08 +0000 [r869] Stevan_White: + + * FreeSansBold.sfd, + FreeSansOblique.sfd: Fixed (I hope the last) + problem with scripts in lookups Find Problems -> ATT (all + selected) finds multiple issues, SansBold In addition to script + 'guru', added 'gur2' to the scripts for these lookups 'nukt' + Nukta forms in Gurmukhi 'blwf' Below Base Forms in Gurmukhi + 'pstf' Post Base Forms in Gurmukhi 'blws' Below Base + Substitutions in Gurmukhi 'abvs' Above Base Substitutions in + Gurmukhi 'psts' Post Base Substitutions in Gurmukhi SansOblique + In addition to script 'beng', added 'bng2' to the scripts for the + lookup 'half' Half Forms in Bengali Moreover, the lookup 'aalt' + Access All Alternates in Latin contains only Bengali letters. + Re-named as Bengali, made to work on beng, bng2 scripts + +2008-06-20 21:52 +0000 [r868] Stevan_White: + + * FreeSerif.sfd: Scaled Sinhala range. Remedies + bug #23656: Sinhala letters over-sized + +2008-06-20 18:03 +0000 [r867] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Mostly messing with + Greek Extended accents again. re-positioned ypogegrammani on + advice of Alexey Kryukov Put prosgegrammani beneath main letters + in Mono, to make narrower glyphs Implemented more distinction + between tonos and acute. + +2008-06-19 08:25 +0000 [r866] Stevan_White: + + * FreeMonoBoldOblique.sfd: Completed fit of Mono + to 800 to -200 EM. + +2008-06-19 07:47 +0000 [r865] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd: Set Metrics to + recommended values + +2008-06-19 07:40 +0000 [r864] Stevan_White: + + * FreeMonoOblique.sfd: Now Mono Oblique, as well + as roman and Bold, are within 800 to -200 EM. Just BoldOblique to + go. + +2008-06-19 07:25 +0000 [r863] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd: More toward fitting to 800 + to -200 EM. Basically, reduced Georgian by 92%. Also made an + over-all offset, so Georgian is somehow centered (Bold...I guess + I already did this in roman). Want to also do an emboldening to + make stroke like rest of font, but current FontForge has a nasty + crash that loses data on this function. + +2008-06-19 06:19 +0000 [r862] Stevan_White: + + * FreeMono.sfd: In effort to make fit in 800 to + -200 EM, Scaled Georgian by 92%, centered on 600 wide box. Next: + Embolden a bit. + +2008-06-18 19:46 +0000 [r861] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Toward making all + glyphs lie between -200 and 800 EM. Numerous small changes, + especially raising descenders of some Hebrew letters. Georgian + remains a problem + +2008-06-13 07:39 +0000 [r860] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Moved prosgegrammeni up to + baseline, (and then moved all references down to baseline) + +2008-06-13 06:17 +0000 [r859] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Added Control Picture + "blank" to all faces. Switched U+0222-3 from TemporaLGCUni + +2008-06-11 17:57 +0000 [r858] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: More fiddling with Greek + Extended accents + +2008-06-11 07:43 +0000 [r857] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Tweeks to accents etc in + Greek Extended and Cyrillic + +2008-06-10 08:00 +0000 [r856] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBold.sfd: Fixed a few big horizontal + spacing problems + +2008-06-09 23:12 +0000 [r855] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Implemented TemporaLCGUni + glyphs in Cyrillic ranges. Added a breve_cyrillic for the + moustache breve mark. + +2008-06-08 08:45 +0000 [r854] Stevan_White: + + * FreeSerif.sfd: Replaced most of Cyrillic range + with TemporaLGCUni. Remodelled many of the derived Cyrillic + characters after these. Fiddled globally with spacing of small + letters. Unclear on diacritics 485-6, unhappy with breve. + +2008-06-07 23:12 +0000 [r853] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Started implementing + TemporaLCGUni in Greek ranges. Replaced 3DC-3E1 from Tempora, + because I thought they looked nicer and more like the other + existing FreeFont glyphs. Replaced 3DA-B from Tempora, because + they look more like Unicode samples, and nicer. Added 03f3-4, + 03F7-F. Prefer my own lunate epsilon. Replaced Phi and Omega from + Tempora. These plainly fit the other FreeFont glyphs better than + the origninals. (How did this happen?) In bold, replaced U+03D7 + Copied lbbar u+2114 Small italic greek: replaced most except phi, + psi, omega Based on new information, broke the identification of + oxia with Latin acute. + +2008-06-07 13:15 +0000 [r852] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Efforts to control + heights of characters + +2008-06-05 22:04 +0000 [r851] Stevan_White: + + * FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Made to validate + +2008-06-04 23:14 +0000 [r850] Stevan_White: + + * FreeSans.sfd: Fixed undefined character in + kerning classes + +2008-06-03 22:26 +0000 [r849] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: tweeks and additions + to General Punctuation + +2008-06-03 07:12 +0000 [r848] Stevan_White: + + * FreeSansOblique.sfd, + FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Completed/tweeked + Number Forms + +2008-06-02 22:28 +0000 [r847] Stevan_White: + + * FreeMono.sfd, + FreeSerif.sfd: Added some Miscellaneous + Technical symbols + +2008-06-02 21:25 +0000 [r846] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Tweeks...mostly Letterlike + +2008-06-01 21:52 +0000 [r845] Stevan_White: + + * FreeMono.sfd, + FreeSerif.sfd: Added Box Drawing characters to + Serif. Tweeked a glyph in Mono + +2008-06-01 12:30 +0000 [r844] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Added several glyphs + to Letterlike Characters + +2008-05-31 07:30 +0000 [r843] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoBoldOblique.sfd: Validation pass + SansOblique and SansBoldOblique had validation problem with + BlueValues Private Dictionary Elements in BlueValues/OtherBlues + array are disordered Elements in BlueValues/OtherBlues array are + too close (Change BlueFuzz) StemSnapV does not contain StdVW + value. So I ordered the array, and based on other slanted fonts, + removed StemSnapV. Note however, I still think the two top Blues + lines are too close But I don't even know what the second-to-top + line is meant to do. + +2008-05-31 07:23 +0000 [r842] Stevan_White: + + * FreeSerif.sfd: Added to Block Elements, + Geometric Shapes Made to validate + +2008-05-29 08:49 +0000 [r841] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Looking at special symbols. + Drew several Miscellaneous Symbols in Mono and Serif + (Completed/corrected planetary symbols, added Dice, some other + easy ones) Completed Dingbats in Serif (using URW Dingbats) Added + some Block Elements to Serif + +2008-05-25 23:47 +0000 [r840] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: More changes stemming from + J. Poon's report. + +2008-05-25 12:56 +0000 [r839] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd: Height surgery on + SerifBoldItalic. More fiddling with accents in others. + +2008-05-25 11:01 +0000 [r838] Stevan_White: + + * FreeSerifItalic.sfd: More height surgery. Only + a few left in Benglai and Thai + +2008-05-25 10:54 +0000 [r837] Stevan_White: + + * FreeSerifBold.sfd: Re-applied surgery to make + glyphs between 900 and -300EM + +2008-05-25 09:58 +0000 [r836] Stevan_White: + + * FreeSerifBold.sfd: *** Regression + Inadvertently un-linked all references in SerifBold in r1.83. + This reverses that error (but also un-does the surgery mentioned + there) + +2008-05-24 22:23 +0000 [r835] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBold.sfd: Applied surgery to make + Latin letters go under 900EM. One exception yet... + +2008-05-24 20:59 +0000 [r834] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Serif: much fiddling with + accents in Latin ranges. Re-thought some glyphs (there are still + a few messy ones, especially in bold) Checked horizontal + spacing...fixed a number of problems. + +2008-05-23 07:37 +0000 [r833] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSansBold.sfd, + FreeSerifBold.sfd: Made Latin Extended-B + coverage consistent across Serif; cleaned up some glyphs + +2008-05-22 23:07 +0000 [r832] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd: Filled more of General + Punctuation in Sans and Serif Made all agree on coverage of Latin + Extended Additional + +2008-05-22 21:34 +0000 [r831] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSerifBold.sfd: Added Latin Extended + Additional to SansOblique. Made Latin Extended Additional + coverage consistent across Sans, B, I Made Latin Extended-B + coverage same in SerifBold. + +2008-05-22 19:05 +0000 [r830] Stevan_White: + + * FreeSansBold.sfd, + FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoBoldOblique.sfd: Mono* made Latin-B + coverage consistent across faces + +2008-05-22 07:50 +0000 [r829] Stevan_White: + + * FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Made set of Latin + Extended-B consistent across Sans faces + +2008-05-21 23:14 +0000 [r828] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd: More filling in General + Punctuation + +2008-05-21 22:26 +0000 [r827] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: another bunch of J. Poon's + reports also, filling in some Combining Diacriticals, Spacing + Modifiers, and General Punctuation in bold faces + +2008-05-20 23:16 +0000 [r826] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeSerifBold.sfd: Mucking about with mark + tables in Thai (Serif) Other faces: Making changes from J. Poon's + report + +2008-05-20 06:41 +0000 [r825] Stevan_White: + + * CREDITS: Mark Williamson Jacob Poon + +2008-05-20 06:37 +0000 [r823-824] Stevan_White: + + * Makefile: added tests target + + * tools/findBackLayers.py (added), + tools/validate.py (added), + tools/isMonoMono.py (added), + tools/nameBySlot.py (added): isMonoMono.py checks + that monospace is really that findBackLayers.py finds glyphs in + back layers nameBySlot.py Sets name/unicode values of a range to + encoding value verify.py runs FontForge "verify" on all faces + +2008-05-18 19:17 +0000 [r822] Stevan_White: + + * tools/ranges.py: put table explanation back in + +2008-05-18 19:11 +0000 [r821] Stevan_White: + + * tools/ranges.py: Improved behaviour for high + Unicode + +2008-05-18 13:32 +0000 [r820] Stevan_White: + + * FreeSans.sfd: Revision of kerning + +2008-05-18 12:16 +0000 [r819] Stevan_White: + + * FreeSerif.sfd: Made Latin kerning a little + more reasonable: reduced many excessive kerns (some had letters + apparently overlapping, which shouldn't happen) made kerns + increment by 5EM for ease of reading got rid of kerns too small + to be seen + +2008-05-18 12:11 +0000 [r818] Stevan_White: + + * FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: made to verify + +2008-05-12 22:52 +0000 [r817] Stevan_White: + + * FreeSerif.sfd: made to validate + +2008-05-12 22:46 +0000 [r816] Stevan_White: + + * FreeSerif.sfd: Gurmukhi: filled range in + Serif, taking glyphs from the original Punjabi font by Hardip + Singh Pannu http://members.aol.com/hspannu/punjabi.html (file + pb_win95.exe) + +2008-05-12 19:43 +0000 [r815] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSerifBold.sfd: Hebrew, basic. Some faces + missing punctuation marks, added. + +2008-05-12 19:03 +0000 [r814] Stevan_White: + + * FreeSans.sfd, FreeMono.sfd: + Armenian: Sans tried to make verticals and horizontals of more + uniform width both, finddled with punctuation + +2008-05-12 12:56 +0000 [r813] Stevan_White: + + * FreeMonoOblique.sfd: made to validate + +2008-05-12 12:23 +0000 [r812] Stevan_White: + + * FreeMonoBold.sfd: made to validate + +2008-05-12 12:04 +0000 [r811] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd: Armenian in Sans: + regularized letter spacing + +2008-05-12 10:19 +0000 [r810] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeMonoOblique.sfd: Armenian: fill out ranges + and clean up SansBold especially had a lot of incorrect + references. Now all the ranges with Armenian at least share the + same set of characters. + +2008-05-12 07:58 +0000 [r809] Stevan_White: + + * FreeMono.sfd: Fixed glyph with wrong width. + +2008-05-11 21:29 +0000 [r808] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: 1) made to validate + 2) Mono: copied in Spacing Modifier Letters (glyphs not yet + named) 3) SerifItalic: Filled in General Punctuation + +2008-05-11 17:56 +0000 [r807] Stevan_White: + + * FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Made to validate, and + pass all other FontForge tests. Expedient: rounded everything to + int + +2008-05-11 14:00 +0000 [r806] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Made to have the same Greek + Symbols, Made to validate + +2008-05-11 12:59 +0000 [r805] Stevan_White: + + * FreeSansOblique.sfd: Made Greek Symbols as + full as rest of Sans + +2008-05-11 12:40 +0000 [r804] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd: Made Greek Symbols as full + as rest of Sans. Changed a name in Sans. + +2008-05-11 12:25 +0000 [r803] Stevan_White: + + * FreeSansBold.sfd: Deleted orphaned Arabic + glyph from Arabic Presentation forms-B + +2008-05-11 12:17 +0000 [r802] Stevan_White: + + * FreeMonoOblique.sfd: Made Greek as full as + other faces Made to validate + +2008-05-11 11:08 +0000 [r801] Stevan_White: + + * FreeSansBold.sfd: Deleted seven orphaned + Arabic characters; looks like somebody started, didn't get very + far, putting Arabic in bold. + +2008-05-11 11:05 +0000 [r800] Stevan_White: + + * FreeSerifBold.sfd: Deleted the single Arabic + character: it was clearly there by mistake. + +2008-05-11 11:01 +0000 [r799] Stevan_White: + + * FreeSansOblique.sfd: Tweeks to Armenian + +2008-05-11 10:56 +0000 [r796-798] Stevan_White: + + * FreeSansOblique.sfd: Comment from previous + commit of FreeSans was meant for FreeSansOblique. In FreeSans, + only tweeked a few letters during putting more characters in this + face. Filled in Spacing Modifier Letters, increased General + Punctuation. + + * FreeSans.sfd: Filled in Spacing Modifier + Letters, increased General Punctuation + + * FreeMono.sfd: Made Armenian as full as other + roman faces. + +2008-05-11 08:22 +0000 [r795] Stevan_White: + + * FreeMono.sfd: Completed Spacing Modifier + Letters Added a couple of Greek Punctuation + +2008-05-10 22:39 +0000 [r794] Stevan_White: + + * FreeMono.sfd: added more Spacing Modifier + Letters + +2008-05-10 21:57 +0000 [r792-793] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: Did same process of scaling and + sizing for Thai in Sans as in Serif. Added mark tables to Sans. + Improvement, but there are questions... + + * FreeSans.sfd: Tidied some Gurmukhi glyphs, + validated. + +2008-05-10 17:50 +0000 [r791] Stevan_White: + + * FreeMonoBoldOblique.sfd: Made metrics like + rest of Mono + +2008-05-10 13:44 +0000 [r790] Stevan_White: + + * FreeSans.sfd: Deleted ranges for Oriya, + Kannada, on account of 1) they only contained a subset of the + consonant glyphs of the scripts, few if any vowels, and had no + ligature lookups as required 2) Kannada was based on the Akurti + fonts, which have copyright issues. See bug #23225: Oriya range + only partial bug #23224: Kannada range only partial + +2008-05-09 07:49 +0000 [r789] Stevan_White: + + * tools/ranges.py: more info on range intervals + +2008-05-09 05:36 +0000 [r788] Stevan_White: + + * FreeSerif.sfd: Deleted Telugu range. It didn't + represent a complete writing system for the language. See notes + at https://savannah.gnu.org/bugs/index.php?23202 Serif: Telugu + range missing many characters; many wrong + +2008-05-09 05:22 +0000 [r787] Stevan_White: + + * FreeSerif.sfd: Got a copy of the original + Tikkana font, Copied in remaining consonants and vowels that I + could find there. I think one vowel 0C55 is missing according to + unicode). Strangely, the Telugu digits are alo missing. In + Tikkana, the default "checkmark" structural mark is missing from + many consonants, according to Unicode, but is a separate glyph. I + put the checkmark on. This, and scaled up by 150% and cleaned up + intersecting glyphs and many unnecessary points. + +2008-05-07 22:38 +0000 [r786] Stevan_White: + + * FreeSerif.sfd: Filled out Telugu consonants. + Vowels still need to be done + +2008-05-07 19:35 +0000 [r785] Stevan_White: + + * FreeSerif.sfd: Operated on Latin glyphs with + stacked accents to make them fit under 900EM. Scaled Telugu bu + 150%. + +2008-05-05 22:17 +0000 [r784] Stevan_White: + + * FreeSansBold.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd: Corrected further fontforge + "find problems" added some math characters to FreeSerif + +2008-05-04 23:52 +0000 [r783] Stevan_White: + + * FreeSansBold.sfd: Made to validate, and fixed + bad TT transformations + +2008-05-04 19:52 +0000 [r782] Stevan_White: + + * FreeMono.sfd, + FreeSerif.sfd: Mainly TeX additions trying to + satisfy Markus Kuhn's TeX-as-Unicode page + +2008-05-04 14:25 +0000 [r781] Stevan_White: + + * FreeMono.sfd: Adjusted heights of extensible + brackets + +2008-05-04 13:42 +0000 [r780] Stevan_White: + + * FreeMono.sfd: Fixed problems with extensible + brackets, thanks to Markus Kuhn's page + http://www.cl.cam.ac.uk/~mgk25/ucs/examples/UTF-8-demo.txt + +2008-05-04 11:43 +0000 [r779] Stevan_White: + + * tools/ranges.py: fiddled with ranges, doc + +2008-05-04 11:25 +0000 [r778] Stevan_White: + + * tools/ranges.py: made some ranges more correct? + +2008-05-04 11:02 +0000 [r777] Stevan_White: + + * tools/ranges.py: fixed some bugs in ranges better + error reporting + +2008-05-04 10:34 +0000 [r775-776] Stevan_White: + + * tools/ranges.py: Got rid of Unicode 1.1 references + + * tools/ranges.py: made to use OpenType table + +2008-05-04 03:11 +0000 [r774] Stevan_White: + + * FreeSans.sfd, FreeMono.sfd, + FreeSerif.sfd: made to validate + +2008-05-03 20:44 +0000 [r773] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Removed digits from Private + Use Area. See bug 23050. + +2008-05-03 19:54 +0000 [r772] Stevan_White: + + * tools/ranges.py: restructure text output + +2008-05-03 17:05 +0000 [r771] Stevan_White: + + * FreeSans.sfd, FreeMono.sfd: + Completed General Punctuation + +2008-05-03 15:00 +0000 [r770] Stevan_White: + + * tools/ranges.py: More docs, date + +2008-05-03 14:53 +0000 [r769] Stevan_White: + + * FreeSans.sfd: Completed IPA Extensions + +2008-05-03 13:46 +0000 [r768] Stevan_White: + + * FreeSans.sfd, FreeMono.sfd, + FreeSerif.sfd: More work on Superscripts and + Subscripts, Spacing Modifiers. Sans is now complete in both. + Added Pfennig to Sans and Mono. + +2008-05-03 11:55 +0000 [r767] Stevan_White: + + * tools/ranges.py: rearrangement and cosmetic + +2008-05-03 11:46 +0000 [r765-766] Stevan_White: + + * tools/ranges.py: ...except I had broken it. now + fixed + + * tools/ranges.py: Seems to be in a useful form at + this point. + +2008-05-03 10:29 +0000 [r764] Stevan_White: + + * FreeSerif.sfd: Added a hand-drawn old German + Pfennig to Currency Symbols + +2008-05-02 23:46 +0000 [r763] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSans.sfd, FreeMono.sfd, + FreeSerif.sfd: Further additions to General + Punctuation, Super and Sub Scripts, Spacing Modifiers, etc. + +2008-05-02 20:29 +0000 [r762] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSans.sfd: Sans: additions to Spacing + Modifiers, IPA SerifItalic: shortening stacked accents to + maintain readability when clipped + +2008-05-01 19:32 +0000 [r761] Stevan_White: + + * FreeSans.sfd: Additions to Spacing Modifiers + and changes to Combining Diacritics + +2008-05-01 18:26 +0000 [r760] Stevan_White: + + * FreeSerif.sfd: Made sure all the half rings in + Combining Diacriticals and Spacing Modifiers were really half + rings (J. Poon had complained about this) + +2008-05-01 18:11 +0000 [r759] Stevan_White: + + * FreeSerif.sfd: Filled out General Punctuation + Some work on Spacing Modifiers + +2008-05-01 14:10 +0000 [r758] Stevan_White: + + * FreeSerif.sfd: Filled out Mathematical + Operators still needs lots of work Made to validate + +2008-05-01 09:14 +0000 [r757] Stevan_White: + + * FreeSerif.sfd: Filled out Latin Extended B + +2008-04-30 23:00 +0000 [r756] Stevan_White: + + * FreeSerif.sfd: added some letters with curls + to Latin Extended B + +2008-04-30 22:38 +0000 [r755] Stevan_White: + + * FreeSerif.sfd: more fiddling with Latin + Extended B accents + +2008-04-30 20:28 +0000 [r754] Stevan_White: + + * FreeSerif.sfd: Added Hanunóo script, with + characters based on those in font MPH2BDamase, on request from + the maintainer of that font, + http://packages.debian.org/sid/ttf-mph-2b-damase Glyphs are + simple vector strokes. Could be a little more uniform. + +2008-04-29 23:54 +0000 [r753] Stevan_White: + + * FreeSerif.sfd: Added Buginese script + "Lontara", with characters based on those in font MPH2BDamase, on + request from the maintainer of that font, + http://packages.debian.org/sid/ttf-mph-2b-damase Note the glyphs + are pretty rough, clearly a digitization of handwriting. I just + cleaned them up, and corrected discrepancies with Unicode, and + compared with some pictorial samples of the script I could find. + +2008-04-28 22:15 +0000 [r752] Stevan_White: + + * tools/ranges.py: improved look a lot still unhappy + with some ranges OS/2 seems sometimes bang-on, sometimes + unrelated to anything ( including fontforge's OS/2 listing) + +2008-04-28 22:00 +0000 [r751] Stevan_White: + + * FreeSerif.sfd: Much fiddling with Tamil range. + First scaled to 78% (avoiding the references) This gets it in the + ballpark height-wise. [A bit taller than the Latin letters, but + the stroke is narrower, but then the glyphs are busier.] Then had + to re-align combined references, the trickiest being the halants. + Checked with other fonts with Tamil text. + +2008-04-28 20:05 +0000 [r750] Stevan_White: + + * FreeSerif.sfd: Cleanum of missing extrema in + Arabic and Thaana + +2008-04-28 19:55 +0000 [r749] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: cleanup of control points in + Arabic and Thaana + +2008-04-28 17:04 +0000 [r748] Stevan_White: + + * tools/ranges.py (added): a script to print out how + many characters in a range are implemented in each font + +2008-04-28 08:06 +0000 [r747] Stevan_White: + + * FreeSerif.sfd: * Many changes to Thai, trying + to make the script fit between some lines, so accents won't get + clipped, etc. Also, stroke weight was heavier than that of Latin. + Scaled whole thing by 93%. Shrank the tallest letters 0E42-4 to + get them under 900EM. Shaved off top of maiek. Fiddled with + positioning of all accents. Made positioning tables for accents. + [note, unclear these are working correctly] * Fixed a bug having + to do with character replacements for characters named 'ng' and + 'nj'; these names had been taken on by other characters. * Made + to validate * unicode positions of two Cyrillic Extended + characters were switched. * fiddled with a couple of Cyrillic + combining diacritics + +2008-04-26 22:14 +0000 [r746] Stevan_White: + + * FreeSans.sfd: bugfix: a left harpoon + mysteriously appeared to the left of letter p! + +2008-04-26 19:46 +0000 [r745] Stevan_White: + + * FreeMono.sfd: Made to validate + +2008-04-26 18:40 +0000 [r744] Stevan_White: + + * FreeSans.sfd: made to validate + +2008-04-26 15:04 +0000 [r743] Stevan_White: + + * FreeSans.sfd: Toward J. Poons report Made 032B + more like proper double-arches (and distinct fro 033C seagull) + +2008-04-26 14:22 +0000 [r742] Stevan_White: + + * FreeSans.sfd: Toward J. Poon's report Made + 032b more like a seagull + +2008-04-26 14:05 +0000 [r741] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd: Sans: fiddling with widths + and terminators of math symbols, toward J. Poon's report R & B: + removed u+2741 because it didn't match the Unicode description + +2008-04-26 12:08 +0000 [r740] Stevan_White: + + * FreeMono.sfd: extensible parenthesis symbols + weight/terminators Toward bug # 23064 + https://savannah.gnu.org/bugs/index.php?23064 Rounded a bunch of + terminators + +2008-04-22 21:45 +0000 [r739] Stevan_White: + + * FreeSans.sfd: Fiddled with math--consequences + of changing the "similar" operator + +2008-04-22 20:06 +0000 [r738] Stevan_White: + + * FreeSerif.sfd: Small alignment problem in + Greek Extended + +2008-04-22 19:52 +0000 [r737] Stevan_White: + + * FreeSerif.sfd: One more tweek to spacing in + Cyrillic Extended + +2008-04-22 19:48 +0000 [r736] Stevan_White: + + * FreeSerif.sfd: Corrected spacing in Cyrillic + Supplement + +2008-04-22 19:35 +0000 [r735] Stevan_White: + + * FreeSerif.sfd: Added Cyrillic Supplement + letters for Enets, Khanty, Chukchi, Itelmen, Mordvin, Kurdish, + Aleut + +2008-04-22 18:46 +0000 [r734] Stevan_White: + + * FreeSans.sfd: More tightening of accents + +2008-04-22 18:41 +0000 [r733] Stevan_White: + + * FreeSerif.sfd: Added Cyrillic letters for + Nivkh (completing Cyrillic range) More tightening of accents in + Latin Extended. + +2008-04-22 08:49 +0000 [r732] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Adjustments to h and k with + caron and cedilla in Latin A and B + +2008-04-21 22:23 +0000 [r731] Stevan_White: + + * FreeSansBold.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: FreeSerifBold: deleted 3 + dotted Hebrew letters in Private/Corporate use (E801-3). They + weren't ligatures or in any other lookup, and they weren't + present in FreeSerif. FreeSansBold: unlinked and deleted F6C3, + which called itself commaaccent. Made some new spacing and + non-spacing accents to make up for it. FreeSansBoldOblique: Made + references of many Latin Extended. Also corrected several wrong + ones. Freeserif: re-named commaaccent + +2008-04-21 18:30 +0000 [r730] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Deleted Hiragana and + Katakana ranges, as discussed on bugs list. Cleaned up some + encoding issues, unnamed glyphs + +2008-04-21 07:28 +0000 [r728-729] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Roman: added 'sine' -- not + beautiful, but I liked drawing it All: Made special lookup for + Dutch ligatures 'IJ' and 'ij' + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Roman: ffi etc Latin + ligatures from 'liga' to 'dlig' (these weren't really ligatures + anyway, and only looked very bad when used. Retain for condensed + type. Others: deleted Latin 'liga' table altogether BoldOblique : + added j to ij ligature + +2008-04-20 22:31 +0000 [r727] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Toward J. Poon's + Report: Except for issues of terminators not always vertical or + horizontal, and a few things that were too hard or I was unsure + of. + +2008-04-20 15:31 +0000 [r726] Stevan_White: + + * FreeSerif.sfd: More fiddling with accents + +2008-04-20 15:11 +0000 [r725] Stevan_White: + + * FreeSerif.sfd: futzing with accents in Latin + Extended Additional + +2008-04-20 14:28 +0000 [r724] Stevan_White: + + * FreeSerif.sfd: Fiddled with accents in Latin + Extended-B + +2008-04-20 12:56 +0000 [r723] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: added primemod + character, referenced by Greek number sign + +2008-04-20 09:51 +0000 [r722] Stevan_White: + + * FreeMono.sfd, + FreeMonoOblique.sfd: Following J. Poon's + report, disconnected NJ (01CA) + +2008-04-19 21:20 +0000 [r721] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: First pass throught + J. Poon's bug list. See bug reports for details. + +2008-04-19 15:44 +0000 [r720] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Made underscore + slanted in Oblique faces, made all to be width of character. + Towards J. Poon's report. Disturbed that xterm and some other + apps put small space between characters when none was called for. + +2008-04-19 15:20 +0000 [r719] Stevan_White: + + * FreeSans.sfd, + FreeSansOblique.sfd, + FreeMono.sfd, + FreeMonoBold.sfd: corrections on Currency + Symbols + +2008-04-19 11:59 +0000 [r718] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, FreeMono.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: More corrections, additions + to Currency Symbols + +2008-04-19 01:41 +0000 [r717] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Filled out and corrected + Currency Symbols + +2008-04-18 21:46 +0000 [r716] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Adjustments to Combining Marks + for Symbols Additions to range in Sans, and re-structured its + marks table so that "middle" can apply to any range + +2008-04-18 08:31 +0000 [r715] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: Made reference between + combining koronis and lenis of Greek Extended In Serif, re-worked + combining marks lookup tables, added anchors in Latin, moved so + without marks they work in kedit (but now I'm doubting kedit does + a reasonable thing...what is a better application for testing + this?) + +2008-04-16 21:46 +0000 [r714] Stevan_White: + + * FreeSerifItalic.sfd: adjusting of spacing and + accents in Greek + +2008-04-16 20:30 +0000 [r713] Stevan_White: + + * FreeSans.sfd, + FreeSansOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoOblique.sfd: Much futzing with Greek + letter spacing and accents. Added lenis to FreeMono. + +2008-04-16 06:45 +0000 [r712] Stevan_White: + + * FreeMono.sfd, + FreeSerif.sfd: Adjusted spacing of dots of + Greek dieresistonons in Serif Whippted up something for Greek + kappascript in Mono (could use revision) + +2008-04-16 06:18 +0000 [r711] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Raised dots on + double-dotted Cyrillic i, to match that of i and j. + +2008-04-14 09:02 +0000 [r710] Stevan_White: + + * FreeMono.sfd: Corrected 27e6-7 "white bracket" + Note it is probably a FontForge bug these symbols aren't showing + up. FontForge thinks they are in Supplemental Arrows, but they + should be in Supplemental Math-A + +2008-04-13 22:18 +0000 [r709] Stevan_White: + + * FreeMono.sfd: named some Greek characters + +2008-04-13 22:00 +0000 [r708] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Spacing of some Cyrillic + characters + +2008-04-13 21:10 +0000 [r707] Stevan_White: + + * FreeSerif.sfd: some fiddling with accents, + yogh was too wide + +2008-04-13 14:28 +0000 [r706] Stevan_White: + + * FreeSansBold.sfd, + FreeSansOblique.sfd: Character spacing was + chaos--tried to improve. BoldOblique also needs it. + +2008-04-13 12:17 +0000 [r705] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Completed the fix of + bug #12798, Greek glyphs with accents to side Much mucking with + accents here, and fixed a few things that were just wrong. + +2008-04-12 19:56 +0000 [r704] Stevan_White: + + * FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Made Mono curly + quotes "bent" + +2008-04-12 19:39 +0000 [r703] Stevan_White: + + * FreeMono.sfd: More fiddling with Greek accents + Made quotes "bent" + +2008-04-12 18:57 +0000 [r702] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Adjustments on Greek + diaresistonos etc. Adjustments in Serif on combining marks for + symbols + +2008-04-12 11:58 +0000 [r701] Stevan_White: + + * FreeSerif.sfd: More additions to Combining + marks for Symbols + +2008-04-12 11:44 +0000 [r700] Stevan_White: + + * FreeSerif.sfd: Additions to Combining marks + for Symbols -- now mostly full. Lots of adjustments to middle + anchor point in Latin to make big circle (nearly) encircle + preceding latter + +2008-04-11 07:14 +0000 [r699] Stevan_White: + + * FreeMono.sfd: Bugfix: Had indroduce a glyph of + width other than 600, making kterminal not recognize it as a + monospace font. + +2008-04-10 19:44 +0000 [r698] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: More messing with accents. + Further to bug #12798, Greek glyphs with accents to side Much + messing with glyphs in Greek Extended range + +2008-04-09 11:35 +0000 [r697] Stevan_White: + + * FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Revisited Latin-1 and + Latin-A accents. Glyph B7 was called "periodcentered", but + Unicode callse it Mid Dot, and the description doesn't refer to + the period. I made it like the dot accent. throughout, and + referred L-dot to it. Also double-checked "commaaccent" + characters (some in Unicode called cedilla, but the Unicode + example shows a comma...mystery) also the funny IPA upside-down f + often had two bars, incorrectly. To do: go through rest of Serif, + and Sans + +2008-04-08 23:25 +0000 [r696] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Completed + re-structuring of stacked Latin accents in Mono. Also: lots of + associated adjustments of Greek Extended accents. (Trying to at + least center extremely wide characters on their box) Repaired + some victems of "find overlaps" sweeps Worked on glyphs with + apostrope/comma parts Corrected a few wrong glyphs. Trying out a + "bent quotes" solution to making primes distinct from quotes. + +2008-04-08 09:56 +0000 [r695] Stevan_White: + + * FreeMonoOblique.sfd: Toward reducing overall + height Did similar process as for Mono, fixing a few errors along + the way. Also the Greek Extended range was very messed up + vertical and horizontally. Horizonal spacing of the heavily + accented Greek is a real problem in Mono... To do: revisit + "commaaccent" characters in all faces: do some have cedillas? + some Hebrew glyphs are a little low Georgian generally is way out + of bounds + +2008-04-07 07:18 +0000 [r694] Stevan_White: + + * INSTALL: various updates and corrections, tweeked + formatting + +2008-04-06 22:48 +0000 [r693] Stevan_White: + + * FreeMonoBold.sfd: Tweeking of accents + +2008-04-06 21:21 +0000 [r692] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd: Re-worked accents in + FreeMonoBold.sfd to make Latin ranges lie between 800 and -200 + EM, as with FreeMono. + +2008-04-06 16:20 +0000 [r691] Stevan_White: + + * tools/hex_range.py (added): a tool for printing + out ranges of formatted hex numbers + +2008-04-06 12:33 +0000 [r690] Stevan_White: + + * FreeMono.sfd: Latin Extended ranges: + Implemented new policy of shortening the letters of the + characters with the highest-stacked accents. At this point all + the Latin glyphs lie betweeen 800 and -200 EM. Also checked for + readability of all the Latin extended letters in xterm. (Issue: + it chops letters outside their bounding boxes; many accents had + been a bit outside. Made sure that if they were chopped, they + were at least still recognizable.) + +2008-04-05 19:41 +0000 [r689] Stevan_White: + + * FreeMono.sfd: Following exchange about Mono on + freefont-bugs with Joe Wells, who * doesn't like the curly quote + marks * wants combining diacritics to work * wants tight line + spacing Trying to reduce font height: * exclamdown was below -200 + * Throughout Extended Greek, ypogegrammeni were too low. + Shortened glyph, and raised all references. * Lots of messing + with Latin Extended ranges to make glyphs mostly fit into 800 + height. Mostly succeeded. A couple will get chopped. * Messed + with "commaaccent" glyphs, which were very low * Cyrillic 04B1 + had a tail that was incorrectly low * Much mucking with Georgian + range. Moved up by 95 (read Georgian is written as though + centered between two horizontal lines, rather than as sitting on + a baseline) There are still a few very high glyphs. FontForge + U+0122 called Gcommaaccent, glyph looks like that, but Unicode + says it's Gcedilla. Made the ones called cedilla by Unicode to be + cedillas Note bug in Unicode: standard for 0122, 0123, 0136, + 0137, 013B, 013C, 0145, 0146, 0156, 0157 all talk about cedilla, + say to make it with cedilla, but example shows comma. By the way: + * Got rid of commaaccent and dotlessj in Corporate Use * Replaced + shadedark, with little squares now not overlapping. * Corrected + IPA symbol 'ts' 02A6, added 02a8, 02a9, 02aa, 02ab, 02ac, 02ad, + 02ae, 02af (so many changes...the CVS server was down...) + +2008-04-05 18:18 +0000 [r688] Stevan_White: + + * FreeSerif.sfd: e-named arabic and hebrew + characters Big adjustment to comma-accents. Mostly effects Greek + Extended. Made such accents to be like comma, rather than like + Russian apostrophe (and de-referenced that symbol) + +2008-04-04 07:17 +0000 [r687] Stevan_White: + + * FreeMono.sfd, + FreeSerif.sfd: raised dot on superscript i + (2071) to make it more distinct at small sizes + +2008-04-03 23:33 +0000 [r686] Stevan_White: + + * FreeMono.sfd: added two IPA symbols + +2008-04-02 20:15 +0000 [r685] Stevan_White: + + * FreeSerif.sfd: fixed a few more control points + too close + +2008-04-02 18:59 +0000 [r684] Stevan_White: + + * FreeSerif.sfd: Fixed names of languages in + ligature table for latn "w/i". This fixes a crash when FontForge + opened the ttf table + +2008-04-02 18:47 +0000 [r683] Stevan_White: + + * FreeSerif.sfd: Motivated by bug crashing + FontForge when opening ttf file, started cleanup of useless + control points. Not finished. Got partway through Sinhala + +2008-03-31 21:51 +0000 [r682] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd: Fixed various "Find + Problems", including glyphs with mixed-up names, and bad TT + matrices. (lots more bad TT matrices remain) + +2008-03-31 06:50 +0000 [r681] Stevan_White: + + * FreeSerif.sfd: re-named a bunch of Cyrillic + letters + +2008-03-30 22:32 +0000 [r680] Stevan_White: + + * FreeSerif.sfd: put above mark on Cyrillic i + and double-dot i for Slavonic number forms + +2008-03-30 21:06 +0000 [r679] Stevan_White: + + * FreeSans.sfd: tightened spacing on glyphs of + last commit + +2008-03-30 21:03 +0000 [r678] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Concerning bug #16120, Include + upper case Wynn and upper case Yogh Adapted Herman Miller's + Thyromanes letters 01F7 021C 021D for Serif Drew my own versions + for Sans. + +2008-03-30 16:00 +0000 [r677] Stevan_White: + + * FreeSerif.sfd: Added 04F6,7 + +2008-03-30 15:34 +0000 [r676] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: Made more Cyrillic diacritics + really combine. Made a mark lookup just for Cyrillic diacritics, + Marked most of the unadorned Cyrillic alphabet. Still not clear + on correct shapes for some of the marks. + +2008-03-29 23:25 +0000 [r675] Stevan_White: + + * FreeMono.sfd, + FreeMonoOblique.sfd: Tweeks to accents + +2008-03-29 20:32 +0000 [r674] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSans.sfd: small adjustments in Cyrillic + +2008-03-29 20:14 +0000 [r673] Stevan_White: + + * FreeSerif.sfd: corrected small palochka made + Cyrillic combining hundred-thousands and millions really combine + named some combining diacriticals + +2008-03-29 14:18 +0000 [r672] Stevan_White: + + * FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: mostly adjusted + horizontal spacing of mono oblique faces + +2008-03-29 13:18 +0000 [r671] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: More cleanup of + Cyrillic ranges Completely re-did horizontal spacing of + SerifItalic and SerifBoldItalic. See bug #17912, poor kerning in + Cyrillic oblique... https://savannah.gnu.org/bugs/index.php?17912 + It looked like chaos to me. Only so much can be done: the font is + flawed. But I think the changes make text readable in these + faces. There were many dozens of incorrect glyphs in + higher-numbered characters. It looked like someone started + copying letters that were like the correct ones, meaning to edit + them later, but never got around to it. (Or else, a facile + copying of glyphs that kinda looked right, but really kinda + weren't.) I deleted all those I could find. No glyph is better + than a wrong glyph. Futzt with accents, shooting for consistency + and readability. A maintenance thing: making correct references + (acyrillic vs a, although they may be the same glyph) I made a + lot of headway, but it isn't finished. Likewise, a large fraction + of these are compound characters, which can be made with + references, resulting in easier maintenance, reduced likelihood + of errors, and smaller files. I replaced many. + +2008-03-29 00:34 +0000 [r670] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd: Cyrillic italic Added italic, + bolditalic 0493, 04a7, 04AD because their form clearly varies in + italic. But was just guessing... + +2008-03-29 00:14 +0000 [r669] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd: Cyrillic italic Added + italic, bolditalic 0493, 04AD because their form clearly varies + in italic. But was just guessing as to exact form. + +2008-03-28 23:16 +0000 [r668] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Overhaul of Cyrillic + Italic, BoldItalic added small yat for bug #22588 (note Times New + Roman doesn't use alternate form in Italic) All forms of Serif + have big problems in Cyrillic. The ugliest is in roman. The + letters, even of the Russian alphabet, are of inconsistent height + (awfully, small 0438 (ii) 0446 (tse)) and they vary from the + height of Latin and they vary from the height of italic and bold. + They are a mish-mash of letters from several fonts, of similar + (but not quite identical) weight, and similar, (but not quite + identical) size. I think the best solution would be to identify + the face that best matches Latin, and fill the range with that. I + think this is possible because the rarer letters seem to be + better: the common letters are the ones that are wrong. For now, + I just increased the sized of 0438 and 0446, and 048a, 048b, also + 0459 (lje) 045A (nje) 0464 (dje) Other issues ------------ Were + outline, with home-made accents - replaced with references 0400 + (was referencing E) 0401, 0402, 040c, 040d, 040e 0450, 0451, 0453 + more in the later ranges. Deleted dozens of characters in Bold, + Italic, and BoldItalic, that appeared half-made (a part of the + letter was copied, but the letter was never completed, and was + basically wrong) Lots of letters with hooks and lines in italic + were represented as just the unhooked version in italic. 048a, + 048b (short i with tail, had big-eared breve common in Cyrillic, + but unlike other letters) Re-implemented many compound letters + with references. Questionable ------------ In all versions, + 0478-9 Uk, uk. SerifItalic 0495 Small ge with acute, in italic: + is it like italic ge, or oblique? Well, peeked at Times New + Roman, which has it oblique. + +2008-03-27 20:33 +0000 [r667] Stevan_White: + + * FreeSerifBoldItalic.sfd: Moving all Greek + capitals with accent so they don't cover previous letter. + Remedies bug #12798 + +2008-03-27 20:27 +0000 [r666] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Various tweeks to accented + Latin letters. Connected O-ogonek correctly + +2008-03-27 19:55 +0000 [r665] Stevan_White: + + * FreeSerifItalic.sfd: Accents of numerous + accented Latin letters got shifted in a previous commit. This + fixes it. + +2008-03-27 19:28 +0000 [r664] Stevan_White: + + * FreeSerif.sfd: Adjusted combining tack left + and right (0318-0319) to be above -300 EM. + +2008-03-26 23:37 +0000 [r663] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Added some "middle" marks for + positioning of diacritics + +2008-03-26 23:21 +0000 [r662] Stevan_White: + + * FreeSans.sfd: copied 4 enclosing combining + diacriticals from Serif 20DD - 20E0 + +2008-03-26 23:13 +0000 [r661] Stevan_White: + + * FreeSerif.sfd: adjusted and added some + enclosing diacritics 20DD - 20E0 could use more work. Other faces + need 'em too. In response to Debian bug #472566 ttf-freefont: + U+20DD COMBINING ENCOLSING CIRCLE doesn't combine + http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=472566 + +2008-03-26 20:00 +0000 [r660] Stevan_White: + + * FreeSerif.sfd: Lowered a few over-high Latin + accents + +2008-03-25 23:27 +0000 [r659] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd: FreeSansBold Devangari only + digits 1 and 2, and nothing else. Deleted FreeMonoBold + FreeMonoOblique FreeSerifBold FreeSeriftalic FreeSerifBoldItalic + FreeSansOblique FreeSansBold FreeSansBoldOblique got rid of + dotlessj, comma in Corporate Use Single Substitution lookup, ccmp + table made proper dotlessj, re-linked j-circumflex Note: + FreeSansBold has a commaaccent in Corporate Use, used by several + other characers. Haven't done anything about this. + +2008-03-25 07:30 +0000 [r658] Stevan_White: + + * FreeSerif.sfd: Added/corrected glyphs for yeh + hamza in Arabic, Added init and medi lookups for yeh hamza. + +2008-03-24 21:54 +0000 [r657] Stevan_White: + + * FreeSerif.sfd: Added isolated and final forms + for 0629 teh marbuta 0624 waw hamza 0626 yeh hamza 0649 alef + maksura A previous commit had added lookups that referred to + these, + +2008-03-24 18:51 +0000 [r656] Stevan_White: + + * FreeSerif.sfd: more fiddling with + super/subscripts + +2008-03-24 12:17 +0000 [r655] Stevan_White: + + * notes/README-downloads.txt (added): An explanatory + file for the downloads directory + +2008-03-24 11:59 +0000 [r654] Stevan_White: + + * sfd/Makefile, + tools/GenerateTrueType, Makefile, + tools/GenerateOpenType (added): Scripts and Make + targets to generate OpenType fonts and zip file + +2008-03-24 11:56 +0000 [r653] Stevan_White: + + * notes/maintenance.txt: Added gnupload and info + about tagging + +2008-03-23 18:11 +0000 [r652] Stevan_White: + + * Makefile: no longer needs VPATH on top level + +2008-03-23 18:04 +0000 [r650] Stevan_White: + + * ChangeLog: additions for last few days + +2008-03-23 14:21 +0000 [r649] Stevan_White: + + * FreeSerif.sfd: last problem with Find Problems + -> ATT 'mark' Latin lookup afii10026 is in 'cyrl', also afii10074 + (These are upper and lower Cyrillic i) [Just removed mark from + both letters] 'half' Bengali lookup Khanda_Ta is in 'bng2' [added + bng2 to lookup] + +2008-03-23 13:28 +0000 [r648] Stevan_White: + + * FreeSerif.sfd: added TtTable etc + +2008-03-23 13:15 +0000 [r647] Stevan_White: + + * FreeSerif.sfd: clean-up of Points too Close + through to end of font. This episode completes the paths/points + clean-up of Serif. (But note: many ranges, esp. Ethiopic, + Japanese, and Indic, have way too many points, resulting in + lumpiness.) + +2008-03-23 12:03 +0000 [r646] Stevan_White: + + * FreeSerif.sfd: clean-up of Points too Close + though Arabic + +2008-03-23 11:50 +0000 [r645] Stevan_White: + + * FreeSerif.sfd: clean-up of Points too Close + through Hiragana and Katakana + +2008-03-22 14:43 +0000 [r644] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Mostly additions to FreeSans, + mostly having to do with LaTeX ranges. This basically fills the + LaTeX range for FreeSans, except for extensible brackets etc. + +2008-03-21 23:49 +0000 [r642-643] Stevan_White: + + * Makefile: split Makefile into two levels + + * sfd/Makefile (added): tidier with a lower-level + makefile + +2008-03-21 21:51 +0000 [r641] Stevan_White: + + * Makefile: made quieter + +2008-03-21 20:57 +0000 [r640] Stevan_White: + + * FreeSerif.sfd: in previous commit, hadn't + relly saved the changes about the ligature tables. this does that + also, named the "ciel" and "floor" characters + +2008-03-21 20:50 +0000 [r636-639] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansOblique.sfd, + FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd: (these changes were also + made in the previous few commits of other faces) changed name of + 00B5 from 'mu' to 'micro' changed name of 2206 from 'Delta' to + 'Delta.math' changed name of 0308 from 'diaerisis' to + 'diaerisiscomb' + + * FreeSerif.sfd: split lookup for ligatures in + latin into two classes; ff, ffl, fl which are appropriate for all + languages, and fi, ffi, which are not appropriate in Turkish (due + to distinction between short and long i) + + * FreeMonoBoldOblique.sfd: moved dotlessj from + Corporate Use, deleted commaaccent there mis-named glyphs + tcommaaccent, Tcommaaccent changed name of 030A from 'dieresis' + to 'ringcomb' + + * FreeSansBold.sfd, + FreeSansBoldOblique.sfd: removed bogus glyphs + for 200C 200D, ZWJ and ZWNJ (zero-width joiner, zero-width + non-joiner) + +2008-03-21 20:20 +0000 [r633-635] Stevan_White: + + * tools/ConvertFont (removed): this was apparently + an older version of GenerateTrueType + + * tools/GenerateTrueType: Took out scaling to 2048 + (was there a good reason for that?) Made to first auto-hint whole + font + + * Makefile: made to work for me + +2008-03-21 15:20 +0000 [r632] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd: Regularized stacking of + accents in Latin Extended Additional + +2008-03-21 15:09 +0000 [r631] Stevan_White: + + * FreeSerif.sfd: everal characters in U+F600 + Corporate Use range dotlessj, onefitted (and other "fitted" + numerals), commaaccent registered, copyright, trademark According + to "Adobe Glyph List" + http://www.tug.org/texlive/Contents/live/texmf-dist/doc/generic/t2/glyphlist.txt + Adobe "fitted" numerals used to go in the corporate use section + More in U+F800 range more corporate symbols represented elsewhere + math braces, brackets move some to 2300 range Now Serif has full + set extensible brackets in Miscellaneous Technical Also, think + I've filled out all of the IPA + +2008-03-21 15:06 +0000 [r629-630] Stevan_White: + + * FreeMono.sfd: Several additions to IPA + Regularized stacking of accents in Latin Extended Additional + + * FreeSans.sfd: egularized stacking of accents + in Latin Extended Additional Added some arrows Some Blackboard + Bold Several characters in U+F600 Corporate Use range dotlessj, + onefitted, commaaccent dotlessj referred to by: jcircumflex, + uni01F0: how to move it? (renamed it to uFFFF, re-linked others + by hand) commaaccent http://diacritics.typo.cz/index.php?id=9 + should be u+0326 but wasn't linked to anything anyway + +2008-03-21 15:01 +0000 [r628] Stevan_White: + + * FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Got rid of dotlessi + etc single substitution and related ccmp table Regularized + stacking of accents in Latin Extended Additional FreeSansBold + U+0617 etc, read glyphs "4GWglm" It should be arabic. Deleted + +2008-03-19 08:21 +0000 [r627] Stevan_White: + + * ChangeLog: added changes of the 18th + +2008-03-19 00:14 +0000 [r626] Stevan_White: + + * FreeSans.sfd: clean-up of all path issues and + points too close + +2008-03-18 19:52 +0000 [r625] Stevan_White: + + * FreeSans.sfd: Re-ordered the ShortTable, + because when I did autoinstruct on the quadratic version, it did + it this way. + +2008-03-18 19:44 +0000 [r624] Stevan_White: + + * FreeSans.sfd: A ligature referred to a name + with no entry: afii301. This is the Adobe name for zero-width + joiner, U+200D. With this, FontForge's "Find Problems" ATT "Check + for missing glyph names" finally passes. + +2008-03-18 19:41 +0000 [r623] Stevan_White: + + * FreeSans.sfd: zero-width joiner and zero-width + non-joiner both had glyphs, incorrectly. (u+200B 200C) + +2008-03-18 19:33 +0000 [r622] Stevan_White: + + * FreeSans.sfd: Seems one ot the 'pres' tables + contains mixed Devangari and Gujarati. This is probably a + mistake, but re-named the table accordingly, and added the + script. With this, FontForge "Find Problems" for ATT "Check for + missing scripts in features" finally passes. + +2008-03-18 19:24 +0000 [r621] Stevan_White: + + * FreeSans.sfd: removed another 'above' mark + form a greek letter + +2008-03-18 19:14 +0000 [r619-620] Stevan_White: + + * FreeSans.sfd: Likewise a Gugarati lookup had + script DFLT. + + * FreeSans.sfd: 'pres' Pre Base Substitution has + script DFLT. That cannot be right: this contains Devangari + characters. Changed script and name accordingly. This was + probably a mistake and a leftover. + +2008-03-18 19:07 +0000 [r618] Stevan_White: + + * FreeSans.sfd: got rid of "lookup \d\d" in + table names + +2008-03-18 19:01 +0000 [r617] Stevan_White: + + * FreeSans.sfd: The 'aalt' table for Latin + contains only bengali characters. [renamed accordingly, and put + in script 'beng' rather than 'latn'] The table "Ligature + Substitution for Devanagari lookup 46" is really a 'reph'. + Re-named accordingly. The table "'vatu' Vattu Variants lookup 24" + is in script 'DFLT', which is wrong. The characters are from + Gujarati. But there is already such a table for Gujarati. Changed + name and script accordingly. Got rid of Single Substitution + table. + +2008-03-18 18:54 +0000 [r616] Stevan_White: + + * FreeSans.sfd: Think I fixed the problem + causing the FontForge crashes. Related to the dotlessi thing. + There's a table Lookup: 6 0 0 "'ccmp' Glyph + Composition/Decomposition in Latin lookup 0" {"'ccmp' Glyph + Composition/Decomposition in Latin lookup 0 subtable" } ['ccmp' + ('latn' <'dflt' > ) ] It is related to another lookup ChainSub2: + class "'ccmp' Glyph Composition/Decomposition in Latin lookup 0 + subtable" that has something to do with i and j. It ends with + SeqLookup: 0 "Single Substitution lookup 47" EndFPST When I + removed the lookup for i and j, the SeqLookup line would be badly + corrupted, and subsequent saves resulted in a segfault and a + truncated sfd file. So I doctored the whole thing with vi. + +2008-03-18 08:13 +0000 [r615] Stevan_White: + + * FreeSans.sfd: Again got rid of single + substitution lookup changing dotlessi and dotlessj to i and j, + because it's wrong. + +2008-03-18 08:10 +0000 [r614] Stevan_White: + + * FreeSans.sfd: Regress to 1.118. Somehow + introduced a crash. (I wasn't careful enough changing the names + of the lookups, I think--need to make sure the change results in + unique names). + +2008-03-17 23:36 +0000 [r613] Stevan_White: + + * FreeSans.sfd: got rid of single substiturions + of dotlessi dotlessj for i and j. these were just wrong. the + 'aalt' table only contained Bengali, although it said 'latn' and + its name was Latin. Changed name and script to correct. Got rid + of extra Devanagari vatu table + +2008-03-17 23:30 +0000 [r612] Stevan_White: + + * FreeSans.sfd: got rid of 'lookup xx' in table + names + +2008-03-17 23:26 +0000 [r611] Stevan_White: + + * FreeSans.sfd: Removed 'mark' named 'above' + from some Greek and Cyrillic letters, and corrected it for a + couple of diacriticals. + +2008-03-16 20:32 +0000 [r609-610] Stevan_White: + + * CREDITS: clean-up of non-unicode characters + + * CREDITS: converted to UTF-8 + +2008-03-16 20:18 +0000 [r608] Stevan_White: + + * AUTHORS: changed name of maintainer to mine + +2008-03-16 20:09 +0000 [r607] Stevan_White: + + * ChangeLog: compiled changes from CVS log. this is + a messy process. I'm sure I missed a lot. Meant to represent + changes since 02/10. + +2008-03-16 17:29 +0000 [r606] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSans.sfd, FreeMono.sfd, + FreeMonoOblique.sfd: clean-up named some + unnamed characters removed a duplicate + +2008-03-16 13:34 +0000 [r605] Stevan_White: + + * FreeMono.sfd: Added vowels to GPOS 'mark' + lookup table for 'above' added 'below' as well, but only for + c-cedilla + +2008-03-16 12:11 +0000 [r604] Stevan_White: + + * FreeMono.sfd: Much futzing with accents in + Latin extensions, in attempt to make them readable at small + sizes, and to make the glyph bounds reasonable. Note: + A-ring-acute is a silly character. + +2008-03-15 23:16 +0000 [r603] Stevan_White: + + * FreeMono.sfd: path clean-up up to points too + close passes Validation + +2008-03-15 22:43 +0000 [r602] Stevan_White: + + * FreeMonoBoldOblique.sfd: clean-up of path + problems up to points too close + +2008-03-15 22:19 +0000 [r601] Stevan_White: + + * FreeMonoBoldOblique.sfd: Made to Validate + Added points at extrema + +2008-03-15 21:59 +0000 [r600] Stevan_White: + + * FreeSans.sfd: Changed names of a bunch of + glyphs with invalid TrueType names, in response to failed + Validation, and in Windows the font not showing up in the font + display. These were all in the range 0x1025f+, which is an + attempt to take care of combining forms in Indic scripts (I don't + know if this work was ever completed, or if it is the best way to + do this). The names were like uni0916_uni094D.half_uni0928.pres + or longer uni0926_uni094D.half_uni0926_uni094D.half.pres and a + few much longer than this. By a process of removing redundant + information, I think I preserved what information was there. + There were a few more names that were never filled in, but + contained a minus, which isn't valid. These start with + "nonunicode", and I replaced the minus with an underscore. + +2008-03-15 19:55 +0000 [r599] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: some futzing with Combining + Diacriticals + +2008-03-15 19:50 +0000 [r597-598] Stevan_White: + + * FreeSerifBold.sfd: changed WinInfo + + * FreeSerifBoldItalic.sfd: added TtTable + +2008-03-15 16:12 +0000 [r596] Stevan_White: + + * FreeSerif.sfd: Fixed several lookup issues, + based on "Find Problems". TamlCA_TamlSSA.half with ligature from + lookup subtable 'haln' Halant Forms in Tamil lookup 24 subtable + refers to a missing glyph glyph190 Similar complaint with a + 'half' lookup. For this and the other glyph190 issue, I changed + glyph190 to TamlCA_TamlSSA, which looks right according to its + surroundings. The lookup 'aalt' Access All Alternatives i is + active for glyph bn_ekaar which has script 'bng2', yet this + script does not appear in any of the features which apply the + lookup. Similar complaint about bn_aikaar. For this I changed the + script of the lookup to bng2, and changed the name of the lookup + accordingly. The lookup 'liga' standard Ligatures look is active + for glyph uni0937091F which has script 'dev2', yet this script + does not appear in any of the features which apply the lookup. It + makes a ligature of uni0937 and uni091F, which are in Devangari. + So I changed the script of the lookup to 'dev2' and changed the + name of the lookup accordingly. Also shortened the names of many + of the lookup tables. + +2008-03-15 14:31 +0000 [r595] Stevan_White: + + * FreeSerifBoldItalic.sfd: cleanup of path + problems, including points too close + +2008-03-15 14:04 +0000 [r594] Stevan_White: + + * FreeSerifBoldItalic.sfd: clean-up of path + problems, including extrema + +2008-03-15 13:22 +0000 [r593] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: CJK punctuation: made some of + the very high glyphs smaller (under 900EM) The brackets in Sans + were very ugly, and not even Sans-serif. Serif: added extensible + square brackets, diddled with integral corrected direction of + some added glyphs + +2008-03-15 13:13 +0000 [r592] Stevan_White: + + * FreeSansBoldOblique.sfd: added TtTable + +2008-03-15 13:10 +0000 [r591] Stevan_White: + + * FreeSansBoldOblique.sfd: clean-up of path + problems, including points too close + +2008-03-15 09:41 +0000 [r590] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: OS/2 Metrics back to + 900/300 + +2008-03-15 09:35 +0000 [r589] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: OS/2 Metrics back to + 900/300 -- kedit doesn't like offset values + +2008-03-14 23:17 +0000 [r588] Stevan_White: + + * FreeSansBold.sfd, + FreeSansOblique.sfd: added TfTables + +2008-03-14 23:08 +0000 [r587] Stevan_White: + + * FreeSansBold.sfd: clean-up of path problems + extrema self-intersecting ordered PS blue values + +2008-03-14 22:30 +0000 [r586] Stevan_White: + + * FreeSansBold.sfd: got rid of mixed references + and contours + +2008-03-14 22:22 +0000 [r585] Stevan_White: + + * FreeSansOblique.sfd: much clean-up of "points + too close" + +2008-03-14 21:18 +0000 [r584] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: unified OS/2 Metrics + added Grid Fit added slated-hyphen to Sans + +2008-03-14 19:35 +0000 [r583] Stevan_White: + + * FreeSerif.sfd: in response to Validate, + changed names of three glyphs in the Tamil ligatures range...all + clearly bugs. + +2008-03-14 19:18 +0000 [r582] Stevan_White: + + * FreeSerif.sfd: cleanup of many path problems + "points too close" + +2008-03-14 07:26 +0000 [r581] Stevan_White: + + * FreeSerif.sfd: in response to validate + results, fixed a few glyphs + +2008-03-14 07:19 +0000 [r580] Stevan_White: + + * FreeSerif.sfd: got rid of mixed references and + contours + +2008-03-14 00:05 +0000 [r579] Stevan_White: + + * FreeSerif.sfd: changed OS/2 metrics various + other clean-ups + +2008-03-13 23:43 +0000 [r578] Stevan_White: + + * FreeMonoBoldOblique.sfd: added TtTable + +2008-03-13 23:39 +0000 [r577] Stevan_White: + + * FreeMonoBoldOblique.sfd: got rid of mixed ref + and contour + +2008-03-13 23:33 +0000 [r576] Stevan_White: + + * FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: removed PS Private + StemSnapV, which was empty anyway. + +2008-03-13 23:28 +0000 [r574-575] Stevan_White: + + * FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: added Grid Fit tables + + * FreeMono.sfd: change OS/2 metrics to 900/300 + +2008-03-13 23:19 +0000 [r573] Stevan_White: + + * FreeSerifItalic.sfd: added TtTable, ShortTable + +2008-03-13 23:15 +0000 [r572] Stevan_White: + + * FreeSerifItalic.sfd: Removed PS Private + StemSnapV -- wasn't right anyway added Grid Fitting made better + OS/2 metrics + +2008-03-13 23:06 +0000 [r571] Stevan_White: + + * FreeSerifItalic.sfd: further path cleanup: + points too close together. in Bengli range, much yet to do + +2008-03-13 20:00 +0000 [r569-570] Stevan_White: + + * FreeMonoOblique.sfd: cleaned up remaining path + problems, missing extrema fixed some math characters + + * FreeMonoBold.sfd: cleaned up path problems, + and mixed refs and contours added TfTable + +2008-03-13 08:25 +0000 [r568] Stevan_White: + + * FreeSerifItalic.sfd: path clean-up more + self-intersecting added many missing extrema fixed mixed + references and glyphs + +2008-03-12 23:11 +0000 [r567] Stevan_White: + + * FreeSans.sfd: Rearranged PS BluesValues so + they were in increasing order, made all 20 in width. In response + to FontForge Validate complaint, in hopes of making font work in + Windows. + +2008-03-12 22:45 +0000 [r566] Stevan_White: + + * FreeMono.sfd: Copied in by hand TrueType + tables from a version with quadratic splines. I hope this will + make the glyphs smooth properly in Windows. + +2008-03-12 22:41 +0000 [r565] Stevan_White: + + * FreeSans.sfd: Added TrueType tables (copied in + by hand from version with quadratic splines) + +2008-03-12 22:34 +0000 [r563-564] Stevan_White: + + * FreeSans.sfd: clean-up tweek + + * FreeSans.sfd: Got rid of mixed contours and + refs + +2008-03-12 22:18 +0000 [r562] Stevan_White: + + * FreeMono.sfd: two more glyphs with quadratic + problems + +2008-03-12 22:07 +0000 [r561] Stevan_White: + + * FreeMono.sfd: a few paths that don't convert + well to quadratics + +2008-03-12 21:45 +0000 [r560] Stevan_White: + + * FreeMono.sfd: Fixed glyphs with mixed contours + and references + +2008-03-12 01:05 +0000 [r559] Stevan_White: + + * FreeSerifBoldItalic.sfd: cleanup of path + problems as others + +2008-03-12 00:51 +0000 [r558] Stevan_White: + + * FreeSerifItalic.sfd: cleanup of path problems + as others + +2008-03-12 00:08 +0000 [r557] Stevan_White: + + * FreeSerifBold.sfd: cleanup of path problems + open intersecting clockwise ref reversed points outside glyph + removed hints + +2008-03-11 23:13 +0000 [r556] Stevan_White: + + * FreeMonoBoldOblique.sfd: cleanup of path + problems open intersecting clockwise flipped ref points beyond + spline removed hints + +2008-03-11 22:59 +0000 [r555] Stevan_White: + + * FreeMonoBold.sfd, + FreeMonoOblique.sfd: cleanup of path problems + open paths intersecting clockwise flipped references points + beyond glyph removed hints + +2008-03-11 22:31 +0000 [r554] Stevan_White: + + * FreeSansBoldOblique.sfd: cleanup of path + problems open intersecting clockwise flipped references beyond + spline + +2008-03-11 21:51 +0000 [r553] Stevan_White: + + * FreeSansBold.sfd: clean-up of path problems + open intersecting clockwise flipped references control points + beyond spline removed hints + +2008-03-11 21:46 +0000 [r552] Stevan_White: + + * FreeSansOblique.sfd: clean-up of path and + reference problems open paths intersecting clockwise flipped refs + removed hints + +2008-03-09 20:58 +0000 [r551] Stevan_White: + + * FreeSerif.sfd: continuing general clean-up, + Found several ligatures that referred to a missing glyph "ZWJ". + Took this to mean the "zero width joiner" u+200D There are a + couple more cases in Tamil, but I don't know the glyph they're + referring to. + +2008-03-09 14:27 +0000 [r550] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSans.sfd, + FreeSerif.sfd: further cleanup of path/ref + problems + +2008-03-09 14:08 +0000 [r549] Stevan_White: + + * FreeMono.sfd: clean-up of path problems + +2008-03-09 14:00 +0000 [r548] Stevan_White: + + * FreeMono.sfd: Efforts to make legible at 9pt. + At 8pt, glyphs are at least distinct. + +2008-03-09 12:53 +0000 [r547] Stevan_White: + + * FreeMono.sfd: math symbols: set for LaTeX 2e + seems to be all there. To do: improve legibility at 9pt. Some + double-arrows are just a blur. + +2008-03-09 12:18 +0000 [r546] Stevan_White: + + * FreeMono.sfd: more math characters corrected + logical 'assert' relations, etc. 22a2-22af + +2008-03-09 10:41 +0000 [r544-545] Stevan_White: + + * FreeSerif.sfd: corrected L-dot + + * FreeSerifItalic.sfd, + FreeMono.sfd, + FreeSerif.sfd: Math symbols ============ + SerifItalic Greek lunate epsilon FreeMono many additions in math + range reduced size of binary union, intersection, vee, wedge + correcte empty set + +2008-03-08 23:22 +0000 [r543] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: FreeSans added Greek lunate + epsilon and rho symbol both un-stacked some more stacked + diacriticals + +2008-03-08 22:41 +0000 [r542] Stevan_White: + + * FreeSans.sfd: Clean-up of font paths open + self-intersecting outermost clockwise missing extrema also + flipped references (unlinked) + +2008-03-08 18:17 +0000 [r541] Stevan_White: + + * FreeSerif.sfd: Added lunate epsilon Corrected + empty set tightened up spacing of some other technical characters + worked on some more math operators involving = + +2008-03-08 15:11 +0000 [r540] Stevan_White: + + * FreeSerif.sfd: Added several math operators + used by LaTeX 2e triangle several arrows arrowhookleft + arrowhookright Supplemental Arrows-A long left arrow long right + arrow long leftright arrow long left double arrow long right + double arrow long leftright double arrow long left arrow with + flat tail long right arrow with flat tail + +2008-03-08 13:11 +0000 [r539] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Supplemental Math operators + ============== Added a few of the "n-ary" operators. Math + operators ============== Corrected n-ary union, intersection, and + spikes to be larger than the binary operators Made (many of) the + operators based on + - = to use those symbols directly (by + reference or copying). I think it is good practice to harmonize + the appearance of math operators with the Latin character set. + Geometrical Shapes ================== Made the large circle + larger still. When is it large enough? Combining marks for + Symbols =========================== Made the combining circle to + really combine. Made a circle-slash + +2008-03-08 10:15 +0000 [r538] Stevan_White: + + * FreeSerif.sfd: Clean-up of path problems + intersecting paths missing extrema outer path clockwise Many + changes in Bengali, Ethiopic ranges. These could really use + further clean-up. Added 'divides' and 'not divides' + +2008-03-08 10:10 +0000 [r537] Stevan_White: + + * FreeMono.sfd: Added Grid Fit "GASP" table + Clean-up of contour problems: open paths intersecting paths (esp. + those of references) outermost paths clockwise missing extrema + Also references problems fipped refs tt (TrueType) transformation + matrix problems Did same process of un-stacking some accents in + Latin Extended range as done for Serif. Made combining + diacritical 'hook' to be shorter. (Should have been multiple + commits...I know) + +2008-03-06 18:58 +0000 [r536] Stevan_White: + + * FreeSerif.sfd: Shortened and thickened the + combining hook mark, U+0309, thus shortening many combined + characters and making it look more like the Unicode samples. Then + touched on bug #22499 Latin Extended Additionals incorrectly + stack accents At least in this face, un-stacked + incorrectly-stacked marks. + +2008-03-05 22:01 +0000 [r535] Stevan_White: + + * FreeSerif.sfd: Fixed positioning U+1EC8, 9, I + with hook above + +2008-03-05 21:45 +0000 [r534] Stevan_White: + + * FreeSerif.sfd: added spacing modifier letters + 02B9 02Ba prime and double-prime + +2008-03-05 21:36 +0000 [r533] Stevan_White: + + * FreeSerif.sfd: vertical lines: combining + diacritical marks corrected 0300 030D 0329 0348 (were rendered as + straight apostrophes) spacing modifier letters added 02C8 02CC + +2008-03-05 20:20 +0000 [r532] Stevan_White: + + * FreeSerif.sfd: Reverses 1.90. I regretted 1.90 + before while and after doing it. + +2008-03-04 20:47 +0000 [r531] Stevan_White: + + * FreeSerif.sfd: Some modifications to Spacing + Modifier Letters 02B0 - 02FF Idea was to bring in line with + Unicode that suggests that these characters should all occupy the + width of a space in the font, here, 250 EM. Unfortunate + side-effects in hundreds of characters that used them. Hope I got + them all. + +2008-03-03 20:01 +0000 [r530] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Set the OS/2 Sup/Sub + settings, which by default looked like random trash. I don't know + if it really helps but it looks better. + +2008-03-03 00:13 +0000 [r529] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: TTY strings updates + Updated Copyright to 2008 Added Vendor URL as the Savannah + freefont site Added a standard pangram as the Sample Text for + Russian in FreeMono*. It reads: In the thickets of the South once + there was a citrus...--yes, but a fake specimen! + +2008-03-02 22:50 +0000 [r528] Stevan_White: + + * FreeMono.sfd: Completed fix of glyph path + problems open path intersecting not clockwise missing extrema Had + to remove one glyph, because couldn't figure out how to make it + not intersect itself: dkshade U+2193, a checkerboard (probably + should be re-done as non-intersecting squares). Also, lowered the + diacritics on a bunch of capital Latin letters, so they didn't + have to intersect when stacked. Act of desperation? + +2008-03-02 21:37 +0000 [r527] Stevan_White: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansBoldOblique.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Clean sweep, fixing + all open glyph contours. + +2008-03-02 20:13 +0000 [r526] Stevan_White: + + * FreeSans.sfd: Parital clean-up of glyph path + problems open paths some of intersecting paths There are many + more instances of intersecting paths. The Bengali range is + particularly affected. + +2008-03-02 19:14 +0000 [r525] Stevan_White: + + * FreeMonoBold.sfd: Cleaned up glyph path + problems open paths intersecting paths not clockwise missing + extrema + +2008-03-02 15:48 +0000 [r524] Stevan_White: + + * FreeMono.sfd: Fixed most glyph path problems. + Open path path direction extrema There are still a few + intersecting paths... + +2008-03-02 12:31 +0000 [r523] Stevan_White: + + * FreeSerif.sfd: Clean-up of problems found by + FontForge "Find Problems". Fixed all problems with Open Paths + Intersecting Paths Check outermost paths clockwise With Check + missing extrema there were lots of problems, and it's very + fiddly. I got up through the Arabic range, but pooped out in the + Indian scripts. Note: Most of the problems were plainly mistakes, + or problems that cropped up after some transformation of the + glyph. Others seem to be the result of freehand drawing or + scanning. More info at: bug #22454: Path bugs in FreeSerif + +2008-03-01 21:14 +0000 [r522] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoBoldOblique.sfd: Removed all back + layers from glyphs that had them. In most cases, this layer had + been used as a guide, slightly modified to make the front layer. + Sometimes it was just a mistake. This remedies bug #22381: Some + characters have "ghost" glyphs in back layer + https://savannah.gnu.org/bugs/index.php?22381 However, this is + bound to happen again. It would be good to have a script that + checks, or maybe a facility in FontForge's "Find Problems". + +2008-03-01 10:20 +0000 [r521] Stevan_White: + + * FreeSerif.sfd: Arabic now seems to be working, + in a limited way, for display of modern text. Remedy for: bug + #22329: Arabic not really working + https://savannah.gnu.org/bugs/index.php?22329 * Drew several + glyphs for special forms of yeh * Drew sukun combining + diacritical * Made some diacritical combining marks to be + properly zero width. * Added 'init' 'medi' 'fina' tables to + convert letters to their initial, medial, and final forms within + words. * Added 'rlig' table for required ligatures of lam and + alif * Constructed the lam-alif ligatures. Not done: * may be + more required ligatures of lam and alif * other common ligatures + * 'mark' table for better positioning of diacriticals * 'mark' + table for positioning vowels * 'locl' table for localized forms + of certain letters * 'ccmp' table for decomposing ligatures Also + (nothing to do with Arabic): moved some glyphs 02d4-02D7 up. + +2008-02-27 22:45 +0000 [r520] Stevan_White: + + * FreeSerif.sfd: Shifted entire Arabic alphabet + down by 200EM, so it shares the common baseline. I hope. Arabic + Arabic Presetation Forms + +2008-02-27 22:26 +0000 [r519] Stevan_White: + + * FreeSans.sfd: Filled out Combining Diacritical + Forms in Sans + +2008-02-27 22:02 +0000 [r518] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: more tweeks to Combining + Diacritical Forms + +2008-02-27 08:38 +0000 [r517] Stevan_White: + + * FreeSans.sfd, + FreeSansOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd: Combinint diacriticals range + Mostly filled Sans. The rest are tweeks. + +2008-02-26 00:12 +0000 [r516] Stevan_White: + + * FreeSerif.sfd: More tweeks to combining + diacriticals. added DPOS 'mark' tables for Latin below topright + ogonek and put corresponding marks in many Latin letters + +2008-02-24 11:57 +0000 [r515] Stevan_White: + + * FreeSerif.sfd: Some tweeks to previous commit. + +2008-02-24 11:34 +0000 [r514] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Much fiddling with the + "combining diacriticals" range 0300-036F. More info: see bug + #22331: combining diacriticals are misplaced in FreeSerif Filled + in for Serif. Also tidied diacriticals in some of the other + faces. Made to align to medium-sized preceding character, when + not using anchor marks. Added "above" marks where needed. To do: + add "below" table and marks. + +2008-02-23 18:30 +0000 [r513] Stevan_White: + + * FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Continued programme + of filling HTML Character Entities in Mono. I think there are + still a few missing, but I don't have an easy way to tell... + Anyway, it's looking good. + +2008-02-23 13:43 +0000 [r512] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Unified and corrected + combining diacritical marks U+0360-1 where they existed. Also + tidied some of the "tie" marks. These glyphs have width 0. I'm + not sure that is the best way to approach the problem of + combining marks, but I see other fonts that do the same. + +2008-02-23 12:58 +0000 [r511] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Checked U+203F, U+2040 (tie + and undertie). Mostly the tie was too low. + +2008-02-23 11:55 +0000 [r510] Stevan_White: + + * FreeSans.sfd, FreeMono.sfd, + FreeSerif.sfd: Made "HTML 4 Character + Entities" complete for normal-style faces. Partial remedy for bug + #21784: missing glyphs for HTML 4 character entities + https://savannah.gnu.org/bugs/?21784 Main things remaining: do + similar process for bold and oblique forms. ----- notes + ----------- Filled out several typographic spaces in Sans and + Mono U+2000, etc. Mono made Rfraktur Mono made 'angle' Mono + copied cards suites from FreeSerif and scaled to fit Sans drew + upsilon-hook. Sans constructed omegapi from omega and a minus + Sans made overline Sans flat copied cards suites from FreeSerif + (maybe not "sans" enough?) Sans 'similar' didn't look like other + such symbols and was much skinnier Sans made several symbols to + be references to 'similar' Sans made 'congruent' Sans made + reference to aleph from alephmath Sans angleleft and angleright + brackets just copied from Serif (in which they look too angular) + Sans "subset" is too high and looks like a letter C. Made to be a + tad higher than small letter Sans notin doesn't look like isin: + 'element' 2208 is the height of a capital. Fixed this, and used + references to better effect. Sans weierstrass p: copied from Mono + (where its style doesn't fit anyway), and widened the stroke + -------- other notes ----------------- better check Sans 0361 + also doubt 223E is right What is to be done about that? Serif + 2040 tie is low...didn't I fix this? Sans Rfraktur and Ifraktur + are not sans-serif. Overall, many Sans math symbols are much + thinner than seems to fit. Sans surprises me not all the + "equals"-like characters are made from "minus" Sans "period" is a + square. (Don't like the dot operator being a square, but that + would be consistent.) Serif ceil and floor glyphs are not high + enough + +2008-02-21 21:28 +0000 [r509] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: In previous commit, + changed Font Info -> OS/2 -> Vendor ID to GNU Repeated that for + the remaining fonts. + +2008-02-21 21:01 +0000 [r508] Stevan_White: + + * FreeSans.sfd, FreeMono.sfd, + FreeSerif.sfd: Worked toward extended integral + signs. U+2320 TOP HALF INTEGRAL U+23AE INTEGRAL EXTENSION U+2321 + BOTTOM HALF INTEGRAL Regarding bug #13370: INTEGRAL EXTENSION + does not align with TOP/BOTTOM HALF INTEGRAL + https://savannah.gnu.org/bugs/?13370 Hope was to make the three + pieces precisely match up. But the horizontal space eludes me. + There is still a tiny gap, althogh I have made the parts slightly + longer than they ought to be. Also, FreeMono is still not + advertizing that it supports "Miscellaneous Technical Symbols", + although FontForge shows it selected in Font Info->OS/2. + +2008-02-21 00:46 +0000 [r507] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Moved capital Greeek + letters with tonos so tonos doesn't cover preceding letter + Partial remedy for bug #12798: some combined Greek characters + have a bug https://savannah.gnu.org/bugs/index.php?12798 Only + deals with range 0380 - 03df (Greek). More needs to be done in + Greek Extended range. + +2008-02-20 21:57 +0000 [r506] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Made Greek 'tonos' to + be the same as combining accent acute Remedy for bug #12821: + FreeSerif has Greek tonos different than Greek acute + https://savannah.gnu.org/bugs/index.php?12821 In some cases, just + made a reference to U+0301 (combining accent acute) of U+0384 + (Greek tonos). The characters that used tonos were linked to + that. In many cases, this cause spacing problems, which were also + fixed + +2008-02-20 19:50 +0000 [r505] Stevan_White: + + * FreeMono.sfd, + FreeMonoOblique.sfd: Tweeks to curly quotes of + previous commit + +2008-02-20 08:52 +0000 [r504] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Made proper curly + quotes of U2018 - U201F in monospace fonts (removed incorrect + reference in some straight quotes U2033... Remedies bug #18300: + FreeMono has the wrong quote marks ‘ (U+2018) and “ (U+201C) + https://savannah.gnu.org/bugs/index.php?18300 + +2008-02-19 23:17 +0000 [r503] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: This touches on two + bug reports with interrelated glyphs bug #20278: Vertical offset + of superscripted numerical digits Some vertical offset problems, + lots more horizontal ones. Changes also impacted vulgar + fractions, so had to fix those too. bug #17756: possible printing + problem with vulgar fractions. . . . + https://savannah.gnu.org/bugs/index.php?17756 I think this was a + case of front and back layers inadvertently both having glyphs in + them. Removed the ones I found, and tidied up all vulgar + fractions + +2008-02-18 23:21 +0000 [r502] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Added to FreeSerif* uni2E17 + double hyphen In pursuit of bug #22267: Request Double-Hyphen + Sign https://savannah.gnu.org/bugs/?22267 + +2008-02-18 22:37 +0000 [r501] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: unified 'liga' for Latin: + now only ff ffi ffl fi fl Other ligatures should be put in dlig, + hlig, etc. Removed such as Lj, DZ. I don't thing these are + ligatures. (Am I wrong? the glyphs aren't modified...) + +2008-02-18 08:33 +0000 [r500] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerif.sfd: Slightly increased the height + of Cyrillic Þ (U+0438) to be even with other similar glyphs + (e.g. U+043D) Remedies bug #22289: The Cyrillic Þ letter in + FreeSerif isn't high enough + https://savannah.gnu.org/bugs/index.php?22289 + +2008-02-18 08:18 +0000 [r499] Stevan_White: + + * FreeSans.sfd, + FreeSerif.sfd: Made U+30FB, KATAKANA MIDDLE + DOT to be same width as other Katakana. Remedies bug #18326: ・ + (U+30FB, KATAKANA MIDDLE DOT) should be fullwidth + https://savannah.gnu.org/bugs/index.php?18326 + +2008-02-18 08:02 +0000 [r498] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Moved U+203F UNDERTIE to be + below the baseline, as it should be. See + http://www.unicode.org/charts/PDF/U2000.pdf Remedy for bug + #18413: U+203F UNDERTIE glyph too high in FreeSerif + https://savannah.gnu.org/bugs/?18413 + +2008-02-18 01:19 +0000 [r497] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Re-promoted ff ffi ffl fi + fl as standard ligatures in Latin. Made st ligature historical, + if anything. Cleaned up some silly ligatures (Roman numerals as + ligatures, etc) There is more to be done here, just for Latin + ligatures. + +2008-02-17 23:41 +0000 [r496] Stevan_White: + + * FreeSans.sfd: Offset Hiragana and Katakana + ranges of FreeSans as in + https://savannah.gnu.org/bugs/index.php?22326 + +2008-02-17 23:34 +0000 [r495] Stevan_White: + + * FreeSerif.sfd, + FreeSerifBold.sfd: Corrected vertical offset + of Hiragana and Katakana, cf + https://savannah.gnu.org/bugs/index.php?22326 (with advice from + Kenshi Muto) + +2008-02-17 23:26 +0000 [r494] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Auto-Hinted + everything. The auto-hinting in the new FontForge is said to be + (and seems to me to be) much better than in previous versions. + +2008-02-17 23:16 +0000 [r493] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: TT Info -> + Manufacturer = GNU + +2008-02-17 22:58 +0000 [r492] Stevan_White: + + * FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Updated FontForge SFD + file version to SplineFontDB: 2.0 using FontFOrge 20080214 This + is a very big change, with which we can carry on with the new + FontForge. + +2008-02-17 22:20 +0000 [r491] Stevan_White: + + * FreeSerif.sfd: This removes the georgian-d + patch of revision 1.58. I can't imagine what went on here. Maybe + I somehow got the patch inverted. Anyway, after the patch, 10e6 + and 10d3 are indistinguishable, which is wrong, according to + http://www.unicode.org/charts/PDF/U10A0.pdf Without the patch, + they seem to be correct. + +2008-02-14 23:36 +0000 [r490] Stevan_White: + + * INSTALL: Instructions for KDE local installation + Instructions for Windows Vista + +2008-02-11 22:55 +0000 [r489] Stevan_White: + + * FreeSerif.sfd: This is from an anonymous patch + patch #5924: correct postscript name for cyrillic yat' Wednesday + 05/09/2007 at 18:25 (now bug #22265: correct postscript name for + cyrillic yat') The postscript name of the two cyrillic letters + yat' and YAT' (0x0462) is not correct, so this fixes it: I found + confirmation of the PostScript names here + http://www.adobe.com/devnet/font/pdfs/5013.Cyrillic_Font_Spec.pdf + +2008-02-11 20:06 +0000 [r488] Stevan_White: + + * README: Made status of Microsoft core web fonts a + little clearer. + +2008-02-10 19:50 +0000 [r486] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Apply patch + 011_liga_to_dlig by Christian Perrier from Debian sources. I am + not quite sure which bug this is meant to fix, but it is most + like bug #15792: Freefont Alef and Lamed combine although this + patch is not the patch included in that bug report. (The report + was closed...no indication if any action was taken.) This is the + last outstanding patch from the Debian sources for ttf-freefont + found in ttf-freefont-20060501cvs-12.diff That is, the SVD files + of this project should now match the ones used to build the + Debian ttf-freefont fonts. + +2008-02-10 19:38 +0000 [r483-485] Stevan_White: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Apply patch + 009_freemono_really_mono by Christian Perrier from Debian sources + meant to remedy bug #17062: Erroneous Georgian D in FreeSerif + reported by Christian Perrier + + * FreeSerif.sfd: Apply patch 008_georgian_d by + Christian Perrier from Debian sources, meant to remedy bug + #17062: Erroneous Georgian D in FreeSerif + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Apply patch + 007_horizontal_spacing by Christian Perrier from Debian sources, + which is meant to remedy bug #17038: horizontal spacing bug in + freemono reported by Christian Perrier + +2008-02-10 19:28 +0000 [r482] Stevan_White: + + * FreeMono.sfd: Apply the patch + 006_remove-russian-sample by Christian Perrier from the Debian + sources that remedies bug #15791 Weird strings in freefont fonts + reported by Christian Perrier Note this change had previously + been made by Primoz Peterlin. The problem was that the Russian + string had somehow become corrupted. I may replace it with a + correctly encoded version in the future. + +2008-02-10 19:23 +0000 [r481] Stevan_White: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Apply patch + 004_workaround-spacing-bug by Christian Perrier, from the Debian + sources which is meant as a (partial) remedy for bug #15956: Line + height is too big in sans and serif reported by Eeli Kaikkonen + Thanks also to Jan Willem Stumpel + +2008-02-10 19:12 +0000 [r479-480] Stevan_White: + + * FreeMono.sfd: In preparation for merge with + Debian sources, which date from 2006-05-01, remove this commit, + which was RCS file: /sources/freefont/freefont/FreeMono.sfd,v + revision 1.28 date: 2006-05-04 15:54:45 +0200; author: peterlin; + state: Exp; lines: +3 -3; Deleted messy Russian sample text from + FreeMono. The Debian diffs already contain this patch, so it will + not get re-applied. Note: I also found the Russian string that + somehow got corrupted, and may well re-insert it later, because I + like it. + + * FreeSans.sfd: In preparation for merge with + Debian sources which date from 2006-05-01, un-do this commit, + which was revision 1.80 date: 2006-05-01 14:42:53 +0200; author: + moyogo; state: Exp; lines: +72 -36; replaced U+2134 Plan to apply + the Debian patches, then re-apply this one. + +2008-02-03 09:50 +0000 [r478] Stevan_White: + + * README: updated URLs corrected spelling errors + added reference to DejaVu (Bitstream Vera) fonts removed + reference to ttfedit, which seems no longer to exist updated + freefont URL added Steve White + +2008-01-22 18:35 +0000 [r476-477] Stevan_White: + + * test (removed): remove the test file + + * test (added): test to see if I can really commit + with the new account + +2006-09-20 11:37 +0000 [r475] peterlin: + + * INSTALL, ChangeLog: * INSTALL: + added installation procedure for MacOS X, courtesy Philipp + Kempgen. + +2006-05-04 13:54 +0000 [r474] peterlin: + + * ChangeLog, FreeMono.sfd: + Deleted messy Russian sample text from FreeMono. + +2006-05-01 12:42 +0000 [r473] moyogo: + + * FreeSans.sfd: replaced U+2134 + +2006-04-15 21:49 +0000 [r472] peterlin: + + * ChangeLog, FreeSans.sfd, + FreeSerif.sfd: * FreeSerif.sfd: corrected + U+10D3. * FreeSans.sfd: ligature U+FB06 (LATIN SMALL LIGATURE + S T) changed from mandatory ("liga") to discretionary ("dlig") + (bug #16253). + +2006-04-15 21:01 +0000 [r471] peterlin: + + * ChangeLog, FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: * FreeMono.sfd: + deleted incomplete glyph U+FB06 (LATIN SMALL LIGATURE S T); + deleted U+FB00, U+FB01, U+FB02, U+FB05 as ligatures. * + FreeMonoOblique.sfd, FreeMonoBoldOblique.sfd: added + U+FB00; deleted U+FB01, U+FB02 as ligatures. * + FreeMonoBold.sfd: deleted U+FB00, U+FB01, U+FB02 as + ligatures. + +2006-04-15 20:21 +0000 [r470] peterlin: + + * ChangeLog, FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Added Georgian + letters, donated by Gia Shervashidze. + +2006-02-22 22:57 +0000 [r469] peterlin: + + * ChangeLog, FreeMono.sfd, + FreeMonoOblique.sfd: * FreeMono.sfd, + FreeMonoOblique.sfd: ligature U+FB4F changed from mandatory + ("liga") to discretionary ("dlig"). This is respons to + Bug#349657: [bug #15792] Freefont Alef and Lamed combine + +2006-02-21 00:23 +0000 [r468] peterlin: + + * ChangeLog, FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeSerifBold.sfd: * FreeSerifBold.sfd, + FreeSans.sfd, FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, FreeSansBold.sfd: ligature + U+FB4F changed from mandatory ("liga") to discretionary ("dlig"). + This is respons to Bug#349657: [bug #15792] Freefont Alef and + Lamed combine + +2006-02-20 23:13 +0000 [r467] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd: corrected bug#275759: [bug #15790] FreeSerif + glyphs for U+2198/U+2199 were reversed. + +2006-02-14 23:09 +0000 [r466] moyogo: + + * ChangeLog, FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: * removed ij and IJ + ligature substitutions + +2006-02-10 22:13 +0000 [r465] peterlin: + + * AUTHORS, ChangeLog, + CREDITS, FreeSerif.sfd: * + FreeSerif.sfd: added small Georgian letters (mkhedruli), + donated by Gia Shervashidze * AUTHORS: Added Gia Shervashidze * + CREDITS: Added Gia Shervashidze + +2006-01-30 23:07 +0000 [r464] peterlin: + + * ChangeLog, notes/maintenance.txt: + notes/maintenance.txt - login as "anonymous" + +2006-01-26 22:32 +0000 [r462] peterlin: + + * ChangeLog, notes/maintenance.txt: * + notes/maintenance.txt: Added information on the Makefile now + used. + +2006-01-26 22:12 +0000 [r461] peterlin: + + * ChangeLog, FreeSansBold.sfd: * + FreeSansBold.sfd: added U+0569, U+0571, U+0579, U+057B, + U+0586. Armenian small letters completed. + +2006-01-26 15:44 +0000 [r460] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd: added U+0297, U+02AD-02AF. IPA Extensions + section is now complete. Copied a dozen of glyphs from Omega IPA + to Phonetic Extension section. + +2006-01-25 23:01 +0000 [r459] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd: added U+01A, U+01A3, U+01A6, U+01B2, U+01BA, + U+01BB, U+01BE, U+01BF. + +2006-01-25 12:44 +0000 [r458] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd: aligned small Armenian letters to x-height in + response to bug #15480. Armenian in Free Sans needs a major + cleanup. + +2006-01-24 23:39 +0000 [r457] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd: changed U+0452, U+045B. Cleanup: U+0460, + U+0461, U+04Bc, U+04BD, U+0508. + +2006-01-24 12:18 +0000 [r456] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd: changed U+0285. + +2006-01-24 12:01 +0000 [r455] peterlin: + + * ChangeLog, FreeSansOblique.sfd: + * FreeSansOblique.sfd: replaced accented chars in Latin-1 and + Latin Extended-B sections with references, where possible. + +2006-01-23 22:13 +0000 [r454] peterlin: + + * ChangeLog, FreeSans.sfd, + FreeSansOblique.sfd: * FreeSans.sfd: added + U+0195, U+01AA, U+0297, U+03D7, U+03F0. Several flipped + references replaced by outlines. * FreeSansOblique.sfd: Latin + Extended-B section more or less brought in sync with FreeSans. + +2006-01-23 15:33 +0000 [r453] peterlin: + + * ChangeLog, + FreeMonoBoldOblique.sfd: * + FreeMonoBoldOblique.sfd: added glyphs from FreeMonoBold in + the Latin Extended-B and IPA Extensions sections. + +2006-01-23 14:44 +0000 [r452] peterlin: + + * ChangeLog, FreeSerifBold.sfd: * + FreeSerifBold.sfd: Added U+0224, U+0225. Changed U+01B7, + U+01B8, U+04E0, U+0452, U+045B. Replaced accented characters in + the Cyrillic region with references. + +2006-01-20 23:37 +0000 [r451] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd: Deleted spurious glyphs in the control code + area. + +2006-01-20 23:27 +0000 [r450] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd: added U+0255, U+0264, U+0277, U+0286, U+029D. + Changed U+0261. + +2006-01-19 22:00 +0000 [r449] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd: replaced Hardip Pannu Singh's Gurmukhi with + AnmolUni by Kulbir Singh Thind. + +2006-01-17 22:10 +0000 [r448] peterlin: + + * ChangeLog, FreeSansBold.sfd: * + FreeSansBold.sfd: Added U+018D, U+0194, U+01B5, U+01B6, + U+01BE, U+0262, U+02A2. + +2006-01-17 14:07 +0000 [r447] peterlin: + + * ChangeLog, FreeSansBold.sfd: * + FreeSansBold.sfd: Changed U+0261 in order to distinguish it + from U+0067. Changed U+0251, U+0252. + +2006-01-17 13:26 +0000 [r446] peterlin: + + * ChangeLog, + FreeSerifBoldItalic.sfd: * + FreeSerifBold.sfd: Small changes in the Cyrillic section. + Added U+0183, U+018C. + +2006-01-17 10:18 +0000 [r445] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd: Added U+2045, U+2046. + +2006-01-17 10:02 +0000 [r444] peterlin: + + * AUTHORS, ChangeLog, + CREDITS, FreeSansBold.sfd: * + FreeSansBold.sfd: Filled in the Gurkmukhi part with the + AnmolUni-Bold by Kulbir Singh Thind. Also some minor corrections + in the Cyrillic part. * CREDITS: Added Kulbir Singh Thind. * + AUTHORS: Added Kulbir Singh Thind. + +2006-01-14 18:09 +0000 [r443] peterlin: + + * AUTHORS, ChangeLog, + CREDITS, FreeSerif.sfd: * + FreeSerif.sfd: Thomas Ridgeway's Tamil characters replaced by + the ones released by the Samyak font project. * CREDITS: Added + Pravin Satpute, Bageshri Salvi, Rahul Bhalerao and Sandeep + Shedmake * AUTHORS: Added Pravin Satpute, Bageshri Salvi, Rahul + Bhalerao and Sandeep Shedmake + +2006-01-08 14:12 +0000 [r442] peterlin: + + * ChangeLog, FreeSansBold.sfd, + FreeMonoBoldOblique.sfd: FreeSansBold.sfd, + FreeMonoBoldOblique.sfd: minor changes + +2006-01-05 22:18 +0000 [r441] peterlin: + + * ChangeLog: Noted moyogo's modifications in + ChangeLog as well. + +2006-01-05 16:12 +0000 [r440] moyogo: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: added cedi sign + U+20B5, Ghanaian currency + +2006-01-05 15:55 +0000 [r439] moyogo: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: added cedi sign U+20B5, + Ghanaian currency + +2006-01-05 15:44 +0000 [r438] moyogo: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: added cedi sign + U+20B5, Ghanaian currency + +2005-12-29 14:39 +0000 [r437] peterlin: + + * ChangeLog, FreeSans.sfd: + FreeSans.sfd: minor cleanup in the Gujarati part. + +2005-12-22 12:46 +0000 [r436] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd: Devanagari and Gujarati parts cleared; once + again merged with Gargi 1.9 and Padmaa 0.6, this time correctly + so that the anchor points survived the merger. + +2005-12-16 15:48 +0000 [r435] peterlin: + + * ChangeLog, FreeSansBold.sfd: + FreeSansBold.sfd: added U+0577. + +2005-12-15 09:26 +0000 [r434] peterlin: + + * ChangeLog, FreeSans.sfd, + FreeSansBold.sfd: * FreeSans.sfd: added + U+0559, U+055F, U+2024. * FreeSansBold.sfd: added U+056E, + U+0573. + +2005-12-14 10:07 +0000 [r433] peterlin: + + * AUTHORS, ChangeLog, + CREDITS, FreeSans.sfd: * + FreeSans.sfd: Merged with Gargi 1.9 and Padmaa 0.6, courtesy + Monika Shah and Sonali Sonania from C-DAC, Mumbai. * CREDITS: + Added Monika Shah and Sonali Sonania. * AUTHORS: Added Monika + Shah and Sonali Sonania. + +2005-12-13 13:34 +0000 [r432] peterlin: + + * ChangeLog, FreeSans.sfd, + FreeSerif.sfd: * FreeSans.sfd - Removed + Sinhala glyphs. * FreeSerif.sfd - Added Sinhala glyphs, + formerly in FreeSans. + +2005-12-09 10:04 +0000 [r431] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd: added U+20AF, U+211E. Changed U+20AC (EURO + SIGN) + +2005-12-09 09:34 +0000 [r430] peterlin: + + * ChangeLog, + FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: * FreeSerifBold.sfd: + added more glyphs from Txfonts to the Arrows and Mathematical + Symbols ranges. * FreeSerifBoldItalic.sfd: added U+03F5 from + Txfonts. + +2005-12-09 08:54 +0000 [r429] peterlin: + + * tools/freefont-ttf.spec (added): Specification + file for building a RPM package, courtesy Rok Papez. + +2005-12-08 14:58 +0000 [r428] peterlin: + + * ChangeLog, FreeSansBold.sfd: * + FreeSans.sfd: added U+0567, U+056A, U+056C, U+0582. + +2005-12-08 14:19 +0000 [r427] peterlin: + + * ChangeLog, FreeSerifBold.sfd: * + FreeSerifBold.sfd: copied Box Drawing range from FreeSans. + +2005-12-08 13:13 +0000 [r426] peterlin: + + * ChangeLog, FreeSerifBold.sfd: * + FreeSerifBold.sfd: added glyphs from Txfonts to the Arrows + and Mathematical Symbols ranges. + +2005-12-08 09:59 +0000 [r425] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd: added U+2259-225A, U+22BA, U+2308-230B, + U+2322-2323. Cyrillic composite characters replaced with + references. + +2005-12-07 23:30 +0000 [r424] peterlin: + + * ChangeLog, FreeSerifBold.sfd: * + FreeSerifBold.sfd: added U+025A, U+025D, U+026B, U+029B, + U+02AE, U+02AF, U+02DE. + +2005-12-07 22:20 +0000 [r423] peterlin: + + * ChangeLog, FreeSerifBold.sfd: * + FreeSerifBold.sfd: updated Hebrew part with Drugulin font + from the Culmus project. + +2005-12-07 20:54 +0000 [r422] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd: added U+207A-207C, U+208A-208C, U+2215-2216. + +2005-12-07 15:12 +0000 [r421] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd: added U+ U+2320 TOP HALF INTEGRAL, U+23AE + INTEGRAL EXTENSION, U+2321 BOTTOM HALF INTEGRAL (bug #13370). + +2005-12-06 23:17 +0000 [r420] peterlin: + + * ChangeLog, FreeSerifBold.sfd: * + FreeSerifBold.sfd: added U+0294-0296, U+02A1-02A2. Started + adding "below" anchors. Performed hinting on characters that were + not hinted "en masse". + +2005-12-06 16:02 +0000 [r419] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd: fixed some more metrics problems in the + Extended Greek area; performed hinting on characters that were + not hinted "en masse". + +2005-12-06 10:52 +0000 [r418] peterlin: + + * ChangeLog, Makefile: * Makefile: + clean also signature files. + +2005-12-06 09:46 +0000 [r416] peterlin: + + * ChangeLog, FreeMonoBold.sfd, + FreeMonoBoldOblique.sfd: * + FreeMonoBoldOblique.sfd, FreeMonoBold.sfd: cosmetic + changes; cleaning background of referenced composed characters. + +2005-12-05 17:52 +0000 [r415] teras: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Some changes to the + greek glyphs, mostly having to do with "tonos" (accent) + +2005-12-05 16:24 +0000 [r414] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd: minor cosmetic changes. + +2005-12-05 15:18 +0000 [r413] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd: adjusted widths of characters in the Extended + Greek range; accents are not any more considerably overhanging on + the left side. Added U+1EDA-1EE3, U+1EE8-1EF1. + +2005-12-05 09:03 +0000 [r412] peterlin: + + * ChangeLog, FreeSans.sfd: + FreeSans.sfd - continued working on Extended Greek range; not + finished yet. + +2005-12-03 11:15 +0000 [r411] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd: fixed combined Greek accents (bug #12800). + Width of characters still need to be adjusted as in FreeSerif. + +2005-12-03 10:56 +0000 [r410] peterlin: + + * AUTHORS, ChangeLog, + CREDITS, FreeSerif.sfd: * + FreeSerif.sfd: fixed positions of Greek accents (bug #12798). + * CREDITS: Added Panayotis Katsaloulis. * AUTHORS: Added + Panayotis Katsaloulis.i + +2005-12-03 09:25 +0000 [r409] peterlin: + + * ChangeLog, Makefile: * Makefile: + minor changes; now creating also a tarfile with sfds. + +2005-12-01 15:31 +0000 [r408] peterlin: + + * ChangeLog, FreeSerifItalic.sfd: + * FreeSerifItalic.sfd: added U+0183, U+018C, U+01C0, U+01C1, + U+01C3, U+01E0, U+01E1, U+01F8, U+01F9. + +2005-12-01 15:03 +0000 [r407] peterlin: + + * ChangeLog, Makefile (added): * + Makefile: created a Makefile to assist building. + +2005-12-01 15:00 +0000 [r406] peterlin: + + * ChangeLog, README: README: an + update. + +2005-12-01 14:41 +0000 [r405] peterlin: + + * ChangeLog, COPYING (added): * + COPYING: added GNU General Public License, version 2. + +2005-12-01 12:40 +0000 [r404] peterlin: + + * ChangeLog, tools/GenerateTrueType + (added): * tools/GenerateTrueType: wrote a FontForge script for + conversion to TrueType. + +2005-12-01 11:07 +0000 [r403] peterlin: + + * ChangeLog, FreeSerifItalic.sfd, + FreeSerif.sfd: * FreeSerif.sfd: merged + with SolaimanLipi Bangla OpenType font from www.ekushey.org, + courtesy Solaiman Karim. * FreeSerifItalic.sfd: merged with + SolaimanLipi Bangla OpenType font from www.ekushey.org, slanted + by 15.5 degrees. + +2005-12-01 10:15 +0000 [r402] peterlin: + + * AUTHORS, ChangeLog, + CREDITS, FreeSans.sfd, + FreeSansOblique.sfd: * FreeSans.sfd: + merged with Rupali Bangla OpenType font from www.ekushey.org * + FreeSansOblique.sfd: merged with Rupali Bangla OpenType font + from www.ekushey.org, slanted by 12 degrees. * CREDITS: added + Solaiman Karim * AUTHORS: added Solaiman Karim + +2005-11-30 14:42 +0000 [r401] peterlin: + + * AUTHORS, ChangeLog, + CREDITS, FreeSerif.sfd: * + FreeSerif.sfd: merged with the Rachana Normal. * AUTHORS: + added K.H. Hussain and R. Chitrajan * CREDITS: added K.H. Hussain + and R. Chitrajan + +2005-11-23 22:37 +0000 [r400] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd - added U+01A0-01A1, U+01AF-01B0, U+026E, + U+028F, U+0291, U+02A3-02A5, U+031B. Modified U+0198. + +2005-11-23 09:08 +0000 [r399] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd - cleaned some background images. + +2005-11-22 22:20 +0000 [r398] peterlin: + + * ChangeLog, FreeSans.sfd, + FreeSansBold.sfd: * FreeSans.sfd, + FreeSansBold.sfd - added U+0263. + +2005-11-22 15:51 +0000 [r397] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd - added U+2591-25A1, U+25A3-25A5, U+25AA, + U+25AC. + +2005-11-22 09:34 +0000 [r396] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd - added U+2504-250B. + +2005-11-21 23:12 +0000 [r395] peterlin: + + * ChangeLog, FreeSansBold.sfd: * + FreeSansBold.sfd - added U+0574, U+0576. Removed overlaps. + +2005-11-21 22:47 +0000 [r394] peterlin: + + * ChangeLog, + FreeSerifBoldItalic.sfd: * + FreeSerifBoldItalic.sfd - applied the sequence suggested by + Werner Lemberg for reducing redundant points. Added a couple of + glyphs in the IPA Extensions region. + +2005-11-21 15:49 +0000 [r393] peterlin: + + * ChangeLog, FreeMono.sfd, + FreeMonoOblique.sfd: * FreeMono.sfd - + corrected positions of some Greek diacritics on page 0x1F. * + FreeMonoOblique.sfd - working on bringing it in sync with + FreeMono.sfd. + +2005-11-20 22:56 +0000 [r392] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd - added U+02AA-02AC, U+02B0-02B2. + +2005-11-19 22:59 +0000 [r391] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd - added U+01B7-01B9, U+0196, U+019A, U+01C3, + U+0224-0225, U+025E, U+029A, U+2422. Changed U+0184-0185, U+0192, + U+01B4, U+0282, U+0284. + +2005-11-18 22:44 +0000 [r390] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd - started Box Drawing area. + +2005-11-18 09:30 +0000 [r389] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd - added U+02EE, U+207F. + +2005-11-17 22:06 +0000 [r388] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd - removed overlaps in Latin Extended-B and IPA + Extensions ranges. + +2005-11-17 12:59 +0000 [r387] peterlin: + + * ChangeLog, FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: * + FreeMonoOblique.sfd, FreeMonoBold.sfd, + FreeMonoBoldOblique.sfd, FreeSansOblique.sfd, + FreeSansBold.sfd, FreeSansBoldOblique.sfd, + FreeSerifItalic.sfd, FreeSerifBold.sfd, + FreeSerifBoldItalic.sfd - added U+FFFD. + +2005-11-17 12:33 +0000 [r386] peterlin: + + * ChangeLog, + FreeSerifBoldItalic.sfd: * + FreeSerifBoldItalic.sfd - added U+1EDA-1EE3, U+1EE8-1EF1, + U+2190-219B, U+219E-21A8, U+21B9-21BA, U+21C4-21CA, U+21E4-21E5, + U+2669-266F. MES-1 compliant. + +2005-11-17 10:43 +0000 [r385] peterlin: + + * ChangeLog, FreeSerifItalic.sfd: + * FreeSerifItalic.sfd - added U+018B, U+025C, U+0265, U+026F, + U+0279, U+0287, U+028C-028E, U+029E. + +2005-11-17 10:23 +0000 [r384] peterlin: + + * ChangeLog, FreeSerifItalic.sfd: + * FreeSerifItalic.sfd - added glyphs from the Omega project + to Latin Extended-B, IPA Extensions and Greek ranges. + +2005-11-17 09:31 +0000 [r383] peterlin: + + * ChangeLog, + FreeSerifBoldItalic.sfd: * + FreeSerifBoldItalic.sfd - added glyphs from the Omega project + to Latin Extended-B, IPA Extensions and Greek ranges. + +2005-11-17 09:09 +0000 [r382] peterlin: + + * ChangeLog, FreeSerifBold.sfd: * + FreeSerifBold.sfd - added glyphs from the Omega project to + Latin Extended-B, IPA Extensions and Greek ranges. + +2005-11-16 23:17 +0000 [r381] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd - added a handful of letters in the Latin + Extended-B and IPA Extension ranges from the Omega font + collection. + +2005-11-16 22:37 +0000 [r380] peterlin: + + * ChangeLog, FreeSerifItalic.sfd: + * FreeSerifItalic.sfd - started added accent anchors. Added a + handful of Greek letters from Omega font collection. + +2005-11-16 15:41 +0000 [r379] peterlin: + + * ChangeLog, FreeSerifItalic.sfd: + * FreeSerifItalic.sfd - applied the sequence suggested by + Werner Lemberg for reducing redundant points + +2005-11-16 15:02 +0000 [r378] peterlin: + + * papers/eurotex2003/freefont.bib, + papers/eurotex2003/freefont.tex: Changed files + sent back by Karl Berry. The text should now exactly match the + paper published in TUGboat 24(2003)545-549. + +2005-11-16 14:49 +0000 [r377] peterlin: + + * ChangeLog, FreeSans.sfd, + FreeSansOblique.sfd: * FreeSansOblique.sfd + - applied the sequence suggested by Werner Lemberg for reducing + redundant points. * FreeSans.sfd - changed U+01A5. + +2005-11-16 13:23 +0000 [r376] moyogo: + + * ChangeLog, FreeSerifItalic.sfd, + FreeSerif.sfd: fixed latin gamma and baby + gamma in Serif; added Ezhes variations to SerifItalic + +2005-11-16 12:50 +0000 [r375] peterlin: + + * ChangeLog, FreeMonoOblique.sfd: + * FreeMonoOblique.sfd - applied the sequence suggested by + Werner Lemberg for reducing redundant points. Added U+F6BE. + +2005-11-16 12:28 +0000 [r374] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd - added U+0255, U+025A, U+025D, U+025F, + U+0262-0263, U+026B-026C, U+0274, U+0276-0277, U+028F, U+0291, + U+029D. + +2005-11-16 10:36 +0000 [r373] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd - replaced Greek letters with references, where + applicable. Added U+03D7, U+03F0-03F2. + +2005-11-16 09:39 +0000 [r372] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd - Made small Greek letters the same height as + Latin and Cyrillic ones and replaced them with references, where + applicable. + +2005-11-15 23:09 +0000 [r371] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd - applied the sequence suggested by Werner + Lemberg for reducing redundant points. Replaced accented glyphs + in the Latin-1 and Latin Extended-A areas with references. Made + capital Greek letters the same height as Latin and Cyrillic ones + and replaced them with references, where applicable. + +2005-11-15 19:21 +0000 [r370] moyogo: + + * ChangeLog, FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: fixed U+026A, to + prevent confusion with U+0069 when accented + +2005-11-15 12:18 +0000 [r369] peterlin: + + * ChangeLog, FreeMonoBold.sfd, + FreeMonoBoldOblique.sfd: * + FreeMonoBold.sfd - corrected Greek tonos (slanted instead of + a vertical line). * FreeMonoBoldOblique.sfd - applied the + sequence suggested by Werner Lemberg for reducing redundant + points. Replaced accented glyphs in the Latin-1 and Latin + Extended-A areas with references. + +2005-11-14 23:20 +0000 [r368] peterlin: + + * ChangeLog, FreeMonoBold.sfd: * + FreeMonoBold.sfd - applied the sequence suggested by Werner + Lemberg for reducing redundant points. Replaced accented glyphs + in the Latin-1 and Latin Extended-A areas with references. + +2005-11-14 22:44 +0000 [r367] peterlin: + + * ChangeLog, FreeMono.sfd: * + FreeMono.sfd - applied the sequence suggested by Werner + Lemberg for reducing redundant points. Replaced accented glyphs + in the Greek and Cyrillic areas with references. + +2005-11-14 13:43 +0000 [r366] peterlin: + + * ChangeLog, + FreeSansBoldOblique.sfd: * + FreeSansBoldOblique.sfd - added U+0180, U+0184, U+0185, + U+0195, U+01A0-01A2, U+01AF-01B0, U+025E, U+026E, U+0292, + U+0294-0296, U+029A, U+02A1, U+2126-2127, U+2190-219B, + U+219E-21A8, U+21C4-21CA, U+2669-266F. MES-1 compliant. + +2005-11-14 12:55 +0000 [r365] peterlin: + + * ChangeLog, + FreeSansBoldOblique.sfd: * + FreeSansBoldOblique.sfd - applied the sequence suggested by + Werner Lemberg for reducing redundant points. Replaced accented + glyphs in the Latin-1 area with references. + +2005-11-14 09:07 +0000 [r364] peterlin: + + * ChangeLog, FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Added 2005 in + copyright info. + +2005-11-13 23:19 +0000 [r363] peterlin: + + * ChangeLog, FreeSansBold.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: * FreeSerif.sfd - + applied the sequence suggested by Werner Lemberg for reducing + redundant points. * FreeSansBold.sfd - added U+219A, U+219B, + U+2669-266F. * FreeSerifBold.sfd - added U+2669-266F. + +2005-11-12 22:31 +0000 [r362] peterlin: + + * ChangeLog, FreeSerifBold.sfd: * + FreeSansBold.sfd - added U+0180, U+0181, U+0183, U+0187, + U+0188, U+018A, U+018C, U+018D, U+0193, U+019C, U+01A0, U+01A1, + U+01AC, U+01AF, U+01B0, U+025C, U+0260, U+026E, U+0277, U+0281, + U+0284. + +2005-11-11 22:50 +0000 [r361] peterlin: + + * ChangeLog, FreeSerifBold.sfd: * + FreeSerifBold.sfd - applied the sequence for reducing + redundant points, suggested by Werner Lemberg. Added U+01A5, + U+02A0, U+2190-219B, U+219E-21A8, U+21B8, U+21B9, U+21C4-21CA, + U+21E4, U+21E5. + +2005-11-11 15:52 +0000 [r360] peterlin: + + * ChangeLog, FreeMono.sfd: * + FreeMono.sfd - corrected Greek letters (using tonos instead + of a vertical line). Added U+026E, U+F6BE. Accented characters in + Latin 1, Latin Extended A and partly Latin Extended B replaced by + references. + +2005-11-11 15:03 +0000 [r359] peterlin: + + * ChangeLog, FreeMono.sfd: * + FreeMono.sfd - applied the sequence for reducing redundant + points, suggested by Werner Lemberg. + +2005-11-11 10:40 +0000 [r358] peterlin: + + * ChangeLog, FreeSansBold.sfd: * + FreeSansBold.sfd - added U+195, U+1A6, U+025E, U+026E, + U+029A, U+0313, U+0314, U+0342, U+0344, U+0345. Started adding + accent anchors. + +2005-11-10 22:56 +0000 [r357] peterlin: + + * ChangeLog, FreeSansBold.sfd: * + FreeSansBold.sfd - replaced glyphs with references in the + Cyrillic area. Removed U+04A8, U+04A9. Added U+04C5, U+04C6, + U+04C9, U+04CA, U+04CD, U+04CE, U+0535, U+053F, U+0546, U+0565, + U+0584, U+0587, U+0589. + +2005-11-10 22:11 +0000 [r356] peterlin: + + * ChangeLog, FreeSansOblique.sfd: + * FreeSansOblique - changed U+0192, U+01A5; added + U+01C0-01C3. + +2005-11-10 17:01 +0000 [r355] moyogo: + + * ChangeLog, FreeSans.sfd, + FreeSansOblique.sfd: added a couple of IPA + characters to FreeSans and FreeSansOblique + +2005-11-10 15:53 +0000 [r354] peterlin: + + * ChangeLog, FreeSansBold.sfd: * + FreeSansBold.sfd - applied the sequence for reducing + redundant points, suggested by Werner Lemberg. Added + automatically constructed accented characters in page 0x1E. + +2005-11-10 13:28 +0000 [r353] peterlin: + + * ChangeLog, FreeSansBold.sfd: * + FreeSansBold.sfd - added U+00A0, U+00AD, U+0531, U+2126, + U+2190-2199, U+219E-21A8, U+21C4-21CA. + +2005-11-10 10:07 +0000 [r352] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd - added U+01A6. Simplified outlines in the + ASCII range. + +2005-11-09 22:42 +0000 [r351] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd - added U+0184, U+0185, U+018D, U+0195, U+0197, + U+019A, U+019B, U+01A0, U+01A1, U+01AC, U+01B5, U+01B6, U+01C0, + U+01C1, U+01C3, U+01F6, U+0294-0296, U+1E9A, U+1EDA-1EE3, + U+1EE8-1EF1. + +2005-11-09 15:41 +0000 [r350] peterlin: + + * ChangeLog, FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd: * + FreeSerifItalic.sfd - changed U+03D5. * + FreeSerifBoldItalic.sfd - changed U+03C6; added U+2070, + U+2075-2079, U+207F, U+2080, U+2085-2089, U+2155-217F. + +2005-11-09 14:32 +0000 [r349] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd - added U+1EA2, U+1EA3, U+1EA8, U+1EA9, U+1EB2, + U+1EB3, U+1EBA, U+1EBB, U+1EC2, U+1EC3, U+1EC8, U+1EC9, U+1ECE, + U+1ECF, U+1ED4, U+1ED5, U+1EE6, U+1EE7, U+1EF6, U+1EF7, U+220A, + U+220B, U+220D, U+2272, U+2273, U+2282, U+2283. + +2005-11-09 12:57 +0000 [r348] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd - added U+0183, U+018C. + +2005-11-07 21:00 +0000 [r347] peterlin: + + * FreeSansBold.sfd: FreeSansBold.sfd - added + U+0562, U+056D. U+0575. + +2005-11-07 11:39 +0000 [r346] peterlin: + + * ChangeLog, FreeMono.sfd: * + FreeSansBold.sfd - added U+0562, U+056D. U+0575. * + FreeMono.sfd - added U+0589. + +2005-11-06 22:20 +0000 [r345] peterlin: + + * ChangeLog, FreeMono.sfd, + FreeMonoBold.sfd: * FreeMono.sfd - added + U+2227, U+2228, U+2262. Corrected U+2299-229D in response to bug + report http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=276121 * + FreeMonoBold.sfd - added U+2010, U+2012 in response to bug + report http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=289032 + Swapped U+03C6 (Greek small letter phi) and U+03D5 (Greek phi + symbol) in order to conform to Unicode standard. Simplified glyph + shapes in ASCII range. Started adding "above" and "below" + anchors. + +2005-11-06 20:47 +0000 [r344] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd - added U+0278, U+03D5, U+2248. Corrected + U+2071, U+222E, U+2242, U+2243 in response to bug reports + http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=276118 + http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=276120 + +2005-11-05 23:18 +0000 [r343] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd - accented letters in Latin Extended-A replaced + by references wherever possible. * FreeSerif.sfd - added + U+0180, U+0181, U+0187, U+0188, U+018A, U+0193, U+019C, U+01A4, + U+01A5, U+01A7, U+01A8, U+01AF, U+01B0, U+026E, U+0270, U+0278, + U+0280, U+0281, U+028B, U+0299, U+029C, U+029F. + +2005-11-03 09:32 +0000 [r342] peterlin: + + * ChangeLog, FreeSansBold.sfd: + FreeSansBold.sfd - cleaner Arabic outlines. Added U+01E4, + U+01E5. + +2005-11-02 23:25 +0000 [r341] peterlin: + + * ChangeLog, FreeSans.sfd, + FreeSansBold.sfd: * FreeSansBold.sfd - + added U+0180, U+0184, U+0185, U+0192, U+019B, U+01A0-01A2, + U+01AF, U+01B0, U+01EE, U+01EF, U+0292, U+0294-0296, U+02A1, + U+0532, U+054C, U+057C, U+222B. Changed U+014B, U+01A5, U+01B4, + U+03BB. * FreeSans.sfd - added U+04C5, U+04C6, U+04C9, + U+04CA, U+04D, U+04CE. + +2005-11-02 09:52 +0000 [r340] peterlin: + + * ChangeLog, FreeMono.sfd: * + FreeMono.sfd - swapped U+03C6 (Greek small letter phi) and + U+03D5 (Greek phi symbol) in order to conform to Unicode + standard. Added U+04C5, U+04C6, U+04C9, U+04CA, U+04D, U+04CE. + +2005-11-02 09:11 +0000 [r339] peterlin: + + * ChangeLog, FreeSansBold.sfd: * + FreeSansBold.sfd - started Armenian; added U+0538, U+0542, + U+0544, U+0548, U+054D, U+054F, U+0550, U+0553, U+0555, U+0561, + U+0563, U+0564, U+0566, U+0568 U+056B, U+056F, U+0570, U+0572, + U+0578, U+057A, U+057D-057F, U+0580, U+0581, U+0583, U+0585. + +2005-11-01 22:12 +0000 [r338] peterlin: + + * ChangeLog, FreeSansBold.sfd, + FreeSansBoldOblique.sfd: * + FreeSansBold.sfd - modified U+019C. * + FreeSansBoldOblique.sfd - added U+00A0, U+00AD, U+019C, + U+01B7, U+01B8, U+0275, U+0278, U+0298, U+2012, U+2015, + U+2070-207F, U+2080-208E, U+2153-217F, U+2213, U+2215. + +2005-10-31 11:37 +0000 [r337] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd - added U+0199, U+01AB, U+0265, U+0282, U+0288, + U+028C-028E, U+0290, U+029E, U+02A0. + +2005-10-28 23:13 +0000 [r336] peterlin: + + * ChangeLog, FreeSerifBold.sfd: + FreeSerifBold.sfd - added U+0199, U+019B, U+01B8, U+01B9, + U+01BE, U+01C0, U+0262, U+0274, U+0278, U+0280, U+028F, U+0298, + U+0299, U+029C, U+029E, U+029F, U+2012, U+2015, U+2016, U+2129, + U+2217. + +2005-10-28 12:20 +0000 [r335] peterlin: + + * ChangeLog, FreeSerifBold.sfd: + FreeSerifBold.sfd - added U+2070, U+2075-2079, U+2080, + U+2085-2089, U+2153-215E, U+2113-2115, U+2119. + +2005-10-28 09:03 +0000 [r334] peterlin: + + * ChangeLog, FreeSerifBold.sfd: + FreeSerifBold.sfd - added U+019E, U+01AB, U+01AD, U+01B1, + U+0256, U+025F, U+0265, U+0269, U+026F, U+0270, U+0279-027F, + U+0282, U+0287, U+0288, U+028C-028E, U+0290. + +2005-10-27 22:26 +0000 [r333] peterlin: + + * ChangeLog, FreeSerifBold.sfd: + FreeSerifBold.sfd - added U+018B, U+018E, U+018F, U+0191, + U+019D, U+01A7, U+01A8, U+01AE, U+0253, U+0266, U+0267, U+026A, + U+0271-0273, U+0283, U+0285. + +2005-10-27 14:28 +0000 [r332] peterlin: + + * ChangeLog, FreeSansBold.sfd: + FreeSansBold.sfd - added subscripts and superscripts + (U+2070-208F), completed fractions (U+2152-215F) and Roman + numerals (U+2160-217F). + +2005-10-27 13:44 +0000 [r331] peterlin: + + * ChangeLog, FreeSerifItalic.sfd: + FreeSerifItalic.sfd - minor cleanup in the superscript range + (U+2070-2079). + +2005-10-27 09:42 +0000 [r330] peterlin: + + * ChangeLog, FreeSans.sfd: + FreeSans.sfd - added U+018D, U+0194, U+019B, U+019C, U+01B5, + U+01B6, U+0295, U+0296, U+029B, U+02A2, U+0472, U+0473, U+2114, + U+2119. + +2005-10-26 21:31 +0000 [r329] peterlin: + + * ChangeLog, FreeSans.sfd: + FreeSans.sfd - Added U+01C0-01C2, U+0276, U+0292, U+0298. + Changed U+0251, U+0294, U+02A1. + +2005-10-26 14:45 +0000 [r328] peterlin: + + * ChangeLog, FreeSansBold.sfd: * + FreeSansBold.sfd - Added U+2010-2012, U+2015, U+2032, U+203C, + U+2047-2049. + +2005-10-26 13:56 +0000 [r327] peterlin: + + * ChangeLog, FreeSansBold.sfd: * + FreeSansBold.sfd - added U+0278, U+0298. Cleaned up outlines + of most Greek letters. + +2005-10-26 12:52 +0000 [r326] peterlin: + + * ChangeLog, FreeMono.sfd: * + FreeMono.sfd - a try to imitate Denis' work on adding anchors + by adding "above" anchor to a couple of basic Latin characters. + +2005-10-26 11:57 +0000 [r325] peterlin: + + * ChangeLog, FreeMono.sfd: + FreeMono.sfd - added U+2011, U+2012, U+203B, U+204A, U+2071, + U+2129, U+2232, U+2233. Changed and/or corrected U+2106, U+211E, + U+2126, U+2127, U+2153-215F, U+2202. + +2005-10-26 08:18 +0000 [r324] peterlin: + + * ChangeLog, FreeSans.sfd: * + FreeSans.sfd - added "above" anchors to selected Cyrillic + characters. Added U+0294, U+02A1. + +2005-10-25 14:29 +0000 [r323] peterlin: + + * ChangeLog, FreeSansOblique.sfd: + FreeSansOblique.sfd - added U+00A0, U+2011-2012, U+2015, + U+2070, U+2071, U+2074-2079, U+2080-2089, U+2126, U+2153-215F, + U+2190-2195, U+2215, U+266A. FreeSansOblique is now MES-1 + compliant. + +2005-10-25 14:00 +0000 [r322] peterlin: + + * ChangeLog, FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMonoBold.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: + FreeSansOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, + FreeSansBoldOblique.sfd, FreeMonoBoldOblique.sfd, + FreeMonoBold.sfd, FreeSerifItalic.sfd, + FreeSerifBold.sfd FreeSerifBoldItalic.sfd - brought in + sync with Valek Filipov's urw-fonts-1.0.7pre41 + +2005-10-25 12:13 +0000 [r321] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd - added U+019E, U+01AD, U+01B8, U+01B9, U+0253, + U+0256, U+0257, U+025C, U+0260, U+0266, U+0267, U+0269, U+026D, + U+0271-0273, U+0279-027D. + +2005-10-25 09:53 +0000 [r320] peterlin: + + * ChangeLog, + FreeSerifBoldItalic.sfd: + FreeSerifBoldItalic.sfd - added U+00A0, U+00AD, U+2010-2012, + U+2015, U+2032-2034, U+203C, U+2047-204A, U+2074, U+2081-2084, + U+2126, U+2153, U+2154, U+215F, U+2215. Corrected positions of + diacritics on U+0200-0217. + +2005-10-25 09:06 +0000 [r319] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd - added U+0191, U+019D, U+01AE, U+027E, U+027F, + U+0283, U+0285. + +2005-10-25 08:12 +0000 [r318] peterlin: + + * ChangeLog, FreeSerifItalic.sfd: + FreeSerifItalic.sfd - added U+00A0, U+00AD, U+2010-2012, + U+2015, U+2126, U+2127, U+2153-215E, U+2160-217F, U+2190-2193, + U+2669-266F. FreeSerifItalic is now MES-1 compliant. + +2005-10-24 19:34 +0000 [r317] moyogo: + + * ChangeLog, FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: added ccmp feature + for i and j to be substituted with dotless i or j when followed + by above diacritic + +2005-10-24 15:01 +0000 [r316] peterlin: + + * ChangeLog, FreeSans.sfd: + FreeSans.sfd - added U+2011, U+2012, U+2015. FreeSans is now + MES-1 conformant. + +2005-10-23 12:29 +0000 [r314-315] moyogo: + + * FreeSans.sfd: added above, below, abovemk and + belowmk anchors for diacritics placement; cleared U+0084 + + * ChangeLog, FreeSans.sfd: added + above, below, abovemk and belowmk anchors for diacritics + placement + +2005-10-21 12:18 +0000 [r313] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd - added U+02B9, U+02BA, U+02CD, U+2017, U+2036, + U+2037, U+203C, U+203E, U+2047-204A. + +2005-10-20 12:04 +0000 [r312] peterlin: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd - added U+00A0, U+00AD, U+0182, U+0189, U+018B, + U+018E, U+018F, U+0192, U+019F, U+01A9, U+01B1, U+01B7, U+01DD, + U+2010-2013, U+2015. FreeSerif is now MES-1 conformant. + +2005-10-20 11:13 +0000 [r311] peterlin: + + * ChangeLog, FreeSerifBold.sfd: * + FreeSerifBold.sfd - added U+0182, U+0189, U+0192, U+019F, + U+01A9, U+01B7, U+01C4-01CC, U+01E0-1E2, U+01F0-01F3, U+F6BE. + Corrected position of diacritics on U+0200-0217. + +2005-10-19 13:03 +0000 [r310] moyogo: + + * ChangeLog, FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: * FreeSerif.sfd - added + U+0268, U+026A, U+0289, U+0292; and anchor "above" to more base + glyphs. * FreeSerifBold.sfd, FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd - added U+0250-0252, U+0258-0259, + U+0261, U+0268, U+026A, U+0279, U+0289 * FreeSerifBold.sfd - + added anchor "above" to marks U+0300-0314, and to base glyphs + (vowels). + +2005-10-18 20:36 +0000 [r309] moyogo: + + * ChangeLog, FreeSerif.sfd: * + FreeSerif.sfd - added anchor "above" to marks U+0300-0314, + and bases vowel of the U+0041-007A range, U+00E6, U+0186, U+0190, + U+0254 and U+025B; fixed Latin-1 Supplement block accented glyphs + to use references. + +2005-10-17 09:25 +0000 [r308] peterlin: + + * ChangeLog, FreeSansBold.sfd: + FreeSansBold.sfd - added U+01B7, U+01B8, U+0275. + +2005-10-16 18:06 +0000 [r307] moyogo: + + * ChangeLog, FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: * FreeSans.sfd, + FreeSansOblique.sfd - added some Latin Extended-B African + letters: U+0181, U+018A, U+0197-0198, U+01A4, U+01AC, U+01B1, + U+01B3-01B4; * FreeSansBold.sfd, FreeSansBoldOblique.sfd + - added Latin Extended-B U+0187, 018E-018F, U+0191, U+0193, + U+0197-0199, U+019D-019F, U+01AB-01AE; correcting width of + non-space Combining Diacrtical Marks; added more glyphs to IPA + Extensions to match non Bold * FreeSansBoldOblique.sfd - + added many accented glyphs + +2005-10-15 20:59 +0000 [r306] moyogo: + + * ChangeLog, FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: * FreeSans.sfd, + FreeSansOblique.sfd - added IPA Extensions + U+0262,U+0274,U+0280-0281, U+0299, U+029F, and Spacing Modifier + Letters U+02C9-02CB; fixed U+0287,029E height to baseline; added + stroke to U+0268 * FreeSansOblique.sfd - fixed skew on U+027F + * FreeSansBold.sfd, FreeSansBoldOblique.sfd - added to + Latin Extended-B U+01A7-01A8, IPA Extensions U+0251-0253, + U+0256-0257, U+0261, U+0265-026A, U+026F-0273, U+0289, + U+028C-028E * FreeSansBoldOblique.sfd - added to Latin + extended-B U+0189, U+01A8, U+01B1, U+0283, U+02C9 and Spacing + Modifiers U+02C9-02CB + +2005-10-14 13:47 +0000 [r304-305] peterlin: + + * ChangeLog: FreeSansBold.sfd - Added a couple + of composite glyphs, mostly in the IPA and Latin Extended B + ranges. + + * FreeSansBold.sfd: Added a couple of composite + glyphs, mostly in the IPA and Latin Extended B ranges. + +2005-10-13 17:58 +0000 [r303] moyogo: + + * ChangeLog, FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: * FreeSans.sfd - + removed overlap and simplified U+0187, 0191, 0193, 01A5, 01AE, + 0260, 0271, 0272, 0273, 027B; fixed diacritics placement on + U+0200-0217; fixed glyph for U+0283 to correct esh without + stroke; added U+025F and fixed U+025F from it; fixed height of + glyph at U+0285; arranged U+027E,027F to make more + distinguishable from U+0072. * FreeSansOblique.sfd - added the + corrected or new glyphs from FreeSans; diacritics on U+200-0217 + will need height readjustements. * FreeSansBold.sfd, + FreeSansBoldOblique - added U+0186, 0190, 0250, 0254, 0258, 0259, + 025B, 025C + +2005-10-13 15:00 +0000 [r302] moyogo: + + * FreeSerifBoldItalic.sfd: fixed open o, U+0254, + that was left unturned + +2005-10-13 12:51 +0000 [r299-301] peterlin: + + * FreeSerifItalic.sfd: Added glyphs + U+222B-U+222F, U+2320, U+2321. Fixed diacritics on U+0200-U+0217. + + * AUTHORS, ChangeLog, + CREDITS: Added Denis Jacquerye. + + * FreeSerif.sfd: Minor changes: U+22A2, U+22A3, + U+22A6, U+23AE. Added U+0250, U+0251, U+0258, U+0259, U+0275. + +2005-10-13 05:58 +0000 [r298] moyogo: + + * ChangeLog, FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: 2005-10-12 Denis Jacquerye + * FreeSerif.sfd - Corrected diacritics + position on U+01D5-01D9,01DB,01EA-01ED,0200-0217 and U+022A. * + FreeSerif.sfd, FreeSerifBold.sfd, + FreeSerifItalic.sfd, FreeSerifBoldItalic.sfd - added + U+0186,0190,0254 and U+025B. + +2005-10-11 15:11 +0000 [r297] peterlin: + + * FreeSerif.sfd: Attempt to correct bug #13370: + INTEGRAL EXTENSION does not align with TOP/BOTTOM HALF INTEGRAL; + added glyph U+23AE. + +2005-10-11 14:33 +0000 [r296] peterlin: + + * FreeSerif.sfd: Fixed bug #13399 (glyphs for + U+0360 and U+0361 swapped). + +2005-05-16 14:33 +0000 [r295] peterlin: + + * ChangeLog, FreeMono.sfd: + Corrected shapes for Cross of Lorraine and Cross of Jerusalem. + +2005-04-07 13:45 +0000 [r294] peterlin: + + * notes (added), + notes/maintenance.txt (added): Some basic notes + how things work with Savannah. + +2005-04-07 13:25 +0000 [r292-293] peterlin: + + * FreeSansBold.sfd: Added some combining + accents, just to test a new version of FontForge. + + * ChangeLog: Minor change to FreeSansBold. + +2003-11-18 16:26 +0000 [r291] peterlin: + + * FreeSans.sfd: Started to apply Josef Segur's + patch. + +2003-10-08 12:22 +0000 [r290] peterlin: + + * AUTHORS, ChangeLog: Added Abbas + Izad. + +2003-10-08 12:18 +0000 [r289] peterlin: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeMonoOblique.sfd: Applied Josef Segur's + corrections from Oct. 5. + +2003-10-04 17:51 +0000 [r288] peterlin: + + * FreeSerif.sfd: A rather naive composition of + Arabic "accented" charachers, based on the work of Abbas Izad. + +2003-10-02 20:54 +0000 [r286-287] peterlin: + + * ChangeLog: Update. + + * FreeSerif.sfd: Abbas Izad's contributed + Arabic/Farsi characters added. + +2003-10-02 20:09 +0000 [r284-285] peterlin: + + * ChangeLog: Update. + + * FreeSansBoldOblique.sfd: Combining chars + corrected (this one escaped the batch). + +2003-10-02 19:55 +0000 [r283] peterlin: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Combining characters + (U+0300 - U+036F) moved left, so that they have negative + horizontal values and zero advance width. + +2003-09-15 09:23 +0000 [r282] peterlin: + + * FreeSerifItalic.sfd: Super- and subscripts + added. Those copied from Free Serif regular (0,5-9) seem a bit + heavier to me than 1-4 designed specially for italic. Might + require a further adjustment. : + ---------------------------------------------------------------------- + +2003-09-15 09:08 +0000 [r281] peterlin: + + * FreeSerifItalic.sfd: Started working on super- + and subscripts. + +2003-09-15 08:36 +0000 [r280] peterlin: + + * FreeSerifBold.sfd: Started working on super- + and subscripts. + +2003-09-12 14:12 +0000 [r279] peterlin: + + * FreeSerif.sfd: Added three Hiragana characters + (U+3094, U+3099 and U+309B) and 6 Katakana characters + (U+30F4-U+30FC). + +2003-09-12 13:53 +0000 [r278] peterlin: + + * FreeSansBold.sfd: Cleared background + characters in Latin Extended-A. Added some automatically + constructed characters in Latin Extended-B. Started with + superscripts and subscripts. + +2003-09-12 12:53 +0000 [r277] peterlin: + + * FreeSans.sfd: Subscript numerals + (U+2080-U+2089) completed. + +2003-09-12 12:40 +0000 [r276] peterlin: + + * FreeSans.sfd: Upgraded Pfaedit to 030827. Two + Hiragana characters (U+3099, U+309B) and 8 Katakana characters + (U+30F7-U+30FE) added. + +2003-06-02 05:34 +0000 [r275] teras: + + * FreeSans.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Basic ancient greek + support + +2003-05-22 19:35 +0000 [r274] teras: + + * FreeSansBold.sfd: Basic ancient greek support + +2003-05-22 18:05 +0000 [r273] teras: + + * FreeSans.sfd: Basic ancient greek support + +2003-05-19 08:18 +0000 [r272] peterlin: + + * ChangeLog: Upload. + +2003-05-19 08:15 +0000 [r271] peterlin: + + * FreeSerifItalic.sfd: Improved control point + positioning on Thai character fongman. Actually, Thai needs some + work here... + +2003-05-19 08:09 +0000 [r270] peterlin: + + * FreeSerif.sfd: Thai letters bo baimai and po + pla swapped; Thai character fongman corrected, all courtesy + Theppitak Karoonboonyanan. + +2003-05-19 07:45 +0000 [r269] peterlin: + + * ChangeLog: Update. + +2003-05-17 00:55 +0000 [r268] teras: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Full support of all ancient + greek glyphs + +2003-05-16 09:41 +0000 [r267] peterlin: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSansBold.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Saved in a new SFD + format with a new version of PfaEdit. + +2003-05-15 12:15 +0000 [r266] peterlin: + + * ChangeLog: Mentioned KerningNumerals.pl. + +2003-05-15 12:07 +0000 [r265] peterlin: + + * ChangeLog: Update. + +2003-05-15 12:04 +0000 [r263-264] peterlin: + + * tools/KerningNumerals.pl: Now doing the new-style + kerning information (KernsSLIF) as well. + + * FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Oops! It's KernsSLIF, + not Kerns. Corrected. + +2003-05-15 11:58 +0000 [r262] peterlin: + + * FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Completed moving + kerning information from ASCII numerals to kerned numerals in the + Adobe corporate use area (U+F6xx). + +2003-05-15 10:32 +0000 [r261] peterlin: + + * FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Automatically moved + kerning information from ASCII numerals with the + KerningNumerals.pl script. + +2003-05-15 10:27 +0000 [r259-260] peterlin: + + * FreeSansBold.sfd: Automatically moved kerning + information with the KerningNumerals.pl script. + + * tools/KerningNumerals.pl (added): A Perl script + for moving kerning information from ASCII numerals (U+0030...) to + characters in the Adobe corporate use area (U+F6xx). + +2003-05-14 12:10 +0000 [r258] peterlin: + + * ChangeLog: Update + +2003-05-14 12:00 +0000 [r257] peterlin: + + * FreeSans.sfd: First approximation of super- + and subscript numerals and vulgar fractions. + +2003-05-14 10:00 +0000 [r256] peterlin: + + * ChangeLog: Update. + +2003-05-14 09:57 +0000 [r255] peterlin: + + * FreeSerif.sfd: Super- and subscript numerals + complete, vulgar fractions completed and redone as references + rather than outlines. + +2003-05-12 16:58 +0000 [r253-254] peterlin: + + * ChangeLog: Update + + * FreeSerif.sfd: Super- and subscripts, vulgar + fractions. + +2003-05-12 16:12 +0000 [r251-252] peterlin: + + * ChangeLog: Update. + + * FreeSerif.sfd: Rounded to integer. + +2003-05-12 15:45 +0000 [r250] peterlin: + + * FreeSerif.sfd: Cleanup of the Cyrillic letters + added on March 27. + +2003-05-09 09:56 +0000 [r249] peterlin: + + * ChangeLog: Update. + +2003-05-09 09:53 +0000 [r248] peterlin: + + * FreeMonoBold.sfd: Additions in the Latin + Extended-B and IPA Extensions range. + +2003-05-08 09:07 +0000 [r246-247] peterlin: + + * ChangeLog: Update. + + * FreeSerifBoldItalic.sfd: Added a couple of + characters to the Latin Extended-B area. + +2003-05-08 08:37 +0000 [r245] peterlin: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: ASCII numerals now + monospaced; kerned numerals moved to Adobe corporate use area + (U+F6xx). + +2003-05-08 07:47 +0000 [r244] peterlin: + + * ChangeLog: Update. + +2003-05-07 15:56 +0000 [r243] peterlin: + + * FreeSans.sfd, + FreeSerif.sfd: Roman numerals. + +2003-05-07 15:13 +0000 [r242] peterlin: + + * FreeSans.sfd: Added characters in the Latin + Extended-B range. + +2003-05-07 13:56 +0000 [r241] peterlin: + + * FreeSans.sfd: Added Greek accents. + +2003-05-07 13:19 +0000 [r240] peterlin: + + * FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Automated addition of + accented characters. + +2003-05-07 12:57 +0000 [r239] peterlin: + + * FreeMonoBoldOblique.sfd: Additions in Latin + Extended-B and Basic Greek. + +2003-05-07 12:13 +0000 [r237-238] peterlin: + + * FreeMonoBoldOblique.sfd: Points rounded to + integer values; glyphs simplified. + + * FreeMonoBoldOblique.sfd: Cleanup (fixed + widths, clockwise/counter-clockwise corrections etc.) + +2003-05-07 11:53 +0000 [r236] peterlin: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd: Points rounded to integer + values; outlines simplified. + +2003-05-07 11:48 +0000 [r234-235] peterlin: + + * FreeSans.sfd: Rounded to integer and + simplified. + + * FreeSans.sfd: Cleanup (open paths fixed). + +2003-05-07 11:40 +0000 [r232-233] peterlin: + + * FreeMonoOblique.sfd: Kerning pairs removed. + + * FreeMonoOblique.sfd: Cleanup (path direction + etc.) + +2003-05-07 10:16 +0000 [r231] peterlin: + + * FreeMonoBold.sfd: Cleanup + (clockwise/counter-clockwise direction corrected). + +2003-05-07 10:01 +0000 [r230] peterlin: + + * FreeMono.sfd: Major cleanup (fixed widths, + open paths, clockwise/counter-clockwise directions etc.). + +2003-05-06 15:54 +0000 [r229] peterlin: + + * FreeSans.sfd: Proportional numerals don't + really have to be outlines - references are enough. Caught two + remaining numeral kerns, ",1" and ".1". Free Sans is now clean. + +2003-05-06 15:39 +0000 [r228] peterlin: + + * FreeSansBold.sfd: ASCII numerals now + monospaced; kerned numerals moved to Adobe corporate use area + (U+F6xx). Not finished yet - left kerns are done, right only up + to letter C! + +2003-05-06 14:39 +0000 [r227] peterlin: + + * FreeSans.sfd: ASCII numerals now monospaced; + kerned numerals moved to Adobe corporate use area (uniF6xx). + +2003-05-06 13:09 +0000 [r226] peterlin: + + * tools/OS2UnicodeRange (added): A simple script to + display OS/2 Unicode range table in TrueType fonts. + +2003-05-06 11:53 +0000 [r225] peterlin: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Updated years of FSF + copyleft. + +2003-05-06 11:36 +0000 [r224] peterlin: + + * FreeMonoBold.sfd: Minor changes in Latin + Extended-B and IPA Extensions. + +2003-04-02 15:54 +0000 [r223] peterlin: + + * papers (added), papers/eurotex2003 + (added), papers/eurotex2003/eurotex2003.cls + (added), papers/eurotex2003/freefont.bib (added), + papers/eurotex2003/freefont.tex (added): Paper for + the EuroTeX 2003 conference, ENST Bretagne, Brest, June 24-27. + +2003-03-27 08:40 +0000 [r222] peterlin: + + * AUTHORS, ChangeLog, + CREDITS: Update. + +2003-03-27 08:13 +0000 [r221] peterlin: + + * FreeSerif.sfd: Cyrillic and Cyrillic + Supplement blocks brought to conformance with Unicode 3.2, + courtesy Daniel Shurovich Chirkov. + +2003-03-19 17:31 +0000 [r220] peterlin: + + * FreeSansOblique.sfd: Synchronized germandbls + (U+00DF) with the one in FreeSans. + +2003-03-19 17:17 +0000 [r219] peterlin: + + * FreeSans.sfd: Made somewhat wider germandbls + (U+00DF). Walter Schmidt brought up this problem with URW fonts + in the tex-fonts list. + +2003-03-18 16:38 +0000 [r218] peterlin: + + * FreeSans.sfd: Added Sinhala glyphs from the + Tipitaka project , recoded to Unicode by + Noah Levitt. + +2003-02-27 13:56 +0000 [r217] peterlin: + + * FreeSansBold.sfd: Somewhat "cleaner" glyphs in + the Greek part. + +2003-02-24 12:49 +0000 [r216] peterlin: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: All numerals set to + equal width (556 points). + +2003-02-21 16:58 +0000 [r215] peterlin: + + * FreeSans.sfd: A nicer capital schwa. + +2003-02-19 09:35 +0000 [r213-214] peterlin: + + * ChangeLog: Update. + + * FreeSans.sfd: Minor changes on mathematics + operators. + +2003-02-18 16:57 +0000 [r212] peterlin: + + * FreeSans.sfd: Added two Tamil signs (virama + and au length mark). + +2003-02-18 11:35 +0000 [r211] peterlin: + + * ChangeLog: Update. + +2003-02-18 11:28 +0000 [r210] peterlin: + + * FreeMono.sfd: Integral signs more in the + spirit of Courier design. + +2003-02-18 11:12 +0000 [r209] peterlin: + + * FreeMono.sfd: Cleaned out some backgrounds. + +2003-02-05 15:46 +0000 [r207-208] peterlin: + + * ChangeLog: Update. + + * FreeSans.sfd: Added a couple of glyphs in the + IPA and African Latin ranges. + +2003-01-30 15:55 +0000 [r206] peterlin: + + * ChangeLog: Update. + +2003-01-30 15:35 +0000 [r205] peterlin: + + * FreeSansBold.sfd, + FreeSansBoldOblique.sfd: Corrected Maltese + hbar and Hbar. + +2003-01-30 14:54 +0000 [r204] peterlin: + + * FreeSans.sfd, + FreeSansOblique.sfd, + FreeMonoBoldOblique.sfd: Corrected Maltese + hbar and Hbar. + +2003-01-30 14:43 +0000 [r203] peterlin: + + * FreeMonoBold.sfd: Corrected Maltese Hbar. + +2003-01-28 16:31 +0000 [r202] peterlin: + + * FreeSerifItalic.sfd: Corrected Maltese hbar. + +2002-12-19 18:31 +0000 [r201] peterlin: + + * FreeSans.sfd: Cleaner Tamil outlines. + +2002-12-18 17:38 +0000 [r199-200] peterlin: + + * ChangeLog: Update. + + * tools/ConvertFont (added): Convert fonts from + PfaEdit's native format to TrueType format. + +2002-12-18 17:17 +0000 [r198] peterlin: + + * ChangeLog: Update. + +2002-12-18 10:43 +0000 [r197] peterlin: + + * FreeSans.sfd: Added (almost complete) Tamil + Unicode range. + +2002-12-17 16:44 +0000 [r196] peterlin: + + * FreeSans.sfd: Started adding Kannada glyphs + from Akruti fonts. + +2002-12-17 15:56 +0000 [r195] peterlin: + + * AUTHORS, ChangeLog, + CREDITS: Added M.S. Sridhar and Akruti fonts. + +2002-12-17 15:42 +0000 [r194] peterlin: + + * FreeSans.sfd: Added some Devanagari and + Gujarati glyphs from the Akruti fonts. + +2002-12-17 10:08 +0000 [r193] peterlin: + + * ChangeLog, CREDITS: Correct + spelling of Culmus project. + +2002-12-12 15:09 +0000 [r192] peterlin: + + * INSTALL (added): Installation notes for the Free + UCS outline fonts. + +2002-12-12 08:57 +0000 [r191] peterlin: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Checked in as v1.1. + +2002-12-12 08:48 +0000 [r190] peterlin: + + * FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Checked in as v1.1. + +2002-12-06 15:13 +0000 [r189] peterlin: + + * FreeMono.sfd: Minor correction on U+230F. + +2002-12-06 15:00 +0000 [r188] peterlin: + + * FreeMono.sfd: Various additions in the + U+2000-U+27FF area, courtesy Vyacheslav Dikonov. + +2002-12-06 14:20 +0000 [r187] peterlin: + + * CREDITS: Added Vyacheslav Dikonov. + +2002-12-06 14:08 +0000 [r186] peterlin: + + * AUTHORS: Added Vyacheslav Dikonov. + +2002-12-06 13:59 +0000 [r185] peterlin: + + * FreeMono.sfd: Added Runes (U+16A0...), + courtesy Vyacheslav Dikonov. + +2002-12-06 13:43 +0000 [r184] peterlin: + + * ChangeLog: Update. + +2002-12-06 13:40 +0000 [r182-183] peterlin: + + * FreeSans.sfd: Added Unicode Syriac glyphs, + courtesy Vyacheslav Dikonov. + + * FreeMono.sfd: Added Braille glyphs, courtesy + Vyacheslav Dikonov. + +2002-11-28 10:10 +0000 [r181] peterlin: + + * README: Resubmitted using -r1.1. + +2002-11-28 10:02 +0000 [r180] peterlin: + + * AUTHORS: Resubmitted using -r 1.1 + +2002-11-28 09:57 +0000 [r179] peterlin: + + * AUTHORS: Re-submitted using CVS 1.11.2. + +2002-11-28 09:41 +0000 [r178] peterlin: + + * README: Updated text reflecting that Microsoft Web + fonts are no longer freely available. + +2002-10-16 11:02 +0000 [r177] peterlin: + + * FreeSerif.sfd: Corrected glyph 0x0446, thanks + to Reiji SUZUKI, who spotted it. + +2002-10-11 16:40 +0000 [r176] peterlin: + + * ChangeLog: Update. + +2002-10-11 16:29 +0000 [r175] peterlin: + + * ChangeLog: Update. + +2002-10-11 15:46 +0000 [r174] peterlin: + + * FreeSans.sfd: Added a handful of kern pairs + beyond Latin-1. + +2002-10-11 14:14 +0000 [r173] peterlin: + + * FreeSerif.sfd: Adding kern pairs manually also + cleans the empty glyph slots (and makes the file unreadable by + PfaEdit). Reintroduced them. + +2002-10-11 14:01 +0000 [r172] peterlin: + + * FreeSerif.sfd: Added about one dozen kern + pairs as a test. + +2002-10-11 13:44 +0000 [r171] peterlin: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Patch from Sept 23 + introduced core dumps, as PfaEdit dutifully cleared all the empty + glyph slots along the way, which messed up its internal workings. + Re-introduced all the empty glyph slots. + +2002-09-23 16:00 +0000 [r170] peterlin: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: At some point I lost the + kerning information. First attempt to reconstruct it from AFM + files. + +2002-09-11 14:39 +0000 [r169] peterlin: + + * FreeMono.sfd: Swapped incorrect "dialytika and + oxia" and "dialytika and varia". Made "tonos" equal to "oxia". + Started doing base Greek with new tonos. + +2002-09-11 11:31 +0000 [r168] peterlin: + + * FreeMonoBold.sfd: Hebrew parts in sync with + Culmus 0.6. + +2002-09-11 11:26 +0000 [r167] peterlin: + + * ChangeLog: Update. + +2002-09-11 09:53 +0000 [r166] peterlin: + + * FreeMono.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Hebrew parts in sync + with Culmus 0.6. + +2002-09-11 09:16 +0000 [r165] peterlin: + + * ChangeLog: Update. + +2002-09-11 09:13 +0000 [r164] peterlin: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: * Added Danilo + Segan's Serbian Cyrillic glyphs. * Updated Hebrew part to comply + with Culmus 0.6. + +2002-09-10 08:21 +0000 [r163] peterlin: + + * FreeSans.sfd: Started working on IPA range. + +2002-09-09 16:01 +0000 [r161-162] peterlin: + + * ChangeLog: Update. + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Updated Cyrillic part + to match Filippov's 1.0.7pre14. + +2002-09-09 15:39 +0000 [r160] peterlin: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Updated Cyrillic part + to match Filippov's 1.0.7pre14. + +2002-09-09 14:33 +0000 [r158-159] peterlin: + + * ChangeLog: Update. + + * FreeSansOblique.sfd: Added Stepanyan's + Armenian glyphs from FreeSans, skewed for 12 degrees. + +2002-09-06 14:16 +0000 [r157] peterlin: + + * AUTHORS, CREDITS: Changed @ in + email addresses to " AT ". + +2002-09-06 13:43 +0000 [r155-156] peterlin: + + * ChangeLog: A minor correction. + + * ChangeLog: Update. + +2002-09-06 13:18 +0000 [r154] peterlin: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Added Maxim Iorsh's + Hebrew glyphs (still considered experimental by their author, but + much better than previous ones). + +2002-08-28 15:31 +0000 [r152-153] peterlin: + + * AUTHORS, CREDITS: Added Maxim + Iorsh. + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Added Maxim Iorsh's + Hebrew glyphs. + +2002-07-26 10:21 +0000 [r151] peterlin: + + * ChangeLog: Update. + +2002-07-26 10:17 +0000 [r150] peterlin: + + * FreeMono.sfd: Some minor changes. + +2002-06-11 19:28 +0000 [r148-149] peterlin: + + * ChangeLog: Update. + + * FreeMono.sfd: Applied Michalis Kabrianis's + patch concerning perispomeni in Greek politoniko. + +2002-05-23 11:25 +0000 [r147] peterlin: + + * ChangeLog: Update. + +2002-05-23 11:20 +0000 [r146] peterlin: + + * FreeMono.sfd: Applied Michalis Kabrianis's + patch which corrects psili. Also some working variants of + characters in the IPA range. + +2002-05-16 14:44 +0000 [r145] peterlin: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoBoldOblique.sfd: Added LangName + information. + +2002-05-15 13:23 +0000 [r144] peterlin: + + * ChangeLog: Update. + +2002-05-15 13:14 +0000 [r143] peterlin: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Deleted explicit ".notdef" + characters. + +2002-05-14 08:59 +0000 [r142] peterlin: + + * FreeSansBoldOblique.sfd: Filled-in the missing + TTFWidth and TTFWeight values. + +2002-05-14 08:51 +0000 [r141] peterlin: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Correctly formed + Panose and LineGap lines. + +2002-05-09 18:13 +0000 [r140] peterlin: + + * ChangeLog: Update. + +2002-05-09 17:42 +0000 [r139] peterlin: + + * FreeSans.sfd: Added some more composite + glyphs. Croatian ligatures better kerned. + +2002-05-09 17:10 +0000 [r138] peterlin: + + * FreeSans.sfd: Added diacritics. Added glyphs + to the Latin Extenede-B area. + +2002-05-07 16:13 +0000 [r137] peterlin: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Updated Panose and LangName + information in the TTF header. + +2002-05-07 15:40 +0000 [r136] peterlin: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Updated Panose and + LangName information in the TTF header. + +2002-05-07 15:28 +0000 [r135] peterlin: + + * FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd: Updating Panose and + LangName information in the font header. + +2002-04-30 12:27 +0000 [r134] peterlin: + + * ChangeLog: Update + +2002-04-30 11:21 +0000 [r133] peterlin: + + * FreeMonoBold.sfd: Several minor changes (lower + carons etc.) + +2002-04-30 10:14 +0000 [r132] peterlin: + + * FreeMonoBold.sfd: Working on Greek small + letters. + +2002-04-29 19:44 +0000 [r131] peterlin: + + * ChangeLog: Update. + +2002-04-29 19:38 +0000 [r129-130] peterlin: + + * FreeMonoBoldOblique.sfd: Started adding Greek. + + * FreeMono.sfd, + FreeMonoBold.sfd: Harmonizing Greek with + Latin. Done with capitals. + +2002-04-29 18:08 +0000 [r128] peterlin: + + * FreeMonoBold.sfd: Added glyphs in the + Geometrical Shapes and Miscellaneous Symbols area. + +2002-04-29 17:35 +0000 [r127] peterlin: + + * FreeMono.sfd: Added one glyph to the + Geometrical Shapes area, which is now completed; added three + glyphs to the Miscellaneous Symbols area. + +2002-04-29 10:34 +0000 [r126] peterlin: + + * FreeMono.sfd: Erased explicit ".notdef" + character (U+0000). Hopefully this will now stop getting PfaEdit + confused about the "post" table. + +2002-04-26 15:41 +0000 [r124-125] peterlin: + + * ChangeLog: Update. + + * FreeSans.sfd: Adjusted accent positions on + several glyphs in the Latin Extended-A area. + +2002-04-25 16:20 +0000 [r121-123] peterlin: + + * ChangeLog: Update. + + * FreeMono.sfd: Minor corrections in the Box + Drawing area. + + * FreeMonoBold.sfd: Box Drawing area completed. + Added some glyphs in the Geometrical Shapes area. + +2002-04-24 16:09 +0000 [r120] peterlin: + + * ChangeLog: Update. + +2002-04-24 16:06 +0000 [r119] peterlin: + + * FreeMono.sfd: BoxDrawing area completed. + +2002-04-23 15:22 +0000 [r118] peterlin: + + * FreeMonoBold.sfd: Added glyphs in the General + Punctuation area. + +2002-04-23 15:04 +0000 [r117] peterlin: + + * FreeMono.sfd, + FreeMonoBold.sfd: Added glyphs to the Box + Drawing area. + +2002-04-23 13:52 +0000 [r115-116] peterlin: + + * ChangeLog: Update. + + * tools/WGL4.lst: Correction. Added missing + characters 02DC:SMALL TILDE, F001:LATIN SMALL LIGATURE FI and + F002:LATIN SMALL LIGATURE FL (the latter two belong to private + use area). Left 00A0:NO-BREAK SPACE in place, although some specs + don't list it. Total 653 characters on the list (WGL4 is supposed + to have 652 coded characters). + +2002-04-22 21:27 +0000 [r114] peterlin: + + * FreeMonoBold.sfd: Adding new glyphs to the + Latin Extended-B and IPA Extensions ranges. + +2002-04-22 15:05 +0000 [r112-113] peterlin: + + * ChangeLog: *** empty log message *** + + * FreeMono.sfd, + FreeMonoBold.sfd: Working on Latin Extended-B + and Greek. + +2002-04-19 15:58 +0000 [r110-111] peterlin: + + * FreeSerif.sfd: Somewhat cleaner chess figures. + + * ChangeLog: *** empty log message *** + +2002-04-19 14:57 +0000 [r109] peterlin: + + * ChangeLog: Update. + +2002-04-19 14:23 +0000 [r108] peterlin: + + * tools/MES-2.txt, tools/MES-2.lst: + Corrected list (it is not 203C-203E, it is 203C and 203E). + +2002-04-19 09:24 +0000 [r107] peterlin: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSans.sfd, + FreeSansBold.sfd, + FreeSansOblique.sfd, + FreeSansBoldOblique.sfd, + FreeMono.sfd, + FreeSerif.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeSerifBold.sfd, + FreeMonoBoldOblique.sfd: Changed "Family Name" + from Free to FreeSerif, FreeSans and FreeMono, as appropriate. + Changed Font Modifiers from MonoBold etc. to Bold, Italic, + Oblique, BoldOblique and BoldItalic. + +2002-04-18 09:38 +0000 [r106] peterlin: + + * FreeMono.sfd, + FreeMonoBold.sfd, + FreeMonoOblique.sfd, + FreeMonoBoldOblique.sfd: Corrected metrics; + now all character widths are set to 600. + +2002-04-17 18:49 +0000 [r104-105] peterlin: + + * ChangeLog: Added forgotten info on box drawing + characters in FreeSerif. + + * ChangeLog: *** empty log message *** + +2002-04-17 17:37 +0000 [r103] peterlin: + + * FreeSerif.sfd: Box drawing characters + corrected. Now they extend both ascender and descender height. + +2002-04-17 15:45 +0000 [r102] peterlin: + + * FreeMonoBold.sfd: Continued working on Greek. + +2002-04-17 14:53 +0000 [r101] peterlin: + + * FreeMonoBold.sfd: Added some more Box Drawing + characters. + +2002-04-17 11:56 +0000 [r100] peterlin: + + * FreeMonoBold.sfd: Added some Box Drawing + characters. + +2002-04-16 15:36 +0000 [r99] peterlin: + + * ChangeLog: *** empty log message *** + +2002-04-16 15:30 +0000 [r98] peterlin: + + * FreeMono.sfd: Added a couple of characters in + the Miscellaneous Symbols area. + +2002-04-16 14:28 +0000 [r97] peterlin: + + * FreeMonoBoldOblique.sfd: Added superscripts, + subscripts, vulgar fractions and a couple other characters needed + to make font MES-1 compliant. + +2002-04-16 13:58 +0000 [r96] peterlin: + + * FreeMonoBold.sfd: Added some characters, + mostly in the Miscellaneous Symbols area. FreeMonoBold now + complies with MES-1. + +2002-04-16 10:16 +0000 [r95] peterlin: + + * ChangeLog: Update. + +2002-04-16 10:13 +0000 [r94] peterlin: + + * FreeMonoBold.sfd: Started harmonizing Greek + letters with Latin and Cyrillic. + +2002-04-16 09:28 +0000 [r93] peterlin: + + * FreeMonoBold.sfd: Added subscripts, + superscripts and vulgar fractions. + +2002-04-15 13:42 +0000 [r92] peterlin: + + * ChangeLog: Update + +2002-04-12 15:59 +0000 [r91] peterlin: + + * AUTHORS, CREDITS: Added Beyene, + Kudlek, Kummer and Metzinger from the Theoretical Foundations of + Computer Science, University of Hamburg, the authors of the set + of Ethiopic metafonts. + +2002-04-12 15:42 +0000 [r90] peterlin: + + * ChangeLog: Update. + +2002-04-12 15:38 +0000 [r89] peterlin: + + * FreeSerif.sfd: Added Ethiopian glyphs, + converted from the Metafont sources from TGI, Universität Hamburg + (authors Berhanu Beyene, Prof. Dr. Manfred Kudlek, Olaf Kummer, + and Jochen Metzinger) using Szabo's TeXtrace and retouched using + PfaEdit. Ethiopian metafonts are released under GNU GPL, + http://www.informatik.uni-hamburg.de/TGI/mitarbeiter/wimis/kummer/ethiop_eng.html + +2002-04-12 15:30 +0000 [r88] peterlin: + + * FreeMonoBold.sfd: Added 40 characters, mostly + in the Latin Extended-B and IPA Extensions areas. + +2002-04-11 19:56 +0000 [r86-87] peterlin: + + * ChangeLog: *** empty log message *** + + * FreeMono.sfd: Added a handful of characters in + the Latin Extended-B, Currency Symbols and Miscellaneous Symbols + areas. + +2002-04-11 09:57 +0000 [r85] peterlin: + + * FreeMono.sfd: Added three glyphs to the IPA + Extensions area. + +2002-04-09 07:12 +0000 [r83-84] peterlin: + + * ChangeLog: *** empty log message *** + + * FreeMono.sfd: Corrected accent positioning in + the Extended Greek area; adding a couple of glyphs here and + there. 20 characters short of MES-2 conformance. + +2002-04-08 16:57 +0000 [r82] peterlin: + + * AUTHORS, CREDITS: Added Jeroen + Hellingman and Thomas Ridgeway, the authors of Malayalam, Oriya + and Tamil glyphs sets. + +2002-04-08 16:39 +0000 [r81] peterlin: + + * ChangeLog: *** empty log message *** + +2002-04-08 16:33 +0000 [r80] peterlin: + + * FreeMono.sfd: Added some arrows and Greek + politoniko. + +2002-04-05 15:04 +0000 [r79] peterlin: + + * FreeMono.sfd, + FreeMonoOblique.sfd: Modern Non-Russian + Cyrillic mostly completed. + +2002-04-05 10:37 +0000 [r78] peterlin: + + * FreeSerif.sfd: Added Thomas Ridgeway's Tamil + fonts, partly edited. + +2002-04-04 16:15 +0000 [r77] peterlin: + + * ChangeLog: Update. + +2002-04-04 16:12 +0000 [r76] peterlin: + + * FreeMonoBold.sfd: Started working on the + non-Russian Cyrillic glyphs. Corrected Serbian letters dje, lje, + nje and tshe. + +2002-04-04 10:44 +0000 [r75] peterlin: + + * FreeMono.sfd: Minor modifications in the + non-Russian Cyrillic area. + +2002-04-04 10:35 +0000 [r74] peterlin: + + * FreeMono.sfd, + FreeMonoOblique.sfd: Armenian capital + characters matching in case Latin, Cyrillic and Greek. + +2002-04-04 09:57 +0000 [r73] peterlin: + + * FreeMonoOblique.sfd: Serbian Cyrillic glyphs + synchronized with FreeMono. + +2002-04-04 09:36 +0000 [r71-72] peterlin: + + * ChangeLog: Update. + + * FreeMono.sfd: Serbian cyrillic characters dje + and tshe corrected. + +2002-04-03 16:34 +0000 [r70] peterlin: + + * ChangeLog: *** empty log message *** + +2002-04-03 16:29 +0000 [r69] peterlin: + + * FreeMono.sfd: Armenian characters added. + +2002-03-28 15:32 +0000 [r67-68] peterlin: + + * ChangeLog: Update. + + * FreeMono.sfd: Added some mathematical symbols. + +2002-03-26 21:00 +0000 [r66] peterlin: + + * ChangeLog: Update. + +2002-03-26 20:56 +0000 [r65] peterlin: + + * FreeSans.sfd: Added H.S. Pannu's Gurmukhi. It + actually fits in here much better than it fits FreeSerif. I'll + have to look for a Gurmukhi font with modulated stroke for + FreeSerif. + +2002-03-26 20:45 +0000 [r64] peterlin: + + * FreeSerif.sfd: A more stylish barred H. + +2002-03-26 20:35 +0000 [r63] peterlin: + + * ChangeLog: Update. + +2002-03-26 20:29 +0000 [r62] peterlin: + + * FreeMono.sfd: Minor changes in Greek; added + some mathematical symbols. + +2002-03-26 16:20 +0000 [r61] peterlin: + + * FreeMono.sfd: Completed vulgar fractions. + +2002-03-26 16:00 +0000 [r60] peterlin: + + * FreeSerif.sfd: Added dotted Hebrew letters. + +2002-03-26 14:40 +0000 [r58-59] peterlin: + + * FreeSerifItalic.sfd: Took Hebrew characters + from FreeSerif and slanted them for 15.5 degrees. + + * FreeSerif.sfd: Telugu letters optimized + somehow. Still too small, though. + +2002-03-26 14:15 +0000 [r57] peterlin: + + * AUTHORS, CREDITS: Corrected Unicode + ranges for Gurmukhi and Gujarati. + +2002-03-26 09:58 +0000 [r55-56] peterlin: + + * ChangeLog: Update. + + * FreeMonoBold.sfd: Added characters to the + Latin Extended-B and IPA Extensions area. + +2002-03-25 20:00 +0000 [r53-54] peterlin: + + * ChangeLog: Update. + + * FreeMonoBold.sfd: Started adding Latin + Extended-B and IPA Extensions. + +2002-03-25 19:28 +0000 [r51-52] peterlin: + + * ChangeLog: Update. + + * FreeMono.sfd: Minor cosmetic changes; cleaning + up Greek (removing redundant control points), added some + non-European Cyrillic glyphs as a test. + +2002-03-22 11:31 +0000 [r50] peterlin: + + * FreeMono.sfd: Some minor modifications; + letters in Latin Extended-B area "welded" together. + +2002-03-20 20:47 +0000 [r49] peterlin: + + * FreeMono.sfd, + FreeMonoOblique.sfd: Numerous glyphs added in + the Latin Extended-B, IPA Extensions and Number Forms areas. + MES-1 compliant! + +2002-03-20 12:46 +0000 [r48] peterlin: + + * ChangeLog: Update. + +2002-03-19 14:22 +0000 [r47] peterlin: + + * ChangeLog: Update. + +2002-03-19 13:12 +0000 [r46] peterlin: + + * FreeMonoOblique.sfd: Added characters in Latin + Extended-B and IPA Extensions area. Now mostly synchronized with + FreeMono. + +2002-03-18 17:56 +0000 [r45] peterlin: + + * FreeMono.sfd: Added some more IPA characters. + +2002-03-18 14:33 +0000 [r44] peterlin: + + * ChangeLog: Update. + +2002-03-18 12:21 +0000 [r43] peterlin: + + * FreeMono.sfd: Added some more characters, in + particular in the Latin Extended-B and IPA Extensions areas, to a + total of 1424 chars. + +2002-03-15 19:08 +0000 [r41-42] peterlin: + + * FreeMono.sfd: Added a dozen or two new + characters, in particular in the IPA Extensions area. + + * ChangeLog: Update. + +2002-03-15 13:57 +0000 [r40] peterlin: + + * ChangeLog: Update. + +2002-03-14 09:15 +0000 [r38-39] peterlin: + + * ChangeLog: Update. + + * FreeMono.sfd: Added three smiley characters. + +2002-03-10 18:16 +0000 [r37] peterlin: + + * AUTHORS, ChangeLog, + CREDITS: Due credit to the original author of + Gurmukhi font, Hardip Singh Pannu. + +2002-03-10 18:07 +0000 [r36] peterlin: + + * FreeSerif.sfd: Anshuman Pandey has only + converted Gurmukhi from TrueType to Metafont; the original author + of Gurkmukhi font is Hardip Singh Pannu + . Got the permission + from him to include the Gurmukhi glyph set. + +2002-03-08 12:17 +0000 [r34-35] peterlin: + + * ChangeLog: Update + + * FreeSerif.sfd: Added some more glyphs in the + Mathematical Symbols area. + +2002-03-06 20:48 +0000 [r32-33] peterlin: + + * ChangeLog: Update. + + * FreeSerif.sfd: Basic Gurmukhi (Unicode range + without ligatures). I believe the author is Anshuman Pandey + , found in CTAN + . + +2002-03-06 20:13 +0000 [r31] peterlin: + + * ChangeLog: Update. + +2002-03-06 18:07 +0000 [r30] peterlin: + + * FreeMono.sfd: Silly me. Glyphs in Box Drawing + and Block Elements areas extend through ascender *and descender* + width. Corrected. + +2002-03-06 15:10 +0000 [r29] peterlin: + + * FreeMono.sfd, + FreeMonoOblique.sfd: Added musical glyphs in + the Miscellaneous Symbols area, linked "non-breaking" space to + space, "soft hyphen" to hyphen-minus. Now we are 4 glyphs short + of MES-1 conformance. + +2002-03-05 19:50 +0000 [r28] peterlin: + + * ChangeLog: Update. + +2002-03-05 19:47 +0000 [r27] peterlin: + + * tools/WGL4.lst (added): Microsoft Windows Glyph + List 4.0 (WGL4). I seem to have lost 2 characters - there ought + to be 652, and I have only 650. + +2002-03-05 19:20 +0000 [r25-26] peterlin: + + * ChangeLog: Update. + + * tools/LigatureList.pl (added): A Perl script, + which lists the GSUB list (ligature list) of a OpenType font. + Requires George Williams' showttf utility, available on + . + +2002-03-05 19:12 +0000 [r24] peterlin: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerifBold.sfd: An auxilliary substitute + for Hebrew glyphs added. + +2002-03-04 17:38 +0000 [r23] peterlin: + + * ChangeLog: Update + +2002-03-04 17:35 +0000 [r22] peterlin: + + * FreeSerif.sfd: Added some more glyphs in the + Mathematical Operators area. + +2002-03-04 15:24 +0000 [r21] peterlin: + + * AUTHORS, CREDITS: Added Frans + Velthuis and Anshuman Pandey + . + +2002-03-04 14:54 +0000 [r20] peterlin: + + * ChangeLog: Update + +2002-03-04 14:44 +0000 [r19] peterlin: + + * FreeSerif.sfd: Fragments of Harsh Kumar's + Devanagari font substituted by Frans Velthuis' and Anshuman + Pandey's devanagari metafont, converted to PFB by Peter Szabo's + TeXtrace. Right now only Unicode part without ligatures is made + (though they are present in original font). + +2002-02-28 19:14 +0000 [r18] peterlin: + + * ChangeLog: Update ChangeLog. + +2002-02-28 19:05 +0000 [r17] peterlin: + + * FreeSerif.sfd: Added some more glyphs to the + Miscellaneous Symbols page (0x26). + +2002-02-28 18:33 +0000 [r16] peterlin: + + * AUTHORS, CREDITS: Added Prasad A. + Chodavarapu, the author of Tikkana, a Telugu font available under + the GNU General Public License. + +2002-02-28 18:00 +0000 [r15] peterlin: + + * FreeSerif.sfd: Added some Telugu glyphs to + page 0x0C, courtesy Prasad A. Chodavarapu + + +2002-02-28 16:49 +0000 [r14] peterlin: + + * AUTHORS, CREDITS: Prof. Venkatesh + (Venky) Hariharan supplied me with an email address for Harsh + Kumar. + +2002-02-28 14:51 +0000 [r13] peterlin: + + * ChangeLog (added): A log of changes to project + files. + +2002-02-26 18:38 +0000 [r12] peterlin: + + * AUTHORS, CREDITS: Mohamed Ishan's + email address corrected to his preferred one. + +2002-02-25 19:26 +0000 [r11] peterlin: + + * FreeMono.sfd: Added some more glyphs, in + particular in the Mathematical Operators section. Changed + FamilyName to Free, FontName to FreeMono, and Full name to "Free + Monospaced". + +2002-02-25 12:43 +0000 [r10] peterlin: + + * FreeSerif.sfd: Added a couple of glyphs in + Mathematics Operators. + +2002-02-20 21:08 +0000 [r9] peterlin: + + * AUTHORS, CREDITS: New coauthors + added: Mohamed Ishan, Harsh Kumar and Sushant Kumar Dash. + +2002-02-20 20:21 +0000 [r8] peterlin: + + * FreeSerifItalic.sfd, + FreeSerifBoldItalic.sfd, + FreeSerif.sfd, + FreeSerifBold.sfd: Glyphs originating from the + old Omega system removed. + +2002-02-20 20:06 +0000 [r7] peterlin: + + * FreeSerifItalic.sfd (added), + FreeSerifBoldItalic.sfd (added), + FreeSerif.sfd (added), + FreeSerifBold.sfd (added): Proportional ISO + 10646 fonts with modulated stroke. + +2002-02-20 18:46 +0000 [r6] peterlin: + + * FreeSans.sfd: Added an incomplete set of Oriya + characters, courtesy Sushant Dash . + +2002-02-20 16:37 +0000 [r5] peterlin: + + * tools/MES-3B.lst (added), tools + (added), tools/MES-1.txt (added), + tools/MES-2.txt (added), + tools/CheckConformance.pl (added), + tools/MES-1.lst (added), + tools/MES-2.lst (added), + tools/MES-3B.txt (added), + tools/mes-list-expand.pl (added): Tools for + checking conformance with coded character sets. + +2002-02-20 13:52 +0000 [r3-4] peterlin: + + * AUTHORS (added), CREDITS (added), + README (added): Free UCS Scalable Fonts + + * FreeSans.sfd (added), + FreeSansBold.sfd (added), + FreeSansOblique.sfd (added), + FreeSansBoldOblique.sfd (added): Proportional + ISO 10646 fonts with uniform stroke. + +2002-02-20 13:46 +0000 [r2] peterlin: + + * sfd (added), trunk/freefont (added), + FreeMono.sfd (added), + FreeMonoBold.sfd (added), + FreeMonoOblique.sfd (added), + FreeMonoBoldOblique.sfd (added): Monospaced + ISO 10646 fonts. + diff --git a/lib/tcpdf/fonts/freefont-20100919/INSTALL b/lib/tcpdf/fonts/freefont-20120503/INSTALL similarity index 55% rename from lib/tcpdf/fonts/freefont-20100919/INSTALL rename to lib/tcpdf/fonts/freefont-20120503/INSTALL index fbbbe804b5d..b458961f1f5 100644 --- a/lib/tcpdf/fonts/freefont-20100919/INSTALL +++ b/lib/tcpdf/fonts/freefont-20120503/INSTALL @@ -9,18 +9,19 @@ UNIX/GNU/Linux/BSD Systems -------------------------- FreeFont works with any system using the free font rasterizer FreeType -. +. Some features such as glyph substitution and +positioning may be handled by the text layout library +Pango . + +Most recent systems using FreeType2 and Pango handle OpenType fonts well, +but on older systems TrueType may perform better. * Debian GNU/Linux Users of Debian GNU/Linux system will probably want to use the Debian package, -available from the Debian site, +named 'ttf-freefont', available from the Debian Linux site. - , - -or any of its mirrors. - -Install them by issuing the command +Install the fonts by issuing the command apt-get install ttf-freefont @@ -34,7 +35,7 @@ Control Center module "kcmfontinst", which may appear in the menu as This is especially helpful for developers and testers. -* Generic X-windows +* Generic X Window systems 1) Fetch the freefont-ttf.tar.gz package with Free UCS outline fonts in the TrueType format. @@ -52,13 +53,21 @@ This is especially helpful for developers and testers. 4) Run ttmkfdir in the directory where you unpacked the fonts. -Windows 95/98/NT/2000/XP; Vista -------------------------------- +Microsoft Windows 95/98/NT/2000/XP; Vista/7 +------------------------------------------- -Note that in at least Vista, XP and 2000, the OpenType versions perform much -better than, and are recommended over, the TrueType ones. +Note that in at least Windows 7, Vista, XP and 2000, the TrueType versions +perform much better than, and are recommended over, the OpenType ones. -* Vista: +For good font smoothing in Windows, Microsoft ClearType must be enabled. +The native Windows web browser must be used to install, enable, and configure +ClearType. A web search for "ClearType Tuner" will find the proper web pages. +Recent versions of the browser raise a security block (a yellow bar at the +top of the window), which you must act upon to allow installation. A +checkbox in the window turns ClearType on (in Win-speek, "Turn on ClearType"). +The change happens immediately. + +* Vista, Windows 7: 1) From the Start menu, open Control Panels 2) Drag-n-drop font files onto Fonts control panel You may get a dialog saying @@ -69,18 +78,21 @@ better than, and are recommended over, the TrueType ones. The font installation is similar to Vista. In order to use OpenType, users of Windows 95, 98 and NT 4.0 can - install Adobe's 'Type Manager Light'. It is available for download - without cost from Adobe's web site. + install Adobe's 'Type Manager Light', which may be obtained from + the Adobe web site. Otherwise, use the TrueType versions. -Mac OS X --------- +Apple Mac OS X +-------------- -Installing on Mac OS X consists of moving the .ttf files to either +Support for OpenType on MacOS X started with OS 10.4, and has been improved +gradually in later versions. + +Installing on Mac OS X consists of moving the font files to either /Library/Fonts/ or ~/Library/Fonts/ depending on whether they should be available to all users on your system -or just to yourself. +or just to your own user. -------------------------------------------------------------------------- -$Id: INSTALL,v 1.7 2008/12/26 12:33:31 Stevan_White Exp $ +$Id: INSTALL,v 1.11 2011-06-12 07:14:12 Stevan_White Exp $ diff --git a/lib/tcpdf/fonts/freefont-20100919/README b/lib/tcpdf/fonts/freefont-20120503/README similarity index 50% rename from lib/tcpdf/fonts/freefont-20100919/README rename to lib/tcpdf/fonts/freefont-20120503/README index 8c970cbcf4c..d83f4a945c2 100644 --- a/lib/tcpdf/fonts/freefont-20100919/README +++ b/lib/tcpdf/fonts/freefont-20120503/README @@ -15,27 +15,27 @@ without having to switch fonts. Coverage -------- -FreeFont covers the following character sets - -* ISO 8859 parts 1-15 -* CEN MES-3 European Unicode Subset - http://www.evertype.com/standards/iso10646/pdf/cwa13873.pdf -* IBM/Microsoft code pages 437, 850, 852, 1250, 1252 and more -* Microsoft/Adobe Windows Glyph List 4 (WGL4) - http://www.microsoft.com/typography/otspec/WGL4.htm -* KOI8-R and KOI8-RU -* DEC VT100 graphics symbols -* International Phonetic Alphabet -* Arabic, Hebrew, Armenian, Georgian, Ethiopian and Thai alphabets, - including Arabic presentation forms A/B -* mathematical symbols, including the whole TeX repertoire of symbols -* APL symbols +FreeFont covers the following character ranges +* Latin, Cyrillic, and Arabic, with supplements for many languages +* Greek, Hebrew, Armenian, Georgian, Thaana, Syriac +* Devanagari, Bengali, Gujarati, Gurmukhi, Sinhala, Tamil, Malayalam +* Thai, Tai Le, Kayah Li, Hanunóo, Buginese +* Cherokee, Unified Canadian Aboriginal Syllabics +* Ethiopian, Tifnagh, Vai, Osmanya, Coptic +* Glagolitic, Gothic, Runic, Ugaritic, Old Persian, Phoenician, Old Italic +* Braille, International Phonetic Alphabet +* currency symbols, general punctuation and diacritical marks, dingbats +* mathematical symbols, including much of the TeX repertoire of symbols +* technical symbols: APL, OCR, arrows, +* geometrical shapes, box drawing +* musical symbols, gaming symbols, miscellaneous symbols etc. +For more detail see Editing ------- -The free outline font editor, George Williams's FontForge +The free outline font editor, George Williams' FontForge is used for editing the fonts. Design Issues @@ -44,19 +44,22 @@ Design Issues Which font shapes should be made? Historical style terms like Renaissance or Baroque letterforms cannot be applied beyond Latin/Cyrillic/Greek scripts to any greater extent than Kufi or Nashki can be applied beyond -Arabic script; "italic" is really only meaningful for Latin letters. +Arabic script; "italic" is strictly meaningful only for Latin letters, +although many scripts such as Cyrillic have a history with "cursive" and +many others with "oblique" faces. However, most modern writing systems have typographic formulations for -contrasting uniform and modulated character stroke widths, and have some -history with "oblique", faces. Since the advent of the typewriter, most -have developed a typographic style with uniform-width characters. +contrasting uniform and modulated character stroke widths, and since the +advent of the typewriter, most have developed a typographic style with +uniform-width characters. Accordingly, the FreeFont family has one monospaced - FreeMono - and two proportional faces (one with uniform stroke - FreeSans - and one with modulated stroke - FreeSerif). -To make text from different writing systems look good side-by-side, each -FreeFont face is meant to contain characters of similar style and weight. +The point of having characters from different writing systems in one font +is that mixed text should look good, and so each FreeFont face contains +characters of similar style and weight. Licensing --------- @@ -84,25 +87,41 @@ License. If you modify this font, you may extend this exception to your version of the font, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version. - Files and their suffixes ------------------------ The files with .sfd (Spline Font Database) are in FontForge's native format. -Please use these if you plan to modify the font files. +They may be used to modify the fonts. -TrueType fonts for immediate consumption are the files with the .ttf -(TrueType Font) suffix. These are ready to use in Xwindows based -systems using FreeType, on Mac OS, and on older Windows systems. +TrueType fonts are the files with the .ttf (TrueType Font) suffix. These +are ready to use in Linux/Unix, on Apple Mac OS, and on Microsoft Windows +systems. -OpenType fonts (with suffix .otf) are for use in Windows Vista. -Note that although they can be installed on Linux, but many applications -in Linux still don't support them. +OpenType fonts (with suffix .otf) are preferred for use on Linux/Unix, +but *not* for recent Microsoft Windows systems. +See the INSTALL file for more information. +Web Open Font Format files (with suffix .woff) are for use in Web sites. +See the webfont_guidelines.txt for further information. + +Further information +------------------- + +Home page of GNU FreeFont: + http://www.gnu.org/software/freefont/ + +More information is at the main project page of Free UCS scalable fonts: + http://savannah.gnu.org/projects/freefont/ + +To report problems with GNU FreeFont, it is best to obtain a Savannah +account and post reports using that account on + https://savannah.gnu.org/bugs/ + +Public discussions about GNU FreeFont may be posted to the mailing list + freefont-bugs@gnu.org -------------------------------------------------------------------------- -Primoz Peterlin, -Steve White +Original author: Primoz Peterlin +Current administrator: Steve White -Free UCS scalable fonts: http://savannah.gnu.org/projects/freefont/ -$Id: README,v 1.7 2009/01/13 08:43:23 Stevan_White Exp $ +$Id: README,v 1.10 2011-06-12 07:14:12 Stevan_White Exp $ diff --git a/lib/tcpdf/fonts/freefont-20120503/TROUBLESHOOTING b/lib/tcpdf/fonts/freefont-20120503/TROUBLESHOOTING new file mode 100644 index 00000000000..a7af2225554 --- /dev/null +++ b/lib/tcpdf/fonts/freefont-20120503/TROUBLESHOOTING @@ -0,0 +1,115 @@ + Troubleshooting GNU FreeFont + +So your text looks lousy, although you installed FreeFont and you seem to be +using it. What do you do? + +Before you blame the problem on FreeFont, take the time to double-check that +the text you are looking at is really rendered with FreeFont. + +Be aware that not all Unicode characters are supported by FreeFont, and +even characters supported by one face, such as Serif, might not be +supported by other faces such as Sans. + +Also, some systems have settings that strongly affect the rendering +of fonts. It may be worth tweaking these. + +glyph substitution +================== + +When given the task of displaying characters in text, modern font rendering +software usually tries to display *something*, even if the font it is +*supposed* to be using does not contain glyphs for all the characters in the +text. The software will snoop through all the fonts on the system to find +one that has a glyph for the one missing in the desired font. So although +you have specified FreeSans-bold, you may be looking at a letter from quite +a different font. + +First double-check that the font in question really contains the character +in question. If you don't have font development software, this can be +tricky. In the case of FreeFont, you can check if a given character +range is supported: + +Next double-check that your application (web browser, text editor, etc) +has indeed been properly instructed to use the font. + +Then double-check that the font is really installed in the system. +(This depends on the operating system, of course.) + +Linux and Unix +============== + +Modern Linux systems use a system called fontconfig, which maintains a font +cache, for efficiency. + +The font cache can really complicate font installation and troubleshooting +however. It can happen that when a font is newly installed, what is +displayed is coming out of an old cache entry rather than the new font. + +Just what to do depends on how and where the font was installed. + +Fonts installed system-wide are usually put in a directory such as + /usr/share/fonts/ +the font cache for these might be in + /var/cache/fontconfig/ +Fonts installed just for one user account will typically be in + ~/.fonts/ +and the cache will be + ~/.fontconfig/ + +You can clean your local cache merely by emptying the directory + ~/.fontconfig/ +In any case, to clean the cache, you can use the fontconfig command + fc-cache -vf +If run as root, it will clean the system cache, if run as a normal user, +it cleans only the normal user's cache. + +The procedure for local fonts is: + 1) shut off any program using the fonts in question + 2) clean the cache + 3) re-start the program +The procedure for system-wide fonts is: + 1) log out of the X Windows session + 2) in a console, clean the cache + 3) log in to an X Windows session + +LibreOffice / OpenOffice +======================== +These products have their own font rendering libraries, which have +idiosyncratic behavior. + +It has recently been reported that as of LibreOffice 3.5.1, font features +are disabled for OpenType fonts. If you use FreeFont with these products, +you may want to install the TrueType versions of the fonts. + +Windows +======= + +The most common complaint has to do with "blurry text". There are two +causes. + +The first is that ClearType smoothing is turned off. The best way to check +is to use the native Windows Web browser. Do a search for "ClearType Tuner". +The Microsoft pages install a tuner for ClearType. A security block notice +will appear at the top of the window--you have to allow the installation. +Then check the box "Turn on ClearType". The change happens immediately. + +The secont cause is that the FreeFont version with cubic spline outlines is +installed. As of the 2012 GNU FreeFont release, the TrueType builds have +quadratic splines, which work best with Windows' rendering software. + TTF (TrueType) quadratic splines Windows 7, Vista, Windows XP. + OTF (OpenType) cubic splines Linux, Mac + +Note also: Firefox has a setting for ClearType: + gfx.font_rendering.cleartype_params.rendering_mode +A value of 2 sets it to old-style GDI rendering, while -1 is the default. + +reporting problems +================== + +If you really think you're seeing a bug in FreeFont, or if you have +a suggestion, consider opening a problem report at + https://savannah.gnu.org/bugs/?group=freefont +It is best that you make a Savannah account and log in with that, so +you can be e-mailed whenever changes are made to your report. + +$Id: troubleshooting.txt,v 1.10 2011-07-16 08:38:06 Stevan_White Exp $ diff --git a/lib/tcpdf/fonts/freefont-20120503/USAGE b/lib/tcpdf/fonts/freefont-20120503/USAGE new file mode 100644 index 00000000000..7f7aa5c7495 --- /dev/null +++ b/lib/tcpdf/fonts/freefont-20120503/USAGE @@ -0,0 +1,185 @@ + Usage of GNU FreeFont + +Language scripts and faces +========================== + +There are three faces (serif, sans-serif, and monospace), and four styles +(regular, bold, cursive/italic, and bold cursive/italic) for each face. +There is one font file per face/style combination: 12 files in total. + +The letters for various languages, as well as specialized symbols, exist +among the various font files, but they are not uniformly populated. +All the fonts have complete support for Latin, Cyrillic, and Greek, as +well as most of the extensions for those scripts. + +At this time, serif regular has by far the largest number of letters, and +supports the largest number of writing scripts. However there are writing +scripts supported by the sans-serif but not by serif. + +For an overview of which scripts and sets of symbols are supported by +which face, see the FreeFont 'coverage' web page. + +Font features +============= + +FreeFont has numerous font "features" that perform alterations to the basic +letters of the font, replacing them with other letters, or positioning them +with respect to other letters. + +Many features are activated automatically, but in some environments, they +present some user control. This documents those features with user control. + +Language-specific features +========================== + +Some OpenType font features are activated only when the text is specified to +be of a certain language. + +This is done in HTML by enclosing the text with a tag whose 'lang' attribute +is set to the appropriate ISO 632.2 language code. In a word processor, +any block of text can be given a language setting. + +Latin +----- +Catalan ligature improving l·l +Dutch ligatures for ij, IJ +Sami localized form for letter Eng +Turkish overrides ligatures fi ffi of Latin + +Cyrillic +-------- +Ukrainian ligature for double i-diaresis +Serbian/Macedonian localized letters be, and more in italic +Bulgarian style set for modern glyphs + +Hebrew +------ +Yiddish raised vowels under yo + +Devanagari +---------- +Sanskrit much larger set of ligatures + +Hindi, Marathi better spacing of Western punctuation marks + +Indic languages +--------------- + +The 'danda' character is encoded in Unicode only in the Devanagari range. +When writing in scripts of other Indic languages, this same character is to +be used. But the shapes and line thicknesses of glyphs vary slightly from +one script to another, so the same glyph for 'danda' may not fit all scripts. + +By specifying the language of the text, an appropriate glyph for 'danda' +will be obtained. + +Style sets +========== + +These replacements are activated by specifying a "Style Set". +These features are accessible only from typesetting software. + +Cyrillic Bulgarian modern (ss01) + +Devanagari Bombay (ss02), Calcutta (ss03), Nepali (ss04) + +Discretionary features +====================== +These features are accessible only from typesetting software. +Typically the user must specifically request them. + +Unless otherwise noted, these are available only in FreeSerif. + +Ligatures and substitutions +--------------------------- + +Arabic, Armenian, Hebrew, German, Dutch + +Small captials +-------------- + +A limited set of specially drawn small capital letters in Latin. + +Superscript and subscript +------------------------- + +Transform a limited set of characters--mostly Latin letters and numerals-- +to versions well-sized and positioned as superscript or subscript. + +Numeral styles +-------------- + +The default numerals of FreeSerif are mono-spaced and of even height. +It also features proportionally-spaced numerals, and "old-style" numerals-- +those which vary in height and sometimes go beneath the baseline. +These can be had at discretion. + +Diagonal fractions +------------------ + +A limited set of diagonal fraction substitutions are available at discretion. +The set is more than what is encoded in Unicode. +They work with the ASCII slash or the mathematical slash U+2215. +The transform a sequence "number-slash-number" to a diagonal form. + +Zero +---- + +A slashed form of the numeral zero is available at discretion. +Available in all faces. + +Alternative characters +====================== + +FreeSerif has some listings of alternatives for specific characters. +Again this is use primarily in specialized typesetting software. + +Greek, Latin + +Use in LaTeX +============ +It is possible to use Unicode fonts in recent LaTeX implementations, but in + LuaTeX http://www.luatex.org/ and + XeTeX http://tug.org/xetex/ +it is particularly easy to use Unicode text, and to enable font features. +Recent versions of these systems use the 'fontspec' package to choose fonts +and features. + +A very simple document might contain the lines +--------------------------------------------------------------------------- +\documentclass{ltxdockit} +\usepackage{fontspec} +\usepackage{xunicode} +\setmainfont[]{FreeSerif} +\begin{document} +{\fontspec[Script=Default,Fractions={On}]{FreeSerif} +1/7 3/10 7/10} + +x\raisebox{-0.5ex}{{\scriptsize ai}} +x{\fontspec[Script=Default,VerticalPosition={Inferior}]{FreeSerif} +abcdefghijklmnopqrstuvwxyz+−(0123456789)} \\ +x\raisebox{0.85ex}{{\scriptsize ai}} +x{\fontspec[Script=Default,VerticalPosition={Superior}]{FreeSerif} +abcdefghijklmnopqrstuvwxyz+−(0123456789)} + +{\fontspec[Script=Latin]{FreeSerif} +\textsc{Small Caps} } + +{ BÑички хора Ñе раждат Ñвободни и равни по доÑтойнÑтво и права. +\fontspec[Script=Cyrillic,Language=Bulgarian,Variant={1}]{FreeSerif} \selectfont +BÑички хора Ñе раждат Ñвободни и равни по доÑтойнÑтво и права. } + +\end{document} +--------------------------------------------------------------------------- +Here are some 'fontspec' setting-value pairs meaningful for FreeFont. + +Numbers: Lining OldStyle Proportional SlashedZero +Fractions: On +VerticalPosition: Superior Inferior +Ligatures: Common Historical +Letters: UppercaseSmallCaps +Variant: 1 (etc. -- must be in {} picks style set.) +--------------------------------------------------------------------------- + + +$Id: usage.txt,v 1.10 2011-07-16 08:38:06 Stevan_White Exp $ diff --git a/lib/tcpdf/fonts/freemono.ctg.z b/lib/tcpdf/fonts/freemono.ctg.z index 81fca682acf95c491ba7049e7a44694387c24435..e952241b86657fead07a427bc0e7468ab5eb4cd5 100644 GIT binary patch delta 7581 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 diff --git a/lib/tcpdf/fonts/freemono.php b/lib/tcpdf/fonts/freemono.php index 0ec476d60d1..db445f4a648 100644 --- a/lib/tcpdf/fonts/freemono.php +++ b/lib/tcpdf/fonts/freemono.php @@ -6,10 +6,10 @@ $up=-125; $ut=50; $dw=600; $diff=''; -$originalsize=343980; +$originalsize=584424; $enc=''; $file='freemono.z'; $ctg='freemono.ctg.z'; -$desc=array('Flags'=>33,'FontBBox'=>'[-793 -200 699 800]','ItalicAngle'=>0,'Ascent'=>800,'Descent'=>-200,'Leading'=>90,'CapHeight'=>563,'XHeight'=>417,'StemV'=>70,'StemH'=>30,'AvgWidth'=>600,'MaxWidth'=>600,'MissingWidth'=>600); -$cw=array(0=>600,32=>600,33=>600,34=>600,35=>600,36=>600,37=>600,38=>600,39=>600,40=>600,41=>600,42=>600,43=>600,44=>600,45=>600,46=>600,47=>600,48=>600,49=>600,50=>600,51=>600,52=>600,53=>600,54=>600,55=>600,56=>600,57=>600,58=>600,59=>600,60=>600,61=>600,62=>600,63=>600,64=>600,65=>600,66=>600,67=>600,68=>600,69=>600,70=>600,71=>600,72=>600,73=>600,74=>600,75=>600,76=>600,77=>600,78=>600,79=>600,80=>600,81=>600,82=>600,83=>600,84=>600,85=>600,86=>600,87=>600,88=>600,89=>600,90=>600,91=>600,92=>600,93=>600,94=>600,95=>600,96=>600,97=>600,98=>600,99=>600,100=>600,101=>600,102=>600,103=>600,104=>600,105=>600,106=>600,107=>600,108=>600,109=>600,110=>600,111=>600,112=>600,113=>600,114=>600,115=>600,116=>600,117=>600,118=>600,119=>600,120=>600,121=>600,122=>600,123=>600,124=>600,125=>600,126=>600,160=>600,161=>600,162=>600,163=>600,164=>600,165=>600,166=>600,167=>600,168=>600,169=>600,170=>600,171=>600,172=>600,173=>600,174=>600,175=>600,176=>600,177=>600,178=>600,179=>600,180=>600,181=>600,182=>600,183=>600,184=>600,185=>600,186=>600,187=>600,188=>600,189=>600,190=>600,191=>600,192=>600,193=>600,194=>600,195=>600,196=>600,197=>600,198=>600,199=>600,200=>600,201=>600,202=>600,203=>600,204=>600,205=>600,206=>600,207=>600,208=>600,209=>600,210=>600,211=>600,212=>600,213=>600,214=>600,215=>600,216=>600,217=>600,218=>600,219=>600,220=>600,221=>600,222=>600,223=>600,224=>600,225=>600,226=>600,227=>600,228=>600,229=>600,230=>600,231=>600,232=>600,233=>600,234=>600,235=>600,236=>600,237=>600,238=>600,239=>600,240=>600,241=>600,242=>600,243=>600,244=>600,245=>600,246=>600,247=>600,248=>600,249=>600,250=>600,251=>600,252=>600,253=>600,254=>600,255=>600,256=>600,257=>600,258=>600,259=>600,260=>600,261=>600,262=>600,263=>600,264=>600,265=>600,266=>600,267=>600,268=>600,269=>600,270=>600,271=>600,272=>600,273=>600,274=>600,275=>600,276=>600,277=>600,278=>600,279=>600,280=>600,281=>600,282=>600,283=>600,284=>600,285=>600,286=>600,287=>600,288=>600,289=>600,290=>600,291=>600,292=>600,293=>600,294=>600,295=>600,296=>600,297=>600,298=>600,299=>600,300=>600,301=>600,302=>600,303=>600,304=>600,305=>600,306=>600,307=>600,308=>600,309=>600,310=>600,311=>600,312=>600,313=>600,314=>600,315=>600,316=>600,317=>600,318=>600,319=>600,320=>600,321=>600,322=>600,323=>600,324=>600,325=>600,326=>600,327=>600,328=>600,329=>600,330=>600,331=>600,332=>600,333=>600,334=>600,335=>600,336=>600,337=>600,338=>600,339=>600,340=>600,341=>600,342=>600,343=>600,344=>600,345=>600,346=>600,347=>600,348=>600,349=>600,350=>600,351=>600,352=>600,353=>600,354=>600,355=>600,356=>600,357=>600,358=>600,359=>600,360=>600,361=>600,362=>600,363=>600,364=>600,365=>600,366=>600,367=>600,368=>600,369=>600,370=>600,371=>600,372=>600,373=>600,374=>600,375=>600,376=>600,377=>600,378=>600,379=>600,380=>600,381=>600,382=>600,383=>600,384=>600,385=>600,386=>600,387=>600,388=>600,389=>600,390=>600,391=>600,392=>600,393=>600,394=>600,395=>600,396=>600,397=>600,398=>600,399=>600,400=>600,401=>600,402=>600,403=>600,404=>600,405=>600,406=>600,407=>600,408=>600,409=>600,410=>600,411=>600,412=>600,413=>600,414=>600,415=>600,416=>600,417=>600,418=>600,419=>600,420=>600,421=>600,422=>600,423=>600,424=>600,425=>600,426=>600,427=>600,428=>600,429=>600,430=>600,431=>600,432=>600,433=>600,434=>600,435=>600,436=>600,437=>600,438=>600,439=>600,440=>600,441=>600,442=>600,443=>600,444=>600,445=>600,446=>600,447=>600,448=>600,449=>600,450=>600,451=>600,452=>600,453=>600,454=>600,455=>600,456=>600,457=>600,458=>600,459=>600,460=>600,461=>600,462=>600,463=>600,464=>600,465=>600,466=>600,467=>600,468=>600,469=>600,470=>600,471=>600,472=>600,473=>600,474=>600,475=>600,476=>600,477=>600,478=>600,479=>600,480=>600,481=>600,482=>600,483=>600,484=>600,485=>600,486=>600,487=>600,488=>600,489=>600,490=>600,491=>600,492=>600,493=>600,494=>600,495=>600,496=>600,497=>600,498=>600,499=>600,500=>600,501=>600,502=>600,503=>600,504=>600,505=>600,506=>600,507=>600,508=>600,509=>600,510=>600,511=>600,512=>600,513=>600,514=>600,515=>600,516=>600,517=>600,518=>600,519=>600,520=>600,521=>600,522=>600,523=>600,524=>600,525=>600,526=>600,527=>600,528=>600,529=>600,530=>600,531=>600,532=>600,533=>600,534=>600,535=>600,536=>600,537=>600,538=>600,539=>600,540=>600,541=>600,542=>600,543=>600,544=>600,548=>600,549=>600,550=>600,551=>600,552=>600,553=>600,554=>600,555=>600,556=>600,557=>600,558=>600,559=>600,560=>600,561=>600,562=>600,563=>600,567=>600,592=>600,593=>600,594=>600,595=>600,596=>600,597=>600,598=>600,599=>600,600=>600,601=>600,602=>600,603=>600,604=>600,605=>600,606=>600,607=>600,608=>600,609=>600,610=>600,611=>600,612=>600,613=>600,614=>600,615=>600,616=>600,617=>600,618=>600,619=>600,620=>600,621=>600,622=>600,623=>600,624=>600,625=>600,626=>600,627=>600,628=>600,629=>600,630=>600,631=>600,632=>600,633=>600,634=>600,635=>600,636=>600,637=>600,638=>600,639=>600,640=>600,641=>600,642=>600,643=>600,644=>600,645=>600,646=>600,647=>600,648=>600,649=>600,650=>600,651=>600,652=>600,653=>600,654=>600,655=>600,656=>600,657=>600,658=>600,659=>600,660=>600,661=>600,662=>600,663=>600,664=>600,665=>600,666=>600,667=>600,668=>600,669=>600,670=>600,671=>600,672=>600,673=>600,674=>600,675=>600,676=>600,677=>600,678=>600,679=>600,680=>600,681=>600,682=>600,683=>600,684=>600,685=>600,686=>600,687=>600,688=>600,689=>600,690=>600,691=>600,692=>600,693=>600,694=>600,695=>600,696=>600,697=>600,698=>600,699=>600,700=>600,701=>600,702=>600,703=>600,704=>600,705=>600,706=>600,707=>600,708=>600,709=>600,710=>600,711=>600,712=>600,713=>600,714=>600,715=>600,716=>600,717=>600,718=>600,719=>600,720=>600,721=>600,722=>600,723=>600,724=>600,725=>600,726=>600,727=>600,728=>600,729=>600,730=>600,731=>600,732=>600,733=>600,734=>600,735=>600,736=>600,737=>600,738=>600,739=>600,740=>600,741=>600,742=>600,743=>600,744=>600,745=>600,746=>600,747=>600,748=>600,749=>600,750=>600,751=>600,752=>600,753=>600,754=>600,755=>600,756=>600,757=>600,758=>600,759=>600,760=>600,761=>600,762=>600,763=>600,764=>600,765=>600,766=>600,767=>600,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,843=>0,844=>0,845=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,884=>600,885=>600,890=>600,894=>600,900=>600,901=>600,902=>600,903=>600,904=>600,905=>600,906=>600,908=>600,910=>600,911=>600,912=>600,913=>600,914=>600,915=>600,916=>600,917=>600,918=>600,919=>600,920=>600,921=>600,922=>600,923=>600,924=>600,925=>600,926=>600,927=>600,928=>600,929=>600,931=>600,932=>600,933=>600,934=>600,935=>600,936=>600,937=>600,938=>600,939=>600,940=>600,941=>600,942=>600,943=>600,944=>600,945=>600,946=>600,947=>600,948=>600,949=>600,950=>600,951=>600,952=>600,953=>600,954=>600,955=>600,956=>600,957=>600,958=>600,959=>600,960=>600,961=>600,962=>600,963=>600,964=>600,965=>600,966=>600,967=>600,968=>600,969=>600,970=>600,971=>600,972=>600,973=>600,974=>600,976=>600,977=>600,978=>600,979=>600,980=>600,981=>600,982=>600,986=>600,987=>600,988=>600,1008=>600,1009=>600,1012=>600,1013=>600,1024=>600,1025=>600,1026=>600,1027=>600,1028=>600,1029=>600,1030=>600,1031=>600,1032=>600,1033=>600,1034=>600,1035=>600,1036=>600,1037=>600,1038=>600,1039=>600,1040=>600,1041=>600,1042=>600,1043=>600,1044=>600,1045=>600,1046=>600,1047=>600,1048=>600,1049=>600,1050=>600,1051=>600,1052=>600,1053=>600,1054=>600,1055=>600,1056=>600,1057=>600,1058=>600,1059=>600,1060=>600,1061=>600,1062=>600,1063=>600,1064=>600,1065=>600,1066=>600,1067=>600,1068=>600,1069=>600,1070=>600,1071=>600,1072=>600,1073=>600,1074=>600,1075=>600,1076=>600,1077=>600,1078=>600,1079=>600,1080=>600,1081=>600,1082=>600,1083=>600,1084=>600,1085=>600,1086=>600,1087=>600,1088=>600,1089=>600,1090=>600,1091=>600,1092=>600,1093=>600,1094=>600,1095=>600,1096=>600,1097=>600,1098=>600,1099=>600,1100=>600,1101=>600,1102=>600,1103=>600,1104=>600,1105=>600,1106=>600,1107=>600,1108=>600,1109=>600,1110=>600,1111=>600,1112=>600,1113=>600,1114=>600,1115=>600,1116=>600,1117=>600,1118=>600,1119=>600,1120=>600,1121=>600,1122=>600,1123=>600,1124=>600,1126=>600,1127=>600,1128=>600,1130=>600,1131=>600,1132=>600,1133=>600,1136=>600,1137=>600,1138=>600,1140=>600,1141=>600,1142=>600,1143=>600,1148=>600,1149=>600,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1162=>600,1163=>600,1164=>600,1165=>600,1166=>600,1167=>600,1168=>600,1169=>600,1170=>600,1171=>600,1172=>600,1173=>600,1174=>600,1175=>600,1176=>600,1177=>600,1178=>600,1179=>600,1180=>600,1181=>600,1182=>600,1183=>600,1184=>600,1185=>600,1186=>600,1187=>600,1188=>600,1189=>600,1190=>600,1191=>600,1192=>600,1193=>600,1194=>600,1195=>600,1196=>600,1197=>600,1198=>600,1199=>600,1200=>600,1201=>600,1202=>600,1203=>600,1204=>600,1205=>600,1206=>600,1207=>600,1208=>600,1209=>600,1210=>600,1211=>600,1212=>600,1213=>600,1214=>600,1215=>600,1216=>600,1217=>600,1218=>600,1219=>600,1220=>600,1221=>600,1222=>600,1223=>600,1224=>600,1225=>600,1226=>600,1227=>600,1228=>600,1229=>600,1230=>600,1231=>600,1232=>600,1233=>600,1234=>600,1235=>600,1236=>600,1237=>600,1238=>600,1239=>600,1240=>600,1241=>600,1242=>600,1243=>600,1244=>600,1245=>600,1246=>600,1247=>600,1248=>600,1249=>600,1250=>600,1251=>600,1252=>600,1253=>600,1254=>600,1255=>600,1256=>600,1257=>600,1258=>600,1259=>600,1260=>600,1261=>600,1262=>600,1263=>600,1264=>600,1265=>600,1266=>600,1267=>600,1268=>600,1269=>600,1270=>600,1271=>600,1272=>600,1273=>600,1296=>600,1297=>600,1298=>600,1299=>600,1306=>600,1307=>600,1308=>600,1309=>600,1310=>600,1311=>600,1329=>600,1330=>600,1331=>600,1332=>600,1333=>600,1334=>600,1335=>600,1336=>600,1337=>600,1338=>600,1339=>600,1340=>600,1341=>600,1342=>600,1343=>600,1344=>600,1345=>600,1346=>600,1347=>600,1348=>600,1349=>600,1350=>600,1351=>600,1352=>600,1353=>600,1354=>600,1355=>600,1356=>600,1357=>600,1358=>600,1359=>600,1360=>600,1361=>600,1362=>600,1363=>600,1364=>600,1365=>600,1366=>600,1369=>600,1370=>600,1371=>600,1372=>600,1373=>600,1374=>600,1375=>600,1377=>600,1378=>600,1379=>600,1380=>600,1381=>600,1382=>600,1383=>600,1384=>600,1385=>600,1386=>600,1387=>600,1388=>600,1389=>600,1390=>600,1391=>600,1392=>600,1393=>600,1394=>600,1395=>600,1396=>600,1397=>600,1398=>600,1399=>600,1400=>600,1401=>600,1402=>600,1403=>600,1404=>600,1405=>600,1406=>600,1407=>600,1408=>600,1409=>600,1410=>600,1411=>600,1412=>600,1413=>600,1414=>600,1415=>600,1417=>600,1418=>600,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1467=>0,1468=>0,1469=>0,1470=>600,1471=>0,1472=>600,1473=>0,1474=>0,1475=>600,1476=>0,1488=>600,1489=>600,1490=>600,1491=>600,1492=>600,1493=>600,1494=>600,1495=>600,1496=>600,1497=>600,1498=>600,1499=>600,1500=>600,1501=>600,1502=>600,1503=>600,1504=>600,1505=>600,1506=>600,1507=>600,1508=>600,1509=>600,1510=>600,1511=>600,1512=>600,1513=>600,1514=>600,1520=>600,1521=>600,1522=>600,1523=>600,1524=>600,4304=>600,4305=>600,4306=>600,4307=>600,4308=>600,4309=>600,4310=>600,4311=>600,4312=>600,4313=>600,4314=>600,4315=>600,4316=>600,4317=>600,4318=>600,4319=>600,4320=>600,4321=>600,4322=>600,4323=>600,4324=>600,4325=>600,4326=>600,4327=>600,4328=>600,4329=>600,4330=>600,4331=>600,4332=>600,4333=>600,4334=>600,4335=>600,4336=>600,4337=>600,4338=>600,4339=>600,4340=>600,4341=>600,4345=>600,4347=>600,4348=>600,5024=>600,5025=>600,5026=>600,5027=>600,5028=>600,5029=>600,5030=>600,5031=>600,5032=>600,5033=>600,5034=>600,5035=>600,5036=>600,5037=>600,5038=>600,5039=>600,5040=>600,5041=>600,5042=>600,5043=>600,5044=>600,5045=>600,5046=>600,5047=>600,5048=>600,5049=>600,5050=>600,5051=>600,5052=>600,5053=>600,5054=>600,5055=>600,5056=>600,5057=>600,5058=>600,5059=>600,5060=>600,5061=>600,5062=>600,5063=>600,5064=>600,5065=>600,5066=>600,5067=>600,5068=>600,5069=>600,5070=>600,5071=>600,5072=>600,5073=>600,5074=>600,5075=>600,5076=>600,5077=>600,5078=>600,5079=>600,5080=>600,5081=>600,5082=>600,5083=>600,5084=>600,5085=>600,5086=>600,5087=>600,5088=>600,5089=>600,5090=>600,5091=>600,5092=>600,5093=>600,5094=>600,5095=>600,5096=>600,5097=>600,5098=>600,5099=>600,5100=>600,5101=>600,5102=>600,5103=>600,5104=>600,5105=>600,5106=>600,5107=>600,5108=>600,5792=>600,5793=>600,5794=>600,5795=>600,5796=>600,5797=>600,5798=>600,5799=>600,5800=>600,5801=>600,5802=>600,5803=>600,5804=>600,5805=>600,5806=>600,5807=>600,5808=>600,5809=>600,5810=>600,5811=>600,5812=>600,5813=>600,5814=>600,5815=>600,5816=>600,5817=>600,5818=>600,5819=>600,5820=>600,5821=>600,5822=>600,5823=>600,5824=>600,5825=>600,5826=>600,5827=>600,5828=>600,5829=>600,5830=>600,5831=>600,5832=>600,5833=>600,5834=>600,5835=>600,5836=>600,5837=>600,5838=>600,5839=>600,5840=>600,5841=>600,5842=>600,5843=>600,5844=>600,5845=>600,5846=>600,5847=>600,5848=>600,5849=>600,5850=>600,5851=>600,5852=>600,5853=>600,5854=>600,5855=>600,5856=>600,5857=>600,5858=>600,5859=>600,5860=>600,5861=>600,5862=>600,5863=>600,5864=>600,5865=>600,5866=>600,5867=>600,5868=>600,5869=>600,5870=>600,5871=>600,5872=>600,7680=>600,7681=>600,7682=>600,7683=>600,7684=>600,7685=>600,7686=>600,7687=>600,7688=>600,7689=>600,7690=>600,7691=>600,7692=>600,7693=>600,7694=>600,7695=>600,7696=>600,7697=>600,7698=>600,7699=>600,7700=>600,7701=>600,7702=>600,7703=>600,7704=>600,7705=>600,7706=>600,7707=>600,7708=>600,7709=>600,7710=>600,7711=>600,7712=>600,7713=>600,7714=>600,7715=>600,7716=>600,7717=>600,7718=>600,7719=>600,7720=>600,7721=>600,7722=>600,7723=>600,7724=>600,7725=>600,7726=>600,7727=>600,7728=>600,7729=>600,7730=>600,7731=>600,7732=>600,7733=>600,7734=>600,7735=>600,7736=>600,7737=>600,7738=>600,7739=>600,7740=>600,7741=>600,7742=>600,7743=>600,7744=>600,7745=>600,7746=>600,7747=>600,7748=>600,7749=>600,7750=>600,7751=>600,7752=>600,7753=>600,7754=>600,7755=>600,7756=>600,7757=>600,7758=>600,7759=>600,7760=>600,7761=>600,7762=>600,7763=>600,7764=>600,7765=>600,7766=>600,7767=>600,7768=>600,7769=>600,7770=>600,7771=>600,7772=>600,7773=>600,7774=>600,7775=>600,7776=>600,7777=>600,7778=>600,7779=>600,7780=>600,7781=>600,7782=>600,7783=>600,7784=>600,7785=>600,7786=>600,7787=>600,7788=>600,7789=>600,7790=>600,7791=>600,7792=>600,7793=>600,7794=>600,7795=>600,7796=>600,7797=>600,7798=>600,7799=>600,7800=>600,7801=>600,7802=>600,7803=>600,7804=>600,7805=>600,7806=>600,7807=>600,7808=>600,7809=>600,7810=>600,7811=>600,7812=>600,7813=>600,7814=>600,7815=>600,7816=>600,7817=>600,7818=>600,7819=>600,7820=>600,7821=>600,7822=>600,7823=>600,7824=>600,7825=>600,7826=>600,7827=>600,7828=>600,7829=>600,7830=>600,7831=>600,7832=>600,7833=>600,7834=>600,7835=>600,7840=>600,7841=>600,7842=>600,7843=>600,7844=>600,7845=>600,7846=>600,7847=>600,7848=>600,7849=>600,7850=>600,7851=>600,7852=>600,7853=>600,7854=>600,7855=>600,7856=>600,7857=>600,7858=>600,7859=>600,7860=>600,7861=>600,7862=>600,7863=>600,7864=>600,7865=>600,7866=>600,7867=>600,7868=>600,7869=>600,7870=>600,7871=>600,7872=>600,7873=>600,7874=>600,7875=>600,7876=>600,7877=>600,7878=>600,7879=>600,7880=>600,7881=>600,7882=>600,7883=>600,7884=>600,7885=>600,7886=>600,7887=>600,7888=>600,7889=>600,7890=>600,7891=>600,7892=>600,7893=>600,7894=>600,7895=>600,7896=>600,7897=>600,7898=>600,7899=>600,7900=>600,7901=>600,7902=>600,7903=>600,7904=>600,7905=>600,7906=>600,7907=>600,7908=>600,7909=>600,7910=>600,7911=>600,7912=>600,7913=>600,7914=>600,7915=>600,7916=>600,7917=>600,7918=>600,7919=>600,7920=>600,7921=>600,7922=>600,7923=>600,7924=>600,7925=>600,7926=>600,7927=>600,7928=>600,7929=>600,7936=>600,7937=>600,7938=>600,7939=>600,7940=>600,7941=>600,7942=>600,7943=>600,7944=>600,7945=>600,7946=>600,7947=>600,7948=>600,7949=>600,7950=>600,7951=>600,7952=>600,7953=>600,7954=>600,7955=>600,7956=>600,7957=>600,7960=>600,7961=>600,7962=>600,7963=>600,7964=>600,7965=>600,7968=>600,7969=>600,7970=>600,7971=>600,7972=>600,7973=>600,7974=>600,7975=>600,7976=>600,7977=>600,7978=>600,7979=>600,7980=>600,7981=>600,7982=>600,7983=>600,7984=>600,7985=>600,7986=>600,7987=>600,7988=>600,7989=>600,7990=>600,7991=>600,7992=>600,7993=>600,7994=>600,7995=>600,7996=>600,7997=>600,7998=>600,7999=>600,8000=>600,8001=>600,8002=>600,8003=>600,8004=>600,8005=>600,8008=>600,8009=>600,8010=>600,8011=>600,8012=>600,8013=>600,8016=>600,8017=>600,8018=>600,8019=>600,8020=>600,8021=>600,8022=>600,8023=>600,8025=>600,8027=>600,8029=>600,8031=>600,8032=>600,8033=>600,8034=>600,8035=>600,8036=>600,8037=>600,8038=>600,8039=>600,8040=>600,8041=>600,8042=>600,8043=>600,8044=>600,8045=>600,8046=>600,8047=>600,8048=>600,8049=>600,8050=>600,8051=>600,8052=>600,8053=>600,8054=>600,8055=>600,8056=>600,8057=>600,8058=>600,8059=>600,8060=>600,8061=>600,8064=>600,8065=>600,8066=>600,8067=>600,8068=>600,8069=>600,8070=>600,8071=>600,8072=>600,8073=>600,8074=>600,8075=>600,8076=>600,8077=>600,8078=>600,8079=>600,8080=>600,8081=>600,8082=>600,8083=>600,8084=>600,8085=>600,8086=>600,8087=>600,8088=>600,8089=>600,8090=>600,8091=>600,8092=>600,8093=>600,8094=>600,8095=>600,8096=>600,8097=>600,8098=>600,8099=>600,8100=>600,8101=>600,8102=>600,8103=>600,8104=>600,8105=>600,8106=>600,8107=>600,8108=>600,8109=>600,8110=>600,8111=>600,8112=>600,8113=>600,8114=>600,8115=>600,8116=>600,8118=>600,8119=>600,8120=>600,8121=>600,8122=>600,8123=>600,8124=>600,8125=>600,8126=>600,8127=>600,8128=>600,8129=>600,8130=>600,8131=>600,8132=>600,8134=>600,8135=>600,8136=>600,8137=>600,8138=>600,8139=>600,8140=>600,8141=>600,8142=>600,8143=>600,8144=>600,8145=>600,8146=>600,8147=>600,8150=>600,8151=>600,8152=>600,8153=>600,8154=>600,8155=>600,8157=>600,8158=>600,8159=>600,8160=>600,8161=>600,8162=>600,8163=>600,8164=>600,8165=>600,8166=>600,8167=>600,8168=>600,8169=>600,8170=>600,8171=>600,8172=>600,8173=>600,8174=>600,8175=>600,8178=>600,8179=>600,8180=>600,8182=>600,8183=>600,8184=>600,8185=>600,8186=>600,8187=>600,8188=>600,8189=>600,8190=>600,8192=>600,8193=>600,8194=>600,8195=>600,8196=>600,8197=>600,8198=>600,8199=>600,8200=>600,8201=>600,8202=>600,8203=>600,8204=>0,8205=>0,8206=>0,8207=>0,8208=>600,8209=>600,8210=>600,8211=>600,8212=>600,8213=>600,8214=>600,8215=>600,8216=>600,8217=>600,8218=>600,8219=>600,8220=>600,8221=>600,8222=>600,8223=>600,8224=>600,8225=>600,8226=>600,8227=>600,8228=>600,8229=>600,8230=>600,8231=>600,8232=>600,8233=>600,8234=>600,8235=>600,8236=>600,8237=>600,8238=>600,8239=>600,8240=>600,8241=>600,8242=>600,8243=>600,8244=>600,8245=>600,8246=>600,8247=>600,8248=>600,8249=>600,8250=>600,8251=>600,8252=>600,8253=>600,8254=>600,8255=>600,8256=>600,8257=>600,8258=>600,8259=>600,8260=>600,8261=>600,8262=>600,8263=>600,8264=>600,8265=>600,8266=>600,8267=>600,8268=>600,8269=>600,8270=>600,8271=>600,8272=>600,8273=>600,8274=>600,8275=>600,8276=>600,8277=>600,8278=>600,8279=>600,8280=>600,8281=>600,8282=>600,8283=>600,8284=>600,8285=>600,8286=>600,8287=>600,8288=>600,8289=>600,8290=>600,8291=>600,8292=>600,8304=>600,8305=>600,8308=>600,8309=>600,8310=>600,8311=>600,8312=>600,8313=>600,8314=>600,8315=>600,8316=>600,8317=>600,8318=>600,8319=>600,8320=>600,8321=>600,8322=>600,8323=>600,8324=>600,8325=>600,8326=>600,8327=>600,8328=>600,8329=>600,8330=>600,8331=>600,8332=>600,8333=>600,8334=>600,8336=>600,8337=>600,8338=>600,8339=>600,8340=>600,8353=>600,8354=>600,8355=>600,8356=>600,8357=>600,8358=>600,8359=>600,8360=>600,8361=>600,8362=>600,8363=>600,8364=>600,8365=>600,8366=>600,8368=>600,8369=>600,8370=>600,8371=>600,8372=>600,8373=>600,8400=>0,8401=>0,8402=>0,8406=>0,8407=>0,8411=>0,8412=>0,8413=>0,8414=>0,8415=>0,8416=>0,8417=>0,8418=>0,8419=>0,8421=>0,8422=>0,8424=>0,8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,8448=>600,8449=>600,8450=>600,8451=>600,8452=>600,8453=>600,8454=>600,8455=>600,8456=>600,8457=>600,8461=>600,8462=>600,8463=>600,8464=>600,8465=>600,8466=>600,8467=>600,8468=>600,8469=>600,8470=>600,8471=>600,8472=>600,8473=>600,8474=>600,8476=>600,8477=>600,8478=>600,8480=>600,8481=>600,8482=>600,8484=>600,8486=>600,8487=>600,8489=>600,8490=>600,8491=>600,8494=>600,8498=>600,8501=>600,8502=>600,8503=>600,8504=>600,8505=>600,8506=>600,8507=>600,8513=>600,8514=>600,8515=>600,8516=>600,8523=>600,8525=>600,8526=>600,8531=>600,8532=>600,8533=>600,8534=>600,8535=>600,8536=>600,8537=>600,8538=>600,8539=>600,8540=>600,8541=>600,8542=>600,8543=>600,8544=>600,8545=>600,8546=>600,8547=>600,8548=>600,8549=>600,8550=>600,8551=>600,8552=>600,8553=>600,8554=>600,8555=>600,8556=>600,8557=>600,8558=>600,8559=>600,8560=>600,8561=>600,8562=>600,8563=>600,8564=>600,8565=>600,8566=>600,8567=>600,8568=>600,8569=>600,8570=>600,8571=>600,8572=>600,8573=>600,8574=>600,8575=>600,8592=>600,8593=>600,8594=>600,8595=>600,8596=>600,8597=>600,8598=>600,8599=>600,8600=>600,8601=>600,8602=>600,8603=>600,8604=>600,8605=>600,8606=>600,8607=>600,8608=>600,8609=>600,8610=>600,8611=>600,8612=>600,8613=>600,8614=>600,8615=>600,8616=>600,8617=>600,8618=>600,8619=>600,8620=>600,8621=>600,8622=>600,8623=>600,8624=>600,8625=>600,8626=>600,8627=>600,8628=>600,8629=>600,8630=>600,8631=>600,8632=>600,8633=>600,8634=>600,8635=>600,8636=>600,8637=>600,8638=>600,8639=>600,8640=>600,8641=>600,8642=>600,8643=>600,8644=>600,8645=>600,8646=>600,8647=>600,8648=>600,8649=>600,8650=>600,8651=>600,8652=>600,8653=>600,8654=>600,8655=>600,8656=>600,8657=>600,8658=>600,8659=>600,8660=>600,8661=>600,8669=>600,8678=>600,8679=>600,8680=>600,8681=>600,8691=>600,8704=>600,8705=>600,8706=>600,8707=>600,8708=>600,8709=>600,8710=>600,8711=>600,8712=>600,8713=>600,8714=>600,8715=>600,8716=>600,8717=>600,8718=>600,8719=>600,8720=>600,8721=>600,8722=>600,8723=>600,8724=>600,8725=>600,8726=>600,8727=>600,8728=>600,8729=>600,8730=>600,8731=>600,8732=>600,8733=>600,8734=>600,8735=>600,8736=>600,8737=>600,8738=>600,8739=>600,8740=>600,8741=>600,8742=>600,8743=>600,8744=>600,8745=>600,8746=>600,8747=>600,8748=>600,8749=>600,8750=>600,8751=>600,8752=>600,8753=>600,8754=>600,8755=>600,8756=>600,8757=>600,8758=>600,8759=>600,8760=>600,8761=>600,8762=>600,8763=>600,8764=>600,8765=>600,8766=>600,8767=>600,8768=>600,8769=>600,8770=>600,8771=>600,8772=>600,8773=>600,8774=>600,8775=>600,8776=>600,8777=>600,8778=>600,8779=>600,8780=>600,8781=>600,8782=>600,8783=>600,8784=>600,8785=>600,8786=>600,8787=>600,8788=>600,8789=>600,8790=>600,8791=>600,8792=>600,8793=>600,8794=>600,8795=>600,8796=>600,8797=>600,8798=>600,8799=>600,8800=>600,8801=>600,8802=>600,8803=>600,8804=>600,8805=>600,8806=>600,8807=>600,8808=>600,8809=>600,8810=>600,8811=>600,8812=>600,8813=>600,8814=>600,8815=>600,8816=>600,8817=>600,8818=>600,8819=>600,8820=>600,8821=>600,8822=>600,8823=>600,8824=>600,8825=>600,8826=>600,8827=>600,8828=>600,8829=>600,8830=>600,8831=>600,8832=>600,8833=>600,8834=>600,8835=>600,8836=>600,8837=>600,8838=>600,8839=>600,8840=>600,8841=>600,8842=>600,8843=>600,8844=>600,8845=>600,8846=>600,8847=>600,8848=>600,8849=>600,8850=>600,8851=>600,8852=>600,8853=>600,8854=>600,8855=>600,8856=>600,8857=>600,8858=>600,8859=>600,8860=>600,8861=>600,8862=>600,8863=>600,8864=>600,8865=>600,8866=>600,8867=>600,8868=>600,8869=>600,8870=>600,8871=>600,8872=>600,8873=>600,8874=>600,8875=>600,8876=>600,8877=>600,8878=>600,8879=>600,8880=>600,8881=>600,8882=>600,8883=>600,8884=>600,8885=>600,8886=>600,8887=>600,8888=>600,8889=>600,8890=>600,8891=>600,8892=>600,8893=>600,8894=>600,8895=>600,8896=>600,8897=>600,8898=>600,8899=>600,8900=>600,8901=>600,8902=>600,8903=>600,8904=>600,8905=>600,8906=>600,8907=>600,8908=>600,8909=>600,8910=>600,8911=>600,8912=>600,8913=>600,8914=>600,8915=>600,8916=>600,8917=>600,8918=>600,8919=>600,8920=>600,8921=>600,8922=>600,8923=>600,8924=>600,8925=>600,8926=>600,8927=>600,8928=>600,8929=>600,8930=>600,8931=>600,8932=>600,8933=>600,8934=>600,8935=>600,8936=>600,8937=>600,8938=>600,8939=>600,8940=>600,8941=>600,8942=>600,8943=>600,8944=>600,8945=>600,8960=>600,8962=>600,8963=>600,8964=>600,8965=>600,8966=>600,8968=>600,8969=>600,8970=>600,8971=>600,8972=>600,8973=>600,8974=>600,8975=>600,8976=>600,8978=>600,8980=>600,8981=>600,8984=>600,8985=>600,8988=>600,8989=>600,8990=>600,8991=>600,8992=>600,8993=>600,8994=>600,8995=>600,8996=>600,8997=>600,8998=>600,8999=>600,9001=>600,9002=>600,9003=>600,9004=>600,9014=>600,9015=>600,9016=>600,9017=>600,9018=>600,9019=>600,9020=>600,9021=>600,9022=>600,9023=>600,9024=>600,9025=>600,9026=>600,9027=>600,9028=>600,9029=>600,9030=>600,9031=>600,9032=>600,9033=>600,9034=>600,9035=>600,9036=>600,9037=>600,9038=>600,9039=>600,9040=>600,9041=>600,9042=>600,9043=>600,9044=>600,9045=>600,9046=>600,9047=>600,9048=>600,9049=>600,9050=>600,9051=>600,9052=>600,9053=>600,9054=>600,9055=>600,9056=>600,9057=>600,9058=>600,9059=>600,9060=>600,9061=>600,9062=>600,9063=>600,9064=>600,9065=>600,9066=>600,9067=>600,9068=>600,9069=>600,9070=>600,9071=>600,9072=>600,9073=>600,9074=>600,9075=>600,9076=>600,9077=>600,9078=>600,9079=>600,9080=>600,9081=>600,9082=>600,9084=>600,9085=>600,9086=>600,9087=>600,9088=>600,9089=>600,9090=>600,9091=>600,9092=>600,9093=>600,9094=>600,9095=>600,9096=>600,9097=>600,9098=>600,9099=>600,9100=>600,9101=>600,9102=>600,9103=>600,9104=>600,9105=>600,9106=>600,9107=>600,9108=>600,9109=>600,9110=>600,9111=>600,9112=>600,9113=>600,9114=>600,9115=>600,9116=>600,9117=>600,9118=>600,9119=>600,9120=>600,9121=>600,9122=>600,9123=>600,9124=>600,9125=>600,9126=>600,9127=>600,9128=>600,9129=>600,9130=>600,9131=>600,9132=>600,9133=>600,9134=>600,9135=>600,9136=>600,9137=>600,9138=>600,9139=>600,9140=>600,9141=>600,9142=>600,9143=>600,9146=>600,9147=>600,9148=>600,9149=>600,9150=>600,9151=>600,9152=>600,9153=>600,9154=>600,9155=>600,9156=>600,9157=>600,9158=>600,9159=>600,9160=>600,9161=>600,9162=>600,9163=>600,9164=>600,9165=>600,9166=>600,9167=>600,9178=>600,9179=>600,9182=>600,9183=>600,9186=>600,9187=>600,9188=>600,9189=>600,9190=>600,9216=>600,9217=>600,9218=>600,9219=>600,9220=>600,9221=>600,9222=>600,9223=>600,9224=>600,9225=>600,9226=>600,9227=>600,9228=>600,9229=>600,9230=>600,9231=>600,9232=>600,9233=>600,9234=>600,9235=>600,9236=>600,9237=>600,9238=>600,9239=>600,9240=>600,9241=>600,9242=>600,9243=>600,9244=>600,9245=>600,9246=>600,9247=>600,9248=>600,9249=>600,9251=>600,9252=>600,9280=>600,9281=>600,9282=>600,9283=>600,9284=>600,9285=>600,9286=>600,9287=>600,9288=>600,9289=>600,9290=>600,9312=>600,9313=>600,9314=>600,9315=>600,9316=>600,9317=>600,9318=>600,9319=>600,9320=>600,9321=>600,9472=>600,9473=>600,9474=>600,9475=>600,9476=>600,9477=>600,9478=>600,9479=>600,9480=>600,9481=>600,9482=>600,9483=>600,9484=>600,9485=>600,9486=>600,9487=>600,9488=>600,9489=>600,9490=>600,9491=>600,9492=>600,9493=>600,9494=>600,9495=>600,9496=>600,9497=>600,9498=>600,9499=>600,9500=>600,9501=>600,9502=>600,9503=>600,9504=>600,9505=>600,9506=>600,9507=>600,9508=>600,9509=>600,9510=>600,9511=>600,9512=>600,9513=>600,9514=>600,9515=>600,9516=>600,9517=>600,9518=>600,9519=>600,9520=>600,9521=>600,9522=>600,9523=>600,9524=>600,9525=>600,9526=>600,9527=>600,9528=>600,9529=>600,9530=>600,9531=>600,9532=>600,9533=>600,9534=>600,9535=>600,9536=>600,9537=>600,9538=>600,9539=>600,9540=>600,9541=>600,9542=>600,9543=>600,9544=>600,9545=>600,9546=>600,9547=>600,9548=>600,9549=>600,9550=>600,9551=>600,9552=>600,9553=>600,9554=>600,9555=>600,9556=>600,9557=>600,9558=>600,9559=>600,9560=>600,9561=>600,9562=>600,9563=>600,9564=>600,9565=>600,9566=>600,9567=>600,9568=>600,9569=>600,9570=>600,9571=>600,9572=>600,9573=>600,9574=>600,9575=>600,9576=>600,9577=>600,9578=>600,9579=>600,9580=>600,9581=>600,9582=>600,9583=>600,9584=>600,9585=>600,9586=>600,9587=>600,9588=>600,9589=>600,9590=>600,9591=>600,9592=>600,9593=>600,9594=>600,9595=>600,9596=>600,9597=>600,9598=>600,9599=>600,9600=>600,9601=>600,9602=>600,9603=>600,9604=>600,9605=>600,9606=>600,9607=>600,9608=>600,9609=>600,9610=>600,9611=>600,9612=>600,9613=>600,9614=>600,9615=>600,9616=>600,9617=>600,9618=>600,9619=>600,9620=>600,9621=>600,9622=>600,9623=>600,9624=>600,9625=>600,9626=>600,9627=>600,9628=>600,9629=>600,9630=>600,9631=>600,9632=>600,9633=>600,9634=>600,9635=>600,9636=>600,9637=>600,9638=>600,9639=>600,9640=>600,9641=>600,9642=>600,9643=>600,9644=>600,9645=>600,9646=>600,9647=>600,9648=>600,9649=>600,9650=>600,9651=>600,9652=>600,9653=>600,9654=>600,9655=>600,9656=>600,9657=>600,9658=>600,9659=>600,9660=>600,9661=>600,9662=>600,9663=>600,9664=>600,9665=>600,9666=>600,9667=>600,9668=>600,9669=>600,9670=>600,9671=>600,9672=>600,9673=>600,9674=>600,9675=>600,9676=>600,9677=>600,9678=>600,9679=>600,9680=>600,9681=>600,9682=>600,9683=>600,9684=>600,9685=>600,9686=>600,9687=>600,9688=>600,9689=>600,9690=>600,9691=>600,9692=>600,9693=>600,9694=>600,9695=>600,9696=>600,9697=>600,9698=>600,9699=>600,9700=>600,9701=>600,9702=>600,9703=>600,9704=>600,9705=>600,9706=>600,9707=>600,9708=>600,9709=>600,9710=>600,9711=>600,9712=>600,9713=>600,9714=>600,9715=>600,9716=>600,9717=>600,9718=>600,9719=>600,9720=>600,9721=>600,9722=>600,9723=>600,9724=>600,9725=>600,9726=>600,9727=>600,9728=>600,9729=>600,9730=>600,9731=>600,9733=>600,9734=>600,9735=>600,9736=>600,9737=>600,9744=>600,9745=>600,9746=>600,9754=>600,9755=>600,9756=>600,9757=>600,9758=>600,9759=>600,9766=>600,9768=>600,9769=>600,9774=>600,9775=>600,9776=>600,9777=>600,9778=>600,9779=>600,9780=>600,9781=>600,9782=>600,9783=>600,9785=>600,9786=>600,9787=>600,9788=>600,9789=>600,9790=>600,9791=>600,9792=>600,9793=>600,9794=>600,9795=>600,9796=>600,9797=>600,9798=>600,9799=>600,9800=>600,9801=>600,9802=>600,9803=>600,9804=>600,9805=>600,9806=>600,9807=>600,9808=>600,9809=>600,9810=>600,9811=>600,9824=>600,9825=>600,9826=>600,9827=>600,9828=>600,9829=>600,9830=>600,9831=>600,9833=>600,9834=>600,9835=>600,9836=>600,9837=>600,9838=>600,9839=>600,9856=>600,9857=>600,9858=>600,9859=>600,9860=>600,9861=>600,10176=>600,10177=>600,10178=>600,10179=>600,10180=>600,10181=>600,10182=>600,10183=>600,10184=>600,10185=>600,10186=>600,10188=>600,10192=>600,10193=>600,10194=>600,10195=>600,10196=>600,10197=>600,10198=>600,10199=>600,10212=>600,10213=>600,10214=>600,10215=>600,10216=>600,10217=>600,10218=>600,10219=>600,10226=>600,10227=>600,10229=>600,10230=>600,10231=>600,10232=>600,10233=>600,10234=>600,10235=>600,10236=>600,10240=>600,10241=>600,10242=>600,10243=>600,10244=>600,10245=>600,10246=>600,10247=>600,10248=>600,10249=>600,10250=>600,10251=>600,10252=>600,10253=>600,10254=>600,10255=>600,10256=>600,10257=>600,10258=>600,10259=>600,10260=>600,10261=>600,10262=>600,10263=>600,10264=>600,10265=>600,10266=>600,10267=>600,10268=>600,10269=>600,10270=>600,10271=>600,10272=>600,10273=>600,10274=>600,10275=>600,10276=>600,10277=>600,10278=>600,10279=>600,10280=>600,10281=>600,10282=>600,10283=>600,10284=>600,10285=>600,10286=>600,10287=>600,10288=>600,10289=>600,10290=>600,10291=>600,10292=>600,10293=>600,10294=>600,10295=>600,10296=>600,10297=>600,10298=>600,10299=>600,10300=>600,10301=>600,10302=>600,10303=>600,10304=>600,10305=>600,10306=>600,10307=>600,10308=>600,10309=>600,10310=>600,10311=>600,10312=>600,10313=>600,10314=>600,10315=>600,10316=>600,10317=>600,10318=>600,10319=>600,10320=>600,10321=>600,10322=>600,10323=>600,10324=>600,10325=>600,10326=>600,10327=>600,10328=>600,10329=>600,10330=>600,10331=>600,10332=>600,10333=>600,10334=>600,10335=>600,10336=>600,10337=>600,10338=>600,10339=>600,10340=>600,10341=>600,10342=>600,10343=>600,10344=>600,10345=>600,10346=>600,10347=>600,10348=>600,10349=>600,10350=>600,10351=>600,10352=>600,10353=>600,10354=>600,10355=>600,10356=>600,10357=>600,10358=>600,10359=>600,10360=>600,10361=>600,10362=>600,10363=>600,10364=>600,10365=>600,10366=>600,10367=>600,10368=>600,10369=>600,10370=>600,10371=>600,10372=>600,10373=>600,10374=>600,10375=>600,10376=>600,10377=>600,10378=>600,10379=>600,10380=>600,10381=>600,10382=>600,10383=>600,10384=>600,10385=>600,10386=>600,10387=>600,10388=>600,10389=>600,10390=>600,10391=>600,10392=>600,10393=>600,10394=>600,10395=>600,10396=>600,10397=>600,10398=>600,10399=>600,10400=>600,10401=>600,10402=>600,10403=>600,10404=>600,10405=>600,10406=>600,10407=>600,10408=>600,10409=>600,10410=>600,10411=>600,10412=>600,10413=>600,10414=>600,10415=>600,10416=>600,10417=>600,10418=>600,10419=>600,10420=>600,10421=>600,10422=>600,10423=>600,10424=>600,10425=>600,10426=>600,10427=>600,10428=>600,10429=>600,10430=>600,10431=>600,10432=>600,10433=>600,10434=>600,10435=>600,10436=>600,10437=>600,10438=>600,10439=>600,10440=>600,10441=>600,10442=>600,10443=>600,10444=>600,10445=>600,10446=>600,10447=>600,10448=>600,10449=>600,10450=>600,10451=>600,10452=>600,10453=>600,10454=>600,10455=>600,10456=>600,10457=>600,10458=>600,10459=>600,10460=>600,10461=>600,10462=>600,10463=>600,10464=>600,10465=>600,10466=>600,10467=>600,10468=>600,10469=>600,10470=>600,10471=>600,10472=>600,10473=>600,10474=>600,10475=>600,10476=>600,10477=>600,10478=>600,10479=>600,10480=>600,10481=>600,10482=>600,10483=>600,10484=>600,10485=>600,10486=>600,10487=>600,10488=>600,10489=>600,10490=>600,10491=>600,10492=>600,10493=>600,10494=>600,10495=>600,10752=>600,10753=>600,10754=>600,10755=>600,10756=>600,10757=>600,10758=>600,10781=>600,10815=>600,11008=>600,11009=>600,11010=>600,11011=>600,11012=>600,11013=>600,11014=>600,11015=>600,11016=>600,11017=>600,11018=>600,11019=>600,11020=>600,11021=>600,11026=>600,11027=>600,11028=>600,11029=>600,11030=>600,11031=>600,11032=>600,11033=>600,11035=>600,11036=>600,11037=>600,11038=>600,11039=>600,11040=>600,11041=>600,11042=>600,11043=>600,11044=>600,11045=>600,11046=>600,11047=>600,11048=>600,11049=>600,11050=>600,11051=>600,11091=>600,11092=>600,11799=>600,42888=>600,42889=>600,42890=>600,42891=>600,42892=>600,43264=>600,43265=>600,43266=>600,43267=>600,43268=>600,43269=>600,43270=>600,43271=>600,43272=>600,43273=>600,43274=>600,43275=>600,43276=>600,43277=>600,43278=>600,43279=>600,43280=>600,43281=>600,43282=>600,43283=>600,43284=>600,43285=>600,43286=>600,43287=>600,43288=>600,43289=>600,43290=>600,43291=>600,43292=>600,43293=>600,43294=>600,43295=>600,43296=>600,43297=>600,43298=>600,43299=>600,43300=>600,43301=>600,43302=>0,43303=>0,43304=>0,43305=>0,43306=>0,43307=>0,43308=>0,43309=>0,43310=>600,43311=>600,64256=>600,64257=>600,64258=>600,64259=>600,64260=>600,64261=>600,64285=>600,64286=>600,64287=>600,64288=>600,64289=>600,64290=>600,64291=>600,64292=>600,64293=>600,64294=>600,64295=>600,64296=>600,64297=>600,64298=>600,64299=>600,64300=>600,64301=>600,64302=>600,64303=>600,64304=>600,64305=>600,64306=>600,64307=>600,64308=>600,64309=>600,64310=>600,64312=>600,64313=>600,64314=>600,64315=>600,64316=>600,64318=>600,64320=>600,64321=>600,64323=>600,64324=>600,64326=>600,64327=>600,64328=>600,64329=>600,64330=>600,64331=>600,64332=>600,64333=>600,64334=>600,64335=>600,65533=>600,65535=>600); +$desc=array('Flags'=>33,'FontBBox'=>'[-793 -200 699 800]','ItalicAngle'=>0,'Ascent'=>800,'Descent'=>-200,'Leading'=>0,'CapHeight'=>563,'XHeight'=>417,'StemV'=>70,'StemH'=>30,'AvgWidth'=>600,'MaxWidth'=>600,'MissingWidth'=>600); +$cw=array(0=>600,32=>600,33=>600,34=>600,35=>600,36=>600,37=>600,38=>600,39=>600,40=>600,41=>600,42=>600,43=>600,44=>600,45=>600,46=>600,47=>600,48=>600,49=>600,50=>600,51=>600,52=>600,53=>600,54=>600,55=>600,56=>600,57=>600,58=>600,59=>600,60=>600,61=>600,62=>600,63=>600,64=>600,65=>600,66=>600,67=>600,68=>600,69=>600,70=>600,71=>600,72=>600,73=>600,74=>600,75=>600,76=>600,77=>600,78=>600,79=>600,80=>600,81=>600,82=>600,83=>600,84=>600,85=>600,86=>600,87=>600,88=>600,89=>600,90=>600,91=>600,92=>600,93=>600,94=>600,95=>600,96=>600,97=>600,98=>600,99=>600,100=>600,101=>600,102=>600,103=>600,104=>600,105=>600,106=>600,107=>600,108=>600,109=>600,110=>600,111=>600,112=>600,113=>600,114=>600,115=>600,116=>600,117=>600,118=>600,119=>600,120=>600,121=>600,122=>600,123=>600,124=>600,125=>600,126=>600,160=>600,161=>600,162=>600,163=>600,164=>600,165=>600,166=>600,167=>600,168=>600,169=>600,170=>600,171=>600,172=>600,173=>600,174=>600,175=>600,176=>600,177=>600,178=>600,179=>600,180=>600,181=>600,182=>600,183=>600,184=>600,185=>600,186=>600,187=>600,188=>600,189=>600,190=>600,191=>600,192=>600,193=>600,194=>600,195=>600,196=>600,197=>600,198=>600,199=>600,200=>600,201=>600,202=>600,203=>600,204=>600,205=>600,206=>600,207=>600,208=>600,209=>600,210=>600,211=>600,212=>600,213=>600,214=>600,215=>600,216=>600,217=>600,218=>600,219=>600,220=>600,221=>600,222=>600,223=>600,224=>600,225=>600,226=>600,227=>600,228=>600,229=>600,230=>600,231=>600,232=>600,233=>600,234=>600,235=>600,236=>600,237=>600,238=>600,239=>600,240=>600,241=>600,242=>600,243=>600,244=>600,245=>600,246=>600,247=>600,248=>600,249=>600,250=>600,251=>600,252=>600,253=>600,254=>600,255=>600,256=>600,257=>600,258=>600,259=>600,260=>600,261=>600,262=>600,263=>600,264=>600,265=>600,266=>600,267=>600,268=>600,269=>600,270=>600,271=>600,272=>600,273=>600,274=>600,275=>600,276=>600,277=>600,278=>600,279=>600,280=>600,281=>600,282=>600,283=>600,284=>600,285=>600,286=>600,287=>600,288=>600,289=>600,290=>600,291=>600,292=>600,293=>600,294=>600,295=>600,296=>600,297=>600,298=>600,299=>600,300=>600,301=>600,302=>600,303=>600,304=>600,305=>600,306=>600,307=>600,308=>600,309=>600,310=>600,311=>600,312=>600,313=>600,314=>600,315=>600,316=>600,317=>600,318=>600,319=>600,320=>600,321=>600,322=>600,323=>600,324=>600,325=>600,326=>600,327=>600,328=>600,329=>600,330=>600,331=>600,332=>600,333=>600,334=>600,335=>600,336=>600,337=>600,338=>600,339=>600,340=>600,341=>600,342=>600,343=>600,344=>600,345=>600,346=>600,347=>600,348=>600,349=>600,350=>600,351=>600,352=>600,353=>600,354=>600,355=>600,356=>600,357=>600,358=>600,359=>600,360=>600,361=>600,362=>600,363=>600,364=>600,365=>600,366=>600,367=>600,368=>600,369=>600,370=>600,371=>600,372=>600,373=>600,374=>600,375=>600,376=>600,377=>600,378=>600,379=>600,380=>600,381=>600,382=>600,383=>600,384=>600,385=>600,386=>600,387=>600,388=>600,389=>600,390=>600,391=>600,392=>600,393=>600,394=>600,395=>600,396=>600,397=>600,398=>600,399=>600,400=>600,401=>600,402=>600,403=>600,404=>600,405=>600,406=>600,407=>600,408=>600,409=>600,410=>600,411=>600,412=>600,413=>600,414=>600,415=>600,416=>600,417=>600,418=>600,419=>600,420=>600,421=>600,422=>600,423=>600,424=>600,425=>600,426=>600,427=>600,428=>600,429=>600,430=>600,431=>600,432=>600,433=>600,434=>600,435=>600,436=>600,437=>600,438=>600,439=>600,440=>600,441=>600,442=>600,443=>600,444=>600,445=>600,446=>600,447=>600,448=>600,449=>600,450=>600,451=>600,452=>600,453=>600,454=>600,455=>600,456=>600,457=>600,458=>600,459=>600,460=>600,461=>600,462=>600,463=>600,464=>600,465=>600,466=>600,467=>600,468=>600,469=>600,470=>600,471=>600,472=>600,473=>600,474=>600,475=>600,476=>600,477=>600,478=>600,479=>600,480=>600,481=>600,482=>600,483=>600,484=>600,485=>600,486=>600,487=>600,488=>600,489=>600,490=>600,491=>600,492=>600,493=>600,494=>600,495=>600,496=>600,497=>600,498=>600,499=>600,500=>600,501=>600,502=>600,503=>600,504=>600,505=>600,506=>600,507=>600,508=>600,509=>600,510=>600,511=>600,512=>600,513=>600,514=>600,515=>600,516=>600,517=>600,518=>600,519=>600,520=>600,521=>600,522=>600,523=>600,524=>600,525=>600,526=>600,527=>600,528=>600,529=>600,530=>600,531=>600,532=>600,533=>600,534=>600,535=>600,536=>600,537=>600,538=>600,539=>600,540=>600,541=>600,542=>600,543=>600,544=>600,548=>600,549=>600,550=>600,551=>600,552=>600,553=>600,554=>600,555=>600,556=>600,557=>600,558=>600,559=>600,560=>600,561=>600,562=>600,563=>600,567=>600,592=>600,593=>600,594=>600,595=>600,596=>600,597=>600,598=>600,599=>600,600=>600,601=>600,602=>600,603=>600,604=>600,605=>600,606=>600,607=>600,608=>600,609=>600,610=>600,611=>600,612=>600,613=>600,614=>600,615=>600,616=>600,617=>600,618=>600,619=>600,620=>600,621=>600,622=>600,623=>600,624=>600,625=>600,626=>600,627=>600,628=>600,629=>600,630=>600,631=>600,632=>600,633=>600,634=>600,635=>600,636=>600,637=>600,638=>600,639=>600,640=>600,641=>600,642=>600,643=>600,644=>600,645=>600,646=>600,647=>600,648=>600,649=>600,650=>600,651=>600,652=>600,653=>600,654=>600,655=>600,656=>600,657=>600,658=>600,659=>600,660=>600,661=>600,662=>600,663=>600,664=>600,665=>600,666=>600,667=>600,668=>600,669=>600,670=>600,671=>600,672=>600,673=>600,674=>600,675=>600,676=>600,677=>600,678=>600,679=>600,680=>600,681=>600,682=>600,683=>600,684=>600,685=>600,686=>600,687=>600,688=>600,689=>600,690=>600,691=>600,692=>600,693=>600,694=>600,695=>600,696=>600,697=>600,698=>600,699=>600,700=>600,701=>600,702=>600,703=>600,704=>600,705=>600,706=>600,707=>600,708=>600,709=>600,710=>600,711=>600,712=>600,713=>600,714=>600,715=>600,716=>600,717=>600,718=>600,719=>600,720=>600,721=>600,722=>600,723=>600,724=>600,725=>600,726=>600,727=>600,728=>600,729=>600,730=>600,731=>600,732=>600,733=>600,734=>600,735=>600,736=>600,737=>600,738=>600,739=>600,740=>600,741=>600,742=>600,743=>600,744=>600,745=>600,746=>600,747=>600,748=>600,749=>600,750=>600,751=>600,752=>600,753=>600,754=>600,755=>600,756=>600,757=>600,758=>600,759=>600,760=>600,761=>600,762=>600,763=>600,764=>600,765=>600,766=>600,767=>600,768=>600,769=>600,770=>600,771=>600,772=>600,773=>600,774=>600,775=>600,776=>600,777=>600,778=>600,779=>600,780=>600,781=>600,782=>600,783=>600,784=>600,785=>600,786=>600,787=>600,788=>600,789=>600,790=>600,791=>600,792=>600,793=>600,794=>600,795=>600,796=>600,797=>600,798=>600,799=>600,800=>600,801=>600,802=>600,803=>600,804=>600,805=>600,806=>600,807=>600,808=>600,809=>600,810=>600,811=>600,812=>600,813=>600,814=>600,815=>600,816=>600,817=>600,818=>600,819=>600,820=>600,821=>600,822=>600,823=>600,824=>600,825=>600,826=>600,827=>600,828=>600,829=>600,830=>600,831=>600,832=>600,833=>600,834=>600,835=>600,836=>600,837=>600,838=>600,839=>600,840=>600,841=>600,842=>600,843=>600,844=>600,845=>600,846=>600,847=>600,848=>600,849=>600,850=>600,851=>600,852=>600,853=>600,854=>600,855=>600,856=>600,857=>600,858=>600,859=>600,860=>600,861=>600,862=>600,863=>600,864=>600,865=>600,866=>600,867=>600,868=>600,869=>600,870=>600,871=>600,872=>600,873=>600,874=>600,875=>600,876=>600,877=>600,878=>600,879=>600,884=>600,885=>600,890=>600,894=>600,900=>600,901=>600,902=>600,903=>600,904=>600,905=>600,906=>600,908=>600,910=>600,911=>600,912=>600,913=>600,914=>600,915=>600,916=>600,917=>600,918=>600,919=>600,920=>600,921=>600,922=>600,923=>600,924=>600,925=>600,926=>600,927=>600,928=>600,929=>600,931=>600,932=>600,933=>600,934=>600,935=>600,936=>600,937=>600,938=>600,939=>600,940=>600,941=>600,942=>600,943=>600,944=>600,945=>600,946=>600,947=>600,948=>600,949=>600,950=>600,951=>600,952=>600,953=>600,954=>600,955=>600,956=>600,957=>600,958=>600,959=>600,960=>600,961=>600,962=>600,963=>600,964=>600,965=>600,966=>600,967=>600,968=>600,969=>600,970=>600,971=>600,972=>600,973=>600,974=>600,976=>600,977=>600,978=>600,979=>600,980=>600,981=>600,982=>600,986=>600,987=>600,988=>600,989=>600,1008=>600,1009=>600,1012=>600,1013=>600,1024=>600,1025=>600,1026=>600,1027=>600,1028=>600,1029=>600,1030=>600,1031=>600,1032=>600,1033=>600,1034=>600,1035=>600,1036=>600,1037=>600,1038=>600,1039=>600,1040=>600,1041=>600,1042=>600,1043=>600,1044=>600,1045=>600,1046=>600,1047=>600,1048=>600,1049=>600,1050=>600,1051=>600,1052=>600,1053=>600,1054=>600,1055=>600,1056=>600,1057=>600,1058=>600,1059=>600,1060=>600,1061=>600,1062=>600,1063=>600,1064=>600,1065=>600,1066=>600,1067=>600,1068=>600,1069=>600,1070=>600,1071=>600,1072=>600,1073=>600,1074=>600,1075=>600,1076=>600,1077=>600,1078=>600,1079=>600,1080=>600,1081=>600,1082=>600,1083=>600,1084=>600,1085=>600,1086=>600,1087=>600,1088=>600,1089=>600,1090=>600,1091=>600,1092=>600,1093=>600,1094=>600,1095=>600,1096=>600,1097=>600,1098=>600,1099=>600,1100=>600,1101=>600,1102=>600,1103=>600,1104=>600,1105=>600,1106=>600,1107=>600,1108=>600,1109=>600,1110=>600,1111=>600,1112=>600,1113=>600,1114=>600,1115=>600,1116=>600,1117=>600,1118=>600,1119=>600,1120=>600,1121=>600,1122=>600,1123=>600,1124=>600,1125=>600,1126=>600,1127=>600,1128=>600,1129=>600,1130=>600,1131=>600,1132=>600,1133=>600,1134=>600,1135=>600,1136=>600,1137=>600,1138=>600,1139=>600,1140=>600,1141=>600,1142=>600,1143=>600,1144=>600,1145=>600,1146=>600,1147=>600,1148=>600,1149=>600,1150=>600,1151=>600,1155=>600,1156=>600,1157=>600,1158=>600,1159=>600,1162=>600,1163=>600,1164=>600,1165=>600,1166=>600,1167=>600,1168=>600,1169=>600,1170=>600,1171=>600,1172=>600,1173=>600,1174=>600,1175=>600,1176=>600,1177=>600,1178=>600,1179=>600,1180=>600,1181=>600,1182=>600,1183=>600,1184=>600,1185=>600,1186=>600,1187=>600,1188=>600,1189=>600,1190=>600,1191=>600,1192=>600,1193=>600,1194=>600,1195=>600,1196=>600,1197=>600,1198=>600,1199=>600,1200=>600,1201=>600,1202=>600,1203=>600,1204=>600,1205=>600,1206=>600,1207=>600,1208=>600,1209=>600,1210=>600,1211=>600,1212=>600,1213=>600,1214=>600,1215=>600,1216=>600,1217=>600,1218=>600,1219=>600,1220=>600,1221=>600,1222=>600,1223=>600,1224=>600,1225=>600,1226=>600,1227=>600,1228=>600,1229=>600,1230=>600,1231=>600,1232=>600,1233=>600,1234=>600,1235=>600,1236=>600,1237=>600,1238=>600,1239=>600,1240=>600,1241=>600,1242=>600,1243=>600,1244=>600,1245=>600,1246=>600,1247=>600,1248=>600,1249=>600,1250=>600,1251=>600,1252=>600,1253=>600,1254=>600,1255=>600,1256=>600,1257=>600,1258=>600,1259=>600,1260=>600,1261=>600,1262=>600,1263=>600,1264=>600,1265=>600,1266=>600,1267=>600,1268=>600,1269=>600,1270=>600,1271=>600,1272=>600,1273=>600,1274=>600,1275=>600,1276=>600,1277=>600,1278=>600,1279=>600,1296=>600,1297=>600,1298=>600,1299=>600,1306=>600,1307=>600,1308=>600,1309=>600,1310=>600,1311=>600,1316=>600,1317=>600,1318=>600,1319=>600,1329=>600,1330=>600,1331=>600,1332=>600,1333=>600,1334=>600,1335=>600,1336=>600,1337=>600,1338=>600,1339=>600,1340=>600,1341=>600,1342=>600,1343=>600,1344=>600,1345=>600,1346=>600,1347=>600,1348=>600,1349=>600,1350=>600,1351=>600,1352=>600,1353=>600,1354=>600,1355=>600,1356=>600,1357=>600,1358=>600,1359=>600,1360=>600,1361=>600,1362=>600,1363=>600,1364=>600,1365=>600,1366=>600,1369=>600,1370=>600,1371=>600,1372=>600,1373=>600,1374=>600,1375=>600,1377=>600,1378=>600,1379=>600,1380=>600,1381=>600,1382=>600,1383=>600,1384=>600,1385=>600,1386=>600,1387=>600,1388=>600,1389=>600,1390=>600,1391=>600,1392=>600,1393=>600,1394=>600,1395=>600,1396=>600,1397=>600,1398=>600,1399=>600,1400=>600,1401=>600,1402=>600,1403=>600,1404=>600,1405=>600,1406=>600,1407=>600,1408=>600,1409=>600,1410=>600,1411=>600,1412=>600,1413=>600,1414=>600,1415=>600,1417=>600,1418=>600,1423=>600,1456=>600,1457=>600,1458=>600,1459=>600,1460=>600,1461=>600,1462=>600,1463=>600,1464=>600,1465=>600,1466=>600,1467=>600,1468=>600,1469=>600,1470=>600,1471=>600,1472=>600,1473=>600,1474=>600,1475=>600,1476=>600,1477=>600,1478=>600,1479=>600,1488=>600,1489=>600,1490=>600,1491=>600,1492=>600,1493=>600,1494=>600,1495=>600,1496=>600,1497=>600,1498=>600,1499=>600,1500=>600,1501=>600,1502=>600,1503=>600,1504=>600,1505=>600,1506=>600,1507=>600,1508=>600,1509=>600,1510=>600,1511=>600,1512=>600,1513=>600,1514=>600,1520=>600,1521=>600,1522=>600,1523=>600,1524=>600,1542=>600,1543=>600,1544=>600,1545=>600,1546=>600,1547=>600,1548=>600,1549=>600,1550=>600,1551=>600,1563=>600,1566=>600,1567=>600,1568=>600,1569=>600,1570=>600,1571=>600,1572=>600,1573=>600,1574=>600,1575=>600,1576=>600,1577=>600,1578=>600,1579=>600,1580=>600,1581=>600,1582=>600,1583=>600,1584=>600,1585=>600,1586=>600,1587=>600,1588=>600,1589=>600,1590=>600,1591=>600,1592=>600,1593=>600,1594=>600,1595=>600,1596=>600,1597=>600,1598=>600,1599=>600,1600=>600,1601=>600,1602=>600,1603=>600,1604=>600,1605=>600,1606=>600,1607=>600,1608=>600,1609=>600,1610=>600,1611=>600,1612=>600,1613=>600,1614=>600,1615=>600,1616=>600,1617=>600,1618=>600,1619=>600,1620=>600,1621=>600,1622=>600,1623=>600,1625=>600,1626=>600,1627=>600,1628=>600,1629=>600,1630=>600,1631=>600,1632=>600,1633=>600,1634=>600,1635=>600,1636=>600,1637=>600,1638=>600,1639=>600,1640=>600,1641=>600,1642=>600,1643=>600,1644=>600,1645=>600,1646=>600,1647=>600,1648=>600,1649=>600,1650=>600,1651=>600,1652=>600,1653=>600,1654=>600,1655=>600,1656=>600,1657=>600,1658=>600,1659=>600,1660=>600,1661=>600,1662=>600,1663=>600,1664=>600,1665=>600,1666=>600,1667=>600,1668=>600,1669=>600,1670=>600,1671=>600,1672=>600,1673=>600,1674=>600,1675=>600,1676=>600,1677=>600,1678=>600,1679=>600,1680=>600,1681=>600,1682=>600,1683=>600,1684=>600,1685=>600,1686=>600,1687=>600,1688=>600,1689=>600,1690=>600,1691=>600,1692=>600,1693=>600,1694=>600,1695=>600,1696=>600,1697=>600,1698=>600,1699=>600,1700=>600,1701=>600,1702=>600,1703=>600,1704=>600,1705=>600,1706=>600,1707=>600,1708=>600,1709=>600,1710=>600,1711=>600,1712=>600,1713=>600,1714=>600,1715=>600,1716=>600,1717=>600,1718=>600,1719=>600,1720=>600,1721=>600,1722=>600,1723=>600,1724=>600,1725=>600,1726=>600,1727=>600,1728=>600,1729=>600,1730=>600,1731=>600,1732=>600,1733=>600,1734=>600,1735=>600,1736=>600,1737=>600,1738=>600,1739=>600,1740=>600,1741=>600,1742=>600,1743=>600,1744=>600,1745=>600,1746=>600,1747=>600,1748=>600,1749=>600,1774=>600,1775=>600,1776=>600,1777=>600,1778=>600,1779=>600,1780=>600,1781=>600,1782=>600,1783=>600,1784=>600,1785=>600,1786=>600,1787=>600,1788=>600,1789=>600,1790=>600,1791=>600,4304=>600,4305=>600,4306=>600,4307=>600,4308=>600,4309=>600,4310=>600,4311=>600,4312=>600,4313=>600,4314=>600,4315=>600,4316=>600,4317=>600,4318=>600,4319=>600,4320=>600,4321=>600,4322=>600,4323=>600,4324=>600,4325=>600,4326=>600,4327=>600,4328=>600,4329=>600,4330=>600,4331=>600,4332=>600,4333=>600,4334=>600,4335=>600,4336=>600,4337=>600,4338=>600,4339=>600,4340=>600,4341=>600,4345=>600,4347=>600,4348=>600,5024=>600,5025=>600,5026=>600,5027=>600,5028=>600,5029=>600,5030=>600,5031=>600,5032=>600,5033=>600,5034=>600,5035=>600,5036=>600,5037=>600,5038=>600,5039=>600,5040=>600,5041=>600,5042=>600,5043=>600,5044=>600,5045=>600,5046=>600,5047=>600,5048=>600,5049=>600,5050=>600,5051=>600,5052=>600,5053=>600,5054=>600,5055=>600,5056=>600,5057=>600,5058=>600,5059=>600,5060=>600,5061=>600,5062=>600,5063=>600,5064=>600,5065=>600,5066=>600,5067=>600,5068=>600,5069=>600,5070=>600,5071=>600,5072=>600,5073=>600,5074=>600,5075=>600,5076=>600,5077=>600,5078=>600,5079=>600,5080=>600,5081=>600,5082=>600,5083=>600,5084=>600,5085=>600,5086=>600,5087=>600,5088=>600,5089=>600,5090=>600,5091=>600,5092=>600,5093=>600,5094=>600,5095=>600,5096=>600,5097=>600,5098=>600,5099=>600,5100=>600,5101=>600,5102=>600,5103=>600,5104=>600,5105=>600,5106=>600,5107=>600,5108=>600,5792=>600,5793=>600,5794=>600,5795=>600,5796=>600,5797=>600,5798=>600,5799=>600,5800=>600,5801=>600,5802=>600,5803=>600,5804=>600,5805=>600,5806=>600,5807=>600,5808=>600,5809=>600,5810=>600,5811=>600,5812=>600,5813=>600,5814=>600,5815=>600,5816=>600,5817=>600,5818=>600,5819=>600,5820=>600,5821=>600,5822=>600,5823=>600,5824=>600,5825=>600,5826=>600,5827=>600,5828=>600,5829=>600,5830=>600,5831=>600,5832=>600,5833=>600,5834=>600,5835=>600,5836=>600,5837=>600,5838=>600,5839=>600,5840=>600,5841=>600,5842=>600,5843=>600,5844=>600,5845=>600,5846=>600,5847=>600,5848=>600,5849=>600,5850=>600,5851=>600,5852=>600,5853=>600,5854=>600,5855=>600,5856=>600,5857=>600,5858=>600,5859=>600,5860=>600,5861=>600,5862=>600,5863=>600,5864=>600,5865=>600,5866=>600,5867=>600,5868=>600,5869=>600,5870=>600,5871=>600,5872=>600,7680=>600,7681=>600,7682=>600,7683=>600,7684=>600,7685=>600,7686=>600,7687=>600,7688=>600,7689=>600,7690=>600,7691=>600,7692=>600,7693=>600,7694=>600,7695=>600,7696=>600,7697=>600,7698=>600,7699=>600,7700=>600,7701=>600,7702=>600,7703=>600,7704=>600,7705=>600,7706=>600,7707=>600,7708=>600,7709=>600,7710=>600,7711=>600,7712=>600,7713=>600,7714=>600,7715=>600,7716=>600,7717=>600,7718=>600,7719=>600,7720=>600,7721=>600,7722=>600,7723=>600,7724=>600,7725=>600,7726=>600,7727=>600,7728=>600,7729=>600,7730=>600,7731=>600,7732=>600,7733=>600,7734=>600,7735=>600,7736=>600,7737=>600,7738=>600,7739=>600,7740=>600,7741=>600,7742=>600,7743=>600,7744=>600,7745=>600,7746=>600,7747=>600,7748=>600,7749=>600,7750=>600,7751=>600,7752=>600,7753=>600,7754=>600,7755=>600,7756=>600,7757=>600,7758=>600,7759=>600,7760=>600,7761=>600,7762=>600,7763=>600,7764=>600,7765=>600,7766=>600,7767=>600,7768=>600,7769=>600,7770=>600,7771=>600,7772=>600,7773=>600,7774=>600,7775=>600,7776=>600,7777=>600,7778=>600,7779=>600,7780=>600,7781=>600,7782=>600,7783=>600,7784=>600,7785=>600,7786=>600,7787=>600,7788=>600,7789=>600,7790=>600,7791=>600,7792=>600,7793=>600,7794=>600,7795=>600,7796=>600,7797=>600,7798=>600,7799=>600,7800=>600,7801=>600,7802=>600,7803=>600,7804=>600,7805=>600,7806=>600,7807=>600,7808=>600,7809=>600,7810=>600,7811=>600,7812=>600,7813=>600,7814=>600,7815=>600,7816=>600,7817=>600,7818=>600,7819=>600,7820=>600,7821=>600,7822=>600,7823=>600,7824=>600,7825=>600,7826=>600,7827=>600,7828=>600,7829=>600,7830=>600,7831=>600,7832=>600,7833=>600,7834=>600,7835=>600,7840=>600,7841=>600,7842=>600,7843=>600,7844=>600,7845=>600,7846=>600,7847=>600,7848=>600,7849=>600,7850=>600,7851=>600,7852=>600,7853=>600,7854=>600,7855=>600,7856=>600,7857=>600,7858=>600,7859=>600,7860=>600,7861=>600,7862=>600,7863=>600,7864=>600,7865=>600,7866=>600,7867=>600,7868=>600,7869=>600,7870=>600,7871=>600,7872=>600,7873=>600,7874=>600,7875=>600,7876=>600,7877=>600,7878=>600,7879=>600,7880=>600,7881=>600,7882=>600,7883=>600,7884=>600,7885=>600,7886=>600,7887=>600,7888=>600,7889=>600,7890=>600,7891=>600,7892=>600,7893=>600,7894=>600,7895=>600,7896=>600,7897=>600,7898=>600,7899=>600,7900=>600,7901=>600,7902=>600,7903=>600,7904=>600,7905=>600,7906=>600,7907=>600,7908=>600,7909=>600,7910=>600,7911=>600,7912=>600,7913=>600,7914=>600,7915=>600,7916=>600,7917=>600,7918=>600,7919=>600,7920=>600,7921=>600,7922=>600,7923=>600,7924=>600,7925=>600,7926=>600,7927=>600,7928=>600,7929=>600,7936=>600,7937=>600,7938=>600,7939=>600,7940=>600,7941=>600,7942=>600,7943=>600,7944=>600,7945=>600,7946=>600,7947=>600,7948=>600,7949=>600,7950=>600,7951=>600,7952=>600,7953=>600,7954=>600,7955=>600,7956=>600,7957=>600,7960=>600,7961=>600,7962=>600,7963=>600,7964=>600,7965=>600,7968=>600,7969=>600,7970=>600,7971=>600,7972=>600,7973=>600,7974=>600,7975=>600,7976=>600,7977=>600,7978=>600,7979=>600,7980=>600,7981=>600,7982=>600,7983=>600,7984=>600,7985=>600,7986=>600,7987=>600,7988=>600,7989=>600,7990=>600,7991=>600,7992=>600,7993=>600,7994=>600,7995=>600,7996=>600,7997=>600,7998=>600,7999=>600,8000=>600,8001=>600,8002=>600,8003=>600,8004=>600,8005=>600,8008=>600,8009=>600,8010=>600,8011=>600,8012=>600,8013=>600,8016=>600,8017=>600,8018=>600,8019=>600,8020=>600,8021=>600,8022=>600,8023=>600,8025=>600,8027=>600,8029=>600,8031=>600,8032=>600,8033=>600,8034=>600,8035=>600,8036=>600,8037=>600,8038=>600,8039=>600,8040=>600,8041=>600,8042=>600,8043=>600,8044=>600,8045=>600,8046=>600,8047=>600,8048=>600,8049=>600,8050=>600,8051=>600,8052=>600,8053=>600,8054=>600,8055=>600,8056=>600,8057=>600,8058=>600,8059=>600,8060=>600,8061=>600,8064=>600,8065=>600,8066=>600,8067=>600,8068=>600,8069=>600,8070=>600,8071=>600,8072=>600,8073=>600,8074=>600,8075=>600,8076=>600,8077=>600,8078=>600,8079=>600,8080=>600,8081=>600,8082=>600,8083=>600,8084=>600,8085=>600,8086=>600,8087=>600,8088=>600,8089=>600,8090=>600,8091=>600,8092=>600,8093=>600,8094=>600,8095=>600,8096=>600,8097=>600,8098=>600,8099=>600,8100=>600,8101=>600,8102=>600,8103=>600,8104=>600,8105=>600,8106=>600,8107=>600,8108=>600,8109=>600,8110=>600,8111=>600,8112=>600,8113=>600,8114=>600,8115=>600,8116=>600,8118=>600,8119=>600,8120=>600,8121=>600,8122=>600,8123=>600,8124=>600,8125=>600,8126=>600,8127=>600,8128=>600,8129=>600,8130=>600,8131=>600,8132=>600,8134=>600,8135=>600,8136=>600,8137=>600,8138=>600,8139=>600,8140=>600,8141=>600,8142=>600,8143=>600,8144=>600,8145=>600,8146=>600,8147=>600,8150=>600,8151=>600,8152=>600,8153=>600,8154=>600,8155=>600,8157=>600,8158=>600,8159=>600,8160=>600,8161=>600,8162=>600,8163=>600,8164=>600,8165=>600,8166=>600,8167=>600,8168=>600,8169=>600,8170=>600,8171=>600,8172=>600,8173=>600,8174=>600,8175=>600,8178=>600,8179=>600,8180=>600,8182=>600,8183=>600,8184=>600,8185=>600,8186=>600,8187=>600,8188=>600,8189=>600,8190=>600,8192=>600,8193=>600,8194=>600,8195=>600,8196=>600,8197=>600,8198=>600,8199=>600,8200=>600,8201=>600,8202=>600,8203=>600,8204=>600,8205=>600,8206=>600,8207=>600,8208=>600,8209=>600,8210=>600,8211=>600,8212=>600,8213=>600,8214=>600,8215=>600,8216=>600,8217=>600,8218=>600,8219=>600,8220=>600,8221=>600,8222=>600,8223=>600,8224=>600,8225=>600,8226=>600,8227=>600,8228=>600,8229=>600,8230=>600,8231=>600,8232=>600,8233=>600,8234=>600,8235=>600,8236=>600,8237=>600,8238=>600,8239=>600,8240=>600,8241=>600,8242=>600,8243=>600,8244=>600,8245=>600,8246=>600,8247=>600,8248=>600,8249=>600,8250=>600,8251=>600,8252=>600,8253=>600,8254=>600,8255=>600,8256=>600,8257=>600,8258=>600,8259=>600,8260=>600,8261=>600,8262=>600,8263=>600,8264=>600,8265=>600,8266=>600,8267=>600,8268=>600,8269=>600,8270=>600,8271=>600,8272=>600,8273=>600,8274=>600,8275=>600,8276=>600,8277=>600,8278=>600,8279=>600,8280=>600,8281=>600,8282=>600,8283=>600,8284=>600,8285=>600,8286=>600,8287=>600,8288=>600,8289=>600,8290=>600,8291=>600,8292=>600,8304=>600,8305=>600,8308=>600,8309=>600,8310=>600,8311=>600,8312=>600,8313=>600,8314=>600,8315=>600,8316=>600,8317=>600,8318=>600,8319=>600,8320=>600,8321=>600,8322=>600,8323=>600,8324=>600,8325=>600,8326=>600,8327=>600,8328=>600,8329=>600,8330=>600,8331=>600,8332=>600,8333=>600,8334=>600,8336=>600,8337=>600,8338=>600,8339=>600,8340=>600,8353=>600,8354=>600,8355=>600,8356=>600,8357=>600,8358=>600,8359=>600,8360=>600,8361=>600,8362=>600,8363=>600,8364=>600,8365=>600,8366=>600,8367=>600,8368=>600,8369=>600,8370=>600,8371=>600,8372=>600,8373=>600,8376=>600,8377=>600,8400=>600,8401=>600,8402=>600,8406=>600,8407=>600,8411=>600,8412=>600,8413=>600,8414=>600,8415=>600,8416=>600,8417=>600,8418=>600,8419=>600,8421=>600,8422=>600,8424=>600,8426=>600,8427=>600,8428=>600,8429=>600,8430=>600,8431=>600,8448=>600,8449=>600,8450=>600,8451=>600,8452=>600,8453=>600,8454=>600,8455=>600,8456=>600,8457=>600,8461=>600,8462=>600,8463=>600,8464=>600,8465=>600,8466=>600,8467=>600,8468=>600,8469=>600,8470=>600,8471=>600,8472=>600,8473=>600,8474=>600,8476=>600,8477=>600,8478=>600,8480=>600,8481=>600,8482=>600,8484=>600,8486=>600,8487=>600,8489=>600,8490=>600,8491=>600,8494=>600,8498=>600,8501=>600,8502=>600,8503=>600,8504=>600,8505=>600,8506=>600,8507=>600,8513=>600,8514=>600,8515=>600,8516=>600,8523=>600,8525=>600,8526=>600,8531=>600,8532=>600,8533=>600,8534=>600,8535=>600,8536=>600,8537=>600,8538=>600,8539=>600,8540=>600,8541=>600,8542=>600,8543=>600,8544=>600,8545=>600,8546=>600,8547=>600,8548=>600,8549=>600,8550=>600,8551=>600,8552=>600,8553=>600,8554=>600,8555=>600,8556=>600,8557=>600,8558=>600,8559=>600,8560=>600,8561=>600,8562=>600,8563=>600,8564=>600,8565=>600,8566=>600,8567=>600,8568=>600,8569=>600,8570=>600,8571=>600,8572=>600,8573=>600,8574=>600,8575=>600,8592=>600,8593=>600,8594=>600,8595=>600,8596=>600,8597=>600,8598=>600,8599=>600,8600=>600,8601=>600,8602=>600,8603=>600,8604=>600,8605=>600,8606=>600,8607=>600,8608=>600,8609=>600,8610=>600,8611=>600,8612=>600,8613=>600,8614=>600,8615=>600,8616=>600,8617=>600,8618=>600,8619=>600,8620=>600,8621=>600,8622=>600,8623=>600,8624=>600,8625=>600,8626=>600,8627=>600,8628=>600,8629=>600,8630=>600,8631=>600,8632=>600,8633=>600,8634=>600,8635=>600,8636=>600,8637=>600,8638=>600,8639=>600,8640=>600,8641=>600,8642=>600,8643=>600,8644=>600,8645=>600,8646=>600,8647=>600,8648=>600,8649=>600,8650=>600,8651=>600,8652=>600,8653=>600,8654=>600,8655=>600,8656=>600,8657=>600,8658=>600,8659=>600,8660=>600,8661=>600,8668=>600,8669=>600,8678=>600,8679=>600,8680=>600,8681=>600,8691=>600,8704=>600,8705=>600,8706=>600,8707=>600,8708=>600,8709=>600,8710=>600,8711=>600,8712=>600,8713=>600,8714=>600,8715=>600,8716=>600,8717=>600,8718=>600,8719=>600,8720=>600,8721=>600,8722=>600,8723=>600,8724=>600,8725=>600,8726=>600,8727=>600,8728=>600,8729=>600,8730=>600,8731=>600,8732=>600,8733=>600,8734=>600,8735=>600,8736=>600,8737=>600,8738=>600,8739=>600,8740=>600,8741=>600,8742=>600,8743=>600,8744=>600,8745=>600,8746=>600,8747=>600,8748=>600,8749=>600,8750=>600,8751=>600,8752=>600,8753=>600,8754=>600,8755=>600,8756=>600,8757=>600,8758=>600,8759=>600,8760=>600,8761=>600,8762=>600,8763=>600,8764=>600,8765=>600,8766=>600,8767=>600,8768=>600,8769=>600,8770=>600,8771=>600,8772=>600,8773=>600,8774=>600,8775=>600,8776=>600,8777=>600,8778=>600,8779=>600,8780=>600,8781=>600,8782=>600,8783=>600,8784=>600,8785=>600,8786=>600,8787=>600,8788=>600,8789=>600,8790=>600,8791=>600,8792=>600,8793=>600,8794=>600,8795=>600,8796=>600,8797=>600,8798=>600,8799=>600,8800=>600,8801=>600,8802=>600,8803=>600,8804=>600,8805=>600,8806=>600,8807=>600,8808=>600,8809=>600,8810=>600,8811=>600,8812=>600,8813=>600,8814=>600,8815=>600,8816=>600,8817=>600,8818=>600,8819=>600,8820=>600,8821=>600,8822=>600,8823=>600,8824=>600,8825=>600,8826=>600,8827=>600,8828=>600,8829=>600,8830=>600,8831=>600,8832=>600,8833=>600,8834=>600,8835=>600,8836=>600,8837=>600,8838=>600,8839=>600,8840=>600,8841=>600,8842=>600,8843=>600,8844=>600,8845=>600,8846=>600,8847=>600,8848=>600,8849=>600,8850=>600,8851=>600,8852=>600,8853=>600,8854=>600,8855=>600,8856=>600,8857=>600,8858=>600,8859=>600,8860=>600,8861=>600,8862=>600,8863=>600,8864=>600,8865=>600,8866=>600,8867=>600,8868=>600,8869=>600,8870=>600,8871=>600,8872=>600,8873=>600,8874=>600,8875=>600,8876=>600,8877=>600,8878=>600,8879=>600,8880=>600,8881=>600,8882=>600,8883=>600,8884=>600,8885=>600,8886=>600,8887=>600,8888=>600,8889=>600,8890=>600,8891=>600,8892=>600,8893=>600,8894=>600,8895=>600,8896=>600,8897=>600,8898=>600,8899=>600,8900=>600,8901=>600,8902=>600,8903=>600,8904=>600,8905=>600,8906=>600,8907=>600,8908=>600,8909=>600,8910=>600,8911=>600,8912=>600,8913=>600,8914=>600,8915=>600,8916=>600,8917=>600,8918=>600,8919=>600,8920=>600,8921=>600,8922=>600,8923=>600,8924=>600,8925=>600,8926=>600,8927=>600,8928=>600,8929=>600,8930=>600,8931=>600,8932=>600,8933=>600,8934=>600,8935=>600,8936=>600,8937=>600,8938=>600,8939=>600,8940=>600,8941=>600,8942=>600,8943=>600,8944=>600,8945=>600,8960=>600,8962=>600,8963=>600,8964=>600,8965=>600,8966=>600,8968=>600,8969=>600,8970=>600,8971=>600,8972=>600,8973=>600,8974=>600,8975=>600,8976=>600,8978=>600,8980=>600,8981=>600,8984=>600,8985=>600,8988=>600,8989=>600,8990=>600,8991=>600,8992=>600,8993=>600,8994=>600,8995=>600,8996=>600,8997=>600,8998=>600,8999=>600,9001=>600,9002=>600,9003=>600,9004=>600,9014=>600,9015=>600,9016=>600,9017=>600,9018=>600,9019=>600,9020=>600,9021=>600,9022=>600,9023=>600,9024=>600,9025=>600,9026=>600,9027=>600,9028=>600,9029=>600,9030=>600,9031=>600,9032=>600,9033=>600,9034=>600,9035=>600,9036=>600,9037=>600,9038=>600,9039=>600,9040=>600,9041=>600,9042=>600,9043=>600,9044=>600,9045=>600,9046=>600,9047=>600,9048=>600,9049=>600,9050=>600,9051=>600,9052=>600,9053=>600,9054=>600,9055=>600,9056=>600,9057=>600,9058=>600,9059=>600,9060=>600,9061=>600,9062=>600,9063=>600,9064=>600,9065=>600,9066=>600,9067=>600,9068=>600,9069=>600,9070=>600,9071=>600,9072=>600,9073=>600,9074=>600,9075=>600,9076=>600,9077=>600,9078=>600,9079=>600,9080=>600,9081=>600,9082=>600,9084=>600,9085=>600,9086=>600,9087=>600,9088=>600,9089=>600,9090=>600,9091=>600,9092=>600,9093=>600,9094=>600,9095=>600,9096=>600,9097=>600,9098=>600,9099=>600,9100=>600,9101=>600,9102=>600,9103=>600,9104=>600,9105=>600,9106=>600,9107=>600,9108=>600,9109=>600,9110=>600,9111=>600,9112=>600,9113=>600,9114=>600,9115=>600,9116=>600,9117=>600,9118=>600,9119=>600,9120=>600,9121=>600,9122=>600,9123=>600,9124=>600,9125=>600,9126=>600,9127=>600,9128=>600,9129=>600,9130=>600,9131=>600,9132=>600,9133=>600,9134=>600,9135=>600,9136=>600,9137=>600,9138=>600,9139=>600,9140=>600,9141=>600,9142=>600,9143=>600,9146=>600,9147=>600,9148=>600,9149=>600,9150=>600,9151=>600,9152=>600,9153=>600,9154=>600,9155=>600,9156=>600,9157=>600,9158=>600,9159=>600,9160=>600,9161=>600,9162=>600,9163=>600,9164=>600,9165=>600,9166=>600,9167=>600,9178=>600,9179=>600,9182=>600,9183=>600,9186=>600,9187=>600,9188=>600,9189=>600,9190=>600,9216=>600,9217=>600,9218=>600,9219=>600,9220=>600,9221=>600,9222=>600,9223=>600,9224=>600,9225=>600,9226=>600,9227=>600,9228=>600,9229=>600,9230=>600,9231=>600,9232=>600,9233=>600,9234=>600,9235=>600,9236=>600,9237=>600,9238=>600,9239=>600,9240=>600,9241=>600,9242=>600,9243=>600,9244=>600,9245=>600,9246=>600,9247=>600,9248=>600,9249=>600,9250=>600,9251=>600,9252=>600,9253=>600,9254=>600,9280=>600,9281=>600,9282=>600,9283=>600,9284=>600,9285=>600,9286=>600,9287=>600,9288=>600,9289=>600,9290=>600,9312=>600,9313=>600,9314=>600,9315=>600,9316=>600,9317=>600,9318=>600,9319=>600,9320=>600,9321=>600,9472=>600,9473=>600,9474=>600,9475=>600,9476=>600,9477=>600,9478=>600,9479=>600,9480=>600,9481=>600,9482=>600,9483=>600,9484=>600,9485=>600,9486=>600,9487=>600,9488=>600,9489=>600,9490=>600,9491=>600,9492=>600,9493=>600,9494=>600,9495=>600,9496=>600,9497=>600,9498=>600,9499=>600,9500=>600,9501=>600,9502=>600,9503=>600,9504=>600,9505=>600,9506=>600,9507=>600,9508=>600,9509=>600,9510=>600,9511=>600,9512=>600,9513=>600,9514=>600,9515=>600,9516=>600,9517=>600,9518=>600,9519=>600,9520=>600,9521=>600,9522=>600,9523=>600,9524=>600,9525=>600,9526=>600,9527=>600,9528=>600,9529=>600,9530=>600,9531=>600,9532=>600,9533=>600,9534=>600,9535=>600,9536=>600,9537=>600,9538=>600,9539=>600,9540=>600,9541=>600,9542=>600,9543=>600,9544=>600,9545=>600,9546=>600,9547=>600,9548=>600,9549=>600,9550=>600,9551=>600,9552=>600,9553=>600,9554=>600,9555=>600,9556=>600,9557=>600,9558=>600,9559=>600,9560=>600,9561=>600,9562=>600,9563=>600,9564=>600,9565=>600,9566=>600,9567=>600,9568=>600,9569=>600,9570=>600,9571=>600,9572=>600,9573=>600,9574=>600,9575=>600,9576=>600,9577=>600,9578=>600,9579=>600,9580=>600,9581=>600,9582=>600,9583=>600,9584=>600,9585=>600,9586=>600,9587=>600,9588=>600,9589=>600,9590=>600,9591=>600,9592=>600,9593=>600,9594=>600,9595=>600,9596=>600,9597=>600,9598=>600,9599=>600,9600=>600,9601=>600,9602=>600,9603=>600,9604=>600,9605=>600,9606=>600,9607=>600,9608=>600,9609=>600,9610=>600,9611=>600,9612=>600,9613=>600,9614=>600,9615=>600,9616=>600,9617=>600,9618=>600,9619=>600,9620=>600,9621=>600,9622=>600,9623=>600,9624=>600,9625=>600,9626=>600,9627=>600,9628=>600,9629=>600,9630=>600,9631=>600,9632=>600,9633=>600,9634=>600,9635=>600,9636=>600,9637=>600,9638=>600,9639=>600,9640=>600,9641=>600,9642=>600,9643=>600,9644=>600,9645=>600,9646=>600,9647=>600,9648=>600,9649=>600,9650=>600,9651=>600,9652=>600,9653=>600,9654=>600,9655=>600,9656=>600,9657=>600,9658=>600,9659=>600,9660=>600,9661=>600,9662=>600,9663=>600,9664=>600,9665=>600,9666=>600,9667=>600,9668=>600,9669=>600,9670=>600,9671=>600,9672=>600,9673=>600,9674=>600,9675=>600,9676=>600,9677=>600,9678=>600,9679=>600,9680=>600,9681=>600,9682=>600,9683=>600,9684=>600,9685=>600,9686=>600,9687=>600,9688=>600,9689=>600,9690=>600,9691=>600,9692=>600,9693=>600,9694=>600,9695=>600,9696=>600,9697=>600,9698=>600,9699=>600,9700=>600,9701=>600,9702=>600,9703=>600,9704=>600,9705=>600,9706=>600,9707=>600,9708=>600,9709=>600,9710=>600,9711=>600,9712=>600,9713=>600,9714=>600,9715=>600,9716=>600,9717=>600,9718=>600,9719=>600,9720=>600,9721=>600,9722=>600,9723=>600,9724=>600,9725=>600,9726=>600,9727=>600,9728=>600,9729=>600,9730=>600,9731=>600,9732=>600,9733=>600,9734=>600,9735=>600,9736=>600,9737=>600,9744=>600,9745=>600,9746=>600,9747=>600,9748=>600,9754=>600,9755=>600,9756=>600,9757=>600,9758=>600,9759=>600,9766=>600,9767=>600,9768=>600,9769=>600,9774=>600,9775=>600,9776=>600,9777=>600,9778=>600,9779=>600,9780=>600,9781=>600,9782=>600,9783=>600,9784=>600,9785=>600,9786=>600,9787=>600,9788=>600,9789=>600,9790=>600,9791=>600,9792=>600,9793=>600,9794=>600,9795=>600,9796=>600,9797=>600,9798=>600,9799=>600,9800=>600,9801=>600,9802=>600,9803=>600,9804=>600,9805=>600,9806=>600,9807=>600,9808=>600,9809=>600,9810=>600,9811=>600,9824=>600,9825=>600,9826=>600,9827=>600,9828=>600,9829=>600,9830=>600,9831=>600,9833=>600,9834=>600,9835=>600,9836=>600,9837=>600,9838=>600,9839=>600,9856=>600,9857=>600,9858=>600,9859=>600,9860=>600,9861=>600,10176=>600,10177=>600,10178=>600,10179=>600,10180=>600,10181=>600,10182=>600,10183=>600,10184=>600,10185=>600,10186=>600,10188=>600,10192=>600,10193=>600,10194=>600,10195=>600,10196=>600,10197=>600,10198=>600,10199=>600,10212=>600,10213=>600,10214=>600,10215=>600,10216=>600,10217=>600,10218=>600,10219=>600,10226=>600,10227=>600,10229=>600,10230=>600,10231=>600,10232=>600,10233=>600,10234=>600,10235=>600,10236=>600,10240=>600,10241=>600,10242=>600,10243=>600,10244=>600,10245=>600,10246=>600,10247=>600,10248=>600,10249=>600,10250=>600,10251=>600,10252=>600,10253=>600,10254=>600,10255=>600,10256=>600,10257=>600,10258=>600,10259=>600,10260=>600,10261=>600,10262=>600,10263=>600,10264=>600,10265=>600,10266=>600,10267=>600,10268=>600,10269=>600,10270=>600,10271=>600,10272=>600,10273=>600,10274=>600,10275=>600,10276=>600,10277=>600,10278=>600,10279=>600,10280=>600,10281=>600,10282=>600,10283=>600,10284=>600,10285=>600,10286=>600,10287=>600,10288=>600,10289=>600,10290=>600,10291=>600,10292=>600,10293=>600,10294=>600,10295=>600,10296=>600,10297=>600,10298=>600,10299=>600,10300=>600,10301=>600,10302=>600,10303=>600,10304=>600,10305=>600,10306=>600,10307=>600,10308=>600,10309=>600,10310=>600,10311=>600,10312=>600,10313=>600,10314=>600,10315=>600,10316=>600,10317=>600,10318=>600,10319=>600,10320=>600,10321=>600,10322=>600,10323=>600,10324=>600,10325=>600,10326=>600,10327=>600,10328=>600,10329=>600,10330=>600,10331=>600,10332=>600,10333=>600,10334=>600,10335=>600,10336=>600,10337=>600,10338=>600,10339=>600,10340=>600,10341=>600,10342=>600,10343=>600,10344=>600,10345=>600,10346=>600,10347=>600,10348=>600,10349=>600,10350=>600,10351=>600,10352=>600,10353=>600,10354=>600,10355=>600,10356=>600,10357=>600,10358=>600,10359=>600,10360=>600,10361=>600,10362=>600,10363=>600,10364=>600,10365=>600,10366=>600,10367=>600,10368=>600,10369=>600,10370=>600,10371=>600,10372=>600,10373=>600,10374=>600,10375=>600,10376=>600,10377=>600,10378=>600,10379=>600,10380=>600,10381=>600,10382=>600,10383=>600,10384=>600,10385=>600,10386=>600,10387=>600,10388=>600,10389=>600,10390=>600,10391=>600,10392=>600,10393=>600,10394=>600,10395=>600,10396=>600,10397=>600,10398=>600,10399=>600,10400=>600,10401=>600,10402=>600,10403=>600,10404=>600,10405=>600,10406=>600,10407=>600,10408=>600,10409=>600,10410=>600,10411=>600,10412=>600,10413=>600,10414=>600,10415=>600,10416=>600,10417=>600,10418=>600,10419=>600,10420=>600,10421=>600,10422=>600,10423=>600,10424=>600,10425=>600,10426=>600,10427=>600,10428=>600,10429=>600,10430=>600,10431=>600,10432=>600,10433=>600,10434=>600,10435=>600,10436=>600,10437=>600,10438=>600,10439=>600,10440=>600,10441=>600,10442=>600,10443=>600,10444=>600,10445=>600,10446=>600,10447=>600,10448=>600,10449=>600,10450=>600,10451=>600,10452=>600,10453=>600,10454=>600,10455=>600,10456=>600,10457=>600,10458=>600,10459=>600,10460=>600,10461=>600,10462=>600,10463=>600,10464=>600,10465=>600,10466=>600,10467=>600,10468=>600,10469=>600,10470=>600,10471=>600,10472=>600,10473=>600,10474=>600,10475=>600,10476=>600,10477=>600,10478=>600,10479=>600,10480=>600,10481=>600,10482=>600,10483=>600,10484=>600,10485=>600,10486=>600,10487=>600,10488=>600,10489=>600,10490=>600,10491=>600,10492=>600,10493=>600,10494=>600,10495=>600,10752=>600,10753=>600,10754=>600,10755=>600,10756=>600,10757=>600,10758=>600,10781=>600,10815=>600,11008=>600,11009=>600,11010=>600,11011=>600,11012=>600,11013=>600,11014=>600,11015=>600,11016=>600,11017=>600,11018=>600,11019=>600,11020=>600,11021=>600,11026=>600,11027=>600,11028=>600,11029=>600,11030=>600,11031=>600,11032=>600,11033=>600,11035=>600,11036=>600,11037=>600,11038=>600,11039=>600,11040=>600,11041=>600,11042=>600,11043=>600,11044=>600,11045=>600,11046=>600,11047=>600,11048=>600,11049=>600,11050=>600,11051=>600,11091=>600,11092=>600,11798=>600,11799=>600,11800=>600,11802=>600,11803=>600,11806=>600,11807=>600,11816=>600,11817=>600,11818=>600,11819=>600,11820=>600,11821=>600,11822=>600,11824=>600,42888=>600,42889=>600,42890=>600,42891=>600,42892=>600,43264=>600,43265=>600,43266=>600,43267=>600,43268=>600,43269=>600,43270=>600,43271=>600,43272=>600,43273=>600,43274=>600,43275=>600,43276=>600,43277=>600,43278=>600,43279=>600,43280=>600,43281=>600,43282=>600,43283=>600,43284=>600,43285=>600,43286=>600,43287=>600,43288=>600,43289=>600,43290=>600,43291=>600,43292=>600,43293=>600,43294=>600,43295=>600,43296=>600,43297=>600,43298=>600,43299=>600,43300=>600,43301=>600,43302=>600,43303=>600,43304=>600,43305=>600,43306=>600,43307=>600,43308=>600,43309=>600,43310=>600,43311=>600,64256=>600,64257=>600,64258=>600,64259=>600,64260=>600,64261=>600,64285=>600,64286=>600,64287=>600,64288=>600,64289=>600,64290=>600,64291=>600,64292=>600,64293=>600,64294=>600,64295=>600,64296=>600,64297=>600,64298=>600,64299=>600,64300=>600,64301=>600,64302=>600,64303=>600,64304=>600,64305=>600,64306=>600,64307=>600,64308=>600,64309=>600,64310=>600,64312=>600,64313=>600,64314=>600,64315=>600,64316=>600,64318=>600,64320=>600,64321=>600,64323=>600,64324=>600,64326=>600,64327=>600,64328=>600,64329=>600,64330=>600,64331=>600,64332=>600,64333=>600,64334=>600,64335=>600,64336=>600,64337=>600,64338=>600,64339=>600,64340=>600,64341=>600,64342=>600,64343=>600,64344=>600,64345=>600,64346=>600,64347=>600,64348=>600,64349=>600,64350=>600,64351=>600,64352=>600,64353=>600,64354=>600,64355=>600,64356=>600,64357=>600,64358=>600,64359=>600,64360=>600,64361=>600,64362=>600,64363=>600,64364=>600,64365=>600,64366=>600,64367=>600,64368=>600,64369=>600,64370=>600,64371=>600,64372=>600,64373=>600,64374=>600,64375=>600,64376=>600,64377=>600,64378=>600,64379=>600,64380=>600,64381=>600,64382=>600,64383=>600,64384=>600,64385=>600,64386=>600,64387=>600,64388=>600,64389=>600,64390=>600,64391=>600,64392=>600,64393=>600,64394=>600,64395=>600,64396=>600,64397=>600,64398=>600,64399=>600,64400=>600,64401=>600,64402=>600,64403=>600,64404=>600,64405=>600,64406=>600,64407=>600,64408=>600,64409=>600,64410=>600,64411=>600,64412=>600,64413=>600,64414=>600,64415=>600,64416=>600,64417=>600,64418=>600,64419=>600,64420=>600,64421=>600,64422=>600,64423=>600,64424=>600,64425=>600,64426=>600,64427=>600,64428=>600,64429=>600,64430=>600,64431=>600,64432=>600,64433=>600,64434=>600,64435=>600,64436=>600,64437=>600,64438=>600,64439=>600,64440=>600,64441=>600,64442=>600,64443=>600,64444=>600,64445=>600,64446=>600,64448=>600,64449=>600,64467=>600,64468=>600,64469=>600,64470=>600,64471=>600,64472=>600,64473=>600,64474=>600,64475=>600,64476=>600,64477=>600,64478=>600,64479=>600,64480=>600,64481=>600,64482=>600,64483=>600,64484=>600,64485=>600,64486=>600,64487=>600,64488=>600,64489=>600,64508=>600,64509=>600,64510=>600,64511=>600,65136=>600,65137=>600,65138=>600,65139=>600,65140=>600,65142=>600,65143=>600,65144=>600,65145=>600,65146=>600,65147=>600,65148=>600,65149=>600,65150=>600,65151=>600,65152=>600,65153=>600,65154=>600,65155=>600,65156=>600,65157=>600,65158=>600,65159=>600,65160=>600,65161=>600,65162=>600,65163=>600,65164=>600,65165=>600,65166=>600,65167=>600,65168=>600,65169=>600,65170=>600,65171=>600,65172=>600,65173=>600,65174=>600,65175=>600,65176=>600,65177=>600,65178=>600,65179=>600,65180=>600,65181=>600,65182=>600,65183=>600,65184=>600,65185=>600,65186=>600,65187=>600,65188=>600,65189=>600,65190=>600,65191=>600,65192=>600,65193=>600,65194=>600,65195=>600,65196=>600,65197=>600,65198=>600,65199=>600,65200=>600,65201=>600,65202=>600,65203=>600,65204=>600,65205=>600,65206=>600,65207=>600,65208=>600,65209=>600,65210=>600,65211=>600,65212=>600,65213=>600,65214=>600,65215=>600,65216=>600,65217=>600,65218=>600,65219=>600,65220=>600,65221=>600,65222=>600,65223=>600,65224=>600,65225=>600,65226=>600,65227=>600,65228=>600,65229=>600,65230=>600,65231=>600,65232=>600,65233=>600,65234=>600,65235=>600,65236=>600,65237=>600,65238=>600,65239=>600,65240=>600,65241=>600,65242=>600,65243=>600,65244=>600,65245=>600,65246=>600,65247=>600,65248=>600,65249=>600,65250=>600,65251=>600,65252=>600,65253=>600,65254=>600,65255=>600,65256=>600,65257=>600,65258=>600,65259=>600,65260=>600,65261=>600,65262=>600,65263=>600,65264=>600,65265=>600,65266=>600,65267=>600,65268=>600,65269=>600,65270=>600,65271=>600,65272=>600,65273=>600,65274=>600,65275=>600,65276=>600,65279=>600,65529=>600,65530=>600,65531=>600,65532=>600,65533=>600,65535=>600); // --- EOF --- diff --git a/lib/tcpdf/fonts/freemono.z b/lib/tcpdf/fonts/freemono.z index 838e966810a3192f2c88a7c25d7fbae7440a1de5..0df804460ba152cd16d744a68821e8465556d787 100644 GIT binary patch literal 303175 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�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

                -YH~9h>1H#^d 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

                {sJ^a(&ICs5oaopUMMb+;88gnIjyugWLzTa`ITY2QjALkYzWy3#wkfbgYylA z^43Cm84C~l>xx`Ep6`*oO2U{qIgF^O!J1B1rk$_NzcntvER>0G_MQ^X(=1kiD$aWF zVH2Ms%ADm}DpZ_)$tm1Ch){_0lu#Rya`Hdt!^i)`UrQCrllZi!(axn5oYO9H?eRDG zi{mDYYfXHf3`WU!PFg0k_$?F6LYWeur-1XciZww+dP06?#?4|BebVeCUW}VXr}qk7 zS12(9GbJ!4D#V>{NKtuqSzZRqlScc0O_6q`Cf_qov{ZmGb8;B*e0eE_m6mBAr*a5P zD$|6s_mps+Rw?+-$A)9)KEA@ z-#f`x%!!uaHfOQF+-CSpUC~4Y&0!bzm(T?}sJ|Lj!fpQN&)a?ulpuIjv5t}1c~y>4 zjm#;l5$qMuVOZFf$HKM{=U7WhFj+ivXYxckKXoSV=jtp&$2_H>I0iG2ww-k1(@Q&J zbjs3Wp1ssPp~*@Q54K6RiF-fd1gK~nu=Xe*51G3lb(%9u>J>Od*d-cW)6nRhWq4wM z<4Wd+dR-;;n$=3IBLC;FQMHPjm9&{~%LFfEgfyn0zxF~fJ{c=i@-N-4<+wt}UtLAq zs-m4Z-Qr-*H&7=|!|mA;w^Me}jei^TiXm^AKh3%e^rJg96NC053Att6E-_-6%S46l zg1TLf8Ffo~k`(pUcvO&-QbS|eg5Oc>Ta%BSYKX`_JoPBSF_?b~M~P@*9J5&qPDR9+aN?{;Jr9!{vXPQHMy!0KNDCz_#f^wW zg9s-E&83FAxMeJ2CD?0Ji(r7XK$G*SIVS8h7E7n;oP%2CaLEpvAp+zJVHe{7-CV-6GO0jz@>n91A%of#IA+EXCdu#9|8;7L&fhV$#HH6eoHZ zl|qCNbBU~%aO)K3BArBlPNdKx{$#{k0Lq;HihWxci=r+R|4~rkuf0`4qDo2o&X%~H zDX#o4qSv190cnQ6c>Im&bvx2>+4{FbuMnl=yjsBT=h16=PW38am8S4Vw21v5G z07-7S$n?%WGg|8`VQSDgIZa}{qGl3Hr`PQk=l(5>+6{HP?P8PLtlLQ^_bJ5dY+Y^E zoi!_$%OI>9db6jn9-w+9|IzK4nJh^19b!7OjvovE5wk}A=Y(DwEIrfuZ)A4?y6cWGu#H&9FY9Ng4Vu znwn9!lrxLv=^X0jNI&*s-5%uTsF}bv7yCQsp@RS(ZXuzpiCsI64zWzENJYh*Z0W~Q zIX+CWZpILqxdc7sD0z#TiUjkbse?4!}pUQKp{LUXVz^5?Odc(*%)O|@__-!$>jPwrl9!k7+5t(Salcww^0`RG`=4{HugYiL2Bq^Zjs zs<@OafnoFX^{Tt1LAn#r?(_!9g@&nFcNc;Rqj2sv$s^~cE_Zv2&=gi)IFF^wNpvms zxtK<$!7@V+Wnpr<9bmCDl(mYmkZ?jy&fO>fcM)-_BKCtf-$<7i&fmas;VZWQ}6~NEran zu%1L@^pn>T55VFfI`SaKoE}pG5hO*Xf7ACgiVQ-^trdk;iRAS&`sXyq4#srAZhSla zQ{WVDjh74`3mgG<3GqoE$}3bZ`g_Xxh-LabCd-8NfzC4+!Gg#(Sn6wR*cK?ROAB<4 zY7C#rSWTxdu|x@$qUPEH7^z%dl;VltD_sLmtBb^AUl2_a3legW4%^ddTRNHNM}8jg z<81%~RR`dkfJ3xN2tg)%iEIghM@LS2O`*Qn$V)5qkwZ;ww2_g%A%0D(1I0c$7YScU#9 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 literal 161631 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 TS|8JKh#Wo6y1+{izDoUH#E+^F diff --git a/lib/tcpdf/fonts/freemonob.ctg.z b/lib/tcpdf/fonts/freemonob.ctg.z index dc56b7c02328e9754c7f6d237993e78aa567cf9b..703afc8987ba2b269681f6622ce62aa1849cc14a 100644 GIT binary patch literal 3970 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 Wyiw|k$&SIEAU$YLxOrII;lBWAwbbDN literal 3860 zcmciD`#%#5`v>s5rzhPJiV#8)VrDrXa=5dOj)jopEyOU2Fq>_un}r-_R8BEMLNjwV zcW%eYX|a_R#vFz@jj<6=KYU-$>-z_MU*GGe&rjFq`ssba@;Qviu^+B2$Ja54-Ug^a zkX$PP$}p5SY=Gi#1v6Y68MjmGBh?1Ccr|QWgZ2W_>JE`c++e_VCf6*M^U?!C3Cyx?^MSD|~a_`P%LdneKNw@DR-DuLjv8Qs5D#5mP6&eQk`LSp2j(}i0Xa$gj=Z(diI;t<(dQ||T@T+6b;RmCG>RTm~ zV;F&><&wkEp!1?7pY;Dqq+XV@R|&e9S~9Ai*h4jzbC3+WU{}(wpYV>V|HfV~NNunL z5M(%5+^nBI|K(pTS<=)C?zT2T8bJJ9{WBM;rn_B85U?7*T_0~qRhzK&2m(Oyocia{ zRP6~nL=cFB|M}#p7**NS_U7Ux1^n!jXEh~NY`K;kd#XlDT1~n9;*FN1uy-DdE-k5H zw7KSYK+BjuG?S_m_E*B4Pd2O$Lq3hVN;N$m6Sh1xCJ#SySV{mP~bziY#SZN)ze;WNckpI2gyJ(-5E`z2NZ7l2`L%+U+ z?)Kpt?L$kR6n3+Vv$m3=V@PQ7*!%gVBHwAQ>0glO|@0PKtH{uwW` zZtL1e_iKK;*viVtPipYY^4RoT#JO(XKDg%nhp@G>hSv4ciZj?5M=NV<4GmxbOF{!M zSK8*BVRN`GC@b+)!1@Yh?feinX%3>#pTcbnj~e z{L4OMjo00vQB3cHBabauy`^Mj>v26&riien2*Mqj9pN%M8>%V4367{HjBM<@{5WJ?HT; zgP^gCZ=A7^2)kkp1Kc~B{u`Gs5cuF*Sp)1tn%0|pL`d{tv57(MJk9KlD;I(SzCA|D zkfvR5cTQ0yd#8k)09KaO*XNAdpxml*#v|Mh=o}BgVgjR5YP+roT3d=ECA*9VyL*KM z*;SX3NNKcjIJ}ug7n-;u5AlPR*pXfv(xoRHJs=@aJd{+>Ko^_1dj%56De)rZMbi~0 zoDh(34jxG=;?a+o-Z{?xQ=tSL^-7F>+SKtTJ4gZV7nPqzKVf=To$X&x;uQ79o-S+Z z6v&n`^;lT+EGXwj#d}wZL}hBzR9l>L*%4mFfGAuI&7j4F{&VJlzAW@(7cd0DhS7jB z10GR%VRVHSrx6Emmh9lf z$&$t;D7^I-bW2|F#!39n5)$6=%ey78;G;!J`jVfZ$)ea{$w^RefgfIq6tt1wmT$i# zSAf_9f@JdhTK4iU1S`YY3_%*XYK^@oh(}c@v3ubz!)$dyCF)(#vW%b%Rpzs7B&aT= zuWcbz{3M<9B1NQuNvb6OobQfq);8PAVMF3tq%uN%&MMm6CR|nvA5ix>XRh({_F-lK zDKzItgq!_9Kr=9Xjue+v&aZwdRd40;HQDVh;9+-lSI1c&s`Y&cz%SSBJ|J+e`k7a- z6i2tpA6K1xj}+|kBiPNZDu7g-Hco;^H;*6o?+VdIhd_!t>a-t21l&*%W7RKN3oT@ zO5EcdL5wKYVK}D|V~WIH&Itsyu&$gVi=Y(}7dXeRKm%8*qw;6ThcmP5l|V&TKnvgX)8o>t*FF*bUbX=0wcz%whPb7N7U>0|8~GQ11k zV=1wZK}^;5>|CBMDk*n6!g~_1Tjo6q;#zxutAgFDogZ&cq;I)}N*_z$OMJdk3Z zZRaRzM4azyIdk*pE2SMt6wZf3-zA}_4*V!o`_#0Nzz#*6nrRe3QLR(V7=ah6acXu) zfJAjzPKyh`2OlkG(hpL8n$M^E^cAhE|I|QF6m10lG(k`LtbalE_-y6w2mE?(+w}b? z^gmNujr&k^@6`6rKJxIq&MNq@&yq((txgrrs2{K$f{RpVxacKrw-Vp-=ly+~L(NQ7 z!He*H56hyyjy(crucJKvU&ov8P_KOzhkgRhD|cnE9+*IG<=nzz&M40%2)d0#!Al~L zHyMVdB5cXBlghJ)AI|#=zXs=IY?oIFf0M{GXYCRS^;p8q;KB?emIxmlf9LWU;RJBz z9sM&R-Qc7N{7)PDFv*AMuBIRZ4PyB^Hl@26Gp`?OIJ-)E6DJ;*MOXKUrU;|ARsQ;BDvw7QhbFI+N`jyBRZ^x}A~6sQN34vg&AZloraNQzJCl-UCpyT_r}TPkbs|4Y5PL#(5T7?97i1!PJd^ZeK1*_Y;&jkjr$lTRQhFW` zU|OebdK?K)v?M`E0e;PH7A`N6rY;g5v}w5{Sa9}pMNw+4sYW7W&VNJ^NY+{p6SaO~u)MJL$1Pn{R zA~9Ex^i?WGoofC#{K5~Jo!+Axf0~^U?^W3dGLud}9Q}FZ*Oh-;c1fZg4u#%~j+y=k Dp>mih diff --git a/lib/tcpdf/fonts/freemonob.php b/lib/tcpdf/fonts/freemonob.php index c66302d66ef..7a2e570c38a 100644 --- a/lib/tcpdf/fonts/freemonob.php +++ b/lib/tcpdf/fonts/freemonob.php @@ -6,10 +6,10 @@ $up=-125; $ut=50; $dw=600; $diff=''; -$originalsize=173608; +$originalsize=296284; $enc=''; $file='freemonob.z'; $ctg='freemonob.ctg.z'; -$desc=array('Flags'=>33,'FontBBox'=>'[-600 -200 736 800]','ItalicAngle'=>0,'Ascent'=>800,'Descent'=>-200,'Leading'=>90,'CapHeight'=>583,'XHeight'=>437,'StemV'=>123,'StemH'=>53,'AvgWidth'=>600,'MaxWidth'=>600,'MissingWidth'=>600); -$cw=array(0=>600,32=>600,33=>600,34=>600,35=>600,36=>600,37=>600,38=>600,39=>600,40=>600,41=>600,42=>600,43=>600,44=>600,45=>600,46=>600,47=>600,48=>600,49=>600,50=>600,51=>600,52=>600,53=>600,54=>600,55=>600,56=>600,57=>600,58=>600,59=>600,60=>600,61=>600,62=>600,63=>600,64=>600,65=>600,66=>600,67=>600,68=>600,69=>600,70=>600,71=>600,72=>600,73=>600,74=>600,75=>600,76=>600,77=>600,78=>600,79=>600,80=>600,81=>600,82=>600,83=>600,84=>600,85=>600,86=>600,87=>600,88=>600,89=>600,90=>600,91=>600,92=>600,93=>600,94=>600,95=>600,96=>600,97=>600,98=>600,99=>600,100=>600,101=>600,102=>600,103=>600,104=>600,105=>600,106=>600,107=>600,108=>600,109=>600,110=>600,111=>600,112=>600,113=>600,114=>600,115=>600,116=>600,117=>600,118=>600,119=>600,120=>600,121=>600,122=>600,123=>600,124=>600,125=>600,126=>600,160=>600,161=>600,162=>600,163=>600,164=>600,165=>600,166=>600,167=>600,168=>600,169=>600,170=>600,171=>600,172=>600,173=>600,174=>600,175=>600,176=>600,177=>600,178=>600,179=>600,180=>600,181=>600,182=>600,183=>600,184=>600,185=>600,186=>600,187=>600,188=>600,189=>600,190=>600,191=>600,192=>600,193=>600,194=>600,195=>600,196=>600,197=>600,198=>600,199=>600,200=>600,201=>600,202=>600,203=>600,204=>600,205=>600,206=>600,207=>600,208=>600,209=>600,210=>600,211=>600,212=>600,213=>600,214=>600,215=>600,216=>600,217=>600,218=>600,219=>600,220=>600,221=>600,222=>600,223=>600,224=>600,225=>600,226=>600,227=>600,228=>600,229=>600,230=>600,231=>600,232=>600,233=>600,234=>600,235=>600,236=>600,237=>600,238=>600,239=>600,240=>600,241=>600,242=>600,243=>600,244=>600,245=>600,246=>600,247=>600,248=>600,249=>600,250=>600,251=>600,252=>600,253=>600,254=>600,255=>600,256=>600,257=>600,258=>600,259=>600,260=>600,261=>600,262=>600,263=>600,264=>600,265=>600,266=>600,267=>600,268=>600,269=>600,270=>600,271=>600,272=>600,273=>600,274=>600,275=>600,276=>600,277=>600,278=>600,279=>600,280=>600,281=>600,282=>600,283=>600,284=>600,285=>600,286=>600,287=>600,288=>600,289=>600,290=>600,291=>600,292=>600,293=>600,294=>600,295=>600,296=>600,297=>600,298=>600,299=>600,300=>600,301=>600,302=>600,303=>600,304=>600,305=>600,306=>600,307=>600,308=>600,309=>600,310=>600,311=>600,312=>600,313=>600,314=>600,315=>600,316=>600,317=>600,318=>600,319=>600,320=>600,321=>600,322=>600,323=>600,324=>600,325=>600,326=>600,327=>600,328=>600,329=>600,330=>600,331=>600,332=>600,333=>600,334=>600,335=>600,336=>600,337=>600,338=>600,339=>600,340=>600,341=>600,342=>600,343=>600,344=>600,345=>600,346=>600,347=>600,348=>600,349=>600,350=>600,351=>600,352=>600,353=>600,354=>600,355=>600,356=>600,357=>600,358=>600,359=>600,360=>600,361=>600,362=>600,363=>600,364=>600,365=>600,366=>600,367=>600,368=>600,369=>600,370=>600,371=>600,372=>600,373=>600,374=>600,375=>600,376=>600,377=>600,378=>600,379=>600,380=>600,381=>600,382=>600,383=>600,384=>600,385=>600,386=>600,387=>600,388=>600,389=>600,390=>600,391=>600,392=>600,393=>600,394=>600,395=>600,396=>600,397=>600,398=>600,399=>600,400=>600,401=>600,402=>600,403=>600,404=>600,405=>600,406=>600,407=>600,408=>600,409=>600,410=>600,411=>600,412=>600,413=>600,414=>600,415=>600,416=>600,417=>600,418=>600,419=>600,420=>600,421=>600,422=>600,423=>600,424=>600,425=>600,426=>600,427=>600,428=>600,429=>600,430=>600,431=>600,432=>600,433=>600,434=>600,435=>600,436=>600,437=>600,438=>600,439=>600,440=>600,441=>600,442=>600,443=>600,444=>600,445=>600,446=>600,447=>600,448=>600,449=>600,450=>600,451=>600,452=>600,453=>600,454=>600,455=>600,456=>600,457=>600,458=>600,459=>600,460=>600,461=>600,462=>600,463=>600,464=>600,465=>600,466=>600,467=>600,468=>600,469=>600,470=>600,471=>600,472=>600,473=>600,474=>600,475=>600,476=>600,477=>600,478=>600,479=>600,480=>600,481=>600,482=>600,483=>600,484=>600,485=>600,486=>600,487=>600,488=>600,489=>600,490=>600,491=>600,492=>600,493=>600,494=>600,495=>600,496=>600,497=>600,498=>600,499=>600,500=>600,501=>600,502=>600,503=>600,504=>600,505=>600,506=>600,507=>600,508=>600,509=>600,510=>600,511=>600,512=>600,513=>600,514=>600,515=>600,516=>600,517=>600,518=>600,519=>600,520=>600,521=>600,522=>600,523=>600,524=>600,525=>600,526=>600,527=>600,528=>600,529=>600,530=>600,531=>600,532=>600,533=>600,534=>600,535=>600,536=>600,537=>600,538=>600,539=>600,540=>600,541=>600,542=>600,543=>600,544=>600,548=>600,549=>600,550=>600,551=>600,552=>600,553=>600,554=>600,555=>600,556=>600,557=>600,558=>600,559=>600,560=>600,561=>600,562=>600,563=>600,567=>600,592=>600,593=>600,594=>600,595=>600,596=>600,598=>600,599=>600,600=>600,601=>600,603=>600,604=>600,607=>600,608=>600,609=>600,613=>600,614=>600,615=>600,616=>600,617=>600,618=>600,619=>600,621=>600,623=>600,624=>600,625=>600,626=>600,627=>600,628=>600,629=>600,633=>600,634=>600,635=>600,636=>600,637=>600,638=>600,639=>600,640=>600,641=>600,642=>600,643=>600,644=>600,645=>600,647=>600,648=>600,649=>600,652=>600,653=>600,654=>600,656=>600,657=>600,658=>600,659=>600,660=>600,661=>600,662=>600,663=>600,664=>600,665=>600,666=>600,667=>600,668=>600,669=>600,670=>600,671=>600,672=>600,673=>600,674=>600,688=>600,689=>600,690=>600,691=>600,692=>600,693=>600,694=>600,695=>600,696=>600,697=>600,698=>600,699=>600,700=>600,701=>600,702=>600,703=>600,704=>600,705=>600,706=>600,707=>600,708=>600,709=>600,710=>600,711=>600,712=>600,713=>600,714=>600,715=>600,716=>600,717=>600,718=>600,719=>600,720=>600,721=>600,722=>600,723=>600,724=>600,725=>600,726=>600,727=>600,728=>600,729=>600,730=>600,731=>600,732=>600,733=>600,734=>600,735=>600,736=>600,737=>600,738=>600,739=>600,740=>600,741=>600,742=>600,743=>600,744=>600,745=>600,746=>600,747=>600,748=>600,749=>600,750=>600,751=>600,752=>600,753=>600,754=>600,755=>600,756=>600,757=>600,758=>600,759=>600,760=>600,761=>600,762=>600,763=>600,764=>600,765=>600,766=>600,767=>600,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,843=>0,844=>0,845=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,884=>600,885=>600,890=>600,894=>600,900=>600,901=>600,902=>600,903=>600,904=>600,905=>600,906=>600,908=>600,910=>600,911=>600,912=>600,913=>600,914=>600,915=>600,916=>600,917=>600,918=>600,919=>600,920=>600,921=>600,922=>600,923=>600,924=>600,925=>600,926=>600,927=>600,928=>600,929=>600,931=>600,932=>600,933=>600,934=>600,935=>600,936=>600,937=>600,938=>600,939=>600,940=>600,941=>600,942=>600,943=>600,944=>600,945=>600,946=>600,947=>600,948=>600,949=>600,950=>600,951=>600,952=>600,953=>600,954=>600,955=>600,956=>600,957=>600,958=>600,959=>600,960=>600,961=>600,962=>600,963=>600,964=>600,965=>600,966=>600,967=>600,968=>600,969=>600,970=>600,971=>600,972=>600,973=>600,974=>600,976=>600,977=>600,978=>600,979=>600,980=>600,981=>600,982=>600,986=>600,987=>600,988=>600,1008=>600,1009=>600,1012=>600,1013=>600,1024=>600,1025=>600,1026=>600,1027=>600,1028=>600,1029=>600,1030=>600,1031=>600,1032=>600,1033=>600,1034=>600,1035=>600,1036=>600,1037=>600,1038=>600,1039=>600,1040=>600,1041=>600,1042=>600,1043=>600,1044=>600,1045=>600,1046=>600,1047=>600,1048=>600,1049=>600,1050=>600,1051=>600,1052=>600,1053=>600,1054=>600,1055=>600,1056=>600,1057=>600,1058=>600,1059=>600,1060=>600,1061=>600,1062=>600,1063=>600,1064=>600,1065=>600,1066=>600,1067=>600,1068=>600,1069=>600,1070=>600,1071=>600,1072=>600,1073=>600,1074=>600,1075=>600,1076=>600,1077=>600,1078=>600,1079=>600,1080=>600,1081=>600,1082=>600,1083=>600,1084=>600,1085=>600,1086=>600,1087=>600,1088=>600,1089=>600,1090=>600,1091=>600,1092=>600,1093=>600,1094=>600,1095=>600,1096=>600,1097=>600,1098=>600,1099=>600,1100=>600,1101=>600,1102=>600,1103=>600,1104=>600,1105=>600,1106=>600,1107=>600,1108=>600,1109=>600,1110=>600,1111=>600,1112=>600,1113=>600,1114=>600,1115=>600,1116=>600,1117=>600,1118=>600,1119=>600,1136=>600,1137=>600,1138=>600,1156=>0,1157=>0,1158=>0,1162=>600,1163=>600,1164=>600,1165=>600,1166=>600,1167=>600,1168=>600,1169=>600,1170=>600,1171=>600,1172=>600,1173=>600,1174=>600,1175=>600,1176=>600,1177=>600,1178=>600,1179=>600,1180=>600,1181=>600,1182=>600,1183=>600,1184=>600,1185=>600,1186=>600,1187=>600,1188=>600,1189=>600,1190=>600,1191=>600,1192=>600,1193=>600,1194=>600,1195=>600,1196=>600,1197=>600,1198=>600,1199=>600,1200=>600,1201=>600,1202=>600,1203=>600,1204=>600,1205=>600,1206=>600,1207=>600,1208=>600,1209=>600,1210=>600,1211=>600,1212=>600,1213=>600,1214=>600,1215=>600,1216=>600,1217=>600,1218=>600,1219=>600,1220=>600,1221=>600,1222=>600,1223=>600,1224=>600,1225=>600,1226=>600,1227=>600,1228=>600,1229=>600,1230=>600,1231=>600,1232=>600,1233=>600,1234=>600,1235=>600,1236=>600,1237=>600,1238=>600,1239=>600,1240=>600,1241=>600,1242=>600,1243=>600,1244=>600,1245=>600,1246=>600,1247=>600,1248=>600,1249=>600,1250=>600,1251=>600,1252=>600,1253=>600,1254=>600,1255=>600,1256=>600,1257=>600,1258=>600,1259=>600,1260=>600,1261=>600,1262=>600,1263=>600,1264=>600,1265=>600,1266=>600,1267=>600,1268=>600,1269=>600,1270=>600,1271=>600,1272=>600,1273=>600,1296=>600,1297=>600,1298=>600,1299=>600,1306=>600,1307=>600,1308=>600,1309=>600,1310=>600,1311=>600,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1467=>0,1468=>0,1469=>0,1470=>600,1471=>0,1472=>600,1473=>0,1474=>0,1475=>600,1476=>0,1488=>600,1489=>600,1490=>600,1491=>600,1492=>600,1493=>600,1494=>600,1495=>600,1496=>600,1497=>600,1498=>600,1499=>600,1500=>600,1501=>600,1502=>600,1503=>600,1504=>600,1505=>600,1506=>600,1507=>600,1508=>600,1509=>600,1510=>600,1511=>600,1512=>600,1513=>600,1514=>600,1520=>600,1521=>600,1522=>600,1523=>600,1524=>600,4304=>600,4305=>600,4306=>600,4307=>600,4308=>600,4309=>600,4310=>600,4311=>600,4312=>600,4313=>600,4314=>600,4315=>600,4316=>600,4317=>600,4318=>600,4319=>600,4320=>600,4321=>600,4322=>600,4323=>600,4324=>600,4325=>600,4326=>600,4327=>600,4328=>600,4329=>600,4330=>600,4331=>600,4332=>600,4333=>600,4334=>600,4335=>600,4336=>600,4337=>600,4338=>600,4339=>600,4340=>600,4341=>600,4345=>600,4347=>600,4348=>600,7680=>600,7681=>600,7682=>600,7683=>600,7684=>600,7685=>600,7686=>600,7687=>600,7688=>600,7689=>600,7690=>600,7691=>600,7692=>600,7693=>600,7694=>600,7695=>600,7696=>600,7697=>600,7698=>600,7699=>600,7700=>600,7701=>600,7702=>600,7703=>600,7704=>600,7705=>600,7706=>600,7707=>600,7708=>600,7709=>600,7710=>600,7711=>600,7712=>600,7713=>600,7714=>600,7715=>600,7716=>600,7717=>600,7718=>600,7719=>600,7720=>600,7721=>600,7722=>600,7723=>600,7724=>600,7725=>600,7726=>600,7727=>600,7728=>600,7729=>600,7730=>600,7731=>600,7732=>600,7733=>600,7734=>600,7735=>600,7736=>600,7737=>600,7738=>600,7739=>600,7740=>600,7741=>600,7742=>600,7743=>600,7744=>600,7745=>600,7746=>600,7747=>600,7748=>600,7749=>600,7750=>600,7751=>600,7752=>600,7753=>600,7754=>600,7755=>600,7756=>600,7757=>600,7758=>600,7759=>600,7760=>600,7761=>600,7762=>600,7763=>600,7764=>600,7765=>600,7766=>600,7767=>600,7768=>600,7769=>600,7770=>600,7771=>600,7772=>600,7773=>600,7774=>600,7775=>600,7776=>600,7777=>600,7778=>600,7779=>600,7780=>600,7781=>600,7782=>600,7783=>600,7784=>600,7785=>600,7786=>600,7787=>600,7788=>600,7789=>600,7790=>600,7791=>600,7792=>600,7793=>600,7794=>600,7795=>600,7796=>600,7797=>600,7798=>600,7799=>600,7800=>600,7801=>600,7802=>600,7803=>600,7804=>600,7805=>600,7806=>600,7807=>600,7808=>600,7809=>600,7810=>600,7811=>600,7812=>600,7813=>600,7814=>600,7815=>600,7816=>600,7817=>600,7818=>600,7819=>600,7820=>600,7821=>600,7822=>600,7823=>600,7824=>600,7825=>600,7826=>600,7827=>600,7828=>600,7829=>600,7830=>600,7831=>600,7832=>600,7833=>600,7834=>600,7835=>600,7840=>600,7841=>600,7842=>600,7843=>600,7844=>600,7845=>600,7846=>600,7847=>600,7848=>600,7849=>600,7850=>600,7851=>600,7852=>600,7853=>600,7854=>600,7855=>600,7856=>600,7857=>600,7858=>600,7859=>600,7860=>600,7861=>600,7862=>600,7863=>600,7864=>600,7865=>600,7866=>600,7867=>600,7868=>600,7869=>600,7870=>600,7871=>600,7872=>600,7873=>600,7874=>600,7875=>600,7876=>600,7877=>600,7878=>600,7879=>600,7880=>600,7881=>600,7882=>600,7883=>600,7884=>600,7885=>600,7886=>600,7887=>600,7888=>600,7889=>600,7890=>600,7891=>600,7892=>600,7893=>600,7894=>600,7895=>600,7896=>600,7897=>600,7898=>600,7899=>600,7900=>600,7901=>600,7902=>600,7903=>600,7904=>600,7905=>600,7906=>600,7907=>600,7908=>600,7909=>600,7910=>600,7911=>600,7912=>600,7913=>600,7914=>600,7915=>600,7916=>600,7917=>600,7918=>600,7919=>600,7920=>600,7921=>600,7922=>600,7923=>600,7924=>600,7925=>600,7926=>600,7927=>600,7928=>600,7929=>600,8192=>600,8193=>600,8194=>600,8195=>600,8196=>600,8197=>600,8198=>600,8199=>600,8200=>600,8201=>600,8202=>600,8203=>600,8204=>0,8205=>0,8206=>0,8207=>0,8208=>600,8209=>600,8210=>600,8211=>600,8212=>600,8213=>600,8214=>600,8215=>600,8216=>600,8217=>600,8218=>600,8219=>600,8220=>600,8221=>600,8222=>600,8223=>600,8224=>600,8225=>600,8226=>600,8227=>600,8228=>600,8229=>600,8230=>600,8231=>600,8232=>600,8233=>600,8234=>600,8235=>600,8236=>600,8237=>600,8238=>600,8239=>600,8240=>600,8241=>600,8242=>600,8243=>600,8244=>600,8245=>600,8246=>600,8247=>600,8248=>600,8249=>600,8250=>600,8251=>600,8252=>600,8253=>600,8254=>600,8255=>600,8256=>600,8257=>600,8258=>600,8259=>600,8260=>600,8261=>600,8262=>600,8263=>600,8264=>600,8265=>600,8266=>600,8267=>600,8268=>600,8269=>600,8270=>600,8271=>600,8272=>600,8273=>600,8274=>600,8275=>600,8276=>600,8277=>600,8278=>600,8279=>600,8280=>600,8281=>600,8282=>600,8283=>600,8284=>600,8285=>600,8286=>600,8287=>600,8288=>600,8289=>600,8290=>600,8291=>600,8292=>600,8304=>600,8305=>600,8308=>600,8309=>600,8310=>600,8311=>600,8312=>600,8313=>600,8314=>600,8315=>600,8316=>600,8317=>600,8318=>600,8319=>600,8320=>600,8321=>600,8322=>600,8323=>600,8324=>600,8325=>600,8326=>600,8327=>600,8328=>600,8329=>600,8330=>600,8331=>600,8332=>600,8333=>600,8334=>600,8336=>600,8337=>600,8338=>600,8339=>600,8340=>600,8355=>600,8356=>600,8362=>600,8364=>600,8373=>600,8448=>600,8449=>600,8451=>600,8453=>600,8454=>600,8455=>600,8457=>600,8462=>600,8465=>600,8466=>600,8467=>600,8470=>600,8472=>600,8476=>600,8480=>600,8481=>600,8482=>600,8486=>600,8487=>600,8489=>600,8490=>600,8491=>600,8494=>600,8498=>600,8501=>600,8502=>600,8503=>600,8504=>600,8506=>600,8507=>600,8513=>600,8514=>600,8515=>600,8516=>600,8523=>600,8525=>600,8526=>600,8531=>600,8532=>600,8533=>600,8534=>600,8535=>600,8536=>600,8537=>600,8538=>600,8539=>600,8540=>600,8541=>600,8542=>600,8543=>600,8544=>600,8545=>600,8546=>600,8547=>600,8548=>600,8549=>600,8550=>600,8553=>600,8556=>600,8557=>600,8558=>600,8559=>600,8560=>600,8564=>600,8569=>600,8572=>600,8573=>600,8574=>600,8575=>600,8592=>600,8593=>600,8594=>600,8595=>600,8596=>600,8597=>600,8598=>600,8599=>600,8600=>600,8601=>600,8612=>600,8613=>600,8614=>600,8615=>600,8633=>600,8636=>600,8637=>600,8638=>600,8639=>600,8640=>600,8641=>600,8642=>600,8643=>600,8644=>600,8645=>600,8646=>600,8647=>600,8648=>600,8649=>600,8650=>600,8651=>600,8652=>600,8704=>600,8706=>600,8707=>600,8709=>600,8710=>600,8711=>600,8712=>600,8713=>600,8714=>600,8715=>600,8716=>600,8717=>600,8719=>600,8720=>600,8721=>600,8722=>600,8723=>600,8725=>600,8727=>600,8729=>600,8730=>600,8731=>600,8732=>600,8733=>600,8734=>600,8735=>600,8756=>600,8800=>600,8801=>600,8804=>600,8805=>600,8834=>600,8835=>600,8836=>600,8837=>600,8838=>600,8839=>600,8869=>600,8976=>600,9001=>600,9002=>600,9251=>600,9472=>600,9473=>600,9474=>600,9475=>600,9476=>600,9477=>600,9478=>600,9479=>600,9480=>600,9481=>600,9482=>600,9483=>600,9484=>600,9485=>600,9486=>600,9487=>600,9488=>600,9489=>600,9490=>600,9491=>600,9492=>600,9493=>600,9494=>600,9495=>600,9496=>600,9497=>600,9498=>600,9499=>600,9500=>600,9501=>600,9502=>600,9503=>600,9504=>600,9505=>600,9506=>600,9507=>600,9508=>600,9509=>600,9510=>600,9511=>600,9512=>600,9513=>600,9514=>600,9515=>600,9516=>600,9517=>600,9518=>600,9519=>600,9520=>600,9521=>600,9522=>600,9523=>600,9524=>600,9525=>600,9526=>600,9527=>600,9528=>600,9529=>600,9530=>600,9531=>600,9532=>600,9533=>600,9534=>600,9535=>600,9536=>600,9537=>600,9538=>600,9539=>600,9540=>600,9541=>600,9542=>600,9543=>600,9544=>600,9545=>600,9546=>600,9547=>600,9548=>600,9549=>600,9550=>600,9551=>600,9552=>600,9553=>600,9554=>600,9555=>600,9556=>600,9557=>600,9558=>600,9559=>600,9560=>600,9561=>600,9562=>600,9563=>600,9564=>600,9565=>600,9566=>600,9567=>600,9568=>600,9569=>600,9570=>600,9571=>600,9572=>600,9573=>600,9574=>600,9575=>600,9576=>600,9577=>600,9578=>600,9579=>600,9580=>600,9581=>600,9582=>600,9583=>600,9584=>600,9585=>600,9586=>600,9587=>600,9588=>600,9589=>600,9590=>600,9591=>600,9592=>600,9593=>600,9594=>600,9595=>600,9596=>600,9597=>600,9598=>600,9599=>600,9600=>600,9601=>600,9602=>600,9603=>600,9604=>600,9605=>600,9606=>600,9607=>600,9608=>600,9609=>600,9610=>600,9611=>600,9612=>600,9613=>600,9614=>600,9615=>600,9616=>600,9617=>600,9618=>600,9619=>600,9620=>600,9621=>600,9632=>600,9633=>600,9635=>600,9636=>600,9637=>600,9638=>600,9639=>600,9640=>600,9641=>600,9642=>600,9643=>600,9644=>600,9645=>600,9646=>600,9647=>600,9648=>600,9649=>600,9650=>600,9651=>600,9652=>600,9653=>600,9654=>600,9655=>600,9656=>600,9657=>600,9658=>600,9660=>600,9661=>600,9662=>600,9663=>600,9664=>600,9665=>600,9666=>600,9667=>600,9668=>600,9669=>600,9670=>600,9671=>600,9673=>600,9674=>600,9675=>600,9677=>600,9679=>600,9680=>600,9681=>600,9682=>600,9683=>600,9684=>600,9685=>600,9686=>600,9687=>600,9688=>600,9689=>600,9698=>600,9699=>600,9700=>600,9701=>600,9702=>600,9703=>600,9704=>600,9705=>600,9706=>600,9707=>600,9708=>600,9709=>600,9710=>600,9712=>600,9713=>600,9714=>600,9715=>600,9716=>600,9717=>600,9718=>600,9719=>600,9735=>600,9736=>600,9737=>600,9776=>600,9777=>600,9778=>600,9779=>600,9780=>600,9781=>600,9782=>600,9783=>600,9785=>600,9786=>600,9787=>600,9824=>600,9825=>600,9826=>600,9827=>600,9828=>600,9829=>600,9830=>600,9831=>600,9833=>600,9834=>600,9835=>600,9836=>600,9837=>600,9838=>600,9839=>600,11799=>600,42888=>600,42889=>600,42890=>600,42891=>600,42892=>600,64256=>600,64257=>600,64258=>600,64285=>600,64287=>600,64288=>600,64298=>600,64299=>600,64300=>600,64301=>600,64302=>600,64303=>600,64304=>600,64305=>600,64306=>600,64307=>600,64308=>600,64309=>600,64310=>600,64312=>600,64313=>600,64314=>600,64315=>600,64316=>600,64318=>600,64320=>600,64321=>600,64323=>600,64324=>600,64326=>600,64327=>600,64328=>600,64329=>600,64330=>600,64331=>600,64332=>600,64333=>600,64334=>600,64335=>600,65533=>600,65535=>600); +$desc=array('Flags'=>33,'FontBBox'=>'[-600 -200 736 800]','ItalicAngle'=>0,'Ascent'=>800,'Descent'=>-200,'Leading'=>0,'CapHeight'=>583,'XHeight'=>437,'StemV'=>123,'StemH'=>53,'AvgWidth'=>600,'MaxWidth'=>600,'MissingWidth'=>600); +$cw=array(0=>600,32=>600,33=>600,34=>600,35=>600,36=>600,37=>600,38=>600,39=>600,40=>600,41=>600,42=>600,43=>600,44=>600,45=>600,46=>600,47=>600,48=>600,49=>600,50=>600,51=>600,52=>600,53=>600,54=>600,55=>600,56=>600,57=>600,58=>600,59=>600,60=>600,61=>600,62=>600,63=>600,64=>600,65=>600,66=>600,67=>600,68=>600,69=>600,70=>600,71=>600,72=>600,73=>600,74=>600,75=>600,76=>600,77=>600,78=>600,79=>600,80=>600,81=>600,82=>600,83=>600,84=>600,85=>600,86=>600,87=>600,88=>600,89=>600,90=>600,91=>600,92=>600,93=>600,94=>600,95=>600,96=>600,97=>600,98=>600,99=>600,100=>600,101=>600,102=>600,103=>600,104=>600,105=>600,106=>600,107=>600,108=>600,109=>600,110=>600,111=>600,112=>600,113=>600,114=>600,115=>600,116=>600,117=>600,118=>600,119=>600,120=>600,121=>600,122=>600,123=>600,124=>600,125=>600,126=>600,160=>600,161=>600,162=>600,163=>600,164=>600,165=>600,166=>600,167=>600,168=>600,169=>600,170=>600,171=>600,172=>600,173=>600,174=>600,175=>600,176=>600,177=>600,178=>600,179=>600,180=>600,181=>600,182=>600,183=>600,184=>600,185=>600,186=>600,187=>600,188=>600,189=>600,190=>600,191=>600,192=>600,193=>600,194=>600,195=>600,196=>600,197=>600,198=>600,199=>600,200=>600,201=>600,202=>600,203=>600,204=>600,205=>600,206=>600,207=>600,208=>600,209=>600,210=>600,211=>600,212=>600,213=>600,214=>600,215=>600,216=>600,217=>600,218=>600,219=>600,220=>600,221=>600,222=>600,223=>600,224=>600,225=>600,226=>600,227=>600,228=>600,229=>600,230=>600,231=>600,232=>600,233=>600,234=>600,235=>600,236=>600,237=>600,238=>600,239=>600,240=>600,241=>600,242=>600,243=>600,244=>600,245=>600,246=>600,247=>600,248=>600,249=>600,250=>600,251=>600,252=>600,253=>600,254=>600,255=>600,256=>600,257=>600,258=>600,259=>600,260=>600,261=>600,262=>600,263=>600,264=>600,265=>600,266=>600,267=>600,268=>600,269=>600,270=>600,271=>600,272=>600,273=>600,274=>600,275=>600,276=>600,277=>600,278=>600,279=>600,280=>600,281=>600,282=>600,283=>600,284=>600,285=>600,286=>600,287=>600,288=>600,289=>600,290=>600,291=>600,292=>600,293=>600,294=>600,295=>600,296=>600,297=>600,298=>600,299=>600,300=>600,301=>600,302=>600,303=>600,304=>600,305=>600,306=>600,307=>600,308=>600,309=>600,310=>600,311=>600,312=>600,313=>600,314=>600,315=>600,316=>600,317=>600,318=>600,319=>600,320=>600,321=>600,322=>600,323=>600,324=>600,325=>600,326=>600,327=>600,328=>600,329=>600,330=>600,331=>600,332=>600,333=>600,334=>600,335=>600,336=>600,337=>600,338=>600,339=>600,340=>600,341=>600,342=>600,343=>600,344=>600,345=>600,346=>600,347=>600,348=>600,349=>600,350=>600,351=>600,352=>600,353=>600,354=>600,355=>600,356=>600,357=>600,358=>600,359=>600,360=>600,361=>600,362=>600,363=>600,364=>600,365=>600,366=>600,367=>600,368=>600,369=>600,370=>600,371=>600,372=>600,373=>600,374=>600,375=>600,376=>600,377=>600,378=>600,379=>600,380=>600,381=>600,382=>600,383=>600,384=>600,385=>600,386=>600,387=>600,388=>600,389=>600,390=>600,391=>600,392=>600,393=>600,394=>600,395=>600,396=>600,397=>600,398=>600,399=>600,400=>600,401=>600,402=>600,403=>600,404=>600,405=>600,406=>600,407=>600,408=>600,409=>600,410=>600,411=>600,412=>600,413=>600,414=>600,415=>600,416=>600,417=>600,418=>600,419=>600,420=>600,421=>600,422=>600,423=>600,424=>600,425=>600,426=>600,427=>600,428=>600,429=>600,430=>600,431=>600,432=>600,433=>600,434=>600,435=>600,436=>600,437=>600,438=>600,439=>600,440=>600,441=>600,442=>600,443=>600,444=>600,445=>600,446=>600,447=>600,448=>600,449=>600,450=>600,451=>600,452=>600,453=>600,454=>600,455=>600,456=>600,457=>600,458=>600,459=>600,460=>600,461=>600,462=>600,463=>600,464=>600,465=>600,466=>600,467=>600,468=>600,469=>600,470=>600,471=>600,472=>600,473=>600,474=>600,475=>600,476=>600,477=>600,478=>600,479=>600,480=>600,481=>600,482=>600,483=>600,484=>600,485=>600,486=>600,487=>600,488=>600,489=>600,490=>600,491=>600,492=>600,493=>600,494=>600,495=>600,496=>600,497=>600,498=>600,499=>600,500=>600,501=>600,502=>600,503=>600,504=>600,505=>600,506=>600,507=>600,508=>600,509=>600,510=>600,511=>600,512=>600,513=>600,514=>600,515=>600,516=>600,517=>600,518=>600,519=>600,520=>600,521=>600,522=>600,523=>600,524=>600,525=>600,526=>600,527=>600,528=>600,529=>600,530=>600,531=>600,532=>600,533=>600,534=>600,535=>600,536=>600,537=>600,538=>600,539=>600,540=>600,541=>600,542=>600,543=>600,544=>600,548=>600,549=>600,550=>600,551=>600,552=>600,553=>600,554=>600,555=>600,556=>600,557=>600,558=>600,559=>600,560=>600,561=>600,562=>600,563=>600,567=>600,592=>600,593=>600,594=>600,595=>600,596=>600,598=>600,599=>600,600=>600,601=>600,603=>600,604=>600,607=>600,608=>600,609=>600,613=>600,614=>600,615=>600,616=>600,617=>600,618=>600,619=>600,621=>600,623=>600,624=>600,625=>600,626=>600,627=>600,628=>600,629=>600,633=>600,634=>600,635=>600,636=>600,637=>600,638=>600,639=>600,640=>600,641=>600,642=>600,643=>600,644=>600,645=>600,647=>600,648=>600,649=>600,652=>600,653=>600,654=>600,656=>600,657=>600,658=>600,659=>600,660=>600,661=>600,662=>600,663=>600,664=>600,665=>600,666=>600,667=>600,668=>600,669=>600,670=>600,671=>600,672=>600,673=>600,674=>600,688=>600,689=>600,690=>600,691=>600,692=>600,693=>600,694=>600,695=>600,696=>600,697=>600,698=>600,699=>600,700=>600,701=>600,702=>600,703=>600,704=>600,705=>600,706=>600,707=>600,708=>600,709=>600,710=>600,711=>600,712=>600,713=>600,714=>600,715=>600,716=>600,717=>600,718=>600,719=>600,720=>600,721=>600,722=>600,723=>600,724=>600,725=>600,726=>600,727=>600,728=>600,729=>600,730=>600,731=>600,732=>600,733=>600,734=>600,735=>600,736=>600,737=>600,738=>600,739=>600,740=>600,741=>600,742=>600,743=>600,744=>600,745=>600,746=>600,747=>600,748=>600,749=>600,750=>600,751=>600,752=>600,753=>600,754=>600,755=>600,756=>600,757=>600,758=>600,759=>600,760=>600,761=>600,762=>600,763=>600,764=>600,765=>600,766=>600,767=>600,768=>600,769=>600,770=>600,771=>600,772=>600,773=>600,774=>600,775=>600,776=>600,777=>600,778=>600,779=>600,780=>600,781=>600,782=>600,783=>600,784=>600,785=>600,786=>600,787=>600,788=>600,789=>600,790=>600,791=>600,792=>600,793=>600,794=>600,795=>600,796=>600,797=>600,798=>600,799=>600,800=>600,801=>600,802=>600,803=>600,804=>600,805=>600,806=>600,807=>600,808=>600,809=>600,810=>600,811=>600,812=>600,813=>600,814=>600,815=>600,816=>600,817=>600,818=>600,819=>600,820=>600,821=>600,822=>600,823=>600,824=>600,825=>600,826=>600,827=>600,828=>600,829=>600,830=>600,831=>600,832=>600,833=>600,834=>600,835=>600,836=>600,837=>600,838=>600,839=>600,840=>600,841=>600,842=>600,843=>600,844=>600,845=>600,846=>600,847=>600,848=>600,849=>600,850=>600,851=>600,852=>600,853=>600,854=>600,855=>600,856=>600,857=>600,858=>600,859=>600,860=>600,861=>600,862=>600,863=>600,864=>600,865=>600,866=>600,867=>600,868=>600,869=>600,870=>600,871=>600,872=>600,873=>600,874=>600,875=>600,876=>600,877=>600,878=>600,879=>600,884=>600,885=>600,890=>600,894=>600,900=>600,901=>600,902=>600,903=>600,904=>600,905=>600,906=>600,908=>600,910=>600,911=>600,912=>600,913=>600,914=>600,915=>600,916=>600,917=>600,918=>600,919=>600,920=>600,921=>600,922=>600,923=>600,924=>600,925=>600,926=>600,927=>600,928=>600,929=>600,931=>600,932=>600,933=>600,934=>600,935=>600,936=>600,937=>600,938=>600,939=>600,940=>600,941=>600,942=>600,943=>600,944=>600,945=>600,946=>600,947=>600,948=>600,949=>600,950=>600,951=>600,952=>600,953=>600,954=>600,955=>600,956=>600,957=>600,958=>600,959=>600,960=>600,961=>600,962=>600,963=>600,964=>600,965=>600,966=>600,967=>600,968=>600,969=>600,970=>600,971=>600,972=>600,973=>600,974=>600,976=>600,977=>600,978=>600,979=>600,980=>600,981=>600,982=>600,986=>600,987=>600,988=>600,989=>600,1008=>600,1009=>600,1012=>600,1013=>600,1024=>600,1025=>600,1026=>600,1027=>600,1028=>600,1029=>600,1030=>600,1031=>600,1032=>600,1033=>600,1034=>600,1035=>600,1036=>600,1037=>600,1038=>600,1039=>600,1040=>600,1041=>600,1042=>600,1043=>600,1044=>600,1045=>600,1046=>600,1047=>600,1048=>600,1049=>600,1050=>600,1051=>600,1052=>600,1053=>600,1054=>600,1055=>600,1056=>600,1057=>600,1058=>600,1059=>600,1060=>600,1061=>600,1062=>600,1063=>600,1064=>600,1065=>600,1066=>600,1067=>600,1068=>600,1069=>600,1070=>600,1071=>600,1072=>600,1073=>600,1074=>600,1075=>600,1076=>600,1077=>600,1078=>600,1079=>600,1080=>600,1081=>600,1082=>600,1083=>600,1084=>600,1085=>600,1086=>600,1087=>600,1088=>600,1089=>600,1090=>600,1091=>600,1092=>600,1093=>600,1094=>600,1095=>600,1096=>600,1097=>600,1098=>600,1099=>600,1100=>600,1101=>600,1102=>600,1103=>600,1104=>600,1105=>600,1106=>600,1107=>600,1108=>600,1109=>600,1110=>600,1111=>600,1112=>600,1113=>600,1114=>600,1115=>600,1116=>600,1117=>600,1118=>600,1119=>600,1136=>600,1137=>600,1138=>600,1156=>600,1157=>600,1158=>600,1162=>600,1163=>600,1164=>600,1165=>600,1166=>600,1167=>600,1168=>600,1169=>600,1170=>600,1171=>600,1172=>600,1173=>600,1174=>600,1175=>600,1176=>600,1177=>600,1178=>600,1179=>600,1180=>600,1181=>600,1182=>600,1183=>600,1184=>600,1185=>600,1186=>600,1187=>600,1188=>600,1189=>600,1190=>600,1191=>600,1192=>600,1193=>600,1194=>600,1195=>600,1196=>600,1197=>600,1198=>600,1199=>600,1200=>600,1201=>600,1202=>600,1203=>600,1204=>600,1205=>600,1206=>600,1207=>600,1208=>600,1209=>600,1210=>600,1211=>600,1212=>600,1213=>600,1214=>600,1215=>600,1216=>600,1217=>600,1218=>600,1219=>600,1220=>600,1221=>600,1222=>600,1223=>600,1224=>600,1225=>600,1226=>600,1227=>600,1228=>600,1229=>600,1230=>600,1231=>600,1232=>600,1233=>600,1234=>600,1235=>600,1236=>600,1237=>600,1238=>600,1239=>600,1240=>600,1241=>600,1242=>600,1243=>600,1244=>600,1245=>600,1246=>600,1247=>600,1248=>600,1249=>600,1250=>600,1251=>600,1252=>600,1253=>600,1254=>600,1255=>600,1256=>600,1257=>600,1258=>600,1259=>600,1260=>600,1261=>600,1262=>600,1263=>600,1264=>600,1265=>600,1266=>600,1267=>600,1268=>600,1269=>600,1270=>600,1271=>600,1272=>600,1273=>600,1296=>600,1297=>600,1298=>600,1299=>600,1306=>600,1307=>600,1308=>600,1309=>600,1310=>600,1311=>600,1456=>600,1457=>600,1458=>600,1459=>600,1460=>600,1461=>600,1462=>600,1463=>600,1464=>600,1465=>600,1467=>600,1468=>600,1469=>600,1470=>600,1471=>600,1472=>600,1473=>600,1474=>600,1475=>600,1476=>600,1488=>600,1489=>600,1490=>600,1491=>600,1492=>600,1493=>600,1494=>600,1495=>600,1496=>600,1497=>600,1498=>600,1499=>600,1500=>600,1501=>600,1502=>600,1503=>600,1504=>600,1505=>600,1506=>600,1507=>600,1508=>600,1509=>600,1510=>600,1511=>600,1512=>600,1513=>600,1514=>600,1520=>600,1521=>600,1522=>600,1523=>600,1524=>600,4304=>600,4305=>600,4306=>600,4307=>600,4308=>600,4309=>600,4310=>600,4311=>600,4312=>600,4313=>600,4314=>600,4315=>600,4316=>600,4317=>600,4318=>600,4319=>600,4320=>600,4321=>600,4322=>600,4323=>600,4324=>600,4325=>600,4326=>600,4327=>600,4328=>600,4329=>600,4330=>600,4331=>600,4332=>600,4333=>600,4334=>600,4335=>600,4336=>600,4337=>600,4338=>600,4339=>600,4340=>600,4341=>600,4345=>600,4347=>600,4348=>600,7680=>600,7681=>600,7682=>600,7683=>600,7684=>600,7685=>600,7686=>600,7687=>600,7688=>600,7689=>600,7690=>600,7691=>600,7692=>600,7693=>600,7694=>600,7695=>600,7696=>600,7697=>600,7698=>600,7699=>600,7700=>600,7701=>600,7702=>600,7703=>600,7704=>600,7705=>600,7706=>600,7707=>600,7708=>600,7709=>600,7710=>600,7711=>600,7712=>600,7713=>600,7714=>600,7715=>600,7716=>600,7717=>600,7718=>600,7719=>600,7720=>600,7721=>600,7722=>600,7723=>600,7724=>600,7725=>600,7726=>600,7727=>600,7728=>600,7729=>600,7730=>600,7731=>600,7732=>600,7733=>600,7734=>600,7735=>600,7736=>600,7737=>600,7738=>600,7739=>600,7740=>600,7741=>600,7742=>600,7743=>600,7744=>600,7745=>600,7746=>600,7747=>600,7748=>600,7749=>600,7750=>600,7751=>600,7752=>600,7753=>600,7754=>600,7755=>600,7756=>600,7757=>600,7758=>600,7759=>600,7760=>600,7761=>600,7762=>600,7763=>600,7764=>600,7765=>600,7766=>600,7767=>600,7768=>600,7769=>600,7770=>600,7771=>600,7772=>600,7773=>600,7774=>600,7775=>600,7776=>600,7777=>600,7778=>600,7779=>600,7780=>600,7781=>600,7782=>600,7783=>600,7784=>600,7785=>600,7786=>600,7787=>600,7788=>600,7789=>600,7790=>600,7791=>600,7792=>600,7793=>600,7794=>600,7795=>600,7796=>600,7797=>600,7798=>600,7799=>600,7800=>600,7801=>600,7802=>600,7803=>600,7804=>600,7805=>600,7806=>600,7807=>600,7808=>600,7809=>600,7810=>600,7811=>600,7812=>600,7813=>600,7814=>600,7815=>600,7816=>600,7817=>600,7818=>600,7819=>600,7820=>600,7821=>600,7822=>600,7823=>600,7824=>600,7825=>600,7826=>600,7827=>600,7828=>600,7829=>600,7830=>600,7831=>600,7832=>600,7833=>600,7834=>600,7835=>600,7840=>600,7841=>600,7842=>600,7843=>600,7844=>600,7845=>600,7846=>600,7847=>600,7848=>600,7849=>600,7850=>600,7851=>600,7852=>600,7853=>600,7854=>600,7855=>600,7856=>600,7857=>600,7858=>600,7859=>600,7860=>600,7861=>600,7862=>600,7863=>600,7864=>600,7865=>600,7866=>600,7867=>600,7868=>600,7869=>600,7870=>600,7871=>600,7872=>600,7873=>600,7874=>600,7875=>600,7876=>600,7877=>600,7878=>600,7879=>600,7880=>600,7881=>600,7882=>600,7883=>600,7884=>600,7885=>600,7886=>600,7887=>600,7888=>600,7889=>600,7890=>600,7891=>600,7892=>600,7893=>600,7894=>600,7895=>600,7896=>600,7897=>600,7898=>600,7899=>600,7900=>600,7901=>600,7902=>600,7903=>600,7904=>600,7905=>600,7906=>600,7907=>600,7908=>600,7909=>600,7910=>600,7911=>600,7912=>600,7913=>600,7914=>600,7915=>600,7916=>600,7917=>600,7918=>600,7919=>600,7920=>600,7921=>600,7922=>600,7923=>600,7924=>600,7925=>600,7926=>600,7927=>600,7928=>600,7929=>600,8192=>600,8193=>600,8194=>600,8195=>600,8196=>600,8197=>600,8198=>600,8199=>600,8200=>600,8201=>600,8202=>600,8203=>600,8204=>600,8205=>600,8206=>600,8207=>600,8208=>600,8209=>600,8210=>600,8211=>600,8212=>600,8213=>600,8214=>600,8215=>600,8216=>600,8217=>600,8218=>600,8219=>600,8220=>600,8221=>600,8222=>600,8223=>600,8224=>600,8225=>600,8226=>600,8227=>600,8228=>600,8229=>600,8230=>600,8231=>600,8232=>600,8233=>600,8234=>600,8235=>600,8236=>600,8237=>600,8238=>600,8239=>600,8240=>600,8241=>600,8242=>600,8243=>600,8244=>600,8245=>600,8246=>600,8247=>600,8248=>600,8249=>600,8250=>600,8251=>600,8252=>600,8253=>600,8254=>600,8255=>600,8256=>600,8257=>600,8258=>600,8259=>600,8260=>600,8261=>600,8262=>600,8263=>600,8264=>600,8265=>600,8266=>600,8267=>600,8268=>600,8269=>600,8270=>600,8271=>600,8272=>600,8273=>600,8274=>600,8275=>600,8276=>600,8277=>600,8278=>600,8279=>600,8280=>600,8281=>600,8282=>600,8283=>600,8284=>600,8285=>600,8286=>600,8287=>600,8288=>600,8289=>600,8290=>600,8291=>600,8292=>600,8304=>600,8305=>600,8308=>600,8309=>600,8310=>600,8311=>600,8312=>600,8313=>600,8314=>600,8315=>600,8316=>600,8317=>600,8318=>600,8319=>600,8320=>600,8321=>600,8322=>600,8323=>600,8324=>600,8325=>600,8326=>600,8327=>600,8328=>600,8329=>600,8330=>600,8331=>600,8332=>600,8333=>600,8334=>600,8336=>600,8337=>600,8338=>600,8339=>600,8340=>600,8355=>600,8356=>600,8357=>600,8358=>600,8361=>600,8362=>600,8363=>600,8364=>600,8365=>600,8366=>600,8369=>600,8370=>600,8371=>600,8372=>600,8373=>600,8376=>600,8377=>600,8448=>600,8449=>600,8451=>600,8453=>600,8454=>600,8455=>600,8457=>600,8462=>600,8465=>600,8466=>600,8467=>600,8470=>600,8472=>600,8476=>600,8480=>600,8481=>600,8482=>600,8486=>600,8487=>600,8489=>600,8490=>600,8491=>600,8494=>600,8498=>600,8501=>600,8502=>600,8503=>600,8504=>600,8506=>600,8507=>600,8513=>600,8514=>600,8515=>600,8516=>600,8523=>600,8525=>600,8526=>600,8531=>600,8532=>600,8533=>600,8534=>600,8535=>600,8536=>600,8537=>600,8538=>600,8539=>600,8540=>600,8541=>600,8542=>600,8543=>600,8592=>600,8593=>600,8594=>600,8595=>600,8596=>600,8597=>600,8598=>600,8599=>600,8600=>600,8601=>600,8612=>600,8613=>600,8614=>600,8615=>600,8633=>600,8636=>600,8637=>600,8638=>600,8639=>600,8640=>600,8641=>600,8642=>600,8643=>600,8644=>600,8645=>600,8646=>600,8647=>600,8648=>600,8649=>600,8650=>600,8651=>600,8652=>600,8656=>600,8657=>600,8658=>600,8659=>600,8660=>600,8661=>600,8704=>600,8705=>600,8706=>600,8707=>600,8708=>600,8709=>600,8710=>600,8711=>600,8712=>600,8713=>600,8714=>600,8715=>600,8716=>600,8717=>600,8718=>600,8719=>600,8720=>600,8721=>600,8722=>600,8723=>600,8724=>600,8725=>600,8726=>600,8727=>600,8728=>600,8729=>600,8730=>600,8731=>600,8732=>600,8733=>600,8734=>600,8735=>600,8739=>600,8741=>600,8743=>600,8744=>600,8745=>600,8746=>600,8747=>600,8748=>600,8756=>600,8757=>600,8758=>600,8759=>600,8764=>600,8776=>600,8800=>600,8801=>600,8804=>600,8805=>600,8834=>600,8835=>600,8836=>600,8837=>600,8838=>600,8839=>600,8869=>600,8898=>600,8899=>600,8976=>600,9001=>600,9002=>600,9251=>600,9472=>600,9473=>600,9474=>600,9475=>600,9476=>600,9477=>600,9478=>600,9479=>600,9480=>600,9481=>600,9482=>600,9483=>600,9484=>600,9485=>600,9486=>600,9487=>600,9488=>600,9489=>600,9490=>600,9491=>600,9492=>600,9493=>600,9494=>600,9495=>600,9496=>600,9497=>600,9498=>600,9499=>600,9500=>600,9501=>600,9502=>600,9503=>600,9504=>600,9505=>600,9506=>600,9507=>600,9508=>600,9509=>600,9510=>600,9511=>600,9512=>600,9513=>600,9514=>600,9515=>600,9516=>600,9517=>600,9518=>600,9519=>600,9520=>600,9521=>600,9522=>600,9523=>600,9524=>600,9525=>600,9526=>600,9527=>600,9528=>600,9529=>600,9530=>600,9531=>600,9532=>600,9533=>600,9534=>600,9535=>600,9536=>600,9537=>600,9538=>600,9539=>600,9540=>600,9541=>600,9542=>600,9543=>600,9544=>600,9545=>600,9546=>600,9547=>600,9548=>600,9549=>600,9550=>600,9551=>600,9552=>600,9553=>600,9554=>600,9555=>600,9556=>600,9557=>600,9558=>600,9559=>600,9560=>600,9561=>600,9562=>600,9563=>600,9564=>600,9565=>600,9566=>600,9567=>600,9568=>600,9569=>600,9570=>600,9571=>600,9572=>600,9573=>600,9574=>600,9575=>600,9576=>600,9577=>600,9578=>600,9579=>600,9580=>600,9581=>600,9582=>600,9583=>600,9584=>600,9585=>600,9586=>600,9587=>600,9588=>600,9589=>600,9590=>600,9591=>600,9592=>600,9593=>600,9594=>600,9595=>600,9596=>600,9597=>600,9598=>600,9599=>600,9600=>600,9601=>600,9602=>600,9603=>600,9604=>600,9605=>600,9606=>600,9607=>600,9608=>600,9609=>600,9610=>600,9611=>600,9612=>600,9613=>600,9614=>600,9615=>600,9616=>600,9617=>600,9618=>600,9619=>600,9620=>600,9621=>600,9632=>600,9633=>600,9635=>600,9636=>600,9637=>600,9638=>600,9639=>600,9640=>600,9641=>600,9642=>600,9643=>600,9644=>600,9645=>600,9646=>600,9647=>600,9648=>600,9649=>600,9650=>600,9651=>600,9652=>600,9653=>600,9654=>600,9655=>600,9656=>600,9657=>600,9658=>600,9660=>600,9661=>600,9662=>600,9663=>600,9664=>600,9665=>600,9666=>600,9667=>600,9668=>600,9669=>600,9670=>600,9671=>600,9673=>600,9674=>600,9675=>600,9677=>600,9679=>600,9680=>600,9681=>600,9682=>600,9683=>600,9684=>600,9685=>600,9686=>600,9687=>600,9688=>600,9689=>600,9698=>600,9699=>600,9700=>600,9701=>600,9702=>600,9703=>600,9704=>600,9705=>600,9706=>600,9707=>600,9708=>600,9709=>600,9710=>600,9711=>600,9712=>600,9713=>600,9714=>600,9715=>600,9716=>600,9717=>600,9718=>600,9719=>600,9735=>600,9736=>600,9737=>600,9776=>600,9777=>600,9778=>600,9779=>600,9780=>600,9781=>600,9782=>600,9783=>600,9785=>600,9786=>600,9787=>600,9824=>600,9825=>600,9826=>600,9827=>600,9828=>600,9829=>600,9830=>600,9831=>600,9833=>600,9834=>600,9835=>600,9836=>600,9837=>600,9838=>600,9839=>600,11798=>600,11799=>600,11800=>600,11802=>600,11803=>600,11806=>600,11807=>600,11816=>600,11817=>600,11818=>600,11819=>600,11820=>600,11821=>600,11822=>600,11824=>600,42888=>600,42889=>600,42890=>600,42891=>600,42892=>600,64256=>600,64257=>600,64258=>600,64285=>600,64287=>600,64288=>600,64298=>600,64299=>600,64300=>600,64301=>600,64302=>600,64303=>600,64304=>600,64305=>600,64306=>600,64307=>600,64308=>600,64309=>600,64310=>600,64312=>600,64313=>600,64314=>600,64315=>600,64316=>600,64318=>600,64320=>600,64321=>600,64323=>600,64324=>600,64326=>600,64327=>600,64328=>600,64329=>600,64330=>600,64331=>600,64332=>600,64333=>600,64334=>600,64335=>600,65529=>600,65530=>600,65531=>600,65532=>600,65533=>600,65535=>600); // --- EOF --- diff --git a/lib/tcpdf/fonts/freemonob.z b/lib/tcpdf/fonts/freemonob.z index bea5fdb8b02530c5df8294a8489726edfcadc7ce..79dbeddffda8da55b52b93ce472867e2ab9fd8a3 100644 GIT binary patch literal 160602 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

                #<6LCe0m>46 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
                i2u6veUZ*YEw^LzR=qlQ9E6Zxk-xp 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

                croNIW(&xBjX)ktt5cYz8x@^Qmtk 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 z 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 K@2j3N;ruTw=1+?N literal 90912 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,'FontBBox'=>'[-642 -200 834 800]','ItalicAngle'=>-12,'Ascent'=>800,'Descent'=>-200,'Leading'=>90,'CapHeight'=>583,'XHeight'=>437,'StemV'=>123,'StemH'=>53,'AvgWidth'=>600,'MaxWidth'=>600,'MissingWidth'=>600); -$cw=array(0=>600,32=>600,33=>600,34=>600,35=>600,36=>600,37=>600,38=>600,39=>600,40=>600,41=>600,42=>600,43=>600,44=>600,45=>600,46=>600,47=>600,48=>600,49=>600,50=>600,51=>600,52=>600,53=>600,54=>600,55=>600,56=>600,57=>600,58=>600,59=>600,60=>600,61=>600,62=>600,63=>600,64=>600,65=>600,66=>600,67=>600,68=>600,69=>600,70=>600,71=>600,72=>600,73=>600,74=>600,75=>600,76=>600,77=>600,78=>600,79=>600,80=>600,81=>600,82=>600,83=>600,84=>600,85=>600,86=>600,87=>600,88=>600,89=>600,90=>600,91=>600,92=>600,93=>600,94=>600,95=>600,96=>600,97=>600,98=>600,99=>600,100=>600,101=>600,102=>600,103=>600,104=>600,105=>600,106=>600,107=>600,108=>600,109=>600,110=>600,111=>600,112=>600,113=>600,114=>600,115=>600,116=>600,117=>600,118=>600,119=>600,120=>600,121=>600,122=>600,123=>600,124=>600,125=>600,126=>600,160=>600,161=>600,162=>600,163=>600,164=>600,165=>600,166=>600,167=>600,168=>600,169=>600,170=>600,171=>600,172=>600,173=>600,174=>600,175=>600,176=>600,177=>600,178=>600,179=>600,180=>600,181=>600,182=>600,183=>600,184=>600,185=>600,186=>600,187=>600,188=>600,189=>600,190=>600,191=>600,192=>600,193=>600,194=>600,195=>600,196=>600,197=>600,198=>600,199=>600,200=>600,201=>600,202=>600,203=>600,204=>600,205=>600,206=>600,207=>600,208=>600,209=>600,210=>600,211=>600,212=>600,213=>600,214=>600,215=>600,216=>600,217=>600,218=>600,219=>600,220=>600,221=>600,222=>600,223=>600,224=>600,225=>600,226=>600,227=>600,228=>600,229=>600,230=>600,231=>600,232=>600,233=>600,234=>600,235=>600,236=>600,237=>600,238=>600,239=>600,240=>600,241=>600,242=>600,243=>600,244=>600,245=>600,246=>600,247=>600,248=>600,249=>600,250=>600,251=>600,252=>600,253=>600,254=>600,255=>600,256=>600,257=>600,258=>600,259=>600,260=>600,261=>600,262=>600,263=>600,264=>600,265=>600,266=>600,267=>600,268=>600,269=>600,270=>600,271=>600,272=>600,273=>600,274=>600,275=>600,276=>600,277=>600,278=>600,279=>600,280=>600,281=>600,282=>600,283=>600,284=>600,285=>600,286=>600,287=>600,288=>600,289=>600,290=>600,291=>600,292=>600,293=>600,294=>600,295=>600,296=>600,297=>600,298=>600,299=>600,300=>600,301=>600,302=>600,303=>600,304=>600,305=>600,306=>600,307=>600,308=>600,309=>600,310=>600,311=>600,312=>600,313=>600,314=>600,315=>600,316=>600,317=>600,318=>600,319=>600,320=>600,321=>600,322=>600,323=>600,324=>600,325=>600,326=>600,327=>600,328=>600,329=>600,330=>600,331=>600,332=>600,333=>600,334=>600,335=>600,336=>600,337=>600,338=>600,339=>600,340=>600,341=>600,342=>600,343=>600,344=>600,345=>600,346=>600,347=>600,348=>600,349=>600,350=>600,351=>600,352=>600,353=>600,354=>600,355=>600,356=>600,357=>600,358=>600,359=>600,360=>600,361=>600,362=>600,363=>600,364=>600,365=>600,366=>600,367=>600,368=>600,369=>600,370=>600,371=>600,372=>600,373=>600,374=>600,375=>600,376=>600,377=>600,378=>600,379=>600,380=>600,381=>600,382=>600,383=>600,384=>600,385=>600,386=>600,387=>600,388=>600,389=>600,390=>600,391=>600,392=>600,393=>600,394=>600,395=>600,396=>600,397=>600,398=>600,399=>600,400=>600,401=>600,402=>600,403=>600,404=>600,405=>600,406=>600,407=>600,408=>600,409=>600,410=>600,411=>600,412=>600,413=>600,414=>600,415=>600,416=>600,417=>600,418=>600,419=>600,420=>600,421=>600,422=>600,423=>600,424=>600,425=>600,426=>600,427=>600,428=>600,429=>600,430=>600,431=>600,432=>600,433=>600,434=>600,435=>600,436=>600,437=>600,438=>600,439=>600,440=>600,441=>600,442=>600,443=>600,444=>600,445=>600,446=>600,447=>600,448=>600,449=>600,450=>600,451=>600,452=>600,453=>600,454=>600,455=>600,456=>600,457=>600,458=>600,459=>600,460=>600,461=>600,462=>600,463=>600,464=>600,465=>600,466=>600,467=>600,468=>600,469=>600,470=>600,471=>600,472=>600,473=>600,474=>600,475=>600,476=>600,477=>600,478=>600,479=>600,480=>600,481=>600,482=>600,483=>600,484=>600,485=>600,486=>600,487=>600,488=>600,489=>600,490=>600,491=>600,492=>600,493=>600,494=>600,495=>600,496=>600,497=>600,498=>600,499=>600,500=>600,501=>600,502=>600,503=>600,504=>600,505=>600,506=>600,507=>600,508=>600,509=>600,510=>600,511=>600,512=>600,513=>600,514=>600,515=>600,516=>600,517=>600,518=>600,519=>600,520=>600,521=>600,522=>600,523=>600,524=>600,525=>600,526=>600,527=>600,528=>600,529=>600,530=>600,531=>600,532=>600,533=>600,534=>600,535=>600,536=>600,537=>600,538=>600,539=>600,540=>600,541=>600,542=>600,543=>600,544=>600,548=>600,549=>600,550=>600,551=>600,552=>600,553=>600,554=>600,555=>600,556=>600,557=>600,558=>600,559=>600,560=>600,561=>600,562=>600,563=>600,567=>600,592=>600,593=>600,594=>600,595=>600,596=>600,598=>600,599=>600,600=>600,601=>600,603=>600,604=>600,607=>600,608=>600,609=>600,613=>600,614=>600,615=>600,616=>600,617=>600,618=>600,619=>600,621=>600,623=>600,624=>600,625=>600,626=>600,627=>600,628=>600,629=>600,633=>600,634=>600,635=>600,636=>600,637=>600,638=>600,639=>600,640=>600,641=>600,642=>600,643=>600,644=>600,645=>600,647=>600,648=>600,649=>600,652=>600,653=>600,654=>600,656=>600,657=>600,658=>600,659=>600,660=>600,661=>600,662=>600,663=>600,664=>600,665=>600,666=>600,667=>600,668=>600,669=>600,670=>600,671=>600,672=>600,673=>600,674=>600,688=>600,689=>600,690=>600,691=>600,692=>600,693=>600,694=>600,695=>600,696=>600,697=>600,698=>600,699=>600,700=>600,701=>600,702=>600,703=>600,704=>600,705=>600,706=>600,707=>600,708=>600,709=>600,710=>600,711=>600,712=>600,713=>600,714=>600,715=>600,716=>600,717=>600,718=>600,719=>600,720=>600,721=>600,722=>600,723=>600,724=>600,725=>600,726=>600,727=>600,728=>600,729=>600,730=>600,731=>600,732=>600,733=>600,734=>600,735=>600,736=>600,737=>600,738=>600,739=>600,740=>600,741=>600,742=>600,743=>600,744=>600,745=>600,746=>600,747=>600,748=>600,749=>600,750=>600,751=>600,752=>600,753=>600,754=>600,755=>600,756=>600,757=>600,758=>600,759=>600,760=>600,761=>600,762=>600,763=>600,764=>600,765=>600,766=>600,767=>600,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,843=>0,844=>0,845=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,884=>600,885=>600,890=>600,894=>600,900=>600,901=>600,902=>600,903=>600,904=>600,905=>600,906=>600,908=>600,910=>600,911=>600,912=>600,913=>600,914=>600,915=>600,916=>600,917=>600,918=>600,919=>600,920=>600,921=>600,922=>600,923=>600,924=>600,925=>600,926=>600,927=>600,928=>600,929=>600,931=>600,932=>600,933=>600,934=>600,935=>600,936=>600,937=>600,938=>600,939=>600,940=>600,941=>600,942=>600,943=>600,944=>600,945=>600,946=>600,947=>600,948=>600,949=>600,950=>600,951=>600,952=>600,953=>600,954=>600,955=>600,956=>600,957=>600,958=>600,959=>600,960=>600,961=>600,962=>600,963=>600,964=>600,965=>600,966=>600,967=>600,968=>600,969=>600,970=>600,971=>600,972=>600,973=>600,974=>600,976=>600,977=>600,978=>600,979=>600,980=>600,981=>600,982=>600,986=>600,987=>600,988=>600,1008=>600,1009=>600,1012=>600,1013=>600,1024=>600,1025=>600,1026=>600,1027=>600,1028=>600,1029=>600,1030=>600,1031=>600,1032=>600,1033=>600,1034=>600,1035=>600,1036=>600,1037=>600,1038=>600,1039=>600,1040=>600,1041=>600,1042=>600,1043=>600,1044=>600,1045=>600,1046=>600,1047=>600,1048=>600,1049=>600,1050=>600,1051=>600,1052=>600,1053=>600,1054=>600,1055=>600,1056=>600,1057=>600,1058=>600,1059=>600,1060=>600,1061=>600,1062=>600,1063=>600,1064=>600,1065=>600,1066=>600,1067=>600,1068=>600,1069=>600,1070=>600,1071=>600,1072=>600,1073=>600,1074=>600,1075=>600,1076=>600,1077=>600,1078=>600,1079=>600,1080=>600,1081=>600,1082=>600,1083=>600,1084=>600,1085=>600,1086=>600,1087=>600,1088=>600,1089=>600,1090=>600,1091=>600,1092=>600,1093=>600,1094=>600,1095=>600,1096=>600,1097=>600,1098=>600,1099=>600,1100=>600,1101=>600,1102=>600,1103=>600,1104=>600,1105=>600,1106=>600,1107=>600,1108=>600,1109=>600,1110=>600,1111=>600,1112=>600,1113=>600,1114=>600,1115=>600,1116=>600,1117=>600,1118=>600,1119=>600,1136=>600,1137=>600,1138=>600,1156=>0,1157=>0,1158=>0,1162=>600,1163=>600,1164=>600,1165=>600,1166=>600,1167=>600,1168=>600,1169=>600,1170=>600,1171=>600,1172=>600,1173=>600,1174=>600,1175=>600,1176=>600,1177=>600,1178=>600,1179=>600,1180=>600,1181=>600,1182=>600,1183=>600,1184=>600,1185=>600,1186=>600,1187=>600,1188=>600,1189=>600,1190=>600,1191=>600,1192=>600,1193=>600,1194=>600,1195=>600,1196=>600,1197=>600,1198=>600,1199=>600,1200=>600,1201=>600,1202=>600,1203=>600,1204=>600,1205=>600,1206=>600,1207=>600,1208=>600,1209=>600,1210=>600,1211=>600,1212=>600,1213=>600,1214=>600,1215=>600,1216=>600,1217=>600,1218=>600,1219=>600,1220=>600,1221=>600,1222=>600,1223=>600,1224=>600,1225=>600,1226=>600,1227=>600,1228=>600,1229=>600,1230=>600,1231=>600,1232=>600,1233=>600,1234=>600,1235=>600,1236=>600,1237=>600,1238=>600,1239=>600,1240=>600,1241=>600,1242=>600,1243=>600,1244=>600,1245=>600,1246=>600,1247=>600,1248=>600,1249=>600,1250=>600,1251=>600,1252=>600,1253=>600,1254=>600,1255=>600,1256=>600,1257=>600,1258=>600,1259=>600,1260=>600,1261=>600,1262=>600,1263=>600,1264=>600,1265=>600,1266=>600,1267=>600,1268=>600,1269=>600,1270=>600,1271=>600,1272=>600,1273=>600,1296=>600,1297=>600,1298=>600,1299=>600,1306=>600,1307=>600,1308=>600,1309=>600,1310=>600,1311=>600,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1467=>0,1468=>0,1469=>0,1470=>0,1471=>0,1472=>600,1473=>0,1474=>0,1475=>600,1476=>0,1488=>600,1489=>600,1490=>600,1491=>600,1492=>600,1493=>600,1494=>600,1495=>600,1496=>600,1497=>600,1498=>600,1499=>600,1500=>600,1501=>600,1502=>600,1503=>600,1504=>600,1505=>600,1506=>600,1507=>600,1508=>600,1509=>600,1510=>600,1511=>600,1512=>600,1513=>600,1514=>600,1520=>600,1521=>600,1522=>600,1523=>600,1524=>600,4304=>600,4305=>600,4306=>600,4307=>600,4308=>600,4309=>600,4310=>600,4311=>600,4312=>600,4313=>600,4314=>600,4315=>600,4316=>600,4317=>600,4318=>600,4319=>600,4320=>600,4321=>600,4322=>600,4323=>600,4324=>600,4325=>600,4326=>600,4327=>600,4328=>600,4329=>600,4330=>600,4331=>600,4332=>600,4333=>600,4334=>600,4335=>600,4336=>600,4337=>600,4338=>600,4339=>600,4340=>600,4341=>600,4345=>600,4347=>600,4348=>600,7680=>600,7681=>600,7682=>600,7683=>600,7684=>600,7685=>600,7686=>600,7687=>600,7688=>600,7689=>600,7690=>600,7691=>600,7692=>600,7693=>600,7694=>600,7695=>600,7696=>600,7697=>600,7698=>600,7699=>600,7700=>600,7701=>600,7702=>600,7703=>600,7704=>600,7705=>600,7706=>600,7707=>600,7708=>600,7709=>600,7710=>600,7711=>600,7712=>600,7713=>600,7714=>600,7715=>600,7716=>600,7717=>600,7718=>600,7719=>600,7720=>600,7721=>600,7722=>600,7723=>600,7724=>600,7725=>600,7726=>600,7727=>600,7728=>600,7729=>600,7730=>600,7731=>600,7732=>600,7733=>600,7734=>600,7735=>600,7736=>600,7737=>600,7738=>600,7739=>600,7740=>600,7741=>600,7742=>600,7743=>600,7744=>600,7745=>600,7746=>600,7747=>600,7748=>600,7749=>600,7750=>600,7751=>600,7752=>600,7753=>600,7754=>600,7755=>600,7756=>600,7757=>600,7758=>600,7759=>600,7760=>600,7761=>600,7762=>600,7763=>600,7764=>600,7765=>600,7766=>600,7767=>600,7768=>600,7769=>600,7770=>600,7771=>600,7772=>600,7773=>600,7774=>600,7775=>600,7776=>600,7777=>600,7778=>600,7779=>600,7780=>600,7781=>600,7782=>600,7783=>600,7784=>600,7785=>600,7786=>600,7787=>600,7788=>600,7789=>600,7790=>600,7791=>600,7792=>600,7793=>600,7794=>600,7795=>600,7796=>600,7797=>600,7798=>600,7799=>600,7800=>600,7801=>600,7802=>600,7803=>600,7804=>600,7805=>600,7806=>600,7807=>600,7808=>600,7809=>600,7810=>600,7811=>600,7812=>600,7813=>600,7814=>600,7815=>600,7816=>600,7817=>600,7818=>600,7819=>600,7820=>600,7821=>600,7822=>600,7823=>600,7824=>600,7825=>600,7826=>600,7827=>600,7828=>600,7829=>600,7830=>600,7831=>600,7832=>600,7833=>600,7834=>600,7835=>600,7840=>600,7841=>600,7842=>600,7843=>600,7844=>600,7845=>600,7846=>600,7847=>600,7848=>600,7849=>600,7850=>600,7851=>600,7852=>600,7853=>600,7854=>600,7855=>600,7856=>600,7857=>600,7858=>600,7859=>600,7860=>600,7861=>600,7862=>600,7863=>600,7864=>600,7865=>600,7866=>600,7867=>600,7868=>600,7869=>600,7870=>600,7871=>600,7872=>600,7873=>600,7874=>600,7875=>600,7876=>600,7877=>600,7878=>600,7879=>600,7880=>600,7881=>600,7882=>600,7883=>600,7884=>600,7885=>600,7886=>600,7887=>600,7888=>600,7889=>600,7890=>600,7891=>600,7892=>600,7893=>600,7894=>600,7895=>600,7896=>600,7897=>600,7898=>600,7899=>600,7900=>600,7901=>600,7902=>600,7903=>600,7904=>600,7905=>600,7906=>600,7907=>600,7908=>600,7909=>600,7910=>600,7911=>600,7912=>600,7913=>600,7914=>600,7915=>600,7916=>600,7917=>600,7918=>600,7919=>600,7920=>600,7921=>600,7922=>600,7923=>600,7924=>600,7925=>600,7926=>600,7927=>600,7928=>600,7929=>600,8192=>600,8193=>600,8194=>600,8195=>600,8196=>600,8197=>600,8198=>600,8199=>600,8200=>600,8201=>600,8202=>600,8203=>600,8204=>0,8205=>0,8206=>0,8207=>0,8208=>600,8209=>600,8210=>600,8211=>600,8212=>600,8213=>600,8214=>600,8215=>600,8216=>600,8217=>600,8218=>600,8219=>600,8220=>600,8221=>600,8222=>600,8223=>600,8224=>600,8225=>600,8226=>600,8227=>600,8228=>600,8229=>600,8230=>600,8231=>600,8232=>600,8233=>600,8234=>600,8235=>600,8236=>600,8237=>600,8238=>600,8239=>600,8240=>600,8241=>600,8242=>600,8243=>600,8244=>600,8245=>600,8246=>600,8247=>600,8248=>600,8249=>600,8250=>600,8251=>600,8252=>600,8253=>600,8254=>600,8255=>600,8256=>600,8257=>600,8258=>600,8259=>600,8260=>600,8261=>600,8262=>600,8263=>600,8264=>600,8265=>600,8266=>600,8267=>600,8268=>600,8269=>600,8270=>600,8271=>600,8272=>600,8273=>600,8274=>600,8275=>600,8276=>600,8277=>600,8278=>600,8279=>600,8280=>600,8281=>600,8282=>600,8283=>600,8284=>600,8285=>600,8286=>600,8287=>600,8288=>600,8289=>600,8290=>600,8291=>600,8292=>600,8304=>600,8305=>600,8308=>600,8309=>600,8310=>600,8311=>600,8312=>600,8313=>600,8314=>600,8315=>600,8316=>600,8317=>600,8318=>600,8319=>600,8320=>600,8321=>600,8322=>600,8323=>600,8324=>600,8325=>600,8326=>600,8327=>600,8328=>600,8329=>600,8330=>600,8331=>600,8332=>600,8333=>600,8334=>600,8336=>600,8337=>600,8338=>600,8339=>600,8340=>600,8362=>600,8364=>600,8373=>600,8448=>600,8449=>600,8451=>600,8453=>600,8454=>600,8455=>600,8457=>600,8462=>600,8465=>600,8466=>600,8467=>600,8470=>600,8472=>600,8476=>600,8480=>600,8481=>600,8482=>600,8486=>600,8487=>600,8489=>600,8490=>600,8491=>600,8494=>600,8498=>600,8501=>600,8502=>600,8503=>600,8504=>600,8506=>600,8507=>600,8513=>600,8514=>600,8515=>600,8516=>600,8523=>600,8525=>600,8526=>600,8531=>600,8532=>600,8533=>600,8534=>600,8535=>600,8536=>600,8537=>600,8538=>600,8539=>600,8540=>600,8541=>600,8542=>600,8543=>600,8544=>600,8545=>600,8546=>600,8547=>600,8548=>600,8549=>600,8550=>600,8553=>600,8556=>600,8557=>600,8558=>600,8559=>600,8560=>600,8564=>600,8569=>600,8572=>600,8573=>600,8574=>600,8575=>600,8592=>600,8593=>600,8594=>600,8595=>600,8596=>600,8704=>600,8706=>600,8707=>600,8709=>600,8710=>600,8711=>600,8712=>600,8713=>600,8714=>600,8715=>600,8716=>600,8717=>600,8719=>600,8720=>600,8721=>600,8722=>600,8723=>600,8725=>600,8727=>600,8729=>600,8730=>600,8731=>600,8732=>600,8733=>600,8734=>600,8756=>600,8800=>600,8801=>600,8804=>600,8805=>600,9251=>600,9674=>600,9824=>600,9825=>600,9826=>600,9827=>600,9828=>600,9829=>600,9830=>600,9831=>600,9833=>600,9834=>600,9835=>600,9836=>600,9837=>600,9838=>600,9839=>600,11799=>600,42888=>600,42889=>600,42890=>600,42891=>600,42892=>600,64256=>600,64257=>600,64258=>600,64285=>600,64287=>600,64288=>600,64298=>600,64299=>600,64300=>600,64301=>600,64302=>600,64303=>600,64304=>600,64305=>600,64306=>600,64307=>600,64308=>600,64309=>600,64310=>600,64312=>600,64313=>600,64314=>600,64315=>600,64316=>600,64318=>600,64320=>600,64321=>600,64323=>600,64324=>600,64326=>600,64327=>600,64328=>600,64329=>600,64330=>600,64331=>600,64332=>600,64333=>600,64334=>600,64335=>600,65533=>600,65535=>600); +$desc=array('Flags'=>97,'FontBBox'=>'[-642 -200 834 800]','ItalicAngle'=>-12,'Ascent'=>800,'Descent'=>-200,'Leading'=>0,'CapHeight'=>583,'XHeight'=>437,'StemV'=>123,'StemH'=>53,'AvgWidth'=>600,'MaxWidth'=>600,'MissingWidth'=>600); +$cw=array(0=>600,32=>600,33=>600,34=>600,35=>600,36=>600,37=>600,38=>600,39=>600,40=>600,41=>600,42=>600,43=>600,44=>600,45=>600,46=>600,47=>600,48=>600,49=>600,50=>600,51=>600,52=>600,53=>600,54=>600,55=>600,56=>600,57=>600,58=>600,59=>600,60=>600,61=>600,62=>600,63=>600,64=>600,65=>600,66=>600,67=>600,68=>600,69=>600,70=>600,71=>600,72=>600,73=>600,74=>600,75=>600,76=>600,77=>600,78=>600,79=>600,80=>600,81=>600,82=>600,83=>600,84=>600,85=>600,86=>600,87=>600,88=>600,89=>600,90=>600,91=>600,92=>600,93=>600,94=>600,95=>600,96=>600,97=>600,98=>600,99=>600,100=>600,101=>600,102=>600,103=>600,104=>600,105=>600,106=>600,107=>600,108=>600,109=>600,110=>600,111=>600,112=>600,113=>600,114=>600,115=>600,116=>600,117=>600,118=>600,119=>600,120=>600,121=>600,122=>600,123=>600,124=>600,125=>600,126=>600,160=>600,161=>600,162=>600,163=>600,164=>600,165=>600,166=>600,167=>600,168=>600,169=>600,170=>600,171=>600,172=>600,173=>600,174=>600,175=>600,176=>600,177=>600,178=>600,179=>600,180=>600,181=>600,182=>600,183=>600,184=>600,185=>600,186=>600,187=>600,188=>600,189=>600,190=>600,191=>600,192=>600,193=>600,194=>600,195=>600,196=>600,197=>600,198=>600,199=>600,200=>600,201=>600,202=>600,203=>600,204=>600,205=>600,206=>600,207=>600,208=>600,209=>600,210=>600,211=>600,212=>600,213=>600,214=>600,215=>600,216=>600,217=>600,218=>600,219=>600,220=>600,221=>600,222=>600,223=>600,224=>600,225=>600,226=>600,227=>600,228=>600,229=>600,230=>600,231=>600,232=>600,233=>600,234=>600,235=>600,236=>600,237=>600,238=>600,239=>600,240=>600,241=>600,242=>600,243=>600,244=>600,245=>600,246=>600,247=>600,248=>600,249=>600,250=>600,251=>600,252=>600,253=>600,254=>600,255=>600,256=>600,257=>600,258=>600,259=>600,260=>600,261=>600,262=>600,263=>600,264=>600,265=>600,266=>600,267=>600,268=>600,269=>600,270=>600,271=>600,272=>600,273=>600,274=>600,275=>600,276=>600,277=>600,278=>600,279=>600,280=>600,281=>600,282=>600,283=>600,284=>600,285=>600,286=>600,287=>600,288=>600,289=>600,290=>600,291=>600,292=>600,293=>600,294=>600,295=>600,296=>600,297=>600,298=>600,299=>600,300=>600,301=>600,302=>600,303=>600,304=>600,305=>600,306=>600,307=>600,308=>600,309=>600,310=>600,311=>600,312=>600,313=>600,314=>600,315=>600,316=>600,317=>600,318=>600,319=>600,320=>600,321=>600,322=>600,323=>600,324=>600,325=>600,326=>600,327=>600,328=>600,329=>600,330=>600,331=>600,332=>600,333=>600,334=>600,335=>600,336=>600,337=>600,338=>600,339=>600,340=>600,341=>600,342=>600,343=>600,344=>600,345=>600,346=>600,347=>600,348=>600,349=>600,350=>600,351=>600,352=>600,353=>600,354=>600,355=>600,356=>600,357=>600,358=>600,359=>600,360=>600,361=>600,362=>600,363=>600,364=>600,365=>600,366=>600,367=>600,368=>600,369=>600,370=>600,371=>600,372=>600,373=>600,374=>600,375=>600,376=>600,377=>600,378=>600,379=>600,380=>600,381=>600,382=>600,383=>600,384=>600,385=>600,386=>600,387=>600,388=>600,389=>600,390=>600,391=>600,392=>600,393=>600,394=>600,395=>600,396=>600,397=>600,398=>600,399=>600,400=>600,401=>600,402=>600,403=>600,404=>600,405=>600,406=>600,407=>600,408=>600,409=>600,410=>600,411=>600,412=>600,413=>600,414=>600,415=>600,416=>600,417=>600,418=>600,419=>600,420=>600,421=>600,422=>600,423=>600,424=>600,425=>600,426=>600,427=>600,428=>600,429=>600,430=>600,431=>600,432=>600,433=>600,434=>600,435=>600,436=>600,437=>600,438=>600,439=>600,440=>600,441=>600,442=>600,443=>600,444=>600,445=>600,446=>600,447=>600,448=>600,449=>600,450=>600,451=>600,452=>600,453=>600,454=>600,455=>600,456=>600,457=>600,458=>600,459=>600,460=>600,461=>600,462=>600,463=>600,464=>600,465=>600,466=>600,467=>600,468=>600,469=>600,470=>600,471=>600,472=>600,473=>600,474=>600,475=>600,476=>600,477=>600,478=>600,479=>600,480=>600,481=>600,482=>600,483=>600,484=>600,485=>600,486=>600,487=>600,488=>600,489=>600,490=>600,491=>600,492=>600,493=>600,494=>600,495=>600,496=>600,497=>600,498=>600,499=>600,500=>600,501=>600,502=>600,503=>600,504=>600,505=>600,506=>600,507=>600,508=>600,509=>600,510=>600,511=>600,512=>600,513=>600,514=>600,515=>600,516=>600,517=>600,518=>600,519=>600,520=>600,521=>600,522=>600,523=>600,524=>600,525=>600,526=>600,527=>600,528=>600,529=>600,530=>600,531=>600,532=>600,533=>600,534=>600,535=>600,536=>600,537=>600,538=>600,539=>600,540=>600,541=>600,542=>600,543=>600,544=>600,548=>600,549=>600,550=>600,551=>600,552=>600,553=>600,554=>600,555=>600,556=>600,557=>600,558=>600,559=>600,560=>600,561=>600,562=>600,563=>600,567=>600,592=>600,593=>600,594=>600,595=>600,596=>600,598=>600,599=>600,600=>600,601=>600,603=>600,604=>600,607=>600,608=>600,609=>600,613=>600,614=>600,615=>600,616=>600,617=>600,618=>600,619=>600,621=>600,623=>600,624=>600,625=>600,626=>600,627=>600,628=>600,629=>600,633=>600,634=>600,635=>600,636=>600,637=>600,638=>600,639=>600,640=>600,641=>600,642=>600,643=>600,644=>600,645=>600,647=>600,648=>600,649=>600,652=>600,653=>600,654=>600,656=>600,657=>600,658=>600,659=>600,660=>600,661=>600,662=>600,663=>600,664=>600,665=>600,666=>600,667=>600,668=>600,669=>600,670=>600,671=>600,672=>600,673=>600,674=>600,688=>600,689=>600,690=>600,691=>600,692=>600,693=>600,694=>600,695=>600,696=>600,697=>600,698=>600,699=>600,700=>600,701=>600,702=>600,703=>600,704=>600,705=>600,706=>600,707=>600,708=>600,709=>600,710=>600,711=>600,712=>600,713=>600,714=>600,715=>600,716=>600,717=>600,718=>600,719=>600,720=>600,721=>600,722=>600,723=>600,724=>600,725=>600,726=>600,727=>600,728=>600,729=>600,730=>600,731=>600,732=>600,733=>600,734=>600,735=>600,736=>600,737=>600,738=>600,739=>600,740=>600,741=>600,742=>600,743=>600,744=>600,745=>600,746=>600,747=>600,748=>600,749=>600,750=>600,751=>600,752=>600,753=>600,754=>600,755=>600,756=>600,757=>600,758=>600,759=>600,760=>600,761=>600,762=>600,763=>600,764=>600,765=>600,766=>600,767=>600,768=>600,769=>600,770=>600,771=>600,772=>600,773=>600,774=>600,775=>600,776=>600,777=>600,778=>600,779=>600,780=>600,781=>600,782=>600,783=>600,784=>600,785=>600,786=>600,787=>600,788=>600,789=>600,790=>600,791=>600,792=>600,793=>600,794=>600,795=>600,796=>600,797=>600,798=>600,799=>600,800=>600,801=>600,802=>600,803=>600,804=>600,805=>600,806=>600,807=>600,808=>600,809=>600,810=>600,811=>600,812=>600,813=>600,814=>600,815=>600,816=>600,817=>600,818=>600,819=>600,820=>600,821=>600,822=>600,823=>600,824=>600,825=>600,826=>600,827=>600,828=>600,829=>600,830=>600,831=>600,832=>600,833=>600,834=>600,835=>600,836=>600,837=>600,838=>600,839=>600,840=>600,841=>600,842=>600,843=>600,844=>600,845=>600,846=>600,847=>600,848=>600,849=>600,850=>600,851=>600,852=>600,853=>600,854=>600,855=>600,856=>600,857=>600,858=>600,859=>600,860=>600,861=>600,862=>600,863=>600,864=>600,865=>600,866=>600,867=>600,868=>600,869=>600,870=>600,871=>600,872=>600,873=>600,874=>600,875=>600,876=>600,877=>600,878=>600,879=>600,884=>600,885=>600,890=>600,894=>600,900=>600,901=>600,902=>600,903=>600,904=>600,905=>600,906=>600,908=>600,910=>600,911=>600,912=>600,913=>600,914=>600,915=>600,916=>600,917=>600,918=>600,919=>600,920=>600,921=>600,922=>600,923=>600,924=>600,925=>600,926=>600,927=>600,928=>600,929=>600,931=>600,932=>600,933=>600,934=>600,935=>600,936=>600,937=>600,938=>600,939=>600,940=>600,941=>600,942=>600,943=>600,944=>600,945=>600,946=>600,947=>600,948=>600,949=>600,950=>600,951=>600,952=>600,953=>600,954=>600,955=>600,956=>600,957=>600,958=>600,959=>600,960=>600,961=>600,962=>600,963=>600,964=>600,965=>600,966=>600,967=>600,968=>600,969=>600,970=>600,971=>600,972=>600,973=>600,974=>600,976=>600,977=>600,978=>600,979=>600,980=>600,981=>600,982=>600,986=>600,987=>600,988=>600,989=>600,1008=>600,1009=>600,1012=>600,1013=>600,1024=>600,1025=>600,1026=>600,1027=>600,1028=>600,1029=>600,1030=>600,1031=>600,1032=>600,1033=>600,1034=>600,1035=>600,1036=>600,1037=>600,1038=>600,1039=>600,1040=>600,1041=>600,1042=>600,1043=>600,1044=>600,1045=>600,1046=>600,1047=>600,1048=>600,1049=>600,1050=>600,1051=>600,1052=>600,1053=>600,1054=>600,1055=>600,1056=>600,1057=>600,1058=>600,1059=>600,1060=>600,1061=>600,1062=>600,1063=>600,1064=>600,1065=>600,1066=>600,1067=>600,1068=>600,1069=>600,1070=>600,1071=>600,1072=>600,1073=>600,1074=>600,1075=>600,1076=>600,1077=>600,1078=>600,1079=>600,1080=>600,1081=>600,1082=>600,1083=>600,1084=>600,1085=>600,1086=>600,1087=>600,1088=>600,1089=>600,1090=>600,1091=>600,1092=>600,1093=>600,1094=>600,1095=>600,1096=>600,1097=>600,1098=>600,1099=>600,1100=>600,1101=>600,1102=>600,1103=>600,1104=>600,1105=>600,1106=>600,1107=>600,1108=>600,1109=>600,1110=>600,1111=>600,1112=>600,1113=>600,1114=>600,1115=>600,1116=>600,1117=>600,1118=>600,1119=>600,1136=>600,1137=>600,1138=>600,1156=>600,1157=>600,1158=>600,1162=>600,1163=>600,1164=>600,1165=>600,1166=>600,1167=>600,1168=>600,1169=>600,1170=>600,1171=>600,1172=>600,1173=>600,1174=>600,1175=>600,1176=>600,1177=>600,1178=>600,1179=>600,1180=>600,1181=>600,1182=>600,1183=>600,1184=>600,1185=>600,1186=>600,1187=>600,1188=>600,1189=>600,1190=>600,1191=>600,1192=>600,1193=>600,1194=>600,1195=>600,1196=>600,1197=>600,1198=>600,1199=>600,1200=>600,1201=>600,1202=>600,1203=>600,1204=>600,1205=>600,1206=>600,1207=>600,1208=>600,1209=>600,1210=>600,1211=>600,1212=>600,1213=>600,1214=>600,1215=>600,1216=>600,1217=>600,1218=>600,1219=>600,1220=>600,1221=>600,1222=>600,1223=>600,1224=>600,1225=>600,1226=>600,1227=>600,1228=>600,1229=>600,1230=>600,1231=>600,1232=>600,1233=>600,1234=>600,1235=>600,1236=>600,1237=>600,1238=>600,1239=>600,1240=>600,1241=>600,1242=>600,1243=>600,1244=>600,1245=>600,1246=>600,1247=>600,1248=>600,1249=>600,1250=>600,1251=>600,1252=>600,1253=>600,1254=>600,1255=>600,1256=>600,1257=>600,1258=>600,1259=>600,1260=>600,1261=>600,1262=>600,1263=>600,1264=>600,1265=>600,1266=>600,1267=>600,1268=>600,1269=>600,1270=>600,1271=>600,1272=>600,1273=>600,1296=>600,1297=>600,1298=>600,1299=>600,1306=>600,1307=>600,1308=>600,1309=>600,1310=>600,1311=>600,1456=>600,1457=>600,1458=>600,1459=>600,1460=>600,1461=>600,1462=>600,1463=>600,1464=>600,1465=>600,1467=>600,1468=>600,1469=>600,1470=>600,1471=>600,1472=>600,1473=>600,1474=>600,1475=>600,1476=>600,1488=>600,1489=>600,1490=>600,1491=>600,1492=>600,1493=>600,1494=>600,1495=>600,1496=>600,1497=>600,1498=>600,1499=>600,1500=>600,1501=>600,1502=>600,1503=>600,1504=>600,1505=>600,1506=>600,1507=>600,1508=>600,1509=>600,1510=>600,1511=>600,1512=>600,1513=>600,1514=>600,1520=>600,1521=>600,1522=>600,1523=>600,1524=>600,4304=>600,4305=>600,4306=>600,4307=>600,4308=>600,4309=>600,4310=>600,4311=>600,4312=>600,4313=>600,4314=>600,4315=>600,4316=>600,4317=>600,4318=>600,4319=>600,4320=>600,4321=>600,4322=>600,4323=>600,4324=>600,4325=>600,4326=>600,4327=>600,4328=>600,4329=>600,4330=>600,4331=>600,4332=>600,4333=>600,4334=>600,4335=>600,4336=>600,4337=>600,4338=>600,4339=>600,4340=>600,4341=>600,4345=>600,4347=>600,4348=>600,7680=>600,7681=>600,7682=>600,7683=>600,7684=>600,7685=>600,7686=>600,7687=>600,7688=>600,7689=>600,7690=>600,7691=>600,7692=>600,7693=>600,7694=>600,7695=>600,7696=>600,7697=>600,7698=>600,7699=>600,7700=>600,7701=>600,7702=>600,7703=>600,7704=>600,7705=>600,7706=>600,7707=>600,7708=>600,7709=>600,7710=>600,7711=>600,7712=>600,7713=>600,7714=>600,7715=>600,7716=>600,7717=>600,7718=>600,7719=>600,7720=>600,7721=>600,7722=>600,7723=>600,7724=>600,7725=>600,7726=>600,7727=>600,7728=>600,7729=>600,7730=>600,7731=>600,7732=>600,7733=>600,7734=>600,7735=>600,7736=>600,7737=>600,7738=>600,7739=>600,7740=>600,7741=>600,7742=>600,7743=>600,7744=>600,7745=>600,7746=>600,7747=>600,7748=>600,7749=>600,7750=>600,7751=>600,7752=>600,7753=>600,7754=>600,7755=>600,7756=>600,7757=>600,7758=>600,7759=>600,7760=>600,7761=>600,7762=>600,7763=>600,7764=>600,7765=>600,7766=>600,7767=>600,7768=>600,7769=>600,7770=>600,7771=>600,7772=>600,7773=>600,7774=>600,7775=>600,7776=>600,7777=>600,7778=>600,7779=>600,7780=>600,7781=>600,7782=>600,7783=>600,7784=>600,7785=>600,7786=>600,7787=>600,7788=>600,7789=>600,7790=>600,7791=>600,7792=>600,7793=>600,7794=>600,7795=>600,7796=>600,7797=>600,7798=>600,7799=>600,7800=>600,7801=>600,7802=>600,7803=>600,7804=>600,7805=>600,7806=>600,7807=>600,7808=>600,7809=>600,7810=>600,7811=>600,7812=>600,7813=>600,7814=>600,7815=>600,7816=>600,7817=>600,7818=>600,7819=>600,7820=>600,7821=>600,7822=>600,7823=>600,7824=>600,7825=>600,7826=>600,7827=>600,7828=>600,7829=>600,7830=>600,7831=>600,7832=>600,7833=>600,7834=>600,7835=>600,7840=>600,7841=>600,7842=>600,7843=>600,7844=>600,7845=>600,7846=>600,7847=>600,7848=>600,7849=>600,7850=>600,7851=>600,7852=>600,7853=>600,7854=>600,7855=>600,7856=>600,7857=>600,7858=>600,7859=>600,7860=>600,7861=>600,7862=>600,7863=>600,7864=>600,7865=>600,7866=>600,7867=>600,7868=>600,7869=>600,7870=>600,7871=>600,7872=>600,7873=>600,7874=>600,7875=>600,7876=>600,7877=>600,7878=>600,7879=>600,7880=>600,7881=>600,7882=>600,7883=>600,7884=>600,7885=>600,7886=>600,7887=>600,7888=>600,7889=>600,7890=>600,7891=>600,7892=>600,7893=>600,7894=>600,7895=>600,7896=>600,7897=>600,7898=>600,7899=>600,7900=>600,7901=>600,7902=>600,7903=>600,7904=>600,7905=>600,7906=>600,7907=>600,7908=>600,7909=>600,7910=>600,7911=>600,7912=>600,7913=>600,7914=>600,7915=>600,7916=>600,7917=>600,7918=>600,7919=>600,7920=>600,7921=>600,7922=>600,7923=>600,7924=>600,7925=>600,7926=>600,7927=>600,7928=>600,7929=>600,8192=>600,8193=>600,8194=>600,8195=>600,8196=>600,8197=>600,8198=>600,8199=>600,8200=>600,8201=>600,8202=>600,8203=>600,8204=>600,8205=>600,8206=>600,8207=>600,8208=>600,8209=>600,8210=>600,8211=>600,8212=>600,8213=>600,8214=>600,8215=>600,8216=>600,8217=>600,8218=>600,8219=>600,8220=>600,8221=>600,8222=>600,8223=>600,8224=>600,8225=>600,8226=>600,8227=>600,8228=>600,8229=>600,8230=>600,8231=>600,8232=>600,8233=>600,8234=>600,8235=>600,8236=>600,8237=>600,8238=>600,8239=>600,8240=>600,8241=>600,8242=>600,8243=>600,8244=>600,8245=>600,8246=>600,8247=>600,8248=>600,8249=>600,8250=>600,8251=>600,8252=>600,8253=>600,8254=>600,8255=>600,8256=>600,8257=>600,8258=>600,8259=>600,8260=>600,8261=>600,8262=>600,8263=>600,8264=>600,8265=>600,8266=>600,8267=>600,8268=>600,8269=>600,8270=>600,8271=>600,8272=>600,8273=>600,8274=>600,8275=>600,8276=>600,8277=>600,8278=>600,8279=>600,8280=>600,8281=>600,8282=>600,8283=>600,8284=>600,8285=>600,8286=>600,8287=>600,8288=>600,8289=>600,8290=>600,8291=>600,8292=>600,8304=>600,8305=>600,8308=>600,8309=>600,8310=>600,8311=>600,8312=>600,8313=>600,8314=>600,8315=>600,8316=>600,8317=>600,8318=>600,8319=>600,8320=>600,8321=>600,8322=>600,8323=>600,8324=>600,8325=>600,8326=>600,8327=>600,8328=>600,8329=>600,8330=>600,8331=>600,8332=>600,8333=>600,8334=>600,8336=>600,8337=>600,8338=>600,8339=>600,8340=>600,8355=>600,8356=>600,8357=>600,8358=>600,8361=>600,8362=>600,8363=>600,8364=>600,8365=>600,8366=>600,8369=>600,8370=>600,8371=>600,8372=>600,8373=>600,8376=>600,8377=>600,8448=>600,8449=>600,8451=>600,8453=>600,8454=>600,8455=>600,8457=>600,8462=>600,8465=>600,8466=>600,8467=>600,8470=>600,8472=>600,8476=>600,8480=>600,8481=>600,8482=>600,8486=>600,8487=>600,8489=>600,8490=>600,8491=>600,8494=>600,8498=>600,8501=>600,8502=>600,8503=>600,8504=>600,8506=>600,8507=>600,8513=>600,8514=>600,8515=>600,8516=>600,8523=>600,8525=>600,8526=>600,8531=>600,8532=>600,8533=>600,8534=>600,8535=>600,8536=>600,8537=>600,8538=>600,8539=>600,8540=>600,8541=>600,8542=>600,8543=>600,8592=>600,8593=>600,8594=>600,8595=>600,8596=>600,8597=>600,8598=>600,8599=>600,8600=>600,8601=>600,8612=>600,8613=>600,8614=>600,8615=>600,8633=>600,8636=>600,8637=>600,8638=>600,8639=>600,8640=>600,8641=>600,8642=>600,8643=>600,8644=>600,8645=>600,8646=>600,8647=>600,8648=>600,8649=>600,8650=>600,8651=>600,8652=>600,8656=>600,8657=>600,8658=>600,8659=>600,8660=>600,8661=>600,8704=>600,8705=>600,8706=>600,8707=>600,8708=>600,8709=>600,8710=>600,8711=>600,8712=>600,8713=>600,8714=>600,8715=>600,8716=>600,8717=>600,8718=>600,8719=>600,8720=>600,8721=>600,8722=>600,8723=>600,8724=>600,8725=>600,8726=>600,8727=>600,8728=>600,8729=>600,8730=>600,8731=>600,8732=>600,8733=>600,8734=>600,8735=>600,8739=>600,8741=>600,8743=>600,8744=>600,8745=>600,8746=>600,8747=>600,8748=>600,8756=>600,8757=>600,8758=>600,8759=>600,8764=>600,8776=>600,8800=>600,8801=>600,8804=>600,8805=>600,8834=>600,8835=>600,8838=>600,8839=>600,8869=>600,8898=>600,8899=>600,8976=>600,9001=>600,9002=>600,9251=>600,9674=>600,9675=>600,9711=>600,9824=>600,9825=>600,9826=>600,9827=>600,9828=>600,9829=>600,9830=>600,9831=>600,9833=>600,9834=>600,9835=>600,9836=>600,9837=>600,9838=>600,9839=>600,11798=>600,11799=>600,11800=>600,11802=>600,11803=>600,11806=>600,11807=>600,11816=>600,11817=>600,11818=>600,11819=>600,11820=>600,11821=>600,11822=>600,42888=>600,42889=>600,42890=>600,42891=>600,42892=>600,64256=>600,64257=>600,64258=>600,64285=>600,64287=>600,64288=>600,64298=>600,64299=>600,64300=>600,64301=>600,64302=>600,64303=>600,64304=>600,64305=>600,64306=>600,64307=>600,64308=>600,64309=>600,64310=>600,64312=>600,64313=>600,64314=>600,64315=>600,64316=>600,64318=>600,64320=>600,64321=>600,64323=>600,64324=>600,64326=>600,64327=>600,64328=>600,64329=>600,64330=>600,64331=>600,64332=>600,64333=>600,64334=>600,64335=>600,65529=>600,65530=>600,65531=>600,65532=>600,65533=>600,65535=>600); // --- EOF --- diff --git a/lib/tcpdf/fonts/freemonobi.z b/lib/tcpdf/fonts/freemonobi.z index d66026f1deab866b2c2871b7e7f80e7e3c19ed25..6bf967c01329c7c44c5035a97f05944c1d4c82c7 100644 GIT binary patch literal 169876 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

                tMqJ#npdOJtx+h^kYPJ5Ii! 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

              • EqTOhp({iJ^wri_)OIq-0EX5kjdN57imhqTYX|FV%c598f;>UBJbT0BaRPSg~ zrweZD-U%yV@*F5~qjT9MUC&&8(VQZ$O6 zLNI0*4anipOMh+4a)G)pl~L7~iO!{8pIj7^uwgb~dsGdt19&~LC^c+bt1*qQ)t8nh z*TIDOdpo+yL#rs~s~A8AS=lH(ftW`)5*c{{G*4Cc=|!2E9o0k;Mh~>!8*!vWC;tx6 zdmQ#etxucSGR#!sQErw(R<01VWLktJg3rZt595F1ex;? zXE?NvXwGW(y@>aCSd5=Rtl`i;qdChz|03q2oSQ#|SmSzbhC9Ihsxl3b*1dw2qiDVF z(9tBLsnTCVzpVM_ZYqvdR3k#OIL8>lYm@n*jgNuTt(7uG@rqt@ki zSgp=XIehV4C|b(xx!WTK6Aar)-uzq5Bm7I89=w{TS;n49Obr_6YP6O5C8CdkDe1*f zXy7LfXE|%$Mn%6_SPPN7nx02NEBD~vO@=_uNuke!FiUJSx6da<=kuIH%+EGZb4%jD zP;FD3G>bq$j!r*@IlyEIr-XDOBPZtTWjzj_o5}Dad+{@(V+?*r*JjdO}{g~@5R)%$!B&sjs!`EBz@Z}16(01_p z4p%VTFo2|PsP(u?|0GEB)=J-oT6>|=J9ZgqI|f?nebrt^L>2vmATK}YrC;dXfKoT= zkqD%J1N?D=(3{1S(+W#DtyG4yEaf!2g8#y72mS@W(0>y$T!7?nhd`2YC2i%x zz8h~v*}KHPS4PQ~>mcV9RPugdA1M1_=O8H`L>=c4xW@G+nq7Hg)yC8;o6Ovj!)h;S zDT%d3=OuO9eEN-aKHfT>w^>cGa8z0{+Jx4;H(S-{rI^EZ`1*-`@E&Ck@lU_rMzEJ> zv-+-PBHLxQ_){)})^_Lmcyk_3IpfBzxaBiK

                U+2Cu#nx*GE7@PO@bb37OH$!Y`|0!JaRdKNU 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 Fe*iJ|q(cAz literal 95447 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

              • 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 diff --git a/lib/tcpdf/fonts/freemonoi.ctg.z b/lib/tcpdf/fonts/freemonoi.ctg.z index 94e7f5c865e446db1d15656cfa5b9c6b69628d76..f2eead804b9e1c3e0dc54c4099720b3b843f244e 100644 GIT binary patch literal 4364 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 Tf9=3ziKZXJegm4j97,'FontBBox'=>'[-644 -200 816 800]','ItalicAngle'=>-12,'Ascent'=>800,'Descent'=>-200,'Leading'=>90,'CapHeight'=>563,'XHeight'=>417,'StemV'=>70,'StemH'=>30,'AvgWidth'=>600,'MaxWidth'=>600,'MissingWidth'=>600); -$cw=array(0=>600,32=>600,33=>600,34=>600,35=>600,36=>600,37=>600,38=>600,39=>600,40=>600,41=>600,42=>600,43=>600,44=>600,45=>600,46=>600,47=>600,48=>600,49=>600,50=>600,51=>600,52=>600,53=>600,54=>600,55=>600,56=>600,57=>600,58=>600,59=>600,60=>600,61=>600,62=>600,63=>600,64=>600,65=>600,66=>600,67=>600,68=>600,69=>600,70=>600,71=>600,72=>600,73=>600,74=>600,75=>600,76=>600,77=>600,78=>600,79=>600,80=>600,81=>600,82=>600,83=>600,84=>600,85=>600,86=>600,87=>600,88=>600,89=>600,90=>600,91=>600,92=>600,93=>600,94=>600,95=>600,96=>600,97=>600,98=>600,99=>600,100=>600,101=>600,102=>600,103=>600,104=>600,105=>600,106=>600,107=>600,108=>600,109=>600,110=>600,111=>600,112=>600,113=>600,114=>600,115=>600,116=>600,117=>600,118=>600,119=>600,120=>600,121=>600,122=>600,123=>600,124=>600,125=>600,126=>600,160=>600,161=>600,162=>600,163=>600,164=>600,165=>600,166=>600,167=>600,168=>600,169=>600,170=>600,171=>600,172=>600,173=>600,174=>600,175=>600,176=>600,177=>600,178=>600,179=>600,180=>600,181=>600,182=>600,183=>600,184=>600,185=>600,186=>600,187=>600,188=>600,189=>600,190=>600,191=>600,192=>600,193=>600,194=>600,195=>600,196=>600,197=>600,198=>600,199=>600,200=>600,201=>600,202=>600,203=>600,204=>600,205=>600,206=>600,207=>600,208=>600,209=>600,210=>600,211=>600,212=>600,213=>600,214=>600,215=>600,216=>600,217=>600,218=>600,219=>600,220=>600,221=>600,222=>600,223=>600,224=>600,225=>600,226=>600,227=>600,228=>600,229=>600,230=>600,231=>600,232=>600,233=>600,234=>600,235=>600,236=>600,237=>600,238=>600,239=>600,240=>600,241=>600,242=>600,243=>600,244=>600,245=>600,246=>600,247=>600,248=>600,249=>600,250=>600,251=>600,252=>600,253=>600,254=>600,255=>600,256=>600,257=>600,258=>600,259=>600,260=>600,261=>600,262=>600,263=>600,264=>600,265=>600,266=>600,267=>600,268=>600,269=>600,270=>600,271=>600,272=>600,273=>600,274=>600,275=>600,276=>600,277=>600,278=>600,279=>600,280=>600,281=>600,282=>600,283=>600,284=>600,285=>600,286=>600,287=>600,288=>600,289=>600,290=>600,291=>600,292=>600,293=>600,294=>600,295=>600,296=>600,297=>600,298=>600,299=>600,300=>600,301=>600,302=>600,303=>600,304=>600,305=>600,306=>600,307=>600,308=>600,309=>600,310=>600,311=>600,312=>600,313=>600,314=>600,315=>600,316=>600,317=>600,318=>600,319=>600,320=>600,321=>600,322=>600,323=>600,324=>600,325=>600,326=>600,327=>600,328=>600,329=>600,330=>600,331=>600,332=>600,333=>600,334=>600,335=>600,336=>600,337=>600,338=>600,339=>600,340=>600,341=>600,342=>600,343=>600,344=>600,345=>600,346=>600,347=>600,348=>600,349=>600,350=>600,351=>600,352=>600,353=>600,354=>600,355=>600,356=>600,357=>600,358=>600,359=>600,360=>600,361=>600,362=>600,363=>600,364=>600,365=>600,366=>600,367=>600,368=>600,369=>600,370=>600,371=>600,372=>600,373=>600,374=>600,375=>600,376=>600,377=>600,378=>600,379=>600,380=>600,381=>600,382=>600,383=>600,384=>600,385=>600,386=>600,387=>600,388=>600,389=>600,390=>600,391=>600,392=>600,393=>600,394=>600,395=>600,396=>600,397=>600,398=>600,399=>600,400=>600,401=>600,402=>600,403=>600,404=>600,405=>600,406=>600,407=>600,408=>600,409=>600,410=>600,411=>600,412=>600,413=>600,414=>600,415=>600,416=>600,417=>600,418=>600,419=>600,420=>600,421=>600,422=>600,423=>600,424=>600,425=>600,426=>600,427=>600,428=>600,429=>600,430=>600,431=>600,432=>600,433=>600,434=>600,435=>600,436=>600,437=>600,438=>600,439=>600,440=>600,441=>600,442=>600,443=>600,444=>600,445=>600,446=>600,447=>600,448=>600,449=>600,450=>600,451=>600,452=>600,453=>600,454=>600,455=>600,456=>600,457=>600,458=>600,459=>600,460=>600,461=>600,462=>600,463=>600,464=>600,465=>600,466=>600,467=>600,468=>600,469=>600,470=>600,471=>600,472=>600,473=>600,474=>600,475=>600,476=>600,477=>600,478=>600,479=>600,480=>600,481=>600,482=>600,483=>600,484=>600,485=>600,486=>600,487=>600,488=>600,489=>600,490=>600,491=>600,492=>600,493=>600,494=>600,495=>600,496=>600,497=>600,498=>600,499=>600,500=>600,501=>600,502=>600,503=>600,504=>600,505=>600,506=>600,507=>600,508=>600,509=>600,510=>600,511=>600,512=>600,513=>600,514=>600,515=>600,516=>600,517=>600,518=>600,519=>600,520=>600,521=>600,522=>600,523=>600,524=>600,525=>600,526=>600,527=>600,528=>600,529=>600,530=>600,531=>600,532=>600,533=>600,534=>600,535=>600,536=>600,537=>600,538=>600,539=>600,540=>600,541=>600,542=>600,543=>600,544=>600,548=>600,549=>600,550=>600,551=>600,552=>600,553=>600,554=>600,555=>600,556=>600,557=>600,558=>600,559=>600,560=>600,561=>600,562=>600,563=>600,567=>600,592=>600,593=>600,594=>600,595=>600,596=>600,597=>600,598=>600,599=>600,600=>600,601=>600,602=>600,603=>600,604=>600,605=>600,606=>600,607=>600,608=>600,609=>600,610=>600,611=>600,612=>600,613=>600,614=>600,615=>600,616=>600,617=>600,618=>600,619=>600,620=>600,621=>600,622=>600,623=>600,624=>600,625=>600,626=>600,627=>600,628=>600,629=>600,630=>600,631=>600,632=>600,633=>600,634=>600,635=>600,636=>600,637=>600,638=>600,639=>600,640=>600,641=>600,642=>600,643=>600,644=>600,645=>600,646=>600,647=>600,648=>600,649=>600,650=>600,651=>600,652=>600,653=>600,654=>600,655=>600,656=>600,657=>600,658=>600,659=>600,660=>600,661=>600,662=>600,663=>600,664=>600,665=>600,666=>600,667=>600,668=>600,669=>600,670=>600,671=>600,672=>600,673=>600,674=>600,675=>600,676=>600,677=>600,678=>600,679=>600,680=>600,681=>600,682=>600,683=>600,684=>600,685=>600,686=>600,687=>600,688=>600,689=>600,690=>600,691=>600,692=>600,693=>600,694=>600,695=>600,696=>600,697=>600,698=>600,699=>600,700=>600,701=>600,702=>600,703=>600,704=>600,705=>600,706=>600,707=>600,708=>600,709=>600,710=>600,711=>600,712=>600,713=>600,714=>600,715=>600,716=>600,717=>600,718=>600,719=>600,720=>600,721=>600,722=>600,723=>600,724=>600,725=>600,726=>600,727=>600,728=>600,729=>600,730=>600,731=>600,732=>600,733=>600,734=>600,735=>600,736=>600,737=>600,738=>600,739=>600,740=>600,741=>600,742=>600,743=>600,744=>600,745=>600,746=>600,747=>600,748=>600,749=>600,750=>600,751=>600,752=>600,753=>600,754=>600,755=>600,756=>600,757=>600,758=>600,759=>600,760=>600,761=>600,762=>600,763=>600,764=>600,765=>600,766=>600,767=>600,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,843=>0,844=>0,845=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,884=>600,885=>600,890=>600,894=>600,900=>600,901=>600,902=>600,903=>600,904=>600,905=>600,906=>600,908=>600,910=>600,911=>600,912=>600,913=>600,914=>600,915=>600,916=>600,917=>600,918=>600,919=>600,920=>600,921=>600,922=>600,923=>600,924=>600,925=>600,926=>600,927=>600,928=>600,929=>600,931=>600,932=>600,933=>600,934=>600,935=>600,936=>600,937=>600,938=>600,939=>600,940=>600,941=>600,942=>600,943=>600,944=>600,945=>600,946=>600,947=>600,948=>600,949=>600,950=>600,951=>600,952=>600,953=>600,954=>600,955=>600,956=>600,957=>600,958=>600,959=>600,960=>600,961=>600,962=>600,963=>600,964=>600,965=>600,966=>600,967=>600,968=>600,969=>600,970=>600,971=>600,972=>600,973=>600,974=>600,976=>600,977=>600,978=>600,979=>600,980=>600,981=>600,982=>600,986=>600,987=>600,988=>600,1008=>600,1009=>600,1012=>600,1013=>600,1024=>600,1025=>600,1026=>600,1027=>600,1028=>600,1029=>600,1030=>600,1031=>600,1032=>600,1033=>600,1034=>600,1035=>600,1036=>600,1037=>600,1038=>600,1039=>600,1040=>600,1041=>600,1042=>600,1043=>600,1044=>600,1045=>600,1046=>600,1047=>600,1048=>600,1049=>600,1050=>600,1051=>600,1052=>600,1053=>600,1054=>600,1055=>600,1056=>600,1057=>600,1058=>600,1059=>600,1060=>600,1061=>600,1062=>600,1063=>600,1064=>600,1065=>600,1066=>600,1067=>600,1068=>600,1069=>600,1070=>600,1071=>600,1072=>600,1073=>600,1074=>600,1075=>600,1076=>600,1077=>600,1078=>600,1079=>600,1080=>600,1081=>600,1082=>600,1083=>600,1084=>600,1085=>600,1086=>600,1087=>600,1088=>600,1089=>600,1090=>600,1091=>600,1092=>600,1093=>600,1094=>600,1095=>600,1096=>600,1097=>600,1098=>600,1099=>600,1100=>600,1101=>600,1102=>600,1103=>600,1104=>600,1105=>600,1106=>600,1107=>600,1108=>600,1109=>600,1110=>600,1111=>600,1112=>600,1113=>600,1114=>600,1115=>600,1116=>600,1117=>600,1118=>600,1119=>600,1120=>600,1121=>600,1122=>600,1123=>600,1124=>600,1126=>600,1127=>600,1128=>600,1130=>600,1131=>600,1132=>600,1133=>600,1136=>600,1137=>600,1138=>600,1140=>600,1141=>600,1142=>600,1143=>600,1148=>600,1149=>600,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1162=>600,1163=>600,1164=>600,1165=>600,1166=>600,1167=>600,1168=>600,1169=>600,1170=>600,1171=>600,1172=>600,1173=>600,1174=>600,1175=>600,1176=>600,1177=>600,1178=>600,1179=>600,1180=>600,1181=>600,1182=>600,1183=>600,1184=>600,1185=>600,1186=>600,1187=>600,1188=>600,1189=>600,1190=>600,1191=>600,1192=>600,1193=>600,1194=>600,1195=>600,1196=>600,1197=>600,1198=>600,1199=>600,1200=>600,1201=>600,1202=>600,1203=>600,1204=>600,1205=>600,1206=>600,1207=>600,1208=>600,1209=>600,1210=>600,1211=>600,1212=>600,1213=>600,1214=>600,1215=>600,1216=>600,1217=>600,1218=>600,1219=>600,1220=>600,1221=>600,1222=>600,1223=>600,1224=>600,1225=>600,1226=>600,1227=>600,1228=>600,1229=>600,1230=>600,1231=>600,1232=>600,1233=>600,1234=>600,1235=>600,1236=>600,1237=>600,1238=>600,1239=>600,1240=>600,1241=>600,1242=>600,1243=>600,1244=>600,1245=>600,1246=>600,1247=>600,1248=>600,1249=>600,1250=>600,1251=>600,1252=>600,1253=>600,1254=>600,1255=>600,1256=>600,1257=>600,1258=>600,1259=>600,1260=>600,1261=>600,1262=>600,1263=>600,1264=>600,1265=>600,1266=>600,1267=>600,1268=>600,1269=>600,1270=>600,1271=>600,1272=>600,1273=>600,1296=>600,1297=>600,1298=>600,1299=>600,1306=>600,1307=>600,1308=>600,1309=>600,1310=>600,1311=>600,1329=>600,1330=>600,1331=>600,1332=>600,1333=>600,1334=>600,1335=>600,1336=>600,1337=>600,1338=>600,1339=>600,1340=>600,1341=>600,1342=>600,1343=>600,1344=>600,1345=>600,1346=>600,1347=>600,1348=>600,1349=>600,1350=>600,1351=>600,1352=>600,1353=>600,1354=>600,1355=>600,1356=>600,1357=>600,1358=>600,1359=>600,1360=>600,1361=>600,1362=>600,1363=>600,1364=>600,1365=>600,1366=>600,1369=>600,1370=>600,1371=>600,1372=>600,1373=>600,1374=>600,1375=>600,1377=>600,1378=>600,1379=>600,1380=>600,1381=>600,1382=>600,1383=>600,1384=>600,1385=>600,1386=>600,1387=>600,1388=>600,1389=>600,1390=>600,1391=>600,1392=>600,1393=>600,1394=>600,1395=>600,1396=>600,1397=>600,1398=>600,1399=>600,1400=>600,1401=>600,1402=>600,1403=>600,1404=>600,1405=>600,1406=>600,1407=>600,1408=>600,1409=>600,1410=>600,1411=>600,1412=>600,1413=>600,1414=>600,1415=>600,1417=>600,1418=>600,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1467=>0,1468=>0,1469=>0,1470=>600,1471=>0,1472=>600,1473=>0,1474=>0,1475=>600,1476=>0,1488=>600,1489=>600,1490=>600,1491=>600,1492=>600,1493=>600,1494=>600,1495=>600,1496=>600,1497=>600,1498=>600,1499=>600,1500=>600,1501=>600,1502=>600,1503=>600,1504=>600,1505=>600,1506=>600,1507=>600,1508=>600,1509=>600,1510=>600,1511=>600,1512=>600,1513=>600,1514=>600,1520=>600,1521=>600,1522=>600,1523=>600,1524=>600,4304=>600,4305=>600,4306=>600,4307=>600,4308=>600,4309=>600,4310=>600,4311=>600,4312=>600,4313=>600,4314=>600,4315=>600,4316=>600,4317=>600,4318=>600,4319=>600,4320=>600,4321=>600,4322=>600,4323=>600,4324=>600,4325=>600,4326=>600,4327=>600,4328=>600,4329=>600,4330=>600,4331=>600,4332=>600,4333=>600,4334=>600,4335=>600,4336=>600,4337=>600,4338=>600,4339=>600,4340=>600,4341=>600,4345=>600,4347=>600,4348=>600,7680=>600,7681=>600,7682=>600,7683=>600,7684=>600,7685=>600,7686=>600,7687=>600,7688=>600,7689=>600,7690=>600,7691=>600,7692=>600,7693=>600,7694=>600,7695=>600,7696=>600,7697=>600,7698=>600,7699=>600,7700=>600,7701=>600,7702=>600,7703=>600,7704=>600,7705=>600,7706=>600,7707=>600,7708=>600,7709=>600,7710=>600,7711=>600,7712=>600,7713=>600,7714=>600,7715=>600,7716=>600,7717=>600,7718=>600,7719=>600,7720=>600,7721=>600,7722=>600,7723=>600,7724=>600,7725=>600,7726=>600,7727=>600,7728=>600,7729=>600,7730=>600,7731=>600,7732=>600,7733=>600,7734=>600,7735=>600,7736=>600,7737=>600,7738=>600,7739=>600,7740=>600,7741=>600,7742=>600,7743=>600,7744=>600,7745=>600,7746=>600,7747=>600,7748=>600,7749=>600,7750=>600,7751=>600,7752=>600,7753=>600,7754=>600,7755=>600,7756=>600,7757=>600,7758=>600,7759=>600,7760=>600,7761=>600,7762=>600,7763=>600,7764=>600,7765=>600,7766=>600,7767=>600,7768=>600,7769=>600,7770=>600,7771=>600,7772=>600,7773=>600,7774=>600,7775=>600,7776=>600,7777=>600,7778=>600,7779=>600,7780=>600,7781=>600,7782=>600,7783=>600,7784=>600,7785=>600,7786=>600,7787=>600,7788=>600,7789=>600,7790=>600,7791=>600,7792=>600,7793=>600,7794=>600,7795=>600,7796=>600,7797=>600,7798=>600,7799=>600,7800=>600,7801=>600,7802=>600,7803=>600,7804=>600,7805=>600,7806=>600,7807=>600,7808=>600,7809=>600,7810=>600,7811=>600,7812=>600,7813=>600,7814=>600,7815=>600,7816=>600,7817=>600,7818=>600,7819=>600,7820=>600,7821=>600,7822=>600,7823=>600,7824=>600,7825=>600,7826=>600,7827=>600,7828=>600,7829=>600,7830=>600,7831=>600,7832=>600,7833=>600,7834=>600,7835=>600,7840=>600,7841=>600,7842=>600,7843=>600,7844=>600,7845=>600,7846=>600,7847=>600,7848=>600,7849=>600,7850=>600,7851=>600,7852=>600,7853=>600,7854=>600,7855=>600,7856=>600,7857=>600,7858=>600,7859=>600,7860=>600,7861=>600,7862=>600,7863=>600,7864=>600,7865=>600,7866=>600,7867=>600,7868=>600,7869=>600,7870=>600,7871=>600,7872=>600,7873=>600,7874=>600,7875=>600,7876=>600,7877=>600,7878=>600,7879=>600,7880=>600,7881=>600,7882=>600,7883=>600,7884=>600,7885=>600,7886=>600,7887=>600,7888=>600,7889=>600,7890=>600,7891=>600,7892=>600,7893=>600,7894=>600,7895=>600,7896=>600,7897=>600,7898=>600,7899=>600,7900=>600,7901=>600,7902=>600,7903=>600,7904=>600,7905=>600,7906=>600,7907=>600,7908=>600,7909=>600,7910=>600,7911=>600,7912=>600,7913=>600,7914=>600,7915=>600,7916=>600,7917=>600,7918=>600,7919=>600,7920=>600,7921=>600,7922=>600,7923=>600,7924=>600,7925=>600,7926=>600,7927=>600,7928=>600,7929=>600,7936=>600,7937=>600,7938=>600,7939=>600,7940=>600,7941=>600,7942=>600,7943=>600,7944=>600,7945=>600,7946=>600,7947=>600,7948=>600,7949=>600,7950=>600,7951=>600,7952=>600,7953=>600,7954=>600,7955=>600,7956=>600,7957=>600,7960=>600,7961=>600,7962=>600,7963=>600,7964=>600,7965=>600,7968=>600,7969=>600,7970=>600,7971=>600,7972=>600,7973=>600,7974=>600,7975=>600,7976=>600,7977=>600,7978=>600,7979=>600,7980=>600,7981=>600,7982=>600,7983=>600,7984=>600,7985=>600,7986=>600,7987=>600,7988=>600,7989=>600,7990=>600,7991=>600,7992=>600,7993=>600,7994=>600,7995=>600,7996=>600,7997=>600,7998=>600,7999=>600,8000=>600,8001=>600,8002=>600,8003=>600,8004=>600,8005=>600,8008=>600,8009=>600,8010=>600,8011=>600,8012=>600,8013=>600,8016=>600,8017=>600,8018=>600,8019=>600,8020=>600,8021=>600,8022=>600,8023=>600,8025=>600,8027=>600,8029=>600,8031=>600,8032=>600,8033=>600,8034=>600,8035=>600,8036=>600,8037=>600,8038=>600,8039=>600,8040=>600,8041=>600,8042=>600,8043=>600,8044=>600,8045=>600,8046=>600,8047=>600,8048=>600,8049=>600,8050=>600,8051=>600,8052=>600,8053=>600,8054=>600,8055=>600,8056=>600,8057=>600,8058=>600,8059=>600,8060=>600,8061=>600,8064=>600,8065=>600,8066=>600,8067=>600,8068=>600,8069=>600,8070=>600,8071=>600,8072=>600,8073=>600,8074=>600,8075=>600,8076=>600,8077=>600,8078=>600,8079=>600,8080=>600,8081=>600,8082=>600,8083=>600,8084=>600,8085=>600,8086=>600,8087=>600,8088=>600,8089=>600,8090=>600,8091=>600,8092=>600,8093=>600,8094=>600,8095=>600,8096=>600,8097=>600,8098=>600,8099=>600,8100=>600,8101=>600,8102=>600,8103=>600,8104=>600,8105=>600,8106=>600,8107=>600,8108=>600,8109=>600,8110=>600,8111=>600,8112=>600,8113=>600,8114=>600,8115=>600,8116=>600,8118=>600,8119=>600,8120=>600,8121=>600,8122=>600,8123=>600,8124=>600,8125=>600,8126=>600,8127=>600,8128=>600,8129=>600,8130=>600,8131=>600,8132=>600,8134=>600,8135=>600,8136=>600,8137=>600,8138=>600,8139=>600,8140=>600,8141=>600,8142=>600,8143=>600,8144=>600,8145=>600,8146=>600,8147=>600,8150=>600,8151=>600,8152=>600,8153=>600,8154=>600,8155=>600,8157=>600,8158=>600,8159=>600,8160=>600,8161=>600,8162=>600,8163=>600,8164=>600,8165=>600,8166=>600,8167=>600,8168=>600,8169=>600,8170=>600,8171=>600,8172=>600,8173=>600,8174=>600,8175=>600,8178=>600,8179=>600,8180=>600,8182=>600,8183=>600,8184=>600,8185=>600,8186=>600,8187=>600,8188=>600,8189=>600,8190=>600,8192=>600,8193=>600,8194=>600,8195=>600,8196=>600,8197=>600,8198=>600,8199=>600,8200=>600,8201=>600,8202=>600,8203=>600,8204=>0,8205=>0,8206=>0,8207=>0,8208=>600,8209=>600,8210=>600,8211=>600,8212=>600,8213=>600,8214=>600,8215=>600,8216=>600,8217=>600,8218=>600,8219=>600,8220=>600,8221=>600,8222=>600,8223=>600,8224=>600,8225=>600,8226=>600,8227=>600,8228=>600,8229=>600,8230=>600,8231=>600,8232=>600,8233=>600,8234=>600,8235=>600,8236=>600,8237=>600,8238=>600,8239=>600,8240=>600,8241=>600,8242=>600,8243=>600,8244=>600,8245=>600,8246=>600,8247=>600,8248=>600,8249=>600,8250=>600,8251=>600,8252=>600,8253=>600,8254=>600,8255=>600,8256=>600,8257=>600,8258=>600,8259=>600,8260=>600,8261=>600,8262=>600,8263=>600,8264=>600,8265=>600,8266=>600,8267=>600,8268=>600,8269=>600,8270=>600,8271=>600,8272=>600,8273=>600,8274=>600,8275=>600,8276=>600,8277=>600,8278=>600,8279=>600,8280=>600,8281=>600,8282=>600,8283=>600,8284=>600,8285=>600,8286=>600,8287=>600,8288=>600,8289=>600,8290=>600,8291=>600,8292=>600,8304=>600,8305=>600,8308=>600,8309=>600,8310=>600,8311=>600,8312=>600,8313=>600,8314=>600,8315=>600,8316=>600,8317=>600,8318=>600,8319=>600,8320=>600,8321=>600,8322=>600,8323=>600,8324=>600,8325=>600,8326=>600,8327=>600,8328=>600,8329=>600,8330=>600,8331=>600,8332=>600,8333=>600,8334=>600,8336=>600,8337=>600,8338=>600,8339=>600,8340=>600,8355=>600,8356=>600,8359=>600,8362=>600,8364=>600,8373=>600,8448=>600,8449=>600,8450=>600,8451=>600,8452=>600,8453=>600,8454=>600,8455=>600,8456=>600,8457=>600,8461=>600,8462=>600,8463=>600,8464=>600,8465=>600,8466=>600,8467=>600,8468=>600,8469=>600,8470=>600,8471=>600,8472=>600,8473=>600,8474=>600,8476=>600,8477=>600,8478=>600,8480=>600,8481=>600,8482=>600,8484=>600,8486=>600,8487=>600,8489=>600,8490=>600,8491=>600,8494=>600,8498=>600,8501=>600,8502=>600,8503=>600,8504=>600,8505=>600,8506=>600,8507=>600,8513=>600,8514=>600,8515=>600,8516=>600,8523=>600,8525=>600,8526=>600,8531=>600,8532=>600,8533=>600,8534=>600,8535=>600,8536=>600,8537=>600,8538=>600,8539=>600,8540=>600,8541=>600,8542=>600,8543=>600,8544=>600,8545=>600,8546=>600,8547=>600,8548=>600,8549=>600,8550=>600,8551=>600,8552=>600,8553=>600,8554=>600,8555=>600,8556=>600,8557=>600,8558=>600,8559=>600,8560=>600,8561=>600,8562=>600,8563=>600,8564=>600,8565=>600,8566=>600,8567=>600,8568=>600,8569=>600,8570=>600,8571=>600,8572=>600,8573=>600,8574=>600,8575=>600,8592=>600,8593=>600,8594=>600,8595=>600,8596=>600,8597=>600,8598=>600,8599=>600,8600=>600,8601=>600,8616=>600,8704=>600,8706=>600,8707=>600,8709=>600,8710=>600,8711=>600,8712=>600,8713=>600,8715=>600,8716=>600,8721=>600,8722=>600,8723=>600,8725=>600,8729=>600,8730=>600,8733=>600,8734=>600,8745=>600,8746=>600,8747=>600,8756=>600,8764=>600,8769=>600,8770=>600,8773=>600,8776=>600,8800=>600,8801=>600,8804=>600,8805=>600,8834=>600,8835=>600,8836=>600,8837=>600,8838=>600,8839=>600,9001=>600,9002=>600,9251=>600,9674=>600,9675=>600,9711=>600,9824=>600,9825=>600,9826=>600,9827=>600,9828=>600,9829=>600,9830=>600,9831=>600,9833=>600,9834=>600,9835=>600,9836=>600,9837=>600,9838=>600,9839=>600,11799=>600,42888=>600,42889=>600,42890=>600,42891=>600,42892=>600,64256=>600,64257=>600,64258=>600,64285=>600,64286=>600,64287=>600,64288=>600,64289=>600,64290=>600,64291=>600,64292=>600,64293=>600,64294=>600,64295=>600,64296=>600,64297=>600,64298=>600,64299=>600,64300=>600,64301=>600,64302=>600,64303=>600,64304=>600,64305=>600,64306=>600,64307=>600,64308=>600,64309=>600,64310=>600,64312=>600,64313=>600,64314=>600,64315=>600,64316=>600,64318=>600,64320=>600,64321=>600,64323=>600,64324=>600,64326=>600,64327=>600,64328=>600,64329=>600,64330=>600,64331=>600,64332=>600,64333=>600,64334=>600,64335=>600,65533=>600,65535=>600); +$desc=array('Flags'=>97,'FontBBox'=>'[-644 -200 816 800]','ItalicAngle'=>-12,'Ascent'=>800,'Descent'=>-200,'Leading'=>0,'CapHeight'=>563,'XHeight'=>417,'StemV'=>70,'StemH'=>30,'AvgWidth'=>600,'MaxWidth'=>600,'MissingWidth'=>600); +$cw=array(0=>600,32=>600,33=>600,34=>600,35=>600,36=>600,37=>600,38=>600,39=>600,40=>600,41=>600,42=>600,43=>600,44=>600,45=>600,46=>600,47=>600,48=>600,49=>600,50=>600,51=>600,52=>600,53=>600,54=>600,55=>600,56=>600,57=>600,58=>600,59=>600,60=>600,61=>600,62=>600,63=>600,64=>600,65=>600,66=>600,67=>600,68=>600,69=>600,70=>600,71=>600,72=>600,73=>600,74=>600,75=>600,76=>600,77=>600,78=>600,79=>600,80=>600,81=>600,82=>600,83=>600,84=>600,85=>600,86=>600,87=>600,88=>600,89=>600,90=>600,91=>600,92=>600,93=>600,94=>600,95=>600,96=>600,97=>600,98=>600,99=>600,100=>600,101=>600,102=>600,103=>600,104=>600,105=>600,106=>600,107=>600,108=>600,109=>600,110=>600,111=>600,112=>600,113=>600,114=>600,115=>600,116=>600,117=>600,118=>600,119=>600,120=>600,121=>600,122=>600,123=>600,124=>600,125=>600,126=>600,160=>600,161=>600,162=>600,163=>600,164=>600,165=>600,166=>600,167=>600,168=>600,169=>600,170=>600,171=>600,172=>600,173=>600,174=>600,175=>600,176=>600,177=>600,178=>600,179=>600,180=>600,181=>600,182=>600,183=>600,184=>600,185=>600,186=>600,187=>600,188=>600,189=>600,190=>600,191=>600,192=>600,193=>600,194=>600,195=>600,196=>600,197=>600,198=>600,199=>600,200=>600,201=>600,202=>600,203=>600,204=>600,205=>600,206=>600,207=>600,208=>600,209=>600,210=>600,211=>600,212=>600,213=>600,214=>600,215=>600,216=>600,217=>600,218=>600,219=>600,220=>600,221=>600,222=>600,223=>600,224=>600,225=>600,226=>600,227=>600,228=>600,229=>600,230=>600,231=>600,232=>600,233=>600,234=>600,235=>600,236=>600,237=>600,238=>600,239=>600,240=>600,241=>600,242=>600,243=>600,244=>600,245=>600,246=>600,247=>600,248=>600,249=>600,250=>600,251=>600,252=>600,253=>600,254=>600,255=>600,256=>600,257=>600,258=>600,259=>600,260=>600,261=>600,262=>600,263=>600,264=>600,265=>600,266=>600,267=>600,268=>600,269=>600,270=>600,271=>600,272=>600,273=>600,274=>600,275=>600,276=>600,277=>600,278=>600,279=>600,280=>600,281=>600,282=>600,283=>600,284=>600,285=>600,286=>600,287=>600,288=>600,289=>600,290=>600,291=>600,292=>600,293=>600,294=>600,295=>600,296=>600,297=>600,298=>600,299=>600,300=>600,301=>600,302=>600,303=>600,304=>600,305=>600,306=>600,307=>600,308=>600,309=>600,310=>600,311=>600,312=>600,313=>600,314=>600,315=>600,316=>600,317=>600,318=>600,319=>600,320=>600,321=>600,322=>600,323=>600,324=>600,325=>600,326=>600,327=>600,328=>600,329=>600,330=>600,331=>600,332=>600,333=>600,334=>600,335=>600,336=>600,337=>600,338=>600,339=>600,340=>600,341=>600,342=>600,343=>600,344=>600,345=>600,346=>600,347=>600,348=>600,349=>600,350=>600,351=>600,352=>600,353=>600,354=>600,355=>600,356=>600,357=>600,358=>600,359=>600,360=>600,361=>600,362=>600,363=>600,364=>600,365=>600,366=>600,367=>600,368=>600,369=>600,370=>600,371=>600,372=>600,373=>600,374=>600,375=>600,376=>600,377=>600,378=>600,379=>600,380=>600,381=>600,382=>600,383=>600,384=>600,385=>600,386=>600,387=>600,388=>600,389=>600,390=>600,391=>600,392=>600,393=>600,394=>600,395=>600,396=>600,397=>600,398=>600,399=>600,400=>600,401=>600,402=>600,403=>600,404=>600,405=>600,406=>600,407=>600,408=>600,409=>600,410=>600,411=>600,412=>600,413=>600,414=>600,415=>600,416=>600,417=>600,418=>600,419=>600,420=>600,421=>600,422=>600,423=>600,424=>600,425=>600,426=>600,427=>600,428=>600,429=>600,430=>600,431=>600,432=>600,433=>600,434=>600,435=>600,436=>600,437=>600,438=>600,439=>600,440=>600,441=>600,442=>600,443=>600,444=>600,445=>600,446=>600,447=>600,448=>600,449=>600,450=>600,451=>600,452=>600,453=>600,454=>600,455=>600,456=>600,457=>600,458=>600,459=>600,460=>600,461=>600,462=>600,463=>600,464=>600,465=>600,466=>600,467=>600,468=>600,469=>600,470=>600,471=>600,472=>600,473=>600,474=>600,475=>600,476=>600,477=>600,478=>600,479=>600,480=>600,481=>600,482=>600,483=>600,484=>600,485=>600,486=>600,487=>600,488=>600,489=>600,490=>600,491=>600,492=>600,493=>600,494=>600,495=>600,496=>600,497=>600,498=>600,499=>600,500=>600,501=>600,502=>600,503=>600,504=>600,505=>600,506=>600,507=>600,508=>600,509=>600,510=>600,511=>600,512=>600,513=>600,514=>600,515=>600,516=>600,517=>600,518=>600,519=>600,520=>600,521=>600,522=>600,523=>600,524=>600,525=>600,526=>600,527=>600,528=>600,529=>600,530=>600,531=>600,532=>600,533=>600,534=>600,535=>600,536=>600,537=>600,538=>600,539=>600,540=>600,541=>600,542=>600,543=>600,544=>600,548=>600,549=>600,550=>600,551=>600,552=>600,553=>600,554=>600,555=>600,556=>600,557=>600,558=>600,559=>600,560=>600,561=>600,562=>600,563=>600,567=>600,592=>600,593=>600,594=>600,595=>600,596=>600,597=>600,598=>600,599=>600,600=>600,601=>600,602=>600,603=>600,604=>600,605=>600,606=>600,607=>600,608=>600,609=>600,610=>600,611=>600,612=>600,613=>600,614=>600,615=>600,616=>600,617=>600,618=>600,619=>600,620=>600,621=>600,622=>600,623=>600,624=>600,625=>600,626=>600,627=>600,628=>600,629=>600,630=>600,631=>600,632=>600,633=>600,634=>600,635=>600,636=>600,637=>600,638=>600,639=>600,640=>600,641=>600,642=>600,643=>600,644=>600,645=>600,646=>600,647=>600,648=>600,649=>600,650=>600,651=>600,652=>600,653=>600,654=>600,655=>600,656=>600,657=>600,658=>600,659=>600,660=>600,661=>600,662=>600,663=>600,664=>600,665=>600,666=>600,667=>600,668=>600,669=>600,670=>600,671=>600,672=>600,673=>600,674=>600,675=>600,676=>600,677=>600,678=>600,679=>600,680=>600,681=>600,682=>600,683=>600,684=>600,685=>600,686=>600,687=>600,688=>600,689=>600,690=>600,691=>600,692=>600,693=>600,694=>600,695=>600,696=>600,697=>600,698=>600,699=>600,700=>600,701=>600,702=>600,703=>600,704=>600,705=>600,706=>600,707=>600,708=>600,709=>600,710=>600,711=>600,712=>600,713=>600,714=>600,715=>600,716=>600,717=>600,718=>600,719=>600,720=>600,721=>600,722=>600,723=>600,724=>600,725=>600,726=>600,727=>600,728=>600,729=>600,730=>600,731=>600,732=>600,733=>600,734=>600,735=>600,736=>600,737=>600,738=>600,739=>600,740=>600,741=>600,742=>600,743=>600,744=>600,745=>600,746=>600,747=>600,748=>600,749=>600,750=>600,751=>600,752=>600,753=>600,754=>600,755=>600,756=>600,757=>600,758=>600,759=>600,760=>600,761=>600,762=>600,763=>600,764=>600,765=>600,766=>600,767=>600,768=>600,769=>600,770=>600,771=>600,772=>600,773=>600,774=>600,775=>600,776=>600,777=>600,778=>600,779=>600,780=>600,781=>600,782=>600,783=>600,784=>600,785=>600,786=>600,787=>600,788=>600,789=>600,790=>600,791=>600,792=>600,793=>600,794=>600,795=>600,796=>600,797=>600,798=>600,799=>600,800=>600,801=>600,802=>600,803=>600,804=>600,805=>600,806=>600,807=>600,808=>600,809=>600,810=>600,811=>600,812=>600,813=>600,814=>600,815=>600,816=>600,817=>600,818=>600,819=>600,820=>600,821=>600,822=>600,823=>600,824=>600,825=>600,826=>600,827=>600,828=>600,829=>600,830=>600,831=>600,832=>600,833=>600,834=>600,835=>600,836=>600,837=>600,838=>600,839=>600,840=>600,841=>600,842=>600,843=>600,844=>600,845=>600,846=>600,847=>600,848=>600,849=>600,850=>600,851=>600,852=>600,853=>600,854=>600,855=>600,856=>600,857=>600,858=>600,859=>600,860=>600,861=>600,862=>600,863=>600,864=>600,865=>600,866=>600,867=>600,868=>600,869=>600,870=>600,871=>600,872=>600,873=>600,874=>600,875=>600,876=>600,877=>600,878=>600,879=>600,884=>600,885=>600,890=>600,894=>600,900=>600,901=>600,902=>600,903=>600,904=>600,905=>600,906=>600,908=>600,910=>600,911=>600,912=>600,913=>600,914=>600,915=>600,916=>600,917=>600,918=>600,919=>600,920=>600,921=>600,922=>600,923=>600,924=>600,925=>600,926=>600,927=>600,928=>600,929=>600,931=>600,932=>600,933=>600,934=>600,935=>600,936=>600,937=>600,938=>600,939=>600,940=>600,941=>600,942=>600,943=>600,944=>600,945=>600,946=>600,947=>600,948=>600,949=>600,950=>600,951=>600,952=>600,953=>600,954=>600,955=>600,956=>600,957=>600,958=>600,959=>600,960=>600,961=>600,962=>600,963=>600,964=>600,965=>600,966=>600,967=>600,968=>600,969=>600,970=>600,971=>600,972=>600,973=>600,974=>600,976=>600,977=>600,978=>600,979=>600,980=>600,981=>600,982=>600,986=>600,987=>600,988=>600,989=>600,1008=>600,1009=>600,1012=>600,1013=>600,1024=>600,1025=>600,1026=>600,1027=>600,1028=>600,1029=>600,1030=>600,1031=>600,1032=>600,1033=>600,1034=>600,1035=>600,1036=>600,1037=>600,1038=>600,1039=>600,1040=>600,1041=>600,1042=>600,1043=>600,1044=>600,1045=>600,1046=>600,1047=>600,1048=>600,1049=>600,1050=>600,1051=>600,1052=>600,1053=>600,1054=>600,1055=>600,1056=>600,1057=>600,1058=>600,1059=>600,1060=>600,1061=>600,1062=>600,1063=>600,1064=>600,1065=>600,1066=>600,1067=>600,1068=>600,1069=>600,1070=>600,1071=>600,1072=>600,1073=>600,1074=>600,1075=>600,1076=>600,1077=>600,1078=>600,1079=>600,1080=>600,1081=>600,1082=>600,1083=>600,1084=>600,1085=>600,1086=>600,1087=>600,1088=>600,1089=>600,1090=>600,1091=>600,1092=>600,1093=>600,1094=>600,1095=>600,1096=>600,1097=>600,1098=>600,1099=>600,1100=>600,1101=>600,1102=>600,1103=>600,1104=>600,1105=>600,1106=>600,1107=>600,1108=>600,1109=>600,1110=>600,1111=>600,1112=>600,1113=>600,1114=>600,1115=>600,1116=>600,1117=>600,1118=>600,1119=>600,1120=>600,1121=>600,1122=>600,1123=>600,1124=>600,1125=>600,1126=>600,1127=>600,1128=>600,1129=>600,1130=>600,1131=>600,1132=>600,1133=>600,1134=>600,1135=>600,1136=>600,1137=>600,1138=>600,1139=>600,1140=>600,1141=>600,1142=>600,1143=>600,1144=>600,1145=>600,1146=>600,1147=>600,1148=>600,1149=>600,1150=>600,1151=>600,1155=>600,1156=>600,1157=>600,1158=>600,1159=>600,1162=>600,1163=>600,1164=>600,1165=>600,1166=>600,1167=>600,1168=>600,1169=>600,1170=>600,1171=>600,1172=>600,1173=>600,1174=>600,1175=>600,1176=>600,1177=>600,1178=>600,1179=>600,1180=>600,1181=>600,1182=>600,1183=>600,1184=>600,1185=>600,1186=>600,1187=>600,1188=>600,1189=>600,1190=>600,1191=>600,1192=>600,1193=>600,1194=>600,1195=>600,1196=>600,1197=>600,1198=>600,1199=>600,1200=>600,1201=>600,1202=>600,1203=>600,1204=>600,1205=>600,1206=>600,1207=>600,1208=>600,1209=>600,1210=>600,1211=>600,1212=>600,1213=>600,1214=>600,1215=>600,1216=>600,1217=>600,1218=>600,1219=>600,1220=>600,1221=>600,1222=>600,1223=>600,1224=>600,1225=>600,1226=>600,1227=>600,1228=>600,1229=>600,1230=>600,1231=>600,1232=>600,1233=>600,1234=>600,1235=>600,1236=>600,1237=>600,1238=>600,1239=>600,1240=>600,1241=>600,1242=>600,1243=>600,1244=>600,1245=>600,1246=>600,1247=>600,1248=>600,1249=>600,1250=>600,1251=>600,1252=>600,1253=>600,1254=>600,1255=>600,1256=>600,1257=>600,1258=>600,1259=>600,1260=>600,1261=>600,1262=>600,1263=>600,1264=>600,1265=>600,1266=>600,1267=>600,1268=>600,1269=>600,1270=>600,1271=>600,1272=>600,1273=>600,1296=>600,1297=>600,1298=>600,1299=>600,1306=>600,1307=>600,1308=>600,1309=>600,1310=>600,1311=>600,1329=>600,1330=>600,1331=>600,1332=>600,1333=>600,1334=>600,1335=>600,1336=>600,1337=>600,1338=>600,1339=>600,1340=>600,1341=>600,1342=>600,1343=>600,1344=>600,1345=>600,1346=>600,1347=>600,1348=>600,1349=>600,1350=>600,1351=>600,1352=>600,1353=>600,1354=>600,1355=>600,1356=>600,1357=>600,1358=>600,1359=>600,1360=>600,1361=>600,1362=>600,1363=>600,1364=>600,1365=>600,1366=>600,1369=>600,1370=>600,1371=>600,1372=>600,1373=>600,1374=>600,1375=>600,1377=>600,1378=>600,1379=>600,1380=>600,1381=>600,1382=>600,1383=>600,1384=>600,1385=>600,1386=>600,1387=>600,1388=>600,1389=>600,1390=>600,1391=>600,1392=>600,1393=>600,1394=>600,1395=>600,1396=>600,1397=>600,1398=>600,1399=>600,1400=>600,1401=>600,1402=>600,1403=>600,1404=>600,1405=>600,1406=>600,1407=>600,1408=>600,1409=>600,1410=>600,1411=>600,1412=>600,1413=>600,1414=>600,1415=>600,1417=>600,1418=>600,1423=>600,1456=>600,1457=>600,1458=>600,1459=>600,1460=>600,1461=>600,1462=>600,1463=>600,1464=>600,1465=>600,1467=>600,1468=>600,1469=>600,1470=>600,1471=>600,1472=>600,1473=>600,1474=>600,1475=>600,1476=>600,1488=>600,1489=>600,1490=>600,1491=>600,1492=>600,1493=>600,1494=>600,1495=>600,1496=>600,1497=>600,1498=>600,1499=>600,1500=>600,1501=>600,1502=>600,1503=>600,1504=>600,1505=>600,1506=>600,1507=>600,1508=>600,1509=>600,1510=>600,1511=>600,1512=>600,1513=>600,1514=>600,1520=>600,1521=>600,1522=>600,1523=>600,1524=>600,4304=>600,4305=>600,4306=>600,4307=>600,4308=>600,4309=>600,4310=>600,4311=>600,4312=>600,4313=>600,4314=>600,4315=>600,4316=>600,4317=>600,4318=>600,4319=>600,4320=>600,4321=>600,4322=>600,4323=>600,4324=>600,4325=>600,4326=>600,4327=>600,4328=>600,4329=>600,4330=>600,4331=>600,4332=>600,4333=>600,4334=>600,4335=>600,4336=>600,4337=>600,4338=>600,4339=>600,4340=>600,4341=>600,4345=>600,4347=>600,4348=>600,7680=>600,7681=>600,7682=>600,7683=>600,7684=>600,7685=>600,7686=>600,7687=>600,7688=>600,7689=>600,7690=>600,7691=>600,7692=>600,7693=>600,7694=>600,7695=>600,7696=>600,7697=>600,7698=>600,7699=>600,7700=>600,7701=>600,7702=>600,7703=>600,7704=>600,7705=>600,7706=>600,7707=>600,7708=>600,7709=>600,7710=>600,7711=>600,7712=>600,7713=>600,7714=>600,7715=>600,7716=>600,7717=>600,7718=>600,7719=>600,7720=>600,7721=>600,7722=>600,7723=>600,7724=>600,7725=>600,7726=>600,7727=>600,7728=>600,7729=>600,7730=>600,7731=>600,7732=>600,7733=>600,7734=>600,7735=>600,7736=>600,7737=>600,7738=>600,7739=>600,7740=>600,7741=>600,7742=>600,7743=>600,7744=>600,7745=>600,7746=>600,7747=>600,7748=>600,7749=>600,7750=>600,7751=>600,7752=>600,7753=>600,7754=>600,7755=>600,7756=>600,7757=>600,7758=>600,7759=>600,7760=>600,7761=>600,7762=>600,7763=>600,7764=>600,7765=>600,7766=>600,7767=>600,7768=>600,7769=>600,7770=>600,7771=>600,7772=>600,7773=>600,7774=>600,7775=>600,7776=>600,7777=>600,7778=>600,7779=>600,7780=>600,7781=>600,7782=>600,7783=>600,7784=>600,7785=>600,7786=>600,7787=>600,7788=>600,7789=>600,7790=>600,7791=>600,7792=>600,7793=>600,7794=>600,7795=>600,7796=>600,7797=>600,7798=>600,7799=>600,7800=>600,7801=>600,7802=>600,7803=>600,7804=>600,7805=>600,7806=>600,7807=>600,7808=>600,7809=>600,7810=>600,7811=>600,7812=>600,7813=>600,7814=>600,7815=>600,7816=>600,7817=>600,7818=>600,7819=>600,7820=>600,7821=>600,7822=>600,7823=>600,7824=>600,7825=>600,7826=>600,7827=>600,7828=>600,7829=>600,7830=>600,7831=>600,7832=>600,7833=>600,7834=>600,7835=>600,7840=>600,7841=>600,7842=>600,7843=>600,7844=>600,7845=>600,7846=>600,7847=>600,7848=>600,7849=>600,7850=>600,7851=>600,7852=>600,7853=>600,7854=>600,7855=>600,7856=>600,7857=>600,7858=>600,7859=>600,7860=>600,7861=>600,7862=>600,7863=>600,7864=>600,7865=>600,7866=>600,7867=>600,7868=>600,7869=>600,7870=>600,7871=>600,7872=>600,7873=>600,7874=>600,7875=>600,7876=>600,7877=>600,7878=>600,7879=>600,7880=>600,7881=>600,7882=>600,7883=>600,7884=>600,7885=>600,7886=>600,7887=>600,7888=>600,7889=>600,7890=>600,7891=>600,7892=>600,7893=>600,7894=>600,7895=>600,7896=>600,7897=>600,7898=>600,7899=>600,7900=>600,7901=>600,7902=>600,7903=>600,7904=>600,7905=>600,7906=>600,7907=>600,7908=>600,7909=>600,7910=>600,7911=>600,7912=>600,7913=>600,7914=>600,7915=>600,7916=>600,7917=>600,7918=>600,7919=>600,7920=>600,7921=>600,7922=>600,7923=>600,7924=>600,7925=>600,7926=>600,7927=>600,7928=>600,7929=>600,7936=>600,7937=>600,7938=>600,7939=>600,7940=>600,7941=>600,7942=>600,7943=>600,7944=>600,7945=>600,7946=>600,7947=>600,7948=>600,7949=>600,7950=>600,7951=>600,7952=>600,7953=>600,7954=>600,7955=>600,7956=>600,7957=>600,7960=>600,7961=>600,7962=>600,7963=>600,7964=>600,7965=>600,7968=>600,7969=>600,7970=>600,7971=>600,7972=>600,7973=>600,7974=>600,7975=>600,7976=>600,7977=>600,7978=>600,7979=>600,7980=>600,7981=>600,7982=>600,7983=>600,7984=>600,7985=>600,7986=>600,7987=>600,7988=>600,7989=>600,7990=>600,7991=>600,7992=>600,7993=>600,7994=>600,7995=>600,7996=>600,7997=>600,7998=>600,7999=>600,8000=>600,8001=>600,8002=>600,8003=>600,8004=>600,8005=>600,8008=>600,8009=>600,8010=>600,8011=>600,8012=>600,8013=>600,8016=>600,8017=>600,8018=>600,8019=>600,8020=>600,8021=>600,8022=>600,8023=>600,8025=>600,8027=>600,8029=>600,8031=>600,8032=>600,8033=>600,8034=>600,8035=>600,8036=>600,8037=>600,8038=>600,8039=>600,8040=>600,8041=>600,8042=>600,8043=>600,8044=>600,8045=>600,8046=>600,8047=>600,8048=>600,8049=>600,8050=>600,8051=>600,8052=>600,8053=>600,8054=>600,8055=>600,8056=>600,8057=>600,8058=>600,8059=>600,8060=>600,8061=>600,8064=>600,8065=>600,8066=>600,8067=>600,8068=>600,8069=>600,8070=>600,8071=>600,8072=>600,8073=>600,8074=>600,8075=>600,8076=>600,8077=>600,8078=>600,8079=>600,8080=>600,8081=>600,8082=>600,8083=>600,8084=>600,8085=>600,8086=>600,8087=>600,8088=>600,8089=>600,8090=>600,8091=>600,8092=>600,8093=>600,8094=>600,8095=>600,8096=>600,8097=>600,8098=>600,8099=>600,8100=>600,8101=>600,8102=>600,8103=>600,8104=>600,8105=>600,8106=>600,8107=>600,8108=>600,8109=>600,8110=>600,8111=>600,8112=>600,8113=>600,8114=>600,8115=>600,8116=>600,8118=>600,8119=>600,8120=>600,8121=>600,8122=>600,8123=>600,8124=>600,8125=>600,8126=>600,8127=>600,8128=>600,8129=>600,8130=>600,8131=>600,8132=>600,8134=>600,8135=>600,8136=>600,8137=>600,8138=>600,8139=>600,8140=>600,8141=>600,8142=>600,8143=>600,8144=>600,8145=>600,8146=>600,8147=>600,8150=>600,8151=>600,8152=>600,8153=>600,8154=>600,8155=>600,8157=>600,8158=>600,8159=>600,8160=>600,8161=>600,8162=>600,8163=>600,8164=>600,8165=>600,8166=>600,8167=>600,8168=>600,8169=>600,8170=>600,8171=>600,8172=>600,8173=>600,8174=>600,8175=>600,8178=>600,8179=>600,8180=>600,8182=>600,8183=>600,8184=>600,8185=>600,8186=>600,8187=>600,8188=>600,8189=>600,8190=>600,8192=>600,8193=>600,8194=>600,8195=>600,8196=>600,8197=>600,8198=>600,8199=>600,8200=>600,8201=>600,8202=>600,8203=>600,8204=>600,8205=>600,8206=>600,8207=>600,8208=>600,8209=>600,8210=>600,8211=>600,8212=>600,8213=>600,8214=>600,8215=>600,8216=>600,8217=>600,8218=>600,8219=>600,8220=>600,8221=>600,8222=>600,8223=>600,8224=>600,8225=>600,8226=>600,8227=>600,8228=>600,8229=>600,8230=>600,8231=>600,8232=>600,8233=>600,8234=>600,8235=>600,8236=>600,8237=>600,8238=>600,8239=>600,8240=>600,8241=>600,8242=>600,8243=>600,8244=>600,8245=>600,8246=>600,8247=>600,8248=>600,8249=>600,8250=>600,8251=>600,8252=>600,8253=>600,8254=>600,8255=>600,8256=>600,8257=>600,8258=>600,8259=>600,8260=>600,8261=>600,8262=>600,8263=>600,8264=>600,8265=>600,8266=>600,8267=>600,8268=>600,8269=>600,8270=>600,8271=>600,8272=>600,8273=>600,8274=>600,8275=>600,8276=>600,8277=>600,8278=>600,8279=>600,8280=>600,8281=>600,8282=>600,8283=>600,8284=>600,8285=>600,8286=>600,8287=>600,8288=>600,8289=>600,8290=>600,8291=>600,8292=>600,8304=>600,8305=>600,8308=>600,8309=>600,8310=>600,8311=>600,8312=>600,8313=>600,8314=>600,8315=>600,8316=>600,8317=>600,8318=>600,8319=>600,8320=>600,8321=>600,8322=>600,8323=>600,8324=>600,8325=>600,8326=>600,8327=>600,8328=>600,8329=>600,8330=>600,8331=>600,8332=>600,8333=>600,8334=>600,8336=>600,8337=>600,8338=>600,8339=>600,8340=>600,8353=>600,8354=>600,8355=>600,8356=>600,8357=>600,8358=>600,8359=>600,8360=>600,8361=>600,8362=>600,8363=>600,8364=>600,8365=>600,8366=>600,8367=>600,8368=>600,8369=>600,8370=>600,8371=>600,8372=>600,8373=>600,8376=>600,8377=>600,8448=>600,8449=>600,8450=>600,8451=>600,8452=>600,8453=>600,8454=>600,8455=>600,8456=>600,8457=>600,8461=>600,8462=>600,8463=>600,8464=>600,8465=>600,8466=>600,8467=>600,8468=>600,8469=>600,8470=>600,8471=>600,8472=>600,8473=>600,8474=>600,8476=>600,8477=>600,8478=>600,8480=>600,8481=>600,8482=>600,8484=>600,8486=>600,8487=>600,8489=>600,8490=>600,8491=>600,8494=>600,8498=>600,8501=>600,8502=>600,8503=>600,8504=>600,8505=>600,8506=>600,8507=>600,8513=>600,8514=>600,8515=>600,8516=>600,8523=>600,8525=>600,8526=>600,8531=>600,8532=>600,8533=>600,8534=>600,8535=>600,8536=>600,8537=>600,8538=>600,8539=>600,8540=>600,8541=>600,8542=>600,8543=>600,8544=>600,8545=>600,8546=>600,8547=>600,8548=>600,8549=>600,8550=>600,8551=>600,8552=>600,8553=>600,8554=>600,8555=>600,8556=>600,8557=>600,8558=>600,8559=>600,8560=>600,8561=>600,8562=>600,8563=>600,8564=>600,8565=>600,8566=>600,8567=>600,8568=>600,8569=>600,8570=>600,8571=>600,8572=>600,8573=>600,8574=>600,8575=>600,8592=>600,8593=>600,8594=>600,8595=>600,8596=>600,8597=>600,8598=>600,8599=>600,8600=>600,8601=>600,8612=>600,8613=>600,8614=>600,8615=>600,8616=>600,8617=>600,8618=>600,8628=>600,8629=>600,8636=>600,8637=>600,8638=>600,8639=>600,8640=>600,8641=>600,8642=>600,8643=>600,8644=>600,8646=>600,8651=>600,8652=>600,8656=>600,8657=>600,8658=>600,8659=>600,8660=>600,8661=>600,8668=>600,8669=>600,8704=>600,8705=>600,8706=>600,8707=>600,8708=>600,8709=>600,8710=>600,8711=>600,8712=>600,8713=>600,8714=>600,8715=>600,8716=>600,8717=>600,8718=>600,8719=>600,8720=>600,8721=>600,8722=>600,8723=>600,8724=>600,8725=>600,8726=>600,8727=>600,8728=>600,8729=>600,8730=>600,8731=>600,8732=>600,8733=>600,8734=>600,8735=>600,8736=>600,8739=>600,8740=>600,8741=>600,8742=>600,8745=>600,8746=>600,8747=>600,8748=>600,8756=>600,8757=>600,8758=>600,8759=>600,8764=>600,8769=>600,8770=>600,8771=>600,8773=>600,8776=>600,8800=>600,8801=>600,8804=>600,8805=>600,8834=>600,8835=>600,8836=>600,8837=>600,8838=>600,8839=>600,8869=>600,8898=>600,8899=>600,8901=>600,8976=>600,8994=>600,8995=>600,9001=>600,9002=>600,9251=>600,9674=>600,9675=>600,9711=>600,9824=>600,9825=>600,9826=>600,9827=>600,9828=>600,9829=>600,9830=>600,9831=>600,9833=>600,9834=>600,9835=>600,9836=>600,9837=>600,9838=>600,9839=>600,11798=>600,11799=>600,11800=>600,11802=>600,11803=>600,11806=>600,11807=>600,11816=>600,11817=>600,11818=>600,11819=>600,11820=>600,11821=>600,11822=>600,42888=>600,42889=>600,42890=>600,42891=>600,42892=>600,64256=>600,64257=>600,64258=>600,64285=>600,64286=>600,64287=>600,64288=>600,64289=>600,64290=>600,64291=>600,64292=>600,64293=>600,64294=>600,64295=>600,64296=>600,64297=>600,64298=>600,64299=>600,64300=>600,64301=>600,64302=>600,64303=>600,64304=>600,64305=>600,64306=>600,64307=>600,64308=>600,64309=>600,64310=>600,64312=>600,64313=>600,64314=>600,64315=>600,64316=>600,64318=>600,64320=>600,64321=>600,64323=>600,64324=>600,64326=>600,64327=>600,64328=>600,64329=>600,64330=>600,64331=>600,64332=>600,64333=>600,64334=>600,64335=>600,65529=>600,65530=>600,65531=>600,65532=>600,65533=>600,65535=>600); // --- EOF --- diff --git a/lib/tcpdf/fonts/freemonoi.z b/lib/tcpdf/fonts/freemonoi.z index 9418d5fa2155076a9980bdb800b42099e166d143..fa76f851453f5e9989b295932e9cee5e03adeba1 100644 GIT binary patch literal 221203 zcmZs>Wl&sEx2_Ap-642@;O;>?c!Ik_2X_hX65JuUTX5IL8+V7`u8q4(-+cS*bL#GM zZ`G`4yz~9BR@JDQYm7B(cx0`0x@W2XeR}ji@0@dYA8k&rnrjB>xDhq0q-+$S%Bd+! zepOe;|IdTaHjF!6Bn)M*Ib z1ON{1)|}1-lmJsVS}dOj(*hF@cP z^*%RnJ3m5mqKnak?Hmygw)yvN>(;lt=HKrpN0eVIdX_EFN&MuRIcl_7B{$~AraFHN z%s28squdnJQJGWd`n?m69d_N%4+y`6zuSG_WpwAKRChpre^X!V4k`z(DztmN{VjI) znv~HR%52nS{iIIi%Ftv(*7TJu%lc*JuZ)aklX3nqt}is*lydcC$IFO73k|K1;FBJv zh7y5!j*WGDeFSs9y>c!tPMu25?oARj+%M9auYxVnKx4u!@rZjn8We#b^CuYh4w9&d z89;{($k>A2FwAC8Iz%5l*E)&uD_>#js1Ip?-HG>*)2CnfaFXO^_FJ3veQ;f%n`p=7 zCrF#B*x5bki;^uK6q`SS)C!PWQWDu}Oyu;ZXICKLl@)JdN8B_ve7l#{x}UoG^EgrF zfENdly1bu!M;-?c@X1%pr{p*FL4^KK&Q8Lph5_7}Z<}S&Ia813KkZ-jR#tkv5x_T3 zyag3#{h5)}6xjTIZ(%!}oS7C6b6hei#5eR_n@Ii>kzvg!J4gf7m3Z9!=0&Q))qk#h zT0SDhsQgeoxpBUi#SshbXEz?6zG?p+98Z1K-Us2YnW{lPBBb}fNd!9=p?89tqFbn+ z#-!_QOD9i4oTtTs;o;AJ?g^prDLvjmOKEmow%~(^c%((N1g(|N`OEOpNY(=!)ixhj z;UYGvTh0P|3S#TdIyopKeT}$hKmWk-YTdEe#$|Cwx|Ur9PNP{2K|=_8$-r^`0sa~h zoYc6Rtg5>|xBHlTjg?<{Z8fM;`ZozEBh0;+dno~^9dxMq?#*AgyOd1(!7u6feLYf0&WZ5~+_7RQ z+V7Vtk!0c~y-V*Q?ckQ#TK9NuUJ#K4u;P0>Nv^dcm+*U+rCCm6B(4feM*kE91Px=`kErgeukZJ;?6E?5{Sh-RoqsKO*l*Urbt zE{`4TB+mO{6cu%a>+=n;8osCEg32n~E^D zH%l|WC@V#DC+Q34y|0h{>-FRKE{*~Jh=Qg(9dQ0}?%lcD^wmG>3frv##gVDbQMuHyLc0K)nVl@CT%5ieM1==p#-(UB*Q*qu% zqO+RQJvoq3X|6uhI7Zd|_$ad$zMFrO79w|q_hSQL+w?QI%$Tr~zAzI-vOH>lGTnbS z%~!4e&9VyK@6_@f-!a?NGy+9B3utZ{Syn*l5$Z%SQp)E-W?bFGO|9?;7YCd-`VD7) zJlaWjb!MN(Bo-*UmZXgIaBUb1XAB;qH{Wr!NwE6d$&MEkAwi&A6=Y2Cs+Vvl{8Qku zxM$ULrI<5QYuZ0_xSOlJOn;Kj35dL~ny`=Q;)6uPls3UdYEOS-PeiT_anY5gI`nvM zi!Z=IH?g#XGvS`k#m#QyziM%{u_wmOS8<==*HxA6i75}$-2^T zqZeXZnBR=NJ}NwiC4>>_k5Meo$=8K;@hbSv-*F>h6ayt@&x}LY+>U~NHD~D-P3|R+ ziy$-VOQez3FP7gIPI5*#qzj3Gc;_Vwqjm-MR) zhr03R_a8ZtheDE~9(zxwwtNhJ;o+Rbn9OxEl0TV~=iScTem7L_y2G~`VzWo4UOiSM z=l8dyM%b5og?N1P$$t$^Tb8cz?mtpjSpO!Uv|Ei)@ooKVf7xtp9eyo{j^4RaX0T*W ziI~bwZR~BZc3jxyQrN3~C{3US4>W~zke9k?G{n1P!bg(JZdhPUEMJ3FH|YD#mEWh@ z;=xK-8kYF^&lG&&GZz*DEqfMusPDAHr>me9D;}mL zTOPOjpRSuwL_b6Sp{@S5?ZW`wGNSiS_Bfzzf0659*(1qs^EN|y_rX9CoEfV6G$FHL zO(k@|eJ1MxHnd^qqAvC-_cC+%^fC%IT8^!W)Sc>F}zBxZc6w1Do+$# zw1dl~0Q;OQu=TjfV*UfRj?bmnp*&6O)@3`p@DYQ<188OX2`uKIjGKD;qDCwsnV?TC z)=9NHHKK}zK;*1HdabrXlb7vHcD6yOb2DXHB%CnVHYT36^o>U}^yRa3^!}H4$P*Ly zIfC)o*yYP7u&m!>QUPPeqkA0Ujzc{Ae)2fTCL9H=-@o5)L2~FZLDUCz*`cK+AptrE zAdXqMCLONHY+B(e`nHx|`I)VQp;#HMllB~6rtHWs;KrOO2oE|D0VU573a1qs01RmC zm6^#3v>=Ad)SkF7wUR=bLMyO57QPCviw$TY=*#zOF5SXnyKXEZd=U>%36J%0m0`z&^H5CN zLBS_30W4n`f77G=RW#u)mb?-U9gvqow>l{;&a8Fu@eXP{c;A1=d8M`EJ>1S%!1+$5 zVvA|Gl3VTpgHICPGmG@X?ZuJR7=gAMcJ!9~h1D*U^Ohgv&b8#k~J% zyl^a^D`aNi^?wN= z(U`?)GE5>j{8jF9?CSBe4I?!WhsOFbB;kodw>Y86l)w$|uLMfE3!kRGQZCn*$INX3 z6acV4gH0`3wPSucH{WJ~YL8eatZ7Hhg8P6@c*nX0oRUDFKqF21q}XeE3q)2*ga|AS z=X($ADr-mh?W5}`xqcb{vf2HFrA=!&PfxG1Jx;p-L;)=R=4Jnc;X1wKr!+Fs-vEL!@O76ho^-b;iWHWL337v*}tiy+e zd1||QVt78nABROBuYI6p;dgxQlE$pzjw0u|LdKfIiTR}V^z6R%*D5X2Cg&!!Cb`D3 zCX5y7GrzN%70k2E716W2BhN4@l)In1n|lZz2mgishC00aKY{NlFNZ#$!5t#lqpy*82-k{OVjUo& z1?B%xspZiou0&Zt&{m=L0NrpgY;_hnwaR6a}3;t7D5T2m{9QB%UhWC78_P2vMuTw zY*vjZ6BA3 znMBDTpxnXSSmBuJpmkq8ZgAAT)~?^4)jsQ1bnbLoe^Gx{f68?+>sHpDbS|-u)CNA= z_}kg=qP6bszWLYJ;(>fUv)zB$SMPznjo%fx>FfH?cFwy#)=uO)b&|6zQs`~{@aMd4 zy=Z-4ef#{?9_ViFE)B9c#1aB;KJ`oGL%@{mPB@(Oc9>!dk(3BKE;@|m2lI5 zSg@;UY?!Zk^YHv({!EsbDHW&ZcUq;h=gBjOpAPrY7X{<5B2YlO-sE@yPzG| z`aYT+Bd00K;h{LxY{=&K(~VJCXHo&E)y^6Bj*dbIYPcGY$ioPI@BYYV2Nc?xyelBU3_ruhBb&%L>9lXVyx#jEDadI&vfH zS_w*i-~Yy&O*ES8pjCz}kl9o(*$c@C*EDL&=sMIjYwOv8R_q%>`v(?;D>he@Dho$- z^dV-ncJn2T5i+td2D^hb?5Xm!mG$D#4F`%Et7$1^dd7I z=wz2IqbTYUJJ-IWspmL$9oVF`q zgRfPj6f{x3prGMo$wAif=WWx|KRsCnd|&7ZoESwza&ijMS5+O5ibsP2a?XJyVtJyb2dMv#o-b zg17>QrX-ga|2F&C>>CmvytKo|rcWJIwN$q8XmWdAq#_AQd=NW}VbZ}b7_vcbkH304 zx??d)1I0|X5B5Ggh!tj5Fp(`Ke5Sx`jLS_Snorg_BgM9~^^o{dYjhfV`9a_lr({mK zD~Lxz(8v1^%r*5JJS^X^nn%yMabJ_F-7aA$zxG}C-hH5_f$&J>F}|Jb zYOT@eqn*9}?3d9=deGSJ{QaesBPB)3(03Fpi5ok$RiV9{lcPStq=4Sk9 z@fn4PC><|zvukn{0kCR;G-pCVV7RhE(lBkoA3O_cNrG0Txl;TG#4^^QAVI`5_F$_v z>;-u$+mqm0FjFuMfi{K@jU?)W72gl8T9ijaWQ!{7YNjn(sDcz4k)AaqHs*&I%4p3(nKJ`!Ih@U8Z@g$6bK0jm+C1c0ARjeQf&(bG3+JNSip$h?0)=jfOD=$6C7x+9VFjlF6(ig_^F{W5Q@5fI*%22rOYiWJYl;Z-hC# zk#xQz`ha0K9lAjXK6+bbXpNw+-v2N7f~MWkeEpF+k-A@CJSe+sC}1|>#&eO<*s-{@ zD1vLk;`fbSw~cJ?k)J)`--LhpQHTNJ@^S%=Zwx#XA%lg}9{412;=3xA!xv~2LAgU) zhny}qAKM}dh7?^kA|{2dT8D@qzU)$1tnEg7e`sy)8RC0fLZn>XHWBi%l>w}7y9@Dc z#!i4tZqAlo8C`C98goJyxTn1kb*H|b5L=4CUHo^fvWVX$-t!;?9DP{4iT0<^Wv5=0 zgFKqq-qY`S5r920vTA-p1wA&l-fM0>@$@<{I)czI3O2z(4oHt1yH9}aHz4E+&gIJC z^;P2X9SQh~?Ctw279bIt9eq@+#Q)|_bz$%FF5nD7v-F9O2XY?RxU^v{#l5~chUH1gA$Q3ueq7f=Su(FU3o81DIl zcRb`6%A7-fyMdImVDnqP!JgCoh*q8r97ho!F=W8s^vU15W{Erbbtiu1ObM?Q|5NM| zv4`Ll{ZWM>Up@~tzz=yXpFo`PgT;(#e$r)Sum!C!^R~{26O0e-1MH>x2LNq*h$?DT z{Y8lCPv%SSE!r)(tpH`FO+4AZbKULTsp4gPu$2uJq`|6iZ@PO`tLUFB$QS$liU1xj zLGCafq{OSQG0M8OFkGN+J+zJ{7Q_XZXgecYG!s414_k$QF_K{Iz6!x?R$Z>6{ukag zFUO|zhABtC-U6`SFeH`Wv|ukeu=UVSKWzDbxRf#L$h z%jUn_35BQFa7W2bxl<3FQ&G$)?uA1RZ>|CnwnVbu(Po~gZ#$9ovQWTLM-53=7BkJ! zoQIC0L>Y&6_@fA0x;=Lx(VfT?n)xMBNB)e>9r#`B18%8Q5Bpo-4?;ED&!g)3`Uu%g zOWW4ZhH&6TE20%4$9Z4G< zO3qTFSLIj9h1>Bq&W%skr(1~D-%+!nkuNWnV9L!`UKfz#JL|na_PPlA`=-Q;%4xye zLPRyFAQLbPMRBPkU(WsIz7u=RA}kyRbfKENnf47lAU#b{v z+y~|Yy`xt1r(-$nAURO?WkQ}6_WaN&eMw0i9ALNJ$SvP6a-fJ+?g_gFF0bx`r$5+U z;e0z}UI2A{FSk&lGw6pQB*^|ImZqzr5w(WSN7m|lU3GJk>>%)r} zo%RP(AlpKJexFlurS`l|Gz#}XZz8@;1c&x`2cnLP-U~O*RQLP}gUe>px6{Em_rgVy z=~cMS|AX_XbPHg>1=_6)i)L4M7clRE{o@OQ3HZlp>hK$ZOV_VSt?4IJ!G4>4X44nc z^ataM&fyNC^oQO>L(4M+sG$p#*9%Ib=NCf`h8^PHS_<=diFcs9J~P2Qmx%SftiuvI z4O$RA=n=JT!CH9zVr~b8rNM<=)=4bwVPBK~8gw6iBX{x-Qvmm+g8S|_doJ8BFUh-J$en!R$Tn$) z9=0AS$Tov^y$5}!(k?vxK9You5CihUDAN`Jc_ozHS8zOj-ERLbCU87Ndmm{a5Sc9o z;r?lfQ<3~gtl)B6g7O2rasf&YjZ#hi%LL`KCUMtBG+qqHdefiZ9}P=$GBWQ39VtzDuw2MBq&SVgphP;luBKo zHnqr=(rz(}e42L})aq8F^--_Fv*uN9P%cg26|XYWKeNwY=&=y-AZ?+j)h&&QHe1i< z>yg3p;rR!T40`0`tion-_bpQxiecj8yiGLMOHy(24{>(Uq=@W&L&&c1*Rgq1-$=1x zGJ;11CCS&jXED4?K5`>=#sp5)4f9}b(0z5@k%KwIvjQ+`lqRmgKok(6d+i~D2x-z# ztJ`eFP2#x_LA><|$w3{68{hRL8(bbgsptVZ{FW~!*SHwaIl-NxEi0^3@##11XJ4Z3 z8>^+C`LCw8m6FgZLPx5?uA9W;37sXRm zl?~$b7sU<*A^LG=)iQC5CYdJ*CtiDPumk^ZHyt2&t$ z|KJyy7AV}a2R^_9z179?D0;@T`bPiIGwFokwqO`9`C)keDMpzRDd#J2b<6+7SKJr% zO+;#S?$(p=MFdG{s_!Oh>4nzi2K9@fl#;(RlEW6zUu=+H0336A(Y@P#`yzDf-aY0G zxy-$MV)xmCyYxj?qRelIBYt6g2Pbl_->xG}is)a6-A^Svpl!+B)~7bt)LrlkZ(_wb zc=}z^9sr622@)`N^RfepO`L{b+a|=<VB0OxMeQrBgNJGfVgr+e=Gug=k6T6#Wx zh2wzLMy^EU`!GGRips%v!M!DuzaJz-x%L#zy7WO9qXW$mh+Hl1NbsuyTR&ur30{lJ zhv1#UuvdTWPHg-lALB}QflA52!vt<|qw^GADfhQ>hqd<=2^pagehlhx_J9G942CCh$1JA4;u zZa?(fAu*FzuY3hbFnyr^tW&;1F;v}_i#$gubdeb1LFbk(m8%0W!`waKFvq+-4De^G zpOWIg>E^}CR#URR@$@6{$%=io;P6vn4LBoIB3!|}txx(n)(t|>nG8H{ZDdD!c#3X? zG1THX7k{pS-(>RWN)t_;hN`->lf3CGf|>K$5#OsN7b>>g$=g~;(rd&@7AJ{TT=g9S z7Vf6IU^~~sZTSn@NwJX6%so2Oe}eNaSeITks~r%A?6$zwA_}_h&^ulJq34a!- zd(~n4%Kg?ChJrGn1S$W4D!tx;wO`HXY$1VR;=>(VWO^gbQY2`T_p zO|OkU4&_5-9#^EnXAsEuL18J<6XP=-muHqQxx4S4kgfnMa5%6lnA|XQ3cz`w0qGcQ zSxh*@uzl2mfCuhYr#-{!E_xp}t)NJD7x_?sYAASm3<+}F$CmF4pRF`KWHEe6{OVG8 zvA(q)lkGOwOiJN4=l`!AEKFR#tR)2(DbBe`*kH9SOKge^gOGAJg6!`D9I&33g8<46 zR=_PdAa!5rlw^*{>Cik78D8M4zo`F^&D>L8Kz6D zs))RQ5sMFYY5$Y+>8E!$>=&~B*mG$Nq{zy}sG-D6LP9KHCdT!tjDfftd009@skFo#%ka>NV@wt}Sd&2SblSBeg zU&IZ+&|JTVcl<~8cN8u?G4P2-uE!dK3YX3p+-S^gWa?H`PTla^2WrL8N&9QX$S8Ip zLVjP*i0{Wmj$X7=1K!%{OF$37vUaYR|7!7BdA!K z9<^6lYbLURVEjk9H^a2qwXej}h>dV#u!AL>qA^!i(Mm7UX<2*$eu~cmhj0}zrtZ}3 zc+1(t=aOzjEe2a|RPAVOY>>9CIfPs`Q}=&6(Y4F%;@nI>if0eVZhl;t=sz*7B>4PY z25nCo(z80$AXqa^55LgOy@$km-1=*Km!g!nx26+pa14@beh#reOn&55^? zK0O&cBoDC=2jD%YPfrE=(cO;p6|+Dr!~kf|I@43X{0MIw@^TU0{>vg2F)z%uy-kdv zXqYkK^BR|qTZVA{GcO3~YG8c6vT`7PO*M4+-sx~HitGY=0Sj3RoAiavLrFvbPYa(3 zOYTANh}<13Fg+FMhk5Iqmkaks208o+KzjZ!i;ZiaT8-_Cb5AR6Ej}YvaBsVU=;Du%(^%pFt2w#}Hbzmn^ z9W?_QK4cMG>cT4h2Q|r;x+pctkaE=AvR-g`w-!Pd)1^jW4T;a+tqMdS?_+t77Dku# zr3SZ*^%|5NMpQQlu(jZQK1g1ByA*#pNOE}DeJKyDCM9Dc0DK#u7g*U;lY z-ITnbBSOcu-kVj+7g{f41G^RZO`+`v`|}I2V()}AtxGRJJ(Pq3^kbFvarxr16Dj-# ztM{c3vh%NZhdUD#yx4pF;v)<@LH`kqL9*K2iLtgiz3b-EoPB?G*-D-RD!e(H_Wu2J z^Z8+_dy^Y-L45nbB6`ch=RvqK_3KdQQW!1v@N(#I>q6ks3$ryxBImGn(HU|ma62=Q zb++S4G}S)sPUMku_>2JQKz=8x8<4wvL*;=6D*$OVJ5X~LAuod0U9q+`yQ?)ciziFl zuFoBT^8QjA{B={A(f*lr7v2A!u-dake))=ZunOpTQCfMAsM-vRdpLR!-F-*s^6%M2 zdK?DNOn_&G!Ysss4KOQRq9H=}L&A zTTdUGCsyZr^m>e;d*6fo^Ti<2eO`sg<()u>Ppp2f!~@!(Pfr?q-J#awr@J;Qb}m1R zxXmANzPMXffEy3MEg0be*47c5oI<=y;_=-bvhNM?i4zVxa!(WRNfQmLgZ`&^e1--d z0)8Y?esqTSi|c;DIp~jDx-Er&jO?*M7u^{q8*J zW0!&1fjTX-yV3t~Zm!qX9?23UkLV#yZq@wL&Z5KjUm@}!T4EiKoeF^K%@WVWhZO&! zapk^@;V5~d$eUwzJ{ zFutef%qhrNjj#p!XpqE$cku6vlZ@gla69aLfcjV!toYa1s5&&2WX0wK4A;Co(pDK_ z2k*by2V+_u$ksYQ2I~+1isM3&j>REbj}qVqZy>n=H?79{#imCGZBo}o8Ldj!MHLO$ zbScHgl^8X?N6pzvoiNoHB~132AKj9y^45U? zC9E=Ck(KOtlS7iYa$(Vo`OZ}*Jw895F_gpn)l62*Z<*)Az z#Vf+)bD~A9E_;8LQlAp)UtdqN>X)+1&nC6MdYYM3N{}r|(^uLL^oqJ6y>H z5InT>V&N`EOXuJc6t^jPwB48r)P5@bQE_8J9afYwb1Clwhe{Xp;l^@9-aDscHyw`+ zL58ygcWGEBe+`r{S85+v`pmNIJDZuU3thjawyG^5nyR}o4bCvd317Gf*tA}@2(9N> zvvr&+=7NGTLk4FY$fEXD?#nozIhc&2>sy6Ly)V&^d$_glkH}`{8Wfssc2F|sc3I1+ z$)|TqWiyo+G&AS+?>&4&-gkZi^i>n5W@oT4dbxxr1lTyQfaW zNfby`dDg{fxIu>hPpq^^To^w_7^~+GQWx^(MO^kzzOc{Sf`sk)) zSSs?Y(P3W6qKsUlh*yNSO*!2x3LC|;>{@9>T#kIWm4MC)s0d6BvX6t{xk=LRjwG(@ z4P{7vyr3Z6rnBxz7*p^TBpqXw%r1Vm6v-Z4R}u3LzE_r9Vgl92+L?aqC!Z(~N&Upl zOl*3-4DE11#S82&6KWfu5j?9^b9WVavYWg~#4|K?Ic7U!*UqC$lp~DcXUc*as=o0uSVX4asUG!`bX!L<&`OL)oXwyOIWD}NuzVy zgc3~qy^<88sJXhJ^$SAOfz^19Ff+6#Els~YnB+Vh{L!P z7Jt*}_{7MLi8g+NDOz1Z{&`FI2&%|!6~zJFQV;JnbV?RG+tMBsR-N<^T}`gq(H7mp zB*7}_X-;Xcs`QXAyDgWu_S*@!cZM_e*1W%K4O61!5(Ctb8PfF^lYNrQ=Wyg7?G zV>e{H!t+I?k;Uobnu!DXZB^-fnJN5@E_>;e@KI|y-@Ym-Wi(?o=&Bdru>{VPDqh?b1KXvlYRBpv^L|SNcBehaUaK0Sx z%t=&WKjeJ6b|Bp$3Bl*_>` zOK|}jsUU>n%*?x}W*OL|ApSkcEF=i|*wCcIek~c~IWcQ4?V)7)rKVAVubh6$3R<*o zQ~YllbBUwQ$z5ZYv5G+9=6G~P7Iic%1--^vu&Am2r=jn%@@^M*^Sr6EIWtJ8v5}p$ zBIA%xqj8+oikX?gj+vc7<(xBvDKk;QEQD5wT?Nf9wUkY1#{qL;0IXtAu5nxV-U4*7 zRGpi!Y|HH^{cM^fRbZspnoz1{oi^HAPa_CpfaxfsHf;u*ig0cj?xJOj>o-eIE5&0L zkZ^wcK`E@WOXt}cxl>?Ww5Xt7QP8EXgr=ghSZCqG#2Z9!j*PY9_K!moLtq=MOZY)( zYeUH+>am%7iOiIEYR_zrsu;!P9>pO$XU9ejx}|)udDLGUb&T!s9d-1-Op9i`aS(o6 zS-p2gh3yXXuz?)%Nfdn0(_k_ZQ)l3OeSI{pL)%S~%G(NcK5Ua+;R}{-ny6p}bbK5? zY#@1Ol3YD$4wsx`GMl@qel2?^>uNO#rHS?}qE)tiw%n&|l0Xv&yKOCJI#^=?iLb1p zO4i|wR!ydJoFE9_Y&j#{O2E+de5OD@te=yyOOYHS)>efHf1PxuiCk};4u@JD?}8D! z#^~lb-pCD$u6~e{@g3DVS=FmZg3;ZKFD8?M#l=JQV3I*=y&^Zuai!Ur>CL|4W(S<> zyCNH9?VLcbIkd>g{5x$FH~pdMNQ%QK1J#1!BWyJp_KhHu8ph- zzs7e$dy$>_+4A*mbh97p_={yql#V!-OhM732Gd_jDM>B2;aNuA^sJ=Aj?1C`KaK4p zcrz|1M(cfl8ij<9BEBy>)6y4(r|dARWXer8=QP^X-5&rYSo6O*w6U>r>dWY;SdKKV z+%#p{YDS4X6cZ*2tuNH~TRr??(>Ze!80XuMTU29yp1M`H#*7*=tXng0YRwu;66c4o1vq=Kre`?izH{^l<;3uR$?9?6492MR0E zVj4Y$-T|NgG_|<8YpGK`nT;BMA4z&Td4F>teHz<2Z`55g70eXQ5IP%-k)y~Zd#!l$ z=M!W+pJWlJY;TXdF`(g3mH_PhsiF;9ucUyMwAmF_woju*K^VtH;R>MopS$uz?n zg9^&=Am;S$5ZTYxgYf3WjkVv6TX2JSpFc&HYt%V+!0r0^E3vJv zFMin7&xYaga~DiC6$sIIjmB2dnP}20Iq@Rg@9Z)^Q85at$zjbrzVpHVqNKFFU$5~`*Wxg2G* ztNq0%3)$tA!O=rQCD4%bkg^an+L`?p1WSoGX?CPDvVAqU#=T%ColI4z>Si_komgD6 z@EEe0*DNTfM~F!wnuEH%V%0aauF21f`%Q=Ik<1}fVVOeTOZ!!`VNq?)saABt362 zwT=7?Z9y;NKDKN|Lk+hL3J8OwI%@`xCW(l>Yvbg)Kj#6V25=}SlQHI-+ja>VV++fa z9rnqYNK9#-+_Di2B@S08?`JG1RK6bQzi=cR#Xi2}I+XkK6P>*>7E(=KFG%stHR~ir zI$}lMTdhv@MD>q!9&N$!+~&#`7`Ch_%A(%|RTEfHv8v(4^lTty-pB zSn|HVYI*CaV*C2%in<6mK-QP~dTU3kKl2;hfQPcagt}a9T0wmgLoG%G?h&-aJ#hVk zA_BIfM)A+tegUWQd8yl9q7YCcISGRm>mYDib{r0DE-b1`~|;4zSNCkxK1 zHJG+4pGF9ZXED#Y+K7A6GQQQ7mvvPuE6mGFr>{CQ-d$>}zqaM84WbL|S3kw1w%9JL z_4X9uv0G7|j@^JJNL95s8$V4QXwIoJ%SrRy<)*7~+KjHy)vPCPk7@HXZZZ@=zr&55 zG&nUxlN=#pie0BD?M1aq$%M`a5M9XK;cVROi8Fyj%M-@sUG@X-s8xkrfHC&v33EKjjt)+Rvwdr>s6e)g1$FllfxnU;l@er@b7)qZ=z~YH zejksGoV9<7IT%?d)JVzbkuEZnV^j2YQ;5dS#?ee_H+dl&4LF*UF!W~tNJ_pJ@pDiK zZ;-A&DNE`QwGU@EgvOsvdVbTveo1b8@m%snchZVP(~*-cD}xv6HS9A$GZRf@`%#Ga zfLw!7CNeuwLGASvYe~1`Zf<{KNKJbVCz}`VV{rXRH@I7j3-!bz? zeO>PSat^b2C*9VuN+zrGEG<-e487-y*-`xVvD6D@>yK+wa~#-04iX#5kFBp45iI!R z_KcjovSBIut}d3MjBTNP_OAGCMcL#d5!rP#B%kLI*Jn_R9Z7n}%Jgyi^U3WqT_8NI zuyh3>MLb1j!*q;!+towx+)QmbALvZ$2s3aMt0wuMZmbnEg_xRre~z`-l*Dy6O?8&% z^**JB-U|+#PL?r|wUvIaa@Wjqxto_OZk*U?G+p==yFhzn<+jLQ82T(r^Imx~B)Nin z^F(>o;)UvV7kM1a?_O%ntr2eg0XRGGy)r6PRCO#LdpG-v9htxfPGDcXDW{?5oLIzW(%q19DB z*5_U>BEA-$QBQUze3JY8JB7Dh>+bsywey`$$z7}FYIU|--}pASB8diJm-+ElnLDP= z{DK4IC}@hj$;AVTV}Ye6DgtWS+2B<}1hFw(^5MsHdKk~F6<-e?DI^>$S(IRwkvINO z1_w&Zx8jh?3m@1x0aZfdMcEcqn3A`piDSic+v94A&cZc6xrGRkNUlXw)Xm{CSLe|m z{Y)AN@%5>y!z4zmi0Q23PLTcmYmusbL|eiPs)@GuH%ruAeKfiV;L01tylrhZIXZGe z2c4gDlJyc%;5{xQN_r`CzScIN&{7c~sBTCk(D0L-TCU?=XDGT&>c&)3($To&Hq#jN zXRaqCV+LJ!!WOQnmJ8e`{(!vt9FK=>%PfQu6!cMfep9;Mih}3}?S)qTiCUG(c2bkJ z60JTE&bjwvQU>)|y%(oCDzTOeK2Il~1To!x_)Cq|f6eToD<%X+{H3lwtC280kL&y1?H$YLxeEqM`dQ5s0ns@6hGdVCbD*F!U@Fu5YS3 z4xD$dmb!b>Hz1Z!3Zqt=7B2ZhtjDZM{`S1ee3$jj|`!gmEJB=C3|8sYgeRSvPRb6o6y=&GXi#OLp}|s(O|IUV>}BZ7qj1o7`h#4`u$bk#{@9FXp%344;C{SO zR>U;Pqb;wSIYLqn?*Ovm>-b0IEZFAultkn-);$00Gbon z=)Q^jXznSAbsFzi;vF%qf`qA^PmW2E6)imUzMVHWP*^1A(lHCh!;u$Ma+`XtG_+#iL|uhl$cd^T!uV8K zW|ue#^f>BY0=8_-=z@xlQ)WtpWG33HHuZuIQkW^deI#C{>{xPykM&*Z>q<9QO*RPi<%~c&-c;JzFngBU$Z2JkRmmE+>fOpZVd}AVPVQ({ydM`a zV8qx+)^{f%W8}A?s$*8_-q>FS70Ia$BM-?dB@yb)%kU2_@eUrrgQy)^UXgO?=5gsA z8sAy0vm>|9?o_doonqJ?uqXBKuMtJl+NOUWuh(zE*}mm)bNsn3mIB4JZtU_U%ee#j z8aTj5m3nIequm|v7(HqJcYAeDvy-Yh4e=#n`5W@d+`)~n0JAmHQuui%FH*1Mf*OM*D2hz;-t)R5Y%Vo)(gAcLAn0W+s^ zEjPylcP}EBUi9g6$ruYiG#K~yYTzip)Sz45<~s2u(monbPRKs@(?(@!wYFQEt$)$! zybim=L^j6te2+pd(GPS!!vFyu8O5Jw$pB@o&4)X!W@Yt>gq`mX``Ck#kQqmx)ZAr} z@mfT0ck{$dwusgZy(nB*?~Sy3p0|?R+21B3^(%jsZEN{Cy3_9b8F=P?mkqvaxHhc+ zK2o{a@03tkYuEf;rZMEp1@GnKgty2qx_@>ooI28+k~z=S0J)0beUz-?dJYyTibX$y zOTVk1K6WI;m!)(x`$p;Lc?AouHQRz~x>Es&Vs|6GhGMC2!TI$ey&4_Cy;0A!;rV>3 zl4h@*nZp%ThS06t-UX6?C{80&u1XtgiqL9ZC{iYqQYMe@zwd71(=fhjq0XD{4q9PuvFoj{4v)8m! zn7U6bA~v&{H-WE##St-ucUf1Vhig@40xhITPJbq7Y3ltvc~DM`Yj?U1_T;S#Ip%QV zE|B6HaUIEnwg=Y<*RS&Wz%$%Sl%eA}qkr0Y4d00x;JqCzH_Ml0%hT;h|hO zPiwMedDIL!A(gl7fx;_i+gdBKCd>%kE{lynG%T4N@{c?FwgKf>Xb$NF+cY!Ru3@hA z7tbdvtcX!zb*j$t{_+bGqr?gsF}c%~TTn*Z);z_ivqZhz2+;ElYxNqUXGS?|^xPWV z=_Vl^mfNZ>Iiq?W_OH>)YUHO%!)tsqtjqxpF8ciQts>6{(b|f**5wDHH&h*0jjnERf@A}fN`0# zsG6B@18ses-JSFH+wvIm8%+s6zYtx{L6$QKoIRw-SqVme)JC-aG8 zpH~)tR9L-aCH4~&Q%M*t*}YADcK+q7%#zaH{WiJB(|AnUu-ZDoea(d0lPUx9g;t(A zXw0BRX%p`C1(Y&x0HN<1cUF17+Xz5~r#VMVX;schEUFWE<#t(X$lYRTADJmqWv!7` zQP-1P0!DJ_bmrt0Pg#$2d)lO1c6(sxV7Ve*HQ0sA3eV0?dNVzn=@(iiZ= zz8}_-(}ai5@D3XG@2$x-h{xy7Ieb{^=9R*;H_^Cxr8nWn!_m`NRsPpcZx9_RQcsRV z##L0ek#SRuj4Nxh?BrfTRCuK0(?Hste$s4Jw=p5dXK$JL^UF- z@`Nm3><+i*C!P`P$y31-bQ4ylE>hefnVKqMgS>(Hi{^X%pBwJrzc0_JIbM^~K#Gif z@;@T*H1gGmr;_rOB#dry2dZSuGo844GG_phfhOhosn*F(~`3b_&H%#<%r9LB!33~EM%>)$X~>HC3^^1B(! zX5Tht#HD_i;^};e8%9=Q;kJXYVRT_jZ@FU zg;*9!Y!alV<%aq=qf>71W%tIc6GE1;K~S0yu2R`iw!s(NlMGPbjBLMo{-xK9JAXvO zZM&Xz=Oi>gu4VG7@;NP4%_6D$8w}mc|8LLLq9Zf;>5~z<6Ysc+6T5e0t`4uUd*>~X zo0(o=tBi(trq#(}Ur*T)EyF(48FEJ+Q_1o_T9zV>Vx}mo@jNalrTsQz4^4y+%G@0F zO5w7aqs5i<^Q1Hz`)A4b&^<3CjIa6R1yUxGbEqVvuT3i=3vF)K;e5vtZ=Tn+_3rTsb}@t zd@43C;p(wu1`G9Mu>88dWri~%4PPpkLkYvzM)b-ZQLo%4a(8;YekUttlkieQha+44 z##OXm(j~U+|EMR=MSAmG#K?0Amx$mJrShm5d8{k`q*ut#n=ifF0u$QoF8d35i8 zO=@x*sc#yKC_UctepR1*=07}S#vjTfC51FKmkp_3eg5RtBWmwB@=ouZ9oM*`DL8Ej z_m`ZRTRx?steIFfKmN5kTOBIKDYc@bNjgofbfGcm%hmG*E&&+rjF0Gpc0`AwouO{M zPQK}AF^Q=r`6cewy2RDc#Ami)`h*i-)>fGIbmmk@SIaW(k*`St=x{1+CnND=99M`jp2GuKSb=rM;iJ{*jbWTvA%rQ$L+>Z>&NF zwV?6F=IGEm{B_8%=4RuaZKpj@J4SxEmsLTt7dO_^J-Q1EjcKBPOS2yEJZ?$xR@4oV z`&_PcJ^k1Rt#Ut0J?=Z!lG2_pSxs5S27W2WzF)9rdlTQV9vIv{bMVzO+9R4NEyZeA zv(1@yo945o_0JuCX4UYC!>h_#MmJ_It2JxZ6sKMFTC!|5Q^4*XSU7P-w6wyN(LXYF z`9PP`BfnTZGe5P$RAf!_OdAj=ai(W9l-G=_EO3l9Hpk@G5zF&aYs?kawDh@&JhfT= zM_-sL^8ZA1EIJAq9eehXH+%pLOc)ZPHulj(Z{r05Nh$D*g) z^9jg3AI;eF5z(B0k*!kGd^v$&=(yFQi)5h7K;tAq=$XyB*JH%c;^SvXpXIr{DwW@{ zE8~`stdDpDOBOxglFK}ws=Vs6WSUuuyM9-moDO5Dee+Iso}X_wr>bKU`dCjM+hY88 zV>c)3{=DQg(2MG&ZaRe{%WqUU74q{g-Ck$B&&{su`S@?}ef$5KSYg|1%(|n?6wQ{e zEwZ|LpHR{`^}=I|0nw@0vkMJ>B~Cc93jKYw;Ikrp8d^xn^CZ3{Nf!R{eO}+SS~8gS zX$-5UjZWV`-@<<8OLyn)+{qVKVjSIiidnWIcG7HN;U)0;-k z8?H<-3P3|2tMQK)jT(2B=nyhCSdv>ys{9*_R9B9ni(>_C*VhLN4I$+xT4`>%pA${B z9hTuy*eKqJmhvN})U;#kwV>8Vj*R-_Y7r%Mw%;4L-4~cJO;yS#dHwQ@L99!4BvzG) zHRjPn2CtXE>o#M}c3py3y|6yPZgvm5o;-uyV+*$-9f$wav(=kgV^mRT(p-rI|72Iu zk(Z3eg~n#3v95Drur!z3Fp{jnQ@QCeS8`Vv({wwo3URA*Qk^wme~%s@^r)K+%yUWwq8vb7Y1~b;%4D zlw#Kye<{;ZQeJOVn29Bth!*4!;hbegmF4X_nM(UsCyk|jIQ9137ErFb-ox}-=M4;A z_0CXlV68Xc*>{!8>p#~Us9gSXjW@uBO9^~utg3hHki38Qxjer1TF)Bu4*0(V{!7If zCst*BmX{sAyb^=;vPiT%Ilb=P|8g?U;9tjmAD32hylctDBDG86FAt6rP5XJ#(1Wt7 zdWkn6BS-ZmK0}a_#jlk6g6ANxH}-eQ{@;~UdHVEI%CVF*WH}RAPBLoDJ4J_*to14F z_4K+9k0Q%0PZn#ywB$>e4s)8^Vl^8dsT{Y%@pSKpf2jy&mQ}sQ*hF|Vu^LL}NrsFY zi5+v%X-UnmE{K-{x4d z+-gXfml``+QCbV-DzR00L%S&7ZL5%UqlJu*TxwmMn`>WVACi_io};CSDzemF?Fp z@CG*AwSlNrfAkV}j{080kA8?hro6A-Ej(hPQ1tXjG!<%&I{7WQ-T14vXhwqk3y!aU zIJWU=?~=jSMDSJdn8edkb|WAp)|AT06lWuzz$KjYD%str3$H@W8tQVhZ`&kb}~E$iYWdOQQ0nng6F8{6s|3} zYUs-Y!FU_9uxxg>M=K>`SbFBFH-jK8TgFI|)i&xnRgL|olqQng6N(Tgt~nGCg4>$^(28Cvy1uFhgZ_(>cA*fn zP#BoMsj}zhkKTFxs7`OUg0JE+daWj1WO;DzhLZo_{Hu;TOa|LAYbqVSe)}CC8F$)U z79(#z7O|%-@px_Tmf-ZRZ8lpcUUZMbBNthOjCjPTm@=S7HZzE*We~@uW<26-$<>@dicXNwrb zq%F9-=f0XhcD?7so!f8x(AnE66*ypjaQLykvqv7=D;$66uf^as=Wf~#Jn|#pkH-$r z?S1^n%wD9=S)k7Z$S|B5eO~En!+4sPB$hV_9AZIwB(T`jrL(BTrfKSLQ=)8GR%&Nu z4b7;8{b(*-FpTVBmztatBW~nm8SBkNn1l(kgto%clu+FYc%4ZovP1B^cl(jsK63m1 zbLRDv{PAt2b7_acwf;DN4}WB7+r7)7sj~;py!ZO;@_^O8cqke$y~|*l-bH+W8+^HU zQcd>LT+6T2;x}Dku>16AMP%VS>a+MA^;koi!0%{IR>_cUIw|8hSn5<}tJ{u}HwA`~ z3vEHunxSoWVaC#lSC(2%VbKy^bzIYwLW>E@w!@L6HbRQJCP{v~t0y>|>ItLQ)M78; zAzfi6Tv;(YJ}1XNx6;JS(x1xl8&{6X@uLpg>BZtXm(XuCma@}e$TykSxkn02*H-MJ z)kWvv+{Uu-80<4v5`UO$#gsj5@pxkb#&?!5xQ>-}{Yw38go=qVL`O7u^W{4_{+1tT zU_#^2yw>oGZO+fb*Ou|xf~$txxjNV8%zjyQI!(&GqG{3*DwzgSVd-%soku~!C+HMl z9koInr%o}bvAm_jHd_AYH{2)}59=eP9fPlu<9AmN+agEKZ9DP1H=es=?`w8U?SIWq ze)j<&&w20gXj%+zt-kh#>$ctS-rPfbrgr@1zR7LCGc_R8An;6u`yNM1ypgAjL)+|0 zmoX3FQ(V#@HhNZCQJxheQ=KMvsWDuk;`S7HMO567=m*Z?5>)aq1d4p56Lu#kfQE-M zvK|o?Ic8+N;0Vr^e*U*i%MXKBUj{9ovVfLPuXV+XS!|okl#az~3+^=p4+FtX;nXm* z)=g%QHxy2nd#!by8wi}BtTz=G3RlL8bqepfdZPHXG5+V}dTzGr7#j*Cz%MJ_j#6i= zyt_EHRX2)>+1JUj;)sqPjSnZvjtvYXqe@!eC}yXt4%dGYZ~oHC;>joB!V7nRO($~? zvuYzuYlAm|Q6V61Lr>L3pv2WGd!-NX57jy$J=F;rSZfH?2`Rnvn9#t^E#CSfI&E!E z>Cj@yEWLrXMQW2-rc_P7NF>eQ8Bns z72bUIY$w;aKyvd#;8);|@aZaf7A;dWhaNxSBq;uc6V3!40<^Tky&_Xh&Vr_Nb~L4v zoD4K&-``EnILzOYI0;cjM*?h5Ob%;K(5blzvNm~(%vc9uNp`# zN8jK$N-Z>a(bUN?sWpQeHUal__*-X74Vg+38)Bt7*9$*E=o7q%pc2hN1Ew09b=g8daMuZP$}6d_#X?Y>C5pfL5E zgSR`pzDQpxT^Jnig@|CAK2Zb1(_odcw7NNi@DNkzgP6Jv?j|+K>R}dy>X-Dq>@BoO^j9Q_@Xh=5_lLAN5yP#*=b<`=Su_Rafe`e49U>T!A(I*^z~nm2%cb464T2ml3xss zl@}(*hUEAofp`%~yTdiMtvI<=7$bVi@#KiWk3>f@lP_Ty3<Aq4|BBu<-)ufqn4zM7ccLS$baa zH^^29p@CItcql{KbOb6DY`MDA{**3Il2m7|f4O$%YMt zO55(hvjtbp9yWP9diFdfJT!Y30^hA=N@8VPGa94RAf6!A(nKG0^Bz_W8Y(<5RgTy9 z-SGZ%ca%nN2*f`R^7H~0B-#$WZr|LY*YD$>-9IvTZ0D(Wo%|JUnqU!w;Rp9j?R;?W z)Q*lF`W}To@8THu$Fz2+tAv8IY4!qfMIb5|Q;e1FE&SdubG$b)0NkWVyd~CDn*~7J0H9ZBdo2eC$)SnN;ZydYk_PsZK z;FjC(JN&x+bBABQpWm}z48Fu-)W14;V#lf9$vwDta_574rgs379>scV{$pH*`+a6} z(ziFkw{OK&$q+^X9;ssYLBj{~Jg&CBY5OUFAsQ-4B194st0ng#w=k1QIq?xtxP5qq zb05(tTx_N`_MyTxnotmH4}BPqdO+>PRE|2+R$~gIjCD`DQP^u72qh2RSZc#rUjH+= zoLt#1OU}Ff2e0eTR3!drzP$7ALC3=Xz=ER^?r943(`^;{b6Cq)L#Qfe+?2H8!0 zdz??q(6hxuP@sZLxowfnk2^7Y40RxMV8!DtmEOepGhPi;N@SR^_e z^4+!naDi&OokpL<1oCj8ng~Y>K5sZTd%PAi2o}5XK-gl`OF}$9Q`gW3sihf1mN7i0;60)fV=)sj2VSuNUyk_^%nYwO zu5A|mEb(>G;u8IGwCg)Jt!X9tsD=>KRHPO^%&5s!VkCFt10$1Lb@lCm_>Lgv8-m{f zp8QT-7#Ymp9Jd=?W0Cww!QsNT=XpyquqiI<(Ds-#!&vI$*YYN?bNH;Z{ z#0VBu2^K(tWmJN>$-HX0kzjLf7m~`|AysyBHrFLmS+oVy2IjR+iLL?5uwqn(6-6S( z$e3))d;pzpKA_d#yjfH{Zr*~BZQ6tEOS2MaYYerY8&zJS)=Ni)aGjSdGxD7C#?zGv zeGNmmb3!hD^Xc05K;l(qdKg;99zUT(wc}0vY!N(5{o)#asnu z`%OG+7t>*VvqKDRO7VXF;!pP|b$jST2%rGX{X65>YprL0Cw0FfZUK5gE?=y|>Tw%-3VyXD z#B`XG9I&T)32*gg*i$9vyY|#CFLXjC!W#Pb;Oc=};09*H!Yk#{W8zd+*z=ERj3+z-O1>?)7rq z@(;gdqCdHK%ZJKx{DK@ee!E3V^697PN9(=#r~lS(Dcb|z!4I~>{qP;K+_hlo@hoV| z^6kz5@D8TiGvws(js8+|KuO5m{_n5r>;eZT%Wi%VGrCtz9Ru*&;+IsTi<23+KKV1a|8``LGR73@P5zC#de2h>D`K&5dl0rRz- zU<76g@+=n85`)N9qKD;hv42cr<%}dWp1S-_`f57(YI^)?=y2KKtLZTX(bnm0_D-x# zV)~0~3J$6nXa+^<+{Vxcujw_a@!e7vp=w@#1Mjnw+VQQw(ahiTzwAaYwx00Mrq@3{ zj_SsILz+KWgFAV3$m3~ zn$TU+B~T~1wAoB%dP7%g7^(=R*ysnlCx@iaIW!)SQn##c7=Qp?&@cTY8rNU}3>^dE zLMeuF+k-C~{bD=bAM+IS?JWLi!K${8t3O8FJqDx48;h$6G9)Fw?vT=~BN@syZG%{{ zn6B3wq67;H*cie1bg))f-w0U+*r#Y>TAw5=;gH=rIHZpWwV2ywOYgG8Y)d00VADE|R{WN@&*W{@;p|SFxc>=5b z1$Lc(={n*B;r;jndEmqFcl?-m;GZ~F1{qZP8XDyifxzTSXnGJM*a#J*WlK<}s2^BB zOxS=0BCr?{an~c+D|el6z?^GXtKEpMG2AbVB{}fg7!upDp(wl@#A^%Q(pb8VdJC5E zE(W`8G&!8nShu#DzhZ@UJ(8f@HP=k%=%(S38aCK-S=nX++f(jyzm5BbFv}n3BHReWRb%0NN-;A;9guZa;8eG-P7s0NdLsaCpgvS*z>8h? zkCJh``sc@ZKmX}KIc+srPY*qCrP!h95WJsw7} zH%VFYaS#IItY8@AK`U3p2Xe?3Qyqq0Wo#jdjo@0-hL!wlhPKrfV{o@_DTwmm-It#u zc@V&thK3CU0zT1#*IG<3n-mDf6n0>(n@j+7*r7Nsx!ZbI-zfS4IjNOQn+Q#0l*4tC zuYl`uT+ePIGi&QptCkgzQWvl7Ez6G9Mv6L?HRlhM=aW{0?ZJV7(FcA(U~22xTVyn1 z{j&*+Q{o*)uih>gT)wQl>#mg#hC&uYWJtI(4F15K<~@^JAC_+oi#qcyX-P8Zru!_q zKAlZ;S#R4`o+o*IE$E~^VS%f2Zvu~8iNZIMl~x(gEr-~l*}k%aR8^izOn8LE9lF#s zz@|7VtszV&&kYTrD=-wZ6hQj26mqF$$WRTEl`Ue}WfJ}c4cMSpt`fnrpog0NAlAp` zVR@)JrhxunR#;|!IKk$rz+TMjtagC)x;QP!!2Ek1>0-=qlN`TR7%%)UPsl3TOqR*w z`sZYqeekI6tQ^12cy6V*AX-eGtPr$Crt+p8VsQ4g19C*R7y~;ctAl@LuM{Z7cU-6i z%&usRx@LNzqN_a74p z@)Pu3D?LRp(LgE;x;Dq)aJD&cgpg&Xq>KJQwlwU(7isKx&ka%?2I7AIZcvlNlJtVO+XOq;ONA7X3=hu zT#M55AlUI%(8VJYqpzC0ZoDvcef|C8Hqq)FPsfwn!{cU`0H7v25+8gD7a{9gopY~8>57w-5M%SfZ4g~54o`Oln+-a;?Xqu zV6iWOi;XFkpXDe&yHIK_c5;)iQez*S8V89{hz~V7KE{0qw0ykO2wVcI z7iV~Zl1I2BB}le~Y4{M+@E)e&Rn>26^B$x~2u!7r1qnn~GhQ1Wu`S}eZHcaK^~o^4 z+k&e`n;Pp46TxM|v#i9SAyOp_gUA#;p|Hu^O}MdWzm?wE^aktR#p)uP1_FLY1uNA# z)n;5~hVY-M8$BkAC2vA2}_8T)JoO_KH7lp8Z|3tQkUAKUnXaEEXV zWZoV=$&sW(_XphvFh%7A@HRHQWHVM*>>IRjZfm z{Y8ah{G7#R_kfXF(vXlSxT6mpHWAT;N!eH3?f90hy9gj#YKIn=2rJvnJ!fd1%lML6-|82nFm0bLX1{W&z`W?$7hLe-uAjRhVNN#atWq5q} z?R+{FEe_PTNAxCBYWU{b;#VShuSIY;YWr^wxTHz_Xi~1G)5~+2n%?289=t8+RBDV~YEA;S}CIn zmWeS@_>)&9);A-G2)oyCl<;nz0n#HxQZtA^(ze0M_zZ?WB?qN;xMp8ga$hw1OQVzX z$SF3d<#0*Npi#aus%33kyaKMS8op@tyc~u%|Fx5a>J}-xtC}A$N=~q3M2k_7vT}Zh z)vO!oj}7;ko&9GX{g)@;-|HXv!rez7{KDOz^N%lA0}DGx`utA4Fz>VZj9%|zvEObV z7zs!C`(A(gP2Ya><~Myi_qltIz6$>#y}!(T7Iu7wvv4IgL4>NL!J291$?MJ!f!B>1 zeKkpBRba!A4V5>ILzji?w`y$D)fa}CD9*q! z$Epsu@kK+!v!=T6wnkZOr^^`-wZnLA!Brz+({S+J=}dW8^+wa|mQH*B7@X8#D3T;A z!4sfLbg&VcF)*Z>`J{qMnCXC>={l~-uUWOp|Ks|G9OrrY>j%==qL2=G!n20SvHqds zbKyY?9}D`I3`X;#j!>bv*cYsSmhyE6J>g7DZ~vH64)rCY#Rbct-YEKH%O@sng+8Yn zWbk=7hfkW87#Pq1_w%f@S~+o zbsKtZt2BmObV|s@YSToMGAIobU3d?{DHPTpL{OFygWqU^mo7#J(9sWX?(>C?Z0A96lyf!gl&)cxwcN#CC-O zpL`*p0!ow#P=d!<0AkZ+RN4{Cz{LZ2#dbueYoOdwP0h@ljbXbYsG)AVVz%3@SbI5n6ZfSgr}ZTK z3yuaPr|k^`<>3LJ*Xt6U*8W&!e7raj5AV8Vlf>bL(@u*6{`V`V)jqIPv-vVLcy*sU zosIeeAG=cE@Vq1hgb`s5`!KD)UC z>Fy^;cRw3iqs`8L2ldFOFdX0a(9ACd6^FtKRGQVF8Jd57+vtnTVSIU-PPYC~z;1~XZOL8X^ zluQphejahvp`#fAE_4mODA2+sMUzucV}R<;TLIG20Yr9AW0c0~p&IID7!E_*$OYnz z{S|qQPOxHpr7)`4L2=IV)4NB~)#%~7-(hw+&HVQ)zgz7~1%g?($7HYwkNB3$$;i;Q zYh9| z{mhQ%erB!Iug5&lHkwr_B`~iiN^ipUJs9lPwGH8c#>^G%3L9}A=f(Y*UM)LnLY8*0m>P?x`x?8U4Qb-&Eq?iY~c>a$OsgwV(jcQLzg7BZ5by{A!v=_+1{}_kV~|J}m0ItHtBCN7 zqTxjps}XD&2VxK8fY=qh>bOP}Jz35rh9iB^fn24BfLyb}QHG__hcK+bM;PzJgR6x- zVoD7t$gn?I-HlV%$9w%Ue{kPPoz?lK8~@xFoqlk}AHB)vvOT!m6e2Z zVVKt&=Etqp(&9le_|m7vpk#6K!q%5QEjY0NXHnNbHt5zTsto%J`1z0cxA8I1BmJmF z6qkp`cCC)Tqx@((u5fhtvx-y0$2!go&t2R&z@LIo$C(4zSVj2El3JwFFqd$c)?wHT zJLY)i>{gT@GBpr5L0A}3OK?VYf(py7U{9-DVR{KTs;Utaf343;{=S?~%38<91|p-* zyL=v(cVCGgN)~0im2j1K2mb*7yzm{6t=DnNUjQ*%<%Lr4_I<+ERL|zC~v;nB&uZ!gtpH6fFrqZ};&QgTpDA znQtP*gn6(Pd?1bXfG!aj)~M=)fcY6w##VSPk(mZ&Sxf;?N0{3fcG`+o2A^&QW$%x` zg2z$swfkRA?W^Yfk)ql~ zt#>`Qovg}$y>o1>FavAA4o=0%>zUEl;Q(h5 zarZkM(18^&G^XL5S$Jm{-^s7Rg4oVZ&w}6`7Tbm4Jcx!eUU7W}*TGofT=`ihZ0%?c zXY+;f@bt`VvA9WE^iRQ_^@U**=cL9!z3DV7ke^x>1A29M%%DI}Grgn(o1n^Kjy=)J zS>D9EmsZ>^V8v8cu5ZyB4dxX8;q`5Hi|F8=bC|@PPn-X+UUazo?M}&MJuKxt-t60j zQ;b(-US-yE>o?j(i=F>nyJ%g1b@G4wcc;Hj+=f|2YY~N?5tBbvt!TXsb zdtBfxE*ye`Gs8Y)dZkiX)#q@1Rj=5wN3r|5nT0(vVJFp`$qq)KCu>5mA6WDx2@Ey@ z8>bF7JpEJFQ-2UP?l5fJR@}IGI7SD>_VmHSaBjAW?S-xLaEw;)itC4PUB@-&52L+5 zJ-@KB_28kyJtt@80Br3@1-ABx)R+Z(MUVNE>>!osxuixK_T1e{)+Z@$<@qnoOrO>& z&HTEj?3l(T6=PbPR54olmo#T?`_rZ?&m2F0Rg*O_mQ_vK_aK*;9alet8ynoYjeY!= z`DaBJmlXbxe>>IyG2CvQUhD^{o#tLI8sXYqH^TZo8{g#~>s=RqAZCSIxN~e(v%UuF z4|6wNvHle?%iY4A*}SfE!Slaqy7ljFx(_zbP21G$WY+y zb>L7f!fao3c@x4czm*VXx2T;qtFaMUs1oFCYlQG-M=-V*8zH>etc68B1}-)76)bPU zz-cG6@xjagO#Hb-=(9^=bCjXaE~8;6|Kxra!^;Er7S@_6cyCy%9MGDKApEROfuCIh zb8%^zL1xBA35WLDpT3pCeV{H9!_+KD*9u+@?JEAjr$_K<{QWKX`z?4|W6US&SbQ>P z@kR25L^3tpH9Pq^4~Lbz(O986GP<;7x%cf&iI&;`h{mycV^V5{W-vrBvQ%0U!utdGiOIv{l!dOd8IJYz)bCQ)KQM)Ta zD0(HDHLz+VbCqvwM|8GEyh2D+vlYagl9gdpGI6NvMEjOiCG1dmsQtnKW0N?rLt;(e zoJDq+S>xLA1k?I_GcluVfjo~bEyfTv%bKOe5<=Csx%A{R8y|pOv*vnpatR)b4rFP@ zqXJo*@nV}-kNey)msLk&6aIPaO0;yLxaH1ahlvbnmqoFxU5EEw4HI3z89n`W*VIT% zHM`LW-y+|=8Z*ePMSG%N=wIn^ZL3ND-$ZL`0hJo1#koPOTrd^Ej!U$BlgD1u+u=F%!W) zWFuZbGxO->10-X-V%y_&W06ZiY^Mt-XYzP$!K$`g*zGBmm82{-7DiI(e4*4UE5Iu= zD0u`=PxiY9hJKP~IP~45Iaas4f0rEJHHeV(druqf@`tbc4kA2$iZJO1-!I4CKm7E{ zZ;PUy7scS$#Nh3RBa!j5?@*!XVdeV|?b$BEelV=duKpQT_K7edd-l7cS=a8jW}WS~ z`y5-6wB%A#$Pgsl=m-UG!tfJNN#9Of3%SN*(k{jO?J|Udo`oOLp;%?wt z5#+cWB3%ed8#i_)^Nk{vohTEal!$(_gf%Btk|Q8GE^;nMB!=^z8bOA7mdHu&=gd}@ z9OR-`DJki#BcW~umKU<{Ox!$kz;1EckH)|Bz~TBqyV+$w8vEh{$Flr|((;*)^6y-K zdujRXN2>enPP6^U#L8R#b>RTs9v$EImVbMgKR@}!-rYO8@%}o}nsCuHdns_^ zTz9>@mp$tp*+8qBbyYTW*9i}*hbN{wXL^igo8-B7zbsm`GYGHpN-NhYmo$e|JjX(* zk-gN6YFdh zT=TXY?q@Kck6fz(9-iz%eezrhXcrcagHQcU&D;|kM)WiIiiY!0g~Tu-`I`hL|5m5R zGhqj1rTE4S^|O_L6-y!wCjyV49ZimymB~dVq*Y5FrJDH(a1mw|vMJHdhFnC5UIUi# z;XDVfX+<#Jw$&yFItEM$4VZkrp_eY2!tu;-jg;mvCOVwndc8T0Fz?9`@C&A;MjR_1 zh=zPc@!5=<8bZ}EJRO}%@6u>aqA0ls{7uqurJN~jF`aP9Zs!G{?{VABlOyx{&!5>b zP>6^^wY2B(v_2r(`Fq7`HeIS@)_1X{(Dvw#`H{Wl;j=s6K3p7f>D-2i3-h%-2nG(k zNq9oS8-ZsR(>AvN_A%pGw*G2Zzvr)hv1vUo+)ljzlTGW3!U>X-+@|%quoKV3&z`^H z^PfUHo!d~?LGGjxJB9xwHwoVSZmiwHOiwGPjQv>#>&aVbEu+)UE#nAJO59qg`M9yG z(yCF#LJc-|b*n3<1FL+xieR6O;Ywo`XXBKRQTCJ?gO{31z!P9@?@)k5_M$xnHqV^R z;^O3Rt|X02Z&mO_oIx~Iml4-AgWlc6zF7a@6eSaDB`}lh#*rP$Bv3SoWOY+jgpq26 zq?l7rf$S?&-^r|pGT$a6*+@8oDV2Q3ZL!R#A-pX;Qn#(I>qc^k!zS@Uep`wr`Z+D8 zmATsdLq`h(4q+gkS+ZJx$D2>(kGkEZ?ASa1yKdLD2xwHy_782H&5eiM>-zc$M^X+h<-V10oo0B0VAmdmeOTna$WV6?mjdynMlrio z;#rX9!A z2ZyI|_eQ10IIHZ`b@6^MoTBQMO=j%N0S57J7&$PUupgYii;#fo_bwT=25jEzeCDIC zI^K&O)VGCyEIYO^;vsAxqoX*ej|qca({(ZM);m5_(?SU)VsJJHA4hmSok=5{jjhU= zVe8#9*}Hy$&g74;Snr-ab)De~JdB?o;$i&-&ALPL`Py|KJM%yM$)Rd3(; zv9K(h2itWVyPD7gYE}{ZMo=)yZ0HV2cp(g&A#{d#G$!f=IICEVexEuBnGR~U z--Qyk))Sh3gSTIHgOyY|cE)71IQE||EghJb_n-OL`GLt)qJEP}v`;Dx*+RzZH0X^+ zt60wS7L#O1o_~7Fh53SrJ=%f3Q?Tk54Ucr1wTW)npT8&^Ct0}x*1$f6p43+^JVN`f zhxPqE>&m`du}=H)pFi2Oz9`Jo=l|Ok&nx?-u7k{dgbNBgg@}?1*v~aY%1!#Z6-kj2 z4utgKp{9HQcDQ==g?7y0F&9>YEOkRk0S{^_^>>D(Lr*oA!~yB#K{b9WqW`GNH> zqI?ay7()hU#4lm&Ce5roR2l;E(|6}0M!==CEP1)BU9)kU& zeozg6998y}t#|pOcl|EpkDtGA#d?{FReosLc5O#0$pbLCT4F0)_F3_P_mzKwS;*;-&^*diYrio9Y-7_Rq zX&v`uspt9c!d^Yd-M8ua8ItV}a=iLH&PCj~ndTx+aqu#&{tK#CQ)WB-Krlny5HkY-Ea!X_3ubVjjn|*mg~0chnSKbr+qkbY^N=<6#7bl{prMkr};O zH`D*}Qx=_qiCM<#-gX9|d*(6Pta`~6%LIL9y)(!^tc+$P+|8Q_Q)Qf6;zv2=lPmzK6KEPas$J+! zRCHCcLaSpevL`X3OF=@*^#aigQyIkLETApAh0cgFJ`}+Zm5M4HGEyXH&ZgO4sbEE1 zFCu4=aN(|k$e9w`L#ZN=y-wE&ytd$8bBHGDjUhzjObr$56G|9&)sh-gUXY^`o&|l& zWeQ_c3oND4)Zy@|vb!w>6Il1zFoFf?3XC=*Wz&mij*c@|4eI{b`-87M+(oNvCV#*Ms$pTL;Gi9=kJGbSHg&lj&tZKIz=C z*^`$^7QPD3T~;}dgl(yjk;|O+`JaeM;THK$@cnzAzYf<8{|M{7&;KQ?Kjb-k#q&FG zo&UiV&;J7Cz^#>gulRc&z;)06()>Lok|*@M2cPd()~oP2KLgvNUpUF1-}qB_XXUT| z|M=qnNAX1kE3_pXhyAQ@KUU`2qdja_TyB7nUKdMnnA>*a#yIDT-o? zQVchuN(CEvHlMktW7|<|WGO0yC@onwcgO^EHf52{czX?tBe3^CIRkbBao3Tba+o8n*5>AZ;5@RQN za7W{B2qfNML5K(t{tEo4Sq!dk?*NcK;|dkD7^Iyz{u@vaJGN=!_{?YO>gTPR^K`55 zk8my@G~Na0viJF2xPJMcL}AnO--6G9Cq<+1kaV}^`5kaBAA0@=>gQAZ>t>pPy2Af) zw_mO0tz&yyYY}50A%Vp}{AkjqNx}Qc?e<4O&seCe3iS*}HRPNQ^h|c#6$0g6t0ImK zwzH3u^F2O{&i6RpVs8f(KG-fbMnK76?5xsSrp(kb4h5fEo`Z*N%lNQO!UbDEQx&0N zdV5Lzd&Op*sehklbf#YEGor-ifOdZB1guZ48JdgOnY5sts+op&lJHKL;k-4HVmp;g zM~JA`#=@gcHaO6g+g<%g_x#;}e?gA9}RX2Rqh;>J21lX1m)YK{Q+ zn7a&S?l4#YV?dn0G3@ez1S+B-Q!6#xmzsURL46{Yy0Jm&RvMIUV1v>TCMf`dX&io9 zv0p4)q;Z%{R~&v0yFcadr82n^Vj(pGQZv+FS18-G=Ihwl+{o1%VRy@&=|_Kmq^RIS z88nu}SXYj0#`uMoNLif<^~>L?7!m!cMDXYpn7e&a^j%yT3Q!0a)r%BCA%Smc0*oSC+u8iH<;0G*xvIz`3W=VC-gqw z^%HuZ{|mGylBciu{Bc~@f3xTF$8k<8*au$`3@EwqH#*NhE|!Fo!q@b7t#O+F4>muP zzC#GVLqS+iGSVCbpT}2bQ zogW=v#EGNJzP^%!>M}44yi!>mNaI4=m|EJBma7Od-sW;+HA3{+TI$Fs)dEQtapY)H z#F;fXb~KMN>Z6x`rQ+f)5-u+4#znC?uIk1`(v6F(J=NtnPIPuB3s_LBPi7F=&HtM9Jhx^B*^V5%llx%}u@ZG3TQ%ks+0$QrI!Uv~O}uR8Cv zrzJSi`^uCMrY-5JZkIaKbXYU{beB6*b%@FURFQXz$^g`b^~)X*OP>=1>rYWy;rq%Q z)bnCs7y8A!==$p8oCec)jvrJytj1MLNP`ew@r@+D(H<}-G=@?;hc8?3I~tQHhk(erVYLF2AtEP|1G&n~ zW(}esBbQzg8Clst)dc-DagvWOdqOKVGL?3@L%Tz-h?vYb#6U#~91{b-*$bQ8sa5zq zobQL_Q*esaS_O>%)`TRk|LlumH!jScr`U)0n5MP?pC1w?$+r3xtoJ@owpHM+D?XoW zs~7)C{d}CU3%Uwt?AEZ}lO`}Y6ae*B7A+;j)+bPBgkEoql~#wC;u=C+1a7E|CeJuU zISQbn3dBx@7}_=k8DkxVDza8Vjdj4)4GdP_Wb!zRSg!A64gX=9ZLDh}?0P4>VHu+E z2G&Q%Izf&r2KOol+G!-^qzP{DB_*)2{(^R-FWdzLoylM~ONP{FC#<0fX(+RP*JGmI zXfWsuf>E%I$}FZq7}!8R#K2C1*YR})S@F z7-20{NJ7f#5D8@u(n@wA3FRn~P$m)@h=hncH_##B9}x-7MT~S<2rvQ1Pic^}Gh!pV z)=XQ$S6t)TDKN?CFn!8w5!Dyn6BJ~0Hc1T+(OGMCDIFpm+OoJ20#sjf)A}DN;M%{p z_kDr6IW?wmi+|F8+x#HI*BR}>pVfkdlfDgu4e&mi;WWklkIjEs6kin)Z2*OGjSa!& zoS_P-(dkli=D!|Ntr-!W5W#Lo)k>CrXGC-b?D=7^=R@eUhkBZ->bcq^Tt=_WOO91e55r-D zdp@yKI^02Ih|Jk#~&r|`v;Jz|5=VbKurB7Zw@3bZo-n^jEJAR0$Lu< zD$Y9p64<6_gT9AD>vV|L5j#JOxe@*aM2-?}`RNPHZwLGL9pL|W?cXA;FT(l)#m&CL z|0}KUW}k!eSovo~LHAMi9L>%C8O8^nc{My$(&)0ZPNo{5f90NmclLBXcU#Z@Ux_^r z>%8*+_ad$D>3sep!ZD2BalfMY9eW-d*luTWJ?{G(Yw$hy{IL7?z~^(n!M&Y(SQM1! z%apr4PU|0`^*vuj8MXlH+d)>8xPMk=@3GkvEvqerA%~!k6o3=NdtRAo(&RFmIFcoD ztT<@`m@Xt@!#XluMn@BCzT5*#;zbwVv(~VRZQhDmAB(kv`-0d6X}q@Jz6YD21y3pI zpo_f4?g^(=kzvP~XEr+xp~ze*FtXUTq>obk$)q^pf(D9^8B=QAv7nhQzHjKA4x{M* z!xHaKlB-=XKI&8=P;aMso{)!m<>lvffkOkrJAb;#9ou6wCg<^QC1 zqtjrt_pX!r}dv`KA&*) zg=b*>1 zaSIqxA&T3DMApAdTmHt&XKBj|2(>9<$eUueAlnCZn&Dt^u^o%+VSnMO#U9tkFs-AH z#S4R)jr3Wo=UNQHc|%fQoW ztq6Obd@>n*vfk&rKAHCU_Xxj)GxkYgmHW+3-7`M_xbRN+e0Wkc!MpF{qF|HGDE&AU zZiY`Vgl2@XYvv|k$LrL}U&j_2v%u>6reOcwo=H4WQxt!k0*7MNJHVM8j5!9p=xhum z;di_P1P?$!j8fDB zbD$3FW2gfAOnC_=zB~-VSU~RSMv$o=MjJuaw!>t+Q62GV5RK=(S+Y?uOp%T24udHUw zAq@J^(1meAIjg{KRj8PJ)v8Cg6Kn(Y9TEBw-SFmM1w>dN6h{#@V3pjfoa9SoFlua& znkEkt(L9Qe^i}YY5>8t%qy|~isS*{sabY}bY!qrYYAlbLSOKPKq?>vcEbe65XItOU zRda!{ezSNXKR9pQdSrO^w{{OqT9@X&rQ3Dw@p5|jmSSS^X8x15&_r%vJYb*R6^kXe z%+>BawtQ=QX5_9vNjT3uP+NNYbtBu}rRItD3mc^4J`Z-7ksGCRLo*tL`$@-PtmKfI zR{~wOpXoToE>xa}^;`LmY1R*2H4i+hd=C5khiH9W^Z6$?ek@$8GblRuQFv!ei3|T& zC~ETFhqcdZ^4?>eI5Iv@@#_~cetlT=kvDe1^Yh#Z{u-{;kFf>|gJ44VvDS9130y+` zc#O56Bh+PppsfNvJkHlqN$D^K0>wrG=PTqG#8|GhnqYUs3}TFfXE;_-;Q;L#Cd93< z$5KGob&}0%Xdg6AnhVXn`sY`75&BT`dL|Wq_GfGBOiRp)jp?N1AL-Rr#0X6iuDE~kZ-o$98SO~F9Lry!yJ~lTBEUXEOEuz56z`x zu)fy_cgy?h^~Nr#u^o8Y62K9SeNp7;@qYN2T)lBjx@b%k=a=^*_iuMMcA*M~<4=&U z%4k_CD(@D!_IsT=1u_~HjVY?9w~D%}SH2=5>@Q}H9+`Rkl&LQ?mh;tReE}!*1Y9Rl z2C76BWTVeuH`r~V&|qZO-T3h94<9Y*^bQ-C$$o>^V%8a@P%*N2hJPYE;Bwc>dta?j z>Vkp9pvU8LyB+ct+Z45Lp~-wl#AeKS#fZ&%e7ZmH@{E?Y-7)2IN*1HRbS7fY^Ui=@ zJiz$r{Kf&A+i`^Z1=q?WKOy!Bj>eh**4c%{%G;FiG6r4H{^~RSNfq7~Sg-R)3j>9d2@5c#aA}(79)ovO@lueHiAZ^YzZ7!_tWz#}Pxdiro(VA1 z8bdS&#Fiai-f;+jf0w(lw`U9pZTZz}nqOfwh~ec%gB&}5?7`!#NzZ9jn)ICe)4hX2 zCb!-Es2t7*LiVdo3h9g5s^yuZ`ksEh1#4l`+>q(P8JA9P1}Dy~9UP*OFJ1Yil`jW{ z-=y^oRUQF9JhO2S?2Rf{=W|@khE|2OSf!v=Q|t%hfzZGsl#Xag863b4CL}`-8PTAJ zfXT61BF37Em4Y5kE>x+sW6q2jN2u|QVH)1t2UbX> z(>e5BHQQ9~qz}uWc66GZ-2}60V2Q;tB^JwSVzHBHf}QPG0vVVcq?y^J^5&iGOHwZi z*NnsnFR771$bqZp2s>G%tL-ZPrt9VSb#>gQU%@8UZ5w2OgH z^ll;1`m{3VXPnn5S%nIawnD{_6|5f(qI#!_0zU>jB|MZFAiLA5!!iQPpbF%c#eh;> zon?c0zoAO2M8IVw8vawt(KUgmuB6Vjfh*{DY!*-)!Qbx=8<5xZ2-?q17Jj;XVY5QG%2Wq2Y1zhL26F# z%DF-DrD%Rm+B7^!`pank%kj+urCcFowfh zu2wZgeT1G%4Idj5lB{53s|}?66iE9is*IY#aVa*!Q?~^*eT1EPO1`3@;a8_0Ce}VP z^ZS>d??iI)APUBi6>Do;+n3DOn5F1Xb=gK;x zUW_y*15}>sS#%Pw@%z-g;XpCr*?Ns(B@u|f!yntRqF)(byu-P&U5-C3$CE3Ly~ip_ zJyBm#HXdH~2Kjw7Y37rndwluCBEJuNIoCfqb=_<_&So0D2I!BNbmP25nSPEU)`Z4c zf$KXe|G@MsKWHBrA z+Bc*Bb4^nOSx7qqpl3e2>DL>~e&Q8ovaj#Bav-~~@okWoB79dHH_H87L5t)N{Tn@| zLKSVD0hK>zwuPKE1(B*$4LR5+k ze-Q&YSn=(r1V6lLyDA8*S`gcEfrjtlwG+#3$7nH+R|7s>#iv{FT9del!6A#~Ne$DS zzF59csrIO0o@;Ul@>{Gojlnv$y9*Popg>$FdR9J(`SnUnPuAx+C%p`Bw^~9dJ z;}7q7JU&Ks#_l%;MCpz3>(1}KVgBJ=7s~GI11@Ro#F!j>_{8kKC-%(jgbHQ99aE3jGExYo1`fNf-T zCjCHlD{MfiO1IR)JVsUCRANcUM1y5kVu^|>3ewVm&CVgsuBgUne-Yh~eyUeNS7bnk zNRw@=3+FI6@v6IMu{vG-16^YiM@}^&Sm&K3NPvb_f|t!)3FB&>kP=s$5vXC^WEf#( z@(3ZD==QdE*cpk>q+6Dst!zs;r^_E4bH3ftp=apZ6x&~j+gQBM(EXNr{o zxs(Khnu?2vZ83r%sbRdf;M#+Y3Q9eUVgPYGQ|TVgMXx^woSP)h^A28CIpD zq7J|E=i=+nRW`Bd?N~?rkuIwW)!+{`JStdSA)wiR0O72{ZqCFNx$kkHSUKXsrrrh| z8WWUy^wo@RD8_=ftqj`va~WBI>g6us%%n~#OD)2*DPy|ztPsS|*6G7+Vp>B@VA^dy zpqdx24ZYZo-~;V6UJdOG{%FAy8d`emEqE92fJHCbse)V0*jRBK9jocyEFg4NilDKk zK^Kx(;ah`>sfn3P#adSr#hqb5{68uD8iPOs5wCO4iP+vTkn4zBlEKQ_$Yv57M_D%*=Oj)pVq0I>7R*;5_*l1%69nr08T!y`!b?Jm7f;w{IJ>UYJiJHO}Td+)qZ z_FNy}AAMr?%zk9@^*09jr(;O}p~bM(gNKAU@GL&1 z%%h??4Sh7HA*0Nw#bgFGuajwNB`Dc8@3fjJHPJAXnmqh)iWD9wS5Rhv+1fEhm26VC z+eyYl5CAVg4k+D9%|J;pD6QC=q^mcbJkhXGk=pLQ{3xM~jOG!+OZ4e54(OH$xYpAF zj8;nBI}tq-2?;biG0;aigtblz(#ikAVYj+?@byii%Xs+aV`mI*y)FCkYi^m71e42Z zjBOj)`9$1e5DnL?l#Z47KhD}Ell~5?;F5IdE%)v3^B(XAuD$<2z@{@gt>yg9yZrJ> z#Jla}zyQ#75a{|h!hPH%x2DA7kb^mLqp&iN6>DPCB$YmZJ%s~8Gn6gL#88$@l^V`V z4YAU!V^FrzsEa6vX+UF6#JNKhkeS|0W3h9)dBTu_!U`if>9|3XO;AKu4R` zRAuAT8vc4CfrBi#W)%mjIsG{rsOCjzR2rs6wYeQkI>I_r4YO2o8bh&&E1^uJQ8K(F zv5kYf3jJ28a_q)y?lZW(AHC(~y3stJOXovk(C6tl$VQ)wKQepZtzMVmR4|r}*}VNL z4;=A@51f4WmcGnnA>Qw?y2E_hb4S>%vl#NzueoL==-GJ&d3P(&_*49Mxmld0Hr;NDI$_y=(Df=%Y&%G|dV6oEKK3KNP&j5sHt zlEEU&6(f>^=t&VlCxau+(%gY;!Gd_`{A%sQEU#vxoE*DS_y5(5|z%~Vdow`R?Z zI#z^`Q7tr0x1&c*dG=9ang1d6G@gFP);CI`{-u|8=6P=aDWhHf;0@UFczW4e4!T9X zH&NhEhet*d>#+y-ZjOgIix{5_Riu_IR?j z?*s2{!1+H$_HB;)dzMutDT~la*#93@s(YL6zADAPXhZ}vZu6yvo$8O!7r^Nt2|X9m z7g`Cj=4i&cj`l&9wiG&Z15^XJuZY31C{V6XsW(-v-?Z44(r%2S;~ zPLkYx(M*?rbrvubT)uvq(HO;aSOSw5U_02!3a)9a;C|LB+JP47Z6y8liHG;jop^ZP z{qMQ+)@o(_IkI`Po9&7Om2S)%n1!Fi|Y*1p!bgv2uoKWYSfWo;#?g0o~0S z%PaPE^V5hx0$hw$)=k)a1bA;GrKT|ercw>3VKw@sPla`{%ur>5bbnY!JO|>p#Tjw> zXJdkLgB7Wn96%Zw*htEL!nx^8kT9X%uZ?J0<8Zi|hoML_ON{^6{>8$MJr>OAnq0hS z@<;~nTXM(6*BrRv*?afhJTPAiE$uqEFnhA(Kd^B9qqC!1T_Hh`EiNNiwY&R7z3fPC z-+t@d`PH+#$4*RVY*9WqeW<>Fi#&Dkt)QnuRC7?}Ci%l$tE^D8IWP%leWHxSo4}r) zm;yxK^pP`6XuAF|2mudY244d!M?4G$j7QIRj>llEhwqNc1B0P@2}#|mVk~j4imowG zJ)(>o3W`lT+=?2jVfLp{CV?$t!@Abg8(wUDMZUbVSN z#Yf@wZggT^ec4Ds3;|z)XM+_&Z4dsyr@i=e3*OV51RZ!RdW+R9=u~ss$?}9z+jz6V z7#G4iv*_ZjZyQ?ww$5%f#`!+}6CkMMu`?*IhgA%%Vc=O?gF7S z^fl|wfD3rxO)jHOT94uNeP%trbuXT&6v(NRfb)s++}|mYVeD^DDq???7p+OyVM#?+ zZbz(1bAfPV9G4h|pV;)m-etOwGP8-F-{09g_gXUtd)LphrLB>WP6Uob45!=l zR1P!Pl}AgU0w$;yrtP0t0>{RUa1N!WpMm8~1L1e!(}PS3xurRa(JF>hxqM{>O~ECU zV9jYP79N>J;e_yOTvJR@C0oNPwY~lXLMb(L?q&|VdRL^@AU;}ej3ZlP`HG+QZLr~u z{>qr9SDKKYl{6-SFp-hT4D%k#+bMizd%Y~Xr0E0amLI>vVf2W6!0459dVcpUd#>NQ zBFx+4rM<(4sZ7Pi`!LD2G*((kiTo1-WtUalTOXQT8V&$IgUxMlin^`ar^avanu5#D z{K!yr(&d!ky)$7+u$gkzL@5XRvGErh9}phEx<<@>AZ`YBwwf{h;qznhqM592vj`$- zh|MG)C^h;?D}(vc8jw3xj51X*%2dTzEp@;g-gEhLqy31 zc<_QTL?{pa1Nma{3JJwEb=de;rm1RJQf#Vp(@?C0kq$>s4?N{b(N$%2vT;`Qdc#;C z!G9r&&XI5ZOVsi%@)5jP-&W>5JBNLf&VI*y6$jeA31cfaer*VUJQ7B6^e=|V?L1b- z!a3Ov`|^lz3pd2QgKO#VPz<0SiW?-6&)JBTnhwlLqn&ReNRwg-)iY83<1bj4km(Z} znKeQ;0^+w#P9qL~$1A+kj`mT*0$z1o+vx1esJ6Pp*%$4GpomBziD~7MWP9+5! zcQOTxszXNAud#@rgQ9*8ZE3dNW*-@yQW*0&9eX+5qbYMW^jBRan#quoni3AO4$}~w z=F9|^zSsUYaqk@`$yJ^USLo{8T~(dabnfXi-96KBdUD#`nc3MKwA#EYX|<~iC?Js} zkR@S}v1F2vgfGE>tPZot7Y7CmwvoX$7qei4!5G^h14gU>A^U3PJMVj{x@&eg=5c$@8h(PLEn93q5z=F6dn%w|{!<^h8pS^w%EUx;y%?FZKoBj{{Ft&mM_I zm(P5tUY_WC{d2r0DDh@pa=5&_5LgNacN~a6itS}YgwJjKD|d|O90#+&oMk9nObJ=5 zJLy~vN}T2t&b}>}HITt;DtDYR+Ds8z$|jIynxxCrmYs;C*%IXQzF;!jm_y5R0AeB* zXLgdh_ZaUl@@c!y?Mhdtga+U5xZA`^4F-o7DiV>dDo2U^VOxuHlF^k#Zv&Hn*k`x%E9+?g`w zImmAkZT*8EkRMk2`u~<>ITn?~;n8%J=;Oa5@_n56M$>FYK{X0N&Ut{SVn&UWfW_Gg z}(RS+dmHbb>~e>?PJvSlw>TR&!}o#0}0c|)#*g{M$;hzty~W;J8q=i=VV^fSZMN16eo4OHC(1?0JDjNbtGOHWDJ~l;)D3mWVNYB4 zOO15u>4eD_Z8%*UWGR&_#4l3u!`@)aE<`dDF_sep>tC<#2A%a!8^30s#eUW|Ds@Ik zr+{@vE*}s-a@zJ~7ElTG7urT^xs2wFRPH#imdF7lh`}Cq_Ft*xLV%~HgQXK%;u_Di zjS_?nO`=-j(lmG;T84smZ{BzuofE3)}5zL66>;n__ zpwMH*Rskb!5Z@^%5jPqGvQQ+C0@PH(wL@NOwiiUu+_0t2yFIaZVbd-ehsc@{@V*le zr9gyX1+ZIC*kSW5al)_E;6o=e)yEps!>Ll|lK$L)EUo`~el#%Zjb7!MoI5qR-5dR+ zg8f5&Zm+RB3clE#(c;3eq+=h?x#i%Whi`hf(Zr`+l@&|*D;{t3&E9C~fBuhxPm^m*u@{?6orc|a}ij4oJ8u(G{zW~x_nqi>pd+_Gnq06Twy!{a*CCMj)XF-|MWD zBW&-Gv#7f^P2aQW9~kHDB}=lip~T zt*lkN+D4qHqxR$82zQ1v=p|FYFaqhv>iV$J=CWHwcK`aPB|j$_B=)}1y58nAk2WM) zM;F<+$URK-;|%kkG*aF&Qf%EqnI3zvKwelNU%FnQ=mA|vYGPA2D^gPe1Ih>ZJ)74p7|pHx()y%i<n<5c1{sH(<}ya zXlJHC-W!<0{O^nBv~TM@!?RN6LZZBEiPfVsj&04~6k>me|B*V+c*rIv9`t%e{I9xb+nVk;`qdI>>l zNBEbRuEFSyP`5`Xkk`IQbhDJZEST+qvVR!~k6|Vf7FPAHH#?QVp2zYidHh?eA3IGQ zYg69`zu{x2m;Lcayj;>Oz5FZo*XtvSXRY|&>qho(KxkPeys^j`*r%B?^Bvlc1K1+% zWC=natb!?rIJr=4He80D94NH62NdYafeWo*xoy!w(_k;=@jqYK+AE|NBmoTXqyQSG zJuLLub9JpCk>~)CXd9>@JDJD#Tzs3FjYxo<(;-)FI!&+z6F8Bd5$u6PvR7u0f@z`M zH%xn^2ufps9QJ&)*Ck!obn0qIb;&XI3cbDei1K!OZK*W2#2+JacQcW<_))G{FE3W= z1z+?n{#ao#?qeS^Nn3^!lf!n~`ZCejCW(F8u8)=rm6t((v%7k|xib={+l&6+&4};v z7mUbMncHaRCFXx(3T!JdK9@o8YS>U=;pSarwSw)k9YY@b+E9@ ztId6(V=U8NFDvwVL9A{j3OvqGaRAAwuILJcl*Lq1ocaShO{^NN2BW-n!9GiJ2O*1Sc%(aZ?yP|6Gt2I(Aagg0(Zvki(Tc5`Ok2BVncx~Vs`3=*<)US&J}4X3Be>_jZ`O~xLe*Cf9D2>E`5S4>#R)t( z?B5Z2YeGa3V8AH=e!0_7=Uq}ot^fq5E``B#?2?SD(#;A-0;Z=1%GjQYsZhz$fT+|6 z5w;TfnRRqsgMk8WM+T6#6WI4NKs3GMJa4jQOCvCgl1z!yHziAPFCyLjz$M*5(ECY_ z0E3d7AanTG_Op%R(z*K4(Hp07(V1hhv|(G3Sk!diUg;k9#MQQ8H_7w5{1)I>GF86tlB|f$W~Uj!+o|pHC!brI9I-XTWqS#9G?c zj8a#KrNsst@p#k5BGeWF(y_~rFY)voF111!!|KQ(*q^e82C!f%6T0Vm6#yT)_*pzO zti_h0*s{{xoq;kAWTdV!1L)Fexbo)>MypL*@X7l>O%iP-Sm z_OZn`{VANO+{PC-wsL@9WMM{`Cm1?QngDDF(0o-wo<@oGI*t%~qgbLj{w4-zp&E0n zX9LoPL|P<8JUOr~;%nW+NE|)6IC^qgu$TlnE#-JZ@#G|Uxyh4b^jJ-KX<=VoaqB?p zP_*!1RL)H}C3@@(?DbdQw`X?O!@JjsL0G?!ICcYrcFu0(2Hlk%mSE**bNA`g+_{Nc zOZC&f=;wXx1NUtoU%B((#P*l})+BK!<_?>!2Ht2TF5a7}Lr0gghjx@t{uk7;GQN$i z?7yMR%|I6*)>qa6YobA9Zi-WoCv2nS9RS~fBixFWkX|ff9I@LlSAYg}>cVP(2DSrK z;4nKTwZhPe9>>ZF=qV24tDeRE(To3vv)w2Hcp3!AiSa^C;8F4;D|HQ78@NSywc|Ad zSN<7;(PqzN8>1TIuFVIqqmvjVK^aQb+L<~fr7}Vq0ocYIy~Bsdp;M7Yn(q&Dsux}4 z)0A#isrykQdmzHBW9+u6?ETRX+QezkTgG;pgEPfJw@wPW>|)tr}9Qk!}hrEq9k%u?wpl7Eu6z*(90vS>1Ep>MS%|kJ3W5 z(b8&_zEb#7U1VWg5)`bgF5-%H#l^fakCr8|!=a*W4_zM1k3JvnVGgF(+B*#|wN}>1 zo9;Zrig}@^cze#a$s( z+yZLa0_z9Gh3;l64;f{qEqG|)y(m9p69cjO=sYrzZE>__L7^)y&J?Q@b%?ABGyC-# zlzebdcBE5M&W2tg;-wX#2D|P9<{gvUhHWF9WF_{cpVvnXyKeH-CNi??z{wLkCF6W; zI%m$XqRnJyJuIh}WMT2p!U3ym|H%`(+FoyQGGfRHMXN)vyG^eb9fkpJ$rc<<G}}WXXqPbUL=!p1T1)aXM#;_Rh8h#d1m|d* z?9Ep$wl&y!gWjOztfzXdo=Opz+WbX6;&7GX`hPIP0*J(Um55e6IKRhe$xdfe?+6In zUwhKV>R{$sCw$5+pIkX+mW!FUUoY~r*B)edMPT-~@Mh6r5{mVlCDwW+jfVqD}MQ#_zFTz;mX`{2n=H zz-nQz3BDzk+QURE>PxFB1uvlnz0j*B9ezwK8Hd_}=fD;`DuQ&xdNWx&t~rYn&U5<(ISddEI^;QFOyPJ9{BB z;0k0yuHehRa69HIW*_@IqU>_8IyPC$MTTY;sxE2$)gIGe$wp-P&_=}ZKP)x#>y^OdM$#Q299go2%`Bf_-_FEkqG=UFY z{9|f?+sWw-U8YGMLGp>qD|JOXlrOsB3SRF(5*p7ENo+jp+C8*0f;}&~J)wa_Kg!tV zK|eK+H;n;9vt>X#(%ORum}WPJU$lM9y+mjee)eRf?x}SoEUXes`qCvPz@~{8Ws*5HwdYQjw z`Vgk_6@2LxGT#~K=D})54pP%GrFROVnF6-$LDXf{BBh~giWr&QK-vQ#%q(U>fl=Ft z6=X&mncdtamAZTpf-k%T{*4lV={He9%V?O`O=@dSB2~m%|WqLK^G(_I!;R;m}VsePavh)TZh{_LXW{+tPx)9!A zbA5zf)7*>_rwH7pG6`}U`#-4lX!?#S(I}n4etk|)7<Cm%k#~)5A78f7cPe`CHsykp1vi z3KDTd#U9R3>|veVpMc){QVA08s2nX9AQ~9bfqM<-h*GcC8A9CYp+Nv#87ga3PDSl_s0{O9UQV?AP|Tuj2?{nM3C&G zU2-bnKpJ7aL<+CmgnvmejQiF~F23k^c>mJX!eSho?w1#J+nRH?*%zS)UlR`FUOzmy z{`7&{ui64V_z;;`e_C=jum@iZXv1M>Uq8?N7FS~$P}hT|HSBYrN-Sela?7;XfyvUk zr;a0DMs(rPQY&%+qCUWvm@9XNunKo53+1^(@G_F3?WR2K4(aeBCSZ*K!ok-xXzB00 z_+GjaSqXs;;=)ThEW>}##kZ@_(14y&mMHg=Q-ZbXjs(iY;wD#Zv^EgSjnE}>I0NyK zvSx|+AzQaY6^a2TOh;L&UPsXVg0V&2cxt%G=C7)Jq?1N+(pffUBs+;+C_E zabI-1{mkjgm~OQ06J==0k6n9ablD$cpX|ltVx>8Dy)6cyAzzkQ0kQ@E3yK-ABOkGL zH`ckUxp8KKWfcU(n6ei-u51nxI;dExP{PwOW1FwJ2modX%ni7PklG1K?G#ysCM_bz zNq_6bQwl1Lz2(sAl(%2JgHF0h!8~xmoV&H3WQ&mV5uh#$`ldcR_3n!g(NC)6lM4AH z2cP8Em}iU@hdYz6^yqQe8OdmZ45rJS$>#Ev>gCKiG~*-SaxiT(gpmb|tauTAj3^tm zs;W^T*7N}D@Q2bqMQANlp2oSzv6y_N9U5+$ls)LJdCQ#I1i4Iv_ZZS?KI_{c8ZbR|C%vGZ3S_rJN?5Kztl6VqN-dviDBi02ArVXRyo^)bFN(Gl*&MTGme}O}ji)$4XJCHuJ@9@#-Y2@3{h+RMB&Vdwd#;>sBw9 z@c-ZkVnF82mi1qJ1BxuZ!CEy|7s$uPPdB!5A1C^@&b)=`R278Zj*q1fQ;?YD9pNaP zYZi>qwS+RZ@a8VyNtVNtESCWNnJbZrQF?m6aLs?THkk)u3-?1@jSb z6y?}|FU`OFB22}*+1C=qCI;5ev)joFm==lS;1FVg2Z(bJS;;cbQ5+tq$s&hN%TVs< zG1a68Lo&%J2r;1~OhPDP%CGvIQqq=h@fARTY^BT4sMPB|@;-l$TIr<6N~aL$H@(!B zg_nB0Ndi_#gN_pgtav6jbOk-QLj!Pa$x=5VLs1>MYT`QN7KnEaKn~kzmsKYTa@cx< z(JsowZ%SUG(U^9~hp3Lq%!_QS*H3gy0oW#)Z_}jEDh|-0?tf<_%5{6*^CWEt3Dane3*^+& z2b++tB31^5yfsK)b+uGZX|v*?8w&#wz&bI-LtK1E^;(_LX!-jexojf4%^w^5gIIoM z#g?icYmOYs+06!jXfjjUJ`}c0vZpf^!D4($);q+&!`9ui?(rQnL+PB&DEdOaWOZsp zu1qqDzxQ))2;&eZD0V+K9zYcx7#6K!d3AtsL-ia~1~UWrfDKb#1vV6j9unZO89{_5 zHq1kj$2Ahu%I5TyAr3P@scgs-8`RSUJuNldf}WQ*t+czS{YGAljRCw3>#H5~NaKr{ zZJC5YV$E+|JhbEt-7=F8y=KtI>HX|BCu?;6=$!(`+NJn7dwQ~xtTdL%lM)Mx^=>;l zKQ%PF+xoDi(~Gj6m7fv}yiR9zx#0P)+BnVrBiRc@W;fF@E6Fz^*sY-wPC$?XJt~cQ zo<2}Tm^^tHp`*eX3ct>@gE2^cGbtKs^1=>IYe{>&9_+K@)RRTcX}~;O^~NRJjgmjk z%1)d3m+#bBtTxdU4OFhFWYcqbi`m#Xl9`-l&%Ni3lAo;WQ+lgp6K${A*VsOovI^#6 z?l41Z^GDfVlINL(zV5sl9uKP3c~PKrhB^wB&$&)Eb=;B<+7LV)am*M*i0BmY;fiFj zfy={4_PD!Dk76SLctD509>rk_V%9bmWyh-E@Wu0JN9QR&bK4?dE;2iRQomOP5__WnWBs(ssWkoZnttS!^y9 zuGZ_L_stJYm2MZ)BQbtuEJ|*+*{x&`7-TW<#=TO$UI^C{LEn%pO34{Zn#`4hOxS;N zH!!160UuQDGdr|rGIlrF=Xs81eL8t$fyxh)$qFZec^lUEg|WU5Q)S)@h&9d7bQ#T6 z8=ySNjvzSge4=;A+I#h|NGf7Qv30T{Q% zD6ulp|15Km902#NxWfzO%1O6b5>0Q~J9CizPHKKIW;e-0AF=Zun{1Tzx*ZcxN;@4K z%oe653NDe)-nj1)efJhc2Y^ozL)MO1NR9ba0bQs<3^Z%b4NTO42av;{W3H%Zyz~W3 zlBfpS+b`aZ=Rt*N{c;}(9q6CLYbSVU+`&Zyb91-Pi%*GT)cR!0Q_$Z9?%z0mGaH!BwtuZSUtb6I$XmPVW#Vg;Q^=4>zz0i*p>+fb-U7Mhkv~ds6sdswR8Sv<9_z7+)>8H z>|ofIy#y&i;!~_zb&N%qZ!zVz*o!{Bhx**q7ihB(ePY(QF2fp(__S@-s5~R^+9(b( ziUa%5yL4`eg$pouoB z{&2~A_Ah&n!QR_{iH`&k5b{j$W79jt?YWBr49DK&N&()Exr_&&U2BVyos$f^EncbnPqmeQKmDauxbqx1w1%12f@AJ890lEA->vxC`zn?kVyXWPWV)T zF+kGAU8UCIh4vWH1iLRuSdA20JByG5pCj6Kr_?UGZcVK9 zQiwvY)Y}g}a$rs4Jr5QUtD4et71qcXbhj*QCE9~rH9^^D0?~9~Vsgt?O%TxK4@6^w z>B2~PVsdWF)}2=j0*);bjgm}3IK47V1lp4rqa{{pdiF(>B?G;}CmL+6=O|VTtlBzk z5H_{dh*-kkfF?}DwrBG!`;)y!(V*AQpEK(%IvuZj_}^{pz`fML{#)z%57-Z&|NZix zMIC1x-ssUc*sS%B9rYd=ygMh^?DlXv!X3KVXf%n&Lx+r#U=n!#<%x0jE2+YG|3_)~ z-d=;vC>ZC6G+4!`@x@0lj^O^4@t3c$0+5`0{gx}rffyc)u>W+k!Dyy(U=}}>T>rEZ zYGC&_KnI*$zvW6Yz;FC&<9Y5RkpU+;D|WLLTA2%trBEn#qGw*n_e_yx8{MUOe@SC7*outp#ywWlDB-CJ@B zL?=LLq`j3TOa9dtKG_fUVwlAQv( zAF8~_97fM(Y6sOTWj)zjPk+S(sEE_deo47mpKmLZ#ueK=ZP8NA)*l1)}Y22Ee2X&B83x)G*z^d0xCaM(3 zIhP+Hl2C>#j8|Zs*k=Y?BCnhRWYG~fB#|WdmbE~kT04zq(fb>BQ`0Q3FvMzEV}V+h zeZ3@~Jo6MTW`6xiZ}j9DAma4>c?@`B5AN|s??K*JANxb#j7<`YO<6SBEc7 z8{WbV9=M@Hu9_5v8*0{@%y~T`wWwRqszSE}LzfxJ;Qe@CVS)us->JGHd#^aT>)(i; zdhLu~a(v1gox63^`^igYwitN%tJoUAnb8maSEBzug|##*>;a`NJDsT@XIwj1C({g^ z0oXz3H}q&{Cm=r_n_PhW_$dF}DidlUgjo z&$G>xZ}05&h*K(BKwZcZC%P`Rb6ArNsG*--d)JE(DQniwWsT%~w8QZ!v?ka3ER*RX zv4+~)g_qisQ$~OWn-X5q?3+*#QI6XT>>GZK=;1EQ13xPV*ABUA^d@rI2D4LrFffr} zgQ0XLo2xe_r?y{;21X5O*+ULagWZpvHGYWLR+_Dv+$tbbE5+JWd7o6g1}*h9o3OB# zEbpeSK>UQ`u3a&j-M+Mcfk#4YKA;mF#mGv+7rosZU4L_V`beI5OlN#C$C*K2?C{jl zoIidC^iy8Lnb$v<%8Ulx(>6OWWZSHFI7O%UHp-Cw@~_x$t?z+uO61aB&#+G;p2zw$ z>d6g7PbQgBW`fNr82y4?;mSs!epHS@a8QYcT-CV;#>O=&a)PMHX1Oy0TeMtJh*zOc zB26LsdQ}su76fb8AOUVaVE9AJ2q?+V?|;FdD9N_bU?h6d4trQ2%iHVM1lSJ&VL!;3 z+YW||(4rXPwE{7rP;ECsAS!FX>DnF2Pms-Ak-FtdlZeI`Tw#11#zB#WDB&nMK0%Qp zZ@@r)h}=CkK5@n4lhHJN{&#E3zQUg8ToQDGUUy1 zMb%0c^GEBmwEc(Z)^#8IxhrZ|e&e5&b*(VlnC1fM#+4FotIah))HGWt;ePhZR2EVYG|k7#yL; zVEYyNNP7x;OloakLl1j#jdqplfT&=MEY{d|vTAcucXn=3tErdZE!?mSH+0A^Xf!n$ zgCFD`P}nnOoh_Icn_FC3-mW#8L>)Az4v&nD&tCGG##}0w)FxF9QD3LjS`Y(3k7R@fHzzV?d3!9Ez+ zQVUO%?BY5~$BTj~))*XnS?Lse`MZ~i$i@a^LoSb(r8sxv*WV~{L|%bR zu!ConUYOQ$Wp$KiT)KQ~p}acacZ}NdUAr$)NO}?NsZ~Z#00NO-wU!*fh-caS>bMSn zZ(M@Su(}Q3^<0LBE*__X?=1on09KR}6K}2eNvluDHiIlbXfsNdY3IZH7q1qk6^^56;5fQfoTeN{>wo6(4*F#8;4hS) z+>6(mB#Vt)tn1%g|K5Syk@P5rq(|Qa(xambYz#<`{=_SLQ`&#Z+8*X!AZvT4|MpAP z_Je$sk(e=NE0L&wRR7HBQl0osu9LxVlVNb$<_AV2!S7pa`dwjvRPoRR`C4pY+^+8CKOnR@D(mm*}d> zj^Lo$4o|Vvd^AKewIDlI_3p$Fg3s@kJ0_-rrblQ9Nd2Hwnvt)dXm^mV|$bE!;e66SJ z_%P~<5c6Gf?*lzuH%E1a9dyOVl>aBae*o_fGXE%X?7#NzpXVNi`^D{K^xu^G?Z~(N zE*M|lO}^(LWju+z%^NVze2$ENLg7UkCgaoG46}uuQ!sHL3^53{cU)mYSY6=!aX`b7 zh~>3Fj%d$(xx6Zva8Q8!p$H0TEB5P761knEaL0M_(pqjMp+5_{fwo-=3>cPL(KR68 zZjBLP{eu@|YB~XG+8oq#fwX#w=|m1&ehzX6Ua2d2fojDAR{*_yBWAx4StkkyG`V#i zZtalwT9^`VI5IXq*K?709VHYZWAm38+NDWgnl||3K*G>U%57%>_^0z&`NgyajvTw8 zNitM})}|yxE(R6mfa;Y~ked(&wOE)}0u^Mvv4?F45(ueYauGG)f<}+XI`!n&_w_La zx9l-L?7Q1P4P|=MVqi-TSTHLZgd;(TH|dfieK^4)=CyVayXj2EuC-t{pO>ahFQX7STJaa;d4DKI~^C@@A~CY1K^7*c650 z{quSzo*HQ=garYGR#ZP$EfvFj~MOuasGK$6K~f z9(wHx`w3C5A7phEpD0iHPt{)Sjo!X6@+R``ohFz5s&h-nK7RGNg5!j@a`%Dp<@=Y$ zR@f87>A6X76-`oRLJW+PpTQekr;ab4d-T*kh4c1#?)6mvWI_Mrls$Zotl5Lq{`fA~ zAIr)(a2z~J?{~xfMP+=RjGw0CF&N*;(46L(jl+N|LiA6DxtVsipjlz;vm_e(EQwh} z;E$5Uj!JDaS!^s3FeA;jV1k4mls+R1LXP|#43gbrb@&DneK1M0=uTjHmCz%+BZotg zt*X`eDF04vN4cP|-5uU>{KzA_58l+i!@II}{U;7Doc+Y%2Y}wLIFmKr{n<~QyXVwH z-?dv(B_H?Lm+skj)0bYi_a=D8Tgfxd68To2k^TSc8G9$&<=Qu zo*i}l&xx*QpHjwY%@E4N8j%O~Ze_f_ahlUpx%v{3D^BHJ-b>_dlzSY;UyMq67VT-` z(|wOj@O6mGSYXB=(}~1#3}x7L3=|=z83Jv)`f>WBzsEjpmWn^h>2%E%Ph;`*FO>Y4_Nt2%hbphbW25qDJyDW%AV1gCC^~GPp?eY z6lw{;3J8V<(?g}<(JQSf(+=b)2)tJ$i_4ZVNoDwdnU&5VsDX4+&Cc=<5C0c$jDRoIohp5o+T@@n*?`3(!Y~Aa}tl?i?wUf&RULk21Idj(mOd4u!0Oroj z6>R|K&VTIL01UhF59Iz+T#cD#;|l&UKv`1Tn{3%|mTcJ)toS5ab6q}H8->st9E{M~ z3Q}Mzuhs{=4jWc2)B$9Mf*}Vm@}>t`hCV)&O7xd4wrWN2QvnOICPCL2=-j9K5w=m{ zlIp-E=E6Px-Cl%7@r>ViVSQ3{he5UvpksKXV;8!!%qKvq|fuD6}H+MKS?KscML z)f=Oit#(@v@G0X&6PuD~wgd1(tl1i%c)siv+)>46h0e5Bf^w~>wmtjJsQ)U8ZQNM) zBewB$smaIxbfoT$zRedaobh|3XT8zEp+6lOgjd{PVEuX(;F$QJU$5@2XOoZr5FAqW z`?60AeC=zp4{{}6ChL2Un_vcr-SS1IV*s5ysCJ<7c*K&$Xt^nzo``UI#Cl24&8arG zzwu%jXE}hm;Q($<$PEW!Z@%y1$I)vNrLIoov11#qVZ27*+94yGcvyjJN(UIP_OR0W z!Rw&#brXasw8tPjasq;rgFOU2s1;OfAOm~Jut}rS231_EEQQZt%B_59wL#yE^g%SXgZgaEl>xj4zOh=wg4!h$ur%Ts z87;47=x3QREcoyd=V^s5=jU&@_=K9&jZ#t?7Xlo2nKCw~yjZyh54QlUb~Juno?J}3$_c=zZX zHkaMW-e+~KpRl=Xu1A0TWA?k*NNyhf#qt4HAQyB6?(c={$l5^+WCvM08w1$V+nK8% zh7kqbHwj&43}u_?$gF}hRFtthV#JhR9c)B_+ieh246A$Tf~}NRXOsmygj;His61kK zF0uL5T@(Oi7eWoSvj@s$gdXygJFYyemn&d`T+Zq|-q*gmS3LfEN?SA{N$3Eb8hFYe zc5$y7yU2vIWEHD;t--ZJUTgMW4Olsu^B!V+R%^)X$cEsN~fNZ|&f-t-^NvH63y zmy7k292e{b)3_wpwE9v}1D(57)j66m6*^dS7e{oj331D_mT03xQb@Hp?v=+@#(eWS7E%jw(%3rNdEFk=5_^@ z5tuQ;oI-`+K`6GVQp?dp3N;da7t=l0O~;JJJfQHmMoaCq?zzq=6o)gT!%9!tDA85t z^%l+>PNBB3lx4@N?NU8eBeK0f2{y-wO6Sa!lEO6TSzfe0 z8Hmo;$4=NF2I>K;Teoyz%fWmivd1}m(~jTgB+ti>UuR>-)4R;yw2Q{0_WD4!Hc{}& zdSGzU>zw0T8=37+hj)vozEC&0BoF7ZEKCc=NV*`9`MGc7ZS2eJ)66V0&(MA$aGR{? z*v_G28zPTh4k71i4%#QB)-<33dJv7QJr6yFPDaI{h;Jt6+w_Eb3<8tSXnRx-dmLj! zM}{Ut4!cR>fNh$aIxx3yFlcF7q>w8mC-{%^dWZNiw&}?^2C~0vHi`1z=4aUlh(+v@ zIpda))1WWbasv&UK3H|7LLrC8EEBUbY&;keV;P^@EiVaHhv|$bHjwPwM-R~0&;aPg zyc#ni<0p7Ok?R|oF!KTO$##^Z7_n0)xmjXw{V%20Do5SPHmh2P0n}nV zS4z@PbYrjY4|-gk`jN^5g;K-I=(TSgu?49Xe2|tWSd3%Kq_iam(__^;hAW@56k~ zY&5wv_RxP(u|Ey8C*EJ~_^^4?7gAZ2p^MMzLcB0&;7uy%Vw%o*B^uU4ny{*cev0=E z1!#da3VEd#paqEa;fE{FoY&i&0TtegoiXbT;BNT?eZ(sjO$@xNG=fqx&9>DCGwEq+ zu*6~wwx(eM)AW3+*kNC%*kPvi$8GE?Q#7q;sf&Y*#zuRd5xHT0*OtL*E(zwF5*L zokJfqw80hT(CYB1{t?ch#p-Z+eSMcnox^w!*ptEPS5vd?v|!eJ(>!Vbo7l@{@!Pt* ztGHw_t#=LVo&7HQ^|!KatZWXGIrNO%aSkz-qzyj2TZLTf*&|;edf*MlbC=X&#JO=8 zfAL#tEe4tM(#F-u^|_t>Jmvj{GCT+iO0_yVO~?Q)Hp#rJm~9TQ$)m{p;_x6n57^FI zY11~pRYfR+Q2i{Lv&= znV$es?0M|&v_bQt9(o!X{gS3uNDWL%MWB$8BqS<}Nsueo0G*9Ut>juePd)+)zK>k| zR-eWR`WvT_CV_l%*F}d4=&vBh3E26lNm16MZoC$A68})@CPtEw$9%)ZJk}7E;jPfE zzz?{u3iox$sHT*Nd<(51@+EWm##A`c4^)Gkd7xV|8jC{(E&%g1rlvRFa(P_L2q0ne zJz=X=^J)@P!{i4-*4RwtheHXvqp|ELp#eXCN|%#816jB9DTUUCeJU)t4JH@2{%z#< zlerMQH?!{^VaNP>@{)`H+*Ge;LN)tMZl~zlF8d%f@^H|k_ieX)tq>G-#!1- zROTw4lw?E3dW?SBur0IYliGSp1=i7HWLyuVvpET&E}b+y+SU_2c;008q%(+VnUmW= zU=OW3R>M)LN}1H-obxfoCF>}Y zFVF4x#I1YJ8P`v;N0&S}oK+o^zMgYW4Nc-c8>h!tXCK-;p@>r@i~N^%4J}-2Z+eDDS5^Ga2e5 zCX{gxv1jg~IkSsUA8}OCZ;%5M$eH3K|HqC15g@(FTB{)Zu)uBMz9h}fC6GvS)9?s&we8+-Cuk^-&}97Uw_^gWBpiD=Z!**9s63z5A|}Af3CvN+~!5D%C^Zl zS7CmnAU?W@9J>+m(GARK1~uk^92^klNR?M@nTUaiv=?jk6nBYA1Fm0h-g6QCXf`mI)NN^BX}*twL?ZUL5p&;H3HZ=qLftC5BnK-m+EOF zw8-)f;wI<}wm<~E2Ai9L#|&m5l9*RJ#8f7ZUX@VV&;u)kxMCmG&0FpjJbG>wWipS~ zPi}qqhVey_!vKS5H(oP4waksyy5?#RZiXKGj zQWkdNHTa0vpkjw9{q&d{0h_~5`{r8_sVhf-3 zJOrpli0}&2h9$zeerAeOGE+f>#tVXc#}vKkETDNPuGpM{szp z8_5CdR2Hrsa@`c*X1Y>1lBF{!!pofYgw*G;W~9y7amJFgfprrAzJh=Ls+Sz&m$N?F9~y^@n}zM-h(H zGE;fr`co?>J7*7pJ{kueXmZ9Cm}#byRHYA-cP8jFMKLR)9Rz)XC2&Vg#2r0vm;B*$ z7S5g^C8ABKs2rQ!a1DS5oGIln$J*)#OHuQlt<&c$MyJTS$inNEP8_^W%#2?*z5gze zeDjijurWU(Pp>pGK%{&mB$=efiCy05T{A;lB4%449H3|P;f>dG74r92$r=4TtvG8r zDDPUW-0@@YhTp9)9rTuY)z);!RMjfggPt<1kj#pRu+$k+ z(U!vK&$F#^sg><%w3xCOa=GI~P}W^3SuFLGS`0XP^vvK89vYr7Rw9#WZu?_^1Ij2Q6j|s!G$HLo z{Fgi5i7JlulC$Hj{7~96%-azRcL229ADp;#xKj5~Ww&d3H@1M@BZ}#gO{AE(Z#{SI z%Bwzn_9tXc2gzRjHR`tl^Q?mG1ak_C4p4C8YUB+LZ_skRlLNQ#=940YToWBWg#fHj zTBmYWf9eI6Iw=_m4~;nO>jv@@IRl4A7Oov~z3kA4QI)q!Ud6MQ9vMiB5@)D)s+a$} zqhd3oENR&K*`b9M_MC0X#uCCIx2& z(Hj9K&dez_)jA-uWGS@pYTW3yseo9CQY&}?_J2DG`p>9?MhPDgj0pJJ5+O~%pD zX^K4r{-=rTr2u&Xz^IDxP`TiALFIx;?lQ8M8cWe67S*?{0w#8d(}0>JR=pgK3W3=g zF)IDPIB>m*eS$r_QaYEg=tcbp7Y^MlI3K@%{kQjTTe?%aX33rAt=uBI0lL8G+1(-c zk=K1rKeuxaKHnsHzCR()muKqC^-8DK5MURusv#OhLzKAnt7%@0QgWYGjv`@}X{ve@ z49zlf8!-s$+ji8*@r5mU15}vacqSw`HIw*X^CMs;FgVfIKDy45*g^u;{cRa zSK(j-RFDJkYXDG~1-gW=e4e+&%iH!MWf@p^t$^HGXtw6TnQXhEHg>kznv|h_rfrF1 ziGPciyH0mBg&9NTi?+#~LUk6Vf0VXir=W^S1p)l;$S$U_4S=3v)!s1%Hx>DW@(ox> z!M;Q9TNpns@{`NsC+r;08b#o~Fi0Z5bmG{G!N0=UB1XsAxq~_0Bubo}YFOa&7R zW|0*k!7zDnZf`Oqvor3}iJ22+Be5l9y<6gUjt?&< zP!T^UFDq4Ttkdds`Yih3_}rno1(IT9)pT|tlABFfeL)9uX}y}PTZF8e%#@f1HK^qn zSn!cWD&-gmCX^JaHvR&zVU6pcehW_BRgn_;h*HZ8%c79=xJ#>Mx+O-)0wsyvHe)ha z8Hdjn%hLS-n1UTXEW&D(IdW(ea_++_s&kEP*DOCA&jfIJEEH-L>3wULP8pJH#4b+HCRK!TMrtCTa17 z9HLnwGJJ4jD`#V$B$mfJ6-+%xREvaVVkscDz(a*x%Zrp^V1>X$C_&~wLcarATOt6| zPGPSFaP0ZW6}Y0wcr=3WS8Zp6)>{Gc)h4K2rpGUWK_nINN)t?ic9Ne&e{0*%y-_x> zd)z0<<9h7X#NJK)Zvn5!E-|qF5P8lJ4KRh!7ud@E3hmZ9^9iPJqJ|M&G7LDws-X%A z6UgvYmClfcYPPDt)>DsPe6|-tcdUVN3byG8u}w$7HZ8-oL#~@`)AL}F_TomH-qCIk ztHR)froQzzvr6r}%7LcR-27DO;Ds3NnwNI39uN<_5pp&E5 z!tsW4kDj`B?y${nlE6y!xXQHzad;Oi_nkVf)@ZU%OK*ni%oz+M&d^xmFSr2vNv6Sk zSK-7MQp=NwdAK@UGeS+$Fu*jH6m|y6h>;^lO{NTC<|x@&UaASb5_Nn_Jq`vXW2M95 zN?^l4xSzDPIv$vHi+z}9$n@D&LPRppg5I7kmNfGm&5_+`l))ftd!1lL4}e!N4ECCZ z7!2)Xjoc7)0!STjrMd&C9TA%S3T;n%Hx5p+N`#Iq7HxW>tHN1yc8k@2=)j2^1*`bZ z>-U!hw}Z6{E~~IOdi8BqtL{_d^R7EwHu010-zOX5&cWSVWq)Jo&P>?O>ezV~uh$2X z$Hwcj^LF1+NNwh&eH7qRZaKbW*TgtrbvbU7f*!VD0`A1+O1Q=3Ic%9l#R3 zfdqxpg{}`zpLFu`FFubwY?$VO4Xra$dXct(aP2ywk7M8Vz#KAq7j{p^GJt_LFhoO0 zuwk8*evv7lxl?9IG^%(N6QxYdSu$7Pl#U$a|Gn&s-AZ1H>lejhnDhB&uaRIR?$@W- z_n4*ir`UZITj6!JNMktUEFEX>m;5h(ZY1a%4ahhriyJ@TcC$|~qs%<>ex_4rl$3~2 z0&m{~jU0giNYM$1t{_;*Jfw(BE+E$MED^j}2^u!q74ouzU0|yb9WzQa`xYSXV}S9& zLxf^N?)d6Fh)2cI8iD?-P9R-^_Yp@sgt%}*Q+Avu$8(}G1&6Fh?zlp6>S|W&4MkFV z$ELUUuP0Dy)dVFs#fmi025CD>ltF7@G`BSrG3nu?bO?|PjU6iQI1u+5qO1c31=bVV zG9BArNv97+>%mgfw=n$JXi4@B(8EzAhmj}(Y~nr`2=Ic}R%-6O<=V1&W&hTZkp~9@ z5z2M9g*!^*Y=rqfLm^GVFpn(t_U%O6$TJo}+_)0d@|KhUiuppzs?xX9uA`YCguu*L zfNz#GF%*UDRM)Z=g_aFS-Fb!7{UaB@sq$GBkw`Qiyx8K{v^J49OWEGGWFQ^`J0v)U?Y#i*IyR69*hC-x`N z6ZPR8#mPm!R`A83GNQ^2H*(VzTb;bW-xn+1QujU?VAcZJ76t&9=^>N1zK^3$!OG@A3&;{a$;#?1q zxyF{oU<_IogDS;PuVwMki;wpXZGr6ZDzCIK^cEpU79p!LHig&JU$L~RQrBH|k$JAb zwL`9&d3Hlu#N{5yRTQ=RjE=kwXZvtTbgoN0nyJGh=^nkRM-yM}8A4k62Q~M>sbCKl zQ7#@P2b-@cn)tM?wmth4Eqa84-oC+27EM%Wr z(K2$Bi{(xn*b11q$J8fNRjYp*WcEi@HX1$hWv$ZLr@B|CG@h)H zGwB9s>@tW_B%1BD3jh_F6v^f`F|R@uyOYuijX=#>J5|TbY@eB|#|E#V9>hk1%O=0J zY2n!4+q3|SSk_`U>2mJkvU%&~W$3ROQkKCwjELg;Q?ydUHd|qrm7M|0p;L14`@g)69`+M*9E4^0`&qZdDn>tHOl zyhR9DK*0;KJtWX8k6rvcHSRd#eXX@w^Ghv;ShYr}Ycc}3vj|r(W_=Mav>3pZXSxha zA&%G?E4(xkH-B?sOb^@!fWI`r&T2cZ+E`7UtXQ1A7htKrCCX34pYTSX7`T&|ZI7p( z@Wse`za+2!u8+Iz?Ae!}FiDS#fd|QSwIu)JJvsj7#;@6L5xdL}TsM4=KaWTLJjgZy zTQG2%0DXjsOiw_idjncvsoZfO-J1jPu^l4RoM28>Zzb{^ROV5s8q$GB1X(E)KolF- zxVBLu6VWm$vS$V!Jbf?V)yGia(N+RkV!w5)kuB(&litXgSzSF^jTogx$5c7%l3BCl zTmNfGt_MTpxlWLWdx@M!A?5(nv7z5WR#@+Zwmv0P*9QDSwlz>{hn2rm;p+mfE};l% z6+KyRK?0^8zANaRF3svt1|D@0v>>s*~a+7PSW?al>>@9^EjW_98{XMe?=)*A98D zQ7MIHhulT`(#Xl_h!oV5)8Pz93dK!Ig%%a^5Owb52`MLbg5uvbdSLMlB^B|7=!fTg z9;N1{0*&qR`APmCn|9x^DVCWa#6${k*AF0lR=K6`plk`Dy`91hAKCeniz zXT0uz9`r$!%d?P>e@ZPe(i=U ze2{<-x+S>wexW-IZ#(3wnQ=Whe8WmPoz3p{#1s9N&R#iF5zK8q-Rz;lmsQTFo{!uY zS=1?m4LgV7NjyK_J5e(E9icnC(GSl&PIT+z#V35ALx^H2mgDK`{SmSi%X-1dZXeuc zdx-eYe=C{o-$sa|Z)dOJf*zyn3;WGZJL;Au+a+@!VD=EXhEtIkDo_n;hI23oAUpQJ+VaaCgU#K4xXUwIpfSEF${*g8y?XN< zK5qWfTorc>+Ef3&ahf|u{>EwG5AE$e2kgBlN6Q+LSV2PR=i%hYmlcz^M&93@rQq5clSB zj$GCKXx*xkYSB_v+Lu%It;~9_l@z~gSw*ec2cWkzp#SlB# z>;@+|tWtLyvm{R2KlT8Dmt-IWj3EiJ9RkL700S-k&N;VAQqPzq@1OVJeCbBqJ^ntHe%m!yMAP^7vGF(-F`1gV^{k#vxv-&n(qlKg zYuCt}UAUxCw{Z`R#21aktp{e#UXG_zirdKNDOU1%@h0HMGs24kMWSIWQ5R8jSwymL zLf;8`4kGy~!X5&pSInN$G@%~OQV^N}+`Ar^F{ZTxTjSIA)FmyIG?5rv+_`f!?^hYt&wN~WMKcGP2Ts4_m19{tg@s$E{eMey zhxiT{mw6_%#|6P6hPk-394$_?h9f;P)7Ic-aS<=H2PT0bg6$mHQwApHva`QF`uvYJ z*bjO9$BiJ<#3Sf&BOCBiaIj)MePw5`ypn82d(y?e z^2p3=>6GEJQdqFqH*KqRr;O3bWinspx;0FZ^zQ21rY+`9dzcK1kJHi=o#Q}N`T14R zO!n$*^uvi?v_=X|7S2%N`ImH8Jj>5P`TGs>s$Vy!#jWf!!V-(x2>T-hO0?WRy}e>1 z2O@+4rY{#bvLL$PYC9?zrkBF;+J(7&Sh&&8rMDbmF6R(HaCa+IftE*YyPbNloz@4Y z9_+wjaF!L~YK_9^^*f{Y!1JFJ?Ani*+%C6ZZl=wZscB47fa3;S0@F%o`bOI-2`nrt z-Pb=dIyK$K+HZ|i3Z=v7bZx=HJieXVV0mf&97dVe#fi@31;^y}-{>idvm2g#?J&w6 zu;MZkXdQFwPIyCPem5wp>3Y11cGNs(E(6sgXHc+pv$@7IZMHm5~4xwT}<>gW*YCRP!D1{)MMv7wp zVPS#NQ_oVCGy49~+O_#4HGjfhX%mDXfGcehefl%7(}TLMk8?t^vcHS6h4b_kk( z|A0(7zr10~^7=sEw?}4GMtI$hQ3)jYVj8vTVay1c8pn{+EG7cwPhLy3j$TI6a*8~i zg06XUYY3L4;bM41_HXS1F>FcXBi4zeiI|!8D13%0X!|21ov{Oc7Y*5ZdySwhFK&Xp zst+yMgeC5(;wq@CVMN`r>yTpFvmEKEaCCqcEP#`_61I_V!)9G|5%O)MqoO9#+C{YH zMY9RoL8vR;+*GBg;mApO|1XO|+foJ{99qIB6*u{eE~_l zbNl8Fo)5a12IF@Tj9*olWAEXs3wN*?3=8X{8X+?zFV7(Nax<=*jbSXYIfr-0$kZ^V zgUV|aM%_LV$CnG3*}hN!t!&xCa%T%x42AG{`toV`@@Y!1t94aY1F~?2JO~;HqJAvc z6XT7~@28QUB`}v+6PX|8!cY~7ho66*uR#R4POYIOpq5>0EnQwvq#w4y5u7d<&-a(l z|DNA*YNjc8M_qH(iXhz=&ETMndS5V0Sm!o>1vL;YroDKi2MhS%GPHKcHoeorf=Bgt zrTWXkPEWKa?c>?^VkXvgZ)GvnaAR^-(sKDt=>z8`gD&Zf=dctj zF3jc@b|M$x_ts^RKaqR> zY&7z27Hlo1qP@+{N$lR?{e9{2$(}p^G?a?#S}fD$PKk!c&r(t{?mhRKuF8?>K%X2R z$#2?hm3G{aJo=i^{+Vvy`)|yRB|NIt*Yzi=#}LIo@prwS3w6H4bOCA4ih;q#2x}lPp+l8g`+%bj2VQNv8;4oEQQZJ6}D+M|h zoo6caOcjrk@Th<`@WG+U_OdYrx1wrhBpQnsii4HvBeU!dz($c-Tbu}XAhbl z;jnle<`zKP>!58#Jje8iY4IDBZ@`2;kZU%Rf9`R+b|^|Rd8!?nM<-C(uFzMP`zw`} zk*4AxEh{pX^L9)%f@7*_Ipr$z+I99vnN!=0Xp07^4?tS2*Hud`>ng&=TY(+L9as!~g81P~W_YQH>DcVKtIdmt@AArH_@3%eLJSGpySy2Xt5#ajbm*gB?dr&0MVhfcm(# zImI4@K6VQ?3*;Xn=TNH5qr$>C%X=sb2UG0GKeP~twLL?`Jjg$kwm+iwLc;dnb40^1 z_cjZ4IfNe}$)RuuJ3s?lV44?m334{e&1Egf0^kFg?AG+k5ve+Gdn|LurmgakV=>9Z zx%{~}sD8e_Q8T_}A{1<#Z_2s{WC|><{UUr*zfciAA}pH%haAJuFD+6;=`&?V|J9?T zmCCAGF)=h&#o?%yYr_<~zLFT0{exH@Ga(Pw$4=5bA|J=4EdZ`?HhI_~cS&0>M%F8Mp9B{0gMXQx!g_B5OFZzs1 zVWxat_dF;a_rZU|JBNcl;|H7e?cY`?Ws{+wO0PU1`L5mvNCvwK4(|tgRfJjLemf36g2Wj|h*QQTGE4{*V|_rq)&4P~$44;# z1hKN20_B!9tO>ZF*)S?Lwju|~iyOunZp0HJU}2s~uc;7=sII{!0BI z@W}&}+Ck7$K%!lQt3?wXn5#=%{8}<=;}|GUnopUECzkNK084v16Fnjj|AhjNOi9?0 zDK))}<^r@4v?}>N`262@Dn+2WVxS~!o4mvpYn|DsqB@0#)C7wXi=55!WJ6wSha3}& z7+!kVci9}7>;^-n-TE2+D=;sLVm%sHwheUeu!B0<-!LrP&8vmf#42Yt2)R=f?O?NB z{3y4bmtHEja>Vxk>LQz?@H$n4xVsFjp+K65CSiWUu`}r|ksKhKSrkqNI|M4j&6!KU z;uz|oLAK#bZAU9`lHjR1VeGBxE8>Ss_GfSIKM+ly&s@y@c$E|8tYgu5e4t7c7&8*0 z>2jz*31P@H-q-vndje=t!12ToFS2*}Now+g)KrtoJP)i$J8%y$*&Z^R^q|z$W7a)9 zw`$pwz*bKPSZ^QtShEs|i#5Ns>`vslJMkn_UuUt34v~mGL88uKX>>3=C@R`y-^5n= z3|k7Cu;rY4VLp~Un%fF(8w;6@SCJ3|(=ZBSdzzgm_zoM79RnE*9L#um)op`ImREah zc)}8M%^>aHMD}7|t1wr-m=D$9pgu zQ-C2}?#lAdpX^L>?uevj9b|Bao%#KSp21`U{$ne)E!u-)n;F1#nJ_KFHC=)GahR`$37%hL9aVg>=tvR!<`9o*HdB@ zWbF3|gfzu1(UJ%B^?vkP!%mB6J~3Oc&Y!?K;RxLB$j>%-3lT(*=?d)j$R^T+>c(HN{MYO(bC2GfG2CXU9Q6J@KW_KL(cjG^dnbr@FiPh4D zdp&MLe%Hd>4(ZtL7<+T#wMj#9y%rr}vtBvf+vm2V$ne;(&&R%O=k7iymOu^}7ABdK z8##`V{M?_@rAL-*`Fc2Js_7Wbky^QUSicN7klXzFW7Yi(qy`z2riFSG-N7E2NRdOi(GEwS;3l5UEX=bk z>{PTtHqHysKXb=v7hG}C$nh)B-+iaY7yDFX=ID_FBWD~uYjfl;<39F5?T&rtzW&Zb z`|i+uYUse#Ten|&?t!gW9|);F_||T80E#_A8f58ZhTrOUvW+CdjiWf~YhWMRO-(JXLq1lyN70tbRsWZRUOh(T4zv)O?i5BDdN@9FB=@@K(6RSTx%_UZbR z#%>IULg7Z8?e7W=r!}w3t+~pJu~@U&{5tgQXJlVGOFYW$OC4=zx7wbB#khzzC*fS) z2H$lfw2hEX^$KCxEAa4{x;tRU;2}mk>Q_=vmYg*m7;bi)YpZMlLCH{x0YS;Q+<`Wf zOg(JDP-YyvP)AHK#!ePHo%BvDR7D&K_+wAR&W@#j1e)&Iu~)?4&o!}h;m`;B;+d;s z>|MI?a9PQ6Jp~KGM;IE;xD&&+f#v*+!e}qcRN3Lg3a!)&Pr-WmtavVF= zA8O;+J*r_{)Ocb;4i$8V@A?7Y`d;kCA5Ns_OK)jZ$YWg3;U`yHJ zz=yd}ZR8Xjw!67NKs^2Q<_AOzXsiKO|1q~%*ZtutnbzuB0Rwr-wH-k#QI z4%A;Aa9LQNX}|^(2%aFXtU+J`7^9+dbdU|CMsA*QU}q9Q>N}oa;M_cH*Nmr%!Rnf8 zMf0P{Ic%;J!bRE~)kLOfD=Mny2Qp`}h2lvz=sht$2?Vclb4`TZ)Hl!{>XkhYEX{OVa>%s)S!LJ%o>x;~=c|pke$=CG$+~+A z{mI^}#FCN9(&+qwkSXscienxJlDtx^7J2;dMDsZNCHdrz3RFLo>K%!dnzu}ae?d7w zsDU(b&osrAj!~YF3LHqKN|Y+j+;QNkYRXPbOQUl!s78tu`@~w&X1Mj2#A1huc4N32 zIhZhh_Lo`n!@jAR@k?eB!@VKDY-vi*L~i!7QlTsF5BUwx_rDgD{2pe-*}D_B9+;hc z{n`F5P_Pt_KVP_K*T}pblSalJnp3ZCPKi2vr&rh`e5wQEV}bG5GYpb}Z^e|{G+C_D zz*kq7%EAInq$Qk4dkGd>f{6q|XRHmqf;FIgKnx!xRQR^?+PlCLtiWg8LOfm3CphZa zs%7?rdp zLNafJeWvH1zNYJjpII>@U_O{1@ACF%BUYEH8-wu&=HJveEQz|ImqfoylceEP|HANK z_KFdT1T=K*Q@Wy>u(#hD>o3t91I0yD#VxRxzmwNl!ELQB=g?_ygYT{c2fEZj+Qq{s z(33O+;yj}7f&$a3Fa4*_zk5ScN)DH57I%d#Pdv-!T0%WxX~hs(ayijep!72jqSvUg z9?ZY$vIsMRlFBC?6#kHtSC0BU$EtO#Yv&l&WtCT6uw`;~k1Q!()ntBU+s@*S1Lt2i zbXnZAejkHf;+g*a)&5GBb$LQ6u(WMrS76K3*7HWcP0{vDz~W2^phH>supMi!0UdNy zVuMHr#6-ywE@!q27ura<=08Dj!$l0!S}2w<9-lmNeyq$?B*PCOWsJ50d_F=X(t$*t zwyp~wKY%3CJzS$D5_MyqcQDJ{z-h!gLFf}dVVLH*NfB*i1i?r7q}?p4*h$}$1qat4 zN^&Cmpc4CiOmxRD8`?2%M6cXYT$pkjqUg2^eRg*8OiNqbK6+WqG%d+(d^^9bKb4)@ z66g}QsgfCV4`wU<;b8B4`WaIKI(?)0ym%w%IYg(Ra0+EOxbBcmJEBwU1jmfvRxv-2 ztWBp5>YYL-#Md2gl9D}tgibMDU9D&lwS@XmwnZmq8xe7l*=9y`uoNe4ltLxqSQCpR zd$1k{j}7NNRwe~eJHwz`3@9TXRUf4^6t)x=?Pk%@cAbhs=K3aQ|-S-1a0&8%Q> za;;oJD|DViT(>~)TB!YI38VL9%%#J;Sz*Prct#wnTMlXRqZmaJQV1X*W7Q%+ok6s) z`6D@dnRSyCne7f5o&NP7rg2 zP4Ue6L-&LxT^E0-r_kdG%#7W1W;n?_7rcMF7}ZRSAhq1>}_W?WbkO3k-5Bow4&iaLW?fNmqpHR^7*tyI3l=w|MB-kw<< z-|0jZjTIM*so9Z3|5+|1y6(Pa$NS2BpS%U=G)1-JHlgM<;Na4w?b?W|5n&+hL>FyF z#|N5XuHvScRC`zS!)cb+HLC|xWPGjptyLisHPaM8fu@$)FlM~gN2)MYOqet&p81-0 zc089|pNNB}xO0@-4%5iq_vYD1NnuA1oVRCYVEbUk(#1d7d~|NtNYt?Y`P##E$s6gP zJTkWT{LN#`Evvw;T;jJEdvimH;`nGarC&Lki{*edpFg($4qxxW=Eafp+-Tp9pj(n% zil%d4?@aSW@d5U8VGHxwd94!&@Y^b@L0LGZBpL}yMUWUa%_|6s#)Gc;D4CNMe>u|Z1n z1c_xkpf+Z?JD3BuK^$e;|1RO3z34YE-~Ie6WUqPOu`?>7x}`rim^9+yV4rL!z8}2a zzajBm31HrPBs972x;{O>c`#kHe1Qb(4chtdXKtCWLa%P+zjJ?T53KJwjC&xj-VAA- zD=sxMf%&rN*24@d(BW31`Mz;zTP-N)+`~wCL=P=iFq*6tFJ?zNpgS*5?mU$za720W zCw|jKm7!cF%oeH))kleBD{dEBcqo{b(me2p?L};t7C`Y<)JQa6DE5s{oMf#*?=6K9 zPI8~0dZ6t5M6LKJj+zG2VwDo6wRWhtPV6~%KZNy{&_|L!Sm{hbBwdl+?lVqbdOC_hcRh_)!_XdDI)o$rEgoiCzcPfl5%*aj%kH;i zT^DS7>JG_6_V}vs0fEf$#OS;zTJ$-{C-E|RTKN;T`Vn@+mgHFA( zz#0d5K?~;q9+%;~!#xQ4<4PdS#V_^rj2lG)_OH2M?yR_EFHq2fM?{nv7{$=45j;vl z-P_Nnj>p?SFf!UPb?PCkgVZx!Gpv}GM8B|uPb@*UaX}sU1P>i|06ongps(0Cn>k}rY(s0+}4|B9sLpgMT1zCWMME5 zTd+4Ebpg49V^zxRtb1l~IWAJ=jSus%2 zRyJ2+<lyJV)Ef`x{DYB8&QEayp+3W*t$li4DbrT~qyI;L&e2X6q_Dx~yJr^&036{zi$&_lz?h8k^?6!IN zaq-7^CzNElsVbPVCq1$S0b z`?}zIFCLfSiH?0ipRR>qY(hsg-IiTL;jYx)efD)*cAb~4z=Ey_fmnWV*Xf6kqH5Z2 z)%L&wJGvPbSakyA*nJAH!P7Bl0k#WW$P*z>h-f@^VF57@QdIE;$nc6&A;>mEe z@1(ghRjTbSVR2+X&XwJEy(8ytzX{A2eIDEnpFunPZga)h?T3?ob0yf1JU9dL1>J&{ zf&NhE;vX_sCWoeQvcW&wh5u|Bt~>Ll)KI41i4bQChN}6EU?`pG9~hdP+O@m1@qZjK zcpfL5OAkbggQf8udvL-fEV~-ED}Z?dqw^SVv?~hJYR7bKGivvprhlo;8f;0$FA|y^ zNigG+Ia`)-rk`>uoB2gK*B|P2>5p-?@%*f=EoA$1dThGC+YVS7lg0 z^%$kb0d!tUgOt?``cyr?31-uNCv3VfKP@R?PP> zDJc*ZRo$f$3bIfyEP%#tgp=9bIQ;@tPiY{q?CP7~Xlt!(6kta)%n_V1Ud{G!xBUAX zLpPMRx4R_q$hU}iuI%%0jLvFlVZOS1*Vwfe+&jJ~S9iyph>iu|Pzx1lxbW`%d&hR| zt_J&-%6&uZj-U_t(e`9Obc@M>iJoZO7Z}bjp1-wfTE8+d+QX$_w8wv#{$hE1Un=eM z7qgM!fn*rw*bvDYmkZGV7!M@?$zKnI%rr5N&S1~=)n;M_ry?1LhU~uYVtWDxS zEPtWAX%pMBcfZf6TX2s!0lLnm>|tT~5K?}}{wmo_>T~DXW$!2$X<70Vah;!ybU&+N z3wLNTJ6l9jpIrh0{o=(PSkT~N+!S6}t{pjnF-ptfBLw;Z^7rx)a+)8(h&7ZN5I~p% z4p(8N_wzCb$8lM2vjO;Ebzjz6-E}@tM>|5CTFoG1)aKXfJE8Sb7`~(Cigfg40-rz< zncFuHCp*oR9Xl`OE&Hhj{>fSNPvF+Mcnd~Z)`Rmq_Z_{oJ<2AJlA4>}v2)-4qi3Ca zY3Zc@p#snqrfkdFjI|O=sE2Uj9uGW{nONL&`o$=YY{Rsp-V!YL{vkUIJa&l7Ef-rW zT{GK`;8SNW;#1XWo(8`x`1_~-hcK*yy^c?XN zP&Q4JL4z(&i`8L|tEYSF{OQ4JlFBlKTp>$btPX4|Cbd@?p3UX`%V9aJXyK8()jPXW z+O#{)E(vw#qgE-_tFS+5FaO4WX=+ce*t;-t={cL@-M%hh8s{WU(JyC52j)(jiM(># z*xb%H8^=SqHysNH#)iFq=4(7Cx_zN+v@hR_^ES|&7T*AJ%|78EJ4aaFj`Mc6^vufK zX$MY6(_hem$_rAiP7tAID2rB(!W2fB<~{olqUe*fCoz^A9L8CDs9dX_sEt<0=>#fF zl|pf(EtBhdXf-{!*?f>NE#CWF5ISTEeh0nQJ;3n60Oo zEAnZsAmTl*L=Qwd<(fHjWp<9XDR^j)^U!{LXc=yF!Y;TXpwWzs&bBA3A-f{ccxGgF z?zBDo51fARWrQ4|K5Ume+-_mXuD!cqs&!X4x3PFQ`guo&5lp*Q9m$tRVepHJ<6`Z| zL#l!}bCo}^&F8sf>yE8{!y^vQ$16Kk-<`((1LO13F8^6m(PR13 zC5z+3u;(=X2@d;qZj0Wv^X#2i+Guuir%(23hTB~(%x*ulx$HL^f4Oj`VXB62+X&n3 z^JNDDnF#!QN;TI_wx3HiOweHxy&dMy0xQ|MIAnJ~3^6o^A=C!uoCYcsWXK~?CTxhm z)QQ#2TqN0SVpUJ%Q6PPiG=eC$cqdxMR1rKIF>86`XRtlBKmeTyq?c-eQcdTWT>%qo zF@E8>Bac7Nxm=QVsafw!z}CL-!s_FrG#!%WN+KEO=7_mjU|Y*@?2ty_CJDRoL~?d+ z-kAqFvaHUgmH-k(#VL!5lYlBxse>a;U^NmUl`kRtDq2)}B!4m{8o^I>iVz*q^Nu*e zHP4VG9LJt=D}Twc`p3w=8#56U6LsTwr|#lpXjzh-%bGG*Tq(@# z>q>F7Yu%(#kX@Q?TCsRn>LlU7g|<7TmC;9WL9I+|huTqzeG}+bWK(Km^;z3^;I|2S z%}%ymT9h)d|)E__q z_cKQ|*d)T!!-wTU-%Qe0~0&v>oJ#t_FWkr_+*qk%96x z750dJ+pZRX6-Ib76k9sTCR+g^ROyS0p&Qam+U{bhdNSAFE8I=QNA5mc3}i*yc$0?YGABZPb zbFwfi4=(3OdCm1>>{$*^#Zm|ML5H2Yi|pLG?<^WiF(vzm{JELQ?bu9)Xbg4nh{Dg%vHzW2%stk!VMJm7OcF9IQ+^#2h-A zn2|O$PpWD8GB{)~m)UPvZ%?v6qvcY%D}2}pb#Kyk^pEK-G3HNKRI{hrT`Y^alKP*FbxJ% z#Hu0-s@z6lZXw<%CYsOd0#Y;F$zDKyjc_m)hhO1)NzOMQ5Cu1DaF3gj$p0BMm#)xg-@60U=-}CGfZm=N&UCf#KN+ zoJDR0<%iB$6blhZdK(tK6NY}{B6N#WQkNB;TEWZB zSYfwSOxOATWC_8nld##q_Xmj#?e7OI(VaxNoGv^r!|`Oi;V%CD!BDcR^ZTV9J3}N` ziL`N6oFWL0qsvkHe??fe76?5P{~xzp+7aPW)@3 zjM%&bRFI6b6KSA@Ba$iOyvN2kRo%q=j}~FPHep7}wcZn0Zx~rlq?d9>3`C)bba%uA zJ2X>lA9Bz~N%0u9=`Ike5FVG|xRFdN?hw!R;G}XgKRBrdoJ5aKQnkdH{|3Y6*Ah@| za-sV*M)+GmuenWPD(>%*w6c*MltSb4u|$u~eq_%dx6*h{*W=x)PxlUHb8=_s4QBt&Oc?)A+0M;n3t*Zt1MC2aRxU5jMALjLUj1%I}yS6rVQV zYHi)Gn>)tC$x3-ix7f61J$Bz%x+{OZ9>*(uD7LST=7Yf1^0xp<5|F9$?`K~aZ5eFsS*-b(lAc~&2;urU} zzDmGIJ-;2CCitnQJM;P5U*#69z>2H|qCD-V$OkK8tHT>HjoX6Bt9N*SBN`q(JNsua zY&*@c_RB#de7_Ms#BO;}w`A3&fA4#`rCW_p#Xkl~kk?L_;%@Ox>YCYM)*_V2k*tg_bc;qO%K5FIwfe@DE(^*hW5zw=7?9XI}t zSYCD6zoV3Et`le$jPL{){2fa6sj^qP4X-?LKon!fhv+xr>?xSJ_X$3sLVKmabLHLT zRmIMg_fv5?ooB}znC9;m>>@UHEyYPna?P=H_h2%jWCwQliEJnyN@Q3uJ-ona_$_$P zyz?HVGbi8Ievj_tjz6|V3sS~f-R$qa586<>pi@R@<`;&w*wVSCtZ;;8s< zLSFa)%~K4|M`^rlb1YUXlxuO4Ymgnq6=L`~U`NH1OcX*1<-~fo@1;(a7dAi)AMin| zcTM=L*B1&IrV4kmPvM|GBlJJ z8kdymtx4JEVLh`mZgDWzH|oMG@hf7$Gtlet^j1>01U!=b&e(95q9oIi1YQw6wgWw8 zi5@o!HN9-}Wuijr1QrulOMD=qdxs}IgnPx#5)Xl-lol*u0(mepUmd?SfFQ^ql*#Kw+0LK5Pzxxsa{uGHq-d7-g*mrZG34XN+_# zcY^e+wcn{>q?g+(&^z5;c&DV%JBv>GogE23$^P*|&Cq1!fhXXg;yYbF&F4OLTs9O< zv)>tZ-YLP0s;gS-wRJZeT=mL$N$+iaoRGAr@SP?k`q^OfzeW{GxgNvMg3uqhh9S;G`F)ynkP&}yt4Vi`Z=^m-qpN|eXRLOQxdLg zzIy#iYWrz(ie1_KM>1#d)3&YKaQRZM1zpFuK`^(J_gCISfa|JsQffLl;}} zKFyH383G>fQ!NS3qU=Gx%XO{CbFJ=gT+litp0ODuH|&!E+9GwPH9{t$Wv#ko!GJzl z_HIm)6n}kTaspo`iu68Fl-Ps7k`)PmTvGf%zkXqjy^mcFG&nApji-pF3E?sJHuh?0 zyGYpEc#`@s3gZ$IKOh9L&X5bug>Iu-tuxFJV1%8jp=t`MYxtyEJgsTe=wT% zB!zbgWNohdBUOt0tP3i7yr>3T6f^3R6d#?Gu-{!}OjGLYx4#xPYitd>jorsIcp=P! z2y?!o8mK1u@rdmaY?p);rWoP&F5@@Ck&azPu=z`8OiMc*yvpA1$5O!XnQ8oDgZUSu zJ>oTsNlR20@w+XzjGx^eiv__e^xI=W!(g8<5Rr%{sC=sW`Lt;3V_`QD_LDK@LXv`L z%|i6MG4>4Tp;rk}(4i2;!Q|;Ih_B?8pIP=2euEdY;Nv#a23{sOF+7}ODj~{ur*RbL zjxSB@Fg>a!28L68+cnj4d&Ki{r;iU95l_k;jr4UzJzOTbmNnT4m~S4TNc$o%(GbpX zFYSx4>fp-$Q}^*Na*(Is#q3joXdz}r3*tplE1Jju1d;7vPl++c!ZivMK>6QRUFGL(RC6`QYM_rq6P!UD$&0Yx4=gu-6iV@3P3exh!o<3lIMhfAaF z3;Nr_%@9UcTbHVf2I9$L3|zTHA!KFBm=8zv$I;Pf(sG#f&_mnW)3D?Kz47C zTi-TpBhihU%7fQ?HPgbwEjQp99>mkn*G!LZGz9VY7qY~Evq-(PMQ?v_fSWS`>SsdLoG^#`cdeWBZZD#=llKwzmoOJlFjF}!VPc{dh$U%r!SSvenQ3l{!*AZO#S_Qu zkSN#@kOQalim7O7e%h}onmL_!8!BCiqONGZa#{1J9#6UK@hR?(D;y(@3F3b7-O$%T z;o|~K!__{nG{-@W_QZ0iMyGg-yW(IO6v#}l942V`a8etr6{w^xt}V15*x&|_zxdq# zj?x^idJZ*h0X1y`auuSnHn_n+0pmciLc3wreQ8{U@jff?h|dW376vd7BV~aio=kH^ zyi@g7S}Sz2*a;Q{Db<>;hk%(SEaR!cNOYaC%3P=-?YErr4;L6YTe!cWgdwd@9K#(CRdVT^Yy~r#7D% ziX7cMpB5$1W<8RjGgd8>x3Z_AQFm9eIMOWzJhC(#@G{2aP^>2&GJJ;BH8hn|ERQ5j zz+IWiEYwvXzVkG@OFSsv3)1UO0o@mB)%MISGb2!e3DjF&9vxdmyW9XDmd#X=87nSx zz?oWjy4Gv02v)Yrr+w7Phq5OGFF6?Q$gJu#yoFmvs>!w`j(z?D7tWX?h7=e$aMKXX zp)(C82Hf|Y;ew_m_^*5W6+PIr6Q6U5!Phu5>%t42v)5b#XFd(i4j*>TaK0_VH*XUE zAe7L~pDeFt_<9Lu;d4RVAG9Z3xm+u>)cui@Rtmxvs9zs#`{f$q=m@K9L@VkWJ za*IzIq7>qGut%FOiq}G4BEmIx)EGJ9FsG`fVtpXO#-|d1(K12=olD?4FCc#wVgoPO`&ESIA@^LHSs`5IcNJ z!gRUTHH<>xeScG{@7M9Z^J-x#sVZ1D$cd_4wa0K*IJ9peo0@bn`>vRcjN_#O$ zq&&q3rFJTZDk+DkJ$20C>PfxZOPzW@cIwZmKTl$R{_s2K%f%?bh|92!4hd9n5ecY+ zdZd#FUMF~%msw0=3D=OTu46~EKem`MBdtDUh;_1`H12#m(&a987-pz=KdzK3BO zsshR7E<#^Kp4gH{!)}GKD{*H~7458BdXXnN8WCK70wD12Nr#gB>a z6?AxOm%uB#W2st3IAx@YM7heB$vS9XO8ZoNb7N1`^0C#}NMldTFyTae70CK#?6?Wk ziIJ`6^XyDPc+{RZMQdHxjs(MO|x;Bng3=g zLQ2@jwvp_7OzdI56CVQpa*p6EWtD0XsveuQ_!t%kLMwuwn`Adey0lytrDd9PcUr1|53`2XW1Fa4N%5iaaqP&V&GX3C z`h9klaGq(19~7SwZ(ieVC)mxxInee2@rUB;33FsG%$xtG`CTC(+=6-(ZqfnX?|??Z zxn4vQg*6f^V-Vp6e(gk=2P7)K*%6$JJ~0M&RJ^0Cp;=D1+VUW#rJdybakUfG9c7x` z8*oQVG1<63=?e&nsUCOw)YALi=}`+pzw-vcsRO)L`(vxl}B4{bAEJ{MkY zoAF@hblhfizRl>K&JHP^J<%FZIGyO<@cv#{3*P2`!0a4Gxtj2TgLXFvM9xEIr0z1B zt2r(pv6g5DC(Dp@o6AHa4x)eW=XBYviN+E;1BSQp$r)Ujs-#?fhRdUfqDKKCR}81z zswk>{7h>Y}vS*ts;%%lRY;B;065EEL?HOvjVf|s=*7#5MtYBiBc=`Iz?6#kXvXB+e zgSOk(e{8osFUEwhxPbQi^`8)a8Ef1DZC8m4f+i#cvQ<&t9p{9>v`1N&7g~p1;i@!j z1!>#~M&m{tezU=z5qia|;5|1x?`|%!X7khHMbLK3`uFX3KgXIv72AZ%*MDKZ`v&&i z=9u_#Ae6GUZy&3B<<4#X{I2PIfah7_av}F+L}ak2QXh=vMt+OWRuL z?JJJDfy=2TQ_|fr@pcwXM#KFR{pnm^!l$V|m~B!p}XgK@pUzV`>9V^;hq{JWdi|CRpTE%0}N?){d1Pw1w4TsN}`c^ly+ z?}p#{nRq`ucR}Mq``x#)CxwLgHfTH6cz5$fYCDtty16Vq1Z@{Kb_-r=+s=N_{E7G$ zQxqTl>L1|u-_)FLhMV8U{;c1$zMtNCU302gYJLmn*&qHB{W>sSmo%puzis{$_P=)^ zkH+eXC{Fk)%PIx9sG>Hw>?QfjYifL3lxbVcfF3SW+P@4EE3Vvm<;8#D0-4(c0To## z;-bLSisJTzOyJUkg->Ds8vB~to1@KdK>u!BPpuErcN~Yd?a*e3 zkFWn})1c=T;oI^;0-k&Qy2AZ(jkB6>Zq77618q00_pM(;V|piy{kzC!{u+)?2fGC_ zSX%ttk*$)AZDVq*YSJ!2wJF_eJUCgUXxffM3!&~tVSm}JXzkEHFE7TXSX>&jquQzt zSiwZ&y}bH?*01|tIUAk!z00?yIsi>TvcE7ge-tzBINx{x`i#9Neadft{u=ee2iRkf#l#`lW}Kr!OjMfgA4cTx?8aW&D=i9k{=mW zxRJQ3bOhe{#pe*Yx?huqsXSb)H}O?WM;{r$9CV-IwG@fZw>LB|YCPTiDy{9n`o+|i zYhK#Cr1`hR7c=Xxq_$%)cHJ=U$deK%i@`Vl7}}0Ezagj~$=h*5{tagG&39oPQw2wDm(Oe*2b6czJFJR97Tl4EMN9xT(_PQ^@ zyWd3e#Ouh$9^lw)+DUmpC{J`QZA$b}oJ1eC*1F*$Tz1Pz^wIxUvIPGwM6-61iW{#q zc-K-xUx}_&?V_G_B-D^uld^MKMH-qwdJK$E z*4);-y7^DE9}TacO>Ifw0&~qDz&>$>a4!22@qt~<{mpBde^2}K==vq}T&lU$+}ivm z?kB=I>=Alyym?*o2H+tmFI3mBqUR=?Z*894tdqP@Sf{vw^|!)Xf8P8s$nJ~l4}pw? zZ8tYJH-FRoj#-4Z_cT98_dX*e={Ft~zR>(F3!?nL{z&7q)b>RdZ9d87>32WgXi{5` z0DCSzCz$K+Z$3@)ZcKQpIS<;T7bG!^antM=H(wd6v7-8;(xlJ3TeX%#O5=#ntA+o; z?=r$ab8CvJ-|p__zR>l*5gu;tVs{IEn92Bix`g@@s~Khb5w0`kxn95ilpmzEFgxUz z&G4t)9!2*(;)udTnOnJ4;XpzU?d??T(R*FVmtf4X?pgluMHjubPP9$I+PE6lMo~B@psuWPIIUb| zIn+ZD@e-n$g(xGbk92orqPmG8Ms)#JgziWGVFuQK+p4QMTmwBJyO4rHN!(&C>tN73 zNJh3Zn;?$<)KI({3rCzK5bIL?K;~_OxB{XX(|xtqV+0Ln1sDNCcbn7Q-9|J7^nQ{3 zr1>}E+hJbax&GtPS zM7&%0gp`K9eNR}G4p7_AL0-Fw*R=Gw=aPnwDpS^wK6UsHd_V0^`^;kUjm zJScvE+P1*nc`>Z%9IU;O_3LO2j;v?s-c9fuQQ-Xr@mm#)f&JD$^54F#d0JD4^$jx7 zx_5nu=FiVa=Xf3P)(Zp<8J*((?o(P=&RYiFz8BUeF@CD4D@rk99S2f0hdCeQp6WXvx4UC2gnpe~Gqzd1=%${hz zAbt;I@mtn!Y5pJj`(xoX#2afu57Fcq7^j`$vvBYB^?#>5^!A1_lx4WS3jhgW*=h=4UrHaOo_d z0{KNMRIJ!O@9ccbc@qtVe=q5>efa1_;FEm^u4b( z|4zIYD1Pbs!_C*wJl@5A-u$BYAhfLsPl~I2-io`LzmY=bAm}!RyuQXYpGSn|o7Nf!*guloZ-IXLTCTG;9<+ZKJhG zzfR-0uCxEs{ET?LFo3>Cy^Q$Y%X)^);=o0hGo;dHLOAaSdF*0d#+|I5hp}04hoTt@ zM#vx&68yx3Y$0dDsl-5=8*09kEQBZ0g@=5KTUYhI1De;Z(*=d0FgL>{CX0%w&S)Bl zQ%Xu#6;;6tQHK9Z@Kj3IB$tc1q5mIiPO*K>9|GS@lWp2dans9Q5~aOZyW1p(JIa^9 z)*Xa8Cr;Kc4pd)#aKfkSBh%Myd*@@Scs0;^u>057Bs}*pJxlqJeTlb4uj0%=?;e5gN@eU>iscF5>S2m`C3v8+sS%pMLJf z^OWsa8(c|(U4oJ86T~MtCfc_2K{e=-E-v<78OR=X1zqwh`qI~2R0|>kUy4&Tt;eGC}_;jVut9ptqRnet`2PN7o)|xf(4w!e_8ee8# zO}-J@o`SZIQ`=Hw)o%MK`&#oo;y*&$p2ip0*QxE_;ki0Jcd+p}`?+V?-!%VHd_A-s zg@5}MyX~)=kK%UgWdj@p`jc<-a)=b`P)#`o>t`%m_j=J%*CXEpxHZu@&B`UCV8J7R|k(du7Fn3REI*xez+qJ`kdS^NyEkPh-6U7Aj_@ZD4IbI_ZXNZ@_ky1#upQm-$fuxTA-UGdzk`4uad;Xlo#STu_}|r-~L1CA!Nyqw5zMJ+dT1}Y6cJN!Bn(o6#t`nvlHI`sQvza zdVld6Y+vkX@1^$s%ds8y4Doim{WNMHJSI^6hhK=dh!<1)>CJ1Qee@uCWK*CE6z zrHJjI`*MgWlfi)p6&B^JzRIe1Ae`}04K%dDc`CHG*!92GZuspXQWE+~SRB63tY@W{ zut2;{wUAdleF#-n#G~|x?#bqyYK*qm8p&E>6!Vf%sAdEwH0CSAbiv>#Ab(NHNusL6 z|4dU|?&RJ;~>rLtNW_QZUHyc${= zGYnCRU&$x~>i^~Kz2hUhtGnS_rEmySCQ_8ylB3 z#&N+mF1Sz(kFl{GIwZ`D));KUyM~aw5W)ilHX-CmLJ7UBWkN8-qxYQiyLU9w8p8X} zLq55>bMMHjd+zUd&iAzMVZMo0S=JvDsq?7^oV8Rh>zQO|nxnJqi6)#>#lo7vCBOBrjd zdba)3gM~|f#_|%#Cv^qLD9l~Nxa3J9Mh`NKsgqor2Cr6(&G{%x5h>x2pH<@U6dMNO z8Ne*KL1}vBSH(qxk(E`ei86xQ!?lE1QQv;&St|))gXjQb6=?tcskd2;`ruF8dVlRy z4UYVa{G!cn@Lbw<8*OekJ<96!?FN)_fy%;-lj$A!*VC|8rGgn2YCjK@w2HnnH~)4< zqrP_#^}Pa17<8ORguhvFbpOp6d?~N9NO@eOul;uIqC7foYk$+-wHQtO&)Yc0efjtB zw{C*Jb(BZn26v*1%_7$ug18d{ZfYDeBeqjFWf+MhdwTJ1n2=u>nZ)~aZrr1C1xLv> z^5vGUPlF7tKAIBNH;C_Otb}t;=pCibeT<$rSZwqbasH$pJp5jz8PdP{!esv3SD9ZR zDUITpW*uJN$e9-=eatVADd2{cOD?@y%+#Vj}}pOXw?;Qs*l=e$FnKA06eZQJvc)@j`EVgI91`VG$aw zh5-NJwCuA6+W$WMC@)I}KvyC!B=ldgOQyolZjR`9y(pOe99Ag*bF1F__DJN?e-a}$ zw-L}V+_)#gv6-4e2-ZLp+E9oDxLd|+TUzz zL_q#B20W!RTvLj$kzRI%^%utZf0S+s>v&$04AP&EwtJ+9!?3o`!E;PxXbdZD>viBBM?`bZkc!lbTZnbMJa`oY~!#N<2syVi$^vRUZi;@BCIH6 zPfn%=%WIYoCD8M1j%=1`U=L&XS$+t4;wxM_AY}2 zqlSt(+=;!kBhx{r0xTJ$HvdQrLFg-H|lVH%4FtJ<@y{sz&RII<40L1NL2LL#3a@pPx2xdROEz2 zia&3S=?t3$+hRz=(LVPY1@R_-e-}~I1uYLJzk8ixVcJS_vn=e0&dPEA^ zT_#c(mU}`vOMSHhVRM7xglG14Sv#X241}W2ENq%+&P!K|lxCof#fGogFe**I?$w45 zV4Dt%9a7M}p0U#u<;wc!pOAv>zqT3l!TV3$j|Q3_x9Y^ugQp&}>fCOF1(vGO>^0b6 z2^-Pg{TTk%i{Wn_=ibNWmtmz#1j&$Co(C&#{iQXt7Z! z;zGq*$%4|1p$1^jWNs+RqFpKASZX}B;Jj-&6|oYZlDu{$8tZ~#pcUg0nlTM)B8ny1 z^px3LHpc=X1WYG*CI`03*;PHS=>-pR%J7MG1D*l9L5ywoMdBlu78Y=?f5fKO2LP7o z4FFp|f>#!%_&t4Aqb~F&FYmP3`OUF6JO=yx#X{M&`FS`o7)1~t>~~ZF%iOZT;`Qom zEKmGJkfTT#{?Px3;LWRe5;`!)On}|o4cNs+MCh-J&H>x}L3A#N9b}F`=MNxrx2n3@ z?p3&)JlppO(-8-QnCGX46kbkj~8b8<6dconHrI=>|&d1;ZzOG^aVn`Rjqg=|@3!Zw+0 zcEu5mWwOQ68ttMk8*6=)yj&>}|F6<5GSwu6wACb%?4V@kUtWrPDtIbs(|3gUZvG?*lD3%J+kS#SPP>fp(JcQb$n$1eAE#LdY*Uge zG>*Kf?|}Gls=}y5MQ@bGTCc2<$C^o{?HXd%8%BQ`BSsfsk{t8afYrv8%c=2{22e&KbmbakIfo?=V)Z0qU?W(9% z2;en zOR_%@TuoQMf)rwUgT;zny*~JUe*u1DW_I1C`Gr6BTj#qHP6`AKcl-sNkF^AMqk`1= z&_Ra93>cEQ+UVyUZYj-wH7)xsf%e@2;R2gres4E6aM`sBdWIf&n@LW$%V|L|Sp)o= z1A@Z8+hP|VU*-_SwqA)56T$@c5yA&*zOcSmg{9 zw7+$5wlIRl8q7B?!*j>E){1Y8pe9;wMaVafpl@taInD#Pbjz&(^;!pPtg^E++feh6 z!7!Q0FyU-N06>0Zll7mwgS4Xz+EF%xf{H4Ov8W#u6db!4ec>k6n@KUmknqVLjdf$l z0B#JuvCFfb;&bP@);_V@xBku*cK+^OgIh22(e{`5Yk%0~TmRQLNB>;&t#6UO*KVV8 zO)MURoOcQZ55eZ-g2w0y(}sLJaw$g9X5=UQQPR(I2bv)%LR`pF^~(m4qXl}er9Zs^>D z^k^w~v@|@LM<%*GuIWx=XvOVGrB@a}HmM~%I%HzZQ^0K^u89)VM9p>Z@gA!ycl0Yc zKrdHYb%J8?y;8m0YLp_srHJn3)vJA06Wp`ug_@%L_{XRp43_pUzHP9(F_!yn-US{4 zrY||M;}Z@7uGzr7!nJbh44P)VfU}|nZB{fqYik{rmyXX?Dr_L63zSG{Iwyh>DbK*g z5?qWGQ6w9wbPXpSO(;0-uIUHOGN%eDeU5b`6le$l_+)V%4FQmK=%Fo21)0TPTyZC; zm>3@MdQrPxrt9O{^%=arIEzPd+9Js~Ub9dvkI&4mvB=Hg31oFhqbXX4+`oQqWzxec zhgHv}KG;N6Z*}}y{F<*^tqq~?4>xg)5M0yM-*T|%=yq!zkv)-Y@A$^5!|MSLx8wVI z5;Hr#zwa80U>YyRUz-_DP8HW5=Zzcg-oU)y4Y_irw51R;?*sJ?kbU2Ld`DRf*;4)Q z?4Nk;7_)IdP}k=qyt9st!)UL;Jcc_MU7$vpilORaerqXV^-@T z*4&Rtxq>~!UE!;)m5H)Jf0zG(6uJW+XzC5$nZd`q!)g#@$t*jh-=DJ5>a!T6P~q~g z6mXT=byC=R?heJOCs+U5--d_NTXhCm;Q9YP2a6F5*jK;m_UaV(x&Jnh&e}_JD%Nou zcmvmRaq1LWb3k?dTRG~R#*MisCQ9QN5eyYvSy+n236%rJ6jYaDl;&^sNg$0V1-Nmh ziMAR)@rsVcuX9SH2exbiw=C)~)d0!}2F4i}fCV}ZZlCVeZY*wV%)qaSEQl(DnE>B- zT%&$3VQ>MDczpt|i=gM?Ju^(t*>R*!AQ(^dAc_C#6|33OWC7F!PMoLEqD@TM`PH_x zmg~$?!VwCTHTJ14P?V35i&Ue6W^jZa5+liyE;Vw&K)|207<+&IQnalTasdvxte8sA($i}a%)u4C`>A>kvKZ;ncE{Q{P6X8$h#SAac+xlgi=-ewMfS_Eq%aXvK;@LbF|&9*$& zGtvAra5~bkDrz0%_RpPYg!>E*2x!>P0GhEQhZ7wK=s1YS7F_T0CR z?CyAH#xVape)hyy4IKviodBP+rBCPUOqqhtq;|(DO`#&^O=PW=v{6NsJ7`ij#Si6* zJpbX-1kl%tu2TS-fpoTDckjOc-o<#K6dZ+Sx+huuzC#v9lX%q6E|e~LZyeU zFAtQ~%Qjd00lh_X8*KcWpS)mVUe>vc30u*0Wx<*Ef)DWh<$HvPa2uE6)^Q&u#v2?N zr+1gj4XH%q-@)Y>gdY<`W_}G;HLNc+de5TM*5H&z6a_vC=c6Tz^CKSxNq6uZtMhdi zkz^Zo7V64%XBKt(bs*C;9$RqUCDSxg347A(NRH3x^ltTBli^@qEzixkSuy46I2i69 zG(0{4E>T`))JrJ}u7V_`nl|4{FDNtj?wzd!4PLV$c!R|thQ=P!_j*eQmBKoCDnFcU z-!?mXx@AMhINLa?V~iw@?Jy4QxU-Q&4ZZv~U&7OIhHS8pk|ai7Io`MLkj z*&B5h!6obLI=7HcMT(-;SBRosyLEY1xSIbMH^AM&(EuHsIST-2(Q1!kz!5`ac|=kD zXoLn!&9cgg^S+l~BpDV#h6QAwHK=pqJ29F5VzXE<&`ou~1=q4s0Gj_44yfoatXhYF zU|_MKn4&z2E~EyT1^f&`<@Kx5Pk_uKza23fb^dE~dL3XVZ~MoY z8LLqj{HRwBO=J#Qy!^Y3MnR`DxZ5A+_ZlpSlx@29Ti$6hdwi~U@^`|%O)dXcm=GS| zhPWAiof<`)gyl6-B02*RJP0BY!U8ohLR8;_;EP2>s>;n983~Q^Y;z1pWGa|v$KjS( zOODvlvNE#zT;TIUr?-+j(@g4LZDc@pQ!mHya#P?8xPE)iu-NRG7hb;irH_!eCMb)% zz-jYWu*M>d$7V8vzpyPLo2d$mi5yV^P6} z5hSoM@=7ggrp^fPazO%KZn|imScu$gQ?eYRQv#QtDYRLQ5QiD`#$-aTBhdn`gAEh^&9BOOF%)%1B9(F0o^qtT*Xzm zk8mu&kM3-U*t|k9*qJ@7NS?yiNJuk8#e79J*R7~v(ICFP7U!VGScKEsO!Iq}4$ub8 z5?is1H6mDLfP=xpkr2M9NT{o5qm`jz1O9Xe=eAXHv$^DPo1MYie1&X z@Br1F*4twqD@}1H7?M0oQ-+3=#n4dMmOtGmaUocCeWlZ7b~eNYw1*flX(s#N@v`;C zkOP!;qwH)9*BeugMW-iLCG~0_#W{Z^Bp%bF(;s5Ydel+FoZ6Hg_pdhG!lQ+zYei`o z&>W>}b)Kk1RF}0OKzaPFm3@8r;x>yc2C{*jbwPP#$KWo0%l%uYw;4p648E{I(CGsn zy#QCjp1bDGO*@Qn{lUL~eCM<+g^XfGy+tPkW_da3 z3)v3tzT&!>Qq~FbBODD_BY_cJQH|)feAGGWi@<(WcsA`1Yt>A!Uz3E3-LOO5$R|GS zMha9tHNog@uvt^;5)7WZkJIJ?JCP7aR0(m6PVA92nw%Y=X7;Ib`Z9#m)VZm&7ex>b zPaU&V^q}LvX4~0gAByT{C#*&}bYhF1&w7J{R;L7Jhu@e4j8hMXc_V;{_E$qeyW4Mb ziYAe9(%3jb2=bqR{q-c*3gSizfxAfP-yOkPHte($EEP7!-Qemkuf|s$#~eq56tS$w z0vG{@gT3eg z*E(tcPQ=8+e@_nIff1tcpVf;;%|^Yyc0mn+>e13Syhej8hwk+10|TFXtZ3JJF-r1W z&!;hGyAM$5U%d-Zm)q^W?|`G2d!yq!o->VA&lqYrOE%voAkO!bvNOt~7?&Qh02^u}e5E(AlCZ zMQ~n}oGup7T*=46le%aXbRw7LPEACP5Gc>0OBLSlb>CvM%T^a4QC=4q+5TU{R)ZM6 z#;7ysLKZ%lJZdxOg2Ks!<+Yz0oOZoV@8S2fKcTm|1*eC<<6TAz<6T<*D%i6W?2ke2 zpH;6B!`TCP0wPdXQLmcScBNnqSxQvKi$P7Ciq)BVl|1)htvEMC#km;x57C&?m6eq$ zHu{QK2+@n~PoF|O0hA4(6@^EHlu0fH(u0eumR2i?hy%PLPGV#Icz}@@w8U9{y?tx2 zBG+{HsnMT|?tJ%1TV`x>Sxt@kXaRBlnTro>^z?4A8gzk|&=PKb>yXhX%i*J2#T^%1 zwr;^EMXtLrWz|ceh4J~whd?cX85I1u*4lq(x6T~lt!{Vw4uf6gx4I9U^c(nRxg@t= z<^JM{eWqnV{S&6Ba7(azX-lpQE;=*xyB}(eqe>B*M(qZwx8M!0ih#=PiWch{7)-30 zIO(cPiZ%6$P2$&WOxJxj=i`36b1)PdT(^736!O^}>&*j$d&l^j+04jxGe33cNI@~# zt0xu?470!e*5wglPPmNQ%l&}yB_Ls?8#@3=EgJ2{d}F%Q+=y-q5;J0oMCIw_8yA!s zJI`VO5#Kf@H$^0?g^xj{xxnV&HTSWH{f+O;-!PrJO=)a7)9eTBQ#ga8wzqEE0_y>e zT~_>be__kkZ48}uos%sWT@L4>(Y+q)&>BHUV+4??vr(%zN{$v+9Vg!Y^hP#1n{$AH zZyGV9BnIoug&?Ov%_}1`Vm^XatwckyW4za6)32oF*lMcQhKGtmj=T>3);@n?Fz;B(lxIOd^|Q5gv@kT*<5b(f&bLm1von7t|kyc?WV z=)%CaOr0iPyGmyUkbX#;d!eJy{v_X-7#{|>!rnVrHJq>xY#8OBU0pe7qlM+56n3_-fon4cJ?j&IW z^(4xj9Q604(3Mz@mDt<<&EA65pby-I!TkQc{XWrc=0D~Z!>PR~4CCu;V4B(=HCd@b zYoFU_^}5?1HBb)vE1-`n@Qy-UFLxZLxS*|W>RdGYvzf+%r~d97Ubb3tXjv zT@=7mlY=rq64{LzG%UScQI6rXHbBDtI@)m(A1TLb3K(a%PX*79EJ+aj;7J7u3!`W!{US5{{m!t*5;kGXzneqboG?&M^6u#))r z;oCQjUU1L+V>f(2=pWdWzi@BO8ecc}*v|U=gZoG4m@PO2f9OH@8*|)N*0Z7!vWM`G z^wQ*KDv5BOZDs*PXK8YFR>yd*J=ng+3MD|5a5%Ze#bx%A5A~FPqCvvR^^y5Qz&{Rh^ z$|rj=8_K^lTHPQb_tI0B1w%_lv%CF6C$7h9!0zt?Y?$FHyo+mjQBqEimch=K+4OUq z72QXT6cp?ToNa{4*!;d1+|6{k#RW)kDG*$M1Q&=K5#v!MM7fO1w_z@KVj!wpB>_gH zDuA%zRjCmINhZ$yIg_NUYPUXvI&Rvhwb7T0I38DOn(>b1jNEVouykYQn`TP)!3kXP zXjk%hMdY3*PbIz5kN~Jsk}Xb`+Y|1~ck&jhO@K$mL^w5d)X)ibsr+-`+Tj~W)zqoC zop+F-Djk5BZvph#ZCZ!WSlg_5;nWkXJ8-0hcNbGf72HzO|YsRsLJ$JmI`ka%Vdf2XB!0;cdeB>Q?)y* zwNR8BMOb<@B&)2#q70n7n`wls0w%bb0XN5Z27lomt}_~4!5E)RnnGsN5mCe$Wzm$u z;A|R?cs+;LVWG-KC7j6?YAXxXCdoL@JQPl60J>C*tNw>&8yx0{D)44Ps5$bTMT-_s zB(AQSi>VJPoWVtmZT8*ESaXwZ%S0wF76X=x4N*gB#57v zPho7hB(Lj*7a>M>ZIv$Y_3>|YI@`DM!@c}4ybYtJ{p;E`o`3GSv5d#TTXlLpx=Zj* zl7LNj^MA?BbI-5}NsP%;ifQn-D-qME}iBDTHUCCF>5WNmRM0^yWPCe ztd*q+G^re>Bb0g_92IzVaV%7-sO6GKSFcT^Wyv9WZ|;tV3nAKOs>wP677RiuvhJ_t!@7~n@-~0<(?J=bhKhxBSNHoI%@@KVx zeCJG!$k}P&YBPiLCB$lHWDjHGEDFOZjp5Mi(H6DJ{p4|LVFr?-$iH{PHoenx=k7qU z6i(<(ilN_b7#?4LLQ!<1!@YC8{?OYTR`b(tpFLgPC7ir$e>QvRP495zcGkgbwMeET z``&i+KsqshU})pGHRzC?0k@^LWnBqm`3QiKyMzj?oa zpVMvDNk&;Gd4uq507-==J=?V_&*l|~8@}^w)Z-907`vXZYqE9o|KFpvWDRoTgNa>) z5$dzyqiGLzd9}BC@u27Z5Oqp;w zHQTw9sUsM1j{tL(nnoQ-!SbxG3aI21*|1hF;>MPmTO8j9Q($0udShOkc# z@_*y!#ZWM;b6h#s*DL!5Ufz6B$RQ7IQgohp&}2>a>->_><`)X?=}OQj$CV@V!PMcs zPT8%9yk~SO6g~E58Fw_oznkZG9*zaG^^nC+1SB>VSjjR0`<#{;79+R zQ07WF30^5-kRN&ADPJ~#141(sPoblbKqqiK}SZOc~+H}TJNJ>aJzrMC~$v884Y z%BL3-Wk`dHDOrQk41}XjWF$xt5K6I^<^f>yJ=OL)X9tfVK zD54&$2sas?nLRn#XOHjSHGBOD+mH>M1;gaLdt}G<5npxNt@HfzJ=u|sBi=|hWY5K_ zb7GGWiaC7&yJxsRKEHjc7ytee@s?D$Jog)}<=|MluW3Ryh%jo02t~zOzDyRg7XC15 zKR#XL*r`1E@aL~%n|)GG7RiU9dwFJ%ms4L*qJ!h8ARx%_?VZmi-6Pa z!{FJerDzuiC{lnT1L)+#OSdyTn^CK_$@7f@o?X-Dz@6rJeKf7%R>lhI^+lqDT-V~( z?ipsOj=An+TPvLk_5|JJ-)qvj72fpd;QfBZ@e^OXdZOx!^Pi9EJa*pG{+s?s6TDKu z(SU^?VVpb2f7c#-06!o5dW6-??qA*_oZvqN^8Oyp8wyZeek!d6{*S82V|Zg?~)7*U|cM=b-E6F4Pf;v&mJxqMMo;ZHgp`{vRSSzkc< z_rll@YBo`H^PjKJxdSGng~eU+%ge$&{4*fq8@X0mv3~x8zxXn1$D{UmxhXqHtXxyq$DmDLe&uO<(uDjF!-r{>JSHApw1ifT9%l(g zILWPAX0_b={fYURZxjRRhy01YzuY}&vcI$7QYh(8)XJUB)RA(@<@yvYZjMQ*1xZ*8Nmtw<-aVVd!-i&9vn~KRi z2K!A91P{&Mf5FkGZ}7#pzR7di7eCE!U+1?gCl)UGggtoSj6JBgP3!{Y0Dmv)-YZ2O zdEL47+?{}2h+Cdr7ybc#B;&R0D#vWiO~M|b%1!YVt~H9L@s% z4TK*85T>uLgwbl6qd}!MLZ{S*btkjs%6h%{FWLDw4~*@c+asowJ9e3*O$SX0@m3}3 z^Vt-=Ecb&IxY;M!t^N~lR%EY94)8YwWcXKJv`)+4%MMno_785ly7$8Vr!3}8qHNF` zWl{Q?J?IjRCjPtgA*1t+ZwxUkJAn3B)We#%arv{{eTq)JlivMFSj#sG(_EeViR#lD zwZtfg)Tre0wIb;E4Z+&3iS7uj?HaD_QPcp9Kp8ne8dABX^J!#4*a2PyCC~>-U`$;L zA6Z&r?=ArEE(GsR!gp6aBQJ_l6^+J6mwrdFI_jMWVSBNpEY|Q|3qE((jY*^}_?8%~ zX-cE0b2t|jcVq|wbDyIT!>T?b(;Y)KFdVUdfJ7NbBS-NMoSMXnCWT6u3gO9pKoqoM zSJZriK2hes5^pcb@+DjQx8`#uNBPjP12@YK_s32iuTx#6o%hQgMc6mB_noi~e0*=f zA8>Cu5zEHR?%dq1`#hoD7rt+U;4>;ZMK4_&Qbe=dH*pu6Wqr}|uY`lb4D3o)hyNz( zIj_Ly{?6ya!Z&g6`mSSF>H4Mc{$8Z-704HH&>pXFW$@hpm36QolNFXDdxx-zjgVFz z!`TA9)In^I_4x;|iN;t73tCg?IL*4~!Jt$b3EM_g7_PDGym#s2v_}WvZI)n<`f+Oq zV2?ht^mVqiy~OGTFlcfa zFS_0vbDg;1Lc>%loEIH7MHe=?1G03~@BiE3(M`vneaveF1zW{3e0md8rN$T$NMaM$DxjM#g7`6{gnhXK3I=IA@?Q~ujfo$0 zZ=(j{uYurkXq?YmVU0@uzyLNy;1REv={kI~ir*BcZS38oGXtO!tF`k~A=mV$&{-N| z!#Q8~mDE!D^9v5u@722A3V%3u2w%$}zLq<^vB2P`2Lt}ZVSgfYBIw0?f&NeT2fRJQ z>*gN`fMXv#!+DnPr2nvqmpw4VE?3P_D(tqR(!nkW*85{ zP_bbtVzFW`NZq0|hsCZpV^&8Ri88f~b(ytfQEntaHF~f#%L{kjxAYm(iM`6Awbuf# zsRxfOIChyeE4a3j$?8e=bdWT*mRYRcL{IO~@cE`Ii(O1E+(FgaN-wP*6PVtWvE}OQ z5;S9L>P7Kat_tw{4St+2X@B#;;C2g|umD=Ccoi(zt~xVaaWGtVomb&MbBpvw9C1GX zy||9d7QUw^t(J}bU!$r~FjicrU+G@aujIf^{g`_%*r~VCb(}qTmnagZDRFnh^?T|1 zlW_eXh5t~p;$xGXA_#9@e>2&&Js3(CA~9Er5P*eeezvP@6{^6B&qD4_$oE6>h#D^7mjG5uku9jv{bWSOD$IH1Nu zBHTwAM*+GDP0ozzI+Uc7(wi+ym?UX+5LK{eWvmy;jj01-Wr`3h6ILHa6okPqO#b65 z|EELk7tkiAxy~>=6($rF?nY5AhN7m8oY~@Zg(J)bTTv4OgSE9vyP^#{0c)E0%lrND zpL#J=;m1&g=+l`D7NPw&y-ENTu@ZP7WYjq_c`L0Y-|{uWZ4@W&d9bzzZUYXQAOZ!wC$9mCh_^5W!m+x8n7y}fEe{k6s_sc$`kPfzE zPlud3@ur*b_;fPKKM9NOwO@72@b^ ziQ}74?ij3ZrUqD5_32Qw7YA;Gymyou>(62*U~6#K8% zQlxK=r2o7qMWVfZbDO$_-5g!-aJGtBRubvNVNUC*ZU{`58V(u*RKIFA{Ob70st*`3 zQlSb0lAH!xUWyNv_im0{?2C^C_wBqP?N40gPx!9r9rVTT@x}XlzmW1LuJb2c|6Z@? zCVcUu`oXbsKi;zkf9bsXJ@(*RPg%c(O84`hUpaouv1eP)pb{7_@7(D8r4pd`bur-i zb>NR}L5*9%p6NWkv{`J@5mfIC$6K5hHs?d2VFlE%TT6|Rv(0fpDC4Z~5pxPIa>ra4 zlku@JDN*Ssi`l5okZ;bxSLaGp;50|AKXb@Rz74)JJ^~^vQ1ZxDZ}^-IOT97Y_>^c2 zrPBFX0^qXz=|e`xqD=`z(FY4TSv%Vh%Sp01+uhXO>iht~ z-pN_yXc|%H8=8a0(w@9KF|csin`KXODAg^Ms#|1{P{Pwef-FR{riKMn@_UtsJ0K4xXP=dB8^x)kvxx{j<|2h2=eD4^{R$D_}Z$ETDXzF6b$3m_GjE+2ObP080@&& zAFpoW=j>H>4)6m`9`d7=yuAI&A%@lAlRen}OWwMHoyF`XrGxbV(DypSUgSe)t+(qPnbu+%{xPmopE1Jrv zEER-HL02c!^+Aqe4UsSr-=`~X884PM z`{Ex{!~XDdb1&Zy8s$cRLTP_8KQ&)8jQ9e9`OC+{Hqa9cv30bFB|3V^hR#|=-@kyo znOQYHjRY>9I7mlF8(r5ATHL0x1TPxhi6lv>h%Mk)^|nXCQLI>zKq70slIFT6$f|tJ z9VjA`B#B8EoEDU6LPSPHLkcxE6H+qOwbBq)XcNd(OtG?@&hy|w5ggZrEG5HH@Gbax zUp#Q4=!-vulKSF>hRL+Aq&V!?=!2r&nd4tjQEh;E>6u(A>?q-SLL2y5vWWv^BkS<_ z9{QZ;y5qY7S0*_Q!Tmcyjy+hzO?y7u+4FI2&(nqnS0YC8>n&mSZIz>dSiiI3b?S!K zZc3yLV8h3mHUPjOKCf-i)#76NG9jL~FS{j28}SlEsO_c8x;G;K*y`Q)UD#z^n~%1f zh8s4MOe*yG8j#7YB$F(Ceh=KgkM7qaDzBfAqvY5MUBsgI@) zT%6N3UB!#diAX8~o=nq9{rrl*VLh;=Y5)&ri+R0pBIpgJ$;D1zr-V7#e*iUTa_ zEq?4>rlXaPK0G3oQM!aicCiZK{atmWjMlN+++MIxT6JWG?kT6i;VPqa@WcALkEVxnYhHYcjG?M_Q2jb z>m~lgul$KitaDo~y#3O>F8atP=1y!GTNvg)c+qfv^mpwm0|z#b+8rA&9>;AszHNNn z?Fa0^j~}TNCVofj2P=_`nTt@T{x#0&4RJBpVrsF?o*?$1I%aXjeP+;@Lm^VAvOCxvfP z6wP<1x%ME(8wruB-j*7u#%ms8H6R<@+XV115fLsRi~B6ybzl-OlKQPnVM)d zl=95dw=@u6BoN;XL{@?LB$`G%0%}jLF^y7!wFa&r3>I**MYYaJT#P!ZH|&hZRihc6 zPDS|2#TC`IFJA2(TbG=v@MVlL`4vaCJl~tCX9uh7BNzraJ_LaK3q@NxWRPC52SH{p zOP)Y5@^d;@l^xIdKz5%7*;SBfM(g8#PLiFGzC5nD6cJ(%R)|IGIZ@|`_A)FnRO-}u zYp!^NydLnu`_A)vFw=_y&3Amw{_dMHO^}eO0TU-k=qMb79ws(+_x9!cUoRYlLOCxQ zluDe3HdemH|2Q5y@!=C$U;G*$oPqe-W;CP#FfRAS!zZ3Ok?_T@@Cm5^t}b-m+cAe9 z*BowPc8%dL1@>x_*4z(ScSplYPUEK}*#%gL;INIRD%%WLE{|f&4YLm3=R|ibSr}N0 zjx}Mp$R4^n_R!resRZ$OCzNJUBp&Z%_stT?xYUvHz#sGHn>tIEAMbJ_7%mjgr*wUN zKmLyhdG#lu34&foVogV&ExwMhSKbJT{b`IN-LzWdiuyV@fty!z3drmEJlBe-9Uo08 z2fN+YVd--t$g>g117&&Ila1J{RCc3LdIm^m;^$UBFHvU~ZXhdCg{Ioc!$QX-%Qaboj^+6?P=Y6(bED`Yd?t{L_T04@ z%*{C;@1DP8%jiABu!s5Y9z%gWpaed*b$tEpy+_;(kgd+ z584ZR?#A`SZ{)TU7GvWV+ZL zQ4^lnEI=`O@l2+b|HvyvD@D>)hd+j$& zq8PVZfWt7zG{mK`r|q=7!2q7F(}gOXryp2l%pcqx&-+@uNNM%@!b^#GzVyex#ac|xI;GG zfw^^WvKkx;@6)**qQvhzzVD>$@P6(@|K_~ka+@a-@x1jQsPd$H{=)TOA2Gz?lx>Q* z;SGm9q20%yjP_+rI)%7{;n_a`&)(0CbKg=c_J-l1iLxVwAQ@jc4Vy0@wWP`%)0A-j zmF#mEK`7LOJ5g%5&o;{dkIM>mI3k79*>XDd1F4S)O@HL0}sA`X8C&Q0kQ%-F?^5~Vt{;h{#e_^BA2Vj4t znb(e$_BfIOTb;y+7M;yt(xrfc&KtdqK3*noiyU_s<>_0l9*XywVGU~D`v;c(T|;$Y zLUj?4bC@|L1mB6kkukCbl0^4g>xo?K$pAxY{ZV6-`W zS6iwuHF?L*9T&+~XE;)-?YL-K&x?}YY*2WIeatq#YhTq;**voC;`XcC-@bhs{+}1e zZas2rTf{TEX-A>tbL%Cq)nQO{(hlAf-&iZgE^2@Ijw4e$?l?TTi+WK`f-r3SGhC2M zf-D~AT7eECz@|oQMrMd00ZS&?7cg6i#h7aLvQ&-6SpMu?HG1z`dQl5ZB*^OLVT~l1 z)z2%7$$SDwa^VqoW+KUI6}x&08=iV2iA$xS!|sEQ#ZPt`FktPddb_3$r1NPS`=rg0 zn#;Hy))yxxZ9U-)yEgpP`^whQ18<02H(Hn*KblbVPJX*$wiUCE{-W%wPwe=`aJu}! zUsscfFFG=n9TGhpxyri0je4b??SCVKNKVNssF}237f7$Nfw}vt2?j>$Sg_vNU5>=Y;zOniao68&8x7I-!u;^gc+eLBjQVbC zus4}Tw7NM^^}Zkd)BEmQIlkYqZPJBzWrx&1=6N@#_OP83{QM`m4cy1LRzK#_s9AOl zb7^W*PRotsU4`{Mom|?+QlohG^oYczBr0HRj3`)mg%tQ$={%jnmp6??j?+p*2Ws?m zlzPRfmuIAp+Ep9Vj!%gOB@|EeP+V>dS%Qo8#(GC9)mKq7X7L34G@O?)t5L>`5s{pq zFQaT3k=}Kq#nq{@|4a;Auywl9KN)t|Om^OmMLH7~%mp;0;&8f}g{!+m4%sTj`U2^wIh|** zJJ=uB!~Uq^{y@<-{KV~yd9VU*jv=1a)Rbs;pOfXrYNZa3^W#e&)Y#y~qUzbBJ}Kg| ze`M)Sx*4OgnOLW6Mu#_%U+EC$vUfz%|TtATg>TGt35XTDuH4r1BsA7Zg+$mJr`m;bQ2~J zFU)+|3qS7k$4kHXBAQ9eWW4+T!E^=+r+FWV?fngmjG{aaU@imXQ9_Q(6t2qxvy#?G z4@x6PdpIY7F81)upIubIC#U5(K>Q?TWOZQsTkAXn1NS`12)V`WNZ^1LGv93&dkAOu zbZ~Yr<-+WF)Vy{j9KjK!-O+n9$7sZf$%R*ojyrT-EH$P(FE@q=>VV|1*?F1w#^l+g zKLK{m?noj%6UJJ0d-nJ?QZB+uMJ)PVL=10dgv0 z?49z3PNKqCv4 zb=s&3nL58k{Q4F`T2@vl86=6x5jE&;u?B*XXe@qyEVNlbRU6i3IQZ0BrB%DqmC~nj zYcbb-cE`!u|GHA$jaS3EN^UZIBsQvF1HgXqi_T8ux4-)83KHYF9U!-hNbkM$C+oe_ z38`m@&E8F*r?OfR-m`SUA6A6g&DT+c|D*mB|EOxyG+X75Xtwi9cS*DDh!+w|iSra& zY$ddP-46@B(?v<*i?W}s*v5IE!m3bUuG3_tA-kBV84USWwoQPqq;;I@hP&1jE|6g zcSq%_Iy-I=A$^zSRL7;A-?Ycz%u3idqn+qGshxjF6y|PVpq;;j`9g1+!(7hYep`^= z&Y(JfH#R#S;z4w3zS;|NJHt@dA9lTA1K^DE9jcuH{jA{%}y4UG2iQfwVv= z|D-usFB3~U$ubV-x>8e$sbg#gM$tHql^VuQpZ2iIIjhBk-@Eh)EwJJxsiD?`6=l}~ zD>QQek2tgjP%aI#fg|1>pu2D5< zh|j}^z8wug>bk-+E-h3lejrgz#CBXVar=&#mrQLmvg6o$u8$6%(Hh$vBH%NwLDz;PQu(Ct*n(ph;4>hCHl%u)9x#cL!RYa> z<}qd2Um~W?X~BCh(y0GobJJk}Q|-*ocp+;$yly0e=H%*bs~sFzc#zL_tjxzVeIM$! zGq+}@4e}=#b_RLQ;p|wD=O4`Z@_$Os_r*V!^L_D;<$PcKznk;@Mm#uo-(0{K-{*^a z=D^i%Z}r6;bAEr~pf4VnyB9AV@`2cJ#Zl6+NjYEj9Dg#oWnu5$0do6ObH4nalJkA> zkL7${{9`%a7yoe1_YcLN{%_@c?}+>7CekNN=BShP zr7-Y^>`H3x1~)QMhJWg@TQkw82P(VQ|J2LtF5mlh@L?Q?0{{Tr#Vcmp1J&NC?Y$R` zJwbLKbG}c3oC1KxC$QHCXV_sM9pZ7xS(xbHaTCMivV&%{oQ{p>0FUEtr;@JvSt54S z>bSHf6r3MUfP4bv5mf1oZl*QNt7P^n)QAA-moH#>qf05cVvqqvWGR-blnNgp@PeS@*3BIsZRCGdS*6&BeN@d2FnVQqldr`85|eO+s#IqITG znvFq6)1V+Q&Lb0cFb2}}Cg9A4Y2dVkgJ&E5GL5RzgCeB4xj{$QY{_>lJ)&WiNx~`# z5b-3nV|NnsQo~XR#VS*=vv#AyE(vb_6ZSwAu3u;mu=qFSc!k@QBzNN{IYlQv ztH!@?f%m=(^wco-gqo+r%#MLLEDRPvr3s|xj!>o!Ua43i4hvD8BIrAdZ?Pp)yOfNH z9l+;ErIp3ulc?NNY{+1<5A^hDlRJVf`}Ic5(X{l`>y50lX}8s>1O;ngMFV4<7^ooY z1b!jGs(vy6*)`%dWMNaaHj+)OBJl1aocLC}{VRUg+|@@c2D^}(x^QsMrS{&5%chSE z>3mG9^E=13+~VUE|2Kkq>(rJ_CPg$R(!nEJd{aASi?v<{X!ejx(n*=YL&Rls)$*@| zBE_37V7wC`Q(izem@S>pqrxHNnfTA&!qrz)o{3${8wHuZx0UqNARP9Bo*Lt3k%cya zdMZ!d(=9nWOOr?vDA3HPI-`d5n|O0Q2)=wX3B^jIZ1~2yQlqTZ(>FMjcMVBuOT<+R zMqpBny{umohSyqBdT{IXc5``UDJqjynzK%d%H-h3tg`5v#X!pp9>F1dUBqfoy|E&yV7d4$`K_LFdz_^BoG22V=@?{3#P+JG9q{hmJR;E zV4Jm#eeK5=-wU$AMk^EVW%izP-m0GJnOOeFon1gaw=TJqoa|w^e&xbsbNaTw85OQ`t?u!L>JT_;VHLI#TuM#v`lUC$U z-LQB(evK-wvGabufeQodV{^bgRE%I0as4l*VbN*@oyuXb>a?qp--fyCV{~qt;(oxG zzY$Xns{yR`&=h*b3G|AGse`*4&LRSRc`YY;6Ik9hDFw>%4Mrf`8ejyyAGC#;3$?V+zySlXz9l zSdomCrB3RN$*C=8Hm)rOCG@0ppY&e=bV7lkCAp11Wm@>CFBXe`Egttou0eeSe6edh zk$B{5k(e)b3bj?eVe#ttk7W(K|NT-t8+LWvrQrHC(gDxSf)47i@67XQ>0Dx?OiEYp zj^Y`l)4<)QUcroXYofd+1T*8(wo@IZ+tNJf0eq`=Z4&jcAmc1a+m6OZHVfR$jt_UB z8J`1opv6rdcab=Ziz1wLh{L$vw*z^K8iG>NA?Ac0meB_Pqc2Tdt#d@2NRc)|}e%gVCMlRr| z-WFsF;0}Z~5c8~x{pVAhGB0}u#^>GNm-Di6j2g#<2Y>lfDN>E|V&+myxCPc`4$rHU zuT^1=%>*;U><Yv9*A^Oad4G z8MM6c7L&mph9xj}^r6KAY0+SV|0Py;zwPX5I%^Nad-&M=AHgg?L4LsAOP7RG!c|;> ztMYCMVE~I)twZH9hV41fidgE{@`Va3o$C1GSbfkD(ROj76Eu=8cYGq5F9HXym0BYg z+G^Ns>XI^^d1;JhDf5;!SXqzs-dI5Lakk}SU@HJmhGYi!9t@Qn`c5#8a1Hj_aYHe- z<=CtNuwZ_?;&>d#y9K%q;#I{xZTALZ$(-y_J2>2qyguY@$5?k^us^A~u`3N)D7Qa6 z!f%Ed>6NlIB)6{@Z6tbkhJhn#e^y6`ozufUyG9s39dxNx^>6;_WPNA?^mGiArQ^TIX~9eW z`UW>kn{%=3SDEoBxiJC`4gq+s2s>p@JKm#)p*UG%tl>ylZ8(XUE2ZvT@61lFc9odKf39au0F)+!#`D0c50t`Is^ zySfJ*fRos9&~laA$G~_UDR+($JIyg2DCn5jUSh_seZ?jm*Hp1prffKdRm#1N$2M~S zP-As)0FI!>b~Dxyw+pv;;&>?|S{q(*yy~he@m*{9QPVmicK00F4euSsYX?S^j4-a+ z?jw>P;P!Y^>2jr7+r8)TW)`iFuF1=RgsOI+F>EgfTvD&|-(eCp{ z2ckAX;C<<&|IWkVNCcY!^m;#apTPgVW4`H~i{YTC(cT^m<#M41uGGQ-*cS}0Tm^H> z0`~TuaJJox_+?WZD|GLy;>})MzKbwz%2POP%5|7qb}0r&Xr$QYgc)w$3@-^=UOVwE{#ut!*#Sw=)EfOUdyhLEr@6}K7eM(gxrQLmpZ;wtod@Iigm1WGAo$!L2 zpAWq6OCu_+$Hu!fE(gDNd^er3C4FRa7xS78>7uF?w=~D@|G2G_`X&e zB>R-h{rW~TNge;KvhAri!RomQtJb3T9FD`!8{oev?@z;zS0BOa-SA)9e{=MI^6B+| z_ySui?|wJ?DRpkigR&gKr$#y6%ykmfr`D)Y-QSwdQ6K~abSRRWv-0tid) zzl{9An>H5FlQx0;j0Ci(>KaWxzd{V~g}l-itGt{zoSVhLe|66G_%}cTk=tBxSsJca z?TpCM_*L3#b-em+CXCMW&wtD)UUe1w&hk%~bVhOg%~%zqy7X@#gAdVMTH$tc|0#9r zjevKIC63Ps8b@Jtd`AzoCNF{3#FDFc^jGhu_PzK{cwG(Sd~Oj>5;Ccva1ayx?%g;`zd8b8LLa%Ffm8{4FpBAn(TZBJV5D*g7M7hM#?&=3!?4 z`|Z)OhYk&Z=)VX5WzS{d`VctMgVV45^bp*?j^^kc@LwF}XiQRHGWrgf+Mj>yvBwni z6gBicen2^6dFlCMd7Rv62f%R_j>G)j$?f5O!F86fT0NL+pwkSl!n2$wo+_0mW>9$w z)86IHwq1lDx@U6z7C zmr>!iQ5vTrjFagL>NGCB=f4tj-X_%L>di#<8}UVE@ib3eqy98#VH7hq zQKYEuXwl)D#aQPYHW#mrs5w74(j#I!faIjuyGQJNP6NV%J3Vj=o!_LhL2%NBz^#sI zh@RlNuRQ)AYIeSvg(p+zkxv&{Q`R^>GQ@&p{IhT$9UPjP?Q^pNBe1njV=NPqzRb;* z*3L4knE@G7#>OK%gj-q^MIp1vuvrD2ob;JeH9$@L=rnJ#@&iuY2jbb37=U#$%16q@ zY6R}i!hezK=<1&AsM&0D1OknzvAx+x{*|Bjo=UB^S#-wl!M=WY(rAJOapj#&@6Q<4 z#m~IWJFnF14dUFX$<)AeAnP3Uczu|wa-(SD3C$%WF`sojaYVYnIui@y-t3W_$ucZT zP{na}Mug)Af)97Gie)1hg@7s@owL>?0?xKkY|3Q}h$7d^bb*L?uPh*bi-53863!pV zJbd5k^71HeG5^Y`yKl0nA=wyn)5)G_l6#hGqdq>Bz50*gTc6w!eL_$hY!-w5iTGXw zbiaCc>=R5PpNOqo%U!w`{022=l>CM!&Adh4#3GDs6P7p@u(r+~j$;K=r!269S9fT9 zVi9e{y0GM=|32=RReJRmS?hPKkJJ}s=KePI=!)@Qr|EC5r;N#^E)a-0|U)74}FQIb-_OV zh(|e>{XdJHyIqDSw&)D$$JOoj(izX5&Gn!;)yDl*ex=FzIO^EEp4Y1&y0JEybe z4oodh<5k6Vw3#}o!ifDGnQW~-HNELLKCNNpJ}#SGLi+=`>5{rBUbnIP$`<97mJ1qe z{sb(7frD;;@j074xE%Ca?fhLYw{8}_yfBmxz@qrbHL0OB*l_oNz%RFU)?fW<^0|*) zS`sFNi=2l$#C@A}hQY~&HTa`Hh(=_RV7S-z?;4E3TGA6qP$rKW;MNc1ennkIFK- zfw$}K9V#8XV&R5~x0>U8$rpc(-Ws*}lH-%fgJ&mJt9paVYN!sb2p1i^UI-)x!XA5R zt}>8Yzc^+#=*^|QV9V|mZ1U+AWCJM{&nmX5*$_b}`D6YOh&;_kf%NL7xme|gtII>{EN z;rU#%y?Ysc=9;YoNI~%1=}N1Udj4KUSqfdb!JW0FGCgngRu2NA@9q+^1%Lsobc)2>m+*9;{45&WCaiR{MsxJM6GxJp^8=dAD*Dk7rz6VIEDN4>Ep;7qXlkcyw)8x|~Jom|%S zFAGKqjY=>+Vz7!T^~qoVg5^2xfbaS-I0J;aw@P^qp86N4#H!_FevV)Z;a64>my^od zj}ZOk?u*CiI|)TR`@`h5!9EM;e{c_#DCNk&p=mqu3%kG(as~10@`6otx`Ls;uM1x@ zsp>mMIV(=(7u~mXEC#o|!)X3H1DZ(6d%} z(s(oJpT4_rr#K)yxsJKDf0cMQ%dqx8CCng)Gwh6ClWOzEKoB$;1|(t{Jnbo*H+|VL_|Vu| z3O~-P$})HRl;BNZo~S}JZTy$?T5oI|jx73HwL!He*o51^9P-9K1768BcO@oH)$WRo zpBgS7AK6M(z827nuYZo8gzvm_*9RUx^w^&FKYSqfz-JG=_Mz6Hhd|Z^ zkoAZ7&w{K+z^nXoX=fajWxb7v2NcK~vY4l^fx2A>$<;+{nE8Jt=4}N$jrhcM@XrSZ z%jlnH?X7gP#YtiY$#*T;`UIHWwzdp!sSO?q4{wooe<8h6-ZZPH_&#~BDdg>qDW!ei zeIsY*UR^mmTHZZyw6Z(BA#408$$I9^``>l~|I6*Vd+x?Pcg@{Ed)m26e+zc-DCgt` zxHDWUT3R!!I2W7>h0>ab?x>DC)#E|5^98x2yKUFOcXfHgaoS?cQTSxE(kIx5x;lFx zg|{9@ms7jER7#5R&Ybwou5|x?}O|crawU>+qYt?Ttii_Z)ijcj&v_ z2H$O#fBye(-|aK_C3fCAUUtQzy49PTuXj!8XLi5!lsg(R%3o-Hu2Yf4+z86y>5-Q8A;sDDd1I{CtVOgZo>sSbwSD4+cA?`Zm}% zc#Cge`U6o1Z`HVb@AqS3M*j`r7+OHZ@0}LjN8_$bhazi^Rx8% zVg7mECF~G&y4iI)F2Ve&UAh(Vp*b&ifX}j6Z)-QD(boK-%)%lSHxb%#Vh7lfqLgOK z!AUAxZOr3IN>##*m2Vv^wX_$QSwbIzGh?yrp-o*AnIaOpWW;ueD2y1~i45KCFSh2X zgLwfS&P(;3@=m)O6tW9;+C`M^lElS;g`6R=8w^#kmAvmGd&BvRCIKQg70ss`A@l ze(RL|S;F#}9rY#Aq&EnTp>TH5ptoyHUwvgP@RbB6u>G&`+Jx^W_t)|^k14G6da@y} z>DPN-4j=r(n1Q{QT0n6gAa?Algi~CT+mG|0Ao1>&U>-PKi8MAIbqXb%2LF(J^JEMa(+ZylhM+!D-#B|OP-OJgt(4sL>}7^VuEVFp*GqN3>yn2H2dR44jj zDmHsuE}RGM^R2YlRi{;~Pg|4FQimP3ZNqp9$2)NChpm9;5^TlOYK=Q6cPL7IO%A8a z9Sk8jtz59ZX&x-iz&x05UJlAasn*M)Su`#)gSMbtOfmi5=#3V)0$u#)Hgl#A{6bQ4 zK#70xnN8D#=^xJ;Gr}^b=L+1PN+?)ZyP%Jj8K2LZUFS!%K0C~abewL*ScR%o+r|M# z&)LdcXcs{58Opt9lIU$@kQ1mNwpDn*>jTMpPVU4vQYXHirG*BN(NgT{^hVI6NLM>v zu}Cf!Mf%uh;hAWU#s(BxX{#8M8Q0cD2tNxm*%Ba@Q_{e8tu9y+2T%DM8KB`E))j|u zS7-z8@WhP6KW9}t9Sj&#FiwfS*U6BF9~XU7E@}N>kC~Hyn$vPQ^!BncD~%ReX%HD> zO%uzySxe8F-9oqKD9a|b9h5W6Q)h>QZbFChbJ`f`gaGoxgK}Y0k%*~?X43?VMEgrL zoeu3US^UZGL;}&S+2n8{iC{O1Bi$HYRnKa)CbPre2ait7#;p)Sj~MOjOwD@AZ2Ts1 zh50QKW$2R z7ngB~SHONN>-Q+$;PvniI<4l)Kyjh^p4uaccul)z(OJy(k;)sgZ}G)thT@+r9%~Md z>iCC5$6ohra3xao z)TOHM&Ir#?C0m2UzJ`K}70P8i%8L>Mp6)`ssVG1G(8WKKnr*GE3Y_dE+>wgZZY$NN zV0V2qRsnMgS4BxmJ6ZwDxrVSJl?@Zw)X^g3+TlD1)9q_wmlmQ*4mr9yOOwtOBRI=S z)T@Vb-2naTlPt2+ZWXOgD)1xm-Vfrf?cYCp_znAK>g91J-jUh)+e@{peX%ctd~d}P zReSl0=KiZ2rMm8OqT|5y$%)km_fG5zogg8vrmp(mh!ZRrME`;6;K^O1=hBBv9M9!J z*zXcrTm-T3+#CyPwyi-0Ygd@C@K_`vOpye_!i$#Lu}xU&LBhfd_OS3mDB#C0J|T5L z5;a%bjQg5t6Bgc*0GY3EoYZe-_026L`k-7bK=X79}`YjxBb_oZ~3(tpJH$q>+8!yV6U-Ec{$nHW}2X5fp*P{Hx@8swnibO=JH#Vh<;*Xf`dO1wTdwd2JFT6r07oWeflfD`>4o%{bq0MO^XsA+2W)(HsRky zO2)rO^sRq^n8_AI-`z@bGUSNlgc|kSeS>w}F*4E&qj|mTA9+Ee2#@+0jpV?gh{6t&@6}T07iwmb|Ucys0 zuyl%{Nc_VMhNs-OPx`59Ny6sLN$d1e7k|kPv|6#HJ5Sw=!^)1JtUQf1(loZh&T2&h zvOHc@+|ycJJR|$g{EQVF+;Mhhvbp?bml}88B616-vE8c*H;rb?Wp8oKw#7$4f5Ri1 zvPWit9@u81-NHi1V4l&r=9{X#r?_Hr3%lR|IOdE0o+nD1Elg*uF?6p#pZ)aeRVuIL zhAH>BHDj5rT&uH!pC?0kzcpyntIvFC&$!KY)ATW$&0s@4U3qCi7=SrG#;HKv8q-t3;=)8&L4rs(P_1hK;9ibUC z*b`}OmCvKAr_<)JmXs8eM^o~_i(esAQWm?3a-8{t+1^WqEiaAWOC9(#ii1%9#K*?`3nvw(W@12MkAkteKWvlpBS<9$r9h`~32 z?~^=wJHq}UOtQgC{li(pD$inHWF7s~g##5j6R!yq)2q9wXy|aMmA|l-VPz^A@Xx`I z*R!-F>G+)&-zdZEtP;$Q7q*U7u|2I(oO$gCp}MJN2VTd!U7$Ln=t)iWVjpG$9HuvdKhYZ#P+;0pkc$58YoxpTP7aqJ)q5$*iEPA zLAi5y#qqs3-hn}da_5>IcpdNdf^zj%UwUqDPq{k1)rL@PbMt%lZsQm*6d~`Xn1x(b zuzi)sZ-QbgJP~#L-2=WV3tk-dL_^m3(OA+Kzs(m<#+I*+hdj}1J<-69_dM?KM6dD1 zJ+BE%Ps4xg@x`z4@bB_}X!bTaeo{GEci~>DC1&c5jUtscSimh;X^mHLN7RM2@w(>#Wk8z0 zpoOq)`PMb1R`LRsZo}GLg|)jEO!ewsoCK>o;J5a&6|F+z0s_KzU@`{0lWD%Nc7$+l zyQhv!>kACVztlbjZJc zo|uENvVE;Kd+_8H6w#+*5mmE26d}HgR^8t5rBC6njyu{XuYjL(_U_V-{YUUG9CW}0 zf!&mV!{y+Ur^4XF8v`%P7|DWGXq#V_deSQJOS*bJ8>(52>b%_(&bcjzb3H0amniI? zt{uoYkxJ5LA6`8-dCw`c-f2@%Q09_W;gGv@jTq&J5=F1sXmvYnt~tZh2C<~5GV5hx zNwD5K>p3K(ghz~!a=DRcGD1qv*kT#y#cN<*jKEp>IzGkrYig}(9Valv&Q4s$u!1}D zxObl}wRud2pGIBs=L|Sg)=sc_F+8Z>X`#M%zIA=6<-gDlgHFR@%P7N^cuH*}4Yk#v z*DFBP>MQUMsjq=QbcKjXnYBX%aoousqOGF{4-Sc~-3WeMrRf6R+}dusYu^BW#E&Q^ zu4c<pI+K=`~+(E3P-yzLV3JyW9R+@G(EID{OT3WcG87e zQ;cW~+Ph|B@DTpOu%o^I01P$k-O1@4)LXaH0rPKoL`}ImX-?=~W={0zNVh{**4l)P ziGjy>HsN^FfM1t)Syu}xUL~kh8jZ@%JG5?5wP$=}B_-~hSn$S%kL;PP3{Hj|Rs(GF zIB%v7&mTyI?fh(Y_q0!2ujP|bn^UWKlg+Ae&1p-#L9J731vL-m;$Tn|>;$eHH6;tS zz;Gn2Kx0-Ji?w{XDjKxGiNbWu%14DleAuBk8mwePau$ z6{dHT^am5zu@P9&_%fMhHeA^Wd+bx*XdOw>pMv|Hd44eAkKf}*jt<71$+q0`zR^s? zX7~?w`2H8#ZINMJ?5b}k^Q?`oBZSkN zp_bo$@m+H3e3Dw{J*?6?taP3>0d=)JV%P0KQos~mJ8-WMaSBANv$#`|h#5H77C!Xe z-nn_}%t)?|9H;7ShzDY&A3rZ8Ywq^OLap3sZ>+wIfvJISc)YRKdvV8W$s68#|AgV% zwBJmJLmrtUg?GWcT;grgyfm|Usbe_IG#MAzWE65$ELdNw1t?hR3sov>H5E4jwxwR~ z1ZpVXfD>ak%O$Lw>mzi{Qi4v3omQpU`i6_U*qP8Pwi@RNpkVTRSF}&!2?Cr>pBEEx zVK`ieDG`TP9IxXz9^D_HlZ9REPT}u#;5Yl+Q|@We?(HEGP|2#-hw)iV$!!Bvz;o?d zK<)`83RtPR{`7!2nvh+ecdsNxQQB8T8$Nr#Uh zRca~BjtoDZq*zpvnVo`!+xf1Gk1$30#a8h=RxP!v=erJP6%|Pt)uNnH#lX}cUU7T~ z$2Sz|6uUM2oeunFUyhY~+TrvUtF@jYSx_aJ!scFixL=WjL4_iFz~!u)WaG@Y8ScDa ze?)J(FIIZ~gF}qoG<2&Kb>xipL7zw6s8rj-Awods9}9f+GlXyXnpsrR@eLI8Gx&Mw zWKg>8{DbkGru`0!b)SbX zBxJJXM0vW9(&2K_r1JBnl)R1(j>DT{CR$CfdMZ|uCFQs~_M1l3_bjS!w^fYdQpz7EH6S#85s)H)*=E3^zF(mRCFZXZL zavY^xL|BJ1W9!j~?Fq)#V<~7*2`o!u>RRz*H;-2hMoKDWEV>`ZYX?RZO0a?wta(&| zL1VGz3+2lA#3mI~N0hkhBw=0eB)kR7zqS?lzrmF7F__$9!OCmwdCO*a{|)^A(HVF{ zoYB__M0=M-Be*6v;Qo6w0BVa`X1K*k`wI?qJnyu=AW`C{+n(d^pZWZM2lt8m(w$!TFbyc0%J&o56TortP!cf%EwzbCz=ocP`*8zaX)fP~*7+Kj z*6H9w&urnQkR~tL<&$WW-_YJPV~MMsYM3hA822-_ry{OyT=l}5TI2E}CwnJM_*r2@ z)x}zd)@TJwEW4^?sf>=&ut%S>kl}!{U2B98%X>jsIkk`|Vnd$ba+4e{0?R&hie;mpZLT9qFtii^JU9R?81b4NfQCkZd>XAEx} z^${a|I6ZOHM~GPELa2`nn(P|mB~UShAG`RE{iw#CZBUJ! zqz~tB#AK^McgE!$1_jX30EzsHc*XG&j&Ih7(}n$)mjOQBRv*6^gqCnJmRO!-hlCrv zv7yKhBOACr1oad9VGLnuy+ptz9~K_%!C;F1C!Sz?r4ww+7l~i^XA+{EgB(g3^Qbc@ zu&izt^kOn+%Geae;@MnQi=Y{S_#o)OPmmd{YQGNTH8DVF7!2bGx6X``!_`MwU|%l_ zTvI0MOhpW2_fXU|NLlIk!I8HW1TQp5NEvv=@hXn1q(m|505io5NeKZkE~5iHer?AU zx6QgxE(^XL`%wtt3Y^!RD|%yZhf^9Y32*FezW5OKsevBqgS>UH?iKt2mOEhNuRr(! zB}K{a|IT-qzdsCm_+88up&k_RgswFZ&dP1{SVfRWRv1gJHj0CJ$_3?hpodUBS+WqW zW(f2U?6*yCyLd-`h#{;9F~|V^0jfF(^r{XK1N0A7;;&=ncRZ?NX zjL0ezz`GA)2%<51IX%?3RmA1_PDsmWLxdDIgdt)qZ4CsoRV-TvfQ1J=wQatX~SLBr(-C0H2z#kWbxGA|Uf7ZAq=(#Zs#wVPg2InzT^P zed}Cro%rJX0k6&O&t5URUlrL%u)fi#NeoE|R$MlWCfQ~bzcf8!GWX@*+?N)J>tYf0 zb-A@e5szRfM@^kGOkZ^it{FU{QA@6Y@RB=*G1Aw(q8V3SBHNHnZDd~qw78`8QzKiq zMPCSMJ|XLi7LBzg>5GAtOZt*mixRiNPwes!mAdX{rk?O}U*`ztBpSTWJx2%ajzz3|Ob_XXT_F zw;%ti8?hQ^dPebfhQ_3!%(xmoHAcGm$i;)q6Xql!vk|Oem;${Kh*r*tKmy&-5o+3f zTBA)Qb8<-PSx%eC=0--R6dG%fVQWlu(1f5mZogE3I+3N6c5BcM`)#w?iaOdBFDrm^ zpf(w*5<%5&2e3n!bsh$* zyT@i)7|s{}6vG_L?;f49i4Poe1rG*RPE0L^aih9DXjhrk`N`iozU&O_I=4`n&L@Az ze#RxL-)7sNUjZH74>~-^e-_Rpb?zsU4s+zawT3~5a-2T>&TGD#p1c)`i4%*dC*B9rA3`&ymm)h?|?gt2ud-5cB(OW99CuU zaUdlrlz;%neLlxp4KE1%`+Q`_bBjiknmyIuna% z-zKJ6V7H~c(9)N&*|wD_V{s1$nm{u+MqOcJ6+;05Wx|+Z0u9Jv;O99)@0mM2XTm?P}MZRSyt#M2joPi+fRH%!2qP8Ca zMU04T6UciOZf8YgbJ!p~h%i*nx%t7?(B%^n+P61WE4#!FXaD zKX{wSh?2;9j2=Dhd^*S&$A&woULkbhah$kLs6;vsxRK8#EJ zcDE3}U6T8E$-j+D@j9O$14jvg`nW;}neYmHcd1g3Y~*D^cU$=GG>q>~nSF~(AeMgo zwZQq_$wRY+36IFF13kcfQOSmf^@Ep{>*ZMSHpKc@@ggI}<3s#ecDlQ3c_%w)-{Z6S zF}j4|x(#kTcD81I=#y}UdlKepmb-Ry-7tZF4G=?9M;(b%elk}=$a|9A2QU7qR2NLu zsI0_?c$Az7mxFb?y>HTX+o_5J!v~1W+(#bWP$|x-y_y^0NwsM9y)blxH}=21u^Wc& z_jzNtd1C|D|7q42ztt-wR7TVKe|;C7?eFqtblkrGeJP)K&!wjDIPu86j_a853>vJ! zKktRE*5Qt!E1fSfj-+INsq>fr+lvp;SJF!5>JB|s+CDdR-HU%AFSE8*qo;>S4S8N% zN8`k0!9PR&RlO2hNrMFW)=(+Wf6hwZad3ln?~^urC3HFmzUmYH`0O6%KPbu3!5Ab-Hcnvd-Pjb!xr(WaO`~qb?(~B03&F=9fFdn`5*U^u1)Wq~mAZ$8#I-F(D)CX262n*9R;LV>Tds7M z=fIP(8`7uXo1WUFV$%P$@Zj1sO#)lsGd8dhJzd*r2Efo~dNoo_;Zcgsy_X|W`&O}n z9$eR-&Q?(GCTbLEtL^1-%L#M9Q6YTjwy#$1ivjf}f*&TrfQZ?{c3Mw>*FFSDc;UY$ zrP4(dkG&U(b08~iYk(^L?GB$mt!(3h$)HhWqx!N;FE>9xT>KYeXS{3%z!dRb?Tzg{ zvduKPxZi8?J-`|t9)N}as!bE+?b!1H`_g+T?{TjbPqwlQt=8p5I~q<f*k!vHk}Vu%Ua(&E~eX1r#sui=JeZ67X(Bbl(%R{m-`y zvf7Qi;cHLb`&Tn8m~MaZbv7S@SjP&te+^pSBmFa=|s@cIz1>4DVmG&$V$;%giRHOhRgkP=C_kaDu%s7rOU`;d{dF) zwnd4;nV9ZtkEMEL7qbt1alspVqc>*wr`PLXA^GCP8$U7Zjopd?)em&!fa-hRgC?`{ z0R$a*{p+c2i+fK-Z;M(*{1FwN->)BNsm_ZNPE^ z2|wfN-+}vjUV*NyuXTH+g3;Nul;|eqsrxU z^qN>=Se-4AAWWN@RyMb6SiqJ_cjx*sl^qQm1^QB~{DkzzOa25YNu%ccZf zL0nA*(uJU-DyQels;Sy)ZDhL)-Jjb7g3%uHyhsN9hf!DUe=(c>STt2>tGuJ^+(^-#f&~yN%=trE zx5y`?3|(S0>0fdsXnpi$=^l>qTC-O)YCejF>mxRY-SHuotNR@Iq_Cq(cj#QSeDMtg3xz0rfPL0X;1cMco1?#eaq`wCZI!)_@#b7*YlE zvIw_=BI5Iwi`TP=Pr9f9r`?LBNSf9HDDA0>zm_wtF3PmJVefHKr~XE1MqKRb;(F|; z!z)8wpyHT8u{$)lK==!avX~CMhT79LxiwuPl^&FIXVU2ONEe+N99r0> zW-E=sjkbVTedA58y)Z;AVy&vZH7r5E+4#CbecBCATGB8@J}CNxKsNoa>Jav(QRi>; z@UG!0O!*=Ir~e!>sAGB~S82G_7K25wSN8B_KYLs+kEMNT{(8SoeTA;{BMFa;Dqp{v z)tqr!Oltjpbvj{CzeLYoR6G2_El$*X2lT!N*5DjJ&2?sbthD3UG=^)g%9y*|@!}Y+ zIa_KrXdz}Wn~ErlY$;;;#$J>ZQX9)<0?X+E-Fc_)nZqpE~2&xvY{X|fuyixO7YSVzSMzN z73+5h)~`lybtQ)6^((41*snshuE7EMzh_)w2So9%tqfWAGj&MVxrTxUSaXXPpX7$f5B5rH-Dw^f6%&~@Q~ z5wNj3w6O~2?2lgjd#PVvBFBy?$gw|g@qF)47LdIS%X#eHSI4k?FpAd>T>BtVxUSj~ zh%zl0Rcg#DVn_eByBPJ}M^x@U@4E=%V$k24^6LDTWB253t7+J=0*;E5Js%OKYr876 zz`QX(rrE#gg?+2HS)qZXy-F%C@%Q9M{J9OR9d~f-q=73$W%3evHqjDd4AGYY`DJtt zU^NFoAPEmcG}%>?pGk<->QhP@{B63VZ59)UEBrWDdQr17Tju_j0blA%=Nb?nBreNaQz9t{$YebMaya;7uFU-bf(!c2Ln~EQR z`valEY&1FOmZvSuL)u|z3Q}nZ%+{!247k`lMcj@0rJoSjih-L#Mhv%vS<*2QWT(*v zc7*_sVFs=Zh1>{q9Bfu--)VD2kZ>YHg9#~f7rlU~o=zSclV|eS@R|p)BG4S{JQJ)Z zrnZ4RF&+Qu{VazX5L?6N+hYW^rRj2G23Btn3=Cr_4qnkAeufG#OZZU(mZ;mr_d4)d z*%TirjiDBv;R3;8sX3-J91}h;9EnU5`)4|KH^JW3uosnUhgf)~of$%`yJ(HD?wo0v zF3s6XM97>dQlcn~1_x6Wpw3=uC{COw|HwZkXpS!*dG|Y{RK&?M$M4f<24clsSyAKi zyo0 zk2(F$UDtvBmOy{^@t@^%+$i$fQip1oieXWI;e^a#f(IN+F^iEb4-5Em<#yFB#?BMC zD*}8YOOy$8XBt7>nd%0_jzO#$#FE3@HzE$YKzEpe4HQ61R(%x($lJS|J&~pSj-%sA zr3qEH7zTM3nr%HYjkrb#_dCvHnE~I)GcGf9>EcSz)-c~=4&D&(-|_bxT3)$l&JPlE z2Htn#@O6gutN0VUN;f1;TATL$3rBAi9I?`Fkm^sgb9?p=RP7KtSX|q(3@;cL;RRO%rhqsxg=y4i8W)Xs zX!D}!<@tVt)pGe%-+!0a(dxW`7ErXbn!^Q@4><-@uBUE1dZWgS3#ga#8*TsxdvkhYEK62j&3rYA3<$6sXm0?LzzO0-R-T;EUw~%hP~5V-a#wSt49>0 zJ)oZO3~CjXmLG<@SVOrQo!g`ddy7wE@@5*l?1CkQ{dcxVpOmwP3kDIEr88E9WyuQ` zgS2>$AHH5*ya|iOrrurg@1#Y$zK^938w0$&Qf(^1U`DgIc`@5F7BeOg3G4B0L_icO zqJUi*@EOV0pAudYlfr{=|A?qny^+R|!}Ss2cI1zIK?S3qkoY4Tm!1$F2cL{;jPf#{ zbrSOdH9ULGGY$~d@C5R_BB`|x2>}xM8pHCU0;9-BgVaPSW&U3mN4$ra#x@R`}`Bh31v6PB!29`Rk66&Oy*#SRTlBj znuAy}yisVxTo9j)T;^8Z-f}nFi6TK7%Kd_yN`@+13y)r*dGK-3A+Dca-FKxLAvHW> z7K6IrF0L3osvT3W#r{D@uaOGwoJNf7T^SSeDOhv#R6->ie`I6j#x}lO;{N_u?^ITjR8SJnaab) z88~iVc^J5g7|{S<(WZg3ag?I4&rN;e;=d|uz-m~|cfMs4yH;Biq1N!)fqR9k7;AFR zXmzn_&1&n#@QhlW*B4ce$p*P>Am%o%ts12hZ_7?A-;8c#c?)QUgtMURlIjmEZBp;w zvx2Z77KEAnT4keDuMYpaiG@9?&_*rT>#!Cq{)oTVDaFe1AH_njHz{lPc1XGXI`&NA zy28vFrtsaK6m_`~%y`}pg4gD$pP?+}`Wd;kE6tc$8>Q9|W3;Z8dwI9cODWQeOj|v` zh!+&yBq<76fLHHUQOF{#3^PUG*TV2?9$Z~sEN$_IS!v6RS#Q8%`*0+c-a^yLw^c(V zcuwN1_At(BsYr5bJjt0zm@t4iNz&OEjcb_^8>Wk5T* zuGSq)OCrZCxD2_uP2{ve{=h2RQPi z&ax(k5*5$&@#rX;N{S>j56c`US?vEAdN?9g4fJZ{DIPi^_bC*?#+2}i*G`}zeUzLeoN<$ENl007#ny-s1T#& z>MxR)8%BB!JRU^@k1Xr*wz4kEvZfv#yy7@TqqoX>bAQfnC~GCd=Js{)QX=4ZEO7#) z4VKt|mV3oCjO`&d`@Q}|e7Ua{9&h=_0_(?m(*7ThGGWWr@T^q_Ylkq18r2d3$`a~=QQfgrwcYcXJM}F8S zV!eEWaVKUZR7BZu;2IdlN>J2G{ya6la*dF)z?kk3(lmfq91r3+=p{c)(L@d$PpLp2 zfyWx#L=!Qj_44f?+vLR9Apf72>k45(Ern_4#UIFwMc5|QZ_+^rh`oH5+%HAk_CCft zWfLQecS-`(bz(#YSAm{7qq>~RI)pmlW6m<@AX-7}l9te~1Gyz?u!wARgCa(Mk+E(_ z*)J6-wyecgM8qODB=t}!b+CylT7xlvKF&Fj$+#;-D6EKA9FO5R=)mrkb)aG_&yi>> zzLnsa>A?B&qP|?mPV(n5-iZBBul2_A%Zp6lcVOSt`p-5sPVx6)W0ca&KT5=*jGGR0 z@cB!(2)7dUo`LJAW#(;j1MH5PQo?FXg@the3=;@s*PG1OQTQ3Vz87X>sC#lYOb*7% z1%yJKkoq=-7<`>H|U7VtGK zd60h&uN@dvWLn?}x|}(1IZakiDyPx*Tuz%BTXzukE0?b~dJi`3ylJ#aRsl6ZHmfMS zY^G8ssCU`y4;e&Dj87cMiz@^1pb%b)T4g*?c9qN(ryue=jbP4{x8Z6#eUM87u7z zSP#Sfi0hc7E&&@>Qi!oQ1>;SWk}{=0Egp31z5WVinAZfAJvvMtr=q$-?wk@St0DIC z!*&qum%sR8i5?1|5gs(+MUD8B{(cEhXt=3kG9?7d123ufQlDSr=H(nFaL|1 zy!~1FWql{QqFc^-W4HR^;pKogc4mS9NWa(r%U@!qj%^7)?u#vH)p`1CfzL;Te-;N+ zzr%5&AUx>1lg6(^zAfPn82=C(SE+mN9}+Ie?{hb5U)6hmR5&5O&)xXa&nebug-eI} z6L;|Mk-V`fhLnwn5xW8*%x!sn(KrkOZe30BrrQT=&kWP^yrl>GLL{OuSKgg zz{s#WRZ7uRhv4r-t9Tn7z|8SVsg=FZ%9q;>zR(_5zkqaY5~j?*kX9Fp=qW5vFE4rv zOQ>@1Pwr_%%53~QZu@ttHnN5pP? z1i_gSbS>jm)2-kSe7lNonsmnC4&@8+L{j06^D|D)Rx*g!6_$Ypc<_%&U_g- ztMdEbz5}M<_1;+e->1Phc`BxL>kNYTPX_n!YL(7tH3%*QJyY|0M*iBR@`^##`X{}y zYIdspjxRngw@kh-Xwa(lw|!gXHrlj!dsR@>SVZ*?uMCKhGos!1MLxCukI4I#g86n2 z|5=d7)djm_#$>Q@-e9g|uTJj3NVVDCw)#=D zOGyI%ZQ1NkhohOniFt&EZB=Yb#~hB*K>dloQ|&&%-{XrH2QouDrgNh~$LPvbVsW?1Z4vbbts%59U0pa~ zo-k`712NoXQ=_!q``q~8+h&ITe0CTo68{jcrMeQM{zK<+jLG@0 zLH;*7Z--?!$8j6)3RmFx|N142&r9Ph$3XAv;C;+6C~^$+{y)R}EXM%jSHs^~W$$b8 z{YRwnYhk>w@%L4KAdNRJy(nlfr@_CPKG!du;s2BW2+WK+eXha(&%?s|;P>uO9fRL{ zlk|IwF#amRh~xkD4H*BVG|t}t8~p##-?8QWlQ{n3FBI=HUP*f2hVQ>!8Yf;!_WsZD z{m)3ef)WoU>|b6k#vS82W{EwfqsE!)f|=^|o7EPYw0tXGYH=6ZL71IEMpveT*_lAP zvLG&dwbw`JmHr6%Tx}Q9lIW;)LNWn3JqFU!GS_KjgK%!o`%WCYaq{%-)uT7@-&Gyo zvH$T9|HS&$>J!WRpZM1PKYaBAXZAjNs`21g-0nj+z3EKO?LT;Q;9y%O4Q5axyy0skUeDU8OrbC{Wb+4Kk_$yK%w9W7@?P@uvi~jxY0OeNNqLV;c zu{>=9dDXl5AJ4z(;B}wA<-m2H{y&EomLK%;H?6;wKRmzs8ve6q_g??;vwN=p#GjdG z_g^uW)mdi_T&>j8U!gwSx54~8uvJgL06nP>O5+D%{7T`wIKF--=f;u_nr9n-z$xO1aZOG-~T24{b!`y-Z1#fuLXZ9 z&iym9p17%5Nv$^YmyA}bb5X;V=SFYJLu@=9IKbdjJ5|Bh{pc7aO6}yPgNm()b&)o) z&4B@pi)~Ta^d=`Jc=ULL^F0m-O)J))dq9+pNH_-O6|Txmo}l-JBa-i8;dp_0%(1vM zxap+c*y0-}Hqko#(H}5x_#Zq-H`7n(klQ$BD99Xm?pBZ=_7ldCE7XVb^AZY4$7&0s zgnS`%9eobjWl%Hc(rk&~(g(>X8bB(3C$MU)_3c#9Vsdz5vkX*_a|A8Ua;cTO zfQ|BaFdk+W2M@=ytZtwin4HxYWB}p-Rs61vskxZCK*ZP{6;=vxT8kk%FgS$0*i=u@ zu3<^-n4K!1EMTQNzErMB+^X%tp(e6{c82ktW^2?=NEEzO3m~0;`{w zYKBQjJ5~8$?>53uwVNRCY0jSkc~46z{m_Lq6@z02Ij1&i*eVhPMHU_3K`{Kw{jE(f zZ$&uoVyqO-znDDmdaw!yuFB<2tC=lt#XT!iLsWuj45VJMKg+rN1DWRZ9Qw>zL@;QT z>}?AIJr6oCnAGO9RM6grt2hsY~Pi; zCT6bHA=!>y>jqb3<@D}T<5k{lao+w^UI%)zfu5%8@CLZ8tr1xA!t?6^hnZ|lz0evZuwG^@)1q$kGM`i#yuDepe-51 zinfNpXmY!1w};Yg`Vv}gioJ%Z?75XH_o958(+HB;?LE-+YN9s`ip$Fa70;?Qm3ZEG2Pdf z3|8|&v(f2Qo$`ZV`Tbrjm!M3VsK?xnP-RJBtMn?vIe`RABWF-P2_9C58D z(>%yDPcqHNL8cX+)xDrhhmk7Xhpi5Nx0ip+C{mt`$&&x*`t$MdpiUn~ zQF>J>$`7L)$=`ZA@vUpQDt*2I{FL8^vxJsAM4#^moBzicFXG1N^PTYdQSjTf+zHad z2z-7U%|}tbAS-yR>$dqYa)8l0J5F+z{l6agVMPK zh)S=|UiCaCi68dDEPn5wAZ_JdxU}bEB-V6+G0QKe^?EHha!ZQ!R=xC!oK z5;iGThK~uXX`zO;!Wtlqw1E<~EAg#KDk8?S+*D7nj7qtR%z_){;JK+AUX&t(avyL& zL!cXAC@jH>Y$y;dYXiiU425ol7^1kg5ewHM%~s9c8tEAdd86wqPE%>Yg+LkVC|{D1 zY8-o6c0MZFSC`cb&DlF_%e(yXC;Xy4vFuumYVJZnT~l~46;{QEcO2I)C#jtrt?zor z?rAJuJ;(1M=(6?B@uuTWn_yN8F0CWdNQuW5y*_wI_|cdC6Xs}DnCB|ox1_T%cGzp| z$P6lVe5|QQ%t#5UhTDMz-44Jz!Aw~$%xPuIZ6DTRgWpXBQ@#jT?z~T~weMBxFhEzv z8RU?g>4rDrvFcW~sA*-+tFh5k15$5k#I9O{rS>Bl0=w)w0@>acXmU#Uyu6nROV4XqU>vwr~`9%Bsys_l6>+J`29MPCjwYfLXKBn7`GU z;os&1Q+A6)-*^1ZBa1Clcka8?)@`#Z3S)tQ|S}Fe&WiV?y+6dg{xMb z-WD%Zc22t|R@s&LS}u@X6Xs=A&f%ejY^%jGLkGpG$~9HlG-#p5w6#oOv8|jt0T!$Ln$IVngx{Q$axJ2aReie@4EPAGPzl? zo6F|0mK_9K#%CS)tni|{_F!&=o&AiM#X~L(WmKOLk2xuP#I-#cIf(DtT+Av*9XHKd z#atGe@#Eek%-LtWv746FOQVIILqWAUz-DdI?EKxsD@Qe%?zIM_yzRG zv>4wlceGUAr{xsW_4h7z*-B5sN>9N`SK~?_-mtvAPFtUbPM{YhpfREWo#+TlfC zdjLOn;HnV#Gm&U|z$LpEMZOay@DwI&nC9(xve|4;RKehwvMMq-Sv$4?gkZSTfIF*} z&@|*O8)<^8;)#sQs_yftJydF`)2f*Dq4OiG5~1X2-E`&cTJIm-eC6$X*WWUlR0(R0 zK?}!sxal1?9SMbQhHG&B_mYB5XVPe_YT+)I zMI%H;;m#!lMs^>|?L7JFtDb+>g%wk`tv>^Ww4*kt$%vI z!C^5i5{8#te@DJS4Qz0pdq#>+gpm+DLU3JdFI&^8{0Y_w+SX?oD{9Mh0h2nNvlHjlWmZ%>n1QEXsxlkQQ2sPndWRL%T-RWavQp@0^{{Fq z(G5abnr3N}MC@$UQQnSKH1=)sIu$|2CgWQig8$3id&fC;m-oV_sMmAUdoQDrMw*dE z(r9|0*_qku?YrJ;ulu@UAb@L(9b$;7rjtuC5JHeNW0M4KScE2MSOK9LpEtNczI^oEm-;(PuN9~!q-)!e4yDc_T z*!_S!x9W?7;!Mst-hJbqn?y^W#@+cqxpY4EJrh3?9Nv}nX=9~~HN89~yK?!^O*=c! zQVZkQ{zs25%2Mq{-_rYWoiY~zTeb(}G|CNdA66o;90F+JQGmT_;m(2$dra>^Z92fB zu$B}?HZGQ$ri-l%D9KVc!oAq_T??wypi#{ec6}D4b*Ui34SW+;zZt-9upzg=Hc3lz zD7+=bz_nsI>cdq=m=y&$DU5B6Wh-T^3Wo>=O4t)W83$Xle0bvUYVgVMDSzS3Ot2RvIZt^~KY(??V~?TOd>hXjJ9? zzDLHLDB~$XL3_Y`5A6Y-`CuEO!Htzdt%!>7wrKCPmVY%4!d z>-Xj^^Q}|z?~a{0$4h1%)*d=zUifsz8~aDEkPLKURfNwu0WbP(*+(|xPcQ#mxRrL) zy{JfB2_;TlPH#tBNR|=VER@AD1!Sxo?v%1oVx(4POK?#B3O!EB`!4;F()2|T<}~j_ zE!mi1`s<&4e~a%(;Jp15SpEgmhBf#}6+0%iirCUDR2Dd^53eG+jQv%{Nj6b~#TwR~ z-Mhg~Rg49k$xeYfEP2>^%m8gbv^iR)LSvgCtH|F%*Y~nqA5CVP@Ki9y_oXG1mG(xHHFvTkYoA1Q z@F45fXeIh^$kwMLqmT}xCl_RI&a7)4vz_8LXHKg|jrh{Ski*bUmIcHa5+Q^J7Ng1dk^p8`MaKrnLan{GWA{HHSbV>^z0_}XO!x9Jq< zuvMDp`swy4J0d8I=TE^Wnu#4$Fcmi({ib1So&_%TQq!k+EtIuLW9r#QUW+dTI!vAJ z`t3{qoq5VWh+h2QDW}o8rl<2TUVjrQXf>W(PI_bC^u-^I zt)8ZUB@dr5Udcm1Q$O0LvkmwYuLj-Ps4vg_2K9NGwnjEkP zrYN@qs!fOr%iJ*ddaqKt@<&j?;aKNb3Eexa%)^T}eI?f5J&Cy22r_{{{ceUmj_zE` zU6mbAn-bY#xq-E`ejKFaS|b|jF=>v;ZL6+?RWlO;3blMe%+vHY)EpNz^C21syj^`# zDUYc+gqkXPHsAt1ex1g`8U7W)2p;Yu=Zwivq~MCXj1_s}(NlYN-YMViwMp-DI->Wl zU3*U^n$>GuwYT~@*=*G^kTltXCVAGLEo29?#^hH{tQ<)-5OwKnPTt28>TJZ-0JmUOfXmRbr zkc?r*;kz-bi2dxs^n|6{m_0$K^3J#R1iyc=) zqs%2q=8_R`EcBFBYz~$YR-Y_xWp7tnmt&pFJXi8R`_*C(+5P+e_@xbkIlNc_D zD7)yJ2zIOWYpFrgz01cmeUp;b)rm{K(d8A17u~D2wc6L@!xM|IT;{!fqL4AlBLhd~ z-STJbTDL989{?lbp4{E}YH6+WiO(R$To7V|{Xo+i_s5D2#K<5dFlZ~Ra+y3yr0%*P z4P)P89W7zgUB;N8nJOcetR85kDU*^K*;-c6G~GZM4^SqB_91y;v*4hDCYq2h%@Ea^ z*#KQYqQ62{pqk0-N%l~UZ)Kd+X5Q4xZ7E8aFr1?)02u|07@X9s2pS^9Caxh8V@(WL zmlU^^65Ksih)JPah7k5gB;7!CNgJ&mtIb@a))A=eFf-h@*zea+;bDdU;etg>So=C{ z-^9}3^;K_>N(fY7kX*GLnR>+u-wzw2LzPxCv<$$wUg|6N%9!}}hT)nrcn!=nsKuOjUHU!N-!LdOhc2{6 zz%i@?We11Y;vc?yM^vpA!F377`Ww{kxuFfjv!m1%7esO!8qFA)mTZq{iSSH=l5m4# zQ`^3JT5i^nxX{Q0w1kH%d#D+^{F;0UkbqX{o{DBJ+DzfQM(n?%(onw843zFJG4ArS zwTJ?))Mfme@NCU=5l54H>*>}2+fe+pMr-q{W77(ZaI{zaRS&to1>aNU(M@M%)-EU9 zj)$(9yGFZo*cX4w8%r-~rYpI{ykFzq>5IM7$JdS0ncc5DHt+IN*((4{>8!0}8$*sW z4974Jv?>eNaiiQ@6nV#98=Zu_r9+guq`>UchL4l_RQGp`++U@m3D;2+fg!_1npsZ+ zD-IRIhCDOrB`nxbX0_^>Nq{$o&* ze=<7aO$#CHQ##B)`{5(2*Bv*RW&hDv?nxwX_|4^ULF* zeVe8?8tcn#aegxva)`hLWA|;Qp$q}`mPwSf)AouV8Q}m+$1iD@M&@p}Ev>Qid}7J< z#%q=jV7flQrjY$oZB9w>;m0F)9h?uLAr>xoE`L$T2`gM0?C`&En8+o3b`9l92;(pY z)-_HoDjD!}3N!#tM%a8&T@HlxJSWgeF|(9S~=!7VTK}n0a5F%U56{i4VT_Xma z`9J*WH$VR*CEs=UaXo-n_`B+Nz5m?kkh$Ob*jFqX2d@!2$F017&pQvypL^)QV2ICNr#Z7b z>^}40nOzgNXN_*l!zHaz>*i02k3MjAde2*S&+H|>grGz417D8d79jGx4R8*|S{Xr< zS<<~}FK>7Pnn4g`DOe#SzKwjAKIh@@#tLP^JV2(cFyt^|+O?k^Qs$AFk&a=qAbO$e z@n|voV5jVZ#P*bidMA}tj;Tmx7^atT3=O&p-!K zQ8_-8hnvck9G~5iW!;Y0x5Wq5OY#T3v4cyR@y1Hh7r)&XPp-_}B3V-iweF86EzU=7 z-*rsK?R>XXxPQ?bAitC|Tz(1UVVJ8x4D`2b@)f;L%&fYH zFqb7#m}kRHns_dwa0p`&J+?BADFKm1Z5?fDV;AKOBWr6kmNv9>*VYmSjuxT-Y%i@b z4cyIvt2Ss1=$@9EV-iAtXc0(uRQm!rqiB5i^;DXnb)q9`F;c~~C26tZgq<%nxgCrQ zk$!f7;%;e;Y>mxuqcu7PpKC=HX@PT^)pbq0*EPluqQa&%OW?N-R%=!CSrL8Gg>G$D zK_-fq1xLK|7dPY#Zm{(_w~fDk*57B|IV#pW-w5($o%@T!y9*)XuaCdkHxRsT=XyV1 ztONp?oI@vG8}jegm9BT##;pR+|D)HJ8XgE7_*&`z-5Z(S^Cil+eV_Wvv47+9%3c*S z+Z(8rg9Iy{R|j&2G>JS=en_d)x-K>yWuzwV&MH!Uq1aoeRrPmP8Bh(XJ5t_%=}XKd zaDYo7gG(@oG}rz|tr~$~wy(Da+bX)q+u~Z@Az3kl-K`S8np&sS>@`;Fo?*4tdNt*~ zW53q4N9G$w`CsiXqu~!NxPn8>rz+7rOoiFJh}v6}Q+kWithb0^(iE`RO-)4u+nS0{ zmnVParlO=uBWx;4rnYDRy;`SEo4R%Cmv1N9?oaXZmj0o{lRoSp!m0sv48@=HUA1B8 z&?}S{AqCqs1w6I_az4!cPi4NH%6*uw&MQuRD}w^>;d=`!=7fla6*DqiwbZm-Y)a); z6j!g6+fmvR9Yu&G8_j##TvzsIXquA3Vqx?;vAFe-OaDL=HWZsf#ioHUy0J?pvk5S3 zM!a96A%lRZcx}V|Hb7LP6lMTFSV#<|Gnzv5)4l1n%=WqVt91?F zWcxqIp7F*`r1zWv|H3dpL4UxYT^t^}!%;~1;@2~LSwFa|t^LQAT)_-_t{GRLHh-x8 zXK)|vM2Y?h;K`V<%?{RjOCR z9RQW;E#ZDUyo*R!(!%%&kv7mB(P@6TKC8=tCp!sW>ZI<7?QX?KdGF^x#Nw*~35RGA zC`EJO4}bnQ7Z|FeC?MX$fV5s1KvV(v*ppX*@6hHwEr^=DTKD3&d?H2*iE-ndUCBnS8p@8k?k5p`hH|a03qZviywBDuqh*X>_+6h($Iy~|7^-<;NP0f+8p&Er@Zs{oM6+N^?DI>`CUOtkaUCfOuZoW z3zlrdGcsmul(B!DKz| zHcatQrg-5|{FnfMcHsFBWv45>40z8bXZ|Ewy6Z0`Hg95=c<(L?l-k{-7c` zMlK<|ice#CBN*y(k&55_vTMl8{4f144nO3JU-HJ5&MkRk&-mhtxfdmVH2ANq(u#$N zFHntZ2IR*L?~&#TT!j}D97Z={vUti$)EdRe4J4{%BCKJY9>b8WQr-v;$VqFyS*W1Y zH8rdsGe8CI<{(p;X!BJ+NyYo~P~FGFAiG7H8AD`ljTs?`On7AjHxc+4#w-3bLq9F3 zKOLZ-R`4n!c9+SF<6<}$wY>m27+?v&oZPa-fd}<0PRN*Ot`k_Yr4PW@;mw5-l*3X2 z1SQd0rzt3Awy;`9#e;0p#^bI5L5!a_tX=!&J9OuL@y;*2vGe-XlW)DwMo| zduVMucjC^S<3iG(6%Q{Rdyh7Z=MWZ-EgpTZCTkCL#x-~BZ!C$L2j)kXMT{3X!kn0g zQyJr0z1_wRwNf_>n$6|6AQ)z#zd{2DEsYcL(g)~Es-ujPG{@l#)Kyk$^MFG^@}sum z+yyQ8qd66gn4)I9qMzE2-$Q^9%rVc);S24ei}5d_&a>v&RhzkUopd{BxIgnn#F}(mwwaHYTyMK}=Lu_S`1r^jgJJ%?@;@Fs zUm8s|4)nXOd6QXMA%(ZfTg}qn9=l`ToO5`#mO1?BksEjQSLOc6nsaEL^%(bqZ%_i? zz{bV6S+1>BI%TowWKjm14Hqfb7h(XuoHEet3_);X(V`_q+|`zWQRLTPaCYZngPy6auX58cvvZs!BD_V`?J=YzBM#2kOq#KU*&__ee9fA=-7>8#!S zjvbNliOfy!Scy!GX9(xvpZK2$<6Idu_6%=QaCyWElg54~difbK$s%;VIa_K<7ZKLG z>5|ZOiGu55Eg@bejx#I$QIqV2+T0}V{>_4&o7)BpQc*Bs`qATVTwvJk6>J@CNbC7V zKQ=b9Vh6RAj&y%EgFkD--|cZ8N5FXu1V`N~LRW{bxzS=pG7OKv&zjYey- z2E-MK&NF5(8XQ(H8?F944GA!|N>nphonE)iOYxF?*0BoWRWPk|A|_S5;-rX@%KzYr zyRAp^28&iFv1Q9UD%IJQow3;w+d*IKaLH#WI^s6#duI3F>=|B5NfWc5JMv0FKbF&r zxTZ7c5Y77j5$#L%N_lBA;Nb0nZ)pUx(dmiv6MG8Np3b+#Y&9?SXRI_c^dkRl{x;$5 zl1?~V#Lv(3KjI$~-U**i;m`S3@jnu(!u|01Jo&9J@P8@H3&%Jwm*sGGA5GZ%F!bEe zYdF0oPn)v!E{wYE4TLV`%QX}vH?A2>^fV9f-*%2#jpAzXwXTTItT*!FYFHR38ufx; zANF`n@Ta3h&#(f|^w;*X z$vjTL!oRnXT7)1|pKYS98v0)EniAzw^h1wd8)YQE#%9?S3^bp5;FZn)~k*+0|1nxLGW- zkgx#{;iZkkeIpgt58jsJL(0}ci2hoV3(PG-EBMP@&Hdg>|8;Am=f_CTccI%S-rdpK zrzM@<{ecz(z(x^+zY!8`2@?_AhUAas29-poN%qC!eYwFQCb7LfYeZz#^#(a_4#&FD z7R(c*3#HgF&f7kYBlg1TUhOk@wRyX|W|*!{%Znq~0bv635^D=Wz&pG&s@{9bE29ax zU)`7V`HWI-WPW})W!LjDjJ-c&(R(A;@G{>2kwx!|DfbUzuIFDa&kBCN32}Hw$$OTu zW~mHF(yHgCpNwYHQEnHpn!^=w)rFsZ>V77M*&SQvw2K?qK_isvOBmu;CVgQkb8_;>`)Jn5hV*YZi)bvo&xmlql76@qt zC((`)jAoSUX_$QLr6*MIDs5A`V8e=l+R95qJ=m1`mt?slXwD7)hCJUg_z6t(P`p>d%=;O#hB`GPtvbY|J%|9x|^ zGEtJoSJY`C?8l!KaBIXE_Y&8RD|IT|dK%0&%4+Ls4uivTvw~;i*?Kmlpq$in-LBEJ zPz{ek)lqN1^qy`ev?OV<=MWq8OA_j&?kR1K459NmLL);Xcnoj5^fo$%paiZ%Njahh z{;Un3w~P!0N~~TzZN}rkjA^M?bFpKosY64#40hes;B-84Gym@m5Ai+S*tKqCrN^}v zYI&d-I~K!TVt?$5-+8TA9f;5NrRybM?DgOr7I!54iB(%7JCht+66(i%crFx>Z&+>F zfoLMxxlBuZ`2A8~CKU3`4BHKz%j5$bp?vB%H^BW&$*1Bx5e<5~)Wm8(C03g$&_&8* z5%pikFJfk@cZNu9#a7XI)jVszRzbo1#Lu+MHn<2f8GA!%MF9y6xq9!s^f5Y(khE?N zS(MYr;CwuD1R%C5_SH~Vu_}YJsxuL zTK=!#B*s>&MTf+{PYS$)>7_a0c94f4m*d{awH-)QAI1byGlA@n@qt*v7NVw3(MtV< z8`@Wl0%m2G<^%wKQ^(h74t&zgKTVsL?h?v*`Cy zY8CN9wXUSzxv46=brngmobGm1ptdl@UoqKL61NT6Px<2`cdYt5&!2paGF12>KhMWi z6>)S`3cU2s&po=*9Vg_uC1Aw=4m{}M?&*m-jX2{f3Je>@Nj7ssYp{sw?hJRSNj_Wnyy5c` ze`xG{-y5snIO-D;Ch04=&UbV60RJPj_x}od%?Rf>$bGjr?_R`uGtYYSo6&MJCN*t% ztk_)VFLiT;2&aiD!8|5<%WZSMn+hy%Yb1{-Te2hYMq1jE9o5ptk2ff}c9st;A_ELu zz;If2U}7Dvz3R&-X9k$C7+Ib$Gq6oi^6G?6Ob@EdoCkhL*$A?tH^qMSS)F9BeJ7P= zjGgz#6E&flA6%`SK&@=97Rhg)09mw;+WccIyi!&f|EQbG$pF{+w~W~!ntBHKFXLci zHUagUY{tRHY%)b~0sZs`Gax+d`cL$5fvR6jbLvi<=Wz$bF&58`Oe`>8hjgUhr0i^2p~=DyY2 zr+_20*s|Ho(&lz-7zvgrA?b=?$Ch1_vF2H`R)s3$15AP~v_sXR0|_49Cc!b9iHOk* z2>K^+s^{b1-W`r^eW62AEAz=>UBOmxx5c+p}> z=Oc*(39sZAK4uU8c~^LO&I~mEYyK(D$?fObcAnu5n}MpPa#K@c1gEgaRl=U@ErUqL zB0@SFnMso*Y{?YYjV4Ln)ZNP0V`2DZuUA~VP@yQ@mcdwAh-o9LYus@BrI}#qhCdQXjj6jejBd6I$vu^E39JG(!@+6nJNu#g9>L1Q}1UHw@q%DvW?zAn|VQ3<(Ue3 zPuSN!)ja{$%e7{n+yQ>k$aQy=fO%f8GEeM{GeUMYZBLm^BXwW=)Lvqv%3O88De;Dv ze$r*4cXa;DV2fqE#)Q?%8>B$zA<|=I&||lQ9!rAM-k?nP_A7@*J=V1SR!f^cfX7Hg zz2rHe+?ABU>S3JQ%*u{uv}RW*64hX3(#G2QQ~lU^;swPW*C;7KD(QQf-u5baWJ#ivY;kVyw0Gal*FG?sz02sdeNKLA*ONzPcRpg* zhw?(nESLjQn{z-d4_I2(+cOx80^Staw zjet7gmvH$3(0GXZiz|95sfnL9%4cXhQZrWG04ETa$>)^*K?}{okrgO(tw3d4fEq0} zGetz0$HB@B;mu!Z1=OvvG!KDI5?Q>q;l78uSsH}Mswo-PjtS=UimkEKidndt71&<; zz0wH$VABW;tyCe{l;qcg`*vg8pI8AKusAMku>qwDM48l@_CqP~&7C{)5My>oW-&ME z7EVKq+2G!+XxyTzar1DK=2>m2ZAC6ll{TDI7;ZapNj2vTV$zhm6&f`x>%UXlU9ujq0i$ym9(TH_XIJ4#peq4I^!4>{%ANu z+zFreOa6(SJ92h?X99TBiwsKkq=1oyT}^zrbNyv?6jnr-d|KBTsnG06%R?<41Epr_ zVl%I9Z|pYZKX_?E#ah!6)>=*^*oerM*_=Em-G1EDs8#kfx}|lG8w<|_o2?}P0J9}e z3RG)xdm?>XN}ycJ>*{V`1VZV%nblsDiEVQ_m3mF!{2!U}?ONEc&57>LdnBuQc6kPe zbY?6|m5)gWmk0MOe?P4i2K={OyWsLa>$IEgY(Qt~VCTQp7CWE#q|$e`n=pYVxMAF@ z5>{u4{pvu8s4V2831VFFfhIZ0GTgC?%|w}0W_ zc_j@{h;V_D;tLwuMc?gNcM@DSPQvX%ebMFJZC0$CXv${z zGbPu@B%Ar&QQbZhzf=bg>6G=%p2~=3r0!3gnh~?{JvY?$+4z4bL&se_9=Yp;BPT2}(=t<9z3( zkE`CZjlAaoK0Z#pJbvkJ#t7hY=V)OYbxGyOeO`}i!D(*8wU-~X7OOuHSNP!>t<{g^ zjx8E17iH!n37#>+;Yc28?%3`jqYuntd$6s&wI}APd>4#`^*YQI&bZ!o@*aQUuC>=l zc+zKY99i`z?%A8feMZXh4xM;~AV`6;E1j>>AuAp*&qcs4v{mkxxnGsjeES-Ju%&x#tI^&C2y!pHZ2#6u47_PcI>Kt)m1FlraNV1?$pazE(_`a zyG(ZLf5WNz7v@x9R%~c(xa(9cV{ByY=ETsAqNLbhS#_%R+k=xmadimf{rmj0V7DIO zaFAJ~U={Pl9tL96G+c!EhZ-~-<+jT}xJOZ(=yut0RL_OIy$0$lH=zHN-rBRTX_^Qv zTZ1V_ESvy^%q(xpx6HCi5|6ISRiFm>0-zb5rDSXmW zd_|H^^vw)UJLVhNqA)?#j0GX+EiX3`ct0=ry+f-F{2qHj?|}H~cYL2RN&j_Ze!h~n z>v>!{)%mPN=Zjp!)2Qj^Y+5XdOXO)mFdyI;&JWXBX^7b$;;{88#0*oiMC;A-C6>{z z;BtqJBDF!cIhx|*0^kW0C2V2b$Y{8O@PiC_3mLZ&^NOuLHib$NeXNL0pkXdZ6Kbqhfw|51Ak-D=Hp}2*Uaqx^$EY8 zWBO1KfEH!!u_jK*uB!s9oXs_VKx1L{Z~8zPR`G+FGHyG__6N4ec6Pn$kadfJKqNv`L9<-)L9iNrB0} z^kSdONMR(Y3i59wA(7!Z;yno?mcX!9jSTc|8gCi7?^#Hcaw&A)3;Lz+0 zFc(u}2?V#mCAShj=1^GWmeH*i>96iB_IeO6#MUfl&h|QqitDfs%P3bkhFzcGFvwpS zVw@EB{T{l-l!dGzTD?ltYdVN_;Cx{)nLw`lKSaRyUiw2uK#@>TMG1a8;ZFy9IaQse zWaE=<&9-^T9-=-Y_EJ?LtJSB(L)u@3oPsv~x+?i&l!%-WfSflRUiHQAdDnj5NBqB7 zqna&|6BCig`S;m_FO?X+@jnY%kl{)0zc9a+`LrIzr(I8HlQzm{5KNNsB4R%#G}NVr z4QtpR*?`-IME!L*=rO2l1Yo7C979!tK%9-a_#2?tL{BI=JdT-*^dL>WvH`7^el8<_R<)1*TsIBC zt_?)YJFrRPhS?K9xcSCwj-6N@x%cqV)y^A-SEoFqE6K{lpgg+5Yz`*lo(I3v!5!@7 zQN%g6p~kdV2ujEZ?C2~Z9^{tr+CbCDhVC@75i3}@jz`VmD3hzi30bC@yk-9Rc;~&| z*x}{F-q?eCzw5^dG#n{=A~k{h)e=IJN;Ge`N^^J4|pqQqk>J zsX3yyz|AT{^5ZB_^VDTxwu6t13t?PkoR`2sib@&Nt*w3#&DO$px7iGCvjyB{7rM<( zQ1%a9no(O*5~S4;~zC1R*-KTDOjLZ&K<#k;&J;hds zv1!+qH7`5Xjh?xxR znPN{*YG}=Imd$p2(#L;p>Vk*o$^09MT z_xsNrxW4m~h4Zxo3)eq9;ICJf|gEv693UD^jZ;9(ELNMBh5<9#S5(oFqXoF&GjG_X`QpwocWfeW`JOK zotqHg%z3<1v5M?+I5!;-M0Qk&bcGdeqBI|QmaH@Ckw>>gfA zN>kH(U8{9^@}ZFfc^ChPJpioudhJ?mP!epqd|mgFeYm`c(;Sjt*qcvf%{0YPkovP` zklVKbpC*A9`nW$*aBy&pn403WScX8w9-$&c(*qokQ&F$t8uXQr3AQR{73V67S~haw z52phEvbPIB3O3zl#uc9H85;(OaNW{jX>&)_9v%J}jn?LgbX#_a{&9wX#kI64hRo!Z z+nh5_Q8r&z2N(3)Q{nYmPcpnF=&6&E*96zBXHT(KN?sc}bsFQFb737Ha%i-FWfw#@ zwoytB@WVyX-Dz0N(af>OLzgdeKfe4^{tNtnaR`WP1vLBv?#KK(zsR`}c}Y{+u(N8S zT|+C5U6>s8lv)NpzrkrZ132bhKF_HN2`hitj)fB;;9;zX7xGn4!l$=d6M&gwNna^7%NG$54r2&?xveb|?uHpNd0Gs{%3A!QT);2N zX%P5T#t9SO`zN+@a1qXX85H=K?gfOMR?*@WkhnOoh+g*s@(K<*8a#RsSQ}mKbamqu z0=D%;93dq7=$fNzDZT~!e^FXrT3iNhf@`n)tREa*QUu#zv*QM#zFcW^Y;ox-f~_qp zj8$DAU`b@Bh@di5cMi3;mrlWAR{z+#mSGccg+Ec42wOD11y5wrzUYZA*khi^$32nj zZ1;Pj_uC(EM;`ELrib%OIj?B(d7>xXk+{YAfG`&wE(g7?yX}Dm`mg%u-Lkv3m>nz0 z4ST>AY#h1=PWyY8NBG9&zvRrE7iF%`NE6K)Iu;~a zI2O$5tm-@uZ2owqf8IjvSpC%#^@ zkBIX|lbdmqsRw*Ls`70e||eN8sLM zcUjNF|BU8<)wD@Fk^7ATh&Y+%qm3>e3UIl95Nptqpb|UcHiH~`e@CRh;I%SFeua|aEFuv#9K zXH7P{-ig2GS)j+gz~@dp5ja?p?c=q`R5zqWvM!2l!GQLlR<*Q78V6>rq>L9QHn*tp z_u5S=*Wtf8Vw8xgU_IW~{UkU}x!4EylWNcfq+Cm471HqnJ?_E2L65ZBrL>En^Inj5iEE zvJ3aNayq!PBaoIwR^;$M(z!pu)AZU*wwn~)`VCe79zXpW|U)XkAU3JG?D%;QyW z;x`^MSnRyW!yiT+&*pu(XZcSH2l;Q4EN1rxaZC8W>x7R1&%boo zC2_oPzYr2W3q1d_x^&Bd@;wJC+>eJDFa!5jPzyL@)Xg6U8T$UO{QI0ezwhH${yNaj zN-O|$3~);fB?W({1pdFo!@ZC0Dc-kU+;C|)8%mkf)T1rq*hj8}bcQ=j0N{pf(ghwO zb;ij)Fv4ekJeW55W4QucrYC$Rf3$?3)1gYJ*a-7;xopH691g=-d`S2p{~h6P|8w%t zOFsTX4kyS1*dpN%z^s`;p(5{%!%IH|yjS2pr|g9GXIU->)sTtJa)>f(SL=4Dsac(@ zvYaL+DmaQt^c5i3=D&+K9Tf3epFwYmIm!rI zq_io0l&GvJBFdar?NU;PhHw@;&{Mn;i7>=%mAJDDD_gA(SDEG0ck^S@b`!s2R3}TR z)R$#m8OixpULIkfk?u zExktx@>L+d3EoMKlDPHvKD+72VbJi>;m((3(9h4v{MU?9=URhB((oT5@_}wS3zu{7 zZ(6xNxTmElAYs^jL%27&t0-6<18f5)OMyzEoT3a*7Luv04YzM%<}QT2oY-!d@BleA zWSi>*$Q9-lh0OBGq5j#6pL44Hj9K{fE$60hi}u`WTA3EnIj zA3BYXbL5E3|FOx|8D>O;GyA?GWB;Gd3{)XIv#Ql{-x2zU?$evBRz4;3U)MX;Gc(#8 zY=5y;9YQvT%3r>n4 z#*;|7i7QVgsn@CBOp54Fq8L}={NMMSPcrkirL=AuK22-=_95{g$}*qgzrB#(eng|u zQ0E)?MbVX!`vekgdcRk}`@Ig{ub--X$_!gGU254=NO#oF!w^-dV^-w09dT46RjW45-P9>VU0e-6RS?Z|0XhPy)?rij26?aK3?SsF9k zf`V`h$^45T@-On=p3h5t9VZFHKgQ%fc_6Cw$4Pk4h#xqI#t=ac@B1v^zhaONNOB4TxdBBFErg3usPr5b^@!zwKuD2 zaJt;|!W#yoa?4Vfb~EkfgTteBOKE&h+Ta!D^>Le4uhsE-U|5q!)&x5{5}*Y9{HL{& z&Sv+?oqyF!7X7zmkL$kogV4Vsa3DP74coq@W4I=#6`f`Wzy1we+lz1KsUToJIP>^M z9Oaj(c?TF7(ahBb9R~bjYI@=2d?3j>6#-Xib<{TX^x9gsV$_XCYH<6QN2k^44Q`Lu zx7DKy>6C70kPE@itFBA7&Uh9+6M~(h|8Bd_X10rE{^kaqrvudCY-eHAQa<{KqWwO7 zqt)cKJkLvt>dTSAdX9IO`c^m3_j;niceon&gu1&u#&)+itz~?1cLldMgE^+vAc>2u zFb=;-D96Oy5`kY!#-8O-Fa7*u-6dtVP2zyRW@8*}wRMkI3S%-Wm1X<2EV5%=43-92 z(Mfr6=EQCq1e<8*yGBgmbQ`Y+I#tRw{xA1V0wsPdX=3%RsK7(MG)`jz^m=j=|;1x_h>qb%YuY*@3p^z7npzh6NsCiBHv{I^CP75 zEF|A7Ibu_jBczP9tT5g+@48;={#(GSk1}=l(yhRr!Yw_%Wf&1HG)iBiknah;S{13` zuZt$Lu*siJW4E0|(5s^{U5zt=(=p(o^8Yp}b)J{4mgm8*wkI=baH9<=O3h$b&0|>^`!^fPn||cd z510-OOU=jywvcQSB&BJWn$iWF3U8J!aI|kM9NC=n=CAmMVV&UiDP+s0Lnik;0eYwv z9H5e%UPoQogmv2Eri%x6G?$wi22M|dy}8YReN)Ip>>WZcB13P7 z{ERh8ilaW@IF4^{zgtQ!PWg`?(wpGZBe(bhmE(raWeTU>M8eeBQQpPdjCy!@SLaJh z(Mcv(zXf(4d7#3ra2PN7sh_#&qJ^>TJeBG4WbucuV)3!LrfcR~dB2L&dsTA}ZU@7r zA^5#XO|M!-x3b3vxc)x3OZ!2Y2hZdyqF!h7JG<)j+oVnv$3Rsbjz|zs#b7mMys?n2 zN6$_xJU$BC-fpO86Q!WBnJr=eQ&HK(Vq&`*#=AXGPc!b;OK3;yz{k}K>$Q3n1Q)Jb zN`nTrT!HW2G11MsaWQqJp+?2!p3oAE&C5}vXAlk}<@Edlc@IbyyUiwEl`as08lv%! zL%;+_K05yvl`>X)$jL}!&U&IMX^@6*`6#FOd6<8RVGcf8g6M(>B$wM!GB8meo_(AU zYTXRl6RGpX?DM&FM{9L{hw)y-AZ(G%`Il((C{fsh~cZ5>YFL)y+|z4BnTTb|Y)k?;w> z1P@t7atHW*3HE4nkNt*U*0>J5^~3u?zwQCrzLI?CJYtrJO2lYk5PEI~@t>s*&~}#E zKeNf6DX|Y;`X8i6Ei}lY1&*ckOVcl{d;D%^e%(t~A70yV?P)9XHgJpMh8dh4zY@oo zE$;58-kePIJ+j_)Rwz;@&lLtL|J8pXas4gRn!t1 zK}P$6xSm$Ja1j((tl)^uAi89TfQR+v0l5_-96X+K+o&tV$~J3YGbH2A3M)p66=#y2 z9)H_$^Z`7t-#a(yJ60y{J#{k=$71(}5(9zGbLUQgw^rT%j@O6a9Qkic8aURwYAc&o zLWtO6j*ui7@Q3csU5Y6|+60wzD|7d;ei76h2?ki?$^m7Dl$nn!&agZF@#Lis5?OM} z1`wCXJoc8m4;6^Z&BhqXE$AL}B19dx&3?HhS{g5xybviqW25ksV%>T5{6!-B!C6CJ zB_SJ9dXvSLa(j~={p^vhp}`20@kQFge1I?K8(zIpXK?VMl!@|H)y@dqXW-IDF?pD~ zM&V>{1;stcG%D_1k6a}%$H8hpORu$EewuP~GH@B3ZzAIu zs}0xAEJgEyU^yjgkv1QK=PwEW2GQXpcQ1!?q{Yqom2rB&=D5@f!sCY6r;vo$#WfNUq?e|v2L|T-_llz3ENE;iqsBAGc#~+6bV7f?aw-rU zjFrE9YBpF14FsHnkwP_D83sBXyu6ctiT^6s&yAzzMp%fAKI$*TYII&%XfZ+H=t?(k z8qXDOV+^ZWIryS7xQGzxF*H^+gspzs>gmguD@Y&?&VC38WI*r|9jNYbUUodq8Kh*o z!txA^8k<}JntF48w^xsR0z?y4YKgQ6hi|(g$%w}Brh{vzLw%J#sXXh-C(HA?wC?15 zY5b!HUl~e7g}}kN36o|Yf6lqf8yyN)<8Igf(<^h?`C{6kwXIJ1;`!CA)n|9RM{XQ@ z>2GdW4Htuh;YcwsF=&_TV=Pa#e0fPY47AE|BizR@Jf{JLjU*#imd!eXpRy5R--sn_ zKq3M*5F!Hm8_u)-1|4u(jpjeGSs8m)yzFOQ)`!M15gNq=zN|C_H*0dsoWxy@jt$WO zZ9tO0ZA@daktR-B*)qBap&;Q8waoq4GR(;_m8yz}vDS3z29AI$TjZ1VvX>DR2c~*< zg5W|1;qWUDj!vYLp}x{SlTJHcK6$Gz8EZXhEP6+7J5)`UhDT?fEzHNIp@HJg^f14F z&pYSq{U?(C`C`Q57&~i^-g(OY;4Mjhi{%QCes?`pb)ll6@7>FV|k)DKvnV zwD$`42xI9O31FdK5h7XvySA`EiBv)C3yI9$M|o5F81af5G>OGv4_D32S~Ap zdPlB97PL@XcF;Q3n7nQYh&dXRNCZHfb#_i>t=4L3Ufo2+Bvy=lYK#WWuRJ5*b@#ux_W(W#36M)f8fN@%&iAPRykLT zRY!I#@ly`NK1-;P2?sqXWw$)gWfbT#!M&er=a4QVj4oOgMW`7lHN%yS6#Eb@ZzM!+ z0?9Q=s~6aMI|{^c*;l7i)0&9&j*1|>L#VU}(WG=G>p`X?|BdOfr$T*QB-~=w> z3??7SZbEL3H(I$A{Pjw8w82I^mCX%Zx-i6fJ7r2M<$8IOND$~VJ_B-k1l~J*!xGWT zn*v&m9_V+D8MNAlUKiGz^!4RehHBNgUE|X^UVZ#6HxC`nA2?K7nmxZSWO4UZqt%i8 z@>>5I&+{pR;Y4MhHC#{oW1>x)O0Qmj`#sed>p}WF=>H?4k;{O$KF2-FwWBy3BH?8c zsmjPlb7VLhIwJmXqiCIsTJsx4MVw0;9)%C*N&DeAV}T^MH3PRZMB@!V6I;JTfK5o| z1dSB6sxz`<+9(>W9&@%BA#>rEo0E;^m;=YjIJp@GDo>6m0~pPej9s!;a%PJ%Zghy^ zz+E#dxBZ1GYeDada;>`;Ooh4-^mPzwoj$^gM04B~$gGaD7vbs1V=EJD-Z8f&lPZpg zM$3`mQr#cw*L_E06bnbk)?Q4Oy~f3QL1WPfIs4+NiNTRu$M}f@ui819t6!gTJL?6j zwJ^LgIuPAm-)VlU)}@Jz2s`;ZQuVyF($JLMHf^;3rBB`1C{CQ5D~^-id=+<-aE$*t zcsnJ`y0{rm%7%#%T32ox@SBJ-wl_$vBLj@C7!{!}h6o3gaKtqO$i8TtGXqFG)Qo<) zW$-o#SKn@u+{C~*@Qu5@+%oup4!;uLs|&bLva^gZdS!V+#>*5S0|I`PDVSR-OeBl- zp~CB2=cCC&Oz-HsrZzf$Utv0IDIT5)TZW!@4bRrn#p2@d!?*a4-;*8Ahh*RU-jRh^ zaei3tuMaKO9N999Yi|}xAlE*y9jtRlRJhBJ@2f6ml>?LK{WbYx!+hOwb`bK{F^f`_#Ez(iUC7Q(9V+O-}J_dbjSOo!1_Ld*ap|C+?9??HZrI z%VyLJ7VJZ!W_tKkDqN^mz0-$Z{g&04TlR%!4p+x_&E;L@zPiL)eEY{T*UW9n`tK2g8_gs4(yQUVH#1GcRwkn%2h>3N2~0ZoLwTGUYG}^JUTW$izFWe#2mwE5L)gOCju4!c9KS!T<(EaMyOr`=)yxF961#EKCS*BI8<+dhQ@-WuDF!Z zDcC3xPp)$%yCJ_3V+=}d`U!SlBD2@@l$BtlX()H6fFHax$qF)_BIXw~Edw5!kvs;s zhxJez-O3U85^w|-(Gkq#3Uma84D0?5I)KM@T$0uNw>t~?(c439uYRi{{>~e&TfSB^ z=eTcva?fw>?4OZ}nw?{{eSJgTyp2jd(Z9}KlIvk;_Dv6 z@L1ny#bHa?P5I85TgOV%XBP%1frjq^8opZ$a&d@wp5zFkY$K|=p_GVmtAj)9;N}9= zEDAx3B=0zNo@c&2#yq8NPUa)bwK7ORp;k!u0&NjB7}+j0zI#W+O5=>F#V1A;jo?%-L?8axFS%YcAdFA?KoNaKEV#xu$Pw z_t%%Nn;sgybBbSBeZ%evm&A`w9`#H~;vVn9;MZd5UC-Y#J~(xHX>gMC-d&)7&wxHi zLo`S$OqwoL15m7-At}eHvp6ekAx>L%>yRPhYBvKHT0WqH7pUO%v4%Ikd&j28aN;F} z1*;9M(Jm!b?X5~Et+3vd&w7_dGIz=8)$&ZJGGD8V*Zk+!!gVR0iaAHJqkeNNk@_e9 z-0teg$n5ak?Gvus&mE2j-}TOkf!T^&n|H0iJ0cIPiDs?_7PlQm4u~zj)(DG2u9DC}AzJfV>vyJpA9xxmP-@zP3P&@ef8K!00w zz-7$VYgr*J4(9u7LS<;il3sO5`%W&+tggBy#;f&kUpZwhj-~?Xh$$E}J8DI@MYLM` z>s37SV_@sf^4|lC`*Du>7;*^*TkvfQo7);2xFJf}VM@W*FeAt?YeUa{ zQjvT{MJ%upVu1|}8FHi9!dg4{mc^;#7MC#ft83c3}GBQN6EYum_$6$w_d zR&{4Z+>~Bg-B{5l+^z^Olr4$Mf$HKh@y67Rnzcr8IU6u!GUG$~>2!u)a1KqB6Fa7z zPX0$7kKO*iczYB0#)>0Yz~&%#$iXHANCGTl{i?d3q~{sPW4kZl7`fbN9EHhY-Ten1d~>XSwR!`rA&7I;9geF@)=qS`FP(p*V;CHJ0)s?+ls-b|h;<#qy z(~g2tdRPa>aiz;=F~*_C%~sabb}c$GzISs?tataQYeieEz3YarMmy@gflSa8=?Hp* znb5NS9fJw4X|*(wZfJM(E{|C)lm(U^*tMbi(j5&`$9JrEx}u#6+oS!_)>K!(8*C5z zf+xG`y!9OsPjGHHwS3dIasS0_7E|+zM6^Ea-@0Wm)BPB>PpN{q-M-jIYv)o9FF`FR1iiXh8FI4&8O0Q6Kh=>CBa+! zBd?l-p6FNd1G9x3=!tAKJ)16{N@6@jU7^mvQ=MZ<#lBn?EN{4K7UxGzb%A6m+n4LF zgw+7!JCM{Oyu)<0-~^tTJ)tJjJh76inTZ50;5T8KMVS6f8~qEHa6hm^?D)5pqo$XG z5NS<9Q0nEmPqrLI!_Hz^HE?B_ie-OKVWhQ~4Ix)FWHRdW0l%Y0dnxBQ-NFj7#r$2lTG;WO6OfojL`QoKgw~bD})2oP_Sx3Ljg~ zo?>FE&_U2~>r|;<|4O%zdRWOvW(%Vr_2Jp+k3B>s+1h)?m+^tvIqi>oF>-d^?U)WUsd<(=Y}k_#mtW>M)!LaI zoSZ6W?R%T~Y|LpLye>X`_rlTaKutQ) zlU=&FNii;9E(cXQA}b8ma9dlwcgOYmrTxBzt9nzZfrQn%Vr9hdN{sfnk^}9dS$9Vt zAEP#d%s(PUNE>;G4yd4hc4#M|8Y7LnFS}Y*^bz|z$v5~EGboKDRIB(yubmwu$wpBxmkJ+Xy zUFP#c{SAS3>d7vrJqer7VruVx>!<6sFIjM4b#QEbZ*IvVdI{~0)dfQ_;M3aD1Um$M zV~{*gM65YOW+o;0)1Af>kMZi-Nh^=4jgD+j8hzOzah?%r>y?58Jj;re6V9_cUfExc zsBO!)gGTe9Msv?r^N^Vp;9{W$`U1>aA2-#QEpAVuy`s%daim?N%R)Yfb0!dpb0aff zkLoHf!SuCzkel#vJX0B{U(ed+9=XyWA%FjdEacKrZbH{V=W^+Rf!H~sd)p7w^8 zg~niGkimyVM!T-Bd;O)gv4t=A+F9D0HP|iNv$0-t@6yfzN%kGMw(r`GXd)NC`DU9w z($Uwl$P?&4&t7|cjq?YfERpZI2!C1R$ zi>0T4@!Hl)3%Vw?`I15dZe?_NVDK$fZ#JGwGBzM-dg@dVX1 zbd7ZyL#HsP4xkqocO7XMn4BbhqOYSz9d#pa)YK zq7%)m&s3Lue3fXQntZ@%UpbP$Uas^7u2Njuju+ zr%sC@&}gakwfGbAq|q8nPG&-}x|X?ZJ0{aTt%IG;bdMOPZz6|SJIEA$KmSgOZj`Ce z&P6vr8SW04cuWjk3KxsGm6cMxL)`!4I6Y$#!n7z{wqoX%n&%37;FU+z{6DsQ5KsT1 z&=RxLhPnhuOy<{Ger?BV5k70AC+G5p9IlI>GRU>Tva+I&!?(IXu&TVoMl_y5g;auS z#pU@Pd)${FbItb{*{PS+jc-n*V$tP$CO0gtAD_&%F6jtJvBrJ2%g2)gU+q1=Ez+~i ztc$Zxq*pb2Ke%S&_}2ZlLkoKsN4q*4pQJxqcxnIV7G=YUoxR>V)GfoM^ysIyBk^552m0b|6pw+9(7HS%2oC-J6dCrtpXq~65Mw>6h{bU^uT;{2B79`x| ztas!yxHj%Xr-~b+bm8KgRCTSC%?=xGKq>E;K;H@)9=I@$>1kzmNC!%qZJvl^zP$T_ zy+81o2W*MSH5=D`Y&7FA%8ll$+q>KKjRvF9S>ux;ahgt#n-ZgYK5*%dU;T&IHtOno zXw#Z~mv87=&`38$>!tdL%M~!$j0PrALkim5hd__q2W`$yB0M4+wmIQWE9&_^8a-~i zG2v;`8Aat*l>691)m@`%BrXxM(hY6OWZ==*FlCtRHe#3_ycXd)uPKpfxkf#va!NLu z)X(L{Q>&mlpOzzV!LyhnrV7Uf{fC-Q@Pi+7`tFH7f@C*EK6^->e;5 zmRU@%o2y;BV@Xr6EgiS@smk7qmjlG3%pMzjQ^T@!r#5kij6$iXeWd!=ls`bG@)(aFGi&SMQ;ksiwhU*(5hQ zTZ7?YnaVUc_rsTe22AP3O5hcHz&i1!0JG}Eo5rhc-@(Iv9)ufz?(%d z9-m+@k=0~7Z6!R*P|<}!zOt#A3Bi+9shLgU)0(ndKX0q9`tL~P`zr&@xG*W#1H0CX zSS?<0!>bgQV1^t#nu-bwQ~K?!JK(($pKqnj@7Zj0~DBzo^^9B-~q@6gwK8fj)|-KyV6 zCU=l}Mn-L0H|R}`v^{Dy{BrVUW?=8ye@Wfm57dmd+1vV44T~1^AM_f02Is0|Z|`{v znmXmjm-O7<-&WteO5f!7im~gXphvnvkGM&Ue1`CBXR5xybqkLg``;jX3=bjB_cP!b zuyTa|4+(MW@)4dI0he>YF3v}kX>$Z)I)?FDgsVn}m_gQ{ILzUQD(e~kttx4M6puhz zZ3-7>z@s|PptteNUbJi+fO5(D%EMFH7U0oaQ;yr#Om5R(5L^9{|9y?o#oKu$34WMS;_K|i`0<`?VfF0q=E zAI{8V1Y^e1#f3apYk7+TPQ+J=Pis>%>(q|4fzQ3wg`HYjnR~CU?gzm=3yXl28wD$8 z^MCz##kp;mE%eH72S+LKfDDPJo1|yDr zEu%_P9-&FY{4Hocb!{&}N2uC65%ZQ8vRQnhIS|*?-`>=*am3Nr9$@a4#`d9j$XaWj z(VO(L$>z3)`da)w>yz22T`zsd<+R=+(^~@3_zwdHlUpZyTe>XEj2*+#+9$Wk-A$S8 z8Lz(9Io=eEo08XuCgUAmkK7dt`NQF4@6u%#HGA&0`mD~7AzGUZJn$uNy+mVyh$&W6 z-phHBWF`yA)41l(^D(M9&M!l$(=p@Q^UcI z;c&BMJiDAVWTO_+Z6>h2TwtHI|N0cDyxZB9(tjPXGc98wFi4>Q> za5yu@{oKXvI6n5H((4fbhBhvG@zRW4+?<-}5FYV;++xR1VI{u_=U=PD6Ps3{eX(gh z?#exYJC$Zy_yS8&Y2hbAy(aEd-2<{}5bp2>AyU0qkpTmBSQw~7!Ueb7oS4}n)@Tl5 zUOF(Riq6_Pl*t~)W8r3VN49?_-xUUPs0luYnn@2VT(TB1J!s9bsrC4A*il%uDTf1>VFzebrA3d2O7s1Wf`mcz#z5S4JFyL{S^_`Quw{>S84<@gZqV{g%flG&FsrIs zZoA+nT2=7nklJO5^Nz{~L@1z_uQm&z>&spZcJENo-Iy6kD(?RAl-y{v_#1SN?c;&^ zU}N3B_ZV9T(vGEj6Rh6UV3n6e1|xncY;5#KM!NzYf5a#$x_~F#8Vl6VZ5VyXqcq$^ z|C;QVeXZ%0iJ-}w+%?kFXtA2CMz-v(w5zc$6uF@%5$oH~>fXI-fLdisD(VX}o5j#x z@A5P1Qe;PcYbe-l^R1}6DW!Pt6yxLVWHU3;Kag6Ipe-b?PvvQ5#vpnw!HgrS)1B{@ zG@pj~x4K}7Su=`$y#<)o zCvTBVR-4yXA8L-v#^k)=z$EESHeY?S2IoUTq!sl$?#OmK@)W&-23%3C6Ni`hPHSi_ z+C6gUmWo$hv#KwP>78Ty#!g7~U3CMJ*|LA2dz6{o+q0vCCNt}bx34gnbsg8nz(#Ip z(A613lQw(L!1}SYtEOjji^I{A=#g#BU8C(iZn?2ptn*F6*nJ*-mNa5q8a^Ahi>`|4 zAceCq!gu|Pm9811x`DGPm6uMVV{l09o+kwo;ZgVVvZGLsJAaM1+|=3SE6@2dY7F@} zt`}!0>%vx~?W`4-^;n`gSk>@Ho=SgjS?L#b>c6BFa< zbZg3($ajO5qWJ}UD6yh%i0?Nj=e+dJ^ZVm2zag+hFw}FqRSX?U9qu;BXE8Zd-s>#3 z_K%_xB91}|ciIo(PMma3O!&&%&0w-Tir)SFP_B^fhZfPE1=3VEkao>?+sj(VJuq`v zpROnnbyu{kF2a>{2mQl|y$d!RR;aXgqGx!o#VF-E;#7kF>-9S8#Kv@ETY7W4q1)3I zijG7>o#P{&xsk)SE*#jqBtY5FlFpt*gK?WBkuz8gFq2-=7fYw&1FOAJSFW`#G~U^< z$Ai8?$ z`LzwN5-FGxYQ8b6%@M3`8`SpLLKB|;@bu;Q_Ey~cnnq`wKUZjIL-EN?UiG!?;&nE2KXWsPnC88j^$rlnmV&fJi+Ow0N={-Th6Q&PjLE^f}R{NEje?u zhW;)=5BObYE~(HTDXnE!OAaXK2%X{C|0%Wp%Xt0E^mhq*zz^~I zFIIE*o`>|Lo%EB3)QoG944T3Pr8}M0WS`DJABu~B5>gxwJYi5FbpJK*QI{VL2Zh#% z@#q_QJbE_<5;L@6KpC;`rA~8fyzJsqlKD&$H*|DMZ{#yP2fQ?`I5OR8{}4x!^NqQJ z)9xs%c`>6%l%qhG(?^StGc-Y~4#8gBI3&)3fW@$+K8{@GQZRIwV1zg;>`Nq>uTAoUNWj!uo-PdCKTmSg zBce<@BQBh<;HsK&A|WH3`kO=A;JJLJgs=2Y3lbA?_^omrnN zbk>2+vSxB3_HR{AVw+6bm#w5_^6=bE^F-w;Yb;P-A5|sg$W455|ApyvuP?IWimW%h z!?o?WQ5Dv68*ZB#*?8O3H7KUlwk^X4AKw3x!++-6O6_?EDuQC{whg0Gw{IMt68$5m z_NRlTo-?a7{i9FqPX|l8&aABVC+H-Hq=?c?j#~%e+CqpTv7=;ye2m}U5B;{E_y40X zDq;Ws!Mx{CFX#!ztpC1--iUbV4f3ukeQA&#QtNfWnKgj7sPsA3&-LKJ(qUfTNtOPP zN`Insl*eT&|eta3uv24f1otMZeuRQpZ^}lpRt(thUC@s|X*%97n zXXB=+RCk&;}X9W8*{R{ydfw zQLTpmp04F_`J-9Qw|V)lvQascM*mNxcVA!Dy%+l<$$hoH$Q8awZ#%WM_wtXm`#Sti z+q(hlntP?I*XOJeom{JfmD*>Y#p_&HG24{d7hjCXiE=l`_!b~TXbWU99aLo)S7jLO z=tCJ|JIFgSn87U%U(u;r$cW@fT#gI0avV~1?<5!72#Re)Beq3AHNqVR`DB{!l8vN` zp-!X-HJTE|P999N6GlID$g9aZ@@47zxODqKay}v5k~PX3A(an>nwR+QI_`+UnF@HRd;Xa%H-gr)PsV)*%wZBOP#sak&Lys z!|yO@rS0&u8i#+blx!Z#SnY3uupR!t)tDn)(N1eAVrVbRoa=>ARWDpqI?nZ7Suc#L zdf}SVF^&tpa4G1`EvnwUgzL?Aj_(AVvSS*2Il=vymkK>jEW{6%=`gNqb>P_E1tw85 zW{&5JIN{8URU&Sj>!oMF1%tnr(u|z{{Lu;4ZS8|=N(gVIg9Sg)5v9e+l->=%lC%8>qravj@0l%8#D=XzJ zQOm!9my=T4$WCY@qWp_EzDh&S$G*p5?9*>j#~P&fuvwtLu=I0s0`8nw`Q0UIeQxK! zTQ2{kC?D`EIbJTmPp!{EsOL%z{eW7ZgQcT<4j}05z_%}}HpXALjnP@bx3EiaPV&}Y z0G(3n$>}v?ai<2~!d4;fdPz$U@Ac(*V{vB%-@o2@ao{%llqlbY<#%apfCf?i z8(98o6;DDrpHj=;!^`Qa*Z>V``A0dvTBScJ=z(tsIp50kCj~v=mvOvIKcJR>u(XZy ztxTU&%Rg8;z-_J7s%`ieb`)&6eI!k!QPR6lX=W#kA+Q6Fz^qBwfk(mq8JBdN=YJr# zz_X9@oGke4^`JjQ{)QCH8lM*NTh$}*`9{9rz&DPj@*^2O7Z^+x#^FzfM@Dn<*cGTc zEMmJ+^mO^aw+R%9B-Dx|W>}c=I-pFu19n>ij~2MqY&1gKECvcw9IW_I+X(LK%u9}9 z;~*|I&LIC~IPD`ejFBdho;TE_k;GH>P8jKI}O+;!$nYYm|lIF8dW722S zRWk02=8w@U&r&oGY&iVnH5(3p{gMkF-n?-C!<&7stWmC68mV1r_NUFtvZ!}Tikz)( z=DxLm&DBrrUw`FSV-M}0*!s|ci7mGzO|rGWvm?~ksmf<7`Ul8C-!WA>sNYdO`y~h1 z#6hs2(-=J%<7}3fe(KA9WSpNR)lfZkr^|63nnj2do|U>e;&9IB96n3C*gTu>!u=|- ziu0BFR3BuD3XZwniBA=qir%`F$qtij+GbR0z}^iax*SD!#8xEz@Nyb#2rZmwF*0M*m0CaHbLwo>5%+jSDgB-dUWK{KR^h{m zqYr1TW^S}h%u)V$k)W>7uNL~u{nA7Y?I8@&Vt> z@%8FB^Cz~M{T%CAdmW&?YB`4iPm22g4eP(5GVZMc`Z0AJm=aHL`c*8c>hFsqWP^C`Mi@5s2i=X){W1zuO$)k6~G%R^y}C!IUdEa zm&P=8tGtW;=E}RQ(!PuS78QR#$mn)4b_HHKriqke9YO%@jHO$x2v)cV}6vnbQ5@UW=?c057`3Fn; zxs4#`kHPOg$jdpX{%#+~7XqH6ALIA}j&I`lMWro*9_(OYHw*d+z&SnO3pu_?Ex%8t z$1!tdh5k6;g8m?k$twjtjAOS0-#*Ii=?1W{pCH9JTGPWY`{EPqAP)mNlTOCLgr1Id z^et%g@erH&#c50mjrlGV7zS6Q@@=Q{?die*CfH6FR-T=hyj`6|&y9&~O|iy~zOe*@$j&-}o`x z$WmYAK3@dYU@h3O7+70MF+M&{e&S78UI`Kr{3XpbA#V-Q<9<~ti zw?GGx^UCzlPrg>^54*$@y#4KD_waU8wjqVhd=-@Q`FVb}eogtPqmMdKM{ickuhJg@ z{rh(GN0f8ug};dR^Zt4DUxoNvFTEYTsu#|o2fZ+l9^UKo>iZt&@74bf@4K1f?KmeA z<=0~Q1M~b>)$+Hfc!i!Ee0zGe{$+ZMoBn{N{(~y+g)!_ZP5E0@`~sj~$@zH@tOVre z5XUbDJj3~UkRU&|mFeNVR?gFdDm~yC^?k+MVVg>SQqWiQV441;ps&o)wyE>`lVW}k z_*EQVrqRpX&ikih8oey!@=>Vgb&^>l7xBJTy!^h~pqx$YJ}74)_xSE6-#*9xnL__3 z9pkta-fP{w_bsnuO;zSBajs{@Iu<4|TF1w&N7>iNWg7aIVNP_4`jheLZ;Lwbe#T(WFsCJz578HpB1y5d}l^ABa8k-Z#tdM`%-yt zW~N^llvy6ay)RQ6-m(*nFD039bHuy)|21?PG?DBb4vtErM$js-e?!?^RHmveR-sg*iY3&uh$TJ(8e36sB$ntR7{+VYl zG}&tmHJh$C8x<#ep{l*lJaMhfWAo4ltlqhW`01l>yg`3=7-;RrO`Bj&V5`Vv7kdfE zW)dRzRAtZG9hKORp&x#n}okfm@?h$v}wI_s0g_Bp<ajNV=bcD^4=2 z?aT+?MxIZ^R`;~oz2VnY8TEmT7WJWw7A-X;W*puArB+MSt3-fPsGoM&!$8_7ImLArs`Lv*Z#1tF|A;*d5eJ zisLAk^_iK)LM}s7TTuTE0&6ofI|Q${rg2qhTc*5Ac~v^!oWdoEVx}3Tmg&P7t*Jao zVaAIhv0z^zdfd{u6OT_8Qegh3Dxq5Ov`rKQwk6HO=i7PiANyM9TD#5?sG&8VjYU{R&_)@Jra%a944^)_%mu%Y39UOdXanvzQEKYu2 z$L{1S!o-ImQDUv_$zBn-gKx+mssv=C<>VOMSv+>)dk5kEWBv7Obs?k8BG;J4n;To= zT?R_+Muo|dkZ;-BNPO?#Ya{Hh)EDs8$hy|v)<~?S&T2AR9VSWd3Rr6$EjOIi6y}=G zZ7-zSKD>PV{u4PouYK&1Eb92U26r#L?f6(+#?<-HvSF0ovMJE5qo`Yb{h=x7sM$>U zyp=aS)7r$b|9Jpio63)!E-Z#du^87L$>ITM6zl%)ht$I2F^98gcP!-RWlhU)cwPAa zba;J7olMRhWh4J$f0H}Kh^vmb zLt>4+#LDBX>bE(h+Kd-+o3XrxKc%kWqb<3*x`tobQ}8JJGq=gg^e?l1_7RSMtMr%o z^z17*_cHGk)Eas|CwuipL0zH$rc{r1!INk!wx~AdedNQH=bnQ5I41oQ`7k{Bh^Ag) zd~Trn+|kne$VWB5_hYm%Ke|mkReA1ZcprG~jp}ocN?#_IRi1l-`_vzm?k1b({oWDD zkI(t*oV)Qk)n9aiBrsyP`s{l4M=m2LxwrZ(@|=&W2Z@5?s{VA9=fWm>9c`lL)H+_u z?PtOB-*KL+>xF<*_GylPu2cg2RY8wyAoJz{<@Lp#>iS|CU#_k#OtJlJRO1&)tNxrR zHm0@#fv-{NUuOH&`n<;LQ>K5Jjm?`kROlrtxw*`~MeYOq{tEr4*$X%izGMfWkE!pw zukTs4@PS)omhOFh`@ za6V2<4sS5t(TJl{nl)m8G@R=)2YJlCx4T)nhNYvAuc z%ZbhYtEz$)Xl?s7=XkPJKAy+^z}vN#uc1CxZAX%sx9c#u3tI5+tL;c*>;FNO*M-~< z$J<5eHf$Gkw>l4h8Ro;6aQqPJ61qo2Z$rDM^nILT%%i^$+r#u91+|7=w9|XAozA0w znB&)#<|^esitUHbUr&_&1^o+j_bB4;1^iR&Bid^{y}#S zApXyQKg4=CzKi2~I)pz<^@H-Y!>S+j`m!Gs@NtbFwBrAQdj6jGvobyU%S6Bb3h(!V z{(QinXMe^1bjRiJtH&$8@R!*w>?Y37y+j9hE~?TCJF@f}v?K9}3jIaM&&OUB)EfFQ z|J?`4rDxH9g5wvK-k4uLo8$caJnla`r~DIld*+ot1@u~emg%Q}Uhvbz@r$bdqj~W?e?Qyu{Q_khZO;pfuO3;q-9nd9P#O8J8SKjHk>mVYVGWPr?d15bHLabGdxYsl)mF+(gF?s8KprcD{2L*!3#=*;Rm_kIr!s%|Dx|){Ih_c zK8JpUi z5uFh9HGr>YM}YnZrH!Tk#5*ex_W-^Y`@7*6rDlOI1H5zw@B{1+;HOJH0^f!7Eqp!X zuo5@?veZ<1-YH2jazf*4yp;VG-{JA6@rersj`?AZ10FN{s&uf#?;Jq<^3ohLfz03? zsI3IjktRqLe;D6kt52XB{BtOS$-1*}1;##*!Q!*=Fna`La1Q-SE}LJ@qu&hme2DGm zJPnktf;;gYh;IS>Vc=;@CZ)?u$kq5x6K%euf?AJar0uH_|`H>GyM< z+BNi;nBnW}u(LsmUrQ7jILk`U10II9YlOCi{4tik0rbMI6FBG3H9moAaL%9ob?4w; zLjE*G&ca6of6k#lBKUK`+4u_VlZNNWjfBjr&vm@*{%TiAL%)La;UMQ{Q|TJG)4C1u zRe(Q&IPmj&-nLpfpTmHE3)&X)^Kj`o#IHxZ7w{)}+x`vN8kK~D*w}*|A`f4oAw~!Q2(2eJBg)&9_8{m9Lo(qIEg(wLGI!BK`uw3 zBQ5}b;+;Fx-vBF<{RcZA-{Fq$@jFG1Z{mB34m)FjoFt-EuP;5%@7)CVo@T$s_jvv5 z{F#S2ek@^D6h{i zO8*MDSXUQ#9{JN37N`dQ8uDjd@*JG=CtP<9&iS+RT)c?N~|spHKh zrKkCGA61`g0GY03U*){|GuI`XH8}6ni_HSn;Ji<-wVi{bJ@AV*?>YEM0aIZToa-jVNb1;uC;lo5XQ{T;PYx_#NyQSpP3Q zf#?oV&tAaa!+ynOa9-(2ymS71JLfA{Dq3ney!(h-TW;30G5A1i&u5aYrD_YEu#GQle&tI5`Bc1-)%dm z?|gvM|B%=!eO9!S4ZHAYQM*xg9HcZ$mt!!MPnPd2d8KT()BY zM?1E`@YKsCg&881_w8dl(T+7dMG=oW1?~oX2efCvEr>VN2)qvPO}Mw!@YGv~$Mgax zfFA}M0dODUjgo4U0{&jGH2@z(yh&Ym$pS8H*r)0cZzfgx;{x|1UOu-M2AtbylDD)1 z=YxiB4gRnO@6q6&)8M@t{7V`W=tS_Swc0w;(MY54Fn!M9$-huvkpggBQ=7V(jw!0muPC-~ou_^2w!5a2)J zw#HLkh>xlGN>2aVO8I3yuoG}$qdhf@_;{tAsPKO{IL**IxQ2*aSw2a^L(zU#-<+V`V<$Y#edAi7lYNV1EMpdZh{`-S03qFo7p{Jh!~j zQ7|}gE1JH1h(DvcBQt6G>u?w$1~=1vn`&o;)_x;#>U7q?2n{| zw1MT0>r4g-^DNT5nP**;b)-(0C|GEsARBnVU`+dn>*_3Hr-s#vE^Sz0-e6%1EP8oo zclSY?DEBU=qu*lNU@qKGiVmjc8aAbi7To4%O2` z-6BFsuQ;%x`eW}}RqtD2b@dyRWudy|mfB8>!o1F&&ZJ`R>+B#BxsI0T57|$Mmo$(h zIZX1ARKA_>VZiP1%^06KZxRVS4I=6f<`_<;@;)AA!Y#tj#zc+-+&A9|Z_gtSnk}Xr z54lq?*mD?8p&&VN;ftsCCYAU*yqfBgC$GI;vqL_s`AmOUc?I3_df#&XR&x)wc%9xB zufz9~R*(3=p21hM>zrMk$(h=i&!PFJ9f!oYvWn~X6IGmQ@QOWz^dIN;#J7o8F&Ms8 zv6K4P6!xpbug;tM_i?;h{=W--4gKMRTpzu5J6f0VwW=QBb4K1zKL2Ck0pa)(einq& z-@<3+=aEV|pW}L}G|O?7eh_~50ZqSZT`urx`V;y9=!Is(Yg-7^{^^UvIgF?2FX?ma zpTJIin%q`;5c*vSW|umC?@szR`V9A9d;`9H%_#xRT_xc^e*)~i--R|NbA z;{58zzNf*z4)~ARy-=@Le)Gq(?8Y~^-T3OuZ)xy{dHD;GufZ4R<4niC0r)rDUee$R z;760HuU_Q(DpA2BLSMabzCbyS`}4N)arU+Mqh~2GC~))v+$s3_Yd+UMB=nL5eEJ61 znP?~9Nel{;%lNOD%>J3Ti|2{4jFX?xS6RK_9n7!3<^()#uh_AiZ(nEU*teW-Pk!$l z{3FP>x86Dj|1k3H_nJ9l>06}*EW_LB)3m=d19#SF@P~1}LvAI$GOm`x`Ml)CbIRv@ z-tdwJUygiJ`TQHs=iVwV`23Ue1fvQ?He-6LVEQ_umEhe+fQ+Ps~(>4`~-a zhrEl=%PuK>7w9v)aUb+g=^yA{*(ZpV)RHE0h!kz87wa-JZi&=_0*Z*-J3gKqvsNU> z1SO367z4@ZWs9*ICMJb3tMHR7)K)!z1k>~sEQBZgF35VG4_agz&ZNWTqbTw_9O9u1 zt+I{z`K8A*#CidpsZR~c0;9Z8awTSXb=25YOUL~_88^! znkVMZyOI7*#GgcbM*ulM#=ix}`PXi2S5x|P=yzA_y4O|wSm}@KTJD>Ct#pL@db`#j zejM=Ypgll4`6c(@sQPj{%x7=pzPi^+S8?A?|3<{u0e*#`{~bqH2zopdcmW$gz4#L9 z#eTKF-%Wo?Q|vB9lKiD(rT24t1Nt=G#_lB+lIHPxE$Rqw#mHF5av#RX!SHovhqGX` z;D~0yMDb?6zuo8d7-Y`qEZwS@B%35z^lfH#Z_iF0vq{u`pht}PPf*67je^zEfLWId zCh2$hkK&50K}0peG2SY2FRLd|do$5Av)CPTfAra$)aj$a8pU3taGfm510Cex?{*W_ zv*k3Y7-Tp9J@q>=5g*CZR6!5Fr^nx`NfpfEN22A!t*m|Sh%Z9_$w&3L5uQIk2+zOw zAASDfGe7f1Sfuhij!oiusGo;_{|$-Li`aF_Cu9%1yz~d$l`soGq}&AG-PP}0fBhQd zH(C0o(o7Z*k79u9DK4wS^e{Bya2weGUdgWJup?fxZTWgd&un4xUz_M2+VcJJN0xZIuuo-YMk zzgezL6GfJ5OJYs;Yjh(UXIlZUyBKT?x$YyPkFADxe3ncpaXCQlB6uh8c^o@spx@2u zgBKzie2?JCcS~PoT~O~3`6}TVU*;QDpV_kr_=QC>qU& zQ#@21o^84Rl@E&`qyZj;)FZu-H_z(vxTii~z}RvRzVcHZD8QpkTRdi0LO*TAKhrjT zb>kJOgGgNj3QeTB8H3pqu&ANsYV-!P&Fu*UF-g+A0OV+r<1tRr-fUFeza^pg`01AK z);e~(8+2aTq_5MR@JDXgXz<7;w(*3I-tIEcj|5DHhRa<_?cCmg$zq@yY*z#kVTon(m$Q!E%Ht}#`pivd9kGO!g08hJ#=#(LZr*}@ zX1E-pA&abc?n2fp5eXUJffpf(fONtaInhy(fzo)nqSSs*sYP+bE_1?XE{8MZ-Sn$; zHR!`6?_Y$E)9N48ifT7QQ2Z&YNv?dL3G~uk@my|AuAi>%Z)wf-uj#{bzezUGXXq5n zE+Zt*syad9I*sb^TR|sE^65$GTXQ8kb?vphPH&d}Ot+DBFsAg7q5*dX!P6dHLi-s9 z7))Oeb@GU+c`Cz9lh&q5ctR)s+c%Gy= zqJE`$e=6@ejVG${roD0q8-KF)oS%$ofBpmN&wu0WYE-HtkzDD|tV69!j7*AmE;vJ( zjQX+#i$9&_!Jow&tB1ca1h_cmjdhB`w}64zTdcZ$Mf)7Uo9|qxDoA}lycqEB$z_CelVrHfIwo<{purmvU$+-!0*_!a!JEl+` zbUaQh24}n@gBfKD>sG>zMI&%y0ft``JIbaz+ZIgXT|-=)541S(e4r_J)+u@IJ~1m* zoi$Cod+Xov(EQuu)EQ5&>uFA}>uBt6sB7wPpuxFgMoBNb>3fWlW$xWAUDeyoxrVpS z`p))swREpZH+QdX$TbFHx#qft*{hgQZ`WVNthO0`GoD%7(BD|cZ#JBRVBe8TKLB~R zsq&7KF&O!`lKr%c6i2Y#_6>kAw{d9|7OYN-2s~*2qs;Xvb4x|$ri#o>xXpdkgficg z7_nGEZKr`?k0@tyBewqoseH@nnSDZj`$R@ckND0~>R> z!t!+vXED`}@e}fk9L2u$0{qnDEXJCf_{Qix+Z@hQEuB66LmgP4DIuDP(^AO+>(cZ^ zpC-@Uyk=5Q4SeR~>#Zbh#F+T-AJFK_Pstv9Fs3O)`+4c6&X%rCo$>U}hQWqFOK$_c zSle)mkW2kEwjs*Av<-c6#7s1Z^4A=t}94~a$ z@dD;6G9NEYV!py{)2iv1r5)FPSy-lQ>z~S&Bl>W_F1r!zvbdZf&vSc?pYJDY0sj%V z*D@a?co*6&zq?=9ZNG+kTmkhks`x0f568`##L zqpA5P_`Uyx-&?@z(Fd9#N00OIzqiN-q-!=18{_ zk;TS_S`0dZGsXP^>fFkOZ5UgXWaoZKle(!@U){UPL;w1`^dpK%Hl25^RhCVTlNXxq z68la~ve|m!VH5w|!*F>w1=fHZiZ%>hC~=$A!86h8#VZ{gR=NGlAyOUh+SShlTPw*GYaZA95k<%3*t^%wwK^12Ns ziN%Aw@b8{gxSkA>46C7~O3alh;5H@{4G0G?h|j|lk?_GXjXC<_{0q&m=5J;Yp`qLcVN&cRHstJp)4`lR^}9%)rp__##vgk_iWuzEM7?#4#XCrf1p8YBDBOQ8Z~j z%bL&glu1@AnacjR)=L`r+!k%?`8W?t6?zlda~SdoYFLJ$D<8W~&+ZfA@mDW9NJE zLm;Ukat$dCprsJtqdfB34UK%5kMda^ad6id2ES_r3m=Ri_!JlUg=$59A%{q4ii9+c z+01ydp%i{H!Y!L{jg4Tu&8$~>n`!6*H0I%sY(LSr6H<@-+03<=H*@r06?RkSds&Vg=vWwDq~MwEPXwos>k zBVRj9rpr-3Y2_1-g)r0yLzwJqN_5ynJ{<{Kr7h8gDZ=tT$F#eJ=XAmBLRzM{Fik5A zJ$9-#J4`*qqef%8S74?%po!cpG=&4+x@cp-Tl>D&fsjKQ%MLC#8C(u(H>?_pFPhqZ zjOui<*{JAgtuX=I^wl+boQ`%6jX2|>sLRrtZfFfS47!CZVjIhj@932LHm6CEy+-}N zXOWd+{(dXFn*EMFs>opNe~i7(b=|ts8v0`C`@|1?&AUVpMqGo#&`Y%# z#;w4hIWdL1%P^G{^NK|{OkCs2VI%UTxg&&(>)!|78Z9S}_9`;HO3I=uXf>3!~xcg4j z0uNA??SblI6x583I@l(thF<4UL_O%gsTJ{h9ftVAp(dMCj63fx_0uQFTO>eM5sLYn z0;ln}irxU)XI>l3r|Z=tWXE4QA?DMV1&z!WoW?iu4rolE6$89672#8LV%ww+L|IzS z;)B|Wb1F_#S6M9j8a*{ytvZw8aEdXT(WcXV-eEQvP4wN)8qg#k|Dj1onQU?LJs!|8 z{+oSAi9@d_lnnT{)KQXQPGTLp7<2NHI9p0z2J7?`Db}C|!Jon2(U{?jlA&~Ql;@%v z&6zO%H-=`%c)peMb^?A0;IyD;OSqD@`s)K#3 z;e_4s{`CgMXfmyf7~Bet+-Sw&^2Yc1;l?^yz2Q+<^#(Q6D2Gg-v(1Oz7j)l5R z87$UAc7TB#;P=-l0tS=e5bs0e4t5JYP3**r`BX5Wv5cdtl0vNvVmHzGVrR$a3|50| za?>|!a4h-k+^>u^vdv6`29s>%ZScpXo9R!$2J0YC@*FMgAh1}f5Jop`5?wucW145o zji-yPe9gQS`$?ureEd(j6}AB8rXs`!9DB-$)yS#w}Q2cyW4Y*eOAMhA#9 zu1q(_10YWLs!7rS7*C32G&uszaaD-Z_@$yP>v0L&g4q|^xdoOFJK$?|i5`nwh!5DR$Zw6i~2S_wbe2f@P4UA?+!3Y*pWBWYtYX|{*4q9h{7Yw)uAzf_YoNgiWJZdU8o7Lo%M)atOK=~$z zQMewP0+_!Nt{QH_%?dZ0nl;>Ps&La5EORr=Kjae*aa60j+y`ttjwd3*+q`h zt)#dE?UuutnT^73IX_+0;hJ7DQwRW?7p13(E@0#*^_zreX;peg@$AqEpN1l^eo#Nh zQu%eKG1Uy(_*+C`FIo4y>D@A#pa%plD}@Cj(Ocp8d|j0%Ac59d5jA190_*c0o=vb| z1>B~^F%jw7*}`(bS8%)_@Dad=XA4<820TkfEuf|vVy)S};pHpVYQ2?oR3WIs;AR`# z9XacEMT}cunmo;%QB25(X^eCMm^&YUxzlv};4(g;Uf?Js7vaQ(Gyy96yA}wWS2Y@J zQq_zQ*=lS$70EXJ12lA=Y0@R z`Ne7Uhe6xIw2PP%X;9tz5{9>M%DA=RP&j)m$o73?F)GBl8#)V6FqO4g}JK1UKm)aM!qd9 z%y82G(S&z_;mOk{Y1)TsiK?b)rHx=70Wj(hzPk7wj1+??>ot7W0LpslKO}3%>Hm3#ggPIy3jDoB@&8!ds#xDi>>zIUIpTKx zeR0$Ot++q)4s*4m|G$eH#_L;3uP_V!7;%C1!~H(ocr7pxF5?SZj7I`-r_i%a3e3(2 zN9Y6DXxRpg$|{5CY2DmUWYkd#z0`KfVueZ6K4&cGkc`X6<{t9c4Hmu@(q4LkZ2%jg zm83ELj|W>0@URWT@YTXFW=rJ>-#S;+yBaZ`Nh~#!kjQ$p^D=yvUauoTXd~T~hbti}7nPI!1vB@)^XEw9VUdJZwbqo7!)>QXKdG1BK+0G9C zH?xI6i|54J(kz&U@a;0|PXz(YQ}k}H0%`m+Y~x@6v+ z%-1Oe56scsN+FH_5`90VPZc)s0V%jXPvt1vg4L^n|FO?9FGFKwn77i+cK zPjA}9YHZi-I_-5@hWds)cl1s6-D*;nrOh>|@s$R}Y@2(N8t@;^v#x}9*-pQ%*yR=M zmn=Pt*vH@{{d70XrLCoZFB$kd-&s0Jw?n%%5f9j!MUR@hRKYgl#YFQnR-saSphtN0 za$@3>)~2%eP;#ZcqUzAEsds`oEKcjaOX^!%>TB?F@0&)+;;5x2sxO}|r;0pC;lIXlk&1LliYlC`By{9AgOPQ$#> zNz!otaq=*Iol-?+CrYR0L`rLFYE(hG_#kConi=Kgc{rNH+`iJo1?#^Lv_ys?{? z{%hI@zk4M)QCbT32k1trQ~0Clt%Q4?$&a|-H`B@e&+ig`iVaZCd)bG1y%OXw{so=S z|CWAKTFOh@M6c(xKA@e2--LT}FTp+h)u+VY(h3^o&!(Uj26CmlyHuh&qNi_43cvrK zYFP*9pVhtpBkVrO!S6jZcQY^RV)_dI-bl6~Ej%yc@NFg$b|tIh_iiNr4exBjH-c}e z(h>gTdrOCT>Axkf1APg8_pjo2Ntiss|DI3(j1;Bsm-zWg8iaRo01faj(#9!H00ox$ zXSJqN)J_<6)2o?|{RGCtD0z^t6o?R5c~=U<@$*z)4ZL5~iq)T5;T{z0gSbodHO_s&)_e_>k5$ZUZEN@k%+P*aW9S5A+MllQX`K9)H!K&VxRqm~OM zF9o|SVuh-{pz^dY-d)MJClVCVIg5Q|XLG_}v9IV_-PqmQSyLnXgDqX~hb`}4w5B)Z z4fZcwvCZ!t7)xbhj=I)~t_|QlRcUfcUYIwqDzD1{+PNH`}Y-s4sWaU_vK9SmBvzVT> zT8taxBNmJC27A)ZuKuCTXoLSAv&r@cCMQAP{DNLbzt3KPPf_wPDTeU99pMarHGI`* zs-Q&RD;3$`m;o0M8!(VME@GIfO#w!u$HXL7pTs0@wgNH0SQVayMlj97#D&{1rwtC= z;i2Fa@d)A)Oj-2M8XhCepg1ax0pC=Q8I!5W9pG+L8s$a~e{DIN!FTWU$UJ8iuJ3Ux zWQcM;(1+i1@B^o^NspCMi|ny_EYvLTwCHVd>-*W`)5c%?(8id-GHla9YmuD8++Xqs zdJTP({TjyaO#~AmtAYFK>}U+uVb0S?YDN}dL`EYb5(7|IjBKAA*`n z4NUC9z^e1zvYtwC7&$c)5;tT_y8?r#NxX^wbUC+Q1XuOJW`#E@L|}GVw0LT8DaP(7 z$RX^f4RHW#?0z-TD(|W2Jyl;+q!k~A!BfUpl(ECII9Lbzps8=CBikKs@r0V{&D~v% zJ)>zy@7kljN(SO3 z3rXIZnsJF&v7*~|)GC8`TnY}LK@^V13Tv`tUt^sloD}#t+fYN|K~!(0pjS+hLRXn&*B1^^vH9evDZpC)k}4 zusm-jMHxqMHF{%93MU)*sjix1HJQrSoSsPtEt}xJH(WP6B9_W9Lc9*^N8 z7hIt!7H#2uqXqg#p+?73mliCHr-3gJn~+B}PgqvnxKc?gj#=L2bUA-5 z<}S6Y>YVD1cdbh-%`|mh?(Yugn z-uNVV*;d?<=!aKRnz?HOra48IKO)*$gUDr{ZI;SsU9tuldsM}p5o@5|@a1}geKz?w z<{D^i{kyH*nU>aYd$Uz-Y+3elvTGz;w_@(=db_-1VYfuP6Q5JfQ7ru09zGhx=;z%!w}rabI&9{(PMy>0 zT(8uzrkx(UB<-{rts6WFlQ!5qy#K`E%>rzam~ow+l!c-G;k%C+v`3>*_3G|pH7_!@ zDcT1=@{D4$uqG%O{zDri%rG~}VX(=L%3w9gM_>OD|EW}Y%SlEr8=i2~(8Vo&-iYa6#@@TpDec^U<0RADbhLrzPooobC;hb) z0o(exv_*Gf7Ipcb=(Q}u?jSwnKMAHW_GD(dL>^gtpeccA#_s&oh%>9-Y0-dCDF^D?(E!(tx`#`< z;WwTE>_F)&XMV%68NmLH(;X~*M8&>eI!3?1u|uUh&-@3+zF0ayPmv!2cDVHEGf#8u zb3pe5`3+zfR_Gq)b-oeiCPzw_pZSh@e(5#(DdGd{D9{P)Yo&jKx};&=akO;u%*Xh> zlV?P{us@Xg=pE#Bz%cK?^XfbH(Jg>M+hotOO|v-1yN1{4!!Xb4BrgzLlEIakFrHIH zH$gMcsFpX21xzzvz%<)Xv2Tu3Tk!Y-)k2~#Q zXq-XJanp=uJ86YaW(n6)y*!Pj$Xq!;g}S!2o|S&L`PyBRO|3GGhJuR>wu8R5UKR^@ z?T!g~WVkK;$@Jn-U~s&qVP(&RIi`~w9#25=v_y=?PbxLeXd-?r9(H)TJB`ABa9wF9 z{n!7)*qeYka#e@Ib*m(mc2#LBE!|RSZ?)7?x701Qdf(SsdiKqp&7K~6#vYGtY`lSu zZNN4V!eR_bObA=psgl~5m>+0^O#b2t0h zVaqW_c8f-%J2XGIbZ%lKkdb3NAU+zH?SYN= z(2zVT2w>q_hX-4lnXHshU`Slmz<4NkOtgim@@+9}!nu5qUD^2cI_8z#xbb=RZuS;tA9I8`&HN));{i!| zxv1`kA30vA_M+e%EmmcGm5S;im_7!-{hGXDzoZBS^%QK-iGp%UJDh+<$UrJ^IRFw| z*FXg%xR{RmU@?~D+O0=arw9#S>IwAz9bacaPda{r9z#_;-Z*|VJwuOav`GNQwNWF{6A1rLc6CVS7=)XahM;iLFWuT#wwXxei!MP1!x zP@qwA0_9q#1(oo?JG?Xis_l|CypL(&5h-p=^P_{9)%pxqGR1jQu7)3$_Fqb+rSi~Y#B8^1jnJ911%{J@?e7YB2EmLG`GRNR@*C#BocJb zqZu#U=JjbHfn7NuU<^nI=yYehpD~_OrgA7+WDq%~1nj{AFSYCxHcOwxu?k}wCC^rv zFEE{I!ffX;zzP&o{?OQGt4&wX+ZG><=4(4W)+%Mi5qHS`9Z*v ziE9SW3~ge>p|O4Mayj&~LxV-hX}`*q8B8Tog2`YpdF?_t83^cDS+DCqR?x6!>}dAL zoq96sDld&>X4`O}d-UETu+3w~1!5Mgwxg9;w`jK81e=fw%X;p;-Mwaun9Rs`AM(*+ zFl6H;U?ekaktw6cD9>pAAvKNdy@f_cRIDy;@dvN~wN=1fx4KQ4wGx{b04umCU_}Yu z(lt;hteNz5QWt?q%&`b_!_px3wzZ zv=l+CP<2w{h0_Pea|}=BBAm=rCNyTtAn!`SLyp4QKp&l8i|PPO>;c&C$7TxEY#!@} ztGnP_a(bhA4>r8rh0PTvcG3K&U8t(=0u>Hrw4{#8XmE(tox5Svlep;<$s#_OOw&=O zkJG@i19;xCu|f}=oLz8=yknD;TQ3g4O=WVXVKd2K`&abBX`sWDC6w$vtyIrezEY__ zHK1MfCtJF1>qy~;6bs~nd_5uTAxSkTNccAvN|RDoYtr$_;rG=cR4Or zB$Lf0xon-oDGn4Qs}q zzo~vH8Caf%(~{7`Y1zNtrk905FAD*`mC&i?Ypqz6giwno_Pfv=Q_E(i;oMB&s4NS$ zrDXya@W3v7pbEEb;W+RtQr@Xb72b|lyDH3tnMmPyc4~TQ*Z%gf51?$Jcp{S>8iu9i z_O(r-?4d>-YM~mzR2hROh9S<%f~f4SC=*V_h18c)RjJe%ZR|)?l9y(P;n^Tw1fH;p zz?Ll?$GviN9%i!d>tH**g~h?B`8yvnTZ5G(`Lq6bXnx+-Wi`Pkbh(2TYyF=c0W!`T z?ba{f?+D!WIjhxZumoXlw%acWAL)}>8js#XYhDzYNoJN=WOgvS zFYE>s-5+jo0o+7q5tA@LZaF*AcUQ67TsY%0AbLfA?*5jNwxdh0!*6F89 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 A$p8QV literal 115416 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

                s#{&|e#NcVnws!3x3}t=%I76lZ<95R zu;SGt{I1eRov?E8gKu5&CpFy%CtV*;s)G(1ecaa+|1Cavhe^tWm0})(1DohdJ|0>I zcG49q9%=`+(Up!JzPmM%l#*C_DXFdbJ^e4Kq@L#d{9jzjw=>^c|I$br%-}4~EaP0t z_A2o#sb1>zs_`syUaIt}G%jgBRepEAH15@CT&BJp^>9pIulu}TADFw|;J2S2n6+O2 zZ@)LNaJ`XWKk7C`s;+cBXkPJB`vD^Iq)k6R_7^Ker|`SO~?%a8{d>4oG=>jydM#hFX52ig9G#!Kf1h5p4q zmq8EUFo6M?C|sdotsz|DFG{5eLZdH7sqAGzuvj;sT3M{670eLS5o^5#^9S`QTM)zK zK+VclX)qfQT-j0wrVDCUw*C(D2K7!@@WIqTtrJ!)Fc(nwgrz6U6!dw*`WzMv>SsS) z{^MRz#7>$)E+ns}{dSsEm_<$b?PRc(N-keT9lQNxF7~tcvEj(&sHmy7tI4IRsHnDe z$`#xEeFzJz=ySA?dNA?Rnx74}qskerh;?+568@^@HUFhepkB>+9%Q<@)W&a~eN_>4 zK(Tl`754klrH?OP&3=BwTX0RyZ+_@fpm%z?;`4#^EiAO6pVFeFfKUkSD+B)z+&7S~ zy!<~Cc$vPk@vkJjv3>$SZBKu;>&dYI!IbSYC;tzYT{YNwqp@{O#QU_N#s{~+AcPhdfNeE}A9FvY#*0ILF+{T@8P(hO#>*B)TK z4)fdVy|IwOUmJ7-W(+Y{@L$9`{!T4Jp(v}SBaDvKkeQqzU;~2{TUulrH#?K|MuC ziM)(}?vl@7hK{Z8i9AHD>`BF6MR8n-Db|-d)&pm}FZ!g)HhmaH(8$CJ-2%al4 z)RJH$`h=^39(GybsC7Ft%1!bKZ!-Gg92{L_rNv%Fql;C8u^4#>PTcrhMVYa5i+RyV zyMT50;UWo{gjbD;xC+tpb7A$18;GYjgFh@xPu-=r=@Xt>&)-{E@v>*%Yr0Fb zWK*f(R6J?hDDYlvU)THlKjLwLH`$pIXHyWJ{9pNmcT1OpNS$LoI>iIiusfD;H{(oi6R(O z#Nlciw^HS5pZ4UeYnya(cCo1U5wa;o>h2pvIc*Iu6u=MArjxugr>E?1*N|U9`)?HV0lR5pC3|BIfMg7)AS3HyXrIvPA zT9f6a*1xW3ch#;A(yfUu)~mxp?S-p$9dK7mlNJ4r_Gf>%;(LX&y6)RV`#bB3b9KVE z1L|V1`qlTdq>JY2RH$pvs#HhgZ~MDdlq+iSS^So$--O}|_^m^~Ux|NDYAO9qA-e<5ysBcKlCh!Njds8beV*EbsKXnuXg@j*d^VJAxyN?hBW~@h$G*?LvaS2rt$Xa`K{MaLcO$Ikmo&9~zoZ4h3goKk zVV$m7aVVAkIQc4D(oOS6`qe_%3|CKB)VLrpLS1XPWwF zZa1@vb5+u7!?VhHRnu$NxJrFh(QE6zDt^__YyW2z^Qt(+hJKaxsyf83aFzV3JjB*~ zRrsnt#C~Iy;Hnf2Uu>s|DM@UvlSD&ow~ha`$C4OU!?UpSdqV=}(Iou5 zA+mO#13uXhS9@3kKYY%@51imD4N0{}hw$5mh`R+r??SjjL$mW1tZN3!zx=b^gB!}Z zywd*86)OHO+WC)IXVQu4zl@_DvF_ImwMTnh-E<9=N4tH#y-@n)<-cAJYcKvKQtxBH z2i;<*4?n;+-QH6lD8T335~z+9ibn>D5zzx27lGJ^40>3+n2->HEkDbH@9TvcUokRy6n8BA%5`&J`;s2hq zeF{`Y3Ry-PAS0C(BONg#r4A!4UonFX;Z&QmJ*U9n*%YDHG&{y5fD*XQ3zZX z4hfJAfZWL5K+t8;A_)fZaOj~xt^)ahNe!vrjpYfgaXAE1G!=*7} zM4G??1&Mfnx-;OG?Qm_(GLbuQU7;u5pML!iGCZb4h{Z(oB2}a(MTttoh?$@gsH0G$ kMC%BQQldTpLQ>}*FBAv32,'FontBBox'=>'[-1166 -469 1518 1050]','ItalicAngle'=>0,'Ascent'=>1000,'Descent'=>-300,'Leading'=>90,'CapHeight'=>729,'XHeight'=>524,'StemV'=>70,'StemH'=>30,'AvgWidth'=>441,'MaxWidth'=>1501,'MissingWidth'=>700); -$cw=array(0=>700,32=>278,33=>278,34=>355,35=>556,36=>556,37=>889,38=>667,39=>191,40=>333,41=>333,42=>389,43=>584,44=>278,45=>333,46=>278,47=>278,48=>556,49=>556,50=>556,51=>556,52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>278,59=>278,60=>584,61=>584,62=>584,63=>556,64=>1015,65=>667,66=>667,67=>722,68=>722,69=>667,70=>611,71=>778,72=>722,73=>278,74=>500,75=>667,76=>556,77=>833,78=>722,79=>778,80=>667,81=>778,82=>722,83=>667,84=>611,85=>722,86=>667,87=>944,88=>667,89=>667,90=>611,91=>278,92=>278,93=>277,94=>469,95=>556,96=>333,97=>556,98=>556,99=>500,100=>556,101=>556,102=>278,103=>556,104=>556,105=>222,106=>222,107=>500,108=>222,109=>833,110=>556,111=>556,112=>556,113=>556,114=>333,115=>500,116=>278,117=>556,118=>500,119=>722,120=>500,121=>500,122=>500,123=>334,124=>260,125=>334,126=>584,160=>278,161=>278,162=>556,163=>556,164=>556,165=>556,166=>260,167=>556,168=>333,169=>737,170=>370,171=>448,172=>584,173=>333,174=>737,175=>333,176=>606,177=>584,178=>350,179=>350,180=>333,181=>556,182=>537,183=>278,184=>333,185=>350,186=>365,187=>448,188=>869,189=>869,190=>879,191=>556,192=>667,193=>667,194=>667,195=>667,196=>667,197=>667,198=>1000,199=>722,200=>667,201=>667,202=>667,203=>667,204=>278,205=>278,206=>278,207=>278,208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>584,216=>778,217=>722,218=>722,219=>722,220=>722,221=>667,222=>666,223=>611,224=>556,225=>556,226=>556,227=>556,228=>556,229=>556,230=>896,231=>500,232=>556,233=>556,234=>556,235=>556,236=>251,237=>251,238=>251,239=>251,240=>556,241=>556,242=>556,243=>556,244=>556,245=>556,246=>556,247=>584,248=>611,249=>556,250=>556,251=>556,252=>556,253=>500,254=>555,255=>500,256=>667,257=>556,258=>667,259=>556,260=>667,261=>556,262=>722,263=>500,264=>722,265=>500,266=>722,267=>500,268=>722,269=>500,270=>722,271=>722,272=>722,273=>556,274=>667,275=>556,276=>667,277=>556,278=>667,279=>556,280=>667,281=>556,282=>667,283=>556,284=>778,285=>556,286=>778,287=>556,288=>778,289=>556,290=>778,291=>556,292=>722,293=>556,294=>722,295=>556,296=>278,297=>251,298=>278,299=>251,300=>278,301=>251,302=>278,303=>222,304=>278,305=>251,306=>740,307=>384,308=>500,309=>222,310=>667,311=>500,312=>500,313=>556,314=>222,315=>556,316=>222,317=>556,318=>367,319=>556,320=>500,321=>556,322=>222,323=>722,324=>556,325=>722,326=>556,327=>722,328=>556,329=>702,330=>710,331=>556,332=>778,333=>556,334=>778,335=>556,336=>778,337=>556,338=>1000,339=>938,340=>722,341=>333,342=>722,343=>333,344=>722,345=>333,346=>667,347=>500,348=>667,349=>500,350=>667,351=>500,352=>667,353=>500,354=>611,355=>278,356=>611,357=>443,358=>611,359=>278,360=>722,361=>556,362=>722,363=>556,364=>722,365=>556,366=>722,367=>556,368=>722,369=>556,370=>722,371=>556,372=>944,373=>722,374=>667,375=>500,376=>667,377=>611,378=>500,379=>611,380=>500,381=>611,382=>500,383=>278,384=>556,385=>854,386=>668,387=>556,388=>717,389=>596,390=>722,391=>767,392=>575,393=>722,394=>899,395=>667,396=>556,397=>564,398=>667,399=>722,400=>667,401=>611,402=>278,403=>802,404=>667,405=>889,406=>278,407=>345,408=>667,409=>500,410=>345,411=>560,412=>833,413=>722,414=>556,415=>778,416=>788,417=>565,418=>944,419=>722,420=>842,421=>556,422=>666,423=>667,424=>500,425=>611,426=>333,427=>278,428=>611,429=>278,430=>611,431=>776,432=>624,433=>778,434=>722,435=>722,436=>556,437=>611,438=>500,439=>611,440=>611,441=>500,442=>500,443=>556,446=>556,447=>556,448=>260,449=>370,450=>584,451=>278,452=>1311,453=>1208,454=>1056,455=>1056,456=>778,457=>444,458=>1158,459=>944,460=>778,461=>667,462=>556,463=>278,464=>251,465=>778,466=>556,467=>722,468=>556,469=>722,470=>556,471=>722,472=>556,473=>722,474=>556,475=>722,476=>556,477=>556,478=>667,479=>556,480=>667,481=>556,482=>1000,483=>896,484=>778,485=>556,486=>778,487=>556,488=>667,489=>500,490=>778,491=>556,492=>778,493=>556,494=>611,495=>526,496=>222,497=>1333,498=>1222,499=>1056,500=>778,501=>556,503=>630,504=>722,505=>556,506=>667,507=>556,508=>1000,509=>896,510=>778,511=>611,512=>667,513=>556,514=>667,515=>556,516=>667,517=>556,518=>667,519=>556,520=>278,521=>251,522=>278,523=>251,524=>778,525=>556,526=>778,527=>556,528=>722,529=>333,530=>722,531=>333,532=>722,533=>556,534=>722,535=>556,536=>667,537=>500,538=>611,539=>278,540=>521,541=>393,542=>722,543=>556,548=>611,549=>500,550=>667,551=>556,552=>667,553=>556,554=>778,555=>556,556=>778,557=>556,558=>778,559=>556,560=>778,561=>556,562=>667,563=>500,567=>222,592=>556,593=>562,594=>571,595=>556,596=>500,597=>500,598=>608,599=>602,600=>556,601=>556,602=>804,603=>500,604=>499,605=>742,606=>510,607=>283,608=>596,609=>556,610=>556,611=>500,612=>556,613=>556,614=>556,615=>556,616=>268,617=>255,618=>278,619=>473,620=>427,621=>260,622=>618,623=>833,624=>833,625=>833,626=>594,627=>596,628=>567,629=>556,630=>778,631=>722,632=>730,633=>333,634=>333,635=>372,636=>333,637=>333,638=>386,639=>371,640=>546,641=>546,642=>500,643=>299,644=>298,645=>309,646=>463,647=>278,648=>278,649=>596,650=>626,651=>539,652=>500,653=>722,654=>500,655=>556,656=>565,657=>508,658=>526,659=>552,660=>556,661=>556,662=>556,663=>722,664=>778,665=>506,666=>520,667=>623,668=>558,669=>469,670=>550,671=>430,672=>602,673=>556,674=>556,675=>940,676=>956,677=>944,678=>689,679=>515,680=>764,681=>786,682=>660,683=>597,684=>530,685=>486,686=>570,687=>631,688=>333,689=>333,690=>167,691=>236,692=>236,693=>276,694=>359,695=>500,696=>330,697=>278,698=>454,699=>278,700=>278,701=>278,702=>333,703=>333,704=>333,705=>333,706=>333,707=>333,708=>333,709=>333,710=>333,711=>333,712=>333,713=>333,714=>333,715=>333,716=>272,717=>333,718=>333,719=>333,720=>333,721=>333,722=>333,723=>333,724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,731=>333,732=>333,733=>333,734=>333,735=>510,736=>333,737=>186,738=>333,739=>333,740=>334,741=>526,742=>526,743=>526,744=>526,745=>526,746=>519,747=>519,748=>333,749=>333,750=>333,751=>333,752=>333,753=>333,754=>333,755=>327,756=>261,757=>437,758=>437,759=>333,760=>278,761=>200,762=>200,763=>200,764=>200,765=>333,766=>333,767=>333,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,859=>0,860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,867=>0,868=>0,869=>0,870=>0,871=>0,872=>0,873=>0,874=>0,875=>0,876=>0,877=>0,878=>0,879=>0,884=>278,885=>199,890=>332,894=>278,900=>333,901=>333,902=>667,903=>275,904=>786,905=>828,906=>369,908=>833,910=>845,911=>778,912=>286,913=>667,914=>667,915=>582,916=>778,917=>667,918=>628,919=>722,920=>778,921=>278,922=>667,923=>667,924=>833,925=>722,926=>630,927=>778,928=>722,929=>667,931=>628,932=>611,933=>667,934=>717,935=>667,936=>745,937=>778,938=>278,939=>667,940=>596,941=>528,942=>548,943=>307,944=>538,945=>596,946=>542,947=>531,948=>564,949=>512,950=>455,951=>548,952=>525,953=>286,954=>510,955=>551,956=>540,957=>500,958=>470,959=>546,960=>619,961=>569,962=>547,963=>620,964=>492,965=>538,966=>741,967=>571,968=>662,969=>740,970=>286,971=>538,972=>546,973=>538,974=>740,977=>580,978=>742,979=>845,980=>620,981=>741,982=>740,983=>556,1008=>556,1009=>566,1012=>778,1013=>328,1024=>667,1025=>657,1026=>766,1027=>582,1028=>722,1029=>667,1030=>278,1031=>278,1032=>500,1033=>1080,1034=>1014,1035=>766,1036=>628,1037=>730,1038=>613,1039=>722,1040=>666,1041=>668,1042=>668,1043=>582,1044=>812,1045=>657,1046=>905,1047=>667,1048=>730,1049=>730,1050=>632,1051=>674,1052=>846,1053=>721,1054=>796,1055=>721,1056=>654,1057=>722,1058=>611,1059=>613,1060=>861,1061=>657,1062=>742,1063=>626,1064=>830,1065=>851,1066=>841,1067=>874,1068=>670,1069=>717,1070=>1001,1071=>686,1072=>552,1073=>550,1074=>506,1075=>404,1076=>602,1077=>547,1078=>755,1079=>499,1080=>567,1081=>567,1082=>489,1083=>517,1084=>618,1085=>558,1086=>550,1087=>557,1088=>577,1089=>520,1090=>444,1091=>468,1092=>865,1093=>466,1094=>578,1095=>498,1096=>692,1097=>712,1098=>664,1099=>690,1100=>521,1101=>520,1102=>759,1103=>543,1104=>549,1105=>549,1106=>577,1107=>404,1108=>519,1109=>502,1110=>224,1111=>251,1112=>223,1113=>813,1114=>853,1115=>577,1116=>489,1117=>567,1118=>468,1119=>558,1120=>942,1121=>693,1136=>762,1137=>662,1138=>800,1139=>550,1148=>942,1149=>693,1150=>942,1151=>693,1154=>468,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,1162=>763,1163=>583,1164=>689,1165=>526,1166=>652,1167=>572,1168=>601,1169=>397,1170=>589,1171=>392,1172=>591,1173=>475,1174=>927,1175=>830,1176=>661,1177=>493,1178=>658,1179=>510,1180=>675,1181=>519,1182=>684,1183=>514,1184=>839,1185=>653,1186=>740,1187=>570,1188=>987,1189=>714,1190=>1058,1191=>808,1192=>810,1193=>645,1194=>722,1195=>516,1196=>611,1197=>402,1198=>668,1199=>578,1200=>668,1201=>588,1202=>664,1203=>488,1204=>936,1205=>679,1206=>638,1207=>521,1208=>630,1209=>498,1210=>630,1211=>498,1212=>927,1213=>699,1214=>927,1215=>699,1216=>254,1217=>905,1218=>755,1219=>668,1220=>512,1221=>696,1222=>524,1223=>721,1224=>558,1225=>744,1226=>571,1227=>630,1228=>498,1229=>869,1230=>631,1231=>254,1232=>666,1233=>552,1234=>666,1235=>552,1236=>1000,1237=>879,1238=>657,1239=>547,1240=>722,1241=>543,1242=>722,1243=>543,1244=>905,1245=>755,1246=>667,1247=>499,1248=>611,1249=>540,1250=>730,1251=>567,1252=>730,1253=>567,1254=>796,1255=>550,1256=>800,1257=>550,1258=>800,1259=>550,1260=>717,1261=>520,1262=>613,1263=>468,1264=>613,1265=>468,1266=>613,1267=>468,1268=>626,1269=>498,1270=>582,1271=>395,1272=>874,1273=>690,1296=>667,1297=>491,1298=>665,1299=>509,1306=>778,1307=>575,1308=>934,1309=>712,1310=>627,1311=>489,1329=>720,1330=>696,1331=>750,1332=>725,1333=>699,1334=>751,1335=>446,1336=>703,1337=>790,1338=>656,1339=>697,1340=>390,1341=>852,1342=>791,1343=>698,1344=>585,1345=>656,1346=>651,1347=>658,1348=>759,1349=>595,1350=>772,1351=>603,1352=>703,1353=>648,1354=>698,1355=>744,1356=>738,1357=>703,1358=>739,1359=>660,1360=>693,1361=>623,1362=>385,1363=>788,1364=>632,1365=>775,1366=>714,1369=>333,1370=>222,1371=>200,1372=>333,1373=>333,1374=>333,1375=>333,1377=>833,1378=>551,1379=>572,1380=>569,1381=>546,1382=>581,1383=>353,1384=>551,1385=>568,1386=>569,1387=>552,1388=>276,1389=>795,1390=>535,1391=>553,1392=>537,1393=>512,1394=>568,1395=>552,1396=>531,1397=>249,1398=>527,1399=>405,1400=>551,1401=>390,1402=>833,1403=>509,1404=>523,1405=>545,1406=>584,1407=>879,1408=>552,1409=>552,1410=>301,1411=>884,1412=>578,1413=>556,1414=>668,1415=>544,1417=>278,1418=>333,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1467=>0,1468=>0,1469=>0,1470=>488,1471=>0,1472=>212,1473=>0,1474=>0,1475=>278,1476=>0,1488=>640,1489=>591,1490=>466,1491=>598,1492=>622,1493=>212,1494=>351,1495=>623,1496=>608,1497=>200,1498=>526,1499=>550,1500=>600,1501=>623,1502=>621,1503=>212,1504=>378,1505=>607,1506=>587,1507=>575,1508=>568,1509=>540,1510=>590,1511=>606,1512=>547,1513=>776,1514=>687,1520=>424,1521=>412,1522=>400,1523=>184,1524=>344,1792=>600,1793=>201,1794=>201,1795=>201,1796=>201,1797=>500,1798=>500,1799=>500,1800=>370,1801=>370,1802=>574,1803=>574,1804=>645,1805=>574,1807=>0,1808=>452,1809=>452,1810=>574,1811=>645,1812=>645,1813=>509,1814=>509,1815=>682,1816=>585,1817=>404,1818=>627,1819=>718,1820=>718,1821=>484,1822=>682,1823=>600,1824=>660,1825=>682,1826=>538,1827=>718,1828=>718,1829=>718,1830=>574,1831=>574,1832=>638,1833=>585,1834=>509,1835=>682,1836=>682,1840=>0,1841=>0,1842=>0,1843=>0,1844=>0,1845=>0,1846=>0,1847=>0,1848=>0,1849=>0,1850=>0,1851=>0,1852=>0,1853=>0,1854=>0,1855=>0,1856=>0,1857=>0,1858=>0,1859=>0,1860=>0,1861=>0,1862=>0,1863=>0,1864=>0,1865=>0,1866=>0,2304=>0,2305=>0,2306=>0,2307=>305,2308=>702,2309=>717,2310=>828,2311=>464,2312=>464,2313=>582,2314=>804,2315=>921,2316=>641,2317=>433,2318=>433,2319=>433,2320=>433,2321=>856,2322=>827,2323=>837,2324=>856,2325=>749,2326=>780,2327=>522,2328=>590,2329=>650,2330=>620,2331=>644,2332=>703,2333=>692,2334=>680,2335=>568,2336=>531,2337=>611,2338=>538,2339=>608,2340=>564,2341=>660,2342=>500,2343=>593,2344=>568,2345=>568,2346=>479,2347=>733,2348=>492,2349=>578,2350=>518,2351=>556,2352=>435,2353=>435,2354=>656,2355=>661,2356=>661,2357=>492,2358=>646,2359=>479,2360=>667,2361=>486,2364=>6,2365=>442,2366=>211,2367=>226,2368=>225,2369=>0,2370=>0,2371=>0,2372=>0,2373=>0,2374=>84,2375=>0,2376=>0,2377=>226,2378=>225,2379=>226,2380=>226,2381=>0,2382=>0,2384=>839,2385=>0,2386=>0,2387=>0,2388=>0,2389=>0,2392=>749,2393=>780,2394=>522,2395=>703,2396=>611,2397=>538,2398=>733,2399=>556,2400=>900,2401=>626,2402=>625,2403=>625,2404=>674,2405=>674,2406=>575,2407=>575,2408=>575,2409=>575,2410=>575,2411=>575,2412=>575,2413=>575,2414=>575,2415=>575,2416=>365,2417=>387,2418=>717,2425=>814,2426=>556,2427=>568,2428=>703,2429=>575,2430=>611,2431=>492,2433=>0,2434=>300,2435=>264,2437=>656,2438=>829,2439=>507,2440=>564,2441=>539,2442=>559,2443=>600,2444=>481,2447=>580,2448=>627,2451=>540,2452=>613,2453=>570,2454=>467,2455=>481,2456=>438,2457=>483,2458=>408,2459=>509,2460=>601,2461=>563,2462=>771,2463=>401,2464=>404,2465=>540,2466=>408,2467=>460,2468=>543,2469=>477,2470=>418,2471=>433,2472=>445,2474=>499,2475=>594,2476=>397,2477=>565,2478=>458,2479=>433,2480=>410,2482=>508,2486=>518,2487=>445,2488=>508,2489=>460,2492=>0,2493=>440,2494=>193,2495=>189,2496=>180,2497=>0,2498=>0,2499=>0,2500=>0,2503=>295,2504=>303,2507=>0,2508=>0,2509=>0,2510=>356,2519=>219,2524=>553,2525=>408,2527=>439,2528=>594,2529=>481,2530=>0,2531=>0,2534=>500,2535=>437,2536=>479,2537=>530,2538=>497,2539=>500,2540=>482,2541=>503,2542=>517,2543=>481,2544=>377,2545=>377,2546=>429,2547=>383,2548=>429,2549=>478,2550=>545,2551=>158,2552=>365,2553=>280,2554=>357,2561=>0,2562=>0,2563=>351,2565=>860,2566=>1088,2567=>869,2568=>928,2569=>723,2570=>723,2575=>665,2576=>857,2579=>716,2580=>858,2581=>682,2582=>634,2583=>696,2584=>744,2585=>649,2586=>674,2587=>656,2588=>653,2589=>629,2590=>639,2591=>641,2592=>657,2593=>650,2594=>653,2595=>651,2596=>640,2597=>634,2598=>662,2599=>630,2600=>625,2602=>645,2603=>653,2604=>624,2605=>613,2606=>658,2607=>734,2608=>620,2610=>676,2611=>719,2613=>626,2614=>666,2616=>666,2617=>614,2620=>0,2622=>286,2623=>322,2624=>301,2625=>0,2626=>0,2631=>0,2632=>0,2635=>0,2636=>0,2637=>0,2641=>0,2649=>636,2650=>762,2651=>652,2652=>653,2654=>656,2662=>672,2663=>543,2664=>622,2665=>622,2666=>576,2667=>589,2668=>509,2669=>645,2670=>661,2671=>655,2672=>0,2673=>0,2674=>666,2675=>726,2676=>1217,2677=>0,2689=>22,2690=>23,2691=>0,2693=>775,2694=>979,2695=>594,2696=>568,2697=>525,2698=>724,2699=>942,2700=>558,2701=>775,2703=>775,2704=>775,2705=>979,2707=>979,2708=>979,2709=>610,2710=>706,2711=>623,2712=>610,2713=>601,2714=>614,2715=>642,2716=>684,2717=>634,2718=>644,2719=>509,2720=>541,2721=>539,2722=>524,2723=>657,2724=>547,2725=>616,2726=>494,2727=>601,2728=>627,2730=>524,2731=>620,2732=>691,2733=>687,2734=>468,2735=>590,2736=>509,2738=>571,2739=>687,2741=>526,2742=>620,2743=>575,2744=>620,2745=>549,2748=>53,2749=>415,2750=>241,2751=>186,2752=>217,2753=>32,2754=>21,2755=>38,2756=>27,2757=>45,2759=>41,2760=>46,2761=>207,2763=>190,2764=>182,2765=>16,2768=>962,2784=>949,2785=>609,2786=>0,2787=>0,2790=>479,2791=>502,2792=>484,2793=>471,2794=>501,2795=>527,2796=>462,2797=>524,2798=>454,2799=>495,2801=>752,4256=>587,4257=>620,4258=>642,4259=>815,4260=>600,4261=>595,4262=>799,4263=>893,4264=>622,4265=>597,4266=>939,4267=>602,4268=>603,4269=>790,4270=>587,4271=>623,4272=>799,4273=>601,4274=>792,4275=>724,4276=>847,4277=>599,4278=>812,4279=>603,4280=>653,4281=>590,4282=>754,4283=>596,4284=>653,4285=>651,4286=>596,4287=>888,4288=>593,4304=>436,4305=>491,4306=>528,4307=>692,4308=>447,4309=>447,4310=>628,4311=>734,4312=>449,4313=>445,4314=>843,4315=>449,4316=>449,4317=>682,4318=>449,4319=>480,4320=>682,4321=>468,4322=>710,4323=>623,4324=>697,4325=>447,4326=>702,4327=>447,4328=>470,4329=>440,4330=>632,4331=>449,4332=>470,4333=>536,4334=>449,4335=>656,4336=>474,4337=>630,4338=>394,4339=>419,4340=>422,4341=>436,4345=>528,4347=>515,4348=>449,5024=>678,5025=>756,5026=>604,5027=>770,5028=>969,5029=>207,5030=>633,5031=>800,5032=>474,5033=>689,5034=>672,5035=>446,5036=>637,5037=>776,5038=>511,5039=>723,5040=>528,5041=>591,5042=>839,5043=>963,5044=>615,5045=>563,5046=>705,5047=>800,5048=>558,5049=>880,5050=>966,5051=>675,5052=>527,5053=>733,5054=>779,5055=>547,5056=>756,5057=>834,5058=>604,5059=>632,5060=>605,5061=>1051,5062=>657,5063=>842,5064=>748,5065=>1192,5066=>842,5067=>632,5068=>668,5069=>928,5070=>626,5071=>655,5072=>502,5073=>696,5074=>642,5075=>518,5076=>952,5077=>622,5078=>710,5079=>521,5080=>556,5081=>656,5082=>622,5083=>881,5084=>760,5085=>564,5086=>567,5087=>712,5088=>717,5089=>838,5090=>617,5091=>689,5092=>767,5093=>728,5094=>690,5095=>551,5096=>859,5097=>957,5098=>900,5099=>779,5100=>805,5101=>621,5102=>604,5103=>842,5104=>653,5105=>737,5106=>601,5107=>901,5108=>655,5121=>941,5122=>941,5123=>941,5124=>941,5125=>726,5126=>726,5127=>726,5128=>726,5129=>726,5130=>726,5131=>726,5132=>941,5133=>941,5134=>941,5135=>941,5136=>941,5137=>941,5138=>882,5139=>882,5140=>882,5141=>882,5142=>726,5143=>882,5144=>882,5145=>882,5146=>882,5147=>726,5148=>494,5149=>347,5150=>447,5151=>329,5152=>329,5153=>452,5154=>452,5155=>276,5156=>451,5157=>463,5158=>289,5159=>216,5160=>400,5161=>400,5162=>400,5163=>1169,5164=>941,5165=>810,5166=>1012,5167=>941,5168=>941,5169=>941,5170=>941,5171=>726,5172=>726,5173=>726,5174=>726,5175=>726,5176=>726,5177=>726,5178=>941,5179=>941,5180=>941,5181=>941,5182=>941,5183=>941,5184=>726,5185=>882,5186=>726,5187=>882,5188=>882,5189=>726,5190=>882,5191=>726,5192=>726,5193=>390,5194=>159,5195=>332,5196=>742,5197=>742,5198=>742,5199=>742,5200=>744,5201=>744,5202=>744,5203=>744,5204=>744,5205=>744,5206=>744,5207=>914,5208=>912,5209=>912,5210=>914,5211=>912,5212=>914,5213=>744,5214=>916,5215=>744,5216=>916,5217=>916,5218=>744,5219=>916,5220=>744,5221=>915,5222=>477,5223=>855,5224=>855,5225=>855,5226=>855,5227=>592,5228=>592,5229=>592,5230=>592,5231=>592,5232=>610,5233=>713,5234=>592,5235=>608,5236=>718,5237=>764,5238=>764,5239=>718,5240=>764,5241=>718,5242=>718,5243=>763,5244=>735,5245=>763,5246=>764,5247=>718,5248=>764,5249=>734,5250=>763,5251=>361,5252=>361,5253=>708,5254=>708,5255=>708,5256=>651,5257=>592,5258=>592,5259=>592,5260=>592,5261=>592,5262=>610,5263=>713,5264=>592,5265=>608,5266=>608,5267=>763,5268=>763,5269=>608,5270=>763,5271=>608,5272=>609,5273=>763,5274=>627,5275=>763,5276=>763,5277=>609,5278=>763,5279=>625,5280=>763,5281=>361,5282=>361,5283=>592,5284=>592,5285=>592,5286=>592,5287=>592,5288=>610,5289=>713,5290=>592,5291=>608,5292=>592,5293=>763,5294=>763,5295=>592,5296=>763,5297=>592,5298=>592,5299=>763,5300=>610,5301=>763,5302=>763,5303=>592,5304=>763,5305=>608,5306=>763,5307=>346,5308=>276,5309=>346,5310=>331,5311=>562,5312=>712,5313=>712,5314=>712,5315=>712,5316=>712,5317=>712,5318=>712,5319=>712,5320=>712,5321=>868,5322=>828,5323=>828,5324=>712,5325=>828,5326=>712,5327=>712,5328=>466,5329=>452,5330=>466,5331=>712,5332=>712,5333=>712,5334=>712,5335=>712,5336=>712,5337=>712,5338=>712,5339=>712,5340=>868,5341=>828,5342=>828,5343=>868,5344=>828,5345=>868,5346=>712,5347=>828,5348=>712,5349=>828,5350=>828,5351=>712,5352=>828,5353=>712,5354=>466,5355=>262,5356=>624,5357=>504,5358=>524,5359=>504,5360=>521,5361=>504,5362=>520,5363=>624,5364=>504,5365=>520,5366=>620,5367=>660,5368=>659,5369=>620,5370=>676,5371=>620,5372=>620,5373=>660,5374=>637,5375=>676,5376=>659,5377=>620,5378=>659,5379=>636,5380=>659,5381=>309,5382=>365,5383=>309,5384=>458,5385=>315,5386=>315,5387=>347,5388=>1010,5389=>1020,5390=>872,5391=>872,5392=>830,5393=>830,5394=>830,5395=>854,5396=>854,5397=>854,5398=>854,5399=>1001,5400=>1002,5401=>1001,5402=>1002,5403=>1001,5404=>1002,5405=>998,5406=>998,5407=>998,5408=>998,5409=>998,5410=>998,5411=>998,5412=>998,5413=>594,5414=>516,5415=>516,5416=>516,5417=>516,5418=>516,5419=>532,5420=>636,5421=>516,5422=>532,5423=>671,5424=>672,5425=>671,5426=>672,5427=>671,5428=>672,5429=>671,5430=>672,5431=>687,5432=>672,5433=>671,5434=>672,5435=>671,5436=>688,5437=>671,5438=>372,5439=>505,5440=>464,5441=>460,5442=>830,5443=>830,5444=>830,5445=>830,5446=>830,5447=>830,5448=>556,5449=>556,5450=>556,5451=>556,5452=>556,5453=>556,5454=>691,5455=>712,5456=>343,5457=>362,5458=>624,5459=>817,5460=>817,5461=>817,5462=>817,5463=>824,5464=>824,5465=>824,5466=>824,5467=>980,5468=>972,5469=>465,5470=>742,5471=>742,5472=>742,5473=>742,5474=>742,5475=>742,5476=>742,5477=>742,5478=>742,5479=>742,5480=>898,5481=>848,5482=>410,5483=>742,5484=>742,5485=>744,5486=>744,5487=>825,5488=>742,5489=>742,5490=>744,5491=>744,5492=>800,5493=>800,5494=>800,5495=>800,5496=>800,5497=>800,5498=>800,5499=>493,5500=>592,5501=>460,5502=>875,5503=>875,5504=>875,5505=>777,5506=>795,5507=>875,5508=>875,5509=>644,5510=>592,5511=>592,5512=>592,5513=>592,5514=>782,5515=>782,5516=>782,5517=>782,5518=>1056,5519=>1056,5520=>1056,5521=>687,5522=>705,5523=>1056,5524=>1056,5525=>524,5526=>782,5527=>646,5528=>646,5529=>646,5530=>646,5531=>712,5532=>712,5533=>712,5534=>712,5535=>466,5536=>772,5537=>772,5538=>772,5539=>772,5540=>772,5541=>772,5542=>466,5543=>638,5544=>638,5545=>638,5546=>638,5547=>638,5548=>638,5549=>638,5550=>388,5551=>488,5552=>515,5553=>515,5554=>515,5555=>515,5556=>592,5557=>592,5558=>592,5559=>592,5560=>542,5561=>542,5562=>542,5563=>542,5564=>561,5565=>561,5566=>561,5567=>561,5568=>630,5569=>630,5570=>630,5571=>630,5572=>941,5573=>941,5574=>726,5575=>726,5576=>726,5577=>726,5578=>941,5579=>941,5580=>726,5581=>726,5582=>726,5583=>726,5584=>941,5585=>941,5586=>726,5587=>726,5588=>730,5589=>726,5590=>941,5591=>941,5592=>726,5593=>726,5594=>730,5595=>726,5596=>830,5597=>830,5598=>830,5599=>830,5600=>830,5601=>830,5602=>830,5603=>830,5604=>830,5605=>830,5606=>830,5607=>830,5608=>830,5609=>830,5610=>830,5611=>830,5612=>830,5613=>830,5614=>400,5615=>722,5616=>722,5617=>722,5618=>722,5619=>722,5620=>722,5621=>722,5622=>722,5623=>722,5624=>722,5625=>722,5626=>722,5627=>722,5628=>722,5629=>722,5630=>722,5631=>722,5632=>722,5633=>522,5634=>592,5635=>592,5636=>712,5637=>712,5638=>712,5639=>712,5640=>722,5641=>722,5642=>722,5643=>722,5644=>722,5645=>722,5646=>830,5647=>830,5648=>704,5649=>704,5650=>704,5651=>704,5652=>647,5653=>647,5654=>647,5655=>830,5656=>830,5657=>830,5658=>830,5659=>830,5660=>647,5661=>647,5662=>830,5663=>830,5664=>830,5665=>830,5666=>830,5667=>830,5668=>465,5669=>465,5670=>465,5671=>465,5672=>830,5673=>830,5674=>574,5675=>574,5676=>574,5677=>574,5678=>609,5679=>609,5680=>647,5681=>647,5682=>647,5683=>647,5684=>739,5685=>739,5686=>754,5687=>754,5688=>754,5689=>754,5690=>830,5691=>830,5692=>755,5693=>755,5694=>755,5695=>755,5696=>830,5697=>830,5698=>830,5699=>830,5700=>830,5701=>830,5702=>427,5703=>427,5704=>830,5705=>830,5706=>830,5707=>830,5708=>830,5709=>830,5710=>830,5711=>830,5712=>718,5713=>718,5714=>718,5715=>718,5716=>830,5717=>830,5718=>718,5719=>718,5720=>718,5721=>718,5722=>525,5723=>830,5724=>830,5725=>718,5726=>718,5727=>718,5728=>718,5729=>830,5730=>830,5731=>718,5732=>718,5733=>718,5734=>718,5735=>722,5736=>722,5737=>722,5738=>722,5739=>722,5740=>722,5741=>822,5742=>370,5743=>875,5744=>1056,5745=>1316,5746=>1314,5747=>963,5748=>981,5749=>1314,5750=>1330,5751=>668,5752=>778,5753=>778,5754=>698,5755=>698,5756=>778,5757=>778,5758=>400,5759=>400,6320=>726,6321=>726,6322=>726,6323=>882,6324=>726,6325=>726,6326=>786,6327=>744,6328=>592,6329=>764,6330=>592,6331=>712,6332=>712,6333=>712,6334=>504,6335=>504,6336=>830,6337=>830,6338=>1001,6339=>516,6340=>516,6341=>556,6342=>824,6343=>892,6344=>824,6345=>892,6346=>712,6347=>824,6348=>712,6349=>824,6350=>996,6351=>964,6352=>964,6353=>726,6354=>726,6355=>686,6356=>525,6357=>452,6358=>361,6359=>361,6360=>346,6361=>466,6362=>310,6363=>486,6364=>575,6365=>575,6366=>223,6367=>216,6368=>984,6369=>556,6370=>556,6371=>906,6372=>858,6373=>906,6374=>744,6375=>744,6376=>758,6377=>592,6378=>808,6379=>646,6380=>630,6381=>906,6382=>722,6383=>722,6384=>906,6385=>647,6386=>984,6387=>280,6388=>319,6389=>355,7680=>667,7681=>556,7682=>667,7683=>556,7684=>667,7685=>556,7686=>667,7687=>556,7688=>722,7689=>500,7690=>722,7691=>556,7692=>722,7693=>556,7694=>722,7695=>556,7696=>722,7697=>556,7698=>722,7699=>556,7700=>667,7701=>556,7702=>667,7703=>556,7704=>667,7705=>556,7706=>667,7707=>556,7708=>667,7709=>556,7710=>611,7711=>278,7712=>778,7713=>556,7714=>722,7715=>556,7716=>722,7717=>556,7718=>722,7719=>556,7720=>722,7721=>556,7722=>722,7723=>556,7724=>278,7725=>222,7726=>278,7727=>251,7728=>667,7729=>500,7730=>667,7731=>500,7732=>667,7733=>500,7734=>556,7735=>222,7736=>556,7737=>222,7738=>556,7739=>222,7740=>556,7741=>222,7742=>833,7743=>833,7744=>833,7745=>833,7746=>833,7747=>833,7748=>722,7749=>556,7750=>722,7751=>556,7752=>722,7753=>556,7754=>722,7755=>556,7756=>778,7757=>556,7758=>778,7759=>556,7760=>778,7761=>556,7762=>778,7763=>556,7764=>667,7765=>556,7766=>667,7767=>556,7768=>722,7769=>333,7770=>722,7771=>333,7772=>722,7773=>333,7774=>722,7775=>333,7776=>667,7777=>500,7778=>667,7779=>500,7780=>667,7781=>500,7782=>667,7783=>500,7784=>667,7785=>500,7786=>611,7787=>278,7788=>611,7789=>278,7790=>611,7791=>278,7792=>611,7793=>278,7794=>722,7795=>556,7796=>722,7797=>556,7798=>722,7799=>556,7800=>722,7801=>556,7802=>722,7803=>556,7804=>667,7805=>500,7806=>667,7807=>500,7808=>944,7809=>722,7810=>944,7811=>722,7812=>944,7813=>722,7814=>944,7815=>722,7816=>944,7817=>722,7818=>667,7819=>500,7820=>667,7821=>500,7822=>667,7823=>500,7824=>611,7825=>500,7826=>611,7827=>500,7828=>611,7829=>500,7830=>556,7831=>278,7832=>722,7833=>500,7834=>555,7835=>278,7840=>667,7841=>556,7842=>667,7843=>556,7844=>667,7845=>556,7846=>667,7847=>556,7848=>667,7849=>556,7850=>667,7851=>556,7852=>667,7853=>556,7854=>667,7855=>556,7856=>667,7857=>556,7858=>667,7859=>556,7860=>667,7861=>556,7862=>667,7863=>556,7864=>667,7865=>556,7866=>667,7867=>556,7868=>667,7869=>556,7870=>667,7871=>556,7872=>667,7873=>556,7874=>667,7875=>556,7876=>667,7877=>556,7878=>667,7879=>556,7880=>278,7881=>251,7882=>278,7883=>222,7884=>778,7885=>556,7886=>778,7887=>556,7888=>778,7889=>556,7890=>778,7891=>556,7892=>778,7893=>556,7894=>778,7895=>556,7896=>778,7897=>556,7898=>788,7899=>565,7900=>788,7901=>565,7902=>788,7903=>565,7904=>788,7905=>565,7906=>788,7907=>565,7908=>722,7909=>556,7910=>722,7911=>556,7912=>776,7913=>624,7914=>776,7915=>624,7916=>776,7917=>624,7918=>776,7919=>624,7920=>776,7921=>624,7922=>667,7923=>500,7924=>667,7925=>500,7926=>667,7927=>500,7928=>667,7929=>500,7936=>596,7937=>596,7938=>596,7939=>596,7940=>596,7941=>596,7942=>596,7943=>596,7944=>667,7945=>667,7946=>742,7947=>756,7948=>692,7949=>699,7950=>673,7951=>667,7952=>512,7953=>512,7954=>512,7955=>512,7956=>512,7957=>512,7960=>730,7961=>714,7962=>900,7963=>882,7964=>867,7965=>879,7968=>548,7969=>548,7970=>548,7971=>548,7972=>548,7973=>548,7974=>548,7975=>548,7976=>772,7977=>778,7978=>945,7979=>947,7980=>943,7981=>946,7982=>853,7983=>853,7984=>286,7985=>286,7986=>286,7987=>286,7988=>286,7989=>286,7990=>286,7991=>286,7992=>322,7993=>321,7994=>482,7995=>485,7996=>477,7997=>484,7998=>394,7999=>390,8000=>546,8001=>546,8002=>546,8003=>546,8004=>546,8005=>546,8008=>775,8009=>784,8010=>990,8011=>987,8012=>887,8013=>897,8016=>538,8017=>538,8018=>538,8019=>538,8020=>538,8021=>538,8022=>538,8023=>538,8025=>747,8027=>915,8029=>971,8031=>863,8032=>740,8033=>740,8034=>740,8035=>740,8036=>740,8037=>740,8038=>740,8039=>740,8040=>769,8041=>774,8042=>972,8043=>970,8044=>879,8045=>918,8046=>901,8047=>901,8048=>596,8049=>596,8050=>512,8051=>512,8052=>548,8053=>548,8054=>286,8055=>286,8056=>546,8057=>546,8058=>538,8059=>538,8060=>740,8061=>740,8064=>596,8065=>596,8066=>596,8067=>596,8068=>596,8069=>596,8070=>596,8071=>596,8072=>830,8073=>828,8074=>916,8075=>916,8076=>853,8077=>860,8078=>835,8079=>827,8080=>548,8081=>548,8082=>548,8083=>548,8084=>548,8085=>548,8086=>548,8087=>548,8088=>928,8089=>931,8090=>1104,8091=>1109,8092=>1099,8093=>1102,8094=>1009,8095=>1012,8096=>740,8097=>740,8098=>740,8099=>740,8100=>740,8101=>740,8102=>740,8103=>740,8104=>934,8105=>934,8106=>1130,8107=>1128,8108=>1045,8109=>1077,8110=>1062,8111=>1065,8112=>596,8113=>596,8114=>596,8115=>596,8116=>596,8118=>596,8119=>596,8120=>667,8121=>667,8122=>667,8123=>667,8124=>832,8125=>333,8126=>200,8127=>333,8128=>333,8129=>333,8130=>548,8131=>548,8132=>548,8134=>548,8135=>548,8136=>833,8137=>776,8138=>944,8139=>896,8140=>875,8141=>400,8142=>400,8143=>333,8144=>286,8145=>286,8146=>286,8147=>286,8150=>286,8151=>286,8152=>278,8153=>278,8154=>385,8155=>376,8157=>400,8158=>400,8159=>333,8160=>538,8161=>538,8162=>538,8163=>538,8164=>569,8165=>569,8166=>538,8167=>514,8168=>667,8169=>667,8170=>817,8171=>827,8172=>741,8173=>393,8174=>393,8175=>333,8178=>740,8179=>740,8180=>740,8182=>740,8183=>740,8184=>833,8185=>833,8186=>848,8187=>814,8188=>939,8189=>333,8190=>333,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>556,8200=>278,8201=>200,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>556,8211=>556,8212=>1000,8213=>1000,8214=>312,8215=>566,8216=>222,8217=>221,8218=>222,8219=>221,8220=>333,8221=>333,8222=>333,8223=>333,8224=>556,8225=>556,8226=>350,8227=>350,8228=>278,8229=>666,8230=>1000,8231=>278,8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>500,8240=>1000,8241=>1360,8242=>278,8243=>469,8244=>680,8245=>278,8246=>469,8247=>680,8248=>376,8249=>250,8250=>250,8251=>622,8252=>556,8253=>556,8254=>556,8255=>658,8256=>658,8257=>438,8258=>840,8259=>400,8260=>167,8261=>334,8262=>334,8263=>1112,8264=>834,8265=>834,8266=>556,8267=>537,8268=>537,8269=>537,8270=>389,8271=>278,8272=>658,8273=>389,8274=>634,8275=>500,8276=>658,8277=>787,8278=>515,8279=>855,8280=>722,8281=>725,8282=>224,8283=>722,8284=>604,8285=>224,8286=>224,8287=>0,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>350,8305=>140,8308=>350,8309=>350,8310=>350,8311=>350,8312=>350,8313=>350,8314=>350,8315=>350,8316=>350,8317=>350,8318=>350,8319=>360,8320=>350,8321=>350,8322=>350,8323=>350,8324=>350,8325=>350,8326=>350,8327=>350,8328=>350,8329=>350,8330=>350,8331=>350,8332=>350,8333=>350,8334=>350,8336=>363,8337=>366,8338=>360,8339=>325,8340=>350,8353=>615,8354=>601,8355=>611,8356=>556,8357=>833,8358=>682,8359=>1317,8360=>1202,8361=>879,8362=>869,8363=>538,8364=>655,8365=>667,8366=>611,8368=>570,8369=>684,8370=>717,8371=>667,8372=>667,8373=>640,8376=>516,8400=>0,8401=>0,8402=>0,8403=>0,8404=>0,8405=>0,8406=>0,8407=>0,8408=>0,8409=>0,8410=>0,8411=>0,8412=>0,8413=>0,8414=>0,8415=>0,8416=>0,8417=>0,8420=>0,8421=>0,8422=>0,8423=>0,8424=>0,8425=>0,8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,8432=>0,8448=>870,8449=>859,8450=>722,8451=>1017,8452=>556,8453=>796,8454=>832,8455=>667,8456=>722,8457=>919,8459=>969,8460=>615,8461=>647,8462=>556,8463=>572,8464=>809,8465=>606,8466=>900,8467=>481,8468=>747,8469=>722,8470=>934,8471=>882,8472=>600,8473=>667,8474=>778,8475=>850,8476=>699,8477=>722,8478=>834,8479=>722,8480=>1043,8481=>1261,8482=>1000,8483=>667,8484=>611,8486=>778,8487=>778,8488=>512,8489=>286,8490=>667,8491=>667,8492=>908,8493=>623,8494=>556,8495=>469,8496=>562,8497=>895,8498=>588,8499=>1080,8501=>640,8502=>592,8503=>466,8504=>598,8505=>278,8506=>868,8507=>1338,8508=>619,8510=>582,8511=>722,8513=>778,8514=>556,8515=>556,8516=>667,8522=>516,8523=>655,8525=>1200,8526=>435,8531=>869,8532=>869,8533=>869,8534=>869,8535=>869,8536=>869,8537=>869,8538=>869,8539=>869,8540=>869,8541=>869,8542=>869,8543=>869,8544=>278,8545=>556,8546=>834,8547=>945,8548=>667,8549=>945,8550=>1223,8551=>1501,8552=>945,8553=>667,8554=>945,8555=>1223,8556=>556,8557=>722,8558=>722,8559=>833,8560=>222,8561=>444,8562=>666,8563=>722,8564=>500,8565=>722,8566=>944,8567=>1166,8568=>722,8569=>500,8570=>722,8571=>944,8572=>222,8573=>500,8574=>556,8575=>833,8592=>987,8593=>603,8594=>987,8595=>603,8596=>1042,8597=>1042,8598=>800,8599=>800,8600=>800,8601=>800,8614=>987,8617=>987,8618=>987,8629=>658,8636=>987,8637=>987,8638=>380,8639=>393,8640=>987,8641=>987,8642=>380,8643=>379,8652=>987,8656=>987,8657=>603,8658=>987,8659=>603,8660=>1042,8661=>603,8669=>1092,8704=>667,8706=>556,8707=>667,8709=>823,8710=>711,8711=>711,8712=>584,8713=>584,8714=>584,8715=>584,8716=>584,8717=>713,8719=>823,8720=>823,8721=>804,8722=>584,8723=>584,8724=>584,8725=>510,8726=>392,8727=>584,8729=>584,8730=>542,8733=>713,8734=>713,8736=>768,8739=>200,8740=>288,8741=>312,8742=>340,8743=>603,8744=>603,8745=>768,8746=>768,8747=>556,8748=>796,8749=>956,8750=>556,8756=>863,8764=>584,8765=>584,8766=>573,8768=>244,8769=>584,8770=>584,8771=>584,8772=>584,8773=>584,8774=>584,8775=>584,8776=>584,8777=>584,8781=>554,8784=>584,8800=>584,8801=>584,8802=>584,8804=>584,8805=>584,8810=>955,8811=>955,8813=>554,8814=>584,8815=>584,8816=>584,8817=>584,8818=>584,8819=>584,8826=>584,8827=>584,8828=>584,8829=>584,8832=>584,8833=>584,8834=>584,8835=>584,8836=>584,8837=>584,8838=>584,8839=>584,8840=>584,8841=>584,8844=>768,8847=>636,8848=>636,8849=>636,8850=>636,8851=>636,8852=>636,8853=>768,8854=>768,8855=>768,8856=>768,8857=>768,8866=>658,8867=>658,8868=>658,8869=>658,8870=>600,8871=>608,8882=>636,8883=>636,8884=>636,8885=>636,8896=>744,8897=>744,8898=>764,8899=>764,8901=>278,8902=>471,8904=>710,8928=>584,8929=>584,8930=>636,8931=>636,8960=>823,8968=>456,8969=>455,8970=>455,8971=>456,8992=>556,8993=>556,8994=>658,8995=>658,9001=>329,9002=>329,9115=>384,9116=>384,9117=>384,9118=>384,9119=>384,9120=>384,9121=>388,9122=>388,9123=>388,9124=>388,9125=>388,9126=>388,9134=>556,9216=>800,9217=>800,9218=>800,9219=>800,9220=>800,9221=>800,9222=>800,9223=>800,9224=>800,9225=>800,9226=>800,9227=>800,9228=>800,9229=>800,9230=>800,9231=>800,9232=>800,9233=>800,9234=>800,9235=>800,9236=>800,9237=>800,9238=>800,9239=>800,9240=>800,9241=>800,9242=>800,9243=>800,9244=>800,9245=>800,9246=>800,9247=>800,9248=>800,9249=>800,9250=>556,9251=>500,9252=>800,9312=>788,9313=>788,9314=>788,9315=>788,9316=>788,9317=>788,9318=>788,9319=>788,9320=>788,9321=>788,9472=>1000,9473=>1000,9474=>1000,9475=>1000,9476=>1000,9477=>1000,9478=>1000,9479=>1000,9480=>1000,9481=>1000,9482=>1000,9483=>1000,9484=>1000,9485=>1000,9486=>1000,9487=>1000,9488=>1000,9489=>1000,9490=>1000,9491=>1000,9492=>1000,9493=>1000,9494=>1000,9495=>1000,9496=>1000,9497=>1000,9498=>1000,9499=>1000,9500=>1000,9501=>1000,9502=>1000,9503=>1000,9504=>1000,9505=>1000,9506=>1000,9507=>1000,9508=>1000,9509=>1000,9510=>1000,9511=>1000,9512=>1000,9513=>1000,9514=>1000,9515=>1000,9516=>1000,9517=>1000,9518=>1000,9519=>1000,9520=>1000,9521=>1000,9522=>1000,9523=>1000,9524=>1000,9525=>1000,9526=>1000,9527=>1000,9528=>1000,9529=>1000,9530=>1000,9531=>1000,9532=>1000,9533=>1000,9534=>1000,9535=>1000,9536=>1000,9537=>1000,9538=>1000,9539=>1000,9540=>1000,9541=>1000,9542=>1000,9543=>1000,9544=>1000,9545=>1000,9546=>1000,9547=>1000,9552=>1000,9553=>1000,9554=>1000,9555=>1000,9556=>1000,9557=>1000,9558=>1000,9559=>1000,9560=>1000,9561=>1000,9562=>1000,9563=>1000,9564=>1000,9565=>1000,9566=>1000,9567=>1000,9568=>1000,9569=>1000,9570=>1000,9571=>1000,9572=>1000,9573=>1000,9574=>1000,9575=>1000,9576=>1000,9577=>1000,9578=>1000,9579=>1000,9580=>1000,9600=>1000,9601=>1000,9602=>1000,9603=>1000,9604=>1000,9605=>1000,9606=>1000,9607=>1000,9608=>1000,9609=>1000,9610=>1000,9611=>1000,9612=>1000,9613=>1000,9614=>1000,9615=>1000,9616=>1000,9617=>1000,9618=>1000,9619=>1000,9620=>1000,9621=>1000,9622=>1000,9623=>1000,9624=>1000,9625=>1000,9626=>1000,9627=>1000,9628=>1000,9629=>1000,9630=>1000,9631=>1000,9632=>800,9633=>800,9634=>800,9635=>800,9636=>800,9637=>800,9638=>800,9639=>800,9640=>800,9641=>800,9642=>625,9643=>625,9644=>800,9645=>800,9646=>800,9647=>800,9648=>1000,9649=>1000,9650=>892,9651=>892,9652=>669,9653=>669,9654=>892,9655=>892,9656=>669,9657=>669,9658=>891,9659=>891,9660=>892,9661=>892,9662=>669,9663=>669,9664=>892,9665=>892,9666=>669,9667=>669,9668=>891,9669=>891,9670=>788,9671=>788,9672=>788,9673=>800,9674=>489,9675=>800,9676=>800,9677=>800,9678=>800,9679=>800,9680=>800,9681=>800,9682=>800,9683=>800,9684=>800,9685=>800,9686=>800,9687=>800,9688=>350,9689=>800,9690=>800,9691=>800,9692=>800,9693=>800,9694=>800,9695=>799,9696=>800,9697=>800,9698=>1000,9699=>1000,9700=>1000,9701=>1000,9702=>350,9703=>800,9704=>800,9705=>800,9706=>800,9707=>800,9708=>892,9709=>892,9710=>892,9711=>882,9712=>800,9713=>800,9714=>800,9715=>800,9716=>800,9717=>800,9718=>800,9719=>800,9720=>800,9721=>800,9722=>800,9723=>800,9724=>800,9725=>800,9726=>800,9727=>800,9772=>929,9824=>626,9825=>694,9826=>595,9827=>776,9828=>626,9829=>694,9830=>595,9831=>776,9833=>333,9834=>555,9835=>722,9836=>722,9837=>415,9838=>377,9839=>402,10048=>1161,10752=>791,10753=>791,10754=>791,10755=>764,10756=>764,10761=>584,11568=>352,11569=>872,11570=>872,11571=>720,11572=>720,11573=>720,11574=>544,11575=>709,11576=>709,11577=>720,11578=>720,11579=>596,11580=>698,11581=>742,11582=>574,11583=>742,11584=>872,11585=>872,11586=>292,11587=>696,11588=>696,11589=>720,11590=>544,11591=>724,11592=>756,11593=>600,11594=>672,11595=>888,11596=>836,11597=>524,11598=>720,11599=>260,11600=>836,11601=>224,11602=>678,11603=>380,11604=>872,11605=>872,11606=>720,11607=>268,11608=>640,11609=>872,11610=>872,11611=>770,11612=>424,11613=>720,11614=>770,11615=>720,11616=>709,11617=>720,11618=>541,11619=>828,11620=>454,11621=>828,11631=>442,11799=>333,42240=>698,42241=>698,42242=>676,42243=>800,42244=>800,42245=>850,42246=>930,42247=>720,42248=>756,42249=>750,42250=>750,42251=>750,42252=>540,42253=>540,42254=>780,42255=>780,42256=>1082,42257=>1082,42258=>780,42259=>780,42260=>720,42261=>774,42262=>600,42263=>600,42264=>600,42265=>600,42266=>983,42267=>983,42268=>749,42269=>749,42270=>1080,42271=>890,42272=>869,42273=>720,42274=>739,42275=>983,42276=>780,42277=>840,42278=>780,42279=>424,42280=>840,42281=>967,42282=>462,42283=>952,42284=>735,42285=>735,42286=>780,42287=>750,42288=>869,42289=>772,42290=>772,42291=>676,42292=>762,42293=>674,42294=>674,42295=>488,42296=>604,42297=>822,42298=>1059,42299=>851,42300=>851,42301=>689,42302=>844,42303=>708,42304=>907,42305=>907,42306=>907,42307=>612,42308=>612,42309=>840,42310=>775,42311=>544,42312=>774,42313=>540,42314=>704,42315=>723,42316=>887,42317=>887,42318=>676,42319=>817,42320=>762,42321=>887,42322=>824,42323=>890,42324=>705,42325=>780,42326=>705,42327=>533,42328=>523,42329=>694,42330=>772,42331=>772,42332=>772,42333=>892,42334=>711,42335=>711,42336=>832,42337=>832,42338=>944,42339=>944,42340=>832,42341=>928,42342=>743,42343=>735,42344=>731,42345=>782,42346=>595,42347=>890,42348=>680,42349=>887,42350=>815,42351=>510,42352=>848,42353=>700,42354=>700,42355=>700,42356=>724,42357=>724,42358=>633,42359=>633,42360=>813,42361=>834,42362=>625,42363=>887,42364=>592,42365=>772,42366=>772,42367=>639,42368=>639,42369=>887,42370=>887,42371=>717,42372=>717,42373=>786,42374=>891,42375=>780,42376=>841,42377=>500,42378=>792,42379=>522,42380=>522,42381=>647,42382=>361,42383=>815,42384=>850,42385=>683,42386=>834,42387=>898,42388=>522,42389=>820,42390=>820,42391=>808,42392=>864,42393=>772,42394=>808,42395=>869,42396=>900,42397=>844,42398=>844,42399=>812,42400=>812,42401=>812,42402=>930,42403=>990,42404=>540,42405=>608,42406=>630,42407=>910,42408=>687,42409=>687,42410=>744,42411=>687,42412=>724,42413=>742,42414=>724,42415=>742,42416=>744,42417=>744,42418=>744,42419=>744,42420=>780,42421=>540,42422=>540,42423=>595,42424=>740,42425=>620,42426=>772,42427=>914,42428=>914,42429=>857,42430=>800,42431=>772,42432=>887,42433=>990,42434=>1005,42435=>799,42436=>799,42437=>948,42438=>948,42439=>906,42440=>1044,42441=>600,42442=>600,42443=>574,42444=>742,42445=>574,42446=>742,42447=>500,42448=>604,42449=>704,42450=>704,42451=>746,42452=>820,42453=>731,42454=>805,42455=>606,42456=>726,42457=>726,42458=>500,42459=>813,42460=>939,42461=>898,42462=>660,42463=>633,42464=>914,42465=>689,42466=>1231,42467=>784,42468=>710,42469=>982,42470=>704,42471=>782,42472=>591,42473=>770,42474=>620,42475=>620,42476=>930,42477=>930,42478=>930,42479=>785,42480=>785,42481=>813,42482=>813,42483=>971,42484=>971,42485=>721,42486=>801,42487=>582,42488=>604,42489=>618,42490=>582,42491=>1059,42492=>1059,42493=>1059,42494=>1059,42495=>720,42496=>789,42497=>723,42498=>721,42499=>772,42500=>772,42501=>772,42502=>772,42503=>772,42504=>620,42505=>634,42506=>806,42507=>825,42508=>670,42509=>521,42510=>512,42511=>1134,42512=>1324,42513=>772,42514=>1091,42515=>445,42516=>811,42517=>776,42518=>614,42519=>720,42520=>902,42521=>765,42522=>920,42523=>1024,42524=>735,42525=>742,42526=>816,42527=>715,42528=>692,42529=>200,42530=>677,42531=>770,42532=>640,42533=>595,42534=>526,42535=>677,42536=>500,42537=>715,42538=>1143,42539=>560,42888=>333,42889=>276,42890=>342,42891=>194,42892=>194,64256=>495,64257=>460,64258=>465,64259=>652,64260=>645,64261=>520,64275=>1004,64276=>1044,64277=>1042,64278=>1037,64279=>1256,64285=>200,64286=>305,64287=>400,64288=>587,64289=>890,64290=>848,64291=>872,64292=>800,64293=>850,64294=>873,64295=>797,64296=>937,64297=>584,64298=>776,64299=>776,64300=>776,64301=>776,64302=>640,64303=>640,64304=>640,64305=>591,64306=>466,64307=>598,64308=>622,64309=>262,64310=>351,64312=>608,64313=>270,64314=>526,64315=>550,64316=>600,64318=>621,64320=>378,64321=>607,64323=>575,64324=>568,64326=>590,64327=>606,64328=>547,64329=>776,64330=>687,64331=>212,64332=>591,64333=>550,64334=>568,64335=>640,65533=>900,65535=>700); +$desc=array('Flags'=>32,'FontBBox'=>'[-1166 -638 2260 1050]','ItalicAngle'=>0,'Ascent'=>900,'Descent'=>-200,'Leading'=>100,'CapHeight'=>729,'XHeight'=>524,'StemV'=>70,'StemH'=>30,'AvgWidth'=>657,'MaxWidth'=>2256,'MissingWidth'=>800); +$cw=array(0=>800,32=>250,33=>333,34=>333,35=>556,36=>556,37=>889,38=>667,39=>200,40=>333,41=>333,42=>389,43=>584,44=>278,45=>333,46=>250,47=>278,48=>556,49=>556,50=>556,51=>556,52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>250,59=>250,60=>584,61=>584,62=>584,63=>556,64=>1015,65=>666,66=>664,67=>709,68=>698,69=>633,70=>599,71=>765,72=>721,73=>278,74=>528,75=>674,76=>563,77=>846,78=>730,79=>784,80=>656,81=>784,82=>709,83=>667,84=>632,85=>720,86=>645,87=>937,88=>657,89=>678,90=>615,91=>278,92=>278,93=>277,94=>469,95=>556,96=>250,97=>543,98=>559,99=>506,100=>559,101=>533,102=>280,103=>550,104=>536,105=>222,106=>243,107=>514,108=>214,109=>812,110=>537,111=>534,112=>559,113=>559,114=>332,115=>493,116=>280,117=>537,118=>496,119=>722,120=>476,121=>478,122=>486,123=>333,124=>250,125=>333,126=>500,160=>278,161=>333,162=>556,163=>556,164=>556,165=>556,166=>260,167=>556,168=>333,169=>800,170=>370,171=>500,172=>584,173=>333,174=>800,175=>333,176=>606,177=>584,178=>350,179=>350,180=>333,181=>556,182=>537,183=>250,184=>333,185=>350,186=>365,187=>500,188=>869,189=>869,190=>879,191=>556,192=>666,193=>666,194=>666,195=>666,196=>666,197=>666,198=>984,199=>709,200=>633,201=>633,202=>633,203=>633,204=>278,205=>278,206=>300,207=>300,208=>707,209=>730,210=>784,211=>784,212=>784,213=>784,214=>784,215=>584,216=>789,217=>720,218=>720,219=>720,220=>720,221=>678,222=>645,223=>594,224=>543,225=>543,226=>543,227=>543,228=>543,229=>543,230=>871,231=>506,232=>533,233=>533,234=>533,235=>533,236=>222,237=>222,238=>262,239=>262,240=>534,241=>537,242=>534,243=>534,244=>534,245=>534,246=>534,247=>584,248=>534,249=>537,250=>537,251=>537,252=>537,253=>478,254=>558,255=>478,256=>666,257=>543,258=>666,259=>543,260=>667,261=>543,262=>709,263=>506,264=>709,265=>506,266=>709,267=>506,268=>709,269=>506,270=>698,271=>745,272=>707,273=>576,274=>633,275=>533,276=>633,277=>533,278=>633,279=>533,280=>642,281=>533,282=>633,283=>533,284=>765,285=>550,286=>765,287=>550,288=>765,289=>550,290=>765,291=>550,292=>721,293=>536,294=>722,295=>554,296=>300,297=>262,298=>278,299=>262,300=>300,301=>262,302=>278,303=>262,304=>278,305=>222,306=>759,307=>384,308=>528,309=>262,310=>674,311=>514,312=>514,313=>563,314=>242,315=>563,316=>214,317=>563,318=>385,319=>563,320=>360,321=>612,322=>252,323=>730,324=>537,325=>730,326=>537,327=>730,328=>537,329=>647,330=>677,331=>537,332=>784,333=>534,334=>784,335=>534,336=>784,337=>534,338=>986,339=>919,340=>709,341=>332,342=>709,343=>332,344=>709,345=>332,346=>667,347=>493,348=>667,349=>493,350=>667,351=>493,352=>667,353=>493,354=>632,355=>284,356=>632,357=>440,358=>632,359=>285,360=>720,361=>537,362=>720,363=>537,364=>720,365=>537,366=>720,367=>537,368=>720,369=>537,370=>720,371=>537,372=>937,373=>722,374=>678,375=>478,376=>678,377=>615,378=>486,379=>615,380=>486,381=>615,382=>486,383=>280,384=>581,385=>842,386=>664,387=>559,388=>713,389=>593,390=>709,391=>771,392=>577,393=>707,394=>876,395=>664,396=>559,397=>552,398=>633,399=>710,400=>653,401=>609,402=>278,403=>812,404=>678,405=>853,406=>256,407=>363,408=>673,409=>514,410=>345,411=>546,412=>864,413=>730,414=>537,415=>782,416=>792,417=>559,418=>1016,419=>726,420=>824,421=>559,422=>655,423=>667,424=>500,425=>615,426=>350,427=>280,428=>638,429=>281,430=>632,431=>776,432=>619,433=>757,434=>695,435=>728,436=>613,437=>615,438=>486,439=>619,440=>609,441=>524,442=>509,443=>556,446=>492,447=>561,448=>260,449=>370,450=>584,451=>278,452=>1275,453=>1178,454=>1032,455=>1054,456=>778,457=>424,458=>1216,459=>924,460=>758,461=>666,462=>543,463=>300,464=>262,465=>784,466=>534,467=>720,468=>537,469=>720,470=>537,471=>720,472=>537,473=>720,474=>537,475=>720,476=>537,477=>533,478=>666,479=>543,480=>666,481=>543,482=>984,483=>871,484=>774,485=>555,486=>765,487=>550,488=>674,489=>514,490=>784,491=>534,492=>784,493=>534,494=>619,495=>524,496=>222,497=>1297,498=>1178,499=>1042,500=>765,501=>550,503=>609,504=>730,505=>537,506=>666,507=>543,508=>984,509=>871,510=>789,511=>611,512=>666,513=>543,514=>666,515=>543,516=>633,517=>533,518=>633,519=>533,520=>300,521=>262,522=>300,523=>262,524=>784,525=>534,526=>784,527=>534,528=>709,529=>332,530=>709,531=>332,532=>720,533=>537,534=>720,535=>537,536=>667,537=>493,538=>632,539=>280,540=>539,541=>414,542=>721,543=>536,544=>720,548=>615,549=>486,550=>666,551=>543,552=>633,553=>533,554=>784,555=>534,556=>784,557=>534,558=>784,559=>534,560=>784,561=>534,562=>678,563=>478,567=>222,568=>915,569=>914,592=>543,593=>572,594=>572,595=>559,596=>506,597=>501,598=>602,599=>596,600=>533,601=>533,602=>784,603=>485,604=>485,605=>736,606=>505,607=>288,608=>587,609=>557,610=>562,611=>483,612=>552,613=>536,614=>536,615=>536,616=>268,617=>255,618=>278,619=>473,620=>427,621=>260,622=>608,623=>812,624=>812,625=>812,626=>575,627=>576,628=>547,629=>534,630=>754,631=>728,632=>700,633=>332,634=>332,635=>380,636=>332,637=>332,638=>368,639=>368,640=>529,641=>536,642=>500,643=>299,644=>298,645=>309,646=>463,647=>280,648=>280,649=>596,650=>608,651=>520,652=>496,653=>722,654=>478,655=>506,656=>564,657=>508,658=>524,659=>530,660=>498,661=>498,662=>498,663=>699,664=>784,665=>488,666=>505,667=>622,668=>538,669=>459,670=>514,671=>390,672=>606,673=>498,674=>498,675=>921,676=>960,677=>945,678=>705,679=>524,680=>770,681=>798,682=>652,683=>569,684=>530,685=>486,686=>574,687=>611,688=>333,689=>333,690=>167,691=>236,692=>236,693=>276,694=>359,695=>500,696=>330,697=>278,698=>454,699=>250,700=>250,701=>250,702=>250,703=>250,704=>333,705=>333,706=>333,707=>333,708=>333,709=>333,710=>333,711=>333,712=>250,713=>333,714=>333,715=>333,716=>250,717=>333,718=>333,719=>333,720=>333,721=>333,722=>250,723=>250,724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,731=>333,732=>333,733=>333,734=>333,735=>333,736=>333,737=>186,738=>333,739=>333,740=>334,741=>526,742=>526,743=>526,744=>526,745=>526,746=>519,747=>519,748=>333,749=>333,750=>400,751=>333,752=>333,753=>333,754=>333,755=>333,756=>250,757=>333,758=>333,759=>333,760=>250,761=>200,762=>200,763=>200,764=>200,765=>333,766=>333,767=>333,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,859=>0,860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,867=>0,868=>0,869=>0,870=>0,871=>0,872=>0,873=>0,874=>0,875=>0,876=>0,877=>0,878=>0,879=>0,884=>278,885=>199,890=>332,891=>460,892=>456,893=>460,894=>278,900=>333,901=>333,902=>666,903=>275,904=>785,905=>874,906=>413,908=>866,910=>893,911=>809,912=>284,913=>666,914=>664,915=>594,916=>699,917=>633,918=>615,919=>721,920=>784,921=>278,922=>674,923=>666,924=>846,925=>730,926=>626,927=>784,928=>720,929=>656,931=>636,932=>632,933=>678,934=>739,935=>657,936=>762,937=>757,938=>278,939=>678,940=>578,941=>497,942=>549,943=>307,944=>558,945=>578,946=>544,947=>518,948=>552,949=>497,950=>447,951=>549,952=>505,953=>284,954=>500,955=>546,956=>540,957=>496,958=>485,959=>544,960=>594,961=>574,962=>539,963=>606,964=>492,965=>558,966=>711,967=>569,968=>698,969=>728,970=>284,971=>558,972=>544,973=>558,974=>728,977=>553,978=>691,979=>884,980=>691,981=>700,982=>728,983=>556,1008=>580,1009=>574,1010=>456,1011=>243,1012=>782,1013=>308,1014=>308,1017=>619,1021=>619,1022=>619,1023=>619,1024=>643,1025=>643,1026=>770,1027=>599,1028=>709,1029=>667,1030=>278,1031=>300,1032=>528,1033=>1009,1034=>1009,1035=>770,1036=>637,1037=>730,1038=>623,1039=>722,1040=>666,1041=>664,1042=>664,1043=>599,1044=>812,1045=>643,1046=>915,1047=>653,1048=>730,1049=>730,1050=>637,1051=>671,1052=>846,1053=>721,1054=>784,1055=>721,1056=>646,1057=>709,1058=>632,1059=>623,1060=>845,1061=>657,1062=>742,1063=>620,1064=>830,1065=>851,1066=>845,1067=>879,1068=>664,1069=>709,1070=>995,1071=>686,1072=>543,1073=>534,1074=>488,1075=>390,1076=>582,1077=>533,1078=>765,1079=>485,1080=>547,1081=>547,1082=>484,1083=>497,1084=>598,1085=>538,1086=>534,1087=>537,1088=>559,1089=>506,1090=>412,1091=>478,1092=>849,1093=>476,1094=>558,1095=>490,1096=>672,1097=>702,1098=>646,1099=>680,1100=>503,1101=>506,1102=>741,1103=>529,1104=>533,1105=>533,1106=>577,1107=>390,1108=>506,1109=>502,1110=>224,1111=>262,1112=>243,1113=>796,1114=>837,1115=>579,1116=>484,1117=>547,1118=>478,1119=>538,1120=>936,1121=>680,1122=>815,1123=>636,1124=>947,1125=>702,1126=>785,1127=>556,1128=>1025,1129=>746,1130=>915,1131=>765,1132=>1125,1133=>935,1134=>653,1135=>485,1136=>762,1137=>698,1138=>784,1139=>534,1140=>772,1141=>570,1142=>772,1143=>570,1144=>1170,1145=>944,1146=>864,1147=>594,1148=>936,1149=>680,1150=>936,1151=>680,1154=>468,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,1162=>763,1163=>573,1164=>693,1165=>520,1166=>646,1167=>562,1168=>601,1169=>387,1170=>614,1171=>412,1172=>599,1173=>467,1174=>932,1175=>835,1176=>653,1177=>485,1178=>658,1179=>494,1180=>680,1181=>514,1182=>689,1183=>524,1184=>845,1185=>658,1186=>740,1187=>558,1188=>995,1189=>709,1190=>1058,1191=>790,1192=>802,1193=>626,1194=>709,1195=>506,1196=>632,1197=>412,1198=>678,1199=>588,1200=>678,1201=>588,1202=>674,1203=>486,1204=>951,1205=>672,1206=>640,1207=>501,1208=>630,1209=>480,1210=>630,1211=>480,1212=>915,1213=>691,1214=>915,1215=>691,1216=>254,1217=>915,1218=>765,1219=>671,1220=>482,1221=>694,1222=>518,1223=>721,1224=>538,1225=>744,1226=>559,1227=>630,1228=>480,1229=>869,1230=>619,1231=>254,1232=>666,1233=>543,1234=>666,1235=>543,1236=>984,1237=>871,1238=>643,1239=>533,1240=>710,1241=>543,1242=>710,1243=>543,1244=>915,1245=>765,1246=>653,1247=>485,1248=>619,1249=>534,1250=>730,1251=>547,1252=>730,1253=>547,1254=>784,1255=>534,1256=>784,1257=>534,1258=>784,1259=>534,1260=>709,1261=>506,1262=>623,1263=>478,1264=>623,1265=>478,1266=>623,1267=>478,1268=>620,1269=>490,1270=>599,1271=>390,1272=>879,1273=>680,1274=>614,1275=>412,1276=>657,1277=>476,1278=>657,1279=>476,1296=>653,1297=>485,1298=>671,1299=>497,1306=>784,1307=>559,1308=>937,1309=>712,1310=>637,1311=>484,1316=>727,1317=>564,1318=>627,1319=>517,1329=>730,1330=>693,1331=>730,1332=>735,1333=>693,1334=>751,1335=>446,1336=>703,1337=>790,1338=>656,1339=>697,1340=>390,1341=>852,1342=>791,1343=>698,1344=>585,1345=>656,1346=>651,1347=>658,1348=>759,1349=>595,1350=>772,1351=>603,1352=>703,1353=>648,1354=>698,1355=>744,1356=>738,1357=>703,1358=>739,1359=>660,1360=>693,1361=>623,1362=>385,1363=>788,1364=>632,1365=>775,1366=>714,1369=>250,1370=>222,1371=>200,1372=>333,1373=>333,1374=>333,1375=>333,1377=>833,1378=>551,1379=>572,1380=>569,1381=>546,1382=>581,1383=>353,1384=>551,1385=>568,1386=>569,1387=>552,1388=>276,1389=>795,1390=>535,1391=>553,1392=>537,1393=>512,1394=>568,1395=>552,1396=>531,1397=>249,1398=>527,1399=>405,1400=>551,1401=>390,1402=>833,1403=>509,1404=>523,1405=>545,1406=>584,1407=>879,1408=>552,1409=>552,1410=>301,1411=>884,1412=>578,1413=>556,1414=>668,1415=>544,1417=>278,1418=>333,1423=>735,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0,1467=>0,1468=>0,1469=>0,1470=>448,1471=>0,1472=>212,1473=>0,1474=>0,1475=>278,1476=>0,1477=>0,1478=>378,1479=>0,1488=>640,1489=>591,1490=>466,1491=>598,1492=>622,1493=>212,1494=>351,1495=>623,1496=>608,1497=>200,1498=>526,1499=>550,1500=>600,1501=>623,1502=>621,1503=>212,1504=>378,1505=>607,1506=>587,1507=>575,1508=>568,1509=>540,1510=>590,1511=>606,1512=>547,1513=>776,1514=>687,1520=>424,1521=>412,1522=>400,1523=>184,1524=>344,1792=>600,1793=>201,1794=>201,1795=>201,1796=>201,1797=>500,1798=>500,1799=>500,1800=>370,1801=>370,1802=>574,1803=>574,1804=>645,1805=>574,1807=>0,1808=>452,1809=>452,1810=>574,1811=>645,1812=>645,1813=>509,1814=>509,1815=>682,1816=>585,1817=>404,1818=>627,1819=>718,1820=>718,1821=>484,1822=>682,1823=>600,1824=>660,1825=>682,1826=>538,1827=>718,1828=>718,1829=>718,1830=>574,1831=>574,1832=>638,1833=>585,1834=>509,1835=>682,1836=>682,1837=>574,1838=>645,1839=>509,1840=>0,1841=>0,1842=>0,1843=>0,1844=>0,1845=>0,1846=>0,1847=>0,1848=>0,1849=>0,1850=>0,1851=>0,1852=>0,1853=>0,1854=>0,1855=>0,1856=>0,1857=>0,1858=>0,1859=>0,1860=>0,1861=>0,1862=>0,1863=>0,1864=>0,1865=>0,1866=>0,1869=>660,1870=>660,1871=>660,2304=>0,2305=>0,2306=>0,2307=>305,2308=>717,2309=>717,2310=>888,2311=>464,2312=>464,2313=>582,2314=>804,2315=>921,2316=>641,2317=>433,2318=>433,2319=>433,2320=>433,2321=>888,2322=>888,2323=>888,2324=>888,2325=>749,2326=>780,2327=>522,2328=>590,2329=>680,2330=>620,2331=>644,2332=>703,2333=>692,2334=>680,2335=>568,2336=>531,2337=>611,2338=>538,2339=>608,2340=>564,2341=>660,2342=>500,2343=>593,2344=>568,2345=>568,2346=>479,2347=>733,2348=>492,2349=>578,2350=>518,2351=>556,2352=>435,2353=>435,2354=>656,2355=>661,2356=>661,2357=>492,2358=>646,2359=>479,2360=>667,2361=>486,2362=>0,2363=>226,2364=>0,2365=>442,2366=>226,2367=>226,2368=>226,2369=>0,2370=>0,2371=>0,2372=>0,2373=>0,2374=>0,2375=>0,2376=>0,2377=>226,2378=>226,2379=>226,2380=>226,2381=>0,2382=>149,2383=>226,2384=>839,2385=>0,2386=>0,2387=>0,2388=>0,2389=>0,2390=>0,2391=>0,2392=>749,2393=>780,2394=>522,2395=>703,2396=>611,2397=>538,2398=>733,2399=>556,2400=>900,2401=>626,2402=>0,2403=>0,2404=>674,2405=>674,2406=>575,2407=>575,2408=>575,2409=>575,2410=>575,2411=>575,2412=>575,2413=>575,2414=>575,2415=>575,2416=>365,2417=>387,2418=>717,2419=>717,2420=>888,2421=>888,2422=>717,2423=>717,2425=>703,2426=>556,2427=>568,2428=>703,2429=>575,2430=>611,2431=>492,2433=>0,2434=>300,2435=>264,2437=>656,2438=>829,2439=>507,2440=>564,2441=>539,2442=>559,2443=>600,2444=>481,2447=>580,2448=>627,2451=>540,2452=>613,2453=>570,2454=>467,2455=>481,2456=>438,2457=>483,2458=>408,2459=>509,2460=>601,2461=>563,2462=>771,2463=>401,2464=>404,2465=>540,2466=>408,2467=>460,2468=>543,2469=>477,2470=>418,2471=>433,2472=>445,2474=>499,2475=>594,2476=>397,2477=>565,2478=>458,2479=>433,2480=>396,2482=>508,2486=>518,2487=>445,2488=>508,2489=>460,2492=>0,2493=>440,2494=>193,2495=>189,2496=>180,2497=>0,2498=>0,2499=>0,2500=>0,2503=>295,2504=>303,2507=>0,2508=>0,2509=>0,2510=>356,2519=>219,2524=>540,2525=>408,2527=>433,2528=>594,2529=>481,2530=>0,2531=>0,2534=>500,2535=>437,2536=>479,2537=>530,2538=>497,2539=>500,2540=>482,2541=>503,2542=>517,2543=>481,2544=>377,2545=>377,2546=>429,2547=>383,2548=>429,2549=>478,2550=>545,2551=>158,2552=>365,2553=>280,2554=>357,2555=>344,2561=>0,2562=>0,2563=>351,2565=>860,2566=>1088,2567=>869,2568=>928,2569=>723,2570=>723,2575=>665,2576=>857,2579=>716,2580=>858,2581=>682,2582=>634,2583=>696,2584=>744,2585=>649,2586=>674,2587=>656,2588=>653,2589=>629,2590=>639,2591=>641,2592=>657,2593=>650,2594=>653,2595=>651,2596=>640,2597=>634,2598=>662,2599=>630,2600=>625,2602=>645,2603=>653,2604=>624,2605=>613,2606=>658,2607=>734,2608=>620,2610=>676,2611=>719,2613=>626,2614=>666,2616=>666,2617=>614,2620=>0,2622=>286,2623=>322,2624=>301,2625=>0,2626=>0,2631=>0,2632=>0,2635=>0,2636=>0,2637=>0,2641=>0,2649=>636,2650=>762,2651=>652,2652=>653,2654=>656,2662=>672,2663=>543,2664=>622,2665=>622,2666=>576,2667=>589,2668=>509,2669=>645,2670=>661,2671=>655,2672=>0,2673=>0,2674=>666,2675=>726,2676=>1217,2677=>0,3330=>419,3331=>273,3333=>1360,3334=>1522,3335=>981,3336=>1728,3337=>720,3338=>1473,3339=>865,3340=>1059,3342=>1203,3343=>1231,3344=>1902,3346=>714,3347=>1195,3348=>1463,3349=>954,3350=>910,3351=>910,3352=>1343,3353=>1002,3354=>865,3355=>1281,3356=>841,3357=>1536,3358=>1342,3359=>589,3360=>666,3361=>1291,3362=>1332,3363=>1326,3364=>954,3365=>823,3366=>618,3367=>928,3368=>928,3369=>928,3370=>855,3371=>1143,3372=>1203,3373=>644,3374=>628,3375=>1022,3376=>716,3377=>662,3378=>855,3379=>714,3380=>641,3381=>878,3382=>1009,3383=>1098,3384=>1287,3385=>1147,3386=>855,3389=>700,3390=>506,3391=>217,3392=>217,3393=>372,3394=>372,3395=>451,3396=>451,3398=>714,3399=>535,3400=>1404,3402=>0,3403=>0,3404=>0,3405=>0,3406=>273,3415=>724,3424=>865,3425=>1213,3426=>0,3427=>0,3430=>687,3431=>693,3432=>764,3433=>1030,3434=>666,3435=>934,3436=>1213,3437=>680,3438=>832,3439=>941,3440=>1221,3441=>886,3442=>1322,3443=>874,3444=>900,3445=>1044,3449=>1148,3450=>1400,3451=>994,3452=>700,3453=>1114,3454=>1004,3455=>957,4256=>587,4257=>620,4258=>642,4259=>815,4260=>600,4261=>595,4262=>799,4263=>893,4264=>622,4265=>597,4266=>939,4267=>602,4268=>603,4269=>790,4270=>587,4271=>623,4272=>799,4273=>601,4274=>792,4275=>724,4276=>847,4277=>599,4278=>812,4279=>603,4280=>653,4281=>590,4282=>754,4283=>596,4284=>653,4285=>651,4286=>596,4287=>888,4288=>593,4304=>436,4305=>491,4306=>528,4307=>692,4308=>447,4309=>447,4310=>628,4311=>734,4312=>449,4313=>445,4314=>843,4315=>449,4316=>449,4317=>682,4318=>449,4319=>480,4320=>682,4321=>468,4322=>710,4323=>623,4324=>697,4325=>447,4326=>702,4327=>447,4328=>470,4329=>440,4330=>632,4331=>449,4332=>470,4333=>536,4334=>449,4335=>656,4336=>474,4337=>630,4338=>394,4339=>419,4340=>422,4341=>436,4345=>528,4347=>515,4348=>449,5024=>678,5025=>756,5026=>604,5027=>770,5028=>969,5029=>207,5030=>633,5031=>800,5032=>474,5033=>689,5034=>672,5035=>446,5036=>637,5037=>776,5038=>511,5039=>723,5040=>528,5041=>591,5042=>839,5043=>963,5044=>615,5045=>563,5046=>705,5047=>800,5048=>558,5049=>880,5050=>966,5051=>675,5052=>527,5053=>733,5054=>779,5055=>547,5056=>756,5057=>834,5058=>604,5059=>632,5060=>605,5061=>1051,5062=>657,5063=>842,5064=>748,5065=>1192,5066=>842,5067=>632,5068=>668,5069=>928,5070=>626,5071=>655,5072=>502,5073=>696,5074=>642,5075=>518,5076=>952,5077=>622,5078=>710,5079=>521,5080=>556,5081=>656,5082=>622,5083=>881,5084=>760,5085=>564,5086=>567,5087=>712,5088=>717,5089=>838,5090=>617,5091=>689,5092=>767,5093=>728,5094=>690,5095=>551,5096=>859,5097=>957,5098=>900,5099=>779,5100=>805,5101=>621,5102=>604,5103=>842,5104=>653,5105=>737,5106=>601,5107=>901,5108=>655,5120=>584,5121=>941,5122=>941,5123=>941,5124=>941,5125=>726,5126=>726,5127=>726,5128=>726,5129=>726,5130=>726,5131=>726,5132=>941,5133=>941,5134=>941,5135=>941,5136=>941,5137=>941,5138=>882,5139=>882,5140=>882,5141=>882,5142=>726,5143=>882,5144=>882,5145=>882,5146=>882,5147=>726,5148=>494,5149=>347,5150=>447,5151=>329,5152=>329,5153=>452,5154=>452,5155=>276,5156=>451,5157=>463,5158=>289,5159=>216,5160=>400,5161=>400,5162=>400,5163=>1169,5164=>941,5165=>810,5166=>1012,5167=>941,5168=>941,5169=>941,5170=>941,5171=>726,5172=>726,5173=>726,5174=>726,5175=>726,5176=>726,5177=>726,5178=>941,5179=>941,5180=>941,5181=>941,5182=>941,5183=>941,5184=>726,5185=>882,5186=>726,5187=>882,5188=>882,5189=>726,5190=>882,5191=>726,5192=>726,5193=>390,5194=>159,5195=>332,5196=>742,5197=>742,5198=>742,5199=>742,5200=>744,5201=>744,5202=>744,5203=>744,5204=>744,5205=>744,5206=>744,5207=>914,5208=>912,5209=>912,5210=>914,5211=>912,5212=>914,5213=>744,5214=>916,5215=>744,5216=>916,5217=>916,5218=>744,5219=>916,5220=>744,5221=>915,5222=>477,5223=>855,5224=>855,5225=>855,5226=>855,5227=>592,5228=>592,5229=>592,5230=>592,5231=>592,5232=>610,5233=>713,5234=>592,5235=>608,5236=>718,5237=>764,5238=>764,5239=>718,5240=>764,5241=>718,5242=>718,5243=>763,5244=>735,5245=>763,5246=>764,5247=>718,5248=>764,5249=>734,5250=>763,5251=>361,5252=>361,5253=>708,5254=>708,5255=>708,5256=>651,5257=>592,5258=>592,5259=>592,5260=>592,5261=>592,5262=>610,5263=>713,5264=>592,5265=>608,5266=>608,5267=>763,5268=>763,5269=>608,5270=>763,5271=>608,5272=>609,5273=>763,5274=>627,5275=>763,5276=>763,5277=>609,5278=>763,5279=>625,5280=>763,5281=>361,5282=>361,5283=>592,5284=>592,5285=>592,5286=>592,5287=>592,5288=>610,5289=>713,5290=>592,5291=>608,5292=>592,5293=>763,5294=>763,5295=>592,5296=>763,5297=>592,5298=>592,5299=>763,5300=>610,5301=>763,5302=>763,5303=>592,5304=>763,5305=>608,5306=>763,5307=>346,5308=>276,5309=>346,5310=>331,5311=>562,5312=>712,5313=>712,5314=>712,5315=>712,5316=>712,5317=>712,5318=>712,5319=>712,5320=>712,5321=>868,5322=>828,5323=>828,5324=>712,5325=>828,5326=>712,5327=>712,5328=>466,5329=>452,5330=>466,5331=>712,5332=>712,5333=>712,5334=>712,5335=>712,5336=>712,5337=>712,5338=>712,5339=>712,5340=>868,5341=>828,5342=>828,5343=>868,5344=>828,5345=>868,5346=>712,5347=>828,5348=>712,5349=>828,5350=>828,5351=>712,5352=>828,5353=>712,5354=>466,5355=>262,5356=>624,5357=>504,5358=>524,5359=>504,5360=>521,5361=>504,5362=>520,5363=>624,5364=>504,5365=>520,5366=>620,5367=>660,5368=>659,5369=>620,5370=>676,5371=>620,5372=>620,5373=>660,5374=>637,5375=>676,5376=>659,5377=>620,5378=>659,5379=>636,5380=>659,5381=>309,5382=>365,5383=>309,5384=>458,5385=>315,5386=>315,5387=>347,5388=>1010,5389=>1020,5390=>872,5391=>872,5392=>830,5393=>830,5394=>830,5395=>854,5396=>854,5397=>854,5398=>854,5399=>1001,5400=>1002,5401=>1001,5402=>1002,5403=>1001,5404=>1002,5405=>998,5406=>998,5407=>998,5408=>998,5409=>998,5410=>998,5411=>998,5412=>998,5413=>594,5414=>516,5415=>516,5416=>516,5417=>516,5418=>516,5419=>532,5420=>636,5421=>516,5422=>532,5423=>671,5424=>672,5425=>671,5426=>672,5427=>671,5428=>672,5429=>671,5430=>672,5431=>687,5432=>672,5433=>671,5434=>672,5435=>671,5436=>688,5437=>671,5438=>372,5439=>505,5440=>464,5441=>460,5442=>830,5443=>830,5444=>830,5445=>830,5446=>830,5447=>830,5448=>556,5449=>556,5450=>556,5451=>556,5452=>556,5453=>556,5454=>691,5455=>712,5456=>343,5457=>362,5458=>624,5459=>817,5460=>817,5461=>817,5462=>817,5463=>824,5464=>824,5465=>824,5466=>824,5467=>980,5468=>972,5469=>465,5470=>742,5471=>742,5472=>742,5473=>742,5474=>742,5475=>742,5476=>742,5477=>742,5478=>742,5479=>742,5480=>898,5481=>848,5482=>410,5483=>742,5484=>742,5485=>744,5486=>744,5487=>825,5488=>742,5489=>742,5490=>744,5491=>744,5492=>800,5493=>800,5494=>800,5495=>800,5496=>800,5497=>800,5498=>800,5499=>493,5500=>592,5501=>460,5502=>875,5503=>875,5504=>875,5505=>777,5506=>795,5507=>875,5508=>875,5509=>644,5510=>592,5511=>592,5512=>592,5513=>592,5514=>782,5515=>782,5516=>782,5517=>782,5518=>1056,5519=>1056,5520=>1056,5521=>687,5522=>705,5523=>1056,5524=>1056,5525=>524,5526=>782,5527=>646,5528=>646,5529=>646,5530=>646,5531=>712,5532=>712,5533=>712,5534=>712,5535=>466,5536=>772,5537=>772,5538=>772,5539=>772,5540=>772,5541=>772,5542=>466,5543=>638,5544=>638,5545=>638,5546=>638,5547=>638,5548=>638,5549=>638,5550=>388,5551=>488,5552=>515,5553=>515,5554=>515,5555=>515,5556=>592,5557=>592,5558=>592,5559=>592,5560=>542,5561=>542,5562=>542,5563=>542,5564=>561,5565=>561,5566=>561,5567=>561,5568=>630,5569=>630,5570=>630,5571=>630,5572=>941,5573=>941,5574=>726,5575=>726,5576=>726,5577=>726,5578=>941,5579=>941,5580=>726,5581=>726,5582=>726,5583=>726,5584=>941,5585=>941,5586=>726,5587=>726,5588=>730,5589=>726,5590=>941,5591=>941,5592=>726,5593=>726,5594=>730,5595=>726,5596=>830,5597=>830,5598=>830,5599=>830,5600=>830,5601=>830,5602=>830,5603=>830,5604=>830,5605=>830,5606=>830,5607=>830,5608=>830,5609=>830,5610=>830,5611=>830,5612=>830,5613=>830,5614=>400,5615=>722,5616=>722,5617=>722,5618=>722,5619=>722,5620=>722,5621=>722,5622=>722,5623=>722,5624=>722,5625=>722,5626=>722,5627=>722,5628=>722,5629=>722,5630=>722,5631=>722,5632=>722,5633=>522,5634=>592,5635=>592,5636=>712,5637=>712,5638=>712,5639=>712,5640=>722,5641=>722,5642=>722,5643=>722,5644=>722,5645=>722,5646=>830,5647=>830,5648=>704,5649=>704,5650=>704,5651=>704,5652=>647,5653=>647,5654=>647,5655=>830,5656=>830,5657=>830,5658=>830,5659=>830,5660=>647,5661=>647,5662=>830,5663=>830,5664=>830,5665=>830,5666=>830,5667=>830,5668=>465,5669=>465,5670=>465,5671=>465,5672=>830,5673=>830,5674=>574,5675=>574,5676=>574,5677=>574,5678=>609,5679=>609,5680=>647,5681=>647,5682=>647,5683=>647,5684=>739,5685=>739,5686=>754,5687=>754,5688=>754,5689=>754,5690=>830,5691=>830,5692=>755,5693=>755,5694=>755,5695=>755,5696=>830,5697=>830,5698=>830,5699=>830,5700=>830,5701=>830,5702=>427,5703=>427,5704=>830,5705=>830,5706=>830,5707=>830,5708=>830,5709=>830,5710=>830,5711=>830,5712=>718,5713=>718,5714=>718,5715=>718,5716=>830,5717=>830,5718=>718,5719=>718,5720=>718,5721=>718,5722=>525,5723=>830,5724=>830,5725=>718,5726=>718,5727=>718,5728=>718,5729=>830,5730=>830,5731=>718,5732=>718,5733=>718,5734=>718,5735=>722,5736=>722,5737=>722,5738=>722,5739=>722,5740=>722,5741=>822,5742=>370,5743=>875,5744=>1056,5745=>1316,5746=>1314,5747=>963,5748=>981,5749=>1314,5750=>1330,5751=>668,5752=>778,5753=>778,5754=>698,5755=>698,5756=>778,5757=>778,5758=>400,5759=>400,6320=>726,6321=>726,6322=>726,6323=>882,6324=>726,6325=>726,6326=>786,6327=>744,6328=>592,6329=>764,6330=>592,6331=>712,6332=>712,6333=>712,6334=>504,6335=>504,6336=>830,6337=>830,6338=>1001,6339=>516,6340=>516,6341=>556,6342=>824,6343=>892,6344=>824,6345=>892,6346=>712,6347=>824,6348=>712,6349=>824,6350=>996,6351=>964,6352=>964,6353=>726,6354=>726,6355=>686,6356=>525,6357=>452,6358=>361,6359=>361,6360=>346,6361=>466,6362=>310,6363=>486,6364=>575,6365=>575,6366=>223,6367=>216,6368=>984,6369=>556,6370=>556,6371=>906,6372=>858,6373=>906,6374=>744,6375=>744,6376=>758,6377=>592,6378=>808,6379=>646,6380=>630,6381=>906,6382=>722,6383=>722,6384=>906,6385=>647,6386=>984,6387=>280,6388=>319,6389=>355,7424=>488,7425=>733,7426=>863,7427=>507,7428=>529,7429=>509,7430=>515,7431=>470,7432=>497,7433=>222,7434=>381,7435=>496,7436=>432,7437=>614,7439=>585,7448=>471,7449=>539,7450=>504,7451=>448,7452=>511,7456=>472,7457=>676,7458=>460,7579=>365,7581=>322,7582=>341,7583=>304,7588=>189,7589=>179,7590=>146,7595=>277,7596=>537,7597=>549,7598=>391,7599=>404,7600=>374,7601=>349,7602=>462,7607=>397,7608=>348,7609=>344,7612=>367,7613=>326,7614=>347,7615=>328,7680=>666,7681=>543,7682=>664,7683=>559,7684=>664,7685=>559,7686=>664,7687=>559,7688=>709,7689=>506,7690=>698,7691=>559,7692=>698,7693=>559,7694=>698,7695=>559,7696=>722,7697=>556,7698=>698,7699=>559,7700=>633,7701=>533,7702=>633,7703=>533,7704=>633,7705=>533,7706=>633,7707=>533,7708=>633,7709=>533,7710=>599,7711=>280,7712=>765,7713=>550,7714=>721,7715=>536,7716=>721,7717=>536,7718=>721,7719=>536,7720=>722,7721=>556,7722=>721,7723=>536,7724=>278,7725=>262,7726=>278,7727=>262,7728=>674,7729=>514,7730=>674,7731=>514,7732=>674,7733=>514,7734=>563,7735=>214,7736=>563,7737=>214,7738=>563,7739=>214,7740=>563,7741=>214,7742=>846,7743=>812,7744=>846,7745=>812,7746=>846,7747=>812,7748=>730,7749=>537,7750=>730,7751=>537,7752=>730,7753=>537,7754=>730,7755=>537,7756=>784,7757=>534,7758=>784,7759=>534,7760=>784,7761=>534,7762=>784,7763=>534,7764=>656,7765=>559,7766=>656,7767=>559,7768=>709,7769=>332,7770=>709,7771=>332,7772=>709,7773=>332,7774=>709,7775=>332,7776=>667,7777=>493,7778=>667,7779=>493,7780=>667,7781=>493,7782=>667,7783=>493,7784=>667,7785=>493,7786=>632,7787=>280,7788=>632,7789=>280,7790=>632,7791=>280,7792=>632,7793=>280,7794=>720,7795=>537,7796=>720,7797=>537,7798=>720,7799=>537,7800=>720,7801=>537,7802=>720,7803=>537,7804=>645,7805=>496,7806=>645,7807=>496,7808=>937,7809=>722,7810=>937,7811=>722,7812=>937,7813=>722,7814=>937,7815=>722,7816=>937,7817=>722,7818=>657,7819=>476,7820=>657,7821=>476,7822=>678,7823=>478,7824=>615,7825=>486,7826=>615,7827=>486,7828=>615,7829=>486,7830=>536,7831=>280,7832=>722,7833=>478,7834=>543,7835=>280,7836=>278,7837=>278,7838=>663,7839=>552,7840=>666,7841=>543,7842=>666,7843=>543,7844=>666,7845=>543,7846=>666,7847=>543,7848=>666,7849=>543,7850=>666,7851=>543,7852=>666,7853=>543,7854=>666,7855=>543,7856=>666,7857=>543,7858=>666,7859=>543,7860=>666,7861=>543,7862=>666,7863=>543,7864=>633,7865=>533,7866=>633,7867=>533,7868=>633,7869=>533,7870=>633,7871=>533,7872=>633,7873=>533,7874=>633,7875=>533,7876=>633,7877=>533,7878=>633,7879=>533,7880=>278,7881=>222,7882=>278,7883=>222,7884=>784,7885=>534,7886=>784,7887=>534,7888=>784,7889=>534,7890=>784,7891=>534,7892=>784,7893=>534,7894=>784,7895=>534,7896=>784,7897=>534,7898=>792,7899=>559,7900=>792,7901=>559,7902=>792,7903=>559,7904=>792,7905=>559,7906=>792,7907=>559,7908=>720,7909=>537,7910=>720,7911=>537,7912=>776,7913=>619,7914=>776,7915=>619,7916=>776,7917=>619,7918=>776,7919=>619,7920=>776,7921=>619,7922=>678,7923=>478,7924=>678,7925=>478,7926=>678,7927=>478,7928=>678,7929=>478,7936=>578,7937=>578,7938=>578,7939=>578,7940=>578,7941=>578,7942=>578,7943=>578,7944=>666,7945=>666,7946=>742,7947=>756,7948=>692,7949=>699,7950=>673,7951=>666,7952=>497,7953=>497,7954=>497,7955=>497,7956=>497,7957=>497,7960=>730,7961=>714,7962=>900,7963=>882,7964=>867,7965=>879,7968=>549,7969=>549,7970=>549,7971=>549,7972=>549,7973=>549,7974=>549,7975=>549,7976=>771,7977=>777,7978=>944,7979=>946,7980=>942,7981=>945,7982=>852,7983=>852,7984=>284,7985=>284,7986=>284,7987=>284,7988=>284,7989=>284,7990=>284,7991=>284,7992=>322,7993=>321,7994=>482,7995=>485,7996=>477,7997=>484,7998=>394,7999=>390,8000=>544,8001=>544,8002=>544,8003=>544,8004=>544,8005=>544,8008=>775,8009=>784,8010=>990,8011=>987,8012=>887,8013=>897,8016=>558,8017=>558,8018=>558,8019=>558,8020=>558,8021=>558,8022=>558,8023=>558,8025=>747,8027=>915,8029=>971,8031=>863,8032=>728,8033=>728,8034=>728,8035=>728,8036=>728,8037=>728,8038=>728,8039=>728,8040=>769,8041=>774,8042=>972,8043=>970,8044=>879,8045=>918,8046=>901,8047=>901,8048=>578,8049=>578,8050=>497,8051=>497,8052=>549,8053=>549,8054=>284,8055=>284,8056=>544,8057=>544,8058=>558,8059=>558,8060=>728,8061=>728,8064=>578,8065=>578,8066=>578,8067=>578,8068=>578,8069=>578,8070=>578,8071=>578,8072=>830,8073=>828,8074=>916,8075=>916,8076=>853,8077=>860,8078=>835,8079=>827,8080=>549,8081=>549,8082=>549,8083=>549,8084=>549,8085=>549,8086=>549,8087=>549,8088=>928,8089=>931,8090=>1104,8091=>1109,8092=>1099,8093=>1102,8094=>1009,8095=>1012,8096=>728,8097=>728,8098=>728,8099=>728,8100=>728,8101=>728,8102=>728,8103=>728,8104=>934,8105=>934,8106=>1130,8107=>1128,8108=>1045,8109=>1077,8110=>1062,8111=>1065,8112=>578,8113=>578,8114=>578,8115=>578,8116=>578,8118=>578,8119=>578,8120=>666,8121=>666,8122=>666,8123=>666,8124=>832,8125=>333,8126=>200,8127=>333,8128=>333,8129=>333,8130=>549,8131=>549,8132=>549,8134=>549,8135=>549,8136=>833,8137=>776,8138=>911,8139=>892,8140=>875,8141=>400,8142=>400,8143=>333,8144=>284,8145=>284,8146=>284,8147=>284,8150=>284,8151=>284,8152=>278,8153=>278,8154=>385,8155=>376,8157=>400,8158=>400,8159=>333,8160=>558,8161=>558,8162=>558,8163=>558,8164=>574,8165=>574,8166=>558,8167=>514,8168=>678,8169=>678,8170=>817,8171=>827,8172=>729,8173=>393,8174=>393,8175=>333,8178=>728,8179=>728,8180=>728,8182=>728,8183=>728,8184=>833,8185=>833,8186=>848,8187=>814,8188=>939,8189=>333,8190=>333,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>556,8200=>278,8201=>167,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>556,8211=>500,8212=>1000,8213=>1000,8214=>320,8215=>566,8216=>250,8217=>250,8218=>250,8219=>250,8220=>400,8221=>400,8222=>400,8223=>400,8224=>556,8225=>556,8226=>400,8227=>400,8228=>500,8229=>500,8230=>680,8231=>278,8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>167,8240=>1000,8241=>1360,8242=>278,8243=>469,8244=>680,8245=>278,8246=>469,8247=>680,8248=>376,8249=>250,8250=>250,8251=>622,8252=>556,8253=>556,8254=>556,8255=>658,8256=>658,8257=>438,8258=>840,8259=>400,8260=>167,8261=>334,8262=>334,8263=>1112,8264=>834,8265=>834,8266=>556,8267=>537,8268=>537,8269=>537,8270=>389,8271=>278,8272=>658,8273=>389,8274=>634,8275=>500,8276=>658,8277=>787,8278=>515,8279=>855,8280=>722,8281=>725,8282=>224,8283=>722,8284=>604,8285=>224,8286=>224,8287=>0,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>350,8305=>140,8308=>350,8309=>350,8310=>350,8311=>350,8312=>350,8313=>350,8314=>350,8315=>350,8316=>350,8317=>350,8318=>350,8319=>360,8320=>350,8321=>350,8322=>350,8323=>350,8324=>350,8325=>350,8326=>350,8327=>350,8328=>350,8329=>350,8330=>350,8331=>350,8332=>350,8333=>350,8334=>350,8336=>363,8337=>366,8338=>360,8339=>325,8340=>350,8352=>623,8353=>615,8354=>601,8355=>611,8356=>556,8357=>833,8358=>682,8359=>1317,8360=>1202,8361=>879,8362=>869,8363=>538,8364=>655,8365=>667,8366=>611,8367=>1290,8368=>570,8369=>684,8370=>717,8371=>667,8372=>667,8373=>640,8376=>516,8377=>499,8400=>0,8401=>0,8402=>0,8403=>0,8404=>0,8405=>0,8406=>0,8407=>0,8408=>0,8409=>0,8410=>0,8411=>0,8412=>0,8413=>0,8414=>0,8415=>0,8416=>0,8417=>0,8420=>0,8421=>0,8422=>0,8423=>0,8424=>0,8425=>0,8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,8432=>0,8448=>870,8449=>859,8450=>722,8451=>1017,8452=>556,8453=>796,8454=>832,8455=>653,8456=>722,8457=>919,8459=>1229,8460=>615,8461=>647,8462=>556,8463=>572,8464=>919,8465=>606,8466=>900,8467=>481,8468=>747,8469=>722,8470=>934,8471=>800,8472=>600,8473=>667,8474=>778,8475=>900,8476=>699,8477=>722,8478=>834,8479=>722,8480=>1043,8481=>1261,8482=>1000,8483=>667,8484=>611,8486=>757,8487=>757,8488=>512,8489=>284,8490=>674,8491=>666,8492=>918,8493=>623,8494=>533,8495=>469,8496=>712,8497=>965,8498=>588,8499=>1200,8501=>640,8502=>592,8503=>466,8504=>598,8505=>278,8506=>868,8507=>1338,8508=>619,8510=>582,8511=>722,8513=>765,8514=>563,8515=>556,8516=>678,8517=>780,8522=>516,8523=>655,8525=>1200,8526=>435,8531=>860,8532=>880,8533=>899,8534=>889,8535=>880,8536=>889,8537=>879,8538=>889,8539=>880,8540=>889,8541=>880,8542=>869,8543=>869,8544=>278,8545=>556,8546=>834,8547=>945,8548=>645,8549=>945,8550=>1223,8551=>1501,8552=>945,8553=>657,8554=>945,8555=>1223,8556=>563,8557=>709,8558=>698,8559=>846,8560=>222,8561=>444,8562=>666,8563=>722,8564=>496,8565=>722,8566=>944,8567=>1166,8568=>722,8569=>476,8570=>722,8571=>944,8572=>214,8573=>506,8574=>559,8575=>812,8592=>987,8593=>603,8594=>987,8595=>603,8596=>1042,8597=>1042,8598=>800,8599=>800,8600=>800,8601=>800,8612=>987,8613=>680,8614=>987,8615=>680,8617=>987,8618=>987,8628=>700,8629=>658,8636=>987,8637=>987,8638=>380,8639=>393,8640=>987,8641=>987,8642=>380,8643=>379,8644=>987,8645=>906,8646=>990,8647=>987,8648=>1010,8649=>987,8650=>1010,8651=>987,8652=>987,8656=>987,8657=>603,8658=>987,8659=>603,8660=>1042,8661=>603,8668=>1092,8669=>1092,8704=>667,8705=>676,8706=>556,8707=>667,8708=>667,8709=>802,8710=>711,8711=>711,8712=>584,8713=>584,8714=>585,8715=>584,8716=>584,8717=>585,8718=>500,8719=>783,8720=>783,8721=>771,8722=>584,8723=>584,8724=>584,8725=>510,8726=>392,8727=>500,8728=>500,8729=>500,8730=>512,8731=>512,8732=>512,8733=>713,8734=>713,8735=>639,8736=>768,8737=>768,8738=>600,8739=>200,8740=>288,8741=>320,8742=>340,8743=>608,8744=>608,8745=>768,8746=>768,8747=>465,8748=>705,8749=>905,8750=>464,8751=>761,8756=>800,8757=>800,8758=>250,8759=>620,8760=>584,8761=>778,8762=>584,8763=>500,8764=>500,8765=>500,8766=>573,8768=>244,8769=>584,8770=>584,8771=>584,8772=>584,8773=>584,8774=>584,8775=>584,8776=>500,8777=>500,8778=>584,8779=>500,8780=>584,8781=>554,8784=>584,8785=>584,8786=>584,8787=>584,8788=>735,8789=>755,8791=>584,8792=>584,8793=>584,8794=>584,8795=>584,8796=>584,8797=>584,8798=>584,8799=>584,8800=>584,8801=>584,8802=>584,8803=>600,8804=>584,8805=>584,8806=>584,8807=>584,8810=>955,8811=>955,8813=>554,8814=>584,8815=>584,8816=>584,8817=>584,8818=>584,8819=>584,8822=>584,8823=>584,8826=>584,8827=>584,8828=>584,8829=>584,8830=>584,8831=>584,8832=>584,8833=>584,8834=>584,8835=>584,8836=>584,8837=>584,8838=>584,8839=>584,8840=>584,8841=>584,8844=>768,8845=>768,8846=>768,8847=>636,8848=>636,8849=>636,8850=>636,8851=>636,8852=>636,8853=>768,8854=>778,8855=>778,8856=>768,8857=>778,8858=>776,8859=>776,8860=>776,8861=>776,8866=>658,8867=>658,8868=>658,8869=>658,8870=>500,8871=>528,8872=>758,8882=>636,8883=>636,8884=>636,8885=>636,8891=>584,8892=>608,8893=>584,8896=>744,8897=>744,8898=>764,8899=>764,8901=>298,8902=>471,8904=>710,8909=>584,8910=>584,8911=>584,8918=>584,8919=>564,8920=>1215,8921=>1215,8928=>584,8929=>584,8930=>636,8931=>636,8934=>584,8935=>584,8936=>584,8937=>584,8942=>250,8943=>1000,8944=>1000,8945=>1000,8960=>823,8968=>456,8969=>455,8970=>456,8971=>455,8976=>584,8992=>374,8993=>374,8994=>658,8995=>658,9001=>329,9002=>329,9115=>384,9116=>384,9117=>384,9118=>384,9119=>384,9120=>384,9121=>388,9122=>388,9123=>388,9124=>388,9125=>388,9126=>388,9127=>333,9128=>333,9129=>333,9130=>333,9131=>333,9132=>333,9133=>333,9134=>374,9138=>804,9139=>804,9216=>800,9217=>784,9218=>800,9219=>800,9220=>784,9221=>800,9222=>800,9223=>800,9224=>800,9225=>800,9226=>800,9227=>800,9228=>800,9229=>800,9230=>800,9231=>800,9232=>800,9233=>800,9234=>800,9235=>800,9236=>800,9237=>800,9238=>800,9239=>800,9240=>800,9241=>800,9242=>800,9243=>800,9244=>800,9245=>800,9246=>800,9247=>800,9248=>800,9249=>800,9250=>556,9251=>500,9252=>800,9253=>800,9254=>800,9312=>788,9313=>788,9314=>788,9315=>788,9316=>788,9317=>788,9318=>788,9319=>788,9320=>788,9321=>788,9472=>1000,9473=>1000,9474=>1000,9475=>1000,9476=>1000,9477=>1000,9478=>1000,9479=>1000,9480=>1000,9481=>1000,9482=>1000,9483=>1000,9484=>1000,9485=>1000,9486=>1000,9487=>1000,9488=>1000,9489=>1000,9490=>1000,9491=>1000,9492=>1000,9493=>1000,9494=>1000,9495=>1000,9496=>1000,9497=>1000,9498=>1000,9499=>1000,9500=>1000,9501=>1000,9502=>1000,9503=>1000,9504=>1000,9505=>1000,9506=>1000,9507=>1000,9508=>1000,9509=>1000,9510=>1000,9511=>1000,9512=>1000,9513=>1000,9514=>1000,9515=>1000,9516=>1000,9517=>1000,9518=>1000,9519=>1000,9520=>1000,9521=>1000,9522=>1000,9523=>1000,9524=>1000,9525=>1000,9526=>1000,9527=>1000,9528=>1000,9529=>1000,9530=>1000,9531=>1000,9532=>1000,9533=>1000,9534=>1000,9535=>1000,9536=>1000,9537=>1000,9538=>1000,9539=>1000,9540=>1000,9541=>1000,9542=>1000,9543=>1000,9544=>1000,9545=>1000,9546=>1000,9547=>1000,9552=>1000,9553=>1000,9554=>1000,9555=>1000,9556=>1000,9557=>1000,9558=>1000,9559=>1000,9560=>1000,9561=>1000,9562=>1000,9563=>1000,9564=>1000,9565=>1000,9566=>1000,9567=>1000,9568=>1000,9569=>1000,9570=>1000,9571=>1000,9572=>1000,9573=>1000,9574=>1000,9575=>1000,9576=>1000,9577=>1000,9578=>1000,9579=>1000,9580=>1000,9600=>1000,9601=>1000,9602=>1000,9603=>1000,9604=>1000,9605=>1000,9606=>1000,9607=>1000,9608=>1000,9609=>1000,9610=>1000,9611=>1000,9612=>1000,9613=>1000,9614=>1000,9615=>1000,9616=>1000,9617=>1000,9618=>1000,9619=>1000,9620=>1000,9621=>1000,9622=>1000,9623=>1000,9624=>1000,9625=>1000,9626=>1000,9627=>1000,9628=>1000,9629=>1000,9630=>1000,9631=>1000,9632=>800,9633=>800,9634=>800,9635=>800,9636=>800,9637=>800,9638=>800,9639=>800,9640=>800,9641=>800,9642=>625,9643=>625,9644=>800,9645=>800,9646=>800,9647=>800,9648=>1000,9649=>1000,9650=>892,9651=>892,9652=>669,9653=>669,9654=>892,9655=>892,9656=>669,9657=>669,9658=>891,9659=>891,9660=>892,9661=>892,9662=>669,9663=>669,9664=>892,9665=>892,9666=>669,9667=>669,9668=>891,9669=>891,9670=>788,9671=>788,9672=>788,9673=>800,9674=>489,9675=>800,9676=>800,9677=>800,9678=>800,9679=>800,9680=>800,9681=>800,9682=>800,9683=>800,9684=>800,9685=>800,9686=>800,9687=>800,9688=>400,9689=>800,9690=>800,9691=>800,9692=>800,9693=>800,9694=>800,9695=>799,9696=>800,9697=>800,9698=>1000,9699=>1000,9700=>1000,9701=>1000,9702=>400,9703=>800,9704=>800,9705=>800,9706=>800,9707=>800,9708=>892,9709=>892,9710=>892,9711=>1020,9712=>800,9713=>800,9714=>800,9715=>800,9716=>800,9717=>800,9718=>800,9719=>800,9720=>800,9721=>800,9722=>800,9723=>800,9724=>800,9725=>800,9726=>800,9727=>800,9772=>929,9773=>795,9785=>770,9786=>770,9824=>626,9825=>694,9826=>595,9827=>776,9828=>626,9829=>694,9830=>595,9831=>776,9833=>333,9834=>555,9835=>722,9836=>722,9837=>415,9838=>377,9839=>402,10048=>1161,10752=>1020,10753=>1020,10754=>1020,10755=>764,10756=>764,10761=>584,11568=>352,11569=>872,11570=>872,11571=>720,11572=>720,11573=>720,11574=>544,11575=>709,11576=>709,11577=>720,11578=>720,11579=>596,11580=>698,11581=>742,11582=>574,11583=>742,11584=>872,11585=>872,11586=>292,11587=>696,11588=>696,11589=>720,11590=>544,11591=>724,11592=>756,11593=>600,11594=>672,11595=>888,11596=>836,11597=>524,11598=>720,11599=>260,11600=>836,11601=>224,11602=>678,11603=>380,11604=>872,11605=>872,11606=>720,11607=>268,11608=>640,11609=>872,11610=>872,11611=>770,11612=>424,11613=>720,11614=>770,11615=>720,11616=>709,11617=>720,11618=>541,11619=>828,11620=>454,11621=>828,11622=>728,11623=>618,11631=>442,11798=>584,11799=>333,11800=>556,11802=>333,11803=>500,11806=>500,11807=>500,11816=>464,11817=>464,11818=>660,11819=>623,11820=>623,11821=>660,11822=>556,11824=>350,42240=>698,42241=>698,42242=>676,42243=>800,42244=>800,42245=>850,42246=>930,42247=>720,42248=>756,42249=>750,42250=>750,42251=>750,42252=>540,42253=>540,42254=>780,42255=>780,42256=>1082,42257=>1082,42258=>780,42259=>780,42260=>720,42261=>774,42262=>600,42263=>600,42264=>600,42265=>600,42266=>983,42267=>983,42268=>749,42269=>749,42270=>1080,42271=>890,42272=>869,42273=>720,42274=>739,42275=>983,42276=>780,42277=>840,42278=>780,42279=>424,42280=>840,42281=>967,42282=>462,42283=>952,42284=>735,42285=>735,42286=>780,42287=>750,42288=>869,42289=>772,42290=>772,42291=>676,42292=>762,42293=>674,42294=>674,42295=>488,42296=>604,42297=>822,42298=>1059,42299=>851,42300=>851,42301=>689,42302=>844,42303=>708,42304=>907,42305=>907,42306=>907,42307=>612,42308=>612,42309=>840,42310=>775,42311=>544,42312=>774,42313=>540,42314=>704,42315=>723,42316=>887,42317=>887,42318=>676,42319=>817,42320=>762,42321=>887,42322=>824,42323=>890,42324=>705,42325=>780,42326=>705,42327=>533,42328=>523,42329=>694,42330=>772,42331=>772,42332=>772,42333=>892,42334=>711,42335=>711,42336=>832,42337=>832,42338=>944,42339=>944,42340=>832,42341=>928,42342=>743,42343=>735,42344=>731,42345=>782,42346=>595,42347=>890,42348=>680,42349=>887,42350=>815,42351=>510,42352=>848,42353=>700,42354=>700,42355=>700,42356=>724,42357=>724,42358=>633,42359=>633,42360=>813,42361=>834,42362=>625,42363=>887,42364=>592,42365=>772,42366=>772,42367=>639,42368=>639,42369=>887,42370=>887,42371=>717,42372=>717,42373=>786,42374=>891,42375=>780,42376=>841,42377=>500,42378=>792,42379=>522,42380=>522,42381=>647,42382=>361,42383=>815,42384=>850,42385=>683,42386=>834,42387=>898,42388=>522,42389=>820,42390=>820,42391=>808,42392=>864,42393=>772,42394=>808,42395=>869,42396=>900,42397=>844,42398=>844,42399=>812,42400=>812,42401=>812,42402=>930,42403=>990,42404=>540,42405=>608,42406=>630,42407=>910,42408=>687,42409=>687,42410=>744,42411=>687,42412=>724,42413=>742,42414=>724,42415=>742,42416=>744,42417=>744,42418=>744,42419=>744,42420=>780,42421=>540,42422=>540,42423=>595,42424=>740,42425=>620,42426=>772,42427=>914,42428=>914,42429=>857,42430=>800,42431=>772,42432=>887,42433=>990,42434=>1005,42435=>799,42436=>799,42437=>948,42438=>948,42439=>906,42440=>1044,42441=>600,42442=>600,42443=>574,42444=>742,42445=>574,42446=>742,42447=>500,42448=>604,42449=>704,42450=>704,42451=>746,42452=>820,42453=>731,42454=>805,42455=>606,42456=>726,42457=>726,42458=>500,42459=>813,42460=>939,42461=>898,42462=>660,42463=>633,42464=>914,42465=>689,42466=>1231,42467=>784,42468=>710,42469=>982,42470=>704,42471=>782,42472=>591,42473=>770,42474=>620,42475=>620,42476=>930,42477=>930,42478=>930,42479=>785,42480=>785,42481=>813,42482=>813,42483=>971,42484=>971,42485=>721,42486=>801,42487=>582,42488=>604,42489=>618,42490=>582,42491=>1059,42492=>1059,42493=>1059,42494=>1059,42495=>720,42496=>789,42497=>723,42498=>721,42499=>772,42500=>772,42501=>772,42502=>772,42503=>772,42504=>620,42505=>634,42506=>806,42507=>825,42508=>670,42509=>521,42510=>512,42511=>1134,42512=>1324,42513=>772,42514=>1091,42515=>445,42516=>811,42517=>776,42518=>614,42519=>720,42520=>902,42521=>765,42522=>920,42523=>1024,42524=>735,42525=>742,42526=>816,42527=>715,42528=>692,42529=>200,42530=>677,42531=>770,42532=>640,42533=>595,42534=>526,42535=>677,42536=>500,42537=>715,42538=>1143,42539=>560,42888=>333,42889=>276,42890=>342,42891=>194,42892=>194,42922=>899,64256=>495,64257=>460,64258=>465,64259=>652,64260=>645,64261=>520,64275=>1004,64276=>1044,64277=>1042,64278=>1037,64279=>1256,64285=>200,64286=>305,64287=>400,64288=>587,64289=>890,64290=>848,64291=>872,64292=>800,64293=>850,64294=>873,64295=>797,64296=>937,64297=>584,64298=>776,64299=>776,64300=>776,64301=>776,64302=>640,64303=>640,64304=>640,64305=>591,64306=>466,64307=>598,64308=>622,64309=>291,64310=>371,64312=>608,64313=>270,64314=>526,64315=>550,64316=>600,64318=>621,64320=>378,64321=>607,64323=>575,64324=>568,64326=>590,64327=>606,64328=>547,64329=>776,64330=>687,64331=>212,64332=>591,64333=>550,64334=>568,64335=>640,65529=>0,65530=>0,65531=>0,65532=>784,65533=>900,65535=>800); // --- EOF --- diff --git a/lib/tcpdf/fonts/freesans.z b/lib/tcpdf/fonts/freesans.z index 1e0585a41cf631fcd91f2e09cf4a142b88b491fe..08bf8c3d11415557afa1c52b35514c83edab1471 100644 GIT binary patch literal 805933 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

                DspiWaolKu1~hW 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%0A%0pN}?RWuFAzH@^(kgUPav`a3O+sWs zeAM0&`PWx0j}Pn}*!Hv24>!(yhrDw90z9U-9&X&Zh&Dt&mmMDAFPRTdp!sl)?o}&D z!^T$KtHq63*P;)hMcoTUTdg}a3dQe<_{=qTH-7Qyr9I-_*Borzu}D%QE5IW-*A;pX zgWv|~gx#|adKW8)>%^d*#7aJGY@n!~NAuh^jw(g(6oC^P#T_gm!_eL9B@h4bEreY6 zSIf&6Jh;4L@xs?#NM3dQr4L+7bo1L9-yd1ohy60`>t7We^ch@K-(djPi2T92Ov)51 zwfI>BlFL?AJyvr%U#L1Bd-UOX-N_vbwkdFS|s^C&lc;gi%3 zlT;3;Yomqe+)q&Nb#<4elA}DLh5(aA(yGf(-mveKH5`waZ5r*e!I9lE&^SZ3h^~g9 zGTXf7L?BA`Hs0SmP)WKMx8pvntoMsXx)vwQ5mG7Q(O6(eG7Pc{ttCV`RKsv}b+a~; z&r8CcrQi(?6IL@p*0vqEF*g=Vedc?wzM0DB3np*r4lcg!+ovu+`&q67T=c#fh|QW6 z44XE1fQ;(7HM)e1Ia`avLu8@iA4_#vsTSNE8hCP$a0pVKMq|iR2i5sO5CkZapc<LzJNm}EjGs2n;F~`vy7XAbh+XrWB}Op~cC6 zjuBOvp1Wtw7w%sE;zbX+t#P|Yw@f~}aFMoAApcJK8viMZW_LFHHg3xzjcg#_mGgv2 zZVQ6^VUn8}kPfiY=;g7J+;s8KM;Zw--KZaXsI9A$UVrQ|ZR2-~qN#CKviBt4M$ZvF z+hPLO;1Z?;c6@BC>k?(Y8)15_Ma7j@8jK-WWX7=$SjT7u>{Yu9gL`z5RJOowqz|Kp zQM?KJ6*rBP+k4|Kt6JT-n*3Yi>Sba5ileqgwbkcHI|D?!_;+XT7Oxc)9YKDD@*~RD z`!bck{^W4q=%;ImM4KTxMC3xKl>z@u`5}fa;mWg;azPG^= z5QD5tQ!TS5H%DI?TPd>C4jUxAeN&^2=Lx)e{;0Toa{8G0hLPooJC;9qdgml;W7`$tY(cjMN%AtK%QT6zxO(Rk_=moH9kC56Rnt^{LA z1RIfDhH_p@cQnSUsIkW*R2ZJpvPAYqh$_lwKM?!g##4L2ZbaKrM6Ad|{918#ExgbM zIHQUmU#0QPp>@y;4K0(sUuULG<0t%D{glef{91VdIw2$sL}@wt?M6!*o1}rJ61T*u zsYH((wfB~npP-k<3zGpboQRMk-xBT=za*$Zg9reyLocf51&!*a)wL>#Y6jg1?I0@Z z`?FRMtITrhwcNEou_9%cLE-OKDNJi~jN4{|j;4E;|f^b4X`CVvtjI~o%@g_8o*EYly@ z=@qHi3YDN1+|Gdg(uK8le8UTZp;V}yl?p)(U#6j9*JjxT4PKV}RWE&QPs_DWD2r>own%0DG2#8>i)h!B@yQ8eja*nW@`v}p4XVy2 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�GI1Kq<;{kQu}$vBK=C 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 z z1Ahc8uT;U5UE7DX%cq>PG5wku+=hLA(a<+GS|_42SIe)!^zH|$Kgk64f9>Xv zmMiXRzFE9wk4+UrULEJ=dkK%&yM5ZZE6_<%{F~?OiS4&uK4FULlZ2yAcknTKpJ`G} zsi5{7oYSPGT@-1krkP`i%(S$$H5KP3=s+=fM zR z{j_5~YS&AyYU6rIH>MG6ZiyX56r;$0v)8c&n*(C!3L2#cfI^8usW!;kvm0R>p8b zd=!~%e5^$`80^1g`CcxVi&@I?Ty~BV#`3rRKonoTLC*6_2Vcf9{}T083OYv02~Oh5 z&twCg;G|O;2Q4M%48cuIEe1+uaj&Qx=rS+Oy)-g%6dKa`0hkqrEp5V{NL~=pd0P&9 zfH<7wQQ9}i@;JyWpu=5(a^M^~zXjY|ScIC+KogiG9&%UjkKx2kM1gu9BVMHnw6e#+ za@$ap$>~uXN!bITlrV?Wy%;NJ4_CKB0t{ zHJBV`yUxitx?>Ti*IQw&~Y)$=MTay@8VtOhPli-d?_hL}SM_w+1GaWy6DIn_f7SJ_NDl{cwP{UR6 zS`|rXLQ#L&l7jj-vNP61PB?035{l-BQn-mOu!CS4rZ%M>hy3L$-UPNWGCY%0hiZsR zgttFL!ts=OJ1jQhlf%|t zg$0vC7fff2zmv=+f@xE_e&XGKJP+n3W-6DqqJ;$9kMABl%X|o98vf&J#xD~l64;LP z&ilN=Fbfs3lsGi?lgCaP&eB^FM)TY5uuG2fTh-7^urKJX&;f!82Dv*v?2Zd+JW?WE zaXAQWi9UBXl#LYl=Bpc?dxmyU3^Iz9B7JfCDQL`%h9mWE_$RuN>-qGp*D)X67pJnV z?i<$M^I$pY3I)vO@M^cQfb-a4M{argk~OoQYE6k^p_{Fjv)Ad3<=a8QQa7c<@t6M+ z>QH}&eCn4lkBkT`OK~`9Wf&rk;oor|hJO=153AJ%H9}!|$t@1&&l<1`UFon%MZ9=p zpm$V+A>+Zo>%+`DZX`X0`2fbzzy%aDgn!D%?%LuC5g-*N3(;UL^j(83lPij3AM$FG6Q5FWI02Pj z1Cr1fNk?@8fxXYzm^I6dUy+#0DlSOURr%RS*tV-V}hh<6s70a$Cd6fh=xU z-nDoN)ds%&4oHY7IUB%Z@?=~-1>?(76yP;?E%8JdLk5t2AK2_I1=UQTin=yRV3B_` z;8C3WyD+Jb^B~Rc-z~KT$`(niJ^?s zYv2C{)1yD(vWYsoHQ-1Xz5ADfv6Pdh8GCZ28510Je`Cg!{OZm`Em2CBB3B@}VGh1_ z@E|jd&Ut}aIbJbSEW-S~_Bb$P^eYZqXw6|f7!#yLes4(;!s<~gA;obyLBWsmDo>If zw=qXj-vv@Cn

                K6K6X^WVHr^QMjXKJ10{ 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�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

                &BK*;ifH)PS`y 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⪙pO*3Tmp2Uhw}X8$n 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 Kt$zmr^DM0Ei=V#$ literal 372168 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 VMb>2swtQ!p9OEg$NvpN8W^G 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
              • I*5&bn>_1E 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

                F|}ejZ}eAs1}Jp+(S8S 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%0ALVv8}*Pyh~$lI}2Ca8xo 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%0AT# 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ÐAg;Fs6wB19> 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 diff --git a/lib/tcpdf/fonts/freesansb.ctg.z b/lib/tcpdf/fonts/freesansb.ctg.z index 9bd081bc0a787a2de8a328aadb5d30e00929697f..ccdcf6e8c2dfa81296161c600e9e89485df92151 100644 GIT binary patch literal 5192 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 diff --git a/lib/tcpdf/fonts/freesansb.php b/lib/tcpdf/fonts/freesansb.php index 7f065294a9d..21ce1cc8043 100644 --- a/lib/tcpdf/fonts/freesansb.php +++ b/lib/tcpdf/fonts/freesansb.php @@ -4,12 +4,12 @@ $type='TrueTypeUnicode'; $name='FreeSansBold'; $up=-189; $ut=69; -$dw=700; +$dw=800; $diff=''; -$originalsize=359272; +$originalsize=416128; $enc=''; $file='freesansb.z'; $ctg='freesansb.ctg.z'; -$desc=array('Flags'=>32,'FontBBox'=>'[-968 -460 1556 1072]','ItalicAngle'=>0,'Ascent'=>1000,'Descent'=>-300,'Leading'=>90,'CapHeight'=>729,'XHeight'=>540,'StemV'=>123,'StemH'=>53,'AvgWidth'=>478,'MaxWidth'=>1501,'MissingWidth'=>700); -$cw=array(0=>700,32=>278,33=>333,34=>474,35=>556,36=>556,37=>889,38=>722,39=>238,40=>333,41=>333,42=>389,43=>584,44=>278,45=>333,46=>278,47=>278,48=>556,49=>556,50=>556,51=>556,52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>333,59=>333,60=>584,61=>584,62=>584,63=>611,64=>975,65=>722,66=>722,67=>722,68=>722,69=>667,70=>611,71=>778,72=>722,73=>278,74=>556,75=>722,76=>611,77=>833,78=>722,79=>778,80=>667,81=>778,82=>722,83=>667,84=>611,85=>722,86=>667,87=>944,88=>667,89=>667,90=>611,91=>333,92=>278,93=>333,94=>584,95=>556,96=>333,97=>556,98=>611,99=>556,100=>611,101=>556,102=>333,103=>611,104=>611,105=>278,106=>278,107=>556,108=>278,109=>889,110=>611,111=>611,112=>611,113=>611,114=>389,115=>556,116=>333,117=>611,118=>556,119=>778,120=>556,121=>556,122=>500,123=>389,124=>280,125=>389,126=>584,160=>278,161=>333,162=>556,163=>556,164=>556,165=>556,166=>280,167=>556,168=>333,169=>737,170=>370,171=>556,172=>584,173=>333,174=>737,175=>333,176=>606,177=>584,178=>351,179=>351,180=>333,181=>611,182=>556,183=>278,184=>333,185=>300,186=>365,187=>556,188=>869,189=>869,190=>869,191=>611,192=>722,193=>722,194=>722,195=>722,196=>722,197=>722,198=>1000,199=>722,200=>667,201=>667,202=>667,203=>667,204=>278,205=>278,206=>278,207=>278,208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>584,216=>778,217=>722,218=>722,219=>722,220=>722,221=>667,222=>667,223=>611,224=>556,225=>556,226=>556,227=>556,228=>556,229=>556,230=>889,231=>556,232=>556,233=>556,234=>556,235=>556,236=>278,237=>278,238=>278,239=>278,240=>611,241=>611,242=>611,243=>611,244=>611,245=>611,246=>611,247=>584,248=>611,249=>611,250=>611,251=>611,252=>611,253=>556,254=>611,255=>556,256=>722,257=>556,258=>722,259=>556,260=>722,261=>556,262=>722,263=>556,264=>722,265=>556,266=>722,267=>556,268=>722,269=>556,270=>722,271=>723,272=>722,273=>611,274=>667,275=>556,276=>667,277=>556,278=>667,279=>556,280=>667,281=>556,282=>667,283=>556,284=>778,285=>611,286=>778,287=>611,288=>778,289=>611,290=>778,291=>611,292=>722,293=>611,294=>722,295=>611,296=>278,297=>278,298=>278,299=>278,300=>278,301=>278,302=>278,303=>278,304=>278,305=>278,306=>593,307=>486,308=>556,309=>278,310=>722,311=>556,312=>559,313=>611,314=>278,315=>611,316=>278,317=>611,318=>422,319=>611,320=>556,321=>611,322=>278,323=>722,324=>611,325=>722,326=>611,327=>722,328=>611,329=>701,330=>720,331=>611,332=>778,333=>611,334=>778,335=>611,336=>778,337=>611,338=>1000,339=>953,340=>722,341=>389,342=>722,343=>389,344=>722,345=>389,346=>667,347=>556,348=>667,349=>556,350=>667,351=>556,352=>667,353=>556,354=>611,355=>333,356=>611,357=>414,358=>611,359=>333,360=>722,361=>611,362=>722,363=>611,364=>722,365=>611,366=>722,367=>611,368=>722,369=>611,370=>722,371=>611,372=>944,373=>778,374=>667,375=>556,376=>667,377=>611,378=>500,379=>611,380=>500,381=>611,382=>500,383=>333,384=>611,385=>963,386=>704,387=>611,388=>687,389=>611,390=>722,391=>752,392=>562,393=>722,394=>968,395=>722,396=>611,397=>609,398=>667,399=>778,400=>672,401=>611,402=>333,403=>778,404=>667,405=>940,406=>278,407=>395,408=>778,409=>556,410=>333,411=>620,412=>944,413=>722,414=>611,415=>778,416=>811,417=>673,418=>1111,419=>722,420=>914,421=>611,422=>647,423=>667,424=>556,425=>673,426=>441,427=>333,428=>742,429=>333,430=>611,431=>789,432=>676,433=>766,434=>722,435=>839,436=>620,437=>611,438=>500,439=>556,440=>556,441=>645,442=>569,443=>579,446=>611,447=>608,448=>260,449=>370,450=>584,451=>278,452=>1333,453=>1222,454=>1111,455=>1167,456=>889,457=>556,458=>1278,459=>1000,460=>889,461=>722,462=>556,463=>278,464=>278,465=>778,466=>611,467=>722,468=>611,469=>722,470=>611,471=>722,472=>611,473=>722,474=>611,475=>722,476=>611,477=>556,478=>722,479=>556,480=>722,481=>556,482=>1000,483=>889,484=>778,485=>611,486=>778,487=>611,488=>722,489=>556,490=>778,491=>611,492=>778,493=>611,494=>556,495=>556,496=>278,497=>1333,498=>1222,499=>1111,500=>778,501=>611,503=>630,504=>722,505=>611,506=>722,507=>556,508=>1000,509=>889,510=>778,511=>611,512=>722,513=>556,514=>722,515=>556,516=>667,517=>556,518=>667,519=>556,520=>278,521=>278,522=>278,523=>278,524=>778,525=>611,526=>778,527=>611,528=>722,529=>389,530=>722,531=>389,532=>722,533=>611,534=>722,535=>611,536=>667,537=>556,538=>611,539=>333,540=>569,541=>486,542=>722,543=>611,548=>645,549=>500,550=>722,551=>556,552=>667,553=>556,554=>778,555=>611,556=>778,557=>611,558=>778,559=>611,560=>778,561=>611,562=>667,563=>556,567=>278,592=>556,593=>677,594=>678,595=>611,596=>556,597=>600,598=>625,599=>625,600=>556,601=>556,602=>834,603=>571,604=>557,605=>820,606=>570,607=>316,608=>619,609=>611,610=>566,611=>556,612=>656,613=>619,614=>611,615=>611,616=>300,617=>344,618=>300,619=>473,620=>527,621=>298,622=>778,623=>893,624=>889,625=>889,626=>628,627=>626,628=>615,629=>606,630=>878,631=>839,632=>738,633=>411,634=>406,635=>426,636=>396,637=>396,638=>455,639=>475,640=>620,641=>620,642=>610,643=>333,644=>331,645=>333,646=>553,647=>328,648=>333,649=>643,650=>726,651=>639,652=>556,653=>778,654=>556,655=>556,656=>551,657=>591,658=>556,659=>642,660=>611,661=>611,662=>611,663=>556,664=>611,665=>554,666=>590,667=>616,668=>603,669=>552,670=>588,671=>454,672=>626,673=>611,674=>611,675=>1004,676=>1018,677=>1097,678=>804,679=>593,680=>840,681=>866,682=>752,683=>668,684=>525,685=>486,686=>659,687=>679,688=>377,689=>377,690=>202,691=>272,692=>272,693=>299,694=>395,695=>534,696=>364,697=>278,698=>454,699=>278,700=>278,701=>278,702=>333,703=>333,704=>333,705=>333,706=>333,707=>333,708=>333,709=>333,710=>333,711=>333,712=>333,713=>333,714=>333,715=>333,716=>272,717=>333,718=>333,719=>333,720=>333,721=>333,722=>333,723=>333,724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,731=>333,732=>333,733=>333,734=>333,735=>510,736=>372,737=>210,738=>363,739=>373,740=>334,741=>526,742=>526,743=>526,744=>526,745=>526,746=>519,747=>519,748=>333,749=>333,750=>333,751=>333,752=>333,753=>333,754=>333,755=>333,756=>333,757=>437,758=>437,759=>400,760=>333,761=>200,762=>200,763=>200,764=>200,765=>333,766=>333,767=>333,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,859=>0,860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,867=>0,868=>0,869=>0,870=>0,871=>0,872=>0,873=>0,874=>0,875=>0,876=>0,877=>0,878=>0,879=>0,884=>379,885=>379,890=>333,894=>333,900=>363,901=>333,902=>761,903=>333,904=>864,905=>903,906=>454,908=>796,910=>991,911=>867,912=>315,913=>696,914=>640,915=>585,916=>726,917=>589,918=>581,919=>654,920=>783,921=>215,922=>648,923=>710,924=>829,925=>683,926=>645,927=>738,928=>726,929=>645,931=>673,932=>674,933=>771,934=>773,935=>780,936=>778,937=>766,938=>263,939=>771,940=>660,941=>541,942=>560,943=>356,944=>568,945=>632,946=>560,947=>591,948=>609,949=>541,950=>488,951=>608,952=>562,953=>315,954=>533,955=>603,956=>582,957=>586,958=>513,959=>611,960=>658,961=>595,962=>590,963=>657,964=>557,965=>568,966=>768,967=>632,968=>708,969=>778,970=>315,971=>568,972=>599,973=>568,974=>778,977=>580,978=>742,979=>857,980=>620,981=>706,982=>740,983=>556,1008=>556,1009=>566,1012=>778,1013=>328,1024=>670,1025=>670,1026=>800,1027=>611,1028=>714,1029=>667,1030=>314,1031=>300,1032=>576,1033=>1100,1034=>1114,1035=>806,1036=>740,1037=>757,1038=>711,1039=>754,1040=>707,1041=>704,1042=>704,1043=>611,1044=>900,1045=>670,1046=>1076,1047=>667,1048=>757,1049=>757,1050=>740,1051=>729,1052=>874,1053=>753,1054=>774,1055=>753,1056=>675,1057=>711,1058=>611,1059=>711,1060=>904,1061=>666,1062=>816,1063=>698,1064=>1057,1065=>1157,1066=>837,1067=>980,1068=>675,1069=>711,1070=>1093,1071=>708,1072=>552,1073=>593,1074=>554,1075=>423,1076=>685,1077=>573,1078=>782,1079=>557,1080=>615,1081=>615,1082=>559,1083=>568,1084=>666,1085=>603,1086=>606,1087=>603,1088=>612,1089=>556,1090=>440,1091=>549,1092=>964,1093=>539,1094=>652,1095=>554,1096=>886,1097=>968,1098=>699,1099=>778,1100=>568,1101=>556,1102=>848,1103=>586,1104=>573,1105=>573,1106=>606,1107=>423,1108=>556,1109=>555,1110=>260,1111=>278,1112=>270,1113=>898,1114=>898,1115=>626,1116=>559,1117=>615,1118=>549,1119=>604,1120=>986,1121=>736,1136=>832,1137=>748,1138=>774,1139=>606,1148=>942,1149=>736,1150=>986,1151=>736,1154=>449,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,1162=>832,1163=>675,1164=>678,1165=>611,1166=>675,1167=>612,1168=>636,1169=>440,1170=>622,1171=>449,1172=>647,1173=>574,1174=>1096,1175=>803,1176=>683,1177=>555,1178=>759,1179=>573,1180=>730,1181=>554,1182=>737,1183=>555,1184=>892,1185=>680,1186=>825,1187=>653,1188=>999,1189=>763,1190=>1105,1191=>925,1192=>963,1193=>766,1194=>722,1195=>558,1196=>614,1197=>438,1198=>643,1199=>573,1200=>643,1201=>603,1202=>670,1203=>548,1204=>952,1205=>738,1206=>781,1207=>615,1208=>698,1209=>588,1210=>687,1211=>588,1212=>993,1213=>761,1214=>993,1215=>761,1216=>314,1217=>1076,1218=>809,1219=>700,1220=>543,1221=>793,1222=>634,1223=>753,1224=>603,1225=>819,1226=>663,1227=>706,1228=>588,1229=>935,1230=>720,1231=>314,1232=>707,1233=>564,1234=>707,1235=>566,1236=>1004,1237=>898,1238=>670,1239=>573,1240=>722,1241=>573,1242=>722,1243=>573,1244=>1076,1245=>782,1246=>667,1247=>557,1248=>556,1249=>552,1250=>757,1251=>615,1252=>757,1253=>615,1254=>778,1255=>611,1256=>774,1257=>606,1258=>774,1259=>606,1260=>711,1261=>556,1262=>700,1263=>544,1264=>701,1265=>539,1266=>700,1267=>537,1268=>698,1269=>554,1270=>611,1271=>432,1272=>980,1273=>778,1296=>672,1297=>546,1298=>729,1299=>577,1306=>778,1307=>612,1308=>944,1309=>776,1310=>730,1311=>554,1329=>730,1330=>713,1331=>765,1332=>752,1333=>708,1334=>801,1335=>496,1336=>713,1337=>855,1338=>686,1339=>727,1340=>420,1341=>897,1342=>841,1343=>708,1344=>660,1345=>666,1346=>747,1347=>698,1348=>757,1349=>630,1350=>747,1351=>651,1352=>743,1353=>657,1354=>728,1355=>799,1356=>752,1357=>743,1358=>768,1359=>691,1360=>713,1361=>640,1362=>425,1363=>818,1364=>672,1365=>805,1366=>754,1369=>333,1370=>222,1371=>250,1372=>333,1373=>333,1374=>352,1375=>362,1377=>873,1378=>613,1379=>634,1380=>636,1381=>593,1382=>639,1383=>417,1384=>613,1385=>658,1386=>711,1387=>609,1388=>318,1389=>836,1390=>670,1391=>613,1392=>607,1393=>611,1394=>626,1395=>619,1396=>618,1397=>324,1398=>613,1399=>540,1400=>591,1401=>392,1402=>873,1403=>577,1404=>603,1405=>600,1406=>626,1407=>951,1408=>613,1409=>612,1410=>348,1411=>951,1412=>616,1413=>606,1414=>763,1415=>626,1417=>333,1418=>398,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1467=>0,1468=>0,1469=>0,1470=>516,1471=>0,1472=>297,1473=>0,1474=>0,1475=>333,1476=>0,1488=>714,1489=>651,1490=>557,1491=>638,1492=>682,1493=>297,1494=>443,1495=>682,1496=>670,1497=>284,1498=>590,1499=>595,1500=>667,1501=>683,1502=>704,1503=>297,1504=>429,1505=>670,1506=>653,1507=>661,1508=>660,1509=>616,1510=>671,1511=>672,1512=>600,1513=>840,1514=>756,1520=>554,1521=>550,1522=>542,1523=>238,1524=>474,2561=>0,2562=>122,2563=>313,2565=>897,2566=>1157,2567=>930,2568=>966,2569=>762,2570=>762,2575=>729,2576=>904,2579=>773,2580=>903,2581=>726,2582=>672,2583=>741,2584=>790,2585=>702,2586=>723,2587=>693,2588=>688,2589=>673,2590=>683,2591=>686,2592=>711,2593=>680,2594=>693,2595=>729,2596=>691,2597=>694,2598=>699,2599=>666,2600=>669,2602=>683,2603=>690,2604=>660,2605=>659,2606=>692,2607=>772,2608=>673,2610=>731,2611=>814,2613=>663,2614=>704,2616=>702,2617=>650,2620=>0,2622=>307,2623=>304,2624=>306,2625=>7,2626=>7,2631=>7,2632=>8,2635=>6,2636=>5,2637=>0,2641=>0,2649=>684,2650=>813,2651=>715,2652=>695,2654=>709,2662=>697,2663=>630,2664=>696,2665=>690,2666=>646,2667=>636,2668=>571,2669=>682,2670=>718,2671=>730,2672=>9,2673=>162,2674=>722,2675=>760,2676=>1110,2677=>0,4256=>616,4257=>645,4258=>664,4259=>839,4260=>627,4261=>630,4262=>827,4263=>928,4264=>639,4265=>630,4266=>951,4267=>606,4268=>608,4269=>835,4270=>630,4271=>610,4272=>804,4273=>615,4274=>823,4275=>747,4276=>870,4277=>627,4278=>840,4279=>627,4280=>665,4281=>610,4282=>799,4283=>598,4284=>665,4285=>664,4286=>608,4287=>886,4288=>629,4304=>463,4305=>516,4306=>564,4307=>706,4308=>459,4309=>476,4310=>623,4311=>711,4312=>494,4313=>476,4314=>894,4315=>500,4316=>500,4317=>712,4318=>493,4319=>503,4320=>712,4321=>503,4322=>710,4323=>670,4324=>707,4325=>459,4326=>691,4327=>465,4328=>492,4329=>480,4330=>656,4331=>500,4332=>492,4333=>524,4334=>500,4335=>688,4336=>510,4337=>739,4338=>450,4339=>479,4340=>502,4341=>501,4345=>564,4347=>515,4348=>449,5024=>714,5025=>731,5026=>624,5027=>908,5028=>1040,5029=>271,5030=>654,5031=>863,5032=>604,5033=>791,5034=>714,5035=>522,5036=>661,5037=>926,5038=>615,5039=>811,5040=>538,5041=>633,5042=>979,5043=>964,5044=>635,5045=>607,5046=>753,5047=>831,5048=>566,5049=>977,5050=>958,5051=>710,5052=>616,5053=>834,5054=>790,5055=>612,5056=>766,5057=>857,5058=>627,5059=>649,5060=>607,5061=>1127,5062=>680,5063=>920,5064=>928,5065=>1333,5066=>920,5067=>705,5068=>695,5069=>1074,5070=>672,5071=>672,5072=>667,5073=>819,5074=>679,5075=>575,5076=>903,5077=>652,5078=>776,5079=>643,5080=>670,5081=>660,5082=>648,5083=>934,5084=>909,5085=>613,5086=>615,5087=>735,5088=>900,5089=>1024,5090=>647,5091=>760,5092=>829,5093=>824,5094=>756,5095=>625,5096=>981,5097=>1014,5098=>1040,5099=>790,5100=>926,5101=>686,5102=>656,5103=>920,5104=>741,5105=>890,5106=>626,5107=>974,5108=>699,7680=>722,7681=>556,7682=>722,7683=>611,7684=>722,7685=>611,7686=>722,7687=>611,7688=>722,7689=>556,7690=>722,7691=>611,7692=>722,7693=>611,7694=>722,7695=>611,7696=>722,7697=>611,7698=>722,7699=>611,7700=>667,7701=>556,7702=>667,7703=>556,7704=>667,7705=>556,7706=>667,7707=>556,7708=>667,7709=>556,7710=>611,7711=>333,7712=>778,7713=>611,7714=>722,7715=>611,7716=>722,7717=>611,7718=>722,7719=>611,7720=>722,7721=>611,7722=>722,7723=>611,7724=>278,7725=>278,7726=>278,7727=>278,7728=>722,7729=>556,7730=>722,7731=>556,7732=>722,7733=>556,7734=>611,7735=>278,7736=>611,7737=>278,7738=>611,7739=>278,7740=>611,7741=>278,7742=>833,7743=>889,7744=>833,7745=>889,7746=>833,7747=>889,7748=>722,7749=>611,7750=>722,7751=>611,7752=>722,7753=>611,7754=>722,7755=>611,7756=>778,7757=>611,7758=>778,7759=>611,7760=>778,7761=>611,7762=>778,7763=>611,7764=>667,7765=>611,7766=>667,7767=>611,7768=>722,7769=>389,7770=>722,7771=>389,7772=>722,7773=>389,7774=>722,7775=>389,7776=>667,7777=>556,7778=>667,7779=>556,7780=>667,7781=>556,7782=>667,7783=>556,7784=>667,7785=>556,7786=>611,7787=>333,7788=>611,7789=>333,7790=>611,7791=>333,7792=>611,7793=>333,7794=>722,7795=>611,7796=>722,7797=>611,7798=>722,7799=>611,7800=>722,7801=>611,7802=>722,7803=>611,7804=>667,7805=>556,7806=>667,7807=>556,7808=>944,7809=>778,7810=>944,7811=>778,7812=>944,7813=>778,7814=>944,7815=>778,7816=>944,7817=>778,7818=>667,7819=>556,7820=>667,7821=>556,7822=>667,7823=>556,7824=>611,7825=>500,7826=>611,7827=>500,7828=>611,7829=>500,7830=>611,7831=>333,7832=>778,7833=>556,7834=>555,7835=>333,7840=>722,7841=>556,7842=>722,7843=>556,7844=>722,7845=>556,7846=>722,7847=>556,7848=>667,7849=>556,7850=>722,7851=>556,7852=>722,7853=>556,7854=>722,7855=>556,7856=>722,7857=>556,7858=>722,7859=>556,7860=>722,7861=>556,7862=>722,7863=>556,7864=>667,7865=>556,7866=>667,7867=>556,7868=>667,7869=>556,7870=>667,7871=>556,7872=>667,7873=>556,7874=>667,7875=>556,7876=>667,7877=>556,7878=>667,7879=>556,7880=>278,7881=>278,7882=>278,7883=>278,7884=>778,7885=>611,7886=>778,7887=>611,7888=>778,7889=>611,7890=>778,7891=>611,7892=>778,7893=>611,7894=>778,7895=>611,7896=>778,7897=>611,7898=>811,7899=>673,7900=>811,7901=>673,7902=>811,7903=>673,7904=>811,7905=>673,7906=>811,7907=>673,7908=>722,7909=>611,7910=>722,7911=>611,7912=>789,7913=>676,7914=>789,7915=>676,7916=>789,7917=>676,7918=>789,7919=>676,7920=>789,7921=>676,7922=>667,7923=>556,7924=>667,7925=>556,7926=>667,7927=>556,7928=>667,7929=>556,7936=>632,7937=>632,7938=>632,7939=>632,7940=>632,7941=>632,7942=>632,7943=>632,7944=>696,7945=>696,7946=>865,7947=>849,7948=>796,7949=>807,7950=>730,7951=>750,7952=>541,7953=>541,7954=>541,7955=>541,7956=>541,7957=>541,7960=>758,7961=>760,7962=>957,7963=>943,7964=>939,7965=>945,7968=>608,7969=>608,7970=>608,7971=>608,7972=>608,7973=>608,7974=>608,7975=>608,7976=>823,7977=>831,7978=>1026,7979=>1017,7980=>1002,7981=>1024,7982=>908,7983=>909,7984=>315,7985=>315,7986=>373,7987=>375,7988=>378,7989=>374,7990=>370,7991=>384,7992=>378,7993=>383,7994=>596,7995=>579,7996=>572,7997=>576,7998=>474,7999=>459,8000=>610,8001=>610,8002=>610,8003=>610,8004=>610,8005=>610,8008=>800,8009=>871,8010=>1084,8011=>1079,8012=>975,8013=>973,8016=>568,8017=>568,8018=>568,8019=>568,8020=>568,8021=>568,8022=>568,8023=>568,8025=>906,8027=>1080,8029=>1115,8031=>977,8032=>778,8033=>778,8034=>778,8035=>778,8036=>778,8037=>778,8038=>778,8039=>778,8040=>837,8041=>860,8042=>1062,8043=>1072,8044=>962,8045=>985,8046=>922,8047=>959,8048=>632,8049=>632,8050=>541,8051=>541,8052=>608,8053=>608,8054=>315,8055=>315,8056=>610,8057=>610,8058=>568,8059=>568,8060=>778,8061=>778,8064=>632,8065=>632,8066=>632,8067=>632,8068=>632,8069=>632,8070=>632,8071=>632,8072=>909,8073=>906,8074=>1061,8075=>1035,8076=>984,8077=>994,8078=>910,8079=>916,8080=>608,8081=>608,8082=>608,8083=>608,8084=>608,8085=>608,8086=>608,8087=>608,8088=>1006,8089=>1015,8090=>1204,8091=>1207,8092=>1188,8093=>1209,8094=>1096,8095=>1105,8096=>778,8097=>778,8098=>778,8099=>778,8100=>778,8101=>778,8102=>778,8103=>778,8104=>1026,8105=>1048,8106=>1251,8107=>1260,8108=>1150,8109=>1177,8110=>1106,8111=>1142,8112=>632,8113=>632,8114=>632,8115=>632,8116=>660,8118=>632,8119=>632,8120=>696,8121=>696,8122=>696,8123=>696,8124=>907,8125=>278,8126=>346,8127=>278,8128=>278,8129=>333,8130=>608,8131=>608,8132=>560,8134=>608,8135=>608,8136=>776,8137=>793,8138=>847,8139=>854,8140=>848,8141=>492,8142=>489,8143=>394,8144=>335,8145=>354,8146=>367,8147=>368,8150=>353,8151=>366,8152=>240,8153=>259,8154=>418,8155=>416,8157=>481,8158=>589,8159=>333,8160=>568,8161=>568,8162=>568,8163=>568,8164=>595,8165=>595,8166=>568,8167=>568,8168=>771,8169=>771,8170=>951,8171=>982,8172=>806,8173=>333,8174=>333,8175=>333,8178=>778,8179=>778,8180=>778,8182=>778,8183=>778,8184=>909,8185=>809,8186=>897,8187=>825,8188=>978,8189=>333,8190=>278,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>556,8200=>278,8201=>200,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>556,8211=>556,8212=>1000,8213=>1000,8214=>437,8215=>556,8216=>278,8217=>278,8218=>278,8219=>278,8220=>500,8221=>500,8222=>500,8223=>500,8224=>556,8225=>556,8226=>350,8227=>350,8228=>278,8229=>666,8230=>1000,8231=>278,8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>500,8240=>1000,8241=>1367,8242=>238,8243=>426,8244=>614,8245=>238,8246=>379,8247=>571,8248=>450,8249=>333,8250=>333,8251=>622,8252=>666,8253=>614,8254=>556,8255=>658,8256=>658,8257=>438,8258=>840,8259=>400,8260=>167,8261=>334,8262=>334,8263=>1222,8264=>944,8265=>944,8266=>556,8267=>537,8268=>537,8269=>537,8270=>389,8271=>333,8272=>658,8273=>389,8274=>634,8275=>568,8276=>658,8277=>793,8278=>515,8279=>855,8280=>722,8281=>725,8282=>224,8283=>722,8284=>604,8285=>224,8286=>224,8287=>0,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>351,8305=>200,8308=>351,8309=>351,8310=>351,8311=>351,8312=>351,8313=>351,8314=>351,8315=>351,8316=>351,8317=>216,8318=>218,8319=>391,8320=>351,8321=>301,8322=>351,8323=>351,8324=>351,8325=>351,8326=>351,8327=>351,8328=>351,8329=>351,8330=>350,8331=>350,8332=>350,8333=>216,8334=>216,8336=>363,8337=>366,8338=>394,8339=>360,8340=>355,8355=>611,8356=>591,8357=>889,8358=>727,8360=>1265,8362=>1049,8363=>580,8364=>640,8368=>605,8373=>591,8376=>612,8400=>0,8401=>0,8402=>0,8403=>0,8406=>0,8407=>0,8411=>0,8412=>0,8413=>0,8414=>0,8415=>0,8416=>0,8417=>0,8421=>0,8422=>0,8423=>0,8424=>0,8425=>0,8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,8432=>0,8448=>945,8449=>968,8451=>1034,8453=>981,8454=>1002,8455=>667,8456=>722,8457=>919,8462=>611,8465=>606,8467=>608,8468=>881,8470=>999,8471=>860,8476=>699,8480=>1000,8481=>1370,8482=>1000,8486=>766,8487=>778,8489=>315,8490=>741,8491=>729,8494=>556,8498=>588,8501=>714,8502=>651,8503=>557,8504=>638,8506=>871,8507=>1431,8513=>778,8514=>611,8515=>611,8516=>667,8523=>669,8525=>1242,8526=>482,8531=>869,8532=>869,8533=>869,8534=>869,8535=>869,8536=>869,8537=>869,8538=>869,8539=>869,8540=>869,8541=>869,8542=>869,8543=>869,8544=>278,8545=>556,8546=>834,8547=>945,8548=>667,8549=>945,8550=>1223,8551=>1501,8552=>945,8553=>667,8554=>945,8555=>1223,8556=>611,8557=>722,8558=>722,8559=>833,8560=>278,8561=>556,8562=>834,8563=>834,8564=>556,8565=>834,8566=>1112,8567=>1390,8568=>834,8569=>556,8570=>834,8571=>1112,8572=>278,8573=>556,8574=>611,8575=>889,8592=>964,8593=>964,8594=>964,8595=>964,8596=>964,8597=>964,8598=>964,8599=>964,8600=>964,8601=>964,8602=>964,8603=>964,8606=>964,8607=>964,8608=>964,8609=>964,8610=>964,8611=>964,8612=>964,8613=>964,8614=>964,8615=>964,8616=>964,8644=>964,8645=>964,8646=>964,8647=>964,8648=>964,8649=>964,8650=>964,8704=>722,8706=>556,8707=>667,8710=>729,8711=>729,8721=>856,8722=>584,8725=>869,8730=>594,8747=>608,8800=>548,8804=>584,8805=>584,9251=>500,9674=>541,9675=>860,9711=>1020,9772=>923,9824=>626,9825=>694,9826=>595,9827=>776,9828=>626,9829=>694,9830=>595,9831=>776,9833=>333,9834=>556,9835=>778,9836=>778,9837=>556,9838=>556,9839=>556,10048=>1453,11568=>352,11569=>872,11570=>872,11571=>720,11572=>720,11573=>720,11574=>664,11575=>752,11576=>752,11577=>720,11578=>720,11579=>596,11580=>698,11581=>742,11582=>574,11583=>742,11584=>872,11585=>872,11586=>312,11587=>720,11588=>696,11589=>720,11590=>584,11591=>742,11592=>796,11593=>613,11594=>672,11595=>888,11596=>836,11597=>524,11598=>720,11599=>300,11600=>836,11601=>300,11602=>718,11603=>388,11604=>872,11605=>872,11606=>696,11607=>308,11608=>640,11609=>872,11610=>872,11611=>762,11612=>424,11613=>720,11614=>762,11615=>720,11616=>709,11617=>720,11618=>541,11619=>828,11620=>454,11621=>828,11631=>482,11799=>333,42888=>333,42889=>276,42890=>342,42891=>258,42892=>258,64256=>607,64257=>576,64258=>603,64259=>849,64260=>849,64261=>627,64275=>1243,64276=>1226,64277=>1233,64278=>1238,64279=>1448,64285=>284,64286=>305,64287=>542,64288=>653,64289=>964,64290=>888,64291=>932,64292=>845,64293=>917,64294=>933,64295=>850,64296=>1006,64297=>584,64298=>840,64299=>840,64300=>840,64301=>840,64302=>714,64303=>714,64304=>714,64305=>651,64306=>557,64307=>638,64308=>682,64309=>348,64310=>443,64312=>670,64313=>354,64314=>590,64315=>595,64316=>667,64318=>704,64320=>429,64321=>670,64323=>661,64324=>660,64326=>671,64327=>672,64328=>600,64329=>840,64330=>756,64331=>212,64332=>591,64333=>550,64334=>568,64335=>714,65533=>900,65535=>700); +$desc=array('Flags'=>32,'FontBBox'=>'[-968 -460 1556 1066]','ItalicAngle'=>0,'Ascent'=>900,'Descent'=>-200,'Leading'=>100,'CapHeight'=>729,'XHeight'=>540,'StemV'=>105,'StemH'=>45,'AvgWidth'=>642,'MaxWidth'=>1473,'MissingWidth'=>800); +$cw=array(0=>800,32=>278,33=>333,34=>474,35=>556,36=>556,37=>889,38=>722,39=>250,40=>333,41=>333,42=>389,43=>584,44=>250,45=>333,46=>250,47=>278,48=>556,49=>556,50=>556,51=>556,52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>250,59=>250,60=>584,61=>584,62=>584,63=>611,64=>975,65=>697,66=>704,67=>721,68=>724,69=>665,70=>632,71=>769,72=>749,73=>310,74=>572,75=>728,76=>619,77=>870,78=>753,79=>782,80=>677,81=>782,82=>722,83=>681,84=>644,85=>738,86=>663,87=>959,88=>675,89=>643,90=>608,91=>333,92=>278,93=>333,94=>584,95=>556,96=>250,97=>566,98=>621,99=>558,100=>621,101=>583,102=>343,103=>612,104=>604,105=>280,106=>280,107=>564,108=>270,109=>894,110=>613,111=>614,112=>621,113=>621,114=>392,115=>556,116=>338,117=>613,118=>542,119=>781,120=>549,121=>549,122=>507,123=>389,124=>280,125=>389,126=>500,160=>278,161=>333,162=>556,163=>556,164=>556,165=>556,166=>280,167=>556,168=>333,169=>737,170=>370,171=>556,172=>584,173=>333,174=>737,175=>333,176=>606,177=>584,178=>351,179=>351,180=>333,181=>611,182=>556,183=>278,184=>333,185=>300,186=>365,187=>556,188=>869,189=>869,190=>869,191=>611,192=>697,193=>697,194=>697,195=>697,196=>697,197=>697,198=>1015,199=>721,200=>665,201=>665,202=>665,203=>665,204=>310,205=>310,206=>310,207=>310,208=>741,209=>753,210=>782,211=>782,212=>782,213=>782,214=>782,215=>584,216=>783,217=>738,218=>738,219=>738,220=>738,221=>643,222=>677,223=>611,224=>566,225=>566,226=>566,227=>566,228=>566,229=>566,230=>889,231=>558,232=>583,233=>583,234=>583,235=>583,236=>280,237=>280,238=>300,239=>300,240=>614,241=>613,242=>614,243=>614,244=>614,245=>614,246=>614,247=>584,248=>614,249=>613,250=>613,251=>613,252=>613,253=>549,254=>621,255=>549,256=>697,257=>566,258=>697,259=>566,260=>717,261=>556,262=>721,263=>558,264=>721,265=>558,266=>721,267=>558,268=>721,269=>558,270=>724,271=>789,272=>741,273=>626,274=>665,275=>583,276=>665,277=>583,278=>665,279=>583,280=>665,281=>584,282=>665,283=>583,284=>769,285=>612,286=>769,287=>612,288=>769,289=>612,290=>769,291=>612,292=>749,293=>604,294=>729,295=>606,296=>310,297=>300,298=>310,299=>280,300=>310,301=>300,302=>310,303=>280,304=>310,305=>280,306=>622,307=>548,308=>572,309=>280,310=>728,311=>564,312=>559,313=>619,314=>270,315=>619,316=>270,317=>619,318=>442,319=>619,320=>440,321=>637,322=>278,323=>753,324=>613,325=>753,326=>613,327=>753,328=>613,329=>701,330=>752,331=>613,332=>782,333=>614,334=>782,335=>614,336=>782,337=>614,338=>1012,339=>977,340=>722,341=>392,342=>722,343=>392,344=>722,345=>392,346=>681,347=>556,348=>681,349=>556,350=>681,351=>556,352=>681,353=>556,354=>644,355=>333,356=>644,357=>481,358=>644,359=>333,360=>738,361=>613,362=>738,363=>613,364=>738,365=>613,366=>738,367=>613,368=>738,369=>613,370=>738,371=>611,372=>959,373=>781,374=>643,375=>549,376=>643,377=>608,378=>507,379=>608,380=>507,381=>608,382=>507,383=>333,384=>621,385=>903,386=>679,387=>636,388=>690,389=>653,390=>721,391=>754,392=>613,393=>741,394=>923,395=>722,396=>621,397=>622,398=>665,399=>782,400=>681,401=>611,402=>333,403=>786,404=>657,405=>949,406=>299,407=>433,408=>784,409=>564,410=>393,411=>600,412=>978,413=>748,414=>613,415=>782,416=>791,417=>658,418=>1076,419=>847,420=>876,421=>621,422=>647,423=>681,424=>561,425=>676,426=>441,427=>333,428=>715,429=>333,430=>624,431=>773,432=>666,433=>799,434=>722,435=>839,436=>643,437=>611,438=>500,439=>567,440=>556,441=>645,442=>569,443=>579,446=>572,447=>627,448=>260,449=>400,450=>584,451=>278,452=>1300,453=>1204,454=>1111,455=>1183,456=>855,457=>556,458=>1294,459=>1000,460=>889,461=>697,462=>566,463=>310,464=>300,465=>782,466=>614,467=>738,468=>613,469=>738,470=>613,471=>738,472=>613,473=>738,474=>613,475=>738,476=>613,477=>583,478=>697,479=>566,480=>697,481=>566,482=>1005,483=>889,484=>804,485=>652,486=>769,487=>612,488=>728,489=>564,490=>782,491=>611,492=>782,493=>611,494=>567,495=>562,496=>300,497=>1333,498=>1222,499=>1111,500=>769,501=>612,503=>659,504=>753,505=>613,506=>697,507=>566,508=>1015,509=>889,510=>783,511=>614,512=>697,513=>566,514=>697,515=>566,516=>665,517=>583,518=>665,519=>583,520=>310,521=>300,522=>310,523=>280,524=>782,525=>614,526=>782,527=>614,528=>722,529=>392,530=>722,531=>392,532=>738,533=>613,534=>738,535=>613,536=>681,537=>556,538=>644,539=>338,540=>586,541=>484,542=>749,543=>604,548=>611,549=>500,550=>697,551=>566,552=>655,553=>583,554=>782,555=>614,556=>782,557=>614,558=>782,559=>614,560=>782,561=>614,562=>643,563=>549,567=>280,592=>566,593=>687,594=>687,595=>621,596=>558,597=>573,598=>636,599=>636,600=>583,601=>583,602=>834,603=>571,604=>561,605=>820,606=>570,607=>316,608=>625,609=>617,610=>579,611=>556,612=>654,613=>613,614=>603,615=>604,616=>300,617=>285,618=>300,619=>473,620=>527,621=>285,622=>744,623=>894,624=>895,625=>894,626=>628,627=>628,628=>625,629=>614,630=>894,631=>848,632=>714,633=>389,634=>386,635=>406,636=>386,637=>386,638=>473,639=>473,640=>586,641=>581,642=>609,643=>333,644=>331,645=>313,646=>553,647=>328,648=>315,649=>643,650=>728,651=>635,652=>542,653=>781,654=>549,655=>542,656=>551,657=>591,658=>562,659=>593,660=>572,661=>572,662=>572,663=>586,664=>614,665=>563,666=>590,667=>616,668=>613,669=>552,670=>588,671=>454,672=>636,673=>572,674=>572,675=>1004,676=>1029,677=>1117,678=>807,679=>583,680=>824,681=>871,682=>753,683=>668,684=>525,685=>486,686=>659,687=>679,688=>377,689=>377,690=>202,691=>272,692=>272,693=>299,694=>395,695=>534,696=>364,697=>250,698=>454,699=>250,700=>250,701=>250,702=>333,703=>333,704=>333,705=>333,706=>333,707=>333,708=>333,709=>333,710=>333,711=>333,712=>333,713=>333,714=>250,715=>250,716=>272,717=>333,718=>333,719=>250,720=>333,721=>333,722=>333,723=>333,724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,731=>333,732=>333,733=>333,734=>333,735=>510,736=>372,737=>210,738=>363,739=>373,740=>334,741=>526,742=>526,743=>526,744=>526,745=>526,746=>519,747=>519,748=>333,749=>333,750=>500,751=>333,752=>333,753=>333,754=>333,755=>333,756=>250,757=>400,758=>400,759=>400,760=>333,761=>200,762=>200,763=>200,764=>200,765=>333,766=>333,767=>333,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,859=>0,860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,867=>0,868=>0,869=>0,870=>0,871=>0,872=>0,873=>0,874=>0,875=>0,876=>0,877=>0,878=>0,879=>0,884=>379,885=>379,890=>333,894=>333,900=>363,901=>333,902=>697,903=>333,904=>802,905=>878,906=>430,908=>800,910=>958,911=>861,912=>341,913=>697,914=>673,915=>634,916=>744,917=>655,918=>608,919=>749,920=>796,921=>310,922=>728,923=>713,924=>910,925=>774,926=>684,927=>782,928=>770,929=>716,931=>676,932=>658,933=>761,934=>789,935=>784,936=>832,937=>799,938=>310,939=>771,940=>632,941=>571,942=>598,943=>356,944=>608,945=>632,946=>600,947=>573,948=>622,949=>571,950=>512,951=>598,952=>595,953=>341,954=>567,955=>589,956=>613,957=>566,958=>539,959=>614,960=>658,961=>634,962=>593,963=>662,964=>557,965=>608,966=>788,967=>631,968=>728,969=>798,970=>341,971=>608,972=>614,973=>608,974=>798,977=>609,978=>742,979=>917,980=>744,981=>714,982=>798,983=>642,1008=>642,1009=>614,1012=>782,1013=>358,1024=>655,1025=>655,1026=>824,1027=>612,1028=>721,1029=>681,1030=>310,1031=>310,1032=>572,1033=>1078,1034=>1116,1035=>824,1036=>728,1037=>753,1038=>701,1039=>750,1040=>697,1041=>704,1042=>704,1043=>612,1044=>900,1045=>655,1046=>1076,1047=>681,1048=>753,1049=>753,1050=>728,1051=>711,1052=>870,1053=>749,1054=>782,1055=>749,1056=>677,1057=>721,1058=>644,1059=>701,1060=>912,1061=>651,1062=>809,1063=>706,1064=>1059,1065=>1139,1066=>847,1067=>976,1068=>677,1069=>721,1070=>1095,1071=>701,1072=>566,1073=>595,1074=>563,1075=>428,1076=>679,1077=>583,1078=>782,1079=>571,1080=>625,1081=>625,1082=>559,1083=>573,1084=>676,1085=>613,1086=>614,1087=>613,1088=>621,1089=>558,1090=>440,1091=>549,1092=>972,1093=>539,1094=>654,1095=>573,1096=>896,1097=>970,1098=>703,1099=>788,1100=>577,1101=>568,1102=>857,1103=>581,1104=>583,1105=>583,1106=>631,1107=>428,1108=>568,1109=>555,1110=>280,1111=>300,1112=>270,1113=>893,1114=>907,1115=>629,1116=>559,1117=>625,1118=>549,1119=>614,1120=>986,1121=>736,1136=>832,1137=>758,1138=>782,1139=>606,1148=>942,1149=>736,1150=>986,1151=>736,1154=>449,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,1162=>832,1163=>675,1164=>682,1165=>611,1166=>677,1167=>612,1168=>636,1169=>440,1170=>622,1171=>449,1172=>647,1173=>574,1174=>1096,1175=>803,1176=>683,1177=>555,1178=>759,1179=>573,1180=>730,1181=>554,1182=>737,1183=>555,1184=>892,1185=>680,1186=>825,1187=>653,1188=>999,1189=>763,1190=>1105,1191=>925,1192=>963,1193=>766,1194=>722,1195=>558,1196=>614,1197=>438,1198=>643,1199=>573,1200=>643,1201=>603,1202=>670,1203=>548,1204=>952,1205=>738,1206=>781,1207=>615,1208=>698,1209=>588,1210=>687,1211=>588,1212=>993,1213=>761,1214=>993,1215=>761,1216=>314,1217=>1076,1218=>782,1219=>697,1220=>543,1221=>793,1222=>634,1223=>753,1224=>603,1225=>819,1226=>663,1227=>706,1228=>588,1229=>935,1230=>720,1231=>314,1232=>697,1233=>566,1234=>697,1235=>566,1236=>1004,1237=>898,1238=>655,1239=>583,1240=>722,1241=>583,1242=>722,1243=>583,1244=>1076,1245=>782,1246=>681,1247=>571,1248=>567,1249=>552,1250=>753,1251=>625,1252=>753,1253=>625,1254=>782,1255=>614,1256=>782,1257=>606,1258=>782,1259=>606,1260=>721,1261=>568,1262=>700,1263=>544,1264=>701,1265=>539,1266=>700,1267=>537,1268=>706,1269=>573,1270=>611,1271=>432,1272=>976,1273=>788,1296=>672,1297=>546,1298=>729,1299=>577,1306=>782,1307=>621,1308=>959,1309=>776,1310=>730,1311=>554,1329=>730,1330=>713,1331=>765,1332=>752,1333=>708,1334=>801,1335=>496,1336=>713,1337=>855,1338=>686,1339=>727,1340=>420,1341=>897,1342=>841,1343=>708,1344=>660,1345=>666,1346=>747,1347=>698,1348=>757,1349=>630,1350=>747,1351=>651,1352=>743,1353=>657,1354=>728,1355=>799,1356=>752,1357=>743,1358=>768,1359=>691,1360=>713,1361=>640,1362=>425,1363=>818,1364=>672,1365=>805,1366=>754,1369=>333,1370=>222,1371=>250,1372=>333,1373=>333,1374=>352,1375=>362,1377=>873,1378=>613,1379=>634,1380=>636,1381=>593,1382=>639,1383=>417,1384=>613,1385=>658,1386=>711,1387=>609,1388=>318,1389=>836,1390=>670,1391=>613,1392=>607,1393=>611,1394=>626,1395=>619,1396=>618,1397=>324,1398=>613,1399=>540,1400=>591,1401=>392,1402=>873,1403=>577,1404=>603,1405=>600,1406=>626,1407=>951,1408=>613,1409=>612,1410=>348,1411=>951,1412=>616,1413=>606,1414=>763,1415=>626,1417=>250,1418=>398,1423=>752,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1467=>0,1468=>0,1469=>0,1470=>516,1471=>0,1472=>297,1473=>0,1474=>0,1475=>333,1476=>0,1488=>714,1489=>651,1490=>557,1491=>638,1492=>682,1493=>297,1494=>443,1495=>682,1496=>670,1497=>284,1498=>590,1499=>595,1500=>667,1501=>683,1502=>704,1503=>297,1504=>429,1505=>670,1506=>653,1507=>661,1508=>660,1509=>616,1510=>671,1511=>672,1512=>600,1513=>840,1514=>756,1520=>554,1521=>550,1522=>542,1523=>238,1524=>474,2304=>0,2305=>0,2306=>0,2307=>305,2308=>737,2309=>737,2310=>928,2311=>504,2312=>504,2313=>622,2314=>844,2315=>961,2316=>681,2317=>473,2318=>473,2319=>473,2320=>473,2321=>928,2322=>928,2323=>928,2324=>928,2325=>789,2326=>820,2327=>562,2328=>630,2329=>770,2330=>660,2331=>684,2332=>743,2333=>732,2334=>720,2335=>608,2336=>571,2337=>651,2338=>578,2339=>648,2340=>604,2341=>700,2342=>540,2343=>633,2344=>608,2345=>608,2346=>519,2347=>773,2348=>532,2349=>618,2350=>558,2351=>596,2352=>475,2353=>475,2354=>696,2355=>701,2356=>701,2357=>532,2358=>686,2359=>519,2360=>707,2361=>526,2362=>0,2363=>266,2364=>0,2365=>482,2366=>266,2367=>266,2368=>266,2369=>0,2370=>0,2371=>0,2372=>0,2373=>0,2374=>0,2375=>0,2376=>0,2377=>266,2378=>266,2379=>266,2380=>266,2381=>0,2382=>189,2383=>266,2384=>879,2385=>0,2386=>0,2387=>0,2388=>0,2389=>0,2390=>0,2391=>0,2392=>789,2393=>820,2394=>562,2395=>743,2396=>651,2397=>578,2398=>773,2399=>596,2400=>940,2401=>666,2402=>0,2403=>0,2404=>674,2405=>674,2406=>575,2407=>575,2408=>575,2409=>575,2410=>575,2411=>575,2412=>575,2413=>575,2414=>575,2415=>575,2416=>365,2417=>387,2418=>737,2419=>737,2420=>928,2421=>888,2422=>737,2423=>737,2425=>743,2426=>596,2427=>608,2428=>743,2429=>615,2430=>651,2431=>532,2561=>0,2562=>0,2563=>313,2565=>897,2566=>1157,2567=>930,2568=>966,2569=>762,2570=>762,2575=>729,2576=>904,2579=>773,2580=>903,2581=>726,2582=>672,2583=>741,2584=>790,2585=>702,2586=>723,2587=>693,2588=>688,2589=>673,2590=>683,2591=>686,2592=>711,2593=>680,2594=>693,2595=>729,2596=>691,2597=>694,2598=>699,2599=>666,2600=>669,2602=>683,2603=>690,2604=>660,2605=>659,2606=>692,2607=>772,2608=>673,2610=>731,2611=>814,2613=>663,2614=>704,2616=>702,2617=>650,2620=>0,2622=>307,2623=>304,2624=>306,2625=>0,2626=>0,2631=>0,2632=>0,2635=>0,2636=>0,2637=>0,2641=>0,2649=>684,2650=>813,2651=>715,2652=>695,2654=>709,2662=>697,2663=>630,2664=>696,2665=>690,2666=>646,2667=>636,2668=>571,2669=>682,2670=>718,2671=>730,2672=>0,2673=>0,2674=>722,2675=>760,2676=>1110,2677=>0,4256=>616,4257=>645,4258=>664,4259=>839,4260=>627,4261=>630,4262=>827,4263=>928,4264=>639,4265=>630,4266=>951,4267=>606,4268=>608,4269=>835,4270=>630,4271=>610,4272=>804,4273=>615,4274=>823,4275=>747,4276=>870,4277=>627,4278=>840,4279=>627,4280=>665,4281=>610,4282=>799,4283=>598,4284=>665,4285=>664,4286=>608,4287=>886,4288=>629,4304=>463,4305=>516,4306=>564,4307=>706,4308=>459,4309=>476,4310=>623,4311=>711,4312=>494,4313=>476,4314=>894,4315=>500,4316=>500,4317=>712,4318=>493,4319=>503,4320=>712,4321=>503,4322=>710,4323=>670,4324=>707,4325=>459,4326=>691,4327=>465,4328=>492,4329=>480,4330=>656,4331=>500,4332=>492,4333=>524,4334=>500,4335=>688,4336=>510,4337=>739,4338=>450,4339=>479,4340=>502,4341=>501,4345=>564,4347=>515,4348=>449,5024=>714,5025=>731,5026=>624,5027=>908,5028=>1040,5029=>271,5030=>654,5031=>863,5032=>604,5033=>791,5034=>714,5035=>522,5036=>661,5037=>926,5038=>615,5039=>811,5040=>538,5041=>633,5042=>979,5043=>964,5044=>635,5045=>607,5046=>753,5047=>831,5048=>566,5049=>977,5050=>958,5051=>710,5052=>616,5053=>834,5054=>790,5055=>612,5056=>766,5057=>857,5058=>627,5059=>649,5060=>607,5061=>1127,5062=>680,5063=>920,5064=>928,5065=>1333,5066=>920,5067=>705,5068=>695,5069=>1074,5070=>672,5071=>672,5072=>667,5073=>819,5074=>679,5075=>575,5076=>903,5077=>652,5078=>776,5079=>643,5080=>670,5081=>660,5082=>648,5083=>934,5084=>909,5085=>613,5086=>615,5087=>735,5088=>900,5089=>1024,5090=>647,5091=>760,5092=>829,5093=>824,5094=>756,5095=>625,5096=>981,5097=>1014,5098=>1040,5099=>790,5100=>926,5101=>686,5102=>656,5103=>920,5104=>741,5105=>890,5106=>626,5107=>974,5108=>699,7680=>697,7681=>566,7682=>704,7683=>621,7684=>704,7685=>621,7686=>704,7687=>621,7688=>721,7689=>558,7690=>724,7691=>621,7692=>724,7693=>621,7694=>724,7695=>621,7696=>724,7697=>621,7698=>724,7699=>621,7700=>665,7701=>583,7702=>665,7703=>583,7704=>665,7705=>583,7706=>665,7707=>583,7708=>655,7709=>583,7710=>632,7711=>343,7712=>769,7713=>612,7714=>749,7715=>604,7716=>749,7717=>604,7718=>749,7719=>604,7720=>752,7721=>604,7722=>749,7723=>604,7724=>310,7725=>280,7726=>310,7727=>300,7728=>728,7729=>564,7730=>728,7731=>564,7732=>728,7733=>564,7734=>619,7735=>270,7736=>619,7737=>270,7738=>619,7739=>270,7740=>619,7741=>270,7742=>870,7743=>894,7744=>870,7745=>894,7746=>870,7747=>894,7748=>753,7749=>613,7750=>753,7751=>613,7752=>753,7753=>613,7754=>753,7755=>613,7756=>782,7757=>614,7758=>782,7759=>614,7760=>782,7761=>614,7762=>782,7763=>614,7764=>677,7765=>621,7766=>677,7767=>621,7768=>722,7769=>392,7770=>722,7771=>392,7772=>722,7773=>392,7774=>722,7775=>392,7776=>681,7777=>556,7778=>681,7779=>556,7780=>681,7781=>556,7782=>681,7783=>556,7784=>681,7785=>556,7786=>644,7787=>338,7788=>644,7789=>338,7790=>644,7791=>338,7792=>644,7793=>338,7794=>738,7795=>613,7796=>738,7797=>613,7798=>738,7799=>613,7800=>738,7801=>613,7802=>738,7803=>613,7804=>663,7805=>542,7806=>663,7807=>542,7808=>959,7809=>781,7810=>959,7811=>781,7812=>959,7813=>781,7814=>959,7815=>781,7816=>959,7817=>781,7818=>675,7819=>549,7820=>675,7821=>549,7822=>643,7823=>549,7824=>608,7825=>507,7826=>608,7827=>507,7828=>608,7829=>507,7830=>604,7831=>338,7832=>781,7833=>549,7834=>555,7835=>333,7838=>741,7840=>697,7841=>566,7842=>697,7843=>566,7844=>697,7845=>566,7846=>697,7847=>566,7848=>697,7849=>566,7850=>697,7851=>566,7852=>697,7853=>566,7854=>697,7855=>566,7856=>697,7857=>566,7858=>697,7859=>566,7860=>697,7861=>566,7862=>697,7863=>566,7864=>665,7865=>583,7866=>665,7867=>583,7868=>665,7869=>583,7870=>665,7871=>583,7872=>665,7873=>583,7874=>665,7875=>583,7876=>665,7877=>583,7878=>665,7879=>583,7880=>310,7881=>280,7882=>310,7883=>280,7884=>782,7885=>614,7886=>782,7887=>614,7888=>782,7889=>614,7890=>782,7891=>614,7892=>782,7893=>614,7894=>782,7895=>614,7896=>782,7897=>614,7898=>791,7899=>658,7900=>791,7901=>658,7902=>791,7903=>658,7904=>791,7905=>658,7906=>791,7907=>658,7908=>738,7909=>613,7910=>738,7911=>613,7912=>773,7913=>666,7914=>773,7915=>666,7916=>773,7917=>666,7918=>773,7919=>666,7920=>773,7921=>666,7922=>643,7923=>549,7924=>643,7925=>549,7926=>643,7927=>549,7928=>643,7929=>549,7936=>632,7937=>632,7938=>632,7939=>632,7940=>632,7941=>632,7942=>632,7943=>632,7944=>697,7945=>697,7946=>865,7947=>849,7948=>796,7949=>807,7950=>730,7951=>750,7952=>571,7953=>571,7954=>571,7955=>571,7956=>571,7957=>571,7960=>758,7961=>760,7962=>957,7963=>943,7964=>939,7965=>945,7968=>598,7969=>598,7970=>598,7971=>598,7972=>598,7973=>598,7974=>598,7975=>598,7976=>843,7977=>846,7978=>1041,7979=>1032,7980=>1027,7981=>1039,7982=>933,7983=>944,7984=>341,7985=>341,7986=>393,7987=>395,7988=>398,7989=>392,7990=>390,7991=>404,7992=>423,7993=>423,7994=>601,7995=>601,7996=>597,7997=>591,7998=>539,7999=>539,8000=>614,8001=>614,8002=>614,8003=>614,8004=>614,8005=>614,8008=>864,8009=>865,8010=>1058,8011=>1053,8012=>1019,8013=>1027,8016=>608,8017=>608,8018=>608,8019=>608,8020=>608,8021=>608,8022=>608,8023=>608,8025=>896,8027=>1100,8029=>1115,8031=>1027,8032=>798,8033=>798,8034=>798,8035=>798,8036=>798,8037=>798,8038=>798,8039=>798,8040=>876,8041=>879,8042=>1071,8043=>1071,8044=>1031,8045=>1044,8046=>1001,8047=>989,8048=>632,8049=>632,8050=>571,8051=>571,8052=>598,8053=>598,8054=>341,8055=>341,8056=>610,8057=>610,8058=>608,8059=>608,8060=>798,8061=>798,8064=>632,8065=>632,8066=>632,8067=>632,8068=>632,8069=>632,8070=>632,8071=>632,8072=>909,8073=>906,8074=>1071,8075=>1045,8076=>994,8077=>1004,8078=>920,8079=>926,8080=>598,8081=>598,8082=>598,8083=>598,8084=>598,8085=>598,8086=>598,8087=>598,8088=>1006,8089=>1015,8090=>1204,8091=>1207,8092=>1198,8093=>1209,8094=>1096,8095=>1115,8096=>798,8097=>798,8098=>798,8099=>798,8100=>798,8101=>798,8102=>798,8103=>798,8104=>1074,8105=>1068,8106=>1261,8107=>1260,8108=>1220,8109=>1237,8110=>1196,8111=>1192,8112=>642,8113=>642,8114=>642,8115=>642,8116=>642,8118=>642,8119=>642,8120=>697,8121=>697,8122=>697,8123=>697,8124=>907,8125=>278,8126=>346,8127=>278,8128=>354,8129=>333,8130=>598,8131=>598,8132=>598,8134=>598,8135=>598,8136=>792,8137=>789,8138=>884,8139=>881,8140=>908,8141=>492,8142=>489,8143=>394,8144=>361,8145=>360,8146=>373,8147=>364,8150=>379,8151=>392,8152=>310,8153=>310,8154=>455,8155=>445,8157=>481,8158=>589,8159=>333,8160=>608,8161=>608,8162=>608,8163=>608,8164=>634,8165=>634,8166=>608,8167=>608,8168=>761,8169=>761,8170=>948,8171=>972,8172=>822,8173=>333,8174=>333,8175=>333,8178=>798,8179=>798,8180=>798,8182=>798,8183=>798,8184=>913,8185=>873,8186=>916,8187=>894,8188=>988,8189=>333,8190=>278,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>556,8200=>278,8201=>167,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>556,8211=>556,8212=>1000,8213=>1000,8214=>437,8215=>556,8216=>250,8217=>250,8218=>260,8219=>250,8220=>450,8221=>450,8222=>450,8223=>450,8224=>556,8225=>556,8226=>400,8227=>400,8228=>500,8229=>500,8230=>750,8231=>278,8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>167,8240=>1000,8241=>1367,8242=>250,8243=>426,8244=>614,8245=>250,8246=>426,8247=>614,8248=>450,8249=>333,8250=>333,8251=>622,8252=>666,8253=>614,8254=>556,8255=>658,8256=>658,8257=>438,8258=>840,8259=>400,8260=>167,8261=>334,8262=>334,8263=>1222,8264=>944,8265=>944,8266=>556,8267=>537,8268=>600,8269=>600,8270=>389,8271=>333,8272=>658,8273=>389,8274=>634,8275=>568,8276=>658,8277=>793,8278=>515,8279=>855,8280=>722,8281=>725,8282=>224,8283=>722,8284=>604,8285=>224,8286=>224,8287=>0,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>351,8305=>200,8308=>351,8309=>351,8310=>351,8311=>351,8312=>351,8313=>351,8314=>351,8315=>351,8316=>351,8317=>216,8318=>218,8319=>391,8320=>351,8321=>301,8322=>351,8323=>351,8324=>351,8325=>351,8326=>351,8327=>351,8328=>351,8329=>351,8330=>350,8331=>350,8332=>350,8333=>216,8334=>216,8336=>363,8337=>366,8338=>394,8339=>360,8340=>355,8355=>611,8356=>591,8357=>889,8358=>727,8360=>1265,8362=>1049,8363=>580,8364=>640,8368=>605,8373=>591,8376=>612,8377=>599,8400=>0,8401=>0,8402=>0,8403=>0,8406=>0,8407=>0,8411=>0,8412=>0,8413=>0,8414=>0,8415=>0,8416=>0,8417=>0,8421=>0,8422=>0,8423=>0,8424=>0,8425=>0,8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,8432=>0,8448=>945,8449=>968,8451=>1033,8453=>981,8454=>1002,8455=>667,8456=>721,8457=>919,8462=>604,8465=>666,8467=>608,8468=>881,8470=>999,8471=>880,8476=>749,8480=>1000,8481=>1320,8482=>940,8486=>799,8487=>799,8489=>346,8490=>728,8491=>697,8494=>583,8498=>612,8501=>644,8502=>573,8503=>557,8504=>638,8506=>871,8507=>1431,8513=>769,8514=>619,8515=>611,8516=>643,8523=>669,8525=>1281,8526=>482,8531=>869,8532=>869,8533=>869,8534=>869,8535=>869,8536=>869,8537=>869,8538=>869,8539=>869,8540=>869,8541=>869,8542=>869,8543=>869,8544=>310,8545=>568,8546=>866,8547=>901,8548=>663,8549=>887,8550=>1195,8551=>1473,8552=>925,8553=>675,8554=>927,8555=>1195,8556=>619,8557=>721,8558=>724,8559=>870,8560=>280,8561=>556,8562=>834,8563=>800,8564=>542,8565=>786,8566=>1064,8567=>1342,8568=>794,8569=>549,8570=>786,8571=>1064,8572=>270,8573=>558,8574=>621,8575=>894,8592=>964,8593=>964,8594=>964,8595=>964,8596=>964,8597=>964,8598=>964,8599=>964,8600=>964,8601=>964,8602=>964,8603=>964,8606=>964,8607=>964,8608=>964,8609=>964,8610=>964,8611=>964,8612=>964,8613=>964,8614=>964,8615=>964,8616=>964,8644=>964,8645=>964,8646=>964,8647=>964,8648=>964,8649=>964,8650=>964,8704=>697,8705=>716,8706=>556,8707=>667,8708=>667,8709=>860,8710=>729,8711=>729,8712=>584,8713=>584,8714=>585,8715=>584,8716=>584,8717=>585,8718=>500,8719=>823,8720=>823,8721=>806,8722=>584,8723=>584,8724=>584,8725=>510,8726=>452,8727=>500,8728=>500,8729=>500,8730=>594,8731=>549,8732=>549,8733=>713,8734=>713,8735=>639,8736=>800,8739=>220,8741=>380,8743=>608,8744=>608,8745=>768,8746=>768,8747=>518,8748=>808,8749=>1098,8756=>797,8757=>800,8758=>250,8759=>620,8760=>584,8761=>778,8762=>584,8763=>500,8764=>500,8768=>244,8770=>584,8771=>584,8773=>584,8776=>500,8778=>584,8779=>500,8784=>584,8785=>584,8786=>584,8787=>584,8788=>755,8789=>755,8791=>584,8792=>584,8793=>584,8794=>584,8797=>614,8798=>584,8799=>584,8800=>584,8801=>584,8804=>583,8805=>584,8806=>584,8807=>584,8810=>1026,8811=>1026,8818=>584,8819=>584,8834=>584,8835=>584,8836=>584,8837=>584,8838=>584,8839=>584,8853=>776,8854=>776,8855=>776,8856=>776,8857=>778,8858=>776,8859=>776,8860=>776,8861=>776,8891=>584,8892=>608,8893=>584,8896=>744,8897=>744,8898=>764,8899=>764,8901=>298,8942=>250,8943=>1000,8944=>1000,8945=>1000,8968=>456,8969=>456,8970=>456,8971=>456,8976=>584,8994=>658,8995=>658,9001=>359,9002=>359,9251=>500,9674=>541,9675=>860,9676=>860,9702=>400,9711=>1020,9772=>923,9824=>626,9825=>694,9826=>595,9827=>776,9828=>626,9829=>694,9830=>595,9831=>776,9833=>333,9834=>556,9835=>778,9836=>778,9837=>556,9838=>556,9839=>556,10048=>1453,10752=>1020,10753=>1020,10754=>1020,11568=>352,11569=>872,11570=>872,11571=>720,11572=>720,11573=>720,11574=>664,11575=>752,11576=>752,11577=>720,11578=>720,11579=>596,11580=>698,11581=>742,11582=>574,11583=>742,11584=>872,11585=>872,11586=>312,11587=>720,11588=>696,11589=>720,11590=>584,11591=>742,11592=>796,11593=>613,11594=>672,11595=>888,11596=>836,11597=>524,11598=>720,11599=>300,11600=>836,11601=>300,11602=>718,11603=>388,11604=>872,11605=>872,11606=>696,11607=>308,11608=>640,11609=>872,11610=>872,11611=>762,11612=>424,11613=>720,11614=>762,11615=>720,11616=>709,11617=>720,11618=>541,11619=>828,11620=>454,11621=>828,11631=>482,11798=>584,11799=>333,11800=>611,11802=>333,11803=>500,11806=>500,11807=>500,11816=>504,11817=>504,11818=>660,11819=>623,11820=>623,11821=>660,11822=>611,42888=>333,42889=>276,42890=>342,42891=>258,42892=>258,42922=>948,64256=>607,64257=>575,64258=>602,64259=>848,64260=>848,64261=>627,64275=>1243,64276=>1226,64277=>1233,64278=>1238,64279=>1448,64285=>284,64286=>305,64287=>542,64288=>653,64289=>964,64290=>888,64291=>932,64292=>845,64293=>917,64294=>933,64295=>850,64296=>1006,64297=>584,64298=>840,64299=>840,64300=>840,64301=>840,64302=>714,64303=>714,64304=>714,64305=>651,64306=>557,64307=>638,64308=>682,64309=>348,64310=>443,64312=>670,64313=>354,64314=>590,64315=>595,64316=>667,64318=>704,64320=>429,64321=>670,64323=>661,64324=>660,64326=>671,64327=>672,64328=>600,64329=>840,64330=>756,64331=>297,64332=>591,64333=>550,64334=>568,64335=>714,65529=>0,65530=>0,65531=>0,65532=>800,65533=>900,65535=>800); // --- EOF --- diff --git a/lib/tcpdf/fonts/freesansb.z b/lib/tcpdf/fonts/freesansb.z index 302a3305dae607da60b7c8e9176170b2c1d7d069..472310c10d6d398e06b0f572164b9835d8fb9af7 100644 GIT binary patch literal 237861 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˒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 literal 183889 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 Iw|#o^fE1;8jj)v~0bC30I{E7EZM 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 diff --git a/lib/tcpdf/fonts/freesansbi.ctg.z b/lib/tcpdf/fonts/freesansbi.ctg.z index 1a4ceb88da94106db7d11941c3b5c8a34c766015..fa1ba4a69e6348782b6e671942afe968e01d9ab6 100644 GIT binary patch literal 4626 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 literal 4477 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 diff --git a/lib/tcpdf/fonts/freesansbi.php b/lib/tcpdf/fonts/freesansbi.php index e4a1d6f6fca..5815e5d123e 100644 --- a/lib/tcpdf/fonts/freesansbi.php +++ b/lib/tcpdf/fonts/freesansbi.php @@ -4,12 +4,12 @@ $type='TrueTypeUnicode'; $name='FreeSansBoldOblique'; $up=-145; $ut=69; -$dw=700; +$dw=800; $diff=''; -$originalsize=301188; +$originalsize=342488; $enc=''; $file='freesansbi.z'; $ctg='freesansbi.ctg.z'; -$desc=array('Flags'=>96,'FontBBox'=>'[-908 -313 1591 1076]','ItalicAngle'=>-12,'Ascent'=>1000,'Descent'=>-300,'Leading'=>90,'CapHeight'=>729,'XHeight'=>540,'StemV'=>123,'StemH'=>53,'AvgWidth'=>478,'MaxWidth'=>1501,'MissingWidth'=>700); -$cw=array(0=>700,32=>278,33=>333,34=>474,35=>556,36=>556,37=>889,38=>722,39=>238,40=>333,41=>333,42=>389,43=>584,44=>278,45=>333,46=>278,47=>278,48=>556,49=>556,50=>556,51=>556,52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>333,59=>333,60=>584,61=>584,62=>584,63=>611,64=>975,65=>722,66=>722,67=>722,68=>722,69=>667,70=>611,71=>778,72=>722,73=>278,74=>556,75=>722,76=>611,77=>833,78=>722,79=>778,80=>667,81=>778,82=>722,83=>667,84=>611,85=>722,86=>667,87=>944,88=>667,89=>667,90=>611,91=>333,92=>278,93=>333,94=>584,95=>556,96=>333,97=>556,98=>611,99=>556,100=>611,101=>556,102=>333,103=>611,104=>611,105=>278,106=>278,107=>556,108=>278,109=>889,110=>611,111=>611,112=>611,113=>611,114=>389,115=>556,116=>333,117=>611,118=>556,119=>778,120=>556,121=>556,122=>500,123=>389,124=>280,125=>389,126=>584,160=>278,161=>333,162=>556,163=>556,164=>556,165=>556,166=>280,167=>556,168=>333,169=>737,170=>370,171=>556,172=>584,173=>333,174=>737,175=>333,176=>606,177=>584,178=>350,179=>350,180=>333,181=>667,182=>556,183=>278,184=>333,185=>248,186=>365,187=>556,188=>869,189=>869,190=>869,191=>611,192=>722,193=>722,194=>722,195=>722,196=>722,197=>722,198=>1000,199=>722,200=>667,201=>667,202=>667,203=>667,204=>278,205=>278,206=>278,207=>278,208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>584,216=>778,217=>722,218=>722,219=>722,220=>722,221=>667,222=>667,223=>611,224=>556,225=>556,226=>556,227=>556,228=>556,229=>556,230=>892,231=>556,232=>556,233=>556,234=>556,235=>556,236=>278,237=>278,238=>278,239=>278,240=>611,241=>611,242=>611,243=>611,244=>611,245=>611,246=>611,247=>584,248=>611,249=>611,250=>611,251=>611,252=>611,253=>556,254=>611,255=>556,256=>722,257=>556,258=>722,259=>556,260=>722,261=>556,262=>722,263=>556,264=>722,265=>556,266=>722,267=>556,268=>722,269=>556,270=>722,271=>722,272=>722,273=>611,274=>667,275=>556,276=>667,277=>556,278=>667,279=>556,280=>667,281=>556,282=>667,283=>556,284=>778,285=>611,286=>778,287=>611,288=>778,289=>611,290=>778,291=>611,292=>722,293=>611,294=>722,295=>611,296=>278,297=>278,298=>278,299=>278,300=>278,301=>278,302=>278,303=>268,304=>278,305=>278,306=>595,307=>488,308=>556,309=>278,310=>722,311=>556,312=>529,313=>611,314=>278,315=>611,316=>278,317=>611,318=>444,319=>611,320=>556,321=>611,322=>278,323=>722,324=>611,325=>722,326=>611,327=>722,328=>611,329=>656,330=>720,331=>611,332=>778,333=>611,334=>778,335=>611,336=>778,337=>611,338=>1000,339=>962,340=>722,341=>389,342=>722,343=>389,344=>722,345=>389,346=>667,347=>556,348=>667,349=>556,350=>667,351=>556,352=>667,353=>556,354=>611,355=>333,356=>611,357=>444,358=>611,359=>404,360=>722,361=>611,362=>722,363=>611,364=>722,365=>611,366=>722,367=>611,368=>722,369=>611,370=>722,371=>611,372=>944,373=>778,374=>667,375=>556,376=>667,377=>611,378=>500,379=>611,380=>500,381=>611,382=>500,383=>333,384=>611,385=>963,386=>722,387=>611,388=>687,389=>611,390=>722,391=>752,392=>562,393=>722,394=>968,395=>722,396=>611,397=>609,398=>667,399=>778,400=>672,401=>611,402=>333,403=>778,404=>667,405=>940,406=>278,407=>395,408=>778,409=>556,410=>333,411=>620,412=>889,413=>722,414=>611,415=>778,416=>808,417=>673,418=>1111,419=>722,420=>914,421=>611,422=>647,423=>667,424=>556,425=>688,426=>441,427=>333,428=>742,429=>333,430=>611,431=>789,432=>684,433=>780,434=>722,435=>762,436=>706,437=>611,438=>500,439=>556,440=>556,441=>645,442=>569,443=>579,446=>611,447=>608,448=>258,449=>443,450=>584,451=>278,452=>1333,453=>1222,454=>1111,455=>1167,456=>889,457=>556,458=>1278,459=>1000,460=>889,461=>722,462=>556,463=>278,464=>278,465=>778,466=>611,467=>722,468=>611,469=>722,470=>611,471=>722,472=>611,473=>722,474=>611,475=>722,476=>611,477=>556,478=>722,479=>556,480=>722,481=>556,482=>1000,483=>892,484=>811,485=>641,486=>778,487=>611,488=>722,489=>556,490=>778,491=>611,492=>778,493=>611,494=>556,495=>556,496=>278,497=>1333,498=>1222,499=>1111,500=>778,501=>611,503=>630,504=>722,505=>611,506=>722,507=>556,508=>1000,509=>892,510=>778,511=>611,512=>722,513=>556,514=>722,515=>556,516=>667,517=>556,518=>667,519=>556,520=>278,521=>278,522=>278,523=>278,524=>778,525=>611,526=>778,527=>611,528=>722,529=>389,530=>722,531=>389,532=>722,533=>611,534=>722,535=>611,536=>667,537=>556,538=>611,539=>333,540=>569,541=>486,542=>722,543=>611,548=>645,549=>500,550=>722,551=>556,552=>667,553=>556,554=>778,555=>611,556=>778,557=>611,558=>778,559=>611,560=>778,561=>611,562=>667,563=>556,567=>278,592=>556,593=>611,594=>671,595=>611,596=>556,597=>600,598=>595,599=>611,600=>556,601=>556,602=>834,603=>570,604=>546,605=>820,606=>570,607=>278,608=>611,609=>611,610=>556,611=>556,612=>646,613=>619,614=>611,615=>611,616=>278,617=>326,618=>278,619=>473,620=>527,621=>298,622=>778,623=>889,624=>889,625=>889,626=>611,627=>611,628=>615,629=>590,630=>878,631=>822,632=>778,633=>389,634=>389,635=>406,636=>419,637=>389,638=>455,639=>455,640=>620,641=>586,642=>606,643=>333,644=>302,645=>333,646=>556,647=>328,648=>333,649=>623,650=>686,651=>630,652=>556,653=>778,654=>556,655=>556,656=>519,657=>571,658=>556,659=>632,660=>611,661=>611,662=>611,663=>556,664=>579,665=>572,666=>570,667=>616,668=>603,669=>552,670=>556,671=>454,672=>611,673=>611,674=>611,675=>1004,676=>1018,677=>1097,678=>804,679=>593,680=>840,681=>866,682=>752,683=>668,684=>536,685=>486,686=>659,687=>679,688=>377,689=>377,690=>202,691=>272,692=>272,693=>299,694=>395,695=>534,696=>364,697=>278,698=>454,699=>278,700=>333,701=>278,702=>333,703=>333,704=>333,705=>333,706=>333,707=>333,708=>333,709=>333,710=>333,711=>333,712=>333,713=>333,714=>333,715=>333,716=>272,717=>333,718=>333,719=>333,720=>333,721=>333,722=>333,723=>333,724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,731=>333,732=>333,733=>333,734=>333,735=>510,736=>372,737=>210,738=>363,739=>373,740=>334,741=>526,742=>526,743=>526,744=>526,745=>526,746=>519,747=>519,748=>333,749=>333,750=>333,751=>333,752=>333,753=>333,754=>333,755=>333,756=>333,757=>437,758=>437,759=>400,760=>333,761=>200,762=>200,763=>200,764=>200,765=>332,766=>333,767=>333,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,859=>0,860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,867=>0,868=>0,869=>0,870=>0,871=>0,872=>0,873=>0,874=>0,875=>0,876=>0,877=>0,878=>0,879=>0,884=>208,885=>247,890=>364,894=>333,900=>239,901=>446,902=>688,903=>333,904=>903,905=>962,906=>448,908=>904,910=>991,911=>932,912=>346,913=>764,914=>688,915=>642,916=>744,917=>710,918=>688,919=>743,920=>810,921=>296,922=>744,923=>744,924=>860,925=>714,926=>690,927=>822,928=>781,929=>698,931=>688,932=>688,933=>744,934=>777,935=>783,936=>805,937=>780,938=>296,939=>744,940=>640,941=>530,942=>597,943=>339,944=>575,945=>656,946=>576,947=>591,948=>620,949=>570,950=>522,951=>586,952=>586,953=>346,954=>576,955=>620,956=>667,957=>564,958=>530,959=>610,960=>721,961=>626,962=>595,963=>676,964=>592,965=>575,966=>801,967=>632,968=>722,969=>800,970=>346,971=>575,972=>609,973=>604,974=>769,977=>580,978=>742,979=>857,980=>620,981=>778,982=>740,983=>601,1008=>556,1009=>566,1012=>778,1013=>328,1024=>667,1025=>667,1026=>790,1027=>617,1028=>731,1029=>667,1030=>278,1031=>278,1032=>556,1033=>1110,1034=>1088,1035=>790,1036=>722,1037=>757,1038=>698,1039=>722,1040=>722,1041=>722,1042=>722,1043=>617,1044=>876,1045=>667,1046=>1100,1047=>670,1048=>757,1049=>757,1050=>722,1051=>715,1052=>874,1053=>753,1054=>778,1055=>753,1056=>680,1057=>722,1058=>611,1059=>698,1060=>909,1061=>657,1062=>845,1063=>688,1064=>1132,1065=>1217,1066=>835,1067=>980,1068=>678,1069=>735,1070=>1142,1071=>708,1072=>553,1073=>591,1074=>574,1075=>429,1076=>745,1077=>572,1078=>792,1079=>554,1080=>603,1081=>603,1082=>559,1083=>583,1084=>664,1085=>603,1086=>588,1087=>603,1088=>605,1089=>549,1090=>440,1091=>541,1092=>948,1093=>539,1094=>690,1095=>564,1096=>901,1097=>987,1098=>692,1099=>806,1100=>572,1101=>546,1102=>893,1103=>586,1104=>572,1105=>572,1106=>616,1107=>429,1108=>549,1109=>562,1110=>281,1111=>281,1112=>282,1113=>888,1114=>897,1115=>606,1116=>559,1117=>603,1118=>541,1119=>603,1120=>986,1121=>736,1136=>830,1137=>761,1138=>778,1139=>590,1148=>942,1149=>736,1150=>986,1151=>736,1154=>456,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,1162=>791,1163=>662,1164=>639,1165=>581,1166=>670,1167=>649,1168=>623,1169=>450,1170=>623,1171=>472,1172=>674,1173=>528,1174=>1091,1175=>803,1176=>659,1177=>548,1178=>739,1179=>569,1180=>742,1181=>560,1182=>737,1183=>559,1184=>900,1185=>679,1186=>808,1187=>673,1188=>1004,1189=>761,1190=>1114,1191=>876,1192=>963,1193=>766,1194=>724,1195=>554,1196=>611,1197=>454,1198=>667,1199=>584,1200=>652,1201=>632,1202=>667,1203=>550,1204=>951,1205=>748,1206=>759,1207=>630,1208=>669,1209=>580,1210=>672,1211=>576,1212=>977,1213=>752,1214=>993,1215=>761,1216=>318,1217=>1087,1218=>792,1219=>726,1220=>530,1221=>782,1222=>674,1223=>749,1224=>603,1225=>823,1226=>682,1227=>675,1228=>573,1229=>941,1230=>754,1231=>310,1232=>704,1233=>553,1234=>711,1235=>553,1236=>1000,1237=>892,1238=>667,1239=>569,1240=>738,1241=>561,1242=>738,1243=>561,1244=>1086,1245=>792,1246=>670,1247=>554,1248=>558,1249=>546,1250=>753,1251=>603,1252=>753,1253=>603,1254=>778,1255=>588,1256=>778,1257=>590,1258=>778,1259=>590,1260=>735,1261=>546,1262=>698,1263=>541,1264=>698,1265=>541,1266=>698,1267=>541,1268=>686,1269=>564,1270=>617,1271=>475,1272=>976,1273=>806,1296=>672,1297=>546,1298=>729,1299=>577,1306=>778,1307=>611,1308=>944,1309=>776,1310=>750,1311=>573,1329=>730,1330=>713,1331=>765,1332=>752,1333=>708,1334=>801,1335=>496,1336=>713,1337=>855,1338=>686,1339=>727,1340=>420,1341=>897,1342=>841,1343=>708,1344=>660,1345=>666,1346=>747,1347=>698,1348=>757,1349=>630,1350=>747,1351=>651,1352=>743,1353=>657,1354=>728,1355=>799,1356=>752,1357=>743,1358=>768,1359=>691,1360=>713,1361=>640,1362=>425,1363=>818,1364=>672,1365=>805,1366=>754,1369=>333,1370=>222,1371=>250,1372=>333,1373=>333,1374=>352,1375=>362,1377=>873,1378=>613,1379=>634,1380=>636,1381=>593,1382=>639,1383=>417,1384=>613,1385=>658,1386=>711,1387=>609,1388=>318,1389=>836,1390=>670,1391=>613,1392=>607,1393=>611,1394=>626,1395=>619,1396=>618,1397=>324,1398=>613,1399=>540,1400=>591,1401=>392,1402=>873,1403=>577,1404=>603,1405=>600,1406=>626,1407=>951,1408=>613,1409=>612,1410=>348,1411=>951,1412=>616,1413=>606,1414=>763,1415=>626,1417=>333,1418=>398,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1467=>0,1468=>0,1469=>0,1470=>516,1471=>0,1472=>297,1473=>0,1474=>0,1475=>333,1476=>0,1488=>714,1489=>651,1490=>557,1491=>638,1492=>682,1493=>297,1494=>443,1495=>682,1496=>670,1497=>284,1498=>590,1499=>595,1500=>667,1501=>683,1502=>704,1503=>297,1504=>429,1505=>670,1506=>653,1507=>661,1508=>660,1509=>616,1510=>671,1511=>672,1512=>600,1513=>840,1514=>756,1520=>554,1521=>550,1522=>542,1523=>238,1524=>474,4256=>616,4257=>645,4258=>664,4259=>839,4260=>627,4261=>630,4262=>827,4263=>928,4264=>639,4265=>630,4266=>951,4267=>606,4268=>608,4269=>835,4270=>630,4271=>610,4272=>804,4273=>615,4274=>823,4275=>747,4276=>870,4277=>627,4278=>840,4279=>627,4280=>665,4281=>610,4282=>799,4283=>598,4284=>665,4285=>664,4286=>608,4287=>886,4288=>629,4304=>463,4305=>516,4306=>564,4307=>706,4308=>459,4309=>476,4310=>623,4311=>711,4312=>494,4313=>476,4314=>894,4315=>500,4316=>500,4317=>712,4318=>493,4319=>503,4320=>712,4321=>503,4322=>710,4323=>670,4324=>707,4325=>459,4326=>691,4327=>465,4328=>492,4329=>480,4330=>656,4331=>500,4332=>492,4333=>524,4334=>500,4335=>688,4336=>510,4337=>739,4338=>450,4339=>479,4340=>502,4341=>501,4345=>564,4347=>515,4348=>449,5024=>714,5025=>731,5026=>624,5027=>908,5028=>1040,5029=>271,5030=>654,5031=>863,5032=>604,5033=>791,5034=>714,5035=>522,5036=>661,5037=>926,5038=>615,5039=>811,5040=>538,5041=>633,5042=>979,5043=>964,5044=>635,5045=>607,5046=>753,5047=>831,5048=>566,5049=>977,5050=>958,5051=>710,5052=>616,5053=>834,5054=>790,5055=>612,5056=>766,5057=>857,5058=>627,5059=>649,5060=>607,5061=>1127,5062=>680,5063=>920,5064=>928,5065=>1333,5066=>920,5067=>705,5068=>695,5069=>1074,5070=>672,5071=>672,5072=>667,5073=>819,5074=>679,5075=>575,5076=>903,5077=>652,5078=>776,5079=>643,5080=>670,5081=>660,5082=>648,5083=>934,5084=>909,5085=>613,5086=>615,5087=>735,5088=>900,5089=>1024,5090=>647,5091=>760,5092=>829,5093=>824,5094=>756,5095=>625,5096=>981,5097=>1014,5098=>1040,5099=>790,5100=>926,5101=>686,5102=>656,5103=>920,5104=>741,5105=>890,5106=>626,5107=>974,5108=>699,7680=>722,7681=>556,7682=>722,7683=>611,7684=>722,7685=>611,7686=>722,7687=>611,7688=>722,7689=>556,7690=>722,7691=>611,7692=>722,7693=>611,7694=>722,7695=>611,7696=>722,7697=>611,7698=>722,7699=>611,7700=>667,7701=>556,7702=>667,7703=>556,7704=>667,7705=>556,7706=>667,7707=>556,7708=>667,7709=>556,7710=>611,7711=>333,7712=>778,7713=>611,7714=>722,7715=>611,7716=>722,7717=>611,7718=>722,7719=>611,7720=>722,7721=>611,7722=>722,7723=>611,7724=>278,7725=>278,7726=>278,7727=>278,7728=>722,7729=>556,7730=>722,7731=>556,7732=>722,7733=>556,7734=>611,7735=>278,7736=>611,7737=>278,7738=>611,7739=>278,7740=>611,7741=>278,7742=>833,7743=>889,7744=>833,7745=>889,7746=>833,7747=>889,7748=>722,7749=>611,7750=>722,7751=>611,7752=>722,7753=>611,7754=>722,7755=>611,7756=>778,7757=>611,7758=>778,7759=>611,7760=>778,7761=>611,7762=>778,7763=>611,7764=>667,7765=>611,7766=>667,7767=>611,7768=>722,7769=>389,7770=>722,7771=>389,7772=>722,7773=>389,7774=>722,7775=>389,7776=>667,7777=>556,7778=>667,7779=>556,7780=>667,7781=>556,7782=>667,7783=>556,7784=>667,7785=>556,7786=>611,7787=>333,7788=>611,7789=>333,7790=>611,7791=>333,7792=>611,7793=>333,7794=>722,7795=>611,7796=>722,7797=>611,7798=>722,7799=>611,7800=>722,7801=>611,7802=>722,7803=>611,7804=>667,7805=>556,7806=>667,7807=>556,7808=>944,7809=>778,7810=>944,7811=>778,7812=>944,7813=>778,7814=>944,7815=>778,7816=>944,7817=>778,7818=>667,7819=>556,7820=>667,7821=>556,7822=>667,7823=>556,7824=>611,7825=>500,7826=>611,7827=>500,7828=>611,7829=>500,7830=>611,7831=>333,7832=>778,7833=>556,7834=>555,7835=>333,7840=>722,7841=>556,7842=>722,7843=>556,7844=>722,7845=>556,7846=>722,7847=>556,7848=>722,7849=>556,7850=>722,7851=>556,7852=>722,7853=>556,7854=>722,7855=>556,7856=>722,7857=>556,7858=>722,7859=>556,7860=>722,7861=>556,7862=>722,7863=>556,7864=>667,7865=>556,7866=>667,7867=>556,7868=>667,7869=>556,7870=>667,7871=>556,7872=>667,7873=>556,7874=>667,7875=>556,7876=>667,7877=>556,7878=>667,7879=>556,7880=>278,7881=>278,7882=>278,7883=>278,7884=>778,7885=>611,7886=>778,7887=>611,7888=>778,7889=>611,7890=>778,7891=>611,7892=>778,7893=>611,7894=>778,7895=>611,7896=>778,7897=>611,7898=>808,7899=>673,7900=>808,7901=>673,7902=>808,7903=>673,7904=>808,7905=>673,7906=>808,7907=>673,7908=>722,7909=>611,7910=>722,7911=>611,7912=>789,7913=>684,7914=>789,7915=>684,7916=>789,7917=>684,7918=>789,7919=>684,7920=>789,7921=>684,7922=>667,7923=>556,7924=>667,7925=>556,7926=>667,7927=>556,7928=>667,7929=>556,7936=>656,7937=>656,7938=>656,7939=>656,7940=>656,7941=>656,7942=>656,7943=>656,7944=>764,7945=>764,7946=>916,7947=>940,7948=>908,7949=>891,7950=>844,7951=>869,7952=>570,7953=>570,7954=>570,7955=>570,7956=>570,7957=>570,7960=>842,7961=>836,7962=>1025,7963=>1051,7964=>1035,7965=>1049,7968=>586,7969=>586,7970=>586,7971=>586,7972=>586,7973=>586,7974=>586,7975=>586,7976=>891,7977=>886,7978=>1081,7979=>1108,7980=>1085,7981=>1096,7982=>1009,7983=>1023,7984=>346,7985=>346,7986=>346,7987=>346,7988=>346,7989=>346,7990=>346,7991=>346,7992=>467,7993=>476,7994=>631,7995=>661,7996=>631,7997=>633,7998=>568,7999=>571,8000=>610,8001=>610,8002=>610,8003=>610,8004=>610,8005=>610,8008=>945,8009=>905,8010=>1118,8011=>1121,8012=>1064,8013=>1062,8016=>575,8017=>575,8018=>575,8019=>575,8020=>575,8021=>575,8022=>575,8023=>575,8025=>964,8027=>1148,8029=>1162,8031=>1081,8032=>800,8033=>800,8034=>800,8035=>800,8036=>800,8037=>800,8038=>800,8039=>800,8040=>904,8041=>875,8042=>1092,8043=>1087,8044=>1003,8045=>1002,8046=>1001,8047=>1025,8048=>656,8049=>656,8050=>570,8051=>570,8052=>586,8053=>586,8054=>346,8055=>346,8056=>610,8057=>610,8058=>575,8059=>575,8060=>800,8061=>800,8064=>656,8065=>656,8066=>656,8067=>656,8068=>656,8069=>656,8070=>656,8071=>656,8072=>854,8073=>855,8074=>1006,8075=>1030,8076=>996,8077=>977,8078=>938,8079=>959,8080=>586,8081=>586,8082=>586,8083=>586,8084=>586,8085=>586,8086=>586,8087=>586,8088=>960,8089=>960,8090=>1155,8091=>1186,8092=>1161,8093=>1171,8094=>1087,8095=>1102,8096=>800,8097=>800,8098=>800,8099=>800,8100=>800,8101=>800,8102=>800,8103=>800,8104=>1005,8105=>980,8106=>1201,8107=>1192,8108=>1109,8109=>1108,8110=>1106,8111=>1130,8112=>656,8113=>656,8114=>656,8115=>656,8116=>640,8118=>656,8119=>656,8120=>764,8121=>764,8122=>764,8123=>764,8124=>854,8125=>278,8126=>201,8127=>147,8128=>278,8129=>333,8130=>586,8131=>586,8132=>597,8134=>586,8135=>586,8136=>911,8137=>925,8138=>941,8139=>948,8140=>826,8141=>402,8142=>403,8143=>147,8144=>346,8145=>346,8146=>346,8147=>346,8150=>346,8151=>346,8152=>296,8153=>296,8154=>511,8155=>521,8157=>434,8158=>433,8159=>333,8160=>575,8161=>575,8162=>575,8163=>575,8164=>626,8165=>626,8166=>575,8167=>575,8168=>744,8169=>744,8170=>901,8171=>975,8172=>837,8173=>353,8174=>351,8175=>303,8178=>800,8179=>800,8180=>800,8182=>800,8183=>800,8184=>979,8185=>918,8186=>936,8187=>877,8188=>895,8189=>333,8190=>159,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>556,8200=>278,8201=>200,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>556,8211=>556,8212=>1000,8213=>1000,8214=>437,8215=>556,8216=>278,8217=>278,8218=>278,8219=>278,8220=>500,8221=>500,8222=>500,8223=>503,8224=>556,8225=>556,8226=>350,8227=>350,8228=>278,8229=>666,8230=>1000,8231=>278,8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>500,8240=>1000,8241=>1372,8242=>238,8243=>426,8244=>614,8245=>238,8246=>379,8247=>571,8248=>450,8249=>333,8250=>333,8251=>622,8252=>666,8253=>617,8254=>556,8255=>658,8256=>658,8257=>438,8258=>840,8259=>400,8260=>167,8261=>334,8262=>334,8263=>1222,8264=>944,8265=>944,8266=>556,8267=>556,8268=>537,8269=>537,8270=>389,8271=>333,8272=>658,8273=>389,8274=>634,8275=>568,8276=>658,8277=>793,8278=>515,8279=>855,8280=>722,8281=>725,8282=>224,8283=>722,8284=>604,8285=>224,8286=>224,8287=>0,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>351,8305=>200,8308=>351,8309=>351,8310=>351,8311=>351,8312=>351,8313=>351,8314=>351,8315=>351,8316=>351,8317=>270,8318=>270,8319=>391,8320=>351,8321=>251,8322=>351,8323=>351,8324=>351,8325=>351,8326=>351,8327=>351,8328=>351,8329=>351,8330=>350,8331=>350,8332=>350,8333=>270,8334=>270,8336=>363,8337=>366,8338=>394,8339=>360,8340=>355,8355=>611,8356=>576,8357=>833,8358=>724,8360=>1286,8362=>1049,8363=>571,8364=>640,8368=>594,8373=>591,8376=>612,8400=>0,8401=>0,8402=>0,8403=>0,8406=>0,8407=>0,8411=>0,8412=>0,8413=>0,8414=>0,8415=>0,8416=>0,8417=>0,8421=>0,8422=>0,8423=>0,8424=>0,8425=>0,8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,8432=>0,8448=>945,8449=>1007,8451=>1020,8453=>981,8454=>1002,8455=>667,8456=>722,8457=>930,8462=>611,8465=>606,8467=>608,8468=>883,8470=>1006,8471=>860,8476=>699,8480=>1000,8481=>1330,8482=>1000,8486=>780,8487=>780,8489=>286,8490=>722,8491=>722,8494=>556,8498=>626,8501=>714,8502=>651,8503=>557,8504=>638,8506=>906,8507=>1425,8513=>778,8514=>611,8515=>611,8516=>667,8523=>710,8525=>1242,8526=>460,8531=>869,8532=>869,8533=>869,8534=>869,8535=>869,8536=>869,8537=>869,8538=>869,8539=>869,8540=>869,8541=>869,8542=>869,8543=>869,8544=>278,8545=>556,8546=>834,8547=>945,8548=>667,8549=>945,8550=>1223,8551=>1501,8552=>945,8553=>667,8554=>945,8555=>1223,8556=>611,8557=>722,8558=>722,8559=>833,8560=>278,8561=>556,8562=>834,8563=>834,8564=>556,8565=>834,8566=>1112,8567=>1390,8568=>834,8569=>556,8570=>834,8571=>1112,8572=>278,8573=>556,8574=>611,8575=>889,8592=>964,8593=>964,8594=>964,8595=>964,8596=>964,8597=>964,8598=>964,8599=>964,8600=>964,8601=>964,8602=>964,8603=>964,8606=>964,8607=>964,8608=>964,8609=>964,8610=>964,8611=>964,8612=>964,8613=>964,8614=>964,8615=>964,8616=>964,8644=>964,8645=>964,8646=>964,8647=>964,8648=>964,8649=>964,8650=>964,8706=>608,8710=>729,8721=>856,8722=>584,8723=>584,8725=>1107,8730=>597,8800=>584,8804=>584,8805=>584,9251=>500,9674=>541,9675=>860,9711=>1020,9824=>626,9825=>694,9826=>595,9827=>776,9828=>626,9829=>694,9830=>595,9831=>776,9833=>333,9834=>556,9835=>778,9836=>778,9837=>556,9838=>556,9839=>556,11568=>352,11569=>872,11570=>872,11571=>720,11572=>720,11573=>720,11574=>664,11575=>752,11576=>752,11577=>720,11578=>720,11579=>596,11580=>698,11581=>742,11582=>574,11583=>742,11584=>872,11585=>872,11586=>312,11587=>720,11588=>696,11589=>720,11590=>584,11591=>742,11592=>796,11593=>613,11594=>672,11595=>888,11596=>836,11597=>524,11598=>720,11599=>300,11600=>836,11601=>300,11602=>718,11603=>388,11604=>872,11605=>872,11606=>696,11607=>308,11608=>640,11609=>872,11610=>872,11611=>762,11612=>424,11613=>720,11614=>762,11615=>720,11616=>709,11617=>720,11618=>541,11619=>828,11620=>454,11621=>828,11631=>482,11799=>333,42888=>333,42889=>276,42890=>342,42891=>258,42892=>258,64256=>607,64257=>576,64258=>603,64259=>849,64260=>849,64261=>627,64275=>1243,64276=>1226,64277=>1233,64278=>1238,64279=>1448,64285=>284,64286=>305,64287=>542,64288=>653,64289=>964,64290=>888,64291=>932,64292=>845,64293=>917,64294=>933,64295=>850,64296=>1006,64297=>584,64298=>840,64299=>840,64300=>840,64301=>840,64302=>714,64303=>714,64304=>714,64305=>651,64306=>557,64307=>638,64308=>682,64309=>348,64310=>443,64312=>670,64313=>354,64314=>590,64315=>595,64316=>667,64318=>704,64320=>429,64321=>670,64323=>661,64324=>660,64326=>671,64327=>672,64328=>600,64329=>840,64330=>756,64331=>212,64332=>591,64333=>550,64334=>568,64335=>714,65533=>900,65535=>700); +$desc=array('Flags'=>96,'FontBBox'=>'[-908 -313 1591 1076]','ItalicAngle'=>-12,'Ascent'=>900,'Descent'=>-200,'Leading'=>100,'CapHeight'=>729,'XHeight'=>540,'StemV'=>105,'StemH'=>45,'AvgWidth'=>639,'MaxWidth'=>1501,'MissingWidth'=>800); +$cw=array(0=>800,32=>278,33=>333,34=>474,35=>556,36=>556,37=>889,38=>722,39=>238,40=>333,41=>333,42=>389,43=>584,44=>278,45=>333,46=>278,47=>278,48=>556,49=>556,50=>556,51=>556,52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>333,59=>333,60=>584,61=>584,62=>584,63=>611,64=>975,65=>722,66=>722,67=>722,68=>722,69=>667,70=>611,71=>778,72=>722,73=>278,74=>556,75=>722,76=>611,77=>833,78=>722,79=>778,80=>667,81=>778,82=>722,83=>667,84=>611,85=>722,86=>667,87=>944,88=>667,89=>667,90=>611,91=>333,92=>278,93=>333,94=>584,95=>556,96=>333,97=>556,98=>611,99=>556,100=>611,101=>556,102=>333,103=>611,104=>611,105=>278,106=>278,107=>556,108=>278,109=>889,110=>611,111=>611,112=>611,113=>611,114=>389,115=>556,116=>333,117=>611,118=>556,119=>778,120=>556,121=>556,122=>500,123=>389,124=>280,125=>389,126=>584,160=>278,161=>333,162=>556,163=>556,164=>556,165=>556,166=>280,167=>556,168=>333,169=>737,170=>370,171=>556,172=>584,173=>333,174=>737,175=>333,176=>606,177=>584,178=>350,179=>350,180=>333,181=>667,182=>556,183=>278,184=>333,185=>248,186=>365,187=>556,188=>869,189=>869,190=>869,191=>611,192=>722,193=>722,194=>722,195=>722,196=>722,197=>722,198=>1000,199=>722,200=>667,201=>667,202=>667,203=>667,204=>278,205=>278,206=>278,207=>278,208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>584,216=>778,217=>722,218=>722,219=>722,220=>722,221=>667,222=>667,223=>611,224=>556,225=>556,226=>556,227=>556,228=>556,229=>556,230=>892,231=>556,232=>556,233=>556,234=>556,235=>556,236=>278,237=>278,238=>278,239=>278,240=>611,241=>611,242=>611,243=>611,244=>611,245=>611,246=>611,247=>584,248=>611,249=>611,250=>611,251=>611,252=>611,253=>556,254=>611,255=>556,256=>722,257=>556,258=>722,259=>556,260=>722,261=>556,262=>722,263=>556,264=>722,265=>556,266=>722,267=>556,268=>722,269=>556,270=>722,271=>755,272=>722,273=>611,274=>667,275=>556,276=>667,277=>556,278=>667,279=>556,280=>667,281=>556,282=>667,283=>556,284=>778,285=>611,286=>778,287=>611,288=>778,289=>611,290=>778,291=>611,292=>722,293=>611,294=>722,295=>611,296=>278,297=>300,298=>278,299=>300,300=>278,301=>300,302=>278,303=>278,304=>278,305=>278,306=>595,307=>488,308=>556,309=>300,310=>722,311=>556,312=>529,313=>611,314=>278,315=>611,316=>278,317=>611,318=>444,319=>611,320=>466,321=>611,322=>278,323=>722,324=>611,325=>722,326=>611,327=>722,328=>611,329=>656,330=>720,331=>611,332=>778,333=>611,334=>778,335=>611,336=>778,337=>611,338=>1000,339=>962,340=>722,341=>389,342=>722,343=>389,344=>722,345=>389,346=>667,347=>556,348=>667,349=>556,350=>667,351=>556,352=>667,353=>556,354=>611,355=>333,356=>611,357=>444,358=>611,359=>404,360=>722,361=>611,362=>722,363=>611,364=>722,365=>611,366=>722,367=>611,368=>722,369=>611,370=>722,371=>611,372=>944,373=>778,374=>667,375=>556,376=>667,377=>611,378=>500,379=>611,380=>500,381=>611,382=>500,383=>333,384=>611,385=>857,386=>722,387=>611,388=>667,389=>611,390=>722,391=>752,392=>586,393=>722,394=>818,395=>722,396=>611,397=>609,398=>667,399=>778,400=>672,401=>611,402=>333,403=>778,404=>667,405=>940,406=>278,407=>395,408=>778,409=>556,410=>333,411=>620,412=>889,413=>722,414=>611,415=>778,416=>788,417=>653,418=>973,419=>739,420=>756,421=>611,422=>647,423=>667,424=>556,425=>688,426=>441,427=>333,428=>605,429=>333,430=>611,431=>769,432=>664,433=>780,434=>722,435=>762,436=>650,437=>611,438=>500,439=>556,440=>556,441=>645,442=>569,443=>579,446=>546,447=>608,448=>258,449=>443,450=>584,451=>278,452=>1333,453=>1222,454=>1111,455=>1167,456=>889,457=>556,458=>1278,459=>1000,460=>889,461=>722,462=>556,463=>278,464=>300,465=>778,466=>611,467=>722,468=>611,469=>722,470=>611,471=>722,472=>611,473=>722,474=>611,475=>722,476=>611,477=>556,478=>722,479=>556,480=>722,481=>556,482=>1000,483=>892,484=>811,485=>641,486=>778,487=>611,488=>722,489=>556,490=>778,491=>611,492=>778,493=>611,494=>556,495=>556,496=>278,497=>1333,498=>1222,499=>1111,500=>778,501=>611,503=>630,504=>722,505=>611,506=>722,507=>556,508=>1000,509=>892,510=>778,511=>611,512=>722,513=>556,514=>722,515=>556,516=>667,517=>556,518=>667,519=>556,520=>278,521=>301,522=>278,523=>278,524=>778,525=>611,526=>778,527=>611,528=>722,529=>389,530=>722,531=>389,532=>722,533=>611,534=>722,535=>611,536=>667,537=>556,538=>611,539=>333,540=>569,541=>486,542=>722,543=>611,548=>645,549=>500,550=>722,551=>556,552=>667,553=>556,554=>778,555=>611,556=>778,557=>611,558=>778,559=>611,560=>778,561=>611,562=>667,563=>556,567=>278,592=>556,593=>611,594=>671,595=>611,596=>556,597=>600,598=>595,599=>611,600=>556,601=>556,602=>834,603=>570,604=>546,605=>820,606=>570,607=>278,608=>611,609=>611,610=>556,611=>556,612=>646,613=>619,614=>611,615=>611,616=>278,617=>326,618=>278,619=>473,620=>527,621=>298,622=>778,623=>889,624=>889,625=>889,626=>611,627=>611,628=>615,629=>590,630=>878,631=>822,632=>778,633=>389,634=>389,635=>406,636=>419,637=>389,638=>455,639=>455,640=>620,641=>586,642=>606,643=>333,644=>302,645=>333,646=>556,647=>328,648=>333,649=>623,650=>686,651=>630,652=>556,653=>778,654=>556,655=>556,656=>519,657=>571,658=>556,659=>632,660=>563,661=>563,662=>563,663=>556,664=>579,665=>572,666=>570,667=>616,668=>603,669=>552,670=>556,671=>454,672=>611,673=>546,674=>546,675=>1004,676=>1018,677=>1097,678=>804,679=>593,680=>840,681=>866,682=>752,683=>668,684=>536,685=>486,686=>659,687=>679,688=>377,689=>377,690=>202,691=>272,692=>272,693=>299,694=>395,695=>534,696=>364,697=>278,698=>454,699=>278,700=>333,701=>278,702=>333,703=>333,704=>333,705=>333,706=>333,707=>333,708=>333,709=>333,710=>333,711=>333,712=>333,713=>333,714=>333,715=>333,716=>272,717=>333,718=>333,719=>333,720=>333,721=>333,722=>333,723=>333,724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,731=>333,732=>333,733=>333,734=>333,735=>510,736=>372,737=>210,738=>363,739=>373,740=>334,741=>526,742=>526,743=>526,744=>526,745=>526,746=>519,747=>519,748=>333,749=>333,750=>333,751=>333,752=>333,753=>333,754=>333,755=>333,756=>333,757=>437,758=>437,759=>400,760=>333,761=>200,762=>200,763=>200,764=>200,765=>332,766=>333,767=>333,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,859=>0,860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,867=>0,868=>0,869=>0,870=>0,871=>0,872=>0,873=>0,874=>0,875=>0,876=>0,877=>0,878=>0,879=>0,884=>208,885=>247,890=>364,894=>333,900=>239,901=>446,902=>688,903=>333,904=>903,905=>962,906=>448,908=>904,910=>991,911=>932,912=>346,913=>764,914=>688,915=>642,916=>744,917=>710,918=>688,919=>743,920=>810,921=>296,922=>744,923=>744,924=>860,925=>714,926=>690,927=>822,928=>781,929=>698,931=>688,932=>688,933=>744,934=>777,935=>783,936=>805,937=>780,938=>296,939=>744,940=>640,941=>530,942=>597,943=>339,944=>575,945=>656,946=>576,947=>591,948=>620,949=>570,950=>522,951=>586,952=>586,953=>346,954=>576,955=>620,956=>667,957=>564,958=>530,959=>610,960=>721,961=>626,962=>595,963=>676,964=>592,965=>575,966=>801,967=>632,968=>722,969=>800,970=>346,971=>575,972=>609,973=>604,974=>769,977=>580,978=>742,979=>857,980=>620,981=>778,982=>740,983=>601,1008=>556,1009=>566,1012=>778,1013=>328,1024=>667,1025=>667,1026=>790,1027=>617,1028=>731,1029=>667,1030=>278,1031=>278,1032=>556,1033=>1110,1034=>1088,1035=>790,1036=>722,1037=>757,1038=>698,1039=>722,1040=>722,1041=>722,1042=>722,1043=>617,1044=>876,1045=>667,1046=>1100,1047=>670,1048=>757,1049=>757,1050=>722,1051=>715,1052=>874,1053=>753,1054=>778,1055=>753,1056=>680,1057=>722,1058=>611,1059=>698,1060=>909,1061=>657,1062=>845,1063=>688,1064=>1132,1065=>1217,1066=>835,1067=>980,1068=>678,1069=>735,1070=>1142,1071=>708,1072=>553,1073=>591,1074=>574,1075=>429,1076=>745,1077=>572,1078=>792,1079=>554,1080=>603,1081=>603,1082=>559,1083=>583,1084=>664,1085=>603,1086=>588,1087=>603,1088=>605,1089=>549,1090=>440,1091=>541,1092=>948,1093=>539,1094=>690,1095=>564,1096=>901,1097=>987,1098=>692,1099=>806,1100=>572,1101=>546,1102=>893,1103=>586,1104=>572,1105=>572,1106=>616,1107=>429,1108=>549,1109=>562,1110=>281,1111=>300,1112=>282,1113=>888,1114=>897,1115=>606,1116=>559,1117=>603,1118=>541,1119=>603,1120=>986,1121=>736,1136=>830,1137=>761,1138=>778,1139=>590,1148=>942,1149=>736,1150=>986,1151=>736,1154=>456,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,1162=>791,1163=>662,1164=>639,1165=>581,1166=>670,1167=>649,1168=>623,1169=>450,1170=>623,1171=>472,1172=>674,1173=>528,1174=>1091,1175=>803,1176=>659,1177=>548,1178=>739,1179=>569,1180=>742,1181=>560,1182=>737,1183=>559,1184=>900,1185=>679,1186=>808,1187=>673,1188=>1004,1189=>761,1190=>1114,1191=>876,1192=>963,1193=>766,1194=>724,1195=>554,1196=>611,1197=>454,1198=>667,1199=>584,1200=>652,1201=>632,1202=>667,1203=>550,1204=>951,1205=>748,1206=>759,1207=>630,1208=>669,1209=>580,1210=>672,1211=>576,1212=>977,1213=>752,1214=>993,1215=>761,1216=>318,1217=>1087,1218=>792,1219=>726,1220=>530,1221=>782,1222=>674,1223=>749,1224=>603,1225=>823,1226=>682,1227=>675,1228=>573,1229=>941,1230=>754,1231=>310,1232=>704,1233=>553,1234=>711,1235=>553,1236=>1000,1237=>892,1238=>667,1239=>569,1240=>738,1241=>561,1242=>738,1243=>561,1244=>1086,1245=>792,1246=>670,1247=>554,1248=>558,1249=>546,1250=>753,1251=>603,1252=>753,1253=>603,1254=>778,1255=>588,1256=>778,1257=>590,1258=>778,1259=>590,1260=>735,1261=>546,1262=>698,1263=>541,1264=>698,1265=>541,1266=>698,1267=>541,1268=>686,1269=>564,1270=>617,1271=>475,1272=>976,1273=>806,1296=>672,1297=>546,1298=>729,1299=>577,1306=>778,1307=>611,1308=>944,1309=>776,1310=>750,1311=>573,1329=>730,1330=>713,1331=>765,1332=>752,1333=>708,1334=>801,1335=>496,1336=>713,1337=>855,1338=>686,1339=>727,1340=>420,1341=>897,1342=>841,1343=>708,1344=>660,1345=>666,1346=>747,1347=>698,1348=>757,1349=>630,1350=>747,1351=>651,1352=>743,1353=>657,1354=>728,1355=>799,1356=>752,1357=>743,1358=>768,1359=>691,1360=>713,1361=>640,1362=>425,1363=>818,1364=>672,1365=>805,1366=>754,1369=>333,1370=>222,1371=>250,1372=>333,1373=>333,1374=>352,1375=>362,1377=>873,1378=>613,1379=>634,1380=>636,1381=>593,1382=>639,1383=>417,1384=>613,1385=>658,1386=>711,1387=>609,1388=>318,1389=>836,1390=>670,1391=>613,1392=>607,1393=>611,1394=>626,1395=>619,1396=>618,1397=>324,1398=>613,1399=>540,1400=>591,1401=>392,1402=>873,1403=>577,1404=>603,1405=>600,1406=>626,1407=>951,1408=>613,1409=>612,1410=>348,1411=>951,1412=>616,1413=>606,1414=>763,1415=>626,1417=>333,1418=>398,1423=>752,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1467=>0,1468=>0,1469=>0,1470=>596,1471=>0,1472=>377,1473=>0,1474=>0,1475=>413,1476=>0,1488=>714,1489=>651,1490=>557,1491=>638,1492=>682,1493=>297,1494=>443,1495=>682,1496=>670,1497=>284,1498=>590,1499=>595,1500=>667,1501=>683,1502=>694,1503=>297,1504=>429,1505=>670,1506=>653,1507=>661,1508=>660,1509=>616,1510=>671,1511=>672,1512=>600,1513=>840,1514=>756,1520=>554,1521=>550,1522=>542,1523=>238,1524=>474,4256=>616,4257=>645,4258=>664,4259=>839,4260=>627,4261=>630,4262=>827,4263=>928,4264=>639,4265=>630,4266=>951,4267=>606,4268=>608,4269=>835,4270=>630,4271=>610,4272=>804,4273=>615,4274=>823,4275=>747,4276=>870,4277=>627,4278=>840,4279=>627,4280=>665,4281=>610,4282=>799,4283=>598,4284=>665,4285=>664,4286=>608,4287=>886,4288=>629,4304=>463,4305=>516,4306=>564,4307=>706,4308=>459,4309=>476,4310=>623,4311=>711,4312=>494,4313=>476,4314=>894,4315=>500,4316=>500,4317=>712,4318=>493,4319=>503,4320=>712,4321=>503,4322=>710,4323=>670,4324=>707,4325=>459,4326=>691,4327=>465,4328=>492,4329=>480,4330=>656,4331=>500,4332=>492,4333=>524,4334=>500,4335=>688,4336=>510,4337=>739,4338=>450,4339=>479,4340=>502,4341=>501,4345=>564,4347=>515,4348=>449,5024=>714,5025=>731,5026=>624,5027=>908,5028=>1040,5029=>271,5030=>654,5031=>863,5032=>604,5033=>791,5034=>714,5035=>522,5036=>661,5037=>926,5038=>615,5039=>811,5040=>538,5041=>633,5042=>979,5043=>964,5044=>635,5045=>607,5046=>753,5047=>831,5048=>566,5049=>977,5050=>958,5051=>710,5052=>616,5053=>834,5054=>790,5055=>612,5056=>766,5057=>857,5058=>627,5059=>649,5060=>607,5061=>1127,5062=>680,5063=>920,5064=>928,5065=>1333,5066=>920,5067=>705,5068=>695,5069=>1074,5070=>672,5071=>672,5072=>667,5073=>819,5074=>679,5075=>575,5076=>903,5077=>652,5078=>776,5079=>643,5080=>670,5081=>660,5082=>648,5083=>934,5084=>909,5085=>613,5086=>615,5087=>735,5088=>900,5089=>1024,5090=>647,5091=>760,5092=>829,5093=>824,5094=>756,5095=>625,5096=>981,5097=>1014,5098=>1040,5099=>790,5100=>926,5101=>686,5102=>656,5103=>920,5104=>741,5105=>890,5106=>626,5107=>974,5108=>699,7680=>722,7681=>556,7682=>722,7683=>611,7684=>722,7685=>611,7686=>722,7687=>611,7688=>722,7689=>556,7690=>722,7691=>611,7692=>722,7693=>611,7694=>722,7695=>611,7696=>722,7697=>611,7698=>722,7699=>611,7700=>667,7701=>556,7702=>667,7703=>556,7704=>667,7705=>556,7706=>667,7707=>556,7708=>667,7709=>556,7710=>611,7711=>333,7712=>778,7713=>611,7714=>722,7715=>611,7716=>722,7717=>611,7718=>722,7719=>611,7720=>722,7721=>611,7722=>722,7723=>611,7724=>278,7725=>278,7726=>278,7727=>278,7728=>722,7729=>556,7730=>722,7731=>556,7732=>722,7733=>556,7734=>611,7735=>278,7736=>611,7737=>278,7738=>611,7739=>278,7740=>611,7741=>278,7742=>833,7743=>889,7744=>833,7745=>889,7746=>833,7747=>889,7748=>722,7749=>611,7750=>722,7751=>611,7752=>722,7753=>611,7754=>722,7755=>611,7756=>778,7757=>611,7758=>778,7759=>611,7760=>778,7761=>611,7762=>778,7763=>611,7764=>667,7765=>611,7766=>667,7767=>611,7768=>722,7769=>389,7770=>722,7771=>389,7772=>722,7773=>389,7774=>722,7775=>389,7776=>667,7777=>556,7778=>667,7779=>556,7780=>667,7781=>556,7782=>667,7783=>556,7784=>667,7785=>556,7786=>611,7787=>333,7788=>611,7789=>333,7790=>611,7791=>333,7792=>611,7793=>333,7794=>722,7795=>611,7796=>722,7797=>611,7798=>722,7799=>611,7800=>722,7801=>611,7802=>722,7803=>611,7804=>667,7805=>556,7806=>667,7807=>556,7808=>944,7809=>778,7810=>944,7811=>778,7812=>944,7813=>778,7814=>944,7815=>778,7816=>944,7817=>778,7818=>667,7819=>556,7820=>667,7821=>556,7822=>667,7823=>556,7824=>611,7825=>500,7826=>611,7827=>500,7828=>611,7829=>500,7830=>611,7831=>333,7832=>778,7833=>556,7834=>555,7835=>333,7840=>722,7841=>556,7842=>722,7843=>556,7844=>722,7845=>556,7846=>722,7847=>556,7848=>722,7849=>556,7850=>722,7851=>556,7852=>722,7853=>556,7854=>722,7855=>556,7856=>722,7857=>556,7858=>722,7859=>556,7860=>722,7861=>556,7862=>722,7863=>556,7864=>667,7865=>556,7866=>667,7867=>556,7868=>667,7869=>556,7870=>667,7871=>556,7872=>667,7873=>556,7874=>667,7875=>556,7876=>667,7877=>556,7878=>667,7879=>556,7880=>278,7881=>278,7882=>278,7883=>278,7884=>778,7885=>611,7886=>778,7887=>611,7888=>778,7889=>611,7890=>778,7891=>611,7892=>778,7893=>611,7894=>778,7895=>611,7896=>778,7897=>611,7898=>788,7899=>653,7900=>788,7901=>653,7902=>788,7903=>653,7904=>788,7905=>653,7906=>788,7907=>653,7908=>722,7909=>611,7910=>722,7911=>611,7912=>769,7913=>664,7914=>769,7915=>664,7916=>769,7917=>664,7918=>769,7919=>664,7920=>769,7921=>664,7922=>667,7923=>556,7924=>667,7925=>556,7926=>667,7927=>556,7928=>667,7929=>556,7936=>656,7937=>656,7938=>656,7939=>656,7940=>656,7941=>656,7942=>656,7943=>656,7944=>764,7945=>764,7946=>916,7947=>940,7948=>908,7949=>891,7950=>844,7951=>869,7952=>570,7953=>570,7954=>570,7955=>570,7956=>570,7957=>570,7960=>842,7961=>836,7962=>1025,7963=>1051,7964=>1035,7965=>1049,7968=>586,7969=>586,7970=>586,7971=>586,7972=>586,7973=>586,7974=>586,7975=>586,7976=>891,7977=>886,7978=>1081,7979=>1108,7980=>1085,7981=>1096,7982=>1009,7983=>1023,7984=>346,7985=>346,7986=>346,7987=>346,7988=>346,7989=>346,7990=>346,7991=>346,7992=>467,7993=>476,7994=>631,7995=>661,7996=>631,7997=>633,7998=>568,7999=>571,8000=>610,8001=>610,8002=>610,8003=>610,8004=>610,8005=>610,8008=>945,8009=>905,8010=>1118,8011=>1121,8012=>1064,8013=>1062,8016=>575,8017=>575,8018=>575,8019=>575,8020=>575,8021=>575,8022=>575,8023=>575,8025=>964,8027=>1148,8029=>1162,8031=>1081,8032=>800,8033=>800,8034=>800,8035=>800,8036=>800,8037=>800,8038=>800,8039=>800,8040=>904,8041=>875,8042=>1092,8043=>1087,8044=>1003,8045=>1002,8046=>1001,8047=>1025,8048=>656,8049=>656,8050=>570,8051=>570,8052=>586,8053=>586,8054=>346,8055=>346,8056=>610,8057=>610,8058=>575,8059=>575,8060=>800,8061=>800,8064=>656,8065=>656,8066=>656,8067=>656,8068=>656,8069=>656,8070=>656,8071=>656,8072=>854,8073=>855,8074=>1006,8075=>1030,8076=>996,8077=>977,8078=>938,8079=>959,8080=>586,8081=>586,8082=>586,8083=>586,8084=>586,8085=>586,8086=>586,8087=>586,8088=>960,8089=>960,8090=>1155,8091=>1186,8092=>1161,8093=>1171,8094=>1087,8095=>1102,8096=>800,8097=>800,8098=>800,8099=>800,8100=>800,8101=>800,8102=>800,8103=>800,8104=>1005,8105=>980,8106=>1201,8107=>1192,8108=>1109,8109=>1108,8110=>1106,8111=>1130,8112=>656,8113=>656,8114=>656,8115=>656,8116=>640,8118=>656,8119=>656,8120=>764,8121=>764,8122=>764,8123=>764,8124=>854,8125=>278,8126=>201,8127=>147,8128=>278,8129=>333,8130=>586,8131=>586,8132=>597,8134=>586,8135=>586,8136=>911,8137=>925,8138=>941,8139=>948,8140=>826,8141=>402,8142=>403,8143=>147,8144=>346,8145=>346,8146=>346,8147=>346,8150=>346,8151=>346,8152=>296,8153=>296,8154=>511,8155=>521,8157=>434,8158=>433,8159=>333,8160=>575,8161=>575,8162=>575,8163=>575,8164=>626,8165=>626,8166=>575,8167=>575,8168=>744,8169=>744,8170=>901,8171=>975,8172=>837,8173=>353,8174=>351,8175=>303,8178=>800,8179=>800,8180=>800,8182=>800,8183=>800,8184=>979,8185=>918,8186=>936,8187=>877,8188=>895,8189=>333,8190=>159,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>556,8200=>278,8201=>167,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>556,8211=>556,8212=>1000,8213=>1000,8214=>437,8215=>556,8216=>278,8217=>278,8218=>278,8219=>278,8220=>500,8221=>500,8222=>500,8223=>503,8224=>556,8225=>556,8226=>400,8227=>400,8228=>278,8229=>666,8230=>1000,8231=>278,8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>167,8240=>1000,8241=>1372,8242=>238,8243=>426,8244=>614,8245=>238,8246=>379,8247=>571,8248=>450,8249=>333,8250=>333,8251=>622,8252=>666,8253=>617,8254=>556,8255=>658,8256=>658,8257=>438,8258=>840,8259=>400,8260=>167,8261=>334,8262=>334,8263=>1222,8264=>944,8265=>944,8266=>556,8267=>556,8268=>600,8269=>600,8270=>389,8271=>333,8272=>658,8273=>389,8274=>634,8275=>568,8276=>658,8277=>793,8278=>515,8279=>855,8280=>722,8281=>725,8282=>224,8283=>722,8284=>604,8285=>224,8286=>224,8287=>0,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>351,8305=>200,8308=>351,8309=>351,8310=>351,8311=>351,8312=>351,8313=>351,8314=>351,8315=>351,8316=>351,8317=>270,8318=>270,8319=>391,8320=>351,8321=>251,8322=>351,8323=>351,8324=>351,8325=>351,8326=>351,8327=>351,8328=>351,8329=>351,8330=>350,8331=>350,8332=>350,8333=>270,8334=>270,8336=>363,8337=>366,8338=>394,8339=>360,8340=>355,8355=>611,8356=>576,8357=>833,8358=>724,8360=>1286,8362=>1049,8363=>571,8364=>640,8368=>594,8373=>591,8376=>612,8377=>599,8400=>0,8401=>0,8402=>0,8403=>0,8406=>0,8407=>0,8411=>0,8412=>0,8413=>0,8414=>0,8415=>0,8416=>0,8417=>0,8421=>0,8422=>0,8423=>0,8424=>0,8425=>0,8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,8432=>0,8448=>945,8449=>1007,8451=>1020,8453=>981,8454=>1002,8455=>667,8456=>722,8457=>930,8462=>611,8465=>606,8467=>608,8468=>883,8470=>1006,8471=>860,8476=>699,8480=>1000,8481=>1330,8482=>1000,8486=>780,8487=>780,8489=>286,8490=>722,8491=>722,8494=>556,8498=>626,8501=>714,8502=>651,8503=>557,8504=>638,8506=>906,8507=>1425,8513=>778,8514=>611,8515=>611,8516=>667,8523=>710,8525=>1242,8526=>460,8531=>869,8532=>869,8533=>869,8534=>869,8535=>869,8536=>869,8537=>869,8538=>869,8539=>869,8540=>869,8541=>869,8542=>869,8543=>869,8544=>278,8545=>556,8546=>834,8547=>945,8548=>667,8549=>945,8550=>1223,8551=>1501,8552=>945,8553=>667,8554=>945,8555=>1223,8556=>611,8557=>722,8558=>722,8559=>833,8560=>278,8561=>556,8562=>834,8563=>834,8564=>556,8565=>834,8566=>1112,8567=>1390,8568=>834,8569=>556,8570=>834,8571=>1112,8572=>278,8573=>556,8574=>611,8575=>889,8592=>964,8593=>964,8594=>964,8595=>964,8596=>964,8597=>964,8598=>964,8599=>964,8600=>964,8601=>964,8602=>964,8603=>964,8606=>964,8607=>964,8608=>964,8609=>964,8610=>964,8611=>964,8612=>964,8613=>964,8614=>964,8615=>964,8616=>964,8644=>964,8645=>964,8646=>964,8647=>964,8648=>964,8649=>964,8650=>964,8704=>697,8705=>716,8706=>608,8707=>667,8708=>667,8709=>860,8710=>729,8711=>729,8712=>584,8713=>584,8714=>585,8715=>584,8716=>584,8717=>585,8718=>500,8719=>800,8720=>801,8721=>856,8722=>584,8723=>584,8724=>584,8725=>627,8726=>452,8727=>500,8728=>500,8729=>500,8730=>637,8731=>549,8732=>549,8733=>713,8734=>713,8735=>639,8736=>800,8739=>220,8741=>380,8743=>608,8744=>608,8745=>768,8746=>768,8747=>518,8748=>808,8749=>1098,8764=>500,8776=>500,8800=>584,8801=>584,8804=>584,8805=>584,8834=>584,8835=>584,8838=>584,8839=>584,8976=>584,8994=>658,8995=>658,9001=>380,9002=>380,9251=>500,9674=>541,9675=>860,9702=>400,9711=>1020,9824=>626,9825=>694,9826=>595,9827=>776,9828=>626,9829=>694,9830=>595,9831=>776,9833=>333,9834=>556,9835=>778,9836=>778,9837=>556,9838=>556,9839=>556,11568=>352,11569=>872,11570=>872,11571=>720,11572=>720,11573=>720,11574=>664,11575=>752,11576=>752,11577=>720,11578=>720,11579=>596,11580=>698,11581=>742,11582=>574,11583=>742,11584=>872,11585=>872,11586=>312,11587=>720,11588=>696,11589=>720,11590=>584,11591=>742,11592=>796,11593=>613,11594=>672,11595=>888,11596=>836,11597=>524,11598=>720,11599=>300,11600=>836,11601=>300,11602=>718,11603=>388,11604=>872,11605=>872,11606=>696,11607=>308,11608=>640,11609=>872,11610=>872,11611=>762,11612=>424,11613=>720,11614=>762,11615=>720,11616=>709,11617=>720,11618=>541,11619=>828,11620=>454,11621=>828,11631=>482,11798=>584,11799=>333,11800=>611,11802=>333,11803=>500,11806=>500,11807=>500,11816=>504,11817=>504,11818=>660,11819=>660,11820=>660,11821=>660,11822=>611,42888=>333,42889=>276,42890=>342,42891=>258,42892=>258,42922=>917,64256=>607,64257=>576,64258=>603,64259=>849,64260=>849,64261=>627,64275=>1243,64276=>1226,64277=>1233,64278=>1238,64279=>1448,64285=>284,64286=>305,64287=>542,64288=>653,64289=>964,64290=>888,64291=>932,64292=>845,64293=>917,64294=>933,64295=>850,64296=>1006,64297=>584,64298=>840,64299=>840,64300=>840,64301=>840,64302=>714,64303=>714,64304=>714,64305=>651,64306=>557,64307=>638,64308=>682,64309=>348,64310=>443,64312=>670,64313=>284,64314=>590,64315=>595,64316=>667,64318=>694,64320=>429,64321=>670,64323=>661,64324=>660,64326=>671,64327=>672,64328=>600,64329=>840,64330=>756,64331=>212,64332=>591,64333=>550,64334=>568,64335=>714,65529=>0,65530=>0,65531=>0,65532=>800,65533=>900,65535=>800); // --- EOF --- diff --git a/lib/tcpdf/fonts/freesansbi.z b/lib/tcpdf/fonts/freesansbi.z index 13e82b5037e28f28466957a250ba7e65a3248199..698832f83bf922aa0aea26a7d98933007de7f956 100644 GIT binary patch literal 194106 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[seuZ;j03jtFwvDtvfr1?|u7a1M%Js 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 z z=nb@e_MBaDk_gK0h_h!7ZSvk#`JJ2h+%ogB`wHo47m0=V6QrSJtck2D{~a)A_EhfHf&VIAIi{1!Z#kfd?D1gzygY25Ft z0D?QbhTy8rr=;;n3c^fDxQ?+;l!ciBOk;MAv0q2W*d7RRe~4N7R){$Tz$i(kl*XwJ zauULhTIZB}$+(NH&O{Et2idZXi>?-)tS7E&nUj>NI_D3k<(KyUvU=s8BA!&#=QA2a z(m_pqYcH#qMg!*#*pO9xN^SAc%1ci&S8Y4nnA5Wfl$| zKcpo3=1q+VJ8FUC{(=$4TD_@h1eSS?R0vs+Wu8q091UqTkT#*0#&r;H7&q&cGu`I4u%>}9bBQHgOqc@$K$wI(4pqN1BkO04H-798rLJ&$uG^2 z-<@&bz5{(E)^|_tg{5ocpS2Hq&l$~-)b)>&octPn6KD+NPu6_g+?yDF8}|2fwt)Z2 z#?T9O0KjTArqjcSjX7aoGXt(5d0JW~yjHuDEn6=Pm=BKb@`jSA^q0ai-&J`FJe;?H z4GD9%Bp5bjWoy`=YV-OsQE8LLtu{P2fh%(_As?IxO5in+CbPOwP?|8xCKRl8hqGKj z;xQ~{hALvQYta_X;DG@;^O=!*_HsGs0XgWg$S;EI%cznM_xZ3Oh;tR$_a4f=YgKGt z=B9Gp^BdGX*I@gnS^I1;4_HmY5#c4)ek;n#LDpW6oM@Nx^E$va63_wQB^FfFXQ!U0 zs2h9o$WgHHBS#oC_2wj%riJ4NSx$&&O5hcmngPKOR>$8-eD8sSC&v#S*h5#JOw%_3 zkB`mu%P6<1&}L`-qkm%0>ktCMl?noyC0huzQm@2>y{iSMQ%`=^wxl^~ z?#~QgE`RkP6+-fX#P->JYsag}A%7~{6zsSt-bUZt^9A|U;l`OSs&hvFg?&uooSvZ`lO5 zaJ!-hz-p9Quqq0q4;&6atj3dpQ+xcoN{K)z-PZ{+-*vbIqN#DTO5gc|4r<&uZy01HF{k; zsVCMgzpSag@H_Vr%gN8k@__?{I>@^(y(~=HTsXGXIJRCUf4_k1=ZhS#a*Rze$PNwG z6B$gn*qs@G=f$pm_V_{UssrPb4ipWFd{t>r%y7OVI1nNfuAtM55>Q^);X1}{l_@P9 zXe*S-vhyNat_dy%>doI)eKVddeqi}~XmYi}f&-TffBZ%i8Ze|D> z^vNLGJq9f&sjWUzXkaq4K|<8;O7^x=%7@Dmioyy?^ zuV7}QoMh|3D2(wv#?~EZVcch9qE?qZrSe2&xGBjsp(NKPZ?YAljDlwu`H*XwISM(#)yaQlhtIW*eD51dDCz3qtI#B=bK1rFVipRDWks<*kne3R6cc49 zbVStf;|U$YeNIWHQ4J*#wPl?h~^`;(&fopa}&;L6e&g);}W%ak~se~``D$;arM$}=zKHXD29 ztd7U-j*2$)V^V*IpYP!J+0Qv#muRnGpXMt26Y=3Sx~aCvD_8yb>?tVPni>TynIc*; zor;zmPvlURlHR93f7hcM|NiuQ!7){$FQRJsqi zE9IipvheoR73_UQRmYfd^t2tr{Hq}(bhqtvX%tX!pSaYRU8YZvQt=KfTW$oHm z>z8hr-Lz_z#+w{Y$C_qzM$%cYo~)N2jx|r~3CA)%t0+Ir=HJfd!jF47rP!q;i+P`U zQ+Be#Ne@Upq7gj}7czv1$m{WkgJa9T@ib|@b8P|n5I*fx5M>#f__J~@H*+Jl_a8mRt|?Ac(p zfP5oHo8AheRND0%6?ls6t49&0$8`s_O5AjR;P}g2fHUdMtYgJNwD9gSpGUBn*)lW1 zm1j*cB~@|-PZMYf#Cw6Rp-iLyXrDu89~k=k5QsD6%d(1Kc?5Os)rdFIJEgTrwKSH*A!SH+0s-bSv{xm^Dr<#i2Fq&54e34YSS zCX0xB`2}VRh2LsHU2mEfS>NoSmx#)@cIJ+iaq9hF>KM+i1(u}JHGxeonPw^Lp5@g3 zaegj1p(^huEK*I?CynKOg|#}_Us$X>SAfZLaRuwMg;^NaDohy6vt-UV-^B*5f3+V0D`Jl;|j zCirRTTwDo2Q1sQr6%Su8zjWKdHzuy)@YalMxjmc3y<^sU?wjxdgE84H-c!w=#5WrwAS$)oIob;K2p%|NHccpf#ctp zDpCAp5=FHp0sXvD5hRLS$@`^ovmc@~K0ksEm{ieH9_7N$`}`{T1{6Qy0A#0hUlTrf z;NTBo2o4^Y(tl9e%-~qaM&Zq=W5E6ILu?F8%wN1>a$eoApkZEh*$KT%)LND55fA2k z!-RTI>A40?Wj3L13pbV7i<_xFw+?IPbbLZ}dbPR{`{Z&@nb4{Ip@+`U7o5u}y&%Fm zW_uVgK7797@p@JMnHYN$!=k|$1cgIEvuLg32q_65Q{$1lKvsj54 z>_IQ&p8)7WETjYsTq=ufi6}=6565$H?)ThN`TT9y+-6Pv;@-<|X0FW4{sp@t@;f1t zSTO6V9`fELpSk^-j_&;TFFUuw@6>noZ`-)XxbW=j`MfMD9@RX-`Vw0|wMU>125c2L2MY4?a-6U`kKd@&UV&2JYgAPV z%oH&gAvfC!SMgb{3nrsqRa!(uhf{F@Q#=i62)kCXfr$WYQLq+CFZqFY0xjSyCVV13 zg^Q<~aU^y6myt`mgJOOF4C8T2V%GBOho^7uP1|?=hqY&YXVSKK`1}VK`&w75Y6*t8 z!5o{hYOpEMF@J8&HNUulUX@#T&fL)AHQ&5#@oGM1U}IR>TDA&4;SoM&1#tX0N{fca zzab0Mk2!RJgcCSr73+||LRr3SG5aRPubDNE>vcW|6T)?jy`P$1UC<*rJ*;vyfeTNE zT~K*sG{bn=pt3;lU^z!?dlroB1WAxalEgzbX01K`&<$h;Tl8`HhvTGS=0Z}fuKe-q zA7$R4M*f6o^{fA;E`Q}LU@lEETYS(6LsZ?Ni}xjs#;8hDZpDRuKf<4g`?J;>`TJ2Vy(eKQBvB}?Jwa(ZW?O=WW z&-#J5l&Ps7WLL60yzs)a`j&0#oI~nY8!QGb^Ywye3#o|Inj@B&)a&yubk!}Fzn@z; z=xgoGjj$`QX7#W^*hDMXdhiP|;oeE92Bj>>nC&wjo$yCdtodO);&^ZhrHcraWMrdJ zsjQ5rKXj?`&4=66^T?CgxE*Xt+k>Yp2?(y*o zr6iA~^Fvp?H?8nO>V3*F1)a8Mll+TINo?tKPqoK6?ZvvfXkw>(cx^0oh5xyE=hKQ= zjp3$*-BhDR2@mV}F4b|5d!6{*k?dc;iJ%g^1mV@kV@a*yV;n=T5; z6`_lo)+gr%VtQ9M3v$`-z zS7NGDtBZhRtTpmO!&phbn0S>Qv)=L{*gO>IgfoQ@KT<4I@#3#Mbv&!pS?w-Jx-Nv^ z6a_M4v>+Nou};k24Rq$MyeKo-qJ$9J)d(V)5yzpDCg~>ko!idd zSQSs-f8{%xTWZdl*Kkp`!sVN@{G8z#b#vX}#FyVzVC0iD`d(iFg; zT_BoMVuhbO{uR~!Cfxp}K=#eqr6+GsDi25o*5EpT3Nj^5272LCtQs}$M-tDB&LP@^ zmyXVnKR!q+M#7jbz{k+;CogM;rc4=I)J6NCCwJb)f(_@U5?M)uSB-4!Ck8(_g zG)r@Z+8XIf;7Iv9K2H1Da-rMrCqNlP6dmugBu|GSMM0&yY+^I=B2(Tq6Pxgbq`r z(_oGPRzSj~C!Jk6HaQEw#xA*=hY!g`TJiD6?BQXdmi7k5UCsPF7GxjJ5`eIQKSYgY z!HRw#Q!2}@h~&ajhQ3VO>UQ`Pl-ly_&N=TucIcyPp?Hiu!b4n%5i$g|03?{ zLi#2Vi4L9_t$w|l^|0;rwozK~^{=1&&7b~+XRS>B?LfJ|_@i=JfbmxJ0ja3Vo?%r^ z;op1WjGYiBr^SIR?PZaxQsD;y9G?^W<@*v#mwQ8Ax0LKP zEV?hjx_@n7m*zYj^Ay_UPocj)x0n*&q;CjOAtUq(CxtN!;qh>0*X27}#*6|F?*cqP z-k-(7N&rHsX1ANz81!KRwsQKFBy|&QJQui4LfaQ?;QrGCx_%zemB3do_#`|yn82Ng zkzKzU*+s_yuFxKU_A%Bt#Y12=grDcR2;+K_H^7xUtYo$5yW}$@0fWNAe5^uu8@O1A zMo}FD@4>DV)Ip*in;lYS0@&tQBL{=${1_-5D2EsdL^J)=D{H;t^VnSI%eP0`$F zZiw06?eUXmGt1lFSc_ITIm&F5SN>yF&gg39i__I(yZn3(h8@eDZ8p-4gjV zw7YwAiw1q!Ub3VEt?+%T+Ima!elN8&yt3+^Ay&4eg$$(xh$Ug?CQZ2ougUUkCeeDWciu5l*eo&&*)v&H@?YfLm7{Ce z(wyuoTb&p~*~Bg{;M(*GyObTP%ND$>(`Z*3jL4~I_GmF0YUDv)$J8LN+6Ns@4BJ6o zJ~3c&dZlrX7fu`|bb7NA-JKfTO@e5PV;WVqMX!3r^aW4T+G+AHRzBq?x%!=lk9Res ztGD~V7n?S{hAE^s-mQ=Lr0u9DdK5oSWV7ajxUP|u&Vj)7$GYG#LB#VFtJi3@qPK%_ zAt#UPs&OHeW}*}A7#l*M(i z?^*1*lC8Mr($P!zdos}ZOGoQ>zVyMGSn>)#*avL-9*^`*tELriaOa<*Ei)bc8b^6N z*P%o{FrF*%c&?E%ZCUu-xlZYEDV_@kHy487%IX~u&y^gdc&_S{VqYXjX%2O#bc0U6 zYKzi=-(dvfTPrRsJvR}Cm`yW>`J_?E@kKk?!XDXzp<9aqa(rR+!7}t>j;}Y!d{T!b zLXNM)$Uz@13uZ=i68D+07fbl642)Ubn>LZEfi7*lx|XHneTL zWDD-4p5jsQQPwB7kc1d6=C+x#ymubx9p%S;0MS&47>`caj3Q(>+KfCIob@Nc`jbF( zAM8*1lu2T{%UZIpttcwEsSM~@Hn@tkg0>{%bVQ`s5 zrV`y*MFIiwIRtSfHY&bTMy1>jhZXF>6+Euj;o&=6`O0i(8*N(@KGcDR-jqQ)ioag6;=nb9kC3eSp?KcLq0l4&*-FwtJtJjM3) zrX0>Oo70MW72sPq<{I0L=!|e$$AlhCUE*=u30lGsgeFW^kVjjGj02;)hkQepQOlFQ zC;js`CwiLnjo#1fuQ7e_qUPy3&#Uz`i4c#z{OrqM&(M(ihXy|0xM5zuch-Mnj~{Qk;^ zOx9qgV_B&#~Hrg-gww#>c1xT|WT zU*P&yyovSIDFlTdD}99|HCz%P;FTEigwdw6u)f-zS+wd41}|*XP$usx^}6DJmhO`` z4OmZY;1-DzdY&r!!4I_?BwmW)^f}NNf%55TRyEz9t*LT*L>)mRu-S>O@)1<^0NZ<| z(fa`(z53VdM|X@izTP-GbPM}3CtnYj5_^;GeV&yK6myeg1jn`erZ|6z> z6^+__=&%N)n>HUj{CwYo$6r;C^|U%G$T{X88T1w`nE+@icEbiY#vO1i{ld5tejH=J zQzqvih^Tc2D!7cZfN>5Z>~K!4s6hGVgWOrW&Tir5*hzp{;F?Q z@0Zdqx7_I-Id@g_9nJRDOOK7-c*6~Q?tO~1|91U(2VWsM;=B0Wmu{c7^UZJZu|JE+ zn06XwR^<6g-vazRFYn2sp(q|H7@!VD?U-Rok39T<28_pomGx-M6isw0eFelbX?)j!~z#b(VG1OFFUbBA!PY z6`N?3{k&`*_;Tkn8@d;<-orvlSf#{ysPd4Q#XuQ6UP!FrH7TSqtrm{>Do|Tq;4QRxSM_*Fn<4nuR;>!&HTJ z^LOr}i-s3pA0d0>?c(C$CHs7BD^_Q>yfL)7s$;?2nhRbZ*i4?Z_!h6(v3|toUcBa0 zJdSyk?qv3ZS#U8Od5&WB2AIM?!-1Iy6CRg|Sql>$rBBFBrc#4g6oUc4e=N*t9ye)R zZtPRQ#BBwa2iI+0a-hY~u38Mtq$f(3d_(c&mMjoHG@qWr#8aVzD2Wg4pBz01ML=U#|ko{o-+aIy9=&k>~5Ko5Ie_= z5DmwJUI~zkI`gj1G4`AAj&=%%sHg*o!%`UyIju!KZ_}rd8ZiOXi1;t7CvV&KZMe>M z_lkivSK02^aEtA}3kEJBh5_%Zo&kU1>+Tu8SA8=AKl?A>oBNn<6do1J7Q2bJ$2t_sSS#zR!|im%@Vxq5fO7!$(~;sy`V;my>II;np6nxHPnm$%mlq7= z4MzaIl#?8aImNtgP3XVjYtMC&%uFj?d|mB;-7s&Mja`Ng2>V6IgscKyI4G?dw;2RO zUBO}CM`6AUTTKo{u!tB&pdeO&JF&7+{8jyc@p9YBZQZ@=x-!i{Y8T_3%^hp#XRB)m z)>eC?QLkl|#o_lmaL=986!(#UxLHaWnHA1<$OsuMUJkGF^Zb>3U(Vv|&?kR}S3&q> z3*LX>lRrs%_L`Nmg5i^5(LsTK-FT*wnb7Hl zCN}2)Q$Vc0t(l2Vq&puMI$I6u2e9t9A*e7G9f~I1Aquh8MQ9fGyvf%@1WJ zrt@F5Odn#u>gK=d$V^E1-6X$0lV5mbVuaIgj!2-PChGC0@wxSB_A5*HttFX>x%^$d z0$i_cX;BHt-5kGza@tO_#Qr`-NWzIA|EgudDEq2){L?|Hu!`MU$v>T5!WLAny|c4W zKbI-S)|$>vM0$NTQB~X2+zqJ;QR;9$>-B|u`({H<)H27|^ok+CfmsI(ErSD~Hd{?t z{8Z=!!!8(YhuiaV4(Eh7?rUy>Zy93RW+KtpH#i5r#NrrB*AKv_+|${Y)bOmiEGV6} zKGMcaKu|;;8}VdaIiHFGnbxyS4@w!(e0(|4r`IWmXt^{=gWmG#Az8ww^)NRu4WXN8sNqtwju%;$a)e@A<~c#cd2_*4fZJXjZ70O}P$8x*8o`LnwkV$?NG;^f-?1iyZ9~Vv?o2m;bY|HJ&!MYA%eGr^;AQ zOO;VG901u50(9EE=CH`bvlhpR=gFAN*0LeO5gHQ>P96`kstLH5I)i%01;koY$A_oW ztl8CcQRuUfQbUfGjStVSfde_nu%X8%2MA-5GuY)zSgRBio)gAg1ic8TzZeT>(6gAZ z2rh_RSeW_g^Ws~xhlxWUj$FauSA2Ud4^XO({pXMWTtV~&zC|}r1P}6xWg?9W1o##W zcs1kI0#`_*_P7I3#SB+GOE3URpg#~i#c>yiqI1weZ);7!_~^5xC3{e=*Z&Li}pTF(<2+$Sgd1XF_-y$hEv8uiR8do zSov63jis@$l#PY)-;4!6L@yr;&OI5B%ErPtISS*}e>WD)Jo<0PBB@vM$dth-AB&*> zoW`bDs&i{G(9tKs3++*>Yoc2{r`KKv`hIdAU01f_`9UVYZ=8;i>Y{?!bo8%xKKp zJ@b$0OyA60&#V`62M&@M>o$@@HO+J1)_2#>$z0RiSD&ktKcR0fW_^X6lk1p|;$U9a zPlPcqm<9pD4*Ub`A~cX(=I!sL2%J#(cC907EL+97m-> zgdbQxi~_ZSnb;LkHUt{HhVUAL>lk}K#fWBd5^9jgLotOP>JR{fM3tXPg4Jnfy48&d z%m&Ec_W<%YDV(tnJc?W$WUs2BjEL0r#d z%Cb{10Q5|(P(2#G8e`p*07_Ynvc6QKte=Df&`-ujvI& zS&0ETCJ+Fduv$z6VwGk%Oje#>d&=|Qef%Ev7+F(F?9=d=mr)wm8Zjxus8PvpnCmD$ zCqVsEDR)81$Utln_2HkcC9C~EbS`i#=osx->>w+?wSCEm{1GvX@HJOliMSIH;YlTT zL9k>ektZ<8(r|P_7a>$dN{S+No{`7DrsO!E0g?j16z&%$dG(-LBJV$}h01uH0OBkH zSEk*0H51P@(dx_=pFeVnw2lykw}azapqRE3C}qtdIv&pgP~k3O`+sC;H253l=eBxt zjg`74U8?ER^vyk={bH>4XX&;U{{`X5uPUwKh>|CC73RYS0TIK8Ld?s?!LLXypy#$2 z1h=Mc!b7+O2T>NnWB_fM%KG7lFQ^h+;1b-6=ly;!N^s&8P=dqcJu8r@5*!e0@jM44 zxC&InHM5-nvX;_GDBWcPKoWrqr;q6T6_+h?R)!5uZSQdP=%sA7$y0mhbcZS~xnV^( zIXh_Ret}kC&cD5QzUDzT*B-#oF;AipVdejr%@f*lG{jtX&r z>9Y203Y{fe7ic@n z&@qVkt1ZmNZT@NRf!We2mjDGB9Rzy||Xm_vvFn&pa0D8lN1C(wWMX-01(G z#sW-Qi0qVS_tSS~GgEfvy4um&DH;Bo-`n%*tCJc2xZVefKKdW@eJ1z6B8;`bZm(fF zrltjid`&$w=XIG0vtFoXc6>ZjsMK=qE>}4<+=PbP`AkMdn7`e{ZgffcHV7~y=6|Np z#x_PDaK}N7OFcNvhjfBb3dJh{Ie{`#=XElIvKL#=w+t+%YB^yTE#> zgj;}%*#;hPgt`&fm}zBTDlCQ5dG6xWf`D>J5wg`)Q#-pa++>PYx70LkK2LKO9Uhps z7O+JYF6nM5Ll()^_k6``4EGJy7+cNN!GW-8!xDfIX=)wlUbcHiQ)PpSGSauTB02l^ z+u3+_u<;yZwose!gfLbIQX>h~RCO?($!a5pOH6z`0qz-uM?2<3DOkUjQg{NiXC)i7 zMs}l7%4cCbL+pJhQ^>OM%t8DT!ba5)BRHfr2=+iEn&wENg=8HY&1@yR-P}2uRU2`P zQ9~BSG72}KLaPzRl81XsW2tyXklvz<dCxm!gBt7Z+lE`)yNd6kt`F zklnbfoV`pYoyjpTlSw69vr}pm0Qp{r6t3loe|(RDXMLKy;k?efF9JbxqL=y7-DE{U zo~6nc=0S6*qUM`!$6BY`POG;#tuJLV<-e`B_`lE>MP4XmKEGMc1jTGDzNm&m43rT6 z4{vV*-_}*8jo)*x_VsGtcgwOZTe2nFitWVC;yC->W?z~#dz!ROy0;|2E~Lvg~`$ zd(L^!yFL#eM&-clP?!&w+{Int?GmyGJ?mf$?z{rXFVDwC;Zx-KXhcY%c9FKBp^2*y z>=|Jhy~Y?eTG|4DQd3uqo_Wx~G(CW`(40JA{!FEI#6{v?JZ?EaIB7CsPZdwpzO$xQ zd7`hO2WIkk_=}B4o|F1`l-k((oc#C4lV+2^#$%TNEOc(1i9~q4cG|;ln?CzuTD$(~ zI7~?FR)5crx@zwXcvSP^n_I&fZ`)U>qQEDkV}t?*hhGes~n>x6!TPoFz0 zL!miya!;=lp}H8NjT6jdxYmnyH29$ju3GvlqgD$P3W#v6(oa=mhv<~X#LPHB1CcD% zF(xlen?)*90Sj9%LtIJT_91FuhjD+AxnI06 z`2QPu$k0Z0d5BCN;#7G^)BnFK52Z zQT+g6w_In;M#a}l-czN7jAVBH=$k=u%RqgC`HhDgfy)Ti7oWv`s5=|R!fI2omuS*R z{hA_qvc?1_5fIKfRU~zGaJR{_}tL3IioQDy5 zmgNxlJW5%c60JV1(xWeaF_*~$qe1H%^h2@#cH7rK1qBk~%mKBI9{!V$aicz7R$UeJ~Vl@)fIbMoeFc(8&uIPy-px zj*&ntPLCO)When2)*g_Yq-A4>hzuc3hKL+j!7oAOBGtknu@YpkFJX1$L=PNx;{dn` z9Dn5?H9mq6MhL)F;Ho-=)Fd-)9MS2Wu0W85I&--xt2+==`Uox_JYj%tE@4{##iA!8 zj~r!4Z$GHLH93k>dy!$ku~-WF)?sdps|Hbi9&Z5T7veD}41fw{U!iQGJ|+vQxVd16 ziV$hzBIp-^2&0pNj6v+QlM(>b2@SzQ`TY5r_(N~59L^!28vS9I)jWFW0qy~0X*XOU z696D-evr^4$+#g?t8uW_!;42;AfA@sw@!_@K$Y1c@-vccjJhEIOBnJa6K93zsIT45 zm7tRx(2L9FVkL!GNDPlNq&+*@77Q7(l@3@%(=e_Cw7qfcLacPrmt7+AjzEonAAFQ% zHTu1dF{?S$7G#9%NK}@BsI~zB-#Q#GaC&DvU6d%wdJ++ta$gV zx#X$H+%+50{Is?4p+Ml#TQjRSuU$TnI^4JQhS}Q|&%JcavMqzi`zn193EW*u8XpG{gGnM&X31MCdF-30?teo(koHSjkHA z>48t<4(F)V?n4H*tfSi8+5sLg=d1`=!XLFWir@~%7^e-#TNToJiN8S>5RnArlX&aB zdWG(d|8PfUL2!;f(zzrzP#hZEd-H~8ce|VBPEYUj*%FmNVF!BtoDlh73HJJ_H?UX$TmM z@&>0LMKU=`01+3by12ZKcuyWuLIauNuB+c0J$PJmlJA|r@8Jc*BRjkg#>z@mATTFp zz4z+ZN#fu}d-IHuzdyO;lEov3PT|;>O!%PAoXdgzhY{F>@oY8Whp{K3bnJ%wm{l5k z9`&unF==N6!!UL&3rd9~pxS2WUok;-rrj}SuyRghD$zQt{sa)RR6)pDcx9%aWB}Iwn=x=Z9m~)h(sKU7;gxgFD$7 zVv_N+fAq(!=zjW|VgJ7Np4A7yrk~i0IT15pv>2p35Owzpjg9m&^#gRIYJp4+ z@cp=PXp2A+8m&&D#N!mZ4pC9aBWTkd{nrpbKlFVt=cqM)80TOIwc~u)s|ojJEW{VN z_e1ASHQrnN^Y_-*?_EH9YQx=r@~HoAYD`f}`f9fJU!=B0nvUDRUBWO{pdT1PJ4uL;Y_;s&}IMWVf`??Nbg-CZSTRIm3vOQI~}`n*Qc9LH$U{u!bhK7 zA>H)LWH#P&3mtb9ad`_|RRo(#%V6`y2rp`_s2GWXnapzIyq1@I$27Q$>;_mDo+6po zysv2NMgBm-HRI{x$0QW#uqlF!(;f>jP zH#Uo2v2JY4#c0t?F0wlp_2k3;)Be|NuRRO{to`R}Hs8}v@0M@6o5@zBK2iXEq*fLq zQ~H;zN{1}fMRX^Q5>98qJ;;`A9qp4}KTMZyXC3jg_FY)NGUjLPG3YC&YxpSoBI^6_ zf8joIqzvyPke?0HWjdgAn4hI9Rqimaz01Z!_o?tQj^~6_rwcHgfMJB3Bh)MgPmdl< zg+^aT0#1k6ABPz~3G>gaw)Y{cn#100WFpWYBp`KVv`VY_B#2RBQr3Aw0U3oYNB(Um zfbBD+(N7=!Qh+xF_>HxMj5o@*zO?s$i*i%OV>~NkGD+hxUSvEnE>nFxtk>17w&zvj z5vB2nf9-hW#(8Nx+vmvL^EKCoLw<75Pff0Gur7M0O$c|2>d?25H{vM{dq}EQ5At>D zk$2BUC(6w@e~qm6#IM9P)oDvDz@pm9wsEESON+Fgp!2*;>qsqd*gvR6iU_Ly%r;a8 zSlR^+r@PJ+Aq@{{(~Nb88`|h43O?@up?>#vn6HnZJ$_oU!qM?|f(4GIH(AK$Z8x2_ z>*>6Cxkovvuc%?H#`hcR#Ji)7V-=;bK7Q^MHdb8@xr20)$L&=bCRwW_SLJY|WTugu zGS11vWPbJJVRF~gc|4uE^y~Vj6V2Lq%cg1IVSn;eB=%gzXY>1s4#!9>1pZfaK7GU^ z?P)#Z0I6zqkh8;_JM}lm1d{<$?nWzJtpe;mO`#wcE}N+hVPP15cGdzJm^ACo9B?>m zD=wH@Hi&7xYv-pI@fCb_PsX*L> zpJODEAi0Rc4Z?J)@d+$epkmKW`5)UPf<(TDmDYgA;DTP%W<|(kSM2imY{22|pB=kA z_6ja0a_aOWfW=Fkr%oB3WXq|Wt)+uh&b#PZ@{y2K(dA_QBvl>us-f_BRt6B5w2WkK zUWFt3k#iqsNpZ1k8LxP=)R7-o!BDs`rRowZPE|_vk#kRD%+5!}hfVTkxIzxy=7ky# zmpE#7L59^0R|XjXEm!o*4f&BO{TN=^`l|GsEbGe6v~U_d27nrPbaPDTAaS|%%{BQ8 ziqP>;uM5~G3m$?D#PTRE<7U?~cNgMebh(#3V?V+cbK0k%bJ3WZtRQjUA`+x-_V#$4-;KeL9u- z=l>J*U|axV0wZ*c0~o9S1Uplz906>8#91g?pe)9uU@W+>6-!i&QCcf1KvEUPf*isp z5*|DU>&{8XI0>qhtME>_!i4Rp$zwE_qsIbQJos z_fDME82Gc)W}F4R{QYopc2cjcvmdlhXNlTTX^CS2aFAVvu>gyHB!>Fa)VymeRuTq= z-#r_2^jOr)`5|E}R%TE+xC?+wH0CgK4*FpSJvgaj(?W$bhyFVw%1~Dwj!JTfIy6ED zu=%C4z5U?mv^dIb)VUezq+goRSJ5SaA353r{&0YCVv~f_$fQ*$%TjV{6VuUhN3qoB zG$<$>XQgB_Um%Og@X)N?wcbG2s_tncnghfkhP-A?D7d-j8%GY_Zm)UFi$+B9R zPvbA~+r1`D$UVR1;ce@82#(q(4DD^L*wy{@J*Lg8$o6d7k+f@a3tPRpw8^Xyyq<`M z{^?EIH>_~Em!_kI9_;nr+?wxXa=v?FKw8hUx!-fF>tkB6lA}v{AP1rz=%WW|f1#RU zK*PAI9R;ZBg;gD!*_WcSZYfq`lC0;Ttix3XTbYGOH{`ojp4NBFU)9D_7*HQ`;IF94Riq`;mXsBtpGh;5c)ae;qq*6~Y zrJ|O)t(+Ijo#T}pm3asCb31bRPUh#zudtrBNX@*e)@lY3ryQdupP>i44ySuT^e*fq zwL7SuW$4CgRg=Q7Y>|0CN|p zsiqW|0;uP$k3l>gz}KxPIbR}s@SU$`Jw@K8MV>%eco6K_BUao93^;wQGD`gb+2Mz*Ia-%~l^6t3 z0=@M@z*4LOR7_1ruu7imCubw>lS+C>>%2)dpse(dj^8t}S8&obM`Pb$3S zzs&yR1|(+S!3Nt?tMETnc?)D%6$U7GgRw;nawCeG2?{M}e%mBAsM~LYKxHE%6a+1# z@!ZaT9BVmWX6PDFH*W{+C)TS4RHd9US}c!#3g(V2YP47mSOSsN#R1N)C{+>2c(Ist zRQxp?onCrXwRH&)Y3$?11e-%@Y5!YwC#rtO|NrYw#;}R; zucy3rn1TQ> zso!7XO_C@4;^RlESbd)YPOMa)Fo0s#q$q4_ zuFK0jo-P*iGn}c|FB0Db07(;7>K53`R#b!EmX$gS<9OgF-f=CX4R!-=0bB)cRAaJw zrGp*9wic^va(uI52PMx#Ww%qRrUGKm;*|KGKt|)Yl}@D8Va~@+6aHycloL4s>6ovf zbG--SoOH~PnW!2tCROJ1u$KW1&d$cHK}PQ>aZXlHp@rHaTiHm*eAl^EY|NW1a*M`7eKuyZh7Q#OTpu=>?Q80IAv{Np*wpdPL#IOrI(N)e zg*-3({P0gXrAE4fxuMfizk-(GZ6hv{h)~LaP+()x0V8#%#;mOE)~QrcJi}0qj5)2e z$t@1H$sG-w9IH(*&MQLOEgdn8_eHvY=^TsdRcpbP1Y5ma+Qmvau{)y!HtxwgYUfYu z@3{Z5AGm8j#0=xU3m?S)esJL*`A(^3?son>>g-kt0Z~(Az=w7fL^RwB@-#M8p2nq5 z$&lszEf_#9-7_M=mfr_CMe>q_TQ1|1-3l0F8avwBR_ZiWg>R!x{qNixA}?HjUg1g+ z?0|1{O@w~>h=hAYe~W)rctK2Yd%0h8{|Mjzz5M+p{2u_P?~qINeL`*d<@A0$VDZ!U zy%T4Jr}#8||12kS+5btp|F7}>w-8R^d*8tBe-Q5fIAQ+y9*N`L$3?j-q{>Jj5Jw7Z zGZ6k@H@4Ys%#QiBoKt2li6Q!r)VN_#VHf!U`dw>Bde$)=XLB;x8-EBReF&vN*D=7} zK-fW!5GnltJYh(fWZ!istYpH>lKjYO|6c89eDD0}yHmcKw_n~{C_;80SnXf0{e%cJ zMn-19c$Uy{uBHAeFtA+1`bR5K!`Z6HOEBRk5ySOXI-Vf!6|M9i$t+JGI-XPm0uGnH zfLuM$I1vVzMjonPw2l`Ai|7pm*|>sH27P1Vk)Io2@?cP%le!#I)WuBcFr&Z3PWBqR zGRv~ZS|8uAdDoZj+_;}y_By$wec<_-?VhaI(l)$&%g#+7`nMhX&Bj&TbnbAD*cu@` ztPu_4!enE`HFB7)5lxGr3fq(yM`1X_1-`_z$e;C#vxp6MMUpsL%|6x8X@_eCLT7$xL;VSy~uI7HnQPB%W zYIW?dSMc*=6EzXhzm)H@`@f6#SAU;9?@4^#r|P_=()b+s{X4ljzCQc@Dg6E?@pB2w ziTbzS!uP}Ud;0-%Q26$H%Foq*Pg7ETPxbdSh$+K(zohRAc>jm-bHI|_AbtNWFk_toFW`MANM{PM&46UDYSh6-G78YVtKuwS z9!T1u9nXS>BOyt*#eAq_w*-^K##gJunR(V9`G_oLNx73#91~%;G zzKTF?*%vHUUoe_Oy<>%j{6t^b?4Um_>zq}tr5owai5y}FRxf=@p*~Y0>w|nrsyc%b zB>rDckl8bbF1>znaA$f((q|Z+v3RTaVC=;cH{EFrOl!%wyB1tCKQTC`D^C7oHg$AP zFD<>n9c_+T(`|zT*WR*ajjwC=ba%2ZHE&^Glfjps*%k)5^i#Raqk6cDt~};5<&0;k zFhDLjB6IyjjAzHvNevMEq+wbMz;}x^iePMD95>Di&LE)*VZ^MJf#k*kwWJ(!zQDO6 zsV0y~+3TQ28H8VxY4)9nqiXf~`5l)iSAR!;Q*Ym-f`&MRMYeKe6 z-;db(B2u|(HUs*bx+U77SDCMjRq>RwgWb& z-=_2Uy+K?fiHSZTN%v0}`uH$UWoHJK6d0jaC7i8UID{g3r9xFUo>+iP3Xy2Wm9hsd zwkCw>Pek~M1Ceui4Z)Ulf{3_86(OPq^9#Jq5th*kSk4Nva^X6FLA^&RrMKzi_=)T{ zm-wrHoHe>*sp7zrj#&3_({$eSn4x88OaGSW`tUR@zwz5`3)YOx=?Fh?@;MT`kZGCQ zm$*OerZNaltmSXO_}Hgd?pGl>0oE>C0YMQNfQ1qjQwzW`4wbp(03H6_=hm^|+vM00 z5)q68Ot|Qa-qb!h56rJ8GVh+c4tD&)QRQ&NM~4{B$h zximTBzJ~s}$z$RFy0NHw8vkd;;*vWVrLhcO>DVMuNwpm4ztRwU_-eA(bt$8i`qJ)M z#>g%l$5j&_5K@SBFrD!zSHe{Pdl_Lmn#ry+NP`KsanOaB(p)7BfagX_A1E!f8q+0T zFK`^|BrFirRPY{5#u6Fbq&H~yoZjOs9ol@uk}d7a7q%PdTkSPXfg4vC!~l7#=3Fy) z_llEE&eo;9k!E-w5ZCFY{vqUgew*r_qY8Qq#A3mbx93?2Km;|fPE{Z;6Lp|;`naP#)F^kNYr(!=#6iA= zBSI_xJ8JW0xEDECG=OwGX4P^j>ZaP#g+kS3g+s^XFjAFUC~NaT&Wcdw0rcd-S>@^E zBvq*8a^k`vx$Yupm?rAFQx#)#aEwmRE;i8@^b@E2Ng6((GU1vqK#dg-O=-0o&r^pJ zFk~uPpe+p~`y>dR=A@0+<3Z#D`y`nY==={#4Ha}bUe3=sxUAi6G~V|3LEkCgSBlFz z!bXFmd(EBe{?piXAV&UV)3<5g)cQ_-(+=}H&gvl zqU*p93=QZL8}pc76>$+%MGgcdx~ZTbz7s&AT0zA&{J^=pB7st9z6Lv)l8A3zJfU{hrtu$$oAgKe)dG7WVOQ{&YTY=~n*j z&6}E1PaXaz@)pefkA8Ihtc5U^Yw1`-T+<6Auhm6I;KC8OymSP%Jab=d=)M|_c(wwy zfrG8_ibIFhV_e1Nl8ONnOzcz(&{fH{9)wqH0@=kD=bqDk@_ev%NeQ0Me%cO;Q(Btj ztpkT^7vK>`M%daU++w;md-*?bCGHRh=UPGwCtWoW#-j5$eaM73=A}+GR0$NyrF^A_ zexozbAW^2}%h@wyMn)B76w6Mqhys8>od=*J?ALH+rKnIMj3NI@Cy+K}ajUr`r~;rz zm6D%q*CBN!AT|vO@IJ>w>RDgZ-(_qX-hAJh11I&~og=x@Qk`(8K$>d@O((ieSa!Bw zmS~yTZq~+&h2Zo}oj%PM!({33byqF#ym5CjzUy9URe1w8o1pjReqQPl{oTuozEDel z#M(BLcizryWlqBn@&8V3`F$J!sq#f|BmntGi#+B?)hS2-oDDRH&)3U5A@ymDV^66N zpNwK7ya3@)gHavzPV12n1iFIn57oZ+FrkSGG~>%d=6C(*@9+uT4)srI=ZwjB`-{H)3 zHU5BuE;DErX9zjV;9BkxN4t7D>Dz9&3fv1OUozd< zBO7NHliBM_rkc{7UEMuX0^FPdD-Tn#M2KSTs1j~e6$2$o%CaFq*i)(oh0 zkd5%2)3Q!uTmP-T@T-x(HM?e9v*9s=Hs3euZ^|bO`yaT{HgD7V_OD!igU-|&?v41K zCu`bPb=l*dt8S~^|9HBve&6)gfS70^I(KKf#_`5kTROelRt5rvqsMpO3bJ1{@hid3 z|B}i+#{E+2Du<*wJ&H78S^5EbQhBgA-s6{$5926ylPaP9?eovF!U+e}2jdk3m8p(O z`sBI8%p&$lO$&aQg9w$jAdYGTA7s-%bKc4+VykwMu`i z%Cx^A=&6(=%7h3Scn=M4;mD*3A&gfQt6b8MRtDV;WsFHIX#^N=31Hqv$o#=s_S}iB zK96SJu4{CD@276KuJ!)b%Y&EYz0dE+&-(tgm$}>v4sTi+3Ln~am>(ZM{G**maj)|H z+x+jj0CyTNaN(dYg5MO(mwl|fFVwg$ZFIzC<9J0+Wn~&4)u4%}t&@#j)Lhg+8#)+` zFEMkGL5{HvJoyvcz@iVse;new33?gHt*&*O$-i~ZZH-v;GfsW<;g-dh+;gqnbIN1w zC*N_0x?5AVpY!Lx6u)X$ami(u4W*_PB)!Cw&+%_^T5c&Rbo{3Q(fT4 zMd_zLdxdvGb$$f%J|2~+C{@0U1%mCh=&z<8}1Ka{4z!)SCQglIm&79YaIQR7-Fs^a-SbUn~D ze}X%H$nEM||G-lZw0^V8Hf?S!+m;|Re|5I@nQfQP-mtE=f&cfvA-@`I?dh_$0gVKA zXyRwW-wFxDkET`>G+K`7@Cav3mmO4M&{|jSmX41SFkQhhp2lMwgFAUDyJ>*)Zvha0 z4|M|s$C%yg3wA>sBk!z+G973)=>XW*lF36MS+Ik?cG{a*JfomQdAynK-VzRy*He=v zQJ_Y&zJ!IQ$nc#?Hj`&}ymZ;p{pIcdeqi%Rzo0#-okgBt^Apk}aIW4BUk>_bFOiz9vstXjE?!J<_6qt;-6qCo3+84Pp7IWE*|2A)rYv z>Bx;8%c#$_wU_C+g{ac)mOLJvS zzT(v~jyDso14y3*Ao=9g$Sh#`3?vJPRuA~g)FLC9G_ctV_DrkM;%}+FN|t1olBC~T zJ4t>!dr>d{PhS`|rfaW%>f0WoA@PFE@_F+5EIjA?CSK)#LeKe5u8;d7SIxmL?gbPs zn3^uMv;dhVLO*gNagaLzrg1;!KDy}%-;D^n5Q779Qk)MS*9boyj-Dajn=<~~pBqI}l||G;Gqy~Yzx`Sg7o zt&Rs=o>y+(e^_tw+`h@;4d2$`STwYJ_+th!<@Nd21qTLNNH*7cd~w|E4!8U5n)x$U zt>60S)teKs;G36NZyegSG8rAaLyD)I6;4ro5(Lf>^y_R?pbplvSaC}RxuikDll)R}*F`E$ zH;B_i#VMjVMTbh97A>wbuHpu{YAt;V1xG#J0_g$4rXkzvftKUpJwyoYUy8!?HAGo% zBX1q9os^`Be&56|_%hvtz1%UbEU-8W#C5d@V3(!iX+{jU=2qBxB|J{8bn96eZwNm?{5|Bl&sRF70|PpVM@^9^G?tfrjxoX9+=8%o9I%S?&{0L4P!tQx1v;+jN9AT` zxl<&oYn>1j%c&S;xcA1ieE0&$z>NT4NZo3-`F zkwPi%^G%-_Xh9hrrTfQ&^L(u|&tiS!xQtLQ&tOiB^(nVqWCyu&SW{7-@{8;sn>^)4 zQQ1EUY03dcsP5@&$o)9w3-*VIuwA`>q#0j-xYpXRdtfZ%;B-cl!k-64DoyqCQe(&b6M(6ev{Va&c9sj)QIv!Qv8eVYgR3LttC1^PcikOw zXa~CW{#;Ai;C#^S{^AEps|yK>;A`P`x$nN>PQP*22bP7L-F<=>=uNHLvhC4mZbnbY zYu)<_$axmkQ&y^{0^BwZq6XA&su~czz+k7=DM7NXATAZZ$`M%c&R!*r0NTOkz^Wv! zVijRrU_&ZP#jnMZF{zMRuFGd`BdbrSt$kpvb#QUltd6i{?Wwhn?lpI9%k{OeR7q_}Yo>WS!rp#C@5)>gzHusT5xG+{*r zbcL7^;l2`u>{mhJq{Br}pLq3xz(JPJhoxFOSTdSQ9M(=^{N=ayeeF8A!j!|@kQQ@8 z+J@W^2eYj;7~=_LwzY;teYUM&szkv$^6Aqh`B0XRWGR&hXEOPlOT)EGA|Jf|5wA;g z?ew))*8?77Y1Q?!`_>fVX2I{d^MLQJ>+kI_->~mekLU6Q)7Nj!u34CmcF<|ohpxT+ z1jy?aYTHlHc}`M4gp^YWsyAItd#X(>Tj zkMSxU@;{Us~=j!JM<2t!z7xmI@>9mqkHw;>+igVt*U`cN7hoif;>tL8ne;m ziYD5FbB32)v!(0G9VIxw=T1xro%|m-D>nmbcp!pR4j0GlS}fa&7ohYoRM$x{s*_st zSg@(jSBjut2eH?nkI?~QLlX77Dh?Kq3L*4+#nK9=e+M!|R`@LpAus1 zErB(g%JCUxl|aPhmd;prUp&9G7&DPjQ|@*_xJwmj9NcQyu`6kw-(mKey4Rju+q__5 zDP{2PB$r+?x1~R7P4)LigxasJb9r1M3pchkY5h%B!fQ4Ay0%|FWQlezDa5k7?nRx! zV%}lyYN;9sNCL`c7XNbAvmYX}&?YBep+ngx7c9D|(s27=d&nJ}%tE8bO4VStpv&e& z8%?a+XbrJ$)Fc|7$5TcX?4~wGgPEoTylYPK7CUMPckRTlg<-7Kx=YHLfd;f`kYw5} zH_)1y!6rA*zVq&G90(*!t#lxE@WH`5mxvH1dFKM)O$b(z#X4Yd%lfgd4Qw9tu;~D? zrkeHZG2;m;4fu8IA6PGTUwZetd#(}JpIUF5Hgfqosxh9fty^?xYxmxrGe*cWwe>^k zV(&&gKkuS?y+HSSnEN0{M*uTZHK1lRh;*$wSj-{RI6+sv^S0EX%7U;`btN?ITD=fb zu;JAX*DC!)wXJQ~uRCUUdL@2h@**-)%525btcK*Hz*Q>BaRW_Bf(u|kJ|Fa-^4t1G zng`kV(2D|Zdxc$ZE5kpDG3 z4|=#?aOGGYVg|4h1*tNG!{Ewj)&tB=k^z`yh`x4`MaDgYSPp}ENbN$%7lc`{2*~BF zSH8A|>AP;RT%gL)3`z4*zb`-yfNpWL*j=FVpl?+M0R0RjeN=-LirtcCYj}qOK^rsE zSMg*SQgEkZRB*;Rz!bGZdridr+k8G1l zRjdfJoD)9%)q5B3>2zwe#|1JpbJe20)jL-AedqqA2d9U0x_brwBlCAIzxv>E@{{Wy z%gh>x2b}?*-kNWn-V|zfMp6sAuX#Q_Yoyhi4ERLjl|x;rR$pw1I?nHhJg5`2qysAV znF&0xa+FYxG)&q#PASSj z)Z$Rof*#d^6xpAw5~QfUq7Qg#SDfX)NY_z2J-#1fUEYWymqe{z?vN5m%(tgYWi;3c zOUgwTjVljH>2fCny8`E<7uJ)3dHog6MU|KrK%9b(a+XfDvnu+U!Ka8j#v;082Vj3y zti95FCnFB$nAPQNM#$)*qhiit6Klo5Nj-U($z)j1sbsyuodIk^mmV;cm73E@<-;8L zl&x*np#}fimG6G_)c(Ud{uD3F=v}(z+UyKb{IJvB7EO~t-_pM9$n2(8^6T)7Mg1+0 z_3e!17ajimmNlWM#cZ*(7B`ivyW>%j`@bX2i8X$nW{zaC&YB2Z4AV z*f22C$pbwbboVqcihf4H0)-G20ad9R*8*AvuS2U!$3PZ#B$1#oWHW$XdhX=ZDGoM${d|Gx0oW^2G+E>Zag)x zrrmWj**ma(P9ZL82l}+Z-tDuS+UFe_>GtXh1+BBC=hB|^yVe=Y<|p?z*#?)+OI{ns z_*e^_nzMAz_^GV_g@b^N1t`oN+Orj-vrwpt4)j2Qe9DSNNl7hcTrq~%mM>?{AQ)VB zQX891(h*khEyClY25Z=r)s7nBpHT~3p>@MxV}7i-?>9*fm+4U2z;SRe@7+z zNFO(9aIqW<0bWE1b~|0_qzlu^83~1qs|1pAK+%n0b9yYU03;~o5;*uVYVpr@w4K~HZCm0`i^eda+G9u z9oZZkDCV@LWN!LGmpzxJa@{`hrm&u#;dbif%*3cC_2Ki(Fq8f8{5^8p$Ed@sF=WTmtliwqHf4kkrdP?r zd`#+V1Y}98SSc`isaB-Y9<^Cp=?Z9pYq=nfb`^raxMH;hTUxsc^=Yj*G}yXRNt;IaJC_vl7*_=(h=l68ZW^uDnvC zJ*nk)%-+6IV<{|J-g`st)+==m@AH2k?Je$TQ=H_r2WKA-`nSyYx&i^4c0fyd7WCTv zJ@ZqxAM9A-Zd$tM7{6Ad_u95d-t`M|^k_YOaUoED;@j^Bdz&TZs1vWn_j zD;MXW50+@5rx{>dAtcT-j!kOXNT!xeumi1N>ErQJUcD{cmGZ`;aT|ZhhxSBU3mMV8 z++@z+-@S=1k~{cc(ix3oE|8$ZgPqeH{#^s>oREi^+dQw++l zf=IWlb5w{MW41)z_bSI-eInb5n_OWs8#N^6Z|k;ew_5bE-i-srzD2{CyiU7WNB9Q~ zPF`bk=H>)SvHspfUq@+!FJ%t}Vmy&>%jlfE$^V$sQ9U5_vggM%Qila~Hw_?N4JS3` zxiUk5EcZeE&39b>MHgS3vy)%3UXG~=ALG+>kDgJuqed+nvkkzRKpRuP7MnUo2_FbH z`HC1Qu%3Y$Y9&x0B`)xUgc7!(mulw_W|r<@zRzTeDQwF9*7>LYs*uSjr}fKC=&TVB zP+%wNXSWqQlBINy5y_FQlJA6W1eE(V1fT1U)Ek4xZn#xHykK`?@uo-g%a1M86?cY* zk1f^)gT-N@CGiX2Nwm+MdrvG*uCF~EarYc0Gi#4~JYnw$$j~*>%wJDs7~sCi>i*<4 z7U0mnkV|kS`e%s0Vtuw~HnNPm?FLP30wNK?v@ZqIvhGzz%I~Vv3v-&%Kx#rPi7iXrOLHft&)udCk zTEGjPHBsX4!ZkF(SUW5JK(Q!68C0!EnrsDY$zEt&PME3*0*Y)|EHJ+Nf~q#-x%Xd5 z5T8buG=(u;pqicKu1SiH+kXpQGsSp9K^*pS6Ozo^PB#T_u|s4FIkd;{J+opX90`X@6CHO!dh7YwEs= zD*GxnXpB3}D!oqLK>={gATK1(_Fuby*zW0@w0rJf>U!g1 zd*{NgO}KTip5|_H9W;iNkO;G|TXDFe(zB{`ks_S`1_Hy=AeUH{60O=swt@PpSj)jq|k&j=s) zeW@ncRK!V=&x*-s1jZO`XUZ03QwJs;4?f(~J_ce^Z+HJ3TdNjm6qYx&NdfZ1Iu72A z2ZtNa3is5FYjG)INt4;-_BHNVC^*)5ysY5ZJayOBcPw4j@}6CCVjk|-%g7p6Eu!q% z(_{(Tu|u0!pR9Lc8vg>7Q-*rz^fXOlN0XNIm6jdFss}c#8H>@zTC{18HCqlbHzHC% zKb|`y!BRm`0rOL`A1{}aLL}2JM>1{Wtk>Ux4kHw{(ASMi8ZuX`ZTtnR3S19`Vaz(5 zV>+`Z-31XDzoQb0f>?5C)~$--@x!9;mJ1|V5UQwG3M{ZrPm_|0E3l-J@SfKB9V5K3 z_2%I26HlJ-B{y|$-K_QX2l@qbwyiJaTQoEth&gO6X5IGK@T@kI$u@FxEx`YLZ)tjS zpWS!h220Q4W{+mhy$OfaUJNnWE}!@fV)p_&{6|@L&{!1vp{jZbtXS)H>4D%kNzWcF z{)lP|NcW}Wrd`G8d+^)|r6E5dH{@H#wbb<-)g|<->da_0pkodp5c+u%KBubEnvg5} zEY?I)wY;eL7L}aq5)+wJ$Or-==$N9CT;8(yu2nm;C$h&P$Ab3$!DTa&I}VV}=IKeF z{_>dvVsNbIn*H-$d+o&a3l2zVx=qU-Ds%HkoG$x)638xnuQ z2J|9ICe*R}8Vm4{-r6WbW*f#Qp=VU-Yt<66Ky4HqDO*AeMnkoP9FPLCVG2m&ksM8; zoO#qrRrVEmLo+wOz;xA#Z=C2`vVC9`-Be_u!!>hy?!vpmM{B=dGkqiwmvD7L6D6{r zjt^@ZwG8X3EaX8m5=jTDY8oFsSC(}khdNL~|3xNPpa-feJc6p4?5{3$zwr(J2mkfO zO~S{RJcaA%{X!&B=fB0{)+^;s%64}AR2{((Kzc9*T{aaEsEHlC(3t5gD2-_!LL5<5 zP6fnm8CRNL>nE}kw47tSZt+mf7|Kan5xF_k6ky0f5|jv_=y{C1t>F_6^3pWZM{Zj3dXaJCvxUW}IJLh-Q?>BR;-2S=^0QF}MBMYZR@u-Ko$Tam} zZ7i%}V^xw~7H6xZjgWW@^+EXs-H$A{d1)~=^85|C*omZdbgu!Fz zQ*t$=+yYCtE19)mYq4X|mLl=4S+e1p;8tCB`JF3vT@@MFHzMSxwXZ+5x_9uwRlP&} zY*&Az?Ydxe_R%Zm?7OUR#lDqxo7g*$4$?KYneN#~aL>LX^}32GQ_c-1ga?T~rPX9J z0~ERnA8D*{(O8%nSI4-8GBE;4NY>iS)(L{9z?H5Ab<)}exqKoYma5~@(=h!u#Re3m z>DMw#N9Bvc#FO{vre;>(L21fgBL>OhyYQ>}e6#$@0sc+S4O*N>jBlAQ4EDF)#S7Lf z>+p7c>3F*v&wS5!X zb_H%5WAv#eWg{23Pf59$FQ=8|El9)>-Sl7R<(_G>JN&VDvZXCwK%Pyga8!XUr5gFT08N$X*`LMd>2> znh>Gq9Ap}>=VOeMdb|Tr35L10Amnoigc{8lp(`bNx-+^GL#izG*6S<(ff!fZdH#^q ze&L_&t>0~q3>T)~zQ2F#3IFlECokOlpXn}p>y7gc&P1Jbmj4P}pIN}# zmhF1%PYqJtl!dZ&jv4rhergAfq_V4ks4m_Dcv_Ggq!U)v$HC9nXN}ov94X`D8DqB6 z(TH=UDZA)2x#=`{VVXSSV2d4>L9XceZI&R-=m8$Z2HsI4Fph&aV=+hRBu3y`rLPXhEBgv)_gx)ps~R&YUpYt_e*smD>#r0Bm{$Yf)) z2H=CLw~$)-VHy&*Q||!bp9_Y3d49Ka4lX~zPQY2j7!;b^ovmNtZxKY%S_oV9HLr9k z-XI@{-Ga^}1~nbNKo|;$$;3ZTc*qTO581h9j^WGeq+E&2Az@|xiDlv_o9LtZpw@x_ zVNA&f!NG&K9J|@GVNEXL?)CeP4o8e1zVMYDdrkVA^|~nAr?3X#T#9hton-q!?HPbP zRUC%1)iB&WQbgCA9Z>Y-1-#m5-~if2y@YH>*z%CG_=Ui*J(VX+!khwzSvjX*RBE zv{*iSx3EWOtKBT0V1(0By*7vMpdQ|KuH2j-OW}S6)@qN`WkmhBR)s?gRC-W?rHHpO z$O*wwHF*$`Ht4K0r9rEtfQPyj;_y|$6oemnSoKUA*sxeEJ~KoHb*w}}PSH^xmF01? z)5J9L3LmE4=LfiI z5*>Oh;zjS$a|STa>>6+z%K|{4#mrC~UykL+1op}*f+8O?m^mNyOQ|1PiGjo919I|; zKZ1*)9EQaKOT^$DHHnTSp7eGH_V1RHjxsWZv6G!avr4EWc$U*a$*1}&55`;@{e_#8 znHz&|whg5oZxiR`l27pA({ZcG+-nUsmyR{Ny*IQbQ!VAZ%Vx;i$vqhD$D@&kN0AQ*$lc+alFj(huo*?Z2o$Lp^l!|8;`p%#33nxwUidf<3XN8y_(&JGMaIy)!g?Y>_S$ zEY2YY61m{|F(g=mX>v{NQwc}+Q8J_UR8WKj3(pNueX)x#a51Vec5t|8sCN^WD!Ew9 zCrwXJE)7Q}=P_o>X_hh8Nopevuws6y6v}zWs9A7W!4%Z7e3861;*L=r=WnYQQn8+H zxoaHdd{j7+rujc3Z{0>}m2fWTzi(M)Ye3$-n5U^`mJ z>wV<{Vqy!-w2(2e83dA<^*4LL{)cOozHThv9@Ur?`(Mylrr7_Y5xecFbeuBxm>lt+ z3kkiHm!RT&{+lLSkm z4iZ2t1V~@w1@Iork%9tIq6ltE)Ib$#@+dYL!xUG=;p6nzV)WM{@N3cWN!FSYTmZ0A zF9!rv8Msb~HB{-x@XAZIHjf5+JX6=&7CH3bjm9#$T;r0ILlBiv5~I;vr3p)bLX*=_ z^+}i-%UA3?c~a(23hYm|#8*y=@YA{SO8%?|GQqO1G&S$xos{?RDJ4H2SBe8YG8`3a zNcexvc|cH43EaF-AV&g({YyEI)Z~oERVSuoJ1)G7v5ihDj}K9sFu~=yEes8J)S}l= zGq8=}Vn8!N$PR~E$Y%sg2&&{rxf4%3z=r4oj0jGe)ey7_x%;pvg}QU)HV0K&Wj#Z= zC@GmX2&F?UaBoi$AV6{YOW2v#%xE0eEPZ6t{G9IgohEl~Xy3fSOPa0x9foM}8t=gD zt=oUqI;+Xq+tjr<`O>=QuW5mp4L_i|p_fID%2AbGaBI*XXQYDW|6$!ACkiG-6#txFkX7w}TQA_DG)Xo5zbS`{ zM=FIWi(ZLc)-`rt!yb5Ts`{?|ev*D*xxc$GmmP(kYP%ffgPDQikg$}zE_?E0PU*a3 z__!7Z{MFE;>X$l70wO|SLkP>^4M3@k6aE?Xz*SKZqd|CErQcAAH%JdQhu0TmT7hA2 z)#2+{o2#H8%3L(Vorbb6sX|oJ7i7)s&6wgQ>nhi8kA*SEZ#?nj3CGCgt2S)9|I+U1 zkmkN{-{ZxwBY=89h0+FP zlg-d$q=QF{`=Q=^5^RyA4}6Lafa=fnw!S$l7pAu#GT7lobL;$>&F^&1ZxRPGtuvc^ zhJGT<-ZLxfIJhm59oauSD|$Ls^<_U$S}{L7y_lIc((Rei$!b8S2{yV1bzCdg3A}$$ z0aOkaD;fIeZG~zig9tcbs@_6{Y6e^7Gf86>IW0)J3kzBW^V!iRL2t;ikU$>0HK?W1 zF5w{;q^W=E+~48Uhow%N5KO&&yc`xsbzu(jJt1*47y{@*`cVWv8qL5Jb|0R~qbHWgzS1)n+bkW@J z9JSc)SUYt{)iEp|_ngYs8*(IZ-)fi7hQ7cRlS&84}T5+{Vdbv|7zLhYsn%4m~?0^C!Vpr0AoXT~VjOC#c~ z%?CTg=9K!inz4!p5+0dJ>Thy4jnt+rMG1g4fU`*8MR?*MTn}D#cs0TmPM;_jp>Gp- zP2x2TSAiQfi7u&ZUc^QW)`=5|CX(sgr2jD%LO_fOF{2Y0kKsQxG99%~l!^%YAAkGl z_EnaZ;!4X(Zyl)a-g{=Z7`%%ti^N6dMc?UN(z{#1t6SJUw<)!oel#&b47J~ryC%La zHfuinv)e_T=Cc>rT;EyyJ+GsmXEdLkxQyfA=f`h{>u>S(X8i79_T696?=HjdewzC` z;BC@Weg~ibW9`5ABL3~_&pG%@+yfKGL_Pf%kfI4mPaGuoPJEqezZBpSzy<>TI`$8i zO$%qn2v!ku%n>5JtDGyRucUwb=k#~K$)0-_-0`ztVbAhCI-bw7&%cY$`#Jn+9@f=+ z^mqR0uehJBem~P|j@PC`EcQ1O2J$NXT|L*vVL^9sOpCuKGe{GtQ8l1(rc?d|>vqtS z8+|K%1CG}m_wU`ilI149%|A>!`CrgyY2&IKq(21q=Txt!h=3l9sUNR&tm1#M62|&S z?LSCOnxlhkj?TXdqrLVHkOk2bf$Srfg2X3&N*Lzi&*(TdqYP$qj7tKro6K0lt>XBC zw71G~tB`g^?$zEv?gir`n_E`3On>DSI-df0lm9Tkmi}!Y)V~9xGW-XBRw{cZKxr)a z$p-@D%|nOa88iIDJjefnK4XQ;2}yiL=fvY=9{&oQikzx?zL9sV%5*1(h9iV2G-ZCA zuXB^jj|pu)kgITh`uL}}3-SN@Kd58)v-}ZZ3IDnze?cXG;r-G+=JkMJh;o!XZq{PHf~SfFz9L3cEsAzCkMmQ~J%Pn`QV zP6iQ&1~08BVJ+WtZVL;0iU2|EqL#jMoO?l|ulM$mm!SG?O0ORrpFC3_nWAfu$LLx=tt4aBT= z-68snditR6(r5H=hoxuK0aKhiU-1~vs_CGHs_%VWsn3Gq8Jz>!V*$U{ptnM;5?rhF z^`u%Qt${IJkr#mUM`pcZBf%9*|UFZQMkJNtYC;#bRwd*)+%UX!q&>4Eq6ZD=U z=LQKnAYx=Rxq*R(I^3f1Yy*4RgXiv70B;ce#49D_o;>#rc9@!^P@~a{m0;Yc!R(Z( zCm8~z%iXYCS-2T-C&ADICyJVNiIM;`IxocvgRK#=?D$eXwy5@}z|lp=7x8N~rcldp zhucy+M)uEbvLCweEZJ21IF%nA3n`#pTF9_n%0h8!SB?}rd75=Ab0YeqvR(mTi$nWE{f^ zWVL)t2hdv~0X4m)U931Euq(~dlu4=>%<=@O8G!!G1VNn^d8uA7ha$cPWO zc6a)mHk_NZtrnt>jbm6r$8em!$#4f*rDY{)L>y3HD+?E7T;!Mv3|Z2RwsKl5H;=P{ z&;?}|)6KY`lvijJ#{v#Wc2R>g38fWQs46e(9ZbzYt`qDj87?FxBkqE0hp-~eolEm^3m?m$x}|GrXTriSJHBLEZsu%Xm>zpNLAXg9YV9os?AC{mTpnsI6$3Ua zxvut*rH87jnZ38&K*zd~xJf&%!zGAn#be(YvUF*n1OxJScGY5(0;e{NnR?&TB4Z_8 zBFHsHjeKQ|=v~G0kIX$zmh_QfdY{7+)A%C2kBeKxK_kBl)`A<67$DK(nS6#adaR0p z3epHWQ^F%BRr*SGd??e5`glY4vRv3C+;sd#rixz<@N0Fk=0euzbX@ov-y^GH`aDf^ zj%U&53398YXa&_D(8L-vB9@W@qNL2MTP%CVVHq-2VPqjjqP$`&Fd(W|Ah2hGnuS?| zl~^Ks=p#mqLd@AdvUlFAfiEoTjfUxpWKWtYWT|`faOcQiv*C~}J@>ZR8T%o&CaGD= zKgYkt#kkE14=Tu!o*Y#V(hqrDVC_){Tkf^Vzx`t=@yq~EiB~555D>kl4tGhP+sWgS zgrfLVX;51lBqez01U5L>G=N5Wx97NzH)+g9hpB0g-f7p{YS;B0kCS69V!qgsHM;CO zcI?w8%|X#;ZtgdDqOsY;c>0x|rENj4!5QPE-eQhFMdfbb9NfK%R+6~G5ONpf??m@h zEI{<2tSwYrlfuYUNm)@z*|234>X(&ffO=1i7JOITIB=|s60E&K0msPSY%;Yv3yLLN zS^&Wn5~W^J-FAz1>4je(AshO0N0)IEy*$76iWM$jjcT{=W{Z67{u4c{SKxBeoUHG&n zw}cx@x^p}-q*FaCJvew{yx-`~#pZtQ#OF59KYsZwx}~*q{@Z&s7Exf&mDj6HN~do67=#Qy@#DEve||SM%-v4 zI_6~)gHLxr&7Vn%6(D&X%!{i&Ji2|FQ_pX^L$j>*Q~yJ~)WdD+;MeZD)a9xjJM_nF zvz=i$FPC(;liqokgd-fLcl1fePZIHh1N4rm$s0T&Qu9Ey!CeV?gS!-%r%J$%AmUub z7j`%+c3q!pt4plxE-h?zJ!tE~AYUS51-j);e5~{S8!x*}vy7~R6R2leF4^7WvhZt# zNNZ2tZ?`@Cf$h65bvwv)zoxtXkD#O7El^2GIOD|M@sFY1_%Mel78f?ym)!tI;i>0P zZI-W|l8em1=Be1z?_pu}hh(MA&^Rp69W(y2{U=}JFlsGxf&lr43aIiWs2x+=?Bqr1 zlSUgpJ*bD%$;RuoLxfr}%N#+c(_jx>#fp!#aMj4@`8N21O|}DM!-tY}5=K zmF{~lB2Q3jnC^JCNWpwz75g!XQ=n|3vh!kbv{we+tOzkSpF|0f(?zG3i=*iw!|F?( zy8H$$J!FI)=R=~#9qJ9t(#2hopgF3|^6P{h3;dxAf5VqTrnabQncZqL9wLHZ5G~Pm zOZZ!ojdUxW&op2A~ z950(2qP)T}2O&L>?kl?-RZBF6Wt_eUM8cBFXzA+JP{*d&JH$5(nT_}9?bmB#j_&@2 z!>tos;6Ly2gf%6{Lk__e?(xrhR7>p#VfXxq`&2hILTthzan~J9Z86g_(QG#!@@%z) zzQuIGK|0Sjpf2D@FJlb=Dbpo$U0;}bc*bC1Md7mJyYGII?A0!L{25=zP)=VPBEKO0 z`1_!1AH(0D$8wMri}7p&o2cZ8((_IPhGCt^(*?xdC4uJUdF6wvC2YED* z^3x{?Z0f)A!XNx3@m=~Td@}d=Gcz|kYPCb;P5KBE7w9-XN1ww%cjQqyssOdT<|2BX zwnlDW35HR&AY9(}uqNnZ=YGK45Sa>?0-aKG9I9McFg|CbQuEc57h%r6x~@Y z8AsQhE=5+)xU4&6*3LWLKb&aSb{y}}#CkWBW~R3+n|X_A{_**yo!jOuZ|<3y7u_MU ztoG|n;QQbAlxDPTx~!MJt(5M}CYii^bPnI3@``dNr1(N4T4c5r^@}ysQD&hKs%hei zlYCOibwb2hPc zupBU}*-QweyJu_yfs1aEmk`1WTyCPoA%xrnhdB3L;E@nM27CN|=l84b>5&b8JwCY9 z-J_-J)cKwDd%h<$IhSGYltnmq@Xb3kr>2djttZ8LKmo@ua%znrj@pz&jsZqJnXQ;V zH>Kk8J2`O=-5;=GaDy{zSdv9;Kt)`%uePBG`kc{f8HM&C;i zzt`EG?0yGXlIW3H4wk+mu_Mp*TfWiDG_(CJe%rTFBU4tOL+A^A4P{^Og-8Ylu@TDk zn2h+nE&`(yR9a;?;cGJzc|LzVp%dx&KskVHpO!+xM@j=bAT*N9JM+O7CH)QG6znd1 zN%-#<=u2+>U!6R0>lfs!B8fdgU!w&)1Lq|(a8MFfkkL2bnE`SfIjP_3X{1@S;2N)J zUCgVOFI~Ef?iKxc#)Ollr@Ih@#((_uC!Nq=hi3xl zG{Ju24d$@f+QeF|d~~P~@2l+_wgwu4Fc1ul+C0H(GPgkTzg2X(h-BzMncylx zl(d{kie@NrYl0H9R%Drp!y=;12oY!mk6DN!#Eo%Zgg3k_(ePT#eE~BIRvSi=J7EwG zh2>2RkEeHOk-G&bce@lo1-XZ2J3Vu_UFPEFpICiZ6|UVj<$1tsXASF`KdUyzwtkQv z_UY=miNk}mcJ1Q}OXk9CzaV*rH*2i>YCl)+e$ACiS`x|mYAQwU??!a_0P`bscO~jm zA_HX{-JcsK2~3JEqr46IElyCl(d}{yvI0SUZL^4PaKlzqD==3Lv^Z!2P!L5%jCc(DDVv$If=< z{lra=!4BsQJa#tUA@~I;eL!w>=Z97*C*RY!ajoAOOXSws`rdxq#Dd4{cAK}pJ9~7n zk1q@)M`)WaTIwss?aTWnZXF1)tMTk$cI0qWH`MRFO=s{r+?ns~9TWQW-r=N>C$c+F znIxBx?26O~Y}#yc!{XBFAT{!w$H?6$b# zi#3B%`K7J*{FakL!9Yu`hlMfJhDz-u zF+ukg;a%hL#ur%NM^~F6GAiBl@GUz=wD|473CkO+T}(@F8ZDZkatDuW{tIb-WT9r+ z)bv?DaPzUd9q$PgG8bG8X(CZspnp-jA?H(mHr)T#&3CQr>mRP?lBLIJH*boh=Le8X zU~lgykxX*b$Hmylj6@-TOd{w-M8IV833MtwZk3?L3$evrtD6QQo`gY*#1kjtF_3u% zIZ?bIWa5+vSWjrl#-+Fcvl=xW{L3n{+Y`YjQy#?aBnt0iYRk2Hk%XSbB=jON9kWdW z*=vm>LA++OvkkmN7CkVZbZ4Tb@!wxRcER~nATPukZf#01dxJSH8>>%h*BQqA!l^y? zF?*t;DW}4|eEFrrOO+|1Kh>8SDw%?w)oj)fO3pMiiW|?*0`8}UE?Fci50#*5D8C_A zI;kMIyH;57`ewl;F(Dxp&`YlxUT%6tP*)ugpqnuwr5It|st_qvFcz<4*Q{JCyM03Y z0r4Lrkz5ncPpV_}vOBB8KL@n?gE}0MH z<6J5qEYQrY&mCOI+`MiY>f#T&LS&Hmo zq$GcarDH{V#9Sz0_G+qyX;+~F(84#pckowUHx z^Y8i6i_ibHMKzcUZT-=KXHM?5glXpH$A*WOryU+`BmVqP+>T?xTG;#(TuXb9GBLl0 zo`IbjqS{uxJV8N7m`pf)vyt#kzO9+CSy^wwRlla3-;lDr6>gg_Fv^1l><56H6N)7U zIFP?LIT2m|+|k@z(y7#~8?Juz$T`Mx;2)nJq@#az_wccY&X)ErpE>sLwEH#^>w>-h z82U~L>ay5-hmk`+1icQM%#Y5Q1HNMtisCT;?;-R5mhN|KdLSwYk*ENGbvh+ENfv%X zrh#!KWMh!W_v7hKMG%{MSjt5Xok8T?mEjuRvV)`E$1;qfZW0y(YFT7lBLXOo*!MEt29<;M-!7N zo5C*EgpkkwCA#-X>JwDE0ncN29ObDfBy7p~e7@~$Ujj1L-sjt-(=ZS31kEdui3gS71V{xXKa4>xrZwvh7#^tGncvqYn?|9TC>C z?qCx5SDPek3mX)A%Y)B8b5wGLc2_EUi_y1j`vx9eo%U8|=WGLq2gaGBi)Z%FRfCRu z?$NOc^vmsfZ6ZHeH%7eaoW*x=&R}K~j6df#%9(SOV-Gb4(f?+#%{hrKk0AL*s62I> z$nK8p42Ea|IBqlTwP=xsr9s0A(AV6|5`ktpsIYEwQSIfs`@Q(qS=Nj@Y4g#@D_p%>Xyg9qo7uW#BTltPOmCc2ry zP@5!?M-m5@n=T>`VJG_vPUPiRTUKOTEmzT-4H+wkm3geZcl8r1Bj8B7`wCmsAaZCM z3d(2)y>#&{HS7;+MSMsrT@nq77mKP!;IrulMgv6NY=xA@mNe?aG!OnzU z^qlvUllFKqaJ$iMlLsc|ruQ%3-&dUxBB7E)n>sLWw9|(_Wwovw-C_SH!$&6P@2alu z%Y?IjA*Ksu$T?j{=k#WzM;YonR67g~D_($n20JVP({DP6oE*eq5%&cyUYw8q@7*p- z;A+dpzJdH!7t4iAZj(a}%Ss$p2Z1j-EcAObU5BOTthR01p&btEU4BIB-{Me(g5P8$ zu5cWyZP>(%^X)j4GG2eO@tica={p^kB%SSU_k?6tgYFqcUO&bZ0 zY+dIH>IDmyZEg$=ZnFF<5=StS68dmO26@yd+;t8%q6sK)Z$|i5Ftx*z>ZHJFPs$GD zunkDdrE&p%j>C20HeGjIK3_KZ40@T8UT0M7P+`D%*<7B#bNL)!@~tbY2luZ>>M5ar zHZr<8K1TDG?tkX!5NC{81eqf4)mCrVH9oL=WZzT!XM+j3t)3ps_!0(JIWRc5*uhpD z#Wks$#au@xdIxc<)~1HsyM}{KQzz(x_A5vQ> zD}a5ErOefCmeLD-M~6s!z|7IluK$VZ#QKW*Ky}ftxvUOSZ|{HUOa46lovopQ@8E%~ z^M-)WV$>}VZv5NPrGad7o*JNLs9%fs05N0&ynGdTdC#B(*^x~TPSQ3D@cOxb4f zb~PB7LQ$n3-QW~H3LCL0KT3G}37zs3*BU`Ta*}sWT-FpNv5}^%=r@+gaVm8VR%;F- zQE26>s;!uxM5I%Ei$^Z4*>7ljB7-2L5x!MGp;xnHXu)|vkyp!(Es=*O@*L!08_Bp~ zgR=UaWO>5NYE>kf#qP3dXr}SJTx{n8H$0b7z_jSm?g0W)D{(wrCil?2$)LRFwWRTb z*2t}gi+5a(jh|X>tW+bq3B#$m(v&0S)7NjFFDwU=`%Z2B(44cIT?vQR9e0@QX$QUd z^q*RU<^IQ?PChg_Gv_ak5Bm>!T=AKs+4J#95P{sJyB zw-Gq9K8K#82R+Ar>hHuz&EJXC;tC*M$4f&uQ>0>#LBVB=lct*u9JzUjVp92L4Rn(c zlLHR-jl=nl?=a+B1Kr-_$4Ch}jLcjJ$k_B4B}r`#VqRK z4VzN6#f1+$rW2rADPXF%JArn+j3OE?+gBsS*|rqOd$6;`i5`T5U5ENkleaxsKtgNs zb2_hfSxWsLvzM(+_l-#=onL(D`2GH;Vk6~|!@5yvu&A@I+hk^4(BB_SXN=5ujYfMs z;WTCHd7XZ1^TB7%9-N%5j~0jbkJ9}nRdi_m4!_dnkNR`*bRNZtUqteM7R!H%`qR$# zAoK)E5bo3ptx@z4kQ5tfMG5)j272eoHyd2b1>SkOQ!0W2?gTCsbpmN&b3zn6DH;(s zy%As?imoA@L1$%x6poq(zLjp^G;M|^AsWLQ5JV{#;uHgp03(7|#n;?4X;b+@W_~ayH0{13fp@Wo;{Em{l-UyrTKK^vVW;sUX1en zf+L%#`8{F5zm>I^!%y>^R6Pg6#_KCltI!oWYSJ{?IPZ(Cb+=jvntjIpNw$Zf* zO09s!5^Apx9{{|Zp1kf5?LftYGGd=@hXFlfw}NSXrw@nDLx)r0@8q#;J|bjC8d`y@zUN z@iOHCgpB}sj|xz%gM=k6wiePIu|QcD$XCQQ6Fr_Bnh6$Aq$DJG8yZIzbFTRf$PpGn z%OFX{%o0gR_#6Ny*`yea1ur+s8k+fS$1alRZ+mtR3)4X;HTDMs^4`4IB6;}WV}}F5 zWSKRu(^`3>GWMu>Z)zl#)ESxQw|;u3Wy&&B_|W=dVg9DcMP~BUZTC(4<2A=AMIm7r zz5Br9cBxi@Y_BJt&}d$epJ}W<`O?tP!R@-r*N`3sVSfeT&Y3A)PvH_4#_UZ^g9gZAT5T6bZdAlHLP^3pRqo7 z%gP1U6C^Io^e;^A8fLyby?d%Zb$}_oBV*o?rI8`|)+fR>pIJVbNsoB61K-9%i|tLN0HSXzJ$UN{ zqfEB6x_rKA7dCxjqLaXnLF_O?`qv=_6}9&1E)^?aU9@^kKD43HIzeUO+D5N?9)Js} ztVZ8aSzt)rp|SxGK4T=+L=RBOgmH*V48S&JSI`KeCLSm%FXb)Kyl4k4%z?E>W8>*` zbU~3>UstcL6-G{e@cxL~Huc%1e|b1%6-HHRTJ^ws?0h|*$%U^mg}zyLrf>GJ^tQgm zZ;YGFjVujk{C&u0SJ4@-0E0U2>$s4p@)FEAy%`Ot@>*Q*qMKFhpu5Q+Ft>F)agp^Z z@W%P3Am9bxUapzwNuq18kKW1~UglK>R}hL@O)uY$rgLBy6Gh^ESss}{XsnlE+m{R6 zvlZvgQ67Gr-;qIgNLG;>hT1W#8ZK>T(RgKKcMGwkx>Q}BID2Q`lTXj?Nj^HbKdSea z%AP&v`Vuv>EToyL2^GP0zdlpSFzSI>t>fVE>AL69^~2wMAUFN&z02X$uwS=47*4Lz z-h|C2kA$)btJCJzrNsK+$C3PWB>Ta5Sv``VTtY~trDhF~N=p@F!!UKNC*u*1_n&u1 zm1HnXrNR!l*d`U>Reelr)A zXwYrsL`6V{r9>2=gv-Xg4?0uA$O2C=>=J`lo!N%rdw>35*CPfx z9+AJ=3?Ppf0OoL>+feZkXK`?a&x7!J8(nw!$Ts>pyiy_CF9-6sU=Yx(Xk13&bR$Qw0cgFC`0F6NgJK9^9AKG^(d+X(? z-+%f;qYGa+T%Hpmm8sOhd4rvPd+Q4yy;pv4ZaE9i|v;lYmq;;;aut-=#ADjjl_dx@Z~e(;yKkT7JDYsRkP={ED#4Y|yW zlyZ{W7@LeC9UaHl3Anb=k9r_i=rhpH@oICdN_|--H^;`tCnmcU=y!aA1zyfW>8ptS zWV^3AQYD3t;nCfok*Rs~IN~!4@TnVRcAgNtLIJl%Pt>^z%S7|IKUYRp#_$T|^{4vh zcSFmHo54|IhwjeX*-ua=APOsq7NM+2Y99hkp6j-%ck(}ZbdZi_BqUImNB-fJ{pF&< z@a25KxHo+9_9y?zrm$PW`n%*G98Z;{rbhzt&s`|(^4zIRMaRqrv(*{-rJj)}c#SJ( zzAwnIi%;iEkIoxRI`-)B@&1)>aXM=_#8>U+UH2tpe_xiT{4?tCBx> z`jU>bs%uWGcgTlz=Oo5?f0r5u?qsf0<86R$_@Z0`87LC>Z03{rU0yU-6EGPe`X{JU zB5S@mNZt(+O;M3|l6*4`?!DvwRc-}Yw>JspOd~=6)OZxpGzU=*&N+P1j8G2tgFkTN zWuI|)FfCP)RH%^a9|MLKIA1E8kvRRf!UB~(pwVT4ry7EQ#?CT2jszs{d?d1|eKCHXlt-dOb3moM%1CeS<1L%gaLQ#ogx|R{gp} z%P-B;nZDeh!jjL{RgP?GEMij}m={u!$nI#y&e6N+N`TqTRGm7`VfUB=X4@;Gv13wBO}%2M03t znA4N>xxIRgGwJme@a}JPu_JwQQVEEw@g2BG`2Y+~OU*(XYf~AJa7de!;=LvDy>+?; z9DqePjie52B+;XIZz<6ff8giu>sA`<96-(;nKxjERZEotKrFBi(Hlw?VIhJYLq=Fs zDB)b7CSD%)h*Cg_O2S8ia8dF|WIdP`05M_=Bbm@ZLAHhN7IGk*u)lC=lugJ;ST z{hGvVe}I!FZr^%ycu!UcmAxiek=9-K(DKaL53rw#sq|AC6|eOgzvotb4G-K zCMF=6X}8{FIQr96lB%K@8~A-wWaoof5Ua>-GtNiMHYmN+FgBr#1+rl)D+zoNB!_Hw zt}CkzKb1p2GLRn`1krTkeYzOIsFitAMbHU<4(UXs3s*3wkhfA&{v!5PZ0FQ$msZR{ zkrN4HNdUKq+fq?n24*;Ya`5cfp@)W#tV~L^jMKhnO``B57mHI>t(q~pT&Asm<@1eX zUuOB{an@3s>5nh%8ab8=_>BW{jn#RpDL9l47IU7#qD-cD+TE$EI?r$_gIvrl^)$qx zb|kM?k-VS={}qDb5bNvBps*Pwuc92z=d?nzQs~Gto2Q$DK$#5HS)O$Elt^F=@(#+2 zr0nh?W%tsy;tfG>51^gFDAtsgHihvD8)~y91448{79uNDa7mDFW|1JHL12+WhN-13 zAdyl^4%(s36yMD30Dp+ zPCGd{qX1JttiM_vzWM&o*J`_ewK6fA7|0pMv0qSZy-B}@WE`eGPc=<~2swl0iJg!k zg4Iw;bj>C0QA4ZHF-%f|YtRuHb|$KHztHsdr}@kqP3|g%f>zQ{rn|4mt^_gql)Adn zXEVg(?Fq1$U{i+TDtiY5L5r;|k$(Bz@QrjaQsg9S^aqbVCm%4~vod$AZ>6voLpw%k48}EA1> zm0#FQk~8a1V(e!a&TK|##;yTs2!zFjVn|pWOD=SjF~q@WHaJT7O&->)=xU#U(KfiV zjCtqU3P^%r?xSsY_%W=}(2^t}kg*wXPgyI1jU*7|w5VA1T|3I%Ot|X}&A}oOpN0O_ zVr=03cP<=DuO;S(rrklK(H<)yjT>2`UpO>&f=&(XB!2Po4kUw|~<%}-m531CkiQAM!2?0!YGer7i+PqPQJc5?Ib35=mw-{~I zfU~V*@?vF6S2CcGv99rhewvcJQxe1@w{7!c7E($r^MFtA8#ZKW8!j&>`L;2c$EZgG zZmr}2^T=7Mz?Y5En3mgtDgThxwUj*z#G!gs>e*P@VTh!=43Q%0QOrJ{3-t}<4Yl2O z^-m8By#MBfgO6A1*}{vSn8t4R#I?=`g9WQ}?BwKRG2 zUj~Ndu^4A{C*pdmb89tL7YuXJs=x(dR1dbeGXIS9(nF;Hdj#G3&Y6XSTG+IaH$bV7 z#;tmiTtekqzHR0J)+L8sU98^b3Xz-~lX-geNG7Zlca}FOxz>OI4It1CI8TIf^rDVR zWLt7q1k68Y5~j7&#bi=#y126IkSIjWXeK?3*tQK>$ z7>z{V2_JlZYHh4)@?spss);F@y#}33DOoj@O@1RMXH_%zKKx87^!N{!|HC-mc;d$4 zNPW*tv@zX3PFokw9+_$wEOEQQ9#(KA&KmV*wM&KyZ;m?5LS%BQCPbIhtvCOuR> ze(?`7wOVG1)TLo((V}QC|Au5_UV`CC zM5-j|N*FeE+VhZ_;iHl7#?znq`M;9hG$GBGwltZZrGFZ{?oZQ;uG47A+Df{mwTX^e z0wp`njbQ~Fa*L0&SAuRlm(Zdt7@UAfS5N?X9Z0bxb_paqKy@FeO|My=zG?mdJ7Iax zslBH@cH>aqC;jXCVmuLRxOExk$;Ha)`=&;n=B+QEy7$oB+WUPU;!TrpeRp{%R)|&v zeFWRaNp!gl$<#+>fy)TTi+&CGMKxG8*i2#tpxbVHlp+`?C$<%>sN6ZIROY8NpLirAmJfl#DtEWen z4#~%jYx_TusM&(9_$|&%Ruvc++I8fOSk0+MNoCcg&CxPbdDl>SdCuphCzj6WG;2Cv zCi^Mh{{Ia1CAdT}S{C%t4A`hiWHWz=a@;86AJgR4e;AGrucL*KaAIJJ<)K-?OK^)RiPM54r_1KT|Rz5 zm^?5sO`9_3j(>djq&XgO#$qwk=+epZ)b8>fSL*czY-fki^DLqqGY5SC_-XRwX@;O| zVRy(v9Z+e$1LNiij2lKGq9m`3c0t|nGdI{J5lU0&0d)uXwoJq0B7%i|OM3eb5?r95f2|IcRtINKd)FNCSfb`s z73=2U+3Hx;xTXvhi=nB(UH@drj+7!ZBmEU29!fYoPxi& zqV^y;rBR-gN6$Ki?}X+3Q6l8wV)stZ zokC&6?r7dJefiTeA3+bB!&}%1vVfvAxd8{P>OZy~vLFtFt*F zlZXV;(I*9XMVbV(~$A zD%$;xVbF>=-wIWB`Xxp#lV5j22G}wnxXT3{t4HaKTyEVyGpp#x_%k*QOVg`L#W+4Q zeqqn>>2l7X7@v~gDR*X~qtS4I_G^O1pxx)zNt2;T@A#3iDcW$ur_hmd7Lz`uG#N9D zkTW%~wlJN_nt8dzp7ME%QKv(r)~Tdwg-**GRg9@#Uqo`+O_@y)dywTMoypO6QOR8&BP%Rx0qe^o-Y)fx`F8Q2z$ zcSS2PJ{zFhGMI3)8;~lsC_gD{wR9$Y5Itl|-L|(n zksWGK)6}o2rnZ{}hJ?)le8!q%f><+cR)kGKJa;n~{;;i9$PGhdAAo?9^^^h|DHRDA zC&{Zi*BU0}cNHnWySGzCiiLo&kNgP5UKBaBv!I|H@xG}jLCsF`EiJ5fsT*3M1p0ND z->BpVaA?(MXbCV_wrw5;w_H1 zmb!?*QZFE|R2JiD`EP&%G6!c599B7_!@JLq-2LJHzO~52f#v%?QdizI+c%b|q|eNj z2R@g}`rXb^k2z8DxdRO!{p006_VgZe|Kh?zfB4d^wXZJMzBIq?m!3%@GKks(>vL#pW-^M~tZzbu(_0|#e46h;^IY1{VC|m@|^Q#KbhHVywX0jkw zDO;2-pKlkH5O@^@C363yn&iM^F+3iNX)>VZ{p4-G0FV~)13ZTw&2REzz@LYL5?1|J z|Ks0rB~w6}pS{YqG658LrLOi+?L^T}BIryQGkA{!3OhE^nG_1i(6uKdd)a7;MAO+0 zio+C1XM}7|gM@*KxvM%rz~(5aYsL*P%QaTYT^2W$0^N2MYE}*x`aM#9Bc3ngI(!l6 zPascb?J)g?8m)53f_mZ{R8&V_7&cpzY}*D^}m*0=7sYuEfp-7#d0#pg%pxJn(}b?$M4 z#vV$AgmC`=#C$X8xk8*%p{A(6q}ocF>~$yn5Q11#Z-#}cB8*Z?wHa8MmL5I=m~RRke_u$A+8U!-ma3EI%*-zd6a{c!I?ULwY-*lZXIAC_D7z z-`fZqNCU$=1Iv%S^hp28boi9>k>qgLDo^{(5l>8$i^e&}0|%xLfAq*we&|4bMD3`> zCbm|+S(`c%z*pVczag%hGqh`O6z_A00^SbxaC@$c=P>ReB<+qF&=9bq)uT-M5i0*Qp075Kp)uVh+V> zLQ{@%zCuTnVTzz%Xl5`BktZ<3p0K3>*h7@2v|^AxLvHQ%_f>mx>tu|?G;;oBiqZ18 zx(&$h^3K?$H@JscJXvq)8ly9D)bj1>*<#TZw`p1BNsX*p9xWd{cDkRwEOF*CQ|Vx1 zw`Kpd!Wb#+&dtS!4v$RIuEkTwhek}%up?OsaE*s=7@D%{BNIbXjntEN@G?fVT3

                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
                y-^311(=z8bV-5#9&! z2Ux!DpvX5zS$^C`w}WR%nvIB0_ZHyqk@2E0#5?F1xEb632cXY*1^(ufyj_HO7brT- zUc$U{y>%M?CE{H*_(uHbj|%YY(@_3`tbg<+w!?c0aN-}mwurO&5Iyq()-wfu6V&IB z*U^s)%DoQCmz~u!H(_4;3vi-muEV@0_zc8G=-u)N+&k#By)mVxF- zF|qZr4)V-lv8Hy?|8HrOIyAAt4{e)LFX#I?(--GGHH90*n zL_dr50FL`GWM9(Du>DWs_V38cZz)XA(DxvZ9Ahh}6JQ2JA&vAKKf9?D^fvUF_Xn)6 z+0U?FD8SQ4=xvgPKS)5dy&awFp-ym|i{Ejal9M9*9Uh$M1`Hly52BnwYU=wa!?lhVJow_grRL3KC^J_Zr`WqdD_5#12P zeJf+(4KAfsp!*ikeb>g9@}%_3Ia2htP4;Z+9;k^SZ6r@S zlBZprCxx`X1|NbbIcEy+MRWMN_67i=DlgZ_Z!1#KFRiJP*o!RO9%aQGZu8Z!F2AE+ zmRfm#rY?j1#O3|@zX-n`;(x&S({SEK_|qRFyfk|@XrfjlJiB4x5-AUUFIcz)=XDn> z{}1S#1@AA^6*$dbK1B68E89zNpnr?+b;CE4kZZ>14YJ1%j2(DX_Ly_b2|n##_z6AS z{|t7F02N@{v&y0o`N~_gJ3?NUDT^!7kD0* z?O%Kb7|30CaOQ9xw-OwEPm>tZ4`EN4ffeQhtx70c)7keq6#Y*q zXA(+7S*ZZkfaYa%ZHA(t&gz1jWxfqJe+y1u)U@!orq_ZkXLkBqx5V5n4xOvn@z+y6 zgV9p}`kxCW^gBskdSkP%byK9(Rc&i^SJ^W=PJ<$+A&8&F)KvD}qBXE>0!mF8DGyao zwZXQHQnO3@5KP`nK+NlJT}`VU44nd;jD(xFH-{l$YqRU^ zDLaTER)I%PO{i`Tc5G+~v~G?yI;-u?HPyD*X$V+24N5JPfSS`#ENfSQ`@k0ZDSUT< zS^}&QVD9ceL)SzNJFQfJ!Rz`N7fe{Q^#{Sqa`>%>r?3a=W^d;U2q?0 zX7jEFJP!a`Eze#LlkB`ywu|UqNJCfPJl>;Tz-iyh<9{bOxE|;I9<;&O@1aHdc6Jza zK-qM-Y<|JipV~XJfB(E?~8Z)u-}rutr06e zMu!g4JtdUu#X@=YTS8ftR4CV81pkJ=b#DsfTB%4{{r9)NtGn{e(l@VyKS82YB&`6Y zLTTlla-mEk6Uj7R0R{Z15J3oiL~z-|50^dk5cx^;1oXG*gGdij9H2scqd3@p_#cSx zq~C^rY4ANUJYxg8k1yN+6i~6}?l%^56y!BYuv|5v+Ep?katvh>K+`WN-EdPR!?v=o9pdj3qxez93k5 zM8H_WVSER6Ej^gUeom2}z0JxRQ322W8^kR~hDUa|#HsD$$y&d^HaQOI?}aw`8}vI^ zml}ABx4FDnKu=$jPk?3Ri);k^5|rY*i~~GuFoClY56&g}Zcl*He}4V@-xHp>vRP&f z^Grk?L^4N-vWGGqP-}|7!AzPW_ZZ#^ZUK$Cwt$-rnU@Wq@s?X)IX&6;!B_ZRcC0tS zuj>{rt)pLBP{4F6vrd5SzlQdBWbrmLJT=0Jn%sPu0OX1@{Llt$l^DEeNxU4irWZgLkC zevg36`s6Vauw^=V_rTrByKBW?_05_Z=Kz!GVmeOV$8;oD_xn~1hH=<{8i!uYMp{RS zkyjsKPxa#~8+if{P-OZCt<7__Kp?J7*NV2M2htrYx`Jy*!pY2!li=#ikHHAZ#{=_e z&gEm)lbat&RT!8VsLy;Vf?0@xpnuTPJZBn64|F8KNOGntv~DDfaw0O?oy~&1z<^{j zdwYi5uM)~`1Zr9cf5hpVjM4|2H6&JSl1M`DscY>Q7h6NPEl%Wfv#Df{fMcfe~H#LK_q_(fCQ-2xxdAHBM*KG z=iasV04`6>&Ia&rIFJjj+_5fRbs30Qa*v?nmyE&@D?3-fzri2*Op!ya&j>hrZeb;;Mz4!L6 zNIL0Gz4v0tvTVt{7i?o(z&57X5SoLj4v@qo0YgX#gb%(r!6Y~#38WDS@IgX=1PC=G z5SrfoclX^%GUfaIKS}p=Z_C?#voo_ZyR$Qtm6Z7auw{>yn@L#@cpty>PlJeNQA^-K zq@O6TuN&5@6ze!CzaYZh9+4%|pWcSAsdM%Q>aDV-K%Gqnt}!-E^<)njo2R<7(dOws z!+6uue$zPFF923R!4H%QPA{h(SVK3VwpOCFyHH!iza!EvSr3mydH{}7GQf@3wMbfY zMW^>$;9voWnRm0RZaR6A(A^r;&!3~Z_BpQ}S-Kk7%PnBtC=ibt-x6Cx?a}s{T5fl~ zE#gl_Gox=veiDf!YMQ`fif}IKDCIl4vYtTjwaj_u0_Iyg(X&sXXIse%81cMPad2Y; z9`;x%el&k!Y&Y;tmA{WZPh^je=F<5Zmp#?4PBmwXziCby#D0$@VpQ_LDNUv!yx-8g ztT&fUi5#wx{zUCPwy;~~@MtV9gUHG1YF8n+{28@Rd?6F>wMat*e-@qUZ%FJ|{~rlF z6Mg8>bzk3{LEL!*>g$hCSscw`p?|KkBEp^(&7vBElz4KzUFm9zXN$ggof>t&u6-^+7PD(u>rwe;%B55Y{ZL80aGI>&0W-J*?m_f0 z#7P5l=q8k=E{DMo=dVgiXer;sSlRuAat-GroW|K#O)Gy;t^sRE+RpMfE9C^J?g&Xc zw|qmT+()Qf6M3Gke0?R2LFJZ_G<*5RN?i)2^^i12`RYnq2-V#~(wybvl{C&=|6JAQ zaYQI>n54PO*HzL~^q~2fU9XcNjycWAqcm^%+m$q`{Clv0vlXTJ%HLtw zb(=$F0ayYyp)`N_ex|3ghalkm4@yJu19!sUY4+VB=-qBY@M|sqwp>Tx$46;hB(1aj zyGoiAr45j@;qo(VTKQ%4ZX=v4QQ8ueRzu2Bs9ZZP2R0A18uO zTk;S#k$@4z-4%9)g+0l$E=)543Q;Ky0~&vT(rYkBFo14z-V$>7^K^r?et1`lDzAz- zP5D3)j0&GEO}NG;-h9Urd&_oX-E`ijGc>mF)l1HAxv1gdLmS%p!5~*zKb2W0SJ39! zk3_4dnOA#ZLC>B2l?nDqr}pj7HDTsN{PTT{_0yHlR2`sus$9u{Bsb#wS|FzsAjj?+ z#i?bs;`qVt>6Ku(vpKi4A*$`_=+h?qgA$!4RG;@tb=MY0g14QM>`geNuQePwvZ;0D zj8xWBs#~&cee{AD7?>{5)EH3sJ93DA4qj?Yw%~ZeYY_8%i1oP&1oYgB7+&4Nev1(m zy5)?NsT-*qkPgVvrvOf!rQ&!Kga=n0k&(a%xTQ=s6Y#L{YhlHo5q7WyP7X|o)ZDL2k5KRe$zl7ZmXdqM z6i8d!x+CX%vW@QZoaajpiML3Htl{o0MN>5GH3%kn@GC1yYHv)D*Q*rLTzWF#us7Gl zea+*=oPcjJ=R578#oY;k&RrjL`YrnPtX$q+{th()w<@>%aD0h!RAXSy1M5}t2FX*O9DEjpZ&WKhzQJ1Nzd+9+SqF!Q_uAnnBsPMB zIf@9JT4%?G?Yb?F5mAOeKR7jx7sW*v*fmlAGvxqeEny5aVi&%>V zjZQ3TGI~rxlU<-uW+Tq#QlP0$;IxY+;EL7(?9_3f$7s3c8VskU2rkcIe>mifw1Be+ z{(-Ect|5Cm&yrCKAgqcbYR_Q5wE;4Cc^XGLK%&#a!K1NDDUZRG_Xr9AmlOCr1_}-1 zjpO_~HjaZ0iph3G4oq;5ZXe?xT{p2gt7r{Q$k(O(J0SD-@D6b8VK{X(3c>X;>Z$^@ za4^Yuwv!=UdSczWbztZM7VovFpF7|L`i~>B7e&O?vVe!K8ie5_ic{K9B>-6B>Vztx zQY4ee1k1)(GdSM(jMu{ad+YcCu&K>qfyMC#&V93vf1ED;5qCeqH5RlJ~ zgtCeJqHxU-Pt)3l8MnP()-UQ2R--d~jP~ zD(w`Fc=BB7fV(7gH1?m{v~nO8X^*rWiGnr{^GgXAIDBPlrY+Rfs2Mbb8~W?5TyDYU zE9h#6ni4Hte)Fp7g3DEy+NgCej^Mrwki9JI^NRSrBvek(fW|Q{@e0OExuv~%Wxlku z)CN}XW^Q~_`OtT_oHV0x25UP(n0Xq1I+>fmT9z+gLTvxpxOEDMm{jShZL?pE3~MlrplRLkMw6T_4Ry*C$8qL*+_98=9F@Q?|q!geZr6feXWLIANf z1#soEK=RX}B=Z>LifK75Zg8F3j`+#4j5s4l9}9>LEfX`5I$-v>%?MZVu z+0f4X8a$Y6O1#n*{InBbvGc$vQX!ch%t~&AQ`8j33h%aUpkhWW9>CfCIV$dry7)$Od`8Bvt5c z^41K+G+~uE=T8s)P68HdEfT6O+c7N}&|baq0k>X~_2dSABL=qcP^5lQV}3O4l$aBF z_ehDhD~z<%?a@mj>5lC5#$){j+O9Ovcx-azL+~gCIZn)dc&x0*D}82=upA}`XmET+ z;4bKY!PD6Dotv8_1$*Vp5niCwxkv?tb+@@u8k{&lKnO{JM7%X>1sT!uTb zRxIwU;m)4swk|)ig*OU|+*on2yEmq|8TSDxHt+yhGnNp~=mMUL6~<1gz@sWAj4t=B zUAp#u96EJ)n6Y6uRtTibRv71OhHsJxpaNG8NmhbQ0!F-HmwIIoj(GdF8CE!}PL|piFv1$o(Q)%}G~t8H zNzUf-pTJkyHB)NAj-Nq0x3;JMzPH9>ax^$Mp3|0T+1j3I1>LnylPBjjyP|EITGLHi znk&!ZsKJ9A1@=nd!!_}CQDrG{LB!jvAdvSncWrGC*xG_E!j0Ye((UeAhs~Qe1r5R% z+cs-!>Ac?9ysi0o&S!Mzd=%8u8miLYuJZHX=z=!z1aBa2i|5+F8&&unn3G%Db4~sj znkd6`>$m(_r$s7N6_rBQUph9nr1HsHx<=o4OO4y?pim1crOA!qbv5{ia~+&feuuNC zoC39tsA1X7jU0T>>|Stxn6qd0k@jv1)c^KZKJi*y8>n^`MSN0;#24+?HrTMZP zIGZll0Xe0wz&_2e>kc*I!;mOzDHay~6wl$l)#je(cOg??3kQ|4@47 zy%+z)ybg>{KM&N5`nPX?{IfG3e!xCARW70DS}XPzE|rT?xl};@sfT(Y{^@~7s24sR zqAvXO04bX(H_w+9i1>d2Cz(aeIJlG1fVaR~d%>OP>o|MEXoxw=T)zbz4T;~z#=6RZ z1#cj#Fw7VJ{n)*`;lb5R>%!OI&mLO+{$t+*!QZ~UcJ{*a;MW(v%%=~+gS+oJ^C8P4 zlrYRWPF+aixVhp0he0sNA&x$fccCdp5QhQmx>^pHY4C5S)nGFllGadwwJe*%hV|1Y&;ATfGG45rpVND z#h>he9o?`z3p%O4lm5-VRQ_4{RrnU>Ds;q8d_ z-eC@MI19!fFpqI2IlqJZaVt0ivMc|)b30cvgG#u6_IdDpC&s7Qf0gUYAC*rK+`EoB ze<3c;KEL1|VYZ1%1W zI59x3aA39{Ghp}wLL1z&r2I+wmk1Uk%!}YZ^Lz;9Davw=uKYO48)iNRA1}Uxq@@Lwoolj- zT?%P>xIJ#aHD{@9);7ZTx=aC0ow1?8Sf>e?u+DK&`AzCd_%~&O(+(I8C$2@`S~+82 z27MCxD#fMf|P-Y2ZCoOnn8p9P^4NU#9I zHsZ8=*S6`~v#E1Kg~hvqGtXeiuoT*lS^)l@m}$Na$>;$i<=pmR($V z;shR2WNk?gmaDo|4T&B~s8hD9U1}|l*K3~Wl|LhA{%rMStukwF%G%*C*cCoFH8?2l zsTT;iP^L9$c+3y^CWBw97+4``YPpE#OlIuSnI+B4xnMw;?`Sl~YH^=8Avo3&I1YoG zD{yS* z&$*_?5dkRpoTGK->d}8vGoW{L?X9l=$cLlDviGT}vGFag>1A&hmeu+d;K|}e7p-Z0 z(`1#)mrPu{zxbP?K|j5|zyED#rn49IV}hJtdKQgE2*Ao%WGiFgD*uD~419vKlXC%y z%|HTJlt7LRM?lflplm<^D#0ys1(2R|)r^EsH{R&3PSa$bt+?6F=kk03-$OjsqeoVz z@`_XR2ynCWx)1LxU=0U)T-v~t|0ash1r&Vc;D(!=) zuXuhi2^)2Jfs*!JM^Tgj@F?b~tM6>gwRe>SYp!ggduk}5xV<%(9NoAW+_B_H$nR`) z%S{T6!tVG}aj|A27gd4O9__dRy??FRkfXUG#YWrMO_!**wMJrOj8)~MZ~*=WpKS&t z45EOYM(va?Us=pSQwJZjx9t23Ta7G$rV;E*zJdeQa906#)el!dMY#DQ0NEP7TG=Eq z_&rIUgs%!~4Y8!9Z?!fPjONe`D)1Pc5wqUx5qe!tf4DxWfD*n`As(9ParTQOYFjYv zmHBL~d~Q-9Hw_ELT9E-n0`NYI)HJTNL|qbtRb~eb6i@M>Lw_3xr~c&XV+4 z-3Fa084R=r4HVBRR`VZOvZbU|H91m!5u3<35XKVQ4KW0zu+|3uP2x}} zh#g=h5G{^=fsFtF4o6h~aLWV7ALw|v16^A>FYW~QUfg*xxV7r`6h51qy%ui9AC|sY zzmCr;`Pjk^$CN<#{bbDu>*(`-PBrtZjT)r1Bc8T2t!e4vu#56aLm!s)o_M zixlIkQ3?E6r|sIPx22#}F-O3-RpL*~3^RX$C3~lRnCLro<#(tD5zQz$eVAqpXh`Hd z0UuNdfZ#u&BI5F%!rR&gEgP>vK%)C(2nq2kgaaNa>U)B%0~zIXpf60T>zO?XgxNun za98Qp2Gz2xfA{7SSpfMEQoTDnLP25YIZzJ8R}QHQFHF_-gRz3nwWn^Z&BL?HotCI+ zl)1}Z!kDX2*6mwlw2n9R<~rUZ&MLr3Q&aFoDsO%h~;X{9f5DCHIaUp^{N{Iu2wQKacH3z2}$0bIML81~{ zhE`JoPp~%HVATsLVVo|yt$bMDD0lQNAE9fT`C3P9*R~d(Rc_JR6p2(*U%N6;8i_2b zab1x7+9`Xg6z$P9fE!a2d1ufv)sSCYkhtt2y&DYG$z<+gENnJQ1Qck~8GWv}MJ#d$ z;ni0+ghOIiZCztFDi+t8Qx3nKctU~pDq?@W~6hu!dL zH0Q7pH7EfaRd){%IVCuT5+Qp`u) z<5Ar%wohG14v`=_Rp1?_xmXdbrHwlvn6og#^I@Ki|Cp=VhM<`UyqfHdSVhJBRDHZY zwIQtPxp?B@(Th7I9nw+h1o{A_gn8HFwDoHF%ebrjc~4;0z;K@W!~da$e=f z)ZLUr=@%k}Nr@rxK4${wp*|SOtKcB`Ii~@8#s%~7t}9VotFayUf_ZyMcJ}~-(7=Wt z!CM7*B7uY2Q0+(}8WXhgo!)}aBo4Y9jfq;Di3`0w1(!D&G%8w!04h0zPerQD;|Z;~ib0QRahi zr&DLz79;!~`)>U+;rDv72BDqbp#as*4@!k2_P)??UianA50Z@r=3TODQL{GReV`kb z+V=F4-2!Ho-Fhe^CO`XK4t7tmrhJAfB3Vk$@gm$#RdBnagID%VkfvtP_$%UVo+5Is zk1${g)z!E=QvLOdmao6~`as|MYX&d6fq9IslP`-F8VfrUjrqE}+I!<*MN4~bIrxn_ zuykx=w6AWQzTv{Q%g+ znj=JAVm@eHxn^XR} znubqyUDBPFaJ^hESBQT36lC7S?t$f$7#hK5v3XBpz%us0XvWIMI-EJ zrG&;y(jL9`oKA~i%f!Ke*H-VA8-+5F#dhAaAg`6 zrGlMs4CoZT{u*!Ik>eqe5&o@Iw{blLceM{nQn~Klncr(n!I0KrzS$tr#EU8SK$D-h)PG}Q)#LZNK?t>4P_yDYk*jFp|1l5==??=VbOzgcTj0UCXSmYfXnR4`{gkSGz^ z1$rFn3*N+StT~c9(mm`ln|bGOMRI;JeFKuTz~GW;p1h-_gDD*7JOD*{b<+Py{S)?W z#*ogSGI%3R7F{^V{2V^p)o!#FhwX0WZ8$>c5A*O}QX5G;vm{ybjSChuZ3oy$z<}3A zkoX_aRJvQFz(1!S0#cq_tWud|@3t%@eYnMDmh4&f6OABe;+-Q6i$aYxf6e_h+~_k1 z^S|YW6+V?&B4)eswRU+;-QlM?EJFf=yvGCHL_OBK;=~Sy%NZ!&hy?rn96y3n2Jfl( zz5qNV;04ydt2-`zN2&H|f=}0A$QJkvU))=M;A>d>Ltv zIfSE6Anj4XNrETwHZeWoL_TC;WH>V zkDl}E%5zTRZ$vJ}aB(8ID6zI}00wMS9S{UGIIJtU!ub;OgbwtrWY(?HUYWVSdsX@k z3Uz$;AGhKdu2=k92lC*3=4x;w8F%c{>O~T>9?y?+QR{i=neat5lLV8h*{4+Cm(1fT zu$svXfG6hz*bmSC8fGi!h|BN~bLYr1NS~(RPm~fWhyS0(eKwbO!cq7L(W6+i4jdD% zvLlXl(~5coD~yfMDdv)bxrkxd!kV2jVI?@I2M1820=Yb^O~oO&K$~yOd7(iFxs)N* zydrNXG)1>;^9&~1+HJ0sN~*EC9kqIs!0EJxd~$J4p!cY_CW$L(l{uT@BgO_ntR|+= zJH$f3RVRif_RDMyaD&VdZuW~+VzEwYYwv3CtGu0wp(8Hw($?HW+Ts?3T>h+6=W>M| z&a_!3k&I}C7P-AS>L@h$wm5Q54JA;D#E5sM&u!I(V-{B5*-^e1WWXaz1=S7)!9&ER zio`TPI08BBnRM3I>#xxLVZuAy<@czs!$&!rIlDO*RpjBSj#8OFs`Cj6!Hy;qG;PcY z7L|#FXfUi<`$DOsGCftp_mK$>naqT#me_227OmZUdre^XP;a(r%O0DM z#}}$an{UZ_>ib7847-35gF0H9U+Z_3ChxI(Yc~jaBBLv07aNQdd*e~9kH2E^p#T_j zY)uC(1NTsR9#72!HXbX>s>=U@69`Y&U@rmr>M<1px=PGMel8 zN_EZQJzK zwxM|YlF^{m;+<@9rrKgIh0M1)a7AQOO}yrcJtKX=j-+4Dkt}xBT zYR5aQ%H@~u9bQe_{ENdPAi>^ckW)s}qpaNOA6kXoE`E)VnzrCfn< zI#oYn^d4&;-2yJnDHYnFP<2V&%A!Z8^%VDZr&GDDHgjY`NJ$3m&ZUv=;^?4OF6OD^ zO0`wn-QTLG6Y<76W$iK~l!zL(L=sMSdY~QDiz$_W@QP6RAJm`WGn^651^8rj{w(>E zgy%#opt5pDH0cUgKmu(pUs))`6D|>MQ7yc_Suxz#uqF$1x{_D1#jP%CzaXJri z4U`$GtnCSpMOG}TGdAwk;|0KP4~xSZzb%SNQ$naK`DF&FhUX1?jC*4S~$c(!S3pHNDv%(rawWWei=7$sB`>|~Kosc0-r z_xSlf7bUbd@RZ$-f-COV0Hr|Ll+{EXX&De^X=~o4Q41)@qx1m1cU%CrJP-so7O!63 zC!}D2+n4DZb7l7xl^Vbka^0qmy`DCSi-4EdgL2?e#H$sY5PSnZOXfLS`FZZc@VD5H zKwet_c(sUw083<54h9fFfF?(bXhZdI(HAYmVm{6na6Ik?fS02n%QrA&=LWI4P842T zx5L>57S%&a1vfHRAWBlmY;IFnmlE>TygMOR!UMZv*Csktv8_(Pmk2vH1#FR+qtvC} z)z19e9;1|*{3XqeEz8~d$@<~pppVuHlnzfoBjm@Ou%YQH-!K3*6jube2WS72;DJV^ z!)@|wB0`>ycLSs-9v58OSZ-RA*RG6kh2q|BU$n6lS+UEtag2GiR_;#^wB0?Kq!$HD zn_K$*c8k)l^D4{~h9BPG{Rx~<^0_}|eK-)m_V}LlM{neqZp9yIT`V#ocKD=g4D`wF!Fm>dv>oT2g?)I;ztjt1Mjuu4mRO(77ti0eh`tv08%xxe6S*(+T2=1zf_&z;Xgf*IDXTRInYUb*~%CwxsF^=p_5i$O_Fi~mbao#qHCV9?5|CBh zxwBygToHH0a{PhIAHDp6<9?)GfHc-Io}CTA!?Szfv%|CBgG2a3d}x$kCw>PMoG^6* z{0)(7PFBucA~_fLiO>pa4}QNAADpIKc^4d6dYmb!z&iY3*4KmtmARJGtEUR29*!CV z;4u6JM~lyQ_-KKPU3bRION4nxKweNeMgd%SH)-eUsjdz8=(=?swe@S7N7J5?zs_lE zZGjGE2)wsyRc)&Kyw`4T^_z)p1Ls)z5AY1U2em1pjPM51|9JUL?s3!)B-_IqD|9Tkiul|92#R1pyREwp{e=KqG|Uy1UsVB3W_-BEe&R3#nPn<4e=A1ut@ zi1NR})_W1ByDI5RQTmZey-Bt|Z?XALko-}Uzq^t@#y}XLA}~aJrXB{Jim7C{=@k=D5(DNYC2Com+oQHaXxi#HJ|VOT)v0R$K|-cnCnM! zK|czWevo(}q#uR3d$u2iv-+W*>qp@W`+?~)K%T?;zuJcA86tXy9M;bliG@k>19N_g zj*)v-_QSUBDRSRiy@!f<|Muwm=ehK^=F&ZEI?e~Ds`*rALA}M5dTjg|sS=+;t=v;S zQf_gj{=ci~Txu@e!=~eWY?EBc|Lf=SJ#0QMM}2>;AHD_sSW@W+8;1q=V@dVCQf|pv z{ZP&IW62lxqZRW%0l zJ8SQ=UitlP%fsgfDNAynXVncitn!?fL3JXit%upRN)^L7QZXW>Eb~o0e^yJlEm-~s zR8qT1A8Cqok5mSG&T4G;r+-_}9I9t5|C7r>?YXeM$^T}nbCiPVus0g?c10U^*0k9h z+Xp{oK9d5}EiE0+Qq4>BFc0aSNzf0csu_KH~OK zvw1rJ-?@HhVA$AO+EwuN#xlV|KKI##rSK<>wP{~2KAp=gOXPg%nx@(2&!mvK8pkkz zXE-D_9w3K4Dl3;nW1o+34K%F8Qt`WSvo)3V8HHL$wt1#@(dxGSz3W4=x|(>me!_WB z6KMwA}fi} z<;O&B;3Lccv<3;$V(`eSt7cyYcdR6HGt^^`(B%fInd}K*TOgN+EFOu#lW?n+@d3b0 zfPZOc&sBg^%=_@!8Rk~zlId=6C7!APXNYqKE(WqW-v^5oj6eZo#4pev5g*6?Wh(vx zsC3=zH|yY;*#JJDQ+^))lsZNvJ_DeT2&aKZlgw?0Hpp*ZMI948)e7I<$c}wC2g2pxMJ#_+On+TSC}d9~xCDVS`xM_8 zcuo$$OtJZ};-3D$%bE8^id#EZbzTrygsz(dSob6{ODAeqj6F%XO3){e0Ri+W7=waV zK%I)21j|*OotC?s2r=4H_`ZwTf%oWTPU?47;BdZ+ow+?f4p+T%6m7a%ba`fV>smp?)#V> zt4{RbYv3bdVx_|Qybmd!&}sq2Q>fkHqJOX^8tlk4mR8j^ ztZJ%lV&QwN{2nETr#U7ZOHYF}ZNxF=qqxVpn#$rvbzdEK6&~B#r4I(JJlC2+rnPm` z&h2(8QkxGvYg)N-x)6)_>U|cYSR$8cVy?nquDK4)5a&p3^^w-z<`lj2oE=v+7cX4D zVwyQGxpijM`h+iNk3{T_Xw)%NV)t0mLz}1q<>H(C!$02Y^MAYDvmQQ@{HQqieEr3*95_L3_~8Q^Qr|Bnf62mqC0V0< z1ivYm+s-l|m}7`9*y}>A&3Sqe;3Fe?Dz>M4OH|yyhRayFiQa6~WDpBo8ux@h-@d6s z>$G#V=l0cfH3=;;twxeAft7uGjuc%jQyQ&SXtO80bsl?E?GAS4JN8IaFywCA(Vl7U zprm|0@ybZe;e-@P;z)+{A=uM#UY_6@6_E2PtEBq;{}W-rGK1Rbw*5t8REve&1N0(S zGUcUAovp33GaYa&@n-(=f5E7)dChL6L?Bg59Gcufy*(GpjATz)!4hp%g-HT=L_a7qYQD1_c@IDa&!UTS~vtZhKAE_b1LHUs4cLx zJUkt@8!oV(lZj_1ta2C*WTEH_uxs_!FGj6};{mecg-BLrHHLISc*l~WKje_^tMTLp zVvcbe(5jVVpGU(ZUxtIA{06%0gb(2Lp#WJZMw1Vr3SEDJHs5TzQ_>#|WEy=iiSc@!&e-gqMaE=_%P9)+5Y*c3e~bL^VnOkqP?ru zyn^}p7RhijR3o?72kI=lz`Bbh!-;Ud$<}EHD=uVq_+uWs*zPsi!QIy~0d$A?VYLm4 zSXt+N0&w=T*%kDBrD1rzlKHuc`Qc}pz|A)>XF5sq;JXbMHZZrI)sh|c;kgT$PjI8K z{9^eHumL{D(Ge|N%X*j1Yw}dS$fJp!0$|s2DXmVR1se|jphE@EL>6(mGPT}lmF4P~ z`;)tdQgoAe5diCk9@wQ6a^Wwe%&#CN5Qzl59JA-#J6f9yUglQ-LJ{8fdZio&Uxkmc zUMCHLyZ|>xX#~_0k*4xfkwNDAp+5}$O8V9$WMs?>iE`Uej$K)(4 z$ESdK^d~3*ji5x~<7jyWpwROK6sV!;7=3FdmPwhC!zp8`K3;!oeXO1~(L?mi(5*vD z)&H&d@BDu&|64hs0zTD*>RIJ8`DYY=QctRx=hZIY%`^Xl#-y?QAs7cjb`D-}cET^n z%q@HS|741pwdix#n&wo)n&xEjp^!yu#-Fj`nuY}W5c)sA{4RAVk|z`#BazLkJ{!me zUfxw9d7i7%$OVHJ-aT>T?!iNMj~}^v6&wafHlFiKXqml-d;!*plNa=zJVdS^OQmZr zz3yRh#c<*+XiHDLa|J%zo{wzwQX%52i?9|=2q01YtXAOzVB2J#xd*`fy6@3o+f*J5 zmO1&g_k6bXse>}6450j)`_cCcWdJf|`PCSw(cD6L;4>T{EAaviHX{O*A^$RLWPW;L z`l9kQXs|DP5I(~kV~znY^E}uDtWQ4qxw;`h>?3KQ2?*ek+0&rmo6{F@%G1nG9m^g> zbvB`zUi6Gta9wJyE^ofJ3pY#6)yC}~n0{z)rS>sk{o@~JAA9mimRJ9XoTXy@{80Z7 zJm3AkHbaGcYYmazOe-KFh4|C`vc~F*v*V%oEa&904L^rL!N~*3%_d?rk}2JSzP$T z9IJjiP(>mzRY4r)t;!d8PUQ=y+RtdUpCZ&v3&L_hQBl;x*^|eA2_`;eKAD6!Gxsw; zKt25-=$YM(PZ6EXiwu~Pp3NJGBRVXK@5@%jC`D+olF5Z(6i<$yr+sYe8IW$iWf(C5LPuLrJ2#+q42a`Js_j(w49NNYK;947eMI1=*i8nYCv9FjQ5UTX z_aFT3>b6`7o)Gtk_Og328|KexWIoWXW?iFzU2GDGIv&oDN-G#@aG5abY+;n z_nH3-$B*yWCNB~JsNV58=D$kF}Uc%w!yX!7Y(*C zGvFA;V`dX*J)6GexDMi;*dQs78=~%*!R&KwdNBQK#6VBX9KtN{HS|N;^k6$8P9yAr zoOw7c#9-?G$9HgF6&j@~eE#;i6!7iOVmN5~Yzl|7kR~C~#a)yD5hdbs@Ipk12M|%t z?&Lzg3Las`|AKhqWvW4hdlv#X5|tkKB6~A_hpV8Kl{P3oQj#*knE-jL!mvt!#Y?zw%@_U(&q@42{&3-Az&3n9QB z)Q8(eDLxQ(Nr?Kn}tISqNo2s^rRwhR9V)l+WSo61@1yBX315L6X*&ZgY+al zNWY_cM}t1}S$EM%&Ez}pyfZjC_zwH;#%Rm>^WcjlA|v}(u|-GNq=ssW|J%4-ZxlJVe{ooM=ghTZ)$EWo5ZYLQz- z_+zN)DylzB`mnnEF8maI^I;3UiodR0-si%nwyQ3(D5AdP?EqdM9opZsZQr(0P|s{u zL6eF(I7dcW@VSq3uyZPI&*iM;%JhNo9|xRlq%xS=Vonq^mEho-JchR;ez?cF^|VA`hv6O zBG|;@FhSkf-<>6$RuGuIG8ZqHjL6vRE5D7}cope3p@lQtoQbrrYDW&LrV-^Rm^&udH8s_Xc}81~~1&GIqzofiZ+Z9TVu=;7L#} zt-7RT-KA?zPBmwrto=i=^6mxn?omz+-t(%CQH5g=UsrI>P;mh+FFfae7CnO})*!mA zU$!oJ`AG}|cTZ1pbxX2X5Nns*wdvB$TCwH^Oy%a7xurtfhcMkH29uV%FPymZfr!jC^Uuc5iF>Xi!qr~-+N z70BH6r7+z3tH5&8pb5Pix-JIhm(e;`I+8%intMS1(y_4)wVXejhTrjwK_BeLO_FHfv5}bnYnR92~ zI(weYyD;a{(078bUp{yoJ$MkyBSBV|?cwm?7Pg!Q71}q}8CL zY4NF3;_Z#gzg~qY_&cjx6M5PbKw`)AiJ46pz5aD}U$Kt+#a+eX!WVV7M0DI|Ki6d` z@T!>SrJwEiRZ`|T74U<{Ki~bD!J5y#fTV_{mv4hpP*&9+@??yF;PU8T1M_slAe27N zyaKGO?0f+1MRG7}^CjTredq%w6lD&219G)=j&{C-KCC^Cu>1fBaC(&jxTd^ob}dO; zgkb=sNJiCA>g6%Z=1xV&9a>AyQ>tFegov)9k&$qM;4YjcGYeo^k?t+ghJ#Y`_d*zRmZn($z5xxVp?A?{$D>a(OV+vo&j!d(C{SRxLJ$n(JGy+vxQG#RCqkLJm9lVkaAULf@Jl!*%%S> zBz!rS*WV~vcWKb8vlwuj-i%pt^-7*EDR2rm2H+q?wiT=%M7Rw?wVTr z>L+V8TB{ngVn-Z+DZ?yhE!BtRXe!_{ylw=8Mws=#=jTw&e$>;i!8jTZeBy*d@db9u zK(>zj5#UBhfQUQ-u!s1HQX&Xw5CL7bctWd-`c#`uS+`4~5VfWi`oSj3kjjj7F4`o} zrG46@_)ak>>DnMq>9uIXMnf7f4|nwElionk&{8Y62c7&N7^i81SEcgn;HO|8KAVxR zY>W_pSlGu8v9e_kdzQ8rJXtL-O%Ks>s$Ylw+-Ai>rNLBa@81v$>t1IrY4NRe#C-B3 zNOEH=K6P+{96nfsrO3dXdr1QM29Vdzoew74H3otIU2i6)6zXgS<=)kWrAcE}8|qJo z8yyP2F%T3d1UBua`!I>C_()k82&zYC;t$oxa+jc9GDU6VcL zgv=tdx5TXGn7YyJu&r^*=ni%-YWAPyV7bJpCpKT~J|RJ+>VBLcj*2Xb#)~E`T}!JR z)9QpmYjC()vfb&_H1qD@QKwTX7l(m|1DW=6bGePP8PSIdVGlm`Xb9x0nE8n$uCmM8 zbhl5QlWC+S@{UN7rx$4?R!4nbig}85h6(<4aeU>EK`&mz$Br_wyE8=l6(J@-mp~}-1%WQ)MzY__&5ul(OEL+4p*3;$a!X?` zJyKFgb2h)xf?adW9xKs*_l_A|C8%3~sOYxZRM;55LTOE2|Dd3UC1^C2H!)`;C_0Ex!SlWB$SJt<5!5 zJ<^0=&Tjwf9f0q_@5ziV2`2p}r&b-MJ7^I!Dbz3ycrvTj@6+1^3NGXZ;)Psq&T05P zb8k?|_ga-gzCvR57-+3Z%8OATgy%*+=Q%Wo#@W?LvNNB}>#+wCJX;XfRfNR59Ky-8 zo=5nKTLJjsM5{R%pd^l-7%eoW(-vExucn4KD*>NM9_N*4=Dt+DN?#{82;J8qldtG;L~+sa5iGLNWp2Uq;T?!3}T|hJl8q&9mqdYZX;s8>+{a?BMM| zTRzi8%jzZd-Ly!sBCeswdHg1i(PjzAWjt-jp>u%eLIu9Q1t~Z*^R0+usW2@}_#|9S z&a1NufTsJSOn&+G3F3oP|>V#SRc&X$!S`}mhNDqPs6p+HMG!s zPNo-7{M^7sITf3HSwc4!o4txhS9szq`MH}Sl-Rssek z)-GBk?$7X=A&;*QgHI$XiOvwz%hhtBN+_1g`F{=?R5SudJkcn$)d45FwkG9l1K&jb zpz&%e_V8T|s{yLVKjz4e4YESKRkFlKmV5|rMuWGz-uVkLs0#%%8I33HH=8`cR;9Ny zRT%RLvV3Q2tR|_*rM*rnE}tBHj^)mAz(Omka(28xR0Eh^quY1*JhQyXvnCCaVV1m%{zl!mIOOe5M92Z$Ii=qbQA$EOr=@s2XqWQep=EL_6x9UXtS!V} zIoEU}qk++(o zhgz)Iq>Sn^yQ)P%Y`Dv3t!)7F6ft=|dRc~YQ6lf!#bzJkx|>DDNvK?9ki z`M?K!uz+Rq>ij6EM%1Y27yQ*-mWWBtRred*v|gN(2-G@r9k{5t*BG!XhMXIaY9UL5 z1TT)BXGL^-6wz&po%0dTo+nve047E%a7ft zKNmupW1o`%u-Z|PdP`tl96=WYo}2OP+?fDHK)SyPs&&xKQ%MyX%W}zP+$C9{DI@Pw z>3_H;nKE;^5*_%fFJ_TBbvltiEKFumUmDU`l|9XKisBx#isFg%2p$~HtKc9SLo?B% z1p$_$3J^mx;Pb$IohJiYqP?D4fiJjG0%jzS*oP*XwLqfe@`N<_3eT(!b2UGq>95qP zq;}{G$qf^@L0aR<8JvoM6?7$v zeP5-Si?pwc zQB^_>!Q^nBvDx8s?=`s!3?3ZN4N;+k=*fQQ`Fb1%$Exe$Cee#T#fyG%DzNcW|2od{+W4jrnvbu8^XDTQ8OwWM*h_L<-wH^hire zykS?bTcd7_T#pwOVEGeZ2JfMM$uNHfth_-+RjUu6zF|2;fX^3H7I_HIb&)_7#9$c! zb;zy$p$tr3?$h!pphThrWwc~mlxnpEyeU~OF*pJik*633iwl0Q4GDK*D%k8WD*+9F z*WiwDrF@s0rX3bv!KveiLI_q8GzPngtn6gHiB?GxAps7T5J5s2X8A;r%Im=jNvw~S zYNi6FtR+gRRD3UNI2Ke!Oh_@Z>NOdp8Z+1D5(PmhsIv%UO1{w=wrN6Qk<@Db_y4-~ zgV(6u10SKj`0$ydBCP0bE_TT+Tcs@GWtor|PvK}BMbL7pG|WK>gpvU-t+2|}vZ%%D zv1Tk$7sx4MSzjXLo22PGsiIo0k=aV#X1i77*0bw}HqOi7jf%|08p{SSo61#)4?_bI zhXMvxu0XO65#RIrF1a%nfc8L8A9FiGnp-3r3bakEkt(zfi$*TCdIT~JPaL-`_7yrK6)Q6er_d7d@NGtI)R+>IwTtqLzzrTFa=09yz17U=$_N{f zI5Q^}vU0&ur&gn*t!|$>zcb>!OAP)j-Yz^`G}MEix$SDJPVaIDp?0;ePe;>AZO;bc zldk*<=!SlxqsA+5oz2ao8aARKkg3Ji*5QW1kXrdUNSC`m}vL3uD-z- z;R=N+D3HkCa)o3R*bf5Wf=MF)d@fD@f2_R+oFrFyFFNN`SLmwhs_L%lu8vjRUEN)s zQ+1f`>7E>Sc4zZyqjr_U?kXS@KuAJD35hJgD1b@#*+d%wHU=AGjEw<@3;5!DuWhXB zivbfZ2AlwI&poHAd(!So_`Ua&eyh>U&dmA3`OX*rpHJaa1?{$nESci{Zcdhcsjw6S z6rUWoZJ&Sa1i0IlImW?P@FRdTQ^;+@e)(uI78vGf@Dq|o2L+W!N^_yqsW*~=07vpt zYCIy8LTbz{6x1VTV$a~)I5+{%T$#)C%jTn2o2G#h3o=R=X{=k)e3AS_u4SkC&>2Ew zb?|XJZkQN(7}QP&Lv2mL5q6{v6K_Y&PWi_c#pmm5LStMBfXI6|@J8-4VJLdzN;nv2 zWBHX*ej>&*HD*o=g+yO4Ec*Ux%?v23*$_|OZ&~;9gy@T0fsPbBSz+ zz31YWr4?VGw9KJ*g*)yl*GhhD`vVhr51TH?w$#-a8qs_57SK5-$hbAY%dkRB{gXudptB zFH=f*r@%zQC+rGEt4frR89opXyQzpvSaJMzX8mX2=3%~bjA$oBFwB=DOXWxcV>99W zro0KQ(GGYya2xlB{%AcXpb+%1B@|y5eL^m2?Cn=~<{Q-fk)>2v5Gn8r%leKMjAZ~A z+%j`TthG-|G>l234P1YLHm^%G{z_OX=pTgU#?@xf`QN8T9PdXLGyTmbEc|}!q|%4HvpVW_ApR39p{m7;$&xX z(Xmu^lB11z*cc^2@ux(P%pi@S|KRLhky(nKs;2VwNU)LXbS+nR@pacJifUAcg0NBxhpWYFss=m#e$7nI)kUUu*x2j9p2 zn3XG?%u?D+X8kwlACmJg6JIDL%98`w40|(iaNE?2;8WSf z1Q|O6{`QD<;axaS&cLo!S>$_(TnxJC!c6|PR1JnFjDXV2gLovLRArxAZ1u%SOwV`M zKMD)*UMwAXRJV9ZdgRSS%+S~jQ@nOHF|&00N@rHjThbgicb~<1x*8!xHQ(w?uAue$ zF2NtC>(#mDm5Bp1VBCk9m|=A5srg=%Jmd)k!JDjGn#*6@V_o=oOE#g4ny%DmJnc*_ zii-iD_iWp65$>=a_BSfoc&qA{aFrM9+7H)%1*Yv>>;k4{BmJ8(Gx!!>f|7u(a5y<^ z7YJ8rGB44i-GI~r>YiqzK@e=2`eVIN@Pz06i zoJbdTnW1Nih$rfgggvX^c@z2J7oKZo7>;l;Y^OBe;0yIw%Ej=M;IB`f;L-0l-m$6wrL&Doo4Ytry^7L`!3=@8nWPN7n63cE(BC;!Xl2G6$}?jc%4hrrmg; z+I>ano$R5zA*YfnWWwXk-LV2g+%><(L5UlD*%O>^wLH|!ev8v`Y`~k%ro>FP_WsB{ z*R7n84&ms?YwX4b%^slu_V z8rik7tCW`GY|UQZxW=Id}N5p9h&oRVNP7*FO#4k9c!tGxwXo!D(Bi z9q-o;dmPH4MU9Z-5qnG=EZWhm<7yzUeWL-%qA77lruZFJ=N~xuN^bBuZm#3&`x0i9 zu|Pi(e<0cHxd^Hb2?aW3&pnh*`O3a_(B6MFW@1wWprl=dILB zX>d4o74jF`rYkYI>*)02xJWCFY0K}GB*?G13@D?nOE~x4c*(Q?@d$y-Q#`BGsN=yIq)32@14a?J!M?+ zT+wn>xxv?$h*!LKLY0!5p;-%q2b!kOCD7f{OpDJoH6!GS{?_U;5dnKG1LgobJ$lRS!d=42#1c*} z)W+QgCxfyw`N!OEBx1?^77tmMo8ozi70<_W*e=;Gpe{UX?wCVCv9v4GEsCG&V7GJRJSMb-mv#m-x8_wL9 z=e^dh-s189`1^OR^}F8kOYQwjyW#>&;Z2LG#xuP{>nuGO02CsGN6cEQ2} z%3B_5EYB5QaWA6jh4l>FjcA%iy16yb+8}`v;f961SbR>TW@}>L>;1O|rLbznB8jG> zib(fN#VeTE+E7|ipOo1*7tXqle1L^+cJP;nNw!7(+FVddCd#quL1br5A2PHQA=cBj z7TV%@eos8@4uZEJFZ6cR&ARP9ng0Th*zrNjL5WZu@@+nk>NWLn6qc-?$H8H$(4DQrPs5qpM%~T>vr4YJaUTp9wMb zf;L4}nJ=;ME*2d2WGaa(mb!Q32S3HS!NBQqyU!zMBZi%ga|)nU_mNPvr#^6Jsxeje zHfBq4k0%uTtdm#3{@@$o1bo!)AGNEIzmz{{jv8k&$x)-04G=iW)`PRTZcV(Zb#p`B z&+UJ>!F#&8sK*m49xRIGR^Ga!XMJ5Or!4V{boUPQZYHJ4k zu{oa&!rU?NqodY^w>IT0(sxJqv3JP8!t7$L#*UMeC`WRkXdGb zZ+!sg?K~^8WFUq|)@`cLVeyigjlctY?C?cDvR1*!4Pdyy+QcO?_d;L`* z5hLTb=~U7rcR&0(WAa@b@<#@rsz3M+@bKP0IiR?8k_?iRH<%0MOJqKlFcbc#-zX%9$f%3AN7IV)A$1PNdaAeRU@_St^0{%v>)oo&}sT%y62 z=*E`fgVm`2)y+rpB}+WQ9eD@|VnTOu0c6}aud6>OHcC^JmmmrFEkOx|c`zBOX45nq zUjjs_poHA1+P;Urx-bml2;kZt#(^BcC}q+^!$0^d(wB?Zm3$T?96kE}`or+QAz3Zr zio-^Y=kgi^cb0!}(r5x~W{qGx)33d}!69!NO3{RfA6k8~PhzW6t4i#_1G@iSGknEu zEPN|Fu-ai}rF(9CiR8q+C%ZX0Xt;qqk*i$zrW3$*t=hb&W7rlazf#(3(&>Y-*0g06 zTbXtyeGOOxt5eoAS93dY+&>~&nTVb|?xJpQ^#N^_s%<0(hOynqol4v7Kgbp=q;>qd zB41A;9vY`9^-b?~4_?E8A9K?vz{b%WcWWX#QvMhLYY{$nFT`oQWTW3lI z3(EloZcwc@r#oMzQhr5Zt{V3I$moxgb}qTGQF|I1@+p8G++kZSy)}!BpWF7R0`(h< zk(66!0^w?TX|8mvlVvcEVp8&S%^ z$lzxzJj#N1B-BEE$tzD7*R2e`=e)IDtJAYzB4msTcT2Th=TCP7PyLs(GrD>_SD9#O z)yOr&{QdfO*ZXiB(blr#;YQ0&02?o2E^W$MoBjeG{6VULl<4S*!(?}b-pzrZaGkeV zoTsCU31l~i2A}OQ&0-VGB&PPx#a%|_zHXjsYL!3g-Reyzy*Q+wZ7L>>?I*JHE#xZj zg@1=s`i`}3$5UJeXZ&qTUV8zZ`A0~P>vr8~M+~oyO0X5MnM~jQaLKAhs92eGAkXRj zNzzFJc_I(ClXEwFjZm1qg#-W0O(KQn`uLjSHwy{nJEFh`CGzH(&hA)r&(}uwV`A
                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%0At)EMBqsIr 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 PKUe+n$-(~z*BSo@@0-!? diff --git a/lib/tcpdf/fonts/freeserif.ctg.z b/lib/tcpdf/fonts/freeserif.ctg.z index ba09c1dc10bddd72a5235dea8b1a840ba415edb5..fef758ffa4858e2cb4236e3645595499679a84fc 100644 GIT binary patch delta 12163 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 bFa@a5+Sdx#>d`9F+Q>4#p{Qgj`ucwWN}Az= delta 10478 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,'FontBBox'=>'[-879 -545 1767 934]','ItalicAngle'=>0,'Ascent'=>900,'Descent'=>-300,'Leading'=>90,'CapHeight'=>662,'XHeight'=>450,'StemV'=>70,'StemH'=>30,'AvgWidth'=>401,'MaxWidth'=>1752,'MissingWidth'=>700); -$cw=array(0=>700,32=>250,33=>333,34=>408,35=>500,36=>500,37=>833,38=>778,39=>180,40=>333,41=>333,42=>500,43=>564,44=>250,45=>333,46=>250,47=>278,48=>500,49=>500,50=>500,51=>500,52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>278,59=>278,60=>564,61=>564,62=>564,63=>444,64=>921,65=>722,66=>667,67=>667,68=>722,69=>611,70=>556,71=>722,72=>722,73=>333,74=>389,75=>722,76=>611,77=>889,78=>722,79=>722,80=>556,81=>722,82=>667,83=>556,84=>611,85=>722,86=>722,87=>944,88=>722,89=>722,90=>611,91=>333,92=>296,93=>333,94=>469,95=>500,96=>333,97=>444,98=>500,99=>444,100=>500,101=>444,102=>333,103=>500,104=>500,105=>278,106=>278,107=>500,108=>278,109=>778,110=>500,111=>500,112=>500,113=>500,114=>333,115=>389,116=>278,117=>500,118=>500,119=>722,120=>500,121=>500,122=>444,123=>480,124=>200,125=>480,126=>541,160=>250,161=>333,162=>500,163=>500,164=>500,165=>500,166=>200,167=>500,168=>333,169=>793,170=>276,171=>444,172=>564,173=>333,174=>792,175=>333,176=>400,177=>564,178=>320,179=>320,180=>333,181=>500,182=>483,183=>250,184=>333,185=>320,186=>310,187=>441,188=>750,189=>750,190=>750,191=>444,192=>722,193=>722,194=>722,195=>722,196=>722,197=>722,198=>889,199=>667,200=>611,201=>611,202=>611,203=>611,204=>333,205=>333,206=>333,207=>333,208=>722,209=>722,210=>722,211=>722,212=>722,213=>722,214=>722,215=>564,216=>722,217=>722,218=>722,219=>722,220=>722,221=>722,222=>576,223=>500,224=>444,225=>444,226=>444,227=>444,228=>444,229=>444,230=>651,231=>444,232=>444,233=>444,234=>444,235=>444,236=>278,237=>278,238=>278,239=>278,240=>501,241=>500,242=>500,243=>500,244=>500,245=>500,246=>500,247=>564,248=>500,249=>500,250=>500,251=>500,252=>500,253=>500,254=>496,255=>500,256=>722,257=>444,258=>722,259=>444,260=>722,261=>444,262=>667,263=>444,264=>667,265=>444,266=>667,267=>444,268=>667,269=>444,270=>722,271=>630,272=>722,273=>500,274=>611,275=>444,276=>611,277=>444,278=>611,279=>444,280=>611,281=>444,282=>611,283=>444,284=>722,285=>500,286=>722,287=>500,288=>722,289=>500,290=>722,291=>500,292=>722,293=>500,294=>722,295=>500,296=>333,297=>278,298=>333,299=>278,300=>333,301=>278,302=>333,303=>278,304=>333,305=>278,306=>703,307=>529,308=>389,309=>278,310=>722,311=>500,312=>500,313=>611,314=>278,315=>611,316=>278,317=>611,318=>396,319=>611,320=>444,321=>611,322=>278,323=>722,324=>500,325=>722,326=>500,327=>722,328=>500,329=>556,330=>721,331=>500,332=>722,333=>500,334=>722,335=>500,336=>722,337=>500,338=>889,339=>709,340=>667,341=>333,342=>667,343=>333,344=>667,345=>333,346=>556,347=>389,348=>556,349=>389,350=>556,351=>389,352=>556,353=>389,354=>611,355=>278,356=>611,357=>415,358=>611,359=>278,360=>722,361=>500,362=>722,363=>500,364=>722,365=>500,366=>722,367=>500,368=>722,369=>500,370=>722,371=>500,372=>944,373=>722,374=>722,375=>500,376=>722,377=>611,378=>444,379=>611,380=>444,381=>611,382=>444,383=>333,384=>500,385=>777,386=>576,387=>520,388=>646,389=>520,390=>667,391=>811,392=>558,393=>722,394=>830,395=>646,396=>500,397=>534,398=>611,399=>710,400=>518,401=>629,402=>358,403=>824,404=>665,405=>729,406=>333,407=>336,408=>810,409=>500,410=>286,411=>480,412=>944,413=>798,414=>500,415=>726,416=>722,417=>540,418=>1043,419=>778,420=>667,421=>500,422=>667,423=>556,424=>389,425=>627,426=>592,427=>285,428=>626,429=>376,430=>611,431=>782,432=>544,433=>743,434=>722,435=>813,436=>657,437=>611,438=>444,439=>530,440=>556,441=>389,442=>394,443=>500,444=>615,445=>439,446=>421,447=>500,448=>190,449=>350,450=>600,451=>333,452=>1333,453=>1166,454=>944,455=>1000,456=>889,457=>556,458=>1111,459=>1000,460=>778,461=>722,462=>444,463=>333,464=>278,465=>722,466=>500,467=>722,468=>500,469=>722,470=>500,471=>722,472=>500,473=>722,474=>500,475=>722,476=>500,477=>444,478=>722,479=>444,480=>722,481=>444,482=>889,483=>651,484=>722,485=>500,486=>722,487=>500,488=>722,489=>500,490=>722,491=>500,492=>722,493=>500,494=>530,495=>389,496=>278,497=>1333,498=>1166,499=>944,500=>722,501=>500,502=>944,503=>522,504=>722,505=>500,506=>722,507=>444,508=>889,509=>651,510=>722,511=>500,512=>722,513=>444,514=>722,515=>444,516=>611,517=>444,518=>611,519=>444,520=>333,521=>278,522=>333,523=>278,524=>722,525=>500,526=>722,527=>500,528=>667,529=>333,530=>667,531=>333,532=>722,533=>500,534=>722,535=>500,536=>556,537=>389,538=>611,539=>279,540=>424,541=>455,542=>722,543=>500,544=>715,545=>588,546=>565,547=>468,548=>611,549=>444,550=>722,551=>444,552=>611,553=>444,554=>722,555=>500,556=>722,557=>500,558=>722,559=>500,560=>722,561=>500,562=>722,563=>500,564=>407,565=>597,566=>379,567=>278,568=>771,569=>760,570=>722,571=>667,572=>444,573=>611,574=>611,575=>389,576=>444,577=>444,578=>444,579=>667,580=>722,581=>722,582=>611,583=>444,584=>389,585=>278,586=>810,587=>601,588=>667,589=>333,590=>722,591=>500,592=>444,593=>500,594=>507,595=>500,596=>444,597=>444,598=>606,599=>624,600=>444,601=>444,602=>703,603=>426,604=>426,605=>662,606=>454,607=>353,608=>624,609=>500,610=>484,611=>500,612=>582,613=>500,614=>500,615=>500,616=>278,617=>306,618=>278,619=>340,620=>294,621=>364,622=>556,623=>778,624=>778,625=>778,626=>596,627=>599,628=>500,629=>491,630=>668,631=>693,632=>640,633=>336,634=>339,635=>444,636=>338,637=>339,638=>372,639=>372,640=>457,641=>456,642=>389,643=>466,644=>483,645=>466,646=>506,647=>278,648=>336,649=>512,650=>517,651=>514,652=>500,653=>722,654=>500,655=>510,656=>600,657=>444,658=>389,659=>456,660=>444,661=>444,662=>444,663=>444,664=>722,665=>468,666=>454,667=>623,668=>524,669=>354,670=>505,671=>443,672=>625,673=>444,674=>444,675=>798,676=>795,677=>805,678=>539,679=>549,680=>678,681=>722,682=>533,683=>554,684=>500,685=>500,686=>611,687=>716,688=>332,689=>333,690=>240,691=>228,692=>228,693=>299,694=>300,695=>477,696=>328,697=>250,698=>408,699=>333,700=>333,701=>333,702=>333,703=>333,704=>258,705=>258,706=>374,707=>374,708=>383,709=>383,710=>333,711=>333,712=>250,713=>333,714=>333,715=>333,716=>250,717=>333,718=>333,719=>333,720=>278,721=>278,722=>333,723=>333,724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,731=>333,732=>333,733=>382,734=>336,735=>352,736=>331,737=>187,738=>263,739=>332,740=>300,741=>460,742=>460,743=>460,744=>460,745=>460,746=>477,747=>475,748=>339,749=>333,750=>444,751=>383,752=>383,753=>294,754=>294,755=>327,756=>261,757=>437,758=>437,759=>333,760=>278,761=>175,762=>175,763=>175,764=>175,765=>337,766=>337,767=>326,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,859=>0,860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,867=>0,868=>0,869=>0,870=>0,871=>0,872=>0,873=>0,874=>0,875=>0,876=>0,877=>0,878=>0,879=>0,880=>535,881=>433,882=>537,883=>497,884=>199,885=>199,890=>332,894=>278,900=>267,901=>333,902=>722,903=>250,904=>800,905=>902,906=>507,908=>818,910=>861,911=>871,912=>286,913=>722,914=>667,915=>586,916=>660,917=>611,918=>611,919=>722,920=>726,921=>333,922=>722,923=>722,924=>889,925=>722,926=>628,927=>722,928=>722,929=>556,931=>627,932=>611,933=>696,934=>742,935=>722,936=>808,937=>743,938=>333,939=>718,940=>583,941=>426,942=>536,943=>286,944=>514,945=>583,946=>527,947=>480,948=>534,949=>426,950=>466,951=>536,952=>534,953=>286,954=>544,955=>476,956=>536,957=>480,958=>514,959=>500,960=>587,961=>528,962=>452,963=>537,964=>420,965=>514,966=>643,967=>480,968=>693,969=>693,970=>286,971=>514,972=>500,973=>514,974=>693,976=>534,977=>587,978=>620,979=>809,980=>620,981=>640,982=>684,983=>534,984=>556,985=>500,986=>594,987=>426,988=>556,989=>445,990=>656,991=>400,992=>722,993=>570,994=>960,995=>673,996=>592,997=>522,998=>580,999=>460,1000=>500,1001=>338,1002=>842,1003=>593,1004=>564,1005=>412,1006=>634,1007=>447,1008=>534,1009=>534,1010=>485,1011=>278,1012=>726,1013=>361,1014=>361,1015=>576,1016=>542,1017=>667,1018=>889,1019=>709,1020=>534,1021=>667,1022=>1000,1023=>1000,1024=>613,1025=>613,1026=>748,1027=>570,1028=>659,1029=>487,1030=>337,1031=>337,1032=>385,1033=>943,1034=>985,1035=>827,1036=>669,1037=>723,1038=>709,1039=>723,1040=>711,1041=>576,1042=>626,1043=>570,1044=>639,1045=>613,1046=>937,1047=>580,1048=>723,1049=>723,1050=>669,1051=>684,1052=>891,1053=>723,1054=>722,1055=>723,1056=>576,1057=>659,1058=>608,1059=>709,1060=>750,1061=>714,1062=>728,1063=>682,1064=>984,1065=>988,1066=>725,1067=>863,1068=>576,1069=>659,1070=>966,1071=>648,1072=>434,1073=>495,1074=>468,1075=>388,1076=>490,1077=>436,1078=>662,1079=>406,1080=>524,1081=>524,1082=>498,1083=>490,1084=>632,1085=>524,1086=>491,1087=>524,1088=>500,1089=>424,1090=>422,1091=>471,1092=>694,1093=>482,1094=>524,1095=>506,1096=>756,1097=>756,1098=>505,1099=>626,1100=>431,1101=>432,1102=>664,1103=>492,1104=>434,1105=>434,1106=>479,1107=>388,1108=>432,1109=>347,1110=>269,1111=>278,1112=>278,1113=>677,1114=>711,1115=>514,1116=>498,1117=>524,1118=>471,1119=>524,1120=>978,1121=>664,1122=>718,1123=>506,1124=>947,1125=>647,1126=>901,1127=>635,1128=>1248,1129=>894,1130=>937,1131=>654,1132=>1278,1133=>907,1134=>516,1135=>391,1136=>870,1137=>694,1138=>726,1139=>491,1140=>780,1141=>550,1142=>780,1143=>550,1144=>1207,1145=>946,1146=>877,1147=>611,1148=>978,1149=>664,1150=>978,1151=>664,1152=>594,1153=>428,1154=>232,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,1162=>715,1163=>522,1164=>562,1165=>430,1166=>556,1167=>511,1168=>564,1169=>398,1170=>586,1171=>392,1172=>623,1173=>463,1174=>1001,1175=>688,1176=>580,1177=>401,1178=>696,1179=>517,1180=>713,1181=>532,1182=>669,1183=>498,1184=>813,1185=>572,1186=>730,1187=>524,1188=>934,1189=>652,1190=>1030,1191=>722,1192=>750,1193=>516,1194=>659,1195=>424,1196=>608,1197=>452,1198=>722,1199=>563,1200=>722,1201=>562,1202=>773,1203=>518,1204=>972,1205=>693,1206=>681,1207=>506,1208=>726,1209=>540,1210=>682,1211=>510,1212=>866,1213=>553,1214=>866,1215=>553,1216=>333,1217=>937,1218=>662,1219=>618,1220=>448,1221=>702,1222=>490,1223=>723,1224=>499,1225=>723,1226=>547,1227=>682,1228=>506,1229=>891,1230=>632,1231=>337,1232=>711,1233=>434,1234=>711,1235=>434,1236=>891,1237=>630,1238=>623,1239=>436,1240=>710,1241=>436,1242=>710,1243=>436,1244=>937,1245=>662,1246=>580,1247=>406,1248=>530,1249=>366,1250=>723,1251=>524,1252=>723,1253=>524,1254=>722,1255=>491,1256=>722,1257=>491,1258=>722,1259=>491,1260=>659,1261=>432,1262=>709,1263=>471,1264=>709,1265=>471,1266=>709,1267=>471,1268=>682,1269=>506,1270=>572,1271=>388,1272=>863,1273=>626,1274=>572,1275=>388,1276=>720,1277=>445,1278=>722,1279=>495,1280=>556,1281=>504,1282=>900,1283=>634,1284=>803,1285=>518,1286=>553,1287=>471,1288=>964,1289=>637,1290=>968,1291=>682,1292=>722,1293=>433,1294=>714,1295=>504,1296=>532,1297=>407,1298=>702,1299=>489,1300=>960,1301=>644,1302=>823,1303=>698,1304=>961,1305=>748,1306=>722,1307=>505,1308=>947,1309=>693,1310=>669,1311=>498,1312=>992,1313=>710,1314=>1029,1315=>742,1329=>794,1330=>712,1331=>782,1332=>854,1333=>711,1334=>702,1335=>707,1336=>655,1337=>777,1338=>782,1339=>710,1340=>663,1341=>830,1342=>917,1343=>672,1344=>469,1345=>666,1346=>858,1347=>685,1348=>856,1349=>618,1350=>858,1351=>709,1352=>719,1353=>714,1354=>731,1355=>702,1356=>874,1357=>719,1358=>844,1359=>519,1360=>703,1361=>608,1362=>586,1363=>750,1364=>780,1365=>714,1366=>684,1369=>120,1370=>120,1371=>269,1372=>307,1373=>241,1374=>312,1375=>300,1377=>786,1378=>506,1379=>542,1380=>541,1381=>506,1382=>503,1383=>478,1384=>499,1385=>541,1386=>539,1387=>508,1388=>289,1389=>750,1390=>540,1391=>513,1392=>508,1393=>503,1394=>531,1395=>518,1396=>500,1397=>243,1398=>473,1399=>406,1400=>499,1401=>407,1402=>793,1403=>414,1404=>463,1405=>500,1406=>516,1407=>758,1408=>504,1409=>466,1410=>288,1411=>758,1412=>510,1413=>501,1414=>562,1415=>543,1417=>278,1418=>280,1425=>0,1426=>0,1427=>0,1428=>0,1429=>0,1430=>0,1431=>418,1432=>0,1433=>0,1434=>0,1435=>0,1436=>0,1437=>0,1438=>0,1439=>0,1440=>0,1441=>0,1442=>0,1443=>0,1444=>0,1445=>0,1446=>0,1447=>0,1448=>0,1449=>0,1450=>0,1451=>0,1452=>0,1453=>0,1454=>0,1455=>0,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0,1467=>0,1468=>0,1469=>0,1470=>440,1471=>0,1472=>126,1473=>0,1474=>0,1475=>418,1476=>0,1477=>0,1478=>350,1479=>0,1488=>537,1489=>537,1490=>350,1491=>537,1492=>537,1493=>350,1494=>350,1495=>537,1496=>537,1497=>350,1498=>537,1499=>537,1500=>537,1501=>537,1502=>537,1503=>350,1504=>350,1505=>537,1506=>537,1507=>537,1508=>537,1509=>537,1510=>537,1511=>537,1512=>537,1513=>537,1514=>537,1520=>537,1521=>537,1522=>537,1523=>396,1524=>396,1548=>226,1563=>250,1567=>473,1569=>350,1570=>321,1571=>249,1572=>399,1573=>249,1574=>776,1575=>249,1576=>950,1577=>424,1578=>925,1579=>924,1580=>738,1581=>748,1582=>701,1583=>397,1584=>399,1585=>328,1586=>331,1587=>951,1588=>949,1589=>949,1590=>949,1591=>557,1592=>550,1593=>625,1594=>602,1601=>801,1602=>696,1603=>757,1604=>655,1605=>549,1606=>651,1607=>424,1608=>399,1609=>776,1610=>776,1611=>0,1613=>0,1614=>0,1615=>0,1616=>0,1617=>0,1618=>0,1619=>0,1620=>0,1621=>0,1632=>297,1633=>254,1634=>427,1635=>497,1636=>440,1637=>465,1638=>466,1639=>421,1640=>459,1641=>424,1643=>212,1652=>300,1662=>926,1670=>750,1688=>338,1711=>874,1740=>776,1748=>176,1920=>450,1921=>501,1922=>582,1923=>544,1924=>482,1925=>433,1926=>448,1927=>462,1928=>474,1929=>471,1930=>469,1931=>537,1932=>499,1933=>514,1934=>471,1935=>572,1936=>880,1937=>440,1938=>476,1939=>594,1940=>469,1941=>448,1942=>441,1943=>519,1944=>573,1945=>459,1946=>447,1947=>496,1948=>541,1949=>887,1950=>883,1951=>964,1952=>558,1953=>505,1954=>471,1955=>554,1956=>459,1957=>486,1958=>36,1959=>36,1960=>43,1961=>45,1962=>43,1963=>45,1964=>45,1965=>45,1966=>45,1967=>45,1968=>0,2304=>0,2305=>0,2306=>398,2307=>398,2308=>862,2309=>862,2310=>1042,2311=>553,2312=>553,2313=>597,2314=>848,2315=>967,2316=>828,2317=>654,2318=>654,2319=>654,2320=>654,2321=>1042,2322=>1042,2323=>1042,2324=>1042,2325=>743,2326=>798,2327=>694,2328=>694,2329=>730,2330=>734,2331=>888,2332=>814,2333=>834,2334=>734,2335=>629,2336=>629,2337=>653,2338=>609,2339=>694,2340=>654,2341=>694,2342=>588,2343=>694,2344=>654,2345=>654,2346=>615,2347=>788,2348=>621,2349=>694,2350=>694,2351=>694,2352=>575,2353=>575,2354=>787,2355=>848,2356=>848,2357=>621,2358=>654,2359=>615,2360=>734,2361=>609,2364=>398,2365=>569,2366=>341,2367=>341,2368=>341,2369=>0,2370=>0,2371=>0,2372=>0,2373=>0,2374=>0,2375=>615,2376=>615,2377=>341,2378=>341,2379=>341,2380=>341,2381=>0,2382=>0,2384=>1047,2385=>0,2386=>0,2387=>0,2388=>0,2389=>0,2392=>743,2393=>798,2394=>694,2395=>814,2396=>653,2397=>609,2398=>788,2399=>694,2400=>967,2401=>828,2402=>0,2403=>0,2404=>398,2405=>478,2406=>455,2407=>420,2408=>569,2409=>509,2410=>702,2411=>629,2412=>569,2413=>702,2414=>609,2415=>609,2416=>626,2417=>398,2418=>862,2425=>814,2426=>694,2427=>654,2428=>814,2429=>569,2430=>730,2431=>621,2433=>0,2434=>300,2435=>312,2437=>594,2438=>776,2439=>469,2440=>513,2441=>535,2442=>561,2443=>604,2444=>481,2447=>580,2448=>604,2451=>540,2452=>620,2453=>570,2454=>485,2455=>484,2456=>471,2457=>457,2458=>408,2459=>452,2460=>591,2461=>551,2462=>771,2463=>414,2464=>404,2465=>522,2466=>415,2467=>450,2468=>551,2469=>477,2470=>478,2471=>449,2472=>448,2474=>535,2475=>611,2476=>443,2477=>534,2478=>492,2479=>474,2480=>442,2482=>542,2486=>507,2487=>467,2488=>523,2489=>419,2492=>0,2493=>419,2494=>202,2495=>189,2496=>202,2497=>0,2498=>0,2499=>0,2500=>0,2503=>294,2504=>289,2507=>774,2508=>825,2509=>0,2510=>356,2519=>219,2524=>523,2525=>420,2527=>469,2528=>604,2529=>481,2530=>0,2531=>0,2534=>500,2535=>437,2536=>479,2537=>507,2538=>497,2539=>500,2540=>482,2541=>503,2542=>517,2543=>481,2544=>443,2545=>443,2546=>429,2547=>383,2548=>432,2549=>478,2550=>539,2551=>158,2552=>365,2553=>280,2554=>357,2561=>0,2562=>0,2563=>385,2565=>728,2566=>884,2567=>656,2568=>656,2569=>580,2570=>580,2575=>482,2576=>728,2579=>580,2580=>728,2581=>534,2582=>518,2583=>602,2584=>674,2585=>530,2586=>502,2587=>576,2588=>476,2589=>558,2590=>501,2591=>510,2592=>540,2593=>508,2594=>512,2595=>558,2596=>468,2597=>518,2598=>488,2599=>518,2600=>522,2602=>518,2603=>490,2604=>546,2605=>500,2606=>530,2607=>654,2608=>522,2610=>710,2611=>710,2613=>498,2614=>530,2616=>530,2617=>501,2620=>286,2622=>156,2623=>174,2624=>174,2625=>0,2626=>0,2631=>0,2632=>0,2635=>0,2636=>0,2637=>0,2641=>0,2649=>534,2650=>618,2651=>492,2652=>484,2654=>506,2662=>616,2663=>480,2664=>560,2665=>480,2666=>468,2667=>492,2668=>514,2669=>538,2670=>572,2671=>560,2672=>0,2673=>0,2674=>498,2675=>596,2676=>900,2677=>0,2946=>0,2947=>616,2949=>910,2950=>1072,2951=>848,2952=>591,2953=>492,2954=>1123,2958=>602,2959=>602,2960=>691,2962=>753,2963=>753,2964=>1597,2965=>677,2969=>697,2970=>607,2972=>691,2974=>871,2975=>589,2979=>1230,2980=>688,2984=>560,2985=>911,2986=>477,2990=>625,2991=>672,2992=>452,2993=>553,2994=>651,2995=>804,2996=>645,2997=>740,2998=>767,2999=>865,3000=>870,3001=>1067,3006=>452,3007=>176,3008=>0,3009=>404,3010=>601,3014=>690,3015=>500,3016=>840,3018=>1150,3019=>1000,3020=>1488,3021=>0,3024=>753,3031=>844,3046=>500,3047=>677,3048=>829,3049=>673,3050=>793,3051=>845,3052=>861,3053=>602,3054=>910,3055=>807,3056=>553,3057=>697,3058=>906,3059=>609,3060=>853,3061=>1585,3062=>664,3063=>978,3064=>1325,3065=>845,3066=>731,3330=>417,3331=>221,3333=>1055,3334=>1195,3335=>792,3336=>1469,3337=>570,3338=>1244,3339=>676,3340=>897,3342=>1008,3343=>1008,3344=>1538,3346=>586,3347=>981,3348=>1254,3349=>776,3350=>798,3351=>691,3352=>1095,3353=>811,3354=>728,3355=>963,3356=>704,3357=>1245,3358=>1106,3359=>466,3360=>531,3361=>984,3362=>1028,3363=>1102,3364=>780,3365=>732,3366=>485,3367=>737,3368=>747,3370=>780,3371=>962,3372=>1023,3373=>500,3374=>511,3375=>792,3376=>530,3377=>512,3378=>712,3379=>556,3380=>519,3381=>716,3382=>786,3383=>921,3384=>977,3385=>978,3389=>375,3390=>403,3391=>283,3392=>323,3393=>275,3394=>258,3395=>378,3396=>378,3398=>542,3399=>478,3400=>1070,3402=>0,3403=>0,3404=>0,3405=>89,3415=>677,3424=>676,3425=>1006,3426=>0,3427=>0,3430=>559,3431=>660,3432=>674,3433=>933,3434=>671,3435=>699,3436=>704,3437=>694,3438=>678,3439=>684,3440=>981,3441=>742,3442=>1056,3443=>660,3444=>664,3445=>870,3449=>864,3450=>1137,3451=>776,3452=>534,3453=>860,3454=>780,3455=>866,3458=>254,3459=>254,3461=>616,3462=>922,3463=>908,3464=>907,3465=>626,3466=>615,3467=>763,3468=>1109,3469=>1019,3470=>1311,3471=>1050,3472=>1477,3473=>677,3474=>746,3475=>1314,3476=>741,3477=>741,3478=>1170,3482=>894,3483=>715,3484=>715,3485=>719,3486=>741,3487=>834,3488=>719,3489=>677,3490=>677,3491=>1302,3492=>1005,3493=>919,3494=>677,3495=>719,3496=>677,3497=>741,3498=>677,3499=>1123,3500=>743,3501=>779,3502=>677,3503=>444,3504=>741,3505=>921,3507=>444,3508=>677,3509=>677,3510=>715,3511=>787,3512=>719,3513=>741,3514=>719,3515=>604,3517=>763,3520=>719,3521=>715,3522=>677,3523=>719,3524=>787,3525=>763,3526=>677,3530=>0,3535=>329,3536=>319,3537=>319,3538=>0,3539=>0,3540=>0,3542=>0,3544=>329,3545=>691,3546=>1062,3547=>1333,3548=>1278,3549=>1235,3550=>1292,3551=>461,3570=>680,3571=>481,3572=>948,3585=>532,3586=>472,3587=>534,3588=>532,3589=>544,3590=>583,3591=>417,3592=>488,3593=>604,3594=>472,3595=>534,3596=>716,3597=>717,3598=>568,3599=>568,3600=>457,3601=>637,3602=>731,3603=>790,3604=>531,3605=>542,3606=>522,3607=>577,3608=>468,3609=>603,3610=>554,3611=>554,3612=>556,3613=>556,3614=>604,3615=>604,3616=>568,3617=>542,3618=>496,3619=>442,3620=>530,3621=>512,3622=>568,3623=>478,3624=>543,3625=>614,3626=>525,3627=>578,3628=>659,3629=>514,3630=>514,3631=>450,3632=>402,3633=>0,3634=>378,3635=>415,3636=>0,3637=>0,3638=>0,3639=>0,3640=>0,3641=>0,3642=>0,3647=>620,3648=>286,3649=>521,3650=>447,3651=>426,3652=>424,3653=>333,3654=>453,3655=>0,3656=>0,3657=>0,3658=>0,3659=>0,3660=>0,3661=>0,3662=>0,3663=>657,3664=>528,3665=>528,3666=>571,3667=>594,3668=>631,3669=>632,3670=>478,3671=>713,3672=>597,3673=>565,3674=>615,3675=>1381,4256=>453,4257=>448,4258=>546,4259=>619,4260=>478,4261=>481,4262=>459,4263=>707,4264=>467,4265=>471,4266=>842,4267=>464,4268=>443,4269=>707,4270=>460,4271=>465,4272=>686,4273=>440,4274=>550,4275=>561,4276=>580,4277=>467,4278=>630,4279=>466,4280=>517,4281=>456,4282=>502,4283=>464,4284=>534,4285=>440,4286=>443,4287=>522,4288=>460,4289=>463,4290=>536,4291=>455,4292=>468,4293=>449,4304=>454,4305=>452,4306=>544,4307=>629,4308=>451,4309=>452,4310=>452,4311=>702,4312=>451,4313=>452,4314=>820,4315=>451,4316=>453,4317=>695,4318=>449,4319=>448,4320=>694,4321=>501,4322=>544,4323=>518,4324=>560,4325=>450,4326=>627,4327=>452,4328=>490,4329=>452,4330=>485,4331=>452,4332=>485,4333=>443,4334=>500,4335=>582,4336=>455,4337=>451,4338=>482,4339=>414,4340=>453,4341=>418,4342=>741,4343=>452,4344=>452,4345=>544,4346=>454,4347=>410,4348=>339,4608=>583,4609=>770,4610=>560,4611=>525,4612=>525,4613=>583,4614=>758,4616=>598,4617=>787,4618=>817,4619=>583,4620=>758,4621=>612,4622=>875,4623=>817,4624=>817,4625=>1050,4626=>1050,4627=>817,4628=>1050,4629=>817,4630=>787,4631=>1021,4632=>933,4633=>1137,4634=>1067,4635=>980,4636=>1065,4637=>962,4638=>962,4639=>1097,4640=>831,4641=>1021,4642=>851,4643=>735,4644=>875,4645=>968,4646=>817,4647=>881,4648=>583,4649=>642,4650=>583,4651=>758,4652=>700,4653=>583,4654=>700,4655=>758,4656=>583,4657=>787,4658=>787,4659=>583,4660=>729,4661=>583,4662=>583,4663=>817,4664=>642,4665=>817,4666=>846,4667=>642,4668=>758,4669=>744,4670=>642,4671=>817,4672=>700,4673=>700,4674=>700,4675=>758,4676=>700,4677=>700,4678=>729,4680=>846,4682=>1079,4683=>700,4684=>700,4685=>1021,4688=>700,4689=>700,4690=>700,4691=>758,4692=>700,4693=>758,4694=>729,4696=>846,4698=>1079,4699=>700,4700=>700,4701=>1021,4704=>525,4705=>758,4706=>758,4707=>525,4708=>700,4709=>773,4710=>525,4711=>787,4712=>525,4713=>758,4714=>758,4715=>525,4716=>700,4717=>773,4718=>525,4719=>525,4720=>729,4721=>729,4722=>729,4723=>802,4724=>729,4725=>729,4726=>758,4727=>729,4728=>758,4729=>758,4730=>758,4731=>817,4732=>758,4733=>817,4734=>758,4735=>758,4736=>612,4737=>817,4738=>817,4739=>612,4740=>787,4741=>583,4742=>875,4744=>962,4746=>992,4747=>700,4748=>758,4749=>904,4752=>408,4753=>583,4754=>525,4755=>554,4756=>481,4757=>554,4758=>642,4759=>671,4760=>700,4761=>758,4762=>729,4763=>700,4764=>671,4765=>700,4766=>758,4767=>700,4768=>583,4769=>735,4770=>822,4771=>583,4772=>793,4773=>583,4774=>583,4775=>694,4776=>554,4777=>729,4778=>773,4779=>554,4780=>700,4781=>554,4782=>554,4784=>992,4786=>1021,4787=>671,4788=>787,4789=>904,4792=>729,4793=>904,4794=>948,4795=>729,4796=>875,4797=>729,4798=>729,4800=>1137,4802=>1167,4803=>758,4804=>875,4805=>1108,4808=>758,4809=>875,4810=>700,4811=>700,4812=>700,4813=>992,4814=>758,4816=>554,4817=>787,4818=>758,4819=>583,4820=>758,4821=>496,4822=>612,4824=>525,4825=>700,4826=>700,4827=>525,4828=>685,4829=>729,4830=>510,4831=>729,4832=>962,4833=>962,4834=>962,4835=>962,4836=>962,4837=>1021,4838=>962,4839=>962,4840=>467,4841=>525,4842=>671,4843=>612,4844=>612,4845=>671,4846=>671,4848=>612,4849=>875,4850=>817,4851=>642,4852=>729,4853=>729,4854=>758,4855=>817,4856=>700,4857=>758,4858=>715,4859=>700,4860=>700,4861=>787,4862=>758,4863=>700,4864=>700,4865=>758,4866=>715,4867=>700,4868=>700,4869=>787,4870=>758,4871=>700,4872=>467,4873=>671,4874=>671,4875=>612,4876=>612,4877=>583,4878=>525,4880=>846,4882=>904,4883=>554,4884=>700,4885=>817,4888=>525,4889=>729,4890=>729,4891=>612,4892=>671,4893=>583,4894=>525,4896=>817,4897=>1021,4898=>1021,4899=>817,4900=>992,4901=>758,4902=>817,4903=>1021,4904=>1079,4905=>1137,4906=>1137,4907=>1050,4908=>1312,4909=>1050,4910=>1050,4911=>1123,4912=>647,4913=>793,4914=>822,4915=>647,4916=>793,4917=>764,4918=>583,4919=>647,4920=>583,4921=>793,4922=>822,4923=>583,4924=>793,4925=>764,4926=>583,4927=>793,4928=>540,4929=>758,4930=>583,4931=>467,4932=>583,4933=>481,4934=>612,4936=>758,4937=>700,4938=>758,4939=>700,4940=>831,4941=>671,4942=>758,4943=>700,4944=>758,4945=>758,4946=>758,4947=>817,4948=>758,4949=>758,4950=>817,4951=>758,4952=>642,4953=>980,4954=>758,4961=>233,4962=>583,4963=>408,4964=>408,4965=>525,4966=>525,4967=>233,4968=>700,4969=>671,4970=>612,4971=>642,4972=>642,4973=>642,4974=>583,4975=>700,4976=>758,4977=>642,4978=>583,4979=>700,4980=>729,4981=>720,4982=>583,4983=>758,4984=>700,4985=>904,4986=>612,4987=>583,4988=>875,5024=>711,5025=>678,5026=>604,5027=>667,5028=>796,5029=>301,5030=>516,5031=>544,5032=>457,5033=>716,5034=>703,5035=>383,5036=>628,5037=>709,5038=>455,5039=>601,5040=>472,5041=>574,5042=>730,5043=>939,5044=>498,5045=>528,5046=>667,5047=>891,5048=>505,5049=>792,5050=>957,5051=>725,5052=>595,5053=>733,5054=>698,5055=>638,5056=>720,5057=>732,5058=>624,5059=>638,5060=>565,5061=>903,5062=>655,5063=>681,5064=>675,5065=>949,5066=>683,5067=>547,5068=>693,5069=>732,5070=>529,5071=>569,5072=>536,5073=>677,5074=>631,5075=>542,5076=>973,5077=>543,5078=>607,5079=>652,5080=>652,5081=>693,5082=>514,5083=>803,5084=>658,5085=>597,5086=>627,5087=>659,5088=>679,5089=>706,5090=>563,5091=>618,5092=>767,5093=>776,5094=>731,5095=>492,5096=>808,5097=>823,5098=>796,5099=>689,5100=>716,5101=>518,5102=>521,5103=>719,5104=>563,5105=>776,5106=>634,5107=>822,5108=>621,5920=>502,5921=>502,5922=>500,5923=>498,5924=>500,5925=>502,5926=>502,5927=>502,5928=>500,5929=>503,5930=>502,5931=>502,5932=>500,5933=>500,5934=>500,5935=>796,5936=>500,5937=>502,5938=>0,5939=>0,5940=>0,5941=>230,5942=>397,6480=>537,6481=>537,6482=>531,6483=>678,6484=>682,6485=>628,6486=>732,6487=>721,6488=>598,6489=>583,6490=>702,6491=>554,6492=>683,6493=>554,6494=>710,6495=>695,6496=>523,6497=>678,6498=>589,6499=>272,6500=>506,6501=>515,6502=>515,6503=>210,6504=>210,6505=>515,6506=>515,6507=>515,6508=>229,6509=>705,6512=>649,6513=>538,6514=>568,6515=>520,6516=>544,6656=>820,6657=>958,6658=>758,6659=>859,6660=>958,6661=>727,6662=>904,6663=>940,6664=>850,6665=>905,6666=>838,6667=>961,6668=>1000,6669=>880,6670=>1189,6671=>1246,6672=>1177,6673=>757,6674=>1246,6675=>1192,6676=>709,6677=>1192,6678=>1075,6679=>0,6680=>0,6681=>534,6682=>690,6683=>0,6686=>697,6687=>500,7424=>484,7425=>595,7426=>651,7427=>446,7428=>446,7429=>483,7430=>483,7431=>409,7432=>426,7433=>278,7434=>260,7435=>483,7436=>409,7437=>595,7438=>483,7439=>483,7440=>435,7441=>507,7442=>507,7443=>673,7444=>709,7445=>378,7446=>483,7447=>483,7448=>372,7449=>456,7450=>446,7451=>409,7452=>483,7453=>488,7454=>660,7455=>500,7456=>483,7457=>632,7458=>409,7459=>355,7460=>444,7461=>681,7462=>392,7463=>483,7464=>483,7465=>372,7466=>541,7467=>470,7468=>484,7469=>595,7470=>446,7471=>446,7472=>483,7473=>409,7474=>409,7475=>483,7476=>483,7477=>223,7478=>260,7479=>483,7480=>409,7481=>595,7482=>483,7483=>483,7484=>483,7485=>378,7486=>372,7487=>446,7488=>409,7489=>483,7490=>632,7491=>297,7492=>297,7493=>335,7494=>440,7495=>335,7496=>335,7497=>297,7498=>297,7499=>285,7500=>285,7501=>335,7502=>186,7503=>335,7504=>521,7505=>335,7506=>335,7507=>297,7508=>483,7509=>483,7510=>335,7511=>186,7512=>335,7513=>326,7514=>521,7515=>335,7516=>442,7517=>353,7518=>321,7519=>357,7520=>430,7521=>321,7522=>186,7523=>223,7524=>335,7525=>335,7526=>353,7527=>321,7528=>353,7529=>430,7530=>321,7531=>754,7532=>500,7533=>500,7534=>333,7535=>778,7536=>500,7537=>500,7538=>333,7539=>333,7540=>389,7541=>278,7542=>444,7543=>500,7544=>483,7545=>447,7546=>774,7547=>280,7548=>278,7549=>500,7550=>483,7551=>514,7552=>500,7553=>500,7554=>333,7555=>676,7556=>525,7557=>278,7558=>802,7559=>507,7560=>500,7561=>333,7562=>389,7563=>384,7564=>500,7565=>500,7566=>444,7567=>602,7568=>637,7569=>648,7570=>590,7571=>559,7572=>426,7573=>590,7574=>413,7575=>444,7576=>360,7577=>638,7578=>389,7579=>335,7580=>293,7581=>283,7582=>337,7583=>299,7584=>229,7585=>251,7586=>335,7587=>322,7588=>188,7589=>212,7590=>278,7591=>182,7592=>240,7593=>233,7594=>208,7595=>287,7596=>499,7597=>533,7598=>401,7599=>374,7600=>330,7601=>329,7602=>426,7603=>262,7604=>312,7605=>197,7606=>344,7607=>336,7608=>323,7609=>334,7610=>325,7611=>293,7612=>403,7613=>288,7614=>257,7615=>354,7680=>722,7681=>444,7682=>667,7683=>500,7684=>667,7685=>500,7686=>667,7687=>500,7688=>667,7689=>444,7690=>722,7691=>500,7692=>722,7693=>500,7694=>722,7695=>500,7696=>720,7697=>500,7698=>722,7699=>500,7700=>611,7701=>444,7702=>611,7703=>444,7704=>611,7705=>444,7706=>611,7707=>444,7708=>611,7709=>444,7710=>556,7711=>333,7712=>722,7713=>500,7714=>722,7715=>500,7716=>722,7717=>500,7718=>722,7719=>500,7720=>722,7721=>500,7722=>722,7723=>500,7724=>333,7725=>278,7726=>333,7727=>278,7728=>722,7729=>500,7730=>722,7731=>500,7732=>722,7733=>500,7734=>611,7735=>278,7736=>611,7737=>278,7738=>611,7739=>278,7740=>611,7741=>278,7742=>889,7743=>778,7744=>889,7745=>778,7746=>889,7747=>778,7748=>722,7749=>500,7750=>722,7751=>500,7752=>722,7753=>500,7754=>722,7755=>500,7756=>722,7757=>500,7758=>722,7759=>500,7760=>722,7761=>500,7762=>722,7763=>500,7764=>556,7765=>500,7766=>556,7767=>500,7768=>667,7769=>333,7770=>667,7771=>333,7772=>667,7773=>333,7774=>667,7775=>333,7776=>556,7777=>389,7778=>556,7779=>389,7780=>556,7781=>389,7782=>556,7783=>389,7784=>556,7785=>389,7786=>611,7787=>278,7788=>611,7789=>278,7790=>611,7791=>278,7792=>611,7793=>278,7794=>722,7795=>500,7796=>722,7797=>500,7798=>722,7799=>500,7800=>722,7801=>500,7802=>722,7803=>500,7804=>722,7805=>500,7806=>722,7807=>500,7808=>944,7809=>722,7810=>944,7811=>722,7812=>944,7813=>722,7814=>944,7815=>722,7816=>944,7817=>722,7818=>722,7819=>500,7820=>722,7821=>500,7822=>722,7823=>500,7824=>611,7825=>444,7826=>611,7827=>444,7828=>611,7829=>444,7830=>500,7831=>278,7832=>722,7833=>500,7834=>444,7835=>333,7836=>333,7837=>333,7838=>659,7839=>534,7840=>722,7841=>444,7842=>722,7843=>444,7844=>722,7845=>444,7846=>722,7847=>444,7848=>722,7849=>454,7850=>722,7851=>444,7852=>722,7853=>444,7854=>722,7855=>444,7856=>722,7857=>444,7858=>722,7859=>454,7860=>722,7861=>444,7862=>722,7863=>444,7864=>611,7865=>444,7866=>611,7867=>444,7868=>611,7869=>444,7870=>611,7871=>444,7872=>611,7873=>444,7874=>613,7875=>444,7876=>611,7877=>444,7878=>611,7879=>444,7880=>333,7881=>278,7882=>333,7883=>278,7884=>722,7885=>500,7886=>722,7887=>500,7888=>722,7889=>500,7890=>722,7891=>500,7892=>722,7893=>500,7894=>722,7895=>500,7896=>722,7897=>500,7898=>722,7899=>540,7900=>722,7901=>540,7902=>720,7903=>540,7904=>722,7905=>540,7906=>722,7907=>540,7908=>722,7909=>500,7910=>717,7911=>500,7912=>782,7913=>544,7914=>782,7915=>544,7916=>782,7917=>544,7918=>782,7919=>544,7920=>782,7921=>544,7922=>722,7923=>500,7924=>722,7925=>500,7926=>722,7927=>501,7928=>722,7929=>500,7930=>914,7931=>514,7932=>500,7933=>342,7934=>722,7935=>530,7936=>583,7937=>583,7938=>583,7939=>583,7940=>583,7941=>583,7942=>583,7943=>583,7944=>722,7945=>722,7946=>813,7947=>817,7948=>763,7949=>765,7950=>720,7951=>722,7952=>426,7953=>426,7954=>426,7955=>426,7956=>426,7957=>426,7960=>770,7961=>770,7962=>902,7963=>919,7964=>940,7965=>936,7968=>536,7969=>536,7970=>536,7971=>536,7972=>536,7973=>536,7974=>536,7975=>536,7976=>847,7977=>859,7978=>986,7979=>1010,7980=>1026,7981=>1029,7982=>918,7983=>921,7984=>286,7985=>286,7986=>302,7987=>320,7988=>300,7989=>306,7990=>312,7991=>303,7992=>475,7993=>507,7994=>617,7995=>654,7996=>655,7997=>660,7998=>551,7999=>566,8000=>500,8001=>500,8002=>500,8003=>500,8004=>500,8005=>500,8008=>816,8009=>825,8010=>969,8011=>995,8012=>938,8013=>955,8016=>514,8017=>514,8018=>514,8019=>514,8020=>514,8021=>514,8022=>514,8023=>514,8025=>818,8027=>988,8029=>989,8031=>893,8032=>693,8033=>693,8034=>693,8035=>693,8036=>693,8037=>693,8038=>693,8039=>693,8040=>836,8041=>843,8042=>1006,8043=>1024,8044=>974,8045=>986,8046=>905,8047=>896,8048=>583,8049=>583,8050=>426,8051=>426,8052=>536,8053=>536,8054=>286,8055=>286,8056=>500,8057=>500,8058=>514,8059=>514,8060=>693,8061=>693,8064=>583,8065=>583,8066=>583,8067=>583,8068=>583,8069=>583,8070=>583,8071=>583,8072=>888,8073=>889,8074=>984,8075=>991,8076=>943,8077=>948,8078=>884,8079=>886,8080=>536,8081=>536,8082=>536,8083=>536,8084=>536,8085=>536,8086=>536,8087=>536,8088=>1017,8089=>1026,8090=>1153,8091=>1179,8092=>1195,8093=>1199,8094=>1088,8095=>1088,8096=>693,8097=>693,8098=>693,8099=>693,8100=>693,8101=>693,8102=>693,8103=>693,8104=>1034,8105=>1040,8106=>1210,8107=>1229,8108=>1176,8109=>1186,8110=>1098,8111=>1090,8112=>583,8113=>583,8114=>583,8115=>583,8116=>583,8118=>583,8119=>583,8120=>722,8121=>722,8122=>722,8123=>722,8124=>889,8125=>250,8126=>332,8127=>500,8128=>500,8129=>534,8130=>536,8131=>536,8132=>536,8134=>536,8135=>536,8136=>761,8137=>800,8138=>829,8139=>893,8140=>883,8141=>500,8142=>500,8143=>500,8144=>286,8145=>286,8146=>286,8147=>286,8150=>286,8151=>286,8152=>333,8153=>333,8154=>447,8155=>537,8157=>500,8158=>500,8159=>500,8160=>514,8161=>514,8162=>514,8163=>514,8164=>528,8165=>528,8166=>514,8167=>514,8168=>696,8169=>696,8170=>816,8171=>828,8172=>721,8173=>333,8174=>333,8175=>500,8178=>693,8179=>693,8180=>693,8182=>693,8183=>693,8184=>832,8185=>899,8186=>847,8187=>852,8188=>928,8189=>500,8190=>500,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>500,8200=>250,8201=>200,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>500,8211=>500,8212=>1000,8213=>1000,8214=>293,8215=>478,8216=>250,8217=>250,8218=>250,8219=>250,8220=>444,8221=>444,8222=>444,8223=>444,8224=>500,8225=>500,8226=>350,8227=>350,8228=>620,8229=>620,8230=>1000,8231=>250,8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>250,8240=>1000,8241=>1363,8242=>247,8243=>411,8244=>611,8245=>247,8246=>411,8247=>611,8248=>469,8249=>250,8250=>250,8251=>629,8252=>666,8253=>444,8254=>500,8255=>953,8256=>953,8257=>314,8258=>931,8259=>333,8260=>167,8261=>383,8262=>383,8263=>888,8264=>777,8265=>777,8266=>500,8267=>453,8268=>453,8269=>450,8270=>500,8271=>278,8272=>882,8273=>500,8274=>497,8275=>500,8276=>953,8277=>512,8278=>410,8279=>855,8280=>620,8281=>620,8282=>179,8283=>621,8284=>564,8285=>179,8286=>179,8287=>111,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>320,8305=>180,8308=>320,8309=>320,8310=>320,8311=>320,8312=>320,8313=>320,8314=>300,8315=>300,8316=>300,8317=>216,8318=>216,8319=>335,8320=>320,8321=>320,8322=>320,8323=>320,8324=>320,8325=>320,8326=>320,8327=>320,8328=>320,8329=>320,8330=>300,8331=>300,8332=>300,8333=>216,8334=>216,8336=>320,8337=>304,8338=>340,8339=>337,8340=>298,8352=>698,8353=>667,8354=>667,8355=>556,8356=>500,8357=>778,8358=>722,8359=>940,8360=>1026,8361=>813,8362=>869,8363=>512,8364=>741,8365=>722,8366=>611,8367=>1340,8368=>489,8369=>601,8370=>619,8371=>722,8372=>556,8373=>611,8374=>498,8376=>524,8400=>0,8401=>0,8402=>0,8403=>0,8404=>0,8405=>0,8406=>0,8407=>0,8408=>0,8409=>0,8410=>0,8411=>0,8412=>0,8413=>0,8414=>0,8415=>0,8416=>0,8417=>0,8418=>0,8419=>0,8420=>0,8421=>0,8422=>0,8423=>0,8424=>0,8425=>0,8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,8432=>0,8448=>751,8449=>723,8450=>674,8451=>954,8452=>556,8453=>781,8454=>806,8455=>518,8456=>667,8457=>822,8458=>490,8459=>824,8460=>663,8461=>818,8462=>500,8463=>500,8464=>578,8465=>613,8466=>715,8467=>417,8468=>778,8469=>751,8470=>880,8471=>792,8472=>832,8473=>589,8474=>729,8475=>892,8476=>711,8477=>755,8478=>667,8479=>667,8480=>939,8481=>1156,8482=>1008,8483=>722,8484=>659,8485=>389,8486=>743,8487=>757,8488=>663,8489=>286,8490=>722,8491=>722,8492=>846,8493=>613,8494=>533,8495=>363,8496=>587,8497=>690,8498=>556,8499=>1021,8500=>387,8501=>537,8502=>537,8503=>350,8504=>537,8505=>417,8506=>906,8507=>1155,8508=>655,8510=>586,8511=>722,8513=>663,8514=>485,8515=>485,8516=>637,8522=>516,8523=>778,8525=>899,8526=>386,8528=>780,8529=>770,8530=>980,8531=>750,8532=>750,8533=>750,8534=>750,8535=>750,8536=>750,8537=>750,8538=>750,8539=>750,8540=>750,8541=>750,8542=>750,8543=>750,8544=>333,8545=>658,8546=>977,8547=>1041,8548=>722,8549=>1040,8550=>1363,8551=>1679,8552=>1051,8553=>722,8554=>1046,8555=>1366,8556=>611,8557=>667,8558=>722,8559=>889,8560=>278,8561=>536,8562=>794,8563=>734,8564=>500,8565=>758,8566=>1016,8567=>1274,8568=>754,8569=>500,8570=>764,8571=>1022,8572=>278,8573=>444,8574=>500,8575=>778,8576=>1082,8577=>722,8578=>1090,8579=>667,8580=>444,8581=>667,8582=>528,8583=>722,8584=>1093,8585=>771,8592=>964,8593=>472,8594=>964,8595=>500,8596=>964,8597=>499,8598=>964,8599=>964,8600=>964,8601=>964,8602=>964,8603=>964,8604=>1009,8605=>1009,8606=>964,8607=>500,8608=>964,8609=>499,8610=>1093,8611=>1093,8612=>1093,8613=>500,8614=>1093,8615=>500,8616=>500,8617=>964,8618=>964,8619=>964,8620=>964,8621=>1151,8622=>964,8623=>592,8624=>482,8625=>482,8626=>482,8627=>482,8628=>658,8629=>658,8630=>1069,8631=>1069,8632=>836,8633=>964,8634=>939,8635=>939,8636=>964,8637=>964,8638=>499,8639=>499,8640=>964,8641=>964,8642=>499,8643=>499,8644=>964,8645=>840,8646=>964,8647=>964,8648=>840,8649=>964,8650=>840,8651=>964,8652=>964,8653=>964,8654=>964,8655=>964,8656=>964,8657=>550,8658=>964,8659=>550,8660=>964,8661=>550,8662=>1047,8663=>1047,8664=>1047,8665=>1047,8666=>964,8667=>964,8668=>1092,8669=>1092,8670=>500,8671=>500,8672=>964,8673=>500,8674=>964,8675=>500,8676=>964,8677=>964,8678=>964,8679=>596,8680=>964,8681=>596,8682=>594,8683=>594,8684=>594,8685=>595,8686=>596,8687=>596,8688=>966,8689=>926,8690=>926,8691=>596,8692=>964,8693=>842,8694=>964,8695=>964,8696=>964,8697=>964,8698=>964,8699=>964,8700=>964,8701=>964,8702=>964,8703=>964,8704=>587,8705=>716,8706=>494,8707=>587,8708=>587,8709=>746,8710=>612,8711=>612,8712=>536,8713=>536,8714=>439,8715=>536,8716=>536,8717=>439,8718=>506,8719=>823,8720=>823,8721=>713,8722=>564,8723=>564,8724=>564,8725=>636,8726=>636,8727=>471,8728=>497,8729=>497,8730=>549,8731=>549,8732=>549,8733=>636,8734=>853,8735=>509,8736=>575,8737=>559,8738=>509,8739=>200,8740=>250,8741=>320,8742=>320,8743=>564,8744=>564,8745=>654,8746=>654,8747=>416,8748=>750,8749=>1083,8750=>722,8751=>750,8752=>1083,8753=>697,8754=>722,8755=>722,8756=>565,8757=>568,8758=>250,8759=>629,8760=>564,8761=>758,8762=>564,8763=>636,8764=>636,8765=>636,8766=>503,8767=>614,8768=>636,8769=>636,8770=>636,8771=>636,8772=>636,8773=>636,8774=>636,8775=>636,8776=>636,8777=>636,8778=>636,8779=>636,8780=>636,8781=>636,8782=>636,8783=>636,8784=>564,8785=>564,8786=>564,8787=>564,8788=>735,8789=>755,8790=>564,8791=>564,8792=>564,8793=>564,8794=>564,8795=>564,8796=>600,8797=>564,8798=>564,8799=>564,8800=>564,8801=>636,8802=>636,8803=>636,8804=>636,8805=>636,8806=>636,8807=>636,8808=>636,8809=>636,8810=>900,8811=>899,8812=>410,8813=>636,8814=>636,8815=>636,8816=>636,8817=>636,8818=>636,8819=>636,8820=>636,8821=>636,8822=>636,8823=>636,8824=>636,8825=>636,8826=>636,8827=>636,8828=>636,8829=>636,8830=>636,8831=>636,8832=>636,8833=>636,8834=>636,8835=>636,8836=>636,8837=>636,8838=>636,8839=>636,8840=>636,8841=>636,8842=>636,8843=>636,8844=>654,8845=>654,8846=>654,8847=>636,8848=>636,8849=>636,8850=>636,8851=>636,8852=>636,8853=>636,8854=>636,8855=>636,8856=>636,8857=>636,8858=>636,8859=>636,8860=>636,8861=>636,8862=>636,8863=>636,8864=>636,8865=>636,8866=>600,8867=>600,8868=>712,8869=>712,8870=>466,8871=>466,8872=>595,8873=>588,8874=>710,8875=>706,8876=>595,8877=>596,8878=>588,8879=>706,8880=>636,8881=>636,8882=>636,8883=>636,8884=>636,8885=>636,8886=>1296,8887=>1296,8888=>966,8889=>564,8890=>626,8891=>564,8892=>564,8893=>566,8894=>570,8895=>582,8896=>744,8897=>744,8898=>764,8899=>764,8900=>512,8901=>250,8902=>471,8903=>629,8904=>636,8905=>636,8906=>636,8907=>816,8908=>816,8909=>636,8910=>636,8911=>636,8912=>636,8913=>636,8914=>654,8915=>654,8916=>654,8917=>564,8918=>564,8919=>564,8920=>1215,8921=>1215,8922=>636,8923=>636,8924=>636,8925=>636,8926=>636,8927=>636,8928=>636,8929=>636,8930=>636,8931=>636,8932=>636,8933=>636,8934=>636,8935=>636,8936=>636,8937=>636,8938=>636,8939=>636,8940=>636,8941=>636,8942=>250,8943=>1000,8944=>1000,8945=>1000,8946=>601,8947=>536,8948=>464,8949=>536,8950=>536,8951=>464,8952=>536,8953=>536,8954=>601,8955=>536,8956=>464,8957=>536,8958=>464,8959=>600,8960=>780,8961=>442,8962=>794,8968=>474,8969=>474,8970=>474,8971=>474,8976=>564,8977=>503,8978=>791,8979=>791,8980=>593,8981=>560,8982=>563,8983=>563,8984=>800,8985=>564,8986=>800,8987=>632,8988=>474,8989=>474,8990=>474,8991=>474,8992=>686,8993=>686,8994=>658,8995=>658,8996=>800,8997=>800,8998=>800,8999=>800,9000=>800,9001=>329,9002=>329,9003=>800,9004=>800,9031=>777,9032=>777,9040=>777,9047=>777,9054=>777,9088=>800,9089=>800,9090=>800,9091=>800,9094=>800,9095=>800,9096=>800,9097=>800,9098=>800,9100=>800,9103=>788,9104=>788,9105=>788,9106=>788,9108=>800,9109=>800,9110=>800,9111=>800,9112=>800,9113=>800,9114=>800,9115=>384,9116=>384,9117=>384,9118=>384,9119=>384,9120=>384,9121=>388,9122=>388,9123=>388,9124=>388,9125=>388,9126=>388,9127=>494,9128=>494,9129=>494,9130=>494,9131=>494,9132=>494,9133=>494,9134=>686,9138=>1287,9139=>1287,9140=>860,9141=>861,9142=>861,9144=>889,9145=>889,9146=>889,9147=>889,9148=>889,9149=>889,9166=>800,9167=>800,9180=>896,9181=>896,9182=>903,9183=>904,9184=>910,9185=>910,9186=>761,9187=>910,9189=>942,9190=>817,9216=>800,9217=>800,9218=>800,9219=>800,9220=>800,9221=>800,9222=>800,9223=>800,9224=>800,9225=>800,9226=>800,9227=>800,9228=>800,9229=>800,9230=>800,9231=>800,9232=>800,9233=>800,9234=>800,9235=>800,9236=>800,9237=>800,9238=>800,9239=>800,9240=>800,9241=>800,9242=>800,9243=>800,9244=>800,9245=>800,9246=>800,9247=>800,9248=>800,9249=>800,9251=>500,9252=>800,9312=>788,9313=>788,9314=>788,9315=>788,9316=>788,9317=>788,9318=>788,9319=>788,9320=>788,9321=>788,9472=>889,9473=>889,9474=>889,9475=>889,9484=>889,9485=>889,9486=>889,9487=>889,9488=>889,9489=>889,9490=>889,9491=>889,9492=>889,9493=>889,9494=>889,9495=>889,9496=>889,9497=>889,9498=>889,9499=>889,9500=>889,9501=>889,9502=>889,9503=>889,9504=>889,9505=>889,9506=>889,9507=>889,9508=>889,9509=>889,9510=>889,9511=>889,9512=>889,9513=>889,9514=>889,9515=>889,9516=>889,9517=>889,9518=>889,9519=>889,9520=>889,9521=>889,9522=>889,9523=>889,9524=>889,9525=>889,9526=>889,9527=>889,9528=>889,9529=>889,9530=>889,9531=>889,9532=>889,9533=>889,9534=>889,9535=>889,9536=>889,9537=>889,9538=>889,9539=>889,9540=>889,9541=>889,9542=>889,9543=>889,9544=>889,9545=>889,9546=>889,9547=>889,9552=>889,9553=>889,9554=>889,9555=>889,9556=>889,9557=>889,9558=>889,9559=>889,9560=>889,9561=>889,9562=>889,9563=>889,9564=>889,9565=>889,9566=>889,9567=>889,9568=>889,9569=>889,9570=>889,9571=>889,9572=>889,9573=>889,9574=>889,9575=>889,9576=>889,9577=>889,9578=>889,9579=>889,9580=>889,9581=>889,9582=>889,9583=>889,9584=>889,9585=>889,9586=>889,9587=>889,9588=>889,9589=>889,9590=>889,9591=>889,9592=>889,9593=>889,9594=>889,9595=>889,9596=>600,9597=>889,9598=>600,9599=>889,9600=>761,9601=>761,9602=>761,9603=>761,9604=>761,9605=>761,9606=>761,9607=>761,9608=>761,9609=>761,9610=>761,9611=>761,9612=>761,9613=>761,9614=>761,9615=>761,9616=>761,9617=>1000,9618=>1000,9619=>1000,9620=>761,9621=>761,9622=>761,9623=>761,9624=>761,9625=>761,9626=>761,9627=>761,9628=>761,9629=>761,9630=>761,9631=>761,9632=>761,9633=>761,9634=>761,9635=>761,9636=>761,9637=>761,9638=>761,9639=>761,9640=>761,9641=>761,9642=>532,9643=>532,9644=>761,9645=>761,9646=>761,9647=>761,9648=>761,9649=>761,9650=>892,9651=>892,9652=>446,9653=>446,9654=>892,9655=>892,9656=>446,9657=>446,9658=>892,9659=>892,9660=>892,9661=>892,9662=>446,9663=>446,9664=>892,9665=>892,9666=>446,9667=>446,9668=>892,9669=>892,9670=>788,9671=>788,9672=>788,9673=>791,9674=>494,9675=>791,9676=>791,9677=>785,9678=>791,9679=>791,9680=>791,9681=>791,9682=>791,9683=>791,9684=>791,9685=>791,9686=>791,9687=>791,9688=>350,9689=>761,9690=>761,9691=>761,9692=>791,9693=>791,9694=>791,9695=>791,9696=>791,9697=>791,9698=>761,9699=>761,9700=>761,9701=>761,9702=>350,9703=>761,9704=>761,9705=>761,9706=>761,9707=>761,9708=>892,9709=>892,9710=>892,9711=>885,9712=>761,9713=>761,9714=>761,9715=>761,9716=>791,9717=>791,9718=>791,9719=>791,9720=>761,9721=>761,9722=>761,9723=>761,9724=>761,9725=>570,9726=>570,9727=>761,9728=>800,9729=>800,9730=>748,9731=>800,9732=>800,9733=>811,9734=>816,9735=>468,9736=>677,9737=>724,9738=>944,9739=>944,9740=>686,9741=>944,9742=>715,9743=>715,9744=>757,9745=>755,9746=>755,9747=>756,9748=>800,9749=>837,9750=>719,9751=>719,9752=>782,9753=>822,9754=>954,9755=>954,9756=>933,9757=>489,9758=>933,9759=>489,9760=>517,9761=>660,9762=>724,9763=>732,9764=>886,9765=>577,9766=>489,9767=>563,9768=>490,9769=>770,9770=>725,9771=>860,9772=>668,9773=>753,9774=>724,9775=>730,9776=>600,9777=>600,9778=>600,9779=>600,9780=>600,9781=>600,9782=>600,9783=>600,9784=>730,9785=>724,9786=>724,9787=>724,9788=>799,9789=>659,9790=>659,9791=>495,9792=>495,9793=>495,9794=>686,9795=>661,9796=>544,9797=>608,9798=>605,9799=>545,9800=>804,9801=>583,9802=>796,9803=>1006,9804=>825,9805=>1189,9806=>1144,9807=>1189,9808=>683,9809=>808,9810=>1146,9811=>797,9812=>758,9813=>757,9814=>758,9815=>758,9816=>758,9817=>758,9818=>758,9819=>758,9820=>758,9821=>758,9822=>758,9823=>758,9824=>770,9825=>770,9826=>770,9827=>770,9828=>770,9829=>770,9830=>770,9831=>770,9832=>895,9833=>333,9834=>513,9835=>722,9836=>722,9837=>371,9838=>377,9839=>402,9840=>642,9841=>655,9842=>869,9843=>905,9844=>905,9845=>905,9846=>905,9847=>905,9848=>905,9849=>905,9850=>905,9851=>1016,9852=>1064,9853=>1064,9854=>954,9855=>606,9856=>522,9857=>522,9858=>522,9859=>522,9860=>522,9861=>522,9862=>845,9863=>844,9864=>844,9865=>844,9866=>748,9867=>748,9868=>748,9869=>748,9870=>748,9871=>748,9872=>726,9873=>726,9874=>963,9875=>770,9876=>1038,9877=>388,9878=>997,9879=>787,9880=>508,9881=>809,9882=>1014,9883=>859,9884=>818,9885=>972,9888=>1000,9889=>546,9890=>784,9891=>786,9892=>738,9893=>542,9894=>601,9895=>700,9896=>511,9897=>861,9898=>611,9899=>611,9900=>544,9901=>782,9902=>1025,9903=>1141,9904=>1000,9905=>513,9906=>510,9907=>642,9908=>722,9909=>719,9910=>777,9911=>495,9912=>602,9913=>836,9914=>666,9915=>666,9916=>691,9920=>689,9921=>689,9922=>689,9923=>689,9985=>974,9986=>961,9987=>974,9988=>980,9990=>789,9991=>790,9992=>791,9993=>690,9996=>549,9997=>855,9998=>911,9999=>933,10000=>911,10001=>945,10002=>974,10003=>755,10004=>846,10005=>762,10006=>761,10007=>571,10008=>677,10009=>763,10010=>760,10011=>759,10012=>754,10013=>494,10014=>552,10015=>537,10016=>577,10017=>692,10018=>786,10019=>788,10020=>788,10021=>790,10022=>793,10023=>794,10025=>823,10026=>789,10027=>841,10028=>823,10029=>833,10030=>816,10031=>831,10032=>923,10033=>744,10034=>723,10035=>749,10036=>790,10037=>792,10038=>695,10039=>776,10040=>768,10041=>792,10042=>759,10043=>707,10044=>708,10045=>682,10046=>701,10047=>826,10048=>815,10049=>789,10050=>789,10051=>707,10052=>687,10053=>696,10054=>689,10055=>786,10056=>787,10057=>713,10058=>791,10059=>785,10061=>873,10063=>762,10064=>762,10065=>759,10066=>759,10070=>784,10072=>138,10073=>277,10074=>415,10075=>392,10076=>392,10077=>668,10078=>668,10081=>732,10082=>544,10083=>544,10084=>910,10085=>667,10086=>760,10087=>760,10088=>390,10089=>390,10090=>317,10091=>317,10092=>276,10093=>276,10094=>509,10095=>509,10096=>410,10097=>410,10098=>234,10099=>234,10100=>334,10101=>334,10102=>788,10103=>788,10104=>788,10105=>788,10106=>788,10107=>788,10108=>788,10109=>788,10110=>788,10111=>788,10112=>788,10113=>788,10114=>788,10115=>788,10116=>788,10117=>788,10118=>788,10119=>788,10120=>788,10121=>788,10122=>788,10123=>788,10124=>788,10125=>788,10126=>788,10127=>788,10128=>788,10129=>788,10130=>788,10131=>788,10132=>894,10136=>748,10137=>924,10138=>748,10139=>918,10140=>927,10141=>928,10142=>928,10143=>834,10144=>873,10145=>828,10146=>924,10147=>924,10148=>917,10149=>930,10150=>931,10151=>463,10152=>883,10153=>836,10154=>836,10155=>867,10156=>867,10157=>696,10158=>696,10159=>874,10161=>874,10162=>760,10163=>946,10164=>771,10165=>865,10166=>771,10167=>888,10168=>967,10169=>888,10170=>831,10171=>873,10172=>927,10173=>970,10174=>918,10214=>545,10215=>545,10216=>329,10217=>329,10218=>496,10219=>496,10224=>1000,10225=>1000,10226=>1104,10227=>1102,10228=>964,10229=>1000,10230=>1000,10231=>1000,10232=>1000,10233=>1000,10234=>1000,10235=>1000,10236=>1000,10237=>1000,10238=>1000,10239=>1392,10752=>860,10753=>860,10754=>860,10755=>766,10756=>766,10757=>756,10758=>756,10761=>745,10781=>702,10815=>722,11008=>1000,11009=>1000,11010=>1000,11011=>1000,11012=>1222,11013=>1000,11014=>1000,11015=>1000,11016=>1000,11017=>1000,11018=>1000,11019=>1000,11020=>1244,11021=>1000,11026=>770,11027=>770,11028=>770,11029=>770,11030=>770,11031=>770,11032=>770,11033=>770,11034=>770,11035=>1000,11036=>1000,11037=>283,11038=>283,11039=>846,11040=>846,11041=>799,11042=>799,11043=>807,11044=>1000,11045=>461,11046=>461,11047=>461,11048=>461,11049=>360,11050=>360,11051=>283,11052=>854,11053=>854,11054=>628,11055=>628,11088=>589,11089=>443,11090=>443,11091=>802,11092=>803,11264=>645,11265=>793,11266=>851,11267=>700,11268=>851,11269=>640,11270=>774,11271=>665,11272=>733,11273=>834,11274=>834,11275=>734,11276=>790,11277=>580,11278=>834,11279=>979,11280=>738,11281=>410,11282=>775,11283=>471,11284=>734,11285=>851,11286=>895,11287=>722,11288=>638,11289=>620,11290=>721,11291=>793,11292=>821,11293=>699,11294=>793,11295=>682,11296=>569,11297=>791,11299=>751,11300=>705,11301=>874,11302=>665,11303=>1139,11304=>1023,11305=>1238,11306=>762,11310=>759,11312=>484,11313=>595,11314=>638,11315=>525,11316=>638,11317=>480,11318=>580,11319=>499,11320=>550,11321=>625,11322=>626,11323=>550,11324=>592,11325=>435,11326=>626,11327=>734,11328=>553,11329=>308,11330=>581,11331=>353,11332=>550,11333=>638,11334=>671,11335=>542,11336=>478,11337=>465,11338=>540,11339=>594,11340=>616,11341=>524,11342=>594,11343=>512,11344=>427,11345=>589,11347=>564,11348=>529,11349=>655,11350=>499,11351=>854,11352=>767,11353=>929,11354=>571,11358=>569,11360=>611,11361=>289,11362=>627,11363=>556,11364=>667,11365=>447,11366=>303,11367=>728,11368=>500,11369=>734,11370=>511,11371=>611,11372=>444,11373=>680,11374=>889,11375=>722,11377=>651,11378=>1075,11379=>881,11380=>500,11381=>557,11382=>383,11383=>643,11384=>559,11385=>339,11386=>722,11387=>397,11388=>180,11389=>469,11392=>719,11393=>499,11394=>532,11395=>381,11396=>615,11397=>433,11398=>969,11399=>680,11400=>647,11401=>443,11402=>593,11403=>402,11404=>573,11405=>405,11406=>698,11407=>509,11408=>726,11409=>493,11410=>283,11411=>238,11412=>628,11413=>455,11414=>653,11415=>471,11416=>819,11417=>589,11418=>698,11419=>507,11420=>546,11421=>378,11422=>722,11423=>489,11424=>724,11425=>524,11426=>526,11427=>375,11428=>647,11429=>438,11430=>615,11431=>433,11432=>719,11433=>519,11434=>762,11435=>538,11436=>649,11437=>461,11438=>721,11439=>519,11440=>964,11441=>681,11456=>689,11457=>464,11464=>579,11465=>391,11466=>493,11467=>355,11492=>408,11493=>499,11494=>496,11495=>986,11496=>466,11497=>461,11498=>934,11517=>256,11518=>617,11519=>266,11744=>0,11745=>0,11746=>0,11747=>0,11748=>0,11749=>0,11750=>0,11751=>0,11752=>0,11753=>0,11754=>0,11755=>0,11756=>0,11757=>0,11758=>0,11759=>0,11760=>0,11761=>0,11762=>0,11763=>0,11764=>0,11765=>0,11766=>0,11767=>0,11768=>0,11769=>0,11770=>0,11771=>0,11772=>0,11773=>0,11774=>0,11775=>0,11799=>333,42560=>607,42561=>411,42562=>611,42563=>410,42564=>487,42565=>347,42566=>368,42567=>286,42568=>722,42569=>519,42570=>550,42571=>468,42572=>1145,42573=>775,42574=>665,42575=>548,42576=>1014,42577=>736,42578=>910,42579=>675,42580=>966,42581=>677,42582=>1042,42583=>648,42584=>722,42585=>513,42586=>932,42587=>700,42588=>1042,42589=>749,42590=>780,42591=>550,42594=>896,42595=>635,42596=>933,42597=>635,42598=>1139,42599=>777,42600=>722,42601=>500,42602=>790,42603=>560,42604=>1262,42605=>850,42606=>734,42607=>0,42608=>0,42609=>0,42610=>0,42611=>519,42620=>0,42621=>0,42622=>510,42623=>201,42624=>639,42625=>488,42626=>475,42627=>347,42628=>1160,42629=>842,42630=>1000,42631=>768,42632=>737,42633=>531,42634=>827,42635=>530,42636=>608,42637=>438,42638=>742,42639=>545,42640=>608,42641=>480,42642=>926,42643=>654,42644=>671,42645=>518,42646=>992,42647=>780,42752=>318,42753=>318,42754=>318,42755=>318,42756=>318,42757=>318,42758=>318,42759=>318,42760=>307,42761=>307,42762=>307,42763=>307,42764=>307,42765=>307,42766=>307,42767=>307,42768=>307,42769=>307,42770=>460,42771=>460,42772=>460,42773=>460,42774=>460,42775=>374,42776=>445,42777=>564,42778=>564,42779=>354,42780=>354,42781=>243,42782=>243,42783=>243,42784=>564,42785=>564,42786=>276,42787=>242,42788=>386,42789=>276,42790=>722,42791=>500,42792=>895,42793=>703,42794=>532,42795=>409,42796=>437,42797=>389,42798=>592,42799=>600,42800=>378,42801=>378,42802=>1183,42803=>708,42804=>1154,42805=>758,42806=>1089,42807=>716,42808=>902,42809=>586,42810=>902,42811=>586,42812=>912,42813=>572,42814=>667,42815=>444,42816=>722,42817=>500,42818=>722,42819=>500,42820=>722,42821=>500,42822=>713,42823=>361,42824=>611,42825=>289,42826=>750,42827=>544,42828=>918,42829=>658,42830=>1262,42831=>848,42832=>556,42833=>500,42838=>722,42839=>500,42852=>576,42853=>496,42854=>576,42855=>496,42873=>722,42874=>500,42875=>483,42876=>341,42877=>611,42878=>611,42879=>447,42880=>611,42881=>278,42882=>689,42883=>500,42884=>483,42885=>341,42886=>667,42887=>444,42888=>333,42889=>278,42890=>282,42891=>286,42892=>278,43003=>556,43004=>556,43005=>889,43006=>333,43007=>1298,64256=>589,64257=>534,64258=>530,64259=>805,64260=>799,64261=>586,64262=>677,64275=>971,64276=>969,64277=>978,64278=>971,64279=>1219,64285=>350,64286=>0,64287=>537,64288=>537,64297=>564,64298=>537,64299=>537,64300=>537,64301=>537,64302=>537,64303=>537,64304=>537,64305=>537,64306=>350,64307=>537,64308=>537,64309=>350,64310=>350,64312=>537,64313=>350,64314=>537,64315=>537,64316=>537,64318=>537,64320=>350,64321=>537,64323=>537,64324=>537,64326=>537,64327=>537,64328=>537,64329=>537,64330=>537,64331=>350,64332=>537,64333=>537,64334=>537,64335=>537,64342=>926,64343=>926,64344=>308,64345=>308,64378=>750,64379=>750,64380=>580,64381=>580,64394=>338,64395=>338,64402=>874,64403=>874,64404=>329,64405=>329,64508=>776,64509=>700,64510=>304,64511=>304,65010=>640,65020=>837,65136=>300,65140=>300,65142=>300,65144=>300,65146=>300,65148=>300,65152=>724,65153=>321,65154=>275,65155=>249,65156=>275,65157=>399,65158=>399,65159=>249,65160=>275,65161=>776,65162=>776,65163=>301,65164=>264,65165=>249,65166=>275,65167=>950,65168=>950,65169=>293,65170=>293,65171=>424,65172=>622,65173=>925,65174=>925,65175=>308,65176=>308,65177=>924,65178=>924,65179=>298,65180=>298,65181=>738,65182=>738,65183=>574,65184=>574,65185=>748,65186=>750,65187=>600,65188=>600,65189=>701,65190=>775,65191=>596,65192=>596,65193=>397,65194=>397,65195=>399,65196=>399,65197=>328,65198=>328,65199=>331,65200=>331,65201=>951,65202=>951,65203=>600,65204=>600,65205=>949,65206=>949,65207=>649,65208=>649,65209=>949,65210=>949,65211=>823,65212=>823,65213=>949,65214=>949,65215=>805,65216=>805,65217=>557,65218=>557,65219=>460,65220=>460,65221=>550,65222=>550,65223=>455,65224=>550,65225=>625,65226=>575,65227=>674,65228=>550,65229=>602,65230=>577,65231=>578,65232=>577,65233=>801,65234=>801,65235=>300,65236=>300,65237=>696,65238=>696,65239=>650,65240=>650,65241=>757,65242=>757,65243=>318,65244=>318,65245=>655,65246=>655,65247=>206,65248=>206,65249=>549,65250=>549,65251=>403,65252=>403,65253=>651,65254=>651,65255=>323,65256=>323,65257=>424,65258=>622,65259=>525,65260=>476,65261=>399,65262=>399,65263=>776,65264=>776,65265=>776,65266=>776,65267=>296,65268=>264,65269=>676,65270=>724,65271=>676,65272=>724,65273=>676,65274=>724,65275=>676,65276=>724,65279=>0,65533=>900,65535=>700); +$desc=array('Flags'=>32,'FontBBox'=>'[-879 -551 1767 936]','ItalicAngle'=>0,'Ascent'=>900,'Descent'=>-200,'Leading'=>100,'CapHeight'=>662,'XHeight'=>450,'StemV'=>70,'StemH'=>30,'AvgWidth'=>618,'MaxWidth'=>1752,'MissingWidth'=>600); +$cw=array(0=>600,13=>600,32=>250,33=>333,34=>400,35=>500,36=>500,37=>833,38=>778,39=>200,40=>333,41=>333,42=>500,43=>564,44=>250,45=>333,46=>250,47=>296,48=>500,49=>500,50=>500,51=>500,52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>250,59=>250,60=>564,61=>564,62=>564,63=>444,64=>865,65=>721,66=>631,67=>670,68=>719,69=>610,70=>564,71=>722,72=>714,73=>327,74=>385,75=>709,76=>611,77=>881,78=>725,79=>724,80=>576,81=>723,82=>667,83=>529,84=>606,85=>721,86=>701,87=>947,88=>714,89=>701,90=>613,91=>333,92=>296,93=>333,94=>469,95=>500,96=>250,97=>435,98=>500,99=>444,100=>499,101=>444,102=>373,103=>467,104=>498,105=>278,106=>348,107=>513,108=>258,109=>779,110=>489,111=>491,112=>500,113=>499,114=>345,115=>367,116=>283,117=>490,118=>468,119=>683,120=>482,121=>471,122=>417,123=>480,124=>200,125=>480,126=>500,160=>250,161=>333,162=>500,163=>500,164=>500,165=>500,166=>200,167=>500,168=>333,169=>793,170=>276,171=>500,172=>564,173=>333,174=>792,175=>333,176=>400,177=>564,178=>320,179=>320,180=>250,181=>500,182=>483,183=>250,184=>333,185=>320,186=>310,187=>500,188=>730,189=>750,190=>750,191=>444,192=>721,193=>721,194=>721,195=>721,196=>721,197=>721,198=>888,199=>674,200=>610,201=>610,202=>610,203=>610,204=>327,205=>327,206=>327,207=>327,208=>719,209=>725,210=>724,211=>724,212=>724,213=>724,214=>724,215=>564,216=>724,217=>721,218=>721,219=>721,220=>721,221=>701,222=>577,223=>491,224=>435,225=>435,226=>435,227=>435,228=>435,229=>435,230=>639,231=>444,232=>444,233=>444,234=>444,235=>444,236=>278,237=>278,238=>278,239=>278,240=>492,241=>489,242=>491,243=>491,244=>491,245=>491,246=>491,247=>564,248=>491,249=>490,250=>490,251=>490,252=>490,253=>471,254=>500,255=>471,256=>721,257=>435,258=>721,259=>435,260=>717,261=>437,262=>670,263=>444,264=>670,265=>444,266=>670,267=>444,268=>670,269=>444,270=>719,271=>635,272=>719,273=>498,274=>610,275=>444,276=>610,277=>444,278=>610,279=>444,280=>611,281=>444,282=>610,283=>444,284=>722,285=>467,286=>722,287=>467,288=>722,289=>467,290=>722,291=>467,292=>714,293=>498,294=>711,295=>498,296=>327,297=>278,298=>327,299=>278,300=>327,301=>278,302=>325,303=>278,304=>327,305=>278,306=>699,307=>529,308=>385,309=>348,310=>709,311=>513,312=>503,313=>611,314=>258,315=>611,316=>258,317=>611,318=>390,319=>611,320=>382,321=>606,322=>278,323=>725,324=>489,325=>725,326=>489,327=>725,328=>489,329=>538,330=>701,331=>500,332=>724,333=>491,334=>724,335=>491,336=>724,337=>491,338=>900,339=>705,340=>667,341=>345,342=>667,343=>345,344=>667,345=>345,346=>529,347=>367,348=>529,349=>367,350=>549,351=>367,352=>529,353=>367,354=>596,355=>283,356=>606,357=>410,358=>596,359=>283,360=>721,361=>490,362=>721,363=>490,364=>721,365=>490,366=>721,367=>490,368=>721,369=>490,370=>711,371=>501,372=>947,373=>683,374=>701,375=>471,376=>701,377=>613,378=>417,379=>613,380=>417,381=>613,382=>417,383=>373,384=>504,385=>737,386=>624,387=>513,388=>641,389=>515,390=>670,391=>813,392=>554,393=>719,394=>830,395=>582,396=>511,397=>496,398=>610,399=>711,400=>525,401=>629,402=>460,403=>819,404=>650,405=>735,406=>333,407=>336,408=>776,409=>513,410=>286,411=>470,412=>951,413=>798,414=>495,415=>724,416=>723,417=>536,418=>1038,419=>774,420=>692,421=>495,422=>674,423=>549,424=>367,425=>603,426=>592,427=>289,428=>622,429=>376,430=>596,431=>783,432=>545,433=>723,434=>724,435=>801,436=>570,437=>617,438=>416,439=>531,440=>537,441=>396,442=>389,443=>500,444=>604,445=>439,446=>389,447=>502,448=>190,449=>350,450=>600,451=>333,452=>1333,453=>1166,454=>944,455=>1000,456=>889,457=>546,458=>1111,459=>1000,460=>778,461=>721,462=>435,463=>327,464=>278,465=>724,466=>491,467=>721,468=>490,469=>721,470=>490,471=>721,472=>490,473=>722,474=>490,475=>721,476=>490,477=>444,478=>721,479=>435,480=>721,481=>435,482=>888,483=>639,484=>722,485=>490,486=>722,487=>467,488=>709,489=>513,490=>722,491=>491,492=>722,493=>491,494=>531,495=>387,496=>348,497=>1333,498=>1166,499=>944,500=>722,501=>467,502=>1001,503=>552,504=>725,505=>489,506=>722,507=>435,508=>888,509=>639,510=>724,511=>491,512=>721,513=>435,514=>721,515=>435,516=>610,517=>444,518=>610,519=>444,520=>327,521=>278,522=>327,523=>278,524=>724,525=>491,526=>724,527=>491,528=>667,529=>345,530=>667,531=>345,532=>721,533=>490,534=>721,535=>490,536=>529,537=>367,538=>606,539=>283,540=>435,541=>426,542=>714,543=>498,544=>715,545=>588,546=>555,547=>458,548=>611,549=>444,550=>721,551=>435,552=>611,553=>444,554=>724,555=>491,556=>724,557=>491,558=>724,559=>491,560=>724,561=>491,562=>701,563=>471,564=>407,565=>597,566=>379,567=>348,568=>771,569=>762,570=>721,571=>674,572=>434,573=>612,574=>596,575=>377,576=>444,577=>418,578=>418,579=>628,580=>720,581=>701,582=>610,583=>444,584=>385,585=>358,586=>760,587=>559,588=>667,589=>345,590=>701,591=>490,592=>435,593=>498,594=>498,595=>493,596=>434,597=>444,598=>551,599=>569,600=>444,601=>444,602=>703,603=>403,604=>403,605=>641,606=>422,607=>353,608=>572,609=>501,610=>521,611=>494,612=>567,613=>498,614=>498,615=>501,616=>285,617=>306,618=>275,619=>340,620=>354,621=>364,622=>553,623=>779,624=>779,625=>772,626=>544,627=>547,628=>549,629=>491,630=>652,631=>661,632=>624,633=>345,634=>345,635=>443,636=>345,637=>344,638=>379,639=>374,640=>489,641=>484,642=>377,643=>360,644=>360,645=>360,646=>451,647=>281,648=>330,649=>512,650=>504,651=>485,652=>468,653=>683,654=>471,655=>485,656=>583,657=>428,658=>387,659=>409,660=>418,661=>408,662=>408,663=>454,664=>724,665=>468,666=>422,667=>587,668=>540,669=>343,670=>513,671=>449,672=>573,673=>408,674=>408,675=>784,676=>794,677=>801,678=>550,679=>493,680=>675,681=>752,682=>553,683=>543,684=>477,685=>500,686=>612,687=>667,688=>332,689=>333,690=>232,691=>228,692=>228,693=>305,694=>321,695=>463,696=>322,697=>250,698=>408,699=>200,700=>200,701=>200,702=>250,703=>250,704=>258,705=>258,706=>333,707=>333,708=>333,709=>333,710=>333,711=>333,712=>250,713=>333,714=>250,715=>250,716=>250,717=>333,718=>250,719=>250,720=>250,721=>250,722=>250,723=>250,724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,731=>333,732=>333,733=>333,734=>336,735=>352,736=>331,737=>187,738=>263,739=>332,740=>300,741=>460,742=>460,743=>460,744=>460,745=>460,746=>477,747=>475,748=>339,749=>333,750=>400,751=>333,752=>333,753=>333,754=>333,755=>333,756=>250,757=>437,758=>437,759=>333,760=>250,761=>200,762=>200,763=>200,764=>200,765=>333,766=>333,767=>333,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>332,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,859=>0,860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,867=>0,868=>0,869=>0,870=>0,871=>0,872=>0,873=>0,874=>0,875=>0,876=>0,877=>0,878=>0,879=>0,880=>535,881=>433,882=>537,883=>497,884=>199,885=>199,886=>722,887=>590,890=>332,891=>485,892=>485,893=>485,894=>250,900=>267,901=>333,902=>721,903=>250,904=>800,905=>902,906=>507,908=>818,910=>861,911=>871,912=>286,913=>721,914=>631,915=>569,916=>660,917=>610,918=>613,919=>714,920=>754,921=>327,922=>709,923=>721,924=>881,925=>725,926=>590,927=>724,928=>713,929=>576,931=>603,932=>606,933=>666,934=>760,935=>714,936=>788,937=>723,938=>327,939=>666,940=>583,941=>426,942=>536,943=>286,944=>514,945=>583,946=>527,947=>480,948=>534,949=>426,950=>466,951=>536,952=>534,953=>286,954=>544,955=>476,956=>536,957=>480,958=>514,959=>491,960=>587,961=>528,962=>452,963=>537,964=>420,965=>514,966=>643,967=>480,968=>693,969=>693,970=>286,971=>514,972=>491,973=>514,974=>693,975=>671,976=>534,977=>587,978=>627,979=>803,980=>627,981=>640,982=>684,983=>534,984=>576,985=>500,986=>602,987=>426,988=>559,989=>445,990=>656,991=>400,992=>721,993=>570,994=>962,995=>673,996=>592,997=>522,998=>580,999=>460,1000=>500,1001=>338,1002=>842,1003=>593,1004=>564,1005=>412,1006=>634,1007=>447,1008=>534,1009=>534,1010=>485,1011=>348,1012=>724,1013=>361,1014=>361,1015=>577,1016=>537,1017=>674,1018=>889,1019=>709,1020=>534,1021=>668,1022=>675,1023=>668,1024=>610,1025=>610,1026=>747,1027=>564,1028=>660,1029=>549,1030=>327,1031=>327,1032=>380,1033=>948,1034=>985,1035=>821,1036=>664,1037=>713,1038=>709,1039=>713,1040=>711,1041=>576,1042=>626,1043=>564,1044=>639,1045=>610,1046=>937,1047=>585,1048=>713,1049=>713,1050=>664,1051=>681,1052=>881,1053=>713,1054=>724,1055=>713,1056=>576,1057=>670,1058=>606,1059=>709,1060=>760,1061=>714,1062=>717,1063=>672,1064=>974,1065=>982,1066=>724,1067=>852,1068=>576,1069=>660,1070=>962,1071=>643,1072=>435,1073=>495,1074=>468,1075=>388,1076=>490,1077=>436,1078=>662,1079=>401,1080=>524,1081=>524,1082=>498,1083=>490,1084=>632,1085=>524,1086=>491,1087=>524,1088=>500,1089=>424,1090=>422,1091=>471,1092=>694,1093=>482,1094=>524,1095=>504,1096=>756,1097=>756,1098=>505,1099=>624,1100=>431,1101=>432,1102=>664,1103=>492,1104=>434,1105=>434,1106=>479,1107=>388,1108=>432,1109=>367,1110=>269,1111=>278,1112=>348,1113=>677,1114=>711,1115=>514,1116=>498,1117=>524,1118=>471,1119=>524,1120=>988,1121=>664,1122=>723,1123=>506,1124=>941,1125=>647,1126=>901,1127=>635,1128=>1245,1129=>894,1130=>937,1131=>654,1132=>1278,1133=>907,1134=>519,1135=>378,1136=>868,1137=>694,1138=>724,1139=>491,1140=>770,1141=>550,1142=>770,1143=>550,1144=>1151,1145=>885,1146=>879,1147=>611,1148=>988,1149=>664,1150=>988,1151=>664,1152=>602,1153=>428,1154=>232,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,1162=>713,1163=>522,1164=>576,1165=>430,1166=>575,1167=>511,1168=>559,1169=>397,1170=>571,1171=>392,1172=>619,1173=>462,1174=>983,1175=>682,1176=>587,1177=>401,1178=>683,1179=>516,1180=>708,1181=>531,1182=>664,1183=>494,1184=>811,1185=>568,1186=>717,1187=>519,1188=>921,1189=>647,1190=>1025,1191=>721,1192=>751,1193=>516,1194=>660,1195=>424,1196=>606,1197=>452,1198=>701,1199=>563,1200=>701,1201=>563,1202=>765,1203=>518,1204=>958,1205=>692,1206=>676,1207=>505,1208=>716,1209=>538,1210=>672,1211=>508,1212=>859,1213=>553,1214=>858,1215=>553,1216=>327,1217=>937,1218=>662,1219=>613,1220=>441,1221=>681,1222=>489,1223=>713,1224=>497,1225=>713,1226=>545,1227=>672,1228=>504,1229=>881,1230=>630,1231=>327,1232=>711,1233=>435,1234=>711,1235=>435,1236=>883,1237=>639,1238=>610,1239=>436,1240=>711,1241=>436,1242=>711,1243=>436,1244=>937,1245=>662,1246=>585,1247=>401,1248=>531,1249=>366,1250=>713,1251=>524,1252=>713,1253=>524,1254=>724,1255=>491,1256=>724,1257=>491,1258=>724,1259=>491,1260=>660,1261=>432,1262=>709,1263=>471,1264=>709,1265=>471,1266=>709,1267=>471,1268=>672,1269=>504,1270=>559,1271=>383,1272=>852,1273=>624,1274=>559,1275=>386,1276=>706,1277=>436,1278=>714,1279=>492,1280=>576,1281=>504,1282=>908,1283=>634,1284=>803,1285=>518,1286=>553,1287=>471,1288=>931,1289=>637,1290=>964,1291=>682,1292=>725,1293=>433,1294=>705,1295=>499,1296=>523,1297=>407,1298=>681,1299=>489,1300=>941,1301=>644,1302=>820,1303=>697,1304=>949,1305=>748,1306=>723,1307=>505,1308=>947,1309=>693,1310=>664,1311=>497,1312=>992,1313=>710,1314=>1029,1315=>741,1316=>719,1317=>520,1318=>678,1319=>505,1329=>794,1330=>712,1331=>782,1332=>854,1333=>711,1334=>702,1335=>707,1336=>655,1337=>777,1338=>782,1339=>710,1340=>663,1341=>830,1342=>917,1343=>672,1344=>469,1345=>666,1346=>858,1347=>685,1348=>856,1349=>618,1350=>858,1351=>709,1352=>719,1353=>714,1354=>731,1355=>702,1356=>874,1357=>719,1358=>844,1359=>519,1360=>703,1361=>608,1362=>586,1363=>750,1364=>780,1365=>714,1366=>684,1369=>120,1370=>120,1371=>269,1372=>307,1373=>241,1374=>312,1375=>300,1377=>786,1378=>506,1379=>542,1380=>541,1381=>506,1382=>503,1383=>478,1384=>499,1385=>541,1386=>539,1387=>508,1388=>289,1389=>750,1390=>540,1391=>513,1392=>508,1393=>503,1394=>531,1395=>518,1396=>500,1397=>243,1398=>473,1399=>406,1400=>499,1401=>407,1402=>793,1403=>414,1404=>463,1405=>500,1406=>516,1407=>758,1408=>504,1409=>466,1410=>288,1411=>758,1412=>510,1413=>501,1414=>562,1415=>543,1417=>278,1418=>280,1423=>754,1425=>0,1426=>0,1427=>0,1428=>0,1429=>0,1430=>0,1431=>0,1432=>0,1433=>0,1434=>0,1435=>0,1436=>0,1437=>0,1438=>0,1439=>0,1440=>0,1441=>0,1442=>0,1443=>0,1444=>0,1445=>0,1446=>0,1447=>0,1448=>0,1449=>0,1450=>0,1451=>0,1452=>0,1453=>0,1454=>0,1455=>0,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0,1467=>0,1468=>0,1469=>0,1470=>370,1471=>0,1472=>126,1473=>0,1474=>0,1475=>346,1476=>0,1477=>0,1478=>350,1479=>0,1488=>537,1489=>537,1490=>350,1491=>537,1492=>537,1493=>350,1494=>350,1495=>537,1496=>537,1497=>320,1498=>537,1499=>537,1500=>537,1501=>537,1502=>537,1503=>310,1504=>350,1505=>537,1506=>537,1507=>537,1508=>537,1509=>537,1510=>537,1511=>537,1512=>537,1513=>537,1514=>537,1520=>583,1521=>563,1522=>537,1523=>396,1524=>396,1536=>600,1537=>1000,1538=>800,1539=>800,1542=>549,1543=>549,1544=>724,1545=>599,1546=>729,1547=>626,1548=>246,1549=>344,1550=>640,1551=>686,1552=>0,1553=>0,1554=>0,1555=>0,1556=>0,1557=>0,1558=>0,1559=>0,1560=>0,1561=>0,1562=>0,1563=>250,1566=>374,1567=>444,1568=>672,1569=>350,1570=>245,1571=>229,1572=>329,1573=>229,1574=>672,1575=>229,1576=>877,1577=>416,1578=>877,1579=>877,1580=>598,1581=>598,1582=>598,1583=>348,1584=>348,1585=>345,1586=>345,1587=>901,1588=>901,1589=>909,1590=>909,1591=>568,1592=>568,1593=>591,1594=>591,1595=>902,1596=>902,1597=>672,1598=>672,1599=>672,1600=>200,1601=>858,1602=>626,1603=>486,1604=>598,1605=>475,1606=>585,1607=>372,1608=>329,1609=>672,1610=>672,1611=>0,1612=>0,1613=>0,1614=>0,1615=>0,1616=>0,1617=>0,1618=>0,1619=>0,1620=>0,1621=>0,1622=>0,1623=>0,1624=>0,1625=>0,1626=>0,1627=>0,1628=>0,1629=>0,1630=>0,1631=>0,1632=>500,1633=>500,1634=>500,1635=>500,1636=>500,1637=>500,1638=>500,1639=>500,1640=>500,1641=>500,1642=>440,1643=>212,1644=>235,1645=>471,1646=>877,1647=>626,1648=>0,1649=>229,1650=>229,1651=>229,1652=>300,1653=>326,1654=>442,1655=>482,1656=>792,1657=>877,1658=>877,1659=>877,1660=>877,1661=>877,1662=>877,1663=>877,1664=>877,1665=>598,1666=>598,1667=>598,1668=>598,1669=>598,1670=>598,1671=>598,1672=>348,1673=>348,1674=>348,1675=>348,1676=>348,1677=>348,1678=>348,1679=>348,1680=>348,1681=>345,1682=>345,1683=>345,1684=>345,1685=>492,1686=>345,1687=>345,1688=>345,1689=>345,1690=>901,1691=>901,1692=>901,1693=>909,1694=>909,1695=>568,1696=>591,1697=>858,1698=>858,1699=>858,1700=>858,1701=>858,1702=>858,1703=>626,1704=>626,1705=>902,1706=>1108,1707=>902,1708=>486,1709=>486,1710=>486,1711=>902,1712=>902,1713=>902,1714=>902,1715=>902,1716=>902,1717=>598,1718=>598,1719=>598,1720=>598,1721=>585,1722=>585,1723=>585,1724=>585,1725=>585,1726=>446,1727=>598,1728=>372,1729=>372,1730=>372,1731=>372,1732=>329,1733=>329,1734=>329,1735=>329,1736=>329,1737=>329,1738=>329,1739=>329,1740=>672,1741=>728,1742=>672,1743=>329,1744=>672,1745=>672,1746=>710,1747=>710,1748=>395,1749=>372,1750=>0,1751=>0,1752=>0,1753=>0,1754=>0,1755=>0,1756=>0,1757=>1132,1758=>970,1759=>0,1760=>0,1761=>0,1762=>0,1763=>0,1764=>301,1765=>250,1766=>400,1767=>0,1768=>0,1769=>760,1770=>0,1771=>0,1772=>0,1773=>0,1774=>348,1775=>345,1776=>500,1777=>501,1778=>500,1779=>500,1780=>500,1781=>500,1782=>500,1783=>500,1784=>500,1785=>500,1786=>901,1787=>909,1788=>591,1789=>300,1790=>246,1791=>446,1872=>877,1873=>877,1874=>877,1875=>877,1876=>877,1877=>877,1878=>877,1879=>598,1880=>598,1881=>348,1882=>348,1883=>345,1884=>901,1885=>591,1886=>591,1887=>591,1888=>858,1889=>858,1890=>902,1891=>902,1892=>902,1893=>475,1894=>475,1895=>585,1896=>585,1897=>585,1898=>678,1899=>345,1900=>345,1901=>901,1902=>598,1903=>598,1904=>901,1905=>345,1906=>598,1907=>229,1908=>229,1909=>672,1910=>672,1911=>753,1912=>329,1913=>329,1914=>710,1915=>710,1916=>598,1917=>901,1918=>901,1919=>486,1920=>450,1921=>501,1922=>582,1923=>544,1924=>482,1925=>433,1926=>448,1927=>462,1928=>474,1929=>471,1930=>469,1931=>537,1932=>499,1933=>514,1934=>471,1935=>572,1936=>880,1937=>440,1938=>476,1939=>594,1940=>469,1941=>448,1942=>441,1943=>519,1944=>573,1945=>459,1946=>447,1947=>496,1948=>541,1949=>887,1950=>883,1951=>964,1952=>558,1953=>505,1954=>471,1955=>554,1956=>459,1957=>486,1958=>36,1959=>36,1960=>43,1961=>45,1962=>43,1963=>45,1964=>45,1965=>45,1966=>45,1967=>45,1968=>0,1969=>406,2304=>0,2305=>0,2306=>0,2307=>398,2308=>861,2309=>861,2310=>1070,2311=>553,2312=>553,2313=>597,2314=>848,2315=>967,2316=>828,2317=>654,2318=>654,2319=>654,2320=>654,2321=>1070,2322=>1070,2323=>1070,2324=>1070,2325=>743,2326=>797,2327=>694,2328=>694,2329=>730,2330=>734,2331=>887,2332=>813,2333=>833,2334=>734,2335=>628,2336=>628,2337=>652,2338=>608,2339=>694,2340=>654,2341=>694,2342=>588,2343=>694,2344=>654,2345=>654,2346=>614,2347=>788,2348=>621,2349=>694,2350=>694,2351=>694,2352=>494,2353=>494,2354=>787,2355=>847,2356=>847,2357=>621,2358=>787,2359=>614,2360=>734,2361=>608,2362=>341,2363=>341,2364=>0,2365=>569,2366=>341,2367=>341,2368=>341,2369=>0,2370=>0,2371=>0,2372=>0,2373=>0,2374=>0,2375=>0,2376=>0,2377=>341,2378=>341,2379=>341,2380=>341,2381=>0,2382=>420,2383=>226,2384=>1047,2385=>0,2386=>0,2387=>0,2388=>0,2389=>0,2390=>0,2391=>0,2392=>743,2393=>797,2394=>694,2395=>813,2396=>652,2397=>608,2398=>788,2399=>694,2400=>967,2401=>827,2402=>0,2403=>0,2404=>450,2405=>644,2406=>455,2407=>419,2408=>569,2409=>509,2410=>701,2411=>628,2412=>569,2413=>701,2414=>608,2415=>608,2416=>455,2417=>398,2418=>861,2419=>861,2420=>1040,2421=>1040,2422=>861,2423=>861,2425=>813,2426=>694,2427=>654,2428=>814,2429=>569,2430=>730,2431=>621,2433=>0,2434=>300,2435=>312,2437=>594,2438=>776,2439=>469,2440=>513,2441=>535,2442=>561,2443=>604,2444=>481,2447=>580,2448=>604,2451=>540,2452=>620,2453=>570,2454=>485,2455=>484,2456=>471,2457=>457,2458=>408,2459=>452,2460=>591,2461=>551,2462=>771,2463=>414,2464=>404,2465=>522,2466=>415,2467=>450,2468=>551,2469=>477,2470=>478,2471=>449,2472=>448,2474=>535,2475=>611,2476=>443,2477=>534,2478=>492,2479=>474,2480=>442,2482=>542,2486=>507,2487=>467,2488=>523,2489=>419,2492=>0,2493=>419,2494=>202,2495=>189,2496=>202,2497=>0,2498=>0,2499=>0,2500=>0,2503=>294,2504=>289,2507=>774,2508=>825,2509=>0,2510=>356,2519=>219,2524=>523,2525=>420,2527=>469,2528=>604,2529=>481,2530=>0,2531=>0,2534=>500,2535=>437,2536=>479,2537=>507,2538=>497,2539=>500,2540=>482,2541=>503,2542=>517,2543=>481,2544=>443,2545=>443,2546=>429,2547=>383,2548=>432,2549=>478,2550=>539,2551=>158,2552=>365,2553=>280,2554=>357,2555=>344,2561=>0,2562=>0,2563=>385,2565=>781,2566=>982,2567=>789,2568=>860,2569=>559,2570=>559,2575=>589,2576=>781,2579=>559,2580=>781,2581=>538,2582=>650,2583=>650,2584=>781,2585=>589,2586=>589,2587=>699,2588=>650,2589=>589,2590=>589,2591=>589,2592=>589,2593=>559,2594=>589,2595=>589,2596=>559,2597=>650,2598=>589,2599=>650,2600=>626,2602=>650,2603=>570,2604=>650,2605=>559,2606=>650,2607=>781,2608=>490,2610=>626,2611=>626,2613=>589,2614=>650,2616=>650,2617=>490,2620=>0,2622=>320,2623=>260,2624=>320,2625=>0,2626=>0,2631=>0,2632=>0,2635=>0,2636=>0,2637=>0,2641=>0,2649=>650,2650=>650,2651=>650,2652=>559,2654=>570,2662=>420,2663=>350,2664=>490,2665=>434,2666=>574,2667=>455,2668=>452,2669=>490,2670=>504,2671=>504,2672=>0,2673=>0,2674=>589,2675=>559,2676=>808,2677=>0,2689=>0,2690=>0,2691=>287,2693=>1055,2694=>1272,2695=>643,2696=>772,2697=>756,2698=>1034,2699=>971,2700=>885,2701=>1055,2703=>1055,2704=>1055,2705=>1272,2707=>1272,2708=>1272,2709=>706,2710=>822,2711=>730,2712=>653,2713=>636,2714=>800,2715=>773,2716=>946,2717=>954,2718=>834,2719=>582,2720=>582,2721=>549,2722=>497,2723=>872,2724=>663,2725=>767,2726=>559,2727=>600,2728=>745,2730=>649,2731=>714,2732=>803,2733=>800,2734=>706,2735=>819,2736=>517,2738=>756,2739=>780,2741=>623,2742=>771,2743=>559,2744=>810,2745=>711,2748=>0,2749=>497,2750=>245,2751=>226,2752=>286,2753=>0,2754=>0,2755=>0,2756=>0,2757=>0,2759=>0,2760=>0,2761=>258,2763=>250,2764=>257,2765=>0,2768=>1078,2784=>1071,2785=>841,2786=>0,2787=>0,2790=>602,2791=>490,2792=>587,2793=>666,2794=>620,2795=>657,2796=>560,2797=>695,2798=>550,2799=>592,2800=>362,2801=>805,2817=>0,2818=>257,2819=>389,2821=>789,2822=>968,2823=>832,2824=>863,2825=>833,2826=>852,2827=>807,2828=>600,2831=>703,2832=>1000,2835=>689,2836=>959,2837=>739,2838=>748,2839=>768,2840=>775,2841=>828,2842=>711,2843=>634,2844=>691,2845=>679,2846=>624,2847=>693,2848=>667,2849=>741,2850=>692,2851=>756,2852=>713,2853=>748,2854=>688,2855=>677,2856=>689,2858=>748,2859=>960,2860=>682,2861=>787,2862=>748,2863=>808,2864=>758,2866=>870,2867=>722,2869=>676,2870=>744,2871=>738,2872=>652,2873=>583,2876=>0,2877=>366,2878=>228,2879=>0,2880=>218,2881=>0,2882=>0,2883=>0,2884=>0,2887=>501,2888=>1137,2891=>1322,2892=>1318,2893=>0,2902=>0,2903=>201,2908=>741,2909=>692,2911=>825,2912=>785,2913=>700,2914=>0,2915=>0,2918=>724,2919=>521,2920=>498,2921=>786,2922=>641,2923=>624,2924=>628,2925=>612,2926=>522,2927=>497,2928=>636,2929=>755,2930=>228,2931=>440,2932=>650,2933=>741,2934=>787,2935=>782,2946=>0,2947=>616,2949=>910,2950=>1072,2951=>848,2952=>591,2953=>492,2954=>1123,2958=>602,2959=>602,2960=>691,2962=>753,2963=>753,2964=>1597,2965=>686,2969=>727,2970=>607,2972=>700,2974=>879,2975=>589,2979=>1230,2980=>697,2984=>569,2985=>911,2986=>507,2990=>634,2991=>702,2992=>452,2993=>573,2994=>661,2995=>804,2996=>655,2997=>770,2998=>794,2999=>873,3000=>880,3001=>1102,3006=>452,3007=>176,3008=>0,3009=>404,3010=>641,3014=>690,3015=>500,3016=>848,3018=>1159,3019=>1000,3020=>1488,3021=>0,3024=>763,3031=>844,3046=>500,3047=>686,3048=>829,3049=>673,3050=>793,3051=>829,3052=>841,3053=>602,3054=>910,3055=>797,3056=>587,3057=>697,3058=>878,3059=>609,3060=>833,3061=>1549,3062=>664,3063=>978,3064=>1325,3065=>825,3066=>711,3330=>417,3331=>221,3333=>1055,3334=>1195,3335=>792,3336=>1469,3337=>570,3338=>1244,3339=>676,3340=>897,3342=>1008,3343=>1008,3344=>1538,3346=>586,3347=>981,3348=>1254,3349=>776,3350=>798,3351=>691,3352=>1095,3353=>811,3354=>728,3355=>963,3356=>704,3357=>1245,3358=>1106,3359=>466,3360=>531,3361=>984,3362=>1028,3363=>1102,3364=>780,3365=>732,3366=>485,3367=>737,3368=>747,3369=>747,3370=>780,3371=>962,3372=>1023,3373=>500,3374=>511,3375=>792,3376=>530,3377=>512,3378=>712,3379=>556,3380=>519,3381=>716,3382=>786,3383=>921,3384=>977,3385=>978,3386=>780,3389=>375,3390=>403,3391=>199,3392=>190,3393=>275,3394=>258,3395=>378,3396=>378,3398=>542,3399=>478,3400=>1070,3402=>0,3403=>0,3404=>0,3405=>89,3406=>221,3415=>677,3424=>676,3425=>1006,3426=>0,3427=>0,3430=>559,3431=>660,3432=>674,3433=>933,3434=>671,3435=>699,3436=>704,3437=>694,3438=>678,3439=>684,3440=>981,3441=>742,3442=>1056,3443=>660,3444=>664,3445=>870,3449=>864,3450=>1137,3451=>776,3452=>534,3453=>860,3454=>780,3455=>866,3458=>254,3459=>254,3461=>616,3462=>922,3463=>908,3464=>907,3465=>626,3466=>615,3467=>763,3468=>1109,3469=>1019,3470=>1311,3471=>1050,3472=>1477,3473=>677,3474=>746,3475=>1314,3476=>741,3477=>741,3478=>1170,3482=>894,3483=>715,3484=>715,3485=>719,3486=>741,3487=>834,3488=>719,3489=>677,3490=>677,3491=>1302,3492=>1005,3493=>919,3494=>677,3495=>719,3496=>677,3497=>741,3498=>677,3499=>1123,3500=>743,3501=>779,3502=>677,3503=>444,3504=>741,3505=>921,3507=>444,3508=>677,3509=>677,3510=>715,3511=>787,3512=>719,3513=>741,3514=>719,3515=>604,3517=>763,3520=>719,3521=>715,3522=>677,3523=>719,3524=>787,3525=>763,3526=>677,3530=>0,3535=>329,3536=>319,3537=>319,3538=>0,3539=>0,3540=>0,3542=>0,3544=>329,3545=>691,3546=>1062,3547=>1333,3548=>1278,3549=>1235,3550=>1292,3551=>461,3570=>680,3571=>481,3572=>948,3585=>532,3586=>472,3587=>534,3588=>532,3589=>544,3590=>583,3591=>417,3592=>488,3593=>604,3594=>472,3595=>534,3596=>716,3597=>717,3598=>568,3599=>568,3600=>457,3601=>637,3602=>731,3603=>790,3604=>531,3605=>542,3606=>522,3607=>577,3608=>468,3609=>603,3610=>554,3611=>554,3612=>556,3613=>556,3614=>604,3615=>604,3616=>568,3617=>542,3618=>496,3619=>442,3620=>530,3621=>512,3622=>568,3623=>478,3624=>543,3625=>614,3626=>525,3627=>578,3628=>659,3629=>514,3630=>514,3631=>450,3632=>402,3633=>0,3634=>378,3635=>415,3636=>0,3637=>0,3638=>0,3639=>0,3640=>0,3641=>0,3642=>0,3647=>620,3648=>286,3649=>521,3650=>447,3651=>426,3652=>424,3653=>333,3654=>453,3655=>0,3656=>0,3657=>0,3658=>0,3659=>0,3660=>0,3661=>0,3662=>0,3663=>657,3664=>528,3665=>528,3666=>571,3667=>594,3668=>631,3669=>632,3670=>478,3671=>713,3672=>597,3673=>565,3674=>615,3675=>1381,4256=>453,4257=>448,4258=>546,4259=>619,4260=>478,4261=>481,4262=>459,4263=>707,4264=>467,4265=>471,4266=>855,4267=>464,4268=>443,4269=>707,4270=>460,4271=>465,4272=>686,4273=>440,4274=>550,4275=>561,4276=>580,4277=>467,4278=>630,4279=>466,4280=>517,4281=>456,4282=>502,4283=>464,4284=>534,4285=>440,4286=>443,4287=>522,4288=>460,4289=>463,4290=>536,4291=>455,4292=>468,4293=>449,4304=>454,4305=>452,4306=>544,4307=>629,4308=>451,4309=>452,4310=>452,4311=>702,4312=>451,4313=>452,4314=>820,4315=>451,4316=>453,4317=>695,4318=>449,4319=>448,4320=>694,4321=>501,4322=>544,4323=>518,4324=>560,4325=>450,4326=>627,4327=>452,4328=>490,4329=>452,4330=>485,4331=>452,4332=>485,4333=>443,4334=>500,4335=>582,4336=>455,4337=>451,4338=>482,4339=>414,4340=>453,4341=>418,4342=>741,4343=>452,4344=>452,4345=>544,4346=>454,4347=>410,4348=>339,4608=>583,4609=>770,4610=>560,4611=>525,4612=>525,4613=>583,4614=>758,4616=>598,4617=>787,4618=>817,4619=>583,4620=>758,4621=>612,4622=>875,4623=>817,4624=>817,4625=>1050,4626=>1050,4627=>817,4628=>1050,4629=>817,4630=>787,4631=>1021,4632=>933,4633=>1137,4634=>1067,4635=>980,4636=>1065,4637=>962,4638=>962,4639=>1097,4640=>831,4641=>1021,4642=>851,4643=>735,4644=>875,4645=>968,4646=>817,4647=>881,4648=>583,4649=>642,4650=>583,4651=>758,4652=>700,4653=>583,4654=>700,4655=>758,4656=>583,4657=>787,4658=>787,4659=>583,4660=>729,4661=>583,4662=>583,4663=>817,4664=>642,4665=>817,4666=>846,4667=>642,4668=>758,4669=>744,4670=>642,4671=>817,4672=>700,4673=>700,4674=>700,4675=>758,4676=>700,4677=>700,4678=>729,4680=>846,4682=>1079,4683=>700,4684=>700,4685=>1021,4688=>700,4689=>700,4690=>700,4691=>758,4692=>700,4693=>758,4694=>729,4696=>846,4698=>1079,4699=>700,4700=>700,4701=>1021,4704=>525,4705=>758,4706=>758,4707=>525,4708=>700,4709=>773,4710=>525,4711=>787,4712=>525,4713=>758,4714=>758,4715=>525,4716=>700,4717=>773,4718=>525,4719=>525,4720=>729,4721=>729,4722=>729,4723=>802,4724=>729,4725=>729,4726=>758,4727=>729,4728=>758,4729=>758,4730=>758,4731=>817,4732=>758,4733=>817,4734=>758,4735=>758,4736=>612,4737=>817,4738=>817,4739=>612,4740=>787,4741=>583,4742=>875,4744=>962,4746=>992,4747=>700,4748=>758,4749=>904,4752=>408,4753=>583,4754=>525,4755=>554,4756=>481,4757=>554,4758=>642,4759=>671,4760=>700,4761=>758,4762=>729,4763=>700,4764=>671,4765=>700,4766=>758,4767=>700,4768=>583,4769=>735,4770=>822,4771=>583,4772=>793,4773=>583,4774=>583,4775=>694,4776=>554,4777=>729,4778=>773,4779=>554,4780=>700,4781=>554,4782=>554,4784=>992,4786=>1021,4787=>671,4788=>787,4789=>904,4792=>729,4793=>904,4794=>948,4795=>729,4796=>875,4797=>729,4798=>729,4800=>1137,4802=>1167,4803=>758,4804=>875,4805=>1108,4808=>758,4809=>875,4810=>700,4811=>700,4812=>700,4813=>992,4814=>758,4816=>554,4817=>787,4818=>758,4819=>583,4820=>758,4821=>496,4822=>612,4824=>525,4825=>700,4826=>700,4827=>525,4828=>685,4829=>729,4830=>510,4831=>729,4832=>962,4833=>962,4834=>962,4835=>962,4836=>962,4837=>1021,4838=>962,4839=>962,4840=>467,4841=>525,4842=>671,4843=>612,4844=>612,4845=>671,4846=>671,4848=>612,4849=>875,4850=>817,4851=>642,4852=>729,4853=>729,4854=>758,4855=>817,4856=>700,4857=>758,4858=>715,4859=>700,4860=>700,4861=>787,4862=>758,4863=>700,4864=>700,4865=>758,4866=>715,4867=>700,4868=>700,4869=>787,4870=>758,4871=>700,4872=>467,4873=>671,4874=>671,4875=>612,4876=>612,4877=>583,4878=>525,4880=>846,4882=>904,4883=>554,4884=>700,4885=>817,4888=>525,4889=>729,4890=>729,4891=>612,4892=>671,4893=>583,4894=>525,4896=>817,4897=>1021,4898=>1021,4899=>817,4900=>992,4901=>758,4902=>817,4903=>1021,4904=>1079,4905=>1137,4906=>1137,4907=>1050,4908=>1312,4909=>1050,4910=>1050,4911=>1123,4912=>647,4913=>793,4914=>822,4915=>647,4916=>793,4917=>764,4918=>583,4919=>647,4920=>583,4921=>793,4922=>822,4923=>583,4924=>793,4925=>764,4926=>583,4927=>793,4928=>540,4929=>758,4930=>583,4931=>467,4932=>583,4933=>481,4934=>612,4936=>758,4937=>700,4938=>758,4939=>700,4940=>831,4941=>671,4942=>758,4943=>700,4944=>758,4945=>758,4946=>758,4947=>817,4948=>758,4949=>758,4950=>817,4951=>758,4952=>642,4953=>980,4954=>758,4961=>233,4962=>583,4963=>408,4964=>408,4965=>525,4966=>525,4967=>233,4968=>700,4969=>671,4970=>612,4971=>642,4972=>642,4973=>642,4974=>583,4975=>700,4976=>758,4977=>642,4978=>583,4979=>700,4980=>729,4981=>720,4982=>583,4983=>758,4984=>700,4985=>904,4986=>612,4987=>583,4988=>875,5024=>711,5025=>678,5026=>604,5027=>667,5028=>796,5029=>301,5030=>516,5031=>544,5032=>457,5033=>716,5034=>703,5035=>383,5036=>628,5037=>709,5038=>455,5039=>601,5040=>472,5041=>574,5042=>730,5043=>939,5044=>498,5045=>528,5046=>667,5047=>891,5048=>505,5049=>792,5050=>957,5051=>725,5052=>595,5053=>733,5054=>698,5055=>638,5056=>720,5057=>732,5058=>624,5059=>638,5060=>565,5061=>903,5062=>655,5063=>681,5064=>675,5065=>949,5066=>683,5067=>547,5068=>693,5069=>732,5070=>529,5071=>569,5072=>536,5073=>677,5074=>631,5075=>542,5076=>973,5077=>543,5078=>607,5079=>652,5080=>652,5081=>693,5082=>514,5083=>803,5084=>658,5085=>597,5086=>627,5087=>659,5088=>679,5089=>706,5090=>563,5091=>618,5092=>767,5093=>776,5094=>731,5095=>492,5096=>808,5097=>823,5098=>796,5099=>689,5100=>716,5101=>518,5102=>521,5103=>719,5104=>563,5105=>776,5106=>634,5107=>822,5108=>621,5920=>502,5921=>502,5922=>500,5923=>498,5924=>500,5925=>502,5926=>502,5927=>502,5928=>500,5929=>503,5930=>502,5931=>502,5932=>500,5933=>500,5934=>500,5935=>796,5936=>500,5937=>502,5938=>0,5939=>0,5940=>0,5941=>230,5942=>397,6480=>537,6481=>537,6482=>531,6483=>678,6484=>682,6485=>628,6486=>732,6487=>721,6488=>598,6489=>583,6490=>702,6491=>554,6492=>683,6493=>554,6494=>710,6495=>695,6496=>523,6497=>678,6498=>589,6499=>272,6500=>506,6501=>515,6502=>515,6503=>210,6504=>210,6505=>515,6506=>515,6507=>515,6508=>229,6509=>705,6512=>649,6513=>538,6514=>568,6515=>520,6516=>544,6656=>820,6657=>958,6658=>758,6659=>859,6660=>958,6661=>727,6662=>904,6663=>940,6664=>850,6665=>905,6666=>838,6667=>961,6668=>1000,6669=>880,6670=>1189,6671=>1246,6672=>1177,6673=>757,6674=>1246,6675=>1192,6676=>709,6677=>1192,6678=>1075,6679=>0,6680=>0,6681=>534,6682=>690,6683=>0,6686=>697,6687=>500,7424=>507,7425=>659,7426=>639,7427=>468,7428=>461,7429=>537,7430=>537,7431=>447,7432=>403,7433=>278,7434=>312,7435=>523,7436=>449,7437=>652,7438=>539,7439=>523,7440=>435,7441=>507,7442=>507,7443=>673,7444=>705,7445=>378,7446=>483,7447=>483,7448=>438,7449=>484,7450=>489,7451=>423,7452=>522,7453=>488,7454=>660,7455=>500,7456=>512,7457=>699,7458=>444,7459=>355,7460=>444,7461=>681,7462=>392,7463=>483,7464=>483,7465=>372,7466=>541,7467=>470,7468=>503,7469=>653,7470=>441,7471=>441,7472=>510,7473=>435,7474=>435,7475=>491,7476=>527,7477=>255,7478=>300,7479=>512,7480=>436,7481=>638,7482=>535,7483=>539,7484=>483,7485=>350,7486=>411,7487=>480,7488=>409,7489=>526,7490=>695,7491=>297,7492=>297,7493=>335,7494=>440,7495=>335,7496=>335,7497=>297,7498=>297,7499=>279,7500=>258,7501=>323,7502=>186,7503=>338,7504=>521,7505=>335,7506=>335,7507=>290,7508=>483,7509=>483,7510=>335,7511=>186,7512=>335,7513=>326,7514=>521,7515=>322,7516=>442,7517=>353,7518=>321,7519=>357,7520=>430,7521=>321,7522=>186,7523=>223,7524=>335,7525=>335,7526=>353,7527=>321,7528=>353,7529=>430,7530=>321,7531=>754,7532=>500,7533=>500,7534=>333,7535=>778,7536=>500,7537=>500,7538=>333,7539=>333,7540=>389,7541=>278,7542=>444,7543=>467,7544=>483,7545=>447,7546=>774,7547=>280,7548=>278,7549=>500,7550=>522,7551=>514,7552=>500,7553=>500,7554=>333,7555=>676,7556=>525,7557=>278,7558=>802,7559=>507,7560=>500,7561=>333,7562=>389,7563=>384,7564=>500,7565=>500,7566=>444,7567=>602,7568=>637,7569=>648,7570=>590,7571=>559,7572=>426,7573=>590,7574=>413,7575=>444,7576=>360,7577=>638,7578=>389,7579=>335,7580=>292,7581=>285,7582=>341,7583=>280,7584=>255,7585=>251,7586=>323,7587=>336,7588=>188,7589=>212,7590=>184,7591=>182,7592=>230,7593=>236,7594=>196,7595=>297,7596=>497,7597=>529,7598=>401,7599=>404,7600=>364,7601=>349,7602=>412,7603=>224,7604=>312,7605=>197,7606=>344,7607=>346,7608=>354,7609=>334,7610=>325,7611=>277,7612=>393,7613=>288,7614=>277,7615=>338,7616=>0,7617=>0,7619=>0,7626=>0,7627=>0,7628=>0,7629=>0,7630=>0,7631=>0,7635=>0,7636=>0,7637=>0,7638=>0,7639=>0,7640=>0,7641=>0,7642=>0,7643=>0,7644=>0,7645=>0,7646=>0,7647=>0,7648=>0,7649=>0,7650=>0,7651=>0,7652=>0,7653=>0,7654=>0,7676=>0,7677=>0,7678=>0,7679=>0,7680=>721,7681=>435,7682=>631,7683=>500,7684=>631,7685=>500,7686=>631,7687=>500,7688=>674,7689=>444,7690=>719,7691=>499,7692=>719,7693=>499,7694=>719,7695=>499,7696=>720,7697=>499,7698=>719,7699=>499,7700=>611,7701=>444,7702=>611,7703=>444,7704=>610,7705=>444,7706=>610,7707=>444,7708=>611,7709=>444,7710=>564,7711=>373,7712=>722,7713=>467,7714=>714,7715=>498,7716=>714,7717=>498,7718=>714,7719=>498,7720=>713,7721=>498,7722=>713,7723=>498,7724=>327,7725=>278,7726=>333,7727=>278,7728=>709,7729=>513,7730=>709,7731=>513,7732=>709,7733=>513,7734=>611,7735=>258,7736=>611,7737=>258,7738=>611,7739=>258,7740=>611,7741=>258,7742=>881,7743=>779,7744=>881,7745=>779,7746=>881,7747=>779,7748=>725,7749=>489,7750=>725,7751=>489,7752=>725,7753=>489,7754=>725,7755=>489,7756=>722,7757=>491,7758=>724,7759=>491,7760=>722,7761=>491,7762=>722,7763=>491,7764=>576,7765=>500,7766=>576,7767=>500,7768=>667,7769=>345,7770=>667,7771=>345,7772=>667,7773=>345,7774=>667,7775=>345,7776=>529,7777=>367,7778=>529,7779=>367,7780=>529,7781=>367,7782=>529,7783=>367,7784=>529,7785=>367,7786=>606,7787=>283,7788=>606,7789=>283,7790=>606,7791=>283,7792=>606,7793=>283,7794=>721,7795=>490,7796=>721,7797=>490,7798=>721,7799=>490,7800=>721,7801=>490,7802=>721,7803=>490,7804=>701,7805=>468,7806=>701,7807=>468,7808=>947,7809=>683,7810=>947,7811=>683,7812=>947,7813=>683,7814=>947,7815=>683,7816=>947,7817=>683,7818=>714,7819=>482,7820=>714,7821=>482,7822=>701,7823=>471,7824=>613,7825=>417,7826=>613,7827=>417,7828=>613,7829=>417,7830=>498,7831=>283,7832=>683,7833=>471,7834=>435,7835=>373,7836=>381,7837=>373,7838=>659,7839=>516,7840=>721,7841=>435,7842=>721,7843=>435,7844=>721,7845=>435,7846=>721,7847=>435,7848=>721,7849=>454,7850=>721,7851=>435,7852=>721,7853=>435,7854=>721,7855=>435,7856=>721,7857=>435,7858=>721,7859=>454,7860=>721,7861=>435,7862=>721,7863=>435,7864=>610,7865=>444,7866=>610,7867=>444,7868=>610,7869=>444,7870=>610,7871=>444,7872=>610,7873=>444,7874=>610,7875=>444,7876=>610,7877=>444,7878=>610,7879=>444,7880=>327,7881=>278,7882=>327,7883=>278,7884=>724,7885=>491,7886=>724,7887=>491,7888=>724,7889=>491,7890=>724,7891=>491,7892=>724,7893=>491,7894=>724,7895=>491,7896=>724,7897=>491,7898=>723,7899=>536,7900=>723,7901=>536,7902=>720,7903=>536,7904=>723,7905=>536,7906=>723,7907=>536,7908=>721,7909=>490,7910=>717,7911=>490,7912=>783,7913=>545,7914=>783,7915=>545,7916=>783,7917=>545,7918=>783,7919=>545,7920=>783,7921=>545,7922=>701,7923=>471,7924=>701,7925=>471,7926=>701,7927=>501,7928=>701,7929=>471,7930=>908,7931=>502,7932=>501,7933=>342,7934=>713,7935=>510,7936=>583,7937=>583,7938=>583,7939=>583,7940=>583,7941=>583,7942=>583,7943=>583,7944=>721,7945=>721,7946=>813,7947=>817,7948=>763,7949=>765,7950=>720,7951=>721,7952=>426,7953=>426,7954=>426,7955=>426,7956=>426,7957=>426,7960=>770,7961=>770,7962=>902,7963=>919,7964=>940,7965=>936,7968=>536,7969=>536,7970=>536,7971=>536,7972=>536,7973=>536,7974=>536,7975=>536,7976=>847,7977=>859,7978=>986,7979=>1010,7980=>1026,7981=>1029,7982=>918,7983=>921,7984=>286,7985=>286,7986=>302,7987=>320,7988=>300,7989=>306,7990=>312,7991=>303,7992=>475,7993=>507,7994=>617,7995=>654,7996=>655,7997=>660,7998=>551,7999=>566,8000=>491,8001=>491,8002=>491,8003=>491,8004=>491,8005=>491,8008=>816,8009=>825,8010=>969,8011=>995,8012=>938,8013=>955,8016=>514,8017=>514,8018=>514,8019=>514,8020=>514,8021=>514,8022=>514,8023=>514,8025=>818,8027=>988,8029=>989,8031=>893,8032=>693,8033=>693,8034=>693,8035=>693,8036=>693,8037=>693,8038=>693,8039=>693,8040=>836,8041=>843,8042=>1006,8043=>1024,8044=>974,8045=>986,8046=>905,8047=>896,8048=>583,8049=>583,8050=>426,8051=>426,8052=>536,8053=>536,8054=>286,8055=>286,8056=>491,8057=>491,8058=>514,8059=>514,8060=>693,8061=>693,8064=>583,8065=>583,8066=>583,8067=>583,8068=>583,8069=>583,8070=>583,8071=>583,8072=>888,8073=>889,8074=>984,8075=>991,8076=>943,8077=>948,8078=>884,8079=>886,8080=>536,8081=>536,8082=>536,8083=>536,8084=>536,8085=>536,8086=>536,8087=>536,8088=>1017,8089=>1026,8090=>1153,8091=>1179,8092=>1195,8093=>1199,8094=>1088,8095=>1088,8096=>693,8097=>693,8098=>693,8099=>693,8100=>693,8101=>693,8102=>693,8103=>693,8104=>1034,8105=>1040,8106=>1210,8107=>1229,8108=>1176,8109=>1186,8110=>1098,8111=>1090,8112=>583,8113=>583,8114=>583,8115=>583,8116=>583,8118=>583,8119=>583,8120=>721,8121=>721,8122=>721,8123=>721,8124=>889,8125=>250,8126=>332,8127=>500,8128=>500,8129=>534,8130=>536,8131=>536,8132=>536,8134=>536,8135=>536,8136=>761,8137=>800,8138=>829,8139=>893,8140=>883,8141=>500,8142=>500,8143=>500,8144=>286,8145=>286,8146=>286,8147=>286,8150=>286,8151=>286,8152=>327,8153=>327,8154=>447,8155=>537,8157=>500,8158=>500,8159=>500,8160=>514,8161=>514,8162=>514,8163=>514,8164=>528,8165=>528,8166=>514,8167=>514,8168=>666,8169=>666,8170=>816,8171=>828,8172=>721,8173=>333,8174=>333,8175=>500,8178=>693,8179=>693,8180=>693,8182=>693,8183=>693,8184=>832,8185=>899,8186=>847,8187=>852,8188=>928,8189=>500,8190=>500,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>500,8200=>250,8201=>166,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>500,8211=>500,8212=>1000,8213=>1000,8214=>320,8215=>478,8216=>200,8217=>200,8218=>200,8219=>200,8220=>400,8221=>400,8222=>400,8223=>400,8224=>500,8225=>500,8226=>400,8227=>400,8228=>620,8229=>620,8230=>1000,8231=>250,8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>250,8240=>1000,8241=>1363,8242=>250,8243=>450,8244=>636,8245=>250,8246=>450,8247=>636,8248=>469,8249=>250,8250=>250,8251=>629,8252=>666,8253=>444,8254=>500,8255=>953,8256=>953,8257=>314,8258=>931,8259=>400,8260=>167,8261=>383,8262=>383,8263=>888,8264=>777,8265=>777,8266=>500,8267=>453,8268=>400,8269=>400,8270=>500,8271=>278,8272=>882,8273=>500,8274=>497,8275=>500,8276=>953,8277=>512,8278=>410,8279=>838,8280=>620,8281=>620,8282=>179,8283=>621,8284=>564,8285=>179,8286=>179,8287=>222,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>320,8305=>180,8308=>320,8309=>320,8310=>320,8311=>320,8312=>320,8313=>320,8314=>340,8315=>340,8316=>340,8317=>216,8318=>216,8319=>335,8320=>320,8321=>320,8322=>320,8323=>320,8324=>320,8325=>320,8326=>320,8327=>320,8328=>320,8329=>320,8330=>340,8331=>340,8332=>350,8333=>216,8334=>216,8336=>300,8337=>295,8338=>325,8339=>330,8340=>292,8352=>698,8353=>667,8354=>667,8355=>556,8356=>500,8357=>778,8358=>722,8359=>940,8360=>1009,8361=>813,8362=>869,8363=>512,8364=>741,8365=>722,8366=>611,8367=>1340,8368=>489,8369=>601,8370=>619,8371=>722,8372=>556,8373=>611,8374=>498,8375=>569,8376=>524,8377=>654,8400=>0,8401=>0,8402=>0,8403=>0,8404=>0,8405=>0,8406=>0,8407=>0,8408=>0,8409=>0,8410=>0,8411=>0,8412=>0,8413=>0,8414=>0,8415=>0,8416=>0,8417=>0,8418=>0,8419=>0,8420=>0,8421=>0,8422=>0,8423=>0,8424=>0,8425=>0,8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,8432=>0,8448=>741,8449=>723,8450=>674,8451=>954,8452=>506,8453=>721,8454=>766,8455=>525,8456=>667,8457=>864,8458=>510,8459=>1127,8460=>649,8461=>768,8462=>490,8463=>490,8464=>808,8465=>613,8466=>845,8467=>447,8468=>778,8469=>701,8470=>880,8471=>792,8472=>767,8473=>589,8474=>729,8475=>964,8476=>711,8477=>755,8478=>667,8479=>667,8480=>960,8481=>1116,8482=>1048,8483=>722,8484=>640,8485=>389,8486=>723,8487=>750,8488=>643,8489=>286,8490=>709,8491=>721,8492=>906,8493=>603,8494=>533,8495=>393,8496=>682,8497=>920,8498=>564,8499=>1231,8500=>407,8501=>517,8502=>537,8503=>350,8504=>537,8505=>417,8506=>906,8507=>1155,8508=>655,8510=>577,8511=>722,8512=>600,8513=>663,8514=>485,8515=>485,8516=>637,8517=>768,8518=>653,8519=>606,8520=>369,8521=>535,8522=>516,8523=>778,8525=>899,8526=>413,8528=>780,8529=>770,8530=>980,8531=>750,8532=>801,8533=>720,8534=>796,8535=>736,8536=>766,8537=>750,8538=>730,8539=>750,8540=>770,8541=>760,8542=>750,8543=>700,8544=>327,8545=>658,8546=>977,8547=>1041,8548=>701,8549=>1040,8550=>1363,8551=>1679,8552=>1051,8553=>714,8554=>1046,8555=>1366,8556=>611,8557=>670,8558=>719,8559=>881,8560=>278,8561=>536,8562=>794,8563=>734,8564=>468,8565=>718,8566=>986,8567=>1244,8568=>736,8569=>482,8570=>754,8571=>1012,8572=>258,8573=>444,8574=>499,8575=>779,8576=>1082,8577=>722,8578=>1090,8579=>667,8580=>427,8581=>667,8582=>528,8583=>722,8584=>1093,8585=>771,8592=>900,8593=>472,8594=>900,8595=>500,8596=>900,8597=>499,8598=>800,8599=>800,8600=>800,8601=>800,8602=>900,8603=>900,8604=>1000,8605=>1000,8606=>900,8607=>500,8608=>900,8609=>499,8610=>1019,8611=>1019,8612=>1013,8613=>500,8614=>1013,8615=>500,8616=>500,8617=>910,8618=>910,8619=>910,8620=>900,8621=>1147,8622=>900,8623=>592,8624=>482,8625=>482,8626=>482,8627=>482,8628=>658,8629=>658,8630=>1069,8631=>1069,8632=>836,8633=>964,8634=>843,8635=>843,8636=>900,8637=>900,8638=>499,8639=>499,8640=>900,8641=>900,8642=>499,8643=>499,8644=>900,8645=>840,8646=>900,8647=>900,8648=>840,8649=>900,8650=>840,8651=>900,8652=>900,8653=>900,8654=>910,8655=>900,8656=>900,8657=>550,8658=>900,8659=>550,8660=>910,8661=>550,8662=>1000,8663=>1000,8664=>1000,8665=>1000,8666=>910,8667=>910,8668=>1078,8669=>1078,8670=>500,8671=>500,8672=>900,8673=>500,8674=>900,8675=>500,8676=>992,8677=>992,8678=>910,8679=>596,8680=>910,8681=>596,8682=>594,8683=>594,8684=>594,8685=>595,8686=>596,8687=>596,8688=>906,8689=>926,8690=>926,8691=>596,8692=>900,8693=>842,8694=>910,8695=>900,8696=>900,8697=>900,8698=>900,8699=>900,8700=>900,8701=>900,8702=>900,8703=>900,8704=>587,8705=>532,8706=>494,8707=>587,8708=>587,8709=>662,8710=>612,8711=>612,8712=>536,8713=>536,8714=>439,8715=>536,8716=>536,8717=>439,8718=>500,8719=>823,8720=>823,8721=>713,8722=>564,8723=>564,8724=>564,8725=>500,8726=>500,8727=>400,8728=>400,8729=>333,8730=>549,8731=>549,8732=>549,8733=>636,8734=>853,8735=>509,8736=>575,8737=>559,8738=>509,8739=>200,8740=>250,8741=>320,8742=>404,8743=>564,8744=>564,8745=>564,8746=>564,8747=>456,8748=>812,8749=>1153,8750=>618,8751=>910,8752=>1238,8753=>646,8754=>651,8755=>651,8756=>565,8757=>568,8758=>250,8759=>629,8760=>564,8761=>758,8762=>564,8763=>636,8764=>636,8765=>636,8766=>503,8767=>614,8768=>297,8769=>636,8770=>636,8771=>636,8772=>636,8773=>636,8774=>636,8775=>636,8776=>636,8777=>636,8778=>636,8779=>636,8780=>636,8781=>636,8782=>636,8783=>636,8784=>564,8785=>564,8786=>564,8787=>564,8788=>735,8789=>755,8790=>564,8791=>564,8792=>564,8793=>564,8794=>564,8795=>564,8796=>600,8797=>564,8798=>564,8799=>564,8800=>564,8801=>636,8802=>636,8803=>636,8804=>636,8805=>636,8806=>636,8807=>636,8808=>636,8809=>636,8810=>900,8811=>899,8812=>410,8813=>636,8814=>636,8815=>636,8816=>636,8817=>636,8818=>636,8819=>636,8820=>636,8821=>636,8822=>636,8823=>636,8824=>636,8825=>636,8826=>636,8827=>636,8828=>636,8829=>636,8830=>636,8831=>636,8832=>636,8833=>636,8834=>636,8835=>636,8836=>636,8837=>636,8838=>636,8839=>636,8840=>636,8841=>636,8842=>636,8843=>636,8844=>564,8845=>564,8846=>564,8847=>564,8848=>564,8849=>564,8850=>564,8851=>563,8852=>564,8853=>636,8854=>636,8855=>636,8856=>636,8857=>636,8858=>636,8859=>636,8860=>636,8861=>636,8862=>636,8863=>636,8864=>636,8865=>636,8866=>778,8867=>778,8868=>712,8869=>712,8870=>466,8871=>466,8872=>595,8873=>588,8874=>710,8875=>706,8876=>595,8877=>596,8878=>608,8879=>706,8880=>636,8881=>636,8882=>636,8883=>636,8884=>636,8885=>636,8886=>1296,8887=>1296,8888=>966,8889=>564,8890=>506,8891=>564,8892=>564,8893=>566,8894=>570,8895=>582,8896=>744,8897=>744,8898=>764,8899=>764,8900=>512,8901=>250,8902=>471,8903=>629,8904=>636,8905=>636,8906=>636,8907=>816,8908=>816,8909=>636,8910=>636,8911=>636,8912=>636,8913=>636,8914=>564,8915=>564,8916=>594,8917=>564,8918=>564,8919=>564,8920=>1215,8921=>1215,8922=>636,8923=>636,8924=>636,8925=>636,8926=>636,8927=>636,8928=>636,8929=>636,8930=>636,8931=>636,8932=>636,8933=>636,8934=>636,8935=>636,8936=>636,8937=>636,8938=>636,8939=>636,8940=>636,8941=>636,8942=>250,8943=>1000,8944=>1000,8945=>1000,8946=>601,8947=>536,8948=>464,8949=>536,8950=>536,8951=>464,8952=>536,8953=>536,8954=>601,8955=>536,8956=>464,8957=>536,8958=>464,8959=>600,8960=>662,8961=>442,8962=>694,8963=>472,8964=>472,8965=>508,8966=>508,8968=>474,8969=>474,8970=>474,8971=>474,8972=>600,8973=>600,8974=>600,8975=>600,8976=>564,8977=>503,8978=>791,8979=>791,8980=>593,8981=>560,8982=>563,8983=>563,8984=>700,8985=>564,8986=>780,8987=>632,8988=>474,8989=>474,8990=>474,8991=>474,8992=>686,8993=>686,8994=>658,8995=>658,8996=>800,8997=>800,8998=>800,8999=>800,9000=>800,9001=>329,9002=>329,9003=>800,9004=>800,9031=>777,9032=>777,9040=>777,9047=>777,9054=>777,9088=>800,9089=>800,9090=>800,9091=>840,9094=>800,9095=>800,9096=>800,9097=>800,9098=>800,9100=>800,9103=>788,9104=>788,9105=>788,9106=>788,9108=>800,9109=>800,9110=>800,9111=>800,9112=>800,9113=>800,9114=>800,9115=>384,9116=>384,9117=>384,9118=>384,9119=>384,9120=>384,9121=>388,9122=>388,9123=>388,9124=>388,9125=>388,9126=>388,9127=>494,9128=>494,9129=>494,9130=>494,9131=>494,9132=>494,9133=>494,9134=>686,9138=>1287,9139=>1287,9140=>860,9141=>861,9142=>861,9144=>889,9145=>889,9146=>889,9147=>889,9148=>889,9149=>889,9166=>800,9167=>800,9180=>896,9181=>896,9182=>903,9183=>904,9184=>910,9185=>910,9186=>761,9187=>910,9189=>942,9190=>817,9216=>800,9217=>800,9218=>800,9219=>800,9220=>800,9221=>800,9222=>800,9223=>800,9224=>800,9225=>800,9226=>800,9227=>800,9228=>800,9229=>800,9230=>800,9231=>800,9232=>800,9233=>800,9234=>800,9235=>800,9236=>800,9237=>800,9238=>800,9239=>800,9240=>800,9241=>800,9242=>800,9243=>800,9244=>800,9245=>800,9246=>800,9247=>800,9248=>800,9249=>800,9250=>556,9251=>500,9252=>800,9253=>800,9254=>500,9312=>788,9313=>788,9314=>788,9315=>788,9316=>788,9317=>788,9318=>788,9319=>788,9320=>788,9321=>788,9472=>889,9473=>889,9474=>889,9475=>889,9484=>889,9485=>889,9486=>889,9487=>889,9488=>889,9489=>889,9490=>889,9491=>889,9492=>889,9493=>889,9494=>889,9495=>889,9496=>889,9497=>889,9498=>889,9499=>889,9500=>889,9501=>889,9502=>889,9503=>889,9504=>889,9505=>889,9506=>889,9507=>889,9508=>889,9509=>889,9510=>889,9511=>889,9512=>889,9513=>889,9514=>889,9515=>889,9516=>889,9517=>889,9518=>889,9519=>889,9520=>889,9521=>889,9522=>889,9523=>889,9524=>889,9525=>889,9526=>889,9527=>889,9528=>889,9529=>889,9530=>889,9531=>889,9532=>889,9533=>889,9534=>889,9535=>889,9536=>889,9537=>889,9538=>889,9539=>889,9540=>889,9541=>889,9542=>889,9543=>889,9544=>889,9545=>889,9546=>889,9547=>889,9552=>889,9553=>889,9554=>889,9555=>889,9556=>889,9557=>889,9558=>889,9559=>889,9560=>889,9561=>889,9562=>889,9563=>889,9564=>889,9565=>889,9566=>889,9567=>889,9568=>889,9569=>889,9570=>889,9571=>889,9572=>889,9573=>889,9574=>889,9575=>889,9576=>889,9577=>889,9578=>889,9579=>889,9580=>889,9581=>889,9582=>889,9583=>889,9584=>889,9585=>889,9586=>889,9587=>889,9588=>889,9589=>889,9590=>889,9591=>889,9592=>889,9593=>889,9594=>889,9595=>889,9596=>600,9597=>889,9598=>600,9599=>889,9600=>761,9601=>761,9602=>761,9603=>761,9604=>761,9605=>761,9606=>761,9607=>761,9608=>761,9609=>761,9610=>761,9611=>761,9612=>761,9613=>761,9614=>761,9615=>761,9616=>761,9617=>1000,9618=>1000,9619=>1000,9620=>761,9621=>761,9622=>761,9623=>761,9624=>761,9625=>761,9626=>761,9627=>761,9628=>761,9629=>761,9630=>761,9631=>761,9632=>761,9633=>761,9634=>761,9635=>761,9636=>761,9637=>761,9638=>761,9639=>761,9640=>761,9641=>761,9642=>346,9643=>346,9644=>761,9645=>761,9646=>761,9647=>761,9648=>761,9649=>761,9650=>840,9651=>840,9652=>420,9653=>420,9654=>800,9655=>800,9656=>386,9657=>386,9658=>800,9659=>800,9660=>840,9661=>840,9662=>420,9663=>420,9664=>800,9665=>800,9666=>386,9667=>386,9668=>800,9669=>800,9670=>788,9671=>788,9672=>788,9673=>791,9674=>494,9675=>791,9676=>791,9677=>785,9678=>791,9679=>791,9680=>791,9681=>791,9682=>791,9683=>791,9684=>791,9685=>791,9686=>791,9687=>791,9688=>400,9689=>761,9690=>761,9691=>761,9692=>791,9693=>791,9694=>791,9695=>791,9696=>791,9697=>791,9698=>761,9699=>761,9700=>761,9701=>761,9702=>400,9703=>761,9704=>761,9705=>761,9706=>761,9707=>761,9708=>840,9709=>840,9710=>840,9711=>885,9712=>761,9713=>761,9714=>761,9715=>761,9716=>791,9717=>791,9718=>791,9719=>791,9720=>780,9721=>780,9722=>780,9723=>567,9724=>567,9725=>435,9726=>435,9727=>780,9728=>800,9729=>800,9730=>748,9731=>800,9732=>800,9733=>811,9734=>816,9735=>468,9736=>677,9737=>724,9738=>944,9739=>944,9740=>686,9741=>944,9742=>715,9743=>715,9744=>757,9745=>755,9746=>755,9747=>756,9748=>800,9749=>837,9750=>719,9751=>719,9752=>782,9753=>800,9754=>800,9755=>800,9756=>800,9757=>430,9758=>800,9759=>430,9760=>517,9761=>660,9762=>724,9763=>732,9764=>886,9765=>577,9766=>489,9767=>563,9768=>490,9769=>770,9770=>725,9771=>860,9772=>668,9773=>753,9774=>724,9775=>730,9776=>600,9777=>600,9778=>600,9779=>600,9780=>600,9781=>600,9782=>600,9783=>600,9784=>730,9785=>724,9786=>724,9787=>724,9788=>799,9789=>659,9790=>659,9791=>495,9792=>495,9793=>495,9794=>686,9795=>661,9796=>544,9797=>608,9798=>605,9799=>545,9800=>804,9801=>583,9802=>796,9803=>1006,9804=>825,9805=>1189,9806=>1144,9807=>1189,9808=>683,9809=>808,9810=>1146,9811=>797,9812=>800,9813=>800,9814=>800,9815=>800,9816=>800,9817=>800,9818=>800,9819=>800,9820=>800,9821=>800,9822=>800,9823=>800,9824=>770,9825=>770,9826=>770,9827=>770,9828=>770,9829=>770,9830=>770,9831=>770,9832=>895,9833=>333,9834=>513,9835=>722,9836=>722,9837=>371,9838=>377,9839=>402,9840=>642,9841=>655,9842=>869,9843=>905,9844=>905,9845=>905,9846=>905,9847=>905,9848=>905,9849=>905,9850=>905,9851=>1016,9852=>1064,9853=>1064,9854=>954,9855=>606,9856=>522,9857=>522,9858=>522,9859=>522,9860=>522,9861=>522,9862=>845,9863=>844,9864=>844,9865=>844,9866=>748,9867=>748,9868=>748,9869=>748,9870=>748,9871=>748,9872=>726,9873=>726,9874=>963,9875=>770,9876=>1038,9877=>388,9878=>997,9879=>787,9880=>508,9881=>809,9882=>1014,9883=>859,9884=>818,9885=>972,9888=>1000,9889=>546,9890=>784,9891=>786,9892=>738,9893=>542,9894=>601,9895=>700,9896=>511,9897=>861,9898=>611,9899=>611,9900=>544,9901=>782,9902=>1025,9903=>1141,9904=>1000,9905=>513,9906=>510,9907=>642,9908=>722,9909=>719,9910=>777,9911=>495,9912=>602,9913=>836,9914=>666,9915=>666,9916=>691,9920=>689,9921=>689,9922=>689,9923=>689,9985=>974,9986=>961,9987=>974,9988=>980,9989=>846,9990=>789,9991=>790,9992=>791,9993=>690,9994=>549,9995=>570,9996=>549,9997=>855,9998=>911,9999=>933,10000=>911,10001=>945,10002=>974,10003=>755,10004=>846,10005=>762,10006=>761,10007=>571,10008=>677,10009=>763,10010=>760,10011=>759,10012=>754,10013=>494,10014=>552,10015=>537,10016=>577,10017=>692,10018=>786,10019=>788,10020=>788,10021=>790,10022=>793,10023=>794,10024=>823,10025=>823,10026=>789,10027=>841,10028=>823,10029=>833,10030=>816,10031=>831,10032=>923,10033=>744,10034=>723,10035=>749,10036=>790,10037=>792,10038=>695,10039=>776,10040=>768,10041=>792,10042=>759,10043=>707,10044=>708,10045=>682,10046=>701,10047=>826,10048=>815,10049=>789,10050=>789,10051=>707,10052=>687,10053=>696,10054=>689,10055=>786,10056=>787,10057=>713,10058=>791,10059=>785,10060=>761,10061=>873,10062=>780,10063=>762,10064=>762,10065=>759,10066=>759,10067=>601,10068=>601,10069=>272,10070=>784,10071=>333,10072=>138,10073=>277,10074=>415,10075=>392,10076=>392,10077=>668,10078=>668,10079=>392,10080=>668,10081=>732,10082=>544,10083=>544,10084=>910,10085=>667,10086=>760,10087=>800,10088=>390,10089=>390,10090=>317,10091=>317,10092=>276,10093=>276,10094=>509,10095=>509,10096=>410,10097=>410,10098=>234,10099=>234,10100=>334,10101=>334,10102=>788,10103=>788,10104=>788,10105=>788,10106=>788,10107=>788,10108=>788,10109=>788,10110=>788,10111=>788,10112=>788,10113=>788,10114=>788,10115=>788,10116=>788,10117=>788,10118=>788,10119=>788,10120=>788,10121=>788,10122=>788,10123=>788,10124=>788,10125=>788,10126=>788,10127=>788,10128=>788,10129=>788,10130=>788,10131=>788,10132=>894,10133=>756,10134=>756,10135=>756,10136=>748,10137=>924,10138=>748,10139=>918,10140=>927,10141=>928,10142=>928,10143=>834,10144=>873,10145=>828,10146=>924,10147=>924,10148=>917,10149=>930,10150=>931,10151=>463,10152=>883,10153=>836,10154=>836,10155=>867,10156=>867,10157=>696,10158=>696,10159=>874,10160=>832,10161=>874,10162=>760,10163=>946,10164=>771,10165=>865,10166=>771,10167=>888,10168=>967,10169=>888,10170=>831,10171=>873,10172=>927,10173=>970,10174=>918,10175=>1248,10176=>509,10177=>892,10178=>752,10179=>636,10180=>636,10183=>564,10184=>876,10185=>867,10186=>220,10188=>847,10190=>636,10191=>636,10192=>788,10193=>564,10194=>536,10195=>474,10196=>474,10197=>755,10198=>755,10199=>874,10200=>712,10201=>712,10202=>890,10203=>890,10204=>966,10205=>926,10206=>926,10207=>372,10208=>494,10209=>661,10210=>741,10211=>741,10212=>756,10213=>756,10214=>455,10215=>455,10216=>329,10217=>329,10218=>496,10219=>496,10224=>1000,10225=>1000,10226=>1104,10227=>1102,10228=>964,10229=>1000,10230=>1000,10231=>1000,10232=>1000,10233=>1000,10234=>1000,10235=>1000,10236=>1000,10237=>1000,10238=>1000,10239=>1392,10624=>420,10625=>350,10626=>238,10627=>480,10628=>480,10629=>333,10630=>333,10635=>333,10636=>333,10641=>329,10642=>329,10649=>179,10651=>559,10653=>570,10654=>595,10656=>509,10657=>509,10658=>575,10659=>575,10660=>575,10661=>575,10672=>746,10673=>746,10674=>746,10675=>746,10676=>746,10677=>926,10678=>636,10679=>791,10680=>636,10681=>791,10684=>791,10686=>800,10687=>800,10688=>791,10689=>791,10690=>983,10691=>1052,10692=>636,10693=>636,10694=>636,10695=>636,10696=>636,10697=>714,10698=>840,10699=>892,10700=>892,10701=>931,10702=>892,10703=>870,10704=>870,10705=>702,10706=>702,10707=>702,10708=>702,10709=>702,10710=>702,10711=>702,10726=>804,10728=>840,10729=>840,10731=>494,10740=>1000,10741=>376,10742=>351,10743=>376,10744=>400,10745=>400,10752=>860,10753=>860,10754=>860,10755=>766,10756=>766,10757=>756,10758=>756,10761=>745,10781=>702,10786=>564,10787=>564,10788=>564,10789=>564,10790=>564,10791=>564,10800=>564,10801=>564,10808=>791,10809=>840,10810=>840,10811=>840,10815=>713,10993=>372,10994=>320,10995=>352,10996=>440,10997=>420,11008=>1000,11009=>1000,11010=>1000,11011=>1000,11012=>1222,11013=>1000,11014=>1000,11015=>1000,11016=>1000,11017=>1000,11018=>1000,11019=>1000,11020=>1244,11021=>1000,11022=>772,11023=>772,11024=>772,11025=>772,11026=>770,11027=>770,11028=>770,11029=>770,11030=>770,11031=>770,11032=>770,11033=>770,11034=>770,11035=>1000,11036=>1000,11037=>283,11038=>283,11039=>846,11040=>846,11041=>799,11042=>799,11043=>807,11044=>1000,11045=>461,11046=>461,11047=>461,11048=>461,11049=>360,11050=>360,11051=>283,11052=>854,11053=>854,11054=>628,11055=>628,11056=>900,11057=>910,11088=>589,11089=>443,11090=>443,11091=>802,11092=>803,11264=>645,11265=>793,11266=>851,11267=>700,11268=>851,11269=>640,11270=>774,11271=>665,11272=>733,11273=>834,11274=>834,11275=>734,11276=>790,11277=>580,11278=>834,11279=>979,11280=>738,11281=>410,11282=>775,11283=>471,11284=>734,11285=>851,11286=>895,11287=>722,11288=>638,11289=>620,11290=>721,11291=>793,11292=>821,11293=>699,11294=>793,11295=>682,11296=>569,11297=>791,11299=>751,11300=>705,11301=>874,11302=>665,11303=>1139,11304=>1023,11305=>1238,11306=>762,11310=>759,11312=>484,11313=>595,11314=>638,11315=>525,11316=>638,11317=>480,11318=>580,11319=>499,11320=>550,11321=>625,11322=>626,11323=>550,11324=>592,11325=>435,11326=>626,11327=>734,11328=>553,11329=>308,11330=>581,11331=>353,11332=>550,11333=>638,11334=>671,11335=>542,11336=>478,11337=>465,11338=>540,11339=>594,11340=>616,11341=>524,11342=>594,11343=>512,11344=>427,11345=>589,11347=>564,11348=>529,11349=>655,11350=>499,11351=>854,11352=>767,11353=>929,11354=>571,11358=>569,11360=>611,11361=>289,11362=>627,11363=>556,11364=>667,11365=>435,11366=>303,11367=>728,11368=>501,11369=>734,11370=>514,11371=>611,11372=>405,11373=>680,11374=>889,11375=>721,11376=>680,11377=>624,11378=>1075,11379=>852,11380=>468,11381=>557,11382=>380,11383=>612,11384=>559,11385=>347,11386=>491,11387=>397,11388=>230,11389=>469,11390=>556,11391=>611,11392=>719,11393=>499,11394=>532,11395=>381,11396=>615,11397=>433,11398=>969,11399=>680,11400=>647,11401=>444,11402=>593,11403=>402,11404=>573,11405=>405,11406=>698,11407=>509,11408=>726,11409=>493,11410=>283,11411=>238,11412=>628,11413=>455,11414=>653,11415=>471,11416=>819,11417=>589,11418=>698,11419=>507,11420=>546,11421=>378,11422=>724,11423=>489,11424=>724,11425=>524,11426=>526,11427=>375,11428=>647,11429=>438,11430=>615,11431=>433,11432=>719,11433=>519,11434=>762,11435=>538,11436=>649,11437=>461,11438=>721,11439=>519,11440=>964,11441=>681,11456=>689,11457=>464,11464=>579,11465=>391,11466=>493,11467=>355,11492=>408,11493=>499,11494=>496,11495=>986,11496=>466,11497=>461,11498=>934,11517=>256,11518=>617,11519=>266,11744=>0,11745=>0,11746=>0,11747=>0,11748=>0,11749=>0,11750=>0,11751=>0,11752=>0,11753=>0,11754=>0,11755=>0,11756=>0,11757=>0,11758=>0,11759=>0,11760=>0,11761=>0,11762=>0,11763=>0,11764=>0,11765=>0,11766=>0,11767=>0,11768=>0,11769=>0,11770=>0,11771=>0,11772=>0,11773=>0,11774=>0,11775=>0,11776=>333,11777=>333,11782=>534,11783=>534,11787=>346,11788=>500,11789=>500,11791=>1000,11792=>1000,11793=>1000,11798=>564,11799=>333,11800=>444,11802=>333,11803=>500,11804=>500,11805=>500,11806=>500,11807=>500,11808=>333,11809=>333,11810=>333,11811=>333,11812=>333,11813=>333,11814=>856,11815=>856,11816=>464,11817=>464,11818=>620,11819=>410,11820=>410,11821=>620,11822=>500,11823=>250,11824=>400,11825=>250,42560=>607,42561=>411,42562=>611,42563=>410,42564=>487,42565=>367,42566=>368,42567=>286,42568=>722,42569=>519,42570=>550,42571=>458,42572=>1145,42573=>775,42574=>665,42575=>548,42576=>1014,42577=>736,42578=>910,42579=>675,42580=>962,42581=>677,42582=>1042,42583=>648,42584=>722,42585=>513,42586=>932,42587=>700,42588=>1042,42589=>749,42590=>780,42591=>550,42592=>717,42593=>524,42594=>896,42595=>635,42596=>933,42597=>635,42598=>1139,42599=>777,42600=>724,42601=>491,42602=>790,42603=>560,42604=>1262,42605=>850,42606=>734,42607=>0,42608=>0,42609=>0,42610=>0,42611=>519,42620=>0,42621=>0,42622=>510,42623=>201,42624=>639,42625=>488,42626=>475,42627=>347,42628=>1160,42629=>842,42630=>1000,42631=>768,42632=>737,42633=>531,42634=>827,42635=>530,42636=>608,42637=>438,42638=>742,42639=>545,42640=>608,42641=>480,42642=>926,42643=>654,42644=>671,42645=>518,42646=>992,42647=>780,42752=>318,42753=>318,42754=>318,42755=>318,42756=>318,42757=>318,42758=>318,42759=>318,42760=>307,42761=>307,42762=>307,42763=>307,42764=>307,42765=>307,42766=>307,42767=>307,42768=>307,42769=>307,42770=>460,42771=>460,42772=>460,42773=>460,42774=>460,42775=>374,42776=>445,42777=>564,42778=>564,42779=>354,42780=>354,42781=>243,42782=>243,42783=>243,42784=>564,42785=>564,42786=>276,42787=>242,42788=>386,42789=>276,42790=>722,42791=>501,42792=>895,42793=>703,42794=>532,42795=>409,42796=>437,42797=>389,42798=>592,42799=>600,42800=>413,42801=>373,42802=>1183,42803=>683,42804=>1154,42805=>741,42806=>1089,42807=>693,42808=>902,42809=>563,42810=>902,42811=>563,42812=>912,42813=>549,42814=>667,42815=>432,42816=>722,42817=>513,42818=>722,42819=>513,42820=>722,42821=>512,42822=>713,42823=>341,42824=>611,42825=>289,42826=>750,42827=>544,42828=>918,42829=>654,42830=>1262,42831=>841,42832=>556,42833=>500,42838=>722,42839=>575,42842=>397,42843=>344,42852=>576,42853=>500,42854=>576,42855=>500,42862=>489,42863=>489,42864=>307,42873=>722,42874=>491,42875=>483,42876=>344,42877=>611,42878=>581,42879=>441,42880=>611,42881=>258,42882=>689,42883=>495,42884=>483,42885=>344,42886=>667,42887=>444,42888=>333,42889=>250,42890=>282,42891=>286,42892=>278,42893=>722,42896=>722,42897=>492,42922=>833,43002=>779,43003=>556,43004=>556,43005=>889,43006=>333,43007=>1298,43232=>0,43233=>0,43234=>0,43235=>0,43236=>0,43237=>0,43238=>0,43239=>0,43240=>0,43241=>0,43242=>0,43243=>0,43244=>0,43245=>0,43246=>0,43247=>0,43248=>0,43249=>0,43250=>500,43251=>500,43252=>500,43253=>500,43254=>500,43255=>500,43256=>694,43257=>680,43258=>400,43259=>500,64256=>639,64257=>524,64258=>509,64259=>795,64260=>778,64261=>581,64262=>663,64275=>971,64276=>969,64277=>978,64278=>971,64279=>1219,64285=>320,64286=>0,64287=>537,64288=>537,64289=>817,64290=>820,64291=>820,64292=>820,64293=>820,64294=>820,64295=>820,64296=>820,64297=>564,64298=>537,64299=>537,64300=>537,64301=>537,64302=>537,64303=>537,64304=>537,64305=>537,64306=>350,64307=>537,64308=>537,64309=>350,64310=>350,64312=>537,64313=>320,64314=>537,64315=>537,64316=>537,64318=>537,64320=>350,64321=>537,64323=>537,64324=>537,64326=>537,64327=>537,64328=>537,64329=>537,64330=>537,64331=>350,64332=>537,64333=>537,64334=>537,64335=>547,64336=>229,64337=>237,64338=>877,64339=>877,64340=>268,64341=>300,64342=>926,64343=>877,64344=>296,64345=>300,64346=>877,64347=>877,64348=>298,64349=>300,64350=>877,64351=>877,64352=>270,64353=>300,64354=>877,64355=>877,64356=>288,64357=>300,64358=>877,64359=>877,64360=>288,64361=>300,64362=>858,64363=>858,64364=>338,64365=>328,64366=>858,64367=>858,64368=>338,64369=>328,64370=>598,64371=>595,64372=>600,64373=>630,64374=>598,64375=>595,64376=>600,64377=>630,64378=>598,64379=>595,64380=>600,64381=>630,64382=>598,64383=>595,64384=>600,64385=>630,64386=>400,64387=>348,64388=>400,64389=>348,64390=>348,64391=>348,64392=>348,64393=>348,64394=>345,64395=>345,64396=>345,64397=>345,64398=>902,64399=>966,64400=>373,64401=>469,64402=>902,64403=>966,64404=>373,64405=>469,64406=>902,64407=>966,64408=>373,64409=>469,64410=>902,64411=>966,64412=>373,64413=>469,64414=>585,64415=>585,64416=>585,64417=>585,64418=>293,64419=>300,64420=>372,64421=>420,64422=>372,64423=>393,64424=>313,64425=>340,64426=>456,64427=>456,64428=>456,64429=>496,64430=>710,64431=>680,64432=>710,64433=>680,64434=>344,64435=>344,64436=>484,64437=>484,64438=>508,64439=>508,64440=>508,64441=>508,64442=>565,64443=>508,64444=>335,64445=>344,64446=>344,64447=>342,64448=>354,64449=>354,64467=>719,64468=>688,64469=>373,64470=>469,64471=>359,64472=>329,64473=>399,64474=>369,64475=>399,64476=>369,64477=>522,64478=>399,64479=>369,64480=>399,64481=>369,64482=>399,64483=>369,64484=>672,64485=>670,64486=>270,64487=>300,64488=>270,64489=>300,64508=>672,64509=>670,64510=>270,64511=>300,64606=>375,64607=>375,64608=>375,64609=>375,64610=>375,64611=>375,64612=>698,64613=>698,64615=>988,64618=>698,64619=>698,64621=>988,64624=>698,64625=>698,64627=>988,64630=>698,64631=>698,64633=>988,64650=>698,64651=>698,64653=>988,64657=>698,64658=>698,64660=>988,64830=>443,64831=>443,65010=>1025,65020=>1107,65056=>0,65057=>0,65058=>0,65059=>0,65060=>0,65061=>0,65062=>0,65136=>200,65137=>200,65138=>250,65139=>373,65140=>200,65142=>200,65143=>200,65144=>200,65145=>200,65146=>200,65147=>200,65148=>200,65149=>200,65150=>200,65151=>200,65152=>350,65153=>245,65154=>237,65155=>229,65156=>237,65157=>399,65158=>359,65159=>229,65160=>237,65161=>672,65162=>680,65163=>270,65164=>300,65165=>229,65166=>237,65167=>907,65168=>917,65169=>270,65170=>300,65171=>416,65172=>420,65173=>907,65174=>917,65175=>288,65176=>300,65177=>907,65178=>917,65179=>288,65180=>300,65181=>598,65182=>595,65183=>600,65184=>630,65185=>598,65186=>595,65187=>600,65188=>630,65189=>598,65190=>595,65191=>600,65192=>630,65193=>348,65194=>398,65195=>403,65196=>398,65197=>345,65198=>385,65199=>345,65200=>385,65201=>901,65202=>901,65203=>648,65204=>603,65205=>901,65206=>901,65207=>649,65208=>598,65209=>909,65210=>893,65211=>633,65212=>583,65213=>909,65214=>893,65215=>630,65216=>580,65217=>568,65218=>568,65219=>521,65220=>521,65221=>568,65222=>568,65223=>521,65224=>521,65225=>591,65226=>530,65227=>584,65228=>447,65229=>591,65230=>537,65231=>584,65232=>447,65233=>858,65234=>858,65235=>338,65236=>328,65237=>626,65238=>626,65239=>338,65240=>328,65241=>486,65242=>688,65243=>373,65244=>469,65245=>628,65246=>667,65247=>247,65248=>280,65249=>475,65250=>415,65251=>419,65252=>476,65253=>637,65254=>637,65255=>270,65256=>300,65257=>372,65258=>420,65259=>463,65260=>396,65261=>374,65262=>359,65263=>672,65264=>680,65265=>672,65266=>680,65267=>270,65268=>300,65269=>456,65270=>594,65271=>446,65272=>614,65273=>446,65274=>614,65275=>446,65276=>614,65279=>0,65529=>0,65530=>0,65531=>0,65532=>800,65533=>900,65535=>600); // --- EOF --- diff --git a/lib/tcpdf/fonts/freeserif.z b/lib/tcpdf/fonts/freeserif.z index 426020a793e2658fac15f717bc7a2108e706136e..b18caef95418ff681d26d4a309b5343def364910 100644 GIT binary patch literal 1826908 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%0AKOaYPhur~K{#JCgpJjc&J=@ix-EuT^Gm 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

                sMiyR@oGX{a8T=)S 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 z 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�L_+BErne0y zQ8XLQ2~4&V+kg@$4q&ofQ*&;_WFwkkPzMXQ8*Mm#px;d-37EiqoFI}U0R}>XGzufG z(o_w&d#a7;c{5}|V5mtfo!_+O6bSh#{C%@P+!Na{aoZr}XRW19ZSzrb`5H3Rdk~X5 zeFdNl)Ego9oglU{k?!E=<}wvT#Yo1TV@_yp&&Vz#Q`%xjj2L=Hj%<3-YuSGeGT4P+%UC6_DoKv0x=uyM5hnUiJF1}X|Fb`@nf~Y zy@ns@ye>jr2ltkl{1F|E`8g#zS&jzGcq$)Jwd&;X;uRYscrO(sjm7qD-Py?*nwpI0 zWFJ@loclK3$1_OAejiNP2FvUKqzIS;M`e;Pujm&5D-TIc0UO3dKB4YaweDuD7p|z+ zosIYq1nRxb8wtX8H~!Q{+5j*ShTNTVHP-fH(T{1L`}htfSXKCLVA$vepL1pdFLkG% z``9P`{99MTx-&cN=}wzQcj`GOm42z4dG1^~mGM`5`0w=N>Bn;-_J2CeGl5`gYI-)E z8Fv3ePhYywor@yJ-iSq68-{o-6$UEJ2_pR}kcS`HNV+V8_jzHDiA8 z%|6kX{8`psnNzcG;3kDc(xGI4ByUFObp$b<;Pp1Z%Pp~_4exU z7Isev;B4ITOOxq$2R17+8vi;oYU^H&oz{e)-<5|e4|7*xp16tm0|xfLr~_!IyU=j1 z$IrNWZ~yhM(fhZ{gdr@KA#Sd9uQ~4=!n|on9en|&>@E$?;ssY906Tc#8M%` z40cXkL!C;zL96>lK#?FfrF9_`OnTKUqvDnfWKu;cM|d2n|ojG$b{NqXRoc~`wLFY(5_3Y`Q|qHNGB5mi}AxsVSYTPxi>-sh4&`aU-G|X;$(` zk^J%_#;As^x+gU7ot9rLk7ILftoV=1Z~TsbF%uuqR6VV6EL)6-NRaCa+BK(Pb8eMh z4`F&W*6u-UZ#B!M8_vjZKf3RNf-F^=c?RJ2Trt00>&F&#ks#oK;@+6Oi zy05Ku_n&vpVgm0!OHSu5{NDX$cLTf;tJLmU6C&%~TkDXb>s4TY>0IS5GQbpy%fR_3 z`k25I5)r&T_u=i?updjz#T)UVJ8N}s284B2>U1j>nOW~-VOl8yA?sLvP{>>7@M*18 ziIua*T3XzEhiD~PP7eiYmM{{>zgdI+&+MtzUX8eBVjb4So50WGNiHC`QB z$475s-hc`OZM_Zi(Y7hzqixs-?e42NM=^8UUvmmWn2#QU%A|Vl{)b?1?;pi)DA&99 zo88mE9Jde%Kj~<0)|@af)5Epy$@9*gm>o{u2_HFm7=PrX+1&~62MK;BN#S*0TPN09 zvqs#$2W8R_9$+gaIOv1qphGpo8}ZW4lX&ZQ-;KBaPOJMG(#_QaC1K}SAslkS`=-$W z!wu$Fm3-$CDdr7CZSTWoUa!*v*j)FhwX}Qh-LH8qeB!jvx$aKPRkz#^!xL`6S0A#v z4?&m)PP144)|K)7^DL`` zD;A4HO}_RMdFQ`~@1AAP9G1~Uu+iE);SsY5p68JEdpG}=F(1MA{r$>|oPq6w4)&Oy zBvNbw{G|!vFI6!U%uxhE0l3A&mkJ~ZScnj?Q&(@$^f30JTIc)N6BvTTPGeiL3V`A| zl%zwi#{hnnbfXKzv#Kp(=a#8Y%z*c2zj!F!N{K1m!}$msRLT5wwUqqVbm);I_;ZR_(#+S7gG-;JxFNS z0)O+4pm(zBD|{i)$SkT4j^*1i?O&&BQ7c+5`V_^3>HWgW3)~{s$@9!E<|%@w+<}Rz z?Erdf5ItR_NMLMMu{J*KGeF(lweGl^B^xJMGORm#;}F%G8=u0Ti4vd+L|NT%suNnM zUmj3}dN(IJjtQ6<#-!W=Nr(IpnY7*00%ek*-=Wdr1&h|Xq?Ll9lih%?7aAo^I6Ks$ zULQtvX$>c@l_8CHq)-aMm?Jumn52cuQ8L`&%k|2a-=%9HFFd?dJ}I=}1$6P=@6s#II-$JVZw686#I*3{@P z7c;pHi&eB~HpUO63Nq(Q#d7=~zm07gBfkK_oR`|t1-?yuf}5@5K;vH|a1F z(@EsKfJv`3$SlTQp#tP9h!C$CCRI=n=FE~XXLbNUBH0KHcFKL5X^r4;4)iP;;m0_! z0Cbv65X4`>>Sotd5(}viDNrK?AGGbVO`0<|OKYL8FL4*KM0u%-giv509d0IL;~WaL zA+q)K`at7DZ}w#5XeJi6ChYNXE9l91PMoFzVs`bO6U-z;voQa4fd4wH{5Mi_N;;r_ zAZQo`?wcYx=oY@WmPvZ;4C4FFwM-8^(gETC^a7-1cmRC=77ghqU&es|pfTx4EvJU41clxrwnKa?5|p z1@{M%m9ou3u(ccxPbl*2f#GXUZ8H(8VObj-nyc=fC9&E@sv0x4Zw%}UEPn)e_C;+T z-Q%XvJ_1o$!JD+*xa{C;*mt=`AxO%%cR|f%Q-? zBoTCnNziQo+0GISWmjuJ(G1DzM``>!NKbml&kWx9#;aGi z;Zs*%iC3>SNd!;At2Yx$-+VXZj7;Y?MB(prSS1OhhN$sKlol}_qXs7EAW20HLh;4x z08MuQ)A3-Zd$rZ;96k!7@n+w-#&H@gxJ{x6V4rnP<+U5!2`4P!_3#KV|MkH9gV=Vo zo>s$JyE8)GblkTjO9w*`BL}~Q*}@;V8J=(OotyF9dK(QdG)t}`g4Q-L5;N$Ud28Xq z_KZl3LwY{&YwD?zn1dTX=io5WJ@3n#J`d1t<@c2{<@96a z1(8+f1v%rjRgJfU@sTI*-nezZ}e-#?9_?Ab)6IXTh3eOn@(=H^v|Pnbtn3{%bq zedfkp#~LHKIA_VHWP~8j^bL;H!pIte64ORzZ5!|p2b<$>PF9PX4^3R7AWoe_ zLNi(&&6RVq91dF?8d**OMTggtvZ#9MV5PmI@%9}eVrTWCvw=*jG+CA;f5?{DJ6F%( zo4K()#?hF{%8GLajLrPI0 zU(1r3KL`pyUe6}IPiz2M9mYp+W(Sn*P1ibP=t)n=4a2jH&w+9sXoFC2>z^h@v9+Gb z)uw3oe+T9)Io2$x_jWwcV4T@RcBYlPEZsL&xGeMjf0g-*eqvqXZ#4OO^a-+)yAP?G zx8{DH{2$)Od35NHY5p(Bew}XZ-vn5HbYo%PnODyP_I1u2^P3ESCZYb{M@lPwnA>|v zlG{syJ&4V!Cf>p#K}qzABmq*akOVE9h-o+x^Q7ZS9CA+d0F3=K2*f1bss(6M10yen z$h0C~wo)VRbQAE%3b@)utCy{hU3xgE{vnNzitgbElFIlNk$?Mwf~sFd>il5irf@nk)mhb2{j>5c7uY;9c3>c%VHcE;|Llg4 zDe_qSC`U$wz-Oow!L(#7_PxaRzJuTtyqHd2q8z-KGrJ)*6I&y6EdvNb}6FKo`oSt4B35S!3_`J%p<5zB(t8L6# zclLS5z27nB&CtgU^2EInnAnc(7mBCx5}bZF*`Q&YHZ~2PZV#YY?z+-jNQqq6YvrGeV5)wXScgI&E$Hi9?Nf zsDg@F+EUV$r^P0EL*T@N`|i7P>&O)+ngM0``+W*5{|n2qqDK)H?>eBiw(fad0qwnO zXzRf%x6Ti3C|HOPLS>(0QG7=y8crTqjEsw}K4B{C5~j^I=3#>S8^p93B)Gr-kFqy` zlPs<3MDG@HBjUz#Z)`XAec$88ni;w8Rh5-hm9o7df9Mq?y&Ny0(3JNl!uQTU6=ev=aRo&n`espHU&8W7a(WJy63O`ge27pd05V$#Sg2 z3PDEGSgoNxYnEuYi(Tp0CI)7hBsqB}T;Y58$*uogM|s43=X?3bYtDbuKYllg)vNvD zwIhPSe-FnPY|t+EF7%5RU`}!oD&WL3?uT%CR-A?&00EjruXvWyfc0zJ10Pwy8jz{X z)uzd+`($kJH7d9DsfU9cbUNmsQM{`laTGes-LbO_RAPgOk5WJx6&TFdbq>ThcJ&Q8 z1>rq*I+=(guH7&Y$)TyiZhp-4z>M;2!Wf33oG#plBC7{*s$P<#TQSyWGeVC&;7`Ao z&z}?O$G*#bov&1y8^ww{Ts@pSUr8kGRjch}he9S59c2tn?QK5)D{!|Tbg6sNd-n(+v{dCc;?^d)dpQop^*l{deP>!OrAaU$#?geJSbC z^)q=ss2!D<`x$WVh~x~V_?~B%!sD0MhgA{9jJJ-q(2j~31E)w9$5f$pOT5axt3V40 z3<~h!RP+N6LqREC>Sbps4d?+M4$4C0kv?7RBs@yp+T_jY%@fTDjb(R!L)xnd(I=~} zHghLk_MovX@q%ma^h3?gq1WqYWmn%rJG0Du7^el2gE0)ELzn^T!0dkBDs1v=*@ zzuk{%5CQd@8bm&@gLU$*E)RU8~SiReRJf2VYUqn=NcqRwAD4$ z#@WFA?nK`QggMNh8>C7}ATduYPy1wCd$9_}8RowP>B^*{6u4{GHdvm7+!~ zCkE!|n!YXn!^aIQAC$ZPKp;^$n~B92HaMRnd}?NE4~O_Qa!8&aYujOdo*BkqhG78! z3DBmMbjAv{BG~t#6D_q9l15dOs3u4hagwrBqOvGPS&fQOd2HXyV;SlT@|INy+KVGM zMZH264_{%E1YoTD1sua{P9l7HWb{R1arB&=N%RIF{S?ej+^zZb)ozXP*rJ-uehVfrMR@N-Uhq?)UOKr*)NH2kug5Tu;;`!F0CtL|sW4$X)V-B>6xNqXnc1 zd+ik69Rc#I({l$z_0CLPIZh1Wev&SnZYL5lCh00;A-yYGw>lrM5m)0ts?K0>hFy@V ztNf>ZUmo>ag1L(N4OUQFZFZaWRw7l> zS<~(aRrgHSYiYF4s>wk7q|KP}v&C1bGG;fTr8Xk6@Ytm z6X9aU_US$3`7BI|c?kOfOhkfIq-anTv`X!Yy-xPVS1~UUFSQ24PL4*a>(z#3w_X}yN z+PG~sodmS74L-}TfU3Pvfj|ty1){`}bBNc55mZGHhH~V1$wOM9zZyD28LwL>3Qcyg zw~^8lKu9r_0frDOqG1Ed(Axw?%)Zgt7bf~`1r&RYHc_*BjY`$^Gp3mIFw7{v_A(jv z*OH&&cTNZ6U2R%5t2U04=F@`5Q(18ySUuh?E$s06$`Yx0*jA`ERkiv;!7y)q_5oQE zTiKnj-npc|uP-+Cql3(RfUIo{864iu4Beoz0Wm}r5Wpy{+MWXP;rfPQeVfofJgAUm ztmwt3_^XOf<1-Q@3)up@UxAKdw>~yp)Ab1nVU>IdR?z*L$^QLX(}8*tte~j2#jL(o z+z0S1rK)qS^5%`@vnxCQ1y0fV{c*qLms3}*hNC&XOtv%l*7z~Mctn&gWn}+0JlcQV-ewN^^){vo*-fHN zBqI0$%rgXt8i1)1tW14EY^F+4&6&atOBFDysq0Ub>QBH|Inkgv?Pl6rC8S_{n1s|X zBwS(!QULwneij%RP>UY$;$G9^Yagr)vhV#``SdJx-PrpNI(IXtjjz)moxQR((Vael zp4zwWaOI9qy4(lsqL(~>ky&KG;E_X~qg41%{KRgK#JHP-d?l7-m_RbtM20*Y^0EWN zot1K(vlNPpWnpfdGk=Y;F!_@^-w-T5Efqc#&F3q;A&`mZ4F3-&wM|pP`=BE74Gf2a ziTL7rja{A##$shF?~I1xhR?i@YuOtw9JGns@C;xR*#z@(ViUuAdFvi|wrOCYBM}?$ zs5P{qAKghmO0FLyw}p>AX`{5r1x(TnLj^?c$LUC95ZA`{I<;LhB}+DkFkg3PaAOq5 z65AU4^?+#v?Z)p-E*033IcG9R^A-A3tpMYr^INh){Cb?E~_KvDY+X) zTkszCb=>=1my40a^5q*hu4<*~{Jl5sW1pw%jB@$Yu+Au#+ss2mE@OK-huYmL^X#2g zw+vRd{90DGhE_LE7C-;LWpzRAm?8MIx{>F6&*b)%|KH|z?3Mgmrgq^vv9hxlzK@w* zm?RcA2>byUaNNxxSe3bGGc)c{`E!wg@~4TX>;6hA0Nb}{YJouS1@ zM#musQ3Kztet}z31Qbkh5`*wjB%5!vK+b~Bp+Awr++e*(+`32}VJ|&pCUd|Dxt}6yR?G@j#kSD#? zPW5g%ruAdZ{$I7E;abmRceQ_FoU%E5?!>c^3u}VFckGR#`?$}k7QI>J(RMk5636ew z047Fa(tvUC(JYk@m&*s1SE}~ySS80k*$~Z9=|uT@ZQMgtomr!;@E-Vq3|z~A0QT^} zTq^l+$wZwGMp6c>8OQSW!?0vyw~WMh-zOjlzQ_`{b^7QRz!KaY5#)c_?7FsQJoF#9 z*9ZyjzykD`9|0@?w5C9~<28-p07DZZl}*@vN-VgQ$WvDbw`kOYYj{?)HnrU@YP;{s z$N_*wfF>ZL56OK-CT}E`Kp)lw3`=gf+)xI^+Qgm}ht7h#o*X)>#_@Q*Q*N9)6{$Iv$~hNr%2-qBL%BF_Dmf;MSH=K=r#}=7u1}i3K-cHL+e#I- z@@Ti}75RicU%7tx-U65L)Sln7@fFMwAA=0B7j%8Jin(=Tb+Amnt)i9zT-qw)(pH;r z+>TfK)7$+;4dMPKZJ3+}gP7FF;!b1iG!4LlBxP^KZ2a;#8{c1+`(Y?dx|G|46F^dx zB>LU%kIq7!pAW-=dO?VyWD$qXfsb(()x@0wVT*Di=alv)0Uw1T%Uji zxMM?<9e25*Y3-m%I2d%li`!+motLeiU_3HYNghokP11tXnPFqe+?my&)9ES|vPr+$ zVwvKNn@{BZjiut5n(Sq}JAbcdkBMsgQNA4tNUW$jH;b5==erA*##E?Bl(Z2^zV zAql)NC2`5Akh8eBo|sQoLz!Z4ZZFrvRJd!*vwVW#b^aL!lMpQ6D|xK+;(rFp6y5M7 zD;pbp;&WqP=WFb9d_vBMSwN@)XEG@$@U!0sjbdBY$a|v%~GMmGTKlDuCD)p8)i&~6DRWZRo@nEl5Jap}cxOwU1 zq$Qu5)UVEJ+&=DseU6+P7tDE)@Q}c$8c7~UK5X9&DWdOTg~9rGbP}Nhx$g0ye-3Sd z8GPN-2jP5o;4V0oe~!s9S3sBd9q0-W!OFQ67I1d;uI!p(j`I zj<;iLPO*_2^eW?k3<-PS25E0-n7s>2OW{BY z*eAF@;fjS~?&*ENGI^HYE|w#apx9;DogYEjeU8a9mkz9FKcgL3Qpmqi@xz%)-*<6g z(vo1t3=K2zz<3>3_-?ESeE{mk=q*Be6H()iJ=iQ1GOgKr%;c>*y<9wek00YDHij7lfG$a9h~i5r14|s9K)eIsvX5`sFXAKqNLtW3QwvXK1i|9vW-^C2 zDl;ahGg47mOPS5gHE;fUsTvGFIxh;mmpc>CiaDRnb-s61{mTG%m<91Bai&J5BHqHXKOD>qsf%9mV!N z4=KWPye(Is+{mXI7Jt_2w2-?^T6)j6a>W~)%h{d(%$Miq%c-cx?lu@olF{^7GoJ5k zoS1<1{s>v`KivHjCdw>M`7}NI1L+{svv!y&B|BS~0cdhsp zI@gEa2LZ6-3^jY;zKdK&d&i3B&_-G+@#$j=LSfmTbF)%u=U;f%ek~k~7j0z=Z_kA+ z7QZN#P$oXJ^9M|X*&w>~?Rbw>a*tIM+iHU{vjjj&{$au|&FNQICJ|gv1fpXHNm4Uf9F);|_$Tmojymu=DTLg!c*Y+{;IwXWV zrS8$svST1b=FSa^uoI`}%CTOi`D^6KUoym-k*33LDf7)KUxrh2LcEn?Z(XHE;b z786-_vvi~+@k@%yMWQq!VqDOaQOy>Y&tD>I^26LO?EWSHI1>Wa7IIExvL-V6ow8Y< zNaot^do}%l03(V{-+o8$#<&I6@ZErg5sadOc@I8`y$2xT4SlLdgnyIwWWjaZGr#FQTyULm%gIW@&)vv0 zEGJK9m&^uNgy_UqzQ|qKeGAcvE+&98Pi(;4WZOS@?kYo16m*j7i9T>9-^Q7%*6N2Z z5Y@H#{KKb`X6_naROUD5tz7-&nHuy5>%aTML>A+B{_Z*W-N4K5qZ3w`{XiQ=yvyywzu+%s^`<@7M# zyxk9fugHBbVQ5CAD=}-bq6b#r=P9CW^MH7~>Y0xDV%MG}-#_zFN7(B-TOu#t`i3jY zi+4R-UDqt0yi!KyBR1J21C>i^zTPHDy$(_N8r|Hc|gZmR+H)`2I@s zrdW($I8Xli+n=1=`8F3$ay9a2o}2{#^DVo7%>F*{iy?A_EVBTMWkrV=cyAfRIWaK6 z&4wO}3VoyT2tr2wqcX#C_8G@FGwfuHE3>m!9%b#S-otPRlnfR09p76SNdMM{@?iEP{@9b-8`hcIl~Zf`xYxlCN&`^d+ixDP)5#KYv{ z&uQ3tH;-M^!}+tYo%7JFb58+dD~B3KJ|>IA)ora8aCRUohN}(tCKzt z35tX=y!g6@alV4{MS(G1di@h{nFLB)_`V6sK*iLY(7EWZyabJKr%a{$33>%d!?&=5Sc!y zRd1-HT`XfCMQ^9;i~$NFjorMiJ;z2@>pBes{nz9I_lzE#u!_%{)JQno%DB8jwmbd$ z08T)$zaHN#{O0@OyjbeKaV=N3M^oJ?X+fBOmW`CvS~_et!TCM3cq)_2rb3TjIlFW( zzd3n+vwn}ta?+&Hs`$=SnkPA8HM*jK`=lQIyz&)~uaPv)$(fedX_8&j4Trt5_`W!a z;EKuFQZk?zV=R%=<2{SPViZk0KQD1?uu?7;D(O)CQu{djRP#zFc7K}}ChZ}&J9@q) zT1A$duvw@dZ|B~-d!2utu`pq#&sIl9orhCG@isee!+&T+_R8kJ?uq%Gil2M$CzFcL zC#Ufo-r9XTk?R*p+~|VeGvK7#@E-(@_+UJx}6QjZtJ#oMjm9Tjc(hb{}N8-7k|T386i< z3(&|4DikI>D4K5hU}(U82S0U9h}HSdHLfI?%7;!JDx0Lz{XAPPv%IAg35O#k`gfOh zUWVUK?93v0e=j-vix@xu(e78F|B+mW`uR_h>ztkwe;NDqL}rC}2)~STJx`Dm?nW9c zH_^-e!#H`aKT{o8qKyWnJ39qQ5;)t##57h#ijW?`iplgmjwr`tew3W>qZHN|StTbP zO3hXb!mOauPQyq1kQFIoE6<1#IClu+;}dQyg7pt8TN!^Av*#h_Fw*W$;CaTrvh?1W z{l1-gwCwPj8K^tj^w?|q5#+>I_3Lp`pq_A^THwu9OC&O%iolBrrLv%i~aW9 zO?wGBv$j@dXWn(%$d_%|{Pnea^IXYRd)plydzkC^D%9q1ufC3ZCFnVjuR=cpUjLtX z-K<~#8Nijob@q7%82Ie^^|wO)3$On)bA()XjO#{#Ex_wO=HukLZ?B%D|6TSJUJvQ< zc!~c8k&)N4ab|cOvi4_*gq*z&`*`*ea7WV`Q>NNK)PSj3(5AEic}XPS0#rf&Cd&B3 zAUn4Z*njE3tNAkS;zbX9S0O$U;stWKT9l7kw{Uo2cIfJ zgUw@iGqng6d*ARmVX)%Gi5w>Byvmj{I*Yt}3(n!v(Gzg-tg>a3PXUid|GINvxjHdU+wH@E&~E54 z#vNft));2@0+Den)*17$jDZp&8k00KvGC*Y_duP3{|5ic%P(48_Q0lMYYSc_eWVnu z+N{z%UunAiahIRI<4T?B`dRnXTG{FJ|2N_uy=)A?%MR*T-?7m@KQTxw28)fE6e!}`MSaAFo{HLBiW^ibaEn}nK5ltcm6vO z_fOsgEAgYAu-R%gFGyVB#%LcaxAUj`bs|S^VlB+j16a8>7T{=YJ%r<&`lpF6(HJ~P zUOlRTs1T`nqs|p^|MuV<+4^($gY$6?1n(Se-*ON&*3ReCRAP~MkkKwoFiVy(&~c`LAurfO;;_%lPdtJ+pka^ybbVFh>|CGs}E|8BQ}y5iB&!ZX%o8wc>0qjl{EdMDf_&2&$x9 z_!V+F3VmBlGzT919E`CXC1~;?fs-tuz7OULKn+1{=KmuPOeNhOzC(3;7#reX0SS^T;-=IqVMz#2a~Oy3=r`z9RZO5ggcI^pfm(=CGlff4Dw@x zGE_nvi)7t%${@3hF+_hA4)-9K!jn8$KRN;K2EyG0E9G?BRJQ!V^`mfHQ_f+yet3dz zY-6Io>g+E=mdQOHUihk?d~UdhmDiG zCV@4Zi&mq2Dr>jJL;IUuw(M=TKVdw$*LEA-Yqmt<$7hJ1mKc@6VAO!YDE>#IPy-Ff zF{#ErL+lB0m(tMoG64Wi;!D8q;HHT$kr7Xj2vj6rKaVxcUFIhH5c?IzPW<0F%!mcB zABa*EhH;#b-YEd=OpHE%%>h+M3$jSNAmJ@CI2CRW5QZ^S_8@?~%|3K`YI5R%Grfg3 zyRFBpYINeHH4vIO`Oj0QtEbQQPT#5pi=lvYvKuB}=)LWh*cf^4C{uyiM?{jna8p%G z(b+VBeE`-Yrq|sWtsj&j9PkR*$OW|ZSr@Xo_l?Sy>tO7{6aB^IqE!y?1_Q@}TOm(Q zR4PZVIp6jfX8asab4$zw^8nWT!`Mkj+vp}?(}2tYwkZzkr$#)3I8w;Qt>9b60hh;EE%{7f2Zl4LIe{g3S!VQ0{Lal?5nj!>e%*m9_gI?Ms4B*~QZ3DPCKlhC#e-AtfB)0Cqa8wJxj z#W^xLqA{KhRbXqP;Xt!dCku1PAiEaf)HI1Zn|qMc9=pq&&O`ob^qtk6bF0-K2nJmg>7dvpEET5!J_jQF1i6|u%=ZiL%bDPTAv6@3kg`7(6 zgf~aDomUWw=YnAbW-wlM9$Ry(6}~*fA5JZQf+)kc&af%}L)WDHegtzVelKYurwHK;k8DHG8orbH*_i2c*5qY@oW9Yu~DWF1m4+TOAyU~EyFh;kbf z+U=^&-r5E~#F4@VX2_u~6W>A^+SfPF=sHzz3%JM4?l7&m$J@s7Afgke@LiIIl^AW!b3b4HH=~QIp!m#Uw|mJM8`NwIwM9NK~!Vpl#R%arZ*}< zah_3za(l zKh3Fg)rUKYczfnzd1k*x|7Yws$ccXn`)2Y0pv$8_CJ?=r$yK&x#+pJQFYDUK;% zu)*T2+fM<>B3M};P_3bENKx9FzDS~$1dt^G7X|S85*iR?}ubUcQanFp==1`1H z#!x5dtsS$Cl7(UatjrQYklhAj?b&!G9bHS?W_k7{qWE?`v&c){*wc-AJlLuwn?U@f zL>+mLay0hfO(GXOQG0LwF)rtKP3il8Kl@kMvo}f35Df5wM$bAnx3K*lK4=p<*JvwM znCvug^p=|>D2u5H+~Y3naRO(+xx-XZ93V&YYOswAJrdqA+%m$e5rMzc$@r^Gz+nOI z3YIr;?liaa;K{C5>AI|kn!#}N{OqR41srb6w>YcZI^nUKtA`$S21MYXU|kCPQ%^P) zlGVI7)_p)JKCpONP(Td; z(&fOI5G$1GXwftX-5svI`5UsT&*ao+w&)@%-uXl;%eBeZ!+(=jcd)!*_4>;T>^tkr zkM`q05$k>(ke`EgEQcDXk&yq@2sbIB0T!x4{B9bQ>2$ar`NE7j zDEW8rkIPw669dzkJ~O^W*DTBY#W3{vgbC*!w+; zkdKASJ1^gHeM!ImwcSU?xi!wfd=PVB?_oOlJ&3t5Gv-VGX!nn~Kjp3wTRX`tGWU}B z6EsbV=DeDe+tN1Q(COlq&S)7x}Am6rx zO_7wSIj%F8D`Sc`AOa+3Ylc^G@|+qmfyh=koE$pMCcPi9$g9yF%Y7=)v;TuUtF4~? zP=@D>CO+HsTRyQIaIDuko)bmM>U0O}YmeB3LgcE&d}{4$G4^l$_E~w+!uNJ~b}IPB z+%p%P ze@y(32_^xPeC&HYfeJbu*#1YWk1%S}Ocm(Rj64Mgy8i5X*PjXksm*ZYQBjQ~$LV)E z0WkR&%8YyQaMPK~R_mt?j_F&`kDODSN_Ax=0Agf~9$(?iJ9>BXjflIJz!_ z2-JX+$aCL;A%{5AP#M%GVIJ>zFr90kN%JYBI(j`CszvnKPIAb_tay`EMfZh9`ed#Lu zOg$qk0k5*~K0aDBU8_!{=WYC~l6h-hRLbGa?yTtsL-i3c5bq~zBr+Zn2fcwAmSLT0 z6kg^9-Q=|09yJYRudRssiI|I211McEM(XSh?}h5S-A5EvhO83=M0HMaZiyx@b*T-+ zc=k2Oat#?v2UFtE$U_#2jy&pQVXSovC$8DqEGDV5`y#J1lEY%Qbj$OB)nYZ9U9DxYHjCV+IF^LfB*b;PR5eRSkQ* z0&hG&_Z~;iN928Hnyghl+IGCK*gXvMl0MJ9Yxj5fCL=RJW)p2DW~@*RSw%B+P=mnW zWHxmh5rc|6uoK%U%gj57G$~*#c`MGL*Lw*3%Ft++Cn(knb#Mnu!5vMd%`PZ2z2!{z zm}0g1+|}3-w@F;}Dh{99Eqi%xws&=wjU*$d%?5>di(U_%^I6^fZ|oVa&R7^Pu`6eo zew-*I0b$DMx~1S2M`oF65_vZxIr%6eGc|IT5Z0ODP9-aySmFrAVRIssf5Hee9n{F) z6ai}I#a6_qdNO?TK)UL2|7t-_MLmI9HCl5ujZY5pdAT~>$(0t_XF95)lq2a+Kjz8T zV-wzavG@#oD_L`_=d-J)7@RM@!Iaq~*J8|!n~4*z^ihn+Ibn>dgTUM(px08=-O=E7 zKc@kzs0NOU2HM6(w5mbV6S92|bxFxNcaCIVG)%M|I%5l^#~aTLXPo;Du{L z#~%G(o_Kh2$HhH;(PTH0&|V42O8)$bcjuzvcO0!`;?8*4T{lJ8-N(+|U=L~94r21qALKqkbkwK8=8QaatqMd&+QeHbNlr1Hdt?E>INhLF$67yPX))=p@ z1}rXsMk33cys`kpanq+PNdiM`Gj;}DMnNI>EVqa_w znq)l<+OW}tCvSj|tyBl6i26rrbsXJ(rrJNUJ=&C+!(^2RQcGopc~q>Yep9Vf z!f)HzW>fWALi|y4#g&T`ee&GPk5A2Pv@V;te8^;*O;k<7LoCPHt)FBwtR&hkl4$V8 zJ)-xVPcC=T0f%S^ob_;DvxO&fn(X&RdimECjWJu)pYts({gC&$Y`q?=8M4jX$pp(A zWl5t$P9>woVcUxHt=1}$?3E3oJL4zFMjV?MRMU!c&TNQ?S*<&_>;zQ?QvI}FuG z-qY@=m_Nc?6U=LcQL}7EN4M%b4(hoBJFctnBz}sYW$AXeS<}zlzw>^RFOl#y&TQ6~ zONCrMaA7W+YX}AhXNw1p`&<^qAC9CeQT2`NbAg!8@j|AwDF}jDFc=i+SoAperMGEz z(QJ39_2gQvoqK+LbHj7<^vNTkCnv2lc|o*sos-E>Rtn_Pp;*z7)l6Z@W}nh5iewRZ z!R>bBb$ru5F!yjZzE1Xf9(k3MRHv1zBgw}2LHFQUY~WcWu^>#KK75# z0WQK$3{cM9P&*Zqk#L-IoyT=Qbs9|%UG`p}v? z-XV_S_#q-up`%1lY8&L$(n<1a#;iDBV(ji@xs3($oYF5q?{^uP&q1wf%FrGHw#C6x zV^3D7KJe_#r-8$6$l~-Ua4eCY6guHs@fp)tJa85Y+fbnj4)T$+B_=XY?|fN^npds4 z_I)P{E48fGWimu~d$M}0mg$9TUfY>MDD$W6{en$28;m^9cFK`?wKyBLS|r|QHl{@gu}v`^iPm5L!sR2aNGW4WMnY?qOO!Pa-&|E|7X(Q!cDwBdZw76``T;Jpo|n>gVJS@~4hZg*pb>)>uzj9^n$u&lg_ zfJ%MG!J_Wz1EM{=V{PExyw~u9JGafjOv!%!v2)IJSL@`XLP$Pay=V>#fy#Pq>Wu0< zk;)`@{+|6vps4zv_P^n}+ikL4Dm==4X>nE?c}%gcz45wJZ{|$?)ZB@u5BYBWMB?!; zdbE4bPYNf?@o;2uCh(%>b$TqliKJq4xumR>;fU9|$UVjl7y~m6Q)m3ufmed6<(BL< z+KZ#EjgcXio`Jc~eMTF}^q^+6zATS&GV>(VwW}~`*+upuFm`x{0Zb7Ee0poWOQy8f zWM^V9bGZwY*jj@^l7{A1kM@sY)dDag?G9POmP(=vMfITnQ88ydS#b7d_)aD{h8eJj z?X9#7M|>4E%jcu1c*dKc zJ%DXylKl$zI;IXCtR*}XZt~nWw{h!UsJ- zNMnzDH0uc!%cK*@H2Ps>Xkmg>Qi+$$3^FAW)$(CO6-%?qK=h3rW48!+Tt3_EsMKT; zncNE{ya#)EzSvyj&n#WP@0hr*l#aaap(7tXobCq9(U9nL``syRnqA+R@u)LPnR+NP zQ`J&_b3Brd70=Ht{(v^uYuQXzPtfCy&L+!KuqFj2$bN%6!Avn9Wrj`?v-fSZEFRF? zNdX$#!A^1PZJY-7tC2@$dLT3MV3It06FoObd1vW(V+Z14Mk4hQ#430NgGmo?TmeqH zschK-VO)i*bIX!o3K(1kFr>;7&0O!0g_1p07(zy(eoDqd4y{6hhW)dMOU2Q~4`Y;7 z$f4!M_QAzsKN4#3eu*`CR{Rfy*UlE)At^ACv&=-SUbn+ZJSfrRP%`z5XtugTu~fS9 z0(YY4+VS}mzq2ggIDUB2Q|x%sS=GcD4Hkn{FpBKMW=?R%S}`FMlXKO?`uk9}N+cee z^$qgKDC1~r z651IMjR;{Y@vjC~sg36e#+MfRV*b)th+?Dr_lB zx0EW68G&eE#I6efsU=RFO8hxDq%V1HHrzC+Qa1O0L<-HgH}CW>9&_YmXUJ!Fn^mKu zw&Agw-C-^rjn~CotyfSM9qxz}QtSRmGTRNSTwD#xio!dKiB+YukhXGare3t}{J5`O zmUvN3%@vQgRIOTGHgZN{z}*7-fSEHNZ5g6|;;nT{tHr2|lg~yxa=>eMnaq+c5Xkxb z4SU#VRuzlOWmAo=M7{{};%CmX-{jgvC%v74Bj?9?5Ti6rES9PRUb;OjVFyMDTf;jr zL35z_Zud1xHJ#T+78)5DH6)_d7>ptNA>~Eh<~Jouc&cK6akhkTBF4}Z$3ro&w$X|$w z1zVvCz1qwLpA+mHViOV7@6xxewbfywsWzU6aUW|PGQ&hXZ; z;~V6#khcd83%Q2Qsl{a8ICgyOoF06K$AjBM?-Hmjn2FOEqB>s^eZ((aIs}Jg71SCt zD8Psg4;092%9bmq9irp4x1!Be9I?2hP&Q@Ibq4TGfaiy95`S=u!~>X+{g#nEEU*aR zFGOT^ylkv!a>{X6-dvrSit@ZAQ%{_oYhIe~rJd1g@Y35W6JbZ%n@ES8O1h_QIzwSK zn0w}Ow-wD~4n6STp+sEao0f>=c37>VmACs#OSNQJ)9TaR)%NC_A6k%~s{i{+#uax7 zp_D&nmMiT{D&+P@QpM@>8?i#rzv9o;{E>y0(sbAQ5^Lq zI4Vp7$MraHmZmJx44wsGQKP(GdenxNJmMmOTPTl^laY$2W2oZfHq~h^4%0wU!lc7G zX?5O$)RoL29#EVwnha_(U8XSu<&APX`!-yAOcJDlg+pEs3G?A&rbbj^fz#lghcZ*xD#)F7+L6Hi6Dy%l75BHC>R7E#^SVeN1DyL7_s6s3x8X=D6i4GqrE?+nT%9;s6kvg8FejRvl8T8)nmN5@; zn~5+Yx=K;K>`$LOWm8cG%F9RND)yxHs|f3 zf><5JO@~03h;UHw>KLJ_5~(O5CIx!=5s#`2lbIatb?b-8f-unF%x7qWGpA6e6>=)D z{}l2K1DBI}ZkNbRGD~qzzohxw>ZbGld9v0%?+-er+3#F3ISdX~UOHU2ESw;rO<|J# zWVU77@C6=b-&C`^{l>{qP}6oeqen_{>5kvBbV@c)0~W!=l-OV8TIBl-WE++0C`>Iw zm#zR22Th`6lao5iDo67(z>7?S^(Z)2Hi05tC+LXbQ10$2V6%6=ScNcYRGk@LFz#-ek9?nP`@4( zcZAr;Yl_EY4an&!nBt2R-P7f&o-d-h_+J@xSA?p!hzoOd=7Z=PFm zyE2N)e65^GYnBUf&Pw&~KQSBZFA$kBGePDwGGAC41HVLzRNn0ot2fEBSSSZFVHTx{ zVhd1|WZe43(F&`Jc@v>w=@mz^;^4NVgDL!#T4^7V6%tnhnKod zP`k=h5sFU~W3xdef6*MKF9ZRmmZU zv}mO(976`p91(y_r%Qd_p_7~pa#1432g-pYc2)^1kHU@%36G^S@QICd!J;c80A@z_!IwOXsbViHh2PK)AhCRgYJsndt zbRn+ZWz>fYEE3iHX_1SXbJe*uFj@W*#XP%|p&AGwx@rzK$_H`gnldN>>^|)r_*W=( zauV7gwiu;_U46W=B}Y3GIs-T=usGQRayBszQ4`rrlj1dj9;X57eLPSX$c`eM>ekzF zDa7+FYk$Z+zVp|rg*AI}{;qc9R5oo(hb>C)ai1lcO8eK1=2YUyRQF6JWa14@GwaG6 zttZ!P_7%CY!v4F?VNH|F28D#5N3Xx(=!WgxKQ_m8DwcT1ndI`xrDSho;@FMlV8Aa* zvRhfbxL62U!kqu)_zdT`Y3#8sG1q~&7ubih67YdyIZ)j0r}nx^a@tTtODbk)PJqEf1^q!)wbYOo>Ch&!KWZxu7_mN}?o4EeXPx5FiE=aBEw z!v9bjwqPe0J>`xD71b2r{n{?$n_;&QmzHOO+&8(yjE_0b2AO`oI?|{u2^&sSI7tYhQ?@?`j?Z{!8*w51(?%3s?qSgCJ)xgQ!miO#)1s)!YHn@ zfgIB`$b5pf@Y9c<(S|$eHT!w}so<3NJ_!lZ(T zf`jqfp1mB`A|V0h9w$q_<||i2>pL$NLyz!ANvYP|zL|HOj&=^Shk08_O*|-Rm(rZI z>W@9b{gE})D`-2PNysRs6e&BHm#Lc1DlY|@e5umzfS8+!rCkJ-UjP7{$s0q7?`YT#qC)#M ztd9!>*3Qv_O$UFLY&9xINH*C`9`NgbD&C2DOf!74RdI>&A86MylO11SCTcgi>+O`~ zw|`miNp6eP(CqPw(P5ATBX{4IpNN(_Mfu9%T4|#Z6$O8=#D1djzKO}RWlyGCb9#d4 zzvQBtm~p23@whynXs{;UWHeiBvbpgl4dwMa%tbCq>}!^JH#3wW|Eglb10eXOYF}y$ z%+l?l2?fx^L#BfS#Nlng;6PF^LRZg5SI>s4XOoC$V??*#XrgX^hJ40}#TXoTlChEX z;$;=>r3^fQjM3(VB{eC7a70h*gWYSPP4qyuR9{5CHLj7c?^iZ6KEM0RTzO|Zwc@>K zjc;^&S6V4+SPVBdn{%7&t?-IJ`yVy!^TJZ1@di(8t+sUS&6iVh_r|?FcB7aW*D`Oi zzf9I3&OFZa8G2@2)sdf`Spmm_(>rA;1;F15&eDys0Ydc>K#IG6!18)#~ z@n|}dw`t2WH;=LRkw~Q<*>5Yg^&ETKo zxXaNl>uX)FH1Zj{$;QFr%r*>)6YdfRK}kQKu~e&NQSk-A2eZ1FlSQPSC+@|6(-*}taV@u(}$G}%{np?WA6G(B{veX-SZ`OHFCj0bA9wS4``e8B2()g!6e z+Rh(whhKS#{ri+QQT(tIn!L!QK{51)ppp9d2?%eH7mRH(8YK$eVWvt*6z%8iZZ+Fy#tEXL=4=oD*| z85`>EpE+$HvuJ;NPZ&|djRPEH)3th2{1*K@I&8Vp+vbkDxc z$VA_)Ga+ErSCNm@LXl~v#=t1i9#^7c-1OABsSj(>`^pg$Xn~2yyk)OmZ;^qB?Li=7 zt70>(I{>3B87BZJB$%6J1$Pzks(NC`J4X4Dhs_>1ia%Yw6x#Vk_Rr3`49P+#;}Sy2 zLZZ3O4zJC#lBT`#9sl}M3uOmyjwS=SVxu*Setv|Ba&2gv839ty_Pk^Lffoh80;R?K!#(O_ua!d9y>=+;(v`s0;FRm8N zF1yhha!TR)`)42bnGtBm*#&FJJrR3jYDej^&REv)3xSGQ2n!a2D!=!^OXt2!^(vgh z2=@lEr(NcU89?{6(KQ&h%UJqoV7!e$FQS7&jX?k&e*z{ZjI*C9^a)bXab=XDPBbb| zcvct5_PaGA*^@AY4#p*jI3v6b31WL3!;wL(K&ONQ@QN7CK7}KK_R*yo5`J73k1^3w zsHyHK!XjgAhYL)UT#DPQmYW;J$#)wpQa&krqK*>x)}2=9aP*ndwV3KXc3(9ehy_AQ zh~ruI-gw@y^CqV|*C|BUlW*b7CYwpH1uUB8I#j&rTm4 zeu=D?z__75i$OMSy&!9W#qodw>x2NVZtX^^?f>!97t_K2r(Cy(O+b$JNM7-lsi9Zee}^Yt+UOJ z%OeW0z+88+;O}lk<>ND@*~~WAe&uEM>#43ooQ_XDdGd`ytNmnaS(Plup6DgSd$e*i zJ~LT~RIh0?ZV0m9CC_YP(r|7g)sdM#tc$n=-bQ2KmM9;(v^_>8OQ?aQxcM$n#h6Ro zixU$e=Dwo$=)#IfI24H)m?My56D6Q<>bn5(NgkfYs;VMtY7>i^Nqqy^?AUNVKYN;; z2=%>kxjipgJW0-U$zwcS%GSzhUn;@{icif8%0!X9=d+g5q}yXMWr)kis_k2*QZuQh z6w^3P^0R+~Imrlc3lNLLI2(GkDhm9ABR72*H~Ok>C`Xxb;FH-wN|r4_J5xBdY2DR2A16QRW49n^28ls)%P^} zmb0F8mGJ?FA?Hz2L--!HM0ZhsjU_9mdN@ zO`>9U)QhcYb_EAjWXh282&-|51{oUNHN7{qqx*pB_+Ucf0^A5#H(Hla_kH<&S4nNQ z*)_Z0WpS`Or@7f{8dp{m29I2+B|Bm)Xio>ssxP1E9S`Ob)}>65{cEeLM7Vdtg4S72 zFm0&V9j0PYDAXl#oa|nI+?J1c(#Pg96Jgtoy+G~pmx%3365G{eCZSWb4xvW|ACAm^rC)8S>q zfO(898=3DcVE!l<|QhpKqVa z$^R4zxr_<++viDOX5fvy$eVe`yXThdw*o$PrWQ7-_Kc`qVV_PN%kv*waOaHV^cr|U z5CxOLYLpGh`_4(%6=i&exiCIkmw6Y?J%gsDIE6=giRa;mF@O>_tXZ+*fVS3xuEufj zq0phXcxm1gKpKKJ3ep7#;z;nIUpKcV3$`>fgC?kS;OOYbm921H!^{Tb9114OgdXFt zDhxSji^S+wjAMNOMS}!J7%th|4y$P9EyVDYZfKHEwy32@ zJ1RP?cC$^i3RX6*#H{X!!v01eZ}^$imF(>6Io8NYyv&1`Pkb#LH*<~YhG4XroMw;c zaeYL%H zNdvy{U|6pglB&?YSS}$ZiX#8KY7JsooZduNfwmISMS!$x6Rg%JJzIL> zBd%Zi^UmBuZ?Wmi5QtZsazOqVx1Nv_yyS^?6H2gDbk01p^lR03R)VYgDm1GqXYq<8 ze%<{P@jdU#bS+J(zThiEn!SdQg>q8psGi|f-dL)sRxD&oa_k+^SFc3Tr2CbQ8X z2nGS<ehOjsg5&}#eG1{p$zfnR!(m<*YO$tO)V5(o)NT=l!>+$UA_ zVrKqGe?DEMdQz$M&OP_svwpuC=nSIz`|GoBK5Kg95&6gw>xb`@@A^&ulC~jGQIIDW z4hw7TC)Vlqm-+uLU${5oj+bSJC>XSQgEm#oT|{4J`;T|-=aSr;sIQaePH@z{*`n_D zUD%?yWyVM7*(C-QS1^WP6(pulHUmV9QAFLu{sNd3yy|p^6BvU@iUlJ{@LJ&x+%6Bb zZ(|Jv{m|giK4`xAh9{yG;?ANJ8Vw00EeZId5wp&DES0G>^4WBNI88ch!lb___;joB ztUf~Qu6R9e@^55=q7p33Dc*#bz^s^39aAQq`R+=7}h>tE%UtP;n`>WULy{=e3VQUB8ZsiXL z8~I#TTj5PQizpdw8g0PikPMDTJVC9%FwpMViSOJ+qX#P&;CN_-;;3|eoB{SH$HMSR zRXa@sFb~+%l4kp!=NE<48v3%It4la;S6BJ8VIw971E$C zYJ=m@qoPA+AKFmNUI=}{bSqrd*FQWx!dbl9g0Fr0c(*69M`iJ1zR;Rzj1Bq` z_x^(P5b;eJZN2Xndu-8$YjMbKt)_dOZo7T9B z*7-e!YJ{9InB+U2o?KscM65h9c)ZC(tUP}FK<=)$$VM?^GKeF^uuan2%r>JS@Vp?1 zzA}wze!y9T9Ql+ztN$2TLA>#wLrjgY(CY_<9F28;9%G%4kw?+T`@+r}xKC1@6gWMX z;rbc?0TooUZ2<5AwR2PdZ*pvGaq}ZJLe1k}K8?94Ggsx`Mh?>NbznG1 zASepFTTo=4y>D+{9yCA1Sf>$s_&Le(qR#0GCQ4WYGy;f{FQ+D5(yc+71!>ylF(*Sg zP(d{Zu)+*((+g&iH;y%|rerc4J3#cp=2UiaA#-vmI}tRWFVAa?zDTQ-j3%lHF8?RfnkcYX(I zRB)aDRc?k}e~w*eaX()FP3|-F`Ug-qY&%~g50M_H<(9cO;5<4w2yXjTyBlV7X4Dy- z6_`1J86Dv@50-X^ zA-^idshj6>JU5Q#WT^j~$quc)mYxAO4C?^2#1zl3+U|-D#&s4)<)%-5) zKRPZ-o6Z@@C8d2<>T+1q+I#JyT`ThH4396bk4Fq%AI|XX*ocvukwXG9uqG#^JVQO>L$?Rite|!!nvnQ!oPv9I|FD!4Z zu*O*%_6PQDRY;NAAfB_S`Z~gXe`KJqy%oE%L6_?+`y-jN8-`&a>mpsC@e_1gA3TZ} zURTTA#RFKatI~`6PgBorV}&|+W{WWn(-6IkqzI`2&Sc*lPN|44HW-FebWmC7N?SsH zw0xfRd|a*0t*l`;iKJ|tWyn}q64PTFxZdTxq58-21Z>m*S3s!0sDTqk5Jb{f$v3x) ztLQQO-iai-mq)wZ(K8Km9o%BUY8I@fXuy~ZW}AXPH_wdS-V;t@TLq&kgMfpMiN zdHUpm!MxI?*=dK*>7#GIrVl5(W`~w|j9Sr>@rd!%dPr*eB364Utmox!wB$7rx7Re7 zSK6F1$EW7ABQ|GnvbtxoseZ2)ZPc^df3)*FH^a%mA01{$RZ>|=fhyFn15lj`AoiXU z7Bj}$Kx1X_)nUP%F<5YC0NB^qq@tR9B{68>k?D%%sZ0K%o)fJpHecZl!&qDl=PD#@ zcuYAIV;Qc1ws1u!F8UbcQv)u@ z2pb)k5w=j55qN_XqaZPKtMsnM;}Y;?epmm!9{!g z{SOzTv8j}$?262kDobfsY1D5Kr`||EXJY4T{GXG3T%4By?t?R#l^=XQ%-j1|M`1NoJbtGe8sa*WvCzagJ1EJ*cisE>LjI(Ov^!?DS5Q~U?XDNdyEQIoqHc(pO1LC=ON?Ei5H$$><%C&^IN z9ASOFBW2)F^bX;*djb>@BPzD1m--pMtmA^oe5Hz;9pGSI)VU)0kp@N_O$Pj;NAK9F zI>|U{!+Qs9N0}@JvXFVk9ijV^eA9g@l8bp}GS+-?Gv3IK7CR$TQtsr`*j>apSE$vb z^~BL5p=I#6us!kJ*aAb!oV*0L4H(g!CRlX`I}Z!b49v2w-| zU!;3G#%1}xA~T$W?(%8OW7>@a7|KBr)T}zBY&l^pBnC}XdV`%c1u?`$dWZC5(@&28 zoHVp5@lHfs@P9g;71TPPzW3~}_?+61hw1JP zSLFXYS)`u!7ofXj%clZ{Q7_wud1gBsNw*_B1wdHz%4|-TplJu68xaY<_PxJlObynO zwI{x$Nctc3oGs}9LYBP{xL&(s%v5~sdI3;oflMp;{;W$**WSmgqh zS{7Q36fTK)6*&9oGh#nH5dFCIRt=Qlpjl;zEdZd!WnP7F3iB?iLHw1oL@)$X-CX<9 znV*!9IzQ#z;56O4r7vCu64(&FQBDK$}uYS!<5-Kns}TUeRw zmd){M)|!upMsz~8@N6QKC?;PB2)Y@nBd56t|4lMYz4{bnJ*a=G17wi05(WF8MsPf% zJm}U=BC~JOZe%+@=|R*QFk3(Z5anxQlRQR%P8igLZgpglLt`q*yeqzG@c2K%TW!Xe zBKYH#4}|yY$$j$p!&PEFJQ~svBIpD0xHGpsW41d@^U6}fJ$d(Qn%mz6Us}sG`0tPf zdR8?d^A;&91`)vy%d9p<7utgudRtla|8Td*uc^2My@CvQ1Su~7vce-X!_e*rv1KI) zHwBwLp2Edb%zCJ?Mi4Vw@zr2Acnkor$Iz`bhoRAc|$PPcmj&XzOZZh~e zx~zJJ!c1*|lwh_l%0n|97HvqAx0w>Yk-QkY@2grtBl<+Kktc%f(kbtRx#e^DGDK@^ z#Vn4D-`tur@hQE_9sX?S;_Rmgu~@w^Nv8o1EZn)zzv$;zYu<3eS$~~1sntdzX+P1! z*%{zk{7d8v*XBM6*j_zrZ7ax}WOrG~X&5_mdXRFxYD>4QMMY!1-b>rJqCRZ#_pugm zMuylcGKdg0p$&W%zBEgUX(UAlC@oQHM&fm3nwR?490CRu9lcQ)aReAQGi(NWPyp!l zC`2k(?Y?4VP_3r=uaELnPOhPY3KhMk+AlLyE0?~>vJM(5*!}jfHU5*&i~M_NWF{4& zj-1^^Y|fF8tS2YxL>Fm*j9PmUrVduMQUx9(M(iphS^_-ZucBzRhD}WZt@-TC49cHer zn7Ot(htQHRPN?y^G4R^$DJb*URFE5&f*zxbZ|`fW-36cJzjHch_be=rd-zXVf<{R) zxcTmSI<=?KAX#3F+jy+ceShaa@N-%?C*9faWOWT_IS|Z9PT@gZ%wA9(?nz@JQIE7z zus4i0Y?jb7a&C{TmU;VOgoX$Q=?yuN2iNISZGjPv4UL^~x{Kfq>cgy&-HDVFb{Cr` zY}UuxNH3g(+AIixzxnnjgCa>kFN7ai((%F_7xPbsQ36-_mj@E~kR{0<8(f-Xn;s|swx|Af-&ZeA@y8x3zPSAxaGrdhyU4$mo{>d} z6{z=XhW;>2>Blsf(vQ(lJ?5gJx{bA=rpl~Md<5EWd+}lZUXUTZ4T(K3@R)mXwI!f^ zfEE%o94>5lQ=&H3JBFk#4D2|AEk-%DZ^~WsCYk%()F<|KerFrWY>gfj2|aySAL~Yv zBvfAW1(W-TNPkGz9^Dt7(N#)kl6I}pkRvnI!abGe?16m+e%_nvmge73^Sw|x8`f%V zZmq?^=Fgi{Mu6+fHEFb>TOx%1TK z(MQXPP$U|2R)e{?xwiQ2Bi~+{@Bis+XmKtvZO??=wZdq;>M>nVKTn%j=;xW@p6B{C zoDDT!?R29i2aa^inf)^7Eg%Jhr&P6JCzT!e+rN8Z<_)KO4%|R~y+@(5&Iqp5zVg8G4pl zsh5a#1pR;?8H_xR!YW!3LlU?RYH=GgC4)aTy<|chVH@C(g zqJCKpI-9hN<5i0?*QQu^UWi@^K?86%WKo&24c7+wE*tAjkFrkyo?C|Q5`}mXF|q%C05Saik*=8WUYSaUke3knQjSj@@S?NwD|Km_vFD2`1w(4!48vurKiyX_Z-)6 z3tX{ZgD(--4-zz9OW1f#&!MgP=}6l`zp=xgI!L6vHG=K2IKbh;f!PIi+yhi?$9f${ zFlGRQEzs(9Bt?qAtxQK4Kh3|uzuG3_Uu8yWj zw*fNe(UsHFr~#4BaTk!$SR@;$@S@&sc02t3n0?{AXwn;u>Cvz)G-mZXj7E>i7z>sC zPC*|dg4Lkc2!!XizY+14L*6R+jYOe-iTK5!YHk^hNRuh*NcyL2fj>=$immsIil zd0rEVyMd2Vc+44=-C@AM**VG|=a=c8sABz(gY>-(Lt!np< z!Tlu0HE$*F+xb4(;q=rZ1CtS__Rkow`G9zlqf+G>Tu6Al@ub^BcD(U~ClHBKb!_ka zH-3qTh|iwpY7p52MmsA;LrN!117I^u?64k)3X}Myd7EqFrS9c1`d=4t zm?sPHg|FOli9<~3mxU^s;7)R%!@di^nmmF1Y8v`zRqmg_9?ugtFh8fty$+JI^cx+7 zIIK{grh}wfon<4=glE}+mz9+;oQ$xcZ$THx0?qDDtWh`tP~kKn8+I7fM^@^W4jyKM z^ZmleQDl*21AT`9`pGqQ5XSQq%?bMYdE|3Iz5*}9DRva-?DTA0u{^?IWe2$+bV(-?BGP-vtu+fD3uh{PQ*2x-4jc;)W}UsB|s3&tZ> zyLV!#vfo5JCbQFU?%8=m%3<_0(=#^u>-MDhp^i0SgekJPMMngp3&cXH;AEjbSgU`d zYjvLcZH_9Va+0pl*>d0Lbk}M%h0ve&%l)%B+H=+lR5@pTuxb~|z4>d(BwdC{0Db9B zj?-nBM+Uw5O*q@_&|9;WWUH3M<}2WG>W46L4Z+U!U}1&vfI0?P%$TH~oTm%2NTWKb zKX&{iEL+mim+PlnZ2sg7UBHudx`5%uk7Izmjed|&hLxT6_h0Lr;rnHYVaUr*Vn|PDr zk6=C1CjL3MJ?`3F(1i7N%Na>)EjKP^xttDQJ@w_CZwW17p4-nI;l9N6+Q`P)9|eX? zZWKXW%gPbDs{6|Q#KHksW7v~HxxWwhMb)!{-fpI#Te*A+Xi7g zoU?$~LZ8Unk-HUO@l!{zw>_pJjLrhWsLzOifQokkSr4h58=XIhBx;h9X}8pVQa~I$ zA~DEFp9ThsoCvLrsU9w*UC&;= zlZf85U*x~=Gk1hCxC?(JRSJiK&ag!%XafE~DfTEV=T)-4?)8N1l7qyH^7pXL{2yM?4A$w*be%MGo&JCWUfm8|r_L&@Q)d?J9`b+p8@Mcu5de57E4gY7 z=@JxkTn1_aAmi=Zaa_jkhJ8tw?7%f;oUX-zarngpdPbs0Jt4+?$$aYqeL(^FuL>D; zvBm)e_Aq1(ws@z%gXpg{htgO@D5NcW$lP5-L|DKe-4U@%xvD;O$Ijke_z53Zve4x|BX)|m+d7fI@UUFB!*D(Lc4fqY%cv0+E!Sh zACd<@bo&*&SK_~SMe{seIQdRjV11kf;+D#>+{E&^v{xj9)wxR6Hg30kZ!$8jlCSSP zP7Vvp_N4ybNQL9<#NcArw|}5s|MwfNe};0EC|K^o3|;Cqh=OIhRujC$fte7IQ8JxuTU6YZhjw97+l} zELWsny`^*(>9aF9gQK#X(KtAc9+z57piAy#NdK5?^X_F6!(Ty=CKa*_wBxr7)8t%Z zk!=4{HsQ6c<=b;cXZUXn)5140xwy5v(Qck;za{Pw68!JH%jhyr30jBtwO9Q-*A|6S z4TJUIoih&w#qg#aa2xmuda+v1%}dt#xyF39^`@WRIOx|4PrpR?mWA-o-$ng&Ci{6B zAw9u+IjBybp#r5xn!Bc4p_|KkSeE-2u7Kn&`02TJ1=)?SJO~@?b>-gTHD#LapXo)o zIt_@-)2v>7zpNg3z@u>W?qte|##w_0nKI9JQq+)|x~a)<>)?Nix0Lk6lVxI5UNXB=u6kVH zC^!~3{U`ZRX|LfiSGJbbZU0c?Ojzm1VlyZ&(=XH1w@PwF?#+yw490DMo-2>eYaRyX z5(Cc|b6LJ?K)L}?>(Ff@I9$N}2fGrMq(&Ddp7842I2=Y#ND>f}KJr57^y}6x`n-XWWUZE_ zSMpPl?LQXZlH_$H8D_pH{r@M&UV6dcP1h^&TzY2Zy}#>e@DiSJFOy#)^E4h_;$B3i z*e(!(cM(zmfZ^uLO4AIO=!&_ZdLk9Mmw}R>4Dwiprd5m$5*QF9!a&oQD6y~rGNR-1 zkBJ3VAQpf&uI@Z~{)z|D3A&7FNomeQ-)KeqQtS2s0ppd=Wb3HA zDyJ**zQP4H6<%w=Zcqu}bb1{h@e%$Um7nl;#283b+ow)Ud3j-~YmnTc*TRdjAc?!j zo+H1I7yrd%%G4U?LtEa0b0}fZ(uC#l%+by?PlM&2m9O`9ffn!rDBd(1 zi=rW?08xnc(SYbS|gCJz=iHUdP9fk-H)hB zMtvt7POXEI9f9dgr3vmU;$o-Zu;fw|;Ie04?ke4ot4!Yx{5X9(3O+B;2nD)~KG+8U zBY@4LbU{|W)itochor4&s=09hp$)0VWmJu;{8)_}Fw(u6&QUE(qQ*5Pw6=&11COLz z;!kQ4iiOy{_oS+1YKCf{$!i;GU@hsEDRw|v|%7dfBxpEv*C`I9!MXukQ?yLND{ z+?&3}1U)?z^fU^3nhX&%lmK0q1gv97!hVxFUP$lndBBFr2wa(VH>dc?7UBc2KtMgx)5c=%I7V!?f9z~oP*cg1{8Kb@)hkDYbK zXg1oN>`o&APNZXaHz{F~Tsq!9| z9DW>3g;T*hv0WyC{fg9iqv}l80T$ucz+(TE#%PKcnt@*Qy@h$X{l-g64|HY{A+I?) z-A;TWyZsvR8(nGfP~zu(#AQf~1Oj4fXwjb|glM&z3;EJ``pB7)nT3ikKvE-P1?SB6 zw>n+hzS-n64nrlWk-{U+jA}E!MLtK@Xas74?s6|&Q*uN z6n9r*6d)y#KRhQ7(oS)fc5)(I^N+FQFx!pvZ_q)Nb0hBlZO=Hm(cS8UL5NGA21%;N z91BZRzeLR5v^D7)iBdWK()KT^TU`x26PB<3DVWR;Qb9#W(gD*K)Lag;nTy;Z?h_o{ zv0M8XM%n^B%a&^DeICYC+#0=?`8CYH!IoXaUNObvx(*uHk6_U|l3}+Gvwsc=z)|`R z#9nm3c7`O*8n{H$GdR!Q+t=#(99QF`4NTW~0GYa1cJ!^aC5#jIH6+K2WoxZHJ%hah zH#wM$zn^T5%0lxqaN9bG@lDTGo*=kPHLJMG7`_ z0a9ofJ}%Km8*)FmG#D=Jt)MaY7JFYHSM21M(D$@kb=30=RVrunItOkeh8m zODu322c^C@G!OP=3HX0*KJ}0-JIPQ{tUQvjO!LFsOqRK~d#|XGAocNTNw4hPJpliL z@J72kYWERyYI=X_4tHIWAUAXJXf(t-f(3WVWU@p;d?mhopleuJ@2rNzfBM{Vr$F33 z6Yi4t1GNeX7)eT7EgCI)9VBNWhC%bZFb}lSvNOpMB4#*7rJg$sDmbv z*Rt;gG&l}XN^E7N1kuK>xsc1f!ZpPSi7_+@1y}^99Zdl)LTR`NKq^skvgQGcq}T!G zNwG1c+FOMPl|`1?x+SqiJ+#JNN8vBX!o&Mb)y3?oN!}6-k*DTa?rQ%di+{E28($@S zc(LyFgaW~MKx8SZYG`aF#NV&_TI#)b7)A*kXZ;`olmt`Ab_k@aK$G0wz5PkRjKd(H z?j0OQ5CpUax8EAvzS@V1Im8HJmP8UphRNE3npAL)A^kGloHT#*I)*o63|NE{NMFq9K7IcO7 zcLQ0IhG<>Uc5;3{h)WKSEr;)8Huf*cVbqgJ?)?~}wy9w1j0`q~1ciIGWC{-z8Z1C; z01-MUj1$9irx6Y$r&VQZX~OXlg}&PtJw7QvA|nn4^-0U1Eo~1%4AO%g+H#@}B?Ry; zDdyLhLnXgX~!Jvu2o_~zVXSZK((P<(9tKuYh` zlEvcoQ@*rcYt=U4d)4(?*DQVyx8iUTZ zTYMt;?;U0%b;zxJJ8#tK8345Gx}(D1I`!SrkwVTbXUNpS(UAx-dT#Vfw{4C@m86#U z=wsy2MDAcA*G^|-xmmwBtM}}2Pq$ACa>DA+EivEcpHQZ2&`B@>5~cR4Uzz|Jl&Y+b zGf#yZDnnyI&n-h1cp&C=AdJEd+AUxh44b)N2cl{0rQV?57YdSNOSG0IF#k)B`wYZF zRC2ur4!%@q468^~iTnP@;;k`J#SQ6RHCeA`AlXTl(M4`IIL}pk$B+w$yE#+7AvkL0 zpH5i}Ja3AHd6OeK!xLW8wlA;oqlcEBAR@Jb^LH;)j+H{T^~;mqxw`4nt|in&CbWDk zY$E!=dkN3`CJF|@-iU`xBpis>qH*uYr1ybb-Gnxg!+k!^J;C+8AkPGqX95!*i3o;9 z$dudMm0}B&wO5xF7i8Auz6*&9T%e0-M2blh$P}bQDujd!G*ZN&hC+hP6I5_RHyy9C zm4^@_LmvnYVUhWggXDT*xQihno-A&(*FTwuT<3!qF;xzEC6++{gI&>J4m@!n(U@Os zShPf#!}K^j11WPg2HJTU{c9cdu*bOP0l^(MY+r(|t*!*vx%BkVVke%$>8TTw2DvoR z1`1HjMTDS`8;%N@K1edCAi$a7WW_*VVZg>qLxGA2C{YB^Cw>%LP_2?8je)Rg5{8P3 z7GSR2e(W^rg|L)_xwPhuiMPri2cr6pszz!DHm}J){%7Ol7giva$1zhP zNXWZT41C3V$6sFrKs0w3g0Bx%eWKg#Qz%W32HKp5yZ$+L}SlX()#rP02 zx7w<`7Aj(M9xYqNgr8_6P3NKMqk5<1MiaHyG?kA!Y~fVUK=|t1sf#x29?LY$xAVbTt6B}G^PA@irL^Mt% zk(F7i2Bgkpmac`vG4N_Z*e#k7Pclbhpc6MH9Wnn()nZk1QRL5kRWjQ)r$8e*_xWy< zaiuzOsP3@1y|Gwx9rR&-cAyU&`7fAvd7SGfu~HYS)u10fXSu#N*D`{`E-`wu85n5m zX22fDhPf8-r~+U>=nGtdfsw)dz6JPbBgpv%pjwe6Yf{Zg$b@pEPet{Egn2dEf>e~G zuRza_ec)t10s`26y(3m_m_ZChPw3-3F?T-sv%7ZVvMF4;a;RM+^yd4U#_c}onE3y0>J^FrD0%4D z00o?Ylj>U}JJMV#{$O$P7DEY;Sl(Q?>fAnV&FN*RlNA+6>1*s2US$9?*CbtfvIDwT6? zSI+ZT1OS7TLW7k8gB2*I3`Ib3?9l5S+?bt)u{f|_*<0)v_*b1G@KTJb1*h_!f)h3E zN&xr|s<@?d5`&r2s8BJls=!F+ws0Nx)11OA5M~UB4d!%}k9zR!_oGR-}E|V@)_E<%;J0BK}7Bis-1kqR%0h?Yg zS5;j;jQ)O?`xw`Ef-c9XgkvBHE*44?wa(5%fF?F)RTIU3KGCzn57jv5ZC7?}fo?NELF z1kQfVQfc~Tab^YdbqecTDc1Forw8o>J!oOrN+YA{Mz1Mds)%r9>6zG1HyqgvBe)KCmZ+;-RA1ZlXk16lefHMfP`|{5JBsMC$2#pQy z#>k+6*n7Qb4UxoyGC&9I$+f$$DQOAD)Bro1KF#!OWTaGtz8FB(oguy!s!GZ+4{_|4#K?5M*&6FE54 zneF2jMDoaHttIKSFK_>Eovjmf*@E}(*3Q6(Yf)SFDC@WCxocp!%+s}9n^n68XKX)< z^DNmSy`LJQ1l8a?&f1kAWF+Vdq#%Y)M%8u&vy$VNMW1D?Io$=TB}rI0ABRXMK5 z&64IS)v;Pn%<7X_7E!Z8!!XC{ZDy#hBzGOV@6Q*C$EX^ZJL8^oMKA`|oUH{)KD^SaTkvtPRv9*W>VjjlOCO%mhNqpqA`(pbfM*y`FjkHyby3c zyt701(l3CV>{^S9s%Cj_7o+VVCC8E*}d1fWZ^z@db7oEOresqClzqh1N zN}U24Z6mid@`mADsH2w$z&0fYX`v88*ifHxw$)p3^pGA>qB4HI7;!=N-;jd=9HdV~&OR(e&cMuAvw?zgm$0YBwZ% zKhbLCiqT?$RChoFxo(X{O9*7U-G^qI$!efhGp*s;;Q0Y-LstSYmwqse@0lM|;HrS2 z>Br-^??;E+Z^QT=PL?G4?7cKq`fP1CA6~rHOX2~dcyqGcFJhUkh@o5&QYP+K^MfEk z?k-}6lT)gG%#XLwEb9-;o6f-nvm4QYLvfmP_jcU*G?(nHg%Tok& zqiL?T)8#LVdyLtPSG>F;kHljkGYMDx_S8s)#~Hls_wD@M_6~Q)kDXmftFtTHUsi`# z?ikFjz+P7Pi&Qoq8sR~`l?kQq)(q;ce9v3%Ij{W~7s7`_IJaM6yv1qOg<|xljk~I@ zw!o{sOZ=8F&y~2dP`l_QSwtC<`=j_VMj?9iV}p9%4_I!T-w7YAjOwbD@em5i{d5sq znIurwbew+3VtSyx&;iZezPCJ~HkaShqMW#)X`Bc;>>57~H}f$Z0}yX&2`9pCOSsx% z_=m7YpQQJ9k>1}ZcM4`>dWm5J{s`XR2-IjzI2YVELD8Bsq2Nncp28;k!l22%Uq}rq zRanza!9f~q4e#y$vHcqEZQWjyQdMZGHU^WIT6>zR;qKI>Vtv!RKQ4~%$G+*C?#;RL z_|9u~u5)fK%)x9kq4z)_0mu<(Lw6yTDZnB!zkAq-!2HDRW_Gf5jQZEEQfcK|%?%z0W=P7FE{tflsM$YVfn#$D91#srkO#iMHzyvs$ z5aa1K2azO@S!<93aJx>LBh?pJpPV&HB zQcOsAtGK~P1mOLMZr8>2?tN$PokZLFD7^27l<>g~Fk5eYeLY5_f3gmLVYM*^8~Lrx zY4&$oJI~V39^sOJQVtB71{F&ucn$i9IVFq}n8DVKUAfE~Xn@bH%CE57Jqu>idEOtK zj+cq?rmk1BFJaZ1=*Let@&x5K!+&q*x9Depc{LR&6#gvEG){5k&!-1d%K3(Q0tTcA#vd?GLhJ*f`!$Mcw zX41U?TJ?x4TQ3l1w=e9pxwq{61Jx~R+w^7V7(--SGty`1HL#<-nQUdxB4eIMpLku! zC)iGvU>&AjGw%@X2H{JNsMeaKt3c!xm)*tF_pk4q=j5HgMhsPIFoDOmPYkHL8qgtg z8Sz*0gIN0*FbJ-cm3`E)I>@LVkM15@$I*XsQ0w5B9W-?GXK|=% z7OcYw==hk0f{)$m52A;(Z$)zS=j~A1QH~yzZeOCn{tXY#M}t($eB!1KxaQu_nL+K) zZJ`@hFvj3Ddny=z97r#|RjVE6iQbto#fVj74G?1_rqP)A5U(YkLS3sVb&3b>(Aca_ z*K?MHUwFIQ9f*_dZ|@$0xpX-;(|&77XL_0t!5;Fi3VhHXnBYS(v&j@T@%dUvC%LoI z=?%N6HKZIi`u5g|2+H~IAP0OTzIhEps8gfZR-5W923F-!!)U}sDA#(~Sj`^VkEW;dqY-=yDTi>u~< zzp;s5{<^iPjdhzrcXPis7F*N=edf&ue1XrnwDZfnmFj|-t8ga)F$yL_5J$*ytv4zw zMhHx0z%?a2z^o{KdLbtF3F0=BtjafSbO3cz8D;_`fEM*LmKB!{Tgm{wS?y$W*JQm~ zhgWN)dN$8tW6L|uv+(STdXvUr7bTm`R?}OxnL<0`aR%2P)$`-#C_PLc(eso1vuDB3cD>j;+IQdDFhUYU;YIga=&(gp>F?vgCpX@O2JBX#SdlEmY@+JT!AQ0g9 zw_kH~{@muF4XZ#jp72I{H1E#k{nl{j_!*&g#GMa$EWCyPvw)en_DwhEPCECWm9zpe zrSE7MaygGh9C4kRwuwGLs}Y9xbegtTIhJUYV;;&0JgkQW;7#H^hH>oz40c&7T=|HPt3DqY zZM|k{Jm!xlbPrTQalsHyj1k>vRmx{#@tN0~Md`itSR?OCH~C21bHZie|Baq!=2op3 z9yQ0tBkm1vJ`}YG!Ne%h=!)4=*|ib%=mj|S

                0b!#-Oi9;(AJ8k0<-2cEGoerz{$ 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%0Akyxe+jt5H4lou{!l;A?r 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≈|m1Gd625msGkI zeHzfSps~&t!KQXJFp~7~9}5mA2cm*ClbBfbC;v!jZ;8p6(u+uYI|_y21bQxD>tU2L-;XTE7SR`_ou{4psHZPXut_hKyD2r zrUvAe+1*eH-)w^Ornt@|(Yc)7O$c@OexSzO9M=B*AF2gvYy>V3F1sZ`KvETNU z4}ZQsdfcgGnszpl+2y#)43X_HZtp{ka0}t=7Os3JA;rd~B09v=(V^j;aG~h*Dq?KF zP}vS3#vP0BVRK3!CSxZpnlXlH+x$iq$kOiWLb8k^S#}Jh)<=--d2%Ekx3%Ob(f%jC z;`W+iJ{ybDXuy0|8l5dc3iTe>5;Zvrt?6@?HG8CzolK}aP+s3QsrpNuGRs@-R_B;E z*yQ@Vw)<19j5NF7ZvhG|qFM955zV$JCkCA{yDur)oDrv@F_s%uJB&6xmLb?IyCF z!7b<_l|`gmk#8{zOYnFmg?Y78DeSjCk<#NhQH-yc+8hX0#^M_%rZ>&3Qc{4T?R-Tu zUcbv#Lf4WCWb98FA(pBx(OFf?j&D10YMEqLp1^d0V<}?~PIh1y4xlO`Sb?nF{piB> zW3m58DmPu#wSJaMXnajT818hiQZDF%gN@shxfYW-ng>NijCkBkw6f;D+}M58+Yz$! zBBl1~J}1M8jLpF@a83xyq;q6hu)MLYqQ>r&93t1^VM6QV(>Bq;2~siDTYVKWv;T}H z@*2ZeR)S7Z>S|E@il(rfi{>*#KKV=bmq7db*e;Xa8P5(;{e5((6ZH3Fp$8;KNu5pT z4RO6bnRU}EZcrE8KEOy-PF>g^*Z1De%{$PyB+`4yEUmpJr18DGV4IxX3lHw23;N~kPoe^0nzX{zrrab}2~!v2x=5z5>RJLW z7`04eHb9>m!1)aWfiiq*AOzSskZTh8gIfbcnP+3X&fhY&)B|!bAOFvP8Ksz-jOiM{ zYEm&`C;~La5FH;0I;&(rJEVPIw-RA6sbqvn5f%BEl5xc}bg*nuGWA>P)~uSsRhenJ z7FKK`D@5BZGO#5xgNK>TxJ|?7BA{(frQzP96Vqr2Ai83co3?=d=&GBV286CbmnFt> zLS6mpO9WSY`v4l9q~~0cbf+|G5orwoXw~plp}L>!B+cl+Ccr+;RdaB(3#65r4mFXs zu5Qf;)TS_1M=ztPiA-T!S3XjnSP9M)!6;00cx**UMjhqRNYdoNR_J43k>n}9_*UYD zHc4~MyWKW%@GY~&%9zU=OX@m<9gxZ=Z2~14fFe3<2cqqzjlm|jtl5Q_!>sU%-QV0^ z>+Eqd0%NO6`Yj%-l(Y$oi7n_m^QL1sp%{~J$xwh?$Pkk-Cho0wkL73LrN>Ar?ii4J zIzESwV*`Jp(yABQSjU^#wkd);p`m; z4hS1TQBVy^8p34hLt2EtP05(Hu`bXVS+jlu4o=h}r59ah@UlLlWNJpLVcm&ZbEXzQ zeIR_7h#{*!r)2u)`tY_xA2yIPuzCpBWQK8zPuY%7$?Pb672LA}?-B4zPm(Vc61Un3 zyiVa^W*N6>_*?|Ckj+qU1O zVv8AY;-V7_S+afYz{wo^TwshCiWh{%PBrbYmY|wez7-2&B=|IjWiyp2y-GDg*qN!d z7nHgBXcuuhEo^~{lPSH6BnY0+(j7Y&QTo)Yur7t|0rZxXZdLWFlwP8xl}g$jnaMR8 z5gXY;UDQhFMsK0WilI3$pF%2nshkY0v5H`aMtDSy0TiSXaaeU=85h&Z*fmYGsy&Q_ zQ!Et`XLBplVvV?6HpYBe0ppuuR;ll9Oo}{+Af{YXZJM0af>pvv*5YX__cT=qY0$taDBeNGgUgbN@eYZvq@we%=T6yU%`C-*-0}=*HbZH?9Ui96Ue(1PLA>NP@%R z@EG3Ya7fM!hjWp`;hdH&)!;{r`=F9F8I-shv_iJiMbp_5b^R|KE2q99)FoK!zvdD@G zucF_`VXX?M+an#U$OdMWKNg$-d@?Kc+KfK|im&I}lVP3jH&uxfOo`)o*tZg&{s;CK z*otqT?@8unGZVX9YV2QUd7aH1?Bknru;qtxu&35?uyKeu&P;A2voxFsz;WCPo@b2* zZnoq}=}N_`7}&F;R>_hA2uySVMzsWQ_Bapfvpq{d1t;k~H%Y9d$#JDwROvm{RM0n8 zJE$JYpoGJgD_dSH19~`Yd9#_1;n%t(&!X_Zx;jo&CuY?Xv0;$^0dgE9$00n{;QA(+ zAE>&6RU8>UrATrtF*`6gG`u0)--{(SF3^6YIAJ_r^(r{a_|OxC2rb#bo4g)$1C5~f z$E)r@$t}ZP)6lb((H$iI1%^v4-`2B{4-T>?JrbW9LdPfVY{=3P9e7IfgrQ5+?+RM6e z!|(IMuW#Y`nf2lJ{nQZY?w^n`Q>(F~*=Vp_>n85X?t(%mKE8C{vtKKh8&{|xy>tcd zzH}30?IjC)DBuor#c~Dwc!P?xQECYEj4Rg+feal*v*HSIXQEiwQ@hZ6nXF)Of!kTG zr8@9qQ#mTa)3CFQ(4A!jXGl(s45HwUfc>&I3{tdL=c(Xg#Guy#v)l`!;P%4n8Q4H> z{LOEYohON|CfIp8vGjLtmGZ76pgfb5(UxbqX*3j4tGkGJgUJ;R65E~9I6~B7_(DBS zjtM+sZ)Y@s)VGtr0~GBK)|$)A;G6ZG7LVPswCKl z6DUWVM*qbAqfZj&!IL*YV{hVE;>OX_S6(7>Veevu!+p!H?>W5tBx#)G)O<_J_z4qs zO_O(#aJ5qtj4?dxwo&E#9RLxehyiK6Soa}?{%IK^o5x)TuYlo1ylm3?ZQRUAB%`G$ z1xXw4b>wJbei za&2W1;bH~Di;I>w$Kc3wk_cBV*GA_^nlkz?MoH*#E$-M!DmXfO0UnxZ9pdEb9-{uI zLH*By`tQc1js+l||J{%On&QSh+&Kq#s_1!0u6`tbx_Xk{8Gt*3t6moNzx3)yytmp- zQ$WCSb){ABeEefKzDnmpO2`n;!=0%5K%Fr>jZaG3ls`X1!Y$mH$USzDBOV zGb8wnJ8#u@&7XrecQ45G1w0en(^mcI(`OM%o}^6*>Syp*@AO$2pFc~UpFbz#pFM|v zwg&e%!3KQbrr+T2;1Bo*Y`O^lZaU&dN)HS!>^^%=jAybV)%gHyK$E{+XC4C>j+9If zE}TAlP7vb>cx>0xpM8o##^MTW%cm|qd!4ilpR?Tyz&J;Ni^hgYK=gZ-8VTn62|_GQ z(%F&yHW-cWDW~2&ytqP2kI9yQA&A8+&yrctXkBtIlR7_FwLRlHO;{NkW11W@Tv?k% zLjsz4am{5;F(9(OtG5(sY=>T(=%4;m+e7W}gMMQw-v7g9A%R32VVj1kz zWzySZ88f_=KMxna{s=DICM}qF?>yqdxeZ(pz#ui;H!L(rPa`tCVR=bxvGmiT!@Wn* z;U1vFy)|?IOEbOnIq2{QKmN5fn|2tV5$Yr4(aGQc@lA4rAj2EL7S534Sv-2@&&l<3 zcqX{Ft@@qYcQ+%)>-ej8`>u@d-X+hUenZB8(i`|ss=@tDumB&viDsOsx@W63_?LV> zemIC9!>6A1{K+39RfsV&gm?90)X5B_k`n$r;K~wh=aQ zope#}zW6+TKpx$)-kSt#zOaEcU)#W%FZ~x_jfANdWrU5$dbT`$jZlwBIkbjBWX8cy z2SYUJ>1ReE+bM{;WZ8oqOwMm*6Oq0|s?D#7!Es45Emq#4#xtzQ8Qf0u_j?v}5UGaSW2d-K24D5vT)sp+defOnu z;}XTI3+37imk_UBxB`pK5p6|t}Bo`3N&RgDHuz#d)tlprw^fuy><-Tos zY#i`Rvb=O0?4v*W@ee4TorU}NR=sKCV>h>%1?Ay-+p0H;Mpbq7Bk9)aRr-N*aAW7H zw*o+SY_%D*0i>&oc>GBG)z!lUt=y) zf`5k~*987rpCrdAJPMeHGP`pQ9+K?U)8qq=S@omGR>+(q`~m-8fD)a(hY#Pe>aX8H z@H=}?#(&B^@~7ASarHOJzw9kM*5J4a_TI#(tDCLX;BRlbJOx%twFdv(O)v<5o4{b4 z&E>13(<|pM+>fW~N{o|L&beDF=D}mkTMc;#4UnCvoLfGsx<#_P~T=xlZ z{VOyJZMd(}jMf4&8jM5=-T1b;fYGaa*(l1FfxzR7x93 zwDpPMv=+2m`M4C$CLRZhN;ct7KJO1lv*}nTd!P~&l5H%@1~jt_DA%H40`lWAQO}g_ z9F#>v?*~q{bBW&x1sUW2adrAI$`4uay2z|5q*yc=%2Brmyxs zg4`E{2lV92!UK0#sj)(d*RhpdK)jmmHAhN~4vJ+RwCg#JSi3;sk2Gm}vC=q2f(-T6 zjuGH!ZI#9}1;ke3k7>nZwrHuLG~?30Tyn48Z=9h{pVQ^q)ie0i)$5p@fAumPXU|-P zKfkXTxGptjsdr}|aZB#ogWjEe2jMf%SXgZ0y?zf+G8cK^wwAqLY2w}2Ru9p+EE*@)ez6mbgZARN_@Ge3H zd^TR5sJdGKFifAAn3z2MUNTh}-*WSvcRy=$kq1t}18wlc3pZc<%rk2+aCM*Ue1F%W zqhEagt6xLioweO>030~AW6zN!)7Nb8#M|&Q=hWEgZN%?CyNg8V++((P;2@~;$OSsn z;gnq;JahFrx>Q?l0YLPPy+XqQwVu~rN2rK?*(Tj575jTa?(LuZ>NiMBB8Ch)Tqj4U z#37Lu#uN!4go2?*P$1pxAX&upCb6Z6NU&*mVzC*qCcWOUo8)JrgTocl;%#Vny&9~L zZ;o37LyeJt?8^WS3rk;!F zqG;J#I^JPzXR|>@OaVO-Q)Z8!4Kt|SoD>#0?mDN)CMSq|KxDa4UeKK3PKFg&?(}k7 zq_20B1jtoc+-gssIa`63X-lEnInpWP94LFuM`k(rSk!9Yi)hMyspKBM?><*< zEKt2ays$RprtUk8dcQ!@#oe7{?+qY8cgtvYeG$hjgddOw<(O5{vN}izj}H`GSQWgp zm?9nq)9oMq_%5X^JK@eLfPlLONgfvfD(b9HK&^eAhA-+o{_5S0$jB8UXTyjLcddH# zZUloFc>HMccYjQSi-d5TLe)QsKfIl%$Xln#TlJ^$NBs;QKbri#A3wF$4)^uDq=v#L zY+?%VF`IsaCkSs)cp)4)wR86MyPH(s^s#t3I(YKb)3cv7sEE=p90v8gc>TpHsgQHe zRoyonZyQco`=VVdPfX+Ws#6cflO?j>-+2d~pQ)lR*Xzcp-@&R|w(G@(!$-+9HwQy} zQQIr^;h;9h%~jo??OnVIznufq=sLWn`Y_J;9LYULO-8jGTGM!vmS_?aiQR~#&_0PY z-bEnQ4YQ;|3J^-V#Vrny7*ejHj=$P=T7Dl-Yhkl}7P@`Z&v|G`!K(jj#=C|j_j z$4C3hGtLRWd|KhUyP^>(#frs1`&f9V%*%G~j;n>CZZpm&OUX#cT{#E3xSzyp_OF1Bg-h;SrO{1QzaNvi8kXN@!!Ksp4O?}8csnS5mC}H) z)o5#O?(br+#>QQ0)Z8i8xVywhBf>{=mYYGo;H!A;(Fe5*wpyFY;E=?-v>EKHW$y+k z^!0M>25AL*0|Q4lEX)r|W8*B;s7HNza3o!fs~_xJUaM_%jw%zrd4ngPv=w}CFU z+g|LgDv6}1RreLU76|vEs^7qYsP0AE+XLIVd%|f{r?#)0BbtBZEldT#N?O%+uU6gt z4t(F2@FmN3pRBsu9WO9XS_XNcDU7-}Ub44J#-ilfGqmU6MgvuhgEYrB4sD*>IM58f z;M~T@1Um*efCbzYGBBJtJs5xo3IU9Sd1&lsO#+%4z|z1g`RFD@;2(T0qwxOI!O()= z7&TRmO+J(Cu=SK23$%|i!Ad$Hr=z;Oi_v3)c`?kVMw30kmL7xIuZ`G>C^39_L{LWB z{RYpAL8&9wIU1amIax5}aL7NkBk?qARoY_3zvPC4qRk7UDY7c_H9;1JlZ?bAlt{a% zD#P81zykx9m2eXF+Du=OGxS7MQw|6kJF`b*M3G_r64ri))Of4TE0M`Eqp^$c%|%Q{ z=G3yzm|4w|!z06S+Q)AM^t;afh40sV9_#qrrBY*#=wJPy zyi4x@+uja4?aWHKT-*L0-rs%__U7+we^2i6-gh3j@0Yyqz>n`(u7!VzqeB|GQp2KW z?^*771cG0zU@rr#qQ$n(lg@*B$KVs5iSi_pP2IaPSOZ!J$>}9VGZWSNZzPJ3G-EaCY?yQQ&8+`r&7ACh8G9 z^7R$+%OyOnKUBX=E?&W74UU^AJ22qGRrd()%QJ^oF1>U3$fk@Nrh&gcvq>v&qxmg} zZ~YzQ%kN{|mj72kan9Sd=oi096wL9$arpV3?Ov>U$G!twaOT^8AMb3p-K|xx<6H1f zEA}XyJVe_X4%^=B5;F8}&%uSik6SIVYzHRp}vPKZ2Fny;k8@|VUi(zLg2#%(sh9t?Gx;nN-&&2T>Go)M)ta{1m}Y1U zt1R|K8MQkP&#IxGRJ<)C$p9(`*=Q=t@iMRRqQI&O!^Qj37BeE~>Cl!wQ+A>jyN$~y zU|VKji|64~P*qXm42IV@f#G?H>kR4 z!^Touw-oGd`Y5lExXQQLf9I>MVAC6OWpO=R;!a!cHB^;n!N#V0?TWS5sSbOL)Q;le z2|QfI!`IQ6{~C$Hu6+HWILnuC>wo{tu=U@5G|uu>5@-4Le=5%Mcafa`y^{Oxeec|x z<#OXCiV`oDYwx~lRL+@Se?l45!{v*zVUIo$rJC-|ThYx4ah- z0d88}S2CLeGiliKv#Z`9IxGhs6Pfw&(a6k)Rz2}y{Bgk;0SiU1J$oJY`uDB+m*4*i zKJ@157V;3h_5r^3*q}%aZqW)-jE!8s`Qir{82QR0_Pr$y9=-nl2Q(D&?6ogHe18pN zF1~9!^~-O6jSOpi$*!OJ(l`HZldpfZ>W$t6kT`;R90e|9=SH#sjuwy&eq; zjFM)Ag3~?BOP#tZD1C8pnTfTfHGhZ1rUbURqaZqF`AvlMnuM0bs_L0q)VwZu1@S{TX&EaA!!=155}{ z)_@1h3Z%vgdus?522&6jX05t5J85*eBb7#o%%Wx7m6Ch#eq+Ab?~=@IIEWP~KJ0pl zHRxq*Lrxl&yDju%D+(R2z&f4GiB{SLdJgR^f5^z6`(Z0@fMkp1r=IAGmZj2G! zHdD-clOZ}fYG@cFCYWz2F@?4ME-hdxnd2k_4zEg#1^-Y%?HsZFCeIJ}d7ja6k4eMY{SB<$Nv6x^4wM=>x_=CiO8aT~1k2&E5;*4ikob0zmor6E$yS9H+) zb0Tr&JweK08qZKsIR~15?l@@vN(IXdi00oS85$rh7pSy6e_=g6;{q9h>KbJ)3&Ma# zgBz@%VAKy}p9X2^g{xW1I|9!vm%T2~{+B=^E<6v5DpuX6ZBJKVy$@KhcE?Xv$sqJ6 zNCax%3dwc%@_Wg!IdAtK_}OKH1q}P#Hh6ui>h{?dnGj2*?-#6^6p#1sny^E$|ka@wLmBCwpURg|DA$c)6cw}hBco0SRxAekpD&2Obs zeJ$#4n-_6!;!QcoYdvD0plV`|4m9>5aT3@j(sV~f-C{W&MM@K+y@9|#kMyyeg#N0a zZeh_b!(e;7$w2Z)TwqAIgUq8+1;iR;ivRS_*fx-<Z`Hrq{By|xG`obY*_J#f;8DXLy&n2HH)p7@yEgp8Y^!3{~wZv-rg z)U`=#@UVMQFVl3Lh!0bn1$oaa9R@4#>-)(hY#u5no8_r1-{i+yt$tWkUH2#E<(@-_ zhg5;9NP3jn--%pAH993G&3sw(3#MNc*oQV4PJE%KYce<7+VA*k-kp;jZcYK3DfJJfS{+buy$R5&EnGlF0%kb_V%QHa`obuYp zjT6WrhG4fDDtRXiyoBizC^1+)gw=QmCzs&oo+F#d#2o3yGURyEGizjGdP(%fYr%id5I)^B#eS#g94#WIMBLpjEtBR@08V1pY4YU0mAGXQKru*w9D@{i{n zQ&Kz_2r_@NZEGyg*;A>&2>ZFr$R2l`cx^v6m?RvM0sldZt#383lqzH()N%%YEz(JNrB5cO*ji9fl^XrY*2X{RtEi^|a5&aC_K{?~Lyn^MMbGjhfRxPLvwkMBmrpY^db+RT^39 zUW{ai;9Cu!tyD0E4_DTT(X*CY#IOFc^nh`%mt6BcXdYI}MyTV!B;3H%*Sph@`M}ep z=RFQ?^Omlb$rRz;_$j2%bcr;O0z04@eBf3~cyT!Oy4wlt75xO)w>KkM$h1)P z)XN{#fUa)Z#kPv^z;rHUsqLyU;&cuU^=Ktv!bWi*Hq45Q3J)i2MN?Q#CD^H|8(SQE z2@^A%3{qb9!*Vto%f^|HBCx@2-rv$4mdvR`#r7dy9xh~ZqMkZAAJPp+5OMl(qC5J} zgHAlOvEyk@UmxsvLdjBP@&C<5;<=)gptcpt>sLWu?=rvStKHZntv86Y-nc-e^(88; zH$c{ITm@-8SHX}gO6&1bV}(lSRH-pYowoghQ*u{h+Zvy0WSiqlNU}t>OQAi_@7!

                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ⅅ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%0A+bcHXUrt-A%yWF94B*2NkBdGMCzIqVay@jU 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

                D!$M_I|)l0$bI(nlJTvbCr#o;fb%fCCenhiUC$ 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�a6_>S_+Lx>WepiWI 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 z zvUo))49Y+=+a(F#{-aZqkTRKove1e6y?$EaSYy(x;vCzJ2B}6iOBS`lkYb#-QcBfQ z@FHI&IhulmsQtldUhTrjuEAcVg)g>0-;SH*#;}xzaydFRgrSz?nKVVXtRVO(lK*Z3;u}EE|cIS`*($ z>Frq^X*;FodX5bFHwLbJmuid6Xe}((b)KA9zQWfk5INi~Z7FIQ7Dj6+$+GmMU8aR; zu%qE}jL%9On~-f%$Z z*0;H{tHF+(pA9JH#LG0tOWd5_XqK$JyV*5e2cmYNpUy@LOG(KxylTlZ3XWI2*@){5 zkDgY2sYD$%Fk5vJSw&2Jny<=nH~-S4%IMap@47GgB1BMoMu~y{(;F`YNVmn1aRbDdV4;w9X0;ZU3+bisd`FC~>L)fN9NNGFv6x>8%^Ii)Ze zB3)>0+)_X8gdf{k^|G;l&G8c}BmutCVBEq3c4Ix*p9`7m*Jvf{$zM^)yAGBpL34gW z;q)z76vTl0itPItmEz`ej4VxtC6$uv<-x;fhWvOfIwc&`9bMf)#11R>>q&r_Jy=IR zi%~eFWt{w4Gszg}Uq@|UC@Rl4Gbc;fZ-X4HpYhtq!v_uagkqXDaGbUs{UW8qaM|ui zj})szP#Ae`CCZ@ zgb0kHxm!g^REUw9BMa8{QchDu{1ZeRi07JvbspAk`$(|1k5ab1hszatZY_#tnfqbe z6GV3rZ|^^45$&GXM=4*HkgrXaxslok&xhK3He7RX&r9z=kyAFKRF~_rZYo_#I}laN zYqZJps7XCilKWc9CYDvY1RGYM-l@RL`@KuzGf@NR79TX~JBj*hl;;LNAIxoHmF!Wn zd(l0<7Da#Vy>_(S3cwz?MvK3|VmhT%-;k&njL=IW>v$vNW9*6ikA`X4do)NSi6t6adh!7pcaKEpr-^+9{a0jc{;1ti(sWyy!eAN878Mpblz!TE9YB)q~3Rc(R zl_;SG&k4F-u?2JL;aIj8s9|EXRP2Sg-R}+Ak9b`466oSV3QX`U^#ifW`4EE!{4RUe zr>21h0%5=T;B_6GftG&?QMUKkv;I4Hf21pZ*9lATx;D;06J0z|f$1H1yyT1fX@8Rr+h#!~N($J>)X9~64J7tn>VO8qK=D04Y|%=a8KXia}*924o# z7cPUpM*1`=&0EXkqt7D~3~oM-nvH$4G3<&JJ_zQW_842x)KJj3}sT zI0hQUHq@lJ&2>Yx{w$8MX-j^rBwe)Zqw?Kidb&}qOM+^;B#xHwfJD1fPGgK8LyZDP zPE*?BWrTIO-s6LTFhkflg1eJF^MYWpAQ-{3r~D-igHL;-U=q_zW6`va^Xme$k%@^k-smE|A3xdt9y$? z5S#@H|6d5t(Q11Hk`TuA|7P6D&IOM={@lN`k?`y@FB2zuKNrci^-;y8dYx&(SZ$F+8NrF~S1MGs!9jjE`B6r zj2o?WqyN1yGaUqwwS6SnjuB5q4CePgDUg2?A2R3*TV&fusGfAH+X*#Ry0QaoHE010 zwDI;%W$EaRU%yEc{0GqwVY9;WXBIH~)qzK9bx)1}%b<4nm&1okNUf;unCE{2*Zm7p z-~*k~Nh~ugZ@m8_!Og08kE0s+Na*P`-BI>Pzd3a&NOg?wDRb6Oihm)V>!FH;4O!~! z*+)uk!CJyk(+m6r!4(qBdkW~F@%J&a{{2b0(Wkl5rg+kja@9AEMSjLRdP#ihc^L79 zzQ#M5k|b{neQBJ2=3pd`chERhNRn77qNd!l?d7NY09T2jbg~M7?-c(gNAYy^k*|O7 z#bbJxGSYKsdpW8n;Aq!d7xUU}c?ziw0Tp;5?JRw{6(I33KVfsyd*XFU&mOF{)xagY&O@Uklc#p$n8*B!>U3mKk?Zikx1k?teu+3I zk@#2i$b{w?kDs)egm@lB;5(4`7k~H>iNv{F?W0!QBeW&EuZKK;pfkZcby=5x0|>3S zv1~C%v07LE0;`xGVYvS#|3@$3lNkjh#YU zL|%MGiWK3C3O>e~_CR(f^Ink9ga66SOT30-^?D%NlX=f$KEx!S!_2;B>&MJ?N46yE zn3br2VU>9N3oE46E^_nY-@yMa`Wpo-OMD@FDEPf5f^DBt<_c|0@OxE6#U3To723d` z?6WJhAA;X2BG~pQpIs@$l8N196_7nDkNC1HfxiC!P9s(~#L*d+fX9DfiM}8X;r@LG+CC8UDUMj)F|^x56w3Nbw6gyJ z{MWW3L7$?C%pJ;tOLd$pM3Eg*ReO`x4?XNNvCjosGu^;Mi;8HIWY^u^@EMzFGK_#< zXC$Z4Nk8jve?Qanenuh(ily%%s!oP(bYHM0CB8yaQi=&+UtEK%7!(kO5?`etZ>C!e ze5@&nPAHb0hp5(Xso#fTO-694oXFD<*7}HvKljvX;A2=RiQw6#gj@zz3;w|xChZ~0 z-+-Q!D}33ZS5QVBi&7>z^eO|tJwv}e%HB)C*BM#A4caTO=bC#^^N3`_Qa7f8I zbyvub{@f@|`Am6F`Eq~3@3($vi!i^)`_!QdAYXqhr~*ukq{v3wq%~UtT8}hw9jj}} z?j(O{S<)2icI@>WGUMw!en*N!;J>0zM|w|)#gh=k|NCzeON8KJ5B-=teP5})JEiDA zpUlC2sYi=hL8=F6clmNWJO5p??85^&WdEQ{eG0Qgv=@{GYRK=f9*8}_5x$`)&_!;? zdLZ$!4ec{!d)OoHr}K25v)jYImnkeuc#}Q$#5w~ zL_$ppGnHyx{suKVzDmP*$KwWFxjVqdii%>JyoNiSto6s{pXHADr^ld$+BN^wi+7fsqJw41T>8%W zjg2LaKAo>yDoKTsil7!lwK9!ALg6MH9W6AmGsu{hg=9F*Pt*4Mj7B?bI`x{LYQ^Ii zg$sKV-~@I63_lO+#o>0FcoC%B=v%=8Drd+@GrqpGQ)a?2UZG0F*EFhI0NRpT+|vN14U$?fyjRs%wfZGbbaMNi&*C8 zoXGO$0^5qFeZagbYus@q_1?#IY%l!&Ub4b)m63s=5DUal7^fDGdOWq~1X5}(H)Q6% zCrJEf0e@`4yBvR?p|Pce?qTswzT)NUzn-c{Z5ZeOVZ8ef=mIy$ii<-RE*y}%m@c(3 zkLsIp$*upW(C=0LqnX)JVXWsLa~~GHeHVvPF#15{Ri+eDCecTzxN-}Yimm7bk;0!W zvW}s)lR`{9u~sc%Qc6?$9}0_OzbQJKJ`hd!s$&XW>VLLc$NnR#!gP1Z zWLrwriMooU?_I4uAgInx!hN#KlP73^$L=A0?4E&@OH{&g(Hn4z9Y9I zlq2yYnj@1V0vBT9^TdhHpLd2^ckE|(1eadVs#6F|xY-A73=$VQ*_wjH5O0NhJI?Rd z!{1x6h#57DINwFrHoOFfUUaOiO+xPm6KRjz=oUnU$IB!MKWjoS2M$#Y( zlmgcg?eEj`H4)!tqoJ-9H(`Dt`{**~&l0_kUpU&;+&Y6Hn0fu2L}LeG9`p54qwHS{ zA}m;%$_)PbQ`?Q!N44wUpLNehS*_1pX-!_|$5NLJ)LrJDO*L9s!-0d@VdRJ$ERxm5S%q0#cm?l-?W zn@b~&eYY2F-ea^9z^bNUr^Y(Wz2)W7l#?8CfMoZMQd+v;1Yzgl>=`{gQ-(|yWoOFx zk}6gs`{S=xn(cDkAM`CU6A__0Zo)-mDm9KOvejoRkLyflQY7|xTgiSTIQX&-^s5w~ z!QWjp)xBS2&RA`G)xwcWEVen~NM{$y6SWqz^>M}M7#J;|D-z@t*hQ5g9PrXK*x`d< z0tPh%8$ZVV35k>z!x_-2{F_LSWmlVIYdQwC&5OE7cSaJad71;73sSz=dNl#jlOHQs z(PX%+G1tK^acj9N4$*Bdbfd51&g0h(JK-Thrt9U#qky?prnXS;Lz_ z{7Zv9@{89=)V%o+d`0cdgBSj{A!Srcr3bVZ523I7Fbi2f+$wrVo~U&{&?i6|lJrJEL+r_+OFJ+9Z!NW{ zy!NkUPFNwVRChZX-#=ReiO3g5Y+63r_+C-;u{N+qT~}T4_1V@RMqZa)k@g)n9mZS> ziwTi4UaFnp7a6>JJdrjl`!q!^Ms6W`6j~2JH_ffr?EZ>FZL| zpi$RZxRrg`v>GVzwQ1k(uyfL^a4+Jl+DGpumxO8u4tT^ql?cC?4$)$NuO4Hvr%EX< zZ^Gxd9ja~mLKZkN9*EW-|NVVK+%j%f5g6Pg(V2KKDlXFa6A_45sg@rPH!X_6HozDo z%{xsbosBc!e<@M*n8Byb7X!p2!Yc0-~J-flOx1P1jP z}~EI511PBHJYhY<4eefN)NMpKpZQFXsAVhqW^1n9g;|H|9{_r5Z;p zQWN%G?5Rw=8kUrrUq^MMM}@@-!F0yx(P$xV?Am)`CohZUF3--8*~1)%Li|>k>~Ntx zV&Kxe^t^H7#)RUK$djk}smk#ukMmPCq@s{`*F&pfD^u-lW|Sg6_fs3wm)rMq8q@3A z_d|`>pRL4d4k&ip^#f9~=FD@Zqb;&`@v*TB0rm0rIG-E|a`%}ra*sDXkJI1wJ&iMX zooizjk(tk0YZ<6xZYy*42qcn)AHP1G?qD^*yTdE7Z^4`QIlM2`5Ff&B2PRIj3zy~X zp-DB&p0M9*M+9aNKTplJ0TV0n_SmEvszKPz!Nl3TJ(H=1(hznFFtH&|4_B%oBc$^2 z=FfDGx8Oa(afYeLFen{km!2GL2I7|wLJkW73S2L#`4xghW>Q)yU7tz24K9R%hRmt} zP=d`To>|F|u)-FUn1D1|Qv87&X?e_SMe(4@wJz+hta*We&Q_bR;_athD9K6(&*#~6 z%kz1)%QwTSB(imIZ7_jq>U$HI6!w$}9rDlLX{<|0-m6v5+}Z{sckj zf9+%uv^}WuRZ~!)$cN|T;4^pT^zyD#(lhv@n`3tp`-#U5E>`p&BKkLi&iTiS^=g_? z=Iq)L$26K#&H3`4!AKj>)LXuu&ah57qlHY`J$b`1;t`ST^KWl&NoeJ;LON$w9(}u7 z2wQOuF2@X^?Q$3&Si(6Bk}t?n8{|)1l*H^`&0lV|e?-sX@=VDm`d4w2C{xO_9Fme?A6Vrz6ZS6?%CUO0D_z%b7`U+(w0 ztvEAKSzqxj@%QW;*u+S#VCHI`YjjiS){_HG(Fo@ys>Z~9I2V<1x=p&K&8P4a{3_!J z@jU@Q6Y}*+2hH%b%BtxGp&kftahF_IBy=Ftq*}4(0_5n3K|I-Zd4CQ8@$a>TXk87|N)o?t1@4y=8iMVT1vzj1N zM(l8(+FA-C<~!*6y(g`g>f1ua35$wXWn8M16O$IrMJjVK|4#rF6YA`Cj(V|3hiNK* zE2YS9SYDs0`-|P^L@_YHc zXjb%3#8gOyL|l2w6TaF(?LaFRB?i*`{uXlGw`j&SOnsz25*w?})N-+j`bvExM(FP; zh|Se6>KCzv{+@!^Qh!fDY;71c;~&lQ^#+=$eiJ37BQzlxolmCj1h=vp*u z*WarVQm>bW(z!mJHFS=mlX{~J(^*gF1UhN0C3m578l8L4xi6h9bav92rZZ3HA#@%= z=R!J9qVqI5&!Y1@IxnH~Dmt&H^H#k+qw_&JAE$E(oiEY(I-T#(`4OGV>HLPyAL(34 z7NCBuXlAPh(m9OI4e1;~=azJirIY60YFj#YqSL2yGM&@u+>6fr>1?BO9-YV0c?zA2 z=scUw3+TLz&THtrk=Bq;QY*++?@SDP^<|A5B}dD!td|pHOztA5$vx!0)Jr>MTIS^;@(8(5o+M9`XUX&A zCDdcDm$%Bh<%9BZxkSDsUzhL5kH}A@+()+mFX#-Wmy2JC-Yfq~^ggEdmeI?ZE-j_d zYCy{$Fg=^8$#i*H2``qF@O+tkKGTI|Dd%XaHe>lprq?h%is>vG4QO0vI(v00-v3?7 zlT4rDlm?ccVEJ37y-YK!mnj}&c@LJ~WVwy$45kk`m2sKo{_)k@mdHP&uAs7zvU)qB`j!7slUUgzc8x5uO?Sz zX;hS}4r98JrYjF++QBJZ)c@Br2-Tz} zswrxw+FKo{+Etgzs)NS%R>I#r#a&QTYsE7W!BW_72!Up=axRxhZfYMJ_gqRLll zh5FS{hHLaUh8pV|HO44ov=KJyjR{7~*u|J;>|yL{v>2U6+Q=J+7)KZjjgySijI)gM zj7yBGjO&eCjk}EpjmM28#!JTQ#yiGG#&Y8u<40qqX_}ShKy#S6p*h0b(j03>%x%q` zOy8VrPB-^5_czj*S$Zqe?aNZ8Fnx>Zbf&YJdQ5qTMefLS6Q;wM4(IYOW4WH?lUQDlMZ!EN{wm9i|JJ4raQP^ZZbz^Z$wlcKbaIY_(RpwlZgz+2@bx@HNxG zV!x-b)!OK$YoSZaXt|!MOdkGcW!UGWKP$sl-XF^I%e4KU%CpOAH~SAu-fPtlq}7G1 z>PeowO7AtSU!1W{B3XZ*P=9xJKQV$<*~iitd4l){jgpIKWwev{mpEURz~l&R@xNRh~gJr;Fqj@;Z65yi?vUAC*tb7igZgjAmw^$*<%J`715z zT-9F3dH85rqt~kmDyDW()6^bnU)7>IRa)iMA?gUVP@SYsQ)j93)FtXFbv^Zf zyVZm0akYfzGq0<6XyvzDeWQLOj17$u#+JrdgVrGGbX{|`8}FFhzP>XtFl?)LLk{&VNkzTQgm&KJ)*O{_@{x zxitbE0t*DVe@0%LZvVxG^Z!tOs!Y%SseI(`6_` z-izCw4vQj7OxR)~9S%j8$-))W>8PN%u^08qed(y;SX0fhW-!N^^*PpT!m(x~$C|A< z)`U6M)N!oYo@31fjx{@RtnoS4OypQIg=5V$jx~F5tT~WlO)JNmB)5WYFQI?Nxauh4 z%D!Lk7ph%oTo^#>i9h{s)x)cnu3ApVd#jcr!o1 z*Uzq4wVYCy>MOpxLYKvP-sAgAbq@U$%38{I3b=vvUVuWD}Pkw$$ zL9ZYuYrZ_lL(&ppFD=$FC`0SDqEJ3_rbRm}MY&7)UU2u}QdtEn1@(o!mNP9_;%m0k z61L6?SY`#MtzZq8m)U0to(;-g0o{YAb*_)O+!d_J(gG$dupFs@t`Bq0C0cu(gL6F$ zdo5vU3ABavSzf`V1eREWvJ}maM)C@Db2=1%Kic44Vv4Qku*jRYrj#*s*kUXl{lz#s z9PT|8!lT0#5jrYFl#WVKOGg#?eI4}@{hjH4Vmmtea}VoB^S2#H)_q8dQSPP(_x4w=`d(!^fb{WbQlyT zpCkGL9R~Hem#E~|=`gA1y-9Q#9fo*^4ufLpdqh8=!w^5x(O>*Rha-NY!x5|KaHJs( zqWx(;RUrq;fkX$>il#yirP-A!*QfbarQA?%D5_))&9ka#r96V@NI6ne%TYAzs-`|& zFZ$8SnXDmqq*Yjdxj-%uhP;*LOs;jfb+}O0LTjNgth24Ng=M{9y+G-2T5pOfYnio- z=ttH^qT2ez`b1RQ5j!GGdyYMaETcpY?Kg@JqpY=DjBmPa3~rSH+$s*YiYjXrg;vp{ zpG70nM6%H&I{J}s>_REK(NV!)0k7im&=fQ17$j!WVTxIF3>16NQ7!hQqaTl!gZUfb zw%CV`VC1xE-n}1>pU085L96SQHn^n?ZfV7PV3xR2TuUY2DD+S9Z=$1$M^sbXNry?} z>b+F{eRS9~x;{WO@QjD(u;3q$&|$$#9;3tR<10_mVfOKuXX!A-^K_WvWjajpDjlYH zgO0u)^DZ40{N{Z+EO^g{bm(u0+tl_nX(w7KD~W2qG2{R_fP6)Jk0A%q%GqQeGUN~% z`AzmDL#{(>W>an;HxL8ap9aW{n-v{?Uw_rx2?BH*52t@A6p-be(a-;^{Mr#=*K>) z?78+_Ve2ociGKP^YUCl3Jf!c}>Vq%Umw%#Zmli`GquU97le00^+}Q;X~G#y?H1`W*Ft{S&b_srBBW_WFSO_b=41S5c4dPi--n z_fj_``;H)6j?$5rYQ8|;NrT9!C$}Q)(xq|6i{05sIQ6#OyeY(=KD#hc9!Q+ZeEBIZh_e`O~;nBsSv1JD3 z(Ibk>BT5C2D3v^-*gT?`Jfb)}qL>&_^vp}rxN$8#t49lqM+?QHh2qh|=F!6B(Zb|$ zA{Zfpu|bL_=ukW=DDey(ipK-RBZ1eO+;1ce$5WaR090o?XFxx{`ad&Ar*?-fVMkwz)Uk+>cH4 z-JsV7{q=n7e2O5t*IL|b75CQ)?x_{rM=QB^R&u{Isb9WAEuv^%s#{C(_%FGgTy7`D zB@n3RlRd8!L|EIX~d5xnCRH9BLQYw*B z3Gc2oD&eSvqY{ovI4a?&giwiuN+eVwLEn79B-9|I1}Qc0K3Ss%HEJNx;78v5@D3C> zN(Ej;(U1IPzE9%jU80>T!zn~FA1DnhNG9;{Q%dM!x8<^ z4QzOB<~8^ZVNsysjyf|7OU}Fu1*%q$YOP}SjJj( z%!QoJnOBIcpmR3qoGoTZlR1*J7ROnOZPwxhYq4O~G+2u*)?$OT*a;lIH;dKjtB#eL zvr?O^)SQ)Cuu>bW)JBEBT!p{fF6PR2F;~tC&RN0vF3u_{oK;jft01dq^xGDRJtnco zB=(rZ?pdtK>Tk08n-vzzD=d~*SS+U#jFZ1o`azrg^&2hY} zIf>U;I-O1%(dR(py_fckP0yw0cn|FdL!wij8`0cOmV0!6t5V<6zeum@eS14!)%U(e zUh4dda^Y=~p?5!}!n???-;h`LkWcrAbm*P1flMioA>+u5r;!o+kO|Ks1NKAt=je$C zq4G;m_hqR13e-Fd6~C|tpxiv4a<4wAPoLj@+I)Dzygp%FJyWjIGrvbBCZ>28Q3e;f z0=g>M;SaWb$$M6q6DWhb-r-h*Fe|Xd5#`V?{jADXn1kqtnUsFmN8hjWJ~*V%?Ky<4 zFcUPIgYh#hel8&kd7~L4%ov+arBfkqqO_ZKO^ocB!J6507R#DL!W^=Az4t%$vaZt0 zx?R1jdq^+)ewfF2w2rpg%Z_+wuP)a2uaDQW{@2~AdxCCtCslc#daOQ`p6P-^j(S%2 zggvY8RyD7Wo0G`pY2@$>a<|8fJ;M5Z#=J;^9+AR8?;Vv(a>+!pCTnXRu~PR`7mS z)b*`#+^>}xnZX#{m*rk8$6Jmc<47w#!S{unm-9H%1-XFzUX+`RLks6PiF51XoaS&Y r3pj^Gj9tda6&$OFqZ!VCn_GWx{Hi~1{PNbH`t#dspKSgEkD8dEbu0$~ diff --git a/lib/tcpdf/fonts/freesansi.ctg.z b/lib/tcpdf/fonts/freesansi.ctg.z index 5576c8ffbae784de87e0677b0c7bef64db87ebef..5b8a88aaed5bff66ee634ee5d411280d1d6f7468 100644 GIT binary patch delta 4418 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 delta 4189 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,'FontBBox'=>'[-1166 -431 1572 1072]','ItalicAngle'=>-12,'Ascent'=>1000,'Descent'=>-300,'Leading'=>90,'CapHeight'=>729,'XHeight'=>524,'StemV'=>70,'StemH'=>30,'AvgWidth'=>441,'MaxWidth'=>1501,'MissingWidth'=>700); -$cw=array(0=>700,32=>278,33=>278,34=>355,35=>556,36=>556,37=>889,38=>667,39=>191,40=>333,41=>333,42=>389,43=>584,44=>278,45=>333,46=>278,47=>278,48=>556,49=>556,50=>556,51=>556,52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>278,59=>278,60=>584,61=>584,62=>584,63=>556,64=>1015,65=>667,66=>667,67=>722,68=>722,69=>667,70=>611,71=>778,72=>722,73=>278,74=>500,75=>667,76=>556,77=>833,78=>722,79=>778,80=>667,81=>778,82=>722,83=>667,84=>611,85=>722,86=>667,87=>944,88=>667,89=>667,90=>611,91=>278,92=>278,93=>278,94=>469,95=>556,96=>333,97=>556,98=>556,99=>500,100=>556,101=>556,102=>278,103=>556,104=>556,105=>222,106=>222,107=>500,108=>222,109=>833,110=>556,111=>556,112=>556,113=>556,114=>333,115=>500,116=>278,117=>556,118=>500,119=>722,120=>500,121=>500,122=>500,123=>334,124=>260,125=>334,126=>584,160=>278,161=>333,162=>556,163=>556,164=>556,165=>556,166=>260,167=>556,168=>333,169=>737,170=>370,171=>444,172=>584,173=>333,174=>737,175=>333,176=>606,177=>584,178=>352,179=>352,180=>333,181=>556,182=>537,183=>278,184=>333,185=>250,186=>365,187=>444,188=>947,189=>947,190=>947,191=>611,192=>667,193=>667,194=>667,195=>667,196=>667,197=>667,198=>1000,199=>722,200=>667,201=>667,202=>667,203=>667,204=>278,205=>278,206=>278,207=>278,208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>584,216=>778,217=>722,218=>722,219=>722,220=>722,221=>667,222=>667,223=>611,224=>556,225=>556,226=>556,227=>556,228=>556,229=>556,230=>897,231=>500,232=>556,233=>556,234=>556,235=>556,236=>278,237=>278,238=>278,239=>278,240=>556,241=>556,242=>556,243=>556,244=>556,245=>556,246=>556,247=>584,248=>611,249=>556,250=>556,251=>556,252=>556,253=>500,254=>556,255=>500,256=>667,257=>556,258=>667,259=>556,260=>667,261=>556,262=>722,263=>500,264=>722,265=>500,266=>722,267=>500,268=>722,269=>500,270=>722,271=>722,272=>722,273=>556,274=>667,275=>556,276=>667,277=>556,278=>667,279=>556,280=>667,281=>556,282=>667,283=>556,284=>778,285=>556,286=>778,287=>556,288=>778,289=>556,290=>778,291=>556,292=>722,293=>556,294=>722,295=>556,296=>278,297=>278,298=>278,299=>278,300=>278,301=>278,302=>278,303=>222,304=>278,305=>278,306=>742,307=>387,308=>500,309=>222,310=>667,311=>500,312=>510,313=>556,314=>222,315=>556,316=>222,317=>556,318=>377,319=>556,320=>409,321=>556,322=>222,323=>722,324=>556,325=>722,326=>556,327=>722,328=>556,329=>692,330=>670,331=>556,332=>778,333=>556,334=>778,335=>556,336=>778,337=>556,338=>1000,339=>937,340=>722,341=>333,342=>722,343=>333,344=>722,345=>333,346=>667,347=>500,348=>667,349=>500,350=>667,351=>500,352=>667,353=>500,354=>611,355=>278,356=>611,357=>443,358=>611,359=>278,360=>722,361=>556,362=>722,363=>556,364=>722,365=>556,366=>722,367=>556,368=>722,369=>556,370=>722,371=>556,372=>944,373=>722,374=>667,375=>500,376=>667,377=>611,378=>500,379=>611,380=>500,381=>611,382=>500,383=>278,384=>556,385=>854,386=>667,387=>556,388=>667,389=>556,390=>722,391=>722,392=>530,393=>722,394=>869,395=>667,396=>556,397=>566,398=>667,399=>778,400=>667,401=>611,402=>278,403=>778,404=>667,405=>889,406=>278,407=>333,408=>741,409=>500,410=>333,411=>560,412=>833,413=>722,414=>556,415=>778,416=>778,417=>556,418=>944,419=>722,420=>842,421=>556,422=>666,423=>667,424=>500,425=>611,426=>333,427=>278,428=>611,429=>278,430=>611,431=>773,432=>623,433=>768,434=>722,435=>793,436=>616,437=>611,438=>500,439=>611,440=>611,441=>500,442=>500,443=>556,446=>556,447=>556,448=>260,449=>520,450=>584,451=>278,452=>1311,453=>1208,454=>1056,455=>1056,456=>778,457=>444,458=>1158,459=>944,460=>778,461=>667,462=>556,463=>278,464=>278,465=>778,466=>556,467=>722,468=>556,469=>722,470=>556,471=>722,472=>556,473=>722,474=>556,475=>722,476=>556,477=>556,478=>667,479=>556,480=>667,481=>556,482=>1000,483=>897,484=>778,485=>556,486=>778,487=>556,488=>667,489=>500,490=>778,491=>556,492=>778,493=>556,494=>611,495=>560,496=>222,497=>1333,498=>1222,499=>1056,500=>778,501=>556,503=>630,504=>722,505=>556,506=>667,507=>556,508=>1000,509=>897,510=>778,511=>611,512=>667,513=>556,514=>667,515=>556,516=>667,517=>556,518=>667,519=>556,520=>278,521=>278,522=>278,523=>278,524=>778,525=>556,526=>778,527=>556,528=>722,529=>333,530=>722,531=>333,532=>722,533=>556,534=>722,535=>556,536=>667,537=>500,538=>611,539=>278,540=>521,541=>393,542=>722,543=>556,548=>611,549=>500,550=>667,551=>556,552=>667,553=>556,554=>778,555=>556,556=>778,557=>556,558=>778,559=>556,560=>778,561=>556,562=>667,563=>500,567=>222,592=>556,593=>556,594=>589,595=>556,596=>500,597=>500,598=>581,599=>564,600=>556,601=>556,602=>773,603=>500,604=>500,605=>742,606=>500,607=>246,608=>556,609=>556,610=>546,611=>551,612=>556,613=>556,614=>556,615=>556,616=>245,617=>222,618=>278,619=>473,620=>427,621=>229,622=>611,623=>833,624=>803,625=>833,626=>566,627=>576,628=>560,629=>556,630=>778,631=>722,632=>728,633=>333,634=>333,635=>393,636=>333,637=>333,638=>384,639=>369,640=>546,641=>546,642=>550,643=>328,644=>298,645=>298,646=>444,647=>278,648=>278,649=>579,650=>626,651=>539,652=>500,653=>722,654=>500,655=>538,656=>510,657=>520,658=>560,659=>552,660=>556,661=>556,662=>556,663=>1000,664=>526,665=>501,666=>520,667=>575,668=>520,669=>444,670=>500,671=>430,672=>556,673=>521,674=>516,675=>934,676=>944,677=>944,678=>689,679=>506,680=>764,681=>766,682=>660,683=>577,684=>475,685=>486,686=>565,687=>621,688=>333,689=>333,690=>167,691=>236,692=>236,693=>276,694=>359,695=>500,696=>330,697=>278,698=>454,699=>278,700=>278,701=>278,702=>333,703=>333,704=>333,705=>333,706=>333,707=>333,708=>333,709=>333,710=>333,711=>333,712=>333,713=>333,714=>333,715=>333,716=>333,717=>333,718=>333,719=>333,720=>333,721=>333,722=>333,723=>333,724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,731=>333,732=>333,733=>333,734=>333,735=>510,736=>333,737=>186,738=>333,739=>333,740=>334,741=>526,742=>526,743=>526,744=>526,745=>526,746=>519,747=>519,748=>333,749=>333,750=>333,751=>333,752=>383,753=>294,754=>294,755=>327,756=>261,757=>437,758=>437,759=>333,760=>278,761=>200,762=>200,763=>200,764=>200,765=>333,766=>333,767=>333,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,859=>0,860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,867=>0,868=>0,869=>0,870=>0,871=>0,872=>0,873=>0,874=>0,875=>0,876=>0,877=>0,878=>0,879=>0,884=>199,885=>199,890=>332,894=>278,900=>291,901=>624,902=>659,903=>278,904=>870,905=>870,906=>315,908=>876,910=>903,911=>882,912=>333,913=>765,914=>643,915=>589,916=>760,917=>659,918=>682,919=>707,920=>769,921=>256,922=>689,923=>765,924=>825,925=>687,926=>649,927=>766,928=>730,929=>649,931=>678,932=>655,933=>733,934=>753,935=>783,936=>773,937=>768,938=>285,939=>733,940=>593,941=>523,942=>595,943=>271,944=>549,945=>596,946=>534,947=>531,948=>566,949=>523,950=>470,951=>557,952=>547,953=>293,954=>516,955=>579,956=>571,957=>518,958=>499,959=>561,960=>636,961=>551,962=>564,963=>627,964=>505,965=>549,966=>715,967=>579,968=>662,969=>746,970=>335,971=>549,972=>535,973=>503,974=>725,977=>580,978=>742,979=>809,980=>620,981=>728,982=>740,983=>556,1008=>556,1009=>566,1012=>778,1013=>328,1024=>657,1025=>657,1026=>781,1027=>590,1028=>709,1029=>655,1030=>254,1031=>254,1032=>532,1033=>1002,1034=>1166,1035=>772,1036=>674,1037=>730,1038=>605,1039=>721,1040=>667,1041=>665,1042=>665,1043=>590,1044=>807,1045=>657,1046=>914,1047=>653,1048=>730,1049=>730,1050=>674,1051=>656,1052=>846,1053=>721,1054=>778,1055=>720,1056=>649,1057=>709,1058=>606,1059=>605,1060=>875,1061=>660,1062=>754,1063=>612,1064=>830,1065=>872,1066=>839,1067=>885,1068=>668,1069=>708,1070=>1099,1071=>676,1072=>556,1073=>545,1074=>521,1075=>375,1076=>572,1077=>538,1078=>815,1079=>488,1080=>557,1081=>557,1082=>519,1083=>508,1084=>618,1085=>558,1086=>533,1087=>557,1088=>569,1089=>511,1090=>392,1091=>469,1092=>922,1093=>475,1094=>588,1095=>482,1096=>693,1097=>722,1098=>644,1099=>731,1100=>521,1101=>509,1102=>790,1103=>550,1104=>538,1105=>538,1106=>566,1107=>375,1108=>506,1109=>488,1110=>224,1111=>272,1112=>226,1113=>793,1114=>849,1115=>576,1116=>519,1117=>557,1118=>469,1119=>557,1120=>942,1121=>693,1136=>749,1137=>666,1138=>785,1139=>528,1148=>942,1149=>736,1150=>947,1151=>686,1154=>456,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,1162=>751,1163=>588,1164=>685,1165=>554,1166=>656,1167=>606,1168=>598,1169=>396,1170=>611,1171=>409,1172=>592,1173=>448,1174=>921,1175=>826,1176=>657,1177=>493,1178=>680,1179=>529,1180=>678,1181=>524,1182=>695,1183=>528,1184=>846,1185=>650,1186=>741,1187=>578,1188=>992,1189=>700,1190=>1047,1191=>778,1192=>810,1193=>645,1194=>709,1195=>509,1196=>611,1197=>393,1198=>664,1199=>580,1200=>668,1201=>617,1202=>664,1203=>489,1204=>905,1205=>662,1206=>631,1207=>498,1208=>597,1209=>472,1210=>597,1211=>471,1212=>927,1213=>716,1214=>927,1215=>699,1216=>254,1217=>915,1218=>815,1219=>665,1220=>510,1221=>678,1222=>533,1223=>721,1224=>558,1225=>751,1226=>589,1227=>599,1228=>472,1229=>876,1230=>649,1231=>254,1232=>667,1233=>552,1234=>667,1235=>552,1236=>1000,1237=>897,1238=>657,1239=>538,1240=>722,1241=>511,1242=>722,1243=>511,1244=>914,1245=>815,1246=>653,1247=>488,1248=>611,1249=>546,1250=>730,1251=>557,1252=>730,1253=>557,1254=>774,1255=>529,1256=>785,1257=>528,1258=>785,1259=>528,1260=>708,1261=>509,1262=>605,1263=>469,1264=>605,1265=>469,1266=>605,1267=>469,1268=>612,1269=>482,1270=>601,1271=>430,1272=>885,1273=>731,1296=>667,1297=>500,1298=>673,1299=>557,1306=>778,1307=>556,1308=>944,1309=>722,1310=>667,1311=>510,1329=>722,1330=>705,1331=>774,1332=>754,1333=>722,1334=>751,1335=>485,1336=>722,1337=>782,1338=>655,1339=>699,1340=>417,1341=>853,1342=>791,1343=>711,1344=>588,1345=>663,1346=>665,1347=>665,1348=>756,1349=>623,1350=>773,1351=>603,1352=>722,1353=>648,1354=>722,1355=>751,1356=>750,1357=>722,1358=>748,1359=>667,1360=>699,1361=>623,1362=>417,1363=>785,1364=>638,1365=>778,1366=>716,1369=>333,1370=>222,1371=>133,1372=>325,1373=>333,1374=>333,1375=>333,1377=>833,1378=>556,1379=>572,1380=>581,1381=>546,1382=>588,1383=>448,1384=>556,1385=>568,1386=>582,1387=>552,1388=>301,1389=>799,1390=>556,1391=>554,1392=>533,1393=>548,1394=>552,1395=>552,1396=>544,1397=>222,1398=>544,1399=>456,1400=>556,1401=>390,1402=>833,1403=>509,1404=>547,1405=>533,1406=>610,1407=>887,1408=>556,1409=>545,1410=>301,1411=>853,1412=>632,1413=>579,1414=>690,1415=>545,1417=>278,1418=>367,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1467=>0,1468=>0,1469=>0,1470=>488,1471=>0,1472=>212,1473=>0,1474=>0,1475=>278,1476=>0,1488=>640,1489=>591,1490=>466,1491=>598,1492=>622,1493=>212,1494=>351,1495=>623,1496=>608,1497=>200,1498=>526,1499=>550,1500=>600,1501=>623,1502=>621,1503=>212,1504=>378,1505=>607,1506=>587,1507=>575,1508=>568,1509=>540,1510=>590,1511=>606,1512=>547,1513=>776,1514=>687,1520=>424,1521=>412,1522=>400,1523=>184,1524=>344,2433=>0,2434=>300,2435=>264,2437=>594,2438=>790,2439=>469,2440=>513,2441=>520,2442=>549,2443=>594,2444=>481,2447=>580,2448=>627,2451=>540,2452=>613,2453=>570,2454=>467,2455=>471,2456=>428,2457=>483,2458=>408,2459=>509,2460=>591,2461=>563,2462=>771,2463=>381,2464=>404,2465=>522,2466=>408,2467=>450,2468=>543,2469=>477,2470=>418,2471=>433,2472=>445,2474=>499,2475=>584,2476=>377,2477=>555,2478=>448,2479=>423,2480=>390,2482=>498,2486=>498,2487=>425,2488=>495,2489=>440,2492=>22,2493=>440,2494=>193,2495=>189,2496=>180,2497=>0,2498=>0,2499=>0,2500=>0,2503=>252,2504=>243,2507=>889,2508=>865,2509=>0,2510=>356,2519=>219,2524=>523,2525=>408,2527=>428,2528=>594,2529=>481,2530=>0,2531=>0,2534=>500,2535=>437,2536=>479,2537=>530,2538=>497,2539=>500,2540=>482,2541=>503,2542=>517,2543=>481,2544=>377,2545=>377,2546=>429,2547=>383,2548=>429,2549=>478,2550=>545,2551=>158,2552=>365,2553=>280,2554=>357,4256=>587,4257=>620,4258=>642,4259=>815,4260=>600,4261=>595,4262=>799,4263=>893,4264=>622,4265=>597,4266=>939,4267=>602,4268=>603,4269=>790,4270=>587,4271=>623,4272=>799,4273=>601,4274=>792,4275=>724,4276=>847,4277=>599,4278=>812,4279=>603,4280=>653,4281=>590,4282=>754,4283=>596,4284=>653,4285=>651,4286=>596,4287=>888,4288=>593,4304=>436,4305=>491,4306=>528,4307=>692,4308=>447,4309=>447,4310=>628,4311=>734,4312=>449,4313=>445,4314=>843,4315=>449,4316=>449,4317=>682,4318=>449,4319=>480,4320=>682,4321=>468,4322=>710,4323=>623,4324=>697,4325=>447,4326=>702,4327=>447,4328=>470,4329=>440,4330=>632,4331=>449,4332=>470,4333=>536,4334=>449,4335=>656,4336=>474,4337=>630,4338=>394,4339=>419,4340=>422,4341=>436,4345=>528,4347=>515,4348=>449,5024=>678,5025=>756,5026=>604,5027=>770,5028=>969,5029=>207,5030=>633,5031=>800,5032=>474,5033=>689,5034=>672,5035=>446,5036=>637,5037=>776,5038=>511,5039=>723,5040=>528,5041=>591,5042=>839,5043=>963,5044=>615,5045=>563,5046=>705,5047=>800,5048=>558,5049=>880,5050=>966,5051=>675,5052=>527,5053=>733,5054=>779,5055=>547,5056=>756,5057=>834,5058=>604,5059=>632,5060=>605,5061=>1051,5062=>657,5063=>842,5064=>748,5065=>1192,5066=>842,5067=>632,5068=>668,5069=>928,5070=>626,5071=>655,5072=>502,5073=>696,5074=>642,5075=>518,5076=>952,5077=>622,5078=>710,5079=>521,5080=>556,5081=>656,5082=>622,5083=>881,5084=>760,5085=>564,5086=>567,5087=>712,5088=>717,5089=>838,5090=>617,5091=>689,5092=>767,5093=>728,5094=>690,5095=>551,5096=>859,5097=>957,5098=>900,5099=>779,5100=>805,5101=>621,5102=>604,5103=>842,5104=>653,5105=>737,5106=>601,5107=>901,5108=>655,7680=>667,7681=>556,7682=>667,7683=>556,7684=>667,7685=>556,7686=>667,7687=>556,7688=>722,7689=>500,7690=>722,7691=>556,7692=>722,7693=>556,7694=>722,7695=>556,7696=>722,7697=>556,7698=>722,7699=>556,7700=>667,7701=>556,7702=>667,7703=>556,7704=>667,7705=>556,7706=>667,7707=>556,7708=>667,7709=>556,7710=>611,7711=>278,7712=>778,7713=>556,7714=>722,7715=>556,7716=>722,7717=>556,7718=>722,7719=>556,7720=>722,7721=>556,7722=>722,7723=>556,7724=>278,7725=>222,7726=>278,7727=>278,7728=>667,7729=>500,7730=>667,7731=>500,7732=>667,7733=>500,7734=>556,7735=>222,7736=>556,7737=>222,7738=>556,7739=>222,7740=>556,7741=>222,7742=>833,7743=>833,7744=>833,7745=>833,7746=>833,7747=>833,7748=>722,7749=>556,7750=>722,7751=>556,7752=>722,7753=>556,7754=>722,7755=>556,7756=>778,7757=>556,7758=>778,7759=>556,7760=>778,7761=>556,7762=>778,7763=>556,7764=>667,7765=>556,7766=>667,7767=>556,7768=>722,7769=>333,7770=>722,7771=>333,7772=>722,7773=>333,7774=>722,7775=>333,7776=>667,7777=>500,7778=>667,7779=>500,7780=>667,7781=>500,7782=>667,7783=>500,7784=>667,7785=>500,7786=>611,7787=>278,7788=>611,7789=>278,7790=>611,7791=>278,7792=>611,7793=>278,7794=>722,7795=>556,7796=>722,7797=>556,7798=>722,7799=>556,7800=>722,7801=>556,7802=>722,7803=>556,7804=>667,7805=>500,7806=>667,7807=>500,7808=>944,7809=>722,7810=>944,7811=>722,7812=>944,7813=>722,7814=>944,7815=>722,7816=>944,7817=>722,7818=>667,7819=>500,7820=>667,7821=>500,7822=>667,7823=>500,7824=>611,7825=>500,7826=>611,7827=>500,7828=>611,7829=>500,7830=>556,7831=>278,7832=>722,7833=>500,7834=>555,7835=>278,7840=>667,7841=>556,7842=>667,7843=>556,7844=>667,7845=>556,7846=>667,7847=>556,7848=>667,7849=>556,7850=>667,7851=>556,7852=>667,7853=>556,7854=>667,7855=>556,7856=>667,7857=>556,7858=>667,7859=>556,7860=>667,7861=>556,7862=>667,7863=>556,7864=>667,7865=>556,7866=>667,7867=>556,7868=>667,7869=>556,7870=>667,7871=>556,7872=>667,7873=>556,7874=>667,7875=>556,7876=>667,7877=>556,7878=>667,7879=>556,7880=>278,7881=>278,7882=>278,7883=>222,7884=>778,7885=>556,7886=>778,7887=>556,7888=>778,7889=>556,7890=>778,7891=>556,7892=>778,7893=>556,7894=>778,7895=>556,7896=>778,7897=>556,7898=>778,7899=>556,7900=>778,7901=>556,7902=>778,7903=>556,7904=>778,7905=>556,7906=>778,7907=>556,7908=>722,7909=>556,7910=>722,7911=>556,7912=>773,7913=>623,7914=>773,7915=>623,7916=>773,7917=>623,7918=>773,7919=>623,7920=>773,7921=>623,7922=>667,7923=>500,7924=>667,7925=>500,7926=>667,7927=>500,7928=>667,7929=>500,7936=>596,7937=>596,7938=>596,7939=>596,7940=>596,7941=>596,7942=>596,7943=>596,7944=>718,7945=>718,7946=>796,7947=>780,7948=>746,7949=>744,7950=>718,7951=>718,7952=>523,7953=>523,7954=>523,7955=>523,7956=>523,7957=>523,7960=>759,7961=>751,7962=>962,7963=>957,7964=>958,7965=>947,7968=>557,7969=>557,7970=>557,7971=>557,7972=>557,7973=>557,7974=>557,7975=>557,7976=>807,7977=>796,7978=>1013,7979=>1002,7980=>1009,7981=>1000,7982=>882,7983=>919,7984=>293,7985=>293,7986=>361,7987=>382,7988=>347,7989=>329,7990=>352,7991=>347,7992=>353,7993=>348,7994=>555,7995=>557,7996=>557,7997=>545,7998=>435,7999=>448,8000=>561,8001=>561,8002=>561,8003=>561,8004=>561,8005=>561,8008=>792,8009=>801,8010=>1031,8011=>1029,8012=>931,8013=>931,8016=>549,8017=>549,8018=>549,8019=>549,8020=>549,8021=>549,8022=>549,8023=>549,8025=>838,8027=>1004,8029=>1036,8031=>936,8032=>746,8033=>746,8034=>746,8035=>746,8036=>746,8037=>746,8038=>746,8039=>746,8040=>768,8041=>794,8042=>1003,8043=>1002,8044=>922,8045=>918,8046=>871,8047=>893,8048=>596,8049=>596,8050=>523,8051=>523,8052=>557,8053=>557,8054=>293,8055=>293,8056=>561,8057=>561,8058=>549,8059=>549,8060=>746,8061=>746,8064=>596,8065=>596,8066=>596,8067=>596,8068=>596,8069=>596,8070=>596,8071=>596,8072=>859,8073=>861,8074=>948,8075=>928,8076=>886,8077=>895,8078=>865,8079=>864,8080=>557,8081=>557,8082=>557,8083=>557,8084=>557,8085=>557,8086=>557,8087=>557,8088=>890,8089=>894,8090=>1092,8091=>1084,8092=>1095,8093=>1080,8094=>953,8095=>986,8096=>746,8097=>746,8098=>746,8099=>746,8100=>746,8101=>746,8102=>746,8103=>746,8104=>892,8105=>907,8106=>1113,8107=>1095,8108=>1034,8109=>1030,8110=>983,8111=>1002,8112=>596,8113=>596,8114=>596,8115=>596,8116=>593,8118=>596,8119=>596,8120=>765,8121=>765,8122=>765,8123=>765,8124=>861,8125=>147,8126=>201,8127=>147,8128=>278,8129=>333,8130=>557,8131=>557,8132=>595,8134=>557,8135=>557,8136=>835,8137=>849,8138=>895,8139=>861,8140=>786,8141=>602,8142=>601,8143=>333,8144=>335,8145=>322,8146=>357,8147=>336,8150=>340,8151=>320,8152=>300,8153=>298,8154=>439,8155=>408,8157=>434,8158=>433,8159=>333,8160=>549,8161=>549,8162=>549,8163=>549,8164=>551,8165=>551,8166=>549,8167=>549,8168=>733,8169=>733,8170=>794,8171=>832,8172=>739,8173=>333,8174=>624,8175=>303,8178=>746,8179=>746,8180=>725,8182=>746,8183=>746,8184=>889,8185=>828,8186=>836,8187=>811,8188=>867,8189=>333,8190=>159,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>556,8200=>278,8201=>200,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>556,8211=>556,8212=>1000,8213=>1000,8214=>312,8215=>567,8216=>222,8217=>222,8218=>222,8219=>221,8220=>333,8221=>333,8222=>333,8223=>333,8224=>556,8225=>556,8226=>350,8227=>350,8228=>278,8229=>666,8230=>1000,8231=>278,8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>500,8240=>1000,8241=>1360,8242=>278,8243=>469,8244=>680,8245=>278,8246=>469,8247=>680,8248=>376,8249=>250,8250=>250,8251=>622,8252=>556,8253=>556,8254=>556,8255=>658,8256=>658,8257=>438,8258=>840,8259=>400,8260=>167,8261=>334,8262=>334,8263=>1112,8264=>834,8265=>834,8266=>556,8267=>537,8268=>537,8269=>537,8270=>389,8271=>278,8272=>658,8273=>389,8274=>634,8275=>500,8276=>658,8277=>1000,8278=>515,8279=>855,8280=>722,8281=>725,8282=>224,8283=>722,8284=>604,8285=>224,8286=>224,8287=>0,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>351,8305=>140,8308=>351,8309=>351,8310=>351,8311=>351,8312=>351,8313=>351,8314=>350,8315=>350,8316=>350,8317=>350,8318=>350,8319=>360,8320=>351,8321=>251,8322=>351,8323=>351,8324=>351,8325=>353,8326=>351,8327=>351,8328=>351,8329=>351,8330=>350,8331=>350,8332=>350,8333=>350,8334=>350,8336=>363,8337=>366,8338=>360,8339=>325,8340=>350,8353=>615,8354=>601,8355=>611,8356=>556,8357=>833,8358=>682,8359=>1205,8360=>1222,8361=>879,8362=>869,8363=>538,8364=>655,8365=>667,8366=>611,8368=>570,8369=>684,8370=>717,8371=>667,8372=>667,8373=>640,8376=>516,8400=>0,8401=>0,8402=>0,8403=>0,8404=>0,8405=>0,8406=>0,8407=>0,8408=>0,8409=>0,8410=>0,8411=>0,8412=>0,8413=>0,8414=>0,8415=>0,8416=>0,8417=>0,8420=>0,8421=>0,8422=>0,8423=>0,8424=>0,8425=>0,8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,8432=>0,8448=>900,8449=>889,8450=>722,8451=>1019,8452=>556,8453=>836,8454=>862,8455=>667,8456=>722,8457=>867,8459=>969,8460=>615,8461=>647,8462=>556,8463=>572,8464=>809,8465=>606,8466=>900,8467=>481,8468=>747,8469=>722,8470=>934,8471=>882,8472=>600,8473=>667,8474=>778,8475=>850,8476=>699,8477=>722,8478=>834,8479=>722,8480=>1043,8481=>1261,8482=>1000,8483=>667,8484=>611,8486=>768,8487=>744,8488=>512,8489=>286,8490=>722,8491=>722,8492=>908,8493=>623,8494=>556,8495=>469,8496=>562,8497=>895,8498=>556,8499=>1080,8501=>520,8502=>591,8503=>456,8504=>598,8505=>278,8506=>848,8507=>1338,8508=>619,8510=>582,8511=>722,8513=>778,8514=>556,8515=>556,8516=>667,8522=>516,8523=>640,8525=>1160,8526=>435,8531=>869,8532=>869,8533=>869,8534=>869,8535=>869,8536=>869,8537=>869,8538=>869,8539=>869,8540=>869,8541=>869,8542=>869,8543=>869,8544=>278,8545=>556,8546=>834,8547=>945,8548=>667,8549=>945,8550=>1223,8551=>1501,8552=>945,8553=>667,8554=>945,8555=>1223,8556=>556,8557=>722,8558=>722,8559=>833,8560=>222,8561=>444,8562=>666,8563=>722,8564=>500,8565=>722,8566=>944,8567=>1166,8568=>722,8569=>500,8570=>722,8571=>944,8572=>222,8573=>500,8574=>556,8575=>833,8592=>987,8593=>603,8594=>987,8595=>603,8596=>1042,8597=>1042,8706=>556,8710=>712,8721=>804,8722=>584,8725=>947,8730=>542,8739=>200,8741=>312,8800=>584,8804=>584,8805=>584,9251=>500,9674=>489,9675=>800,9711=>882,9824=>626,9825=>694,9826=>595,9827=>776,9828=>626,9829=>694,9830=>595,9831=>776,9833=>333,9834=>556,9835=>722,9836=>722,9837=>415,9838=>377,9839=>402,11568=>352,11569=>872,11570=>872,11571=>720,11572=>720,11573=>720,11574=>544,11575=>709,11576=>709,11577=>720,11578=>720,11579=>596,11580=>698,11581=>742,11582=>574,11583=>742,11584=>872,11585=>872,11586=>292,11587=>696,11588=>696,11589=>720,11590=>544,11591=>724,11592=>756,11593=>600,11594=>672,11595=>888,11596=>836,11597=>524,11598=>720,11599=>260,11600=>836,11601=>224,11602=>678,11603=>380,11604=>872,11605=>872,11606=>720,11607=>268,11608=>640,11609=>872,11610=>872,11611=>770,11612=>424,11613=>720,11614=>770,11615=>720,11616=>709,11617=>720,11618=>541,11619=>828,11620=>454,11621=>828,11631=>442,11799=>333,42888=>333,42889=>276,42890=>342,42891=>194,42892=>194,64256=>494,64257=>471,64258=>474,64259=>659,64260=>654,64261=>530,64275=>1027,64276=>1056,64277=>1058,64278=>1073,64279=>1301,64285=>200,64286=>305,64287=>400,64288=>587,64289=>890,64290=>848,64291=>872,64292=>800,64293=>850,64294=>873,64295=>797,64296=>937,64297=>584,64298=>776,64299=>776,64300=>776,64301=>776,64302=>640,64303=>640,64304=>640,64305=>591,64306=>466,64307=>598,64308=>622,64309=>262,64310=>351,64312=>608,64313=>270,64314=>526,64315=>550,64316=>600,64318=>621,64320=>378,64321=>607,64323=>575,64324=>568,64326=>590,64327=>606,64328=>547,64329=>776,64330=>687,64331=>212,64332=>591,64333=>550,64334=>568,64335=>640,65533=>788,65535=>700); +$desc=array('Flags'=>96,'FontBBox'=>'[-1166 -431 1572 1072]','ItalicAngle'=>-12,'Ascent'=>900,'Descent'=>-200,'Leading'=>100,'CapHeight'=>729,'XHeight'=>524,'StemV'=>70,'StemH'=>30,'AvgWidth'=>600,'MaxWidth'=>1501,'MissingWidth'=>800); +$cw=array(0=>800,32=>278,33=>278,34=>355,35=>556,36=>556,37=>889,38=>667,39=>191,40=>333,41=>333,42=>389,43=>584,44=>278,45=>333,46=>278,47=>278,48=>556,49=>556,50=>556,51=>556,52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>278,59=>278,60=>584,61=>584,62=>584,63=>556,64=>1015,65=>667,66=>664,67=>710,68=>702,69=>657,70=>601,71=>778,72=>721,73=>278,74=>507,75=>667,76=>556,77=>846,78=>730,79=>770,80=>646,81=>776,82=>709,83=>651,84=>611,85=>721,86=>645,87=>937,88=>669,89=>678,90=>611,91=>278,92=>278,93=>278,94=>469,95=>556,96=>333,97=>554,98=>561,99=>515,100=>558,101=>547,102=>260,103=>552,104=>540,105=>222,106=>242,107=>502,108=>222,109=>816,110=>540,111=>556,112=>563,113=>556,114=>324,115=>500,116=>265,117=>538,118=>497,119=>723,120=>490,121=>479,122=>500,123=>334,124=>260,125=>334,126=>584,160=>278,161=>333,162=>556,163=>556,164=>556,165=>556,166=>260,167=>556,168=>333,169=>737,170=>370,171=>444,172=>584,173=>333,174=>737,175=>333,176=>606,177=>584,178=>352,179=>352,180=>333,181=>556,182=>537,183=>278,184=>333,185=>250,186=>365,187=>444,188=>900,189=>927,190=>947,191=>611,192=>667,193=>667,194=>667,195=>667,196=>667,197=>667,198=>1000,199=>711,200=>657,201=>657,202=>657,203=>657,204=>278,205=>278,206=>278,207=>278,208=>722,209=>730,210=>770,211=>770,212=>770,213=>770,214=>770,215=>584,216=>778,217=>721,218=>721,219=>721,220=>721,221=>678,222=>646,223=>579,224=>554,225=>554,226=>554,227=>554,228=>554,229=>554,230=>897,231=>510,232=>547,233=>547,234=>547,235=>547,236=>222,237=>222,238=>262,239=>262,240=>556,241=>540,242=>556,243=>556,244=>556,245=>556,246=>556,247=>584,248=>561,249=>538,250=>538,251=>538,252=>538,253=>479,254=>561,255=>479,256=>667,257=>554,258=>667,259=>554,260=>667,261=>556,262=>710,263=>515,264=>710,265=>515,266=>710,267=>515,268=>710,269=>515,270=>702,271=>692,272=>722,273=>556,274=>657,275=>547,276=>657,277=>547,278=>657,279=>547,280=>657,281=>547,282=>657,283=>547,284=>778,285=>552,286=>778,287=>552,288=>778,289=>552,290=>778,291=>552,292=>721,293=>540,294=>722,295=>556,296=>300,297=>262,298=>300,299=>262,300=>300,301=>262,302=>278,303=>262,304=>278,305=>222,306=>742,307=>387,308=>507,309=>262,310=>667,311=>502,312=>500,313=>556,314=>222,315=>556,316=>222,317=>556,318=>342,319=>556,320=>359,321=>556,322=>222,323=>730,324=>540,325=>730,326=>540,327=>730,328=>540,329=>692,330=>642,331=>538,332=>770,333=>556,334=>770,335=>556,336=>770,337=>556,338=>1000,339=>937,340=>709,341=>324,342=>709,343=>324,344=>709,345=>324,346=>651,347=>500,348=>651,349=>500,350=>667,351=>500,352=>651,353=>500,354=>611,355=>278,356=>611,357=>373,358=>611,359=>278,360=>721,361=>538,362=>721,363=>538,364=>721,365=>538,366=>721,367=>538,368=>721,369=>538,370=>722,371=>556,372=>937,373=>723,374=>678,375=>479,376=>678,377=>611,378=>500,379=>611,380=>500,381=>611,382=>500,383=>278,384=>556,385=>777,386=>667,387=>556,388=>667,389=>556,390=>710,391=>722,392=>530,393=>722,394=>869,395=>667,396=>556,397=>566,398=>667,399=>778,400=>667,401=>611,402=>278,403=>778,404=>667,405=>889,406=>278,407=>333,408=>741,409=>500,410=>333,411=>560,412=>833,413=>722,414=>556,415=>778,416=>778,417=>556,418=>1002,419=>737,420=>842,421=>556,422=>666,423=>667,424=>500,425=>611,426=>333,427=>278,428=>611,429=>278,430=>611,431=>773,432=>623,433=>768,434=>722,435=>793,436=>608,437=>611,438=>500,439=>611,440=>611,441=>500,442=>500,443=>556,446=>556,447=>556,448=>260,449=>520,450=>584,451=>278,452=>1311,453=>1208,454=>1056,455=>1056,456=>778,457=>444,458=>1158,459=>944,460=>778,461=>667,462=>554,463=>300,464=>262,465=>770,466=>556,467=>721,468=>538,469=>721,470=>538,471=>721,472=>538,473=>721,474=>538,475=>721,476=>538,477=>547,478=>667,479=>554,480=>667,481=>554,482=>1000,483=>897,484=>778,485=>556,486=>778,487=>552,488=>667,489=>502,490=>778,491=>551,492=>778,493=>551,494=>611,495=>560,496=>222,497=>1333,498=>1222,499=>1056,500=>778,501=>552,503=>630,504=>730,505=>540,506=>667,507=>554,508=>1000,509=>897,510=>778,511=>561,512=>667,513=>554,514=>667,515=>554,516=>657,517=>547,518=>657,519=>547,520=>300,521=>262,522=>300,523=>262,524=>770,525=>556,526=>770,527=>556,528=>709,529=>324,530=>709,531=>324,532=>721,533=>538,534=>721,535=>538,536=>651,537=>500,538=>611,539=>265,540=>521,541=>393,542=>721,543=>540,548=>611,549=>500,550=>667,551=>554,552=>667,553=>556,554=>770,555=>556,556=>770,557=>556,558=>770,559=>556,560=>770,561=>556,562=>678,563=>479,567=>222,592=>554,593=>556,594=>589,595=>556,596=>515,597=>500,598=>581,599=>564,600=>556,601=>547,602=>773,603=>500,604=>500,605=>742,606=>500,607=>246,608=>556,609=>552,610=>546,611=>434,612=>556,613=>540,614=>556,615=>556,616=>245,617=>222,618=>278,619=>473,620=>427,621=>229,622=>611,623=>816,624=>803,625=>833,626=>566,627=>576,628=>560,629=>556,630=>778,631=>722,632=>728,633=>324,634=>333,635=>393,636=>333,637=>333,638=>384,639=>369,640=>546,641=>546,642=>550,643=>328,644=>298,645=>298,646=>444,647=>265,648=>278,649=>579,650=>626,651=>539,652=>497,653=>723,654=>479,655=>538,656=>510,657=>520,658=>560,659=>552,660=>533,661=>534,662=>533,663=>1000,664=>526,665=>501,666=>520,667=>575,668=>520,669=>444,670=>502,671=>430,672=>556,673=>532,674=>533,675=>934,676=>944,677=>944,678=>689,679=>506,680=>764,681=>766,682=>660,683=>577,684=>475,685=>486,686=>565,687=>621,688=>333,689=>333,690=>167,691=>236,692=>236,693=>276,694=>359,695=>500,696=>330,697=>278,698=>454,699=>278,700=>278,701=>278,702=>333,703=>333,704=>333,705=>333,706=>333,707=>333,708=>333,709=>333,710=>333,711=>333,712=>333,713=>333,714=>333,715=>333,716=>333,717=>333,718=>333,719=>333,720=>333,721=>333,722=>333,723=>333,724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,731=>333,732=>333,733=>333,734=>333,735=>510,736=>333,737=>186,738=>333,739=>333,740=>334,741=>526,742=>526,743=>526,744=>526,745=>526,746=>519,747=>519,748=>333,749=>333,750=>333,751=>333,752=>383,753=>294,754=>294,755=>327,756=>261,757=>437,758=>437,759=>333,760=>278,761=>200,762=>200,763=>200,764=>200,765=>333,766=>333,767=>333,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,859=>0,860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,867=>0,868=>0,869=>0,870=>0,871=>0,872=>0,873=>0,874=>0,875=>0,876=>0,877=>0,878=>0,879=>0,884=>199,885=>199,890=>332,894=>278,900=>291,901=>624,902=>659,903=>278,904=>870,905=>870,906=>315,908=>876,910=>903,911=>882,912=>333,913=>765,914=>643,915=>589,916=>760,917=>659,918=>682,919=>707,920=>769,921=>256,922=>689,923=>765,924=>825,925=>687,926=>649,927=>766,928=>730,929=>649,931=>678,932=>655,933=>733,934=>753,935=>783,936=>773,937=>768,938=>285,939=>733,940=>593,941=>523,942=>595,943=>271,944=>549,945=>596,946=>534,947=>531,948=>566,949=>523,950=>470,951=>557,952=>547,953=>293,954=>516,955=>579,956=>571,957=>518,958=>499,959=>561,960=>636,961=>551,962=>564,963=>627,964=>505,965=>549,966=>715,967=>579,968=>662,969=>746,970=>335,971=>549,972=>535,973=>503,974=>725,977=>580,978=>742,979=>809,980=>620,981=>728,982=>740,983=>556,1008=>556,1009=>566,1012=>778,1013=>328,1024=>657,1025=>657,1026=>781,1027=>590,1028=>709,1029=>655,1030=>254,1031=>300,1032=>532,1033=>1002,1034=>1166,1035=>772,1036=>674,1037=>730,1038=>605,1039=>721,1040=>667,1041=>665,1042=>664,1043=>590,1044=>807,1045=>657,1046=>914,1047=>653,1048=>730,1049=>730,1050=>674,1051=>656,1052=>846,1053=>721,1054=>770,1055=>720,1056=>649,1057=>709,1058=>606,1059=>605,1060=>875,1061=>660,1062=>754,1063=>612,1064=>830,1065=>872,1066=>839,1067=>885,1068=>668,1069=>708,1070=>1099,1071=>676,1072=>554,1073=>545,1074=>521,1075=>375,1076=>572,1077=>538,1078=>815,1079=>488,1080=>557,1081=>557,1082=>519,1083=>508,1084=>618,1085=>558,1086=>533,1087=>557,1088=>569,1089=>511,1090=>392,1091=>469,1092=>922,1093=>475,1094=>588,1095=>482,1096=>693,1097=>722,1098=>644,1099=>731,1100=>521,1101=>509,1102=>790,1103=>550,1104=>538,1105=>538,1106=>566,1107=>375,1108=>506,1109=>488,1110=>224,1111=>272,1112=>226,1113=>793,1114=>849,1115=>576,1116=>519,1117=>557,1118=>469,1119=>557,1120=>942,1121=>693,1136=>749,1137=>666,1138=>785,1139=>528,1148=>942,1149=>736,1150=>947,1151=>686,1154=>456,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,1162=>751,1163=>588,1164=>685,1165=>554,1166=>656,1167=>606,1168=>598,1169=>396,1170=>611,1171=>409,1172=>592,1173=>448,1174=>921,1175=>826,1176=>657,1177=>493,1178=>680,1179=>529,1180=>678,1181=>524,1182=>695,1183=>528,1184=>846,1185=>650,1186=>741,1187=>578,1188=>992,1189=>700,1190=>1047,1191=>778,1192=>810,1193=>645,1194=>709,1195=>509,1196=>611,1197=>393,1198=>664,1199=>580,1200=>668,1201=>617,1202=>664,1203=>489,1204=>905,1205=>662,1206=>631,1207=>498,1208=>597,1209=>472,1210=>597,1211=>471,1212=>927,1213=>716,1214=>927,1215=>699,1216=>254,1217=>915,1218=>815,1219=>665,1220=>510,1221=>678,1222=>533,1223=>721,1224=>558,1225=>751,1226=>589,1227=>599,1228=>472,1229=>876,1230=>649,1231=>254,1232=>667,1233=>552,1234=>667,1235=>552,1236=>1000,1237=>897,1238=>657,1239=>538,1240=>722,1241=>511,1242=>722,1243=>511,1244=>914,1245=>815,1246=>653,1247=>488,1248=>611,1249=>546,1250=>730,1251=>557,1252=>730,1253=>557,1254=>774,1255=>529,1256=>785,1257=>528,1258=>785,1259=>528,1260=>708,1261=>509,1262=>605,1263=>469,1264=>605,1265=>469,1266=>605,1267=>469,1268=>612,1269=>482,1270=>601,1271=>430,1272=>885,1273=>731,1296=>667,1297=>500,1298=>673,1299=>557,1306=>776,1307=>556,1308=>937,1309=>723,1310=>667,1311=>510,1329=>722,1330=>705,1331=>774,1332=>754,1333=>722,1334=>751,1335=>485,1336=>722,1337=>782,1338=>655,1339=>699,1340=>417,1341=>853,1342=>791,1343=>711,1344=>588,1345=>663,1346=>665,1347=>665,1348=>756,1349=>623,1350=>773,1351=>603,1352=>722,1353=>648,1354=>722,1355=>751,1356=>750,1357=>722,1358=>748,1359=>667,1360=>699,1361=>623,1362=>417,1363=>785,1364=>638,1365=>778,1366=>716,1369=>333,1370=>222,1371=>133,1372=>325,1373=>333,1374=>333,1375=>333,1377=>833,1378=>556,1379=>572,1380=>581,1381=>546,1382=>588,1383=>448,1384=>556,1385=>568,1386=>582,1387=>552,1388=>301,1389=>799,1390=>556,1391=>554,1392=>533,1393=>548,1394=>552,1395=>552,1396=>544,1397=>222,1398=>544,1399=>456,1400=>556,1401=>390,1402=>833,1403=>509,1404=>547,1405=>533,1406=>610,1407=>887,1408=>556,1409=>545,1410=>301,1411=>853,1412=>632,1413=>579,1414=>690,1415=>545,1417=>278,1418=>367,1423=>735,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1467=>0,1468=>0,1469=>0,1470=>488,1471=>0,1472=>212,1473=>0,1474=>0,1475=>278,1476=>0,1488=>640,1489=>591,1490=>466,1491=>598,1492=>622,1493=>212,1494=>351,1495=>623,1496=>608,1497=>200,1498=>526,1499=>550,1500=>600,1501=>623,1502=>621,1503=>212,1504=>378,1505=>607,1506=>587,1507=>575,1508=>568,1509=>540,1510=>590,1511=>606,1512=>547,1513=>776,1514=>687,1520=>424,1521=>412,1522=>400,1523=>184,1524=>344,2433=>0,2434=>300,2435=>264,2437=>594,2438=>790,2439=>469,2440=>513,2441=>520,2442=>549,2443=>594,2444=>481,2447=>580,2448=>627,2451=>540,2452=>613,2453=>570,2454=>467,2455=>471,2456=>428,2457=>483,2458=>408,2459=>509,2460=>591,2461=>563,2462=>771,2463=>381,2464=>404,2465=>522,2466=>408,2467=>450,2468=>543,2469=>477,2470=>418,2471=>433,2472=>445,2474=>499,2475=>584,2476=>377,2477=>555,2478=>448,2479=>423,2480=>390,2482=>498,2486=>498,2487=>425,2488=>495,2489=>440,2492=>0,2493=>440,2494=>193,2495=>189,2496=>180,2497=>0,2498=>0,2499=>0,2500=>0,2503=>252,2504=>243,2507=>889,2508=>865,2509=>0,2510=>356,2519=>219,2524=>523,2525=>408,2527=>428,2528=>594,2529=>481,2530=>0,2531=>0,2534=>500,2535=>437,2536=>479,2537=>530,2538=>497,2539=>500,2540=>482,2541=>503,2542=>517,2543=>481,2544=>377,2545=>377,2546=>429,2547=>383,2548=>429,2549=>478,2550=>545,2551=>158,2552=>365,2553=>280,2554=>357,2555=>344,4256=>587,4257=>620,4258=>642,4259=>815,4260=>600,4261=>595,4262=>799,4263=>893,4264=>622,4265=>597,4266=>939,4267=>602,4268=>603,4269=>790,4270=>587,4271=>623,4272=>799,4273=>601,4274=>792,4275=>724,4276=>847,4277=>599,4278=>812,4279=>603,4280=>653,4281=>590,4282=>754,4283=>596,4284=>653,4285=>651,4286=>596,4287=>888,4288=>593,4304=>436,4305=>491,4306=>528,4307=>692,4308=>447,4309=>447,4310=>628,4311=>734,4312=>449,4313=>445,4314=>843,4315=>449,4316=>449,4317=>682,4318=>449,4319=>480,4320=>682,4321=>468,4322=>710,4323=>623,4324=>697,4325=>447,4326=>702,4327=>447,4328=>470,4329=>440,4330=>632,4331=>449,4332=>470,4333=>536,4334=>449,4335=>656,4336=>474,4337=>630,4338=>394,4339=>419,4340=>422,4341=>436,4345=>528,4347=>515,4348=>449,5024=>678,5025=>756,5026=>604,5027=>770,5028=>969,5029=>207,5030=>633,5031=>800,5032=>474,5033=>689,5034=>672,5035=>446,5036=>637,5037=>776,5038=>511,5039=>723,5040=>528,5041=>591,5042=>839,5043=>963,5044=>615,5045=>563,5046=>705,5047=>800,5048=>558,5049=>880,5050=>966,5051=>675,5052=>527,5053=>733,5054=>779,5055=>547,5056=>756,5057=>834,5058=>604,5059=>632,5060=>605,5061=>1051,5062=>657,5063=>842,5064=>748,5065=>1192,5066=>842,5067=>632,5068=>668,5069=>928,5070=>626,5071=>655,5072=>502,5073=>696,5074=>642,5075=>518,5076=>952,5077=>622,5078=>710,5079=>521,5080=>556,5081=>656,5082=>622,5083=>881,5084=>760,5085=>564,5086=>567,5087=>712,5088=>717,5089=>838,5090=>617,5091=>689,5092=>767,5093=>728,5094=>690,5095=>551,5096=>859,5097=>957,5098=>900,5099=>779,5100=>805,5101=>621,5102=>604,5103=>842,5104=>653,5105=>737,5106=>601,5107=>901,5108=>655,7680=>667,7681=>554,7682=>664,7683=>561,7684=>664,7685=>561,7686=>664,7687=>561,7688=>711,7689=>510,7690=>702,7691=>558,7692=>702,7693=>558,7694=>702,7695=>558,7696=>722,7697=>556,7698=>702,7699=>558,7700=>657,7701=>547,7702=>657,7703=>547,7704=>657,7705=>547,7706=>657,7707=>547,7708=>667,7709=>556,7710=>601,7711=>260,7712=>778,7713=>552,7714=>721,7715=>540,7716=>721,7717=>540,7718=>721,7719=>540,7720=>722,7721=>556,7722=>721,7723=>540,7724=>278,7725=>222,7726=>278,7727=>262,7728=>667,7729=>502,7730=>667,7731=>502,7732=>667,7733=>502,7734=>556,7735=>222,7736=>556,7737=>222,7738=>556,7739=>222,7740=>556,7741=>222,7742=>846,7743=>816,7744=>846,7745=>816,7746=>846,7747=>816,7748=>730,7749=>540,7750=>730,7751=>540,7752=>730,7753=>540,7754=>730,7755=>540,7756=>770,7757=>556,7758=>770,7759=>556,7760=>770,7761=>556,7762=>770,7763=>556,7764=>646,7765=>563,7766=>646,7767=>563,7768=>709,7769=>324,7770=>709,7771=>324,7772=>709,7773=>324,7774=>709,7775=>324,7776=>651,7777=>500,7778=>651,7779=>500,7780=>651,7781=>500,7782=>651,7783=>500,7784=>651,7785=>500,7786=>611,7787=>265,7788=>611,7789=>265,7790=>611,7791=>265,7792=>611,7793=>265,7794=>721,7795=>538,7796=>721,7797=>538,7798=>721,7799=>538,7800=>721,7801=>538,7802=>721,7803=>538,7804=>645,7805=>497,7806=>645,7807=>497,7808=>937,7809=>723,7810=>937,7811=>723,7812=>937,7813=>723,7814=>937,7815=>723,7816=>937,7817=>723,7818=>669,7819=>490,7820=>669,7821=>490,7822=>678,7823=>479,7824=>611,7825=>500,7826=>611,7827=>500,7828=>611,7829=>500,7830=>540,7831=>265,7832=>723,7833=>479,7834=>554,7835=>278,7840=>667,7841=>554,7842=>667,7843=>554,7844=>667,7845=>554,7846=>667,7847=>554,7848=>667,7849=>554,7850=>667,7851=>554,7852=>667,7853=>554,7854=>667,7855=>554,7856=>667,7857=>554,7858=>667,7859=>554,7860=>667,7861=>554,7862=>667,7863=>554,7864=>657,7865=>547,7866=>657,7867=>547,7868=>657,7869=>547,7870=>657,7871=>547,7872=>657,7873=>547,7874=>657,7875=>547,7876=>657,7877=>547,7878=>657,7879=>547,7880=>278,7881=>222,7882=>278,7883=>222,7884=>770,7885=>556,7886=>770,7887=>556,7888=>770,7889=>556,7890=>770,7891=>556,7892=>770,7893=>556,7894=>770,7895=>556,7896=>770,7897=>556,7898=>778,7899=>556,7900=>778,7901=>556,7902=>778,7903=>556,7904=>778,7905=>556,7906=>778,7907=>556,7908=>721,7909=>538,7910=>721,7911=>538,7912=>773,7913=>623,7914=>773,7915=>623,7916=>773,7917=>623,7918=>773,7919=>623,7920=>773,7921=>623,7922=>678,7923=>479,7924=>678,7925=>479,7926=>678,7927=>479,7928=>678,7929=>479,7936=>596,7937=>596,7938=>596,7939=>596,7940=>596,7941=>596,7942=>596,7943=>596,7944=>718,7945=>718,7946=>796,7947=>780,7948=>746,7949=>744,7950=>718,7951=>718,7952=>523,7953=>523,7954=>523,7955=>523,7956=>523,7957=>523,7960=>759,7961=>751,7962=>962,7963=>957,7964=>958,7965=>947,7968=>557,7969=>557,7970=>557,7971=>557,7972=>557,7973=>557,7974=>557,7975=>557,7976=>807,7977=>796,7978=>1013,7979=>1002,7980=>1009,7981=>1000,7982=>882,7983=>919,7984=>293,7985=>293,7986=>361,7987=>382,7988=>347,7989=>329,7990=>352,7991=>347,7992=>353,7993=>348,7994=>555,7995=>557,7996=>557,7997=>545,7998=>435,7999=>448,8000=>561,8001=>561,8002=>561,8003=>561,8004=>561,8005=>561,8008=>792,8009=>801,8010=>1031,8011=>1029,8012=>931,8013=>931,8016=>549,8017=>549,8018=>549,8019=>549,8020=>549,8021=>549,8022=>549,8023=>549,8025=>838,8027=>1004,8029=>1036,8031=>936,8032=>746,8033=>746,8034=>746,8035=>746,8036=>746,8037=>746,8038=>746,8039=>746,8040=>768,8041=>794,8042=>1003,8043=>1002,8044=>922,8045=>918,8046=>871,8047=>893,8048=>596,8049=>596,8050=>523,8051=>523,8052=>557,8053=>557,8054=>293,8055=>293,8056=>561,8057=>561,8058=>549,8059=>549,8060=>746,8061=>746,8064=>596,8065=>596,8066=>596,8067=>596,8068=>596,8069=>596,8070=>596,8071=>596,8072=>859,8073=>861,8074=>948,8075=>928,8076=>886,8077=>895,8078=>865,8079=>864,8080=>557,8081=>557,8082=>557,8083=>557,8084=>557,8085=>557,8086=>557,8087=>557,8088=>890,8089=>894,8090=>1092,8091=>1084,8092=>1095,8093=>1080,8094=>953,8095=>986,8096=>746,8097=>746,8098=>746,8099=>746,8100=>746,8101=>746,8102=>746,8103=>746,8104=>892,8105=>907,8106=>1113,8107=>1095,8108=>1034,8109=>1030,8110=>983,8111=>1002,8112=>596,8113=>596,8114=>596,8115=>596,8116=>593,8118=>596,8119=>596,8120=>765,8121=>765,8122=>765,8123=>765,8124=>861,8125=>147,8126=>201,8127=>147,8128=>278,8129=>333,8130=>557,8131=>557,8132=>595,8134=>557,8135=>557,8136=>835,8137=>849,8138=>895,8139=>861,8140=>786,8141=>602,8142=>601,8143=>333,8144=>335,8145=>322,8146=>357,8147=>336,8150=>340,8151=>320,8152=>300,8153=>298,8154=>439,8155=>408,8157=>434,8158=>433,8159=>333,8160=>549,8161=>549,8162=>549,8163=>549,8164=>551,8165=>551,8166=>549,8167=>549,8168=>733,8169=>733,8170=>794,8171=>832,8172=>739,8173=>333,8174=>624,8175=>303,8178=>746,8179=>746,8180=>725,8182=>746,8183=>746,8184=>889,8185=>828,8186=>836,8187=>811,8188=>867,8189=>333,8190=>159,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>556,8200=>278,8201=>167,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>556,8211=>556,8212=>1000,8213=>1000,8214=>312,8215=>567,8216=>222,8217=>222,8218=>222,8219=>221,8220=>333,8221=>333,8222=>333,8223=>333,8224=>556,8225=>556,8226=>400,8227=>400,8228=>278,8229=>666,8230=>1000,8231=>278,8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>167,8240=>1000,8241=>1360,8242=>278,8243=>469,8244=>680,8245=>278,8246=>469,8247=>680,8248=>376,8249=>250,8250=>250,8251=>622,8252=>556,8253=>556,8254=>556,8255=>658,8256=>658,8257=>438,8258=>840,8259=>450,8260=>167,8261=>334,8262=>334,8263=>1082,8264=>834,8265=>834,8266=>556,8267=>537,8268=>537,8269=>537,8270=>389,8271=>278,8272=>658,8273=>389,8274=>634,8275=>500,8276=>658,8277=>1000,8278=>515,8279=>855,8280=>722,8281=>725,8282=>224,8283=>722,8284=>604,8285=>224,8286=>224,8287=>0,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>351,8305=>140,8308=>351,8309=>351,8310=>351,8311=>351,8312=>351,8313=>351,8314=>350,8315=>350,8316=>350,8317=>350,8318=>350,8319=>360,8320=>351,8321=>251,8322=>351,8323=>351,8324=>351,8325=>353,8326=>351,8327=>351,8328=>351,8329=>351,8330=>350,8331=>350,8332=>350,8333=>350,8334=>350,8336=>363,8337=>366,8338=>360,8339=>325,8340=>350,8352=>623,8353=>615,8354=>601,8355=>611,8356=>556,8357=>833,8358=>682,8359=>1205,8360=>1222,8361=>879,8362=>869,8363=>538,8364=>655,8365=>667,8366=>611,8367=>1290,8368=>570,8369=>684,8370=>717,8371=>667,8372=>667,8373=>640,8376=>516,8377=>544,8400=>0,8401=>0,8402=>0,8403=>0,8404=>0,8405=>0,8406=>0,8407=>0,8408=>0,8409=>0,8410=>0,8411=>0,8412=>0,8413=>0,8414=>0,8415=>0,8416=>0,8417=>0,8420=>0,8421=>0,8422=>0,8423=>0,8424=>0,8425=>0,8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,8432=>0,8448=>900,8449=>889,8450=>722,8451=>1019,8452=>556,8453=>836,8454=>862,8455=>667,8456=>722,8457=>867,8459=>1139,8460=>615,8461=>647,8462=>540,8463=>572,8464=>829,8465=>606,8466=>900,8467=>481,8468=>747,8469=>722,8470=>934,8471=>882,8472=>600,8473=>667,8474=>778,8475=>850,8476=>699,8477=>722,8478=>834,8479=>722,8480=>1043,8481=>1261,8482=>1000,8483=>667,8484=>611,8486=>768,8487=>744,8488=>512,8489=>286,8490=>722,8491=>722,8492=>908,8493=>623,8494=>547,8495=>469,8496=>662,8497=>895,8498=>556,8499=>1100,8501=>570,8502=>591,8503=>456,8504=>598,8505=>278,8506=>848,8507=>1338,8508=>619,8510=>582,8511=>722,8513=>778,8514=>556,8515=>556,8516=>678,8522=>516,8523=>640,8525=>1160,8526=>435,8531=>869,8532=>869,8533=>869,8534=>869,8535=>839,8536=>849,8537=>869,8538=>849,8539=>849,8540=>849,8541=>869,8542=>869,8543=>869,8544=>278,8545=>556,8546=>834,8547=>945,8548=>645,8549=>945,8550=>1223,8551=>1501,8552=>945,8553=>669,8554=>945,8555=>1223,8556=>556,8557=>710,8558=>702,8559=>846,8560=>222,8561=>444,8562=>666,8563=>722,8564=>497,8565=>722,8566=>944,8567=>1166,8568=>722,8569=>490,8570=>722,8571=>944,8572=>222,8573=>515,8574=>558,8575=>816,8592=>987,8593=>603,8594=>987,8595=>603,8596=>1042,8597=>1042,8598=>800,8599=>800,8600=>800,8601=>800,8612=>987,8613=>680,8614=>987,8615=>680,8617=>987,8618=>987,8628=>700,8629=>658,8636=>987,8637=>987,8638=>440,8639=>440,8640=>987,8641=>987,8642=>440,8643=>440,8644=>987,8645=>863,8646=>990,8647=>987,8648=>1133,8649=>987,8650=>1133,8651=>987,8652=>987,8656=>987,8657=>577,8658=>987,8659=>577,8660=>1042,8661=>1042,8668=>1092,8669=>1092,8704=>697,8705=>676,8706=>556,8707=>667,8708=>667,8709=>802,8710=>712,8711=>712,8712=>584,8713=>584,8714=>585,8715=>584,8716=>584,8717=>585,8718=>500,8719=>783,8720=>783,8721=>771,8722=>584,8723=>584,8724=>584,8725=>947,8726=>392,8727=>584,8728=>497,8729=>584,8730=>662,8731=>662,8732=>662,8733=>713,8734=>713,8735=>639,8736=>768,8737=>768,8738=>600,8739=>200,8740=>288,8741=>320,8742=>340,8743=>608,8744=>608,8745=>768,8746=>768,8747=>465,8748=>725,8749=>965,8756=>800,8757=>800,8758=>250,8759=>620,8760=>584,8761=>778,8762=>584,8763=>500,8764=>500,8770=>584,8771=>584,8773=>584,8776=>500,8778=>584,8779=>500,8800=>584,8801=>584,8804=>584,8805=>584,8960=>823,8976=>584,8994=>658,8995=>658,9001=>390,9002=>390,9251=>500,9674=>489,9675=>800,9702=>400,9711=>882,9824=>626,9825=>694,9826=>595,9827=>776,9828=>626,9829=>694,9830=>595,9831=>776,9833=>333,9834=>556,9835=>722,9836=>722,9837=>415,9838=>377,9839=>402,11568=>352,11569=>872,11570=>872,11571=>720,11572=>720,11573=>720,11574=>544,11575=>709,11576=>709,11577=>720,11578=>720,11579=>596,11580=>698,11581=>742,11582=>574,11583=>742,11584=>872,11585=>872,11586=>292,11587=>696,11588=>696,11589=>720,11590=>544,11591=>724,11592=>756,11593=>600,11594=>672,11595=>888,11596=>836,11597=>524,11598=>720,11599=>260,11600=>836,11601=>224,11602=>678,11603=>380,11604=>872,11605=>872,11606=>720,11607=>268,11608=>640,11609=>872,11610=>872,11611=>770,11612=>424,11613=>720,11614=>770,11615=>720,11616=>709,11617=>720,11618=>541,11619=>828,11620=>454,11621=>828,11631=>442,11798=>584,11799=>333,11800=>556,11802=>333,11803=>500,11806=>500,11807=>500,11816=>464,11817=>464,11818=>660,11819=>623,11820=>623,11821=>660,11822=>556,42888=>333,42889=>276,42890=>342,42891=>194,42892=>194,42922=>830,64256=>494,64257=>471,64258=>474,64259=>659,64260=>654,64261=>530,64275=>1027,64276=>1056,64277=>1058,64278=>1073,64279=>1301,64285=>200,64286=>305,64287=>400,64288=>587,64289=>890,64290=>848,64291=>872,64292=>800,64293=>850,64294=>873,64295=>797,64296=>937,64297=>584,64298=>776,64299=>776,64300=>776,64301=>776,64302=>640,64303=>640,64304=>640,64305=>591,64306=>466,64307=>598,64308=>622,64309=>262,64310=>351,64312=>608,64313=>270,64314=>526,64315=>550,64316=>600,64318=>621,64320=>378,64321=>607,64323=>575,64324=>568,64326=>590,64327=>606,64328=>547,64329=>776,64330=>687,64331=>212,64332=>591,64333=>550,64334=>568,64335=>640,65529=>0,65530=>0,65531=>0,65532=>800,65533=>788,65535=>800); // --- EOF --- diff --git a/lib/tcpdf/fonts/freesansi.z b/lib/tcpdf/fonts/freesansi.z index 075c2edd2808858c2c77ddcfa9b5d8caeb20bbeb..3b2d02ab35cf3d33c45ea027131ab89026539932 100644 GIT binary patch literal 420785 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%0DQ~AZ%uV}fW^i*!K9MC)KrEJ367)#eOD<#&c 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 XpJuGpc#(v@96SOE+&)fX+SB+Sbp_IS literal 241961 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

                5a=efHJ_$(p+b}ap$@_#66rsXl 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

                -f4DhtiA^{!a~ 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 my!By4?q02KYjA5 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

                ezK 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

                Y-pr>`;;SP@M42yo` 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

                FKa*abI%MOt#HZgq%$}0RQdYT&sqXXVBIqU@TAqgQB z@Y4;dSBmo-PcQnB0XnX?BvP@~;$m951Bavu1wEtI_K?teJ5c6`Uwq?uEV`8$H!$Am z<%lI;%S3hAsc3j(C06;WCFb*7$co+E>7-H5S?6*q>3}7n>s@#!j1GDQ1Ji;YbkkFfQC90N9QQc z;H~%|p5B{*NYRhIU7t*8lY0o{c?rH3N`bt_1{AKq%aDOwGe1a4q?#V1)1!}9@EOP2 z8c;2wPh2V>tR5YdW--EBwQm5t;VAAA3I+;Q^@Z7$SoXv#Q^!}Qrk=_~WGXza zFa(&f@WOUUUiF7d$RNpOi7I5%dXk!fu9P`!NXBSofVe%M+g={P|xb+fDSS^EuA%odrTH-)N7gU1`pdqil3mM5pH=#xynww^}F2*HD|au^5lwt;YRTIl7n52TB2*Ys4h44{M=$9 zDSCJF?S;=?r7b?~xO=kOW3Y8OH0td)=brd^pLOp&ks=d5zmh$t)>)pfTzIoq0j$sO z{f^j<&T<01AZEhmSTAsmKJW?Sg9Pw=REp;q?dU8|F#PliO2@WIx26gT$@O`zd4_ar zCRt!WQA^0Pg6_e-W|IP)tC=)xP)y7M%wb{?o|P@qxd{mx-fM(PVvT_o%_ZVy1Od6T zBvAu%4I-xlPl_Ui%u&G0^5SS7&VOx-mfsw)_iUdyLq@O~2K71kMQsroX?n5>U%RJ( zUstOc$L3q#Mt?9vJg?1Hg0F5rUxGGG=zJ`z|J>ZX&+iPoDobI;mCz4? zysAD?7JXV}wD*t6hqYZ@N|VrU9JG5{~wx4S9iAEQ)``eQ-= z)BvG}EX;9y9JxshAMqgi&M_!_H{SZON?XRNmG#&61`}7RM937Tr8Bwi|CHOuS4V15)wifu`TUP6QrtZDC-7W3g%5$>|sr2z!D49R~nH%i- z)j6a4`iXdCBQ>r$Sy~QTqU*VsK3nM;EvJs1|I-T}sa8#7AylCYc=aVe0EFi`-u`gOgqnx_x!UZK!{ccM0~H zq%xjEXU`%#vDjp-I?J*QhwOG_Cp$@xdyt)u!RCe(*+Zg^WwKaIfu-x^1iuVovH_UG zyyaf+OZ*SU=g&*g)*+PqqxtS z;3uI7UnMRV7^!U*%*J9-S_o68g-rDbMm!K|M2_&jm|CT+W!&}M@`bSa>gL^#>U3JY zIRD*u<7^_-HN%u`veWAp-L=hU*3y1$Fi=MC9NC?fs>`v-H8vcZw<7w zCW(yR88b**Kna(V8=QG?@52NyoX(-~=KU4ZhzthRcKoyL}l0POg z6pClTW5|Cu3PsEU6{YJl34YyAMrt&4eKt{F!CM0Zdb@|2UtA;A_lANZi;O^WPw^^* z7xX`CD;g}tNPLh&4&Nm9GtO*j2LH{FylzkM(=awV-=_C%=^KcId7FLq)_cU$heh{G zQE=$i0)<%i@|){Jj^dfb^2atd>>D#a!$xF!&GW*SuAQ`x2~UES8)Lltk3uRnyOc<7 zxJ!{6@H&Xz-Tm@^>W6iu;Kh&%R3N2X@u85tA#O_%QM@Yg^9a*sFL2 z+F)KW3h&dYCy;L&)@>-B!k<;I5wV3AGw9E$M7@AuXX#-h-pQE-{O`tqGKZgYwww}v zs_qFU``W+@bnR>UJ_vekxg^_BeBZagulVTAxxsqnh|U;i}w)Q#%k=F9qY*7ZcC1Hr!1 zGZTfgYMtr%xsA^PfbTYq3d|BF)tHRK{mH>$9FYz^OjLihh7zJ_A$OnX{#OX! z5^9C|Hr1HIS)qtLickesB6K%~Xa|Sz%}U7kcz+dtQ6PGc@_VgC&+X>CrG*1&z|Yk_C`aQ+UXvK7+FQo`I1uo12NIbNDeWz{WKC z7!0a76YUB!*w%3iHj8ap`m0Z>_#`U2*#2)~8mzBLDF(jBLIc&{`Po7={EEr$F z^X+%Ke-U%RZBv&-GgKoA)^!W3cq_<=^I%=Y)C^eHA|c=NN#PfKa1ifqo*)#mdNA^3 zn8R(ViILSr6=}b<9~HGV#(ZRIXo5@)L1^os@f>tN=^0i?&k)u-m(VY|*!q&JMXPm+ zf%!y!5@v}MN(6x@@(qoAVM>?@n1($DUaH4a@1WFkOx|?c0yB7o&_VN-dGvQK2(lnX zdbfuTuC975VY21Ol>#_p;+o(nR?p4b1=qe7<>a(kCC4n=8$)1f!o z9r2#rS}7kKk;fhnN^>m~{s`Ry=H4Br&R}Ll)a|!n>UxAsUBhOa62Vo8)p&SDey1U2pdc>o zm*5I3yPr9x$SVmPg}{2OG9VP0EtrW|iD@sTa^4SloKI>f!OH2jRI1(0Xar>OKY)Ps*NPP`n&VvL8&h0aIuF%?!?^k<*na(;cRqS zWIZW*PikUjLw}?4zm(9ijKOa|BEGJEWb4`azuY<#Ua0-yPhL7hxFO#!cK;PRXV|4% zfxes{PI?sn(`TMX9;2Bir(I$jF?`zKMUZ=_7la=;q&Qcq4v{#7L2(E>YOhK(+T54(t_+Ra3g9k%P3 zP5EGE9Nllf3KktTP6pYcX>aIJ467cq*~YY1Tg$-u09Tj{2K0|(=)2#su{N7VYXz>9 z_q)392=-p3&ckGDr^Oc@!{RXhb`lxBn-tK$C&TZPx51RtHhFTkF$_@JBp{(>_KOcR z`|Md-ev29^$d}iEIikKz*S9)MUpXd!q#{G*SQdIJP6#O$K&r4q z2iXUyF@ga~g>7UJreP}rPHZsfRK(Od!j{>tX1>&apfod&BMJ2Xh8`FIV-cnSP;$`- zM^Z%F0J@7dIiH(Ez%b6E_M3M<>`G3h zSpTxmo?CrR|M75i{k+q?vvOtoPp<#<7e6U__vtf#^O2apZ^Yy^jr5IKwWCT}`AwDM zQgr%C$OJ|npSV2rV#e^#t_-aO%O@ zAD+LcGhB0qSn?URQHD$2RYbSmhi?51;Rj(UuBrjG`vrzyI*uI0c~V(f#+8+Iu6dPI zR%Tg1feb1uFMrT#6o2YGLe`LG zVe}GKUr}8p${91D+ht2)@|&hJmYtj?a0*9RwW>Y0*4dL&lMeTzdl_|S{p28jb$ivK z?S)D&d?lCv?N4lf2udd|=_V832?f*7&dl8X)B~N)lfbdAmJbh%C`Y9u!&<3Tuhb9A zULlc3_tu$wac%FluT~f+nP}{Omv>Y-S9|8+4(OLKqq@W>Qw|R%lY_%!L%39;(hm)F zX(6ly9YumtfNKy1e648^^WYuaOUJV!W;_;Rc1V0p&6qSXDIkHUc*8QwSUU zG%y?uGen%NZv?vTb&Z_wiD1#LhS-oI3MXub6x&hqz=tg@77Dx3uHeMEiD_FjtZ|x$ z%|2%=ns&IO!J>P-xEwa;=Q9btH>r`hkLTx8Nzr?iWXx`#a>R8~X;SNVTjPGO*5~lr z_udsLQsK)px$_#WGC#?V#V=H=6~Vu!@c9<0ny8m*R0QoLbvGG5C9wfMYvjWlIrxG> zXYIsi?es~Y6v|Hw-D#SPzFccNf0n7I?&Ilctbf^@A-|g;B1^~yym*j^I}>&(xU&0m zc5^M?9*O1z-(Em|nfs4Y2UG?^21ySVo1K6WJURiBJPnB=f_c*9 zjXotySOxi>6nFu7Lu@M?G*^ct;$vB@74|7q#D2;6WRRKE=pSmqFR7h2EeiTtmMl6f z6Kt`_dQAh5V9&eXu(4K4*edY8f2Zqj@w~(wbwcE#8dZTWYz$d;->5ER)I6>PAfvjl zQC)sw)CJ`8HyFOueWz(Q`SY#T+YVDt-)?fkusNBl5~lDVm}}_!8Ao*@kR_}wQ zeY{7`bX+-n51IND2eTAF0C^HRbsP;^8+pu|LD!4ODWhn9SE(|Y3Ae&K!_=5dK0A*y zaICrk8hSlLk`?TcOB*E0tJ2NErIj_j`!FVNNR&~5MzT*uLPvB{(+MJ!XD=RMdTe>? zk%Hd$wY~g)I+%S50*2zk(kqK$QGfSC(Qqzcw2Z1unw6Lm#d!v{U(~`y*=gR)ZLjC1 zT;i@r0mdJI5~g0EdOqPcn}%p-*kT=Ulf82k--&xsTu`NcpYU+h<6NTv-Ptn7hfoOT zL2rH^!)sA^r(pPzzB^5eHC{kyundy5q|EJ>wsaU5pLw+cPoIy2Ddo87Y7ppDoB#s! z?&Al2AWUO*V00@(u>zh)0(prEXqDX>=~HMebQv?FkStpPH+lfblSY6LgSP-_hCz&F zp{=;n5t28Z;mibiXxkFeolEJ5Bn|}*hNCTsIR=%AuCGS@f0!uEy*)miHQh)%*=43S z8T`ys*{aoANH3k7TIMYIdGu<6-CW!G#f1KNaQ5mixQmf@d{U1|WghMwGmps?wDSCE zwj3_H(_x4Eu9r9m8W9!6Ig`$Rx5z1^po2rZ;gj`+>BJZm9YR zH;KHVr*e2WQV%JZMjRIAASh^v-x?k@Gw}=zQ1B@mG9}$9`rIys5eogO8G-Cu11bKH-GJqfBf^Wg+ezXrNHD8TpEd*wdt~zE2lR+q08}E`!MtK zvgr^vn=&b*tDo9@`Xw83et z#T()w`qt=}Bb+J1 z#p3fYq@cQYbom3Dw{M>h#V5l2G~$BURR{zN(&~xFu(`vV{7T&A()K6@jW0+O4%qxM zD5Z}Jfqn#?(|_X9>YaUJgo0Y!Mf26E@jJ zQcTw(aF{I#2#w4Dj_a+uI!o&6(3Cs!F@=836;d_7LOkdk0S9I(0!G>8jvcQ#SxX4w zB*Q-eE$nv996zV=M2RZkmX-O++qISoi|&moSZYSds$iRfceN3d#rI<;P6GFJ{BZikgP`wh?(fnBbG} z9!p`>7ut6d@){m-m$%TU!em(F5Zo z4%bx^4vxD7t_8ZVCcgR6c6C(jWDDnms-5RNVEh!dOn~;|EEm0g3WoD zXz2r*G=}v(JG-m@%IKRsJt41z9@WP97td&IkQ`YZLn%8uF&VPx2Xl{Wat+4HlYark zSn!XvG+w`p@8SaX?}b1+fyo|1{j{#S0`$Qqi{t zRyL7y$D6(dC|mXWfrhY(Z@WgT@UZbr7PnNR&3q(gG3qw}>O z`a7^yx&~nBrK}!fEHhETkz&aQqwfog#FvE0wi>+tqI;(nTaN}T03WWVAEuKp8-jgzM~b=T)|hHdMKHSZfg5rc%Y+#j06 z_4SM8z~-58E1*KdcrKA#y7qp#`!7I;T+~N4RInrA*QG?27g&wwrDVpvLCGu7T8kp@ z0aDRWT!)9`WNXJUNOl~7t~f!yO9;y-$mSt3)n02$pJEwu8q1Jx?vt>eLO(6E7a7?E zvPTxWA(-vA4A$odVBfSx!=BrcyzWfYS82e&rhJ#Onu)l$VSteFIqAAC!Oz3|mN^Tv z80*O9Qkhch@!AuG@=R?Lvzwx{e0OwtWoMrqX1Kd^5Td7ZweenO(a95audl#+;N6!K zS!?C^$3J!andXgSDExxo8GfKzOr@wUm(zaspc=_5~+&bFFEor8v7fWY1 zrh-;vMCq6Y*IyrZx5c60?*}ZSM%Re*f%ctZhmZUq&L zg~$1D`p)kltK*!ZOyt6600Cq37XSengn%#^!?}w7kTJXsfbarSSKV&vi0O4Qh}@ca z@?9R&SP~Ux!hE_+fUt~Z5&7fj7sp9<`7FsUpC!uRm)jx6Wm#KDj^STKf2V?OH9w|7 zW=-U=kDn3t`)8pv%FE`7hMX-?-@yBQD7zf;qEA07P^&*d-|BU`cc=^JF=k{}q5LX_ zqAbcTpTKG?ew3P0PvN~Mghbw1LSJQe07E(z6ZGaQvrEf_Zej*SqPv>St@9W|or$LP z;AG%oEV&*ZOf5$B{pjR1Uo;U57W%um!l%~{A*}J|p%%h)2G>I&W=&+@FgPt{oy#%P zoAcXi#lV<+c=%qtMHUF&RvfNJ2AmGT_gDAsI`xWihu+{oaZGLR?e4!s_`6I!OT8(2 znQFuVfi6Jc34zD(R2#_(3V`PkD9sOd9zO(zr);bDqB!sU-!ZhC?Uv0_w>*(_z zCOG^sp`W4{VK5eY$>|dS+Og39@V?pM|3~q8W%Dy24`F$98`0-$kt2sVdNMcu+<~+ zGF-=Uc)KUNZ`OOF;r+#}+{%@?Dc9vn&c!ZI`<>zCu(>dok7~Us&A^52Ke!AobuR6hHzyjcVSGg%$2xL#j>I6)`hFWK7Qr>Q{BIV&U}Vi zg;|+2oHfgl*l&u&esKOB2cJg=9}^B9*y~X$poJ>o8b1FCa{d#fa*zUj?|U{IYh+Cy z#egsXV?%z}hO325n#6!Gkei+WYn1WSYzkY0!`5K2HEOVGIv7ZRYD!b7b*eElj7`oD zTfj0}Fcx7C8$;n=8k4`(^K@QHNrq`dkImz^Of27PEY-o?eOM3?9VYs_zX6G_a}A3s zmo|z0CRZ}&t;aV?6VGKLw8OXk+(^)+sZEFGH%fuE&=K|=2pNy*qbq-M;*(&{iJ;>3 z#fx+E2Cw{oK5j~+h62U;XKQoQXJw^;eeat`+Ba-SM4qpv2dbn`*4>Trx*GMnRD**j z)sy8oG78m?f_J>W-;|R%ng9beq-l^^Dxqu+rD!oJX^R(bHH$+i3a3@z^9X3Ld-WcZ=Tr>8G~ezLD%3F)5Vhkv^?aH7Zw( z?lxW3ihmrNge$sjtsE?I*{t`zR6d z_2{Mz-f2+MG>goEd=&%cm}Ke$x0@p*kQpHYSo<>z9cJhlXdDw*L_pOoF@g?PI)u*O zOJ)<&2|V`!)R`7}L(!8L1{90Xf5wd$1{vy|fsrwBB#|xRb_#kw>O+DhWEO0Pw#Z5h zUz&SNAj}KhvjO~#ovU~M{`KGa(K)}@U;4z&5B=BYp4F9DTWYxwvL}|MPQ%3FL`ajI zy|jUje(gFO{U^8gt}_?D_QJ`NqiajozqIaLT7Jh}%Q$@G*llk3Q_1+RmNFNOdgn{i z8=t_(4m?bM-TgK?^9Aa-sE1^`yc^vJh$0tBUra9rRi3(?10AV`VzLH@UlH!Y_M!a( zNObpaMvHYJbYSBiGMY`oT((Ir$2?vnIM^mT0a&(W46n(oid#WG9@bjzPpJe@87hX9{IZuFF@(5A-)zr6SVI1E~sR|9IM zgwyGVyFZESKTmB^SD+^r!ZHFGf`F|-tiZcKdSE&!5Y|CUV+sLbbYcd8FeQWHhp2wF zr7Q+OP|0BEzC~u6I6z9%5raVW{1PE{xU z^DR9wJ_J>fbY?=Juqola51n*Mh+L)<{3T(b3A$vqne{D9=yY1%>W`7~`iV=Vm3nhv zdHv++3uJAVr`GU#@H;Bnl+Kr?afyA(FYu`!>WO`ia5*v^Xk`QP$mHrvt0Px`_%YG* zHMPO42*VnPLc~o5yZe$elEqkhbtPjrm_87W-upIeegyH_2k0Te+Q*36lMwb1{!#2l zF}{v+Q$gyBR6_>Q5)kGz-GYE2+ZcmbNdkys$q17LW=%s_+(%#okjnTTD3sFeLa7iJ z=?P^H#6{p?dZftqBeF4}9;(F^G0Kgr7Ih0UuDb`>Y6Mcrrc|l5dG;rQEk}j(u&OG^ zwD$Imw%BdwuROKqM}f&)I@l|esgweSL^E>49U3VnvLvo&r5%EVVQJ<9a{t33{kfFZ{4`h{`t|9Xf$E~*_4 zHEdphUGxFA2x}LQXrI0R(%QJddgkwUiK88MItJREk8P^MYfb= zSNF|FOxBzuE_P1FyV}>F-c2U+npN^`m1(JjY&^)Oe0UYsYerTQn60qsPZuXKy-5z) zmTc$EVV2MCsxT>=Uc_+@@{qTXp{upIl}9%Ak(u-Tj4f=CAEEMstZxr2}_W#nZE}1m4?&8G>*1j~Pa6N$B?1BbXN6 zN%J}_ynO~6aEU2&2|NIe49O?mq)y_eZ&JNIOr(>JibMaQmG@bth-UU(Dm-rvkdfdb zVVkN?Fz)QN)vK1C(8vCBD)l4k!dxUgKV?|2nxhrxxl`V&TYEcxTWl z?O*(>P}<3U;}>5iHmbf~7XK2mQ4odh1(=Tn`Uy<4*9;RIxmSPj~L5GHeUoq_T+wd2W1@f2-_SX_L)Gx0CpK(gN~iI zL0_#Wzz_mwzP}G{r+jz7s0b4lv3eZYCTt_zMQ-{Xs$Zq=^MzomiSLQy8wWPQ7T|DM z1@;m8u)rf`nv_`td+Y}sP6ztL0ek$O+CLk-X6+7tzBW{ zcSZ;&bZ>O6Os{_XE9EJl_0p|BbIz6kOF*>0d`nA}=@-6{DXH|L&y_EwMo&Gr_lwbT zcPm;rXEvPt{lbm8FaA|9V-I6Xz@GD0u^p1=rl5Ee6ytDj1%~s4TLAJqYLa;v8QzTy z!ZP(4!5}tbkg{NqE$l$|MZCcv5n_-Cna_i0at`-g>Ux$>0j(D}$qmv?N#TL^dah-k zx&qzQ&Y2Am?WUZt|6zwgJAbSPD*q=5OOzASI37uSU8 zXBvu($a(H6w0MLA8MHy`@$^-8oD9&iU}CegFOtGTS3PCi$Gz9Y2jv1E!PqXKhieY^wq^gp2S25e!%sv1JcF@%y+3_sI{U8@U$1%;1g z0W4MmmVyA5OHAE#yF+A?Ixx)X-*3Weh_VyR>z&6lSFJ}G#CwG7gJyxt9V!diO|}C* z{AECl10lw0gNZ#D?d*vGWa`rbVl?uG!G))A&m;E>Y{3)gtz9`w-sYR?!p!2aQqyOdm6>u%I5JCXYp*Gi{|M?XuJ6dw@e6-V{-I`v3uux3WBQF(a3pp;Ov8D z^uBW)@RI{LnzQ;>URpDF{SS2{E|pQQR+&tWeFef~2c9Op7MqdA$qib*+Y z&?{6%qD0sajR&~`rzN=dR~A1ddXHkLFH@L6uq*iMu-wD)nf>fbWs3<|E>uFb%40c-H?3FuRe!@!tu3SlKNEQPvzcnx-RysYP z-pW&B9VH|@e&;+eUU}4dB4K{|xs9j()4T6H@l?^C{C7Y3mEHA8S7?Q^gtwm4zwumc zIgt>(_cPc3%{Q+;@vARf*RNmv*2&(lZpB;F7}{HMadEnuJVI;M@XK=QmnaY!VLj)Q79Gc zDPsP`TPmH{!s4x9p0Z=Y&DN&K!IICT9(?Ok^!4HyRuvfHv?o?zg2leYvkx%H4}m)O zP+woaMCAbE{PgL*te4Ff8P%}vp=P?9cj$F4ad%IT+^BPrxwn@En^mbTk$m53-R=FL zBTWa=tgFa^eft(X{x}xgB&C~8l9%l7{aeUY5W?FQhY^{9e4ttR&0#XkmZNVD+NsLS zD*S2*S+Lf!?mNT%xyszqI^p1^cV)#g)=BX|e)5AgGN#DtJ?#9z=+A`m$I_VOpA(*`7*z{XtqAzSs~-GJ~}_t=aL4(iCn%^ox#Q3`YLgzi=$W)9Z0?hq++ev0l(y3pp;E{ zaB{orL+@e7Fq3Fs-|U_-wRTC4Sl%V<5Qz_Ugld8CwQO)WZ00PQ(Q1H=ZN!)23%mFe38zD2W&>v`xED=Iaf)%V`QulEJe}4y5glVVC43^8h2P*tP4H-EY zO5mB;VHj{K$axn`kvu`)3WTMT)2mpixh%ig=gCcMVotpsxd-3W`qegKf@q6pc-pXPMaRQb0kEc>b_Hdnc**@7wZ~wV|@?6=bQJzXN^S=1tQ@LPV!oA zt&Pz7>yRQA2>n2TX}(UrLePB`ee4GL?gk;Z*`NGJK(1eA0n5ng?HuLwc4W;L$^Szv ztEb`r@vMxB!cZU6OyjTkw+`Z)moL*mGL76|BN&2VZ9q0g_*u-E^}4+7O4MJa8xw1| zFLp!T2z=zDgy-*OUpOb-x1Zg~=?E?#>Ib7O5l8JCak5NW^{>H6~s`xjqsVgDNa z&iul&&%gNUM_-3eC*=IZBu-y;%Qdol@c-XMP<7sf&Wq5I(jG`o;BPjxJz@^|Qe(XVv&G-rZAw1gO&PC6W7U~x#?@z>k3{1U zPi9!5m}P78wQ5{6+;LN?x>1c%tyVrAAGer?hb_KwlWe$K@AD@pfp@YX)`)(EvQq)- zuZU(uLk(9)>gBj*KVfI?SHt{N|DePN0iI*%PE%~K4G#IB_$UH;7wR@pnP@;vI6_N2}ZD-4Uf5(j>kgy1rvpypp<0^=i%g)kkoF7Mi15b!A}l z>2Q?Jp7zRq_2Sg@S*IwzGHQlifqCy&D$$U?6gHN+wt$aGW4C{F;n>-H%rE-FUd1@h z6(&#Wq=A}0o=Ft!n()s;^`Eto`e7G7YX=pgiXt(EC;#!X7fu}8r#;qr+8pvlX$H7# zn_{EAeduH&Yk!7KCmgyCAG&UA|Ih_ho5KE~d*H-{De{&9S_QAR0bp!P2V-wys9LoQ z;3?qA5{AXp^AbG%mVnv;FO3L>aHeqsyl$s&jd++y3^RiA{V=Vmu_bV@P4((5_qRpl z2xGLb?!maZPpN3z$2<(YceSw~#L!nF=^8-7FqLKTe>tjaQClYn#Qd(m59WqFApQZwR5IVt4{0Gk{ycHu?} zvdZq@sM3VT6JU{#AHlK#H1Li0*wFX(0G>hF6+8VQeB`6;^HvA~YpvyrVG&uOz?3rw z@|XWnJLME*=kA=$WGrWDGdYc~G#;l%)6CrbUe)3X#>Pt#W9gE}dxo5C^pDgkBW=>E z&8lIUTsCxWqfa?m%cT=VbjZgRj)C9V`)zcdzd}W*b=a^9x4RwW65zRa^hhr-e5!=5 z#ynvcLh)UdsTa8BDq$Cjwq!ftxfTl>GU#4}$T^1&t9ST>TjImF#OIdyc9(j6=$V}* zyg|L>JuZ>gxg-Pf7q}@qWcmQwBoY?x5Z<3rfQB7tIn>QGFGdH=_s*j0(O;ckSj8JJ zWzbeLsBJjI$kL4z9tq-|388jR@zr^(-;vNR;Y7o*O7uJWq2c1;$SX+o`a<{K7ScEo z9pnrWIwyy2&qHZ}+IQ&ug*QVdD<3}b(u7O88I0|0OkDij-eT)QiM|Yk$z$^2!4Z{Q zIwaE!*o_MPux$TQg1*Da&MAsrah%akJn!11G$nfnAf zWc(KGeG_9sOJ%A5muhGL6GQu$X!H+Z$2fqlN08woeb_O2AZlZHBf4+mQO!WhKjttF zR0Ibq(iH{E%dq8TL&QHKuUTi=rjvZk*>;h;<5CGiMN15cX}w%#7I)2LD)5U?eQ5bb zrw$noMuF*DMw>SnNr8Xl$Dz9dg9B-(`Lp9N|H|87QO~S{O>4d%M)ros@Rdb&mZ|Qw z^C4pra|_Ne)h_YH+B_CkXWN>0@3t-XtCi?#VAMA02x}C%2s;;A^V7~5ThM6EyO|EB z*kP=n2yj7#U9YE=AwxL8sGM5eh$evFvAr(APE*vPDEnYbg&Dqrp0GKF&-US>!F>$2 z^hgGa0i_qAfO9UykcnC)CZ?X^T6SF6w_^y~vBfTgT?g?Eym_2u`Q;;x83SXc6a0b` zZ?hqz<_C;6k2jp1ELAYM@r)d1z(ZszWUd0jxsW(!X+8n$PbGOHHJ<)~82i9}WvA6! z&F+qf<^J|h#EVRz;O8{^Ao#4#>5STK5641Mug!*Xxlq&~)eE55yKUENozAe6%%W89 z{`WRMR;Wv&a}P#{qpj{YEx}_A3<64&f#EQeI6+zQ08lPJ5>VWP-Wq6#C)xT1S$l?z zsrxx#ygp52U>3-pR4X)^fmrA`Sx7OnyH*UJwiIBU<(gIkA7d85=gN`rxd0*Qc!FO( zO@odHaGww89FZtfm`Y<|K;8b>ZIt{gYn=eFBGyu zh{z}xnED*YA49mPF!dzIFJpupfX1mq&;S7i8Av5NNdtI>#YkZ=QW!vrlhAPN3wpzv z?!F{V2Q0vgS?q9q|3{=1Co{Vx+H$k zcpD3REx=dk^A8eUCpEIMf@Zo_ zaN10a+7T;QkA_s%7z%0A8ye|w*c)`0gG#qo)6GtB(MZUep?mZGigD1f6kUFCHn zLf~G!1+n(kG+kd#@TY9|Vf~T3SlQK`6FK z;2!MMIQGGy{12)z#v9!G3ztju^xmh<{($jsg3d9yLP0BQUP~$MawZ){`4}6^ja8Oo zezQIQ)?Jk=R=f`|KR2cx)CO!Zt%kEFop!atU@<9DgTaY#B+QwUqy2e***xf4&6G#! z|IKPky8TImFq2>1^NZCOo5!eAq7OY7n^uPB`XG;PdI$#d*zc`(gWuy<$g{X21E3y2 zLu=PhrEnCvR%VYXxP`z!lmOJ6l^7Qgf*@1L*NVm zQHuYKUytoINP#(l-R4i>y0{J`p0k7u$s z*y5OGBAAWY$6~esV?DM}&LHO)4*58bc2v!!b7N-DPTFQN1@)FhPIn*o`0~=3sft{s zQqfA4d`L0;%5wE$Z+12`J3H>Gs(NQ4OJ1pZHc&n$AKm*dXD+efik`)}z(0s(7=y>D zSE;u}fB0Y&y2%*9lT7_0*L;~2eYRQTj+z02%2}qq$?>msgZt#I=%YrqZj}K(51{fB zhfs+U{pK-}4jj8r%20n30JT7w@;tB2*0Ur2EDc!?MA_ zghd~pyiacY=h>Z6<=bbU{ld7_9`GqgM|%cTBN`(!Q*{_7rkMWBLby6Rz7X%5jVyZx z)w5q$4C(s%dldu229eg?J1`E@p*OSlbs@IMQvdYOdRVF( zyXX|kTqJiIu2hS=_fg7XyYXHbN_06QZr9H?;vD?-xR6ZyA1`k?R3hX32)(<(2$q$G z8P*J5nb%oe0-ZLbDc@rj@{qb_hf`dPmpT7fHsIEn6Rt6LXhyj@l}+5Q@R8rlb8||S zXDgW3tN!CnhqcITI^}_jx#OXr@W%d{kXsa}8qAnJ_>HZ{IlhPtJ=YfrNKCrtHY`_#rJX1_F(oR7G2O4h2~1fcpDQr} zpCH~eP8~==Bk-KYab=okvxFrypWv&oxaz^HQOK~x3hqc0tz@p0MLxx4ilp**Ao+u& z526G9;efH*kKyS4mj98-Lbz(m+FglBh0f$lSd|`jR>?Uga#1^TMP=7(i>~`XAU)^F zrwfUN_@G|%ADeDVIkava)vh{|r-IDhcWrJ{MHQWJyQp?PV8wV?p-zadJ~ST)qQEN2 zfXd$*f<>|OO`ACcgqkdJ{vjSqh=F7a#Rr8{Ac==t*W``z6mW%M=|G*s&6#7Fd}MC(10iVtB~lAe zYE{4vQxJ4Ot3wwXrUMYBpbgfEsV~oSQKviSEUVIq<8w}@)Tqu?(?c1%gG&VrNkb@U zRaz5Pzas1uopoE~uF%mC`_qZ_V8COQt%OQf6~^K7=_Q5ERW8JtK&9KSH~;QUw7<>+(?`>1 zk~7^&`gFR|>6s)mJ$=&0#h!QH`(Y(OQk2y*|41M<^3?m>`|f-9-tQH(?Dps^LDtzH zQ1@LB*v=$jot{M-)U48IH8|Qu`e-Q9>o9iw-%XOF(Gls2^cdv6<>>{oSI6;LD^3jy zCi&^K-a@PQ=B!@CaNSKfN!$dfO+K(yGa#*=sSb7J41NR~e7*}Ftwlyh3XXK7oezxL zkB!^!MJuDI^`n&`OPN+UODh3}$TtlY`hDmVgLPt^=|2_#s{*1gbQ;`*D><4__S64pL365+i982sI|`kdRBS*- zm5pH?CuG?E=)P3~h9Vm;TJgdca+4ej_63bS$#@g?|L##6Rp>Xnhn#FuCTQO6$!!;F zN~5_$Y0Te1KI>EXKt$T7XjHLsi`8gHM05tCJq}aH-xe72?i75EBtu|7(C}OgQ7eM` z2a++;_%t=cWV%Uk0F3nR%gE|4m=V6GX_-vV86c6u0FjkzBB=C0g=M`jGfA987Mn5h zH;m=5S$m(@49pX3dgvX|@CY8qHa5v~(+vvclGZWY^3+c67$@d&Qr(>|D*3P(;yX!6 z0ZP6Cyr2Tb>KkT#!@mDg8LB=}yUZ+aZyE}U>}r*xN?1UbF&-Eg2*iyC&~;CazMxI0 zoN^hIidK!op{W*%tvXzzvb%!wZX<$zDm@IGbro{fmE)|H;j}2s=wLDu0v3whqvVkt z`D;L|cQ}XGC`K$heTDRm0#peMRiX<)<*H2}s93@s%Vb>S5n@V2n#1|oi(xh`!W)Lj zSdS+$7C53#@|I3;L>UA5!NB0r5bOX%puCP~EhtJJw=*7Ce-R${rUIo~}9$cT!QA#hM1ht zMvER-i_H!vUU>t)U#>-mkpOzJK2DR|2E_$n(RDDs&rI(aY;NBX&m5rYP`bFqH!D`{R60eYc9g%k87asYSu&fjRYwCeRR0X?&RkS=(VY<;9u-P=!&two4^z3*tw9 zvbO&G+Qv)P)XP8K1F2d@@yQtkS3MS}*39}2hu8LpfESDi#N+?0qyx~( zfCv!Z3wRE_ZGmvKfVJ>48|2q*2)PloC#|s=4SBhd&DL~WK0Iv;=Ll`n^t%lRxBBJN zcyuTpCXD-&AZIERZo5+WWv`hPZfP}EV}cAE`gD#2*>53~Lu-|pX* zfzc|K%Z&Bcbe(D9Pq-$0 z!Zqp1Nmh#(sU^j?5JY=&0#PQATcBKc_(C=M?FuXsmTH825!8*TvIkWcRup?&O-oG< zk1?mNM}i4m(I{{>UR7GPi55@rk-qarL1b$8JDXp8Zrrx2nhM-``)+h*h1s1R?6SG~ z{VH@$wa-pR&?t zj$P=SO7Z`aG5%jNT#x&eiN^B%s!gG((k7DK5X@IQdLxsht zYPXwSY7E#M13ipZ)?i+J`{sVDmR;Y;KQXFhcC{hft9u%+W1JeMRzX7u*Q9s(NLhM> ztRx&J=NPWLE~md|aOo4mmp)LB9wKsk%cNCznMjgES+0u+ ztxb37&`zJfIhf97Z1aPyP)lK00lk=e=j5ACPLci5FKt5{Iorw%N1 z#pV?O-GOWWJ*isL7EoF2VKI?Su8Y3f(&JCe%y+rXHHXDu{)t*5(s(866__CeJ-c?j zNMw)TnE#*iF=8(@A&~9Am+P1mChoG)7Z<$lx2Ho1a+^ulgRKs@2KH_rrIQ8v{iHP3q zKcDc8n%XtN28;Gto3XD|+FqfqO}6A58;D0d&V(d6$A(5ib1TWD-D~Ugw>g3>e{a<# zB6P1t%Vf_4wfuUIQY+Ls!R&$2+ZafR;cUYyS$Ge_b?sgF^Cb%(MGJYR^1`1HLiaVq zbNwWqvm)Q%WV6YH1e;pgyZnP>`3JMhpVG4_wUD3hjnLyZK{BNXhckdfXajIqr#W^t zf^U;NUC@1N%|`!^6{fz?F&yMil2|MRjlEWA16!p@S*=I(u2b!gCX$02r0^p(dQ@5p zGuH=EQ_Ux+90E*^F~XuWnl=U!%u2WD1h>RWNwGQ&;}P8pbEqK(rIGtDFZe!jJdhsF!oX zq>B0>gqcQb8pWIDs0jh<@kRmI0R67sYEy)}dLV%25>A|mJ4(w6LWUpgl%3{NwlpJ8 zSvhXLS#Qya*JB}9uS+R6M~qTka9p}D#)gghpsUx}VX#$5q)MIP7TSJ4Ivo#q!;D(` zXOFGAi0_nH#N13wdfahe*zM}h_An8jHcy>BC{K@~W|+@)5(_TQA^^G=ZU_JvBMR33 z5&+JX0MJhcBLDzoSWmXI3;_@c!>@?|0O1?}VRFQp%Jws*PJ>U%2Ix5*=+fx zxq?dWJbF`q9+L#dq^pOFMi1krf)Usjk=GhSZ#X?gYQfQFs?pkJ$;9ksP)ee>lMCqG zP8hE~OK051NDo%s=@PxG_jnbFeqICH|3UHDyR9CCQC;!oTA3X-(kvPo~0gy-%wbzAW2f#jWO#3B_7 z=t#GASOD+*VgcM>Q%(TzCfP-&gqf>k7rn{=gUh%r7AhcN2Q|VtDco6kp3Ue9kd4_M zOYZLBP;~MrPF*D^F4Ir6HqGpr?aSD8EnG&9%xON4x5za*vvJ|#)$621;W37Coy2wj z|DY0@sVd*RRlwBW3EO6jsf6iiTHf3ure%n(0NONT_9|h8E4VDLvnF#7?3)96Lsw;9 zAIrtkhT5hMd=UrxrP}GxWG~`izqIr9yk`V=53J=4)jh@OKypJI!%?6D;XBTx`fxnR z=}xe0dVCo^G(KEXta!GB;sqd*05wIr8ge`2PU}!@OQo8pA*``jpy`>&$Cjt?pzTzY z%_gWCSx^SYMJx>5B6ACQTBk6r<1<9SWM~*@MW+xhU`LPoPM}Ap5^(S93b8~UA*0ah zJXk704IQHt$A+Ne#)Ea_pwR}jt|3P;jsioq0i8&u7FIWScYBnQTN0Or_$eMm=}LaC zB0|}0sa!!Y@Li)`#o`|yCxr;>>!bW3yl(ukJ{C^wtiWgS0zta6UqSM*}> zv=8d+reiuoknlIm$7>scmHqjHHXFp6pGl4QxE1uMlY!=~w8B0K0|#b>Twl%8bl)s| zpf6FvUQtVzi$(ZBnxPk`8Gywxa=Y0@ZZ`p_?wm(WbmPQ0px2%AsNJM_d6B$pu{7&> zf@u1jU~p^K7#u9x<#q>fCLF}r^$im@)|~+Crb&H+(bEZ;F0OtNu0#AQn4J@Jibbrg z_@NMD7`?F%8knu2uxoH^dI4G%xYK4|eHtcwO|^h0M?k zQ~zxJL`)I+_FL)swl-(X->%ej>ZLZ>d|FJoxPYTRV#$^)ab&A9tb-G3HxFj1>{}ppd8_Cdx~Q@-hY9t!s~WLqrV^ z!S5dCof%Km5EfEQCD_c}+%|nT#}%grnPWuO74qU0TvxG4Fhl3p=XlqKF!T8_W)-{} zRNJ{CeYn%*E8`*=-VHIse5Y!?=$kV?{1Y9Uc#6cFIbNpsv#Pe9>#0&^nWDCRrDY ze`}4vivB4@u1=4#L)U4LxUHiSo4dEiXV6BvJ!YxhXwwNgOs0c9~W*V(~Z=nsVBsreUKdthWue z?2hU>WQLmKRkQ*Ru_ke5mghUvYl5c-5`7nW$VUvfU5AzBpZ9T5M06bYC<5F4xE-tl z+n+4islDWCW`tbL0NK+d`kcnu*MbCYE!^#t-?oQwvNvUC`MrAQ)l*PTU?tycWiqeg zM?1Ii)31{3tNrt!qwEA+c@Ei#T9 zcOStg9*Qyz3R8Uy$F19sAUrTUcokl8(mR)LKg9BAQBlTz<=Typ;U--?v+}HHCpJ8S zs~GwrHt;5c(>ZGqeQ;~plM0c&e=lA|M6$4GZK+;bCF{B3wr&{1J!g9*p3W1W7|=%B zL(|i*eQ!oWJ0pxtVhZXcPVE)jQ|RKXZykXZE=jY}_Y7gbk@Xs6y!SJ{+mOI2$H z*^;=v$8j-I7qC0Kx}17Ny<=d=G~Cr1iqH6i19g4wq_jgK#Xs)M^eG z2DECw&fL?y`;j)Sw5qmVB3v@7WwM4ExzW(kSlg;so3k?j`l|o6;CCq-#ZqzVABtvo zM0~!CiJ$n!&+D+0S(%cHrW<9Z|c=kj-K9wFl)(4}8V72RigB-tOVP-@Sb4Z&h}-x6f-+*D>R4 zfGqFQ^!)r}$njUJXM)qCKmEqVjc3mc?NZ&bMlU!%?9gn9NX7(ogC_T|IpRW4PZ{h?b3psst&$BbKX;CCgT!WTecx zRaHCD{Me&jvlZf{d6 zB<;5&R=uiTYWA7bEjFlYtVQwvPpW?xt*?d}rxvIa)OqTvV2Vo9xyev`Th$D|yc1}7 zBMfH_pq0OfU*a66k@LUIaNcw1xjuX}<+O|FxfO;Rs(+f1Hqx;EQds|Mc+_zVSpWJEseoKXHZy>yN^vuYh8baM9d1pw$$qpAXI@ZzfFDkdD}Ly$h`B_Puz9%#m8F^DneSyPoh;sxNRjU!}MH)QtI^?(r|SS?FWGg ze5c}u0qtfR1ZWo{=v6CdbM6>yA#CJ|V=&nTw9gyqo#QQHd7hSi5E1hoos1wSBZGTt z2wZUio&yOZ1JqTr>MTyxSfi{?!i&rq>R=z~LeBw9&jw2%`aQeHp;riN+Kx-)YS%GO z(5Gs1SUhrRJ#A`k5VSZAD!ZgX;K!^51ZtgHT~)7=8PpFiN~Bgv9K%)?vS;7-T6O*= zLz7;n?TD_itlzFQH&oSBDFckkWfWDZdB^fss!qSrBev)V+x(#D0J_yTodw34OyxAhG z5!CQGb(JKKH2F?UatI;aD%h9lzmgcW2B$*YhW^l2ach%ALM!cl7RWYxouWb3p>j$Z z!We0dYL*+ZBf^$2ZGO);d-6-t1Cpu#7ksx`h47N&{Aeo zAqEB=!EN7tw5eW0AWsmG=guHr&NJL}3B=DG2=R_pejEk(ZXyaPuMCbX+End|s%;+Z|DcUU z41Qgt4}~y}c$C)x`+dxGA2lwhDMRxxPji1GPU?2n;TBwXBd&Zj)D@FDaVU2SI1Y>O z2q36=46y};k|TN8Oe}#d+XX>#xqIED1G*WgFcuelVz4rS&YphY1W(d4LyvVQbXc)4 z9Eh{RFh!Hr9635ZmGmXarp-$Y<|4#$MCc|w^Nd8-52A1JkQYl$3VSrXB3wVlV4r3G zL%*v?c2X$C>Tgv>vdpCJNnHIe(7HBIVk$vx2*#=O46N(`tn3I|r%tls9<;`bV>3y##*6&5@7#O2A|!kb$E~0>9$vv0a0B&tGzC;LwxTs| z#pA(JS~jN?N@j}IlRJlcT-gq4vJlNl*;KzUQ%&Aj&7{n@2#((+S$yp~Jc-tCdS(%p ze}zu1MYymFD~Q6xpCndOYE;{CIl7sCS5PZA*gOH8UZ}>}*Fw-^rnp)G`WmTH&7b<( zpw%g@)nVvXz0J9Gu8rH{T@H(?*1AV8 z(5qsq{;WK3D`#Yl-|+0+&IJ0KZ^d09z28jsBWxKFaiS$hm!r6&24^!{uV)T`uh#)1KJtyyNSK33JFX_b3);4Mum1UaL&RJ}@kd^VnANNV<$t?g(yDUVqkQe?Z}aiqFf~K13KC^@#|a*EC?ofwGjtLi zS>{L{ZJ<6oPt;kmORgOXb5Q?^6E7Jj&`%)fS6CR$9VE2{K?YM3N{}bi$at1<@1A=Z*}`E@ArUv{O5R1-{TJ*#f8JIUo9nB@uz~i|^Xp zo}eM#izl}XII(`%2Rbt!Mm1AhbOD2BLzUz0`sAA3VvO{}M4~|um9r{D?e1i^d~m+g zYA~oUXkT|)!u!NnyUw#cAf)LU4lQFL%|z5PBB>t_OgWnZCqPJ3@HIZVTDLj|Jb?i# zVP}D7XO%ijT^8IZ!_EfJ&RQc(Q^X;ajp0wjpnN#%H3M&$Qgt@?KF1nXcdr zPQ7k#5KXuX^b@LoAUR4#iuIx$w|k9DW8^|sxMe+suwguanA=O#!fkZQAK}gqWNQGP zL`_4zQ}Y+$3zkG&a^>g_@W_grhotY(LDHLMMT6EGO0*N{&326A7o6r$&ptTX%ZYG$ z`mqRSOjMh24r+K2PQf>LE6;G`EWQ0`|kX9%w++0+?fW{${l7E*fe(3GxWNW96LNTZpEUbLhqEbcPxmoWWD9 zhDBWH9NB}d@qXxJOkIR4l~Pi#j1i5vIL$>(5vW3bY#5$gypA{hIr_1-cW`D6YO=U9 z{pg*ij!LhfP^43OM3v6sE!|Ra-xe6Mf}QQHS;fw$UQ4^UtxYH!vl;rjOy;NsIafrp zd}uc4(wGvj{ubu>zRVQt(eJZq|645HsSkHFH52ttkp`=GGJOHR-=~X;j$@{YdS{O5 zPiRe@7A)gggEc&fuRTd!pl%30UWVzjJkuKpW(zsR`f`GaLriMH$8C{W8f#?RUK4W3 zl5P9up-5gPqUq2_J4+Zoix|Gf!n~^xV7zBs)mb5Ee!|7gClB& z7i)aV!b(ePt3|oEJP>cst9-Iu-EzJ8WT#Q1(PMHyiM2lWbHzo1pT`@H)ixY2(fk|^ z&DfjdllH*{kvPZhT2A}38rRnU3(W2SH7O93A$OD~caWUMduuSBy||=4?d%2goZk9k zpF4FZQWK=+zMDUkH#)dckoPYtzxR+bt_lI=bXfpL!-$4xC+^_p0=>AIh;$&@=pD1x zGKlm1zladAq+X>uEBU(b<;yRJ2mE$7xEJQcw3}!sOB2P z74d1U*%5&V504J%goE)Do5K)E^e=qyY+HHt!>Uq;Q6Pg@K5`qGEtNqu+8eMAq6Q-( zCTfWLk#ePfuOgx-;g&$DW|os@E4(zK#mdKKgqJ1i6tyi_FT=|To)^%VfB`@CAc>w@ z^l_&VHiHaIWZ(xhPL+UixjZPTS+Iwwfag1nj^TV3cM#}?o#r|3kZ*6s?MVmDbHb)>J_w8X$w%e2gPn4MYtxmGf>q7u@r(*TS8vnpv; zy2D4f>qc~Tp@T6> znZbW^P(t9}_BaemLBsA}G^*HktHEY(7a5|#h~OXj?Ff8Jd-We>^E}iN%o{4ds)gwu zhA1TY7|u3J>bCUc$X~j`%ZFNF@EKiXg}aK9K%x8!hwuuA{A7h85Lw_GR?DpS2wCqD zX2&!#-I7&jz;oxyEIwS*CSVdnS{udp{Du(mGz(s+_ws=XBLX4KOw96ijqV6%8^KM} zC@h{pZ*qDQ@RA9IHQjI)L|!Y@)$@x$BwsGJM{TcU*V0$qwFox~Q}0^R@JkizRpbbA?9d6s_u2j&ii$)r#k`M&4>TK$JPt`@0_kQX=DK*ZfDWE=1KT7UxM4tx(yUvr^%O3Gf<=ij|wSFt@^SEZXXgs zFOT5a3s}A*HBWQ>J`7))Svp041Pn*kc?>5`p{>&ET*b=uK01?_IdK+`{xFGnCh7mF zOy}YQ{21Qnl8WfWb1FRwG9~|=a=qmvGcXG2_ zF2-t*YI&>LY1d*kNWO1>_h0gR9aKXOP!rUDD-(4U7DA$}Zh)V&z``}Zx#X5$^3XXf zz8n(zuEt51!#F8L%Fpufzrg_~X?+7QH3!k8tz5*@92;t%8=Sx)6L;B?y*X_^KMADqwzd_pdJCwVr5fY>-&( zvO1|kaJ;oH)+S4C@3Y$5Mo&;HP2H>dmwePRyJ_~(4U#I2Tjg#>-%;0G_d|*9^|=YY zR;P*I@BCC3HH9MTbAo{~D;wcgHb9)xGQZuOMBCjIS>;6*#M(+%`TU_*If7O>f-g7= zrfYcfY9VKc^x7c#X^<$16s>vg!Y36K?wF!$`JHaFECY*v%m8-=?Q4%IUtn?y*X2(` zH(hE_v}5jH-r%d~k!z`mW_P${D68=zuhc(6Y;x5}uLs3l6nA!zFGz?eoxaWGYXV^T;B$Br2#3KK=u;ogxyEaD3^KOP=T*jdu5 zyj)K}TR#Z2!xb>@3)(HR!A-F+hvgc2;xyUgPM4CmMhyRF5$IDV{jKPN2WjL7HpP=ou!zjmkfi1B0 z<>UhKT>HM70m1Jfeut>PD4f_09eX`Iw!G4vrs-+MZ({&UERHse#nJLb|A!Gr1ILz? zKf~$mlpf(lAQ}PTGdY=x?xbOUy}3a8EQNz@^hbbBOb@SgrfEVC>PrO8%|E2C>G!*SDJE?x*O_x|*2nnbUioWp;uW(uuOk{UxNwlI}; z!3ybMg+lcp6NGze(lJ=39<)ry7;ZeLOPFCTt{7S^mOq~f-^<9zzrBn!$JohFcC10h z1<-041F%{~T|I6959fwuKncTfq7^zsPGTCgc7wSp(S$Hnh37)?iW^L(Dt{1TWHfFN zv*RKFO+d20D!-82r$g;i5< zLzq&acg;rdP!%e|g>*2x6Xbs^^kbROXlDYj`mr7m(G$b!A1mm%GHCg-Pe4Ehg)PBQ zWqse7xea|yR*lyT83Li|2xZY z(>dM4Ou+8xM!*F4;}%`me8m zaczJ1(h5vJOq~*O)G9>1&C^5>adzp%$y1wHY*tC9sd>08<@QGI)%uj8epQ`*3zEmf%`kzeRg;>{oNB@s@|Mt!e>|+p5mzN(+SdZ;- zGV|*Q9+Saph-sHBQD>O3`dFVlmr?%9PHW2gnVh}%JM(OSE*wyfVlo@!3; zA9Hw}RZD3t+Li8teqwE%$?MRGL=M8*Kd=5%9QO>OsAomsEEDmJ@mt3b&b6ijWSrA9 z3;j8ecr7VoIa~$=wmjw)mC?lC6jmP@-5AFU7K%4SuU* zq4sG$kIQ%-7l?t4!ps_Z=Nf~>u=nCKw}tTO3ZKTQhv+#3La-O%vjJTZ)D%{}d#rVM z%vh>|;<{DOQ$A35K)KLU(AzLmA%%n9E?~r(8GAT zeQYJnj)hI8u;JGa1>2(4(8VNs+;Oe0e_!Z+{@55aTRIdU&#_mF&t!j^t5H5rU87zW z{Gbedg~iEEhP#gb_Z)(dwDOTOd$3lMZ{PLRPY}8aFERny?~zaLizg%I#KV`j!vzdzW(4j z!15j$0K4)W`U1D@)+2JGkU4wj-U~0n<4sZ8>^)85_ji59&g9_G#5Pg3NKJh(o^### z2Wd0rffg5vOy!|IwpVVdBIn&oJvz==RGvzpSEJKhRg+NP@iW4D6*|-ji17PC+^<@N z5gi=rOwm?d@BZZfwOp)dtZC4SI$p@a|F7YESKU~o2Ty8Cev0j38tv4{GM2EwTfz)7 zfqkVL-`{?{6UN z9`kyRDGzi?a#k$B2U5sGG)K*#|1XMmv?e@lZ;z&<)usnYN8DG5H65ovNMG6eQ-|2U zQ00%;yU_W97dO*}#@ZIgy&E~~!gKv#coG<%eu7LtlNIIT z;fb)&$(RiQ*NZgxuCk!J=Oi~+POQ6^?_C5RStHDxCvQEEJiRcrP{7xX6221s1$^=9 zdvNR+iEy5Ega>Hv!Bqu?PN|~QN+fk2^!MDe%V)5cJ4v)4FP^QS1?lnXL3D2+r@FWN zL9l!Os(Z!w@t3c9T&z$5#t0L0+PiY1kQIS!^y?Mk+UDxEeaaL7&3TJDY>!2qL2XVO z@&H7C{_BQziSC%7S}SkIxyOH3{WHw!3UvnW_B&;0J;~F$N@%@agLnJ0br{+{(yb9^ zxM6^H96^iDu7MJ058m^4k{H?ng6aU1NftpHWx10GT3+b=B$*cci1gh)B9~|UG=M8? zY8r3zt7My>CYn6=NNbW2Z}S^@rfbOkUUT+2*WknQH_@3{Ynxj+yPe(c>C_#>^V#RJJYS?AU%7=gd%W?_iJmaV zXm4cuMG^+Q>t*%Hfzc^k(K8&N!9ac?cn6QfH+_J_WCh}b(Xn7?)S|W>guGZIsikSX zTyBrbpifEYj_%L?jMX?88XXIoyM)^4A>se?4zZ%?SiPZ5z8ZBHRjtj?uB2$w1Z=Tv z-HyHb_pm)&psov^D`N|nd0W^b%4{%3KEz~Ll7HxBQcFHayr*WE)Uc0RM;2i|&9dp4 zb-;XPqNK?5#=%yximhUvIAlI7zASo5_H`lwv%_455ScI1zf5#kvrbyb8IbiPS$?1{ zlzmu*nJau}9>d)%fqj0Jz&-)6&nzy1#3?rp_0SvWD0Ug)H;f`u?mTksk6mmiM&auq z1D!FM{Q)v2Aryla6es{mwe z`B^M*AcO8uhJ1`E>Hx*^QHB;rzV4YXCE->}@B<(FIMR*wbx;rIYz!@WLYcJ|FFXB< zD|yaUwCc({4}b{vrQ$2T#jvX_*=?}IhnkJf#?{@wFMP(vt_mg&tb!hx3QUVs+VKb* z3NEPI=$KnJGE?$o+axnGQ&13n4A-EM-lGJLF1JA)ci-sJOrpyzGK+JZNqKx+vJsYV z-_q8_A`#rmC-ikZigBlJ9X!wo`S=Kv>C48JP%;gkE5bma3B}Qu$P<@HRbu{ru^`Me z6o;9(3ecU`_nci#xvdp}?~wLi26FZ?c3 z1ttZ>5v9ITYuu0AaR?^W%{`qKM|7y!>R;^)&+IzGGa}qpnhq1er2~p5h5TfltjiqI|$`n~2bDCiT#VS)IhJ_BO)6 zz9LpXQo`yA+Tf0{nHd7lOujB#P73hzDL5eZ6!LJsQ-EtH`9LQFMYG)`uL9@jmq_#b zOG1!kNjX@MA%`cf5@g9$)XrAYg}&o1i5inaP*zCY%*n3t?d~swutO=i8Ab2p+&qvr zMsvd>pr`>&n*kWu_Y$-VrJfgYR2=UHbgB2k>Z%er(ciZePC-Uw1c& zw$|GS=LazQ!+?TL8l< zN-Gqp>y{$8^}X4?5B?^>$Q2Y#_M7X${YLzYs#xjyeBI&IJBl zhgdFESa0Qf;1#qoXwPan_S76lHj$)8sYOAEO1FVE9M=u{e7;N#(MV-M24bw~X}YEj zJZue&7;Isj>WT71Mg+Wp3al5b%y-J-~=J3LpGoj za_#6LML$iqQ}EsGZRooxAx8`H4qM0_gMFBOnmR5_H9};WZJuK?jbx*S8L9IDkQKLK z$py~IMqnNqhh<=NdW2sLW@e{rs&QH72u+gK$LMrR&mcT=ydM`EP#oKX41#X#$8(lz z+DOI17#`a_BigYs0lN|FmU8V-^P++;_IOPQCRwheGCNf}E+C!8wG!GuW18w@guk4c z7AuuOXPi__WJD2eroy3mDu=!5?}pmcJzlm)^KTemlOkxcMrQ_@rGSP%0_Lg>-Vs)GZ>!rYxPELyWReOgfAOvKpj-+_V)HOZe_dbeq8DIX&i>#p9q}R z;DyswLknSc=E~&F$w|9e?|g1IiCnSKWBi_1tM}V%P8*5q{zp|!1L7osI9a1E2(D9U z5hg`DP(TXIbmvY0DWXDB#+#m|78ovB^EBf);{{+G2pA=kGWl@*Nf-gM#iac26&wuU z5S*3$!;|(nEdoX>XcsWFG^aoA4-0 zQf|~%mZXd5bLT-c+y)t&4Vr^SNf@zi3L{FiI?~c41Crvv4Fyt@BA9d3NAI)@kKr8Q zG29G4OLNWBfYv0BR&oJ75JK17lg7T`$!Q`oT_YkH@DrG^Gol@<+ix@Ck*S;v7*oQp zEM@FShy{w~w`X(Hb>I*8K&N$1Kb-db;9%w^B^sUCpsAjUN^ATkt*1`#>^r6O8Is+r zOYt7_A?TY|OC?HGn^e6Nw(FHmBD3GDs;@P_o1?Lc8vh^C8j0X1)I4=cV58DjsD)s2 z3=RQ<3yp|DD`v2kFsMhwDHu*#|8%EasyL4J;JT-op0%OcW>Q=eVp47&mdcz(G@fQs zqwi%-=I(Qri&}PlP`H3-WQiE6rtN7;Bjg+aCW=EH7(|DafM~({KX+X8lskjoaB>u; ztan9VoCh}qgNgb@TxbGe!a_=BD#B^RkS~M+7z98~HTpj#+G&w0^uUCL#$y;LP7dQd z#Tw95fU$2jD6Rp1)8x_)51vqNmsH*-m&}riz8hg`|Ob4 z(Q8pORMoV$*_F&-JlH$>$(t7$@u+$3+OxM6PK(-Nu>S}Drv4akGrnkSX{!@zr8;N3 zR(wp{(niY+wiE5ETcevU9WZ3`Yn+`fX_Z_qTM9*oE>7P2(zxF7%I-gUv?kWC(u7E! zq=rJiD~LVU5|yq8Vx&1@EIF@LpCe|3Np<lq+b|#7pTc5h%Xm6mCR>6iTwZSnfsSM?W{up(AWf^%MkX6rCQK#-%aG z2GK?r>WY(Vkp<|3i9<5_aWpYFF^i8TA)G9!f%2P%0tclw+BNX94mmggOa#BJ05IMA zb4w)+ziqf-92B`*$W33Dz#lB*pmwhu?3=FolD4pT%3+ck5_Wf|cwTJKJ1kP;z_ayI z7j+2N^sUJ*=X!_KyyWU}h0#GS5Z7;crBdHUugMvR$NKXdCNQ^DQ-ztkLOl>%D9_y0 zV&?i8?1{P=ZWNs`mKm%LGsECwz>^5S+ZFJ84&!%^0C!IanU3=K4WWniYb*=5*Fe%4 z7S0CE{Dz90)mCF+KNe3P*V)Tr{_=AvK@sv^j=vif_#4Xdht2^R6nTxF1Zoh0%Nyr0 zfeS!j91p6bxb7YzEi`i;oqZ=e7uQIhB}BvBUY5bDn8Dk>a0YS4*&)!k5uuGhPH6)p z338G7x-kCsIdEhuH<_4tAoj;bqhM(FM>>n%{4N`^8YNmm-07Ndu|m5!sFsCK1S$#l#43vD! zvHD!8f5a{AJq$O6SUt~hHxZ@_b*;^Zgv=`_YHtV{wiJA)Zr{A&?g;qvrf?G3>|zhmOkn zxxj$U7K#6bQPL`y-uGoEUsI^^Vmg>5luF0UCHaUTKjsDs85s3e0P-l`! zT)LpFsRdy#vjjzYg-RsVtMnmXDB0s4YHV%jvNArsG3gdd1`5tK)mU4Guz!)dBluK# z_AeE)-$fksAd~4Kv@bE-ImGuYi4@im^w%pue-}f4i-35GOy?*I{VHkWfE?p#A=h10 zdfVK%2mVbA|9mO@eBh8P+{V2ew{p~9sX+ZIrv5Zg&kc7YCtXv$j(ztg%`Kh75ox*$ zpPN(jkZD8*o}Ex%|19?7gP>g4*A3ma-0V4I98=Nx)zcSv)=%bHzl2%8{-MMZg-I7a z=R)R}m%{x4f{UfZ@ZF1_oOkyJRZjQVG&^h(dM%xu&QQNKC~_MZYc%@o;SqTL&aJ5n zpO3VQWHOng!!gjOPi}nLJGcKj$w z@*KZa#Bq8M#MwVi5MF?>O)v=nERrg?N1m`k_F-FyX2?WiA4LG*FTQv&b&!} z+I|6kN`-uxZSqxT*!1=b@JqHY)H^b|FIO;yU&f~JHG<~XgxnV^nF3ty)IWfz1;3j4 z6wy*Dh+N))qx>x)ljDg?@UCeB`yFtE4D=iZ2V@V6qv?5f)mXULjxh3d6mF zKJc}i#eA`X#VqroPV!UeomZ}+cf3Jo7OvlY{Y?P78N%;AFqd0&I=;4z194I6g$TEK z0lk0jMcfI&b)7)}e@&DQ&71+_**JzQZ*ct4$Kfkpp;I40#?`lg`=e4Hr=KK8re>C3 zc?~w5H(y8Z+=xEF%~aQE@&{~-QZMF>?JaCx4SJ`@PEq(S$b6OtQY6<|{B=0t zDaxCm3BJjX9v;ywpSKSuM!u%gNomv18uVJVq1|%4X=6ce&~$cv-tIC><@$g_Yw8d* zHAvMOnc6Vo?=rV7wu?kfEp5Ah-P)v7Hnr}Ck7Bq!r?FE>x3rBJC2cxwTXSQLQ)!l{ zydJedWmHA_+BNd3TCGHGHYit>V76w+r?qu<0bfFTF*5jrtC? zQ?*8=Uj>_f84vLQL%YeQFTM(fcJV5*=5hxA-C~3P3^I7`Ox@F+(3#Jmv*wrU@EC?9 zE{x3#lP_IoQu99Ub2U%7FVsEdUidOL{C9{O_|{eY(_Lctx*uFEZ`m1a*&MMaPRRXg zCCfgA9uB;OEc*>19Fq1#VM0;3v=acw8FgL8yXW${)W7j^4KDI=mFFgBc^hIB# zxs{8!1Sc~x|LPaM4DXtu)1j^@ESr?UveTz;%cxe;-%3Tq6`!!s?llo}h{J)FM{|6t=UaQLuQ}t5pk)$`14K<8$*J zYUb6Ky-u@Er4HKlHc4Z1n_44Pnuc8?x`wFK(b+fi2}L-n{_W-_ky^j|pM=OoG`H@4 z=KZ^fXMgKeD?Lt&&Z^b6)9PAbdxuUXqnoRp2CZ_zqg30BKDA$Kkk_cCaU6H|+zzfp++;R>ya9vBA!3I5K{R93J0cAQV84c3#9!Kc90TTf~9P5eJfW8QtT^ zWt_n-<87i``Zkj}LmnLyrtU%n5zTp!b@I!R2Sw3EFTA!$3j5KyxEDX-eg}Q=k8`f& zafN8&v-D1bs2)$G{4U(feKeAKhu)bR{Pf3j(FC6P@*16f`E$Plk6sjUH@}6i_fjdy z(5BvkTx{xx$lHk0mu`I@-t#t{37x+m`!)F5V|R%*X%wAa(*yG>@cJU?>r>p=B(9N8 z4brKZ2=~P+=#TAPM1S1sub}6XkgA>iftY{xS;nqt88m z_p=a^pa2E_>ih7A3a$121)VqS6ZmVIJO)vHgILktF4rd<38lm;6$by@?cPvW9LjB}OzLWR z_U;j4mLG<6V`7&?Sg&kTG&eMvRdz*3eUqfMv7v#M$o1%NY^a(vbS#)v-7}(^rp`92 ztVS)9*eyy+Sg+rGDr-`!o4%yg>h5*4X@+a71^-m&n;?!c*VJI&^cCt`)DNiNsJcs~ zKLh^f6TZx4;y>=O>C2x1&vW@!1?Tj`(gS#AjC?eI2H#+~w~suOR?vsPNxtfvq@(B!zR8V6p;6`= zB*gg!194LEiGPy(O60|V6FvWY^y8kvuCX-`eMnstJ?;-Je&(z1 zfX8{`8!#Vy1|pm>=e*1qvgJ_Uii(D%Pb zi!v9lz4Wm+;JFuQ?!j~DotN=1&w7_1V(;?!L%L2d7hES~%a8Xv>qy#Ul1ir?{Kfpa z34hryEYdmG-FtT1aB|K$$e25V6F$wtlukk7oTlaZ4x>Fe{87fOv#8X9kX>h&Ry8+B zAk?vpIY+dO5ve=a-T%7Vu97K!B54+Bbi02gZ0hJhvCij@5bONSpfj{456e4R>5gW4 zhSf4Pw2Z_%#~2gSp=SMRnO*BXUe|&aOfEPEF^@@wW1g_tn$&5f3rppL9=NyrOMWi6=c3~VP=N>FvFy0;KwkC6gLLD@zmkCmra8~7450zEvXSnSq7^Ras z=i?@EMul5Kl%C`%{lK}DETyMQDcvNLZemJ@pd%%hPAp|Mmqy{4#RqGkHrF_vUc=O` zEh1_UmuD%Ub`w2wF2dadQS!4u@4KP?kUwLtl|X(`o|bNnc^11ZQk+uxT$)a zBZrw&r+D-DLIv~q3O0`~5j?*nB? z2iRCr*IBTa%*&+jFqXjCM`AnKg2)nozs^^rGwF3~IqS>yj-8kAxs&uTa9>4#*_U!= z^tpr0XbU~F8A*MbPMwc%4?cl@8Utf`66znFKJ~)Ku=!m17&4}zo|iriMsSPXdGL`> zd=ef`iPED9NYSU3=}dfV{w!{zS;3pbsiMu{v)Gir@ZpZ7~3PcSkf%0X_1LKN>#wBgoS4@h?%DNIw+_~`TU`3QsN9ZUI+6{Gri;p zHOFxC$nw@0ZmaI;FQ6u+OeX&%zMDBqayDm~%t=1s0|qown&RXl+a$ZcOkP=L(#yx; ztCr{L9mUDd!&R;1ZRjM_ub;-3DyJgcu@PGIZYbW{Kfb!Qh0SMZ9DP?325R-vpoBjs z+KEh^It^wpPp3mC@n*CpN^O7W^(%a%8G5$#kdm_$T;s=E3i*~J23DV&Qo0$rd+d6k zy-jS1F|@7IV^^v4cGHZX7I%nRG;w=R%=+`cJHnCSAKNF50Y#HW>~3glXm4urI!pnh zOC`7ZyY%5$?Wj)`4(U6M>cBq~*INCAkF{2*O~IM+T(1>#9b-}nA2(m~6s|ebV=;JP zY#Q>Frz;SB0TX?W&~%Qp1eGPaw>Vk9hi`xv%Hgv?eo=%K0mzp~;(v*O1|{?eZYQ~O zIdV@{Ah#E%?T7hdm7SXEeyk5miMYfVdfUt-De*f-?}TFWs~BO+JXEhl5Y?pKoyT+y zV|w~Sz_d0$OS+)G#Fsx*ACby0&5e5_CVkL5z9v^`y_ybl)F{)0G>&JQBRJq+b#Dz# zd%d&$mmLzxh`B4Ell{pPv!OGl8Ia5r*TwIOdG^jxH>ih#ua>9pX6Z?k+eBE6FsVyE zZlV4ucd`cg()$(2dl8ez-&H>^{~`PnsxfH6G1w%30Fr@LbX7110dC9ISFr!42@6XLe(6%H!-*OKLl>;il%AqOEA_}vhXqe z5krnI%|+zenB5sODr9A#*86oDX-#XDNcrsS(ePffH+wbC&X|K$HmS;kzI)lgYO4e_ z>UO!{ck|F=U4|UruKGTiyP68O_6N8oKISHS~+s)8N7 ziS6KZ!rtp7@;Vckv5&H46w-?@?v>W^$-$?lPGaEy`HOUf9SMWWKS*3=56a^Xx2`t#hh z>)E%DW@_s;^Js8vEa-|h)k!Ou+G`zRL%pCzCc@$mIxUDlICSkYO~4^|S{& z)JuXimA(Xq7CPngm9@azdn|AYn_i}$*QACkQSK_*eKyHtN8NLm${XJ!YUhJythv41~H=>3@H1dN8Cry8y@DY z>0SkETF2IO7F$y{imK3^(kznjTS6X;)KQjdI@w`!^X9sO{JO^xQvVFAxS1#>u0zUce{eE$3; z*p|LtVO#nZwv2ZO|L`A_ign2J2^Z0N`?I3 znG>LhB|^_k^w6U8$_AcYf{)6$m1FDE=zX7!q+X>n(@U?t{uYVucDnmVe+i7^;WjPW zx%1rfk8th5eb{XVhZe5lnW?jM>IO2h*RYIl&&1IE=RWq?H}R)N-@+5ZILlRt_F}V3 zCpOL$n%bAJseSzyZfezq$+|kXz`&O`ilJ(tys71PE7;xmW+wDB7vHa`2}5$yDzwG7UC>DzC)bw;;CDwcF8RULvVv)AWakNT(D+MFxSA$|Lw zJW+VZUG^T~?x)2q^5eC&l7<#lm9)xCx7JH)YmduY#P#)pKPukKeuLl3P7)p2a#p-i zY{e4{w}vb*ga^3xqoaHO8obs&0v39{f`x8l3(X!{aI(H)sWFTIg6M5p2%7c$L4JoC z9;vun4e#Bpa>6rwbr4pP-O5?nnTl1!uv<;%yGouTP!>te&SA=}&e7bK1-q<$`I9{!Q<86%N4Z_F`G7q>cj>S4R!#Neroz~&zmOY32 zAuZOWp9*?JCp#ki_Y=|NcR=%HxN;$gVN0*;%Lv%8IeDF8PB;s zjni7qq}QIi2SbwL>!g%&7z&)8433N~tX<<{6)riAOPHX$Zx}b-k3>?}MCsFKE@N3m zI?)(P_D#lSm)E8*-Y!J{!^t`yd5EblKfCmZ#<2UtDPO>Bk68w!U12iaRMtJx*%&jL zd@*N7Oy`OiB)TY`Zh8;THPtg}&_YL$QV z*rHE_w1X0n)8=xj@SM{^LjjGO2tF@#QT^1kpq0X7RXA05Ubn;zPYi&awC3!jo`Lux z(@;y@LFZ!Ym>X=uifls8r1U;K6*YitVune1-^+1GymWQ~ypU5P9976BR6?$er@jqS z-v-nt+JxltDb9;T&`)8K1~=(N5SmR9TxVy6$u|xWrw<@JRcZuNIFf3E$h(vD5v5yu z@o399ol3yK0#LH)MclQb|I?Aw0OoE?v}1C3&A^?N=GuTeIeb$wch&DxQY2siEs45v z0f0Tc7FO5)@DMjK7up>*VfC|rC`RMiBf8Pu>69JcQ8ni=3F<$AG z8LS3ze2y2X5zn9(8)@`Z1ZHtfAdouH|CP8av>N8F?0AAPuMv;!;xrWYuIM+F7eP8Y zQ_`GVO&Ryps_OHwJ*wTmd7qH|(62YJhSEFpXOFZtwx^$Qs@^YhUpL4*^u~6%V65nV ze76(t%Y!f#p4z7F3BEw3~p12J3$qVU2Jf_YucuKqoK{)TjgU6w3a zmSx$NOJup+ivg*PV<%q6FPp@h%}e$iz3f@%?90pB>|^q>Z_n91*^Oh3-v9gmFEE9i zAt~F*v55;@fb{)-zyH_2Pm9OIawjli&&ZaUSSkdFWoh07h_%DtzS&5n&j?uc>U<^j zTKx<2mF}lvZ7^Ud_+K9p!S5)|7LU#1@OHwqC3Cnz)b+`!jc~T-x|im&dC#N5`6Y`= zZZyi(=7p{fo1sPSLVts#&Yck5-dKBEjlVrD`pW&S&hz(pO*o_)1eJaoOv*gf!PfrOA_<7^Tl(qx2~Pz^A1A6OT}7vKyP7 z+ewK%0{lp`4;|^{(?Wif*qeQ`EGg&`I(-hacyi)XRV(v}2Ue17-%VV1WK-^dmUpOr zucLDkt zk1_t_Z^@&ol;#F&+`@>(d+V;MzaY#v{;ctU*Dcm)Dj2TwGB&Hl8)=i;(J|E4Onbe7 zK7~PM3WYS;9<#chsi(DUqwW*cXDBfFZw{r_-E3}Av`E`Tjm@ocwW*=KMPcum4))cP zimH@VWoVMNXls7C3VO0j@dh@VG@pMbfc>KSxsConv@c7|_i zL6_FnyXD-D{s{!(T^SdNK-hb=(*M3@kt}Hh;e61SK^AXJ(53o1^jE=DPJ}c(U#z~t)+X|a@HWQEGDfmW?Y_gs zst|9gN?d4btx>~Q;suRgo`-RzEo-Hj_hJ~Wti zN2W)^-X0eW7YpPPsZ87wF)JF_(<6KO5=&#dKKZ7_>B)KQB1!&|AK)^vOHxy#h|E5- z?Tyn;cHhX@sUBBLqdMZ!?6};!H`4VNM7sraAWgrWpktt-=_dglDp2X2uq>8^J$-x7E2Q=<2p{<~ z1Ct0JdBDd-hEsf8))9Q@NJ{%0LBu(t-GwQ}y?7%mAAwQFc<%tefbij80DSlX9}8qx z-%(PqdK543hr{?v-ywA94c-LUuSD1)QBZ zfpDhC>Uu}J;kG=@`C)-1KfRE|n+w!Cb|&xH*mqx;#mHIra6nTEu&r-cb8M|aUv1VF z$g<&F%hWT6Hh?cRd!(mj<;VWi*67R3jqU~nHy_k{{7S9I^~nN(;+dw5%iEV@3>xW1 z9M&ttu6m8@bp8QIJTgJhTqyjd%V4%S40?}fsESRpJMv|W&12LR>Za(``=j$}1)a+E z=sb>Iokt)gTO`c@($B4e^cJ3VtR*1T5|BPip!BSifBNA;x_o)Tj})CVX&jX0H!j@R>SpmdPZwlg4E1)>ZUlw4zKyyz3 zgqQ1&96t|`bdhbPt$WDE$^A!8oj&sf-kyQnEDAuqissKYbmWc+KrjBptdyCJDq;W$xhsGgkL~5=57{7W5D**#BXAp(-`{T zuwXvk*Am@_Ezx2%>{@Op?kLtUkw7yZut5&P6Vm86GTVDuP7^Uo6CjxhW- z0k}6d0qzSJxHk#FZc3q==KjEiJsGQ&r}qKw1q|GYDsX$zd0ni!P)lsZi&_iceFVPy zD)5D>(k^MW%aY+=L|?dBh4V9;!1>9!b#NY=K8wfBPh3E6k8A@tpCXNBlz=UjKD$VRF=MmLa7M{89zt?f45 zUl7`fC}&J2@}<2sQuZ?qECvehaM_B{f&SQ<#iRFf@O7=+&{Qk2%5+z%B>c00U9S^2 zoBTfWJ?&&7s`%+{(WjyxQAO%+sZs+_PlXsJW%$-sn6u8AB770Ok!Q*-Tv}JkyMPV( zti)Gx<>95vE`cSEe5V9?5`zpE`IwWluoO35>nk@AJ_Mz_1>v_B(G0l|TJ%zks34Yd zDF`BV$neI$6#Ao$g=!r>7$I=BG|{qBgDQmg?(~ASPSxv8cD27V4+zuJToxg>p%rg| z;PonWw>T8W>-35U&6Z%K7vS%A(ZcNgb#w04O;1HA5Qa@wLt~pp#uB10xwA~?->U33 zwJ5vt(?G5}`1PF`(WquV>Q?64+BLJz+h(s$8QxjwzZ^D61{#&#kv7>+6J{o_RmwEI zQBOx^#9u#bb2lj4tjv#-iw!3tzM&rXV8Y;Nkt;1VNH#;CYHD5;{e+qmNvM(yPRVS9 zx05)70T~NkhNmR3!iJAD+%1hqKpNvCNHCFcco_*vU?mbxEhy13IL~l0?B#`smzN`( zjlt(j;iWVD6q3Lc8Fe3Lc`>>gWJ_)_{Foc0j0DyQhn1N~)y$L|iHEj;zMQLiXekg2 z7m#t8B=4T0Wgk(7Hg71|Hv+N{n~^N)kko9j?yV8Fx}i(Xi^q{rI3_hNyDifOQaP9> z%_k!yL*GYps)_^~)GAU%>)trcxzZ+ASrKy|QC1AoN|dw4?d)>tR8}^Z(0y~~F00jP zHht-}zDu^hI>&fJy?r6Jqb;v&*Nke|h^SZc6EEYUA=! zF834OuK#Dw`IBXb-6{8#(0^N=w>)pJZ=+>NYT4n;<%8(|MAcVZPAB3$J&2}F^(_>w zHksReNvvCFq@H+5JHkc_&9x=DsEilulHhK0ktFZyLtM3m<7tPw%F)%jO;@FC6OM0} zy#bd_s|C5XiPvups<*pgPONCx#F4A#hpxXmkV>})n2ufZ9pjUJ?QqZ?c(qHT8c1n_ zNsqzYVY+-__6e8SF;R3qwqy9{H0$(q(AE}(Ql%-(x&7L@sAs-5sPv~Ajlub3-@f*9 z6IXBT8b~Ol4Iw{;Ui?dBlxs|=U_m}_RsX)N=yj#Q9! zr}IeSSt9YYl)r$)d|C=QMljf+BJHr0x&n2OEO@LPG#s_?3U(VTN+DmvE#lKzh_(Pa zihvFr^3F0hh)Q~mJBACoCSaOqh{Tr{P^h$PXe`-m(bg?B;O6YSHzYiJ`1u*ewae%ct?5? zOpY-aX2vH1xLalw9I*5P$V|3g)Km+1@hR>iQNfBuKyIj@WF7tC7V)~p1?X0LG%ghT zs@7Ed-Ym|4cwQCH`P`|v=4_`;eUx_j4b#D;YrS0!T@6-WD6Vf0HK{bwv>`R?lOu55 zxER_!kYStSGM!6FH*`+R42qU|g|xY`sa7PbF*LWeHZ_@aQf+hVp?yQ=E;q_tI(>&+ z64nOlT68k2dEfTV$@)%*#n)OF(b-v9NB@wwxV!!0=#wwl$D>TVL9e8B^(+5HO}EQy z8XFZYvId1rUazRP$XXiZH4TjhTHVxya0+KkSIq~=_U-{a&j3p6BBd5MYvMKNqCJ93 zVwxCU*>bn6qnLOrf>+Vl6o&MqN?AV2XO+2E~+Mm(~ z{TfR$ZU4iM-aRGT^V&P#yWmdS1HMdS+7S;XE}iae8M@MQIAfmbb|+eFYBxSRUa$EM zlF0*goTNz%1gkv0FlSnv5A{JCS3Kh#t1OtntAD5LxI7%GAU9-Up%(6ZtoIa9WKqtZwIT1WaR5})v13FenV0N{1 zMK~%(SSXU=qe^f(j4Yaa9Nu1+cprW3IRY_8)RWb!&t8WN8Q6x~m zq{6AmTuZ&x(UHjM`{oz-!#E&*55ORUfYUrmV)zsDJ9h0kgy);6=n^$O3(6xT<1}PJ zd|7S^ux;?o4hIcGgkXj}y#YXETg_*MkC1nA*Eif-I)VYU)6p@T>7F)x=LZiDr;g95 zjRv|!r!={IokBdmA^A?zK&X3qE*((H ztAh4*Qnl3Rr@b}M53Hn|RDeoS-zU4_`1)uhQg)JYYkpy;rU9X?h2ev($TaD~j)k8% z7JicIX=ec#JBT@(pF3(|} zZ@@fDNh7T19f&+6$aFVp*EGqwW-SL zLtf6-E0JLsBHsxyU?PUrJbR%ArmOnwVW&`=4?R?ehcrk^lK?|NyuX|iFPk^gw_Egq zNGt*53du@AHV@=d(tI=2f@R@6=Igrz!31I03NrDfbXn4s&SL*t51jL?7tsSGBwI~w ztz!~W%~)QJz~r^b(4X8#Tp_>N;x+50lIl8GW7jB%%~l|*>$VWvicu{$85Qbt$quWr zm3Bp)rgj%Pe~X_=MgJoD8Rel^DouTnB613o^Hy7nt4zT~voO3L{gFbxc81|BAA@&Y zbYQoT0hv z*5jTS_IW!kbnVKkB8k-E?>jxT^H;gKLQlZt3b*s3pRN3lpItm2a=AnD7Eg;prP3+o zhR&$(-zm)r4`Wh(J%4QK%~QvMU5;pO(9K<=aF0WA+)iC zRc|MS^jJ@%B!-7Oi=Jvb!`o}`mNUhk#a8sRBIQgybpzcSVasYGyvM5{NU)v0Ew;CJL>PEGjLcW0clddbhz_TjwMbx{V4DV$ zT!#KgX7Mw+Lf;UO!U%)$v`Kz;5!aN3!U-Za^#4W?c(OKE#m89{WIQ9Xs;j+;IIgkk zuB>`135bBW@u1{(QH4^YCk`o86>aW``QY5%mDm16rZLpZ zbjljKM%UV`k{DF9vZeV>Ypc1LR{Q#%Vh%d32R{7r``0bjNT4VDi*wz*gJDNh*HWY-tUPMZZ)8)(H zuwxd=2ROZq55TGrCXN@)s%6;Kjb`w4?aEPSy>~DCn*NP-0wdyDcL<8CuKoev%GmB- zboNKRT4=Ddb~+56(6Dm0zdPx09xS>&YtKH>PgU{9ChmOsrMFi+i#c{eq4F*=d4uXN zZd=?1X3-_I&vkzFTNXMrxc>MfbDl?6euQm+CMrZ_k*1meU4^BQCDP~6u}5T zP>Z8eG6{rl!Tm#?WXXdU$9fzfmq{#_X13f%Dv^ z;5JMenS~TT0M*3-=%cvPtkN5$J{+HnWoc4WyedF(r8h@iRb2N7GAI%WlgaNjG)S#R zMV32q@rczQ>v6g}3!Pc1&g6=l6prA4+!+uZ9~oXN&Sw>taK^SO)K6Z{ZDW{tqA#0C zWyd?4^x8jP_E`GD^LCkHOjP^TOFK3Sb!FJ@9%Z7vb{~@M$jX8s+a78X`4am@oq}v9 ziEI}H*%rx;Rf_~-%v>RY+ap;d;)aTdQ(%@HsK|AJ$hDiycUzG1iFK_LAebR^)&_>A z8u2zP5b6+4F;}b=cYQDVXb0KWvx6zS$txsl4anL~%82YtSwn^~9z;KxSU^H;OXUlb zAk;X`OVQ!WO<|iQK*MmAy~r(P@wgP;2wAfoh{axgXc6zg>ZN&w6BMdNk0fqPa$cG< zK~k#}PhbNlMdzBE6&kzL9SAwQ@m9FvB%T;?e{f(Y;K6-c!u+-^;6n1j6};?8`8;MT z)9tqVTL#l6W0OM3q=Su&!Q={A6(N-?pqI9oj2UUa=&|+inUHGRjV|3<{PZk@g2OGz zn7;p*!qj#kGpRH>2Xb8jwzt-Au>AbC%P#Bk%{yfQQR;qZ8uI!>+M2M#WutKJ=zocS zAK{6izD1Sn;FC7N76)~tTt`y5bxm*x)HNUn6L1B64)W%^f&yDCE{vi zD5heURyjr21z`X?{cR;95(tLD?b$}QqiNs-3PTgWv-XiBn}Q0i#S$X{Inqc6ZE{g zsD4o`g`3qlB|NeG>JwAqC)QYbVu=WEsys1w3$}?;t;8dUd|dXD2j`XYcJw@K=)u{9 z>>7G-TKwR&O7h@j>x%e<$H+;fTnq3^7-E`b$}OwjfZdCpZy=a}=WC-m+-ZiNFW)Py zx~`{7?J3|2FUiuR^f;J8+ECVl?SAAUEH_DPb~4I{S3zLdjpU*AMv@!k@qm5n8$`1< zZ!3sNY3U8IJ=VY4LRin~Y|!RoUzM7XiR61jLDPez_sP%j7tw!kJf`@mSp09W9DAub zQDluIOA=cS)~G+cH2Yd`0xu2c>HGtQ%1uKUr7R=2$e5B03t6UI$ByL@Nj*slgosc_ z$g7I9N%J|(0&Q7M-)$~!F+^w;Q@As6xxJ@v98SWKdL-~6B>18r`1Cjq=5s;%PD{3@ zIE1&s@^ugz{LKlTs(OX@w&n;xK#pOqdouLBEr8GyG@8AZ9%#LZInAL4QF0X$$W2_D z&-S_=2#LQkX`shObs_1o8|XGS>ohghx)N|Mj((~X{~6@-sQ-s5WgtdZX)_?W0QcU4 zG^&o_l}N<~NfM|4ja+=9g(Ua7Kd!py>lz1WaP}40+4l)V_lc`L1Y(lBt!MEe38rfV z`Q@c_rT}7PX|5Of9ndvM;bv5vc@@i+Ta-GBgKQ;-b_0snSy9)I z%9O>vu5RqsQxJn`XiTmXXf-<{T9>@b*5133e4PbcW1Bg?^IyhJenFiZjqTrOp6Hf2 zW|Gr;eD0W2(JWs1!S4RFkDd10^V8?_&z_h)RiLRCi5RqlG$=`LP7 z7>V$q3VV|+I5BGjX^k?R>f^GJNXtmv&NR77OZgZC$dT-#q+S{X<`-9s`qv9=41)1S z^iZ`r#JgA;i7sCl1kpwDdQQJ=nWAlV*wL`jIL;!71|7m&lD;EW8U5+LVJw^wc0$*R zrcDrykTEyaR5rz9-ig*r1_pybKvYnM<(Z?~|8A_YBQ%~r)Ytj$FP=;U17^1?bn>US z{`gOtMJqoGgcMoU9iEO@bK?>~V9NS?Li z1c`+s<#8ghaVIW-m_ia8!VMbzNMZpbF?J9l_jeQtu45Gbh7KnZ+^Ce7H2Yvx6jXoh#I6iC!Sd5ct4<5~k_GZx3)MpQ zy^sm3bYt*r63I8)jhlMI*k0|BEt}hh@cFtEW)e5IK#3P!s>k*0+=9@AF^h903p+`{ zI^T>wNH7W2FMN9e?1~YdYLIqf^MC?8W$*qIOY_ ziH->8GB#S7NO_bXXcVV6M<)=1ihvnKFG7$HAqZbZ34(Sb1RZ7gnFbuDH3E=M_+PPB$I~cL3uIhacJusoZ+BJs_5t< zF&Cte#NS2Olu`z&gNjkz)SIL#mJc-CEh+3-mSszAU_go^d=yy>dRD~c7*6tW)y9+Z zaU^*!I((4b7zA^UL{R{6GSm|w1BtO>Qe|`D)ujlfk+j1u+-|F8T zl!XoUuB4?DD-I0X5=X1=W^9Sn2vfR2b}1G=&5M5*JyRX!q9Rm=8luP6xk#CNK)%~IpkcItr0w^q8- zSi1YyN_Vj;-5ff|2N{Sbi@1YW$oq+q_e=RDB$Wvy*$F8>vnpiix*3lkav2u+dRZ^` zH=5CDoghDkB;CJ$xWei*IROHP(BH7MA0RM|^W5Abg1`)cfRyGi48-f|66nD&wf0?t3VTE3|5d)ZZ7opc2*Q7mC|5T zs7wo;UYnss=8C$El6sfu8~4Rh9X0u>LR><=nwttyom3v36MseF^2>6X*aW^r5uu1{ zSXYdR4qv94xTVl(Jj8JNkD=`g@_j{eKqL`9kR6%9i;p3!4JDdj5J2$CL*r30eq3c! zt|fRF2K%sB(Wpt71H>mFq2NL|P|&hFR0G|j_C?9`AC3W!fNyVub6VX%TE1zTZ^Ct! z*g4373*n0PB?TYNC|bV*uTofvlY^jXg#@7>NF+w*#y4vI-NoZquPr@&b;n$nER^b+ zJ>cFy{;OZqG}4w}PvF}D>#usZ|MF}7gI?Q_+biEBuRCl^E!=N`6S{B}{qp>xeAo;mUzK-;Kg7qSfuraF>n>9EE2N7QU^!`o}Sje1> z#`3-A#xDHZ~Gt8P#J=!ZWKO%3^qLl-~V8wfHZ$Bt(| zcUXRUZ+vNc&VAYbX8%%mXmHnpvqdFp8~ZNzWF^P?m74d_a|%*vst28l|2I|gz>`u& z_?QISuDzs;%tRhoS^`lA5jTO)Kn;0d8uGvjEvr(}x6thJ!0$FRZ) zNzBm!a=;B#&CyACtQw&%oX^0>*;Z2;o}h&0J+UO-RELz81q{{tUYt@L5Snv)v6nLd zwkl_$d1|QQ63aE+aG!@1gx|OCR**pk43(;g+)(o2+8_{lrI1(z6*^{DHWKb`Q|UJf zM-bb9GhlL6Wpu#ka2T4Ahw*$%!V&202^w`Z8)S99?oS0l{&@PyH@ELqwXKueO4Mo4 zyBo}LH?{*;7HhtVPhY+<@*~o|!gnCiE6dCQuc6 zT46COqb8T9ODYturX(>XM}0%@W}Q=+!XGX&I;n<(d%~W+6dW z9wb(Xea+6lLDI==B-Nfm;gAq`PO)${;;sP(Ud7g>UfbbULgWw#G39pr3c5@AG1%y5 zDfH`!kH~9XFsKCEGD?Ui^D!^Fp*bLn;`o&oITm-6?M8b?XhP`8M_x!04B-BC2{w_C zS9@UNSK@vdHE}hgR!yjh>Kr~vuh*0HT9o=h*6s`KPKEmIN^`i;Vb-osp&eJ5a&3w= zX?4G}5Y`M2khb95Y$ypWSUug|a7Tt!bab}$-!E-8;Wri%(jLn=@l8foY6RJ)kz}W+ zCF&q#5wLWJh;%0f>E@A4RSZAf0-YM%LWJK@3rdc&GJH@F@*ynbNuf9l#B-n$B)~=f zP9kI{F2pXg!ZaEdg2}^3$iobhKc~gr=;SjNpZObQ-brNMS&=y>XSsIiYG?w_vDCXDwvi1M91R+F8bY6PNYv6ijoeSp zD*MRT?(~J(PCV#82qoZrehAOAy9XnW(u8|otW<2=wQYmzQPY_yFu{D%{}9MIuXnlP z4*MV77eG54*6wh3cer37y?plt(&g-0M$T^e)10jo-))h@^g1l zN2n{J#|1mtB%;p`Ml`hdAKmx(U9z?LIIwvmNVAtMNBBMfJfLc|oBVk3B1W+nZ9x;~3^&OFKT z&*M!k@QP-u@JkZVB{#s2ETP~|Ft|r$-(dv5j^S|!IZ${Tvf%g;EpezW(_8^5mYrk> z;yisPuFA}8KZ+MbWWfrd_?ffl`&#*l%cS(~_WX`hr!U}6^4&6Ai^|#Pk4)_@KO0Hn zNeT?^aVrd?-yGixkPp$ex;Y|YY05fGs@InnB-WLeV4P-CgKT8bXZJh=P?u<(wy{~R z(cQsN{iP!=6M0QWe@#2P5w?5nu0nKRAnHlCS-T(M0Q}_NYvsnKTCGEOr2^bPgB^$B zX0y+4YHEb8RAj%7e>yAHB3}&b*8ysg`U|Q=Lx2`pIg_>6c}E6NrWIR0i3qQ2xyze; zEJEsbhEsoB9wt~ACc_R^vu7;AV>8QJWp_#Gt6xLis!gfd&@B|pP3qH`% zoEQ31)*GvC!C+mT`qCiOjwI0Qy47?j?q06WG_nbH4=z{_*3|rwGnkLC1xbrEsSU*P z2Q!}bnSr4|emXz%0!{BcFzj4d`B5k?k$a8NWS2;+v)VOUhht@+BiLdMPsdz}XugrQ z$D2|ep`KnwudHcpbtVT3=BdZ#=1%0lGE)E4+{uD=?DF{m_5N;EfVFIorH}l`!P@Ow zon7<~Qwe=M9Wd1!uBPN20VDRS$3JZptC1|hmhGqJsiPt_RcgaEA`yNMlBNxJ2;?D( zj^$cJDsGa2!Xj>g;bIY9jl`?>fOwB#hfdH=+oe$aQ|=^Jol?G0v>G5M?wtuq+C-p1;piPgP({{W7JB3OgWGXlgzH4+${r-QM%nF_Hhmz5d)embQj^6d^byQ}6LPyg zmG2#x6iy5`bf=Z;JXCQ6BOx_O8d}@vkHp#Dp^>qfIXp24%E|ZzJZp$jn6yrBAk+yT zsA=>Q6-*Gbc56V?uS0~;0@-kHNCx_sHe!VHr>3q>8UmXEB(d_}s|fj6X*Q`0T65i0 z5@Iq&wo$b5{qwP_*YBVieZ+!12@G%~nIUQKEa=NPUh!g~=~sGx8dxIbRAxDolF z<$iM2PYfNtwGF$$TJ%Rh#z`g7*NH%4s@7w}Y0x@|Y!WYQ?COW`fPVzXYI998wcgU` z2*x5~LglX#xjqO-B_q{^%e2)nyss6y*ks_p@FP$IZv#~2Bx1KeZ0by9@mfbOw4)&1 zfj0xyY-nx79m3x8O=MvLiHNNg~e>yB?SIiJpSgyUK)2HErD08 zJB-KRaP3L%Ia#SSb2N#^j+RoB+u+p9#HhBLt{zn@Jj$$1IC~C#Y2%?( z4tpHo7JG|RVbOJl&@qv4t1Z$-ks-zy0}k20U2{~4m<>nLC;wnfMI9lz+twe9YTfBh zY;%vV{DIhraXd@yqs~)Ts2kMFq7PSbd;;UR)I}i^JV{1pxS_*gkl_P;kqCcFa+eQ1 z&9Y?{e^`ELJb41TY%d^yzeE6@`yBds>Jol`N&;wX)W`sBb?{u>)|0--IIYbz+X9O5<0*~+m2D~6Ew+_zjJOz-w3Jck|Z5aQ3 zQ`Sp(!Bn1%ia^fda(y7g!dtEw?j)jk7E&Bcl26{EWu=&R0O-?2mpmiS!mF2X$ozyr zkNpBY=CC#*O-b^M!(gn*=*1@=-cV` z7MVub*lx?lST^R38e)U99S`7$GZJ-l>bfGih~Ak_Py$DC!dbr^d8AKL*Qpn%H$?BR za^ws->)i~FZVoYAe}sPpS%lBA;OKRcU2d;4eExYviU~rBInV^x7=Bs;Wfnpc?t<6GWDzjQH#&UH;72-Oz+At?0Gok5^|5wqeo z*>da965dksIhrr-hv~nvTodAjJJLUGz4ja)qEf(`Aql<(-w2$rBTl?BgnlaKB&nk! z9z<0g@|Jvw~r+)D2-&mzGtyHIz`r5;;gjODKGwC7L$HvksX65%bWyuwr#cZ`1 zZPsUwX_Q`7esh+r{1=t=^KV~Z23(5V$f2hWw^_7`wsyI-I}wdW5mDkp^BqQwUZmTS zEdOXpC+$&dvNsx6`?6gESAy90wNVSyLFx(W8g+|$UG&Z>R~{o=@gWxpF(l5E!-O8g z3^x$rpGRzXnnfCc@411L%Vfh{-hK(e?+U}uqK^(S+@7^Wc>@#WC;{eCDSvM5u21eY zfOsX{&6HoOe89gXf;dw7IYOyxEccvr+4x+t%~uWzbDo$=0o`*Xl`fE`cfEeO6sgpr zFKi$U=fae!+GhM0(2txuN)*U`7<;LE4B`7VOqHOlH2nDU_`Ih9%gChKwg+d$5&jLZ zQ}-jP*_s-dz4A1nQ^^;OLkWer7t<#~BGK^_QX!Eb9`OFk^XL;-ZV;?`{xN|ghXjsn z!#l7ZO@9b8DApug@vcwIku_$0N<^Cf9zuaA)zAfKN1r#~7m(E0iXdMNrj*R~Y-(US zm5rJlL0c#r8FkT4E1h>ob*i8x;tqz=4tKWZ4>x7V1-Dw|N~t}Uocr4}+LUn%Ju;av zr@9;lwbrbcE9o|+EgsQ$5<~rwNT=5nDx?eP2WXOj&lh-+VVe~JpGaql1?zzlhe;P5diq~^*Ut!Or>VXjBCBu zyB6Psae!Y#z%6R{aFBNfnJ@+1c+vUq7aCslBHXKj#=LLS8 z5csic@6kuMuPSYk4Z;)!p*D4`0s%(^R{|nWB$5?v&5=rdAPoN_RfSlMBd z(~fj1Y>P>BTBBX+b+`jH2Bc16I!%W=+^(=`70R{%cqft?dsE@;rkoj7=+t^wjq;Mn zY_%9f26Ik)wOc7yb}Kh$PkdW$dZ0Z%6dH-xYo#8uJ2>jDu~@njEF1SAk3~|Wi!r94 zO&T2<+mc0lO-i-1jn*b^nK~2Zur+n&j7uGlD!qhDKNh%j3~8DdsV`FRQQx9|Ao|}| zxpbXyX@MyPhGr0T`0pS#z4Sh^=vkzFzR#4#U;idBYA0b-&(XILqn499zu)MCL4a^_ z+tH2tStvsMGJ4|@!<}8rFAnqT3gOW9D=@3z+XUQKr2Kag+IO+#uM $8ukl!a}(6 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

                W{OJqc?09;2=yriWkASi#}zfBGqsE8 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

                %=46m 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

                +ztB7VP6316bDOyGk);E4{&rjQh0 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%0D4tg*`)C=py>f{K^yLUukZWx%0 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 z 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%0AKVLoNF2ytkR#3`# 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

                Imu0{Bj!NGf6thdvRn^jRU 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 literal 5646 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 I6l?y!0J7H>SpWb4 diff --git a/lib/tcpdf/fonts/freeserifb.php b/lib/tcpdf/fonts/freeserifb.php index 4392c8096c8..820d5680878 100644 --- a/lib/tcpdf/fonts/freeserifb.php +++ b/lib/tcpdf/fonts/freeserifb.php @@ -4,12 +4,12 @@ $type='TrueTypeUnicode'; $name='FreeSerifBold'; $up=-125; $ut=50; -$dw=700; +$dw=600; $diff=''; -$originalsize=615292; +$originalsize=1310828; $enc=''; $file='freeserifb.z'; $ctg='freeserifb.ctg.z'; -$desc=array('Flags'=>32,'FontBBox'=>'[-796 -306 1830 932]','ItalicAngle'=>0,'Ascent'=>900,'Descent'=>-300,'Leading'=>90,'CapHeight'=>676,'XHeight'=>461,'StemV'=>123,'StemH'=>53,'AvgWidth'=>426,'MaxWidth'=>1850,'MissingWidth'=>700); -$cw=array(0=>700,32=>250,33=>333,34=>555,35=>500,36=>500,37=>1000,38=>833,39=>278,40=>333,41=>333,42=>507,43=>676,44=>250,45=>333,46=>250,47=>278,48=>500,49=>500,50=>500,51=>500,52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>333,59=>333,60=>676,61=>676,62=>676,63=>500,64=>930,65=>722,66=>667,67=>722,68=>724,69=>667,70=>611,71=>778,72=>774,73=>386,74=>500,75=>764,76=>664,77=>943,78=>722,79=>778,80=>611,81=>778,82=>712,83=>556,84=>667,85=>722,86=>722,87=>1000,88=>722,89=>722,90=>667,91=>333,92=>278,93=>333,94=>581,95=>500,96=>333,97=>500,98=>546,99=>444,100=>556,101=>444,102=>333,103=>500,104=>556,105=>278,106=>333,107=>556,108=>278,109=>833,110=>556,111=>500,112=>549,113=>547,114=>444,115=>389,116=>333,117=>556,118=>500,119=>722,120=>500,121=>500,122=>444,123=>394,124=>220,125=>394,126=>520,160=>250,161=>333,162=>500,163=>500,164=>500,165=>500,166=>220,167=>500,168=>333,169=>747,170=>300,171=>500,172=>680,173=>333,174=>747,175=>333,176=>400,177=>676,178=>300,179=>300,180=>333,181=>556,182=>540,183=>250,184=>333,185=>270,186=>330,187=>500,188=>750,189=>750,190=>750,191=>500,192=>722,193=>722,194=>722,195=>722,196=>722,197=>722,198=>1000,199=>722,200=>667,201=>667,202=>667,203=>667,204=>389,205=>389,206=>389,207=>389,208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>676,216=>778,217=>722,218=>722,219=>722,220=>722,221=>722,222=>632,223=>556,224=>500,225=>500,226=>500,227=>500,228=>500,229=>500,230=>703,231=>444,232=>444,233=>444,234=>444,235=>444,236=>278,237=>278,238=>278,239=>278,240=>500,241=>556,242=>500,243=>500,244=>500,245=>500,246=>500,247=>676,248=>500,249=>556,250=>556,251=>556,252=>556,253=>500,254=>556,255=>500,256=>722,257=>500,258=>722,259=>500,260=>722,261=>500,262=>722,263=>444,264=>722,265=>444,266=>722,267=>444,268=>722,269=>444,270=>722,271=>692,272=>722,273=>556,274=>667,275=>444,276=>667,277=>444,278=>667,279=>444,280=>667,281=>444,282=>667,283=>444,284=>778,285=>500,286=>778,287=>500,288=>778,289=>500,290=>778,291=>500,292=>778,293=>556,294=>778,295=>556,296=>389,297=>278,298=>389,299=>278,300=>389,301=>278,302=>389,303=>278,304=>389,305=>278,306=>882,307=>533,308=>500,309=>338,310=>778,311=>556,312=>534,313=>667,314=>278,315=>667,316=>278,317=>667,318=>433,319=>667,320=>528,321=>667,322=>278,323=>722,324=>556,325=>722,326=>556,327=>722,328=>556,329=>666,330=>829,331=>556,332=>778,333=>500,334=>778,335=>500,336=>778,337=>500,338=>1000,339=>717,340=>722,341=>444,342=>722,343=>444,344=>722,345=>444,346=>556,347=>389,348=>556,349=>389,350=>556,351=>389,352=>556,353=>389,354=>667,355=>333,356=>667,357=>488,358=>667,359=>333,360=>722,361=>556,362=>722,363=>556,364=>722,365=>556,366=>722,367=>556,368=>722,369=>556,370=>722,371=>556,372=>1000,373=>722,374=>722,375=>500,376=>722,377=>667,378=>444,379=>667,380=>444,381=>667,382=>444,383=>333,384=>556,385=>805,386=>659,387=>556,388=>667,389=>556,390=>722,391=>915,392=>605,393=>722,394=>862,395=>667,396=>556,397=>550,398=>667,399=>818,400=>631,401=>611,402=>333,403=>903,404=>776,405=>807,406=>327,407=>389,408=>887,409=>556,410=>278,411=>495,412=>1000,413=>864,414=>556,415=>828,416=>793,417=>584,418=>1192,419=>795,420=>749,421=>556,422=>748,423=>556,424=>389,425=>650,426=>465,427=>333,428=>667,429=>333,430=>667,431=>768,432=>620,433=>811,434=>685,435=>853,436=>705,437=>667,438=>444,439=>593,440=>654,441=>508,442=>500,443=>500,444=>654,445=>520,446=>444,447=>611,448=>220,449=>418,450=>570,451=>333,452=>1331,453=>1158,454=>990,455=>1134,456=>977,457=>611,458=>1200,459=>1015,460=>879,461=>722,462=>500,463=>386,464=>278,465=>778,466=>500,467=>722,468=>556,469=>722,470=>556,471=>722,472=>556,473=>722,474=>556,475=>722,476=>556,477=>444,478=>722,479=>500,480=>722,481=>500,482=>1000,483=>703,484=>778,485=>500,486=>778,487=>500,488=>764,489=>556,490=>778,491=>500,492=>778,493=>500,494=>593,495=>502,496=>338,497=>1331,498=>1158,499=>990,500=>778,501=>500,502=>995,503=>603,504=>722,505=>556,506=>722,507=>500,508=>1000,509=>703,510=>778,511=>500,512=>722,513=>500,514=>722,515=>500,516=>667,517=>444,518=>667,519=>444,520=>386,521=>278,522=>386,523=>278,524=>778,525=>500,526=>778,527=>500,528=>712,529=>444,530=>712,531=>444,532=>722,533=>556,534=>722,535=>556,536=>556,537=>389,538=>667,539=>333,540=>464,541=>455,542=>774,543=>556,544=>731,545=>649,546=>568,547=>494,548=>667,549=>444,550=>722,551=>500,552=>667,553=>444,554=>778,555=>500,556=>778,557=>500,558=>778,559=>500,560=>778,561=>500,562=>722,563=>500,564=>437,565=>636,566=>415,567=>338,568=>776,569=>760,570=>722,571=>722,572=>444,573=>664,574=>667,575=>389,576=>451,577=>505,578=>479,579=>686,580=>750,581=>722,582=>667,583=>478,584=>500,585=>333,586=>808,587=>608,588=>712,589=>444,590=>722,591=>500,592=>500,593=>523,594=>523,595=>556,596=>444,597=>468,598=>658,599=>659,600=>444,601=>444,602=>611,603=>440,604=>440,605=>611,606=>459,607=>333,608=>665,609=>500,610=>556,611=>550,612=>582,613=>556,614=>556,615=>556,616=>293,617=>333,618=>278,619=>369,620=>397,621=>389,622=>667,623=>833,624=>833,625=>833,626=>556,627=>673,628=>589,629=>500,630=>744,631=>715,632=>667,633=>444,634=>444,635=>564,636=>444,637=>444,638=>394,639=>394,640=>556,641=>556,642=>389,643=>503,644=>507,645=>507,646=>560,647=>333,648=>394,649=>500,650=>557,651=>529,652=>500,653=>722,654=>500,655=>500,656=>672,657=>492,658=>502,659=>502,660=>500,661=>500,662=>500,663=>444,664=>778,665=>545,666=>460,667=>722,668=>556,669=>438,670=>556,671=>444,672=>666,673=>500,674=>500,675=>872,676=>878,677=>926,678=>645,679=>634,680=>724,681=>825,682=>636,683=>604,684=>490,685=>500,686=>611,687=>722,688=>378,689=>378,690=>226,691=>301,692=>301,693=>301,694=>378,695=>490,696=>340,697=>250,698=>408,699=>250,700=>250,701=>250,702=>300,703=>300,704=>340,705=>340,706=>333,707=>333,708=>333,709=>333,710=>333,711=>333,712=>333,713=>333,714=>333,715=>333,716=>300,717=>333,718=>333,719=>333,720=>278,721=>278,722=>300,723=>300,724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,731=>333,732=>333,733=>400,734=>333,735=>352,736=>374,737=>189,738=>264,739=>340,740=>340,741=>526,742=>526,743=>526,744=>526,745=>526,746=>519,747=>519,748=>333,749=>333,750=>480,751=>333,752=>333,753=>333,754=>333,755=>327,756=>261,757=>437,758=>437,759=>400,760=>278,761=>175,762=>175,763=>175,764=>175,765=>333,766=>337,767=>432,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,859=>0,860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,884=>199,885=>199,890=>0,894=>333,900=>330,901=>415,902=>722,903=>250,904=>811,905=>938,906=>556,908=>840,910=>886,911=>879,912=>330,913=>722,914=>667,915=>611,916=>759,917=>667,918=>667,919=>774,920=>778,921=>386,922=>777,923=>722,924=>943,925=>722,926=>650,927=>778,928=>812,929=>611,931=>650,932=>667,933=>738,934=>868,935=>722,936=>924,937=>811,938=>386,939=>738,940=>605,941=>440,942=>605,943=>330,944=>550,945=>605,946=>550,947=>550,948=>550,949=>440,950=>495,951=>605,952=>550,953=>330,954=>608,955=>495,956=>605,957=>495,958=>495,959=>550,960=>605,961=>550,962=>440,963=>550,964=>440,965=>550,966=>660,967=>495,968=>715,969=>715,970=>330,971=>550,972=>550,973=>550,974=>715,976=>550,977=>605,978=>722,979=>871,980=>722,981=>660,982=>715,983=>550,984=>611,985=>550,986=>650,987=>514,988=>611,989=>513,990=>715,991=>439,992=>722,993=>605,994=>1022,995=>715,996=>626,997=>576,998=>616,999=>544,1000=>539,1001=>441,1002=>932,1003=>653,1004=>593,1005=>513,1006=>654,1007=>517,1008=>550,1009=>550,1010=>477,1011=>333,1012=>828,1013=>424,1014=>424,1015=>632,1016=>575,1017=>722,1018=>943,1019=>809,1020=>550,1021=>722,1022=>722,1023=>722,1024=>666,1025=>666,1026=>852,1027=>617,1028=>733,1029=>568,1030=>400,1031=>400,1032=>513,1033=>1062,1034=>1057,1035=>899,1036=>769,1037=>788,1038=>731,1039=>788,1040=>704,1041=>659,1042=>678,1043=>617,1044=>718,1045=>666,1046=>1104,1047=>654,1048=>788,1049=>788,1050=>769,1051=>793,1052=>957,1053=>788,1054=>828,1055=>814,1056=>659,1057=>733,1058=>649,1059=>731,1060=>864,1061=>715,1062=>788,1063=>768,1064=>1129,1065=>1129,1066=>794,1067=>984,1068=>659,1069=>747,1070=>1136,1071=>734,1072=>528,1073=>567,1074=>545,1075=>439,1076=>565,1077=>511,1078=>805,1079=>495,1080=>572,1081=>572,1082=>566,1083=>551,1084=>682,1085=>572,1086=>571,1087=>572,1088=>591,1089=>495,1090=>501,1091=>496,1092=>879,1093=>502,1094=>566,1095=>564,1096=>833,1097=>827,1098=>647,1099=>764,1100=>545,1101=>539,1102=>800,1103=>563,1104=>511,1105=>511,1106=>592,1107=>439,1108=>539,1109=>436,1110=>291,1111=>291,1112=>333,1113=>812,1114=>824,1115=>570,1116=>566,1117=>572,1118=>496,1119=>572,1120=>1066,1121=>769,1122=>796,1123=>648,1124=>1033,1125=>778,1126=>977,1127=>685,1128=>1363,1129=>971,1130=>1086,1131=>778,1132=>1466,1133=>1062,1134=>650,1135=>462,1136=>974,1137=>771,1138=>828,1139=>661,1140=>808,1141=>578,1142=>808,1143=>590,1144=>1318,1145=>1014,1146=>992,1147=>744,1148=>1066,1149=>769,1150=>1066,1151=>769,1152=>694,1153=>483,1154=>258,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,1162=>788,1163=>569,1164=>659,1165=>548,1166=>659,1167=>594,1168=>618,1169=>459,1170=>618,1171=>439,1172=>666,1173=>585,1174=>1155,1175=>843,1176=>670,1177=>495,1178=>833,1179=>610,1180=>815,1181=>597,1182=>901,1183=>676,1184=>874,1185=>636,1186=>788,1187=>572,1188=>986,1189=>693,1190=>1086,1191=>864,1192=>913,1193=>666,1194=>733,1195=>495,1196=>649,1197=>501,1198=>712,1199=>609,1200=>712,1201=>609,1202=>790,1203=>567,1204=>1043,1205=>785,1206=>768,1207=>562,1208=>824,1209=>598,1210=>768,1211=>570,1212=>960,1213=>637,1214=>960,1215=>637,1216=>400,1217=>1104,1218=>805,1219=>742,1220=>557,1221=>793,1222=>551,1223=>788,1224=>570,1225=>788,1226=>572,1227=>768,1228=>564,1229=>957,1230=>682,1231=>400,1232=>704,1233=>528,1234=>704,1235=>528,1236=>989,1237=>725,1238=>667,1239=>511,1240=>818,1241=>511,1242=>818,1243=>511,1244=>1104,1245=>805,1246=>654,1247=>495,1248=>644,1249=>472,1250=>788,1251=>572,1252=>788,1253=>572,1254=>828,1255=>571,1256=>828,1257=>571,1258=>828,1259=>571,1260=>747,1261=>539,1262=>731,1263=>496,1264=>731,1265=>496,1266=>731,1267=>500,1268=>768,1269=>564,1270=>627,1271=>435,1272=>984,1273=>764,1296=>660,1297=>495,1298=>793,1299=>551,1306=>818,1307=>588,1308=>994,1309=>716,1310=>769,1311=>566,1329=>889,1330=>787,1331=>858,1332=>941,1333=>775,1334=>765,1335=>805,1336=>762,1337=>938,1338=>869,1339=>765,1340=>756,1341=>966,1342=>992,1343=>748,1344=>469,1345=>731,1346=>941,1347=>745,1348=>966,1349=>641,1350=>929,1351=>774,1352=>779,1353=>784,1354=>841,1355=>775,1356=>955,1357=>779,1358=>927,1359=>555,1360=>763,1361=>641,1362=>656,1363=>824,1364=>869,1365=>768,1366=>754,1369=>300,1370=>300,1371=>270,1372=>307,1373=>270,1374=>324,1375=>322,1377=>818,1378=>548,1379=>601,1380=>608,1381=>551,1382=>547,1383=>496,1384=>548,1385=>586,1386=>585,1387=>548,1388=>269,1389=>798,1390=>594,1391=>544,1392=>548,1393=>513,1394=>583,1395=>560,1396=>551,1397=>397,1398=>567,1399=>447,1400=>548,1401=>411,1402=>810,1403=>464,1404=>548,1405=>551,1406=>595,1407=>821,1408=>548,1409=>557,1410=>312,1411=>821,1412=>550,1413=>511,1414=>668,1415=>602,1417=>333,1418=>349,1425=>0,1426=>0,1427=>0,1428=>0,1429=>0,1430=>0,1431=>0,1432=>0,1433=>0,1434=>0,1435=>0,1436=>0,1437=>0,1438=>0,1439=>0,1440=>0,1441=>0,1442=>0,1443=>0,1444=>0,1445=>0,1446=>0,1447=>0,1448=>0,1449=>0,1450=>0,1451=>0,1452=>0,1453=>0,1454=>0,1455=>0,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0,1467=>0,1468=>0,1469=>0,1470=>433,1471=>0,1472=>155,1473=>0,1474=>0,1475=>400,1476=>0,1477=>0,1478=>347,1479=>0,1488=>593,1489=>498,1490=>339,1491=>523,1492=>561,1493=>266,1494=>291,1495=>559,1496=>576,1497=>266,1498=>496,1499=>501,1500=>510,1501=>542,1502=>581,1503=>273,1504=>347,1505=>512,1506=>552,1507=>493,1508=>491,1509=>537,1510=>561,1511=>544,1512=>502,1513=>716,1514=>571,1520=>532,1521=>532,1522=>532,1523=>396,1524=>432,3585=>590,3586=>578,3587=>661,3588=>592,3589=>592,3590=>699,3591=>447,3592=>534,3593=>692,3594=>578,3595=>659,3596=>899,3597=>804,3598=>633,3599=>637,3600=>484,3601=>730,3602=>876,3603=>915,3604=>592,3605=>592,3606=>578,3607=>670,3608=>542,3609=>671,3610=>621,3611=>618,3612=>621,3613=>617,3614=>708,3615=>708,3616=>637,3617=>589,3618=>552,3619=>484,3620=>590,3621=>569,3622=>637,3623=>526,3624=>599,3625=>802,3626=>579,3627=>668,3628=>778,3629=>560,3630=>514,3631=>510,3632=>412,3633=>0,3634=>423,3635=>452,3636=>0,3637=>0,3638=>0,3639=>0,3640=>0,3641=>0,3642=>0,3647=>665,3648=>357,3649=>624,3650=>529,3651=>486,3652=>475,3653=>423,3654=>500,3655=>0,3656=>0,3657=>0,3658=>0,3659=>0,3660=>0,3661=>0,3662=>0,3663=>657,3664=>548,3665=>548,3666=>592,3667=>614,3668=>631,3669=>643,3670=>508,3671=>744,3672=>622,3673=>585,3674=>721,3675=>1381,4256=>540,4257=>544,4258=>639,4259=>718,4260=>553,4261=>545,4262=>541,4263=>810,4264=>540,4265=>541,4266=>921,4267=>540,4268=>529,4269=>810,4270=>540,4271=>540,4272=>810,4273=>545,4274=>642,4275=>643,4276=>659,4277=>538,4278=>718,4279=>541,4280=>592,4281=>535,4282=>586,4283=>540,4284=>628,4285=>521,4286=>548,4287=>630,4288=>541,4289=>541,4290=>660,4291=>544,4292=>542,4293=>498,4304=>522,4305=>518,4306=>621,4307=>716,4308=>517,4309=>519,4310=>518,4311=>796,4312=>518,4313=>518,4314=>934,4315=>517,4316=>519,4317=>787,4318=>515,4319=>514,4320=>788,4321=>573,4322=>620,4323=>593,4324=>639,4325=>516,4326=>714,4327=>518,4328=>572,4329=>518,4330=>555,4331=>518,4332=>559,4333=>509,4334=>572,4335=>677,4336=>523,4337=>517,4338=>595,4339=>480,4340=>519,4341=>484,4342=>838,4343=>517,4344=>516,4345=>621,4346=>522,4347=>450,4348=>389,5024=>718,5025=>768,5026=>633,5027=>878,5028=>1001,5029=>371,5030=>576,5031=>754,5032=>531,5033=>774,5034=>692,5035=>499,5036=>668,5037=>829,5038=>575,5039=>681,5040=>485,5041=>607,5042=>885,5043=>974,5044=>588,5045=>583,5046=>726,5047=>947,5048=>558,5049=>832,5050=>1096,5051=>780,5052=>595,5053=>869,5054=>752,5055=>710,5056=>761,5057=>802,5058=>760,5059=>656,5060=>655,5061=>982,5062=>684,5063=>801,5064=>805,5065=>1042,5066=>755,5067=>612,5068=>707,5069=>889,5070=>584,5071=>623,5072=>536,5073=>763,5074=>763,5075=>581,5076=>1052,5077=>600,5078=>730,5079=>714,5080=>714,5081=>697,5082=>543,5083=>943,5084=>718,5085=>630,5086=>660,5087=>692,5088=>841,5089=>861,5090=>617,5091=>733,5092=>898,5093=>896,5094=>781,5095=>612,5096=>830,5097=>948,5098=>886,5099=>757,5100=>796,5101=>578,5102=>601,5103=>797,5104=>623,5105=>886,5106=>730,5107=>827,5108=>648,7680=>722,7681=>500,7682=>667,7683=>546,7684=>667,7685=>546,7686=>667,7687=>546,7688=>722,7689=>444,7690=>724,7691=>556,7692=>724,7693=>556,7694=>724,7695=>556,7696=>724,7697=>556,7698=>724,7699=>556,7700=>667,7701=>444,7702=>667,7703=>444,7704=>667,7705=>444,7706=>667,7707=>444,7708=>667,7709=>444,7710=>611,7711=>333,7712=>778,7713=>500,7714=>774,7715=>556,7716=>774,7717=>556,7718=>774,7719=>556,7720=>774,7721=>556,7722=>774,7723=>556,7724=>386,7725=>278,7726=>389,7727=>278,7728=>764,7729=>556,7730=>764,7731=>556,7732=>764,7733=>556,7734=>664,7735=>278,7736=>664,7737=>278,7738=>664,7739=>278,7740=>664,7741=>278,7742=>943,7743=>833,7744=>943,7745=>833,7746=>943,7747=>833,7748=>722,7749=>556,7750=>722,7751=>556,7752=>722,7753=>556,7754=>722,7755=>556,7756=>778,7757=>500,7758=>778,7759=>500,7760=>778,7761=>500,7762=>778,7763=>500,7764=>611,7765=>549,7766=>611,7767=>549,7768=>712,7769=>444,7770=>712,7771=>444,7772=>712,7773=>444,7774=>712,7775=>444,7776=>556,7777=>389,7778=>556,7779=>389,7780=>556,7781=>389,7782=>556,7783=>389,7784=>556,7785=>389,7786=>667,7787=>333,7788=>667,7789=>333,7790=>667,7791=>333,7792=>667,7793=>333,7794=>722,7795=>556,7796=>722,7797=>556,7798=>722,7799=>556,7800=>722,7801=>556,7802=>722,7803=>556,7804=>722,7805=>500,7806=>722,7807=>500,7808=>1000,7809=>722,7810=>1000,7811=>722,7812=>1000,7813=>722,7814=>1000,7815=>722,7816=>1000,7817=>722,7818=>722,7819=>500,7820=>722,7821=>500,7822=>722,7823=>500,7824=>667,7825=>444,7826=>667,7827=>444,7828=>667,7829=>444,7830=>556,7831=>333,7832=>722,7833=>500,7834=>507,7835=>333,7836=>333,7837=>333,7838=>792,7839=>534,7840=>722,7841=>500,7842=>722,7843=>500,7844=>722,7845=>500,7846=>722,7847=>500,7848=>722,7849=>500,7850=>722,7851=>500,7852=>722,7853=>500,7854=>722,7855=>500,7856=>722,7857=>500,7858=>722,7859=>603,7860=>722,7861=>500,7862=>722,7863=>500,7864=>667,7865=>444,7866=>667,7867=>444,7868=>667,7869=>444,7870=>667,7871=>444,7872=>667,7873=>444,7874=>667,7875=>444,7876=>667,7877=>444,7878=>667,7879=>444,7880=>386,7881=>278,7882=>386,7883=>278,7884=>778,7885=>500,7886=>778,7887=>500,7888=>778,7889=>500,7890=>778,7891=>500,7892=>778,7893=>500,7894=>778,7895=>500,7896=>778,7897=>500,7898=>774,7899=>584,7900=>774,7901=>584,7902=>774,7903=>549,7904=>793,7905=>584,7906=>793,7907=>584,7908=>722,7909=>556,7910=>722,7911=>556,7912=>838,7913=>672,7914=>838,7915=>672,7916=>825,7917=>659,7918=>768,7919=>620,7920=>768,7921=>620,7922=>722,7923=>500,7924=>722,7925=>500,7926=>722,7927=>500,7928=>722,7929=>500,7936=>605,7937=>605,7938=>605,7939=>605,7940=>605,7941=>605,7942=>605,7943=>605,7944=>722,7945=>722,7946=>830,7947=>833,7948=>761,7949=>798,7950=>721,7951=>722,7952=>440,7953=>440,7954=>440,7955=>440,7956=>440,7957=>440,7960=>817,7961=>826,7962=>944,7963=>970,7964=>964,7965=>1009,7968=>605,7969=>605,7970=>605,7971=>605,7972=>605,7973=>605,7974=>605,7975=>605,7976=>926,7977=>921,7978=>1038,7979=>1064,7980=>1092,7981=>1102,7982=>1005,7983=>991,7984=>330,7985=>330,7986=>330,7987=>330,7988=>330,7989=>330,7990=>330,7991=>330,7992=>534,7993=>541,7994=>653,7995=>659,7996=>705,7997=>714,7998=>612,7999=>614,8000=>550,8001=>550,8002=>550,8003=>550,8004=>550,8005=>550,8008=>885,8009=>886,8010=>1038,8011=>1052,8012=>997,8013=>1021,8016=>550,8017=>550,8018=>550,8019=>550,8020=>550,8021=>550,8022=>550,8023=>550,8025=>870,8027=>1014,8029=>1043,8031=>944,8032=>715,8033=>715,8034=>715,8035=>715,8036=>715,8037=>715,8038=>715,8039=>715,8040=>905,8041=>913,8042=>1066,8043=>1085,8044=>1034,8045=>1044,8046=>980,8047=>961,8048=>605,8049=>605,8050=>440,8051=>440,8052=>605,8053=>605,8054=>330,8055=>330,8056=>550,8057=>550,8058=>550,8059=>550,8060=>715,8061=>715,8064=>605,8065=>605,8066=>605,8067=>605,8068=>605,8069=>605,8070=>605,8071=>605,8072=>886,8073=>887,8074=>985,8075=>993,8076=>937,8077=>956,8078=>874,8079=>878,8080=>605,8081=>605,8082=>605,8083=>605,8084=>605,8085=>605,8086=>605,8087=>605,8088=>1096,8089=>1092,8090=>1223,8091=>1250,8092=>1270,8093=>1283,8094=>1174,8095=>1162,8096=>715,8097=>715,8098=>715,8099=>715,8100=>715,8101=>715,8102=>715,8103=>715,8104=>1057,8105=>1073,8106=>1228,8107=>1251,8108=>1202,8109=>1210,8110=>1151,8111=>1131,8112=>605,8113=>605,8114=>605,8115=>605,8116=>605,8118=>605,8119=>605,8120=>722,8121=>722,8122=>722,8123=>722,8124=>883,8125=>500,8126=>0,8127=>500,8128=>500,8129=>550,8130=>605,8131=>605,8132=>605,8134=>605,8135=>605,8136=>790,8137=>830,8138=>909,8139=>931,8140=>950,8141=>500,8142=>500,8143=>500,8144=>330,8145=>330,8146=>330,8147=>330,8150=>330,8151=>330,8152=>386,8153=>386,8154=>506,8155=>550,8157=>500,8158=>500,8159=>500,8160=>550,8161=>550,8162=>550,8163=>550,8164=>550,8165=>550,8166=>550,8167=>550,8168=>738,8169=>738,8170=>858,8171=>880,8172=>764,8173=>550,8174=>550,8175=>500,8178=>715,8179=>715,8180=>715,8182=>715,8183=>715,8184=>884,8185=>857,8186=>927,8187=>892,8188=>988,8189=>500,8190=>500,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>500,8200=>250,8201=>200,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>500,8211=>500,8212=>1000,8213=>1000,8214=>333,8215=>478,8216=>250,8217=>250,8218=>250,8219=>250,8220=>500,8221=>500,8222=>500,8223=>500,8224=>500,8225=>500,8226=>524,8227=>560,8228=>250,8229=>500,8230=>1000,8231=>250,8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>250,8240=>1000,8241=>1588,8242=>270,8243=>492,8244=>714,8245=>270,8246=>484,8247=>693,8248=>469,8249=>333,8250=>333,8251=>727,8252=>666,8253=>695,8254=>500,8255=>953,8256=>953,8257=>338,8258=>931,8259=>333,8260=>167,8261=>332,8262=>332,8263=>1000,8264=>833,8265=>833,8266=>500,8267=>540,8268=>528,8269=>523,8270=>500,8271=>333,8272=>953,8273=>500,8274=>497,8275=>576,8276=>953,8277=>785,8278=>450,8279=>881,8280=>620,8281=>620,8282=>179,8283=>621,8284=>569,8285=>179,8286=>179,8287=>111,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>300,8305=>185,8308=>300,8309=>300,8310=>300,8311=>300,8312=>300,8313=>300,8314=>300,8315=>300,8316=>300,8317=>216,8318=>216,8319=>325,8320=>300,8321=>274,8322=>300,8323=>300,8324=>300,8325=>300,8326=>300,8327=>300,8328=>300,8329=>300,8330=>300,8331=>300,8332=>300,8333=>216,8334=>216,8336=>344,8337=>304,8338=>340,8339=>337,8340=>308,8352=>710,8353=>722,8354=>783,8355=>611,8356=>500,8357=>833,8358=>722,8359=>960,8360=>1101,8361=>1000,8362=>889,8363=>532,8364=>761,8365=>742,8366=>631,8367=>1435,8368=>579,8369=>609,8370=>639,8371=>660,8372=>556,8373=>500,8376=>524,8400=>0,8401=>0,8406=>0,8407=>0,8411=>0,8412=>0,8413=>0,8414=>0,8415=>0,8416=>0,8417=>0,8421=>0,8423=>0,8424=>0,8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,8448=>624,8449=>625,8451=>1009,8453=>623,8454=>737,8455=>631,8456=>709,8457=>923,8458=>500,8459=>1035,8462=>556,8463=>556,8464=>792,8465=>737,8466=>800,8467=>427,8468=>835,8470=>896,8471=>855,8472=>666,8475=>747,8476=>955,8478=>722,8479=>722,8480=>991,8481=>1186,8482=>1086,8483=>722,8486=>811,8487=>811,8489=>333,8490=>764,8491=>722,8492=>806,8494=>551,8495=>444,8497=>723,8498=>611,8499=>1203,8501=>593,8502=>498,8503=>339,8504=>523,8506=>906,8507=>1181,8523=>778,8525=>1028,8526=>408,8531=>750,8532=>750,8533=>750,8534=>750,8535=>750,8536=>750,8537=>750,8538=>750,8539=>750,8540=>750,8541=>750,8542=>750,8543=>750,8544=>386,8545=>760,8546=>1138,8547=>1098,8548=>722,8549=>1098,8550=>1474,8551=>1850,8552=>1096,8553=>722,8554=>1095,8555=>1472,8556=>664,8557=>722,8558=>724,8559=>943,8560=>278,8561=>545,8562=>812,8563=>758,8564=>500,8565=>769,8566=>1036,8567=>1298,8568=>768,8569=>500,8570=>768,8571=>1034,8572=>278,8573=>444,8574=>556,8575=>833,8592=>964,8593=>523,8594=>964,8595=>523,8596=>964,8597=>964,8598=>964,8599=>964,8600=>964,8601=>964,8602=>964,8603=>964,8604=>1152,8605=>1152,8606=>964,8607=>964,8608=>964,8609=>964,8610=>1078,8611=>1078,8612=>964,8613=>964,8614=>964,8615=>964,8616=>964,8617=>964,8618=>964,8619=>964,8620=>964,8621=>1168,8622=>964,8624=>622,8625=>622,8630=>1069,8631=>1069,8632=>964,8633=>964,8634=>980,8635=>980,8636=>964,8637=>964,8638=>557,8639=>556,8640=>964,8641=>964,8642=>557,8643=>556,8644=>964,8645=>964,8646=>964,8647=>964,8648=>964,8649=>964,8650=>964,8651=>964,8652=>964,8653=>964,8654=>964,8655=>964,8656=>964,8657=>630,8658=>964,8659=>630,8660=>964,8661=>630,8662=>1063,8663=>1063,8664=>1063,8665=>1063,8666=>964,8667=>964,8668=>1100,8669=>1100,8672=>964,8674=>964,8676=>964,8677=>964,8704=>627,8705=>716,8706=>558,8707=>627,8708=>627,8709=>746,8710=>612,8711=>719,8713=>576,8714=>576,8716=>576,8717=>576,8720=>733,8721=>713,8722=>676,8723=>676,8724=>676,8725=>750,8727=>570,8729=>570,8730=>549,8733=>676,8734=>752,8736=>555,8737=>555,8738=>555,8739=>240,8740=>531,8741=>478,8742=>705,8743=>694,8744=>694,8745=>694,8746=>694,8747=>323,8756=>629,8757=>629,8761=>947,8764=>676,8765=>676,8766=>763,8768=>305,8769=>676,8770=>676,8771=>676,8773=>676,8776=>676,8777=>676,8778=>676,8781=>676,8782=>676,8783=>676,8784=>676,8785=>676,8786=>676,8787=>676,8788=>947,8789=>947,8790=>676,8791=>676,8796=>676,8800=>570,8801=>676,8802=>676,8804=>570,8805=>570,8806=>676,8807=>676,8808=>676,8809=>676,8810=>1047,8811=>1047,8812=>450,8813=>676,8814=>676,8815=>676,8816=>676,8817=>676,8818=>676,8819=>676,8820=>676,8821=>676,8822=>676,8823=>676,8824=>676,8825=>676,8826=>676,8827=>676,8828=>676,8829=>676,8830=>676,8831=>676,8832=>676,8833=>676,8834=>676,8835=>676,8836=>676,8837=>676,8838=>676,8839=>676,8840=>676,8841=>676,8842=>676,8843=>676,8846=>694,8847=>676,8848=>676,8849=>676,8850=>676,8851=>694,8852=>694,8853=>738,8854=>738,8855=>738,8856=>738,8857=>738,8858=>738,8859=>738,8861=>738,8862=>678,8863=>678,8864=>678,8865=>678,8866=>487,8867=>487,8868=>752,8869=>752,8871=>487,8873=>659,8874=>831,8876=>487,8877=>487,8878=>659,8879=>659,8882=>676,8883=>676,8884=>676,8885=>676,8886=>1380,8887=>1380,8888=>1027,8890=>626,8891=>694,8892=>694,8893=>694,8900=>512,8903=>676,8904=>759,8905=>632,8906=>632,8907=>1000,8908=>1000,8909=>676,8910=>694,8911=>694,8912=>676,8913=>676,8914=>694,8915=>694,8916=>694,8918=>676,8919=>676,8920=>1441,8921=>1441,8922=>676,8923=>676,8924=>676,8925=>676,8926=>676,8927=>676,8928=>676,8929=>676,8930=>676,8931=>676,8934=>676,8935=>676,8936=>676,8937=>676,8938=>676,8939=>676,8940=>676,8941=>676,8960=>737,8968=>411,8969=>411,8970=>411,8971=>411,8976=>680,8994=>951,8995=>951,9001=>398,9002=>398,9251=>500,9472=>1000,9473=>1000,9474=>1000,9475=>1000,9476=>1000,9477=>1000,9478=>1000,9479=>1000,9480=>1000,9481=>1000,9482=>1000,9483=>1000,9484=>1000,9485=>1000,9486=>1000,9487=>1000,9488=>1000,9489=>1000,9490=>1000,9491=>1000,9492=>1000,9493=>1000,9494=>1000,9495=>1000,9496=>1000,9497=>1000,9498=>1000,9499=>1000,9500=>1000,9501=>1000,9502=>1000,9503=>1000,9504=>1000,9505=>1000,9506=>1000,9507=>1000,9508=>1000,9509=>1000,9510=>1000,9511=>1000,9512=>1000,9513=>1000,9514=>1000,9515=>1000,9516=>1000,9517=>1000,9518=>1000,9519=>1000,9520=>1000,9521=>1000,9522=>1000,9523=>1000,9524=>1000,9525=>1000,9526=>1000,9527=>1000,9528=>1000,9529=>1000,9530=>1000,9531=>1000,9532=>1000,9533=>1000,9534=>1000,9535=>1000,9536=>1000,9537=>1000,9538=>1000,9539=>1000,9540=>1000,9541=>1000,9542=>1000,9543=>1000,9544=>1000,9545=>1000,9546=>1000,9547=>1000,9552=>1000,9553=>1000,9554=>1000,9555=>1000,9556=>1000,9557=>1000,9558=>1000,9559=>1000,9560=>1000,9561=>1000,9562=>1000,9563=>1000,9564=>1000,9565=>1000,9566=>1000,9567=>1000,9568=>1000,9569=>1000,9570=>1000,9571=>1000,9572=>1000,9573=>1000,9574=>1000,9575=>1000,9576=>1000,9577=>1000,9578=>1000,9579=>1000,9580=>1000,9600=>1000,9601=>1000,9602=>1000,9603=>1000,9604=>1000,9605=>1000,9606=>1000,9607=>1000,9608=>1000,9609=>1000,9610=>1000,9611=>1000,9612=>1000,9613=>1000,9614=>1000,9615=>1000,9616=>1000,9617=>1000,9618=>1000,9619=>1000,9620=>1000,9621=>1000,9622=>1000,9623=>1000,9624=>1000,9625=>1000,9626=>1000,9627=>1000,9628=>1000,9629=>1000,9630=>1000,9631=>1000,9632=>678,9633=>678,9642=>309,9650=>681,9651=>681,9654=>681,9655=>681,9660=>681,9661=>681,9664=>681,9665=>681,9670=>580,9671=>580,9674=>494,9675=>738,9676=>732,9679=>738,9702=>524,9711=>855,9733=>1003,9734=>1003,9824=>618,9825=>645,9826=>587,9827=>582,9828=>582,9829=>645,9830=>587,9831=>618,9833=>333,9834=>556,9835=>778,9836=>778,9837=>556,9838=>556,9839=>556,10214=>561,10215=>561,11392=>760,11393=>568,11394=>545,11395=>444,11396=>598,11397=>433,11398=>1039,11399=>760,11400=>681,11401=>502,11402=>572,11403=>405,11404=>583,11405=>463,11406=>698,11407=>529,11408=>754,11409=>555,11410=>338,11411=>258,11412=>688,11413=>524,11414=>700,11415=>521,11416=>799,11417=>609,11418=>708,11419=>537,11420=>546,11421=>411,11422=>778,11423=>541,11424=>724,11425=>524,11426=>545,11427=>446,11428=>676,11429=>498,11430=>615,11431=>433,11432=>759,11433=>589,11434=>800,11435=>670,11436=>669,11437=>512,11438=>801,11439=>609,11440=>1003,11441=>743,11517=>266,11518=>617,11519=>307,11799=>333,42790=>774,42791=>551,42792=>964,42793=>754,42794=>652,42795=>452,42796=>478,42797=>422,42798=>662,42799=>612,42888=>333,42889=>278,42890=>282,42891=>349,42892=>278,64256=>613,64257=>559,64258=>559,64259=>846,64260=>836,64261=>603,64262=>723,64275=>1105,64276=>1105,64277=>1099,64278=>1105,64279=>1361,64285=>266,64286=>0,64287=>532,64288=>552,64297=>570,64298=>716,64299=>716,64300=>716,64301=>716,64302=>593,64303=>593,64304=>593,64305=>498,64306=>339,64307=>523,64308=>561,64309=>266,64310=>291,64312=>576,64313=>266,64314=>496,64315=>501,64316=>510,64318=>581,64320=>347,64321=>512,64323=>493,64324=>491,64326=>561,64327=>544,64328=>502,64329=>716,64330=>571,64331=>266,64332=>498,64333=>501,64334=>491,64335=>593,65533=>900,65535=>700); +$desc=array('Flags'=>32,'FontBBox'=>'[-819 -555 1834 920]','ItalicAngle'=>0,'Ascent'=>900,'Descent'=>-200,'Leading'=>100,'CapHeight'=>676,'XHeight'=>461,'StemV'=>123,'StemH'=>53,'AvgWidth'=>628,'MaxWidth'=>1850,'MissingWidth'=>600); +$cw=array(0=>600,32=>250,33=>333,34=>555,35=>500,36=>500,37=>1000,38=>833,39=>278,40=>333,41=>333,42=>507,43=>676,44=>250,45=>333,46=>250,47=>278,48=>500,49=>500,50=>500,51=>500,52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>333,59=>333,60=>676,61=>676,62=>676,63=>500,64=>930,65=>721,66=>658,67=>708,68=>731,69=>671,70=>617,71=>776,72=>778,73=>390,74=>501,75=>774,76=>668,77=>947,78=>725,79=>778,80=>639,81=>778,82=>719,83=>568,84=>645,85=>725,86=>705,87=>982,88=>713,89=>704,90=>646,91=>333,92=>278,93=>333,94=>581,95=>500,96=>333,97=>500,98=>545,99=>435,100=>552,101=>444,102=>393,103=>500,104=>554,105=>299,106=>400,107=>555,108=>277,109=>832,110=>554,111=>501,112=>545,113=>545,114=>427,115=>406,116=>335,117=>564,118=>482,119=>702,120=>508,121=>482,122=>444,123=>394,124=>220,125=>394,126=>520,160=>250,161=>333,162=>500,163=>500,164=>500,165=>500,166=>220,167=>500,168=>333,169=>747,170=>300,171=>500,172=>680,173=>333,174=>747,175=>333,176=>400,177=>676,178=>300,179=>300,180=>333,181=>556,182=>540,183=>250,184=>333,185=>270,186=>330,187=>500,188=>750,189=>770,190=>750,191=>500,192=>721,193=>721,194=>721,195=>721,196=>721,197=>721,198=>987,199=>708,200=>671,201=>671,202=>671,203=>671,204=>390,205=>390,206=>390,207=>390,208=>731,209=>725,210=>778,211=>778,212=>778,213=>778,214=>778,215=>676,216=>778,217=>725,218=>725,219=>725,220=>725,221=>704,222=>639,223=>553,224=>500,225=>500,226=>500,227=>500,228=>500,229=>500,230=>703,231=>435,232=>444,233=>444,234=>444,235=>444,236=>299,237=>299,238=>299,239=>299,240=>501,241=>554,242=>501,243=>501,244=>501,245=>501,246=>501,247=>676,248=>501,249=>564,250=>564,251=>564,252=>564,253=>482,254=>548,255=>482,256=>721,257=>500,258=>721,259=>500,260=>722,261=>500,262=>708,263=>435,264=>708,265=>435,266=>708,267=>435,268=>708,269=>435,270=>722,271=>692,272=>731,273=>556,274=>671,275=>444,276=>671,277=>444,278=>671,279=>444,280=>669,281=>444,282=>671,283=>444,284=>776,285=>500,286=>776,287=>500,288=>776,289=>500,290=>776,291=>500,292=>778,293=>554,294=>778,295=>556,296=>390,297=>299,298=>390,299=>299,300=>390,301=>299,302=>389,303=>299,304=>390,305=>299,306=>882,307=>610,308=>501,309=>397,310=>774,311=>555,312=>534,313=>668,314=>277,315=>668,316=>277,317=>668,318=>433,319=>668,320=>457,321=>667,322=>278,323=>725,324=>554,325=>725,326=>554,327=>725,328=>554,329=>626,330=>829,331=>556,332=>778,333=>501,334=>778,335=>501,336=>778,337=>501,338=>1000,339=>717,340=>719,341=>427,342=>719,343=>427,344=>719,345=>427,346=>568,347=>406,348=>568,349=>406,350=>556,351=>389,352=>568,353=>406,354=>645,355=>335,356=>645,357=>467,358=>667,359=>337,360=>725,361=>564,362=>725,363=>564,364=>725,365=>564,366=>725,367=>564,368=>725,369=>564,370=>725,371=>561,372=>982,373=>702,374=>704,375=>482,376=>704,377=>646,378=>444,379=>646,380=>444,381=>646,382=>444,383=>337,384=>556,385=>802,386=>659,387=>556,388=>667,389=>556,390=>708,391=>901,392=>605,393=>731,394=>875,395=>658,396=>554,397=>525,398=>665,399=>778,400=>622,401=>735,402=>383,403=>901,404=>782,405=>811,406=>327,407=>389,408=>846,409=>556,410=>298,411=>495,412=>976,413=>864,414=>556,415=>778,416=>793,417=>574,418=>1177,419=>794,420=>749,421=>556,422=>748,423=>568,424=>406,425=>650,426=>465,427=>343,428=>719,429=>391,430=>667,431=>768,432=>620,433=>770,434=>685,435=>833,436=>695,437=>667,438=>444,439=>593,440=>639,441=>508,442=>482,443=>500,444=>641,445=>520,446=>444,447=>611,448=>220,449=>418,450=>570,451=>333,452=>1331,453=>1158,454=>990,455=>1134,456=>987,457=>610,458=>1200,459=>1025,460=>889,461=>721,462=>500,463=>390,464=>299,465=>778,466=>501,467=>725,468=>564,469=>722,470=>564,471=>722,472=>564,473=>722,474=>564,475=>722,476=>564,477=>444,478=>721,479=>500,480=>722,481=>500,482=>987,483=>703,484=>778,485=>500,486=>776,487=>500,488=>774,489=>555,490=>778,491=>501,492=>778,493=>501,494=>593,495=>502,496=>397,497=>1331,498=>1158,499=>990,500=>776,501=>500,502=>995,503=>603,504=>725,505=>554,506=>722,507=>500,508=>987,509=>703,510=>778,511=>501,512=>721,513=>500,514=>721,515=>500,516=>671,517=>444,518=>671,519=>444,520=>390,521=>299,522=>390,523=>299,524=>778,525=>501,526=>778,527=>501,528=>719,529=>427,530=>719,531=>427,532=>725,533=>564,534=>725,535=>564,536=>568,537=>406,538=>645,539=>335,540=>464,541=>453,542=>778,543=>554,544=>731,545=>649,546=>568,547=>494,548=>667,549=>444,550=>721,551=>500,552=>667,553=>444,554=>778,555=>501,556=>778,557=>501,558=>778,559=>501,560=>778,561=>501,562=>704,563=>482,564=>437,565=>636,566=>413,567=>397,568=>776,569=>760,570=>722,571=>722,572=>444,573=>664,574=>667,575=>409,576=>451,577=>505,578=>479,579=>656,580=>750,581=>705,582=>667,583=>478,584=>500,585=>333,586=>760,587=>588,588=>712,589=>444,590=>722,591=>500,592=>500,593=>523,594=>523,595=>556,596=>434,597=>468,598=>633,599=>654,600=>444,601=>444,602=>611,603=>438,604=>440,605=>611,606=>459,607=>333,608=>660,609=>500,610=>549,611=>499,612=>582,613=>554,614=>556,615=>556,616=>303,617=>333,618=>293,619=>369,620=>397,621=>344,622=>667,623=>832,624=>833,625=>833,626=>626,627=>633,628=>502,629=>501,630=>744,631=>715,632=>711,633=>427,634=>444,635=>524,636=>444,637=>428,638=>394,639=>394,640=>538,641=>538,642=>406,643=>410,644=>406,645=>507,646=>499,647=>335,648=>392,649=>500,650=>557,651=>533,652=>482,653=>702,654=>482,655=>516,656=>672,657=>492,658=>502,659=>502,660=>438,661=>438,662=>438,663=>444,664=>778,665=>507,666=>460,667=>722,668=>582,669=>438,670=>555,671=>483,672=>604,673=>438,674=>438,675=>872,676=>878,677=>926,678=>654,679=>624,680=>722,681=>825,682=>646,683=>604,684=>490,685=>500,686=>611,687=>713,688=>367,689=>378,690=>243,691=>300,692=>291,693=>337,694=>368,695=>476,696=>330,697=>250,698=>500,699=>250,700=>250,701=>250,702=>300,703=>300,704=>333,705=>333,706=>333,707=>333,708=>333,709=>333,710=>333,711=>333,712=>200,713=>333,714=>333,715=>333,716=>200,717=>333,718=>333,719=>333,720=>250,721=>250,722=>300,723=>300,724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,731=>333,732=>333,733=>333,734=>333,735=>352,736=>350,737=>181,738=>257,739=>333,740=>300,741=>526,742=>526,743=>526,744=>526,745=>526,746=>519,747=>519,748=>333,749=>333,750=>480,751=>333,752=>333,753=>333,754=>333,755=>327,756=>261,757=>333,758=>333,759=>400,760=>333,761=>175,762=>175,763=>175,764=>175,765=>333,766=>337,767=>432,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,859=>0,860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,867=>0,868=>0,869=>0,870=>0,871=>0,872=>0,873=>0,874=>0,875=>0,876=>0,877=>0,878=>0,879=>0,884=>199,885=>200,890=>0,894=>333,900=>330,901=>415,902=>721,903=>250,904=>811,905=>938,906=>556,908=>840,910=>886,911=>879,912=>330,913=>721,914=>658,915=>611,916=>759,917=>671,918=>646,919=>778,920=>778,921=>390,922=>774,923=>722,924=>947,925=>725,926=>650,927=>778,928=>812,929=>639,931=>650,932=>645,933=>738,934=>868,935=>713,936=>924,937=>811,938=>390,939=>738,940=>605,941=>440,942=>605,943=>330,944=>550,945=>605,946=>550,947=>550,948=>550,949=>440,950=>495,951=>605,952=>550,953=>330,954=>608,955=>495,956=>605,957=>495,958=>495,959=>550,960=>605,961=>550,962=>440,963=>550,964=>440,965=>550,966=>660,967=>495,968=>715,969=>715,970=>330,971=>550,972=>550,973=>550,974=>715,976=>550,977=>605,978=>722,979=>871,980=>722,981=>660,982=>715,983=>550,984=>611,985=>550,986=>650,987=>514,988=>611,989=>513,990=>715,991=>439,992=>722,993=>605,994=>1022,995=>715,996=>626,997=>576,998=>616,999=>544,1000=>539,1001=>441,1002=>932,1003=>653,1004=>593,1005=>513,1006=>654,1007=>517,1008=>550,1009=>550,1010=>477,1011=>400,1012=>778,1013=>424,1014=>424,1015=>639,1016=>575,1017=>722,1018=>943,1019=>809,1020=>550,1021=>722,1022=>722,1023=>722,1024=>666,1025=>666,1026=>852,1027=>617,1028=>733,1029=>568,1030=>400,1031=>400,1032=>513,1033=>1062,1034=>1057,1035=>899,1036=>769,1037=>788,1038=>731,1039=>788,1040=>704,1041=>659,1042=>678,1043=>617,1044=>718,1045=>666,1046=>1104,1047=>654,1048=>788,1049=>788,1050=>769,1051=>793,1052=>957,1053=>788,1054=>828,1055=>814,1056=>659,1057=>733,1058=>649,1059=>731,1060=>864,1061=>713,1062=>788,1063=>768,1064=>1129,1065=>1129,1066=>794,1067=>984,1068=>659,1069=>747,1070=>1136,1071=>734,1072=>528,1073=>567,1074=>545,1075=>439,1076=>565,1077=>511,1078=>805,1079=>495,1080=>572,1081=>572,1082=>566,1083=>551,1084=>682,1085=>572,1086=>571,1087=>572,1088=>591,1089=>495,1090=>501,1091=>482,1092=>879,1093=>508,1094=>566,1095=>564,1096=>833,1097=>827,1098=>647,1099=>764,1100=>545,1101=>539,1102=>800,1103=>563,1104=>511,1105=>511,1106=>592,1107=>439,1108=>539,1109=>436,1110=>291,1111=>299,1112=>400,1113=>812,1114=>824,1115=>570,1116=>566,1117=>572,1118=>482,1119=>572,1120=>1066,1121=>769,1122=>796,1123=>648,1124=>1033,1125=>778,1126=>977,1127=>685,1128=>1363,1129=>971,1130=>1086,1131=>778,1132=>1466,1133=>1062,1134=>650,1135=>462,1136=>974,1137=>771,1138=>828,1139=>661,1140=>808,1141=>578,1142=>808,1143=>590,1144=>1214,1145=>962,1146=>992,1147=>744,1148=>1066,1149=>769,1150=>1066,1151=>769,1152=>694,1153=>483,1154=>258,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,1162=>788,1163=>569,1164=>659,1165=>548,1166=>659,1167=>594,1168=>618,1169=>459,1170=>618,1171=>439,1172=>666,1173=>585,1174=>1155,1175=>843,1176=>670,1177=>495,1178=>833,1179=>610,1180=>815,1181=>597,1182=>901,1183=>676,1184=>874,1185=>636,1186=>788,1187=>572,1188=>986,1189=>693,1190=>1086,1191=>864,1192=>913,1193=>666,1194=>733,1195=>495,1196=>649,1197=>501,1198=>712,1199=>609,1200=>712,1201=>609,1202=>790,1203=>567,1204=>1043,1205=>785,1206=>768,1207=>562,1208=>824,1209=>598,1210=>768,1211=>570,1212=>960,1213=>637,1214=>960,1215=>637,1216=>400,1217=>1104,1218=>805,1219=>742,1220=>557,1221=>793,1222=>551,1223=>788,1224=>570,1225=>788,1226=>572,1227=>768,1228=>564,1229=>957,1230=>682,1231=>400,1232=>704,1233=>528,1234=>704,1235=>528,1236=>989,1237=>725,1238=>667,1239=>511,1240=>828,1241=>511,1242=>778,1243=>511,1244=>1104,1245=>805,1246=>654,1247=>495,1248=>626,1249=>472,1250=>788,1251=>572,1252=>788,1253=>572,1254=>828,1255=>571,1256=>828,1257=>571,1258=>778,1259=>571,1260=>747,1261=>539,1262=>731,1263=>482,1264=>731,1265=>482,1266=>731,1267=>500,1268=>768,1269=>564,1270=>627,1271=>435,1272=>984,1273=>764,1281=>544,1296=>660,1297=>495,1298=>793,1299=>551,1306=>778,1307=>588,1308=>994,1309=>716,1310=>769,1311=>566,1329=>889,1330=>787,1331=>858,1332=>941,1333=>775,1334=>765,1335=>805,1336=>762,1337=>938,1338=>869,1339=>765,1340=>756,1341=>966,1342=>992,1343=>748,1344=>469,1345=>731,1346=>941,1347=>745,1348=>966,1349=>641,1350=>929,1351=>774,1352=>779,1353=>784,1354=>841,1355=>775,1356=>955,1357=>779,1358=>927,1359=>555,1360=>763,1361=>641,1362=>656,1363=>824,1364=>869,1365=>768,1366=>754,1369=>300,1370=>300,1371=>270,1372=>307,1373=>270,1374=>324,1375=>322,1377=>818,1378=>548,1379=>601,1380=>608,1381=>551,1382=>547,1383=>496,1384=>548,1385=>586,1386=>585,1387=>548,1388=>269,1389=>798,1390=>594,1391=>544,1392=>548,1393=>513,1394=>583,1395=>560,1396=>551,1397=>397,1398=>567,1399=>447,1400=>548,1401=>411,1402=>810,1403=>464,1404=>548,1405=>551,1406=>595,1407=>821,1408=>548,1409=>557,1410=>312,1411=>821,1412=>550,1413=>511,1414=>668,1415=>602,1417=>333,1418=>349,1423=>818,1425=>0,1426=>0,1427=>0,1428=>0,1429=>0,1430=>0,1431=>0,1432=>0,1433=>0,1434=>0,1435=>0,1436=>0,1437=>0,1438=>0,1439=>0,1440=>0,1441=>0,1442=>0,1443=>0,1444=>0,1445=>0,1446=>0,1447=>0,1448=>0,1449=>0,1450=>0,1451=>0,1452=>0,1453=>0,1454=>0,1455=>0,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0,1467=>0,1468=>0,1469=>0,1470=>433,1471=>0,1472=>155,1473=>0,1474=>0,1475=>400,1476=>0,1477=>0,1478=>347,1479=>0,1488=>593,1489=>498,1490=>339,1491=>523,1492=>561,1493=>266,1494=>291,1495=>559,1496=>576,1497=>266,1498=>496,1499=>501,1500=>510,1501=>542,1502=>581,1503=>273,1504=>347,1505=>512,1506=>552,1507=>493,1508=>491,1509=>537,1510=>561,1511=>544,1512=>502,1513=>716,1514=>571,1520=>532,1521=>532,1522=>532,1523=>396,1524=>432,1536=>600,1537=>1000,1538=>800,1539=>800,1542=>549,1543=>549,1544=>724,1545=>599,1546=>729,1547=>635,1548=>226,1549=>344,1550=>640,1551=>616,1552=>0,1553=>0,1554=>0,1555=>0,1556=>0,1557=>0,1558=>0,1559=>0,1560=>0,1561=>0,1562=>0,1563=>333,1566=>407,1567=>500,1568=>742,1569=>350,1570=>264,1571=>264,1572=>329,1573=>264,1574=>742,1575=>264,1576=>899,1577=>424,1578=>897,1579=>897,1580=>655,1581=>655,1582=>655,1583=>397,1584=>397,1585=>358,1586=>331,1587=>901,1588=>901,1589=>909,1590=>909,1591=>557,1592=>550,1593=>595,1594=>602,1595=>901,1596=>901,1597=>742,1598=>742,1599=>742,1600=>408,1601=>858,1602=>635,1603=>446,1604=>601,1605=>489,1606=>591,1607=>424,1608=>329,1609=>742,1610=>742,1611=>0,1612=>0,1613=>0,1614=>0,1615=>0,1616=>0,1617=>0,1618=>0,1619=>0,1620=>0,1621=>0,1622=>0,1623=>0,1624=>0,1625=>0,1626=>0,1627=>0,1628=>0,1629=>0,1630=>0,1631=>0,1632=>500,1633=>500,1634=>500,1635=>500,1636=>500,1637=>500,1638=>500,1639=>500,1640=>500,1641=>500,1642=>449,1643=>212,1644=>235,1645=>487,1646=>899,1647=>665,1648=>0,1649=>264,1650=>264,1651=>264,1652=>300,1653=>356,1654=>472,1655=>462,1656=>752,1657=>897,1658=>897,1659=>897,1660=>897,1661=>897,1662=>899,1663=>897,1664=>897,1665=>655,1666=>655,1667=>655,1668=>655,1669=>655,1670=>655,1671=>655,1672=>397,1673=>397,1674=>397,1675=>397,1676=>397,1677=>397,1678=>397,1679=>397,1680=>397,1681=>358,1682=>358,1683=>355,1684=>358,1685=>520,1686=>358,1687=>345,1688=>345,1689=>345,1690=>901,1691=>901,1692=>901,1693=>909,1694=>909,1695=>557,1696=>595,1697=>858,1698=>858,1699=>858,1700=>858,1701=>858,1702=>858,1703=>635,1704=>665,1705=>901,1706=>1108,1707=>901,1708=>446,1709=>446,1710=>446,1711=>901,1712=>901,1713=>901,1714=>901,1715=>901,1716=>901,1717=>601,1718=>601,1719=>601,1720=>601,1721=>591,1722=>591,1723=>591,1724=>591,1725=>591,1726=>470,1727=>655,1728=>394,1729=>399,1730=>399,1731=>399,1732=>329,1733=>329,1734=>329,1735=>329,1736=>329,1737=>329,1738=>329,1739=>329,1740=>742,1741=>776,1742=>742,1743=>329,1744=>742,1745=>742,1746=>752,1747=>752,1748=>395,1749=>394,1750=>0,1751=>0,1752=>0,1753=>0,1754=>0,1755=>0,1756=>0,1757=>1132,1758=>970,1759=>0,1760=>0,1761=>0,1762=>0,1763=>0,1764=>321,1765=>329,1766=>500,1767=>0,1768=>0,1769=>760,1770=>0,1771=>0,1772=>0,1773=>0,1774=>397,1775=>338,1776=>500,1777=>500,1778=>500,1779=>500,1780=>500,1781=>500,1782=>500,1783=>500,1784=>500,1785=>500,1786=>901,1787=>909,1788=>602,1789=>300,1790=>300,1791=>447,1872=>897,1873=>897,1874=>897,1875=>897,1876=>897,1877=>897,1878=>897,1879=>655,1880=>655,1881=>397,1882=>397,1883=>418,1884=>901,1885=>595,1886=>595,1887=>595,1888=>858,1889=>858,1890=>901,1891=>901,1892=>901,1893=>489,1894=>489,1895=>591,1896=>591,1897=>591,1898=>658,1899=>358,1900=>358,1901=>901,1902=>655,1903=>655,1904=>901,1905=>358,1906=>655,1907=>264,1908=>264,1909=>742,1910=>742,1911=>792,1912=>329,1913=>329,1914=>752,1915=>752,1916=>655,1917=>901,1918=>901,1919=>446,1920=>450,1921=>501,1922=>582,1923=>544,1924=>482,1925=>433,1926=>448,1927=>462,1928=>474,1929=>471,1930=>469,1931=>537,1932=>499,1933=>514,1934=>471,1935=>572,1936=>880,1937=>440,1938=>476,1939=>594,1940=>469,1941=>448,1942=>441,1943=>519,1944=>573,1945=>459,1946=>447,1947=>496,1948=>541,1949=>887,1950=>883,1951=>964,1952=>558,1953=>505,1954=>471,1955=>554,1956=>459,1957=>486,1958=>36,1959=>36,1960=>43,1961=>45,1962=>43,1963=>45,1964=>45,1965=>45,1966=>45,1967=>45,1968=>0,1969=>412,2304=>0,2305=>0,2306=>0,2307=>398,2308=>862,2309=>862,2310=>1092,2311=>575,2312=>575,2313=>597,2314=>848,2315=>968,2316=>828,2317=>655,2318=>655,2319=>655,2320=>655,2321=>1092,2322=>1092,2323=>1092,2324=>1092,2325=>744,2326=>798,2327=>695,2328=>695,2329=>773,2330=>735,2331=>888,2332=>814,2333=>834,2334=>735,2335=>629,2336=>629,2337=>674,2338=>609,2339=>695,2340=>655,2341=>695,2342=>589,2343=>695,2344=>655,2345=>655,2346=>615,2347=>789,2348=>622,2349=>695,2350=>695,2351=>695,2352=>495,2353=>495,2354=>788,2355=>848,2356=>848,2357=>622,2358=>788,2359=>615,2360=>735,2361=>609,2362=>341,2363=>342,2364=>0,2365=>570,2366=>342,2367=>342,2368=>342,2369=>0,2370=>0,2371=>0,2372=>0,2373=>0,2374=>0,2375=>0,2376=>0,2377=>342,2378=>342,2379=>342,2380=>342,2381=>0,2382=>442,2383=>342,2384=>1047,2385=>0,2386=>0,2387=>0,2388=>0,2389=>0,2390=>0,2391=>0,2392=>744,2393=>798,2394=>695,2395=>864,2396=>674,2397=>609,2398=>789,2399=>695,2400=>968,2401=>828,2402=>0,2403=>0,2404=>475,2405=>730,2406=>455,2407=>419,2408=>569,2409=>509,2410=>701,2411=>628,2412=>569,2413=>701,2414=>608,2415=>608,2416=>625,2417=>398,2418=>862,2419=>862,2420=>1092,2421=>1092,2422=>862,2423=>862,2425=>814,2426=>695,2427=>655,2428=>814,2429=>628,2430=>674,2431=>622,2561=>0,2562=>0,2563=>385,2565=>781,2566=>982,2567=>789,2568=>860,2569=>559,2570=>559,2575=>589,2576=>781,2579=>559,2580=>781,2581=>538,2582=>650,2583=>650,2584=>781,2585=>589,2586=>589,2587=>699,2588=>650,2589=>589,2590=>589,2591=>589,2592=>589,2593=>559,2594=>589,2595=>589,2596=>559,2597=>650,2598=>589,2599=>650,2600=>626,2602=>650,2603=>570,2604=>650,2605=>559,2606=>650,2607=>781,2608=>490,2610=>626,2611=>626,2613=>589,2614=>650,2616=>650,2617=>490,2620=>0,2622=>320,2623=>260,2624=>320,2625=>0,2626=>0,2631=>0,2632=>0,2635=>0,2636=>0,2637=>0,2641=>0,2649=>650,2650=>650,2651=>650,2652=>559,2654=>570,2662=>420,2663=>350,2664=>490,2665=>434,2666=>574,2667=>455,2668=>452,2669=>490,2670=>504,2671=>504,2672=>0,2673=>0,2674=>589,2675=>559,2676=>808,2677=>0,3458=>254,3459=>254,3461=>616,3462=>932,3463=>908,3464=>907,3465=>626,3466=>624,3467=>763,3468=>1119,3469=>1029,3470=>1311,3471=>1050,3472=>1477,3473=>677,3474=>746,3475=>1338,3476=>741,3477=>741,3478=>1180,3482=>894,3483=>715,3484=>715,3485=>719,3486=>741,3487=>834,3488=>719,3489=>677,3490=>677,3491=>1302,3492=>1005,3493=>919,3494=>681,3495=>719,3496=>677,3497=>741,3498=>677,3499=>1123,3500=>743,3501=>779,3502=>677,3503=>444,3504=>741,3505=>921,3507=>444,3508=>677,3509=>677,3510=>715,3511=>787,3512=>719,3513=>741,3514=>719,3515=>604,3517=>763,3520=>719,3521=>715,3522=>677,3523=>719,3524=>787,3525=>763,3526=>677,3530=>0,3535=>329,3536=>319,3537=>319,3538=>0,3539=>0,3540=>0,3542=>0,3544=>329,3545=>691,3546=>1062,3547=>1333,3548=>1278,3549=>1235,3550=>1292,3551=>461,3570=>680,3571=>481,3572=>948,3585=>590,3586=>578,3587=>661,3588=>592,3589=>592,3590=>699,3591=>447,3592=>534,3593=>692,3594=>578,3595=>659,3596=>899,3597=>804,3598=>633,3599=>637,3600=>484,3601=>730,3602=>876,3603=>915,3604=>592,3605=>592,3606=>578,3607=>670,3608=>542,3609=>671,3610=>621,3611=>618,3612=>621,3613=>617,3614=>708,3615=>708,3616=>637,3617=>589,3618=>552,3619=>484,3620=>590,3621=>569,3622=>637,3623=>526,3624=>599,3625=>802,3626=>579,3627=>668,3628=>778,3629=>560,3630=>514,3631=>510,3632=>412,3633=>0,3634=>423,3635=>452,3636=>0,3637=>0,3638=>0,3639=>0,3640=>0,3641=>0,3642=>0,3647=>665,3648=>357,3649=>624,3650=>529,3651=>486,3652=>475,3653=>423,3654=>500,3655=>0,3656=>0,3657=>0,3658=>0,3659=>0,3660=>0,3661=>0,3662=>0,3663=>657,3664=>548,3665=>548,3666=>592,3667=>614,3668=>631,3669=>643,3670=>508,3671=>744,3672=>622,3673=>585,3674=>721,3675=>1381,4256=>540,4257=>544,4258=>639,4259=>718,4260=>553,4261=>545,4262=>541,4263=>810,4264=>540,4265=>541,4266=>921,4267=>540,4268=>529,4269=>810,4270=>540,4271=>540,4272=>810,4273=>545,4274=>642,4275=>643,4276=>659,4277=>538,4278=>718,4279=>541,4280=>592,4281=>535,4282=>586,4283=>540,4284=>628,4285=>521,4286=>548,4287=>630,4288=>541,4289=>541,4290=>660,4291=>544,4292=>542,4293=>498,4304=>522,4305=>518,4306=>621,4307=>716,4308=>517,4309=>519,4310=>518,4311=>796,4312=>518,4313=>518,4314=>934,4315=>517,4316=>519,4317=>787,4318=>515,4319=>514,4320=>788,4321=>573,4322=>620,4323=>593,4324=>639,4325=>516,4326=>714,4327=>518,4328=>572,4329=>518,4330=>555,4331=>518,4332=>559,4333=>509,4334=>572,4335=>677,4336=>523,4337=>517,4338=>595,4339=>480,4340=>519,4341=>484,4342=>838,4343=>517,4344=>516,4345=>621,4346=>522,4347=>450,4348=>389,5024=>718,5025=>768,5026=>633,5027=>878,5028=>1001,5029=>371,5030=>576,5031=>754,5032=>531,5033=>774,5034=>692,5035=>499,5036=>668,5037=>829,5038=>575,5039=>681,5040=>485,5041=>607,5042=>885,5043=>974,5044=>588,5045=>583,5046=>726,5047=>947,5048=>558,5049=>832,5050=>1096,5051=>780,5052=>595,5053=>869,5054=>752,5055=>710,5056=>761,5057=>802,5058=>760,5059=>656,5060=>655,5061=>982,5062=>684,5063=>801,5064=>805,5065=>1042,5066=>755,5067=>612,5068=>707,5069=>889,5070=>584,5071=>623,5072=>536,5073=>763,5074=>763,5075=>581,5076=>1052,5077=>600,5078=>730,5079=>714,5080=>714,5081=>697,5082=>543,5083=>943,5084=>718,5085=>630,5086=>660,5087=>692,5088=>841,5089=>861,5090=>617,5091=>733,5092=>898,5093=>896,5094=>781,5095=>612,5096=>830,5097=>948,5098=>886,5099=>757,5100=>796,5101=>578,5102=>601,5103=>797,5104=>623,5105=>886,5106=>730,5107=>827,5108=>648,7424=>474,7425=>775,7426=>703,7427=>507,7428=>492,7429=>546,7430=>546,7431=>487,7432=>440,7433=>299,7434=>389,7435=>556,7436=>483,7437=>683,7438=>502,7439=>552,7440=>492,7441=>534,7442=>507,7443=>663,7444=>717,7445=>384,7446=>552,7447=>552,7448=>471,7449=>539,7450=>538,7451=>448,7452=>522,7453=>508,7454=>680,7455=>510,7456=>474,7457=>696,7458=>423,7459=>409,7460=>463,7461=>681,7462=>410,7463=>476,7464=>553,7465=>432,7466=>630,7467=>536,7468=>474,7469=>774,7470=>507,7471=>507,7472=>546,7473=>487,7474=>487,7475=>549,7476=>582,7477=>293,7478=>389,7479=>556,7480=>483,7481=>683,7482=>502,7483=>502,7484=>552,7485=>350,7486=>471,7487=>538,7488=>448,7489=>522,7490=>696,7491=>336,7492=>336,7493=>346,7494=>460,7495=>364,7496=>367,7497=>294,7498=>294,7499=>283,7500=>283,7501=>334,7502=>181,7503=>372,7504=>555,7505=>355,7506=>334,7507=>290,7508=>1000,7509=>1000,7510=>366,7511=>232,7512=>369,7513=>356,7514=>560,7515=>333,7516=>452,7517=>360,7518=>361,7519=>367,7520=>440,7521=>331,7522=>181,7523=>300,7524=>369,7525=>333,7526=>363,7527=>361,7528=>363,7529=>440,7530=>331,7543=>500,7544=>513,7579=>347,7580=>297,7581=>315,7582=>331,7583=>284,7584=>260,7585=>260,7586=>334,7587=>367,7588=>199,7589=>229,7590=>196,7591=>196,7592=>290,7593=>246,7595=>317,7596=>527,7597=>559,7598=>401,7599=>424,7600=>334,7601=>329,7602=>452,7603=>250,7604=>322,7605=>237,7606=>374,7607=>356,7608=>354,7609=>351,7610=>325,7611=>277,7612=>437,7613=>316,7614=>327,7615=>328,7680=>721,7681=>500,7682=>658,7683=>545,7684=>658,7685=>545,7686=>658,7687=>545,7688=>708,7689=>435,7690=>731,7691=>552,7692=>731,7693=>552,7694=>731,7695=>552,7696=>724,7697=>556,7698=>731,7699=>552,7700=>667,7701=>444,7702=>667,7703=>444,7704=>671,7705=>444,7706=>671,7707=>444,7708=>667,7709=>444,7710=>617,7711=>393,7712=>776,7713=>500,7714=>778,7715=>554,7716=>778,7717=>554,7718=>778,7719=>554,7720=>774,7721=>556,7722=>778,7723=>554,7724=>390,7725=>299,7726=>389,7727=>299,7728=>774,7729=>555,7730=>774,7731=>555,7732=>774,7733=>555,7734=>668,7735=>277,7736=>668,7737=>277,7738=>668,7739=>277,7740=>668,7741=>277,7742=>947,7743=>832,7744=>947,7745=>832,7746=>947,7747=>832,7748=>725,7749=>554,7750=>725,7751=>554,7752=>725,7753=>554,7754=>725,7755=>554,7756=>778,7757=>501,7758=>778,7759=>501,7760=>778,7761=>501,7762=>778,7763=>501,7764=>639,7765=>545,7766=>639,7767=>545,7768=>719,7769=>427,7770=>719,7771=>427,7772=>719,7773=>427,7774=>719,7775=>427,7776=>568,7777=>406,7778=>568,7779=>406,7780=>556,7781=>406,7782=>556,7783=>406,7784=>568,7785=>406,7786=>645,7787=>335,7788=>645,7789=>335,7790=>645,7791=>335,7792=>645,7793=>335,7794=>725,7795=>564,7796=>725,7797=>564,7798=>725,7799=>564,7800=>722,7801=>564,7802=>722,7803=>564,7804=>705,7805=>482,7806=>705,7807=>482,7808=>982,7809=>702,7810=>982,7811=>702,7812=>982,7813=>702,7814=>982,7815=>702,7816=>982,7817=>702,7818=>713,7819=>508,7820=>713,7821=>508,7822=>704,7823=>482,7824=>646,7825=>444,7826=>646,7827=>444,7828=>646,7829=>444,7830=>554,7831=>335,7832=>702,7833=>482,7834=>507,7835=>337,7836=>333,7837=>333,7838=>792,7839=>534,7840=>721,7841=>500,7842=>721,7843=>500,7844=>721,7845=>500,7846=>721,7847=>500,7848=>721,7849=>500,7850=>722,7851=>500,7852=>721,7853=>500,7854=>722,7855=>500,7856=>722,7857=>500,7858=>722,7859=>603,7860=>722,7861=>500,7862=>721,7863=>500,7864=>671,7865=>444,7866=>671,7867=>444,7868=>671,7869=>444,7870=>671,7871=>444,7872=>671,7873=>444,7874=>671,7875=>444,7876=>667,7877=>444,7878=>671,7879=>444,7880=>390,7881=>299,7882=>390,7883=>299,7884=>778,7885=>501,7886=>778,7887=>501,7888=>778,7889=>501,7890=>778,7891=>501,7892=>778,7893=>501,7894=>778,7895=>501,7896=>778,7897=>501,7898=>774,7899=>574,7900=>774,7901=>574,7902=>774,7903=>549,7904=>793,7905=>574,7906=>793,7907=>574,7908=>725,7909=>564,7910=>725,7911=>564,7912=>838,7913=>672,7914=>838,7915=>672,7916=>825,7917=>659,7918=>768,7919=>620,7920=>768,7921=>620,7922=>704,7923=>482,7924=>704,7925=>482,7926=>704,7927=>482,7928=>704,7929=>482,7936=>605,7937=>605,7938=>605,7939=>605,7940=>605,7941=>605,7942=>605,7943=>605,7944=>721,7945=>721,7946=>830,7947=>833,7948=>761,7949=>798,7950=>721,7951=>721,7952=>440,7953=>440,7954=>440,7955=>440,7956=>440,7957=>440,7960=>817,7961=>826,7962=>944,7963=>970,7964=>964,7965=>1009,7968=>605,7969=>605,7970=>605,7971=>605,7972=>605,7973=>605,7974=>605,7975=>605,7976=>926,7977=>921,7978=>1038,7979=>1064,7980=>1092,7981=>1102,7982=>1005,7983=>991,7984=>330,7985=>330,7986=>330,7987=>330,7988=>330,7989=>330,7990=>330,7991=>330,7992=>534,7993=>541,7994=>653,7995=>659,7996=>705,7997=>714,7998=>612,7999=>614,8000=>550,8001=>550,8002=>550,8003=>550,8004=>550,8005=>550,8008=>885,8009=>886,8010=>1038,8011=>1052,8012=>997,8013=>1021,8016=>550,8017=>550,8018=>550,8019=>550,8020=>550,8021=>550,8022=>550,8023=>550,8025=>870,8027=>1014,8029=>1043,8031=>944,8032=>715,8033=>715,8034=>715,8035=>715,8036=>715,8037=>715,8038=>715,8039=>715,8040=>905,8041=>913,8042=>1066,8043=>1085,8044=>1034,8045=>1044,8046=>980,8047=>961,8048=>605,8049=>605,8050=>440,8051=>440,8052=>605,8053=>605,8054=>330,8055=>330,8056=>550,8057=>550,8058=>550,8059=>550,8060=>715,8061=>715,8064=>605,8065=>605,8066=>605,8067=>605,8068=>605,8069=>605,8070=>605,8071=>605,8072=>886,8073=>887,8074=>985,8075=>993,8076=>937,8077=>956,8078=>874,8079=>878,8080=>605,8081=>605,8082=>605,8083=>605,8084=>605,8085=>605,8086=>605,8087=>605,8088=>1096,8089=>1092,8090=>1223,8091=>1250,8092=>1270,8093=>1283,8094=>1174,8095=>1162,8096=>715,8097=>715,8098=>715,8099=>715,8100=>715,8101=>715,8102=>715,8103=>715,8104=>1057,8105=>1073,8106=>1228,8107=>1251,8108=>1202,8109=>1210,8110=>1151,8111=>1131,8112=>605,8113=>605,8114=>605,8115=>605,8116=>605,8118=>605,8119=>605,8120=>721,8121=>721,8122=>721,8123=>721,8124=>883,8125=>500,8126=>0,8127=>500,8128=>500,8129=>550,8130=>605,8131=>605,8132=>605,8134=>605,8135=>605,8136=>790,8137=>830,8138=>909,8139=>931,8140=>950,8141=>500,8142=>500,8143=>500,8144=>330,8145=>330,8146=>330,8147=>330,8150=>330,8151=>330,8152=>390,8153=>390,8154=>506,8155=>550,8157=>500,8158=>500,8159=>500,8160=>550,8161=>550,8162=>550,8163=>550,8164=>550,8165=>550,8166=>550,8167=>550,8168=>738,8169=>738,8170=>858,8171=>880,8172=>764,8173=>550,8174=>550,8175=>500,8178=>715,8179=>715,8180=>715,8182=>715,8183=>715,8184=>884,8185=>857,8186=>927,8187=>892,8188=>988,8189=>500,8190=>500,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>500,8200=>250,8201=>166,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>500,8211=>500,8212=>1000,8213=>1000,8214=>333,8215=>478,8216=>250,8217=>250,8218=>250,8219=>250,8220=>500,8221=>500,8222=>500,8223=>500,8224=>500,8225=>500,8226=>500,8227=>500,8228=>250,8229=>500,8230=>1000,8231=>250,8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>166,8240=>1000,8241=>1588,8242=>250,8243=>492,8244=>714,8245=>270,8246=>484,8247=>693,8248=>469,8249=>333,8250=>333,8251=>727,8252=>666,8253=>695,8254=>500,8255=>953,8256=>953,8257=>338,8258=>931,8259=>500,8260=>167,8261=>332,8262=>332,8263=>1000,8264=>833,8265=>833,8266=>500,8267=>540,8268=>600,8269=>600,8270=>500,8271=>333,8272=>953,8273=>500,8274=>497,8275=>576,8276=>953,8277=>785,8278=>450,8279=>881,8280=>620,8281=>620,8282=>179,8283=>621,8284=>569,8285=>179,8286=>179,8287=>111,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>300,8305=>185,8308=>300,8309=>300,8310=>300,8311=>300,8312=>300,8313=>300,8314=>300,8315=>300,8316=>300,8317=>216,8318=>216,8319=>373,8320=>300,8321=>274,8322=>300,8323=>300,8324=>300,8325=>300,8326=>300,8327=>300,8328=>300,8329=>300,8330=>300,8331=>300,8332=>300,8333=>216,8334=>216,8336=>336,8337=>294,8338=>334,8339=>333,8340=>308,8352=>710,8353=>722,8354=>783,8355=>611,8356=>500,8357=>833,8358=>722,8359=>960,8360=>1101,8361=>1000,8362=>889,8363=>532,8364=>761,8365=>742,8366=>631,8367=>1435,8368=>579,8369=>609,8370=>639,8371=>660,8372=>556,8373=>500,8376=>524,8377=>675,8400=>0,8401=>0,8406=>0,8407=>0,8411=>0,8412=>0,8413=>0,8414=>0,8415=>0,8416=>0,8417=>0,8421=>0,8423=>0,8424=>0,8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,8448=>694,8449=>692,8451=>1009,8453=>687,8454=>717,8455=>622,8456=>709,8457=>923,8458=>500,8459=>1035,8462=>556,8463=>556,8464=>952,8465=>637,8466=>800,8467=>457,8468=>835,8470=>896,8471=>855,8472=>644,8475=>757,8476=>905,8478=>722,8479=>722,8480=>991,8481=>1186,8482=>1086,8483=>722,8486=>771,8487=>771,8489=>333,8490=>774,8491=>721,8492=>806,8494=>551,8495=>444,8497=>873,8498=>617,8499=>1203,8501=>593,8502=>498,8503=>339,8504=>523,8506=>906,8507=>1181,8523=>778,8525=>1048,8526=>408,8531=>800,8532=>800,8533=>800,8534=>800,8535=>800,8536=>800,8537=>800,8538=>800,8539=>800,8540=>800,8541=>800,8542=>800,8543=>800,8544=>390,8545=>760,8546=>1138,8547=>1098,8548=>705,8549=>1098,8550=>1474,8551=>1850,8552=>1096,8553=>713,8554=>1095,8555=>1472,8556=>668,8557=>708,8558=>731,8559=>947,8560=>299,8561=>560,8562=>827,8563=>758,8564=>482,8565=>769,8566=>1033,8567=>1293,8568=>768,8569=>508,8570=>783,8571=>1049,8572=>277,8573=>435,8574=>552,8575=>832,8592=>900,8593=>523,8594=>900,8595=>523,8596=>900,8597=>523,8598=>900,8599=>900,8600=>900,8601=>900,8602=>900,8603=>900,8604=>1152,8605=>1152,8606=>900,8607=>523,8608=>900,8609=>523,8610=>1000,8611=>1000,8612=>900,8613=>552,8614=>900,8615=>552,8616=>524,8617=>900,8618=>900,8619=>900,8620=>900,8621=>1168,8622=>900,8624=>622,8625=>622,8630=>1069,8631=>1060,8632=>964,8633=>964,8634=>980,8635=>980,8636=>964,8637=>964,8638=>557,8639=>556,8640=>964,8641=>964,8642=>557,8643=>556,8644=>964,8645=>964,8646=>964,8647=>964,8648=>964,8649=>964,8650=>964,8651=>964,8652=>964,8653=>964,8654=>964,8655=>964,8656=>964,8657=>630,8658=>964,8659=>630,8660=>964,8661=>630,8662=>1063,8663=>1063,8664=>1063,8665=>1063,8666=>964,8667=>964,8668=>1100,8669=>1100,8672=>964,8674=>964,8676=>964,8677=>964,8704=>627,8705=>548,8706=>558,8707=>627,8708=>627,8709=>746,8710=>759,8711=>759,8712=>576,8713=>576,8714=>439,8715=>576,8716=>576,8717=>439,8718=>500,8719=>812,8720=>812,8721=>713,8722=>676,8723=>676,8724=>676,8725=>540,8726=>540,8727=>500,8728=>500,8729=>500,8730=>550,8731=>550,8732=>550,8733=>752,8734=>752,8735=>509,8736=>555,8737=>555,8738=>555,8739=>240,8740=>531,8741=>478,8742=>705,8743=>694,8744=>694,8745=>694,8746=>694,8747=>493,8748=>793,8749=>1103,8756=>629,8757=>629,8760=>676,8761=>947,8763=>676,8764=>676,8765=>676,8766=>803,8768=>305,8769=>676,8770=>676,8771=>676,8773=>676,8776=>676,8777=>676,8778=>676,8781=>676,8782=>676,8783=>676,8784=>676,8785=>676,8786=>676,8787=>676,8788=>947,8789=>947,8790=>676,8791=>676,8796=>676,8800=>570,8801=>676,8802=>676,8804=>570,8805=>570,8806=>676,8807=>676,8808=>676,8809=>676,8810=>1047,8811=>1047,8812=>450,8813=>676,8814=>676,8815=>676,8816=>676,8817=>676,8818=>676,8819=>676,8820=>676,8821=>676,8822=>676,8823=>676,8824=>676,8825=>676,8826=>676,8827=>676,8828=>676,8829=>676,8830=>676,8831=>676,8832=>676,8833=>676,8834=>676,8835=>676,8836=>676,8837=>676,8838=>676,8839=>676,8840=>676,8841=>676,8842=>676,8843=>676,8846=>694,8847=>676,8848=>676,8849=>676,8850=>676,8851=>694,8852=>694,8853=>738,8854=>738,8855=>738,8856=>738,8857=>738,8858=>738,8859=>738,8861=>738,8862=>678,8863=>678,8864=>678,8865=>678,8866=>487,8867=>487,8868=>752,8869=>752,8871=>487,8873=>659,8874=>831,8876=>587,8877=>587,8878=>759,8879=>759,8882=>676,8883=>676,8884=>676,8885=>676,8886=>1380,8887=>1380,8888=>1027,8890=>626,8891=>694,8892=>694,8893=>694,8900=>512,8903=>676,8904=>759,8905=>632,8906=>632,8907=>831,8908=>831,8909=>676,8910=>734,8911=>734,8912=>676,8913=>676,8914=>694,8915=>694,8916=>694,8918=>676,8919=>676,8920=>1441,8921=>1441,8922=>676,8923=>676,8924=>676,8925=>676,8926=>676,8927=>676,8928=>676,8929=>676,8930=>676,8931=>676,8934=>676,8935=>676,8936=>676,8937=>676,8938=>676,8939=>676,8940=>676,8941=>676,8960=>737,8968=>411,8969=>411,8970=>411,8971=>411,8976=>680,8994=>951,8995=>951,9001=>398,9002=>398,9251=>500,9472=>1000,9473=>1000,9474=>1000,9475=>1000,9476=>1000,9477=>1000,9478=>1000,9479=>1000,9480=>1000,9481=>1000,9482=>1000,9483=>1000,9484=>1000,9485=>1000,9486=>1000,9487=>1000,9488=>1000,9489=>1000,9490=>1000,9491=>1000,9492=>1000,9493=>1000,9494=>1000,9495=>1000,9496=>1000,9497=>1000,9498=>1000,9499=>1000,9500=>1000,9501=>1000,9502=>1000,9503=>1000,9504=>1000,9505=>1000,9506=>1000,9507=>1000,9508=>1000,9509=>1000,9510=>1000,9511=>1000,9512=>1000,9513=>1000,9514=>1000,9515=>1000,9516=>1000,9517=>1000,9518=>1000,9519=>1000,9520=>1000,9521=>1000,9522=>1000,9523=>1000,9524=>1000,9525=>1000,9526=>1000,9527=>1000,9528=>1000,9529=>1000,9530=>1000,9531=>1000,9532=>1000,9533=>1000,9534=>1000,9535=>1000,9536=>1000,9537=>1000,9538=>1000,9539=>1000,9540=>1000,9541=>1000,9542=>1000,9543=>1000,9544=>1000,9545=>1000,9546=>1000,9547=>1000,9552=>1000,9553=>1000,9554=>1000,9555=>1000,9556=>1000,9557=>1000,9558=>1000,9559=>1000,9560=>1000,9561=>1000,9562=>1000,9563=>1000,9564=>1000,9565=>1000,9566=>1000,9567=>1000,9568=>1000,9569=>1000,9570=>1000,9571=>1000,9572=>1000,9573=>1000,9574=>1000,9575=>1000,9576=>1000,9577=>1000,9578=>1000,9579=>1000,9580=>1000,9600=>1000,9601=>1000,9602=>1000,9603=>1000,9604=>1000,9605=>1000,9606=>1000,9607=>1000,9608=>1000,9609=>1000,9610=>1000,9611=>1000,9612=>1000,9613=>1000,9614=>1000,9615=>1000,9616=>1000,9617=>1000,9618=>1000,9619=>1000,9620=>1000,9621=>1000,9622=>1000,9623=>1000,9624=>1000,9625=>1000,9626=>1000,9627=>1000,9628=>1000,9629=>1000,9630=>1000,9631=>1000,9632=>678,9633=>678,9642=>309,9644=>825,9645=>825,9646=>678,9647=>678,9650=>840,9651=>681,9654=>681,9655=>681,9660=>681,9661=>681,9664=>681,9665=>681,9670=>580,9671=>580,9674=>494,9675=>791,9676=>791,9679=>738,9688=>500,9702=>500,9711=>855,9733=>1003,9734=>1003,9824=>618,9825=>645,9826=>587,9827=>582,9828=>582,9829=>645,9830=>587,9831=>618,9833=>333,9834=>556,9835=>778,9836=>778,9837=>556,9838=>556,9839=>556,10214=>561,10215=>561,11392=>760,11393=>568,11394=>545,11395=>444,11396=>598,11397=>433,11398=>1039,11399=>760,11400=>681,11401=>502,11402=>572,11403=>405,11404=>583,11405=>463,11406=>698,11407=>529,11408=>754,11409=>555,11410=>338,11411=>258,11412=>688,11413=>524,11414=>700,11415=>521,11416=>799,11417=>609,11418=>708,11419=>537,11420=>546,11421=>411,11422=>778,11423=>541,11424=>724,11425=>524,11426=>545,11427=>446,11428=>676,11429=>498,11430=>615,11431=>433,11432=>759,11433=>589,11434=>800,11435=>670,11436=>669,11437=>512,11438=>801,11439=>609,11440=>1003,11441=>743,11517=>266,11518=>617,11519=>307,11799=>333,42560=>657,42561=>444,42571=>494,42576=>1114,42577=>887,42580=>1107,42581=>758,42582=>1085,42583=>768,42600=>778,42601=>501,42790=>774,42791=>551,42792=>953,42793=>752,42794=>652,42795=>452,42796=>478,42797=>422,42798=>662,42799=>612,42888=>333,42889=>278,42890=>282,42891=>349,42892=>278,42893=>774,42896=>722,42897=>556,42922=>925,43002=>832,64256=>670,64257=>565,64258=>558,64259=>842,64260=>835,64261=>611,64262=>738,64275=>1105,64276=>1105,64277=>1099,64278=>1105,64279=>1361,64285=>266,64286=>0,64287=>532,64288=>552,64297=>570,64298=>716,64299=>716,64300=>716,64301=>716,64302=>593,64303=>593,64304=>593,64305=>498,64306=>339,64307=>523,64308=>561,64309=>266,64310=>291,64312=>576,64313=>266,64314=>496,64315=>501,64316=>510,64318=>581,64320=>347,64321=>512,64323=>493,64324=>491,64326=>561,64327=>544,64328=>502,64329=>716,64330=>571,64331=>266,64332=>498,64333=>501,64334=>491,64335=>593,64336=>264,64337=>247,64338=>897,64339=>897,64340=>328,64341=>338,64342=>898,64343=>898,64344=>328,64345=>335,64346=>897,64347=>897,64348=>338,64349=>338,64350=>897,64351=>897,64352=>328,64353=>338,64354=>897,64355=>897,64356=>348,64357=>338,64358=>897,64359=>897,64360=>328,64361=>338,64362=>858,64363=>858,64364=>360,64365=>328,64366=>858,64367=>858,64368=>360,64369=>328,64370=>655,64371=>688,64372=>597,64373=>597,64374=>655,64375=>688,64376=>597,64377=>597,64378=>655,64379=>688,64380=>597,64381=>597,64382=>655,64383=>750,64384=>597,64385=>597,64386=>440,64387=>397,64388=>397,64389=>397,64390=>397,64391=>397,64392=>397,64393=>397,64394=>345,64395=>345,64396=>338,64397=>338,64398=>901,64399=>950,64400=>453,64401=>489,64402=>901,64403=>950,64404=>451,64405=>489,64406=>901,64407=>950,64408=>451,64409=>489,64410=>901,64411=>950,64412=>451,64413=>489,64414=>591,64415=>591,64416=>591,64417=>591,64418=>328,64419=>333,64420=>394,64421=>423,64422=>424,64423=>399,64424=>314,64425=>314,64426=>470,64427=>470,64428=>470,64429=>486,64430=>752,64431=>752,64432=>752,64433=>752,64434=>344,64435=>344,64436=>484,64437=>484,64438=>508,64439=>508,64440=>508,64441=>508,64442=>565,64443=>508,64444=>335,64445=>344,64446=>344,64447=>342,64448=>354,64449=>354,64467=>648,64468=>648,64469=>453,64470=>489,64471=>359,64472=>329,64473=>359,64474=>329,64475=>359,64476=>329,64477=>462,64478=>329,64479=>329,64480=>329,64481=>329,64482=>329,64483=>329,64484=>742,64485=>725,64486=>301,64487=>339,64488=>301,64489=>339,64508=>742,64509=>725,64510=>301,64511=>275,65010=>1048,65020=>1135,65136=>300,65137=>408,65138=>373,65139=>373,65140=>300,65142=>300,65143=>408,65144=>300,65145=>408,65146=>300,65147=>408,65148=>300,65149=>408,65150=>351,65151=>408,65152=>350,65153=>264,65154=>247,65155=>264,65156=>247,65157=>329,65158=>329,65159=>264,65160=>247,65161=>742,65162=>725,65163=>301,65164=>339,65165=>264,65166=>247,65167=>899,65168=>957,65169=>328,65170=>340,65171=>424,65172=>423,65173=>897,65174=>957,65175=>328,65176=>338,65177=>897,65178=>957,65179=>348,65180=>338,65181=>655,65182=>688,65183=>574,65184=>602,65185=>655,65186=>688,65187=>610,65188=>602,65189=>655,65190=>688,65191=>610,65192=>602,65193=>397,65194=>397,65195=>397,65196=>397,65197=>358,65198=>348,65199=>351,65200=>348,65201=>901,65202=>901,65203=>641,65204=>601,65205=>901,65206=>901,65207=>641,65208=>601,65209=>909,65210=>909,65211=>823,65212=>803,65213=>909,65214=>909,65215=>850,65216=>820,65217=>557,65218=>557,65219=>541,65220=>504,65221=>550,65222=>557,65223=>535,65224=>495,65225=>595,65226=>552,65227=>694,65228=>517,65229=>602,65230=>577,65231=>694,65232=>517,65233=>858,65234=>858,65235=>346,65236=>328,65237=>635,65238=>635,65239=>346,65240=>328,65241=>446,65242=>648,65243=>453,65244=>489,65245=>601,65246=>672,65247=>238,65248=>280,65249=>489,65250=>478,65251=>473,65252=>534,65253=>591,65254=>591,65255=>328,65256=>333,65257=>424,65258=>423,65259=>470,65260=>406,65261=>329,65262=>401,65263=>742,65264=>725,65265=>742,65266=>725,65267=>301,65268=>275,65269=>476,65270=>614,65271=>476,65272=>614,65273=>476,65274=>614,65275=>476,65276=>614,65279=>0,65529=>0,65530=>0,65531=>0,65532=>800,65533=>900,65535=>600); // --- EOF --- diff --git a/lib/tcpdf/fonts/freeserifb.z b/lib/tcpdf/fonts/freeserifb.z index a7a00206f4f3fd01ead69edc93232d669a4a8dab..4b124cecbf191da8590197cd490260cd2a039099 100644 GIT binary patch literal 680954 zcmYJZcQhPs(DxnDg6KV>M~@cKf<*)g5u*3r5;fXdtW|>O5iLs8AforM?CPCG^tPh+ z#bQ_4_5SYXexCE5Gv_ncoHKu1|IGI~GuH&>9(Di&4QCcH5LAcDx33znU%uwzmZFbP zd6~jPKsaS_Z|})8(aZEzTD`Wg=d=t&LRz$Js=wpnI2a5K4PWWKdZqQ&Rals&8xNk% z`$3bv1FA;)cc7HTcdmm_O_%0C8xLolBv&4~e#m3}Dzk=n9#g`kP(I7W_iQWeZ~i(T zC@-6ubw_wk*cze(k^@5cMEG8HbLh}5JX&aX*wJ7$1Jm<8_51w#EL>B;xC&O)*ICT7 z=y_d+Vb7K6WzCKXm;cGi*m+jwzixt3L_kUVV-c`2moLFC~@TA*g6f458eU%LQ zoW{t9QbehdJj|MhzZ@Y$#J7j4-!~EEm>1_oZ~q(FE#gDt3&Rbud2!#>K@Ycl2xF46 zycG*Af&`{C3qUP?E8wfB>>PDV?4YKMCiLv3uFh*^Lvhi8&$N*H09+g>;^- z&Vl}FEFO?ey@&Ep(L|P{CPwSq#D8U2H6n0oRD3f#rwv|IR*|PQe;+T=@PU);Q3M?q z(dY07G#+z8=Gg#t28QJOdNu=rZ=!c?wEw_}4pZfDn!ArAUUyR}$4cGuJ%;u)!FxYo z_26;W9uuend?RG4)aHHWlk^L-Rp52Zy4Pb`2+kl6^O7-HW{TwpLe(nB;6rSP6O{A0 z7Et?FGo`s|QKOQrn3ItWS$0@r{He)(1RvkDD_5a0&c+zN&ZQNcc;-u2rZf!AR?Poq ze|@9>7Wxky?efNh<2^tuv4DCnl+NJ>M(Fb~{M#ZU`sut|QLY|> z42ecnwaF9}8nBNf$DX`lh-?!JD*AKbDpEa^mgCw*SJ_nWE>vuj=Bg$D71I(LZW4tf z3Hy@+p3ctK)!OwHKKNo}tNQr(^VCQYa^X}kERI<6uShrH-73X3>4ZnX<2W7y1*4~Q zqkq@hw;&2s!0xm7BI%C*5*agnWN?cWYTUSJIia{CW3lDr&`A7J;V}Nyud}hd;0fjw zgP)aWW~Xp*zPWUziEk&A-2rwk&vERg$XhCa#)6CGBB_X9Lr~%TLF@8^}BNwb(98T^|2D zp*8}@C^mwatmsOJeAJ$5{bprueq>(U#%yOJ|Oa%ExG3vk=;vZF_LG zq06e!$c=YL&1W<8sP@$B8WGPX5;?cme+chb1SURwSE4>o(bHtQc(fIZ9pw-S5W`!3 zC5)=WlCa~WcofdZPo0OZI)?>HTwebRtVLtTLkyZfK%{C?4%Gd{4lyG2ZBhuv&65?M z_K@SpcfbT2cSo2cW}z7$n#lp&zWM<&qft|UH>qK-9QrGi#xFR>Dy}Wv9`}A=9!igx zXWUf-n4|k~{Z`=|0WdcO(fR)?{l&qK+gGatopn;T)9!uzF2G~$wU zs6=OmPibat)6q=l@3+YuGoA?C7lk-RB2I5Y&-SDP1%D9oX}mx350OeHIhXEWCao;-!}OVppDxJ!mcF@p|PY0eB2?u4{G| ztsQpx2Ro8Kd(BzeM_Y4gOLWlxX|eg+y-R}d^V3LUv3nl*gdax-!hJeDc&8}Pr4f(6 zlFR}k!BL9>j6xMkcA%z#+Dq0JY-=1B69Xw>CD?>*j|4HI$Nqd`>eNB}G=+V>pibBD zMnW1xB2~6ZX7izNZHD4X;1pO`jn&&*eVq3$F!1W&Fp&X4RZq+rNc&6BpWvg%Wc{?* z?Y07sv*fPv$+LN~h)&Jv%;tld@QO7GuZ2ni9J}|sKUYH7uP-2-RI5L0K;PRqJIPKm zGT~PowgE0|VzMofO>1o8qo%bHE&;`|j9$(+Ir6rga>PDe&uZsqU4EOubF@2YPUIdC z5v-X>P#27hnTIuG4rLwkyX5B75RCiCHvFP!Sz?~oRc_$-<4s%H7$daJ5#6CadH&sg zX_>WsM`>hvnd05j5p)q;E6Rx*lYk}$$r7{^z#2S)21a^<03UBo>Aja{J>sp5&yX$P zXO!QY^8?Iq82TPUy5z5Wvw*gAzqwfn>+i}#+RScsEH!cCmOL615>yXeDjT0AGvvu% zKWoO@9T^5MFU+w@wI^mBW5wRz;$A~%4ck3uC%Z#vS^aL7&R{_t9f-LPTAv|q zcmvY=uPW1}(a%w8jaJq+6Uq~R$i(}+7+mjthx#!$KJ-EMD<3RSi>Y8Pr$5+oI|=AL zOFLHnM_<2ih8EFR?K<1x-KKO@bal70t{Ge?ZNEwsW?m=WesAj+F~{YI@6CEn1`&0( zCLJUXNOOUAgGRq|(?*j}wp@DSnN~)Y%P)i2K2%&o$kujTUB+5DX8I%cnfsP+IO@Aq z>z}Y0xuT!qLca-DE)Xyw{4NcIw|^(sx;)w>4sLz0@oNSU*RU9wL_0x$PF4u^@C)z_ zT~dGSCh3xMl2jH#hJ0dBc0v;v=D%(Py_EnnfYUlQ`L>tfy91A2i3v2oMLsmu2$h&o zXtPnHZyACI+4MGPQtP8B%p+NNv{k)aM#R-X3SW4Wr$JhMPf~7m)~&28s5i|I*r(r< zSxM6*D*4U>8F}B~u{&ku`(x z+mF50rjyP3Q>Orb&Nu8EPf!hftt!?8Gr;a0lk=Iek%T*DRo-ARY?QnUy)6gq(_)-I z`_kQ(`(pU1-1jEqt!vxaeyjB-m+ynL53|FO`nCSjx3Pqw3HC@fC&Q?K=y4w8;0Ff@ zzxvN+x2ffK1Z_R_vT>Gz9*U7k;xrCt`hBsAv3hm($jus;S})~$1sX(`vl%p+EQ;El z$;*=!f0fA=iGL6K%U7UEa18x9Iz~wqmPS`a`6W6|i{HwGO`iVvl2w(H88aMzl7V^JNGwD8`nlXb>2khRiP^i}u}r z`eZDdT$T05rK_p$F`muMzULf!0iy(b9R1bqUx?HfVVa>hLdV#+1?JP);0ks>Cj7qL ze5=3wfN*8vfby3(Ydx=;zoFY&3O z>oIdeJAXo*#HETixec?u&v38kmSs^=S%v0ShSUyd1R()xC<# z>rDfNBSKWL2On5il^O&xy;aaR89BCLHG31#s(AEvvFiRxCC;3*N?^y(&(X?hh4BI; z?pEI)sv1h9*(u+-H|VHaSl)5ZK^INoVsTApVzu{gm(-lX1?@i_r zMwCD#V>af+ibdI#O7Q&)kXtbHp$&*$VtYY;^}6L-s8&tGqOp+6kcH69Uh(2sGvEVb z0EFkxb)}COoY+)ebV(X~nY8H;_UD{5HbpsjRxWm?VwkYf&2w0?x3`alYR0o3pPo+C zA#~tQw%-;{9cMf%vNl3d`L8u$PcU9rem!jv)Ty4=#!4C*B&TSm>9^H)b;c5mFjY#= z9p<;OoV{I6lKN^Y_ZAQ2D@zK0^Npu$zNSoz75v-K{)baCzf+a&rw+p|LaiW&Cr$48 zc2K`2`>XbI+e&F?*lRoZN?+W!{OKukpLZvzV#Xc$51l&R+Od1OzfENz22YB9wXr@g z^CEZaefq&E`~~sZneYm;ht&CqHGCzCwIwh9`urWk zH5UJ%>9%HKPTOA@nj1h7Ro5y7=+(Hov(}S*FY_Ca^v;??ScCXaq6_UWmQ@maGosab z4oP3po9%FQ^@1~$O~F~`iNlfNfrrI+?M%_<(|MO?PsH|bih?dN;`s4SzqevW6BW*iBxc1y4z`H`Y*DAe>k#Qs@_s$;jQNd5_*l=jN0W(s!{8&- zX6=Ee9#m+*+K){J?k=vN3ryzX?9t7bN9ddi)IT#4cXqAq|^-Or(#gA5lCAZKakm?VV+Ii6V z-Lhh0&81uB*i)tc+gTQIf_~T9WPnj1Wb7OFi%CaL=BgizoX$7OT>(5WGvN`RT}fAe z=P?Oa*$Gnb=rp%QVaA=Dboa;8Oj_c_nOQY!uJ+r$cscvR22ignDOH%`aJ*;CM+=4^ znWNz|&rIfM`fDk_`@il#0*zdovWbU3gyMMOttXdEpTqUW?_H;VrfS%yW;&S_1KE9E zdeMw-e(y9h@Qu)`O6tIZxrsk}AHCwazYw1jS*t|#bwhS8Qnq8~?p7+SNddxn#6NZH zdqSnRgQ{9ocox5-o}}*#*n%7)=(c;5r$ar9^ro3Lu0<_GEdo}~ggi)vU6nt^UQ?SF zH6uso<|%8vm?_C#K*_-g|2@c6JAUZz)c^%fA-CA2#-dLKf`TFtX6#H5M-K;zuO@kd zk$vpb;&V{vgJ%dfO_l%ph{>Mi8WU-ZsjEZvd(?D;x;EM~k2wu<;NjlxHWxfXN`6qm z^ueI%HJiGo*?GJ5oR~>RpUH@1iy2Cj@q;qrH-uSvZ0ga;;XO)Eu_DXS=+wY1(5F;s zgd?%U2-CS}TDYQzQZT|=pD=W%sb!)N;0Fh(E|D7fo0R0<54o;DRJr3Y-ZB+-V18eN zB8F+Rd^9*sl2dUk3(VlZACfa5|4Y_eD^1Gymc68qQ>x5!%_<42aPSfl_|H@wDNu=U z?Z6IOcs;Mrm#rmT46Y)~Nbdz;bvze=On26Zbdmps@T>q`9_9Vzvt-nJHmAzGcpmNP(V zOk3x2Tb5J>T9^D_^191~NU+NkpzVos<*2>3ejhSzX?NMEjCSCVQ7e!=MBo5_^Sh3H zayc0nV@okHNu*M8sjCt-`wO!e&ri9@>*qBkxec7KL=BtE+R7r5DG zcP8C1t4zW&T54XE4PG~%Bz~iF46Iwx+f}XH)yv`()e#Z~M~Q71r^C zj&e2;K!0YXTNR(4mnXiMv+mgA^RCeem~i`$Nq_3WPY=!Q!_YzKsO4EK$O_JH7abF7 z0%|eUs;3rmo-lz}(NVU55`DpBn!i8>cd5-;hZJ~+)#v)gzLAwMlv%(%;a%#AR%sDB63ajZG+SX8wb!LV zNu9m{$4VGNKjj`w1HC6tTzgrcC4vO|+e@isYgpot)Dtn2!AWTop)_UxMl4SWZr)vh zCqTD5UE*O<8U@$ZZ?$dn9ydZGr1IN7yDoCS)_&jA6DM@di&|vwu=qumgNBTI|8=^*-=PaEWI$w%c63h`upUoPQn5hkgWy724^DqV zK5Mqm`Oy|gg^caxeO&b$u&&J1HHV;S@Te!6Mc%W;E{S|b`g9`%H6hG{vRf>f06hBf zxOXVrvSh#;d&FFpn{sbKAe20NV3d9r!clADf$7L5o?oc7xZefoGj91T17SbwA zQS8c7u}Phpa5|osf(@`~uP&*+KFsEAAg&X_zB2{8{L>gv_|Ub&aKR3Y3ZCeh1^#Xs zz66d$osUCBh%X`q5qx(jSh0`7#c8OEg`QYD^ce+!?683xHUf`a4OQ;DohfzkxNc}W zC^@!Rd4meJ*@C|8z~dCq0-|t6@t+td)CZ;T^wTVRhDGD(599?>mC$`3h*WqAT+PHz z;47y~iGdb)HY23wF9nyV#x=1~@Nt)ET~Jy`6MW9OU9%i2Ig7oQOBpYPNrN9$zv7lg z&Q*U$t@y|6kNeR62EsL=H!Fq0KesCuIeZ7Ku0RLX{YSu}V>SqyXlGvc_-1t=SYSuy zkr$Zr=Wro0FyJ_W)9vFISjMe*fqwzwCB^aHeBoz_p3u#?wfryLR-&vjY+$B>Cn(UqrJS1onP=nK?gS&;cN6orGd12F2UjCWpf z>z6IQ&rD=sa&}Zo?7Q+KW!{?fClx3W)vvR|?RzCfg3Bx5i8 zcP@eHm~hFt+nK=r_QPL}`2Aloijc#Hvf?Z;WBCcxW5vXw;wKK_HnmkrIIw5lyV`biwa_*Sx#4Z|OWL|5T7 z2|PABG(Er+K7FC951wu1-A%JwQj@&PZ^Jl&x z-}&yoXS*_V)dFD?HG=`9`{vr%{PMsHE_xTZ=?~l2?6VmAeGVN;nkonav_t%%2KB8i zquNW`pSUXWiupA7dz+?XYS!$eWD!y%#omzvv>QIFDX1UMLD=DII3 z`3#>xDiU|PWY=Un_b&SL^^|v|Z_HL)v*Vt?ChZLY3L)=|fZ`oH` zYN@gJe+5@@`U1>9tf2osCdft5W%Y#D<$(JcKCz1VY#SW9CRiD$nq2;plGn!b@g=lw zj>+b>hMhK~`L{cQH8~uwI&DRtRVuh}&vNLEaboo#VQosesU&vF-tG;@$;+4QKO}YI z6s#LBzrWLb0<#i>?b7}?G!W(*j232Y`S2C@`1kPa%0&g;F$=Ld2qJRt0vP%P5Az3k zskWwHS1$yEx=&zEG_%e&)aRiUazRyBL&;)(& z^7}Hq@>-Ofy?4B^{`6_sw0K-ZbJFbY%;HoR9oAC_JJF3XV?`onbM+>f5wsKJnI9TaeMZWyU@>?B0ZHJ;D-%ntw6v!!|+I_IU zmoxTewZ3&lSk^A&-Vx7%xzMFg35!ixB@$N-YHC|#W@-KQtAM)n=;_z{*>%cZ{2F$k zT7NI7qT5@KSs;aCS>#?pJig%Ped>ee>xcaBfDOz`gh%&RglUu3M`ujTNM#K0IoFQ6 z&s=@CQ8j@WDmNRl1F1u~?Gw2wLKov7bs6ebT>inX1`n+qgj~YFDl0puwRaXm;j=%Q zS%zb(E@}5~h>yUR9}fPN1X9`Bz-G*owRSyRYmR%WNyMiz8sPt$Fa2q;-0ze%IU#QO zQZ^M`fZvqCeJ<^AoF1I;lV9;lAepb<&m-jFkA1UzP9mnO1fI`0{RcPO-rH?@U;w%k zaHz;_x2Pdht~?MbN^iXn3;FCfq17;VG-M|9vds((uY({icy9PF%oacDQ5bSZS5+!m z2?o#Ut+VX7BJ#Ak`?Pecd;tQ%Cq9MqhRKC z=mT<;GefhuAV#7Ab+rnMFQojr+C-oTQC?{*-@u#MHEIWLc}wuXk-PesQr<-xrEV{A-G-&) z@L%!lio!VpO-U!Udma~d&Kx^m7zVr#s^5wDYbHwBQ4}0|@-xlyeRH!m*K0m*_|V~0 zt9}&hFN~R9dEuJ=((3jn#nubp-iCl$Im&K@Iv6ot^-ksLQND#dW|dw3Dla|NxK$!% zKWFFMQ{Cq`H3B1uOjp}a(xaYO(xyQ9=}6tp{vCy*gqMIr35$vYj6%S*R(_9Z_J-ko zsNOj=E_Cb2M`$=xup;;^W9K_`_VLfk;~&!PMq-cERt_bf55YuSGpiIL)qT3#yqb;m zH+i;R8x26|*H}yw*kdexX!ru%T_HP2$>dJ{PtQ35Gtu`pi?JYBPFMe->q+Kdd zr!2DJxw5?S6d-u20kSIn4ujgPL~V=*e)xx4A%_VVA}NnQiyu5_uR=XAQaBGVS2SNj z-j(lYo!1;Jn+iYEgqE-;L*-kYRs)#!!WipMqK-sws@rQBIB}MT~`)dFZy3^vI_hYXQ)Y)LQJ1og(!<0^R7&#{q1V;iqaKM*S>1eqZ!5RQF^GJcFKN*PIgN6*L{Oq z?GEhff5BEUG^x>O;E~_5BxG3_qN*kTctSgk5ntD(FhDM}{knG16jN}_XS0&hMt}Gw zo@c6C$=wiB<=JC^xja(B`MRveEGx)PE7b)5g8|{Q!MM<+74aKSrswlXcD4SPgSU1` zM9ix=p5(Y?964-frRL5DH8THFER>Yf|4tR$UvVsG*a$;oLRTw}2?9~~h<+&$&!W5r zUVpk6eau>r*o+c>n96k|`K!&h;7x2dlzbmLV=(I_dOPjqw?IMaM!A5bp5?5^lz?X2 zX2wd@FU1!FF9kN7Xuc5ts8UjGf8H4C)$pUPB?)vZ>n5J>h_j;G4m!X%eax%b!!7a6 z=D|xZmbQx^P<8MuoAci#d_a8lIQzj9OWeE97f&pqR7m;>#bFm$2xGQOM|}OF6%j-a z!uor)0w}M(DAby~@^7vP(2=Q35n{Hcxuv`W-1MjfaO8|H0tzY7GH9GYAhuYBh@y=bOgVc>xf8jzDX2(h4;I)E3#u$eak?g%;t_z0LY`nS)TcFTHe>MUJ2kxjZ7PoKs^!FM1Gx&1 zfr#JLsY*rUQ7k?>_nZh;%_jmg`N{3Ro!O+sjuWVHRjX5cS+LQ%M66*U7EWO z&3~USt@E&l_LuerBph|gfOhSPP(GH z?7CoG2VDbQ5nU5qYF$pm-@NoZ$~>Js6D12ps1gcv38D%Py|Da}`X}tq*FS&$Xl<>p z8?49l*2Moe!q&cR##)`C`XDTDWxVaJ$*JZBqTfasWe}=z^^ZDNdpXNS zk!-+nd1=&RYk>B1<%qh*P z!B4RWd~fP!5xFlF+xc?CX@iFL!KaJ>!0uaLXSp4^aF^Ve+)Qxqz(8507t~(gy$HUI zIu}3Y+_o8lw?Rbjp77`);jIvI+Sk1Iagn8@W8^{Hu57gP+C(s(`OM-Dmb^ z!rOeb;Uu6$boLfF2iOzW`6XxLOQ-bT=MZV-XGmG3BrwY>%VO-QZ~Rqh>yV`#!0nxE zS+;Jr?)T&z`mvO48mXQ`kIUzgXUc;RWw>>yPpCd#?W*a_ZF_F8CeKC`{xS4rXy5JG zRo#^nTHA{H&oN{L(}wWh@uw=8^Ryg+2H?yun>OZ>@D1nrAd~Se4un$Ljq@>EtC}zA z=HPrO~up(ITyR}h}<$C=dIDvtUM_m7rl4z z+;{TH_*v;-{Y&iO=po0#O2glJs55ZXGk=9&fe-2w&~uo*5W7$^-T^u8Xc&VmoM~?l z$q;UkYEUOUW|5q5QK`T~&f&{yBiGTHviiH7Xw9|c5vTKu-RqAY*4*%CHy`QxL`j6VXDWj=vmAk z*sUQdK|e}J9eyRVA0B1PuGf+^ty3xz9q}7PtYryK8ax6{iaeBB!uK^(n$j zg_Ecfoa8a_d?IJZVdCKl145wCm*9mQxQmCauT#oa*_PdpXD*BIQN+j^xvfn_sLYW= z;MJAhiBONPva4CA`%!Lh{Q{MH$+AIZzBUsZ0!=y*yY^;v#+j_2>H-~Lb9mw6aj97< zUVm#ghpQWFk!QHM6**a^Gbc0LU=6-Kt$|SH-Kd?GE5pv&AL!io59D~LbJ-1iU^wL3 zi`M(Kz7(+7C^t)2&K^YJlk~08|t80XYq;L@#L|aj+vZGR@Ad;?OhXq zZ|J!vbk2y-Kp84oQ~>NpuNsq2+v3dN&T%I=Sw;Wxbx-*uXa zaIwVQ*~7P37wWJ=mzsI>1z4U-Iz&RGX$WI{2Z2rjBr-=)7DHuY!jIV9dPJac)=sF! z@rNabV0YX6Va8bk!U{XqcN2yx+}(dU5JsUFa=-&181yZSjK>hb)h7EcC=j`dRxa%i z{!l5A)`P|)pEX-*Awp6O| znwPqSxAfR-j4pMcFnUyRn;WRK%kV{9X?M%clC*my(wd{+musWz@4e^SS0=6o;`dMM zVwTa~RMfq59DbKygTq@VIIM}jQE>QONVt&V3Hg{6b?Rp0!gA9&l|xLRf^|KF|+JfpSQ156L0`;t?msF;_D^EYu$<`CJrt zIeO>MbBQ+%Y0xa(jWn-3`>zOmxV}72q&VgIA}>gVTX$u6PNfyH@x_A1;g4l5vudT% zzOGpxuhbWL`8>;H7qN#gLlqr_t;ck+0KAcS#86$Jd+b1l?QGP4-UUyt5uo@f!R0Mc zYVc|9+np4e=2mHz#h#=b0 zMMlU_ysb~GqPz`dEOI@OF<+Y+reKXO2i_&jTd01d9-_On>Vq)E2 zuJQ+x(#Pxg-a~^WU@Nc2z3e+4YT!#vIvzOd%=@jx+it5ww{8kqn4-}q+IdqkiX#r= z!wz)h(V84}BMvxn=jtI|1bVP|EwkX_zq{|8O(^T`A=>gaVLOuf#Ju7)ta^9>Pta%- z2>vP0sbkauhUlU0GowGdJ1LUGop}YmZ;!>Xxotz&6S8tP+TmGGSBLRAuD`|6*+U^U zq4`#~Y?F=sVU}X}4(u-eBk#{4t6+nR%(9Lt?U|`< zLPBcSsFv?$R42m8Z|$N}k(FzMu!RW5`DcKIBhWB<(2>{3ItA#MeV%R?e$(_Wd?9?v z@z+~2mH~iY+vvBQChsao6=c|G7&n0$AqmODZ!N5eoFDxOGe~Y9Nyyq-pH!|b5b!$L zcdmum5g0g?j%Kpft85SPm_0=dzBJ=MbagDR{Ko85a$Am=G#Pn~BLjDD+4tJFHuZ!k~P9{Ki1lcynsPXD09%->+jGNz%iRyZZSq4CumwOKe>dc%2d z8dbT@#?*3pLqe}=N_8d4k^YJq<&?0CJe`pVF!$zkI)6AM#W*^k{K`q}XL_u!i#)x4 zLw2HegZ0mnE<_f~bg{+O)BN5l4iBm+E8n1V!BoE5Q=Mh=@!ucyOt&&w%)5=sK5kXo z$5snz4Fcx>)F)swK2<-}yfQYM67#o)gIL8bz8dx)y%Ui_2>YL8q^Uq^0=S)CE_*+G z?FV+qqW`}8J9{fFh=X0ixoc9qb>xpNa&{gN$A>B7kzKlLnmp! zYB20k^=xDN%DHv1ggB4jAp}loM&uLahX-a%--XQC>+z@jutV&PdNEO3sqSS_0#H+PvHUO7SbMe zi?hzckIcBAmP7(V=l%=C0>t@l0bMqyt{<513t|Trqg48M*O-#ItVuM2Da?&)tJLJ0x{NM9S7|hS zV(1Z!)?{WZ6I{yQPTlGrFM>JvP4i_M88YV9Wy}1N~%}kpVeB ztr2;A3WK(hpkS#}RE4sq1OEbK5-u#&LhW0Tlhr6A<;c6;ms#2NX_N+?MQv@L7i_R< zpXWZ1YY~6dQe0^l`glBdK8scI9lw-IvZFEk6Ww9g?YgK@E?ibqo8*ABopI>r)_LfI zhwbe9;^upYob0)>xs|$rTm{@OjDxOGf`1juLCIav<>*$YaKUBjM}*cA*SkH{%EGQg zw)h53;qh#i?u9m@n-02@hej@(v-=XWt=^Xs{|>=g^#Wo;i;ubhyx&4o4t0v=Thgq> z^rMv={n{{=hD@z>C%$zu(3Fi&_r{-m+BKqjga|Uv!&B?o5U>ePRj(VRXzgZp;(1d# zterLu?Whfj7mUnqD(oGME=I3@K591Vi6*V9dT}{xi!w+B+vqsX+K<)fz@HFfXXLr` zGp}P#Ri6dT^z>ghLWnvz?BGlH@+cQtcVoGHe| zMe7>)+8Q0b=E>RgC(5KmKZ~{CKaz@d;JON)F|T*bve#8lktrx-JAbKFX&z{ieUcvy(N?m*k_*;v|1VC5}k{4|*UHx1>Fg2iMemUeRKId8H^&IPfI!?Msd^r)QTs{V<{44YEVX{hRzwyg+Tf!w4!PKnH*|+vGso%$*I7`KL zJ@w0rqH371W0FDiZ!gR%vgNoqpxxa=$@9llNo6>mF|%(M^;m{T{~xayf`1O)`3nU6 z|G;M_!?!nTt~Sp?ZkuRUn2HDN&rK6J5HvY_^H8GTOj}e#qg5OvV?DoQx0zujqZ`6{ zo7wgM<4%56d?0BH8!8X8Ns`L!@s&TdPC6c$^pcmai!iO^ViNh%M=_B;Ur&xRDMZAd zm?bK?tu>G=&3?-{7##A)9`l7@o`r6|7G|5UimMa&^+q3VniT@Rq`%3lr#m$2e=|PixK2}**`aUO=1NrxwG4c7au?HNA_R@ z5t@_#1Z5tp*A!zhEU2U|G)sF@*8xi#ryAU$7sYaxL<@Il#D$045pXE4RdAkMQSYJ& z0e1xXoB{($JvRbAsQ=6*5cjYqbsk8^iH`ulxi*;hbqnW&)*<9Mx^{ClgL0AWQiBS` zc_}~=kW1`}ysL~)LrPBKviqhpuPj^Z!r)kc%tG%AHu%no7&Fu-) ze+3gPFi-5=zqC?WCEonM7+2r4eDy#0Joo=j{~PY8pSOKh$~-yZ^Vz4{xcR?!6&&0C z=M~XjH{Vw0tajK*`wBJrzurUwzFaZI^S z%ui>FqE2AFL6a{rVQNKDq!A-U>58J}LNTr>Td(3HT=wLP(zC?PpL;mecTr9bPl;v7 zRKNDtdyaWCx$bIHO}_?KyiPOmj=j8h!Km@Y_*1=W`h+ZjS*#{O`){rWVa4A?zS53{ z1I>@7XH@PU4OX<8HkwZ>rwN-M9j%4A`u~nK#uQvYq)TSp?ky5H0`7aLEJaIo`Aj~d zq^&wNpUhs1EFJWkec8CZ`!^Rasxq=t)D+=D-qt|k<}ukK+6Ev;2JBAf?Og60#V_v8 z5Fmk_K=yw#LRO9A*c$B&S1VOvz}vp+=bL4Pz(*m_Bl;@RfQ#2mRRWT`v6M=Ce-9WZ zgLuUWS;4hDG`fcjOp!^ocIyt3kKaoi0s^SqUWvrY156^;0 zd|Y^3_(Pn#UHGp@dEhSp%FKGbnXX48P)|3`SWGE(p1no>~IZ=w@n;>o((V{V) zTj&Fhcvt8HD07Nz{9ulHyUp7})8eMSUGzhIAc-}CYlrpRl+HC0qrD6L{QaqFGGDvR zOV7FtH|@0+BIHxmd_L^9S^rMMNgxw@UY|H(J+tK8Dh`>sPCpCs5CWLR>1J>Tvz}T< zTh0b~u)@ruy)p_%p54L{0>ycg5R=F9_ScVtlw)#t=&SB>^TeSs3+!0T@MML zUlKgJxt9nI>j$V<5Zo~~+NfR;`vnsK#J`e?+xBRkTf`=$?>5B&D*{{Mfa3N`@h29P zR+Lt1$CX{jO`EeX9IJRq#2q$*&Mm2vFE$5){4A2K4q`V*?3=?am%|{k|87i9`kXgA zv~K2H(JuhOgsWZ?mpb-8)B&FA$t^6LOQ(GSA&vBq!`^&o?2_kVhYp}!&E}GNkz*gJ zi6`ByXNHG<>EN_SYR=!#9^FNX-c0N{*kdK}*DOka@BxBVa2y2Cqnp2R5IJ~re+m9` zh5P*Wku}oxuBG=zLh^q& zhkyUmPx$y6R0@0i^pjltvCD^GD%ipameN|jQ9(Ck{O^t;Kv6dby&FUTVxC0tY{WJh zL0{!-&x5lDMMcHKd2%Mn2Ol(gncb%$6R%*3ymvaR9AE}-1@^Db>PI%1=U)SX%B>!m88I&~=^uw|E<{*^cZTn`(4mef#hT_3SaJM&6>=3b}N zGqT2eCrQGjALGV@Dt(=2M=BYW9swjx)RT|6+e8ffWZRVt)RQ-?TERsF`9$q5qO+VV zgxm4f+!O`CC^as&6PSM6wWIp^D?gofo}ew2uy*0WYAv?$;ULOk>B$Xlzly}_H|G^S z(3q5*hc!V3_z#n8whn5m(uH6tclSEebK}8xg)r%$=5Qd}W{W(zSo~^+kHujq!_uOi z7wL6C7pc|P72=MzwZGNp2XWTrSYgJTspxxtyR(n<<|sO*J}kvt!y3mv>nh*Qab6Lw zNlkEHa}jSUMMI(sFy8Aj_pOW9Bp*SND4Bm;=;en2=uiJXS=7xFx@K5Z%o4mdJj{)* z+}l->GWQ$Ty*AjDiGlgXq7?V@0pc%QIKTvWbCs2s*r)g7PrIbBK(Y(O`i4_Vk#dYR zqIkpyE5*DgqCntS*`2{W36^fFRK1h#4W>M`RIAMLI?p^E3)&^w^jgnq_yWr^g~uVS z2cl(9ZgO;9AtT@|6A+5}maohfCs#~<%MnKwt~u)Oyp1OtsP64IoQxSOuieLbiM()+ z8nD3nvK=)SZpip8MUO3gZKeFtT=+L&(Oq*qVDo?EI9vp{Q8N9bOzud-7=#IuXxX zAId`=8bRut^PgJdB6P|oZcH5W`;Vn|flQn~croL&nZCU@%fgcl|9V>05&d~c*L*dw z7+yXZDaM82`SS{3^^OS#T)!k$#J}oi^!pPbe)r$%-bN}U5Jp~Ii15d5a-&JW=+i!( zv%h|^+>>kVEJ5E`G>TY~KHAISI=Ll7gl^u8^($;Y;pNg#=*+gwXHk{yeE^`^wNNxl z_}XNj=1LI#g;pznV%C;uUPOZh+`Y#}1@~TzLNOIPa;b#A3CwgC(0D}{Hu~kSecC<| z)je!x8;`~lMc%SF+8M%5sgL}oRMw;?;wwZaNmpZniFr=DZ0uBDnG@elR`h;R&1d=l z=(x+MHh^|t^ugVWL$Cq`ibHX?B89e4qjZo_p86`>r+XmnTm?Hd<0xATKG2S1W#e*Gb;n@I!b7)D( zt}=)8&QafbFazbnEvOsIcd>1XnX{{Xl9J<~ zny&8L#wmCu@1gG8lF`{I%5ohvRX%P%c6T-W73_ylJqSuHRgQya>R_1a?VaXQ9`>N7im3!sh!CzAJex93*1`6Lov-^Hsb4uL) zd_h%|iEARH@3Ubgz|p=z>wHKx;y8AvSX4RwVCq&kjibb7r*K6 zpQ>@?@98Z2u&eViN#nskSO}w!DorZ=ipoJDeIqAsmg;;{)jKB+&b6C3mVPcN0vyvw z-OC<}mvQ z@&`I6b0$~v5{fH!=c-U1yjQwITMjESBtcR(^b3uC3|%@Z*~hKLDe|I_+>0;58Gm(d z=agejU_wO9wj6FR{@QZDd2VM)H<_ICqg=cYBTOG=l$QR%Nps{j zmbxLl6Uawq^pbE`oyxY){_s?57=5or418*TJMh$Oj;SAbb8>zZ=xv!g%UHsg-jZ&% z`6;=fy><^HDKBvBt*s=aOC;NLiV$m_I&&a7r_P%TM3Bn=v(o0s@-8*zCX~+iNiG zSxF^=H?l`4#_lAMDJq6cXS?>askMZyRg&+R2oO5Z5KK4~$H*IcQ(l{(%#hvhU1m&+ z_CtXu-$P$Ai9=1O3LSSc-me%t$s3bhg%3e{B!Qj)=ju&WCe79wmHe*pz?{BINF8wQ z5@s4!A<586u2JsoA?CoHVk;}Lmn)i3z6uHtd;cl1oci`hq?=RlPun<2;~?g<`6jF$ z>7Vsffxe~YM(CluV^|FTre9(?cj)ht?tc^2ye3l!q+8JUn&^o}*gkRiqas?Aj+td> zStU&v86z3PVJCS&VKgF48I}?`2aB-ElpM8MHbydO6nh|9+Krg@=2OLog)yWtq|@c8 z=B?Qu3gY^?-%1ela_y{Z!bEescu+_Jlw5pml@&v9#a`6${s^&mUVNCX^@8*7BIVQo zlU;v?-r|b6g_TY~2o2Z<Ebj4KW0|(`5eGep zJ~B>D5=VXHf6@P`PLPFs4A*-Fdu|39ME%gPw=DtTcB=3xTx-Izka1{Fl=Wv+=oz{I zu7!mwTcdA*sGsKr+213*HOqmm{-$FVlx6g?_?lVl7|CBz7ROy}uO`VKy1QbZ z6=gi6XA>8WnkDbE5?WR;Ja9iGh`L8gM#aR5`j<#13ewt*|2v~$&pr$BgvLk?m5-P- zM@Vu&^%H!PJnWv_Yd28Zp^?xkts9`c$ZbaM+hV0AMT_Kt5x1gY&A{ZUMicD-o2+hTeg|QMfZ91 zNlNUr7(w9g&?p9f=CCFUnQicr1muPU)jJThg1B+RruE|zB3%aOK=XSsKKBrdtU-O;IlgyS# zoHU6t%7qQ#Nx?o7$)%>yj_)M?vK%a$8s7EuzQbY><|;ITUelrB?NYfL2V?3b=#h)T z#5&mJ2SQmX4FH-YI4^Oq20jR})M7S7$?fVhy*Hazf%c$2L5h7gxj*%>jgu-_;G{L29i39J`aIWI@a6m7aQPiMz}2TY>=pVH(w%Vv z4P8y|IPf2Q=Ol1U+y@9LD>tTsYDpNjCwp5I7F4q1x%{^@Bf@U&Qll!|5-RZF+Z8jy zO|3e-?g6FnIjxui+1Yo^%l%%I4#dDknK=AO^2sh<@8AOoqzq7K8QZ2Q7 za;x?qGS&Nk!i*U1waP6WkbKFZ-{u>{{#!FD^dqE!_%>6iUu0j+8=qBvewaHCrCJ#! z93C9URX>kXV0hFhcM|IwEpa0L|HacL&dB7$mv12^$mfZAlaw{h2tn=jW|(o78BadH zd=nyNq{0}P$XPGo?4b`Y-BJl*64`C6V`>}Dz&eL9r;?tp08@+i;=^R6$2b&#-K*_4 z!!|YnNdDB~NgJ;K&u_9_TEqVXs(x3o@|p9!A}`*JR!pMWMSKlLNtb}dllu-IgH3aD45KaIq26&w zRHt{7fu^EX-ZCo~aJyBPJNbCmrPMFZ|G@290>?0*N^s@BN02!}qZp7iO8x)m`EJzv zUyEh+FRqqHAJ+C?x_nqvH*^8ztLk#5vuGyOJoRLY@8DvSAz0NM*H!kVY|cnC$6NKO zYS0c5k$zgP^8e!R=k)9((h1mWGUneDv4O*-Ko2X+6MZtd-=!LI$nUYhOGvqV;4h8T zTi6>Gx!>g)A;|BkJ-6dEsldzmf3L_!0#jKZDfT5;NlDVT@#T}#R`GL_(^u*KKRB#o z%fH%Lc=8{Jb7#_43naz4b@}7XwL!~-LGP{g`25=={Rn&Xp@o?6C;pXS8JsO1gl@!t zT8)+BSFNK(FJK$ECNAlVH2+2M54EE zQZ3YS-;P~@>Lz!5PBoP4uc$-*M0Y486k(%qwou%0#a)jTcM|@X+I}6LQX_dcYWF9r z`@j|63)gz@V6?XA_|93ger078CrXA6%XMW1H{UT5LxuH8K4rCLIJpI-)*o~JG-b-q z6h zCV{nJG_L{7Bmm1KU>_{^O?)#6%;jXT56Azfyy6-UquTE$_`8jL;}(gQPelY_A_f*N?*kq}?T%I|@jF1*BU=qz^7wF6)i*E5fH|B@Qz7D;NyEfMw4;^@(efTFx(D)t*>La}GA?)5y*I|ws zU>4aQgyAG;Wl7lE`NZ1-H%|b|O>k&s3Y;-zO)G$xG$p)!khVz;iRLR2HL@z=1E=x{ z!KvpSkFGe!FSXP5GQnqB;C@0ci)5*K4CZCU$NC6Yv#8MJaJ^+k?rV$(c}Odn*csOB z9qV>TcoUh>RfNKw;<7w!ULIk~;yfD)UL}*fD=ofbi@k>~hC(`7WLL;~uA{Q=BJO;` zJ>*UoNpgg)Jm`v0V(;d2QA^5jQc^=&@H?lS zwC8u4AM@W@o0-K@)70<>IN-rgXzm(tch|_VjaSQ3GDj9ZWRuYA+V?$-Im9A%+5&I3p?v!U=11-+ z6&H$EN`*HMXSJ8c-;}~m~KJr_V-1DEE4AWhe-*Vn>hca27HtcN@BK?vkR12$LOb#ugYt5E)k zmv$cuyI?!i*s6IXLfjKsJ>Uo_VAiIx4yA&lQcI~=RQgzKic%vM#=Y!W)jr}O{}iWfR>CfLZdouxVuh~AVUpMZ5`b!`Zw}C8bL%p=u^3X#p z;xGo1Ym5y%4`yW|tVaY(99=*}+?#3UF`0cQkf#iVeu)fD-cQOrond1C^pTe5x3=@# zc)_MuW%s#pb^gl`ScWQN4gUS}0tYE_KDy4FBf&;N|W&`?O6Eq#e6M z5W^*IYQ%=N6l3-+r27dxI}&fK6z-8jB;4XJduWc!l&y4><)Vr;J0+Rf6&0pYgQz`dy*+3Tx1;aO z)0PFsooKy1Y3;Xh9!^0aLURI1o6!NYgR*wkMJ+;eCjYkY?WKus{b-gBOduI8;JFsI zj1~;I^Z1?f_<=KQMhbk#1o04nDbRWs5Zx3dcFy87%wdJiIcY=*6yxO<;Yl80%-)21 z$-7Ik$jY+Z`<6etLOn4MJpkD*0J<08sUrK-0`Oo7pbx`n4aL~|HZ$v+tyCbj1;L`(GofXbX44HLBJ%N}dHEfae|t=m3K6)|JN2O7?sq9x|w48LJIa zx^}Go^@xSDoC`kiIUn8QyXo_H;9jhIIJjHJBaGYMj~mfP)DcSJzd?fXi@LTPyO)Ec z2Z0xYA|87oQ*O{r35*kYs5gs$fI>ZdEC&y;hcSK4>V0NfVvhSjcvuyo7Z)^4(Nkk{ zFZ=17Eb34L^0*GWV@5!`)2^=pM{i(5s7IQ^Fviwoj96iW7qPD|@!S~eoF8D18G1>2 zsCLTQ7aI!S+bj;BD;7G!gJhCL5P>kxZ4f7J#$LsM)UfdWV$drwaP0YYT*THZ;=E0J z3GyhzL>eyK&8gv%;`lZO7jA~F;}iS2GG^7gFLbIB?`0Tn<6(HkF60f$ShDADT4^Bw z7WoY;fR2j9T5zjAM5q`;h~&ClE+yuMn1v$hjk0$6D-KZyy|0L0K&>yzOB+bs zUA!QWZQPX?P|y$^BXk|W(iA@sT`$lfZ=@aWB)(Jvo2Hdz& zXW0FPPzexi6p^fVY4JZIwgr%CvNrB#YBJ%tMcrU8+S_hcZHdEcD^fDVb-1A*0=n63_$qM**M+2ciIw#F(ZB)MJ40!&#IN{P^^EN|xk%QD8yr&=`Q=ryJ!o4}8R6 zI4y3E&~1#8Hk~J_3ilw41vkYSrbZ_gUFv3?M1(abbck=`j2#?j<&52`CL|E)L6MYb zW%fi&14A(3h#*Njf|dv7z!0o$qr=dni*+sLpX@)ChTE_J$rStWB_c^A%??*&Qc<0L zTpo)-q(mZ0m_BL3N(cAvoZ<`maW0}Y@&@|mLi-Y_#0L}P9EKrjqi1+#ll@$Q-_o0i;$m!a%XwialYS zVn+xn7pXxFhA(tsCfpyk2sV$g-DHH@sBHd0^p_{1O~l_47d{2~A#%u99!7sZ1+!Ft z6xm-Ux$#i}Zl=AHxb-U!!|^u^xBCwo)TryoK6%J8-t8?I9txEY@54&F2JFiLf^ik6 z0QR|1Qbp^f+< zv=|K|9hOOV|M<6YIe@ak@Z$0JW`aoqMJ!_ivQ+R4q4!$QHp13=+&M$6KMaU-?2Tf4 zNhh|WA0>BB$32))NgY4kMcn0ZdK9Rg9t@z~yxlQ{=Bam=9ov9VH|#Kp2$sqS+~M>X z{_sv}N#`NCUDcr%$W2_J+fauK*p2Z+8?)CRz_xEVnT*g8J#>oRKa|VAjY`OO_eK}e zLu4}>$ux`GFsD|$S%TA)vBM7WB0zK#Usz)FSrXhfV1(R7Ecnn}e}sAwZEce>cT%B3 zm~XF1Hnz!nfWsRi{t}T=K+M#BlALV}G(2K?8?QeUUmlHrg5U=4Ri+(L!S2NBi!sbl zu0w)~bArNi4Z>q#QDcIUDccd2f_wLT;WxbgVdVb3II?4aYdP>e74iWKdP56&6h1^T zBJO2IAE?|(BeF&{hF?DDBn?`CevQVzxh4=!@BxXH<*vuSdH*UY%PxLC;pmFr9%iSY zn3O^rHy_=!r8W#J)=L^-j1%rDq$@9`v{B|7MS6m!XV^xU+^B3G`m5AD9#_F`v|&az%~`e#ZzSLAG&2K(8e>0y~E_;4jjp%loOYK>%Y+=f-c{kdlS+4 zb0&V_A|muG-YZ%&-6UGfqeLM%C)h?1c2`zR*Wga|Z~1lq+ZwbH>$eO_If1i|GGbiV zLWB8kfdJ+>(PYcs1UmTX)6su%y~}P~qmO|Fbp5N^N!RV)8Rdi|J77`{5ek2y&L2v-xU;m{sx5J1cHJI#2$fS zXpB9}eB~rOJ+@H^rK9zne_ti{^6n^6`#W+}2sYCLZqH-HogSQX^js!R(^yNVD|h(Q z%IJqRO`V^W!yo*pGFo(XfbluOD8>yvo%A2WPvBe?Pj2musPy?p+uXP-*hjx0YX8y+ zUp_?S;6h?{hs9i^glGKob8Oqm7Yc&nk6~_9RL=1Z6i`7I?uw6e?SFYe@00Dgp{trf zamV|1@ecPq!>tq-EyZ@SXRN}7^_&$h5>yK*ck#zM$n{H1;X)hkiVLAJSLl6ocf14H zt$A~Lj=-k2PBzw&;Ld|1cv~Shr#>V87#AAAvG$5Cbz{(b{b2Z0Fc|sHZ2N{n_}}~9 z^dc4BO!T;(;jX|#=-~Ep)`FcF9$qu6y6= zM&-56JX}z$GJO_K^k^>t?Tc$Fyom3tp&}8Q3I)Y%i})?acSg#~Wm9=k!-Lw%y)5a@ zs6c$m`E zL@ufELeP8>=OI0%@SL*}RzdF6d>hrp^Jyu@WsQi6&JsU?!~DA!!gE+f7w5qksAhmo zD#ra7pfWnVAAgP(D|Q6d;xEW>7)vH1h;oI+ zW`~by&njVUYP+frp*ZRKvAy^sh_e8XHW=5&vI;a}K%$-$xj5V$ZKbid)BUZCB#5lY zc5S7px6tM%jnKzwZ59|+G8hlA|U4?7)=ObC=!S~4uK*yS{2OIrj6$g z$p(s3A@Bz9j$8P>A9|$gMOealtdMIkfBN_0m&$_aVu^8I3zeU4&Zz$E*LXS<%AWgE zRe6?MGnHZ@q3=qUUFwQ*;v47ZJ3zWDUi^M{)JqJk^vEGq!cFb3arrOjY5!%YbnG*+ zf18(J?SyHY`P{ihBsX|lQ5u>6D zJMiHGxTHY??bKVm_TFvgDn2+77``*=6B>7W?N-K$zzp3foyF~2;&?4R%uVHY-NGJG}y z?dF(0HF5VdW7v!tv?H2abC`TZeNX%rX)2VO!t@0Ak^^8&#sm26={K`66QJwX+K*PZTXd{ z77xDL0*UF?!%Ne#-xbB)m&11;>X)o}3Z$uxy8Rsqsk>)Gx(B_tD2sN9c zcKqZ+SuOKBos=euiLW>b!@6CFgeNDT13xzNy?~y0B=KONGwC8hED^6I)yix_J2s+@Z2 zpxK!>1z);X_>7OwmPm+5&Bnn}vyDdM`GET;xwf6A&4a5Qj~UzONYZttQCWjAQ{ISb z|2LYDo((GWAINP#35DL)Q%1t(7FNd71UgjrX)9j}c$=*M7tIGZrKL4$5{tmI1iUb@ zD+;AOpM!IM)yhk#a%(C~jaz{DilTgAXEOCA+LGvTdG_IBh*=MrdgskE@VT%ghth+a zJ*KTcrtPOomU!Kygr=iB>;97Y-^j9oXC|kll~ZTuw~?jpPZ{{ov5)&ZtY0HPvQ<>~ zyqoOFRNF$xW>ZcfmrvNoRDDb8P_(}39Cn92(i=uWbK z`2p<y4S@kqTkY!>2*e>;=^@$~w3;Gs6#-1dihZDf6!j{1q(V%d{3 z9iVu!0@?Ym7T?dKj`JqDjr+Cc4iTWvl1MHiA_IssH#aD$(^%r1@7uro7qCLglq-*! zlRs64lSR)i1K#4~VcB(PBEIr=)SwVdwDNjnIx6*;Dmy6!tv%90{0HZx?{qb1WF5SI zNPesyQ|P_^@-56FW5vX|JglgD)O$KOW6bNar}L*;A{1^SZh)bi}W$qLHPntW)6Q>y~%lsrU#6*GMy1(({TuxUkNCr7S8>Z~5-AMI7t*24>8o=tyUk@o8D_K6M9ETL_%2%E{XUe8xr1NoM{(6-{6m5K() z8`pTukRYb5#xIS2?YqjvL2m9h*BaZO4LGK#Z48hY=6(V6>ejc)8nnWtQ>q6jOiscThv!^-N%Gor>o_IS}3 zEc#!ltXeW!r0{5F@obLPGgqsJBIosKnk%ImpXC8n033tYO7J0mmlm$kPhX^Uny zKfg@Cz#GQy?#ic!K#B7A1|dNDg9@p+FXWtv?NzG{jsvCTZ%;o z4}v)G$~V2m<8)5A`5M$%vN%qZGc7*?S40cscF2D_9O4e9Rv`%YrW`c=>43aS9SY4U zyu-qV92>P%9J{1O@i#!+8Ro?sS>uCn!b1Z&!<`yi?O$75H-`c`GrdoL>eJE1y|%v1 zl2VyZ8eniOUT?Xm=B|%Fz%1SHkhr)}&Jm2ckqwr2d()Q88#ryZ;3cs;@Gqx#SN|x{ zF`~nwmUwWPTCDSRb64Z%_4Oa_R$41(d~CJ;D;cK#=n=2tj;^0Hll=W2@X4toQt1un zA|3<1er{R7nVGJm-1J4HLQ}J>*%z5fgQ7QI?#q2DqmU{}cUqG=-wPJt?xdz-hIRa3 zCVYJ}gK#Sl-(;M9C0UwrRLs#9e>|QY^c_Zi0~tV@C~_#jWxRR2$crFCd_S(RrY7=! zyNrut27zDJfBu@;E1cTht3p|3-5{7p`E?d^B}w8iv-eF8&r9Xnn~IvDgLwSTm%|kc zQf1b9J>QmL7Jn|(IpiNbvrF@|{n;sMbdUDow}^W3cvKIc*(mTUHk4qgw$VZnm#}F3 zw58J1+>H%LWBbKXS^&U|Ig@8GCUA*+`0{I6Eq&(5Tl3c;@l6I)Vy8b8A^IGR+R3vy zM$gSYO(t4l7$!0u|)|)pWTR^V&%VefxHM5T@tb2a%cy?YEYcmBytKSSc^XR1OvjqZA^crdK@3iFfc_hLqeqY@RS_J)6 z3(}Q77+j{B@aJMqT==%EaF0xukh>X{F!~c{v)=VXW^1L*@L*94ePIqgWN&#nGbq&J z=}exoj4V(cU&k;#0M^hm=|mAzewnbg$|f!3^)nV8?g|8Yfal^f9and*Ze`;Mr<=>~ z)Oph9gMZuSu6FFgNUggjw4zMOeTs=BJMP7r4^k_2jl6R~d$r&Y| z3XukMqMR)1|80R7c;PL7FY`({f2wqZiD`%!18noJ-+gGXQROx<+i2=AkY9b~HS;mu zX2hR!^bl^@bDq@g`X2J<(obw@t34#}qY|DR>NG~J(yeoG`@(5^h-{j7&T<0vf#or+ z4}g9@G4YiKBUFo&LR(<)mqIoOL;RxZGY&n7k=BO1{@)E>x$`%%An(+P(Xw3(vSgro zWV)~bSx-C#>^7nun?)Mb5){d_r{kwI{;FgmOV^8pId?-?a8+e_1hhSO!H5^}E93FM6RL9Q*VXc8ohL-sIXp4OF-35L-n1o6c70YRr?uA-2kmTW0LY$y zGJmg1eq=RlqF9iN10YWTHC|QeT8PWYskGL5*ux@9OPv%<&|q*`NdMEl^(**x)6ox{ zc)0WM*Es}f=rf~vXd=b!* zi8Ky>rSr<8;$dI!UN$kE&~O!z9b!bK)%r>~h;`>y4;b>&-_GkvS8A4fD8W~o3GpMxt95l+WxxM@jbDh z)U*OirXhArEjNjU`~y$-Lg?CdIQt$b_YK}=vNSJq_?_cmQZ1ssG!)S9~NBGIYm#EbHBgpq%@8i`~I{hD1ZR zB(hq`J5{^rsl>Xy$B3S!ry7o!3r{&XRHkS})%vP)a*H8^U@bBCcIge>&zA~|_`9$L znhTUXgEZ60?WC-qOVbxqk{)rWCy%lG`1U?vh1^ALMG^UVp?LSC;kGl}OL-dUo^ve2 zUPLA+`y1wPRNMu+KoqF8TszBp(Eh+Zjczlrll{#@`##}d-H!Rp&2qlm{Y+R?x)N`) zQr9%#mH^rDFH>A-BlrE)%eya2^cT0)xhs-f1G}+etJnI zjgfEjX~sh|zq})ND*VI>mkS?jNLvh*goWC51`74N7D$#3n$cFT@#i8YWvDV@QrKYK-Xc5uL!{T|qiP?)j5 z7|)yAnTk))qYTqO9;(mRwO*{!X-=GzE6x*Yj~$+vn5YEnO{bJ^(k4Gsp$ zcP9^j>R#2O!1QH7Ufe|vo>cmw@7Ai`i+%HyS(tjvzWx65{Lw}YS@CGfi44P3=8b}aM_DiVx`S`s{6TY>ul;-;hb zR%zdPOYH5w6?VPrZTZV-0dLG;Dw|z>wS6^MJo~Y4hSzWXz#)}KG%_r^QXwXvqAG}i zulGDGcC}wz*7}h)^~=_8_p6C4`GAg8*$p{ams{eApS9`pbDLh-&#t1D7v($mzvl<1 zdoyY`)#^%CSA|qZ#B)n`MjR(8TAgDL+kn!otMry6fz4e}ohhN>i^bowh4z#~sC>N# zw~z)QR6ZF53OEuz!yMb>)R%)L3%mJihixNxAcxrQ6IjsfTF8ZwKoxM=tuP1#XBO-Y zzUyOw=k(7M(7m)HGMXd!fQl|} zBWv&kWe;v0+H~BS*7^dU((%Lkdp}Qoxet2|q;`x$mw(``k}|$e$U2!NFmmC`)DjnL znH_B$avEUa$Q`3Gsr^2jJ9ZH>5ce$cjGX5BOHh{=Px_k^6*26+6W(rUr078b!hY{f zYG(_gn*X!Qqlq-dO$aJeN8o4U z?i;wwsB*4Z#|%qe=?8m->Jy6%^G$eY-E&o!O$hI`V0Xb1CV*rBh4U+{dgr^N+!- zXcGb!rO?=4Yhh8U3wBjcX!=IjdW_{B^BsjJIoX=f`T`*=LyY(ORHtF&Fa zt3bJP0(V6#eHV~*>@xZhTXlXNEz`90enMmzr`DHTfRFyQ9Urf1O`!VG_n*5g8K$SQ zq{P|3-^iGJeTRiGCaT443i$Q6s21Z5J>7Yi`U$b>qH#f0`THbkCO;#JQJPjA%QNKF zv1wpAO(IQvh#K zY%=}kO)Y8US)!A_W~o4>5`KRd2^?159lw4`U-fltV85AdQL`K9zZ>7pka}baTmGqE z@evn2!EH2uondXR=qh^=1xVJv`zyClUZs-!wfLfFCx{0z^SL{}OC9Xr^tGB!<+HgM z)nwk-?2t#LuqD~ojx`(z2ep-+zK81Hh$r2|s>Z(Ady_e~*qM$MVnNnFhun;{J=bPw zzA*7D+W0mD4uvWV1DUH|n?%bN;m!kr4;98r%H?NHgw474RRvb!9!0`l5z;HnU%nKz zUM4NMPnBu}?j5^YzX$)g>M?uW?Oq{8CkFiSl-jg!_an8G6zVH5MW^T!o7!}=Ry&XnnDL=;+_@?FTgsYS8@{P;#L##O)^zD*v){D-4 zBnT)fcx>ab8wG*pVUSEli;hybmId2Hh{)xNB zb1no3=8ph%2`w>1#_tACs(~xxf81g$Im+CK?5rj~&q|L>j(9qfr~ujZ4-hGUKbv$Z zPoN@Nb~s{mgv7khtI_^90+r3xla9mL=B^a!N-NmGOUczQo~*crQ)zFgdpgJG8eSa@M@#nA9Mzq#*r1I62F}2Nx=6#}} zQ0Nyvs^y{~ahBU-yeh{%)6IB;c!58&p=oCo+Eck7^!6V9-QNxsrCJ&ai55Xxag`Ba zx2B&8hNdTni>}#MP|SW(MLa9Wg_6i&^?0P?e6_W6nkcR3bkgLns^KCxj5VsZ!kH`^8L!M7BddbiTP7b_L+oP*-h@|2qGAaM_mMyBG z)8wV>DXyb#O2cL7U2?USuejP= zrEmA!+`r20Xyw+qk2A`!b{_Tic3y>COfx@0&k@2$r6j#vNN^ z9T&Bk&53De-O}`VZA?hS=FClGJ3e5mY_Z__biU;um=ql%a95oD@X}L4UwSzbba(9}0G7et1;2Q4q-xb=`6Wh1X z2W_)+SMzU{UkG?D07Teg#cum*E9O@xJ}6? ztC#93Pn-N)1-m&xlKx#ffbXiQYrAoQ5VMz)OW>38^n4EI;yf{f{E>r!czF%SL6#1y zz0YqKv7do3yhY<`on;+uZX4VQJ3YytS*?gbMdBAxMd4iY>-N@}7RPQe11YjiX>cj7LDRUCYiu8YY0-P&U?c9qoX%Q;ic z&MG|Y;y9jIIscZQIZvofD{Iw~|Cx6{j*(A}@vpBQ*WyHy3}dRSHI!zg=QBMV&m-L* zD@*lEEBY3SUmB9hUH+i9VFzbUPqOo}t|WDR21S{X`s-t#XK zffq~ik|z+`lHA;2tJJA^aobyMFxesZVVMHOS$ zeu4D6d8s(VlM4?{gmVUt>nsNG+S=CwC!Qv51=OiF4Vtpccw_uK#!0LFgx0esPgl?1 z!q&IZ{`Jte(el3?T@o|IL~~#m^}j{=hrL|xV)@44%j!F$I!g7T&V#nfqMkFbe!Sb3 z&jqvJRv;8ZB$uo%=6U4P5#E;DA%d7P@fYvjXo4A<6T8gojMLM$9CrAU+3B;sy%BOD zE;_`&(iJM~6v#1fw6m_=Rg%oNu1SjP0hc{h?&0EFXGRl~yR4-Y{XP0j$~Pk}s!b-Y zhRYz{kVZJ%eT*ck&w0V=F@5VJ8icFeirRD>2Aq`4JURB`<8grwf4rXxp;7UitRB($ zmWQ?+zF|={h}9YT_QuA`=vdQ1i?in?h`J$^AZ!b8*90R`2WoXxT--288SUPsTd@x+On^`B@2w1Me`=ju@ zzu5C`S-BodZu)Qjq)$7qa(Vez0iG;|zlnh_sY^Kz5)?mW*^a`ZW|cloyq%fs*=o#G ztC8HXO7TTa*{rCeVvXbPQ2FFOgdY2xE*BY7!Ib`g|?kw@b!VkxOdv7Bv zZl3qvRqrjM@#gjm0c3-*Wa8ZbX{}((>sXea7W(|(Q?i8F{?FKiRp_5h&NqL))ma+6 zw;KBn@?v#UubB3nG7-`waMhvPu^3y48^~7+Pss5mUC-hdQTYg!n3nqc%z)sCqR5t+ zOmmq2<@sd7yvahxM)0N<&$IMV#y|F>Ra+B6@Az|vVXD#6nNRdHJ@xeyz8JApm3x)j zH~lW#8IP$th(Lcik-=+NS@O!8aEepya{E(kk|S?3^4Waw<>2A%Sv+45;W5a&J}d-I z(EWL$Kbh3`NUO>JVgH!h)!}xAxo6Z}x=QMJ{|_fkOXpx~G)Rc{qGUp@AcqGo@s=WsNmm#-d9RNx6?NKW~0wdGXohAh5?|ph8jqP&_=}3hx z5v~*xeT~}sHJi85u4)dXiOKfHj~aiiB$ggckLgM10*p=*{Ny8`GXzTcMjqS2Yeovx z66DcaxTr*$yXWAmCPmqSu!KjSVmVKUswcvPM{)`0!O%Eyg)?+fR8#SN=|XqBN4Ptn zixv+(BrI$70|!BqaP~B6bZ*)0w`&6`uTA40XrARc&2q$7Ofg6h@rt_bU8lA{7&=~J zX$wm;SOIg&yYH=23z%uUoOw*qhW;*V9wQ?fZ92m%l9N}g7RfQ!193A=X;j=*q!E%hD?`1`CLNaaQys3&^bV+lUkBlQG0nJt+zSjEGlbf z63~_FdG)DQEN}@-DJoN$OUq+zD}f$0GR`&i!A4!|(B9$T*h(jBg+o*`AuRSZMhCTm z;1Ub}=$$@&(ZlIfuyKD-==PkN?aihN|H!oazV(DJ8lo%1nvlnKlD**Z8HDwIy}(vR z_lj+eH+o`}NipC_+*O`GXm>eSPUa8)4~&Z!NrOPGcB}73-(WcHQ)LU99|p}Cwijn& zHo&af07Hp8My77f!YK8mIk8!OSV@QVq~p#(2YXtx^0O;e6V?hlT&9C(7;$^UQNESp zG&k#|T+EX`U@Fyc`HIZ$MQMyyo2vS7m+ObIsg18sjXx6Wq6-7DfXPD7*_KO|AXqWp zc>3Gb7_v@%ta?42-_7J{wVQli?c3iOj(M5ds(xv!V8HR7{i(?}$lZS0- z_=~bQ%52jD*d|t&FfdY{5XoqL8gQECZ6`2sG9cL_-faAQV#eHFppUv+VRdiLu~<9Y-d6< zkO;OPx;XA3bo{OH_i1tBoC}>e=R!y8nj_D-_%vnLuisnqu1k30P(Q~l4%|!=xG}q< zn1CB8GM~V4gA1^zxaqjD*AevynTngQ(lm*AS}8l?i(;-o+t52-PPh}o7uth~Pk+kh zm`khl5M-n$4#LldP!@t2)H7%)SJ{=)+_j>%sJ7xFbllpwp4wHuk?~XMN8=BHCLdw! z5-ek^@e@TVJ-P(!?ne!YestR+b&NrL}qeZq)XjV6|Wi3DS!_FX?n^QN# zHQ!%*uW1RnBLTs_JP>jP!-%y4;~&zu>2FDa^svl@XW9O;Qn8GwCrO-Ugc$-Z+M#ak z{6tl|o`n|Gq8uMpO75`{V<~Rn-x>6Ob|0-|SBfy7EhWY798-EHPLxFYlwt|1Ny_Hh zStwz5DE<%&B%BfTFnz@#hx+7pCo&>Wyi+|T^SO;Ohr3)FqAVPpID|Qb_p##HdH~ zHy&^NJ)QsA6I_3o+#iJ8qwMPkEt7N@k~T4vy`aO(q6Xr%8~H8~jEWL)PMlj-ERHc& z=2n~mcn6afv7yDGkTAoT?IhKxNI1rsf7vO^b>|Lmq|pP;_7(kW&b@5?^cCrNmFi5P zT*rcGv5u|I-mc3wY`JEr7)j1)GrCqRSbuIn)m6dE^STTai^F^|$e`8ti*$*-vp9_ORh|GoAQC(ZCwdqiUS8&q!#o$-KuldnI(p2}QaBwz!2{{x9)% zoS9f1+un;aP10pqRUEj>#2fj2pvoFVUkiI_ZCL~Y(k(7$Y1w7c<6 z(%07~da}bELyMB(KuVZn$?06_*7MpMPjp47->*ebwxGRzXfW&RZ4W2o>V9TmyhQ&1 z`LvKSnL?f-HN^3GrN{_o5~{!_i@J&-&vw!4t^Sw}vTC&u2LjAKC%@}!?j=lReo@Yq zlq$H8WNDiEy%j5ldyu(R?aCDP$&Pbuq$Ev&r46gE4JGzY1V*E@~3Dd@GdUrt=gYbKE4$BFQJ#A7;ud>mPFF`X+cIU^f@K$7aN_2*ok<#e zz+=7a=tURJjz!a{*d5)c9JSJ0Y3cVDi(wk^d92g=k6zG~pK5g^WApEGc8W?_)wBX0`YM+p7g{U8Vm}WOS4!>x|CHI%5od zjwmv+a!DxNOqd8vf#MGGuviUOK2u6B7-MJvoZLcHw*DZdpln^0%DyC z9R?kKx*{=vd<`k$0Wo4 z)QaIk0XA^0rA6T|QDS|Bm8n^;Tm;!Yw8;?gCyS4I?l48-_yYK~UWs5zQi zpQ;?OdBJWR-HgO)58a@*ngZI<;*5DeHrw89^PlK*q&})t9^2!gx9N>KjfVPs`ohA- zM>fA-aF|k;`OiqXb$-9DN*fiOzp;3ar)mE+piv@6HBZVlDbSSE!+;Zlv+x2i*Ft_a zn`%Ldfoq|G$w^mItZJz0a399>S6v@eD#G1|>T<6sHS_clEOuT^01{?_!tzJ?PVAS6bPg zK03r(+0%F$9a@>o8*a_OYz(pC{Y=}u(7Sjm3`n?XKx*zltnWXW5D$+n{?(3TQ%81Y z4`?>j=MMfc;dUp!UtL}7_vNPL2j_Yse~h>T;oyKL_)gdzpf?tz#>Wx(GQZx(mL;y{ zEo&)u<`xY9Gwy?_5&W?a+jGnuMFJZ2wj(=Xcfsq-q}`1kw!0BtL-00j?Poch{oit! zoemCyfkA%6A_rGmVK8EXb)!4yvnChTtD|H`y~Z+6{@A6AzS&UHur)#_$rJ{_1b z!H6SlE{nll2JL3zW&0X>o)5uR5kbwmsqEuNTWxOssWdyPKS+Oy}Rb$c#ZTS%ssCzJHIS8m#P<&~$czcRLV@9E1{oq7IR6(8Gp zSug;fFudUIW)&c10^iBut!Fow&CrYBd03dNjdMT93gXDb2&DEOO5!k>8DKBE)%}5t zbuto;q$VR_(Ba{lsnYWK0~tCNeety9dEY?$u^YB5O?0K>g~p%KZcl>x;ywP#arC)a z`Rv6Tw_P1bU0uow9={&W;$tR=j;if1Qy=+ZlmBJG271{yWoMI`hS3`bU2gK3?KPvo zcZOM1%nzXJN0q3X?{yHQpMIq9&@LO9+*TueTaCD(T}<}~t8lY?OSU;=iS3xhdDbOy zQgxNXX{YbApN_DN8+Z=7pl|w;4ZGK6dUMCv+^NRLUH(k;#5I+ZuI#;d!}e?ZiQYpG zu=Fcn41Ykybo+CUH*FZb2eie>j(_>KB_yb)()|+$e?86W91BN?mVaWBP``X}@hxOMJ-w@|DJ=bo#xr1&kC+QDOI|`m+~3{=}@8Zw}jghe>63eNflCb zPBhY+`+hN^X_}EJ*3gm?e0wCTo}u}Wo(Y=T$?c@(qpI~yG#8AlE3=YI^Xv>eB4y!@ zoSl?nI}a8ffz{po;fUx?8+ehOotiNe>*C=fGqE;qM3Hl{!+vS!L&RkFC2}m>HLyc+ zvdDI?h>~a?2Sj))x}$v8f;jP>FT-+)ZBeMXDEm6_^V<^z4MhIq@X-dl!5hdO8_uS> zr*x-|pV_)pZ?*-(@lDCruGzD@R?y#i-PfLx2>3GISYjYIwD9YU`sqRoF6(? zt<^ZkKcYtqXF-qGt6x#@Opb@B0#YI5IzC_nkRUg z4LkF>K+J`;NJ`w&ySRCG`9KL%P!^5xlTUmHSfqW2b8Pi+Q&}a(ab%`V*R&7j29NT@ z9}C2??SahG!Njy_YO%&A#<;Q6_8vSyZ2yL~~`ZL6CTnu3txi-&JdOxAqqZ+%|N9l>+Ncz_y0 z|F8=w6pmkvf8n4-L;#R14xQ@tfE10!XmD9$ zfr9I&J`3)t)3Q*NPnqjbiR>b^HkQHY;g$4l{Ag7tGs29jc)5ABpyrAt8LbYUm^D?Z z%ywq6^wp1~JGe)Jb5gpQM`9_xwT&%pD>Sa|4TLi}wN%OvTlppqTk+i%Rr|yvl~0wq zUOeo&F434oN7~{%$5IlQI%eE+WV=*gJPQT!dHO@RWG}xXBr$gX_2h6w|d~lHCo6(U2#@@kqR~_sFU>nz2_AQic z;`|tuo&3~~r0!9$(;$+i`7xVA&wrIfu^F3{wrcZKtZQOhLNmJX7*E*Vxab}8Nz@LdvNU$olzF<(9TFZK6OBK(S{Ml;Nf+6v?p3}$QC%5vwjN}n}8Dt{G zZT^|q(r}a=)0a0lG$`o-jXNi32X`=%(I& z+CIbimnVC|Y4@9%UZ=;M_lTELiCQ#H|LXaRL5BxE?SF*(;VouSEvdD#XfnpXI<0ju znr2`H&fq3yM$)K$*R8HprtrjpRIFZ_+M2ZFm6CR>-dki1B?>H!HiGh4iFPO5w-Lk_XhWw%@La!<$6f1)P%ZuLCvpjct~u+0}MS1f4hmp z`A|oxr*A6zl?~bLkn`-6jpB{;vGZ#+jiZ$vjMh7Av1AM9dTfTnIg;-j;6Kq(nhMR0 zbgQM$P@m%Ho28&e$rr2eO5{*{9JtgT>)WOXqM~VY4qR;R7s&+JH*lpdDp+M!R;7Dw*SlY$Cqfo_{Gd%>F_&*U{ITAe1J85 z*f)rzMg4^q_E99fgRCtzJ%g;DxN3eY$$W%{`-$btUDVTfmn!UE^}ER3^m~9eM2;bc zNG-rTMvKbp7FJUvEiv$>x7aM<)%3kQni*vKxW)Q>RZcUC&9f6!UdXbP`fN2@^Uk)x zn&(xdG$lE2uMem<1I1c?fI-SLw>sOd3`1+xpOb>)7-l(Mb2p<{uc%iUW=GULj#`Et za3UF4EoBj;HJhFHxAZBQyu&$c)SD$&prh0~qnY~6hn|;MDkN2)=kwX|S9yk0Dcbt_ zlonQm@pkkb5j`C~gEl~q_#jpdnI^xa{>&%V{I}bx6W;>*_!k+!E3^d{+C6=n2Zsk- zgW09i`j@o?yxF#dCsWvX&zxD+;+mrdmuI?jU%oEoiv>Cg?HK5DC$whgQNF07aQwp3 zz)(+bx^M14OCXnVJ6p5{OEy-Twe`#?B_TJXwRi47YdDj5wRle4AIjuff(d3b8bW|B z7H%a*{+%-W;RAh{84WuNb4qpE{Luj~FHmV5W2{K-YVO^tht`}EImhsFj!gP)?6r<$wAxkCmRlAp^?Gy_k~|VmjWb1I>}vxSL~IXX^j11TRZ-^ixa;g zBDp6%4wA*<4|OYcAh`)x~HGMY2Q;%Q~jHF-Ld1WyM(yUF=xf!xBTqqH{AI1Zso$=wQueD0^2JbAE!FnA;{odJ8Yj!YB|l}UsCYr zn2P%o;E+&MG?p=T7{ypt%EmFQbmVr;bFbXaIY#T9>f%XvIt+RCdsq`rmhD=R5Zf5& zwDV(Y?$X4HM5Na<-9{NO3Xc!S)otFrCe~-9C@fHHRhU!FR1wtHEIo}L<{o6u1cbH?y0_z!|x8^?d*a6S!?Gx ztv_GHmfK(@;wfOZ9S?E^zdKpsq59dSgEGxDVg5H(lqrqv&{TAx@5gt zi1VvG{e1Vi-lncVwwN+x)AD@H;_vZfq~!fc$(;I8WpGh{ zKJ;cPl9;Od+!DPderj@4R1%y{L5h;`m|1Xkx6h3)83>x`srMGz7CrPYE0z)}ROme6 zg8xI?o5x93mFMGkseQk-@B7xZc2`w*b@kpoJu^KEGcY>?!@lpsGG74&6i^T&ViF@W zKmZZcDAcVk7LgzVvY3D(v5ksoq7fSx!V-+r zyysn?2mLbXP{RLHgeM~+JoP{-5krC9)Om#a(A*r{v+SqY-Q=u8FT_Ub)ycgOHmMgv zztFZ&R8ATeYxDS9ww8;0{MGC!sZB6{va=nQ394MkBhitAYLW`Gc8TMy(xgY>H$$oNS8W=S7Hm{&O4XP z6(Z%3ci^PKHSz4}CsslhPJONAk~8wr!q8O{1F_NciPk7R?>u`g+ef}znmL(i#>=9L z?4wWyyA#tX+J$yRI!?BxAFLJ`1ECC21<(K%zfwgC`4p`Mj|C$ND!_Dcy8Mw8t#1o+ z5_-@30W0N0nUEux7?~@jlOa#c;T$@-GVF;QyZ^Y-5c@hG_9sJyA&Cp!S4( zIuI3N8>deQ`GW91yEq#=%e_csGs-|LgqLatjTm&$(3(LB@UO0{+^(B_LAT%L{Um3* zGe|B4mvs+$R&1%ldD)kU$8v)d>-S@P7(YvneT!Hsc}zz&O;yQ(0pG95K-+!)yuM19fREgr#OjO8M0qq$3qs?cO4{$caSXV@z`FU0x+?Ae{qI)WN+ z*iow`B4^t-XR&5s9jC?G{2X&7)6#WYPDDeZQi1Y5uiTi}bX72Hpk8QasWfEKRcj_H zvQZnys{J^0AO^7jP?GMJfXRIU9A$k4A`XlgfaH`qhrt=lNmQlMYOMeWsTHC=g#?E8 z2kU}`CkE^DquaB>dHdOdTa~i2ENe^h&VQ;rRQIvoaLRrmtLJiS)}+rk*~h7EA;aNg z4Pl##^YLr{^fjN_7BO(Y)mY=x{RcCEeaJk_{4+a5bVrsU3JhX5HdS8w10nsWZHfO+ zar=5RoL5UGBs-+ojw~~~lxEZ9bh*jXF@s5rMaY6+E>)!*bjYE?ArXxh%y2kqX{bRE z83B!WsqRsmA;w&{yl_X>*(jN<#(XYlwfB|Rjg=~&v-BlZx>KgqsaRjX9nZCe=p3G$ zYk}F!06?utuDfWNFg#{bNpVWz;m`|nmD>_-b%%T%swlji0xp*r#K!D(mfU?tf8pK! z5citZHQjkA;bfgoPwK~gSVLwfcHuDEg%+a!&X#aEY0y|U1`TE9KKEnb)J~K{>~;r& zZm`eTlebSyZQDLEIWfFp%}{NPgp(8?_Slb!J!T_50E6h1)k=hjr6xXDn`G(lM5#fl z1_4rT)2+!HEuNQOad`Lrh~C8xjtjgZ!Icrxhnnd$r}|X?2a(YWE@{oTxQoAi%1X?V5HZihmc9^AA{` zkXVrQ^pUj(9zEjR5UGZ+10%b(M?sX6s}w}9gI2?$H^SIk!OS=yN%f6XCvbvA>-qYTG-K8p&j&*Jv7HdQI`2Ew$n}6RfxcQq$u3N|5YYmL0 zcB_dw0J!|`aX-ej%rnExDDyq0H30I*RS_c^q|T*UY*$CQ09nfd@!yCHmMX2$DlE=u zoycHD2Y)AKzziG%M1*#didE9q41@U~AMJ8GEFqYNm1up^CN_vH4piC&35>haDm37) z3nj7#jRJgZREaE(lT|kYtOOT}!+JKr?Hg@03qp%w>nM$xQ8eL2mrk%hqVoE}$()3J z1PlFswunp78|oDT%$*5Ke&K2+iaWR&Ocd_Ut}w&Ov;S{3lf@sis=}MlX8C51h(ip& zzEo$whB5p&`yRyb$rxfE@i*AwOp;-2JhO)R67#iH#t#sSr#pVVJkH(3h|Dv}_%>zy zF6L3Dsf-`1Jm);7%{+4C^SL{iuQGSi-c|m2?75m`{#nX;7HMw)d~TPi-4HEQDyjMB=9X#j+CLQ#?jBp~Gx>}{Jh7|Oy~Bz~LSfr0k6!E70vpt6AV;n2+51zsUm z75u7|VxwA`OO{Zgh9tBNHJQ%eptFRF8wdLWdrB^k$I{plDPA+;FK9e{hrd;iJ$Z&T zkP%)E$4lQ!qzAaG4qyERE&HQXq2#ri?EkARp4xeE->CZCsCzuH#{H^~Pu3rMB4Bqq zh^69FXLhhR4!P_$-u>bYY#i%O(ulJ(%zTDvCE+yYt7459>$bA!(qkVq!YwthsIui;%U1xl3>FKD{ycSZHncXKJs1Myb)wW;2Brp=YsucsHkw5W$mFsi z#9LD#j?dNOcONDbuE>8*MP}L(Z|)no7P>o$0^$~wwy2m=1qdX z>7R~*<87>ARn`O*!+YxVtRYCC-S_1Y3VlRk6KsT|?b(;X?oBK`LTtJJKzxP*^x*1cRvUL&%t|$4 znguaVPHG$xfkcOQ5sSa#8mwV!=7o8^I|$Bm(?M~30W9rNMq_apy@4d{WhkkXJZzYk z8>i~5)R?YkC0yAD9Im3z{lcM>cTZNf_+yp8^M_8~v%YdW8}^SEcAm)2b^gOYS>C<3 zW^)bKclRH9vApjxS7QC?V|P41aL#|Q_xAUF`L5I0bmzqW+`We`#69{A*&|rFk>~Y2UW72beM)snMdjYr!ejhffgR>uAdH!hetb{g-v8Hwhp}ZWh)@_@eBa(vhrAYc zcm*PcPZzFt?v?Q{pqKtVPDAd43gj7cpc(p!66jeD3Zz4e*4k=S&SScoE0-XJKqW+tN?0e|5eV?bUhd1L@_|@-^vS5>@)LGmdIuXZC!A4- z*Q~#2tEbOmFd7s7XEto{adEbPeLcvw?YuX{BJ_ricp?MW9GCZ9^q~o>(V}Vtu7m$7a;Jh8RjS z?v#n>^wDa2Mrw!KSZ-z)#0mT2ynZ6PYIo`c*7i56713i~Y|bF8D;U&fdDWR@)RC9ZPhE#@7zH3MZ`}oCzL(>d2VR z=yjw#{k~ySG8atUIy2aaeDTI$A`@XhqfK}M;Y4U?eYI*Yo;2&(wPlTUO+8&YzCI{~ zydImwDCq2}V+$!~=gSXx8>P8l$JW)?Nj;)z>=CVEr;gNk*a~8&P7rXI2BgqU4Qu@) z(0qtt37`RLs=%cwb*aN5W{BRwvZ#bdIlaLa%=Qh?>;aU0lmyWY-DwV3bw=a{$nsag zYa}jrsj(vFvn*e`tf{o_(e#>Gw@VgN>i7$eXfqAk*PP~A9wyqZ`|xQOF7G>y*!Nnh zQt(KU-!I|$n4{W&}yCXO%toQx0RxqO#C{}*)p*JOMWpHJtX_uF4~dm4ytj1WKeTB&;mP-D=E z4OiQKsYQvSDCUUWXIc=WMEON2W(;&I1MqRwB-rPH&Id7QiHg5L3KmHFqL`d>JXb-?(X6X|nyFcLmMl`|4M?9cS+1iN_zrDx|a z=+g=O6@5Cw`}FCsN}ta6+>PS0J{@O*^+tz+)$QDUou3s}HtKLMA)3ISXs3>{4j)$5 z;k?t{V7jrHW0cs*e&!kGJBkf(wPG9W-_c=KiREwynHKYkGJjsN84gP8O#WSdfNK#? zsK$JVX+>b2t%a(Bn9QDxRO^Ovv$7!00;I=mWmThT)&_y3<_JQ1 zH2dI&r}Zb|M%iR4H^jbKFqtOSgMlG~6F=|`^aJVqhvfO(O~<{}Gk>=- z{}A)v%s(shuTkb78vA+A{OgtZHb;+<1Ko{2w^TGEZdmMY>iT=v>M@N0}iH)OO zl#iVh-h+!3)PU=;yU>|MWDlL70Dg3CRX{$J*jY@8o$Y5n&)lcjhG!|Z;r`*pp7~cQ zF}Q=wz07mU{CgD}^Wf-PJ@YS6<{x72$5_z{+mky~|E1LPwVnGJ*{=rkL#Abs{AOrR zgKAMROq7PNOYzbQW41aB*O9J_`jx@nLxwoT?RdfBBTjW3K!XssxzIYNwCgln>#H>DwswH_1_sLFD3s-|-}592ug2 zc?m#L~MnAieLdbCFhR9^R(R9x8JUE zIwv`!Rn=nKYQc}GfofH>8W%-h0=n>O;QB$28gC&(@E{(saCt3u7q?7U2nHC$qQyak zj;Db#e?L*m8FH`_l~x9GV9%!>G#`P? zXAest?mKrz2ifE53GyquV<^674+V06`;=dFk=*Z}NCzpDI|XtNr6)RjB_wxtvOKew@>`Vr&3?uQXKd-WWPF%AM~P4D|IM#@=3l8i{~(!9?zp8tlJP#gqU$6q7&X8VXw$TaIw=9TX-C)R>nt^sOX1 z2FW;vy|LN@ppz*BA7HDijcD37WAA^#$f)DwHeny=y-Yga8&1gp{|4peNG5#hV0tCi zzs);^yq(+GPjK_dbM@HrH-|iPD}fCj6hsGFhvijRWeEzn1U-$}(h~S>^Fcq+%VN$# z8LuqJ8W{zv-$<`wW4RrrD-^{QiiU}}LU70kWgpP9)$|K3OCo~?|FWeD9l2D!5K7WA zaSF;1JJP#gj{~H~Q!c;hW&|DTS+Xwf5XB)f`=|MUgg~Uo*9D4v9U}7eT_Q&iU(>QL zF;=KUU4gE&3{lDUXAza8BG{FHN&oKhzXjj=NPr}o*SniPf!NOSIVrMN(YW8zAZN!r zWHXK*L%uDHBi94o2Sw>VxE1dSz*o8+?mF(K+FLda`v=*UCwI~B!Dc77PPI z#de=NSSGhhALQOE$P5Fa_H3o)i71hbWTh3s5Jv>~8R8YOii8CrZ1idN38K+}g$bfA zkF9OZA|h~8yawP+W+N;>9c9vab~(2Z_+|$?M z`j;i&?qlfNLC<>@$G6h)rJvIrA6e&XrS(tZI+x}32Mi@#|4lf)wflU@$9fEXENMP@ z{+)E3`8AF&pD%x(E7=b){nGq@!g2b2u4H~otSJ_FRk>@3-pl}Ed@siY1cId~Fu9`H zW)`#K?g}3NXr-0H?05>msO%}FJjq`HlbsR$t1?ZD1MRND#X@$)r3J=`6J*8-twmy- zIPN&gIdS#Xz&hc!M;r-DoJZD)CkMs{7G>gzD>jdB?)*^VG+KI-{3w%mal*T-z@b8x zC#!UJT}aw!s=)CDC-F!$DmC)Zh;D5DhF&tLi|OK0NiPD@Rd>BS@K*KsIovg`k1-N|Fz@0XWyY8< zEW1gX=1MCMqA>zBNrm6pMy)CYP{PkOAh zJ`l3_bz!kpFJbzwMn>z@ZcGy^6A%sSC9>`@4V2PALog$1Y|wX&QKM!+pcwqM5)aOY zY!s^HD;CTi=me6O)1^!h_2ak$-o#KoSf8nc)^-m0A|9iL%?vS1sngc2KYv%TxNd8P zGSdWn&U~JA@B7$XpJC{@&aD$MfD%`m3_)@QJqy?IWoxICJ8!@6xa&7%kgz6N}TtWf7OC#VNv4mSuP^AXr3c#ka90-QxJQ{<+e4oXm%PW|8 zeF`R?g<|3*C0bc6RMs2F3O17hAZ3aMrvzcGR`Bl+aN z@jkbGb$G4LBNQaB>r1`CN0oY#{mf68&nY>Qvy>dk{vC@w^RHCuQovVxPMLqNl507* z)XrWSqGLV^!{@|Kq>MeVN?8Bg~Uh2803R3iwbYAHavg{3o)9 z)F2UxC3ry(x#^;PdOPJRl)>Ks?^J?>OMsCzil{zAo<-=yf*r|GGQ%8(vYDrq z2=IG3irU$XRS;o1HvrHnI#d*hA;E~@8s+dHhA3-6-^qL+SFmj8Dh?p)!>ic}Tu7guONSnSHVcz9VVAY@B zK4s($Mu#^NEmVdfR|L)9W=t@THpIy(@?VUT9r8LT8BdGw;~5L!8N)Lif-}5}kvKre83Rt7BHU_#xzUWtP-kGxyCp1` zX0Xx{5Pn;5=>ascnU`vNN>C2icG9Coi_9tG9HMN5VgRmzTxNi&(G1y|S=dt*-CtE% z?t%-^PB$;5%_+;(=u8pofga`z#&{wRyBLz{fAVDCirC!AWV_WrY1|QNpseKFN%S;= z{WNDE@wu#KQ{m85Y&j3l-9f96D@ip!Hm6E=iccLGUP;W;+b?Ec@*{p<5pd2iAP)%U z7I}@DoDDk~+ePVuDq#e$SV8<=XQk!C_@B=Mkv~kDn29Ysukx9Rywl~u1yMl*mm>j9 zFhBtiC;FtBrFgMkaH~{VT5x7Nq83WV_pA2c{`Cs;u95`>vXCD@)W4G`3}9e18ts(`yBeK7W7MZQ{D|S|3gIn!pv>7 z8$tqs0D%LFN+>^tHPTyTgs`Tq($;FiA$s-o7sh%J>788r;V&}0Kv4J6E@EW9ps z+zgKzw!HeGNncuCO zzJqy|xl@_{vNHdUWzWA}ng5S0!#sXOJrMW=H_EYP`N~HSfRuD5QQaBYF zO%f308phh`C{d456u@YZY@G`|0+)|SVU(ujx|j^a_HPeRqOJkVUk?2!{4 za|42@QL?u-C_Eh!nik+P7j=MoH9(2ZZBUY;QX7XreI{^*&n~)@Y-gAC0TOv#A}`mf zTwla7N5Gh1#Fjx}j_v!kF44Pjq2Sr(!gmT}=3cC%g}!skRb|pj;!L8J>d? zYIn0&qfSN~QM9}FO7{5kOK%<7KS0L6F3pEJu7~70F7Bpn^qkT87byJ(=Mi81yV6}i zdv?Yp|KI`i4-gj;&(pr;{tC{&K%UPXBJ;ni%s(j4=ML3-=PS=Acg+{@d(!!6>r8{K zvybWGjRGG@5~}Vj-9{jQsR$~3BnT;`1|U4V%AI;z-AIF+dLlD=yL=V3?0O}_>8v#M zl!GK91zRF=um$TNc|FB;?{bj1{v7|v`>>C6qDSQ(;mAGn4yPx2Nl)JN;}Sxwy9)3W zNV_6KteWBVbcV&Y-=_dkK(4=wnt?)7^y`5S6W`af05sYxxoQkCa@DXHU}6Ej-h-h~ z59lk_CTh@BqqUx_hZ@rwK{PwyNa$1o^f1bzCSVO{l~e zstW%^l@i9Xcbqs?sfB#O*j2aR@Qs7lcAl)qk~N{)a9NBAd$^PjjmJr!!Vc#6F) zC^D9Y3=r~yMX8J#<+eKbATw_}G5_bpc&{XPSj!s2Tp3t+F%+v;%gV+u(G4=@2@!L~OgUL4S#$X#D`bryWj)X_xm@Hx+^DF%^7u1azux3d)bm}T zb0%bgW7*HfBMFo4XUnLv=sB~IALnxqGC?KH*rRZ==ptmWAT@!KOK^)N6bP1KPN?XGO zSGB^OKeXqB{?3y=PskYmyv>{&-8VfM`||DKVD#$8Yn!unAE&ki-E3ai=`h@F>wKR# z_%bv7_xv#$Qug&hqFWQp1r!kgqAnq5og}Y<91fz#KuM6bm=f7g~6?yP;vUJFPa(M zYO0fW8eF^gw7(^4A{q6>ohCK=_QjuS46~oP$Yi|Rc6j*X7k*>3^M_c;nN1Ie<+?_0 z-ezUe+_T)>Ptn-YZ}=PeA#!7VhM_cx!{il*(JC93lNe1ab_O?#Wf{=C2t@!)F{!7- zO!ftFl)Uz+4J-rbnH!+t2`TUx6Bb)J*kUG^A=dyTFDj#utFVGb1pAC{G;?+_tb%nJ z2K#|m*?rxfV68A=qrzhHPGSwfYePufHhOTI;M*m1Z*raQ4tptpQA6P^ta)mOEK#$h;c!yvrR#DAm6OmR58INyK#N*zC~U)>y!wbm!7__Q&R9UCUa7C{LZ~)EkF$p+wkg zP3eT|nBH1gyIc!P?k|20xpK3#D@;9HGqxfwHgzC~t<{(NU&qJQQ6W0f15*^SV%oH*QxdxzOy#)E44 z-Z^#C0ja|oxXYzHw2A3sKEcptKR^tJ5AvbJ<7<}aPUZ4bGahBL6L1pvs7uC4$d#M% z1ySQ!oOf#CqzWionCobVUph=PZC_YyrS{2_uV=XwqQ80YlBWI4(+8eg^rt zh1Vu}DtKa1#0>?;^N)tzV+#?3&db$n$ymMfWao{)zjkYo-Qo(KxqZ`# z!5Eiv_-cvdi#|S_?gY~TjqiJBT=eCjV_B`Vfhj^}1hTMAV^w4fi_KhxoEO#*QJjOR7_uG9^UnsA|>O#aFb&4p7?ZR_=Zzj1b}%AdLF6o-$S zt|g{*YkX$F%vOVmcTOnJ|rG$uFUBvO#%t(ugjt&C(=3FQ-Aeq${JWD-nlK z!!rGhy88x`;5)_rGvG7-99&jk{8-_qUOGel-8aF2N7i4iJbXRHDUj_-9(K*s8c7}2cVpfs9xw+scX;;23gUzUIIhHHYB^1SP50KWThMyFo^abrgx#> zuGhmJTuubKych(^9TJ0A_W0eD4pb^+@I?C?>`Ps*+oLdoo=Qs?+*s+ru@Ww&e zS}P;VS{##@afkqF;TVpTp`jM8?`pL@Km!xrvRtX{#kccXLA<8Q&G7{>MGVgrEe)=d zQ(4E-;CdBGgX@@PBTFbz!TQ%dV#|Kn3Epl5aNx zM>Qk>PJ^osK%-tb$NfN2S0`TU0C=sbaq6|czjexHWUy@1d)+!O`O;voUCm1M=cCiJ zC+wT<-&-lArr6!X;r`ETx%2twx%pMB)W&3R_;Yv8Z=Xn{&+YT6d_GNd=-OcXnL`I( z#{1K`^fvcLa^4fnAae;rE8gQu#XI8$hR~+5EY`qC7y`z3u;ufB(TTxUi-XenC8ZAM zIuy^4HE0`MUcU|7nuWG17>UKPdBRbHwq}c;;`^|WZgDF`M|D08svcGZNO%&1RbpXj zGLp9A{+Js{{NpXz>ACdumc2hsjv#Hx^3&YMHTmr0 z4^H$=#Dz^$Gv~AY1Aadrcg}04DicD|fA|@#)8V&;jD9xkANJ?_<(%K|c@J5O5x6hW zSuJ6=W6Q}dBTftT+?p}8=837_Kofqn-1IJBlV7;fvZ1E50e6}guTifPPG_ZQvjOlt z@M8dq_W-r@2OyS>nsi`DPb*mZz^IC$Lj*M|rV_M)>m%tQx_Y>7NHRjBX3NP`DO>^^ zTM3v9zy--5@9_`p92_`fYh9QbcsuHHMW32ECN~@~@LFdsvgVXTE|CoHW>W)a?i&qn zsJ6D}t)2g=0g0t2%66hojkoj0mf+Ax*0Ir^7$|z~p7X?rUlq&Y4lP!EjE zb5^qy@i0gQT6P4fG20hg8cgs3IwZwd*B~%0BO0v0BnOC<;P6RYT;$k5FqmA1?0Wy2 zq1w3L_hcsGKVxWQsLKA2FXlb`okoq3>>l<~@*R@EAzAfhAo(S3S;0r%pk}!`2c!Jhb8Yi7F*^Z!bh}dA3HdqqG=)oDIq7Bm+*_i zyobHCbFa%DHXC>E4#uMFN!~!%vU|7D9I?B79IvzZ?LR2L7LIB;pO00U!=Bg5KXCXh zI*x<)A=e1Mh1@A4%;%|%(zI5k%Hftph(M1;5nii6U#nbc4S_P%0fN&I2$YVIN~y97 zqTd3IPAxwgEB+{Xg;J%JMcXe6VCn@7S`hQC-H;$W8**VX%A|%EEb~U21G6R#L9|#w z{T1R6(DYU%Vov!Qv9c_Naw{Nx87+t+Ms`)*R7!}IAai-apKyn#);+)uSmT}M*0D94 z`G7Iv^miU|2|<&-uf%Q}O8jZx=C#LgLfB_XYwYXp?|jrjmds_`zJ0IC_pCc$Q9;Q+ zuebQ@?9X$4-se-rhZYX+Youlwr9L}C)^d!wpJ_FuuAdRQmbqdb)^fEQIt~?vF-3|P zJnZA;=GcN*qgQcl43@AqOeT*Zam!ePtY+`*qNsQ?<2PHz|4TTm7qC*qsNja|!Q9XR8{fXPx|T zl5^&UbGD-PALDzpPql3}X&e+_)U2XeX%93509zDCW1Jk8x&kyd`H77Ih>mSA!GJ-7 zROSGXLNT(PRfMvXJ9j`WR9WZPz+2wHIB112cKgzp*PHM$OXcqn#n5@3?!9U0UG^8; zBg8g)hH3Rfw?_uPbcn*yhca?u1|Y**=%5uNomp9(^d>u4%nhv~9*oaV)eVbvV+ zKmLt--hO~_{O*dkuQQQY@0t6(i^3+{g2@ktUuhbG(W)pnE zalyrgkUx?p>d4^g3t7Dmi%FwCb=L`MomcStLKMD2c=f26_G_*OMFUJBy zBS~}6mvg(;42^a^@AUYpL5r_kkJ(}_$2U7~u`l78dY0bdze;2PIfa8#Mx|(m@IR%t z7kd0}9ncLYB)VY(r5i@P{m25;b+&RC5z9dhXe5Wt4GC)XLgD8qnJ|jp0ic4m`hgy0 zsvqj0N6}3u>RGgqIToxH0PJw68|E!?=N*FZ=OUPG5=Z+bZed1D6ni*@Q(b>S_Ba#B zWSUWKp;a=#@&I>5bjA~5y&0cB{gcTH>a+gR=7G6g-Z<-uc|)=AT5p6EqTbNdkcE9Z z7E%R++CZ`sNe0!y-Dj5S!^Pt_kqaom1%q55)j6S7teeTaFi(CDCgFD~$IMcQ-$d5D z0QZ4M>QSWLnFuY4EjK2m+^N-EGz5t|nitm2U{1Z6p;bponqg03@eRORJ5A$Ux#9UIqLL@gvBhj&6%_l3tP09A;&l9ZRwD4b19I{k@GH!j9-IuO^ ze;^d>O!H=6;b%RrSiZnLm=F0n+u4D^KDE!M3*`^bbJ4?Z78~Pnw^UEw#|4ms`4H_* zluVGOc6IXQW<+6x2vz?7VPe)tkzDmJVq{)6%I5zHM&?dQretPc+}=|+j&YCAya9GU z_+D!M6vn`mnJ+W6o(<}@3m{HH8Q@icL&c8Z103%~k{li2 z(UXrBTQd*k0>rnPM&Am&_i50t*a#7VmR1O^>Ug5kY=YZMRa(pFFJVBWq=E3X&fS^;r{f_NF~2p77-pPPn%+{CwwI&%b!* zzR7_tfsCE=I|GT7uT&k4+qqAF>E6%Yeb2!=zB1AO(JhBwc>d5GFU0-hk(etT@?_S} z^>0&RjWzCL#I7te_b{yhShsnyX6OT?w2N)V8Hkz5IubXYULg+o3SrbbX~n_|V%E6` zt@+UJ=OrJ#G(9fRW#R=)j~k_BDrTXnBY>f2VvD#Fcpo_PWRbjKgh_=!k-O1MVN_BL zQ2)F@ozK;lBeM)r&7JA4Ci^O^iqAz?WjJN^7LZ;0rrS0e}rswJ=zAn-vJPt=(yYL>7d_Ic4Uih>_bJ`&xe zA|Hd^#a0l{UXU0HEfoelRIJoF2^{e)tHsek3Ov!^h5|{%Q3?We3M1+`!TyMeNL(P= zhyD|>*rhst1XYTrZ5X9hjvj>fA=GAzs&4H3OF14NnazO+y>M{%?E`1szGjPW=&)!` zY`S1m!pxrLW+&N)k`rfdIqlF3FR()|Y?%Gjj@i!X<2e;OQa$y8nVAbtt#+Q2H?IC4}%EkSC?ZI}(})WD+G7bv4AMi4uw-2}ulA zNR3%kH7gb96r2=tHwCN^O{=|S7W{~@h@kf|%CKSQ(B%{jWx@Wi)#;C>3bTC%N-b8rjI~dK=L{y{V>?KbK^XaGf)ObanOT5HA|!)+m`C$rmojDhGGP6} zDq!tWGZth8ik?M?K{8?x0N42<#W{3ml(UBrmCM1S;zub_&{|mbQwY`x_?-iZXzfGG zl0(rC-8?-O+rn-`u+Gjak0X+&K0d%cJeW|Oq0}XuynAGi$E+jkq$pagf-J9?#12_eJG;oMCh=+{a}DU_440er1+ipb6nU^MN*F{dRmena zMZ?fqvqUd|jB|0`p3&*@61-6}P?pfyTLGvJVt~yOYx4pnaPh4n5I~*KVv;%3{?La4 zVKfF9qhp8xiYi}1+)C9ZxK%=xtD|+Xh3JrXaA)ULQ+)k!*AMcH7M6i_v3FBIuHx{f zHPK!-=XeA_tX z1V%<95!3h>evHHMUV{N7t7TD)PmtBNVhG9Vz>HhVYwe99St+!=rXuD%i{SO=&{NMr zWz{U$x(zG^XT&KZtqC6!ke5s?tsb0JO=7u#Qd71PR!amrh!q9xYgC${h3CiHvwKg} zc?L4ts4mjzw1&d5D!XMokR9G!Yb4w=!yj^ntR6wHHFUn+zpmf7dv;f5{TV0Z8$*6> zcsQgbavQ9(j}HQ+qdq#t=`4XvBQ>(q6MJZCT{dH4AK7$FqVwJqwRN#>pKFsF_b#TH zC^th@(FcG!XlnTa)WQX0#YDVvO}EC8+_dQhY+X^g(>mmennUKtrkmcp(EVbyHA7&l zgsD##E;j>JFkHZ;gUi$+p!gp@sUedZ;hsDG!7G0RSfvb zoC+3Nc_L?TsLW2XSjxm^#?KA~!)l9JdrtpZS8O|e%}i-_L^>a=u8NA-Gl& zEZMS!LLT;i*`D#abvE6`;Oz0x2+|inHyZR=jjG+***Y>B`$1c6i>E1qBm`a8F z{GsFxpAUw1t|`qV!r6c?rqmQ%$lYV-cxuNnOMX`7io2aMU1RYZIiwi&!9(hVe5Jlj z`HVAAoCNOB0MbsNuCo)zz;0_t>0q=B)G}^1FO%50(c^OaBnm5Fojb4GI!}CPKIkN~KM1u9gNqvkLpl&g#gfqVB)pWU8AGBKGI){uGuuq{{6P`vF+Q(4xe_6LzA|6B605IT~kxLrsSA+2y5>P zOp9r`;Fidk7inj0g4W(g@u&ep#ZjC|qOXzwVOwb>QCk7rN6U+jq8GA+UR#p~gKve$ znWP?P9(_#oCX;}S%2+8Frd@!}rM$h_2mN9$tomvu1hFp%D@ZH#k8~`@Srncl8#`Ri zmp1H`T+2iyJ5?L&?da%rENjIN7lsFxcXQnJMOZ5p5uPUIO71y=hnJCSP&Ad69Wz*V zfO7CeObnnVQVRs}8yJsYPicwca(__E8Ap)|DSQ;7)^e2Gds9o@1&*qz6j&e#5v+$M z2D?Wp!*KL8_(-L+M;ISZvA>midpd`vV)tFpV{&l!bz6F9o6l*Ak%4k!U3!oGCGd)I^ZXOa%Nb z2E#k}@%^)!-M$Wxl(`jwQb{JTx#KAL%va?;4|Z0{Wk#0n=B^{M5o4|h3i9^@_|xfY(P~4 zv#n)}J@_0{i%7+S>6I;Bv>{T`8`qt*_1p`4n{&c(r!P6L!2zbp0G zEylPbT+B04Zs#}LulZA$8pKblJk3K?Xxxdh5Nid-#H4<)6^FmIu6r z3+}>;XRzEXEr=>2T%0xSzOQdEG?v@pe9A(*OE@sztzR~&JU~K0G+VUZ<>pNsGKE^bdSESx<1~~!e zhXfV5kn0j9Fg-^S{60B3V$cK~r0sqhqluNKC9flts^*_}aP# z7U_x+WQ|rIwXefe}s*PfIuW0cw8kdJ{%w|t)VyAg}wN{TJ*BiZ2cixQpSdZ2q z$HLy`e!|^nGxB>N-}{s-+ZS_RWulM;H-Pc3mwO=Qt%k4#iRJ820~7<2LeWMf*QS=0 za!YNK^8}FGb4Ad_ABeTp0gO4@Rz{X-Ie?U}b#WIT{_w5g z8oO;Y{i)Np#{1&Q@b2Gte)s=A#BM<&nv0HfzWDfMXZ_9-wIzJv{8uDgHon4ri5X=+ z#k7oYS9RI?uwK%slK7Jvbey=m&J-%`uvFk5TWEWz`t{%`L);+`^5N2hi{6L|x&83q z0%IK3_gg(wKdS^Wn*$MXLY$b-_EUFGqve%MAUn?TQh#@sEgW2q2wR&_6DLIjB=VJh z=hwBqV6^l3k;JW@HEB!0?@#-JvDsaHx9vR1<%@;=R<+imx9gqUYuqi`Xy?VpA~A=C z_xUuT#^18){EWqH5PVL5yco<+1s-^ujb?^wm8?N$)@ga3Wql|ERqj#ZYiwdSGp!&) zxw%^zY<$UpQ8NUw;z7Dz!9JH$YAQ2AE~!VeK|ULZdlY5tGE?Nn%bTIZQ1c zeb+$Lqh#ob6(t@+(?{d`f9s~{qoS?3<|)ym{X^6G)V$4Ob>!9a0{rp#_}q}fmaQUh@#7Y$pNAWw6Q@4 z5qF0sZqdL6?&68LLadkxzRq3cKm5ca8_)W(Yc^I5q&-28G3eqfK3XseC( zFhl{GZaeXcLHN@~3Z4=c=G9g^B6T|{<8I2LhoT+mDkb`!m}u&R$0Y>{hU(mfsy=|}+Nm=}uT`b>5uI0KRjJG8Z9MK|XUFzp zu9k6_xF4lWGut=rA8TOU$Wn&=1^Y6S1I7wyF=!i+Ul_naT!31JSsf45$pzO^%{b8b0d z(&b~D;cxL}d(`|dVfV2ccUF=ofsCaOtMtxL zyi9RU=8e|$faJUqbt=a7;L!S#xG)1kE0-@LsxoNC5^Y)Hd)ET!mf_aN&<90qh)YKS zF{GZJ*|%?IYh*^S^$qv^C^+6oP4C+`Js7TRv47`Nu^obMoIT|+Z>YZc(}m5IzO>-a z($xu`Yz_=Wb94Qfw9W1*cwgL+`c}B98YgQdkOh04YcfgZI;s=eQ8Qzesh$Mtw+fg~ z7NBRqVB|bR9Rz5>REQQ#Sr!1Yq2;s4$>Em8Cnw>t0n$hAoq5(12&242IT|=Jp!ySx z*bGQDz=R5Pz>q{vI>92b6Hx;iss~;#c1|&DiI3)l-4{D%29N6tM$W(Q?17yhw0`9u zHkRG5zUnb;b!F@4Jyicyhz{6?n5Tau)i#G#)Ha7OfDwYI zg{mwX4ai#_(=SS7chH{Jvd5GPWo-r8(=4Fcy^Hfc#zL%hKW&`wm*qNT>{_!^(mRVF zszTTkZ3LSc`lG2BAeqsiM68z1vxCc#wJTwc+qd^a>-S!~X7r4ywR7igx*(P1{9f0- z^V7DWb50w3Zo`>ViTCOw7(Nt+-ykkDEb5N`azr2c7zTqYD3&l_d(ma9P3Fo@N1~dBn}OV+h%9gFjP4=5UIfm4i#LTRn`O)CPg3%$rVBh#KXTYN1wr%xQ@h39)Kf+?9;ycAaFxsL zk?r6vdJa3#zjn4?3RrQKO_RH3`*vt#fSjHFY&bbx+)D#i*>QJt{otCNAppXm{g{vo zTEl*yNihA)0pejo3W%pxtcLi0APgBZBS1AFrv$Yy)2Lq%bD#*V#JSI5Pj?PLAN5$A zqgT`7oFv7F!W?4~kk%ZCtdZe~h}+yb%0U%od$SBx*Mv-Mr_*X2c-jRZpjhBj>CRg* zk30HQZ2#!S-4?yymkHLwQ<0?hzb8s37HgBUd6RZ~ZiIDtRh|g@KM}9W`{Cj3=Wosx zLbYt#9};{fGtW+!*PP#3bVaM{2ZG@9%`Cmc9ONFeX_%84HT|7Eh5Vi&zdy&Q={S*@ z*wVY4kNANOrOQ)Y2C`=jy*cd_K)3`6{as5Mq9ZH`KZSs+Wt z@p5?^AcgX1aPewNS5HZZQj`<8ivLdqq00GQ+4F7kzdf(K^2)QXyt3!=J@A8k_v4n{ zW&V$wC*N5m_xr02{0+7QJIQ?(kpnXFxauOVO~$9VZ}p7(mfqo?lg8sXzFxxlxLXBS zx(TMpU4`RiX?&2sh5UO7<``~M&$wN}*iBG$T{6B^dCr~EbDqHQ0p&TO^ql=Y=?ICO;o>Q0V-paQ<))&k@eQ5a#beTm=>JC;yxKXZ{Ap z$at6$W`cQ=f&Q2X(L2NCmN(s3tyX34J5y^D$Vh-H~}RQljUY@0XSA$ zL98ncddUf_1?6hfd3~^^Lu@ggc$+*5BR@tXs4gYX1;Gc1=|D)Lh{O^_B$hz_2q2aa zrvQr~2+dd;+LRnAWAiOUREss5)Lu?0BY)Pej)&44Hgk}(&$|4Xbikj^ycx)(gZ@&MkMALrr9WqePl0Y%B^^R74~8c z-HU+=x%HdDDp<>~7w!t8vP~=i(rPO`0ZW#KaKHq1IZe!vO>m|sbj0-`Yn{gUndl=Q zeb|N4uG3{-wGjnj+AL`(p2l+bW<+Qi`Wgsjg$8s%fF>PrrjKkxeS#Q|Mgb5>8QhS% zl4;Dy`|($A4ZHJZU(oHhc|ZAqzi5BBf4MX0bqX%)9y9I|d5E-05B<4K>h8~evOfoi z#rcI*_Q%aMm?@%@o29ZCCi_z_w>+sV>|92+CP8lKq(mJPO*QilI#CQEgQb z-KJWHLlUSehXkN*oGjg~kqUUQ&}&_wyHr5y4(J0~G2Ac!UJz&Ca0I}Z*Nh=krBi5y zO9+K$v5TWqa8l}kY*VN^}q1cJahGlR}Eis3HQSldm{e% zgVSuDemc{0cFsrrb`kSWN9+yNW3$ZDe~li)v-9T_7;em8sj}eg=xZ2dg23|(FzCtZ zYd%sQ9Yb$J(O|3Y%U`d{>WPfxuKtC4GdldqY`_`vaX((E*4lq=cRsPl7jXE4%HCW~ z&dnO;Sb1-7{9X2Q>*^ zl*r!F=}^b^%$d{D7VtOB&Hd>%my73p{^Mg)7MqQCxis-H_La``rhNNl_I!EqnXWC- zyB4g%8O1-(uZ3~;Jmv+mMmNdxxvy~NfuS*n-*E48^Gua_kZB1#t%DDe zMKYGb>WYccPog$4+w(#l{G zIFp5ryUM&*o6%u2EL3aw%H-dZ`mrf(Q5f!&pg=(pn@+O)*(CBxiops|WEQV8Ecf8i zHl?0Uby|r5zNg>}^KckwTN6*jpL@3!-?=mU#qqnp_57jyO_qo?;ER25^H+8LzPbL{ zm8C6%kV%)yiisQ8$$1apOxu?ZF zP(|e>t7Y1H+;&j=(}L)7B0+JR4-~UIVJt4phoYOep@eVIQ}*2=R69@@%3PzlPG~vP zh-?zIx4iK>Wr|9m=bM3WM|}`;J>(C{&+8$pk5w^J&K_9UwN;+hqlQ>)=$qgj={&2^ zs$*mV`(B~`P;%`Sqs{J|@rOKf#i7{`9#^k_hX%(XahVK+OuB|MBm>@}_mVc(9z;aC%$J*EeqBoLh&E+2$V1j;0$yfvmnF%4vn~=_7cL{DOI!oROS#c7VSL?c|+c zCvWW9?cDGA>v8^%m}kh}lw{5ZE+*OAm!rMCMXE0zf?9Sa%=9t0FkPO?F2)@V&PTM1 z?LbNg7#9I84ei<g%memDqAC+9+H5N;ba>oy&b~&@O^o{`^FmL zZoAkMF1!BZQ?I*xuR%wP%Wsfg+TgZ&b$(8J^O+344fui|IJ_`X&AY&zcSXUqI)U;}@h`Pz!}@gVvB2TK1XpAXDS zzRQ1&yN{Vv{cTEQ7EX2k zzC1YMKmF8e1cCgA$!Ys9^3!XJq1z9@xgwVjcP#fcMo09}HDTto`!so1S{T}%cf|*`jO}tn)^rX{N0TP6 zSN%JID{S&uI#*2p+ZTDi!4&B)yYf4yH*Va^3&tr)WDK~;sw>KEIYkupne z=L~HGw5Z`X(W0kRC|X1-E>g5&fF9=YH*A=Nc(NEG27FTxrVOk~%|sLF+TbW9&u+Ps zDT*!+&3&mHvG~={Nn0C)PFh44Z1J2H)|nMVM+k0V28!X(?15@ZjJ{{OUbSSO9?d*u z2ag>c-8OP%AsTUeVqcN{X!dUvE47!B7_3z8yJY@oE@O$|f3se8r4P?J92{5L8m^nI z7S7>NhimK|ohxS2cRixmsMkw8&T;OJ4GV}GT4NsXu~ku@u!nHZdTrGQQP149^k39g zMg8*#(Vy4j_+!lDWc;8s|33CLUW58)oQyu+b3cPWk>MU?E@JOo5r=yY$34tXXe3UV ze*)3Bud*HH-&f4P7sn4Vk!AC5l%D?)e12A$|D|QmpX-^wPkR0jSIoahdVW}$&tO~- zpTE?>=hL|0vt-;%pTG1p^AkHp29-GCN%)*|m>((g-zMWx>G}OkSeY+#roi|75Ib1*U{T1`+`g{)8XWKIV33$#K?49J_9aK22?(eRTom<9NaT-2f zh2y>R>G%H(e*c}z@Sx#2PvZCQjcd~9$ME~_>6wrF%N1~cd*{>d|0VqXbbhh(Z&1VE z!^1Qr^L#?hI*xx3$9F0G9Q!4H4juAv)D?b?joblczKoR~TY8RtfcyVgdk-+j&hl*d zeUEzAIqJQ4jWm*GMl(BYr|j;mw|c$J%ewEnKx zcJe1qj4@8~kpT=JkU#=MNQ@z-dZq7up7*FsS(5*{zU#7gM`txhI?vmlazFR|6k8AP zCkKsS6QS0h(a%b z{Ha;6z#b!t%X()Vs`+wJi<;d;HVH}-zwCq}r>Ms!{zgtj7_LW`sRP_U1579UM<{^X zXoCGP&3q@fXGWtqOj!5X?>2kRd#5kEFzGhAE;^7M4sNli!s@U}pn}g9_Qh=5uFNDV zkV z($CUoS&VvH&rYr~fSfQ0O{@S@W71B_T=kIyw4ngh$lDtgu!!u-$A33shauZaH)QVyDYdnOt7gOlUkOrk(DHt!fl1 zy5ymKzF8K{FgHXpI1Gyhr(vozJD#48`)t#R6Zdtx+Oa&&cn#x>LjTNDu3w4Qk%znU ztIoLaEw(1o(0{#-_aH=i{CkZ6@2^rM5SJr1r?nubOuU}}#1O5h61`CmQOmhrfvVoi zJTNcjB)z~q62k&@ETnW5#3-AE5Zh}Z`RHZAikt$(t6uad?u2EctEf2Wa`jsF`j->& z--5c=wjd~bO&qHnJD)od{^*<#Y9B!|Oq{tTA#&wYDOQEL0IO zRFR7l)vD~2FePF_$c|~6L*)nRu;6=&HD-nc2tb&`W@Z@Got%;!j&MFTKTs+7;VsDt zV8(0_PXuSIY|}HV4I$aEJUxaEEQ@ZKRRD{b8qhEom6TLT$XHdn%#5bKp5iYvS`#w) zc--!9e~r`o(bCpqi`z4kQBjD@=dwc9GA5=2d4Hev&tLueb&2$cr(}igPq_Tltvjd2 z4ko6ij{Qo_7PY!fV_g=&XFw{Q_u2|}77GtEzwCCNd1|qZ@jF1?1V2+Pxra@~ zL>WYYXk!t<_oZrUgd0sQt^!915W7T02n-+|v;gG1EN^2Mr_`df)kvtxF8ULN$^_Ud zYC*^rk?j+r^t9UKie{0Rf=x6J;yBfwF;2??3)d>>P$Y&UTgG^Z=m5Y|mzGGCN&l-p zmA6?6)~%W=wq%~P`hsJVnLu(P5xDW{>e1cBUA4vO%cg?q#8|~$n+$~JqiMacZ1bc% zS#R8!RE=GbiWv+AcWgWtwpv~J>{RTc2i>K!#uv`AXLpb9J<@*6zEm39m$FZ736I4K zb_cX_kT5%MSA-Q3XV$w}VQmGrHZUBPzk@4{ShbbrLOfh64(dA~#N+0#-1deD$N)u` zM^|o%+^|p#FQ-N685S~9hcANXhfYN4TT&FIr!*GP9ZV=@1InwhF6Ia8;(aje7=VMg z!7vp!aKF<|sC*cDzx zW-zWDAaTHO43yX!I!P{J@o_kTnHag0!owD|F@-v4LMZ{^`sSb5C~~K9%oL@CWAB`C z+f>vKe!;a=6Di7l%(j(6ChWW zN@GkEMEHrEiXaIkGv)6vqN8gX=kmHAJ?jztzvR%);~q0bYO zd;Tu3twL4jM_yY$KshH-UZ@q$8X@%u6E=&4UD*^HpD?x?g^|Ew2C<$wuDof>^;&IB zRiGb8Q4rPzhiDIW{WZqdDm0DrpOQUnDCFLOWF`j)SYiMUz=m3UM$jAm#cBNVY39WqlJLA#h zh%o1KoPSfsuim$4^7{=t4kU)({*GKQdn(Y?FZy4oUv#cd>(9_1fK2R5Cl(yRAI%+X zf9}ZQ&!XO=XaD_7Psa#zjv@MK>@yuBzek$jD*?eZH2Z+0lcNmy_^#ZbWkq(dQ+u=u z%}i=$B)*lR;-CXrPz{B?k?he}t_nspLOtmZr>t}1>Pc=2`kQFH;IeH$Mlc7G==>DoKXzF9i7F&vRQmZ&U%p+#KNYXP?dFTGteRFjE?fIKMy!KB05FT1Q+u1 zDw__P|Dt(LKi~)72bymRu;^0-P!kVz%WdvnF*-F^@~pbMEGnLUzE;S$pH7cpd6SAt zZEfEpe~T0+%YIOwOv(|w7+fNJco||$=W_RE= ztHtf#zQKC*kb-O3Xv1d)atVB2{SNM{gSmuTU|&7!`&|svfXz7$CPi)_ETHT1ADPNM zm9cWm&8KOyET=3S0IOe77=8v3EeIJI6cw*xm+Z5{I;`5#yY<2Ei+O zRlfqi-gudTiCKpV@dIm3c37E;&ok5Q+F-4J>`ueGmX>-p_&2NvTxJ*O8%jQl>+)c2 zmpqTP-6_1zb$qaXaNvjR>T$yNJa2o2{uw)qfX{}V`h!Z}=5j+*mJ=2vfhG!r4cqoS z96}FLfgU`2py?OtyC7V}JxN%^jWK^C4M15-=_Mjt%%ztQWBc{j@8o?z7JI|`Lc?rt zm|kGUvzAH}|3q+Y*aN&}daNs^#bve)Wzoi2<_xq1mD8o?hu-0+NiZ_JSt=Dxl}q94`#DLS5Wet`HnMV zDQnRe_1bMADP&4((-Xo)V`}f7Qw{qAsc3dQYqBx>xjGKvW_D&&n4Mqbyh#c*hU_a= zs{s2LwX7niOEW8Ur4s;(noxSv%B?MIYgKd3MYh)65|Tx`vA4<%t-}%IH;4p~WE?mi zY{_A(!k1Scu-hX}8T2jiR)y&W<9hWtHoLZ6R1MZ;Xn|26Guz zIgm6NyeAC=fIM}fs{c+2Xq?b&hXfu_IKAl`+3|=?cvnq~IZX?(ErE5S&@*Svn}Zph z$zb>Xhp$wN=Ze;hO+V_18R)|46r#VfcY0*|O|bx5c}5SPvr_vt`j~J%36UHyU1A+D zU_kYDFV-f!ZX`OCV{GoGmARXTv;_F;Bb@vm8qtH&Dw{#oYBOl>^=aGD-L*>`Wti+w zX(*opwws+??g6HFI-jv}&K6D%(FA>oxOVV(U#yxat{A?y#TGnwC{HuhZ)tVhix%^nz7L|FkM3_kGW`F!J!PI7z9Ngn$8bLh96f{CPF(kqGX$e0ULOx1xj!y3d(zH?@JsrA zVkINYo_`L!GKgnNRbh~eHF?6YDyx}gXUnpK8QBJyC+5ML6{D6{WFny$OO7Ij8`g+@ z6xImF5J496HFLN|a!I~MP)AuYHb{>*st8#dK{GqB4mjaM{YmBw17>7aS|;u?7`tH> zK~~Qp$##U{)^Q(UhQn%9 z08T)$ztHU`-}zDLs-UP+$0LGTjNV_o{o;3iG}^vJdlf{zqt;UM?O$|(S|^;R;jBt;Vctfq73S^iKoyZM!;V7au$r@W>X}QnY_ude z_`s8>EA==}y{2-2U_`%OSI3fFT~{kpUF}0>j$e;;xHCVz_iwLCWkPCRq1)CvvD+5< znG`NgoO|flF`q8GT}VFvX8ZZ}siQTYPoNW7`k>{JOyQ`rLdsF3xfuYirvSy!XsYPyX#6O-~K)oiXUFPGi8A8*Tq{WjEF2ht^9UjotF8i$40{S3J8<2u}Zx zkJj3ilV7Ayct8G;9bgOEd5L~r2r$1WNA`0)J)}YpDSU{{5T-yv$Ue=^7C(z|B#yDk zg6xIM?d6I@iq>>WYza2IH_CwmHC(NAwo->!c;)-}FRLiD(eyha%j!^E@ zbM**)ym$k|>^@a&{Gwv}nW$H9_Sj=$(vlRu@6)l+Z7XO1M%bLao6T7-36d!EzIkZB z@d#g`6e{<+--#+qvnXk)Z- zr%~u~V~x{yGyiiMY7$8(&_sBTBhYxG%nNMnGv&r4rp7ttRcn~1*erG^b+w#4+2gb? z8=WyL^Kt;LTm~hxWu0?WUjSZc0AlLPklO5Kf`%tK*ux^qxdPB*FjEk_w>l2Xc@zo~ z4Lw`)T>eET%9;qQhe#4hVjD*BDV@ig8=B%*YkzTT!l_k7H1z&r?BMl zE6NU9g!?cjzk8M|xqm2mQxFiEG)hKc1!E zCPnC*M4l_Rg_wYXW)0^R^tfiZKnAJ_5Pw`@1pA!^ilTwQGR#knaszoe(GemLMeb3` z>L@BBx$%f_TR3BaUu3S=#O5aQRF%A-R;L{>5t|>+p4hK7x@};il*6aCneM*U3ixBK zs|x0+pS75zzS0iMf>%`ODGi4NwI_6)pnAuxKEGOU&u09ivtoW9?4=TN$${>gn+&t9 z94X{s^W5i2m@GH-}r z*9ifm6_N9)Sb}gOTLm>UWO+?`R!ARr>d&MLx|%Ldb+BpW@2mHJm*5n$n8e)Y>FKi6Q%_(Os(n|D5bi zLwyznWzjZ6qH2_Jlc+iF?3LuDof=4U>x z=<;}KNE7VrODir*Ns@(U?DqHHWR$G zk?84a?N@x%oR!m8u=w3c!mvdlh553}?Fr$2Rpy$Up<+*ylQ}Fp?vQu;WNJEWBFLy9 zh)2aOSg|SxkN3{OLPWcio6XjtR6!pZTc}^^vy_JJFAW*|etms1n@Btm&S(6Qqi6s9 zo<02%#if_Nw6NXQK4n~3Xn$_^cHN#QqF#EG>Q#;)A&5g*rk@tV#7|-*O)lYV!N4!g z(;#7>T-DgTmI8>V+=oC7gk*59J;q#A#8v?3xadT=W}EUOTVhR<8B%U?IL@xQ(_9l$ zP#jiIV!gB4^;KbwO;Q#J)7(P#u<1*sz%HmiR1Qr~3}t7>C$2kJw4Jq0Z%jpmLlr?S zgpZXUzwAIbW!+x)pMA&tx9=0a^f6)kG25iKr_)Bii@xezd?gKZbf>|sG1frX5gJKF zw#|YvBod29J+Mb-kwiKqvZD>@Fp%*egrN$oFDqYPR;&P9fpkz)Z6+|ekpNKvRTUgr zIT1p|_qA&WeOT?rx+1D|{2)6`&mWH+J^J>`29(!Mo)i|dApx~oE-bcRyW*NPl56w< zzJH*$+7faa=gDVCGY%OWu(%QLu!@LM&J@Wk35k$kgeG`z@f80J`O<^Mi~h zim%tSAoG<4G$Sks1Y?^9oK3P2U|SMe4jC|;B5K}?4rmb(LFqec=gOhH5DU_NvMtW0 zM-(#ML^A=_k$Q}as=kU^U)nq2>gR(#ytPz{#tTJHbolsjU;4|7i%M!pST1cHD#oLy z{5(grqj(8qiN09;S0zov_6&1pLim;N1?JP#pf3Wc{IfMgEAxE5m6uO6N-lK-Nne;_ z0w+s^!sZ~C*sBuH>ia~F@`}J(*I47&2T&55g<=Ku9vpn6)&)fjotqg|Q+|m`}J0yDF)jTHTiVp=;^aRoub5@X)!}yyJZ@ zexR^xcw{)}rB}~hdAOQ2n?v-H#rpeB-DUIyn6sBHUwc_{@AH57vujJwT`q-TIMvX#IpQPkXnOilvIo6T&F(<0Or5X^sLm!4VPWAqdw z(V;|QWR~tUfKev%M|RCD9XR=(OUEaNv!Tcv$+_87z(?)*#1(C;+kpldK6G$?=-n5; z>*LX2d#Cs=pXkSZ5_G!%QaO)n@A%k0GVu@jr*s#Tm?Y&Z2+K^Rlc4zv4MFhLLMm`yj9HGzN_RvWCFglDyxK*uLR zF=obzSA^AMDr26cDHt{A30BPL-NaaG#Ks5~Y%|urSNj2DF&|PTg+vrkpwn3qE zM1r|K!m}qGiAtCV{`1=_AfhVnC;6UwmCOh9Fzr)Es^$4Y9M|{ zz=ou@5HDcj;pdRjRf%H6z<}BEdc=eUH*YW7r}WH{Iq2JgnA^;@BONfXn-S??hRrHn zxn#Eyd>;Xdk<8L#ds(U>&(XffPR${ zsemT$dgT@52CXTq=}m980F5f5-Qey{BN3)itjdKjEecC0*I%Kq@eZo6*x>?bv7or6 zn$4J}JibV5nCm9lfm*G?r-yFfiJ|K*gGZK*GY>{+4RNQ)KxY#Y9^s3Bu_HXwesVf` zu=(h&NQLh6MSMmJ9eFsKiC4cp>^x`Z1w(9ZT=)5UMC^7+JRWm)Y}iK~#b2BZ%oG#BWWcRqYu7lG8vU=LE_Q`U z?e$WXTVLCAFk+P~g4Zj!BUco+_VGfXb4(Ul{QB|>iY^Q7FuR7BH*_msb>Ir8EC?9& zfX^3&eVuzf32_xXUf9>IRixJ?_C^3u1AdXrBXv{5Tmu0E_5%H!a01*v&xE2!V*m;( z7NkB!bXKQN3#TF=FF2Q{qRXqKVFu*WM{7_9#H0;W0Y9p@m|afa@U~!8r}j*i=8jyu zXEyqF-L;dM+G48s@!5PZZ@V=ebPVs9e#hCDesagW?;A7k`@q3FZ|L_evuC!O1c%_I z&!ZidSR7$M|ELV}3p5`ZLp52g zt-jC-^3)e|AvjNbGl<2npihygp(T__Zv@4rT934UT1ieK@26f3lBt;@SF#hGN`Ri( zoSV5{$j~Lk|DBGUdrtY|>$sUmx1Dv_ttS?@?laR%+rLg0UVbsZfuH$L#_zoJn%|!o zr~kzEV-2&@qijD8le0OFjPoxWamB&TsRk}0e~HIRDGzdu2`Ka-g%zh}M@?bWwlAjHsUcXMa0UyC^AcK- z%WN#mc8p_``A$qIF;wkhQ$v_=Yh=Zz%ucUAs)K2qkeUL}hy(1(z@8a;nB}6i3%-Q5 zGXVpfKH@B)?W3@i!5iu3^cZb#&2}z2m4>Gh`YX-F|3|Egp0_lYWPK zOYA0}cj=rZyZX5E=EH+lc`w>zRJaj!-bYD8(aZsj5)*8qS%CN)Oh;qF2 zG~UOs0oK6$TLb58Q!(Ej`@XH%)@Y4zX5^H(s&qHDYKj6gP>PWJ5S#DNDsBbSfYv*< zI?ARj>UeWXa;^k#a|OT|j(E}STcZfC0mp75Vq8@A+8$3gGo>O9Pq*&d8{3lUBgF$5 zd(@Ng2IG6X;_z=?eQr4!7yyQ!`mpbUKx9AAB%EcTUaEW`vP8ibNbJfb zpy3E5AYMpkaGs&P3KiZHKVYZR$X;@4Xx$pjy<(>))@>EO_{5yUqL*^$_=v8@K&MZ4%HAM zQ@}!K%@$7cm*_k985FypQDs~;cwVcD`ropD=G^P9J!kq*#Ty=ph6+BL_V#;)NJ{ir z^un7zxbLdB-&5aiO@;l*dSRdK*mj$%5bvJ_pT;wBiT;26Gf{Xq`k|xbe5IOIVM7X# zhNcb`ek`jkn+Gac(0qaGV`K$+KVg!GL7UVNgdy^Pq;)u*;}Z3zAmfJvtBKG)G6CP?8_lj~@$~LOO>vq|=A2LqWU#sC3=A z)ictf`ai?z+o=M{jL|>9RLI2@Yw)Dk?XZj9RH)(`E>B-|UwU>TcKi8vZOb4gbMJXY z#U?+epP;YV1=Wc+Azxx(uRlOvBUN&X(wCxEW0#oCw7M+WOi;n$g=cqJPUv_UH@pHz zVZ&LKhn%ZeyM*Kz^x8Z{^=eCEm=m6|AeYD{HDvIq7L#QXw3Ar!1=RSkv43y|u#JAW zGD~6L725OBkyCc%hJ#0qZsnos$Y(^!@a)y~Mp8+YID4$U!R4Bq3MOL8a5V8nf?t&Jp zvYpw`q|B`_J2F}hZ6JyeN)zuFNd(whv;&|&A7%f{0!S0`ry$1QDypExqJR?LsIUH>TrI*blI7x{a3!xxk`Ls7UlOIt{uI3xT2UU zKR1K@aDS`ds3PP(()9FjR35}p0UIo!#1&$Kmci(;vj|tJ$p!;x|6(!F-v?It*8!^< zrmF0c5V+<-{u`H*-BE`zu+9L{pAK^Qu`b@qGk~|k&{n}*v5>c)X4~qC4j(zy^Dww>WXsN--Hnmmw(pu1d25_jHW7l$k zvLm?|y9N@Y@~n<89NUUK=Y+tdF=ua$a@Tsa+?*SQx6cvINCWEd&PjHx4zVX6LVA)` zm>VdAA{v=wm;Y*xEh@8Ag+&E?OQ^WCVCH4#S&?n+Y(+}YBnU03#RzJhiyT0s+RAQBh`2&}{`@-S$x^p+^ylG;`NwDcdsqlH{jGk}KX^px}>cR0l zFS+Ku9@B>7_tak;D94MHQD*MXQeCq6%3pJv(|=~?7sN7maULp&Rhk*FITF^QXrG-q zWz8T2%~1?=FqZMLy~zo{jE2_U%5xLv%S|oHVu0E_AQ=<^4Cen~5aR#@oI40kNh2=u zw26LD7`XTFx=rlI6PJU=qKEO}ZyvBzYCN;o*0;`u{8{f`V;*m8yq)ivgPmhuwr9uK z*{-$y7tTdv$46J$TCqpT*`nqd0<(r~EXkqLC~U@!nAozr+~El3P-bb8M&47&PTn!ApF);BV|g zLUg3PYKMDE&Y!Z{Q{Mb^>ch(;l9gg2V0`EC)E~aBykjxrFNd<0oO=A%Imj3YDwjAp zd@k6?-}$95N>@mdlpr5~RqG-zRHKf&8vQkdDM41;1-@Gus@AQXout`h;mtp?LFAMj zIS~o^8!2(w9Ev!>LI$a+*2Z~hx+qFd6N5;7er$eL17l+&Bw@Lg>cGA0cJuKLNUQ~M zcM0Q0-AG26QNn1FL&)ptKYPUGIAAWhqcrxRP&{1jP zpfz^g=p{D~?U)az&P!;DWykKfxeexn&mNoDy{C57NuqGvc4ntLuu)<8#toa-vxUT-t-p!{xZLv3 z&f>jmqx4?|*v-F9n$s}*W_b2FUVsD!phacyrnJts!bIg`Q+=4@>bvgt}TH|)y;3CrMvLRAoZ{dQR4XM0| zy4C^=*Eld5IN5Y6M1c#9-hP@N(QaN4dtwbZ9`{NR1IV*+@Q@gJgfum@kK$8R5xNP=R8T4$5CLzQ zO&ZC9^nGT>N1=g$u_Q%!2Cs;In zANQDBPCgpUw^ONl+Q%)c&Y=Q;j0GySEngH~K}p1C;qptNl~$0qbp=s!5zcWN0Ewzi z8&;WY0Q7L9e1}_LW8tXsa2#X^8qmS6!x|DyVQ>vOaF!im>~LaZ!47uZq7yT;er@eJ zg8_QD#PNLP^_t1x2&nRwv7&HbOzmwSR=ERPXXv3xb~LHS?^OF;vr}BE7?`=~1MFD? zBmr~JN_!qK;6n!r_AP_fs-8atRmZqZ3U@i}<*M@nDdkNpLzlhVO>`i4MJH0Qhf-%>RqNUJR~rretR5J@9ar3oONLL zE|Vvswg1s8Y?{=bqu0|$Lv!n)cRtb=X1Mb3?xSk5S=-deT#6XPGQ27~Tj<7ButN z8kSE(YgoS5h@ZEkLpRCZFgXlYC+qAD!;{E#FaoXPJTOpIv7g6^`rn{p0$Y>=0Wc1> z))3p9=Ym)AB(RP7+~5i(h6W>sbsWO5&x=a$U0)FoF*EB3hv9GJI0pU9yne(N`2kmxKvZ5L z!WMzX52+I?U-DK6T8I@6R6nO9VrQ_t#QxSKcndw-%eGF)65H8j!Odx27J%=dB64DG zsL5^Oilo>0BGYu;g~1*^Mc`g|tM8lihaj}sFbQit6BvN@n*#$-GP9S;u+cOqSnN_p z4f84AVPkUv8yn;jPQ#wV6Z4Ja=7WO$7Ho}hT^DbkR#>yLi5;yyI|9iQ;f>KTHXJA$ ziG1hHe5|{A5QqWRZ3Y1ce@?=#71X3VblN30^g@y%x3RIn=Ny^U(4RZapMsL5SBC^ zLFtl`Gmy0=4hd8m%F$+y6+Byg>}>>bmwUVsH26GJ_Sihr-bdz(8{%C5?y53R0yLYO+ z^K3eIx^~g;nNNno#etI!d^P4X{uq6=-zpf&pCPxbiFuJea)|R>;ju;pexSD;l9pHy z+fSipZdj2WPHxc&AE zF1-D&&kBi5J|R$=%;(r&-+bt@OCNgZii;om>IHjuU$p!Dy?f8^);i$3rbz`NT0MNz zA;>_&G$2}Xy`pRbR4r`RYGmv{k#sfWM6jnd<6uWL+jXp#ZeMqIKZ>%kS9Ylo;3lg` zp_+FBBO1^E$w?9*4+dnCKSEA?~XQ}jD5a+)Q7M4FRu zLX7Y(AraUZpyrB9U2zshFe6Ydif(36rp>Hp8#vE8H8kaxjsIlksKPRv5z_iWCv)4ibV`M%VJ{)x+B;^Y8m5Yd;=_{A(%a`t{yt5NGkc>5n%kV zs&x>WZlPRD2`dPh1f04h;Y*V{ql??3J0~@gvsg%H@kcF_kvaI*63MIZcwODoS7Yqe+cBhz2^YU(%YZ#jA8?S`9~@Amil z`%YePhwi3H`VIPsc;oECZS?;3)%Kg_rf+8+k!{ofJO%|v=eF+ zLAiRhhpy~#3*+wE&C?#2!gf*TO9o2R7<2U?ZudwYX*@$e&_%elRf7OGc&1T7%Y4)- z`IN%{C-P?!F@FPHF8s`a9>^4)IVs3f4;;@3IcH&jumaV^2zxdG9ah1M{7!OQTy4gY z@hJ|J1`%EY7*;a5!&m~y8#q`$66Xgoax1bpi1*JxSQMFPczN5HCO(Kd=n^dV&9cey za?=CxDX>OxjgbOgQ}>8@<&1I;EP~ehQqNfbkiE(q&aaQ7LY*AqBBSJLg2}Be5Yi1l zD_B5vpbLa-Sjyc6W8!Uy;)<+i2d=l;6((5ZZtBIESV>|0Bn_D z;N(d0_0N~+8DQ-Q|61-nYmi%DxHq))hJlAgJG^`Mz>s3EEWHQ0=ifz|A-ab2QY&o8 zXW~MRt-#Ktxl#Tj=D3lGe6_itvYs6vhW~88qyN;NXt^ha zH=_%?#@io`LP$YF75dd&(xJ&%JkfX%*B{Tt2`=>SI+&kQUXvh6k@xYwd~9`8;TFxO zsRe>PS52{iZ1YsBEk{CSv2;n-x~xEu$&grlj;k@r2Cb=2cGoEITyggZTOffZD4OK? zd?Ly&M9O0$2{wH;{E8^#27-9z^TfeD)N!65my>?$$UEC_rQOaf)nuL0dmncg@2^h$ z^H8j~^O0h_XE;`FMS1TPRCLp0Ttj3^e9GeRB~-w<*|1A;ZkR{6LGTu@3x}!rp2gKgNHhkVHJ52|BfNPsH4|AbOrAMc`JJ4eSu;qm_KiPw>v&PG4%LAWAM5j;*fAdu^?HE2}gLSfa|UEFKiF} zM`4-dAt&tbf%!1gmyK>-9Kq(D(28RBW;%pX9prb?Jeu{wL2?=U_ zMZBjiYiw4}_`td?rXR{~QnEPp7lYv}>Bjl=tL)h;)|GH=nO&TM1p6>-Yq26 zjIw>DWiaL>B+5YiM4E%-i+%h=aTEMRMnW0`ML!5~Vv4X36zMYj%u#l*unW(efC8vT zNJVZ!4re&$>w0L#rlwj0wK#%Mi*=^j2)p>>jTZZ1AA>=Omf7kTY`x+<5sA`st3rUH z%GBlEM3znL-Ot;9HgK%ILa!LyxIO8aS=_6& z9j#EnH8M&bRrczdfvplSLrJ~bGuJ za`n0tY^$aKu0$4z@xo#=nnX$iGFY@-HW zF65jlI+D>qIY@f3$h2@hi$#vmeZu80bp5rvkQ3`(#b3ij8t%$=5T!H19I_a&ZNP{X zZKEDc8Acz?D)FvJbjzVDvMFFjSWx$}YS1-++YLIh5?B?e@~n#ICUIghqeVIF!B-pL zxLP-#ekm)wRs(L?A9EtBQ=Q%Gu)X%q&jcSk&y%D`9wSXP#OtIc=S{22vAkN3t*&sU z0~D*_?aIV7Jk^%bpazMUV5(M=jfPcO@L9Q12Y5<}0W@g9GkQ90L zL0{^nOvV$NIW+vBFOn`==F-74=1&%{h`6=h=dJ+U)^o*MqdqpzjNiK~9V^0^k96Lo zZ=qeDRFELyJ}|tIsI?r}3<;+XQ&ot80L$F>{ugdF$da*=5iCBd2N$6VTFgVi5b^l?D`o5$&# z1#uMCPXdrMJmJ9%Mc?vC!3(xsc+azUp0{{@!0CN)X!owti}aA!k~SV+IClK_v4wLC zX{+ak_d9R-$j5GSzF&z~e#va{kIZMkRH=r$I4TBu3Ys>dm!v>%-H4*tO{3J!f>LCEj7=}D8*fN)(Y=z$C8Dg%r)?TZhyyb)`%)5=YDc%!F@i{#T9v-#uN)f9ov|bD z3_V*fES#UnCz9bKG*vly&ZI56wXh0d$Q>^gwmiP%iP_`6Z~=H4*~5I3ev7T`v+2J; zo`GKzp2BO#gy;I#=r@H&*|p=n_d#9u7vKlmwH<}eS$GuroS)_VAG~yj>PSc|=!8AN z3ZmiIYL89y%r!)KJi3OFta8#wE6`v84fP@-_@GD)%*_U50z*(h&<=BFi8mPqar&TV z7)M*iQ_8U;N}O@cAj-g_CkLUE6ou#FkT+%#pNUT}w z%>(=q!j)c2EI6uE5#&XzTy@VSZZ&AdP&l0{j366lNm|ZihpU`C3Sy%X07kcn*6Kj~ zJ?9SdigK{TELD)2A(VlV(@>wyBH$GP9wim>oPdwAiH%%}IdxqpW#44HJ`=LL%cK7A z(AcrbJ?9uV+6?WweP^i<-?r!Ad55E8PQS}H1!*F4B8z^U7Pb^Ift9JI!It7MpEaHfn!%4N!Tl|*M!_~u9ywPg_GvIKa?oMX3u=vu8S7@Bf}5#qW{A-uP!o~ zU&_xcy2-%v7k~+79To^%&Y63^oOVR@d=Sg6%rwTzSqC= znDB(%CLEzp3s0c03R;GrV?KYB9AVxZ_^M&kYSX0Z207U6<`I<)lx{^1NGNO#VU1P9 z_9NK=eFG*n3c<)EjJ-Ud6GKrwT*J{^8F6Fl9zQeaN3n772D+hhaj!I9x%(3O$Y7IR z`wD1Y>~m5J%k~5jse!6{oYa5^`vK;lUdO#8)cHA;l^%+Fxkn-otC31M34Uub%ly^? z@1bBLD=9q``W0x$0nw%*yKIp_s|0@PyC#?wAL2kZwlOp{66aLRLcT;l1VwBX=Cp{( zYXoXqIh17AEfHS9R{Bk_rxBY@R66FZaOn3KRGKhh!t*6mmWJLozx&F&D?8)kQ{mD5 zLqUDc9-YZfmMkT6I%65Ol=H*YGk#S+yf?pn$4Q4!FGs5ZOT02S8VbzJ<=?j7nuys> zREBScF%NfsBYai3nAFMF6vVsEfKO+yb(7&jSq`$@R>0*h)Y&FbD|eg4Yl!)*mZ5Sv!Ip9i5Y{oMxk=#jON zV;bw7^b3+C`xTnzeL$zeKm)5#Mr*GfTA z#kL!FYJdKo%P)IR%*baSCwa2~#iwQeud@oQOyboMLhIAiE6KF#L+UoI!5jxSb?9Ob8Plltc>O8P1x&FD+xnE(Ct-sa)JZvcYB4D;xEIR z{W{v}*K2xV3}lS_DQQ}|eHk@Km5=aATB&jZv^?9W@>tr-#{onEJ|gyL)WHeFotgzr zMmYRkES4;>4Zegxi&7PWapdeWLccNebbAQd{=U#>U z*@n6ap8I8Br%Hs(7D&CzaRVT}m$e~u1gfWZ1OR@JtjazK)m?o^Q{?jirVtWd%_x#D zM&ob+aP`YYUsQ1oAk9|0o#TP(Zxxt-~e9SZnCpPoJB$c>3kyGrB z`B_p{GNclBC-@0d41zlmQ{0I}ZlgP~(PY2NsW^C$xfMr_oYt{$nu=F*&*JLhP{kWM zTpM&P6daH00QSx2NexzPjw+oU0Fr8$u>HFkM}oLGWQIek9y>qh8UQUQSFihf1cjak zyT83v&axk_Hj66E{Xowf=ApN$f(jH0yT5HNW|*Rg?Hkbd{gheq7D_eL6k|s-pi_e` zkrRFnw1Rs!QCM?z!&_ZU>tJuepjT-G|C2SkYTfYG-o9hUd8$_-=IyqE*XP!#seK(I z-Nyww_nKs)C$rl*wkV@I#Oyau_Rs)nRuoQ+1>s9l3?K&tSQuAwi9a zJ3%7l`1PXBj^;d}*=6LN3?u>aB0gc5p=>_)O`l;}D`l(+0) zujU{Om1pXR!u%hGqdM1S{rlY!rTrmSRr(QYZalX(VinEnTKi#?51;z7LYHv*FjoEA z`aXXg_m%c>WkL`&8}E;)-owV*N=C_6vP8Z`nh_ZDKusQF3&jgRJ8LL;WaJF7ts)=w zVHoLoKzzUt)5g`7V2h->v>ZDTDK*PRch-)cR3OVncLy7>Qnk5b0)})4G)GPBfFCD{ zY;O2nJSQVLR8Ul-q^-^#S7S*(kt+9A^ z%j~x8@N#$_$&ln?O60t3sa}>O)6b*CHy<2Kt7!Tol)`ii8>tg(QYpS}wq?Gweii0x z$4>npWsEAXUcBAmcyJ)gat_bIST-)n{YO8h3{RMzOrG(Yq~tPxCR`z0PiDyXIiIy$ z1MCI-P_nEJGCMajFdlgWx^fxBxMot|BhMmO9PrBNYO{dwn?ero;)qv{uw4wwCR1z( zI7=Xqm5ufIEtYl8vCU|op_{T0;c|9UqU?vHghgr$L;KoO#Ax@_u%N3)##Wt(DbrGo z6F%p~r}Y-6Zg>nu7BWUa$i)@0oXrZiTw-BO2?5@xaQ$P+mws_$-L`(UJu}08;H$<;x7EEJ6H~p z4;CFdZ57!&o>2zr_;JY9qeixlAR79S;_&9tuZMz?G|ju9)WdZ zE?QwvYm`~|IlF+)Rtg9x=b+0S?vt5@H4_6h<{Y3(!{Z7HFvUlK#q~f{q;y|wTr`7q z+#ZEd9dPOx>3{#oHec3TJ3gJa4vj7r12aPd3n<_VtjUr5CXm}{ld4gO0MrUW$%M`bfE}adr$-`*T`X$Kt2GT&0g;90lGjoPO~wd z6dQF2cby^#Bw{^dea~o*&vEm%(^wZN-&=Vp?DHs4_S-_O+faJyw{g$J#JV*{ZGfIv zR$lwN+iZ~|(epR7m8!i_x~I5d5#EHDdZiil!YL{xyzLi<;@D&JGvOlUOVr5cl`{(V zL16J}1r%w(Dh^yL%3X*xdITd#s-JUSf=@|qV(dH&7p^ETKJnipNAZ!{~$a;Y$QUiAx*D}qlrBnDXv#y zgD9e)z15b%OLS^nr8;)>H9R$_KFM@V5q*4vOpjZA>^x1TpsE&SC7uD!&K5_kp7adu@PyLsFsrLD^4tnq4 zD?&S8?&O3s>90tce1hPVmsOCz7W!16mMV`gOMq`GA-)M(9$jT+uR|)2!b&U7cawOb zTOx%cCDcdnK(0+&l|{BtM0XDk?5sB3h!b`j6`H~jz@$qP4a#-EjVhqE@L(S{a9=uW zoAv8;8=lvrdZ@13dgF+{fQ{>Yj1MjRud|@zuG@Lj79viam-?V-otoDGH)!W49l!7r zv(p?z8frvgns^AIq;(saD#xXGnVpOPQ6NUBLC=VqvTqFE?Te`vcwWI zVCBtx_f;wcgy$xi-`gx;-+BSg3W82ANph#R#G;eJ5bcPJk4Tj%{MQ3lO%j>M%wZGeC>O!h^ zPtI?!@hj`b;$_SG(&0iMWc7P&ZJOx4^n_}sT_+x3LvkMZuYgT42$nNMTFU$Se*d)HL-7U~gRV81)r`&||JEj<&jO?Q5(T+`Eg=oP~A z?AijLsqvbT{VwbiI`M+eZlxxI6#t9_-MYemO$R`D5S{o|=#o3VC&@HyH{S=C{MApJ6 z8*G>c983Ua_}Tl8Xetvq%1?dKoW%n6Gsy<}hvNVzoXHr64tmctes4OMFQHCil08EapW$t! zp(=N~HB`96sJbY4X{Dv*U)7?O*jMHI5M=lvi{Vus4>vFpR`Bm;$la@46N-ia_c2uL z`vQ6H+N9`Dyiy=6`TWwkX3ylV>G7q2)8X+6KQY@%`C!`XFUR9CF~6fWQ!lu~9;X=Q zx#JjplNN-RiIxlz5bY)w_#U*O!|qs>m+0Z7tzz?Z`!{Q zUd}EoWRJyhjPZVKjPItq)i2-}duf}F3V+8wqtKn-wEr;#KSl?9>PQJmx=8ht)p_2ogL|Bs$7`idfCf8XW7if)`jiQ; zr8{ow?7Yf;_dT7zKc&TMQ|$le=qvWJ@G$ueWowUlSPv^&@>BE({2TMOA_RTxmS7Ab_cuG#`{Of zr|2-fl<3$g4%jd?N>(@3m#lM1SBb!mT@9YV8rW(L_zjq^9UHBU*1mG0 z{nHamKV4c<_@0%|U~}SwbiZJKfq(8IyLOQ6Z-;Q+>1wdI0WAnYQWpXpClo({s^DAT zrq>XvO8x^tj|MEb8FWx^L&w+%GIbXIUEqsg!6GplJ+XA+#L}nWj}s@@XGh2sv z&b2sEHdVf{s>`_E`N{&&G2STVictF}LCc!`u8qx&85Z9FH$ce0TG>2AE)X`GL5kJ{ zzi&guIXyz>pq~QPqLulknHp~mrZZ|wWUBc4#-hG9T&h@v}-puR3W}a(O;VW=c5x2HX)f$2+TLTi7=z6tXgdN1Sy;h9d z_D@b8*m9BR_la=U{E)qv%x6@7N%HwbDZuCUvCbTwC4S-}!vt!{z|Tdn4+r>(Xv2*M zta4a@Dz(#uMF2qZS7&HVq4XJGAHRx{AS*-C~DdEYF z=*+5k(zF%!qn`>1dXDgM;$|K`S8_7fWT$0yjcPk>c*+gBqKL2qLW7)EOx?e^WV(t z?|D+d9SB_h*9(@QJK)(X*dGgeong<>$ATVLz<-q4c`FUlD*Y<^#0i1~zzu7e-FFo~ zjcxHJFEJ>eWVb?!#$rctp|5*R@0y>2Pi$UW${bbv3Bo}gb7mhFP+?c5jZ#OY|~C+v6cW51hJuBF(u*V#2T-%n-mTD;?= z#m~)y$akNBt z(I0mAILfxPT1&_GIFavh>XnwUzsDKXu*X^X9+yzu=Lqfoj}7n z7Fs&$2|K;P$By~~E>94?hw_>1d;Br~9$LXz|Z?S71Be7Excbb-`DZ(cai%`kmv|B~<%wg5NY6V4c% z6#ZZQ@AeJ{^IH<5Pb}>he)1nrE-8JmozIg`kSE#R^ep*v;S-2)GO=q<;I+RXpMz`g z*`0AZ-}wofle^g3A>3y)a|IiCiIjSS*TIX{<7uZ><|uD0`=zB% zF8y8W$}8DtS=eVSc7CAPjwrSxs{SdyW}Pbk(6^ljea1ttvwPmL{|Pag1z%8=7Td|y4~b+uVY}>eu>wvZ!hy}ZJGJ%0y__M!u`E#PY7OO z7ap;zgpakCJ8$B(r-e~ARc`@*z5NvTwc8e9w9^r8VSb?lVhq?F;D7K7**8_OFG|~1 z;TGlz()M4m&whjXfp#)WuqFt8Alm}X@P4t}(5^rN8zdZcJcy*+D;^7=GLDl({@MC*Mc(nb+&d=GueWd**vLFBLFX{J~4|x|`bB}g9 z>W5(+c8v5loj(`Q!&-_j&()mi~8#veRKlOhp`wlqC zsxseu?yVf}t$Zt2-OAM!`c~@PJ)x(20+SdfzyLF(nSmh)2neEp1Yry;${IiySXO<; zs_G&LVnz`$uY-!uRn|qD)pY?APp0af?>o18X3*Vz&mVSIovNv>lfL}@|4!WBZvUSL z_YVG*-t$>@&rwGnS1u>1OA|K52`U6S;3gWeo8L&)9$hEkTW-*``s4!-EG|B^cy9kC zykGS5Um5%>o##*b|I~j3efcNItK7%=7wCPj4E@EfpgT!}l9k(j+J@KyAu|Gxj;{-ro}-@rC#51yf8@9W>tKM%*gPuJ}E z!7u69`|1AN$;Jj_bnFH?_JRIV|L^b|#|C9SMf{p8TvH5RkiSFT#@ z@n)&DE)fZ4pAlk#_xnvw>*MK}TG?03h9dNPeqf;I-ZcE4-V-?CtQE-3c4drv%6jd4 zI*vlSA$&O>_LurRfOmu3>m3vIT73@e#qO9eR$~QJHc$euBM)r({H&d_ri#97Fp^l; zDmCMFOSSCtnxFARLfN9PT$@QhZgrac?+?W28vlNpO&(Xm@$jLO7@ zHuk*%KX^adF!%P~_1g1zk6!E_9o#;6n);!2j77MQ$CiBvt*ynDC5&$ZKIt&7EWxQW zo)lLGfk@Ba_gG+gVbT!}M|4Dbm_?S$r}+GmC+&vVa{sG?%-|#R8w9v9X5(TZ9MmSr z!1mQMG4*SLJ`X*Q0AyMf9FaP}Rz;O^t7crO5lCiR8cl++|NCMgEIIO{(Q3wBDvKHK zMA;_p+c&3IlyFuwxYCY%3ckbhgL4Ppqu)W|3Jebj>{lE3hAxz-W=#Khl)9|;F{8w*g`<%t%u+I5x zwz(a-`@?%x)n&1Xsv5RRYVCBUrv@pGAN(`ZQ^!0wcEcbw_#VXms2y^XHumK~dGONU zdvxq6YEz?)+P{mAeTj}a`KS7CBfkJ$(mzb)#g7M%(D(gu@ZunRbTs?x;G~9V=rcCu8-URU~`dPNY`SkZgRBx>A+cdpu?Y~Tae~tPNtNYf$JGIv& zeC<8l|Dt~`NB{Pdga2f*s(%Of=-@uW{da%c#MCYQ+xz-2Qm+W)d*8=BKKLUM{u_JB z(vK4X?WqR0ckn&32U*G?zI$A+!(09O>?zUyO;NIE)#p~@ck&Ew9K6gg(D!o!QHY~| z<#zH8e&N^z|2351GyN9^OM~x1{ImbD*O<+BFWr+LfDYxq(EmGXA5)8`{|S07yMyQG z=NPG!1C2)QbPNQ-7d7D>7{b9Jx!iH%LZ6TlEou?>KS7NBR~N5N_h0?O)mPK+c3Hna z_{HD{T$~%{ASNi(IswFkZU@AkizUc8wd=y3ZI_wlAh?bb5X(Km*zk%KF?LwyvlDrO*liY_lCa7}-W*WFGv2^lZtPYYDc172(GkIF)+^alPaO-QUhB8X zOVoG#4?6$*`yU;k?4zFFp9b#{LY#*i!C0ur$U=dxqiu_-dBRI}0g@t29MNwMI|2x7 zF#d|5N%s z=)MT()2`U}2L8(@+4cthE9_iS8=j*!yn%o6Kbal)hrw@z7$}l-i-s|ANY5`tx&4KG3uHJ}M(K{J%d7_UXT$$L#o*sh+rL@Gxg!F?zTg z4%UZiur5Qtu0u=L7>;U%1=_|zjzC{SRzx~%fUBgZinZEM`Y+$PxVYiYjrjRTs6GB? z{!x0nPvy`tsC6W2)`hVKAq?QoItiLFEp}|s&@zs8IJYq_6|Uxa__lDadDfBmQj}pIr(V^+lc0<1fg87GgwULBjXE zWAHrse(&He#rdAr|I6Uj!N1XElp(JMtx}}zpf`}kAuy`#B-xhYH)dOYV=dbygt$xpAG9;{OVS_g;eQRe*}?C0KSmw# z6!m5P#6M5RzTf|%?%!~1SO15Dj}5+0|LtJ#(bs;dowe5nPvF?i{kx7aIdC79Pamhc z$;mGbp6UM@{_U|B`+pw1Joq;CcY4RZG58mV5A~m5w(r2r^MkkZzd>1gJ<}8PF3Q}E z)ZgU!dp>~QhkoYU>ECg3_WsBF*P+jT4IO)S@Ga`cf3tsae>o0o^(pHA+{3?2rELZC z+PrnSYe3Cz(1FK-UJ1{wcr1{NF{8L8HDe8my!*e}n7Ctdefr(}%V+F{@cILMPU z{B1!Q93wx&wRoO?l&Hdf7~?GZi_x}tjDLu%{WSJ*zGq3bWxqVvWI`9>5Dl}X*79aB2L~XI5#)& zd;EyEksSXJX90aF;F&`%7%NW22)I~TM8nF7`yc((h2mR2zU5v%?pavy+`R$*{Wto@ zNMitbAwSE#z#TBtZ_JsncmUKJ9R6%8L49F2JNw6edlftPY<-?2uMFPFKS}p|ZU1rd zYUma^_8c9%9mf{?-(zC~H}#F*ETrhzCh8~u1>g5+`o1^d`?mKV)c)<0(jAM;n->YKWSsH(C>1sV4`EY`oGaW?_v6P--6#|Prs{;eUAQ(xAR}3 zV`ubxqH$eC-_n=_oY#>YMK3ME|6 z68sV5|C7Mu(d#rUn3b<)JR#+pII;7swep?+=#52v-e`fmhu#Ep_L0T82 zV(U%yC#_Ab)+TZb{A{7Tri+)R=UEZvx%=2(`KKo!ZcfMV;UA;p3&Zh`KFZ$DN9b8s zg!SA#5gV2H~KVPhe}&6%AZ!<@u%jgCf*@4EdiH_y@Tdcj#p71*h7L2^yyz zJQxzx8?ZUXfWfIac9vTl%Uuh0QbI9eSH>y=84AcFh>uR#W!RxZWM3#BIJ?tmH zECdCauDYGh<3+wpPqcxaW0v7Em|0%_cu5Oy&r z5wH&h1HExxuo;16mc==EBiud2T-Ol<4eCfHY(whk5&D4|#_^2UjJxY)KI!1SVmynm zQw(UzbG ze|Yuk!~1Lf&;RdGG8y_Q{J>lpJ#bgyx{c^CCq@@fhtJD)%xlwi?a)08Lmh#gp_XZ2 z2VLG81|AAOZfB$dFoj&l@6fD(JZV6jQsAj%1;l(q%UyFviJ$NEKbOlr@PX~$w0m7P zhu%Sc7XFubF)2F(X>x7e$PhrUd%ET=aW=2)|dgkNZFP5B^K| zd=zCSG-hn$@8_&sgv$e7BXkA!Qs_5yQ+Pj8IV{lcS~QdZctwvFLl3CkCKa)c+u>SI zmZ+0g?8z7)>q>YcBrjH>BOq}6Xxpp;I_NG4<*Mxj3&nWYfM11^V5dhTtU|5HE>>%j zBT&c&6m~n%!-T#7jsc1(3EbI)u(Hci%|kc2QFA9?ziSEH?`;7^>3=kp_VfM={6YD% za?tOueYWPm;MlT1l_q;q$pHCmx?0Knx?c^Z(?M=9Gt;mBI#a1+PQv{#0Nw}G#nFZH zP&tzZ7CyJOw;pY8r8Mj<;sijG9y}O!MMPBumi1G89a!!<{KE#6uHUiJrxH>@F9D`u zlD;R2Il&}{@~5j$4i_EZW?3Sep~)7>Ujsp}0D}vj{y)`YvHad*I99`lb^bN@=_iRg z`A$BPEA{8<3F7yYc!NA$j{(0*tln=n;$%f;?8P%v!}$Zw#KrW?c(}tXuMK6dP9!71 zDS3via0r}*R=W)&8D6XiH6gCtlE-8=p)g(4s)!H^%Q)UPNo}HGzC#y>O+rOn9Zee( z4Y$xp_!T-|zcHcC@Gbsg`Pid>{3E~C9t}LO^y!}wUwot*;(zvhS>0-F~+tSlsZJzicQ59kJ-GXZ2ss$}X4A7V^@& zU8m=?O82QmA5C!oz~s;namAu`6*!y8VaHC-)37Ucbdj4dEQ}bn26+ zD#!fGz`+NcE769kc8vbzPOeJNz7c^3jL^{lxC98!>PiCkxeB3JKu_f8d#6C^H5))O z#0??!i~yuJ3EmdOS$XKanc-`VdXdoMtRy2ujq=92BB?V(FG0n_$c`i}|4 z*!cd_>tlP)R~LCQ$1keq?-^@fQylm7e|pV0**&$p>K81AV$Sc+6%7`_U)?>`+^NdC zoq@o1Q*dto);q#D6i!IL0A3JOG6VSp&~!uz8a!m0 zU~@da{lw$VnnZp66?w$RCO3FbU6)^LGfM$`EMSkP(_60IXr%J_t7>TD)mzf(xIGZF z2PCs?ZGPRU-VKxS0%;cFe5L;+Kig0)kIZe~mXq9WpWAH>HD(Kq4e>KmsSuT2rN)`@ z4UNKVBV@&wrTo_IbCJuH#w<@JM@l3RASLEYjnRGmJ+*Plz;h5{a1p&YDlMqMiH8tV z1n_jtYPX>E^dgmN`e?@&SY8VI(o}Rsm`3u6U<&qRk(<;Z0x#qmbnKZ~fmz1+ZH{aIAqV4vBTFs04wJ zhD~Dy*NNwUf6t-63q(VK{x1tH&)x_2wx;{P42)#%JoLfo1J|rxb=KoHv}e?!xJ4boxSW#m*7V5f$!2Y9Tx&8mP@byc^#Z z&Z9Q^4rxf%cz_!$XbH>6>$n5*6A&hM+~yQGUyRhPGCo_wQ2&!Y_fHb zPT&gj{3hr8jF(?^-hs=n-80s*@{xC(AI!TWx*u-exEM-{`djY0;f8k~I^(?y(^vPO znUA{9`tG+%|5)BIj`J8BjPVx!qtt^{xest%YDN|r%?iWg=n11{ryX!dmV3q$J~SGZ zd+8uN?4^y|%^;4%rDi(mpq8|SA&Z$A$Ha)*Hi=j)%TeKx1%wTk#?PKL(Wwefk2e?_ z#UkEF2~%L5bdVlHk2e;FF62TIGqeoJ9=K;DMZ!Y|v3{@5ILxkVxK~Jr<(06&nYUbc zT79FHzs*%TV{Y43_kaKXwZ^E?Vs)4e0YhnabBtHqr*^holOO5-g`XKe=j_({^>0-8 z;Lo?-ZF0LrsKG(m>1#v!&PdAtxamoNF!!LP?B z=T4j2WQB8=q4$SSe+9UuZ(~^8y^_Z2AutAzo;fFgd2iO*7%Ld6DLMcmr(G0#Zlh7bo>H`QmHu8naMThUDtTvuKK4?H=vxNXRF5DtRa#Ea$mmE zNn4kflIgr@NV(mPYTS%jsaCKz;IpgEfl zxPmcj$aeyE-@eRR@xW?z-9mHH#5WPT&nPOgD;iBlHR!(mqb#OU8Ehgy<^P47;XccC zJs?%3T5p^snWj{%l!eHE)eazzU{_edKvpZgf}L~0m8gX~)43;ZS**GCiSMLTgumDEUt>-5ROa-0R$OK9>^b z#DhDosGqjEBt|n6V~JB{qor^;?G9%THD{$Y(%j;f^Zjzg9SX#~x=Sy4{1)?6IbYyI zF(q0wtd~RXkX2{A^8Iry-Bwor4*HLtw>Yrg1CBQ~iqtwjD`HP*z@P*Kn$xXyq`8j* zc+R{Ik*gt0YNZ+r5Yns|paSWRU1+k6@w;20Gq}SMjo{E}1Dl)i^HKTDj5?6yn2FOA zo5l?(-NPGP4rTO%e$hoD>uQrF1268GYRvzNFN^Mob5FMaBDpHv^woE*Sv9$S4qOgS zrFZBL{G*(ki*k8xkA}&e)(qWBCu+tp(h!rofC@_SErau`h=42)h$7 z9B2t~ooF12YgRl4t?^x^sy4QHXAA%6&{d#^b|4bWec)h(*xc#zD_kn64^ zGqZ&3Y+d<=g~iLRY&EaEY_Ym={~1E?VCaS$f`@{o_>J)!Zb;lf_Xuqf@-5EJt=43M z)uJ8uIV+G88jjbX4+14t#9{{irQ^45DJ57S1mI zqSq(DG0lT%V+EL8fKFwuX%-qQaLYB~6o<~}kMih@HtJcg0!@sKX6uJ$g}5dVC@BT16WamVB23ONws@rbxZo!{c{3+s334Vg%lu1(szm&tDdHh*`pIthBT;;cO zTVW_6ll86iR} z-h4y~yCjo^->)|Xq@Wymk6dXb#Dv%VWdC>M6+U40TP2gBk_a^?Ql8LAv|{ML%j1`8 zVY+9dgFL^H-hnc(Fd&YofWCC!aKK&uaEI- z!a+IlKKm2zDlLulANGdi;(R0c&;28rW@u{1?US2Nv5nqXPiHtyj=w^FMCEuA?yF9# z*K^yK+X=O6M>r0<2!~f0;>6E0ocItcr3d1H5Nf&*^bkV|Dg%b%;(I8b{<$ zytg3zc%zc35MYKhYQ1OJ4$XiZe)J7PQYh{sdcD!4mvs>`F*Tn&m5*2*)|7XQd_?Kr zm9$^>Yu;(In>Ngzar)17GZAW&EV#Tun9s;yjy%KvE4P_j#{80*NgFdt8$=cnE4@w3 z4p^_Y*Hn5_OySony)t{0t!Tj|(%u4iO1%ZF{%jZ2_JY`pGu0ojEQJ<)RBVljT!a3B zF?7Dis-W=3W*AzWja_hf*@kOmgI_$Weq?C z`T*5$idqE|^N70S>V(GV@3Pd5j5Nm?-(0*f&cJz+$E^em$!W&d&{hCbfpv5H(eT34 zbo`lSIB0gmGuJ*aC(XMeqk)h=u-Cu1wN|W76gFNZhg>9HnAYZ} zkdo%+)?6a35$6{89T$#PEU~aZpcl4pZ0-*yXSbB>YGQ{V3-LrUJ~819nY@i!HIg55 z$yQycG(V-^dE5`?={YoWUT%kG#}Bh$6%AMhOIP(rJ1!q$fO<7k9UMcKo&{aK5=3G- z%=UJi9(w$AkYZs*x#r+8{Ag-{s|}vN?Yp<$cHrP`|D?0WCd$B`tK%KBp9N_gQoAo`kLK#7(vYG}lWH1_x zNkxPGpz=r1aGeyd$gIyAJt-0sBzs1+U1}Yw{^GnfGO~{m+hP#rPzVUGfDpmLxk9#X*z2 zM$d$k3$2_9jStw!afrHL*A51@eqcoyH8KoH{D#crfJ-AHsDT~kjNC|iJSN=GQKMFZ z77Q3341j@q?Z$)k@~xiHv)3ND>2{;HoY+-W_tE1Ke3o3k`hq>9M-C=tHk7~hL<;)) zsLXkgyvV6sSK|k_GXbN(K8q~#1o@V32^37V22}$R2CBOy>RqxV1A03QWZr@$cHpH?TiFK zUnUU%ne)dPVTMrPCqg_71yCJJookaTl3nAR zFrBkGxpUgH#Zx0Ms?%YUVRY3wrp;@%UlNQIjL~q(c=?4>mz-*dAa?aDyiE7kL$%L^ zT-OXMmtgw~K`y8}g0fO4AS-!loghSos2;Md5cGnxV4yw(sGTGPA)ID@L^wnzZ~g24EGI2vTL1qzUC!c&cjFoJQ-AQpip{du5aG4?zDW1546HMV1{S09wN^SV`YWe) zt(a7y#vBX0IFI%mY_~tT&@`QMx`I|z(1fA8c3SG_W9S@HBbNFB zbho=EfBFPcqYQ@aAkx&-q74A?d;-@_RPd4)y`yK&ZQJd0Ns;O4v>GrAf;}E=j4wt5 zzL?WQNOStab0*H&_U%&5KQkX2pU8R_?O{cgx3y~TiOBgttQPZwY|0Kw{3U2Njd0g% zT?Rr8NZ+WP&@}{y)ql`(kgXw!S&Y$mQJ+yW9raAU>ljQh-DHKW0u}$5ZPG*WfE{4d zbrN()D6V!48YY53mf$pt%JC4p!s6&qO>M-ON>r$^=TTxrlfWy@5dM-g&c5}cdsAEL z<5i#JnbO()`AFi_soH!%ah4Jjn>G^LfxG?Be2qMCQElJ4YA|yD$n1O}{QTrO^J{lE z;_Fvk)c=9|R%SPr$O{Am z2Izh$>$8ecaf6Y`Vvjn1i@fk9-X;3O&Xz7>uzH(f#OHFFtb{*w&r`h55sbUWBD*}P zfZrwx=aO&r-=uHls-aWPh);R4>4{`R|10uA-9)75S=SDxT7{P72SXdW#J`7M%~iRd zusZ-~02*2tz3lqbu%!tap&&p~QoAAsNJKY)b0X=zFA2*s`no8I74l$=(>{zBhJN6% zc0Z-I_2QC6Z=lO=L{q$NtPC-K6g`l>Cz*+mtn?K2NU!0qO3NJ;0x&Mj?}Dk|8}D!h zbg8Kwnt~voRnEey`yjicr8)fy3q4`HLOGr)i}HSV&3!!W7A5?90_yGw)A{DZe@{Y* z$oS-jhR)gJR`U8=KnR;a%C7{)m7(_&6~cH?p?NZ2YPw;EM3wkaL$1U$>#02X`$pCSlU zApcWb%S#z0MptJgiZ^78RkYQi|E_>-eub)rmmUj%L=6IHH?a1YO^G4-Q%9czP20;_vSy+QR(L-p|=dmYjJwHI!fTpwRMA74MIb0h*6UHiuq zNbM^ZUYor3!*?7`yfraDPk$V~FvYhyTw`|zK{dcqX)xFW_p;L4+1N&*+Q zM_}iaA%6kGVico6X@t3qJC>KM@rbF|k*M!0RXSE_dC7nS^z5|bBIw+npXs2?u=vU0 zp^IX$GVtWM1Qd%YSH~yYTZ<$p}auhGW;FnE^k*9d+8 zU-)M^nV!-*Fb<)GUu70x1S^ruj7+uX&k7bhQZ4o3E_kRxv=Zw6K-sTHp{*TpntRveS($jAfgo4U?T(!zXLeC z05I)>mNg}Rx#5yuq!-?_u{eLq73byL0>A1_d*Af7v^;U1JG^1rSa^#+E}F^4NJ`ZG z+of+K^XuMu{gy($FdKKCzU8tj$fO)PG;NnF{Ri$0#A^xvmUpE$&r|z?t|h;ft_@&# zKgl6EgqBJL8$w^}O|U0p>QZ>3M6adSvcfusQFkyd+tZa^OcMKe=A% z1qGCaiT^LDp`GB4OvB*lIE13nY0x1u4%lIcV^-MIN*IPt&eMTDATKU$F>t@U4%N|qgSMMr~ z@{7T2CK!wo!{k|KmHV#@Yp#f6cHa&UaX3xV+b=rv-ilV^d^-OnF#|QyqEWbkyPM&U zz&Z)%(7SwtRzLAH_Y~gc5`T!UpTq?@g?sOcMch-^IhCnVjIhZD{R%8_NN=|z`K@hO z?o8S#G>{YYU?#B4y{!y8_UK0}xea=1>}Y@<0z1TzHG)fz*iJTQAjJG#MN79p9iCOx zB0wt!%q*$-(J~gY?xx_-c|Csq(47a3dyNO*{h^Bu5&gv+SbWcC6J91vMG+RjU{p}X=AfG7AmZHyCk)H%)ox+8=21J~PR!YVQ z;N6e}3)X;v(XEArsFjkUb4_7+RHs5s6SV@6(K$B7T&1V7M-_&#OHC6N?E!V`2L6_! z)Ujo#YEg4&mz2ORiB!NYsUs&?M-IUWOF*;->=UogUHaQ5N(=kh5?%!gB8ud1nJdSw z6#FW)Qg$Rq#OaMZzvrwEuKMoW&|o>qRC()^KKX%*rhfY2YfrLRkY8;BZ>IL#9QS7? z`=Op`1Q!Rwv9lVJOC16pvlCFRUFikc%Zl3dpe^GGfX-fp9g==#Co-pNlh9s*8U5|oiyJcJ{Hh5^*}0E?!mkH!!bsKwY? zEXT_n7Ahx=8X}re!=S63jCW8|$*%-4wevj&vnS>Y$FEO@gVFHLRLP+~;+cu2u1*A_ zk;s}Im8pnF4#&=Lgno2EAe!@3B4_U|Mn*?M-PT;nR66qtC3?mgt*}~(pLXQNaxxlA z$SqF8`rb|NbcD-rSF?Kl9?!07L`4GATaMcG_ii2~I;Y&m@GY)Qte_SgShB`ex_O>1`4rWO7R5k4GcgNxx zsuyMyIj%0O%aYZ#M6~(G>bmNpY>2fU<4ulmb}Ca`os%uHE?w)dYedatoY<68HtwCo z*s~R5&sHkC_HgYWc08HzOlZguhy&p~+A;Z-A^j7CB()2nE5JeX`j(OSQ-r&9{=;FarHy?~OYT9yxMw=MCPM zhP@)!^Ifh2(#3EbbR7x+p)kLfHFCGnW1od8Z7v%z7kiG9!EZ;-WQ6c`9qkn8o)j3< z8=)IQuqd8@V78DI9agniUmX5O%Q_RyPFUGkx9T1h#qd&d_pUb}d9;Fp)u zO_O0iFSY2)`&Z5GYX;9fHC(L*sWA`;%KKT47Gz2V3#~e8 zLsgOW4*CQnh{>X7?het}PF6a4-EvnyiIB&fCRD_uy@JS9Ao+vdH)MP2V0EzsSeQu* z5DX@|CJ#B>iN++D_U$pLhl?9tnGK6`nTuZwybO$r#sK*|O$T~@HnYV0RvwP>n z>d|K!P)QE)D~G*E8Cbs)sS$h{w;S{# z!Gj^or6DuyMe13^V8+hc2ShwlBKA{fp@E_!L4ASRm5>Qfg2-naUGq55D5O+qw}ILN z8{v_iuDCS(WMeiCDNRTW7cYS8Ytceq#Ij<-gI% z1ikpb9E^}Z(Q`BfToDd9Gd`_X00TD;VC-yRF#|-lgqCGUtx>4})fn`VC>408f^_85 zi1bs_xW?6XP3%li0Wwj6N7Q=hI6(i6N6kXUk>I zT)$~7Z1I<4_s%qk!4%2mLbj@n?v*_%*K_G`E*Fm!qI+E4{GV6tnv6SzWMq6SS)I8l zl6D!0n~+#J;jtNr-*;WAmW&0l{!twKo`0NQqO$8K*G+?O9)^~D2o-W+ps7JukJn0H z5s{lmwB9O07}7;40k9VWC~;;p^14IDEWkj?{AxFl!xC|Y2`VV5nEt`zPPr`;C~q^n7PDIZFZ&*+*3 z-eGrJCB>Jlq}0uJo3p>BI>Gy<9DXGgNjPKU>2vq|v-g>YV*%M0NF}F=Q)@G)md1W| zcMq|(sqA|%^%-;Am0UYsfy@)eVlloL2Y-;SKv$^?d%19V5#uP2%j;mvi*;*r4hT$g z*g3+P=xRb(4B+3}GK2@gSIz*pS;vv3r_RbeXZJ}MRURh+v(ZTeP2Rhi5||~;cS*e8 z>x|`MnUbsVuhSOu72z>C<^RgdE|^ z)6bGDuRUg+Yx)}B=|3k)&bit8KiYi`iC&$#O&_R#>V!5n;xhSMA*amiBr$Z)M{IE` zl_XAk!df67>h-Vl;qw!E+xW68>k?TlQIp@sf0b*3Wrf6CsLWM%_}!4+3}b~bJjE+A z2Ui5STH{B1G3Lj|M2JofeRE)6ZO|z`WN`as4=X!U0~+`(b;lp^czv=|Y&3`VKR~e< zD!ib$vx=Y~liZ2bIYN!Kp%IfK>NPs;R;$q}=ymS*-}xUw{u6g{11X-3SA+<$`tl)< z;`3WQ`oA;lMVBM&kNkZg+K9MMFK#cTsJltv9wK?{?BJQsLfIAGkcC+Qx!dF>@@lnr;C zo*NHYEpjuREILSRaw66oDW#jTztrZ9gqZZfMEs1^ zhpwJD^`47(*}QQ6-fHRW!)q6Ij*_N-%##S_^ZmD+a^so{_f<$dAq(HT?XsV3oZCDd zkCxBRFS32YIQ$y!8J4we^EC*~L2+!o(w?YwR#}&qTC3_Ns>006kOC{!py;?=rXK!U zbPK$m<*pa=L0+J;n)Ev8j!ZCe9IuGxbewv_N<2)*Wi0?u(J160{tSuFQTid-QTUK7 z5Ms|mvcwAr&;AxzVI75TRnMT0){%ZO3l*3=RIrai`k(8#{P40vA01_+D2D&9h`m=U zIXq!+_+}{o--Yl$a^1-ObYf$CN4B`BKI$v578D-QEpAIo1+s;ZCQWiSfqJ+Yn{=Rk2IR(fV1Mr&Gg^4?us=q zukzgHiy9-REf#~`uO?>J70w>VxygeWx_4cwt?p+zLe{AntAH=!!b}5{$sVH0%R|M5 zy|}`<)I^ZWqzcW4ZAoRorgOkZ(lugLnbFEHPC-Ze11vs-kgSmyt1I^e85?pCXfTuG z?UV$>V|vu#qtcSmv8D$ z!fqY)I(*jU-bfZ7j%e*e93+@K1=liIh$?g9K-7y4);v@I-RR3=M?Te=x^N0f*hIuM z>SUpbUrbViyE;N;ij}ja;8mSOy$~>V7<3t+-WavshRjM*6x}<-IH6 z6NboX)(DYf$v0h)-=N!@+glFpbjyA@w|Xvo_RY;$DHjPUWP52=_L(Nr-YoA^wpK2> zEgugrY`9`^)67UTTUVyyF?L^W=R?$<9_8LhZ6I*Y9OmV&BZ`d&K5*eHY%SDEJ48J& zDlMfD!aV|lWk_5qhYSuX0sIJd00sF8ALAdlmVpzw*V}%gDp^=AuJMUWN$kFOF*>0 z&(xTm&gEPIkHxxn!{PN`D9p@_>dwykH(G7d)@|v$v9MTgZ781>b4dl>A{B%2(lxoc zs=Be_n6()tyANyPe1p#l@1i=Oz?HZ&xo#Y;L*BgH@fTGUpMlK?@+2<;lQo$7$mrpy z_1uUj1Em*GT)}nnAoXR19&mRW(vnsm7E&6(R~HZFI(Svt=s z+QZQx6@h6C@1~RVAzINk9@Qd%y+MZtf-ZE@QADh2OVSc=j^|*KHUYyz#JCXk()Mdz8C1))eU*+)x7@aguuYg9 z$YWbZlwQuLmeuqxql|~ybOafr`(2ychX>QGU|*IT21#!7X`!ZJCmNdcWW{1JMoD_8 zxa(!Yt9QKV>bqkL`~QCD=o&ec@U%kXdumsHx&L_F;wweB1~&Zh@O!^`TluP+E?Q@k z%<{<8)@_OJe0$;3g){ce{H}4)WjL=_dBBZ=KGr?jyr`INdn+9)5Z0r+38o%axzUM* z9m`PClF*VGV9q5#;tGB?F{{gq6Z1l)7iS0#i+I_5_!H+tr;{C$)RlSi^J@>Cc1v^b z+czX9qHdpk&b@i!itArXW#WrQcllGN9C+W^qnGTRHrWhPtZ+zr$6NQ!ZMo+DWOF7D za>Yk&tZRfgSLDv;x-lLxGCF>0#F|um3JC}omTr>v2=My>cb~<9RbLh?<+Ffh_M!{o zrKSm;HFU3(AZ|)+)3!wC6oV{+5Z0Kau@4StQ5`xkKpN68EI4_*jXgqm7rjTG)xMS_ zj<_fEL8p1jx7ssVXu&~={dI+^`KL1A+-}4Pp zR-4637h$`8L@I^F*2HN0Y-sC1jCK%)c@*KTgaag^Bqy2%&?5)8dy{ z|93)$xkXQ&8@*YEzd1LY8hJDp$T@P(QL{N@&6=wuD4J`|ydxKg9||1ut7MhMK2{pI zv*CiPY*vYFa?2LtD~&nKf9H%ja*@yzY;MuPE0|9zbDz^XsV%i$kp)4D*g#!`2%WnE zNH1=Nm*GaR7q?%lPxK?!^CGM0fJj_~Ws$_lFrL|tAUXlvc8J+Qln%1!ImCw;I^s~c zC<1@71#W4Cl`eMD5VuPr=5dk7YJ;|0dRV7-Mq+WSw330O91i*aM@on{@A>cZKc9H? ze@gmjwbmlmS}XMA-=I}uuzG{82UrzsY#BW^Ou9kzGgHxub@3vE5ixTS)D0FP7=h^0 z$kLjSp@s8r4719hqSO;?o&?UBV?ZOB0*EhT*lyUKYJI zveICmIib(j!PD=F@sk#LWcK_+x7>E%d}`5c$pjNN0mCVoExy*;BZm$iStCc3NGlb& z#UHAMeM$uJ$QophUve3^Q%=P3aT&;d{Jy!tZ^+H$e^W`j6Y*_BmgRP!((&5C)$SMo z^)Q1COaTXin+CAsFW}ekcRC@C)q)406A7@Rh4Hov9KW^!khsCF!O2YUQ5}|(8jLls zf^YV*s<4(jDqI+~7+@HZ~ z1C@{QAIHwoYqZKUsJH_PgRT{9a~*xA12s6OGl7Nxn>AxWD@DVbg@~R}YlU?!cchrA zf?o$&xPXT>m0~lj6W1Ybic5^l zOvg)p8}A!0oqFK#j>KpxTsw7BGUolZU}~v>nfXv^LJ1un$=r1C(s#-VDZVoO$QP1+ z?5X=L{~79c1gYo2*w>so#90f#)*-1u#}mMuD2EnxkFy!)NFl`Uw8wD`}= z+?Of6b-NHhUhRxYr6y|tdCMMzXEZnPf-kdrEK-q=?*!;bL3cFZYYB{nv) z(W4i_3}Gl{#spXjo4ha&3N?=@omPawbtKCQVFM8qfw2{@Kw42F`8bI&B3M=$I1EH3b z0Nd}NFCXW1KB1>b>$+g^23A)LrB1_+9M;br<@tO4D}6-`L1ztn*T?7A#@D+7X8wpX zxi~sC=HMNxrz-O)iLCxzQR^%kxz-%cmgVDtwcuzf)YtQ(tK3jpGgIS{ic0V9_Xi`I z?kjVB4Q;B(juNm#&=p*1K&yZnfcjBMqffwE1_{ieISKN}LA9%wRxsu`%xj|U=Rr&f zNJ&WtzkDG}Ns)3pRED+X%&)>~2k9>&F7YJjEAkbW0Ldvvy-5gSmmCowbIgq^?C`!7yW^ zRh=f{aj9YSM0M0V@*3Gd)}37O8}|JAz)d$E%1D!$wgImwkSxoL|eI^3aBZs;B#x*UJ+Z0?85day~$VsG5Y$uI>f{k-s9FI_;|1RNXQQ_854e+>V5D?Q{8$V3n{}p`yh1>(& z_tEZtSx8ZN)#Sd(b;IO1mM3zyIjD+HRNnUy=2( zG2SVhvgaG$*mH`||3$%UJ9xplHx6+@x6*yd2w%eWzlz((Jr10+bRQq1XKaSMlfyz8 z=;4H_Jc)5gH7cEo75Z?N#wra{u`^;_M&u9A(awY)`*SAHS#3wvUL0!_5Y{6xLD$17 z`8gGg**HW_xDF>__j|h`AzOBP%+>Ksj6;^bt&X=xT-I@1EZob2>bhkQ^)|X4jp1 zK-?TvZb~R&yK_@LadRT;%C4F(xzgc)%m*zYdw{z0hOd3_1K&~{p5Tk)Gm)|Pyw{y< z$g)3E^KX9RbOg_|O4m;0d!m7B>a{aYu45RY=9TBd#dOVk+L=#qKLGB&!F}XKd|wID zwVaFIf#1_R(BNjFrr881-$yl82_B3Y*@Iq1L+`;Dz7Jq3Fto|h*Q3WVaKZmd&6=Y0 zGNd5PH-`{dZmOz8we7|dEkLO+(@zSb`5OehS3$%Y+$OyxirQ_eh}{xr*e#O~5%w>4 zR?**XQ0FE9a8(6ttK~Yg;LjB%=@6F!4;OJr0KQVhB;AR)ahTK_LdQi2-6IyO&@e6) zw}-`tGYWZ2EIj63R1c4YlQ9E50_C8h@?(>c3pOXFR^5Jm|MM+n@>zAJnThY?Z}g}7 zmtT^u?M#j+eyfW&+RlCX$#g_7%ce-{F=Dd&cTem(TQ-E#Vfv5%Qb zJ9f0=bHLT;`Vc| zf7_!X*6Ca69?XKI_twzX1*74wmT?;De*OwJG(u{)?%D#EbqfE7lh*PjrPcpTJ)x*% zTRrnqrv68|v^uv`$>jM5|7sOqcp)7&$g(k%CcngG)7gs4mVLywh z41^2m`i^j4)G#J&!@OMA>Ii`?nuQ~rG$N)+GK)<(5Io7NJ)PH1(3t|`OLC>>)krz9Xwb(IHyA@f+=1eyFb_qL-C4fyVYe^4q zmGV+s2jR6S6<|h_lf+iA6EP-pa`m1O1daFgBAxtwa&aDm&Nn$|DUcB?qj;ptfqf^U}705G#` zzs$CR3PeoUp9qnQE{EPHSD;I&U~P;NV=$E*lQJ@cMr1T*kX!1CXcUSzGyXX}mfz^9 z*2SL2AalMudKveD>+n!blfbA4KmebNf$L3Ba~K*YvabWkCGN@VCY2UF$MiJ!pACie z0ev{sf3}uRHpz~bvTu5to?7kv_QSCJ!A-4Vv9&2E>!NU?L)4R?r<|^%AMrvFpIp%7 z1;3xJUxKdSz04j4AuCJMS8X;ci~BJK(vn26Y{r!H4h+t{NiG zbW|fs%N&PjWDKEviY_5M=o#4gG^^OElRFA%Gq4g_wBLGjOqU6B=-fel?i@Ctb?kIm z?Tqa}V*kRVVwX-9Y_^f{wjg!NRq#>O2wS`7h-{u;9&jzd26V;y=yp=l;NT6||oNwPD9?*X|F3#GQeAeOj$I%E(Ko2we}$yvUY$ zBh^DQU|@`n(WN{??X8I^Gj;&~>8zm|ZVTOob1Lo0qn#$TD4N)N(O#=|Jan-)t6fiI z*m}_3pmrl3?Dc{AxTrf2z>7vg-5O^t>FJc|anI7td8Jzl4!DQSm zb^VFz4yMtdW-Vh9aioMqNunWz}|gxF~fOHl4~U7O0O*C9*&bMX!>@@cN3h zR+3Ia_pCJ|v>H$*OW%0{?x%0^M8kyc>v4xETNZ@FF4>WdPVC4u{c`2!ha$CfqSQT!^4 z?UhwKqdLptmdj!Zxxe@V6FQ;H3yXa@5xZ>5qD2?oxvFBec=hF4yfCqL_0nU_BvlT& zWb?75)oUjT@mg8$wU{|p+x=U9FSX(8V8e&C=#I#+L(9~Rw=5&cfO)y?sbFKE=P00N z0Gf)M(KQySDQ|@a&6sDoYelQY3RII|cep)6)VYVaKsc2yqmN8IK3BImsv_K_)JZ|B zjR?3h)<8^aatopj-(Y1yT1W#fP7Mt~t&NcGmrir3TTw!ScRP}6s~fgh{I%5lML{Lx z3>nAHZk_*@^jOU&7ALBS`>s9ozPK;@*35_HQYlngSm)2>+-Xv+_hEgUZCE~b9b@YZLsn}+N}@+a4P^hyREBf07qTHkVb7+sI;R;J9!o^ z&SOe7FJoPHH<};jTH8q#OboYHMg)u#Xv$fjw??ma-IyA3L*QRvX!o5Ygo8YJt<2^m zy@tYCIBr%Pf0-wlI@tk=tp7=BvI+DIuGnn+TCl%RfP{w{jJ&shI2(MurPe=ulI?&t zf{2y_r^yihB`QP4xQ8@MA9JneWfrl?MOO;yt27h29ixi^PwOa4x^-9*u1?L?9`&2@ zRLv=%=EkAYpyQ;Am{fMDZ*9H9yj9`pk2Eg=kE_M$T7Vpe2j5i4E<<+z&K6t z`PAUIbUl&3LDtT);6)o_D;d83e8z8p?=MsN_(^@Z^!0;`H{egOKWHzb|GkUr zCSiX@>Hg?JB=~DRofbUzQGZZf$|vruN(PdcctZ1|fHcJ+JW0n9 z!B7UFmMUF30|a&b?iR*_vJD7+8x2MQODoCiB1YuQ{xOFVBiq8lnEw9DMUhV?j#l$& zv;L@OeAH9Pr$S295VCtD)8*t}l3sfH_>9HY|NOrvMkKpW1XrT8-fijc%2l0(h*HGG z_nSi!#xCfZmHGSWnw{4FTiEzRU!eefzYy*1WT};AR~av`pRI`#9EF%BI-^6;nLyE5 z#A?elJ%nkjwoE7J$qr(HO3;V5A3Qmz+W?7KKp9yO%t%q?r03efj5fUrZP(mi$w`Ge zv46#l0e%8csP(_2nWWa2UdgX6r}`mPNz}oFNeZkh*GzR#GeWU4 z{8n>HL0y1TdZIERGk@ib{$JMK1iZ1Uyc@sgUhVt6+V|CxEZLHEC0myF@pwF*#j|Dh zOfs2CGMNb>Az=~-VM#*%5RwqqlCT9zLrGb}y|UOsfxuUm0HN*EukHse6k0x7mjVq? zS}5^+=Y7w;vOM-o;NRxSV@X$%$M-$&dC$B4e&5@8py)m(_2;=da0$Wmy_#ap72YgF}i`<1+j?jaeJp|d9oK+E(q6$~>g7-m*5 z%q-B)R6N*^hlg#wJDNxT-8w2#U10bmoSO1zh?|?9vlr>k#jl0Kx-R|KGhHP*G0ra1 zCq3E}quLbSs7SrBCRHokS17+R?qeDglw@8}Gj)2h_RNvChhb*{L5~_KQ5iCb?v5iI z>mNWFj^jzNKB(3sYJx-u8ZR;+mb6oTJ?-805+<^y&~BooKM_ zSC*02qlcR2vH}w~Y*OKh-+pB?(XHR4FC@60S8Lmr_5INw|4ii>rJs-?+#OSvyfSQ=%8M|2ydCaZ3GLon~c3%J5cLR@l4u_A^*shEzpMSW2> zv`beJ)Mh}0LIx)-@q)$1vWFQ6d%DwZ4DelmfTu2t8bC7vI(b&lXynQKLsy5RHlNF# zJiP4>zWUX7*N+c3B{9)|*X%cH)9L#Y4sVP&?YZet=Al?Zyq16KH~%H#b7h}>=excV ziqr$au)LK_H|i!23E4t1*?0aun0xt&p+RMn;Rd-s;@W0V0gFxzq*&P8KiKnjM9_u| zJVH0MrATroKvEItDc7=B_GOi4u@R2V&A?P5wBp-&J%WV%HO~M8g0h+qttffc`xFnY zU<#`Yep4g`eiN~<@wtGg#>;rRT_Ts=Q_UpUV2ne<|FM zi7P*P<&|W9v&8j7?XSP{-Cz46`Qe8@@aX&h@Lliu80$y1Yq%#lmg@s&9S}Jd1!LwnVW!(qUabU5X)_nVYwBxJ|1v$ ziW2mf`=bEiM`IC{H-Z3C&|U5gB_uXYO5-X^c*Yx3$g%9Pu0fWh3 zN;-CJ$z)4bL-m1Eci(;L#`Aw)$z+daGQ7M{vPJ@-p^Via21Mz=sE@o3de0ty;^Xma z?z{QOl`p;P8cyH26nS^P^$j*%RJrAH82&VX&BN?KGsB3<%4wnf@RB>_vW_4H;7 zjFS{mJImSuO#_XfUxO$8jyHDAP2VMk!&lBvO`iJBe`UNvAn?@GMCmS(t3y8xdkj5)1|cWXIXu`0g0u`_dne)B6r`H*1*xS~6Ck?jFx*l<f$Qhv$o_INQJ83%BtZ`nUISqud8LMD)ix z9z0pgDJ!w6S~9a7MP?b83}M(j%~H!vEw$Y2rk0zmXT?cx$~oBWj9SYw!<|6pA`N-@ zET)+A#a2rlY%*XdQPTM1N^o>!0l`uO7rr>zoMglNG`7Z6WfsPYsAe-Ct3p_+*>^fs zqQZE8+!qL&BQ}3=R_6JucwU|@`fU+&G<3)qe09|zijyH%)AzCaKtw@4lv@36EFwHv z9PIaa`Ui_o3g)QI;%$+z;L<@TEdv8#+7|`t(g@w#$<8mXIatj zPrEFHB#)(v`9RW5%x0rYiiOJKk&N3He{3&rgA#z%=o7O)8}ga#CY#{k_db^Jx~mh- zP)u|gEoR=C3gio^<4M2Q6Y!HeM-8En(U-lmP>2|XGo@H26%+in+AhDrR;$f>BcUe+ zm(gZ0@b_hX#!$#GdY>TJ4U+I=DB`_g+F|hTs@Z&oSSk}Mo!K7nvL5iClh2WFQ_K7g zcA9~A*ABvhc@V*?V>0Fd4#i|;u`5HQ-Nz7Vp;IOeaNA(60Qtlk(Kj-hZI>JSU=*vk z#Cd}-4~CG^YCHkP%m}&SbfMTn5MsQjIHb1A4Z{mcP^5+q&an~Tq|op`v^254UQlOU z%MyRBIX*I18!h&oON0X!kFCF&J#cz9J+%1R-B;Y`^#+cn8pmtJVzaMw{vAHMy){-E zGZ@TU8(X(;DY%oYN090>+K0>Kg!#+lg#8l2_^tsKV@}xLn-li0<%FgGA35Q*&d4mD z<>rfeCsD1*8DIP-ai1^#<8a_1%{u-#?jx^E1%dT5m|Fd7d?rL<|M{O_EJJ2$TZ(l5 z{UuhkEfS$f#WJw3r7}8le&r!K%icD;Mwd zI6_eX%3H@OkBU^Qte{mBSUIY*-Cf7&@p_Z(?r{v_$47B@1NKK0#&7AlI0?;Lb$a}} zGg&PC_(WAKVA-yPsH{LWl|gq&Qr)Q*jv)4Idj8@q-%}x~@M~LscqeY=KwsQt9b8QJ zr^886Fq({xfS3tXW@33yAo{^$c1OS+gpItmM+4=E|4boC_nN_L&kWXG25YU3d(`7{ z==+o9lMEMr%{!^i$-v#o>v`ZT>4L@pDz34Ps(jct;sbQO8Y>_tsOBXKU9F_QzknKB04R`#o&@GG2@Fk;s;>qj9O;GA(x{Uz zE{5vv20e@DHQ#q;>*bMLERqsz=45~#OLu8%N$o&Ll!Wowfov=n4H)PO*dF|Xu7PX% zNs@k_&l~hUu5k$VpA4>^C+}VT()#VV`a=@y6^MpAq}!=7$N@UT zl!BfPYMb)?vbGDAcwLJ?+TK_aQjtO4A~Ix9oI`Oes{-A40eULqsEPo=nIyB`#~FtO zX-uIH3_`V#3~0c5TStM_YP5cjB4#MT4+8R|;jDi%vs546Xu-&t9s~7|X10Ekl=i>r zO&bl>aav<9)pFZv`4P%-{X(r8Lvx+yM6hV&>gDYaLD!o}8rg$M2 z6|e<;Qa5DtV0yAQWMjn57dxyM?-EAnth=u~uWb!iXeR93zwz#SH$^;^OwjudT&VMI zyzeW_x*YxzU(cf);E?|ZDhEHrC(!e*gGX9rjK4rTUeBzv2Tv&vWNwIz+##$UyvXXo zKyPKDw`_9jsp_^H6WDIZe3`Id+#$@_4eIq_e@i7iYeu2R7y9cx_YY;?Ciz?Hv=47V z8Emaf5i@!A;kmxmKk457!Q8foH4f1_`8Ii$-rEVpFP^wi7wY^+=viIoCZUFwCd_TA z*;bUM+zxTQ<`D}wdex@DV;7S;NIyBw+VgVDYSp*W1&%DqGOVy_YRJ6}487e8K9AZ0 zx8H{ic!(moWH92Kmf8X=dK<=UgEdk5gxTp$>8FF^1KJEqs4Zrc0v-kELcQ?QAsmWi!s7e!M48!6-K^b2uFnfC&pQZX!;vUu_ zcLQKd^fYAm@vMO_r#J8w^g2&U+eDaJ<_Z8|#&!FwbJ!4O2837o8I4QY&hTG@3@CaL zO9tpj27+4mmm!W%U~45vH?>^v36J=m`VU@T79?>dukA5&#Fbi{Tm1`dr(Naq`zA?J z*R|E}Lj*M3%)o9VWqr44_9Q~(FaT_=7jZ({K?1S0nol%=H6L%m&KO*=Q4wlB(q(Es zS}H6hgju&^?EQ0+q`sWDZMu{=+Zh zb8RXF9O61c4kT%4D6@o^-IYiWW6grb*cDAvu#m$IQ{hxNy}YBy>oi5<8FvAk$2z3} zkjXx2v$7&EZH;O6coU_e7uM;^MRlOA4mFt$xk5B*7c_PH?XNGPNI#6HsL#@K;s59Y z?NKYXzl0){-!%70j?FfBsr>ScakE3TLIwKMLsWPcO?a_nRYu{>R29QA!)h?-#<*=j z6K#OuT?@8Pgh-j4+#$UovmMIn4YB~^52@D?`hoHYTrF3-E#81J1pBZiW25&Nv}fV` zJi#YJwfgWy!b1sPEYM9ZvAr76y+JBpU99UQ%r@+L!L9y)N_)L{H^>`z^2kUAaz1qL z9-=a~az*f#vbq(^u60_peLPEOzg~YH&`Q}py)UH`0PjCW#jEmsLSy{OzK z*jqsY3=-7LfSE9lCwbZYP*GHJdM+=eVSh5_pn~2E1%)9Yt{)JrP&*^VtF@b+BnF#h zurAVb@{s7W@Z;CM?A(#nA7{MZecjwh|w;Hb0f(gE*4De8b??O*{KeW?)aeq9Jn#0t}I8+DFA3CN9E zO*c3acDY9gP+7$Ct<){w%GlJcS8(gtC=6|yJ<@4*r4vkdQ<-;3;C>3D7Xm^mK}&IddJM`k3nT?#qw9opu^JW*hneEZHD&%b$BzdI}6c-j%j z`CM|&-Pu0=exKQ`tvii7e@f*8HL~|>_0oR2?%p2aJ&~n0u|O8%*Pvh%awp@o3RHL* zOO{_rH z=&5~d9*On!6vzhdJqh)XllLCz$rLqMErf9U?}yUIeWzc)Ni_CUw;H13UxzW~8iJa8 zLSvCmYI8GQYF&Ua6f*1hL_f{KLkSZVP8c>w4F~ZDsc;4vpU|nC4tHb zW7VLfb*v2vfO!(nA^=J_$&&0tqRIhyT}fh@^mUam=%b_};jt8^Cv?$MV$ekOPgS>` zJwp85T@(%YZ3jOX51TTBu@CsNg`sBQFP&S4#^zv4t*)$XsT-WW$3rR0mI+Vj9kD>Q z)@ZEd&G~0MdEp;%=4&f=Z_o92Y1d8MjpuX@#bMsZKh8~XUty^DdVp$U4e{y-72*iO zw~kb_-axG-u$=)R^LDyrB|hwg902TE>=c{?jApZ2%=n!~ z{;$87bz4^dy{o0q6rCxbDRi><*7V@RFL~-;hpW*{D&S6d z=3#!I^}52EJWuy}g?o&lsHu{H6)Bazx>}~T&~6MTod|Vfr{<7%!7G)A&0Pg(57i?f zM2v^w?G~6VEO=DE9Rr(l8sGuRPL9 ztHVAVa2&>Vr(wW<9A*QKMTy1sl9eus$pPSYJdTNQYQs-26}tnDe29%2FtXT7B}p&x z=|p;vcaL-u$a^nNmcFLP#R~`WpTg6fd~EXZw`@$CuJiaHMKt*=JN7ldMKGb?G6pk^ zfEKBY)H`0yHje`SLpQo-r@r1M6~}a9C+(1;Oy^rx=|gYg7y% zRzyI;Mn$NE+6dG>(DSLtI)Z-x8iGCqyUniWQ>S8|!0C1HeCq3bWb+H<7T3#|JjdMT z^-0DbugUdiDN%Ee9(w4K8OL7PnnGGWAVuwSmHQLzq;u#eUEA)8L4L6;tYHEn`l64T z&`60F&Cyc%?;2mhB4v~#{ncEOhd7D20@oHpqC{XCg*@p8-P1E zA6o>@0gH&eA)M+13}-XJ0*Jq7SdkTvE^Cy(Q`TDT{xiq*)R&%-@=#ZzHe%~}ZY|Hpe}aDg1e}%bzq@eLg_@R& z%3u!WLz>L}y3Fa3#xU;$9DDAzk7AzBUhm}DGT5B`n4B5}nX{Aw%dUVXYH1gca=v$3 zagj|cLTkn)GdP%+!BNF{OEraYGKS@UH>4Y=r0J6^y_CHu$KVQe(^Ov%c_U)z>w0n_ zo|?Qkm5`mN4oz&#Q$Y{>Px&QkUH^t_4+>ZWfuT9@nkEpgd7{p8`UQGY)zvNZEnZf( zSCyT0ZP<$_d#XxlS)B^4C{rGsjf1()ttg(Y+o@I#aa%2AwM7kUtEvu(EA18-POddf z-}B;oHc_i=a#-2q*sy0fw4&~%kF6;v&<}1wsDvS^pJ{*%HQK;?2*h^mMDJny7X6Kh z1t1;^m!>qZE3g9|#?H+E(}vgl-3njG>S!tYwJv!E!bPujMf>?PC#EOPNuu4gJyX15 z`uxY=@s9j>zu#eS`1{B6?|8?@&re@b%xrhrMd{qc^oe|vT-_{w^sz@eq~&#pV$ip( zoSB~g-20yRQlOLwg%YK}m!5dv=jNv~MsQ7Vw5#K1{+++tv9r(Ep$@$Y=FyRPgKmkg!pXm{0g^qSyBejXl}8jv&@ z?u}h=;c%rH)meA1kpER!5bV)F$Z8GKEj3&{bZ6%1RCC@XxaONvM>BUGstyMOzOcm> z>JJExR3wj)|BVO#X0$aMbs9vsOA5!mndSr6wQf3C%Vui_Z)#olKr`cwhb5O=G&oPa zxK!U)IykE50kodkf5CZ>Er3cQ>As4z76T&pndYOYkIK z)3DhLr~vIK&Wc4jF!a%am9fqhmOFXYWSwUbP`?ZS45|fs!ACF*8W{p)K}^*J2XSgz z2V`&uSC%;UxTOqi=La?Zx$zMkjZ%j>WWV6lQC6B!wulH{Ml^nq4b8aOjLSmLg?gjg zm0J(44GHr%8De$081(eC=Q<S^Jn@`qWJ!~9364^!b3ty=~B6`YvTEIh#B zXb4tqC(lON2Uv+KBDV+7Eg7(5zg;KJ<(y7zdq%(Ajya4)mc!^LSbL!Uit44OdAlFo zlztH*8+11%Eg?veYGYl^^cn-~ON(uPAlT|Q?4{Q^Fn!r(_l#v7Y#W@yjEQVPw`KL~ z5%aqP=`Sg^h%_=2>L&X_19i=5Ir;E|P~-XD!*hL8H|p6wB25)Eej0in{D__h$GQJt zQ`I^EdQ@IY#zj{d&|KPeI4H*I>a0#y)2AoyJNtLV>(pV{R#*4iSCj#0^a&bPItvHk zvbq3m(pOfMGy~5o_W~~{1-Tb{fr>5UQ3F)2gR*)!xT0*6mBSurf9cPiY6FFOd`%iyq^QkC_A+}2caZ%7_5x4r=>0o&{vDVd%e`(oS1}f&PvMg zI=Gk$KYWSKVFY~rop5CMl?^yD`|m$Gbb4Kjaj?1j727w5mdQn(uHD0zf|eOOb=TI- znvvs+$9C2(jX6WtIj-fWwsXJfiCO#Bb_T>Zqp%^S@VseP_^zQ+hGd9nN4pU%2L5W2 zg|?%5XuD8V`j;_}TbJ7@G+n72%oWnzfhE3vm{J;)A76*?`z`D(d%2aP0th$oe9;r5r^wA2jFrXO@O6m;tAk+$+H)9i+W4LrY++F(( zVZ+8anSAb2f%5#hdT9SzAhG|gH}r(f2a|3Hn@#3!*gSS%F0fhJ?7G{vV7h>IjfTd; z7x^|~RNuxi$aX`zuBYBRf=Nteft@9Ub1G$Th%SlU0N@B(@|6K^Y}TxRxkAngpod{b zJ!bc@rqfWFJ`Up1tZj+raMq0Rsvr98nxsw=2BgrWR;x;~g|t9^)i<{Kfzcefb=(ul zej{6}kSl!TI=96qM!l<_jKyR5m;Z_!_>*gjQJ8v)<*z>-GXF;!NhBGH^!|zB-Xcb9X3_kHv7lwbsa+JlP0S#m}*VH zdV^W+4I}C1>cnc9I@_o*>QXpoWkwN_U&e8yA(@8j*r1T6dvQQ+=dp7kpJAb6oWa%$ zR9n{CeR_I*kP^fZ2W&>U1%1kGzTQBsDb=V9dC-=$;N4tdrb&7e>*^QNph$d=BJqz> z6=@bm*K1PW>UVpMD48K5RV}}mOKFPrOX6QW!p7-(6>IYPjRtd7A)kN#)A_KZDI2HH zJPDtrx;Dcta35q<{5Ek%LH4Ye-{FKvybmNl#4|P>2Ck(*`eURpM7Q0R?bLlsTUS(@ zA0)p6;UP2B%ni%!Ou1XPuhH-yBg=9DEhGT906emrsp?K>YtK+IH>m|v+@duxQA})TimX@Y&53IPldqJNAQ5J6DNaa9BO7BbwfaE}_nu z)<%2wbrM~@llK}O2E)5>Gq75Kp+bFSp89I%wdrYRu&d>52aZi+gbLU~opK^G=!9~C zTBd5v2_Rg|rNSV!m+Gq*JMaK_x*fxo*;vTRvZ!8Yn&%KFI)N;<1szl9miuhe(rnKuy3$1vVZu1%7@9ziDUH_1G^Wm zj%>u|h+Mt6dw>iwU2{RfmFgPLjlz5#Lbf>)^!_Vajwqgj`)_IuveZBA4Ce-$$nUET zTXhlO{DCqes}UOEMKXFjgHBAJWStFaB-0f^u0n0S#Urym_hvST%+Rc_)pChec43?p z(xh|k*WYNFJd`avy@|*6@@By-n2ct#!6#+bcc?qd*+Y~5`^Y1Nd*X?q(L*9Mp4$yp z!Nd#XzEtp{)^qXD=+Lve?fWp*iD_<@`!gn!w#}EQccs#?dIPC4>_0@K8DS17Jnsy% zjW{ZICZmH>K+l<{8*vhJWd;PbwW`#X)uId9x!OhScP$QJPO)9Xf_x1ErC}Mc8^hE& znUvX-Y*_DkYlpEA682M(&OxrC$be`(qB=7Rf{j)n1>8r^li^vd_kp~if>9H>nNf_B zv_S1>+CVO&cH#{KtB>}YM1G8_;CHC9l9ydV1%rQ?3u$vR%m3S^8h`OjhILEw|Mt{IUrlxY z{nvh-a2u3=!`y}ARZ)I37x393d}%DU1{VMZuLPnXW@MDPS%iCKDeVisjQV=XTo37)V3t4rrJBVf2nR!)0> ze=`6XzOz+jXjwTX18P{29!UG?BJ9W9(EfvLj(LWjR?{pTo@RZHJ{q$vz+Ywct*Gbd zh3Of(6kD#MC)j>bskf8`X~rqI+`&|CaAd-C;_8!-CbG5wf40zn`g+U`1%X5*4z!#T zK+x%fNsn1kb-C%4#Us>oEm)61T97+I*ZpKmJq;~x*JEWR54(z?1Gz~;SmP5zYy*hk z*419Rl(A+SZ_85x%RZSI@r=e5U#JK5IRNr^QrYTv=8wO*Z?c)-)6=^ukKG-9k(i8M zSzj11#HE;XWY_7T>t46LB;D$oZ0?zw-RX)L-zP=~6Twh1AJ`i-+LH_YcW%4&niKU( zJ(WxHzX}9r5A5on&UuXngSWU#K5@=Fm@JG|3~5R1?`wsQF1F^R0~6!hTSq@Hh{?%v zt{$}Y+w8WKF*P_4nLhFHM~}~C!rmO}O76l8c@KYzyM`R+lzmloni|LHeXwZLkm|d# z3S+3SRj)+%|H_kqfm>A*wv~1fNsa*Gg(#=0$`!!$1Tl9XUEZtd-n;_yi;MIN6P_ji zgu_+t$qPDIUeJMgL5CYZ)H%s?<0ReiEH_>ep`k%J1{yLfuBfLq^yasH=?*||b}5HE z%8{qlvBa;H(WjSMW24?Oy|i@r&=GIBO@H>lGt)QMUU8ooZH*l|d_;q1UiS(?nkPgmr-0&5Q<{jTG(y%C6X)${8NEnMG zs497#p-9V9HhVNBn<;cv(L^;7*g6cF5}JE*m+*U-`hDK%iF%x)aeu`gm;8yN)msi8 zsK!ganB=xgF0;cvFnM&Yp9~xsnB6@)Fc7Imh>f=yZB~a#3>@D+xvx6AwR${Vaz;$V zNNnChw4C>Qt#O+_8V%N_jjubmtrYgS0yew2WunnHWips%Yn92c&y|hG;$jD;dTg5@qfteBNGh!Q3rmE%k3FBcp0laHQ=4Td~(K#Llu2` zZxi(QjG4jMcQ_Zm>#hT?m=4Zt#9{$Z6?PqI%wA`g=`pQ_U62H7hp`nb9K>?hENg_x z;<=pdgKODooWao9!+CLq4U%(q3!|6>HJdu}+^T{Pb;El$s@X{ zrtS1B?b^BMEidhcpKbblO~aJktv3A>>YBLIvupRFrfZ)Rce>YJGHv7S8n&Wqj9M#i z|1fj3)*_}t{dYDUBPk@^3i zzSNG|MY_}`8DHuSSw(KkfJtHiT@kcaL5-@RJq<3y6#L*78jB*wdOi+D zXm3@Kaj3H*{08X)_Z|2^w{|P_Jtj~QR#h!%UoiUi)sWSieMb6 zBNpj`i=%U`wNX5}U{j{yDPwQzijL^*Lv~#1ccACdCLzTm6ACY;&8~`~>1<(O3;8^IyWX zQxJ{Wp#Qkq32QxVRaJ1VEcpb{QdT)9n*l8@tAP+;p8#4hr234qnhml^{X_tnUQ&Gw zGv6m_8f)0A@DSQgk)TFRg{bHz0VSFOfs(7TH;FB($Ggt#>=S*n zk7aKZCqn$mJ@SsClz+n`U;XOp*T4DA{q{hqIBGb2CekCAV4PHOo|zys*hkxyIzO+d20T1QDIZ}kCGL*B5`G4oBZ(zhb`7 zqdNkt5lj%huaQhvW-|TZJ?^|~p?3aV?>c|SJKt;BJ=B=9mx7_4Vun0*<`!2ymD+PU z30-;*zUa(@tN*z3)XCGt&wG<;y$0}8!N)&IS9u554!}nB>r-)U0bV+(G@x%afUP!G z*qmmk@@7Z|7(GxAqTb%FT53`7iND`a{$l@j_Y}S$&fIy?(kz6Xb8W6nBs@_FX(j ziXa0q`%0Tfa6H}ze{mYws6>&gQGXUtc*G#X4Nzk#20FuwiWN?Hi~;cP)OqYs{8Z}f zPPUp0zx41~>xpgsJ9fu{{ch~pfHDRw zX8u#$-;?)xOoj}br-6Inzk=6q;QpRo&uaZsb;Bq4B~L+kjt8X0dEuJ^H<_4$_gWX~ z!e_|0J!gb}v7VX*lMiTOpmNPn96!b@7H)prwQ= zbyAc*Wt6;zY;Lfk6FTz1Jkl7UxY8UY-x@BAc=GIJ#^ec*$D4QEys&WdUCqI% z!Jen||1Ediv4uT&S@y(`4}_{-eADW$`LDJ<)T! z9{qMb*uALa>#EfZMr+BVi^$U>2;T-lh#Lgq>k-5!4My)J<$!@muOJ#-LHGh>vUFsR zEblo|N>&o3qkHQ|U)oAklJv#k+}t32HZVKuOpKm-`KeaIn@oBWty2?wUt04f5;D9z z|MczjsrUA$&+9h)r^0=l$PIFLlGk(X+dw0(tg8)ruZwcKaT_*kzMLMMhvYVaH*cyc zr|N2pzP}&?Wy5S;59>)4EPqA=^Qb}#IF+25ppj)61Bh}6cG@ed$}P+4NC=UBqx6uL zSb!iQo2cYx^EgnBo_DRZ=W(EWo;r5zacof-r~cg1?epXGK&jD~p;lFIr=qUi4qvWS z=$FT}&IBW#{Yyvjqx8{g78U4ExV7k*cCOGFaI`0n!1Uxflbf9%wO_nb>rjZw>)T4dYk z$Y?Cw+seYaU&5Dde&IjuIunh!?50F;eyn0Y?C^P9u|#BS{rn*wRfpIw5DvjF5MU@P;ZbVv&KUbg#;VGRdZ)%dRvW`?CAh$2p3aMzdMDV_ z{tPuhe?T8^u`xQtvtrx0>i}q?fG``^iprUma!Bf&y8gzy-U8Y@CaT*P==(30lq*|m z4R~E2hEC&8rmB;3ci;0ythY+-*S`KijF5xWTWjax8-TLZw#^`hiV=E_)dvsI{cz<8 z`ug>v`r_;9<0+|q?b$cNCvFtg*FH=i-y$jZu=xXxnaY3RkNX4kpSp80Y zKut5-Ah4tIn{KFtd2LI<1Qqc~pncb95(D|rL46Gwvm`B+9u*)l@9LbucnLxJ>Uc4U;i(vcOM;jJSR$;?EyPg?64 z8a*iGv*Vem^iU|}@tB-K)^W+Mqc=EtzB)m7nj?^(pB<7;i%FL|8js9eV|3a=_LRL( zfDM<(rHeY&?N5cPJ$Zu*dMDjK_DyMi1?;CsJq7oVFTC!;%c;NN<}_Sa{(Zn%Al#o} zeQ1Zs|Dt|y0oeC&?l5d;QyDOT*!E)AwbudWzKA0k0YC|0tnpb{wNl40Ap+HIC&m&% zu`2Y;sO|v5kcJu7ciW-yK!>3O+Xu9ROF|5NzeiNEslsIk!-m?8qJiW&Tui%pAOZwCrhb> zCsQg`J%K<5|E|^d@}3L7;y=zMxNQuRu;XXmir=He!9Ex?7bOYY?42;P7GaNS0az(~ z#i<5pL$|QzbL5GYliDLR`kKllQ-z)``ndXDv%M(UK4P{v>}HdrB-x*!PbEHcjoob6 zb<|-p+vzjo&ZBlS`}=0eZ>iRNoU>BNwM}4%iF2h*u>X|^I9y5;Ta^lmPnok*^j{2S zkFNfFU?6te2X2cE@YmjO;MA!D?00>NT)6O3{-<1!+sc7!5kL-07!R^){LLYlk?#1I z74)J0`KbPJYCxNEc8OH6e0aVJ!8N=eBBV zHX+B2URMqNmLJf+<-Pc~Z0CS*nMWXeAT@Dol;0tks@2^Z1B@AS1}FS2yq_^+n?;qA zT1cjeAhI}}kF52X{F+V|R)6kK$!>?)XNjZ=q1N17rI6q!EH#(c7?%^Xt?D)>N1p!> zALK^(Z%`l3%_;6GBLR^>u7okP1zp69J$lc7%(U~fr;fa5#E=ZckJWb<4m`=HE2DF* z!ARBU8BatO>0W={cHtGoD_rl%yT40qL&5!BGI!xlcwBvoJ(6cv>-aeT+n>TC$NlyU zzW>?Z{={RZkM-3$XZh_9SARoproN?@T8VLPFLy2XGVVd{eZ0iA&x5wUl%;#1K8Iux z?LF}0I{0x5(jrx1aeV+b;ZaUQUid0%T25aD;yir>lhYlUg`Pzj^V3kVyRWJ~U|4BC za35TG;MMfXV^#H0dgZZ4;mTugg|60WXM%lkVjeTsQ1Li_{-u_(60dfA>>s@Y{>5AA zzj(*3@R>Va1jg+BRb|I=XOD-QreEH(1K!xPm45l2Jv%Jr&RrrmOTT$nRe5>6a}Rs5 z#{+q$&T*y;`;Mav3PqCRm;-=j%_4mxpTgu89Q=6({N`Y9NDlOh0VmGkQE#SiT*rRZ zbvMHs*PW$rT<3u@F7#}|pEWj&O}bV3XZ^wO82z)}#Qu_pWOc_~)D=B>&8zPNS9H%k zR2g@*lzn1*_f@CCrOl@pWr-xJ?ku8dDY=$9b{)0Jqqp7xHu(=krP)&7G)#ZZOV7Xc zQA}1`#R0*Fqd5w{^t2TVFG^8t506~~zx09o=#}@hl*dH%_3x&?;!#Ptzoq(arC*Aq zcI`%6ZqBS5+%gyFfi1|roxET${XW11>iHmkj>zj~zwmS3#ySrG$!UpC2m8{PgCRds zSbv7V=la(77vtx?M$CqADiux_>Vx)HKQS5CUXeEn&Yma@nSY->+^g053Yax+ouR04Th4rWOiDLr0Mzk&lg?zgmBUO>tFx&sf+%B$Jf7p zer(-e$N$^9m#eq)f_d#$itAo6UY(P`=fL%Ihe?EMZwK#sT<`Q(C%4Hms{!wW4O^*q z_Od-aICKC4Ur$xd+gBj9!qtJT7EoibrISl15TcAIN2p(XC5@P_>q-*M^?-_EK(8`t!?MD97$0+?nY}bI2f1Ky*lc1T=nEUSJ+_UQ ztv+WkAlhsWgJt{S?Is;*{r<|;zrC2aLpbbq+uZ)B*Eo3a;2>}Dxa@vBl~IKZiKi(C40Dc(9O&reSpyPrmkGp_;L3ldwvyr{a0$mboRcGl^NvU-Q= zF0yJz9%dmJ|4vW~;YGPwFhX3VwMC88yG9c|0&>-&ePl}Bo!m#_^_z1qjgPOk1AI1| zYLMAiz2U{=9~ZMj`?qITf9cxy$@Q6m};efK||= zIstpYx1zXZoVlb2v!r@UEkNXMd&DXpI^GDq==LDQDdcE4X(><`tZMl0G_r&$5CoLN z4KEeTIxsNZa%ldMnbcAvq2Yvhy1vK!2lZX)OcwympZ)@3g3XfmH{HLO^qs0NW?Nra z-BI7=>OuV?{|=)f+W-yhl?!WJCi{e)bZ4C7+JQ9=7r+37Y%y$xHYarZ0(3MllU8zx zEd!%o+lk$oPCs;K;*3oU@NYOA{WVd~*371nGKj+DHNr?n-47TPqAx*h2Uf@hyxlMv z9-E)YI6|wd$(SdR3Ydk}N5jFmy;R{JC-%(N<}*Z0tU5yphk=B{ywMp8k{^~LLic`1 zn;)mP?Go73{)@1w-T3FaCAgpP3j_awW6v=05OB&XA*9bns6VRJ&AJ)F(r;^4{He2Z z-iZ058aVZuRVMlE4+AgNd)o!G!f}Kdi6^c44(~&-5kl{cV+#eT9OBXjFdz`k zYBOSWY-#8&*(A{ihSU81kRvlOKbDN0J=?o(XV21=Ym&chZq3-m#P_N{>Rq`XRsWnW zU6`$%QNtBaa&OtNc7W%ph9EP=uMK#GFxeWSTGw&djb0}*H#n>-N=(M=j&&JkxHyKk zv$mv+a%Gg{bH^I|I0}VfIPTop146!YXBUS2zTzvp zIOH!Wvi^!Ze>Gj}d2X3a5^AIPKq!Lz&3!t5b4-KTLwwdgAYX1)5&3`v6AzBdwa%g*e1kJeRB@0Dj^9ha?=(UmCZDEM;|0TxriieTJLcVudgrS^pY= zm8E2Zr=C@c4I-whog~wX1^V_JU?KFCTToE#7){(z6Qf8Ipj-6=?ut@|>>j3lGhpX0 z+Tp-9irVBCv2%hY*Vge|1;}fg;rVj>qW$00HO!o_g?*{Ow)1ztGSaGNbD@|e|LM=X z>-ec~>T??mL--k{daFM+XRKbM@#S~C@3ym!Tr`}CiI$+zYSZynf>iff+&9^5xjtAP zqnZPFEA+5zi`dnK7`#OtgBK@LwBf@+>@*%M(G_U~5=FWq4VaG`!)f!dgyR`&!~H#D z{Y%DhhKk$85(5ZG%eg=$!-(Sxu5eRY0p4QJOsK56!Z^L7_(b{#1%O>%=?7dTP7NgK zQS7TVF;NDE$qi5xz)!q6l775f)+bY*vYbYI6~8^(ysDO4kFg(iMrPzgC+_@))nAGM zu!^&2GTYv|`*XwRHel~36K}2L-+cO}_o19e4KLxJU9lmO|?4caeE!~ z6AeK;y1m}XGCIRD5muOKx2Cq?8m0dy zIY~7nYf~LbmR=hD?~{_+k>s>8+aE8MW?GDw>AyowiWH~T;`sO#6OvBY#BdNtkw@Se zZGI8;BGRK5H3&_2)zv=gkROrT6R`2dnLbR(?LKHADYFImA{@Yb9>K~kPlO?6P0V}8hfZ?*G^n> zEnI4fOR4mgCtzXwq;`Gb7+cr^pkV)g5R{oA@Pq-hFff7wvFW9k;LJqTPNG7wsfn z4Vjfci*#j74jUXsUlI@jf~J#dSew~S;)*&Os1zq znf%V2xO@_bZZl(7SI5QRmJy9fGje%yT>ik&mLtGwz4Lm1+{;Y<3o+zsvcHYrP0xfW z?(-~y2hQO&tVMLe8qSq=1Wtl**IjEMDqf=kQIXRNURVmWeHziK0CthCn+wsZ5O$G< z1_3+^0+6i=Vm5q^4yW6fIfvtuc^!S)?A9Dj0AyR>NWBTS`h) zTVsrZIN!v%bY`#D&Uqk~5MP*%g8Vo#LrtEFCf9hdNztoC?R#(C&htX@*srR(=4?@HNPbHW>a$5We2|QfDDGeg1zOM?FZ)U zDH6>i_4A|%tne~CZBmVIfbs_bCc*|QqpN;fs3IA84%TV|7kmNwvo}|L%)6}D{zWMf zsHMA<(An%jtyk@91NoUuSMRM-C=F_-$10C%C`m z+AWP=WlZB&Y5tD|!#OwiDP`*3+@j#|@6o=Bor7 zX9w(oOkOT+*a2NWmY^@6Sx?7u@PO-@&FNUO#sde}^RWczez=|PhjH#NH|IJZfDO=O z8vuLeV>A$iCpsrk43lIrz}apNz?w8=x+Zy-Z-6zHBj-(Wxszagq6vo34OHlTy;SJE zJm_xZUsbCTN|mbnKrah=USmP08>2)`kxD~d2_Yjd&4b>isnLS6sWHahk9>6BYV!5zt2sJGH@* zF*fXm&o!X*F{B0?n}Ts(tOkVvxZ7B10M3sQPJx-KGPT^9WIaoh9>&p4Hvm=nDl&;x z2|~`dn@F7Agg(3~;xMTms_B4%J~>5YIo(o&;Mdp_NdP;AF=1yGR-iJ>;Af4ZnxLMf z5|&hZ4C_h1H}#OHjgOI+{T>WNp#j7OfA)7LAtHgP!tBGE-XG^bM*YSP>$`{coV11z z30ScuJu%e;T{mHyMcagFD3f5-9H9X%UxmcgKpor}ilmx)c4`bjWI9Er_eIuM9c6w{ zGzZ^^!lua~iEJ*#Tun}mq@gV5N1q1FyGc?l;L-Gn%5X~=U^phk*QHENkR$;i7Qnmd z(Q^8huH!Hoj9$EuOQ!mAlEXJpjBoQkCZ@jfexujoc3PrL$*(%>1PWfN<9%1zj0?5= z7=JbwiXOf_CS>CO<|E-%bIj^Ceot3%J}2xxjw=4AgxqzYFqhJJSooW$Zr8cbXlJb0 zJ!3t1#_}x34k`_iu4?VrJ1n0=_?Vhn}e1t83@M z?EJ%^%;yQ&HL(!w;h>j+a}bJ_3RlhlLNrmqad$3 z^#7@57fkf%ILHhdtQQK|2T;i11_HfN!L`yhVAdVk6;d*w`VLSRvCJ~185!8KIJ$Vy zTVA4;*9Wz~9ApDnZs!ut#zq!<@}Xw-x!&>r=UBf$m%tt>{y*9bE$Yv^%>lin*vy~K zlV`ahz|Y)FZV35*Ns(#r+#oXP_Ys-2(k>u31(1t@GHL=$u?o?e0KvzWb?G78d#}tc z&n3m!BuFDEZD5n?a!44Wkr&{U`mRnIq5EON7ZKz2DaL&RezBI0cX|-NBquN_X0=nQ zs$IiUjR_4J?A}hvAI(u2mO$->;OJKaF2HYU2XJEsB3OiJC(%<*!Zyv~a2*f@mSx6g z-z5svSps1i(k(+fy1>AVAuz-Nm8^-XU!j7>PTH@rr1tXvURn#uhxkaye)z^@jGDiX zZd5`3@n^2t4h1-!mHm<`*!5*UfI9bS&F;B%yVrJ!$isyMLYz(@q!xy>YfOfHT^UkS z*9WFf(?eFFMdOz0HEx#(DpWhwLp!p00JLS>hs@NzAqIwO@5)e9LdNV(u=b^8$Jf&? zUPdWNgWN#Fwn6Iq3P@$PUM0!14^P&-LGS7hGzPOvYo(rp$Qv9mi_85zL(%~mW_1~+ zbgW?j(7y;RiiTUPR5XoI+B}uws5w)nQXGZDcrU|^3a#{jMr}llqViMiAuL|3$qy18 zng~7C^3qnj&r()*i!1HjTj8JDy#tsmSQ2R>fRnoFZaZQ*D}uOW=0>Mk9uAsxYAt0{ zM3iTvJTghx{Pa2vMVd5mGo8I;1xcty;^Azz6i+r*KiEhn`%jc($vQr5@V{*&O-XCm zm-eqOAzgC}YDh_SI7Na%l5UVc?~fM;S7#b&c%2$1UvDJAR3sb!Y0g+KQ%e#mROfeb z|3~vL9LTQ}j!Xdh+2C29EI&F5aR97YQ3J|uMg)TdV8aKn>5RgQp_bM!_t`HJzLQF79 zpN=vN`BZ2H^P;0c8kw0n$!CGMU`Skwmj*KMG$pAy42mTVA>@_1_({PPOy&!fwRs3C zm0-ptAZ&n)oE7LuLGDvWqAZv+IAfTvA@6?RukZfTQ>NO%k-V5c)NE81PL`(@CxSP< z?v&`}K1$adw%KsZonJb3nyw8x{*$Ddu8ae87&mn*t8n;)9G=b>Y-p0hr( zXDSvrgfPFtqLY~A6gNs{|gE496@gcpW z5R63+-U4$;u|zCywvnffEuOhEoRqG%4Hu(*>8Qh#@C^yp*IWnVNzq&}RdkA4eu>5} zFQv98#@)ecoq9u>M{Y|Hy0BRrsz?r5AGa}T<2G@aR_+*B{A^(KE6{+&VH*<%w3KVS z^AM4U9@R=;S@0XsmI%!(S|AL5O+gPh%7hx|UtV>DM!Wn`KJGknBE3b6G|tYXZ|B{@ z;<0C*IkqS~|6D6!`~gN4VPg_v+Y7fL$7lrlcCe{Z>(9Z&yuV8@>c;{Sl41kFXtb(? zmpdUAu7=pj0|cWu`@=X@O$hnY1IygQF&d*E4}}qMnE^0c*SJPizlaxlI7cx+zW5s+TEfc;sYl7*if)@b1OfX7Dv>3=_ z7VzACdnNT|hv*aBzbToF*4Mn;5lB5T>U(FZ@~ofF%U6>#iL{f@gVJa=TFs%=PtkbE zCAkQ_Ag|tgHM9xhebM{;EY;6`?q06#Tx$xZmI`@>z**O*hDfvsA)?pk46|~(*8mVP z$c8R1s}>h#)-;+56Lebjl2v%&0#a6#HOh*1B$mPZ4nZv?gK0B*bJ%sZ7QGDD1#~0K z84be$#lU}d$oGY(o=QxuesD7N)F1y*vPSlXlVR!Aw-hom|9IG(TK!t}{$`Q}E2d=g z{wgUpgm9R+JnqylKQogIcnn$}n!c_B&>d}t6E9bXiYd}E_AGOmwG@JPr*%z>=-wf} zgkhQPSL{Eb{zMTM8^)XHPh9e%zU1_$N#l>EjQT} zY>BChpT$7SO}tw1GD~iV@D2a<`O$o~@|(Va;K#obOhn1?m=N{5PgSjBfdsXn!f!@r zXZJnhn;p}0C%h2$r$12NJ>~I=5VMA2-=&9RfDeaxsu8Z>JGMCXMkNm+Bpfz2j@`2Q zOtRap!Z1~C<8#PcbW-C{#PK8-B@Q5l^ z?CIiEpMy%s7#nOcg3S>s9uuMop==5aNC*L@rl=PV;QaKZo3OSJKKmbo>C!&=Ph#cL zmb=}O_czrsr$B=rUV366a{WD#-C*z*CPG4{I(>uBPkm#O8$I~tpc9@+uETCaz3lLV zikMTc{%Ze|jnRyLZXFYTLv^CWeM)1%ix^h$iB5fM#l(cQ1UU);Y1yeBQzuZymwHQG zMsB;j-TJGakp)Z3aAIv^Cl)kTN1&}3PYkCOXoL_uzT;<~@w4Jno_;2p?*=(}JP!dg z3QoQ>QU_CgvjI_4KZY$8eZZji08C#*&Mo|d$>fnT12g^4e?ZRmo`~c|dTtyX$@JAf z6b%mg;!a!G81LhA-J|g%ykF0TVDjx5%>7_D1SUnl{u@m-- zaPX2RR_`VU*U_~;ESE(jv^hc#TzU#?{TKW{QJt%Cf6T4p#4UsU@h~L=;#MSoNCH@R z#}ei|G+?%XTPY)sQGn`60J9Z9N!7Lox@n96%Tq>W)Fnf{o7zpv8slP*IswACAwZ>I zq2jO*O|4XS82W~cSk8G0W{a!S;f9xqe zyVlOt%ip_1ju$wRl2q4f+{f3;3u?wn279jHr8k`eQCY*B2oo<>CMw4=gJWg%ico>n zco#iv;K4*-Y64ERb`iZaK$L8o@Gvu_Sw6SuQ3t8i2AEv~k(q+bI~#!Z$ubq4mEaQ^ zvjC94hs{v4cJkkW!CFi8R)MQ}6Bg?=%3#43@Li6}dM(?l_dtN2{S~YE>KIuPJ-r21 z0xsx~^vHyps`&top0BGZ+e$ly_;sl`L#~U`{awR!OO1me1B#Fbt}F~x`uE+;)O385eBoY8`g`lA5K&WO(!F>ZU3FjxMUN*RAxpo!gJESKm+a4ZWtnMz(=5ZH?s&p4C(K>Vmwk>%776^lA zr~oWqAw;bYg+ac$ulAxxxL2Mt{oO}IVX*i#VX^OigFJ`T__5ABD+wp@!uih5< zBUcCxgW=LV?2u>wCp?=U(emu}Zl2xdWO?>=T|6DZhv{^|#<15A#c$mG1I0G_uj^G&H6LN*my2_S8GI?h#zWty=5X zHgJAft%@t{DjX49b$}&XQ`i-wN+FOOY(!4Y(z|bmBdp1Vq$>gx_!*2tn(3a{q|Eot!t^P#3Lr@eW#C_!K4{@#U#wUnrc1A#*|?*_F1TT;Ohfc0Wx zYV_z%NXke{*($2FGAM7KNB_)-sA5(+!O}BEz5Fvt zD#GvBMXa?v8M>%S@Fw|eH0;YHjLmJc-VM#fL$|JLEz6V__mB0x_}tEGOR@OCi@aHz zOX{z@apLyH>gC&tu@Tu4Ywmv8PVq(mkGD4gZ|o}XhtIiJ($#vUt9{>hS&JpvmhBna zGvj#nnarAGLNYVSWMx8tEQBPa+0%qIK+=#<3KUAyRaaIDA0JDgB@O&b3zV9&v~;Bm zWeshiO(K8ieb2qJJmU#@p0CfJHnMzu$JTw%yDz`@^*c7jDphUvD@Iqy9`f(J?@4QV zVnp4rP&WZ->@AKnxLs7Qew3QMEr{E)WtJUaHJqGa2UrEadM`SEP?8&K_A;niGD$S9 z%f?9NmFjT26qrKlcHq$F+57pr+ELD^`#_8$Fny9hJYBESC#}V$?Qm}M?(P;GM4Fv| zbHm0d?=BokR+j(?Zi`!OEuOc8cUJ$|uj){S`T?C;SHE-R7VEZiJC)aUtsQ&AHS3Fb zZ{3reX(wJy&$4v&!5bfAXXai#E)wSNw8*FUCLe8uPftV($2@XH93EH(kS!o{sn*#^ zj;u<@o#<@@0ENbI8#aG~B5(3d(Y_{Ttb>+{UcE{%&nHnCc4?%U2xA8a?D^sP&4`Yo zny9b?%H}xyS+T%l={lex`v z-#UBW_8n{J8_drSDsFN1+(p~x0Bz8O&+GLBJRc!Ln*jZ3Q!q24tbt5)otjMmE;QBA zCQLArh9SPpx3m$4UNna}^`uP+!|VdsfDT|!sCF4=7jO>)56L6Vo)2SnpTcJs?0j|s zZ9wxZ8-NKh#=c|N3_ezbX7Dl0*X0<=VZ(<7Vw*b5FPgAIt%i~qsE?@m3FTFEu#IT- zKSr&-Q6Jmc>YIM@6?@rU{(W6x6MbGciSgu@cvV_UY;+yG{ZBPA8XK|q+Ss&kj)fRA zpjD=Lj2X8$VV7PU)HI7BJu9k}sexE?q}d9Sm%QH!BFR8=xo-6^r7dcxp7kM>t+*6) z7*I+&H}@oDb1B29456eXY8&KTPHb~i196<3)~MWS>NI}Ej<+=uR|3iAS=-HHUUhCC zsN@q&y()WXXQLG~Yi(~2ez`NobTQ}MX*dQ}Wgp_bN@C6J(l zs&5*$TNMyxm#Ah5`&JQivYUXQWV<18}X&CNa@lm_g0STQk^G{<9>47PHW~J zC4CF0oe37ZgPr1uxY$}EE}8(^1q3rB;sV+(T01X=`b#zZo#Pc zpkl&|0$7VB41323AEhrSTqauZ2}8Qij&YH%Qf9QF9A495l_|_6k|r`;&{3sM*!y;ztl4<+ru^ z6HT{TTJ1@dvP{BYgAMM0hVf!WUsHo%C=P6!XaJxmM*aryW*mlLfyuxzmLpJ7!Up9C zkE?ox$dGXW7NuYSlpi0)@x5e8Y2WfBvPZRD6bs(tmVP!pWC^OE@?vcM6Om=< z7%dO=&$}4E6rffj;&weyLK(daK{e+XiEyC;ps2tkt6N_Lfh3Yw0CRnUk;sS>kw!)r z9+oV~Feq>2{U%YyG*MJG(EwITdIX17Nme5f0oTpz=Mcat82o}x1}kdmu3PCDs1He$ zQ(hg7=+{3O{-`hdHc&W!dBf|!plh3O-~g=-Zl=FE`22dEGx!%8Jihbeu-Sq?Bv&m_dluKZz9)U z!GBMQ5b-;hgZy=${(GOJ-(=taZb48a`y;=*H3tvmh!7;t~&{Isn9gK3f&QR;`}Yi<)gfX|2b0lf?lae7@!M)EJG-Fe8n0DbAbNMD|Rd6HfK7me;e z!u!+g_rC`3|AKb?F}y#{==W*7|6lpv%tp>NPOu7(zFK2n;=fG7i{C6f(nx6&QI2Q~(j%T%qO%jg@0_`0 z%pKho&u=z4Q-KSq+G#!djs1m%i^n_eWT{$m#!|k&(fLDoQQXhY^*KE6H;`}X{2`=; zx3KHq!}ET_&1B^M)5H6(Uw8kL!~3tlS(iH|Unt*yq22%Act6PFD$4f{`TchiGP*;_ zN<8d$9wdmBraEC!RvqxF0AJbz4sir6v=5pSMB0+46_aLaZ z$Ty3vEkbH*V+h6+#$xot`tGBh*&}lk`||YU-~*Q)J@Oi1S>Jgy`0RnZ4ji~=U;Q^e z@S&kzSq1$gOl8iN&;LOAJh^rsJTKg*KQFsJ&hGzXr02Ia`uxFA-oA_Ue38@VAiv+r z^xaqSyuPZP*DvvY%W8{$Q+Nxb=g;_gT`_w9>EZp?ue<-r;r-XIyZ?Uue&M&Mo&3MU z`@g8&&#se4hWzkv`1}7x`~8145C+}e|>(J#hFfMK}hP; zKFPJrZqI}zGyrBpki75;PVj`Sdb*Zx@r8&{%Z?xB2pl5_Y_P$|2`1A7*jfRt8I0=4 zS))yxTC5`+)8Vm(jhokRNsofB4bmf>o5?9Ug1r`AeIxxK^Bp4O?)7~GR)O;~zR@DV zo)e$MiR%HP*wP5Dr@=Gqp75aF==-_9>BqI>eH(8Hh_NU0gZJ%ZUVv(|Xd0&a~|2k6LdtqytKZn};+ z1nY|03g8CUGNf(&UZ^>#W$&3@8SBwy*hAcM!TI)62ylZ*fpl4MKO+$(6mx-Lsho><`7S%N0B0i<7g-a>7~IvVB{7n`AJ|lxL=GHt*v%mvd9a;`p()?rV54N4<$W zr(vCCtSn5&HL95~G|oVxstw6NMA0zK09XckbmvTRAy`9TMNMLU3JPs3Sb^_t%CX&x9jcssmuOU4;fv zw5)V%>$8AbE?W9k`RkEXU>{R~ke}{sl)yeaA1Hhh^V6?8PcHkce4t@<0(01i*?_dp zGFoSm)>%MqZ4HxxEldhd1FZ#}*1~#PZ$b>k6l}ERgjO^{D?>snu4T6(%9Z{kpH7&p z4^x7ZL$WK}ZyaaJaaHLsEsy=^d6M2*q7eOq3&HPUda@nT_Sp$djB5^~Um>mj zO#CA1(V3Uwdx7cIKcZh|-yi#LyLh&l5t=~XCifj<4jy0PHLjbn>H5ekPK^KUmrA>N*bt) zBhOT?;PwWBsVuJcV1_J;A!}|7w;jS3r9cq3eJl$e-yGc4QhJn3Y0XuE_0>(26vzO; z@%fN8M(d*Vy8Zsf>0x!#<#SxUe~Zqw%nz9HTyJWeKH&fbZ7-*Tqs%pli7BG-mfxy&!ul5D`26rP|<2SI1DzTxW@A{Qxcevc-6Ln2(6pRNLpgl%=qG4ie{b~cRG$}k;xOVAC))cNKBHK<~ zaNpyJS$ff?gy@VmbCtG|*hDXyP1Jn*{9%)8yfPM#-*Xr3OvQ~Jk1;Vhc(&4-NqDD^ zY^Dp73Ah%Y8a#i~q)D4U5iQJaHlPNjx_%!T>Iw1MVDx<~2rG7Xq`o0J|!LrZwcV@aa6#ii_c9&XSTN9qtTcMB+h7eA){TIR3Tz90rezK4MP(%qiTUs z&t5gTahEsZ0+MFWUIiN3gt8pT&(lYZzKQw9_dwq0yR#7N)z`Qz${O{ z5U#>*g91Qmhq19M&G^UVgsXiQzu&?6$Fp)C00t+I;UFhklyS_Vi2PJUWNjGt=@IOW zCRL4ph!vqJ8GUM4YE?}xM3{zLXqy9kjxfwQq#7|K^rzO?Of_C|0>Neq58Zp;8uxomzmBQ(hP*Go2>%`Q;t(3P>0>ny#PEr z3Bc%vh<$Sg{4r9hv7!b!+IX;m-MKjO6@+3$0~>f7B5&Y@nPA3XysdBn+6sFqtdgd( z8l}KNf~rheQN3=k4_T(u)H3skRMCo4egGjhw5980iucovI-=YUy^gCW8e5aB{}@t{ zUc{*=lynxmQ2;qW#=j$!x&aZPZ!W(2wD5D`!z52yuzLZw=!Idr75RyzQK>9DiNL%> z(LtQxx`-S$x^F2ECto#z4Jh^%wH`RLEY$7hib@rjnuGRIXq0dV&h*?!8+StMF)0J` zl*JjAz%sfOHJt?liDAV4V)Cs(G7bVpw;d;ld>KSoTeoY`;9N(uLQ`L{7#BW#+ig!C z4MZRL_%rW*PrrTe%2NkJVY)b^+3#I&^za4mlM{302TS!`h6mq#>jMwoK7L}?wnoNc z)=2gjw;g}&>%UptzO8_~^|a_`ypt1gfAQQ$bjopvYO&hp&LdZr7fTF-XGT@rcQ(D|Nj~$%Tv;e#&%C9`ee0s-bb@@rm*PtAQP;9#Flu zl*m+!oePzPPxItgV2w&Ignnu$&XK>JFgwAnuHjXWfK}tH4ose4r?tn9nIaI04ULX( zJrOQ^MQgJ}Ke~aD8Qi2lE%s6~9s3maU(J%wb7a(hnmbiSdTsPw zuJKG+GMVR&Po%8Dt>Zg(**_=H?pPKF|_E?3RJmgqByyS7QKps zRCQ_=y$Y>s2GGA{R4Xu%t4H-`A(5|{DM6pFpAeQFzwg%f-Er$<+#g&Ra@kk+@7ldo zn`_eB9=hwETVHe4jgRUicvR!F6NfinckPwhJo1mRW}}i`j;{4wX0*6auvSj8e;^ZE)L$Y z4j_P@9Rbf5|ILC!VUHUEg{ly3{4ck$KJ{&=LX+nxP3?0s{qb@3IoqH;#^Fqx{1EF+ zrVmxG1xFNEjGEv|#nyy5M_6-jsKcbBQ9~M;fYqqb)&^ryWB8HB0Mp6DoPBI=BjX5Y z+8yK8)WPm_@BxM_duk062NbjhmJ`>yv?30LH$4=Z>`iT2t$3OCh-9JlSy5wYrcbcE zCjxf$Xi(309?u!hc0MvgRid5rcc@v86l1=G$7Z6M|M8Xw9+=@reuA#(XMSgE+v0(2 z)+VPj3(Yaz3wg^2KiM5Tr=33P21X-+u-5)M!aTTy%2C$w$N2mhye8&L8(x@z(9kK_!4Vzm{maq@gz?aSgkGgcE3PD?$rSPl)~=?8_)KxyT4#8F(x+Ekdf=i{&kde`?y8Hg9deMMti7Eb z{NvySs=W14ntRXjxBlTDy!GU}a~fj}jS|-rf5&*LOg=q4g@l zFIyS&>%9?}mo{OaeNRCn3%CS5lcJkm$mNx}?MbnFG;cMB?Nz!P3vFxRChwwAG|L?J z4ricLYlKl$lBe~?-}O=U1{0#F80bH5*i^*F^8OT>iD+TC>+c`4t;+4gcA^)D<50L? zX!TF&bBsPV64c^q;vf!qc6%K%Vt@?N3Su7aimFsJQxl;nU3bh54F$G~c&rU}^*t5hTNC7tk`<{V`J}z;y7Kh5Nc9^L71a zz`eD?n0J7~0o6s^q|~)4&k&O*P(WPUFvq2AYTKj7l)e~EngRWpH#1nhVNAgV^c@Ns zFp}t``i9ZCpmAD3rfAY7AoO>4pMJxhn}2QU@CE5s(r*?27+l?V#9N_banTWVE_XZFp~5s>mtcl3?RQu|8Rq#XK=@w3y3`Mg77Wjw~32P!aQ9Jo>;VM zlkGeO!>brAT=Cp%;ebo40Xc>#oH%5LN9{mZ%xtL&4c;t@@#EukTgo#|Z#bDosP78@ zDXw8+x>cIW7fejK1R%?oFKEedc5wm_5n4@sL!)H+(!oiyEZbaWj}$VrUU$_KCx3mj zbK8Fz%+uE`UUTJlFFW<{wcDOJBAOFUL(Y~AUGSd9Bozfov>Ifg|Mr_cdf>TVOBy}N zL@B#>+Y`O(O78Za#wBHMc)LZZ>v1#Mu?BgM=9MwGmuVK&0j+5^e!v+77=*6xx=l|+ zW4!#U6b@_=WPVyNjy_pDt;NRJo^6;`X^&o7aF-ZtTY*l&|ImJ`c3aa0AxjZmV z`XZ*$w4d-tzd87?5AX?A_9 zMl2egamjnPpKlq+(Hl{}zaYL__z}}TZ{ocQ2wLO7u~wOLVgv{HdU|np<>`kuUtIMV zeYp$9t6OtHi}=U%st=vocIT;0NAA40l`gc7?aR*R4DR`>OV@n-)-BHDW}!2F_*iRf z;lfrXR$A;76DQufwXpm4Jxh1&s+jzqOnQrAc9rLAif6Cx+q}eVOOD*Z_mg$ax^LW* ztWm_21nc4jBb(<7$KXge+BOEc1t@?S0P$j@URbO!I6@khmY2D8s+iH6kwzn8+&4wn zU7Dm1Ln#2#k87m>2xmShe1ut$=XJe77xW6iXz+W_U8plo3oo$qEs;9urQoUje0hyc z;!zxPU11Yx1;P@)4GRCUJg<~Wxv98G6Iqcv0&ry92@s62!Ks+3NYQnVP@Ew#K?s_ueD~-F)qbkx*(sc4kjf*8zzGVG}h}ePnCj#J=V6cm70h zFn)VvxGF$j_CquF zgaaKKto=n-)K1{cvfPQ98K)>`U>c#r5qdVeNRwmhv|bY_VVN=>YTF@oKwuu z=|GuyQ7EnjsE^%t+x(PMNk%Vy`={Ug*ykpWTyyo2NchbQhZ5$K+pF6$uDN1Ik6z0U zmOMeJ=t+)UbNH4AAA0k|RlB#2B_;D^*`pV?QrEq)uysfAvFT!HEw)uLH}( z-4=^hBsc7X3=AU(#|nb?8v$1E~nh3FHWO+A)HU3mS@55x%r*ST7IW! z;dq*k1d1F{gV0~*m0|uxEru`&!X$1Te@tvV53@!j;epv9d;G;&(d+uW5XP@Z_3(8c zi(cv6TBe9%jNuSIN~&P@Di~pasDL9GXsI#w9+%!M#KKzTQeIJ$Odll?tVk^?XO=@n z6M%^FPVR7>{kwh$zrp;biG?1|P^%KlRxsjJV4bfTW6@}zP}y6|@@{QyJld$ksZQ$c zbtdK{7`c~IeAs(vX0fn&_wLPwTdr-CiJQ}-Zb8EIZzjyC^@!=a!zwSMSkIl6c z^<+FdwzGcxbjs=Z=J8{bwM0D;&(`-eFTdqNU55xi#5(Rf2~M^2lREdKZ2{5fJM0Mq z3nLx;C$RK4gXu7UP7CAlLYpbCM=g*9M^Sra{1!luh6yN4`Pv~YBT?950Q(H6G|iJ; z=P5DhSFSs!y1;e94I37(hnhf(DIs3?2(gl_&`l_75i?-4R9UQ0g+>Tcg|thju5RJA z>&_PV_?=C_0o!oy(9E9ChJ#Qx*f}td03A)9ZRiRRHn^Gpun3@&;QAFyn{Y*-p!DPz zpzd{>Jf!Yau{o~0Md|tc^Y8STH7r0*w3+mz`7n1Ww4^w%%>2X~NBCY7qc`B01q&+rADjJBM(39P3 z${(Hp0R*syR;FOR*~B;^!%Vq8DHTU3E`3-kf-qe$F9mTDVfRh~ znHqH{K=C#vh!&yUGzBXUfnS)%2MZ8W*s04rR;is)nCUSp0BbFV+s95$$LoVn*5lJB zkF`6OT-A(^(S=abVQ5};NvC^TW!gLV&TZ3l|E7x@0kK{Q1S)kg(71ThOO;b0d%I(`_(cyJ)Z5yW}~C}kK00n`td1JFNBgip;mH<|i9j*S0{vIzF?nlK9HoCvP~gkg|o9dPwkw zXL65>AN|PX)H9#?u-Q?pQv1o1Lg`tPEtH-q9DH-S(aIVHlgUXlrHX}a3Hb^K<_5>zXjyx@h zNLZ-So)do(jgPg*;*rwqOi6e=HMKqBvB1p6?w})qf8WXe{>%9HAArBV`a}9t8fCl` zAy;asWs-y0Z*=Hj5DiK@BCu3c|3DY;4`hVSWe%ARLl+k4o3Vi~F>la|>?L}!WCMMe zgerV59|wbnb#QYdVS(|m?1`4PUarIpH%-STYTG(?AM?6JN$|_QMD66ZtDWQdOhqsm ztOgtUxT`-F+%zowK9hj$93NjBhVRn4h8%!WU|8wfdFQm*N^ubt1g*fITuv*sR`8m71(w--+7juteF=Q%7`mHi-J z)mxBJsbPzT1wBmvbT`Ew$pk0hf>q(vZsPe1^sEab?sbdTh1P$k=j*yjO;REs)#f=2SVLY11Rh2#f7_X!Ul@XA_A^;2?7-IIjCQ^n4!HY_ zDh8TEB=8Xoa0fyFgMU`ws4!5Dj~DcOH%DFL)7MaSj~CD*BPz*)_K8hvX#PsdmpTW* zU~&jJ$jA8GG#8zrzQMmEc!4+d*{O@?cH*uP`gq+o_m6Y~qm6|{sSj%vcC+;iLM~#tCk+)-Z)Vz0#>D7smRq<0T zWfVD`9?Zp$UpC>I-g@wwJFm!f3j3UIe4{rr_|Ng+6;#TOefiJsf3S1!HLrh1Fx43> z#cz%Kq+rMr)#Run97Ue^5SJr>|IjDzVSinQtf5P$n#dK%9&TZ{4*=v8h! zhOadBNqpdi(2y6RmRI5kpa}L>dUbx-h!=cAa%evRei-EiMvfsj{O6Dt@;WaJz7~Je zaM8>s59v9JAk)oR@G}h@2VC{p&Mc>V2J>(qs9hX7p#4bHU}r%auR-@^1-^qJWXkL@ zbm_R+V>_BX$*qTHT{j=XWy}I3VIFt@DF6taSQKr`M; zGE!)6`M3(9N0|yi?E%7Zmgd;CmHsv8iq9tppJ3YJqo6Ea&~yct2QTA`07*gB0nxVr z57$f9LFigQ3>+<(QK#KB7QW(44B|ro6DL!cPBQGZA=qmJeJE-MOlcevG?rT zXcDUG)UIjG^*q0Rt0_nYJvhSioa0dxUNhwPmwOtw|By?9mZPEHV`u9J41B3_Hq#uOG{AXWPKL4x`Z@u5GuV?ovLu_r*i&2^-&Dg)AWa~UdizYW z-lZ$ZR#FpA19ln#5*mxD<$&H$*$ZHd19&UgxGM*=kxl4rP#tDGgVgzSE_TtS=)Vk3 zj4IqVDB|aZt-5HvsLRz0hw8SM|A+S&vgcYroihoDIuO08;}&LdMtCcz?TV8DgIO42 z%=arcW6puX2t7lvZiLr=K)O=HjOqGZDF~XGxlA?gK-F++wOekgCB~{kvsc2CEKx=V zC?VMai^wQ*ShC7EhkcW6+TMzsFQeCpW;G(LkAVRn7-=PGz3)}^dLv4 zhMqyr(lIPY$DCT(BBqrsRDbwK-PIzAPV$4tPh$zh>zMZnLzO#IDdUkN>3A`popG(>#tQ zF_dWDJWFB9OL&gy+;42)Fe_*y|05aEWbMC%9YT+tQ<_|(q5tuW8}{S%14N1NL`s0k zS(2x0y(=sbJEKFj%HA``j1Zft;RwfNRf5qNE&y|@_9WJZj=+99(+cdvCq@nw^Wg@A!jX zKY7JlZz%i2{%%6|cY6|U`T4)8Z>;}|`ex0q9h_I+03ZLH zz9760V^NhB~iBTsA)Ct;#)WIlT$4V>J)wIOn2;~*k=N_U* z;W8u43o&m54P36dTp?lhYZ4qIAW`pE_&eh2=XpUgUq>4HWS*N#09J*XuP}iG2Vg&aZ7U2zh ztV2*s8R8^BI&BD0EAhyqC&_x;iy1b=MR0+d2nKi zx0n`{Grb~~FklT1d#zZ8pp%}aYG+Sl#E=1S^svZY40D)3qM%;4@SbP2T;Z2V zO5V!k6u0d@)S2-5?Q^`A?4}bJ9|>1dTN9q!&*QKB<&hnB+m_NyGFqHTW~X%hNI%5R zG6~3X;M(y$D;h8WA{jAt5Mk~~S{snSv@B6wA^@^@yb&yx2S8yZ5s-!_^`(N2|1OJP zn15pM@*@+wcTbes3HwfYp=uyAH1)1-Ps=d;Hf=N&iB zIc}i6M?&GD?@!-GzruX5Ye`Qg8fFPZyXavlE2`Cx1sbbMjW9zTslz)z6wq^XXWui%bW%sglCCmZ1_6WGW8brEX?nopMPSN zyyb#J7j(9DDvfC|w~apTEam3Y%H9j#*u>NH@85lKJT_OU*u2$PTo}$Mb;Jnbjemml z+>~dA61Fq23+OD*60^+3c1v%8Q46gm2TAa)oD~khoFJSbfG=loIwPZPE3u4Nu3;s6 zq>Rm8TN-cz&TzS>yBWY=>XzNA1L`+w!i^aZSh5SCRp)q~uQFpV`~aQN$}8mSho0%j za=$uf&+~7z$7tyy4RV_FiohK((;flB86AB4uz#gnX~GIvfEhEpRE4s*-$gb9BspIU z2N|G3lQ)-}nZYsIyjff;>{NOr!ZA*b1t#UhAFrU4PYp|{P}wWA_3l`d@-?;*f3h&M zX=Z1%+$={^)7z$%(!uFtw={QbZyx%s!Aoz;wcEMk(Hj;ISDQ|kNeOMP=3Gk9Guy~- z+mgTNs`}--x9?6RWyVULcqF?t?5{&zkSC988>z{#X5#>e(NHuI}%RdU1ox!2sg1Y+VwY;;!>{(2Kyt9Twhg)ca z`iv7I;ifSBUT*-~iqNSIIY31`*rPfl)=cJR*TY1ub z^hK<7-lApv-0U223r852ehm+lXBF();YP8V4q0TgQ!gc)GMD`gR`}#p&uO#N&psblKqRdS=W(4SIl8*XRDSP>}Xr< zX>5N7eja0I{U?%{dcuh$UnPFt6W=i9tH*8U@WJFr2Kf9uvFqqrDdAt7#UtDocuenD z;dF|flN0>E=o2LW*L;HNxmC!sd;+fb{|@Vrb=Xqu*Xxi4kQ5h_6juSKYN{5_R6$L(6M zgvkv4kQX#7_6nOLTF#ZHUwbwsFs%uEjAGYJ!KclFAr>5z@#1u3Z8=hq7L${~i6bAu zs?O=dsqrkG9DIqU#-Q5M>G)FggHz6*Z~pjat60pr@$I3^P031{S9#n?`Wa9PT3v_! zBcqLt_{pNyW9Eh)Ga!atD@0nDRb)@VO(CS2u`%8YJvGo`#?2o#+36i-Tt)+!RK|um zN>1K=_sJ{nzVAdWow+!jrr&()b=SW2t*^cMt%(!&zwV+-Z@S}z)@Rlc?h-!0G|~iF z0IkI3z(gM4{if6PVPbeoy&GGB_R)F9+Vec`9h_|PxH{8lHaGUvfz8|8$5*$quk$fJ zCt^`lKW4?J*|GFv*~a+f8as39LoVd(#xvk!@Lpv>3Q_1}E`$G%;tY|)Pk4esTLAmn4zB*3 zyh#7nWdgK&_Phb|F1kdQnC_k+u-!voax36*3s5B|f()J9F4WmXIRoJej_9d^g*VfA zr6!9)C6i`Mo-kgOFS^6kcP$lzTPR6;Z`zrg-#(ViXtOw8M%yO&9O;#Tq!pg#EH?Q@ zFbiPGjh92%wuCDpGtE8~@ItHwNJZU5v+r@k1r3m>>uTb5O#ceNN%R~TU;|KwzEcu1 zfezejqY{xZbxuB`Mw76D71!J3GPqcRy(zJOQ^WSz8h}>NCf|00JYIuXJOo)H54sr4 z#xe~uabA=#U&c4u?1TD-{`Bs<&zbVRm;H~A?A(3#Aoy z)t?4l`-Jd5`iOXut6*%B7s*5LmCg~bOJd)D0w(rgZclh0QN{a78J?w7S4|G4;p?iR zp%aTRhu=h)2Ut6lf>98Y-5-kM^suR$53%t5YZR|NO;?GHK>^UX;>P30`Hv8FIwV%yvG?+&kOs@W?cn{KGW$+7n zIXh1m@e!Dkl^oy(Vo$4a1&T81nowxtbSu~dx?oLaBUH9qjFqB88T=yBIMk3cAn8*rs)oC~b zTQQm83u?W0d;`q90e8LlIQ};KPW2f8d)q2U;u$<*DZ}9=Jc?>h;r5$lVo-c=)Imjc zBoPS~p>RBTt@P@}##A_Ot;Kw}#x#>Ie8U`6B5s!}QL8Ql_To2^#UdrEwFGl`UNkFq zPdHg!s0H@mTdPU3))uO$J6C_7@oG!F#pN_QsYN*bEPHPH=~bWb8>?Srr`;d`LM||y zFX4th2{k9I9AHn!oCFzrHC3Yr6+AluBhNoL8R?mbWzuz;Z%+xoCKx1}?RBq}%?9D~ zR%?e^CA+aUW^#tC^nk%`U_A9P#xDm}|Js!|RzLI|m&q7k#515~b_VYfZ()4I&fQt> z8;5*^u!v@U?sK9(AkXMQ%`}=xu@erb^H#ww3m+Rl)CemMyT`jUZD+i_D!fm4h&{7p z^pRf>j^o~Cf2Yf?<&D1ICG79}l6Zaf{|Hag+r(Sh^>h)ghaNz`k3w_Wj$T8bG*z$>^cyT zr{_hB={0b^?GkKXpN5qr-2Zb~;KQt$39pHL4y=Q;XwYIZf+ct!UOsvqygmvqArsFN z9A=-P_P;16)c>pHW9fo{X*V$A>glU5>s>lLv)gD40$mk!MNH8`dCq+*=9rrpMCofar%ZWc% zTuwz%T$d>d`|48I=lL*`r83tk0zsW3tp2v}B)OEyiQD3jxtVHgs^CiiUx^EiAhvUp_!6sk7hH`%-iy5hc_h}3}Z$nLsn`o zn8eapVD3D;$gb@ao}d|V57RL*W)ttj`*tz9G{hb3T9jS81?}t=?CgHP{;gzmlDBbP zv??&2oE6*bnlivOFf8EuD*LzhiMyHDImr&>ZkSr68u47vI{-?iY0!(EAZbklFK{lK zEp`W*9%^LYS#7ct!xw@Cnr!F6kT3&7=ZdjdF?MuUyS=L|W@7N&1#S2aKdWigOAm4# zP2R@%tg7kG%h>a){QB{?!|UG><`Yy`FCqlKd+P0Q?{R+bUUu(C`Mrnm-b2K-WNbW5 zrr);!G2Q|8^WSDN9AQ?sPJWAk0~l_pF$XNX=_)PNW<9eUHI2y?wcz0CCc4rOVv=du z7o@N`(?uqcvHCuI*Yly)^#Mw(h^2JV%u!;qEQ+Z$_3C-4srp2%B}&Z(HK1Ww2BA_w zXCG78&mo+F&Ztrin9Sd1+IFb8xWs_LX8e|(#9$YBZ20ayo?Oc5>^Yq&pW^W)zmW9# zl72tF{!QEyj&g-(cLlvJr+>Gfz4)E3huMG32X&%7G_C$RoB^?rEXp)>oPqx+fQ^~; z(zo`7iLqh$r)d=alE13|GIkdKhyAWc_*r}b^hUMA&*+cX8QjaS{|L_rEn>9+I_2Z5 z?`CKHMaG430JI4AI;^qjfEveq8-Z;XHnc@H02IV%&S>JA%sV^> zJS$Z0BOlE~XS|Fs-u&25*N^#>M|@EmP~RT$MYRvhUhKRlL3n`d5x(+j&%ixA13w;t z@D=S~f!0L0nOraYJ(KmhRf}ju`ai|!@kvI1@T*_<(z`I$ctcPxvPx`X}*t^^n$I4kyE5rxK=P&Pc@R3WwNpeQz~P z~})4;D~TP^SZCm@+~Q3BONf& z0ghJ{9X(C0o02O^--Se64kidU5cAwX1o2%jh^yR#uwor@Dy{?+?4WZF^v6`2d(=}} zkRizi)bNlaSqs6_`D8V;FOo7_Bxk~C%NH^Mvmp52;J|1H^O+I)bex zV)y8?+s1$ntUwDqobvGo73jTaPt;5W{sZkYkZNL$E!s5!TN56A{VCCC5{*uiDIT9x z1cO0<|1%cyiMVW({Whb~W{lJ7L^T?-I1SVh30A`sHpdPdHP|ABTA^9K#O_a0Lo5~u z#)7_BSh5SZ+K;~Gh+wjY9ZsVuHl7^oP=i4-S`GGapq2I?lKqm%A_dV_tXx>jOa-f= zU<)O}1^<}EHgBO>PoSQjNf(<&L&9vFFUV4BS283=5)+#y5(<}7AA9);vuWc@3-v-+ z??jmb(4`uh0T3_=bBmH_;f5ucL8^<}xap)o(cP(4TYs~Y^1kZFcb+s1c(4w&nz~%ex z2=FqlsAD*I3uDDS6H&A_%2DP*_F<1Y3m_jH%&rED_E2qW(TbmLjyfzhn^7^8UAew;sXdit`qB%1_#b9-*wDtjbzE#lbf znS2({I=T8H{a1F@De`(=)rHOmTMP0kaLC3eHdYb~PrW8sxXkS`|FZ0{B$#M&ce@*` z_dVS1F;3WG;BCl32*r#rRUj*>33l{)pz#zWk3AhbTu`B=7}W%B!qa944+?3~XtAUt z)KZF!J8T}47!7!-Yw#cbNuTh5tjLwxyd;>NyWX5ndFq$M>7(*^E4*LBba_#*uxHAW zNkAbfazreMG4-cPtUc9Ky<1-C=lBzhH@i7p%c4CD4I zmVIvtf9g<5_6tF$tqfRsew+ddY3Beu&c{R0jaj6uZpq zOvtqyv4zao!UgHe9N@yjM3O0vOR2kN$WN*kKQESO7=?Vbtk3JyOMGrnugoFYM3XVu zWHrYFiK5$`P6jLvn|I7r5iLe{xmX#czH^}Eg1NUT(jxfPSyDn5sCPilo}&zia7=QC;M*BMYjQXHtZGX9ch~ytC;#Wfv-9k-ZP{Y7dMd_l(Y2f_ zW<8bV0=)Lv)#M||M=~Z^aZi(Flf{~?vH#IOfp_c^)%gFq3t>vsd<-WXy5>>u3knDT zE4SY7+RTx?YhuSIn@yJKP1$BApY=MdGdAzwW6b$7`{@BCwRL|dS*VBI=yG{wgA!}) zyms3~zB_#Ace&iVPqn?GJx~D|Xa2_DiT9Bi(0>48(Jj^c7A^9ht#_-K^R4lmZ_}o$ zIcUU4z=B`Su6{J&e(1txPFjv{CM`0l-UJAH06N*2=uGo6iKPTfZ2in7^H?)Q%zBoh zoCFr7>%iu7*plY;a|LJ88jAJK6r3v1Vk78E*Agc0@P@o{h|2APQ0#PycE8Ubt8Lv{ zi{*Y^E-?-&SnTPBIOYntD#@DHHMQT~b|vT9?YV>$w+7;=U~cE^^jwUINap0scExG2 z#e%WG7VuvHNbLp2UjgR9+{nAWbPjXZp-oeFV{nq3OG^$qy1?$G*biK2>|8!TxOS;Y zMjk7-5`f+SaMY?uu=TQMG`V@NwOd<;Jd_#*vn*5XDc+p}6>`oI`OJRwP`)uY6Cd0j z78cSa-?4m{7Ne78l%3Zs4o-%`D{nm7DTfby`GQ@q55=A;KrCBe57!aiLUsevUPJ4n zp5o6Ef-aLSyoeM+e7z9h-fVI86Ix|=59V!la(3A1QfJv?6}eiNg{5a?w#npZFMGnB znBum&mOy>aDm_nP3-ChG-OaN{or2a=apyFm>{-oAfIFE8F_!Vz)99Py6T?Xt@~II%_PKb{YOxr+O3^D?L@{d>6+xIhG?7sx zY7oR0lc7Ju0EQMN3$>@3hbN<*nVca`cU5OEt)wkh`=;I5%@Lc^D=A0pLg+fbp}ced z^@m!LPm*r;GvT_`Yc*vr*we{*#*WS?OYZ3lxt{$#`4O|D74jN_ddIucPhi4B`?6d} zcwyL#)6!7y7r0m%u!j>CYU4r<0}KR9VMeKf@{HB)jHa_d(FCl`L|+L*6iRKSxKV_zG?^q%RIn(aw9grLn#|@zuv`i!!o_L7Yw$ANe#b)Y&g{~$X%@){g2@>u zhRd6*4!2~4AzOKQ0ud1Xy&bPJH~ ziSe9Sj6EqQfRD(G0AU>#PEJ!El_KUEqtVYLwXpMiuM|V%$Gb z^~#djvgyE)3j?v3T(gA+e;G77W_?U;J|$RfiTLJC&0H=j`)DyNlmm;hM;0Qn+;1Ma zJoS2i=<0*n(*1sEVeqNurcLp<-6BjZGUuNS&|q4+*f7v3axNOdd9Gx=hzvvnJY#U{5pGp~n0&^EP>L3kJem3ronOhHa| zO23IiZ)19vvN+Lel8oE|$J%{OxL@+evo>o$u{g}h(Dh#GwfmJ!mL7B4oJz__!>NMR zBzWB>$&yIy566X6+^P)z&SBl+hi?EFItG zwrusrrgM8;2GQ!UWMV9+DJ#y9)x9sA3z@I{=&lLJH$}$>!txG>H!)L!{=xj<`}FIK zKWCVq&eTgk&v`Rh?>p8EIa%pWH2WD&-3+E5GiB_k>>5EN6-*#>Go#@)nr|a4UunWf z)UvtJnZ_vF-M7hNvc}!iPX^0ClytM-RlmRvA`o3#w}pZ0v?{c+e|%Z z&5?DvcL>u|%*iR_G1kc^G7X;-UBeHSCWTBaX0ds4>CY?SYTX;pT#+nVL$b+eG?@HS zmKw@8#8TVB`_tw!Kpim9Wti>9P%i*YA?7;lGJ(LSg(J|d8i@M^5coispble)2{*eB@zi0O zs6U1I7kwf7JY(u50FcQ+T$3qP8bC;q5pukRgbXagFi`|L>$^^+?+c}KQ*etJ({wFn zCQB6!2wmGmQP6tsTSE$_hr!}7WaM5YUGG)WkJyco&O~KvKAI?7yn;?syTuw1^Krko z<8_)%)|u&xFRz$eR^Q-vQKf#+;XZr-GeFG0UCm)|h7=dAW_JQztwxjGC#LJk8K2_Y z?_YBG95e5J_>zF;cWN=m_vtT%2gxCFKhqzF0h33IDY|agven&@nHk{Lp>^`$Ba#p1`IazFTH4JhdIZMU%6xfxM1lUT&F*J>$#k~W=7Z-w=PdXgDp>+E zYUS7i$c4kiUySNW1_qi7b5E?*&RF3wnG#VANhIvB1d=1Y}=Q~Ek%e%X}`CMSbqatiBt z%xKw|J~#rivLkkxc8{X(k#~_B88_w;H9QZin!FGf5icxI$#am;t&F&>t;pjYc6BSC zf9uOw2Eqm-e5YQ-?rr56yDA3`O=D6K9Qm#8{`|typ2O(f+YH*eR>*6t`DhdEI%QUS zeQeGs8>g86*Qg6lJ}0kl{ZV0=K(JjfJ$M=!lBVp&|Ho>kE@g2EqIGjTuvan(HNT(f z24hxmx}8Akpnp?1YBoq_cF`#2Ma%WMJEj)V5ip8|w^<6=xL|B86g!Za_3U*OOm>?g z?@|orBg`LiD`~GWH4zwdq&Bnjl5C<$x=1pZ%!gylPZ%3~U9dB{m&jHYO?9(F-yjRh zf@EPF-ke=?6Smd6n^#oQX*T-}t~nZ;;l>8&<;|{s6{80j5iqAoEFxiy3i#F4 z%@Ai#GPX`Oz)dn|dBY8$Ba-~||Hs*Tz&Uo6XXEGGE?w#B-m9y7)q5LBBh5%N()5|# zneBaT?|SX^y7z9}3t(dd0mlYI5+I=jY$rgBrP;+c5X^$p+V-pzf~ow6vZUZsu6tghkvM z)Qs4C&AnHO)<`LG-jXVNOzwfuVx}0#pM6?;!$R6RoQY^b#}vtSo=kXLkMqyoU2AU} zGrYQGsnIj)vgVDp$`f-*!5^u-OF1Jx|Lsh3Up=jwc&@17RP5aQR%72Ukok)eO|~2c ze?+2zCYVCnBFSxz5TohCkdAU>1IB?o0kFkTzz6o>SckcXYud)4LER#Lm%m;4MyTV4 z#oqC%AhC!Q)w$!drODAIjeosooS{nwIhW;27GMc3*$c!T zH$pk`9gXg;6UWYE!s<-Dcaz&31g#~@_IN`()^a4FjjsQuy8V*2q$gH?~NGQT0rIEy5STAE+A>rb(~-K z#}c|n3I=BI_e%3b28y2ViM+HpcA%(;0yeyMC~XWar~%uPn~9IwS6@)XIVt0bdQ3?Q z?0iEhbE)Vt0<}#1EX@cCo{4&V+`l!LI2;LRm?Oei*RtVMI}9H{<)hO74HqYC+k%(} z%|?V;;EOP8Y1vORO3*BmrkWsAO}E-|ids!6;Gjgb%>t^hHVd$_2HTF1Z%QFZNr*~= zQg%4TvZ^IuB>@8m=)GP7QW6fLxzHXjPX4ZeM7As}+Bn6JaJ@=1Wwh?w?dnu?&h`{?Ko`rc4PRSW@gm(5`}Y9 z$j9xXeol&G`PFD(VaeVY@BK7;bwPS?=6N;g7})&kIs%y1BEWL z;m6lokI=I-cuLkHxGrn4g-q1+BAJKs0_y`)ne2|5y(+OD|423i|EX+7;ZLVKaOL;r zJ63-F|0@l`|LH6V%x!|sEyQ}~AcoYUnUeWG7V-s=(I%70R71B+8z#?@$((C++xpRo zkv5sk8kE~ zn}fK2LC;^>(D&32mDhj4BZDt^{M2tUZ@RYT{-$*_{Vul?y$i*l*KiE8N^5W^1wfQ= zt)AC=l5#51@_av0*={zo>1L>x{j@iaUv^9K!+zRF4)wgqC6W|{+(_;eSBB+fEvMb$ zmR5fA)H$kp^N%+OUeyQ)n(U2^EcsL^6p-Yg6)lFq(4Lqp2rN(F?H}e}B)_L2iUU2= zdVc6H)MVAurQueKc8vw7WQ;taHhMYo3vQ-2{bF0_!+F(k7QV3>8f}^^to+ zK!iU==|dva_svkMvyq7@MlJx3ZIL=>G>1vd-xl=CW9hsmxx2Myf-+I#lst!jX!Gs| z_wBl1SPT@RO~W@FRGpBf<2V-ysbbaEVrEcQLn&d;`}Tk4wW8ubBu6z)L=$aM1>v{#p+Gq9YbU=L@ksMboyyF z0HoL*JpuW3h{a_EN|ECS{mi!TB+YSki&5Nbj@G|`dZW$y7a;3({Mny<8M0nlcU13= z9Pc*uZtFPejkM}@On*Y=suwRoxF=d;n63|Ve8?H=P>&CVXc)8CgyuT@P=!q*ZnleV z9v=*twO9qtF~vjeQDVDxl7fmmG3>}COlAdpHIK@1e9-oJRqtFnXhfp^K*-}0Ft@4X zjr$D$U4OmtmJfU&b}nBHMMFN1FBVhHxOO;dd8e25?)O-l&$l^z?tL@9yk<(jeJlS_ z^`#V^-80!>y2qX40vbkthgcr~iOeSL#mWc~P@`9Xda_0@K}1}cm6DfEP)jzTy~QDzUiirpgA%lmu0YO=d@2;0 z_mTyGzh|l8&w{;8#+0|ptk7ZZw8JVyTdUL9D$P5Q`1Ft%RO0iajfHq6lR0fToE{F$ z1z+z@9`|AY)}m&ZhEMZki`8;{ChH$FDhC#IL-FT+`!DNejYH9XojZkr>7*pgg6k0)5ciy3uuiY_# zg7k(3KzlYju+4l%7wqR|g$(5#+Nnu0J{*ZR#^x3n9)R9Bjf!DMf@uL2Pfn@a9xt^! zEs3`Dq@~_W-?cloGl%CfFiif&j?4Q^%evawGI8~e>HSql@F?S)#GmC;<8plB{H@oV z?-Qr=GiHW%#k9I%M3adxry`OiC`LB;!3S$u+n>+1a`AmlIe-lLqj=`da^^@Voy59M+4-+>3M>-G(pgf7N|m zkG&56wEyit`T89zzvb@W{z5NFp#1LFW$`GUMhx#g-2XZH0{VAiU<@`#M-u?s7wg}FhtXjqq6C7{7|NF_(KI5WWeEVO1{a$^1AbO z)48f3%pE{IT@x>~=0}*#Gq&VSp5+F@UBNSUM9i?Y055o5H9w3Nj>aj38{iY2yjrPSu*O z)SKktDcR5ZS{^lms0oeAhsRiQqGt5Mfd9#uy;Om5h(R1il1tFf8fLXvg0oBHBV)Z} z$GaoLHl|Z8x{X;RZqsGwe0(WxBn3&7c@OX7g42z&oNLd>&zHvH#qq7??uIaS)uzJh z4vggGi{8I|&&u`5Puz9oo+~apeA(rrdDUlWx}u9gK098zpu9UaI(xmC9Tvn)GSQ4@ z#q+f@YX{r+PF-DF*iv!%X1EuzMr33h6^SMSgngdaMyUq0Eu_?1i4$&N59;Ni2u$$; zp;9+x9JTpqm>$lcOD|E9;1Gfaqwf(%4o39Z4DsciYO0pP8E1DRzw>HxH zq(4|lrTBXzsY2Dqd3cHAd5-fGyh_0FXtCx*w4{5Y%+5=5PhgIRyyR}EPZ}_>Sj5A3 zX%mJU-739a=-h*wJs$Wr^Ftt8q^$dA*D{V`Z<>Ne{cgE$XC%bP-JsF!DnxukMXweVc@LMG;&IB=y+ zsNb{`pr2S3D{vAJ69-TUfVlE&Ow5iD-7N;Q`3l@=j2W~N)VoF#4Hke}4h2V8Zy?(I zP|niCSSSaX<_@GE0=VFUDvPDg9N!_^mN<~3g^F~;c%ZgDYX>96@p9bu#;rhDDdIC# zLCaT@0l^>ghNO@za|*}r9u8C;J7_I9<=u&p!YRDZ-^fS&sb*CXxuBp(8lO-D-jaj_ zG9RzN7rOg#63s#+2j&DiUeoT7%VRJ@MuV0YtnSmfb^8?R@Q4L;tVCyHxiks-sWe0s zHxG!MI&B6{Z26MeZBH_7-19*L7GfBZ&E00H_YcGF9->(>WYAWbe{z?1+^Hfn)S(lI z8=#~AH9v zlPvd3Jj3rtHuSa98-tb#95p8g{4wGQ0IL9c7$}^fI<^-A#EM3{AO>C9@eVcR#%b*) z8Tzgg_WISRK9|{8tQNVM;8wm8)I46vim78^pHCNIPlvdB(67lFN@NvpK;V}OGSNB` zl<%)nBPAG`R7Vd&-l2I^rGQe8j&=dXL<7R&@R!bLS5fnrqoa3#D)F$MWFipr32wV9 z4r~e8WKDB|(BrB#QW`7GW80BOLN+DovZ{Ez)Ba&0Iegvywqo*OgRc(-li{z-=-fYK zhJAZ459od@H#n?%2;`{f|k1uhgV zr-=oCIjTJ(Q)Igsdo1>1C8 z7Rl>B$Mwkf)X-m{Xtn8D2OCkUU!){(~~c! zU0Nm8gxZT7D?Au$n}b)3VRio%r9?be$i~VwC*g3(aARrwnz^OcXg)W}_4dtYs<}k8 z;xp}~xyp{}R9sJXDv8S0u^nf>^!;WwKRUV@QTyi-3nMxwK6|oC$N80?;B8!kj6XugdGT2k zTsc9;53D?oe$74Qz8=QCzr7yjrGFOp92e5FWK*#5pRW8PnU|}{=bzx7LP7Kqgo!Bu ziZ#$YCc8CkP1>RYe7jft@>=ligl?d&b7_sfUxr}jzeL9ui6VIecL724#v3_ z`J6cMUmnsWc;59_9>kxdpD&_gYoP7vCY9*so9WQEAXwG~<>V}SEr4%rb{hNI+nbanbQ5DQf}{KTtW*3vXwGGz1$ z)l&>A4h$;GjRHC}yu^*Kv#+k-c0m2k70IRR4vuCDO})5tytrq6|Ma={T)1%YOzN`z zlhxp4InmU2;7iX+9I$KI_|VOT+{|R!>ksaVJ41`R%jZ5aQ_+QhhRj->0m`kNMT>#%E;WS&pL8#jt@rMeS+W1-J%x*;rteI75BTfsi^P4 z7h)d@krM|TVP1$p+6_pxLFD@PSetljOwF8q)%K#A9*c}?<3U{v5ufzXhScsmud;mN zh$j@tdbT7A;qwjT$`bgFufum6A0prVfcxFs`vLwz^i$$d-saYX*sWu{A6aBCO*Vxuw(Pi#y|*wW!n_(Pefk4x_r0=&X;>6yit zQx7NoUSBNiRPU>#TNA}_C^uYr^YkNLB~jX2^K3GWu}3OFVx8?!GMo$xYHwMbqn__x+4C)WMP4h`x4i|@KNO7QrSjh^9W-2-DMAherd zz;e`!Iy9ZqO&XM+tOFu{9#d-&JQCJoBavJ0xYny8CynU+mu2ywJIhzqQHQ}LWid`#}D_`k9 zO77vUt{i`!I}INr*6}<7WLKFjzSZb?T#|BhqANC!71@g0l#3ko$`y8OEMpmoChP6A z7AcV-QbOHtvTQPQN-eP^*To&vlcy)II;`5dr+&B-r9d98%MbR8}j3w=o(_r=Fu{O-GS-uSpPTf3Jvg( zi136S<05|VHP;OE^hMm6bkF@9mC4<#xZibvy92Kfz5ZpUztOk)Uqu}KuFn%&J&ro) z09qb~Z>Y0x1OJ=S+5!Gq8n2AeO6;1GH0olcC(*18kYxLD9_5pR;jl@8+CO3yU== zr10lnd+?BKX$6n7#g|SGSGOViUOupRSK)(>ppF&YivV#>MxPhG)hX zYfA-woMLTRtc{05k)WreVSf@= zPCtT&$1-XpXvT9I|B4;nW`Ng}=zAVs7_SUt@!foGo-eTT)t}=I;h#{M^UnUK$oX=Z z?+3OiehaZ662zOKIn85nDtBmiL-oXJc`YT!b^SWp(lDYj(MjZv2brw$AV@uE+0By+ zosvV;1H;{ZZU14zuP-K_@~E~N4kVHSQdOAvkzH| zLv{$RkNPI$ct%hfcGN(wo3sg2PjG1^5K)TEs)(|N?AE~TSdLLTyO__dxr+h}P7N^F z3{bp+0_Y(YyB`}g36ta!Xt_4ydLsNvu|5X1m`nyejOYZaAx%Xl} z|0*I^K8R+BwD}H_ zXJMSIWjjTu>DUet7dfKi$fhgJao{o&HOF@bU68(|X(2Hemw3J`glB^hk19DnuNKo4 ztr8M^lFVgOG1E@)r(0e=lk-SnVWDPC`f*@Gaw6rX)qcN7zg*?2?$i(7|;2UTv zgA%lOF?%8Rzi4&WTbK{GS9 zj9w=Yhu7wnDj*B!DfChj!bR4KB+QKFNpdUU0OXG4XpH7oY{SJ8xRA$^+b^u;TEL8a zoA@7?PuPBsm9=wXQcUQ6(HC+Y+X(WFK$ag#JG$f5tWZq1LYf^YGkgCE?!)Nk{C*Th zEt=T~!lgxEu>jQvlx+rWr{e~W>BTHdKD1sexQQ_tz~L+;`gp3`$Rv~5m?(=vKH!V+ z`^9!5o2#TkIUylSK98em7W7;9k$Ece6GU5NQP)d3ySjexW@&=Vq{}T0c)Nm48bhW? z5{M|b4?Eiob;)ZCN95|fYT7A_pD0LNEGs9}@TIUe2e=0y&Pq<(v)(FsylLgT=w$zE zWUZd<|LV7|p>yz>mH$D{_CJq2M6*M*XTam>r2{y z%rz6CR()jLf$!SK-Hn6%?GVSqO-ZD@kDIu^z@uazTVVUCjUIyBM2LowOxA_QWMvWx zJLe|AfCAJV5>?%;f|6Jb@gUetLHg8Gw?EJsbt=Bj-ix)A&*qLtN*m3Q`o_5pdx~{# zM9D{~jdU+>p&R)FC;(>?u7Po)!8M39lm(QRFtr^j7KzH5!xQ>;--zuubLt+Wr3Zri zeqOE`oHFeCj~lp;pl|Zqb=kO)h_HX7V;$~sbb?>d1ICTm;ZyYfuj%hV-|2sZ$b&qU z2R!3h;$6ec2UFaWjFa$>F|(~w$X}ClLZw_Jk+@CICM~;IM(gAP_~=9~q={h%cav*$ zIjSp~Ojjh?j1no)i*ld{AbF8AdZNi@RE0WIh)!^n$#x(KXvi){TuPZmAS^)TkexOc z3LDWe)k);D@p|5_V~?a%{IP)U;c;rrOg6LOxLM8z%}6eUeX5{%r#*To6wq9`{~;n1 zFQalF=?&spZ{@z6h6wI$=pEeYlw%sLd>xDZ&!P&^hQytLeFA7Qo;KbQP6DSaAj%BN z$zV_l&nl%|vM9e&&w_>&yvVv00b?uhG$U%BklR<1l)JU-10RB}H01|quGNCs4)Y^8 zcLQ)6v=nFfL;ig&UGwvbt#X{`)l-&Vt+#BgBqY*4Z{!7^S8?pQ;i2Jlnw)9O%btMJ z5sK+RB5B)jU$>!2d^HW|6~!xv6i_O?{U-`1aSl@|9nH%UjW*H8D0#$InR7#T>u(}Jo$97&F4mJWeDjZgNDKLsb*-B@-W$#QO6XRPfAo`Y|MBN(kT0npO(iqI>d`d(1TLZB(JFaZ zr#~C?=Lq~jmhrFBxFw)Jk{Y;I#X|qjIIS|7d*+|8KeP1+UpSk zrzLF%7@Vu zrW#wDiR?HpNnFV9=OoQ%S{z@~L_H8r1*fj!q?{9sCIV_SX4rN){I+rfd(W7^ycJ92 z0>pE90?+8vrMV4-vzflwOxE!$WM7uhA-10Y^#fj@WKz%+^dU$!jwM}ly9^E6y0PYJ z??;MWW&<1cc%h+p*f`uT{L*lfQGI!umplMmg{mrS0388{S~i1bKfmr zpE$cd8k#w{@#Gy}Ocg$K^K0I8FW!~EV|H|-y>sv8%h);flX*SKy`G%*Sr>(=t)0^l z^)Wei0npzMTF6p4u6bx~77ndXXH-WW8>-|TNHfC*DVCD>Gr6}4N?=h|lIL!fMmEfB z4aw;{xU<90PuzIK>wWOxcfM?8M)qqdavkISpW;t&mmrN;B`$_H(CF!mg@k-Gkp~(N z8X|vZD|%<9HXqL!fze&~|J?oF7r*k<-SdBO{XK>J(;ubxRPFy4{yg_OGQX%Gb0tnL zwat!g;?Iv?Ro{5}MEWh!*xPQuAEOug=wDtpg&%H>t(*mVZdd1>XG8VM28cbW5M-0UfwtORGUvQ)Q25%X1P5tJjt z0VUsDb1D4sV$=qT<=Ls+s|FR ze$w9c_V9ZwUn!SjxGns4?x>5;8lbgghTftW>bIb0&_l%NZP6S&a?{=hg+;O63Cld? zR^fHx=b6B*!W%ASmqUXB0z`kw#Hze?ZL;I#;KHKLPJ$R|TG`kgeH}R{{ zN4RT4WX%BUVAra8S7WBpyb-`fVft?IQ!l9D{BlChpO2~SIdmpwk(Q56b z&9fV-#f(w9eAi_BaBOq)`H|V|otqNbBSwnFtRdz#f(odP?gUTZn8mbGtZ{7Eou~$l z8yIZA8G1KBt0Eag3OT6(_Lu7~xb+D(P3+qVw+Sprjpa&}rI8s)PXf1gDJ@1cm%Di=bY(sT) zgTo!*MuK_On_kRso{ePnKzVE^)!shsJCg5=N4AwDJ+?ExW1D0y&8CCKgu-uU9JkkU z5226qmjZ6E{{#NrtGU-Qf1WOBPpm!`iC$h2iP#ZEnztpM3i{^CxZxJ`Od z%DdzLvGU?-Y;*^C{iAFgKezIe)qLaSt9i&GzNY`e>iAZ@6v*NBDS62M;P1xglJPvQ z!PUb!63FM@M#jHIY&aR2XcRin(Fy`3*lIyAJ4pHVdVVkK44tM`wy82UVV`jp&r9(@gcVBPC~Lq6vVdNB~+Tc)G^ zm*uKc=($0z`uBW(8r{G0vDF;s_sRJEG)G>XILpnE-GtwZ-$Zs)g<|?Z+dGu23U*Vf z(G%Q`G^G>3tOJc2%Cx;a1jJxBag2E`PIuFCoc6PeTSUy%z&6MbG2_>A3?$tPr)ZQJ z08l7Sm7xNy*oh8dZMDZrEn?M=H!1I96}#MsWW(fGV)y6aYUa%!^Ja(2p~h4_RmhH- zUT-aOMyU?@U4JZ^h!tNqyCr8`sSRzoep_wS(&Cn#Yvd*&*Bf>*1dv-M^BI{zgIw=m z9OfqwnL=x`R6lEV?%uFE8vXWJ?t4brXSw6CpIC!^L|#wV?9=7--$BPeM8=apx7LlD zbo}S;=a4n)e;5mHZuk=JE;9ZAyPCxxtmTY3qRENRe+_<FT$%=-_TuLdsV4G=x= zajae-C9pLVs2&4|J1mYRxP}|&&<3)-RMH@a99dDfg*GkmENNVj@}>&JD)h-1Nir zeWyO}=BUZ{J;dYz{t-$J#<>uE-<|y%SswP3+-4lTy8lX++g!~Degf|2+sQ#b5Y9K` z*6=$}29?q4T{MMj!4g|G%d#u^M$ZFbz9DLX#aN_2M$wEe4OF+p%-U?z^+X^C(~H?; zB6x>ARC3#+f%E8xeU)HUOj%=Dj6kFkvTI?mEnJhARXq+ez$}#3$}~G|T6Gq( zc{^Dj-Q`S{qa&jk;o#UyKifTqQ+31U61y}!R991;4@TNU`R&uz$VHp;W2Z0dZZB9P zt^7Q<^}-F_u!|WY_fK;G-=p(B$Ssm_?mjxcos2{7@dxOPwdZM0^22Q1sQg}8)gA2f zQuwv&Kaaltdt@C~*crxmqhAhkn4E`xe!c&%=(%WZOJ({()7|0o-WxIN3?q9L@~ zWqAv`c4&phV2Rc)F|8e2jW#TMD7TvjIJ&ApMWC|=;xXf>6cmcgF2x}@!n`}#gScfY zL(5beST3=CgdP6A=l2)IYfs;8#Xvvo>QJ!AXRWxrC^bL!Zc4Tz;7EL_7qMr_$j&~gECl@^8YSv0u> zI>vN6;bu-86WOg~L`u;Pyfq@jJu(0lYji6@XP0DwnH(YN5%dbskp^X`=^;uoyQ?N^ z9S;fGCZ$nvsdYOA?y;5MVE*+BlXxY)X=^=HNSeR-E&smJC1>0COP}6;__8}O&+WJp z?{{B3Jsi>&DYGXZ$q! z(aXkn)6ems$JjX7|3t<^?jP)b6%9j;Y>{U;rl@W!{J0dg4z6$XAx-)id`=pPF$ zH;K*FO&JSbUc??X5R&th9N1^}iWSPC1G)n$`?p5#jAH%9yXWdw9k4FM#S#$9Kzbrz|(ZPBfa^3r{87;M-B*%SH+xGoV#Mn{J~~S=6MgV zapU@)zdQ55O@*8N^VuDZiPO)V$lJNushXY%75$@C*f9l5c z&c@u~v!~Q>(T-P25gg9VcGl)`<>{#DsB+xKtMhp=*fuktc99iiKKtJ%a^Y|B1LTZk zh{bz|u_AW;EzmKL+$y>?pjAqm%|e#ouatrOlYJR@pJ#)uJ zH~2EuWGIF`b^ox}UkesLsm?|sPV92u(0FNFk@rp=-@GN4G^2}a{^J|yo__?LMP$H# zy0YQt_$sbJ_EyuyhL5hCptztf;|I|LD2S$Meg`p}Bcg555Y1CrG;D-f^PCWbu2f2j zg@|QG`|%RPEJUdRWB?&zRwj)f+^}y<&&9D&Q7#Mffv_)k`DKx$Hd^H*F7mgEPw=zr zBHxdnB-fQ(y{;px<9C8=?SH$!ldN8no`nJKL_#IhAlJQIaAR%|>k2k{mVA;}JiR24 zA2guYoVM{I`m{#Xeiy#wm1*uK}IA?a(aJvYD*YuJPtkHC?XI z1+KsXJ9V0mBtoHwps-n{h0QJ?MLrd;LcAT0(v>(aZpA4wyuuq9NM&Y#UkOclG@Zkh z=w{D2MX_9lE46gw@^W*&G_t*Y@pc!;q6u=@_C(9&9Vu0xcr+F+gpBo=90}!s)ikqi zW}=N=%)d4zd0Lp{&H|$8*0ot!PEyjqWYFUVpGblEUE{a_+hfAA6YlPX*JIF4`^oP z`0DtuJ01|9Mi=1G$lKT6gMY3!h%a~={@=$D`?Ph>t$@$>(XYOIocVl@J~|kuXNTg4 zh*UnC%H$!M>VUFc!;fr;`Zj@%UvN>@4Qj8l3?QRx7#@OXYPmuQmW&>PP^y>aLIh)3 z%H>%=b<9m6QOE>K&8()BD31fxs!qN`UVxujyl8k@Y{p~zc~3fwbN=1F^dqr%jEuoH<;}1|7_(3dfh+87oy9FP8mbXJ|czICq}wr zld2RS1+OSfr4V`Ig><*$lf|2cCpU6xXehaJDX>WivzeO8!>6)TAXcCE9C|ja>piULb>4hb4_n5VHYmh__N!Eu4-dBgRA} zp$0=rHqy+2-!n_r;WcC(yl5x!t4>EBM9Xuq7N&fX7P&&7r8HRx)adPig*bzn&j}sv zB@25OmkF((4UGT`EmTot;ajJ^|Kqd9u6Jcp_A5PE5}1p_I60Z}(nG z4FBP!9lQ3Q27IDj&FtyUPvbel#m0kjHp)Q&{PF{M_Y*~$oKSRtiTXI*?>KKJg- zb9Cl8YI(a;-yC=86H6?e(!nE&U$VS9uctgg<8_iE$eJ#Y*;h=M`yr1%>=DRxb8X3i7&m|104dxWd_1hEoFh^2Ztx)Hq+{TOw3HF_!aWOqLl)^Ba~+QP~1ElsG=x`d2gqIb`S zC#G7xGI`<(BB)-~=$^Hj#61I^JkmNgrlTrw{5B!23ukZxdwzr7-2^Gs+u8HCH@Y{p zj%{KOW}CfNL+pIaFpt*8&pgbE?icj(aDBAhncBMl{41`$?xtJrgz?+W?yazKx{Kg* zwGH#hvCgI)d(OD&Hh9)!ENInQeY7<(zj)^1>u$K6zNc(HS!v83x$v^9UjYv_X*+K7 zc=!zV2}D~9LsnpZ?4E0`I&{`;t*v%JR8=__+0=Q(xd*Pf^1jiHe(SddziC7b!^eK{ zpH0@Q*=)6*N({+IR-Re;6gg1IR6QEX3dZR?>TMX z#f7G-d-%99Q9Qh~v~lyHayu9kJ-WA9xOgA_u@N=Ri1`u+zoQ1$l(b!<&Q1hdll3_)qd>B11wbfzrgX zE)soQLo;X|ZA6>U3R)h6T~Q_p-v6_?xUS6mauS z85nqVGzy{h;bxO^QwGz}m#M&7R<{@kb-_m@aU_~(PR-6OE>U4*^hT$tbJNR|Kt1U2 zwiMW7B2ftO#yBhUSWx|1FdVDY>g|OMzzS1@u8&aqLB*7d=qi@hnrj9-aND$lF8RmD z9{bscJ~VYB{@RT%b#H`UL;Lr?@r|FkpZx#+&%E*e&#avD@cxzVe*Dvi_v2@`UqRnp zzWB8lU%a$<(MlEG{IkbyByYTo{8)MI{{55WJ%jh}U-6MQKfa&FV=LUn=mnx9RIBD~`?skJ{ed$k z7dFm3oZq%FHC(ANJ8>KLCG;`=4n06Dr6umGl)JaheFKm3XOX=&0XP@(MJKx!#Z$YO zbNj?Gf#Iop7Q?mxXC0^yvj<%E6lFb)WvGcOwL8#Dgcwoxc&5hNfkZX$FN#JjAZn88 z^VnI=FZdLHfImyG3%Z;X?3}_09FKjxB?bhAXMWBIH;xexz24?g*K7cub=k~oFlGy7D}J zqW?M21^xf(@1iW~uct=sAZNtb#b>A$G_oRu4JIgf`0sKxI~jJ(pon z(HMIaTkUE;<|aMj8=m1iEx@$bVo;#(dSR{rU;*ZuRe*W_P~W$d}Q>?sFHc+>UR!@ulC~yz;=M`0-R?WltV|YjKg~KUThp zbN&BKW6>kDbFb_N2s`d7z~2RX8<;}{KvHtF{6iMuykS~CNv^m+}0856t2P_qp+cLC)93Mw5|`)5k8}nLK`)K6Y`-Kw5Pi7i`Ob;`sb$)=HNAp(Si|TDS`N8gmsmOMaydlX4Hg(IHsb~b z>J;P1xNyOchBhgzX9CSCR1;*As=koprLnaPBVUB}*=_+L5GuNqM0gdN3bfuXLiKO* z4M*{&_srVcvgL`Sv$&y?4Ajq@JLC)al~6Jlw>`nuY#=(?%!aD_?mdv)+nT+2@1@OM zSJkWtK5^EQLy44>OgQ0uVYo|u*YA+Ma6LJ(yP-P4^&ywjHtn&N@UXmN@I)_foLtTa zDK~!1Q$6a>2N|``801wc=FtN!34|sbM#!T=%cqeLb8FXtz|?ckG25Oj4o*btGrR8I zBl<%dCw9-@wU8PO`@;TVe|$8AAJyZ&E2IDTxHmlh#U1)=V&khq$*>gkWHM5j@rY2| zE7@P4ru)ssu9C-}p^sfmDtY|bb=ZVoP)tIR=A_>MO+d20j83iPj&P%N{4J-{4wG^8 zBXlbn|0{-#LuX?@7tu@Nvk0vmC%=#OU%;0E{tnFm;|6(+A6`S`ZG)V<7tt?>%zW9a z`h6Cc=bG+0G~ldBu{E5Hi*1YGPq|T*1@;>~J;1sRUdIiw+CBPw91H!|uft@0-~F5f z`tJJo(eY2wT;8wy57Fm;bjs%@$nz&?tY&-vQONDF9Ny~lv+J;40q*tqH7_lXtm1db zb1%^N(VgUuPvH&WuA<+053MLX6^jMe@E-K}b>sg*_U1SAVjyp=#~SUX-(RJeB06{d zzh0AJE+55vu@A+ehJz>{g*Z2Qql;TT12~VHz>DKHX)MUORceYhjo>nZ2BM1P=_3-(|!9yGJ?bUt8jgc#UlZ$b97;RkL zPgg;_)jPAU7M+b#yi?iwo$=#jJlFKDA17!kl%xeBu?_m{!`9p3_XV~I_3F?RzL3}aIW#E`WsjGeUTGTd2k(kfaVzp z;FYT~;rnZ!iGG02qVIVIomj;y2c$jyZ*z0ZM(zLfWzX&HpXBD#gR=p#>#yrY%F{sJ zhkk+HcFJ>KTYYXX`WgDGw2S{*d7jtsc48ABME`}B_dz^$k;VVB&7=8!i%PYZAijx0 z3AUFN3KLhLCguR8F@^NNOcNM&Ypx}5W~009#IfCM&+TUDVb+&nd7K74$AOimPFpnS z40Q~q>>=2WyNRu{xMSx&@ILi%=sXo|P99(||G~qH&au#7cR_ z&5)+a?dW9hz&^6Gw*f!m^3dFF+QJSRlXPpwa(%~6hFoy1s9cE|QR8EE>E%`w@3K1l z@th1zi|4Z3*MkAUTdqYVTlVsthu3(6OUJa9RyH)h$NAxdn_iZ>NWSwmJFeeUft1bW z3m~;yAeZ!EIu5kkCkH_iZu~wR+-~ z+qA3arYc5CCi~$>pV$0 zJiZDt_sMaJ__-9lYk=WFxc?1w34R1$j!a|^`V&y*H%JYyYaGC0SwzV-ZT!e1&y>x4 zVI*>J&zU)I%*4CHHyp7HCsL?SM`VS4?we2ve+yqrZ1rgb#S$TgfOML)AXh!PjA(Bo z#6zn9f2!f$n7xTh?x^5{1|y8!trm`YN1nlqlihA6C_J zFyKw`%?Av<8uJ(8c%lO__VkN@S6i?2@sQj z$s)<*(pp5h&?&T?Ij&_VuoR#;a5B{uTo>_%pKTf|)L*?-NyfGCkZ{^oJuBX4i!ECV zSRBublFuLhw}-WSmESm~gi`(pALfSBp0Foc<@t!|4H$xeIbN3h6hnd>bOb+#&nNq= zgqr9ut+??~Pqyo0{l zu*&ELUPiIlA&Pa5V|=W0QfE$L)N9xwf(GB*tUPhumfZ(8Wc8>W9377&&lvS2l%Qf6 zI<_Q3@(AB7R&`Bl`%QfQXlUWCk=fdQ2`dpRVC*s%wqOy9yjS(&fT$@xRTT1&T@!Yg zlzY4XW2EDE<4edo%pl-1OZrbPC#hqUjJaK@hX#O5${Hg=ej8<6+@-zR7MS%o9kl$@ z$gIK=QaU-Smf+kKQ3D}yQw?7dH-Z5@k`HR4 zFW?E_HzdniRGBjsuO^5a>^Wxto{sLsU&L3UAyfgT)?>OGai~z6$Sp|(04zt$o}Lh9 zp*;}i?arLiBqvsqS5GT3T;}A*tI5NAWlixCVN3qw9f?!Mzg~<+q7e?0{{-lldAQ7< zTiGnCk_=l1C%u9C8}zUm$wySd<9Pjo#BG@ zbh7?BZ4ak|;*Yq@1bG^yjI%8tXAvx6Es7Dh8IUk*Pz+Ioa@^V}mrayXd@v80ZifzQ zEw!3%7$3u@2Zm|~emc{(quAjh#>l3rb7x|+nie_@A5hE5+T^3Pfa8@zjmS{_&~!cI z)yJ$5>z7%>A1C`a4OI?SqZjql+@DWnWHn?ju+q!r6z!;mja8{{-iw|xRH z#hubC4_l_AF74Jda>l;e{~~@EzXxqZG0K`k>CqM&&@T`5jHp}8*nzx0YYfyOB9EHb z@Kcl_T0#yKnB25DbRO5aA1S7h^m<|eH92hud?88pD}FpeWOC3Sk@$eD3du&Lg2n05 zWZm>c!}-Njj|&ICFL_muCdsWKB_}*$p*%0Y8I0^Mft39Or2*km*_N zzpJ>Q<~Z*b_@mx%o=imv;HZFRMrJS5nS=_nWhp*QDQX#~liOqz0?r+`IgKO_XbIQV zgVMAZ?6ndoXd9mw97|*q@t98;(jC)GaDKrf@LT4llT-g3PlSV(s0$viCIvld@BX5S z`QfUN_(&wI#{wZ=1oJV2h$xlwi9W?IH#eD`S7iepGR}EKLuyuSsaCPwbM-$&j~pOA z+$_Y1q2p!GBIbnP9x$M-YLc0nX!O!5V*z(o+ip43>UQF+;TH6zaI4Yh0k#DMN;S~r zW5#lNXo?D9TD#+&>V28-#b$vnyW%^k;Nw$3l zIGVE%Y<%g^Sz)iCDguvH%}@eCDL*VZ3Fq_&=5u*Pu}5>239ol7WJj;acr?FOjKoCo z((GhJls#UVCq6IF%Qz4PxV)+D-&3oI-gqh2u*MWMa&B4+5b+tqJlRj5>;E_Y1+l{# zpo6@`sPj`M|E%Zaa+dbB%esB-8s3v@R!s^pd!jN)r4CPtcxY`BG?Rrqx=3t60U$-W z;yB=C1lGm~zZe+ZICbEQ%~3&?eUcaZoIqGjh~rO0KIs)R8?1;dNlGwW#yQU5LWx|l zeN97Bh+M~*=M}-vg|GB05ucP-O^?LI6tIjjk@H9JXYtjcH8d`v3dm3smbpwJ zD=AkT`6wpDAqT>jqP)$tAvMu>F7JRRPXU>b?Sq6%H)8g*7-Plzul!|cA&Ir$?FB80ql&mF`*M@3u3#2&F^l*Y2@r=Zx6Ik@{ zk`@s?j^7sxrK+Z!rDwh0|23Du=MgPNcCrW?cnjIdTWDp*mYvXvmA0{1j?><(@u&yX z!_h#zpjErA*0CAd$fG->11TRh+V@a~luc|;?}aOHA`z z81{;a?&dEec4nDanV_uV-jiJ&qBRlffGkI-s)}Si>lp4Rr8<;H0*ERLa1f%TfPr<6 zheMocuZqIllkpukXYhVr=7N#5H>mpsPIGi$E*irBhup!Ah&OUq<%L|6<1sHPMCkiu z+Z2poFzn^5A}4TL14eQuv$JkSBlsQoVw40v0Hx96VJD}cWeITGn-oC2Y(m>KWCHJ7 znn)=#Olt^{+v}BzXD;OSbRCp?b?W$*JG5-p*XpRZf6$EE-|XyCFCHRh>b|V(h+aqY zO1lJU$RGAi=qeN(sc=0u(WO5n=d6hq5G38Hy-K?UCo^R4*$rx*S5F*^xs-I^6roto zLv3@^v!N?ktjY`%hg?R})v>DujRPxotpyadRxq|>%8gmg#)>BtsXCrnBdl#pKXyiA zWSdsJwUwORGrIe7wTL&Qg&AKWAQ2PMt6Dx!(1?Un_JN^zB2td06sKKkEKX_xJ3)Pp zX8$-B#JAIaF+0%TLr1Nim*@tu0gb;M7IB$u^ctX2cQ(4&6UP=phuVX$*bX>t2p4r0iDm~qx^t2(yFenp^P!*pj>O}nzvF#70%+PF1 zRPvVQ!#UGT6WR6zN)iA6Y%~r&XqFr_mD2vg{0;Ulxe3|@-rcnjK+n3JRf_cJ5lPe@ zFTOvXsmb-}py~O4%)JSiBX@N#TANf=Qc0@PR@(QiC3UMMbxW<@_nw)aeQl4&v)LYd z#`f4_FpDu5V?$ViNq~ScVKJAGhx`cfA)){9 zAk&;IwdSd(O9E%GH$fZiIwUR^6@*qeQ>nC8f&awATKA=jF zaG7*>_W7L94nWBaH^i~8vj%mC-}=et_eCXDadSV}Oa0J?>%24jmeTN8jzqT-} zkb#g24X;D|NQV5MbzgCN9Xv}+43P$2VnrLVH$10I*0XaL2PbzGSa&G&*dbr3mPpRB zd^kaLvgC8bQyeSuib)d!HdbJH5{%}>5!K0=cxde4SdK`#pxCvEs%>(}<#M~sv3yE& zwy^Cb)9Zd`?Z0vu{#N4nA%vkDvRMc;S;j@(eErB+lcr*zBXH zh&L~rWy$1=P1{|eAg7B?yO>IbG>17FGD&8E=Qx2MaOAzwg(Kd`m4Efw;$jr@=_cam z{~_`7|CyXgHxniv(n;pKs7Hpa&$b51v0N&(4iHs-wA7lhLWfAxUv2T^x(8b9X%u)X zG>I9cZI48Nm?I4t*I7bah)!v))0RY+@8& zPZ7pMMu=?hUTrj5_7Lv;H~~F85KgqUrK7+cm)4wVv`mK}Di(oBOM~QL6(X<$TB||c z+B^zbcJeG*cjG|lZV_S!qwr0BqgO_1yb*Rx8Rw=_n_-QpqfQSJMUd}=9hh||jx75U zpFJ$4?LM2?q3MpWcsgiFJ9K~ImRohjX_a`+rCZ{rY{12nU?h5Abb2TZV$_*U-?o_OZk1l(4M2?N6cyA^ zPsRQiv)FF0!1*hw3Bg8f!&jKw*tfFZL99%g$u?F}h$WCWOffOtBp#%gOz?I50c^#A zPI*h9v5ld6=bK>+MZQ-}cLbD--FMAB z?H>x2O*ZnKnp=Oy{s+57zSCjmml@*0tS`|l!3gzl%s7^Yt^7wy&DD+dgH&t}(uPQy zPKEYJ*biE!=c9}*7-ixYw~msVIJio_d2KgE4mkwf+3Ob782~HSD%)VH5vOp7BsYk} z&Nf<>k!V()W|4ToU6 zl}hvQbLZ*JqGI#1PdQz7Uncsc=gZgQ>lvJZrg7Bw$vpz1_6qYx1^`YbNHjGBim*z{ zIY9sxYw6_f&8T-(Ai%Ct)7^pFzH0ZorA`MEU~ePzD?Kc`VU`4k0|5|`_haFtB{@6O zC9Ud&MyD%azY_1ByN*tv84Zec50}^+rsim6LDs30qYaG zBP6Glz|-49yO7HyP3V$nQ$!2L{+*mMVmo#ZA*P-VpD;N?dO9*o&S+TnzVW(Q^#~%7r?q5cHTU-!)(_^}yyo71XVYoW`*1E8 zFY^Qbry8u#dAhE(}}2VNMtj`&!NjNPw0A zpnMsU-Aw^A^^6k%GTF}kn8*zy_u~MRL#!QSD3Woya&MYt|1w}D_Rhcg2Ei=kLnWEh z6irm^ip}Bon$3^%?6r04lE+EH_)+#BG7*uOu%|78B^#d?cviO9V=|vQp^9Y-r?{j+ zIuG5+K@KyM#IyU@PFYA*ZO(%6TBPN~GSSL)9Hl__&%1FQTwIW5Bw>#Xbu60mDm0d? zC#eX4{|B4lT7^MeINBsX=W&Rp3ZqF(YZ3C4GGN%ZEK@`{a}wSw@bI_%ci zF=P2c5|+Iac4O*tul4ydmp+}Gw~QrlLk4r;c@mf(RQ&0<;Ox@;>juq#Z3mjS7hs5B z%J%Gft}HCr3ay;=+4X20A3h)9X9=lk+N`7wd<+6KIF^2A;QH>f~hIvD$%62uz_@qKBebagy-3^hR~v#sp+vpokS#krsw;Ru?{CayW_aBY7PIMU&0ub0zhn z?F0GI66a%`divn_>8aq9YSRy~Pn%qJNGR>G<|4A{ba)&-M_4{v%veNQJ&-f1#)Ytl z=C!}inYbwTr;N(PaTkQc*e{@!5Wndwi9Mlp-$oqVX7RY5B7aRE*)~_#$U;d zW;y|~iI9mt^57HjHv{b86D#B|ZvK)YCEuO5SYtnk2DlG<-ywuJLG!JQNYheKyfrQj zc;3N9@jicj^KUuR*6$OG;)On82)eLO!dZg06$U!vX!^w%`sLYwusckr|1>dpE}oxs z+G}o$-E{VN+8NBb19`g$_x9B0H#pDMe=<%c2V41YtCP#Xknhwh7ziuH0PVelWjjVu zu3qC2Y>J*3H!K}7v+Ypj+a@8z%NDOE?R@9cHtm5&!-|b(&8ij)4ZHR!=At$9IzDM4 zF}uy`v7FufbGIuna>S%K?1DwHy40YxD8l`IlfB0N2lo^5y~^0nA`t8A6*_hlaDZ^a zMx^{r!B-WadBKePY0=`jX$g@WQwVR833HMJGv;gV<*~x_#l}%iBf4&EX+g3sa~Y0> zz0e|W;|P%l(4#4mg9+a1DaLXE$$roUIC`g?1e0Uvr3aekxJWx zi(5T4=(ngKsyr;%FgAJ871{AFczkQvOiolVk{+NVK(4O;-05W@-x&5cCej8fGFo@q z)leHjSdV1lBv&sq&V75prrmW{&gQTxW*A4-4@RdJkKP-#+Z9iIE*=nEPN^mga=+(} zW|P^sxE+?^n&x5!a?_zua3ttEGRG@6#coXn1LP#D49mLMYn+=X=^*TDm5nw!8Sana zWLT03{poBo1PeV*C+B*YxdZ(ECSPs& ziNbSL+WrLA+pHiTWt?s4WH(LSMi^BEVOcL3>%&s;L@7qTafPrX1q-Md9`v0*fv{4> zS{U-3alaHTeofF;!AcEF3b3CV^a=DNnTfGrr}Ja4TZqkzivGCfu*YIH{iA^*&nvD+ z9^fr+tOlhgxe;C8=bv}y%t7lp66r^xA&*j>cZKh>M_lHEHmeuU{CQ5`R(OpWg!*Ej z1Rf~pbzI;yRDw2f;u8kwfIErQVC!#FaJD3k0vw?>j14IKzd-#|0(u;o&k?z~oqvdlGHVQYE*>H`o-m#ZACMnUGVU5;`e7ezJplYT zAdwTT^9g~Mtbs7rI#dsA#$hC5zxFiEHIsv4>@^nMy;5K1b9X;^Y3Y@=z$t%t@qN;S zHD`_PPvxh%i`B>0YC}tFK4r1&cRV>$$R>jWb3~?o#929oXK{|0N;}M6SdAj7F>cyj z`RbUouOLIk!VS#7GhSBkksj5IeqSZO`^v zhZyq5YiHP?(bh#MABoNm&BgjF8NO)Lt^2b>w`^@~=DBxny&EtD%%8vZ1+(|_ga+i= z+sU=pF(Q)!skh?1UE2o@yo}FDXb`J(R#HkvWf;5Mf)N>4?EsE#jl$L^5cv>7pUyxU z{muK0a4sDS=LUXmY54fhyE)aFHCbndW5@r?1QgwLn9{)#Pg zW}LGOF~)RdldHghC3IOZ6<{K`5@NRQ0+@*M#Y>kilK{*C+v zH7lC9|G?RoFJZ3-Ugs_|Czy{i#1VpdKiHrV*MLxQXzj=&U=TRq2TDz@x_*?t;=oZ* z;0Itf?tt2?gWEk%pQ%Gz2veVs>9Byj(cD*o#=&{=oB(EFRv_MYTSf~lAC_@8fNA9c zE81>>`4bYYu4i()SNB0wLL%0cMr-~6b;OTq&BLf^3#-e* zt}X7(Yx}LrnCGO+wx{ZL@NC3vX}FbLgPha3tjk<_z`Hv;l-E>i_CrfPWts9txJ>wR zmiYqc^YuKXZ9V|B&BMZ(YH59(@@1{m<^*fCT3x@5zH03@Anh7NH)5r^Msq&vtMtj) zRrrY6MPSc4*mv7JURk$M_Bb)y?!1+}(MADFP4o$qrHe{>9+*|lLp9F@DdOh1wq7b9 zK8j-;v(DzhMr(DAGV3<2c`Gt2Ih;gpjcUpN6I>H6BiCO2({YabxgO`(|Mk-`5YN`e z*2CNx!ovmT-8h4qu`vqFphD})Y|Jks#F&-h;mW1;8s+8$p0Zg3BWkhKY;1tW1}^Xo zOxa`X%4_5dHL%69F%1_QW&8Zy5a zrFpotzKf<#4)22ZA3gww;Y_Kyw6T7Sl6vVFJh4;-nl8E-FbVq?DEo%wEI$LAFjB2BG z7@FXg_BF0!OXa3~sXrHEGQFYXEFE=<@H%+`cTxEd$}aVgXEJ{szvOhOGK~zI8t7*j z8@jwOP?(Q9%(+}b^O-%?jOh=$JQSnX^H7nZnLtX6_A&8gv)P6o4@hRSIp}pp;*Nru z^7R_`C^;i_<_QDuIz-h}2viXh0wCxVLh`{WDIp_AjI%KYz242i3V?aeBO+Pbg1w^_ zurEcf#VPs|V%OLryNVU>XakpoAb>i6T z4|(@El{w$+V0vNHK;49q|`KVg6xd zbIGszVh7)~ESP;uiG<*Bl~;uQ^UqCjeiEk5fYmU6MmarTq;c+ejfUN zn*Ucq|J#_aFl`IqIvfH7pk>N|7u2217jE5jDh!GFEsZI$n=Whyy;s zW<|qX8*>Qt^mWE~w8x)+Rjz&OZF0z$y)9W)c)OTdk=-_5PA8Vul&{a;5euBEn$ z)%Cs9FdV8tTLR(Pn!&SEIO#e;kHW-mc-I7&f(Z)fm!q7_sjWkFG6r6D2))`v$7KX= zhCL}FeVMz`7U9g!ioozVvNIke?7WSzb7D7P+g|W{n>D}yYYpvhG+M$TVlFI76w$fk zTFVEJP9i`7GA+eNj^gY*wES!9VsL00do}kuTf+V>qiK95Zs#m?GUwP7hW^8j0aJPcoeQD}}`GJ}EXw2gQ?iC-JO^haDgW;HupQ*C~>#!|F zc`I)=>y>!*_Q`S0TFBN4^g4}o zLY?a%4{)8xLzz~NI(sn0j$}Y0lT(QsJ!A+#1=rpq=x{3}ytEcQK z@}kG@2zZuh>@8fTa?1Zc$|K^q7}rrw`M>O3@5FwDCog6G>P5$X%`24`8vZr!Dy`pZ zF!G`QLLm4u@TXu+@_FnaKmEWJtp5D}DKy-P`9GUrk$v9{0`j?^Rrq+l2=&XvYnUyj zeLG-;T&S+!Lw&v%DCqPt+RFsC%VH)ivD+V^!XQ;z7qqdSzCvH?K(ClnDy^$nh(t{yL zV(W9VN?V`3bSVP}kk^8{Kb=M2J`8s4dFUetW^QzyMPUh*wz8mro~vo1wn*1gByaQ}QI z^DQv7f2mJi`+-=!;I^0c5T;!)m3JQ=e07p|r0n$B0gFi}#y0<+aB#orvAOZR`gt(B zKS@uO1) zkhKKv?Q97$7Y<)ZD!}Xz5Z{OC{+1i~aYHt?wM?FJlyGRMH4An(ie&)B8Kdhk<`o(( zPin2OgB)0=bKULB>tao6o4W${}xPV7hZwj&rYGt(~bXWn#|K-K5!0 zVrnUAHV_eF8;0T|+HT!Llkc7qs6M&R&FK*oa1&x4@c*EF$fmWdPEdL}XhR!}SS2;1 zW@ylkXfrQP%XRfll!Y=xw&(o)HR_(f$g-8udoq$+vzY|eH2{+Mv3{-bn%7D(`TW_z z6|+U=c`+s(y~S|&xbD3NiPZfH%3R%$xq4UThDz({&Xz7X-kl9(4Or2>UZuBMMUSqU z2am3b9-SAg4w9o8+DXL52}P=~cUFtzLP%L_DQTcdoyt}#Jp_FtAq~@G2w39UNw`S- zib}q7W<74A>^qCd?E?H-tr)c0HGASsrMFj#DR`s z;<>E_G5hGXrt*kbuC>gF1DsFMJ#bd7m7NFpRwzNvEi|A>ur;*UjT5iSG}1x0Oureu zKFQdP2pw#;&X<(Uk0`EH$SEF%oZ|ASk=xrE3n>}1CtjYv*XBIzni@Fh8!jicd3E#m zKw^KaPd>S8Wu-5LSe_3&bKcA=^S-jfQySWqJzW0tm6cr`ohcLgC&}skMU-E|^-=O& z`BgEhr&|`F6`W8!W>CC{B1|LqwgXSN!zE)756aP>+DSQfN>vf#Sj*7*qyT{p!S&E4 z%Nu32dvyB}CG03H#?>plto)PJw=_L9{Ya3=BfG~_Q#Kz3()`~bs=uCM@9RkBY3;FP zB8OGauL3DHzdMi`GKn2qev2&Q_$nEzMmf5m5w!mcx{lv&h~UAZH~7jmwb3lZr`DBAw`7452=jvj^O}^Gn`^26|BynGn*r-*Y_NXDs$%Cv1ojEj)xia=?G2_IjT>z!4FtB=^8uI|8PS)`T0@WH1FOUN z#dlqjiN0Fmgo87&WXwcdQ?tTmH-~}7sXp5pSUWZ}dF9vl%e=DSn|y6KUW=K05w{{K z9TSUZ@?rj7LMxRy#QY@#=5&NstAb)wW9tFGH9?ZV(uJLtKUa0nc(?k=@h z*zCQZ9^T#i;mx~s@J9}pnkzV>0OVTX5SU>`HsBe^&$5h@3jr1y1lB$Dbsh)~XFZTY zJ^~;~E5vG;9PxZ{430uTyBdzBv*_%NfFX{?i#0IB6LgDf%jTdSpagh7%|&N(1}Hz8 z+-5#%>FWyfFS?v)`?YR)Y9x6-`(@yw78&tf;f z5%5H)XpcUJQ5h%fn1g9e=;qH4pzbs_8Tjw4 zI(_d_cAzGSre)nHou0JXc@eaXv{vPvpX$pkG6MGjLeCO(t%tDR7D(s7c33pKStMQ2 zAl)!}*;Yy^YYbjxB~E2KhLC(Q0EDqpgVb@E(%mX7wlAd-o}OuC9o>dJbZ_iD)ybVa zI1D#X;p=N6;69*i{*86uz==_FZl-W%PSBUdQsH>&HD~rzkDVC)TOh+dNQO@;oFg_< z@Y;Og5ELEUs`t#Ey``0mi$6*4p6lMbi)hUEBVv-)*$&%@or#Y0Zqt$3u8z#2j?9*+ zb}Z7VU@XYNnER~mmb(MOary*0I&7waW-j#iDBZ-4o$CMq^qo`oT`DIC%Fu~pBVulP_rt8LZ2pMj%=(1ndc(1M zf3tq;*^&P=NcLl`Xc7d@9-k??9sa%Sn(|2#$4+=h0{hpVzOAw=qji)g$V`~~8v57m z=k%`8_*8D{SG)=I5&b3*rac@yJ6nB09!QqHEIORTEF6{UE*Tx<{^{6W}THISL z$eYgs;Z6|W>EBoUX9@M*shHH@aAG>_m15!I@^m_186Mny{^w)Eaj#-#(Iwh^gMCcc z7DI=b4D$#B>vxleX2ax`11v?%NG1df`ekwW)HtkeJgjbLa*gBCM#B|uDmTj}z^qOL zitP?Uu0YH{VC?sMjD7`T5c+~+fNrkTNG$yKBo+{+sL zaO$?zf!h2htwSXI{qleNVL(4(iYpUz&1uHkI@i;cY!adlrPr>eo znkTk=$3czTsa;I(qqx(bTL`s!Vi zQ)B;*HD#kFMsGB-IOH$H10F?TZ55~0Ja_5n@y5Yp#`*Yx!CQrR0d3sYM^8Z8k0p9P zSS`NPa?}WKv-F@$R?zCFHu}OF(9C&5Gh<-NL_l?6niJdsjXtM=TAS5uggRag2NpW+ zfJih^;1)?Uw6%n}wBx8FhrN;?7kbN-La+UWvr4F&dICNA|zUv#*2tD(##zyvJ>6*NC zvo{!ypob-cdz;vI^!4^tq1L)(%h+e-Mx6nh~r#4 zGBsVY)$QK{;hWc|P{pt&*FY@mbMiy;^F#i!_5A8Hm$Fq|qUwd#cu@9cpyzW(|Fck9 zPf$t)iGBeY^lp4GrB@JvfD!ZUSHU!nvF%cksX zDT#*RnnLm;QGl$SmW3@-EpPBSvUVf2{t&sBvNOE1eqXFVdsm2)$hVicixI`JVB1SeWVF-jbgz|DjkkTp6QPX6kNow3L;%%$WJ#(c|R&`%hfFh9TA!x(nVW`hnM>e( z8k^PIAuMEt9CF8Btn~cF!HxBCdV_=G@YX?aZ^kj+Xx1t)K5LY)Vi;l`mNSNBE7uH30W)RmRB62X9u& z;%_Wv-Gs9IjIw#R$2&K5(r1S%mSnL?tg7VawQcm~t;8AlevjU(=JM{t<+lw$6)RjC zTL@VMp`6~_xEU9Cl(nY_4tMRJwI$8@83$WVu^%Hh}$FPFS79ctW)GO*FvlhO{;d6RCu-&SnHgb+ZOV zu9L@ZovN=K1*8@A+PC+VxKK94{xQmCEPV0k{KcjHvzz|{C-M%EPnPv11A*PCZ(WR5 zC5ysNP&wTz9iCsDTOP!c)Azh)-eSHx0CCON4BcLVtTpkY4BtVow5{2WD@A^)bcUN7 zAgY}n*k-AMH1ch%XDN-Wm9`JxBa6Lz;UI%`|9GE$c%-6A~rwq?@{3Vs&t_ zM!MB+m~F1!prGF_c#|XddrjsOLb~Q#vfj1#!rQOc%3nEQ7QFY3#(k#O+Uy$9$K(4? zmp7Q8%h^o6mfvbK_q-ZZ>%@kH-80rtN?KSAVtde&fWW zem&}CBR8)McJ;EK+-9=cvpU0=Qpy;`alA(_+8M9byT`;$eCbvO5=*H;Oe~?E9yCh1 zer*RWZFq^b{<6Tk0lRGSiIrb?70pNz#BA+*1c65Hr0Od zgSC;#qh^<+>^1DLpU@%;`v{|`k5k4i=St1UMz^6P(rG9mKVj@4f?dmzgn^seZQHhU zVuZVSxta4TKNc+BV#K+xUQm-(m%jNw6|H2;aZfe0a%>^c}#yxTG3ZYQz) z5~6n-!tzTfj;OlG+VXRp>Y7Y33qpA`8o=XH2aVkl!j1HUaA{jaW$xBCYE$fvZJ+&x z3w|0IerJM{1<|);31zl-ciwSm<>zQ~r=>5a;#U?mWJ2LZ;FY6=+{?P?QuPR|Dg5 z7>{WtX*;5Eh%)FMXQD=jNyDT$Kf(9{g+W}En$+4M*MNaO4$ZdmAnms1v{t4X*HM=pOxK1dt)d*LM6(Ke*b*3sj0~%8fy<1} zoPo63Z%^HKY44rqCl3rB4cC{aFPs}&**tG_wzJ;QiLrQ)4M%5m!RJ-Oi=mt-gbuT} zD3697-L-snZEZZgbY$+rEk{iE^kn!oKyUOJH@4nRWcXjZJ|o!iC^N*o33XG^&`rhu z47kfs&?v$og9{}bVDGg=Lp9YCd#-9~fDnJ!sHV0Q7laf=Lo=l{qLiDi>yjMLZMD1p zS(CiE|%ez zir6bMk4;ch^tK14;E90}sICE+3Yby>H>=l5a+7?|0wK&4Y~4tO08^tms$KO3)C@?c z&DplPJlJZP09;2kfcf2`*0yD4b}Wa9R3lzrf&rJYuNQ~9m0{L9!Pbl;f2F)Sk+?;1 zk1D~+=v?Ah+&{ROh&C?B8RN8H`wzt;Rq6vX7Edpcv~+a;BeBH&0qd}*lGBbQ^-#_c z@LrlsMS;lo41~Gc>at^~bM|SRV#b}!cQFR6jjID|GwXs${3MCHszz@zE~Zd7n(<1v zRG^}tAQIV9u~eW!Up?;ZF}Y~$n$%isoKPw3MDSZSi?%HNTmcFzzD5X%jx_tR9Rrm2 zvW3TvO>sZEAwK!y2mAXJ2AMkZB%Y<3ah7U*XQ{=Nh!Ev_^GvA?V?d;x!hBOI2a=PD z&|wfT217g9c^GY~K*q>ELJLTW+gn4gxCU4@7CQi{YpqCPhuRUvtHDVe9zDHn4O&U8 z;Z-}`3h~16gZ`ZN#Eexf*b2oX14=lbHXZ7AEqql_^l0~VeO<~X#py@(Yu30rI{E0! zYs&B-Ho<-Pu~4EuETG+tV?KH}^AV=4gWivK^ZVw~`V4(Ehq`9jpwk|lrJ1O}mIOFO zQl*{3?xhsC2u!L36E&EitV0iL3Jakvr|(&WMos}L$XHpqh9Mz^}j{=uCn=U z$!d$m@7-M+O7gtEEc(-e?wftk;h0#S7-hXxMHDxGa=Es$lC1y9=9ZDPCe(dg8T2^? zUfNw79+&cK9>Y+Oo_5cR%wO zpI~_6bpZwrgBp!(3WyF#LGL=NbW9WzyXr{}tgZ2htA_u>zLrm@8S{_O`?+T9>zd#C z?$+0smp|v6d)An9A2H_K%bhWI^1V(HJ#Yv20Mmfe;^{P?wbLFfvj%ZJwb81E#Ry+t zjkRfkz`IO;EtfjsctizQn$C2B6WuB&oEE4?lzp_SZGr4XveC?ISM8qkAW8uTZ6_9I z*-)mvlpt{~`*Js!8#Js=z1Hb4ph%%!?heIs%wIpUl#(oWp7(1fW{-V9kUhItzuh%7 zX|>R+Z+czetSitU9OYzBE*!L2rjL)L6LYt;9(7t40<3IaDw;<_dd+xZsmAT;%r+4| zkaOcCCkObbQtiT{D&)}+xo~CGP3=4VAWL>86m(-RzSYVOPwY0m`OtG$R#*LruBTcIq7_kucv* zzN?PGzaFIV8q>1Co+O{a7Hqx=)0*zKZ$4oFPDNNQrO0cqn;cmFZzL);?qv4x=&L^I z9p(N^$q|!x2Z>1gZt4@mCdil}Vp_SI@L+<4#qZtZ57%i!@9|~aY7a-tk*QNQPWCP7`F*8{O9#h1 zzjHmeqVY=5Jw7fi>-KypUO95S1pM1fZhnJdw*HbyF{^No2okB604S_!skC)umyWlT zhIPpum_ir86f!OV(rD>`gkxuLDN9ST!J+Z&1gU|!l}p^-}xs@j=7W0#kOp= zXWKTcG!ZHk)`KoCZYuyje%pm;XD%<@s{uh}2j>TZN=EfloFAdLK0$zHzBu6t0Lx$k z3HXskRQLXMXB{mN;dQSX(&I|flMbh~P$A{Bxp{YSbmmnP#oUS6-ASLa`5iUE799n5 z%wY@q-9D-4^4&L;9n4h@4aJ?nhYxRlW9tW7-y&Ynex^+{Vxh$m76bsRQvlq~Qp;+i z>#f8MXy~zYl530yjh@F2tO#&8G|^IF~1x$yY%@j+M7 z;Tj#!S@m?vm+_Dr*!;d#P%kx7!_J~x6&)d$EK62VD&pDrIN?E#xq}&J-U{2_TO;I4 z;`Z4wy0na zS+v=UE{hNrgs4-N%;FGq`UAb*!4bERe>D?e#yaP$ts(}PYLTIPj)hLu8xEKx8`8^w z7~T}8W@-57o4rCGIE`s?v@Q$Q8M2IDjwHY3?n-9Ba_VSyT((E&$#-gU=e8atHUtp$Ap>aGGIZ-1D@Xr6 zd^*ig^bd4Brs&CSV_1IfJ|)>VJ{2UN|0Ql|>mB6tV@!={%P>2oRG}RQ91I!Dt}?|b zgJ>3Ko#G{?rOB|A$VJbPF3@xxn6aB150W>rasQ{50C5P|qHPy7q|9GoYIkdwwGn?-(KI z4GP`V2*IspM{YDeV|zZWFLKJ#6L%j7ef4^a^D$^yK6+aP?ab$l?>@}Dl4*N@2R;nw zpq9yZ(`9fggWX$6qRB;ul%M}rD#op})InSOcu)+zB#Hn~M8oOVQF9xwcCF@@*d&b^TZg z7tA2q=a>B8H@}|H^*h85v=P|`LRt(z(9-h*?KjYl!JyG`eWL~Vd*8uZW|iJ;aZAfY zCg0YPN$q!--{{IDkN8oq;66qC{!`4ute1gM-GS4>aJq)jB^nx_ML0TFPqCsVDeLD; z>-*?8p5F&Aod+a}%lqb~!unZy{qkA3e)%r)5icW3@>Qkg?8f?GdNZ?!;Vx&#K}pW; zCa*Y5I|F*z6(0)|u>k)C7jCPx9wAb4cvf?Maws`kK6>X}kWq1JL;;wENbLC9rF&?K zWu5Va&R&McJ_P=iK$e)+P!ghPC*UY+pO6BPm;_XZ=8Ymb5@3_;C9`mM(H=-lTjQ)20J?wo+Dvjh>T_Q{ zb8cU{!JnAE^4obq@ir`xlR;l;Kd7v4LwkcZxxf_P`b$7xt@w;GvUzZ;d36? zdJQ>$pCxgxi)pgZob@dH2Z1k~y7*{(^8xl3UN;G^{dw+fTMzTQaJL3|Ez~lt@HZ_G z%K}WSEFgYdvXhK_!`PF#pgZj6-nQlsx&k2*7dg4Nk>jz8eD4r`Z{GL}DEBXZn7jV z@NA{R@|L1FQf0*g`P+-c$0L7({A~}R-2>!rdyJlg&%*pD=8xsAKOnl`8%8egw{V_O zBsAW~d=4?MXxD2yhGsSfI8D70-%_dNg+k{Z!(Qz#H5WJ5i}Y+47cr$;B}#q~)6a{$ z$T3eA7bS!&gyUSK*!)tiQt8e?;w*`e1f8t|Fwt0qrL@>H-3)8%oSBJbFvJJkYvS9( zXjHO9p3FF}=B8!k|gM zW-!rh3>OS|Fwxz>L^t#;dk|&4Ia2A4`Jf0WogJ_q$ZiWR+&ZUeZ4OpzKq1x#mjN6T z0La^(6xLy?&UPe8_mOn?@?V?z;Gza6*q=iN{P9hPKW@3U3FJSnPj=E&?5AJo5D3!z z67(@6&3}FCHH7AWWn7)$i-KT*Uc zy27dkHqo8XM@Qj?+9&S>qj~Z)PA7D#I7P^jGR0v8ENbq;GP){Y24jwzYcI}!d!cfE z5i_or4OTx0>w21ZRo0igT`BvAiRC(MzDYahWiA zd~&*hld-c_3SpEl&MhobusU*Vn|W9YyzUR?#wX!edYxCb=>v!1;hff9+ItM%eA2mY za|nxTaP>|SwcPb$K#sCEpdNL*)btk*d=%CZ_(=3B@k!Bc4HkWZZ^>L9Q+>KgwFZg- zp8Q%GKkx=e{Xoes+FuM1k{&)afIvvfV2HEXVCEnwMDm=&v8;&^<%-V- ziv)Nte}tGwFJ%WAXeW#r`WaVd#!@n_l_W~r4uD9d=5%%aPO1qmRhsvrOkC+fhMeD6 zKS~ex(ev>BqqmUvA5~j>hz~YLC1s9cS$AsN!&uwS5}_H!kYyNV5r@_0CGZIi7xfbQ z^q20Z1@Q6h5K7~nm=xhhj-Dria%ZEtM{6E{-E*xKA_1*S!*nBENNZUY#5uld2~Z@g zajoT>?4c<6Vi@`m1+=aVS8lnLf@OWeB95$_IBy7*aMyDJDs`HRu1C+R|Ll>LWT&6A zSVE<+$+yHerpjj`ak==@gD-Jv*er2@z_M=U>kEb9qOMg&Uo;*Q@k#F9{4-{a$ubR? zEEhWIdT29Ls;#{3S%8u-x*Jk5P2*>K%aNg_iHSnLUX->;2e3^VCi69lFJi0&vtY5+ z0$bg^0Oto?4upd(UlA}yoGoRDu9p!;aJXE6m3AX^x3K8K#;`oylC5`6J?(Z8yGgwc zhx)R7dZ%X^`Mf5@2ZmNFqG>q6x!gs8lcdO?OAU`s50(aU<@%99&K)zmiq|ADw7U?P zQryIevgL{{-fow;a#V|2)B}Z~xn%V234g=P>qQ3X_YLL>^JZp0^HucecH5q9?}o#` z?510n4buyOy;^Mz5sFqS?HEp?#d0!Tv|QLQcEq%kc&3vX+Wi2tfRT!kIt1%%Clno} zue6T>MeQP}Zo8GxH2`r=YzQ~8w?e~E4Rf|-wPKW_$L5!JQ&b4REn5M=%d4VX$2r0n z?14asYe;JjLreNL-TGoF-8p2`0V5Z#n3K`cn&7{I_>qz8h%cn_k{}C$mJ-~B&3}^x z&*8FNj>mRp$Dx5fb`;!_5M^bnz&Z;Uhp~i zHft^FULK~fjb8B@JIwFl&H6Gw`JsTgQW-kjs1NM-5C7&ffs67$kyULG-TJhdyk=Q9 z@spp9X`*>*DsachR^Jt($v zqnV<;WH;U&%~^C)7WE#8C*>Y;Fk)igthg$+{Fp0~I_h=h8;?k$?Opn^@}6XsFW>JX z$Hn>3t1I=&!sD{+4F$dSrWq~`M)O=O^H#xn;ij_HO+FX!Vh=XOS7+B$xlzQVZ}LoapXrPV$L`J z-a4NsaGJ>fkG0j|@rM`o&t<0O*s!h??j8KRu)O(4-oVs6&khlv?O(Ru!I`iR=_v8_ zVPa3kY(mrB^WWSUUt^(e6dS6IMt(o`PWo-e7)->k(M*ZqinKcmyWp?D=JH6+W z*l=~&a^yffG0gi17IS+(PB{0_C>!^tW^)Nm5tjAR7ISj$)&B1JdyrXS-iw@T(0gm( zqRPe$c#0^#P+tneW?cgs30FHhy3=)WXzpX;IWjK^hVv$UH1{942lfF<{LB!ud2RsFov%kVj3uPxiM>we-*+IvT3qdUdr{hp1wN zgA?DdL~OQ0zZ}2qp@Y>SKzq<4YGKb9n;P?EbaL?J!2yq)E=f**TsNg6hvK%3_i3f( zU5vl$NIkdf*y6O^pVSqOb5=4|!7dPLS~!Wd&*eN$$)>A?{n4C%=$2vB;n(n7B$yI& z7t`iJio8bM8p}{#A|mUNEN`KYHdE^!|*-ph3(nF zp+?X2WP5QriOjhUG6w!G_P6eFtB;;vcxAr6K%#Mdk+Ut^)O7IF`10#lrW+T6xr?0J zB2^}Ailh32^S^Xv;?Q>=u?xzQ{>`@peV)C_dk&5-td)03^F^*+3WcDz=$pi5e~$-O~4&$P{e168nzCc z9^K!?bX#G_WvGR-qXtXC#rWZ1*lF{OD6E-}IW}K$sIl_M?z&A%o?Y0>4Q&3iU>aPq zne)>R`obb$*|Bc+J&)CPy>i#YU0mt%$^ov(9X7KQ1()v@avvXLe!_m8E1{3Hj8#;f zmd0hMEqA>m%Qo-G@|@lg+vgpL+r6W&uh!=8-&3Ez|A5sN$WBl<4u zfb*he%zr_yLe{CV^(FlGqg%JCqWQ;Ma_cvZzD+vEFvyHDk79>o*647|b~_x4-9#eH zGz|64G}LgCZl`9(?UQsGT~ACji_sfggsFvQ)!A}^j`nLr0llCZ2D;M-@gM6+uU;Xi z?BFctOZ6)#VR`LxY%?dpFJ&7GUR|3jK^i zwKGc?KyxiY0H=1~sgjse$@So=T-e##p$h6DL6WJ5CUi5gnF@Ij?sO5+CRYaW=9=LS zJ!tQPky3c>xkKoVy7mYRLHxYyCIg5+2ACk9;#aSqLd1JUY@k`@!#mxx(Kh8Nb^7-c zl^f9-NZ4vXToj-OY_?!W7-90DO0h0nbPR7N!r-u-ULc3s69Cxk4mmtI02s{}4b<&e zy3}ir-cFnsjT;06`w3z|7TqrtK&VT>=T9KRekqny5a(GgpKbd~9JddBn4n**S*Y~tp)Cts%Zgm)X* z9ebJIW!k&J$1t#remb1IeLJ9e%+WJp0D7z#((*i*9{XPqTHenT(?jb@SwFtVivY@d z3eM)m?MNTb3zv88RZ9PS&AV}~LuRTZ9{eEF4!{|;cOmj(-NcfqJD6C2q@A&B0%OG# zZdnCUtJAU@12dY&aK0VOZgyzpvQ*k(Y#agG0$;hP?H?F z-YMNS8nXEbI_HTta*=z8c`yGEv7K*Z-i|q(nVEw`55A0hFCllD_yK;b`Eor!fZb^E zbk|q5t}l`QaqlHR7=g)deUiPEi=j`GCj5D2C->v&=6*aF?!c&thawy#@eyugH*Yj! zm5$RhSTXz_Vjc|Frx~cgya{?gS7jde{PsCOt$Z00eSzx}McZ8=*Ug=zTldzcUkd-7 zG20!9GX6NT!?m&6-j`03|LhLCxtxF>Z0?3jU`xKc^%Z`J+s~X~KFzcV3Aogn5jm0~C!kPi{WydlquaFa)4!&$czh zLDLlCY6P$*8Q_SXJO??CC1NmER@X2`tTj)PsNZ>YuypD)QmvFB&xRX_MyP66gDY#N zK%7rHo2!kcS!*kMPa7j)Xkl?Xum@IbYP7v0i<5U$(RPHmZuEc9$Y98XuOe5onQV7j z%xer9kjv~ZhV3$Y#_G2^!Z!Jv4oQoqOq|cnxm*ds!G?>XajEGZ$=X zFsH9QF~{nX5}UeRQdtux@fH?d_0*it$0@F)W|!>tP~0E%jD#Wz<)L6FJbak>6Q+F! zV0;_}M(!>(r*MW3cp0s9ckd9MPta^FAd!L%?`8GX0mgNU=c)~@K5q`l3)%+?3&5y8H@zo z#q|7iJY{!sn#pWcxSV$&L_|V&MhLr4I3&?7YP`i_RRT`V;&z01b0W;jW{W8DzMM%S zGNLH{M{K;zlRv^+O|m2l?^^JLITO#TX{XJkIUukcmD$_$kW=zc?Jgg**n_NOfiWi#Gpwc7gZ@U)lOyejmTa zTx2f8Mjbc!2Mlt%&0zkD5n#@#)Q+9L1jBU`R8)>t+7(>4RY}WGl!VDoc+a6(@FWhc z$`rtKc%wO4X(hC0n@20{1Qr?-yP(jBfEUAKGH!kc%XNXg=7QR~Odg&ga&qP}yx`0! z19bF47{TM3m$fz%y$9ssjI-sw9b5#)O=FOX)|SKf(i}&H#PSfan~gCb@E|cfu4gH; zvqK_a7*Wr%W{f5f-2ml3e44}ll8(Lr;5DcgQS95pyR$l1CCR7YoW%uGx?o@5aMx;fy$obN)Sa5(l2~UQ+oByVo?|O?l zf7jXZ6nEL>aAi4*Ae&`L;O%@}%%#otfr;qdL#H=6lNM&Jg2iMJWr6)HDhbK);lV}( zO41pJk782Hd_6fPq>U3GWgY;iU;^FuaIe z{H@ywb8knq+13&Af+OeP1xNN1<^sPj!m8dhpvSJWrqm=%eKl`)uKP!73m4$=Iqj-E zSa!q1BT(65S|&fDZZ%o$DrZjs7<#h^A2D1;?(omSe?v9IX_Bj>;5*u)dcA=_IqAaV z`~diq-_Ckj=wtmcuZOUj+Z&6A^W}Y#Y!f8OED08F;Qoc%&(5dYC=8nEoBa~<2i}Ws zGUwU*M{MHXT@fvf!RCyEuUt1)0lw$Isope2VZo>^5oF3&#h%i?f9H zG^g=fTUWTd`BQ2_d^7Qmc<}*lm|oxf=WW-o7}r0rb&Y#Hzn@%x6JCFieHyQ$FTh_^ zlj2Lb_mgKhaSr9`x3<1ZKId&rfY}F`;sTB&gX}O}SHX%S;``_?6BR&1o-ypoeoz%H z8xa#5tutFHtsMC+RcYrC0Vo$Sy2otLM=%AbTW!9u4>Uo}xt_?(tn8tiaUr9m=3qcj zYuNzF#p-OOpjf(3YgWKgBz~@L`=HoI$)FyZCo(miOly@(ip zUW2oH-1&)Yr7=KzcMri-W^j$^Cv$v2vDt5dRFXT(E!)ftRMM{Ke)TJTSt+SM@4 z5M%D`xOYL#FyNXRF7|9UyYv#(;#$7Wg#Xe)K$paA20R>5oMG2pdZIC8QNsgad44oY zEV&N$+i>@MeYQL6>$BSImo!ZfQI~(0J3@TAB2$JO@<0jVN0Y(bN~xLKXgLV;3`lkG zt#gR6kmHP9SPmHT*IaZ=WSfUvU=d-h7uQ7uy-K(cC%RNmcq;V}=(zx@Gw)l&N1k~2 zyjN{ZH|7c^t7J9VxL~xPZ~i~z`DZMWqtBz&zjW&#zt=QBK31p*f=pgmnK`Fg|Iu&4 z`}qp@MQ)8*COYId7{EwhwJ{p8Gh^7-HU>CzE0`$vAl5;P%U2Ob9`y`#E2%wwvar!| z6Aj|V+5V=d(kc>C6w$pcLa);(8nn@{p;z1sgcK{Q=vKDI_JQ240_Ib#(Q>ble`hh< zzJT?FrA9MGY?2br8vD0JoJ0|f0y2@x(XMZ?W6WU$%-Kx6({Zk2nW28fL!w-ZgH;8Y zSCjtfJ-fJ9d#pZ-BWjb`vq){b{7pNR!EE{VGxI*46SUf>pqx*P*yh&i>~|!)MP*g9 zVj-%=x^H#mc85iclSsnw6}kb%A#IP8#3KIEK7PRv?Pv!K-PH3OwJfDbG%*V-h3S`J{zB%7#tn;C!Hxl7KuwuY_7=K zc&k}98Isp`>+EOm|M2YVd*n4X+9Nh8fDjB=KRWLd^Z zvTO_6c-Jf#1Fvp%O9EjqEXfOI4F>vW|GaC1dG@Z1S=JBm@|Jba`_B1pRdr90dHz{5 zU7>rbzjMBG{wMv9+6Ygm-IN_FzfMjkPF3+#p?Ltb@rpASTMjz!;(RNTJ&J(X+ToR~cFd}ut^Hu)D3lT2)A+b!m+q-G7z6UYgbD^?JMfUo-}k+kZ5r z%<{jNq{&-9FF!BGWnx$XAXv`_{6Q)0jbX z)0`+kH`f^QK%)RJz>umqLF6=nrTd9tAUwim_yDx-PMF0LL{ux}4JTIM*%LrSw_+A` z!57`L5 zb8kAAY_anck=$-s8}#Xq&&~d#)-2}%*J{WMNtwbNh~$gU2CS^Y?TS4v({oBr#%VY` z<|CG+>&12MV*3e@U6qw_ljDtF5o@8G=&&aCz4Slve=?zG;=eyuvuRd<39J|xU;yc&7v zz6pb_hYx3d>B(UoXMKi|;W_;iIi~?;l$i&ja4#{OvP!b?0qI}y$_ ze4`(@d-jo`scca1=TrCvg++!J=%E*TI+7-3wno0Gkbh>9<<~oxJn0pLHuVh2M!u>~b&JE@zrd0&H zAz(t-(jJi>5mHbu#ob>T8983P(2QbQACGqkcE^i(qHDE0w$L!xYz;L-2zuh=g*Z-I z#zW-CWRX}d3tQJf6!}`GUak?ym&^d_pOn0C+^mMm{l*;G^Ezgo{1NI;z%iLsAKd+& z_QAbO?mP(~yk&F;XIBoaT5BTAly zklIj*tZa_z=7;;@wyu|w>s08pBn2i9cYmxSzRcwzCY@7Tv^;yx*z?c@e>Bb-J)K00 zS5kN=JZbu+p>$%}x}PZ@8` zMDt6;5^s>d%>(4__cw?JU=?=KEr>Ndq%pw5f>#ygfJ}ps*|H3Jz?6 zL#Bm*(QaeEl~1mPX)bGM{o2IWL5EpA@#Qj;x^u32mK>5&&dDviKXyRU^0CL%tU^t2 zgxtVsWNJ>q$=I^ZWXIIi*l6QGj|_YmK@~cswhaIjI*ud3F+l{*&pOx%$WazKPASvU zA0ksJR7#l=`+ zkpCS*!j=ta97b#~)jVfo)EO~GoLx+Ss)e`!CZ5>2=yA`-<+sz?A0Tlz1mEMZiGA#R`QfZX&=bu;RYE$QwA%E_4^Q%VA(*-X9YNMz zRBeeN7C?zPol+$uCg5#DH8K3~aDOUME!ARIFQ}YH$;(DR=X}YV*6jW-@_=Qk16Egj zghY>Rg(b=>)2cK&rJRKPzTPpz<%h}>e)&MPFP=#Y17@Ac>u{ud%(~rs4HkoOKW-gk zW|+4a5+t{C=HoRur*Rm^%yw`rmu&+xz_AHj?}+C+D>R38#4I`AA$-da?7GjIMHxBV zBzZQ8trp2B!3q-pksX^Yno|I2D@3E`$UC#dHncdVL5cRozHxHw$tk2oogyb3Svy0kk>D9YeZdogZ)>v{4smq=A-6Zkw9OPa>e>#pn`(Ca@%ST3 zty62{sQc4RUY));Phu^3Jg;nU(dW8W6B2#cm-V@B5RV4O1 z_^d2-plsBd+CI^s4ESbc1}>C#ry4=yQndD7HoT;SWS)_O>I3*stz0`uP|6oN$HMLnZey}-#HVy|S~MA2 z1sH0r6Ribovx1&I;s{$Y%!|f?Qph3G62)dqbxLO{3Jo~hx`4#SqO3%YTcN^9 z%{O&AOHVqTJ98>l{flskW!X@Av&#OLl2CHjQ)aDBuTiU1T8q{J(Alas?s96AKj}E& zI379T4{KPCvrS0$;s2n0SY_^GT4R7H%94eEacwR)#uze^WxmNAuK^?DoeeMfbA_DS zIv8geIk$3U46zxPgXHqcPc^D4{1Y;DMB|(kMW`U?Mftfgs+-q=Pg9>th0~0ty+ANV1ohZ?9Vh!Kq;9gfGhL!yo>pc?h6jGq(RjOsH zoG*>AYqy^2&3R@i=l*^7^Z-%7V5WT1$u60vvYeW|&~R_m6Vxv^I^izI*|7xmvSDt7-+t2fZ^ zmaF7SrBXI_>FT6PFzci~G}N^T=3@+W-wjet^P>{^fz)yoiH>LqteG$1Hs{n11Wv6K z?)gkbz+a@YU@PhTEpaY)Za{-g&ZQJN$U)?$^%Kn-q^mc9@F0>Zfmu|*IlotnSx4)- z3`6ZI=3XU)BWC$KS9&;urZl2W8#M;!Jze#K@(`!EV}VC0SDU7?E=$s;F<6fr>#Ckf z+rg<1kTV@6_m_C*EXGtS+8r#p0&)5|5NWi7OwFHT$C~Xh#Y?*80O#yeR4asro7&*8h zw!s=%EK3g1vgB9v+C*<{I36}R%yH9Q{oYJGU^y@{e`VO**W<|L7RnjV?k-?{e=O_C z?=4b3tuk>clPl(_#B^G}cc9@(hkE@(!_i@Ld7~7oglrlvN&x=_dBmksrT5suJc*$m z!^#;gCbVKR=udrgSiIT}ryyBv=mt^Yon~J_bdytcV{4R~Xmcx!4LRW)IF_)MhE$9= z6GL`fu{uUPOz-eKWLgacsWV!ZQ~wk#Y_N1dP64437T4RRpv|aLwQ}V4DHJj}dm9Tl zP+gsx2~Dx=^}n)vT@i0tf;wxPCS&$umfa=atR~UBiu`qp2|O1Vo9I{dy2ooWeJJG8 zsW|!$qbsbG^=2e}1gtp1OfoMq&?cUs=a@j!&_oDtxm1~HjbdNvXfNFzw8w5v0Ub5g z*<6K|9f_!6$!@EPlsHx3DS(zldzJVVXBwyEytpr%-0LluGd&J!S+t1x^6l%CUU4R>=6rs)TTT`RG{P!S~p-8b{@%F;VCn>L1Mvmw3&)Z7=jK zLDS>A6*QhYH1dg4LzRTjZ!>UxsnGafIa7?Llal}WPg!+rPaSuf`2Yh&b174zFSMp{ z%yyc?rNqO?PDtIew`(?MfD=@VLdCMsGT=8DfcA34;G)yHlej4mefZ!cygXPXr#p$3 zcrq(Zb4Fp|DF>GwD(Gsd$wTVI>a4P9XJBdn9o=a2-WAEnpZIzlv0%tzS80lJM?gAO zZ?qAL##FE0v0(oC`+e46DB|j|tDZ5K)zWz?gFT_4kYn%{?ocQH_mZ8YJvS!26Py_)tD;?XbYTU!<-+8X3)EOD2G_|c*KtKg(^SC9Kps;B z`HZBbj0;dUUu)NZ>(GrrKsXG?%CxW%gBKY)`P)lrnDVH>jz>v<(~?R8acK0m`Kq zroSD-wEA%|SiggIABcH|c8m4{ZiE&jAbRF{k;XRP2Xvaw_r{R1u!^pWhXY;Q$@XmB z0vg#LNN4j${iSmctgzvU(3IX(bNfSod`>3b9ww4QxiT{O=vq!;$T*F9SF|A6LcoQG znG`9lT$^d4Hapxm7S_p4xf=3 zWJ|LId8)Nar~|1v5<+q$gw*#cGlh}&GPE=OBgbTVV#fLt9H)?LW%%84CHY}WnO^0L zne>4f_SR+;$@Vhr?h7~m_J)SJuy;<(eDj=`B2jhj{?XXjn4kOyHi7vx`v^H_CrrK@ z+I`L~1I|Mka30hJ+%%$*9HJ5Xn2lOkD~z*v4hS&aUc~iH?Nhcom4@|w&&7ZQnA0lV-2ss;p zIgb@CpOoG!w4&HvfCgMENSVHt78-#Vtw}=}H*z}^SL6^^Kxak{aYc@k7W&0t)iSFk7*VkIkKoL}-o9fh_(Q$+u|7*6#48lz zhc8YY+uu3-CHQ?cH}1Rf)Qx{+988jF8KF;wDK=FCu(LQpubl!TT2wfK48xx~@`+W2 zJuBSXiSTOaFO1&gp~jQdUX4uW8|mp?SDM^Wi`!M{wJDV@vrVl9ess<5Kfu37?DaLY z*W}L|Pm#}|;MQ-nWPqFfu#;e0Z(tlSYodqqRWNiX3g}W8dB68&Mvj<5!W#$8aj#nO zyI&5fx%H5+nDpxvsxJpkay7&LeCx!r8rMCpJiD^z*kM!y#ZdP<&>#-e^yVFGUk^) zjY_Ro1pEV8J^3g~)yEWSZ`^#v9jXX0V|e&RAM>Fb|1V=>dL&LHnIr(a0JNjqW}Ns2 z3gkT!=%jS&rp*iU@F9W~2!F#@a1U z{vC0en3QRp(w=S*lj6rg4S!MUbDH+^mhI8W`Nd_r28-t{TQ2W3ko+~1ycn2-HIkO* zIFKgdpi-$j@Q%k?X|Rw#>r}9+x9zfPcZvo$J0cchtA1b&6L6@OD`cFWWtFl(e!yhR zPNZM8hF-EKf(GsLL8)4fy-tGk#oGq|&|~tjO>S{jb#lAV8s)y9$*l|J~}6KaT;LL*;#3oQjrf}w{Y!)z1glL2QmcH-svzHEK z7z|R=^4&HwnTD>-E7AO$uh1&t!myG-BNc>jHJ-hMX-r1s87Vnr4XYw_=(gHTj(1#A zqSL&GgIGhDJ^F*u0hv9{X|YqxygKy6(fQ5Eu^Ed|qf&c&hDTEIKvr-&b+Ova2AgHy zG9|ITO#&2)+_pY3I)2hMw&~ETO>#qGaZs5R0v3lNZCUEq$St%s1HbD-+z`>RO{_V@ z+ZlHLN{>G=G1NPFNFS7&v@V-Lrje6x>{ayT0&YvrGGOOr?Zm9l&dJj~7PCS> z++V7ON2itpx*oYvi*sm9flK53QHjK3NOD))5fxC^!@R75$huX;jgdt?wir4k$~#4o z?~?Wb3y>t_63l5Uk+e?^ty}xLh8O!!JMyFQiq%H=B)YLF~GO~Qq ztF}iYyMODqa2`MVx8Y}X8xwuC#^_U{GxP1{1SjoP7+di+=E$3^+Q0T@f?UjR1bP2G zk@vIYcd9}yu7G$Dbi06!;RR^zb>V!5t4C6E#g1r&-`I+PMyElZD}hdS#EHEDUAHR8 zHFmfPSPXVSu0G!_T6S=uRPUw5p!S%C{njdyRn8X%l@5>Dptj6=g<4LpOic4q7}@UC z^&VL3cgWZ!^Jv;=HuqTdI^$rZJ}68Xxm@P&B#8Wz_7|sBE0wyI>igfYFLS@n%rnn2 z!2L2Qb%L4OQ=B86B1WkI<)VbNtZ)Hok_z5rK1sK20M6>O8>ZKHZC(5rB# zoM#;5U4)!=;h1x8k>-a{0Xj2e3g`ZA=AAId9tH=Nm3F%VyxIs8243iY1;W zV()dl!s_LQ=@ELv(GxklFxYRS?(d$?#~92Tdgz1fu)kh>Uv?GW%i_V+^lHINy|H-@I!mtOy-np|084Sw&1cu1v_`%;d=)W9h6sYY-7ANKp~*9dwl zOVi($y}b`QcenQe*2_T#kr6py+@y<2p?{%$zI$2~KmfE!Ax?V~ei7`9`Ws%oWhrfN zBm=^;_vkjY7MN}LT9te{olcutF&o_Jpw)g=ckF@@=NXvpXC!xUn3-i-0({2!-p@$T ze78TtPJAY2YB)7q$Pqyt#ZL?*)Fo()y(&Rg0k2&O;JUAgg5S)RlYY4oi| z8qqMAGGHLBYcD`V(e&)Vjz%rrSOUt?!FpZ&r^Wp5#>z^$%s>L`d~JAye#xo0ua{#= zr6+DKj17;}@GGsB!_Uy-t}`0hBokr=aF3jeU~CtfaTg?yg5(2)G1#CxNn2i+C1Ict zEOK660w}U}E`aS6$pT!l-CIRIWGpw@J2M)pXjrY;=vT@OYBp5rDaz$)l|ohzm$Ks} z&q`1x*XUd}-lg#l2Gx3%iP_T=Tw{iqpJ7^F&=3{X5EWJlRR*laG^@Du$RaJqh|>P2 zD0c2dGqm#wn2`F(v;9L@Cn!ssFk}$MCu+?hzNLy|^Haa2rDeQm!Rsnm0v#We2(=S6 zbYg9a(R~Tq+b|DwIVBQEC9!<*Wo5eIn~n+cZdTUt#L~^A0*h^~i2HzrfKAY@X^Y9a zH|u&UVSq#g@mVB*kV$j;$A~?eXV#hD!77WjU9@U}Cz$+-&5+YQ2qQ&V+H$(gzopb! zJ;{Lux=o_#f)f{eB5=xHE2V`{@S-6?2l+!;^7jIaVgVDx5M1kSd)`gs{Mfx0yLpzM zzI{k0-4T1&9K?#!WaIm2-`+n2du%w>FSYZr=I&I#)u=IYPGPOOuzG|&)UIaOzvMT# zf)BDzseNy5WALI&=a!oK{;J*V2c!KjOR64pMtR7h-A-xm=-5<*be0m}$Im8UI zf02EH8D;KfUS)os)g$^mO67A_XwxWsQV^}H#p3pZR92c4k=3xUU7)vN7@^9r3{rT* zHL#DL6Pnj{nja~MZxH#tVHRH}(s-DB`Anhp`or+%*WXX1_b`%&iyP#H4IFK39w=ZO z5%Wrue|H#MS^+ij|wE-M1%}?@Mj_|{ufhQldh|&9T=B%a4w%Gy^ z5)cz!ykjS4ThugID7JH3bdQ@-hTJ}PR2*eYa%JxkS4n*6@I7H5%P$nUU)F1toY9_( zeqYiFgMF{gnA9hRHD>MO%a`x+7>QZa8GDiw*FMf^WGb1Qy;bYlO}x7gnw1Tfqp{m% z<=)s$$#IJOm|US`IgWc$ZDbYgs5+Ti?wg(6t8T-q-1>#9KC{|r(wS_>cMkx)ghH*7 z-=eKjdvD38Y~;1xJA{K;g_2mE{wK@^mnEq5DJkBu-N@be!i|4qj7*Boz7QuSYGA3C z3Ab4*%}g)s97ZFoG~yCX6_HrED6Mg=+E0&6sB)eXM?B-#OSMDVg$m2oA&z!4|AF}) zdmp1?91_Bbgo?()!arzs>GvZrmWBCr3WdKbaG%50c;gd9#xI z{Ss6VcK?z)%=Ix9a(m~PZ{x(UT79}#0I%{4YQabx3F5+j?>@BKSnNk9Qy#bJ(N{0T)>h{qd>Q?X83KTp2?Nr z3dIp$Pw*|PV-{|g$0E8ya1xld?yZS|5pp8oD$bF&LIoTY7_&6{YhrnTgs&cEVou^^ zGy(6r-m+zP%*^5#7~5UfNV87V|H&Yfu~&v!C%HY+PAI&7_%d}EbY}9*wFS?SLwb`( zzvxT81zLVEs{JGiu%rvvc%9&OjHX$=wnEY>!fkT`siVgX@&9op^wC}bmxT>I%#}z-Kj=XP4 z5Y6N-r2w0tcxfVxKrJ=ZYc-t|9WKC<0FZjoOt}UO^mT)*7&EcB3M8bq^nZX*K0c9}*r6iDX!G$8Gni$x4o0l3!)Z(4>$L-mk&dYEMOWlM# z`A$bw`Z1t1Z0*!5FCPDqj6E^tg-e}tEEp|J^orxq+A&v?RUDpc7HNH zlyEDodK1e!J{ll59{vLxrzA4|5qC|tLhO)}iIBJsWUXUbSrVOyMeVy=vSL=95iLZF zwGMYDwNgzl-2Wx=#f%_^z-kfc4(@D6%}hj&HP-;!6%+FBY`f?qmswPjM_v1tCXXtp z1Y7n>THP^rAj0_o5BR8gfZXO`0If}zrImm^J21Ppl`W1yH>Q{-HW4^Y?7(JXk)dF- z2_pRp?g0~vGP+^H!V~c}y_PMdiLt{sF6ogHMV!$BXc?{uzNA2N1%jel26Z`fW+P!abAHDGnf=h|+%YI1g zn~Uior*MrOVldZR+&)YbMRyfihq3$W@JWI?dk*)Ln*iG{*PwAr93fv_EHv-!5Ku1_ znpU_HGFS_bm;hP*lV%u~gToxh;fnDYIL!NmW_@S-pqYu27Y^do%fSQW-3QI$F>g2Salw0 zM33=X{WD9Dzipnuu;p%kJ6Vd}brGJ);2@002l-4OQW6jM(AZ{;f74+0dHTRyHb>xH zusbm`1?+|5_`Ud}iGb0*aehgRRdlB0k+qD1Pm~B8ZOgu!441AE^iab6;W|11KS!yO zplsKcCW-}WJh|UJP)Uu(ZJ)0kxc`7W9ruJvzyE03|K}^^>jy^*d3VU{zjEM=(06M6 z@>IniYM2DILFc!5-KE6XiR;xxmYweFU$&@qrj=@O>i36N!k(TS`+RvUGqu|L4^?4m zMLW9Sv6y!M>t_s;!QPiD6S3(FNBV;%w>MWk{M@BWFCJxlj`(E4j%31DZ#zrF831)#gOX8zH zXPQ+(%=8tD;v`Y9a|Ku+0Ygx;Li1u#G?C{v3j|{|Pg4zy7FgJuH@G9}$i>v*WN_13 z*q)%uFkyy7-1Z`Uv|MN|n#H4Z-V%vU8RF*N=54NWb!2)TtYL5hrp}0U6^|~Gm!g@h zZ)xrPWi+RrN%C5@j0~o4x_r~~_Mi_K?G* zk+aHZx-b@XO};Z2NUaIEgYnSdIM;h}Wd814;`H=NF%TIK1gCvH#g*z>&Y8b^cI;%D z`)(zg&4xoZ_D?3J)JCJq#7*SWQKd}hNctz%ekE@Wg)>5oy?*)`-jhp@}7MSzQx+~V`~>a_DdhWu8 zdgLK*@lttWRR}(}djMVm{V);zc#C_P=*K62jP^+N65%BC~Z>Cih*FMr@Kaln&*){MSlNP%rJa~cKUp{Cx0g>er|HhausiX8b86~Gc* zayCRU?)p%e{ManLwpn3&oqkm>G>6RMp$=NYyX={!45BGwr7fzSQLL&j;lNau7vpod z4Xqiii9_q;jR$MZLp%;kGsL>L!b8(2x;T$-sS#`}4#KxscrgV$P6x@Auiq?4w&SSn zw~?d6$s=7UjQvWP3fW$fT7mGeT#8DP)$;xV$aPb7i(p^$MjV6Aq}f=AL}PvLJRMy; zG?A^czePoS+G3ALV)pq#%8$&(+frUTh*JJ|iZwe-DSIN2w1p$)wFgf=@dbTP-)d>T zEpk@>l-6BCJ5BDJA|#WO82AnDHRN6Y3#@s=J^U*7J>~#&l;xO~M@G<6fAz6fpfJl!Lz#(5&3RRc^lM&3MzrIE2gSX?WJn?!?F1#tmj^D&t3*j7*pE6gx% z(3bZ)(r#_@^bv0s50gjBG+J6Vi%#+=O>gXRs6FE)L|1A=%$?*Hm&ll*<~4gwE&S30J*jx z_c>P^_J2^*_CIW>1zW25bfU%T?+mm4)L zuhA(+XTS4C?fhM{*-Mu`cX{slw9=xPI8}95Vu{jXv47<+6TE}`A8i1Y`QI{!m@~}X zY=UWB2B`;#AOn{{kb$r!)4B_u%aP|Y(4<9^^m}xmzE=lk$=ha82WH2~GmCEq&h&*qKiB#P#pk=zM=qW%hbVieSGQyz&cTP zl-%juUAV-QC_Lht2%Nipehg(FP#Hi>Ww-Zr$77P18<+QWjE_xbuk!jqb}}D{LrH6)Cu3sdNY4*s(z}LFb&Ae zT7x<)SD97)cmML)$tND1d{6cHswSpOOZMb{%0J3|kNEY^NO8wEZ~P^-C$hUp+~HY(a|%AB>}aCUPjiK>M4LB^dR8sVTqkT!P?$*OyB#54Iusvpe1EIyN{KE75ySdS?R zo3`gZ@yKTlJ@r&D8&-!^;pAtpojIttUi#$N$ccf-q&eVpnJsFiDx}aE43Yeb;7FR> zmZZ<)o&RurEDK&qoo-}<(ls9pUzfqneM^24*Ua-~+S zS1J@*lSb9IcH}}b6G=xh?(#JC8GpmIh|d@!*zFrkD?+&CmIo@AtO$JSf?@D+)strZx+Xi5J%{v5i^kcZENTw4c)pMqFB!e40(*v zBQ@`g_Y+xHn8pMKaePw=g4!awifL61-BLIOEP*kg$C}_<10y;RY6J5o6@E)ol;H|q zrA0J`YS^pSxun?ALS$oN_v{~a*v%1y3#!BrSB1SmaqK~B=gQ(?Tj4hr)<1ae{0Hg> zFaGvZ&z#^`wbEeFU4HeoZ+$D0;@w(puiR)*oBE>Ot3P+usmb=F@&#^g&h*l;OCSHl zg|T7FXD&SRhwCgSCwibh_5D|OUvwJuCbzoBt#hPYQG0!MZeXI6an7vkF#7|pe!~tTGN02Cp#{okaPq%;w#$cV;ww)fV9jKTXyGet4j=ki>W%T@I zX0gGx1N2q{#+R5zm7M=L@OjwD`74=d91L$m2BFjlT&WQkZ+TOuvB&!wG+t^?1$XRU zWKZ&loTf}Qq@u>N^Dg=dJCrUSo;m;c%NIb04_vvnn5e{DDw9dWb8?5yV~<4pe3O@o z-PhOHhG{al`pB<6aP9MOkzP1Db1EP5hUIF7o;57Rrs749_26@}-B;Uq=q)bKsF_2o ziGg&;B=W`bIC0rrAn_|XM~xu%REjiYWeSi5mX-k3&6qj_&`hjb%YtQYivz-y!$R}m z4mtPj2t~`0gJ9z#0m{Og1n?t8vJ@ue=%XCX`%>%-2)U@kzy_S+5!g?4kes&b5D={M zTMmnN4YYU}_^t?6+Rjw_r!nc5gULA(!)___^+|YQh)yTQ*T}cetYE!XOv2XcjAbiQ z96Jb-G-)WKvXaLlF56B|DDDWCsfWWmAn~*8ON>ynSEWD2&pIWi$^JIYQ0!j44QyVX zF8I9MNHRUldi=$yb_!(a%7KxBGw5*kIE%w;cbC~0At^D}Ma%=&rU_!s4QU|#s2R;w z$E6%c?bPAtDg}qv>+?7YmG^BP687NW8D^RJd!`i!6P70?ERJJi@idWALul5D5Qu^< z1Pd)&1ADiD!_O#)xw@98rpCso1q5G)H!t$^t-~IA$qY{79R@007T?r}_nR zrT}{V^pT%#lq}Nw7J)`RCIS4l`+`@g)*9HSTSiKpJzha30Ba}4C)*uqB z`4`uX*9hK;QEp|OzB%Kl|s$j8b<@0*Ly6|=*8 zQSNE2*`|1?192a{G=HhI$+~97$iYhYR+b|7c9uEFe35C*fxDT+>{4qE2cPF)snMjl z>4EDh8Nn)UI#5vim;iZg3eCn&+vKek!0Kr`Qjm5cZ3n1KBwi%w0X_t+C=Gg9wEUZv ze06eW12gx~K@^&WZQck|;z!Khnf(>r8(Q;#QyuLK zvkINFr_eLBaFU#I(CsiOxzXz?cJ0vcs?r?tc*81{kxS*5^MfJhu_roqa_Y=b(L9wI zIhoP=dl&lB`9qb-xbMM<*kk^P-x|t{>1QNA^cJ~KFooS>;5He_ZNl~_2HT@-xQm9z z{anp*QH)^T0XB7k;f$kyiDxu)DBFXpy6V($))7b6OVB$+0RxR6TI0~z%#3TLdF;9e z$rhU9{I<=P>5I~3+#|?!+l=rcPm3U7RbI8vuXlp_$ZgX*G%Y}+2K#tHIPBCu-~P2% zX(aF8o80kus5MKE6VJM|QGK%Y+nl(^wZHKlDRM{qWwx39PBdWIsKXKJb!c9_=b1mm z*v&)E^%uDR!Hi%A=WoErOUw(v{Z1elw0wD%Mj%^1aA-AwBec{EHP4I>ZLHb;FBkSN9U^iYfZw$kZ0C$RK1!CSWT zg99_TL}Hj1bFecFN4Tp*4*3MsQDR&#yf-`rQCv|Pkzc@l(c@4igDEpiue8xUdR48Z1o}@@^sufG(V>vmF5KGibM|kx0UYTQp?^{P@+{Y3RcgF0QIKM@z&VjV3;A~y@Rwvb+4?+4NTfkwp@WC0s-{-tkL z$4z%tefAfNC(m;usdA5dwa}Jq?TF3Lu6_{N&J`i^M#TFyqk6-b>k0Pu&^(I#C&b3x z#XQBl%to134D4JVv2!srUonCjT1O!QW=I6AD721Zj^yYmN-FUzd83TH+EN2q`lQgR zHAZ1|*JawuZV5bGC=^0to*DLi6knBt^C#pu&8>EIzic>})5G zy!4TmreA6PyA_7?9TNs9@d}aqJ!hdAVDj+A=Rt4}@U8JDUjP{Km_;0Y7;og3V))sY zq*z$fcp6^xBE|?)jB$CAT;=-kI3mv{dC~L|dB+Qut-ENmj3YBrzJ9Cx+mr) z=)W(W(n+;-Gi_2LrTyQXf@Z5yb^CZc){eVLc=mdE)Bfyh@4H*iYv#^R7xrXX-g$oZ z=?r3&;>XwD*s)~~4gy9wQwblqCAc<5`VQnBz3t%objqI}+83~2X8&|%?laFOUQ zO>}ey<<7m`q9G_wL^f zPVSH6AM;(&7Bd4IQ1jjWj_e0m^Nlh!=3%zNv;v@g_Ym#7ztFtL47djzLG~U@uRuEs z0jQ@0aq}3_J1aFqssc1YwMI@MUkXs24hUjW_inRVXeP~~0o3mip?P^n3S=O9aqNo| zfh|SqhFSwlM7xit*Ff*4VVl^a5Vu?=cH|szO1;T@Po25v8rIk>qTvJ*sI*koV>Cc- z#frFDaE*U6nJV_s#1VCwW5=Twt5Eh?lR`FxgkEHSe)B%h(CCPj^%urBcwkFVQwztW(*SLKwhj zp?3V^R8sO08O}Svt2p-1RbZIoZ1-Wo{(4oMy=X9Si7C*W@%{rs-vCjj-G3Q<$QW>- zj&b&$2PcYxD(cb=_}xCm)`zAaX8j|_M)Rv{=BmXRl6g($zS3+q6tAA}hgLvgS4U%< zPH&wr_OH5j*x=j|Q{^9djngv(dJ~&I9Ro$0eEMJ-v}=LwAGJi|<*37?=jXZMh0@SQ zy>BF0sPvgwt=eXY%oGl+Xo~6Mv$OqLvs(W9Uo1~A)_&&k)r22=>AoX-jp&}02{QLE z|C4Fiz^JK;+f&qsog(ql6vj(hm^85gm0(VQymGm?y-X4K6{4r-1yKgIrF$`HEY)`X zSleBN9dwp=VOd=tQL7kLE6LRM614*Q*F~V$9)-;Qo0gvX)a(%u^Cim`W9~P=mwo)U zOj|y6g>JTLsfy=mt2i(}#`=gVTtQV>#$v;H602GKq5dIeLMpGSLS|OhV^&K<7?Mys}>-+Fc?Fba%k>)lDF(hU7)mjJBC1G0rpd zMZsLsf&#El_2+i~7Xo+QWEg)y#XWCL3{Wj7&k!vbzvAlo$j0gSaZ0^2Cj@R4@3J?yHF<0UP8PahBMTmbZk{0wx~YsVv)^ z(%=?o4pC%*Ky?C2i9r0)#v-a>o&;b;$qRwB6^M2!RY0P*f*rOaZwhZ%fH&+PNSI`r z;FI5J!xy{JP-Xv&KplC}`rzh1sI&6Q309@E2eLlIH;cZlhKX@WnnW zEB{(`Jibyo{E&Yi$`Q^_r3RKNwTP1laHg0nSqQq>6SwsdOoOxf5SXy?^fTUKB>Vyr#V_7*G9YNUt+ zw6Lzu8t<*Ofj^x~*`Ff3DG9qLdBOe#iKdKd@6poS`8Vz+5!O>T#bwX^`U@w=?q@%t zB2VeFg=>qeXCbcI7lt*TI{UMud-@a9%n-B1z@$Y3<0$yWQ-zjahcn<24emFC_GVQ9 z(m4Xyu3@2R+<~Gv{IVVlc|A5-6fcldkW;rAghT{Ak*1vXE7YmV!eC3#gD_i+7hnsQ zrUq*_nxGkmHRjIGc2YUZv1qn`HLI9UO(%jMJHzQ|t$FwUOP@Y}_GbYBU0bZIw;|52 zEFHySwPHm$xA9PY_gj*VL9T6)`I?j)&_iwjJE|F?M@_fTv==4X(B@2`HHZX@gJa~S z9!wU*usx)mEI<-kCfTc@8|8dE&2VA6MgyZ7vWC;W=-;z&f(ywnGH6LRh5$@Zla zZj&{=IpfA2ZKKis<>3SObW#gansodiq)GQB+c*(mrA4);D*VhDDZ4 zHm0NZ9MStF=6eiS=x+X-L?iK8IL>%4vIRGLXr7^85LLQ&w=AlDVt~E3X1zMKxX%5ir;p4&9h6O??RnikKSo|JsP!UiCm9D z|0JE^p5>76?T zcQB0GrHQ=@xcbgeWG5Cu`d4{z5}Nm}6WkBu5s&fW2n`>^yUqi^>wSc_P{;VU(v9h* z)%C|{K=5XAW%JV2>!3?Aa6h^Pj4qKdwiPbIQod%{(o!%s_^QUY9O~nAE@R6T2=>8G zIK?;5U@NtwT^vC&IE47h1SJEo$2wavR8rC~A+1a8=6W$Spy`lqH$kP^<{7{NjXllS zN@w?9WH0i%pjE54-q$k}v8f{2SnRR)r+POx*_px7%BHtSt-{2KDUCzr@FO+vWKoLj(_VLh8Vx|Xwv78Cw%_IZ^pwp z-W5x-s|IVp!1I}5T`9;}Q?q0Ik;YMS8bf_khhm1Q^1Ul()`!YOUWX%A$YB7P0rF883=6wALA>wrB*CVS`&7l}zr zqldut25H(vP@x)Hp%qWFRPi)p#Zx6!VA4LiVJ6RShut%?m>{d5OK4CJk(E5eA}{*p z>8?O?1B2A&6iquzj(M1^>`QWBR^yI6!k8dY5Ud$S)TycxfwMbyytLiKybFZ)~^*SexLIg(PSt_+K>rOjm!O#m z$tgL3%FbKfSY8c@(EJi{ywqF*=?;R4yI2c5&oX0t>Q(>-wKkq4g8%7f+1N_u5Sc zULPuX2eZ8u*WK^G|HD6%?vEsGvG~U>u1?q;haP|7h$ZX~*xg2(O0AMx%xar#fbAVT z(wh-R4h{8(li`fJFjo=o`pqYHdy~PnfvcY`$RFM~@~8|pS*i4Lg@V(o9cs-Evj?vx zi0%I%@>-kd_0XVc-x6dRV$dA`Py2w4bz4u>S`R5nMz4egcxIrv+wP^lxR_18EuRU#?xq7zK^QxFGo;mdB;1geHvUhhHUSSsGJM3=| z-K+wNcM-@Uh)M$vgT!?2LNHUHDX|oc;4-ORi7h1D83utC2op^;m=M#L2&QS8%v)+x z*_hcDT#Q=M-Co&95Vu`-p5vx{yn(8!F>K!y9~J910BR| ztkGX+^s4!g$iYQ>B|%rN~X7trnjz^C_aT0 ztu~c;K!bHyPfq;1hl0a6-!l6pVE3LKn|F?f_Ji-f*EjZn?`}XeQ@90gYt?)4b~hU8 zCVVN%hWpCh_>t@xw3(yKCz+P1-6t0)v`lzvCK@qHF%A@m;%G3fM8`5x+m4f3%C5i4 zL5CD=frGXjl@lzb-d7wL0f3XMkb4@4C;Jc{X9jqnRR-XkB1X~jwpMR(hH{k#)mdEf z#qPC@c6+DCU>Qqo+UTEPuPypo8E_vkbNa-Cw8!N)4})| z=uJ1cF?C^+*r;Vex}(F*zp3=cvZX4;jxEO9hnE>S3k`0(%wQSuDhE@TVdh)O3_{92 zD17d{(zics`Oy?xRakC>KT?qU9IEG6fwgK&%k(7wco z;RLY2aWq56z{rMZAHarwy1&-ZO|so->Z)BX#)>2YExWBdchy*?$+hWnAh@@RIC}DW zb%|Do50tOF!o6WrG5`C+2g05nfxT=UO8l%D`G{sGGXeQOSx4? z`g<(W;8fRNR|wMmRq#yh4%iY7oPygPA~AJzh`8--fgW`fGi}inCC~vJ%h01{5W+GA zT36K5Oi~=%(J&mNy?wyABQidmByZ~ZZO#==VQ!O{P$R@yEseQ~`ds2jB&4wWAZCt2 z515KX+Cw~5;3_%5+Yh$f>Bu|Yot$9Dt55Y#rGxK0eaEx@GWGR4S57P)ID{TvIafHl z`EdP-FWly&Sy{*Db5alF_lP#nK!56OvY50TwV$4NhTx$hBsHBd9YoH4N)U&^!p>rE zYFBF~*>>k0j1-kSy{WA-?yoH8=>E#vXF74o3JmG@GsCz{WenR?%a(0}Ib*D%NjA@r zGajoor}&m3hl%K6tjYKDTbiV4JZxtweS>v8=(- z>pRVYIUV+!I$Sx`ka~aOdXMLn<^!uZ81{K(RBJW$*zCcoV?c`?RB4jtli*sb#X19E`IQMV00ooPN#>aEOtxKne9KjWbteaC$q^EE!1dc z{S!T9Z$Q7dJ@%S$DtGukYkIB!*ifez7VzFQWNJ-tk9_1FnS6+YVa_XzRQhy!45vkM z*y4~&;<7+!iX@0n><3ZJ2+bJsihwwj^!{`^z2R=v>EK75ny?;fv|vGrGDg8&nctT2 z_GAVGFge0o-eyd`a8A>YFuTqZc`#y*fyg5U!@C7y#d`F>Q3w1`<+_aWL(wfzSbqCA z)fIlqSkK~RT~GA3^@iu)o|!fn)(59}&&^{zSC$Ox)s0KHlpo%H=D^duX7Xge=a#{p zZjb6=<}4dvS}u?WWWooLLR=cou@stRn$#l_nIjUJLy62y5Q!`a;z{zt5rK9Por9%i zdj@lW#o!oyq=ow@b>$y3i>Jveo0P-Aym?yPp2`8@MT*gzo3!I3NriS7%wG&6#TfKM z%Dn!;iD{79>0`WQM9a8hhH`#xX&p?OXa**fg_>yJB$Bh_a8PHEeA$N~6EAAbz*}zs z2K!<1)yX9y)}$R0y3Hee>%b<8bsbZ^E?)Ep_YdprZ$|D;aZ#K_LxP(dlK+2V!=iE_8-Xd78pTrek!HCyZghig98kIsTjmelabbiPM z%_ z%jo>=Lb=YY{5Nlzh`(Jp*BON87!^79W8A-zcrL`OQO^cdEvRYB@OY7n&yJ8SLKEf6 zPG$idm8c|!tEIQNrTVj%91t*1h$cJj((Y<-wc8(DC4Sv$l#d>nzVfN7D<@w5(Y8v#moJ>Jj(9R@Tb9|wm+{vG|6eC) z3HUN17%?FsL|JGmi(;J?2~v-fJt*|JJ7;>9A_N z_9s91`SR%leRI{m3C%@#8#@Ls`9j5L|M17Jee};e)EeLZ#HYXE$js(ytK&I%%bq&; zAc-bhHL$cQVoPf(xC=FCiqhk9Gq_esL9~j}rppgFy&*KsJJJcYa%Oan zkZLA}RUwC^r7u))pGSot7bH5&nW^cl@S@%U_Am);9#vV@=0z?1i=_NH*bj;l>37uZ*==6KeF4*@2aE+|R)vlhPFl3q7{+_nK%jjzk-=zJSkg@VVLDACC7{W-QL|%&Fb~ z+nx1$LY=u^i1U}3L(D1GjQcfaI$7f5bY$0zr4!;cU=XvpQfM9&V2_uTPUySM+j*+w zd91nQ%b?_^g=TU`D%Cc}=}d2T!uKQ#Bg0VR#R_4eby5!BdJ^)ea@r#3>(IL_>M++2 z0z3nQeL%a=|Nk-f-f@y#)xG$w>YS>(s&mdcRCjfnp0pD;%j)TVdr#!?==G~k2B!Cj3U z!MqGnPo1Oox-C(d->+vVS1K>{5aER&gmDbp|0D3n>LUFoActqt{3T``P~N3STbF)z zWP#Nx1A@|KGB5=N=8}HtQiR*f3d7mq!oZ!rA+K`{Ce0 zxS@AxZW*EsJMX>sHQa$jz@JPMT>7)|qEm0R`%y{7UBdvx*jb-AJe0RCX7@DUNJ0#v zHZ>2b>KF5cLY|EFx$Pnc$+rk-{ON7=EpwaoE!2$k$xQ|fv0I@wBn)16V`io=fthGw zS+*^J2(Euf?k^6JA+QK$aTFOMvFRWKG#*r8blFvxMTWF87^wFHSQfy4NQeW|9H2P> zM&1mRVXPMGt!d2cbXgg4bdL4k5K*0gnF~g2^P%840(U~mmX@GYpX13++)xH%B3dl8R8$NXg- zhVFDr7NGo!wL34ML^X4xI84ROmb8&@Jt7$Dx{Tmv@fnw=*6K||SVJu~pyR26Id>zX zGkBuKMz=S;q&aEx$PS?U|EWuiD4|zrv?~jz&;P<%t(Xx7=PUTa#~%KDQyS|eL*a?q z)NTWJP19>{2uxEe9L3RKsaHO|z9Gs?#o!K^d&2F={QP=_zq+ zhM2+@K<~rIsTHD2fRfSQsSK=mtXQqwet@q5up+3cu5IDdfZnQ6vA61Sj7{%B!^xMX zYOL01Ax70+QOy;=Mx^G`G#fU#u$Ap#^>U_8Gg;#dXi$yDfvyHH7#ddHt&o0{OQ!fj zwq-GR{W?o0Rq7aG8SY+FWBp0t-o3r++(wsRk1B_%XWrwBZUZq}7(c$SzgAnG-M@Y^ z&3&wxcDvKX#g?@>`Rww=Y{o8`t>t>=wWm6}wxOCGdRxxA|L*DO*UV(KJ$?!OmnYF; z2sIIwF`@LEazEPyoNeai4w?wH-K=PFeCygs9t2WJEXM?iB?tqt!WE3>%N^)`6wqxf ziqI&VmIfgyiuOPg!Ut9#OAEUo+&N71avGeQR9%8 zCXbg&$EHtYTemO5s`tNY;lez|X6nuP3t12tr{1(@=R=2YxZ&7?3wz&m0`9%@#vLaY z>L=jyCmQpor!KsM&EA~izDk_B6V!|FlSR_!n*DaHO-7W0?LP5r=8&ym`^Tg=qrv-RCl-UFlFZ z=S^k4@Td)dWjJCW5w6btgv4PEgN;54Jp>*sj`TP&BZ!c3A%u(z;Vgy(R7V1|o48rr zEwav64bv@2dE|!%R~w?hhCIW$Bcl$$6xSSuW}yn$z#!9(FLw{NQo&NWTnZ&yL(H=q z-nrOxI^Dr@J9nQANlxbX#5Q(uJGi%y069j$QF9=MJEf`0gRBgqzh=dU8dz~4vDIjy z)+i=6yc`vSA;7SANFugdbK<}X&RVa}YY&`mYq-S2jE~l#_RFvTMVD89y4WdsK8k zW&%_Z57OxFr!DkRVf=gm5D@fcMD0$n`V}G$e9<&Kv`d1-y%pk_4%qh~E&$~b76FjT zFSnG=;IzfcnPPiiSK$+F(QUp-ThrXBegAAV8Vu5GD`w#rybg=~!5b=5bZs}zb{{6( zm0#ojV`ELXldkJ}j8ae;2|%1i1stm(q-qZ15ZklwUd+BDMq`@Yu%OJffb(Plpv*Wx z2UDJ?;WSPW+ulcu&%dc_7!n)3dI3&aLVn%pvk%o{aB}C5oO#`@-4CBU#{CDJ$BfV$ zpBQtc;Iy8fojwvz9GRNG9?#^Jr|DY0P1lkj6><;hyKyxTfh#Fch#t~bQw5Ak*iZ1# zRv%VPyI`6f>+omc7KpJVp~sjVTOAB;G=->Pn}pOCF#zvO4yq1xzE}pm65UWgzS7dV zBOdkdmRmi!e$5(%OfZxVi3yqekNMJk+(e|_U$=*r{dEE&WA z{X;K9V7TwY?KtqEH|vwM({5T@4YIWb8QQbcMGCA*ExLvM>83&9G8-8H-n<(%D3B-Q>}c*rgK?62B8#>C8FFUK4uzePY=gwAll#{ zsYM@T&n(#a!-j>XMCEQHI%fei~GEn7KT;b!?Mre>J^1GO?*02Lhm}-Dp6R;V= zGS-!cv93IfmB`Z=Rbc)5{TPd8ZZA1u0c zlB1jt=x{bYQODSn)qak8N3lXxVc~=AX@xlFy}HFA(FG)h;rZoFBhdx!O~)TrUvuw= z|Ku$f`xTB8EiO~;7f;^z(bpd*8yt6HItUQE`N?J-fOP5qxL>*R@STtT(w&d}{@v$v zJg;{+ghSUq^{SmG?weTVqlc%a3z@dxx*ITa0cm%L5vR}TPPlS_4d*hM{#5VB_YE80 zH`Ed1^K0LR_rJzJzWMooV(&97Zr#&F>-o`tO?MpUO&b4xJgboD6XQBncqHyBlN z6qVCaXev1;tGBc8Lz`i1&r-%M0|*pZ-eW1R=w_GARE5zm<#BuFp#WW!)jAkH_h74- z2B&?9VTfI1R~KFCo!ep&$2W6;05$}!=T2lQb(-LC!(P{R2bJA1#EtA5lvOY8^C22{ zRe>-R^v4TKN&^b*oflyY;PTOlbFAl8ZJz=>?lG3z$iVnI9Uydj-7qRngshY*G|_S( z>h0%PnB$cAOlI19=*$f_VGBKod^Z*OYMq)xeQAh8t3eQMA`rfeG33@-$*$US{{O;` z(@h`hL=(n|Kr0Y;C_A&w?UvP#B#-F6q8r(j{LkK$^k6%=+x1y77b%qdskH0$yY9Hk zG~?d*sMTrht^fVj{xuqY#_rYj;*Uo5;$P`@p#5Z}vhF!5>lBa_W?2>J9umx0kqR@w zA~Ni%zDLFu?WDqin-NE#Z{TzWV_E&W0_Bp_WnL-TZRYZ7kR>YZE>)zPz`%rH3+61x zF=GJ2fYrPZ=#dXUldM7_Kjg@NeLLLh1SE2E_H{4lvnE>G>y=o;5PY>5!rg zO1Nvu*n1f=RupLNKr+fBWR&qNQI`cq(t(H8?}R>SKlGwPyk)DtFV=*<@Pb}#Mt&^x zJ1_JF*NRgR-Qee~v^z~VwG0I@@wUX<(f~w2yT3+3lzIdD9{ok07Mp^z-KpV!+{*BE ze1}?Sb%Y0psbRBRTT{l;VM=^Gx{qqYKj9U z=>UsD&~q8atFZ%7MIN^oD=Akj+?MB#Qf3ts6~TWnJU-`?+To~u$gzoLs_Lml`a-CwUlVhj?J&XD|MsZWUza*d=8n@{WAAPaxZxwftoCDQ$0Z0Vo@L< zM1AP94kA#x->nSJB9!OZn=Ba318AK7OjFg<4-oqR_7!ngsQEpRC>w9?t;) z!4>D&j0$n!3fkdSOIk4rY($VAz!($Bbg4de_$0h>R(iTzJ$?SRSEDA(A~Z5T3{H3u zf29UM@`#d*V9AEIU`WF>SPeQE6SbNcgD5L%Q1*BH%+}@o&@vn2_+QhxgLYrY?65iW zMvKkvH3++tzLe9>aaBQz`#HVnwVRy|tHogEtOmQ)X?A!`X5Jli*+M>!7hJhutuA=& zV$*7OnnFIC&tlbi;~uNWX6M`iQ3yI59OpDSon}ui_;t={Pv(mY#kJaLKIP?=ahl}GAu~5?LcS+$yHeofH^pkam!_9HC>2N%&lj7Rbd4wuvVRH+`QHUgJ;-^Jzi z4{=8hbUAN~j|GetkGTGM&YQ2=MH}Bb0J5P*fAD;Wl&G}*44W#W8Z3b0Juu*2G88T4 z)rMbRbd=SG<+3UkU5OWDwQ9NyW0<2BvKRcMCJs%blA_LpgON&vvZ7|B%c~ytX2!+3 zC+(UXmRA$(RR)37R6+>>;#h|Hu?9UGrXc#O*s=CLiAi( ze@8eH2_H{%N*@W=Gy7ZagsB=&b~?%0z5}KF>uSFpb#l+$RjJg-kdDXrATg0?sJj7t zMKwd|7*GZo^zAeBOs*Oy(@{!CBfUY7b+x%_L;6uUiXEutHORQsStlJp!1UNv&!uJ| z6hOC4187)hZwFj`4_uZRAnmA-8>}zKr%P&S zcd_YjBtnt6k*`LRoi_6;;Jmr$c{7m$d5R3oaN?vU^vD5`dFm$7Uw&#sSm^01%6%I) z`6j78Gl!@?QwtJKFa~nz#mhswr(8s4y>KwvSfX?+0UZlK9i!lnXEDSJB~EB9^m$RW z0jf@1Vl}NA!Az~;-eZRsEBUtaka;iH1LAyk>XF-TeezOuYWHdDsrgJQld(IvDka6n zp)Zafef8@utp5oYz46t@s6gcy=6Etx$$Lf#t0Oh)t3FK6 z@*IJA!$m%{5^wahm%~c&c&K3p7kdw95JuadE zXo3r3c^X*c%KU*mwWOw8Z&}Hokb!zFUe!J%B9`fUhenM2;VC#JJuLt_O=dZRPhQM3<2AfuLym6Juiu zF`E_L+3fn)Yw}(vJvRZWsNaM#BS5Yv0~eed-{zsQSy&vI3F872#%}a8RVSr)2;dJu zqPl#n>IZmy3i)_2jX5qSZ@#6)MkbAZ8pfQ zp{ON#jvNZKhUPHlr5Ys|maff%huC02%PW;3Cgkv?^85+W`KmZkXQd_2EQiaP8>1$O1{C9OUOVNfzBKLz#k+-03zuAet32>5m21 zrFQr2*`1s8t4;Pg-Gj+F^ChP*k$W|eaI7wrO*` zoWT{W$Kn;2DRQw&Ek81(@exYnDN5nP8Ey6;{nmDAKT6{0Hg3F}q-RVsjB=tj zwD=0L!RdBubO*+C+@X+ryWw{p*)~R*!k3UK%mysf&0;w=!hk=ge0pcRn#?WKM@_*L z<>4VC+?6?1~3vTQq*16%Y!s{W>j>p&dY8y zwan)&tcPT5O|4R5FCyahEGtk0RiH4LYGhYTp7axn>Zc#JD}6uH6ix+gMra?Yj!_|- zZR40@dJqcG#H@hm04Sq0Rmwc}P7!sUfC&{1IBdDzrY#k>fhE`rJoyVN*knw2sSy4Kyh zp_OC`2MG-7JC`8-TLl+MXLk8=6KtH^3P~5CRkI()Lg+X%2y|x3cZWL;eD{fJfO@a$ zPJnP$npIXK-|u1(LuFzLO)Y~K-=)VWy@@i$su7z|KRx37b6VX3-UeppG{rnLqq#9p zA|6W3G`Z-dc*VI3vPfg?qM>4n#Cz?=c%*#J?h{Y$l8eQtN37J-cLgrZo_+87^}yfP z2u7cn9qXlYayyln5Cf@VPKa?|W>JK=-|Pvy zR7_SZ$=yn4tX?V`N@ky-P{cq`>9pPDwC-K()`7#NdgkW9rTc-q_k}YR{tquMU-``G z)6M9PS}|RVq|)uI&vx<@_h+M#qQ6$AN143dWh|!WH?jV8?it=q&+k9LR3hg;5;C+? z`43RPX`1r>n_BeC)a+MebrB*;azEN!RZtVEx-mte!gST}yT>S~S3^TVVEDyVp2o}VtCdzD>G_hkI0Eco|I;3W(1)?T= zBH%^>CTb8P_+vdbXvPKk-o6eB;UFMK1n8z*q)ZPcit+@`DO5y;I61V1(M2^0)DU^4 z2uS-XFDgIe!TW0Pf#H5ZYZ&RkX(sfaBu0#b2-@u21c1ABGJMN0H) z$pxLl{k8(_V>xUe>mLQ)#o5V@<4Car>no!N6ecbQDaQpUUxqFvNHusgZ+E-~^W01j z^jCLM<~-A~bf@MK@K`-~6pE05*FiX(MC~p^_mVRZPt_YOaUP+L_W=w0yQP6{oFNX0 z0323EU^Wx=-`sF!o2}ed^_cG!lq{UiWT{NH2Zb;dtQG z!Zv;D_wAXP^7v{dN2O#idkgVuEL(|Z;#J`JIjW%#eQ~^aVy4qMcjSp{RPOEFo0{@& zW#SEuT-k3lcGD4MELK{qp4-8VQ}%zI>1%Bd+=a4vjx3QsCxbZJL~%d0i8{(H5@bDrwk1v8%#Cw|a(23Tsiz|k(y{1`3qEMWg(X1k; zYt#kffM1<1<=1w%YrBBmW)*d|n?Q2bVs|^gbkBvBJ z+&3;R|LshStFC`_#5da>hTpV}hOu~N9F4{^8|0%~@ys+eSlHR5IqMvnoFqJl zL@a1TEC3Oy%L@f1?Q4iwAI>ybNlk#bV+C!%pwwn7EQE-t^umt1b^#m!CwgO)zGX_^ zSrJSPv8IgSK)lcd7QlhP0#p4 zKyJtb-F6=6HhF;Z$Pmm&ypLTn*lc2w$subz=+_SgkrWC_C`#7pzm@N=e}LON zJ0I{xned6`ouXCaO>Xrx_Ayr@@Eo#W26$j`>5tyg#$&^{u)f;8hX?3A5E;r^e7oqaXB_ zYiNvRTcgI<&z1?C6-Z^-o@2Y}{2!*&;eK#!y6u{C4m8QoAJsxS@!u%Me?i3hQ0A%*EwJZ@z+NbxX1)j1GzmC4)d68( zqK5n!B~a5M>-CJYnqu_+z2bJWhVCJ8)Wy%VyKg`Es#BhZ&5Hp8)gWwFJMRrYy*HI6tJ=_Z-8=4OHbPgn|VSp zWny-j(&;v_(w-rNQI%l=#V$6L4)={pVEu!&kmvTP*ae5zZBdNgPS$@WxFa-kzH?&y z@n(0?Zy?BjX|V=z+84?jA=nisB0qkUU6Hl6IcHM zSlO%TftU`bFVTJS`X-zP7R86d@I=ea{p$L1VyeU)7OUF23jDv*btTE&EV`kFEs*j- zh_lUw3~Y$6WAj*82lBQxMK&`LP>c&&9FjnA8X|hIm5jDfoMk7WU?%$V%kjPPdYY~2 z!{g!f+tZ2l$F?n~HM#yoCB{E^<^Ft+tq6EEv&pL{d4dcikYz#>ii@=M_@E{?CikT^ z)xt!&g^Bba+u%X0GXfr=6={)Je>o9VF#=Y+)1Tn?} z0qBubqS!@)Jr8Ezrda2UxE*i4nipl(4{B@0`b6I14}mJrtPQ|k$X|3vAVS)~WBs0Ow^C~{JsR_ zv18#!KLFGMFhiXl{&jGF8$vwXQDEG!I-{&4( ze;nlx$fnR}J;xK2??9hFdPVvSB&>&(bZ}B%fm9Hfn>;0SP99xweR?dH`M+B5|UBGZHt5BvWuZBldG>;e|^Khraut zSa{cl)!q+leP(FhysssXst_5`biISpB#yfN9b}+GU9YoJsw5nkxzu!h zP}B8}HM&cnw-(jC0`0Y+pM0)*lzbx_5_d~`QPE384R-v_88hszj^ zr!}=MqFVQXU!igYMdLN`i><8y@eP9(rP$03JT?-d819VO-1>JC!B`iF#yhtKB0i|? zkUx&h?bDJ3ZylbenT_vp|ElG8-$G#cVwLWZs<1gT*s4H3rY2OQR^|tYYyF_2mg%DP zSw(>|6~gkjMb_H^8^xwM17&DG^CK#!sHUMRCqYd>9OIXULKT0WVf|%Mq$Wm0YPXJh z5N&?yt)l6_S!3d1@pe#`OnDr?bl3SC9&%;_k&7o$&U#(dh`5xGbI;PnKDmCjxqFY& z4CP`D!LhW!B(Ald@YLJ6Q#JI75*sf;{FGY4P4adEcE6&>40oLVqSmlmkF|A#S;J5R z0$m;)l#E5!p!f@%fI9XZK_b>q2|)c+wH~EMz)9Tb1Bol4cnvX@{L+9o+VRlTU@$=x z)J`0o_`IZMiwNJ1{-k?o4C^+HVc+%xQ=?|GX)8+dx#$JK>vSjvN4OfHR`GPGrd+&t zVIMm?-f|{3UEyzf3b%@o;~a4*RgJ{Pt-EJFoLPXA^O|r<&^h)zvc6-uPsTSASU(B- zc5&Qq8kLY^^AF)k+#7cdek9g$;zWFnKL^v-$rspL~s^k|~J>g0s zZKqPCf^!t`q!7AS5XD4|K{Z4Ta7+4O1&T_cG>OSq0K5abSkPzcdlfZBNh3oN1d3Md zAt-ndSBTLaKrCPe#ZaiQITc1|h5~2Go9VGZa%u=0pxmje6N_w%jFySCbHmDzA9(^A zHBP>!dtGj;Or$b}-eXse9?{5f&z^H9XEuvPK70Q^jp&=$roMTMO)FAuHkh6W3J3N^ zUehs|Q5{ocqBBm35_hRCx^SnaV~WfRFy~puXW&m&Sy$!2<_T@888r@2)p@Lw^iT~H zt8P;=x-F0SYCY55(le-JWJt3O^~^EYA`4TmDMlq{wUI#`a~~wru6%}XkM57P#{6~p zw&i}%GDwF2l^1PH`a%S=rl2rlE5E9 zp8=N}457+}PE)I-S=HIiP}2y1wsYfmu*DKAL_LV)K|u7&qUwb&2og4& zUtRDCIX##k0GlGeIY_|k)@BPZILEEx&wb;jyDYiXC7nyuL$%`GfaKe~`?S??d^R>x z2%1U+maDBr2#02)R+CGDf<^9b$$Jz^Lnlt5{XyxvPS1!;x?~6WzsR5fmMcVzjmn^i zL6l;Mde7o`A>=6ct4(N{R6F#(f^jEADJ5%AgP79~k=*-rRzhWD^V}!dq=-qEI>rL~ zaOJ@na-gm=^pjx)>bm2=4Ux=gIHsi*J#K}n($Sn7T~8gG6frdA5&N+J#*2_&^#mhn zEO+QYytEG|Fac!~;(*j!TXl)(!%lIvP23M-8gn$$T)Ronp?Ac!-KtR83S&JLPM<&B zEXG=Ck9qQv*K?8Ew?Mu4W^=RPinDA*wx~0Iz}TLwPR}Hwb)Ak&tp6Zzw7h)3c#G!W zL!j#@h$E3SBef~KzXrlCPdRWvG_BP$r(1#Po*{?9EZ&1L22W%kDgxn9T zY3XX%*mkzDMJCcj)_c=YRE6&CNziowOzz2`hFdWUVFYytRbOCjG4V01IvJEI@}^V+ zstY3eR+8ERK;E!8h<3(ccc-M4cqS{eHpzZz^!&f9)Mq`SOfJw1ZR@vlFj39V>4Aza zk7uX=?(7yLp^&2;V$$Nkq?y0dnoC@&R78izidxcLi;buQo3|WHfDDO6J-u442UlEGZXHh4BHT79C$blS*Hv2^;M--?k=+~N9Ht1E*h%%4LMa=`rvXa3pL(r!- zR)yJEF({OjF0TZlF>`sf!b1EN8T$62i?BWPRCptz#b+_(R)T>LLy)&vF0VGj0Sk5NsEl4s%J?!#Um6Se(g<>d%IVk|fYKBgC{2Ka zE=(k}9|>J%&AN5gtm_3hy}ZK0nsy9pIss0e(Yd4f%YX6G>zTjoclCYLC(eSuoTL8o z{olPC{bj$;-1oA3`S6d`Y|cz?lNDb!muLR6FQ@s-0q7D7Bg>LK)vH5$hp5dkD~^^y z0jkCV^RuW+;h-iYwT`q@qXr4yZsjr8h!W=-_gbV*H(YEMZhXyU3uL&lqv?bE&eEvA zeajt<_D|4GUhxMak?CSVE=Yxm@_FBtFKzR_*Z&pc7VjRboLK*7Ew(;RZN=}QJy0QU zKzpF5XBIP4q%rH3Sx^PDK+Q9`lHW9(i_CDYKqnFvDmD5$4;F$w#>{4`E5poY)n7#I zn4xsZVQ`TW&l(e@tHN*H(c;$;Sus?F%%Kv{q1rSXz_A+oRNzoW=mKxitcRa~TlF!` zojQu16zo-nuKnNm9?IHj@@e!e6MAeU*H-Uk_A(>@C#m!8V8hQdG-k`rR6QbnEDMUzud|ovSK`j0T*RP0flQ0Wm+7zlw;$o;wn? zyAMxwYxkVhOEBsWj|S5r%7}x+~+7=&g`$3o2_`EX51Ux(@Lz*aA!N2oSb8|Pa8kw9^(a9-s~WMvHo3` z34UMs1Gu-bm)}o5rc1bt&VR+8PUthZh0;x=x@o{ssv(3qJt%YwN^+lD!vvNax-*Rc z^<%cc2})||TXuS4yqCM>9eS^?H4{%qF@G|=TjTc@ZTm5;w1_JZ_#7H>PZX8XCLI&RwX81B_o0#5Y>ZF%z`H3 zwnSO3tCg^=e<9e?+3nZOoVejaC3I@1_jdkfquZX^d+MGA-KmU|{=2vF$&EkMCFy<% zl8e}HtQ|$s0%1Y0b41K-gb=Dj&y*_bvRL)82ht0yhu00>iCKhW%=oKr>g2Utk zJBJGBdPAo@pK0r<{q3fgKKX0$DId`uyPn<~yotY+K4}pjTip4Wd~gwD$@(cizOkaK z(dVYJfV_(UTEVbRp8m4Qt4ZACT)%{U7F!PvcwRi z`z;O_WS7iok;?)s2|`!I&z6*fS!DyW6SJ8%amC^og2reo>@Y}p-?pWWS_!$g;ffEq zJT8~#Q`)+V5|;~y^5xtG{${%Plk}d|=DY`Kpf?)A>0CJHt=_zV{7X>&B`6&tR|iA@BwbbHk!UZ&(=KrI zW!QRpdch+uIxq6KXnajB@tsM7dCxDErWO!`%eemajjwO~ce*AIAV;}b`KcSrPu);{ zI?N$@5pHCw1;Vw3`0D~gk3feAJg}SD(7dRf+hM39H$<0&=;|*;!qL$Aa;d%WDwj7- zP28GgsoAXj(s2i+^DWvlg{T#KKRnZ_)kG4IGm^oY0z@0A1aMF?r$Jl{D_Y~2*`&J$ zJTmRT;BjUk?Ap_Y0ntT=!Qr44;dvk-jC~mcju_F{)N9WQxPDmfZ!B{-1uvZ%x=ic0 zz|)H%@l`SZ`~5Mxig8$z3d^|Q5Jksle=k<6#jK7Kn*GRaoZdLF@fRC^N~~0KP^qJV z8EU^c0PoSQsb;E9>Hi5OoYvJr|MgqFg^ZFdsPSkhn+-+d@b?VFwebf2b{$W`BuR2q zme$Fivbg%H9_fXz)vW3AK!}UI=6j35;#2!BSotI0}I|6Agg+sI~ozRNr5`S6ib z?0hg!)lQFz9nZYo3^Lmfh*(e|54Mw)sdOg;*$F`Dyl-eQQ`b`SG@V-G_J|wV6i2}f zSz!IYT>=lWUUkbS(Fy$b^|w+VFjsd>lv&*|_|lKHA^r5xq;pp{h>SkN%U+UgK- zw2N(EURL+!Wk7#+7nxxADQ1Q)Iz_Ldh=`5-c6#i$gWVvzNSV@ajNUKBim-nxyW7BO1YK9OzPph(ZzKtT_fY79Ua} zRb<9)6a|D?K=7F$+f-WtScE9n(FHe^IHy^++g6SFmOrtHp00ArXfhbiq)wD~SGKSB zt6t}+TRD%LGnwDKYjNiEl|R^AD79NR5@@%&NS+J~7-e@{9vD!98aNOF;->W~QR@|i z7@F6kCaV#A5yBD7Axx&p#R1y^;scK`F=v(QY{9#nqwk6jcw~X{bg*L8ym(X z!9~kqLkA4~EV1tD5`!n+(vATw#t(D-;IIzTIuO2UJi+?o0-|b>5RMg54-{xmFA@5I zbdHr`UfU2y7bSX3>1lmit87iPU)`&l;1ac}zhSfVyq=Qj^zVWxZ2k04| zCcjRgG{4nUqZSl%Axfp53rh%8W^luGC>N3zY>XfZm3eXm1Wm_}l z6{S@jl|3z--z5&BF3g*CrGYUUXJgaK0LZQ|1nxMPs;YkqktLq?l2oBPu2lpx$d^vL zi_uIvgwJ+{x>#Obq9!%WXXUBYk;Z-JD4UW^of|7*M1R(^+z9iU)doFx&yy29a_RY zy#59Lw>Q44yM=1ZB)N?YY!DlRz^*|7WYRd>$RT-^W3SB0aGnI!Fg-nD^7&Z|Y=?dm z#o5BFH-7|r@;RG9a$#mBgw`C6mEh6LSHSsCr}FLLxD!7%BVfDzPwM52(%Sp&U}D~< z(?>J6xLrxfDT%sUQjv20RQuEVY>-PwLLsL&;|Ta+EhYXpH~v_6fi$QwzCs2eSc?QU zs4|d&LSw9hl{)n4=Bmy_-lDa$j^jq_vV+)V2y0cgyedmSW?f{z9_Ps=*yNFp9w(20 zZ{TN(ZFZ^5FY4qHo4!YVA~l<1M>Rnmpio3YG!if@h+33@GPZ10X^-@-a$8503POFl ziS&WENgK!SVxLBi_2f`;b>JPaZcFX7STz{Ku4#kbZV)(gaeD9V=R{99;0Hut_O5+V?N;Y)VyIMpA7BK2O@!eXal?Wk8V6m z_n3|BArOJqBfzKu@LxBPbxa^i?EnExjS@fsPU0>ZaAI4=L>3vIRw(h7>aIfRbcTXf%)Ag*4r<@6c$cTMY_oXctVH^=7Jy#Z=!D+ zplx4g#M1;ROvUHPp*)A<^Uy-Qz91`ZyTk2v*!hX(PDR=2jd(l}hSjzHr~K)S-=}s! zn!JrobQ*Z*4+uH>=+lX^nqb)-9Ryr67zW>RiNO*W;>nUBKCx;gqV$YT^aa9+6oU`f z!q5RU2VkTOL}C--z#(AGlbJHY+Jo(n0JC&+U>LxQG9bqJO~chN*k2YS_)a{LYll5$ zv)3T_W1?4b`>jr2HQ8(>oQ}Niu#kzA%zm>NvBW*0SUR4rwsw!3^MDUIw(&#$G{%^n zbbqDEuWB`Mem&M7m{>n9)NxZI(xGPyx1kYP)NhUeF)&^k(5o6L*btc$0XhhPjtq41 zD;B%k2M3%J)j$km&nsq!V7fP4Vjcxk5(QbuBjREGGu5gtiPqO6`r-R%$SX(zWgGql+afo zJe$)pj2_k)Ys36WjHR`50&{k;Mb;+zV;R;QG&EfE*PwBMwK&9g23R?~#g)J|iX~ge z>ib{)?(5FJ=ggcdF3#1JnMto(C=`|7p!U#PcH~?4J#^ywyC1xM|7~K#zkBxhnKO&O z=8e_z)R;!Pa2qf2RsIb21bu|`W6a&z3S~imBeg1(Ci*`C1)G49Yig0wrN}5TgGs=Z z&J48qw3%@^!+id*$eMcywc}UyX4?b~;GGdygjfaUCiUBr>ISJPi>fEk)8boDK*Ecw z;bdV4_N`4}Kx|A@UG32t3)3*BH*FkEwC20e>W}(;io@oNG|~>y_>5cv=;kj~W|g9w zv*^txtIarb$^n<(cz9-Fzh9@Th2!0Byt}BK;dA_HO4mIw@qCxu zpKGcW+vR@6)t4buu|SDCzPWWisl;x|<X zz0kXmz$=nFlVuR5t8#06ask5AL6{J-18Z()=V0e9?4obX_SA8i-7t#%N$meKmm1w| zUXgJx;(cw$^n2sqY7$N@&bkJ|NOQ}dB*^9>n)8sENEDJNGP`MH`S%iAEEd}#u;}2H%KLT6W7$~Qb{-D!qwdi$Hv^-vN zWt@?ECg}?ZR=Y?AN%AhKG*h3b=h7{`DC)zZTt0IFbBF1Tf8%fE_fop=BS$%j3=V*= z>#<%QNIU>fAXag|uB8EYvALKU6UKlE$B+qC&tSIjC=&G0_ESFHv4SxGe!T zf%106kL`o|nbo&n?l+sz!;@qkgfXTbOO$KJDc8g*rTr41Myv?VBEZh7`h!r{m_Gu3 zE!mI2bYs&q*e2_Tu68vxK{-9Qh{d4&1OZ1N{^wjAln^;R3Il~xPZ3C8tdSHwi zA%f`77lTKxW~_ds4q?b(T^bndyOzWJ7KhQR^LMyUBd2eU<`){vV!D+sG>uusXD%BG zz4@lov7_FMHfDTtmbr;yjQ;!7YMWc|2Xg1)_sh$#=WZPry&hnOx?aj(|=b$UTf8 z#?6@c#ZtooZ;WVVs5Za~>#2SSc6meP#%A^1idpd2uqzZy)JU{9L}*MwU}CH4Fh4?X zpElqKWm%5u3B7m3zy25&hbY-lH5V}I!g~*8sypO4Qzxqv;_C! z(l=LYPs9=(F7>|UgPnwPV(L0;jkhF}Gn4WAPTz1>uBT}7>W}#wDE*emmms3p7n^F9 zg~F=X!PxgV)kzpirobsOZ#9sosK82LO&L(Hv2`fwtZ1)}(+1Res)grW0Nwy_-E&&s zcqs*?V3R1j)NB(~!%8?`oo2n^(B$Tko)*oLpTQclenu$^D&k&2s6Bw?SksW1ZZ2Y9{_b-%^hL z!uY;KA?A0V8Q*tEXDFe@XzjAas!P?A_bo2ma{O#Pes<}nEsZBf`QwPY@)ZJ`b(-3N zHqaY@wC|;~Er1j=qE8Q;f;I#%4iXJQ-2-gs1&oj*8prIK8iqPPR;IJXE5~LAf2AQh z%)=-Nq`3KBU;dqyV)UArw5>Q;p*yV5mUV zI?>}{fD-*MwlU0Zvmu9~hr`f1#DFmn3b@4G(H?UM*l2+z_9pi|U`i#FbzAweDKu3| zKa}mrc5cGgsg4KjmQcAI%8o^gDQk8?aVCWek36w2{=TOuNB(D`vNTq5rkmrhIT2_~ zmJ<$3HB-(Qc1ANoY-l@ z6Cwg%pvHYCJs8>y^QkqpB7p(Gbo=O0>E{(t?=n;GHYRz%=LNVaJs{$iXx|nlqQA;+QFI3Qy^{|m&TUGEKB)bu*F6g1gIbAch z8I67ZQR%-8?Sw-Bi(iRIWpg?2=+JK(40^N9dr#|vBN7Vu1i>5jcRgNPF%qhb*Isqo z!;6u&(-HFtwIh%MI(Fdou0(V96AqouYL-lg-(NIDOJyqBxlZoAv(px*m~JYWO6R_l zXYR@7D{%)I*1*17t5>OzU(qU7O3nYIXax(Ses-w}1eeP!;ej<$|And*Aoi+F3Tj>W%cJwmp{Q->0i^sfREQHpWtM9^+tAEmer#sP`%G_ zW%?&RMHcCAk$zuIz_)y|`a{!Y?i1WWx&QsO=eaO((FM#?8Sx1&?0SylD3hM&1blY~ zefN``K;N^LKSc;MDH99*oIpS40cQS~C9r->uM335yXINE>z@#^4R}8ff4Qm*`TtG! zk#D;CDG-lyF0x23=VVCbEaD9`)ON9}zeIRz_LW^MnEN#s*-ftw!JP(s{WUhh289z)#vGlD|qu0TpK=l!9|u>%Xop_ zdX|0fc6#S|uDkWkXI<*YIr^0e1>mLOBljqPFx|G5`>$12e+OY{pXX-r8~foKze7p3 z2=sV_{R5A<)F*7^)u)&m_~27dP=5b9OD_Dny!t`*>IwS%d*G?w>mnI_`8n_(8`K06)tLnh z^z{F>*Z)gVUED(@m!0}2gS~5ijZrbNzrWW%B&lEh3wrf6vHz7`zagmysFmEWit3lX zOn-ktQjeab-wPk7XZQ18?18YwX9N1o@}^aQ`q z>t7I8ZoK)EpMht-9SZm^_WI9?E4Qvb{TzMkIr4E1Jf{JqLI(GKtdAgXl6wCG^!M+G zg9ktQd-NSjM{bsW>chSMBjVuEU;Rz^)CZ+ck~fmaxn;O`O8hi=lDv&vBJbz+a){>p zUa9{cDo8#L)*;b<^Pk`WJ_&}S+5WY^gp2hkz3_)W_XT(kdI0mHG-E4N+CA(0fAx1h z{_OMcN8T;Y21t-}Ns01w2YD~~0Qn&Kb@H3!qohw($$X;@e93Z!n z2g#%4ak`d!$=`B0ysek$Q)GyjOpzJt>^8|sax=M|+(TYV9wATAg+E1p%-OjH*W}t< zkDKClaPvr9nWNt4YPE6b_?@ug#Eo>tvD6&Srx%Zk((}Yg+;nplxT&+69$YBUdB05L5FN?lGXi8qYwphZ7@5eK8GynJE#kC#Hir4BAtB zJqBENyXD89>6CwX-J*XS{vm$ZDB5ig8Z5%c1c%4Oh3Ko_HruS09~pW5QwEdK_;tDm zxb+h;OD^C~_}qGr%aqVTtXwq4OcA|D3Q1PcDmmz%p+EG3eaxY=n{?J-(4sRsgO|T+ zGh0Qw+ZeJ70&jQdOfH`&8U&r7v(m46^j>qw<&Aj*rZ{g3>z(vv(3~-+T)|WzW%lRZ zcT;F#xm}u>i|xNTRxL{9nR?XjaybOEFP+ZM9hnY}bu;nmgyL_VoGv+vL3fGE>GZn& z9MAFd^hd+OTlD%neW9$&o(cK_ehb$T+|g3?Kir~Qv~W6`J?M-6wcTW~oBzygcDvnw z!0Gjz?hPH^;Y!Wr_q)<9Q#9!47*kcj;}P;%YtGg%#X}BBa)cv6Zz3GDi%!WM37Y+0 zZzApq7+rRgUkK>+L6^s1vQTmfc2|Jc#hiA@t8;sd{)o-xviak7k1=43rr<9H^R|?; zkjy!~UT36YE9x8-b6$a~VpD3ncQs@&5D-JVeASx}Za05#IK4-# zP2c|7J04WZv23_|u*;Q-bJb!yaZp)shqFZ?cYXfmi?4rpUt=~KOn6U)Q>idwAQ-qG z@?Rol(t}BudKn-pF{No*Q(NNY6;I1###)y&YlVWum=*vivSN9nLE%R|tQxQ-sshA) ztr89s5(m0EnAZg3{H9IVIC`ehbL@H}oY4cv(jU_SNVI7<4GK>!_roWz=g&NK>p_3c zW-NPsfi%b2EGfa0tAvic>aE>!ZmizSj(z3uL)=5hmhKiFFd0oIz26ygd7}XxZ!+8T zg2Tcab$WZC7$0=`IP zxW^w)ZDNSgWsmw0o1obs-#SfUB>J7pb4p3{hbysk>)4r(A3Zp@J#y&cu7@9;m(PsX zZoP4izbWGu%dv1M(P&H_d-JdPF3y~OqgXgKeddH%TR1<~nX6pbv4dy1g4o7C@+nCZ3V?p5dLu}kTRL2uPSnXvZ;FMs~~k07GZ8JK>W&dnKBz*vO~Pw-+}FLYD~Ng zP=~5)#i5)qXU+@d5<8?p&fjDhUV~&Sh}9G}E31V{ihZT0R=_kU^!i??Dg#7VV?LK| zcbcp(eK^LJ9R=7yoXmj-24snIF&#t7rdNJtn&VgeLMOXt*Dd1@+!+}^E)|cBPtSFi z8b@Z1-4&bN>Covpj?cyyYKPu%_=d&Mo0GAnMO!EuiA&Rwb}VHJ$ojEkxA-g7aJB00 zl-f&sT=k53JQVbX*=NjQ!HeI>zx?3K5vrf$JZ`q@{n71sx zJCsU>x&IMPCL(!zG#u_Gb{{)`$NIO<-pk}*k*@K7(Y-QH-bV(Lutp2Z`ARHeNKeop zRD`vJ5L#|Q?(bOBnkV})SS=nS8M;pfu^fCbmavqy+Fig4X)|2)Mc7M5Hucvou3Cs# zoMf4$ex1@mv_LI#dk4x)1c?ht{Teuwf^OuTl)1L{>Kekp3@lSjM}J_UBA5_=WA*?$ zK*Yb9jh#|)EZ|;Pu*a2jrWP(oQ=NNG?L1$TmLqA0-tL^-rTA`sT*@wS9ka*mu)HUj zN`!ylbSrMpeZfpTQW69HNG-qTSghHMU6*oXo7w11;jH2{-MZgZsK(ftD{icF|2LIA zGBpL?L?!PVol5 zSegub44zakb3WFRBS)6bmv>}h#mF6U#J$HIZOo3h=lw!#ay|HBIAMCNhQIm;P*8=Drb4=OUH$j~~DPt{b`1kvn8rZwuyT zitDfDzTqlogX?KeF*7`CKcMR_kt3|ypdV?j>exuiyq3)_W0nyxb_iQ?h@Pu-2uCPW zVS-91O<;Jq#e+-KSrGD}-so;k-lcLxY_YjybS==gKg|#8{64OyhEqC}pNhMD_49L6 zXY2mHAbF*ULay_EzaxSrl&uuy~Fq<>d1Rdc+QuG@nTg;Me_pDQ{Ng>3lb?i*s2c0q6z zD>1re_r|~Lp5j-?AudD)%TT#PmYTRzRVl3~gYYt}Dh#5}r$An94kDk2<^IeXAbLZC zVqOcoi5PbCv)-UNeR&9XXrQ0zC@?(-T0_5o(~Eu98anRk_g+xTsUP?2FRWC`b$5BC zia%@kQ-+@d`u^7Z!G5&|0KjsOJX;$tSE_QoSJVFEu6YNWNAok3;*$$lk^_mkI7|$M z#M?6VDILTJAF;xQo14b88?;v&th+#7FH7pagT2i`gjC?bu!Z3m(Duj+ls+*%jC!x} zI9C|#0c9A~_T&Hg&*W#PGoH%X$v`k!h=dEb|9sIP~!E z{??hdh-VzxM!?pcyYtLUd$GIFR`?YmF;f%eZq_MfoDT(4so))Vu%BWnA37atL_;>G z&hAZTJCg@%hmTBVJzU+urEfldXm5r7w<*uztY)cGe;*kbK%O`B2y|p+3Nj9uP;pRr zVh}VVHe&Z93YG}ao$V8_QULm~?TDI%&DAwC)Abq_#`O<;^7)xFPrc>3PSH`%q+5niIg)O^<8b$QJ#KxotmL}g zQm*?&&*W0`q2GN-{J1@pDJR6dKPM-4Tu3*j%C7bIy~{sUPgA412{b66y!vC3Aq{dT z8AN~vR7ekWu>H-B%S=g8+j3PbM0Acan^&y>Bo+#70TGTG%xvx(6vXCjP@nEb*ch-4n6Mde zAS}r>gkY7rfdt5hO%eUgnP+yNsN<8LV^jo1d?gr^S-Cl-DCLU`!Uu?)w1b2 zbn|Hssfgbd|1h3(;_gduhgnw!^rC< z4OQ~PjZe(y)0u3wR@aT#HJ{Lcxvit7Xpmnq_@uHfWjhAcaXyecW*qvw(%1;4M)NSt zzk>ji*@!SFAzeqM&#o`d1+fri39vu8>5<_4-flgWsL32RmM!!GB(N;lqVim-9#;aH zv+bQGPbPZcPfp+FRTe7Qf)Y>qd?6(jeKC@3geE*5r`7NF*SrdF;Y32oX?rl4bW}EC z@t+XCS_U>vJFi1GYzAQ!Kk^3Wx$1j@MZ@G-){_Cw_eLIv!98|(L3*sw6-*q z?s<==IaW+92V=p7g9hI0GFc4lvOgc|rFZPNM2dS_?7&%)jI&q&H6oW1-du7l(H%E< zOfIX#L34!UYgf6m#Qsh(JD3mY{ueAzg|f=c>9wt$Xo!HBpU3oR&{9`pw4${Y2bHE# zdttRtM<9xn+ow-4E#Q*@hY_ojZQ#P92EP(9Rj76vbn+Rk;)77sO4eg80XkF8h$~xf z^(VIL60LfHdW!4P6BC?bk<)-u?CFFD>(#zZ<@Gq5Ymd^gpvs+%Pu{)j(N8Ml3z?j7 zx?8>Z{l%gX6dg`sqR`$qF|pKc?Wx>$?A1cR$A=65ncu&+`Q95QPWO|X((b)jm@=`w z@=N`|*g_7E+Zjq{ChJ?J@M5Ran4XZrcm8Q3Y$D#ON-d^)>);__;Su5!k!O~ULhWmEDwN~gaY z+|U-HV6JtwP2YMUfbCm-M&nqn&=sP&^G@E>n2*G=k*F_fwNxW{UQQR=3+F7++L7_I zk9ksyY{wI~d7Tf0(z3+}vXA*RGYsG)FIm~?+Mv|b_Snb{RtJkX?PSu2!IoioLEA-EaF^t&i8-@dFEX?Keb9eU^Y;HTdN^<;Xee2GGrVSoEX8Ya&r8GdY>q zlF#orc5L_V(&ElSX2*`&(c^J%r;zWJ=H?5DkPzbBZfp5OcPZ`pktF(JQIQy#NM$bR zk>!QsXO+aR)BOV_k^);M*3-w&+lH0N;$Ws7;7|&PYa@tf7<5{ zjC{&f_Q%{;NN#$!ZZ-UL^1NibGK>N38WYRFF786vQxnNriU=wNE+1kLhGC3f!gU*+ z_!J>G&E#=#anv$Vn4wm+mq1$AC?5~}f zE$y1m3z;4Dh;S-Z^>&q1J+`f!eP~C$-Z55!Df_lx3)C73m(^zWjdu{A8 z@Avu4mZVyZ*80x3^G()e@!D`5;;;Q3_j$4p`^;0wc;K*u?Hr_=Si=mc!wQd7r3Iaz zi=-|t6{R*B$S|noc@&IDvUC?RDl&65td#YjfPAcZK@&R&$Q%aZU39R*pbvFm_*xfw z)Wc}J)9bCXT9~TFjT$gw!s#p`v5#mtv%lnF;ZK13d^~bs&)fID`Nl+H@%~-QZF#a@ zoa)8Szqwt>_4Ai_t5_`g`M5K z-S(D~w>wk2do?weRE5XyykqvddH{8r?NoELhswpENMOW)|mavRttSBTOz?4u+)QCs*Q!-bwa4Rv! zMJzndXOOIlr)u#9m{>J?4H2ZgbAfecw3L?zf?us%N9--lUZ$*A&ULehsT#Er^}>L@ z3{zxJzwH)d${aECMjLl`Fcy0JhMRWY@NeavzWhv8`ARk}HoE(s-FnmzG>JB!Cm8YE zf4~&*t^E;aUATS6#1ld&WE2upMYdncmvi@%pqZSN9ElxL+&6I2nd-1YEu;zKdAY2! z=_*m)(lOuBC`Bnd}N6le+4&5{R&R0nl_)ftFqbJW;si7Hwd zjcr0;T7n&AX=C{_o1na|IasPeQ_wpP(*R-E%SV+-IioFkxf*hu>$utXDrf``{~xL_r3Wo_q@N>+uI!v z7|W58uy#jl&+hhpb)_LoF3DetC>g=&VrU%&a_KKKVJ62M*RyGe3F0-)N&XUW&W?r5 z$F`0rj*wI2rXDH6VEcu{UTByjfEspU(IlRsH}9mn_LO_q{aKG?;s?OOQ(xroIAACArF6Z8(sDPD* zxbYC$$qpb9p)#VijYudK#Cw6#NE(GuhC+H&8X@ijJ+4g6h))Hx0nIS7J62p$4Ul*| zc3@p3_A%py3OO_2f!%EirmgYAU>1l6H8Yln^RNPHn`&GH`GFss?G>Fq9WpuNwGM?= zkvPm{Hy2HOC<1HYJM80D$;(?~+1Q0>q}ZCsZk@~h)@LpqJ2+d&O^eOh^1mF2?E5PF zH|Bs-5Nr*vD0&}%+!dJky2$5twJu%Y_GGuovdv$UFRuObnQ{NxUzzlN$5r+U_f2AT zw=$ois=Ck@ns;0orsrXa(gCtWQ#C-#!a_0*sQwQOU}%3I7$@MRo|t7tiI8gb3Vnx`Nh+N(&#y$qR06dkg`qcRf$tRg zq1{FK=0z1Dul{bQ3ueW`2KByzIpHmCeOjv90g2rusQFNH`-@uxH%}jW=)S}3=Nt{z>zMoxFL!qB9lvG`#eHh>JuW4q65AVo?KYAZ ze}$AU$$gf^w zEkS(L3MBO``KX8nORkF!CD_H$bF+sPyWH7DVq&5X-qEvpdt*hn!{PMxe(>02WKjxB zjZ7qBeBVRXKr$sh_C>0Lth8U zj;63oG7Yj6kO&}OG6lj=a2htEDRY^Q+}{`x9g!aD9;m(P4I7@S|<8dFOj8Ifl*Pb z@}Lj^+=?9?*zYKk>~Pq)Px5hJNvaBgt{M~Own&|Ja{nQA z>vgxz^d{dWt=xbAj;J`T6Di}6t0c|wO5kVqW~J}IzY;VE=L4U?3FxA;X^loG#UN(8gCG^!cUk@_uw zLxF*4H^1s&g1vES8=$z7GjD9-AX!D==hPd_*hYsdogAsXU6qZ85&!G)-V4J~4S&ULZ4&h1T^uvl6%4Dg2z>qQLX{;F zQi?J~Q2$6bRf$cvTe;RWtFPBMOUo(h6vzG_n@7BTp?mU)_fJ~b@nz%E^zQWDEi;Bh z#+^F0zftF&cbOg8{}G?C#|w~jmvjNJsc-p5;41T2-q)UuPFTPMx(Lr^(Y2O+OM?F5jEkREyf4zR0G z0wE{A8p%|uz)+$!3N*Y3@heu3$%jd91u9HZqK6|+KIGNlyXy-C>1+;o93c3zAmodR z39Oe$Hr19eCTAZg9|*WzmaH;1Ha8{}V)>U}Ie9WA+#Qs{p7HT^qut$X*~vb?852*z_s0I}kX$T02z zh8ish8d;-%Q{hkzpsm0ePB;!AoJx*{I<5k^XePIPv7E2QixK;wu|i@t-81>ryvTkb zkn+pQmP%r*Eqju)6}gfxCU;izGh@=BQf$(g4ZE=zX^CD^@ikI@Q&}1$bk6*FGwD5BsxN0yzVo$E@gne8Bm9T*~Fg# zuv#vaRUnJ&BBGZ46^Pm&zWv0p$ItCC7_3G+n>*b%2#$hlYkt?wZ|f9_?QS98`SXK! z+`YW*qWeyx*ogr#&A9gYcTBgsFh*P$M-0ncvKq}%KtA6fMI^YKC^T|0DW{^p$ro_VNv=y?BM zV|$PF3KzoUNPJ)Lu&Hufl;nwgXYbbjGs5*#haM1%hsHm~FU3waIx~5_=d|`+?zh<| znKm=SJiw$xQQ>z)F&yD@a^yNW89d)0`2Gb^q=bfY+f-DcQICdrZ zG>*&-Y`hkz^^hl{0l}o!G{OQHGw4<{*EG%MYdrZe*$DdWZj{^O#$W*dS2gBd2cr#G zHo&snbLUQmIy1$x6v?>#mD29iTk<KB}`l=VmJBp#Q-z1xexSu7$}L-UjFMXXKJD+wOG$XWkXHviRL4j?wyBb z&d%-ly4-HZtZt=5qUX?)k$61Hek+pTx>={>kJXfgeaRDxy4_s+SN0Wh7COv((88e7 zGOcsSHP{D3xd!(k7xab#F+HGg;q+1*F!rizpdT_!mvOKlYeUZ~5UV3m#Dq#AaA_xf z_5#1+F$8LQkD&$gmL8ziu_3U5T!2(w#pM{83G?gPGqjHWD{#XQ|FW-Ky6NJjU0WQp z@l3BcH)r(<&6He=HWJb1g%h{FVfWsp19#j!-`>ULV~>hT%K!JNno;oF9+l(KygL+( zW=mU_ckMitNbS(i4Dl^LoyLSc@mZf?s`lB;fmoH zQWcLy$cl_n8$m&jbd%_K{0!L@Q;=Sa!LX@8ZjI~6*CK3=abh+m-`1}z^Arq0x6Ta`x9#ErGTgv7@vk>o$B_Hi( zbG@1P>5oqyTiS85FdLW6{_Oc+DB@qRCoQG>nlk}cY&;i;W- z=sI!#$v(}<)>qjJ+2igD=r62{M z>mWc532FnUp)|_yF}<~CMS=y4(}Ox3)JOX)Ih@~8QkgczS3zMkDb%i8XiqfcWFwlL znn?XgHN3l=3;*y6yWMoWUFa`Pd@t4Or-TUaaq;|0=OFYwyp(zS?F6OPd!j$MZZ zaP(bHufPRK2$fAksgn54;HHjJu*3a9dU8DJs~jG8rX0M%n3mm<$hl&~;*o@V;^9JM z=EF~KdGN07rnjtJ{{8&ts@vVsyKX%;-tWwZw??|`Q?A5RIoznltUjyL=Ca@8S6E9l zc>cVYHP|BJ`SW~^&6H2Y%GJ2LvGexXJKy3pSh$jfU3hxWVlEf-l{ReY%iL#}1XF?T zwFI`5_?)3ff-~ZQBC(;S8x82w;oylGB_;D9yx>NwA+x~rjSdwm?4TtMNh^{$6YueP zo53TcOXyy~TmUJh-fG)K-9{VwmTMiz>-q>UKYaGoV{bj#$+wDyMj$5@8*jRB`oTv# znOwhBEH%Hq@1A@1E#JdGC)aoK@kpkj^p9RVwD!p-bH!5jNx7k}-}5Wn7a4_kkeg`+ zuepG86vIjv!XIdc2H^$fVR4Es^&+}7ttYV-ntj0?tvDGm3VtHQYexHeA{N?2XdUN* zuSb`1qY5suB4T?3UiuHdOsLLJR(IC&_qiONTsOD4SibM#4G*Tq=RV%3o@|s)bDt&Q zHy4!`%AC*r7ha*TZ|u&)*WJJ_lqO~O)t9~;N%Y7+qg>3v{e;9!73N{|0!BoYf^8H@ zhS|i3v!D(|Bz_k?`gBnWfn38NqDq4j#rS#F*<_%gW`>wkf99Sb6-*}XSJ;mzkt&7D)n ztAU?Y_uM|6Ta6@Q(tF=4%Deee!%lj@24^9{RW3=a>dyYAsN!Atp0J zHh3lo_mzSBs_2QFin=~2{>m@~!w*a{49krg~s&eH3$Zjke96o?o7y@ywp^oZeMR`)em>cD?Ut zLWz#&vK_x~Zmz(-;){zFIqOZQyyon_xtM>?9%X7=+0#3d4<@~QBoUXs9F}WAMvs|) zK7D4i10> zRmQuj(Ck*JAyJcn0u+uiR<6Q8zQi<0pd|Cy)gW%gZCa0_p#thQjOHqkYL*AmSsjJ& z9iwP=7>(Urx}Pf<+`*cBZjZ@&U-R^CqcdLJ+nPAu2ziuUQKQ%Faq#wgLvqH){+^rb z*?q~7P_r67u-&(o7Zc5F#+T~!B~J#>Qm`Lv9L$mQm}l`UY#^-ZS!j|)>5{Y1+&ByU z|KDd}G|3u-c4@rP(w=m3Ap??gLWrlp05;P17qcg%lDS23Lw0n9$Y1tH1 z{}TSQ3P0;ivz@Nn;9<=p;AnvRx7$w@-jK)KOhjF@+n?R1g3j4{@8Xgq(IEgQx*&0!|G?dQGf~zrBOzkfgmv=gfQc`-t zpDRYpq5M*l{e-g+HO;JX;Y2a!nAn@HOgN_Psh(WN{QJk;PLh9*GYi0D)}hf=Lhs<= zs6`-3p0}rl41&{`Y9hN+?=ot{8j%=$kW~SM2xnnd1$5U0xfW7aOB4ed+guXT8e}bi z;Ym!5;;;#R=t&@EDFzdWjFy0itN~euCqND8JU?X8sGB)0XxS2~r|OoogB46=RG=WA z0A8>T{_N6*!zQEC(aHZ|N&nF2dSB(HbgSZyc%ni&F5T2$=yV?KZR0~X9!<^MKL7Z; z5Bwuv_wr%C@U8H4_jixD+vVR+)I$!7H$Z$`C=jkK^r~|aVd)00*-;b^fBVJs-kpv2 zp1%0tOes^y#dym3%dl&&aw_{Sa`v7>U7#493s#V$UbA#ml|-+rb#zU`x&a$y1^omz zFRzaAOy7u^n~%<@L5NoX8g}}FJcXb;^g}oXlx1~bq>lg=-%y6d)ABGe&6{FDDp!kG z7Z82cd_j~?&=}xEGYFb#47<`)j`133=X&}}F?M?Nw;2=a_Z@JZOvcNV-mb&uNagUv z%@6EbiuQ^}`HQzTg4T^n>S zYl~#H7QLvwR^_j(1gbMuU7(HZbQ(oVxQh{C#;8Ndgy7pG$%gije`#is2b7&wCA)D| z2qzRA2bD-JI7Opn4lq@a5IbNVVkfV0KqovetTO3JwM(h+2NQU*EgRV6DdROzPb@o9 zvqvLnvt=_ooavfakUMqYz@ukRJPw18)A=OdC3(m>qfzZh0bh7|zq(EF8Ft;gkS@;; z)_zlnMf_pGm-yLvDKm5Y==qzs+kJ^h&>aqlk714?S)2~Li*xy&a75U!YhlYiHkhcz z#Kk@F)ZaYebGv;{`24|9jpoPf-w_+wV4h}%0iCuwPvys5#B5XnyvJ0r7ovjRxb7_} zjtvJC5yv)U?C?c~vz2r$M;M6@K~otUNhN`-K7<=3z_UeDd0hb$baASAY8G4=Wsqdt z%j13xY)t!i5%AgR;*Dqjc`!w3q z2N@hAv5f#ab+SNhbtu#~W|t-qV^UUe3+fYzE*{5i!JYPqodlqF0I(&+p5}6c9%~a_ zsK&%G$|gV3;xQcH*2Wo-Q~)vnvdvzP#JQ%JnayQ0>wr+?qoII#_PfTY;CJN4a&O2= zY1!zJnv3nN#i{5q(}m-MwSP(WkKb}4rz)+T=Z;=~${@N$!S;|Cjf!{QEk^m+UL~9H zheLe8?f1_=|Bmv0cbV(&zJ6>MD};*de6ii$PuJ*2SgXhZ?o+O5M%qS0k7Gy72zVT? zitsE2L9#4Vz10Eh)hsL|!BC^YW}1Zs7H_Yd#pKEkTxtrGx&yQl6ZDV5E!{T#66lj& z{mo9k(5^3>J%8d*bv%`*dmp>=;;Faq-rd=ovLVkf}k}Y~nY$z`|DqsQxSRM_ZH>i9p zPa`XyiYM#IC6q0}$_)Kc1sV4QAUQW=syICXDF!(itxXB0=8qzd5%eT8zm#t3cz!*y z8nuwX)cDtlAV7zRi(b0*`iJhmQ>|p>bBfzn@OCCjdyZ5J#pLkOX5soqEz|$z!CP)T zbNmATy<~F#{*>UY=gY2eRmx5W0#B{&`*KX0_`Q(KW;W`VpJU1xkq@nqe?o_T>6z!U79#c`gx*TC6HjKc zOIAbzL+F*Q>A22e7Ts62q#IBv#0y_=F}`G~fW)w-EJOs>IwmT~2p!l@!I1&vr>V3K z=hQ{SQc&83AuX7LR5xR3*3q2o!)&gSEkyU9fBS#rj-Kph?z@i|XJs{rgt zPM>=8v6HP*PrdPp$9g0OZ5E5|Ki_xneV@2T_;j+yRqr~u_NgbcrDFD}RE<>;8%N@l z8u|T8OqF@Nj*`gJc6UG>y71R?@sLldkbg^d%BrudKj3R^0F3n*bRK_(dJ2{1IfhNvup39vD>TcUvgh&_A{rL-^B=6qO+C<>{kXyY2S0F3W&2w z0A+$foPl*Y4d{PO?5nDFQUId;!AV+#svRPiAfDKwt|aVfifGl&ke{3cit_d(9ZC%3 zD(V4@cZDG@&4A%_+u;E0+=mAsC&75MXb2#!<^hsuWNfgwM}=W=-+T{w|Aw`N-M#fz zN7az?uMIcDj$hEIEu{0b(G$Qs?r%cTez%!$EbNWVO|I+8Sdb~C-TWDXr?oAh# zPUU9Gg|ai1Oa@}}ClAicQM;$*^2F-#W;N;D=PggLE{oggws_r^LkDeZ|JNC2y`n$- zK3CA8=**=Y=4IFZMrVipt8Tm5-!E4pj&kdNvR;eZ zY8I_F>)GwLh~;hM-#_PH_iLYHA|%`Wb7m;Q9=1@#V*=yuVK{+}ZiuF-C^3&l>iP;9Y3J@3DMa^D;8-p~GqqiQf%E#_3{ zU%l+9wGX^AQDbXK-5$`~@8j$fBtrO2wC`?Y$r|{Y7!ml@VG9L&S^$iU)CT3ImbC$g zk1nLAxqPa+Dp4~p(aOHg^wD8Q=n)JLfRAR71j{hAqG+DhA#3tQGZ!qDE7b<&^aYv< zje~H~4mt@fwEPia)tpq28-Z+dSeY8D^B=SkQKFDwI+tA+hrtj#kYGDqrQ0-Hf`C!u zJ}$g5btEu({l$-dxX?OZUmOwC`t8n4q&Dq7mt!Lh1PmeG)|H!Q{+n8@L!xZes zUJbfF@@R3Jc%CKTJVUOlyJ8l^W| zo(pFp*4UUWD4sas3rEPS7@pcbRZiIgV$L;oYJ6f#zTm5#ncZ@x<|CO;+2_8C4?B!e z`JPa+FJ+~Ez$G}@L^6;z7L5T*@kCgdXomUeIkDc&ve9xmm>Ww*ys~+{XYxEV!OSy% z!3<;YB#cco+5u`F%EXwHPkV}qB2lzh*li)$^@<@Gdnj}nyO$b)=uLQ7O3o1rhK1k_1-4;73x!plI8Em&_ z<>VVL+;C~%Hg$Tbck>}nw!!;--ew~yCm-jmcpNONP`Vsi#|54vCsc8vWZBl2 zZp9c)`l&nBI0c&=P^~jU!J|Q(r@u=bB~phf8%S&lV%-?ehR;)$+`7312t00pweh60r{4Du^XSW3{qOEcOKs|sZbqdBe5b5I>Q9jMAGQ>Jz+ z2S6GfPeqsH+u4&lJOTdJh4wpMy2ZYAa;cj=;EE;f)9vuY*6NIu^CZ|*wJO@>Z~A8D zw%yS+#iG^5*34Wf*qRnRR$pEkll_9nM{@}F753kmS*Y!Ykunc*O-QXwHDE>?nkLXt zGWtk)lpacQB75tqfdd<6oLG|Zs)K-cwMnlxYdBQiOVfnX#;=BR)f$wxv?fGb&IwGr zhX!F9&sr5q6HyrjjG!N65;QNx?;@`5*OzLoIS2bjArv(m1h>;8T6~M8gR-YCojH1O zAY=n6Y3ra<0x z6l-ohR~K_Sy0^o=yzj;X@Se&Q4lLBtGsMaRG(!uJG=7)_%-T#+u$6}S8%Ru)T({@?{4OI=O)Ibt_S+f;mu~*mD})jryv%kvOtiezeM{ zb4BbD1~pIw8s&Z>`R01V$ki&kjrBYfWAl~Q>XRz#%bQUefRiYY7<(bai9 z(7>k)EkPN2GslX7J=-egRUK<^^3Aoy<;B|3VlTS1?}3{q4p$=Pxly-i@8tLl>A(4 zY;VeC`u;;VJi6&qH~(9)SSoaHqAfSl?!oDE?03Go`GO5~#gnfw+%ERRUXS$zcaeGO z1-!@CitIm=XIy12Fhd1KN77Vl9$39VBzr4K%o#6>FWo zWElUyAC~z(>+^<0-u|}$2@mZYmn(UHK;Bu+_fGc`wotOWSU-Hx7T`EG_zUc$-3M`p8I#}5U&X2^jaCLb81!_E&vZ@oTM7?nw4Z5 z1kzC;7(1vpDs{H;J753$C)WP3lxIJgo|w&yhf*&cXMdEEOyR-WAOC-0R%X3N9-fOU zSJzS@jIYGke#ZR+`F*X-81p%17>3_ha9kN?;P)MAO{+s8jFo+|Z-*WD?ak!3hc~M& z{K{&A33ps1xPoeCuQsS()?_#Knq+JV$i(su>oRuzGB#kK{xxQwqgvQhBIL$3wk42OFyvN39x`7T|lo& zpE+v*ROXOHG$L!VQO)B3u>C?ZuytKoMRU2YY$~J;8KjJ0pw8~1qX$;}Is|eI>iAZz2e(&rnCl9+~2JQ$Ka~(dBoL&3KO!8jNV^})+&2JuEGF*MN7dM5&rUawU zyZ*?qpZxB2W`_A=n)j?uxfmDOuJ~S}cal&++q}|*4KV1D+d>v>b5keOBF4<%9^n*6 zd~R^OJHSOrWkR&D8zCwwa*HY4R)EDBhH-E<4ET$V7bEnXo04!D0JO~qh>HvZnU8}+ zT3QOI3#JhCUTK1nm;(72#w`YNdh;@zg7YGbTHyfDVRc!6PIrn0*?@M^kEFK#_3ke^ zi-0Z{X8uV%nGO3gj=2Mm{O%*Wr>&no#^%S_bK`loeELvV$dB!>7k4(Y;keUMxc%tf zJK4!?Q%fgzZkc$aaAsoHt+(##pY$)@>z=MyeLib>%2J#;(@yW%JCm>Gij{3Ov;FVy z{NP38`1z6HFG%j6Vd}t|9EYuvwcsL^Ehrev*sj3PfQ#5vBQ_w7R()!Mgt>(f#`K7G z520=4$OiG!VmXHnmm>}r=OwBI62^x?FBVhwBruM1#JVEdSA7!m)8FHrEmWFEzcFru1s_7 z$dMDrKYRQ*d)NIp2!g}a+A}$SBFKN_8!vt2*>9Xb<_?Y}S@|=cc;+`g{^4hThv8nk zN)Fd?vOYF)vJO&y-&J1MZB~aowp4g9O)TtGGwxbER=&&RfN2ick?PQa)42{0`JNAH z;Cx=&=l}`oNHQY0etg>elQWgdT=`?!-r6U|GTcg4PL|6l`Lk<}=OiOJIZ~E=0R6rE z+K;$AH)JN6Kh#y2kvq+SBMVRmFV?gkxza1bm0q1(VUZh!12H%i$1Kg4wHWz5D{w$M zJTa~n_-=&T7;%|ngb^5GSFmZG`5G}J}tswZ;fPkO1nwtt2S#^jg)AEBrM+yH=*Ad9kLfc ze!o(w?%rSDdut~fD&$+SV(Fo;eUM~%*Ir{uFuY$;7qi~$)j}oX_eOky@@#S9u6*j$ zFJIn5ZB*v9pKyOcY*dkHGY?V=3;0Ha{=pGh4K@Ue3sQU9Q}bQcT4YUI^lV6OBo2W% z-RY*{gDoIqGZ=BoaF`6D;GHC_FcyJQ?KCpPs5qm(db>lt$p-@Q_~XYH-h6(#Fn9QHdF{P#KU7@YnvdnS)OWhwx3uQ(ef!@x zw<%IA$-QZ|F3c`ucRaLr_apoJA=Z26z0T;^-s!CD7LC)g)$g$z_QrYp@hyxlF8mNJ4y1w zNa%53rx{gPH|W{;yv%XpbWo#0LI^CQg;G>u)&p{0#9*u#L|+6WaXnVSheA;<>N9Woqw&qWF@>cipz| zQ~mhi*$a`g_b=q$Tg)D2ScYnyxw%@RahAzig?6g1rYZI-Lj}%1qo5W?8;f@F&=nl5 ziUYRAhtxqOU_2LE_>6JTuuYOHi-p}>*g*ZUPS=pl>9^r@_mu z{m|x^B8?TgUjQJ{S#_({*=5tOKeP(i4!|Bum0pn^E>~BdCzOFz4pJ^?~`Yd zfLT~Gs-HuUi(p)HjM!bbVLb>&2!xEFTmvy(1_b3A7yuH`;K4`CozFJ1(?c6tZyQjO zB=vA{5Y)#T20pAbkBrdzw)69wlE8OG!@g8JKgpgMOI|#`bnhc_US2hYIo9bq9>!-~mE zPFa|IL%|3~ks-ptrcnSzK)Sy;ri;PYFKcNC_SK<1J<_=cisLke+{e__gqK-@Q>-^k zQFsjPmkb$^ALmzqyInU*83=$a)OFD%P>|+1#$ss9!zZ#t?CFbl6{P&tFOJFS7B?Ff z&peQe828LOA`#oRWhHUs=%0tpksLXEaYOinvUNU4| zI7Vhl%62b@0vD<2%7B;bJa8`yy9kax>qAsoLhY6>R;A&Pu#tG=Z%(9a)!Ne zTKTKBN6OXD*4YoQ%&qGQjOR-v^A51mPM;x08O_s@}=g;}eT7qU(2`nuo6eukv z)=NuemF$&)9ijp+`JT6?+1GNBsOdxsN~(hE*t=D2bL<9ca-8 zb#-8a6a>4q7#B-i9QuVGC`^5XWW?AcZLO(u)C<0dJE1G^xTGLRSU)v{V27 z(>KvMZLfC_dO_>Nem>ap0{O7QdqXgxjjtlU`ta3{uR(YgUAZctuqZanU#8I$}SJo4P^@wHU zKenSkJWpA1R(C1qFV&g1f^=Ak|Qva)P(ym==Z^G4>?m43;l%TjmrUxVeOf4Fy<&$xi0(t?v|8; zkFU8xai@_bH(+u}LH6Zh#1JM{-c0h-lf-5<$%*_bGw`FHwPM2+S8#}5fw5a_ZQy9G z+UPCzQ0f}Tbc2_HS8OO_93T_-H)@QIlZQ4=oBTB|QwH7{%4QGAj2ls2ZU?z*6XZ2B zCX({v@a{OVVC4Td)5GTGP^=({o2drpf=87W62z^##f;j5u)RkP%u2r2(FtgPfqeb3 zQVGCKN$rM&HDo`C5krw{h~l}jR1mDiKHKRR?>~6@*!bL!k4k=*qg^XhCl+(lv&mb^ z>CV1MsVqhMM|LI?vc>1K$cYcXXUC53cW!cu*1eg-hi9fgdur#M6Vla*|F->}FFd|< z{?SLzpQ7>8PhWf00JXysbA%bXFsX?&o2yP*Vq-mFsh9>C8|Xk&`!(@T|9l;_Uuo|k z^MYoK{(N9~fmtya(;2ie>+isMgK@6U&9wv@f*?K z{*v@vS4d{Fxv=H_Hz=MSJ7%^dBko)8u*CA*r^2T3tG~tm)tbT`%LGg$K;#3Cz}oxR z))|?Eh%Dz79F?^JdzhRlkqgs2&PihS39_GnYvUOP`sxKhx7W0!4X3oBbc~Omaoab_ z962{io>ZtbZN*qx@ro5|X_dndpjPaq?{ubUi%t>2<;e37B$Wc?2pupz%?TAHlN;lw z0(lDsXPB2|V3bGWyy*W%aDUt$sN=j2zXm{!1-pEJwk3v??Kz6|)o@~mTFIZ7&h4Db zCu$SDaJ}x02n)%Y&*HDL&$V0IPQSaOR-b*k_{G${@0Yr#C+mA!X-{4`I`_40$B*<{ zVY&}~Mi!|}_CbaDATun0-6+ySl~bu!hD?GgTetuc88)(3VK9eGcr@Hs!N78ut{@d) zo*bY`dc@5O(IqU7Ko(O#K9*Ipm#Gu;0dszW6Ct;LnG&%K!eoJL(ErQ=v_pn8i7``E z=1x<6U5|wvl^~*z+v}o7x*0w2+iyB}v-aB~(+YVm**7cP3R4EIA}8c}Vp9uQkUBPI!Hyj` ziZru+;|$(7Q_yK6Y?rlY2;r0<0Gy-Ybx|ED=@^77D}IAaXg{U3h+S5qNQWB&cg7T4K`9p(7gV2uA)su5*UX26@R1MySvcg2{NuMi z`Ri+6Ilow+4NM+kmk-Z_&+(Gj{3BQkc$#WLX>5Yn5Ic1+mUt5KMCfr2{LN7j4QxuL zHgI7Pn(PHyW1N8+KtvHq=+rb>Gu-}J`v6g4QhiThFTeiS9DI#Y#IX?knUs}u`y}k|)r7~dd4gz!c zOc2T&QVoi&!z`v3*^~|0&urvM4UbjLpcf31mse%FV-$78EGMlcAVwRi2trXA>ed3p zE|*kVz7MRI?*q7=0mxUN-k{1rE_8XJ=bcU>sC!VrKBGyJcpW%X1Jmm{V zxlX)NicKuuabfL4ofJeavHY6?5x;+1k6qroQ}Byyr&Zs}qT8kQlECfPNnX zU5QnLmr=>iGhhkRV5N0{MRH1)@dtxtuXcniolaPa)W#&HXrYo|3&_=vlS_+0eh`3R zuVr3ic9Fl22rK-|R%EH0P3Ln&V?xytOGd(Ra zLAwkAenk>feGDK(+HhPy*xk;ia02WfH_DQf6bwA++yS6$ywR1OV!PQO=nd2SQd7?J z0p1_>rfxgvk>}ZS^Kwy&Hq&GAP-m);>5c`}d>|SLdKW+B@>QgzOWd*LEhz&DK9V!x*4E{%Zh1?!yfr7r?dI*3>fWW}OYvB% z^WgP294dvT?}@ObYGqrvR6RMi5B;Q|&vFx{>8vgNzKJtwh z*QE8n1dZ>1it*YS}d=9(S%<}j>(0?BvY<*kXK27uSbjh-i#UV?SeKp%+4>U8xzJ9i=unX(!!oIw|F5kw4#~6pTiV`DZmNFQ_ z5L>~GleOtX?W_itqDpsALmilEt0Ly|BY=PdjAv~%<6=Z3<%cg`*4pGQ+t4wYX*X=8 z6?eNxEUwj!nvT^bHW%BJVV4O~YWSj+gfEV`j7nf`9oMJB2^dX=ppOYbSE*<74nZc$SQQXLlXLdbysC{3pAXURcS}IS+UG1gJc%l|b zlv++HA^K>Zn3~zDCSR!?+Fn{}=8B~#331YenSS)dkx-ocuNyIbev~(U!01Vo^tl<4 z*xMzthHd6vW*DYZ7ONq;lcKpI)V5))$OZw>z}8%~=tzQ2ZD6=ej}#8tI*Iol8t^{KZo84sFX#8?*)w_F5jht=Xcw>BwJv@`~ z2F2h+ZBxnn@z+(ytK$CaJ2Kf##&BV7yKnyFwI%O=`V|FoT6=^T@O#8I*%_V*G5d6e z4>t`01GHPp!?_Bhl8+cdK1z{tWI0sL5V`_f=$aq``-_>ut-*`>2+b&F!>*=|mogcf$EbWfbYOkJVbH1FWk1qYFq%QpLy64B{#Dw*$dDz5vfU(45YTpdlZO3DW`;dH z7Jt^@EH(C)+Dpfd{l@C5Bu5wgffov42*Bjd?;kZf<00|-+g{0k?|b=I4oz1A0lH_o zACTvhW8SY%23eY#lRTFcc`g=I1d29S!}?Aox0|`FdB{WZ(8=!vxt|1<`V&!T)M7!z z7b551mhh3l+)e{?dyV{OS8X&fhdcFoc+jB14xXI~*@6->F@TyAsA_FSPlm$7enlLv z7cp^FMoxph{n{{Gt(Yck409?tQAFauor4$6`G?)L8!Os0I(`4CeYCjso zLrcoLnxWN9(Yso4F%Bcn8C#)Z(n9N3_gxv(sjL*SbVGL#t07PW!Y=PjP$bW|O{)OY z&;R_>vJQ@6>@DiyDab{A5k;M$FPaT_X_sT7urFd(2o` z;q8Kz!YM450d}-RVMm(Pf>=aG^V_M056`3Es3y4dmK@aDy0j-n^W1LI&$8)b_e=#m z1~wA8`W5!U}EvK>o5cCB|ScOQZUim zUldLNYJg)YYJmH-QE0yQM;7XmKmFFXZr}!}4Jb1#_YSh(gUm%8>+Q1OiFOI=W2-(D zMghTTvFgx?=hkUOAOs8k%L@2+a6VgUNx?=-YS5-+QA-@!pC0kufL=9!Jm_7X5yY>W|*t`^so_t zVIBmA*#R4b9FQ#=uB7%-58EeFmJ&AYOG3q!+aD^v_L$$rrx#;^$ty17{iI-j!HfB93OdI4?Ig1aDd4jw8uxeRlHKwDN86jg$yHQ)z*YD5^g6vx@B1>--LrMi zbk9uBp2;kk$-Xaygdhn?2z!9Yz8MxVE{OU>P(&03m)G6X1eF~h0*^(X@`5NXtQrJ_ zu!?5-t8?n!+jo)y@qOR-(;u1scXi!cr>f35b?Pj!Z43IRnsm*fX!49@>o=}geZ|Q? z4R%_Dl-Uzn)19T7U00oc`MQ(Od~@Wx8&{k);G>@NF8k7Y-wC#GIu$wRx{VvxopDJ^ zgDH^hoLmUDsTo2v8sSc|n5?4fNtuF2LV#_J>1d$I!j^Tuw88)(dgT?k9aaP;I*dSa8Q$dwhLe0~aaXse7D^gyvY^ANVjN6l8 zE>gULWfz-(p)TlksE;-w9XX>qSKn>p0(0miZ)?wbx4hwvKN~n zCa~Pvxd62`NHxNml@>q+!a8psuZ1zi{$0U#WNHa&C$R(+a?u`nPR27}-r?yf$X6zK zdKTpyf|?bKZOW8IXkb5JONPFDbzP_1ZQandl__*hK1V3-PX=>8I3;aaw6U*osn6*P zC0*|3==NidTMzaxpVt*?@a9vEu}~s$g3;OZqlxkH$$Vpb3#fRZgs=0|Yi52^&OX(7 zTu1A%iTUC7`SaU*R;)S(&0Z}7@X8rxK?r;b+OPslmmM7t zp)T- z!VzIx)9ehIu&`SbV~pHuV-60eFhEhd&f@Nz3E4Hea3mWQ4m2=^*uEg;t*3QHo4=3( zhL}qy8*Pzz+men;y|##}K4J~$3+;>Pk<65?nfT->^AfqvM4~g70M3|ZjB$8sV(Yev z&j+K4h%ThdCcPK#+<(R_hRWr$o6W}*Ydq(mG_=-H?2~KuaApXFI-n|8T$ViD zsvy5a6fO{%UW_3~R0{n2z1N@ZK525~a-G?%+qYrqmIaAygErC_i3aEIcx~pcP;-Ba zPbUU)h1i-s^G?|06XH>aE48n4vffs|X>)$7BNl9MMywvQ%{$urjeAq0>6lF~P>mzf z9q(P68tSzAkWVuDejj}=lH@v`6Sio~R|1kBp`jkEN{q@0o(Mr>;>w?g2Xu(aS%<($ zv~~!JqFuLGmxD{#4C~33l#e^*Bp!m21_Rd-lTpbi5dmLI8zc%0z>SgB%Zu`|LwHQK zDp8l+7K7s%L|tpEt3!W+ap39a0{E6JbXluAec$ zzB^l*Fv5j&(JmWsi&k541eO=!MPSngWj!UN0Q{i?6@jNV5xAxd)pwhE^?D^NycexE z+`*AMqQf1L9b?q<8C*Yv>-{yguN`}rIeJ@CTC_$vW}YZGDE(CNP23PKK1!TE8kv7ZxDzQt89UaQY%O)s%!mR`Po=K3pk+D-MVKXv(<#V2J` zNjuJ4^&R$~4%FfO#O*G`iZXG>a_8*Fk%-n#kgWviFJ&wB% z{X+H@`~}@P^V2{53D%~S{bxP;4z-d?q?_D0ctOEnO?cr%wwM=_4(TFwuP&WM$$z(1cD$7{$!ZtnEGMAkm4QVm$U@q$h{jFd)L2v9?N# z%Lve|O?7xx3&BUk3OO&pYckxzeMr)9Jq0PavVEl%D{mOKv)}YVs*I9TkNy)Xlb7y@ zdj(0elEWL-zLwfco#|%3$7zr1?E!ZKzg%dvXIBIo!+N{l8|3~JF4|UC@3Xst0jtqw z)VwR-Ej*

                MDMwXI;wz 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

                  $WqZk}x0esC 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

                  QZRMM_6S`3|()%Az-QD>2fh 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

                  et7D*%A7SuBRrR_s|;Pb2U28|H|f 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%0DapMutvZUIyrkU&+j!+R3& zxI^@5P!QD+TqOqb-;;tgGC=~XrA1Dxu|%>kdEiD_h9T1w7wys<3O=V~+BJv#Z)#h! z5i2i^;a;%q;_4K|`YWf%>U{wlZsL;5y{i(ot(RTy^{U&uuDXEcPsIn1H50rhIK?{M z$zeTj&6z8czp>(Zpml0-peR4sVt*}ve05?Vpf2w{r}A=aR^?IsF7<_3bGbEUHBAOI zkwE8{O%a>zY}AuYXAc?Zzw_V(oqv8g$gYkxLk(L+(KKnxTDp(0qgb#hq6%(^}m_L4A6%``%6e8~VH9zoCDS zc*h%wceukOnpOeP;Se^m!%L|Cy=reyfdm||C<2E5sC~mUejHkt(%pLU^Xl6n=Z!ka zL;c;ru_#Dp6Zv<_zEK;#9f`!x2ph$6m4k;j$>PvUf;78DepNNpmy~H;&MyB;T`uC4 z*z0BucJ0VW4;KY>JIQusILVpM?I1pNe!?2L>1)5|C|JL~{$A^KDfDg^`rTh%ahTL5 zN5Nw4sd29P9j4BogJ`dD)H^5G9v!@e;|flz;7T6r#1N>y0&r{aU=Mn5Ejl7v`6*8^OqvT|W0Hr+a z569Da;)Sm5IU@Fiq7eu}zY_$l;hK=nRFXP?gQr1Se;@*jL2Bt~W- zFSuB0%q<-S8GG@#y}jq2^Wc_gY>M7)Z?E6^I6MyvQsNQv?^E^-POE-K7OQ8F80}pp zl4$q}&pw4Ozg5@_r)p;ds3B{Ya4dX}usJ%n^vIjwwe$9k$<{3T?LD$u>`}XP;A*nL zN}hp|XxN3{K`+Zwe;tmzlbWzr=TcgN^b{?t6K&TRP8aG21kPp+8BGrNXb|R7VnYZ0 z?t}Hw+VS7A{X(L{t96@u`MhVb^Nc?k8R2z-=wiPN@$VDA)w^bj8okZM3%p8~{wMOv zpfR5eM~jtkQ2(J5*AgbapF7ue`uYT~QJ7PsAGQt{~bZx=fikp2myF6*}%gNBku9Sr(BR&MzU36TeUPMyhXi|MpEP0V(? zUTcd9UhD0%L;g}ZQPb}|dQCYR^mRp(`wr$j^Iq1*0D|y-xr1^)!ZTs;#d*Jv1l@Oc ztH|=P{ycd02PH{Pl3@@;5Q!26Bu6<* zHz3qY+$-XQPl4K(Cs#>7fhj`t`S(zVvzLS6YxSzDn2uhL+rAJ_Uf*=9oWfCkZ|KF? zeoK*GFmL#dueb+?EfLBc1`rLGtI!vTwHn18IBuvOHz{6azqZXKmzlioHXxQz-L*7) zYfiEtgiAy(&}jF_Iddp-CT3nm7E>(r>@3oq)7 zu@^4=;<%c>>PJ4wEKGS+WIL?*U*s+FsR!#OYJ~_QJa{5yT(uPYJJl{D+ zKAW?pnb>Gf`KjM*GoYcv68wRmDMB3ZE^s$be%+I9NapfXR@X1Lf)= zfmXHWUP(VTQqIiHMXJNOeS&Be;*=k7gX4J(arS!uC?1p}JJ^1A(93FPL0Cs+ZhBlO zTXxXBUKL3}ln+y56$@A3bLX$97Z-zzx2#dY$?vME1D;cPxcZa`c2t@e=tb&{>K%D@ zsg%KuEYOYnl$M8xb)~*h+BG9M->GB|+CG6E?~KJ!Q%Yd-@&dC;f!L3(}PH#d*mC95h}k`kMoaUO1gfJvvBtqh}{%;Gc0QJ zW(0nkX`Q~+y%)-r@TsMl!}Tk50Ay;%b;dQj*Kx}=7Puk`qmdv8##nY0vgwN4B6IrQ zwEJj89E8~=Dkc4_lZ5~3;0eEpP9V4J*~DAU_b=2*bca9K_*lizw4Vmc^I{$`26&#V z3d2I6Hg3O~d)e@NAqFAWA2s}D0-VQb^L&p3X#!5}Nq_rjEkkcA;IT6&{ECP{=!*xR zb6bRoD`LR`K8FPpK z^u?eIwx>@3DsGcgB;Wj9+_h~)mGOo*4{j56qd=1Uy8JlaMpoa-A@#)sS1ub){(0~8 zJ*F`xX?Od4=A5|+DdPCtwq~$Ycy*G+(23PS1uFc-SiHHr`t-%X_+g^%&g!P7jRgK4 zD!f`Xm}u&kN|{mcQRV6fnwc+zDh1!iA2hQ9Wv&f5a*4IRLmT%ei3^M!tMEnZl{QZ9R z%Y%91l%MTw>KdMTGcyLMa;xrAN$KntZaj(~re%`&gx!@b+wEjB;EyJ9+we8}@L1EI zV5?(W*@zz+mV2-jN2JiwhIk*?nvvb?CQf+JH3-LlYU%Xl8Buua86-Q)CH_v+z}-wc z{SEpa^?Bs{YFvRCx{GkZ=g{GIUpdZeou#iv8YPvk_bv#WjOi?~l#oJSwcV;6!0y!P z6cofx>>U1U@H&xtWkLiqKgvy|TH8w5>w($97Y$a*CL$oNJ& zQ3*W0>$FdLmm}ZCcZPRwUvdxs2($Xer1z5_e)e#RDnmW_tNuOV*H1wVB zNLOw{sK`#B5^sY4K003TL`47;t`V#GqmcFuiP;RXIe~?l=&z5SI%NUeYr0$-yDq5F;|Cea#2tukJw=xP|!a3NeX3< zO_ZEx^(mR1Jhy7y#i=g9^HP4)G4%y`Ak@6OMm;MhAMERPku~p}*%8LDns~%lVtk%+ zt?1uVrj4Gsh+&+MA=X4gD@t|G*{6kM#?v-__qEnVc{`17law^7I8M@RG`KJ`jJ`?p z#9mWTPwP!FhlfSaOquux0Q2C28rlp@1RHV`9L5jQBsG8MDR}3HoA*C7-?YOdskd3; zeffYBJ}Ujr0NfBE_mKMA#i)3^2|vyE<|BaZgyohHXYLXnpQV10@dzdE%BuM zBYetK(yr?AWq44T|4hP*F#-aS###R#Bd5^Per1n@@EN9dH57a?-$QwzV#7}8S=@x3 z)dC!1{L69egRbUrr^K+$_f`8>HB5~~X=$79vxsI3Wr)kyt8ROkGCBqjju*Fu6{$o- zR7XbYM_RVKPhIa@GG8SM>mU{w(MYX=;7z5Z6oR zPBbUp)-`+cGHudw)oMT5k&=lHESSy8?r4_~hD z%n4t^tkNNjhlN9M1MzUtcF`I6+x?rOyC^1|tYI?nQ!`@Sk@ny+zp-(Y6c$0bl(4Tk zWLZrq@3J#ws%QcTgVS)&%P+a$dADcIj#}7u`ZPMcj<=;IIpox6&A*3OHP@oaB~iwf ziaXqRfI-w?Ul4Wl%%u0g>8QU|82PiOwNu`DQjFtmKUU(<8&ys}%&!d>eU%|z1Yu)E zoE@z?3>kGI;XY2vCIu$+a^>05?OTUd-EzSZF;jwE_lR`fyjE&b4BtI z`RqmZm)Lk0S;QTiwk}%sg^%%BSS9cmKQ4^gIxw=biGKhD9#>wJK^?wnR0jY_JrXPV z%ei<7%QTQ)Mni==#ZQp!?_GOFmV0lgrvalEUMC(Y7EefWpPKW}JfqHa@B9RqSc796 z&G_k#yx1e(ieq22&F~yD{N$u7@kv3eenvXP)##fI0jIC&|?B})L@8#+3PvWn9 zmEq@4cwr1YD8AV-@yVg@FFfKsQKo59uz8G;ctp_@XE&W|6Q215Dk1V(OgfE?-9ImX zija);YYGhx9v&1jb8I1-m)K1249VVyG_4YvnrubYJTnidNG zqI-~2QD-{}_-18`$oz3Mu)AEP&lBe_A!drFBpg#B(Lh@L-9ddhsh3>8Z2@TwSvrdxF%bK zi*2etjD4pI*rf$7+m$c7!&pk>fKvI*@YtKs0Z3xw`Q28c69J-h+e%r1Pbxb&sK47% z7tig5YJ`%qUo^^|7)pK@te7niPDLP{iMC^;J)!A#0)|H{_*!*M}HRG$1}Z`NZ9J zXvpkom(%gKZRC=+!BgnHCott$-@I*NN4I&8K37&?z#pMwsjl5aBYqI6bw7jI(WSCo z-8=9g?BML8g?b6>op|v$#QX|pXowa5Qgi>ag@!49Zr!h|1!iy~{@bG{ zFPo63WJ2Gc=@8mAy+PtgwKT|yTPHYorR034yhqv3*r>gU2 zEPcvuRr5Pj*M~l;sUpAzMTMumWm!-CGBl5`y?)O^FvN~WFph^0@n|+gzQ6}`Y!Hrg zi;t;Qy>eu9e142CasVJao|%$7cSuzwjx#uCIM-2Xzdy@|mj~uevPVcT%_7+tbMA?B z9e$EV4yL(%T$Lj0YJF{;qp$z~8X&zKsKu&7X{u`oiK;=%Hy|edY38?Iq&hMx3V2QK)AV3t)8@Tz-iw;ZolVTvh+>1 zO+mrvtl{a(fVF8##3#R=sc1^wsM(HNgkOv+cvfIBxb;2HVm+$> zS*!TCk6U5+6`8?2cZ8yW*2=oAK6W!}fo(jK72$rOoiDUTuXZ3&yN{sk;cv-yLb8^YNL3rGu1K4i~T~$W7*C{7?JcB(&WZe>di=X=*L@qzj1D zfO~v*ZM@&mn93lmcGWoFW*(}Qto?4>&Xc-jfqI7ML2gsMVnG3L`zQ2cX7z9Qmv(Jy zV)*&5bCHoKet{9Ha}BvDHup#m0+TvE>!48+T&x6ICs+alx3TV!Om>WEzW@_BV_&T! zPQANbQQu-}i(eGHRiluM)sI7p32JK{`I<0{vByC`FR8y@cg$$qvzu6?siZdYYiqcn zyul{Ea#0jQGBJ%_Ef3s@EOq7|KoUvPYN)=x-abCi$u#V}k3dke)kv zgCkENzrKuyQV9B%7xo<-kvqMKG#e{Lx_PU!XW3_kl+z&1Qpz*w=X z!&@)=y?FGY`x=nuU@DFnlTcLPp(qqnrTn|c61x5EjO0{juRPIs;130_L$yx*bjuu8J|;(bKAHxzWZZH+bRN?PvZ6Z}-BJuY8rh{t?GjQ9Pvvir zRY;lu}}Gbiky zRvS;Jrub!`!YuQu5?>{ieUWQ$`E<7#zJ({pO-|R(ktDdZPZnt zQxf$4o5-zq9IYF9hc%YI*Znooqn|^2KJ9|ycAL|Np1J-sX?M?UD%H5^fmdTb_Ws)5 zI4>V5?nF@$j)yk}9ks>rM|>Yarp4A98TT#JX+ATQjI>$iRCCu>d!MIXVk>&g=u`|2 z|B~3B6gpuV1(Y}WF8mC``kGRds+K6h{v z^$Ix9e)n-E_P?QQ@uv&?x{RCi8KX6X(`M=cK>f@*Vo^7S5IO*LDj?|E)6Jt-GzDUWx&Mv+t z%IkDnb2z!F@prWtpCk^vA5L)p6ifMZ{@{b|(>^r~pI*^KhbJqq-ZSEzy&NtGDfEZ5 z#k1oz;d#v4JRCiWieduK)wiDRGT z&tDIO6|3(_Mn}A3cT-#{Zb;szyE4AIJxhY3um!xzoiJB_0wbbMe2o0c&UK^t5;fqV zJy|u}(G*Q7`2Fi@+7IC$^_{2R7?r7Iip^0lOABfc5n2NR^o9*Op*Q!lsMbd41^3=P zDhQ@&J~c!>I-(D-4A!;0&FhZl9OArUEcZ z6AD$SvY28TUo^liFw}cKWj{^$T*$ECvNqco6@;6sO5&P($;d}^c3JmnQi#8+<(vD2 zZo5bX;hqCLhjpZNYsxc6(c?UfwspZ5%5Y`6n}HHtYe?S~adL|;k`Y*4i;&F0Zd90c zt{Rw+VXTo#0seT5?7aQ>X|Z6=PM367p7KeoeDf~7V0Y@-wGhsgp?WE#{oVlM$+w1* zHCag}v$VKdSL@F)ZJS#~5?Pd=p-LM#T z5a(k2QClP)lT_+WqM9)EW7xC`uh+z)E{eZIpHg&XNTX(G+hphf=gD!*BrV&j^l=`+ zhyu3td4mJ@XB+C=&pmIkrD&-=ajA(^i3Ia9E>SO!=h+A}et}n&tG8tU{kD+7 zl$MdE14>2sDx6$UPhPs$R*dI+GQP0m7N(fm<^)|<3`>5xY+vd2f>Q@#*u}(1A<{GO zD-*HLg{Mvo4W~+nRbc0aYeJ)?fAZ<;qz{bcr(szg*;0%8P6s_HY2s-fn0~7qn|bkh zqtq{hSa>QurDLo`7&Ch==bqvc zSqH@G`C#@#+0L-e+!$kQ@rYLPevkMPS=zn!8|j-Jo{EOCkXwOz6?+>z9JBElq-@WIQdMI4FuHQT@L6DF5Gzvq~5MV-(yn3!o=8V;0( z-xpMhCKmiDO_3ZY<9(*|3Sxm%K@w2+5pyAWF=`Pnu7#3lP@OE=>SM;t#r?Ldxs>nh zk>s1=tRIh{5oU(?RwrZo(JYd7n-45MAKF#9ct8DJaF!krZZxZ%e5I8=4o&=Rsae5M zHdaJSaBm+ipxa(N)Ibp*{6WaZ(yMfRF!e#}g+WzQxU&F7f4d#k0FE3KGiI@nN_Q-A zd9ye>rL#Xvr%#+%m?c!F7(h)J@9={x_lxW5J%1uTiP0C^9|AAl&TM$#>Vt zUz+j0t9#>8Mg<1|^@|IiF4Q*1j!Nx8e3E1@hhn3i;1Tf+-}3OVN4;adaia}u8vyXl zeeUV`a1_OR2zm`Rb|#3;Jwqqm6#6Kmqr2AtP1kQh-QNrU^aarzifCT;Y+x|`WtvE? zK}aL8NDqTJ}`A(tk`or<9J=ess(pKXYqy>}JS1sOgSNGW_g7{IP2qCyPx zdX|F|Ry!rt@pX*wrQ)MX3WeabJrzO5Qaa+4y9x3kwXM?&l{|j6`!0DFVHIuzgnGx-i}Tr*Sl&e6%+MXSEY(2rjxJU58p&`8;Q z2i|O<+N;%{42Xe*M<+U#zm2Y!AmS%f<9mU(@k!&%ip^c?iJcGkP^6tg!qV3qqphg8g$X2$e6p;Bx=g`xK2;O(TEZ)yP13zUi$-51j?C<0deu z;bj-sBoxX-#7kxw;?1}$?NFsweK^y^qO**}60a5`SK~oephc$pzFeBB-Z*FUIB{KB zdZavrJ%2#EPb@(?&dalY@E~#ZXvE0NeZ6x{iN%6-unM8CPeD-qtnR8Z?xHQ);Q8y$ zcP#wNRmB5_U9v7~V0qeePhQg&PUt94b8k?o*^jt6BC|xD83}!hTIVv3g)o{Cy|)5X zzZ7REu!UY^Y_ZbW=DXWS&8$#>UO$bQ!Q9n;k~nztBMgu!7vl~z7}|aYod}PxO6GX2 zybXExqveMIPy2J>X%0TE%~5Ck|{P|PC#Xj8~9XHegKEuf##I6bIt}|{({}ics5Z&EhYnB z2zb8BbH?U-G18&4z&eO13o%C}rO$7{qN&C$kC z4Z-sWd+GK@@K;7rFqy-%=XHYePaTsuGmGCmRT0Lh*a}TF#h?}oDGX&NifBmR`QSAB z@x{vAW`@QS@$Q1e_+KL``}2wdn$jAqCE7^SFFiffR5q(SSEIWbjcR~xKJnR@A8O}B zJt+%y2^Ox&NP`bU^y}(!QxQQ6n=4W}vX^S4x}v0+vy?zGVkUK53hUgdH^%$73A2Bg_ua_|noJL;Z zc?$7i@Ttp#CwtOjCPmkh=LCOE5#2A1X(y^#jOx3`E&V{l*ukCQzPB6>RemU$fv1dI zRjE&tU^$e--nF-4(7FaYEH)_u-RP5xI17PKC~TcaLY#ed{;Zs z{Q=E)qGh(I6CyHHn;}{DqBquw!M?RhqJn3S1sy`l@9aY#zvSMz*p$zA=Dc~knKtA1 z)$6_Y)}2OdGRAc`1re#U#qVus_UNr)1oQA2i=8uiAV_YwFO^hj2`}(Vr0ut!O~UHg zB3AEO=yns;;PuS=uQkpR{hwgRo1bLDNWVU7iF?%!wB^Z;d{a@=LqYTG{uhh{ERu6U z;%~n+*Ms7J!QxjtovfIVPcsQr+te#QCL zzK7vDEPoxda#J}AWHLh_@9`BIr-S272gjFHY>E6JnFqvC#>WgBVIYv+(~Fc>_kwOv zQHdKtPbo!4pNFKX-Q4Fj6)_Fo#~&o@lD#cyc>rhES_togoC@|gEIz9O#PP(c5-3q! z=zU)jc=ELv^ZUK;;+FNFXohwD9FOGvlqkuFT&-(aoMk0OO2M% zUksvrS0+>Urf~}PhJ83nw9dB%3WQX{HQgykjqSNmA(7_4w*{2p9DvXS>A$~K!FwO>SIfHb{D-`3eHSsJw5iyBdPwnj>!T2 zL3!(SuH;!=L&=LTaSP<4<31u-B|1Q^j}|qRDY_o;iE9T#pp%$WeYwMpr^^B?)7Qbo z#WUa_Ew=h_=a*65WZA_Wjp(`j741^>^pcm|730gwA(uc~-knX#oihv5ePs7sQv>Rd zz-$<@`U52h*C}aF$tXDX45-^gUiBcimM^{xOKBgfOO9Wsx$lG$zw26TF zin0aWFME;dj1WT??zYM9_YbH(IC#{7J-E}a$FhzF7YgcUe&CqOkva+b?bEW9nDvy; zFU~gmOWbTy=2&%(e5auSt=KU=ZCIQ+fKt-)X?u8Dcze5Cbzj%hGYY*d9jwZ42Asc% zv4bnIT(0+8b9}Tjjr7bXT+KfVjebiv5hM}Racg@1D;Mv1YD{K&5anYPW9 z<4q5QAV+j4{J~ZLFZk;$qdRdWt1Xw3<72;*vvwrloQd=RIr4xf5+=Zx6Xop03g4m~ z;ox6&of+|}fw0EB;?@up5W4Rng>H&a8|;`*Efq2*!s$fF^|Z=th+wfLvI zl`41}r*x)(Mb^rog(L~l@Qk++8?np&HL4CdGL!BRBrZ<7fg_%`;j88W*Zwhe7ZdCL zt+GGf&j?$7u8Afyl?w-hv~~7rzL@Cn2ig~re4`4pUAlNkPF{P9wQy`Q67W7q={ufq zrjY&%Q$Av`=)E{S+FELuo`J&3C%xxl=kM|oPJRNLPJ1|JaP^_HD{4f0QdWJM-W%k| zRKnsz=74*26C6WaY??#HpT4~HmZISfQV_n|L#F8DYrJV9j#>Mc(SbQJnF;ec7zXS| z2Twtz6`l$m(0DnBL3iJ}eH^Me>DARD8+_)RQ0E|`4tzM%gy#VC#!+-D4eDb0btZ2- z#>L#WTBee>|0d>uJH670*Ja?jK{ndAbP~7CYilgYhpi{LJBFv|)T`vUd4agflK(?C z>9IF%*t15S?d0UgjDd@yxN?XzQ>K!;odQz!la`srF~Oh!hTOE$`Vbb5F+HSf(fR=E6;;>T5NzVZ5hYpg1 zwOsPG@3WrBN=fM3XFIbni80|Cw8 zMFJLwoyfchYlA>!csB*|FyTG1@J^6&jnRzDk@e%Cg{dQgT5cNm!bLolAFy}Q=@rC@ z1r39<3-5hHt7fZ;B#*3;+E%<@Atdu~3c)M#*(ER7zjJ7(wNBfEcT;~ILS;(3H9;Gc zyN{&Zb4KgHl4&dTzAm04?BrkRnoseKrk>JJjk0DQi+{x^`!=h^4SilP{N($+CYieF z1eTX|ViIPK2#C^D(Xew=y_h9=YYAYiVblNInyoIHgI&Rk8qPC_dFUWjUXQ%@T2iiE zj|?G)EgnMFeaTFsn-t`_bM#IoCq*&9ODY?~l&S2K>DvzOvjB#g; z_As>=&v0!Ns82lH^N^CD9gB3#Kk0_M*{Sk()JhFR+$K5tL~Z^deJye3Z4tzHWYliK zr0wi@Td=9y*pGi}PX6_mFM~6$1T`kM{m{ew`Td=DCmf7z(+lL(T72et-0nA6Jj*8) zHb3ss)$5n&tq_1xRq*Ie*lh{yLQn|zHfWCj=3lJl4fKVBeoy@%ALHE;b`K0X7LWqn zj4zvInosjN?{Fwx30?x1alDmB{nGQ!%Xxs^KBT?^gBLid?P*O|`Q?m@je%3MpPX>FWb#UI;PQH}8M9lrD% zFU?PRfm0E;)V6&r8bt~V6=G3YrRr-+`KTIXf~lYK`3adGj%%X- zsq;(pgJSv=6S?xofZ=T+0qbd9jV$s(_8#4J5)Omgdk?C;BZQ}x4+jo*d5m@da)$UG zjmsHm7+i(CY<+*!uK8;pDGOA8gJqXLOt(I&8X&8D0aSc3HR%> zt3mhs)uY3Kuc`{XXb1L}w*#5yy>AAwJGeL8ajQADsucP6uYt&uBrGq`U`Zdi z-IfnQ^}y*0@kTrSkNxmd#J(5mVZhkHDd-xvBj9m0D0m*+x9_xmq2Yyk8L-G=$g^>Q z-4Q@k4GN!^>fYZy<$+@wg1*l4tX~XYAL*PRv~EVKH!rBYP~+DK`t=KaFBEA<0Cja> z*!=Ovg|8Rto*|mU5RF-l#zJ$TNvi|D%+qgNSe+>Aa@-Jbtjz}NkQ;`25%#FonfTH4 z47~TF=^b$P%j_Od_#i3tW&Wk1fY<1TJ4W^0xG(|S8=H>-+?$)yejj@VwERBy4!pi@ ziHW7Y7DhWI90|%bwF9m?GRUp?CqL83kVrEDfuzB>1Va7Y9@Tp0`SG3YEA18S6~3Ow zD=AzSGHR_o?rIdK#~2zk;@g~vZ4uOiR7^lT)7m62t%78%}`H>Co~e~3u8v``+rf9Y6fRqJJ(5` zZfb&6z|ti-yT@>eKqt!{j-1?_Le;xpP%(P^^B$B#b(+VwNY0-{fN%)_#I4Zq4>t5d zOvN@CZ1V%!`q4JOcmg94b zRl4paEH7WZJRWSPAjAT&T16a%h76Y?#eYZtHx|U;&rkvvO2`i{8OcCb2cmY7d zg6O6geUwxoMV@riAXq#21YxvrTYLy=LUAnxnjx2(K(9fHMup%4p2-v_4nTXR-(r>NE-oMH|w)03J=X7E0Mry{2BbvS&j`cghct_q4E{{-!DOaQG582L%JGKMU z9L;X;jYtK-AF%F<21-rJLk>WwQCTdiDQu*YjUUM&v6!znNjUMwNzb77FwB#YYWj2W z>iW#B6)e+mLI-LGb4TE0X~TOIj68fOy476~Yd-%X!${P8) ziM|eHvP8Ue`}Ht(@%A@NN)z>fwbQrl@HhObN5Lrj2u|QX$1%QeTMhHB7V$8+?x7s0 zItP^A!4jY}2Ot71oX$}hM8}PvzXpsGi>?xjP7#at6T|oE>vmsX`u)l#UO0c|3osuK zKY+(cO4*MS4_6T{o%h!5|0k>~fRKB#QX-;z;qIN`Sv`OQf=d&t8e-Kw0166|r0;V2 z>9h?g&si6^;JO z0M03MnqqEh1O~&i6aW(E`QS4sDnxQOj##zr+zn0t8y#-w4ZM4&pFZ1dcThD;6>#8p zX0i*Um)?{=xqOs!DeuQZf12jk$9nQ8aJ%60rZfir-ZwyVG4KyK25No_7|EvJtd3nc zH@msuyG2k0`bU8rMHD;upgU;($*XB%A5?FXlnnjF(2TNh3lv9qrNt>&1wBXT*w*t8 z##%9T%uzp+SxNd8Iex=i#Req~7#o5ODW#l~H$JrsNr9X<>_}Bk<2Xz`b(khPL{wki z%yk`N`MiyV@JZ&CTuKz|!a@v@#GnmHkS)@#3H{@8-T_@C30n8R9l8{DKsO#bE!e+MGv+PxcxVW4JbMEob;TALN3Cb_X!#2sQb%>LLgu zoXv_Ya+<)0zvYIv2&~#98zk#cA%{{|`r(GsF%qro1n4k{RzA`5v@ZTjjS-P?&@(N^ zw@K6j6sei`%4ArNclrx^RW2-iyG->hqA?wRrBS==^lvHIAf^Kg(XwC|LTV{{XPmGg zlp1(mG{~V2347A^>ig6>KG`}=8=?WzSUtBv5cnqp z=BT}ij>s4JKQY#y=%t)BLr@SOT%H*jVE3y=vO$cg|h-a0JZRXzTF8`~5(f9ZQO zhk{`lq8a?-0J8MO^hLrD&QT?{EL?|8@0}|L^l=lq`!d8+4$2f+jF7)u6U0JUp` zhtFsy$ssu!<|-~WZM$WM_)95G)sWPUPdLE>4-*w*N7if;6g7U%669yXrT7PnY{+Vu zQs~m)UGwPnD|oO@z}rAsbo?!;Kk!x{t9Y6b=$3vn$COpP^ff^x_U3uks$P0Pxs$(b zem$^IEDiFq%#wMwQXpAZL6D=&(qKP3i)j{iAtzzIQbrbskv6m{B|HlaK22+@xqyeg5Tvj^oO3E=>QUeMz29m+hol z2bwX4KSuWgYS!O|Iv>5^5|eo2Jo(cG4h|cLP^eKlAG*4|6cBYY~cUhg0KRC|Ju9%xp9PH z|3zoiKKy?j&%bKuVE^B2>fft|mj7Q({VzKEuLUw$FJ}~9|6e0mn3zo|@c+BWk9@B% zPlf7#qdz*JPhqD|p{5_$8i+q}X7c;U1vmovz`6z?qk%|z(yW4Wx1RlGd!DJg0I4~G zd%>`{!fiCW*#TTDsa!690saH5l!CKW{yq(=58U1w<^C&REW48WyEsK~m>~##1AqaM z0T}_|0V!Q?LGniVJkvUmikNLdgqVM509X}VC{-+VI(Rd4ISvJ>xbFZEPZ1S&YnMaV z-3taO^0V9TiTo2^({E46i^ASZUQI@Dl$09^ECpQs$xNtr+?K#_5rwFn%jqT^zcB&8 zE-o5~)@Ai~levbG<&5x@rh1QF5|=S%!B1f;t7q}JHnCmXd_KV2-9Y4?f9&lzdVZ@U z)&$Boze?XbZblkV-1fE}J(mtiIJ9V!adnHXnr?S<{Q>`5a+pNBbY%~Er3$5#EFp(Y zWt$<&bqoutr-dO`&=5kLDzvE>!Tk{rW~@Z+5&^e&uY~(g-R3l}6bAxOPFg2?p0;!u&QZX3%9omD z1FQU72H5_;3BYh^<6N#K{NmYNxPRDjlM{D8;Agf`fl&!K7hDL=2N#3$z(qV$$CD|L zVHg>r9CSwIpVcJ|QUy1R$3j*8&ZI67;~i(NOVh548KgcXh^JyjS1dkG`Byu4D>#G@ z!UI8sQ2CFbaCN;IdOQIxIzFBL8(&K!82rDgxE>VKv`5@z`~uw}fwvj&?Y6*~TT7Z! z3h2+bZ2lnts6W67Y15|oeqCWDBb&TUv|vuac2rPUQrvAC*e1*h71knKFUa6O*@+ro zCT$gFRS?n2X=3UaG!lmIvjnbeRcG9|13``|H-g>|{NX!&MjGEIY+|!F%S5x&?@*fP zfV68S{{Y(^5buG<)eL+*ct0oz~C#pG~=R-96PnP*vrcyR=(3RhtsMpmx z^YtbT)$W9du!&PSNI5Y4mfL?ECXiMmJWK4g9SW01kYp7fWzJ;v&eBxvd=eC1w?(w8 zPOu)HH_R{1l!WJq-i#=$h;EHMvvS-a10nxp;B1J-6(_yf#CQaDwY&oo(wtP>;#D{R zQiCJVOMZh|)tIVD_crO{iS|{8X`_YwCBubU|8c;-q8UU8$ajx+3?kZ@o3iSv^e2Lu zte*Zyh6L4hsh>bJx2S+pL0|@&%V$`ulT!TSK|g;e2o1mpqX>r@XP@ z-V!65CWcS{lV>s6!I?hLD?zvOmr8kaUS}PU@MaplMcjGD3RC?XdLX@*+Gln-y?5dT zVw1faMieu=aRqoxc35!*{O@9Xxk$~l6!vp<3&Zje#U$@CejcrzqM?reU~Zq{IG~wH@ zQ$6#aiNnso*h^>-5fuM+{9j2DRn&@rj|vZjnRdGRI`Xe~oV5R2_qg(o?ot8gIw8gb zl>#?hZx`IqxU(84X2dW|2fB0@zllS{q3w`%sFQN6sSHx{kMXk%vwW9lTL)MhRE^+& zXB4LiU8*T?N#HB=1TrurAmJ7lrEv_u??08DbA_08^YkecD3>Vc5?~iE@BlVs?zttN zUVlbI_fy;s+;dK%#^(gv23WaMZ()BjBez}%a#q7sdyqS#aCFn@Z?Y5$6vF5CknZP( zl;gMUg;cc}6Vw?m*WN*H^B>-0cWD*wUxV19tqiQ>TU#NSALD@dVh15a?YX_&keYu- z{u;-Iw=zhP!=|xOZqiZ)6RQ7?ZQw4gV-S~*ukI%Ojr;8+ zHf4)3Q(dkZHzXBbY%`=!Kh6vPv6FPl#|dU~^Oca>mRu=riVV(QZP*4bcidE_rNWSe z!@0s3v|0W%$XAipsce(Wy<Zb~r0)cj*l*7&E%Wg7aRUNFq z=d0-NRCdgD(OJ~hJad)I?X8&7v0VvGt}oUfOLr8tYb#P*onm%cUw``8@!9&HZU}c2 zQLp~!|Bg!y+)O`B8^3O-b;hS|W=Z2kIq`G?F26C(k~%3rOzXP+>*7`)VX)(T4uZ&| z`&@0L4G@)yd^@5@xq`@>uDcT~_nad;K);ZYW0g;{bh+BB8Xz~elUW6CtaKw=^fEtP z?8qMb_=`~)yreR4<1(GJcAM0l%ij$km%M6+w1VG^qqu#JJSSa2k=aNCHzOP8AHOyK zs04=Hrb-NXCYe6~`maTj~EDPv94u}K1rO%(9gyi4Bos3mbU(!Who5*VW)Bk|}A%7YQ|AD0OuMnBH)P{O6+Q~+*~;tK;A z=;L=OYHgpVm=n1b&X^Utmqg(~jBS?1O@rZ*{tkc1}&3HgfZZVKPH zp|^_spA>MopPApG!EWZ(=Fi`lH97N4amf^2oD`0@{!*nM5`6#MZg8!eD9mvUwiOLR zt}96WqgD&i-Y$+cFGYQCQjp2aOLgY@$@arl4V>+5b^ix@-vQR-z5U-77pPFHh=4#9 z5fuah5!tmCQ4x?4b^v7w$Q~igf&*pBmaQl&U_dq@5QefLGQ*H0$cXF_Mu0&6Z&;$W z*7n}}``_EAKIb{#b3SK&&l@oBAmObFZ*$WOIGwhXHDX%V$Q}_Z$tUij<2YBq>l<#= zl*OwRE>o9vOY`9Ax&$N5oDI-XpK|_%dXsraJR0JHi8SC)vp;YQ5S5YIn65< zXH=67Jm<6l!b^FJzRMn^tIy&&QwPuIm3wSNo6UP8oU1+y!4K44Wk3V)ue1)EqR~a?3~Rp!nB0PGV{s#8L7*J4^(8iYB=6A>|_i!s>$SK z4hJi0hwrFs*6)PkeFVzsk~30BK0W}W3(QEF^*NQ1G7Z3M>xKg89}^wB+GM7eHzV+^ zE;qI_@HlCdReT=u+o!fh-)DI}V!WIFqv7@=Ji9b6RMY*ewhmqXmGM~mk2ki{@?6%q zP)_%Q+M`UbyNm{_^s(XjtJNYm{W1Xpe2%3b;#{XEH@7qLOy78Y=mxN+Xb4=QQduS4 zIW_mP`>q;63{>NL+t=>}y<-mB+E&*b;r=@bn!>|64sl3Wayp9v9MM+@Ls12Q#5{Bz zR*RkHqPW{VrRfJJu~_5 zty*wTQF6G86UiJ;*6tYX6_dNTxHQ9X!dAk;+U4hIRp|@BiCn1Eh4|<3$%-vQ!js)_ zPn_dka-Kk=g+UBeIR`Ja(6Mu=Og77L>2BGc4`x7F_}O(IBIF57jODwAD!9C{;45g@ zo?nPR$Mkm4t6L|NucbY7Gq?hB@40<9f5kmeBCM+Y3XWL^p43;y9P2!`$ z#CoUK6+1l4=bLKh!XjR2L&CGhd5wBBYZ2L@4$xe_jP_WAbnz+;$fcK-u848on?0JZ z5ZMnL`dS=J_Kh?iZ8yRoh~5qahLOg@?XjZi;&vM9xelQ2Gv2-T4|HAk-K&|?TSB?7 zn|&nc+_C2SzjQsi%o?IA)aKw^CH^+Ic>UhgDA5ZdHCwxS!6GRDRX08Yy#G&92Vq+q?m%T zhpcPN$$S6A`HX@J8;H)0f@dgP6K>-D1Y~AjJf+0om0Q(=C3>}qLlZpQ#~~}XS)Oy`1mvlOgIDSnJuUrf`~4|iQz@ng}yOGj|)f0{d}j!6W(oM3|I$t zTMV=stWKJk?gP6c>jEJQQ+(1`P*u^e6Qt6k?hYjO^jpxgBA6W}Y!cuRb>pyV@Cu?% z53(=`7clJEGX1aSce8~ba zoM8f&htswVyf5`jhIV<7pI!9iS`w!lDhQwrqi+1TMde>B{AM0{80 zg=+er9ly`I^9bkw=qmH&9sjj9XvHsgTqvji!ST^Xqd*(B`oHZ3AGfW5Fgn7H!U?&f z03j|r!=5b{Yc>H^O9ZW0m?FG{Qs-Kv=uSPyn_cLR0Y__B?0Qj{f(vp zl(ng!Istf1G(lp5HG*nzo7ixqZg@I;eZ$YK?t;sXt%p@dH42rJZ1WHnY#1$$T?iu0(C z7UrYI5+sO&w`z;VgGBgMu)NoxME-$>!cY-{GB!qTyVR*kCC@-QS5^G8?>HDqDW$Ui zK!0@-{m+haFfOE2%gRWdnpO%5^l?@F2l|VX;F3BurSvfHs;la|XFqU+ky2jC{saBh zNen&{|yB&AKz=uV>D9C<_BJxBJEMCqgXJBXWN7tt4<>fRKm zXFoRM3y*bgnr-Gsh%M$w#?Qq8MNKCba^_vTT%^V%<6jbl=3Fb|fTGMUQU+*~(S>x$ z_*_EvoNId=P+rqT${bA?U5Js4&nDQ-xi-cD)kR(0YvS~>2oa+TTpvWFWPCn>IOmFu zLw6IQE>c!#7-$b{kTyMvJJXEu4h;HT8lY&senM3MOK{<-$h6?X;ld!QX~nrs!V^T? zre@>-Qd4i(uaWC>0d!NnXCwoG(VGpu+{Q+MnY6*w1X4a^_@J!irWT4TT`#m=6)5z< zZB3~qQ(b~lrxrfT;>uW#yuLRS4CuX(j;Qin9mPYrU2q$YNj{}2X@fvTh(qQ?D3Ikf`> zPJ*FS9l~L8%5Czn#mjAWY#_9Q>WiD#XAQw^fE|qiQI$|INF?>cfEMMbS;0xvZE|0v zj_AX@sNINz*pgv&sQB}ZoO$GJ{xVF9Cc+CK|5;b6kAV?bZm;lSzhHUVOL?T%lBHH4^lP2(4Kwyg-K8p<}6@; zew7P!Ds>&@0u8fh0U9+zRXK4Z!DfgS`e<&PjG3hGhH*XmO4z35(<(sePwE1$AL_35 z_F0G3#@Bo|#I@R==KIjkS+j1OMEt^iC9Dohu`WS~#K{m^; zrCv8|MYkRY;{y2xvn8X{X`{j^qigQWw0f7yBii28t)zj`lnF6N*X&^u+++pfCS-{b z;e$w0P$LTzFm4<-JGKJG(RHpa>)P4^k%qWoY%%!+N4FvmO#TvNed&pK>!4?gArgw> zq;a$41vmi>kqkkNXgd^@fbvI*!i(aXSF@srC!EzhFxiVmacyg5KFYsQ`y+6E#nBCA zi<#$vP#2ZuqPXF;(Af?Lj1{#DNk-I&cvw-K&svSKiA6^Wd}4NDv7{efl0C8%TvWne zn6|U6HO+WAC~8*Lteqn@72L4MDLfL`>YDa)3#vs$@3z{9M~SkU58h6Xe6hu<>GAx7 z>!-?bg1K$UDl?vY9o5NX4ix#+=hJ8wW3$JpH&43rBG%?)4I$2(R4`{F*Sw^8^?FAvOqdTjiHF;p zlx5}EPCMkZ{!N7DpX6vx@69>;=5HhHKP{hgwyF6Sxxb5WIw$8%^Urd-PycO%rshj> ztfwt)Zhl`2xc0l9lh$Fj<< zkPSWH*joH-oXue(#ic6h0$VnNL%me1z|nCHp%jB(-csuWsQC_ubY?1gXdlGyf%v6Y zY@F``_Ssa4bc&bMV5j8g0<5wi-#1^lyz>a#U3;ofl~QQX`c}Yf{E#rjFG{>b6iZE& zQg|nvUP}z<{{qDCiMTPth!cHYpJ)fYyI5r_TfM!+QkOv1xPFpB!;=7lmiVPkwr8UO zAWt!Pq&sKut7b#^5)coDqqx$|!!zNU<%mNg&h$ugcNjd43+(66px7oX4Pr8& zitOz&TA0H(!AOUOXv}MECMz&=TbL4{a)AID=`hv43a$y5!$x4cP=^Mkc41jfs-kXy zFg`UBm6~pzlm(BhT~~ZN_-+@48z&BVl_|r%f%?oq-9JuHk z1oF+mJwASW$yn^Hjx%Qe5Ez{Rfj+I<4c2`>{c{8pU=Irin|7``t>QxV4$!CO?YVGG z48pZ(z?V0 z^_*jx`+}(Q|y!9wm37YV8x`_L*N0T|f>XPll_aRQMSofvv0@6LaZUCpzu8QLly zpWn(D;sMtRlMg5WxXw*>R@`9lmOMQ7!PUBB9ij@W?yC;#8nEaxxJZu98rlL&>+E&R zMKIv>s2wQ&eD+P-MRh=X(*|h2%zoc?QI$byRghKXP;&cac3<1yQrP>w@K3GZDAD}# z_Y^MvvUi{GFRkAz{XKj9vgTz%V?GrPvW{^xFqamyl=P z-P_0S=XB%MZcg1pk)GCuJIX)k%n$wie%bKRsbMaRkbHM92s(UeFqL)cb@k!v6DK4}_=p0Vy6t2%pGPQ`1 zdLQ824)gtEaSqq!(hagq*g_;n9*=5P8KT9GQ-g(e;69>7tkB0qM81k6aLq~Zza&5( zN}ep{PMrUchuLl7%LKJFM89|1BnD5HU2iYq*}t2AJ{5NsOFa8JF8Sn~g#1f_sgI;7 zlG}gYa3Zd0oJy@dAqW>`2znP}z0>S~nz)x^R9e`v+Jb74iE0tI%c^{=$mCcNx99x8 zaLIulOzM2%`;rmSC9zpRi%3{fw%79+uS2`l6b6R4#fS>KXGXhuJr%z@`SAUy_p-aQfLmYR+Ax<=)q-AuCqLt;ZoPA32=8|lGD<-*)% zyVNtbu!k@C1?IRaOI~$E99sIpK=0~kT2F~#2Zm#Qw#seUCcbLE(1pU3iyv^)#S%7{ z)b$LSS+V~yrkZhaR_uR_DQ9rbiv5oTC>)T-+ut<|w*#B}@~ULa1iQmD#l@DTcN z-@h3gKZIuMD>RUR_z?o8-U`HtSK3uM{d+;(^Od`+oO%!OAMU$nfVB2w3YaPv_&0+Q z@cZDaO>*iLeBixB_QIphFZIOceTocO^L2>Zm5=JzYjVQF&ea6WJ$!hT@*3yN@> z944I)oQ<$=7;auy0ulC-!_BiPa+qg);6G55!F+848w}K|%*eOSnn6i&>XCe4BZPg} zQ1gS8O;X0{!der}FGRq%gArYJLuTm2G|33~oDK}XA@n7VNJPMiI*3NQ)T{{jm<}S( zZm6pq`@PMZQzcrUn z#py`Bsd7es9Uu^94Me5B4%5DV7wT1sCx=1hR1~lBK5oxAT6z{KzJL79^+Si8rDRg)cQ3h_6x1^r zryVcl6?Zv8TWHM;J9JsOP$8YwC*gtq-S2<4@e|NuR8e`>l%{;m73$!=FrAUyn)Tdn zC7*B^ZRgxwLb6zTmp|r<%i{+=VIptHWR-P`yzF)?uQ+)LWo_yj^5Bn1|b!*CT4zok2_WvS1j>6F0H! zzJk~i7HrlXE0j-l0+umHTwcCgH+;?l()gB|2AWHCoy)YMCR={GQESe}k_xarTLmBp z3sj4RUD;~#;t~to;yM1?OAVIYjWg6dd8}^T^fMOXVjESc#Q*>`V$tnTViCBI*E7)V z7;4q6RAM0uy`XR~-GWa8_^X$^!Y4y??dO;P^>HEN2e6L{k`5J4G8|UIKlo1e!1)9`B;O0yv!47jj++_YWNzQ9y~==g)^l|l zf3cL_2|D+uC*D9k%XjC1pA35e-=pfz$#c2uLvu5xWf_dyQECUs2i2&%)L!rSam&G( z+v~Ye*AHy&7|#SxXgz(k=PTIJfdh$_O2Y^LJTpzdY#_tJ)2#8AqW@IA)R!k5e9vlz zB4lcLul5{u`wQLvsd|6pd}TQNx#gGHL&#O-{9_Jsf5cwx;|e%o^UFiduXF#3j2kZY zx(Sm%SVW{CHh@2BU9->x(~Pbh4`F6Uz572BiFv=T{{A$mI?6 zUO7(=`04OR=%1;w{4j@18}4y*r~5l1b07Y6X?FWk<+@3=M_xt0qD0uZ9@DnGe^L4cqxfrCC^XB>^m$@^k%2r zkqz)`S=OZPV9o^O#;G;yf2&O-0mSnLruGE%;-@q%PqkTj(>9Sr5H3`0_Gb{Ms>21) zZq?M3t1=+I6x$17yJ0%l2fR)(sk%jL&03hX<)?zuT33@rYvta2VfI=pOdR%BDY5w! zMAfZME7$pjS%Wo5N`1f%U@vZ@X;lCPZm$AuSMy+Dw?ViDHN9pO(3Gf7F6@OFNINVL zR+9ZfOI;@yUSI~cX+yk&IlNY!>QYf%K9C_fz`IH(;-+VV%svHjKyt6d<%^bee?vnLrJ%=-yfn8Kkq4=wMMXEhZU}5~D z9j!NzlJmuVuY2h>OaJbO6p39es>^3HB*%DH=|tR|u7hqGQ7aZRj8r4!iea<{CzL$W zSLsCDl+Mbl`4%x; z1$#2Qd8`@XWiym)mv)ND{OBvDkY~|=1JRldyGNv#%fn$ea!)>N)qH%YcfL zy->@rs)@-Mt3-kYU9w6?jMEXf!z%mvpFei)?L2u{9{EU$aK*sH0XEcz&_zw?c}z@w zdks7}`f7U!;hN4FW<{Mx?;`LKz3RtFLVP4|$;s^s-$fyQmwh(lHiJK(QXMegSAorShi2yc;B0lXQyE0KtVOv0PELN7RNU5GwsE3*flU;}Nr3c|17dJN#5FJm zI@AH_Wq<3v^Gq8dz!e*W7N3U7N=;}iXBo`a1+?*ttD#1(HBR=&Tx+!U5rOs}mSDi# zKuDQYiM$jKc9d-%zuXo35Ydb(W^*sI8=oWjWo@73ON_$=qoaI&??G` z3b!_&t-7Tw*Rpi3K>$#mhbM_%3NelvJS1=D2Z$|)pP2?U0WMJnX8{Kwvf=wE<6ZJX zcaxZZ4pE4*Z$5kRR@9NR0P1A*uK3~nacuNj`mWR1=XaBO-pMax*9x~-POYh}69CrQ zCof55wWi7nA+}MWEw5zuGp#|JxJsbNtkWu^#(1^iqDPZehkf(e9`=wh<_FG_dUn=`ChhW z?#utZ#!=7rer`icjAP3_JKSYlP_{@aO?SEv%!=n=o)*)OIo!&)=)%@D@bq`6u~b-z~18s`kq{I1I)M|xJbwm>`&DbbHIz8iSZvX2YJLu zls!gx2yWgC#yl^AUx9!_#u3MRHVu5>vF0{_A-?Nz*p3*Xv&S&Lhx5Dvt3N4%{{#Vh zj;|S91`~ze-0_~=l~i=bajd)}ceeq?;XQoh4H)y3+ES`{1j2EZnHpgD{J@yUMQ{NK zSZ-XooR4c%xg0)H3&w;Moy{EavBfYBz+;)HGQt+)FhJCBXRkvWEI@gs0|y8%$r9o7 znMm&eN#2PYP=-1e4Q$0U`@bJ57UGZfWS6)rd&cNru40u*X62>qs6&-aZ-`48*s5u% z@cEa>zyUYj2?Hoc-M<}LiHvCciGjVG^KsU{T4f<$W94+XhwlLH=B7x)%b~yUP2Eln zsnY3h!x=JNe;xR@L-=|*lP5bFdiPz^{8y`x#d#@>{0C4K(-W?WE8@5iN+YBTMQpG` z_tZFRjNd5q9$*i5(M|U5WH)wsJl3R$hLlTYm&9r6p;!nfgU% z*Dj%v5haB!6$WNbB(L|}q!{S#9D@ZKW?!CppKP+j$yilNC~S$cvQQsc=*tj0q;fT0 zc`>v(IaDff=47JcNw=$i189e%K0|sQdxxiFCXI{!&bd;BMbF$lG{pke5pO(&F*Iy~ zZ;sGlqNuc#y%TBx#+9Um%_(CG8D+YFU5{~7WdG&6z!aIWEdS|@937a9uV84N!HO)t4x|D z)Xq5%;LE(&J1CNw6c>HUeCf)B=Q8ed2Ce(l#?6^`vo-Kjhpq99HBwIqu05@@U}u9&%T3Z{>-5Q z@3K1wZ$X^Q5IZZadNUVPgMgh5`Z%h zR&RL8SdddFGAOdX`kJxfaUsDF=E#~&7IatX~vdB2|yxGITtfFc~B)1v~-CIq$&&VAo84>E)yYtPjd%2jw`4 zi9rj^fOtSk(3~Yw*#CrU|5fu}x;gEVg9=-!B@-{@NG6Q!vk1K90)SoYEpw0as&XWg z#sn+^O+Poz4iW+fq0IJy_BfNd%9PXXO`1=ROtMZ+^osN@>k?!qt0uoC{ph+&YES%RtzvmR zsT)=mF9>Irw$KrAuPnGh=6&la-{ED^;RzB8Xx0g4N~IHylwY~CGF46Qv9tW* z1JTOeDjC9YBJQzMUQ;9fXcpATinAnd_n3uLLY&C#eJ;gyZk6+_9%#~195Jv``iy%i=>mGeq>o#2JVsG8Uq$*} z8ZJBe{p0E1z}_K1GT>_rG}6Y3kY{xYpO? zW&w1ue%pR0THUFb&;h2|L0@O0j43f82RcoQ?n;l_u1!vy%XcMK z-l^Um?Qp2_RiR{ziOh&%sf3Lci7CSMNbsF~zU`yrs7=K~cC0gbG(bXln^_J!*Fd$J{`C8jNU zgRFK3x@tQes|c(=7yyvd7`4@rpul5uLD2G`P$@y4^8jT9;4iaqL^2!(NHfsYklq@g z{-QF2MzO*4|4z2QQLH!p@4*JrRT{71P`!R z-K2BDcj~ZZLsy_?sx5Shj->4# zOQ1kpuPE*+y8D1aa%SZCvFIO@RyTaZc~s^6RYBybg7xaZ2b3yasN+B`c)snTM= zkV00f5Wr~N_qo%$GrJpkshGxHJ99roB2xc5{<14^*Q|rN_mfkms_<3IW8C;J{Nlo& zcgr}dc>HmeP}pG2w(LsLKGt4&c3M9)vv(!IpR>=QPg<}a{d3#M`TLN*Q zkx<7rQO7n^$JSR@yi_MiWQ<#&L%ZHHDJd7y>y6BqtXFp$EMB&^3U62`T&7s6ST0^X2%fYgSvWBunXo%2=IL;rxO=!eIB#h$>H7?& zJ9{rq-XQIAJs`D%!&{MbOtIW+{!|%Vy0gOG_8T-(yCM4f^YmFA^_h}PX2XWkZ+j7~ zzm2NXd4Zj)xPx|3hQ@6^aviMtwTUMm`J zo0l9@VSoQz83*uuuoL-8;Q8j0Rl)Fp$M^~Voz{Yi(awx>dNMK@w#bZx1a+mRw3PQC z)w366gg!7`llwl#DYyP_S*2#|(*)*IQU4*P+4VTl|L@Gy4Jd5|?zw$#xoC=6Jf%&l zBCWXmFk^#K(*}daik^ykmH;qft)1#wS(*PlgA67T!{gdE>aG^wV7&D=ZUp!Yrri1* zqrdZ|=H`QUY=-IHS;pWOg#+e=r6}gED;UzAj43)y;z;OmQt~97D~GG}wG598Idv}i zNi;sbLc4couXk^iJ}hPA#4y5swrQKRDfwg{N2x6S*`xsJylc5o{M{n<^#>`w3BY%7 zOPpPyk?`U^nUn@OP7)+>;CXuY=-idFX5RRLtk?DK9BF1ezaP0>_kLq{3u z69mKqJE8TB29E66#K*B!qyMeY$eAUv`V#u=jEd0>ara|z>F9UHOlOLI?c83^r|qp5ubmkS$Q~-e0_OzPOA0&p1Fxb5$>{NsSbTh$^nA?P zt7!GNKT@l9R#PWlUVW$hWJqQFbc}fKmj47i@NOJabb;kn_`XTnjD=&oPVTg7c)qu* z&*>lssjsgfb{0yRU4WmW^0oO{g-N3`Z8e%=qH^3OL;bw5F^M7BQOoJZ(rKM&v$^bo z^S-{>CA6X=;*YXRmd}s41ZL;hhle*dH*0E%$;p{GEO*-LO>E1Tn2wk{=d^ayek%V7 zQDR_^N|)wUaXC|y7B=cDvFkEWE7K~*Y=UkvjzD=-7JJ|4co!snl zZw=-FbVBlALnlC3e0s^ZvR0F{xL==%;NR~(?@SXAZk==Y8Q0;{y|-v(<<4tOn*pr6 z>4#78zXH`TYy6ckY9G$evKKEME^gv><)sR zACn9*j@9qV#F%%Cw1{UbZ2A2wTU=h{CrvN?ZAQ6bxgxX?_*!31cIet0qf+kP^`8%X z>4+b`gCH>j{LbAcaYdjwaA=#}4hjwRkrrQTTE2>$of()rn31xPS^TW?q_d=x8^Ybe zD|#~61p6KTMH7eGmx|73UZd{jFJQWRnIxt`PW;!jC!EQ;(nCcDisFX$JWo?hhI?o( z@>I+kYht2}z*gZ7#hUGaVpX{k{gPrlieg^c5Hs{WwlDE?=#{O|&8cUiyp|b9|2H7Y z!BN!qC9AR(?aWQ_)SUWDl+Q9~G~=cR<5F6O-s_eB4an;CiuOy2+9--~X+zAo;jwqg zyhE>Ig=G$tiMqcmJo>)@c~nHQ9w)+C8x8%e?hX-9z4aW-6am+K*%iZSQLD=oNG@#& zldfl~yQMXo+ntg3tj!ct3oi~Yj=5^;d56brfX8+U%laAN_7#5u?pxpljUM$ah24EW zc4$9#`^0_R{rOUtUbjj2_~CeRTcDrE9*$ob%DwRwll#zXry|`_H_FTp`pZ=s_4!OG zN@Nc^#QpvSOJR4c6PhGaxm1Y~mO7*0=5~i?nN?>9hrdd>pDIdXaRM*ar(#&ptf)q( zGSY0Ni9eHn1YQs+C5g4yLvN#=E=PMblt<%5o!H?OyC;u6PdOPCxwwbSOOC0cl#_^+ z`K%s{D;Ca;$t%$ivUuRzUeQ)TnIkH|Ww<~SEN!aMu%&@nB%;c0d^UfcS*5OZ-VbF( zre5A$d5Ur_)Ijs`t(!fm~k#_07Lb)oW0>qzI$q|sD0j_wS#TWUqCUs@@MS>0L z6_)if-prFGB&YdTX7zeeWu8@(9?~&3)F|VSUNLY5lyiu(PozwSbf31QAq>;)YA|;$ zz+D?b@94Gu7BR`kSsTG;@1^;kvDqPRKaveQ62##=c&DE*>v=d&C3abhieDS1|6H0Mbab;Mx^224A z2PRT<9CrdMEaEfq!oHPUeOWfIN!)Rovto+O7{B;)a8_x9w`bfBj+Y+4U3PA?l+U$M zZ;VCS3TZ-S?Q`qHv2YwpW{YUC5&c^;NZ+xYagq9!q)SfpEBnX>1p?42Ry5LJnodMP z@Q7Q#;@Z>Bix?i=)AILOxoaLtx$}^}A%9OkLq0)%tiE!dybVbwO)I^fl7=DkkT4sk z8IxAX!L7H>Vkh~WM9AlmJF&Yb?#x$scx}C8_5e*j;krkPKK@t5a*Oyp{DMqhuuW&d zP4a$?dx~W&t}N}nLYd#j-xJTI)y~{2p1C{zP7!tl+9%nEJ2b&cX(yGQZ+OJY%`6Bt z3_fzQv6TAX6r1bm81IZbyC-KSc~?*7OHN91ha6iN*oM1}yh%RT2kOgb$zVn`=otYQ zN2Pb7D;%7@)x9fHAy1l9O&sbGJ$@NIBq?^Bq|jGasg4v3Q^-2;8eNVqL;V`>4P22U zrBU87mJA1>mvdiNek6kD209}Yf!2K60bfN6p3i zCRhhy10zgPMjRH|7bM9{q>M=%{+ku?Yb`^SSH$F3%z_n$9w$6+@#jwrvD$7mBafFi zS!o&4_Zpfh>9cDl#hm>}1T|g>vzzV*(5i=o^HZN# zKN}-!N;omL>1c1Oz!D!)Nq9abYU--M;@x~cwDRd$`b3)({ufOTU+ug86_A+KQ{us^ zeQ!E<|EaLANzSs%^v6Hn(AQ-C+Rc3?*YxFT&Oe@!4lt6hncn}27YTV*ir*hC*GFvr zNK_T&2Q}7(0H_3a9O2a`*3ZUBB*rG^Y&y2oKuukBS>huq35ios)5BN#F0;rspAW7K zIveoZ=9oX{S3vzpnMQ5E)r9{~g?&x(TR$dv{`rQ!CiB;B?lZYwaqbKJ9^fi=v_O7YG5< zwgb4{DTty@=Bh}&@7{{i6vR*sNv1U^UYp#~5vDxlqOV62VU`)WOp zbIcaaKE4d0UP1#r-@@ijvm!}8j%?vB+>PCf+B@MnU%mv~DgN{-MEt_)Lp4(0#^3Fh zvM3{Nz8S~9G$V)FG>}aD5K}^xd;3g!>2H@Gyj?**T23Ih!Ka9oE|n+&tjNlXDNma& z7^{}U#noNCKs*JB9DgAOOemV0T&$cVy2w85%UhPU?Eiq*GHyy)(L8v0ldiN?KAN<=zy*-)f$@ z1fQ|8n+)?<);1YMK^t+M(s|rPWrAsM&k&vIwVi4VrS#mcs1C3tO5@w@3n_}?u zcrVN`xy#6`jhZoI;jZjTC#NDyOYed0z^8H?C^lU^Kr-qZyFAQ^aa z3$>_Dva-fcd5B0|sR~hxC5Nq=<*(ZrdfIz0=9g*_%LHvXgpIX@ZzR zVP0V-|5_!zP5NDsxc}DkC22A}nUBm)mLl&X3%GtGwTr`xq2fDU;AV9>OM1l)*AJ&f z8}ALDi35LLFy{ZI)B1zem`iS=^9Hamxs@CD}PyaaJLII9967D1JCg(V!-$?X7@z zwc#Dzwy&|_JmX-y*Tv@WYtzzhtAEhl+hDz4*DJrY&bn^IgWjEeg$vnWj-^N8BlTuU zY-f7bqUQ2+BFoc@Ppgkw6u#4b&$GWFIZ*oB_?ZGBiGjC>mc}gwRG!VS={X9pp^h&* z%+{Kh>_Tlr?P<|d$5pXS^aae@R4o>P5p^co>czjyPH{?1ML3ln#=gR0w># z^|lX*jRYo1lH5p~Bm>enuHQ>-L-Wls%uC<&*+26ShxNGE{8X@gpra0oID4w8LM_#1`MY-A2^V2;E-lrh} zUABZ2>M|{+J^p>}0KJm-*-RNzZAS%*!faf)_>x6oGA`U@!Ll%7;xh}bHGE0lqVNxv z*z4MkKU;Lt<{ELghKqk|S-2m+HJ4mlc#*0_;U6s7hyeu^?eVj@>x&GxwtdzrdmW~& zQ)onJ3Xhf5c4W8cgyswccxaE4@@3?-$3eLRx*+Xw^Ovuiw8uyD2gU(qplCq1WOY$c z(;hd>m66$^aP7}~TL-CIPS1ObHmd`#NZnaR;}?Yj=7ppvCax=J(w_J!y7<|8wDX{e zBr!W~K@&|*H*s$l%8-X^`0l?pFQgkHgGu)+G~Qb;Y_1QNS3a?fnGw$DEQ2)Amzb-e zbg~x*qS#z9$iCbfVdKT9t?%ZsLu^~$7@{Bx+!>TDKca8v7Pot7pXFnY@aL%nq0`I6 zZkKL(qYgGPrhXj7<2a(ZV>38AWIQU?9y9v9$QV>3JaPrDdBwJYCD`1t9-M739>r#d zIgXI$(DO{Q-doauGVWyzbOnAKvEx%2>08es?N8S*1daexvX zIcH(qm4BoE9K@-hfsNggIQGV3e9}5vT;eU&*9uE@5|`*7b8qNgj>=yWp3sg(_GCbd z^oYn1Laf9@Ka|^Q-WpNNqB@aOG#ZMnCmP3z5Rs9D1_`S{sL=2B zpm+ot*Fd}-XF`;SriK<$vyfNC*Q*-5yEI&f zPy7S@7fhnGYx<`!?&|}z>8BY~q2Gbx0AP*2+5g?OU1yGD=1Bn7M@Ik#*bR5BN*m5= zp&!R>CfH29YTtAI8fX-7lDpHVtZ)M94mbU zKx@Kg^p-^H5nD_jW%$Uvwo#zp)xiKEYvTam&x~L#<8MMr6E;in(gEA#rTf@rZBC_$ zn_i!c=i}BRs5_4MZndS&f@=wNsEOCe`sCXDbf^Va69A2`mH<|OeoEe~W>0moU+>AD z?#)RObL?sol)n7*cFkA2)tGcLk1u$QE^p`A%co&#eL;8XJDAQ-VY{7d%cA;shdO!w zz+c@8ew14DqYC6g(zqAh%69W$evJ^<3*(DkQ7hYpmv@^jGPTa|rwr-gO_`j!sOA)m z-lJzlrHXvj<={tqOMWCeURYlC60R{4_RWft(QHUaH&#;1K9Qyw+QwV!?(hjyFN5T`u;Etb1I@%g66qU3YUT zYrc`UPKh5NgQ2Xb=`5`ZK{#LZKHfTY{xmnQ;t$l zC$b?*#uEvmgEH*yHsif_3f=ZDiNzn6Dy~f$6?SZxKTEFq`1f0$OULmgsAKf&l<@8a z>u9)DU5AD2xLv?haa(n*IXJWqal+R@$#MDJi~Ts)5VtqUDg+O?rN`j@RK8kyaA-8* zgh=jDvGfP@JP8#(bSplDgp3EKX_Mzs6M6Bbnl3H_zwkRO zMf=4jO)fA>p}ep>?~8wjsU1((h|IicRPGZ-%M+(t;?>M^qIi|v9BB3lljBk2d!bR7 zbCavWCu|Q7Oy&athRI^aQE(X+U@xa{ysq_TjLY*v@Tgr#*B_;;ggaG|d>HrfyhnJ! zdDLXne;lSufNLb%Gu8Ga20)pXv59#O5nb(Im=YwlDP8OJ%VGK(VchAp%5Z?DeL$ME zRD#f_jUQH9sDTyT1C_k26;WHLgv~Q$Og{oy>1l=4=m@u`RXVq6WU!2Y42sRt)%{yx zL0ZDfX_w4E_wClGt>Z_kf-=E0QlVmj8tTHSlz!5W}_n=Pi;JIQkl?4{HJ?kZbRMYo`W;|85Jau6L;rf< zQ})@89$`Oe_ACR?fPf^BPG*jp4)=-uvstbiGQ6I-ewN|&)b(u)ugBlG-F`214oK0{ za37eJOBayH-h|Z$zd75R&cNh+MgjdjpUB69dcAl(lmV!HjoQfXPVW`fY9sw|=xV?l z@P*CeCw_NrSUsny$IRvaR&Dh#BkXou{m-pAGzCl_}2$48MHQ<4?5sFXw5x{0rwFZBI$_ zt4H=P_w)OEcV+hHe>P=ww#2V8qKPEPqIapU?v^Vvi0@ggkwhT?o}3co(p>{T>$wir zx9|~jsFAC>yY1Gr=P&gg@;5je(Dd~J=Cota&9edE;y)Ys#VQLw)$atd{)s;Rlg_5c zl7jwdd#SvCes=%Ev&LzK4c593(o@~n8e)L) zNXd~~bH=YC=Zxcd=~^@>652mNTP&tM-ndt{_s1~f-T$=Gj5unE1rcUS|6<_ZXVJMc z9`yH!f4;>3KF@~VoPPdC?I|4nmuL6iFYHf4$a*riXE**vMO(x4h7HySd!5e*tO?6{ zQoYBd@P<5O{KYD%Y|i*qW{*J-OMv* z6yE^ZaLL0(f0q6W836b*wwBiw6`UTZ zM~LMr9%9V zqvU^-eQ{eL0JJE397$zzyrWK^S$sb>Gv+g|&4QQSr5>SS7hb%2pLsonqbI2;bdB60`NVIk3j0UmI4ZmN1 zjmCurqpRT?JewaUEtlRinED^ne{m9{{XB1T3IZF6>ttbyGwDTw!;-*vHDcP>e-WTNuj>&8M)gEtDeDz^`pkHT9TRYVDG2aWA*1oKZ#lZp-Sqyyk4ID~Z1%JYeVw9el8F z#Z|Qf-J3W($h4u@pdQ_o$2-@=4KZLVsnQ6f&l?CfA+Pq24&>Vg{@YY(nWV|tw-DPu zIz&1ff9&|NP*oRWkU$ukxfh!NE1WwxQB}jble0T_d(9gw+~!L-W;3sWnrPmnJc>;d zD%c>8GM5kR#c7aZQGQKneyNVzVE z(I`}a7{y)wg}rORV$n@8@4xY9LGQ}>v&2N!g9Q<006Y_F|y&{I{(`G3`fR>}E_ zc=r#)&-gl`$T8?S)itEK^E_e4?{ILGol*@X^$T?doHc(+UiTc^h!Pxihg~B5{^wMh zIm&Ap{wPg~w#tCy?g4=vvDUAwQl=5%b;4+NI`mT{>pu zLwv4J>|N*aT9!~S;QU}(bMK6KL8J1)i=h9SZrvKKY=H;bUd*A;kDtPeh15~6WX4`PmCjinLa*XJ4Q=b(J~JJKCv|U15<}m z|H^pq?z~6T9FU6I_^oI<7`^GuCj1!|S-hrrV!yzY-VrfbT zrgT&BD_SI;unxCWrt0WT?MmYZ+nPYc=+-F15fC}^8yY>Sn~p!kcZB8e3o`dE{`7C?aMob6eu|F9RO9mnnm?31&;Bo)0}2)>-Et!C zA>-z{(<%h^%C~b<`4j!AE{PDf!znN~o!bnfJot?kiFkH&J7}@jPDY-+Xrd7hkzyr$ zV&M6Sy`o*eitR?{7HXihu#Ti$>MCiT3yoqUVOqr=SZ$GKU5gJz7OGf3K?XApXfo^b zjcaM(Q~hiy;>=O6dz{_Hwh2 ziD5R}^28{&uu?H&?2(Gs7#40vsl}I%!OrsT?9dEsNf`+*AYzM%!?{ekPaF>!^Nnuy zhf3K4yRGsF<*a8O$`V+S6W*7Lgqo!vkA8y?PSxDky=3@nCLiM8y8ntqNA`crqJz!SiKE{mf>SjQb^pPX zr}8J$S5QChdV2FG-PK#q{Vms50{_lbRUfPsP=yUH@%yi_j>-;WYTsh89;4&;x(m@8 z>uK~CA(GXjU54vu61hrl#G~y|xmkAB<>c4+4(twxZN)%N%8w?FV%n<}i$)VizF3Gz zr?J3JyiG9e1v7^^L)_#~m0112K`GveSEUYX@xb=Uy}Qn8J68=yu%{OO<3xom@?3OgYmqUm`cfGB>4rhU&zn;1F)!I{s%!qB$XI zJHvgNZ|aBr|8F^U^3rxpSj%|D1z+3zlI)Ud5{`1p%AWeX%C^yEdzSJ;Gs%hUT{2SX ztT5k>Q!VgXO2w>821BhMZfgYJJ{;C(UU7~RO$h4~tsD=wohi+p{cwtVX?x(_hp>(5 zqTwyVmBUwUr(S2X-jl@dR;FFEHGPw<@Zr>hOBqM@p8RFw1Zh`jEq1yt*H=Et&v0EzZ`IxXUusRJ{_YZobDPY}eLj-yS&S>ajgt-OF+B$+3;; zKH=pf*_x%<8~aa{dt~&eCqK$A8aTzhupOp;lCv=#6|Vbf*RnACyb9$rwvw6Ip{=L% zMwWOa3ZIx<;>{M_Tp@IG>>C7Z-xGh6m-@#31vs#{KM)*u=YtJc4E#Ow!ZP8*M{WHNwJrnA@9 zKj5MOH-|pTeBl|vqmH4qxw(~rjOqGKy!Kud|LMX?Lq>zU=niIsd;LwiT` z$_+Bo+<8G*A(k%>gcbf)hVKghy(CryrMhjtu<_;w;R@#E%1!H=gpz#E?iLO04{Fpp zk^fnCt`n~4*@qYx$Tx6Nlb<2U*s1=iQwZ@El3w@6vc5nDt7VGDgE6yDwgvvbu7+$2 ztl0sZhGV-}Fftj}_b`wx1M_uu^|t&gQB;bqS=B#&MZLeztF5nM2ew!dNYvI^`;{KW zBkn-F0}GKmA!*lhRXg@qJpa61u{XNYGO9+ie>}Xf#8#0WEl@QpyW(v}iMzZ9qC1=J zL1G#8XQ|Qe2W95mE$l`VcG-cXiU(tAPV_6^FI;WENd2p7h#_-L30ecIZ(Y}Dk%gBE z)O2qx4O3&U@khu4_74g(q0qm+3+FgWR*9;qwcq98pWqJU4=AuLtOYp)vN#j%Q8mc7 zSnRbuW{4KyDpB1~C4VD*I#7|44GX-B6${jE!C8cQ+Eyo^=`(;L+MDLeATNR(oPz+M zy(xq$Y?(tP?1^%$>pSh?rYVuW>Z!t=w0&vcK41AC<^SRkq%NeWUFyHVZkL*1w_msX zXb+EGMvkVmD2A6rBfn$+&gi3VYu5}YP0y#>S(oA;BBj}W19tdATGhgrt=mX*Z^)?G z^qEa;Ax@k+SB@c1HI(o|i9+wmc+%_;s!}#ji2WnuIrUscKxydA@*Q1|uS?}!y1LHw z6HjWEcfn`kPzt8*;D(Nw zy-Mhp!tQAHEz<7*#}Z~#rp)(%h>+%WQyh(mwb!KJYGWZmJQYrbK4?IJX96~ z+=nt^qQ?wtr{&MpK`PTQbh?Zh*u%kz)9GIg|ElZQ@S!aT*?St1zr|NQJ#P2Ayz+DL zM!R#r^dH(Cb8`z&Wgi_obnn)A<;dXZs)NTq{6~O5+~V4m=<&J{(>3=$M_smYgl(r|->8?8@w-VN}5Y*LUNFgXd(O`Lw2q zkoPg?&x0=Ix1}}mC(jkepF;AV@#j$k%|qaZ&fUtU?>Y>D1!^!4UBx;E^u#pSlTm?L zHbwLG%v_NWBn}ONmJZCF@9&6)mrz$G)cSU~R@1tl4#tvqUNR1+C2#CBP=6Wgeo@W0 z*}$-iFm#KpR!4>VUEvxSHW0SPBAQlnlP|U!7*_I%=)58(DWIDf(A{Z*A9Yc%X7=C9 z@`t@`jMIW8bT)N_#8pQMgsy&96O!M9)DOhU<*DCw)`G-d>rw8xv3T@Z*jw&0f3;#F z>UQ_1HGywkbI=Z0(&BIR=4xIH#zo-_4gIJbZX5J-1)^lGwH=d$WL(y^BfLR9z`Z8h zNtjI?7U};iQ@w}h<>r}))Tz(Q;qVDay6K144M0+>kyt0^3nV_t9EP8^#1{2qi#pu3 z^nqx7JdcSgA4`x!ZAHT#v1fXwv3U{gx|=+!ZBts)j%Aw0oJm*iD>ZgDO$J-j31}4< zAH*a;E)`?u&&H<3&(pe1aIP0JtDDa}c%H8?hZi98PuhRs7`01YkYTv-6!sqlfSgWV zM{WidR-L)>K~V~;bo$hd6I4vaV?ih7cjn5t zU~Q}gbqx@JVWD5sA;0z8HmO#N8dsLGcrUmxDo=+hwaKktju=oD6R~$f%u%PORzGgW z#SzsRL-Fdz#xJNz#DM0Q2#pCNN1fqX{rH(wl?dOdY=5e4Lcn&%fQ)zU)J^PD{nJ25 z$hK@Y#+DmE4If$032&r>#q>=0u1}=ysq7;)yY!@On-?t+8vRC|>3JK0 z6c_6}l+rorr2g%Z~Qno)r+fvr=J4 z-r?Nf>U;->-&Ite$HX+(9=ot5Sj8h)>(3%S<&a1|)*O4wPsIqnWw`DTE+$oN-uR?z zb)UnpY6lBrW;$vET>6Q={RzJPuD*Z7eGYEl0V{rEJ)x~ny-Gbu6}4!&u156f4sEOR z={|Np?$%uuBlj&wh(5icz}#DFIr>?;Yihe|R)6Psc<;eCl0Oh@mpJxcR%wrjDXBbG zVOw$3QFiFq&+%iV81L70U1D{>UE;kZjhOLcbYVn%;nnyUDPmb`3`s-W+_C?biuY3$ zF|RFeh|{yRxYkSXrlJsS^!nnHE1d~19=CRpi3v9KIUZRF zos`xDHlquFm|ae-A(_39qFU#~Qd8P@FgCq>i%RHrAiT12)Te&!hXFWk{x6;gLrpS+ zykl(sGxO`bLR=W~TlOJF8!51|NN1I79ZjlTEjOLY>LGLuM=9#LxbixC0(XF;fB5v; zRT_0PENNzaH^Ujr39gg@ug0k~YNw1$7sHvy;W2&OI`0Lren#uOO)(rF0_sQg$mJgX z{2xJZ9U0hx0hsS5Z*cR=i6D4gVXuQ+#y+BN^$aP@zMwxUcyYmbLuNRKc)0riz&2qx ztzvt?eP;<|#*aw<+jwnVNX2a2WG-2f5T~<{47}L!DcZn$O_>s<9Q@#PT{rIX=?q zWQ*)Lg;s4%37c}#R(HuT9H|GUGl9pYMw%*EdD%L^G_PiwrA!UyS;e=e16Qb3d}F$b zA3`sSSa8nKB3lJRk~E`+Zu6>GtJ!-yzOi1#&j+YU!C&!VRajnn6yjhfh{(Xlw_tNw zUMDHUqH~Ux*|`|fX<$u=LzEMT>mij3sf&Hvyjs_4rkgoV4QE)zx1@szb(}_u*}&v* zoK<{Nx`!X)couP}5O}zXA0|INcxL*+6{Q`_h2uhja-cF_AQC-^q1jPbdd)RN71sG zxd#K;W*x;;>s+}?o}Pa#cL!USvBWEa^FuK`5P2GWrcw%B_ZIAJRI~Q)*a%8s8S0>@ zOfy%Q792Mb5gu@lBkxtMQ;P~gUgJ12I;q|y{iy*GR=dB-JD;b^_V1vyahI?U4%Fub zmT^zXpb|M*MBZ~o?<)2LHV2zcc*T`vAEheg@*Kv@U_5w!p#7K&jJK2~ugGny=cUOJ zM&sn2V5iw?d4VCwq6zeeX_au2DjDDcx#4sC?gHu8b)MA*-co1hF<#jfLint*%FGV>{k zxQ}sny&iM)@iT-MaKzILjw%h-iYkWt1QYyHdINi=i}QHRV=!A@91`72_a+MG!BROt z(L|li;%3BXX}x=B5f`$~2OeW9(oAV5*mu32B2R0!;uGUvm{|rl2Novdk}cb~1zx3e z)-{Gar=^?9n(b6xTJ`Sxhp=MUOG*U`-X>bB|JvPyX0z8 zaS@{Z3>}(cr!Czvm};HPze*@GY8|!=_yA{i`?mq>mgs28zv`*NGotc&$Jux4+Ou9* z+sjianiI|wl<9VL;dL}QhSUUw3#m8`xM)a$lS69lf#*`fVHunq46(qe`VNW%p|>iD z+q;V$Ek~Kc@_ORv*%ZgXSKNje6`D*o%!_N7$D0}(@n9QMCZ^vI)px>l23{p{R)wex zY&^Ab<`+g(dtmM~5lUxmgML3Nufa{HW@(Q9Op|x!-C)4gc|+k^rIC&~_3j_rb&w)# z3x;nvjH0e|7VcO-*m;^Jkwd7#^Pi(BpOk4)&V&Q(2OU}G=$|;?!Dea*Tr|0aN_-Gf zj=hCZ$7S%ZmZz5Q()Y0=)^SzMI6YP7(pxnrTsi_XI9@dG^8{nIVIJifC&h2dRiAr| zt=$ob;aJg_>JyysfLD>C7XlBnOFPygr*EpHcYy0AXB%-gnqk?IesK`4`ClS!jyae?n>jnb4 zBf*IZ*BVsgUS%Al!dR2BR9LoXF6Eqz8yDsr7|RKli(qxyGIr_X(>Y4SnFKHd=nO^1 zFd|4Yn&aZMz!vUvx^I9@w@{Z#8#j>?(m^QWDi@#NXeaU@@n}&Z1|%}FG`J(wdnEZ> z!fWnBkA%@#$Mdjz$cJ+Et*H6)Lcw3gb&sh~PwQLpAJW1J;00iZQX^_BTN%1HLo&nx6c2fRTig`-DP%Z57yqLHhL1rKH?U)JKoIJOKL(N~y#T%UUl zDZx&m7E7S^KqYRX!P-z+40awRYe43cHh5US!wAmb)*)k)eld)bO0cwnRglXutlg8? zs607ZO-D9kE$td^IO}(sbBA*Wf)?Sd2K`FkbJo?%O|;=DXA4cuiSQfSpacF6b&nC7 zNBNKG-#ZEG6wXLqU_2wMi90pJ;mOUt4zRTQ2GhhvbP$fS+njhT3pORXlkkpg&wC_2 z^ODfGDK}7)5L_7kO`F(zR@^rsa@OMt@z=Y(hhL(jG6H=I4%s$aIN7$X-yuudPbT8Z3t=vnc{GvHn;ahTCWfr z3;3#rhy~i?tWDss|0e5G8w=(h;dob;w>7@k*kBPQToAszZD4n_b&UF&bpuM{-#~T| z3;oL@9^Y;!`WAU4e1N0h>eNI!vM1H49_<6_+<-tfcyTbGwBnNV5{%rdDR8Cp#=P4l zvXvaHdzzwhlx(eu_$$a?*b2N65#GpgMn0E;ppI}VDNU%W40W1X4tyL7x3ZvtKpOVE z(oFvkQZE9Z*7M5MN?Ib7*{Y0)b}ajb_w)^Kjd6KuG0B@9LARmQ;OobjBNM{2G~s;M zQ;rSowuep+@8r~zWR6j#87U&$J3F1Ly7-zZ!&Tm!EHLP25u8&Bm0 z9%N(Vc%B2WufMKfS`()yGvt))BsP-7INq1e>Q7Q4Ih`>cXWh6pdGl{*ZsSUMMfZ@I z1SHOb{3>B09_~475WZcOD?+2+oYovieU^!v{8#1FK%44>8lKD4J%2LLSAHiVhSe(X?>yKu!2Y;#NPpg?B_Ptu27H znSDnt;(TB*a&j!z!#{(wo~=#!bg(jzI*Zo8pLmU%<&g`qO4O|F#E%0^A}0XF?YbwS zpDRhk=pu{tHeNF_G-D~wCfs1xji z9Wt%ln+ay|r<<&%oCceYc0@AlX{Xq?y?U}R!yd!aduV%TMU2XPDZhf7BFsA5*J}N$ zwsf0Vs_cXZMN4*jM_apU@uxU;zu1%LPWHy39Bl^5tBSj}xQ4q&b38sUN!x+vg(@G7 zt-P+wUgA|Bsg%v;wt+V^#FStz9K(VB*2p!Ezay$tT~uRSv_sU%ki*o^Bb4e4&)U)| zNpuaKe+O)GC?cQtfU}hi-k)&1Yyxe@;>UL~>u}y+Uj7m^`3t->MwSxZS4!I{Zd`hf(mC*D(y|orMEx3HJ*JrlK9C%#Ir7v~fRCG#snc|4g0BCq9qK=v=S8MZT9dFE* zV4$4|W^5!e0LEUTuQUH9o+n0AFt>$Oqe3kas8rwLZ&N%tSb49(DeY>3?Pth7L*cxsCVQ2j5oHZGT|z6>h~cPS~m?^x`0qvbI6R?j*HA9qmi~ zPkavRhj&dTh>z{4q%gKhhrpY}2jXt0cLH34!}R6VH!1BMXQEiTtY7r;+eN;^egFN23elSc1?~pUa%42>p3VV+t_*^U zEstoVH@uj*w7>qt71z>b-8WV(L4Kf22oX3=W1{8tHv@kLgs^qIL$lvNrkh9Q z6lqdRohX|RvzPBbQz;jQ-_3eAcob|lTy14jo)<#S9* zG-WKh!nQ->z=jAXtz?7|WZRJf0w6vUC=yaGCTGV~ICT7~5!SH#z#Ppp#UfNQiTrwD_W*eKB9ypQ?46(%Q2ejQ(+iz`Olj%beH-X= zl>va4*wZjflVF9w$#(#6ULyjE*K2cnz$bs8mRWiavRB9I`JL%Akkf`z%F*Wcb94)Z z>iI$8hYdg5TcwYH&6#+EUTsk4SVDzAe=-na109+uush#>8M4{sY5d|9N*d_};?i@S zBsV7!9h%!iHDZk%Rr+5_wx}j`IGA*XuD)aBqLSvKmtU9qQZlzA^g=9uUy-4j)bG&T z75bno^iiylhswzxRQ#ePsg4=)4kqMK=|hqa)RM*_wK{eenV4E4>AP7@)Q-Bjnza9Z z_SIj3{xK+2>rSMwve)4GEJ=(qq3vST$v zMZpJXYqhR&LRTidMpbO!Q-boSjxW%BCaUA4y9%iu5I5G;3D(phh+o0KqE-Vc?m<1E ztp<3|UJ^6bs1LwX$0d7dp^;t{>otK3%;c0dR9m)RGys7h5DHSpAoMb!;8rMD;F{VA zd53MF&RR-Afg}L9%9&H3bd`IPSdJ#V)r?%$nbXM34E)KH*4sijf@6BtgO;}HVQ2fP z{G0{%@~Q=cvhjx zs3(nV#Jl&u1V<3n)L0EnYv))BT?CM|s*W@rN7G$kou@ap@wni8+@wz>#6uZ_*N%_Q=@Oqv({n=^jVV z_}t_e6<*!*G(oT+T`0!mq!xs*%!pfCAJ>Q=4r)Nqo)}Pr!bM`q-uapidJ?I7g9qc( z-RH}m_ox&RPw%J$5+gTI8|k5OMqQ;ZF8riOuX=8O9R4J+19{wfn;>0A_W+n5zpAtg z$4%>o?E4_oT%oO_9u5sqbrXYe`RurMPcYNd{&kYJ0~xsf&}@%ZD-QtaZw4pA@p!zk zqsRP-v8Bd6Xph_FMXbI^T(9Y9uj&{Ixd9TF5f_6vuC&b&6%WQINC!@rMy#>p1gYK@ z7QxYC{73mW41sVNe6YNVq;!^WHq`RYl9kH)_Amc6+FIg;^()j8_A;tOD2DI7%(>Et z0IsTUmQ9RYS$zUP``aLO2Jw2fXtU6dwOOn9u>c_X_$+EM7jOZrg8=#dO~3N7U@xEnDYYO5fVI1N<>HAuYgXz_ zEo+C!7OYyI%Nq-L?So(NEvh7RV4>dmE*4eI??TYkqBhT7vj#cVe}Jl7Z02{%Z&84# zS`G@@EcGKOP%s|8dU3975KNkDbuq~`F!9$b7M+jzh886QX9N`6h=L}T$FGGpR|}PY z#>CjVREccsGL+bqZnK1uwFxt17`0$D>Q*{OxXF=agrq7Z;!{Tf;1CiR)7ZKQ0)Gqe zkn1K(b{Gm=L;_%Q_Ee=F+)ZX;k#(8B7+nz9!U0jP1hNQ_zWbqFR)20VfkB@!(h z*>@p_m1J=sS0setyZBpvNa{i*^Mv!UbG-;^6XfE%7D|GYMfUlQ{>XzM@L`9LVne!5 zK@Ere1hp;J`J>-@(T;U82;EvN;ZURoF5oR|D*g{ zhM>%-At~7sLOK6Y{tZJQoY$|@)x4nCVdT*m{wU;i01qa_F&mQ^A~aqypq;z3gu8x_ zpgAtHTeoTVNWQvT!n*T~V|NRVDZN|S{WxmS;nR24dC6Wzn+hNv=L-_F)WSuK%o~c! zeK(h2Y9?3WhD|$BMZHz~0t`xyG6xX^<_#b8ro9sI9v#$W0BzCU+I_y9-6&&|qV~<24ru+#eKb9S zV%;%AmPQ71CS!Z_%P8)|q#n2?H+ovLCvg0hwjviZ{oNR|%03dJ%W3+X}MvQC7hC^cC(m<=iorB9maJZmc>tRpCL!=~4a!8sLb zI39iDjL@3rS*g=&*AfzY%uHr)-?lay+opihE&qGt9VPw)5jAy^l=WCm%rNUFEr4+a~ZWEsLz?ZJ&MFervrz0jQ=Sd$ZC&tuFX4k9@ zJXj8?)F<8Z2D#Mf59vpGlyQT#w|%Z!xj!AoHkYlbjLp;S%sc2mxx>-*mXffyqg>TD zPi|07wclByYIk{!<^|O&tG^!xx9-}mUMv**7_^g|B5Z~Db%m30+K` zlDfdTafa}u6%JI!@Wr!%LTo7#9qrs?&M4 zV}=_8Uq_;ETmQ&|ZuWKj;bxz{)r83Bi)kp9$cvvAokU-ii)uiA*DY8wD3%A9zj#_7 zU_QG%`pNXeroy9x_-mtrWth$PfF0Bvzi5srK4IUD_W^|hkk*8D5Az+f5!_y#9ugi39t@V| zt>FC1arVQa!J`FyC}mK4vT4$aCCNI?QqL+fob_cf!)Hau=0_iybyMd1K-1aHoDCce zsnC%lgnzFmfdZKwmY+GF>6=$aE-Swi{=>v$(-L#I!( zFGg~yR)}vNNcm~%P*Bp}>gb5ej8a42Q zC;E$b$1drP*~c@T)n~zXZ^Xfud%~Bp=;5=%293Mx-fgUF`gVt3J$P0*Sftj7;|FcP z3E~FHhnQOg);e&S;<0goF;-8^hF*HS>3$KbM~}V0Ozyxv_kur4fv0tY9RRnC8stMc zq1a^U+(kxX8rh^+EvyqjAhs;ay+6Ezf)o9lw2%TP2=;`S<`N4PUDdn-fuX0Dt{A!) zLGb+Y$`E!Kb_hnD)*sX#vTiCKg6?yp6PZ3ODdo)DFgb3GR9>ezp2UNW`33W<=MR9tUDEwwV4{FIv+$fkuT2>gEnx_5dZVYzIEQC9 za&~dPL%xoIttI@*l|;UcTzq263F9**Te$hth%tB>{AS=$%48bl7H?l^ho!Ff+HO-% zvqsA)%W;LG^g&Ew@$gn(QwuXU%W}lpHdD(21x$JYrl)Aw{3G9*&rH5O0&EPjNnKsK zSGUO=P!Q2#Jf4pYjGn&}tFFZuuIQm9A=H2}6blEYB?wL=hvEbfBvaj25RS+Y3Dt$8WU>%9r>)pG&l zsTtxUlvLLb;8iBmr1#FPl8+(u;uS>BbqYX|k8g9*PW!fCV$;Bn`bUx#L``T#&#Q$@ zDZgY1R={t%DRuGMfiQj`3~>n7KlKFSK*b%w#*hcO7uv8CeNDYFP$k`kAQ9vctOEBJ z*tyN>6XmG2Q>M*kpq@nhZ5Ehs%L(g)$Td@Yn%g|zJEvwn!QWs#5(%gaD7nGez;GsI z*$@_#WFhNP)Ef34WFg-(RMP@NG(Lg-qtz#xg0kLzvq$pr7NKUl%YeZ^7@w?U))bXK z^s3E-0U7MGK*VI<1(y4s2e@QSv!?j;=hQvjg^xxpfX{}IoCB2rywcN;@D>Kvm}EJ# zrbq}QUHB**!U)uAE8}(u2GZg!K;`@+@P5EKoU|(SugfU8!4%*>;DA3g@Cr!0q|r z0yyU5K{3W7kZE28!B3&d_&{VQpo;m&gGf**M##D?C~M?Z8{+*){}2K>U8ECWDTBwX zGFvcfd_u4OtYTXu`l|D6x&dlm`G;h0}o<0p3kS{-zh+1RoU%Dn( zRr*WQAr3}+>zH6u(zc+`ax;5z;Y=uSEx{G-(yh~}F+7r*1?ZaFjI7PZMo3wD3sb}IxC>S$XmCCWsQ`!na)54L0S-&K8`TOW2)PL3Y=3PAT}eY z5wH`u0W=M2UQwtSxRv(_)CC&gOTmBw1uH0^=r+_JriUNSZ~o#5z!%%rW`DIPA;3~K zb>uCi@;d`%MXee38~P=jsr$Uvq!Y ziPl4>#qAC5?=kwUzJ`WMQ?;Fg|8H=SiMPO9C9EX3Um%Jzu0Ehx=G z@G~DS3r1}w-@ zI`W7uyAxeE7^!7?>}l*cVsCXV zD9KYSFs4JE z;*AD}Aio=b>kSpvYY?iId1cQoa^A|;GM^@eQ^x3$Ta(EvI}iDZ4;egFizM@v^s_(* zxJU?h$j|t?i!9E`v%Ac{X|U)PE4dNT6j$UFR(y-Ig%L}F+YqjE)-lZgqx@TjpvveZ z!EFg)oX^T|XDU1iAI4Jsy3&gaW2%xn_1auYuwe<}KBC28bkBSNazB^0}hT;T(h zq!HDM&h>C9OJGnfa_ud0@$9ZZNVU0GVBLVyIam}1g+RwaD74Y#5LT?a!d>huAMz%geye9`tr7+#gt0n$z81L&YL2yttJO2>p1tB!UQI713l zsy9^7D1_{SkOj_in6Ui0tU0RH9lwq|&bXQ*QmwH_Nqr%mfq2pS`i!viUnoX4nm0!_ zW3Cp2uk74!A?zkyhWNg1K>=Qci~84TfM*iX(6--N7zq>;k_byuJ4^-J zpS|vo_Ma2J1r&h!VIfuv+HTVHp}x;fdgFDXeZM{6e4KN&8pOVK0Q%;O3f}HLUmM`5kzV`q z>YzxX=FQQ~MOOy}xfb--2&kT7h@br02k2)@_&UFR;UOq?QskZHVftnqUjc*yBjDNZ z2i1=Q_)lbjPo;x7tbGZ#FDS23!feZJC;waG``EcW4ahc8&&*Q@AbmlYwdr3Mt%e7} zMJF>L(I8p+J_a!Wt<})-dbE1EWjn;QP0G{$Dip2NkbkbFrFgVj2r7?{wZDv6-SA*Z zk@7yX<%4Ikhk;ao19>e+031+{?=#yp2mz%~jL5L9r z;B}D_Q=i9F0@=sN!2SnmNg5S!4I3>AZM$tMki{H}^9c0M*;?`;nnb*y@(>o7hvIN? zDt+Gg*A~HW1#2q(2|k#$Y1sci%D-U<@HmPZkuEjB44YtA%piMb@op%}Ucx^zN0J3m ze?0z)Mc+?mXn{3iQs*7}FkKE8F{V=ir3+>5`Wg`cOoBRO=*SZ07`f6PDEz|s$9W0? z*Vihq^amY8Fm=dK3IW67md55%epzb-2g=9>iF6oj(ian1-2j@c`DUSwuMKBDa(;&V z{a?%yBmgk#!pH@Ceqz2o8#*Pn&^f4t&P4=gQ2@U(K4779D&g4?{PlS3w_X)N;6|Ku zd$MNu>MIoP$ydkM)8A?H?|cr(+z$5qSY#ZB!^(noEXp3Z}&;?@ey< zQ^M7=1NP7UvSIWQss=TL{Z{RU{-)%J27T$kW3vTqI{VR24I5L2R3=Y5>I^9PCg9&! zg-rf3P;$)rNtVXIp0Sb1HLPR`+dqpnun$Y6wdWiSJlfxNR~;J~`O=QKgO`3zumyUI zN6mVtquj2$Fzm_B^_-`>rmO60CszwA;~& z&XsZBZ{n?DMNMW6R+bFA4g_{Z8a5bexJOJ|`JtIJS9+}znN7ljSIGlEv0hBbJc(cp z+4fZ8O2sFCWBrJHq;n8GB~tI(GBLR<3mJ+37#B6PZPIk0q~A2FNo_DToJUT7bMeyY zUvL*|17c(pCrbNXiRSLZmfQS-qiUXxn)#p%v*-`536iM@B7aYxyJZc3H|DO^aBI3s zlkx*$2XxEI``u~K_fL9J+%5Nv5yPjF2_ zB&wY!TS(=FLd>(5=F`5W^mm#HGBQji1P->0Y?OBCY);C3Yd-dLe9^|~pJqEZF`D!T zlfq$JP+f4}D>}cS-DjOxtC6iU^)o}D)k^E9N{#cKc37vt8`N<1^muXBhuiS?Rz}j8 z>3$;kYpw)YDU0t$rvjJzy|20%E{(qF*rPIb<%VGzq35?Lvn!fEl$>B832TX}2)&6EPG=&JuzU=fa!~+kEJJFO_SS@8X z^Fcw>qAw_2>yjyvpfF(lU?Qt1#jLw2eRRmwdm^paw?(>SSi}k;oKQp+la_5XvDV)?GQJCbQIHDo+W{uCM9j4vecF$GR1THA%;fR&{EQvPBMfchyOIUkXNh zH&ei|(z5ddO*(J1KuL47CR{To>D=h0>G1l1N=N+FCTS7M*bwc~v`8?0deSSvPgCca z^pEt%KEmaiI%sKheR#biP=6(lIZ>x~dj)I&s!_R@Nw&1<#mbajCkmJA1T9&&{M7nX z3!zX^6AWKJYjgQ}Q1zZyZ@yV2)PDBzbzoF3eI>6B(Bq~1`Zk=kd2cMu2O0YCy{Fcn zwR!Bm#_mB-hVs6$eXf##?a=D)cLBX`!{&4EM^}GD2hFPNEBi)_ZwEv-*Ka;|`DPG% zFW-3D`F(;&S5uI`#w9~xg*JW^@cL`>835Y@=gl>1>_^WTfy(0HQn*&la(Z;3=(*LCODDbmCKgTX_U z=cj+OnmBFQge-)AAFRK?@!AreCLdre6$VMe_<(>ClGwfbychTOS^;afs zYGr)Nm%l35B&>c3R2#bm5Rn4F1;~g_reN`_mwz!JPMY|R$`2OczplE`5$IP4Z$^=( ze|J1?lxXGcm{pwH*4;ibO8tlCB1|!61T*qa#j07ft!YD)BDybG{%@&lj57s6E5;z( z^65nk%QpN-hqvYbm=W<<{t}S)g&TzvYTST!xlSmlT1fhdP<`LtPZr_Op+S6J+cy?8 z;J(pEv2sbGXsCkd6+@?ugJqF&bl)2A`EF%T=j647cU$At9TjyZL{@EZxGYpZxc82* z$mCKHt)$*pDjLvX^Yq87lu=1(;fjaCIb}iH-M%+@_o>Rdf$%g?w=}yiXtZJfiQh`) z(2vninGOC!Nbf6GqOrulnp&3RmzCN6jA)A4sO$=BrBu0zHwk^l@(hS z`Boh~A`PY!ee3cG$0?8D8eIRZm1upps)67D)c?k!^Ks%QwCGGg)xbd=nemxB^}zxE z$4$zyn_>(iYB%dSd@q+fBnAtewkhMusoac|EUQ|5&Q4WZ`Re+Z{lIFsd>2s1N^i>O zIW)32U=Y36rtCYpr00>1%^(8g~1g5ge;bHaK4Jd<4hGDDBDJoHT|2qOCSrf#OX&r@h58CQL&>n2Hqc& zF>MBxS+P13kW?h9AzjrFIM-^Fnmr*lhhl(!H77}Rv3jv;mUM$Q|E4MO?hc3yBF40l zj`?nsI2%HHJL`Tk^ zB1_fy+xo)6{;J`g*;U}R_N+-Ipm5Y=w1>}ADi8rKc3CKL+!nn!r0za|3MeM7gIYkg z(GF6V&Bf83{fu4M2;d(b68K$ZKpvI8?3i&-0@W&_dnDUmTh(~ee0Gqk80N*S9OVLh zx}U8nJYzVl5XrCemd4%>!Qa7-P1_`j9G|w4r5jA!yb%>gMSm(iBpvsu^qS0;*`0F; z;B0;kupe%t~Ksy3I#~d?2DdN$1W*qM&7sUE zAAS#T!|%a1_3AwPLhNEr0RnM}-^LqJ{TxbU%yeXN;LmjF!W8|{UNKBWZCONDrQCLz z56r_NTJF~2T~Tu0AFGbduDGhNGa-kbiKKd8%aB8p#U6z>cwS4E+b#X1|FEmpU8#tV z6>{kM$ohe*0gs>6HoXng*9ntDS40~20=Kd_Odtm;cgO{q>y==eS>_c**iZz#kO3(c z^d0%r53@&i*mm=`LvxBry*XwQvYYwUJRtu*<@($YYl4FaLVe(pW8~lIuFt(88p#o| zax3mxg>>=NN-oz{j$v!&MpX#6EYFS$0LL&=1W?oWdabR*^qk^q@sFgN98&(q;@c3K z*+)XEds&BbI8b;XFI$W~4=0%dOfS!4t$SN`7h=12x0khRF{TqU_;Onj?Y3*N64tWO zh1oZ^ON1P3_s+H5Ub@M{`GnJM=PJu@NlVDLwi|}-6jV@#4}k*fw2eFro4dr-KOPcMk39H? zva1y2bE;_%&G^1Zz36$uN*^Y7?%lJGfOIEjxK1Z8$Rn7BRo-`ji#geFMfQ z9sUCRF!cDu)&quxEWZDCgYmTl5OB{>eFiN2fY|^LHMa=-p4A_WMbPfk_e)bY>hyiu z8f>T@@PF7;AFAM}_do>|Jyu$q>RutLl2k1TtDUw18Y)`SlsKo2m4?bV%Vb-$D22|?`s zDYKK%-6UdqLW+|5xH9rOet6n>62a1YOkd$R806Ym^IDT2XL0cVWA8iQn##8I-{@FT zQ4tXl5E(^5KtV-nR1{PcM4CvmAP7=aN~nn)rHX(^4WQBmQR$E<(m|pE0#YI+1VRZ3 zEeR?AeG)))ocr$l@65dS?%bdIx6az%TI*YD@5FGj&pA6w#)vOOF1kG>Ep8X-+voL8 z2i`AItnK*T+v7{EI{AL!hW!3q|Ke8g{e}$wP7EbM-)~BT^~j-hMYb~Lci&=1g*(?D zjU%nZ=xvAxH+p_>>Le{~Ix#Qc4rx#x>4Rl(%*g%h2P}T(Bct}A=pbdv68aI+WzOoK z6Z#7^ypK8d6FqLyy)uFqS`tIhA5pK6p~b(@NiWXopBnZaDoNID2&{2xnkQzyH|oD+ zKCa|_6Wz}Qe-79i`jp>BoQd0C&I8?nU%96}9#SJw!(gShUAYZf^P5?$C9SOed49~^ zs|Otw3HIbHuvmMAmEv~PIP$&L7)PzmFL@OMo2^bz$rzcXvtj zg^X>Z@AAH*riB`1%`6ftHFM|5+*F{PaSRo1pF9fhA)bym^^BnCq4g)D)H&>%{SX ztmyx`*8CLfJ~TS>MiWLJXDBVVQbl^K=q8ltI>d?f6Ye8qO!Zbcw~~c54}8RmF*iUW zIvA_?1f@<_%-HKQ=5!cVAx7BS6Rp#~!6%xhDRh4E^kW}adZBk4qRG^&SJu=G^>cxOiPCSYMj@<=LrtrXlx@mHd;r6BK>m5U?Fd5d@Wy&e9H)OCVAdI}Gc3706 z#_I=`&OcW4b$4_^%ap#HRZ68%MbfB>_nTmWeyuw92=oC9m%2-=*rt?1Y%9pUqMtxx zsGv}U(NQl%EEYRTbBB+7+gF2;>eaA>U-_xQ{vil|N-*npH}bHidin2TOE3lKm_GIj zwFu?6g!4bs!7b8bY%{BQO!ha>WNSJsNXR!+YgcTJS+vW!g!_V&EZxI+ZoN z{guHxW8RBbIDW|O-&uTIr$4kV8V22y?kt$9OONS z2_i13y=VKe1dFALWIIQ9&I|D4>w+bb;z>_Qk4Z_QaiUK|6GRh5<3*n$g%NjBu`!Sn z(}a#={MO?(7+%s<>JW7wxN~_C8RmhNohqL695N~eTYwOw7nND?A=`CCDXEToDbG;| zJ;q%s*tbcaVGq`JkeUn~wXBLV96wBq6-zxrp6u5fTLeDV)uGD-o~%leM_sU}A954o zjSf;0q05jbYmE`cF3@@COPQO!!&ucxW0BORuBI}~DvTKG8IGDb$&L|6#=SA^)nWCF zm7o~m?5QR;Sps>Lg<;j8(8`rR8O>*cZ4vv}32bGzvcj7iR+b~5ur=Op7#SYH$S(ZR z?d-A(k=-0ep|JX`mWq4S)6SD`i72w| z$@frorPj{--xkmv_{ZBjkw=$}MN{iW7}qLy1p2a%c^Oe-e+oalK|rDuIUGHC7pH~O z#Oc7kBynB@SBCi5%fk~)L{gwcNetv%Id4M;Ssjv z&-6oN*j@Gq9n3+@;OSvFL#k_0sl`*U-_~w&llM{H4`BX})1?V2lB_+<6-z}Ckap}I~LTQfD@2}7!Qb@HkU4R_^ihu7^+@L#X1p{QtkP!OnBT^ibU0u)b7 z&OZ+vs#~Xh0m^XzzJM)S6wla7&;%MobT=F#m`MTgw(YDY=!yi+q97ZGjLQ(IJnbA9 z08~(q*E;-b$YCbM)zeUAGuhm?RUgu2-J6Z#lpboG(6$;M!c7JZ0`7nH04K`b=)PId z{N+ylW-st&`yG}AnJz0Q!51j*Xn6OfefYtA($cGE+@9n!kn_B2l}uxFn<7?AancWYbboJ9Y!acq-MS6)bvgEx8KzVjo{H{uD6=bw}bg6 zkTXWrSKM0f-2lhc3)rwDlWV)1&D*C~XEi^YJeRHhWVj~YW5o+6>-q|J6+-8RZJTsuj%p9T zzVjBpG5)ev9!_lKa0P2HJU+f9gGeNjnM@X&z0RplH3{vh?L8SyA66W1clw+|Xn`!er04AT+B35Y7Q)d`Al01+aI5OUTQ3ZC{E;rLW=e0Dib8@z@< z0dJciAC3wUq)!|DWiDxi?|xhp`QgI5z86-`#_|Q}f@YtVeUjrGf5ZGkIQ;@Qdgf^M z3Ao)6u$<+jb2*mWWbA*GzkCvW=o^Sm$=Ga-!oa5{qY$`%ICfUtU%{5F{H5;LwFkKZK4Ym`vnNH4)h}k%293VnI!8=KP zs_yo$#_=-FJ89ok9r9bl5-fM*3VrP5bmUDIE{?5`Lubd^GsI~=rC|34%c&U0_iUjt z_Ch9RKO0g_nCuUGSlJB6QVc)4&WKse5G_THRq@uqHX$0qf@mgcGVEIes5P+7h||zM z5M-1W#fgG-WCtkZ7!>;z7MeTkrC~ZV!iBUA9qrOQ1i(%?28_=SV}x2$JMg%bnEo{M zW_Au$*a%IS^0Hvfr|~lTF}|?X$nC6yj1;Oonb0NcH6&YRrqfxT^B}j$Wvzpql>1Z& z5ODmVF2AxE3a;6ZB7=)*>v#{(+fQ>m!4e8(FT`Vjy7y&qyy%si6kHrbVNBcsbUSM& z?#Qn!Q96fd-+j4SuPk-?wFxbM{kH@I7XeNO)KmnJ%nv@tWie4)kEZD6iHx0 zC-Lz*D;T%bjba~aQmlJO_dzfFs3infP5(fX~tSkjzSYnD2{%(EBHcIIq4n_j$eeH@KGDh z>+t1`UlWU9wu;4b}jq~ z44A{&)?^Hoky*&HC}a0lJ60m~SgYO32^Pfa8dLXt>QbW@tX&elWkv-oNtAo`sWpyM zEyI;y6_mXDoN*CB`De;`+9iBuh*4?N6w82o9j3~U+xV$e!I!rzk*bWIfa4t>SXAN$ zlRW$wldj`Ajn~`5atkPXP+o-$VG6t&w;7qsIO1;7LDo~nA2sR-v8bM+yq8#%vCPc< zv`7^y7*l~AF-L8vk)WLN>Iu2WI2!AVrGJiKDAG(>MGS9>fLHGA%;L4-T}Ms*gvikA z)p(w^s0`L-o?j*ENU4Z2^iX&<=J0t@yK@EMcv@bRp@Tvr`}n1tsEO?g&(IF1z1v^W z3vAlKonjFR27||?(xMCv6^7P0oEC0(M)n-{@C^Cb@gxg8vFmV}(Dte>-zM9uUbtA{ znXSWVu#I$TzRkF2J*hJh_xd<{VqTckiTwXjaf6Nj{rPW1Zu=iD`}f!UJ0ju=_u-eW zlRc4N!rl^7&7W*~oh#ZCuI47UNlU{0s^_XF**`?HeuVy*fs0~%Oc3*P8LfW3=Dt5{ z+Qc8@-#NS59&(a}nsRnRet1GiK?3vihc>MbN6a8O+t~Ua@=ZUmbs=Op{o?S`K4dCr zK!J328l+$ic1@mq^;VKDx_!1qdTs;lvnv0);x)f+L-D>W+}9CIoH*o}oS>?&YyZ_3 zxO`Xf+^*}%Lt%y>D`?K(#}sDdG;+uARj#Cxy3}WrAE%Fr;vY)-N^gq>qe!Me^$;;Y zy?Y}eMt>F0A?1`!o2I=$KJIJ*S(voR+}Bm-P{W#`Sl?!7jNqtU1$llaffFYxHzugv z^?_IG5sJM;RW6*gqpe)F3Qky(YcL1_F~8t|)pK&iTYE+UL#Ruk%<&#>Ek+z+#OTOG zzX-sEvtPqm@eB(*>;d}}LxC*OrBjBY2_j_Jw@IT~wBf4dxiONs3C5k)Lijp|ZsdK; zVXrKzDBJ?CPusJ}!L$6WJ=QI6Nbq#7s`@~V^~LsyWzSk;6RwyT;5b^mi^+1F>k6;d zB_sAack-T{b4;s(?5%pc99r9P9mQ`i3*mZoaAN41aS6N*&BWuJ#fCiAE2=+L1SL9E zpF*u1mm(XJ70K@81*rT9M~izx5;EJ5I9ivZ2B%HW7OK=Nsk_cF3yz|>(2y=nh0^f5f=w1g`OK9sGkQvk zs7ISD@S~Y){W5S5ajU?eswNBZhi3T_3%jzYr^zno$|NjEQ$}TrGNS4Ak<|BLiC(!A zg)a@d%~)G#w;9r1CS|$z90kA>>Uo7@F(#}h&1>QQZEq@t{o7h>NyGHlSoyJBm~>DN zwh|{LI@NPfq(=1KJ-5w?tTAJY-61duR1GQ|qrS* zfpVPUqFsbDX^P0~0MUoYgN$S;cFiOk+}L8I)~N&A#tvoFcUhNWeZi(=sL@=njxgD~ z7HcqLX>7O<+n6P*HhO`^dA&zNes$)OL837x&1lzQ%=o;h9$1{#BIo{nLH*Zcgx^1% zzuReF_==q2d_T+>bn4R3f5zlcp;uFgYMkz(UBqh|!pRx)kGecJNF8#tO4BdIlIX`5 zg%Yow6h4u9^V!KEwb7F(_lQjIZ%9qh&-?NP(9@^%b%gDHfoL} zHDh-KS7g9e^O27p^B#JMcHM&1Rtty8B2kP5IQveC{0Y@?N|={4t`bKY6&)dY3_8-{ z^7Jt3MEGImiWHof5+ufzpCEivnfK|!Cm~Dn1Kt^sI64a=W<487Ga#3P6V3tY?IIio z4jzwdjK_V9$6@1fwPNE^x|r2}x}dS8|3R7u9$SBGeGs|r#|BVwO2+RkJEi0IM*L>- z|4)P1tAos=4Vk|wZuNl*I}3olPX?qY*P7!?x=R<<#fTH(w*rAU$P7%z1>3?B5Sk5; zC8cK;q^rz=s2On8xbh6h;oyXGK}0T>frIzJU3zkzdnTQF6r2t+s~a+pO$+DDW0Td+ znRY?OiJlhB>OV+1>dZ56}>ao=65|iZuBca`Kf=HSJDo;Xx&BPD|lIsclX~mT857d1-=M~rO%angVuxw0e{y(Qa*I4>b`*L}YuI?NEd8UdJVcdMlNB`UEAcqaJ zBY7Y3dkVeAn$7qgHK+6aeEh^*GG{awbwSSe2_RA2p?@@gCz9sW@_PL?FwXQ)FqN-8 zAaxEQN4;hX2JutlKQ(QtXo$I=2Lv)9HSYXO9U>;O!cHCMi|fv(B|;4-my)11jvK;c>&)XP#+x-xD-OrX|N%ACMO>8JJ^q{m4bp5SjhnH89N zN)v+P?f74&@K+n|j5-a}v=k^N^x1(HPN1>R+F;o)N>aMpjyBzcsDLRp4OLUc=0sU6K;ffl~SQFfCOe9sD~0XlMO)6 zHx2X*P5Ik7PP?9+D>I0<;jd5SAMo+DY4kNXSoX@c>~sP*2t3NyVSzJq5BY z2%Ba-nhx=t2XAEPJR%5Dj5TW_VwY%EHxs@F$L$HJM-<~ zo~Qt z?wTwm`N38qx3bbmVEr_x40RXAkL=Y!g0EYQaEdT#vfbc{C~5Ne@iw?onK#^kb11@r z4pW-cO1d^V<%V$#>{9C>MLo_7nw&D}fTO%p7#F%~%8c$BBP01nyQIvJVN~0!tsN6d z@Sa6r&Fky;2%}z$qQpga-0hSe6x{GuVBa1fhilVxbg}ao? z;ItLc+GI{yAP%d?dL>1wlEr(w_l3;A(pNowhS=p;2@<0Y1)PCBJjQX^F*%QiqiTO;-A z+tjd=jjEblyThq*yJSg)^wXV2&mO0K(lw}G^R+qtl9oD@YU2yFarZE!fud34`gGeN zv+VK=rDv(2MG{g92+7r#QcV+yYtpKXQ`??YYo=~^Vv9G-zM6JA-{4)3e&fl;*jLr! zscrGL(ni@2(@xhIG#+VmicXFFqCY;Em|Fh~@Jq(P;zuQ%S-0v??`a{=>e!8YSiubS zE^rfRR~pN?@T%HZGoKRj070jZu_Ol8LSzhkvY>_Y7$}fyiS~|}Q8`YWNJ|rJA&H@g zVi!>tfc@XYy{wF|5}#Zoh82~rU_adR4Af2^&~9^b?uva3SRgsMVU|Xp0y*?CAUW*= ztf!h{@(6vFX`_XxiSUd;XI81ICKy6#!7!w7i9wBk9!PExX``*|RZ7SgjWjc8HCDnx z5*b0gO6EWJ3DwK}g1Z@gdb@9KnR3_lQ)@}I)P0EU$Y%@}iZ9i}D79>#UYjjy6eyE^q9X=Dc+oZR$qlN{<-PY2M9*~oWRJXd zW07kjZ{NiH)69MLu(*%B`h)W?Jy@ha`BS6!K1b2!2(=R-yjzL$ed+sRRN{Pj2aiD* zAUI=9zlK(gbL8!7osTJoNRnIT+fH1IR2^w``!YH5+VRVEv7To6w_xz}r>T)z&JLOYKNG?|$->Q@HX3SvYOzS}F=Vm+` zF_~ntpw-Mhn0oGtku;>^!H1x%8fHK{_G4E4vp{=xP+xPuVTCJAt49!pOu=Gm!@~VC zFK-^uaXM%2^>iSU5@FeZ4(>oylM*-VF|5cMPP}$_tGoVCq z5vCOcdYNgWGsG=&)l=re#YebsQ*b61u8W=ykS7$F9cj05`pyp6l5||sG7HRH+hqy? zA&6`>ZW>A-aQ)=sNi0xx0Rav=X1PfjfN&@UVw>tK=rC?qD{v4s%MHqC)odDiJPmWI z0x(3fziB9L!1cY0C!rvu2hdn;DV=Qg^m?rE@OI!%!p|DlB&j zsvt%PYTRikq!b8iwwph8@G*yCZZrb8;LPmoIA9^TH6QZ!Fo$3>XwrrUlZP9Uhl`TA z)hI9L&@P0$TvtL~!Uv%t2XSVizbR%uWU0FjjgasfvO9f&YFd%tKsu3oDH)pP7ewxh zQh#k>_4=)s;?l3b_>b~0OoE7#xA(4zh~k(?AXP+=4kSNg1DRUSuMhmO_?_D0Cp%3D9O z*1n1DBM358^yIBm@wF+v5qj_BlOnBOjU5Z>{ibb>PP^q4b~$5pok2^l znze4Fp#}+jZEVdvy zS1u^gj|43G>1kd=X=Mom;6y)T!`;o~%5mI7jE4C`9N&EMDX(W#rL3-y%t^Qb_hObp zJ zKJI7$B+lPebAXr3PJRCFuKtQFjToWjUQVab#JcSeUT%e z+Q$kHEkE552SnmKlipgBEwv`ij*ua}5E{U3apvVEr=!g2j1^Ar=RUiu`1EGtUYK{2t+Shrd(G@Q&avXSJC5TVN11y# zg4hZiX0{*)anoCpPdm(RPtMtl9OpQFmf&MGODQLE?ui0kHnI6km%Wr7Yqx;x;m|F;ESlr%sdBMi)UngZ+JOAB8 z{u3df4(>+p-7!(Za0BN&*9v6?<&OLoa^1TXvcq{o36O!*HrTA_TIBQ+>|2gjT1<>f zgivMl3R|VgbtK=1%=(8Rv*eTWhM4n{O*_+YS&IfAHIkZ_Kq=n}$5N2= zHPYU;X-{#j<>2zOGhV9;R`|m6(rY~v>2|!uDh&7m55^tpaTNO@qqPfeO3Pq)Qoxeo zWxP+9!zXgevxmbJaNFD#?tPBPDJ&kd64^gBxJ3l@*|vYe_g+O(&gp_0i(k;E7(p3q z30kI~tP4J@3kk;~?<$nBx3M1PdFs8^!?+qDwxTtPBt-l&C%r`~MSTma-X_&OPFMFLqzxiYvvLIPiO>rXRSea&q={+pH)~Rc>i$~2#nsYk_*hhE7 z0GStHX8Zo>!XJvT`rk18X2c(A7)Q2q+rLu9DDv~;g{rpi|JMrsk9uON{2zZ$eV1+4 z4u9O<_S85}>*eKe{jRTi-On<)g*Rm#x>5NQLYKu|!C4TE!1rG?p5f)Y(w5t5l4g5mR>qo zGS7Q3o}{=_7X5MDsLDcmty#V_MqC6sZNZMTQkp7jD4uA^`=T`#QplL1O~~RRNwtye zq%I-GE$IH<B(XQs{~tA>Cs+N=G-epP8*^c19i3$+ zdLK4n0M;i9Z>lj#^=!2p^u@%1<>TXb=pO3c#qpfJcydtOjA2!S<_QbOWJhFs?w&rb z<6>f~#UzB|SOpwM5c%^o!{8WTYVJRu6cnT8O8>OZdvI(hWr{NKA(otQM2^wWHA zsq5(7`*03f05)18CcD^ueXBAVQ`fLrS_cI z>{GN+zY0KeGfFDxK)etY0rVu0n0^|hFvTo*PAj@$r;xq)AE%xJcrajA>GbCJ9p zH?c6)0k}xo&-i`kl6o-?@f*x>tM3$@spR2`*cQ2-1?uKIfFLYU$J&AU6q5zB3q*mQ z)epQluI4+&Y9Gcs-Q&2%Tjwlue{)}eD-6cp%bVOu^+-;Pg458SR^k1sqA95`Nm5ztz(-`)DKXOt91?VCoY81u;T{W&!)k@l{0e2F>K46Qc2I2fT057yk$NQ|3d{ zYQDy7>%F0|<>%=(;Vu61r>{-*c5utJ>6RZCyyQC6<|@N)D+3)ZWiDDCI5RDQ!fgN? zQYx8ROcHn654ED85j9SCR+$Fn1a`fc5^7-v)Gi1(0Xx7vj5&XczKW>niWDCVdJZdL zEuNaD00DzRz-t;D3>sub;?tOpImALH?_UE+Uiu|IGDZIG(r>h(2}TLs@danQ`d z06%xoO54Si(ZMTfpm7{HbMPl;*d@ zO4}WBVmrW45*CWrb9&M{fC`eDMFrbjU$uK(#M*V-N+G#?j?O9nEb>W`d;i>4M$b3wBE{4C zV~5t>&c$>38@>w$cCvZNy@;%P{9hn4(9fDT!#r)YZaS7exus49YLf0<`CfcUe0&nC z`NkFFiO>O}9o$<^9L;g=IWZh^>DilM%Wj^lL2 zdv8B_Pgvp|J3W%=d?CKmQ3p^Gsm{}`kG@1gUOzV-Y=;Qv47sHYDqPb2oWY*>a=x?| zOLoUTYKlxAy_elmN^33sY}duGhukGZpm{jaeUC7Be41e(>z;h>bh54#4?dlrBHdCu zN?%^v5}T?(J{Sj?qVFGryrV54j-<^{vsHOhcWb@Q*E04hMnJ{Us-Q}=b)m7oX(%OL zI&fXW(1LHNN)|ox#Fu-GO{Ed7)06zPSnsp)H-i7$?p&)u>-Wx|l?{ftSQzXZmbqaZ z!=cj932htFH^N|?)74+DGi}f>({Akf#^t++uiZxMcYgXY$G%!2t^8AGmW!L6u!xCI zh2fVhemA=XB2ga#-u2BjSUH~`7-?2g$ypKf?Dcu6k>)_DR03btbmPg?62c^BY&y8;YMxr7IF}Rxk;Jo~ytfPSjSMAVST^%;GUa9Ey zI~TSgt>@I{3Q0x7sw}5&j+Qe4`QU`3G=1NRmq{w_30srad1`ru?cSX3z{bmV6~a-5 zzA<7IhV5B`?aiN+xkXI0XBj6pqm^?=f$!wXK+hWvaa{1_mhbNXM#-sl=j|Xc)HQ0Z zn}k7s-92D`Qp%kNUXiGqzVG&zX+JwJUyv2!W~ZT$!xvK+GP9pbJDQAga3e()h z4mKl-N3!q6!V)@za&}|Mof{txaH1WX`4xXy@0H_liw|Q&zo7gr% zIE!?W{_tZih#Zr4v5h>LA6gAKwuNb>m;&#Qxgh5_GKO<}>ImYtnH+67S^e;2PUws2 zTrE(pBQ_xCEDG>2USk8qy+A1Jos8o+L0cD4|G%uh^MYt~7F)O-p#JwJ z!1j7-j+^n_X_B*R&;1@A?hvfR)`ChPP8P)34An4iipOacRL>dYbtXh!duThifl{wC z7fj5$4a!EJflOT4_Zp&bJ_A*u^c)&p{%mbB=k_mJyXH)1!#SwTITFC2fVlb7FW-Qsj%#{<{fASJ6;vl)GV<2ICr*eLc^!qU8b4_WalX5&z5QAU*H3FVDZL$bTKlll~v^zkCkv@YvejX8 zE!%n4WFMJ)QK;FnY*;Z{qj=xiiIU-#b=f}uW%fjS^A*WouDo7-MkwG(zsT}#@au5rNxCW5-aeB@rk5%N~C?h zI2tZph|xl}mblBXZI=;9p9+^U}T)&po>Mq}0QiOF(Xf-3vqZ*IRQ_ED2J zOwy+saNBXI6xRygy=uc$VRN>2Sl-c-i3W0L`rX=U%|;~n`2l&FA0^y>C|sEB%P^o> zR9l2#hL>SFsS3jEhusw$*g1^nqwEZZw*_-PZ57R;DyTZBhJ6}QGKu&|4((>wk*)oS zF9RRr<_VOv2pF(D!(bEDuq)9{(QpQAFRQ4V{ejHxp(6LBA~Ubnkx@!4iw*3EZktTT zjcPv01r_pv?3>-}#&xk{)v`)zBq}n*f>JH3%<}Dqg|iDu%+&5oMHXxW8x_cwtzhTA z^lqPI!6@u7wk``vk?ql=2%!gVbSL5MPHm$_J$!&!Bt=6WI*JeoRoS`CcvR~X?Ll^N zDf@vzaZkTS6-IcgF-q$b;Xzow_+~ zBRSw;?Od>|E*-b+CF`8^CyQ?ks_~B+Kcoj*x$NS^0yj)^#CXG*@7$PNLv}3oG}ihV z;X)d`g=m)J5&o>>f)2Ubko2Ol&~9AD)7NNXO(sxGifg!-gay|L_=6|cXPjmOW4pps z%cMY9&Yf_en7pm|H1cA1k==4xF4Z7-%pJrfxj|Vn%pyXd<7^Pf^^F5Cw3tBPX^8B5 zhS(p0bLsZ*e5KAg$Ehc)25>%Wp3VvsDc7&{aO*J1sxcgV(eByeFU3{4#R3c{TzCG$ z@5_AF2vL3_PLFJML^+1x?}A@s7fkzemD6Tl2l{J-n+__I!#PU@y%1^-hni~)qh1Jm zws1)7o=v|*-`4}peGD}EXSz^fhN)0t0|wJ$z2pMI17o||X(ZAzWX&zwg$j#c3jBu1ons>f0vM*qk%eWcKHCtXufZLPNp!@)hXNC&-}-a*c-*%pR% zXQC>xHL@D8ON^rJ)v`yrHz?GR*?pcEF;p=2j=Q!d!P)tb7fA4;{H40*0>zXs_LOTy>LUJi?j!e$ zOghAas;_VcBdSL>;V8;ouUxN8uZETm2?=}>-nz$nv)UrIKH^PF z>|IJ9P9y9w%)icQY=NSL#b=~atZN$KktKRUNlf($~v%( zC%t=P<8=A+hUh(u{uI?qF8XHs4s4YT?H1ig-9zV&_aRzn^#Vo0ZlfNr(9X7dl({pj zwq9w(vhtVeyHz3aqqN>Zgv1kcHQHiJhmJs^3jAS7o1MC4&jKl~f>#i$ z2@)KkUf1b%piWn{^HXFHxJsw4BAPl?s%<)?> zU+g|qyQ&p+o!xBOvZusre_d7h1Y2_UP4fQwR>vwM{J`pnE0zZqC8(?kkk}vPm(YaVO791mCiqXU3Y31esX8dxs{!tP4Bu@|TcY@sj05aelAgW9WZitpDgQ(PbZ`!2iHKImWc(G-;YWO_*jz^AGmYQImQcHsqD} z;!rncja6{gq4KqYCYE-8Tg6js*Pd#ptEV-Zx(-~l357le*^&MTKeNRF0YoQBqn;wK z9&EL9aD<}98{&5vJl_Kp#(I{d&x$>r1)bcicabx8jN7QZq;N$^pH*u0WZ*qtpWeH4}#Bz`^Zq-eVv-Gua!R| z)@x7g12c~*nPSTeTU(xn4}R2g?cZEDHjRawzmN<44!f|`Sn%j~PFk|R5u3hjvy^&O z^$9>TtIl!e+U5Y<%pCvk(t=WcnfJ6Kl`TbqQ(`e!ura|e;JVQ`B1i>tw5tps+oRava9aUUj(er zYZV5~4a3h>zLUSk0rG3`yQtYN*ZJ3S)&VHLMfh9z+}QtC|3gUr+bnY(Kt@hi^~~V4 ztoh|D)+zse6+vao!TVY2t@&6r6t$>Fm~zIMLjbSw z?9o+}A%#s=!8Hi}{>$ZM_~f?f$w|vo%n;S$ly*unMc3LB6&;Fthzdr9Q4eC5moRR; zR9$sptZiehs0QI)tkA9RmMfqfxjktVmwW+^S1Ufg&+dcM%^lnoi^}F5b5|_ZswylV z6_*qZ6V;=EU+AsehMSuEEfh+_U9<3TSZSq;I6|?EmVn4GVuEsY_n}K2?(eHu+C9iRQocnn>Tjzgu8TTn z=bN>y{O_ySlqU*CS=mKq{e6`?S%T$O>!Qxu{e6`Sb`P_R%dG^X{V5TO88(2$-~Ohm z&*H;v+R0{;poJX5XXQzPN1k?9UnvhBc_Quso<$jbrTYl zQHmdtZ~>gcY}ygH4~k~o@j6{s?O5$tSM-D$A!O+J zoFd$5W)|M%MyTaZOB=W8C!L5n;POADR6Hhp;arpn(!{=b8*S)*4!NaP))Q~kqt}V` zR`FONVpTPOnxGpi5(+aa-HpkSsb22{Clcfj0(X^-r2C8TV(z&`nj&G{6mxeJSd~{D z&Ta1g;o*bR$PUq9(nC_%2gj@m=2}mPzBeg`4K6vYM)fJWJ+io*a}n>wfqCC%Fe!+9tFcYj-D)c>9Q9&EG9`ME$4^yLJiR^S1M|h8u(vTL+DI)9y`#PPs0U5`NraKX_DX__x^f$K6 zO-_phN&;h*^R|W`pkRf)s>m<8!;7uTuDq)882*xK8Zz)=i;#JJs5Gwep>T^HZ*;!s zun06K4G077foZIVphP?d@T2rm@dXLy6+zg)jAsl zTTykeq9)K{B9gyCVMAv1?tGa`FFJQ0Z#ijG6F7L=iBTaI(O2u8DOeew8Q60?e{*i} z)e3S(cb{rakhJ1T##hzYDwUwg+B_iOqj+1!>=#>-egk_ZxEk;Hg zaF>g|=BbHjeIf4I>1O_g#-oC~PLLg8EQrOth9V!+bJ~In(NYw~?dSE+O8}((7RB$n z-e42fqM_eU$y+x`mN-^+^MiKxA)`^y%AVKvQ8)kQoGoj3JU~qtpmx2H9=9JCuJ~Z! zxpQ!{ifg0!GS7Qg58w~FG5CrZ2W4R&YIMdZA^aMDpsRO>nr1{4|jx`m}7?ADz5CRL9BLNB@$%;TT*y8P@?DFNLaYb z6=Q)vRP0RhQ#7mXKc_9=RPd<2ELx`5`Coyg3i1;C{#cRfmsXI+5w>M$+ueo4+zA6r zb|(FqccbGFFn!xcT(TH9nM%cdHe!B4Ljjxy`J}ac-=sK1r?WCozsrDHE~G%b1>TLe zuE&#_oIUW{`KKMr}n}VvRE{rJ`+e#RgJ+YO@xmGoA3(uqNXI@;Zx{-$YLX^#; z^JK98kqWtjm>)Quc>&@%0+5JB1nhwFibZVYt=Z{*P$X|4}oHwk~t$ik0U3 z-4=B6-!l6DR}PV+JS;v;`F0qMp%W(gi!&MN@UMK18=dAy2vxT2>(w}HB~!Z~f2+8h z!U}YcTg#P$y$j_O2KgMCCEA|r!a7Ce9L6fuiFMRmewjfG|I_3F>5X~N4cjQ(;$JYu)yAECTk;q=2chu_8WQ?Rk7m2ku#p%7}7tUoEftc!4|OLwx0 zkspYjOFchgx#gbwE&HtAE-gB{pyT;G$Bi$+ai0~(kp5c8@XKT*dIoNU!C+fK6p5T^)R(uhEw$jUQX}*72!0`M(Xis}pb`w$*b>6w#T3vXT zo*ogl`_?6^3(Gs#mv9s=^zwz3;ir`uVy5y^z&Ho1t&TJ{{$1eWCQgiIV&F012qig} z;l_L;f;mtpiIok(DdKtr^BB*s=#0ZG_5+3A#jwFx*ZNS*tO5}Pr#NNS6)%)qZn?g4 z*L|Cf_4^X9ADbWXCjfjATjY*gMpo_$w%JsFF!A28KLNOXj3;8PoV4ZX%2)So#Oeh&^)lmY;_;a@qsz3WZu+6bV+Lkjf_t|SmmAY z)__=2oPl(lY|Wh-YGqE$#< z-P)BAVsh%1cdY8)+pUj0uKv>I;-2O2660HT?TWfnxhz<4ll(!eyR|1GKW^nPF%8oOZjyql`tZNbSA6%|6u}~p~kT}}r92-^VRPXMfggs8k?^pQ> zzQn7T)J=<{_W37GG8!IAW#j)kb&p(YrJeZ8fZ9J@xmmkHPPuY$SH;r6@#_lD)jK(Z zm9e8go44TD9*^cL>I+syU9B0&#Rs-=6Ja72aoLWwY53vf750r< z%*IjKN(PTyW-2C?l}b+|W~N{gS&{Th#LP5I2CINRKy*yT#Ix?ugmTe)n%7| zalF+7)@`6A56vFj;wsGwuu~~M(lk8kY>?v@wnin)u-f~`N3x3Mt{W)4PG#if;|BR#nl1o1vipwFo(tUdE_1=X*0@Ux zuPV@OOJTK(delF(jKJ&|J^}3KWYImWx8=xYDz6axZ1=wiipsNgcK?9_c8;Ox&%R3* z-N_O!N0w59*0EQ0|BE1|l}g&f`hV=b2~-o=wg&ueJK&6pii&`W3Noq)2ncB>5RiE$ zKm=qA0V4u|7}A0Qf`E$5LzH~XUFe{*lYtDiHxgZBv))ZU7 znZxU6SyD^^U5-X6#UALH^S43Aa>4zK9R48=p@d=$l+XEFqcgblentUbokJ+4I04K# ze_IL!2;=YuSOR+;TE^r0O3J?JoQeErUx0Tyljpug_DU7vh1q}qdJcY%vTB;vZQ5R= zB66>eu{+?Df2R_bk*s}hXsz)R!gNvp2veu|vSQohz7VT173t_kjfSXW(~k`6*6QZ} zbW7^z$-j{3Aa@t#&iq-K=;-cmvB+B2dN)hHcOvbKi3qseelob%QAkR+4yKDRM{ARF8<&==5LS(zKV$(xH=+Q=CxRUJfy&n?AQZs*^6mI^i ze~$83ty|yNbDBacLUeZJo6Z2}b)V2cix$eRP;`F9B}?}h(A9S?*F-v=Kjocj#8Y+o z7T{oaH8zZ|M^1ddgc+-o3eJM5ACe`H^u$I5aw|=w2S5MC!lzkCc4WP9`HTuyj27w= zH>J=;@6SeMt#V8luls^$S0uGiQ6`Li-&&ICWi%}ZUl%N0>`poM?YRKd=J(G9zCC}q zV3x28EzvoYYVYo#JdO z(~`n|%ek|hm!S?i<=Hl-rJnt&b4NH&xx{`(K3|y=Tnx(LM{{N75{f8bV04aUgC>O9 z=#*w#_m&7RLOOFSb94e1Ilw68J9E}bKqdSlZth${iSWvUnqyg_FXRr+9ZG^pl0P+^X4AXxBhbMY88Pt5tv%mXZ@sjtU%>UH>6&4y1 z!oM2XlBku{|2fY@Hc+d$&mhZW?!HCg{}{CL(!})h|1Ozd!I_wTC&;x>8gZy^jGVo? z$iW3;3&}_w=IFdP%h~k5B&vOZ`D?{;Mjuz_uY@VN=nZ7A>aO9|>I*qY8gaC5jF~;i zIpTzQ_h&M+_H-WE%F&tNX2Vgvb&Z~m4AlzOk^d^Zg4CmU{*?$TbN_5=_M2h7LeIcZ zoBvh94a;hT6tads^8$rWUO|QY@8nM$(IWJZz@|A6mcRTfp}gYnocm6stpu;QA_Jfz z{t1p~G5RKOZB8L7KFZBmbLG_oxo!!04J*H*vXbwmxa?ag{Z@R7zLyeTVIk!##dIpj zt0koy8s}G7*cO*wv^pxkJE_3XGQaq}g?BN|iY5(ij=>WBz#!ro_E2bzWAQyR6%F*_fp&Wt;ByXN=aaOf|av% zi1n0p(vY>YZHUvzWHub9WN)pj((W2gH>RIQBq-*j~)_Y2i*&MO_Ry1?& zU7xyXrTLXHwu)gvb}frfsdPY+Db*nHX)KfVXk&g!qaWSJ_SX#SX8UXNCEJ9n3Y+p9 zzi!%iF6WOnTIr+<-&=kuW|| z_|oW}eMP(VjD1Q*^_eKWMx|hQm|7_CFkLHZNXTJF^E+Uo8dI?W^ zTG90o_khreoXlOydqDa6)7MvDZI>AB=$Wt5DVS%LOP16P?~OL+5NDuw3UWP5>TZ%~ zU89KO$fk|EMz z|4h|IIIXo&Vp?TUc!Z6XQl=EGhR|oOD9s89O-0=4BD2T z{S~z#vLv%~c4K$QmE_63dp2Q~{QPCKQ5ZN(KY0q$MR|@^z&uCG3Y^1wL-<$txnE^B z%Dy%}FmZkXdeO@p6Q6Pqx#666u>QFC)C_AYC0c%r0z*u!oAV2c)_!3Y#iM6~tn@kmku8MCr?us;9Vy=h z**3Z-;Tj?LYxsk!hbC{OnpSeR+kl$pWUpd!zYYL}Enj!H2^aJ*;@5ut!iT!><0lxS zjBU$nlhW-JE8zk^9vqQ0_WdFF*8ccSnnYgLIlIWQRGMiP_tnVwPOK?O{i>!K}qgmQ6^)1FP(ptOPx& zh67V=*19JOCkr32gu93A!IbtIuGF!w&+1*g`oWI9Ss{BHD!P#{fsiA#EFUPly=AE3 zql38PeE2~juVB}-!=_Tmew-6`1j0)p-}v9a|B}6J@=$Zj^np~%zh(ZZ1?7WvRv#@M z8g2O-=Fd+2eQO`>9=dIbKX~c8kAE-z*WNyi+oFDG*zPw|7qov`+4XL7#-*OvT35-!WPeM?5L;pOG8%Dw*N zoNR7@9!758v@i=sKKnXG4vss5%DJAZ@>sj|yGg(Hh7U^vk|9Qo@{kmy`FCCBJw@)5 zcd~|$eoYo~)bv~1ze(Zn)o~>t*YxGK<>e(}Bljs*SHk1pImhyMQ#=2ib1Z*1we#OP z$MUyRJO7NO)I)))Wt*NPm8D>RpxNjWXu;vI)^#?;+IGRbq^e2r4jlv0E8z>j4XTj}% zPV|!(gONamG1i~YF7uinc%x;$=PMCj6(}m*=Y?TTkFW4&>ac*Ad8IW z-RXs67Bm+Vb=pwXGj*n`|0hC$z?-;p{Za|%)5L^w@%Y|jhC|{(@R$QJ$vZlf({bKM zy)xeCDQ!v5BgPVifAh-ee(Dk*Mn^}-Mj)1QAMOdT560-CrY1q2p3|3?QPf*h>dYR~ z)s>Ly!rnw3RQAH>l9^RV@0C%Opk{pHzP`e9HBY%N%gEj5a=@{&@J0%ft;|bnS~amQnx1GFgtq+~d)O zd^T#YsZ4fL*bBDiggIBHL*EfN}`Rm=<|= zVsKy7UMR!SbUI_c1Mkm_7;aixeiF6MveIv{tsT22?nJ^bv|LJa$?QI7;_?5(|LtR<=vouqb5cEa_z%m}KB>_Y^Nc$~J!+h( zmVOC(5kBZOUiR*deeVB;pl78hO-ijV*CVw5Rzmt`b5$Lm0{#CX&}Q+5@09bK|JNVY z?+n!)>cy*)ko&;@#ScaNi~RrB?fq+a9qovT>d`uHeyH;Bc43;(j%VK>y|h)9U9Gv5 zw0>V{a4~Op&XxPo%I{>jZ?wkux}G|$bLboB+B4Qn%femBG`^hL&hKB$i;st#_(r}r7k?_=wWH(BR#&mAq|;EU z`1pep)bEzYok-w5`VAXmyN|d%^JJ;h9eiwA(DMQ1YTExf*x{pL&pcB)dIz6T7L+*P zS4}gvA^u;3qV~)ar8;-;QDv*o2BfNK*KCmOKL6LC(}6pjpO3HZg_7+KI38RRsrp$# zpAWyk*VMhEFFIu_T_~?x@u2S}CjdnD=2CNiwJ*{Zp z?wo7)pGduv{eJhgeH&XR@BGG^eX=4(9BxgDE*-z&cu-}$1Yv&H`q+ZYU2Df!iG3|^ zXuoP~(bt@{z55b6j}iV>Z-#~EI>zc(*3#_5%2C8JT>+BVH4h~e^vIGS?r#w_)CxMh~L}K`SB`jLkS8Nt%!*T z+ae#1+G*84-bktjVSL7u&MJ;v^_}9V(?s@p?x#PI#OsJ27#MeXBj(d~{?f$IxWOCC z=u2$){!BL1$XSo{0!55LsIeW!1K-R)(b&gwHC>d^yX0I3!VJO zg8!DI|JcMowf#>8e>sju(Ml(39}Vw!{o^vuFITr3LfJQ+i(v$D47q!9?Ls1>>sFY` z@;R~{(;9oq`No6Dbw#$gE{`Y8;E^A8I~;g&q3TSzxHtLc{0#?{_o2@RV{y)ToUQMD z;0NF`uBnGNa#f?vU14Vm#f`{zb5plQyV4p`R0CCFLe2YQbDR%wF39$EW!_Q=xIpgi zSlKESt|lVoQx#Op+q2=0}{mAug?5g9+)9cE6;{DNkdrxKG zD2oHdMz}dZAsrWN_d!){V>fDD&ogWkr|B_okH!A=|3Pe3s{i>zB5fz_Bvd_O)6Rpt zpN_bCbRSyIdOLo6248!vOlHrC!NwZ9?%+eQ9jmU@p zTpLk#-2~Ctja8TP3|+-NOP1gzU7F~-utz~kAor42w~{-puB6G!S#J5Zaqwkv_yudT zf*qZc<+sNEvE=X7&n&xNfP5#yihnQumtcTn=dqMuoBVIq{9BKO)pH%E<<{U2ctzp5 zC9e|XXLEOOg>1Zsw0_NhZV3f$@7k(nC+t?>ir>V)(fp^Z@7iwTe399fgC(zo8%5zetj%8Ukhi+>m}K1!{>PHPSHIJEbz0#&5mx+r@xKJ)jUG=} z{MzJyv*zD=EMIi@rNXhPuy}uv^)IFeS1h*xR#${<@4JN=uhqY72?YU)Tw#K$W3gfJ zH-4}An@YcD6PaPvqrZoKWAFFuWFh9ORdKkyeTl^u>ylT72fuAto8|8)vAU8ZU-W_? zA5!`cCI0~Iw(WS3^qt5T{R8p80z2Ww_Z)w1^1oU0Z#@=PkH43cd--R! z6o1$k*=!QX`lZ$fbxg~pQgQ|Er3xb^C+@S|QyY=_v@WIg8l+(>9p8A&n7-2)E5Ya7 z2Jag@^7@yG(sIxB%%-5q>`(gdrEIzeq6s4OD;0W*pLt(s{9VYqm68j+m0>iQ@S!Nt z`J+P5x3-uR>b#f=mhv4+?tSlERf}mEJnAdL)AYT_OqylQL@*uD=t8m~Gj)&B?%D`9 zt@|B8wx!IOU%uSd9`1c@6wjG!nx{Tv2oIMTsQ)!t52kZ1Tgq2t{>YLRQ!Qdhe-8y- zS-ved5@do@8VvY+TidSpS%x>(vWxzUjL^5S$ZR8|&Y+mE{Xx~_RW5!i3Z*k#F%|Np zWj8eB@CD)CPr9`0;`G_v*AYzG{1(~?Uy$x_#fbC!6k{kh;jr599%t#QCzV;hD0d$^ zv@PI~`fKY{<@-B0R~@6b3dWmfLG&l?GzpbH6P3QPmEIu5brv@0vKLcsLHX96u=w4z zefz&=9P$l3L{GmkTmqxmr%K>x5kXOV4?SWEW3j1ygIeSoU8%TM{UO)zy7T9aKj03z znY)t0+D2uE60-W%>-hU_5VUXO)=C3Rp(>k$QgeebI4 z>-gJM4jyw61F|DOURqaC_T4{8(zPpcH_-?4%D7$^4vDr+WaQ1K5RwERTC2&W%&MPH zuy$>`znT1Gvq0<785id-jIxgq%P)SHZl71Ubk1eZEokMNg^!-ZySFQo&Nj(vhuana z6P0@513^L5#bL$$pS{wDE<$bkR_@N1)qh&mEPp-{Koj*%dq1)-O&yUL{#bSk-FxRC z?omtk?VW1d@Xq}z*W5ey*F=!hTUg9VHU`(aM_GE0bE$Z%(sD;W(q8(j4bQjm93~Kd z_n7!*Y>&HW`b{L0Q~cnbeWp@bc`cP@VHuHKTa%(1fwAn^2nVI4cI`I`eRpJ~@-YU_ z@T>+It)f3`8}X{#zR(queRjkgX;fNqFQd7s@=U1`p%s;Usx)#0;?*Lj9OB#r&3K+-^jhLj|#>S80_1Prrsly z#I&`U_fg(LcI8fo*8JnhANxm{Sy{dT z9iHIXzG_}yB!>nER}+llJB}^AGtf)EgV1n^x;;wYLU*d>pTFXsuyaW#9;Vc@Y!}AR zu?uqjf?efFH5K~s>@2P56oaPy^exCn1E4)LL!d%96cuEp^}&-7}}BkFn`cJ ze)vTo---5~omczTz6qLDH+#4{`7M#N0K8z|@9@&Xpaq(d)OEUZf9o#}x~-LO&kSm3 zG!k~NzP@qk(Uhm4{Ax<30sm;d&xX))etLTd^2^+Zk8-$OHeC<6YL9iPk{?!=LbbWQ z`zmUgX;yFhr-nN)vfcv9q(&G{69+xP~E&Y<=}t54a!-E$uGw-#q9D zs8s+naA#+M&%g!r-OFjJsl*W9QrO)C{`MYLFo?$i$jQ8k-U;*N%8!&ul1&rZ=`df= z-Bd@h=kqr1Z|DjfYMv4GLDq4k1ZzOryw6kZzZfDV62J`YFT zFb;4~FNOS~O9(UUE8}V^S<2If)}5rrXTgq2?#Yp zRTig7;yFWM#W1(FWP7E6bdUZ74E=I0%n+!6Svq(G;`%kVAT5yjZlPWM-03Zf&h#wq zlL#*7+I>7bw)~!S84Z6b_yVJFx+LsF(Q9;aW5?hh= zufp^!XCRoJ;6s}B=`j>7HGCuNkV58|uJ&xp%5Cc_*l9vfsyX9>1&EOAPWx~qcRu3u zyhN)p%{!qZajtD4yV(D*s!Ma~sI0rXX!1hlm=uYA0qfooO7oy*zdKZ>KHHI5V4tt3CC?M)eKY+_BC~TVk=A|WazxuT$^e3 zxv+#M+M7i@T#dQ}FT1>t#U6LJ1Z!o`JnnA>x;N`r$PDKnv79f|=z(sJ|M)VwHl%5f z+Ln_ZD(ei*A603d`1e(}JDTzaGH;b)2F5fS8fAu+N_E#EOzfkN36D0GX9OE-O;1mk z&PLk}rpDinm8=05;I@FhH18O8Eu0p)xNf=KF~A{w(*eZ`cvRZugkPh-8j_RZH< z?ScmZ_kX&tXXM!hB8`xcnDaf$BV}zCWygLfvNz^7mm(O7^M{tj( zyvhe!o+f)|Js%uVZSK?dr0&HT<0=OWna35^dij*GgHhZ3yPzTp&WrcZC5 zrHH!EODRCxeqz5#ovY&P*pjSNatK4>(_0dU97jqbtuLkU6HfaSW=&y(KO>1EAaDpi zXwIHrEpYU>EOt<&YEpPF)J3pN{eSB_n}9rP@WpmQ}oY>GV=E!jZXz9r-$Q zp*&MroA1sFS=ou>SM$ zT2cN8>1(f&f4xbvw%l+ivwHEkvI?KMET~kjfIxTX3J8Xu9nXjhbT<8v(q+U~ z^lPJjKySQRN~X_KhV8gx7nQA2DBbVZv;2Qy_P3_kduH)D};+~@b0j9)j#7*uj1ufwX=z_0|U!d!IjQ0C54i$%=nGHXY+9W+w z`*B;v$L)<~vb*+0?r3@Rsd<}AUS)V?PUVZr>dKhPlFIbThDyCkvf5+(BmCpQM}dzy zk2sHaKid7+yjid5EmH1M*7dEjPsOfU4BHJ~zq#GprSIb;uD zitpLR4I$r6Gus=#S86ZyfbN0#111OJ#gz9}>{Av${mJf=`w5lIGY^y=$YdVxY<`z> zlBE3Lw4v-kS#D)ET9d+!Bv+4LzS8`oJU2La$$~eyy5hRDy861ub@^Xvzr@!i z)#2;nF6n)+`C#(F`NNfC3X5`!r{cwe4+ZZFKInJIZ(p!ju=v{Ewpe70*qbNgr{L9f zDPLm0lzyrBl0AG}J?6-Hg+--BnMH*~*+mtpNHeclWV~toSk<+K12ZwpZ#KqHjQ_wkW1nN+g})v?9TclGe)7ER^kap$ z;fP0wJj6=`4)GLGhR8&a5aEa%#0x|QGB3>h& zBdQQj5XFczL_Oj$A|H{2z$4-i<%lc<84-cVMI<6>5V43-Lz-U}%Ja^n}d}3T|Jkb?fXQvp8a=o!2UON8M`pb3P`qTBY^~`nB zdiZ+I`iu4I^_caN_4M_I^~m*t_2l*1_4xIQ_3ZV=^@r=P*PpLftv^{WUQb)EUw^!w zzn-*?UyoZaU(Z@6uScxst|zY7tjDgGu4k+h*P~9|%sFLHop-Y&&!FMX&4N1ywUak1 zCJh>`WOqN0G;GQH^nROn9xfc0gL{Fi#>L=DaOt=PT%?ss`PuT*M!(+PMlS|kymseaopmnp`nCP#?7;5m0w zO3<@bLv2HCgNeMXe5X98{L#G8e4RY@`|S6dy>l)aq$@H{tKE#V(Cair8u4!O40#4T zBaxfN7Bv@dq|4)P_T|}lH}s#8l#@Kw^UTArCNIdl_I~9>{kdma`StHFdpF*X#{H;e zrFBco(LpZIVALW3ceB$Vr1-ex3CXjPrzMpnWh50OWhGUzj%UeboytqOSstkYRaSu$A)S+ZFwPRE_(oK86@I-PWqcRJ&w>~zBEtkY>HB_|mt1t(c2mC@s) za-*k46-Q5w%8#BIRUSPtdX^+dIz4)NRB2RZRAE$hR7K~wj-1XZ9mRwBFIJ*gidIrr z>b}H$DfyEArQpkpFOe&cR`U84l#)9wFjmjG`6U;R>zvk6(vi_o(2>0C(N z<*QO>vB$A;*i%?V>`AOV_6$}Tdt#^y+6nD|cFniXcg}arcS*EMbmmURO}@K#b5GYk zP5HLTy3A*ZORY<1?ireNWprkAWORYs!JXg^a2LJZZ4x%coMcW(PF5|&FPSV|3h@jP z53vo=2nh}m4Iz;VFJH-)Gkqc3h3wdUFE{gf&C=MC?o#7Y*b;x~Pxlf(D4ISm>{MF1 zSZ|%JOz05l6zNc%Oj}Z{cgj|hR_uMQJ!ukBaoIFmMf#-5Gtnf`M9~!SPN#c>4>Bq* z0`560x9hj-cj|ZOceS;*b+&c1b;-8NcFK0hb``c4b{2LNc6n}_>G16I?C|WGX`ktw z>6qyfZx`KN+MXxHe}=+NjQv=cfB9fYpn z_TbLoj^M7f_O;HnjQ8}Ag5*JGK+2#KptEb8u~XF_WNjzI>g7e- zO*>4xgvsnXdpm^d|Fo-gs&uGyVcW5t*bZ!$fBRpu=Ce9k9jq?tcIi&(4(TpTJEl|E zU+RLi3zvrPfOIk18J&y{Mi;0Z)CuYUby3za6iyMV-BDpsYu+kH z-)eiBuAnXF76DDndI|5OHbM3h<%wsB3P`z$B%P$~o!8x8T(BQ8@-{n~^z?=Gs?DnT zs`aYns_h=L^p_s)F&C`8%?r+!cizu8)-=<+nfAKd%Hu4v(|78&d;I&?_vHhULOLHz z?R9^6ujpRty}D|%&lU|yQtr=RSS}e}(Y&f@p=qe;psA;6qiLe)ta(M#T+=|)Uh{^g zwWhJAljb!|OHCt9u%^DIt){6ar2fZxv-+F$cJoJ-A-K-nQPf9uo3nh*`+Z5WBPTr>FK!nNOXc zf=_LqGRU{JFMFA!o1e3yVD0{6h+&9Bh+c?Ih)IZZ$dwTD5Q7l=kQ*V^A;uw2A=g4I zLySVeA^O7e!88Q2@#BWs#?1}8jq4j$8@DzbH?D42Y#44hZ0K#+Y?y2~Z(P|h-!Ry) z-?*`1EnK14Y2(^KEAu2PduuD}0V^jpD@(i;IMB+LV+ARG_3TCC5m$go*lK3@v(|4hO50k zGY~gm-2XD&M#EaeQp1*DMzA7S5NrtMZAJ7FdNI9JyU1-oav-Z8K1ZEXo~xMin_HZd znnMJd28L^yXXTmLtXW9(>#5~>43Gy<{ip$;9~juwe+F-#m1ANJ?)Ua7)pCMaidunY= zf=z;Xf^~vrf~~2Usguodt-qPSmA{3*jla3SwZEmmEz68$#j;@8u*_N3EK8QH zw3)P(w1u=ytd9ZeI?4)l3+0Hqin3r@idiXZ%rla zL7WUu2A_+|#k=9$@DsQRyckXlpNLDuTjDJ7eYifnDozz&gR8*@-~#Z=xMloK+)jKf zE*5WuGs1V_y6_4(1$-&46c5Eg@$n7{)siW9{r;1ckrI8%Htt{1O@Q^8|#SiC>Z zAJ4+E@X|PGJO+osLvRp01INIF?q3lPG)M`&VH;>X6nIS|(1;MI9~@}9#?eAW>sm<{ zhz{w`%5V;@9ONXeByp@)tT_WK101!LP?WLoz7Io5qMT4VC=_ZF>Kf{0<8xgH(a$bA zIr^MbsUfjY3x*xzy6I-M+&d^0@)iGn)leG-n4!DPt;jbp1%$ai zjymuoa2yq>Yl+Dx%-3)tIGUkRW5vA#GoP0^*H*T0Uvpi!pSV}aMyx^P%8gKy-uW%S zHsGePr{V=12JC=K00P(yTo?9R?f?e>E8rq;X)Ky&pe73UCH=fiU1t zz!l&G;6g4+S;X+61lR)H08Rt$ zz(K$oPy+&i-GDKm1i%1EzzNU+P{1bO8XyC>0b+n9pb7*4I{_m=0e}J$02t5)kbnrF z56A+ZfH+_aXaK>0Xl_tV{+;$n*P=*|*+`evNcZ7Lx4KBrb-k?fZw~wHQjL_5dHTF{ zM{7*0VQXird}~RoPwQOkQ9W{1K~-{9ZB=|#MOAiHW7Wf|*XKKj+YiGYJ+0h#K1Z)R zT4KA5x390SYu-~_RdH2XRejats{E>?DtuMk`PSjVVe0VMaMNMvg4e>Gr>a5fLFa?i zf>eVvR?oFcAdiYYebRc$t-31Z-R+Ax()^-ft4wQdt6S?tt5|EI9=2*&P6DO(c2=XL^(XdAHje$2UB=F2 zli1|}N=JDy#^&Sp2VAF^MwpR=pjPuRumGA_H$~*=d?z9 z&pqd((p$PeO>Yaxs}HZwsee&lT_00lQlDPmP#%R8L4MgVSYY-9)5m)E`HvA?tU;oxA^k}HG(QZBluif zx^}vD+C+C&k5ji(&uI5(k4`sxI(vF^K#pcdrthM=dTN|UYj-*_gO|!n=cVy7L{g1C zYBb+w`qZZOb=w3qjCe?SN!_8I^GvVl4hpCZsnl#+IH%oHKYcl%F(kVF=ga+31?@kM;xh>@)Co<~Qat<~`;<1{-r5gN}KQ`Rm@+_0qkg>wBo@#YXf-(MIY<-NvJhyb-9fdY1>r z{yeXzMDw<;yDm)EO&6-`sq5c(yV0xhPNQ$5Yokx2N26b(OQUzAdn2sTtr6Pj+2|j3 zJIpKWPMB|)YnV@%N0?ujOPF_?y*MsMvb!yE=y~}TxdzIfQ_bqoV_bK-%_bYc9 z07D(1_E7M=-MquR{XAI0PQoF#EUxUGP5Tb;J_Vn*WpzoFF9ur&&)9Stf-@X4>@&b% zJFo-T9t@`2xs}1nnPtp!$+D`!_(7AwOHfa!IMf!Z0S$(VLP_{SwWf40{ZLs1{F(3(_xanJylv| zCeRAC-gJLSSEb55_&qgy2!|Y;YzPBxO4avl#^mkv?erb=?e)QJc5M!A_HAHUJ6Q)= zds%RyU7&eOru-V;1yH{&p4KLZxG6L%1|7YC=gsLtqU%4F?T-4KTru;6Sh^fP?LV9fIwH!E1JF4r}&nU{O0!2T^-b@QuH$ydvanL0-FBw-rr=(?UWZ=$Ua*Rtii3*13K(mLb->zV!Txss z4*vH3V3r-rfo0DEOWR31NZU(;F?JXSj6DVnv4c23>>*&`ebRwp&j5q$Kn@^#5SU^| zaiG{!!06#{CE5!mdQ3Sjy__Biqb0-W@l0AalODLb7g?m!E#;R`sZUcFR-h@2D9}rX zOKGJerF7^pXElA*VU@P3wc4;6y2@SMx*EAEhm=9$B&%D3-o(?+Yx~JAXmC}1^)M2Q)J7taBFHjwE;&($IyN%)c5Gm*XKZw=MarM$ZCWWy zOI+w!bqyn6ibg>=~J!__ORyO0GsU48^l zx(GdBVGpq{8`@hlLysEXxp0lyve3eO9F#H&TN{pD$jl<_6b3t=3rA`1n#-GEtLIm% zR^iQA%}&j^tL$cGvt+Z|>h`N9a@+MsWNES^vO9-H3Wp16g(HP@&tXrR=ZGhLW?KS% zhBh-YLl++wr-_e<(^IyI?hqYGp{0zZ&~1lpX~I-k^r7LQ9c%QVks-Rqum(+IM1xKk zCeR2Y1bXmrFfDi_n7%f=Mq3+Mql*rU(nLo@={JaXK&~JkkO#;QrZS>J#|~p@*byw~r!Gz_6ZMj&*?FoVVzVbDRtAR1@{M5hc>Xp|8O9epWWM(c%)c1*5T zdaib)n^v-$cKn1^_JnpIb+2$N(|u&|>0Lc7g-Z%r3YrSqrI$*zN;ONhp_e$+bgBcD zM%AJ=P(!I)>Q-tbRnAk!6DM}B+2qX=t@ED{vWurO^J=PUo+RFTPc5K&P^YPfsL50t z>L68}de{@}sqKmM6!9#p$*oCLrH+h@yd4=B=@}UvX*t4L_^8L^~jJPhnr$ ze0RXKcGRVvnb)#fGF!49o22wHS1!e7W+n#jpzfnSrPlUh#=p>9yOP#;roP~TEdQ}e0r)G6vgY7*6&IzUyU;;DgD z4s|y*j%rNpp(;_!sW2*&DoM?vI#EZdI#eXSaK5CtOO)C?+^N~da5iBx3s29-w@p+-^lsclqQY9ZB=IzttwrciCELsShaq1l=mOkJaj zQWL1A)LyCz6-)J}vZ&G(A7d&`WlnZhoXk|t{8UmgJy-E5y<&=1G0{*l!}ZJ3ej_=z zCm@O_^Wpj8j>VWo!^O@;`Nfh&pT)Vwqkd#!0Wq0aON=L05VMJm#D~P!+MT2AlFY~t zl@jn=zwS8Vc8$+|3x4ATA8^ECVj8iY_?VbaOd{fmaoVk;gQL{ZvC$^U`Ni4A$@qZa zpkR1#U~oWi@Y>xrBCOE95inmaNazd-Tzf#iqq$gcj!gnTF*L8;d6ve^@hHJGXW>_%(ehh^Vu8 zQe$R%G#vQ|nTLES94tLWmLW5dBxE=;2l)b7jf_E-Ak&cz$Vg-XG8tKmj7L@=vyqL+ zhsf8+=g2DL6J#+m4Ox$TjLb(SA@RsKWH~YmNk&E>bCHS28e}Z86q$h}BBPLn$P^?2 znSjJ1F-QvUC*CXGGhQY5zL7BQpS$QL+!?XOL_aKXSc!=8d&>+iUHpmnQaEyZ$}8h# z@<_aJUJmaCubLObD-m{Q8hDYs0$wt&mKV>f;AQg~c@KH7dCz%OyeGV3VP~hF_n4Q@ zOXA^qalCR~7LUw};N|iXc{RLPUMVkwN90AxB64JfNl6eTg&_@|hyu@$+8IQ}Oh}{c z%x-pMXbb7n*f#$>LO3CZ@PbfHh#`~^((fh^8VHfLtn$z0Q{~L^iSqgKnQ|8FBWyNq zNqtEVc|v932B}DVdEB|#C{zNOfjFzegw4UGVT-U&u+Ok57!x)T$FAknF4wLFeQ6EV z4%H5sAZ3xANKWKY(kNMn#2(8Y+w7mC(UGyhoKi!?Ik$F&B9S}Lsg?RLEEomh4aRC$mT_vNTDWj3Hsj5E6vUATh|G2TkIrjug~eTU5^wszn3UML@L$ zqk7i>Ep#-fUwT?}O@CbmIQaD-kn}YPu>NWd3<&evseKJa8>5xbFtjAv39W-hp*Nwg zp9t!&?~6QAG!!ccP8Z3TP-=0{xUyPRXK>DG{JS z#ydub^bBi(HO`u2O|uqRpAy#AR%F-300aIVVXDL?{}t7+K?a@C#u#GsG8mwr{g*O; zvwSPcTg)_p+Xtu%eiR%>M}qn=Qv_ZO5CLe0MKM12a%MJ`foos4@L%&?_@DS!DP62p z2f6O$fu7)uz(a6IU?Wf$1PS&C zOa#gTKY^6MS)eNj6Z}bVMQ}p!i6#KQ5JU@#1gU~L!6QK)V_s#oD+~i+^MDf2N6-|A z37P=SgJwW1%16p9Ws4pV3ojCVB!rkDfuZ1Rn*nf=R)GU|cXKm=-Jw%w_wZ1X^S{7WNkhI%GL}_NN8f zWI4_B*9SUhL2PX`^8CC;D;quq%FO8vmYWe=M-2lNhRQ7nKBGQ?r9UqNMt<~9^mluGy*mzNfVCWcz+6pWQg*_sv+iev{Y=gNg^UltCi z&e?M^Lo-5&p;4iQp($JhXZxJkfNXKbT%xrRtjHLjPxApYi<}0`3H{kLTah_4$znGS zNz1%&?p9VQeQpaUry+N-1ccSS0c_zE D{TA~e54cx9d)qc;CUJLXMG8k3MJ;te@ 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

                  na8K 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�|6dH0%`$2A4LDxWtnSOXc2A~>TOJXDxB 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 m?Z=50^BOQ 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 diff --git a/lib/tcpdf/fonts/freeserifbi.ctg.z b/lib/tcpdf/fonts/freeserifbi.ctg.z index 2b15ff4dc4772a3a584553397c3d3d5b1bd0128c..976cdc16cdeca10d507259a91279eebef65d7136 100644 GIT binary patch delta 4590 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 AAOHXW delta 4224 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,'FontBBox'=>'[-787 -300 1678 924]','ItalicAngle'=>-16.45875,'Ascent'=>900,'Descent'=>-300,'Leading'=>90,'CapHeight'=>669,'XHeight'=>475,'StemV'=>123,'StemH'=>53,'AvgWidth'=>412,'MaxWidth'=>1657,'MissingWidth'=>700); -$cw=array(0=>700,32=>250,33=>389,34=>555,35=>500,36=>500,37=>833,38=>778,39=>278,40=>333,41=>333,42=>500,43=>570,44=>250,45=>333,46=>250,47=>278,48=>500,49=>500,50=>500,51=>500,52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>333,59=>333,60=>570,61=>570,62=>570,63=>500,64=>832,65=>667,66=>667,67=>667,68=>744,69=>670,70=>656,71=>722,72=>778,73=>393,74=>500,75=>664,76=>609,77=>896,78=>722,79=>722,80=>614,81=>722,82=>672,83=>556,84=>611,85=>722,86=>667,87=>889,88=>667,89=>611,90=>611,91=>333,92=>278,93=>333,94=>570,95=>500,96=>333,97=>500,98=>500,99=>444,100=>500,101=>444,102=>333,103=>500,104=>556,105=>278,106=>278,107=>500,108=>278,109=>778,110=>556,111=>500,112=>500,113=>500,114=>389,115=>389,116=>278,117=>556,118=>444,119=>667,120=>500,121=>444,122=>389,123=>348,124=>220,125=>348,126=>570,160=>250,161=>389,162=>500,163=>500,164=>500,165=>500,166=>220,167=>500,168=>333,169=>747,170=>266,171=>500,172=>606,173=>333,174=>747,175=>333,176=>400,177=>570,178=>300,179=>300,180=>333,181=>576,182=>500,183=>250,184=>333,185=>272,186=>300,187=>500,188=>750,189=>750,190=>750,191=>500,192=>667,193=>667,194=>667,195=>667,196=>667,197=>667,198=>944,199=>667,200=>667,201=>667,202=>667,203=>667,204=>389,205=>389,206=>389,207=>389,208=>722,209=>722,210=>722,211=>722,212=>722,213=>722,214=>722,215=>570,216=>722,217=>722,218=>722,219=>722,220=>722,221=>611,222=>609,223=>500,224=>500,225=>500,226=>500,227=>500,228=>500,229=>500,230=>703,231=>444,232=>444,233=>444,234=>444,235=>444,236=>278,237=>278,238=>278,239=>278,240=>500,241=>556,242=>500,243=>500,244=>500,245=>500,246=>500,247=>570,248=>500,249=>556,250=>556,251=>556,252=>556,253=>444,254=>500,255=>444,256=>667,257=>500,258=>667,259=>500,260=>667,261=>500,262=>667,263=>444,264=>667,265=>444,266=>667,267=>444,268=>667,269=>444,270=>722,271=>609,272=>722,273=>500,274=>667,275=>444,276=>667,277=>444,278=>667,279=>444,280=>667,281=>444,282=>667,283=>444,284=>722,285=>500,286=>722,287=>500,288=>722,289=>500,290=>722,291=>500,292=>778,293=>556,294=>778,295=>556,296=>389,297=>278,298=>389,299=>278,300=>389,301=>278,302=>389,303=>278,304=>389,305=>278,306=>834,307=>545,308=>500,309=>278,310=>667,311=>500,312=>534,313=>611,314=>278,315=>611,316=>278,317=>638,318=>382,319=>611,320=>424,321=>611,322=>278,323=>722,324=>556,325=>722,326=>556,327=>722,328=>556,329=>646,330=>829,331=>547,332=>722,333=>500,334=>722,335=>500,336=>722,337=>500,338=>944,339=>711,340=>667,341=>389,342=>667,343=>389,344=>667,345=>389,346=>556,347=>389,348=>556,349=>389,350=>556,351=>389,352=>556,353=>389,354=>611,355=>278,356=>611,357=>426,358=>611,359=>278,360=>722,361=>556,362=>722,363=>556,364=>722,365=>556,366=>722,367=>556,368=>722,369=>556,370=>722,371=>556,372=>889,373=>667,374=>611,375=>444,376=>611,377=>611,378=>389,379=>611,380=>389,381=>611,382=>389,383=>333,384=>500,385=>850,386=>667,387=>575,388=>630,389=>500,390=>722,391=>929,392=>654,393=>722,394=>864,395=>684,396=>500,397=>546,398=>670,399=>722,400=>631,401=>769,402=>333,403=>929,404=>716,405=>745,406=>278,407=>389,408=>829,409=>500,410=>278,411=>495,412=>853,413=>919,414=>556,415=>722,416=>868,417=>603,418=>1014,419=>778,420=>757,421=>500,422=>611,423=>556,424=>389,425=>730,426=>455,427=>349,428=>611,429=>298,430=>611,431=>879,432=>704,433=>811,434=>678,435=>611,436=>581,437=>611,438=>389,439=>619,440=>614,441=>461,442=>445,443=>500,444=>614,445=>500,446=>389,447=>504,448=>220,449=>418,450=>570,451=>333,452=>1355,453=>1133,454=>889,455=>1109,456=>887,457=>556,458=>1152,459=>1000,460=>834,461=>667,462=>500,463=>393,464=>278,465=>722,466=>500,467=>722,468=>556,469=>722,470=>556,471=>722,472=>556,473=>722,474=>556,475=>722,476=>556,477=>444,478=>667,479=>500,480=>667,481=>500,482=>944,483=>703,484=>722,485=>500,486=>722,487=>500,488=>664,489=>500,490=>722,491=>500,492=>722,493=>500,494=>619,495=>513,496=>278,497=>1355,498=>1133,499=>889,500=>722,501=>500,502=>944,503=>660,504=>722,505=>556,506=>667,507=>500,508=>944,509=>703,510=>722,511=>500,512=>667,513=>500,514=>667,515=>500,516=>670,517=>444,518=>670,519=>444,520=>393,521=>278,522=>393,523=>278,524=>722,525=>500,526=>722,527=>500,528=>672,529=>389,530=>672,531=>389,532=>722,533=>556,534=>722,535=>556,536=>556,537=>389,538=>611,539=>278,540=>424,541=>455,542=>778,543=>556,544=>731,545=>618,546=>568,547=>500,548=>667,549=>444,550=>667,551=>500,552=>670,553=>444,554=>722,555=>500,556=>722,557=>500,558=>722,559=>500,560=>722,561=>500,562=>611,563=>444,564=>422,565=>621,566=>413,567=>278,568=>800,569=>784,570=>644,571=>667,572=>444,573=>664,574=>611,575=>389,576=>451,577=>444,578=>444,579=>667,580=>722,581=>722,582=>670,583=>444,584=>500,585=>278,586=>808,587=>608,588=>672,589=>389,590=>611,591=>444,592=>500,593=>590,594=>590,595=>510,596=>444,598=>516,599=>552,600=>444,601=>444,603=>430,604=>440,606=>440,607=>278,608=>569,609=>500,610=>504,612=>582,613=>556,614=>556,615=>556,616=>288,617=>320,618=>278,619=>278,621=>516,622=>559,623=>778,624=>778,625=>778,626=>556,627=>556,628=>500,629=>500,630=>732,631=>715,632=>667,633=>389,634=>389,635=>495,636=>389,637=>389,638=>394,639=>394,640=>556,641=>556,642=>389,643=>333,644=>333,645=>433,647=>333,648=>278,649=>500,650=>557,651=>492,652=>444,653=>667,654=>444,655=>406,656=>604,658=>513,660=>500,661=>500,662=>500,663=>444,664=>778,665=>445,667=>700,668=>542,670=>500,671=>429,672=>560,673=>500,675=>752,676=>807,678=>609,679=>510,681=>815,682=>606,683=>525,684=>490,686=>556,687=>556,688=>396,689=>397,690=>172,691=>243,692=>267,693=>341,694=>368,695=>440,696=>300,697=>250,698=>408,699=>250,700=>250,701=>250,702=>300,703=>300,704=>340,705=>340,706=>333,707=>333,708=>333,709=>333,710=>333,711=>333,712=>333,713=>333,714=>333,715=>333,716=>300,717=>333,718=>333,719=>333,720=>278,721=>278,722=>300,723=>300,724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,731=>333,732=>333,733=>333,734=>333,735=>352,736=>374,737=>227,738=>264,739=>340,740=>340,741=>526,742=>526,743=>526,744=>526,745=>526,746=>519,747=>519,748=>333,749=>333,750=>480,751=>333,752=>333,753=>333,754=>333,755=>327,756=>261,757=>437,758=>437,759=>400,760=>278,761=>175,762=>175,763=>175,764=>175,765=>0,766=>337,767=>432,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,859=>0,860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,884=>199,885=>199,890=>0,894=>333,900=>330,901=>333,902=>667,903=>250,904=>819,905=>955,906=>539,908=>835,910=>961,911=>889,912=>320,913=>667,914=>667,915=>637,916=>740,917=>667,918=>611,919=>778,920=>722,921=>389,922=>677,923=>667,924=>889,925=>722,926=>650,927=>722,928=>778,929=>611,931=>730,932=>621,933=>722,934=>748,935=>667,936=>858,937=>741,938=>389,939=>722,940=>590,941=>430,942=>548,943=>320,944=>536,945=>590,946=>536,947=>548,948=>550,949=>430,950=>482,951=>548,952=>525,953=>320,954=>564,955=>510,956=>589,957=>522,958=>482,959=>536,960=>629,961=>536,962=>470,963=>536,964=>464,965=>536,966=>643,967=>482,968=>715,969=>715,970=>320,971=>536,972=>536,973=>536,974=>715,976=>508,977=>589,978=>722,979=>931,980=>722,981=>660,982=>715,983=>536,984=>611,985=>536,986=>620,987=>524,988=>667,989=>535,990=>708,991=>428,992=>671,993=>633,1008=>550,1009=>550,1010=>477,1011=>278,1012=>722,1013=>411,1014=>411,1015=>609,1016=>500,1017=>667,1018=>896,1019=>769,1020=>536,1021=>667,1022=>667,1023=>667,1024=>670,1025=>670,1026=>762,1027=>637,1028=>667,1029=>556,1030=>393,1031=>393,1032=>500,1033=>1085,1034=>1049,1035=>747,1036=>736,1037=>778,1038=>746,1039=>778,1040=>667,1041=>667,1042=>667,1043=>637,1044=>778,1045=>670,1046=>1044,1047=>650,1048=>778,1049=>778,1050=>736,1051=>814,1052=>896,1053=>778,1054=>722,1055=>778,1056=>614,1057=>667,1058=>611,1059=>746,1060=>748,1061=>667,1062=>778,1063=>742,1064=>1136,1065=>1135,1066=>779,1067=>984,1068=>664,1069=>732,1070=>1069,1071=>779,1072=>500,1073=>508,1074=>486,1075=>414,1076=>486,1077=>444,1078=>982,1079=>476,1080=>556,1081=>556,1082=>564,1083=>585,1084=>757,1085=>552,1086=>500,1087=>556,1088=>500,1089=>444,1090=>778,1091=>532,1092=>764,1093=>500,1094=>556,1095=>556,1096=>806,1097=>806,1098=>644,1099=>744,1100=>470,1101=>488,1102=>757,1103=>586,1104=>444,1105=>444,1106=>524,1107=>414,1108=>488,1109=>389,1110=>278,1111=>278,1112=>278,1113=>772,1114=>745,1115=>556,1116=>564,1117=>556,1118=>532,1119=>556,1120=>990,1121=>690,1122=>804,1123=>751,1124=>1017,1125=>752,1126=>900,1127=>728,1128=>1236,1129=>927,1130=>1044,1131=>826,1132=>1401,1133=>1016,1134=>620,1135=>476,1136=>858,1137=>769,1138=>722,1139=>544,1140=>796,1141=>584,1142=>796,1143=>584,1144=>1268,1145=>1023,1146=>895,1147=>612,1148=>990,1149=>690,1150=>990,1151=>635,1152=>620,1153=>444,1154=>372,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,1162=>778,1163=>556,1164=>664,1165=>470,1166=>614,1167=>473,1168=>624,1169=>448,1170=>624,1171=>448,1172=>733,1173=>485,1174=>1080,1175=>982,1176=>650,1177=>476,1178=>772,1179=>564,1180=>772,1181=>590,1182=>738,1183=>499,1184=>862,1185=>718,1186=>778,1187=>552,1188=>976,1189=>682,1190=>1085,1191=>787,1192=>667,1193=>480,1194=>667,1195=>444,1196=>534,1197=>778,1198=>611,1199=>640,1200=>611,1201=>640,1202=>694,1203=>500,1204=>1004,1205=>518,1206=>742,1207=>556,1208=>742,1209=>556,1210=>716,1211=>556,1212=>844,1213=>530,1214=>844,1215=>530,1216=>393,1217=>1044,1218=>982,1219=>736,1220=>534,1221=>814,1222=>585,1223=>778,1224=>552,1225=>778,1226=>552,1227=>742,1228=>556,1229=>896,1230=>757,1231=>393,1232=>667,1233=>500,1234=>667,1235=>500,1236=>891,1237=>646,1238=>670,1239=>444,1240=>659,1241=>372,1242=>619,1243=>372,1244=>1044,1245=>994,1246=>650,1247=>476,1248=>604,1249=>459,1250=>778,1251=>539,1252=>778,1253=>539,1254=>722,1255=>500,1256=>722,1257=>500,1258=>722,1259=>500,1260=>732,1261=>488,1262=>746,1263=>532,1264=>746,1265=>532,1266=>746,1267=>532,1268=>742,1269=>556,1270=>637,1271=>448,1272=>984,1273=>744,1296=>652,1297=>452,1298=>814,1299=>585,1306=>722,1307=>500,1308=>889,1309=>656,1310=>736,1311=>564,1329=>889,1330=>787,1331=>858,1332=>941,1333=>775,1334=>765,1335=>805,1336=>762,1337=>938,1338=>869,1339=>765,1340=>756,1341=>966,1342=>992,1343=>748,1344=>469,1345=>731,1346=>941,1347=>745,1348=>966,1349=>641,1350=>929,1351=>774,1352=>779,1353=>784,1354=>841,1355=>775,1356=>955,1357=>779,1358=>927,1359=>555,1360=>763,1361=>641,1362=>656,1363=>824,1364=>869,1365=>768,1366=>754,1369=>300,1370=>300,1371=>270,1372=>307,1373=>270,1374=>324,1375=>322,1377=>818,1378=>548,1379=>601,1380=>608,1381=>551,1382=>547,1383=>496,1384=>548,1385=>586,1386=>585,1387=>548,1388=>269,1389=>798,1390=>594,1391=>544,1392=>548,1393=>513,1394=>583,1395=>560,1396=>551,1397=>397,1398=>567,1399=>447,1400=>548,1401=>411,1402=>810,1403=>464,1404=>548,1405=>551,1406=>595,1407=>821,1408=>548,1409=>557,1410=>312,1411=>821,1412=>550,1413=>511,1414=>668,1415=>602,1417=>333,1418=>349,1425=>0,1426=>0,1427=>0,1428=>0,1429=>0,1430=>0,1431=>0,1432=>0,1433=>0,1434=>0,1435=>0,1436=>0,1437=>0,1438=>0,1439=>0,1440=>0,1441=>0,1442=>0,1443=>0,1444=>0,1445=>0,1446=>0,1447=>0,1448=>0,1449=>0,1450=>0,1451=>0,1452=>0,1453=>0,1454=>0,1455=>0,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0,1467=>0,1468=>0,1469=>0,1470=>433,1471=>0,1472=>155,1473=>0,1474=>0,1475=>400,1476=>0,1477=>0,1478=>347,1479=>0,1488=>593,1489=>498,1490=>339,1491=>523,1492=>561,1493=>266,1494=>291,1495=>559,1496=>576,1497=>266,1498=>496,1499=>501,1500=>510,1501=>542,1502=>581,1503=>273,1504=>347,1505=>512,1506=>552,1507=>493,1508=>491,1509=>537,1510=>561,1511=>544,1512=>502,1513=>716,1514=>571,1520=>532,1521=>532,1522=>532,1523=>396,1524=>432,3585=>590,3586=>578,3587=>661,3588=>592,3589=>592,3590=>699,3591=>447,3592=>534,3593=>692,3594=>578,3595=>659,3596=>899,3597=>804,3598=>633,3599=>637,3600=>484,3601=>730,3602=>876,3603=>915,3604=>592,3605=>592,3606=>578,3607=>670,3608=>542,3609=>671,3610=>621,3611=>618,3612=>621,3613=>617,3614=>708,3615=>708,3616=>637,3617=>589,3618=>552,3619=>484,3620=>590,3621=>569,3622=>637,3623=>526,3624=>599,3625=>802,3626=>579,3627=>668,3628=>778,3629=>560,3630=>514,3631=>510,3632=>442,3633=>0,3634=>423,3635=>452,3636=>0,3637=>0,3638=>0,3639=>0,3640=>0,3641=>0,3642=>0,3647=>665,3648=>357,3649=>624,3650=>529,3651=>486,3652=>475,3653=>423,3654=>500,3655=>0,3656=>0,3657=>0,3658=>0,3659=>0,3660=>0,3661=>0,3662=>0,3663=>657,3664=>548,3665=>548,3666=>592,3667=>614,3668=>631,3669=>643,3670=>508,3671=>744,3672=>622,3673=>585,3674=>721,3675=>1381,4256=>475,4257=>469,4258=>573,4259=>650,4260=>502,4261=>506,4262=>481,4263=>746,4264=>491,4265=>495,4266=>888,4267=>488,4268=>464,4269=>745,4270=>483,4271=>489,4272=>721,4273=>464,4274=>578,4275=>590,4276=>611,4277=>491,4278=>663,4279=>489,4280=>544,4281=>479,4282=>527,4283=>488,4284=>560,4285=>461,4286=>467,4287=>546,4288=>483,4289=>487,4290=>562,4291=>477,4292=>491,4293=>471,4304=>522,4305=>518,4306=>621,4307=>716,4308=>517,4309=>519,4310=>518,4311=>796,4312=>518,4313=>518,4314=>934,4315=>517,4316=>519,4317=>787,4318=>515,4319=>514,4320=>788,4321=>573,4322=>620,4323=>593,4324=>639,4325=>516,4326=>714,4327=>518,4328=>572,4329=>518,4330=>555,4331=>518,4332=>562,4333=>509,4334=>572,4335=>677,4336=>523,4337=>517,4338=>595,4339=>480,4340=>519,4341=>484,4342=>838,4343=>517,4344=>516,4345=>621,4346=>522,4347=>410,4348=>389,5024=>718,5025=>768,5026=>633,5027=>878,5028=>1001,5029=>371,5030=>576,5031=>754,5032=>531,5033=>774,5034=>692,5035=>499,5036=>668,5037=>829,5038=>575,5039=>681,5040=>485,5041=>607,5042=>885,5043=>974,5044=>588,5045=>583,5046=>726,5047=>947,5048=>558,5049=>832,5050=>1096,5051=>780,5052=>595,5053=>869,5054=>752,5055=>710,5056=>761,5057=>802,5058=>760,5059=>656,5060=>655,5061=>982,5062=>684,5063=>801,5064=>805,5065=>1042,5066=>755,5067=>612,5068=>707,5069=>889,5070=>584,5071=>623,5072=>536,5073=>763,5074=>763,5075=>549,5076=>1052,5077=>600,5078=>730,5079=>714,5080=>714,5081=>697,5082=>543,5083=>943,5084=>718,5085=>630,5086=>660,5087=>692,5088=>841,5089=>861,5090=>617,5091=>733,5092=>898,5093=>896,5094=>781,5095=>612,5096=>830,5097=>948,5098=>886,5099=>757,5100=>796,5101=>578,5102=>601,5103=>797,5104=>623,5105=>886,5106=>730,5107=>827,5108=>648,7680=>667,7681=>500,7682=>667,7683=>500,7684=>667,7685=>500,7686=>667,7687=>500,7688=>667,7689=>444,7690=>744,7691=>500,7692=>744,7693=>500,7694=>744,7695=>500,7696=>744,7697=>500,7698=>744,7699=>500,7700=>667,7701=>444,7702=>667,7703=>444,7704=>670,7705=>444,7706=>670,7707=>444,7708=>670,7709=>444,7710=>656,7711=>333,7712=>722,7713=>500,7714=>778,7715=>556,7716=>778,7717=>556,7718=>778,7719=>556,7720=>778,7721=>556,7722=>778,7723=>556,7724=>393,7725=>278,7726=>389,7727=>278,7728=>664,7729=>500,7730=>664,7731=>500,7732=>664,7733=>500,7734=>609,7735=>278,7736=>609,7737=>278,7738=>609,7739=>278,7740=>609,7741=>278,7742=>896,7743=>778,7744=>896,7745=>778,7746=>896,7747=>778,7748=>722,7749=>556,7750=>722,7751=>556,7752=>722,7753=>556,7754=>722,7755=>556,7756=>722,7757=>500,7758=>722,7759=>500,7760=>722,7761=>500,7762=>722,7763=>500,7764=>614,7765=>500,7766=>614,7767=>500,7768=>672,7769=>389,7770=>672,7771=>389,7772=>672,7773=>389,7774=>672,7775=>389,7776=>556,7777=>389,7778=>556,7779=>389,7780=>556,7781=>389,7782=>556,7783=>389,7784=>556,7785=>389,7786=>611,7787=>278,7788=>611,7789=>278,7790=>611,7791=>278,7792=>611,7793=>278,7794=>722,7795=>556,7796=>722,7797=>556,7798=>722,7799=>556,7800=>722,7801=>556,7802=>722,7803=>556,7804=>667,7805=>444,7806=>667,7807=>444,7808=>889,7809=>667,7810=>889,7811=>667,7812=>889,7813=>667,7814=>889,7815=>667,7816=>889,7817=>667,7818=>667,7819=>500,7820=>667,7821=>500,7822=>611,7823=>444,7824=>611,7825=>389,7826=>611,7827=>389,7828=>611,7829=>389,7830=>556,7831=>278,7832=>667,7833=>444,7834=>507,7835=>333,7836=>333,7837=>333,7838=>792,7839=>534,7840=>667,7841=>500,7842=>667,7843=>500,7844=>667,7845=>500,7846=>667,7847=>500,7848=>667,7849=>500,7850=>667,7851=>500,7852=>667,7853=>500,7854=>667,7855=>500,7856=>667,7857=>500,7858=>667,7859=>500,7860=>667,7861=>500,7862=>667,7863=>500,7864=>670,7865=>444,7866=>670,7867=>444,7868=>670,7869=>444,7870=>667,7871=>444,7872=>667,7873=>444,7874=>667,7875=>444,7876=>667,7877=>444,7878=>670,7879=>444,7880=>393,7881=>278,7882=>393,7883=>278,7884=>722,7885=>500,7886=>722,7887=>500,7888=>722,7889=>500,7890=>722,7891=>500,7892=>722,7893=>500,7894=>722,7895=>500,7896=>722,7897=>500,7898=>868,7899=>603,7900=>868,7901=>603,7902=>868,7903=>603,7904=>868,7905=>603,7906=>868,7907=>603,7908=>722,7909=>556,7910=>722,7911=>556,7912=>879,7913=>704,7914=>879,7915=>704,7916=>879,7917=>704,7918=>879,7919=>704,7920=>879,7921=>704,7922=>611,7923=>444,7924=>611,7925=>444,7926=>611,7927=>444,7928=>611,7929=>444,7936=>590,7937=>590,7938=>590,7939=>590,7940=>590,7941=>590,7942=>590,7943=>590,7944=>724,7945=>753,7946=>891,7947=>912,7948=>822,7949=>853,7950=>796,7951=>787,7952=>430,7953=>430,7954=>430,7955=>430,7956=>430,7957=>430,7960=>864,7961=>905,7962=>1034,7963=>1038,7964=>1031,7965=>1045,7968=>548,7969=>548,7970=>548,7971=>548,7972=>548,7973=>548,7974=>548,7975=>548,7976=>976,7977=>1009,7978=>1132,7979=>1141,7980=>1138,7981=>1154,7982=>1079,7983=>1071,7984=>320,7985=>320,7986=>320,7987=>320,7988=>320,7989=>320,7990=>320,7991=>320,7992=>593,7993=>620,7994=>746,7995=>762,7996=>742,7997=>773,7998=>691,7999=>683,8000=>536,8001=>536,8002=>536,8003=>536,8004=>536,8005=>536,8008=>899,8009=>928,8010=>1086,8011=>1118,8012=>1020,8013=>1028,8016=>536,8017=>536,8018=>536,8019=>536,8020=>536,8021=>536,8022=>536,8023=>536,8025=>959,8027=>1085,8029=>1108,8031=>1027,8032=>715,8033=>715,8034=>715,8035=>715,8036=>715,8037=>715,8038=>715,8039=>715,8040=>946,8041=>960,8042=>1133,8043=>1148,8044=>1059,8045=>1081,8046=>1020,8047=>1016,8048=>590,8049=>590,8050=>430,8051=>430,8052=>548,8053=>548,8054=>320,8055=>320,8056=>536,8057=>536,8058=>536,8059=>536,8060=>715,8061=>715,8064=>590,8065=>590,8066=>590,8067=>590,8068=>590,8069=>590,8070=>590,8071=>590,8072=>842,8073=>877,8074=>1011,8075=>1031,8076=>947,8077=>975,8078=>907,8079=>893,8080=>548,8081=>548,8082=>548,8083=>548,8084=>548,8085=>548,8086=>548,8087=>548,8088=>1030,8089=>1066,8090=>1188,8091=>1199,8092=>1196,8093=>1211,8094=>1134,8095=>1129,8096=>715,8097=>715,8098=>715,8099=>715,8100=>715,8101=>715,8102=>715,8103=>715,8104=>1060,8105=>1076,8106=>1264,8107=>1287,8108=>1179,8109=>1204,8110=>1137,8111=>1135,8112=>590,8113=>590,8114=>590,8115=>590,8116=>590,8118=>590,8119=>590,8120=>667,8121=>667,8122=>752,8123=>728,8124=>775,8125=>250,8126=>0,8127=>500,8128=>500,8129=>550,8130=>548,8131=>548,8132=>548,8134=>548,8135=>548,8136=>884,8137=>859,8138=>982,8139=>968,8140=>839,8141=>500,8142=>500,8143=>500,8144=>320,8145=>320,8146=>320,8147=>320,8150=>320,8151=>320,8152=>389,8153=>389,8154=>599,8155=>592,8157=>500,8158=>500,8159=>500,8160=>536,8161=>536,8162=>536,8163=>536,8164=>536,8165=>536,8166=>536,8167=>536,8168=>722,8169=>722,8170=>1007,8171=>932,8172=>842,8173=>550,8174=>550,8175=>500,8178=>715,8179=>715,8180=>715,8182=>715,8183=>715,8184=>971,8185=>853,8186=>1004,8187=>875,8188=>862,8189=>500,8190=>500,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>500,8200=>250,8201=>200,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>500,8211=>500,8212=>1000,8213=>1000,8214=>333,8215=>478,8216=>250,8217=>250,8218=>250,8219=>250,8220=>500,8221=>500,8222=>500,8223=>500,8224=>500,8225=>500,8226=>350,8227=>560,8228=>250,8229=>478,8230=>1000,8231=>0,8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>250,8239=>0,8240=>1000,8241=>1618,8242=>278,8243=>556,8244=>834,8245=>270,8246=>468,8247=>630,8248=>469,8249=>333,8250=>333,8251=>727,8252=>778,8253=>733,8254=>500,8255=>953,8256=>953,8257=>338,8258=>931,8259=>333,8260=>167,8261=>332,8262=>332,8263=>1000,8264=>889,8265=>889,8266=>500,8267=>453,8268=>479,8269=>492,8270=>500,8271=>333,8272=>953,8273=>500,8274=>521,8275=>576,8276=>953,8277=>785,8278=>410,8279=>881,8280=>620,8281=>620,8282=>179,8283=>621,8284=>569,8285=>179,8286=>179,8287=>111,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>300,8305=>219,8308=>300,8309=>300,8310=>300,8311=>300,8312=>300,8313=>300,8314=>300,8315=>300,8316=>300,8317=>216,8318=>216,8319=>362,8320=>300,8321=>274,8322=>300,8323=>300,8324=>300,8325=>300,8326=>300,8327=>300,8328=>300,8329=>300,8330=>300,8331=>300,8332=>300,8333=>216,8334=>216,8336=>350,8337=>296,8338=>320,8339=>337,8340=>298,8352=>667,8353=>667,8354=>667,8355=>667,8356=>500,8357=>742,8358=>722,8359=>1008,8360=>953,8361=>889,8362=>889,8363=>532,8364=>761,8365=>742,8366=>631,8367=>1435,8368=>579,8369=>609,8370=>639,8371=>742,8372=>576,8373=>500,8376=>524,8400=>0,8401=>0,8406=>0,8407=>0,8411=>0,8412=>0,8413=>0,8414=>0,8415=>0,8416=>0,8417=>0,8421=>0,8423=>0,8424=>0,8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,8448=>624,8449=>625,8451=>925,8453=>623,8454=>737,8455=>631,8456=>709,8457=>867,8458=>500,8459=>1035,8462=>556,8463=>556,8464=>792,8465=>737,8466=>800,8467=>427,8468=>835,8470=>806,8471=>855,8472=>666,8475=>747,8476=>955,8478=>722,8479=>722,8480=>991,8481=>1050,8482=>1086,8483=>667,8486=>741,8487=>741,8489=>320,8490=>664,8491=>667,8492=>806,8494=>551,8495=>444,8497=>723,8498=>595,8499=>1203,8501=>537,8502=>537,8503=>350,8504=>537,8506=>942,8507=>1050,8523=>698,8525=>1028,8526=>396,8531=>750,8532=>750,8533=>750,8534=>750,8535=>750,8536=>750,8537=>750,8538=>750,8539=>750,8540=>750,8541=>750,8542=>750,8543=>750,8544=>393,8545=>716,8546=>1039,8547=>1040,8548=>667,8549=>1016,8550=>1334,8551=>1657,8552=>1005,8553=>667,8554=>1024,8555=>1353,8556=>609,8557=>667,8558=>744,8559=>896,8560=>278,8561=>556,8562=>834,8563=>722,8564=>444,8565=>722,8566=>1000,8567=>1278,8568=>778,8569=>500,8570=>778,8571=>1056,8572=>278,8573=>444,8574=>500,8575=>778,8592=>964,8593=>964,8594=>964,8595=>964,8596=>964,8597=>964,8598=>964,8599=>964,8600=>964,8601=>964,8602=>964,8603=>964,8606=>964,8607=>964,8608=>964,8609=>964,8610=>964,8611=>964,8612=>964,8613=>964,8614=>964,8615=>964,8616=>964,8632=>964,8633=>964,8636=>964,8637=>964,8638=>964,8639=>964,8640=>964,8641=>964,8642=>964,8643=>964,8644=>964,8645=>964,8646=>964,8647=>964,8648=>964,8649=>964,8650=>964,8676=>964,8677=>964,8706=>494,8710=>612,8721=>713,8722=>606,8725=>750,8730=>549,8734=>752,8800=>570,8804=>570,8805=>570,9251=>500,9674=>494,9675=>738,9676=>732,9711=>855,9824=>618,9825=>645,9826=>587,9827=>582,9828=>582,9829=>645,9830=>587,9831=>618,9833=>333,9834=>556,9835=>778,9836=>778,9837=>556,9838=>556,9839=>556,11799=>333,42790=>778,42791=>548,42792=>839,42793=>615,42794=>652,42795=>452,42796=>478,42797=>422,42798=>675,42799=>627,42888=>333,42889=>278,42890=>282,42891=>349,42892=>278,64256=>602,64257=>572,64258=>569,64259=>842,64260=>838,64261=>577,64262=>662,64275=>1105,64276=>1105,64277=>1099,64278=>1105,64279=>1361,64285=>266,64286=>0,64287=>532,64288=>552,64297=>570,64298=>716,64299=>716,64300=>716,64301=>716,64302=>593,64303=>593,64304=>593,64305=>498,64306=>339,64307=>523,64308=>561,64309=>266,64310=>291,64312=>576,64313=>266,64314=>496,64315=>501,64316=>510,64318=>581,64320=>347,64321=>512,64323=>493,64324=>491,64326=>561,64327=>544,64328=>502,64329=>716,64330=>571,64331=>266,64332=>498,64333=>501,64334=>491,64335=>593,65533=>900,65535=>700); +$desc=array('Flags'=>96,'FontBBox'=>'[-787 -300 1732 900]','ItalicAngle'=>-16.45875,'Ascent'=>900,'Descent'=>-200,'Leading'=>100,'CapHeight'=>669,'XHeight'=>475,'StemV'=>123,'StemH'=>53,'AvgWidth'=>596,'MaxWidth'=>1668,'MissingWidth'=>600); +$cw=array(0=>600,32=>250,33=>389,34=>555,35=>500,36=>500,37=>833,38=>778,39=>278,40=>333,41=>333,42=>500,43=>570,44=>250,45=>333,46=>250,47=>335,48=>500,49=>500,50=>500,51=>500,52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>250,59=>250,60=>570,61=>576,62=>570,63=>500,64=>832,65=>696,66=>640,67=>620,68=>723,69=>630,70=>609,71=>706,72=>753,73=>374,74=>500,75=>663,76=>609,77=>876,78=>705,79=>676,80=>600,81=>677,82=>667,83=>506,84=>593,85=>714,86=>703,87=>928,88=>699,89=>639,90=>562,91=>333,92=>400,93=>333,94=>570,95=>500,96=>333,97=>509,98=>481,99=>428,100=>510,101=>417,102=>485,103=>490,104=>546,105=>292,106=>333,107=>509,108=>294,109=>763,110=>526,111=>474,112=>482,113=>496,114=>400,115=>356,116=>286,117=>530,118=>439,119=>652,120=>476,121=>433,122=>410,123=>348,124=>270,125=>348,126=>570,160=>250,161=>389,162=>410,163=>522,164=>560,165=>645,166=>220,167=>500,168=>333,169=>747,170=>266,171=>500,172=>606,173=>333,174=>747,175=>333,176=>400,177=>570,178=>300,179=>300,180=>333,181=>576,182=>500,183=>250,184=>333,185=>272,186=>300,187=>500,188=>750,189=>750,190=>750,191=>500,192=>696,193=>696,194=>696,195=>696,196=>696,197=>696,198=>911,199=>620,200=>630,201=>630,202=>630,203=>630,204=>374,205=>374,206=>374,207=>374,208=>723,209=>705,210=>676,211=>676,212=>676,213=>676,214=>676,215=>570,216=>676,217=>714,218=>714,219=>714,220=>714,221=>639,222=>597,223=>580,224=>509,225=>509,226=>509,227=>509,228=>509,229=>509,230=>697,231=>417,232=>417,233=>417,234=>417,235=>417,236=>292,237=>292,238=>292,239=>292,240=>450,241=>526,242=>474,243=>474,244=>474,245=>474,246=>474,247=>570,248=>474,249=>530,250=>530,251=>530,252=>530,253=>433,254=>492,255=>433,256=>696,257=>509,258=>696,259=>509,260=>734,261=>509,262=>620,263=>428,264=>620,265=>428,266=>620,267=>428,268=>620,269=>428,270=>723,271=>609,272=>723,273=>505,274=>630,275=>417,276=>630,277=>417,278=>630,279=>417,280=>610,281=>417,282=>667,283=>417,284=>706,285=>490,286=>706,287=>490,288=>706,289=>490,290=>706,291=>490,292=>753,293=>546,294=>758,295=>547,296=>389,297=>292,298=>389,299=>292,300=>389,301=>292,302=>421,303=>292,304=>389,305=>292,306=>834,307=>516,308=>500,309=>333,310=>667,311=>509,312=>514,313=>609,314=>294,315=>609,316=>294,317=>638,318=>382,319=>609,320=>434,321=>609,322=>304,323=>705,324=>526,325=>705,326=>526,327=>705,328=>526,329=>526,330=>793,331=>495,332=>676,333=>474,334=>676,335=>474,336=>676,337=>474,338=>875,339=>680,340=>667,341=>400,342=>667,343=>400,344=>667,345=>400,346=>506,347=>356,348=>506,349=>356,350=>508,351=>337,352=>506,353=>356,354=>593,355=>286,356=>593,357=>426,358=>593,359=>317,360=>714,361=>530,362=>714,363=>530,364=>714,365=>530,366=>714,367=>530,368=>714,369=>530,370=>722,371=>556,372=>928,373=>652,374=>639,375=>433,376=>639,377=>562,378=>410,379=>562,380=>410,381=>562,382=>410,383=>485,384=>492,385=>778,386=>648,387=>486,388=>640,389=>502,390=>702,391=>870,392=>600,393=>723,394=>860,395=>717,396=>505,397=>546,398=>670,399=>629,400=>608,401=>639,402=>435,403=>885,404=>629,405=>738,406=>284,407=>389,408=>748,409=>489,410=>324,411=>508,412=>853,413=>824,414=>506,415=>670,416=>804,417=>579,418=>1014,419=>755,420=>718,421=>484,422=>661,423=>526,424=>400,425=>701,426=>455,427=>333,428=>611,429=>385,430=>611,431=>879,432=>665,433=>724,434=>626,435=>694,436=>591,437=>562,438=>417,439=>609,440=>614,441=>481,442=>428,443=>500,444=>604,445=>448,446=>406,447=>483,448=>260,449=>418,450=>570,451=>333,452=>1296,453=>1123,454=>889,455=>1109,456=>887,457=>556,458=>1132,459=>945,460=>789,461=>696,462=>509,463=>374,464=>292,465=>676,466=>474,467=>714,468=>530,469=>722,470=>530,471=>722,472=>530,473=>722,474=>530,475=>722,476=>530,477=>417,478=>696,479=>509,480=>667,481=>509,482=>911,483=>697,484=>730,485=>510,486=>706,487=>490,488=>663,489=>509,490=>667,491=>474,492=>667,493=>474,494=>609,495=>470,496=>333,497=>1335,498=>1123,499=>889,500=>706,501=>490,502=>992,503=>595,504=>705,505=>526,506=>667,507=>509,508=>911,509=>698,510=>676,511=>474,512=>696,513=>509,514=>696,515=>509,516=>630,517=>417,518=>630,519=>417,520=>374,521=>292,522=>374,523=>292,524=>676,525=>474,526=>676,527=>474,528=>667,529=>400,530=>667,531=>400,532=>714,533=>530,534=>714,535=>530,536=>506,537=>356,538=>593,539=>286,540=>506,541=>491,542=>753,543=>546,544=>719,545=>558,546=>568,547=>500,548=>667,549=>444,550=>696,551=>509,552=>610,553=>417,554=>676,555=>474,556=>676,557=>474,558=>676,559=>474,560=>722,561=>474,562=>639,563=>433,564=>422,565=>591,566=>393,567=>333,568=>810,569=>810,570=>695,571=>620,572=>428,573=>609,574=>593,575=>356,576=>410,577=>476,578=>467,579=>640,580=>714,581=>722,582=>610,583=>399,584=>500,585=>394,586=>732,587=>574,588=>669,589=>409,590=>671,591=>438,592=>509,593=>570,594=>570,595=>483,596=>444,597=>412,598=>476,599=>644,600=>408,601=>409,602=>546,603=>448,604=>463,605=>527,606=>472,607=>359,608=>656,609=>456,610=>494,611=>506,612=>582,613=>546,614=>556,615=>526,616=>318,617=>299,618=>278,619=>378,620=>378,621=>277,622=>639,623=>783,624=>728,625=>727,626=>489,627=>504,628=>513,629=>461,630=>700,631=>688,632=>604,633=>420,634=>389,635=>435,636=>389,637=>389,638=>424,639=>364,640=>496,641=>516,642=>365,643=>505,644=>505,645=>433,646=>601,647=>319,648=>286,649=>550,650=>503,651=>486,652=>439,653=>652,654=>458,655=>406,656=>604,657=>473,658=>470,659=>503,660=>390,661=>387,662=>427,663=>437,664=>778,665=>487,666=>453,667=>655,668=>540,669=>429,670=>509,671=>446,672=>604,673=>380,674=>395,675=>752,676=>848,677=>820,678=>607,679=>595,680=>656,681=>831,682=>585,683=>535,684=>458,685=>463,686=>529,687=>586,688=>396,689=>397,690=>242,691=>243,692=>267,693=>341,694=>368,695=>440,696=>300,697=>250,698=>408,699=>250,700=>250,701=>250,702=>300,703=>300,704=>340,705=>340,706=>333,707=>333,708=>333,709=>333,710=>333,711=>333,712=>333,713=>333,714=>333,715=>333,716=>300,717=>333,718=>333,719=>333,720=>278,721=>278,722=>300,723=>300,724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,731=>333,732=>333,733=>333,734=>333,735=>352,736=>374,737=>227,738=>264,739=>340,740=>340,741=>526,742=>526,743=>526,744=>526,745=>526,746=>519,747=>519,748=>333,749=>333,750=>480,751=>333,752=>333,753=>333,754=>333,755=>327,756=>261,757=>333,758=>333,759=>400,760=>278,761=>175,762=>175,763=>175,764=>175,765=>0,766=>337,767=>432,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,859=>0,860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,867=>0,868=>0,869=>0,870=>0,871=>0,872=>0,873=>0,874=>0,875=>0,876=>0,877=>0,878=>0,879=>0,885=>199,890=>0,894=>333,900=>330,901=>333,902=>696,903=>250,904=>819,905=>955,906=>539,908=>835,910=>961,911=>889,912=>312,913=>696,914=>640,915=>576,916=>751,917=>630,918=>562,919=>753,920=>675,921=>389,922=>663,923=>696,924=>889,925=>705,926=>629,927=>675,928=>753,929=>600,931=>701,932=>621,933=>710,934=>799,935=>699,936=>919,937=>750,938=>374,939=>710,940=>570,941=>439,942=>548,943=>312,944=>536,945=>570,946=>538,947=>532,948=>506,949=>439,950=>437,951=>548,952=>477,953=>312,954=>549,955=>510,956=>589,957=>522,958=>494,959=>512,960=>612,961=>513,962=>468,963=>525,964=>444,965=>536,966=>615,967=>495,968=>693,969=>687,970=>312,971=>536,972=>512,973=>536,974=>687,976=>489,977=>613,978=>722,979=>931,980=>722,981=>623,982=>688,983=>527,984=>615,985=>512,986=>608,987=>508,988=>598,989=>543,990=>708,991=>377,992=>731,993=>631,1008=>534,1009=>519,1010=>477,1011=>333,1012=>670,1013=>411,1014=>439,1015=>597,1016=>533,1017=>631,1018=>889,1019=>761,1020=>506,1021=>637,1022=>631,1023=>637,1024=>630,1025=>630,1026=>768,1027=>576,1028=>637,1029=>506,1030=>374,1031=>374,1032=>500,1033=>1053,1034=>1019,1035=>831,1036=>710,1037=>753,1038=>739,1039=>753,1040=>696,1041=>648,1042=>640,1043=>576,1044=>760,1045=>630,1046=>1052,1047=>651,1048=>753,1049=>753,1050=>710,1051=>786,1052=>876,1053=>753,1054=>676,1055=>753,1056=>600,1057=>620,1058=>593,1059=>739,1060=>799,1061=>699,1062=>754,1063=>693,1064=>1111,1065=>1111,1066=>756,1067=>959,1068=>624,1069=>689,1070=>1038,1071=>757,1072=>509,1073=>478,1074=>467,1075=>374,1076=>456,1077=>417,1078=>941,1079=>458,1080=>530,1081=>530,1082=>538,1083=>580,1084=>752,1085=>533,1086=>474,1087=>526,1088=>482,1089=>428,1090=>763,1091=>496,1092=>759,1093=>476,1094=>529,1095=>529,1096=>776,1097=>777,1098=>663,1099=>744,1100=>506,1101=>458,1102=>733,1103=>572,1104=>417,1105=>417,1106=>541,1107=>374,1108=>454,1109=>356,1110=>292,1111=>292,1112=>333,1113=>802,1114=>754,1115=>545,1116=>538,1117=>530,1118=>496,1119=>530,1120=>948,1121=>693,1122=>751,1123=>760,1124=>1005,1125=>718,1126=>906,1127=>732,1128=>1222,1129=>923,1130=>1052,1131=>828,1132=>1377,1133=>1014,1134=>604,1135=>446,1136=>938,1137=>779,1138=>667,1139=>517,1140=>796,1141=>584,1142=>796,1143=>584,1144=>1131,1145=>907,1146=>864,1147=>616,1148=>959,1149=>690,1150=>948,1151=>635,1152=>608,1153=>434,1154=>372,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,1162=>778,1163=>544,1164=>634,1165=>499,1166=>624,1167=>483,1168=>601,1169=>448,1170=>606,1171=>448,1172=>719,1173=>529,1174=>1080,1175=>941,1176=>651,1177=>450,1178=>772,1179=>538,1180=>780,1181=>558,1182=>750,1183=>538,1184=>862,1185=>688,1186=>754,1187=>533,1188=>965,1189=>664,1190=>1089,1191=>783,1192=>661,1193=>522,1194=>637,1195=>419,1196=>614,1197=>769,1198=>639,1199=>660,1200=>638,1201=>660,1202=>694,1203=>500,1204=>984,1205=>579,1206=>713,1207=>538,1208=>713,1209=>529,1210=>727,1211=>546,1212=>850,1213=>570,1214=>844,1215=>570,1216=>374,1217=>1052,1218=>941,1219=>705,1220=>509,1221=>786,1222=>580,1223=>753,1224=>483,1225=>753,1226=>539,1227=>703,1228=>485,1229=>876,1230=>758,1231=>374,1232=>696,1233=>509,1234=>696,1235=>509,1236=>891,1237=>646,1238=>630,1239=>417,1240=>609,1241=>403,1242=>609,1243=>403,1244=>1052,1245=>941,1246=>651,1247=>458,1248=>604,1249=>479,1250=>753,1251=>539,1252=>753,1253=>539,1254=>676,1255=>474,1256=>670,1257=>461,1258=>670,1259=>461,1260=>689,1261=>458,1262=>739,1263=>496,1264=>739,1265=>496,1266=>739,1267=>496,1268=>693,1269=>529,1270=>606,1271=>428,1272=>959,1273=>744,1296=>652,1297=>480,1298=>786,1299=>530,1306=>677,1307=>496,1308=>928,1309=>652,1310=>736,1311=>544,1329=>889,1330=>787,1331=>858,1332=>941,1333=>775,1334=>765,1335=>805,1336=>762,1337=>938,1338=>869,1339=>765,1340=>756,1341=>966,1342=>992,1343=>748,1344=>469,1345=>731,1346=>941,1347=>745,1348=>966,1349=>641,1350=>929,1351=>774,1352=>779,1353=>784,1354=>841,1355=>775,1356=>955,1357=>779,1358=>927,1359=>555,1360=>763,1361=>641,1362=>656,1363=>824,1364=>869,1365=>768,1366=>754,1369=>300,1370=>300,1371=>270,1372=>307,1373=>270,1374=>324,1375=>322,1377=>818,1378=>548,1379=>601,1380=>608,1381=>551,1382=>547,1383=>496,1384=>548,1385=>586,1386=>585,1387=>548,1388=>269,1389=>798,1390=>594,1391=>544,1392=>548,1393=>513,1394=>583,1395=>560,1396=>551,1397=>397,1398=>567,1399=>447,1400=>548,1401=>411,1402=>810,1403=>464,1404=>548,1405=>551,1406=>595,1407=>821,1408=>548,1409=>557,1410=>312,1411=>821,1412=>550,1413=>511,1414=>668,1415=>602,1417=>333,1418=>349,1423=>759,1425=>0,1426=>0,1427=>0,1428=>0,1429=>0,1430=>0,1431=>0,1432=>0,1433=>0,1434=>0,1435=>0,1436=>0,1437=>0,1438=>0,1439=>0,1440=>0,1441=>0,1442=>0,1443=>0,1444=>0,1445=>0,1446=>0,1447=>0,1448=>0,1449=>0,1450=>0,1451=>0,1452=>0,1453=>0,1454=>0,1455=>0,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0,1467=>0,1468=>0,1469=>0,1470=>433,1471=>0,1472=>155,1473=>0,1474=>0,1475=>400,1476=>0,1477=>0,1478=>347,1479=>0,1488=>593,1489=>498,1490=>339,1491=>523,1492=>561,1493=>266,1494=>291,1495=>559,1496=>576,1497=>266,1498=>496,1499=>501,1500=>510,1501=>542,1502=>581,1503=>273,1504=>347,1505=>512,1506=>552,1507=>493,1508=>491,1509=>537,1510=>561,1511=>544,1512=>502,1513=>716,1514=>571,1520=>532,1521=>532,1522=>532,1523=>396,1524=>432,3585=>590,3586=>578,3587=>661,3588=>592,3589=>592,3590=>699,3591=>447,3592=>534,3593=>692,3594=>578,3595=>659,3596=>899,3597=>804,3598=>633,3599=>637,3600=>484,3601=>730,3602=>876,3603=>915,3604=>592,3605=>592,3606=>578,3607=>670,3608=>542,3609=>671,3610=>621,3611=>618,3612=>621,3613=>617,3614=>708,3615=>708,3616=>637,3617=>589,3618=>552,3619=>484,3620=>590,3621=>569,3622=>637,3623=>526,3624=>599,3625=>802,3626=>579,3627=>668,3628=>778,3629=>560,3630=>514,3631=>510,3632=>442,3633=>0,3634=>423,3635=>452,3636=>0,3637=>0,3638=>0,3639=>0,3640=>0,3641=>0,3642=>0,3647=>665,3648=>357,3649=>624,3650=>529,3651=>486,3652=>475,3653=>423,3654=>500,3655=>0,3656=>0,3657=>0,3658=>0,3659=>0,3660=>0,3661=>0,3662=>0,3663=>657,3664=>548,3665=>548,3666=>592,3667=>614,3668=>631,3669=>643,3670=>508,3671=>744,3672=>622,3673=>585,3674=>721,3675=>1381,4256=>475,4257=>469,4258=>573,4259=>650,4260=>502,4261=>506,4262=>481,4263=>746,4264=>491,4265=>495,4266=>888,4267=>488,4268=>464,4269=>745,4270=>483,4271=>489,4272=>721,4273=>464,4274=>578,4275=>590,4276=>611,4277=>491,4278=>663,4279=>489,4280=>544,4281=>479,4282=>527,4283=>488,4284=>560,4285=>461,4286=>467,4287=>546,4288=>483,4289=>487,4290=>562,4291=>477,4292=>491,4293=>471,4304=>522,4305=>518,4306=>621,4307=>716,4308=>517,4309=>519,4310=>518,4311=>796,4312=>518,4313=>518,4314=>934,4315=>517,4316=>519,4317=>787,4318=>515,4319=>514,4320=>788,4321=>573,4322=>620,4323=>593,4324=>639,4325=>516,4326=>714,4327=>518,4328=>572,4329=>518,4330=>555,4331=>518,4332=>562,4333=>509,4334=>572,4335=>677,4336=>523,4337=>517,4338=>595,4339=>480,4340=>519,4341=>484,4342=>838,4343=>517,4344=>516,4345=>621,4346=>522,4347=>410,4348=>389,5024=>718,5025=>768,5026=>633,5027=>878,5028=>1001,5029=>371,5030=>576,5031=>754,5032=>531,5033=>774,5034=>692,5035=>499,5036=>668,5037=>829,5038=>575,5039=>681,5040=>485,5041=>607,5042=>885,5043=>974,5044=>588,5045=>583,5046=>726,5047=>947,5048=>558,5049=>832,5050=>1096,5051=>780,5052=>595,5053=>869,5054=>752,5055=>710,5056=>761,5057=>802,5058=>760,5059=>656,5060=>655,5061=>982,5062=>684,5063=>801,5064=>805,5065=>1042,5066=>755,5067=>612,5068=>707,5069=>889,5070=>584,5071=>623,5072=>536,5073=>763,5074=>763,5075=>549,5076=>1052,5077=>600,5078=>730,5079=>714,5080=>714,5081=>697,5082=>543,5083=>943,5084=>718,5085=>630,5086=>660,5087=>692,5088=>841,5089=>861,5090=>617,5091=>733,5092=>898,5093=>896,5094=>781,5095=>612,5096=>830,5097=>948,5098=>886,5099=>757,5100=>796,5101=>578,5102=>601,5103=>797,5104=>623,5105=>886,5106=>730,5107=>827,5108=>648,7424=>611,7425=>587,7426=>683,7427=>437,7428=>428,7429=>450,7431=>401,7432=>463,7433=>306,7434=>268,7435=>449,7436=>404,7437=>536,7439=>443,7448=>361,7450=>390,7451=>350,7452=>449,7456=>384,7457=>527,7458=>395,7579=>385,7581=>285,7582=>341,7583=>320,7588=>218,7589=>242,7592=>380,7593=>236,7596=>497,7597=>529,7598=>401,7599=>404,7600=>364,7601=>349,7602=>412,7603=>224,7604=>332,7605=>197,7606=>344,7607=>356,7608=>354,7609=>334,7612=>453,7613=>318,7614=>317,7615=>348,7680=>696,7681=>509,7682=>640,7683=>481,7684=>640,7685=>481,7686=>640,7687=>481,7688=>620,7689=>417,7690=>723,7691=>510,7692=>723,7693=>510,7694=>723,7695=>510,7696=>723,7697=>495,7698=>723,7699=>510,7700=>618,7701=>417,7702=>618,7703=>417,7704=>630,7705=>417,7706=>630,7707=>417,7708=>610,7709=>417,7710=>609,7711=>485,7712=>706,7713=>490,7714=>753,7715=>546,7716=>753,7717=>546,7718=>753,7719=>546,7720=>758,7721=>546,7722=>753,7723=>546,7724=>374,7725=>292,7726=>374,7727=>292,7728=>663,7729=>509,7730=>663,7731=>509,7732=>663,7733=>509,7734=>609,7735=>294,7736=>609,7737=>294,7738=>609,7739=>294,7740=>609,7741=>294,7742=>876,7743=>763,7744=>876,7745=>763,7746=>876,7747=>763,7748=>705,7749=>526,7750=>705,7751=>526,7752=>705,7753=>526,7754=>705,7755=>526,7756=>722,7757=>474,7758=>722,7759=>474,7760=>722,7761=>474,7762=>722,7763=>474,7764=>600,7765=>482,7766=>600,7767=>482,7768=>667,7769=>400,7770=>667,7771=>400,7772=>667,7773=>400,7774=>667,7775=>400,7776=>506,7777=>356,7778=>506,7779=>356,7780=>556,7781=>356,7782=>556,7783=>356,7784=>506,7785=>356,7786=>593,7787=>286,7788=>593,7789=>286,7790=>593,7791=>286,7792=>593,7793=>286,7794=>714,7795=>530,7796=>714,7797=>530,7798=>714,7799=>530,7800=>722,7801=>530,7802=>714,7803=>530,7804=>703,7805=>439,7806=>703,7807=>439,7808=>928,7809=>652,7810=>928,7811=>652,7812=>928,7813=>652,7814=>928,7815=>652,7816=>928,7817=>652,7818=>699,7819=>476,7820=>699,7821=>476,7822=>639,7823=>433,7824=>562,7825=>410,7826=>562,7827=>410,7828=>562,7829=>410,7830=>546,7831=>286,7832=>652,7833=>433,7834=>509,7835=>485,7836=>465,7837=>465,7838=>830,7839=>506,7840=>696,7841=>509,7842=>696,7843=>509,7844=>696,7845=>509,7846=>696,7847=>509,7848=>696,7849=>509,7850=>696,7851=>509,7852=>696,7853=>509,7854=>667,7855=>509,7856=>667,7857=>509,7858=>667,7859=>509,7860=>667,7861=>509,7862=>696,7863=>509,7864=>630,7865=>417,7866=>630,7867=>417,7868=>630,7869=>417,7870=>630,7871=>417,7872=>630,7873=>417,7874=>630,7875=>417,7876=>618,7877=>417,7878=>630,7879=>417,7880=>374,7881=>292,7882=>374,7883=>292,7884=>676,7885=>474,7886=>676,7887=>474,7888=>676,7889=>474,7890=>676,7891=>474,7892=>676,7893=>474,7894=>686,7895=>474,7896=>676,7897=>474,7898=>804,7899=>579,7900=>804,7901=>579,7902=>804,7903=>579,7904=>804,7905=>579,7906=>804,7907=>579,7908=>714,7909=>530,7910=>714,7911=>530,7912=>879,7913=>665,7914=>879,7915=>665,7916=>879,7917=>665,7918=>879,7919=>665,7920=>879,7921=>665,7922=>639,7923=>433,7924=>639,7925=>433,7926=>639,7927=>433,7928=>639,7929=>433,7936=>570,7937=>570,7938=>570,7939=>570,7940=>570,7941=>570,7942=>570,7943=>570,7944=>696,7945=>696,7946=>830,7947=>841,7948=>811,7949=>812,7950=>755,7951=>746,7952=>439,7953=>439,7954=>439,7955=>439,7956=>439,7957=>439,7960=>787,7961=>818,7962=>917,7963=>931,7964=>954,7965=>948,7968=>548,7969=>548,7970=>548,7971=>548,7972=>548,7973=>548,7974=>548,7975=>548,7976=>937,7977=>960,7978=>1073,7979=>1092,7980=>1109,7981=>1115,7982=>1020,7983=>1032,7984=>312,7985=>312,7986=>312,7987=>312,7988=>312,7989=>312,7990=>312,7991=>312,7992=>517,7993=>564,7994=>670,7995=>686,7996=>706,7997=>707,7998=>635,7999=>627,8000=>512,8001=>512,8002=>512,8003=>512,8004=>512,8005=>512,8008=>822,8009=>841,8010=>999,8011=>1031,8012=>963,8013=>971,8016=>536,8017=>536,8018=>536,8019=>536,8020=>536,8021=>536,8022=>536,8023=>536,8025=>949,8027=>1065,8029=>1098,8031=>1017,8032=>687,8033=>687,8034=>687,8035=>687,8036=>687,8037=>687,8038=>687,8039=>687,8040=>885,8041=>919,8042=>1092,8043=>1097,8044=>1058,8045=>1050,8046=>1009,8047=>985,8048=>570,8049=>570,8050=>439,8051=>439,8052=>548,8053=>548,8054=>312,8055=>312,8056=>512,8057=>512,8058=>536,8059=>536,8060=>687,8061=>687,8064=>570,8065=>570,8066=>570,8067=>570,8068=>570,8069=>570,8070=>570,8071=>570,8072=>842,8073=>847,8074=>981,8075=>991,8076=>957,8077=>955,8078=>897,8079=>893,8080=>548,8081=>548,8082=>548,8083=>548,8084=>548,8085=>548,8086=>548,8087=>548,8088=>1042,8089=>1066,8090=>1188,8091=>1199,8092=>1206,8093=>1211,8094=>1124,8095=>1129,8096=>687,8097=>687,8098=>687,8099=>687,8100=>687,8101=>687,8102=>687,8103=>687,8104=>1030,8105=>1066,8106=>1234,8107=>1247,8108=>1199,8109=>1194,8110=>1147,8111=>1135,8112=>570,8113=>570,8114=>570,8115=>570,8116=>570,8118=>570,8119=>570,8120=>696,8121=>696,8122=>696,8123=>696,8124=>835,8125=>250,8126=>0,8127=>250,8128=>500,8129=>400,8130=>548,8131=>548,8132=>548,8134=>548,8135=>548,8136=>737,8137=>762,8138=>883,8139=>919,8140=>859,8141=>500,8142=>500,8143=>500,8144=>312,8145=>312,8146=>312,8147=>312,8150=>312,8151=>312,8152=>389,8153=>389,8154=>519,8155=>552,8157=>500,8158=>500,8159=>500,8160=>536,8161=>536,8162=>536,8163=>536,8164=>513,8165=>513,8166=>536,8167=>536,8168=>710,8169=>710,8170=>895,8171=>890,8172=>801,8173=>550,8174=>550,8175=>250,8178=>687,8179=>687,8180=>687,8182=>687,8183=>687,8184=>814,8185=>776,8186=>883,8187=>864,8188=>882,8189=>500,8190=>500,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>500,8200=>250,8201=>166,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>500,8211=>500,8212=>1000,8213=>1000,8214=>333,8215=>478,8216=>250,8217=>250,8218=>250,8219=>250,8220=>500,8221=>500,8222=>500,8223=>500,8224=>500,8225=>500,8226=>500,8227=>500,8228=>250,8229=>500,8230=>850,8231=>0,8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>250,8239=>166,8240=>1000,8241=>1618,8242=>278,8243=>556,8244=>834,8245=>270,8246=>468,8247=>630,8248=>469,8249=>333,8250=>333,8251=>727,8252=>778,8253=>733,8254=>500,8255=>953,8256=>953,8257=>338,8258=>931,8259=>500,8260=>167,8261=>332,8262=>332,8263=>1000,8264=>889,8265=>889,8266=>500,8267=>453,8268=>600,8269=>600,8270=>500,8271=>250,8272=>953,8273=>500,8274=>521,8275=>576,8276=>953,8277=>785,8278=>410,8279=>881,8280=>620,8281=>620,8282=>179,8283=>621,8284=>569,8285=>179,8286=>179,8287=>111,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>300,8305=>219,8308=>300,8309=>300,8310=>300,8311=>300,8312=>300,8313=>300,8314=>300,8315=>300,8316=>300,8317=>216,8318=>216,8319=>362,8320=>300,8321=>274,8322=>300,8323=>300,8324=>300,8325=>300,8326=>300,8327=>300,8328=>300,8329=>300,8330=>300,8331=>300,8332=>300,8333=>216,8334=>216,8336=>350,8337=>296,8338=>320,8339=>337,8340=>298,8352=>667,8353=>667,8354=>667,8355=>667,8356=>500,8357=>742,8358=>722,8359=>1008,8360=>953,8361=>889,8362=>889,8363=>532,8364=>761,8365=>742,8366=>631,8367=>1435,8368=>579,8369=>609,8370=>639,8371=>742,8372=>576,8373=>500,8376=>524,8377=>675,8400=>0,8401=>0,8406=>0,8407=>0,8411=>0,8412=>0,8413=>0,8414=>0,8415=>0,8416=>0,8417=>0,8421=>0,8423=>0,8424=>0,8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,8448=>624,8449=>625,8451=>964,8453=>623,8454=>727,8455=>608,8456=>685,8457=>881,8458=>500,8459=>1035,8462=>546,8463=>543,8464=>972,8465=>613,8466=>820,8467=>457,8468=>849,8470=>846,8471=>888,8472=>649,8475=>769,8476=>926,8478=>721,8479=>725,8480=>991,8481=>1080,8482=>1016,8483=>713,8486=>750,8487=>750,8489=>312,8490=>663,8491=>696,8492=>825,8494=>540,8495=>417,8497=>923,8498=>625,8499=>1253,8501=>537,8502=>537,8503=>350,8504=>537,8506=>942,8507=>1080,8523=>738,8525=>1072,8526=>440,8531=>800,8532=>800,8533=>800,8534=>800,8535=>800,8536=>800,8537=>800,8538=>800,8539=>800,8540=>800,8541=>800,8542=>800,8543=>750,8544=>374,8545=>716,8546=>1039,8547=>1040,8548=>703,8549=>1037,8550=>1345,8551=>1668,8552=>1005,8553=>699,8554=>1009,8555=>1334,8556=>609,8557=>620,8558=>723,8559=>876,8560=>292,8561=>551,8562=>813,8563=>686,8564=>439,8565=>690,8566=>950,8567=>1210,8568=>774,8569=>476,8570=>738,8571=>998,8572=>294,8573=>428,8574=>510,8575=>763,8592=>900,8593=>500,8594=>900,8595=>500,8596=>900,8597=>500,8598=>800,8599=>800,8600=>801,8601=>800,8602=>900,8603=>900,8606=>900,8607=>500,8608=>900,8609=>500,8610=>900,8611=>900,8612=>900,8613=>601,8614=>950,8615=>650,8616=>600,8632=>800,8633=>964,8636=>964,8637=>964,8638=>500,8639=>500,8640=>964,8641=>964,8642=>500,8643=>500,8644=>964,8645=>884,8646=>964,8647=>964,8648=>884,8649=>964,8650=>884,8651=>987,8652=>987,8656=>964,8657=>630,8658=>964,8659=>630,8660=>964,8661=>630,8668=>1100,8669=>1100,8676=>964,8677=>964,8704=>627,8705=>548,8706=>494,8707=>627,8708=>627,8709=>746,8710=>612,8711=>612,8712=>576,8713=>576,8714=>439,8715=>576,8716=>576,8717=>576,8718=>500,8719=>812,8720=>812,8721=>713,8722=>606,8723=>656,8724=>676,8725=>560,8726=>690,8727=>500,8728=>500,8729=>500,8730=>549,8731=>549,8732=>549,8733=>752,8734=>752,8735=>509,8739=>240,8740=>521,8741=>478,8742=>645,8743=>634,8744=>634,8745=>694,8746=>694,8747=>459,8748=>793,8749=>1103,8756=>629,8757=>629,8758=>250,8759=>629,8761=>767,8764=>676,8770=>676,8771=>636,8773=>636,8776=>676,8778=>636,8784=>570,8785=>570,8786=>570,8787=>570,8788=>827,8789=>877,8790=>636,8791=>576,8793=>570,8794=>570,8797=>570,8798=>570,8799=>570,8800=>570,8801=>636,8804=>626,8805=>616,8806=>676,8807=>676,8818=>636,8819=>636,8834=>676,8835=>676,8976=>680,8994=>951,8995=>951,9001=>398,9002=>398,9251=>500,9674=>494,9675=>738,9676=>791,9688=>500,9702=>500,9711=>855,9824=>618,9825=>645,9826=>587,9827=>582,9828=>582,9829=>645,9830=>587,9831=>618,9833=>333,9834=>556,9835=>778,9836=>778,9837=>556,9838=>556,9839=>556,11799=>333,42790=>778,42791=>548,42792=>868,42793=>648,42794=>652,42795=>452,42796=>478,42797=>422,42798=>675,42799=>627,42888=>333,42889=>278,42890=>282,42891=>349,42892=>278,42922=>892,43002=>763,64256=>753,64257=>623,64258=>619,64259=>891,64260=>888,64261=>616,64262=>662,64275=>1105,64276=>1105,64277=>1099,64278=>1105,64279=>1361,64285=>266,64286=>0,64287=>532,64288=>552,64297=>570,64298=>716,64299=>716,64300=>716,64301=>716,64302=>593,64303=>593,64304=>593,64305=>498,64306=>339,64307=>523,64308=>561,64309=>266,64310=>291,64312=>576,64313=>266,64314=>496,64315=>501,64316=>510,64318=>581,64320=>347,64321=>512,64323=>493,64324=>491,64326=>561,64327=>544,64328=>502,64329=>716,64330=>571,64331=>266,64332=>498,64333=>501,64334=>491,64335=>593,65529=>0,65530=>0,65531=>0,65532=>800,65533=>900,65535=>600); // --- EOF --- diff --git a/lib/tcpdf/fonts/freeserifbi.z b/lib/tcpdf/fonts/freeserifbi.z index e46c737394cce882fdfa36fb737a5e4021d17df2..891527b1ff04cfbfd3ff5b423b82ed34b5189109 100644 GIT binary patch literal 341887 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νJDc6dU$fpI2%S44^YS}aJD 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%0D!dhZ)NcL70NG08#F?cbeh7FDdsKFDC%D!& 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�d7dVc#`7 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�Bsuy56z-@U{I8^_f{5+l>TxEN+#1JI$B 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 @v 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

                  QPBiQblXSv?Pk{z?3MCrT82ls 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 diff --git a/lib/tcpdf/fonts/freeserifi.ctg.z b/lib/tcpdf/fonts/freeserifi.ctg.z index e6e8573aec80617d4635f27fd05c53f37996bafb..d953a901fd9b1eb631cda782e69c955587e74e83 100644 GIT binary patch literal 5353 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 literal 4984 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,'FontBBox'=>'[-879 -434 1558 900]','ItalicAngle'=>-16.32768,'Ascent'=>900,'Descent'=>-300,'Leading'=>90,'CapHeight'=>653,'XHeight'=>452,'StemV'=>70,'StemH'=>30,'AvgWidth'=>402,'MaxWidth'=>1601,'MissingWidth'=>700); -$cw=array(0=>700,32=>250,33=>333,34=>420,35=>500,36=>500,37=>833,38=>778,39=>214,40=>333,41=>333,42=>500,43=>675,44=>250,45=>333,46=>250,47=>278,48=>500,49=>500,50=>500,51=>500,52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>333,59=>333,60=>675,61=>675,62=>675,63=>500,64=>920,65=>611,66=>611,67=>667,68=>722,69=>604,70=>611,71=>722,72=>722,73=>339,74=>444,75=>652,76=>556,77=>828,78=>657,79=>722,80=>603,81=>722,82=>616,83=>500,84=>556,85=>722,86=>611,87=>833,88=>611,89=>556,90=>556,91=>389,92=>278,93=>389,94=>422,95=>500,96=>333,97=>500,98=>500,99=>444,100=>500,101=>444,102=>278,103=>500,104=>500,105=>278,106=>278,107=>444,108=>278,109=>722,110=>500,111=>500,112=>500,113=>500,114=>389,115=>389,116=>278,117=>500,118=>444,119=>667,120=>444,121=>444,122=>389,123=>400,124=>275,125=>400,126=>541,160=>250,161=>389,162=>500,163=>500,164=>500,165=>500,166=>275,167=>500,168=>333,169=>760,170=>276,171=>444,172=>675,173=>333,174=>760,175=>333,176=>400,177=>675,178=>300,179=>300,180=>333,181=>500,182=>523,183=>250,184=>333,185=>250,186=>310,187=>444,188=>750,189=>750,190=>750,191=>500,192=>611,193=>611,194=>611,195=>611,196=>611,197=>611,198=>889,199=>667,200=>611,201=>611,202=>611,203=>611,204=>333,205=>333,206=>333,207=>333,208=>722,209=>667,210=>722,211=>722,212=>722,213=>722,214=>722,215=>675,216=>722,217=>722,218=>722,219=>722,220=>722,221=>556,222=>611,223=>500,224=>500,225=>500,226=>500,227=>500,228=>500,229=>500,230=>673,231=>444,232=>444,233=>444,234=>444,235=>444,236=>278,237=>278,238=>278,239=>278,240=>500,241=>500,242=>500,243=>500,244=>500,245=>500,246=>500,247=>675,248=>500,249=>500,250=>500,251=>500,252=>500,253=>444,254=>500,255=>444,256=>611,257=>500,258=>611,259=>500,260=>611,261=>500,262=>667,263=>444,264=>667,265=>444,266=>667,267=>444,268=>667,269=>444,270=>722,271=>611,272=>722,273=>500,274=>611,275=>444,276=>611,277=>444,278=>611,279=>444,280=>611,281=>444,282=>611,283=>444,284=>722,285=>500,286=>722,287=>500,288=>722,289=>500,290=>722,291=>500,292=>722,293=>500,294=>722,295=>500,296=>333,297=>278,298=>333,299=>278,300=>333,301=>278,302=>333,303=>278,304=>333,305=>278,306=>707,307=>506,308=>444,309=>278,310=>667,311=>444,312=>444,313=>556,314=>278,315=>556,316=>278,317=>556,318=>361,319=>556,320=>278,321=>556,322=>278,323=>667,324=>500,325=>667,326=>500,327=>667,328=>500,329=>550,330=>721,331=>500,332=>722,333=>500,334=>722,335=>500,336=>722,337=>500,338=>944,339=>694,340=>611,341=>389,342=>611,343=>389,344=>611,345=>389,346=>500,347=>389,348=>500,349=>389,350=>500,351=>389,352=>500,353=>389,354=>556,355=>278,356=>556,357=>447,358=>556,359=>278,360=>722,361=>500,362=>722,363=>500,364=>722,365=>500,366=>722,367=>500,368=>722,369=>500,370=>722,371=>500,372=>833,373=>667,374=>556,375=>444,376=>556,377=>556,378=>389,379=>556,380=>389,381=>556,382=>389,383=>278,384=>500,385=>781,386=>610,387=>551,388=>611,389=>549,390=>667,391=>866,392=>703,393=>722,394=>892,395=>682,396=>500,397=>520,398=>611,399=>722,400=>518,401=>611,402=>278,403=>863,404=>611,405=>728,406=>278,407=>333,408=>792,409=>444,410=>278,411=>480,412=>900,413=>779,414=>500,415=>722,416=>759,417=>546,418=>908,419=>722,420=>772,421=>500,422=>611,423=>500,424=>389,425=>657,426=>461,427=>313,428=>556,429=>335,430=>556,431=>778,432=>584,433=>747,434=>755,435=>636,436=>549,437=>556,438=>389,439=>525,440=>558,441=>424,442=>416,443=>500,444=>615,445=>439,446=>389,447=>500,448=>275,449=>500,450=>600,451=>333,452=>1268,453=>1091,454=>869,455=>1000,456=>824,457=>506,458=>1101,459=>895,460=>748,461=>611,462=>500,463=>339,464=>278,465=>722,466=>500,467=>722,468=>500,469=>722,470=>500,471=>722,472=>500,473=>722,474=>500,475=>722,476=>500,477=>444,478=>611,479=>500,480=>611,481=>500,482=>889,483=>673,484=>722,485=>500,486=>722,487=>500,488=>652,489=>444,490=>730,491=>500,492=>730,493=>500,494=>525,495=>446,496=>278,497=>1258,498=>1091,499=>859,500=>817,501=>595,502=>1024,503=>607,504=>657,505=>500,506=>611,507=>500,508=>889,509=>673,510=>722,511=>500,512=>611,513=>500,514=>611,515=>500,516=>604,517=>444,518=>604,519=>444,520=>339,521=>278,522=>339,523=>278,524=>722,525=>500,526=>722,527=>500,528=>616,529=>389,530=>616,531=>389,532=>722,533=>500,534=>722,535=>500,536=>500,537=>389,538=>556,539=>278,540=>424,541=>465,542=>722,543=>500,544=>781,545=>588,546=>568,547=>468,548=>611,549=>444,550=>611,551=>500,552=>604,553=>444,554=>722,555=>500,556=>722,557=>500,558=>722,559=>500,560=>722,561=>500,562=>556,563=>444,564=>405,565=>597,566=>377,567=>278,568=>775,569=>767,570=>722,571=>667,572=>444,573=>611,574=>611,575=>389,576=>444,577=>444,578=>444,579=>667,580=>750,581=>697,582=>611,583=>444,584=>389,585=>278,586=>796,587=>590,588=>667,589=>333,590=>722,591=>500,592=>500,593=>564,594=>564,595=>500,596=>444,597=>444,598=>524,599=>559,600=>444,601=>444,602=>722,603=>416,604=>426,605=>674,606=>454,607=>353,608=>624,609=>500,610=>452,611=>500,612=>582,613=>500,614=>500,615=>500,616=>278,617=>306,618=>278,619=>278,620=>278,621=>364,622=>556,623=>722,624=>778,625=>778,626=>614,627=>599,628=>500,629=>500,630=>668,631=>693,632=>640,633=>389,634=>389,635=>444,636=>389,637=>333,638=>333,639=>333,640=>434,641=>456,642=>389,643=>278,644=>500,645=>466,646=>500,647=>278,648=>278,649=>500,650=>517,651=>500,652=>444,653=>667,654=>444,655=>510,656=>510,657=>432,658=>446,659=>439,660=>444,661=>444,662=>444,663=>444,664=>722,665=>402,666=>454,667=>665,668=>476,669=>347,670=>444,671=>363,672=>590,673=>444,674=>444,675=>798,676=>795,677=>805,678=>554,679=>561,680=>678,681=>614,682=>554,683=>554,684=>500,685=>500,686=>611,687=>716,688=>300,689=>300,690=>258,691=>278,692=>278,693=>309,694=>306,695=>432,696=>310,697=>250,698=>408,699=>333,700=>333,701=>333,702=>333,703=>333,704=>258,705=>258,706=>374,707=>374,708=>383,709=>383,710=>333,711=>333,712=>250,713=>333,714=>333,715=>333,716=>250,717=>333,718=>333,719=>333,720=>278,721=>278,722=>333,723=>333,724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,731=>333,732=>333,733=>333,734=>336,735=>352,736=>311,737=>200,738=>243,739=>328,740=>300,741=>460,742=>460,743=>460,744=>460,745=>460,746=>477,747=>475,748=>339,749=>330,750=>444,751=>383,752=>383,753=>294,754=>294,755=>327,756=>261,757=>437,758=>437,759=>333,760=>278,761=>175,762=>175,763=>175,764=>175,765=>337,766=>337,767=>326,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,859=>0,860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,867=>0,868=>0,869=>0,870=>0,871=>0,872=>0,873=>0,874=>0,875=>0,876=>0,877=>0,878=>0,879=>0,884=>199,885=>199,890=>332,894=>333,900=>257,901=>333,902=>661,903=>250,904=>841,905=>950,906=>559,908=>815,910=>877,911=>899,912=>270,913=>661,914=>581,915=>611,916=>660,917=>611,918=>606,919=>742,920=>672,921=>333,922=>667,923=>641,924=>833,925=>657,926=>678,927=>682,928=>749,929=>611,931=>657,932=>596,933=>676,934=>722,935=>611,936=>812,937=>743,938=>333,939=>696,940=>564,941=>416,942=>506,943=>270,944=>504,945=>564,946=>509,947=>496,948=>520,949=>416,950=>398,951=>506,952=>533,953=>270,954=>491,955=>488,956=>501,957=>486,958=>430,959=>510,960=>608,961=>506,962=>423,963=>524,964=>425,965=>504,966=>618,967=>459,968=>693,969=>693,970=>270,971=>504,972=>510,973=>504,974=>693,976=>534,977=>587,978=>620,979=>820,980=>620,981=>640,982=>684,983=>504,984=>555,985=>534,986=>548,987=>496,988=>610,989=>470,990=>633,991=>410,992=>687,993=>544,1008=>534,1009=>534,1010=>485,1011=>278,1012=>722,1013=>280,1014=>280,1015=>610,1016=>500,1017=>704,1018=>832,1019=>703,1020=>533,1021=>704,1022=>704,1023=>704,1024=>604,1025=>604,1026=>668,1027=>611,1028=>666,1029=>500,1030=>339,1031=>339,1032=>444,1033=>972,1034=>977,1035=>703,1036=>664,1037=>720,1038=>728,1039=>728,1040=>611,1041=>610,1042=>611,1043=>611,1044=>682,1045=>604,1046=>976,1047=>592,1048=>720,1049=>720,1050=>664,1051=>719,1052=>828,1053=>722,1054=>722,1055=>749,1056=>603,1057=>667,1058=>556,1059=>728,1060=>722,1061=>611,1062=>728,1063=>666,1064=>997,1065=>1005,1066=>710,1067=>891,1068=>594,1069=>632,1070=>1024,1071=>696,1072=>500,1073=>500,1074=>442,1075=>344,1076=>503,1077=>440,1078=>932,1079=>402,1080=>500,1081=>500,1082=>491,1083=>487,1084=>624,1085=>500,1086=>500,1087=>500,1088=>500,1089=>441,1090=>722,1091=>500,1092=>741,1093=>444,1094=>500,1095=>500,1096=>750,1097=>750,1098=>545,1099=>683,1100=>433,1101=>432,1102=>700,1103=>503,1104=>440,1105=>440,1106=>500,1107=>344,1108=>442,1109=>389,1110=>278,1111=>278,1112=>278,1113=>686,1114=>696,1115=>500,1116=>491,1117=>500,1118=>500,1119=>500,1120=>964,1121=>684,1122=>708,1123=>690,1124=>975,1125=>646,1126=>800,1127=>628,1128=>1096,1129=>795,1130=>952,1131=>730,1132=>1260,1133=>892,1134=>574,1135=>400,1136=>812,1137=>694,1138=>721,1139=>500,1140=>745,1141=>533,1142=>745,1143=>533,1144=>1193,1145=>967,1146=>868,1147=>602,1148=>964,1149=>684,1150=>964,1151=>684,1152=>548,1153=>443,1154=>320,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,1162=>720,1163=>500,1164=>602,1165=>433,1166=>611,1167=>500,1168=>552,1169=>424,1170=>593,1171=>424,1172=>611,1173=>432,1174=>992,1175=>932,1176=>592,1177=>396,1178=>681,1179=>491,1180=>700,1181=>532,1182=>664,1183=>491,1184=>776,1185=>690,1186=>729,1187=>500,1188=>908,1189=>660,1190=>1034,1191=>694,1192=>730,1193=>543,1194=>666,1195=>443,1196=>556,1197=>775,1198=>556,1199=>574,1200=>555,1201=>574,1202=>660,1203=>443,1204=>798,1205=>581,1206=>674,1207=>500,1208=>690,1209=>516,1210=>640,1211=>500,1212=>785,1213=>558,1214=>785,1215=>558,1216=>339,1217=>976,1218=>932,1219=>664,1220=>491,1221=>719,1222=>487,1223=>722,1224=>500,1225=>722,1226=>500,1227=>666,1228=>500,1229=>828,1230=>624,1231=>339,1232=>611,1233=>500,1234=>611,1235=>500,1236=>889,1237=>673,1238=>604,1239=>444,1240=>722,1241=>444,1242=>722,1243=>444,1244=>976,1245=>932,1246=>592,1247=>402,1248=>525,1249=>446,1250=>720,1251=>500,1252=>720,1253=>500,1254=>722,1255=>500,1256=>722,1257=>500,1258=>722,1259=>500,1260=>632,1261=>432,1262=>728,1263=>500,1264=>728,1265=>500,1266=>728,1267=>500,1268=>666,1269=>500,1270=>611,1271=>424,1272=>891,1273=>683,1296=>532,1297=>409,1298=>719,1299=>487,1306=>722,1307=>500,1308=>833,1309=>656,1310=>664,1311=>491,1329=>794,1330=>712,1331=>782,1332=>854,1333=>711,1334=>702,1335=>707,1336=>655,1337=>777,1338=>782,1339=>710,1340=>663,1341=>830,1342=>917,1343=>672,1344=>469,1345=>666,1346=>858,1347=>685,1348=>856,1349=>618,1350=>858,1351=>709,1352=>719,1353=>714,1354=>731,1355=>702,1356=>874,1357=>719,1358=>844,1359=>519,1360=>703,1361=>608,1362=>586,1363=>750,1364=>780,1365=>714,1366=>684,1369=>120,1370=>120,1371=>269,1372=>307,1373=>241,1374=>312,1375=>300,1377=>786,1378=>506,1379=>542,1380=>541,1381=>506,1382=>503,1383=>478,1384=>499,1385=>541,1386=>539,1387=>508,1388=>289,1389=>750,1390=>540,1391=>513,1392=>508,1393=>503,1394=>531,1395=>518,1396=>500,1397=>243,1398=>473,1399=>406,1400=>499,1401=>407,1402=>793,1403=>414,1404=>463,1405=>500,1406=>516,1407=>758,1408=>504,1409=>466,1410=>288,1411=>758,1412=>510,1413=>501,1414=>562,1415=>543,1417=>278,1418=>280,1425=>0,1426=>0,1427=>0,1428=>0,1429=>0,1430=>0,1431=>418,1432=>0,1433=>0,1434=>0,1435=>0,1436=>0,1437=>0,1438=>0,1439=>0,1440=>0,1441=>0,1442=>0,1443=>0,1444=>0,1445=>0,1446=>0,1447=>0,1448=>0,1449=>0,1450=>0,1451=>0,1452=>0,1453=>0,1454=>0,1455=>0,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0,1467=>0,1468=>0,1469=>0,1470=>440,1471=>0,1472=>126,1473=>0,1474=>0,1475=>418,1476=>0,1477=>0,1478=>350,1479=>0,1488=>537,1489=>537,1490=>350,1491=>537,1492=>537,1493=>350,1494=>350,1495=>537,1496=>537,1497=>350,1498=>537,1499=>537,1500=>537,1501=>537,1502=>537,1503=>350,1504=>350,1505=>537,1506=>537,1507=>537,1508=>537,1509=>537,1510=>537,1511=>537,1512=>537,1513=>537,1514=>537,1520=>537,1521=>537,1522=>537,1523=>396,1524=>396,2404=>318,2405=>446,2433=>0,2434=>300,2435=>312,2437=>594,2438=>776,2439=>469,2440=>513,2441=>535,2442=>561,2443=>604,2444=>481,2447=>580,2448=>604,2451=>540,2452=>620,2453=>570,2454=>485,2455=>484,2456=>471,2457=>457,2458=>408,2459=>452,2460=>591,2461=>551,2462=>771,2463=>414,2464=>404,2465=>522,2466=>415,2467=>450,2468=>551,2469=>477,2470=>478,2471=>449,2472=>448,2474=>535,2475=>611,2476=>443,2477=>534,2478=>492,2479=>474,2480=>442,2482=>542,2486=>507,2487=>467,2488=>523,2489=>419,2492=>0,2493=>419,2494=>202,2495=>189,2496=>202,2497=>0,2498=>0,2499=>0,2500=>0,2503=>294,2504=>289,2507=>774,2508=>825,2509=>0,2510=>356,2519=>219,2524=>523,2525=>420,2527=>469,2528=>604,2529=>481,2530=>0,2531=>0,2534=>500,2535=>437,2536=>479,2537=>507,2538=>497,2539=>500,2540=>482,2541=>503,2542=>517,2543=>481,2544=>443,2545=>443,2546=>429,2547=>383,2548=>432,2549=>478,2550=>539,2551=>158,2552=>365,2553=>280,2554=>357,3585=>512,3586=>453,3587=>512,3588=>519,3589=>529,3590=>561,3591=>411,3592=>437,3593=>552,3594=>452,3595=>509,3596=>707,3597=>707,3598=>574,3599=>570,3600=>406,3601=>607,3602=>686,3603=>749,3604=>494,3605=>497,3606=>509,3607=>552,3608=>461,3609=>565,3610=>527,3611=>523,3612=>556,3613=>551,3614=>570,3615=>570,3616=>571,3617=>531,3618=>493,3619=>433,3620=>513,3621=>491,3622=>571,3623=>439,3624=>510,3625=>594,3626=>484,3627=>554,3628=>616,3629=>493,3630=>496,3631=>417,3632=>392,3633=>0,3634=>366,3635=>366,3636=>0,3637=>0,3638=>0,3639=>0,3640=>0,3641=>0,3642=>0,3647=>662,3648=>297,3649=>544,3650=>298,3651=>329,3652=>328,3653=>326,3654=>488,3655=>0,3656=>0,3657=>0,3658=>0,3659=>0,3660=>0,3661=>0,3662=>0,3663=>725,3664=>624,3665=>624,3666=>624,3667=>624,3668=>624,3669=>624,3670=>624,3671=>624,3672=>624,3673=>624,3674=>645,3675=>872,4256=>453,4257=>448,4258=>546,4259=>619,4260=>478,4261=>481,4262=>459,4263=>707,4264=>467,4265=>471,4266=>842,4267=>464,4268=>443,4269=>707,4270=>460,4271=>465,4272=>686,4273=>440,4274=>550,4275=>561,4276=>580,4277=>467,4278=>630,4279=>466,4280=>517,4281=>456,4282=>502,4283=>464,4284=>534,4285=>440,4286=>443,4287=>522,4288=>460,4289=>463,4290=>536,4291=>455,4292=>468,4293=>449,4304=>454,4305=>452,4306=>544,4307=>629,4308=>451,4309=>452,4310=>452,4311=>702,4312=>451,4313=>452,4314=>820,4315=>451,4316=>453,4317=>695,4318=>449,4319=>448,4320=>694,4321=>501,4322=>544,4323=>517,4324=>560,4325=>450,4326=>627,4327=>452,4328=>491,4329=>452,4330=>485,4331=>452,4332=>485,4333=>443,4334=>500,4335=>582,4336=>455,4337=>451,4338=>480,4339=>414,4340=>453,4341=>418,4342=>741,4343=>452,4344=>452,4345=>544,4346=>454,4347=>410,4348=>339,5024=>711,5025=>678,5026=>604,5027=>667,5028=>796,5029=>301,5030=>516,5031=>544,5032=>457,5033=>716,5034=>703,5035=>383,5036=>628,5037=>709,5038=>455,5039=>601,5040=>472,5041=>574,5042=>730,5043=>939,5044=>498,5045=>528,5046=>667,5047=>891,5048=>505,5049=>792,5050=>957,5051=>725,5052=>595,5053=>733,5054=>698,5055=>638,5056=>720,5057=>732,5058=>624,5059=>638,5060=>565,5061=>903,5062=>655,5063=>681,5064=>675,5065=>949,5066=>683,5067=>547,5068=>693,5069=>732,5070=>529,5071=>569,5072=>536,5073=>677,5074=>631,5075=>495,5076=>973,5077=>543,5078=>607,5079=>652,5080=>652,5081=>693,5082=>514,5083=>803,5084=>658,5085=>597,5086=>627,5087=>659,5088=>679,5089=>706,5090=>563,5091=>618,5092=>767,5093=>776,5094=>731,5095=>492,5096=>808,5097=>823,5098=>796,5099=>689,5100=>716,5101=>518,5102=>521,5103=>719,5104=>563,5105=>776,5106=>634,5107=>822,5108=>621,7680=>611,7681=>500,7682=>611,7683=>500,7684=>611,7685=>500,7686=>611,7687=>500,7688=>667,7689=>444,7690=>722,7691=>500,7692=>722,7693=>500,7694=>722,7695=>500,7696=>722,7697=>500,7698=>722,7699=>500,7700=>611,7701=>444,7702=>611,7703=>444,7704=>604,7705=>444,7706=>604,7707=>444,7708=>604,7709=>444,7710=>611,7711=>278,7712=>722,7713=>500,7714=>722,7715=>500,7716=>722,7717=>500,7718=>722,7719=>500,7720=>722,7721=>500,7722=>722,7723=>500,7724=>339,7725=>278,7726=>333,7727=>278,7728=>652,7729=>444,7730=>652,7731=>444,7732=>652,7733=>444,7734=>556,7735=>278,7736=>556,7737=>278,7738=>556,7739=>278,7740=>556,7741=>278,7742=>828,7743=>722,7744=>828,7745=>722,7746=>828,7747=>722,7748=>657,7749=>500,7750=>657,7751=>500,7752=>657,7753=>500,7754=>657,7755=>500,7756=>722,7757=>500,7758=>722,7759=>500,7760=>722,7761=>500,7762=>722,7763=>500,7764=>603,7765=>500,7766=>603,7767=>500,7768=>616,7769=>389,7770=>616,7771=>389,7772=>616,7773=>389,7774=>616,7775=>389,7776=>500,7777=>389,7778=>500,7779=>389,7780=>500,7781=>389,7782=>500,7783=>389,7784=>500,7785=>389,7786=>556,7787=>278,7788=>556,7789=>278,7790=>556,7791=>278,7792=>556,7793=>278,7794=>722,7795=>500,7796=>722,7797=>500,7798=>722,7799=>500,7800=>722,7801=>500,7802=>722,7803=>500,7804=>611,7805=>444,7806=>611,7807=>444,7808=>833,7809=>667,7810=>833,7811=>667,7812=>833,7813=>667,7814=>833,7815=>667,7816=>833,7817=>667,7818=>611,7819=>444,7820=>611,7821=>444,7822=>556,7823=>444,7824=>556,7825=>389,7826=>556,7827=>389,7828=>556,7829=>389,7830=>500,7831=>278,7832=>667,7833=>444,7834=>444,7835=>278,7836=>333,7837=>278,7838=>659,7839=>534,7840=>611,7841=>500,7842=>611,7843=>500,7844=>611,7845=>500,7846=>611,7847=>500,7848=>611,7849=>500,7850=>611,7851=>500,7852=>611,7853=>500,7854=>611,7855=>500,7856=>611,7857=>500,7858=>611,7859=>500,7860=>611,7861=>500,7862=>611,7863=>500,7864=>604,7865=>444,7866=>604,7867=>444,7868=>604,7869=>444,7870=>611,7871=>444,7872=>611,7873=>444,7874=>611,7875=>444,7876=>611,7877=>444,7878=>604,7879=>444,7880=>339,7881=>278,7882=>339,7883=>278,7884=>722,7885=>500,7886=>722,7887=>500,7888=>722,7889=>500,7890=>722,7891=>500,7892=>722,7893=>500,7894=>722,7895=>500,7896=>722,7897=>500,7898=>759,7899=>546,7900=>759,7901=>546,7902=>807,7903=>585,7904=>759,7905=>546,7906=>759,7907=>546,7908=>722,7909=>500,7910=>722,7911=>500,7912=>778,7913=>584,7914=>778,7915=>584,7916=>807,7917=>585,7918=>778,7919=>584,7920=>778,7921=>584,7922=>556,7923=>444,7924=>556,7925=>444,7926=>556,7927=>444,7928=>556,7929=>444,7936=>564,7937=>564,7938=>564,7939=>564,7940=>564,7941=>564,7942=>564,7943=>564,7944=>661,7945=>661,7946=>794,7947=>811,7948=>792,7949=>803,7950=>661,7951=>648,7952=>416,7953=>416,7954=>416,7955=>416,7956=>416,7957=>416,7960=>740,7961=>795,7962=>923,7963=>940,7964=>996,7965=>986,7968=>506,7969=>506,7970=>506,7971=>506,7972=>506,7973=>506,7974=>506,7975=>506,7976=>879,7977=>901,7978=>1036,7979=>1035,7980=>1099,7981=>1100,7982=>954,7983=>959,7984=>270,7985=>270,7986=>267,7987=>267,7988=>267,7989=>267,7990=>267,7991=>267,7992=>490,7993=>529,7994=>655,7995=>654,7996=>705,7997=>713,7998=>570,7999=>573,8000=>558,8001=>510,8002=>510,8003=>510,8004=>510,8005=>510,8008=>797,8009=>867,8010=>1026,8011=>1022,8012=>993,8013=>1017,8016=>504,8017=>504,8018=>504,8019=>504,8020=>504,8021=>504,8022=>504,8023=>504,8025=>916,8027=>1062,8029=>1100,8031=>933,8032=>693,8033=>693,8034=>693,8035=>693,8036=>693,8037=>693,8038=>693,8039=>693,8040=>852,8041=>909,8042=>1072,8043=>1072,8044=>1032,8045=>1047,8046=>930,8047=>946,8048=>564,8049=>564,8050=>416,8051=>416,8052=>506,8053=>506,8054=>270,8055=>270,8056=>510,8057=>510,8058=>504,8059=>504,8060=>693,8061=>693,8064=>564,8065=>564,8066=>564,8067=>564,8068=>564,8069=>564,8070=>564,8071=>564,8072=>821,8073=>854,8074=>998,8075=>1011,8076=>992,8077=>1001,8078=>866,8079=>858,8080=>506,8081=>506,8082=>506,8083=>506,8084=>506,8085=>506,8086=>506,8087=>506,8088=>999,8089=>1044,8090=>1179,8091=>1165,8092=>1227,8093=>1229,8094=>1080,8095=>1085,8096=>693,8097=>693,8098=>693,8099=>693,8100=>693,8101=>693,8102=>693,8103=>693,8104=>1037,8105=>1113,8106=>1264,8107=>1264,8108=>1219,8109=>1241,8110=>1120,8111=>1132,8112=>564,8113=>564,8114=>564,8115=>564,8116=>564,8118=>564,8119=>564,8120=>661,8121=>661,8122=>661,8123=>661,8124=>831,8125=>192,8126=>332,8127=>500,8128=>500,8129=>534,8130=>506,8131=>506,8132=>506,8134=>506,8135=>506,8136=>611,8137=>816,8138=>889,8139=>908,8140=>881,8141=>500,8142=>500,8143=>500,8144=>270,8145=>270,8146=>270,8147=>270,8150=>270,8151=>270,8152=>333,8153=>333,8154=>497,8155=>521,8157=>500,8158=>500,8159=>500,8160=>504,8161=>504,8162=>504,8163=>504,8164=>506,8165=>506,8166=>504,8167=>504,8168=>676,8169=>676,8170=>905,8171=>901,8172=>783,8173=>333,8174=>333,8175=>500,8178=>693,8179=>693,8180=>693,8182=>693,8183=>693,8184=>907,8185=>833,8186=>963,8187=>875,8188=>952,8189=>500,8190=>500,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>500,8200=>250,8201=>200,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>500,8211=>500,8212=>1000,8213=>1000,8214=>293,8215=>465,8216=>250,8217=>250,8218=>250,8219=>250,8220=>444,8221=>444,8222=>444,8223=>444,8224=>500,8225=>500,8226=>350,8227=>350,8228=>250,8229=>500,8230=>889,8231=>250,8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>250,8240=>1000,8241=>1601,8242=>247,8243=>411,8244=>611,8245=>220,8246=>440,8247=>660,8248=>469,8249=>250,8250=>250,8251=>629,8252=>666,8253=>500,8254=>500,8255=>953,8256=>1000,8257=>314,8258=>931,8259=>333,8260=>167,8261=>480,8262=>480,8263=>1000,8264=>833,8265=>833,8266=>500,8267=>453,8268=>453,8269=>450,8270=>500,8271=>278,8272=>882,8273=>500,8274=>497,8275=>500,8276=>953,8277=>512,8278=>410,8279=>855,8280=>620,8281=>620,8282=>179,8283=>621,8284=>564,8285=>179,8286=>179,8287=>111,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>300,8305=>235,8308=>300,8309=>300,8310=>300,8311=>300,8312=>300,8313=>300,8314=>300,8315=>300,8316=>300,8317=>216,8318=>216,8319=>318,8320=>300,8321=>250,8322=>300,8323=>300,8324=>300,8325=>300,8326=>300,8327=>300,8328=>300,8329=>300,8330=>300,8331=>300,8332=>300,8333=>216,8334=>216,8336=>350,8337=>304,8338=>340,8339=>317,8340=>278,8352=>698,8353=>667,8354=>667,8355=>611,8356=>500,8357=>722,8358=>667,8359=>988,8360=>953,8361=>833,8362=>869,8363=>512,8364=>741,8365=>722,8366=>611,8367=>1340,8368=>489,8369=>589,8370=>619,8371=>722,8372=>556,8373=>611,8374=>408,8376=>524,8400=>0,8401=>0,8402=>0,8403=>0,8404=>0,8405=>0,8406=>0,8407=>0,8408=>0,8409=>0,8410=>0,8411=>0,8412=>0,8413=>0,8414=>0,8415=>0,8416=>0,8417=>0,8418=>0,8419=>0,8420=>0,8421=>0,8422=>0,8423=>0,8424=>0,8425=>0,8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,8432=>0,8448=>604,8449=>605,8450=>674,8451=>954,8452=>556,8453=>573,8454=>667,8455=>518,8456=>667,8457=>822,8458=>490,8459=>824,8460=>663,8461=>818,8462=>500,8463=>500,8464=>578,8465=>613,8466=>715,8467=>417,8468=>777,8469=>751,8470=>783,8471=>792,8472=>832,8473=>589,8474=>729,8475=>892,8476=>711,8477=>755,8478=>616,8479=>610,8480=>879,8481=>1156,8482=>920,8483=>611,8484=>659,8485=>389,8486=>743,8487=>743,8488=>663,8489=>286,8490=>722,8491=>722,8492=>846,8493=>613,8494=>533,8495=>363,8496=>587,8497=>690,8498=>556,8499=>1021,8500=>387,8501=>537,8502=>537,8503=>350,8504=>537,8505=>417,8506=>906,8507=>1155,8508=>655,8510=>586,8511=>722,8513=>663,8514=>485,8515=>485,8516=>637,8522=>516,8523=>778,8525=>906,8526=>378,8531=>750,8532=>750,8533=>750,8534=>750,8535=>750,8536=>750,8537=>750,8538=>750,8539=>750,8540=>750,8541=>750,8542=>750,8543=>750,8544=>339,8545=>608,8546=>877,8547=>940,8548=>611,8549=>910,8550=>1176,8551=>1439,8552=>940,8553=>611,8554=>936,8555=>1204,8556=>556,8557=>667,8558=>722,8559=>828,8560=>278,8561=>526,8562=>774,8563=>712,8564=>444,8565=>702,8566=>950,8567=>1198,8568=>712,8569=>444,8570=>692,8571=>970,8572=>278,8573=>444,8574=>500,8575=>722,8592=>964,8593=>499,8594=>964,8595=>499,8706=>494,8710=>612,8721=>713,8722=>675,8723=>675,8725=>750,8730=>549,8734=>677,8747=>416,8748=>750,8749=>1083,8750=>722,8751=>750,8800=>564,8804=>675,8805=>675,8992=>686,8993=>686,9251=>500,9674=>494,9675=>791,9676=>791,9824=>626,9825=>694,9826=>595,9827=>776,9828=>626,9829=>694,9830=>595,9831=>776,9833=>333,9834=>555,9835=>722,9836=>722,9837=>415,9838=>377,9839=>402,11799=>333,42790=>722,42791=>491,42792=>770,42793=>586,42794=>532,42795=>409,42796=>437,42797=>389,42798=>578,42799=>580,42888=>333,42889=>278,42890=>282,42891=>286,42892=>278,64256=>526,64257=>500,64258=>500,64259=>747,64260=>748,64261=>518,64262=>665,64275=>971,64276=>969,64277=>978,64278=>971,64279=>1219,64285=>350,64286=>0,64287=>537,64288=>537,64297=>564,64298=>537,64299=>537,64300=>537,64301=>537,64302=>537,64303=>537,64304=>537,64305=>537,64306=>350,64307=>537,64308=>537,64309=>350,64310=>350,64312=>537,64313=>350,64314=>537,64315=>537,64316=>537,64318=>537,64320=>350,64321=>537,64323=>537,64324=>537,64326=>537,64327=>537,64328=>537,64329=>537,64330=>537,64331=>350,64332=>537,64333=>537,64334=>537,64335=>537,65533=>900,65535=>700); +$desc=array('Flags'=>96,'FontBBox'=>'[-879 -300 1558 900]','ItalicAngle'=>-16.32768,'Ascent'=>900,'Descent'=>-200,'Leading'=>100,'CapHeight'=>653,'XHeight'=>452,'StemV'=>70,'StemH'=>30,'AvgWidth'=>559,'MaxWidth'=>1601,'MissingWidth'=>600); +$cw=array(0=>600,32=>250,33=>333,34=>333,35=>500,36=>500,37=>833,38=>778,39=>200,40=>333,41=>333,42=>500,43=>675,44=>250,45=>333,46=>250,47=>296,48=>500,49=>500,50=>500,51=>500,52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>250,59=>250,60=>570,61=>664,62=>570,63=>444,64=>780,65=>651,66=>591,67=>611,68=>702,69=>574,70=>576,71=>690,72=>705,73=>322,74=>427,75=>641,76=>568,77=>821,78=>677,79=>656,80=>566,81=>656,82=>616,83=>454,84=>589,85=>706,86=>663,87=>888,88=>665,89=>593,90=>563,91=>389,92=>490,93=>389,94=>422,95=>500,96=>250,97=>498,98=>476,99=>403,100=>500,101=>406,102=>424,103=>440,104=>499,105=>246,106=>285,107=>453,108=>251,109=>725,110=>493,111=>473,112=>469,113=>483,114=>366,115=>345,116=>238,117=>484,118=>456,119=>683,120=>435,121=>462,122=>389,123=>400,124=>275,125=>400,126=>541,160=>250,161=>333,162=>500,163=>500,164=>500,165=>500,166=>275,167=>500,168=>333,169=>760,170=>276,171=>444,172=>675,173=>333,174=>760,175=>333,176=>400,177=>675,178=>300,179=>300,180=>250,181=>500,182=>523,183=>250,184=>250,185=>250,186=>310,187=>444,188=>750,189=>740,190=>750,191=>500,192=>651,193=>651,194=>651,195=>651,196=>651,197=>651,198=>877,199=>611,200=>611,201=>611,202=>611,203=>611,204=>322,205=>322,206=>322,207=>322,208=>702,209=>677,210=>656,211=>656,212=>656,213=>656,214=>656,215=>675,216=>657,217=>706,218=>706,219=>706,220=>706,221=>593,222=>537,223=>569,224=>498,225=>498,226=>498,227=>498,228=>498,229=>498,230=>634,231=>403,232=>406,233=>406,234=>406,235=>406,236=>278,237=>278,238=>278,239=>278,240=>456,241=>493,242=>473,243=>473,244=>473,245=>473,246=>473,247=>675,248=>474,249=>484,250=>484,251=>484,252=>484,253=>462,254=>471,255=>462,256=>651,257=>498,258=>651,259=>498,260=>611,261=>500,262=>611,263=>403,264=>611,265=>403,266=>611,267=>403,268=>611,269=>403,270=>702,271=>625,272=>702,273=>500,274=>611,275=>406,276=>611,277=>406,278=>611,279=>406,280=>611,281=>406,282=>611,283=>406,284=>690,285=>440,286=>690,287=>440,288=>690,289=>440,290=>690,291=>440,292=>705,293=>499,294=>722,295=>500,296=>333,297=>278,298=>333,299=>278,300=>333,301=>278,302=>343,303=>278,304=>333,305=>278,306=>707,307=>452,308=>427,309=>328,310=>667,311=>453,312=>454,313=>568,314=>251,315=>568,316=>251,317=>568,318=>377,319=>568,320=>343,321=>564,322=>278,323=>677,324=>493,325=>677,326=>493,327=>677,328=>493,329=>542,330=>696,331=>500,332=>656,333=>473,334=>656,335=>473,336=>656,337=>473,338=>891,339=>653,340=>616,341=>366,342=>616,343=>366,344=>616,345=>366,346=>454,347=>345,348=>454,349=>345,350=>464,351=>345,352=>454,353=>345,354=>556,355=>238,356=>589,357=>364,358=>556,359=>248,360=>706,361=>484,362=>706,363=>484,364=>706,365=>484,366=>706,367=>484,368=>706,369=>484,370=>698,371=>484,372=>888,373=>683,374=>593,375=>462,376=>593,377=>563,378=>389,379=>563,380=>389,381=>563,382=>389,383=>464,384=>479,385=>738,386=>583,387=>481,388=>585,389=>509,390=>627,391=>853,392=>578,393=>702,394=>892,395=>669,396=>540,397=>472,398=>611,399=>585,400=>518,401=>611,402=>464,403=>863,404=>653,405=>708,406=>278,407=>333,408=>792,409=>444,410=>262,411=>480,412=>900,413=>768,414=>500,415=>661,416=>771,417=>576,418=>908,419=>722,420=>698,421=>483,422=>611,423=>500,424=>369,425=>653,426=>461,427=>313,428=>556,429=>335,430=>556,431=>801,432=>605,433=>747,434=>691,435=>663,436=>578,437=>556,438=>389,439=>518,440=>558,441=>434,442=>416,443=>500,444=>615,445=>439,446=>389,447=>473,448=>235,449=>360,450=>600,451=>333,452=>1268,453=>1091,454=>869,455=>1000,456=>824,457=>506,458=>1034,459=>895,460=>748,461=>651,462=>498,463=>322,464=>278,465=>656,466=>473,467=>706,468=>484,469=>706,470=>484,471=>698,472=>484,473=>698,474=>484,475=>698,476=>484,477=>406,478=>651,479=>498,480=>651,481=>498,482=>877,483=>634,484=>712,485=>490,486=>690,487=>440,488=>641,489=>453,490=>670,491=>473,492=>670,493=>473,494=>518,495=>446,496=>278,497=>1258,498=>1091,499=>859,500=>690,501=>440,502=>936,503=>537,504=>677,505=>493,506=>611,507=>498,508=>877,509=>634,510=>657,511=>474,512=>651,513=>498,514=>651,515=>498,516=>574,517=>406,518=>574,519=>406,520=>322,521=>278,522=>322,523=>278,524=>656,525=>473,526=>656,527=>473,528=>616,529=>366,530=>616,531=>366,532=>706,533=>484,534=>706,535=>484,536=>454,537=>345,538=>589,539=>238,540=>434,541=>465,542=>705,543=>499,544=>697,545=>558,546=>540,547=>508,548=>591,549=>404,550=>651,551=>498,552=>577,553=>406,554=>656,555=>473,556=>656,557=>473,558=>656,559=>473,560=>656,561=>473,562=>593,563=>462,564=>334,565=>527,566=>377,567=>278,568=>779,569=>768,570=>651,571=>611,572=>407,573=>564,574=>556,575=>350,576=>414,577=>436,578=>444,579=>588,580=>722,581=>657,582=>604,583=>406,584=>444,585=>348,586=>726,587=>550,588=>616,589=>333,590=>556,591=>470,592=>516,593=>564,594=>564,595=>500,596=>403,597=>407,598=>524,599=>647,600=>406,601=>406,602=>722,603=>431,604=>435,605=>664,606=>462,607=>353,608=>650,609=>480,610=>482,611=>491,612=>602,613=>499,614=>497,615=>485,616=>278,617=>278,618=>278,619=>378,620=>376,621=>364,622=>616,623=>761,624=>766,625=>768,626=>590,627=>569,628=>530,629=>500,630=>667,631=>700,632=>633,633=>366,634=>389,635=>444,636=>389,637=>393,638=>415,639=>383,640=>434,641=>456,642=>354,643=>464,644=>535,645=>496,646=>585,647=>238,648=>278,649=>510,650=>549,651=>464,652=>456,653=>683,654=>438,655=>490,656=>510,657=>492,658=>446,659=>479,660=>436,661=>438,662=>438,663=>454,664=>656,665=>402,666=>462,667=>695,668=>476,669=>307,670=>453,671=>383,672=>652,673=>414,674=>404,675=>745,676=>762,677=>799,678=>551,679=>542,680=>644,681=>756,682=>506,683=>481,684=>500,685=>500,686=>611,687=>716,688=>330,689=>330,690=>178,691=>248,692=>248,693=>309,694=>306,695=>405,696=>260,697=>250,698=>400,699=>200,700=>200,701=>200,702=>250,703=>250,704=>250,705=>250,706=>333,707=>333,708=>333,709=>333,710=>333,711=>333,712=>250,713=>333,714=>250,715=>250,716=>250,717=>333,718=>250,719=>250,720=>250,721=>250,722=>250,723=>250,724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,731=>333,732=>333,733=>333,734=>400,735=>333,736=>311,737=>200,738=>243,739=>328,740=>300,741=>500,742=>500,743=>500,744=>500,745=>500,746=>500,747=>500,748=>333,749=>333,750=>333,751=>333,752=>333,753=>333,754=>333,755=>333,756=>250,757=>333,758=>333,759=>333,760=>250,761=>200,762=>200,763=>200,764=>200,765=>333,766=>333,767=>333,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,859=>0,860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,867=>0,868=>0,869=>0,870=>0,871=>0,872=>0,873=>0,874=>0,875=>0,876=>0,877=>0,878=>0,879=>0,884=>199,885=>199,890=>332,894=>333,900=>257,901=>333,902=>661,903=>250,904=>794,905=>904,906=>524,908=>815,910=>837,911=>879,912=>270,913=>661,914=>581,915=>594,916=>660,917=>611,918=>606,919=>705,920=>661,921=>333,922=>641,923=>661,924=>821,925=>677,926=>678,927=>656,928=>697,929=>566,931=>653,932=>596,933=>679,934=>751,935=>665,936=>821,937=>767,938=>333,939=>696,940=>564,941=>431,942=>539,943=>270,944=>540,945=>564,946=>509,947=>496,948=>518,949=>431,950=>408,951=>539,952=>523,953=>270,954=>491,955=>488,956=>501,957=>515,958=>440,959=>524,960=>608,961=>506,962=>423,963=>532,964=>477,965=>540,966=>628,967=>500,968=>728,969=>701,970=>310,971=>540,972=>524,973=>540,974=>701,976=>537,977=>632,978=>630,979=>820,980=>680,981=>612,982=>704,983=>529,984=>555,985=>548,986=>588,987=>498,988=>610,989=>478,990=>653,991=>410,992=>719,993=>544,1008=>563,1009=>546,1010=>495,1011=>285,1012=>661,1013=>280,1014=>280,1015=>540,1016=>500,1017=>704,1018=>832,1019=>703,1020=>533,1021=>704,1022=>704,1023=>704,1024=>574,1025=>574,1026=>668,1027=>594,1028=>634,1029=>454,1030=>322,1031=>322,1032=>427,1033=>992,1034=>963,1035=>703,1036=>644,1037=>720,1038=>739,1039=>728,1040=>651,1041=>583,1042=>591,1043=>594,1044=>668,1045=>574,1046=>987,1047=>592,1048=>720,1049=>720,1050=>644,1051=>695,1052=>821,1053=>705,1054=>656,1055=>697,1056=>566,1057=>611,1058=>589,1059=>739,1060=>751,1061=>665,1062=>696,1063=>642,1064=>973,1065=>983,1066=>716,1067=>877,1068=>580,1069=>594,1070=>984,1071=>683,1072=>498,1073=>475,1074=>418,1075=>354,1076=>493,1077=>406,1078=>914,1079=>412,1080=>484,1081=>484,1082=>483,1083=>504,1084=>641,1085=>492,1086=>473,1087=>493,1088=>469,1089=>436,1090=>725,1091=>478,1092=>735,1093=>435,1094=>485,1095=>484,1096=>734,1097=>735,1098=>545,1099=>677,1100=>437,1101=>432,1102=>671,1103=>519,1104=>406,1105=>406,1106=>510,1107=>354,1108=>442,1109=>345,1110=>246,1111=>278,1112=>285,1113=>707,1114=>696,1115=>498,1116=>483,1117=>484,1118=>478,1119=>491,1120=>964,1121=>679,1122=>708,1123=>688,1124=>975,1125=>644,1126=>812,1127=>624,1128=>1096,1129=>791,1130=>964,1131=>738,1132=>1260,1133=>886,1134=>574,1135=>400,1136=>812,1137=>694,1138=>721,1139=>500,1140=>745,1141=>533,1142=>745,1143=>533,1144=>1108,1145=>908,1146=>868,1147=>602,1148=>964,1149=>684,1150=>964,1151=>679,1152=>588,1153=>443,1154=>320,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,1162=>720,1163=>500,1164=>602,1165=>433,1166=>611,1167=>500,1168=>552,1169=>424,1170=>593,1171=>424,1172=>611,1173=>432,1174=>992,1175=>932,1176=>592,1177=>396,1178=>681,1179=>491,1180=>700,1181=>532,1182=>664,1183=>491,1184=>776,1185=>690,1186=>729,1187=>500,1188=>908,1189=>660,1190=>1034,1191=>694,1192=>730,1193=>543,1194=>666,1195=>403,1196=>556,1197=>775,1198=>593,1199=>574,1200=>555,1201=>574,1202=>660,1203=>443,1204=>798,1205=>581,1206=>674,1207=>500,1208=>690,1209=>516,1210=>640,1211=>499,1212=>785,1213=>569,1214=>785,1215=>568,1216=>322,1217=>987,1218=>914,1219=>664,1220=>491,1221=>719,1222=>487,1223=>722,1224=>500,1225=>722,1226=>500,1227=>666,1228=>500,1229=>828,1230=>624,1231=>322,1232=>651,1233=>498,1234=>651,1235=>498,1236=>877,1237=>634,1238=>574,1239=>406,1240=>585,1241=>406,1242=>585,1243=>406,1244=>987,1245=>914,1246=>592,1247=>412,1248=>518,1249=>446,1250=>720,1251=>484,1252=>720,1253=>484,1254=>656,1255=>473,1256=>661,1257=>500,1258=>661,1259=>500,1260=>594,1261=>432,1262=>739,1263=>478,1264=>739,1265=>478,1266=>739,1267=>478,1268=>642,1269=>484,1270=>611,1271=>424,1272=>877,1273=>677,1296=>532,1297=>409,1298=>719,1299=>487,1306=>656,1307=>483,1308=>888,1309=>656,1310=>664,1311=>491,1329=>794,1330=>712,1331=>782,1332=>854,1333=>711,1334=>702,1335=>707,1336=>655,1337=>777,1338=>782,1339=>710,1340=>663,1341=>830,1342=>917,1343=>672,1344=>469,1345=>666,1346=>858,1347=>685,1348=>856,1349=>618,1350=>858,1351=>709,1352=>719,1353=>714,1354=>731,1355=>702,1356=>874,1357=>719,1358=>844,1359=>519,1360=>703,1361=>608,1362=>586,1363=>751,1364=>780,1365=>714,1366=>684,1369=>120,1370=>120,1371=>269,1372=>307,1373=>241,1374=>312,1375=>300,1377=>786,1378=>506,1379=>542,1380=>541,1381=>506,1382=>503,1383=>478,1384=>499,1385=>541,1386=>539,1387=>508,1388=>289,1389=>750,1390=>540,1391=>513,1392=>508,1393=>503,1394=>531,1395=>518,1396=>500,1397=>243,1398=>473,1399=>406,1400=>499,1401=>407,1402=>793,1403=>414,1404=>463,1405=>500,1406=>516,1407=>758,1408=>504,1409=>466,1410=>288,1411=>758,1412=>510,1413=>501,1414=>562,1415=>543,1417=>278,1418=>280,1423=>700,1425=>0,1426=>0,1427=>0,1428=>0,1429=>0,1430=>0,1431=>418,1432=>0,1433=>0,1434=>0,1435=>0,1436=>0,1437=>0,1438=>0,1439=>0,1440=>0,1441=>0,1442=>0,1443=>0,1444=>0,1445=>0,1446=>0,1447=>0,1448=>0,1449=>0,1450=>0,1451=>0,1452=>0,1453=>0,1454=>0,1455=>0,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0,1467=>0,1468=>0,1469=>0,1470=>370,1471=>0,1472=>126,1473=>0,1474=>0,1475=>418,1476=>0,1477=>0,1478=>350,1479=>0,1488=>537,1489=>537,1490=>350,1491=>537,1492=>537,1493=>350,1494=>350,1495=>537,1496=>537,1497=>350,1498=>537,1499=>537,1500=>537,1501=>537,1502=>537,1503=>350,1504=>350,1505=>537,1506=>537,1507=>537,1508=>537,1509=>537,1510=>537,1511=>537,1512=>537,1513=>537,1514=>537,1520=>537,1521=>537,1522=>537,1523=>396,1524=>396,2404=>318,2405=>446,2433=>0,2434=>300,2435=>312,2437=>594,2438=>776,2439=>469,2440=>513,2441=>535,2442=>561,2443=>604,2444=>481,2447=>580,2448=>604,2451=>540,2452=>620,2453=>570,2454=>485,2455=>484,2456=>471,2457=>457,2458=>408,2459=>452,2460=>591,2461=>551,2462=>771,2463=>414,2464=>404,2465=>522,2466=>415,2467=>450,2468=>551,2469=>477,2470=>478,2471=>449,2472=>448,2474=>535,2475=>611,2476=>443,2477=>534,2478=>492,2479=>474,2480=>442,2482=>542,2486=>507,2487=>467,2488=>523,2489=>419,2492=>0,2493=>419,2494=>202,2495=>189,2496=>202,2497=>0,2498=>0,2499=>0,2500=>0,2503=>294,2504=>289,2507=>774,2508=>825,2509=>0,2510=>356,2519=>219,2524=>523,2525=>420,2527=>469,2528=>604,2529=>481,2530=>0,2531=>0,2534=>500,2535=>437,2536=>479,2537=>507,2538=>497,2539=>500,2540=>482,2541=>503,2542=>517,2543=>481,2544=>443,2545=>443,2546=>429,2547=>383,2548=>432,2549=>478,2550=>539,2551=>158,2552=>365,2553=>280,2554=>357,2555=>344,3585=>512,3586=>453,3587=>512,3588=>519,3589=>529,3590=>561,3591=>411,3592=>437,3593=>552,3594=>452,3595=>509,3596=>707,3597=>707,3598=>574,3599=>570,3600=>406,3601=>607,3602=>686,3603=>749,3604=>494,3605=>497,3606=>509,3607=>552,3608=>461,3609=>565,3610=>527,3611=>523,3612=>556,3613=>551,3614=>570,3615=>570,3616=>571,3617=>531,3618=>493,3619=>433,3620=>513,3621=>491,3622=>571,3623=>439,3624=>510,3625=>594,3626=>484,3627=>554,3628=>616,3629=>493,3630=>496,3631=>417,3632=>392,3633=>0,3634=>366,3635=>366,3636=>0,3637=>0,3638=>0,3639=>0,3640=>0,3641=>0,3642=>0,3647=>662,3648=>297,3649=>544,3650=>298,3651=>329,3652=>328,3653=>326,3654=>488,3655=>0,3656=>0,3657=>0,3658=>0,3659=>0,3660=>0,3661=>0,3662=>0,3663=>725,3664=>624,3665=>624,3666=>624,3667=>624,3668=>624,3669=>624,3670=>624,3671=>624,3672=>624,3673=>624,3674=>645,3675=>872,4256=>453,4257=>448,4258=>546,4259=>619,4260=>478,4261=>481,4262=>459,4263=>707,4264=>467,4265=>471,4266=>842,4267=>464,4268=>443,4269=>707,4270=>460,4271=>465,4272=>686,4273=>440,4274=>550,4275=>561,4276=>580,4277=>467,4278=>630,4279=>466,4280=>517,4281=>456,4282=>502,4283=>464,4284=>534,4285=>440,4286=>443,4287=>522,4288=>460,4289=>463,4290=>536,4291=>455,4292=>468,4293=>449,4304=>454,4305=>452,4306=>544,4307=>629,4308=>451,4309=>452,4310=>452,4311=>702,4312=>451,4313=>452,4314=>820,4315=>451,4316=>453,4317=>695,4318=>449,4319=>448,4320=>694,4321=>501,4322=>544,4323=>517,4324=>560,4325=>450,4326=>627,4327=>452,4328=>491,4329=>452,4330=>485,4331=>452,4332=>485,4333=>443,4334=>500,4335=>582,4336=>455,4337=>451,4338=>480,4339=>414,4340=>453,4341=>418,4342=>741,4343=>452,4344=>452,4345=>544,4346=>454,4347=>410,4348=>339,5024=>711,5025=>678,5026=>604,5027=>667,5028=>796,5029=>301,5030=>516,5031=>544,5032=>457,5033=>716,5034=>703,5035=>383,5036=>628,5037=>709,5038=>455,5039=>601,5040=>472,5041=>574,5042=>730,5043=>939,5044=>498,5045=>528,5046=>667,5047=>891,5048=>505,5049=>792,5050=>957,5051=>725,5052=>595,5053=>733,5054=>698,5055=>638,5056=>720,5057=>732,5058=>624,5059=>638,5060=>565,5061=>903,5062=>655,5063=>681,5064=>675,5065=>949,5066=>683,5067=>547,5068=>693,5069=>732,5070=>529,5071=>569,5072=>536,5073=>677,5074=>631,5075=>495,5076=>973,5077=>543,5078=>607,5079=>652,5080=>652,5081=>693,5082=>514,5083=>803,5084=>658,5085=>597,5086=>627,5087=>659,5088=>679,5089=>706,5090=>563,5091=>618,5092=>767,5093=>776,5094=>731,5095=>492,5096=>808,5097=>823,5098=>796,5099=>689,5100=>716,5101=>518,5102=>521,5103=>719,5104=>563,5105=>776,5106=>634,5107=>822,5108=>621,7424=>416,7425=>587,7426=>703,7427=>410,7428=>428,7429=>450,7431=>401,7432=>435,7433=>246,7434=>268,7435=>449,7436=>364,7437=>536,7439=>443,7448=>361,7450=>390,7451=>380,7452=>449,7456=>384,7457=>527,7458=>395,7552=>500,7579=>335,7581=>285,7582=>312,7583=>280,7588=>188,7589=>212,7592=>230,7593=>236,7596=>497,7597=>529,7598=>421,7599=>404,7600=>364,7601=>329,7602=>412,7603=>234,7604=>282,7605=>217,7606=>384,7607=>356,7608=>344,7609=>334,7612=>403,7613=>318,7614=>297,7615=>318,7680=>651,7681=>498,7682=>591,7683=>476,7684=>591,7685=>476,7686=>591,7687=>476,7688=>611,7689=>403,7690=>702,7691=>500,7692=>702,7693=>500,7694=>702,7695=>500,7696=>693,7697=>500,7698=>702,7699=>500,7700=>577,7701=>406,7702=>577,7703=>406,7704=>574,7705=>406,7706=>574,7707=>406,7708=>577,7709=>406,7710=>576,7711=>424,7712=>690,7713=>440,7714=>705,7715=>499,7716=>705,7717=>499,7718=>705,7719=>499,7720=>697,7721=>498,7722=>705,7723=>499,7724=>322,7725=>246,7726=>314,7727=>278,7728=>641,7729=>453,7730=>641,7731=>453,7732=>641,7733=>453,7734=>568,7735=>251,7736=>568,7737=>251,7738=>568,7739=>251,7740=>568,7741=>251,7742=>821,7743=>725,7744=>821,7745=>725,7746=>821,7747=>725,7748=>677,7749=>493,7750=>677,7751=>493,7752=>677,7753=>493,7754=>677,7755=>493,7756=>656,7757=>473,7758=>656,7759=>473,7760=>656,7761=>473,7762=>656,7763=>473,7764=>566,7765=>469,7766=>566,7767=>469,7768=>616,7769=>366,7770=>616,7771=>366,7772=>616,7773=>366,7774=>616,7775=>366,7776=>454,7777=>345,7778=>454,7779=>345,7780=>464,7781=>345,7782=>464,7783=>345,7784=>454,7785=>345,7786=>589,7787=>238,7788=>589,7789=>238,7790=>589,7791=>238,7792=>589,7793=>238,7794=>706,7795=>484,7796=>706,7797=>484,7798=>706,7799=>484,7800=>698,7801=>484,7802=>706,7803=>484,7804=>663,7805=>456,7806=>663,7807=>456,7808=>888,7809=>683,7810=>888,7811=>683,7812=>888,7813=>683,7814=>888,7815=>683,7816=>888,7817=>683,7818=>665,7819=>435,7820=>665,7821=>435,7822=>593,7823=>462,7824=>563,7825=>389,7826=>563,7827=>389,7828=>563,7829=>389,7830=>499,7831=>238,7832=>683,7833=>462,7834=>444,7835=>383,7836=>383,7837=>424,7838=>676,7839=>464,7840=>651,7841=>498,7842=>651,7843=>498,7844=>651,7845=>498,7846=>651,7847=>498,7848=>651,7849=>498,7850=>651,7851=>498,7852=>651,7853=>498,7854=>651,7855=>498,7856=>651,7857=>498,7858=>651,7859=>498,7860=>651,7861=>498,7862=>651,7863=>498,7864=>574,7865=>406,7866=>574,7867=>406,7868=>574,7869=>406,7870=>611,7871=>406,7872=>611,7873=>406,7874=>611,7875=>406,7876=>611,7877=>406,7878=>574,7879=>406,7880=>322,7881=>278,7882=>322,7883=>246,7884=>656,7885=>473,7886=>656,7887=>473,7888=>656,7889=>473,7890=>656,7891=>473,7892=>656,7893=>473,7894=>656,7895=>473,7896=>656,7897=>473,7898=>771,7899=>576,7900=>771,7901=>576,7902=>807,7903=>585,7904=>771,7905=>576,7906=>771,7907=>576,7908=>706,7909=>484,7910=>706,7911=>484,7912=>801,7913=>605,7914=>801,7915=>605,7916=>807,7917=>585,7918=>801,7919=>605,7920=>801,7921=>605,7922=>593,7923=>462,7924=>593,7925=>462,7926=>593,7927=>462,7928=>593,7929=>462,7936=>564,7937=>564,7938=>564,7939=>564,7940=>564,7941=>564,7942=>564,7943=>564,7944=>661,7945=>661,7946=>794,7947=>771,7948=>792,7949=>773,7950=>661,7951=>648,7952=>431,7953=>431,7954=>431,7955=>431,7956=>431,7957=>431,7960=>740,7961=>795,7962=>923,7963=>910,7964=>956,7965=>926,7968=>539,7969=>539,7970=>539,7971=>539,7972=>539,7973=>539,7974=>539,7975=>539,7976=>879,7977=>901,7978=>1036,7979=>1035,7980=>1079,7981=>1060,7982=>924,7983=>929,7984=>270,7985=>270,7986=>267,7987=>267,7988=>267,7989=>267,7990=>267,7991=>267,7992=>490,7993=>499,7994=>625,7995=>614,7996=>665,7997=>653,7998=>510,7999=>513,8000=>558,8001=>524,8002=>524,8003=>524,8004=>524,8005=>524,8008=>797,8009=>807,8010=>966,8011=>962,8012=>953,8013=>947,8016=>540,8017=>540,8018=>540,8019=>540,8020=>540,8021=>540,8022=>540,8023=>540,8025=>816,8027=>922,8029=>950,8031=>823,8032=>701,8033=>701,8034=>701,8035=>701,8036=>701,8037=>701,8038=>701,8039=>701,8040=>852,8041=>849,8042=>1032,8043=>1012,8044=>1012,8045=>987,8046=>900,8047=>876,8048=>564,8049=>564,8050=>431,8051=>431,8052=>539,8053=>539,8054=>270,8055=>270,8056=>524,8057=>524,8058=>540,8059=>540,8060=>701,8061=>701,8064=>564,8065=>564,8066=>564,8067=>564,8068=>564,8069=>564,8070=>564,8071=>564,8072=>821,8073=>854,8074=>998,8075=>971,8076=>992,8077=>981,8078=>866,8079=>858,8080=>539,8081=>539,8082=>539,8083=>539,8084=>539,8085=>539,8086=>539,8087=>539,8088=>999,8089=>1044,8090=>1159,8091=>1165,8092=>1227,8093=>1229,8094=>1080,8095=>1085,8096=>701,8097=>701,8098=>701,8099=>701,8100=>701,8101=>701,8102=>701,8103=>701,8104=>1037,8105=>1053,8106=>1244,8107=>1214,8108=>1219,8109=>1191,8110=>1110,8111=>1082,8112=>564,8113=>564,8114=>564,8115=>564,8116=>564,8118=>564,8119=>564,8120=>661,8121=>661,8122=>661,8123=>661,8124=>831,8125=>192,8126=>200,8127=>200,8128=>500,8129=>534,8130=>539,8131=>539,8132=>539,8134=>539,8135=>539,8136=>731,8137=>766,8138=>889,8139=>908,8140=>851,8141=>330,8142=>333,8143=>500,8144=>270,8145=>270,8146=>270,8147=>270,8150=>270,8151=>270,8152=>333,8153=>333,8154=>477,8155=>491,8157=>333,8158=>500,8159=>333,8160=>540,8161=>540,8162=>540,8163=>540,8164=>506,8165=>506,8166=>540,8167=>540,8168=>679,8169=>679,8170=>865,8171=>861,8172=>783,8173=>333,8174=>333,8175=>200,8178=>701,8179=>701,8180=>701,8182=>701,8183=>701,8184=>807,8185=>793,8186=>855,8187=>835,8188=>952,8189=>500,8190=>200,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>500,8200=>250,8201=>166,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>500,8211=>500,8212=>1000,8213=>1000,8214=>293,8215=>465,8216=>200,8217=>200,8218=>200,8219=>200,8220=>333,8221=>333,8222=>333,8223=>333,8224=>500,8225=>500,8226=>400,8227=>400,8228=>250,8229=>500,8230=>889,8231=>250,8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>166,8240=>1000,8241=>1601,8242=>247,8243=>411,8244=>611,8245=>220,8246=>410,8247=>600,8248=>469,8249=>250,8250=>250,8251=>629,8252=>666,8253=>500,8254=>500,8255=>953,8256=>1000,8257=>314,8258=>931,8259=>400,8260=>167,8261=>480,8262=>480,8263=>900,8264=>833,8265=>763,8266=>500,8267=>453,8268=>453,8269=>500,8270=>500,8271=>278,8272=>882,8273=>500,8274=>497,8275=>500,8276=>953,8277=>512,8278=>410,8279=>855,8280=>620,8281=>620,8282=>179,8283=>621,8284=>564,8285=>179,8286=>179,8287=>111,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>300,8305=>235,8308=>300,8309=>300,8310=>300,8311=>300,8312=>300,8313=>300,8314=>300,8315=>300,8316=>300,8317=>216,8318=>216,8319=>318,8320=>300,8321=>250,8322=>300,8323=>300,8324=>300,8325=>300,8326=>300,8327=>300,8328=>300,8329=>300,8330=>300,8331=>300,8332=>300,8333=>216,8334=>216,8336=>350,8337=>304,8338=>340,8339=>317,8340=>278,8352=>698,8353=>667,8354=>667,8355=>611,8356=>500,8357=>722,8358=>667,8359=>988,8360=>953,8361=>833,8362=>869,8363=>512,8364=>741,8365=>722,8366=>611,8367=>1340,8368=>489,8369=>589,8370=>619,8371=>722,8372=>556,8373=>611,8374=>408,8376=>524,8377=>654,8400=>0,8401=>0,8402=>0,8403=>0,8404=>0,8405=>0,8406=>0,8407=>0,8408=>0,8409=>0,8410=>0,8411=>0,8412=>0,8413=>0,8414=>0,8415=>0,8416=>0,8417=>0,8418=>0,8419=>0,8420=>0,8421=>0,8422=>0,8423=>0,8424=>0,8425=>0,8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,8432=>0,8448=>604,8449=>605,8450=>674,8451=>954,8452=>536,8453=>593,8454=>667,8455=>518,8456=>667,8457=>862,8458=>560,8459=>1124,8460=>673,8461=>808,8462=>499,8463=>530,8464=>808,8465=>613,8466=>855,8467=>417,8468=>777,8469=>711,8470=>783,8471=>792,8472=>792,8473=>589,8474=>729,8475=>892,8476=>711,8477=>755,8478=>616,8479=>610,8480=>879,8481=>1156,8482=>920,8483=>611,8484=>659,8485=>409,8486=>767,8487=>767,8488=>663,8489=>286,8490=>722,8491=>722,8492=>936,8493=>613,8494=>523,8495=>430,8496=>637,8497=>890,8498=>576,8499=>1241,8500=>437,8501=>547,8502=>557,8503=>360,8504=>537,8505=>417,8506=>906,8507=>1195,8508=>675,8510=>586,8511=>722,8513=>663,8514=>485,8515=>485,8516=>637,8522=>516,8523=>778,8525=>926,8526=>378,8531=>750,8532=>750,8533=>750,8534=>750,8535=>750,8536=>750,8537=>750,8538=>750,8539=>750,8540=>750,8541=>750,8542=>750,8543=>750,8544=>322,8545=>608,8546=>877,8547=>950,8548=>663,8549=>930,8550=>1196,8551=>1459,8552=>900,8553=>665,8554=>931,8555=>1204,8556=>568,8557=>611,8558=>702,8559=>821,8560=>246,8561=>496,8562=>682,8563=>660,8564=>456,8565=>665,8566=>880,8567=>1096,8568=>703,8569=>435,8570=>650,8571=>878,8572=>251,8573=>403,8574=>500,8575=>725,8592=>964,8593=>499,8594=>964,8595=>499,8596=>900,8597=>900,8598=>800,8599=>800,8600=>800,8601=>800,8612=>1013,8613=>570,8614=>1013,8615=>500,8617=>910,8618=>910,8628=>658,8629=>658,8636=>900,8637=>900,8638=>400,8639=>400,8640=>900,8641=>900,8642=>400,8643=>400,8644=>900,8645=>790,8646=>900,8651=>900,8652=>900,8656=>900,8657=>550,8658=>900,8659=>550,8660=>910,8661=>650,8668=>1078,8669=>1078,8704=>587,8705=>532,8706=>544,8707=>587,8708=>587,8709=>662,8710=>612,8711=>612,8712=>536,8713=>536,8714=>439,8715=>536,8716=>536,8717=>439,8718=>500,8719=>823,8720=>823,8721=>713,8722=>675,8723=>675,8724=>675,8725=>750,8726=>610,8727=>400,8728=>400,8729=>400,8730=>549,8731=>549,8732=>549,8733=>677,8734=>677,8735=>509,8736=>575,8737=>559,8738=>509,8739=>200,8740=>250,8741=>320,8742=>404,8743=>564,8744=>564,8745=>654,8746=>654,8747=>496,8748=>840,8749=>1173,8750=>652,8751=>870,8756=>565,8757=>568,8758=>250,8759=>629,8761=>767,8764=>636,8770=>586,8771=>586,8773=>636,8776=>636,8778=>636,8784=>614,8785=>564,8786=>564,8787=>564,8788=>735,8789=>755,8790=>675,8791=>657,8793=>614,8794=>675,8797=>614,8798=>614,8799=>614,8800=>675,8801=>636,8804=>675,8805=>675,8806=>636,8807=>636,8810=>900,8811=>899,8818=>636,8819=>636,8834=>636,8835=>636,8976=>564,8992=>686,8993=>686,8994=>658,8995=>658,9001=>329,9002=>329,9251=>500,9674=>494,9675=>791,9676=>791,9688=>400,9702=>400,9711=>885,9824=>626,9825=>694,9826=>595,9827=>776,9828=>626,9829=>694,9830=>595,9831=>776,9833=>333,9834=>555,9835=>722,9836=>722,9837=>415,9838=>377,9839=>402,11799=>333,42790=>722,42791=>491,42792=>799,42793=>609,42794=>532,42795=>409,42796=>437,42797=>389,42798=>578,42799=>580,42888=>333,42889=>278,42890=>282,42891=>286,42892=>278,42893=>722,42896=>657,42897=>500,42922=>847,43002=>725,64256=>671,64257=>569,64258=>563,64259=>810,64260=>811,64261=>557,64262=>628,64275=>971,64276=>969,64277=>978,64278=>971,64279=>1219,64285=>350,64286=>0,64287=>537,64288=>537,64297=>564,64298=>537,64299=>537,64300=>537,64301=>537,64302=>537,64303=>537,64304=>537,64305=>537,64306=>350,64307=>537,64308=>537,64309=>350,64310=>350,64312=>537,64313=>350,64314=>537,64315=>537,64316=>537,64318=>537,64320=>350,64321=>537,64323=>537,64324=>537,64326=>537,64327=>537,64328=>537,64329=>537,64330=>537,64331=>350,64332=>537,64333=>537,64334=>537,64335=>537,65529=>0,65530=>0,65531=>0,65532=>800,65533=>900,65535=>600); // --- EOF --- diff --git a/lib/tcpdf/fonts/freeserifi.z b/lib/tcpdf/fonts/freeserifi.z index 899617dd396c5f0c1ee8939fc6f37ca30b7496c4..3ee26fe9c9ccb1fe235260260204b30f519db136 100644 GIT binary patch literal 533721 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

                  n((l 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 K0&%xX;u8rT+t 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

                  -es-uVZ59Z({6l;Z)4QbuxrKre#F!5$}uWL(h- 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�hlR!)>J{JY#Ys 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%0AUFPQ&}d4kGP4eG<1^$t~m{1OmX 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'?pKz@h;Lngt7tlW< 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

                  OO0>&vYnAKZ!kq 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 UO0U>MUz_V}=eg_=ofzZ)0NjA$K>z>% literal 362277 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

                  ujsI;WH5Z*nrt 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 880, + 'Descent' => -120, + 'CapHeight' => 763, + 'Flags' => 4, + 'FontBBox' => '[-149 -374 1254 1008]', + 'ItalicAngle' => 0, + 'StemV' => 99, + 'Style' => '<< /Panose <0000020b0700000000000000> >>', + 'XHeight' => 549, +); +$cidinfo = array( + 'Registry' => 'Adobe', + 'Ordering' => 'Japan1', + 'Supplement' => '4', +); +$enc = 'UniJIS-UCS2-H'; + +// underline position, needs checking: +$up = -75; +$ut = 50; + +$dw = 1000; +$cw = array( + 32 => 224, 33 => 266, 34 => 392, 35 => 551, 36 => 562, 37 => 883, 38 => 677, 39 => 213, 40 => 322, 41 => 322, + 42 => 470, 43 => 677, 44 => 247, 45 => 343, 46 => 245, 47 => 370, 48 => 562, 49 => 562, 50 => 562, 51 => 562, + 52 => 562, 53 => 562, 54 => 562, 55 => 562, 56 => 562, 57 => 562, 58 => 245, 59 => 247, 60 => 677, 61 => 677, + 62 => 677, 63 => 447, 64 => 808, 65 => 661, 66 => 602, 67 => 610, 68 => 708, 69 => 535, 70 => 528, 71 => 689, + 72 => 703, 73 => 275, 74 => 404, 75 => 602, 76 => 514, 77 => 871, 78 => 708, 79 => 727, 80 => 585, 81 => 727, + 82 => 595, 83 => 539, 84 => 541, 85 => 696, 86 => 619, 87 => 922, 88 => 612, 89 => 591, 90 => 584, 91 => 322, + 92 => 562, 93 => 322, 94 => 677, 95 => 568, 96 => 340, 97 => 532, 98 => 612, 99 => 475, 100 => 608, 101 => 543, + 102 => 332, 103 => 603, 104 => 601, 105 => 265, 106 => 276, 107 => 524, 108 => 264, 109 => 901, 110 => 601, 111 => 590, + 112 => 612, 113 => 607, 114 => 367, 115 => 433, 116 => 369, 117 => 597, 118 => 527, 119 => 800, 120 => 511, 121 => 518, + 122 => 468, 123 => 321, 124 => 273, 125 => 321, 126 => 341, 127 => 241, 128 => 362, 129 => 241, 130 => 273, 131 => 677, + 132 => 266, 133 => 562, 134 => 562, 135 => 456, 136 => 562, 137 => 571, 138 => 562, 139 => 416, 140 => 472, 141 => 283, + 142 => 283, 143 => 587, 144 => 588, 145 => 568, 146 => 545, 147 => 545, 148 => 247, 149 => 561, 150 => 330, 151 => 239, + 152 => 418, 153 => 416, 154 => 472, 155 => 1136, 156 => 1288, 157 => 447, 158 => 340, 159 => 340, 160 => 340, 161 => 340, + 162 => 340, 163 => 340, 164 => 455, 165 => 340, 166 => 340, 167 => 340, 168 => 340, 169 => 1136, 170 => 857, 171 => 384, + 172 => 519, 173 => 727, 174 => 952, 175 => 398, 176 => 834, 177 => 264, 178 => 275, 179 => 590, 180 => 918, 181 => 605, + 182 => 677, 183 => 769, 184 => 677, 185 => 473, 186 => 361, 187 => 677, 188 => 347, 189 => 340, 190 => 599, 191 => 284, + 192 => 845, 193 => 845, 194 => 845, 195 => 661, 196 => 661, 197 => 661, 198 => 661, 199 => 661, 200 => 661, 201 => 610, + 202 => 535, 203 => 535, 204 => 535, 205 => 535, 206 => 275, 207 => 275, 208 => 275, 209 => 275, 210 => 715, 211 => 708, + 212 => 727, 213 => 727, 214 => 727, 215 => 727, 216 => 727, 217 => 677, 218 => 696, 219 => 696, 220 => 696, 221 => 696, + 222 => 591, 223 => 584, 224 => 532, 225 => 532, 226 => 532, 227 => 532, 228 => 532, 229 => 532, 230 => 475, 231 => 543, + 232 => 543, 233 => 543, 234 => 543, 235 => 264, 236 => 264, 237 => 264, 238 => 264, 239 => 584, 240 => 601, 241 => 590, + 242 => 590, 243 => 590, 244 => 590, 245 => 590, 246 => 677, 247 => 597, 248 => 597, 249 => 597, 250 => 597, 251 => 518, + 252 => 612, 253 => 518, 254 => 539, 255 => 591, 256 => 584, 257 => 446, 258 => 433, 259 => 683, 260 => 468, 261 => 562, +); +$_cr = array( + array(231, 632, 500), // half-width + array(8718, 8718, 500), + array(9738, 9757, 250), // quarter-width + array(9758, 9778, 333), // third-width + array(12063, 12087, 500) +); +foreach($_cr as $_r) { + for($i = $_r[0]; $i <= $_r[1]; $i++) { + $cw[$i+31] = $_r[2]; + } +} +// --- EOF --- diff --git a/lib/tcpdf/fonts/kozminproregular.php b/lib/tcpdf/fonts/kozminproregular.php new file mode 100644 index 00000000000..c308d41db82 --- /dev/null +++ b/lib/tcpdf/fonts/kozminproregular.php @@ -0,0 +1,63 @@ + 880, + 'Descent' => -120, + 'CapHeight' => 740, + 'Flags' => 6, + 'FontBBox' => '[-195 -272 1110 1075]', + 'ItalicAngle' => 0, + 'StemV' => 86, + 'XHeight' => 502, +); +$cidinfo = array( + 'Registry' => 'Adobe', + 'Ordering' => 'Japan1', + 'Supplement' => '4', +); +$enc = 'UniJIS-UCS2-H'; + +$up = -75; +$ut = 50; + +$dw = 1000; +$cw = array( + 32 => 278, 33 => 299, 34 => 353, 35 => 614, 36 => 614, 37 => 721, 38 => 735, 39 => 216, 40 => 323, 41 => 323, + 42 => 449, 43 => 529, 44 => 219, 45 => 306, 46 => 219, 47 => 453, 48 => 614, 49 => 614, 50 => 614, 51 => 614, + 52 => 614, 53 => 614, 54 => 614, 55 => 614, 56 => 614, 57 => 614, 58 => 219, 59 => 219, 60 => 529, 61 => 529, + 62 => 529, 63 => 486, 64 => 744, 65 => 646, 66 => 604, 67 => 617, 68 => 681, 69 => 567, 70 => 537, 71 => 647, + 72 => 738, 73 => 320, 74 => 433, 75 => 637, 76 => 566, 77 => 904, 78 => 710, 79 => 716, 80 => 605, 81 => 716, + 82 => 623, 83 => 517, 84 => 601, 85 => 690, 86 => 668, 87 => 990, 88 => 681, 89 => 634, 90 => 578, 91 => 316, + 92 => 614, 93 => 316, 94 => 529, 95 => 500, 96 => 387, 97 => 509, 98 => 566, 99 => 478, 100 => 565, 101 => 503, + 102 => 337, 103 => 549, 104 => 580, 105 => 275, 106 => 266, 107 => 544, 108 => 276, 109 => 854, 110 => 579, 111 => 550, + 112 => 578, 113 => 566, 114 => 410, 115 => 444, 116 => 340, 117 => 575, 118 => 512, 119 => 760, 120 => 503, 121 => 529, + 122 => 453, 123 => 326, 124 => 380, 125 => 326, 126 => 387, 127 => 216, 128 => 453, 129 => 216, 130 => 380, 131 => 529, + 132 => 299, 133 => 614, 134 => 614, 135 => 265, 136 => 614, 137 => 475, 138 => 614, 139 => 353, 140 => 451, 141 => 291, + 142 => 291, 143 => 588, 144 => 589, 145 => 500, 146 => 476, 147 => 476, 148 => 219, 149 => 494, 150 => 452, 151 => 216, + 152 => 353, 153 => 353, 154 => 451, 156 => 1075, 157 => 486, 158 => 387, 159 => 387, 160 => 387, 161 => 387, + 162 => 387, 163 => 387, 164 => 387, 165 => 387, 166 => 387, 167 => 387, 168 => 387, 170 => 880, 171 => 448, + 172 => 566, 173 => 716, 174 => 903, 175 => 460, 176 => 805, 177 => 275, 178 => 276, 179 => 550, 180 => 886, 181 => 582, + 182 => 529, 183 => 738, 184 => 529, 185 => 738, 186 => 357, 187 => 529, 188 => 406, 189 => 406, 190 => 575, 191 => 406, + 192 => 934, 193 => 934, 194 => 934, 195 => 646, 196 => 646, 197 => 646, 198 => 646, 199 => 646, 200 => 646, 201 => 617, + 202 => 567, 203 => 567, 204 => 567, 205 => 567, 206 => 320, 207 => 320, 208 => 320, 209 => 320, 210 => 681, 211 => 710, + 212 => 716, 213 => 716, 214 => 716, 215 => 716, 216 => 716, 217 => 529, 218 => 690, 219 => 690, 220 => 690, 221 => 690, + 222 => 634, 223 => 605, 224 => 509, 225 => 509, 226 => 509, 227 => 509, 228 => 509, 229 => 509, 230 => 478, 231 => 503, + 232 => 503, 233 => 503, 234 => 503, 235 => 275, 236 => 275, 237 => 275, 238 => 275, 239 => 550, 240 => 579, 241 => 550, + 242 => 550, 243 => 550, 244 => 550, 245 => 550, 246 => 529, 247 => 575, 248 => 575, 249 => 575, 250 => 575, 251 => 529, + 252 => 578, 253 => 529, 254 => 517, 255 => 634, 256 => 578, 257 => 445, 258 => 444, 259 => 842, 260 => 453, 261 => 614, +); +$_cr = array( + array(231, 632, 500), // half-width + array(8718, 8718, 500), + array(9738, 9757, 250), // quarter-width + array(9758, 9778, 333), // third-width + array(12063, 12087, 500), +); +foreach($_cr as $_r) { + for($i = $_r[0]; $i <= $_r[1]; $i++) { + $cw[$i+31] = $_r[2]; + } +} +// --- EOF --- diff --git a/lib/tcpdf/fonts/msungstdlight.php b/lib/tcpdf/fonts/msungstdlight.php new file mode 100644 index 00000000000..a71ea295364 --- /dev/null +++ b/lib/tcpdf/fonts/msungstdlight.php @@ -0,0 +1,38 @@ + 880, + 'Descent' => -120, + 'CapHeight' => 880, + 'Flags' => 6, + 'FontBBox' => '[-160 -249 1015 1071]', + 'ItalicAngle' => 0, + 'StemV' => 93, +); +$cidinfo = array( + 'Registry' => 'Adobe', + 'Ordering' => 'CNS1', + 'Supplement' => '3', +); +$enc = 'UniCNS-UCS2-H'; + +$up = -130; +$ut = 40; + +$dw = 1000; +$cw = array( + 32 => 250, 33 => 250, 34 => 408, 35 => 668, 36 => 490, 37 => 875, 38 => 698, 39 => 250, 40 => 240, 41 => 240, + 42 => 417, 43 => 667, 44 => 250, 45 => 313, 46 => 250, 47 => 520, 48 => 500, 49 => 500, 50 => 500, 51 => 500, + 52 => 500, 53 => 500, 54 => 500, 55 => 500, 56 => 500, 57 => 500, 58 => 250, 59 => 250, 60 => 667, 61 => 667, + 62 => 667, 63 => 396, 64 => 921, 65 => 677, 66 => 615, 67 => 719, 68 => 760, 69 => 625, 70 => 552, 71 => 771, + 72 => 802, 73 => 354, 74 => 354, 75 => 781, 76 => 604, 77 => 927, 78 => 750, 79 => 823, 80 => 563, 81 => 823, + 82 => 729, 83 => 542, 84 => 698, 85 => 771, 86 => 729, 87 => 948, 88 => 771, 89 => 677, 90 => 635, 91 => 344, + 92 => 520, 93 => 344, 94 => 469, 95 => 500, 96 => 250, 97 => 469, 98 => 521, 99 => 427, 100 => 521, 101 => 438, + 102 => 271, 103 => 469, 104 => 531, 105 => 250, 106 => 250, 107 => 458, 108 => 240, 109 => 802, 110 => 531, 111 => 500, + 112 => 521, 113 => 521, 114 => 365, 115 => 333, 116 => 292, 117 => 521, 118 => 458, 119 => 677, 120 => 479, 121 => 458, + 122 => 427, 123 => 480, 124 => 496, 125 => 480, 126 => 667, + 17601 => 500, +); +// --- EOF --- diff --git a/lib/tcpdf/fonts/stsongstdlight.php b/lib/tcpdf/fonts/stsongstdlight.php new file mode 100644 index 00000000000..1c74c62d668 --- /dev/null +++ b/lib/tcpdf/fonts/stsongstdlight.php @@ -0,0 +1,39 @@ + 752, + 'Descent' => -271, + 'CapHeight' => 737, + 'Flags' => 6, + 'FontBBox' => '[-25 -254 1000 880]', + 'ItalicAngle' => 0, + 'StemV' => 58, + 'Style' => '<< /Panose <000000000400000000000000> >>', +); +$cidinfo = array( + 'Registry' => 'Adobe', + 'Ordering' => 'GB1', + 'Supplement' => '2', +); +$enc = 'UniGB-UCS2-H'; + +// underline position, needs checking: +$up = -130; +$ut = 40; + +$dw = 1000; +$cw = array( + 32 => 207, 33 => 270, 34 => 342, 35 => 467, 36 => 462, 37 => 797, 38 => 710, 39 => 239, 40 => 374, 41 => 374, + 42 => 423, 43 => 605, 44 => 238, 45 => 375, 46 => 238, 47 => 334, 48 => 462, 49 => 462, 50 => 462, 51 => 462, + 52 => 462, 53 => 462, 54 => 462, 55 => 462, 56 => 462, 57 => 462, 58 => 238, 59 => 238, 60 => 605, 61 => 605, + 62 => 605, 63 => 344, 64 => 748, 65 => 684, 66 => 560, 67 => 695, 68 => 739, 69 => 563, 70 => 511, 71 => 729, + 72 => 793, 73 => 318, 74 => 312, 75 => 666, 76 => 526, 77 => 896, 78 => 758, 79 => 772, 80 => 544, 81 => 772, + 82 => 628, 83 => 465, 84 => 607, 85 => 753, 86 => 711, 87 => 972, 88 => 647, 89 => 620, 90 => 607, 91 => 374, + 92 => 333, 93 => 374, 94 => 606, 95 => 500, 96 => 239, 97 => 417, 98 => 503, 99 => 427, 100 => 529, 101 => 415, + 102 => 264, 103 => 444, 104 => 518, 105 => 241, 106 => 230, 107 => 495, 108 => 228, 109 => 793, 110 => 527, 111 => 524, + 112 => 524, 113 => 504, 114 => 338, 115 => 336, 116 => 277, 117 => 517, 118 => 450, 119 => 652, 120 => 466, 121 => 452, + 122 => 407, 123 => 370, 124 => 258, 125 => 370, 126 => 605 +); +// --- EOF --- diff --git a/lib/tcpdf/htmlcolors.php b/lib/tcpdf/htmlcolors.php deleted file mode 100644 index e1a58b5068f..00000000000 --- a/lib/tcpdf/htmlcolors.php +++ /dev/null @@ -1,199 +0,0 @@ -. -// -// See LICENSE.TXT file for more information. -// ------------------------------------------------------------------- -// -// Description : Array of WEB safe colors -// -//============================================================+ - -/** - * @file - * Array of WEB safe colors - * @author Nicola Asuni - * @package com.tecnick.tcpdf - * @since 2.9.000 (2008-03-26) - */ - -/** - * Array of WEB safe colors - */ -$webcolor = array ( -'aliceblue' => 'f0f8ff', -'antiquewhite' => 'faebd7', -'aqua' => '00ffff', -'aquamarine' => '7fffd4', -'azure' => 'f0ffff', -'beige' => 'f5f5dc', -'bisque' => 'ffe4c4', -'black' => '000000', -'blanchedalmond' => 'ffebcd', -'blue' => '0000ff', -'blueviolet' => '8a2be2', -'brown' => 'a52a2a', -'burlywood' => 'deb887', -'cadetblue' => '5f9ea0', -'chartreuse' => '7fff00', -'chocolate' => 'd2691e', -'coral' => 'ff7f50', -'cornflowerblue' => '6495ed', -'cornsilk' => 'fff8dc', -'crimson' => 'dc143c', -'cyan' => '00ffff', -'darkblue' => '00008b', -'darkcyan' => '008b8b', -'darkgoldenrod' => 'b8860b', -'dkgray' => 'a9a9a9', -'darkgray' => 'a9a9a9', -'darkgrey' => 'a9a9a9', -'darkgreen' => '006400', -'darkkhaki' => 'bdb76b', -'darkmagenta' => '8b008b', -'darkolivegreen' => '556b2f', -'darkorange' => 'ff8c00', -'darkorchid' => '9932cc', -'darkred' => '8b0000', -'darksalmon' => 'e9967a', -'darkseagreen' => '8fbc8f', -'darkslateblue' => '483d8b', -'darkslategray' => '2f4f4f', -'darkslategrey' => '2f4f4f', -'darkturquoise' => '00ced1', -'darkviolet' => '9400d3', -'deeppink' => 'ff1493', -'deepskyblue' => '00bfff', -'dimgray' => '696969', -'dimgrey' => '696969', -'dodgerblue' => '1e90ff', -'firebrick' => 'b22222', -'floralwhite' => 'fffaf0', -'forestgreen' => '228b22', -'fuchsia' => 'ff00ff', -'gainsboro' => 'dcdcdc', -'ghostwhite' => 'f8f8ff', -'gold' => 'ffd700', -'goldenrod' => 'daa520', -'gray' => '808080', -'grey' => '808080', -'green' => '008000', -'greenyellow' => 'adff2f', -'honeydew' => 'f0fff0', -'hotpink' => 'ff69b4', -'indianred' => 'cd5c5c', -'indigo' => '4b0082', -'ivory' => 'fffff0', -'khaki' => 'f0e68c', -'lavender' => 'e6e6fa', -'lavenderblush' => 'fff0f5', -'lawngreen' => '7cfc00', -'lemonchiffon' => 'fffacd', -'lightblue' => 'add8e6', -'lightcoral' => 'f08080', -'lightcyan' => 'e0ffff', -'lightgoldenrodyellow' => 'fafad2', -'ltgray' => 'd3d3d3', -'lightgray' => 'd3d3d3', -'lightgrey' => 'd3d3d3', -'lightgreen' => '90ee90', -'lightpink' => 'ffb6c1', -'lightsalmon' => 'ffa07a', -'lightseagreen' => '20b2aa', -'lightskyblue' => '87cefa', -'lightslategray' => '778899', -'lightslategrey' => '778899', -'lightsteelblue' => 'b0c4de', -'lightyellow' => 'ffffe0', -'lime' => '00ff00', -'limegreen' => '32cd32', -'linen' => 'faf0e6', -'magenta' => 'ff00ff', -'maroon' => '800000', -'mediumaquamarine' => '66cdaa', -'mediumblue' => '0000cd', -'mediumorchid' => 'ba55d3', -'mediumpurple' => '9370d8', -'mediumseagreen' => '3cb371', -'mediumslateblue' => '7b68ee', -'mediumspringgreen' => '00fa9a', -'mediumturquoise' => '48d1cc', -'mediumvioletred' => 'c71585', -'midnightblue' => '191970', -'mintcream' => 'f5fffa', -'mistyrose' => 'ffe4e1', -'moccasin' => 'ffe4b5', -'navajowhite' => 'ffdead', -'navy' => '000080', -'oldlace' => 'fdf5e6', -'olive' => '808000', -'olivedrab' => '6b8e23', -'orange' => 'ffa500', -'orangered' => 'ff4500', -'orchid' => 'da70d6', -'palegoldenrod' => 'eee8aa', -'palegreen' => '98fb98', -'paleturquoise' => 'afeeee', -'palevioletred' => 'd87093', -'papayawhip' => 'ffefd5', -'peachpuff' => 'ffdab9', -'peru' => 'cd853f', -'pink' => 'ffc0cb', -'plum' => 'dda0dd', -'powderblue' => 'b0e0e6', -'purple' => '800080', -'red' => 'ff0000', -'rosybrown' => 'bc8f8f', -'royalblue' => '4169e1', -'saddlebrown' => '8b4513', -'salmon' => 'fa8072', -'sandybrown' => 'f4a460', -'seagreen' => '2e8b57', -'seashell' => 'fff5ee', -'sienna' => 'a0522d', -'silver' => 'c0c0c0', -'skyblue' => '87ceeb', -'slateblue' => '6a5acd', -'slategray' => '708090', -'slategrey' => '708090', -'snow' => 'fffafa', -'springgreen' => '00ff7f', -'steelblue' => '4682b4', -'tan' => 'd2b48c', -'teal' => '008080', -'thistle' => 'd8bfd8', -'tomato' => 'ff6347', -'turquoise' => '40e0d0', -'violet' => 'ee82ee', -'wheat' => 'f5deb3', -'white' => 'ffffff', -'whitesmoke' => 'f5f5f5', -'yellow' => 'ffff00', -'yellowgreen' => '9acd32' -); - -//============================================================+ -// END OF FILE -//============================================================+ diff --git a/lib/tcpdf/datamatrix.php b/lib/tcpdf/include/barcodes/datamatrix.php similarity index 99% rename from lib/tcpdf/datamatrix.php rename to lib/tcpdf/include/barcodes/datamatrix.php index fe140e6ddf9..775e5cb15e1 100644 --- a/lib/tcpdf/datamatrix.php +++ b/lib/tcpdf/include/barcodes/datamatrix.php @@ -4,7 +4,7 @@ // Version : 1.0.004 // Begin : 2010-06-07 // Last Update : 2013-02-04 -// Author : Nicola Asuni - Tecnick.com LTD - Manor Coach House, Church Hill, Aldershot, Hants, GU12 4RQ, UK - www.tecnick.com - info@tecnick.com +// Author : Nicola Asuni - Tecnick.com LTD - www.tecnick.com - info@tecnick.com // License : GNU-LGPL v3 (http://www.gnu.org/copyleft/lesser.html) // ------------------------------------------------------------------- // Copyright (C) 2010-2012 Nicola Asuni - Tecnick.com LTD diff --git a/lib/tcpdf/pdf417.php b/lib/tcpdf/include/barcodes/pdf417.php similarity index 99% rename from lib/tcpdf/pdf417.php rename to lib/tcpdf/include/barcodes/pdf417.php index 827e12a0655..4265299074e 100644 --- a/lib/tcpdf/pdf417.php +++ b/lib/tcpdf/include/barcodes/pdf417.php @@ -1,10 +1,10 @@ . +// +// See LICENSE.TXT file for more information. +// ------------------------------------------------------------------- +// +// Description : Array of WEB safe colors +// +//============================================================+ + +/** + * @file + * PHP color class for TCPDF + * @author Nicola Asuni + * @package com.tecnick.tcpdf + */ + +/** + * @class TCPDF_COLORS + * PHP color class for TCPDF + * @package com.tecnick.tcpdf + * @version 1.0.000 + * @author Nicola Asuni - info@tecnick.com + */ +class TCPDF_COLORS { + + /** + * Array of WEB safe colors + * @public static + */ + public static $webcolor = array ( + 'aliceblue' => 'f0f8ff', + 'antiquewhite' => 'faebd7', + 'aqua' => '00ffff', + 'aquamarine' => '7fffd4', + 'azure' => 'f0ffff', + 'beige' => 'f5f5dc', + 'bisque' => 'ffe4c4', + 'black' => '000000', + 'blanchedalmond' => 'ffebcd', + 'blue' => '0000ff', + 'blueviolet' => '8a2be2', + 'brown' => 'a52a2a', + 'burlywood' => 'deb887', + 'cadetblue' => '5f9ea0', + 'chartreuse' => '7fff00', + 'chocolate' => 'd2691e', + 'coral' => 'ff7f50', + 'cornflowerblue' => '6495ed', + 'cornsilk' => 'fff8dc', + 'crimson' => 'dc143c', + 'cyan' => '00ffff', + 'darkblue' => '00008b', + 'darkcyan' => '008b8b', + 'darkgoldenrod' => 'b8860b', + 'dkgray' => 'a9a9a9', + 'darkgray' => 'a9a9a9', + 'darkgrey' => 'a9a9a9', + 'darkgreen' => '006400', + 'darkkhaki' => 'bdb76b', + 'darkmagenta' => '8b008b', + 'darkolivegreen' => '556b2f', + 'darkorange' => 'ff8c00', + 'darkorchid' => '9932cc', + 'darkred' => '8b0000', + 'darksalmon' => 'e9967a', + 'darkseagreen' => '8fbc8f', + 'darkslateblue' => '483d8b', + 'darkslategray' => '2f4f4f', + 'darkslategrey' => '2f4f4f', + 'darkturquoise' => '00ced1', + 'darkviolet' => '9400d3', + 'deeppink' => 'ff1493', + 'deepskyblue' => '00bfff', + 'dimgray' => '696969', + 'dimgrey' => '696969', + 'dodgerblue' => '1e90ff', + 'firebrick' => 'b22222', + 'floralwhite' => 'fffaf0', + 'forestgreen' => '228b22', + 'fuchsia' => 'ff00ff', + 'gainsboro' => 'dcdcdc', + 'ghostwhite' => 'f8f8ff', + 'gold' => 'ffd700', + 'goldenrod' => 'daa520', + 'gray' => '808080', + 'grey' => '808080', + 'green' => '008000', + 'greenyellow' => 'adff2f', + 'honeydew' => 'f0fff0', + 'hotpink' => 'ff69b4', + 'indianred' => 'cd5c5c', + 'indigo' => '4b0082', + 'ivory' => 'fffff0', + 'khaki' => 'f0e68c', + 'lavender' => 'e6e6fa', + 'lavenderblush' => 'fff0f5', + 'lawngreen' => '7cfc00', + 'lemonchiffon' => 'fffacd', + 'lightblue' => 'add8e6', + 'lightcoral' => 'f08080', + 'lightcyan' => 'e0ffff', + 'lightgoldenrodyellow' => 'fafad2', + 'ltgray' => 'd3d3d3', + 'lightgray' => 'd3d3d3', + 'lightgrey' => 'd3d3d3', + 'lightgreen' => '90ee90', + 'lightpink' => 'ffb6c1', + 'lightsalmon' => 'ffa07a', + 'lightseagreen' => '20b2aa', + 'lightskyblue' => '87cefa', + 'lightslategray' => '778899', + 'lightslategrey' => '778899', + 'lightsteelblue' => 'b0c4de', + 'lightyellow' => 'ffffe0', + 'lime' => '00ff00', + 'limegreen' => '32cd32', + 'linen' => 'faf0e6', + 'magenta' => 'ff00ff', + 'maroon' => '800000', + 'mediumaquamarine' => '66cdaa', + 'mediumblue' => '0000cd', + 'mediumorchid' => 'ba55d3', + 'mediumpurple' => '9370d8', + 'mediumseagreen' => '3cb371', + 'mediumslateblue' => '7b68ee', + 'mediumspringgreen' => '00fa9a', + 'mediumturquoise' => '48d1cc', + 'mediumvioletred' => 'c71585', + 'midnightblue' => '191970', + 'mintcream' => 'f5fffa', + 'mistyrose' => 'ffe4e1', + 'moccasin' => 'ffe4b5', + 'navajowhite' => 'ffdead', + 'navy' => '000080', + 'oldlace' => 'fdf5e6', + 'olive' => '808000', + 'olivedrab' => '6b8e23', + 'orange' => 'ffa500', + 'orangered' => 'ff4500', + 'orchid' => 'da70d6', + 'palegoldenrod' => 'eee8aa', + 'palegreen' => '98fb98', + 'paleturquoise' => 'afeeee', + 'palevioletred' => 'd87093', + 'papayawhip' => 'ffefd5', + 'peachpuff' => 'ffdab9', + 'peru' => 'cd853f', + 'pink' => 'ffc0cb', + 'plum' => 'dda0dd', + 'powderblue' => 'b0e0e6', + 'purple' => '800080', + 'red' => 'ff0000', + 'rosybrown' => 'bc8f8f', + 'royalblue' => '4169e1', + 'saddlebrown' => '8b4513', + 'salmon' => 'fa8072', + 'sandybrown' => 'f4a460', + 'seagreen' => '2e8b57', + 'seashell' => 'fff5ee', + 'sienna' => 'a0522d', + 'silver' => 'c0c0c0', + 'skyblue' => '87ceeb', + 'slateblue' => '6a5acd', + 'slategray' => '708090', + 'slategrey' => '708090', + 'snow' => 'fffafa', + 'springgreen' => '00ff7f', + 'steelblue' => '4682b4', + 'tan' => 'd2b48c', + 'teal' => '008080', + 'thistle' => 'd8bfd8', + 'tomato' => 'ff6347', + 'turquoise' => '40e0d0', + 'violet' => 'ee82ee', + 'wheat' => 'f5deb3', + 'white' => 'ffffff', + 'whitesmoke' => 'f5f5f5', + 'yellow' => 'ffff00', + 'yellowgreen' => '9acd32' + ); // end of web colors + + /** + * Array of valid JavaScript color names + * @public static + */ + public static $jscolor = array ('transparent', 'black', 'white', 'red', 'green', 'blue', 'cyan', 'magenta', 'yellow', 'dkGray', 'gray', 'ltGray'); + + /** + * Array of Spot colors (C,M,Y,K,name) + * Color keys must be in lowercase and without spaces. + * As long as no open standard for spot colours exists, you have to buy a colour book by one of the colour manufacturers and insert the values and names of spot colours directly. + * Common industry standard spot colors are: ANPA-COLOR, DIC, FOCOLTONE, GCMI, HKS, PANTONE, TOYO, TRUMATCH. + * @public static + */ + public static $spotcolor = array ( + // the following are just examples, fill the array with your own values + 'mytcpdfblack' => array(0, 0, 0, 100, 'My TCPDF Black'), + 'mytcpdfred' => array(30, 100, 90, 10, 'My TCPDF Red'), + 'mytcpdfgreen' => array(100, 30, 100, 0, 'My TCPDF Green'), + 'mytcpdfblue' => array(100, 60, 10, 5, 'My TCPDF Blue'), + 'mytcpdfyellow' => array(0, 20, 100, 0, 'My TCPDF Yellow'), + // ... + ); // end of spot colors + + // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + /** + * Return the Spot color array. + * @param $name (string) Name of the spot color. + * @param $spotc (array) Reference to an array of spot colors. + * @return (array) Spot color array or false if not defined. + * @since 5.9.125 (2011-10-03) + * @public static + */ + public static function getSpotColor($name, &$spotc) { + if (isset($spotc[$name])) { + return $spotc[$name]; + } + $color = preg_replace('/[\s]*/', '', $name); // remove extra spaces + $color = strtolower($color); + if (isset(self::$spotcolor[$color])) { + if (!isset($spotc[$name])) { + $i = (1 + count($spotc)); + $spotc[$name] = array('C' => self::$spotcolor[$color][0], 'M' => self::$spotcolor[$color][1], 'Y' => self::$spotcolor[$color][2], 'K' => self::$spotcolor[$color][3], 'name' => self::$spotcolor[$color][4], 'i' => $i); + } + return $spotc[self::$spotcolor[$color][4]]; + } + return false; + } + + /** + * Returns an array (RGB or CMYK) from an html color name, or a six-digit (i.e. #3FE5AA), or three-digit (i.e. #7FF) hexadecimal color, or a javascript color array, or javascript color name. + * @param $hcolor (string) HTML color. + * @param $spotc (array) Reference to an array of spot colors. + * @param $defcol (array) Color to return in case of error. + * @return array RGB or CMYK color, or false in case of error. + * @public static + */ + public static function convertHTMLColorToDec($hcolor, &$spotc, $defcol=array('R'=>128,'G'=>128,'B'=>128)) { + $color = preg_replace('/[\s]*/', '', $hcolor); // remove extra spaces + $color = strtolower($color); + // check for javascript color array syntax + if (strpos($color, '[') !== false) { + if (preg_match('/[\[][\"\'](t|g|rgb|cmyk)[\"\'][\,]?([0-9\.]*)[\,]?([0-9\.]*)[\,]?([0-9\.]*)[\,]?([0-9\.]*)[\]]/', $color, $m) > 0) { + $returncolor = array(); + switch ($m[1]) { + case 'cmyk': { + // RGB + $returncolor['C'] = max(0, min(100, (floatval($m[2]) * 100))); + $returncolor['M'] = max(0, min(100, (floatval($m[3]) * 100))); + $returncolor['Y'] = max(0, min(100, (floatval($m[4]) * 100))); + $returncolor['K'] = max(0, min(100, (floatval($m[5]) * 100))); + break; + } + case 'rgb': { + // RGB + $returncolor['R'] = max(0, min(255, (floatval($m[2]) * 255))); + $returncolor['G'] = max(0, min(255, (floatval($m[3]) * 255))); + $returncolor['B'] = max(0, min(255, (floatval($m[4]) * 255))); + break; + } + case 'g': { + // grayscale + $returncolor['G'] = max(0, min(255, (floatval($m[2]) * 255))); + break; + } + case 't': + default: { + // transparent (empty array) + break; + } + } + return $returncolor; + } + } elseif (($dotpos = strpos($color, '.')) !== false) { + // remove class parent (i.e.: color.red) + $color = substr($color, ($dotpos + 1)); + if ($color == 'transparent') { + // transparent (empty array) + return array(); + } + } + if (strlen($color) == 0) { + return $defcol; + } + // RGB ARRAY + if (substr($color, 0, 3) == 'rgb') { + $codes = substr($color, 4); + $codes = str_replace(')', '', $codes); + $returncolor = explode(',', $codes); + foreach ($returncolor as $key => $val) { + if (strpos($val, '%') > 0) { + // percentage + $returncolor[$key] = (255 * intval($val) / 100); + } else { + $returncolor[$key] = intval($val); + } + // normalize value + $returncolor[$key] = max(0, min(255, $returncolor[$key])); + } + return $returncolor; + } + // CMYK ARRAY + if (substr($color, 0, 4) == 'cmyk') { + $codes = substr($color, 5); + $codes = str_replace(')', '', $codes); + $returncolor = explode(',', $codes); + foreach ($returncolor as $key => $val) { + if (strpos($val, '%') !== false) { + // percentage + $returncolor[$key] = (100 * intval($val) / 100); + } else { + $returncolor[$key] = intval($val); + } + // normalize value + $returncolor[$key] = max(0, min(100, $returncolor[$key])); + } + return $returncolor; + } + if ($color{0} != '#') { + // COLOR NAME + if (isset(self::$webcolor[$color])) { + // web color + $color_code = self::$webcolor[$color]; + } else { + // spot color + $returncolor = self::getSpotColor($color, $spotc); + if ($returncolor === false) { + $returncolor = $defcol; + } + return $returncolor; + } + } else { + $color_code = substr($color, 1); + } + // HEXADECIMAL REPRESENTATION + switch (strlen($color_code)) { + case 3: { + // 3-digit RGB hexadecimal representation + $r = substr($color_code, 0, 1); + $g = substr($color_code, 1, 1); + $b = substr($color_code, 2, 1); + $returncolor = array(); + $returncolor['R'] = max(0, min(255, hexdec($r.$r))); + $returncolor['G'] = max(0, min(255, hexdec($g.$g))); + $returncolor['B'] = max(0, min(255, hexdec($b.$b))); + break; + } + case 6: { + // 6-digit RGB hexadecimal representation + $returncolor = array(); + $returncolor['R'] = max(0, min(255, hexdec(substr($color_code, 0, 2)))); + $returncolor['G'] = max(0, min(255, hexdec(substr($color_code, 2, 2)))); + $returncolor['B'] = max(0, min(255, hexdec(substr($color_code, 4, 2)))); + break; + } + case 8: { + // 8-digit CMYK hexadecimal representation + $returncolor = array(); + $returncolor['C'] = max(0, min(100, round(hexdec(substr($color_code, 0, 2)) / 2.55))); + $returncolor['M'] = max(0, min(100, round(hexdec(substr($color_code, 2, 2)) / 2.55))); + $returncolor['Y'] = max(0, min(100, round(hexdec(substr($color_code, 4, 2)) / 2.55))); + $returncolor['K'] = max(0, min(100, round(hexdec(substr($color_code, 6, 2)) / 2.55))); + break; + } + default: { + $returncolor = $defcol; + break; + } + } + return $returncolor; + } + + /** + * Convert a color array into a string representation. + * @param $c (array) Array of colors. + * @return (string) The color array representation. + * @since 5.9.137 (2011-12-01) + * @public static + */ + public static function getColorStringFromArray($c) { + $c = array_values($c); + $color = '['; + switch (count($c)) { + case 4: { + // CMYK + $color .= sprintf('%F %F %F %F', (max(0, min(100, floatval($c[0]))) / 100), (max(0, min(100, floatval($c[1]))) / 100), (max(0, min(100, floatval($c[2]))) / 100), (max(0, min(100, floatval($c[3]))) / 100)); + break; + } + case 3: { + // RGB + $color .= sprintf('%F %F %F', (max(0, min(255, floatval($c[0]))) / 255), (max(0, min(255, floatval($c[1]))) / 255), (max(0, min(255, floatval($c[2]))) / 255)); + break; + } + case 1: { + // grayscale + $color .= sprintf('%F', (max(0, min(255, floatval($c[0]))) / 255)); + break; + } + } + $color .= ']'; + return $color; + } + + /** + * Convert color to javascript color. + * @param $color (string) color name or "#RRGGBB" + * @protected + * @since 2.1.002 (2008-02-12) + * @public static + */ + public static function _JScolor($color) { + if (substr($color, 0, 1) == '#') { + return sprintf("['RGB',%F,%F,%F]", (hexdec(substr($color, 1, 2)) / 255), (hexdec(substr($color, 3, 2)) / 255), (hexdec(substr($color, 5, 2)) / 255)); + } + if (!in_array($color, self::$jscolor)) { + // default transparent color + $color = $jscolor[0]; + } + return 'color.'.$color; + } + + +} // END OF TCPDF_COLORS CLASS + +//============================================================+ +// END OF FILE +//============================================================+ diff --git a/lib/tcpdf/tcpdf_filters.php b/lib/tcpdf/include/tcpdf_filters.php similarity index 77% rename from lib/tcpdf/tcpdf_filters.php rename to lib/tcpdf/include/tcpdf_filters.php index f39a8fe9d9e..28556e4ce30 100644 --- a/lib/tcpdf/tcpdf_filters.php +++ b/lib/tcpdf/include/tcpdf_filters.php @@ -1,13 +1,13 @@ * @package com.tecnick.tcpdf * @author Nicola Asuni - * @version 1.0.000 + * @version 1.0.001 */ /** @@ -45,27 +45,27 @@ * This is a PHP class for decoding common PDF filters (PDF 32000-2008 - 7.4 Filters).
                    * @package com.tecnick.tcpdf * @brief This is a PHP class for decoding common PDF filters. - * @version 1.0.000 + * @version 1.0.001 * @author Nicola Asuni - info@tecnick.com */ class TCPDF_FILTERS { /** * Define a list of available filter decoders. - * @private + * @private static */ - private $available_filters = array('ASCIIHexDecode', 'ASCII85Decode', 'LZWDecode', 'FlateDecode', 'RunLengthDecode'); + private static $available_filters = array('ASCIIHexDecode', 'ASCII85Decode', 'LZWDecode', 'FlateDecode', 'RunLengthDecode'); // ----------------------------------------------------------------------------- /** * Get a list of available decoding filters. * @return (array) Array of available filter decoders. - * @public * @since 1.0.000 (2011-05-23) + * @public static */ - public function getAvailableFilters() { - return $this->available_filters; + public static function getAvailableFilters() { + return self::$available_filters; } /** @@ -73,53 +73,53 @@ class TCPDF_FILTERS { * @param $filter (string) Filter name. * @param $data (string) Data to decode. * @return Decoded data string. - * @public * @since 1.0.000 (2011-05-23) + * @public static */ - public function decodeFilter($filter, $data) { + public static function decodeFilter($filter, $data) { switch ($filter) { case 'ASCIIHexDecode': { - return $this->decodeFilterASCIIHexDecode($data); + return self::decodeFilterASCIIHexDecode($data); break; } case 'ASCII85Decode': { - return $this->decodeFilterASCII85Decode($data); + return self::decodeFilterASCII85Decode($data); break; } case 'LZWDecode': { - return $this->decodeFilterLZWDecode($data); + return self::decodeFilterLZWDecode($data); break; } case 'FlateDecode': { - return $this->decodeFilterFlateDecode($data); + return self::decodeFilterFlateDecode($data); break; } case 'RunLengthDecode': { - return $this->decodeFilterRunLengthDecode($data); + return self::decodeFilterRunLengthDecode($data); break; } case 'CCITTFaxDecode': { - return $this->decodeFilterCCITTFaxDecode($data); + return self::decodeFilterCCITTFaxDecode($data); break; } case 'JBIG2Decode': { - return $this->decodeFilterJBIG2Decode($data); + return self::decodeFilterJBIG2Decode($data); break; } case 'DCTDecode': { - return $this->decodeFilterDCTDecode($data); + return self::decodeFilterDCTDecode($data); break; } case 'JPXDecode': { - return $this->decodeFilterJPXDecode($data); + return self::decodeFilterJPXDecode($data); break; } case 'Crypt': { - return $this->decodeFilterCrypt($data); + return self::decodeFilterCrypt($data); break; } default: { - return decodeFilterStandard($data); + return self::decodeFilterStandard($data); break; } } @@ -132,10 +132,10 @@ class TCPDF_FILTERS { * Default decoding filter (leaves data unchanged). * @param $data (string) Data to decode. * @return Decoded data string. - * @public * @since 1.0.000 (2011-05-23) + * @public static */ - public function decodeFilterStandard($data) { + public static function decodeFilterStandard($data) { return $data; } @@ -144,10 +144,10 @@ class TCPDF_FILTERS { * Decodes data encoded in an ASCII hexadecimal representation, reproducing the original binary data. * @param $data (string) Data to decode. * @return Decoded data string. - * @public * @since 1.0.000 (2011-05-23) + * @public static */ - public function decodeFilterASCIIHexDecode($data) { + public static function decodeFilterASCIIHexDecode($data) { // intialize string to return $decoded = ''; // all white-space characters shall be ignored @@ -167,12 +167,12 @@ class TCPDF_FILTERS { // EOD shall behave as if a 0 (zero) followed the last digit $data = substr($data, 0, -1).'0'.substr($data, -1); } else { - $this->Error('decodeASCIIHex: invalid code'); + self::Error('decodeFilterASCIIHexDecode: invalid code'); } } // check for invalid characters if (preg_match('/[^a-fA-F\d]/', $data) > 0) { - $this->Error('decodeASCIIHex: invalid code'); + self::Error('decodeFilterASCIIHexDecode: invalid code'); } // get one byte of binary data for each pair of ASCII hexadecimal digits $decoded = pack('H*', $data); @@ -184,10 +184,10 @@ class TCPDF_FILTERS { * Decodes data encoded in an ASCII base-85 representation, reproducing the original binary data. * @param $data (string) Data to decode. * @return Decoded data string. - * @public * @since 1.0.000 (2011-05-23) + * @public static */ - public function decodeFilterASCII85Decode($data) { + public static function decodeFilterASCII85Decode($data) { // intialize string to return $decoded = ''; // all white-space characters shall be ignored @@ -207,7 +207,7 @@ class TCPDF_FILTERS { $data_length = strlen($data); // check for invalid characters if (preg_match('/[^\x21-\x75,\x74]/', $data) > 0) { - $this->Error('decodeASCII85: invalid code'); + self::Error('decodeFilterASCII85Decode: invalid code'); } // z sequence $zseq = chr(0).chr(0).chr(0).chr(0); @@ -224,7 +224,7 @@ class TCPDF_FILTERS { if ($group_pos == 0) { $decoded .= $zseq; } else { - $this->Error('decodeASCII85: invalid code'); + self::Error('decodeFilterASCII85Decode: invalid code'); } } else { // the value represented by a group of 5 characters should never be greater than 2^32 - 1 @@ -256,7 +256,7 @@ class TCPDF_FILTERS { break; } case 1: { - $this->Error('decodeASCII85: invalid code'); + self::Error('decodeFilterASCII85Decode: invalid code'); break; } } @@ -268,10 +268,10 @@ class TCPDF_FILTERS { * Decompresses data encoded using the LZW (Lempel-Ziv-Welch) adaptive compression method, reproducing the original text or binary data. * @param $data (string) Data to decode. * @return Decoded data string. - * @public * @since 1.0.000 (2011-05-23) + * @public static */ - public function decodeFilterLZWDecode($data) { + public static function decodeFilterLZWDecode($data) { // intialize string to return $decoded = ''; // data length @@ -349,14 +349,14 @@ class TCPDF_FILTERS { * Decompresses data encoded using the zlib/deflate compression method, reproducing the original text or binary data. * @param $data (string) Data to decode. * @return Decoded data string. - * @public * @since 1.0.000 (2011-05-23) + * @public static */ - public function decodeFilterFlateDecode($data) { + public static function decodeFilterFlateDecode($data) { // intialize string to return - $decoded = gzuncompress($data); + $decoded = @gzuncompress($data); if ($decoded === false) { - $this->Error('decodeFlate: invalid code'); + self::Error('decodeFilterFlateDecode: invalid code'); } return $decoded; } @@ -365,10 +365,10 @@ class TCPDF_FILTERS { * RunLengthDecode * Decompresses data encoded using a byte-oriented run-length encoding algorithm. * @param $data (string) Data to decode. - * @public * @since 1.0.000 (2011-05-23) + * @public static */ - public function decodeFilterRunLengthDecode($data) { + public static function decodeFilterRunLengthDecode($data) { // intialize string to return $decoded = ''; // data length @@ -398,76 +398,80 @@ class TCPDF_FILTERS { } /** - * CCITTFaxDecode (NOT IMPLEMETED) + * CCITTFaxDecode (NOT IMPLEMETED - RETURN AN EXCEPTION) * Decompresses data encoded using the CCITT facsimile standard, reproducing the original data (typically monochrome image data at 1 bit per pixel). * @param $data (string) Data to decode. * @return Decoded data string. - * @public * @since 1.0.000 (2011-05-23) + * @public static */ - public function decodeFilterCCITTFaxDecode($data) { - return $data; + public static function decodeFilterCCITTFaxDecode($data) { + self::Error('~decodeFilterCCITTFaxDecode: this method has not been yet implemented'); + //return $data; } /** - * JBIG2Decode (NOT IMPLEMETED) + * JBIG2Decode (NOT IMPLEMETED - RETURN AN EXCEPTION) * Decompresses data encoded using the JBIG2 standard, reproducing the original monochrome (1 bit per pixel) image data (or an approximation of that data). * @param $data (string) Data to decode. * @return Decoded data string. - * @public * @since 1.0.000 (2011-05-23) + * @public static */ - public function decodeFilterJBIG2Decode($data) { - return $data; + public static function decodeFilterJBIG2Decode($data) { + self::Error('~decodeFilterJBIG2Decode: this method has not been yet implemented'); + //return $data; } /** - * DCTDecode (NOT IMPLEMETED) + * DCTDecode (NOT IMPLEMETED - RETURN AN EXCEPTION) * Decompresses data encoded using a DCT (discrete cosine transform) technique based on the JPEG standard, reproducing image sample data that approximates the original data. * @param $data (string) Data to decode. * @return Decoded data string. - * @public * @since 1.0.000 (2011-05-23) + * @public static */ - public function decodeFilterDCTDecode($data) { - return $data; + public static function decodeFilterDCTDecode($data) { + self::Error('~decodeFilterDCTDecode: this method has not been yet implemented'); + //return $data; } /** - * JPXDecode (NOT IMPLEMETED) + * JPXDecode (NOT IMPLEMETED - RETURN AN EXCEPTION) * Decompresses data encoded using the wavelet-based JPEG2000 standard, reproducing the original image data. * @param $data (string) Data to decode. * @return Decoded data string. - * @public * @since 1.0.000 (2011-05-23) + * @public static */ - public function decodeFilterJPXDecode($data) { - return $data; + public static function decodeFilterJPXDecode($data) { + self::Error('~decodeFilterJPXDecode: this method has not been yet implemented'); + //return $data; } /** - * Crypt (NOT IMPLEMETED) + * Crypt (NOT IMPLEMETED - RETURN AN EXCEPTION) * Decrypts data encrypted by a security handler, reproducing the data as it was before encryption. * @param $data (string) Data to decode. * @return Decoded data string. - * @public * @since 1.0.000 (2011-05-23) + * @public static */ - public function decodeFilterCrypt($data) { - return $data; + public static function decodeFilterCrypt($data) { + self::Error('~decodeFilterCrypt: this method has not been yet implemented'); + //return $data; } // --- END FILTERS SECTION ------------------------------------------------- /** - * This method is automatically called in case of fatal error; it simply outputs the message and halts the execution. + * Throw an exception. * @param $msg (string) The error message - * @public * @since 1.0.000 (2011-05-23) + * @public static */ - public function Error($msg) { - // exit program and print error - die('TCPDF_FILTERS ERROR: '.$msg); + public static function Error($msg) { + throw new Exception('TCPDF_PARSER ERROR: '.$msg); } } // END OF TCPDF_FILTERS CLASS diff --git a/lib/tcpdf/unicode_data.php b/lib/tcpdf/include/tcpdf_font_data.php similarity index 72% rename from lib/tcpdf/unicode_data.php rename to lib/tcpdf/include/tcpdf_font_data.php index 936f4fea458..974e72ec72b 100644 --- a/lib/tcpdf/unicode_data.php +++ b/lib/tcpdf/include/tcpdf_font_data.php @@ -1,13 +1,13 @@ 'BN', 1=>'BN', 2=>'BN', @@ -17868,7 +17864,7 @@ public $uni_type = array( * Mirror unicode characters. For information on bidi mirroring, see UAX #9: Bidirectional Algorithm, at http://www.unicode.org/unicode/reports/tr9/ * @public */ -public $uni_mirror = array ( +public static $uni_mirror = array ( 0x0028=>0x0029, 0x0029=>0x0028, 0x003C=>0x003E, @@ -18226,7 +18222,7 @@ public $uni_mirror = array ( * Arabic shape substitutions: char code => (isolated, final, initial, medial). * @public */ -public $uni_arabicsubst = array( +public static $uni_arabicsubst = array( 1569=>array(65152), 1570=>array(65153, 65154, 65153, 65154), 1571=>array(65155, 65156, 65155, 65156), @@ -18309,7 +18305,7 @@ public $uni_arabicsubst = array( * Arabic laa letter: (char code => isolated, final, initial, medial). * @public */ -public $uni_laa_array = array ( +public static $uni_laa_array = array ( 1570 =>array(65269, 65270, 65269, 65270), 1571 =>array(65271, 65272, 65271, 65272), 1573 =>array(65273, 65274, 65273, 65274), @@ -18322,7 +18318,7 @@ public $uni_laa_array = array ( * second NSM char code => substitution char * @public */ -public $uni_diacritics = array ( +public static $uni_diacritics = array ( 1612=>64606, # Shadda + Dammatan 1613=>64607, # Shadda + Kasratan 1614=>64608, # Shadda + Fatha @@ -18334,7 +18330,7 @@ public $uni_diacritics = array ( * Array of character substitutions from UTF-8 Unicode to Latin1. * @public */ -public $uni_utf8tolatin = array ( +public static $uni_utf8tolatin = array ( 8364=>128, # Euro1 338=>140, # OE 352=>138, # Scaron @@ -18364,7 +18360,87 @@ public $uni_utf8tolatin = array ( 382=>158 # zcaron2 ); -} // --- END OF CLASS --- +/** + * Array of Encoding Maps. + * @public static + */ +public static $encmap = array( + +// encoding map for: cp874 +'cp874' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'Euro',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'ellipsis',134=>'.notdef',135=>'.notdef',136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef',144=>'.notdef',145=>'quoteleft',146=>'quoteright',147=>'quotedblleft',148=>'quotedblright',149=>'bullet',150=>'endash',151=>'emdash',152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef',160=>'space',161=>'kokaithai',162=>'khokhaithai',163=>'khokhuatthai',164=>'khokhwaithai',165=>'khokhonthai',166=>'khorakhangthai',167=>'ngonguthai',168=>'chochanthai',169=>'chochingthai',170=>'chochangthai',171=>'sosothai',172=>'chochoethai',173=>'yoyingthai',174=>'dochadathai',175=>'topatakthai',176=>'thothanthai',177=>'thonangmonthothai',178=>'thophuthaothai',179=>'nonenthai',180=>'dodekthai',181=>'totaothai',182=>'thothungthai',183=>'thothahanthai',184=>'thothongthai',185=>'nonuthai',186=>'bobaimaithai',187=>'poplathai',188=>'phophungthai',189=>'fofathai',190=>'phophanthai',191=>'fofanthai',192=>'phosamphaothai',193=>'momathai',194=>'yoyakthai',195=>'roruathai',196=>'ruthai',197=>'lolingthai',198=>'luthai',199=>'wowaenthai',200=>'sosalathai',201=>'sorusithai',202=>'sosuathai',203=>'hohipthai',204=>'lochulathai',205=>'oangthai',206=>'honokhukthai',207=>'paiyannoithai',208=>'saraathai',209=>'maihanakatthai',210=>'saraaathai',211=>'saraamthai',212=>'saraithai',213=>'saraiithai',214=>'sarauethai',215=>'saraueethai',216=>'sarauthai',217=>'sarauuthai',218=>'phinthuthai',219=>'.notdef',220=>'.notdef',221=>'.notdef',222=>'.notdef',223=>'bahtthai',224=>'saraethai',225=>'saraaethai',226=>'saraothai',227=>'saraaimaimuanthai',228=>'saraaimaimalaithai',229=>'lakkhangyaothai',230=>'maiyamokthai',231=>'maitaikhuthai',232=>'maiekthai',233=>'maithothai',234=>'maitrithai',235=>'maichattawathai',236=>'thanthakhatthai',237=>'nikhahitthai',238=>'yamakkanthai',239=>'fongmanthai',240=>'zerothai',241=>'onethai',242=>'twothai',243=>'threethai',244=>'fourthai',245=>'fivethai',246=>'sixthai',247=>'seventhai',248=>'eightthai',249=>'ninethai',250=>'angkhankhuthai',251=>'khomutthai',252=>'.notdef',253=>'.notdef',254=>'.notdef',255=>'.notdef'), + +// encoding map for: cp1250 +'cp1250' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'Euro',129=>'.notdef',130=>'quotesinglbase',131=>'.notdef',132=>'quotedblbase',133=>'ellipsis',134=>'dagger',135=>'daggerdbl',136=>'.notdef',137=>'perthousand',138=>'Scaron',139=>'guilsinglleft',140=>'Sacute',141=>'Tcaron',142=>'Zcaron',143=>'Zacute',144=>'.notdef',145=>'quoteleft',146=>'quoteright',147=>'quotedblleft',148=>'quotedblright',149=>'bullet',150=>'endash',151=>'emdash',152=>'.notdef',153=>'trademark',154=>'scaron',155=>'guilsinglright',156=>'sacute',157=>'tcaron',158=>'zcaron',159=>'zacute',160=>'space',161=>'caron',162=>'breve',163=>'Lslash',164=>'currency',165=>'Aogonek',166=>'brokenbar',167=>'section',168=>'dieresis',169=>'copyright',170=>'Scedilla',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'Zdotaccent',176=>'degree',177=>'plusminus',178=>'ogonek',179=>'lslash',180=>'acute',181=>'mu',182=>'paragraph',183=>'periodcentered',184=>'cedilla',185=>'aogonek',186=>'scedilla',187=>'guillemotright',188=>'Lcaron',189=>'hungarumlaut',190=>'lcaron',191=>'zdotaccent',192=>'Racute',193=>'Aacute',194=>'Acircumflex',195=>'Abreve',196=>'Adieresis',197=>'Lacute',198=>'Cacute',199=>'Ccedilla',200=>'Ccaron',201=>'Eacute',202=>'Eogonek',203=>'Edieresis',204=>'Ecaron',205=>'Iacute',206=>'Icircumflex',207=>'Dcaron',208=>'Dcroat',209=>'Nacute',210=>'Ncaron',211=>'Oacute',212=>'Ocircumflex',213=>'Ohungarumlaut',214=>'Odieresis',215=>'multiply',216=>'Rcaron',217=>'Uring',218=>'Uacute',219=>'Uhungarumlaut',220=>'Udieresis',221=>'Yacute',222=>'Tcommaaccent',223=>'germandbls',224=>'racute',225=>'aacute',226=>'acircumflex',227=>'abreve',228=>'adieresis',229=>'lacute',230=>'cacute',231=>'ccedilla',232=>'ccaron',233=>'eacute',234=>'eogonek',235=>'edieresis',236=>'ecaron',237=>'iacute',238=>'icircumflex',239=>'dcaron',240=>'dcroat',241=>'nacute',242=>'ncaron',243=>'oacute',244=>'ocircumflex',245=>'ohungarumlaut',246=>'odieresis',247=>'divide',248=>'rcaron',249=>'uring',250=>'uacute',251=>'uhungarumlaut',252=>'udieresis',253=>'yacute',254=>'tcommaaccent',255=>'dotaccent'), + +// encoding map for: cp1251 +'cp1251' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'afii10051',129=>'afii10052',130=>'quotesinglbase',131=>'afii10100',132=>'quotedblbase',133=>'ellipsis',134=>'dagger',135=>'daggerdbl',136=>'Euro',137=>'perthousand',138=>'afii10058',139=>'guilsinglleft',140=>'afii10059',141=>'afii10061',142=>'afii10060',143=>'afii10145',144=>'afii10099',145=>'quoteleft',146=>'quoteright',147=>'quotedblleft',148=>'quotedblright',149=>'bullet',150=>'endash',151=>'emdash',152=>'.notdef',153=>'trademark',154=>'afii10106',155=>'guilsinglright',156=>'afii10107',157=>'afii10109',158=>'afii10108',159=>'afii10193',160=>'space',161=>'afii10062',162=>'afii10110',163=>'afii10057',164=>'currency',165=>'afii10050',166=>'brokenbar',167=>'section',168=>'afii10023',169=>'copyright',170=>'afii10053',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'afii10056',176=>'degree',177=>'plusminus',178=>'afii10055',179=>'afii10103',180=>'afii10098',181=>'mu',182=>'paragraph',183=>'periodcentered',184=>'afii10071',185=>'afii61352',186=>'afii10101',187=>'guillemotright',188=>'afii10105',189=>'afii10054',190=>'afii10102',191=>'afii10104',192=>'afii10017',193=>'afii10018',194=>'afii10019',195=>'afii10020',196=>'afii10021',197=>'afii10022',198=>'afii10024',199=>'afii10025',200=>'afii10026',201=>'afii10027',202=>'afii10028',203=>'afii10029',204=>'afii10030',205=>'afii10031',206=>'afii10032',207=>'afii10033',208=>'afii10034',209=>'afii10035',210=>'afii10036',211=>'afii10037',212=>'afii10038',213=>'afii10039',214=>'afii10040',215=>'afii10041',216=>'afii10042',217=>'afii10043',218=>'afii10044',219=>'afii10045',220=>'afii10046',221=>'afii10047',222=>'afii10048',223=>'afii10049',224=>'afii10065',225=>'afii10066',226=>'afii10067',227=>'afii10068',228=>'afii10069',229=>'afii10070',230=>'afii10072',231=>'afii10073',232=>'afii10074',233=>'afii10075',234=>'afii10076',235=>'afii10077',236=>'afii10078',237=>'afii10079',238=>'afii10080',239=>'afii10081',240=>'afii10082',241=>'afii10083',242=>'afii10084',243=>'afii10085',244=>'afii10086',245=>'afii10087',246=>'afii10088',247=>'afii10089',248=>'afii10090',249=>'afii10091',250=>'afii10092',251=>'afii10093',252=>'afii10094',253=>'afii10095',254=>'afii10096',255=>'afii10097'), + +// encoding map for: cp1252 +'cp1252' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'Euro',129=>'.notdef',130=>'quotesinglbase',131=>'florin',132=>'quotedblbase',133=>'ellipsis',134=>'dagger',135=>'daggerdbl',136=>'circumflex',137=>'perthousand',138=>'Scaron',139=>'guilsinglleft',140=>'OE',141=>'.notdef',142=>'Zcaron',143=>'.notdef',144=>'.notdef',145=>'quoteleft',146=>'quoteright',147=>'quotedblleft',148=>'quotedblright',149=>'bullet',150=>'endash',151=>'emdash',152=>'tilde',153=>'trademark',154=>'scaron',155=>'guilsinglright',156=>'oe',157=>'.notdef',158=>'zcaron',159=>'Ydieresis',160=>'space',161=>'exclamdown',162=>'cent',163=>'sterling',164=>'currency',165=>'yen',166=>'brokenbar',167=>'section',168=>'dieresis',169=>'copyright',170=>'ordfeminine',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'macron',176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'acute',181=>'mu',182=>'paragraph',183=>'periodcentered',184=>'cedilla',185=>'onesuperior',186=>'ordmasculine',187=>'guillemotright',188=>'onequarter',189=>'onehalf',190=>'threequarters',191=>'questiondown',192=>'Agrave',193=>'Aacute',194=>'Acircumflex',195=>'Atilde',196=>'Adieresis',197=>'Aring',198=>'AE',199=>'Ccedilla',200=>'Egrave',201=>'Eacute',202=>'Ecircumflex',203=>'Edieresis',204=>'Igrave',205=>'Iacute',206=>'Icircumflex',207=>'Idieresis',208=>'Eth',209=>'Ntilde',210=>'Ograve',211=>'Oacute',212=>'Ocircumflex',213=>'Otilde',214=>'Odieresis',215=>'multiply',216=>'Oslash',217=>'Ugrave',218=>'Uacute',219=>'Ucircumflex',220=>'Udieresis',221=>'Yacute',222=>'Thorn',223=>'germandbls',224=>'agrave',225=>'aacute',226=>'acircumflex',227=>'atilde',228=>'adieresis',229=>'aring',230=>'ae',231=>'ccedilla',232=>'egrave',233=>'eacute',234=>'ecircumflex',235=>'edieresis',236=>'igrave',237=>'iacute',238=>'icircumflex',239=>'idieresis',240=>'eth',241=>'ntilde',242=>'ograve',243=>'oacute',244=>'ocircumflex',245=>'otilde',246=>'odieresis',247=>'divide',248=>'oslash',249=>'ugrave',250=>'uacute',251=>'ucircumflex',252=>'udieresis',253=>'yacute',254=>'thorn',255=>'ydieresis'), + +// encoding map for: cp1253 +'cp1253' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'Euro',129=>'.notdef',130=>'quotesinglbase',131=>'florin',132=>'quotedblbase',133=>'ellipsis',134=>'dagger',135=>'daggerdbl',136=>'.notdef',137=>'perthousand',138=>'.notdef',139=>'guilsinglleft',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef',144=>'.notdef',145=>'quoteleft',146=>'quoteright',147=>'quotedblleft',148=>'quotedblright',149=>'bullet',150=>'endash',151=>'emdash',152=>'.notdef',153=>'trademark',154=>'.notdef',155=>'guilsinglright',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef',160=>'space',161=>'dieresistonos',162=>'Alphatonos',163=>'sterling',164=>'currency',165=>'yen',166=>'brokenbar',167=>'section',168=>'dieresis',169=>'copyright',170=>'.notdef',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'afii00208',176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'tonos',181=>'mu',182=>'paragraph',183=>'periodcentered',184=>'Epsilontonos',185=>'Etatonos',186=>'Iotatonos',187=>'guillemotright',188=>'Omicrontonos',189=>'onehalf',190=>'Upsilontonos',191=>'Omegatonos',192=>'iotadieresistonos',193=>'Alpha',194=>'Beta',195=>'Gamma',196=>'Delta',197=>'Epsilon',198=>'Zeta',199=>'Eta',200=>'Theta',201=>'Iota',202=>'Kappa',203=>'Lambda',204=>'Mu',205=>'Nu',206=>'Xi',207=>'Omicron',208=>'Pi',209=>'Rho',210=>'.notdef',211=>'Sigma',212=>'Tau',213=>'Upsilon',214=>'Phi',215=>'Chi',216=>'Psi',217=>'Omega',218=>'Iotadieresis',219=>'Upsilondieresis',220=>'alphatonos',221=>'epsilontonos',222=>'etatonos',223=>'iotatonos',224=>'upsilondieresistonos',225=>'alpha',226=>'beta',227=>'gamma',228=>'delta',229=>'epsilon',230=>'zeta',231=>'eta',232=>'theta',233=>'iota',234=>'kappa',235=>'lambda',236=>'mu',237=>'nu',238=>'xi',239=>'omicron',240=>'pi',241=>'rho',242=>'sigma1',243=>'sigma',244=>'tau',245=>'upsilon',246=>'phi',247=>'chi',248=>'psi',249=>'omega',250=>'iotadieresis',251=>'upsilondieresis',252=>'omicrontonos',253=>'upsilontonos',254=>'omegatonos',255=>'.notdef'), + +// encoding map for: cp1254 +'cp1254' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'Euro',129=>'.notdef',130=>'quotesinglbase',131=>'florin',132=>'quotedblbase',133=>'ellipsis',134=>'dagger',135=>'daggerdbl',136=>'circumflex',137=>'perthousand',138=>'Scaron',139=>'guilsinglleft',140=>'OE',141=>'.notdef',142=>'.notdef',143=>'.notdef',144=>'.notdef',145=>'quoteleft',146=>'quoteright',147=>'quotedblleft',148=>'quotedblright',149=>'bullet',150=>'endash',151=>'emdash',152=>'tilde',153=>'trademark',154=>'scaron',155=>'guilsinglright',156=>'oe',157=>'.notdef',158=>'.notdef',159=>'Ydieresis',160=>'space',161=>'exclamdown',162=>'cent',163=>'sterling',164=>'currency',165=>'yen',166=>'brokenbar',167=>'section',168=>'dieresis',169=>'copyright',170=>'ordfeminine',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'macron',176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'acute',181=>'mu',182=>'paragraph',183=>'periodcentered',184=>'cedilla',185=>'onesuperior',186=>'ordmasculine',187=>'guillemotright',188=>'onequarter',189=>'onehalf',190=>'threequarters',191=>'questiondown',192=>'Agrave',193=>'Aacute',194=>'Acircumflex',195=>'Atilde',196=>'Adieresis',197=>'Aring',198=>'AE',199=>'Ccedilla',200=>'Egrave',201=>'Eacute',202=>'Ecircumflex',203=>'Edieresis',204=>'Igrave',205=>'Iacute',206=>'Icircumflex',207=>'Idieresis',208=>'Gbreve',209=>'Ntilde',210=>'Ograve',211=>'Oacute',212=>'Ocircumflex',213=>'Otilde',214=>'Odieresis',215=>'multiply',216=>'Oslash',217=>'Ugrave',218=>'Uacute',219=>'Ucircumflex',220=>'Udieresis',221=>'Idotaccent',222=>'Scedilla',223=>'germandbls',224=>'agrave',225=>'aacute',226=>'acircumflex',227=>'atilde',228=>'adieresis',229=>'aring',230=>'ae',231=>'ccedilla',232=>'egrave',233=>'eacute',234=>'ecircumflex',235=>'edieresis',236=>'igrave',237=>'iacute',238=>'icircumflex',239=>'idieresis',240=>'gbreve',241=>'ntilde',242=>'ograve',243=>'oacute',244=>'ocircumflex',245=>'otilde',246=>'odieresis',247=>'divide',248=>'oslash',249=>'ugrave',250=>'uacute',251=>'ucircumflex',252=>'udieresis',253=>'dotlessi',254=>'scedilla',255=>'ydieresis'), + +// encoding map for: cp1255 +'cp1255' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'Euro',129=>'.notdef',130=>'quotesinglbase',131=>'florin',132=>'quotedblbase',133=>'ellipsis',134=>'dagger',135=>'daggerdbl',136=>'circumflex',137=>'perthousand',138=>'.notdef',139=>'guilsinglleft',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef',144=>'.notdef',145=>'quoteleft',146=>'quoteright',147=>'quotedblleft',148=>'quotedblright',149=>'bullet',150=>'endash',151=>'emdash',152=>'tilde',153=>'trademark',154=>'.notdef',155=>'guilsinglright',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef',160=>'space',161=>'exclamdown',162=>'cent',163=>'sterling',164=>'afii57636',165=>'yen',166=>'brokenbar',167=>'section',168=>'dieresis',169=>'copyright',170=>'multiply',171=>'guillemotleft',172=>'logicalnot',173=>'sfthyphen',174=>'registered',175=>'macron',176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'acute',181=>'mu',182=>'paragraph',183=>'middot',184=>'cedilla',185=>'onesuperior',186=>'divide',187=>'guillemotright',188=>'onequarter',189=>'onehalf',190=>'threequarters',191=>'questiondown',192=>'afii57799',193=>'afii57801',194=>'afii57800',195=>'afii57802',196=>'afii57793',197=>'afii57794',198=>'afii57795',199=>'afii57798',200=>'afii57797',201=>'afii57806',202=>'.notdef',203=>'afii57796',204=>'afii57807',205=>'afii57839',206=>'afii57645',207=>'afii57841',208=>'afii57842',209=>'afii57804',210=>'afii57803',211=>'afii57658',212=>'afii57716',213=>'afii57717',214=>'afii57718',215=>'gereshhebrew',216=>'gershayimhebrew',217=>'.notdef',218=>'.notdef',219=>'.notdef',220=>'.notdef',221=>'.notdef',222=>'.notdef',223=>'.notdef',224=>'afii57664',225=>'afii57665',226=>'afii57666',227=>'afii57667',228=>'afii57668',229=>'afii57669',230=>'afii57670',231=>'afii57671',232=>'afii57672',233=>'afii57673',234=>'afii57674',235=>'afii57675',236=>'afii57676',237=>'afii57677',238=>'afii57678',239=>'afii57679',240=>'afii57680',241=>'afii57681',242=>'afii57682',243=>'afii57683',244=>'afii57684',245=>'afii57685',246=>'afii57686',247=>'afii57687',248=>'afii57688',249=>'afii57689',250=>'afii57690',251=>'.notdef',252=>'.notdef',253=>'afii299',254=>'afii300',255=>'.notdef'), + +// encoding map for: cp1256 +'cp1256' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'Euro',129=>'afii57506',130=>'quotesinglbase',131=>'florin',132=>'quotedblbase',133=>'ellipsis',134=>'dagger',135=>'daggerdbl',136=>'circumflex',137=>'perthousand',138=>'afii57511',139=>'guilsinglleft',140=>'OE',141=>'afii57507',142=>'afii57508',143=>'afii57512',144=>'afii57509',145=>'quoteleft',146=>'quoteright',147=>'quotedblleft',148=>'quotedblright',149=>'bullet',150=>'endash',151=>'emdash',152=>'.notdef',153=>'trademark',154=>'afii57513',155=>'guilsinglright',156=>'oe',157=>'afii61664',158=>'afii301',159=>'afii57514',160=>'space',161=>'afii57388',162=>'cent',163=>'sterling',164=>'currency',165=>'yen',166=>'brokenbar',167=>'section',168=>'dieresis',169=>'copyright',170=>'.notdef',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'macron',176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'acute',181=>'mu',182=>'paragraph',183=>'periodcentered',184=>'cedilla',185=>'onesuperior',186=>'afii57403',187=>'guillemotright',188=>'onequarter',189=>'onehalf',190=>'threequarters',191=>'afii57407',192=>'.notdef',193=>'afii57409',194=>'afii57410',195=>'afii57411',196=>'afii57412',197=>'afii57413',198=>'afii57414',199=>'afii57415',200=>'afii57416',201=>'afii57417',202=>'afii57418',203=>'afii57419',204=>'afii57420',205=>'afii57421',206=>'afii57422',207=>'afii57423',208=>'afii57424',209=>'afii57425',210=>'afii57426',211=>'afii57427',212=>'afii57428',213=>'afii57429',214=>'afii57430',215=>'multiply',216=>'afii57431',217=>'afii57432',218=>'afii57433',219=>'afii57434',220=>'afii57440',221=>'afii57441',222=>'afii57442',223=>'afii57443',224=>'agrave',225=>'afii57444',226=>'acircumflex',227=>'afii57445',228=>'afii57446',229=>'afii57470',230=>'afii57448',231=>'ccedilla',232=>'egrave',233=>'eacute',234=>'ecircumflex',235=>'edieresis',236=>'afii57449',237=>'afii57450',238=>'icircumflex',239=>'idieresis',240=>'afii57451',241=>'afii57452',242=>'afii57453',243=>'afii57454',244=>'ocircumflex',245=>'afii57455',246=>'afii57456',247=>'divide',248=>'afii57457',249=>'ugrave',250=>'afii57458',251=>'ucircumflex',252=>'udieresis',253=>'afii299',254=>'afii300',255=>'afii57519'), + +// encoding map for: cp1257 +'cp1257' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'Euro',129=>'.notdef',130=>'quotesinglbase',131=>'.notdef',132=>'quotedblbase',133=>'ellipsis',134=>'dagger',135=>'daggerdbl',136=>'.notdef',137=>'perthousand',138=>'.notdef',139=>'guilsinglleft',140=>'.notdef',141=>'dieresis',142=>'caron',143=>'cedilla',144=>'.notdef',145=>'quoteleft',146=>'quoteright',147=>'quotedblleft',148=>'quotedblright',149=>'bullet',150=>'endash',151=>'emdash',152=>'.notdef',153=>'trademark',154=>'.notdef',155=>'guilsinglright',156=>'.notdef',157=>'macron',158=>'ogonek',159=>'.notdef',160=>'space',161=>'.notdef',162=>'cent',163=>'sterling',164=>'currency',165=>'.notdef',166=>'brokenbar',167=>'section',168=>'Oslash',169=>'copyright',170=>'Rcommaaccent',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'AE',176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'acute',181=>'mu',182=>'paragraph',183=>'periodcentered',184=>'oslash',185=>'onesuperior',186=>'rcommaaccent',187=>'guillemotright',188=>'onequarter',189=>'onehalf',190=>'threequarters',191=>'ae',192=>'Aogonek',193=>'Iogonek',194=>'Amacron',195=>'Cacute',196=>'Adieresis',197=>'Aring',198=>'Eogonek',199=>'Emacron',200=>'Ccaron',201=>'Eacute',202=>'Zacute',203=>'Edotaccent',204=>'Gcommaaccent',205=>'Kcommaaccent',206=>'Imacron',207=>'Lcommaaccent',208=>'Scaron',209=>'Nacute',210=>'Ncommaaccent',211=>'Oacute',212=>'Omacron',213=>'Otilde',214=>'Odieresis',215=>'multiply',216=>'Uogonek',217=>'Lslash',218=>'Sacute',219=>'Umacron',220=>'Udieresis',221=>'Zdotaccent',222=>'Zcaron',223=>'germandbls',224=>'aogonek',225=>'iogonek',226=>'amacron',227=>'cacute',228=>'adieresis',229=>'aring',230=>'eogonek',231=>'emacron',232=>'ccaron',233=>'eacute',234=>'zacute',235=>'edotaccent',236=>'gcommaaccent',237=>'kcommaaccent',238=>'imacron',239=>'lcommaaccent',240=>'scaron',241=>'nacute',242=>'ncommaaccent',243=>'oacute',244=>'omacron',245=>'otilde',246=>'odieresis',247=>'divide',248=>'uogonek',249=>'lslash',250=>'sacute',251=>'umacron',252=>'udieresis',253=>'zdotaccent',254=>'zcaron',255=>'dotaccent'), + +// encoding map for: cp1258 +'cp1258' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'Euro',129=>'.notdef',130=>'quotesinglbase',131=>'florin',132=>'quotedblbase',133=>'ellipsis',134=>'dagger',135=>'daggerdbl',136=>'circumflex',137=>'perthousand',138=>'.notdef',139=>'guilsinglleft',140=>'OE',141=>'.notdef',142=>'.notdef',143=>'.notdef',144=>'.notdef',145=>'quoteleft',146=>'quoteright',147=>'quotedblleft',148=>'quotedblright',149=>'bullet',150=>'endash',151=>'emdash',152=>'tilde',153=>'trademark',154=>'.notdef',155=>'guilsinglright',156=>'oe',157=>'.notdef',158=>'.notdef',159=>'Ydieresis',160=>'space',161=>'exclamdown',162=>'cent',163=>'sterling',164=>'currency',165=>'yen',166=>'brokenbar',167=>'section',168=>'dieresis',169=>'copyright',170=>'ordfeminine',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'macron',176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'acute',181=>'mu',182=>'paragraph',183=>'periodcentered',184=>'cedilla',185=>'onesuperior',186=>'ordmasculine',187=>'guillemotright',188=>'onequarter',189=>'onehalf',190=>'threequarters',191=>'questiondown',192=>'Agrave',193=>'Aacute',194=>'Acircumflex',195=>'Abreve',196=>'Adieresis',197=>'Aring',198=>'AE',199=>'Ccedilla',200=>'Egrave',201=>'Eacute',202=>'Ecircumflex',203=>'Edieresis',204=>'gravecomb',205=>'Iacute',206=>'Icircumflex',207=>'Idieresis',208=>'Dcroat',209=>'Ntilde',210=>'hookabovecomb',211=>'Oacute',212=>'Ocircumflex',213=>'Ohorn',214=>'Odieresis',215=>'multiply',216=>'Oslash',217=>'Ugrave',218=>'Uacute',219=>'Ucircumflex',220=>'Udieresis',221=>'Uhorn',222=>'tildecomb',223=>'germandbls',224=>'agrave',225=>'aacute',226=>'acircumflex',227=>'abreve',228=>'adieresis',229=>'aring',230=>'ae',231=>'ccedilla',232=>'egrave',233=>'eacute',234=>'ecircumflex',235=>'edieresis',236=>'acutecomb',237=>'iacute',238=>'icircumflex',239=>'idieresis',240=>'dcroat',241=>'ntilde',242=>'dotbelowcomb',243=>'oacute',244=>'ocircumflex',245=>'ohorn',246=>'odieresis',247=>'divide',248=>'oslash',249=>'ugrave',250=>'uacute',251=>'ucircumflex',252=>'udieresis',253=>'uhorn',254=>'dong',255=>'ydieresis'), + +// encoding map for: iso-8859-1 +'iso-8859-1' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef',136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef',144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef',152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef',160=>'space',161=>'exclamdown',162=>'cent',163=>'sterling',164=>'currency',165=>'yen',166=>'brokenbar',167=>'section',168=>'dieresis',169=>'copyright',170=>'ordfeminine',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'macron',176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'acute',181=>'mu',182=>'paragraph',183=>'periodcentered',184=>'cedilla',185=>'onesuperior',186=>'ordmasculine',187=>'guillemotright',188=>'onequarter',189=>'onehalf',190=>'threequarters',191=>'questiondown',192=>'Agrave',193=>'Aacute',194=>'Acircumflex',195=>'Atilde',196=>'Adieresis',197=>'Aring',198=>'AE',199=>'Ccedilla',200=>'Egrave',201=>'Eacute',202=>'Ecircumflex',203=>'Edieresis',204=>'Igrave',205=>'Iacute',206=>'Icircumflex',207=>'Idieresis',208=>'Eth',209=>'Ntilde',210=>'Ograve',211=>'Oacute',212=>'Ocircumflex',213=>'Otilde',214=>'Odieresis',215=>'multiply',216=>'Oslash',217=>'Ugrave',218=>'Uacute',219=>'Ucircumflex',220=>'Udieresis',221=>'Yacute',222=>'Thorn',223=>'germandbls',224=>'agrave',225=>'aacute',226=>'acircumflex',227=>'atilde',228=>'adieresis',229=>'aring',230=>'ae',231=>'ccedilla',232=>'egrave',233=>'eacute',234=>'ecircumflex',235=>'edieresis',236=>'igrave',237=>'iacute',238=>'icircumflex',239=>'idieresis',240=>'eth',241=>'ntilde',242=>'ograve',243=>'oacute',244=>'ocircumflex',245=>'otilde',246=>'odieresis',247=>'divide',248=>'oslash',249=>'ugrave',250=>'uacute',251=>'ucircumflex',252=>'udieresis',253=>'yacute',254=>'thorn',255=>'ydieresis'), + +// encoding map for: iso-8859-2 +'iso-8859-2' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef',136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef',144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef',152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef',160=>'space',161=>'Aogonek',162=>'breve',163=>'Lslash',164=>'currency',165=>'Lcaron',166=>'Sacute',167=>'section',168=>'dieresis',169=>'Scaron',170=>'Scedilla',171=>'Tcaron',172=>'Zacute',173=>'hyphen',174=>'Zcaron',175=>'Zdotaccent',176=>'degree',177=>'aogonek',178=>'ogonek',179=>'lslash',180=>'acute',181=>'lcaron',182=>'sacute',183=>'caron',184=>'cedilla',185=>'scaron',186=>'scedilla',187=>'tcaron',188=>'zacute',189=>'hungarumlaut',190=>'zcaron',191=>'zdotaccent',192=>'Racute',193=>'Aacute',194=>'Acircumflex',195=>'Abreve',196=>'Adieresis',197=>'Lacute',198=>'Cacute',199=>'Ccedilla',200=>'Ccaron',201=>'Eacute',202=>'Eogonek',203=>'Edieresis',204=>'Ecaron',205=>'Iacute',206=>'Icircumflex',207=>'Dcaron',208=>'Dcroat',209=>'Nacute',210=>'Ncaron',211=>'Oacute',212=>'Ocircumflex',213=>'Ohungarumlaut',214=>'Odieresis',215=>'multiply',216=>'Rcaron',217=>'Uring',218=>'Uacute',219=>'Uhungarumlaut',220=>'Udieresis',221=>'Yacute',222=>'Tcommaaccent',223=>'germandbls',224=>'racute',225=>'aacute',226=>'acircumflex',227=>'abreve',228=>'adieresis',229=>'lacute',230=>'cacute',231=>'ccedilla',232=>'ccaron',233=>'eacute',234=>'eogonek',235=>'edieresis',236=>'ecaron',237=>'iacute',238=>'icircumflex',239=>'dcaron',240=>'dcroat',241=>'nacute',242=>'ncaron',243=>'oacute',244=>'ocircumflex',245=>'ohungarumlaut',246=>'odieresis',247=>'divide',248=>'rcaron',249=>'uring',250=>'uacute',251=>'uhungarumlaut',252=>'udieresis',253=>'yacute',254=>'tcommaaccent',255=>'dotaccent'), + +// encoding map for: iso-8859-4 +'iso-8859-4' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef',136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef',144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef',152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef',160=>'space',161=>'Aogonek',162=>'kgreenlandic',163=>'Rcommaaccent',164=>'currency',165=>'Itilde',166=>'Lcommaaccent',167=>'section',168=>'dieresis',169=>'Scaron',170=>'Emacron',171=>'Gcommaaccent',172=>'Tbar',173=>'hyphen',174=>'Zcaron',175=>'macron',176=>'degree',177=>'aogonek',178=>'ogonek',179=>'rcommaaccent',180=>'acute',181=>'itilde',182=>'lcommaaccent',183=>'caron',184=>'cedilla',185=>'scaron',186=>'emacron',187=>'gcommaaccent',188=>'tbar',189=>'Eng',190=>'zcaron',191=>'eng',192=>'Amacron',193=>'Aacute',194=>'Acircumflex',195=>'Atilde',196=>'Adieresis',197=>'Aring',198=>'AE',199=>'Iogonek',200=>'Ccaron',201=>'Eacute',202=>'Eogonek',203=>'Edieresis',204=>'Edotaccent',205=>'Iacute',206=>'Icircumflex',207=>'Imacron',208=>'Dcroat',209=>'Ncommaaccent',210=>'Omacron',211=>'Kcommaaccent',212=>'Ocircumflex',213=>'Otilde',214=>'Odieresis',215=>'multiply',216=>'Oslash',217=>'Uogonek',218=>'Uacute',219=>'Ucircumflex',220=>'Udieresis',221=>'Utilde',222=>'Umacron',223=>'germandbls',224=>'amacron',225=>'aacute',226=>'acircumflex',227=>'atilde',228=>'adieresis',229=>'aring',230=>'ae',231=>'iogonek',232=>'ccaron',233=>'eacute',234=>'eogonek',235=>'edieresis',236=>'edotaccent',237=>'iacute',238=>'icircumflex',239=>'imacron',240=>'dcroat',241=>'ncommaaccent',242=>'omacron',243=>'kcommaaccent',244=>'ocircumflex',245=>'otilde',246=>'odieresis',247=>'divide',248=>'oslash',249=>'uogonek',250=>'uacute',251=>'ucircumflex',252=>'udieresis',253=>'utilde',254=>'umacron',255=>'dotaccent'), + +// encoding map for: iso-8859-5 +'iso-8859-5' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef',136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef',144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef',152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef',160=>'space',161=>'afii10023',162=>'afii10051',163=>'afii10052',164=>'afii10053',165=>'afii10054',166=>'afii10055',167=>'afii10056',168=>'afii10057',169=>'afii10058',170=>'afii10059',171=>'afii10060',172=>'afii10061',173=>'hyphen',174=>'afii10062',175=>'afii10145',176=>'afii10017',177=>'afii10018',178=>'afii10019',179=>'afii10020',180=>'afii10021',181=>'afii10022',182=>'afii10024',183=>'afii10025',184=>'afii10026',185=>'afii10027',186=>'afii10028',187=>'afii10029',188=>'afii10030',189=>'afii10031',190=>'afii10032',191=>'afii10033',192=>'afii10034',193=>'afii10035',194=>'afii10036',195=>'afii10037',196=>'afii10038',197=>'afii10039',198=>'afii10040',199=>'afii10041',200=>'afii10042',201=>'afii10043',202=>'afii10044',203=>'afii10045',204=>'afii10046',205=>'afii10047',206=>'afii10048',207=>'afii10049',208=>'afii10065',209=>'afii10066',210=>'afii10067',211=>'afii10068',212=>'afii10069',213=>'afii10070',214=>'afii10072',215=>'afii10073',216=>'afii10074',217=>'afii10075',218=>'afii10076',219=>'afii10077',220=>'afii10078',221=>'afii10079',222=>'afii10080',223=>'afii10081',224=>'afii10082',225=>'afii10083',226=>'afii10084',227=>'afii10085',228=>'afii10086',229=>'afii10087',230=>'afii10088',231=>'afii10089',232=>'afii10090',233=>'afii10091',234=>'afii10092',235=>'afii10093',236=>'afii10094',237=>'afii10095',238=>'afii10096',239=>'afii10097',240=>'afii61352',241=>'afii10071',242=>'afii10099',243=>'afii10100',244=>'afii10101',245=>'afii10102',246=>'afii10103',247=>'afii10104',248=>'afii10105',249=>'afii10106',250=>'afii10107',251=>'afii10108',252=>'afii10109',253=>'section',254=>'afii10110',255=>'afii10193'), + +// encoding map for: iso-8859-7 +'iso-8859-7' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef',136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef',144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef',152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef',160=>'space',161=>'quoteleft',162=>'quoteright',163=>'sterling',164=>'.notdef',165=>'.notdef',166=>'brokenbar',167=>'section',168=>'dieresis',169=>'copyright',170=>'.notdef',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'.notdef',175=>'afii00208',176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'tonos',181=>'dieresistonos',182=>'Alphatonos',183=>'periodcentered',184=>'Epsilontonos',185=>'Etatonos',186=>'Iotatonos',187=>'guillemotright',188=>'Omicrontonos',189=>'onehalf',190=>'Upsilontonos',191=>'Omegatonos',192=>'iotadieresistonos',193=>'Alpha',194=>'Beta',195=>'Gamma',196=>'Delta',197=>'Epsilon',198=>'Zeta',199=>'Eta',200=>'Theta',201=>'Iota',202=>'Kappa',203=>'Lambda',204=>'Mu',205=>'Nu',206=>'Xi',207=>'Omicron',208=>'Pi',209=>'Rho',210=>'.notdef',211=>'Sigma',212=>'Tau',213=>'Upsilon',214=>'Phi',215=>'Chi',216=>'Psi',217=>'Omega',218=>'Iotadieresis',219=>'Upsilondieresis',220=>'alphatonos',221=>'epsilontonos',222=>'etatonos',223=>'iotatonos',224=>'upsilondieresistonos',225=>'alpha',226=>'beta',227=>'gamma',228=>'delta',229=>'epsilon',230=>'zeta',231=>'eta',232=>'theta',233=>'iota',234=>'kappa',235=>'lambda',236=>'mu',237=>'nu',238=>'xi',239=>'omicron',240=>'pi',241=>'rho',242=>'sigma1',243=>'sigma',244=>'tau',245=>'upsilon',246=>'phi',247=>'chi',248=>'psi',249=>'omega',250=>'iotadieresis',251=>'upsilondieresis',252=>'omicrontonos',253=>'upsilontonos',254=>'omegatonos',255=>'.notdef'), + +// encoding map for: iso-8859-9 +'iso-8859-9' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef',136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef',144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef',152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef',160=>'space',161=>'exclamdown',162=>'cent',163=>'sterling',164=>'currency',165=>'yen',166=>'brokenbar',167=>'section',168=>'dieresis',169=>'copyright',170=>'ordfeminine',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'macron',176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'acute',181=>'mu',182=>'paragraph',183=>'periodcentered',184=>'cedilla',185=>'onesuperior',186=>'ordmasculine',187=>'guillemotright',188=>'onequarter',189=>'onehalf',190=>'threequarters',191=>'questiondown',192=>'Agrave',193=>'Aacute',194=>'Acircumflex',195=>'Atilde',196=>'Adieresis',197=>'Aring',198=>'AE',199=>'Ccedilla',200=>'Egrave',201=>'Eacute',202=>'Ecircumflex',203=>'Edieresis',204=>'Igrave',205=>'Iacute',206=>'Icircumflex',207=>'Idieresis',208=>'Gbreve',209=>'Ntilde',210=>'Ograve',211=>'Oacute',212=>'Ocircumflex',213=>'Otilde',214=>'Odieresis',215=>'multiply',216=>'Oslash',217=>'Ugrave',218=>'Uacute',219=>'Ucircumflex',220=>'Udieresis',221=>'Idotaccent',222=>'Scedilla',223=>'germandbls',224=>'agrave',225=>'aacute',226=>'acircumflex',227=>'atilde',228=>'adieresis',229=>'aring',230=>'ae',231=>'ccedilla',232=>'egrave',233=>'eacute',234=>'ecircumflex',235=>'edieresis',236=>'igrave',237=>'iacute',238=>'icircumflex',239=>'idieresis',240=>'gbreve',241=>'ntilde',242=>'ograve',243=>'oacute',244=>'ocircumflex',245=>'otilde',246=>'odieresis',247=>'divide',248=>'oslash',249=>'ugrave',250=>'uacute',251=>'ucircumflex',252=>'udieresis',253=>'dotlessi',254=>'scedilla',255=>'ydieresis'), + +// encoding map for: iso-8859-11 +'iso-8859-11' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef',136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef',144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef',152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef',160=>'space',161=>'kokaithai',162=>'khokhaithai',163=>'khokhuatthai',164=>'khokhwaithai',165=>'khokhonthai',166=>'khorakhangthai',167=>'ngonguthai',168=>'chochanthai',169=>'chochingthai',170=>'chochangthai',171=>'sosothai',172=>'chochoethai',173=>'yoyingthai',174=>'dochadathai',175=>'topatakthai',176=>'thothanthai',177=>'thonangmonthothai',178=>'thophuthaothai',179=>'nonenthai',180=>'dodekthai',181=>'totaothai',182=>'thothungthai',183=>'thothahanthai',184=>'thothongthai',185=>'nonuthai',186=>'bobaimaithai',187=>'poplathai',188=>'phophungthai',189=>'fofathai',190=>'phophanthai',191=>'fofanthai',192=>'phosamphaothai',193=>'momathai',194=>'yoyakthai',195=>'roruathai',196=>'ruthai',197=>'lolingthai',198=>'luthai',199=>'wowaenthai',200=>'sosalathai',201=>'sorusithai',202=>'sosuathai',203=>'hohipthai',204=>'lochulathai',205=>'oangthai',206=>'honokhukthai',207=>'paiyannoithai',208=>'saraathai',209=>'maihanakatthai',210=>'saraaathai',211=>'saraamthai',212=>'saraithai',213=>'saraiithai',214=>'sarauethai',215=>'saraueethai',216=>'sarauthai',217=>'sarauuthai',218=>'phinthuthai',219=>'.notdef',220=>'.notdef',221=>'.notdef',222=>'.notdef',223=>'bahtthai',224=>'saraethai',225=>'saraaethai',226=>'saraothai',227=>'saraaimaimuanthai',228=>'saraaimaimalaithai',229=>'lakkhangyaothai',230=>'maiyamokthai',231=>'maitaikhuthai',232=>'maiekthai',233=>'maithothai',234=>'maitrithai',235=>'maichattawathai',236=>'thanthakhatthai',237=>'nikhahitthai',238=>'yamakkanthai',239=>'fongmanthai',240=>'zerothai',241=>'onethai',242=>'twothai',243=>'threethai',244=>'fourthai',245=>'fivethai',246=>'sixthai',247=>'seventhai',248=>'eightthai',249=>'ninethai',250=>'angkhankhuthai',251=>'khomutthai',252=>'.notdef',253=>'.notdef',254=>'.notdef',255=>'.notdef'), + +// encoding map for: iso-8859-15 +'iso-8859-15' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef',136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef',144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef',152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef',160=>'space',161=>'exclamdown',162=>'cent',163=>'sterling',164=>'Euro',165=>'yen',166=>'Scaron',167=>'section',168=>'scaron',169=>'copyright',170=>'ordfeminine',171=>'guillemotleft',172=>'logicalnot',173=>'hyphen',174=>'registered',175=>'macron',176=>'degree',177=>'plusminus',178=>'twosuperior',179=>'threesuperior',180=>'Zcaron',181=>'mu',182=>'paragraph',183=>'periodcentered',184=>'zcaron',185=>'onesuperior',186=>'ordmasculine',187=>'guillemotright',188=>'OE',189=>'oe',190=>'Ydieresis',191=>'questiondown',192=>'Agrave',193=>'Aacute',194=>'Acircumflex',195=>'Atilde',196=>'Adieresis',197=>'Aring',198=>'AE',199=>'Ccedilla',200=>'Egrave',201=>'Eacute',202=>'Ecircumflex',203=>'Edieresis',204=>'Igrave',205=>'Iacute',206=>'Icircumflex',207=>'Idieresis',208=>'Eth',209=>'Ntilde',210=>'Ograve',211=>'Oacute',212=>'Ocircumflex',213=>'Otilde',214=>'Odieresis',215=>'multiply',216=>'Oslash',217=>'Ugrave',218=>'Uacute',219=>'Ucircumflex',220=>'Udieresis',221=>'Yacute',222=>'Thorn',223=>'germandbls',224=>'agrave',225=>'aacute',226=>'acircumflex',227=>'atilde',228=>'adieresis',229=>'aring',230=>'ae',231=>'ccedilla',232=>'egrave',233=>'eacute',234=>'ecircumflex',235=>'edieresis',236=>'igrave',237=>'iacute',238=>'icircumflex',239=>'idieresis',240=>'eth',241=>'ntilde',242=>'ograve',243=>'oacute',244=>'ocircumflex',245=>'otilde',246=>'odieresis',247=>'divide',248=>'oslash',249=>'ugrave',250=>'uacute',251=>'ucircumflex',252=>'udieresis',253=>'yacute',254=>'thorn',255=>'ydieresis'), + +// encoding map for: iso-8859-16 +'iso-8859-16' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef',136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef',144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef',152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef',160=>'space',161=>'Aogonek',162=>'aogonek',163=>'Lslash',164=>'Euro',165=>'quotedblbase',166=>'Scaron',167=>'section',168=>'scaron',169=>'copyright',170=>'Scommaaccent',171=>'guillemotleft',172=>'Zacute',173=>'hyphen',174=>'zacute',175=>'Zdotaccent',176=>'degree',177=>'plusminus',178=>'Ccaron',179=>'lslash',180=>'Zcaron',181=>'quotedblright',182=>'paragraph',183=>'periodcentered',184=>'zcaron',185=>'ccaron',186=>'scommaaccent',187=>'guillemotright',188=>'OE',189=>'oe',190=>'Ydieresis',191=>'zdotaccent',192=>'Agrave',193=>'Aacute',194=>'Acircumflex',195=>'Abreve',196=>'Adieresis',197=>'Cacute',198=>'AE',199=>'Ccedilla',200=>'Egrave',201=>'Eacute',202=>'Ecircumflex',203=>'Edieresis',204=>'Igrave',205=>'Iacute',206=>'Icircumflex',207=>'Idieresis',208=>'Dcroat',209=>'Nacute',210=>'Ograve',211=>'Oacute',212=>'Ocircumflex',213=>'Ohungarumlaut',214=>'Odieresis',215=>'Sacute',216=>'Uhungarumlaut',217=>'Ugrave',218=>'Uacute',219=>'Ucircumflex',220=>'Udieresis',221=>'Eogonek',222=>'Tcommaaccent',223=>'germandbls',224=>'agrave',225=>'aacute',226=>'acircumflex',227=>'abreve',228=>'adieresis',229=>'cacute',230=>'ae',231=>'ccedilla',232=>'egrave',233=>'eacute',234=>'ecircumflex',235=>'edieresis',236=>'igrave',237=>'iacute',238=>'icircumflex',239=>'idieresis',240=>'dcroat',241=>'nacute',242=>'ograve',243=>'oacute',244=>'ocircumflex',245=>'ohungarumlaut',246=>'odieresis',247=>'sacute',248=>'uhungarumlaut',249=>'ugrave',250=>'uacute',251=>'ucircumflex',252=>'udieresis',253=>'eogonek',254=>'tcommaaccent',255=>'ydieresis'), + +// encoding map for: koi8-r +'koi8-r' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'SF100000',129=>'SF110000',130=>'SF010000',131=>'SF030000',132=>'SF020000',133=>'SF040000',134=>'SF080000',135=>'SF090000',136=>'SF060000',137=>'SF070000',138=>'SF050000',139=>'upblock',140=>'dnblock',141=>'block',142=>'lfblock',143=>'rtblock',144=>'ltshade',145=>'shade',146=>'dkshade',147=>'integraltp',148=>'filledbox',149=>'periodcentered',150=>'radical',151=>'approxequal',152=>'lessequal',153=>'greaterequal',154=>'space',155=>'integralbt',156=>'degree',157=>'twosuperior',158=>'periodcentered',159=>'divide',160=>'SF430000',161=>'SF240000',162=>'SF510000',163=>'afii10071',164=>'SF520000',165=>'SF390000',166=>'SF220000',167=>'SF210000',168=>'SF250000',169=>'SF500000',170=>'SF490000',171=>'SF380000',172=>'SF280000',173=>'SF270000',174=>'SF260000',175=>'SF360000',176=>'SF370000',177=>'SF420000',178=>'SF190000',179=>'afii10023',180=>'SF200000',181=>'SF230000',182=>'SF470000',183=>'SF480000',184=>'SF410000',185=>'SF450000',186=>'SF460000',187=>'SF400000',188=>'SF540000',189=>'SF530000',190=>'SF440000',191=>'copyright',192=>'afii10096',193=>'afii10065',194=>'afii10066',195=>'afii10088',196=>'afii10069',197=>'afii10070',198=>'afii10086',199=>'afii10068',200=>'afii10087',201=>'afii10074',202=>'afii10075',203=>'afii10076',204=>'afii10077',205=>'afii10078',206=>'afii10079',207=>'afii10080',208=>'afii10081',209=>'afii10097',210=>'afii10082',211=>'afii10083',212=>'afii10084',213=>'afii10085',214=>'afii10072',215=>'afii10067',216=>'afii10094',217=>'afii10093',218=>'afii10073',219=>'afii10090',220=>'afii10095',221=>'afii10091',222=>'afii10089',223=>'afii10092',224=>'afii10048',225=>'afii10017',226=>'afii10018',227=>'afii10040',228=>'afii10021',229=>'afii10022',230=>'afii10038',231=>'afii10020',232=>'afii10039',233=>'afii10026',234=>'afii10027',235=>'afii10028',236=>'afii10029',237=>'afii10030',238=>'afii10031',239=>'afii10032',240=>'afii10033',241=>'afii10049',242=>'afii10034',243=>'afii10035',244=>'afii10036',245=>'afii10037',246=>'afii10024',247=>'afii10019',248=>'afii10046',249=>'afii10045',250=>'afii10025',251=>'afii10042',252=>'afii10047',253=>'afii10043',254=>'afii10041',255=>'afii10044'), + +// encoding map for: koi8-u +'koi8-u' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'quotedbl',35=>'numbersign',36=>'dollar',37=>'percent',38=>'ampersand',39=>'quotesingle',40=>'parenleft',41=>'parenright',42=>'asterisk',43=>'plus',44=>'comma',45=>'hyphen',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'at',65=>'A',66=>'B',67=>'C',68=>'D',69=>'E',70=>'F',71=>'G',72=>'H',73=>'I',74=>'J',75=>'K',76=>'L',77=>'M',78=>'N',79=>'O',80=>'P',81=>'Q',82=>'R',83=>'S',84=>'T',85=>'U',86=>'V',87=>'W',88=>'X',89=>'Y',90=>'Z',91=>'bracketleft',92=>'backslash',93=>'bracketright',94=>'asciicircum',95=>'underscore',96=>'grave',97=>'a',98=>'b',99=>'c',100=>'d',101=>'e',102=>'f',103=>'g',104=>'h',105=>'i',106=>'j',107=>'k',108=>'l',109=>'m',110=>'n',111=>'o',112=>'p',113=>'q',114=>'r',115=>'s',116=>'t',117=>'u',118=>'v',119=>'w',120=>'x',121=>'y',122=>'z',123=>'braceleft',124=>'bar',125=>'braceright',126=>'asciitilde',127=>'.notdef',128=>'SF100000',129=>'SF110000',130=>'SF010000',131=>'SF030000',132=>'SF020000',133=>'SF040000',134=>'SF080000',135=>'SF090000',136=>'SF060000',137=>'SF070000',138=>'SF050000',139=>'upblock',140=>'dnblock',141=>'block',142=>'lfblock',143=>'rtblock',144=>'ltshade',145=>'shade',146=>'dkshade',147=>'integraltp',148=>'filledbox',149=>'bullet',150=>'radical',151=>'approxequal',152=>'lessequal',153=>'greaterequal',154=>'space',155=>'integralbt',156=>'degree',157=>'twosuperior',158=>'periodcentered',159=>'divide',160=>'SF430000',161=>'SF240000',162=>'SF510000',163=>'afii10071',164=>'afii10101',165=>'SF390000',166=>'afii10103',167=>'afii10104',168=>'SF250000',169=>'SF500000',170=>'SF490000',171=>'SF380000',172=>'SF280000',173=>'afii10098',174=>'SF260000',175=>'SF360000',176=>'SF370000',177=>'SF420000',178=>'SF190000',179=>'afii10023',180=>'afii10053',181=>'SF230000',182=>'afii10055',183=>'afii10056',184=>'SF410000',185=>'SF450000',186=>'SF460000',187=>'SF400000',188=>'SF540000',189=>'afii10050',190=>'SF440000',191=>'copyright',192=>'afii10096',193=>'afii10065',194=>'afii10066',195=>'afii10088',196=>'afii10069',197=>'afii10070',198=>'afii10086',199=>'afii10068',200=>'afii10087',201=>'afii10074',202=>'afii10075',203=>'afii10076',204=>'afii10077',205=>'afii10078',206=>'afii10079',207=>'afii10080',208=>'afii10081',209=>'afii10097',210=>'afii10082',211=>'afii10083',212=>'afii10084',213=>'afii10085',214=>'afii10072',215=>'afii10067',216=>'afii10094',217=>'afii10093',218=>'afii10073',219=>'afii10090',220=>'afii10095',221=>'afii10091',222=>'afii10089',223=>'afii10092',224=>'afii10048',225=>'afii10017',226=>'afii10018',227=>'afii10040',228=>'afii10021',229=>'afii10022',230=>'afii10038',231=>'afii10020',232=>'afii10039',233=>'afii10026',234=>'afii10027',235=>'afii10028',236=>'afii10029',237=>'afii10030',238=>'afii10031',239=>'afii10032',240=>'afii10033',241=>'afii10049',242=>'afii10034',243=>'afii10035',244=>'afii10036',245=>'afii10037',246=>'afii10024',247=>'afii10019',248=>'afii10046',249=>'afii10045',250=>'afii10025',251=>'afii10042',252=>'afii10047',253=>'afii10043',254=>'afii10041',255=>'afii10044'), + +// encoding map for: symbol +'symbol' => array(0=>'.notdef',1=>'.notdef',2=>'.notdef',3=>'.notdef',4=>'.notdef',5=>'.notdef',6=>'.notdef',7=>'.notdef',8=>'.notdef',9=>'.notdef',10=>'.notdef',11=>'.notdef',12=>'.notdef',13=>'.notdef',14=>'.notdef',15=>'.notdef',16=>'.notdef',17=>'.notdef',18=>'.notdef',19=>'.notdef',20=>'.notdef',21=>'.notdef',22=>'.notdef',23=>'.notdef',24=>'.notdef',25=>'.notdef',26=>'.notdef',27=>'.notdef',28=>'.notdef',29=>'.notdef',30=>'.notdef',31=>'.notdef',32=>'space',33=>'exclam',34=>'universal',35=>'numbersign',36=>'existential',37=>'percent',38=>'ampersand',39=>'suchthat',40=>'parenleft',41=>'parenright',42=>'asteriskmath',43=>'plus',44=>'comma',45=>'minus',46=>'period',47=>'slash',48=>'zero',49=>'one',50=>'two',51=>'three',52=>'four',53=>'five',54=>'six',55=>'seven',56=>'eight',57=>'nine',58=>'colon',59=>'semicolon',60=>'less',61=>'equal',62=>'greater',63=>'question',64=>'congruent',65=>'Alpha',66=>'Beta',67=>'Chi',68=>'Delta',69=>'Epsilon',70=>'Phi',71=>'Gamma',72=>'Eta',73=>'Iota',74=>'theta1',75=>'Kappa',76=>'Lambda',77=>'Mu',78=>'Nu',79=>'Omicron',80=>'Pi',81=>'Theta',82=>'Rho',83=>'Sigma',84=>'Tau',85=>'Upsilon',86=>'sigma1',87=>'Omega',88=>'Xi',89=>'Psi',90=>'Zeta',91=>'bracketleft',92=>'therefore',93=>'bracketright',94=>'perpendicular',95=>'underscore',96=>'radicalex',97=>'alpha',98=>'beta',99=>'chi',100=>'delta',101=>'epsilon',102=>'phi',103=>'gamma',104=>'eta',105=>'iota',106=>'phi1',107=>'kappa',108=>'lambda',109=>'mu',110=>'nu',111=>'omicron',112=>'pi',113=>'theta',114=>'rho',115=>'sigma',116=>'tau',117=>'upsilon',118=>'omega1',119=>'omega',120=>'xi',121=>'psi',122=>'zeta',123=>'braceleft',124=>'bar',125=>'braceright',126=>'similar',127=>'.notdef',128=>'.notdef',129=>'.notdef',130=>'.notdef',131=>'.notdef',132=>'.notdef',133=>'.notdef',134=>'.notdef',135=>'.notdef',136=>'.notdef',137=>'.notdef',138=>'.notdef',139=>'.notdef',140=>'.notdef',141=>'.notdef',142=>'.notdef',143=>'.notdef',144=>'.notdef',145=>'.notdef',146=>'.notdef',147=>'.notdef',148=>'.notdef',149=>'.notdef',150=>'.notdef',151=>'.notdef',152=>'.notdef',153=>'.notdef',154=>'.notdef',155=>'.notdef',156=>'.notdef',157=>'.notdef',158=>'.notdef',159=>'.notdef',160=>'Euro',161=>'Upsilon1',162=>'minute',163=>'lessequal',164=>'fraction',165=>'infinity',166=>'florin',167=>'club',168=>'diamond',169=>'heart',170=>'spade',171=>'arrowboth',172=>'arrowleft',173=>'arrowup',174=>'arrowright',175=>'arrowdown',176=>'degree',177=>'plusminus',178=>'second',179=>'greaterequal',180=>'multiply',181=>'proportional',182=>'partialdiff',183=>'bullet',184=>'divide',185=>'notequal',186=>'equivalence',187=>'approxequal',188=>'ellipsis',189=>'arrowvertex',190=>'arrowhorizex',191=>'carriagereturn',192=>'aleph',193=>'Ifraktur',194=>'Rfraktur',195=>'weierstrass',196=>'circlemultiply',197=>'circleplus',198=>'emptyset',199=>'intersection',200=>'union',201=>'propersuperset',202=>'reflexsuperset',203=>'notsubset',204=>'propersubset',205=>'reflexsubset',206=>'element',207=>'notelement',208=>'angle',209=>'gradient',210=>'registerserif',211=>'copyrightserif',212=>'trademarkserif',213=>'product',214=>'radical',215=>'dotmath',216=>'logicalnot',217=>'logicaland',218=>'logicalor',219=>'arrowdblboth',220=>'arrowdblleft',221=>'arrowdblup',222=>'arrowdblright',223=>'arrowdbldown',224=>'lozenge',225=>'angleleft',226=>'registersans',227=>'copyrightsans',228=>'trademarksans',229=>'summation',230=>'parenlefttp',231=>'parenleftex',232=>'parenleftbt',233=>'bracketlefttp',234=>'bracketleftex',235=>'bracketleftbt',236=>'bracelefttp',237=>'braceleftmid',238=>'braceleftbt',239=>'braceex',240=>'.notdef',241=>'angleright',242=>'integral',243=>'integraltp',244=>'integralex',245=>'integralbt',246=>'parenrighttp',247=>'parenrightex',248=>'parenrightbt',249=>'bracketrighttp',250=>'bracketrightex',251=>'bracketrightbt',252=>'bracerighttp',253=>'bracerightmid',254=>'bracerightbt',255=>'.notdef',1226=>'registered',1227=>'copyright',1228=>'trademark') + +); // end of encoding maps + +/** + * ToUnicode map for Identity-H stream + * @public static + */ +public static $uni_identity_h = "/CIDInit /ProcSet findresource begin\n12 dict begin\nbegincmap\n/CIDSystemInfo << /Registry (Adobe) /Ordering (UCS) /Supplement 0 >> def\n/CMapName /Adobe-Identity-UCS def\n/CMapType 2 def\n/WMode 0 def\n1 begincodespacerange\n<0000> \nendcodespacerange\n100 beginbfrange\n<0000> <00ff> <0000>\n<0100> <01ff> <0100>\n<0200> <02ff> <0200>\n<0300> <03ff> <0300>\n<0400> <04ff> <0400>\n<0500> <05ff> <0500>\n<0600> <06ff> <0600>\n<0700> <07ff> <0700>\n<0800> <08ff> <0800>\n<0900> <09ff> <0900>\n<0a00> <0aff> <0a00>\n<0b00> <0bff> <0b00>\n<0c00> <0cff> <0c00>\n<0d00> <0dff> <0d00>\n<0e00> <0eff> <0e00>\n<0f00> <0fff> <0f00>\n<1000> <10ff> <1000>\n<1100> <11ff> <1100>\n<1200> <12ff> <1200>\n<1300> <13ff> <1300>\n<1400> <14ff> <1400>\n<1500> <15ff> <1500>\n<1600> <16ff> <1600>\n<1700> <17ff> <1700>\n<1800> <18ff> <1800>\n<1900> <19ff> <1900>\n<1a00> <1aff> <1a00>\n<1b00> <1bff> <1b00>\n<1c00> <1cff> <1c00>\n<1d00> <1dff> <1d00>\n<1e00> <1eff> <1e00>\n<1f00> <1fff> <1f00>\n<2000> <20ff> <2000>\n<2100> <21ff> <2100>\n<2200> <22ff> <2200>\n<2300> <23ff> <2300>\n<2400> <24ff> <2400>\n<2500> <25ff> <2500>\n<2600> <26ff> <2600>\n<2700> <27ff> <2700>\n<2800> <28ff> <2800>\n<2900> <29ff> <2900>\n<2a00> <2aff> <2a00>\n<2b00> <2bff> <2b00>\n<2c00> <2cff> <2c00>\n<2d00> <2dff> <2d00>\n<2e00> <2eff> <2e00>\n<2f00> <2fff> <2f00>\n<3000> <30ff> <3000>\n<3100> <31ff> <3100>\n<3200> <32ff> <3200>\n<3300> <33ff> <3300>\n<3400> <34ff> <3400>\n<3500> <35ff> <3500>\n<3600> <36ff> <3600>\n<3700> <37ff> <3700>\n<3800> <38ff> <3800>\n<3900> <39ff> <3900>\n<3a00> <3aff> <3a00>\n<3b00> <3bff> <3b00>\n<3c00> <3cff> <3c00>\n<3d00> <3dff> <3d00>\n<3e00> <3eff> <3e00>\n<3f00> <3fff> <3f00>\n<4000> <40ff> <4000>\n<4100> <41ff> <4100>\n<4200> <42ff> <4200>\n<4300> <43ff> <4300>\n<4400> <44ff> <4400>\n<4500> <45ff> <4500>\n<4600> <46ff> <4600>\n<4700> <47ff> <4700>\n<4800> <48ff> <4800>\n<4900> <49ff> <4900>\n<4a00> <4aff> <4a00>\n<4b00> <4bff> <4b00>\n<4c00> <4cff> <4c00>\n<4d00> <4dff> <4d00>\n<4e00> <4eff> <4e00>\n<4f00> <4fff> <4f00>\n<5000> <50ff> <5000>\n<5100> <51ff> <5100>\n<5200> <52ff> <5200>\n<5300> <53ff> <5300>\n<5400> <54ff> <5400>\n<5500> <55ff> <5500>\n<5600> <56ff> <5600>\n<5700> <57ff> <5700>\n<5800> <58ff> <5800>\n<5900> <59ff> <5900>\n<5a00> <5aff> <5a00>\n<5b00> <5bff> <5b00>\n<5c00> <5cff> <5c00>\n<5d00> <5dff> <5d00>\n<5e00> <5eff> <5e00>\n<5f00> <5fff> <5f00>\n<6000> <60ff> <6000>\n<6100> <61ff> <6100>\n<6200> <62ff> <6200>\n<6300> <63ff> <6300>\nendbfrange\n100 beginbfrange\n<6400> <64ff> <6400>\n<6500> <65ff> <6500>\n<6600> <66ff> <6600>\n<6700> <67ff> <6700>\n<6800> <68ff> <6800>\n<6900> <69ff> <6900>\n<6a00> <6aff> <6a00>\n<6b00> <6bff> <6b00>\n<6c00> <6cff> <6c00>\n<6d00> <6dff> <6d00>\n<6e00> <6eff> <6e00>\n<6f00> <6fff> <6f00>\n<7000> <70ff> <7000>\n<7100> <71ff> <7100>\n<7200> <72ff> <7200>\n<7300> <73ff> <7300>\n<7400> <74ff> <7400>\n<7500> <75ff> <7500>\n<7600> <76ff> <7600>\n<7700> <77ff> <7700>\n<7800> <78ff> <7800>\n<7900> <79ff> <7900>\n<7a00> <7aff> <7a00>\n<7b00> <7bff> <7b00>\n<7c00> <7cff> <7c00>\n<7d00> <7dff> <7d00>\n<7e00> <7eff> <7e00>\n<7f00> <7fff> <7f00>\n<8000> <80ff> <8000>\n<8100> <81ff> <8100>\n<8200> <82ff> <8200>\n<8300> <83ff> <8300>\n<8400> <84ff> <8400>\n<8500> <85ff> <8500>\n<8600> <86ff> <8600>\n<8700> <87ff> <8700>\n<8800> <88ff> <8800>\n<8900> <89ff> <8900>\n<8a00> <8aff> <8a00>\n<8b00> <8bff> <8b00>\n<8c00> <8cff> <8c00>\n<8d00> <8dff> <8d00>\n<8e00> <8eff> <8e00>\n<8f00> <8fff> <8f00>\n<9000> <90ff> <9000>\n<9100> <91ff> <9100>\n<9200> <92ff> <9200>\n<9300> <93ff> <9300>\n<9400> <94ff> <9400>\n<9500> <95ff> <9500>\n<9600> <96ff> <9600>\n<9700> <97ff> <9700>\n<9800> <98ff> <9800>\n<9900> <99ff> <9900>\n<9a00> <9aff> <9a00>\n<9b00> <9bff> <9b00>\n<9c00> <9cff> <9c00>\n<9d00> <9dff> <9d00>\n<9e00> <9eff> <9e00>\n<9f00> <9fff> <9f00>\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \nendbfrange\n56 beginbfrange\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \nendbfrange\nendcmap\nCMapName currentdict /CMap defineresource pop\nend\nend"; + +} // END OF TCPDF_FONT_DATA CLASS //============================================================+ // END OF FILE diff --git a/lib/tcpdf/include/tcpdf_fonts.php b/lib/tcpdf/include/tcpdf_fonts.php new file mode 100644 index 00000000000..53f4eb5d603 --- /dev/null +++ b/lib/tcpdf/include/tcpdf_fonts.php @@ -0,0 +1,2562 @@ +. +// +// See LICENSE.TXT file for more information. +// ------------------------------------------------------------------- +// +// Description :Font methods for TCPDF library. +// +//============================================================+ + +/** + * @file + * Unicode data and font methods for TCPDF library. + * @author Nicola Asuni + * @package com.tecnick.tcpdf + */ + +/** + * @class TCPDF_FONTS + * Font methods for TCPDF library. + * @package com.tecnick.tcpdf + * @version 1.0.009 + * @author Nicola Asuni - info@tecnick.com + */ +class TCPDF_FONTS { + + /** + * Convert and add the selected TrueType or Type1 font to the fonts folder (that must be writeable). + * @param $fontfile (string) Font file (full path). + * @param $fonttype (string) Font type. Leave empty for autodetect mode. Valid values are: TrueTypeUnicode, TrueType, Type1, CID0JP = CID-0 Japanese, CID0KR = CID-0 Korean, CID0CS = CID-0 Chinese Simplified, CID0CT = CID-0 Chinese Traditional. + * @param $enc (string) Name of the encoding table to use. Leave empty for default mode. Omit this parameter for TrueType Unicode and symbolic fonts like Symbol or ZapfDingBats. + * @param $flags (int) Unsigned 32-bit integer containing flags specifying various characteristics of the font (PDF32000:2008 - 9.8.2 Font Descriptor Flags): +1 for fixed font; +4 for symbol or +32 for non-symbol; +64 for italic. Fixed and Italic mode are generally autodetected so you have to set it to 32 = non-symbolic font (default) or 4 = symbolic font. + * @param $outpath (string) Output path for generated font files (must be writeable by the web server). Leave empty for default font folder. + * @param $platid (int) Platform ID for CMAP table to extract (when building a Unicode font for Windows this value should be 3, for Macintosh should be 1). + * @param $encid (int) Encoding ID for CMAP table to extract (when building a Unicode font for Windows this value should be 1, for Macintosh should be 0). When Platform ID is 3, legal values for Encoding ID are: 0=Symbol, 1=Unicode, 2=ShiftJIS, 3=PRC, 4=Big5, 5=Wansung, 6=Johab, 7=Reserved, 8=Reserved, 9=Reserved, 10=UCS-4. + * @param $addcbbox (boolean) If true includes the character bounding box information on the php font file. + * @param $link (boolean) If true link to system font instead of copying the font data (not transportable) - Note: do not work with Type1 fonts. + * @return (string) TCPDF font name or boolean false in case of error. + * @author Nicola Asuni + * @since 5.9.123 (2010-09-30) + * @public static + */ + public static function addTTFfont($fontfile, $fonttype='', $enc='', $flags=32, $outpath='', $platid=3, $encid=1, $addcbbox=false, $link=false) { + if (!file_exists($fontfile)) { + // Could not find file + return false; + } + // font metrics + $fmetric = array(); + // build new font name for TCPDF compatibility + $font_path_parts = pathinfo($fontfile); + if (!isset($font_path_parts['filename'])) { + $font_path_parts['filename'] = substr($font_path_parts['basename'], 0, -(strlen($font_path_parts['extension']) + 1)); + } + $font_name = strtolower($font_path_parts['filename']); + $font_name = preg_replace('/[^a-z0-9_]/', '', $font_name); + $search = array('bold', 'oblique', 'italic', 'regular'); + $replace = array('b', 'i', 'i', ''); + $font_name = str_replace($search, $replace, $font_name); + if (empty($font_name)) { + // set generic name + $font_name = 'tcpdffont'; + } + // set output path + if (empty($outpath)) { + $outpath = self::_getfontpath(); + } + // check if this font already exist + if (@file_exists($outpath.$font_name.'.php')) { + // this font already exist (delete it from fonts folder to rebuild it) + return $font_name; + } + $fmetric['file'] = $font_name; + $fmetric['ctg'] = $font_name.'.ctg.z'; + // get font data + $font = file_get_contents($fontfile); + $fmetric['originalsize'] = strlen($font); + // autodetect font type + if (empty($fonttype)) { + if (TCPDF_STATIC::_getULONG($font, 0) == 0x10000) { + // True Type (Unicode or not) + $fonttype = 'TrueTypeUnicode'; + } elseif (substr($font, 0, 4) == 'OTTO') { + // Open Type (Unicode or not) + //Unsupported font format: OpenType with CFF data + return false; + } else { + // Type 1 + $fonttype = 'Type1'; + } + } + // set font type + switch ($fonttype) { + case 'CID0CT': + case 'CID0CS': + case 'CID0KR': + case 'CID0JP': { + $fmetric['type'] = 'cidfont0'; + break; + } + case 'Type1': { + $fmetric['type'] = 'Type1'; + if (empty($enc) AND (($flags & 4) == 0)) { + $enc = 'cp1252'; + } + break; + } + case 'TrueType': { + $fmetric['type'] = 'TrueType'; + break; + } + case 'TrueTypeUnicode': + default: { + $fmetric['type'] = 'TrueTypeUnicode'; + break; + } + } + // set encoding maps (if any) + $fmetric['enc'] = preg_replace('/[^A-Za-z0-9_\-]/', '', $enc); + $fmetric['diff'] = ''; + if (($fmetric['type'] == 'TrueType') OR ($fmetric['type'] == 'Type1')) { + if (!empty($enc) AND ($enc != 'cp1252') AND isset(TCPDF_FONT_DATA::$encmap[$enc])) { + // build differences from reference encoding + $enc_ref = TCPDF_FONT_DATA::$encmap['cp1252']; + $enc_target = TCPDF_FONT_DATA::$encmap[$enc]; + $last = 0; + for ($i = 32; $i <= 255; ++$i) { + if ($enc_target != $enc_ref[$i]) { + if ($i != ($last + 1)) { + $fmetric['diff'] .= $i.' '; + } + $last = $i; + $fmetric['diff'] .= '/'.$enc_target[$i].' '; + } + } + } + } + // parse the font by type + if ($fmetric['type'] == 'Type1') { + // ---------- TYPE 1 ---------- + // read first segment + $a = unpack('Cmarker/Ctype/Vsize', substr($font, 0, 6)); + if ($a['marker'] != 128) { + // Font file is not a valid binary Type1 + return false; + } + $fmetric['size1'] = $a['size']; + $data = substr($font, 6, $fmetric['size1']); + // read second segment + $a = unpack('Cmarker/Ctype/Vsize', substr($font, (6 + $fmetric['size1']), 6)); + if ($a['marker'] != 128) { + // Font file is not a valid binary Type1 + return false; + } + $fmetric['size2'] = $a['size']; + $encrypted = substr($font, (12 + $fmetric['size1']), $fmetric['size2']); + $data .= $encrypted; + // store compressed font + $fmetric['file'] .= '.z'; + $fp = fopen($outpath.$fmetric['file'], 'wb'); + fwrite($fp, gzcompress($data)); + fclose($fp); + // get font info + $fmetric['Flags'] = $flags; + preg_match ('#/FullName[\s]*\(([^\)]*)#', $font, $matches); + $fmetric['name'] = preg_replace('/[^a-zA-Z0-9_\-]/', '', $matches[1]); + preg_match('#/FontBBox[\s]*{([^}]*)#', $font, $matches); + $fmetric['bbox'] = trim($matches[1]); + $bv = explode(' ', $fmetric['bbox']); + $fmetric['Ascent'] = intval($bv[3]); + $fmetric['Descent'] = intval($bv[1]); + preg_match('#/ItalicAngle[\s]*([0-9\+\-]*)#', $font, $matches); + $fmetric['italicAngle'] = intval($matches[1]); + if ($fmetric['italicAngle'] != 0) { + $fmetric['Flags'] |= 64; + } + preg_match('#/UnderlinePosition[\s]*([0-9\+\-]*)#', $font, $matches); + $fmetric['underlinePosition'] = intval($matches[1]); + preg_match('#/UnderlineThickness[\s]*([0-9\+\-]*)#', $font, $matches); + $fmetric['underlineThickness'] = intval($matches[1]); + preg_match('#/isFixedPitch[\s]*([^\s]*)#', $font, $matches); + if ($matches[1] == 'true') { + $fmetric['Flags'] |= 1; + } + // get internal map + $imap = array(); + if (preg_match_all('#dup[\s]([0-9]+)[\s]*/([^\s]*)[\s]put#sU', $font, $fmap, PREG_SET_ORDER) > 0) { + foreach ($fmap as $v) { + $imap[$v[2]] = $v[1]; + } + } + // decrypt eexec encrypted part + $r = 55665; // eexec encryption constant + $c1 = 52845; + $c2 = 22719; + $elen = strlen($encrypted); + $eplain = ''; + for ($i = 0; $i < $elen; ++$i) { + $chr = ord($encrypted[$i]); + $eplain .= chr($chr ^ ($r >> 8)); + $r = ((($chr + $r) * $c1 + $c2) % 65536); + } + if (preg_match('#/ForceBold[\s]*([^\s]*)#', $eplain, $matches) > 0) { + if ($matches[1] == 'true') { + $fmetric['Flags'] |= 0x40000; + } + } + if (preg_match('#/StdVW[\s]*\[([^\]]*)#', $eplain, $matches) > 0) { + $fmetric['StemV'] = intval($matches[1]); + } else { + $fmetric['StemV'] = 70; + } + if (preg_match('#/StdHW[\s]*\[([^\]]*)#', $eplain, $matches) > 0) { + $fmetric['StemH'] = intval($matches[1]); + } else { + $fmetric['StemH'] = 30; + } + if (preg_match('#/BlueValues[\s]*\[([^\]]*)#', $eplain, $matches) > 0) { + $bv = explode(' ', $matches[1]); + if (count($bv) >= 6) { + $v1 = intval($bv[2]); + $v2 = intval($bv[4]); + if ($v1 <= $v2) { + $fmetric['XHeight'] = $v1; + $fmetric['CapHeight'] = $v2; + } else { + $fmetric['XHeight'] = $v2; + $fmetric['CapHeight'] = $v1; + } + } else { + $fmetric['XHeight'] = 450; + $fmetric['CapHeight'] = 700; + } + } else { + $fmetric['XHeight'] = 450; + $fmetric['CapHeight'] = 700; + } + // get the number of random bytes at the beginning of charstrings + if (preg_match('#/lenIV[\s]*([0-9]*)#', $eplain, $matches) > 0) { + $lenIV = intval($matches[1]); + } else { + $lenIV = 4; + } + $fmetric['Leading'] = 0; + // get charstring data + $eplain = substr($eplain, (strpos($eplain, '/CharStrings') + 1)); + preg_match_all('#/([A-Za-z0-9\.]*)[\s][0-9]+[\s]RD[\s](.*)[\s]ND#sU', $eplain, $matches, PREG_SET_ORDER); + if (!empty($enc) AND isset(TCPDF_FONT_DATA::$encmap[$enc])) { + $enc_map = TCPDF_FONT_DATA::$encmap[$enc]; + } else { + $enc_map = false; + } + $fmetric['cw'] = ''; + $fmetric['MaxWidth'] = 0; + $cwidths = array(); + foreach ($matches as $k => $v) { + $cid = 0; + if (isset($imap[$v[1]])) { + $cid = $imap[$v[1]]; + } elseif ($enc_map !== false) { + $cid = array_search($v[1], $enc_map); + if ($cid === false) { + $cid = 0; + } elseif ($cid > 1000) { + $cid -= 1000; + } + } + // decrypt charstring encrypted part + $r = 4330; // charstring encryption constant + $c1 = 52845; + $c2 = 22719; + $cd = $v[2]; + $clen = strlen($cd); + $ccom = array(); + for ($i = 0; $i < $clen; ++$i) { + $chr = ord($cd[$i]); + $ccom[] = ($chr ^ ($r >> 8)); + $r = ((($chr + $r) * $c1 + $c2) % 65536); + } + // decode numbers + $cdec = array(); + $ck = 0; + $i = $lenIV; + while ($i < $clen) { + if ($ccom[$i] < 32) { + $cdec[$ck] = $ccom[$i]; + if (($ck > 0) AND ($cdec[$ck] == 13)) { + // hsbw command: update width + $cwidths[$cid] = $cdec[($ck - 1)]; + } + ++$i; + } elseif (($ccom[$i] >= 32) AND ($ccom[$i] <= 246)) { + $cdec[$ck] = ($ccom[$i] - 139); + ++$i; + } elseif (($ccom[$i] >= 247) AND ($ccom[$i] <= 250)) { + $cdec[$ck] = ((($ccom[$i] - 247) * 256) + $ccom[($i + 1)] + 108); + $i += 2; + } elseif (($ccom[$i] >= 251) AND ($ccom[$i] <= 254)) { + $cdec[$ck] = ((-($ccom[$i] - 251) * 256) - $ccom[($i + 1)] - 108); + $i += 2; + } elseif ($ccom[$i] == 255) { + $sval = chr($ccom[($i + 1)]).chr($ccom[($i + 2)]).chr($ccom[($i + 3)]).chr($ccom[($i + 4)]); + $vsval = unpack('li', $sval); + $cdec[$ck] = $vsval['i']; + $i += 5; + } + ++$ck; + } + } // end for each matches + $fmetric['MissingWidth'] = $cwidths[0]; + $fmetric['MaxWidth'] = $fmetric['MissingWidth']; + $fmetric['AvgWidth'] = 0; + // set chars widths + for ($cid = 0; $cid <= 255; ++$cid) { + if (isset($cwidths[$cid])) { + if ($cwidths[$cid] > $fmetric['MaxWidth']) { + $fmetric['MaxWidth'] = $cwidths[$cid]; + } + $fmetric['AvgWidth'] += $cwidths[$cid]; + $fmetric['cw'] .= ','.$cid.'=>'.$cwidths[$cid]; + } else { + $fmetric['cw'] .= ','.$cid.'=>'.$fmetric['MissingWidth']; + } + } + $fmetric['AvgWidth'] = round($fmetric['AvgWidth'] / count($cwidths)); + } else { + // ---------- TRUE TYPE ---------- + if ($fmetric['type'] != 'cidfont0') { + if ($link) { + // creates a symbolic link to the existing font + symlink($fontfile, $outpath.$fmetric['file']); + } else { + // store compressed font + $fmetric['file'] .= '.z'; + $fp = fopen($outpath.$fmetric['file'], 'wb'); + fwrite($fp, gzcompress($font)); + fclose($fp); + } + } + $offset = 0; // offset position of the font data + if (TCPDF_STATIC::_getULONG($font, $offset) != 0x10000) { + // sfnt version must be 0x00010000 for TrueType version 1.0. + return false; + } + $offset += 4; + // get number of tables + $numTables = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + // skip searchRange, entrySelector and rangeShift + $offset += 6; + // tables array + $table = array(); + // ---------- get tables ---------- + for ($i = 0; $i < $numTables; ++$i) { + // get table info + $tag = substr($font, $offset, 4); + $offset += 4; + $table[$tag] = array(); + $table[$tag]['checkSum'] = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + $table[$tag]['offset'] = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + $table[$tag]['length'] = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + } + // check magicNumber + $offset = $table['head']['offset'] + 12; + if (TCPDF_STATIC::_getULONG($font, $offset) != 0x5F0F3CF5) { + // magicNumber must be 0x5F0F3CF5 + return false; + } + $offset += 4; + $offset += 2; // skip flags + // get FUnits + $fmetric['unitsPerEm'] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + // units ratio constant + $urk = (1000 / $fmetric['unitsPerEm']); + $offset += 16; // skip created, modified + $xMin = round(TCPDF_STATIC::_getFWORD($font, $offset) * $urk); + $offset += 2; + $yMin = round(TCPDF_STATIC::_getFWORD($font, $offset) * $urk); + $offset += 2; + $xMax = round(TCPDF_STATIC::_getFWORD($font, $offset) * $urk); + $offset += 2; + $yMax = round(TCPDF_STATIC::_getFWORD($font, $offset) * $urk); + $offset += 2; + $fmetric['bbox'] = ''.$xMin.' '.$yMin.' '.$xMax.' '.$yMax.''; + $macStyle = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + // PDF font flags + $fmetric['Flags'] = $flags; + if (($macStyle & 2) == 2) { + // italic flag + $fmetric['Flags'] |= 64; + } + // get offset mode (indexToLocFormat : 0 = short, 1 = long) + $offset = $table['head']['offset'] + 50; + $short_offset = (TCPDF_STATIC::_getSHORT($font, $offset) == 0); + $offset += 2; + // get the offsets to the locations of the glyphs in the font, relative to the beginning of the glyphData table + $indexToLoc = array(); + $offset = $table['loca']['offset']; + if ($short_offset) { + // short version + $tot_num_glyphs = floor($table['loca']['length'] / 2); // numGlyphs + 1 + for ($i = 0; $i < $tot_num_glyphs; ++$i) { + $indexToLoc[$i] = TCPDF_STATIC::_getUSHORT($font, $offset) * 2; + $offset += 2; + } + } else { + // long version + $tot_num_glyphs = floor($table['loca']['length'] / 4); // numGlyphs + 1 + for ($i = 0; $i < $tot_num_glyphs; ++$i) { + $indexToLoc[$i] = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + } + } + // get glyphs indexes of chars from cmap table + $offset = $table['cmap']['offset'] + 2; + $numEncodingTables = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $encodingTables = array(); + for ($i = 0; $i < $numEncodingTables; ++$i) { + $encodingTables[$i]['platformID'] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $encodingTables[$i]['encodingID'] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $encodingTables[$i]['offset'] = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + } + // ---------- get os/2 metrics ---------- + $offset = $table['OS/2']['offset']; + $offset += 2; // skip version + // xAvgCharWidth + $fmetric['AvgWidth'] = round(TCPDF_STATIC::_getFWORD($font, $offset) * $urk); + $offset += 2; + // usWeightClass + $usWeightClass = round(TCPDF_STATIC::_getUFWORD($font, $offset) * $urk); + // estimate StemV and StemH (400 = usWeightClass for Normal - Regular font) + $fmetric['StemV'] = round((70 * $usWeightClass) / 400); + $fmetric['StemH'] = round((30 * $usWeightClass) / 400); + $offset += 2; + $offset += 2; // usWidthClass + $fsType = TCPDF_STATIC::_getSHORT($font, $offset); + $offset += 2; + if ($fsType == 2) { + // This Font cannot be modified, embedded or exchanged in any manner without first obtaining permission of the legal owner. + return false; + } + // ---------- get font name ---------- + $fmetric['name'] = ''; + $offset = $table['name']['offset']; + $offset += 2; // skip Format selector (=0). + // Number of NameRecords that follow n. + $numNameRecords = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + // Offset to start of string storage (from start of table). + $stringStorageOffset = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + for ($i = 0; $i < $numNameRecords; ++$i) { + $offset += 6; // skip Platform ID, Platform-specific encoding ID, Language ID. + // Name ID. + $nameID = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + if ($nameID == 6) { + // String length (in bytes). + $stringLength = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + // String offset from start of storage area (in bytes). + $stringOffset = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $offset = ($table['name']['offset'] + $stringStorageOffset + $stringOffset); + $fmetric['name'] = substr($font, $offset, $stringLength); + $fmetric['name'] = preg_replace('/[^a-zA-Z0-9_\-]/', '', $fmetric['name']); + break; + } else { + $offset += 4; // skip String length, String offset + } + } + if (empty($fmetric['name'])) { + $fmetric['name'] = $font_name; + } + // ---------- get post data ---------- + $offset = $table['post']['offset']; + $offset += 4; // skip Format Type + $fmetric['italicAngle'] = TCPDF_STATIC::_getFIXED($font, $offset); + $offset += 4; + $fmetric['underlinePosition'] = round(TCPDF_STATIC::_getFWORD($font, $offset) * $urk); + $offset += 2; + $fmetric['underlineThickness'] = round(TCPDF_STATIC::_getFWORD($font, $offset) * $urk); + $offset += 2; + $isFixedPitch = (TCPDF_STATIC::_getULONG($font, $offset) == 0) ? false : true; + $offset += 2; + if ($isFixedPitch) { + $fmetric['Flags'] |= 1; + } + // ---------- get hhea data ---------- + $offset = $table['hhea']['offset']; + $offset += 4; // skip Table version number + // Ascender + $fmetric['Ascent'] = round(TCPDF_STATIC::_getFWORD($font, $offset) * $urk); + $offset += 2; + // Descender + $fmetric['Descent'] = round(TCPDF_STATIC::_getFWORD($font, $offset) * $urk); + $offset += 2; + // LineGap + $fmetric['Leading'] = round(TCPDF_STATIC::_getFWORD($font, $offset) * $urk); + $offset += 2; + // advanceWidthMax + $fmetric['MaxWidth'] = round(TCPDF_STATIC::_getUFWORD($font, $offset) * $urk); + $offset += 2; + $offset += 22; // skip some values + // get the number of hMetric entries in hmtx table + $numberOfHMetrics = TCPDF_STATIC::_getUSHORT($font, $offset); + // ---------- get maxp data ---------- + $offset = $table['maxp']['offset']; + $offset += 4; // skip Table version number + // get the the number of glyphs in the font. + $numGlyphs = TCPDF_STATIC::_getUSHORT($font, $offset); + // ---------- get CIDToGIDMap ---------- + $ctg = array(); + foreach ($encodingTables as $enctable) { + // get only specified Platform ID and Encoding ID + if (($enctable['platformID'] == $platid) AND ($enctable['encodingID'] == $encid)) { + $offset = $table['cmap']['offset'] + $enctable['offset']; + $format = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + switch ($format) { + case 0: { // Format 0: Byte encoding table + $offset += 4; // skip length and version/language + for ($c = 0; $c < 256; ++$c) { + $g = TCPDF_STATIC::_getBYTE($font, $offset); + $ctg[$c] = $g; + ++$offset; + } + break; + } + case 2: { // Format 2: High-byte mapping through table + $offset += 4; // skip length and version/language + $numSubHeaders = 0; + for ($i = 0; $i < 256; ++$i) { + // Array that maps high bytes to subHeaders: value is subHeader index * 8. + $subHeaderKeys[$i] = (TCPDF_STATIC::_getUSHORT($font, $offset) / 8); + $offset += 2; + if ($numSubHeaders < $subHeaderKeys[$i]) { + $numSubHeaders = $subHeaderKeys[$i]; + } + } + // the number of subHeaders is equal to the max of subHeaderKeys + 1 + ++$numSubHeaders; + // read subHeader structures + $subHeaders = array(); + $numGlyphIndexArray = 0; + for ($k = 0; $k < $numSubHeaders; ++$k) { + $subHeaders[$k]['firstCode'] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $subHeaders[$k]['entryCount'] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $subHeaders[$k]['idDelta'] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $subHeaders[$k]['idRangeOffset'] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $subHeaders[$k]['idRangeOffset'] -= (2 + (($numSubHeaders - $k - 1) * 8)); + $subHeaders[$k]['idRangeOffset'] /= 2; + $numGlyphIndexArray += $subHeaders[$k]['entryCount']; + } + for ($k = 0; $k < $numGlyphIndexArray; ++$k) { + $glyphIndexArray[$k] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + } + for ($i = 0; $i < 256; ++$i) { + $k = $subHeaderKeys[$i]; + if ($k == 0) { + // one byte code + $c = $i; + $g = $glyphIndexArray[0]; + $ctg[$c] = $g; + } else { + // two bytes code + $start_byte = $subHeaders[$k]['firstCode']; + $end_byte = $start_byte + $subHeaders[$k]['entryCount']; + for ($j = $start_byte; $j < $end_byte; ++$j) { + // combine high and low bytes + $c = (($i << 8) + $j); + $idRangeOffset = ($subHeaders[$k]['idRangeOffset'] + $j - $subHeaders[$k]['firstCode']); + $g = ($glyphIndexArray[$idRangeOffset] + $idDelta[$k]) % 65536; + if ($g < 0) { + $g = 0; + } + $ctg[$c] = $g; + } + } + } + break; + } + case 4: { // Format 4: Segment mapping to delta values + $length = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $offset += 2; // skip version/language + $segCount = floor(TCPDF_STATIC::_getUSHORT($font, $offset) / 2); + $offset += 2; + $offset += 6; // skip searchRange, entrySelector, rangeShift + $endCount = array(); // array of end character codes for each segment + for ($k = 0; $k < $segCount; ++$k) { + $endCount[$k] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + } + $offset += 2; // skip reservedPad + $startCount = array(); // array of start character codes for each segment + for ($k = 0; $k < $segCount; ++$k) { + $startCount[$k] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + } + $idDelta = array(); // delta for all character codes in segment + for ($k = 0; $k < $segCount; ++$k) { + $idDelta[$k] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + } + $idRangeOffset = array(); // Offsets into glyphIdArray or 0 + for ($k = 0; $k < $segCount; ++$k) { + $idRangeOffset[$k] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + } + $gidlen = (floor($length / 2) - 8 - (4 * $segCount)); + $glyphIdArray = array(); // glyph index array + for ($k = 0; $k < $gidlen; ++$k) { + $glyphIdArray[$k] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + } + for ($k = 0; $k < $segCount; ++$k) { + for ($c = $startCount[$k]; $c <= $endCount[$k]; ++$c) { + if ($idRangeOffset[$k] == 0) { + $g = ($idDelta[$k] + $c) % 65536; + } else { + $gid = (floor($idRangeOffset[$k] / 2) + ($c - $startCount[$k]) - ($segCount - $k)); + $g = ($glyphIdArray[$gid] + $idDelta[$k]) % 65536; + } + if ($g < 0) { + $g = 0; + } + $ctg[$c] = $g; + } + } + break; + } + case 6: { // Format 6: Trimmed table mapping + $offset += 4; // skip length and version/language + $firstCode = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $entryCount = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + for ($k = 0; $k < $entryCount; ++$k) { + $c = ($k + $firstCode); + $g = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $ctg[$c] = $g; + } + break; + } + case 8: { // Format 8: Mixed 16-bit and 32-bit coverage + $offset += 10; // skip reserved, length and version/language + for ($k = 0; $k < 8192; ++$k) { + $is32[$k] = TCPDF_STATIC::_getBYTE($font, $offset); + ++$offset; + } + $nGroups = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + for ($i = 0; $i < $nGroups; ++$i) { + $startCharCode = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + $endCharCode = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + $startGlyphID = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + for ($k = $startCharCode; $k <= $endCharCode; ++$k) { + $is32idx = floor($c / 8); + if ((isset($is32[$is32idx])) AND (($is32[$is32idx] & (1 << (7 - ($c % 8)))) == 0)) { + $c = $k; + } else { + // 32 bit format + // convert to decimal (http://www.unicode.org/faq//utf_bom.html#utf16-4) + //LEAD_OFFSET = (0xD800 - (0x10000 >> 10)) = 55232 + //SURROGATE_OFFSET = (0x10000 - (0xD800 << 10) - 0xDC00) = -56613888 + $c = ((55232 + ($k >> 10)) << 10) + (0xDC00 + ($k & 0x3FF)) -56613888; + } + $ctg[$c] = 0; + ++$startGlyphID; + } + } + break; + } + case 10: { // Format 10: Trimmed array + $offset += 10; // skip reserved, length and version/language + $startCharCode = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + $numChars = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + for ($k = 0; $k < $numChars; ++$k) { + $c = ($k + $startCharCode); + $g = TCPDF_STATIC::_getUSHORT($font, $offset); + $ctg[$c] = $g; + $offset += 2; + } + break; + } + case 12: { // Format 12: Segmented coverage + $offset += 10; // skip length and version/language + $nGroups = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + for ($k = 0; $k < $nGroups; ++$k) { + $startCharCode = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + $endCharCode = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + $startGlyphCode = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + for ($c = $startCharCode; $c <= $endCharCode; ++$c) { + $ctg[$c] = $startGlyphCode; + ++$startGlyphCode; + } + } + break; + } + case 13: { // Format 13: Many-to-one range mappings + // to be implemented ... + break; + } + case 14: { // Format 14: Unicode Variation Sequences + // to be implemented ... + break; + } + } + } + } + if (!isset($ctg[0])) { + $ctg[0] = 0; + } + // get xHeight (height of x) + $offset = ($table['glyf']['offset'] + $indexToLoc[$ctg[120]] + 4); + $yMin = TCPDF_STATIC::_getFWORD($font, $offset); + $offset += 4; + $yMax = TCPDF_STATIC::_getFWORD($font, $offset); + $offset += 2; + $fmetric['XHeight'] = round(($yMax - $yMin) * $urk); + // get CapHeight (height of H) + $offset = ($table['glyf']['offset'] + $indexToLoc[$ctg[72]] + 4); + $yMin = TCPDF_STATIC::_getFWORD($font, $offset); + $offset += 4; + $yMax = TCPDF_STATIC::_getFWORD($font, $offset); + $offset += 2; + $fmetric['CapHeight'] = round(($yMax - $yMin) * $urk); + // ceate widths array + $cw = array(); + $offset = $table['hmtx']['offset']; + for ($i = 0 ; $i < $numberOfHMetrics; ++$i) { + $cw[$i] = round(TCPDF_STATIC::_getUFWORD($font, $offset) * $urk); + $offset += 4; // skip lsb + } + if ($numberOfHMetrics < $numGlyphs) { + // fill missing widths with the last value + $cw = array_pad($cw, $numGlyphs, $cw[($numberOfHMetrics - 1)]); + } + $fmetric['MissingWidth'] = $cw[0]; + $fmetric['cw'] = ''; + for ($cid = 0; $cid <= 65535; ++$cid) { + if (isset($ctg[$cid])) { + if (isset($cw[$ctg[$cid]])) { + $fmetric['cw'] .= ','.$cid.'=>'.$cw[$ctg[$cid]]; + } + if ($addcbbox AND isset($indexToLoc[$ctg[$cid]])) { + $offset = ($table['glyf']['offset'] + $indexToLoc[$ctg[$cid]]); + $xMin = round(TCPDF_STATIC::_getFWORD($font, $offset + 2)) * $urk; + $yMin = round(TCPDF_STATIC::_getFWORD($font, $offset + 4)) * $urk; + $xMax = round(TCPDF_STATIC::_getFWORD($font, $offset + 6)) * $urk; + $yMax = round(TCPDF_STATIC::_getFWORD($font, $offset + 8)) * $urk; + $fmetric['cbbox'] .= ','.$cid.'=>array('.$xMin.','.$yMin.','.$xMax.','.$yMax.')'; + } + } + } + } // end of true type + if (($fmetric['type'] == 'TrueTypeUnicode') AND (count($ctg) == 256)) { + $fmetric['type'] == 'TrueType'; + } + // ---------- create php font file ---------- + $pfile = '<'.'?'.'php'."\n"; + $pfile .= '// TCPDF FONT FILE DESCRIPTION'."\n"; + $pfile .= '$type=\''.$fmetric['type'].'\';'."\n"; + $pfile .= '$name=\''.$fmetric['name'].'\';'."\n"; + $pfile .= '$up='.$fmetric['underlinePosition'].';'."\n"; + $pfile .= '$ut='.$fmetric['underlineThickness'].';'."\n"; + if ($fmetric['MissingWidth'] > 0) { + $pfile .= '$dw='.$fmetric['MissingWidth'].';'."\n"; + } else { + $pfile .= '$dw='.$fmetric['AvgWidth'].';'."\n"; + } + $pfile .= '$diff=\''.$fmetric['diff'].'\';'."\n"; + if ($fmetric['type'] == 'Type1') { + // Type 1 + $pfile .= '$enc=\''.$fmetric['enc'].'\';'."\n"; + $pfile .= '$file=\''.$fmetric['file'].'\';'."\n"; + $pfile .= '$size1='.$fmetric['size1'].';'."\n"; + $pfile .= '$size2='.$fmetric['size2'].';'."\n"; + } else { + $pfile .= '$originalsize='.$fmetric['originalsize'].';'."\n"; + if ($fmetric['type'] == 'cidfont0') { + // CID-0 + switch ($fonttype) { + case 'CID0JP': { + $pfile .= '// Japanese'."\n"; + $pfile .= '$enc=\'UniJIS-UTF16-H\';'."\n"; + $pfile .= '$cidinfo=array(\'Registry\'=>\'Adobe\', \'Ordering\'=>\'Japan1\',\'Supplement\'=>5);'."\n"; + $pfile .= 'include(dirname(__FILE__).\'/uni2cid_aj16.php\');'."\n"; + break; + } + case 'CID0KR': { + $pfile .= '// Korean'."\n"; + $pfile .= '$enc=\'UniKS-UTF16-H\';'."\n"; + $pfile .= '$cidinfo=array(\'Registry\'=>\'Adobe\', \'Ordering\'=>\'Korea1\',\'Supplement\'=>0);'."\n"; + $pfile .= 'include(dirname(__FILE__).\'/uni2cid_ak12.php\');'."\n"; + break; + } + case 'CID0CS': { + $pfile .= '// Chinese Simplified'."\n"; + $pfile .= '$enc=\'UniGB-UTF16-H\';'."\n"; + $pfile .= '$cidinfo=array(\'Registry\'=>\'Adobe\', \'Ordering\'=>\'GB1\',\'Supplement\'=>2);'."\n"; + $pfile .= 'include(dirname(__FILE__).\'/uni2cid_ag15.php\');'."\n"; + break; + } + case 'CID0CT': + default: { + $pfile .= '// Chinese Traditional'."\n"; + $pfile .= '$enc=\'UniCNS-UTF16-H\';'."\n"; + $pfile .= '$cidinfo=array(\'Registry\'=>\'Adobe\', \'Ordering\'=>\'CNS1\',\'Supplement\'=>0);'."\n"; + $pfile .= 'include(dirname(__FILE__).\'/uni2cid_aj16.php\');'."\n"; + break; + } + } + } else { + // TrueType + $pfile .= '$enc=\''.$fmetric['enc'].'\';'."\n"; + $pfile .= '$file=\''.$fmetric['file'].'\';'."\n"; + $pfile .= '$ctg=\''.$fmetric['ctg'].'\';'."\n"; + // create CIDToGIDMap + $cidtogidmap = str_pad('', 131072, "\x00"); // (256 * 256 * 2) = 131072 + foreach ($ctg as $cid => $gid) { + $cidtogidmap = self::updateCIDtoGIDmap($cidtogidmap, $cid, $ctg[$cid]); + } + // store compressed CIDToGIDMap + $fp = fopen($outpath.$fmetric['ctg'], 'wb'); + fwrite($fp, gzcompress($cidtogidmap)); + fclose($fp); + } + } + $pfile .= '$desc=array('; + $pfile .= '\'Flags\'=>'.$fmetric['Flags'].','; + $pfile .= '\'FontBBox\'=>\'['.$fmetric['bbox'].']\','; + $pfile .= '\'ItalicAngle\'=>'.$fmetric['italicAngle'].','; + $pfile .= '\'Ascent\'=>'.$fmetric['Ascent'].','; + $pfile .= '\'Descent\'=>'.$fmetric['Descent'].','; + $pfile .= '\'Leading\'=>'.$fmetric['Leading'].','; + $pfile .= '\'CapHeight\'=>'.$fmetric['CapHeight'].','; + $pfile .= '\'XHeight\'=>'.$fmetric['XHeight'].','; + $pfile .= '\'StemV\'=>'.$fmetric['StemV'].','; + $pfile .= '\'StemH\'=>'.$fmetric['StemH'].','; + $pfile .= '\'AvgWidth\'=>'.$fmetric['AvgWidth'].','; + $pfile .= '\'MaxWidth\'=>'.$fmetric['MaxWidth'].','; + $pfile .= '\'MissingWidth\'=>'.$fmetric['MissingWidth'].''; + $pfile .= ');'."\n"; + if (isset($fmetric['cbbox'])) { + $pfile .= '$cbbox=array('.substr($fmetric['cbbox'], 1).');'."\n"; + } + $pfile .= '$cw=array('.substr($fmetric['cw'], 1).');'."\n"; + $pfile .= '// --- EOF ---'."\n"; + // store file + $fp = fopen($outpath.$font_name.'.php', 'w'); + fwrite($fp, $pfile); + fclose($fp); + // return TCPDF font name + return $font_name; + } + + /** + * Returs the checksum of a TTF table. + * @param $table (string) table to check + * @param $length (int) length of table in bytes + * @return int checksum + * @author Nicola Asuni + * @since 5.2.000 (2010-06-02) + * @public static + */ + public static function _getTTFtableChecksum($table, $length) { + $sum = 0; + $tlen = ($length / 4); + $offset = 0; + for ($i = 0; $i < $tlen; ++$i) { + $v = unpack('Ni', substr($table, $offset, 4)); + $sum += $v['i']; + $offset += 4; + } + $sum = unpack('Ni', pack('N', $sum)); + return $sum['i']; + } + + /** + * Returns a subset of the TrueType font data without the unused glyphs. + * @param $font (string) TrueType font data. + * @param $subsetchars (array) Array of used characters (the glyphs to keep). + * @return (string) A subset of TrueType font data without the unused glyphs. + * @author Nicola Asuni + * @since 5.2.000 (2010-06-02) + * @public static + */ + public static function _getTrueTypeFontSubset($font, $subsetchars) { + ksort($subsetchars); + $offset = 0; // offset position of the font data + if (TCPDF_STATIC::_getULONG($font, $offset) != 0x10000) { + // sfnt version must be 0x00010000 for TrueType version 1.0. + return $font; + } + $offset += 4; + // get number of tables + $numTables = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + // skip searchRange, entrySelector and rangeShift + $offset += 6; + // tables array + $table = array(); + // for each table + for ($i = 0; $i < $numTables; ++$i) { + // get table info + $tag = substr($font, $offset, 4); + $offset += 4; + $table[$tag] = array(); + $table[$tag]['checkSum'] = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + $table[$tag]['offset'] = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + $table[$tag]['length'] = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + } + // check magicNumber + $offset = $table['head']['offset'] + 12; + if (TCPDF_STATIC::_getULONG($font, $offset) != 0x5F0F3CF5) { + // magicNumber must be 0x5F0F3CF5 + return $font; + } + $offset += 4; + // get offset mode (indexToLocFormat : 0 = short, 1 = long) + $offset = $table['head']['offset'] + 50; + $short_offset = (TCPDF_STATIC::_getSHORT($font, $offset) == 0); + $offset += 2; + // get the offsets to the locations of the glyphs in the font, relative to the beginning of the glyphData table + $indexToLoc = array(); + $offset = $table['loca']['offset']; + if ($short_offset) { + // short version + $tot_num_glyphs = floor($table['loca']['length'] / 2); // numGlyphs + 1 + for ($i = 0; $i < $tot_num_glyphs; ++$i) { + $indexToLoc[$i] = TCPDF_STATIC::_getUSHORT($font, $offset) * 2; + $offset += 2; + } + } else { + // long version + $tot_num_glyphs = ($table['loca']['length'] / 4); // numGlyphs + 1 + for ($i = 0; $i < $tot_num_glyphs; ++$i) { + $indexToLoc[$i] = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + } + } + // get glyphs indexes of chars from cmap table + $subsetglyphs = array(); // glyph IDs on key + $subsetglyphs[0] = true; // character codes that do not correspond to any glyph in the font should be mapped to glyph index 0 + $offset = $table['cmap']['offset'] + 2; + $numEncodingTables = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $encodingTables = array(); + for ($i = 0; $i < $numEncodingTables; ++$i) { + $encodingTables[$i]['platformID'] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $encodingTables[$i]['encodingID'] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $encodingTables[$i]['offset'] = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + } + foreach ($encodingTables as $enctable) { + // get all platforms and encodings + $offset = $table['cmap']['offset'] + $enctable['offset']; + $format = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + switch ($format) { + case 0: { // Format 0: Byte encoding table + $offset += 4; // skip length and version/language + for ($c = 0; $c < 256; ++$c) { + if (isset($subsetchars[$c])) { + $g = TCPDF_STATIC::_getBYTE($font, $offset); + $subsetglyphs[$g] = true; + } + ++$offset; + } + break; + } + case 2: { // Format 2: High-byte mapping through table + $offset += 4; // skip length and version/language + $numSubHeaders = 0; + for ($i = 0; $i < 256; ++$i) { + // Array that maps high bytes to subHeaders: value is subHeader index * 8. + $subHeaderKeys[$i] = (TCPDF_STATIC::_getUSHORT($font, $offset) / 8); + $offset += 2; + if ($numSubHeaders < $subHeaderKeys[$i]) { + $numSubHeaders = $subHeaderKeys[$i]; + } + } + // the number of subHeaders is equal to the max of subHeaderKeys + 1 + ++$numSubHeaders; + // read subHeader structures + $subHeaders = array(); + $numGlyphIndexArray = 0; + for ($k = 0; $k < $numSubHeaders; ++$k) { + $subHeaders[$k]['firstCode'] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $subHeaders[$k]['entryCount'] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $subHeaders[$k]['idDelta'] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $subHeaders[$k]['idRangeOffset'] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $subHeaders[$k]['idRangeOffset'] -= (2 + (($numSubHeaders - $k - 1) * 8)); + $subHeaders[$k]['idRangeOffset'] /= 2; + $numGlyphIndexArray += $subHeaders[$k]['entryCount']; + } + for ($k = 0; $k < $numGlyphIndexArray; ++$k) { + $glyphIndexArray[$k] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + } + for ($i = 0; $i < 256; ++$i) { + $k = $subHeaderKeys[$i]; + if ($k == 0) { + // one byte code + $c = $i; + if (isset($subsetchars[$c])) { + $g = $glyphIndexArray[0]; + $subsetglyphs[$g] = true; + } + } else { + // two bytes code + $start_byte = $subHeaders[$k]['firstCode']; + $end_byte = $start_byte + $subHeaders[$k]['entryCount']; + for ($j = $start_byte; $j < $end_byte; ++$j) { + // combine high and low bytes + $c = (($i << 8) + $j); + if (isset($subsetchars[$c])) { + $idRangeOffset = ($subHeaders[$k]['idRangeOffset'] + $j - $subHeaders[$k]['firstCode']); + $g = ($glyphIndexArray[$idRangeOffset] + $idDelta[$k]) % 65536; + if ($g < 0) { + $g = 0; + } + $subsetglyphs[$g] = true; + } + } + } + } + break; + } + case 4: { // Format 4: Segment mapping to delta values + $length = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $offset += 2; // skip version/language + $segCount = floor(TCPDF_STATIC::_getUSHORT($font, $offset) / 2); + $offset += 2; + $offset += 6; // skip searchRange, entrySelector, rangeShift + $endCount = array(); // array of end character codes for each segment + for ($k = 0; $k < $segCount; ++$k) { + $endCount[$k] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + } + $offset += 2; // skip reservedPad + $startCount = array(); // array of start character codes for each segment + for ($k = 0; $k < $segCount; ++$k) { + $startCount[$k] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + } + $idDelta = array(); // delta for all character codes in segment + for ($k = 0; $k < $segCount; ++$k) { + $idDelta[$k] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + } + $idRangeOffset = array(); // Offsets into glyphIdArray or 0 + for ($k = 0; $k < $segCount; ++$k) { + $idRangeOffset[$k] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + } + $gidlen = (floor($length / 2) - 8 - (4 * $segCount)); + $glyphIdArray = array(); // glyph index array + for ($k = 0; $k < $gidlen; ++$k) { + $glyphIdArray[$k] = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + } + for ($k = 0; $k < $segCount; ++$k) { + for ($c = $startCount[$k]; $c <= $endCount[$k]; ++$c) { + if (isset($subsetchars[$c])) { + if ($idRangeOffset[$k] == 0) { + $g = ($idDelta[$k] + $c) % 65536; + } else { + $gid = (floor($idRangeOffset[$k] / 2) + ($c - $startCount[$k]) - ($segCount - $k)); + $g = ($glyphIdArray[$gid] + $idDelta[$k]) % 65536; + } + if ($g < 0) { + $g = 0; + } + $subsetglyphs[$g] = true; + } + } + } + break; + } + case 6: { // Format 6: Trimmed table mapping + $offset += 4; // skip length and version/language + $firstCode = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $entryCount = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + for ($k = 0; $k < $entryCount; ++$k) { + $c = ($k + $firstCode); + if (isset($subsetchars[$c])) { + $g = TCPDF_STATIC::_getUSHORT($font, $offset); + $subsetglyphs[$g] = true; + } + $offset += 2; + } + break; + } + case 8: { // Format 8: Mixed 16-bit and 32-bit coverage + $offset += 10; // skip reserved, length and version/language + for ($k = 0; $k < 8192; ++$k) { + $is32[$k] = TCPDF_STATIC::_getBYTE($font, $offset); + ++$offset; + } + $nGroups = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + for ($i = 0; $i < $nGroups; ++$i) { + $startCharCode = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + $endCharCode = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + $startGlyphID = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + for ($k = $startCharCode; $k <= $endCharCode; ++$k) { + $is32idx = floor($c / 8); + if ((isset($is32[$is32idx])) AND (($is32[$is32idx] & (1 << (7 - ($c % 8)))) == 0)) { + $c = $k; + } else { + // 32 bit format + // convert to decimal (http://www.unicode.org/faq//utf_bom.html#utf16-4) + //LEAD_OFFSET = (0xD800 - (0x10000 >> 10)) = 55232 + //SURROGATE_OFFSET = (0x10000 - (0xD800 << 10) - 0xDC00) = -56613888 + $c = ((55232 + ($k >> 10)) << 10) + (0xDC00 + ($k & 0x3FF)) -56613888; + } + if (isset($subsetchars[$c])) { + $subsetglyphs[$startGlyphID] = true; + } + ++$startGlyphID; + } + } + break; + } + case 10: { // Format 10: Trimmed array + $offset += 10; // skip reserved, length and version/language + $startCharCode = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + $numChars = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + for ($k = 0; $k < $numChars; ++$k) { + $c = ($k + $startCharCode); + if (isset($subsetchars[$c])) { + $g = TCPDF_STATIC::_getUSHORT($font, $offset); + $subsetglyphs[$g] = true; + } + $offset += 2; + } + break; + } + case 12: { // Format 12: Segmented coverage + $offset += 10; // skip length and version/language + $nGroups = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + for ($k = 0; $k < $nGroups; ++$k) { + $startCharCode = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + $endCharCode = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + $startGlyphCode = TCPDF_STATIC::_getULONG($font, $offset); + $offset += 4; + for ($c = $startCharCode; $c <= $endCharCode; ++$c) { + if (isset($subsetchars[$c])) { + $subsetglyphs[$startGlyphCode] = true; + } + ++$startGlyphCode; + } + } + break; + } + case 13: { // Format 13: Many-to-one range mappings + // to be implemented ... + break; + } + case 14: { // Format 14: Unicode Variation Sequences + // to be implemented ... + break; + } + } + } + // include all parts of composite glyphs + $new_sga = $subsetglyphs; + while (!empty($new_sga)) { + $sga = $new_sga; + $new_sga = array(); + foreach ($sga as $key => $val) { + if (isset($indexToLoc[$key])) { + $offset = ($table['glyf']['offset'] + $indexToLoc[$key]); + $numberOfContours = TCPDF_STATIC::_getSHORT($font, $offset); + $offset += 2; + if ($numberOfContours < 0) { // composite glyph + $offset += 8; // skip xMin, yMin, xMax, yMax + do { + $flags = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + $glyphIndex = TCPDF_STATIC::_getUSHORT($font, $offset); + $offset += 2; + if (!isset($subsetglyphs[$glyphIndex])) { + // add missing glyphs + $new_sga[$glyphIndex] = true; + } + // skip some bytes by case + if ($flags & 1) { + $offset += 4; + } else { + $offset += 2; + } + if ($flags & 8) { + $offset += 2; + } elseif ($flags & 64) { + $offset += 4; + } elseif ($flags & 128) { + $offset += 8; + } + } while ($flags & 32); + } + } + } + $subsetglyphs += $new_sga; + } + // sort glyphs by key (and remove duplicates) + ksort($subsetglyphs); + // build new glyf and loca tables + $glyf = ''; + $loca = ''; + $offset = 0; + $glyf_offset = $table['glyf']['offset']; + for ($i = 0; $i < $tot_num_glyphs; ++$i) { + if (isset($subsetglyphs[$i])) { + $length = ($indexToLoc[($i + 1)] - $indexToLoc[$i]); + $glyf .= substr($font, ($glyf_offset + $indexToLoc[$i]), $length); + } else { + $length = 0; + } + if ($short_offset) { + $loca .= pack('n', floor($offset / 2)); + } else { + $loca .= pack('N', $offset); + } + $offset += $length; + } + // array of table names to preserve (loca and glyf tables will be added later) + // the cmap table is not needed and shall not be present, since the mapping from character codes to glyph descriptions is provided separately + $table_names = array ('head', 'hhea', 'hmtx', 'maxp', 'cvt ', 'fpgm', 'prep'); // minimum required table names + // get the tables to preserve + $offset = 12; + foreach ($table as $tag => $val) { + if (in_array($tag, $table_names)) { + $table[$tag]['data'] = substr($font, $table[$tag]['offset'], $table[$tag]['length']); + if ($tag == 'head') { + // set the checkSumAdjustment to 0 + $table[$tag]['data'] = substr($table[$tag]['data'], 0, 8)."\x0\x0\x0\x0".substr($table[$tag]['data'], 12); + } + $pad = 4 - ($table[$tag]['length'] % 4); + if ($pad != 4) { + // the length of a table must be a multiple of four bytes + $table[$tag]['length'] += $pad; + $table[$tag]['data'] .= str_repeat("\x0", $pad); + } + $table[$tag]['offset'] = $offset; + $offset += $table[$tag]['length']; + // check sum is not changed (so keep the following line commented) + //$table[$tag]['checkSum'] = self::_getTTFtableChecksum($table[$tag]['data'], $table[$tag]['length']); + } else { + unset($table[$tag]); + } + } + // add loca + $table['loca']['data'] = $loca; + $table['loca']['length'] = strlen($loca); + $pad = 4 - ($table['loca']['length'] % 4); + if ($pad != 4) { + // the length of a table must be a multiple of four bytes + $table['loca']['length'] += $pad; + $table['loca']['data'] .= str_repeat("\x0", $pad); + } + $table['loca']['offset'] = $offset; + $table['loca']['checkSum'] = self::_getTTFtableChecksum($table['loca']['data'], $table['loca']['length']); + $offset += $table['loca']['length']; + // add glyf + $table['glyf']['data'] = $glyf; + $table['glyf']['length'] = strlen($glyf); + $pad = 4 - ($table['glyf']['length'] % 4); + if ($pad != 4) { + // the length of a table must be a multiple of four bytes + $table['glyf']['length'] += $pad; + $table['glyf']['data'] .= str_repeat("\x0", $pad); + } + $table['glyf']['offset'] = $offset; + $table['glyf']['checkSum'] = self::_getTTFtableChecksum($table['glyf']['data'], $table['glyf']['length']); + // rebuild font + $font = ''; + $font .= pack('N', 0x10000); // sfnt version + $numTables = count($table); + $font .= pack('n', $numTables); // numTables + $entrySelector = floor(log($numTables, 2)); + $searchRange = pow(2, $entrySelector) * 16; + $rangeShift = ($numTables * 16) - $searchRange; + $font .= pack('n', $searchRange); // searchRange + $font .= pack('n', $entrySelector); // entrySelector + $font .= pack('n', $rangeShift); // rangeShift + $offset = ($numTables * 16); + foreach ($table as $tag => $data) { + $font .= $tag; // tag + $font .= pack('N', $data['checkSum']); // checkSum + $font .= pack('N', ($data['offset'] + $offset)); // offset + $font .= pack('N', $data['length']); // length + } + foreach ($table as $data) { + $font .= $data['data']; + } + // set checkSumAdjustment on head table + $checkSumAdjustment = 0xB1B0AFBA - self::_getTTFtableChecksum($font, strlen($font)); + $font = substr($font, 0, $table['head']['offset'] + 8).pack('N', $checkSumAdjustment).substr($font, $table['head']['offset'] + 12); + return $font; + } + + /** + * Outputs font widths + * @param $font (array) font data + * @param $cidoffset (int) offset for CID values + * @return PDF command string for font widths + * @author Nicola Asuni + * @since 4.4.000 (2008-12-07) + * @public static + */ + public static function _putfontwidths($font, $cidoffset=0) { + ksort($font['cw']); + $rangeid = 0; + $range = array(); + $prevcid = -2; + $prevwidth = -1; + $interval = false; + // for each character + foreach ($font['cw'] as $cid => $width) { + $cid -= $cidoffset; + if ($font['subset'] AND (!isset($font['subsetchars'][$cid]))) { + // ignore the unused characters (font subsetting) + continue; + } + if ($width != $font['dw']) { + if ($cid == ($prevcid + 1)) { + // consecutive CID + if ($width == $prevwidth) { + if ($width == $range[$rangeid][0]) { + $range[$rangeid][] = $width; + } else { + array_pop($range[$rangeid]); + // new range + $rangeid = $prevcid; + $range[$rangeid] = array(); + $range[$rangeid][] = $prevwidth; + $range[$rangeid][] = $width; + } + $interval = true; + $range[$rangeid]['interval'] = true; + } else { + if ($interval) { + // new range + $rangeid = $cid; + $range[$rangeid] = array(); + $range[$rangeid][] = $width; + } else { + $range[$rangeid][] = $width; + } + $interval = false; + } + } else { + // new range + $rangeid = $cid; + $range[$rangeid] = array(); + $range[$rangeid][] = $width; + $interval = false; + } + $prevcid = $cid; + $prevwidth = $width; + } + } + // optimize ranges + $prevk = -1; + $nextk = -1; + $prevint = false; + foreach ($range as $k => $ws) { + $cws = count($ws); + if (($k == $nextk) AND (!$prevint) AND ((!isset($ws['interval'])) OR ($cws < 4))) { + if (isset($range[$k]['interval'])) { + unset($range[$k]['interval']); + } + $range[$prevk] = array_merge($range[$prevk], $range[$k]); + unset($range[$k]); + } else { + $prevk = $k; + } + $nextk = $k + $cws; + if (isset($ws['interval'])) { + if ($cws > 3) { + $prevint = true; + } else { + $prevint = false; + } + if (isset($range[$k]['interval'])) { + unset($range[$k]['interval']); + } + --$nextk; + } else { + $prevint = false; + } + } + // output data + $w = ''; + foreach ($range as $k => $ws) { + if (count(array_count_values($ws)) == 1) { + // interval mode is more compact + $w .= ' '.$k.' '.($k + count($ws) - 1).' '.$ws[0]; + } else { + // range mode + $w .= ' '.$k.' [ '.implode(' ', $ws).' ]'; + } + } + return '/W ['.$w.' ]'; + } + + /** + * Returns the unicode caracter specified by the value + * @param $c (int) UTF-8 value + * @param $unicode (boolean) True if we are in unicode mode, false otherwise. + * @return Returns the specified character. + * @since 2.3.000 (2008-03-05) + * @public static + */ + public static function unichr($c, $unicode=true) { + if (!$unicode) { + return chr($c); + } elseif ($c <= 0x7F) { + // one byte + return chr($c); + } elseif ($c <= 0x7FF) { + // two bytes + return chr(0xC0 | $c >> 6).chr(0x80 | $c & 0x3F); + } elseif ($c <= 0xFFFF) { + // three bytes + return chr(0xE0 | $c >> 12).chr(0x80 | $c >> 6 & 0x3F).chr(0x80 | $c & 0x3F); + } elseif ($c <= 0x10FFFF) { + // four bytes + return chr(0xF0 | $c >> 18).chr(0x80 | $c >> 12 & 0x3F).chr(0x80 | $c >> 6 & 0x3F).chr(0x80 | $c & 0x3F); + } else { + return ''; + } + } + + /** + * Returns the unicode caracter specified by UTF-8 value + * @param $c (int) UTF-8 value + * @return Returns the specified character. + * @public static + */ + public static function unichrUnicode($c) { + return self::unichr($c, true); + } + + /** + * Returns the unicode caracter specified by ASCII value + * @param $c (int) UTF-8 value + * @return Returns the specified character. + * @public static + */ + public static function unichrASCII($c) { + return self::unichr($c, false); + } + + /** + * Converts array of UTF-8 characters to UTF16-BE string.
                    + * Based on: http://www.faqs.org/rfcs/rfc2781.html + *
                    +	 *   Encoding UTF-16:
                    +	 *
                    +	 *   Encoding of a single character from an ISO 10646 character value to
                    +	 *    UTF-16 proceeds as follows. Let U be the character number, no greater
                    +	 *    than 0x10FFFF.
                    +	 *
                    +	 *    1) If U < 0x10000, encode U as a 16-bit unsigned integer and
                    +	 *       terminate.
                    +	 *
                    +	 *    2) Let U' = U - 0x10000. Because U is less than or equal to 0x10FFFF,
                    +	 *       U' must be less than or equal to 0xFFFFF. That is, U' can be
                    +	 *       represented in 20 bits.
                    +	 *
                    +	 *    3) Initialize two 16-bit unsigned integers, W1 and W2, to 0xD800 and
                    +	 *       0xDC00, respectively. These integers each have 10 bits free to
                    +	 *       encode the character value, for a total of 20 bits.
                    +	 *
                    +	 *    4) Assign the 10 high-order bits of the 20-bit U' to the 10 low-order
                    +	 *       bits of W1 and the 10 low-order bits of U' to the 10 low-order
                    +	 *       bits of W2. Terminate.
                    +	 *
                    +	 *    Graphically, steps 2 through 4 look like:
                    +	 *    U' = yyyyyyyyyyxxxxxxxxxx
                    +	 *    W1 = 110110yyyyyyyyyy
                    +	 *    W2 = 110111xxxxxxxxxx
                    +	 * 
                    + * @param $unicode (array) array containing UTF-8 unicode values + * @param $setbom (boolean) if true set the Byte Order Mark (BOM = 0xFEFF) + * @return string + * @protected + * @author Nicola Asuni + * @since 2.1.000 (2008-01-08) + * @public static + */ + public static function arrUTF8ToUTF16BE($unicode, $setbom=false) { + $outstr = ''; // string to be returned + if ($setbom) { + $outstr .= "\xFE\xFF"; // Byte Order Mark (BOM) + } + foreach ($unicode as $char) { + if ($char == 0x200b) { + // skip Unicode Character 'ZERO WIDTH SPACE' (DEC:8203, U+200B) + } elseif ($char == 0xFFFD) { + $outstr .= "\xFF\xFD"; // replacement character + } elseif ($char < 0x10000) { + $outstr .= chr($char >> 0x08); + $outstr .= chr($char & 0xFF); + } else { + $char -= 0x10000; + $w1 = 0xD800 | ($char >> 0x0a); + $w2 = 0xDC00 | ($char & 0x3FF); + $outstr .= chr($w1 >> 0x08); + $outstr .= chr($w1 & 0xFF); + $outstr .= chr($w2 >> 0x08); + $outstr .= chr($w2 & 0xFF); + } + } + return $outstr; + } + + /** + * Convert an array of UTF8 values to array of unicode characters + * @param $ta (array) The input array of UTF8 values. + * @param $isunicode (boolean) True for Unicode mode, false otherwise. + * @return Return array of unicode characters + * @since 4.5.037 (2009-04-07) + * @public static + */ + public static function UTF8ArrayToUniArray($ta, $isunicode=true) { + if ($isunicode) { + return array_map(array('self', 'unichrUnicode'), $ta); + } + return array_map(array('self', 'unichrASCII'), $ta); + } + + /** + * Extract a slice of the $strarr array and return it as string. + * @param $strarr (string) The input array of characters. + * @param $start (int) the starting element of $strarr. + * @param $end (int) first element that will not be returned. + * @param $unicode (boolean) True if we are in unicode mode, false otherwise. + * @return Return part of a string + * @public static + */ + public static function UTF8ArrSubString($strarr, $start='', $end='', $unicode=true) { + if (strlen($start) == 0) { + $start = 0; + } + if (strlen($end) == 0) { + $end = count($strarr); + } + $string = ''; + for ($i = $start; $i < $end; ++$i) { + $string .= self::unichr($strarr[$i], $unicode); + } + return $string; + } + + /** + * Extract a slice of the $uniarr array and return it as string. + * @param $uniarr (string) The input array of characters. + * @param $start (int) the starting element of $strarr. + * @param $end (int) first element that will not be returned. + * @return Return part of a string + * @since 4.5.037 (2009-04-07) + * @public static + */ + public static function UniArrSubString($uniarr, $start='', $end='') { + if (strlen($start) == 0) { + $start = 0; + } + if (strlen($end) == 0) { + $end = count($uniarr); + } + $string = ''; + for ($i=$start; $i < $end; ++$i) { + $string .= $uniarr[$i]; + } + return $string; + } + + /** + * Update the CIDToGIDMap string with a new value. + * @param $map (string) CIDToGIDMap. + * @param $cid (int) CID value. + * @param $gid (int) GID value. + * @return (string) CIDToGIDMap. + * @author Nicola Asuni + * @since 5.9.123 (2011-09-29) + * @public static + */ + public static function updateCIDtoGIDmap($map, $cid, $gid) { + if (($cid >= 0) AND ($cid <= 0xFFFF) AND ($gid >= 0)) { + if ($gid > 0xFFFF) { + $gid -= 0x10000; + } + $map[($cid * 2)] = chr($gid >> 8); + $map[(($cid * 2) + 1)] = chr($gid & 0xFF); + } + return $map; + } + + /** + * Return fonts path + * @return string + * @public static + */ + public static function _getfontpath() { + if (!defined('K_PATH_FONTS') AND is_dir($fdir = realpath(dirname(__FILE__).'/../fonts'))) { + if (substr($fdir, -1) != '/') { + $fdir .= '/'; + } + define('K_PATH_FONTS', $fdir); + } + return defined('K_PATH_FONTS') ? K_PATH_FONTS : ''; + } + + /** + * Return font full path + * @param $file (string) Font file name. + * @param $fontdir (string) Font directory (set to false fto search on default directories) + * @return string Font full path or empty string + * @author Nicola Asuni + * @since 6.0.025 + * @public static + */ + public static function getFontFullPath($file, $fontdir=false) { + $fontfile = ''; + // search files on various directories + if (($fontdir !== false) AND @file_exists($fontdir.$file)) { + $fontfile = $fontdir.$file; + } elseif (@file_exists(self::_getfontpath().$file)) { + $fontfile = self::_getfontpath().$file; + } elseif (@file_exists($file)) { + $fontfile = $file; + } + return $fontfile; + } + + /** + * Converts UTF-8 characters array to array of Latin1 characters array
                    + * @param $unicode (array) array containing UTF-8 unicode values + * @return array + * @author Nicola Asuni + * @since 4.8.023 (2010-01-15) + * @public static + */ + public static function UTF8ArrToLatin1Arr($unicode) { + $outarr = array(); // array to be returned + foreach ($unicode as $char) { + if ($char < 256) { + $outarr[] = $char; + } elseif (array_key_exists($char, TCPDF_FONT_DATA::$uni_utf8tolatin)) { + // map from UTF-8 + $outarr[] = TCPDF_FONT_DATA::$uni_utf8tolatin[$char]; + } elseif ($char == 0xFFFD) { + // skip + } else { + $outarr[] = 63; // '?' character + } + } + return $outarr; + } + + /** + * Converts UTF-8 characters array to array of Latin1 string
                    + * @param $unicode (array) array containing UTF-8 unicode values + * @return array + * @author Nicola Asuni + * @since 4.8.023 (2010-01-15) + * @public static + */ + public static function UTF8ArrToLatin1($unicode) { + $outstr = ''; // string to be returned + foreach ($unicode as $char) { + if ($char < 256) { + $outstr .= chr($char); + } elseif (array_key_exists($char, TCPDF_FONT_DATA::$uni_utf8tolatin)) { + // map from UTF-8 + $outstr .= chr(TCPDF_FONT_DATA::$uni_utf8tolatin[$char]); + } elseif ($char == 0xFFFD) { + // skip + } else { + $outstr .= '?'; + } + } + return $outstr; + } + + /** + * Converts UTF-8 character to integer value.
                    + * Invalid byte sequences will be replaced with 0xFFFD (replacement character)
                    + * Based on: http://www.faqs.org/rfcs/rfc3629.html + *
                    +	 *    Char. number range  |        UTF-8 octet sequence
                    +	 *       (hexadecimal)    |              (binary)
                    +	 *    --------------------+-----------------------------------------------
                    +	 *    0000 0000-0000 007F | 0xxxxxxx
                    +	 *    0000 0080-0000 07FF | 110xxxxx 10xxxxxx
                    +	 *    0000 0800-0000 FFFF | 1110xxxx 10xxxxxx 10xxxxxx
                    +	 *    0001 0000-0010 FFFF | 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
                    +	 *    ---------------------------------------------------------------------
                    +	 *
                    +	 *   ABFN notation:
                    +	 *   ---------------------------------------------------------------------
                    +	 *   UTF8-octets = *( UTF8-char )
                    +	 *   UTF8-char   = UTF8-1 / UTF8-2 / UTF8-3 / UTF8-4
                    +	 *   UTF8-1      = %x00-7F
                    +	 *   UTF8-2      = %xC2-DF UTF8-tail
                    +	 *
                    +	 *   UTF8-3      = %xE0 %xA0-BF UTF8-tail / %xE1-EC 2( UTF8-tail ) /
                    +	 *                 %xED %x80-9F UTF8-tail / %xEE-EF 2( UTF8-tail )
                    +	 *   UTF8-4      = %xF0 %x90-BF 2( UTF8-tail ) / %xF1-F3 3( UTF8-tail ) /
                    +	 *                 %xF4 %x80-8F 2( UTF8-tail )
                    +	 *   UTF8-tail   = %x80-BF
                    +	 *   ---------------------------------------------------------------------
                    +	 * 
                    + * @param $uch (string) character string to process. + * @return integer Unicode value + * @author Nicola Asuni + * @public static + */ + public static function uniord($uch) { + if (function_exists('mb_convert_encoding')) { + list(, $char) = @unpack('N', mb_convert_encoding($uch, 'UCS-4BE', 'UTF-8')); + if ($char >= 0) { + return $char; + } + } + $bytes = array(); // array containing single character byte sequences + $countbytes = 0; + $numbytes = 1; // number of octetc needed to represent the UTF-8 character + $length = strlen($uch); + for ($i = 0; $i < $length; ++$i) { + $char = ord($uch[$i]); // get one string character at time + if ($countbytes == 0) { // get starting octect + if ($char <= 0x7F) { + return $char; // use the character "as is" because is ASCII + } elseif (($char >> 0x05) == 0x06) { // 2 bytes character (0x06 = 110 BIN) + $bytes[] = ($char - 0xC0) << 0x06; + ++$countbytes; + $numbytes = 2; + } elseif (($char >> 0x04) == 0x0E) { // 3 bytes character (0x0E = 1110 BIN) + $bytes[] = ($char - 0xE0) << 0x0C; + ++$countbytes; + $numbytes = 3; + } elseif (($char >> 0x03) == 0x1E) { // 4 bytes character (0x1E = 11110 BIN) + $bytes[] = ($char - 0xF0) << 0x12; + ++$countbytes; + $numbytes = 4; + } else { + // use replacement character for other invalid sequences + return 0xFFFD; + } + } elseif (($char >> 0x06) == 0x02) { // bytes 2, 3 and 4 must start with 0x02 = 10 BIN + $bytes[] = $char - 0x80; + ++$countbytes; + if ($countbytes == $numbytes) { + // compose UTF-8 bytes to a single unicode value + $char = $bytes[0]; + for ($j = 1; $j < $numbytes; ++$j) { + $char += ($bytes[$j] << (($numbytes - $j - 1) * 0x06)); + } + if ((($char >= 0xD800) AND ($char <= 0xDFFF)) OR ($char >= 0x10FFFF)) { + // The definition of UTF-8 prohibits encoding character numbers between + // U+D800 and U+DFFF, which are reserved for use with the UTF-16 + // encoding form (as surrogate pairs) and do not directly represent + // characters. + return 0xFFFD; // use replacement character + } else { + return $char; + } + } + } else { + // use replacement character for other invalid sequences + return 0xFFFD; + } + } + return 0xFFFD; + } + + /** + * Converts UTF-8 strings to codepoints array.
                    + * Invalid byte sequences will be replaced with 0xFFFD (replacement character)
                    + * @param $str (string) string to process. + * @param $isunicode (boolean) True when the documetn is in Unicode mode, false otherwise. + * @param $currentfont (array) Reference to current font array. + * @return array containing codepoints (UTF-8 characters values) + * @author Nicola Asuni + * @public static + */ + public static function UTF8StringToArray($str, $isunicode=true, &$currentfont) { + if ($isunicode) { + // requires PCRE unicode support turned on + $chars = TCPDF_STATIC::pregSplit('//','u', $str, -1, PREG_SPLIT_NO_EMPTY); + $carr = array_map(array('self', 'uniord'), $chars); + } else { + $chars = str_split($str); + $carr = array_map('ord', $chars); + } + $currentfont['subsetchars'] += array_fill_keys($carr, true); + return $carr; + } + + /** + * Converts UTF-8 strings to Latin1 when using the standard 14 core fonts.
                    + * @param $str (string) string to process. + * @param $isunicode (boolean) True when the documetn is in Unicode mode, false otherwise. + * @param $currentfont (array) Reference to current font array. + * @return string + * @since 3.2.000 (2008-06-23) + * @public static + */ + public static function UTF8ToLatin1($str, $isunicode=true, &$currentfont) { + $unicode = self::UTF8StringToArray($str, $isunicode, $currentfont); // array containing UTF-8 unicode values + return self::UTF8ArrToLatin1($unicode); + } + + /** + * Converts UTF-8 strings to UTF16-BE.
                    + * @param $str (string) string to process. + * @param $setbom (boolean) if true set the Byte Order Mark (BOM = 0xFEFF) + * @param $isunicode (boolean) True when the documetn is in Unicode mode, false otherwise. + * @param $currentfont (array) Reference to current font array. + * @return string + * @author Nicola Asuni + * @since 1.53.0.TC005 (2005-01-05) + * @public static + */ + public static function UTF8ToUTF16BE($str, $setbom=false, $isunicode=true, &$currentfont) { + if (!$isunicode) { + return $str; // string is not in unicode + } + $unicode = self::UTF8StringToArray($str, $isunicode, $currentfont); // array containing UTF-8 unicode values + return self::arrUTF8ToUTF16BE($unicode, $setbom); + } + + /** + * Reverse the RLT substrings using the Bidirectional Algorithm (http://unicode.org/reports/tr9/). + * @param $str (string) string to manipulate. + * @param $setbom (bool) if true set the Byte Order Mark (BOM = 0xFEFF) + * @param $forcertl (bool) if true forces RTL text direction + * @param $isunicode (boolean) True if the document is in Unicode mode, false otherwise. + * @param $currentfont (array) Reference to current font array. + * @return string + * @author Nicola Asuni + * @since 2.1.000 (2008-01-08) + * @public static + */ + public static function utf8StrRev($str, $setbom=false, $forcertl=false, $isunicode=true, &$currentfont) { + return self::utf8StrArrRev(self::UTF8StringToArray($str, $isunicode, $currentfont), $str, $setbom, $forcertl, $isunicode, $currentfont); + } + + /** + * Reverse the RLT substrings array using the Bidirectional Algorithm (http://unicode.org/reports/tr9/). + * @param $arr (array) array of unicode values. + * @param $str (string) string to manipulate (or empty value). + * @param $setbom (bool) if true set the Byte Order Mark (BOM = 0xFEFF) + * @param $forcertl (bool) if true forces RTL text direction + * @param $isunicode (boolean) True if the document is in Unicode mode, false otherwise. + * @param $currentfont (array) Reference to current font array. + * @return string + * @author Nicola Asuni + * @since 4.9.000 (2010-03-27) + * @public static + */ + public static function utf8StrArrRev($arr, $str='', $setbom=false, $forcertl=false, $isunicode=true, &$currentfont) { + return self::arrUTF8ToUTF16BE(self::utf8Bidi($arr, $str, $forcertl, $isunicode, $currentfont), $setbom); + } + + /** + * Reverse the RLT substrings using the Bidirectional Algorithm (http://unicode.org/reports/tr9/). + * @param $ta (array) array of characters composing the string. + * @param $str (string) string to process + * @param $forcertl (bool) if 'R' forces RTL, if 'L' forces LTR + * @param $isunicode (boolean) True if the document is in Unicode mode, false otherwise. + * @param $currentfont (array) Reference to current font array. + * @return array of unicode chars + * @author Nicola Asuni + * @since 2.4.000 (2008-03-06) + * @public static + */ + public static function utf8Bidi($ta, $str='', $forcertl=false, $isunicode=true, &$currentfont) { + // paragraph embedding level + $pel = 0; + // max level + $maxlevel = 0; + if (TCPDF_STATIC::empty_string($str)) { + // create string from array + $str = self::UTF8ArrSubString($ta, '', '', $isunicode); + } + // check if string contains arabic text + if (preg_match(TCPDF_FONT_DATA::$uni_RE_PATTERN_ARABIC, $str)) { + $arabic = true; + } else { + $arabic = false; + } + // check if string contains RTL text + if (!($forcertl OR $arabic OR preg_match(TCPDF_FONT_DATA::$uni_RE_PATTERN_RTL, $str))) { + return $ta; + } + + // get number of chars + $numchars = count($ta); + + if ($forcertl == 'R') { + $pel = 1; + } elseif ($forcertl == 'L') { + $pel = 0; + } else { + // P2. In each paragraph, find the first character of type L, AL, or R. + // P3. If a character is found in P2 and it is of type AL or R, then set the paragraph embedding level to one; otherwise, set it to zero. + for ($i=0; $i < $numchars; ++$i) { + $type = TCPDF_FONT_DATA::$uni_type[$ta[$i]]; + if ($type == 'L') { + $pel = 0; + break; + } elseif (($type == 'AL') OR ($type == 'R')) { + $pel = 1; + break; + } + } + } + + // Current Embedding Level + $cel = $pel; + // directional override status + $dos = 'N'; + $remember = array(); + // start-of-level-run + $sor = $pel % 2 ? 'R' : 'L'; + $eor = $sor; + + // Array of characters data + $chardata = Array(); + + // X1. Begin by setting the current embedding level to the paragraph embedding level. Set the directional override status to neutral. Process each character iteratively, applying rules X2 through X9. Only embedding levels from 0 to 61 are valid in this phase. + // In the resolution of levels in rules I1 and I2, the maximum embedding level of 62 can be reached. + for ($i=0; $i < $numchars; ++$i) { + if ($ta[$i] == TCPDF_FONT_DATA::$uni_RLE) { + // X2. With each RLE, compute the least greater odd embedding level. + // a. If this new level would be valid, then this embedding code is valid. Remember (push) the current embedding level and override status. Reset the current level to this new level, and reset the override status to neutral. + // b. If the new level would not be valid, then this code is invalid. Do not change the current level or override status. + $next_level = $cel + ($cel % 2) + 1; + if ($next_level < 62) { + $remember[] = array('num' => TCPDF_FONT_DATA::$uni_RLE, 'cel' => $cel, 'dos' => $dos); + $cel = $next_level; + $dos = 'N'; + $sor = $eor; + $eor = $cel % 2 ? 'R' : 'L'; + } + } elseif ($ta[$i] == TCPDF_FONT_DATA::$uni_LRE) { + // X3. With each LRE, compute the least greater even embedding level. + // a. If this new level would be valid, then this embedding code is valid. Remember (push) the current embedding level and override status. Reset the current level to this new level, and reset the override status to neutral. + // b. If the new level would not be valid, then this code is invalid. Do not change the current level or override status. + $next_level = $cel + 2 - ($cel % 2); + if ( $next_level < 62 ) { + $remember[] = array('num' => TCPDF_FONT_DATA::$uni_LRE, 'cel' => $cel, 'dos' => $dos); + $cel = $next_level; + $dos = 'N'; + $sor = $eor; + $eor = $cel % 2 ? 'R' : 'L'; + } + } elseif ($ta[$i] == TCPDF_FONT_DATA::$uni_RLO) { + // X4. With each RLO, compute the least greater odd embedding level. + // a. If this new level would be valid, then this embedding code is valid. Remember (push) the current embedding level and override status. Reset the current level to this new level, and reset the override status to right-to-left. + // b. If the new level would not be valid, then this code is invalid. Do not change the current level or override status. + $next_level = $cel + ($cel % 2) + 1; + if ($next_level < 62) { + $remember[] = array('num' => TCPDF_FONT_DATA::$uni_RLO, 'cel' => $cel, 'dos' => $dos); + $cel = $next_level; + $dos = 'R'; + $sor = $eor; + $eor = $cel % 2 ? 'R' : 'L'; + } + } elseif ($ta[$i] == TCPDF_FONT_DATA::$uni_LRO) { + // X5. With each LRO, compute the least greater even embedding level. + // a. If this new level would be valid, then this embedding code is valid. Remember (push) the current embedding level and override status. Reset the current level to this new level, and reset the override status to left-to-right. + // b. If the new level would not be valid, then this code is invalid. Do not change the current level or override status. + $next_level = $cel + 2 - ($cel % 2); + if ( $next_level < 62 ) { + $remember[] = array('num' => TCPDF_FONT_DATA::$uni_LRO, 'cel' => $cel, 'dos' => $dos); + $cel = $next_level; + $dos = 'L'; + $sor = $eor; + $eor = $cel % 2 ? 'R' : 'L'; + } + } elseif ($ta[$i] == TCPDF_FONT_DATA::$uni_PDF) { + // X7. With each PDF, determine the matching embedding or override code. If there was a valid matching code, restore (pop) the last remembered (pushed) embedding level and directional override. + if (count($remember)) { + $last = count($remember ) - 1; + if (($remember[$last]['num'] == TCPDF_FONT_DATA::$uni_RLE) OR + ($remember[$last]['num'] == TCPDF_FONT_DATA::$uni_LRE) OR + ($remember[$last]['num'] == TCPDF_FONT_DATA::$uni_RLO) OR + ($remember[$last]['num'] == TCPDF_FONT_DATA::$uni_LRO)) { + $match = array_pop($remember); + $cel = $match['cel']; + $dos = $match['dos']; + $sor = $eor; + $eor = ($cel > $match['cel'] ? $cel : $match['cel']) % 2 ? 'R' : 'L'; + } + } + } elseif (($ta[$i] != TCPDF_FONT_DATA::$uni_RLE) AND + ($ta[$i] != TCPDF_FONT_DATA::$uni_LRE) AND + ($ta[$i] != TCPDF_FONT_DATA::$uni_RLO) AND + ($ta[$i] != TCPDF_FONT_DATA::$uni_LRO) AND + ($ta[$i] != TCPDF_FONT_DATA::$uni_PDF)) { + // X6. For all types besides RLE, LRE, RLO, LRO, and PDF: + // a. Set the level of the current character to the current embedding level. + // b. Whenever the directional override status is not neutral, reset the current character type to the directional override status. + if ($dos != 'N') { + $chardir = $dos; + } else { + if (isset(TCPDF_FONT_DATA::$uni_type[$ta[$i]])) { + $chardir = TCPDF_FONT_DATA::$uni_type[$ta[$i]]; + } else { + $chardir = 'L'; + } + } + // stores string characters and other information + $chardata[] = array('char' => $ta[$i], 'level' => $cel, 'type' => $chardir, 'sor' => $sor, 'eor' => $eor); + } + } // end for each char + + // X8. All explicit directional embeddings and overrides are completely terminated at the end of each paragraph. Paragraph separators are not included in the embedding. + // X9. Remove all RLE, LRE, RLO, LRO, PDF, and BN codes. + // X10. The remaining rules are applied to each run of characters at the same level. For each run, determine the start-of-level-run (sor) and end-of-level-run (eor) type, either L or R. This depends on the higher of the two levels on either side of the boundary (at the start or end of the paragraph, the level of the 'other' run is the base embedding level). If the higher level is odd, the type is R; otherwise, it is L. + + // 3.3.3 Resolving Weak Types + // Weak types are now resolved one level run at a time. At level run boundaries where the type of the character on the other side of the boundary is required, the type assigned to sor or eor is used. + // Nonspacing marks are now resolved based on the previous characters. + $numchars = count($chardata); + + // W1. Examine each nonspacing mark (NSM) in the level run, and change the type of the NSM to the type of the previous character. If the NSM is at the start of the level run, it will get the type of sor. + $prevlevel = -1; // track level changes + $levcount = 0; // counts consecutive chars at the same level + for ($i=0; $i < $numchars; ++$i) { + if ($chardata[$i]['type'] == 'NSM') { + if ($levcount) { + $chardata[$i]['type'] = $chardata[$i]['sor']; + } elseif ($i > 0) { + $chardata[$i]['type'] = $chardata[($i-1)]['type']; + } + } + if ($chardata[$i]['level'] != $prevlevel) { + $levcount = 0; + } else { + ++$levcount; + } + $prevlevel = $chardata[$i]['level']; + } + + // W2. Search backward from each instance of a European number until the first strong type (R, L, AL, or sor) is found. If an AL is found, change the type of the European number to Arabic number. + $prevlevel = -1; + $levcount = 0; + for ($i=0; $i < $numchars; ++$i) { + if ($chardata[$i]['char'] == 'EN') { + for ($j=$levcount; $j >= 0; $j--) { + if ($chardata[$j]['type'] == 'AL') { + $chardata[$i]['type'] = 'AN'; + } elseif (($chardata[$j]['type'] == 'L') OR ($chardata[$j]['type'] == 'R')) { + break; + } + } + } + if ($chardata[$i]['level'] != $prevlevel) { + $levcount = 0; + } else { + ++$levcount; + } + $prevlevel = $chardata[$i]['level']; + } + + // W3. Change all ALs to R. + for ($i=0; $i < $numchars; ++$i) { + if ($chardata[$i]['type'] == 'AL') { + $chardata[$i]['type'] = 'R'; + } + } + + // W4. A single European separator between two European numbers changes to a European number. A single common separator between two numbers of the same type changes to that type. + $prevlevel = -1; + $levcount = 0; + for ($i=0; $i < $numchars; ++$i) { + if (($levcount > 0) AND (($i+1) < $numchars) AND ($chardata[($i+1)]['level'] == $prevlevel)) { + if (($chardata[$i]['type'] == 'ES') AND ($chardata[($i-1)]['type'] == 'EN') AND ($chardata[($i+1)]['type'] == 'EN')) { + $chardata[$i]['type'] = 'EN'; + } elseif (($chardata[$i]['type'] == 'CS') AND ($chardata[($i-1)]['type'] == 'EN') AND ($chardata[($i+1)]['type'] == 'EN')) { + $chardata[$i]['type'] = 'EN'; + } elseif (($chardata[$i]['type'] == 'CS') AND ($chardata[($i-1)]['type'] == 'AN') AND ($chardata[($i+1)]['type'] == 'AN')) { + $chardata[$i]['type'] = 'AN'; + } + } + if ($chardata[$i]['level'] != $prevlevel) { + $levcount = 0; + } else { + ++$levcount; + } + $prevlevel = $chardata[$i]['level']; + } + + // W5. A sequence of European terminators adjacent to European numbers changes to all European numbers. + $prevlevel = -1; + $levcount = 0; + for ($i=0; $i < $numchars; ++$i) { + if ($chardata[$i]['type'] == 'ET') { + if (($levcount > 0) AND ($chardata[($i-1)]['type'] == 'EN')) { + $chardata[$i]['type'] = 'EN'; + } else { + $j = $i+1; + while (($j < $numchars) AND ($chardata[$j]['level'] == $prevlevel)) { + if ($chardata[$j]['type'] == 'EN') { + $chardata[$i]['type'] = 'EN'; + break; + } elseif ($chardata[$j]['type'] != 'ET') { + break; + } + ++$j; + } + } + } + if ($chardata[$i]['level'] != $prevlevel) { + $levcount = 0; + } else { + ++$levcount; + } + $prevlevel = $chardata[$i]['level']; + } + + // W6. Otherwise, separators and terminators change to Other Neutral. + $prevlevel = -1; + $levcount = 0; + for ($i=0; $i < $numchars; ++$i) { + if (($chardata[$i]['type'] == 'ET') OR ($chardata[$i]['type'] == 'ES') OR ($chardata[$i]['type'] == 'CS')) { + $chardata[$i]['type'] = 'ON'; + } + if ($chardata[$i]['level'] != $prevlevel) { + $levcount = 0; + } else { + ++$levcount; + } + $prevlevel = $chardata[$i]['level']; + } + + //W7. Search backward from each instance of a European number until the first strong type (R, L, or sor) is found. If an L is found, then change the type of the European number to L. + $prevlevel = -1; + $levcount = 0; + for ($i=0; $i < $numchars; ++$i) { + if ($chardata[$i]['char'] == 'EN') { + for ($j=$levcount; $j >= 0; $j--) { + if ($chardata[$j]['type'] == 'L') { + $chardata[$i]['type'] = 'L'; + } elseif ($chardata[$j]['type'] == 'R') { + break; + } + } + } + if ($chardata[$i]['level'] != $prevlevel) { + $levcount = 0; + } else { + ++$levcount; + } + $prevlevel = $chardata[$i]['level']; + } + + // N1. A sequence of neutrals takes the direction of the surrounding strong text if the text on both sides has the same direction. European and Arabic numbers act as if they were R in terms of their influence on neutrals. Start-of-level-run (sor) and end-of-level-run (eor) are used at level run boundaries. + $prevlevel = -1; + $levcount = 0; + for ($i=0; $i < $numchars; ++$i) { + if (($levcount > 0) AND (($i+1) < $numchars) AND ($chardata[($i+1)]['level'] == $prevlevel)) { + if (($chardata[$i]['type'] == 'N') AND ($chardata[($i-1)]['type'] == 'L') AND ($chardata[($i+1)]['type'] == 'L')) { + $chardata[$i]['type'] = 'L'; + } elseif (($chardata[$i]['type'] == 'N') AND + (($chardata[($i-1)]['type'] == 'R') OR ($chardata[($i-1)]['type'] == 'EN') OR ($chardata[($i-1)]['type'] == 'AN')) AND + (($chardata[($i+1)]['type'] == 'R') OR ($chardata[($i+1)]['type'] == 'EN') OR ($chardata[($i+1)]['type'] == 'AN'))) { + $chardata[$i]['type'] = 'R'; + } elseif ($chardata[$i]['type'] == 'N') { + // N2. Any remaining neutrals take the embedding direction + $chardata[$i]['type'] = $chardata[$i]['sor']; + } + } elseif (($levcount == 0) AND (($i+1) < $numchars) AND ($chardata[($i+1)]['level'] == $prevlevel)) { + // first char + if (($chardata[$i]['type'] == 'N') AND ($chardata[$i]['sor'] == 'L') AND ($chardata[($i+1)]['type'] == 'L')) { + $chardata[$i]['type'] = 'L'; + } elseif (($chardata[$i]['type'] == 'N') AND + (($chardata[$i]['sor'] == 'R') OR ($chardata[$i]['sor'] == 'EN') OR ($chardata[$i]['sor'] == 'AN')) AND + (($chardata[($i+1)]['type'] == 'R') OR ($chardata[($i+1)]['type'] == 'EN') OR ($chardata[($i+1)]['type'] == 'AN'))) { + $chardata[$i]['type'] = 'R'; + } elseif ($chardata[$i]['type'] == 'N') { + // N2. Any remaining neutrals take the embedding direction + $chardata[$i]['type'] = $chardata[$i]['sor']; + } + } elseif (($levcount > 0) AND ((($i+1) == $numchars) OR (($i+1) < $numchars) AND ($chardata[($i+1)]['level'] != $prevlevel))) { + //last char + if (($chardata[$i]['type'] == 'N') AND ($chardata[($i-1)]['type'] == 'L') AND ($chardata[$i]['eor'] == 'L')) { + $chardata[$i]['type'] = 'L'; + } elseif (($chardata[$i]['type'] == 'N') AND + (($chardata[($i-1)]['type'] == 'R') OR ($chardata[($i-1)]['type'] == 'EN') OR ($chardata[($i-1)]['type'] == 'AN')) AND + (($chardata[$i]['eor'] == 'R') OR ($chardata[$i]['eor'] == 'EN') OR ($chardata[$i]['eor'] == 'AN'))) { + $chardata[$i]['type'] = 'R'; + } elseif ($chardata[$i]['type'] == 'N') { + // N2. Any remaining neutrals take the embedding direction + $chardata[$i]['type'] = $chardata[$i]['sor']; + } + } elseif ($chardata[$i]['type'] == 'N') { + // N2. Any remaining neutrals take the embedding direction + $chardata[$i]['type'] = $chardata[$i]['sor']; + } + if ($chardata[$i]['level'] != $prevlevel) { + $levcount = 0; + } else { + ++$levcount; + } + $prevlevel = $chardata[$i]['level']; + } + + // I1. For all characters with an even (left-to-right) embedding direction, those of type R go up one level and those of type AN or EN go up two levels. + // I2. For all characters with an odd (right-to-left) embedding direction, those of type L, EN or AN go up one level. + for ($i=0; $i < $numchars; ++$i) { + $odd = $chardata[$i]['level'] % 2; + if ($odd) { + if (($chardata[$i]['type'] == 'L') OR ($chardata[$i]['type'] == 'AN') OR ($chardata[$i]['type'] == 'EN')) { + $chardata[$i]['level'] += 1; + } + } else { + if ($chardata[$i]['type'] == 'R') { + $chardata[$i]['level'] += 1; + } elseif (($chardata[$i]['type'] == 'AN') OR ($chardata[$i]['type'] == 'EN')) { + $chardata[$i]['level'] += 2; + } + } + $maxlevel = max($chardata[$i]['level'],$maxlevel); + } + + // L1. On each line, reset the embedding level of the following characters to the paragraph embedding level: + // 1. Segment separators, + // 2. Paragraph separators, + // 3. Any sequence of whitespace characters preceding a segment separator or paragraph separator, and + // 4. Any sequence of white space characters at the end of the line. + for ($i=0; $i < $numchars; ++$i) { + if (($chardata[$i]['type'] == 'B') OR ($chardata[$i]['type'] == 'S')) { + $chardata[$i]['level'] = $pel; + } elseif ($chardata[$i]['type'] == 'WS') { + $j = $i+1; + while ($j < $numchars) { + if ((($chardata[$j]['type'] == 'B') OR ($chardata[$j]['type'] == 'S')) OR + (($j == ($numchars-1)) AND ($chardata[$j]['type'] == 'WS'))) { + $chardata[$i]['level'] = $pel; + break; + } elseif ($chardata[$j]['type'] != 'WS') { + break; + } + ++$j; + } + } + } + + // Arabic Shaping + // Cursively connected scripts, such as Arabic or Syriac, require the selection of positional character shapes that depend on adjacent characters. Shaping is logically applied after the Bidirectional Algorithm is used and is limited to characters within the same directional run. + if ($arabic) { + $endedletter = array(1569,1570,1571,1572,1573,1575,1577,1583,1584,1585,1586,1608,1688); + $alfletter = array(1570,1571,1573,1575); + $chardata2 = $chardata; + $laaletter = false; + $charAL = array(); + $x = 0; + for ($i=0; $i < $numchars; ++$i) { + if ((TCPDF_FONT_DATA::$uni_type[$chardata[$i]['char']] == 'AL') OR ($chardata[$i]['char'] == 32) OR ($chardata[$i]['char'] == 8204)) { + $charAL[$x] = $chardata[$i]; + $charAL[$x]['i'] = $i; + $chardata[$i]['x'] = $x; + ++$x; + } + } + $numAL = $x; + for ($i=0; $i < $numchars; ++$i) { + $thischar = $chardata[$i]; + if ($i > 0) { + $prevchar = $chardata[($i-1)]; + } else { + $prevchar = false; + } + if (($i+1) < $numchars) { + $nextchar = $chardata[($i+1)]; + } else { + $nextchar = false; + } + if (TCPDF_FONT_DATA::$uni_type[$thischar['char']] == 'AL') { + $x = $thischar['x']; + if ($x > 0) { + $prevchar = $charAL[($x-1)]; + } else { + $prevchar = false; + } + if (($x+1) < $numAL) { + $nextchar = $charAL[($x+1)]; + } else { + $nextchar = false; + } + // if laa letter + if (($prevchar !== false) AND ($prevchar['char'] == 1604) AND (in_array($thischar['char'], $alfletter))) { + $arabicarr = TCPDF_FONT_DATA::$uni_laa_array; + $laaletter = true; + if ($x > 1) { + $prevchar = $charAL[($x-2)]; + } else { + $prevchar = false; + } + } else { + $arabicarr = TCPDF_FONT_DATA::$uni_arabicsubst; + $laaletter = false; + } + if (($prevchar !== false) AND ($nextchar !== false) AND + ((TCPDF_FONT_DATA::$uni_type[$prevchar['char']] == 'AL') OR (TCPDF_FONT_DATA::$uni_type[$prevchar['char']] == 'NSM')) AND + ((TCPDF_FONT_DATA::$uni_type[$nextchar['char']] == 'AL') OR (TCPDF_FONT_DATA::$uni_type[$nextchar['char']] == 'NSM')) AND + ($prevchar['type'] == $thischar['type']) AND + ($nextchar['type'] == $thischar['type']) AND + ($nextchar['char'] != 1567)) { + if (in_array($prevchar['char'], $endedletter)) { + if (isset($arabicarr[$thischar['char']][2])) { + // initial + $chardata2[$i]['char'] = $arabicarr[$thischar['char']][2]; + } + } else { + if (isset($arabicarr[$thischar['char']][3])) { + // medial + $chardata2[$i]['char'] = $arabicarr[$thischar['char']][3]; + } + } + } elseif (($nextchar !== false) AND + ((TCPDF_FONT_DATA::$uni_type[$nextchar['char']] == 'AL') OR (TCPDF_FONT_DATA::$uni_type[$nextchar['char']] == 'NSM')) AND + ($nextchar['type'] == $thischar['type']) AND + ($nextchar['char'] != 1567)) { + if (isset($arabicarr[$chardata[$i]['char']][2])) { + // initial + $chardata2[$i]['char'] = $arabicarr[$thischar['char']][2]; + } + } elseif ((($prevchar !== false) AND + ((TCPDF_FONT_DATA::$uni_type[$prevchar['char']] == 'AL') OR (TCPDF_FONT_DATA::$uni_type[$prevchar['char']] == 'NSM')) AND + ($prevchar['type'] == $thischar['type'])) OR + (($nextchar !== false) AND ($nextchar['char'] == 1567))) { + // final + if (($i > 1) AND ($thischar['char'] == 1607) AND + ($chardata[$i-1]['char'] == 1604) AND + ($chardata[$i-2]['char'] == 1604)) { + //Allah Word + // mark characters to delete with false + $chardata2[$i-2]['char'] = false; + $chardata2[$i-1]['char'] = false; + $chardata2[$i]['char'] = 65010; + } else { + if (($prevchar !== false) AND in_array($prevchar['char'], $endedletter)) { + if (isset($arabicarr[$thischar['char']][0])) { + // isolated + $chardata2[$i]['char'] = $arabicarr[$thischar['char']][0]; + } + } else { + if (isset($arabicarr[$thischar['char']][1])) { + // final + $chardata2[$i]['char'] = $arabicarr[$thischar['char']][1]; + } + } + } + } elseif (isset($arabicarr[$thischar['char']][0])) { + // isolated + $chardata2[$i]['char'] = $arabicarr[$thischar['char']][0]; + } + // if laa letter + if ($laaletter) { + // mark characters to delete with false + $chardata2[($charAL[($x-1)]['i'])]['char'] = false; + } + } // end if AL (Arabic Letter) + } // end for each char + /* + * Combining characters that can occur with Arabic Shadda (0651 HEX, 1617 DEC) are replaced. + * Putting the combining mark and shadda in the same glyph allows us to avoid the two marks overlapping each other in an illegible manner. + */ + for ($i = 0; $i < ($numchars-1); ++$i) { + if (($chardata2[$i]['char'] == 1617) AND (isset(TCPDF_FONT_DATA::$uni_diacritics[($chardata2[$i+1]['char'])]))) { + // check if the subtitution font is defined on current font + if (isset($currentfont['cw'][(TCPDF_FONT_DATA::$uni_diacritics[($chardata2[$i+1]['char'])])])) { + $chardata2[$i]['char'] = false; + $chardata2[$i+1]['char'] = TCPDF_FONT_DATA::$uni_diacritics[($chardata2[$i+1]['char'])]; + } + } + } + // remove marked characters + foreach ($chardata2 as $key => $value) { + if ($value['char'] === false) { + unset($chardata2[$key]); + } + } + $chardata = array_values($chardata2); + $numchars = count($chardata); + unset($chardata2); + unset($arabicarr); + unset($laaletter); + unset($charAL); + } + + // L2. From the highest level found in the text to the lowest odd level on each line, including intermediate levels not actually present in the text, reverse any contiguous sequence of characters that are at that level or higher. + for ($j=$maxlevel; $j > 0; $j--) { + $ordarray = Array(); + $revarr = Array(); + $onlevel = false; + for ($i=0; $i < $numchars; ++$i) { + if ($chardata[$i]['level'] >= $j) { + $onlevel = true; + if (isset(TCPDF_FONT_DATA::$uni_mirror[$chardata[$i]['char']])) { + // L4. A character is depicted by a mirrored glyph if and only if (a) the resolved directionality of that character is R, and (b) the Bidi_Mirrored property value of that character is true. + $chardata[$i]['char'] = TCPDF_FONT_DATA::$uni_mirror[$chardata[$i]['char']]; + } + $revarr[] = $chardata[$i]; + } else { + if ($onlevel) { + $revarr = array_reverse($revarr); + $ordarray = array_merge($ordarray, $revarr); + $revarr = Array(); + $onlevel = false; + } + $ordarray[] = $chardata[$i]; + } + } + if ($onlevel) { + $revarr = array_reverse($revarr); + $ordarray = array_merge($ordarray, $revarr); + } + $chardata = $ordarray; + } + $ordarray = array(); + foreach ($chardata as $cd) { + $ordarray[] = $cd['char']; + // store char values for subsetting + $currentfont['subsetchars'][$cd['char']] = true; + } + return $ordarray; + } + + /** + * Get a reference font size. + * @param $size (string) String containing font size value. + * @param $refsize (float) Reference font size in points. + * @return float value in points + * @public static + */ + public static function getFontRefSize($size, $refsize=12) { + switch ($size) { + case 'xx-small': { + $size = ($refsize - 4); + break; + } + case 'x-small': { + $size = ($refsize - 3); + break; + } + case 'small': { + $size = ($refsize - 2); + break; + } + case 'medium': { + $size = $refsize; + break; + } + case 'large': { + $size = ($refsize + 2); + break; + } + case 'x-large': { + $size = ($refsize + 4); + break; + } + case 'xx-large': { + $size = ($refsize + 6); + break; + } + case 'smaller': { + $size = ($refsize - 3); + break; + } + case 'larger': { + $size = ($refsize + 3); + break; + } + } + return $size; + } + +} // END OF TCPDF_FONTS CLASS + +//============================================================+ +// END OF FILE +//============================================================+ diff --git a/lib/tcpdf/include/tcpdf_images.php b/lib/tcpdf/include/tcpdf_images.php new file mode 100644 index 00000000000..525649cb052 --- /dev/null +++ b/lib/tcpdf/include/tcpdf_images.php @@ -0,0 +1,355 @@ +. +// +// See LICENSE.TXT file for more information. +// ------------------------------------------------------------------- +// +// Description : +// Static image methods used by the TCPDF class. +// +//============================================================+ + +/** + * @file + * This is a PHP class that contains static image methods for the TCPDF class.
                    + * @package com.tecnick.tcpdf + * @author Nicola Asuni + * @version 1.0.001 + */ + +/** + * @class TCPDF_IMAGES + * Static image methods used by the TCPDF class. + * @package com.tecnick.tcpdf + * @brief PHP class for generating PDF documents without requiring external extensions. + * @version 1.0.000 + * @author Nicola Asuni - info@tecnick.com + */ +class TCPDF_IMAGES { + + /** + * Array of hinheritable SVG properties. + * @since 5.0.000 (2010-05-02) + * @public static + */ + public static $svginheritprop = array('clip-rule', 'color', 'color-interpolation', 'color-interpolation-filters', 'color-profile', 'color-rendering', 'cursor', 'direction', 'fill', 'fill-opacity', 'fill-rule', 'font', 'font-family', 'font-size', 'font-size-adjust', 'font-stretch', 'font-style', 'font-variant', 'font-weight', 'glyph-orientation-horizontal', 'glyph-orientation-vertical', 'image-rendering', 'kerning', 'letter-spacing', 'marker', 'marker-end', 'marker-mid', 'marker-start', 'pointer-events', 'shape-rendering', 'stroke', 'stroke-dasharray', 'stroke-dashoffset', 'stroke-linecap', 'stroke-linejoin', 'stroke-miterlimit', 'stroke-opacity', 'stroke-width', 'text-anchor', 'text-rendering', 'visibility', 'word-spacing', 'writing-mode'); + +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + /** + * Return the image type given the file name or array returned by getimagesize() function. + * @param $imgfile (string) image file name + * @param $iminfo (array) array of image information returned by getimagesize() function. + * @return string image type + * @since 4.8.017 (2009-11-27) + * @public static + */ + public static function getImageFileType($imgfile, $iminfo=array()) { + $type = ''; + if (isset($iminfo['mime']) AND !empty($iminfo['mime'])) { + $mime = explode('/', $iminfo['mime']); + if ((count($mime) > 1) AND ($mime[0] == 'image') AND (!empty($mime[1]))) { + $type = strtolower(trim($mime[1])); + } + } + if (empty($type)) { + $fileinfo = pathinfo($imgfile); + if (isset($fileinfo['extension']) AND (!TCPDF_STATIC::empty_string($fileinfo['extension']))) { + $type = strtolower(trim($fileinfo['extension'])); + } + } + if ($type == 'jpg') { + $type = 'jpeg'; + } + return $type; + } + + /** + * Set the transparency for the given GD image. + * @param $new_image (image) GD image object + * @param $image (image) GD image object. + * return GD image object. + * @since 4.9.016 (2010-04-20) + * @public static + */ + public static function setGDImageTransparency($new_image, $image) { + // transparency index + $tid = imagecolortransparent($image); + // default transparency color + $tcol = array('red' => 255, 'green' => 255, 'blue' => 255); + if ($tid >= 0) { + // get the colors for the transparency index + $tcol = imagecolorsforindex($image, $tid); + } + $tid = imagecolorallocate($new_image, $tcol['red'], $tcol['green'], $tcol['blue']); + imagefill($new_image, 0, 0, $tid); + imagecolortransparent($new_image, $tid); + return $new_image; + } + + /** + * Convert the loaded image to a PNG and then return a structure for the PDF creator. + * This function requires GD library and write access to the directory defined on K_PATH_CACHE constant. + * @param $image (image) Image object. + * return image PNG image object. + * @since 4.9.016 (2010-04-20) + * @public static + */ + public static function _toPNG($image) { + // set temporary image file name + $tempname = TCPDF_STATIC::getObjFilename('png'); + // turn off interlaced mode + imageinterlace($image, 0); + // create temporary PNG image + imagepng($image, $tempname); + // remove image from memory + imagedestroy($image); + // get PNG image data + $retvars = self::_parsepng($tempname); + // tidy up by removing temporary image + unlink($tempname); + return $retvars; + } + + /** + * Convert the loaded image to a JPEG and then return a structure for the PDF creator. + * This function requires GD library and write access to the directory defined on K_PATH_CACHE constant. + * @param $image (image) Image object. + * @param $quality (int) JPEG quality. + * return image JPEG image object. + * @public static + */ + public static function _toJPEG($image, $quality) { + $tempname = TCPDF_STATIC::getObjFilename('jpg'); + imagejpeg($image, $tempname, $quality); + imagedestroy($image); + $retvars = self::_parsejpeg($tempname); + // tidy up by removing temporary image + unlink($tempname); + return $retvars; + } + + /** + * Extract info from a JPEG file without using the GD library. + * @param $file (string) image file to parse + * @return array structure containing the image data + * @public static + */ + public static function _parsejpeg($file) { + $a = getimagesize($file); + if (empty($a)) { + //Missing or incorrect image file + return false; + } + if ($a[2] != 2) { + // Not a JPEG file + return false; + } + // bits per pixel + $bpc = isset($a['bits']) ? intval($a['bits']) : 8; + // number of image channels + if (!isset($a['channels'])) { + $channels = 3; + } else { + $channels = intval($a['channels']); + } + // default colour space + switch ($channels) { + case 1: { + $colspace = 'DeviceGray'; + break; + } + case 3: { + $colspace = 'DeviceRGB'; + break; + } + case 4: { + $colspace = 'DeviceCMYK'; + break; + } + default: { + $channels = 3; + $colspace = 'DeviceRGB'; + break; + } + } + // get file content + $data = file_get_contents($file); + // check for embedded ICC profile + $icc = array(); + $offset = 0; + while (($pos = strpos($data, "ICC_PROFILE\0", $offset)) !== false) { + // get ICC sequence length + $length = (TCPDF_STATIC::_getUSHORT($data, ($pos - 2)) - 16); + // marker sequence number + $msn = max(1, ord($data[($pos + 12)])); + // number of markers (total of APP2 used) + $nom = max(1, ord($data[($pos + 13)])); + // get sequence segment + $icc[($msn - 1)] = substr($data, ($pos + 14), $length); + // move forward to next sequence + $offset = ($pos + 14 + $length); + } + // order and compact ICC segments + if (count($icc) > 0) { + ksort($icc); + $icc = implode('', $icc); + if ((ord($icc{36}) != 0x61) OR (ord($icc{37}) != 0x63) OR (ord($icc{38}) != 0x73) OR (ord($icc{39}) != 0x70)) { + // invalid ICC profile + $icc = false; + } + } else { + $icc = false; + } + return array('w' => $a[0], 'h' => $a[1], 'ch' => $channels, 'icc' => $icc, 'cs' => $colspace, 'bpc' => $bpc, 'f' => 'DCTDecode', 'data' => $data); + } + + /** + * Extract info from a PNG file without using the GD library. + * @param $file (string) image file to parse + * @return array structure containing the image data + * @public static + */ + public static function _parsepng($file) { + $f = fopen($file, 'rb'); + if ($f === false) { + // Can't open image file + return false; + } + //Check signature + if (fread($f, 8) != chr(137).'PNG'.chr(13).chr(10).chr(26).chr(10)) { + // Not a PNG file + return false; + } + //Read header chunk + fread($f, 4); + if (fread($f, 4) != 'IHDR') { + //Incorrect PNG file + return false; + } + $w = TCPDF_STATIC::_freadint($f); + $h = TCPDF_STATIC::_freadint($f); + $bpc = ord(fread($f, 1)); + $ct = ord(fread($f, 1)); + if ($ct == 0) { + $colspace = 'DeviceGray'; + } elseif ($ct == 2) { + $colspace = 'DeviceRGB'; + } elseif ($ct == 3) { + $colspace = 'Indexed'; + } else { + // alpha channel + fclose($f); + return 'pngalpha'; + } + if (ord(fread($f, 1)) != 0) { + // Unknown compression method + fclose($f); + return false; + } + if (ord(fread($f, 1)) != 0) { + // Unknown filter method + fclose($f); + return false; + } + if (ord(fread($f, 1)) != 0) { + // Interlacing not supported + fclose($f); + return false; + } + fread($f, 4); + $channels = ($ct == 2 ? 3 : 1); + $parms = '/DecodeParms << /Predictor 15 /Colors '.$channels.' /BitsPerComponent '.$bpc.' /Columns '.$w.' >>'; + //Scan chunks looking for palette, transparency and image data + $pal = ''; + $trns = ''; + $data = ''; + $icc = false; + do { + $n = TCPDF_STATIC::_freadint($f); + $type = fread($f, 4); + if ($type == 'PLTE') { + // read palette + $pal = TCPDF_STATIC::rfread($f, $n); + fread($f, 4); + } elseif ($type == 'tRNS') { + // read transparency info + $t = TCPDF_STATIC::rfread($f, $n); + if ($ct == 0) { + $trns = array(ord($t{1})); + } elseif ($ct == 2) { + $trns = array(ord($t{1}), ord($t{3}), ord($t{5})); + } else { + $pos = strpos($t, chr(0)); + if ($pos !== false) { + $trns = array($pos); + } + } + fread($f, 4); + } elseif ($type == 'IDAT') { + // read image data block + $data .= TCPDF_STATIC::rfread($f, $n); + fread($f, 4); + } elseif ($type == 'iCCP') { + // skip profile name + $len = 0; + while ((ord(fread($f, 1)) > 0) AND ($len < 80)) { + ++$len; + } + // skip null separator + fread($f, 1); + // get compression method + if (ord(fread($f, 1)) != 0) { + // Unknown filter method + fclose($f); + return false; + } + // read ICC Color Profile + $icc = TCPDF_STATIC::rfread($f, ($n - $len - 2)); + // decompress profile + $icc = gzuncompress($icc); + fread($f, 4); + } elseif ($type == 'IEND') { + break; + } else { + TCPDF_STATIC::rfread($f, $n + 4); + } + } while ($n); + if (($colspace == 'Indexed') AND (empty($pal))) { + // Missing palette + fclose($f); + return false; + } + fclose($f); + return array('w' => $w, 'h' => $h, 'ch' => $channels, 'icc' => $icc, 'cs' => $colspace, 'bpc' => $bpc, 'f' => 'FlateDecode', 'parms' => $parms, 'pal' => $pal, 'trns' => $trns, 'data' => $data); + } + +} // END OF TCPDF_IMAGES CLASS + +//============================================================+ +// END OF FILE +//============================================================+ diff --git a/lib/tcpdf/include/tcpdf_static.php b/lib/tcpdf/include/tcpdf_static.php new file mode 100644 index 00000000000..a6fa611424e --- /dev/null +++ b/lib/tcpdf/include/tcpdf_static.php @@ -0,0 +1,2837 @@ +. +// +// See LICENSE.TXT file for more information. +// ------------------------------------------------------------------- +// +// Description : +// Static methods used by the TCPDF class. +// +//============================================================+ + +/** + * @file + * This is a PHP class that contains static methods for the TCPDF class.
                    + * @package com.tecnick.tcpdf + * @author Nicola Asuni + * @version 1.0.002 + */ + +/** + * @class TCPDF_STATIC + * Static methods used by the TCPDF class. + * @package com.tecnick.tcpdf + * @brief PHP class for generating PDF documents without requiring external extensions. + * @version 1.0.002 + * @author Nicola Asuni - info@tecnick.com + */ +class TCPDF_STATIC { + + /** + * Current TCPDF version. + * @private static + */ + private static $tcpdf_version = '6.0.031'; + + /** + * String alias for total number of pages. + * @public static + */ + public static $alias_tot_pages = '{:ptp:}'; + + /** + * String alias for page number. + * @public static + */ + public static $alias_num_page = '{:pnp:}'; + + /** + * String alias for total number of pages in a single group. + * @public static + */ + public static $alias_group_tot_pages = '{:ptg:}'; + + /** + * String alias for group page number. + * @public static + */ + public static $alias_group_num_page = '{:png:}'; + + /** + * String alias for right shift compensation used to correctly align page numbers on the right. + * @public static + */ + public static $alias_right_shift = '{rsc:'; + + /** + * Encryption padding string. + * @public static + */ + public static $enc_padding = "\x28\xBF\x4E\x5E\x4E\x75\x8A\x41\x64\x00\x4E\x56\xFF\xFA\x01\x08\x2E\x2E\x00\xB6\xD0\x68\x3E\x80\x2F\x0C\xA9\xFE\x64\x53\x69\x7A"; + + /** + * ByteRange placemark used during digital signature process. + * @since 4.6.028 (2009-08-25) + * @public static + */ + public static $byterange_string = '/ByteRange[0 ********** ********** **********]'; + + /** + * Array page boxes names + * @public static + */ + public static $pageboxes = array('MediaBox', 'CropBox', 'BleedBox', 'TrimBox', 'ArtBox'); + + // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + /** + * Return the current TCPDF version. + * @return TCPDF version string + * @since 5.9.012 (2010-11-10) + * @public static + */ + public static function getTCPDFVersion() { + return self::$tcpdf_version; + } + + /** + * Return the current TCPDF producer. + * @return TCPDF producer string + * @since 6.0.000 (2013-03-16) + * @public static + */ + public static function getTCPDFProducer() { + return "\x54\x43\x50\x44\x46\x20".self::getTCPDFVersion()."\x20\x28\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x74\x63\x70\x64\x66\x2e\x6f\x72\x67\x29"; + } + + /** + * Sets the current active configuration setting of magic_quotes_runtime (if the set_magic_quotes_runtime function exist) + * @param $mqr (boolean) FALSE for off, TRUE for on. + * @since 4.6.025 (2009-08-17) + * @public static + */ + public static function set_mqr($mqr) { + if (!defined('PHP_VERSION_ID')) { + $version = PHP_VERSION; + define('PHP_VERSION_ID', (($version{0} * 10000) + ($version{2} * 100) + $version{4})); + } + if (PHP_VERSION_ID < 50300) { + @set_magic_quotes_runtime($mqr); + } + } + + /** + * Gets the current active configuration setting of magic_quotes_runtime (if the get_magic_quotes_runtime function exist) + * @return Returns 0 if magic quotes runtime is off or get_magic_quotes_runtime doesn't exist, 1 otherwise. + * @since 4.6.025 (2009-08-17) + * @public static + */ + public static function get_mqr() { + if (!defined('PHP_VERSION_ID')) { + $version = PHP_VERSION; + define('PHP_VERSION_ID', (($version{0} * 10000) + ($version{2} * 100) + $version{4})); + } + if (PHP_VERSION_ID < 50300) { + return @get_magic_quotes_runtime(); + } + return 0; + } + + /** + * Get page dimensions from format name. + * @param $format (mixed) The format name. It can be:
                      + *
                    • ISO 216 A Series + 2 SIS 014711 extensions
                    • + *
                    • A0 (841x1189 mm ; 33.11x46.81 in)
                    • + *
                    • A1 (594x841 mm ; 23.39x33.11 in)
                    • + *
                    • A2 (420x594 mm ; 16.54x23.39 in)
                    • + *
                    • A3 (297x420 mm ; 11.69x16.54 in)
                    • + *
                    • A4 (210x297 mm ; 8.27x11.69 in)
                    • + *
                    • A5 (148x210 mm ; 5.83x8.27 in)
                    • + *
                    • A6 (105x148 mm ; 4.13x5.83 in)
                    • + *
                    • A7 (74x105 mm ; 2.91x4.13 in)
                    • + *
                    • A8 (52x74 mm ; 2.05x2.91 in)
                    • + *
                    • A9 (37x52 mm ; 1.46x2.05 in)
                    • + *
                    • A10 (26x37 mm ; 1.02x1.46 in)
                    • + *
                    • A11 (18x26 mm ; 0.71x1.02 in)
                    • + *
                    • A12 (13x18 mm ; 0.51x0.71 in)
                    • + *
                    • ISO 216 B Series + 2 SIS 014711 extensions
                    • + *
                    • B0 (1000x1414 mm ; 39.37x55.67 in)
                    • + *
                    • B1 (707x1000 mm ; 27.83x39.37 in)
                    • + *
                    • B2 (500x707 mm ; 19.69x27.83 in)
                    • + *
                    • B3 (353x500 mm ; 13.90x19.69 in)
                    • + *
                    • B4 (250x353 mm ; 9.84x13.90 in)
                    • + *
                    • B5 (176x250 mm ; 6.93x9.84 in)
                    • + *
                    • B6 (125x176 mm ; 4.92x6.93 in)
                    • + *
                    • B7 (88x125 mm ; 3.46x4.92 in)
                    • + *
                    • B8 (62x88 mm ; 2.44x3.46 in)
                    • + *
                    • B9 (44x62 mm ; 1.73x2.44 in)
                    • + *
                    • B10 (31x44 mm ; 1.22x1.73 in)
                    • + *
                    • B11 (22x31 mm ; 0.87x1.22 in)
                    • + *
                    • B12 (15x22 mm ; 0.59x0.87 in)
                    • + *
                    • ISO 216 C Series + 2 SIS 014711 extensions + 2 EXTENSION
                    • + *
                    • C0 (917x1297 mm ; 36.10x51.06 in)
                    • + *
                    • C1 (648x917 mm ; 25.51x36.10 in)
                    • + *
                    • C2 (458x648 mm ; 18.03x25.51 in)
                    • + *
                    • C3 (324x458 mm ; 12.76x18.03 in)
                    • + *
                    • C4 (229x324 mm ; 9.02x12.76 in)
                    • + *
                    • C5 (162x229 mm ; 6.38x9.02 in)
                    • + *
                    • C6 (114x162 mm ; 4.49x6.38 in)
                    • + *
                    • C7 (81x114 mm ; 3.19x4.49 in)
                    • + *
                    • C8 (57x81 mm ; 2.24x3.19 in)
                    • + *
                    • C9 (40x57 mm ; 1.57x2.24 in)
                    • + *
                    • C10 (28x40 mm ; 1.10x1.57 in)
                    • + *
                    • C11 (20x28 mm ; 0.79x1.10 in)
                    • + *
                    • C12 (14x20 mm ; 0.55x0.79 in)
                    • + *
                    • C76 (81x162 mm ; 3.19x6.38 in)
                    • + *
                    • DL (110x220 mm ; 4.33x8.66 in)
                    • + *
                    • SIS 014711 E Series
                    • + *
                    • E0 (879x1241 mm ; 34.61x48.86 in)
                    • + *
                    • E1 (620x879 mm ; 24.41x34.61 in)
                    • + *
                    • E2 (440x620 mm ; 17.32x24.41 in)
                    • + *
                    • E3 (310x440 mm ; 12.20x17.32 in)
                    • + *
                    • E4 (220x310 mm ; 8.66x12.20 in)
                    • + *
                    • E5 (155x220 mm ; 6.10x8.66 in)
                    • + *
                    • E6 (110x155 mm ; 4.33x6.10 in)
                    • + *
                    • E7 (78x110 mm ; 3.07x4.33 in)
                    • + *
                    • E8 (55x78 mm ; 2.17x3.07 in)
                    • + *
                    • E9 (39x55 mm ; 1.54x2.17 in)
                    • + *
                    • E10 (27x39 mm ; 1.06x1.54 in)
                    • + *
                    • E11 (19x27 mm ; 0.75x1.06 in)
                    • + *
                    • E12 (13x19 mm ; 0.51x0.75 in)
                    • + *
                    • SIS 014711 G Series
                    • + *
                    • G0 (958x1354 mm ; 37.72x53.31 in)
                    • + *
                    • G1 (677x958 mm ; 26.65x37.72 in)
                    • + *
                    • G2 (479x677 mm ; 18.86x26.65 in)
                    • + *
                    • G3 (338x479 mm ; 13.31x18.86 in)
                    • + *
                    • G4 (239x338 mm ; 9.41x13.31 in)
                    • + *
                    • G5 (169x239 mm ; 6.65x9.41 in)
                    • + *
                    • G6 (119x169 mm ; 4.69x6.65 in)
                    • + *
                    • G7 (84x119 mm ; 3.31x4.69 in)
                    • + *
                    • G8 (59x84 mm ; 2.32x3.31 in)
                    • + *
                    • G9 (42x59 mm ; 1.65x2.32 in)
                    • + *
                    • G10 (29x42 mm ; 1.14x1.65 in)
                    • + *
                    • G11 (21x29 mm ; 0.83x1.14 in)
                    • + *
                    • G12 (14x21 mm ; 0.55x0.83 in)
                    • + *
                    • ISO Press
                    • + *
                    • RA0 (860x1220 mm ; 33.86x48.03 in)
                    • + *
                    • RA1 (610x860 mm ; 24.02x33.86 in)
                    • + *
                    • RA2 (430x610 mm ; 16.93x24.02 in)
                    • + *
                    • RA3 (305x430 mm ; 12.01x16.93 in)
                    • + *
                    • RA4 (215x305 mm ; 8.46x12.01 in)
                    • + *
                    • SRA0 (900x1280 mm ; 35.43x50.39 in)
                    • + *
                    • SRA1 (640x900 mm ; 25.20x35.43 in)
                    • + *
                    • SRA2 (450x640 mm ; 17.72x25.20 in)
                    • + *
                    • SRA3 (320x450 mm ; 12.60x17.72 in)
                    • + *
                    • SRA4 (225x320 mm ; 8.86x12.60 in)
                    • + *
                    • German DIN 476
                    • + *
                    • 4A0 (1682x2378 mm ; 66.22x93.62 in)
                    • + *
                    • 2A0 (1189x1682 mm ; 46.81x66.22 in)
                    • + *
                    • Variations on the ISO Standard
                    • + *
                    • A2_EXTRA (445x619 mm ; 17.52x24.37 in)
                    • + *
                    • A3+ (329x483 mm ; 12.95x19.02 in)
                    • + *
                    • A3_EXTRA (322x445 mm ; 12.68x17.52 in)
                    • + *
                    • A3_SUPER (305x508 mm ; 12.01x20.00 in)
                    • + *
                    • SUPER_A3 (305x487 mm ; 12.01x19.17 in)
                    • + *
                    • A4_EXTRA (235x322 mm ; 9.25x12.68 in)
                    • + *
                    • A4_SUPER (229x322 mm ; 9.02x12.68 in)
                    • + *
                    • SUPER_A4 (227x356 mm ; 8.94x14.02 in)
                    • + *
                    • A4_LONG (210x348 mm ; 8.27x13.70 in)
                    • + *
                    • F4 (210x330 mm ; 8.27x12.99 in)
                    • + *
                    • SO_B5_EXTRA (202x276 mm ; 7.95x10.87 in)
                    • + *
                    • A5_EXTRA (173x235 mm ; 6.81x9.25 in)
                    • + *
                    • ANSI Series
                    • + *
                    • ANSI_E (864x1118 mm ; 34.00x44.00 in)
                    • + *
                    • ANSI_D (559x864 mm ; 22.00x34.00 in)
                    • + *
                    • ANSI_C (432x559 mm ; 17.00x22.00 in)
                    • + *
                    • ANSI_B (279x432 mm ; 11.00x17.00 in)
                    • + *
                    • ANSI_A (216x279 mm ; 8.50x11.00 in)
                    • + *
                    • Traditional 'Loose' North American Paper Sizes
                    • + *
                    • LEDGER, USLEDGER (432x279 mm ; 17.00x11.00 in)
                    • + *
                    • TABLOID, USTABLOID, BIBLE, ORGANIZERK (279x432 mm ; 11.00x17.00 in)
                    • + *
                    • LETTER, USLETTER, ORGANIZERM (216x279 mm ; 8.50x11.00 in)
                    • + *
                    • LEGAL, USLEGAL (216x356 mm ; 8.50x14.00 in)
                    • + *
                    • GLETTER, GOVERNMENTLETTER (203x267 mm ; 8.00x10.50 in)
                    • + *
                    • JLEGAL, JUNIORLEGAL (203x127 mm ; 8.00x5.00 in)
                    • + *
                    • Other North American Paper Sizes
                    • + *
                    • QUADDEMY (889x1143 mm ; 35.00x45.00 in)
                    • + *
                    • SUPER_B (330x483 mm ; 13.00x19.00 in)
                    • + *
                    • QUARTO (229x279 mm ; 9.00x11.00 in)
                    • + *
                    • FOLIO, GOVERNMENTLEGAL (216x330 mm ; 8.50x13.00 in)
                    • + *
                    • EXECUTIVE, MONARCH (184x267 mm ; 7.25x10.50 in)
                    • + *
                    • MEMO, STATEMENT, ORGANIZERL (140x216 mm ; 5.50x8.50 in)
                    • + *
                    • FOOLSCAP (210x330 mm ; 8.27x13.00 in)
                    • + *
                    • COMPACT (108x171 mm ; 4.25x6.75 in)
                    • + *
                    • ORGANIZERJ (70x127 mm ; 2.75x5.00 in)
                    • + *
                    • Canadian standard CAN 2-9.60M
                    • + *
                    • P1 (560x860 mm ; 22.05x33.86 in)
                    • + *
                    • P2 (430x560 mm ; 16.93x22.05 in)
                    • + *
                    • P3 (280x430 mm ; 11.02x16.93 in)
                    • + *
                    • P4 (215x280 mm ; 8.46x11.02 in)
                    • + *
                    • P5 (140x215 mm ; 5.51x8.46 in)
                    • + *
                    • P6 (107x140 mm ; 4.21x5.51 in)
                    • + *
                    • North American Architectural Sizes
                    • + *
                    • ARCH_E (914x1219 mm ; 36.00x48.00 in)
                    • + *
                    • ARCH_E1 (762x1067 mm ; 30.00x42.00 in)
                    • + *
                    • ARCH_D (610x914 mm ; 24.00x36.00 in)
                    • + *
                    • ARCH_C, BROADSHEET (457x610 mm ; 18.00x24.00 in)
                    • + *
                    • ARCH_B (305x457 mm ; 12.00x18.00 in)
                    • + *
                    • ARCH_A (229x305 mm ; 9.00x12.00 in)
                    • + *
                    • Announcement Envelopes
                    • + *
                    • ANNENV_A2 (111x146 mm ; 4.37x5.75 in)
                    • + *
                    • ANNENV_A6 (121x165 mm ; 4.75x6.50 in)
                    • + *
                    • ANNENV_A7 (133x184 mm ; 5.25x7.25 in)
                    • + *
                    • ANNENV_A8 (140x206 mm ; 5.50x8.12 in)
                    • + *
                    • ANNENV_A10 (159x244 mm ; 6.25x9.62 in)
                    • + *
                    • ANNENV_SLIM (98x225 mm ; 3.87x8.87 in)
                    • + *
                    • Commercial Envelopes
                    • + *
                    • COMMENV_N6_1/4 (89x152 mm ; 3.50x6.00 in)
                    • + *
                    • COMMENV_N6_3/4 (92x165 mm ; 3.62x6.50 in)
                    • + *
                    • COMMENV_N8 (98x191 mm ; 3.87x7.50 in)
                    • + *
                    • COMMENV_N9 (98x225 mm ; 3.87x8.87 in)
                    • + *
                    • COMMENV_N10 (105x241 mm ; 4.12x9.50 in)
                    • + *
                    • COMMENV_N11 (114x263 mm ; 4.50x10.37 in)
                    • + *
                    • COMMENV_N12 (121x279 mm ; 4.75x11.00 in)
                    • + *
                    • COMMENV_N14 (127x292 mm ; 5.00x11.50 in)
                    • + *
                    • Catalogue Envelopes
                    • + *
                    • CATENV_N1 (152x229 mm ; 6.00x9.00 in)
                    • + *
                    • CATENV_N1_3/4 (165x241 mm ; 6.50x9.50 in)
                    • + *
                    • CATENV_N2 (165x254 mm ; 6.50x10.00 in)
                    • + *
                    • CATENV_N3 (178x254 mm ; 7.00x10.00 in)
                    • + *
                    • CATENV_N6 (191x267 mm ; 7.50x10.50 in)
                    • + *
                    • CATENV_N7 (203x279 mm ; 8.00x11.00 in)
                    • + *
                    • CATENV_N8 (210x286 mm ; 8.25x11.25 in)
                    • + *
                    • CATENV_N9_1/2 (216x267 mm ; 8.50x10.50 in)
                    • + *
                    • CATENV_N9_3/4 (222x286 mm ; 8.75x11.25 in)
                    • + *
                    • CATENV_N10_1/2 (229x305 mm ; 9.00x12.00 in)
                    • + *
                    • CATENV_N12_1/2 (241x318 mm ; 9.50x12.50 in)
                    • + *
                    • CATENV_N13_1/2 (254x330 mm ; 10.00x13.00 in)
                    • + *
                    • CATENV_N14_1/4 (286x311 mm ; 11.25x12.25 in)
                    • + *
                    • CATENV_N14_1/2 (292x368 mm ; 11.50x14.50 in)
                    • + *
                    • Japanese (JIS P 0138-61) Standard B-Series
                    • + *
                    • JIS_B0 (1030x1456 mm ; 40.55x57.32 in)
                    • + *
                    • JIS_B1 (728x1030 mm ; 28.66x40.55 in)
                    • + *
                    • JIS_B2 (515x728 mm ; 20.28x28.66 in)
                    • + *
                    • JIS_B3 (364x515 mm ; 14.33x20.28 in)
                    • + *
                    • JIS_B4 (257x364 mm ; 10.12x14.33 in)
                    • + *
                    • JIS_B5 (182x257 mm ; 7.17x10.12 in)
                    • + *
                    • JIS_B6 (128x182 mm ; 5.04x7.17 in)
                    • + *
                    • JIS_B7 (91x128 mm ; 3.58x5.04 in)
                    • + *
                    • JIS_B8 (64x91 mm ; 2.52x3.58 in)
                    • + *
                    • JIS_B9 (45x64 mm ; 1.77x2.52 in)
                    • + *
                    • JIS_B10 (32x45 mm ; 1.26x1.77 in)
                    • + *
                    • JIS_B11 (22x32 mm ; 0.87x1.26 in)
                    • + *
                    • JIS_B12 (16x22 mm ; 0.63x0.87 in)
                    • + *
                    • PA Series
                    • + *
                    • PA0 (840x1120 mm ; 33.07x44.09 in)
                    • + *
                    • PA1 (560x840 mm ; 22.05x33.07 in)
                    • + *
                    • PA2 (420x560 mm ; 16.54x22.05 in)
                    • + *
                    • PA3 (280x420 mm ; 11.02x16.54 in)
                    • + *
                    • PA4 (210x280 mm ; 8.27x11.02 in)
                    • + *
                    • PA5 (140x210 mm ; 5.51x8.27 in)
                    • + *
                    • PA6 (105x140 mm ; 4.13x5.51 in)
                    • + *
                    • PA7 (70x105 mm ; 2.76x4.13 in)
                    • + *
                    • PA8 (52x70 mm ; 2.05x2.76 in)
                    • + *
                    • PA9 (35x52 mm ; 1.38x2.05 in)
                    • + *
                    • PA10 (26x35 mm ; 1.02x1.38 in)
                    • + *
                    • Standard Photographic Print Sizes
                    • + *
                    • PASSPORT_PHOTO (35x45 mm ; 1.38x1.77 in)
                    • + *
                    • E (82x120 mm ; 3.25x4.72 in)
                    • + *
                    • 3R, L (89x127 mm ; 3.50x5.00 in)
                    • + *
                    • 4R, KG (102x152 mm ; 4.02x5.98 in)
                    • + *
                    • 4D (120x152 mm ; 4.72x5.98 in)
                    • + *
                    • 5R, 2L (127x178 mm ; 5.00x7.01 in)
                    • + *
                    • 6R, 8P (152x203 mm ; 5.98x7.99 in)
                    • + *
                    • 8R, 6P (203x254 mm ; 7.99x10.00 in)
                    • + *
                    • S8R, 6PW (203x305 mm ; 7.99x12.01 in)
                    • + *
                    • 10R, 4P (254x305 mm ; 10.00x12.01 in)
                    • + *
                    • S10R, 4PW (254x381 mm ; 10.00x15.00 in)
                    • + *
                    • 11R (279x356 mm ; 10.98x14.02 in)
                    • + *
                    • S11R (279x432 mm ; 10.98x17.01 in)
                    • + *
                    • 12R (305x381 mm ; 12.01x15.00 in)
                    • + *
                    • S12R (305x456 mm ; 12.01x17.95 in)
                    • + *
                    • Common Newspaper Sizes
                    • + *
                    • NEWSPAPER_BROADSHEET (750x600 mm ; 29.53x23.62 in)
                    • + *
                    • NEWSPAPER_BERLINER (470x315 mm ; 18.50x12.40 in)
                    • + *
                    • NEWSPAPER_COMPACT, NEWSPAPER_TABLOID (430x280 mm ; 16.93x11.02 in)
                    • + *
                    • Business Cards
                    • + *
                    • CREDIT_CARD, BUSINESS_CARD, BUSINESS_CARD_ISO7810 (54x86 mm ; 2.13x3.37 in)
                    • + *
                    • BUSINESS_CARD_ISO216 (52x74 mm ; 2.05x2.91 in)
                    • + *
                    • BUSINESS_CARD_IT, BUSINESS_CARD_UK, BUSINESS_CARD_FR, BUSINESS_CARD_DE, BUSINESS_CARD_ES (55x85 mm ; 2.17x3.35 in)
                    • + *
                    • BUSINESS_CARD_US, BUSINESS_CARD_CA (51x89 mm ; 2.01x3.50 in)
                    • + *
                    • BUSINESS_CARD_JP (55x91 mm ; 2.17x3.58 in)
                    • + *
                    • BUSINESS_CARD_HK (54x90 mm ; 2.13x3.54 in)
                    • + *
                    • BUSINESS_CARD_AU, BUSINESS_CARD_DK, BUSINESS_CARD_SE (55x90 mm ; 2.17x3.54 in)
                    • + *
                    • BUSINESS_CARD_RU, BUSINESS_CARD_CZ, BUSINESS_CARD_FI, BUSINESS_CARD_HU, BUSINESS_CARD_IL (50x90 mm ; 1.97x3.54 in)
                    • + *
                    • Billboards
                    • + *
                    • 4SHEET (1016x1524 mm ; 40.00x60.00 in)
                    • + *
                    • 6SHEET (1200x1800 mm ; 47.24x70.87 in)
                    • + *
                    • 12SHEET (3048x1524 mm ; 120.00x60.00 in)
                    • + *
                    • 16SHEET (2032x3048 mm ; 80.00x120.00 in)
                    • + *
                    • 32SHEET (4064x3048 mm ; 160.00x120.00 in)
                    • + *
                    • 48SHEET (6096x3048 mm ; 240.00x120.00 in)
                    • + *
                    • 64SHEET (8128x3048 mm ; 320.00x120.00 in)
                    • + *
                    • 96SHEET (12192x3048 mm ; 480.00x120.00 in)
                    • + *
                    • Old Imperial English (some are still used in USA)
                    • + *
                    • EN_EMPEROR (1219x1829 mm ; 48.00x72.00 in)
                    • + *
                    • EN_ANTIQUARIAN (787x1346 mm ; 31.00x53.00 in)
                    • + *
                    • EN_GRAND_EAGLE (730x1067 mm ; 28.75x42.00 in)
                    • + *
                    • EN_DOUBLE_ELEPHANT (679x1016 mm ; 26.75x40.00 in)
                    • + *
                    • EN_ATLAS (660x864 mm ; 26.00x34.00 in)
                    • + *
                    • EN_COLOMBIER (597x876 mm ; 23.50x34.50 in)
                    • + *
                    • EN_ELEPHANT (584x711 mm ; 23.00x28.00 in)
                    • + *
                    • EN_DOUBLE_DEMY (572x902 mm ; 22.50x35.50 in)
                    • + *
                    • EN_IMPERIAL (559x762 mm ; 22.00x30.00 in)
                    • + *
                    • EN_PRINCESS (546x711 mm ; 21.50x28.00 in)
                    • + *
                    • EN_CARTRIDGE (533x660 mm ; 21.00x26.00 in)
                    • + *
                    • EN_DOUBLE_LARGE_POST (533x838 mm ; 21.00x33.00 in)
                    • + *
                    • EN_ROYAL (508x635 mm ; 20.00x25.00 in)
                    • + *
                    • EN_SHEET, EN_HALF_POST (495x597 mm ; 19.50x23.50 in)
                    • + *
                    • EN_SUPER_ROYAL (483x686 mm ; 19.00x27.00 in)
                    • + *
                    • EN_DOUBLE_POST (483x775 mm ; 19.00x30.50 in)
                    • + *
                    • EN_MEDIUM (445x584 mm ; 17.50x23.00 in)
                    • + *
                    • EN_DEMY (445x572 mm ; 17.50x22.50 in)
                    • + *
                    • EN_LARGE_POST (419x533 mm ; 16.50x21.00 in)
                    • + *
                    • EN_COPY_DRAUGHT (406x508 mm ; 16.00x20.00 in)
                    • + *
                    • EN_POST (394x489 mm ; 15.50x19.25 in)
                    • + *
                    • EN_CROWN (381x508 mm ; 15.00x20.00 in)
                    • + *
                    • EN_PINCHED_POST (375x470 mm ; 14.75x18.50 in)
                    • + *
                    • EN_BRIEF (343x406 mm ; 13.50x16.00 in)
                    • + *
                    • EN_FOOLSCAP (343x432 mm ; 13.50x17.00 in)
                    • + *
                    • EN_SMALL_FOOLSCAP (337x419 mm ; 13.25x16.50 in)
                    • + *
                    • EN_POTT (318x381 mm ; 12.50x15.00 in)
                    • + *
                    • Old Imperial Belgian
                    • + *
                    • BE_GRAND_AIGLE (700x1040 mm ; 27.56x40.94 in)
                    • + *
                    • BE_COLOMBIER (620x850 mm ; 24.41x33.46 in)
                    • + *
                    • BE_DOUBLE_CARRE (620x920 mm ; 24.41x36.22 in)
                    • + *
                    • BE_ELEPHANT (616x770 mm ; 24.25x30.31 in)
                    • + *
                    • BE_PETIT_AIGLE (600x840 mm ; 23.62x33.07 in)
                    • + *
                    • BE_GRAND_JESUS (550x730 mm ; 21.65x28.74 in)
                    • + *
                    • BE_JESUS (540x730 mm ; 21.26x28.74 in)
                    • + *
                    • BE_RAISIN (500x650 mm ; 19.69x25.59 in)
                    • + *
                    • BE_GRAND_MEDIAN (460x605 mm ; 18.11x23.82 in)
                    • + *
                    • BE_DOUBLE_POSTE (435x565 mm ; 17.13x22.24 in)
                    • + *
                    • BE_COQUILLE (430x560 mm ; 16.93x22.05 in)
                    • + *
                    • BE_PETIT_MEDIAN (415x530 mm ; 16.34x20.87 in)
                    • + *
                    • BE_RUCHE (360x460 mm ; 14.17x18.11 in)
                    • + *
                    • BE_PROPATRIA (345x430 mm ; 13.58x16.93 in)
                    • + *
                    • BE_LYS (317x397 mm ; 12.48x15.63 in)
                    • + *
                    • BE_POT (307x384 mm ; 12.09x15.12 in)
                    • + *
                    • BE_ROSETTE (270x347 mm ; 10.63x13.66 in)
                    • + *
                    • Old Imperial French
                    • + *
                    • FR_UNIVERS (1000x1300 mm ; 39.37x51.18 in)
                    • + *
                    • FR_DOUBLE_COLOMBIER (900x1260 mm ; 35.43x49.61 in)
                    • + *
                    • FR_GRANDE_MONDE (900x1260 mm ; 35.43x49.61 in)
                    • + *
                    • FR_DOUBLE_SOLEIL (800x1200 mm ; 31.50x47.24 in)
                    • + *
                    • FR_DOUBLE_JESUS (760x1120 mm ; 29.92x44.09 in)
                    • + *
                    • FR_GRAND_AIGLE (750x1060 mm ; 29.53x41.73 in)
                    • + *
                    • FR_PETIT_AIGLE (700x940 mm ; 27.56x37.01 in)
                    • + *
                    • FR_DOUBLE_RAISIN (650x1000 mm ; 25.59x39.37 in)
                    • + *
                    • FR_JOURNAL (650x940 mm ; 25.59x37.01 in)
                    • + *
                    • FR_COLOMBIER_AFFICHE (630x900 mm ; 24.80x35.43 in)
                    • + *
                    • FR_DOUBLE_CAVALIER (620x920 mm ; 24.41x36.22 in)
                    • + *
                    • FR_CLOCHE (600x800 mm ; 23.62x31.50 in)
                    • + *
                    • FR_SOLEIL (600x800 mm ; 23.62x31.50 in)
                    • + *
                    • FR_DOUBLE_CARRE (560x900 mm ; 22.05x35.43 in)
                    • + *
                    • FR_DOUBLE_COQUILLE (560x880 mm ; 22.05x34.65 in)
                    • + *
                    • FR_JESUS (560x760 mm ; 22.05x29.92 in)
                    • + *
                    • FR_RAISIN (500x650 mm ; 19.69x25.59 in)
                    • + *
                    • FR_CAVALIER (460x620 mm ; 18.11x24.41 in)
                    • + *
                    • FR_DOUBLE_COURONNE (460x720 mm ; 18.11x28.35 in)
                    • + *
                    • FR_CARRE (450x560 mm ; 17.72x22.05 in)
                    • + *
                    • FR_COQUILLE (440x560 mm ; 17.32x22.05 in)
                    • + *
                    • FR_DOUBLE_TELLIERE (440x680 mm ; 17.32x26.77 in)
                    • + *
                    • FR_DOUBLE_CLOCHE (400x600 mm ; 15.75x23.62 in)
                    • + *
                    • FR_DOUBLE_POT (400x620 mm ; 15.75x24.41 in)
                    • + *
                    • FR_ECU (400x520 mm ; 15.75x20.47 in)
                    • + *
                    • FR_COURONNE (360x460 mm ; 14.17x18.11 in)
                    • + *
                    • FR_TELLIERE (340x440 mm ; 13.39x17.32 in)
                    • + *
                    • FR_POT (310x400 mm ; 12.20x15.75 in)
                    • + *
                    + * @return array containing page width and height in points + * @since 5.0.010 (2010-05-17) + * @public static + */ + public static function getPageSizeFromFormat($format) { + // Paper cordinates are calculated in this way: (inches * 72) where (1 inch = 25.4 mm) + switch (strtoupper($format)) { + // ISO 216 A Series + 2 SIS 014711 extensions + case 'A0' : {$pf = array( 2383.937, 3370.394); break;} + case 'A1' : {$pf = array( 1683.780, 2383.937); break;} + case 'A2' : {$pf = array( 1190.551, 1683.780); break;} + case 'A3' : {$pf = array( 841.890, 1190.551); break;} + case 'A4' : {$pf = array( 595.276, 841.890); break;} + case 'A5' : {$pf = array( 419.528, 595.276); break;} + case 'A6' : {$pf = array( 297.638, 419.528); break;} + case 'A7' : {$pf = array( 209.764, 297.638); break;} + case 'A8' : {$pf = array( 147.402, 209.764); break;} + case 'A9' : {$pf = array( 104.882, 147.402); break;} + case 'A10': {$pf = array( 73.701, 104.882); break;} + case 'A11': {$pf = array( 51.024, 73.701); break;} + case 'A12': {$pf = array( 36.850, 51.024); break;} + // ISO 216 B Series + 2 SIS 014711 extensions + case 'B0' : {$pf = array( 2834.646, 4008.189); break;} + case 'B1' : {$pf = array( 2004.094, 2834.646); break;} + case 'B2' : {$pf = array( 1417.323, 2004.094); break;} + case 'B3' : {$pf = array( 1000.630, 1417.323); break;} + case 'B4' : {$pf = array( 708.661, 1000.630); break;} + case 'B5' : {$pf = array( 498.898, 708.661); break;} + case 'B6' : {$pf = array( 354.331, 498.898); break;} + case 'B7' : {$pf = array( 249.449, 354.331); break;} + case 'B8' : {$pf = array( 175.748, 249.449); break;} + case 'B9' : {$pf = array( 124.724, 175.748); break;} + case 'B10': {$pf = array( 87.874, 124.724); break;} + case 'B11': {$pf = array( 62.362, 87.874); break;} + case 'B12': {$pf = array( 42.520, 62.362); break;} + // ISO 216 C Series + 2 SIS 014711 extensions + 2 EXTENSION + case 'C0' : {$pf = array( 2599.370, 3676.535); break;} + case 'C1' : {$pf = array( 1836.850, 2599.370); break;} + case 'C2' : {$pf = array( 1298.268, 1836.850); break;} + case 'C3' : {$pf = array( 918.425, 1298.268); break;} + case 'C4' : {$pf = array( 649.134, 918.425); break;} + case 'C5' : {$pf = array( 459.213, 649.134); break;} + case 'C6' : {$pf = array( 323.150, 459.213); break;} + case 'C7' : {$pf = array( 229.606, 323.150); break;} + case 'C8' : {$pf = array( 161.575, 229.606); break;} + case 'C9' : {$pf = array( 113.386, 161.575); break;} + case 'C10': {$pf = array( 79.370, 113.386); break;} + case 'C11': {$pf = array( 56.693, 79.370); break;} + case 'C12': {$pf = array( 39.685, 56.693); break;} + case 'C76': {$pf = array( 229.606, 459.213); break;} + case 'DL' : {$pf = array( 311.811, 623.622); break;} + // SIS 014711 E Series + case 'E0' : {$pf = array( 2491.654, 3517.795); break;} + case 'E1' : {$pf = array( 1757.480, 2491.654); break;} + case 'E2' : {$pf = array( 1247.244, 1757.480); break;} + case 'E3' : {$pf = array( 878.740, 1247.244); break;} + case 'E4' : {$pf = array( 623.622, 878.740); break;} + case 'E5' : {$pf = array( 439.370, 623.622); break;} + case 'E6' : {$pf = array( 311.811, 439.370); break;} + case 'E7' : {$pf = array( 221.102, 311.811); break;} + case 'E8' : {$pf = array( 155.906, 221.102); break;} + case 'E9' : {$pf = array( 110.551, 155.906); break;} + case 'E10': {$pf = array( 76.535, 110.551); break;} + case 'E11': {$pf = array( 53.858, 76.535); break;} + case 'E12': {$pf = array( 36.850, 53.858); break;} + // SIS 014711 G Series + case 'G0' : {$pf = array( 2715.591, 3838.110); break;} + case 'G1' : {$pf = array( 1919.055, 2715.591); break;} + case 'G2' : {$pf = array( 1357.795, 1919.055); break;} + case 'G3' : {$pf = array( 958.110, 1357.795); break;} + case 'G4' : {$pf = array( 677.480, 958.110); break;} + case 'G5' : {$pf = array( 479.055, 677.480); break;} + case 'G6' : {$pf = array( 337.323, 479.055); break;} + case 'G7' : {$pf = array( 238.110, 337.323); break;} + case 'G8' : {$pf = array( 167.244, 238.110); break;} + case 'G9' : {$pf = array( 119.055, 167.244); break;} + case 'G10': {$pf = array( 82.205, 119.055); break;} + case 'G11': {$pf = array( 59.528, 82.205); break;} + case 'G12': {$pf = array( 39.685, 59.528); break;} + // ISO Press + case 'RA0': {$pf = array( 2437.795, 3458.268); break;} + case 'RA1': {$pf = array( 1729.134, 2437.795); break;} + case 'RA2': {$pf = array( 1218.898, 1729.134); break;} + case 'RA3': {$pf = array( 864.567, 1218.898); break;} + case 'RA4': {$pf = array( 609.449, 864.567); break;} + case 'SRA0': {$pf = array( 2551.181, 3628.346); break;} + case 'SRA1': {$pf = array( 1814.173, 2551.181); break;} + case 'SRA2': {$pf = array( 1275.591, 1814.173); break;} + case 'SRA3': {$pf = array( 907.087, 1275.591); break;} + case 'SRA4': {$pf = array( 637.795, 907.087); break;} + // German DIN 476 + case '4A0': {$pf = array( 4767.874, 6740.787); break;} + case '2A0': {$pf = array( 3370.394, 4767.874); break;} + // Variations on the ISO Standard + case 'A2_EXTRA' : {$pf = array( 1261.417, 1754.646); break;} + case 'A3+' : {$pf = array( 932.598, 1369.134); break;} + case 'A3_EXTRA' : {$pf = array( 912.756, 1261.417); break;} + case 'A3_SUPER' : {$pf = array( 864.567, 1440.000); break;} + case 'SUPER_A3' : {$pf = array( 864.567, 1380.472); break;} + case 'A4_EXTRA' : {$pf = array( 666.142, 912.756); break;} + case 'A4_SUPER' : {$pf = array( 649.134, 912.756); break;} + case 'SUPER_A4' : {$pf = array( 643.465, 1009.134); break;} + case 'A4_LONG' : {$pf = array( 595.276, 986.457); break;} + case 'F4' : {$pf = array( 595.276, 935.433); break;} + case 'SO_B5_EXTRA': {$pf = array( 572.598, 782.362); break;} + case 'A5_EXTRA' : {$pf = array( 490.394, 666.142); break;} + // ANSI Series + case 'ANSI_E': {$pf = array( 2448.000, 3168.000); break;} + case 'ANSI_D': {$pf = array( 1584.000, 2448.000); break;} + case 'ANSI_C': {$pf = array( 1224.000, 1584.000); break;} + case 'ANSI_B': {$pf = array( 792.000, 1224.000); break;} + case 'ANSI_A': {$pf = array( 612.000, 792.000); break;} + // Traditional 'Loose' North American Paper Sizes + case 'USLEDGER': + case 'LEDGER' : {$pf = array( 1224.000, 792.000); break;} + case 'ORGANIZERK': + case 'BIBLE': + case 'USTABLOID': + case 'TABLOID': {$pf = array( 792.000, 1224.000); break;} + case 'ORGANIZERM': + case 'USLETTER': + case 'LETTER' : {$pf = array( 612.000, 792.000); break;} + case 'USLEGAL': + case 'LEGAL' : {$pf = array( 612.000, 1008.000); break;} + case 'GOVERNMENTLETTER': + case 'GLETTER': {$pf = array( 576.000, 756.000); break;} + case 'JUNIORLEGAL': + case 'JLEGAL' : {$pf = array( 576.000, 360.000); break;} + // Other North American Paper Sizes + case 'QUADDEMY': {$pf = array( 2520.000, 3240.000); break;} + case 'SUPER_B': {$pf = array( 936.000, 1368.000); break;} + case 'QUARTO': {$pf = array( 648.000, 792.000); break;} + case 'GOVERNMENTLEGAL': + case 'FOLIO': {$pf = array( 612.000, 936.000); break;} + case 'MONARCH': + case 'EXECUTIVE': {$pf = array( 522.000, 756.000); break;} + case 'ORGANIZERL': + case 'STATEMENT': + case 'MEMO': {$pf = array( 396.000, 612.000); break;} + case 'FOOLSCAP': {$pf = array( 595.440, 936.000); break;} + case 'COMPACT': {$pf = array( 306.000, 486.000); break;} + case 'ORGANIZERJ': {$pf = array( 198.000, 360.000); break;} + // Canadian standard CAN 2-9.60M + case 'P1': {$pf = array( 1587.402, 2437.795); break;} + case 'P2': {$pf = array( 1218.898, 1587.402); break;} + case 'P3': {$pf = array( 793.701, 1218.898); break;} + case 'P4': {$pf = array( 609.449, 793.701); break;} + case 'P5': {$pf = array( 396.850, 609.449); break;} + case 'P6': {$pf = array( 303.307, 396.850); break;} + // North American Architectural Sizes + case 'ARCH_E' : {$pf = array( 2592.000, 3456.000); break;} + case 'ARCH_E1': {$pf = array( 2160.000, 3024.000); break;} + case 'ARCH_D' : {$pf = array( 1728.000, 2592.000); break;} + case 'BROADSHEET': + case 'ARCH_C' : {$pf = array( 1296.000, 1728.000); break;} + case 'ARCH_B' : {$pf = array( 864.000, 1296.000); break;} + case 'ARCH_A' : {$pf = array( 648.000, 864.000); break;} + // --- North American Envelope Sizes --- + // - Announcement Envelopes + case 'ANNENV_A2' : {$pf = array( 314.640, 414.000); break;} + case 'ANNENV_A6' : {$pf = array( 342.000, 468.000); break;} + case 'ANNENV_A7' : {$pf = array( 378.000, 522.000); break;} + case 'ANNENV_A8' : {$pf = array( 396.000, 584.640); break;} + case 'ANNENV_A10' : {$pf = array( 450.000, 692.640); break;} + case 'ANNENV_SLIM': {$pf = array( 278.640, 638.640); break;} + // - Commercial Envelopes + case 'COMMENV_N6_1/4': {$pf = array( 252.000, 432.000); break;} + case 'COMMENV_N6_3/4': {$pf = array( 260.640, 468.000); break;} + case 'COMMENV_N8' : {$pf = array( 278.640, 540.000); break;} + case 'COMMENV_N9' : {$pf = array( 278.640, 638.640); break;} + case 'COMMENV_N10' : {$pf = array( 296.640, 684.000); break;} + case 'COMMENV_N11' : {$pf = array( 324.000, 746.640); break;} + case 'COMMENV_N12' : {$pf = array( 342.000, 792.000); break;} + case 'COMMENV_N14' : {$pf = array( 360.000, 828.000); break;} + // - Catalogue Envelopes + case 'CATENV_N1' : {$pf = array( 432.000, 648.000); break;} + case 'CATENV_N1_3/4' : {$pf = array( 468.000, 684.000); break;} + case 'CATENV_N2' : {$pf = array( 468.000, 720.000); break;} + case 'CATENV_N3' : {$pf = array( 504.000, 720.000); break;} + case 'CATENV_N6' : {$pf = array( 540.000, 756.000); break;} + case 'CATENV_N7' : {$pf = array( 576.000, 792.000); break;} + case 'CATENV_N8' : {$pf = array( 594.000, 810.000); break;} + case 'CATENV_N9_1/2' : {$pf = array( 612.000, 756.000); break;} + case 'CATENV_N9_3/4' : {$pf = array( 630.000, 810.000); break;} + case 'CATENV_N10_1/2': {$pf = array( 648.000, 864.000); break;} + case 'CATENV_N12_1/2': {$pf = array( 684.000, 900.000); break;} + case 'CATENV_N13_1/2': {$pf = array( 720.000, 936.000); break;} + case 'CATENV_N14_1/4': {$pf = array( 810.000, 882.000); break;} + case 'CATENV_N14_1/2': {$pf = array( 828.000, 1044.000); break;} + // Japanese (JIS P 0138-61) Standard B-Series + case 'JIS_B0' : {$pf = array( 2919.685, 4127.244); break;} + case 'JIS_B1' : {$pf = array( 2063.622, 2919.685); break;} + case 'JIS_B2' : {$pf = array( 1459.843, 2063.622); break;} + case 'JIS_B3' : {$pf = array( 1031.811, 1459.843); break;} + case 'JIS_B4' : {$pf = array( 728.504, 1031.811); break;} + case 'JIS_B5' : {$pf = array( 515.906, 728.504); break;} + case 'JIS_B6' : {$pf = array( 362.835, 515.906); break;} + case 'JIS_B7' : {$pf = array( 257.953, 362.835); break;} + case 'JIS_B8' : {$pf = array( 181.417, 257.953); break;} + case 'JIS_B9' : {$pf = array( 127.559, 181.417); break;} + case 'JIS_B10': {$pf = array( 90.709, 127.559); break;} + case 'JIS_B11': {$pf = array( 62.362, 90.709); break;} + case 'JIS_B12': {$pf = array( 45.354, 62.362); break;} + // PA Series + case 'PA0' : {$pf = array( 2381.102, 3174.803,); break;} + case 'PA1' : {$pf = array( 1587.402, 2381.102); break;} + case 'PA2' : {$pf = array( 1190.551, 1587.402); break;} + case 'PA3' : {$pf = array( 793.701, 1190.551); break;} + case 'PA4' : {$pf = array( 595.276, 793.701); break;} + case 'PA5' : {$pf = array( 396.850, 595.276); break;} + case 'PA6' : {$pf = array( 297.638, 396.850); break;} + case 'PA7' : {$pf = array( 198.425, 297.638); break;} + case 'PA8' : {$pf = array( 147.402, 198.425); break;} + case 'PA9' : {$pf = array( 99.213, 147.402); break;} + case 'PA10': {$pf = array( 73.701, 99.213); break;} + // Standard Photographic Print Sizes + case 'PASSPORT_PHOTO': {$pf = array( 99.213, 127.559); break;} + case 'E' : {$pf = array( 233.858, 340.157); break;} + case 'L': + case '3R' : {$pf = array( 252.283, 360.000); break;} + case 'KG': + case '4R' : {$pf = array( 289.134, 430.866); break;} + case '4D' : {$pf = array( 340.157, 430.866); break;} + case '2L': + case '5R' : {$pf = array( 360.000, 504.567); break;} + case '8P': + case '6R' : {$pf = array( 430.866, 575.433); break;} + case '6P': + case '8R' : {$pf = array( 575.433, 720.000); break;} + case '6PW': + case 'S8R' : {$pf = array( 575.433, 864.567); break;} + case '4P': + case '10R' : {$pf = array( 720.000, 864.567); break;} + case '4PW': + case 'S10R': {$pf = array( 720.000, 1080.000); break;} + case '11R' : {$pf = array( 790.866, 1009.134); break;} + case 'S11R': {$pf = array( 790.866, 1224.567); break;} + case '12R' : {$pf = array( 864.567, 1080.000); break;} + case 'S12R': {$pf = array( 864.567, 1292.598); break;} + // Common Newspaper Sizes + case 'NEWSPAPER_BROADSHEET': {$pf = array( 2125.984, 1700.787); break;} + case 'NEWSPAPER_BERLINER' : {$pf = array( 1332.283, 892.913); break;} + case 'NEWSPAPER_TABLOID': + case 'NEWSPAPER_COMPACT' : {$pf = array( 1218.898, 793.701); break;} + // Business Cards + case 'CREDIT_CARD': + case 'BUSINESS_CARD': + case 'BUSINESS_CARD_ISO7810': {$pf = array( 153.014, 242.646); break;} + case 'BUSINESS_CARD_ISO216' : {$pf = array( 147.402, 209.764); break;} + case 'BUSINESS_CARD_IT': + case 'BUSINESS_CARD_UK': + case 'BUSINESS_CARD_FR': + case 'BUSINESS_CARD_DE': + case 'BUSINESS_CARD_ES' : {$pf = array( 155.906, 240.945); break;} + case 'BUSINESS_CARD_CA': + case 'BUSINESS_CARD_US' : {$pf = array( 144.567, 252.283); break;} + case 'BUSINESS_CARD_JP' : {$pf = array( 155.906, 257.953); break;} + case 'BUSINESS_CARD_HK' : {$pf = array( 153.071, 255.118); break;} + case 'BUSINESS_CARD_AU': + case 'BUSINESS_CARD_DK': + case 'BUSINESS_CARD_SE' : {$pf = array( 155.906, 255.118); break;} + case 'BUSINESS_CARD_RU': + case 'BUSINESS_CARD_CZ': + case 'BUSINESS_CARD_FI': + case 'BUSINESS_CARD_HU': + case 'BUSINESS_CARD_IL' : {$pf = array( 141.732, 255.118); break;} + // Billboards + case '4SHEET' : {$pf = array( 2880.000, 4320.000); break;} + case '6SHEET' : {$pf = array( 3401.575, 5102.362); break;} + case '12SHEET': {$pf = array( 8640.000, 4320.000); break;} + case '16SHEET': {$pf = array( 5760.000, 8640.000); break;} + case '32SHEET': {$pf = array(11520.000, 8640.000); break;} + case '48SHEET': {$pf = array(17280.000, 8640.000); break;} + case '64SHEET': {$pf = array(23040.000, 8640.000); break;} + case '96SHEET': {$pf = array(34560.000, 8640.000); break;} + // Old European Sizes + // - Old Imperial English Sizes + case 'EN_EMPEROR' : {$pf = array( 3456.000, 5184.000); break;} + case 'EN_ANTIQUARIAN' : {$pf = array( 2232.000, 3816.000); break;} + case 'EN_GRAND_EAGLE' : {$pf = array( 2070.000, 3024.000); break;} + case 'EN_DOUBLE_ELEPHANT' : {$pf = array( 1926.000, 2880.000); break;} + case 'EN_ATLAS' : {$pf = array( 1872.000, 2448.000); break;} + case 'EN_COLOMBIER' : {$pf = array( 1692.000, 2484.000); break;} + case 'EN_ELEPHANT' : {$pf = array( 1656.000, 2016.000); break;} + case 'EN_DOUBLE_DEMY' : {$pf = array( 1620.000, 2556.000); break;} + case 'EN_IMPERIAL' : {$pf = array( 1584.000, 2160.000); break;} + case 'EN_PRINCESS' : {$pf = array( 1548.000, 2016.000); break;} + case 'EN_CARTRIDGE' : {$pf = array( 1512.000, 1872.000); break;} + case 'EN_DOUBLE_LARGE_POST': {$pf = array( 1512.000, 2376.000); break;} + case 'EN_ROYAL' : {$pf = array( 1440.000, 1800.000); break;} + case 'EN_SHEET': + case 'EN_HALF_POST' : {$pf = array( 1404.000, 1692.000); break;} + case 'EN_SUPER_ROYAL' : {$pf = array( 1368.000, 1944.000); break;} + case 'EN_DOUBLE_POST' : {$pf = array( 1368.000, 2196.000); break;} + case 'EN_MEDIUM' : {$pf = array( 1260.000, 1656.000); break;} + case 'EN_DEMY' : {$pf = array( 1260.000, 1620.000); break;} + case 'EN_LARGE_POST' : {$pf = array( 1188.000, 1512.000); break;} + case 'EN_COPY_DRAUGHT' : {$pf = array( 1152.000, 1440.000); break;} + case 'EN_POST' : {$pf = array( 1116.000, 1386.000); break;} + case 'EN_CROWN' : {$pf = array( 1080.000, 1440.000); break;} + case 'EN_PINCHED_POST' : {$pf = array( 1062.000, 1332.000); break;} + case 'EN_BRIEF' : {$pf = array( 972.000, 1152.000); break;} + case 'EN_FOOLSCAP' : {$pf = array( 972.000, 1224.000); break;} + case 'EN_SMALL_FOOLSCAP' : {$pf = array( 954.000, 1188.000); break;} + case 'EN_POTT' : {$pf = array( 900.000, 1080.000); break;} + // - Old Imperial Belgian Sizes + case 'BE_GRAND_AIGLE' : {$pf = array( 1984.252, 2948.031); break;} + case 'BE_COLOMBIER' : {$pf = array( 1757.480, 2409.449); break;} + case 'BE_DOUBLE_CARRE': {$pf = array( 1757.480, 2607.874); break;} + case 'BE_ELEPHANT' : {$pf = array( 1746.142, 2182.677); break;} + case 'BE_PETIT_AIGLE' : {$pf = array( 1700.787, 2381.102); break;} + case 'BE_GRAND_JESUS' : {$pf = array( 1559.055, 2069.291); break;} + case 'BE_JESUS' : {$pf = array( 1530.709, 2069.291); break;} + case 'BE_RAISIN' : {$pf = array( 1417.323, 1842.520); break;} + case 'BE_GRAND_MEDIAN': {$pf = array( 1303.937, 1714.961); break;} + case 'BE_DOUBLE_POSTE': {$pf = array( 1233.071, 1601.575); break;} + case 'BE_COQUILLE' : {$pf = array( 1218.898, 1587.402); break;} + case 'BE_PETIT_MEDIAN': {$pf = array( 1176.378, 1502.362); break;} + case 'BE_RUCHE' : {$pf = array( 1020.472, 1303.937); break;} + case 'BE_PROPATRIA' : {$pf = array( 977.953, 1218.898); break;} + case 'BE_LYS' : {$pf = array( 898.583, 1125.354); break;} + case 'BE_POT' : {$pf = array( 870.236, 1088.504); break;} + case 'BE_ROSETTE' : {$pf = array( 765.354, 983.622); break;} + // - Old Imperial French Sizes + case 'FR_UNIVERS' : {$pf = array( 2834.646, 3685.039); break;} + case 'FR_DOUBLE_COLOMBIER' : {$pf = array( 2551.181, 3571.654); break;} + case 'FR_GRANDE_MONDE' : {$pf = array( 2551.181, 3571.654); break;} + case 'FR_DOUBLE_SOLEIL' : {$pf = array( 2267.717, 3401.575); break;} + case 'FR_DOUBLE_JESUS' : {$pf = array( 2154.331, 3174.803); break;} + case 'FR_GRAND_AIGLE' : {$pf = array( 2125.984, 3004.724); break;} + case 'FR_PETIT_AIGLE' : {$pf = array( 1984.252, 2664.567); break;} + case 'FR_DOUBLE_RAISIN' : {$pf = array( 1842.520, 2834.646); break;} + case 'FR_JOURNAL' : {$pf = array( 1842.520, 2664.567); break;} + case 'FR_COLOMBIER_AFFICHE': {$pf = array( 1785.827, 2551.181); break;} + case 'FR_DOUBLE_CAVALIER' : {$pf = array( 1757.480, 2607.874); break;} + case 'FR_CLOCHE' : {$pf = array( 1700.787, 2267.717); break;} + case 'FR_SOLEIL' : {$pf = array( 1700.787, 2267.717); break;} + case 'FR_DOUBLE_CARRE' : {$pf = array( 1587.402, 2551.181); break;} + case 'FR_DOUBLE_COQUILLE' : {$pf = array( 1587.402, 2494.488); break;} + case 'FR_JESUS' : {$pf = array( 1587.402, 2154.331); break;} + case 'FR_RAISIN' : {$pf = array( 1417.323, 1842.520); break;} + case 'FR_CAVALIER' : {$pf = array( 1303.937, 1757.480); break;} + case 'FR_DOUBLE_COURONNE' : {$pf = array( 1303.937, 2040.945); break;} + case 'FR_CARRE' : {$pf = array( 1275.591, 1587.402); break;} + case 'FR_COQUILLE' : {$pf = array( 1247.244, 1587.402); break;} + case 'FR_DOUBLE_TELLIERE' : {$pf = array( 1247.244, 1927.559); break;} + case 'FR_DOUBLE_CLOCHE' : {$pf = array( 1133.858, 1700.787); break;} + case 'FR_DOUBLE_POT' : {$pf = array( 1133.858, 1757.480); break;} + case 'FR_ECU' : {$pf = array( 1133.858, 1474.016); break;} + case 'FR_COURONNE' : {$pf = array( 1020.472, 1303.937); break;} + case 'FR_TELLIERE' : {$pf = array( 963.780, 1247.244); break;} + case 'FR_POT' : {$pf = array( 878.740, 1133.858); break;} + // DEFAULT ISO A4 + default: {$pf = array( 595.276, 841.890); break;} + } + return $pf; + } + + /** + * Set page boundaries. + * @param $page (int) page number + * @param $type (string) valid values are:
                    • 'MediaBox' : the boundaries of the physical medium on which the page shall be displayed or printed;
                    • 'CropBox' : the visible region of default user space;
                    • 'BleedBox' : the region to which the contents of the page shall be clipped when output in a production environment;
                    • 'TrimBox' : the intended dimensions of the finished page after trimming;
                    • 'ArtBox' : the page's meaningful content (including potential white space).
                    + * @param $llx (float) lower-left x coordinate in user units. + * @param $lly (float) lower-left y coordinate in user units. + * @param $urx (float) upper-right x coordinate in user units. + * @param $ury (float) upper-right y coordinate in user units. + * @param $points (boolean) If true uses user units as unit of measure, otherwise uses PDF points. + * @param $k (float) Scale factor (number of points in user unit). + * @param $pagedim (array) Array of page dimensions. + * @return pagedim array of page dimensions. + * @since 5.0.010 (2010-05-17) + * @public static + */ + public static function setPageBoxes($page, $type, $llx, $lly, $urx, $ury, $points=false, $k, $pagedim=array()) { + if (!isset($pagedim[$page])) { + // initialize array + $pagedim[$page] = array(); + } + if (!in_array($type, self::$pageboxes)) { + return; + } + if ($points) { + $k = 1; + } + $pagedim[$page][$type]['llx'] = ($llx * $k); + $pagedim[$page][$type]['lly'] = ($lly * $k); + $pagedim[$page][$type]['urx'] = ($urx * $k); + $pagedim[$page][$type]['ury'] = ($ury * $k); + return $pagedim; + } + + /** + * Swap X and Y coordinates of page boxes (change page boxes orientation). + * @param $page (int) page number + * @param $pagedim (array) Array of page dimensions. + * @return pagedim array of page dimensions. + * @since 5.0.010 (2010-05-17) + * @public static + */ + public static function swapPageBoxCoordinates($page, $pagedim) { + foreach (self::$pageboxes as $type) { + // swap X and Y coordinates + if (isset($pagedim[$page][$type])) { + $tmp = $pagedim[$page][$type]['llx']; + $pagedim[$page][$type]['llx'] = $pagedim[$page][$type]['lly']; + $pagedim[$page][$type]['lly'] = $tmp; + $tmp = $pagedim[$page][$type]['urx']; + $pagedim[$page][$type]['urx'] = $pagedim[$page][$type]['ury']; + $pagedim[$page][$type]['ury'] = $tmp; + } + } + return $pagedim; + } + + /** + * Get the canonical page layout mode. + * @param $layout (string) The page layout. Possible values are:
                    • SinglePage Display one page at a time
                    • OneColumn Display the pages in one column
                    • TwoColumnLeft Display the pages in two columns, with odd-numbered pages on the left
                    • TwoColumnRight Display the pages in two columns, with odd-numbered pages on the right
                    • TwoPageLeft (PDF 1.5) Display the pages two at a time, with odd-numbered pages on the left
                    • TwoPageRight (PDF 1.5) Display the pages two at a time, with odd-numbered pages on the right
                    + * @return (string) Canonical page layout name. + * @public static + */ + public static function getPageLayoutMode($layout='SinglePage') { + switch ($layout) { + case 'default': + case 'single': + case 'SinglePage': { + $layout_mode = 'SinglePage'; + break; + } + case 'continuous': + case 'OneColumn': { + $layout_mode = 'OneColumn'; + break; + } + case 'two': + case 'TwoColumnLeft': { + $layout_mode = 'TwoColumnLeft'; + break; + } + case 'TwoColumnRight': { + $layout_mode = 'TwoColumnRight'; + break; + } + case 'TwoPageLeft': { + $layout_mode = 'TwoPageLeft'; + break; + } + case 'TwoPageRight': { + $layout_mode = 'TwoPageRight'; + break; + } + default: { + $layout_mode = 'SinglePage'; + } + } + return $layout_mode; + } + + /** + * Get the canonical page layout mode. + * @param $mode (string) A name object specifying how the document should be displayed when opened:
                    • UseNone Neither document outline nor thumbnail images visible
                    • UseOutlines Document outline visible
                    • UseThumbs Thumbnail images visible
                    • FullScreen Full-screen mode, with no menu bar, window controls, or any other window visible
                    • UseOC (PDF 1.5) Optional content group panel visible
                    • UseAttachments (PDF 1.6) Attachments panel visible
                    + * @return (string) Canonical page mode name. + * @public static + */ + public static function getPageMode($mode='UseNone') { + switch ($mode) { + case 'UseNone': { + $page_mode = 'UseNone'; + break; + } + case 'UseOutlines': { + $page_mode = 'UseOutlines'; + break; + } + case 'UseThumbs': { + $page_mode = 'UseThumbs'; + break; + } + case 'FullScreen': { + $page_mode = 'FullScreen'; + break; + } + case 'UseOC': { + $page_mode = 'UseOC'; + break; + } + case '': { + $page_mode = 'UseAttachments'; + break; + } + default: { + $page_mode = 'UseNone'; + } + } + return $page_mode; + } + + /** + * Check if the URL exist. + * @param $url (string) URL to check. + * @return Boolean true if the URl exist, false otherwise. + * @since 5.9.204 (2013-01-28) + * @public static + */ + public static function isValidURL($url) { + $headers = @get_headers($url); + return (strpos($headers[0], '200') !== false); + } + + /** + * Removes SHY characters from text. + * Unicode Data:
                      + *
                    • Name : SOFT HYPHEN, commonly abbreviated as SHY
                    • + *
                    • HTML Entity (decimal): "&#173;"
                    • + *
                    • HTML Entity (hex): "&#xad;"
                    • + *
                    • HTML Entity (named): "&shy;"
                    • + *
                    • How to type in Microsoft Windows: [Alt +00AD] or [Alt 0173]
                    • + *
                    • UTF-8 (hex): 0xC2 0xAD (c2ad)
                    • + *
                    • UTF-8 character: chr(194).chr(173)
                    • + *
                    + * @param $txt (string) input string + * @param $unicode (boolean) True if we are in unicode mode, false otherwise. + * @return string without SHY characters. + * @since (4.5.019) 2009-02-28 + * @public static + */ + public static function removeSHY($txt='', $unicode=true) { + $txt = preg_replace('/([\\xc2]{1}[\\xad]{1})/', '', $txt); + if (!$unicode) { + $txt = preg_replace('/([\\xad]{1})/', '', $txt); + } + return $txt; + } + + + /** + * Get the border mode accounting for multicell position (opens bottom side of multicell crossing pages) + * @param $brd (mixed) Indicates if borders must be drawn around the cell block. The value can be a number:
                    • 0: no border (default)
                    • 1: frame
                    or a string containing some or all of the following characters (in any order):
                    • L: left
                    • T: top
                    • R: right
                    • B: bottom
                    or an array of line styles for each border group: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0))) + * @param $position (string) multicell position: 'start', 'middle', 'end' + * @param $opencell (boolean) True when the cell is left open at the page bottom, false otherwise. + * @return border mode array + * @since 4.4.002 (2008-12-09) + * @public static + */ + public static function getBorderMode($brd, $position='start', $opencell=true) { + if ((!$opencell) OR empty($brd)) { + return $brd; + } + if ($brd == 1) { + $brd = 'LTRB'; + } + if (is_string($brd)) { + // convert string to array + $slen = strlen($brd); + $newbrd = array(); + for ($i = 0; $i < $slen; ++$i) { + $newbrd[$brd[$i]] = array('cap' => 'square', 'join' => 'miter'); + } + $brd = $newbrd; + } + foreach ($brd as $border => $style) { + switch ($position) { + case 'start': { + if (strpos($border, 'B') !== false) { + // remove bottom line + $newkey = str_replace('B', '', $border); + if (strlen($newkey) > 0) { + $brd[$newkey] = $style; + } + unset($brd[$border]); + } + break; + } + case 'middle': { + if (strpos($border, 'B') !== false) { + // remove bottom line + $newkey = str_replace('B', '', $border); + if (strlen($newkey) > 0) { + $brd[$newkey] = $style; + } + unset($brd[$border]); + $border = $newkey; + } + if (strpos($border, 'T') !== false) { + // remove bottom line + $newkey = str_replace('T', '', $border); + if (strlen($newkey) > 0) { + $brd[$newkey] = $style; + } + unset($brd[$border]); + } + break; + } + case 'end': { + if (strpos($border, 'T') !== false) { + // remove bottom line + $newkey = str_replace('T', '', $border); + if (strlen($newkey) > 0) { + $brd[$newkey] = $style; + } + unset($brd[$border]); + } + break; + } + } + } + return $brd; + } + + /** + * Determine whether a string is empty. + * @param $str (string) string to be checked + * @return boolean true if string is empty + * @since 4.5.044 (2009-04-16) + * @public static + */ + public static function empty_string($str) { + return (is_null($str) OR (is_string($str) AND (strlen($str) == 0))); + } + + /** + * Returns a temporary filename for caching object on filesystem. + * @param $name (string) Prefix to add to the file name. + * @return string filename. + * @since 4.5.000 (2008-12-31) + * @public static + */ + public static function getObjFilename($name) { + return tempnam(K_PATH_CACHE, $name.'_'); + } + + /** + * Add "\" before "\", "(" and ")" + * @param $s (string) string to escape. + * @return string escaped string. + * @public static + */ + public static function _escape($s) { + // the chr(13) substitution fixes the Bugs item #1421290. + return strtr($s, array(')' => '\\)', '(' => '\\(', '\\' => '\\\\', chr(13) => '\r')); + } + + /** + * Escape some special characters (< > &) for XML output. + * @param $str (string) Input string to convert. + * @return converted string + * @since 5.9.121 (2011-09-28) + * @public static + */ + public static function _escapeXML($str) { + $replaceTable = array("\0" => '', '&' => '&', '<' => '<', '>' => '>'); + $str = strtr($str, $replaceTable); + return $str; + } + + /** + * Creates a copy of a class object + * @param $object (object) class object to be cloned + * @return cloned object + * @since 4.5.029 (2009-03-19) + * @public static + */ + public static function objclone($object) { + if (($object instanceof Imagick) AND (version_compare(phpversion('imagick'), '3.0.1') !== 1)) { + // on the versions after 3.0.1 the clone() method was deprecated in favour of clone keyword + return @$object->clone(); + } + return @clone($object); + } + + /** + * Ouput input data and compress it if possible. + * @param $data (string) Data to output. + * @param $length (int) Data length in bytes. + * @since 5.9.086 + * @public static + */ + public static function sendOutputData($data, $length) { + if (!isset($_SERVER['HTTP_ACCEPT_ENCODING']) OR empty($_SERVER['HTTP_ACCEPT_ENCODING'])) { + // the content length may vary if the server is using compression + header('Content-Length: '.$length); + } + echo $data; + } + + /** + * Replace page number aliases with number. + * @param $page (string) Page content. + * @param $replace (array) Array of replacements (array keys are replacement strings, values are alias arrays). + * @param $diff (int) If passed, this will be set to the total char number difference between alias and replacements. + * @return replaced page content and updated $diff parameter as array. + * @public static + */ + public static function replacePageNumAliases($page, $replace, $diff=0) { + foreach ($replace as $rep) { + foreach ($rep[3] as $a) { + if (strpos($page, $a) !== false) { + $page = str_replace($a, $rep[0], $page); + $diff += ($rep[2] - $rep[1]); + } + } + } + return array($page, $diff); + } + + /** + * Returns timestamp in seconds from formatted date-time. + * @param $date (string) Formatted date-time. + * @return int seconds. + * @since 5.9.152 (2012-03-23) + * @public static + */ + public static function getTimestamp($date) { + if (($date[0] == 'D') AND ($date[1] == ':')) { + // remove date prefix if present + $date = substr($date, 2); + } + return strtotime($date); + } + + /** + * Returns a formatted date-time. + * @param $time (int) Time in seconds. + * @return string escaped date string. + * @since 5.9.152 (2012-03-23) + * @public static + */ + public static function getFormattedDate($time) { + return substr_replace(date('YmdHisO', intval($time)), '\'', (0 - 2), 0).'\''; + } + + /** + * Get ULONG from string (Big Endian 32-bit unsigned integer). + * @param $str (string) string from where to extract value + * @param $offset (int) point from where to read the data + * @return int 32 bit value + * @author Nicola Asuni + * @since 5.2.000 (2010-06-02) + * @public static + */ + public static function _getULONG($str, $offset) { + $v = unpack('Ni', substr($str, $offset, 4)); + return $v['i']; + } + + /** + * Get USHORT from string (Big Endian 16-bit unsigned integer). + * @param $str (string) string from where to extract value + * @param $offset (int) point from where to read the data + * @return int 16 bit value + * @author Nicola Asuni + * @since 5.2.000 (2010-06-02) + * @public static + */ + public static function _getUSHORT($str, $offset) { + $v = unpack('ni', substr($str, $offset, 2)); + return $v['i']; + } + + /** + * Get SHORT from string (Big Endian 16-bit signed integer). + * @param $str (string) String from where to extract value. + * @param $offset (int) Point from where to read the data. + * @return int 16 bit value + * @author Nicola Asuni + * @since 5.2.000 (2010-06-02) + * @public static + */ + public static function _getSHORT($str, $offset) { + $v = unpack('si', substr($str, $offset, 2)); + return $v['i']; + } + + /** + * Get FWORD from string (Big Endian 16-bit signed integer). + * @param $str (string) String from where to extract value. + * @param $offset (int) Point from where to read the data. + * @return int 16 bit value + * @author Nicola Asuni + * @since 5.9.123 (2011-09-30) + * @public static + */ + public static function _getFWORD($str, $offset) { + $v = self::_getUSHORT($str, $offset); + if ($v > 0x7fff) { + $v -= 0x10000; + } + return $v; + } + + /** + * Get UFWORD from string (Big Endian 16-bit unsigned integer). + * @param $str (string) string from where to extract value + * @param $offset (int) point from where to read the data + * @return int 16 bit value + * @author Nicola Asuni + * @since 5.9.123 (2011-09-30) + * @public static + */ + public static function _getUFWORD($str, $offset) { + $v = self::_getUSHORT($str, $offset); + return $v; + } + + /** + * Get FIXED from string (32-bit signed fixed-point number (16.16). + * @param $str (string) string from where to extract value + * @param $offset (int) point from where to read the data + * @return int 16 bit value + * @author Nicola Asuni + * @since 5.9.123 (2011-09-30) + * @public static + */ + public static function _getFIXED($str, $offset) { + // mantissa + $m = self::_getFWORD($str, $offset); + // fraction + $f = self::_getUSHORT($str, ($offset + 2)); + $v = floatval(''.$m.'.'.$f.''); + return $v; + } + + /** + * Get BYTE from string (8-bit unsigned integer). + * @param $str (string) String from where to extract value. + * @param $offset (int) Point from where to read the data. + * @return int 8 bit value + * @author Nicola Asuni + * @since 5.2.000 (2010-06-02) + * @public static + */ + public static function _getBYTE($str, $offset) { + $v = unpack('Ci', substr($str, $offset, 1)); + return $v['i']; + } + /** + * Binary-safe and URL-safe file read. + * Reads up to length bytes from the file pointer referenced by handle. Reading stops as soon as one of the following conditions is met: length bytes have been read; EOF (end of file) is reached. + * @param $handle (resource) + * @param $length (int) + * @return Returns the read string or FALSE in case of error. + * @author Nicola Asuni + * @since 4.5.027 (2009-03-16) + * @public static + */ + public static function rfread($handle, $length) { + $data = fread($handle, $length); + if ($data === false) { + return false; + } + $rest = ($length - strlen($data)); + if ($rest > 0) { + $data .= self::rfread($handle, $rest); + } + return $data; + } + + /** + * Read a 4-byte (32 bit) integer from file. + * @param $f (string) file name. + * @return 4-byte integer + * @public static + */ + public static function _freadint($f) { + $a = unpack('Ni', fread($f, 4)); + return $a['i']; + } + + /** + * Returns a string containing random data to be used as a seed for encryption methods. + * @param $seed (string) starting seed value + * @return string containing random data + * @author Nicola Asuni + * @since 5.9.006 (2010-10-19) + * @public static + */ + public static function getRandomSeed($seed='') { + $seed .= microtime(); + if (function_exists('openssl_random_pseudo_bytes') AND (strtoupper(substr(PHP_OS, 0, 3)) !== 'WIN')) { + // this is not used on windows systems because it is very slow for a know bug + $seed .= openssl_random_pseudo_bytes(512); + } else { + for ($i = 0; $i < 23; ++$i) { + $seed .= uniqid('', true); + } + } + $seed .= uniqid('', true); + $seed .= rand(); + $seed .= getmypid(); + $seed .= __FILE__; + if (isset($_SERVER['REMOTE_ADDR'])) { + $seed .= $_SERVER['REMOTE_ADDR']; + } + if (isset($_SERVER['HTTP_USER_AGENT'])) { + $seed .= $_SERVER['HTTP_USER_AGENT']; + } + if (isset($_SERVER['HTTP_ACCEPT'])) { + $seed .= $_SERVER['HTTP_ACCEPT']; + } + if (isset($_SERVER['HTTP_ACCEPT_ENCODING'])) { + $seed .= $_SERVER['HTTP_ACCEPT_ENCODING']; + } + if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) { + $seed .= $_SERVER['HTTP_ACCEPT_LANGUAGE']; + } + if (isset($_SERVER['HTTP_ACCEPT_CHARSET'])) { + $seed .= $_SERVER['HTTP_ACCEPT_CHARSET']; + } + $seed .= rand(); + $seed .= uniqid('', true); + $seed .= microtime(); + return $seed; + } + + /** + * Encrypts a string using MD5 and returns it's value as a binary string. + * @param $str (string) input string + * @return String MD5 encrypted binary string + * @since 2.0.000 (2008-01-02) + * @public static + */ + public static function _md5_16($str) { + return pack('H*', md5($str)); + } + + /** + * Returns the input text exrypted using AES algorithm and the specified key. + * This method requires mcrypt. + * @param $key (string) encryption key + * @param $text (String) input text to be encrypted + * @return String encrypted text + * @author Nicola Asuni + * @since 5.0.005 (2010-05-11) + * @public static + */ + public static function _AES($key, $text) { + // padding (RFC 2898, PKCS #5: Password-Based Cryptography Specification Version 2.0) + $padding = 16 - (strlen($text) % 16); + $text .= str_repeat(chr($padding), $padding); + $iv = mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC), MCRYPT_RAND); + $text = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, $text, MCRYPT_MODE_CBC, $iv); + $text = $iv.$text; + return $text; + } + + /** + * Returns the input text encrypted using RC4 algorithm and the specified key. + * RC4 is the standard encryption algorithm used in PDF format + * @param $key (string) Encryption key. + * @param $text (String) Input text to be encrypted. + * @param $last_enc_key (String) Reference to last RC4 key encrypted. + * @param $last_enc_key_c (String) Reference to last RC4 computed key. + * @return String encrypted text + * @since 2.0.000 (2008-01-02) + * @author Klemen Vodopivec, Nicola Asuni + * @public static + */ + public static function _RC4($key, $text, &$last_enc_key, &$last_enc_key_c) { + if (function_exists('mcrypt_encrypt') AND ($out = @mcrypt_encrypt(MCRYPT_ARCFOUR, $key, $text, MCRYPT_MODE_STREAM, ''))) { + // try to use mcrypt function if exist + return $out; + } + if ($last_enc_key != $key) { + $k = str_repeat($key, ((256 / strlen($key)) + 1)); + $rc4 = range(0, 255); + $j = 0; + for ($i = 0; $i < 256; ++$i) { + $t = $rc4[$i]; + $j = ($j + $t + ord($k[$i])) % 256; + $rc4[$i] = $rc4[$j]; + $rc4[$j] = $t; + } + $last_enc_key = $key; + $last_enc_key_c = $rc4; + } else { + $rc4 = $last_enc_key_c; + } + $len = strlen($text); + $a = 0; + $b = 0; + $out = ''; + for ($i = 0; $i < $len; ++$i) { + $a = ($a + 1) % 256; + $t = $rc4[$a]; + $b = ($b + $t) % 256; + $rc4[$a] = $rc4[$b]; + $rc4[$b] = $t; + $k = $rc4[($rc4[$a] + $rc4[$b]) % 256]; + $out .= chr(ord($text[$i]) ^ $k); + } + return $out; + } + + /** + * Return the premission code used on encryption (P value). + * @param $permissions (Array) the set of permissions (specify the ones you want to block). + * @param $mode (int) encryption strength: 0 = RC4 40 bit; 1 = RC4 128 bit; 2 = AES 128 bit; 3 = AES 256 bit. + * @since 5.0.005 (2010-05-12) + * @author Nicola Asuni + * @public static + */ + public static function getUserPermissionCode($permissions, $mode=0) { + $options = array( + 'owner' => 2, // bit 2 -- inverted logic: cleared by default + 'print' => 4, // bit 3 + 'modify' => 8, // bit 4 + 'copy' => 16, // bit 5 + 'annot-forms' => 32, // bit 6 + 'fill-forms' => 256, // bit 9 + 'extract' => 512, // bit 10 + 'assemble' => 1024,// bit 11 + 'print-high' => 2048 // bit 12 + ); + $protection = 2147422012; // 32 bit: (01111111 11111111 00001111 00111100) + foreach ($permissions as $permission) { + if (isset($options[$permission])) { + if (($mode > 0) OR ($options[$permission] <= 32)) { + // set only valid permissions + if ($options[$permission] == 2) { + // the logic for bit 2 is inverted (cleared by default) + $protection += $options[$permission]; + } else { + $protection -= $options[$permission]; + } + } + } + } + return $protection; + } + + /** + * Convert hexadecimal string to string + * @param $bs (string) byte-string to convert + * @return String + * @since 5.0.005 (2010-05-12) + * @author Nicola Asuni + * @public static + */ + public static function convertHexStringToString($bs) { + $string = ''; // string to be returned + $bslength = strlen($bs); + if (($bslength % 2) != 0) { + // padding + $bs .= '0'; + ++$bslength; + } + for ($i = 0; $i < $bslength; $i += 2) { + $string .= chr(hexdec($bs[$i].$bs[($i + 1)])); + } + return $string; + } + + /** + * Convert string to hexadecimal string (byte string) + * @param $s (string) string to convert + * @return byte string + * @since 5.0.010 (2010-05-17) + * @author Nicola Asuni + * @public static + */ + public static function convertStringToHexString($s) { + $bs = ''; + $chars = preg_split('//', $s, -1, PREG_SPLIT_NO_EMPTY); + foreach ($chars as $c) { + $bs .= sprintf('%02s', dechex(ord($c))); + } + return $bs; + } + + /** + * Convert encryption P value to a string of bytes, low-order byte first. + * @param $protection (string) 32bit encryption permission value (P value) + * @return String + * @since 5.0.005 (2010-05-12) + * @author Nicola Asuni + * @public static + */ + public static function getEncPermissionsString($protection) { + $binprot = sprintf('%032b', $protection); + $str = chr(bindec(substr($binprot, 24, 8))); + $str .= chr(bindec(substr($binprot, 16, 8))); + $str .= chr(bindec(substr($binprot, 8, 8))); + $str .= chr(bindec(substr($binprot, 0, 8))); + return $str; + } + + /** + * Encode a name object. + * @param $name (string) Name object to encode. + * @return (string) Encoded name object. + * @author Nicola Asuni + * @since 5.9.097 (2011-06-23) + * @public static + */ + public static function encodeNameObject($name) { + $escname = ''; + $length = strlen($name); + for ($i = 0; $i < $length; ++$i) { + $chr = $name[$i]; + if (preg_match('/[0-9a-zA-Z]/', $chr) == 1) { + $escname .= $chr; + } else { + $escname .= sprintf('#%02X', ord($chr)); + } + } + return $escname; + } + + /** + * Convert JavaScript form fields properties array to Annotation Properties array. + * @param $prop (array) javascript field properties. Possible values are described on official Javascript for Acrobat API reference. + * @param $spot_colors (array) Reference to spot colors array. + * @param $rtl (boolean) True if in Right-To-Left text direction mode, false otherwise. + * @return array of annotation properties + * @author Nicola Asuni + * @since 4.8.000 (2009-09-06) + * @public static + */ + public static function getAnnotOptFromJSProp($prop, &$spot_colors, $rtl=false) { + if (isset($prop['aopt']) AND is_array($prop['aopt'])) { + // the annotation options area lready defined + return $prop['aopt']; + } + $opt = array(); // value to be returned + // alignment: Controls how the text is laid out within the text field. + if (isset($prop['alignment'])) { + switch ($prop['alignment']) { + case 'left': { + $opt['q'] = 0; + break; + } + case 'center': { + $opt['q'] = 1; + break; + } + case 'right': { + $opt['q'] = 2; + break; + } + default: { + $opt['q'] = ($rtl)?2:0; + break; + } + } + } + // lineWidth: Specifies the thickness of the border when stroking the perimeter of a field's rectangle. + if (isset($prop['lineWidth'])) { + $linewidth = intval($prop['lineWidth']); + } else { + $linewidth = 1; + } + // borderStyle: The border style for a field. + if (isset($prop['borderStyle'])) { + switch ($prop['borderStyle']) { + case 'border.d': + case 'dashed': { + $opt['border'] = array(0, 0, $linewidth, array(3, 2)); + $opt['bs'] = array('w'=>$linewidth, 's'=>'D', 'd'=>array(3, 2)); + break; + } + case 'border.b': + case 'beveled': { + $opt['border'] = array(0, 0, $linewidth); + $opt['bs'] = array('w'=>$linewidth, 's'=>'B'); + break; + } + case 'border.i': + case 'inset': { + $opt['border'] = array(0, 0, $linewidth); + $opt['bs'] = array('w'=>$linewidth, 's'=>'I'); + break; + } + case 'border.u': + case 'underline': { + $opt['border'] = array(0, 0, $linewidth); + $opt['bs'] = array('w'=>$linewidth, 's'=>'U'); + break; + } + case 'border.s': + case 'solid': { + $opt['border'] = array(0, 0, $linewidth); + $opt['bs'] = array('w'=>$linewidth, 's'=>'S'); + break; + } + default: { + break; + } + } + } + if (isset($prop['border']) AND is_array($prop['border'])) { + $opt['border'] = $prop['border']; + } + if (!isset($opt['mk'])) { + $opt['mk'] = array(); + } + if (!isset($opt['mk']['if'])) { + $opt['mk']['if'] = array(); + } + $opt['mk']['if']['a'] = array(0.5, 0.5); + // buttonAlignX: Controls how space is distributed from the left of the button face with respect to the icon. + if (isset($prop['buttonAlignX'])) { + $opt['mk']['if']['a'][0] = $prop['buttonAlignX']; + } + // buttonAlignY: Controls how unused space is distributed from the bottom of the button face with respect to the icon. + if (isset($prop['buttonAlignY'])) { + $opt['mk']['if']['a'][1] = $prop['buttonAlignY']; + } + // buttonFitBounds: If true, the extent to which the icon may be scaled is set to the bounds of the button field. + if (isset($prop['buttonFitBounds']) AND ($prop['buttonFitBounds'] == 'true')) { + $opt['mk']['if']['fb'] = true; + } + // buttonScaleHow: Controls how the icon is scaled (if necessary) to fit inside the button face. + if (isset($prop['buttonScaleHow'])) { + switch ($prop['buttonScaleHow']) { + case 'scaleHow.proportional': { + $opt['mk']['if']['s'] = 'P'; + break; + } + case 'scaleHow.anamorphic': { + $opt['mk']['if']['s'] = 'A'; + break; + } + } + } + // buttonScaleWhen: Controls when an icon is scaled to fit inside the button face. + if (isset($prop['buttonScaleWhen'])) { + switch ($prop['buttonScaleWhen']) { + case 'scaleWhen.always': { + $opt['mk']['if']['sw'] = 'A'; + break; + } + case 'scaleWhen.never': { + $opt['mk']['if']['sw'] = 'N'; + break; + } + case 'scaleWhen.tooBig': { + $opt['mk']['if']['sw'] = 'B'; + break; + } + case 'scaleWhen.tooSmall': { + $opt['mk']['if']['sw'] = 'S'; + break; + } + } + } + // buttonPosition: Controls how the text and the icon of the button are positioned with respect to each other within the button face. + if (isset($prop['buttonPosition'])) { + switch ($prop['buttonPosition']) { + case 0: + case 'position.textOnly': { + $opt['mk']['tp'] = 0; + break; + } + case 1: + case 'position.iconOnly': { + $opt['mk']['tp'] = 1; + break; + } + case 2: + case 'position.iconTextV': { + $opt['mk']['tp'] = 2; + break; + } + case 3: + case 'position.textIconV': { + $opt['mk']['tp'] = 3; + break; + } + case 4: + case 'position.iconTextH': { + $opt['mk']['tp'] = 4; + break; + } + case 5: + case 'position.textIconH': { + $opt['mk']['tp'] = 5; + break; + } + case 6: + case 'position.overlay': { + $opt['mk']['tp'] = 6; + break; + } + } + } + // fillColor: Specifies the background color for a field. + if (isset($prop['fillColor'])) { + if (is_array($prop['fillColor'])) { + $opt['mk']['bg'] = $prop['fillColor']; + } else { + $opt['mk']['bg'] = TCPDF_COLORS::convertHTMLColorToDec($prop['fillColor'], $spot_colors); + } + } + // strokeColor: Specifies the stroke color for a field that is used to stroke the rectangle of the field with a line as large as the line width. + if (isset($prop['strokeColor'])) { + if (is_array($prop['strokeColor'])) { + $opt['mk']['bc'] = $prop['strokeColor']; + } else { + $opt['mk']['bc'] = TCPDF_COLORS::convertHTMLColorToDec($prop['strokeColor'], $spot_colors); + } + } + // rotation: The rotation of a widget in counterclockwise increments. + if (isset($prop['rotation'])) { + $opt['mk']['r'] = $prop['rotation']; + } + // charLimit: Limits the number of characters that a user can type into a text field. + if (isset($prop['charLimit'])) { + $opt['maxlen'] = intval($prop['charLimit']); + } + if (!isset($ff)) { + $ff = 0; // default value + } + // readonly: The read-only characteristic of a field. If a field is read-only, the user can see the field but cannot change it. + if (isset($prop['readonly']) AND ($prop['readonly'] == 'true')) { + $ff += 1 << 0; + } + // required: Specifies whether a field requires a value. + if (isset($prop['required']) AND ($prop['required'] == 'true')) { + $ff += 1 << 1; + } + // multiline: Controls how text is wrapped within the field. + if (isset($prop['multiline']) AND ($prop['multiline'] == 'true')) { + $ff += 1 << 12; + } + // password: Specifies whether the field should display asterisks when data is entered in the field. + if (isset($prop['password']) AND ($prop['password'] == 'true')) { + $ff += 1 << 13; + } + // NoToggleToOff: If set, exactly one radio button shall be selected at all times; selecting the currently selected button has no effect. + if (isset($prop['NoToggleToOff']) AND ($prop['NoToggleToOff'] == 'true')) { + $ff += 1 << 14; + } + // Radio: If set, the field is a set of radio buttons. + if (isset($prop['Radio']) AND ($prop['Radio'] == 'true')) { + $ff += 1 << 15; + } + // Pushbutton: If set, the field is a pushbutton that does not retain a permanent value. + if (isset($prop['Pushbutton']) AND ($prop['Pushbutton'] == 'true')) { + $ff += 1 << 16; + } + // Combo: If set, the field is a combo box; if clear, the field is a list box. + if (isset($prop['Combo']) AND ($prop['Combo'] == 'true')) { + $ff += 1 << 17; + } + // editable: Controls whether a combo box is editable. + if (isset($prop['editable']) AND ($prop['editable'] == 'true')) { + $ff += 1 << 18; + } + // Sort: If set, the field's option items shall be sorted alphabetically. + if (isset($prop['Sort']) AND ($prop['Sort'] == 'true')) { + $ff += 1 << 19; + } + // fileSelect: If true, sets the file-select flag in the Options tab of the text field (Field is Used for File Selection). + if (isset($prop['fileSelect']) AND ($prop['fileSelect'] == 'true')) { + $ff += 1 << 20; + } + // multipleSelection: If true, indicates that a list box allows a multiple selection of items. + if (isset($prop['multipleSelection']) AND ($prop['multipleSelection'] == 'true')) { + $ff += 1 << 21; + } + // doNotSpellCheck: If true, spell checking is not performed on this editable text field. + if (isset($prop['doNotSpellCheck']) AND ($prop['doNotSpellCheck'] == 'true')) { + $ff += 1 << 22; + } + // doNotScroll: If true, the text field does not scroll and the user, therefore, is limited by the rectangular region designed for the field. + if (isset($prop['doNotScroll']) AND ($prop['doNotScroll'] == 'true')) { + $ff += 1 << 23; + } + // comb: If set to true, the field background is drawn as series of boxes (one for each character in the value of the field) and each character of the content is drawn within those boxes. The number of boxes drawn is determined from the charLimit property. It applies only to text fields. The setter will also raise if any of the following field properties are also set multiline, password, and fileSelect. A side-effect of setting this property is that the doNotScroll property is also set. + if (isset($prop['comb']) AND ($prop['comb'] == 'true')) { + $ff += 1 << 24; + } + // radiosInUnison: If false, even if a group of radio buttons have the same name and export value, they behave in a mutually exclusive fashion, like HTML radio buttons. + if (isset($prop['radiosInUnison']) AND ($prop['radiosInUnison'] == 'true')) { + $ff += 1 << 25; + } + // richText: If true, the field allows rich text formatting. + if (isset($prop['richText']) AND ($prop['richText'] == 'true')) { + $ff += 1 << 25; + } + // commitOnSelChange: Controls whether a field value is committed after a selection change. + if (isset($prop['commitOnSelChange']) AND ($prop['commitOnSelChange'] == 'true')) { + $ff += 1 << 26; + } + $opt['ff'] = $ff; + // defaultValue: The default value of a field - that is, the value that the field is set to when the form is reset. + if (isset($prop['defaultValue'])) { + $opt['dv'] = $prop['defaultValue']; + } + $f = 4; // default value for annotation flags + // readonly: The read-only characteristic of a field. If a field is read-only, the user can see the field but cannot change it. + if (isset($prop['readonly']) AND ($prop['readonly'] == 'true')) { + $f += 1 << 6; + } + // display: Controls whether the field is hidden or visible on screen and in print. + if (isset($prop['display'])) { + if ($prop['display'] == 'display.visible') { + // + } elseif ($prop['display'] == 'display.hidden') { + $f += 1 << 1; + } elseif ($prop['display'] == 'display.noPrint') { + $f -= 1 << 2; + } elseif ($prop['display'] == 'display.noView') { + $f += 1 << 5; + } + } + $opt['f'] = $f; + // currentValueIndices: Reads and writes single or multiple values of a list box or combo box. + if (isset($prop['currentValueIndices']) AND is_array($prop['currentValueIndices'])) { + $opt['i'] = $prop['currentValueIndices']; + } + // value: The value of the field data that the user has entered. + if (isset($prop['value'])) { + if (is_array($prop['value'])) { + $opt['opt'] = array(); + foreach ($prop['value'] AS $key => $optval) { + // exportValues: An array of strings representing the export values for the field. + if (isset($prop['exportValues'][$key])) { + $opt['opt'][$key] = array($prop['exportValues'][$key], $prop['value'][$key]); + } else { + $opt['opt'][$key] = $prop['value'][$key]; + } + } + } else { + $opt['v'] = $prop['value']; + } + } + // richValue: This property specifies the text contents and formatting of a rich text field. + if (isset($prop['richValue'])) { + $opt['rv'] = $prop['richValue']; + } + // submitName: If nonempty, used during form submission instead of name. Only applicable if submitting in HTML format (that is, URL-encoded). + if (isset($prop['submitName'])) { + $opt['tm'] = $prop['submitName']; + } + // name: Fully qualified field name. + if (isset($prop['name'])) { + $opt['t'] = $prop['name']; + } + // userName: The user name (short description string) of the field. + if (isset($prop['userName'])) { + $opt['tu'] = $prop['userName']; + } + // highlight: Defines how a button reacts when a user clicks it. + if (isset($prop['highlight'])) { + switch ($prop['highlight']) { + case 'none': + case 'highlight.n': { + $opt['h'] = 'N'; + break; + } + case 'invert': + case 'highlight.i': { + $opt['h'] = 'i'; + break; + } + case 'push': + case 'highlight.p': { + $opt['h'] = 'P'; + break; + } + case 'outline': + case 'highlight.o': { + $opt['h'] = 'O'; + break; + } + } + } + // Unsupported options: + // - calcOrderIndex: Changes the calculation order of fields in the document. + // - delay: Delays the redrawing of a field's appearance. + // - defaultStyle: This property defines the default style attributes for the form field. + // - style: Allows the user to set the glyph style of a check box or radio button. + // - textColor, textFont, textSize + return $opt; + } + + /** + * Format the page numbers. + * This method can be overriden for custom formats. + * @param $num (int) page number + * @since 4.2.005 (2008-11-06) + * @public static + */ + public static function formatPageNumber($num) { + return number_format((float)$num, 0, '', '.'); + } + + /** + * Format the page numbers on the Table Of Content. + * This method can be overriden for custom formats. + * @param $num (int) page number + * @since 4.5.001 (2009-01-04) + * @see addTOC(), addHTMLTOC() + * @public static + */ + public static function formatTOCPageNumber($num) { + return number_format((float)$num, 0, '', '.'); + } + + /** + * Extracts the CSS properties from a CSS string. + * @param $cssdata (string) string containing CSS definitions. + * @return An array where the keys are the CSS selectors and the values are the CSS properties. + * @author Nicola Asuni + * @since 5.1.000 (2010-05-25) + * @public static + */ + public static function extractCSSproperties($cssdata) { + if (empty($cssdata)) { + return array(); + } + // remove comments + $cssdata = preg_replace('/\/\*[^\*]*\*\//', '', $cssdata); + // remove newlines and multiple spaces + $cssdata = preg_replace('/[\s]+/', ' ', $cssdata); + // remove some spaces + $cssdata = preg_replace('/[\s]*([;:\{\}]{1})[\s]*/', '\\1', $cssdata); + // remove empty blocks + $cssdata = preg_replace('/([^\}\{]+)\{\}/', '', $cssdata); + // replace media type parenthesis + $cssdata = preg_replace('/@media[\s]+([^\{]*)\{/i', '@media \\1§', $cssdata); + $cssdata = preg_replace('/\}\}/si', '}§', $cssdata); + // trim string + $cssdata = trim($cssdata); + // find media blocks (all, braille, embossed, handheld, print, projection, screen, speech, tty, tv) + $cssblocks = array(); + $matches = array(); + if (preg_match_all('/@media[\s]+([^\§]*)§([^§]*)§/i', $cssdata, $matches) > 0) { + foreach ($matches[1] as $key => $type) { + $cssblocks[$type] = $matches[2][$key]; + } + // remove media blocks + $cssdata = preg_replace('/@media[\s]+([^\§]*)§([^§]*)§/i', '', $cssdata); + } + // keep 'all' and 'print' media, other media types are discarded + if (isset($cssblocks['all']) AND !empty($cssblocks['all'])) { + $cssdata .= $cssblocks['all']; + } + if (isset($cssblocks['print']) AND !empty($cssblocks['print'])) { + $cssdata .= $cssblocks['print']; + } + // reset css blocks array + $cssblocks = array(); + $matches = array(); + // explode css data string into array + if (substr($cssdata, -1) == '}') { + // remove last parethesis + $cssdata = substr($cssdata, 0, -1); + } + $matches = explode('}', $cssdata); + foreach ($matches as $key => $block) { + // index 0 contains the CSS selector, index 1 contains CSS properties + $cssblocks[$key] = explode('{', $block); + if (!isset($cssblocks[$key][1])) { + // remove empty definitions + unset($cssblocks[$key]); + } + } + // split groups of selectors (comma-separated list of selectors) + foreach ($cssblocks as $key => $block) { + if (strpos($block[0], ',') > 0) { + $selectors = explode(',', $block[0]); + foreach ($selectors as $sel) { + $cssblocks[] = array(0 => trim($sel), 1 => $block[1]); + } + unset($cssblocks[$key]); + } + } + // covert array to selector => properties + $cssdata = array(); + foreach ($cssblocks as $block) { + $selector = $block[0]; + // calculate selector's specificity + $matches = array(); + $a = 0; // the declaration is not from is a 'style' attribute + $b = intval(preg_match_all('/[\#]/', $selector, $matches)); // number of ID attributes + $c = intval(preg_match_all('/[\[\.]/', $selector, $matches)); // number of other attributes + $c += intval(preg_match_all('/[\:]link|visited|hover|active|focus|target|lang|enabled|disabled|checked|indeterminate|root|nth|first|last|only|empty|contains|not/i', $selector, $matches)); // number of pseudo-classes + $d = intval(preg_match_all('/[\>\+\~\s]{1}[a-zA-Z0-9]+/', ' '.$selector, $matches)); // number of element names + $d += intval(preg_match_all('/[\:][\:]/', $selector, $matches)); // number of pseudo-elements + $specificity = $a.$b.$c.$d; + // add specificity to the beginning of the selector + $cssdata[$specificity.' '.$selector] = $block[1]; + } + // sort selectors alphabetically to account for specificity + ksort($cssdata, SORT_STRING); + // return array + return $cssdata; + } + + /** + * Cleanup HTML code (requires HTML Tidy library). + * @param $html (string) htmlcode to fix + * @param $default_css (string) CSS commands to add + * @param $tagvs (array) parameters for setHtmlVSpace method + * @param $tidy_options (array) options for tidy_parse_string function + * @param $tagvspaces (array) Array of vertical spaces for tags. + * @return string XHTML code cleaned up + * @author Nicola Asuni + * @since 5.9.017 (2010-11-16) + * @see setHtmlVSpace() + * @public static + */ + public static function fixHTMLCode($html, $default_css='', $tagvs='', $tidy_options='', &$tagvspaces) { + // configure parameters for HTML Tidy + if ($tidy_options === '') { + $tidy_options = array ( + 'clean' => 1, + 'drop-empty-paras' => 0, + 'drop-proprietary-attributes' => 1, + 'fix-backslash' => 1, + 'hide-comments' => 1, + 'join-styles' => 1, + 'lower-literals' => 1, + 'merge-divs' => 1, + 'merge-spans' => 1, + 'output-xhtml' => 1, + 'word-2000' => 1, + 'wrap' => 0, + 'output-bom' => 0, + //'char-encoding' => 'utf8', + //'input-encoding' => 'utf8', + //'output-encoding' => 'utf8' + ); + } + // clean up the HTML code + $tidy = tidy_parse_string($html, $tidy_options); + // fix the HTML + $tidy->cleanRepair(); + // get the CSS part + $tidy_head = tidy_get_head($tidy); + $css = $tidy_head->value; + $css = preg_replace('/]+)>/ims', ''; + // get the body part + $tidy_body = tidy_get_body($tidy); + $html = $tidy_body->value; + // fix some self-closing tags + $html = str_replace('
                    ', '
                    ', $html); + // remove some empty tag blocks + $html = preg_replace('/]*)><\/div>/', '', $html); + $html = preg_replace('/]*)><\/p>/', '', $html); + if ($tagvs !== '') { + // set vertical space for some XHTML tags + $tagvspaces = $tagvs; + } + // return the cleaned XHTML code + CSS + return $css.$html; + } + + /** + * Returns true if the CSS selector is valid for the selected HTML tag + * @param $dom (array) array of HTML tags and properties + * @param $key (int) key of the current HTML tag + * @param $selector (string) CSS selector string + * @return true if the selector is valid, false otherwise + * @since 5.1.000 (2010-05-25) + * @public static + */ + public static function isValidCSSSelectorForTag($dom, $key, $selector) { + $valid = false; // value to be returned + $tag = $dom[$key]['value']; + $class = array(); + if (isset($dom[$key]['attribute']['class']) AND !empty($dom[$key]['attribute']['class'])) { + $class = explode(' ', strtolower($dom[$key]['attribute']['class'])); + } + $id = ''; + if (isset($dom[$key]['attribute']['id']) AND !empty($dom[$key]['attribute']['id'])) { + $id = strtolower($dom[$key]['attribute']['id']); + } + $selector = preg_replace('/([\>\+\~\s]{1})([\.]{1})([^\>\+\~\s]*)/si', '\\1*.\\3', $selector); + $matches = array(); + if (preg_match_all('/([\>\+\~\s]{1})([a-zA-Z0-9\*]+)([^\>\+\~\s]*)/si', $selector, $matches, PREG_PATTERN_ORDER | PREG_OFFSET_CAPTURE) > 0) { + $parentop = array_pop($matches[1]); + $operator = $parentop[0]; + $offset = $parentop[1]; + $lasttag = array_pop($matches[2]); + $lasttag = strtolower(trim($lasttag[0])); + if (($lasttag == '*') OR ($lasttag == $tag)) { + // the last element on selector is our tag or 'any tag' + $attrib = array_pop($matches[3]); + $attrib = strtolower(trim($attrib[0])); + if (!empty($attrib)) { + // check if matches class, id, attribute, pseudo-class or pseudo-element + switch ($attrib{0}) { + case '.': { // class + if (in_array(substr($attrib, 1), $class)) { + $valid = true; + } + break; + } + case '#': { // ID + if (substr($attrib, 1) == $id) { + $valid = true; + } + break; + } + case '[': { // attribute + $attrmatch = array(); + if (preg_match('/\[([a-zA-Z0-9]*)[\s]*([\~\^\$\*\|\=]*)[\s]*["]?([^"\]]*)["]?\]/i', $attrib, $attrmatch) > 0) { + $att = strtolower($attrmatch[1]); + $val = $attrmatch[3]; + if (isset($dom[$key]['attribute'][$att])) { + switch ($attrmatch[2]) { + case '=': { + if ($dom[$key]['attribute'][$att] == $val) { + $valid = true; + } + break; + } + case '~=': { + if (in_array($val, explode(' ', $dom[$key]['attribute'][$att]))) { + $valid = true; + } + break; + } + case '^=': { + if ($val == substr($dom[$key]['attribute'][$att], 0, strlen($val))) { + $valid = true; + } + break; + } + case '$=': { + if ($val == substr($dom[$key]['attribute'][$att], -strlen($val))) { + $valid = true; + } + break; + } + case '*=': { + if (strpos($dom[$key]['attribute'][$att], $val) !== false) { + $valid = true; + } + break; + } + case '|=': { + if ($dom[$key]['attribute'][$att] == $val) { + $valid = true; + } elseif (preg_match('/'.$val.'[\-]{1}/i', $dom[$key]['attribute'][$att]) > 0) { + $valid = true; + } + break; + } + default: { + $valid = true; + } + } + } + } + break; + } + case ':': { // pseudo-class or pseudo-element + if ($attrib{1} == ':') { // pseudo-element + // pseudo-elements are not supported! + // (::first-line, ::first-letter, ::before, ::after) + } else { // pseudo-class + // pseudo-classes are not supported! + // (:root, :nth-child(n), :nth-last-child(n), :nth-of-type(n), :nth-last-of-type(n), :first-child, :last-child, :first-of-type, :last-of-type, :only-child, :only-of-type, :empty, :link, :visited, :active, :hover, :focus, :target, :lang(fr), :enabled, :disabled, :checked) + } + break; + } + } // end of switch + } else { + $valid = true; + } + if ($valid AND ($offset > 0)) { + $valid = false; + // check remaining selector part + $selector = substr($selector, 0, $offset); + switch ($operator) { + case ' ': { // descendant of an element + while ($dom[$key]['parent'] > 0) { + if (self::isValidCSSSelectorForTag($dom, $dom[$key]['parent'], $selector)) { + $valid = true; + break; + } else { + $key = $dom[$key]['parent']; + } + } + break; + } + case '>': { // child of an element + $valid = self::isValidCSSSelectorForTag($dom, $dom[$key]['parent'], $selector); + break; + } + case '+': { // immediately preceded by an element + for ($i = ($key - 1); $i > $dom[$key]['parent']; --$i) { + if ($dom[$i]['tag'] AND $dom[$i]['opening']) { + $valid = self::isValidCSSSelectorForTag($dom, $i, $selector); + break; + } + } + break; + } + case '~': { // preceded by an element + for ($i = ($key - 1); $i > $dom[$key]['parent']; --$i) { + if ($dom[$i]['tag'] AND $dom[$i]['opening']) { + if (self::isValidCSSSelectorForTag($dom, $i, $selector)) { + break; + } + } + } + break; + } + } + } + } + } + return $valid; + } + + /** + * Returns the styles array that apply for the selected HTML tag. + * @param $dom (array) array of HTML tags and properties + * @param $key (int) key of the current HTML tag + * @param $css (array) array of CSS properties + * @return array containing CSS properties + * @since 5.1.000 (2010-05-25) + * @public static + */ + public static function getCSSdataArray($dom, $key, $css) { + $cssarray = array(); // style to be returned + // get parent CSS selectors + $selectors = array(); + if (isset($dom[($dom[$key]['parent'])]['csssel'])) { + $selectors = $dom[($dom[$key]['parent'])]['csssel']; + } + // get all styles that apply + foreach($css as $selector => $style) { + $pos = strpos($selector, ' '); + // get specificity + $specificity = substr($selector, 0, $pos); + // remove specificity + $selector = substr($selector, $pos); + // check if this selector apply to current tag + if (self::isValidCSSSelectorForTag($dom, $key, $selector)) { + if (!in_array($selector, $selectors)) { + // add style if not already added on parent selector + $cssarray[] = array('k' => $selector, 's' => $specificity, 'c' => $style); + $selectors[] = $selector; + } + } + } + if (isset($dom[$key]['attribute']['style'])) { + // attach inline style (latest properties have high priority) + $cssarray[] = array('k' => '', 's' => '1000', 'c' => $dom[$key]['attribute']['style']); + } + // order the css array to account for specificity + $cssordered = array(); + foreach ($cssarray as $key => $val) { + $skey = sprintf('%04d', $key); + $cssordered[$val['s'].'_'.$skey] = $val; + } + // sort selectors alphabetically to account for specificity + ksort($cssordered, SORT_STRING); + return array($selectors, $cssordered); + } + + /** + * Compact CSS data array into single string. + * @param $css (array) array of CSS properties + * @return string containing merged CSS properties + * @since 5.9.070 (2011-04-19) + * @public static + */ + public static function getTagStyleFromCSSarray($css) { + $tagstyle = ''; // value to be returned + foreach ($css as $style) { + // split single css commands + $csscmds = explode(';', $style['c']); + foreach ($csscmds as $cmd) { + if (!empty($cmd)) { + $pos = strpos($cmd, ':'); + if ($pos !== false) { + $cmd = substr($cmd, 0, ($pos + 1)); + if (strpos($tagstyle, $cmd) !== false) { + // remove duplicate commands (last commands have high priority) + $tagstyle = preg_replace('/'.$cmd.'[^;]+/i', '', $tagstyle); + } + } + } + } + $tagstyle .= ';'.$style['c']; + } + // remove multiple semicolons + $tagstyle = preg_replace('/[;]+/', ';', $tagstyle); + return $tagstyle; + } + + /** + * Returns the Roman representation of an integer number + * @param $number (int) number to convert + * @return string roman representation of the specified number + * @since 4.4.004 (2008-12-10) + * @public static + */ + public static function intToRoman($number) { + $roman = ''; + while ($number >= 1000) { + $roman .= 'M'; + $number -= 1000; + } + while ($number >= 900) { + $roman .= 'CM'; + $number -= 900; + } + while ($number >= 500) { + $roman .= 'D'; + $number -= 500; + } + while ($number >= 400) { + $roman .= 'CD'; + $number -= 400; + } + while ($number >= 100) { + $roman .= 'C'; + $number -= 100; + } + while ($number >= 90) { + $roman .= 'XC'; + $number -= 90; + } + while ($number >= 50) { + $roman .= 'L'; + $number -= 50; + } + while ($number >= 40) { + $roman .= 'XL'; + $number -= 40; + } + while ($number >= 10) { + $roman .= 'X'; + $number -= 10; + } + while ($number >= 9) { + $roman .= 'IX'; + $number -= 9; + } + while ($number >= 5) { + $roman .= 'V'; + $number -= 5; + } + while ($number >= 4) { + $roman .= 'IV'; + $number -= 4; + } + while ($number >= 1) { + $roman .= 'I'; + --$number; + } + return $roman; + } + + /** + * Find position of last occurrence of a substring in a string + * @param $haystack (string) The string to search in. + * @param $needle (string) substring to search. + * @param $offset (int) May be specified to begin searching an arbitrary number of characters into the string. + * @return Returns the position where the needle exists. Returns FALSE if the needle was not found. + * @since 4.8.038 (2010-03-13) + * @public static + */ + public static function revstrpos($haystack, $needle, $offset = 0) { + $length = strlen($haystack); + $offset = ($offset > 0)?($length - $offset):abs($offset); + $pos = strpos(strrev($haystack), strrev($needle), $offset); + return ($pos === false)?false:($length - $pos - strlen($needle)); + } + + /** + * Serialize an array of parameters to be used with TCPDF tag in HTML code. + * @param $pararray (array) parameters array + * @return sting containing serialized data + * @since 4.9.006 (2010-04-02) + * @public static + */ + public static function serializeTCPDFtagParameters($pararray) { + return urlencode(serialize($pararray)); + } + + /** + * Returns an array of hyphenation patterns. + * @param $file (string) TEX file containing hypenation patterns. TEX pattrns can be downloaded from http://www.ctan.org/tex-archive/language/hyph-utf8/tex/generic/hyph-utf8/patterns/ + * @return array of hyphenation patterns + * @author Nicola Asuni + * @since 4.9.012 (2010-04-12) + * @public static + */ + public static function getHyphenPatternsFromTEX($file) { + // TEX patterns are available at: + // http://www.ctan.org/tex-archive/language/hyph-utf8/tex/generic/hyph-utf8/patterns/ + $data = file_get_contents($file); + $patterns = array(); + // remove comments + $data = preg_replace('/\%[^\n]*/', '', $data); + // extract the patterns part + preg_match('/\\\\patterns\{([^\}]*)\}/i', $data, $matches); + $data = trim(substr($matches[0], 10, -1)); + // extract each pattern + $patterns_array = preg_split('/[\s]+/', $data); + // create new language array of patterns + $patterns = array(); + foreach($patterns_array as $val) { + if (!TCPDF_STATIC::empty_string($val)) { + $val = trim($val); + $val = str_replace('\'', '\\\'', $val); + $key = preg_replace('/[0-9]+/', '', $val); + $patterns[$key] = $val; + } + } + return $patterns; + } + + /** + * Get the Path-Painting Operators. + * @param $style (string) Style of rendering. Possible values are: + *
                      + *
                    • S or D: Stroke the path.
                    • + *
                    • s or d: Close and stroke the path.
                    • + *
                    • f or F: Fill the path, using the nonzero winding number rule to determine the region to fill.
                    • + *
                    • f* or F*: Fill the path, using the even-odd rule to determine the region to fill.
                    • + *
                    • B or FD or DF: Fill and then stroke the path, using the nonzero winding number rule to determine the region to fill.
                    • + *
                    • B* or F*D or DF*: Fill and then stroke the path, using the even-odd rule to determine the region to fill.
                    • + *
                    • b or fd or df: Close, fill, and then stroke the path, using the nonzero winding number rule to determine the region to fill.
                    • + *
                    • b or f*d or df*: Close, fill, and then stroke the path, using the even-odd rule to determine the region to fill.
                    • + *
                    • CNZ: Clipping mode using the even-odd rule to determine which regions lie inside the clipping path.
                    • + *
                    • CEO: Clipping mode using the nonzero winding number rule to determine which regions lie inside the clipping path
                    • + *
                    • n: End the path object without filling or stroking it.
                    • + *
                    + * @param $default (string) default style + * @author Nicola Asuni + * @since 5.0.000 (2010-04-30) + * @public static + */ + public static function getPathPaintOperator($style, $default='S') { + $op = ''; + switch($style) { + case 'S': + case 'D': { + $op = 'S'; + break; + } + case 's': + case 'd': { + $op = 's'; + break; + } + case 'f': + case 'F': { + $op = 'f'; + break; + } + case 'f*': + case 'F*': { + $op = 'f*'; + break; + } + case 'B': + case 'FD': + case 'DF': { + $op = 'B'; + break; + } + case 'B*': + case 'F*D': + case 'DF*': { + $op = 'B*'; + break; + } + case 'b': + case 'fd': + case 'df': { + $op = 'b'; + break; + } + case 'b*': + case 'f*d': + case 'df*': { + $op = 'b*'; + break; + } + case 'CNZ': { + $op = 'W n'; + break; + } + case 'CEO': { + $op = 'W* n'; + break; + } + case 'n': { + $op = 'n'; + break; + } + default: { + if (!empty($default)) { + $op = self::getPathPaintOperator($default, ''); + } else { + $op = ''; + } + } + } + return $op; + } + + /** + * Get the product of two SVG tranformation matrices + * @param $ta (array) first SVG tranformation matrix + * @param $tb (array) second SVG tranformation matrix + * @return transformation array + * @author Nicola Asuni + * @since 5.0.000 (2010-05-02) + * @public static + */ + public static function getTransformationMatrixProduct($ta, $tb) { + $tm = array(); + $tm[0] = ($ta[0] * $tb[0]) + ($ta[2] * $tb[1]); + $tm[1] = ($ta[1] * $tb[0]) + ($ta[3] * $tb[1]); + $tm[2] = ($ta[0] * $tb[2]) + ($ta[2] * $tb[3]); + $tm[3] = ($ta[1] * $tb[2]) + ($ta[3] * $tb[3]); + $tm[4] = ($ta[0] * $tb[4]) + ($ta[2] * $tb[5]) + $ta[4]; + $tm[5] = ($ta[1] * $tb[4]) + ($ta[3] * $tb[5]) + $ta[5]; + return $tm; + } + + /** + * Get the tranformation matrix from SVG transform attribute + * @param $attribute (string) transformation + * @return array of transformations + * @author Nicola Asuni + * @since 5.0.000 (2010-05-02) + * @public static + */ + public static function getSVGTransformMatrix($attribute) { + // identity matrix + $tm = array(1, 0, 0, 1, 0, 0); + $transform = array(); + if (preg_match_all('/(matrix|translate|scale|rotate|skewX|skewY)[\s]*\(([^\)]+)\)/si', $attribute, $transform, PREG_SET_ORDER) > 0) { + foreach ($transform as $key => $data) { + if (!empty($data[2])) { + $a = 1; + $b = 0; + $c = 0; + $d = 1; + $e = 0; + $f = 0; + $regs = array(); + switch ($data[1]) { + case 'matrix': { + if (preg_match('/([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)/si', $data[2], $regs)) { + $a = $regs[1]; + $b = $regs[2]; + $c = $regs[3]; + $d = $regs[4]; + $e = $regs[5]; + $f = $regs[6]; + } + break; + } + case 'translate': { + if (preg_match('/([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)/si', $data[2], $regs)) { + $e = $regs[1]; + $f = $regs[2]; + } elseif (preg_match('/([a-z0-9\-\.]+)/si', $data[2], $regs)) { + $e = $regs[1]; + } + break; + } + case 'scale': { + if (preg_match('/([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)/si', $data[2], $regs)) { + $a = $regs[1]; + $d = $regs[2]; + } elseif (preg_match('/([a-z0-9\-\.]+)/si', $data[2], $regs)) { + $a = $regs[1]; + $d = $a; + } + break; + } + case 'rotate': { + if (preg_match('/([0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)/si', $data[2], $regs)) { + $ang = deg2rad($regs[1]); + $x = $regs[2]; + $y = $regs[3]; + $a = cos($ang); + $b = sin($ang); + $c = -$b; + $d = $a; + $e = ($x * (1 - $a)) - ($y * $c); + $f = ($y * (1 - $d)) - ($x * $b); + } elseif (preg_match('/([0-9\-\.]+)/si', $data[2], $regs)) { + $ang = deg2rad($regs[1]); + $a = cos($ang); + $b = sin($ang); + $c = -$b; + $d = $a; + $e = 0; + $f = 0; + } + break; + } + case 'skewX': { + if (preg_match('/([0-9\-\.]+)/si', $data[2], $regs)) { + $c = tan(deg2rad($regs[1])); + } + break; + } + case 'skewY': { + if (preg_match('/([0-9\-\.]+)/si', $data[2], $regs)) { + $b = tan(deg2rad($regs[1])); + } + break; + } + } + $tm = self::getTransformationMatrixProduct($tm, array($a, $b, $c, $d, $e, $f)); + } + } + } + return $tm; + } + + /** + * Returns the angle in radiants between two vectors + * @param $x1 (int) X coordinate of first vector point + * @param $y1 (int) Y coordinate of first vector point + * @param $x2 (int) X coordinate of second vector point + * @param $y2 (int) Y coordinate of second vector point + * @author Nicola Asuni + * @since 5.0.000 (2010-05-04) + * @public static + */ + public static function getVectorsAngle($x1, $y1, $x2, $y2) { + $dprod = ($x1 * $x2) + ($y1 * $y2); + $dist1 = sqrt(($x1 * $x1) + ($y1 * $y1)); + $dist2 = sqrt(($x2 * $x2) + ($y2 * $y2)); + $angle = acos($dprod / ($dist1 * $dist2)); + if (is_nan($angle)) { + $angle = M_PI; + } + if ((($x1 * $y2) - ($x2 * $y1)) < 0) { + $angle *= -1; + } + return $angle; + } + + /** + * Split string by a regular expression. + * This is a wrapper for the preg_split function to avoid the bug: https://bugs.php.net/bug.php?id=45850 + * @param $pattern (string) The regular expression pattern to search for without the modifiers, as a string. + * @param $modifiers (string) The modifiers part of the pattern, + * @param $subject (string) The input string. + * @param $limit (int) If specified, then only substrings up to limit are returned with the rest of the string being placed in the last substring. A limit of -1, 0 or NULL means "no limit" and, as is standard across PHP, you can use NULL to skip to the flags parameter. + * @param $flags (int) The flags as specified on the preg_split PHP function. + * @return Returns an array containing substrings of subject split along boundaries matched by pattern.modifier + * @author Nicola Asuni + * @since 6.0.023 + * @public static + */ + public static function pregSplit($pattern, $modifiers, $subject, $limit=NULL, $flags=NULL) { + // the bug only happens on PHP 5.2 when using the u modifier + if ((strpos($modifiers, 'u') === FALSE) OR (count(preg_split('//u', "\n\t", -1, PREG_SPLIT_NO_EMPTY)) == 2)) { + return preg_split($pattern.$modifiers, $subject, $limit, $flags); + } + // preg_split is bugged - try alternative solution + $ret = array(); + while (($nl = strpos($subject, "\n")) !== FALSE) { + $ret = array_merge($ret, preg_split($pattern.$modifiers, substr($subject, 0, $nl), $limit, $flags)); + $ret[] = "\n"; + $subject = substr($subject, ($nl + 1)); + } + if (strlen($subject) > 0) { + $ret = array_merge($ret, preg_split($pattern.$modifiers, $subject, $limit, $flags)); + } + return $ret; + } + + /** + * Reads entire file into a string. + * The file can be also an URL. + * @param $file (string) Name of the file or URL to read. + * @return The function returns the read data or FALSE on failure. + * @author Nicola Asuni + * @since 6.0.025 + * @public static + */ + public static function fileGetContents($file) { + // array of possible alternative paths/URLs + $alt = array($file); + // replace URL relative path with full real server path + if ((strlen($file) > 1) + AND ($file[0] == '/') + AND ($file[1] != '/') + AND !empty($_SERVER['DOCUMENT_ROOT']) + AND ($_SERVER['DOCUMENT_ROOT'] != '/')) { + $findroot = strpos($file, $_SERVER['DOCUMENT_ROOT']); + if (($findroot === false) OR ($findroot > 1)) { + if (substr($_SERVER['DOCUMENT_ROOT'], -1) == '/') { + $tmp = substr($_SERVER['DOCUMENT_ROOT'], 0, -1).$file; + } else { + $tmp = $_SERVER['DOCUMENT_ROOT'].$file; + } + $alt[] = htmlspecialchars_decode(urldecode($tmp)); + } + } + // URL mode + $url = $file; + // check for missing protocol + if (preg_match('%^/{2}%', $url)) { + if (preg_match('%^([^:]+:)//%i', K_PATH_URL, $match)) { + $url = $match[1].str_replace(' ', '%20', $url); + $alt[] = $url; + } + } + $urldata = @parse_url($url); + if (!isset($urldata['query']) OR (strlen($urldata['query']) <= 0)) { + if (strpos($url, K_PATH_URL) === 0) { + // convert URL to full server path + $tmp = str_replace(K_PATH_URL, K_PATH_MAIN, $url); + $tmp = htmlspecialchars_decode(urldecode($tmp)); + $alt[] = $tmp; + } + } + foreach ($alt as $f) { + $ret = @file_get_contents($f); + if (($ret === FALSE) + AND !ini_get('allow_url_fopen') + AND function_exists('curl_init') + AND preg_match('%^(https?|ftp)://%', $f)) { + // try to get remote file data using cURL + $cs = curl_init(); // curl session + curl_setopt($cs, CURLOPT_URL, $file); + curl_setopt($cs, CURLOPT_BINARYTRANSFER, true); + curl_setopt($cs, CURLOPT_FAILONERROR, true); + curl_setopt($cs, CURLOPT_RETURNTRANSFER, true); + if ((ini_get('open_basedir') == '') AND (!ini_get('safe_mode'))) { + curl_setopt($cs, CURLOPT_FOLLOWLOCATION, true); + } + curl_setopt($cs, CURLOPT_CONNECTTIMEOUT, 5); + curl_setopt($cs, CURLOPT_TIMEOUT, 30); + curl_setopt($cs, CURLOPT_SSL_VERIFYPEER, false); + curl_setopt($cs, CURLOPT_SSL_VERIFYHOST, false); + curl_setopt($cs, CURLOPT_USERAGENT, 'TCPDF'); + $ret = curl_exec($cs); + curl_close($cs); + } + if ($ret !== FALSE) { + break; + } + } + return $ret; + } + +} // END OF TCPDF_STATIC CLASS + +//============================================================+ +// END OF FILE +//============================================================+ diff --git a/lib/tcpdf/readme_moodle.txt b/lib/tcpdf/readme_moodle.txt index 5b00c3ec78a..3dd9dc59850 100644 --- a/lib/tcpdf/readme_moodle.txt +++ b/lib/tcpdf/readme_moodle.txt @@ -1,11 +1,11 @@ -Description of TCPDF library import 5.9.209 +Description of TCPDF library import 6.0.031 =========================================== * delete cache/ doc/ examples/ config/tcpdf_config_alt.php config/lang/ images/ -* remove all fonts but the core ones (courier.php, helveticabi.php, - helveticab.php, helveticai.php, helvetica.php, symbol.php, timesbi.php, - timesb.php, timesi.php, times.php, zapfdingbats.php) and FreeFont +* remove all fonts that were not already present * remove font/utils/ +TODO: create some automated script for deleting of extra fonts + 2011/10/29 ---------- Upgrade to tcpdf_php5 TCPDF 5.9.133 (MDL-29283) diff --git a/lib/tcpdf/spotcolors.php b/lib/tcpdf/spotcolors.php deleted file mode 100644 index eb9c52cd615..00000000000 --- a/lib/tcpdf/spotcolors.php +++ /dev/null @@ -1,60 +0,0 @@ -. -// -// See LICENSE.TXT file for more information. -// ------------------------------------------------------------------- -// -// Description : Array of Spot Colors for TCPDF library -// -//============================================================+ - -/** - * @file - * Arrays of Spot Colors for TCPDF library - * @author Nicola Asuni - * @package com.tecnick.tcpdf - * @since 5.9.012 (2010-11-11) -*/ - -/** - * Array of Spot colors (C,M,Y,K,name) - * Color keys must be in lowercase and without spaces. - * As long as no open standard for spot colours exists, you have to buy a colour book by one of the colour manufacturers and insert the values and names of spot colours directly. - * Common industry standard spot colors are: ANPA-COLOR, DIC, FOCOLTONE, GCMI, HKS, PANTONE, TOYO, TRUMATCH. - */ -$spotcolor = array ( - // the following are just examples, fill the array with your own values - 'mytcpdfblack' => array(0, 0, 0, 100, 'My TCPDF Black'), - 'mytcpdfred' => array(30, 100, 90, 10, 'My TCPDF Red'), - 'mytcpdfgreen' => array(100, 30, 100, 0, 'My TCPDF Green'), - 'mytcpdfblue' => array(100, 60, 10, 5, 'My TCPDF Blue'), - 'mytcpdfyellow' => array(0, 20, 100, 0, 'My TCPDF Yellow'), - // ... -); - -//============================================================+ -// END OF FILE -//============================================================+ diff --git a/lib/tcpdf/tcpdf.crt b/lib/tcpdf/tcpdf.crt deleted file mode 100644 index f0491391cf0..00000000000 --- a/lib/tcpdf/tcpdf.crt +++ /dev/null @@ -1,40 +0,0 @@ -Bag Attributes - localKeyID: 7B AB 1B 7A BE 4C 85 C0 1A A6 DC 59 3F 79 48 C3 93 38 68 9C -subject=/CN=TCPDF DEMO/O=TCPDF/OU=DEMO/emailAddress=you@example.com/C=IT -issuer=/CN=TCPDF DEMO/O=TCPDF/OU=DEMO/emailAddress=you@example.com/C=IT ------BEGIN CERTIFICATE----- -MIIC1TCCAj6gAwIBAgIKkehOL/XGkB5cjjANBgkqhkiG9w0BAQUFADBhMRMwEQYD -VQQDEwpUQ1BERiBERU1PMQ4wDAYDVQQKEwVUQ1BERjENMAsGA1UECxMEREVNTzEe -MBwGCSqGSIb3DQEJARYPeW91QGV4YW1wbGUuY29tMQswCQYDVQQGEwJJVDAeFw0w -OTA4MjExMjU0NDhaFw0xNDA4MjExMjU0NDhaMGExEzARBgNVBAMTClRDUERGIERF -TU8xDjAMBgNVBAoTBVRDUERGMQ0wCwYDVQQLEwRERU1PMR4wHAYJKoZIhvcNAQkB -Fg95b3VAZXhhbXBsZS5jb20xCzAJBgNVBAYTAklUMIGfMA0GCSqGSIb3DQEBAQUA -A4GNADCBiQKBgQDAqIL0uGKmTR98Lxx2vEEE1OGKkMXFo0JViitALe7Onhxxqx0H -XMUDKF5mvEVu1rcvh7/oAnAfrCuEpL/up3u1mQCgBE7WXBnFFE/AE3jCksh9OkS0 -Z0Xj9woN5bzxRDsGoPiOu/4xzk5qSEXt8jf2Ep90QuNkqLIRT4swAzpDbwIDAQAB -o4GTMIGQMDcGA1UdEgQwMC6gEQYDVQQDDApUQ1BERiBERU1PoAwGA1UECgwFVENQ -REagCwYDVQQLDARERU1PMDcGA1UdEQQwMC6gEQYDVQQDDApUQ1BERiBERU1PoAwG -A1UECgwFVENQREagCwYDVQQLDARERU1PMA8GCSqGSIb3LwEBCgQCBQAwCwYDVR0P -BAQDAgSQMA0GCSqGSIb3DQEBBQUAA4GBAEhTQfqX3ZNdHmpTLDbIj22RHXii2roE -OavCbu9WsHoWpva0qSd+yIoD594VHvYAd29sfzDfiN+7W0aiZfDhq5jpaSQMVlN8 -RGYMupbHY/+a9Gz1wqxnR84mlTtIkZVRYAhsfPwy6M1BEjdMqfdh9h40JIdkdjtb -8faTCfXPePWQ ------END CERTIFICATE----- -Bag Attributes - localKeyID: 7B AB 1B 7A BE 4C 85 C0 1A A6 DC 59 3F 79 48 C3 93 38 68 9C -Key Attributes: ------BEGIN RSA PRIVATE KEY----- -MIICXQIBAAKBgQDAqIL0uGKmTR98Lxx2vEEE1OGKkMXFo0JViitALe7Onhxxqx0H -XMUDKF5mvEVu1rcvh7/oAnAfrCuEpL/up3u1mQCgBE7WXBnFFE/AE3jCksh9OkS0 -Z0Xj9woN5bzxRDsGoPiOu/4xzk5qSEXt8jf2Ep90QuNkqLIRT4swAzpDbwIDAQAB -AoGAXc+wNMmz/5Z+RlIKYia44klmqbplEx+0JULqXI4BQsrqvs67i+I4bJkznoL+ -rEIRYSuQ3sCRKFsFtckjTGpxadnxkB+uwGKc6pZChv99BFX6HFR4hgBlT/BBRAQA -hMDlM2JIRr4S4SMVXR7MHwGMUf9mUeanGLR3ZWtU3aXJrIECQQD7OaYUVYNEEnM9 -uXyjm22CuHyqyEf5gb13sK0uQty67547yJTMUQZd/sQc9KGwhzBbhrob2LO2jAhh -S+f+NSRnAkEAxFHm3fMI5RgXmswxlGm4QW07a/Ueo7ZJG6xjTkFXluJhd+XHswRD -dQIO3zG9nGjNUoeMrPhXhPvKqFc2F9RDuQJAQBEGin74N77gxqfr4ik79y8nE8J5 -oGZ2s/RJZdfFRKLg3mwbjjNHhWb4Ck5UgZkoOt8TzRApXG8/n9hktE5HFwJBALur -M5AueO1Pl5kB489lNJ9OxUQRYUXMxpxuscuoCQwSwmv0O2+0/qtG2WKhUQnI4aYo -L+FV0YwtivBb1jj3T/kCQQDIWOxq8eRowdaMzvJpRUHFgMcf1AVZExKyrugwYOWd -KNsDxC4KaQOsPt8iT/Ulo4g/MJC0HolCOhWibKmR9Ayl ------END RSA PRIVATE KEY----- diff --git a/lib/tcpdf/tcpdf.fdf b/lib/tcpdf/tcpdf.fdf deleted file mode 100644 index a8f7c35d9af83d2579adafbe8d2745daa30dfd3f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1286 zcmY#&b8*u()HC8$ef0SJWnL~r1p|frq%2+=8-1XRf)S7#r0=WYVr67tU}<1sWNK(+ zVqj{ZZD6EsV4$w4A5vM6s_&dwl9-d9ZfD1vnwJ974blcRB_P0C!5Cx;LKeh@%DVa{ zX69&A=9fC8RwU*YU-uEiZ?;rfP&Z2LK)A;_B7r3kke!oRl4_NlT2$g%0n&r%SOWtqBSU91S93#0P5mGRLt{e&OJj)R zfezFUQ!unNGcz$2Stmap^>SHiA5BUZ)k$Vr=CM% zc=0=>aXxA&FtRc*H}*0ZG&u@?wgf?)m6q&9>l2-|l~g=lrrfT;F~&|0XoQ#OZO$icNz4 z-3H87&iPEtj0}v68z&nyPB1VB2BNGGi-CdO0!TdZAji`JXe{wSVrc;=ieh+KxOu>l z1ko%=ie|W0erW9KGcv~Hu`mIX3dn3(eijyHCYA}PK?qDp%)qeo2zLB6{qE#gxvXFv zvlIQf6J;wF-P*-sx%yDv`>+jFV#~g5S*c!kqKo)Yp8S8-mz=MM)}*_iQ=4k-F>z{O0!L2GAEOs%9fiz&R(?FEV{qfsm&adYyzE04L)pyR%D@jZ)LCJsMoDa#P`pJ37QixnsQIwj-%VnTo z3MAk_!OYau*i-=|0R@I;3SgE(9zx6lQ_K*HIwK1Mgx-=OU}=(C#LERNy@E5VQWZ?~ kgYxrB6hMU zY-rcU0s;sCfPw=!#BpZA(3DXgvNT6SMx2c3M^p9_<~*qj&~k|Wio#7(scRd zVB;~P(%~|g!$#H)Uj>}ly*mK-K*NcRU+dxygiF7$BDFu;YqjVO#_{qT;h+#I>a(HG z6~@vJ%56(B0~rm^94uG!F&Q6%9$*+cPTn~18aH}n`p;SwVUc3}cGnJV33D`@$5Df5 zka5G^;jy@bF*5dt7yj?!On2m{6(lU}`+Ngz(u>-st&u3q&_N{T-$B(t9@HplX>tLm z<+%6V-nXIed*8 zvh$I?cs-H$tTFYyLYOK&N@y0$j3(wM=r+RHOFm_l_Ew3J zjZ|cTFZc?kMLbIRq9#Je0!uHg$!6L_|JSTh4SBDC^kz-4Q$rl0exLwuv7)I*(A$u( z4~P;V(@gR1lQvQ9WUL5F(7#Oi)Yh-}TXhqUaHvL^;{PKZ_!c^5TIaYzP~~Y~ol!Ix zIU5LwA?E0d=I<-Og-X;m1K5(@AtP)n6jQ1{Q2ko=_)Bd{1(bAXe>Coeda=}lih)j$ z2>zQNzJ;fmRdBanq`^ZJV5@Ra+72~oPcmiLf=NHQP1lj<)-k#CXYR9X=4kR3k!;Y8h(}v0#D@^oeB!oK*4q{yIW*$U z&LNQUbi3jQQ0AALA`*I zEfwAUX0Q~1Fi>8l{3I2b+YV;2v~q$Ht)BfYyxTJvSQ3SoAxX}JT3QHXqu~l@W;f&? zvySO921ne7{yT!I)^oWbM&abJwv8?L zM@*J>12l+CQ;QV!Y|w=vINzLD8!z3$e&b>m;bngGpZYK)8EI}digPEz z`_pvC6Afky&Q2vvrHY~v?ZeFbT?m+rp=p=tij1id`L#ceB43YATh$S6RuVfPIPHzQGmAuP1O9==9r!_9t z(XXtxXOZ1gWS49JT5NEHFG{7{?SuzHx8kV3=tHXcRlJ=U+G!T)+ z?jrd2IhsLxK1dcI7Bz#699SwDG5!;?5@oG>vkAutIB1uG5% r0vZJX1QaJKFP)8IPAOWT%X#|+d4hgQWoQHlY+Q * @package com.tecnick.tcpdf * @author Nicola Asuni - * @version 5.9.208 + * @version 6.0.031 */ -// Main configuration file. Define the K_TCPDF_EXTERNAL_CONFIG constant to skip this file. -require_once(dirname(__FILE__).'/config/tcpdf_config.php'); +// TCPDF configuration +require_once(dirname(__FILE__).'/tcpdf_autoconfig.php'); +// TCPDF static font methods and data +require_once(dirname(__FILE__).'/include/tcpdf_font_data.php'); +// TCPDF static font methods and data +require_once(dirname(__FILE__).'/include/tcpdf_fonts.php'); +// TCPDF static color methods and data +require_once(dirname(__FILE__).'/include/tcpdf_colors.php'); +// TCPDF static image methods and data +require_once(dirname(__FILE__).'/include/tcpdf_images.php'); +// TCPDF static methods and data +require_once(dirname(__FILE__).'/include/tcpdf_static.php'); + +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - /** * @class TCPDF @@ -151,19 +163,11 @@ require_once(dirname(__FILE__).'/config/tcpdf_config.php'); * TCPDF project (http://www.tcpdf.org) has been originally derived in 2002 from the Public Domain FPDF class by Olivier Plathey (http://www.fpdf.org), but now is almost entirely rewritten.
                    * @package com.tecnick.tcpdf * @brief PHP class for generating PDF documents without requiring external extensions. - * @version 5.9.208 + * @version 6.0.031 * @author Nicola Asuni - info@tecnick.com */ class TCPDF { - // private properties - - /** - * Current TCPDF version. - * @private - */ - private $tcpdf_version = '5.9.208'; - // Protected properties /** @@ -548,36 +552,6 @@ class TCPDF { */ protected $starting_page_number = 1; - /** - * String alias for total number of pages. - * @protected - */ - protected $alias_tot_pages = '{:ptp:}'; - - /** - * String alias for page number. - * @protected - */ - protected $alias_num_page = '{:pnp:}'; - - /** - * String alias for total number of pages in a single group. - * @protected - */ - protected $alias_group_tot_pages = '{:ptg:}'; - - /** - * String alias for group page number. - * @protected - */ - protected $alias_group_num_page = '{:png:}'; - - /** - * String alias for right shift compensation used to correctly align page numbers on the right. - * @protected - */ - protected $alias_right_shift = '{rsc:'; - /** * The right-bottom (or left-bottom for RTL) corner X coordinate of last inserted image. * @since 2002-07-31 @@ -610,22 +584,6 @@ class TCPDF { */ protected $isunicode = false; - /** - * Object containing unicode data. - * @since 5.9.004 (2010-10-18) - * @author Nicola Asuni - * @protected - */ - protected $unicode; - - /** - * Object containing font encoding maps. - * @since 5.9.123 (2011-10-01) - * @author Nicola Asuni - * @protected - */ - protected $encmaps; - /** * PDF version. * @since 1.5.3 @@ -898,12 +856,6 @@ class TCPDF { */ protected $last_enc_key_c; - /** - * Encryption padding string. - * @protected - */ - protected $enc_padding = "\x28\xBF\x4E\x5E\x4E\x75\x8A\x41\x64\x00\x4E\x56\xFF\xFA\x01\x08\x2E\x2E\x00\xB6\xD0\x68\x3E\x80\x2F\x0C\xA9\xFE\x64\x53\x69\x7A"; - /** * File ID (used on document trailer). * @protected @@ -944,7 +896,7 @@ class TCPDF { protected $n_js; /** - * line trough state + * line through state * @protected * @since 2.8.000 (2008-03-19) */ @@ -1336,27 +1288,6 @@ class TCPDF { */ protected $theadMargins = array(); - /** - * Cache array for UTF8StringToArray() method. - * @protected - * @since 4.5.037 (2009-04-07) - */ - protected $cache_UTF8StringToArray = array(); - - /** - * Maximum size of cache array used for UTF8StringToArray() method. - * @protected - * @since 4.5.037 (2009-04-07) - */ - protected $cache_maxsize_UTF8StringToArray = 8; - - /** - * Current size of cache array used for UTF8StringToArray() method. - * @protected - * @since 4.5.037 (2009-04-07) - */ - protected $cache_size_UTF8StringToArray = 0; - /** * Boolean flag to enable document digital signature. * @protected @@ -1413,20 +1344,6 @@ class TCPDF { */ protected $sig_obj_id = 0; - /** - * ByteRange placemark used during digital signature process. - * @protected - * @since 4.6.028 (2009-08-25) - */ - protected $byterange_string = '/ByteRange[0 ********** ********** **********]'; - - /** - * Placemark used during digital signature process. - * @protected - * @since 4.6.028 (2009-08-25) - */ - protected $sig_annot_ref = '***SIGANNREF*** 0 R'; - /** * ID of page objects. * @protected @@ -1671,20 +1588,6 @@ class TCPDF { */ protected $check_page_regions = true; - /** - * Array containing HTML color names and values. - * @protected - * @since 5.9.004 (2010-10-18) - */ - protected $webcolor = array(); - - /** - * Array containing spot color names and values. - * @protected - * @since 5.9.012 (2010-11-11) - */ - protected $spotcolor = array(); - /** * Array of PDF layers data. * @protected @@ -1797,13 +1700,6 @@ class TCPDF { */ protected $svgtextmode = array(); - /** - * Array of hinheritable SVG properties. - * @protected - * @since 5.0.000 (2010-05-02) - */ - protected $svginheritprop = array('clip-rule', 'color', 'color-interpolation', 'color-interpolation-filters', 'color-profile', 'color-rendering', 'cursor', 'direction', 'fill', 'fill-opacity', 'fill-rule', 'font', 'font-family', 'font-size', 'font-size-adjust', 'font-stretch', 'font-style', 'font-variant', 'font-weight', 'glyph-orientation-horizontal', 'glyph-orientation-vertical', 'image-rendering', 'kerning', 'letter-spacing', 'marker', 'marker-end', 'marker-mid', 'marker-start', 'pointer-events', 'shape-rendering', 'stroke', 'stroke-dasharray', 'stroke-dashoffset', 'stroke-linecap', 'stroke-linejoin', 'stroke-miterlimit', 'stroke-opacity', 'stroke-width', 'text-anchor', 'text-rendering', 'visibility', 'word-spacing', 'writing-mode'); - /** * Array of SVG properties. * @protected @@ -1933,13 +1829,6 @@ class TCPDF { */ protected $page_boxes = array('MediaBox', 'CropBox', 'BleedBox', 'TrimBox', 'ArtBox'); - /** - * Set the document producer metadata. - * @protected - * @since 5.9.152 (2012-03-23) - */ - protected $pdfproducer; - /** * If true print TCPDF meta link. * @protected @@ -1961,11 +1850,14 @@ class TCPDF { /** * This is the class constructor. * It allows to set up the page format, the orientation and the measure unit used in all the methods (except for the font sizes). + * + * IMPORTANT: Please note that this method sets the mb_internal_encoding to ASCII, so if you are using the mbstring module functions with TCPDF you need to correctly set/unset the mb_internal_encoding when needed. + * * @param $orientation (string) page orientation. Possible values are (case insensitive):
                    • P or Portrait (default)
                    • L or Landscape
                    • '' (empty string) for automatic orientation
                    * @param $unit (string) User measure unit. Possible values are:
                    • pt: point
                    • mm: millimeter (default)
                    • cm: centimeter
                    • in: inch

                    A point equals 1/72 of inch, that is to say about 0.35 mm (an inch being 2.54 cm). This is a very common unit in typography; font sizes are expressed in that unit. * @param $format (mixed) The format used for pages. It can be either: one of the string values specified at getPageSizeFromFormat() or an array of parameters specified at setPageFormat(). * @param $unicode (boolean) TRUE means that the input text is unicode (default = true) - * @param $encoding (string) Charset encoding; default is UTF-8. + * @param $encoding (string) Charset encoding (used only when converting back html entities); default is UTF-8. * @param $diskcache (boolean) If TRUE reduce the RAM memory usage by caching temporary data on filesystem (slower). * @param $pdfa (boolean) If TRUE set the document to PDF/A mode. * @public @@ -1977,20 +1869,6 @@ class TCPDF { $this->internal_encoding = mb_internal_encoding(); mb_internal_encoding('ASCII'); } - // get array of HTML colors - require(dirname(__FILE__).'/htmlcolors.php'); - $this->webcolor = $webcolor; - // get array of custom spot colors - if (file_exists(dirname(__FILE__).'/spotcolors.php')) { - require(dirname(__FILE__).'/spotcolors.php'); - $this->spotcolor = $spotcolor; - } else { - $this->spotcolor = array(); - } - require_once(dirname(__FILE__).'/unicode_data.php'); - $this->unicode = new TCPDF_UNICODE_DATA(); - require_once(dirname(__FILE__).'/encodings_maps.php'); - $this->encmaps = new TCPDF_ENCODING_MAPS(); $this->font_obj_ids = array(); $this->page_obj_id = array(); $this->form_obj_id = array(); @@ -2080,7 +1958,6 @@ class TCPDF { $this->SetCompression(); // set default PDF version number $this->setPDFVersion(); - $this->pdfproducer = "\x54\x43\x50\x44\x46\x20".$this->tcpdf_version."\x20\x28\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x74\x63\x70\x64\x66\x2e\x6f\x72\x67\x29"; $this->tcpdflink = true; $this->encoding = $encoding; $this->HREF = array(); @@ -2099,12 +1976,12 @@ class TCPDF { $this->ur['signature'] = '/Modify'; $this->ur['ef'] = '/Create/Delete/Modify/Import'; $this->ur['formex'] = ''; - $this->signature_appearance = array('page' => 1, 'rect' => '0 0 0 0'); + $this->signature_appearance = array('page' => 1, 'rect' => '0 0 0 0', 'name' => 'Signature'); $this->empty_signature_appearance = array(); // set default JPEG quality $this->jpeg_quality = 75; // initialize some settings - $this->utf8Bidi(array(''), ''); + TCPDF_FONTS::utf8Bidi(array(''), '', false, $this->isunicode, $this->CurrentFont); // set default font $this->SetFont($this->FontFamily, $this->FontStyle, $this->FontSizePt); // check if PCRE Unicode support is enabled @@ -2122,7 +1999,7 @@ class TCPDF { $this->default_form_prop = array('lineWidth'=>1, 'borderStyle'=>'solid', 'fillColor'=>array(255, 255, 255), 'strokeColor'=>array(128, 128, 128)); // set file ID for trailer $serformat = (is_array($format) ? serialize($format) : $format); - $this->file_id = md5($this->getRandomSeed('TCPDF'.$orientation.$unit.$serformat.$encoding)); + $this->file_id = md5(TCPDF_STATIC::getRandomSeed('TCPDF'.$orientation.$unit.$serformat.$encoding)); // set document creation and modification timestamp $this->doc_creation_timestamp = time(); $this->doc_modification_timestamp = $this->doc_creation_timestamp; @@ -2146,16 +2023,6 @@ class TCPDF { $this->_destroy(true); } - /** - * Return the current TCPDF version. - * @return TCPDF version string - * @public - * @since 5.9.012 (2010-11-10) - */ - public function getTCPDFVersion() { - return $this->tcpdf_version; - } - /** * Set the units of measure for the document. * @param $unit (string) User measure unit. Possible values are:
                    • pt: point
                    • mm: millimeter (default)
                    • cm: centimeter
                    • in: inch

                    A point equals 1/72 of inch, that is to say about 0.35 mm (an inch being 2.54 cm). This is a very common unit in typography; font sizes are expressed in that unit. @@ -2199,674 +2066,6 @@ class TCPDF { } } - /** - * Get page dimensions from format name. - * @param $format (mixed) The format name. It can be:
                      - *
                    • ISO 216 A Series + 2 SIS 014711 extensions
                    • - *
                    • A0 (841x1189 mm ; 33.11x46.81 in)
                    • - *
                    • A1 (594x841 mm ; 23.39x33.11 in)
                    • - *
                    • A2 (420x594 mm ; 16.54x23.39 in)
                    • - *
                    • A3 (297x420 mm ; 11.69x16.54 in)
                    • - *
                    • A4 (210x297 mm ; 8.27x11.69 in)
                    • - *
                    • A5 (148x210 mm ; 5.83x8.27 in)
                    • - *
                    • A6 (105x148 mm ; 4.13x5.83 in)
                    • - *
                    • A7 (74x105 mm ; 2.91x4.13 in)
                    • - *
                    • A8 (52x74 mm ; 2.05x2.91 in)
                    • - *
                    • A9 (37x52 mm ; 1.46x2.05 in)
                    • - *
                    • A10 (26x37 mm ; 1.02x1.46 in)
                    • - *
                    • A11 (18x26 mm ; 0.71x1.02 in)
                    • - *
                    • A12 (13x18 mm ; 0.51x0.71 in)
                    • - *
                    • ISO 216 B Series + 2 SIS 014711 extensions
                    • - *
                    • B0 (1000x1414 mm ; 39.37x55.67 in)
                    • - *
                    • B1 (707x1000 mm ; 27.83x39.37 in)
                    • - *
                    • B2 (500x707 mm ; 19.69x27.83 in)
                    • - *
                    • B3 (353x500 mm ; 13.90x19.69 in)
                    • - *
                    • B4 (250x353 mm ; 9.84x13.90 in)
                    • - *
                    • B5 (176x250 mm ; 6.93x9.84 in)
                    • - *
                    • B6 (125x176 mm ; 4.92x6.93 in)
                    • - *
                    • B7 (88x125 mm ; 3.46x4.92 in)
                    • - *
                    • B8 (62x88 mm ; 2.44x3.46 in)
                    • - *
                    • B9 (44x62 mm ; 1.73x2.44 in)
                    • - *
                    • B10 (31x44 mm ; 1.22x1.73 in)
                    • - *
                    • B11 (22x31 mm ; 0.87x1.22 in)
                    • - *
                    • B12 (15x22 mm ; 0.59x0.87 in)
                    • - *
                    • ISO 216 C Series + 2 SIS 014711 extensions + 2 EXTENSION
                    • - *
                    • C0 (917x1297 mm ; 36.10x51.06 in)
                    • - *
                    • C1 (648x917 mm ; 25.51x36.10 in)
                    • - *
                    • C2 (458x648 mm ; 18.03x25.51 in)
                    • - *
                    • C3 (324x458 mm ; 12.76x18.03 in)
                    • - *
                    • C4 (229x324 mm ; 9.02x12.76 in)
                    • - *
                    • C5 (162x229 mm ; 6.38x9.02 in)
                    • - *
                    • C6 (114x162 mm ; 4.49x6.38 in)
                    • - *
                    • C7 (81x114 mm ; 3.19x4.49 in)
                    • - *
                    • C8 (57x81 mm ; 2.24x3.19 in)
                    • - *
                    • C9 (40x57 mm ; 1.57x2.24 in)
                    • - *
                    • C10 (28x40 mm ; 1.10x1.57 in)
                    • - *
                    • C11 (20x28 mm ; 0.79x1.10 in)
                    • - *
                    • C12 (14x20 mm ; 0.55x0.79 in)
                    • - *
                    • C76 (81x162 mm ; 3.19x6.38 in)
                    • - *
                    • DL (110x220 mm ; 4.33x8.66 in)
                    • - *
                    • SIS 014711 E Series
                    • - *
                    • E0 (879x1241 mm ; 34.61x48.86 in)
                    • - *
                    • E1 (620x879 mm ; 24.41x34.61 in)
                    • - *
                    • E2 (440x620 mm ; 17.32x24.41 in)
                    • - *
                    • E3 (310x440 mm ; 12.20x17.32 in)
                    • - *
                    • E4 (220x310 mm ; 8.66x12.20 in)
                    • - *
                    • E5 (155x220 mm ; 6.10x8.66 in)
                    • - *
                    • E6 (110x155 mm ; 4.33x6.10 in)
                    • - *
                    • E7 (78x110 mm ; 3.07x4.33 in)
                    • - *
                    • E8 (55x78 mm ; 2.17x3.07 in)
                    • - *
                    • E9 (39x55 mm ; 1.54x2.17 in)
                    • - *
                    • E10 (27x39 mm ; 1.06x1.54 in)
                    • - *
                    • E11 (19x27 mm ; 0.75x1.06 in)
                    • - *
                    • E12 (13x19 mm ; 0.51x0.75 in)
                    • - *
                    • SIS 014711 G Series
                    • - *
                    • G0 (958x1354 mm ; 37.72x53.31 in)
                    • - *
                    • G1 (677x958 mm ; 26.65x37.72 in)
                    • - *
                    • G2 (479x677 mm ; 18.86x26.65 in)
                    • - *
                    • G3 (338x479 mm ; 13.31x18.86 in)
                    • - *
                    • G4 (239x338 mm ; 9.41x13.31 in)
                    • - *
                    • G5 (169x239 mm ; 6.65x9.41 in)
                    • - *
                    • G6 (119x169 mm ; 4.69x6.65 in)
                    • - *
                    • G7 (84x119 mm ; 3.31x4.69 in)
                    • - *
                    • G8 (59x84 mm ; 2.32x3.31 in)
                    • - *
                    • G9 (42x59 mm ; 1.65x2.32 in)
                    • - *
                    • G10 (29x42 mm ; 1.14x1.65 in)
                    • - *
                    • G11 (21x29 mm ; 0.83x1.14 in)
                    • - *
                    • G12 (14x21 mm ; 0.55x0.83 in)
                    • - *
                    • ISO Press
                    • - *
                    • RA0 (860x1220 mm ; 33.86x48.03 in)
                    • - *
                    • RA1 (610x860 mm ; 24.02x33.86 in)
                    • - *
                    • RA2 (430x610 mm ; 16.93x24.02 in)
                    • - *
                    • RA3 (305x430 mm ; 12.01x16.93 in)
                    • - *
                    • RA4 (215x305 mm ; 8.46x12.01 in)
                    • - *
                    • SRA0 (900x1280 mm ; 35.43x50.39 in)
                    • - *
                    • SRA1 (640x900 mm ; 25.20x35.43 in)
                    • - *
                    • SRA2 (450x640 mm ; 17.72x25.20 in)
                    • - *
                    • SRA3 (320x450 mm ; 12.60x17.72 in)
                    • - *
                    • SRA4 (225x320 mm ; 8.86x12.60 in)
                    • - *
                    • German DIN 476
                    • - *
                    • 4A0 (1682x2378 mm ; 66.22x93.62 in)
                    • - *
                    • 2A0 (1189x1682 mm ; 46.81x66.22 in)
                    • - *
                    • Variations on the ISO Standard
                    • - *
                    • A2_EXTRA (445x619 mm ; 17.52x24.37 in)
                    • - *
                    • A3+ (329x483 mm ; 12.95x19.02 in)
                    • - *
                    • A3_EXTRA (322x445 mm ; 12.68x17.52 in)
                    • - *
                    • A3_SUPER (305x508 mm ; 12.01x20.00 in)
                    • - *
                    • SUPER_A3 (305x487 mm ; 12.01x19.17 in)
                    • - *
                    • A4_EXTRA (235x322 mm ; 9.25x12.68 in)
                    • - *
                    • A4_SUPER (229x322 mm ; 9.02x12.68 in)
                    • - *
                    • SUPER_A4 (227x356 mm ; 8.94x14.02 in)
                    • - *
                    • A4_LONG (210x348 mm ; 8.27x13.70 in)
                    • - *
                    • F4 (210x330 mm ; 8.27x12.99 in)
                    • - *
                    • SO_B5_EXTRA (202x276 mm ; 7.95x10.87 in)
                    • - *
                    • A5_EXTRA (173x235 mm ; 6.81x9.25 in)
                    • - *
                    • ANSI Series
                    • - *
                    • ANSI_E (864x1118 mm ; 34.00x44.00 in)
                    • - *
                    • ANSI_D (559x864 mm ; 22.00x34.00 in)
                    • - *
                    • ANSI_C (432x559 mm ; 17.00x22.00 in)
                    • - *
                    • ANSI_B (279x432 mm ; 11.00x17.00 in)
                    • - *
                    • ANSI_A (216x279 mm ; 8.50x11.00 in)
                    • - *
                    • Traditional 'Loose' North American Paper Sizes
                    • - *
                    • LEDGER, USLEDGER (432x279 mm ; 17.00x11.00 in)
                    • - *
                    • TABLOID, USTABLOID, BIBLE, ORGANIZERK (279x432 mm ; 11.00x17.00 in)
                    • - *
                    • LETTER, USLETTER, ORGANIZERM (216x279 mm ; 8.50x11.00 in)
                    • - *
                    • LEGAL, USLEGAL (216x356 mm ; 8.50x14.00 in)
                    • - *
                    • GLETTER, GOVERNMENTLETTER (203x267 mm ; 8.00x10.50 in)
                    • - *
                    • JLEGAL, JUNIORLEGAL (203x127 mm ; 8.00x5.00 in)
                    • - *
                    • Other North American Paper Sizes
                    • - *
                    • QUADDEMY (889x1143 mm ; 35.00x45.00 in)
                    • - *
                    • SUPER_B (330x483 mm ; 13.00x19.00 in)
                    • - *
                    • QUARTO (229x279 mm ; 9.00x11.00 in)
                    • - *
                    • FOLIO, GOVERNMENTLEGAL (216x330 mm ; 8.50x13.00 in)
                    • - *
                    • EXECUTIVE, MONARCH (184x267 mm ; 7.25x10.50 in)
                    • - *
                    • MEMO, STATEMENT, ORGANIZERL (140x216 mm ; 5.50x8.50 in)
                    • - *
                    • FOOLSCAP (210x330 mm ; 8.27x13.00 in)
                    • - *
                    • COMPACT (108x171 mm ; 4.25x6.75 in)
                    • - *
                    • ORGANIZERJ (70x127 mm ; 2.75x5.00 in)
                    • - *
                    • Canadian standard CAN 2-9.60M
                    • - *
                    • P1 (560x860 mm ; 22.05x33.86 in)
                    • - *
                    • P2 (430x560 mm ; 16.93x22.05 in)
                    • - *
                    • P3 (280x430 mm ; 11.02x16.93 in)
                    • - *
                    • P4 (215x280 mm ; 8.46x11.02 in)
                    • - *
                    • P5 (140x215 mm ; 5.51x8.46 in)
                    • - *
                    • P6 (107x140 mm ; 4.21x5.51 in)
                    • - *
                    • North American Architectural Sizes
                    • - *
                    • ARCH_E (914x1219 mm ; 36.00x48.00 in)
                    • - *
                    • ARCH_E1 (762x1067 mm ; 30.00x42.00 in)
                    • - *
                    • ARCH_D (610x914 mm ; 24.00x36.00 in)
                    • - *
                    • ARCH_C, BROADSHEET (457x610 mm ; 18.00x24.00 in)
                    • - *
                    • ARCH_B (305x457 mm ; 12.00x18.00 in)
                    • - *
                    • ARCH_A (229x305 mm ; 9.00x12.00 in)
                    • - *
                    • Announcement Envelopes
                    • - *
                    • ANNENV_A2 (111x146 mm ; 4.37x5.75 in)
                    • - *
                    • ANNENV_A6 (121x165 mm ; 4.75x6.50 in)
                    • - *
                    • ANNENV_A7 (133x184 mm ; 5.25x7.25 in)
                    • - *
                    • ANNENV_A8 (140x206 mm ; 5.50x8.12 in)
                    • - *
                    • ANNENV_A10 (159x244 mm ; 6.25x9.62 in)
                    • - *
                    • ANNENV_SLIM (98x225 mm ; 3.87x8.87 in)
                    • - *
                    • Commercial Envelopes
                    • - *
                    • COMMENV_N6_1/4 (89x152 mm ; 3.50x6.00 in)
                    • - *
                    • COMMENV_N6_3/4 (92x165 mm ; 3.62x6.50 in)
                    • - *
                    • COMMENV_N8 (98x191 mm ; 3.87x7.50 in)
                    • - *
                    • COMMENV_N9 (98x225 mm ; 3.87x8.87 in)
                    • - *
                    • COMMENV_N10 (105x241 mm ; 4.12x9.50 in)
                    • - *
                    • COMMENV_N11 (114x263 mm ; 4.50x10.37 in)
                    • - *
                    • COMMENV_N12 (121x279 mm ; 4.75x11.00 in)
                    • - *
                    • COMMENV_N14 (127x292 mm ; 5.00x11.50 in)
                    • - *
                    • Catalogue Envelopes
                    • - *
                    • CATENV_N1 (152x229 mm ; 6.00x9.00 in)
                    • - *
                    • CATENV_N1_3/4 (165x241 mm ; 6.50x9.50 in)
                    • - *
                    • CATENV_N2 (165x254 mm ; 6.50x10.00 in)
                    • - *
                    • CATENV_N3 (178x254 mm ; 7.00x10.00 in)
                    • - *
                    • CATENV_N6 (191x267 mm ; 7.50x10.50 in)
                    • - *
                    • CATENV_N7 (203x279 mm ; 8.00x11.00 in)
                    • - *
                    • CATENV_N8 (210x286 mm ; 8.25x11.25 in)
                    • - *
                    • CATENV_N9_1/2 (216x267 mm ; 8.50x10.50 in)
                    • - *
                    • CATENV_N9_3/4 (222x286 mm ; 8.75x11.25 in)
                    • - *
                    • CATENV_N10_1/2 (229x305 mm ; 9.00x12.00 in)
                    • - *
                    • CATENV_N12_1/2 (241x318 mm ; 9.50x12.50 in)
                    • - *
                    • CATENV_N13_1/2 (254x330 mm ; 10.00x13.00 in)
                    • - *
                    • CATENV_N14_1/4 (286x311 mm ; 11.25x12.25 in)
                    • - *
                    • CATENV_N14_1/2 (292x368 mm ; 11.50x14.50 in)
                    • - *
                    • Japanese (JIS P 0138-61) Standard B-Series
                    • - *
                    • JIS_B0 (1030x1456 mm ; 40.55x57.32 in)
                    • - *
                    • JIS_B1 (728x1030 mm ; 28.66x40.55 in)
                    • - *
                    • JIS_B2 (515x728 mm ; 20.28x28.66 in)
                    • - *
                    • JIS_B3 (364x515 mm ; 14.33x20.28 in)
                    • - *
                    • JIS_B4 (257x364 mm ; 10.12x14.33 in)
                    • - *
                    • JIS_B5 (182x257 mm ; 7.17x10.12 in)
                    • - *
                    • JIS_B6 (128x182 mm ; 5.04x7.17 in)
                    • - *
                    • JIS_B7 (91x128 mm ; 3.58x5.04 in)
                    • - *
                    • JIS_B8 (64x91 mm ; 2.52x3.58 in)
                    • - *
                    • JIS_B9 (45x64 mm ; 1.77x2.52 in)
                    • - *
                    • JIS_B10 (32x45 mm ; 1.26x1.77 in)
                    • - *
                    • JIS_B11 (22x32 mm ; 0.87x1.26 in)
                    • - *
                    • JIS_B12 (16x22 mm ; 0.63x0.87 in)
                    • - *
                    • PA Series
                    • - *
                    • PA0 (840x1120 mm ; 33.07x44.09 in)
                    • - *
                    • PA1 (560x840 mm ; 22.05x33.07 in)
                    • - *
                    • PA2 (420x560 mm ; 16.54x22.05 in)
                    • - *
                    • PA3 (280x420 mm ; 11.02x16.54 in)
                    • - *
                    • PA4 (210x280 mm ; 8.27x11.02 in)
                    • - *
                    • PA5 (140x210 mm ; 5.51x8.27 in)
                    • - *
                    • PA6 (105x140 mm ; 4.13x5.51 in)
                    • - *
                    • PA7 (70x105 mm ; 2.76x4.13 in)
                    • - *
                    • PA8 (52x70 mm ; 2.05x2.76 in)
                    • - *
                    • PA9 (35x52 mm ; 1.38x2.05 in)
                    • - *
                    • PA10 (26x35 mm ; 1.02x1.38 in)
                    • - *
                    • Standard Photographic Print Sizes
                    • - *
                    • PASSPORT_PHOTO (35x45 mm ; 1.38x1.77 in)
                    • - *
                    • E (82x120 mm ; 3.25x4.72 in)
                    • - *
                    • 3R, L (89x127 mm ; 3.50x5.00 in)
                    • - *
                    • 4R, KG (102x152 mm ; 4.02x5.98 in)
                    • - *
                    • 4D (120x152 mm ; 4.72x5.98 in)
                    • - *
                    • 5R, 2L (127x178 mm ; 5.00x7.01 in)
                    • - *
                    • 6R, 8P (152x203 mm ; 5.98x7.99 in)
                    • - *
                    • 8R, 6P (203x254 mm ; 7.99x10.00 in)
                    • - *
                    • S8R, 6PW (203x305 mm ; 7.99x12.01 in)
                    • - *
                    • 10R, 4P (254x305 mm ; 10.00x12.01 in)
                    • - *
                    • S10R, 4PW (254x381 mm ; 10.00x15.00 in)
                    • - *
                    • 11R (279x356 mm ; 10.98x14.02 in)
                    • - *
                    • S11R (279x432 mm ; 10.98x17.01 in)
                    • - *
                    • 12R (305x381 mm ; 12.01x15.00 in)
                    • - *
                    • S12R (305x456 mm ; 12.01x17.95 in)
                    • - *
                    • Common Newspaper Sizes
                    • - *
                    • NEWSPAPER_BROADSHEET (750x600 mm ; 29.53x23.62 in)
                    • - *
                    • NEWSPAPER_BERLINER (470x315 mm ; 18.50x12.40 in)
                    • - *
                    • NEWSPAPER_COMPACT, NEWSPAPER_TABLOID (430x280 mm ; 16.93x11.02 in)
                    • - *
                    • Business Cards
                    • - *
                    • CREDIT_CARD, BUSINESS_CARD, BUSINESS_CARD_ISO7810 (54x86 mm ; 2.13x3.37 in)
                    • - *
                    • BUSINESS_CARD_ISO216 (52x74 mm ; 2.05x2.91 in)
                    • - *
                    • BUSINESS_CARD_IT, BUSINESS_CARD_UK, BUSINESS_CARD_FR, BUSINESS_CARD_DE, BUSINESS_CARD_ES (55x85 mm ; 2.17x3.35 in)
                    • - *
                    • BUSINESS_CARD_US, BUSINESS_CARD_CA (51x89 mm ; 2.01x3.50 in)
                    • - *
                    • BUSINESS_CARD_JP (55x91 mm ; 2.17x3.58 in)
                    • - *
                    • BUSINESS_CARD_HK (54x90 mm ; 2.13x3.54 in)
                    • - *
                    • BUSINESS_CARD_AU, BUSINESS_CARD_DK, BUSINESS_CARD_SE (55x90 mm ; 2.17x3.54 in)
                    • - *
                    • BUSINESS_CARD_RU, BUSINESS_CARD_CZ, BUSINESS_CARD_FI, BUSINESS_CARD_HU, BUSINESS_CARD_IL (50x90 mm ; 1.97x3.54 in)
                    • - *
                    • Billboards
                    • - *
                    • 4SHEET (1016x1524 mm ; 40.00x60.00 in)
                    • - *
                    • 6SHEET (1200x1800 mm ; 47.24x70.87 in)
                    • - *
                    • 12SHEET (3048x1524 mm ; 120.00x60.00 in)
                    • - *
                    • 16SHEET (2032x3048 mm ; 80.00x120.00 in)
                    • - *
                    • 32SHEET (4064x3048 mm ; 160.00x120.00 in)
                    • - *
                    • 48SHEET (6096x3048 mm ; 240.00x120.00 in)
                    • - *
                    • 64SHEET (8128x3048 mm ; 320.00x120.00 in)
                    • - *
                    • 96SHEET (12192x3048 mm ; 480.00x120.00 in)
                    • - *
                    • Old Imperial English (some are still used in USA)
                    • - *
                    • EN_EMPEROR (1219x1829 mm ; 48.00x72.00 in)
                    • - *
                    • EN_ANTIQUARIAN (787x1346 mm ; 31.00x53.00 in)
                    • - *
                    • EN_GRAND_EAGLE (730x1067 mm ; 28.75x42.00 in)
                    • - *
                    • EN_DOUBLE_ELEPHANT (679x1016 mm ; 26.75x40.00 in)
                    • - *
                    • EN_ATLAS (660x864 mm ; 26.00x34.00 in)
                    • - *
                    • EN_COLOMBIER (597x876 mm ; 23.50x34.50 in)
                    • - *
                    • EN_ELEPHANT (584x711 mm ; 23.00x28.00 in)
                    • - *
                    • EN_DOUBLE_DEMY (572x902 mm ; 22.50x35.50 in)
                    • - *
                    • EN_IMPERIAL (559x762 mm ; 22.00x30.00 in)
                    • - *
                    • EN_PRINCESS (546x711 mm ; 21.50x28.00 in)
                    • - *
                    • EN_CARTRIDGE (533x660 mm ; 21.00x26.00 in)
                    • - *
                    • EN_DOUBLE_LARGE_POST (533x838 mm ; 21.00x33.00 in)
                    • - *
                    • EN_ROYAL (508x635 mm ; 20.00x25.00 in)
                    • - *
                    • EN_SHEET, EN_HALF_POST (495x597 mm ; 19.50x23.50 in)
                    • - *
                    • EN_SUPER_ROYAL (483x686 mm ; 19.00x27.00 in)
                    • - *
                    • EN_DOUBLE_POST (483x775 mm ; 19.00x30.50 in)
                    • - *
                    • EN_MEDIUM (445x584 mm ; 17.50x23.00 in)
                    • - *
                    • EN_DEMY (445x572 mm ; 17.50x22.50 in)
                    • - *
                    • EN_LARGE_POST (419x533 mm ; 16.50x21.00 in)
                    • - *
                    • EN_COPY_DRAUGHT (406x508 mm ; 16.00x20.00 in)
                    • - *
                    • EN_POST (394x489 mm ; 15.50x19.25 in)
                    • - *
                    • EN_CROWN (381x508 mm ; 15.00x20.00 in)
                    • - *
                    • EN_PINCHED_POST (375x470 mm ; 14.75x18.50 in)
                    • - *
                    • EN_BRIEF (343x406 mm ; 13.50x16.00 in)
                    • - *
                    • EN_FOOLSCAP (343x432 mm ; 13.50x17.00 in)
                    • - *
                    • EN_SMALL_FOOLSCAP (337x419 mm ; 13.25x16.50 in)
                    • - *
                    • EN_POTT (318x381 mm ; 12.50x15.00 in)
                    • - *
                    • Old Imperial Belgian
                    • - *
                    • BE_GRAND_AIGLE (700x1040 mm ; 27.56x40.94 in)
                    • - *
                    • BE_COLOMBIER (620x850 mm ; 24.41x33.46 in)
                    • - *
                    • BE_DOUBLE_CARRE (620x920 mm ; 24.41x36.22 in)
                    • - *
                    • BE_ELEPHANT (616x770 mm ; 24.25x30.31 in)
                    • - *
                    • BE_PETIT_AIGLE (600x840 mm ; 23.62x33.07 in)
                    • - *
                    • BE_GRAND_JESUS (550x730 mm ; 21.65x28.74 in)
                    • - *
                    • BE_JESUS (540x730 mm ; 21.26x28.74 in)
                    • - *
                    • BE_RAISIN (500x650 mm ; 19.69x25.59 in)
                    • - *
                    • BE_GRAND_MEDIAN (460x605 mm ; 18.11x23.82 in)
                    • - *
                    • BE_DOUBLE_POSTE (435x565 mm ; 17.13x22.24 in)
                    • - *
                    • BE_COQUILLE (430x560 mm ; 16.93x22.05 in)
                    • - *
                    • BE_PETIT_MEDIAN (415x530 mm ; 16.34x20.87 in)
                    • - *
                    • BE_RUCHE (360x460 mm ; 14.17x18.11 in)
                    • - *
                    • BE_PROPATRIA (345x430 mm ; 13.58x16.93 in)
                    • - *
                    • BE_LYS (317x397 mm ; 12.48x15.63 in)
                    • - *
                    • BE_POT (307x384 mm ; 12.09x15.12 in)
                    • - *
                    • BE_ROSETTE (270x347 mm ; 10.63x13.66 in)
                    • - *
                    • Old Imperial French
                    • - *
                    • FR_UNIVERS (1000x1300 mm ; 39.37x51.18 in)
                    • - *
                    • FR_DOUBLE_COLOMBIER (900x1260 mm ; 35.43x49.61 in)
                    • - *
                    • FR_GRANDE_MONDE (900x1260 mm ; 35.43x49.61 in)
                    • - *
                    • FR_DOUBLE_SOLEIL (800x1200 mm ; 31.50x47.24 in)
                    • - *
                    • FR_DOUBLE_JESUS (760x1120 mm ; 29.92x44.09 in)
                    • - *
                    • FR_GRAND_AIGLE (750x1060 mm ; 29.53x41.73 in)
                    • - *
                    • FR_PETIT_AIGLE (700x940 mm ; 27.56x37.01 in)
                    • - *
                    • FR_DOUBLE_RAISIN (650x1000 mm ; 25.59x39.37 in)
                    • - *
                    • FR_JOURNAL (650x940 mm ; 25.59x37.01 in)
                    • - *
                    • FR_COLOMBIER_AFFICHE (630x900 mm ; 24.80x35.43 in)
                    • - *
                    • FR_DOUBLE_CAVALIER (620x920 mm ; 24.41x36.22 in)
                    • - *
                    • FR_CLOCHE (600x800 mm ; 23.62x31.50 in)
                    • - *
                    • FR_SOLEIL (600x800 mm ; 23.62x31.50 in)
                    • - *
                    • FR_DOUBLE_CARRE (560x900 mm ; 22.05x35.43 in)
                    • - *
                    • FR_DOUBLE_COQUILLE (560x880 mm ; 22.05x34.65 in)
                    • - *
                    • FR_JESUS (560x760 mm ; 22.05x29.92 in)
                    • - *
                    • FR_RAISIN (500x650 mm ; 19.69x25.59 in)
                    • - *
                    • FR_CAVALIER (460x620 mm ; 18.11x24.41 in)
                    • - *
                    • FR_DOUBLE_COURONNE (460x720 mm ; 18.11x28.35 in)
                    • - *
                    • FR_CARRE (450x560 mm ; 17.72x22.05 in)
                    • - *
                    • FR_COQUILLE (440x560 mm ; 17.32x22.05 in)
                    • - *
                    • FR_DOUBLE_TELLIERE (440x680 mm ; 17.32x26.77 in)
                    • - *
                    • FR_DOUBLE_CLOCHE (400x600 mm ; 15.75x23.62 in)
                    • - *
                    • FR_DOUBLE_POT (400x620 mm ; 15.75x24.41 in)
                    • - *
                    • FR_ECU (400x520 mm ; 15.75x20.47 in)
                    • - *
                    • FR_COURONNE (360x460 mm ; 14.17x18.11 in)
                    • - *
                    • FR_TELLIERE (340x440 mm ; 13.39x17.32 in)
                    • - *
                    • FR_POT (310x400 mm ; 12.20x15.75 in)
                    • - *
                    - * @return array containing page width and height in points - * @public - * @since 5.0.010 (2010-05-17) - */ - public function getPageSizeFromFormat($format) { - // Paper cordinates are calculated in this way: (inches * 72) where (1 inch = 25.4 mm) - switch (strtoupper($format)) { - // ISO 216 A Series + 2 SIS 014711 extensions - case 'A0' : {$pf = array( 2383.937, 3370.394); break;} - case 'A1' : {$pf = array( 1683.780, 2383.937); break;} - case 'A2' : {$pf = array( 1190.551, 1683.780); break;} - case 'A3' : {$pf = array( 841.890, 1190.551); break;} - case 'A4' : {$pf = array( 595.276, 841.890); break;} - case 'A5' : {$pf = array( 419.528, 595.276); break;} - case 'A6' : {$pf = array( 297.638, 419.528); break;} - case 'A7' : {$pf = array( 209.764, 297.638); break;} - case 'A8' : {$pf = array( 147.402, 209.764); break;} - case 'A9' : {$pf = array( 104.882, 147.402); break;} - case 'A10': {$pf = array( 73.701, 104.882); break;} - case 'A11': {$pf = array( 51.024, 73.701); break;} - case 'A12': {$pf = array( 36.850, 51.024); break;} - // ISO 216 B Series + 2 SIS 014711 extensions - case 'B0' : {$pf = array( 2834.646, 4008.189); break;} - case 'B1' : {$pf = array( 2004.094, 2834.646); break;} - case 'B2' : {$pf = array( 1417.323, 2004.094); break;} - case 'B3' : {$pf = array( 1000.630, 1417.323); break;} - case 'B4' : {$pf = array( 708.661, 1000.630); break;} - case 'B5' : {$pf = array( 498.898, 708.661); break;} - case 'B6' : {$pf = array( 354.331, 498.898); break;} - case 'B7' : {$pf = array( 249.449, 354.331); break;} - case 'B8' : {$pf = array( 175.748, 249.449); break;} - case 'B9' : {$pf = array( 124.724, 175.748); break;} - case 'B10': {$pf = array( 87.874, 124.724); break;} - case 'B11': {$pf = array( 62.362, 87.874); break;} - case 'B12': {$pf = array( 42.520, 62.362); break;} - // ISO 216 C Series + 2 SIS 014711 extensions + 2 EXTENSION - case 'C0' : {$pf = array( 2599.370, 3676.535); break;} - case 'C1' : {$pf = array( 1836.850, 2599.370); break;} - case 'C2' : {$pf = array( 1298.268, 1836.850); break;} - case 'C3' : {$pf = array( 918.425, 1298.268); break;} - case 'C4' : {$pf = array( 649.134, 918.425); break;} - case 'C5' : {$pf = array( 459.213, 649.134); break;} - case 'C6' : {$pf = array( 323.150, 459.213); break;} - case 'C7' : {$pf = array( 229.606, 323.150); break;} - case 'C8' : {$pf = array( 161.575, 229.606); break;} - case 'C9' : {$pf = array( 113.386, 161.575); break;} - case 'C10': {$pf = array( 79.370, 113.386); break;} - case 'C11': {$pf = array( 56.693, 79.370); break;} - case 'C12': {$pf = array( 39.685, 56.693); break;} - case 'C76': {$pf = array( 229.606, 459.213); break;} - case 'DL' : {$pf = array( 311.811, 623.622); break;} - // SIS 014711 E Series - case 'E0' : {$pf = array( 2491.654, 3517.795); break;} - case 'E1' : {$pf = array( 1757.480, 2491.654); break;} - case 'E2' : {$pf = array( 1247.244, 1757.480); break;} - case 'E3' : {$pf = array( 878.740, 1247.244); break;} - case 'E4' : {$pf = array( 623.622, 878.740); break;} - case 'E5' : {$pf = array( 439.370, 623.622); break;} - case 'E6' : {$pf = array( 311.811, 439.370); break;} - case 'E7' : {$pf = array( 221.102, 311.811); break;} - case 'E8' : {$pf = array( 155.906, 221.102); break;} - case 'E9' : {$pf = array( 110.551, 155.906); break;} - case 'E10': {$pf = array( 76.535, 110.551); break;} - case 'E11': {$pf = array( 53.858, 76.535); break;} - case 'E12': {$pf = array( 36.850, 53.858); break;} - // SIS 014711 G Series - case 'G0' : {$pf = array( 2715.591, 3838.110); break;} - case 'G1' : {$pf = array( 1919.055, 2715.591); break;} - case 'G2' : {$pf = array( 1357.795, 1919.055); break;} - case 'G3' : {$pf = array( 958.110, 1357.795); break;} - case 'G4' : {$pf = array( 677.480, 958.110); break;} - case 'G5' : {$pf = array( 479.055, 677.480); break;} - case 'G6' : {$pf = array( 337.323, 479.055); break;} - case 'G7' : {$pf = array( 238.110, 337.323); break;} - case 'G8' : {$pf = array( 167.244, 238.110); break;} - case 'G9' : {$pf = array( 119.055, 167.244); break;} - case 'G10': {$pf = array( 82.205, 119.055); break;} - case 'G11': {$pf = array( 59.528, 82.205); break;} - case 'G12': {$pf = array( 39.685, 59.528); break;} - // ISO Press - case 'RA0': {$pf = array( 2437.795, 3458.268); break;} - case 'RA1': {$pf = array( 1729.134, 2437.795); break;} - case 'RA2': {$pf = array( 1218.898, 1729.134); break;} - case 'RA3': {$pf = array( 864.567, 1218.898); break;} - case 'RA4': {$pf = array( 609.449, 864.567); break;} - case 'SRA0': {$pf = array( 2551.181, 3628.346); break;} - case 'SRA1': {$pf = array( 1814.173, 2551.181); break;} - case 'SRA2': {$pf = array( 1275.591, 1814.173); break;} - case 'SRA3': {$pf = array( 907.087, 1275.591); break;} - case 'SRA4': {$pf = array( 637.795, 907.087); break;} - // German DIN 476 - case '4A0': {$pf = array( 4767.874, 6740.787); break;} - case '2A0': {$pf = array( 3370.394, 4767.874); break;} - // Variations on the ISO Standard - case 'A2_EXTRA' : {$pf = array( 1261.417, 1754.646); break;} - case 'A3+' : {$pf = array( 932.598, 1369.134); break;} - case 'A3_EXTRA' : {$pf = array( 912.756, 1261.417); break;} - case 'A3_SUPER' : {$pf = array( 864.567, 1440.000); break;} - case 'SUPER_A3' : {$pf = array( 864.567, 1380.472); break;} - case 'A4_EXTRA' : {$pf = array( 666.142, 912.756); break;} - case 'A4_SUPER' : {$pf = array( 649.134, 912.756); break;} - case 'SUPER_A4' : {$pf = array( 643.465, 1009.134); break;} - case 'A4_LONG' : {$pf = array( 595.276, 986.457); break;} - case 'F4' : {$pf = array( 595.276, 935.433); break;} - case 'SO_B5_EXTRA': {$pf = array( 572.598, 782.362); break;} - case 'A5_EXTRA' : {$pf = array( 490.394, 666.142); break;} - // ANSI Series - case 'ANSI_E': {$pf = array( 2448.000, 3168.000); break;} - case 'ANSI_D': {$pf = array( 1584.000, 2448.000); break;} - case 'ANSI_C': {$pf = array( 1224.000, 1584.000); break;} - case 'ANSI_B': {$pf = array( 792.000, 1224.000); break;} - case 'ANSI_A': {$pf = array( 612.000, 792.000); break;} - // Traditional 'Loose' North American Paper Sizes - case 'USLEDGER': - case 'LEDGER' : {$pf = array( 1224.000, 792.000); break;} - case 'ORGANIZERK': - case 'BIBLE': - case 'USTABLOID': - case 'TABLOID': {$pf = array( 792.000, 1224.000); break;} - case 'ORGANIZERM': - case 'USLETTER': - case 'LETTER' : {$pf = array( 612.000, 792.000); break;} - case 'USLEGAL': - case 'LEGAL' : {$pf = array( 612.000, 1008.000); break;} - case 'GOVERNMENTLETTER': - case 'GLETTER': {$pf = array( 576.000, 756.000); break;} - case 'JUNIORLEGAL': - case 'JLEGAL' : {$pf = array( 576.000, 360.000); break;} - // Other North American Paper Sizes - case 'QUADDEMY': {$pf = array( 2520.000, 3240.000); break;} - case 'SUPER_B': {$pf = array( 936.000, 1368.000); break;} - case 'QUARTO': {$pf = array( 648.000, 792.000); break;} - case 'GOVERNMENTLEGAL': - case 'FOLIO': {$pf = array( 612.000, 936.000); break;} - case 'MONARCH': - case 'EXECUTIVE': {$pf = array( 522.000, 756.000); break;} - case 'ORGANIZERL': - case 'STATEMENT': - case 'MEMO': {$pf = array( 396.000, 612.000); break;} - case 'FOOLSCAP': {$pf = array( 595.440, 936.000); break;} - case 'COMPACT': {$pf = array( 306.000, 486.000); break;} - case 'ORGANIZERJ': {$pf = array( 198.000, 360.000); break;} - // Canadian standard CAN 2-9.60M - case 'P1': {$pf = array( 1587.402, 2437.795); break;} - case 'P2': {$pf = array( 1218.898, 1587.402); break;} - case 'P3': {$pf = array( 793.701, 1218.898); break;} - case 'P4': {$pf = array( 609.449, 793.701); break;} - case 'P5': {$pf = array( 396.850, 609.449); break;} - case 'P6': {$pf = array( 303.307, 396.850); break;} - // North American Architectural Sizes - case 'ARCH_E' : {$pf = array( 2592.000, 3456.000); break;} - case 'ARCH_E1': {$pf = array( 2160.000, 3024.000); break;} - case 'ARCH_D' : {$pf = array( 1728.000, 2592.000); break;} - case 'BROADSHEET': - case 'ARCH_C' : {$pf = array( 1296.000, 1728.000); break;} - case 'ARCH_B' : {$pf = array( 864.000, 1296.000); break;} - case 'ARCH_A' : {$pf = array( 648.000, 864.000); break;} - // --- North American Envelope Sizes --- - // - Announcement Envelopes - case 'ANNENV_A2' : {$pf = array( 314.640, 414.000); break;} - case 'ANNENV_A6' : {$pf = array( 342.000, 468.000); break;} - case 'ANNENV_A7' : {$pf = array( 378.000, 522.000); break;} - case 'ANNENV_A8' : {$pf = array( 396.000, 584.640); break;} - case 'ANNENV_A10' : {$pf = array( 450.000, 692.640); break;} - case 'ANNENV_SLIM': {$pf = array( 278.640, 638.640); break;} - // - Commercial Envelopes - case 'COMMENV_N6_1/4': {$pf = array( 252.000, 432.000); break;} - case 'COMMENV_N6_3/4': {$pf = array( 260.640, 468.000); break;} - case 'COMMENV_N8' : {$pf = array( 278.640, 540.000); break;} - case 'COMMENV_N9' : {$pf = array( 278.640, 638.640); break;} - case 'COMMENV_N10' : {$pf = array( 296.640, 684.000); break;} - case 'COMMENV_N11' : {$pf = array( 324.000, 746.640); break;} - case 'COMMENV_N12' : {$pf = array( 342.000, 792.000); break;} - case 'COMMENV_N14' : {$pf = array( 360.000, 828.000); break;} - // - Catalogue Envelopes - case 'CATENV_N1' : {$pf = array( 432.000, 648.000); break;} - case 'CATENV_N1_3/4' : {$pf = array( 468.000, 684.000); break;} - case 'CATENV_N2' : {$pf = array( 468.000, 720.000); break;} - case 'CATENV_N3' : {$pf = array( 504.000, 720.000); break;} - case 'CATENV_N6' : {$pf = array( 540.000, 756.000); break;} - case 'CATENV_N7' : {$pf = array( 576.000, 792.000); break;} - case 'CATENV_N8' : {$pf = array( 594.000, 810.000); break;} - case 'CATENV_N9_1/2' : {$pf = array( 612.000, 756.000); break;} - case 'CATENV_N9_3/4' : {$pf = array( 630.000, 810.000); break;} - case 'CATENV_N10_1/2': {$pf = array( 648.000, 864.000); break;} - case 'CATENV_N12_1/2': {$pf = array( 684.000, 900.000); break;} - case 'CATENV_N13_1/2': {$pf = array( 720.000, 936.000); break;} - case 'CATENV_N14_1/4': {$pf = array( 810.000, 882.000); break;} - case 'CATENV_N14_1/2': {$pf = array( 828.000, 1044.000); break;} - // Japanese (JIS P 0138-61) Standard B-Series - case 'JIS_B0' : {$pf = array( 2919.685, 4127.244); break;} - case 'JIS_B1' : {$pf = array( 2063.622, 2919.685); break;} - case 'JIS_B2' : {$pf = array( 1459.843, 2063.622); break;} - case 'JIS_B3' : {$pf = array( 1031.811, 1459.843); break;} - case 'JIS_B4' : {$pf = array( 728.504, 1031.811); break;} - case 'JIS_B5' : {$pf = array( 515.906, 728.504); break;} - case 'JIS_B6' : {$pf = array( 362.835, 515.906); break;} - case 'JIS_B7' : {$pf = array( 257.953, 362.835); break;} - case 'JIS_B8' : {$pf = array( 181.417, 257.953); break;} - case 'JIS_B9' : {$pf = array( 127.559, 181.417); break;} - case 'JIS_B10': {$pf = array( 90.709, 127.559); break;} - case 'JIS_B11': {$pf = array( 62.362, 90.709); break;} - case 'JIS_B12': {$pf = array( 45.354, 62.362); break;} - // PA Series - case 'PA0' : {$pf = array( 2381.102, 3174.803,); break;} - case 'PA1' : {$pf = array( 1587.402, 2381.102); break;} - case 'PA2' : {$pf = array( 1190.551, 1587.402); break;} - case 'PA3' : {$pf = array( 793.701, 1190.551); break;} - case 'PA4' : {$pf = array( 595.276, 793.701); break;} - case 'PA5' : {$pf = array( 396.850, 595.276); break;} - case 'PA6' : {$pf = array( 297.638, 396.850); break;} - case 'PA7' : {$pf = array( 198.425, 297.638); break;} - case 'PA8' : {$pf = array( 147.402, 198.425); break;} - case 'PA9' : {$pf = array( 99.213, 147.402); break;} - case 'PA10': {$pf = array( 73.701, 99.213); break;} - // Standard Photographic Print Sizes - case 'PASSPORT_PHOTO': {$pf = array( 99.213, 127.559); break;} - case 'E' : {$pf = array( 233.858, 340.157); break;} - case 'L': - case '3R' : {$pf = array( 252.283, 360.000); break;} - case 'KG': - case '4R' : {$pf = array( 289.134, 430.866); break;} - case '4D' : {$pf = array( 340.157, 430.866); break;} - case '2L': - case '5R' : {$pf = array( 360.000, 504.567); break;} - case '8P': - case '6R' : {$pf = array( 430.866, 575.433); break;} - case '6P': - case '8R' : {$pf = array( 575.433, 720.000); break;} - case '6PW': - case 'S8R' : {$pf = array( 575.433, 864.567); break;} - case '4P': - case '10R' : {$pf = array( 720.000, 864.567); break;} - case '4PW': - case 'S10R': {$pf = array( 720.000, 1080.000); break;} - case '11R' : {$pf = array( 790.866, 1009.134); break;} - case 'S11R': {$pf = array( 790.866, 1224.567); break;} - case '12R' : {$pf = array( 864.567, 1080.000); break;} - case 'S12R': {$pf = array( 864.567, 1292.598); break;} - // Common Newspaper Sizes - case 'NEWSPAPER_BROADSHEET': {$pf = array( 2125.984, 1700.787); break;} - case 'NEWSPAPER_BERLINER' : {$pf = array( 1332.283, 892.913); break;} - case 'NEWSPAPER_TABLOID': - case 'NEWSPAPER_COMPACT' : {$pf = array( 1218.898, 793.701); break;} - // Business Cards - case 'CREDIT_CARD': - case 'BUSINESS_CARD': - case 'BUSINESS_CARD_ISO7810': {$pf = array( 153.014, 242.646); break;} - case 'BUSINESS_CARD_ISO216' : {$pf = array( 147.402, 209.764); break;} - case 'BUSINESS_CARD_IT': - case 'BUSINESS_CARD_UK': - case 'BUSINESS_CARD_FR': - case 'BUSINESS_CARD_DE': - case 'BUSINESS_CARD_ES' : {$pf = array( 155.906, 240.945); break;} - case 'BUSINESS_CARD_CA': - case 'BUSINESS_CARD_US' : {$pf = array( 144.567, 252.283); break;} - case 'BUSINESS_CARD_JP' : {$pf = array( 155.906, 257.953); break;} - case 'BUSINESS_CARD_HK' : {$pf = array( 153.071, 255.118); break;} - case 'BUSINESS_CARD_AU': - case 'BUSINESS_CARD_DK': - case 'BUSINESS_CARD_SE' : {$pf = array( 155.906, 255.118); break;} - case 'BUSINESS_CARD_RU': - case 'BUSINESS_CARD_CZ': - case 'BUSINESS_CARD_FI': - case 'BUSINESS_CARD_HU': - case 'BUSINESS_CARD_IL' : {$pf = array( 141.732, 255.118); break;} - // Billboards - case '4SHEET' : {$pf = array( 2880.000, 4320.000); break;} - case '6SHEET' : {$pf = array( 3401.575, 5102.362); break;} - case '12SHEET': {$pf = array( 8640.000, 4320.000); break;} - case '16SHEET': {$pf = array( 5760.000, 8640.000); break;} - case '32SHEET': {$pf = array(11520.000, 8640.000); break;} - case '48SHEET': {$pf = array(17280.000, 8640.000); break;} - case '64SHEET': {$pf = array(23040.000, 8640.000); break;} - case '96SHEET': {$pf = array(34560.000, 8640.000); break;} - // Old European Sizes - // - Old Imperial English Sizes - case 'EN_EMPEROR' : {$pf = array( 3456.000, 5184.000); break;} - case 'EN_ANTIQUARIAN' : {$pf = array( 2232.000, 3816.000); break;} - case 'EN_GRAND_EAGLE' : {$pf = array( 2070.000, 3024.000); break;} - case 'EN_DOUBLE_ELEPHANT' : {$pf = array( 1926.000, 2880.000); break;} - case 'EN_ATLAS' : {$pf = array( 1872.000, 2448.000); break;} - case 'EN_COLOMBIER' : {$pf = array( 1692.000, 2484.000); break;} - case 'EN_ELEPHANT' : {$pf = array( 1656.000, 2016.000); break;} - case 'EN_DOUBLE_DEMY' : {$pf = array( 1620.000, 2556.000); break;} - case 'EN_IMPERIAL' : {$pf = array( 1584.000, 2160.000); break;} - case 'EN_PRINCESS' : {$pf = array( 1548.000, 2016.000); break;} - case 'EN_CARTRIDGE' : {$pf = array( 1512.000, 1872.000); break;} - case 'EN_DOUBLE_LARGE_POST': {$pf = array( 1512.000, 2376.000); break;} - case 'EN_ROYAL' : {$pf = array( 1440.000, 1800.000); break;} - case 'EN_SHEET': - case 'EN_HALF_POST' : {$pf = array( 1404.000, 1692.000); break;} - case 'EN_SUPER_ROYAL' : {$pf = array( 1368.000, 1944.000); break;} - case 'EN_DOUBLE_POST' : {$pf = array( 1368.000, 2196.000); break;} - case 'EN_MEDIUM' : {$pf = array( 1260.000, 1656.000); break;} - case 'EN_DEMY' : {$pf = array( 1260.000, 1620.000); break;} - case 'EN_LARGE_POST' : {$pf = array( 1188.000, 1512.000); break;} - case 'EN_COPY_DRAUGHT' : {$pf = array( 1152.000, 1440.000); break;} - case 'EN_POST' : {$pf = array( 1116.000, 1386.000); break;} - case 'EN_CROWN' : {$pf = array( 1080.000, 1440.000); break;} - case 'EN_PINCHED_POST' : {$pf = array( 1062.000, 1332.000); break;} - case 'EN_BRIEF' : {$pf = array( 972.000, 1152.000); break;} - case 'EN_FOOLSCAP' : {$pf = array( 972.000, 1224.000); break;} - case 'EN_SMALL_FOOLSCAP' : {$pf = array( 954.000, 1188.000); break;} - case 'EN_POTT' : {$pf = array( 900.000, 1080.000); break;} - // - Old Imperial Belgian Sizes - case 'BE_GRAND_AIGLE' : {$pf = array( 1984.252, 2948.031); break;} - case 'BE_COLOMBIER' : {$pf = array( 1757.480, 2409.449); break;} - case 'BE_DOUBLE_CARRE': {$pf = array( 1757.480, 2607.874); break;} - case 'BE_ELEPHANT' : {$pf = array( 1746.142, 2182.677); break;} - case 'BE_PETIT_AIGLE' : {$pf = array( 1700.787, 2381.102); break;} - case 'BE_GRAND_JESUS' : {$pf = array( 1559.055, 2069.291); break;} - case 'BE_JESUS' : {$pf = array( 1530.709, 2069.291); break;} - case 'BE_RAISIN' : {$pf = array( 1417.323, 1842.520); break;} - case 'BE_GRAND_MEDIAN': {$pf = array( 1303.937, 1714.961); break;} - case 'BE_DOUBLE_POSTE': {$pf = array( 1233.071, 1601.575); break;} - case 'BE_COQUILLE' : {$pf = array( 1218.898, 1587.402); break;} - case 'BE_PETIT_MEDIAN': {$pf = array( 1176.378, 1502.362); break;} - case 'BE_RUCHE' : {$pf = array( 1020.472, 1303.937); break;} - case 'BE_PROPATRIA' : {$pf = array( 977.953, 1218.898); break;} - case 'BE_LYS' : {$pf = array( 898.583, 1125.354); break;} - case 'BE_POT' : {$pf = array( 870.236, 1088.504); break;} - case 'BE_ROSETTE' : {$pf = array( 765.354, 983.622); break;} - // - Old Imperial French Sizes - case 'FR_UNIVERS' : {$pf = array( 2834.646, 3685.039); break;} - case 'FR_DOUBLE_COLOMBIER' : {$pf = array( 2551.181, 3571.654); break;} - case 'FR_GRANDE_MONDE' : {$pf = array( 2551.181, 3571.654); break;} - case 'FR_DOUBLE_SOLEIL' : {$pf = array( 2267.717, 3401.575); break;} - case 'FR_DOUBLE_JESUS' : {$pf = array( 2154.331, 3174.803); break;} - case 'FR_GRAND_AIGLE' : {$pf = array( 2125.984, 3004.724); break;} - case 'FR_PETIT_AIGLE' : {$pf = array( 1984.252, 2664.567); break;} - case 'FR_DOUBLE_RAISIN' : {$pf = array( 1842.520, 2834.646); break;} - case 'FR_JOURNAL' : {$pf = array( 1842.520, 2664.567); break;} - case 'FR_COLOMBIER_AFFICHE': {$pf = array( 1785.827, 2551.181); break;} - case 'FR_DOUBLE_CAVALIER' : {$pf = array( 1757.480, 2607.874); break;} - case 'FR_CLOCHE' : {$pf = array( 1700.787, 2267.717); break;} - case 'FR_SOLEIL' : {$pf = array( 1700.787, 2267.717); break;} - case 'FR_DOUBLE_CARRE' : {$pf = array( 1587.402, 2551.181); break;} - case 'FR_DOUBLE_COQUILLE' : {$pf = array( 1587.402, 2494.488); break;} - case 'FR_JESUS' : {$pf = array( 1587.402, 2154.331); break;} - case 'FR_RAISIN' : {$pf = array( 1417.323, 1842.520); break;} - case 'FR_CAVALIER' : {$pf = array( 1303.937, 1757.480); break;} - case 'FR_DOUBLE_COURONNE' : {$pf = array( 1303.937, 2040.945); break;} - case 'FR_CARRE' : {$pf = array( 1275.591, 1587.402); break;} - case 'FR_COQUILLE' : {$pf = array( 1247.244, 1587.402); break;} - case 'FR_DOUBLE_TELLIERE' : {$pf = array( 1247.244, 1927.559); break;} - case 'FR_DOUBLE_CLOCHE' : {$pf = array( 1133.858, 1700.787); break;} - case 'FR_DOUBLE_POT' : {$pf = array( 1133.858, 1757.480); break;} - case 'FR_ECU' : {$pf = array( 1133.858, 1474.016); break;} - case 'FR_COURONNE' : {$pf = array( 1020.472, 1303.937); break;} - case 'FR_TELLIERE' : {$pf = array( 963.780, 1247.244); break;} - case 'FR_POT' : {$pf = array( 878.740, 1133.858); break;} - // DEFAULT ISO A4 - default: {$pf = array( 595.276, 841.890); break;} - } - return $pf; - } - /** * Change the format of the current page * @param $format (mixed) The format used for pages. It can be either: one of the string values specified at getPageSizeFromFormat() documentation or an array of two numners (width, height) or an array containing the following measures and options:
                      @@ -2929,13 +2128,13 @@ class TCPDF { } if (is_string($format)) { // get page measures from format name - $pf = $this->getPageSizeFromFormat($format); + $pf = TCPDF_STATIC::getPageSizeFromFormat($format); $this->fwPt = $pf[0]; $this->fhPt = $pf[1]; } else { // the boundaries of the physical medium on which the page shall be displayed or printed if (isset($format['MediaBox'])) { - $this->setPageBoxes($this->page, 'MediaBox', $format['MediaBox']['llx'], $format['MediaBox']['lly'], $format['MediaBox']['urx'], $format['MediaBox']['ury'], false); + $this->pagedim = TCPDF_STATIC::setPageBoxes($this->page, 'MediaBox', $format['MediaBox']['llx'], $format['MediaBox']['lly'], $format['MediaBox']['urx'], $format['MediaBox']['ury'], false, $this->k, $this->pagedim); $this->fwPt = (($format['MediaBox']['urx'] - $format['MediaBox']['llx']) * $this->k); $this->fhPt = (($format['MediaBox']['ury'] - $format['MediaBox']['lly']) * $this->k); } else { @@ -2946,27 +2145,27 @@ class TCPDF { // default value $format['format'] = 'A4'; } - $pf = $this->getPageSizeFromFormat($format['format']); + $pf = TCPDF_STATIC::getPageSizeFromFormat($format['format']); } $this->fwPt = $pf[0]; $this->fhPt = $pf[1]; - $this->setPageBoxes($this->page, 'MediaBox', 0, 0, $this->fwPt, $this->fhPt, true); + $this->pagedim = TCPDF_STATIC::setPageBoxes($this->page, 'MediaBox', 0, 0, $this->fwPt, $this->fhPt, true, $this->k, $this->pagedim); } // the visible region of default user space if (isset($format['CropBox'])) { - $this->setPageBoxes($this->page, 'CropBox', $format['CropBox']['llx'], $format['CropBox']['lly'], $format['CropBox']['urx'], $format['CropBox']['ury'], false); + $this->pagedim = TCPDF_STATIC::setPageBoxes($this->page, 'CropBox', $format['CropBox']['llx'], $format['CropBox']['lly'], $format['CropBox']['urx'], $format['CropBox']['ury'], false, $this->k, $this->pagedim); } // the region to which the contents of the page shall be clipped when output in a production environment if (isset($format['BleedBox'])) { - $this->setPageBoxes($this->page, 'BleedBox', $format['BleedBox']['llx'], $format['BleedBox']['lly'], $format['BleedBox']['urx'], $format['BleedBox']['ury'], false); + $this->pagedim = TCPDF_STATIC::setPageBoxes($this->page, 'BleedBox', $format['BleedBox']['llx'], $format['BleedBox']['lly'], $format['BleedBox']['urx'], $format['BleedBox']['ury'], false, $this->k, $this->pagedim); } // the intended dimensions of the finished page after trimming if (isset($format['TrimBox'])) { - $this->setPageBoxes($this->page, 'TrimBox', $format['TrimBox']['llx'], $format['TrimBox']['lly'], $format['TrimBox']['urx'], $format['TrimBox']['ury'], false); + $this->pagedim = TCPDF_STATIC::setPageBoxes($this->page, 'TrimBox', $format['TrimBox']['llx'], $format['TrimBox']['lly'], $format['TrimBox']['urx'], $format['TrimBox']['ury'], false, $this->k, $this->pagedim); } // the page's meaningful content (including potential white space) if (isset($format['ArtBox'])) { - $this->setPageBoxes($this->page, 'ArtBox', $format['ArtBox']['llx'], $format['ArtBox']['lly'], $format['ArtBox']['urx'], $format['ArtBox']['ury'], false); + $this->pagedim = TCPDF_STATIC::setPageBoxes($this->page, 'ArtBox', $format['ArtBox']['llx'], $format['ArtBox']['lly'], $format['ArtBox']['urx'], $format['ArtBox']['ury'], false, $this->k, $this->pagedim); } // specify the colours and other visual characteristics that should be used in displaying guidelines on the screen for the various page boundaries if (isset($format['BoxColorInfo'])) { @@ -3028,59 +2227,6 @@ class TCPDF { $this->setPageOrientation($orientation); } - /** - * Set page boundaries. - * @param $page (int) page number - * @param $type (string) valid values are:
                      • 'MediaBox' : the boundaries of the physical medium on which the page shall be displayed or printed;
                      • 'CropBox' : the visible region of default user space;
                      • 'BleedBox' : the region to which the contents of the page shall be clipped when output in a production environment;
                      • 'TrimBox' : the intended dimensions of the finished page after trimming;
                      • 'ArtBox' : the page's meaningful content (including potential white space).
                      - * @param $llx (float) lower-left x coordinate in user units - * @param $lly (float) lower-left y coordinate in user units - * @param $urx (float) upper-right x coordinate in user units - * @param $ury (float) upper-right y coordinate in user units - * @param $points (boolean) if true uses user units as unit of measure, otherwise uses PDF points - * @public - * @since 5.0.010 (2010-05-17) - */ - public function setPageBoxes($page, $type, $llx, $lly, $urx, $ury, $points=false) { - if (!isset($this->pagedim[$page])) { - // initialize array - $this->pagedim[$page] = array(); - } - $pageboxes = array('MediaBox', 'CropBox', 'BleedBox', 'TrimBox', 'ArtBox'); - if (!in_array($type, $pageboxes)) { - return; - } - if ($points) { - $k = 1; - } else { - $k = $this->k; - } - $this->pagedim[$page][$type]['llx'] = ($llx * $k); - $this->pagedim[$page][$type]['lly'] = ($lly * $k); - $this->pagedim[$page][$type]['urx'] = ($urx * $k); - $this->pagedim[$page][$type]['ury'] = ($ury * $k); - } - - /** - * Swap X and Y coordinates of page boxes (change page boxes orientation). - * @param $page (int) page number - * @protected - * @since 5.0.010 (2010-05-17) - */ - protected function swapPageBoxCoordinates($page) { - $pageboxes = array('MediaBox', 'CropBox', 'BleedBox', 'TrimBox', 'ArtBox'); - foreach ($pageboxes as $type) { - // swap X and Y coordinates - if (isset($this->pagedim[$page][$type])) { - $tmp = $this->pagedim[$page][$type]['llx']; - $this->pagedim[$page][$type]['llx'] = $this->pagedim[$page][$type]['lly']; - $this->pagedim[$page][$type]['lly'] = $tmp; - $tmp = $this->pagedim[$page][$type]['urx']; - $this->pagedim[$page][$type]['urx'] = $this->pagedim[$page][$type]['ury']; - $this->pagedim[$page][$type]['ury'] = $tmp; - } - } - } - /** * Set page orientation. * @param $orientation (string) page orientation. Possible values are (case insensitive):
                      • P or Portrait (default)
                      • L or Landscape
                      • '' (empty string) for automatic orientation
                      @@ -3092,23 +2238,23 @@ class TCPDF { public function setPageOrientation($orientation, $autopagebreak='', $bottommargin='') { if (!isset($this->pagedim[$this->page]['MediaBox'])) { // the boundaries of the physical medium on which the page shall be displayed or printed - $this->setPageBoxes($this->page, 'MediaBox', 0, 0, $this->fwPt, $this->fhPt, true); + $this->pagedim = TCPDF_STATIC::setPageBoxes($this->page, 'MediaBox', 0, 0, $this->fwPt, $this->fhPt, true, $this->k, $this->pagedim); } if (!isset($this->pagedim[$this->page]['CropBox'])) { // the visible region of default user space - $this->setPageBoxes($this->page, 'CropBox', $this->pagedim[$this->page]['MediaBox']['llx'], $this->pagedim[$this->page]['MediaBox']['lly'], $this->pagedim[$this->page]['MediaBox']['urx'], $this->pagedim[$this->page]['MediaBox']['ury'], true); + $this->pagedim = TCPDF_STATIC::setPageBoxes($this->page, 'CropBox', $this->pagedim[$this->page]['MediaBox']['llx'], $this->pagedim[$this->page]['MediaBox']['lly'], $this->pagedim[$this->page]['MediaBox']['urx'], $this->pagedim[$this->page]['MediaBox']['ury'], true, $this->k, $this->pagedim); } if (!isset($this->pagedim[$this->page]['BleedBox'])) { // the region to which the contents of the page shall be clipped when output in a production environment - $this->setPageBoxes($this->page, 'BleedBox', $this->pagedim[$this->page]['CropBox']['llx'], $this->pagedim[$this->page]['CropBox']['lly'], $this->pagedim[$this->page]['CropBox']['urx'], $this->pagedim[$this->page]['CropBox']['ury'], true); + $this->pagedim = TCPDF_STATIC::setPageBoxes($this->page, 'BleedBox', $this->pagedim[$this->page]['CropBox']['llx'], $this->pagedim[$this->page]['CropBox']['lly'], $this->pagedim[$this->page]['CropBox']['urx'], $this->pagedim[$this->page]['CropBox']['ury'], true, $this->k, $this->pagedim); } if (!isset($this->pagedim[$this->page]['TrimBox'])) { // the intended dimensions of the finished page after trimming - $this->setPageBoxes($this->page, 'TrimBox', $this->pagedim[$this->page]['CropBox']['llx'], $this->pagedim[$this->page]['CropBox']['lly'], $this->pagedim[$this->page]['CropBox']['urx'], $this->pagedim[$this->page]['CropBox']['ury'], true); + $this->pagedim = TCPDF_STATIC::setPageBoxes($this->page, 'TrimBox', $this->pagedim[$this->page]['CropBox']['llx'], $this->pagedim[$this->page]['CropBox']['lly'], $this->pagedim[$this->page]['CropBox']['urx'], $this->pagedim[$this->page]['CropBox']['ury'], true, $this->k, $this->pagedim); } if (!isset($this->pagedim[$this->page]['ArtBox'])) { // the page's meaningful content (including potential white space) - $this->setPageBoxes($this->page, 'ArtBox', $this->pagedim[$this->page]['CropBox']['llx'], $this->pagedim[$this->page]['CropBox']['lly'], $this->pagedim[$this->page]['CropBox']['urx'], $this->pagedim[$this->page]['CropBox']['ury'], true); + $this->pagedim = TCPDF_STATIC::setPageBoxes($this->page, 'ArtBox', $this->pagedim[$this->page]['CropBox']['llx'], $this->pagedim[$this->page]['CropBox']['lly'], $this->pagedim[$this->page]['CropBox']['urx'], $this->pagedim[$this->page]['CropBox']['ury'], true, $this->k, $this->pagedim); } if (!isset($this->pagedim[$this->page]['Rotate'])) { // The number of degrees by which the page shall be rotated clockwise when displayed or printed. The value shall be a multiple of 90. @@ -3142,18 +2288,18 @@ class TCPDF { } if ((abs($this->pagedim[$this->page]['MediaBox']['urx'] - $this->hPt) < $this->feps) AND (abs($this->pagedim[$this->page]['MediaBox']['ury'] - $this->wPt) < $this->feps)){ // swap X and Y coordinates (change page orientation) - $this->swapPageBoxCoordinates($this->page); + $this->pagedim = TCPDF_STATIC::swapPageBoxCoordinates($this->page, $this->pagedim); } $this->w = ($this->wPt / $this->k); $this->h = ($this->hPt / $this->k); - if ($this->empty_string($autopagebreak)) { + if (TCPDF_STATIC::empty_string($autopagebreak)) { if (isset($this->AutoPageBreak)) { $autopagebreak = $this->AutoPageBreak; } else { $autopagebreak = true; } } - if ($this->empty_string($bottommargin)) { + if (TCPDF_STATIC::empty_string($bottommargin)) { if (isset($this->bMargin)) { $bottommargin = $this->bMargin; } else { @@ -3677,68 +2823,8 @@ class TCPDF { } else { $this->Error('Incorrect zoom display mode: '.$zoom); } - switch ($layout) { - case 'default': - case 'single': - case 'SinglePage': { - $this->LayoutMode = 'SinglePage'; - break; - } - case 'continuous': - case 'OneColumn': { - $this->LayoutMode = 'OneColumn'; - break; - } - case 'two': - case 'TwoColumnLeft': { - $this->LayoutMode = 'TwoColumnLeft'; - break; - } - case 'TwoColumnRight': { - $this->LayoutMode = 'TwoColumnRight'; - break; - } - case 'TwoPageLeft': { - $this->LayoutMode = 'TwoPageLeft'; - break; - } - case 'TwoPageRight': { - $this->LayoutMode = 'TwoPageRight'; - break; - } - default: { - $this->LayoutMode = 'SinglePage'; - } - } - switch ($mode) { - case 'UseNone': { - $this->PageMode = 'UseNone'; - break; - } - case 'UseOutlines': { - $this->PageMode = 'UseOutlines'; - break; - } - case 'UseThumbs': { - $this->PageMode = 'UseThumbs'; - break; - } - case 'FullScreen': { - $this->PageMode = 'FullScreen'; - break; - } - case 'UseOC': { - $this->PageMode = 'UseOC'; - break; - } - case '': { - $this->PageMode = 'UseAttachments'; - break; - } - default: { - $this->PageMode = 'UseNone'; - } - } + $this->LayoutMode = TCPDF_STATIC::getPageLayoutMode($layout); + $this->PageMode = TCPDF_STATIC::getPageMode($mode); } /** @@ -3833,8 +2919,7 @@ class TCPDF { } /** - * This method is automatically called in case of fatal error; it simply outputs the message and halts the execution. An inherited class may override it to customize the error handling but should always halt the script, or the resulting document would probably be invalid. - * 2004-06-11 :: Nicola Asuni : changed bold tag with strong + * Throw an exception or print an error message and die if the K_TCPDF_PARSER_THROW_EXCEPTION_ERROR constant is set to true. * @param $msg (string) The error message * @public * @since 1.0 @@ -3842,9 +2927,7 @@ class TCPDF { public function Error($msg) { // unset all class variables $this->_destroy(true); - $phpmainver = PHP_VERSION; - // exit program and print error - if ((intval($phpmainver[0]) < 5) OR !defined('K_TCPDF_THROW_EXCEPTION_ERROR') OR !K_TCPDF_THROW_EXCEPTION_ERROR) { + if (defined('K_TCPDF_THROW_EXCEPTION_ERROR') AND !K_TCPDF_THROW_EXCEPTION_ERROR) { die('TCPDF ERROR: '.$msg); } else { throw new Exception('TCPDF ERROR: '.$msg); @@ -4325,7 +3408,7 @@ class TCPDF { $this->x = $this->original_lMargin; } if (($headerdata['logo']) AND ($headerdata['logo'] != K_BLANK_IMAGE)) { - $imgtype = $this->getImageFileType(K_PATH_IMAGES.$headerdata['logo']); + $imgtype = TCPDF_IMAGES::getImageFileType(K_PATH_IMAGES.$headerdata['logo']); if (($imgtype == 'eps') OR ($imgtype == 'ai')) { $this->ImageEps(K_PATH_IMAGES.$headerdata['logo'], '', '', $headerdata['logo_width']); } elseif ($imgtype == 'svg') { @@ -4552,7 +3635,7 @@ class TCPDF { $this->pagedim[$this->page]['tm'] = $this->tMargin; $this->y = $this->tMargin; } - if (!$this->empty_string($this->thead) AND (!$this->inthead)) { + if (!TCPDF_STATIC::empty_string($this->thead) AND (!$this->inthead)) { // set margins $prev_lMargin = $this->lMargin; $prev_rMargin = $this->rMargin; @@ -4624,26 +3707,6 @@ class TCPDF { } } - /** - * Return the Spot color array. - * @param $name (string) Name of the spot color. - * @return (array) Spot color array or false if not defined. - * @public - * @since 5.9.125 (2011-10-03) - */ - public function getSpotColor($name) { - if (isset($this->spot_colors[$name])) { - return $this->spot_colors[$name]; - } - $color = preg_replace('/[\s]*/', '', $name); // remove extra spaces - $color = strtolower($color); - if (isset($this->spotcolor[$color])) { - $this->AddSpotColor($this->spotcolor[$color][4], $this->spotcolor[$color][0], $this->spotcolor[$color][1], $this->spotcolor[$color][2], $this->spotcolor[$color][3]); - return $this->spot_colors[$this->spotcolor[$color][4]]; - } - return false; - } - /** * Set the spot color for the specified type ('draw', 'fill', 'text'). * @param $type (string) Type of object affected by this color: ('draw', 'fill', 'text'). @@ -4654,7 +3717,7 @@ class TCPDF { * @since 5.9.125 (2011-10-03) */ public function setSpotColor($type, $name, $tint=100) { - $spotcolor = $this->getSpotColor($name); + $spotcolor = TCPDF_COLORS::getSpotColor($name, $this->spot_colors); if ($spotcolor === false) { $this->Error('Undefined spot color: '.$name.', you must add it on the spotcolors.php file.'); } @@ -4890,37 +3953,6 @@ class TCPDF { return ''; } - /** - * Convert a color array into a string representation. - * @param $c (array) Array of colors. - * @return (string) The color array representation. - * @protected - * @since 5.9.137 (2011-12-01) - */ - protected function getColorStringFromArray($c) { - $c = array_values($c); - $color = '['; - switch (count($c)) { - case 4: { - // CMYK - $color .= sprintf('%F %F %F %F', (max(0, min(100, floatval($c[0]))) / 100), (max(0, min(100, floatval($c[1]))) / 100), (max(0, min(100, floatval($c[2]))) / 100), (max(0, min(100, floatval($c[3]))) / 100)); - break; - } - case 3: { - // RGB - $color .= sprintf('%F %F %F', (max(0, min(255, floatval($c[0]))) / 255), (max(0, min(255, floatval($c[1]))) / 255), (max(0, min(255, floatval($c[2]))) / 255)); - break; - } - case 1: { - // grayscale - $color .= sprintf('%F', (max(0, min(255, floatval($c[0]))) / 255)); - break; - } - } - $color .= ']'; - return $color; - } - /** * Defines the color used for all drawing operations (lines, rectangles and cell borders). It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page. * @param $col1 (float) GRAY level for single color, or Red color for RGB (0-255), or CYAN color for CMYK (0-100). @@ -4976,7 +4008,7 @@ class TCPDF { * Returns the length of a string in user unit. A font must be selected.
                      * @param $s (string) The string whose length is to be computed * @param $fontname (string) Family font. It can be either a name defined by AddFont() or one of the standard families. It is also possible to pass an empty string, in that case, the current family is retained. - * @param $fontstyle (string) Font style. Possible values are (case insensitive):
                      • empty string: regular
                      • B: bold
                      • I: italic
                      • U: underline
                      • D: line-trough
                      • O: overline
                      or any combination. The default value is regular. + * @param $fontstyle (string) Font style. Possible values are (case insensitive):
                      • empty string: regular
                      • B: bold
                      • I: italic
                      • U: underline
                      • D: line-through
                      • O: overline
                      or any combination. The default value is regular. * @param $fontsize (float) Font size in points. The default value is the current size. * @param $getarray (boolean) if true returns an array of characters widths, if false returns the total length. * @return mixed int total string length or array of characted widths @@ -4985,14 +4017,14 @@ class TCPDF { * @since 1.2 */ public function GetStringWidth($s, $fontname='', $fontstyle='', $fontsize=0, $getarray=false) { - return $this->GetArrStringWidth($this->utf8Bidi($this->UTF8StringToArray($s), $s, $this->tmprtl), $fontname, $fontstyle, $fontsize, $getarray); + return $this->GetArrStringWidth(TCPDF_FONTS::utf8Bidi(TCPDF_FONTS::UTF8StringToArray($s, $this->isunicode, $this->CurrentFont), $s, $this->tmprtl, $this->isunicode, $this->CurrentFont), $fontname, $fontstyle, $fontsize, $getarray); } /** * Returns the string length of an array of chars in user unit or an array of characters widths. A font must be selected.
                      * @param $sa (string) The array of chars whose total length is to be computed * @param $fontname (string) Family font. It can be either a name defined by AddFont() or one of the standard families. It is also possible to pass an empty string, in that case, the current family is retained. - * @param $fontstyle (string) Font style. Possible values are (case insensitive):
                      • empty string: regular
                      • B: bold
                      • I: italic
                      • U: underline
                      • D: line trough
                      • O: overline
                      or any combination. The default value is regular. + * @param $fontstyle (string) Font style. Possible values are (case insensitive):
                      • empty string: regular
                      • B: bold
                      • I: italic
                      • U: underline
                      • D: line through
                      • O: overline
                      or any combination. The default value is regular. * @param $fontsize (float) Font size in points. The default value is the current size. * @param $getarray (boolean) if true returns an array of characters widths, if false returns the total length. * @return mixed int total string length or array of characted widths @@ -5002,14 +4034,16 @@ class TCPDF { */ public function GetArrStringWidth($sa, $fontname='', $fontstyle='', $fontsize=0, $getarray=false) { // store current values - if (!$this->empty_string($fontname)) { + if (!TCPDF_STATIC::empty_string($fontname)) { $prev_FontFamily = $this->FontFamily; $prev_FontStyle = $this->FontStyle; $prev_FontSizePt = $this->FontSizePt; $this->SetFont($fontname, $fontstyle, $fontsize, '', 'default', false); } // convert UTF-8 array to Latin1 if required - $sa = $this->UTF8ArrToLatin1($sa); + if ($this->isunicode AND (!$this->isUnicodeFont())) { + $sa = TCPDF_FONTS::UTF8ArrToLatin1Arr($sa); + } $w = 0; // total width $wa = array(); // array of characters widths foreach ($sa as $ck => $char) { @@ -5019,7 +4053,7 @@ class TCPDF { $w += $cw; } // restore previous values - if (!$this->empty_string($fontname)) { + if (!TCPDF_STATIC::empty_string($fontname)) { $this->SetFont($prev_FontFamily, $prev_FontStyle, $prev_FontSizePt, '', 'default', false); } if ($getarray) { @@ -5087,7 +4121,7 @@ class TCPDF { */ public function GetNumChars($s) { if ($this->isUnicodeFont()) { - return count($this->UTF8StringToArray($s)); + return count(TCPDF_FONTS::UTF8StringToArray($s, $this->isunicode, $this->CurrentFont)); } return strlen($s); } @@ -5098,7 +4132,7 @@ class TCPDF { * @since 4.0.013 (2008-07-28) */ protected function getFontsList() { - if (($fontsdir = opendir($this->_getfontpath())) !== false) { + if (($fontsdir = opendir(TCPDF_FONTS::_getfontpath())) !== false) { while (($file = readdir($fontsdir)) !== false) { if (substr($file, -4) == '.php') { array_push($this->fontlist, strtolower(basename($file, '.php'))); @@ -5108,6 +4142,38 @@ class TCPDF { } } + /** + * Returns the unicode caracter specified by the value + * @param $c (int) UTF-8 value + * @return Returns the specified character. + * @since 2.3.000 (2008-03-05) + * @public + * @deprecated + */ + public function unichr($c) { + return TCPDF_FONTS::unichr($c, $this->isunicode); + } + + /** + * Convert and add the selected TrueType or Type1 font to the fonts folder (that must be writeable). + * @param $fontfile (string) Font file (full path). + * @param $fonttype (string) Font type. Leave empty for autodetect mode. Valid values are: TrueTypeUnicode, TrueType, Type1, CID0JP = CID-0 Japanese, CID0KR = CID-0 Korean, CID0CS = CID-0 Chinese Simplified, CID0CT = CID-0 Chinese Traditional. + * @param $enc (string) Name of the encoding table to use. Leave empty for default mode. Omit this parameter for TrueType Unicode and symbolic fonts like Symbol or ZapfDingBats. + * @param $flags (int) Unsigned 32-bit integer containing flags specifying various characteristics of the font (PDF32000:2008 - 9.8.2 Font Descriptor Flags): +1 for fixed font; +4 for symbol or +32 for non-symbol; +64 for italic. Fixed and Italic mode are generally autodetected so you have to set it to 32 = non-symbolic font (default) or 4 = symbolic font. + * @param $outpath (string) Output path for generated font files (must be writeable by the web server). Leave empty for default font folder. + * @param $platid (int) Platform ID for CMAP table to extract (when building a Unicode font for Windows this value should be 3, for Macintosh should be 1). + * @param $encid (int) Encoding ID for CMAP table to extract (when building a Unicode font for Windows this value should be 1, for Macintosh should be 0). When Platform ID is 3, legal values for Encoding ID are: 0=Symbol, 1=Unicode, 2=ShiftJIS, 3=PRC, 4=Big5, 5=Wansung, 6=Johab, 7=Reserved, 8=Reserved, 9=Reserved, 10=UCS-4. + * @param $addcbbox (boolean) If true includes the character bounding box information on the php font file. + * @return (string) TCPDF font name. + * @author Nicola Asuni + * @since 5.9.123 (2010-09-30) + * @public + * @deprecated + */ + public function addTTFfont($fontfile, $fonttype='', $enc='', $flags=32, $outpath='', $platid=3, $encid=1, $addcbbox=false) { + return TCPDF_FONTS::addTTFfont($fontfile, $fonttype, $enc, $flags, $outpath, $platid, $encid, $addcbbox); + } + /** * Imports a TrueType, Type1, core, or CID0 font and makes it available. * It is necessary to generate a font definition file first (read /fonts/utils/README.TXT). @@ -5128,8 +4194,8 @@ class TCPDF { if ($this->pdfa_mode) { $subset = false; } - if ($this->empty_string($family)) { - if (!$this->empty_string($this->FontFamily)) { + if (TCPDF_STATIC::empty_string($family)) { + if (!TCPDF_STATIC::empty_string($this->FontFamily)) { $family = $this->FontFamily; } else { $this->Error('Empty font family'); @@ -5197,49 +4263,32 @@ class TCPDF { } return $fontdata; } - if (isset($type)) { - unset($type); - } - if (isset($cw)) { - unset($cw); - } // get specified font directory (if any) $fontdir = false; - if (!$this->empty_string($fontfile)) { + if (!TCPDF_STATIC::empty_string($fontfile)) { $fontdir = dirname($fontfile); - if ($this->empty_string($fontdir) OR ($fontdir == '.')) { + if (TCPDF_STATIC::empty_string($fontdir) OR ($fontdir == '.')) { $fontdir = ''; } else { $fontdir .= '/'; } } - $missing_style = false; // true when the font style variation is missing + // true when the font style variation is missing + $missing_style = false; // search and include font file - if ($this->empty_string($fontfile) OR (!file_exists($fontfile))) { + if (TCPDF_STATIC::empty_string($fontfile) OR (!@file_exists($fontfile))) { // build a standard filenames for specified font $tmp_fontfile = str_replace(' ', '', $family).strtolower($style).'.php'; - // search files on various directories - if (($fontdir !== false) AND file_exists($fontdir.$tmp_fontfile)) { - $fontfile = $fontdir.$tmp_fontfile; - } elseif (file_exists($this->_getfontpath().$tmp_fontfile)) { - $fontfile = $this->_getfontpath().$tmp_fontfile; - } elseif (file_exists($tmp_fontfile)) { - $fontfile = $tmp_fontfile; - } elseif (!$this->empty_string($style)) { + $fontfile = TCPDF_FONTS::getFontFullPath($tmp_fontfile, $fontdir); + if (TCPDF_STATIC::empty_string($fontfile)) { $missing_style = true; // try to remove the style part $tmp_fontfile = str_replace(' ', '', $family).'.php'; - if (($fontdir !== false) AND file_exists($fontdir.$tmp_fontfile)) { - $fontfile = $fontdir.$tmp_fontfile; - } elseif (file_exists($this->_getfontpath().$tmp_fontfile)) { - $fontfile = $this->_getfontpath().$tmp_fontfile; - } else { - $fontfile = $tmp_fontfile; - } + $fontfile = TCPDF_FONTS::getFontFullPath($tmp_fontfile, $fontdir); } } // include font file - if (file_exists($fontfile)) { + if (!TCPDF_STATIC::empty_string($fontfile) AND (@file_exists($fontfile))) { include($fontfile); } else { $this->Error('Could not include font definition file: '.$family.''); @@ -5249,32 +4298,32 @@ class TCPDF { $this->Error('The font definition file has a bad format: '.$fontfile.''); } // SET default parameters - if (!isset($file) OR $this->empty_string($file)) { + if (!isset($file) OR TCPDF_STATIC::empty_string($file)) { $file = ''; } - if (!isset($enc) OR $this->empty_string($enc)) { + if (!isset($enc) OR TCPDF_STATIC::empty_string($enc)) { $enc = ''; } - if (!isset($cidinfo) OR $this->empty_string($cidinfo)) { + if (!isset($cidinfo) OR TCPDF_STATIC::empty_string($cidinfo)) { $cidinfo = array('Registry'=>'Adobe', 'Ordering'=>'Identity', 'Supplement'=>0); $cidinfo['uni2cid'] = array(); } - if (!isset($ctg) OR $this->empty_string($ctg)) { + if (!isset($ctg) OR TCPDF_STATIC::empty_string($ctg)) { $ctg = ''; } - if (!isset($desc) OR $this->empty_string($desc)) { + if (!isset($desc) OR TCPDF_STATIC::empty_string($desc)) { $desc = array(); } - if (!isset($up) OR $this->empty_string($up)) { + if (!isset($up) OR TCPDF_STATIC::empty_string($up)) { $up = -100; } - if (!isset($ut) OR $this->empty_string($ut)) { + if (!isset($ut) OR TCPDF_STATIC::empty_string($ut)) { $ut = 50; } - if (!isset($cw) OR $this->empty_string($cw)) { + if (!isset($cw) OR TCPDF_STATIC::empty_string($cw)) { $cw = array(); } - if (!isset($dw) OR $this->empty_string($dw)) { + if (!isset($dw) OR TCPDF_STATIC::empty_string($dw)) { // set default width if (isset($desc['MissingWidth']) AND ($desc['MissingWidth'] > 0)) { $dw = $desc['MissingWidth']; @@ -5359,7 +4408,7 @@ class TCPDF { } $this->setFontSubBuffer($fontkey, 'diff', $d); } - if (!$this->empty_string($file)) { + if (!TCPDF_STATIC::empty_string($file)) { if (!isset($this->FontFiles[$file])) { if ((strcasecmp($type,'TrueType') == 0) OR (strcasecmp($type, 'TrueTypeUnicode') == 0)) { $this->FontFiles[$file] = array('length1' => $originalsize, 'fontdir' => $fontdir, 'subset' => $subset, 'fontkeys' => array($fontkey)); @@ -5384,7 +4433,7 @@ class TCPDF { * If you just wish to change the current font size, it is simpler to call SetFontSize(). * Note: for the standard fonts, the font metric files must be accessible. There are three possibilities for this:
                      • They are in the current directory (the one where the running script lies)
                      • They are in one of the directories defined by the include_path parameter
                      • They are in the directory defined by the K_PATH_FONTS constant

                      * @param $family (string) Family font. It can be either a name defined by AddFont() or one of the standard Type1 families (case insensitive):
                      • times (Times-Roman)
                      • timesb (Times-Bold)
                      • timesi (Times-Italic)
                      • timesbi (Times-BoldItalic)
                      • helvetica (Helvetica)
                      • helveticab (Helvetica-Bold)
                      • helveticai (Helvetica-Oblique)
                      • helveticabi (Helvetica-BoldOblique)
                      • courier (Courier)
                      • courierb (Courier-Bold)
                      • courieri (Courier-Oblique)
                      • courierbi (Courier-BoldOblique)
                      • symbol (Symbol)
                      • zapfdingbats (ZapfDingbats)
                      It is also possible to pass an empty string. In that case, the current family is retained. - * @param $style (string) Font style. Possible values are (case insensitive):
                      • empty string: regular
                      • B: bold
                      • I: italic
                      • U: underline
                      • D: line trough
                      • O: overline
                      or any combination. The default value is regular. Bold and italic styles do not apply to Symbol and ZapfDingbats basic fonts or other fonts when not defined. + * @param $style (string) Font style. Possible values are (case insensitive):
                      • empty string: regular
                      • B: bold
                      • I: italic
                      • U: underline
                      • D: line through
                      • O: overline
                      or any combination. The default value is regular. Bold and italic styles do not apply to Symbol and ZapfDingbats basic fonts or other fonts when not defined. * @param $size (float) Font size in points. The default value is the current size. If no size has been specified since the beginning of the document, the value taken is 12 * @param $fontfile (string) The font definition file. By default, the name is built from the family and style, in lower case with no spaces. * @param $subset (mixed) if true embedd only a subset of the font (stores only the information related to the used characters); if false embedd full font; if 'default' uses the default value set using setFontSubsetting(). This option is valid only for TrueTypeUnicode fonts. If you want to enable users to change the document, set this parameter to false. If you subset the font, the person who receives your PDF would need to have your same font in order to make changes to your PDF. The file size of the PDF would also be smaller because you are embedding only part of a font. @@ -5406,6 +4455,10 @@ class TCPDF { $fontdata = $this->AddFont($family, $style, $fontfile, $subset); $this->FontFamily = $fontdata['family']; $this->FontStyle = $fontdata['style']; + if (isset($this->CurrentFont['fontkey']) AND isset($this->CurrentFont['subsetchars'])) { + // save subset chars of the previous font + $this->setFontSubBuffer($this->CurrentFont['fontkey'], 'subsetchars', $this->CurrentFont['subsetchars']); + } $this->CurrentFont = $this->getFontBuffer($fontdata['fontkey']); $this->SetFontSize($size, $out); } @@ -5486,7 +4539,7 @@ class TCPDF { } $maxw = $this->getAbsFontMeasure($maxw); } - $fbbox = array(0, -$this->FontDescent, $maxw, $this->FontAscent); + $fbbox = array(0, (0 - $this->FontDescent), $maxw, $this->FontAscent); } return $fbbox; } @@ -5568,11 +4621,11 @@ class TCPDF { public function isCharDefined($char, $font='', $style='') { if (is_string($char)) { // get character code - $char = $this->UTF8StringToArray($char); + $char = TCPDF_FONTS::UTF8StringToArray($char, $this->isunicode, $this->CurrentFont); $char = $char[0]; } - if ($this->empty_string($font)) { - if ($this->empty_string($style)) { + if (TCPDF_STATIC::empty_string($font)) { + if (TCPDF_STATIC::empty_string($style)) { return (isset($this->CurrentFont['cw'][intval($char)])); } $font = $this->FontFamily; @@ -5596,12 +4649,12 @@ class TCPDF { if (empty($subs)) { return $text; } - if ($this->empty_string($font)) { + if (TCPDF_STATIC::empty_string($font)) { $font = $this->FontFamily; } $fontdata = $this->AddFont($font, $style); $fontinfo = $this->getFontBuffer($fontdata['fontkey']); - $uniarr = $this->UTF8StringToArray($text); + $uniarr = TCPDF_FONTS::UTF8StringToArray($text, $this->isunicode, $this->CurrentFont); foreach ($uniarr as $k => $chr) { if (!isset($fontinfo['cw'][$chr])) { // this character is missing on the selected font @@ -5620,7 +4673,7 @@ class TCPDF { } } } - return $this->UniArrSubString($this->UTF8ArrayToUniArray($uniarr)); + return TCPDF_FONTS::UniArrSubString(TCPDF_FONTS::UTF8ArrayToUniArray($uniarr, $this->isunicode)); } /** @@ -5683,18 +4736,6 @@ class TCPDF { $this->Annotation($x, $y, $w, $h, $link, array('Subtype'=>'Link'), $spaces); } - /** - * Check if the URL exist. - * @param $ur (string) URL to check. - * @return Boolean true if the URl exist, false otherwise. - * @public - * @since 5.9.204 (2013-01-28) - */ - public function isValidURL($url) { - $headers = @get_headers($url); - return (strpos($headers[0], '200') !== false); - } - /** * Puts a markup annotation on a rectangular area of the page. * !!!!THE ANNOTATION SUPPORT IS NOT YET FULLY IMPLEMENTED !!!! @@ -5774,20 +4815,20 @@ class TCPDF { } $this->PageAnnots[$page][] = array('n' => ++$this->n, 'x' => $x, 'y' => $y, 'w' => $w, 'h' => $h, 'txt' => $text, 'opt' => $opt, 'numspaces' => $spaces); if (!$this->pdfa_mode) { - if ((($opt['Subtype'] == 'FileAttachment') OR ($opt['Subtype'] == 'Sound')) AND (!$this->empty_string($opt['FS'])) - AND (file_exists($opt['FS']) OR $this->isValidURL($opt['FS'])) + if ((($opt['Subtype'] == 'FileAttachment') OR ($opt['Subtype'] == 'Sound')) AND (!TCPDF_STATIC::empty_string($opt['FS'])) + AND (@file_exists($opt['FS']) OR TCPDF_STATIC::isValidURL($opt['FS'])) AND (!isset($this->embeddedfiles[basename($opt['FS'])]))) { $this->embeddedfiles[basename($opt['FS'])] = array('f' => ++$this->n, 'n' => ++$this->n, 'file' => $opt['FS']); } } // Add widgets annotation's icons - if (isset($opt['mk']['i']) AND file_exists($opt['mk']['i'])) { + if (isset($opt['mk']['i']) AND @file_exists($opt['mk']['i'])) { $this->Image($opt['mk']['i'], '', '', 10, 10, '', '', '', false, 300, '', false, false, 0, false, true); } - if (isset($opt['mk']['ri']) AND file_exists($opt['mk']['ri'])) { + if (isset($opt['mk']['ri']) AND @file_exists($opt['mk']['ri'])) { $this->Image($opt['mk']['ri'], '', '', 0, 0, '', '', '', false, 300, '', false, false, 0, false, true); } - if (isset($opt['mk']['ix']) AND file_exists($opt['mk']['ix'])) { + if (isset($opt['mk']['ix']) AND @file_exists($opt['mk']['ix'])) { $this->Image($opt['mk']['ix'], '', '', 0, 0, '', '', '', false, 300, '', false, false, 0, false, true); } } @@ -5805,27 +4846,31 @@ class TCPDF { } reset($this->embeddedfiles); foreach ($this->embeddedfiles as $filename => $filedata) { - // update name tree - $this->efnames[$filename] = $filedata['f'].' 0 R'; - // embedded file specification object - $out = $this->_getobj($filedata['f'])."\n"; - $out .= '<_datastring($filename, $filedata['f']).' /EF <> >>'; - $out .= "\n".'endobj'; - $this->_out($out); - // embedded file object - $data = file_get_contents($filedata['file']); - $filter = ''; - $rawsize = strlen($data); - if ($this->compress) { - $data = gzcompress($data); - $filter = ' /Filter /FlateDecode'; + $data = TCPDF_STATIC::fileGetContents($filedata['file']); + if ($data !== FALSE) { + $rawsize = strlen($data); + if ($rawsize > 0) { + // update name tree + $this->efnames[$filename] = $filedata['f'].' 0 R'; + // embedded file specification object + $out = $this->_getobj($filedata['f'])."\n"; + $out .= '<_datastring($filename, $filedata['f']).' /EF <> >>'; + $out .= "\n".'endobj'; + $this->_out($out); + // embedded file object + $filter = ''; + if ($this->compress) { + $data = gzcompress($data); + $filter = ' /Filter /FlateDecode'; + } + $stream = $this->_getrawstream($data, $filedata['n']); + $out = $this->_getobj($filedata['n'])."\n"; + $out .= '<< /Type /EmbeddedFile'.$filter.' /Length '.strlen($stream).' /Params <> >>'; + $out .= ' stream'."\n".$stream."\n".'endstream'; + $out .= "\n".'endobj'; + $this->_out($out); + } } - $stream = $this->_getrawstream($data, $filedata['n']); - $out = $this->_getobj($filedata['n'])."\n"; - $out .= '<< /Type /EmbeddedFile'.$filter.' /Length '.strlen($stream).' /Params <> >>'; - $out .= ' stream'."\n".$stream."\n".'endstream'; - $out .= "\n".'endobj'; - $this->_out($out); } } @@ -5900,7 +4945,7 @@ class TCPDF { * @protected */ protected function checkPageBreak($h=0, $y='', $addpage=true) { - if ($this->empty_string($y)) { + if (TCPDF_STATIC::empty_string($y)) { $y = $this->y; } $current_page = $this->page; @@ -5934,30 +4979,6 @@ class TCPDF { return false; } - /** - * Removes SHY characters from text. - * Unicode Data:
                        - *
                      • Name : SOFT HYPHEN, commonly abbreviated as SHY
                      • - *
                      • HTML Entity (decimal): "&#173;"
                      • - *
                      • HTML Entity (hex): "&#xad;"
                      • - *
                      • HTML Entity (named): "&shy;"
                      • - *
                      • How to type in Microsoft Windows: [Alt +00AD] or [Alt 0173]
                      • - *
                      • UTF-8 (hex): 0xC2 0xAD (c2ad)
                      • - *
                      • UTF-8 character: chr(194).chr(173)
                      • - *
                      - * @param $txt (string) input string - * @return string without SHY characters. - * @public - * @since (4.5.019) 2009-02-28 - */ - public function removeSHY($txt='') { - $txt = preg_replace('/([\\xc2]{1}[\\xad]{1})/', '', $txt); - if (!$this->isunicode) { - $txt = preg_replace('/([\\xad]{1})/', '', $txt); - } - return $txt; - } - /** * Prints a cell (rectangular area) with optional borders, background color and character string. The upper-left corner of the cell corresponds to the current position. The text can be aligned or centered. After the call, the current position moves to the right or to the next line. It is possible to put a link on the text.
                      * If automatic page breaking is enabled and the cell goes beyond the limit, a page break is done before outputting. @@ -6048,10 +5069,10 @@ class TCPDF { */ protected function getCellCode($w, $h=0, $txt='', $border=0, $ln=0, $align='', $fill=false, $link='', $stretch=0, $ignore_min_height=false, $calign='T', $valign='M') { // replace 'NO-BREAK SPACE' (U+00A0) character with a simple space - $txt = str_replace($this->unichr(160), ' ', $txt); + $txt = str_replace(TCPDF_FONTS::unichr(160, $this->isunicode), ' ', $txt); $prev_cell_margin = $this->cell_margin; $prev_cell_padding = $this->cell_padding; - $txt = $this->removeSHY($txt); + $txt = TCPDF_STATIC::removeSHY($txt, $this->isunicode); $rs = ''; //string to be returned $this->adjustCellPadding($border); if (!$ignore_min_height) { @@ -6180,7 +5201,7 @@ class TCPDF { } } $basefonty = $yt + $this->FontAscent; - if ($this->empty_string($w) OR ($w <= 0)) { + if (TCPDF_STATIC::empty_string($w) OR ($w <= 0)) { if ($this->rtl) { $w = $x - $this->lMargin; } else { @@ -6212,10 +5233,10 @@ class TCPDF { $txt2 = $txt; if ($this->isunicode) { if (($this->CurrentFont['type'] == 'core') OR ($this->CurrentFont['type'] == 'TrueType') OR ($this->CurrentFont['type'] == 'Type1')) { - $txt2 = $this->UTF8ToLatin1($txt2); + $txt2 = TCPDF_FONTS::UTF8ToLatin1($txt2, $this->isunicode, $this->CurrentFont); } else { - $unicode = $this->UTF8StringToArray($txt); // array of UTF-8 unicode values - $unicode = $this->utf8Bidi($unicode, '', $this->tmprtl); + $unicode = TCPDF_FONTS::UTF8StringToArray($txt, $this->isunicode, $this->CurrentFont); // array of UTF-8 unicode values + $unicode = TCPDF_FONTS::utf8Bidi($unicode, '', $this->tmprtl, $this->isunicode, $this->CurrentFont); // replace thai chars (if any) if (defined('K_THAI_TOPCHARS') AND (K_THAI_TOPCHARS == true)) { // number of chars @@ -6307,10 +5328,10 @@ class TCPDF { // update font subsetchars $this->setFontSubBuffer($this->CurrentFont['fontkey'], 'subsetchars', $this->CurrentFont['subsetchars']); } // end of K_THAI_TOPCHARS - $txt2 = $this->arrUTF8ToUTF16BE($unicode, false); + $txt2 = TCPDF_FONTS::arrUTF8ToUTF16BE($unicode, false); } } - $txt2 = $this->_escape($txt2); + $txt2 = TCPDF_STATIC::_escape($txt2); // get current text width (considering general font stretching and spacing) $txwidth = $this->GetStringWidth($txt); $width = $txwidth; @@ -6360,7 +5381,7 @@ class TCPDF { // get string width without spaces $width = $this->GetStringWidth(str_replace(' ', '', $txt)); // calculate average space width - $spacewidth = -1000 * ($w - $width - $this->cell_padding['L'] - $this->cell_padding['R']) / ($ns?$ns:1) / $this->FontSize; + $spacewidth = -1000 * ($w - $width - $this->cell_padding['L'] - $this->cell_padding['R']) / ($ns?$ns:1) / ($this->FontSize?$this->FontSize:1); if ($this->font_stretching != 100) { // word spacing is affected by stretching $spacewidth /= ($this->font_stretching / 100); @@ -6438,8 +5459,8 @@ class TCPDF { $xshift += $this->GetArrStringWidth($uniarr); // + shift justification } else { // character to print - $topchr = $this->arrUTF8ToUTF16BE($uniarr, false); - $topchr = $this->_escape($topchr); + $topchr = TCPDF_FONTS::arrUTF8ToUTF16BE($uniarr, false); + $topchr = TCPDF_STATIC::_escape($topchr); $s .= sprintf(' BT %F %F Td [(%s)] TJ ET', ($xdk + ($xshift * $k)), $ty, $topchr); } } @@ -6750,11 +5771,11 @@ class TCPDF { $this->cell_padding['T'] = 0; $this->cell_padding['B'] = 0; $this->setCellMargins(0, 0, 0, 0); - if ($this->empty_string($this->lasth) OR $reseth) { + if (TCPDF_STATIC::empty_string($this->lasth) OR $reseth) { // reset row height $this->resetLastH(); } - if (!$this->empty_string($y)) { + if (!TCPDF_STATIC::empty_string($y)) { $this->SetY($y); } else { $y = $this->GetY(); @@ -6770,7 +5791,7 @@ class TCPDF { $startpage = $this->page; // get current column $startcolumn = $this->current_column; - if (!$this->empty_string($x)) { + if (!TCPDF_STATIC::empty_string($x)) { $this->SetX($x); } else { $x = $this->GetX(); @@ -6787,7 +5808,7 @@ class TCPDF { $this->x = $ox; $this->y = $oy; // set width - if ($this->empty_string($w) OR ($w <= 0)) { + if (TCPDF_STATIC::empty_string($w) OR ($w <= 0)) { if ($this->rtl) { $w = ($this->x - $this->lMargin - $mc_margin['L']); } else { @@ -6892,9 +5913,9 @@ class TCPDF { $check_page_regions = $this->check_page_regions; $this->check_page_regions = false; // get border modes - $border_start = $this->getBorderMode($border, $position='start'); - $border_end = $this->getBorderMode($border, $position='end'); - $border_middle = $this->getBorderMode($border, $position='middle'); + $border_start = TCPDF_STATIC::getBorderMode($border, $position='start', $this->opencell); + $border_end = TCPDF_STATIC::getBorderMode($border, $position='end', $this->opencell); + $border_middle = TCPDF_STATIC::getBorderMode($border, $position='middle', $this->opencell); // design borders around HTML cells. for ($page = $startpage; $page <= $endpage; ++$page) { // for each page $ccode = ''; @@ -7075,79 +6096,6 @@ class TCPDF { return $nl; } - /** - * Get the border mode accounting for multicell position (opens bottom side of multicell crossing pages) - * @param $brd (mixed) Indicates if borders must be drawn around the cell block. The value can be a number:
                      • 0: no border (default)
                      • 1: frame
                      or a string containing some or all of the following characters (in any order):
                      • L: left
                      • T: top
                      • R: right
                      • B: bottom
                      or an array of line styles for each border group: array('LTRB' => array('width' => 2, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0))) - * @param $position (string) multicell position: 'start', 'middle', 'end' - * @return border mode array - * @protected - * @since 4.4.002 (2008-12-09) - */ - protected function getBorderMode($brd, $position='start') { - if ((!$this->opencell) OR empty($brd)) { - return $brd; - } - if ($brd == 1) { - $brd = 'LTRB'; - } - if (is_string($brd)) { - // convert string to array - $slen = strlen($brd); - $newbrd = array(); - for ($i = 0; $i < $slen; ++$i) { - $newbrd[$brd[$i]] = array('cap' => 'square', 'join' => 'miter'); - } - $brd = $newbrd; - } - foreach ($brd as $border => $style) { - switch ($position) { - case 'start': { - if (strpos($border, 'B') !== false) { - // remove bottom line - $newkey = str_replace('B', '', $border); - if (strlen($newkey) > 0) { - $brd[$newkey] = $style; - } - unset($brd[$border]); - } - break; - } - case 'middle': { - if (strpos($border, 'B') !== false) { - // remove bottom line - $newkey = str_replace('B', '', $border); - if (strlen($newkey) > 0) { - $brd[$newkey] = $style; - } - unset($brd[$border]); - $border = $newkey; - } - if (strpos($border, 'T') !== false) { - // remove bottom line - $newkey = str_replace('T', '', $border); - if (strlen($newkey) > 0) { - $brd[$newkey] = $style; - } - unset($brd[$border]); - } - break; - } - case 'end': { - if (strpos($border, 'T') !== false) { - // remove bottom line - $newkey = str_replace('T', '', $border); - if (strlen($newkey) > 0) { - $brd[$newkey] = $style; - } - unset($brd[$border]); - } - break; - } - } - } - return $brd; - } - /** * This method return the estimated number of lines for print a simple text string using Multicell() method. * @param $txt (string) String for calculating his height @@ -7173,7 +6121,7 @@ class TCPDF { $this->cell_padding = $cellpadding; } $this->adjustCellPadding($border); - if ($this->empty_string($w) OR ($w <= 0)) { + if (TCPDF_STATIC::empty_string($w) OR ($w <= 0)) { if ($this->rtl) { $w = $this->x - $this->lMargin; } else { @@ -7187,13 +6135,13 @@ class TCPDF { } $lines = 1; $sum = 0; - $chars = $this->utf8Bidi($this->UTF8StringToArray($txt), $txt, $this->tmprtl); + $chars = TCPDF_FONTS::utf8Bidi(TCPDF_FONTS::UTF8StringToArray($txt, $this->isunicode, $this->CurrentFont), $txt, $this->tmprtl, $this->isunicode, $this->CurrentFont); $charsWidth = $this->GetArrStringWidth($chars, '', '', 0, true); $length = count($chars); $lastSeparator = -1; for ($i = 0; $i < $length; ++$i) { $charWidth = $charsWidth[$i]; - if (preg_match($this->re_spaces, $this->unichr($chars[$i]))) { + if (preg_match($this->re_spaces, TCPDF_FONTS::unichr($chars[$i], $this->isunicode))) { $lastSeparator = $i; } if ((($sum + $charWidth) > $wmax) OR ($chars[$i] == 10)) { @@ -7297,7 +6245,7 @@ class TCPDF { * @param $stretch (int) font stretch mode:
                      • 0 = disabled
                      • 1 = horizontal scaling only if text is larger than cell width
                      • 2 = forced horizontal scaling to fit cell width
                      • 3 = character spacing only if text is larger than cell width
                      • 4 = forced character spacing to fit cell width
                      General font stretching and scaling values will be preserved when possible. * @param $firstline (boolean) if true prints only the first line and return the remaining string. * @param $firstblock (boolean) if true the string is the starting of a line. - * @param $maxh (float) maximum height. The remaining unprinted text will be returned. It should be >= $h and less then remaining space to the bottom of the page, or 0 for disable this feature. + * @param $maxh (float) maximum height. It should be >= $h and less then remaining space to the bottom of the page, or 0 for disable this feature. * @param $wadj (float) first line width will be reduced by this amount (used in HTML mode). * @param $margin (array) margin array of the parent container * @return mixed Return the number of cells or the remaining string if $firstline = true. @@ -7318,13 +6266,13 @@ class TCPDF { // remove carriage returns $s = str_replace("\r", '', $txt); // check if string contains arabic text - if (preg_match($this->unicode->uni_RE_PATTERN_ARABIC, $s)) { + if (preg_match(TCPDF_FONT_DATA::$uni_RE_PATTERN_ARABIC, $s)) { $arabic = true; } else { $arabic = false; } // check if string contains RTL text - if ($arabic OR ($this->tmprtl == 'R') OR preg_match($this->unicode->uni_RE_PATTERN_RTL, $s)) { + if ($arabic OR ($this->tmprtl == 'R') OR preg_match(TCPDF_FONT_DATA::$uni_RE_PATTERN_RTL, $s)) { $rtlmode = true; } else { $rtlmode = false; @@ -7332,18 +6280,18 @@ class TCPDF { // get a char width $chrwidth = $this->GetCharWidth(46); // dot character // get array of unicode values - $chars = $this->UTF8StringToArray($s); + $chars = TCPDF_FONTS::UTF8StringToArray($s, $this->isunicode, $this->CurrentFont); // calculate maximum width for a single character on string $chrw = $this->GetArrStringWidth($chars, '', '', 0, true); array_walk($chrw, array($this, 'getRawCharWidth')); $maxchwidth = max($chrw); // get array of chars - $uchars = $this->UTF8ArrayToUniArray($chars); + $uchars = TCPDF_FONTS::UTF8ArrayToUniArray($chars, $this->isunicode); // get the number of characters $nb = count($chars); // replacement for SHY character (minus symbol) $shy_replacement = 45; - $shy_replacement_char = $this->unichr($shy_replacement); + $shy_replacement_char = TCPDF_FONTS::unichr($shy_replacement, $this->isunicode); // widht for SHY replacement $shy_replacement_width = $this->GetCharWidth($shy_replacement); // max Y @@ -7394,12 +6342,12 @@ class TCPDF { } else { $talign = $align; } - $tmpstr = $this->UniArrSubString($uchars, $j, $i); + $tmpstr = TCPDF_FONTS::UniArrSubString($uchars, $j, $i); if ($firstline) { $startx = $this->x; $tmparr = array_slice($chars, $j, ($i - $j)); if ($rtlmode) { - $tmparr = $this->utf8Bidi($tmparr, $tmpstr, $this->tmprtl); + $tmparr = TCPDF_FONTS::utf8Bidi($tmparr, $tmpstr, $this->tmprtl, $this->isunicode, $this->CurrentFont); } $linew = $this->GetArrStringWidth($tmparr); unset($tmparr); @@ -7424,7 +6372,7 @@ class TCPDF { unset($tmpstr); if ($firstline) { $this->cell_padding = $tmpcellpadding; - return ($this->UniArrSubString($uchars, $i)); + return (TCPDF_FONTS::UniArrSubString($uchars, $i)); } ++$nl; $j = $i + 1; @@ -7452,11 +6400,11 @@ class TCPDF { // \p{Lo} is needed because Chinese characters are packed next to each other without spaces in between. if (($c != 160) AND (($c == 173) - OR preg_match($this->re_spaces, $this->unichr($c)) + OR preg_match($this->re_spaces, TCPDF_FONTS::unichr($c, $this->isunicode)) OR (($c == 45) AND ($i < ($nb - 1)) - AND @preg_match('/[\p{L}]/'.$this->re_space['m'], $this->unichr($pc)) - AND @preg_match('/[\p{L}]/'.$this->re_space['m'], $this->unichr($chars[($i + 1)])) + AND @preg_match('/[\p{L}]/'.$this->re_space['m'], TCPDF_FONTS::unichr($pc, $this->isunicode)) + AND @preg_match('/[\p{L}]/'.$this->re_space['m'], TCPDF_FONTS::unichr($chars[($i + 1)], $this->isunicode)) ) ) ) { @@ -7480,7 +6428,7 @@ class TCPDF { if ($this->isUnicodeFont() AND ($arabic)) { // with bidirectional algorithm some chars may be changed affecting the line length // *** very slow *** - $l = $this->GetArrStringWidth($this->utf8Bidi(array_slice($chars, $j, ($i - $j)), '', $this->tmprtl)); + $l = $this->GetArrStringWidth(TCPDF_FONTS::utf8Bidi(array_slice($chars, $j, ($i - $j)), '', $this->tmprtl, $this->isunicode, $this->CurrentFont)); } else { $l += $this->GetCharWidth($c); } @@ -7494,16 +6442,16 @@ class TCPDF { $this->Cell($w, $h, '', 0, 1); $linebreak = true; if ($firstline) { - return ($this->UniArrSubString($uchars, $j)); + return (TCPDF_FONTS::UniArrSubString($uchars, $j)); } } else { // truncate the word because do not fit on column - $tmpstr = $this->UniArrSubString($uchars, $j, $i); + $tmpstr = TCPDF_FONTS::UniArrSubString($uchars, $j, $i); if ($firstline) { $startx = $this->x; $tmparr = array_slice($chars, $j, ($i - $j)); if ($rtlmode) { - $tmparr = $this->utf8Bidi($tmparr, $tmpstr, $this->tmprtl); + $tmparr = TCPDF_FONTS::utf8Bidi($tmparr, $tmpstr, $this->tmprtl, $this->isunicode, $this->CurrentFont); } $linew = $this->GetArrStringWidth($tmparr); unset($tmparr); @@ -7525,7 +6473,7 @@ class TCPDF { unset($tmpstr); if ($firstline) { $this->cell_padding = $tmpcellpadding; - return ($this->UniArrSubString($uchars, $i)); + return (TCPDF_FONTS::UniArrSubString($uchars, $i)); } $j = $i; --$i; @@ -7538,16 +6486,16 @@ class TCPDF { $endspace = 0; } // check the length of the next string - $strrest = $this->UniArrSubString($uchars, ($sep + $endspace)); - $nextstr = preg_split('/'.$this->re_space['p'].'/'.$this->re_space['m'], $this->stringTrim($strrest)); + $strrest = TCPDF_FONTS::UniArrSubString($uchars, ($sep + $endspace)); + $nextstr = TCPDF_STATIC::pregSplit('/'.$this->re_space['p'].'/', $this->re_space['m'], $this->stringTrim($strrest)); if (isset($nextstr[0]) AND ($this->GetStringWidth($nextstr[0]) > $pw)) { // truncate the word because do not fit on a full page width - $tmpstr = $this->UniArrSubString($uchars, $j, $i); + $tmpstr = TCPDF_FONTS::UniArrSubString($uchars, $j, $i); if ($firstline) { $startx = $this->x; $tmparr = array_slice($chars, $j, ($i - $j)); if ($rtlmode) { - $tmparr = $this->utf8Bidi($tmparr, $tmpstr, $this->tmprtl); + $tmparr = TCPDF_FONTS::utf8Bidi($tmparr, $tmpstr, $this->tmprtl, $this->isunicode, $this->CurrentFont); } $linew = $this->GetArrStringWidth($tmparr); unset($tmparr); @@ -7569,7 +6517,7 @@ class TCPDF { unset($tmpstr); if ($firstline) { $this->cell_padding = $tmpcellpadding; - return ($this->UniArrSubString($uchars, $i)); + return (TCPDF_FONTS::UniArrSubString($uchars, $i)); } $j = $i; --$i; @@ -7590,12 +6538,12 @@ class TCPDF { $shy_char_left = ''; $shy_char_right = ''; } - $tmpstr = $this->UniArrSubString($uchars, $j, ($sep + $endspace)); + $tmpstr = TCPDF_FONTS::UniArrSubString($uchars, $j, ($sep + $endspace)); if ($firstline) { $startx = $this->x; $tmparr = array_slice($chars, $j, (($sep + $endspace) - $j)); if ($rtlmode) { - $tmparr = $this->utf8Bidi($tmparr, $tmpstr, $this->tmprtl); + $tmparr = TCPDF_FONTS::utf8Bidi($tmparr, $tmpstr, $this->tmprtl, $this->isunicode, $this->CurrentFont); } $linew = $this->GetArrStringWidth($tmparr); unset($tmparr); @@ -7622,7 +6570,7 @@ class TCPDF { } // return the remaining text $this->cell_padding = $tmpcellpadding; - return ($this->UniArrSubString($uchars, ($sep + $endspace))); + return (TCPDF_FONTS::UniArrSubString($uchars, ($sep + $endspace))); } $i = $sep; $sep = -1; @@ -7684,12 +6632,12 @@ class TCPDF { break; } } - $tmpstr = $this->UniArrSubString($uchars, $j, $nb); + $tmpstr = TCPDF_FONTS::UniArrSubString($uchars, $j, $nb); if ($firstline) { $startx = $this->x; $tmparr = array_slice($chars, $j, ($nb - $j)); if ($rtlmode) { - $tmparr = $this->utf8Bidi($tmparr, $tmpstr, $this->tmprtl); + $tmparr = TCPDF_FONTS::utf8Bidi($tmparr, $tmpstr, $this->tmprtl, $this->isunicode, $this->CurrentFont); } $linew = $this->GetArrStringWidth($tmparr); unset($tmparr); @@ -7711,7 +6659,7 @@ class TCPDF { unset($tmpstr); if ($firstline) { $this->cell_padding = $tmpcellpadding; - return ($this->UniArrSubString($uchars, $nb)); + return (TCPDF_FONTS::UniArrSubString($uchars, $nb)); } ++$nl; } @@ -7735,117 +6683,6 @@ class TCPDF { } } - /** - * Extract a slice of the $strarr array and return it as string. - * @param $strarr (string) The input array of characters. - * @param $start (int) the starting element of $strarr. - * @param $end (int) first element that will not be returned. - * @return Return part of a string - * @public - */ - public function UTF8ArrSubString($strarr, $start='', $end='') { - if (strlen($start) == 0) { - $start = 0; - } - if (strlen($end) == 0) { - $end = count($strarr); - } - $string = ''; - for ($i=$start; $i < $end; ++$i) { - $string .= $this->unichr($strarr[$i]); - } - return $string; - } - - /** - * Extract a slice of the $uniarr array and return it as string. - * @param $uniarr (string) The input array of characters. - * @param $start (int) the starting element of $strarr. - * @param $end (int) first element that will not be returned. - * @return Return part of a string - * @public - * @since 4.5.037 (2009-04-07) - */ - public function UniArrSubString($uniarr, $start='', $end='') { - if (strlen($start) == 0) { - $start = 0; - } - if (strlen($end) == 0) { - $end = count($uniarr); - } - $string = ''; - for ($i=$start; $i < $end; ++$i) { - $string .= $uniarr[$i]; - } - return $string; - } - - /** - * Convert an array of UTF8 values to array of unicode characters - * @param $ta (string) The input array of UTF8 values. - * @return Return array of unicode characters - * @public - * @since 4.5.037 (2009-04-07) - */ - public function UTF8ArrayToUniArray($ta) { - return array_map(array($this, 'unichr'), $ta); - } - - /** - * Returns the unicode caracter specified by UTF-8 value - * @param $c (int) UTF-8 value - * @return Returns the specified character. - * @author Miguel Perez, Nicola Asuni - * @public - * @since 2.3.000 (2008-03-05) - */ - public function unichr($c) { - if (!$this->isunicode) { - return chr($c); - } elseif ($c <= 0x7F) { - // one byte - return chr($c); - } elseif ($c <= 0x7FF) { - // two bytes - return chr(0xC0 | $c >> 6).chr(0x80 | $c & 0x3F); - } elseif ($c <= 0xFFFF) { - // three bytes - return chr(0xE0 | $c >> 12).chr(0x80 | $c >> 6 & 0x3F).chr(0x80 | $c & 0x3F); - } elseif ($c <= 0x10FFFF) { - // four bytes - return chr(0xF0 | $c >> 18).chr(0x80 | $c >> 12 & 0x3F).chr(0x80 | $c >> 6 & 0x3F).chr(0x80 | $c & 0x3F); - } else { - return ''; - } - } - - /** - * Return the image type given the file name or array returned by getimagesize() function. - * @param $imgfile (string) image file name - * @param $iminfo (array) array of image information returned by getimagesize() function. - * @return string image type - * @since 4.8.017 (2009-11-27) - */ - public function getImageFileType($imgfile, $iminfo=array()) { - $type = ''; - if (isset($iminfo['mime']) AND !empty($iminfo['mime'])) { - $mime = explode('/', $iminfo['mime']); - if ((count($mime) > 1) AND ($mime[0] == 'image') AND (!empty($mime[1]))) { - $type = strtolower(trim($mime[1])); - } - } - if (empty($type)) { - $fileinfo = pathinfo($imgfile); - if (isset($fileinfo['extension']) AND (!$this->empty_string($fileinfo['extension']))) { - $type = strtolower(trim($fileinfo['extension'])); - } - } - if ($type == 'jpg') { - $type = 'jpeg'; - } - return $type; - } - /** * Set the block dimensions accounting for page breaks and page/column fitting * @param $w (float) width @@ -7861,10 +6698,16 @@ class TCPDF { if ($w <= 0) { // set maximum width $w = ($this->w - $this->lMargin - $this->rMargin); + if ($w <= 0) { + $w = 1; + } } if ($h <= 0) { // set maximum height $h = ($this->PageBreakTrigger - $this->tMargin); + if ($h <= 0) { + $h = 1; + } } // resize the block to be vertically contained on a single page or single column if ($fitonpage OR $this->AutoPageBreak) { @@ -7959,6 +6802,7 @@ class TCPDF { // check page for no-write regions and adapt page margins if necessary list($x, $y) = $this->checkPageRegions($h, $x, $y); $exurl = ''; // external streams + $imsize = FALSE; // check if we are passing an image as file or string if ($file[0] === '@') { // image from string @@ -7977,35 +6821,14 @@ class TCPDF { if (@file_exists($file)) { // get image dimensions $imsize = @getimagesize($file); - } else { - $imsize = FALSE; } if ($imsize === FALSE) { - if (function_exists('curl_init')) { - // try to get remote file data using cURL - $cs = curl_init(); // curl session - curl_setopt($cs, CURLOPT_URL, $file); - curl_setopt($cs, CURLOPT_BINARYTRANSFER, true); - curl_setopt($cs, CURLOPT_FAILONERROR, true); - curl_setopt($cs, CURLOPT_RETURNTRANSFER, true); - if ((ini_get('open_basedir') == '') AND (!ini_get('safe_mode'))) { - curl_setopt($cs, CURLOPT_FOLLOWLOCATION, true); - } - curl_setopt($cs, CURLOPT_CONNECTTIMEOUT, 5); - curl_setopt($cs, CURLOPT_TIMEOUT, 30); - curl_setopt($cs, CURLOPT_SSL_VERIFYPEER, false); - curl_setopt($cs, CURLOPT_SSL_VERIFYHOST, false); - curl_setopt($cs, CURLOPT_USERAGENT, 'TCPDF'); - $imgdata = curl_exec($cs); - curl_close($cs); - } else { - $imgdata = @file_get_contents($file); - } + $imgdata = TCPDF_STATIC::fileGetContents($file); } } if (isset($imgdata) AND ($imgdata !== FALSE)) { // copy image to cache - $file = $this->getObjFilename('img'); + $file = TCPDF_STATIC::getObjFilename('img'); $fp = fopen($file, 'w'); fwrite($fp, $imgdata); fclose($fp); @@ -8149,21 +6972,21 @@ class TCPDF { //First use of image, get info $type = strtolower($type); if ($type == '') { - $type = $this->getImageFileType($file, $imsize); + $type = TCPDF_IMAGES::getImageFileType($file, $imsize); } elseif ($type == 'jpg') { $type = 'jpeg'; } - $mqr = $this->get_mqr(); - $this->set_mqr(false); - // Specific image handlers + $mqr = TCPDF_STATIC::get_mqr(); + TCPDF_STATIC::set_mqr(false); + // Specific image handlers (defined on TCPDF_IMAGES CLASS) $mtd = '_parse'.$type; // GD image handler function $gdfunction = 'imagecreatefrom'.$type; $info = false; - if ((method_exists($this, $mtd)) AND (!($resize AND (function_exists($gdfunction) OR extension_loaded('imagick'))))) { + if ((method_exists('TCPDF_IMAGES', $mtd)) AND (!($resize AND (function_exists($gdfunction) OR extension_loaded('imagick'))))) { // TCPDF image functions - $info = $this->$mtd($file); - if ($info == 'pngalpha') { + $info = TCPDF_IMAGES::$mtd($file); + if (($info === 'pngalpha') OR (isset($info['trns']) AND !empty($info['trns']))) { return $this->ImagePngAlpha($file, $x, $y, $pixw, $pixh, $w, $h, 'PNG', $link, $align, $resize, $dpi, $palign, $filehash); } } @@ -8174,19 +6997,19 @@ class TCPDF { if ($resize) { $imgr = imagecreatetruecolor($neww, $newh); if (($type == 'gif') OR ($type == 'png')) { - $imgr = $this->_setGDImageTransparency($imgr, $img); + $imgr = TCPDF_IMAGES::setGDImageTransparency($imgr, $img); } imagecopyresampled($imgr, $img, 0, 0, 0, 0, $neww, $newh, $pixw, $pixh); if (($type == 'gif') OR ($type == 'png')) { - $info = $this->_toPNG($imgr); + $info = TCPDF_IMAGES::_toPNG($imgr); } else { - $info = $this->_toJPEG($imgr); + $info = TCPDF_IMAGES::_toJPEG($imgr, $this->jpeg_quality); } } else { if (($type == 'gif') OR ($type == 'png')) { - $info = $this->_toPNG($img); + $info = TCPDF_IMAGES::_toPNG($img); } else { - $info = $this->_toJPEG($img); + $info = TCPDF_IMAGES::_toJPEG($img, $this->jpeg_quality); } } } elseif (extension_loaded('imagick')) { @@ -8194,37 +7017,39 @@ class TCPDF { $img = new Imagick(); if ($type == 'SVG') { // get SVG file content - $svgimg = file_get_contents($file); - // get width and height - $regs = array(); - if (preg_match('/]*)>/si', $svgimg, $regs)) { - $svgtag = $regs[1]; - $tmp = array(); - if (preg_match('/[\s]+width[\s]*=[\s]*"([^"]*)"/si', $svgtag, $tmp)) { - $ow = $this->getHTMLUnitToUnits($tmp[1], 1, $this->svgunit, false); - $owu = sprintf('%F', ($ow * $dpi / 72)).$this->pdfunit; - $svgtag = preg_replace('/[\s]+width[\s]*=[\s]*"[^"]*"/si', ' width="'.$owu.'"', $svgtag, 1); - } else { - $ow = $w; + $svgimg = TCPDF_STATIC::fileGetContents($file); + if ($svgimg !== FALSE) { + // get width and height + $regs = array(); + if (preg_match('/]*)>/si', $svgimg, $regs)) { + $svgtag = $regs[1]; + $tmp = array(); + if (preg_match('/[\s]+width[\s]*=[\s]*"([^"]*)"/si', $svgtag, $tmp)) { + $ow = $this->getHTMLUnitToUnits($tmp[1], 1, $this->svgunit, false); + $owu = sprintf('%F', ($ow * $dpi / 72)).$this->pdfunit; + $svgtag = preg_replace('/[\s]+width[\s]*=[\s]*"[^"]*"/si', ' width="'.$owu.'"', $svgtag, 1); + } else { + $ow = $w; + } + $tmp = array(); + if (preg_match('/[\s]+height[\s]*=[\s]*"([^"]*)"/si', $svgtag, $tmp)) { + $oh = $this->getHTMLUnitToUnits($tmp[1], 1, $this->svgunit, false); + $ohu = sprintf('%F', ($oh * $dpi / 72)).$this->pdfunit; + $svgtag = preg_replace('/[\s]+height[\s]*=[\s]*"[^"]*"/si', ' height="'.$ohu.'"', $svgtag, 1); + } else { + $oh = $h; + } + $tmp = array(); + if (!preg_match('/[\s]+viewBox[\s]*=[\s]*"[\s]*([0-9\.]+)[\s]+([0-9\.]+)[\s]+([0-9\.]+)[\s]+([0-9\.]+)[\s]*"/si', $svgtag, $tmp)) { + $vbw = ($ow * $this->imgscale * $this->k); + $vbh = ($oh * $this->imgscale * $this->k); + $vbox = sprintf(' viewBox="0 0 %F %F" ', $vbw, $vbh); + $svgtag = $vbox.$svgtag; + } + $svgimg = preg_replace('/]*)>/si', '', $svgimg, 1); } - $tmp = array(); - if (preg_match('/[\s]+height[\s]*=[\s]*"([^"]*)"/si', $svgtag, $tmp)) { - $oh = $this->getHTMLUnitToUnits($tmp[1], 1, $this->svgunit, false); - $ohu = sprintf('%F', ($oh * $dpi / 72)).$this->pdfunit; - $svgtag = preg_replace('/[\s]+height[\s]*=[\s]*"[^"]*"/si', ' height="'.$ohu.'"', $svgtag, 1); - } else { - $oh = $h; - } - $tmp = array(); - if (!preg_match('/[\s]+viewBox[\s]*=[\s]*"[\s]*([0-9\.]+)[\s]+([0-9\.]+)[\s]+([0-9\.]+)[\s]+([0-9\.]+)[\s]*"/si', $svgtag, $tmp)) { - $vbw = ($ow * $this->imgscale * $this->k); - $vbh = ($oh * $this->imgscale * $this->k); - $vbox = sprintf(' viewBox="0 0 %F %F" ', $vbw, $vbh); - $svgtag = $vbox.$svgtag; - } - $svgimg = preg_replace('/]*)>/si', '', $svgimg, 1); + $img->readImageBlob($svgimg); } - $img->readImageBlob($svgimg); } else { $img->readImage($file); } @@ -8233,9 +7058,9 @@ class TCPDF { } $img->setCompressionQuality($this->jpeg_quality); $img->setImageFormat('jpeg'); - $tempname = $this->getObjFilename('jpg'); + $tempname = TCPDF_STATIC::getObjFilename('jpg'); $img->writeImage($tempname); - $info = $this->_parsejpeg($tempname); + $info = TCPDF_IMAGES::_parsejpeg($tempname); unlink($tempname); $img->destroy(); } else { @@ -8246,7 +7071,7 @@ class TCPDF { //If false, we cannot process image return; } - $this->set_mqr($mqr); + TCPDF_STATIC::set_mqr($mqr); if ($ismask) { // force grayscale $info['cs'] = 'DeviceGray'; @@ -8346,319 +7171,7 @@ class TCPDF { } /** - * Sets the current active configuration setting of magic_quotes_runtime (if the set_magic_quotes_runtime function exist) - * @param $mqr (boolean) FALSE for off, TRUE for on. - * @since 4.6.025 (2009-08-17) - */ - public function set_mqr($mqr) { - if (!defined('PHP_VERSION_ID')) { - $version = PHP_VERSION; - define('PHP_VERSION_ID', (($version{0} * 10000) + ($version{2} * 100) + $version{4})); - } - if (PHP_VERSION_ID < 50300) { - @set_magic_quotes_runtime($mqr); - } - } - - /** - * Gets the current active configuration setting of magic_quotes_runtime (if the get_magic_quotes_runtime function exist) - * @return Returns 0 if magic quotes runtime is off or get_magic_quotes_runtime doesn't exist, 1 otherwise. - * @since 4.6.025 (2009-08-17) - */ - public function get_mqr() { - if (!defined('PHP_VERSION_ID')) { - $version = PHP_VERSION; - define('PHP_VERSION_ID', (($version{0} * 10000) + ($version{2} * 100) + $version{4})); - } - if (PHP_VERSION_ID < 50300) { - return @get_magic_quotes_runtime(); - } - return 0; - } - - /** - * Convert the loaded image to a JPEG and then return a structure for the PDF creator. - * This function requires GD library and write access to the directory defined on K_PATH_CACHE constant. - * @param $image (image) Image object. - * return image JPEG image object. - * @protected - */ - protected function _toJPEG($image) { - $tempname = $this->getObjFilename('jpg'); - imagejpeg($image, $tempname, $this->jpeg_quality); - imagedestroy($image); - $retvars = $this->_parsejpeg($tempname); - // tidy up by removing temporary image - unlink($tempname); - return $retvars; - } - - /** - * Convert the loaded image to a PNG and then return a structure for the PDF creator. - * This function requires GD library and write access to the directory defined on K_PATH_CACHE constant. - * @param $image (image) Image object. - * return image PNG image object. - * @protected - * @since 4.9.016 (2010-04-20) - */ - protected function _toPNG($image) { - // set temporary image file name - $tempname = $this->getObjFilename('png'); - // turn off interlaced mode - imageinterlace($image, 0); - // create temporary PNG image - imagepng($image, $tempname); - // remove image from memory - imagedestroy($image); - // get PNG image data - $retvars = $this->_parsepng($tempname); - // tidy up by removing temporary image - unlink($tempname); - return $retvars; - } - - /** - * Set the transparency for the given GD image. - * @param $new_image (image) GD image object - * @param $image (image) GD image object. - * return GD image object. - * @protected - * @since 4.9.016 (2010-04-20) - */ - protected function _setGDImageTransparency($new_image, $image) { - // transparency index - $tid = imagecolortransparent($image); - // default transparency color - $tcol = array('red' => 255, 'green' => 255, 'blue' => 255); - if ($tid >= 0) { - // get the colors for the transparency index - $tcol = imagecolorsforindex($image, $tid); - } - $tid = imagecolorallocate($new_image, $tcol['red'], $tcol['green'], $tcol['blue']); - imagefill($new_image, 0, 0, $tid); - imagecolortransparent($new_image, $tid); - return $new_image; - } - - /** - * Extract info from a JPEG file without using the GD library. - * @param $file (string) image file to parse - * @return array structure containing the image data - * @protected - */ - protected function _parsejpeg($file) { - $a = getimagesize($file); - if (empty($a)) { - $this->Error('Missing or incorrect image file: '.$file); - } - if ($a[2] != 2) { - $this->Error('Not a JPEG file: '.$file); - } - // bits per pixel - $bpc = isset($a['bits']) ? intval($a['bits']) : 8; - // number of image channels - if (!isset($a['channels'])) { - $channels = 3; - } else { - $channels = intval($a['channels']); - } - // default colour space - switch ($channels) { - case 1: { - $colspace = 'DeviceGray'; - break; - } - case 3: { - $colspace = 'DeviceRGB'; - break; - } - case 4: { - $colspace = 'DeviceCMYK'; - break; - } - default: { - $channels = 3; - $colspace = 'DeviceRGB'; - break; - } - } - // get file content - $data = file_get_contents($file); - // check for embedded ICC profile - $icc = array(); - $offset = 0; - while (($pos = strpos($data, "ICC_PROFILE\0", $offset)) !== false) { - // get ICC sequence length - $length = ($this->_getUSHORT($data, ($pos - 2)) - 16); - // marker sequence number - $msn = max(1, ord($data[($pos + 12)])); - // number of markers (total of APP2 used) - $nom = max(1, ord($data[($pos + 13)])); - // get sequence segment - $icc[($msn - 1)] = substr($data, ($pos + 14), $length); - // move forward to next sequence - $offset = ($pos + 14 + $length); - } - // order and compact ICC segments - if (count($icc) > 0) { - ksort($icc); - $icc = implode('', $icc); - if ((ord($icc{36}) != 0x61) OR (ord($icc{37}) != 0x63) OR (ord($icc{38}) != 0x73) OR (ord($icc{39}) != 0x70)) { - // invalid ICC profile - $icc = false; - } - } else { - $icc = false; - } - return array('w' => $a[0], 'h' => $a[1], 'ch' => $channels, 'icc' => $icc, 'cs' => $colspace, 'bpc' => $bpc, 'f' => 'DCTDecode', 'data' => $data); - } - - /** - * Extract info from a PNG file without using the GD library. - * @param $file (string) image file to parse - * @return array structure containing the image data - * @protected - */ - protected function _parsepng($file) { - $f = fopen($file, 'rb'); - if ($f === false) { - $this->Error('Can\'t open image file: '.$file); - } - //Check signature - if (fread($f, 8) != chr(137).'PNG'.chr(13).chr(10).chr(26).chr(10)) { - $this->Error('Not a PNG file: '.$file); - } - //Read header chunk - fread($f, 4); - if (fread($f, 4) != 'IHDR') { - $this->Error('Incorrect PNG file: '.$file); - } - $w = $this->_freadint($f); - $h = $this->_freadint($f); - $bpc = ord(fread($f, 1)); - if ($bpc > 8) { - //$this->Error('16-bit depth not supported: '.$file); - fclose($f); - return false; - } - $ct = ord(fread($f, 1)); - if ($ct == 0) { - $colspace = 'DeviceGray'; - } elseif ($ct == 2) { - $colspace = 'DeviceRGB'; - } elseif ($ct == 3) { - $colspace = 'Indexed'; - } else { - // alpha channel - fclose($f); - return 'pngalpha'; - } - if (ord(fread($f, 1)) != 0) { - //$this->Error('Unknown compression method: '.$file); - fclose($f); - return false; - } - if (ord(fread($f, 1)) != 0) { - //$this->Error('Unknown filter method: '.$file); - fclose($f); - return false; - } - if (ord(fread($f, 1)) != 0) { - //$this->Error('Interlacing not supported: '.$file); - fclose($f); - return false; - } - fread($f, 4); - $channels = ($ct == 2 ? 3 : 1); - $parms = '/DecodeParms << /Predictor 15 /Colors '.$channels.' /BitsPerComponent '.$bpc.' /Columns '.$w.' >>'; - //Scan chunks looking for palette, transparency and image data - $pal = ''; - $trns = ''; - $data = ''; - $icc = false; - do { - $n = $this->_freadint($f); - $type = fread($f, 4); - if ($type == 'PLTE') { - // read palette - $pal = $this->rfread($f, $n); - fread($f, 4); - } elseif ($type == 'tRNS') { - // read transparency info - $t = $this->rfread($f, $n); - if ($ct == 0) { - $trns = array(ord($t{1})); - } elseif ($ct == 2) { - $trns = array(ord($t{1}), ord($t{3}), ord($t{5})); - } else { - $pos = strpos($t, chr(0)); - if ($pos !== false) { - $trns = array($pos); - } - } - fread($f, 4); - } elseif ($type == 'IDAT') { - // read image data block - $data .= $this->rfread($f, $n); - fread($f, 4); - } elseif ($type == 'iCCP') { - // skip profile name - $len = 0; - while ((ord(fread($f, 1)) > 0) AND ($len < 80)) { - ++$len; - } - // skip null separator - fread($f, 1); - // get compression method - if (ord(fread($f, 1)) != 0) { - //$this->Error('Unknown filter method: '.$file); - fclose($f); - return false; - } - // read ICC Color Profile - $icc = $this->rfread($f, ($n - $len - 2)); - // decompress profile - $icc = gzuncompress($icc); - fread($f, 4); - } elseif ($type == 'IEND') { - break; - } else { - $this->rfread($f, $n + 4); - } - } while ($n); - if (($colspace == 'Indexed') AND (empty($pal))) { - //$this->Error('Missing palette in '.$file); - fclose($f); - return false; - } - fclose($f); - return array('w' => $w, 'h' => $h, 'ch' => $channels, 'icc' => $icc, 'cs' => $colspace, 'bpc' => $bpc, 'f' => 'FlateDecode', 'parms' => $parms, 'pal' => $pal, 'trns' => $trns, 'data' => $data); - } - - /** - * Binary-safe and URL-safe file read. - * Reads up to length bytes from the file pointer referenced by handle. Reading stops as soon as one of the following conditions is met: length bytes have been read; EOF (end of file) is reached. - * @param $handle (resource) - * @param $length (int) - * @return Returns the read string or FALSE in case of error. - * @author Nicola Asuni - * @protected - * @since 4.5.027 (2009-03-16) - */ - protected function rfread($handle, $length) { - $data = fread($handle, $length); - if ($data === false) { - return false; - } - $rest = $length - strlen($data); - if ($rest > 0) { - $data .= $this->rfread($handle, $rest); - } - return $data; - } - - /** - * Extract info from a PNG image with alpha channel using the GD library. + * Extract info from a PNG image with alpha channel using the Imagick or GD library. * @param $file (string) Name of the file containing the image. * @param $x (float) Abscissa of the upper-left corner. * @param $y (float) Ordinate of the upper-left corner. @@ -8691,7 +7204,7 @@ class TCPDF { $img = new Imagick(); $img->readImage($file); // clone image object - $imga = $this->objclone($img); + $imga = TCPDF_STATIC::objclone($img); // extract alpha channel if (method_exists($img, 'setImageAlphaChannel') AND defined('Imagick::ALPHACHANNEL_EXTRACT')) { $img->setImageAlphaChannel(Imagick::ALPHACHANNEL_EXTRACT); @@ -8958,21 +7471,6 @@ class TCPDF { $this->SetAbsY($y); } - /** - * Ouput input data and compress it if possible. - * @param $data (string) Data to output. - * @param $length (int) Data length in bytes. - * @protected - * @since 5.9.086 - */ - protected function sendOutputData($data, $length) { - if (!isset($_SERVER['HTTP_ACCEPT_ENCODING']) OR empty($_SERVER['HTTP_ACCEPT_ENCODING'])) { - // the content length may vary if the server is using compression - header('Content-Length: '.$length); - } - echo $data; - } - /** * Send the document to a given destination: string, local file or browser. * In the last case, the plug-in may be used (if present) or a download ("Save as" dialog box) may be forced.
                      @@ -9011,20 +7509,20 @@ class TCPDF { } unset($this->buffer); // remove filler space - $byterange_string_len = strlen($this->byterange_string); + $byterange_string_len = strlen(TCPDF_STATIC::$byterange_string); // define the ByteRange $byte_range = array(); $byte_range[0] = 0; - $byte_range[1] = strpos($pdfdoc, $this->byterange_string) + $byterange_string_len + 10; + $byte_range[1] = strpos($pdfdoc, TCPDF_STATIC::$byterange_string) + $byterange_string_len + 10; $byte_range[2] = $byte_range[1] + $this->signature_max_length + 2; $byte_range[3] = strlen($pdfdoc) - $byte_range[2]; $pdfdoc = substr($pdfdoc, 0, $byte_range[1]).substr($pdfdoc, $byte_range[2]); // replace the ByteRange $byterange = sprintf('/ByteRange[0 %u %u %u]', $byte_range[1], $byte_range[2], $byte_range[3]); $byterange .= str_repeat(' ', ($byterange_string_len - strlen($byterange))); - $pdfdoc = str_replace($this->byterange_string, $byterange, $pdfdoc); + $pdfdoc = str_replace(TCPDF_STATIC::$byterange_string, $byterange, $pdfdoc); // write the document to a temporary folder - $tempdoc = $this->getObjFilename('tmppdf'); + $tempdoc = TCPDF_STATIC::getObjFilename('tmppdf'); $f = fopen($tempdoc, 'wb'); if (!$f) { $this->Error('Unable to create temporary file: '.$tempdoc); @@ -9033,7 +7531,7 @@ class TCPDF { fwrite($f, $pdfdoc, $pdfdoc_length); fclose($f); // get digital signature via openssl library - $tempsign = $this->getObjFilename('tmpsig'); + $tempsign = TCPDF_STATIC::getObjFilename('tmpsig'); if (empty($this->signature_data['extracerts'])) { openssl_pkcs7_sign($tempdoc, $tempsign, $this->signature_data['signcert'], array($this->signature_data['privkey'], $this->signature_data['password']), array(), PKCS7_BINARY | PKCS7_DETACHED); } else { @@ -9078,7 +7576,7 @@ class TCPDF { header('Expires: Sat, 26 Jul 1997 05:00:00 GMT'); // Date in the past header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); header('Content-Disposition: inline; filename="'.basename($name).'"'); - $this->sendOutputData($this->getBuffer(), $this->bufferlen); + TCPDF_STATIC::sendOutputData($this->getBuffer(), $this->bufferlen); } else { echo $this->getBuffer(); } @@ -9110,7 +7608,7 @@ class TCPDF { // use the Content-Disposition header to supply a recommended filename header('Content-Disposition: attachment; filename="'.basename($name).'"'); header('Content-Transfer-Encoding: binary'); - $this->sendOutputData($this->getBuffer(), $this->bufferlen); + TCPDF_STATIC::sendOutputData($this->getBuffer(), $this->bufferlen); break; } case 'F': @@ -9136,7 +7634,7 @@ class TCPDF { header('Expires: Sat, 26 Jul 1997 05:00:00 GMT'); // Date in the past header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); header('Content-Disposition: inline; filename="'.basename($name).'"'); - $this->sendOutputData(file_get_contents($name), filesize($name)); + TCPDF_STATIC::sendOutputData(file_get_contents($name), filesize($name)); } elseif ($dest == 'FD') { // send headers to browser if (ob_get_contents()) { @@ -9162,7 +7660,7 @@ class TCPDF { // use the Content-Disposition header to supply a recommended filename header('Content-Disposition: attachment; filename="'.basename($name).'"'); header('Content-Transfer-Encoding: binary'); - $this->sendOutputData(file_get_contents($name), filesize($name)); + TCPDF_STATIC::sendOutputData(file_get_contents($name), filesize($name)); } break; } @@ -9195,7 +7693,7 @@ class TCPDF { * @since 4.5.016 (2009-02-24) */ public function _destroy($destroyall=false, $preserve_objcopy=false) { - if ($destroyall AND isset($this->diskcache) AND $this->diskcache AND (!$preserve_objcopy) AND (!$this->empty_string($this->buffer))) { + if ($destroyall AND isset($this->diskcache) AND $this->diskcache AND (!$preserve_objcopy) AND (!TCPDF_STATIC::empty_string($this->buffer))) { // remove buffer file from cache unlink($this->buffer); } @@ -9243,18 +7741,6 @@ class TCPDF { } } - /** - * Return fonts path - * @return string - * @protected - */ - protected function _getfontpath() { - if (!defined('K_PATH_FONTS') AND is_dir(dirname(__FILE__).'/fonts')) { - define('K_PATH_FONTS', dirname(__FILE__).'/fonts/'); - } - return defined('K_PATH_FONTS') ? K_PATH_FONTS : ''; - } - /** * Return an array containing variations for the basic page number alias. * @param $a (string) Base alias. @@ -9266,14 +7752,14 @@ class TCPDF { // build array of Unicode + ASCII variants (the order is important) $alias = array('u' => array(), 'a' => array()); $u = '{'.$a.'}'; - $alias['u'][] = $this->_escape($u); + $alias['u'][] = TCPDF_STATIC::_escape($u); if ($this->isunicode) { - $alias['u'][] = $this->_escape($this->UTF8ToLatin1($u)); - $alias['u'][] = $this->_escape($this->utf8StrRev($u, false, $this->tmprtl)); - $alias['a'][] = $this->_escape($this->UTF8ToLatin1($a)); - $alias['a'][] = $this->_escape($this->utf8StrRev($a, false, $this->tmprtl)); + $alias['u'][] = TCPDF_STATIC::_escape(TCPDF_FONTS::UTF8ToLatin1($u, $this->isunicode, $this->CurrentFont)); + $alias['u'][] = TCPDF_STATIC::_escape(TCPDF_FONTS::utf8StrRev($u, false, $this->tmprtl, $this->isunicode, $this->CurrentFont)); + $alias['a'][] = TCPDF_STATIC::_escape(TCPDF_FONTS::UTF8ToLatin1($a, $this->isunicode, $this->CurrentFont)); + $alias['a'][] = TCPDF_STATIC::_escape(TCPDF_FONTS::utf8StrRev($a, false, $this->tmprtl, $this->isunicode, $this->CurrentFont)); } - $alias['a'][] = $this->_escape($a); + $alias['a'][] = TCPDF_STATIC::_escape($a); return $alias; } @@ -9283,7 +7769,7 @@ class TCPDF { * @protected */ protected function getAllInternalPageNumberAliases() { - $basic_alias = array($this->alias_tot_pages, $this->alias_num_page, $this->alias_group_tot_pages, $this->alias_group_num_page, $this->alias_right_shift); + $basic_alias = array(TCPDF_STATIC::$alias_tot_pages, TCPDF_STATIC::$alias_num_page, TCPDF_STATIC::$alias_group_tot_pages, TCPDF_STATIC::$alias_group_num_page, TCPDF_STATIC::$alias_right_shift); $pnalias = array(); foreach($basic_alias as $k => $a) { $pnalias[$k] = $this->getInternalPageNumberAliases($a); @@ -9291,26 +7777,6 @@ class TCPDF { return $pnalias; } - /** - * Replace page number aliases with number. - * @param $page (string) Page content. - * @param $replace (array) Array of replacements (array keys are replacement strings, values are alias arrays). - * @param $diff (int) If passed, this will be set to the total char number difference between alias and replacements. - * @return replaced page content and updated $diff parameter as array. - * @protected - */ - protected function replacePageNumAliases($page, $replace, $diff=0) { - foreach ($replace as $rep) { - foreach ($rep[3] as $a) { - if (strpos($page, $a) !== false) { - $page = str_replace($a, $rep[0], $page); - $diff += ($rep[2] - $rep[1]); - } - } - } - return array($page, $diff); - } - /** * Replace right shift page number aliases with spaces to correct right alignment. * This works perfectly only when using monospaced fonts. @@ -9338,7 +7804,7 @@ class TCPDF { if ($type == 'u') { $chrdiff = floor(($diff + 12) * $ratio); $shift = str_repeat(' ', $chrdiff); - $shift = $this->UTF8ToUTF16BE($shift, false); + $shift = TCPDF_FONTS::UTF8ToUTF16BE($shift, false, $this->isunicode, $this->CurrentFont); } else { $chrdiff = floor(($diff + 11) * $ratio); $shift = str_repeat(' ', $chrdiff); @@ -9356,10 +7822,9 @@ class TCPDF { * @protected */ protected function setPageBoxTypes($boxes) { - $validboxes = array('MediaBox', 'CropBox', 'BleedBox', 'TrimBox', 'ArtBox'); $this->page_boxes = array(); foreach ($boxes as $box) { - if (in_array($box, $validboxes)) { + if (in_array($box, TCPDF_STATIC::$pageboxes)) { $this->page_boxes[] = $box; } } @@ -9374,8 +7839,8 @@ class TCPDF { // get internal aliases for page numbers $pnalias = $this->getAllInternalPageNumberAliases(); $num_pages = $this->numpages; - $ptpa = $this->formatPageNumber(($this->starting_page_number + $num_pages - 1)); - $ptpu = $this->UTF8ToUTF16BE($ptpa, false); + $ptpa = TCPDF_STATIC::formatPageNumber(($this->starting_page_number + $num_pages - 1)); + $ptpu = TCPDF_FONTS::UTF8ToUTF16BE($ptpa, false, $this->isunicode, $this->CurrentFont); $ptp_num_chars = $this->GetNumChars($ptpa); $pagegroupnum = 0; $groupnum = 0; @@ -9386,8 +7851,8 @@ class TCPDF { $temppage = $this->getPageBuffer($n); $pagelen = strlen($temppage); // set replacements for total pages number - $pnpa = $this->formatPageNumber(($this->starting_page_number + $n - 1)); - $pnpu = $this->UTF8ToUTF16BE($pnpa, false); + $pnpa = TCPDF_STATIC::formatPageNumber(($this->starting_page_number + $n - 1)); + $pnpu = TCPDF_FONTS::UTF8ToUTF16BE($pnpa, false, $this->isunicode, $this->CurrentFont); $pnp_num_chars = $this->GetNumChars($pnpa); $pdiff = 0; // difference used for right shift alignment of page numbers $gdiff = 0; // difference used for right shift alignment of page group numbers @@ -9395,13 +7860,13 @@ class TCPDF { if (isset($this->newpagegroup[$n])) { $pagegroupnum = 0; ++$groupnum; - $ptga = $this->formatPageNumber($this->pagegroups[$groupnum]); - $ptgu = $this->UTF8ToUTF16BE($ptga, false); + $ptga = TCPDF_STATIC::formatPageNumber($this->pagegroups[$groupnum]); + $ptgu = TCPDF_FONTS::UTF8ToUTF16BE($ptga, false, $this->isunicode, $this->CurrentFont); $ptg_num_chars = $this->GetNumChars($ptga); } ++$pagegroupnum; - $pnga = $this->formatPageNumber($pagegroupnum); - $pngu = $this->UTF8ToUTF16BE($pnga, false); + $pnga = TCPDF_STATIC::formatPageNumber($pagegroupnum); + $pngu = TCPDF_FONTS::UTF8ToUTF16BE($pnga, false, $this->isunicode, $this->CurrentFont); $png_num_chars = $this->GetNumChars($pnga); // replace page numbers $replace = array(); @@ -9409,7 +7874,7 @@ class TCPDF { $replace[] = array($ptga, $ptg_num_chars, 7, $pnalias[2]['a']); $replace[] = array($pngu, $png_num_chars, 9, $pnalias[3]['u']); $replace[] = array($pnga, $png_num_chars, 7, $pnalias[3]['a']); - list($temppage, $gdiff) = $this->replacePageNumAliases($temppage, $replace, $gdiff); + list($temppage, $gdiff) = TCPDF_STATIC::replacePageNumAliases($temppage, $replace, $gdiff); } // replace page numbers $replace = array(); @@ -9417,7 +7882,7 @@ class TCPDF { $replace[] = array($ptpa, $ptp_num_chars, 7, $pnalias[0]['a']); $replace[] = array($pnpu, $pnp_num_chars, 9, $pnalias[1]['u']); $replace[] = array($pnpa, $pnp_num_chars, 7, $pnalias[1]['a']); - list($temppage, $pdiff) = $this->replacePageNumAliases($temppage, $replace, $pdiff); + list($temppage, $pdiff) = TCPDF_STATIC::replacePageNumAliases($temppage, $replace, $pdiff); // replace right shift alias $temppage = $this->replaceRightShiftPageNumAliases($temppage, $pnalias[4], max($pdiff, $gdiff)); // replace EPS marker @@ -9795,7 +8260,7 @@ class TCPDF { $annots .= '>>'; } if (isset($pl['opt']['c']) AND (is_array($pl['opt']['c'])) AND !empty($pl['opt']['c'])) { - $annots .= ' /C '.$this->getColorStringFromArray($pl['opt']['c']); + $annots .= ' /C '.TCPDF_COLORS::getColorStringFromArray($pl['opt']['c']); } //$annots .= ' /StructParent '; //$annots .= ' /OC '; @@ -9861,7 +8326,7 @@ class TCPDF { if (is_string($pl['txt'])) { if ($pl['txt'][0] == '#') { // internal destination - $annots .= ' /Dest /'.$this->encodeNameObject(substr($pl['txt'], 1)); + $annots .= ' /Dest /'.TCPDF_STATIC::encodeNameObject(substr($pl['txt'], 1)); } elseif ($pl['txt'][0] == '%') { // embedded PDF file $filename = basename(substr($pl['txt'], 1)); @@ -10021,10 +8486,10 @@ class TCPDF { $annots .= ' /R '.$pl['opt']['mk']['r']; } if (isset($pl['opt']['mk']['bc']) AND (is_array($pl['opt']['mk']['bc']))) { - $annots .= ' /BC '.$this->getColorStringFromArray($pl['opt']['mk']['bc']); + $annots .= ' /BC '.TCPDF_COLORS::getColorStringFromArray($pl['opt']['mk']['bc']); } if (isset($pl['opt']['mk']['bg']) AND (is_array($pl['opt']['mk']['bg']))) { - $annots .= ' /BG '.$this->getColorStringFromArray($pl['opt']['mk']['bg']); + $annots .= ' /BG '.TCPDF_COLORS::getColorStringFromArray($pl['opt']['mk']['bg']); } if (isset($pl['opt']['mk']['ca'])) { $annots .= ' /CA '.$pl['opt']['mk']['ca']; @@ -10244,1546 +8709,6 @@ class TCPDF { return $this->n; } - /** - * Get ULONG from string (Big Endian 32-bit unsigned integer). - * @param $str (string) string from where to extract value - * @param $offset (int) point from where to read the data - * @return int 32 bit value - * @author Nicola Asuni - * @protected - * @since 5.2.000 (2010-06-02) - */ - protected function _getULONG($str, $offset) { - $v = unpack('Ni', substr($str, $offset, 4)); - return $v['i']; - } - - /** - * Get USHORT from string (Big Endian 16-bit unsigned integer). - * @param $str (string) string from where to extract value - * @param $offset (int) point from where to read the data - * @return int 16 bit value - * @author Nicola Asuni - * @protected - * @since 5.2.000 (2010-06-02) - */ - protected function _getUSHORT($str, $offset) { - $v = unpack('ni', substr($str, $offset, 2)); - return $v['i']; - } - - /** - * Get SHORT from string (Big Endian 16-bit signed integer). - * @param $str (string) String from where to extract value. - * @param $offset (int) Point from where to read the data. - * @return int 16 bit value - * @author Nicola Asuni - * @protected - * @since 5.2.000 (2010-06-02) - */ - protected function _getSHORT($str, $offset) { - $v = unpack('si', substr($str, $offset, 2)); - return $v['i']; - } - - /** - * Get FWORD from string (Big Endian 16-bit signed integer). - * @param $str (string) String from where to extract value. - * @param $offset (int) Point from where to read the data. - * @return int 16 bit value - * @author Nicola Asuni - * @protected - * @since 5.9.123 (2011-09-30) - */ - protected function _getFWORD($str, $offset) { - $v = $this->_getUSHORT($str, $offset); - if ($v > 0x7fff) { - $v -= 0x10000; - } - return $v; - } - - /** - * Get UFWORD from string (Big Endian 16-bit unsigned integer). - * @param $str (string) string from where to extract value - * @param $offset (int) point from where to read the data - * @return int 16 bit value - * @author Nicola Asuni - * @protected - * @since 5.9.123 (2011-09-30) - */ - protected function _getUFWORD($str, $offset) { - $v = $this->_getUSHORT($str, $offset); - return $v; - } - - /** - * Get FIXED from string (32-bit signed fixed-point number (16.16). - * @param $str (string) string from where to extract value - * @param $offset (int) point from where to read the data - * @return int 16 bit value - * @author Nicola Asuni - * @protected - * @since 5.9.123 (2011-09-30) - */ - protected function _getFIXED($str, $offset) { - // mantissa - $m = $this->_getFWORD($str, $offset); - // fraction - $f = $this->_getUSHORT($str, ($offset + 2)); - $v = floatval(''.$m.'.'.$f.''); - return $v; - } - - /** - * Get BYTE from string (8-bit unsigned integer). - * @param $str (string) String from where to extract value. - * @param $offset (int) Point from where to read the data. - * @return int 8 bit value - * @author Nicola Asuni - * @protected - * @since 5.2.000 (2010-06-02) - */ - protected function _getBYTE($str, $offset) { - $v = unpack('Ci', substr($str, $offset, 1)); - return $v['i']; - } - /** - * Update the CIDToGIDMap string with a new value. - * @param $map (string) CIDToGIDMap. - * @param $cid (int) CID value. - * @param $gid (int) GID value. - * @return (string) CIDToGIDMap. - * @author Nicola Asuni - * @protected - * @since 5.9.123 (2011-09-29) - */ - protected function updateCIDtoGIDmap($map, $cid, $gid) { - if (($cid >= 0) AND ($cid <= 0xFFFF) AND ($gid >= 0)) { - if ($gid > 0xFFFF) { - $gid -= 0x10000; - } - $map[($cid * 2)] = chr($gid >> 8); - $map[(($cid * 2) + 1)] = chr($gid & 0xFF); - } - return $map; - } - - /** - * Convert and add the selected TrueType or Type1 font to the fonts folder (that must be writeable). - * @param $fontfile (string) Font file (full path). - * @param $fonttype (string) Font type. Leave empty for autodetect mode. Valid values are: TrueTypeUnicode, TrueType, Type1, CID0JP = CID-0 Japanese, CID0KR = CID-0 Korean, CID0CS = CID-0 Chinese Simplified, CID0CT = CID-0 Chinese Traditional. - * @param $enc (string) Name of the encoding table to use. Leave empty for default mode. Omit this parameter for TrueType Unicode and symbolic fonts like Symbol or ZapfDingBats. - * @param $flags (int) Unsigned 32-bit integer containing flags specifying various characteristics of the font (PDF32000:2008 - 9.8.2 Font Descriptor Flags): +1 for fixed font; +4 for symbol or +32 for non-symbol; +64 for italic. Fixed and Italic mode are generally autodetected so you have to set it to 32 = non-symbolic font (default) or 4 = symbolic font. - * @param $outpath (string) Output path for generated font files (must be writeable by the web server). Leave empty for default font folder. - * @param $platid (int) Platform ID for CMAP table to extract (when building a Unicode font for Windows this value should be 3, for Macintosh should be 1). - * @param $encid (int) Encoding ID for CMAP table to extract (when building a Unicode font for Windows this value should be 1, for Macintosh should be 0). When Platform ID is 3, legal values for Encoding ID are: 0=Symbol, 1=Unicode, 2=ShiftJIS, 3=PRC, 4=Big5, 5=Wansung, 6=Johab, 7=Reserved, 8=Reserved, 9=Reserved, 10=UCS-4. - * @param $addcbbox (boolean) If true includes the character bounding box information on the php font file. - * @return (string) TCPDF font name. - * @author Nicola Asuni - * @public - * @since 5.9.123 (2010-09-30) - */ - public function addTTFfont($fontfile, $fonttype='', $enc='', $flags=32, $outpath='', $platid=3, $encid=1, $addcbbox=false) { - if (!file_exists($fontfile)) { - $this->Error('Could not find file: '.$fontfile.''); - } - // font metrics - $fmetric = array(); - // build new font name for TCPDF compatibility - $font_path_parts = pathinfo($fontfile); - if (!isset($font_path_parts['filename'])) { - $font_path_parts['filename'] = substr($font_path_parts['basename'], 0, -(strlen($font_path_parts['extension']) + 1)); - } - $font_name = strtolower($font_path_parts['filename']); - $font_name = preg_replace('/[^a-z0-9_]/', '', $font_name); - $search = array('bold', 'oblique', 'italic', 'regular'); - $replace = array('b', 'i', 'i', ''); - $font_name = str_replace($search, $replace, $font_name); - if (empty($font_name)) { - // set generic name - $font_name = 'tcpdffont'; - } - // set output path - if (empty($outpath)) { - $outpath = $this->_getfontpath(); - } - // check if this font already exist - if (file_exists($outpath.$font_name.'.php')) { - // this font already exist (delete it from fonts folder to rebuild it) - return $font_name; - } - $fmetric['file'] = $font_name.'.z'; - $fmetric['ctg'] = $font_name.'.ctg.z'; - // get font data - $font = file_get_contents($fontfile); - $fmetric['originalsize'] = strlen($font); - // autodetect font type - if (empty($fonttype)) { - if ($this->_getULONG($font, 0) == 0x10000) { - // True Type (Unicode or not) - $fonttype = 'TrueTypeUnicode'; - } elseif (substr($font, 0, 4) == 'OTTO') { - // Open Type (Unicode or not) - $this->Error('Unsupported font format: OpenType with CFF data.'); - } else { - // Type 1 - $fonttype = 'Type1'; - } - } - // set font type - switch ($fonttype) { - case 'CID0CT': - case 'CID0CS': - case 'CID0KR': - case 'CID0JP': { - $fmetric['type'] = 'cidfont0'; - break; - } - case 'Type1': { - $fmetric['type'] = 'Type1'; - if (empty($enc) AND (($flags & 4) == 0)) { - $enc = 'cp1252'; - } - break; - } - case 'TrueType': { - $fmetric['type'] = 'TrueType'; - break; - } - case 'TrueTypeUnicode': - default: { - $fmetric['type'] = 'TrueTypeUnicode'; - break; - } - } - // set encoding maps (if any) - $fmetric['enc'] = preg_replace('/[^A-Za-z0-9_\-]/', '', $enc); - $fmetric['diff'] = ''; - if (($fmetric['type'] == 'TrueType') OR ($fmetric['type'] == 'Type1')) { - if (!empty($enc) AND ($enc != 'cp1252') AND isset($this->encmaps->encmap[$enc])) { - // build differences from reference encoding - $enc_ref = $this->encmaps->encmap['cp1252']; - $enc_target = $this->encmaps->encmap[$enc]; - $last = 0; - for ($i = 32; $i <= 255; ++$i) { - if ($enc_target != $enc_ref[$i]) { - if ($i != ($last + 1)) { - $fmetric['diff'] .= $i.' '; - } - $last = $i; - $fmetric['diff'] .= '/'.$enc_target[$i].' '; - } - } - } - } - // parse the font by type - if ($fmetric['type'] == 'Type1') { - // ---------- TYPE 1 ---------- - // read first segment - $a = unpack('Cmarker/Ctype/Vsize', substr($font, 0, 6)); - if ($a['marker'] != 128) { - $this->Error('Font file is not a valid binary Type1'); - } - $fmetric['size1'] = $a['size']; - $data = substr($font, 6, $fmetric['size1']); - // read second segment - $a = unpack('Cmarker/Ctype/Vsize', substr($font, (6 + $fmetric['size1']), 6)); - if ($a['marker'] != 128) { - $this->Error('Font file is not a valid binary Type1'); - } - $fmetric['size2'] = $a['size']; - $encrypted = substr($font, (12 + $fmetric['size1']), $fmetric['size2']); - $data .= $encrypted; - // store compressed font - $fp = fopen($outpath.$fmetric['file'], 'wb'); - fwrite($fp, gzcompress($data)); - fclose($fp); - // get font info - $fmetric['Flags'] = $flags; - preg_match ('#/FullName[\s]*\(([^\)]*)#', $font, $matches); - $fmetric['name'] = preg_replace('/[^a-zA-Z0-9_\-]/', '', $matches[1]); - preg_match('#/FontBBox[\s]*{([^}]*)#', $font, $matches); - $fmetric['bbox'] = trim($matches[1]); - $bv = explode(' ', $fmetric['bbox']); - $fmetric['Ascent'] = intval($bv[3]); - $fmetric['Descent'] = intval($bv[1]); - preg_match('#/ItalicAngle[\s]*([0-9\+\-]*)#', $font, $matches); - $fmetric['italicAngle'] = intval($matches[1]); - if ($fmetric['italicAngle'] != 0) { - $fmetric['Flags'] |= 64; - } - preg_match('#/UnderlinePosition[\s]*([0-9\+\-]*)#', $font, $matches); - $fmetric['underlinePosition'] = intval($matches[1]); - preg_match('#/UnderlineThickness[\s]*([0-9\+\-]*)#', $font, $matches); - $fmetric['underlineThickness'] = intval($matches[1]); - preg_match('#/isFixedPitch[\s]*([^\s]*)#', $font, $matches); - if ($matches[1] == 'true') { - $fmetric['Flags'] |= 1; - } - // get internal map - $imap = array(); - if (preg_match_all('#dup[\s]([0-9]+)[\s]*/([^\s]*)[\s]put#sU', $font, $fmap, PREG_SET_ORDER) > 0) { - foreach ($fmap as $v) { - $imap[$v[2]] = $v[1]; - } - } - // decrypt eexec encrypted part - $r = 55665; // eexec encryption constant - $c1 = 52845; - $c2 = 22719; - $elen = strlen($encrypted); - $eplain = ''; - for ($i = 0; $i < $elen; ++$i) { - $chr = ord($encrypted[$i]); - $eplain .= chr($chr ^ ($r >> 8)); - $r = ((($chr + $r) * $c1 + $c2) % 65536); - } - if (preg_match('#/ForceBold[\s]*([^\s]*)#', $eplain, $matches) > 0) { - if ($matches[1] == 'true') { - $fmetric['Flags'] |= 0x40000; - } - } - if (preg_match('#/StdVW[\s]*\[([^\]]*)#', $eplain, $matches) > 0) { - $fmetric['StemV'] = intval($matches[1]); - } else { - $fmetric['StemV'] = 70; - } - if (preg_match('#/StdHW[\s]*\[([^\]]*)#', $eplain, $matches) > 0) { - $fmetric['StemH'] = intval($matches[1]); - } else { - $fmetric['StemH'] = 30; - } - if (preg_match('#/BlueValues[\s]*\[([^\]]*)#', $eplain, $matches) > 0) { - $bv = explode(' ', $matches[1]); - if (count($bv) >= 6) { - $v1 = intval($bv[2]); - $v2 = intval($bv[4]); - if ($v1 <= $v2) { - $fmetric['XHeight'] = $v1; - $fmetric['CapHeight'] = $v2; - } else { - $fmetric['XHeight'] = $v2; - $fmetric['CapHeight'] = $v1; - } - } else { - $fmetric['XHeight'] = 450; - $fmetric['CapHeight'] = 700; - } - } else { - $fmetric['XHeight'] = 450; - $fmetric['CapHeight'] = 700; - } - // get the number of random bytes at the beginning of charstrings - if (preg_match('#/lenIV[\s]*([0-9]*)#', $eplain, $matches) > 0) { - $lenIV = intval($matches[1]); - } else { - $lenIV = 4; - } - $fmetric['Leading'] = 0; - // get charstring data - $eplain = substr($eplain, (strpos($eplain, '/CharStrings') + 1)); - preg_match_all('#/([A-Za-z0-9\.]*)[\s][0-9]+[\s]RD[\s](.*)[\s]ND#sU', $eplain, $matches, PREG_SET_ORDER); - if (!empty($enc) AND isset($this->encmaps->encmap[$enc])) { - $enc_map = $this->encmaps->encmap[$enc]; - } else { - $enc_map = false; - } - $fmetric['cw'] = ''; - $fmetric['MaxWidth'] = 0; - $cwidths = array(); - foreach ($matches as $k => $v) { - $cid = 0; - if (isset($imap[$v[1]])) { - $cid = $imap[$v[1]]; - } elseif ($enc_map !== false) { - $cid = array_search($v[1], $enc_map); - if ($cid === false) { - $cid = 0; - } elseif ($cid > 1000) { - $cid -= 1000; - } - } - // decrypt charstring encrypted part - $r = 4330; // charstring encryption constant - $c1 = 52845; - $c2 = 22719; - $cd = $v[2]; - $clen = strlen($cd); - $ccom = array(); - for ($i = 0; $i < $clen; ++$i) { - $chr = ord($cd[$i]); - $ccom[] = ($chr ^ ($r >> 8)); - $r = ((($chr + $r) * $c1 + $c2) % 65536); - } - // decode numbers - $cdec = array(); - $ck = 0; - $i = $lenIV; - while ($i < $clen) { - if ($ccom[$i] < 32) { - $cdec[$ck] = $ccom[$i]; - if (($ck > 0) AND ($cdec[$ck] == 13)) { - // hsbw command: update width - $cwidths[$cid] = $cdec[($ck - 1)]; - } - ++$i; - } elseif (($ccom[$i] >= 32) AND ($ccom[$i] <= 246)) { - $cdec[$ck] = ($ccom[$i] - 139); - ++$i; - } elseif (($ccom[$i] >= 247) AND ($ccom[$i] <= 250)) { - $cdec[$ck] = ((($ccom[$i] - 247) * 256) + $ccom[($i + 1)] + 108); - $i += 2; - } elseif (($ccom[$i] >= 251) AND ($ccom[$i] <= 254)) { - $cdec[$ck] = ((-($ccom[$i] - 251) * 256) - $ccom[($i + 1)] - 108); - $i += 2; - } elseif ($ccom[$i] == 255) { - $sval = chr($ccom[($i + 1)]).chr($ccom[($i + 2)]).chr($ccom[($i + 3)]).chr($ccom[($i + 4)]); - $vsval = unpack('li', $sval); - $cdec[$ck] = $vsval['i']; - $i += 5; - } - ++$ck; - } - } // end for each matches - $fmetric['MissingWidth'] = $cwidths[0]; - $fmetric['MaxWidth'] = $fmetric['MissingWidth']; - $fmetric['AvgWidth'] = 0; - // set chars widths - for ($cid = 0; $cid <= 255; ++$cid) { - if (isset($cwidths[$cid])) { - if ($cwidths[$cid] > $fmetric['MaxWidth']) { - $fmetric['MaxWidth'] = $cwidths[$cid]; - } - $fmetric['AvgWidth'] += $cwidths[$cid]; - $fmetric['cw'] .= ','.$cid.'=>'.$cwidths[$cid]; - } else { - $fmetric['cw'] .= ','.$cid.'=>'.$fmetric['MissingWidth']; - } - } - $fmetric['AvgWidth'] = round($fmetric['AvgWidth'] / count($cwidths)); - } else { - // ---------- TRUE TYPE ---------- - if ($fmetric['type'] != 'cidfont0') { - // store compressed font - $fp = fopen($outpath.$fmetric['file'], 'wb'); - fwrite($fp, gzcompress($font)); - fclose($fp); - } - $offset = 0; // offset position of the font data - if ($this->_getULONG($font, $offset) != 0x10000) { - // sfnt version must be 0x00010000 for TrueType version 1.0. - return $font; - } - $offset += 4; - // get number of tables - $numTables = $this->_getUSHORT($font, $offset); - $offset += 2; - // skip searchRange, entrySelector and rangeShift - $offset += 6; - // tables array - $table = array(); - // ---------- get tables ---------- - for ($i = 0; $i < $numTables; ++$i) { - // get table info - $tag = substr($font, $offset, 4); - $offset += 4; - $table[$tag] = array(); - $table[$tag]['checkSum'] = $this->_getULONG($font, $offset); - $offset += 4; - $table[$tag]['offset'] = $this->_getULONG($font, $offset); - $offset += 4; - $table[$tag]['length'] = $this->_getULONG($font, $offset); - $offset += 4; - } - // check magicNumber - $offset = $table['head']['offset'] + 12; - if ($this->_getULONG($font, $offset) != 0x5F0F3CF5) { - // magicNumber must be 0x5F0F3CF5 - return $font; - } - $offset += 4; - $offset += 2; // skip flags - // get FUnits - $fmetric['unitsPerEm'] = $this->_getUSHORT($font, $offset); - $offset += 2; - // units ratio constant - $urk = (1000 / $fmetric['unitsPerEm']); - $offset += 16; // skip created, modified - $xMin = round($this->_getFWORD($font, $offset) * $urk); - $offset += 2; - $yMin = round($this->_getFWORD($font, $offset) * $urk); - $offset += 2; - $xMax = round($this->_getFWORD($font, $offset) * $urk); - $offset += 2; - $yMax = round($this->_getFWORD($font, $offset) * $urk); - $offset += 2; - $fmetric['bbox'] = ''.$xMin.' '.$yMin.' '.$xMax.' '.$yMax.''; - $macStyle = $this->_getUSHORT($font, $offset); - $offset += 2; - // PDF font flags - $fmetric['Flags'] = $flags; - if (($macStyle & 2) == 2) { - // italic flag - $fmetric['Flags'] |= 64; - } - // get offset mode (indexToLocFormat : 0 = short, 1 = long) - $offset = $table['head']['offset'] + 50; - $short_offset = ($this->_getSHORT($font, $offset) == 0); - $offset += 2; - // get the offsets to the locations of the glyphs in the font, relative to the beginning of the glyphData table - $indexToLoc = array(); - $offset = $table['loca']['offset']; - if ($short_offset) { - // short version - $tot_num_glyphs = ($table['loca']['length'] / 2); // numGlyphs + 1 - for ($i = 0; $i < $tot_num_glyphs; ++$i) { - $indexToLoc[$i] = $this->_getUSHORT($font, $offset) * 2; - $offset += 2; - } - } else { - // long version - $tot_num_glyphs = ($table['loca']['length'] / 4); // numGlyphs + 1 - for ($i = 0; $i < $tot_num_glyphs; ++$i) { - $indexToLoc[$i] = $this->_getULONG($font, $offset); - $offset += 4; - } - } - // get glyphs indexes of chars from cmap table - $offset = $table['cmap']['offset'] + 2; - $numEncodingTables = $this->_getUSHORT($font, $offset); - $offset += 2; - $encodingTables = array(); - for ($i = 0; $i < $numEncodingTables; ++$i) { - $encodingTables[$i]['platformID'] = $this->_getUSHORT($font, $offset); - $offset += 2; - $encodingTables[$i]['encodingID'] = $this->_getUSHORT($font, $offset); - $offset += 2; - $encodingTables[$i]['offset'] = $this->_getULONG($font, $offset); - $offset += 4; - } - // ---------- get os/2 metrics ---------- - $offset = $table['OS/2']['offset']; - $offset += 2; // skip version - // xAvgCharWidth - $fmetric['AvgWidth'] = round($this->_getFWORD($font, $offset) * $urk); - $offset += 2; - // usWeightClass - $usWeightClass = round($this->_getUFWORD($font, $offset) * $urk); - // estimate StemV and StemH (400 = usWeightClass for Normal - Regular font) - $fmetric['StemV'] = round((70 * $usWeightClass) / 400); - $fmetric['StemH'] = round((30 * $usWeightClass) / 400); - $offset += 2; - $offset += 2; // usWidthClass - $fsType = $this->_getSHORT($font, $offset); - $offset += 2; - if ($fsType == 2) { - $this->Error('This Font cannot be modified, embedded or exchanged in any manner without first obtaining permission of the legal owner.'); - } - // ---------- get font name ---------- - $fmetric['name'] = ''; - $offset = $table['name']['offset']; - $offset += 2; // skip Format selector (=0). - // Number of NameRecords that follow n. - $numNameRecords = $this->_getUSHORT($font, $offset); - $offset += 2; - // Offset to start of string storage (from start of table). - $stringStorageOffset = $this->_getUSHORT($font, $offset); - $offset += 2; - for ($i = 0; $i < $numNameRecords; ++$i) { - $offset += 6; // skip Platform ID, Platform-specific encoding ID, Language ID. - // Name ID. - $nameID = $this->_getUSHORT($font, $offset); - $offset += 2; - if ($nameID == 6) { - // String length (in bytes). - $stringLength = $this->_getUSHORT($font, $offset); - $offset += 2; - // String offset from start of storage area (in bytes). - $stringOffset = $this->_getUSHORT($font, $offset); - $offset += 2; - $offset = ($table['name']['offset'] + $stringStorageOffset + $stringOffset); - $fmetric['name'] = substr($font, $offset, $stringLength); - $fmetric['name'] = preg_replace('/[^a-zA-Z0-9_\-]/', '', $fmetric['name']); - break; - } else { - $offset += 4; // skip String length, String offset - } - } - if (empty($fmetric['name'])) { - $fmetric['name'] = $font_name; - } - // ---------- get post data ---------- - $offset = $table['post']['offset']; - $offset += 4; // skip Format Type - $fmetric['italicAngle'] = $this->_getFIXED($font, $offset); - $offset += 4; - $fmetric['underlinePosition'] = round($this->_getFWORD($font, $offset) * $urk); - $offset += 2; - $fmetric['underlineThickness'] = round($this->_getFWORD($font, $offset) * $urk); - $offset += 2; - $isFixedPitch = ($this->_getULONG($font, $offset) == 0) ? false : true; - $offset += 2; - if ($isFixedPitch) { - $fmetric['Flags'] |= 1; - } - // ---------- get hhea data ---------- - $offset = $table['hhea']['offset']; - $offset += 4; // skip Table version number - // Ascender - $fmetric['Ascent'] = round($this->_getFWORD($font, $offset) * $urk); - $offset += 2; - // Descender - $fmetric['Descent'] = round($this->_getFWORD($font, $offset) * $urk); - $offset += 2; - // LineGap - $fmetric['Leading'] = round($this->_getFWORD($font, $offset) * $urk); - $offset += 2; - // advanceWidthMax - $fmetric['MaxWidth'] = round($this->_getUFWORD($font, $offset) * $urk); - $offset += 2; - $offset += 22; // skip some values - // get the number of hMetric entries in hmtx table - $numberOfHMetrics = $this->_getUSHORT($font, $offset); - // ---------- get maxp data ---------- - $offset = $table['maxp']['offset']; - $offset += 4; // skip Table version number - // get the the number of glyphs in the font. - $numGlyphs = $this->_getUSHORT($font, $offset); - // ---------- get CIDToGIDMap ---------- - $ctg = array(); - foreach ($encodingTables as $enctable) { - // get only specified Platform ID and Encoding ID - if (($enctable['platformID'] == $platid) AND ($enctable['encodingID'] == $encid)) { - $offset = $table['cmap']['offset'] + $enctable['offset']; - $format = $this->_getUSHORT($font, $offset); - $offset += 2; - switch ($format) { - case 0: { // Format 0: Byte encoding table - $offset += 4; // skip length and version/language - for ($c = 0; $c < 256; ++$c) { - $g = $this->_getBYTE($font, $offset); - $ctg[$c] = $g; - ++$offset; - } - break; - } - case 2: { // Format 2: High-byte mapping through table - $offset += 4; // skip length and version/language - $numSubHeaders = 0; - for ($i = 0; $i < 256; ++$i) { - // Array that maps high bytes to subHeaders: value is subHeader index * 8. - $subHeaderKeys[$i] = ($this->_getUSHORT($font, $offset) / 8); - $offset += 2; - if ($numSubHeaders < $subHeaderKeys[$i]) { - $numSubHeaders = $subHeaderKeys[$i]; - } - } - // the number of subHeaders is equal to the max of subHeaderKeys + 1 - ++$numSubHeaders; - // read subHeader structures - $subHeaders = array(); - $numGlyphIndexArray = 0; - for ($k = 0; $k < $numSubHeaders; ++$k) { - $subHeaders[$k]['firstCode'] = $this->_getUSHORT($font, $offset); - $offset += 2; - $subHeaders[$k]['entryCount'] = $this->_getUSHORT($font, $offset); - $offset += 2; - $subHeaders[$k]['idDelta'] = $this->_getUSHORT($font, $offset); - $offset += 2; - $subHeaders[$k]['idRangeOffset'] = $this->_getUSHORT($font, $offset); - $offset += 2; - $subHeaders[$k]['idRangeOffset'] -= (2 + (($numSubHeaders - $k - 1) * 8)); - $subHeaders[$k]['idRangeOffset'] /= 2; - $numGlyphIndexArray += $subHeaders[$k]['entryCount']; - } - for ($k = 0; $k < $numGlyphIndexArray; ++$k) { - $glyphIndexArray[$k] = $this->_getUSHORT($font, $offset); - $offset += 2; - } - for ($i = 0; $i < 256; ++$i) { - $k = $subHeaderKeys[$i]; - if ($k == 0) { - // one byte code - $c = $i; - $g = $glyphIndexArray[0]; - $ctg[$c] = $g; - } else { - // two bytes code - $start_byte = $subHeaders[$k]['firstCode']; - $end_byte = $start_byte + $subHeaders[$k]['entryCount']; - for ($j = $start_byte; $j < $end_byte; ++$j) { - // combine high and low bytes - $c = (($i << 8) + $j); - $idRangeOffset = ($subHeaders[$k]['idRangeOffset'] + $j - $subHeaders[$k]['firstCode']); - $g = ($glyphIndexArray[$idRangeOffset] + $idDelta[$k]) % 65536; - if ($g < 0) { - $g = 0; - } - $ctg[$c] = $g; - } - } - } - break; - } - case 4: { // Format 4: Segment mapping to delta values - $length = $this->_getUSHORT($font, $offset); - $offset += 2; - $offset += 2; // skip version/language - $segCount = ($this->_getUSHORT($font, $offset) / 2); - $offset += 2; - $offset += 6; // skip searchRange, entrySelector, rangeShift - $endCount = array(); // array of end character codes for each segment - for ($k = 0; $k < $segCount; ++$k) { - $endCount[$k] = $this->_getUSHORT($font, $offset); - $offset += 2; - } - $offset += 2; // skip reservedPad - $startCount = array(); // array of start character codes for each segment - for ($k = 0; $k < $segCount; ++$k) { - $startCount[$k] = $this->_getUSHORT($font, $offset); - $offset += 2; - } - $idDelta = array(); // delta for all character codes in segment - for ($k = 0; $k < $segCount; ++$k) { - $idDelta[$k] = $this->_getUSHORT($font, $offset); - $offset += 2; - } - $idRangeOffset = array(); // Offsets into glyphIdArray or 0 - for ($k = 0; $k < $segCount; ++$k) { - $idRangeOffset[$k] = $this->_getUSHORT($font, $offset); - $offset += 2; - } - $gidlen = ($length / 2) - 8 - (4 * $segCount); - $glyphIdArray = array(); // glyph index array - for ($k = 0; $k < $gidlen; ++$k) { - $glyphIdArray[$k] = $this->_getUSHORT($font, $offset); - $offset += 2; - } - for ($k = 0; $k < $segCount; ++$k) { - for ($c = $startCount[$k]; $c <= $endCount[$k]; ++$c) { - if ($idRangeOffset[$k] == 0) { - $g = ($idDelta[$k] + $c) % 65536; - } else { - $gid = (($idRangeOffset[$k] / 2) + ($c - $startCount[$k]) - ($segCount - $k)); - $g = ($glyphIdArray[$gid] + $idDelta[$k]) % 65536; - } - if ($g < 0) { - $g = 0; - } - $ctg[$c] = $g; - } - } - break; - } - case 6: { // Format 6: Trimmed table mapping - $offset += 4; // skip length and version/language - $firstCode = $this->_getUSHORT($font, $offset); - $offset += 2; - $entryCount = $this->_getUSHORT($font, $offset); - $offset += 2; - for ($k = 0; $k < $entryCount; ++$k) { - $c = ($k + $firstCode); - $g = $this->_getUSHORT($font, $offset); - $offset += 2; - $ctg[$c] = $g; - } - break; - } - case 8: { // Format 8: Mixed 16-bit and 32-bit coverage - $offset += 10; // skip reserved, length and version/language - for ($k = 0; $k < 8192; ++$k) { - $is32[$k] = $this->_getBYTE($font, $offset); - ++$offset; - } - $nGroups = $this->_getULONG($font, $offset); - $offset += 4; - for ($i = 0; $i < $nGroups; ++$i) { - $startCharCode = $this->_getULONG($font, $offset); - $offset += 4; - $endCharCode = $this->_getULONG($font, $offset); - $offset += 4; - $startGlyphID = $this->_getULONG($font, $offset); - $offset += 4; - for ($k = $startCharCode; $k <= $endCharCode; ++$k) { - $is32idx = floor($c / 8); - if ((isset($is32[$is32idx])) AND (($is32[$is32idx] & (1 << (7 - ($c % 8)))) == 0)) { - $c = $k; - } else { - // 32 bit format - // convert to decimal (http://www.unicode.org/faq//utf_bom.html#utf16-4) - //LEAD_OFFSET = (0xD800 - (0x10000 >> 10)) = 55232 - //SURROGATE_OFFSET = (0x10000 - (0xD800 << 10) - 0xDC00) = -56613888 - $c = ((55232 + ($k >> 10)) << 10) + (0xDC00 + ($k & 0x3FF)) -56613888; - } - $ctg[$c] = 0; - ++$startGlyphID; - } - } - break; - } - case 10: { // Format 10: Trimmed array - $offset += 10; // skip reserved, length and version/language - $startCharCode = $this->_getULONG($font, $offset); - $offset += 4; - $numChars = $this->_getULONG($font, $offset); - $offset += 4; - for ($k = 0; $k < $numChars; ++$k) { - $c = ($k + $startCharCode); - $g = $this->_getUSHORT($font, $offset); - $ctg[$c] = $g; - $offset += 2; - } - break; - } - case 12: { // Format 12: Segmented coverage - $offset += 10; // skip length and version/language - $nGroups = $this->_getULONG($font, $offset); - $offset += 4; - for ($k = 0; $k < $nGroups; ++$k) { - $startCharCode = $this->_getULONG($font, $offset); - $offset += 4; - $endCharCode = $this->_getULONG($font, $offset); - $offset += 4; - $startGlyphCode = $this->_getULONG($font, $offset); - $offset += 4; - for ($c = $startCharCode; $c <= $endCharCode; ++$c) { - $ctg[$c] = $startGlyphCode; - ++$startGlyphCode; - } - } - break; - } - case 13: { // Format 13: Many-to-one range mappings - // to be implemented ... - break; - } - case 14: { // Format 14: Unicode Variation Sequences - // to be implemented ... - break; - } - } - } - } - if (!isset($ctg[0])) { - $ctg[0] = 0; - } - // get xHeight (height of x) - $offset = ($table['glyf']['offset'] + $indexToLoc[$ctg[120]] + 4); - $yMin = $this->_getFWORD($font, $offset); - $offset += 4; - $yMax = $this->_getFWORD($font, $offset); - $offset += 2; - $fmetric['XHeight'] = round(($yMax - $yMin) * $urk); - // get CapHeight (height of H) - $offset = ($table['glyf']['offset'] + $indexToLoc[$ctg[72]] + 4); - $yMin = $this->_getFWORD($font, $offset); - $offset += 4; - $yMax = $this->_getFWORD($font, $offset); - $offset += 2; - $fmetric['CapHeight'] = round(($yMax - $yMin) * $urk); - // ceate widths array - $cw = array(); - $offset = $table['hmtx']['offset']; - for ($i = 0 ; $i < $numberOfHMetrics; ++$i) { - $cw[$i] = round($this->_getUFWORD($font, $offset) * $urk); - $offset += 4; // skip lsb - } - if ($numberOfHMetrics < $numGlyphs) { - // fill missing widths with the last value - $cw = array_pad($cw, $numGlyphs, $cw[($numberOfHMetrics - 1)]); - } - $fmetric['MissingWidth'] = $cw[0]; - $fmetric['cw'] = ''; - for ($cid = 0; $cid <= 65535; ++$cid) { - if (isset($ctg[$cid])) { - if (isset($cw[$ctg[$cid]])) { - $fmetric['cw'] .= ','.$cid.'=>'.$cw[$ctg[$cid]]; - } - if ($addcbbox AND isset($indexToLoc[$ctg[$cid]])) { - $offset = ($table['glyf']['offset'] + $indexToLoc[$ctg[$cid]]); - $xMin = round($this->_getFWORD($font, $offset + 2)) * $urk; - $yMin = round($this->_getFWORD($font, $offset + 4)) * $urk; - $xMax = round($this->_getFWORD($font, $offset + 6)) * $urk; - $yMax = round($this->_getFWORD($font, $offset + 8)) * $urk; - $fmetric['cbbox'] .= ','.$cid.'=>array('.$xMin.','.$yMin.','.$xMax.','.$yMax.')'; - } - } - } - } // end of true type - if (($fmetric['type'] == 'TrueTypeUnicode') AND (count($ctg) == 256)) { - $fmetric['type'] == 'TrueType'; - } - // ---------- create php font file ---------- - $pfile = '<'.'?'.'php'."\n"; - $pfile .= '// TCPDF FONT FILE DESCRIPTION'."\n"; - $pfile .= '$type=\''.$fmetric['type'].'\';'."\n"; - $pfile .= '$name=\''.$fmetric['name'].'\';'."\n"; - $pfile .= '$up='.$fmetric['underlinePosition'].';'."\n"; - $pfile .= '$ut='.$fmetric['underlineThickness'].';'."\n"; - if ($fmetric['MissingWidth'] > 0) { - $pfile .= '$dw='.$fmetric['MissingWidth'].';'."\n"; - } else { - $pfile .= '$dw='.$fmetric['AvgWidth'].';'."\n"; - } - $pfile .= '$diff=\''.$fmetric['diff'].'\';'."\n"; - if ($fmetric['type'] == 'Type1') { - // Type 1 - $pfile .= '$enc=\''.$fmetric['enc'].'\';'."\n"; - $pfile .= '$file=\''.$fmetric['file'].'\';'."\n"; - $pfile .= '$size1='.$fmetric['size1'].';'."\n"; - $pfile .= '$size2='.$fmetric['size2'].';'."\n"; - } else { - $pfile .= '$originalsize='.$fmetric['originalsize'].';'."\n"; - if ($fmetric['type'] == 'cidfont0') { - // CID-0 - switch ($fonttype) { - case 'CID0JP': { - $pfile .= '// Japanese'."\n"; - $pfile .= '$enc=\'UniJIS-UTF16-H\';'."\n"; - $pfile .= '$cidinfo=array(\'Registry\'=>\'Adobe\', \'Ordering\'=>\'Japan1\',\'Supplement\'=>5);'."\n"; - $pfile .= 'include(dirname(__FILE__).\'/uni2cid_aj16.php\');'."\n"; - break; - } - case 'CID0KR': { - $pfile .= '// Korean'."\n"; - $pfile .= '$enc=\'UniKS-UTF16-H\';'."\n"; - $pfile .= '$cidinfo=array(\'Registry\'=>\'Adobe\', \'Ordering\'=>\'Korea1\',\'Supplement\'=>0);'."\n"; - $pfile .= 'include(dirname(__FILE__).\'/uni2cid_ak12.php\');'."\n"; - break; - } - case 'CID0CS': { - $pfile .= '// Chinese Simplified'."\n"; - $pfile .= '$enc=\'UniGB-UTF16-H\';'."\n"; - $pfile .= '$cidinfo=array(\'Registry\'=>\'Adobe\', \'Ordering\'=>\'GB1\',\'Supplement\'=>2);'."\n"; - $pfile .= 'include(dirname(__FILE__).\'/uni2cid_ag15.php\');'."\n"; - break; - } - case 'CID0CT': - default: { - $pfile .= '// Chinese Traditional'."\n"; - $pfile .= '$enc=\'UniCNS-UTF16-H\';'."\n"; - $pfile .= '$cidinfo=array(\'Registry\'=>\'Adobe\', \'Ordering\'=>\'CNS1\',\'Supplement\'=>0);'."\n"; - $pfile .= 'include(dirname(__FILE__).\'/uni2cid_aj16.php\');'."\n"; - break; - } - } - } else { - // TrueType - $pfile .= '$enc=\''.$fmetric['enc'].'\';'."\n"; - $pfile .= '$file=\''.$fmetric['file'].'\';'."\n"; - $pfile .= '$ctg=\''.$fmetric['ctg'].'\';'."\n"; - // create CIDToGIDMap - $cidtogidmap = str_pad('', 131072, "\x00"); // (256 * 256 * 2) = 131072 - foreach ($ctg as $cid => $gid) { - $cidtogidmap = $this->updateCIDtoGIDmap($cidtogidmap, $cid, $ctg[$cid]); - } - // store compressed CIDToGIDMap - $fp = fopen($outpath.$fmetric['ctg'], 'wb'); - fwrite($fp, gzcompress($cidtogidmap)); - fclose($fp); - } - } - $pfile .= '$desc=array('; - $pfile .= '\'Flags\'=>'.$fmetric['Flags'].','; - $pfile .= '\'FontBBox\'=>\'['.$fmetric['bbox'].']\','; - $pfile .= '\'ItalicAngle\'=>'.$fmetric['italicAngle'].','; - $pfile .= '\'Ascent\'=>'.$fmetric['Ascent'].','; - $pfile .= '\'Descent\'=>'.$fmetric['Descent'].','; - $pfile .= '\'Leading\'=>'.$fmetric['Leading'].','; - $pfile .= '\'CapHeight\'=>'.$fmetric['CapHeight'].','; - $pfile .= '\'XHeight\'=>'.$fmetric['XHeight'].','; - $pfile .= '\'StemV\'=>'.$fmetric['StemV'].','; - $pfile .= '\'StemH\'=>'.$fmetric['StemH'].','; - $pfile .= '\'AvgWidth\'=>'.$fmetric['AvgWidth'].','; - $pfile .= '\'MaxWidth\'=>'.$fmetric['MaxWidth'].','; - $pfile .= '\'MissingWidth\'=>'.$fmetric['MissingWidth'].''; - $pfile .= ');'."\n"; - if (isset($fmetric['cbbox'])) { - $pfile .= '$cbbox=array('.substr($fmetric['cbbox'], 1).');'."\n"; - } - $pfile .= '$cw=array('.substr($fmetric['cw'], 1).');'."\n"; - $pfile .= '// --- EOF ---'."\n"; - // store file - $fp = fopen($outpath.$font_name.'.php', 'w'); - fwrite($fp, $pfile); - fclose($fp); - // return TCPDF font name - return $font_name; - } - - /** - * Returns a subset of the TrueType font data without the unused glyphs. - * @param $font (string) TrueType font data. - * @param $subsetchars (array) Array of used characters (the glyphs to keep). - * @return (string) A subset of TrueType font data without the unused glyphs. - * @author Nicola Asuni - * @protected - * @since 5.2.000 (2010-06-02) - */ - protected function _getTrueTypeFontSubset($font, $subsetchars) { - ksort($subsetchars); - $offset = 0; // offset position of the font data - if ($this->_getULONG($font, $offset) != 0x10000) { - // sfnt version must be 0x00010000 for TrueType version 1.0. - return $font; - } - $offset += 4; - // get number of tables - $numTables = $this->_getUSHORT($font, $offset); - $offset += 2; - // skip searchRange, entrySelector and rangeShift - $offset += 6; - // tables array - $table = array(); - // for each table - for ($i = 0; $i < $numTables; ++$i) { - // get table info - $tag = substr($font, $offset, 4); - $offset += 4; - $table[$tag] = array(); - $table[$tag]['checkSum'] = $this->_getULONG($font, $offset); - $offset += 4; - $table[$tag]['offset'] = $this->_getULONG($font, $offset); - $offset += 4; - $table[$tag]['length'] = $this->_getULONG($font, $offset); - $offset += 4; - } - // check magicNumber - $offset = $table['head']['offset'] + 12; - if ($this->_getULONG($font, $offset) != 0x5F0F3CF5) { - // magicNumber must be 0x5F0F3CF5 - return $font; - } - $offset += 4; - // get offset mode (indexToLocFormat : 0 = short, 1 = long) - $offset = $table['head']['offset'] + 50; - $short_offset = ($this->_getSHORT($font, $offset) == 0); - $offset += 2; - // get the offsets to the locations of the glyphs in the font, relative to the beginning of the glyphData table - $indexToLoc = array(); - $offset = $table['loca']['offset']; - if ($short_offset) { - // short version - $tot_num_glyphs = ($table['loca']['length'] / 2); // numGlyphs + 1 - for ($i = 0; $i < $tot_num_glyphs; ++$i) { - $indexToLoc[$i] = $this->_getUSHORT($font, $offset) * 2; - $offset += 2; - } - } else { - // long version - $tot_num_glyphs = ($table['loca']['length'] / 4); // numGlyphs + 1 - for ($i = 0; $i < $tot_num_glyphs; ++$i) { - $indexToLoc[$i] = $this->_getULONG($font, $offset); - $offset += 4; - } - } - // get glyphs indexes of chars from cmap table - $subsetglyphs = array(); // glyph IDs on key - $subsetglyphs[0] = true; // character codes that do not correspond to any glyph in the font should be mapped to glyph index 0 - $offset = $table['cmap']['offset'] + 2; - $numEncodingTables = $this->_getUSHORT($font, $offset); - $offset += 2; - $encodingTables = array(); - for ($i = 0; $i < $numEncodingTables; ++$i) { - $encodingTables[$i]['platformID'] = $this->_getUSHORT($font, $offset); - $offset += 2; - $encodingTables[$i]['encodingID'] = $this->_getUSHORT($font, $offset); - $offset += 2; - $encodingTables[$i]['offset'] = $this->_getULONG($font, $offset); - $offset += 4; - } - foreach ($encodingTables as $enctable) { - // get all platforms and encodings - $offset = $table['cmap']['offset'] + $enctable['offset']; - $format = $this->_getUSHORT($font, $offset); - $offset += 2; - switch ($format) { - case 0: { // Format 0: Byte encoding table - $offset += 4; // skip length and version/language - for ($c = 0; $c < 256; ++$c) { - if (isset($subsetchars[$c])) { - $g = $this->_getBYTE($font, $offset); - $subsetglyphs[$g] = true; - } - ++$offset; - } - break; - } - case 2: { // Format 2: High-byte mapping through table - $offset += 4; // skip length and version/language - $numSubHeaders = 0; - for ($i = 0; $i < 256; ++$i) { - // Array that maps high bytes to subHeaders: value is subHeader index * 8. - $subHeaderKeys[$i] = ($this->_getUSHORT($font, $offset) / 8); - $offset += 2; - if ($numSubHeaders < $subHeaderKeys[$i]) { - $numSubHeaders = $subHeaderKeys[$i]; - } - } - // the number of subHeaders is equal to the max of subHeaderKeys + 1 - ++$numSubHeaders; - // read subHeader structures - $subHeaders = array(); - $numGlyphIndexArray = 0; - for ($k = 0; $k < $numSubHeaders; ++$k) { - $subHeaders[$k]['firstCode'] = $this->_getUSHORT($font, $offset); - $offset += 2; - $subHeaders[$k]['entryCount'] = $this->_getUSHORT($font, $offset); - $offset += 2; - $subHeaders[$k]['idDelta'] = $this->_getUSHORT($font, $offset); - $offset += 2; - $subHeaders[$k]['idRangeOffset'] = $this->_getUSHORT($font, $offset); - $offset += 2; - $subHeaders[$k]['idRangeOffset'] -= (2 + (($numSubHeaders - $k - 1) * 8)); - $subHeaders[$k]['idRangeOffset'] /= 2; - $numGlyphIndexArray += $subHeaders[$k]['entryCount']; - } - for ($k = 0; $k < $numGlyphIndexArray; ++$k) { - $glyphIndexArray[$k] = $this->_getUSHORT($font, $offset); - $offset += 2; - } - for ($i = 0; $i < 256; ++$i) { - $k = $subHeaderKeys[$i]; - if ($k == 0) { - // one byte code - $c = $i; - if (isset($subsetchars[$c])) { - $g = $glyphIndexArray[0]; - $subsetglyphs[$g] = true; - } - } else { - // two bytes code - $start_byte = $subHeaders[$k]['firstCode']; - $end_byte = $start_byte + $subHeaders[$k]['entryCount']; - for ($j = $start_byte; $j < $end_byte; ++$j) { - // combine high and low bytes - $c = (($i << 8) + $j); - if (isset($subsetchars[$c])) { - $idRangeOffset = ($subHeaders[$k]['idRangeOffset'] + $j - $subHeaders[$k]['firstCode']); - $g = ($glyphIndexArray[$idRangeOffset] + $idDelta[$k]) % 65536; - if ($g < 0) { - $g = 0; - } - $subsetglyphs[$g] = true; - } - } - } - } - break; - } - case 4: { // Format 4: Segment mapping to delta values - $length = $this->_getUSHORT($font, $offset); - $offset += 2; - $offset += 2; // skip version/language - $segCount = ($this->_getUSHORT($font, $offset) / 2); - $offset += 2; - $offset += 6; // skip searchRange, entrySelector, rangeShift - $endCount = array(); // array of end character codes for each segment - for ($k = 0; $k < $segCount; ++$k) { - $endCount[$k] = $this->_getUSHORT($font, $offset); - $offset += 2; - } - $offset += 2; // skip reservedPad - $startCount = array(); // array of start character codes for each segment - for ($k = 0; $k < $segCount; ++$k) { - $startCount[$k] = $this->_getUSHORT($font, $offset); - $offset += 2; - } - $idDelta = array(); // delta for all character codes in segment - for ($k = 0; $k < $segCount; ++$k) { - $idDelta[$k] = $this->_getUSHORT($font, $offset); - $offset += 2; - } - $idRangeOffset = array(); // Offsets into glyphIdArray or 0 - for ($k = 0; $k < $segCount; ++$k) { - $idRangeOffset[$k] = $this->_getUSHORT($font, $offset); - $offset += 2; - } - $gidlen = ($length / 2) - 8 - (4 * $segCount); - $glyphIdArray = array(); // glyph index array - for ($k = 0; $k < $gidlen; ++$k) { - $glyphIdArray[$k] = $this->_getUSHORT($font, $offset); - $offset += 2; - } - for ($k = 0; $k < $segCount; ++$k) { - for ($c = $startCount[$k]; $c <= $endCount[$k]; ++$c) { - if (isset($subsetchars[$c])) { - if ($idRangeOffset[$k] == 0) { - $g = ($idDelta[$k] + $c) % 65536; - } else { - $gid = (($idRangeOffset[$k] / 2) + ($c - $startCount[$k]) - ($segCount - $k)); - $g = ($glyphIdArray[$gid] + $idDelta[$k]) % 65536; - } - if ($g < 0) { - $g = 0; - } - $subsetglyphs[$g] = true; - } - } - } - break; - } - case 6: { // Format 6: Trimmed table mapping - $offset += 4; // skip length and version/language - $firstCode = $this->_getUSHORT($font, $offset); - $offset += 2; - $entryCount = $this->_getUSHORT($font, $offset); - $offset += 2; - for ($k = 0; $k < $entryCount; ++$k) { - $c = ($k + $firstCode); - if (isset($subsetchars[$c])) { - $g = $this->_getUSHORT($font, $offset); - $subsetglyphs[$g] = true; - } - $offset += 2; - } - break; - } - case 8: { // Format 8: Mixed 16-bit and 32-bit coverage - $offset += 10; // skip reserved, length and version/language - for ($k = 0; $k < 8192; ++$k) { - $is32[$k] = $this->_getBYTE($font, $offset); - ++$offset; - } - $nGroups = $this->_getULONG($font, $offset); - $offset += 4; - for ($i = 0; $i < $nGroups; ++$i) { - $startCharCode = $this->_getULONG($font, $offset); - $offset += 4; - $endCharCode = $this->_getULONG($font, $offset); - $offset += 4; - $startGlyphID = $this->_getULONG($font, $offset); - $offset += 4; - for ($k = $startCharCode; $k <= $endCharCode; ++$k) { - $is32idx = floor($c / 8); - if ((isset($is32[$is32idx])) AND (($is32[$is32idx] & (1 << (7 - ($c % 8)))) == 0)) { - $c = $k; - } else { - // 32 bit format - // convert to decimal (http://www.unicode.org/faq//utf_bom.html#utf16-4) - //LEAD_OFFSET = (0xD800 - (0x10000 >> 10)) = 55232 - //SURROGATE_OFFSET = (0x10000 - (0xD800 << 10) - 0xDC00) = -56613888 - $c = ((55232 + ($k >> 10)) << 10) + (0xDC00 + ($k & 0x3FF)) -56613888; - } - if (isset($subsetchars[$c])) { - $subsetglyphs[$startGlyphID] = true; - } - ++$startGlyphID; - } - } - break; - } - case 10: { // Format 10: Trimmed array - $offset += 10; // skip reserved, length and version/language - $startCharCode = $this->_getULONG($font, $offset); - $offset += 4; - $numChars = $this->_getULONG($font, $offset); - $offset += 4; - for ($k = 0; $k < $numChars; ++$k) { - $c = ($k + $startCharCode); - if (isset($subsetchars[$c])) { - $g = $this->_getUSHORT($font, $offset); - $subsetglyphs[$g] = true; - } - $offset += 2; - } - break; - } - case 12: { // Format 12: Segmented coverage - $offset += 10; // skip length and version/language - $nGroups = $this->_getULONG($font, $offset); - $offset += 4; - for ($k = 0; $k < $nGroups; ++$k) { - $startCharCode = $this->_getULONG($font, $offset); - $offset += 4; - $endCharCode = $this->_getULONG($font, $offset); - $offset += 4; - $startGlyphCode = $this->_getULONG($font, $offset); - $offset += 4; - for ($c = $startCharCode; $c <= $endCharCode; ++$c) { - if (isset($subsetchars[$c])) { - $subsetglyphs[$startGlyphCode] = true; - } - ++$startGlyphCode; - } - } - break; - } - case 13: { // Format 13: Many-to-one range mappings - // to be implemented ... - break; - } - case 14: { // Format 14: Unicode Variation Sequences - // to be implemented ... - break; - } - } - } - // include all parts of composite glyphs - $new_sga = $subsetglyphs; - while (!empty($new_sga)) { - $sga = $new_sga; - $new_sga = array(); - foreach ($sga as $key => $val) { - if (isset($indexToLoc[$key])) { - $offset = ($table['glyf']['offset'] + $indexToLoc[$key]); - $numberOfContours = $this->_getSHORT($font, $offset); - $offset += 2; - if ($numberOfContours < 0) { // composite glyph - $offset += 8; // skip xMin, yMin, xMax, yMax - do { - $flags = $this->_getUSHORT($font, $offset); - $offset += 2; - $glyphIndex = $this->_getUSHORT($font, $offset); - $offset += 2; - if (!isset($subsetglyphs[$glyphIndex])) { - // add missing glyphs - $new_sga[$glyphIndex] = true; - } - // skip some bytes by case - if ($flags & 1) { - $offset += 4; - } else { - $offset += 2; - } - if ($flags & 8) { - $offset += 2; - } elseif ($flags & 64) { - $offset += 4; - } elseif ($flags & 128) { - $offset += 8; - } - } while ($flags & 32); - } - } - } - $subsetglyphs += $new_sga; - } - // sort glyphs by key (and remove duplicates) - ksort($subsetglyphs); - // build new glyf and loca tables - $glyf = ''; - $loca = ''; - $offset = 0; - $glyf_offset = $table['glyf']['offset']; - for ($i = 0; $i < $tot_num_glyphs; ++$i) { - if (isset($subsetglyphs[$i])) { - $length = ($indexToLoc[($i + 1)] - $indexToLoc[$i]); - $glyf .= substr($font, ($glyf_offset + $indexToLoc[$i]), $length); - } else { - $length = 0; - } - if ($short_offset) { - $loca .= pack('n', ($offset / 2)); - } else { - $loca .= pack('N', $offset); - } - $offset += $length; - } - // array of table names to preserve (loca and glyf tables will be added later) - // the cmap table is not needed and shall not be present, since the mapping from character codes to glyph descriptions is provided separately - $table_names = array ('head', 'hhea', 'hmtx', 'maxp', 'cvt ', 'fpgm', 'prep'); // minimum required table names - // get the tables to preserve - $offset = 12; - foreach ($table as $tag => $val) { - if (in_array($tag, $table_names)) { - $table[$tag]['data'] = substr($font, $table[$tag]['offset'], $table[$tag]['length']); - if ($tag == 'head') { - // set the checkSumAdjustment to 0 - $table[$tag]['data'] = substr($table[$tag]['data'], 0, 8)."\x0\x0\x0\x0".substr($table[$tag]['data'], 12); - } - $pad = 4 - ($table[$tag]['length'] % 4); - if ($pad != 4) { - // the length of a table must be a multiple of four bytes - $table[$tag]['length'] += $pad; - $table[$tag]['data'] .= str_repeat("\x0", $pad); - } - $table[$tag]['offset'] = $offset; - $offset += $table[$tag]['length']; - // check sum is not changed (so keep the following line commented) - //$table[$tag]['checkSum'] = $this->_getTTFtableChecksum($table[$tag]['data'], $table[$tag]['length']); - } else { - unset($table[$tag]); - } - } - // add loca - $table['loca']['data'] = $loca; - $table['loca']['length'] = strlen($loca); - $pad = 4 - ($table['loca']['length'] % 4); - if ($pad != 4) { - // the length of a table must be a multiple of four bytes - $table['loca']['length'] += $pad; - $table['loca']['data'] .= str_repeat("\x0", $pad); - } - $table['loca']['offset'] = $offset; - $table['loca']['checkSum'] = $this->_getTTFtableChecksum($table['loca']['data'], $table['loca']['length']); - $offset += $table['loca']['length']; - // add glyf - $table['glyf']['data'] = $glyf; - $table['glyf']['length'] = strlen($glyf); - $pad = 4 - ($table['glyf']['length'] % 4); - if ($pad != 4) { - // the length of a table must be a multiple of four bytes - $table['glyf']['length'] += $pad; - $table['glyf']['data'] .= str_repeat("\x0", $pad); - } - $table['glyf']['offset'] = $offset; - $table['glyf']['checkSum'] = $this->_getTTFtableChecksum($table['glyf']['data'], $table['glyf']['length']); - // rebuild font - $font = ''; - $font .= pack('N', 0x10000); // sfnt version - $numTables = count($table); - $font .= pack('n', $numTables); // numTables - $entrySelector = floor(log($numTables, 2)); - $searchRange = pow(2, $entrySelector) * 16; - $rangeShift = ($numTables * 16) - $searchRange; - $font .= pack('n', $searchRange); // searchRange - $font .= pack('n', $entrySelector); // entrySelector - $font .= pack('n', $rangeShift); // rangeShift - $offset = ($numTables * 16); - foreach ($table as $tag => $data) { - $font .= $tag; // tag - $font .= pack('N', $data['checkSum']); // checkSum - $font .= pack('N', ($data['offset'] + $offset)); // offset - $font .= pack('N', $data['length']); // length - } - foreach ($table as $data) { - $font .= $data['data']; - } - // set checkSumAdjustment on head table - $checkSumAdjustment = 0xB1B0AFBA - $this->_getTTFtableChecksum($font, strlen($font)); - $font = substr($font, 0, $table['head']['offset'] + 8).pack('N', $checkSumAdjustment).substr($font, $table['head']['offset'] + 12); - return $font; - } - - /** - * Returs the checksum of a TTF table. - * @param $table (string) table to check - * @param $length (int) length of table in bytes - * @return int checksum - * @author Nicola Asuni - * @protected - * @since 5.2.000 (2010-06-02) - */ - protected function _getTTFtableChecksum($table, $length) { - $sum = 0; - $tlen = ($length / 4); - $offset = 0; - for ($i = 0; $i < $tlen; ++$i) { - $v = unpack('Ni', substr($table, $offset, 4)); - $sum += $v['i']; - $offset += 4; - } - $sum = unpack('Ni', pack('N', $sum)); - return $sum['i']; - } - - /** - * Outputs font widths - * @param $font (array) font data - * @param $cidoffset (int) offset for CID values - * @return PDF command string for font widths - * @author Nicola Asuni - * @protected - * @since 4.4.000 (2008-12-07) - */ - protected function _putfontwidths($font, $cidoffset=0) { - ksort($font['cw']); - $rangeid = 0; - $range = array(); - $prevcid = -2; - $prevwidth = -1; - $interval = false; - // for each character - foreach ($font['cw'] as $cid => $width) { - $cid -= $cidoffset; - if ($font['subset'] AND (!isset($font['subsetchars'][$cid]))) { - // ignore the unused characters (font subsetting) - continue; - } - if ($width != $font['dw']) { - if ($cid == ($prevcid + 1)) { - // consecutive CID - if ($width == $prevwidth) { - if ($width == $range[$rangeid][0]) { - $range[$rangeid][] = $width; - } else { - array_pop($range[$rangeid]); - // new range - $rangeid = $prevcid; - $range[$rangeid] = array(); - $range[$rangeid][] = $prevwidth; - $range[$rangeid][] = $width; - } - $interval = true; - $range[$rangeid]['interval'] = true; - } else { - if ($interval) { - // new range - $rangeid = $cid; - $range[$rangeid] = array(); - $range[$rangeid][] = $width; - } else { - $range[$rangeid][] = $width; - } - $interval = false; - } - } else { - // new range - $rangeid = $cid; - $range[$rangeid] = array(); - $range[$rangeid][] = $width; - $interval = false; - } - $prevcid = $cid; - $prevwidth = $width; - } - } - // optimize ranges - $prevk = -1; - $nextk = -1; - $prevint = false; - foreach ($range as $k => $ws) { - $cws = count($ws); - if (($k == $nextk) AND (!$prevint) AND ((!isset($ws['interval'])) OR ($cws < 4))) { - if (isset($range[$k]['interval'])) { - unset($range[$k]['interval']); - } - $range[$prevk] = array_merge($range[$prevk], $range[$k]); - unset($range[$k]); - } else { - $prevk = $k; - } - $nextk = $k + $cws; - if (isset($ws['interval'])) { - if ($cws > 3) { - $prevint = true; - } else { - $prevint = false; - } - if (isset($range[$k]['interval'])) { - unset($range[$k]['interval']); - } - --$nextk; - } else { - $prevint = false; - } - } - // output data - $w = ''; - foreach ($range as $k => $ws) { - if (count(array_count_values($ws)) == 1) { - // interval mode is more compact - $w .= ' '.$k.' '.($k + count($ws) - 1).' '.$ws[0]; - } else { - // range mode - $w .= ' '.$k.' [ '.implode(' ', $ws).' ]'; - } - } - return '/W ['.$w.' ]'; - } - /** * Output fonts. * @author Nicola Asuni @@ -11796,22 +8721,12 @@ class TCPDF { $this->_newobj(); $this->_out('<< /Type /Encoding /BaseEncoding /WinAnsiEncoding /Differences ['.$diff.'] >>'."\n".'endobj'); } - $mqr = $this->get_mqr(); - $this->set_mqr(false); + $mqr = TCPDF_STATIC::get_mqr(); + TCPDF_STATIC::set_mqr(false); foreach ($this->FontFiles as $file => $info) { // search and get font file to embedd - $fontdir = $info['fontdir']; - $file = strtolower($file); - $fontfile = ''; - // search files on various directories - if (($fontdir !== false) AND file_exists($fontdir.$file)) { - $fontfile = $fontdir.$file; - } elseif (file_exists($this->_getfontpath().$file)) { - $fontfile = $this->_getfontpath().$file; - } elseif (file_exists($file)) { - $fontfile = $file; - } - if (!$this->empty_string($fontfile)) { + $fontfile = TCPDF_FONTS::getFontFullPath($file, $info['fontdir']); + if (!TCPDF_STATIC::empty_string($fontfile)) { $font = file_get_contents($fontfile); $compressed = (substr($file, -2) == '.z'); if ((!$compressed) AND (isset($info['length2']))) { @@ -11836,7 +8751,7 @@ class TCPDF { $subsetchars += $fontinfo['subsetchars']; } // rebuild a font subset - $font = $this->_getTrueTypeFontSubset($font, $subsetchars); + $font = TCPDF_FONTS::_getTrueTypeFontSubset($font, $subsetchars); // calculate new font length $info['length1'] = strlen($font); if ($compressed) { @@ -11861,7 +8776,7 @@ class TCPDF { $this->_out($out); } } - $this->set_mqr($mqr); + TCPDF_STATIC::set_mqr($mqr); foreach ($this->fontkeys as $k) { //Font objects $font = $this->getFontBuffer($k); @@ -11926,7 +8841,7 @@ class TCPDF { } $s .= ' /'.$fdk.' '.$fdv.''; } - if (!$this->empty_string($font['file'])) { + if (!TCPDF_STATIC::empty_string($font['file'])) { $s .= ' /FontFile'.($type == 'Type1' ? '' : '2').' '.$this->FontFiles[$font['file']]['n'].' 0 R'; } $s .= '>>'; @@ -11974,282 +8889,7 @@ class TCPDF { $out .= "\n".'endobj'; $this->_out($out); // ToUnicode map for Identity-H - $stream = "/CIDInit /ProcSet findresource begin\n"; - $stream .= "12 dict begin\n"; - $stream .= "begincmap\n"; - $stream .= "/CIDSystemInfo << /Registry (Adobe) /Ordering (UCS) /Supplement 0 >> def\n"; - $stream .= "/CMapName /Adobe-Identity-UCS def\n"; - $stream .= "/CMapType 2 def\n"; - $stream .= "/WMode 0 def\n"; - $stream .= "1 begincodespacerange\n"; - $stream .= "<0000> \n"; - $stream .= "endcodespacerange\n"; - $stream .= "100 beginbfrange\n"; - $stream .= "<0000> <00ff> <0000>\n"; - $stream .= "<0100> <01ff> <0100>\n"; - $stream .= "<0200> <02ff> <0200>\n"; - $stream .= "<0300> <03ff> <0300>\n"; - $stream .= "<0400> <04ff> <0400>\n"; - $stream .= "<0500> <05ff> <0500>\n"; - $stream .= "<0600> <06ff> <0600>\n"; - $stream .= "<0700> <07ff> <0700>\n"; - $stream .= "<0800> <08ff> <0800>\n"; - $stream .= "<0900> <09ff> <0900>\n"; - $stream .= "<0a00> <0aff> <0a00>\n"; - $stream .= "<0b00> <0bff> <0b00>\n"; - $stream .= "<0c00> <0cff> <0c00>\n"; - $stream .= "<0d00> <0dff> <0d00>\n"; - $stream .= "<0e00> <0eff> <0e00>\n"; - $stream .= "<0f00> <0fff> <0f00>\n"; - $stream .= "<1000> <10ff> <1000>\n"; - $stream .= "<1100> <11ff> <1100>\n"; - $stream .= "<1200> <12ff> <1200>\n"; - $stream .= "<1300> <13ff> <1300>\n"; - $stream .= "<1400> <14ff> <1400>\n"; - $stream .= "<1500> <15ff> <1500>\n"; - $stream .= "<1600> <16ff> <1600>\n"; - $stream .= "<1700> <17ff> <1700>\n"; - $stream .= "<1800> <18ff> <1800>\n"; - $stream .= "<1900> <19ff> <1900>\n"; - $stream .= "<1a00> <1aff> <1a00>\n"; - $stream .= "<1b00> <1bff> <1b00>\n"; - $stream .= "<1c00> <1cff> <1c00>\n"; - $stream .= "<1d00> <1dff> <1d00>\n"; - $stream .= "<1e00> <1eff> <1e00>\n"; - $stream .= "<1f00> <1fff> <1f00>\n"; - $stream .= "<2000> <20ff> <2000>\n"; - $stream .= "<2100> <21ff> <2100>\n"; - $stream .= "<2200> <22ff> <2200>\n"; - $stream .= "<2300> <23ff> <2300>\n"; - $stream .= "<2400> <24ff> <2400>\n"; - $stream .= "<2500> <25ff> <2500>\n"; - $stream .= "<2600> <26ff> <2600>\n"; - $stream .= "<2700> <27ff> <2700>\n"; - $stream .= "<2800> <28ff> <2800>\n"; - $stream .= "<2900> <29ff> <2900>\n"; - $stream .= "<2a00> <2aff> <2a00>\n"; - $stream .= "<2b00> <2bff> <2b00>\n"; - $stream .= "<2c00> <2cff> <2c00>\n"; - $stream .= "<2d00> <2dff> <2d00>\n"; - $stream .= "<2e00> <2eff> <2e00>\n"; - $stream .= "<2f00> <2fff> <2f00>\n"; - $stream .= "<3000> <30ff> <3000>\n"; - $stream .= "<3100> <31ff> <3100>\n"; - $stream .= "<3200> <32ff> <3200>\n"; - $stream .= "<3300> <33ff> <3300>\n"; - $stream .= "<3400> <34ff> <3400>\n"; - $stream .= "<3500> <35ff> <3500>\n"; - $stream .= "<3600> <36ff> <3600>\n"; - $stream .= "<3700> <37ff> <3700>\n"; - $stream .= "<3800> <38ff> <3800>\n"; - $stream .= "<3900> <39ff> <3900>\n"; - $stream .= "<3a00> <3aff> <3a00>\n"; - $stream .= "<3b00> <3bff> <3b00>\n"; - $stream .= "<3c00> <3cff> <3c00>\n"; - $stream .= "<3d00> <3dff> <3d00>\n"; - $stream .= "<3e00> <3eff> <3e00>\n"; - $stream .= "<3f00> <3fff> <3f00>\n"; - $stream .= "<4000> <40ff> <4000>\n"; - $stream .= "<4100> <41ff> <4100>\n"; - $stream .= "<4200> <42ff> <4200>\n"; - $stream .= "<4300> <43ff> <4300>\n"; - $stream .= "<4400> <44ff> <4400>\n"; - $stream .= "<4500> <45ff> <4500>\n"; - $stream .= "<4600> <46ff> <4600>\n"; - $stream .= "<4700> <47ff> <4700>\n"; - $stream .= "<4800> <48ff> <4800>\n"; - $stream .= "<4900> <49ff> <4900>\n"; - $stream .= "<4a00> <4aff> <4a00>\n"; - $stream .= "<4b00> <4bff> <4b00>\n"; - $stream .= "<4c00> <4cff> <4c00>\n"; - $stream .= "<4d00> <4dff> <4d00>\n"; - $stream .= "<4e00> <4eff> <4e00>\n"; - $stream .= "<4f00> <4fff> <4f00>\n"; - $stream .= "<5000> <50ff> <5000>\n"; - $stream .= "<5100> <51ff> <5100>\n"; - $stream .= "<5200> <52ff> <5200>\n"; - $stream .= "<5300> <53ff> <5300>\n"; - $stream .= "<5400> <54ff> <5400>\n"; - $stream .= "<5500> <55ff> <5500>\n"; - $stream .= "<5600> <56ff> <5600>\n"; - $stream .= "<5700> <57ff> <5700>\n"; - $stream .= "<5800> <58ff> <5800>\n"; - $stream .= "<5900> <59ff> <5900>\n"; - $stream .= "<5a00> <5aff> <5a00>\n"; - $stream .= "<5b00> <5bff> <5b00>\n"; - $stream .= "<5c00> <5cff> <5c00>\n"; - $stream .= "<5d00> <5dff> <5d00>\n"; - $stream .= "<5e00> <5eff> <5e00>\n"; - $stream .= "<5f00> <5fff> <5f00>\n"; - $stream .= "<6000> <60ff> <6000>\n"; - $stream .= "<6100> <61ff> <6100>\n"; - $stream .= "<6200> <62ff> <6200>\n"; - $stream .= "<6300> <63ff> <6300>\n"; - $stream .= "endbfrange\n"; - $stream .= "100 beginbfrange\n"; - $stream .= "<6400> <64ff> <6400>\n"; - $stream .= "<6500> <65ff> <6500>\n"; - $stream .= "<6600> <66ff> <6600>\n"; - $stream .= "<6700> <67ff> <6700>\n"; - $stream .= "<6800> <68ff> <6800>\n"; - $stream .= "<6900> <69ff> <6900>\n"; - $stream .= "<6a00> <6aff> <6a00>\n"; - $stream .= "<6b00> <6bff> <6b00>\n"; - $stream .= "<6c00> <6cff> <6c00>\n"; - $stream .= "<6d00> <6dff> <6d00>\n"; - $stream .= "<6e00> <6eff> <6e00>\n"; - $stream .= "<6f00> <6fff> <6f00>\n"; - $stream .= "<7000> <70ff> <7000>\n"; - $stream .= "<7100> <71ff> <7100>\n"; - $stream .= "<7200> <72ff> <7200>\n"; - $stream .= "<7300> <73ff> <7300>\n"; - $stream .= "<7400> <74ff> <7400>\n"; - $stream .= "<7500> <75ff> <7500>\n"; - $stream .= "<7600> <76ff> <7600>\n"; - $stream .= "<7700> <77ff> <7700>\n"; - $stream .= "<7800> <78ff> <7800>\n"; - $stream .= "<7900> <79ff> <7900>\n"; - $stream .= "<7a00> <7aff> <7a00>\n"; - $stream .= "<7b00> <7bff> <7b00>\n"; - $stream .= "<7c00> <7cff> <7c00>\n"; - $stream .= "<7d00> <7dff> <7d00>\n"; - $stream .= "<7e00> <7eff> <7e00>\n"; - $stream .= "<7f00> <7fff> <7f00>\n"; - $stream .= "<8000> <80ff> <8000>\n"; - $stream .= "<8100> <81ff> <8100>\n"; - $stream .= "<8200> <82ff> <8200>\n"; - $stream .= "<8300> <83ff> <8300>\n"; - $stream .= "<8400> <84ff> <8400>\n"; - $stream .= "<8500> <85ff> <8500>\n"; - $stream .= "<8600> <86ff> <8600>\n"; - $stream .= "<8700> <87ff> <8700>\n"; - $stream .= "<8800> <88ff> <8800>\n"; - $stream .= "<8900> <89ff> <8900>\n"; - $stream .= "<8a00> <8aff> <8a00>\n"; - $stream .= "<8b00> <8bff> <8b00>\n"; - $stream .= "<8c00> <8cff> <8c00>\n"; - $stream .= "<8d00> <8dff> <8d00>\n"; - $stream .= "<8e00> <8eff> <8e00>\n"; - $stream .= "<8f00> <8fff> <8f00>\n"; - $stream .= "<9000> <90ff> <9000>\n"; - $stream .= "<9100> <91ff> <9100>\n"; - $stream .= "<9200> <92ff> <9200>\n"; - $stream .= "<9300> <93ff> <9300>\n"; - $stream .= "<9400> <94ff> <9400>\n"; - $stream .= "<9500> <95ff> <9500>\n"; - $stream .= "<9600> <96ff> <9600>\n"; - $stream .= "<9700> <97ff> <9700>\n"; - $stream .= "<9800> <98ff> <9800>\n"; - $stream .= "<9900> <99ff> <9900>\n"; - $stream .= "<9a00> <9aff> <9a00>\n"; - $stream .= "<9b00> <9bff> <9b00>\n"; - $stream .= "<9c00> <9cff> <9c00>\n"; - $stream .= "<9d00> <9dff> <9d00>\n"; - $stream .= "<9e00> <9eff> <9e00>\n"; - $stream .= "<9f00> <9fff> <9f00>\n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= "endbfrange\n"; - $stream .= "56 beginbfrange\n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= " \n"; - $stream .= "endbfrange\n"; - $stream .= "endcmap\n"; - $stream .= "CMapName currentdict /CMap defineresource pop\n"; - $stream .= "end\n"; - $stream .= "end"; + $stream = TCPDF_FONT_DATA::$uni_identity_h; // ToUnicode Object $this->_newobj(); $stream = ($this->compress) ? gzcompress($stream) : $stream; @@ -12269,8 +8909,8 @@ class TCPDF { $out .= ' /CIDSystemInfo << '.$cidinfo.' >>'; $out .= ' /FontDescriptor '.($this->n + 1).' 0 R'; $out .= ' /DW '.$font['dw']; // default width - $out .= "\n".$this->_putfontwidths($font, 0); - if (isset($font['ctg']) AND (!$this->empty_string($font['ctg']))) { + $out .= "\n".TCPDF_FONTS::_putfontwidths($font, 0); + if (isset($font['ctg']) AND (!TCPDF_STATIC::empty_string($font['ctg']))) { $out .= "\n".'/CIDToGIDMap '.($this->n + 2).' 0 R'; } $out .= ' >>'; @@ -12288,7 +8928,7 @@ class TCPDF { $out .= ' /'.$key.' '.$value; } $fontdir = false; - if (!$this->empty_string($font['file'])) { + if (!TCPDF_STATIC::empty_string($font['file'])) { // A stream containing a TrueType font $out .= ' /FontFile2 '.$this->FontFiles[$font['file']]['n'].' 0 R'; $fontdir = $this->FontFiles[$font['file']]['fontdir']; @@ -12296,23 +8936,15 @@ class TCPDF { $out .= ' >>'; $out .= "\n".'endobj'; $this->_out($out); - if (isset($font['ctg']) AND (!$this->empty_string($font['ctg']))) { + if (isset($font['ctg']) AND (!TCPDF_STATIC::empty_string($font['ctg']))) { $this->_newobj(); // Embed CIDToGIDMap // A specification of the mapping from CIDs to glyph indices // search and get CTG font file to embedd $ctgfile = strtolower($font['ctg']); // search and get ctg font file to embedd - $fontfile = ''; - // search files on various directories - if (($fontdir !== false) AND file_exists($fontdir.$ctgfile)) { - $fontfile = $fontdir.$ctgfile; - } elseif (file_exists($this->_getfontpath().$ctgfile)) { - $fontfile = $this->_getfontpath().$ctgfile; - } elseif (file_exists($ctgfile)) { - $fontfile = $ctgfile; - } - if ($this->empty_string($fontfile)) { + $fontfile = TCPDF_FONTS::getFontFullPath($ctgfile, $fontdir); + if (TCPDF_STATIC::empty_string($fontfile)) { $this->Error('Font file not found: '.$ctgfile); } $stream = $this->_getrawstream(file_get_contents($fontfile)); @@ -12385,7 +9017,7 @@ class TCPDF { $out .= ' /CIDSystemInfo <<'.$cidinfo.'>>'; $out .= ' /FontDescriptor '.($this->n + 1).' 0 R'; $out .= ' /DW '.$font['dw']; - $out .= "\n".$this->_putfontwidths($font, $cidoffset); + $out .= "\n".TCPDF_FONTS::_putfontwidths($font, $cidoffset); $out .= ' >>'; $out .= "\n".'endobj'; $this->_out($out); @@ -12520,7 +9152,7 @@ class TCPDF { protected function _putxobjects() { foreach ($this->xobjects as $key => $data) { if (isset($data['outdata'])) { - $stream = trim($data['outdata']); + $stream = str_replace($this->epsmarker, '', trim($data['outdata'])); $out = $this->_getobj($data['n'])."\n"; $out .= '<<'; $out .= ' /Type /XObject'; @@ -12747,30 +9379,30 @@ class TCPDF { if ($this->docinfounicode) { $this->isunicode = true; } - if (!$this->empty_string($this->title)) { + if (!TCPDF_STATIC::empty_string($this->title)) { // The document's title. $out .= ' /Title '.$this->_textstring($this->title, $oid); } - if (!$this->empty_string($this->author)) { + if (!TCPDF_STATIC::empty_string($this->author)) { // The name of the person who created the document. $out .= ' /Author '.$this->_textstring($this->author, $oid); } - if (!$this->empty_string($this->subject)) { + if (!TCPDF_STATIC::empty_string($this->subject)) { // The subject of the document. $out .= ' /Subject '.$this->_textstring($this->subject, $oid); } - if (!$this->empty_string($this->keywords)) { + if (!TCPDF_STATIC::empty_string($this->keywords)) { // Keywords associated with the document. $out .= ' /Keywords '.$this->_textstring($this->keywords.' TCPDF', $oid); } - if (!$this->empty_string($this->creator)) { + if (!TCPDF_STATIC::empty_string($this->creator)) { // If the document was converted to PDF from another format, the name of the conforming product that created the original document from which it was converted. $out .= ' /Creator '.$this->_textstring($this->creator, $oid); } // restore previous isunicode value $this->isunicode = $prev_isunicode; // default producer - $out .= ' /Producer '.$this->_textstring($this->pdfproducer, $oid); + $out .= ' /Producer '.$this->_textstring(TCPDF_STATIC::getTCPDFProducer(), $oid); // The date and time the document was created, in human-readable form $out .= ' /CreationDate '.$this->_datestring(0, $this->doc_creation_timestamp); // The date and time the document was most recently modified, in human-readable form @@ -12808,44 +9440,44 @@ class TCPDF { $prev_encrypted = $this->encrypted; $this->encrypted = false; // set XMP data - $xmp = 'unichr(0xfeff).'" id="W5M0MpCehiHzreSzNTczkc9d"?>'."\n"; + $xmp = 'isunicode).'" id="W5M0MpCehiHzreSzNTczkc9d"?>'."\n"; $xmp .= ''."\n"; $xmp .= "\t".''."\n"; $xmp .= "\t\t".''."\n"; $xmp .= "\t\t\t".'application/pdf'."\n"; $xmp .= "\t\t\t".''."\n"; $xmp .= "\t\t\t\t".''."\n"; - $xmp .= "\t\t\t\t\t".''.$this->_escapeXML($this->title).''."\n"; + $xmp .= "\t\t\t\t\t".''.TCPDF_STATIC::_escapeXML($this->title).''."\n"; $xmp .= "\t\t\t\t".''."\n"; $xmp .= "\t\t\t".''."\n"; $xmp .= "\t\t\t".''."\n"; $xmp .= "\t\t\t\t".''."\n"; - $xmp .= "\t\t\t\t\t".''.$this->_escapeXML($this->author).''."\n"; + $xmp .= "\t\t\t\t\t".''.TCPDF_STATIC::_escapeXML($this->author).''."\n"; $xmp .= "\t\t\t\t".''."\n"; $xmp .= "\t\t\t".''."\n"; $xmp .= "\t\t\t".''."\n"; $xmp .= "\t\t\t\t".''."\n"; - $xmp .= "\t\t\t\t\t".''.$this->_escapeXML($this->subject).''."\n"; + $xmp .= "\t\t\t\t\t".''.TCPDF_STATIC::_escapeXML($this->subject).''."\n"; $xmp .= "\t\t\t\t".''."\n"; $xmp .= "\t\t\t".''."\n"; $xmp .= "\t\t\t".''."\n"; $xmp .= "\t\t\t\t".''."\n"; - $xmp .= "\t\t\t\t\t".''.$this->_escapeXML($this->keywords).' TCPDF'."\n"; + $xmp .= "\t\t\t\t\t".''.TCPDF_STATIC::_escapeXML($this->keywords).' TCPDF'."\n"; $xmp .= "\t\t\t\t".''."\n"; $xmp .= "\t\t\t".''."\n"; $xmp .= "\t\t".''."\n"; // convert doc creation date format - $dcdate = $this->getFormattedDate($this->doc_creation_timestamp); + $dcdate = TCPDF_STATIC::getFormattedDate($this->doc_creation_timestamp); $doccreationdate = substr($dcdate, 0, 4).'-'.substr($dcdate, 4, 2).'-'.substr($dcdate, 6, 2); $doccreationdate .= 'T'.substr($dcdate, 8, 2).':'.substr($dcdate, 10, 2).':'.substr($dcdate, 12, 2); $doccreationdate .= '+'.substr($dcdate, 15, 2).':'.substr($dcdate, 18, 2); - $doccreationdate = $this->_escapeXML($doccreationdate); + $doccreationdate = TCPDF_STATIC::_escapeXML($doccreationdate); // convert doc modification date format - $dmdate = $this->getFormattedDate($this->doc_modification_timestamp); + $dmdate = TCPDF_STATIC::getFormattedDate($this->doc_modification_timestamp); $docmoddate = substr($dmdate, 0, 4).'-'.substr($dmdate, 4, 2).'-'.substr($dmdate, 6, 2); $docmoddate .= 'T'.substr($dmdate, 8, 2).':'.substr($dmdate, 10, 2).':'.substr($dmdate, 12, 2); $docmoddate .= '+'.substr($dmdate, 15, 2).':'.substr($dmdate, 18, 2); - $docmoddate = $this->_escapeXML($docmoddate); + $docmoddate = TCPDF_STATIC::_escapeXML($docmoddate); $xmp .= "\t\t".''."\n"; $xmp .= "\t\t\t".''.$doccreationdate.''."\n"; $xmp .= "\t\t\t".''.$this->creator.''."\n"; @@ -12853,8 +9485,8 @@ class TCPDF { $xmp .= "\t\t\t".''.$doccreationdate.''."\n"; $xmp .= "\t\t".''."\n"; $xmp .= "\t\t".''."\n"; - $xmp .= "\t\t\t".''.$this->_escapeXML($this->keywords).' TCPDF'."\n"; - $xmp .= "\t\t\t".''.$this->_escapeXML($this->pdfproducer).''."\n"; + $xmp .= "\t\t\t".''.TCPDF_STATIC::_escapeXML($this->keywords).' TCPDF'."\n"; + $xmp .= "\t\t\t".''.TCPDF_STATIC::_escapeXML(TCPDF_STATIC::getTCPDFProducer()).''."\n"; $xmp .= "\t\t".''."\n"; $xmp .= "\t\t".''."\n"; $uuid = 'uuid:'.substr($this->file_id, 0, 8).'-'.substr($this->file_id, 8, 4).'-'.substr($this->file_id, 12, 4).'-'.substr($this->file_id, 16, 4).'-'.substr($this->file_id, 20, 12); @@ -12944,7 +9576,7 @@ class TCPDF { // if required, add standard sRGB_IEC61966-2.1 blackscaled ICC colour profile if ($this->pdfa_mode OR $this->force_srgb) { $iccobj = $this->_newobj(); - $icc = file_get_contents(dirname(__FILE__).'/sRGB.icc'); + $icc = file_get_contents(dirname(__FILE__).'/include/sRGB.icc'); $filter = ''; if ($this->compress) { $filter = ' /Filter /FlateDecode'; @@ -12976,10 +9608,10 @@ class TCPDF { $out .= ' /Dests '.($this->n_dests).' 0 R'; } $out .= $this->_putviewerpreferences(); - if (isset($this->LayoutMode) AND (!$this->empty_string($this->LayoutMode))) { + if (isset($this->LayoutMode) AND (!TCPDF_STATIC::empty_string($this->LayoutMode))) { $out .= ' /PageLayout /'.$this->LayoutMode; } - if (isset($this->PageMode) AND (!$this->empty_string($this->PageMode))) { + if (isset($this->PageMode) AND (!TCPDF_STATIC::empty_string($this->PageMode))) { $out .= ' /PageMode /'.$this->PageMode; } if (count($this->outlines) > 0) { @@ -13051,7 +9683,9 @@ class TCPDF { $out .= ' >>'; } // AcroForm - if (!empty($this->form_obj_id) OR ($this->sign AND isset($this->signature_data['cert_type']))) { + if (!empty($this->form_obj_id) + OR ($this->sign AND isset($this->signature_data['cert_type'])) + OR !empty($this->empty_signature_appearance)) { $out .= ' /AcroForm <<'; $objrefs = ''; if ($this->sign AND isset($this->signature_data['cert_type'])) { @@ -13120,67 +9754,68 @@ class TCPDF { * @protected */ protected function _putviewerpreferences() { + $vp = $this->viewer_preferences; $out = ' /ViewerPreferences <<'; if ($this->rtl) { $out .= ' /Direction /R2L'; } else { $out .= ' /Direction /L2R'; } - if (isset($this->viewer_preferences['HideToolbar']) AND ($this->viewer_preferences['HideToolbar'])) { + if (isset($vp['HideToolbar']) AND ($vp['HideToolbar'])) { $out .= ' /HideToolbar true'; } - if (isset($this->viewer_preferences['HideMenubar']) AND ($this->viewer_preferences['HideMenubar'])) { + if (isset($vp['HideMenubar']) AND ($vp['HideMenubar'])) { $out .= ' /HideMenubar true'; } - if (isset($this->viewer_preferences['HideWindowUI']) AND ($this->viewer_preferences['HideWindowUI'])) { + if (isset($vp['HideWindowUI']) AND ($vp['HideWindowUI'])) { $out .= ' /HideWindowUI true'; } - if (isset($this->viewer_preferences['FitWindow']) AND ($this->viewer_preferences['FitWindow'])) { + if (isset($vp['FitWindow']) AND ($vp['FitWindow'])) { $out .= ' /FitWindow true'; } - if (isset($this->viewer_preferences['CenterWindow']) AND ($this->viewer_preferences['CenterWindow'])) { + if (isset($vp['CenterWindow']) AND ($vp['CenterWindow'])) { $out .= ' /CenterWindow true'; } - if (isset($this->viewer_preferences['DisplayDocTitle']) AND ($this->viewer_preferences['DisplayDocTitle'])) { + if (isset($vp['DisplayDocTitle']) AND ($vp['DisplayDocTitle'])) { $out .= ' /DisplayDocTitle true'; } - if (isset($this->viewer_preferences['NonFullScreenPageMode'])) { - $out .= ' /NonFullScreenPageMode /'.$this->viewer_preferences['NonFullScreenPageMode']; + if (isset($vp['NonFullScreenPageMode'])) { + $out .= ' /NonFullScreenPageMode /'.$vp['NonFullScreenPageMode']; } - if (isset($this->viewer_preferences['ViewArea'])) { - $out .= ' /ViewArea /'.$this->viewer_preferences['ViewArea']; + if (isset($vp['ViewArea'])) { + $out .= ' /ViewArea /'.$vp['ViewArea']; } - if (isset($this->viewer_preferences['ViewClip'])) { - $out .= ' /ViewClip /'.$this->viewer_preferences['ViewClip']; + if (isset($vp['ViewClip'])) { + $out .= ' /ViewClip /'.$vp['ViewClip']; } - if (isset($this->viewer_preferences['PrintArea'])) { - $out .= ' /PrintArea /'.$this->viewer_preferences['PrintArea']; + if (isset($vp['PrintArea'])) { + $out .= ' /PrintArea /'.$vp['PrintArea']; } - if (isset($this->viewer_preferences['PrintClip'])) { - $out .= ' /PrintClip /'.$this->viewer_preferences['PrintClip']; + if (isset($vp['PrintClip'])) { + $out .= ' /PrintClip /'.$vp['PrintClip']; } - if (isset($this->viewer_preferences['PrintScaling'])) { - $out .= ' /PrintScaling /'.$this->viewer_preferences['PrintScaling']; + if (isset($vp['PrintScaling'])) { + $out .= ' /PrintScaling /'.$vp['PrintScaling']; } - if (isset($this->viewer_preferences['Duplex']) AND (!$this->empty_string($this->viewer_preferences['Duplex']))) { - $out .= ' /Duplex /'.$this->viewer_preferences['Duplex']; + if (isset($vp['Duplex']) AND (!TCPDF_STATIC::empty_string($vp['Duplex']))) { + $out .= ' /Duplex /'.$vp['Duplex']; } - if (isset($this->viewer_preferences['PickTrayByPDFSize'])) { - if ($this->viewer_preferences['PickTrayByPDFSize']) { + if (isset($vp['PickTrayByPDFSize'])) { + if ($vp['PickTrayByPDFSize']) { $out .= ' /PickTrayByPDFSize true'; } else { $out .= ' /PickTrayByPDFSize false'; } } - if (isset($this->viewer_preferences['PrintPageRange'])) { + if (isset($vp['PrintPageRange'])) { $PrintPageRangeNum = ''; - foreach ($this->viewer_preferences['PrintPageRange'] as $k => $v) { + foreach ($vp['PrintPageRange'] as $k => $v) { $PrintPageRangeNum .= ' '.($v - 1).''; } $out .= ' /PrintPageRange ['.substr($PrintPageRangeNum,1).']'; } - if (isset($this->viewer_preferences['NumCopies'])) { - $out .= ' /NumCopies '.intval($this->viewer_preferences['NumCopies']); + if (isset($vp['NumCopies'])) { + $out .= ' /NumCopies '.intval($vp['NumCopies']); } $out .= ' >>'; return $out; @@ -13200,6 +9835,10 @@ class TCPDF { * @protected */ protected function _enddoc() { + if (isset($this->CurrentFont['fontkey']) AND isset($this->CurrentFont['subsetchars'])) { + // save subset chars of the previous font + $this->setFontSubBuffer($this->CurrentFont['fontkey'], 'subsetchars', $this->CurrentFont['subsetchars']); + } $this->state = 1; $this->_putheader(); $this->_putpages(); @@ -13215,7 +9854,7 @@ class TCPDF { $out .= ' /P '.$this->page_obj_id[($esa['page'])].' 0 R'; // link to signature appearance page $out .= ' /F 4'; $out .= ' /FT /Sig'; - $signame = sprintf('Signature_%03d', ($key + 1)); + $signame = $esa['name'].sprintf(' [%03d]', ($key + 1)); $out .= ' /T '.$this->_textstring($signame, $esa['objid']); $out .= ' /Ff 0'; $out .= ' >>'; @@ -13233,7 +9872,7 @@ class TCPDF { $out .= ' /P '.$this->page_obj_id[($this->signature_appearance['page'])].' 0 R'; // link to signature appearance page $out .= ' /F 4'; $out .= ' /FT /Sig'; - $out .= ' /T '.$this->_textstring('Signature_000', $this->sig_obj_id); + $out .= ' /T '.$this->_textstring($this->signature_appearance['name'], $this->sig_obj_id); $out .= ' /Ff 0'; $out .= ' /V '.($this->sig_obj_id + 1).' 0 R'; $out .= ' >>'; @@ -13304,7 +9943,7 @@ class TCPDF { // initialize array for graphics tranformation positions inside a page buffer $this->transfmrk[$this->page] = array(); $this->state = 2; - if ($this->empty_string($orientation)) { + if (TCPDF_STATIC::empty_string($orientation)) { if (isset($this->CurOrientation)) { $orientation = $this->CurOrientation; } elseif ($this->fwPt > $this->fhPt) { @@ -13315,7 +9954,7 @@ class TCPDF { $orientation = 'P'; } } - if ($this->empty_string($format)) { + if (TCPDF_STATIC::empty_string($format)) { $this->pagedim[$this->page] = $this->pagedim[($this->page - 1)]; $this->setPageOrientation($orientation); } else { @@ -13449,28 +10088,6 @@ class TCPDF { } - /** - * Read a 4-byte (32 bit) integer from file. - * @param $f (string) file name. - * @return 4-byte integer - * @protected - */ - protected function _freadint($f) { - $a = unpack('Ni', fread($f, 4)); - return $a['i']; - } - - /** - * Add "\" before "\", "(" and ")" - * @param $s (string) string to escape. - * @return string escaped string. - * @protected - */ - protected function _escape($s) { - // the chr(13) substitution fixes the Bugs item #1421290. - return strtr($s, array(')' => '\\)', '(' => '\\(', '\\' => '\\\\', chr(13) => '\r')); - } - /** * Format a data string for meta information * @param $s (string) data string to escape. @@ -13483,7 +10100,7 @@ class TCPDF { $n = $this->n; } $s = $this->_encrypt_data($n, $s); - return '('. $this->_escape($s).')'; + return '('. TCPDF_STATIC::_escape($s).')'; } /** @@ -13494,7 +10111,7 @@ class TCPDF { */ public function setDocCreationTimestamp($time) { if (is_string($time)) { - $time = getTimestamp($time); + $time = TCPDF_STATIC::getTimestamp($time); } $this->doc_creation_timestamp = intval($time); } @@ -13507,7 +10124,7 @@ class TCPDF { */ public function setDocModificationTimestamp($time) { if (is_string($time)) { - $time = getTimestamp($time); + $time = TCPDF_STATIC::getTimestamp($time); } $this->doc_modification_timestamp = intval($time); } @@ -13532,32 +10149,6 @@ class TCPDF { return $this->doc_modification_timestamp; } - /** - * Returns timestamp in seconds from formatted date-time. - * @param $date (string) Formatted date-time. - * @return int seconds. - * @public - * @since 5.9.152 (2012-03-23) - */ - public function getTimestamp($date) { - if (($date[0] == 'D') AND ($date[1] == ':')) { - // remove date prefix if present - $date = substr($date, 2); - } - return strtotime($date); - } - - /** - * Returns a formatted date-time. - * @param $time (int) Time in seconds. - * @return string escaped date string. - * @public - * @since 5.9.152 (2012-03-23) - */ - public function getFormattedDate($time) { - return substr_replace(date('YmdHisO', intval($time)), '\'', (0 - 2), 0).'\''; - } - /** * Returns a formatted date for meta information * @param $n (int) Object ID. @@ -13570,7 +10161,7 @@ class TCPDF { if ((empty($timestamp)) OR ($timestamp < 0)) { $timestamp = $this->doc_creation_timestamp; } - return $this->_datastring('D:'.$this->getFormattedDate($timestamp), $n); + return $this->_datastring('D:'.TCPDF_STATIC::getFormattedDate($timestamp), $n); } /** @@ -13583,7 +10174,7 @@ class TCPDF { protected function _textstring($s, $n=0) { if ($this->isunicode) { //Convert string to UTF-16BE - $s = $this->UTF8ToUTF16BE($s, true); + $s = TCPDF_FONTS::UTF8ToUTF16BE($s, true, $this->isunicode, $this->CurrentFont); } return $this->_datastring($s, $n); } @@ -13599,26 +10190,13 @@ class TCPDF { protected function _escapetext($s) { if ($this->isunicode) { if (($this->CurrentFont['type'] == 'core') OR ($this->CurrentFont['type'] == 'TrueType') OR ($this->CurrentFont['type'] == 'Type1')) { - $s = $this->UTF8ToLatin1($s); + $s = TCPDF_FONTS::UTF8ToLatin1($s, $this->isunicode, $this->CurrentFont); } else { //Convert string to UTF-16BE and reverse RTL language - $s = $this->utf8StrRev($s, false, $this->tmprtl); + $s = TCPDF_FONTS::utf8StrRev($s, false, $this->tmprtl, $this->isunicode, $this->CurrentFont); } } - return $this->_escape($s); - } - - /** - * Escape some special characters (< > &) for XML output. - * @param $str (string) Input string to convert. - * @return converted string - * @since 5.9.121 (2011-09-28) - * @protected - */ - protected function _escapeXML($str) { - $replaceTable = array("\0" => '', '&' => '&', '<' => '<', '>' => '>'); - $str = strtr($str, $replaceTable); - return $str; + return TCPDF_STATIC::_escape($s); } /** @@ -13687,289 +10265,6 @@ class TCPDF { } } - /** - * Converts UTF-8 strings to codepoints array.
                      - * Invalid byte sequences will be replaced with 0xFFFD (replacement character)
                      - * Based on: http://www.faqs.org/rfcs/rfc3629.html - *
                      -	 *    Char. number range  |        UTF-8 octet sequence
                      -	 *       (hexadecimal)    |              (binary)
                      -	 *    --------------------+-----------------------------------------------
                      -	 *    0000 0000-0000 007F | 0xxxxxxx
                      -	 *    0000 0080-0000 07FF | 110xxxxx 10xxxxxx
                      -	 *    0000 0800-0000 FFFF | 1110xxxx 10xxxxxx 10xxxxxx
                      -	 *    0001 0000-0010 FFFF | 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
                      -	 *    ---------------------------------------------------------------------
                      -	 *
                      -	 *   ABFN notation:
                      -	 *   ---------------------------------------------------------------------
                      -	 *   UTF8-octets = *( UTF8-char )
                      -	 *   UTF8-char   = UTF8-1 / UTF8-2 / UTF8-3 / UTF8-4
                      -	 *   UTF8-1      = %x00-7F
                      -	 *   UTF8-2      = %xC2-DF UTF8-tail
                      -	 *
                      -	 *   UTF8-3      = %xE0 %xA0-BF UTF8-tail / %xE1-EC 2( UTF8-tail ) /
                      -	 *                 %xED %x80-9F UTF8-tail / %xEE-EF 2( UTF8-tail )
                      -	 *   UTF8-4      = %xF0 %x90-BF 2( UTF8-tail ) / %xF1-F3 3( UTF8-tail ) /
                      -	 *                 %xF4 %x80-8F 2( UTF8-tail )
                      -	 *   UTF8-tail   = %x80-BF
                      -	 *   ---------------------------------------------------------------------
                      -	 * 
                      - * @param $str (string) string to process. - * @return array containing codepoints (UTF-8 characters values) - * @protected - * @author Nicola Asuni - * @since 1.53.0.TC005 (2005-01-05) - */ - protected function UTF8StringToArray($str) { - // build a unique string key - $strkey = md5($str); - if (isset($this->cache_UTF8StringToArray[$strkey])) { - // return cached value - $chrarray = $this->cache_UTF8StringToArray[$strkey]['s']; - if (!isset($this->cache_UTF8StringToArray[$strkey]['f'][$this->CurrentFont['fontkey']])) { - if ($this->isunicode) { - foreach ($chrarray as $chr) { - // store this char for font subsetting - $this->CurrentFont['subsetchars'][$chr] = true; - } - // update font subsetchars - $this->setFontSubBuffer($this->CurrentFont['fontkey'], 'subsetchars', $this->CurrentFont['subsetchars']); - } - $this->cache_UTF8StringToArray[$strkey]['f'][$this->CurrentFont['fontkey']] = true; - } - return $chrarray; - } - // check cache size - if ($this->cache_size_UTF8StringToArray >= $this->cache_maxsize_UTF8StringToArray) { - // remove first element - array_shift($this->cache_UTF8StringToArray); - } - // new cache array for selected string - $this->cache_UTF8StringToArray[$strkey] = array('s' => array(), 'f' => array()); - ++$this->cache_size_UTF8StringToArray; - if (!$this->isunicode) { - // split string into array of equivalent codes - $strarr = array(); - $strlen = strlen($str); - for ($i=0; $i < $strlen; ++$i) { - $strarr[] = ord($str[$i]); - } - // insert new value on cache - $this->cache_UTF8StringToArray[$strkey]['s'] = $strarr; - $this->cache_UTF8StringToArray[$strkey]['f'][$this->CurrentFont['fontkey']] = true; - return $strarr; - } - $unichar = -1; // last unicode char - $unicode = array(); // array containing unicode values - $bytes = array(); // array containing single character byte sequences - $numbytes = 1; // number of octetc needed to represent the UTF-8 character - $str .= ''; // force $str to be a string - $length = strlen($str); - for ($i = 0; $i < $length; ++$i) { - $char = ord($str[$i]); // get one string character at time - if (count($bytes) == 0) { // get starting octect - if ($char <= 0x7F) { - $unichar = $char; // use the character "as is" because is ASCII - $numbytes = 1; - } elseif (($char >> 0x05) == 0x06) { // 2 bytes character (0x06 = 110 BIN) - $bytes[] = ($char - 0xC0) << 0x06; - $numbytes = 2; - } elseif (($char >> 0x04) == 0x0E) { // 3 bytes character (0x0E = 1110 BIN) - $bytes[] = ($char - 0xE0) << 0x0C; - $numbytes = 3; - } elseif (($char >> 0x03) == 0x1E) { // 4 bytes character (0x1E = 11110 BIN) - $bytes[] = ($char - 0xF0) << 0x12; - $numbytes = 4; - } else { - // use replacement character for other invalid sequences - $unichar = 0xFFFD; - $bytes = array(); - $numbytes = 1; - } - } elseif (($char >> 0x06) == 0x02) { // bytes 2, 3 and 4 must start with 0x02 = 10 BIN - $bytes[] = $char - 0x80; - if (count($bytes) == $numbytes) { - // compose UTF-8 bytes to a single unicode value - $char = $bytes[0]; - for ($j = 1; $j < $numbytes; ++$j) { - $char += ($bytes[$j] << (($numbytes - $j - 1) * 0x06)); - } - if ((($char >= 0xD800) AND ($char <= 0xDFFF)) OR ($char >= 0x10FFFF)) { - /* The definition of UTF-8 prohibits encoding character numbers between - U+D800 and U+DFFF, which are reserved for use with the UTF-16 - encoding form (as surrogate pairs) and do not directly represent - characters. */ - $unichar = 0xFFFD; // use replacement character - } else { - $unichar = $char; // add char to array - } - // reset data for next char - $bytes = array(); - $numbytes = 1; - } - } else { - // use replacement character for other invalid sequences - $unichar = 0xFFFD; - $bytes = array(); - $numbytes = 1; - } - if ($unichar >= 0) { - // insert unicode value into array - $unicode[] = $unichar; - // store this char for font subsetting - $this->CurrentFont['subsetchars'][$unichar] = true; - $unichar = -1; - } - } - // update font subsetchars - $this->setFontSubBuffer($this->CurrentFont['fontkey'], 'subsetchars', $this->CurrentFont['subsetchars']); - // insert new value on cache - $this->cache_UTF8StringToArray[$strkey]['s'] = $unicode; - $this->cache_UTF8StringToArray[$strkey]['f'][$this->CurrentFont['fontkey']] = true; - return $unicode; - } - - /** - * Converts UTF-8 strings to UTF16-BE.
                      - * @param $str (string) string to process. - * @param $setbom (boolean) if true set the Byte Order Mark (BOM = 0xFEFF) - * @return string - * @author Nicola Asuni - * @since 1.53.0.TC005 (2005-01-05) - * @see UTF8StringToArray(), arrUTF8ToUTF16BE() - * @protected - */ - protected function UTF8ToUTF16BE($str, $setbom=false) { - if (!$this->isunicode) { - return $str; // string is not in unicode - } - $unicode = $this->UTF8StringToArray($str); // array containing UTF-8 unicode values - return $this->arrUTF8ToUTF16BE($unicode, $setbom); - } - - /** - * Converts UTF-8 strings to Latin1 when using the standard 14 core fonts.
                      - * @param $str (string) string to process. - * @return string - * @author Andrew Whitehead, Nicola Asuni - * @protected - * @since 3.2.000 (2008-06-23) - */ - protected function UTF8ToLatin1($str) { - if (!$this->isunicode) { - return $str; // string is not in unicode - } - $outstr = ''; // string to be returned - $unicode = $this->UTF8StringToArray($str); // array containing UTF-8 unicode values - foreach ($unicode as $char) { - if ($char < 256) { - $outstr .= chr($char); - } elseif (array_key_exists($char, $this->unicode->uni_utf8tolatin)) { - // map from UTF-8 - $outstr .= chr($this->unicode->uni_utf8tolatin[$char]); - } elseif ($char == 0xFFFD) { - // skip - } else { - $outstr .= '?'; - } - } - return $outstr; - } - - /** - * Converts UTF-8 characters array to array of Latin1 characters
                      - * @param $unicode (array) array containing UTF-8 unicode values - * @return array - * @author Nicola Asuni - * @protected - * @since 4.8.023 (2010-01-15) - */ - protected function UTF8ArrToLatin1($unicode) { - if ((!$this->isunicode) OR $this->isUnicodeFont()) { - return $unicode; - } - $outarr = array(); // array to be returned - foreach ($unicode as $char) { - if ($char < 256) { - $outarr[] = $char; - } elseif (array_key_exists($char, $this->unicode->uni_utf8tolatin)) { - // map from UTF-8 - $outarr[] = $this->unicode->uni_utf8tolatin[$char]; - } elseif ($char == 0xFFFD) { - // skip - } else { - $outarr[] = 63; // '?' character - } - } - return $outarr; - } - - /** - * Converts array of UTF-8 characters to UTF16-BE string.
                      - * Based on: http://www.faqs.org/rfcs/rfc2781.html - *
                      -	 *   Encoding UTF-16:
                      -	 *
                      -	 *   Encoding of a single character from an ISO 10646 character value to
                      -	 *    UTF-16 proceeds as follows. Let U be the character number, no greater
                      -	 *    than 0x10FFFF.
                      -	 *
                      -	 *    1) If U < 0x10000, encode U as a 16-bit unsigned integer and
                      -	 *       terminate.
                      -	 *
                      -	 *    2) Let U' = U - 0x10000. Because U is less than or equal to 0x10FFFF,
                      -	 *       U' must be less than or equal to 0xFFFFF. That is, U' can be
                      -	 *       represented in 20 bits.
                      -	 *
                      -	 *    3) Initialize two 16-bit unsigned integers, W1 and W2, to 0xD800 and
                      -	 *       0xDC00, respectively. These integers each have 10 bits free to
                      -	 *       encode the character value, for a total of 20 bits.
                      -	 *
                      -	 *    4) Assign the 10 high-order bits of the 20-bit U' to the 10 low-order
                      -	 *       bits of W1 and the 10 low-order bits of U' to the 10 low-order
                      -	 *       bits of W2. Terminate.
                      -	 *
                      -	 *    Graphically, steps 2 through 4 look like:
                      -	 *    U' = yyyyyyyyyyxxxxxxxxxx
                      -	 *    W1 = 110110yyyyyyyyyy
                      -	 *    W2 = 110111xxxxxxxxxx
                      -	 * 
                      - * @param $unicode (array) array containing UTF-8 unicode values - * @param $setbom (boolean) if true set the Byte Order Mark (BOM = 0xFEFF) - * @return string - * @protected - * @author Nicola Asuni - * @since 2.1.000 (2008-01-08) - * @see UTF8ToUTF16BE() - */ - protected function arrUTF8ToUTF16BE($unicode, $setbom=false) { - $outstr = ''; // string to be returned - if ($setbom) { - $outstr .= "\xFE\xFF"; // Byte Order Mark (BOM) - } - foreach ($unicode as $char) { - if ($char == 0x200b) { - // skip Unicode Character 'ZERO WIDTH SPACE' (DEC:8203, U+200B) - } elseif ($char == 0xFFFD) { - $outstr .= "\xFF\xFD"; // replacement character - } elseif ($char < 0x10000) { - $outstr .= chr($char >> 0x08); - $outstr .= chr($char & 0xFF); - } else { - $char -= 0x10000; - $w1 = 0xD800 | ($char >> 0x0a); - $w2 = 0xDC00 | ($char & 0x3FF); - $outstr .= chr($w1 >> 0x08); - $outstr .= chr($w1 & 0xFF); - $outstr .= chr($w2 >> 0x08); - $outstr .= chr($w2 & 0xFF); - } - } - return $outstr; - } - // ==================================================== - /** * Set header font. * @param $font (array) font @@ -14049,7 +10344,7 @@ class TCPDF { * @public */ public function addHtmlLink($url, $name, $fill=false, $firstline=false, $color='', $style=-1, $firstblock=false) { - if (!$this->empty_string($url) AND ($url[0] == '#') AND is_numeric($url[1])) { + if (isset($url[1]) AND ($url[0] == '#') AND is_numeric($url[1])) { // convert url to internal link $lnkdata = explode(',', $url); if (isset($lnkdata[0])) { @@ -14086,148 +10381,6 @@ class TCPDF { return $ret; } - /** - * Returns an array (RGB or CMYK) from an html color name, or a six-digit (i.e. #3FE5AA), or three-digit (i.e. #7FF) hexadecimal color, or a javascript color array, or javascript color name. - * @param $hcolor (string) HTML color. - * @param $defcol (array) Color to return in case of error. - * @return array RGB or CMYK color, or false in case of error. - * @public - */ - public function convertHTMLColorToDec($hcolor='#FFFFFF', $defcol=array('R'=>128,'G'=>128,'B'=>128)) { - $color = preg_replace('/[\s]*/', '', $hcolor); // remove extra spaces - $color = strtolower($color); - // check for javascript color array syntax - if (strpos($color, '[') !== false) { - if (preg_match('/[\[][\"\'](t|g|rgb|cmyk)[\"\'][\,]?([0-9\.]*)[\,]?([0-9\.]*)[\,]?([0-9\.]*)[\,]?([0-9\.]*)[\]]/', $color, $m) > 0) { - $returncolor = array(); - switch ($m[1]) { - case 'cmyk': { - // RGB - $returncolor['C'] = max(0, min(100, (floatval($m[2]) * 100))); - $returncolor['M'] = max(0, min(100, (floatval($m[3]) * 100))); - $returncolor['Y'] = max(0, min(100, (floatval($m[4]) * 100))); - $returncolor['K'] = max(0, min(100, (floatval($m[5]) * 100))); - break; - } - case 'rgb': { - // RGB - $returncolor['R'] = max(0, min(255, (floatval($m[2]) * 255))); - $returncolor['G'] = max(0, min(255, (floatval($m[3]) * 255))); - $returncolor['B'] = max(0, min(255, (floatval($m[4]) * 255))); - break; - } - case 'g': { - // grayscale - $returncolor['G'] = max(0, min(255, (floatval($m[2]) * 255))); - break; - } - case 't': - default: { - // transparent (empty array) - break; - } - } - return $returncolor; - } - } elseif (($dotpos = strpos($color, '.')) !== false) { - // remove class parent (i.e.: color.red) - $color = substr($color, ($dotpos + 1)); - if ($color == 'transparent') { - // transparent (empty array) - return array(); - } - } - if (strlen($color) == 0) { - return $defcol; - } - // RGB ARRAY - if (substr($color, 0, 3) == 'rgb') { - $codes = substr($color, 4); - $codes = str_replace(')', '', $codes); - $returncolor = explode(',', $codes); - foreach ($returncolor as $key => $val) { - if (strpos($val, '%') > 0) { - // percentage - $returncolor[$key] = (255 * intval($val) / 100); - } else { - $returncolor[$key] = intval($val); - } - // normalize value - $returncolor[$key] = max(0, min(255, $returncolor[$key])); - } - return $returncolor; - } - // CMYK ARRAY - if (substr($color, 0, 4) == 'cmyk') { - $codes = substr($color, 5); - $codes = str_replace(')', '', $codes); - $returncolor = explode(',', $codes); - foreach ($returncolor as $key => $val) { - if (strpos($val, '%') !== false) { - // percentage - $returncolor[$key] = (100 * intval($val) / 100); - } else { - $returncolor[$key] = intval($val); - } - // normalize value - $returncolor[$key] = max(0, min(100, $returncolor[$key])); - } - return $returncolor; - } - if ($color{0} != '#') { - // COLOR NAME - if (isset($this->webcolor[$color])) { - // web color - $color_code = $this->webcolor[$color]; - } else { - // spot color - $returncolor = $this->getSpotColor($color); - if ($returncolor === false) { - $returncolor = $defcol; - } - return $returncolor; - } - } else { - $color_code = substr($color, 1); - } - // HEXADECIMAL REPRESENTATION - switch (strlen($color_code)) { - case 3: { - // 3-digit RGB hexadecimal representation - $r = substr($color_code, 0, 1); - $g = substr($color_code, 1, 1); - $b = substr($color_code, 2, 1); - $returncolor = array(); - $returncolor['R'] = max(0, min(255, hexdec($r.$r))); - $returncolor['G'] = max(0, min(255, hexdec($g.$g))); - $returncolor['B'] = max(0, min(255, hexdec($b.$b))); - break; - } - case 6: { - // 6-digit RGB hexadecimal representation - $returncolor = array(); - $returncolor['R'] = max(0, min(255, hexdec(substr($color_code, 0, 2)))); - $returncolor['G'] = max(0, min(255, hexdec(substr($color_code, 2, 2)))); - $returncolor['B'] = max(0, min(255, hexdec(substr($color_code, 4, 2)))); - break; - } - case 8: { - // 8-digit CMYK hexadecimal representation - $returncolor = array(); - $returncolor['C'] = max(0, min(100, round(hexdec(substr($color_code, 0, 2)) / 2.55))); - $returncolor['M'] = max(0, min(100, round(hexdec(substr($color_code, 2, 2)) / 2.55))); - $returncolor['Y'] = max(0, min(100, round(hexdec(substr($color_code, 4, 2)) / 2.55))); - $returncolor['K'] = max(0, min(100, round(hexdec(substr($color_code, 6, 2)) / 2.55))); - break; - } - default: { - $returncolor = $defcol; - break; - } - } - return $returncolor; - } - /** * Converts pixels to User's Units. * @param $px (int) pixels @@ -14252,53 +10405,6 @@ class TCPDF { // ENCRYPTION METHODS ---------------------------------- - /** - * Returns a string containing random data to be used as a seed for encryption methods. - * @param $seed (string) starting seed value - * @return string containing random data - * @author Nicola Asuni - * @since 5.9.006 (2010-10-19) - * @protected - */ - protected function getRandomSeed($seed='') { - $seed .= microtime(); - if (function_exists('openssl_random_pseudo_bytes') AND (strtoupper(substr(PHP_OS, 0, 3)) !== 'WIN')) { - // this is not used on windows systems because it is very slow for a know bug - $seed .= openssl_random_pseudo_bytes(512); - } else { - for ($i = 0; $i < 23; ++$i) { - $seed .= uniqid('', true); - } - } - $seed .= uniqid('', true); - $seed .= rand(); - $seed .= getmypid(); - $seed .= __FILE__; - $seed .= $this->bufferlen; - if (isset($_SERVER['REMOTE_ADDR'])) { - $seed .= $_SERVER['REMOTE_ADDR']; - } - if (isset($_SERVER['HTTP_USER_AGENT'])) { - $seed .= $_SERVER['HTTP_USER_AGENT']; - } - if (isset($_SERVER['HTTP_ACCEPT'])) { - $seed .= $_SERVER['HTTP_ACCEPT']; - } - if (isset($_SERVER['HTTP_ACCEPT_ENCODING'])) { - $seed .= $_SERVER['HTTP_ACCEPT_ENCODING']; - } - if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) { - $seed .= $_SERVER['HTTP_ACCEPT_LANGUAGE']; - } - if (isset($_SERVER['HTTP_ACCEPT_CHARSET'])) { - $seed .= $_SERVER['HTTP_ACCEPT_CHARSET']; - } - $seed .= rand(); - $seed .= uniqid('', true); - $seed .= microtime(); - return $seed; - } - /** * Compute encryption key depending on object number where the encrypted data is stored. * This is used for all strings and streams without crypt filter specifier. @@ -14314,7 +10420,7 @@ class TCPDF { // AES padding $objkey .= "\x73\x41\x6C\x54"; // sAlT } - $objkey = substr($this->_md5_16($objkey), 0, (($this->encryptdata['Length'] / 8) + 5)); + $objkey = substr(TCPDF_STATIC::_md5_16($objkey), 0, (($this->encryptdata['Length'] / 8) + 5)); $objkey = substr($objkey, 0, 16); return $objkey; } @@ -14335,15 +10441,15 @@ class TCPDF { switch ($this->encryptdata['mode']) { case 0: // RC4-40 case 1: { // RC4-128 - $s = $this->_RC4($this->_objectkey($n), $s); + $s = TCPDF_STATIC::_RC4($this->_objectkey($n), $s, $this->last_enc_key, $this->last_enc_key_c); break; } case 2: { // AES-128 - $s = $this->_AES($this->_objectkey($n), $s); + $s = TCPDF_STATIC::_AES($this->_objectkey($n), $s); break; } case 3: { // AES-256 - $s = $this->_AES($this->encryptdata['key'], $s); + $s = TCPDF_STATIC::_AES($this->encryptdata['key'], $s); break; } } @@ -14445,9 +10551,9 @@ class TCPDF { $out .= ' /R'; if ($this->encryptdata['V'] == 5) { // AES-256 $out .= ' 5'; - $out .= ' /OE ('.$this->_escape($this->encryptdata['OE']).')'; - $out .= ' /UE ('.$this->_escape($this->encryptdata['UE']).')'; - $out .= ' /Perms ('.$this->_escape($this->encryptdata['perms']).')'; + $out .= ' /OE ('.TCPDF_STATIC::_escape($this->encryptdata['OE']).')'; + $out .= ' /UE ('.TCPDF_STATIC::_escape($this->encryptdata['UE']).')'; + $out .= ' /Perms ('.TCPDF_STATIC::_escape($this->encryptdata['perms']).')'; } elseif ($this->encryptdata['V'] == 4) { // AES-128 $out .= ' 4'; } elseif ($this->encryptdata['V'] < 2) { // RC-40 @@ -14455,8 +10561,8 @@ class TCPDF { } else { // RC-128 $out .= ' 3'; } - $out .= ' /O ('.$this->_escape($this->encryptdata['O']).')'; - $out .= ' /U ('.$this->_escape($this->encryptdata['U']).')'; + $out .= ' /O ('.TCPDF_STATIC::_escape($this->encryptdata['O']).')'; + $out .= ' /U ('.TCPDF_STATIC::_escape($this->encryptdata['U']).')'; $out .= ' /P '.$this->encryptdata['P']; if (isset($this->encryptdata['EncryptMetadata']) AND (!$this->encryptdata['EncryptMetadata'])) { $out .= ' /EncryptMetadata false'; @@ -14469,84 +10575,6 @@ class TCPDF { $this->_out($out); } - /** - * Returns the input text encrypted using RC4 algorithm and the specified key. - * RC4 is the standard encryption algorithm used in PDF format - * @param $key (string) encryption key - * @param $text (String) input text to be encrypted - * @return String encrypted text - * @protected - * @since 2.0.000 (2008-01-02) - * @author Klemen Vodopivec, Nicola Asuni - */ - protected function _RC4($key, $text) { - if (function_exists('mcrypt_decrypt') AND ($out = @mcrypt_decrypt(MCRYPT_ARCFOUR, $key, $text, MCRYPT_MODE_STREAM, ''))) { - // try to use mcrypt function if exist - return $out; - } - if ($this->last_enc_key != $key) { - $k = str_repeat($key, ((256 / strlen($key)) + 1)); - $rc4 = range(0, 255); - $j = 0; - for ($i = 0; $i < 256; ++$i) { - $t = $rc4[$i]; - $j = ($j + $t + ord($k[$i])) % 256; - $rc4[$i] = $rc4[$j]; - $rc4[$j] = $t; - } - $this->last_enc_key = $key; - $this->last_enc_key_c = $rc4; - } else { - $rc4 = $this->last_enc_key_c; - } - $len = strlen($text); - $a = 0; - $b = 0; - $out = ''; - for ($i = 0; $i < $len; ++$i) { - $a = ($a + 1) % 256; - $t = $rc4[$a]; - $b = ($b + $t) % 256; - $rc4[$a] = $rc4[$b]; - $rc4[$b] = $t; - $k = $rc4[($rc4[$a] + $rc4[$b]) % 256]; - $out .= chr(ord($text[$i]) ^ $k); - } - return $out; - } - - /** - * Returns the input text exrypted using AES algorithm and the specified key. - * This method requires mcrypt. - * @param $key (string) encryption key - * @param $text (String) input text to be encrypted - * @return String encrypted text - * @protected - * @author Nicola Asuni - * @since 5.0.005 (2010-05-11) - */ - protected function _AES($key, $text) { - // padding (RFC 2898, PKCS #5: Password-Based Cryptography Specification Version 2.0) - $padding = 16 - (strlen($text) % 16); - $text .= str_repeat(chr($padding), $padding); - $iv = mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC), MCRYPT_RAND); - $text = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, $text, MCRYPT_MODE_CBC, $iv); - $text = $iv.$text; - return $text; - } - - /** - * Encrypts a string using MD5 and returns it's value as a binary string. - * @param $str (string) input string - * @return String MD5 encrypted binary string - * @protected - * @since 2.0.000 (2008-01-02) - * @author Klemen Vodopivec - */ - protected function _md5_16($str) { - return pack('H*', md5($str)); - } - /** * Compute U value (used for encryption) * @return string U value @@ -14556,22 +10584,22 @@ class TCPDF { */ protected function _Uvalue() { if ($this->encryptdata['mode'] == 0) { // RC4-40 - return $this->_RC4($this->encryptdata['key'], $this->enc_padding); + return TCPDF_STATIC::_RC4($this->encryptdata['key'], TCPDF_STATIC::$enc_padding, $this->last_enc_key, $this->last_enc_key_c); } elseif ($this->encryptdata['mode'] < 3) { // RC4-128, AES-128 - $tmp = $this->_md5_16($this->enc_padding.$this->encryptdata['fileid']); - $enc = $this->_RC4($this->encryptdata['key'], $tmp); + $tmp = TCPDF_STATIC::_md5_16(TCPDF_STATIC::$enc_padding.$this->encryptdata['fileid']); + $enc = TCPDF_STATIC::_RC4($this->encryptdata['key'], $tmp, $this->last_enc_key, $this->last_enc_key_c); $len = strlen($tmp); for ($i = 1; $i <= 19; ++$i) { $ek = ''; for ($j = 0; $j < $len; ++$j) { $ek .= chr(ord($this->encryptdata['key'][$j]) ^ $i); } - $enc = $this->_RC4($ek, $enc); + $enc = TCPDF_STATIC::_RC4($ek, $enc, $this->last_enc_key, $this->last_enc_key_c); } $enc .= str_repeat("\x00", 16); return substr($enc, 0, 32); } elseif ($this->encryptdata['mode'] == 3) { // AES-256 - $seed = $this->_md5_16($this->getRandomSeed()); + $seed = TCPDF_STATIC::_md5_16(TCPDF_STATIC::getRandomSeed()); // User Validation Salt $this->encryptdata['UVS'] = substr($seed, 0, 8); // User Key Salt @@ -14602,14 +10630,14 @@ class TCPDF { */ protected function _Ovalue() { if ($this->encryptdata['mode'] < 3) { // RC4-40, RC4-128, AES-128 - $tmp = $this->_md5_16($this->encryptdata['owner_password']); + $tmp = TCPDF_STATIC::_md5_16($this->encryptdata['owner_password']); if ($this->encryptdata['mode'] > 0) { for ($i = 0; $i < 50; ++$i) { - $tmp = $this->_md5_16($tmp); + $tmp = TCPDF_STATIC::_md5_16($tmp); } } $owner_key = substr($tmp, 0, ($this->encryptdata['Length'] / 8)); - $enc = $this->_RC4($owner_key, $this->encryptdata['user_password']); + $enc = TCPDF_STATIC::_RC4($owner_key, $this->encryptdata['user_password'], $this->last_enc_key, $this->last_enc_key_c); if ($this->encryptdata['mode'] > 0) { $len = strlen($owner_key); for ($i = 1; $i <= 19; ++$i) { @@ -14617,12 +10645,12 @@ class TCPDF { for ($j = 0; $j < $len; ++$j) { $ek .= chr(ord($owner_key[$j]) ^ $i); } - $enc = $this->_RC4($ek, $enc); + $enc = TCPDF_STATIC::_RC4($ek, $enc, $this->last_enc_key, $this->last_enc_key_c); } } return $enc; } elseif ($this->encryptdata['mode'] == 3) { // AES-256 - $seed = $this->_md5_16($this->getRandomSeed()); + $seed = TCPDF_STATIC::_md5_16(TCPDF_STATIC::getRandomSeed()); // Owner Validation Salt $this->encryptdata['OVS'] = substr($seed, 0, 8); // Owner Key Salt @@ -14654,9 +10682,9 @@ class TCPDF { */ protected function _fixAES256Password($password) { $psw = ''; // password to be returned - $psw_array = $this->utf8Bidi($this->UTF8StringToArray($password), $password, $this->rtl); + $psw_array = TCPDF_FONTS::utf8Bidi(TCPDF_FONTS::UTF8StringToArray($password, $this->isunicode, $this->CurrentFont), $password, $this->rtl, $this->isunicode, $this->CurrentFont); foreach ($psw_array as $c) { - $psw .= $this->unichr($c); + $psw .= TCPDF_FONTS::unichr($c, $this->isunicode); } return substr($psw, 0, 127); } @@ -14672,7 +10700,7 @@ class TCPDF { if (!$this->encryptdata['pubkey']) { // standard mode if ($this->encryptdata['mode'] == 3) { // AES-256 // generate 256 bit random key - $this->encryptdata['key'] = substr(hash('sha256', $this->getRandomSeed(), true), 0, $keybytelen); + $this->encryptdata['key'] = substr(hash('sha256', TCPDF_STATIC::getRandomSeed(), true), 0, $keybytelen); // truncate passwords $this->encryptdata['user_password'] = $this->_fixAES256Password($this->encryptdata['user_password']); $this->encryptdata['owner_password'] = $this->_fixAES256Password($this->encryptdata['owner_password']); @@ -14687,7 +10715,7 @@ class TCPDF { // Compute P value $this->encryptdata['P'] = $this->encryptdata['protection']; // Computing the encryption dictionary's Perms (permissions) value - $perms = $this->getEncPermissionsString($this->encryptdata['protection']); // bytes 0-3 + $perms = TCPDF_STATIC::getEncPermissionsString($this->encryptdata['protection']); // bytes 0-3 $perms .= chr(255).chr(255).chr(255).chr(255); // bytes 4-7 if (isset($this->encryptdata['CF']['EncryptMetadata']) AND (!$this->encryptdata['CF']['EncryptMetadata'])) { // byte 8 $perms .= 'F'; @@ -14700,17 +10728,17 @@ class TCPDF { $this->encryptdata['perms'] = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $this->encryptdata['key'], $perms, MCRYPT_MODE_ECB, $iv); } else { // RC4-40, RC4-128, AES-128 // Pad passwords - $this->encryptdata['user_password'] = substr($this->encryptdata['user_password'].$this->enc_padding, 0, 32); - $this->encryptdata['owner_password'] = substr($this->encryptdata['owner_password'].$this->enc_padding, 0, 32); + $this->encryptdata['user_password'] = substr($this->encryptdata['user_password'].TCPDF_STATIC::$enc_padding, 0, 32); + $this->encryptdata['owner_password'] = substr($this->encryptdata['owner_password'].TCPDF_STATIC::$enc_padding, 0, 32); // Compute O value $this->encryptdata['O'] = $this->_Ovalue(); // get default permissions (reverse byte order) - $permissions = $this->getEncPermissionsString($this->encryptdata['protection']); + $permissions = TCPDF_STATIC::getEncPermissionsString($this->encryptdata['protection']); // Compute encryption key - $tmp = $this->_md5_16($this->encryptdata['user_password'].$this->encryptdata['O'].$permissions.$this->encryptdata['fileid']); + $tmp = TCPDF_STATIC::_md5_16($this->encryptdata['user_password'].$this->encryptdata['O'].$permissions.$this->encryptdata['fileid']); if ($this->encryptdata['mode'] > 0) { for ($i = 0; $i < 50; ++$i) { - $tmp = $this->_md5_16(substr($tmp, 0, $keybytelen)); + $tmp = TCPDF_STATIC::_md5_16(substr($tmp, 0, $keybytelen)); } } $this->encryptdata['key'] = substr($tmp, 0, $keybytelen); @@ -14721,21 +10749,21 @@ class TCPDF { } } else { // Public-Key mode // random 20-byte seed - $seed = sha1($this->getRandomSeed(), true); + $seed = sha1(TCPDF_STATIC::getRandomSeed(), true); $recipient_bytes = ''; foreach ($this->encryptdata['pubkeys'] as $pubkey) { // for each public certificate if (isset($pubkey['p'])) { - $pkprotection = $this->getUserPermissionCode($pubkey['p'], $this->encryptdata['mode']); + $pkprotection = TCPDF_STATIC::getUserPermissionCode($pubkey['p'], $this->encryptdata['mode']); } else { $pkprotection = $this->encryptdata['protection']; } // get default permissions (reverse byte order) - $pkpermissions = $this->getEncPermissionsString($pkprotection); + $pkpermissions = TCPDF_STATIC::getEncPermissionsString($pkprotection); // envelope data $envelope = $seed.$pkpermissions; // write the envelope data to a temporary file - $tempkeyfile = $this->getObjFilename('tmpkey'); + $tempkeyfile = TCPDF_STATIC::getObjFilename('tmpkey'); $f = fopen($tempkeyfile, 'wb'); if (!$f) { $this->Error('Unable to create temporary key file: '.$tempkeyfile); @@ -14743,7 +10771,7 @@ class TCPDF { $envelope_length = strlen($envelope); fwrite($f, $envelope, $envelope_length); fclose($f); - $tempencfile = $this->getObjFilename('tmpenc'); + $tempencfile = TCPDF_STATIC::getObjFilename('tmpenc'); if (!openssl_pkcs7_encrypt($tempkeyfile, $tempencfile, $pubkey['c'], array(), PKCS7_BINARY | PKCS7_DETACHED)) { $this->Error('Unable to encrypt the file: '.$tempkeyfile); } @@ -14774,44 +10802,6 @@ class TCPDF { } } - /** - * Return the premission code used on encryption (P value). - * @param $permissions (Array) the set of permissions (specify the ones you want to block). - * @param $mode (int) encryption strength: 0 = RC4 40 bit; 1 = RC4 128 bit; 2 = AES 128 bit; 3 = AES 256 bit. - * @protected - * @since 5.0.005 (2010-05-12) - * @author Nicola Asuni - */ - protected function getUserPermissionCode($permissions, $mode=0) { - $options = array( - 'owner' => 2, // bit 2 -- inverted logic: cleared by default - 'print' => 4, // bit 3 - 'modify' => 8, // bit 4 - 'copy' => 16, // bit 5 - 'annot-forms' => 32, // bit 6 - 'fill-forms' => 256, // bit 9 - 'extract' => 512, // bit 10 - 'assemble' => 1024,// bit 11 - 'print-high' => 2048 // bit 12 - ); - $protection = 2147422012; // 32 bit: (01111111 11111111 00001111 00111100) - foreach ($permissions as $permission) { - if (!isset($options[$permission])) { - $this->Error('Incorrect permission: '.$permission); - } - if (($mode > 0) OR ($options[$permission] <= 32)) { - // set only valid permissions - if ($options[$permission] == 2) { - // the logic for bit 2 is inverted (cleared by default) - $protection += $options[$permission]; - } else { - $protection -= $options[$permission]; - } - } - } - return $protection; - } - /** * Set document protection * Remark: the protection against modification is for people who have the full Acrobat product. @@ -14821,7 +10811,7 @@ class TCPDF { * @param $user_pass (String) user password. Empty by default. * @param $owner_pass (String) owner password. If not specified, a random value is used. * @param $mode (int) encryption strength: 0 = RC4 40 bit; 1 = RC4 128 bit; 2 = AES 128 bit; 3 = AES 256 bit. - * @param $pubkeys (String) array of recipients containing public-key certificates ('c') and permissions ('p'). For example: array(array('c' => 'file://../tcpdf.crt', 'p' => array('print'))) + * @param $pubkeys (String) array of recipients containing public-key certificates ('c') and permissions ('p'). For example: array(array('c' => 'file://../examples/data/cert/tcpdf.crt', 'p' => array('print'))) * @public * @since 2.0.000 (2008-01-02) * @author Nicola Asuni @@ -14831,7 +10821,7 @@ class TCPDF { // encryption is not allowed in PDF/A mode return; } - $this->encryptdata['protection'] = $this->getUserPermissionCode($permissions, $mode); + $this->encryptdata['protection'] = TCPDF_STATIC::getUserPermissionCode($permissions, $mode); if (($pubkeys !== null) AND (is_array($pubkeys))) { // public-key mode $this->encryptdata['pubkeys'] = $pubkeys; @@ -14867,7 +10857,7 @@ class TCPDF { } } if ($owner_pass === null) { - $owner_pass = md5($this->getRandomSeed()); + $owner_pass = md5(TCPDF_STATIC::getRandomSeed()); } $this->encryptdata['user_password'] = $user_pass; $this->encryptdata['owner_password'] = $owner_pass; @@ -14913,66 +10903,10 @@ class TCPDF { } } $this->encrypted = true; - $this->encryptdata['fileid'] = $this->convertHexStringToString($this->file_id); + $this->encryptdata['fileid'] = TCPDF_STATIC::convertHexStringToString($this->file_id); $this->_generateencryptionkey(); } - /** - * Convert hexadecimal string to string - * @param $bs (string) byte-string to convert - * @return String - * @protected - * @since 5.0.005 (2010-05-12) - * @author Nicola Asuni - */ - protected function convertHexStringToString($bs) { - $string = ''; // string to be returned - $bslength = strlen($bs); - if (($bslength % 2) != 0) { - // padding - $bs .= '0'; - ++$bslength; - } - for ($i = 0; $i < $bslength; $i += 2) { - $string .= chr(hexdec($bs[$i].$bs[($i + 1)])); - } - return $string; - } - - /** - * Convert string to hexadecimal string (byte string) - * @param $s (string) string to convert - * @return byte string - * @protected - * @since 5.0.010 (2010-05-17) - * @author Nicola Asuni - */ - protected function convertStringToHexString($s) { - $bs = ''; - $chars = preg_split('//', $s, -1, PREG_SPLIT_NO_EMPTY); - foreach ($chars as $c) { - $bs .= sprintf('%02s', dechex(ord($c))); - } - return $bs; - } - - /** - * Convert encryption P value to a string of bytes, low-order byte first. - * @param $protection (string) 32bit encryption permission value (P value) - * @return String - * @protected - * @since 5.0.005 (2010-05-12) - * @author Nicola Asuni - */ - protected function getEncPermissionsString($protection) { - $binprot = sprintf('%032b', $protection); - $str = chr(bindec(substr($binprot, 24, 8))); - $str .= chr(bindec(substr($binprot, 16, 8))); - $str .= chr(bindec(substr($binprot, 8, 8))); - $str .= chr(bindec(substr($binprot, 0, 8))); - return $str; - } - // END OF ENCRYPTION FUNCTIONS ------------------------- // START TRANSFORMATIONS SECTION ----------------------- @@ -15456,7 +11390,7 @@ class TCPDF { */ protected function _outRect($x, $y, $w, $h, $op) { if ($this->state == 2) { - $this->_out(sprintf('%F %F %F %F re %s', $x * $this->k, ($this->h - $y) * $this->k, $w * $this->k, -$h * $this->k, $op)); + $this->_out(sprintf('%F %F %F %F re %s', ($x * $this->k), (($this->h - $y) * $this->k), ($w * $this->k), (-$h * $this->k), $op)); } } @@ -15474,7 +11408,7 @@ class TCPDF { */ protected function _outCurve($x1, $y1, $x2, $y2, $x3, $y3) { if ($this->state == 2) { - $this->_out(sprintf('%F %F %F %F %F %F c', $x1 * $this->k, ($this->h - $y1) * $this->k, $x2 * $this->k, ($this->h - $y2) * $this->k, $x3 * $this->k, ($this->h - $y3) * $this->k)); + $this->_out(sprintf('%F %F %F %F %F %F c', ($x1 * $this->k), (($this->h - $y1) * $this->k), ($x2 * $this->k), (($this->h - $y2) * $this->k), ($x3 * $this->k), (($this->h - $y3) * $this->k))); } } @@ -15490,7 +11424,7 @@ class TCPDF { */ protected function _outCurveV($x2, $y2, $x3, $y3) { if ($this->state == 2) { - $this->_out(sprintf('%F %F %F %F v', $x2 * $this->k, ($this->h - $y2) * $this->k, $x3 * $this->k, ($this->h - $y3) * $this->k)); + $this->_out(sprintf('%F %F %F %F v', ($x2 * $this->k), (($this->h - $y2) * $this->k), ($x3 * $this->k), (($this->h - $y3) * $this->k))); } } @@ -15506,7 +11440,7 @@ class TCPDF { */ protected function _outCurveY($x1, $y1, $x3, $y3) { if ($this->state == 2) { - $this->_out(sprintf('%F %F %F %F y', $x1 * $this->k, ($this->h - $y1) * $this->k, $x3 * $this->k, ($this->h - $y3) * $this->k)); + $this->_out(sprintf('%F %F %F %F y', ($x1 * $this->k), (($this->h - $y1) * $this->k), ($x3 * $this->k), (($this->h - $y3) * $this->k))); } } @@ -15545,7 +11479,7 @@ class TCPDF { *
                    • all: Line style of all borders. Array like for SetLineStyle().
                    • *
                    • L, T, R, B or combinations: Line style of left, top, right or bottom border. Array like for SetLineStyle().
                    • *
                    - * If a key is not present or is null, not draws the border. Default value: default line style (empty array). + * If a key is not present or is null, the correspondent border is not drawn. Default value: default line style (empty array). * @param $fill_color (array) Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K) or array(C,M,Y,K,SpotColorName). Default value: default color (empty array). * @public * @since 1.0 @@ -15555,18 +11489,31 @@ class TCPDF { if ($this->state != 2) { return; } - if (!(false === strpos($style, 'F')) AND !empty($fill_color)) { + if (empty($style)) { + $style = 'S'; + } + if (!(strpos($style, 'F') === false) AND !empty($fill_color)) { + // set background color $this->SetFillColorArray($fill_color); } - $op = $this->getPathPaintOperator($style); - if ((!$border_style) OR (isset($border_style['all']))) { - if (isset($border_style['all']) AND $border_style['all']) { + if (!empty($border_style)) { + if (isset($border_style['all']) AND !empty($border_style['all'])) { + //set global style for border $this->SetLineStyle($border_style['all']); $border_style = array(); + } else { + // remove stroke operator from style + $opnostroke = array('S' => '', 'D' => '', 's' => '', 'd' => '', 'B' => 'F', 'FD' => 'F', 'DF' => 'F', 'B*' => 'F*', 'F*D' => 'F*', 'DF*' => 'F*', 'b' => 'f', 'fd' => 'f', 'df' => 'f', 'b*' => 'f*', 'f*d' => 'f*', 'df*' => 'f*' ); + if (isset($opnostroke[$style])) { + $style = $opnostroke[$style]; + } } } - $this->_outRect($x, $y, $w, $h, $op); - if ($border_style) { + if (!empty($style)) { + $op = TCPDF_STATIC::getPathPaintOperator($style); + $this->_outRect($x, $y, $w, $h, $op); + } + if (!empty($border_style)) { $border_style2 = array(); foreach ($border_style as $line => $value) { $length = strlen($line); @@ -15616,7 +11563,7 @@ class TCPDF { if (!(false === strpos($style, 'F')) AND isset($fill_color)) { $this->SetFillColorArray($fill_color); } - $op = $this->getPathPaintOperator($style); + $op = TCPDF_STATIC::getPathPaintOperator($style); if ($line_style) { $this->SetLineStyle($line_style); } @@ -15646,7 +11593,7 @@ class TCPDF { if (!(false === strpos($style, 'F')) AND isset($fill_color)) { $this->SetFillColorArray($fill_color); } - $op = $this->getPathPaintOperator($style); + $op = TCPDF_STATIC::getPathPaintOperator($style); if ($op == 'f') { $line_style = array(); } @@ -15683,13 +11630,13 @@ class TCPDF { if ($this->state != 2) { return; } - if ($this->empty_string($ry) OR ($ry == 0)) { + if (TCPDF_STATIC::empty_string($ry) OR ($ry == 0)) { $ry = $rx; } if (!(false === strpos($style, 'F')) AND isset($fill_color)) { $this->SetFillColorArray($fill_color); } - $op = $this->getPathPaintOperator($style); + $op = TCPDF_STATIC::getPathPaintOperator($style); if ($op == 'f') { $line_style = array(); } @@ -15905,7 +11852,7 @@ class TCPDF { if (!(false === strpos($style, 'F')) AND isset($fill_color)) { $this->SetFillColorArray($fill_color); } - $op = $this->getPathPaintOperator($style); + $op = TCPDF_STATIC::getPathPaintOperator($style); if ($op == 'f') { $line_style = array(); } @@ -16108,7 +12055,7 @@ class TCPDF { if (!(false === strpos($style, 'F')) AND isset($fill_color)) { $this->SetFillColorArray($fill_color); } - $op = $this->getPathPaintOperator($style); + $op = TCPDF_STATIC::getPathPaintOperator($style); if ($op == 'f') { $border_style = array(); } @@ -16218,631 +12165,6 @@ class TCPDF { // END GRAPHIC FUNCTIONS SECTION ----------------------- - // BIDIRECTIONAL TEXT SECTION -------------------------- - - /** - * Reverse the RLT substrings using the Bidirectional Algorithm (http://unicode.org/reports/tr9/). - * @param $str (string) string to manipulate. - * @param $setbom (bool) if true set the Byte Order Mark (BOM = 0xFEFF) - * @param $forcertl (bool) if true forces RTL text direction - * @return string - * @protected - * @author Nicola Asuni - * @since 2.1.000 (2008-01-08) - */ - protected function utf8StrRev($str, $setbom=false, $forcertl=false) { - return $this->utf8StrArrRev($this->UTF8StringToArray($str), $str, $setbom, $forcertl); - } - - /** - * Reverse the RLT substrings array using the Bidirectional Algorithm (http://unicode.org/reports/tr9/). - * @param $arr (array) array of unicode values. - * @param $str (string) string to manipulate (or empty value). - * @param $setbom (bool) if true set the Byte Order Mark (BOM = 0xFEFF) - * @param $forcertl (bool) if true forces RTL text direction - * @return string - * @protected - * @author Nicola Asuni - * @since 4.9.000 (2010-03-27) - */ - protected function utf8StrArrRev($arr, $str='', $setbom=false, $forcertl=false) { - return $this->arrUTF8ToUTF16BE($this->utf8Bidi($arr, $str, $forcertl), $setbom); - } - - /** - * Reverse the RLT substrings using the Bidirectional Algorithm (http://unicode.org/reports/tr9/). - * @param $ta (array) array of characters composing the string. - * @param $str (string) string to process - * @param $forcertl (bool) if 'R' forces RTL, if 'L' forces LTR - * @return array of unicode chars - * @author Nicola Asuni - * @protected - * @since 2.4.000 (2008-03-06) - */ - protected function utf8Bidi($ta, $str='', $forcertl=false) { - // paragraph embedding level - $pel = 0; - // max level - $maxlevel = 0; - if ($this->empty_string($str)) { - // create string from array - $str = $this->UTF8ArrSubString($ta); - } - // check if string contains arabic text - if (preg_match($this->unicode->uni_RE_PATTERN_ARABIC, $str)) { - $arabic = true; - } else { - $arabic = false; - } - // check if string contains RTL text - if (!($forcertl OR $arabic OR preg_match($this->unicode->uni_RE_PATTERN_RTL, $str))) { - return $ta; - } - - // get number of chars - $numchars = count($ta); - - if ($forcertl == 'R') { - $pel = 1; - } elseif ($forcertl == 'L') { - $pel = 0; - } else { - // P2. In each paragraph, find the first character of type L, AL, or R. - // P3. If a character is found in P2 and it is of type AL or R, then set the paragraph embedding level to one; otherwise, set it to zero. - for ($i=0; $i < $numchars; ++$i) { - $type = $this->unicode->uni_type[$ta[$i]]; - if ($type == 'L') { - $pel = 0; - break; - } elseif (($type == 'AL') OR ($type == 'R')) { - $pel = 1; - break; - } - } - } - - // Current Embedding Level - $cel = $pel; - // directional override status - $dos = 'N'; - $remember = array(); - // start-of-level-run - $sor = $pel % 2 ? 'R' : 'L'; - $eor = $sor; - - // Array of characters data - $chardata = Array(); - - // X1. Begin by setting the current embedding level to the paragraph embedding level. Set the directional override status to neutral. Process each character iteratively, applying rules X2 through X9. Only embedding levels from 0 to 61 are valid in this phase. - // In the resolution of levels in rules I1 and I2, the maximum embedding level of 62 can be reached. - for ($i=0; $i < $numchars; ++$i) { - if ($ta[$i] == $this->unicode->uni_RLE) { - // X2. With each RLE, compute the least greater odd embedding level. - // a. If this new level would be valid, then this embedding code is valid. Remember (push) the current embedding level and override status. Reset the current level to this new level, and reset the override status to neutral. - // b. If the new level would not be valid, then this code is invalid. Do not change the current level or override status. - $next_level = $cel + ($cel % 2) + 1; - if ($next_level < 62) { - $remember[] = array('num' => $this->unicode->uni_RLE, 'cel' => $cel, 'dos' => $dos); - $cel = $next_level; - $dos = 'N'; - $sor = $eor; - $eor = $cel % 2 ? 'R' : 'L'; - } - } elseif ($ta[$i] == $this->unicode->uni_LRE) { - // X3. With each LRE, compute the least greater even embedding level. - // a. If this new level would be valid, then this embedding code is valid. Remember (push) the current embedding level and override status. Reset the current level to this new level, and reset the override status to neutral. - // b. If the new level would not be valid, then this code is invalid. Do not change the current level or override status. - $next_level = $cel + 2 - ($cel % 2); - if ( $next_level < 62 ) { - $remember[] = array('num' => $this->unicode->uni_LRE, 'cel' => $cel, 'dos' => $dos); - $cel = $next_level; - $dos = 'N'; - $sor = $eor; - $eor = $cel % 2 ? 'R' : 'L'; - } - } elseif ($ta[$i] == $this->unicode->uni_RLO) { - // X4. With each RLO, compute the least greater odd embedding level. - // a. If this new level would be valid, then this embedding code is valid. Remember (push) the current embedding level and override status. Reset the current level to this new level, and reset the override status to right-to-left. - // b. If the new level would not be valid, then this code is invalid. Do not change the current level or override status. - $next_level = $cel + ($cel % 2) + 1; - if ($next_level < 62) { - $remember[] = array('num' => $this->unicode->uni_RLO, 'cel' => $cel, 'dos' => $dos); - $cel = $next_level; - $dos = 'R'; - $sor = $eor; - $eor = $cel % 2 ? 'R' : 'L'; - } - } elseif ($ta[$i] == $this->unicode->uni_LRO) { - // X5. With each LRO, compute the least greater even embedding level. - // a. If this new level would be valid, then this embedding code is valid. Remember (push) the current embedding level and override status. Reset the current level to this new level, and reset the override status to left-to-right. - // b. If the new level would not be valid, then this code is invalid. Do not change the current level or override status. - $next_level = $cel + 2 - ($cel % 2); - if ( $next_level < 62 ) { - $remember[] = array('num' => $this->unicode->uni_LRO, 'cel' => $cel, 'dos' => $dos); - $cel = $next_level; - $dos = 'L'; - $sor = $eor; - $eor = $cel % 2 ? 'R' : 'L'; - } - } elseif ($ta[$i] == $this->unicode->uni_PDF) { - // X7. With each PDF, determine the matching embedding or override code. If there was a valid matching code, restore (pop) the last remembered (pushed) embedding level and directional override. - if (count($remember)) { - $last = count($remember ) - 1; - if (($remember[$last]['num'] == $this->unicode->uni_RLE) OR - ($remember[$last]['num'] == $this->unicode->uni_LRE) OR - ($remember[$last]['num'] == $this->unicode->uni_RLO) OR - ($remember[$last]['num'] == $this->unicode->uni_LRO)) { - $match = array_pop($remember); - $cel = $match['cel']; - $dos = $match['dos']; - $sor = $eor; - $eor = ($cel > $match['cel'] ? $cel : $match['cel']) % 2 ? 'R' : 'L'; - } - } - } elseif (($ta[$i] != $this->unicode->uni_RLE) AND - ($ta[$i] != $this->unicode->uni_LRE) AND - ($ta[$i] != $this->unicode->uni_RLO) AND - ($ta[$i] != $this->unicode->uni_LRO) AND - ($ta[$i] != $this->unicode->uni_PDF)) { - // X6. For all types besides RLE, LRE, RLO, LRO, and PDF: - // a. Set the level of the current character to the current embedding level. - // b. Whenever the directional override status is not neutral, reset the current character type to the directional override status. - if ($dos != 'N') { - $chardir = $dos; - } else { - if (isset($this->unicode->uni_type[$ta[$i]])) { - $chardir = $this->unicode->uni_type[$ta[$i]]; - } else { - $chardir = 'L'; - } - } - // stores string characters and other information - $chardata[] = array('char' => $ta[$i], 'level' => $cel, 'type' => $chardir, 'sor' => $sor, 'eor' => $eor); - } - } // end for each char - - // X8. All explicit directional embeddings and overrides are completely terminated at the end of each paragraph. Paragraph separators are not included in the embedding. - // X9. Remove all RLE, LRE, RLO, LRO, PDF, and BN codes. - // X10. The remaining rules are applied to each run of characters at the same level. For each run, determine the start-of-level-run (sor) and end-of-level-run (eor) type, either L or R. This depends on the higher of the two levels on either side of the boundary (at the start or end of the paragraph, the level of the 'other' run is the base embedding level). If the higher level is odd, the type is R; otherwise, it is L. - - // 3.3.3 Resolving Weak Types - // Weak types are now resolved one level run at a time. At level run boundaries where the type of the character on the other side of the boundary is required, the type assigned to sor or eor is used. - // Nonspacing marks are now resolved based on the previous characters. - $numchars = count($chardata); - - // W1. Examine each nonspacing mark (NSM) in the level run, and change the type of the NSM to the type of the previous character. If the NSM is at the start of the level run, it will get the type of sor. - $prevlevel = -1; // track level changes - $levcount = 0; // counts consecutive chars at the same level - for ($i=0; $i < $numchars; ++$i) { - if ($chardata[$i]['type'] == 'NSM') { - if ($levcount) { - $chardata[$i]['type'] = $chardata[$i]['sor']; - } elseif ($i > 0) { - $chardata[$i]['type'] = $chardata[($i-1)]['type']; - } - } - if ($chardata[$i]['level'] != $prevlevel) { - $levcount = 0; - } else { - ++$levcount; - } - $prevlevel = $chardata[$i]['level']; - } - - // W2. Search backward from each instance of a European number until the first strong type (R, L, AL, or sor) is found. If an AL is found, change the type of the European number to Arabic number. - $prevlevel = -1; - $levcount = 0; - for ($i=0; $i < $numchars; ++$i) { - if ($chardata[$i]['char'] == 'EN') { - for ($j=$levcount; $j >= 0; $j--) { - if ($chardata[$j]['type'] == 'AL') { - $chardata[$i]['type'] = 'AN'; - } elseif (($chardata[$j]['type'] == 'L') OR ($chardata[$j]['type'] == 'R')) { - break; - } - } - } - if ($chardata[$i]['level'] != $prevlevel) { - $levcount = 0; - } else { - ++$levcount; - } - $prevlevel = $chardata[$i]['level']; - } - - // W3. Change all ALs to R. - for ($i=0; $i < $numchars; ++$i) { - if ($chardata[$i]['type'] == 'AL') { - $chardata[$i]['type'] = 'R'; - } - } - - // W4. A single European separator between two European numbers changes to a European number. A single common separator between two numbers of the same type changes to that type. - $prevlevel = -1; - $levcount = 0; - for ($i=0; $i < $numchars; ++$i) { - if (($levcount > 0) AND (($i+1) < $numchars) AND ($chardata[($i+1)]['level'] == $prevlevel)) { - if (($chardata[$i]['type'] == 'ES') AND ($chardata[($i-1)]['type'] == 'EN') AND ($chardata[($i+1)]['type'] == 'EN')) { - $chardata[$i]['type'] = 'EN'; - } elseif (($chardata[$i]['type'] == 'CS') AND ($chardata[($i-1)]['type'] == 'EN') AND ($chardata[($i+1)]['type'] == 'EN')) { - $chardata[$i]['type'] = 'EN'; - } elseif (($chardata[$i]['type'] == 'CS') AND ($chardata[($i-1)]['type'] == 'AN') AND ($chardata[($i+1)]['type'] == 'AN')) { - $chardata[$i]['type'] = 'AN'; - } - } - if ($chardata[$i]['level'] != $prevlevel) { - $levcount = 0; - } else { - ++$levcount; - } - $prevlevel = $chardata[$i]['level']; - } - - // W5. A sequence of European terminators adjacent to European numbers changes to all European numbers. - $prevlevel = -1; - $levcount = 0; - for ($i=0; $i < $numchars; ++$i) { - if ($chardata[$i]['type'] == 'ET') { - if (($levcount > 0) AND ($chardata[($i-1)]['type'] == 'EN')) { - $chardata[$i]['type'] = 'EN'; - } else { - $j = $i+1; - while (($j < $numchars) AND ($chardata[$j]['level'] == $prevlevel)) { - if ($chardata[$j]['type'] == 'EN') { - $chardata[$i]['type'] = 'EN'; - break; - } elseif ($chardata[$j]['type'] != 'ET') { - break; - } - ++$j; - } - } - } - if ($chardata[$i]['level'] != $prevlevel) { - $levcount = 0; - } else { - ++$levcount; - } - $prevlevel = $chardata[$i]['level']; - } - - // W6. Otherwise, separators and terminators change to Other Neutral. - $prevlevel = -1; - $levcount = 0; - for ($i=0; $i < $numchars; ++$i) { - if (($chardata[$i]['type'] == 'ET') OR ($chardata[$i]['type'] == 'ES') OR ($chardata[$i]['type'] == 'CS')) { - $chardata[$i]['type'] = 'ON'; - } - if ($chardata[$i]['level'] != $prevlevel) { - $levcount = 0; - } else { - ++$levcount; - } - $prevlevel = $chardata[$i]['level']; - } - - //W7. Search backward from each instance of a European number until the first strong type (R, L, or sor) is found. If an L is found, then change the type of the European number to L. - $prevlevel = -1; - $levcount = 0; - for ($i=0; $i < $numchars; ++$i) { - if ($chardata[$i]['char'] == 'EN') { - for ($j=$levcount; $j >= 0; $j--) { - if ($chardata[$j]['type'] == 'L') { - $chardata[$i]['type'] = 'L'; - } elseif ($chardata[$j]['type'] == 'R') { - break; - } - } - } - if ($chardata[$i]['level'] != $prevlevel) { - $levcount = 0; - } else { - ++$levcount; - } - $prevlevel = $chardata[$i]['level']; - } - - // N1. A sequence of neutrals takes the direction of the surrounding strong text if the text on both sides has the same direction. European and Arabic numbers act as if they were R in terms of their influence on neutrals. Start-of-level-run (sor) and end-of-level-run (eor) are used at level run boundaries. - $prevlevel = -1; - $levcount = 0; - for ($i=0; $i < $numchars; ++$i) { - if (($levcount > 0) AND (($i+1) < $numchars) AND ($chardata[($i+1)]['level'] == $prevlevel)) { - if (($chardata[$i]['type'] == 'N') AND ($chardata[($i-1)]['type'] == 'L') AND ($chardata[($i+1)]['type'] == 'L')) { - $chardata[$i]['type'] = 'L'; - } elseif (($chardata[$i]['type'] == 'N') AND - (($chardata[($i-1)]['type'] == 'R') OR ($chardata[($i-1)]['type'] == 'EN') OR ($chardata[($i-1)]['type'] == 'AN')) AND - (($chardata[($i+1)]['type'] == 'R') OR ($chardata[($i+1)]['type'] == 'EN') OR ($chardata[($i+1)]['type'] == 'AN'))) { - $chardata[$i]['type'] = 'R'; - } elseif ($chardata[$i]['type'] == 'N') { - // N2. Any remaining neutrals take the embedding direction - $chardata[$i]['type'] = $chardata[$i]['sor']; - } - } elseif (($levcount == 0) AND (($i+1) < $numchars) AND ($chardata[($i+1)]['level'] == $prevlevel)) { - // first char - if (($chardata[$i]['type'] == 'N') AND ($chardata[$i]['sor'] == 'L') AND ($chardata[($i+1)]['type'] == 'L')) { - $chardata[$i]['type'] = 'L'; - } elseif (($chardata[$i]['type'] == 'N') AND - (($chardata[$i]['sor'] == 'R') OR ($chardata[$i]['sor'] == 'EN') OR ($chardata[$i]['sor'] == 'AN')) AND - (($chardata[($i+1)]['type'] == 'R') OR ($chardata[($i+1)]['type'] == 'EN') OR ($chardata[($i+1)]['type'] == 'AN'))) { - $chardata[$i]['type'] = 'R'; - } elseif ($chardata[$i]['type'] == 'N') { - // N2. Any remaining neutrals take the embedding direction - $chardata[$i]['type'] = $chardata[$i]['sor']; - } - } elseif (($levcount > 0) AND ((($i+1) == $numchars) OR (($i+1) < $numchars) AND ($chardata[($i+1)]['level'] != $prevlevel))) { - //last char - if (($chardata[$i]['type'] == 'N') AND ($chardata[($i-1)]['type'] == 'L') AND ($chardata[$i]['eor'] == 'L')) { - $chardata[$i]['type'] = 'L'; - } elseif (($chardata[$i]['type'] == 'N') AND - (($chardata[($i-1)]['type'] == 'R') OR ($chardata[($i-1)]['type'] == 'EN') OR ($chardata[($i-1)]['type'] == 'AN')) AND - (($chardata[$i]['eor'] == 'R') OR ($chardata[$i]['eor'] == 'EN') OR ($chardata[$i]['eor'] == 'AN'))) { - $chardata[$i]['type'] = 'R'; - } elseif ($chardata[$i]['type'] == 'N') { - // N2. Any remaining neutrals take the embedding direction - $chardata[$i]['type'] = $chardata[$i]['sor']; - } - } elseif ($chardata[$i]['type'] == 'N') { - // N2. Any remaining neutrals take the embedding direction - $chardata[$i]['type'] = $chardata[$i]['sor']; - } - if ($chardata[$i]['level'] != $prevlevel) { - $levcount = 0; - } else { - ++$levcount; - } - $prevlevel = $chardata[$i]['level']; - } - - // I1. For all characters with an even (left-to-right) embedding direction, those of type R go up one level and those of type AN or EN go up two levels. - // I2. For all characters with an odd (right-to-left) embedding direction, those of type L, EN or AN go up one level. - for ($i=0; $i < $numchars; ++$i) { - $odd = $chardata[$i]['level'] % 2; - if ($odd) { - if (($chardata[$i]['type'] == 'L') OR ($chardata[$i]['type'] == 'AN') OR ($chardata[$i]['type'] == 'EN')) { - $chardata[$i]['level'] += 1; - } - } else { - if ($chardata[$i]['type'] == 'R') { - $chardata[$i]['level'] += 1; - } elseif (($chardata[$i]['type'] == 'AN') OR ($chardata[$i]['type'] == 'EN')) { - $chardata[$i]['level'] += 2; - } - } - $maxlevel = max($chardata[$i]['level'],$maxlevel); - } - - // L1. On each line, reset the embedding level of the following characters to the paragraph embedding level: - // 1. Segment separators, - // 2. Paragraph separators, - // 3. Any sequence of whitespace characters preceding a segment separator or paragraph separator, and - // 4. Any sequence of white space characters at the end of the line. - for ($i=0; $i < $numchars; ++$i) { - if (($chardata[$i]['type'] == 'B') OR ($chardata[$i]['type'] == 'S')) { - $chardata[$i]['level'] = $pel; - } elseif ($chardata[$i]['type'] == 'WS') { - $j = $i+1; - while ($j < $numchars) { - if ((($chardata[$j]['type'] == 'B') OR ($chardata[$j]['type'] == 'S')) OR - (($j == ($numchars-1)) AND ($chardata[$j]['type'] == 'WS'))) { - $chardata[$i]['level'] = $pel; - break; - } elseif ($chardata[$j]['type'] != 'WS') { - break; - } - ++$j; - } - } - } - - // Arabic Shaping - // Cursively connected scripts, such as Arabic or Syriac, require the selection of positional character shapes that depend on adjacent characters. Shaping is logically applied after the Bidirectional Algorithm is used and is limited to characters within the same directional run. - if ($arabic) { - $endedletter = array(1569,1570,1571,1572,1573,1575,1577,1583,1584,1585,1586,1608,1688); - $alfletter = array(1570,1571,1573,1575); - $chardata2 = $chardata; - $laaletter = false; - $charAL = array(); - $x = 0; - for ($i=0; $i < $numchars; ++$i) { - if (($this->unicode->uni_type[$chardata[$i]['char']] == 'AL') OR ($chardata[$i]['char'] == 32) OR ($chardata[$i]['char'] == 8204)) { - $charAL[$x] = $chardata[$i]; - $charAL[$x]['i'] = $i; - $chardata[$i]['x'] = $x; - ++$x; - } - } - $numAL = $x; - for ($i=0; $i < $numchars; ++$i) { - $thischar = $chardata[$i]; - if ($i > 0) { - $prevchar = $chardata[($i-1)]; - } else { - $prevchar = false; - } - if (($i+1) < $numchars) { - $nextchar = $chardata[($i+1)]; - } else { - $nextchar = false; - } - if ($this->unicode->uni_type[$thischar['char']] == 'AL') { - $x = $thischar['x']; - if ($x > 0) { - $prevchar = $charAL[($x-1)]; - } else { - $prevchar = false; - } - if (($x+1) < $numAL) { - $nextchar = $charAL[($x+1)]; - } else { - $nextchar = false; - } - // if laa letter - if (($prevchar !== false) AND ($prevchar['char'] == 1604) AND (in_array($thischar['char'], $alfletter))) { - $arabicarr = $this->unicode->uni_laa_array; - $laaletter = true; - if ($x > 1) { - $prevchar = $charAL[($x-2)]; - } else { - $prevchar = false; - } - } else { - $arabicarr = $this->unicode->uni_arabicsubst; - $laaletter = false; - } - if (($prevchar !== false) AND ($nextchar !== false) AND - (($this->unicode->uni_type[$prevchar['char']] == 'AL') OR ($this->unicode->uni_type[$prevchar['char']] == 'NSM')) AND - (($this->unicode->uni_type[$nextchar['char']] == 'AL') OR ($this->unicode->uni_type[$nextchar['char']] == 'NSM')) AND - ($prevchar['type'] == $thischar['type']) AND - ($nextchar['type'] == $thischar['type']) AND - ($nextchar['char'] != 1567)) { - if (in_array($prevchar['char'], $endedletter)) { - if (isset($arabicarr[$thischar['char']][2])) { - // initial - $chardata2[$i]['char'] = $arabicarr[$thischar['char']][2]; - } - } else { - if (isset($arabicarr[$thischar['char']][3])) { - // medial - $chardata2[$i]['char'] = $arabicarr[$thischar['char']][3]; - } - } - } elseif (($nextchar !== false) AND - (($this->unicode->uni_type[$nextchar['char']] == 'AL') OR ($this->unicode->uni_type[$nextchar['char']] == 'NSM')) AND - ($nextchar['type'] == $thischar['type']) AND - ($nextchar['char'] != 1567)) { - if (isset($arabicarr[$chardata[$i]['char']][2])) { - // initial - $chardata2[$i]['char'] = $arabicarr[$thischar['char']][2]; - } - } elseif ((($prevchar !== false) AND - (($this->unicode->uni_type[$prevchar['char']] == 'AL') OR ($this->unicode->uni_type[$prevchar['char']] == 'NSM')) AND - ($prevchar['type'] == $thischar['type'])) OR - (($nextchar !== false) AND ($nextchar['char'] == 1567))) { - // final - if (($i > 1) AND ($thischar['char'] == 1607) AND - ($chardata[$i-1]['char'] == 1604) AND - ($chardata[$i-2]['char'] == 1604)) { - //Allah Word - // mark characters to delete with false - $chardata2[$i-2]['char'] = false; - $chardata2[$i-1]['char'] = false; - $chardata2[$i]['char'] = 65010; - } else { - if (($prevchar !== false) AND in_array($prevchar['char'], $endedletter)) { - if (isset($arabicarr[$thischar['char']][0])) { - // isolated - $chardata2[$i]['char'] = $arabicarr[$thischar['char']][0]; - } - } else { - if (isset($arabicarr[$thischar['char']][1])) { - // final - $chardata2[$i]['char'] = $arabicarr[$thischar['char']][1]; - } - } - } - } elseif (isset($arabicarr[$thischar['char']][0])) { - // isolated - $chardata2[$i]['char'] = $arabicarr[$thischar['char']][0]; - } - // if laa letter - if ($laaletter) { - // mark characters to delete with false - $chardata2[($charAL[($x-1)]['i'])]['char'] = false; - } - } // end if AL (Arabic Letter) - } // end for each char - /* - * Combining characters that can occur with Arabic Shadda (0651 HEX, 1617 DEC) are replaced. - * Putting the combining mark and shadda in the same glyph allows us to avoid the two marks overlapping each other in an illegible manner. - */ - for ($i = 0; $i < ($numchars-1); ++$i) { - if (($chardata2[$i]['char'] == 1617) AND (isset($this->unicode->uni_diacritics[($chardata2[$i+1]['char'])]))) { - // check if the subtitution font is defined on current font - if (isset($this->CurrentFont['cw'][($this->unicode->uni_diacritics[($chardata2[$i+1]['char'])])])) { - $chardata2[$i]['char'] = false; - $chardata2[$i+1]['char'] = $this->unicode->uni_diacritics[($chardata2[$i+1]['char'])]; - } - } - } - // remove marked characters - foreach ($chardata2 as $key => $value) { - if ($value['char'] === false) { - unset($chardata2[$key]); - } - } - $chardata = array_values($chardata2); - $numchars = count($chardata); - unset($chardata2); - unset($arabicarr); - unset($laaletter); - unset($charAL); - } - - // L2. From the highest level found in the text to the lowest odd level on each line, including intermediate levels not actually present in the text, reverse any contiguous sequence of characters that are at that level or higher. - for ($j=$maxlevel; $j > 0; $j--) { - $ordarray = Array(); - $revarr = Array(); - $onlevel = false; - for ($i=0; $i < $numchars; ++$i) { - if ($chardata[$i]['level'] >= $j) { - $onlevel = true; - if (isset($this->unicode->uni_mirror[$chardata[$i]['char']])) { - // L4. A character is depicted by a mirrored glyph if and only if (a) the resolved directionality of that character is R, and (b) the Bidi_Mirrored property value of that character is true. - $chardata[$i]['char'] = $this->unicode->uni_mirror[$chardata[$i]['char']]; - } - $revarr[] = $chardata[$i]; - } else { - if ($onlevel) { - $revarr = array_reverse($revarr); - $ordarray = array_merge($ordarray, $revarr); - $revarr = Array(); - $onlevel = false; - } - $ordarray[] = $chardata[$i]; - } - } - if ($onlevel) { - $revarr = array_reverse($revarr); - $ordarray = array_merge($ordarray, $revarr); - } - $chardata = $ordarray; - } - - $ordarray = array(); - for ($i=0; $i < $numchars; ++$i) { - $ordarray[] = $chardata[$i]['char']; - // store char values for subsetting - $this->CurrentFont['subsetchars'][$chardata[$i]['char']] = true; - } - // update font subsetchars - $this->setFontSubBuffer($this->CurrentFont['fontkey'], 'subsetchars', $this->CurrentFont['subsetchars']); - return $ordarray; - } - - // END OF BIDIRECTIONAL TEXT SECTION ------------------- - - /** - * Encode a name object. - * @param $name (string) Name object to encode. - * @return (string) Encoded name object. - * @protected - * @author Nicola Asuni - * @since 5.9.097 (2011-06-23) - */ - protected function encodeNameObject($name) { - $escname = ''; - $length = strlen($name); - for ($i = 0; $i < $length; ++$i) { - $chr = $name[$i]; - if (preg_match('/[0-9a-zA-Z]/', $chr) == 1) { - $escname .= $chr; - } else { - $escname .= sprintf('#%02X', ord($chr)); - } - } - return $escname; - } - /** * Add a Named Destination. * NOTE: destination names are unique, so only last entry will be saved. @@ -16857,8 +12179,8 @@ class TCPDF { */ public function setDestination($name, $y=-1, $page='', $x=-1) { // remove unsupported characters - $name = $this->encodeNameObject($name); - if ($this->empty_string($name)) { + $name = TCPDF_STATIC::encodeNameObject($name); + if (TCPDF_STATIC::empty_string($name)) { return false; } if ($y == -1) { @@ -17065,7 +12387,7 @@ class TCPDF { if (is_string($o['u'])) { if ($o['u'][0] == '#') { // internal destination - $out .= ' /Dest /'.$this->encodeNameObject(substr($o['u'], 1)); + $out .= ' /Dest /'.TCPDF_STATIC::encodeNameObject(substr($o['u'], 1)); } elseif ($o['u'][0] == '%') { // embedded PDF file $filename = basename(substr($o['u'], 1)); @@ -17204,24 +12526,6 @@ class TCPDF { } } - /** - * Convert color to javascript color. - * @param $color (string) color name or "#RRGGBB" - * @protected - * @author Denis Van Nuffelen, Nicola Asuni - * @since 2.1.002 (2008-02-12) - */ - protected function _JScolor($color) { - static $aColors = array('transparent', 'black', 'white', 'red', 'green', 'blue', 'cyan', 'magenta', 'yellow', 'dkGray', 'gray', 'ltGray'); - if (substr($color,0,1) == '#') { - return sprintf("['RGB',%F,%F,%F]", hexdec(substr($color,1,2))/255, hexdec(substr($color,3,2))/255, hexdec(substr($color,5,2))/255); - } - if (!in_array($color,$aColors)) { - $this->Error('Invalid color: '.$color); - } - return 'color.'.$color; - } - /** * Adds a javascript form field. * @param $type (string) field type @@ -17246,7 +12550,7 @@ class TCPDF { $this->javascript .= 'f'.$name.'.textSize='.$this->FontSizePt.";\n"; while (list($key, $val) = each($prop)) { if (strcmp(substr($key, -5), 'Color') == 0) { - $val = $this->_JScolor($val); + $val = TCPDF_COLORS::_JScolor($val); } else { $val = "'".$val."'"; } @@ -17262,372 +12566,7 @@ class TCPDF { // --- FORM FIELDS ----------------------------------------------------- - /** - * Convert JavaScript form fields properties array to Annotation Properties array. - * @param $prop (array) javascript field properties. Possible values are described on official Javascript for Acrobat API reference. - * @return array of annotation properties - * @protected - * @author Nicola Asuni - * @since 4.8.000 (2009-09-06) - */ - protected function getAnnotOptFromJSProp($prop) { - if (isset($prop['aopt']) AND is_array($prop['aopt'])) { - // the annotation options area lready defined - return $prop['aopt']; - } - $opt = array(); // value to be returned - // alignment: Controls how the text is laid out within the text field. - if (isset($prop['alignment'])) { - switch ($prop['alignment']) { - case 'left': { - $opt['q'] = 0; - break; - } - case 'center': { - $opt['q'] = 1; - break; - } - case 'right': { - $opt['q'] = 2; - break; - } - default: { - $opt['q'] = ($this->rtl)?2:0; - break; - } - } - } - // lineWidth: Specifies the thickness of the border when stroking the perimeter of a field's rectangle. - if (isset($prop['lineWidth'])) { - $linewidth = intval($prop['lineWidth']); - } else { - $linewidth = 1; - } - // borderStyle: The border style for a field. - if (isset($prop['borderStyle'])) { - switch ($prop['borderStyle']) { - case 'border.d': - case 'dashed': { - $opt['border'] = array(0, 0, $linewidth, array(3, 2)); - $opt['bs'] = array('w'=>$linewidth, 's'=>'D', 'd'=>array(3, 2)); - break; - } - case 'border.b': - case 'beveled': { - $opt['border'] = array(0, 0, $linewidth); - $opt['bs'] = array('w'=>$linewidth, 's'=>'B'); - break; - } - case 'border.i': - case 'inset': { - $opt['border'] = array(0, 0, $linewidth); - $opt['bs'] = array('w'=>$linewidth, 's'=>'I'); - break; - } - case 'border.u': - case 'underline': { - $opt['border'] = array(0, 0, $linewidth); - $opt['bs'] = array('w'=>$linewidth, 's'=>'U'); - break; - } - case 'border.s': - case 'solid': { - $opt['border'] = array(0, 0, $linewidth); - $opt['bs'] = array('w'=>$linewidth, 's'=>'S'); - break; - } - default: { - break; - } - } - } - if (isset($prop['border']) AND is_array($prop['border'])) { - $opt['border'] = $prop['border']; - } - if (!isset($opt['mk'])) { - $opt['mk'] = array(); - } - if (!isset($opt['mk']['if'])) { - $opt['mk']['if'] = array(); - } - $opt['mk']['if']['a'] = array(0.5, 0.5); - // buttonAlignX: Controls how space is distributed from the left of the button face with respect to the icon. - if (isset($prop['buttonAlignX'])) { - $opt['mk']['if']['a'][0] = $prop['buttonAlignX']; - } - // buttonAlignY: Controls how unused space is distributed from the bottom of the button face with respect to the icon. - if (isset($prop['buttonAlignY'])) { - $opt['mk']['if']['a'][1] = $prop['buttonAlignY']; - } - // buttonFitBounds: If true, the extent to which the icon may be scaled is set to the bounds of the button field. - if (isset($prop['buttonFitBounds']) AND ($prop['buttonFitBounds'] == 'true')) { - $opt['mk']['if']['fb'] = true; - } - // buttonScaleHow: Controls how the icon is scaled (if necessary) to fit inside the button face. - if (isset($prop['buttonScaleHow'])) { - switch ($prop['buttonScaleHow']) { - case 'scaleHow.proportional': { - $opt['mk']['if']['s'] = 'P'; - break; - } - case 'scaleHow.anamorphic': { - $opt['mk']['if']['s'] = 'A'; - break; - } - } - } - // buttonScaleWhen: Controls when an icon is scaled to fit inside the button face. - if (isset($prop['buttonScaleWhen'])) { - switch ($prop['buttonScaleWhen']) { - case 'scaleWhen.always': { - $opt['mk']['if']['sw'] = 'A'; - break; - } - case 'scaleWhen.never': { - $opt['mk']['if']['sw'] = 'N'; - break; - } - case 'scaleWhen.tooBig': { - $opt['mk']['if']['sw'] = 'B'; - break; - } - case 'scaleWhen.tooSmall': { - $opt['mk']['if']['sw'] = 'S'; - break; - } - } - } - // buttonPosition: Controls how the text and the icon of the button are positioned with respect to each other within the button face. - if (isset($prop['buttonPosition'])) { - switch ($prop['buttonPosition']) { - case 0: - case 'position.textOnly': { - $opt['mk']['tp'] = 0; - break; - } - case 1: - case 'position.iconOnly': { - $opt['mk']['tp'] = 1; - break; - } - case 2: - case 'position.iconTextV': { - $opt['mk']['tp'] = 2; - break; - } - case 3: - case 'position.textIconV': { - $opt['mk']['tp'] = 3; - break; - } - case 4: - case 'position.iconTextH': { - $opt['mk']['tp'] = 4; - break; - } - case 5: - case 'position.textIconH': { - $opt['mk']['tp'] = 5; - break; - } - case 6: - case 'position.overlay': { - $opt['mk']['tp'] = 6; - break; - } - } - } - // fillColor: Specifies the background color for a field. - if (isset($prop['fillColor'])) { - if (is_array($prop['fillColor'])) { - $opt['mk']['bg'] = $prop['fillColor']; - } else { - $opt['mk']['bg'] = $this->convertHTMLColorToDec($prop['fillColor']); - } - } - // strokeColor: Specifies the stroke color for a field that is used to stroke the rectangle of the field with a line as large as the line width. - if (isset($prop['strokeColor'])) { - if (is_array($prop['strokeColor'])) { - $opt['mk']['bc'] = $prop['strokeColor']; - } else { - $opt['mk']['bc'] = $this->convertHTMLColorToDec($prop['strokeColor']); - } - } - // rotation: The rotation of a widget in counterclockwise increments. - if (isset($prop['rotation'])) { - $opt['mk']['r'] = $prop['rotation']; - } - // charLimit: Limits the number of characters that a user can type into a text field. - if (isset($prop['charLimit'])) { - $opt['maxlen'] = intval($prop['charLimit']); - } - if (!isset($ff)) { - $ff = 0; // default value - } - // readonly: The read-only characteristic of a field. If a field is read-only, the user can see the field but cannot change it. - if (isset($prop['readonly']) AND ($prop['readonly'] == 'true')) { - $ff += 1 << 0; - } - // required: Specifies whether a field requires a value. - if (isset($prop['required']) AND ($prop['required'] == 'true')) { - $ff += 1 << 1; - } - // multiline: Controls how text is wrapped within the field. - if (isset($prop['multiline']) AND ($prop['multiline'] == 'true')) { - $ff += 1 << 12; - } - // password: Specifies whether the field should display asterisks when data is entered in the field. - if (isset($prop['password']) AND ($prop['password'] == 'true')) { - $ff += 1 << 13; - } - // NoToggleToOff: If set, exactly one radio button shall be selected at all times; selecting the currently selected button has no effect. - if (isset($prop['NoToggleToOff']) AND ($prop['NoToggleToOff'] == 'true')) { - $ff += 1 << 14; - } - // Radio: If set, the field is a set of radio buttons. - if (isset($prop['Radio']) AND ($prop['Radio'] == 'true')) { - $ff += 1 << 15; - } - // Pushbutton: If set, the field is a pushbutton that does not retain a permanent value. - if (isset($prop['Pushbutton']) AND ($prop['Pushbutton'] == 'true')) { - $ff += 1 << 16; - } - // Combo: If set, the field is a combo box; if clear, the field is a list box. - if (isset($prop['Combo']) AND ($prop['Combo'] == 'true')) { - $ff += 1 << 17; - } - // editable: Controls whether a combo box is editable. - if (isset($prop['editable']) AND ($prop['editable'] == 'true')) { - $ff += 1 << 18; - } - // Sort: If set, the field's option items shall be sorted alphabetically. - if (isset($prop['Sort']) AND ($prop['Sort'] == 'true')) { - $ff += 1 << 19; - } - // fileSelect: If true, sets the file-select flag in the Options tab of the text field (Field is Used for File Selection). - if (isset($prop['fileSelect']) AND ($prop['fileSelect'] == 'true')) { - $ff += 1 << 20; - } - // multipleSelection: If true, indicates that a list box allows a multiple selection of items. - if (isset($prop['multipleSelection']) AND ($prop['multipleSelection'] == 'true')) { - $ff += 1 << 21; - } - // doNotSpellCheck: If true, spell checking is not performed on this editable text field. - if (isset($prop['doNotSpellCheck']) AND ($prop['doNotSpellCheck'] == 'true')) { - $ff += 1 << 22; - } - // doNotScroll: If true, the text field does not scroll and the user, therefore, is limited by the rectangular region designed for the field. - if (isset($prop['doNotScroll']) AND ($prop['doNotScroll'] == 'true')) { - $ff += 1 << 23; - } - // comb: If set to true, the field background is drawn as series of boxes (one for each character in the value of the field) and each character of the content is drawn within those boxes. The number of boxes drawn is determined from the charLimit property. It applies only to text fields. The setter will also raise if any of the following field properties are also set multiline, password, and fileSelect. A side-effect of setting this property is that the doNotScroll property is also set. - if (isset($prop['comb']) AND ($prop['comb'] == 'true')) { - $ff += 1 << 24; - } - // radiosInUnison: If false, even if a group of radio buttons have the same name and export value, they behave in a mutually exclusive fashion, like HTML radio buttons. - if (isset($prop['radiosInUnison']) AND ($prop['radiosInUnison'] == 'true')) { - $ff += 1 << 25; - } - // richText: If true, the field allows rich text formatting. - if (isset($prop['richText']) AND ($prop['richText'] == 'true')) { - $ff += 1 << 25; - } - // commitOnSelChange: Controls whether a field value is committed after a selection change. - if (isset($prop['commitOnSelChange']) AND ($prop['commitOnSelChange'] == 'true')) { - $ff += 1 << 26; - } - $opt['ff'] = $ff; - // defaultValue: The default value of a field - that is, the value that the field is set to when the form is reset. - if (isset($prop['defaultValue'])) { - $opt['dv'] = $prop['defaultValue']; - } - $f = 4; // default value for annotation flags - // readonly: The read-only characteristic of a field. If a field is read-only, the user can see the field but cannot change it. - if (isset($prop['readonly']) AND ($prop['readonly'] == 'true')) { - $f += 1 << 6; - } - // display: Controls whether the field is hidden or visible on screen and in print. - if (isset($prop['display'])) { - if ($prop['display'] == 'display.visible') { - // - } elseif ($prop['display'] == 'display.hidden') { - $f += 1 << 1; - } elseif ($prop['display'] == 'display.noPrint') { - $f -= 1 << 2; - } elseif ($prop['display'] == 'display.noView') { - $f += 1 << 5; - } - } - $opt['f'] = $f; - // currentValueIndices: Reads and writes single or multiple values of a list box or combo box. - if (isset($prop['currentValueIndices']) AND is_array($prop['currentValueIndices'])) { - $opt['i'] = $prop['currentValueIndices']; - } - // value: The value of the field data that the user has entered. - if (isset($prop['value'])) { - if (is_array($prop['value'])) { - $opt['opt'] = array(); - foreach ($prop['value'] AS $key => $optval) { - // exportValues: An array of strings representing the export values for the field. - if (isset($prop['exportValues'][$key])) { - $opt['opt'][$key] = array($prop['exportValues'][$key], $prop['value'][$key]); - } else { - $opt['opt'][$key] = $prop['value'][$key]; - } - } - } else { - $opt['v'] = $prop['value']; - } - } - // richValue: This property specifies the text contents and formatting of a rich text field. - if (isset($prop['richValue'])) { - $opt['rv'] = $prop['richValue']; - } - // submitName: If nonempty, used during form submission instead of name. Only applicable if submitting in HTML format (that is, URL-encoded). - if (isset($prop['submitName'])) { - $opt['tm'] = $prop['submitName']; - } - // name: Fully qualified field name. - if (isset($prop['name'])) { - $opt['t'] = $prop['name']; - } - // userName: The user name (short description string) of the field. - if (isset($prop['userName'])) { - $opt['tu'] = $prop['userName']; - } - // highlight: Defines how a button reacts when a user clicks it. - if (isset($prop['highlight'])) { - switch ($prop['highlight']) { - case 'none': - case 'highlight.n': { - $opt['h'] = 'N'; - break; - } - case 'invert': - case 'highlight.i': { - $opt['h'] = 'i'; - break; - } - case 'push': - case 'highlight.p': { - $opt['h'] = 'P'; - break; - } - case 'outline': - case 'highlight.o': { - $opt['h'] = 'O'; - break; - } - } - } - // Unsupported options: - // - calcOrderIndex: Changes the calculation order of fields in the document. - // - delay: Delays the redrawing of a field's appearance. - // - defaultStyle: This property defines the default style attributes for the form field. - // - style: Allows the user to set the glyph style of a check box or radio button. - // - textColor, textFont, textSize - return $opt; - } + /** * Set default properties for form fields. @@ -17681,7 +12620,7 @@ class TCPDF { // get default style $prop = array_merge($this->getFormDefaultProp(), $prop); // get annotation data - $popt = $this->getAnnotOptFromJSProp($prop); + $popt = TCPDF_STATIC::getAnnotOptFromJSProp($prop, $this->spot_colors, $this->rtl); // set default appearance stream $this->annotation_fonts[$this->CurrentFont['fontkey']] = $this->CurrentFont['i']; $fontstyle = sprintf('/F%d %F Tf %s', $this->CurrentFont['i'], $this->FontSizePt, $this->TextColor); @@ -17799,7 +12738,7 @@ class TCPDF { $this->_addfield('radiobutton', $name, $x, $y, $w, $w, $prop); return; } - if ($this->empty_string($onvalue)) { + if (TCPDF_STATIC::empty_string($onvalue)) { $onvalue = 'On'; } if ($checked) { @@ -17834,7 +12773,7 @@ class TCPDF { $prop['Radio'] = 'true'; $prop['borderStyle'] = 'inset'; // get annotation data - $popt = $this->getAnnotOptFromJSProp($prop); + $popt = TCPDF_STATIC::getAnnotOptFromJSProp($prop, $this->spot_colors, $this->rtl); // set additional default options $this->annotation_fonts[$tmpfont['fontkey']] = $tmpfont['i']; $fontstyle = sprintf('/F%d %F Tf %s', $tmpfont['i'], $this->FontSizePt, $this->TextColor); @@ -17914,7 +12853,7 @@ class TCPDF { // get default style $prop = array_merge($this->getFormDefaultProp(), $prop); // get annotation data - $popt = $this->getAnnotOptFromJSProp($prop); + $popt = TCPDF_STATIC::getAnnotOptFromJSProp($prop, $this->spot_colors, $this->rtl); // set additional default values $this->annotation_fonts[$this->CurrentFont['fontkey']] = $this->CurrentFont['i']; $fontstyle = sprintf('/F%d %F Tf %s', $this->CurrentFont['i'], $this->FontSizePt, $this->TextColor); @@ -18001,7 +12940,7 @@ class TCPDF { $prop = array_merge($this->getFormDefaultProp(), $prop); $prop['Combo'] = true; // get annotation data - $popt = $this->getAnnotOptFromJSProp($prop); + $popt = TCPDF_STATIC::getAnnotOptFromJSProp($prop, $this->spot_colors, $this->rtl); // set additional default options $this->annotation_fonts[$this->CurrentFont['fontkey']] = $this->CurrentFont['i']; $fontstyle = sprintf('/F%d %F Tf %s', $this->CurrentFont['i'], $this->FontSizePt, $this->TextColor); @@ -18082,7 +13021,7 @@ class TCPDF { $prop = array_merge($this->getFormDefaultProp(), $prop); $prop['borderStyle'] = 'inset'; // get annotation data - $popt = $this->getAnnotOptFromJSProp($prop); + $popt = TCPDF_STATIC::getAnnotOptFromJSProp($prop, $this->spot_colors, $this->rtl); // set additional default options $font = 'zapfdingbats'; if ($this->pdfa_mode) { @@ -18107,7 +13046,7 @@ class TCPDF { $opt['Subtype'] = 'Widget'; $opt['ft'] = 'Btn'; $opt['t'] = $name; - if ($this->empty_string($onvalue)) { + if (TCPDF_STATIC::empty_string($onvalue)) { $onvalue = 'Yes'; } $opt['opt'] = array($onvalue); @@ -18165,7 +13104,7 @@ class TCPDF { $prop['highlight'] = 'push'; $prop['display'] = 'display.noPrint'; // get annotation data - $popt = $this->getAnnotOptFromJSProp($prop); + $popt = TCPDF_STATIC::getAnnotOptFromJSProp($prop, $this->spot_colors, $this->rtl); $this->annotation_fonts[$this->CurrentFont['fontkey']] = $this->CurrentFont['i']; $fontstyle = sprintf('/F%d %F Tf %s', $this->CurrentFont['i'], $this->FontSizePt, $this->TextColor); $popt['da'] = $fontstyle; @@ -18318,7 +13257,7 @@ class TCPDF { $out .= '<< /Type /Sig'; $out .= ' /Filter /Adobe.PPKLite'; $out .= ' /SubFilter /adbe.pkcs7.detached'; - $out .= ' '.$this->byterange_string; + $out .= ' '.TCPDF_STATIC::$byterange_string; $out .= ' /Contents<'.str_repeat('0', $this->signature_max_length).'>'; $out .= ' /Reference ['; // array of signature reference dictionaries $out .= ' << /Type /SigRef'; @@ -18333,22 +13272,22 @@ class TCPDF { $out .= ' /TransformParams <<'; $out .= ' /Type /TransformParams'; $out .= ' /V /2.2'; - if (!$this->empty_string($this->ur['document'])) { + if (!TCPDF_STATIC::empty_string($this->ur['document'])) { $out .= ' /Document['.$this->ur['document'].']'; } - if (!$this->empty_string($this->ur['form'])) { + if (!TCPDF_STATIC::empty_string($this->ur['form'])) { $out .= ' /Form['.$this->ur['form'].']'; } - if (!$this->empty_string($this->ur['signature'])) { + if (!TCPDF_STATIC::empty_string($this->ur['signature'])) { $out .= ' /Signature['.$this->ur['signature'].']'; } - if (!$this->empty_string($this->ur['annots'])) { + if (!TCPDF_STATIC::empty_string($this->ur['annots'])) { $out .= ' /Annots['.$this->ur['annots'].']'; } - if (!$this->empty_string($this->ur['ef'])) { + if (!TCPDF_STATIC::empty_string($this->ur['ef'])) { $out .= ' /EF['.$this->ur['ef'].']'; } - if (!$this->empty_string($this->ur['formex'])) { + if (!TCPDF_STATIC::empty_string($this->ur['formex'])) { $out .= ' /FormEX['.$this->ur['formex'].']'; } } @@ -18360,16 +13299,16 @@ class TCPDF { //$out .= ' /DigestValue<********************************>'; $out .= ' >>'; $out .= ' ]'; // end of reference - if (isset($this->signature_data['info']['Name']) AND !$this->empty_string($this->signature_data['info']['Name'])) { + if (isset($this->signature_data['info']['Name']) AND !TCPDF_STATIC::empty_string($this->signature_data['info']['Name'])) { $out .= ' /Name '.$this->_textstring($this->signature_data['info']['Name'], $sigobjid); } - if (isset($this->signature_data['info']['Location']) AND !$this->empty_string($this->signature_data['info']['Location'])) { + if (isset($this->signature_data['info']['Location']) AND !TCPDF_STATIC::empty_string($this->signature_data['info']['Location'])) { $out .= ' /Location '.$this->_textstring($this->signature_data['info']['Location'], $sigobjid); } - if (isset($this->signature_data['info']['Reason']) AND !$this->empty_string($this->signature_data['info']['Reason'])) { + if (isset($this->signature_data['info']['Reason']) AND !TCPDF_STATIC::empty_string($this->signature_data['info']['Reason'])) { $out .= ' /Reason '.$this->_textstring($this->signature_data['info']['Reason'], $sigobjid); } - if (isset($this->signature_data['info']['ContactInfo']) AND !$this->empty_string($this->signature_data['info']['ContactInfo'])) { + if (isset($this->signature_data['info']['ContactInfo']) AND !TCPDF_STATIC::empty_string($this->signature_data['info']['ContactInfo'])) { $out .= ' /ContactInfo '.$this->_textstring($this->signature_data['info']['ContactInfo'], $sigobjid); } $out .= ' /M '.$this->_datestring($sigobjid, $this->doc_modification_timestamp); @@ -18442,8 +13381,7 @@ class TCPDF { ++$this->n; // signature object ($this->sig_obj_id + 1) $this->signature_data = array(); if (strlen($signing_cert) == 0) { - $signing_cert = 'file://'.dirname(__FILE__).'/tcpdf.crt'; - $private_key_password = 'tcpdfdemo'; + $this->Error('Please provide a certificate file and password!'); } if (strlen($private_key) == 0) { $private_key = $signing_cert; @@ -18463,12 +13401,13 @@ class TCPDF { * @param $w (float) Width of the signature area. * @param $h (float) Height of the signature area. * @param $page (int) option page number (if < 0 the current page is used). + * @param $name (string) Name of the signature. * @public * @author Nicola Asuni * @since 5.3.011 (2010-06-17) */ - public function setSignatureAppearance($x=0, $y=0, $w=0, $h=0, $page=-1) { - $this->signature_appearance = $this->getSignatureAppearanceArray($x, $y, $w, $h, $page); + public function setSignatureAppearance($x=0, $y=0, $w=0, $h=0, $page=-1, $name='') { + $this->signature_appearance = $this->getSignatureAppearanceArray($x, $y, $w, $h, $page, $name); } /** @@ -18478,13 +13417,14 @@ class TCPDF { * @param $w (float) Width of the signature area. * @param $h (float) Height of the signature area. * @param $page (int) option page number (if < 0 the current page is used). + * @param $name (string) Name of the signature. * @public * @author Nicola Asuni * @since 5.9.101 (2011-07-06) */ - public function addEmptySignatureAppearance($x=0, $y=0, $w=0, $h=0, $page=-1) { + public function addEmptySignatureAppearance($x=0, $y=0, $w=0, $h=0, $page=-1, $name='') { ++$this->n; - $this->empty_signature_appearance[] = array('objid' => $this->n) + $this->getSignatureAppearanceArray($x, $y, $w, $h, $page); + $this->empty_signature_appearance[] = array('objid' => $this->n) + $this->getSignatureAppearanceArray($x, $y, $w, $h, $page, $name); } /** @@ -18494,18 +13434,24 @@ class TCPDF { * @param $w (float) Width of the signature area. * @param $h (float) Height of the signature area. * @param $page (int) option page number (if < 0 the current page is used). + * @param $name (string) Name of the signature. * @return (array) Array defining page and rectangle coordinates of signature appearance. * @protected * @author Nicola Asuni * @since 5.9.101 (2011-07-06) */ - protected function getSignatureAppearanceArray($x=0, $y=0, $w=0, $h=0, $page=-1) { + protected function getSignatureAppearanceArray($x=0, $y=0, $w=0, $h=0, $page=-1, $name='') { $sigapp = array(); if (($page < 1) OR ($page > $this->numpages)) { $sigapp['page'] = $this->page; } else { $sigapp['page'] = intval($page); } + if (empty($name)) { + $sigapp['name'] = 'Signature'; + } else { + $sigapp['name'] = $name; + } $a = $x * $this->k; $b = $this->pagedim[($sigapp['page'])]['h'] - (($y + $h) * $this->k); $c = $w * $this->k; @@ -18528,24 +13474,6 @@ class TCPDF { $this->newpagegroup[$page] = sizeof($this->newpagegroup) + 1; } - /** - * This method is DEPRECATED and doesn't have any effect. - * Please remove any reference to this method. - * @param $s (string) Empty parameter. - * @deprecated deprecated since version 5.9.089 (2011-06-13) - * @public - */ - public function AliasNbPages($s='') {} - - /** - * This method is DEPRECATED and doesn't have any effect. - * Please remove any reference to this method. - * @param $s (string) Empty parameter. - * @deprecated deprecated since version 5.9.089 (2011-06-13) - * @public - */ - public function AliasNumPage($s='') {} - /** * Set the starting page number. * @param $num (int) Starting page number. @@ -18565,11 +13493,16 @@ class TCPDF { */ public function getAliasRightShift() { // calculate aproximatively the ratio between widths of aliases and replacements. - $ref = '{'.$this->alias_right_shift.'}{'.$this->alias_tot_pages.'}{'.$this->alias_num_page.'}'; + $ref = '{'.TCPDF_STATIC::$alias_right_shift.'}{'.TCPDF_STATIC::$alias_tot_pages.'}{'.TCPDF_STATIC::$alias_num_page.'}'; $rep = str_repeat(' ', $this->GetNumChars($ref)); - $wdiff = max(1, ($this->GetStringWidth($ref) / $this->GetStringWidth($rep))); + $wrep = $this->GetStringWidth($rep); + if ($wrep > 0) { + $wdiff = max(1, ($this->GetStringWidth($ref) / $wrep)); + } else { + $wdiff = 1; + } $sdiff = sprintf('%F', $wdiff); - $alias = $this->alias_right_shift.$sdiff.'}'; + $alias = TCPDF_STATIC::$alias_right_shift.$sdiff.'}'; if ($this->isUnicodeFont()) { $alias = '{'.$alias; } @@ -18586,9 +13519,9 @@ class TCPDF { */ public function getAliasNbPages() { if ($this->isUnicodeFont()) { - return '{'.$this->alias_tot_pages.'}'; + return '{'.TCPDF_STATIC::$alias_tot_pages.'}'; } - return $this->alias_tot_pages; + return TCPDF_STATIC::$alias_tot_pages; } /** @@ -18601,9 +13534,9 @@ class TCPDF { */ public function getAliasNumPage() { if ($this->isUnicodeFont()) { - return '{'.$this->alias_num_page.'}'; + return '{'.TCPDF_STATIC::$alias_num_page.'}'; } - return $this->alias_num_page; + return TCPDF_STATIC::$alias_num_page; } /** @@ -18616,9 +13549,9 @@ class TCPDF { */ public function getPageGroupAlias() { if ($this->isUnicodeFont()) { - return '{'.$this->alias_group_tot_pages.'}'; + return '{'.TCPDF_STATIC::$alias_group_tot_pages.'}'; } - return $this->alias_group_tot_pages; + return TCPDF_STATIC::$alias_group_tot_pages; } /** @@ -18631,9 +13564,9 @@ class TCPDF { */ public function getPageNumGroupAlias() { if ($this->isUnicodeFont()) { - return '{'.$this->alias_group_num_page.'}'; + return '{'.TCPDF_STATIC::$alias_group_num_page.'}'; } - return $this->alias_group_num_page; + return TCPDF_STATIC::$alias_group_num_page; } /** @@ -18653,30 +13586,7 @@ class TCPDF { * @see PaneNo(), formatPageNumber() */ public function getGroupPageNoFormatted() { - return $this->formatPageNumber($this->getGroupPageNo()); - } - - /** - * Format the page numbers. - * This method can be overriden for custom formats. - * @param $num (int) page number - * @protected - * @since 4.2.005 (2008-11-06) - */ - protected function formatPageNumber($num) { - return number_format((float)$num, 0, '', '.'); - } - - /** - * Format the page numbers on the Table Of Content. - * This method can be overriden for custom formats. - * @param $num (int) page number - * @protected - * @since 4.5.001 (2009-01-04) - * @see addTOC(), addHTMLTOC() - */ - protected function formatTOCPageNumber($num) { - return number_format((float)$num, 0, '', '.'); + return TCPDF_STATIC::formatPageNumber($this->getGroupPageNo()); } /** @@ -18686,7 +13596,7 @@ class TCPDF { * @see PaneNo(), formatPageNumber() */ public function PageNoFormatted() { - return $this->formatPageNumber($this->PageNo()); + return TCPDF_STATIC::formatPageNumber($this->PageNo()); } /** @@ -18869,7 +13779,7 @@ class TCPDF { return; } $stroking = $stroking ? true : false; - if ($this->empty_string($nonstroking)) { + if (TCPDF_STATIC::empty_string($nonstroking)) { // default value if not set $nonstroking = $stroking; } else { @@ -18909,7 +13819,7 @@ class TCPDF { return; } $stroking = floatval($stroking); - if ($this->empty_string($nonstroking)) { + if (TCPDF_STATIC::empty_string($nonstroking)) { // default value if not set $nonstroking = $stroking; } else { @@ -19025,6 +13935,9 @@ class TCPDF { public function colorRegistrationBar($x, $y, $w, $h, $transition=true, $vertical=false, $colors='A,R,G,B,C,M,Y,K') { $bars = explode(',', $colors); $numbars = count($bars); // number of bars to print + if ($numbars <= 0) { + return; + } // set bar measures if ($vertical) { $coords = array(0, 0, 0, 1); @@ -19707,7 +14620,7 @@ class TCPDF { if ($this->rtl) { $xc = ($this->w - $xc); } - $op = $this->getPathPaintOperator($style); + $op = TCPDF_STATIC::getPathPaintOperator($style); if ($op == 'f') { $line_style = array(); } @@ -19764,9 +14677,9 @@ class TCPDF { if ($file{0} === '@') { // image from string $data = substr($file, 1); } else { // EPS/AI file - $data = file_get_contents($file); + $data = TCPDF_STATIC::fileGetContents($file); } - if ($data === false) { + if ($data === FALSE) { $this->Error('EPS file not found: '.$file); } $regs = array(); @@ -20080,7 +14993,7 @@ class TCPDF { /** * Print a Linear Barcode. * @param $code (string) code to print - * @param $type (string) type of barcode (see barcodes.php for supported formats). + * @param $type (string) type of barcode (see tcpdf_barcodes_1d.php for supported formats). * @param $x (int) x position in user units (empty string = current x position) * @param $y (int) y position in user units (empty string = current y position) * @param $w (int) width in user units (empty string = remaining page width) @@ -20108,18 +15021,21 @@ class TCPDF { * @public */ public function write1DBarcode($code, $type, $x='', $y='', $w='', $h='', $xres='', $style='', $align='') { - if ($this->empty_string(trim($code))) { + if (TCPDF_STATIC::empty_string(trim($code))) { return; } - require_once(dirname(__FILE__).'/barcodes.php'); + require_once(dirname(__FILE__).'/tcpdf_barcodes_1d.php'); // save current graphic settings $gvars = $this->getGraphicVars(); // create new barcode object $barcodeobj = new TCPDFBarcode($code, $type); $arrcode = $barcodeobj->getBarcodeArray(); - if (($arrcode === false) OR empty($arrcode) OR ($arrcode['maxw'] == 0)) { + if (($arrcode === false) OR empty($arrcode) OR ($arrcode['maxw'] <= 0)) { $this->Error('Error in 1D barcode string'); } + if ($arrcode['maxh'] <= 0) { + $arrcode['maxh'] = 1; + } // set default values if (!isset($style['position'])) { $style['position'] = ''; @@ -20212,7 +15128,7 @@ class TCPDF { if ($style['stretch']) { $xres = $max_xres; } else { - if ($this->empty_string($xres)) { + if (TCPDF_STATIC::empty_string($xres)) { $xres = (0.141 * $this->k); // default bar width = 0.4 mm } if ($xres > $max_xres) { @@ -20349,7 +15265,7 @@ class TCPDF { } // print text if ($style['text']) { - if (isset($style['label']) AND !$this->empty_string($style['label'])) { + if (isset($style['label']) AND !TCPDF_STATIC::empty_string($style['label'])) { $label = $style['label']; } else { $label = $code; @@ -20398,65 +15314,10 @@ class TCPDF { $this->endlinex = $this->img_rb_x; } - /** - * This function is DEPRECATED, please use the new write1DBarcode() function. - * @param $x (int) x position in user units - * @param $y (int) y position in user units - * @param $w (int) width in user units - * @param $h (int) height position in user units - * @param $type (string) type of barcode - * @param $style (string) barcode style - * @param $font (string) font for text - * @param $xres (int) x resolution - * @param $code (string) code to print - * @deprecated deprecated since version 3.1.000 (2008-06-10) - * @public - * @see write1DBarcode() - */ - public function writeBarcode($x, $y, $w, $h, $type, $style, $font, $xres, $code) { - // convert old settings for the new write1DBarcode() function. - $xres = 1 / $xres; - $newstyle = array( - 'position' => '', - 'align' => '', - 'stretch' => false, - 'fitwidth' => false, - 'cellfitalign' => '', - 'border' => false, - 'padding' => 0, - 'fgcolor' => array(0,0,0), - 'bgcolor' => false, - 'text' => true, - 'font' => $font, - 'fontsize' => 8, - 'stretchtext' => 4 - ); - if ($style & 1) { - $newstyle['border'] = true; - } - if ($style & 2) { - $newstyle['bgcolor'] = false; - } - if ($style & 4) { - $newstyle['position'] = 'C'; - } elseif ($style & 8) { - $newstyle['position'] = 'L'; - } elseif ($style & 16) { - $newstyle['position'] = 'R'; - } - if ($style & 128) { - $newstyle['text'] = true; - } - if ($style & 256) { - $newstyle['stretchtext'] = 4; - } - $this->write1DBarcode($code, $type, $x, $y, $w, $h, $xres, $newstyle, ''); - } - /** * Print 2D Barcode. * @param $code (string) code to print - * @param $type (string) type of barcode (see 2dbarcodes.php for supported formats). + * @param $type (string) type of barcode (see tcpdf_barcodes_2d.php for supported formats). * @param $x (int) x position in user units * @param $y (int) y position in user units * @param $w (int) width in user units @@ -20479,10 +15340,10 @@ class TCPDF { * @public */ public function write2DBarcode($code, $type, $x='', $y='', $w='', $h='', $style='', $align='', $distort=false) { - if ($this->empty_string(trim($code))) { + if (TCPDF_STATIC::empty_string(trim($code))) { return; } - require_once(dirname(__FILE__).'/2dbarcodes.php'); + require_once(dirname(__FILE__).'/tcpdf_barcodes_2d.php'); // save current graphic settings $gvars = $this->getGraphicVars(); // create new barcode object @@ -20540,10 +15401,13 @@ class TCPDF { // number of barcode columns and rows $rows = $arrcode['num_rows']; $cols = $arrcode['num_cols']; + if (($rows <= 0) || ($cols <= 0)){ + $this->Error('Error in 2D barcode string'); + } // module width and height $mw = $style['module_width']; $mh = $style['module_height']; - if (($mw == 0) OR ($mh == 0)) { + if (($mw <= 0) OR ($mh <= 0)) { $this->Error('Error in 2D barcode string'); } // get max dimensions @@ -20792,389 +15656,7 @@ class TCPDF { * @see setHtmlVSpace() */ public function fixHTMLCode($html, $default_css='', $tagvs='', $tidy_options='') { - // configure parameters for HTML Tidy - if ($tidy_options === '') { - $tidy_options = array ( - 'clean' => 1, - 'drop-empty-paras' => 0, - 'drop-proprietary-attributes' => 1, - 'fix-backslash' => 1, - 'hide-comments' => 1, - 'join-styles' => 1, - 'lower-literals' => 1, - 'merge-divs' => 1, - 'merge-spans' => 1, - 'output-xhtml' => 1, - 'word-2000' => 1, - 'wrap' => 0, - 'output-bom' => 0, - //'char-encoding' => 'utf8', - //'input-encoding' => 'utf8', - //'output-encoding' => 'utf8' - ); - } - // clean up the HTML code - $tidy = tidy_parse_string($html, $tidy_options); - // fix the HTML - $tidy->cleanRepair(); - // get the CSS part - $tidy_head = tidy_get_head($tidy); - $css = $tidy_head->value; - $css = preg_replace('/]+)>/ims', ''; - // get the body part - $tidy_body = tidy_get_body($tidy); - $html = $tidy_body->value; - // fix some self-closing tags - $html = str_replace('
                    ', '
                    ', $html); - // remove some empty tag blocks - $html = preg_replace('/]*)><\/div>/', '', $html); - $html = preg_replace('/]*)><\/p>/', '', $html); - if ($tagvs !== '') { - // set vertical space for some XHTML tags - $this->setHtmlVSpace($tagvs); - } - // return the cleaned XHTML code + CSS - return $css.$html; - } - - /** - * Extracts the CSS properties from a CSS string. - * @param $cssdata (string) string containing CSS definitions. - * @return An array where the keys are the CSS selectors and the values are the CSS properties. - * @author Nicola Asuni - * @since 5.1.000 (2010-05-25) - * @protected - */ - protected function extractCSSproperties($cssdata) { - if (empty($cssdata)) { - return array(); - } - // remove comments - $cssdata = preg_replace('/\/\*[^\*]*\*\//', '', $cssdata); - // remove newlines and multiple spaces - $cssdata = preg_replace('/[\s]+/', ' ', $cssdata); - // remove some spaces - $cssdata = preg_replace('/[\s]*([;:\{\}]{1})[\s]*/', '\\1', $cssdata); - // remove empty blocks - $cssdata = preg_replace('/([^\}\{]+)\{\}/', '', $cssdata); - // replace media type parenthesis - $cssdata = preg_replace('/@media[\s]+([^\{]*)\{/i', '@media \\1§', $cssdata); - $cssdata = preg_replace('/\}\}/si', '}§', $cssdata); - // trim string - $cssdata = trim($cssdata); - // find media blocks (all, braille, embossed, handheld, print, projection, screen, speech, tty, tv) - $cssblocks = array(); - $matches = array(); - if (preg_match_all('/@media[\s]+([^\§]*)§([^§]*)§/i', $cssdata, $matches) > 0) { - foreach ($matches[1] as $key => $type) { - $cssblocks[$type] = $matches[2][$key]; - } - // remove media blocks - $cssdata = preg_replace('/@media[\s]+([^\§]*)§([^§]*)§/i', '', $cssdata); - } - // keep 'all' and 'print' media, other media types are discarded - if (isset($cssblocks['all']) AND !empty($cssblocks['all'])) { - $cssdata .= $cssblocks['all']; - } - if (isset($cssblocks['print']) AND !empty($cssblocks['print'])) { - $cssdata .= $cssblocks['print']; - } - // reset css blocks array - $cssblocks = array(); - $matches = array(); - // explode css data string into array - if (substr($cssdata, -1) == '}') { - // remove last parethesis - $cssdata = substr($cssdata, 0, -1); - } - $matches = explode('}', $cssdata); - foreach ($matches as $key => $block) { - // index 0 contains the CSS selector, index 1 contains CSS properties - $cssblocks[$key] = explode('{', $block); - if (!isset($cssblocks[$key][1])) { - // remove empty definitions - unset($cssblocks[$key]); - } - } - // split groups of selectors (comma-separated list of selectors) - foreach ($cssblocks as $key => $block) { - if (strpos($block[0], ',') > 0) { - $selectors = explode(',', $block[0]); - foreach ($selectors as $sel) { - $cssblocks[] = array(0 => trim($sel), 1 => $block[1]); - } - unset($cssblocks[$key]); - } - } - // covert array to selector => properties - $cssdata = array(); - foreach ($cssblocks as $block) { - $selector = $block[0]; - // calculate selector's specificity - $matches = array(); - $a = 0; // the declaration is not from is a 'style' attribute - $b = intval(preg_match_all('/[\#]/', $selector, $matches)); // number of ID attributes - $c = intval(preg_match_all('/[\[\.]/', $selector, $matches)); // number of other attributes - $c += intval(preg_match_all('/[\:]link|visited|hover|active|focus|target|lang|enabled|disabled|checked|indeterminate|root|nth|first|last|only|empty|contains|not/i', $selector, $matches)); // number of pseudo-classes - $d = intval(preg_match_all('/[\>\+\~\s]{1}[a-zA-Z0-9]+/', ' '.$selector, $matches)); // number of element names - $d += intval(preg_match_all('/[\:][\:]/', $selector, $matches)); // number of pseudo-elements - $specificity = $a.$b.$c.$d; - // add specificity to the beginning of the selector - $cssdata[$specificity.' '.$selector] = $block[1]; - } - // sort selectors alphabetically to account for specificity - ksort($cssdata, SORT_STRING); - // return array - return $cssdata; - } - - /** - * Returns true if the CSS selector is valid for the selected HTML tag - * @param $dom (array) array of HTML tags and properties - * @param $key (int) key of the current HTML tag - * @param $selector (string) CSS selector string - * @return true if the selector is valid, false otherwise - * @protected - * @since 5.1.000 (2010-05-25) - */ - protected function isValidCSSSelectorForTag($dom, $key, $selector) { - $valid = false; // value to be returned - $tag = $dom[$key]['value']; - $class = array(); - if (isset($dom[$key]['attribute']['class']) AND !empty($dom[$key]['attribute']['class'])) { - $class = explode(' ', strtolower($dom[$key]['attribute']['class'])); - } - $id = ''; - if (isset($dom[$key]['attribute']['id']) AND !empty($dom[$key]['attribute']['id'])) { - $id = strtolower($dom[$key]['attribute']['id']); - } - $selector = preg_replace('/([\>\+\~\s]{1})([\.]{1})([^\>\+\~\s]*)/si', '\\1*.\\3', $selector); - $matches = array(); - if (preg_match_all('/([\>\+\~\s]{1})([a-zA-Z0-9\*]+)([^\>\+\~\s]*)/si', $selector, $matches, PREG_PATTERN_ORDER | PREG_OFFSET_CAPTURE) > 0) { - $parentop = array_pop($matches[1]); - $operator = $parentop[0]; - $offset = $parentop[1]; - $lasttag = array_pop($matches[2]); - $lasttag = strtolower(trim($lasttag[0])); - if (($lasttag == '*') OR ($lasttag == $tag)) { - // the last element on selector is our tag or 'any tag' - $attrib = array_pop($matches[3]); - $attrib = strtolower(trim($attrib[0])); - if (!empty($attrib)) { - // check if matches class, id, attribute, pseudo-class or pseudo-element - switch ($attrib{0}) { - case '.': { // class - if (in_array(substr($attrib, 1), $class)) { - $valid = true; - } - break; - } - case '#': { // ID - if (substr($attrib, 1) == $id) { - $valid = true; - } - break; - } - case '[': { // attribute - $attrmatch = array(); - if (preg_match('/\[([a-zA-Z0-9]*)[\s]*([\~\^\$\*\|\=]*)[\s]*["]?([^"\]]*)["]?\]/i', $attrib, $attrmatch) > 0) { - $att = strtolower($attrmatch[1]); - $val = $attrmatch[3]; - if (isset($dom[$key]['attribute'][$att])) { - switch ($attrmatch[2]) { - case '=': { - if ($dom[$key]['attribute'][$att] == $val) { - $valid = true; - } - break; - } - case '~=': { - if (in_array($val, explode(' ', $dom[$key]['attribute'][$att]))) { - $valid = true; - } - break; - } - case '^=': { - if ($val == substr($dom[$key]['attribute'][$att], 0, strlen($val))) { - $valid = true; - } - break; - } - case '$=': { - if ($val == substr($dom[$key]['attribute'][$att], -strlen($val))) { - $valid = true; - } - break; - } - case '*=': { - if (strpos($dom[$key]['attribute'][$att], $val) !== false) { - $valid = true; - } - break; - } - case '|=': { - if ($dom[$key]['attribute'][$att] == $val) { - $valid = true; - } elseif (preg_match('/'.$val.'[\-]{1}/i', $dom[$key]['attribute'][$att]) > 0) { - $valid = true; - } - break; - } - default: { - $valid = true; - } - } - } - } - break; - } - case ':': { // pseudo-class or pseudo-element - if ($attrib{1} == ':') { // pseudo-element - // pseudo-elements are not supported! - // (::first-line, ::first-letter, ::before, ::after) - } else { // pseudo-class - // pseudo-classes are not supported! - // (:root, :nth-child(n), :nth-last-child(n), :nth-of-type(n), :nth-last-of-type(n), :first-child, :last-child, :first-of-type, :last-of-type, :only-child, :only-of-type, :empty, :link, :visited, :active, :hover, :focus, :target, :lang(fr), :enabled, :disabled, :checked) - } - break; - } - } // end of switch - } else { - $valid = true; - } - if ($valid AND ($offset > 0)) { - $valid = false; - // check remaining selector part - $selector = substr($selector, 0, $offset); - switch ($operator) { - case ' ': { // descendant of an element - while ($dom[$key]['parent'] > 0) { - if ($this->isValidCSSSelectorForTag($dom, $dom[$key]['parent'], $selector)) { - $valid = true; - break; - } else { - $key = $dom[$key]['parent']; - } - } - break; - } - case '>': { // child of an element - $valid = $this->isValidCSSSelectorForTag($dom, $dom[$key]['parent'], $selector); - break; - } - case '+': { // immediately preceded by an element - for ($i = ($key - 1); $i > $dom[$key]['parent']; --$i) { - if ($dom[$i]['tag'] AND $dom[$i]['opening']) { - $valid = $this->isValidCSSSelectorForTag($dom, $i, $selector); - break; - } - } - break; - } - case '~': { // preceded by an element - for ($i = ($key - 1); $i > $dom[$key]['parent']; --$i) { - if ($dom[$i]['tag'] AND $dom[$i]['opening']) { - if ($this->isValidCSSSelectorForTag($dom, $i, $selector)) { - break; - } - } - } - break; - } - } - } - } - } - return $valid; - } - - /** - * Returns the styles array that apply for the selected HTML tag. - * @param $dom (array) array of HTML tags and properties - * @param $key (int) key of the current HTML tag - * @param $css (array) array of CSS properties - * @return array containing CSS properties - * @protected - * @since 5.1.000 (2010-05-25) - */ - protected function getCSSdataArray($dom, $key, $css) { - $cssarray = array(); // style to be returned - // get parent CSS selectors - $selectors = array(); - if (isset($dom[($dom[$key]['parent'])]['csssel'])) { - $selectors = $dom[($dom[$key]['parent'])]['csssel']; - } - // get all styles that apply - foreach($css as $selector => $style) { - $pos = strpos($selector, ' '); - // get specificity - $specificity = substr($selector, 0, $pos); - // remove specificity - $selector = substr($selector, $pos); - // check if this selector apply to current tag - if ($this->isValidCSSSelectorForTag($dom, $key, $selector)) { - if (!in_array($selector, $selectors)) { - // add style if not already added on parent selector - $cssarray[] = array('k' => $selector, 's' => $specificity, 'c' => $style); - $selectors[] = $selector; - } - } - } - if (isset($dom[$key]['attribute']['style'])) { - // attach inline style (latest properties have high priority) - $cssarray[] = array('k' => '', 's' => '1000', 'c' => $dom[$key]['attribute']['style']); - } - // order the css array to account for specificity - $cssordered = array(); - foreach ($cssarray as $key => $val) { - $skey = sprintf('%04d', $key); - $cssordered[$val['s'].'_'.$skey] = $val; - } - // sort selectors alphabetically to account for specificity - ksort($cssordered, SORT_STRING); - return array($selectors, $cssordered); - } - - /** - * Compact CSS data array into single string. - * @param $css (array) array of CSS properties - * @return string containing merged CSS properties - * @protected - * @since 5.9.070 (2011-04-19) - */ - protected function getTagStyleFromCSSarray($css) { - $tagstyle = ''; // value to be returned - foreach ($css as $style) { - // split single css commands - $csscmds = explode(';', $style['c']); - foreach ($csscmds as $cmd) { - if (!empty($cmd)) { - $pos = strpos($cmd, ':'); - if ($pos !== false) { - $cmd = substr($cmd, 0, ($pos + 1)); - if (strpos($tagstyle, $cmd) !== false) { - // remove duplicate commands (last commands have high priority) - $tagstyle = preg_replace('/'.$cmd.'[^;]+/i', '', $tagstyle); - } - } - } - } - $tagstyle .= ';'.$style['c']; - } - // remove multiple semicolons - $tagstyle = preg_replace('/[;]+/', ';', $tagstyle); - return $tagstyle; + return TCPDF_STATIC::fixHTMLCode($html, $default_css, $tagvs, $tidy_options, $this->tagvspaces); } /** @@ -21279,7 +15761,7 @@ class TCPDF { return array(); } $border['width'] = $this->getCSSBorderWidth($width); - $border['color'] = $this->convertHTMLColorToDec($color); + $border['color'] = TCPDF_COLORS::convertHTMLColorToDec($color, $this->spot_colors); return $border; } @@ -21505,11 +15987,11 @@ class TCPDF { break; } case 'wider': { - $val = $parent + 10; + $val = ($parent + 10); break; } case 'narrower': { - $val = $parent - 10; + $val = ($parent - 10); break; } case 'inherit': { @@ -21527,6 +16009,62 @@ class TCPDF { return $val; } + /** + * Convert HTML string containing font size value to points + * @param $val (string) String containing font size value and unit. + * @param $refsize (float) Reference font size in points. + * @param $parent_size (float) Parent font size in points. + * @param $defaultunit (string) Default unit (can be one of the following: %, em, ex, px, in, mm, pc, pt). + * @return float value in points + * @public + */ + public function getHTMLFontUnits($val, $refsize=12, $parent_size=12, $defaultunit='pt') { + $refsize = TCPDF_FONTS::getFontRefSize($refsize); + $parent_size = TCPDF_FONTS::getFontRefSize($parent_size, $refsize); + switch ($val) { + case 'xx-small': { + $size = ($refsize - 4); + break; + } + case 'x-small': { + $size = ($refsize - 3); + break; + } + case 'small': { + $size = ($refsize - 2); + break; + } + case 'medium': { + $size = $refsize; + break; + } + case 'large': { + $size = ($refsize + 2); + break; + } + case 'x-large': { + $size = ($refsize + 4); + break; + } + case 'xx-large': { + $size = ($refsize + 6); + break; + } + case 'smaller': { + $size = ($parent_size - 3); + break; + } + case 'larger': { + $size = ($parent_size + 3); + break; + } + default: { + $size = $this->getHTMLUnitToUnits($val, $parent_size, $defaultunit, true); + } + } + return $size; + } + /** * Returns the HTML DOM array. * @param $html (string) html code @@ -21559,8 +16097,10 @@ class TCPDF { $type = array(); if (preg_match('/href[\s]*=[\s]*"([^"]*)"/', $link, $type) > 0) { // read CSS data file - $cssdata = file_get_contents(trim($type[1])); - $css = array_merge($css, $this->extractCSSproperties($cssdata)); + $cssdata = TCPDF_STATIC::fileGetContents(trim($type[1])); + if (($cssdata !== FALSE) AND (strlen($cssdata) > 0)) { + $css = array_merge($css, TCPDF_STATIC::extractCSSproperties($cssdata)); + } } } } @@ -21576,7 +16116,7 @@ class TCPDF { // (all, braille, embossed, handheld, print, projection, screen, speech, tty, tv) if (empty($type) OR (isset($type[1]) AND (($type[1] == 'all') OR ($type[1] == 'print')))) { $cssdata = $matches[2][$key]; - $css = array_merge($css, $this->extractCSSproperties($cssdata)); + $css = array_merge($css, TCPDF_STATIC::extractCSSproperties($cssdata)); } } } @@ -21775,7 +16315,7 @@ class TCPDF { } // store header rows on a new table if (($dom[$key]['value'] == 'tr') AND ($dom[($dom[$key]['parent'])]['thead'] === true)) { - if ($this->empty_string($dom[($dom[($dom[$key]['parent'])]['parent'])]['thead'])) { + if (TCPDF_STATIC::empty_string($dom[($dom[($dom[$key]['parent'])]['parent'])]['thead'])) { $dom[($dom[($dom[$key]['parent'])]['parent'])]['thead'] = $csstagarray.$a[$dom[($dom[($dom[$key]['parent'])]['parent'])]['elkey']]; } for ($i = $dom[$key]['parent']; $i <= $key; ++$i) { @@ -21787,7 +16327,7 @@ class TCPDF { // header elements must be always contained in a single page $dom[($dom[$key]['parent'])]['attribute']['nobr'] = 'true'; } - if (($dom[$key]['value'] == 'table') AND (!$this->empty_string($dom[($dom[$key]['parent'])]['thead']))) { + if (($dom[$key]['value'] == 'table') AND (!TCPDF_STATIC::empty_string($dom[($dom[$key]['parent'])]['thead']))) { // remove the nobr attributes from the table header $dom[($dom[$key]['parent'])]['thead'] = str_replace(' nobr="true"', '', $dom[($dom[$key]['parent'])]['thead']); $dom[($dom[$key]['parent'])]['thead'] .= ''; @@ -21835,8 +16375,8 @@ class TCPDF { } if (!empty($css)) { // merge CSS style to current style - list($dom[$key]['csssel'], $dom[$key]['cssdata']) = $this->getCSSdataArray($dom, $key, $css); - $dom[$key]['attribute']['style'] = $this->getTagStyleFromCSSarray($dom[$key]['cssdata']); + list($dom[$key]['csssel'], $dom[$key]['cssdata']) = TCPDF_STATIC::getCSSdataArray($dom, $key, $css); + $dom[$key]['attribute']['style'] = TCPDF_STATIC::getTagStyleFromCSSarray($dom[$key]['cssdata']); } // split style attributes if (isset($dom[$key]['attribute']['style']) AND !empty($dom[$key]['attribute']['style'])) { @@ -21877,49 +16417,7 @@ class TCPDF { // font size if (isset($dom[$key]['style']['font-size'])) { $fsize = trim($dom[$key]['style']['font-size']); - switch ($fsize) { - // absolute-size - case 'xx-small': { - $dom[$key]['fontsize'] = $dom[0]['fontsize'] - 4; - break; - } - case 'x-small': { - $dom[$key]['fontsize'] = $dom[0]['fontsize'] - 3; - break; - } - case 'small': { - $dom[$key]['fontsize'] = $dom[0]['fontsize'] - 2; - break; - } - case 'medium': { - $dom[$key]['fontsize'] = $dom[0]['fontsize']; - break; - } - case 'large': { - $dom[$key]['fontsize'] = $dom[0]['fontsize'] + 2; - break; - } - case 'x-large': { - $dom[$key]['fontsize'] = $dom[0]['fontsize'] + 4; - break; - } - case 'xx-large': { - $dom[$key]['fontsize'] = $dom[0]['fontsize'] + 6; - break; - } - // relative-size - case 'smaller': { - $dom[$key]['fontsize'] = $dom[$parentkey]['fontsize'] - 3; - break; - } - case 'larger': { - $dom[$key]['fontsize'] = $dom[$parentkey]['fontsize'] + 3; - break; - } - default: { - $dom[$key]['fontsize'] = $this->getHTMLUnitToUnits($fsize, $dom[$parentkey]['fontsize'], 'pt', true); - } - } + $dom[$key]['fontsize'] = $this->getHTMLFontUnits($fsize, $dom[0]['fontsize'], $dom[$parentkey]['fontsize'], 'pt'); } // font-stretch if (isset($dom[$key]['style']['font-stretch'])) { @@ -21960,26 +16458,26 @@ class TCPDF { $dom[$key]['fontstyle'] .= 'I'; } // font color - if (isset($dom[$key]['style']['color']) AND (!$this->empty_string($dom[$key]['style']['color']))) { - $dom[$key]['fgcolor'] = $this->convertHTMLColorToDec($dom[$key]['style']['color']); + if (isset($dom[$key]['style']['color']) AND (!TCPDF_STATIC::empty_string($dom[$key]['style']['color']))) { + $dom[$key]['fgcolor'] = TCPDF_COLORS::convertHTMLColorToDec($dom[$key]['style']['color'], $this->spot_colors); } elseif ($dom[$key]['value'] == 'a') { $dom[$key]['fgcolor'] = $this->htmlLinkColorArray; } // background color - if (isset($dom[$key]['style']['background-color']) AND (!$this->empty_string($dom[$key]['style']['background-color']))) { - $dom[$key]['bgcolor'] = $this->convertHTMLColorToDec($dom[$key]['style']['background-color']); + if (isset($dom[$key]['style']['background-color']) AND (!TCPDF_STATIC::empty_string($dom[$key]['style']['background-color']))) { + $dom[$key]['bgcolor'] = TCPDF_COLORS::convertHTMLColorToDec($dom[$key]['style']['background-color'], $this->spot_colors); } // text-decoration if (isset($dom[$key]['style']['text-decoration'])) { $decors = explode(' ', strtolower($dom[$key]['style']['text-decoration'])); foreach ($decors as $dec) { $dec = trim($dec); - if (!$this->empty_string($dec)) { + if (!TCPDF_STATIC::empty_string($dec)) { if ($dec{0} == 'u') { // underline $dom[$key]['fontstyle'] .= 'U'; } elseif ($dec{0} == 'l') { - // line-trough + // line-through $dom[$key]['fontstyle'] .= 'D'; } elseif ($dec{0} == 'o') { // overline @@ -22012,16 +16510,16 @@ class TCPDF { if (isset($dom[$key]['style']['border-color'])) { $brd_colors = preg_split('/[\s]+/', trim($dom[$key]['style']['border-color'])); if (isset($brd_colors[3])) { - $dom[$key]['border']['L']['color'] = $this->convertHTMLColorToDec($brd_colors[3]); + $dom[$key]['border']['L']['color'] = TCPDF_COLORS::convertHTMLColorToDec($brd_colors[3], $this->spot_colors); } if (isset($brd_colors[1])) { - $dom[$key]['border']['R']['color'] = $this->convertHTMLColorToDec($brd_colors[1]); + $dom[$key]['border']['R']['color'] = TCPDF_COLORS::convertHTMLColorToDec($brd_colors[1], $this->spot_colors); } if (isset($brd_colors[0])) { - $dom[$key]['border']['T']['color'] = $this->convertHTMLColorToDec($brd_colors[0]); + $dom[$key]['border']['T']['color'] = TCPDF_COLORS::convertHTMLColorToDec($brd_colors[0], $this->spot_colors); } if (isset($brd_colors[2])) { - $dom[$key]['border']['B']['color'] = $this->convertHTMLColorToDec($brd_colors[2]); + $dom[$key]['border']['B']['color'] = TCPDF_COLORS::convertHTMLColorToDec($brd_colors[2], $this->spot_colors); } } if (isset($dom[$key]['style']['border-width'])) { @@ -22083,7 +16581,7 @@ class TCPDF { } } if (isset($dom[$key]['style']['border-'.$bsv.'-color'])) { - $dom[$key]['border'][$bsk]['color'] = $this->convertHTMLColorToDec($dom[$key]['style']['border-'.$bsv.'-color']); + $dom[$key]['border'][$bsk]['color'] = TCPDF_COLORS::convertHTMLColorToDec($dom[$key]['style']['border-'.$bsv.'-color'], $this->spot_colors); } if (isset($dom[$key]['style']['border-'.$bsv.'-width'])) { $dom[$key]['border'][$bsk]['width'] = $this->getCSSBorderWidth($dom[$key]['style']['border-'.$bsv.'-width']); @@ -22178,7 +16676,7 @@ class TCPDF { } // force natural alignment for lists if ((($dom[$key]['value'] == 'ul') OR ($dom[$key]['value'] == 'ol') OR ($dom[$key]['value'] == 'dl')) - AND (!isset($dom[$key]['align']) OR $this->empty_string($dom[$key]['align']) OR ($dom[$key]['align'] != 'J'))) { + AND (!isset($dom[$key]['align']) OR TCPDF_STATIC::empty_string($dom[$key]['align']) OR ($dom[$key]['align'] != 'J'))) { if ($this->rtl) { $dom[$key]['align'] = 'R'; } else { @@ -22250,18 +16748,18 @@ class TCPDF { $dom[$key]['dir'] = $dom[$key]['attribute']['dir']; } // set foreground color attribute - if (isset($dom[$key]['attribute']['color']) AND (!$this->empty_string($dom[$key]['attribute']['color']))) { - $dom[$key]['fgcolor'] = $this->convertHTMLColorToDec($dom[$key]['attribute']['color']); + if (isset($dom[$key]['attribute']['color']) AND (!TCPDF_STATIC::empty_string($dom[$key]['attribute']['color']))) { + $dom[$key]['fgcolor'] = TCPDF_COLORS::convertHTMLColorToDec($dom[$key]['attribute']['color'], $this->spot_colors); } elseif (!isset($dom[$key]['style']['color']) AND ($dom[$key]['value'] == 'a')) { $dom[$key]['fgcolor'] = $this->htmlLinkColorArray; } // set background color attribute - if (isset($dom[$key]['attribute']['bgcolor']) AND (!$this->empty_string($dom[$key]['attribute']['bgcolor']))) { - $dom[$key]['bgcolor'] = $this->convertHTMLColorToDec($dom[$key]['attribute']['bgcolor']); + if (isset($dom[$key]['attribute']['bgcolor']) AND (!TCPDF_STATIC::empty_string($dom[$key]['attribute']['bgcolor']))) { + $dom[$key]['bgcolor'] = TCPDF_COLORS::convertHTMLColorToDec($dom[$key]['attribute']['bgcolor'], $this->spot_colors); } // set stroke color attribute - if (isset($dom[$key]['attribute']['strokecolor']) AND (!$this->empty_string($dom[$key]['attribute']['strokecolor']))) { - $dom[$key]['strokecolor'] = $this->convertHTMLColorToDec($dom[$key]['attribute']['strokecolor']); + if (isset($dom[$key]['attribute']['strokecolor']) AND (!TCPDF_STATIC::empty_string($dom[$key]['attribute']['strokecolor']))) { + $dom[$key]['strokecolor'] = TCPDF_COLORS::convertHTMLColorToDec($dom[$key]['attribute']['strokecolor'], $this->spot_colors); } // check for width attribute if (isset($dom[$key]['attribute']['width'])) { @@ -22272,7 +16770,7 @@ class TCPDF { $dom[$key]['height'] = $dom[$key]['attribute']['height']; } // check for text alignment - if (isset($dom[$key]['attribute']['align']) AND (!$this->empty_string($dom[$key]['attribute']['align'])) AND ($dom[$key]['value'] !== 'img')) { + if (isset($dom[$key]['attribute']['align']) AND (!TCPDF_STATIC::empty_string($dom[$key]['attribute']['align'])) AND ($dom[$key]['value'] !== 'img')) { $dom[$key]['align'] = strtoupper($dom[$key]['attribute']['align']{0}); } // check for text rendering mode (the following attributes do not exist in HTML) @@ -22301,7 +16799,7 @@ class TCPDF { // text $dom[$key]['tag'] = false; $dom[$key]['block'] = false; - //$element = str_replace(' ', $this->unichr(160), $element); + //$element = str_replace(' ', TCPDF_FONTS::unichr(160, $this->isunicode), $element); $dom[$key]['value'] = stripslashes($this->unhtmlentities($element)); $dom[$key]['parent'] = end($level); $dom[$key]['dir'] = $dom[$dom[$key]['parent']]['dir']; @@ -22327,6 +16825,18 @@ class TCPDF { return $spacestr; } + /** + * Serialize an array of parameters to be used with TCPDF tag in HTML code. + * @param $pararray (array) parameters array + * @return sting containing serialized data + * @since 4.9.006 (2010-04-02) + * @public + * @deprecated + */ + public function serializeTCPDFtagParameters($pararray) { + return TCPDF_STATIC::serializeTCPDFtagParameters($pararray); + } + /** * Prints a cell (rectangular area) with optional borders, background color and html text string. * The upper-left corner of the cell corresponds to the current position. After the call, the current position moves to the right or to the next line.
                    @@ -22451,7 +16961,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $this->listordered = array(); $this->listcount = array(); $this->lispacer = ''; - if (($this->empty_string($this->lasth)) OR ($reseth)) { + if ((TCPDF_STATIC::empty_string($this->lasth)) OR ($reseth)) { // reset row height $this->resetLastH(); } @@ -22546,7 +17056,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } // print THEAD block if (($dom[$key]['value'] == 'tr') AND isset($dom[$key]['thead']) AND $dom[$key]['thead']) { - if (isset($dom[$key]['parent']) AND isset($dom[$dom[$key]['parent']]['thead']) AND !$this->empty_string($dom[$dom[$key]['parent']]['thead'])) { + if (isset($dom[$key]['parent']) AND isset($dom[$dom[$key]['parent']]['thead']) AND !TCPDF_STATIC::empty_string($dom[$dom[$key]['parent']]['thead'])) { $this->inthead = true; // print table header (thead) $this->writeHTML($this->thead, false, false, false, false, ''); @@ -22798,7 +17308,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: if (isset($dom[$key]['align'])) { $lalign = $dom[$key]['align']; } - if ($this->empty_string($lalign)) { + if (TCPDF_STATIC::empty_string($lalign)) { $lalign = $align; } } @@ -22867,14 +17377,14 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $no = 0; // number of spaces on a line contained on a single block if ($this->isRTLTextDir()) { // RTL // remove left space if exist - $pos1 = $this->revstrpos($pmid, '[('); + $pos1 = TCPDF_STATIC::revstrpos($pmid, '[('); if ($pos1 > 0) { $pos1 = intval($pos1); if ($this->isUnicodeFont()) { - $pos2 = intval($this->revstrpos($pmid, '[('.chr(0).chr(32))); + $pos2 = intval(TCPDF_STATIC::revstrpos($pmid, '[('.chr(0).chr(32))); $spacelen = 2; } else { - $pos2 = intval($this->revstrpos($pmid, '[('.chr(32))); + $pos2 = intval(TCPDF_STATIC::revstrpos($pmid, '[('.chr(32))); $spacelen = 1; } if ($pos1 == $pos2) { @@ -22888,14 +17398,14 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } } else { // LTR // remove right space if exist - $pos1 = $this->revstrpos($pmid, ')]'); + $pos1 = TCPDF_STATIC::revstrpos($pmid, ')]'); if ($pos1 > 0) { $pos1 = intval($pos1); if ($this->isUnicodeFont()) { - $pos2 = intval($this->revstrpos($pmid, chr(0).chr(32).')]')) + 2; + $pos2 = intval(TCPDF_STATIC::revstrpos($pmid, chr(0).chr(32).')]')) + 2; $spacelen = 2; } else { - $pos2 = intval($this->revstrpos($pmid, chr(32).')]')) + 1; + $pos2 = intval(TCPDF_STATIC::revstrpos($pmid, chr(32).')]')) + 1; $spacelen = 1; } if ($pos1 == $pos2) { @@ -22947,6 +17457,9 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } // calculate additional space to add to each existing space $spacewidth = ($mdiff / ($ns - $no)) * $this->k; + if ($this->FontSize <= 0) { + $this->FontSize = 1; + } $spacewidthu = -1000 * ($mdiff + (($ns + $no) * $one_space_width)) / $ns / $this->FontSize; if ($this->font_spacing != 0) { // fixed spacing mode @@ -23027,7 +17540,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } case 're': { // justify block - if (!$this->empty_string($this->lispacer)) { + if (!TCPDF_STATIC::empty_string($this->lispacer)) { $this->lispacer = ''; continue; } @@ -23242,7 +17755,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $this->newline = true; } // table - if ($dom[$key]['value'] == 'table') { + if (($dom[$key]['value'] == 'table') AND isset($dom[$key]['cols']) AND ($dom[$key]['cols'] > 0)) { // available page width if ($this->rtl) { $wtmp = $this->x - $this->lMargin; @@ -23297,7 +17810,10 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: if (isset($dom[$key]['border']) AND !empty($dom[$key]['border'])) { $tdborder = $dom[$key]['border']; } - $colspan = $dom[$key]['attribute']['colspan']; + $colspan = intval($dom[$key]['attribute']['colspan']); + if ($colspan <= 0) { + $colspan = 1; + } $old_cell_padding = $this->cell_padding; if (isset($dom[($dom[$trid]['parent'])]['attribute']['cellpadding'])) { $crclpd = $this->getHTMLUnitToUnits($dom[($dom[$trid]['parent'])]['attribute']['cellpadding'], 1, 'px'); @@ -23523,7 +18039,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } } elseif (strlen($dom[$key]['value']) > 0) { // print list-item - if (!$this->empty_string($this->lispacer) AND ($this->lispacer != '^')) { + if (!TCPDF_STATIC::empty_string($this->lispacer) AND ($this->lispacer != '^')) { $this->SetFont($pfontname, $pfontstyle, $pfontsize); $this->resetLastH(); $minstartliney = $this->y; @@ -23620,7 +18136,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $tmp_fontsize = isset($dom[$nkey]['fontsize']) ? $dom[$nkey]['fontsize'] : $this->FontSizePt; $same_textdir = ($dom[$nkey]['dir'] == $dom[$key]['dir']); } else { - $nextstr = preg_split('/'.$this->re_space['p'].'+/'.$this->re_space['m'], $dom[$nkey]['value']); + $nextstr = TCPDF_STATIC::pregSplit('/'.$this->re_space['p'].'+/', $this->re_space['m'], $dom[$nkey]['value']); if (isset($nextstr[0]) AND $same_textdir) { $wadj += $this->GetStringWidth($nextstr[0], $tmp_fontname, $tmp_fontstyle, $tmp_fontsize); if (isset($nextstr[1])) { @@ -23633,7 +18149,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } if (($wadj > 0) AND (($strlinelen + $wadj) >= $cwa)) { $wadj = 0; - $nextstr = preg_split('/'.$this->re_space['p'].'/'.$this->re_space['m'], $dom[$key]['value']); + $nextstr = TCPDF_STATIC::pregSplit('/'.$this->re_space['p'].'/', $this->re_space['m'], $dom[$key]['value']); $numblks = count($nextstr); if ($numblks > 1) { // try to split on blank spaces @@ -23779,14 +18295,14 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $no = 0; // number of spaces on a line contained on a single block if ($this->isRTLTextDir()) { // RTL // remove left space if exist - $pos1 = $this->revstrpos($pmid, '[('); + $pos1 = TCPDF_STATIC::revstrpos($pmid, '[('); if ($pos1 > 0) { $pos1 = intval($pos1); if ($this->isUnicodeFont()) { - $pos2 = intval($this->revstrpos($pmid, '[('.chr(0).chr(32))); + $pos2 = intval(TCPDF_STATIC::revstrpos($pmid, '[('.chr(0).chr(32))); $spacelen = 2; } else { - $pos2 = intval($this->revstrpos($pmid, '[('.chr(32))); + $pos2 = intval(TCPDF_STATIC::revstrpos($pmid, '[('.chr(32))); $spacelen = 1; } if ($pos1 == $pos2) { @@ -23800,14 +18316,14 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } } else { // LTR // remove right space if exist - $pos1 = $this->revstrpos($pmid, ')]'); + $pos1 = TCPDF_STATIC::revstrpos($pmid, ')]'); if ($pos1 > 0) { $pos1 = intval($pos1); if ($this->isUnicodeFont()) { - $pos2 = intval($this->revstrpos($pmid, chr(0).chr(32).')]')) + 2; + $pos2 = intval(TCPDF_STATIC::revstrpos($pmid, chr(0).chr(32).')]')) + 2; $spacelen = 2; } else { - $pos2 = intval($this->revstrpos($pmid, chr(32).')]')) + 1; + $pos2 = intval(TCPDF_STATIC::revstrpos($pmid, chr(32).')]')) + 1; $spacelen = 1; } if ($pos1 == $pos2) { @@ -23946,7 +18462,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: if (!isset($dom[$key]['attribute']['nested']) OR ($dom[$key]['attribute']['nested'] != 'true')) { $this->htmlvspace = 0; // set table header - if (!$this->empty_string($dom[$key]['thead'])) { + if (!TCPDF_STATIC::empty_string($dom[$key]['thead'])) { // set table header $this->thead = $dom[$key]['thead']; if (!isset($this->theadMargins) OR (empty($this->theadMargins))) { @@ -24023,28 +18539,8 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $tag['attribute']['src'] = '@'.base64_decode(substr($tag['attribute']['src'], 1)); $type = ''; } else { - // check for images without protocol - if (preg_match('%^/{2}%', $tag['attribute']['src'])) { - $tag['attribute']['src'] = 'http:'.$tag['attribute']['src']; - } - // replace relative path with real server path - if (($tag['attribute']['src'][0] == '/') AND !empty($_SERVER['DOCUMENT_ROOT']) AND ($_SERVER['DOCUMENT_ROOT'] != '/')) { - $findroot = strpos($tag['attribute']['src'], $_SERVER['DOCUMENT_ROOT']); - if (($findroot === false) OR ($findroot > 1)) { - if (substr($_SERVER['DOCUMENT_ROOT'], -1) == '/') { - $tag['attribute']['src'] = substr($_SERVER['DOCUMENT_ROOT'], 0, -1).$tag['attribute']['src']; - } else { - $tag['attribute']['src'] = $_SERVER['DOCUMENT_ROOT'].$tag['attribute']['src']; - } - } - } - $tag['attribute']['src'] = htmlspecialchars_decode(urldecode($tag['attribute']['src'])); - $type = $this->getImageFileType($tag['attribute']['src']); - $testscrtype = @parse_url($tag['attribute']['src']); - if (!isset($testscrtype['query']) OR empty($testscrtype['query'])) { - // convert URL to server path - $tag['attribute']['src'] = str_replace(K_PATH_URL, K_PATH_MAIN, $tag['attribute']['src']); - } + // get image type + $type = TCPDF_IMAGES::getImageFileType($tag['attribute']['src']); } if (!isset($tag['width'])) { $tag['width'] = 0; @@ -24078,7 +18574,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $prevy = $this->y; $xpos = $this->x; $imglink = ''; - if (isset($this->HREF['url']) AND !$this->empty_string($this->HREF['url'])) { + if (isset($this->HREF['url']) AND !TCPDF_STATIC::empty_string($this->HREF['url'])) { $imglink = $this->HREF['url']; if ($imglink{0} == '#') { // convert url to internal link @@ -24194,11 +18690,11 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } if ($this->listordered[$this->listnum]) { // ordered item - if (isset($parent['attribute']['type']) AND !$this->empty_string($parent['attribute']['type'])) { + if (isset($parent['attribute']['type']) AND !TCPDF_STATIC::empty_string($parent['attribute']['type'])) { $this->lispacer = $parent['attribute']['type']; - } elseif (isset($parent['listtype']) AND !$this->empty_string($parent['listtype'])) { + } elseif (isset($parent['listtype']) AND !TCPDF_STATIC::empty_string($parent['listtype'])) { $this->lispacer = $parent['listtype']; - } elseif (isset($this->lisymbol) AND !$this->empty_string($this->lisymbol)) { + } elseif (isset($this->lisymbol) AND !TCPDF_STATIC::empty_string($this->lisymbol)) { $this->lispacer = $this->lisymbol; } else { $this->lispacer = '#'; @@ -24209,11 +18705,11 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } } else { // unordered item - if (isset($parent['attribute']['type']) AND !$this->empty_string($parent['attribute']['type'])) { + if (isset($parent['attribute']['type']) AND !TCPDF_STATIC::empty_string($parent['attribute']['type'])) { $this->lispacer = $parent['attribute']['type']; - } elseif (isset($parent['listtype']) AND !$this->empty_string($parent['listtype'])) { + } elseif (isset($parent['listtype']) AND !TCPDF_STATIC::empty_string($parent['listtype'])) { $this->lispacer = $parent['listtype']; - } elseif (isset($this->lisymbol) AND !$this->empty_string($this->lisymbol)) { + } elseif (isset($this->lisymbol) AND !TCPDF_STATIC::empty_string($this->lisymbol)) { $this->lispacer = $this->lisymbol; } else { $this->lispacer = '!'; @@ -24270,7 +18766,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: if (isset($tag['attribute']['action'])) { $this->form_action = $tag['attribute']['action']; } else { - $this->form_action = K_PATH_URL.$_SERVER['SCRIPT_NAME']; + $this->Error('Please explicitly set action attribute path!'); } if (isset($tag['attribute']['enctype'])) { $this->form_enctype = $tag['attribute']['enctype']; @@ -24285,24 +18781,24 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: break; } case 'input': { - if (isset($tag['attribute']['name']) AND !$this->empty_string($tag['attribute']['name'])) { + if (isset($tag['attribute']['name']) AND !TCPDF_STATIC::empty_string($tag['attribute']['name'])) { $name = $tag['attribute']['name']; } else { break; } $prop = array(); $opt = array(); - if (isset($tag['attribute']['readonly']) AND !$this->empty_string($tag['attribute']['readonly'])) { + if (isset($tag['attribute']['readonly']) AND !TCPDF_STATIC::empty_string($tag['attribute']['readonly'])) { $prop['readonly'] = true; } - if (isset($tag['attribute']['value']) AND !$this->empty_string($tag['attribute']['value'])) { + if (isset($tag['attribute']['value']) AND !TCPDF_STATIC::empty_string($tag['attribute']['value'])) { $value = $tag['attribute']['value']; } - if (isset($tag['attribute']['maxlength']) AND !$this->empty_string($tag['attribute']['maxlength'])) { + if (isset($tag['attribute']['maxlength']) AND !TCPDF_STATIC::empty_string($tag['attribute']['maxlength'])) { $opt['maxlen'] = intval($tag['attribute']['maxlength']); } $h = $this->FontSize * $this->cell_height_ratio; - if (isset($tag['attribute']['size']) AND !$this->empty_string($tag['attribute']['size'])) { + if (isset($tag['attribute']['size']) AND !TCPDF_STATIC::empty_string($tag['attribute']['size'])) { $w = intval($tag['attribute']['size']) * $this->GetStringWidth(chr(32)) * 2; } else { $w = $h; @@ -24410,7 +18906,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } case 'image': { // THIS TYPE MUST BE FIXED - if (isset($tag['attribute']['src']) AND !$this->empty_string($tag['attribute']['src'])) { + if (isset($tag['attribute']['src']) AND !TCPDF_STATIC::empty_string($tag['attribute']['src'])) { $img = $tag['attribute']['src']; } else { break; @@ -24446,23 +18942,23 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: case 'textarea': { $prop = array(); $opt = array(); - if (isset($tag['attribute']['readonly']) AND !$this->empty_string($tag['attribute']['readonly'])) { + if (isset($tag['attribute']['readonly']) AND !TCPDF_STATIC::empty_string($tag['attribute']['readonly'])) { $prop['readonly'] = true; } - if (isset($tag['attribute']['name']) AND !$this->empty_string($tag['attribute']['name'])) { + if (isset($tag['attribute']['name']) AND !TCPDF_STATIC::empty_string($tag['attribute']['name'])) { $name = $tag['attribute']['name']; } else { break; } - if (isset($tag['attribute']['value']) AND !$this->empty_string($tag['attribute']['value'])) { + if (isset($tag['attribute']['value']) AND !TCPDF_STATIC::empty_string($tag['attribute']['value'])) { $opt['v'] = $tag['attribute']['value']; } - if (isset($tag['attribute']['cols']) AND !$this->empty_string($tag['attribute']['cols'])) { + if (isset($tag['attribute']['cols']) AND !TCPDF_STATIC::empty_string($tag['attribute']['cols'])) { $w = intval($tag['attribute']['cols']) * $this->GetStringWidth(chr(32)) * 2; } else { $w = 40; } - if (isset($tag['attribute']['rows']) AND !$this->empty_string($tag['attribute']['rows'])) { + if (isset($tag['attribute']['rows']) AND !TCPDF_STATIC::empty_string($tag['attribute']['rows'])) { $h = intval($tag['attribute']['rows']) * $this->FontSize * $this->cell_height_ratio; } else { $h = 10; @@ -24473,18 +18969,18 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } case 'select': { $h = $this->FontSize * $this->cell_height_ratio; - if (isset($tag['attribute']['size']) AND !$this->empty_string($tag['attribute']['size'])) { + if (isset($tag['attribute']['size']) AND !TCPDF_STATIC::empty_string($tag['attribute']['size'])) { $h *= ($tag['attribute']['size'] + 1); } $prop = array(); $opt = array(); - if (isset($tag['attribute']['name']) AND !$this->empty_string($tag['attribute']['name'])) { + if (isset($tag['attribute']['name']) AND !TCPDF_STATIC::empty_string($tag['attribute']['name'])) { $name = $tag['attribute']['name']; } else { break; } $w = 0; - if (isset($tag['attribute']['opt']) AND !$this->empty_string($tag['attribute']['opt'])) { + if (isset($tag['attribute']['opt']) AND !TCPDF_STATIC::empty_string($tag['attribute']['opt'])) { $options = explode('#!NwL!#', $tag['attribute']['opt']); $values = array(); foreach ($options as $val) { @@ -24762,9 +19258,9 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $starty = $y; $w = abs($cellpos['endx'] - $cellpos['startx']); // get border modes - $border_start = $this->getBorderMode($border, $position='start'); - $border_end = $this->getBorderMode($border, $position='end'); - $border_middle = $this->getBorderMode($border, $position='middle'); + $border_start = TCPDF_STATIC::getBorderMode($border, $position='start', $this->opencell); + $border_end = TCPDF_STATIC::getBorderMode($border, $position='end', $this->opencell); + $border_middle = TCPDF_STATIC::getBorderMode($border, $position='middle', $this->opencell); // design borders around HTML cells. for ($page = $startpage; $page <= $endpage; ++$page) { // for each page $ccode = ''; @@ -25153,9 +19649,9 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: if (isset($tag['border']) AND !empty($tag['border'])) { // get border style $border = $tag['border']; - if (!$this->empty_string($this->thead) AND (!$this->inthead)) { + if (!TCPDF_STATIC::empty_string($this->thead) AND (!$this->inthead)) { // border for table header - $border = $this->getBorderMode($border, $position='middle'); + $border = TCPDF_STATIC::getBorderMode($border, $position='middle', $this->opencell); } } if (isset($tag['bgcolor']) AND ($tag['bgcolor'] !== false)) { @@ -25209,9 +19705,9 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $this->num_columns = 1; } // get border modes - $border_start = $this->getBorderMode($border, $position='start'); - $border_end = $this->getBorderMode($border, $position='end'); - $border_middle = $this->getBorderMode($border, $position='middle'); + $border_start = TCPDF_STATIC::getBorderMode($border, $position='start', $this->opencell); + $border_end = TCPDF_STATIC::getBorderMode($border, $position='end', $this->opencell); + $border_middle = TCPDF_STATIC::getBorderMode($border, $position='middle', $this->opencell); // temporary disable page regions $temp_page_regions = $this->page_regions; $this->page_regions = array(); @@ -25463,10 +19959,10 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: /** * Convert HTML string containing value and unit of measure to user's units or points. - * @param $htmlval (string) string containing values and unit - * @param $refsize (string) reference value in points - * @param $defaultunit (string) default unit (can be one of the following: %, em, ex, px, in, mm, pc, pt). - * @param $points (boolean) if true returns points, otherwise returns value in user's units + * @param $htmlval (string) String containing values and unit. + * @param $refsize (string) Reference value in points. + * @param $defaultunit (string) Default unit (can be one of the following: %, em, ex, px, in, mm, pc, pt). + * @param $points (boolean) If true returns points, otherwise returns value in user's units. * @return float value in user's unit or point if $points=true * @public * @since 4.4.004 (2008-12-10) @@ -25476,9 +19972,10 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $retval = 0; $value = 0; $unit = 'px'; - $k = $this->k; if ($points) { $k = 1; + } else { + $k = $this->k; } if (in_array($defaultunit, $supportedunits)) { $unit = $defaultunit; @@ -25506,107 +20003,46 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } // height of lower case 'x' (about half the font-size) case 'ex': { - $retval = $value * ($refsize / 2); + $retval = ($value * ($refsize / 2)); break; } // absolute-size case 'in': { - $retval = ($value * $this->dpi) / $k; + $retval = (($value * $this->dpi) / $k); break; } // centimeters case 'cm': { - $retval = ($value / 2.54 * $this->dpi) / $k; + $retval = (($value / 2.54 * $this->dpi) / $k); break; } // millimeters case 'mm': { - $retval = ($value / 25.4 * $this->dpi) / $k; + $retval = (($value / 25.4 * $this->dpi) / $k); break; } // one pica is 12 points case 'pc': { - $retval = ($value * 12) / $k; + $retval = (($value * 12) / $k); break; } // points case 'pt': { - $retval = $value / $k; + $retval = ($value / $k); break; } // pixels case 'px': { $retval = $this->pixelsToUnits($value); + if ($points) { + $retval *= $this->k; + } break; } } return $retval; } - /** - * Returns the Roman representation of an integer number - * @param $number (int) number to convert - * @return string roman representation of the specified number - * @since 4.4.004 (2008-12-10) - * @public - */ - public function intToRoman($number) { - $roman = ''; - while ($number >= 1000) { - $roman .= 'M'; - $number -= 1000; - } - while ($number >= 900) { - $roman .= 'CM'; - $number -= 900; - } - while ($number >= 500) { - $roman .= 'D'; - $number -= 500; - } - while ($number >= 400) { - $roman .= 'CD'; - $number -= 400; - } - while ($number >= 100) { - $roman .= 'C'; - $number -= 100; - } - while ($number >= 90) { - $roman .= 'XC'; - $number -= 90; - } - while ($number >= 50) { - $roman .= 'L'; - $number -= 50; - } - while ($number >= 40) { - $roman .= 'XL'; - $number -= 40; - } - while ($number >= 10) { - $roman .= 'X'; - $number -= 10; - } - while ($number >= 9) { - $roman .= 'IX'; - $number -= 9; - } - while ($number >= 5) { - $roman .= 'V'; - $number -= 5; - } - while ($number >= 4) { - $roman .= 'IV'; - $number -= 4; - } - while ($number >= 1) { - $roman .= 'I'; - --$number; - } - return $roman; - } - /** * Output an HTML list bullet or ordered item symbol * @param $listdepth (int) list nesting level @@ -25727,12 +20163,12 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } case 'i': case 'lower-roman': { - $textitem = strtolower($this->intToRoman($this->listcount[$this->listnum])); + $textitem = strtolower(TCPDF_STATIC::intToRoman($this->listcount[$this->listnum])); break; } case 'I': case 'upper-roman': { - $textitem = $this->intToRoman($this->listcount[$this->listnum]); + $textitem = TCPDF_STATIC::intToRoman($this->listcount[$this->listnum]); break; } case 'a': @@ -25748,7 +20184,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: break; } case 'lower-greek': { - $textitem = $this->unichr(945 + $this->listcount[$this->listnum] - 1); + $textitem = TCPDF_FONTS::unichr((945 + $this->listcount[$this->listnum] - 1), $this->isunicode); break; } /* @@ -25782,7 +20218,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $textitem = $this->listcount[$this->listnum]; } } - if (!$this->empty_string($textitem)) { + if (!TCPDF_STATIC::empty_string($textitem)) { // Check whether we need a new page or new column $prev_y = $this->y; $h = ($this->FontSize * $this->cell_height_ratio) + $this->cell_padding['T'] + $this->cell_padding['B']; @@ -25933,22 +20369,11 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $this->num_columns = $gvars['num_columns']; } $this->_out(''.$this->linestyleWidth.' '.$this->linestyleCap.' '.$this->linestyleJoin.' '.$this->linestyleDash.' '.$this->DrawColor.' '.$this->FillColor.''); - if (!$this->empty_string($this->FontFamily)) { + if (!TCPDF_STATIC::empty_string($this->FontFamily)) { $this->SetFont($this->FontFamily, $this->FontStyle, $this->FontSizePt); } } - /** - * Returns a temporary filename for caching object on filesystem. - * @param $name (string) Prefix to add to the file name. - * @return string filename. - * @since 4.5.000 (2008-12-31) - * @protected - */ - protected function getObjFilename($name) { - return tempnam(K_PATH_CACHE, $name.'_'); - } - /** * Writes data to a temporary file on filesystem. * @param $filename (string) file name @@ -25998,8 +20423,8 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: protected function setBuffer($data) { $this->bufferlen += strlen($data); if ($this->diskcache) { - if (!isset($this->buffer) OR $this->empty_string($this->buffer)) { - $this->buffer = $this->getObjFilename('buffer'); + if (!isset($this->buffer) OR TCPDF_STATIC::empty_string($this->buffer)) { + $this->buffer = TCPDF_STATIC::getObjFilename('buffer'); } $this->writeDiskCache($this->buffer, $data, true); } else { @@ -26016,8 +20441,8 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: protected function replaceBuffer($data) { $this->bufferlen = strlen($data); if ($this->diskcache) { - if (!isset($this->buffer) OR $this->empty_string($this->buffer)) { - $this->buffer = $this->getObjFilename('buffer'); + if (!isset($this->buffer) OR TCPDF_STATIC::empty_string($this->buffer)) { + $this->buffer = TCPDF_STATIC::getObjFilename('buffer'); } $this->writeDiskCache($this->buffer, $data, false); } else { @@ -26050,7 +20475,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: protected function setPageBuffer($page, $data, $append=false) { if ($this->diskcache) { if (!isset($this->pages[$page])) { - $this->pages[$page] = $this->getObjFilename('page'.$page); + $this->pages[$page] = TCPDF_STATIC::getObjFilename('page'.$page); } $this->writeDiskCache($this->pages[$page], $data, $append); } else { @@ -26099,7 +20524,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } if ($this->diskcache) { if (!isset($this->images[$image])) { - $this->images[$image] = $this->getObjFilename('image'.$image); + $this->images[$image] = TCPDF_STATIC::getObjFilename('image'.$image); } $this->writeDiskCache($this->images[$image], serialize($data)); } else { @@ -26155,7 +20580,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: protected function setFontBuffer($font, $data) { if ($this->diskcache) { if (!isset($this->fonts[$font])) { - $this->fonts[$font] = $this->getObjFilename('font'); + $this->fonts[$font] = TCPDF_STATIC::getObjFilename('font'); } $this->writeDiskCache($this->fonts[$font], serialize($data)); } else { @@ -26547,7 +20972,9 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: --$newpage; return "this.addField(\'".$matches[1]."\',\'".$matches[2]."\',".$newpage."";'), $tmpjavascript); // return to last page - $this->lastPage(true); + if ($this->numpages > 0) { + $this->lastPage(true); + } return true; } @@ -26649,13 +21076,13 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $page_fill_start = false; $page_fill_end = false; $current_column = $this->current_column; - if ($this->empty_string($numbersfont)) { + if (TCPDF_STATIC::empty_string($numbersfont)) { $numbersfont = $this->default_monospaced_font; } - if ($this->empty_string($filler)) { + if (TCPDF_STATIC::empty_string($filler)) { $filler = ' '; } - if ($this->empty_string($page)) { + if (TCPDF_STATIC::empty_string($page)) { $gap = ' '; } else { $gap = ''; @@ -26727,7 +21154,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $tw = $this->w - $this->rMargin - $this->x; } $this->SetFont($numbersfont, $fontstyle, $fontsize); - if ($this->empty_string($page)) { + if (TCPDF_STATIC::empty_string($page)) { $pagenum = $outline['p']; } else { // placemark to be replaced with the correct number @@ -26738,7 +21165,12 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $maxpage = max($maxpage, $outline['p']); } $fw = ($tw - $this->GetStringWidth($pagenum.$filler)); - $numfills = floor($fw / $this->GetStringWidth($filler)); + $wfiller = $this->GetStringWidth($filler); + if ($wfiller > 0) { + $numfills = floor($fw / $wfiller); + } else { + $numfills = 0; + } if ($numfills > 0) { $rowfill = str_repeat($filler, $numfills); } else { @@ -26773,7 +21205,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } } $maxpage = max($maxpage, $page_last); - if (!$this->empty_string($page)) { + if (!TCPDF_STATIC::empty_string($page)) { for ($p = $page_first; $p <= $page_last; ++$p) { // get page data $temppage = $this->getPageBuffer($p); @@ -26788,15 +21220,15 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } else { $np = $n; } - $na = $this->formatTOCPageNumber(($this->starting_page_number + $np - 1)); - $nu = $this->UTF8ToUTF16BE($na, false); + $na = TCPDF_STATIC::formatTOCPageNumber(($this->starting_page_number + $np - 1)); + $nu = TCPDF_FONTS::UTF8ToUTF16BE($na, false, $this->isunicode, $this->CurrentFont); // replace aliases with numbers foreach ($pnalias['u'] as $u) { $sfill = str_repeat($filler, max(0, (strlen($u) - strlen($nu.' ')))); if ($this->rtl) { - $nr = $nu.$this->UTF8ToUTF16BE(' '.$sfill); + $nr = $nu.TCPDF_FONTS::UTF8ToUTF16BE(' '.$sfill, false, $this->isunicode, $this->CurrentFont); } else { - $nr = $this->UTF8ToUTF16BE($sfill.' ').$nu; + $nr = TCPDF_FONTS::UTF8ToUTF16BE($sfill.' ', false, $this->isunicode, $this->CurrentFont).$nu; } $temppage = str_replace($u, $nr, $temppage); } @@ -26866,7 +21298,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: foreach ($this->outlines as $key => $outline) { // get HTML template $row = $templates[$outline['l']]; - if ($this->empty_string($page)) { + if (TCPDF_STATIC::empty_string($page)) { $pagenum = $outline['p']; } else { // placemark to be replaced with the correct number @@ -26909,7 +21341,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } } $maxpage = max($maxpage, $page_last); - if (!$this->empty_string($page)) { + if (!TCPDF_STATIC::empty_string($page)) { for ($p = $page_first; $p <= $page_last; ++$p) { // get page data $temppage = $this->getPageBuffer($p); @@ -26924,16 +21356,16 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } else { $np = $n; } - $na = $this->formatTOCPageNumber(($this->starting_page_number + $np - 1)); - $nu = $this->UTF8ToUTF16BE($na, false); + $na = TCPDF_STATIC::formatTOCPageNumber(($this->starting_page_number + $np - 1)); + $nu = TCPDF_FONTS::UTF8ToUTF16BE($na, false, $this->isunicode, $this->CurrentFont); // replace aliases with numbers foreach ($pnalias['u'] as $u) { if ($correct_align) { $sfill = str_repeat($filler, (strlen($u) - strlen($nu.' '))); if ($this->rtl) { - $nr = $nu.$this->UTF8ToUTF16BE(' '.$sfill); + $nr = $nu.TCPDF_FONTS::UTF8ToUTF16BE(' '.$sfill, false, $this->isunicode, $this->CurrentFont); } else { - $nr = $this->UTF8ToUTF16BE($sfill.' ').$nu; + $nr = TCPDF_FONTS::UTF8ToUTF16BE($sfill.' ', false, $this->isunicode, $this->CurrentFont).$nu; } } else { $nr = $nu; @@ -26982,7 +21414,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $this->start_transaction_page = $this->page; $this->start_transaction_y = $this->y; // clone current object - $this->objcopy = $this->objclone($this); + $this->objcopy = TCPDF_STATIC::objclone($this); } /** @@ -27026,48 +21458,6 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: return $this; } - /** - * Creates a copy of a class object - * @param $object (object) class object to be cloned - * @return cloned object - * @public - * @since 4.5.029 (2009-03-19) - */ - public function objclone($object) { - if (($object instanceof Imagick) AND (version_compare(phpversion('imagick'), '3.0.1') !== 1)) { - // on the versions after 3.0.1 the clone() method was deprecated in favour of clone keyword - return @$object->clone(); - } - return @clone($object); - } - - /** - * Determine whether a string is empty. - * @param $str (string) string to be checked - * @return boolean true if string is empty - * @public - * @since 4.5.044 (2009-04-16) - */ - public function empty_string($str) { - return (is_null($str) OR (is_string($str) AND (strlen($str) == 0))); - } - - /** - * Find position of last occurrence of a substring in a string - * @param $haystack (string) The string to search in. - * @param $needle (string) substring to search. - * @param $offset (int) May be specified to begin searching an arbitrary number of characters into the string. - * @return Returns the position where the needle exists. Returns FALSE if the needle was not found. - * @public - * @since 4.8.038 (2010-03-13) - */ - public function revstrpos($haystack, $needle, $offset = 0) { - $length = strlen($haystack); - $offset = ($offset > 0)?($length - $offset):abs($offset); - $pos = strpos(strrev($haystack), strrev($needle), $offset); - return ($pos === false)?false:($length - $pos - strlen($needle)); - } - // --- MULTI COLUMNS METHODS ----------------------- /** @@ -27089,7 +21479,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: if (($width == 0) OR ($width > $maxwidth)) { $width = $maxwidth; } - if ($this->empty_string($y)) { + if (TCPDF_STATIC::empty_string($y)) { $y = $this->y; } // space between columns @@ -27185,7 +21575,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: // fix for HTML mode $this->newline = true; // print HTML table header (if any) - if ((!$this->empty_string($this->thead)) AND (!$this->inthead)) { + if ((!TCPDF_STATIC::empty_string($this->thead)) AND (!$this->inthead)) { if ($enable_thead) { // print table header $this->writeHTML($this->thead, false, false, false, false, ''); @@ -27230,17 +21620,6 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: return $this->num_columns; } - /** - * Serialize an array of parameters to be used with TCPDF tag in HTML code. - * @param $pararray (array) parameters array - * @return sting containing serialized data - * @public - * @since 4.9.006 (2010-04-02) - */ - public function serializeTCPDFtagParameters($pararray) { - return urlencode(serialize($pararray)); - } - /** * Set Text rendering mode. * @param $stroke (int) outline size in user units (0 = disable). @@ -27370,7 +21749,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: if ($numchars <= $charmin) { return $word; } - $word_string = $this->UTF8ArrSubString($word); + $word_string = TCPDF_FONTS::UTF8ArrSubString($word, '', '', $this->isunicode); // some words will be returned as-is $pattern = '/^([a-zA-Z0-9_\.\-]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/'; if (preg_match($pattern, $word_string) > 0) { @@ -27383,7 +21762,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: return $word; } if (isset($dictionary[$word_string])) { - return $this->UTF8StringToArray($dictionary[$word_string]); + return TCPDF_FONTS::UTF8StringToArray($dictionary[$word_string], $this->isunicode, $this->CurrentFont); } // suround word with '_' characters $tmpword = array_merge(array(95), $word, array(95)); @@ -27392,9 +21771,9 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: for ($pos = 0; $pos < $maxpos; ++$pos) { $imax = min(($tmpnumchars - $pos), $charmax); for ($i = $charmin; $i <= $imax; ++$i) { - $subword = strtolower($this->UTF8ArrSubString($tmpword, $pos, $pos + $i)); + $subword = strtolower(TCPDF_FONTS::UTF8ArrSubString($tmpword, $pos, ($pos + $i), $this->isunicode)); if (isset($patterns[$subword])) { - $pattern = $this->UTF8StringToArray($patterns[$subword]); + $pattern = TCPDF_FONTS::UTF8StringToArray($patterns[$subword], $this->isunicode, $this->CurrentFont); $pattern_length = count($pattern); $digits = 1; for ($j = 0; $j < $pattern_length; ++$j) { @@ -27406,7 +21785,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $zero = $pos + $j - $digits; } if (!isset($hyphenword[$zero]) OR ($hyphenword[$zero] != $pattern[$j])) { - $hyphenword[$zero] = $this->unichr($pattern[$j]); + $hyphenword[$zero] = TCPDF_FONTS::unichr($pattern[$j], $this->isunicode); } ++$digits; } @@ -27426,39 +21805,6 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: return $word; } - /** - * Returns an array of hyphenation patterns. - * @param $file (string) TEX file containing hypenation patterns. TEX pattrns can be downloaded from http://www.ctan.org/tex-archive/language/hyph-utf8/tex/generic/hyph-utf8/patterns/ - * @return array of hyphenation patterns - * @author Nicola Asuni - * @since 4.9.012 (2010-04-12) - * @public - */ - public function getHyphenPatternsFromTEX($file) { - // TEX patterns are available at: - // http://www.ctan.org/tex-archive/language/hyph-utf8/tex/generic/hyph-utf8/patterns/ - $data = file_get_contents($file); - $patterns = array(); - // remove comments - $data = preg_replace('/\%[^\n]*/', '', $data); - // extract the patterns part - preg_match('/\\\\patterns\{([^\}]*)\}/i', $data, $matches); - $data = trim(substr($matches[0], 10, -1)); - // extract each pattern - $patterns_array = preg_split('/[\s]+/', $data); - // create new language array of patterns - $patterns = array(); - foreach($patterns_array as $val) { - if (!$this->empty_string($val)) { - $val = trim($val); - $val = str_replace('\'', '\\\'', $val); - $key = preg_replace('/[0-9]+/', '', $val); - $patterns[$key] = $val; - } - } - return $patterns; - } - /** * Returns text with soft hyphens. * @param $text (string) text to process @@ -27479,18 +21825,18 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $txtarr = array(); // text to be returned $intag = false; // true if we are inside an HTML tag if (!is_array($patterns)) { - $patterns = $this->getHyphenPatternsFromTEX($patterns); + $patterns = TCPDF_STATIC::getHyphenPatternsFromTEX($patterns); } // get array of characters - $unichars = $this->UTF8StringToArray($text); + $unichars = TCPDF_FONTS::UTF8StringToArray($text, $this->isunicode, $this->CurrentFont); // for each char foreach ($unichars as $char) { - if ((!$intag) AND $this->unicode->uni_type[$char] == 'L') { + if ((!$intag) AND TCPDF_FONT_DATA::$uni_type[$char] == 'L') { // letter character $word[] = $char; } else { // other type of character - if (!$this->empty_string($word)) { + if (!TCPDF_STATIC::empty_string($word)) { // hypenate the word $txtarr = array_merge($txtarr, $this->hyphenateWord($word, $patterns, $dictionary, $leftmin, $rightmin, $charmin, $charmax)); $word = array(); @@ -27505,12 +21851,12 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } } } - if (!$this->empty_string($word)) { + if (!TCPDF_STATIC::empty_string($word)) { // hypenate the word $txtarr = array_merge($txtarr, $this->hyphenateWord($word, $patterns, $dictionary, $leftmin, $rightmin, $charmin, $charmax)); } // convert char array to string and return - return $this->UTF8ArrSubString($txtarr); + return TCPDF_FONTS::UTF8ArrSubString($txtarr, '', '', $this->isunicode); } /** @@ -27523,97 +21869,6 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $this->rasterize_vector_images = $mode; } - /** - * Get the Path-Painting Operators. - * @param $style (string) Style of rendering. Possible values are: - *
                      - *
                    • S or D: Stroke the path.
                    • - *
                    • s or d: Close and stroke the path.
                    • - *
                    • f or F: Fill the path, using the nonzero winding number rule to determine the region to fill.
                    • - *
                    • f* or F*: Fill the path, using the even-odd rule to determine the region to fill.
                    • - *
                    • B or FD or DF: Fill and then stroke the path, using the nonzero winding number rule to determine the region to fill.
                    • - *
                    • B* or F*D or DF*: Fill and then stroke the path, using the even-odd rule to determine the region to fill.
                    • - *
                    • b or fd or df: Close, fill, and then stroke the path, using the nonzero winding number rule to determine the region to fill.
                    • - *
                    • b or f*d or df*: Close, fill, and then stroke the path, using the even-odd rule to determine the region to fill.
                    • - *
                    • CNZ: Clipping mode using the even-odd rule to determine which regions lie inside the clipping path.
                    • - *
                    • CEO: Clipping mode using the nonzero winding number rule to determine which regions lie inside the clipping path
                    • - *
                    • n: End the path object without filling or stroking it.
                    • - *
                    - * @param $default (string) default style - * @author Nicola Asuni - * @since 5.0.000 (2010-04-30) - * @protected - */ - protected function getPathPaintOperator($style, $default='S') { - $op = ''; - switch($style) { - case 'S': - case 'D': { - $op = 'S'; - break; - } - case 's': - case 'd': { - $op = 's'; - break; - } - case 'f': - case 'F': { - $op = 'f'; - break; - } - case 'f*': - case 'F*': { - $op = 'f*'; - break; - } - case 'B': - case 'FD': - case 'DF': { - $op = 'B'; - break; - } - case 'B*': - case 'F*D': - case 'DF*': { - $op = 'B*'; - break; - } - case 'b': - case 'fd': - case 'df': { - $op = 'b'; - break; - } - case 'b*': - case 'f*d': - case 'df*': { - $op = 'b*'; - break; - } - case 'CNZ': { - $op = 'W n'; - break; - } - case 'CEO': { - $op = 'W* n'; - break; - } - case 'n': { - $op = 'n'; - break; - } - default: { - if (!empty($default)) { - $op = $this->getPathPaintOperator($default, ''); - } else { - $op = ''; - } - } - } - return $op; - } - /** * Enable or disable default option for font subsetting. * @param $enable (boolean) if true enable font subsetting by default. @@ -27863,7 +22118,13 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: // check page for no-write regions and adapt page margins if necessary list($x, $y) = $this->checkPageRegions($h, $x, $y); $ow = $this->xobjects[$id]['w']; + if ($ow <= 0) { + $ow = 1; + } $oh = $this->xobjects[$id]['h']; + if ($oh <= 0) { + $oh = 1; + } // calculate template width and height on document if (($w <= 0) AND ($h <= 0)) { $w = $ow; @@ -27904,8 +22165,8 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: // print XObject Template + Transformation matrix $this->StartTransform(); // translate and scale - $sx = ($w / $this->xobjects[$id]['w']); - $sy = ($h / $this->xobjects[$id]['h']); + $sx = ($w / $ow); + $sy = ($h / $oh); $tm = array(); $tm[0] = $sx; $tm[1] = 0; @@ -27921,10 +22182,10 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: if (!empty($this->xobjects[$id]['annotations'])) { foreach ($this->xobjects[$id]['annotations'] as $annot) { // transform original coordinates - $coordlt = $this->getTransformationMatrixProduct($tm, array(1, 0, 0, 1, ($annot['x'] * $this->k), (-$annot['y'] * $this->k))); + $coordlt = TCPDF_STATIC::getTransformationMatrixProduct($tm, array(1, 0, 0, 1, ($annot['x'] * $this->k), (-$annot['y'] * $this->k))); $ax = ($coordlt[4] / $this->k); $ay = ($this->h - $h - ($coordlt[5] / $this->k)); - $coordrb = $this->getTransformationMatrixProduct($tm, array(1, 0, 0, 1, (($annot['x'] + $annot['w']) * $this->k), ((-$annot['y'] - $annot['h']) * $this->k))); + $coordrb = TCPDF_STATIC::getTransformationMatrixProduct($tm, array(1, 0, 0, 1, (($annot['x'] + $annot['w']) * $this->k), ((-$annot['y'] - $annot['h']) * $this->k))); $aw = ($coordrb[4] / $this->k) - $ax; $ah = ($this->h - $h - ($coordrb[5] / $this->k)) - $ay; $this->Annotation($ax, $ay, $aw, $ah, $annot['text'], $annot['opt'], $annot['spaces']); @@ -28197,9 +22458,9 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $svgdata = substr($file, 1); } else { // SVG file $this->svgdir = dirname($file); - $svgdata = file_get_contents($file); + $svgdata = TCPDF_STATIC::fileGetContents($file); } - if ($svgdata === false) { + if ($svgdata === FALSE) { $this->Error('SVG file not found: '.$file); } if ($x === '') { @@ -28272,6 +22533,12 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } } } + if ($ow <= 0) { + $ow = 1; + } + if ($oh <= 0) { + $oh = 1; + } // calculate image width and height on document if (($w <= 0) AND ($h <= 0)) { // convert image size to document unit @@ -28481,121 +22748,6 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $this->cell_padding = $cell_padding; } - /** - * Get the tranformation matrix from SVG transform attribute - * @param $attribute (string) transformation - * @return array of transformations - * @author Nicola Asuni - * @since 5.0.000 (2010-05-02) - * @protected - */ - protected function getSVGTransformMatrix($attribute) { - // identity matrix - $tm = array(1, 0, 0, 1, 0, 0); - $transform = array(); - if (preg_match_all('/(matrix|translate|scale|rotate|skewX|skewY)[\s]*\(([^\)]+)\)/si', $attribute, $transform, PREG_SET_ORDER) > 0) { - foreach ($transform as $key => $data) { - if (!empty($data[2])) { - $a = 1; - $b = 0; - $c = 0; - $d = 1; - $e = 0; - $f = 0; - $regs = array(); - switch ($data[1]) { - case 'matrix': { - if (preg_match('/([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)/si', $data[2], $regs)) { - $a = $regs[1]; - $b = $regs[2]; - $c = $regs[3]; - $d = $regs[4]; - $e = $regs[5]; - $f = $regs[6]; - } - break; - } - case 'translate': { - if (preg_match('/([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)/si', $data[2], $regs)) { - $e = $regs[1]; - $f = $regs[2]; - } elseif (preg_match('/([a-z0-9\-\.]+)/si', $data[2], $regs)) { - $e = $regs[1]; - } - break; - } - case 'scale': { - if (preg_match('/([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)/si', $data[2], $regs)) { - $a = $regs[1]; - $d = $regs[2]; - } elseif (preg_match('/([a-z0-9\-\.]+)/si', $data[2], $regs)) { - $a = $regs[1]; - $d = $a; - } - break; - } - case 'rotate': { - if (preg_match('/([0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)[\,\s]+([a-z0-9\-\.]+)/si', $data[2], $regs)) { - $ang = deg2rad($regs[1]); - $x = $regs[2]; - $y = $regs[3]; - $a = cos($ang); - $b = sin($ang); - $c = -$b; - $d = $a; - $e = ($x * (1 - $a)) - ($y * $c); - $f = ($y * (1 - $d)) - ($x * $b); - } elseif (preg_match('/([0-9\-\.]+)/si', $data[2], $regs)) { - $ang = deg2rad($regs[1]); - $a = cos($ang); - $b = sin($ang); - $c = -$b; - $d = $a; - $e = 0; - $f = 0; - } - break; - } - case 'skewX': { - if (preg_match('/([0-9\-\.]+)/si', $data[2], $regs)) { - $c = tan(deg2rad($regs[1])); - } - break; - } - case 'skewY': { - if (preg_match('/([0-9\-\.]+)/si', $data[2], $regs)) { - $b = tan(deg2rad($regs[1])); - } - break; - } - } - $tm = $this->getTransformationMatrixProduct($tm, array($a, $b, $c, $d, $e, $f)); - } - } - } - return $tm; - } - - /** - * Get the product of two SVG tranformation matrices - * @param $ta (array) first SVG tranformation matrix - * @param $tb (array) second SVG tranformation matrix - * @return transformation array - * @author Nicola Asuni - * @since 5.0.000 (2010-05-02) - * @protected - */ - protected function getTransformationMatrixProduct($ta, $tb) { - $tm = array(); - $tm[0] = ($ta[0] * $tb[0]) + ($ta[2] * $tb[1]); - $tm[1] = ($ta[1] * $tb[0]) + ($ta[3] * $tb[1]); - $tm[2] = ($ta[0] * $tb[2]) + ($ta[2] * $tb[3]); - $tm[3] = ($ta[1] * $tb[2]) + ($ta[3] * $tb[3]); - $tm[4] = ($ta[0] * $tb[4]) + ($ta[2] * $tb[5]) + $ta[4]; - $tm[5] = ($ta[1] * $tb[4]) + ($ta[3] * $tb[5]) + $ta[5]; - return $tm; - } - /** * Convert SVG transformation matrix to PDF. * @param $tm (array) original SVG transformation matrix @@ -28664,10 +22816,10 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $this->setAlpha($svgstyle['opacity'], 'Normal', $svgstyle['opacity'], false); } // color - $fill_color = $this->convertHTMLColorToDec($svgstyle['color']); + $fill_color = TCPDF_COLORS::convertHTMLColorToDec($svgstyle['color'], $this->spot_colors); $this->SetFillColorArray($fill_color); // text color - $text_color = $this->convertHTMLColorToDec($svgstyle['text-color']); + $text_color = TCPDF_COLORS::convertHTMLColorToDec($svgstyle['text-color'], $this->spot_colors); $this->SetTextColorArray($text_color); // clip if (preg_match('/rect\(([a-z0-9\-\.]*)[\s]*([a-z0-9\-\.]*)[\s]*([a-z0-9\-\.]*)[\s]*([a-z0-9\-\.]*)\)/si', $svgstyle['clip'], $regs)) { @@ -28790,7 +22942,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $this->Gradient($gradient['type'], $gradient['coords'], $gradient['stops'], array(), false); } } elseif ($svgstyle['fill'] != 'none') { - $fill_color = $this->convertHTMLColorToDec($svgstyle['fill']); + $fill_color = TCPDF_COLORS::convertHTMLColorToDec($svgstyle['fill'], $this->spot_colors); if ($svgstyle['fill-opacity'] != 1) { $this->setAlpha($this->alpha['CA'], 'Normal', $svgstyle['fill-opacity'], false); } @@ -28807,7 +22959,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $this->setAlpha($svgstyle['stroke-opacity'], 'Normal', $this->alpha['ca'], false); } $stroke_style = array( - 'color' => $this->convertHTMLColorToDec($svgstyle['stroke']), + 'color' => TCPDF_COLORS::convertHTMLColorToDec($svgstyle['stroke'], $this->spot_colors), 'width' => $this->getHTMLUnitToUnits($svgstyle['stroke-width'], 0, $this->svgunit, false), 'cap' => $svgstyle['stroke-linecap'], 'join' => $svgstyle['stroke-linejoin'] @@ -28859,7 +23011,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $font_stretch = $svgstyle['font-stretch']; $font_spacing = $svgstyle['letter-spacing']; } - $font_size = $this->getHTMLUnitToUnits($font_size, $prevsvgstyle['font-size'], $this->svgunit, false) * $this->k; + $font_size = $this->getHTMLFontUnits($font_size, $this->svgstyles[0]['font-size'], $prevsvgstyle['font-size'], $this->svgunit); $font_stretch = $this->getCSSFontStretching($font_stretch, $svgstyle['font-stretch']); $font_spacing = $this->getCSSFontSpacing($font_spacing, $svgstyle['letter-spacing']); switch ($font_style) { @@ -28931,7 +23083,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: return; } // set fill/stroke style - $op = $this->getPathPaintOperator($style, ''); + $op = TCPDF_STATIC::getPathPaintOperator($style, ''); if (empty($op)) { return; } @@ -29226,8 +23378,8 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $cx = ($cax * $cos_ang) - ($cay * $sin_ang) + (($x0 + $x) / 2); $cy = ($cax * $sin_ang) + ($cay * $cos_ang) + (($y0 + $y) / 2); // get angles - $angs = $this->getVectorsAngle(1, 0, (($xa - $cax) / $rx), (($cay - $ya) / $ry)); - $dang = $this->getVectorsAngle((($xa - $cax) / $rx), (($ya - $cay) / $ry), ((-$xa - $cax) / $rx), ((-$ya - $cay) / $ry)); + $angs = TCPDF_STATIC::getVectorsAngle(1, 0, (($xa - $cax) / $rx), (($cay - $ya) / $ry)); + $dang = TCPDF_STATIC::getVectorsAngle((($xa - $cax) / $rx), (($ya - $cay) / $ry), ((-$xa - $cax) / $rx), ((-$ya - $cay) / $ry)); if (($fs == 0) AND ($dang > 0)) { $dang -= (2 * M_PI); } elseif (($fs == 1) AND ($dang < 0)) { @@ -29278,30 +23430,6 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: return array($xmin, $ymin, ($xmax - $xmin), ($ymax - $ymin)); } - /** - * Returns the angle in radiants between two vectors - * @param $x1 (int) X coordinate of first vector point - * @param $y1 (int) Y coordinate of first vector point - * @param $x2 (int) X coordinate of second vector point - * @param $y2 (int) Y coordinate of second vector point - * @author Nicola Asuni - * @since 5.0.000 (2010-05-04) - * @protected - */ - protected function getVectorsAngle($x1, $y1, $x2, $y2) { - $dprod = ($x1 * $x2) + ($y1 * $y2); - $dist1 = sqrt(($x1 * $x1) + ($y1 * $y1)); - $dist2 = sqrt(($x2 * $x2) + ($y2 * $y2)); - $angle = acos($dprod / ($dist1 * $dist2)); - if (is_nan($angle)) { - $angle = M_PI; - } - if ((($x1 * $y2) - ($x2 * $y1)) < 0) { - $angle *= -1; - } - return $angle; - } - /** * Sets the opening SVG element handler function for the XML parser. (*** TO BE COMPLETED ***) * @param $parser (resource) The first parameter, parser, is a reference to the XML parser calling the handler. @@ -29337,23 +23465,23 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: // default fill attribute for clipping $attribs['fill'] = 'none'; } - if (isset($attribs['style']) AND !$this->empty_string($attribs['style'])) { + if (isset($attribs['style']) AND !TCPDF_STATIC::empty_string($attribs['style'])) { // fix style for regular expression $attribs['style'] = ';'.$attribs['style']; } foreach ($prev_svgstyle as $key => $val) { - if (in_array($key, $this->svginheritprop)) { + if (in_array($key, TCPDF_IMAGES::$svginheritprop)) { // inherit previous value $svgstyle[$key] = $val; } - if (isset($attribs[$key]) AND !$this->empty_string($attribs[$key])) { + if (isset($attribs[$key]) AND !TCPDF_STATIC::empty_string($attribs[$key])) { // specific attribute settings if ($attribs[$key] == 'inherit') { $svgstyle[$key] = $val; } else { $svgstyle[$key] = $attribs[$key]; } - } elseif (isset($attribs['style']) AND !$this->empty_string($attribs['style'])) { + } elseif (isset($attribs['style']) AND !TCPDF_STATIC::empty_string($attribs['style'])) { // CSS style syntax $attrval = array(); if (preg_match('/[;\"\s]{1}'.$key.'[\s]*:[\s]*([^;\"]*)/si', $attribs['style'], $attrval) AND isset($attrval[1])) { @@ -29373,7 +23501,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $tm = array(1,0,0,1,0,0); } if (isset($attribs['transform']) AND !empty($attribs['transform'])) { - $tm = $this->getTransformationMatrixProduct($tm, $this->getSVGTransformMatrix($attribs['transform'])); + $tm = TCPDF_STATIC::getTransformationMatrixProduct($tm, TCPDF_STATIC::getSVGTransformMatrix($attribs['transform'])); } $svgstyle['transfmatrix'] = $tm; $invisible = false; @@ -29444,7 +23572,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $x2 = (isset($attribs['x2'])?$attribs['x2']:'100'); $y2 = (isset($attribs['y2'])?$attribs['y2']:'0'); if (isset($attribs['gradientTransform'])) { - $this->svggradients[$this->svggradientid]['gradientTransform'] = $this->getSVGTransformMatrix($attribs['gradientTransform']); + $this->svggradients[$this->svggradientid]['gradientTransform'] = TCPDF_STATIC::getSVGTransformMatrix($attribs['gradientTransform']); } $this->svggradients[$this->svggradientid]['coords'] = array($x1, $y1, $x2, $y2); if (isset($attribs['xlink:href']) AND !empty($attribs['xlink:href'])) { @@ -29483,7 +23611,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $fy = (isset($attribs['fy']) ? $attribs['fy'] : $cy); $r = (isset($attribs['r']) ? $attribs['r'] : 0.5); if (isset($attribs['gradientTransform'])) { - $this->svggradients[$this->svggradientid]['gradientTransform'] = $this->getSVGTransformMatrix($attribs['gradientTransform']); + $this->svggradients[$this->svggradientid]['gradientTransform'] = TCPDF_STATIC::getSVGTransformMatrix($attribs['gradientTransform']); } $this->svggradients[$this->svggradientid]['coords'] = array($cx, $cy, $fx, $fy, $r); if (isset($attribs['xlink:href']) AND !empty($attribs['xlink:href'])) { @@ -29502,7 +23630,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $offset /= 100; } } - $stop_color = isset($svgstyle['stop-color'])?$this->convertHTMLColorToDec($svgstyle['stop-color']):'black'; + $stop_color = isset($svgstyle['stop-color'])?TCPDF_COLORS::convertHTMLColorToDec($svgstyle['stop-color'], $this->spot_colors):'black'; $opacity = isset($svgstyle['stop-opacity'])?$svgstyle['stop-opacity']:1; $this->svggradients[$this->svggradientid]['stops'][] = array('offset' => $offset, 'color' => $stop_color, 'opacity' => $opacity); break; @@ -29707,7 +23835,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: $img = '@'.base64_decode(substr($img, strlen($m[0]))); } else { // fix image path - if (!$this->empty_string($this->svgdir) AND (($img{0} == '.') OR (basename($img) == $img))) { + if (!TCPDF_STATIC::empty_string($this->svgdir) AND (($img{0} == '.') OR (basename($img) == $img))) { // replace relative path with full server path $img = $this->svgdir.'/'.$img; } @@ -29729,7 +23857,7 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } } // get image type - $imgtype = $this->getImageFileType($img); + $imgtype = TCPDF_IMAGES::getImageFileType($img); if (($imgtype == 'eps') OR ($imgtype == 'ai')) { $this->ImageEps($img, $x, $y, $w, $h); } elseif ($imgtype == 'svg') { @@ -29757,6 +23885,9 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } else { $x = 0; } + if (isset($attribs['dx'])) { + $x += $this->getHTMLUnitToUnits($attribs['dx'], 0, $this->svgunit, false); + } if (isset($attribs['y'])) { $y = $this->getHTMLUnitToUnits($attribs['y'], 0, $this->svgunit, false); } elseif ($name == 'tspan') { @@ -29764,6 +23895,9 @@ Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: } else { $y = 0; } + if (isset($attribs['dy'])) { + $y += $this->getHTMLUnitToUnits($attribs['dy'], 0, $this->svgunit, false); + } $svgstyle['text-color'] = $svgstyle['fill']; $this->svgtext = ''; if (isset($svgstyle['text-anchor'])) { diff --git a/lib/tcpdf/tcpdf_autoconfig.php b/lib/tcpdf/tcpdf_autoconfig.php new file mode 100644 index 00000000000..2fc1da6da58 --- /dev/null +++ b/lib/tcpdf/tcpdf_autoconfig.php @@ -0,0 +1,233 @@ +. +// +// See LICENSE.TXT file for more information. +// ------------------------------------------------------------------- +// +// Description : Try to automatically configure some TCPDF +// constants if not defined. +// +//============================================================+ + +/** + * @file + * Try to automatically configure some TCPDF constants if not defined. + * @package com.tecnick.tcpdf + * @version 1.0.000 + */ + +// DOCUMENT_ROOT fix for IIS Webserver +if ((!isset($_SERVER['DOCUMENT_ROOT'])) OR (empty($_SERVER['DOCUMENT_ROOT']))) { + if(isset($_SERVER['SCRIPT_FILENAME'])) { + $_SERVER['DOCUMENT_ROOT'] = str_replace( '\\', '/', substr($_SERVER['SCRIPT_FILENAME'], 0, 0-strlen($_SERVER['PHP_SELF']))); + } elseif(isset($_SERVER['PATH_TRANSLATED'])) { + $_SERVER['DOCUMENT_ROOT'] = str_replace( '\\', '/', substr(str_replace('\\\\', '\\', $_SERVER['PATH_TRANSLATED']), 0, 0-strlen($_SERVER['PHP_SELF']))); + } else { + // define here your DOCUMENT_ROOT path if the previous fails (e.g. '/var/www') + $_SERVER['DOCUMENT_ROOT'] = '/'; + } +} +$_SERVER['DOCUMENT_ROOT'] = str_replace('//', '/', $_SERVER['DOCUMENT_ROOT']); +if (substr($_SERVER['DOCUMENT_ROOT'], -1) != '/') { + $_SERVER['DOCUMENT_ROOT'] .= '/'; +} + +// Load main configuration file only if the K_TCPDF_EXTERNAL_CONFIG constant is set to false. +if (!defined('K_TCPDF_EXTERNAL_CONFIG') OR !K_TCPDF_EXTERNAL_CONFIG) { + // define a list of default config files in order of priority + $tcpdf_config_files = array(dirname(__FILE__).'/config/tcpdf_config.php', '/etc/php-tcpdf/tcpdf_config.php', '/etc/tcpdf/tcpdf_config.php', '/etc/tcpdf_config.php'); + foreach ($tcpdf_config_files as $tcpdf_config) { + if (@file_exists($tcpdf_config) AND is_readable($tcpdf_config)) { + require_once($tcpdf_config); + break; + } + } +} + +if (!defined('K_PATH_MAIN')) { + define ('K_PATH_MAIN', dirname(__FILE__).'/'); +} + +if (!defined('K_PATH_FONTS')) { + define ('K_PATH_FONTS', K_PATH_MAIN.'fonts/'); +} + +if (!defined('K_PATH_URL')) { + $k_path_url = K_PATH_MAIN; // default value for console mode + if (isset($_SERVER['HTTP_HOST']) AND (!empty($_SERVER['HTTP_HOST']))) { + if(isset($_SERVER['HTTPS']) AND (!empty($_SERVER['HTTPS'])) AND (strtolower($_SERVER['HTTPS']) != 'off')) { + $k_path_url = 'https://'; + } else { + $k_path_url = 'http://'; + } + $k_path_url .= $_SERVER['HTTP_HOST']; + $k_path_url .= str_replace( '\\', '/', substr(K_PATH_MAIN, (strlen($_SERVER['DOCUMENT_ROOT']) - 1))); + } + define ('K_PATH_URL', $k_path_url); +} + +if (!defined('K_PATH_IMAGES')) { + $tcpdf_images_dirs = array(K_PATH_MAIN.'examples/images/', K_PATH_MAIN.'images/', '/usr/share/doc/php-tcpdf/examples/images/', '/usr/share/doc/tcpdf/examples/images/', '/usr/share/doc/php/tcpdf/examples/images/', '/var/www/tcpdf/images/', '/var/www/html/tcpdf/images/', '/usr/local/apache2/htdocs/tcpdf/images/', K_PATH_MAIN); + foreach ($tcpdf_images_dirs as $tcpdf_images_path) { + if (@file_exists($tcpdf_images_path)) { + break; + } + } + define ('K_PATH_IMAGES', $tcpdf_images_path); +} + +if (!defined('PDF_HEADER_LOGO')) { + $tcpdf_header_logo = ''; + if (@file_exists(K_PATH_IMAGES.'tcpdf_logo.jpg')) { + $tcpdf_header_logo = 'tcpdf_logo.jpg'; + } + define ('PDF_HEADER_LOGO', $tcpdf_header_logo); +} + +if (!defined('PDF_HEADER_LOGO_WIDTH')) { + if (!empty($tcpdf_header_logo)) { + define ('PDF_HEADER_LOGO_WIDTH', 30); + } else { + define ('PDF_HEADER_LOGO_WIDTH', 0); + } +} + +if (!defined('K_PATH_CACHE')) { + define ('K_PATH_CACHE', sys_get_temp_dir().'/'); +} + +if (!defined('K_BLANK_IMAGE')) { + define ('K_BLANK_IMAGE', '_blank.png'); +} + +if (!defined('PDF_PAGE_FORMAT')) { + define ('PDF_PAGE_FORMAT', 'A4'); +} + +if (!defined('PDF_PAGE_ORIENTATION')) { + define ('PDF_PAGE_ORIENTATION', 'P'); +} + +if (!defined('PDF_CREATOR')) { + define ('PDF_CREATOR', 'TCPDF'); +} + +if (!defined('PDF_AUTHOR')) { + define ('PDF_AUTHOR', 'TCPDF'); +} + +if (!defined('PDF_HEADER_TITLE')) { + define ('PDF_HEADER_TITLE', 'TCPDF Example'); +} + +if (!defined('PDF_HEADER_STRING')) { + define ('PDF_HEADER_STRING', "by Nicola Asuni - Tecnick.com\nwww.tcpdf.org"); +} + +if (!defined('PDF_UNIT')) { + define ('PDF_UNIT', 'mm'); +} + +if (!defined('PDF_MARGIN_HEADER')) { + define ('PDF_MARGIN_HEADER', 5); +} + +if (!defined('PDF_MARGIN_FOOTER')) { + define ('PDF_MARGIN_FOOTER', 10); +} + +if (!defined('PDF_MARGIN_TOP')) { + define ('PDF_MARGIN_TOP', 27); +} + +if (!defined('PDF_MARGIN_BOTTOM')) { + define ('PDF_MARGIN_BOTTOM', 25); +} + +if (!defined('PDF_MARGIN_LEFT')) { + define ('PDF_MARGIN_LEFT', 15); +} + +if (!defined('PDF_MARGIN_RIGHT')) { + define ('PDF_MARGIN_RIGHT', 15); +} + +if (!defined('PDF_FONT_NAME_MAIN')) { + define ('PDF_FONT_NAME_MAIN', 'helvetica'); +} + +if (!defined('PDF_FONT_SIZE_MAIN')) { + define ('PDF_FONT_SIZE_MAIN', 10); +} + +if (!defined('PDF_FONT_NAME_DATA')) { + define ('PDF_FONT_NAME_DATA', 'helvetica'); +} + +if (!defined('PDF_FONT_SIZE_DATA')) { + define ('PDF_FONT_SIZE_DATA', 8); +} + +if (!defined('PDF_FONT_MONOSPACED')) { + define ('PDF_FONT_MONOSPACED', 'courier'); +} + +if (!defined('PDF_IMAGE_SCALE_RATIO')) { + define ('PDF_IMAGE_SCALE_RATIO', 1.25); +} + +if (!defined('HEAD_MAGNIFICATION')) { + define('HEAD_MAGNIFICATION', 1.1); +} + +if (!defined('K_CELL_HEIGHT_RATIO')) { + define('K_CELL_HEIGHT_RATIO', 1.25); +} + +if (!defined('K_TITLE_MAGNIFICATION')) { + define('K_TITLE_MAGNIFICATION', 1.3); +} + +if (!defined('K_SMALL_RATIO')) { + define('K_SMALL_RATIO', 2/3); +} + +if (!defined('K_THAI_TOPCHARS')) { + define('K_THAI_TOPCHARS', true); +} + +if (!defined('K_TCPDF_CALLS_IN_HTML')) { + define('K_TCPDF_CALLS_IN_HTML', true); +} + +if (!defined('K_TCPDF_THROW_EXCEPTION_ERROR')) { + define('K_TCPDF_THROW_EXCEPTION_ERROR', false); +} + +//============================================================+ +// END OF FILE +//============================================================+ diff --git a/lib/tcpdf/barcodes.php b/lib/tcpdf/tcpdf_barcodes_1d.php similarity index 99% rename from lib/tcpdf/barcodes.php rename to lib/tcpdf/tcpdf_barcodes_1d.php index a820d3ffd97..83a44ece9db 100644 --- a/lib/tcpdf/barcodes.php +++ b/lib/tcpdf/tcpdf_barcodes_1d.php @@ -1,13 +1,13 @@ barcode_array = $qrcode->getBarcodeArray(); $this->barcode_array['code'] = $code; break; } case 'PDF417': { // PDF417 (ISO/IEC 15438:2006) - require_once(dirname(__FILE__).'/pdf417.php'); + require_once(dirname(__FILE__).'/include/barcodes/pdf417.php'); if (!isset($mode[1]) OR ($mode[1] === '')) { $aspectratio = 2; // default aspect ratio (width / height) } else { @@ -275,7 +275,7 @@ class TCPDF2DBarcode { break; } case 'QRCODE': { // QR-CODE - require_once(dirname(__FILE__).'/qrcode.php'); + require_once(dirname(__FILE__).'/include/barcodes/qrcode.php'); if (!isset($mode[1]) OR (!in_array($mode[1],array('L','M','Q','H')))) { $mode[1] = 'L'; // Ddefault: Low error correction } diff --git a/lib/tcpdf/tcpdf_parser.php b/lib/tcpdf/tcpdf_parser.php index f17359f2134..d3d8d45c481 100644 --- a/lib/tcpdf/tcpdf_parser.php +++ b/lib/tcpdf/tcpdf_parser.php @@ -1,13 +1,13 @@ * @package com.tecnick.tcpdf * @author Nicola Asuni - * @version 1.0.001 + * @version 1.0.008 */ // include class for decoding filters -require_once(dirname(__FILE__).'/tcpdf_filters.php'); +require_once(dirname(__FILE__).'/include/tcpdf_filters.php'); /** * @class TCPDF_PARSER * This is a PHP class for parsing PDF documents.
                    * @package com.tecnick.tcpdf * @brief This is a PHP class for parsing PDF documents.. - * @version 1.0.001 + * @version 1.0.005 * @author Nicola Asuni - info@tecnick.com */ class TCPDF_PARSER { @@ -77,18 +77,43 @@ class TCPDF_PARSER { */ private $FilterDecoders; + /** + * Array of configuration parameters. + * @private + */ + private $cfg = array( + 'die_for_errors' => false, + 'ignore_filter_decoding_errors' => true, + 'ignore_missing_filter_decoders' => true, + ); + // ----------------------------------------------------------------------------- /** * Parse a PDF document an return an array of objects. * @param $data (string) PDF data to parse. + * @param $cfg (array) Array of configuration parameters: + * 'die_for_errors' : if true termitate the program execution in case of error, otherwise thows an exception; + * 'ignore_filter_decoding_errors' : if true ignore filter decoding errors; + * 'ignore_missing_filter_decoders' : if true ignore missing filter decoding errors. * @public * @since 1.0.000 (2011-05-24) */ - public function __construct($data) { + public function __construct($data, $cfg=array()) { if (empty($data)) { $this->Error('Empty PDF data.'); } + // set configuration parameters + if (isset($cfg['die_for_errors'])) { + $this->cfg['die_for_errors'] = !!$cfg['die_for_errors']; + } + if (isset($cfg['ignore_filter_decoding_errors'])) { + $this->cfg['ignore_filter_decoding_errors'] = !!$cfg['ignore_filter_decoding_errors']; + } + if (isset($cfg['ignore_missing_filter_decoders'])) { + $this->cfg['ignore_missing_filter_decoders'] = !!$cfg['ignore_missing_filter_decoders']; + } + // get PDF content string $this->pdfdata = $data; // get length $pdflen = strlen($this->pdfdata); @@ -99,7 +124,8 @@ class TCPDF_PARSER { // parse all document objects $this->objects = array(); foreach ($this->xref['xref'] as $obj => $offset) { - if (!isset($this->objects[$obj])) { + if (!isset($this->objects[$obj]) AND ($offset > 0)) { + // decode only objects with positive offset $this->objects[$obj] = $this->getIndirectObject($obj, $offset, true); } } @@ -119,7 +145,7 @@ class TCPDF_PARSER { } /** - * Get xref (cross-reference table) and trailer data from PDF document data. + * Get Cross-Reference (xref) table and trailer data from PDF document data. * @param $offset (int) xref offset (if know). * @param $xref (array) previous xref array (if any). * @return Array containing xref and trailer data. @@ -134,17 +160,41 @@ class TCPDF_PARSER { } $matches = array_pop($matches); $startxref = $matches[1]; - } else { - // get the first xref at the specified offset - if (preg_match('/[\r\n]startxref[\s]*[\r\n]+([0-9]+)[\s]*[\r\n]+%%EOF/i', $this->pdfdata, $matches, PREG_OFFSET_CAPTURE, $offset) == 0) { - $this->Error('Unable to find startxref'); - } + } elseif (strpos($this->pdfdata, 'xref', $offset) == $offset) { + // Already pointing at the xref table + $startxref = $offset; + } elseif (preg_match('/([0-9]+[\s][0-9]+[\s]obj)/i', $this->pdfdata, $matches, PREG_OFFSET_CAPTURE, $offset)) { + // Cross-Reference Stream object + $startxref = $offset; + } elseif (preg_match('/[\r\n]startxref[\s]*[\r\n]+([0-9]+)[\s]*[\r\n]+%%EOF/i', $this->pdfdata, $matches, PREG_OFFSET_CAPTURE, $offset)) { + // startxref found $startxref = $matches[1][0]; + } else { + $this->Error('Unable to find startxref'); } // check xref position - if (strpos($this->pdfdata, 'xref', $startxref) != $startxref) { + if (strpos($this->pdfdata, 'xref', $startxref) == $startxref) { + // Cross-Reference + $xref = $this->decodeXref($startxref, $xref); + } else { + // Cross-Reference Stream + $xref = $this->decodeXrefStream($startxref, $xref); + } + if (empty($xref)) { $this->Error('Unable to find xref'); } + return $xref; + } + + /** + * Decode the Cross-Reference section + * @param $startxref (int) Offset at which the xref section starts. + * @param $xref (array) Previous xref array (if any). + * @return Array containing xref and trailer data. + * @protected + * @since 1.0.000 (2011-06-20) + */ + protected function decodeXref($startxref, $xref=array()) { // extract xref data (object indexes and offsets) $xoffset = $startxref + 5; // initialize object number @@ -173,7 +223,7 @@ class TCPDF_PARSER { // get trailer data if (preg_match('/trailer[\s]*<<(.*)>>[\s]*[\r\n]+startxref[\s]*[\r\n]+/isU', $this->pdfdata, $matches, PREG_OFFSET_CAPTURE, $xoffset) > 0) { $trailer_data = $matches[1][0]; - if (!isset($xref['trailer'])) { + if (!isset($xref['trailer']) OR empty($xref['trailer'])) { // get only the last updated version $xref['trailer'] = array(); // parse trailer_data @@ -205,6 +255,211 @@ class TCPDF_PARSER { return $xref; } + /** + * Decode the Cross-Reference Stream section + * @param $startxref (int) Offset at which the xref section starts. + * @param $xref (array) Previous xref array (if any). + * @return Array containing xref and trailer data. + * @protected + * @since 1.0.003 (2013-03-16) + */ + protected function decodeXrefStream($startxref, $xref=array()) { + // try to read Cross-Reference Stream + $xrefobj = $this->getRawObject($startxref); + $xrefcrs = $this->getIndirectObject($xrefobj[1], $startxref, true); + if (!isset($xref['trailer']) OR empty($xref['trailer'])) { + // get only the last updated version + $xref['trailer'] = array(); + $filltrailer = true; + } else { + $filltrailer = false; + } + $valid_crs = false; + $sarr = $xrefcrs[0][1]; + foreach ($sarr as $k => $v) { + if (($v[0] == '/') AND ($v[1] == 'Type') AND (isset($sarr[($k +1)]) AND ($sarr[($k +1)][0] == '/') AND ($sarr[($k +1)][1] == 'XRef'))) { + $valid_crs = true; + } elseif (($v[0] == '/') AND ($v[1] == 'Index') AND (isset($sarr[($k +1)]))) { + // first object number in the subsection + $index_first = intval($sarr[($k +1)][1][0][1]); + // number of entries in the subsection + $index_entries = intval($sarr[($k +1)][1][1][1]); + } elseif (($v[0] == '/') AND ($v[1] == 'Prev') AND (isset($sarr[($k +1)]) AND ($sarr[($k +1)][0] == 'numeric'))) { + // get previous xref offset + $prevxref = intval($sarr[($k +1)][1]); + } elseif (($v[0] == '/') AND ($v[1] == 'W') AND (isset($sarr[($k +1)]))) { + // number of bytes (in the decoded stream) of the corresponding field + $wb = array(); + $wb[0] = intval($sarr[($k +1)][1][0][1]); + $wb[1] = intval($sarr[($k +1)][1][1][1]); + $wb[2] = intval($sarr[($k +1)][1][2][1]); + } elseif (($v[0] == '/') AND ($v[1] == 'DecodeParms') AND (isset($sarr[($k +1)][1]))) { + $decpar = $sarr[($k +1)][1]; + foreach ($decpar as $kdc => $vdc) { + if (($vdc[0] == '/') AND ($vdc[1] == 'Columns') AND (isset($decpar[($kdc +1)]) AND ($decpar[($kdc +1)][0] == 'numeric'))) { + $columns = intval($decpar[($kdc +1)][1]); + } elseif (($vdc[0] == '/') AND ($vdc[1] == 'Predictor') AND (isset($decpar[($kdc +1)]) AND ($decpar[($kdc +1)][0] == 'numeric'))) { + $predictor = intval($decpar[($kdc +1)][1]); + } + } + } elseif ($filltrailer) { + if (($v[0] == '/') AND ($v[1] == 'Size') AND (isset($sarr[($k +1)]) AND ($sarr[($k +1)][0] == 'numeric'))) { + $xref['trailer']['size'] = $sarr[($k +1)][1]; + } elseif (($v[0] == '/') AND ($v[1] == 'Root') AND (isset($sarr[($k +1)]) AND ($sarr[($k +1)][0] == 'ojbref'))) { + $xref['trailer']['root'] = $sarr[($k +1)][1]; + } elseif (($v[0] == '/') AND ($v[1] == 'Info') AND (isset($sarr[($k +1)]) AND ($sarr[($k +1)][0] == 'ojbref'))) { + $xref['trailer']['info'] = $sarr[($k +1)][1]; + } elseif (($v[0] == '/') AND ($v[1] == 'ID') AND (isset($sarr[($k +1)]))) { + $xref['trailer']['id'] = array(); + $xref['trailer']['id'][0] = $sarr[($k +1)][1][0][1]; + $xref['trailer']['id'][1] = $sarr[($k +1)][1][1][1]; + } + } + } + // decode data + if ($valid_crs AND isset($xrefcrs[1][3][0])) { + // number of bytes in a row + $rowlen = ($columns + 1); + // convert the stream into an array of integers + $sdata = unpack('C*', $xrefcrs[1][3][0]); + // split the rows + $sdata = array_chunk($sdata, $rowlen); + // initialize decoded array + $ddata = array(); + // initialize first row with zeros + $prev_row = array_fill (0, $rowlen, 0); + // for each row apply PNG unpredictor + foreach ($sdata as $k => $row) { + // initialize new row + $ddata[$k] = array(); + // get PNG predictor value + $predictor = (10 + $row[0]); + // for each byte on the row + for ($i=1; $i<=$columns; ++$i) { + // new index + $j = ($i - 1); + $row_up = $prev_row[$j]; + if ($i == 1) { + $row_left = 0; + $row_upleft = 0; + } else { + $row_left = $row[($i - 1)]; + $row_upleft = $prev_row[($j - 1)]; + } + switch ($predictor) { + case 10: { // PNG prediction (on encoding, PNG None on all rows) + $ddata[$k][$j] = $row[$i]; + break; + } + case 11: { // PNG prediction (on encoding, PNG Sub on all rows) + $ddata[$k][$j] = (($row[$i] + $row_left) & 0xff); + break; + } + case 12: { // PNG prediction (on encoding, PNG Up on all rows) + $ddata[$k][$j] = (($row[$i] + $row_up) & 0xff); + break; + } + case 13: { // PNG prediction (on encoding, PNG Average on all rows) + $ddata[$k][$j] = (($row[$i] + (($row_left + $row_up) / 2)) & 0xff); + break; + } + case 14: { // PNG prediction (on encoding, PNG Paeth on all rows) + // initial estimate + $p = ($row_left + $row_up - $row_upleft); + // distances + $pa = abs($p - $row_left); + $pb = abs($p - $row_up); + $pc = abs($p - $row_upleft); + $pmin = min($pa, $pb, $pc); + // return minumum distance + switch ($pmin) { + case $pa: { + $ddata[$k][$j] = (($row[$i] + $row_left) & 0xff); + break; + } + case $pb: { + $ddata[$k][$j] = (($row[$i] + $row_up) & 0xff); + break; + } + case $pc: { + $ddata[$k][$j] = (($row[$i] + $row_upleft) & 0xff); + break; + } + } + break; + } + default: { // PNG prediction (on encoding, PNG optimum) + $this->Error('Unknown PNG predictor'); + break; + } + } + } + $prev_row = $ddata[$k]; + } // end for each row + // complete decoding + $sdata = array(); + // for every row + foreach ($ddata as $k => $row) { + // initialize new row + $sdata[$k] = array(0, 0, 0); + if ($wb[0] == 0) { + // default type field + $sdata[$k][0] = 1; + } + $i = 0; // count bytes on the row + // for every column + for ($c = 0; $c < 3; ++$c) { + // for every byte on the column + for ($b = 0; $b < $wb[$c]; ++$b) { + $sdata[$k][$c] += ($row[$i] << (($wb[$c] - 1 - $b) * 8)); + ++$i; + } + } + } + $ddata = array(); + // fill xref + if (isset($index_first)) { + $obj_num = $index_first; + } else { + $obj_num = 0; + } + foreach ($sdata as $k => $row) { + switch ($row[0]) { + case 0: { // (f) linked list of free objects + ++$obj_num; + break; + } + case 1: { // (n) objects that are in use but are not compressed + // create unique object index: [object number]_[generation number] + $index = $obj_num.'_'.$row[2]; + // check if object already exist + if (!isset($xref['xref'][$index])) { + // store object offset position + $xref['xref'][$index] = $row[1]; + } + ++$obj_num; + break; + } + case 2: { // compressed objects + // $row[1] = object number of the object stream in which this object is stored + // $row[2] = index of this object within the object stream + $index = $row[1].'_0_'.$row[2]; + $xref['xref'][$index] = -1; + break; + } + default: { // null objects + break; + } + } + } + } // end decoding data + if (isset($prevxref)) { + // get previous xref + $xref = $this->getXrefData($prevxref, $xref); + } + return $xref; + } + /** * Get object type, raw value and offset to next object * @param $offset (int) Object offset. @@ -218,7 +473,7 @@ class TCPDF_PARSER { // skip initial white space chars: \x00 null (NUL), \x09 horizontal tab (HT), \x0A line feed (LF), \x0C form feed (FF), \x0D carriage return (CR), \x20 space (SP) $offset += strspn($this->pdfdata, "\x00\x09\x0a\x0c\x0d\x20", $offset); // get first char - $char = $this->pdfdata{$offset}; + $char = $this->pdfdata[$offset]; // get object type switch ($char) { case '%': { // \x25 PERCENT SIGN @@ -316,8 +571,9 @@ class TCPDF_PARSER { // hexadecimal string object $objtype = $char; ++$offset; - if (($char == '<') AND (preg_match('/^([0-9A-Fa-f]+)[>]/iU', substr($this->pdfdata, $offset), $matches) == 1)) { - $objval = $matches[1]; + if (($char == '<') AND (preg_match('/^([0-9A-Fa-f\x09\x0a\x0c\x0d\x20]+)>/iU', substr($this->pdfdata, $offset), $matches) == 1)) { + // remove white space characters + $objval = strtr($matches[1], "\x09\x0a\x0c\x0d\x20", ''); $offset += strlen($matches[0]); } } @@ -347,9 +603,12 @@ class TCPDF_PARSER { // start stream object $objtype = 'stream'; $offset += 6; - if (preg_match('/^[\r\n]+(.*)[\r\n]*endstream/isU', substr($this->pdfdata, $offset), $matches) == 1) { - $objval = $matches[1]; + if (preg_match('/^([\r]?[\n])/isU', substr($this->pdfdata, $offset), $matches) == 1) { $offset += strlen($matches[0]); + if (preg_match('/([\r]?[\n])?(endstream)[\x09\x0a\x0c\x0d\x20]/isU', substr($this->pdfdata, $offset), $matches, PREG_OFFSET_CAPTURE) == 1) { + $objval = substr($this->pdfdata, $offset, $matches[0][1]); + $offset += $matches[2][1]; + } } } elseif (substr($this->pdfdata, $offset, 9) == 'endstream') { // end stream object @@ -408,7 +667,7 @@ class TCPDF_PARSER { $offset = $element[2]; // decode stream using stream's dictionary information if ($decoding AND ($element[0] == 'stream') AND (isset($objdata[($i - 1)][0])) AND ($objdata[($i - 1)][0] == '<<')) { - $element[3] = $this->decodeStream($objdata[($i - 1)][1], substr($element[1], 1)); + $element[3] = $this->decodeStream($objdata[($i - 1)][1], $element[1]); } $objdata[$i] = $element; ++$i; @@ -452,6 +711,9 @@ class TCPDF_PARSER { protected function decodeStream($sdic, $stream) { // get stream lenght and filters $slength = strlen($stream); + if ($slength <= 0) { + return array('', array()); + } $filters = array(); foreach ($sdic as $k => $v) { if ($v[0] == '/') { @@ -483,7 +745,15 @@ class TCPDF_PARSER { $remaining_filters = array(); foreach ($filters as $filter) { if (in_array($filter, $this->FilterDecoders->getAvailableFilters())) { - $stream = $this->FilterDecoders->decodeFilter($filter, $stream); + try { + $stream = $this->FilterDecoders->decodeFilter($filter, $stream); + } catch (Exception $e) { + $emsg = $e->getMessage(); + if ((($emsg[0] == '~') AND !$this->cfg['ignore_missing_filter_decoders']) + OR (($emsg[0] != '~') AND !$this->cfg['ignore_filter_decoding_errors'])) { + $this->Error($e->getMessage()); + } + } } else { // add missing filter to array $remaining_filters[] = $filter; @@ -493,14 +763,17 @@ class TCPDF_PARSER { } /** - * This method is automatically called in case of fatal error; it simply outputs the message and halts the execution. + * Throw an exception or print an error message and die if the K_TCPDF_PARSER_THROW_EXCEPTION_ERROR constant is set to true. * @param $msg (string) The error message * @public * @since 1.0.000 (2011-05-23) */ public function Error($msg) { - // exit program and print error - die('TCPDF_PARSER ERROR: '.$msg); + if ($this->cfg['die_for_errors']) { + die('TCPDF_PARSER ERROR: '.$msg); + } else { + throw new Exception('TCPDF_PARSER ERROR: '.$msg); + } } } // END OF TCPDF_PARSER CLASS diff --git a/lib/tests/other/pdflibtestpage.php b/lib/tests/other/pdflibtestpage.php index 7c53a2ec293..b24493848e0 100644 --- a/lib/tests/other/pdflibtestpage.php +++ b/lib/tests/other/pdflibtestpage.php @@ -80,7 +80,7 @@ if ($getpdf) { $c = '

                    General information

                    '; $c .= 'Moodle release: ' . $CFG->release . '
                    '; - $c .= 'PDF producer: TCPDF ' . $doc->getTCPDFVersion() . ' (http://www.tcpdf.org)
                    '; + $c .= 'PDF producer: TCPDF ' . TCPDF_STATIC::getTCPDFVersion() . ' (http://www.tcpdf.org)
                    '; $c .= 'Font of this test page: ' . $fontfamily . '
                    '; $c .= '

                    Current settings

                    '; diff --git a/lib/thirdpartylibs.xml b/lib/thirdpartylibs.xml index 6ec4089fb9f..f4b4fec0a1b 100644 --- a/lib/thirdpartylibs.xml +++ b/lib/thirdpartylibs.xml @@ -186,7 +186,7 @@ tcpdf TCPDF LGPL - 5.9.209 + 6.0.031 3 From eeb08203dce0131d3988a3707fbbf8563cd4bd30 Mon Sep 17 00:00:00 2001 From: Sam Hemelryk Date: Tue, 24 Sep 2013 10:37:14 +1200 Subject: [PATCH 058/101] MDL-39871 output: improved block manipulation inheritance --- lib/outputlib.php | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/lib/outputlib.php b/lib/outputlib.php index 1db20d0709d..315cb2f17ba 100644 --- a/lib/outputlib.php +++ b/lib/outputlib.php @@ -329,7 +329,7 @@ class theme_config { * This is used when displaying blocks for regions only. * @var array */ - public $blockrtlmanipulations = array(); + public $blockrtlmanipulations = null; /** * @var renderer_factory Instance of the renderer_factory implementation @@ -488,8 +488,15 @@ class theme_config { } // Use parent theme's "blockrtlmanipulations" if it was defined and if it was not defined on current theme. - if (empty($this->blockrtlmanipulations) and !empty($parent_config->blockrtlmanipulations)) { - $this->blockrtlmanipulations = $parent_config->blockrtlmanipulations; + if (!is_array($this->blockrtlmanipulations)) { + $blockrtlmanipulations = array(); + foreach ($this->parent_configs as $parentconfig) { + if (isset($parentconfig->blockrtlmanipulations)) { + $blockrtlmanipulations = $parentconfig->blockrtlmanipulations; + break; + } + } + $this->blockrtlmanipulations = $blockrtlmanipulations; } //fix arrows if needed From c51fda57a9e4dcfe53519715f0563be684498897 Mon Sep 17 00:00:00 2001 From: Sam Hemelryk Date: Tue, 24 Sep 2013 10:58:46 +1200 Subject: [PATCH 059/101] MDL-39910 mod_scorm: fixed install.xml not nulls --- mod/scorm/db/install.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mod/scorm/db/install.xml b/mod/scorm/db/install.xml index a36bd6f36b2..6661d0f0c68 100644 --- a/mod/scorm/db/install.xml +++ b/mod/scorm/db/install.xml @@ -1,5 +1,5 @@ - @@ -32,8 +32,8 @@ - - + + From 361a47d409ed29d700d0592730bffe95ae973236 Mon Sep 17 00:00:00 2001 From: Dan Marsden Date: Wed, 4 Sep 2013 18:46:35 +1200 Subject: [PATCH 060/101] MDL-41580 SCORM: allow imsmanifest.xml to be used in file system repos --- lib/filestorage/stored_file.php | 15 +++++++ mod/scorm/lang/en/scorm.php | 3 ++ mod/scorm/lib.php | 16 +++++++ mod/scorm/loadSCO.php | 9 ++-- mod/scorm/locallib.php | 27 +++++++---- mod/scorm/mod_form.php | 18 +++++++- .../lang/en/repository_filesystem.php | 3 ++ repository/filesystem/lib.php | 45 ++++++++++++++++++- repository/filesystem/tests/generator/lib.php | 3 ++ repository/lib.php | 25 +++++++++++ repository/upgrade.txt | 3 ++ 11 files changed, 153 insertions(+), 14 deletions(-) diff --git a/lib/filestorage/stored_file.php b/lib/filestorage/stored_file.php index f1e6c248825..93b7cda0c80 100644 --- a/lib/filestorage/stored_file.php +++ b/lib/filestorage/stored_file.php @@ -997,4 +997,19 @@ class stored_file { $this->repository->import_external_file_contents($this, $maxbytes); } } + + /** + * Gets a file relative to this file in the repository and sends it to the browser. + * Checks the function repository::supports_relative_file() to make sure it can be used. + * + * @param string $relativepath the relative path to the file we are trying to access + */ + public function send_relative_file($relativepath) { + if ($this->repository && $this->repository->supports_relative_file()) { + $relativepath = clean_param($relativepath, PARAM_PATH); + $this->repository->send_relative_file($this, $relativepath); + } else { + send_file_not_found(); + } + } } diff --git a/mod/scorm/lang/en/scorm.php b/mod/scorm/lang/en/scorm.php index f39efdaa8fe..3f76a513d12 100644 --- a/mod/scorm/lang/en/scorm.php +++ b/mod/scorm/lang/en/scorm.php @@ -33,6 +33,7 @@ $string['activityoverview'] = 'You have SCORM packages that need attention'; $string['activitypleasewait'] = 'Activity loading, please wait ...'; $string['adminsettings'] = 'Admin settings'; $string['advanced'] = 'Parameters'; +$string['aliasonly'] = 'When selecting an imsmanifest.xml file from a repository you must use an alias/shortcut for this file.'; $string['allowapidebug'] = 'Activate API debug and tracing (set the capture mask with apidebugmask)'; $string['allowtypeexternal'] = 'Enable external package type'; $string['allowtypeexternalaicc'] = 'Enable direct AICC URL'; @@ -167,6 +168,7 @@ $string['identifier'] = 'Question identifier'; $string['incomplete'] = 'Incomplete'; $string['info'] = 'Info'; $string['interactions'] = 'Interactions'; +$string['repositorynotsupported'] = 'Only file system repositories are supported when linking directly to an imsmanifest.xml file.'; $string['trackid'] = 'Id'; $string['trackid_help'] = 'This is the identifier set by your SCORM package for this question, the SCORM specification doesn\'t allow the full question text to be provided.'; $string['trackcorrectcount'] = 'Correct count'; @@ -194,6 +196,7 @@ $string['tracktype_help'] = 'Type of the question, for example "choice" or "shor $string['trackweight'] = 'Weight'; $string['trackweight_help'] = 'Weight assigned to the question when calculating score.'; $string['invalidactivity'] = 'SCORM activity is incorrect'; +$string['invalidmanifestname'] = 'Only imsmanifest.xml or .zip files may be selected'; $string['invalidurl'] = 'Invalid URL specified'; $string['invalidurlhttpcheck'] = 'Invalid URL specified. Debug message:
                    {$a->cmsg}
                    '; $string['invalidhacpsession'] = 'Invalid HACP session'; diff --git a/mod/scorm/lib.php b/mod/scorm/lib.php index a3d17cd7508..7f15a2abe70 100644 --- a/mod/scorm/lib.php +++ b/mod/scorm/lib.php @@ -953,6 +953,22 @@ function scorm_pluginfile($course, $cm, $context, $filearea, $args, $forcedownlo $fullpath = "/$context->id/mod_scorm/package/0/$relativepath"; $lifetime = 0; // no caching here + } else if ($filearea === 'imsmanifest') { // This isn't a real filearea, it's a url parameter for this type of package. + $revision = (int)array_shift($args); // Prevents caching problems - ignored here. + $relativepath = implode('/', $args); + + // Get imsmanifest file. + $fs = get_file_storage(); + $files = $fs->get_area_files($context->id, 'mod_scorm', 'package', 0, '', false); + $file = reset($files); + + // Check that the package file is an imsmanifest.xml file - if not then this method is not allowed. + $packagefilename = $file->get_filename(); + if (strtolower($packagefilename) !== 'imsmanifest.xml') { + return false; + } + + $file->send_relative_file($relativepath); } else { return false; } diff --git a/mod/scorm/loadSCO.php b/mod/scorm/loadSCO.php index 8b39f3e0fdf..330944e2dc2 100644 --- a/mod/scorm/loadSCO.php +++ b/mod/scorm/loadSCO.php @@ -148,11 +148,14 @@ if (scorm_external_link($sco->launch)) { //TODO: does this happen? $result = $launcher; } else if ($scorm->scormtype === SCORM_TYPE_EXTERNAL) { - // Remote learning activity + // Remote learning activity. $result = dirname($scorm->reference).'/'.$launcher; +} else if ($scorm->scormtype === SCORM_TYPE_LOCAL && strtolower($scorm->reference) == 'imsmanifest.xml') { + // This SCORM content sits in a repository that allows relative links. + $result = "$CFG->wwwroot/pluginfile.php/$context->id/mod_scorm/imsmanifest/$scorm->revision/$launcher"; } else if ($scorm->scormtype === SCORM_TYPE_LOCAL or $scorm->scormtype === SCORM_TYPE_LOCALSYNC) { - //note: do not convert this to use get_file_url() or moodle_url() - //SCORM does not work without slasharguments and moodle_url() encodes querystring vars + // Note: do not convert this to use get_file_url() or moodle_url() + // SCORM does not work without slasharguments and moodle_url() encodes querystring vars. $result = "$CFG->wwwroot/pluginfile.php/$context->id/mod_scorm/content/$scorm->revision/$launcher"; } diff --git a/mod/scorm/locallib.php b/mod/scorm/locallib.php index b1cde822434..5afe7a7f50b 100644 --- a/mod/scorm/locallib.php +++ b/mod/scorm/locallib.php @@ -199,6 +199,7 @@ function scorm_parse($scorm, $full) { $fs = get_file_storage(); $packagefile = false; + $packagefileimsmanifest = false; if ($scorm->scormtype === SCORM_TYPE_LOCAL) { if ($packagefile = $fs->get_file($context->id, 'mod_scorm', 'package', 0, '/', $scorm->reference)) { @@ -206,6 +207,9 @@ function scorm_parse($scorm, $full) { $packagefile->import_external_file_contents(); } $newhash = $packagefile->get_contenthash(); + if (strtolower($packagefile->get_filename()) == 'imsmanifest.xml') { + $packagefileimsmanifest = true; + } } else { $newhash = null; } @@ -228,8 +232,8 @@ function scorm_parse($scorm, $full) { if ($packagefile) { if (!$full and $packagefile and $scorm->sha1hash === $newhash) { if (strpos($scorm->version, 'SCORM') !== false) { - if ($fs->get_file($context->id, 'mod_scorm', 'content', 0, '/', 'imsmanifest.xml')) { - // no need to update + if ($packagefileimsmanifest || $fs->get_file($context->id, 'mod_scorm', 'content', 0, '/', 'imsmanifest.xml')) { + // No need to update. return; } } else if (strpos($scorm->version, 'AICC') !== false) { @@ -237,18 +241,25 @@ function scorm_parse($scorm, $full) { return; } } + if (!$packagefileimsmanifest) { + // Now extract files. + $fs->delete_area_files($context->id, 'mod_scorm', 'content'); - // now extract files - $fs->delete_area_files($context->id, 'mod_scorm', 'content'); - - $packer = get_file_packer('application/zip'); - $packagefile->extract_to_storage($packer, $context->id, 'mod_scorm', 'content', 0, '/'); + $packer = get_file_packer('application/zip'); + $packagefile->extract_to_storage($packer, $context->id, 'mod_scorm', 'content', 0, '/'); + } } else if (!$full) { return; } + if ($packagefileimsmanifest) { + require_once("$CFG->dirroot/mod/scorm/datamodels/scormlib.php"); + // Direct link to imsmanifest.xml file. + if (!scorm_parse_scorm($scorm, $packagefile)) { + $scorm->version = 'ERROR'; + } - if ($manifest = $fs->get_file($context->id, 'mod_scorm', 'content', 0, '/', 'imsmanifest.xml')) { + } else if ($manifest = $fs->get_file($context->id, 'mod_scorm', 'content', 0, '/', 'imsmanifest.xml')) { require_once("$CFG->dirroot/mod/scorm/datamodels/scormlib.php"); // SCORM if (!scorm_parse_scorm($scorm, $manifest)) { diff --git a/mod/scorm/mod_form.php b/mod/scorm/mod_form.php index 99d9d875f90..209ef3b0b91 100644 --- a/mod/scorm/mod_form.php +++ b/mod/scorm/mod_form.php @@ -89,7 +89,7 @@ class mod_scorm_mod_form extends moodleform_mod { // New local package upload. $filemanageroptions = array(); - $filemanageroptions['accepted_types'] = array('.zip'); + $filemanageroptions['accepted_types'] = array('.zip', '.xml'); $filemanageroptions['maxbytes'] = 0; $filemanageroptions['maxfiles'] = 1; $filemanageroptions['subdirs'] = 0; @@ -353,7 +353,21 @@ class mod_scorm_mod_form extends moodleform_mod { // Make sure updatefreq is not set if using normal local file. $errors['updatefreq'] = get_string('updatefreq_error', 'mod_scorm'); } - $errors = array_merge($errors, scorm_validate_package($file)); + if (strtolower($file->get_filename()) == 'imsmanifest.xml') { + if (!$file->is_external_file()) { + $errors['packagefile'] = get_string('aliasonly', 'mod_scorm'); + } else { + $repository = repository::get_repository_by_id($file->get_repository_id(), CONTEXT_SYSTEM); + if (!$repository->supports_relative_file()) { + $errors['packagefile'] = get_string('repositorynotsupported', 'mod_scorm'); + } + } + } else if (strtolower(substr($file->get_filename(), -3)) == 'xml') { + $errors['packagefile'] = get_string('invalidmanifestname', 'mod_scorm'); + } else { + // Validate this SCORM package. + $errors = array_merge($errors, scorm_validate_package($file)); + } } } else if ($type === SCORM_TYPE_EXTERNAL) { diff --git a/repository/filesystem/lang/en/repository_filesystem.php b/repository/filesystem/lang/en/repository_filesystem.php index ab323933b92..df3eeaf4ed4 100644 --- a/repository/filesystem/lang/en/repository_filesystem.php +++ b/repository/filesystem/lang/en/repository_filesystem.php @@ -30,9 +30,12 @@ $string['filesystem:view'] = 'View file system repository'; $string['information'] = 'These folders are within the {$a} directory.'; $string['invalidpath'] = 'Invalid root path'; $string['path'] = 'Select a subdirectory'; +$string['relativefiles'] = 'Allow relative files'; +$string['relativefiles_desc'] = 'This allows all files in the repository to be accessible using relative links.'; $string['root'] = 'Root'; $string['nosubdir'] = 'You need to create at least one folder inside the {$a} directory so you can select it here.'; $string['pluginname_help'] = 'Create repository from local directory'; $string['pluginname'] = 'File system'; $string['enablecourseinstances'] = 'Allow admins to add a file system repository instance to a course (configurable only by admins)'; $string['enableuserinstances'] = 'Allow admins to add a file system repository instance for personal use (configurable only by admins)'; + diff --git a/repository/filesystem/lib.php b/repository/filesystem/lib.php index 42af49ec9d8..bc7ba2ea4b7 100644 --- a/repository/filesystem/lib.php +++ b/repository/filesystem/lib.php @@ -194,11 +194,12 @@ class repository_filesystem extends repository { } public static function get_instance_option_names() { - return array('fs_path'); + return array('fs_path', 'relativefiles'); } public function set_option($options = array()) { $options['fs_path'] = clean_param($options['fs_path'], PARAM_PATH); + $options['relativefiles'] = clean_param($options['relativefiles'], PARAM_INT); $ret = parent::set_option($options); return $ret; } @@ -229,6 +230,10 @@ class repository_filesystem extends repository { } closedir($handle); } + $mform->addElement('checkbox', 'relativefiles', get_string('relativefiles', 'repository_filesystem'), + get_string('relativefiles_desc', 'repository_filesystem')); + $mform->setType('relativefiles', PARAM_INT); + } else { $mform->addElement('static', null, '', get_string('nopermissions', 'error', get_string('configplugin', 'repository_filesystem'))); return false; @@ -461,6 +466,44 @@ class repository_filesystem extends repository { mtrace(" instance {$this->id}: deleted $deletedcount thumbnails"); } } + + /** + * Gets a file relative to this file in the repository and sends it to the browser. + * + * @param stored_file $mainfile The main file we are trying to access relative files for. + * @param string $relativepath the relative path to the file we are trying to access. + */ + public function send_relative_file(stored_file $mainfile, $relativepath) { + global $CFG; + // Check if this repository is allowed to use relative linking. + $allowlinks = $this->supports_relative_file(); + $lifetime = isset($CFG->filelifetime) ? $CFG->filelifetime : 86400; + if (!empty($allowlinks)) { + // Get path to the mainfile. + $mainfilepath = $mainfile->get_source(); + + // Strip out filename from the path. + $filename = $mainfile->get_filename(); + $basepath = strstr($mainfilepath, $filename, true); + + $fullrelativefilepath = realpath($this->root_path.$basepath.$relativepath); + + // Sanity check to make sure this path is inside this repository and the file exists. + if (strpos($fullrelativefilepath, $this->root_path) === 0 && file_exists($fullrelativefilepath)) { + send_file($fullrelativefilepath, basename($relativepath), $lifetime, 0); + } + } + send_file_not_found(); + } + + /** + * helper function to check if the repository supports send_relative_file. + * + * @return true|false + */ + public function supports_relative_file() { + return $this->get_option('relativefiles'); + } } /** diff --git a/repository/filesystem/tests/generator/lib.php b/repository/filesystem/tests/generator/lib.php index 8600686ac02..e298c92abb9 100644 --- a/repository/filesystem/tests/generator/lib.php +++ b/repository/filesystem/tests/generator/lib.php @@ -44,6 +44,9 @@ class repository_filesystem_generator extends testing_repository_generator { if (!isset($record['fs_path'])) { $record['fs_path'] = '/i/do/not/exist'; } + if (!isset($record['relativefiles'])) { + $record['relativefiles'] = 0; + } return $record; } diff --git a/repository/lib.php b/repository/lib.php index 276c0e9edb0..86c50618920 100644 --- a/repository/lib.php +++ b/repository/lib.php @@ -2866,6 +2866,31 @@ abstract class repository implements cacheable_object { $classname = $data['class']; return new $classname($data['id'], $data['ctxid'], $data['options'], $data['readonly']); } + + /** + * Gets a file relative to this file in the repository and sends it to the browser. + * Used to allow relative file linking within a repository without creating file records + * for linked files + * + * Repositories that overwrite this must be very careful - see filesystem repository for example. + * + * @param stored_file $mainfile The main file we are trying to access relative files for. + * @param string $relativepath the relative path to the file we are trying to access. + * + */ + public function send_relative_file(stored_file $mainfile, $relativepath) { + // This repository hasn't implemented this so send_file_not_found. + send_file_not_found(); + } + + /** + * helper function to check if the repository supports send_relative_file. + * + * @return true|false + */ + public function supports_relative_file() { + return false; + } } /** diff --git a/repository/upgrade.txt b/repository/upgrade.txt index bd724428512..2e03f7a6987 100644 --- a/repository/upgrade.txt +++ b/repository/upgrade.txt @@ -8,6 +8,9 @@ http://docs.moodle.org/dev/Repository_API * get_option() now always return null when the first parameter ($config) is not empty, and no value was found for this $config. Previously this could sometimes return an empty array(). * The function repository_attach_id() was removed, it was never used and was not useful. +* New functions send_relative_file() and supports_relative_file() to allow sending relative linked + files - see filesystem repository for example. + === 2.5 === From d76a0eec399c91fa81cff64ace3857aac0abd33e Mon Sep 17 00:00:00 2001 From: Adrian Greeve Date: Tue, 6 Aug 2013 14:23:03 +0800 Subject: [PATCH 061/101] MDL-39962 - Events: Replace the legacy event workshop_viewed This also includes the abstract class course_module_viewed. --- .../allocation/scheduled/classes/observer.php | 82 ++++++++++++++ .../allocation/scheduled/db/events.php | 15 +-- mod/workshop/allocation/scheduled/lib.php | 47 -------- .../classes/event/course_module_viewed.php | 106 ++++++++++++++++++ mod/workshop/lang/en/workshop.php | 1 + mod/workshop/view.php | 34 +++--- 6 files changed, 214 insertions(+), 71 deletions(-) create mode 100644 mod/workshop/allocation/scheduled/classes/observer.php create mode 100644 mod/workshop/classes/event/course_module_viewed.php diff --git a/mod/workshop/allocation/scheduled/classes/observer.php b/mod/workshop/allocation/scheduled/classes/observer.php new file mode 100644 index 00000000000..90ddfd6b819 --- /dev/null +++ b/mod/workshop/allocation/scheduled/classes/observer.php @@ -0,0 +1,82 @@ +. + +/** + * Event observers for workshopallocation_scheduled. + * + * @package workshopallocation_scheduled + * @copyright 2013 Adrian Greeve + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace workshopallocation_scheduled; +defined('MOODLE_INTERNAL') || die(); + +/** + * Class for workshopallocation_scheduled observers. + * + * @package workshopallocation_scheduled + * @copyright 2013 Adrian Greeve + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class observer { + + /** + * Triggered when the '\mod_workshop\event\course_module_viewed' event is triggered. + * + * This does the same job as {@link workshopallocation_scheduled_cron()} but for the + * single workshop. The idea is that we do not need to wait for cron to execute. + * Displaying the workshop main view.php can trigger the scheduled allocation, too. + * + * @param \mod_workshop\event\course_module_viewed $event + * @return bool + */ + public static function workshop_viewed($event) { + global $DB; + + $workshop = $event->get_record_snapshot('workshop', $event->objectid); + $course = $event->get_record_snapshot('course', $event->courseid); + $cm = $event->get_record_snapshot('course_modules', $event->contextinstanceid); + + $workshop = new \workshop($workshop, $cm, $course); + $now = time(); + + // Non-expensive check to see if the scheduled allocation can even happen. + if ($workshop->phase == \workshop::PHASE_SUBMISSION and $workshop->submissionend > 0 and $workshop->submissionend < $now) { + + // Make sure the scheduled allocation has been configured for this workshop, that it has not + // been executed yet and that the passed workshop record is still valid. + $sql = "SELECT a.id + FROM {workshopallocation_scheduled} a + JOIN {workshop} w ON a.workshopid = w.id + WHERE w.id = :workshopid + AND a.enabled = 1 + AND w.phase = :phase + AND w.submissionend > 0 + AND w.submissionend < :now + AND (a.timeallocated IS NULL OR a.timeallocated < w.submissionend)"; + $params = array('workshopid' => $workshop->id, 'phase' => \workshop::PHASE_SUBMISSION, 'now' => $now); + + if ($DB->record_exists_sql($sql, $params)) { + // Allocate submissions for assessments. + $allocator = $workshop->allocator_instance('scheduled'); + $result = $allocator->execute(); + // Todo inform the teachers about the results. + } + } + return true; + } +} diff --git a/mod/workshop/allocation/scheduled/db/events.php b/mod/workshop/allocation/scheduled/db/events.php index d9137fc881a..33c0c1713bd 100644 --- a/mod/workshop/allocation/scheduled/db/events.php +++ b/mod/workshop/allocation/scheduled/db/events.php @@ -27,14 +27,9 @@ defined('MOODLE_INTERNAL') || die(); -$handlers = array( - - // The workshop main page is displayed to the user - 'workshop_viewed' => array( - 'handlerfile' => '/mod/workshop/allocation/scheduled/lib.php', - 'handlerfunction' => 'workshopallocation_scheduled_workshop_viewed', - 'schedule' => 'instant', - 'internal' => 1, - ), - +$observers = array( + array( + 'eventname' => '\mod_workshop\event\course_module_viewed', + 'callback' => '\workshopallocation_scheduled\observer::workshop_viewed', + ) ); diff --git a/mod/workshop/allocation/scheduled/lib.php b/mod/workshop/allocation/scheduled/lib.php index 8809e93def2..11095a97b58 100644 --- a/mod/workshop/allocation/scheduled/lib.php +++ b/mod/workshop/allocation/scheduled/lib.php @@ -285,50 +285,3 @@ function workshopallocation_scheduled_cron() { // todo inform the teachers about the results } } - -//////////////////////////////////////////////////////////////////////////////// -// Events API -//////////////////////////////////////////////////////////////////////////////// - -/** - * Handler for the 'workshop_viewed' event - * - * This does the same job as {@link workshopallocation_scheduled_cron()} but for the - * single workshop. The idea is that we do not need to wait forcron to execute. - * Displaying the workshop main view.php can trigger the scheduled allocation, too. - * - * @param stdClass $event event data - * @return bool - */ -function workshopallocation_scheduled_workshop_viewed($event) { - global $DB; - - $workshop = $event->workshop; - $now = time(); - - // Non-expensive check to see if the scheduled allocation can even happen. - if ($workshop->phase == workshop::PHASE_SUBMISSION and $workshop->submissionend > 0 and $workshop->submissionend < $now) { - - // Make sure the scheduled allocation has been configured for this workshop, that it has not - // been executed yet and that the passed workshop record is still valid. - $sql = "SELECT a.id - FROM {workshopallocation_scheduled} a - JOIN {workshop} w ON a.workshopid = w.id - WHERE w.id = :workshopid - AND a.enabled = 1 - AND w.phase = :phase - AND w.submissionend > 0 - AND w.submissionend < :now - AND (a.timeallocated IS NULL OR a.timeallocated < w.submissionend)"; - $params = array('workshopid' => $workshop->id, 'phase' => workshop::PHASE_SUBMISSION, 'now' => $now); - - if ($DB->record_exists_sql($sql, $params)) { - // Allocate submissions for assessments. - $allocator = $workshop->allocator_instance('scheduled'); - $result = $allocator->execute(); - // todo inform the teachers about the results - } - } - - return true; -} diff --git a/mod/workshop/classes/event/course_module_viewed.php b/mod/workshop/classes/event/course_module_viewed.php new file mode 100644 index 00000000000..88226cdd6ff --- /dev/null +++ b/mod/workshop/classes/event/course_module_viewed.php @@ -0,0 +1,106 @@ +. + +/** + * This file contains an event for when a workshop activity is viewed. + * + * @package mod_workshop + * @copyright 2013 Adrian Greeve + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace mod_workshop\event; +defined('MOODLE_INTERNAL') || die(); + +/** + * Event for when a workshop activity is viewed. + * + * @package mod_workshop + * @copyright 2013 Adrian Greeve + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class course_module_viewed extends \core\event\content_viewed { + + /** + * Init method. + */ + protected function init() { + $this->data['crud'] = 'r'; + $this->data['level'] = self::LEVEL_PARTICIPATING; + $this->data['objecttable'] = 'workshop'; + } + + /** + * Does this event replace a legacy event? + * + * @return string legacy event name + */ + public static function get_legacy_eventname() { + return 'workshop_viewed'; + } + + /** + * Returns non-localised description of what happened. + * + * @return string + */ + public function get_description() { + return 'User with id ' . $this->userid . ' viewed content ' . $this->get_url() . ' In phase ' . $this->other['content']; + } + + /** + * Returns localised general event name. + * + * @return string + */ + public static function get_name() { + return get_string('workshopviewed', 'workshop'); + } + + /** + * Returns relevant URL. + * @return \moodle_url + */ + public function get_url() { + $url = '/mod/workshop/view.php'; + return new \moodle_url($url, array('id'=>$this->context->instanceid)); + } + + /** + * Legacy event data if get_legacy_eventname() is not empty. + * + * @return mixed + */ + protected function get_legacy_eventdata() { + global $USER; + + $workshop = $this->get_record_snapshot('workshop', $this->objectid); + $course = $this->get_record_snapshot('course', $this->courseid); + $cm = $this->get_record_snapshot('course_modules', $this->context->instanceid); + $workshop = new \workshop($workshop, $cm, $course); + return (object)array('workshop' => $workshop, 'user' => $USER); + } + + /** + * replace add_to_log() statement. + * + * @return array of parameters to be passed to legacy add_to_log() function. + */ + protected function get_legacy_logdata() { + $url = new \moodle_url('view.php', array('id' => $this->context->instanceid)); + return array($this->courseid, 'workshop', 'view', $url->out(), $this->objectid, $this->context->instanceid); + } +} diff --git a/mod/workshop/lang/en/workshop.php b/mod/workshop/lang/en/workshop.php index 9c99b1e9296..ef53bf0e3e9 100644 --- a/mod/workshop/lang/en/workshop.php +++ b/mod/workshop/lang/en/workshop.php @@ -311,6 +311,7 @@ $string['workshop:viewauthornames'] = 'View author names'; $string['workshop:viewauthorpublished'] = 'View authors of published submissions'; $string['workshop:viewpublishedsubmissions'] = 'View published submissions'; $string['workshop:viewreviewernames'] = 'View reviewer names'; +$string['workshopviewed'] = 'Workshop viewed'; $string['yourassessment'] = 'Your assessment'; $string['yourgrades'] = 'Your grades'; $string['yoursubmission'] = 'Your submission'; diff --git a/mod/workshop/view.php b/mod/workshop/view.php index 7272cfc964f..dfa245f2be1 100644 --- a/mod/workshop/view.php +++ b/mod/workshop/view.php @@ -41,30 +41,37 @@ $sorthow = optional_param('sorthow', 'ASC', PARAM_ALPHA); $eval = optional_param('eval', null, PARAM_PLUGIN); if ($id) { - $cm = get_coursemodule_from_id('workshop', $id, 0, false, MUST_EXIST); - $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST); - $workshop = $DB->get_record('workshop', array('id' => $cm->instance), '*', MUST_EXIST); + $cm = get_coursemodule_from_id('workshop', $id, 0, false, MUST_EXIST); + $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST); + $workshoprecord = $DB->get_record('workshop', array('id' => $cm->instance), '*', MUST_EXIST); } else { - $workshop = $DB->get_record('workshop', array('id' => $w), '*', MUST_EXIST); - $course = $DB->get_record('course', array('id' => $workshop->course), '*', MUST_EXIST); - $cm = get_coursemodule_from_instance('workshop', $workshop->id, $course->id, false, MUST_EXIST); + $workshoprecord = $DB->get_record('workshop', array('id' => $w), '*', MUST_EXIST); + $course = $DB->get_record('course', array('id' => $workshoprecord->course), '*', MUST_EXIST); + $cm = get_coursemodule_from_instance('workshop', $workshoprecord->id, $course->id, false, MUST_EXIST); } require_login($course, true, $cm); require_capability('mod/workshop:view', $PAGE->context); -$workshop = new workshop($workshop, $cm, $course); -$workshop->log('view'); +$workshop = new workshop($workshoprecord, $cm, $course); // Mark viewed $completion = new completion_info($course); $completion->set_module_viewed($cm); -// Fire the event -events_trigger('workshop_viewed', (object)array( - 'workshop' => $workshop, - 'user' => $USER, -)); +$eventdata = array(); +$eventdata['objectid'] = $workshop->id; +$eventdata['context'] = $workshop->context; +$eventdata['courseid'] = $course->id; +$eventdata['other']['content'] = $workshop->phase; + +$PAGE->set_url($workshop->view_url()); +$event = \mod_workshop\event\course_module_viewed::create($eventdata); +$event->add_record_snapshot('course', $course); +$event->add_record_snapshot('workshop', $workshoprecord); +$event->add_record_snapshot('course_modules', $cm); +$event->set_page_detail(); +$event->trigger(); // If the phase is to be switched, do it asap. This just has to happen after triggering // the event so that the scheduled allocator had a chance to allocate submissions. @@ -82,7 +89,6 @@ if (!is_null($editmode) && $PAGE->user_allowed_editing()) { $USER->editing = $editmode; } -$PAGE->set_url($workshop->view_url()); $PAGE->set_title($workshop->name); $PAGE->set_heading($course->fullname); From b97d94ffbb5b8ce2c4f275d7d6ed3d778149bd46 Mon Sep 17 00:00:00 2001 From: Adrian Greeve Date: Mon, 12 Aug 2013 11:38:39 +0800 Subject: [PATCH 062/101] MDL-39962 - Events: Replace lefacy event lti_unknown_service_api call. --- .../event/unknown_service_api_called.php | 95 +++++++++++++++++++ mod/lti/lang/en/lti.php | 1 + mod/lti/service.php | 18 ++-- 3 files changed, 107 insertions(+), 7 deletions(-) create mode 100644 mod/lti/classes/event/unknown_service_api_called.php diff --git a/mod/lti/classes/event/unknown_service_api_called.php b/mod/lti/classes/event/unknown_service_api_called.php new file mode 100644 index 00000000000..dad8f78bdb6 --- /dev/null +++ b/mod/lti/classes/event/unknown_service_api_called.php @@ -0,0 +1,95 @@ +. + +/** + * This file contains an event for an unknown service API call. + * + * @package mod_lti + * @copyright 2013 Adrian Greeve + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace mod_lti\event; +defined('MOODLE_INTERNAL') || die(); + +/** + * Event for when something happens with an unknown lti service API call. + * + * @package mod_lti + * @copyright 2013 Adrian Greeve + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class unknown_service_api_called extends \core\event\base { + + /** Old data to be used for the legacy event. */ + protected $legacydata; + + /** + * Set method for legacy data. + * + * @param stdClass $data legacy event data. + */ + public function set_legacy_data($data) { + $this->legacydata = $data; + } + + /** + * Init method. + */ + protected function init() { + $this->data['objecttable'] = 'lti'; + $this->data['crud'] = 'r'; + $this->data['level'] = self::LEVEL_OTHER; + $this->data['context'] = \context_system::instance(); + } + + /** + * Returns localised description of what happened. + * + * @return string + */ + public function get_description() { + return 'An unknown call to a service api was made.'; + } + + /** + * Returns localised general event name. + * + * @return string + */ + public static function get_name() { + return get_string('ltiunknownserviceapicall', 'mod_lti'); + } + + /** + * Does this event replace a legacy event? + * + * @return null|string legacy event name + */ + public static function get_legacy_eventname() { + return 'lti_unknown_service_api_call'; + } + + /** + * Legacy event data if get_legacy_eventname() is not empty. + * + * @return mixed + */ + protected function get_legacy_eventdata() { + return $this->legacydata; + } + +} diff --git a/mod/lti/lang/en/lti.php b/mod/lti/lang/en/lti.php index 606e2d6110a..7f5f8a34512 100644 --- a/mod/lti/lang/en/lti.php +++ b/mod/lti/lang/en/lti.php @@ -237,6 +237,7 @@ $string['lti_launch_error_unsigned_help'] = '

                    '; $string['lti_tool_request_added'] = 'Tool configuration request successfully submitted. You may need to contact an administrator to complete the tool configuration.'; $string['lti_tool_request_existing'] = 'A tool configuration for the tool domain has already been submitted.'; +$string['ltiunknownserviceapicall'] = 'LTI unknown service API call.'; $string['main_admin'] = 'General help'; $string['main_admin_help'] = 'External tools allow Moodle users to seamlessly interact with learning resources hosted remotely. Through a special launch protocol, the remote tool will have access to some general information about the launching user. For example, diff --git a/mod/lti/service.php b/mod/lti/service.php index b96f566294e..be8e2d6d386 100644 --- a/mod/lti/service.php +++ b/mod/lti/service.php @@ -145,19 +145,23 @@ switch ($messagetype) { //Fire an event if we get a web service request which we don't support directly. //This will allow others to extend the LTI services, which I expect to be a common //use case, at least until the spec matures. - $data = new stdClass(); - $data->body = $rawbody; - $data->xml = $xml; - $data->messagetype = $messagetype; - $data->consumerkey = $consumerkey; - $data->sharedsecret = $sharedsecret; + // Please note that you will have to change $eventdata['other']['body'] into an xml + // element in an event observer as done above. + $eventdata = array(); + $eventdata['other'] = array(); + $eventdata['other']['body'] = $rawbody; + $eventdata['other']['messagetype'] = $messagetype; + $eventdata['other']['consumerkey'] = $consumerkey; + $eventdata['other']['sharedsecret'] = $sharedsecret; //If an event handler handles the web service, it should set this global to true //So this code knows whether to send an "operation not supported" or not. global $lti_web_service_handled; $lti_web_service_handled = false; - events_trigger('lti_unknown_service_api_call', $data); + $event = \mod_lti\event\unknown_service_api_called::create($eventdata); + $event->set_legacy_data($eventdata); + $event->trigger(); if (!$lti_web_service_handled) { $responsexml = lti_get_response_xml( From de230fd359325ed47ae6df6200b932a81060d3d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Tue, 24 Sep 2013 08:59:29 +0200 Subject: [PATCH 063/101] MDL-37324 fix phpunit and behat SESSION and USER setup --- lib/classes/session/manager.php | 10 ++++++---- lib/setup.php | 6 ++++-- lib/tests/behat/behat_hooks.php | 6 ++++-- 3 files changed, 14 insertions(+), 8 deletions(-) diff --git a/lib/classes/session/manager.php b/lib/classes/session/manager.php index 90153ef46ed..2b1e7f02007 100644 --- a/lib/classes/session/manager.php +++ b/lib/classes/session/manager.php @@ -155,8 +155,9 @@ class manager { $_SESSION['USER']->mnethostid = 1; } - if (PHPUNIT_TEST) { - // Phpunit tests use reversed reference. + if (PHPUNIT_TEST or defined('BEHAT_TEST')) { + // Phpunit tests and behat init use reversed reference, + // the reason is we can not point global to $_SESSION outside of global scope. global $USER, $SESSION; $USER = $_SESSION['USER']; $SESSION = $_SESSION['SESSION']; @@ -597,8 +598,9 @@ class manager { } sesskey(); // Init session key. - if (PHPUNIT_TEST) { - // Phpunit tests use reversed reference. + if (PHPUNIT_TEST or defined('BEHAT_TEST')) { + // Phpunit tests and behat init use reversed reference, + // the reason is we can not point global to $_SESSION outside of global scope. global $USER; $USER = $_SESSION['USER']; $_SESSION['USER'] =& $USER; diff --git a/lib/setup.php b/lib/setup.php index f3c51dd1d7f..586f10f0b68 100644 --- a/lib/setup.php +++ b/lib/setup.php @@ -765,8 +765,10 @@ if (empty($CFG->sessiontimeout)) { $CFG->sessiontimeout = 7200; } \core\session\manager::start(); -$SESSION = &$_SESSION['SESSION']; -$USER = &$_SESSION['USER']; +if (!PHPUNIT_TEST and !defined('BEHAT_TEST')) { + $SESSION =& $_SESSION['SESSION']; + $USER =& $_SESSION['USER']; +} // Late profiling, only happening if early one wasn't started if (!empty($CFG->profilingenabled)) { diff --git a/lib/tests/behat/behat_hooks.php b/lib/tests/behat/behat_hooks.php index 08e64a2df03..7d2d912d766 100644 --- a/lib/tests/behat/behat_hooks.php +++ b/lib/tests/behat/behat_hooks.php @@ -162,8 +162,10 @@ class behat_hooks extends behat_base { behat_selectors::register_moodle_selectors($session); } - // Avoid some notices / warnings. + // Reset $SESSION. + $_SESSION = array(); $SESSION = new stdClass(); + $_SESSION['SESSION'] =& $SESSION; behat_util::reset_database(); behat_util::reset_dataroot(); @@ -174,7 +176,7 @@ class behat_hooks extends behat_base { // Reset the nasty strings list used during the last test. nasty_strings::reset_used_strings(); - // Assing valid data to admin user (some generator-related code needs a valid user). + // Assign valid data to admin user (some generator-related code needs a valid user). $user = $DB->get_record('user', array('username' => 'admin')); \core\session\manager::set_user($user); From ec7f3d40f1ff9a96a451ffc56965489ad8772529 Mon Sep 17 00:00:00 2001 From: Marina Glancy Date: Tue, 24 Sep 2013 20:02:57 +1000 Subject: [PATCH 064/101] MDL-39962 - Events: added missing required file --- mod/workshop/allocation/scheduled/classes/observer.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/mod/workshop/allocation/scheduled/classes/observer.php b/mod/workshop/allocation/scheduled/classes/observer.php index 90ddfd6b819..727edc7c29a 100644 --- a/mod/workshop/allocation/scheduled/classes/observer.php +++ b/mod/workshop/allocation/scheduled/classes/observer.php @@ -45,7 +45,9 @@ class observer { * @return bool */ public static function workshop_viewed($event) { - global $DB; + global $DB, $CFG; + + require_once($CFG->dirroot . '/mod/workshop/locallib.php'); $workshop = $event->get_record_snapshot('workshop', $event->objectid); $course = $event->get_record_snapshot('course', $event->courseid); From c3a994aeef9d06372efbf0dba9463abd76774f6e Mon Sep 17 00:00:00 2001 From: Marina Glancy Date: Tue, 24 Sep 2013 20:53:49 +1000 Subject: [PATCH 065/101] MDL-41937 tests: reset time limit after test --- backup/util/plan/tests/step_test.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/backup/util/plan/tests/step_test.php b/backup/util/plan/tests/step_test.php index 44afd8d74c1..ed7a70b94a1 100644 --- a/backup/util/plan/tests/step_test.php +++ b/backup/util/plan/tests/step_test.php @@ -132,6 +132,9 @@ class backup_step_testcase extends advanced_testcase { // Remove the test dir and any content @remove_dir(dirname($file)); + + // Clear the time limit, otherwise PHPUnit complains. + set_time_limit(0); } /** From 394372b7da258b09b6ceb09352cd198b24cb13f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Tue, 24 Sep 2013 22:43:46 +0200 Subject: [PATCH 066/101] MDL-41437 fix plugin install issues This patch prevents inclusion of settings from plugin that or not yet installed or upgraded, this matches the original logic where we were using the modules table. --- admin/settings/plugins.php | 36 ++++++++++++++++++++++++++++++++++++ lib/adminlib.php | 4 ++++ lib/outputrenderers.php | 2 ++ lib/pluginlib.php | 21 +++++++++++++++++++++ 4 files changed, 63 insertions(+) diff --git a/admin/settings/plugins.php b/admin/settings/plugins.php index 502d5e667ad..19bace3728f 100644 --- a/admin/settings/plugins.php +++ b/admin/settings/plugins.php @@ -14,6 +14,9 @@ if ($hassiteconfig) { $ADMIN->add('modules', new admin_category('modsettings', new lang_string('activitymodules'))); $ADMIN->add('modsettings', new admin_page_managemods()); foreach ($allplugins['mod'] as $module) { + if (!$module->is_updated()) { + continue; + } $module->load_settings($ADMIN, 'modsettings', $hassiteconfig); } @@ -23,6 +26,9 @@ if ($hassiteconfig) { $temp->add(new admin_setting_manageformats()); $ADMIN->add('formatsettings', $temp); foreach ($allplugins['format'] as $format) { + if (!$format->is_updated()) { + continue; + } $format->load_settings($ADMIN, 'formatsettings', $hassiteconfig); } @@ -30,6 +36,9 @@ if ($hassiteconfig) { $ADMIN->add('modules', new admin_category('blocksettings', new lang_string('blocks'))); $ADMIN->add('blocksettings', new admin_page_manageblocks()); foreach ($allplugins['block'] as $block) { + if (!$block->is_updated()) { + continue; + } $block->load_settings($ADMIN, 'blocksettings', $hassiteconfig); } @@ -38,6 +47,9 @@ if ($hassiteconfig) { $ADMIN->add('messageoutputs', new admin_page_managemessageoutputs()); $ADMIN->add('messageoutputs', new admin_page_defaultmessageoutputs()); foreach ($allplugins['message'] as $processor) { + if (!$processor->is_updated()) { + continue; + } $processor->load_settings($ADMIN, 'messageoutputs', $hassiteconfig); } @@ -67,6 +79,9 @@ if ($hassiteconfig) { $ADMIN->add('authsettings', $temp); foreach ($allplugins['auth'] as $auth) { + if (!$auth->is_updated()) { + continue; + } $auth->load_settings($ADMIN, 'authsettings', $hassiteconfig); } @@ -76,6 +91,9 @@ if ($hassiteconfig) { $temp->add(new admin_setting_manageenrols()); $ADMIN->add('enrolments', $temp); foreach($allplugins['enrol'] as $enrol) { + if (!$enrol->is_updated()) { + continue; + } $enrol->load_settings($ADMIN, 'enrolments', $hassiteconfig); } @@ -86,6 +104,9 @@ if ($hassiteconfig) { $temp->add(new admin_setting_manageeditors()); $ADMIN->add('editorsettings', $temp); foreach ($allplugins['editor'] as $editor) { + if (!$editor->is_updated()) { + continue; + } $editor->load_settings($ADMIN, 'editorsettings', $hassiteconfig); } @@ -148,6 +169,9 @@ if ($hassiteconfig) { $ADMIN->add('filtersettings', $temp); foreach ($allplugins['filter'] as $filter) { + if (!$filter->is_updated()) { + continue; + } $filter->load_settings($ADMIN, 'filtersettings', $hassiteconfig); } @@ -239,6 +263,9 @@ if ($hassiteconfig) { $ADMIN->add('repositorysettings', new admin_externalpage('repositoryinstanceedit', new lang_string('editrepositoryinstance', 'repository'), $url, 'moodle/site:config', true)); foreach ($allplugins['repository'] as $repositorytype) { + if (!$repositorytype->is_updated()) { + continue; + } $repositorytype->load_settings($ADMIN, 'repositorysettings', $hassiteconfig); } @@ -288,6 +315,9 @@ if ($hassiteconfig) { $ADMIN->add('webservicesettings', $temp); /// links to protocol pages foreach ($allplugins['webservice'] as $webservice) { + if (!$webservice->is_updated()) { + continue; + } $webservice->load_settings($ADMIN, 'webservicesettings', $hassiteconfig); } /// manage token page link @@ -363,6 +393,9 @@ if ($hassiteconfig || has_capability('moodle/question:config', $systemcontext)) // Settings for particular question types. foreach ($allplugins['qtype'] as $qtype) { + if (!$qtype->is_updated()) { + continue; + } $qtype->load_settings($ADMIN, 'qtypesettings', $hassiteconfig); } } @@ -374,6 +407,9 @@ if ($hassiteconfig && !empty($CFG->enableplagiarism)) { $CFG->wwwroot . '/' . $CFG->admin . '/plagiarism.php')); foreach ($allplugins['plagiarism'] as $plugin) { + if (!$plugin->is_updated()) { + continue; + } $plugin->load_settings($ADMIN, 'plagiarism', $hassiteconfig); } } diff --git a/lib/adminlib.php b/lib/adminlib.php index 7ca212768d9..37283177686 100644 --- a/lib/adminlib.php +++ b/lib/adminlib.php @@ -6419,8 +6419,10 @@ function admin_get_root($reload=false, $requirefulltree=true) { */ function admin_apply_default_settings($node=NULL, $unconditional=true) { global $CFG; + require_once($CFG->libdir.'/pluginlib.php'); if (is_null($node)) { + plugin_manager::reset_caches(); $node = admin_get_root(true, true); } @@ -6445,6 +6447,8 @@ function admin_apply_default_settings($node=NULL, $unconditional=true) { $setting->write_setting_flags(null); } } + // Just in case somebody modifies the list of active plugins directly. + plugin_manager::reset_caches(); } /** diff --git a/lib/outputrenderers.php b/lib/outputrenderers.php index 15de22ba808..1ca922ad352 100644 --- a/lib/outputrenderers.php +++ b/lib/outputrenderers.php @@ -3374,6 +3374,8 @@ class core_renderer_cli extends core_renderer { * @return string A template fragment for a fatal error */ public function fatal_error($message, $moreinfourl, $link, $backtrace, $debuginfo = null) { + global $CFG; + $output = "!!! $message !!!\n"; if ($CFG->debugdeveloper) { diff --git a/lib/pluginlib.php b/lib/pluginlib.php index 9172fc1cd45..8a5ce0fc462 100644 --- a/lib/pluginlib.php +++ b/lib/pluginlib.php @@ -2703,6 +2703,24 @@ abstract class plugininfo_base { return $return; } + /** + * Is this plugin already installed and updated? + * @return bool true if plugin installed and upgraded. + */ + public function is_updated() { + if (!$this->rootdir) { + return false; + } + if ($this->versiondb === null and $this->versiondisk === null) { + // There is no version.php or version info inside, + // for now let's pretend it is ok. + // TODO: return false once we require version in each plugin. + return true; + } + + return ((float)$this->versiondb === (float)$this->versiondisk); + } + /** * Sets {@link $displayname} property to a localized name of the plugin */ @@ -3968,6 +3986,9 @@ class plugininfo_format extends plugininfo_base { global $DB; $plugins = plugin_manager::instance()->get_installed_plugins('format'); + if (!$plugins) { + return array(); + } $installed = array(); foreach ($plugins as $plugin => $version) { $installed[] = 'format_'.$plugin; From 083fa87759757f51c61d68fcff76578acf2c85c5 Mon Sep 17 00:00:00 2001 From: Sam Hemelryk Date: Thu, 1 Aug 2013 18:13:58 +1200 Subject: [PATCH 067/101] MDL-40903 cache: converted persistent into persistentdata At the same time all cache instances were made persistent --- cache/README.md | 11 +++-- cache/classes/definition.php | 57 +++++++++++++++++-------- cache/classes/dummystore.php | 2 +- cache/classes/factory.php | 27 ++++++++---- cache/classes/helper.php | 7 ++-- cache/classes/loaders.php | 18 ++++---- cache/tests/cache_test.php | 18 ++++---- cache/tests/fixtures/lib.php | 20 +++++++++ lib/db/caches.php | 81 ++++++++++++++++++++++++++++-------- 9 files changed, 169 insertions(+), 72 deletions(-) diff --git a/cache/README.md b/cache/README.md index c1f67c2510f..535d0e3882d 100644 --- a/cache/README.md +++ b/cache/README.md @@ -24,7 +24,7 @@ A definition: 'overrideclassfile' => null, // Optional 'datasource' => null, // Optional 'datasourcefile' => null, // Optional - 'persistent' => false, // Optional + 'persistentdata' => false, // Optional 'persistentmaxsize' => false, // Optional 'ttl' => 0, // Optional 'mappingsonly' => false // Optional @@ -144,8 +144,8 @@ The following optional settings can also be defined: * overrideclassfile - Included if required when using the overrideclass param. * datasource - If provided this class will be used as a data source for the definition. It must implement the cache_data_source interface. * datasourcefile - Included if required when using the datasource param. -* persistent - If set to true the loader will be stored when first created and provided to subsequent requests. More on this later. -* persistentmaxsize - If set to an int this will be the maximum number of items stored in the persistent cache. +* persistentdata - Any data passing through the cache will be held onto to make subsequent requests for it faster. +* persistentmaxsize - If set to an int this will be the maximum number of items stored in the persistent data cache. * ttl - Can be used to set a ttl value for data being set for this cache. * mappingsonly - This definition can only be used if there is a store mapping for it. More on this later. * invalidationevents - An array of events that should trigger this cache to invalidate. @@ -154,11 +154,10 @@ The following optional settings can also be defined: It's important to note that internally the definition is also aware of the component. This is picked up when the definition is read, based upon the location of the caches.php file. -The persistent option. -As noted the persistent option causes the loader generated for this definition to be stored when first created. Subsequent requests for this definition will be given the original loader instance. +The persistentdata option. Data passed to or retrieved from the loader and its chained loaders gets cached by the instance. -This option should be used when you know you will require the loader several times and perhaps in different areas of code. Because it caches key=>value data it avoids the need to re-fetch things from stores after the first request. Its good for performance, bad for memory. +Memeory use can be controlled by setting the persistentmaxsize option. It should be used sparingly. The mappingsonly option. diff --git a/cache/classes/definition.php b/cache/classes/definition.php index da5cd4cc209..f4d1ea9e44f 100644 --- a/cache/classes/definition.php +++ b/cache/classes/definition.php @@ -77,15 +77,10 @@ defined('MOODLE_INTERNAL') || die(); * + datasourcefile * [string] Suplements the above setting indicated the file containing the class to be used. This file is included when * required. - * + persistent - * [bool] This setting does two important things. First it tells the cache API to only instantiate the cache structure for - * this definition once, further requests will be given the original instance. - * Second the cache loader will keep an array of the items set and retrieved to the cache during the request. - * This has several advantages including better performance without needing to start passing the cache instance between - * function calls, the downside is that the cache instance + the items used stay within memory. - * Consider using this setting when you know that there are going to be many calls to the cache for the same information - * or when you are converting existing code to the cache and need to access the cache within functions but don't want - * to add it as an argument to the function. + * + persistentdata + * The cache loader will keep an array of the items set and retrieved to the cache during the request. + * Consider using this setting when you know that there are going to be many calls to the cache for the same information. + * Requests for data in this array will be ultra fast, but it will cost memory. * + persistentmaxsize * [int] This supplements the above setting by limiting the number of items in the caches persistent array of items. * Tweaking this setting lower will allow you to minimise the memory implications above while hopefully still managing to @@ -253,10 +248,10 @@ class cache_definition { protected $datasourceaggregate = null; /** - * Set to true if the definitions cache should be persistent + * Set to true if the cache should hold onto items passing through it to speed up subsequent requests. * @var bool */ - protected $persistent = false; + protected $persistentdata = false; /** * The persistent item array max size. @@ -363,7 +358,7 @@ class cache_definition { $overrideclassfile = null; $datasource = null; $datasourcefile = null; - $persistent = false; + $persistentdata = false; $persistentmaxsize = false; $ttl = 0; $mappingsonly = false; @@ -419,7 +414,11 @@ class cache_definition { } if (array_key_exists('persistent', $definition)) { - $persistent = (bool)$definition['persistent']; + // Ahhh this is the legacy persistent option. + $persistentdata = (bool)$definition['persistent']; + } + if (array_key_exists('persistentdata', $definition)) { + $persistentdata = (bool)$definition['persistentdata']; } if (array_key_exists('persistentmaxsize', $definition)) { $persistentmaxsize = (int)$definition['persistentmaxsize']; @@ -518,7 +517,7 @@ class cache_definition { $cachedefinition->datasource = $datasource; $cachedefinition->datasourcefile = $datasourcefile; $cachedefinition->datasourceaggregate = $datasourceaggregate; - $cachedefinition->persistent = $persistent; + $cachedefinition->persistentdata = $persistentdata; $cachedefinition->persistentmaxsize = $persistentmaxsize; $cachedefinition->ttl = $ttl; $cachedefinition->mappingsonly = $mappingsonly; @@ -543,7 +542,8 @@ class cache_definition { * - simplekeys : Set to true if the keys you will use are a-zA-Z0-9_ * - simpledata : Set to true if the type of the data you are going to store is scalar, or an array of scalar vars * - overrideclass : The class to use as the loader. - * - persistent : If set to true the cache will persist construction requests. + * - persistentdata : If set to true the cache will hold onto data passing through it. + * - persistentmaxsize : Set it to an int to limit the size of the persistentdata cache. * @return cache_application|cache_session|cache_request */ public static function load_adhoc($mode, $component, $area, array $options = array()) { @@ -560,7 +560,14 @@ class cache_definition { $definition['simpledata'] = $options['simpledata']; } if (!empty($options['persistent'])) { - $definition['persistent'] = $options['persistent']; + // Ahhh this is the legacy persistent option. + $definition['persistentdata'] = (bool)$options['persistent']; + } + if (!empty($options['persistentdata'])) { + $definition['persistentdata'] = (bool)$options['persistentdata']; + } + if (!empty($options['persistentmaxsize'])) { + $definition['persistentmaxsize'] = (int)$options['persistentmaxsize']; } if (!empty($options['overrideclass'])) { $definition['overrideclass'] = $options['overrideclass']; @@ -788,10 +795,26 @@ class cache_definition { /** * Returns true if this definitions cache should be made persistent. + * + * Please call data_should_be_persistent instead. + * + * @deprecated since 2.6 * @return bool */ public function should_be_persistent() { - return $this->persistent || $this->mode === cache_store::MODE_SESSION; + return $this->data_should_be_persistent(); + } + + /** + * Returns true if the cache loader for this definition should be persistent. + * @return bool + */ + public function data_should_be_persistent() { + if ($this->mode === cache_store::MODE_REQUEST) { + // Request caches should never use persistent data - it just doesn't make sense. + return false; + } + return $this->persistentdata || $this->mode === cache_store::MODE_SESSION; } /** diff --git a/cache/classes/dummystore.php b/cache/classes/dummystore.php index 43d922961c5..cc6fbb9cee2 100644 --- a/cache/classes/dummystore.php +++ b/cache/classes/dummystore.php @@ -112,7 +112,7 @@ class cachestore_dummy extends cache_store { // store things in its persistent cache. // - If the definition is not persistent then the cache loader won't try to store anything // and we will need to store it here in order to make sure it is accessible. - $this->persist = !$definition->should_be_persistent(); + $this->persist = !$definition->data_should_be_persistent(); } /** diff --git a/cache/classes/factory.php b/cache/classes/factory.php index 476ec0ba55b..7860ac43295 100644 --- a/cache/classes/factory.php +++ b/cache/classes/factory.php @@ -150,9 +150,7 @@ class cache_factory { */ public static function reset() { $factory = self::instance(); - $factory->cachesfromdefinitions = array(); - $factory->cachesfromparams = array(); - $factory->stores = array(); + $factory->reset_cache_instances(); $factory->configs = array(); $factory->definitions = array(); $factory->lockplugins = array(); // MUST be null in order to force its regeneration. @@ -160,6 +158,18 @@ class cache_factory { $factory->state = self::STATE_UNINITIALISED; } + /** + * Resets the stores, clearing the array of created stores. + * + * Cache objects still held onto by the code that initialised them will remain as is + * however all future requests for a cache/store will lead to a new instance being re-initialised. + */ + public function reset_cache_instances() { + $this->cachesfromdefinitions = array(); + $this->cachesfromparams = array(); + $this->stores = array(); + } + /** * Creates a cache object given the parameters for a definition. * @@ -181,9 +191,8 @@ class cache_factory { $definition = $this->create_definition($component, $area, $aggregate); $definition->set_identifiers($identifiers); $cache = $this->create_cache($definition, $identifiers); - if ($definition->should_be_persistent()) { - $this->cachesfromdefinitions[$definitionname] = $cache; - } + // Loaders are always held onto to speed up subsequent requests. + $this->cachesfromdefinitions[$definitionname] = $cache; return $cache; } @@ -210,9 +219,7 @@ class cache_factory { $definition = cache_definition::load_adhoc($mode, $component, $area, $options); $definition->set_identifiers($identifiers); $cache = $this->create_cache($definition, $identifiers); - if ($definition->should_be_persistent()) { - $this->cachesfromparams[$key] = $cache; - } + $this->cachesfromparams[$key] = $cache; return $cache; } @@ -585,7 +592,9 @@ class cache_factory { * */ public static function disable_stores() { + // First reset to clear any persistent caches. $factory = self::instance(); + $factory->reset_cache_instances(); $factory->set_state(self::STATE_STORES_DISABLED); } } diff --git a/cache/classes/helper.php b/cache/classes/helper.php index 6f30b4b2bf9..15870acc218 100644 --- a/cache/classes/helper.php +++ b/cache/classes/helper.php @@ -244,7 +244,8 @@ class cache_helper { // OK at this point we know that the definition has information to invalidate on the event. // There are two routes, either its an application cache in which case we can invalidate it now. // or it is a persistent cache that also needs to be invalidated now. - if ($definition->get_mode() === cache_store::MODE_APPLICATION || $definition->should_be_persistent()) { + $applicationcache = $definition->get_mode() === cache_store::MODE_APPLICATION; + if ($applicationcache || $definition->data_should_be_persistent()) { $cache = $factory->create_cache_from_definition($definition->get_component(), $definition->get_area()); $cache->delete_many($keys); } @@ -315,8 +316,8 @@ class cache_helper { foreach ($instance->get_definitions() as $name => $definitionarr) { $definition = cache_definition::load($name, $definitionarr); if ($definition->invalidates_on_event($event)) { - // Check if this definition would result in a persistent loader being in use. - if ($definition->should_be_persistent()) { + // Check if this definition would result in a loader with persistent data being in use. + if ($definition->data_should_be_persistent()) { // There may be a persistent cache loader. Lets purge that first so that any persistent data is removed. $cache = $factory->create_cache_from_definition($definition->get_component(), $definition->get_area()); $cache->purge(); diff --git a/cache/classes/loaders.php b/cache/classes/loaders.php index 6de94e299b3..2973394cb8e 100644 --- a/cache/classes/loaders.php +++ b/cache/classes/loaders.php @@ -99,7 +99,7 @@ class cache implements cache_loader { * There are several other variables to control how this persist cache works. * @var bool */ - private $persist = false; + private $persistdata = false; /** * The persist cache itself. @@ -218,8 +218,8 @@ class cache implements cache_loader { $this->datasource = $loader; } $this->definition->generate_definition_hash(); - $this->persist = $this->definition->should_be_persistent(); - if ($this->persist) { + $this->persistdata = $this->definition->data_should_be_persistent(); + if ($this->persistdata) { $this->persistmaxsize = $this->definition->get_persistent_max_size(); } $this->hasattl = ($this->definition->get_ttl() > 0); @@ -239,12 +239,12 @@ class cache implements cache_loader { if ($setting) { $this->subloader = true; // Subloaders should not keep persistent data. - $this->persist = false; + $this->persistdata = false; $this->persistmaxsize = false; } else { $this->subloader = true; - $this->persist = $this->definition->should_be_persistent(); - if ($this->persist) { + $this->persistdata = $this->definition->data_should_be_persistent(); + if ($this->persistdata) { $this->persistmaxsize = $this->definition->get_persistent_max_size(); } } @@ -913,7 +913,7 @@ class cache implements cache_loader { * @return bool */ protected function is_using_persist_cache() { - return $this->persist; + return $this->persistdata; } /** @@ -929,7 +929,7 @@ class cache implements cache_loader { } // This could be written as a single line, however it has been split because the ttl check is faster than the instanceof // and has_expired calls. - if (!$this->persist || !array_key_exists($key, $this->persistcache)) { + if (!$this->persistdata || !array_key_exists($key, $this->persistcache)) { return false; } if ($this->has_a_ttl() && $this->store_supports_native_ttl()) { @@ -953,7 +953,7 @@ class cache implements cache_loader { // for null values, meaning null values will come from backing store not // the persist cache. We think this okay because null usage should be // very rare (see comment in MDL-39472). - if (!$this->persist || !isset($this->persistcache[$key])) { + if (!$this->persistdata || !isset($this->persistcache[$key])) { $result = false; } else { $data = $this->persistcache[$key]; diff --git a/cache/tests/cache_test.php b/cache/tests/cache_test.php index 23df737f0e8..701ec11030d 100644 --- a/cache/tests/cache_test.php +++ b/cache/tests/cache_test.php @@ -149,7 +149,7 @@ class core_cache_testcase extends advanced_testcase { 'mode' => cache_store::MODE_APPLICATION, 'component' => 'phpunit', 'area' => 'test_default_application_cache', - 'persistent' => true, + 'persistentdata' => true, 'persistentmaxsize' => 1 )); $cache = cache::make('phpunit', 'test_default_application_cache'); @@ -189,7 +189,7 @@ class core_cache_testcase extends advanced_testcase { 'mode' => cache_store::MODE_APPLICATION, 'component' => 'phpunit', 'area' => 'nostoretest2', - 'persistent' => true + 'persistentdata' => true )); $instance->phpunit_remove_stores(); @@ -924,11 +924,11 @@ class core_cache_testcase extends advanced_testcase { 'crazyevent' ) )); - $instance->phpunit_add_definition('phpunit/eventpurgetestpersistent', array( + $instance->phpunit_add_definition('phpunit/eventpurgetestpersistentapp', array( 'mode' => cache_store::MODE_APPLICATION, 'component' => 'phpunit', - 'area' => 'eventpurgetestpersistent', - 'persistent' => true, + 'area' => 'eventpurgetestpersistentapp', + 'persistentdata' => true, 'invalidationevents' => array( 'crazyevent' ) @@ -948,7 +948,7 @@ class core_cache_testcase extends advanced_testcase { $this->assertFalse($cache->get('testkey2')); // Now test the persistent cache. - $cache = cache::make('phpunit', 'eventpurgetestpersistent'); + $cache = cache::make('phpunit', 'eventpurgetestpersistentapp'); $this->assertTrue($cache->set('testkey1', 'test data 1')); $this->assertEquals('test data 1', $cache->get('testkey1')); $this->assertTrue($cache->set('testkey2', 'test data 2')); @@ -979,7 +979,7 @@ class core_cache_testcase extends advanced_testcase { 'mode' => cache_store::MODE_SESSION, 'component' => 'phpunit', 'area' => 'eventpurgetestpersistent', - 'persistent' => true, + 'persistentdata' => true, 'invalidationevents' => array( 'crazyevent' ) @@ -1400,7 +1400,7 @@ class core_cache_testcase extends advanced_testcase { 'mode' => cache_store::MODE_APPLICATION, 'component' => 'phpunit', 'area' => 'test_application_locking', - 'persistent' => true, + 'persistentdata' => true, 'persistentmaxsize' => 1, 'requirelockingread' => true, 'requirelockingwrite' => true @@ -1535,4 +1535,4 @@ class core_cache_testcase extends advanced_testcase { $this->assertInstanceOf('cache_request', $cache); $this->assertArrayHasKey('cache_is_searchable', $cache->phpunit_get_store_implements()); } -} \ No newline at end of file +} diff --git a/cache/tests/fixtures/lib.php b/cache/tests/fixtures/lib.php index b6d73584220..d9995834b96 100644 --- a/cache/tests/fixtures/lib.php +++ b/cache/tests/fixtures/lib.php @@ -251,6 +251,26 @@ class cache_phpunit_application extends cache_application { public function phpunit_get_store_implements() { return class_implements($this->get_store()); } + + /** + * Returns the given key directly from the persistdata cache. + * + * @param string $key + * @return false|mixed + */ + public function phpunit_get_directly_from_persistcache($key) { + $key = $this->parse_key($key); + return $this->get_from_persist_cache($key); + } + + /** + * Returns the cache loaders definition. + * + * @return cache_definition + */ + public function phpunit_get_definition() { + return $this->get_definition(); + } } /** diff --git a/lib/db/caches.php b/lib/db/caches.php index 0b1a99d45a4..688b986bbf9 100644 --- a/lib/db/caches.php +++ b/lib/db/caches.php @@ -36,7 +36,7 @@ $definitions = array( 'mode' => cache_store::MODE_APPLICATION, 'simplekeys' => true, 'simpledata' => true, - 'persistent' => true, + 'persistentdata' => true, 'persistentmaxsize' => 30 ), @@ -58,7 +58,7 @@ $definitions = array( 'requireidentifiers' => array( 'dbfamily' ), - 'persistent' => true, + 'persistentdata' => true, 'persistentmaxsize' => 15 ), @@ -71,7 +71,7 @@ $definitions = array( // cache will likely be used either lots or never. 'eventinvalidation' => array( 'mode' => cache_store::MODE_APPLICATION, - 'persistent' => true, + 'persistentdata' => true, 'requiredataguarantee' => true, 'simpledata' => true, ), @@ -103,7 +103,7 @@ $definitions = array( // Persistence is used because normally several settings within a script. 'config' => array( 'mode' => cache_store::MODE_APPLICATION, - 'persistent' => true, + 'persistentdata' => true, 'simpledata' => true ), @@ -114,7 +114,7 @@ $definitions = array( 'mode' => cache_store::MODE_APPLICATION, 'simplekeys' => true, // The course id the groupings exist for. 'simpledata' => true, // Array of stdClass objects containing only strings. - 'persistent' => true, // Likely there will be a couple of calls to this. + 'persistentdata' => true, // Likely there will be a couple of calls to this. 'persistmaxsize' => 2, // The original cache used 1, we've increased that to two. ), @@ -123,7 +123,7 @@ $definitions = array( 'mode' => cache_store::MODE_APPLICATION, 'simplekeys' => true, 'simpledata' => true, - 'persistent' => true, + 'persistentdata' => true, ), // YUI Module cache. @@ -137,7 +137,7 @@ $definitions = array( 'mode' => cache_store::MODE_APPLICATION, 'simplekeys' => true, 'simpledata' => true, - 'persistent' => true, + 'persistentdata' => true, 'persistentmaxsize' => 2, ), @@ -147,46 +147,91 @@ $definitions = array( 'mode' => cache_store::MODE_APPLICATION, 'simplekeys' => true, 'simpledata' => true, - 'persistent' => false, + 'persistentdata' => true, + 'persistentmaxsize' => 2, ), - // Used to store the full tree of course categories + // Cache used by the {@link plugininfo_mod} class. + 'plugininfo_mod' => array( + 'mode' => cache_store::MODE_APPLICATION, + 'simplekeys' => true, + 'simpledata' => true, + 'persistentdata' => true, + 'persistentmaxsize' => 1, + ), + + // Cache used by the {@link plugininfo_block} class. + 'plugininfo_block' => array( + 'mode' => cache_store::MODE_APPLICATION, + 'simplekeys' => true, + 'simpledata' => true, + 'persistentdata' => true, + 'persistentmaxsize' => 1, + ), + + // Cache used by the {@link plugininfo_filter} class. + 'plugininfo_filter' => array( + 'mode' => cache_store::MODE_APPLICATION, + 'simplekeys' => true, + 'simpledata' => true, + 'persistentdata' => true, + 'persistentmaxsize' => 1, + ), + + // Cache used by the {@link plugininfo_repository} class. + 'plugininfo_repository' => array( + 'mode' => cache_store::MODE_APPLICATION, + 'simplekeys' => true, + 'simpledata' => true, + 'persistentdata' => true, + 'persistentmaxsize' => 1, + ), + + // Cache used by the {@link plugininfo_portfolio} class. + 'plugininfo_portfolio' => array( + 'mode' => cache_store::MODE_APPLICATION, + 'simplekeys' => true, + 'simpledata' => true, + 'persistentdata' => true, + 'persistentmaxsize' => 1, +>>>>>>> MDL-40903 cache: converted persistent into persistentdata + ), + + // Used to store the full tree of course categories. 'coursecattree' => array( 'mode' => cache_store::MODE_APPLICATION, - 'persistent' => true, + 'persistentdata' => true, 'invalidationevents' => array( 'changesincoursecat', ) ), - // Used to store data for course categories visible to current user. Helps to browse list of categories + // Used to store data for course categories visible to current user. Helps to browse list of categories. 'coursecat' => array( 'mode' => cache_store::MODE_SESSION, - 'persistent' => true, + 'persistentdata' => true, 'invalidationevents' => array( 'changesincoursecat', 'changesincourse', ), 'ttl' => 600, ), - // Used to store data for course categories visible to current user. Helps to browse list of categories + // Used to store data for course categories visible to current user. Helps to browse list of categories. 'coursecatrecords' => array( 'mode' => cache_store::MODE_REQUEST, 'simplekeys' => true, - 'persistent' => true, 'invalidationevents' => array( 'changesincoursecat', ), ), - // Cache course contacts for the courses + // Cache course contacts for the courses. 'coursecontacts' => array( 'mode' => cache_store::MODE_APPLICATION, - 'persistent' => true, + 'persistentdata' => true, 'simplekeys' => true, ), - // Used to store data for repositories to avoid repetitive DB queries within one request + // Used to store data for repositories to avoid repetitive DB queries within one request. 'repositories' => array( 'mode' => cache_store::MODE_REQUEST, - 'persistent' => true, ), // Used to store external badges. 'externalbadges' => array( From 8bc1d659b8aabb04c10227ac5ed8d72066e030de Mon Sep 17 00:00:00 2001 From: Sam Hemelryk Date: Tue, 10 Sep 2013 09:53:45 +1200 Subject: [PATCH 068/101] MDL-40903 cache: coding style tidyup pre-integration --- cache/classes/definition.php | 9 +++++++-- cache/tests/fixtures/lib.php | 20 -------------------- lib/db/caches.php | 1 - 3 files changed, 7 insertions(+), 23 deletions(-) diff --git a/cache/classes/definition.php b/cache/classes/definition.php index f4d1ea9e44f..9033ea5f229 100644 --- a/cache/classes/definition.php +++ b/cache/classes/definition.php @@ -802,11 +802,16 @@ class cache_definition { * @return bool */ public function should_be_persistent() { + debugging('should_be_persistent has been deprecated please call data_should_be_persistent instead', DEBUG_DEVELOPER); return $this->data_should_be_persistent(); } /** - * Returns true if the cache loader for this definition should be persistent. + * Returns true if we should hold onto the data flowing through the cache. + * + * If set to true data flowing through the cache will be stored in a static variable + * to make subsequent requests for the data much faster. + * * @return bool */ public function data_should_be_persistent() { @@ -939,4 +944,4 @@ class cache_definition { public function has_required_identifiers() { return (count($this->requireidentifiers) > 0); } -} \ No newline at end of file +} diff --git a/cache/tests/fixtures/lib.php b/cache/tests/fixtures/lib.php index d9995834b96..b6d73584220 100644 --- a/cache/tests/fixtures/lib.php +++ b/cache/tests/fixtures/lib.php @@ -251,26 +251,6 @@ class cache_phpunit_application extends cache_application { public function phpunit_get_store_implements() { return class_implements($this->get_store()); } - - /** - * Returns the given key directly from the persistdata cache. - * - * @param string $key - * @return false|mixed - */ - public function phpunit_get_directly_from_persistcache($key) { - $key = $this->parse_key($key); - return $this->get_from_persist_cache($key); - } - - /** - * Returns the cache loaders definition. - * - * @return cache_definition - */ - public function phpunit_get_definition() { - return $this->get_definition(); - } } /** diff --git a/lib/db/caches.php b/lib/db/caches.php index 688b986bbf9..4e4da4e170b 100644 --- a/lib/db/caches.php +++ b/lib/db/caches.php @@ -208,7 +208,6 @@ $definitions = array( // Used to store data for course categories visible to current user. Helps to browse list of categories. 'coursecat' => array( 'mode' => cache_store::MODE_SESSION, - 'persistentdata' => true, 'invalidationevents' => array( 'changesincoursecat', 'changesincourse', From d67a1a8815d612d0abbb41daadc95739276a1884 Mon Sep 17 00:00:00 2001 From: Marina Glancy Date: Tue, 10 Sep 2013 23:08:35 +1000 Subject: [PATCH 069/101] MDL-40903 cache: Unittests and small fixes for persistent application cache --- cache/classes/loaders.php | 11 +++ cache/tests/cache_test.php | 158 +++++++++++++++++++++++++++++++++++ cache/tests/fixtures/lib.php | 11 +++ 3 files changed, 180 insertions(+) diff --git a/cache/classes/loaders.php b/cache/classes/loaders.php index 2973394cb8e..e21856c99ad 100644 --- a/cache/classes/loaders.php +++ b/cache/classes/loaders.php @@ -404,6 +404,9 @@ class cache implements cache_loader { if ($value instanceof cache_cached_object) { $value = $value->restore_object(); } + if ($value !== false && $this->is_using_persist_cache()) { + $this->set_in_persist_cache($key, $value); + } $resultstore[$key] = $value; } } @@ -800,6 +803,10 @@ class cache implements cache_loader { public function purge() { // 1. Purge the persist cache. $this->persistcache = array(); + if ($this->persistmaxsize !== false) { + $this->persistkeys = array(); + $this->persistcount = 0; + } // 2. Purge the store. $this->store->purge(); // 3. Optionally pruge any stacked loaders. @@ -1006,6 +1013,10 @@ class cache implements cache_loader { if ($key === (array)$key) { $key = $key['key']; } + if ($this->persistmaxsize !== false && isset($this->persistkeys[$key])) { + $this->persistcount--; + unset($this->persistkeys[$key]); + } $this->persistcache[$key] = $data; if ($this->persistmaxsize !== false) { $this->persistcount++; diff --git a/cache/tests/cache_test.php b/cache/tests/cache_test.php index 701ec11030d..aa8c720860c 100644 --- a/cache/tests/cache_test.php +++ b/cache/tests/cache_test.php @@ -1535,4 +1535,162 @@ class core_cache_testcase extends advanced_testcase { $this->assertInstanceOf('cache_request', $cache); $this->assertArrayHasKey('cache_is_searchable', $cache->phpunit_get_store_implements()); } + + public function test_persistent_cache() { + $instance = cache_config_phpunittest::instance(); + $instance->phpunit_add_definition('phpunit/persistentapp', array( + 'mode' => cache_store::MODE_APPLICATION, + 'component' => 'phpunit', + 'area' => 'persistentapp', + 'persistentdata' => true, + 'persistentmaxsize' => 3, + )); + $instance->phpunit_add_definition('phpunit/persistentapp2', array( + 'mode' => cache_store::MODE_APPLICATION, + 'component' => 'phpunit', + 'area' => 'persistentapp2', + 'persistentdata' => true, + 'persistentmaxsize' => 3, + )); + $instance->phpunit_add_definition('phpunit/persistentapp3', array( + 'mode' => cache_store::MODE_APPLICATION, + 'component' => 'phpunit', + 'area' => 'persistentapp3', + 'persistentdata' => true, + 'persistentmaxsize' => 3, + )); + $instance->phpunit_add_definition('phpunit/persistentapp4', array( + 'mode' => cache_store::MODE_APPLICATION, + 'component' => 'phpunit', + 'area' => 'persistentapp3', + 'persistentdata' => true, + 'persistentmaxsize' => 4, + )); + $cache = cache::make('phpunit', 'persistentapp'); + $this->assertInstanceOf('cache_phpunit_application', $cache); + + // Set and get three elements. + $this->assertTrue($cache->set('a', 'A')); + $this->assertTrue($cache->set('b', 'B')); + $this->assertTrue($cache->set('c', 'C')); + $this->assertEquals('A', $cache->get('a')); + $this->assertEquals(array('b' => 'B', 'c' => 'C'), $cache->get_many(array('b', 'c'))); + + // Make sure all items are in persistent cache. + $this->assertEquals('A', $cache->phpunit_get_directly_from_persistcache('a')); + $this->assertEquals('B', $cache->phpunit_get_directly_from_persistcache('b')); + $this->assertEquals('C', $cache->phpunit_get_directly_from_persistcache('c')); + + // Add new value and make sure it is in cache and it is in persistcache. + $this->assertTrue($cache->set('d', 'D')); + $this->assertEquals('D', $cache->phpunit_get_directly_from_persistcache('d')); + $this->assertEquals('D', $cache->get('d')); + + // Now the least recent accessed item (a) is no longer in persistent cache. + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('a')); + $this->assertEquals('B', $cache->phpunit_get_directly_from_persistcache('b')); + $this->assertEquals('C', $cache->phpunit_get_directly_from_persistcache('c')); + + // Adding and deleting element. + $this->assertTrue($cache->set('a', 'A')); + $this->assertTrue($cache->delete('a')); + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('a')); + $this->assertFalse($cache->has('a')); + + // Make sure "purge" deletes from persist as well. + $cache->purge(); + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('a')); + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('b')); + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('c')); + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('d')); + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('e')); + + // Check that persistent cache holds the last accessed items by get/set. + $this->assertTrue($cache->set('a', 'A')); + $this->assertTrue($cache->set('b', 'B')); + $this->assertTrue($cache->set('c', 'C')); + $this->assertTrue($cache->set('d', 'D')); + $this->assertTrue($cache->set('e', 'E')); + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('a')); + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('b')); + $this->assertEquals('C', $cache->phpunit_get_directly_from_persistcache('c')); + $this->assertEquals('D', $cache->phpunit_get_directly_from_persistcache('d')); + $this->assertEquals('E', $cache->phpunit_get_directly_from_persistcache('e')); + + /** @var cache_phpunit_application $cache */ + $cache = cache::make('phpunit', 'persistentapp2'); + $this->assertInstanceOf('cache_phpunit_application', $cache); + + // Check that persistent cache holds the last accessed items by get/set. + $this->assertTrue($cache->set('a', 'A')); + $this->assertTrue($cache->set('b', 'B')); + $this->assertTrue($cache->set('c', 'C')); + $this->assertTrue($cache->set('d', 'D')); + $this->assertTrue($cache->set('e', 'E')); + // Current keys in persist cache: c, d, e. + $this->assertEquals('C', $cache->phpunit_get_directly_from_persistcache('c')); + $this->assertEquals('D', $cache->phpunit_get_directly_from_persistcache('d')); + $this->assertEquals('E', $cache->phpunit_get_directly_from_persistcache('e')); + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('a')); + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('b')); + + $this->assertEquals('A', $cache->get('a')); + // Current keys in persist cache: d, e, a. + $this->assertEquals('D', $cache->phpunit_get_directly_from_persistcache('d')); + $this->assertEquals('E', $cache->phpunit_get_directly_from_persistcache('e')); + $this->assertEquals('A', $cache->phpunit_get_directly_from_persistcache('a')); + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('b')); + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('c')); + + // Current keys in persist cache: d, e, a. + $this->assertEquals(array('c' => 'C'), $cache->get_many(array('c'))); + // Current keys in persist cache: e, a, c. + $this->assertEquals('E', $cache->phpunit_get_directly_from_persistcache('e')); + $this->assertEquals('A', $cache->phpunit_get_directly_from_persistcache('a')); + $this->assertEquals('C', $cache->phpunit_get_directly_from_persistcache('c')); + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('b')); + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('d')); + + + $cache = cache::make('phpunit', 'persistentapp3'); + $this->assertInstanceOf('cache_phpunit_application', $cache); + + // Check that persistent cache holds the last accessed items by get/set. + $this->assertTrue($cache->set('a', 'A')); + $this->assertTrue($cache->set('b', 'B')); + $this->assertTrue($cache->set('c', 'C')); + $this->assertTrue($cache->set('d', 'D')); + $this->assertTrue($cache->set('e', 'E')); + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('a')); + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('b')); + $this->assertEquals('C', $cache->phpunit_get_directly_from_persistcache('c')); + $this->assertEquals('D', $cache->phpunit_get_directly_from_persistcache('d')); + $this->assertEquals('E', $cache->phpunit_get_directly_from_persistcache('e')); + + $this->assertTrue($cache->set('b', 'B2')); + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('a')); + $this->assertEquals('B2', $cache->phpunit_get_directly_from_persistcache('b')); + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('c')); + $this->assertEquals('D', $cache->phpunit_get_directly_from_persistcache('d')); + $this->assertEquals('E', $cache->phpunit_get_directly_from_persistcache('e')); + + $this->assertEquals(2, $cache->set_many(array('b' => 'B3', 'c' => 'C3'))); + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('a')); + $this->assertEquals('B3', $cache->phpunit_get_directly_from_persistcache('b')); + $this->assertEquals('C3', $cache->phpunit_get_directly_from_persistcache('c')); + $this->assertFalse($cache->phpunit_get_directly_from_persistcache('d')); + $this->assertEquals('E', $cache->phpunit_get_directly_from_persistcache('e')); + + $cache = cache::make('phpunit', 'persistentapp4'); + $this->assertInstanceOf('cache_phpunit_application', $cache); + $this->assertTrue($cache->set('a', 'A')); + $this->assertTrue($cache->set('a', 'A')); + $this->assertTrue($cache->set('a', 'A')); + $this->assertTrue($cache->set('a', 'A')); + $this->assertTrue($cache->set('a', 'A')); + $this->assertTrue($cache->set('a', 'A')); + $this->assertTrue($cache->set('a', 'A')); + $this->assertEquals('A', $cache->phpunit_get_directly_from_persistcache('a')); + $this->assertEquals('A', $cache->get('a')); + } } diff --git a/cache/tests/fixtures/lib.php b/cache/tests/fixtures/lib.php index b6d73584220..5f7364d84df 100644 --- a/cache/tests/fixtures/lib.php +++ b/cache/tests/fixtures/lib.php @@ -251,6 +251,17 @@ class cache_phpunit_application extends cache_application { public function phpunit_get_store_implements() { return class_implements($this->get_store()); } + + /** + * Returns the given key directly from the persistdata cache. + * + * @param string $key + * @return false|mixed + */ + public function phpunit_get_directly_from_persistcache($key) { + $key = $this->parse_key($key); + return $this->get_from_persist_cache($key); + } } /** From fb0eaa3fdafb5a499d01c9b66f975b974f732eb3 Mon Sep 17 00:00:00 2001 From: Sam Hemelryk Date: Tue, 17 Sep 2013 10:56:52 +1200 Subject: [PATCH 070/101] MDL-40903 cache: fixed up event invalidation --- cache/classes/helper.php | 48 ++++++++++++++++++++++------------------ 1 file changed, 27 insertions(+), 21 deletions(-) diff --git a/cache/classes/helper.php b/cache/classes/helper.php index 15870acc218..96c66019a2a 100644 --- a/cache/classes/helper.php +++ b/cache/classes/helper.php @@ -238,20 +238,24 @@ class cache_helper { $instance = cache_config::instance(); $invalidationeventset = false; $factory = cache_factory::instance(); + $inuse = $factory->get_caches_in_use(); foreach ($instance->get_definitions() as $name => $definitionarr) { $definition = cache_definition::load($name, $definitionarr); if ($definition->invalidates_on_event($event)) { - // OK at this point we know that the definition has information to invalidate on the event. - // There are two routes, either its an application cache in which case we can invalidate it now. - // or it is a persistent cache that also needs to be invalidated now. - $applicationcache = $definition->get_mode() === cache_store::MODE_APPLICATION; - if ($applicationcache || $definition->data_should_be_persistent()) { - $cache = $factory->create_cache_from_definition($definition->get_component(), $definition->get_area()); - $cache->delete_many($keys); + // First up check if there is a cache loader for this definition already. + // If there is we need to invalidate the keys from there. + $definitionkey = $definition->get_component().'/'.$definition->get_area(); + if (isset($inuse[$definitionkey])) { + $inuse[$definitionkey]->delete_many($keys); } - // We need to flag the event in the "Event invalidation" cache if it hasn't already happened. - if ($invalidationeventset === false) { + // We should only log events for application and session caches. + // Request caches shouldn't have events as all data is lost at the end of the request. + // Events should only be logged once of course and likely several definitions are watching so we + // track its logging with $invalidationeventset. + $logevent = ($invalidationeventset === false && $definition->get_mode() !== cache_store::MODE_REQUEST); + + if ($logevent) { // Get the event invalidation cache. $cache = cache::make('core', 'eventinvalidation'); // Get any existing invalidated keys for this cache. @@ -313,23 +317,25 @@ class cache_helper { $instance = cache_config::instance(); $invalidationeventset = false; $factory = cache_factory::instance(); + $inuse = $factory->get_caches_in_use(); foreach ($instance->get_definitions() as $name => $definitionarr) { $definition = cache_definition::load($name, $definitionarr); if ($definition->invalidates_on_event($event)) { - // Check if this definition would result in a loader with persistent data being in use. - if ($definition->data_should_be_persistent()) { - // There may be a persistent cache loader. Lets purge that first so that any persistent data is removed. - $cache = $factory->create_cache_from_definition($definition->get_component(), $definition->get_area()); - $cache->purge(); - } - // Get all of the store instances that are in use for this store. - $stores = $factory->get_store_instances_in_use($definition); - foreach ($stores as $store) { - // Purge each store individually. - $store->purge(); + // First up check if there is a cache loader for this definition already. + // If there is we need to invalidate the keys from there. + $definitionkey = $definition->get_component().'/'.$definition->get_area(); + if (isset($inuse[$definitionkey])) { + $inuse[$definitionkey]->purge(); } + + // We should only log events for application and session caches. + // Request caches shouldn't have events as all data is lost at the end of the request. + // Events should only be logged once of course and likely several definitions are watching so we + // track its logging with $invalidationeventset. + $logevent = ($invalidationeventset === false && $definition->get_mode() !== cache_store::MODE_REQUEST); + // We need to flag the event in the "Event invalidation" cache if it hasn't already happened. - if ($invalidationeventset === false) { + if ($logevent && $invalidationeventset === false) { // Get the event invalidation cache. $cache = cache::make('core', 'eventinvalidation'); // Create a key to invalidate all. From d074fb091d2aea84e40a8818f32164aeafb6ec03 Mon Sep 17 00:00:00 2001 From: Sam Hemelryk Date: Tue, 17 Sep 2013 11:56:15 +1200 Subject: [PATCH 071/101] MDL-40903 cache: renamed persistcache to staticacceleration --- cache/README.md | 12 +-- cache/classes/definition.php | 79 ++++++++------ cache/classes/dummystore.php | 17 ++-- cache/classes/factory.php | 14 ++- cache/classes/loaders.php | 152 +++++++++++++-------------- cache/disabledlib.php | 6 +- cache/tests/cache_test.php | 192 +++++++++++++++++------------------ cache/tests/fixtures/lib.php | 4 +- cache/upgrade.txt | 8 ++ lib/db/caches.php | 49 +++++---- 10 files changed, 287 insertions(+), 246 deletions(-) diff --git a/cache/README.md b/cache/README.md index 535d0e3882d..7e9cd59a88b 100644 --- a/cache/README.md +++ b/cache/README.md @@ -24,8 +24,8 @@ A definition: 'overrideclassfile' => null, // Optional 'datasource' => null, // Optional 'datasourcefile' => null, // Optional - 'persistentdata' => false, // Optional - 'persistentmaxsize' => false, // Optional + 'staticacceleration' => false, // Optional + 'staticaccelerationsize' => false, // Optional 'ttl' => 0, // Optional 'mappingsonly' => false // Optional 'invalidationevents' => array( // Optional @@ -144,8 +144,8 @@ The following optional settings can also be defined: * overrideclassfile - Included if required when using the overrideclass param. * datasource - If provided this class will be used as a data source for the definition. It must implement the cache_data_source interface. * datasourcefile - Included if required when using the datasource param. -* persistentdata - Any data passing through the cache will be held onto to make subsequent requests for it faster. -* persistentmaxsize - If set to an int this will be the maximum number of items stored in the persistent data cache. +* staticacceleration - Any data passing through the cache will be held onto to make subsequent requests for it faster. +* staticaccelerationsize - If set to an int this will be the maximum number of items stored in the static acceleration array. * ttl - Can be used to set a ttl value for data being set for this cache. * mappingsonly - This definition can only be used if there is a store mapping for it. More on this later. * invalidationevents - An array of events that should trigger this cache to invalidate. @@ -154,10 +154,10 @@ The following optional settings can also be defined: It's important to note that internally the definition is also aware of the component. This is picked up when the definition is read, based upon the location of the caches.php file. -The persistentdata option. +The staticacceleration option. Data passed to or retrieved from the loader and its chained loaders gets cached by the instance. Because it caches key=>value data it avoids the need to re-fetch things from stores after the first request. Its good for performance, bad for memory. -Memeory use can be controlled by setting the persistentmaxsize option. +Memory use can be controlled by setting the staticaccelerationsize option. It should be used sparingly. The mappingsonly option. diff --git a/cache/classes/definition.php b/cache/classes/definition.php index 9033ea5f229..302bc178070 100644 --- a/cache/classes/definition.php +++ b/cache/classes/definition.php @@ -75,14 +75,14 @@ defined('MOODLE_INTERNAL') || die(); * [string] A class to use as the data loader for this definition. * Any class used here must inherit the cache_data_loader interface. * + datasourcefile - * [string] Suplements the above setting indicated the file containing the class to be used. This file is included when + * [string] Supplements the above setting indicating the file containing the class to be used. This file is included when * required. - * + persistentdata + * + staticacceleration * The cache loader will keep an array of the items set and retrieved to the cache during the request. * Consider using this setting when you know that there are going to be many calls to the cache for the same information. * Requests for data in this array will be ultra fast, but it will cost memory. - * + persistentmaxsize - * [int] This supplements the above setting by limiting the number of items in the caches persistent array of items. + * + staticaccelerationsize + * [int] This supplements the above setting by limiting the number of items in the static acceleration array. * Tweaking this setting lower will allow you to minimise the memory implications above while hopefully still managing to * offset calls to the cache store. * + ttl @@ -251,13 +251,13 @@ class cache_definition { * Set to true if the cache should hold onto items passing through it to speed up subsequent requests. * @var bool */ - protected $persistentdata = false; + protected $staticacceleration = false; /** - * The persistent item array max size. + * The maximum number of items that static acceleration cache should hold onto. * @var int */ - protected $persistentmaxsize = false; + protected $staticaccelerationsize = false; /** * The TTL for data in this cache. Please don't use this, instead use event driven invalidation. @@ -358,8 +358,8 @@ class cache_definition { $overrideclassfile = null; $datasource = null; $datasourcefile = null; - $persistentdata = false; - $persistentmaxsize = false; + $staticacceleration = false; + $staticaccelerationsize = false; $ttl = 0; $mappingsonly = false; $invalidationevents = array(); @@ -415,13 +415,17 @@ class cache_definition { if (array_key_exists('persistent', $definition)) { // Ahhh this is the legacy persistent option. - $persistentdata = (bool)$definition['persistent']; + $staticacceleration = (bool)$definition['persistent']; } - if (array_key_exists('persistentdata', $definition)) { - $persistentdata = (bool)$definition['persistentdata']; + if (array_key_exists('staticacceleration', $definition)) { + $staticacceleration = (bool)$definition['staticacceleration']; } if (array_key_exists('persistentmaxsize', $definition)) { - $persistentmaxsize = (int)$definition['persistentmaxsize']; + // Ahhh this is the legacy persistentmaxsize option. + $staticaccelerationsize = (int)$definition['persistentmaxsize']; + } + if (array_key_exists('staticaccelerationsize', $definition)) { + $staticaccelerationsize = (int)$definition['staticaccelerationsize']; } if (array_key_exists('ttl', $definition)) { $ttl = (int)$definition['ttl']; @@ -517,8 +521,8 @@ class cache_definition { $cachedefinition->datasource = $datasource; $cachedefinition->datasourcefile = $datasourcefile; $cachedefinition->datasourceaggregate = $datasourceaggregate; - $cachedefinition->persistentdata = $persistentdata; - $cachedefinition->persistentmaxsize = $persistentmaxsize; + $cachedefinition->staticacceleration = $staticacceleration; + $cachedefinition->staticaccelerationsize = $staticaccelerationsize; $cachedefinition->ttl = $ttl; $cachedefinition->mappingsonly = $mappingsonly; $cachedefinition->invalidationevents = $invalidationevents; @@ -542,8 +546,8 @@ class cache_definition { * - simplekeys : Set to true if the keys you will use are a-zA-Z0-9_ * - simpledata : Set to true if the type of the data you are going to store is scalar, or an array of scalar vars * - overrideclass : The class to use as the loader. - * - persistentdata : If set to true the cache will hold onto data passing through it. - * - persistentmaxsize : Set it to an int to limit the size of the persistentdata cache. + * - staticacceleration : If set to true the cache will hold onto data passing through it. + * - staticaccelerationsize : Set it to an int to limit the size of the staticacceleration cache. * @return cache_application|cache_session|cache_request */ public static function load_adhoc($mode, $component, $area, array $options = array()) { @@ -561,13 +565,13 @@ class cache_definition { } if (!empty($options['persistent'])) { // Ahhh this is the legacy persistent option. - $definition['persistentdata'] = (bool)$options['persistent']; + $definition['staticacceleration'] = (bool)$options['persistent']; } - if (!empty($options['persistentdata'])) { - $definition['persistentdata'] = (bool)$options['persistentdata']; + if (!empty($options['staticacceleration'])) { + $definition['staticacceleration'] = (bool)$options['staticacceleration']; } - if (!empty($options['persistentmaxsize'])) { - $definition['persistentmaxsize'] = (int)$options['persistentmaxsize']; + if (!empty($options['staticaccelerationsize'])) { + $definition['staticaccelerationsize'] = (int)$options['staticaccelerationsize']; } if (!empty($options['overrideclass'])) { $definition['overrideclass'] = $options['overrideclass']; @@ -796,14 +800,15 @@ class cache_definition { /** * Returns true if this definitions cache should be made persistent. * - * Please call data_should_be_persistent instead. + * Please call {@link cache_definition::use_static_acceleration()} instead. * + * @see cache_definition::use_static_acceleration() * @deprecated since 2.6 * @return bool */ public function should_be_persistent() { - debugging('should_be_persistent has been deprecated please call data_should_be_persistent instead', DEBUG_DEVELOPER); - return $this->data_should_be_persistent(); + debugging('Please upgrade your code to use cache_definition::use_static_acceleration', DEBUG_DEVELOPER); + return $this->use_static_acceleration(); } /** @@ -814,20 +819,34 @@ class cache_definition { * * @return bool */ - public function data_should_be_persistent() { + public function use_static_acceleration() { if ($this->mode === cache_store::MODE_REQUEST) { - // Request caches should never use persistent data - it just doesn't make sense. + // Request caches should never use static acceleration - it just doesn't make sense. return false; } - return $this->persistentdata || $this->mode === cache_store::MODE_SESSION; + return $this->staticacceleration || $this->mode === cache_store::MODE_SESSION; } /** - * Returns the max size for the persistent item array in the cache. + * Returns the max size for the static acceleration array. + * + * Please call {@link cache_definition::get_static_acceleration_size()} instead. + * + * @see cache_definition::get_static_acceleration_size() + * @deprecated since 2.6 * @return int */ public function get_persistent_max_size() { - return $this->persistentmaxsize; + debugging('Please upgrade your code to call cache_definition::get_static_acceleration_size', DEBUG_DEVELOPER); + return $this->get_static_acceleration_size(); + } + + /** + * Returns the max size for the static acceleration array. + * @return int + */ + public function get_static_acceleration_size() { + return $this->staticaccelerationsize; } /** diff --git a/cache/classes/dummystore.php b/cache/classes/dummystore.php index cc6fbb9cee2..13c3017bd24 100644 --- a/cache/classes/dummystore.php +++ b/cache/classes/dummystore.php @@ -46,14 +46,15 @@ class cachestore_dummy extends cache_store { protected $name; /** - * Gets set to true if this store is going to persist data. - * This happens when the definition doesn't require it as the loader will not be persisting information and something has to. + * Gets set to true if this store is going to store data. + * This happens when the definition doesn't require static acceleration as the loader will not be storing information and + * something has to. * @var bool */ protected $persist = false; /** - * The persistent store array + * The stored data array * @var array */ protected $store = array(); @@ -106,13 +107,13 @@ class cachestore_dummy extends cache_store { * @param cache_definition $definition */ public function initialise(cache_definition $definition) { - // If the definition isn't persistent then we need to be persistent here. + // If the definition isn't using static acceleration then we need to be store data here. // The reasoning behind this is that: - // - If the definition is persistent then the cache loader is going to - // store things in its persistent cache. - // - If the definition is not persistent then the cache loader won't try to store anything + // - If the definition is using static acceleration then the cache loader is going to + // store things in its static array. + // - If the definition is not using static acceleration then the cache loader won't try to store anything // and we will need to store it here in order to make sure it is accessible. - $this->persist = !$definition->data_should_be_persistent(); + $this->persist = !$definition->use_static_acceleration(); } /** diff --git a/cache/classes/factory.php b/cache/classes/factory.php index 7860ac43295..2843daed731 100644 --- a/cache/classes/factory.php +++ b/cache/classes/factory.php @@ -208,7 +208,8 @@ class cache_factory { * @param array $options An array of options, available options are: * - simplekeys : Set to true if the keys you will use are a-zA-Z0-9_ * - simpledata : Set to true if the type of the data you are going to store is scalar, or an array of scalar vars - * - persistent : If set to true the cache will persist construction requests. + * - staticacceleration : If set to true the cache will hold onto data passing through it. + * - staticaccelerationsize : The maximum number of items to hold onto for acceleration purposes. * @return cache_application|cache_session|cache_request */ public function create_cache_from_params($mode, $component, $area, array $identifiers = array(), array $options = array()) { @@ -304,6 +305,15 @@ class cache_factory { return $this->definitionstores[$id]; } + /** + * Returns the cache instances that have been used within this request. + * @since 2.6 + * @return array + */ + public function get_caches_in_use() { + return $this->cachesfromdefinitions; + } + /** * Creates a cache config instance with the ability to write if required. * @@ -592,7 +602,7 @@ class cache_factory { *
                    */ public static function disable_stores() { - // First reset to clear any persistent caches. + // First reset to clear any static acceleration array. $factory = self::instance(); $factory->reset_cache_instances(); $factory->set_state(self::STATE_STORES_DISABLED); diff --git a/cache/classes/loaders.php b/cache/classes/loaders.php index e21856c99ad..dc2b96ab76c 100644 --- a/cache/classes/loaders.php +++ b/cache/classes/loaders.php @@ -93,43 +93,46 @@ class cache implements cache_loader { private $supportsnativettl = null; /** - * Gets set to true if the cache is going to be using the build in static "persist" cache. - * The persist cache statically caches items used during the lifetime of the request. This greatly speeds up interaction + * Gets set to true if the cache is going to be using a static array for acceleration. + * The array statically caches items used during the lifetime of the request. This greatly speeds up interaction * with the cache in areas where it will be repetitively hit for the same information such as with strings. - * There are several other variables to control how this persist cache works. + * There are several other variables to control how this static acceleration array works. * @var bool */ - private $persistdata = false; + private $staticacceleration = false; /** - * The persist cache itself. + * The static acceleration array. * Items will be stored in this cache as they were provided. This ensure there is no unnecessary processing taking place. * @var array */ - private $persistcache = array(); + private $staticaccelerationarray = array(); /** - * The number of items in the persist cache. Avoids count calls like you wouldn't believe. + * The number of items in the static acceleration array. Avoids count calls like you wouldn't believe. * @var int */ - private $persistcount = 0; + private $staticaccelerationcount = 0; /** - * An array containing just the keys being used in the persist cache. - * This seems redundant perhaps but is used when managing the size of the persist cache. + * An array containing just the keys being used in the static acceleration array. + * This seems redundant perhaps but is used when managing the size of the static acceleration array. * Items are added to the end of the array and the when we need to reduce the size of the cache we use the * key that is first on this array. * @var array */ - private $persistkeys = array(); + private $staticaccelerationkeys = array(); /** - * The maximum size of the persist cache. If set to false there is no max size. - * Caches that make use of the persist cache should seriously consider setting this to something reasonably small, but + * The maximum size of the static acceleration array. + * + * If set to false there is no max size. + * Caches that make use of static acceleration should seriously consider setting this to something reasonably small, but * still large enough to offset repetitive calls. + * * @var int|false */ - private $persistmaxsize = false; + private $staticaccelerationsize = false; /** * Gets set to true during initialisation if the definition is making use of a ttl. @@ -181,7 +184,8 @@ class cache implements cache_loader { * @param array $options An array of options, available options are: * - simplekeys : Set to true if the keys you will use are a-zA-Z0-9_ * - simpledata : Set to true if the type of the data you are going to store is scalar, or an array of scalar vars - * - persistent : If set to true the cache will persist construction requests. + * - staticacceleration : If set to true the cache will hold onto data passing through it. + * - staticaccelerationsize : The max size for the static acceleration array. * @return cache_application|cache_session|cache_store */ public static function make_from_params($mode, $component, $area, array $identifiers = array(), array $options = array()) { @@ -218,9 +222,9 @@ class cache implements cache_loader { $this->datasource = $loader; } $this->definition->generate_definition_hash(); - $this->persistdata = $this->definition->data_should_be_persistent(); - if ($this->persistdata) { - $this->persistmaxsize = $this->definition->get_persistent_max_size(); + $this->staticacceleration = $this->definition->use_static_acceleration(); + if ($this->staticacceleration) { + $this->staticaccelerationsize = $this->definition->get_static_acceleration_size(); } $this->hasattl = ($this->definition->get_ttl() > 0); } @@ -228,7 +232,7 @@ class cache implements cache_loader { /** * Used to inform the loader of its state as a sub loader, or as the top of the chain. * - * This is important as it ensures that we do not have more than one loader keeping persistent data. + * This is important as it ensures that we do not have more than one loader keeping static acceleration data. * Subloaders need to be "pure" loaders in the sense that they are used to store and retrieve information from stores or the * next loader/data source in the chain. * Nothing fancy, nothing flash. @@ -238,14 +242,14 @@ class cache implements cache_loader { protected function set_is_sub_loader($setting = true) { if ($setting) { $this->subloader = true; - // Subloaders should not keep persistent data. - $this->persistdata = false; - $this->persistmaxsize = false; + // Subloaders should not keep static acceleration data. + $this->staticacceleration = false; + $this->staticaccelerationsize = false; } else { $this->subloader = true; - $this->persistdata = $this->definition->data_should_be_persistent(); - if ($this->persistdata) { - $this->persistmaxsize = $this->definition->get_persistent_max_size(); + $this->staticacceleration = $this->definition->use_static_acceleration(); + if ($this->staticacceleration) { + $this->staticaccelerationsize = $this->definition->get_static_acceleration_size(); } } } @@ -276,7 +280,7 @@ class cache implements cache_loader { public function get($key, $strictness = IGNORE_MISSING) { // 1. Parse the key. $parsedkey = $this->parse_key($key); - // 2. Get it from the persist cache if we can (only when persist is enabled and it has already been requested/set). + // 2. Get it from the static acceleration array if we can (only when it is enabled and it has already been requested/set). $result = false; if ($this->is_using_persist_cache()) { $result = $this->get_from_persist_cache($parsedkey); @@ -291,7 +295,7 @@ class cache implements cache_loader { } return $result; } - // 3. Get it from the store. Obviously wasn't in the persist cache. + // 3. Get it from the store. Obviously wasn't in the static acceleration array. $result = $this->store->get($parsedkey); if ($result !== false) { if ($result instanceof cache_ttl_wrapper) { @@ -607,7 +611,7 @@ class cache implements cache_loader { } $data = array(); $simulatettl = $this->has_a_ttl() && !$this->store_supports_native_ttl(); - $usepersistcache = $this->is_using_persist_cache(); + $usestaticaccelerationarray = $this->is_using_persist_cache(); foreach ($keyvaluearray as $key => $value) { if (is_object($value) && $value instanceof cacheable_object) { $value = new cache_cached_object($value); @@ -625,7 +629,7 @@ class cache implements cache_loader { 'key' => $this->parse_key($key), 'value' => $value ); - if ($usepersistcache) { + if ($usestaticaccelerationarray) { $this->set_in_persist_cache($data[$key]['key'], $value); } } @@ -659,7 +663,7 @@ class cache implements cache_loader { public function has($key, $tryloadifpossible = false) { $parsedkey = $this->parse_key($key); if ($this->is_in_persist_cache($parsedkey)) { - // Hoorah, that was easy. It exists in the persist cache so we definitely have it. + // Hoorah, that was easy. It exists in the static acceleration array so we definitely have it. return true; } if ($this->has_a_ttl() && !$this->store_supports_native_ttl()) { @@ -801,11 +805,11 @@ class cache implements cache_loader { * @return bool True on success, false otherwise */ public function purge() { - // 1. Purge the persist cache. - $this->persistcache = array(); - if ($this->persistmaxsize !== false) { - $this->persistkeys = array(); - $this->persistcount = 0; + // 1. Purge the static acceleration array. + $this->staticaccelerationarray = array(); + if ($this->staticaccelerationsize !== false) { + $this->staticaccelerationkeys = array(); + $this->staticaccelerationcount = 0; } // 2. Purge the store. $this->store->purge(); @@ -915,16 +919,16 @@ class cache implements cache_loader { } /** - * Returns true if this cache is making use of the persist cache. + * Returns true if this cache is making use of the static acceleration array. * * @return bool */ protected function is_using_persist_cache() { - return $this->persistdata; + return $this->staticacceleration; } /** - * Returns true if the requested key exists within the persist cache. + * Returns true if the requested key exists within the static acceleration array. * * @param string $key The parsed key * @return bool @@ -936,20 +940,21 @@ class cache implements cache_loader { } // This could be written as a single line, however it has been split because the ttl check is faster than the instanceof // and has_expired calls. - if (!$this->persistdata || !array_key_exists($key, $this->persistcache)) { + if (!$this->staticacceleration || !array_key_exists($key, $this->staticaccelerationarray)) { return false; } if ($this->has_a_ttl() && $this->store_supports_native_ttl()) { - return !($this->persistcache[$key] instanceof cache_ttl_wrapper && $this->persistcache[$key]->has_expired()); + return !($this->staticaccelerationarray[$key] instanceof cache_ttl_wrapper && + $this->staticaccelerationarray[$key]->has_expired()); } return true; } /** - * Returns the item from the persist cache if it exists there. + * Returns the item from the static acceleration array if it exists there. * * @param string $key The parsed key - * @return mixed|false The data from the persist cache or false if it wasn't there. + * @return mixed|false The data from the static acceleration array or false if it wasn't there. */ protected function get_from_persist_cache($key) { // This method of checking if an array was supplied is faster than is_array. @@ -958,12 +963,12 @@ class cache implements cache_loader { } // This isset check is faster than array_key_exists but will return false // for null values, meaning null values will come from backing store not - // the persist cache. We think this okay because null usage should be + // the static acceleration array. We think this okay because null usage should be // very rare (see comment in MDL-39472). - if (!$this->persistdata || !isset($this->persistcache[$key])) { + if (!$this->staticacceleration || !isset($this->staticaccelerationarray[$key])) { $result = false; } else { - $data = $this->persistcache[$key]; + $data = $this->staticaccelerationarray[$key]; if (!$this->has_a_ttl() || !$data instanceof cache_ttl_wrapper) { if ($data instanceof cache_cached_object) { $data = $data->restore_object(); @@ -981,28 +986,28 @@ class cache implements cache_loader { } if ($result) { if ($this->perfdebug) { - cache_helper::record_cache_hit('** static persist **', $this->definition->get_id()); + cache_helper::record_cache_hit('** static acceleration **', $this->definition->get_id()); } - if ($this->persistmaxsize > 1 && $this->persistcount > 1) { - // Check to see if this is the last item on the persist keys array. - if (end($this->persistkeys) !== $key) { + if ($this->staticaccelerationsize > 1 && $this->staticaccelerationcount > 1) { + // Check to see if this is the last item on the static acceleration keys array. + if (end($this->staticaccelerationkeys) !== $key) { // It isn't the last item. // Move the item to the end of the array so that it is last to be removed. - unset($this->persistkeys[$key]); - $this->persistkeys[$key] = $key; + unset($this->staticaccelerationkeys[$key]); + $this->staticaccelerationkeys[$key] = $key; } } return $result; } else { if ($this->perfdebug) { - cache_helper::record_cache_miss('** static persist **', $this->definition->get_id()); + cache_helper::record_cache_miss('** static acceleration **', $this->definition->get_id()); } return false; } } /** - * Sets a key value pair into the persist cache. + * Sets a key value pair into the static acceleration array. * * @param string $key The parsed key * @param mixed $data @@ -1013,36 +1018,36 @@ class cache implements cache_loader { if ($key === (array)$key) { $key = $key['key']; } - if ($this->persistmaxsize !== false && isset($this->persistkeys[$key])) { - $this->persistcount--; - unset($this->persistkeys[$key]); + if ($this->staticaccelerationsize !== false && isset($this->staticaccelerationkeys[$key])) { + $this->staticaccelerationcount--; + unset($this->staticaccelerationkeys[$key]); } - $this->persistcache[$key] = $data; - if ($this->persistmaxsize !== false) { - $this->persistcount++; - $this->persistkeys[$key] = $key; - if ($this->persistcount > $this->persistmaxsize) { - $dropkey = array_shift($this->persistkeys); - unset($this->persistcache[$dropkey]); - $this->persistcount--; + $this->staticaccelerationarray[$key] = $data; + if ($this->staticaccelerationsize !== false) { + $this->staticaccelerationcount++; + $this->staticaccelerationkeys[$key] = $key; + if ($this->staticaccelerationcount > $this->staticaccelerationsize) { + $dropkey = array_shift($this->staticaccelerationkeys); + unset($this->staticaccelerationarray[$dropkey]); + $this->staticaccelerationcount--; } } return true; } /** - * Deletes an item from the persist cache. + * Deletes an item from the static acceleration array. * * @param string|int $key As given to get|set|delete * @return bool True on success, false otherwise. */ protected function delete_from_persist_cache($key) { - unset($this->persistcache[$key]); - if ($this->persistmaxsize !== false) { - $dropkey = array_search($key, $this->persistkeys); + unset($this->staticaccelerationarray[$key]); + if ($this->staticaccelerationsize !== false) { + $dropkey = array_search($key, $this->staticaccelerationkeys); if ($dropkey) { - unset($this->persistkeys[$dropkey]); - $this->persistcount--; + unset($this->staticaccelerationkeys[$dropkey]); + $this->staticaccelerationcount--; } } return true; @@ -1459,9 +1464,8 @@ class cache_application extends cache implements cache_loader_with_locking { * This class is used for session caches returned by the cache::make methods. * * It differs from the application loader in a couple of noteable ways: - * 1. Sessions are always expected to be persistent. - * Because of this we don't ever use the persist cache and instead a session array - * containing all of the data is maintained by this object. + * 1. Sessions are always expected to exist. + * Because of this we don't ever use the static acceleration array. * 2. Session data for a loader instance (store + definition) is consolidate into a * single array for storage within the store. * Along with this we embed a lastaccessed time with the data. This way we can @@ -2074,7 +2078,7 @@ class cache_session extends cache { } /** - * The session loader never uses the persist cache. + * The session loader never uses static acceleration. * Instead it stores things in the static $session variable. Shared between all session loaders. * * @return bool diff --git a/cache/disabledlib.php b/cache/disabledlib.php index e65b766be6e..26c938b821d 100644 --- a/cache/disabledlib.php +++ b/cache/disabledlib.php @@ -49,8 +49,7 @@ class cache_disabled extends cache { * @param null $loader Unused. */ public function __construct(cache_definition $definition, cache_store $store, $loader = null) { - $this->definition = $definition; - $this->store = $store; + // Nothing to do here. } /** @@ -228,7 +227,8 @@ class cache_factory_disabled extends cache_factory { * @param array $options An array of options, available options are: * - simplekeys : Set to true if the keys you will use are a-zA-Z0-9_ * - simpledata : Set to true if the type of the data you are going to store is scalar, or an array of scalar vars - * - persistent : If set to true the cache will persist construction requests. + * - staticacceleration : If set to true the cache will hold onto all data passing through it. + * - staticaccelerationsize : Sets the max size of the static acceleration array. * @return cache_application|cache_session|cache_request */ public function create_cache_from_params($mode, $component, $area, array $identifiers = array(), array $options = array()) { diff --git a/cache/tests/cache_test.php b/cache/tests/cache_test.php index aa8c720860c..0b0f578c4ef 100644 --- a/cache/tests/cache_test.php +++ b/cache/tests/cache_test.php @@ -149,8 +149,8 @@ class core_cache_testcase extends advanced_testcase { 'mode' => cache_store::MODE_APPLICATION, 'component' => 'phpunit', 'area' => 'test_default_application_cache', - 'persistentdata' => true, - 'persistentmaxsize' => 1 + 'staticacceleration' => true, + 'staticaccelerationsize' => 1 )); $cache = cache::make('phpunit', 'test_default_application_cache'); $this->assertInstanceOf('cache_application', $cache); @@ -189,7 +189,7 @@ class core_cache_testcase extends advanced_testcase { 'mode' => cache_store::MODE_APPLICATION, 'component' => 'phpunit', 'area' => 'nostoretest2', - 'persistentdata' => true + 'staticacceleration' => true )); $instance->phpunit_remove_stores(); @@ -924,11 +924,11 @@ class core_cache_testcase extends advanced_testcase { 'crazyevent' ) )); - $instance->phpunit_add_definition('phpunit/eventpurgetestpersistentapp', array( + $instance->phpunit_add_definition('phpunit/eventpurgetestaccelerated', array( 'mode' => cache_store::MODE_APPLICATION, 'component' => 'phpunit', - 'area' => 'eventpurgetestpersistentapp', - 'persistentdata' => true, + 'area' => 'eventpurgetestaccelerated', + 'staticacceleration' => true, 'invalidationevents' => array( 'crazyevent' ) @@ -947,8 +947,8 @@ class core_cache_testcase extends advanced_testcase { $this->assertFalse($cache->get('testkey1')); $this->assertFalse($cache->get('testkey2')); - // Now test the persistent cache. - $cache = cache::make('phpunit', 'eventpurgetestpersistentapp'); + // Now test the static acceleration array. + $cache = cache::make('phpunit', 'eventpurgetestaccelerated'); $this->assertTrue($cache->set('testkey1', 'test data 1')); $this->assertEquals('test data 1', $cache->get('testkey1')); $this->assertTrue($cache->set('testkey2', 'test data 2')); @@ -975,11 +975,11 @@ class core_cache_testcase extends advanced_testcase { 'crazyevent' ) )); - $instance->phpunit_add_definition('phpunit/eventpurgetestpersistent', array( + $instance->phpunit_add_definition('phpunit/eventpurgetestaccelerated', array( 'mode' => cache_store::MODE_SESSION, 'component' => 'phpunit', - 'area' => 'eventpurgetestpersistent', - 'persistentdata' => true, + 'area' => 'eventpurgetestaccelerated', + 'staticacceleration' => true, 'invalidationevents' => array( 'crazyevent' ) @@ -998,8 +998,8 @@ class core_cache_testcase extends advanced_testcase { $this->assertFalse($cache->get('testkey1')); $this->assertFalse($cache->get('testkey2')); - // Now test the persistent cache. - $cache = cache::make('phpunit', 'eventpurgetestpersistent'); + // Now test the static acceleration array. + $cache = cache::make('phpunit', 'eventpurgetestaccelerated'); $this->assertTrue($cache->set('testkey1', 'test data 1')); $this->assertEquals('test data 1', $cache->get('testkey1')); $this->assertTrue($cache->set('testkey2', 'test data 2')); @@ -1400,8 +1400,8 @@ class core_cache_testcase extends advanced_testcase { 'mode' => cache_store::MODE_APPLICATION, 'component' => 'phpunit', 'area' => 'test_application_locking', - 'persistentdata' => true, - 'persistentmaxsize' => 1, + 'staticacceleration' => true, + 'staticaccelerationsize' => 1, 'requirelockingread' => true, 'requirelockingwrite' => true )); @@ -1536,37 +1536,37 @@ class core_cache_testcase extends advanced_testcase { $this->assertArrayHasKey('cache_is_searchable', $cache->phpunit_get_store_implements()); } - public function test_persistent_cache() { + public function test_static_acceleration() { $instance = cache_config_phpunittest::instance(); - $instance->phpunit_add_definition('phpunit/persistentapp', array( + $instance->phpunit_add_definition('phpunit/accelerated', array( 'mode' => cache_store::MODE_APPLICATION, 'component' => 'phpunit', - 'area' => 'persistentapp', - 'persistentdata' => true, - 'persistentmaxsize' => 3, + 'area' => 'accelerated', + 'staticacceleration' => true, + 'staticaccelerationsize' => 3, )); - $instance->phpunit_add_definition('phpunit/persistentapp2', array( + $instance->phpunit_add_definition('phpunit/accelerated2', array( 'mode' => cache_store::MODE_APPLICATION, 'component' => 'phpunit', - 'area' => 'persistentapp2', - 'persistentdata' => true, - 'persistentmaxsize' => 3, + 'area' => 'accelerated2', + 'staticacceleration' => true, + 'staticaccelerationsize' => 3, )); - $instance->phpunit_add_definition('phpunit/persistentapp3', array( + $instance->phpunit_add_definition('phpunit/accelerated3', array( 'mode' => cache_store::MODE_APPLICATION, 'component' => 'phpunit', - 'area' => 'persistentapp3', - 'persistentdata' => true, - 'persistentmaxsize' => 3, + 'area' => 'accelerated3', + 'staticacceleration' => true, + 'staticaccelerationsize' => 3, )); - $instance->phpunit_add_definition('phpunit/persistentapp4', array( + $instance->phpunit_add_definition('phpunit/accelerated4', array( 'mode' => cache_store::MODE_APPLICATION, 'component' => 'phpunit', - 'area' => 'persistentapp3', - 'persistentdata' => true, - 'persistentmaxsize' => 4, + 'area' => 'accelerated4', + 'staticacceleration' => true, + 'staticaccelerationsize' => 4, )); - $cache = cache::make('phpunit', 'persistentapp'); + $cache = cache::make('phpunit', 'accelerated'); $this->assertInstanceOf('cache_phpunit_application', $cache); // Set and get three elements. @@ -1576,112 +1576,112 @@ class core_cache_testcase extends advanced_testcase { $this->assertEquals('A', $cache->get('a')); $this->assertEquals(array('b' => 'B', 'c' => 'C'), $cache->get_many(array('b', 'c'))); - // Make sure all items are in persistent cache. - $this->assertEquals('A', $cache->phpunit_get_directly_from_persistcache('a')); - $this->assertEquals('B', $cache->phpunit_get_directly_from_persistcache('b')); - $this->assertEquals('C', $cache->phpunit_get_directly_from_persistcache('c')); + // Make sure all items are in static acceleration array. + $this->assertEquals('A', $cache->phpunit_get_directly_from_staticaccelerationarray('a')); + $this->assertEquals('B', $cache->phpunit_get_directly_from_staticaccelerationarray('b')); + $this->assertEquals('C', $cache->phpunit_get_directly_from_staticaccelerationarray('c')); - // Add new value and make sure it is in cache and it is in persistcache. + // Add new value and make sure it is in cache and it is in array. $this->assertTrue($cache->set('d', 'D')); - $this->assertEquals('D', $cache->phpunit_get_directly_from_persistcache('d')); + $this->assertEquals('D', $cache->phpunit_get_directly_from_staticaccelerationarray('d')); $this->assertEquals('D', $cache->get('d')); - // Now the least recent accessed item (a) is no longer in persistent cache. - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('a')); - $this->assertEquals('B', $cache->phpunit_get_directly_from_persistcache('b')); - $this->assertEquals('C', $cache->phpunit_get_directly_from_persistcache('c')); + // Now the least recent accessed item (a) is no longer in acceleration array. + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('a')); + $this->assertEquals('B', $cache->phpunit_get_directly_from_staticaccelerationarray('b')); + $this->assertEquals('C', $cache->phpunit_get_directly_from_staticaccelerationarray('c')); // Adding and deleting element. $this->assertTrue($cache->set('a', 'A')); $this->assertTrue($cache->delete('a')); - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('a')); + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('a')); $this->assertFalse($cache->has('a')); - // Make sure "purge" deletes from persist as well. + // Make sure "purge" deletes from the array as well. $cache->purge(); - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('a')); - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('b')); - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('c')); - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('d')); - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('e')); + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('a')); + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('b')); + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('c')); + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('d')); + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('e')); - // Check that persistent cache holds the last accessed items by get/set. + // Check that the array holds the last accessed items by get/set. $this->assertTrue($cache->set('a', 'A')); $this->assertTrue($cache->set('b', 'B')); $this->assertTrue($cache->set('c', 'C')); $this->assertTrue($cache->set('d', 'D')); $this->assertTrue($cache->set('e', 'E')); - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('a')); - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('b')); - $this->assertEquals('C', $cache->phpunit_get_directly_from_persistcache('c')); - $this->assertEquals('D', $cache->phpunit_get_directly_from_persistcache('d')); - $this->assertEquals('E', $cache->phpunit_get_directly_from_persistcache('e')); + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('a')); + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('b')); + $this->assertEquals('C', $cache->phpunit_get_directly_from_staticaccelerationarray('c')); + $this->assertEquals('D', $cache->phpunit_get_directly_from_staticaccelerationarray('d')); + $this->assertEquals('E', $cache->phpunit_get_directly_from_staticaccelerationarray('e')); /** @var cache_phpunit_application $cache */ - $cache = cache::make('phpunit', 'persistentapp2'); + $cache = cache::make('phpunit', 'accelerated2'); $this->assertInstanceOf('cache_phpunit_application', $cache); - // Check that persistent cache holds the last accessed items by get/set. + // Check that the array holds the last accessed items by get/set. $this->assertTrue($cache->set('a', 'A')); $this->assertTrue($cache->set('b', 'B')); $this->assertTrue($cache->set('c', 'C')); $this->assertTrue($cache->set('d', 'D')); $this->assertTrue($cache->set('e', 'E')); - // Current keys in persist cache: c, d, e. - $this->assertEquals('C', $cache->phpunit_get_directly_from_persistcache('c')); - $this->assertEquals('D', $cache->phpunit_get_directly_from_persistcache('d')); - $this->assertEquals('E', $cache->phpunit_get_directly_from_persistcache('e')); - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('a')); - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('b')); + // Current keys in the array: c, d, e. + $this->assertEquals('C', $cache->phpunit_get_directly_from_staticaccelerationarray('c')); + $this->assertEquals('D', $cache->phpunit_get_directly_from_staticaccelerationarray('d')); + $this->assertEquals('E', $cache->phpunit_get_directly_from_staticaccelerationarray('e')); + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('a')); + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('b')); $this->assertEquals('A', $cache->get('a')); - // Current keys in persist cache: d, e, a. - $this->assertEquals('D', $cache->phpunit_get_directly_from_persistcache('d')); - $this->assertEquals('E', $cache->phpunit_get_directly_from_persistcache('e')); - $this->assertEquals('A', $cache->phpunit_get_directly_from_persistcache('a')); - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('b')); - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('c')); + // Current keys in the array: d, e, a. + $this->assertEquals('D', $cache->phpunit_get_directly_from_staticaccelerationarray('d')); + $this->assertEquals('E', $cache->phpunit_get_directly_from_staticaccelerationarray('e')); + $this->assertEquals('A', $cache->phpunit_get_directly_from_staticaccelerationarray('a')); + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('b')); + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('c')); - // Current keys in persist cache: d, e, a. + // Current keys in the array: d, e, a. $this->assertEquals(array('c' => 'C'), $cache->get_many(array('c'))); - // Current keys in persist cache: e, a, c. - $this->assertEquals('E', $cache->phpunit_get_directly_from_persistcache('e')); - $this->assertEquals('A', $cache->phpunit_get_directly_from_persistcache('a')); - $this->assertEquals('C', $cache->phpunit_get_directly_from_persistcache('c')); - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('b')); - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('d')); + // Current keys in the array: e, a, c. + $this->assertEquals('E', $cache->phpunit_get_directly_from_staticaccelerationarray('e')); + $this->assertEquals('A', $cache->phpunit_get_directly_from_staticaccelerationarray('a')); + $this->assertEquals('C', $cache->phpunit_get_directly_from_staticaccelerationarray('c')); + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('b')); + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('d')); - $cache = cache::make('phpunit', 'persistentapp3'); + $cache = cache::make('phpunit', 'accelerated3'); $this->assertInstanceOf('cache_phpunit_application', $cache); - // Check that persistent cache holds the last accessed items by get/set. + // Check that the array holds the last accessed items by get/set. $this->assertTrue($cache->set('a', 'A')); $this->assertTrue($cache->set('b', 'B')); $this->assertTrue($cache->set('c', 'C')); $this->assertTrue($cache->set('d', 'D')); $this->assertTrue($cache->set('e', 'E')); - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('a')); - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('b')); - $this->assertEquals('C', $cache->phpunit_get_directly_from_persistcache('c')); - $this->assertEquals('D', $cache->phpunit_get_directly_from_persistcache('d')); - $this->assertEquals('E', $cache->phpunit_get_directly_from_persistcache('e')); + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('a')); + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('b')); + $this->assertEquals('C', $cache->phpunit_get_directly_from_staticaccelerationarray('c')); + $this->assertEquals('D', $cache->phpunit_get_directly_from_staticaccelerationarray('d')); + $this->assertEquals('E', $cache->phpunit_get_directly_from_staticaccelerationarray('e')); $this->assertTrue($cache->set('b', 'B2')); - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('a')); - $this->assertEquals('B2', $cache->phpunit_get_directly_from_persistcache('b')); - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('c')); - $this->assertEquals('D', $cache->phpunit_get_directly_from_persistcache('d')); - $this->assertEquals('E', $cache->phpunit_get_directly_from_persistcache('e')); + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('a')); + $this->assertEquals('B2', $cache->phpunit_get_directly_from_staticaccelerationarray('b')); + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('c')); + $this->assertEquals('D', $cache->phpunit_get_directly_from_staticaccelerationarray('d')); + $this->assertEquals('E', $cache->phpunit_get_directly_from_staticaccelerationarray('e')); $this->assertEquals(2, $cache->set_many(array('b' => 'B3', 'c' => 'C3'))); - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('a')); - $this->assertEquals('B3', $cache->phpunit_get_directly_from_persistcache('b')); - $this->assertEquals('C3', $cache->phpunit_get_directly_from_persistcache('c')); - $this->assertFalse($cache->phpunit_get_directly_from_persistcache('d')); - $this->assertEquals('E', $cache->phpunit_get_directly_from_persistcache('e')); + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('a')); + $this->assertEquals('B3', $cache->phpunit_get_directly_from_staticaccelerationarray('b')); + $this->assertEquals('C3', $cache->phpunit_get_directly_from_staticaccelerationarray('c')); + $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('d')); + $this->assertEquals('E', $cache->phpunit_get_directly_from_staticaccelerationarray('e')); - $cache = cache::make('phpunit', 'persistentapp4'); + $cache = cache::make('phpunit', 'accelerated4'); $this->assertInstanceOf('cache_phpunit_application', $cache); $this->assertTrue($cache->set('a', 'A')); $this->assertTrue($cache->set('a', 'A')); @@ -1690,7 +1690,7 @@ class core_cache_testcase extends advanced_testcase { $this->assertTrue($cache->set('a', 'A')); $this->assertTrue($cache->set('a', 'A')); $this->assertTrue($cache->set('a', 'A')); - $this->assertEquals('A', $cache->phpunit_get_directly_from_persistcache('a')); + $this->assertEquals('A', $cache->phpunit_get_directly_from_staticaccelerationarray('a')); $this->assertEquals('A', $cache->get('a')); } } diff --git a/cache/tests/fixtures/lib.php b/cache/tests/fixtures/lib.php index 5f7364d84df..7f241f44a5b 100644 --- a/cache/tests/fixtures/lib.php +++ b/cache/tests/fixtures/lib.php @@ -253,12 +253,12 @@ class cache_phpunit_application extends cache_application { } /** - * Returns the given key directly from the persistdata cache. + * Returns the given key directly from the static acceleration array. * * @param string $key * @return false|mixed */ - public function phpunit_get_directly_from_persistcache($key) { + public function phpunit_get_directly_from_staticaccelerationarray($key) { $key = $this->parse_key($key); return $this->get_from_persist_cache($key); } diff --git a/cache/upgrade.txt b/cache/upgrade.txt index 72ac93bda2e..351519f9184 100644 --- a/cache/upgrade.txt +++ b/cache/upgrade.txt @@ -1,6 +1,14 @@ This files describes API changes in /cache/stores/* - cache store plugins. Information provided here is intended especially for developers. +=== 2.6 === +* All cache instances are recorded and subsequent requests are given a reference to the original instance. +* The persistent option for the cache definition has been deprecated. Please use the staticacceleration option instead. +* There is a new static acceleration option. If enabled data passing through the cache is held onto. +* The persistentmaxsize option has been renamed to staticaccelerationsize. It does the same thing. +* cache_definition::should_be_persistent has been deprecated. Please call cache_definition::use_static_acceleration instead. +* cache_definition::get_persistent_max_size has been deprecated. Please call cache_definition::get_static_acceleration_size instead. + === 2.5 === * cleanup method renamed to instance_deleted. It is now called when the store is deleted as all comments suggested anyway. diff --git a/lib/db/caches.php b/lib/db/caches.php index 4e4da4e170b..57c3e37580e 100644 --- a/lib/db/caches.php +++ b/lib/db/caches.php @@ -36,8 +36,8 @@ $definitions = array( 'mode' => cache_store::MODE_APPLICATION, 'simplekeys' => true, 'simpledata' => true, - 'persistentdata' => true, - 'persistentmaxsize' => 30 + 'staticacceleration' => true, + 'staticaccelerationsize' => 30 ), // Used to store cache of all available translations. @@ -58,8 +58,8 @@ $definitions = array( 'requireidentifiers' => array( 'dbfamily' ), - 'persistentdata' => true, - 'persistentmaxsize' => 15 + 'staticacceleration' => true, + 'staticaccelerationsize' => 15 ), // Event invalidation cache. @@ -71,7 +71,7 @@ $definitions = array( // cache will likely be used either lots or never. 'eventinvalidation' => array( 'mode' => cache_store::MODE_APPLICATION, - 'persistentdata' => true, + 'staticacceleration' => true, 'requiredataguarantee' => true, 'simpledata' => true, ), @@ -103,7 +103,7 @@ $definitions = array( // Persistence is used because normally several settings within a script. 'config' => array( 'mode' => cache_store::MODE_APPLICATION, - 'persistentdata' => true, + 'staticacceleration' => true, 'simpledata' => true ), @@ -114,7 +114,7 @@ $definitions = array( 'mode' => cache_store::MODE_APPLICATION, 'simplekeys' => true, // The course id the groupings exist for. 'simpledata' => true, // Array of stdClass objects containing only strings. - 'persistentdata' => true, // Likely there will be a couple of calls to this. + 'staticacceleration' => true, // Likely there will be a couple of calls to this. 'persistmaxsize' => 2, // The original cache used 1, we've increased that to two. ), @@ -123,7 +123,7 @@ $definitions = array( 'mode' => cache_store::MODE_APPLICATION, 'simplekeys' => true, 'simpledata' => true, - 'persistentdata' => true, + 'staticacceleration' => true, ), // YUI Module cache. @@ -137,8 +137,8 @@ $definitions = array( 'mode' => cache_store::MODE_APPLICATION, 'simplekeys' => true, 'simpledata' => true, - 'persistentdata' => true, - 'persistentmaxsize' => 2, + 'staticacceleration' => true, + 'staticaccelerationsize' => 2, ), // Cache used by the {@link plugin_manager} class. @@ -147,8 +147,8 @@ $definitions = array( 'mode' => cache_store::MODE_APPLICATION, 'simplekeys' => true, 'simpledata' => true, - 'persistentdata' => true, - 'persistentmaxsize' => 2, + 'staticacceleration' => true, + 'staticaccelerationsize' => 2, ), // Cache used by the {@link plugininfo_mod} class. @@ -156,8 +156,8 @@ $definitions = array( 'mode' => cache_store::MODE_APPLICATION, 'simplekeys' => true, 'simpledata' => true, - 'persistentdata' => true, - 'persistentmaxsize' => 1, + 'staticacceleration' => true, + 'staticaccelerationsize' => 1, ), // Cache used by the {@link plugininfo_block} class. @@ -165,8 +165,8 @@ $definitions = array( 'mode' => cache_store::MODE_APPLICATION, 'simplekeys' => true, 'simpledata' => true, - 'persistentdata' => true, - 'persistentmaxsize' => 1, + 'staticacceleration' => true, + 'staticaccelerationsize' => 1, ), // Cache used by the {@link plugininfo_filter} class. @@ -174,8 +174,8 @@ $definitions = array( 'mode' => cache_store::MODE_APPLICATION, 'simplekeys' => true, 'simpledata' => true, - 'persistentdata' => true, - 'persistentmaxsize' => 1, + 'staticacceleration' => true, + 'staticaccelerationsize' => 1, ), // Cache used by the {@link plugininfo_repository} class. @@ -183,8 +183,8 @@ $definitions = array( 'mode' => cache_store::MODE_APPLICATION, 'simplekeys' => true, 'simpledata' => true, - 'persistentdata' => true, - 'persistentmaxsize' => 1, + 'staticacceleration' => true, + 'staticaccelerationsize' => 1, ), // Cache used by the {@link plugininfo_portfolio} class. @@ -192,15 +192,14 @@ $definitions = array( 'mode' => cache_store::MODE_APPLICATION, 'simplekeys' => true, 'simpledata' => true, - 'persistentdata' => true, - 'persistentmaxsize' => 1, ->>>>>>> MDL-40903 cache: converted persistent into persistentdata + 'staticacceleration' => true, + 'staticaccelerationsize' => 1, ), // Used to store the full tree of course categories. 'coursecattree' => array( 'mode' => cache_store::MODE_APPLICATION, - 'persistentdata' => true, + 'staticacceleration' => true, 'invalidationevents' => array( 'changesincoursecat', ) @@ -225,7 +224,7 @@ $definitions = array( // Cache course contacts for the courses. 'coursecontacts' => array( 'mode' => cache_store::MODE_APPLICATION, - 'persistentdata' => true, + 'staticacceleration' => true, 'simplekeys' => true, ), // Used to store data for repositories to avoid repetitive DB queries within one request. From b51fed38f2c65bf6cdbda05f59fec4ec1684bf03 Mon Sep 17 00:00:00 2001 From: Sam Hemelryk Date: Tue, 17 Sep 2013 13:39:49 +1200 Subject: [PATCH 072/101] MDL-40903 cache: renamed loader method to reflect static accelerator --- cache/classes/loaders.php | 107 ++++++++++++++++++++++++++++------- cache/tests/cache_test.php | 98 ++++++++++++++++---------------- cache/tests/fixtures/lib.php | 4 +- cache/upgrade.txt | 6 ++ lib/db/caches.php | 6 +- 5 files changed, 146 insertions(+), 75 deletions(-) diff --git a/cache/classes/loaders.php b/cache/classes/loaders.php index dc2b96ab76c..10ad62095cc 100644 --- a/cache/classes/loaders.php +++ b/cache/classes/loaders.php @@ -282,8 +282,8 @@ class cache implements cache_loader { $parsedkey = $this->parse_key($key); // 2. Get it from the static acceleration array if we can (only when it is enabled and it has already been requested/set). $result = false; - if ($this->is_using_persist_cache()) { - $result = $this->get_from_persist_cache($parsedkey); + if ($this->use_static_acceleration()) { + $result = $this->static_acceleration_get($parsedkey); } if ($result !== false) { if (!is_scalar($result)) { @@ -309,8 +309,8 @@ class cache implements cache_loader { if ($result instanceof cache_cached_object) { $result = $result->restore_object(); } - if ($this->is_using_persist_cache()) { - $this->set_in_persist_cache($parsedkey, $result); + if ($this->use_static_acceleration()) { + $this->static_acceleration_set($parsedkey, $result); } } // 4. Load if from the loader/datasource if we don't already have it. @@ -378,14 +378,14 @@ class cache implements cache_loader { $keystofind = array(); // First up check the persist cache for each key. - $isusingpersist = $this->is_using_persist_cache(); + $isusingpersist = $this->use_static_acceleration(); foreach ($keys as $key) { $pkey = $this->parse_key($key); $keysparsed[$key] = $pkey; $parsedkeys[$pkey] = $key; $keystofind[$pkey] = $key; if ($isusingpersist) { - $value = $this->get_from_persist_cache($pkey); + $value = $this->static_acceleration_get($pkey); if ($value !== false) { $resultpersist[$pkey] = $value; unset($keystofind[$pkey]); @@ -408,8 +408,8 @@ class cache implements cache_loader { if ($value instanceof cache_cached_object) { $value = $value->restore_object(); } - if ($value !== false && $this->is_using_persist_cache()) { - $this->set_in_persist_cache($key, $value); + if ($value !== false && $this->use_static_acceleration()) { + $this->static_acceleration_set($key, $value); } $resultstore[$key] = $value; } @@ -506,8 +506,8 @@ class cache implements cache_loader { $data = new cache_ttl_wrapper($data, $this->definition->get_ttl()); } $parsedkey = $this->parse_key($key); - if ($this->is_using_persist_cache()) { - $this->set_in_persist_cache($parsedkey, $data); + if ($this->use_static_acceleration()) { + $this->static_acceleration_set($parsedkey, $data); } return $this->store->set($parsedkey, $data); } @@ -611,7 +611,7 @@ class cache implements cache_loader { } $data = array(); $simulatettl = $this->has_a_ttl() && !$this->store_supports_native_ttl(); - $usestaticaccelerationarray = $this->is_using_persist_cache(); + $usestaticaccelerationarray = $this->use_static_acceleration(); foreach ($keyvaluearray as $key => $value) { if (is_object($value) && $value instanceof cacheable_object) { $value = new cache_cached_object($value); @@ -630,7 +630,7 @@ class cache implements cache_loader { 'value' => $value ); if ($usestaticaccelerationarray) { - $this->set_in_persist_cache($data[$key]['key'], $value); + $this->static_acceleration_set($data[$key]['key'], $value); } } if ($this->perfdebug) { @@ -662,7 +662,7 @@ class cache implements cache_loader { */ public function has($key, $tryloadifpossible = false) { $parsedkey = $this->parse_key($key); - if ($this->is_in_persist_cache($parsedkey)) { + if ($this->static_acceleration_has($parsedkey)) { // Hoorah, that was easy. It exists in the static acceleration array so we definitely have it. return true; } @@ -744,11 +744,11 @@ class cache implements cache_loader { return false; } - if ($this->is_using_persist_cache()) { + if ($this->use_static_acceleration()) { $parsedkeys = array(); foreach ($keys as $id => $key) { $parsedkey = $this->parse_key($key); - if ($this->is_in_persist_cache($parsedkey)) { + if ($this->static_acceleration_has($parsedkey)) { return true; } $parsedkeys[] = $parsedkey; @@ -769,7 +769,7 @@ class cache implements cache_loader { */ public function delete($key, $recurse = true) { $parsedkey = $this->parse_key($key); - $this->delete_from_persist_cache($parsedkey); + $this->static_acceleration_delete($parsedkey); if ($recurse && $this->loader !== false) { // Delete from the bottom of the stack first. $this->loader->delete($key, $recurse); @@ -787,9 +787,9 @@ class cache implements cache_loader { */ public function delete_many(array $keys, $recurse = true) { $parsedkeys = array_map(array($this, 'parse_key'), $keys); - if ($this->is_using_persist_cache()) { + if ($this->use_static_acceleration()) { foreach ($parsedkeys as $parsedkey) { - $this->delete_from_persist_cache($parsedkey); + $this->static_acceleration_delete($parsedkey); } } if ($recurse && $this->loader !== false) { @@ -921,19 +921,44 @@ class cache implements cache_loader { /** * Returns true if this cache is making use of the static acceleration array. * + * @deprecated since 2.6 + * @see cache::use_static_acceleration() * @return bool */ protected function is_using_persist_cache() { + debugging('This function has been deprecated. Please call use_static_acceleration instead', DEBUG_DEVELOPER); + return $this->use_static_acceleration(); + } + + /** + * Returns true if this cache is making use of the static acceleration array. + * + * @return bool + */ + protected function use_static_acceleration() { return $this->staticacceleration; } + /** + * Returns true if the requested key exists within the static acceleration array. + * + * @see cache::static_acceleration_has + * @deprecated since 2.6 + * @param string $key The parsed key + * @return bool + */ + protected function is_in_persist_cache($key) { + debugging('This function has been deprecated. Please call static_acceleration_has instead', DEBUG_DEVELOPER); + return $this->static_acceleration_has($key); + } + /** * Returns true if the requested key exists within the static acceleration array. * * @param string $key The parsed key * @return bool */ - protected function is_in_persist_cache($key) { + protected function static_acceleration_has($key) { // This method of checking if an array was supplied is faster than is_array. if ($key === (array)$key) { $key = $key['key']; @@ -953,10 +978,23 @@ class cache implements cache_loader { /** * Returns the item from the static acceleration array if it exists there. * + * @deprecated since 2.6 + * @see cache::static_acceleration_get * @param string $key The parsed key * @return mixed|false The data from the static acceleration array or false if it wasn't there. */ protected function get_from_persist_cache($key) { + debugging('This function has been deprecated. Please call static_acceleration_get instead', DEBUG_DEVELOPER); + return $this->static_acceleration_get($key); + } + + /** + * Returns the item from the static acceleration array if it exists there. + * + * @param string $key The parsed key + * @return mixed|false The data from the static acceleration array or false if it wasn't there. + */ + protected function static_acceleration_get($key) { // This method of checking if an array was supplied is faster than is_array. if ($key === (array)$key) { $key = $key['key']; @@ -975,7 +1013,7 @@ class cache implements cache_loader { } $result = $data; } else if ($data->has_expired()) { - $this->delete_from_persist_cache($key); + $this->static_acceleration_delete($key); $result = false; } else { if ($data instanceof cache_cached_object) { @@ -1009,11 +1047,25 @@ class cache implements cache_loader { /** * Sets a key value pair into the static acceleration array. * + * @deprecated since 2.6 + * @see cache::static_acceleration_set * @param string $key The parsed key * @param mixed $data * @return bool */ protected function set_in_persist_cache($key, $data) { + debugging('This function has been deprecated. Please call static_acceleration_set instead', DEBUG_DEVELOPER); + return $this->static_acceleration_set($key, $data); + } + + /** + * Sets a key value pair into the static acceleration array. + * + * @param string $key The parsed key + * @param mixed $data + * @return bool + */ + protected function static_acceleration_set($key, $data) { // This method of checking if an array was supplied is faster than is_array. if ($key === (array)$key) { $key = $key['key']; @@ -1038,10 +1090,23 @@ class cache implements cache_loader { /** * Deletes an item from the static acceleration array. * + * @deprecated since 2.6 + * @see cache::static_acceleration_delete() * @param string|int $key As given to get|set|delete * @return bool True on success, false otherwise. */ protected function delete_from_persist_cache($key) { + debugging('This function has been deprecated. Please call static_acceleration_delete instead', DEBUG_DEVELOPER); + return $this->static_acceleration_delete($key); + } + + /** + * Deletes an item from the static acceleration array. + * + * @param string|int $key As given to get|set|delete + * @return bool True on success, false otherwise. + */ + protected function static_acceleration_delete($key) { unset($this->staticaccelerationarray[$key]); if ($this->staticaccelerationsize !== false) { $dropkey = array_search($key, $this->staticaccelerationkeys); @@ -2083,7 +2148,7 @@ class cache_session extends cache { * * @return bool */ - protected function is_using_persist_cache() { + protected function use_static_acceleration() { return false; } } diff --git a/cache/tests/cache_test.php b/cache/tests/cache_test.php index 0b0f578c4ef..6295f55ee9b 100644 --- a/cache/tests/cache_test.php +++ b/cache/tests/cache_test.php @@ -1577,33 +1577,33 @@ class core_cache_testcase extends advanced_testcase { $this->assertEquals(array('b' => 'B', 'c' => 'C'), $cache->get_many(array('b', 'c'))); // Make sure all items are in static acceleration array. - $this->assertEquals('A', $cache->phpunit_get_directly_from_staticaccelerationarray('a')); - $this->assertEquals('B', $cache->phpunit_get_directly_from_staticaccelerationarray('b')); - $this->assertEquals('C', $cache->phpunit_get_directly_from_staticaccelerationarray('c')); + $this->assertEquals('A', $cache->phpunit_static_acceleration_get('a')); + $this->assertEquals('B', $cache->phpunit_static_acceleration_get('b')); + $this->assertEquals('C', $cache->phpunit_static_acceleration_get('c')); // Add new value and make sure it is in cache and it is in array. $this->assertTrue($cache->set('d', 'D')); - $this->assertEquals('D', $cache->phpunit_get_directly_from_staticaccelerationarray('d')); + $this->assertEquals('D', $cache->phpunit_static_acceleration_get('d')); $this->assertEquals('D', $cache->get('d')); // Now the least recent accessed item (a) is no longer in acceleration array. - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('a')); - $this->assertEquals('B', $cache->phpunit_get_directly_from_staticaccelerationarray('b')); - $this->assertEquals('C', $cache->phpunit_get_directly_from_staticaccelerationarray('c')); + $this->assertFalse($cache->phpunit_static_acceleration_get('a')); + $this->assertEquals('B', $cache->phpunit_static_acceleration_get('b')); + $this->assertEquals('C', $cache->phpunit_static_acceleration_get('c')); // Adding and deleting element. $this->assertTrue($cache->set('a', 'A')); $this->assertTrue($cache->delete('a')); - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('a')); + $this->assertFalse($cache->phpunit_static_acceleration_get('a')); $this->assertFalse($cache->has('a')); // Make sure "purge" deletes from the array as well. $cache->purge(); - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('a')); - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('b')); - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('c')); - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('d')); - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('e')); + $this->assertFalse($cache->phpunit_static_acceleration_get('a')); + $this->assertFalse($cache->phpunit_static_acceleration_get('b')); + $this->assertFalse($cache->phpunit_static_acceleration_get('c')); + $this->assertFalse($cache->phpunit_static_acceleration_get('d')); + $this->assertFalse($cache->phpunit_static_acceleration_get('e')); // Check that the array holds the last accessed items by get/set. $this->assertTrue($cache->set('a', 'A')); @@ -1611,11 +1611,11 @@ class core_cache_testcase extends advanced_testcase { $this->assertTrue($cache->set('c', 'C')); $this->assertTrue($cache->set('d', 'D')); $this->assertTrue($cache->set('e', 'E')); - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('a')); - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('b')); - $this->assertEquals('C', $cache->phpunit_get_directly_from_staticaccelerationarray('c')); - $this->assertEquals('D', $cache->phpunit_get_directly_from_staticaccelerationarray('d')); - $this->assertEquals('E', $cache->phpunit_get_directly_from_staticaccelerationarray('e')); + $this->assertFalse($cache->phpunit_static_acceleration_get('a')); + $this->assertFalse($cache->phpunit_static_acceleration_get('b')); + $this->assertEquals('C', $cache->phpunit_static_acceleration_get('c')); + $this->assertEquals('D', $cache->phpunit_static_acceleration_get('d')); + $this->assertEquals('E', $cache->phpunit_static_acceleration_get('e')); /** @var cache_phpunit_application $cache */ $cache = cache::make('phpunit', 'accelerated2'); @@ -1628,28 +1628,28 @@ class core_cache_testcase extends advanced_testcase { $this->assertTrue($cache->set('d', 'D')); $this->assertTrue($cache->set('e', 'E')); // Current keys in the array: c, d, e. - $this->assertEquals('C', $cache->phpunit_get_directly_from_staticaccelerationarray('c')); - $this->assertEquals('D', $cache->phpunit_get_directly_from_staticaccelerationarray('d')); - $this->assertEquals('E', $cache->phpunit_get_directly_from_staticaccelerationarray('e')); - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('a')); - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('b')); + $this->assertEquals('C', $cache->phpunit_static_acceleration_get('c')); + $this->assertEquals('D', $cache->phpunit_static_acceleration_get('d')); + $this->assertEquals('E', $cache->phpunit_static_acceleration_get('e')); + $this->assertFalse($cache->phpunit_static_acceleration_get('a')); + $this->assertFalse($cache->phpunit_static_acceleration_get('b')); $this->assertEquals('A', $cache->get('a')); // Current keys in the array: d, e, a. - $this->assertEquals('D', $cache->phpunit_get_directly_from_staticaccelerationarray('d')); - $this->assertEquals('E', $cache->phpunit_get_directly_from_staticaccelerationarray('e')); - $this->assertEquals('A', $cache->phpunit_get_directly_from_staticaccelerationarray('a')); - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('b')); - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('c')); + $this->assertEquals('D', $cache->phpunit_static_acceleration_get('d')); + $this->assertEquals('E', $cache->phpunit_static_acceleration_get('e')); + $this->assertEquals('A', $cache->phpunit_static_acceleration_get('a')); + $this->assertFalse($cache->phpunit_static_acceleration_get('b')); + $this->assertFalse($cache->phpunit_static_acceleration_get('c')); // Current keys in the array: d, e, a. $this->assertEquals(array('c' => 'C'), $cache->get_many(array('c'))); // Current keys in the array: e, a, c. - $this->assertEquals('E', $cache->phpunit_get_directly_from_staticaccelerationarray('e')); - $this->assertEquals('A', $cache->phpunit_get_directly_from_staticaccelerationarray('a')); - $this->assertEquals('C', $cache->phpunit_get_directly_from_staticaccelerationarray('c')); - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('b')); - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('d')); + $this->assertEquals('E', $cache->phpunit_static_acceleration_get('e')); + $this->assertEquals('A', $cache->phpunit_static_acceleration_get('a')); + $this->assertEquals('C', $cache->phpunit_static_acceleration_get('c')); + $this->assertFalse($cache->phpunit_static_acceleration_get('b')); + $this->assertFalse($cache->phpunit_static_acceleration_get('d')); $cache = cache::make('phpunit', 'accelerated3'); @@ -1661,25 +1661,25 @@ class core_cache_testcase extends advanced_testcase { $this->assertTrue($cache->set('c', 'C')); $this->assertTrue($cache->set('d', 'D')); $this->assertTrue($cache->set('e', 'E')); - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('a')); - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('b')); - $this->assertEquals('C', $cache->phpunit_get_directly_from_staticaccelerationarray('c')); - $this->assertEquals('D', $cache->phpunit_get_directly_from_staticaccelerationarray('d')); - $this->assertEquals('E', $cache->phpunit_get_directly_from_staticaccelerationarray('e')); + $this->assertFalse($cache->phpunit_static_acceleration_get('a')); + $this->assertFalse($cache->phpunit_static_acceleration_get('b')); + $this->assertEquals('C', $cache->phpunit_static_acceleration_get('c')); + $this->assertEquals('D', $cache->phpunit_static_acceleration_get('d')); + $this->assertEquals('E', $cache->phpunit_static_acceleration_get('e')); $this->assertTrue($cache->set('b', 'B2')); - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('a')); - $this->assertEquals('B2', $cache->phpunit_get_directly_from_staticaccelerationarray('b')); - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('c')); - $this->assertEquals('D', $cache->phpunit_get_directly_from_staticaccelerationarray('d')); - $this->assertEquals('E', $cache->phpunit_get_directly_from_staticaccelerationarray('e')); + $this->assertFalse($cache->phpunit_static_acceleration_get('a')); + $this->assertEquals('B2', $cache->phpunit_static_acceleration_get('b')); + $this->assertFalse($cache->phpunit_static_acceleration_get('c')); + $this->assertEquals('D', $cache->phpunit_static_acceleration_get('d')); + $this->assertEquals('E', $cache->phpunit_static_acceleration_get('e')); $this->assertEquals(2, $cache->set_many(array('b' => 'B3', 'c' => 'C3'))); - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('a')); - $this->assertEquals('B3', $cache->phpunit_get_directly_from_staticaccelerationarray('b')); - $this->assertEquals('C3', $cache->phpunit_get_directly_from_staticaccelerationarray('c')); - $this->assertFalse($cache->phpunit_get_directly_from_staticaccelerationarray('d')); - $this->assertEquals('E', $cache->phpunit_get_directly_from_staticaccelerationarray('e')); + $this->assertFalse($cache->phpunit_static_acceleration_get('a')); + $this->assertEquals('B3', $cache->phpunit_static_acceleration_get('b')); + $this->assertEquals('C3', $cache->phpunit_static_acceleration_get('c')); + $this->assertFalse($cache->phpunit_static_acceleration_get('d')); + $this->assertEquals('E', $cache->phpunit_static_acceleration_get('e')); $cache = cache::make('phpunit', 'accelerated4'); $this->assertInstanceOf('cache_phpunit_application', $cache); @@ -1690,7 +1690,7 @@ class core_cache_testcase extends advanced_testcase { $this->assertTrue($cache->set('a', 'A')); $this->assertTrue($cache->set('a', 'A')); $this->assertTrue($cache->set('a', 'A')); - $this->assertEquals('A', $cache->phpunit_get_directly_from_staticaccelerationarray('a')); + $this->assertEquals('A', $cache->phpunit_static_acceleration_get('a')); $this->assertEquals('A', $cache->get('a')); } } diff --git a/cache/tests/fixtures/lib.php b/cache/tests/fixtures/lib.php index 7f241f44a5b..e6ecbe0f407 100644 --- a/cache/tests/fixtures/lib.php +++ b/cache/tests/fixtures/lib.php @@ -258,9 +258,9 @@ class cache_phpunit_application extends cache_application { * @param string $key * @return false|mixed */ - public function phpunit_get_directly_from_staticaccelerationarray($key) { + public function phpunit_static_acceleration_get($key) { $key = $this->parse_key($key); - return $this->get_from_persist_cache($key); + return $this->static_acceleration_get($key); } } diff --git a/cache/upgrade.txt b/cache/upgrade.txt index 351519f9184..38f9c4b21bc 100644 --- a/cache/upgrade.txt +++ b/cache/upgrade.txt @@ -8,6 +8,12 @@ Information provided here is intended especially for developers. * The persistentmaxsize option has been renamed to staticaccelerationsize. It does the same thing. * cache_definition::should_be_persistent has been deprecated. Please call cache_definition::use_static_acceleration instead. * cache_definition::get_persistent_max_size has been deprecated. Please call cache_definition::get_static_acceleration_size instead. +* cache::is_using_persist_cache() has been deprecated. Please call cache::use_static_acceleration() +* cache::is_in_persist_cache() has been deprecated. Please call cache::static_acceleration_has() +* cache::get_from_persist_cache() has been deprecated. Please call cache::static_acceleration_get() +* cache::set_in_persist_cache() has been deprecated. Please call cache::static_acceleration_set() +* cache::delete_from_persist_cache() has been deprecated. Please call cache::static_acceleration_delete() +* If you have any custom cache loaders you will need to rename these methods if you have overriden them and adjust any calls you may have made to them. === 2.5 === * cleanup method renamed to instance_deleted. diff --git a/lib/db/caches.php b/lib/db/caches.php index 57c3e37580e..f2445e234d0 100644 --- a/lib/db/caches.php +++ b/lib/db/caches.php @@ -30,7 +30,7 @@ $definitions = array( // Used to store processed lang files. // The keys used are the revision, lang and component of the string file. - // The persistent max size has been based upon student access of the site. + // The static acceleration size has been based upon student access of the site. // NOTE: this data may be safely stored in local caches on cluster nodes. 'string' => array( 'mode' => cache_store::MODE_APPLICATION, @@ -46,7 +46,7 @@ $definitions = array( 'mode' => cache_store::MODE_APPLICATION, 'simplekeys' => true, 'simpledata' => true, - 'persistent' => true, + 'staticacceleration' => true, ), // Used to store database meta information. @@ -115,7 +115,7 @@ $definitions = array( 'simplekeys' => true, // The course id the groupings exist for. 'simpledata' => true, // Array of stdClass objects containing only strings. 'staticacceleration' => true, // Likely there will be a couple of calls to this. - 'persistmaxsize' => 2, // The original cache used 1, we've increased that to two. + 'staticaccelerationsize' => 2, // The original cache used 1, we've increased that to two. ), // Used to cache calendar subscriptions. From 0c5cb2bf22c010604c3feeec0e181502d5d0e16d Mon Sep 17 00:00:00 2001 From: Sam Hemelryk Date: Wed, 25 Sep 2013 09:14:49 +1200 Subject: [PATCH 073/101] MDL-40903 fixed merge conflicts against integration --- lib/db/caches.php | 47 ----------------------------------------------- 1 file changed, 47 deletions(-) diff --git a/lib/db/caches.php b/lib/db/caches.php index f2445e234d0..c6ca0865265 100644 --- a/lib/db/caches.php +++ b/lib/db/caches.php @@ -147,53 +147,6 @@ $definitions = array( 'mode' => cache_store::MODE_APPLICATION, 'simplekeys' => true, 'simpledata' => true, - 'staticacceleration' => true, - 'staticaccelerationsize' => 2, - ), - - // Cache used by the {@link plugininfo_mod} class. - 'plugininfo_mod' => array( - 'mode' => cache_store::MODE_APPLICATION, - 'simplekeys' => true, - 'simpledata' => true, - 'staticacceleration' => true, - 'staticaccelerationsize' => 1, - ), - - // Cache used by the {@link plugininfo_block} class. - 'plugininfo_block' => array( - 'mode' => cache_store::MODE_APPLICATION, - 'simplekeys' => true, - 'simpledata' => true, - 'staticacceleration' => true, - 'staticaccelerationsize' => 1, - ), - - // Cache used by the {@link plugininfo_filter} class. - 'plugininfo_filter' => array( - 'mode' => cache_store::MODE_APPLICATION, - 'simplekeys' => true, - 'simpledata' => true, - 'staticacceleration' => true, - 'staticaccelerationsize' => 1, - ), - - // Cache used by the {@link plugininfo_repository} class. - 'plugininfo_repository' => array( - 'mode' => cache_store::MODE_APPLICATION, - 'simplekeys' => true, - 'simpledata' => true, - 'staticacceleration' => true, - 'staticaccelerationsize' => 1, - ), - - // Cache used by the {@link plugininfo_portfolio} class. - 'plugininfo_portfolio' => array( - 'mode' => cache_store::MODE_APPLICATION, - 'simplekeys' => true, - 'simpledata' => true, - 'staticacceleration' => true, - 'staticaccelerationsize' => 1, ), // Used to store the full tree of course categories. From 5f7aa1e2e9a0f25c5f23c91a49c33a46c84ae202 Mon Sep 17 00:00:00 2001 From: "Eloy Lafuente (stronk7)" Date: Wed, 25 Sep 2013 01:25:20 +0200 Subject: [PATCH 074/101] MDL-41726 bump to force site/phpunit/behat reinstall --- version.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.php b/version.php index 8d77f2809d8..41786a0a7e5 100644 --- a/version.php +++ b/version.php @@ -29,7 +29,7 @@ defined('MOODLE_INTERNAL') || die(); -$version = 2013092001.02; // YYYYMMDD = weekly release date of this DEV branch. +$version = 2013092001.03; // YYYYMMDD = weekly release date of this DEV branch. // RR = release increments - 00 in DEV branches. // .XX = incremental changes. From ae67f8201f18221fb778307eb447c81f4244a5fa Mon Sep 17 00:00:00 2001 From: "Eloy Lafuente (stronk7)" Date: Wed, 25 Sep 2013 01:46:53 +0200 Subject: [PATCH 075/101] MDL-41889 Use moodle collator for NATURAL sort --- admin/tool/generator/classes/site_backend.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/admin/tool/generator/classes/site_backend.php b/admin/tool/generator/classes/site_backend.php index fe0b60fdc51..9bf6a0c7ff1 100644 --- a/admin/tool/generator/classes/site_backend.php +++ b/admin/tool/generator/classes/site_backend.php @@ -189,7 +189,8 @@ class tool_generator_site_backend extends tool_generator_backend { } // SQL order by is not appropiate here as is ordering strings. $shortnames = array_keys($testcourses); - rsort($shortnames, SORT_NATURAL); + core_collator::asort($shortnames, core_collator::SORT_NATURAL); + $shortnames = array_reverse($shortnames); // They come ordered by shortname DESC, so non-numeric values will be the first ones. $prefixnchars = strlen(self::SHORTNAMEPREFIX); From 1325d493cd99b637117a59e150c3d732805ea037 Mon Sep 17 00:00:00 2001 From: David Monllao Date: Wed, 28 Aug 2013 16:50:00 +0800 Subject: [PATCH 076/101] MDL-41421 tool_generator: Adding a test plan generator to feed JMeter Also changing course_backend.php coding style according to codechecker. --- .../tool/generator/classes/course_backend.php | 8 +- .../generator/classes/make_course_form.php | 10 +- .../generator/classes/make_testplan_form.php | 90 ++++++ .../generator/classes/testplan_backend.php | 273 ++++++++++++++++++ .../tool/generator/lang/en/tool_generator.php | 70 ++++- admin/tool/generator/lib.php | 59 ++++ admin/tool/generator/maketestcourse.php | 3 +- admin/tool/generator/maketestplan.php | 88 ++++++ admin/tool/generator/settings.php | 6 +- admin/tool/generator/testplan.template.jmx | 33 +-- config-dist.php | 14 + 11 files changed, 611 insertions(+), 43 deletions(-) create mode 100644 admin/tool/generator/classes/make_testplan_form.php create mode 100644 admin/tool/generator/classes/testplan_backend.php create mode 100644 admin/tool/generator/lib.php create mode 100644 admin/tool/generator/maketestplan.php diff --git a/admin/tool/generator/classes/course_backend.php b/admin/tool/generator/classes/course_backend.php index 5171b835a85..28eda175fd0 100644 --- a/admin/tool/generator/classes/course_backend.php +++ b/admin/tool/generator/classes/course_backend.php @@ -328,7 +328,7 @@ class tool_generator_course_backend extends tool_generator_backend { // Create pages. $number = self::$parampages[$this->size]; $this->log('createpages', $number, true); - for ($i=0; $i<$number; $i++) { + for ($i = 0; $i < $number; $i++) { $record = array('course' => $this->course->id); $options = array('section' => $this->get_target_section()); $pagegenerator->create_instance($record, $options); @@ -385,7 +385,7 @@ class tool_generator_course_backend extends tool_generator_backend { return substr($data, -$length); } $length -= strlen($data); - for ($j=0; $j < $length; $j++) { + for ($j = 0; $j < $length; $j++) { $data .= chr(rand(1, 255)); } return $data; @@ -463,13 +463,13 @@ class tool_generator_course_backend extends tool_generator_backend { // Add discussions and posts. $sofar = 0; - for ($i=0; $i < $discussions; $i++) { + for ($i = 0; $i < $discussions; $i++) { $record = array('forum' => $forum->id, 'course' => $this->course->id, 'userid' => $this->get_target_user()); $discussion = $forumgenerator->create_discussion($record); $parentid = $DB->get_field('forum_posts', 'id', array('discussion' => $discussion->id), MUST_EXIST); $sofar++; - for ($j=0; $j < $posts - 1; $j++, $sofar++) { + for ($j = 0; $j < $posts - 1; $j++, $sofar++) { $record = array('discussion' => $discussion->id, 'userid' => $this->get_target_user(), 'parent' => $parentid); $forumgenerator->create_post($record); diff --git a/admin/tool/generator/classes/make_course_form.php b/admin/tool/generator/classes/make_course_form.php index 7f7f629c5b3..5c965152501 100644 --- a/admin/tool/generator/classes/make_course_form.php +++ b/admin/tool/generator/classes/make_course_form.php @@ -14,6 +14,14 @@ // You should have received a copy of the GNU General Public License // along with Moodle. If not, see . +/** + * Course form. + * + * @package tool_generator + * @copyright 2013 The Open University + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + defined('MOODLE_INTERNAL') || die(); require_once($CFG->libdir . '/formslib.php'); @@ -60,7 +68,7 @@ class tool_generator_make_course_form extends moodleform { // Check course doesn't already exist. if (!empty($data['shortname'])) { // Check shortname. - $error = tool_generator_course_backend::check_shortname_available($data['shortname']); + $error = tool_generator_course_backend::check_shortname_available($data['shortname']); if ($error) { $errors['shortname'] = $error; } diff --git a/admin/tool/generator/classes/make_testplan_form.php b/admin/tool/generator/classes/make_testplan_form.php new file mode 100644 index 00000000000..b4c05e0731e --- /dev/null +++ b/admin/tool/generator/classes/make_testplan_form.php @@ -0,0 +1,90 @@ +. + +/** + * Test plan form. + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +require_once($CFG->libdir . '/formslib.php'); + +/** + * Form with options for creating large course. + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class tool_generator_make_testplan_form extends moodleform { + + /** + * Test plan form definition. + * + * @return void + */ + public function definition() { + $mform = $this->_form; + + $mform->addElement('select', 'size', get_string('size', 'tool_generator'), + tool_generator_testplan_backend::get_size_choices()); + $mform->setDefault('size', tool_generator_testplan_backend::DEFAULT_SIZE); + + $mform->addElement('select', 'courseid', get_string('targetcourse', 'tool_generator'), + tool_generator_testplan_backend::get_course_options()); + + $mform->addElement('advcheckbox', 'updateuserspassword', get_string('updateuserspassword', 'tool_generator')); + $mform->addHelpButton('updateuserspassword', 'updateuserspassword', 'tool_generator'); + + $mform->addElement('submit', 'submit', get_string('createtestplan', 'tool_generator')); + } + + /** + * Checks that the submitted data allows us to create a test plan. + * + * @param array $data + * @param array $files + * @return array An array of errors + */ + public function validation($data, $files) { + global $CFG, $DB; + + $errors = array(); + if (empty($CFG->tool_generator_users_password) || is_bool($CFG->tool_generator_users_password)) { + $errors['updateuserspassword'] = get_string('error_nouserspassword', 'tool_generator'); + } + + // Check the course has users. + // Better to repeat here the query than to do it afterwards and end up with an exception. + $coursecontext = context_course::instance($data['courseid']); + if (!$users = get_enrolled_users($coursecontext, '', 0, 'u.id')) { + $errors['courseid'] = get_string('coursewithoutusers', 'tool_generator'); + } + + // Checks that the selected course has enough users. + $coursesizes = tool_generator_course_backend::get_users_per_size(); + if (count($users) < $coursesizes[$data['size']]) { + $errors['size'] = get_string('notenoughusers', 'tool_generator'); + } + + return $errors; + } + +} diff --git a/admin/tool/generator/classes/testplan_backend.php b/admin/tool/generator/classes/testplan_backend.php new file mode 100644 index 00000000000..af1b7439ecf --- /dev/null +++ b/admin/tool/generator/classes/testplan_backend.php @@ -0,0 +1,273 @@ +. + +/** + * Test plan generator. + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +/** + * Generates the files required by JMeter. + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class tool_generator_testplan_backend extends tool_generator_backend { + + /** + * @var Number of users depending on the selected size. + */ + protected static $users = array(1, 30, 200, 1000, 5000, 10000); + + /** + * @var Number of loops depending on the selected size. + */ + protected static $loops = array(1, 1, 2, 3, 3, 5); + + /** + * @var Rampup period depending on the selected size. + */ + protected static $rampups = array(1, 6, 40, 100, 500, 800); + + /** + * Gets a list of size choices supported by this backend. + * + * @return array List of size (int) => text description for display + */ + public static function get_size_choices() { + + $options = array(); + for ($size = self::MIN_SIZE; $size <= self::MAX_SIZE; $size++) { + $a = new stdClass(); + $a->users = self::$users[$size]; + $a->loops = self::$loops[$size]; + $a->rampup = self::$rampups[$size]; + $options[$size] = get_string('testplansize_' . $size, 'tool_generator', $a); + } + return $options; + } + + /** + * Gets the list of courses that can be used used to generate a test. + * + * @return array The list of options as courseid => name + */ + public static function get_course_options() { + $courses = get_courses('all', 'c.sortorder ASC', 'c.id, c.shortname, c.fullname'); + if (!$courses) { + print_error('error_nocourses', 'tool_generator'); + } + + $options = array(); + unset($courses[1]); + foreach ($courses as $course) { + $options[$course->id] = $course->fullname . '(' . $course->shortname . ')'; + } + return $options; + } + + /** + * Creates the test plan file. + * + * @param int $courseid The target course id + * @param int $size The test plan size + * @return stored_file + */ + public static function create_testplan_file($courseid, $size) { + $jmxcontents = self::generate_test_plan($courseid, $size); + + $fs = get_file_storage(); + $filerecord = self::get_file_record('testplan', 'jmx'); + return $fs->create_file_from_string($filerecord, $jmxcontents); + } + + /** + * Creates the users data file. + * + * @param int $courseid The target course id + * @param bool $updateuserspassword Updates the course users password to $CFG->tool_generator_users_password + * @return stored_file + */ + public static function create_users_file($courseid, $updateuserspassword) { + $csvcontents = self::generate_users_file($courseid, $updateuserspassword); + + $fs = get_file_storage(); + $filerecord = self::get_file_record('users', 'csv'); + return $fs->create_file_from_string($filerecord, $csvcontents); + } + + /** + * Generates the test plan according to the target course contents. + * + * @param int $targetcourseid The target course id + * @param int $size The test plan size + * @return string The test plan as a string + */ + protected static function generate_test_plan($targetcourseid, $size) { + global $CFG; + + // Getting the template. + $template = file_get_contents(__DIR__ . '/../testplan.template.jmx'); + + // Getting the course modules data. + $coursedata = self::get_course_test_data($targetcourseid); + + // Host and path to the site. + $urlcomponents = parse_url($CFG->wwwroot); + if (empty($urlcomponents['path'])) { + $urlcomponents['path'] = ''; + } + + $replacements = array( + self::$users[$size], + self::$loops[$size], + self::$rampups[$size], + $urlcomponents['host'], + $urlcomponents['path'], + get_string('shortsize_' . $size, 'tool_generator'), + $targetcourseid, + $coursedata->pageid, + $coursedata->forumid, + $coursedata->forumdiscussionid, + $coursedata->forumreplyid + ); + + $placeholders = array( + '{{USERS_PLACEHOLDER}}', + '{{LOOPS_PLACEHOLDER}}', + '{{RAMPUP_PLACEHOLDER}}', + '{{HOST_PLACEHOLDER}}', + '{{SITEPATH_PLACEHOLDER}}', + '{{SIZE_PLACEHOLDER}}', + '{{COURSEID_PLACEHOLDER}}', + '{{PAGEACTIVITYID_PLACEHOLDER}}', + '{{FORUMACTIVITYID_PLACEHOLDER}}', + '{{FORUMDISCUSSIONID_PLACEHOLDER}}', + '{{FORUMREPLYID_PLACEHOLDER}}' + ); + + // Fill the template with the target course values. + return str_replace($placeholders, $replacements, $template); + } + + /** + * Generates the user's credentials file with all the course's users + * + * @param int $targetcourseid + * @param bool $updateuserspassword Updates the course users password to $CFG->tool_generator_users_password + * @return string The users csv file contents. + */ + protected static function generate_users_file($targetcourseid, $updateuserspassword) { + global $CFG; + + $coursecontext = context_course::instance($targetcourseid); + + $users = get_enrolled_users($coursecontext, '', 0, 'u.id, u.username, u.auth', 'u.username ASC'); + if (!$users) { + print_error('coursewithoutusers', 'tool_generator'); + } + + $lines = array(); + foreach ($users as $user) { + + // Updating password to the one set in config.php. + if ($updateuserspassword) { + $userauth = get_auth_plugin($user->auth); + if (!$userauth->user_update_password($user, $CFG->tool_generator_users_password)) { + print_error('errorpasswordupdate', 'auth'); + } + } + + // Here we already checked that $CFG->tool_generator_users_password is not null. + $lines[] = $user->username . ',' . $CFG->tool_generator_users_password; + } + + return implode(PHP_EOL, $lines); + } + + /** + * Returns a tool_generator file record + * + * @param string $filearea testplan or users + * @param string $filetype The file extension jmx or csv + * @return stdClass The file record to use when creating tool_generator files + */ + protected static function get_file_record($filearea, $filetype) { + + $systemcontext = context_system::instance(); + + $filerecord = new stdClass(); + $filerecord->contextid = $systemcontext->id; + $filerecord->component = 'tool_generator'; + $filerecord->filearea = $filearea; + $filerecord->itemid = 0; + $filerecord->filepath = '/'; + + // Random generated number to avoid concurrent execution problems. + $filerecord->filename = $filearea . '_' . date('YmdHi', time()) . '_' . rand(1000, 9999) . '.' . $filetype; + + return $filerecord; + } + + /** + * Gets the data required to fill the test plan template with the database contents. + * + * @param int $targetcourseid The target course id + * @return stdClass The ids required by the test plan + */ + protected static function get_course_test_data($targetcourseid) { + global $DB, $USER; + + $data = new stdClass(); + + // Getting course contents info as the current user (will be an admin). + $course = new stdClass(); + $course->id = $targetcourseid; + $courseinfo = new course_modinfo($course, $USER->id); + + // Getting the first page module instance. + if (!$pages = $courseinfo->get_instances_of('page')) { + print_error('error_nopageinstances', 'tool_generator'); + } + $data->pageid = reset($pages)->id; + + // Getting the first forum module instance and it's first discussion and reply as well. + if (!$forums = $courseinfo->get_instances_of('forum')) { + print_error('error_noforuminstances', 'tool_generator'); + } + $forum = reset($forums); + + // Getting the first discussion (and reply). + if (!$discussions = forum_get_discussions($forum, 'd.timemodified ASC', false, -1, 1)) { + print_error('error_noforumdiscussions', 'tool_generator'); + } + $discussion = reset($discussions); + + $data->forumid = $forum->id; + $data->forumdiscussionid = $discussion->discussion; + $data->forumreplyid = $discussion->id; + + // According to the current test plan. + return $data; + } + +} diff --git a/admin/tool/generator/lang/en/tool_generator.php b/admin/tool/generator/lang/en/tool_generator.php index a204ce8aed7..71d3741efaa 100644 --- a/admin/tool/generator/lang/en/tool_generator.php +++ b/admin/tool/generator/lang/en/tool_generator.php @@ -23,16 +23,7 @@ */ $string['bigfile'] = 'Big file {$a}'; -$string['coursesize_0'] = 'XS (~10KB; create in ~1 second)'; -$string['coursesize_1'] = 'S (~10MB; create in ~30 seconds)'; -$string['coursesize_2'] = 'M (~100MB; create in ~5 minutes)'; -$string['coursesize_3'] = 'L (~1GB; create in ~1 hour)'; -$string['coursesize_4'] = 'XL (~10GB; create in ~4 hours)'; -$string['coursesize_5'] = 'XXL (~20GB; create in ~8 hours)'; -$string['createcourse'] = 'Create course'; -$string['creating'] = 'Creating course'; -$string['done'] = 'done ({$a}s)'; -$string['explanation'] = 'This tool creates standard test courses that include many +$string['courseexplanation'] = 'This tool creates standard test courses that include many sections, activities, and files. This is intended to provide a standardised measure for checking the reliability @@ -50,16 +41,38 @@ filesystem space (tens of gigabytes). You will need to delete the courses (To avoid accidental use, this feature is disabled unless you have also selected DEVELOPER debugging level.)'; +$string['coursesize_0'] = 'XS (~10KB; create in ~1 second)'; +$string['coursesize_1'] = 'S (~10MB; create in ~30 seconds)'; +$string['coursesize_2'] = 'M (~100MB; create in ~5 minutes)'; +$string['coursesize_3'] = 'L (~1GB; create in ~1 hour)'; +$string['coursesize_4'] = 'XL (~10GB; create in ~4 hours)'; +$string['coursesize_5'] = 'XXL (~20GB; create in ~8 hours)'; +$string['coursewithoutusers'] = 'The selected course has no users'; +$string['createcourse'] = 'Create course'; +$string['createtestplan'] = 'Create test plan'; +$string['creating'] = 'Creating course'; +$string['done'] = 'done ({$a}s)'; +$string['downloadtestplan'] = 'Download test plan'; +$string['downloadusersfile'] = 'Download users file'; +$string['error_nocourses'] = 'There are no courses to generate the test plan'; +$string['error_noforumdiscussions'] = 'The selected course does not contain forum discussions'; +$string['error_noforuminstances'] = 'The selected course does not contain forum module instances'; +$string['error_noforumreplies'] = 'The selected course does not contain forum replies'; +$string['error_nonexistingcourse'] = 'The specified course does not exist'; +$string['error_nopageinstances'] = 'The selected course does not contain page module instances'; $string['error_notdebugging'] = 'Not available on this server because debugging is not set to DEVELOPER'; +$string['error_nouserspassword'] = 'You need to set $CFG->tool_generator_users_password in config.php to generate the test plan'; $string['firstname'] = 'Test course user'; $string['fullname'] = 'Test course: {$a->size}'; $string['maketestcourse'] = 'Make test course'; +$string['maketestplan'] = 'Make JMeter test plan'; +$string['notenoughusers'] = 'The selected course does not have enough users'; $string['pluginname'] = 'Development data generator'; -$string['progress_createcourse'] = 'Creating course {$a}'; $string['progress_checkaccounts'] = 'Checking user accounts ({$a})'; $string['progress_coursecompleted'] = 'Course completed ({$a}s)'; $string['progress_createaccounts'] = 'Creating user accounts ({$a->from} - {$a->to})'; $string['progress_createbigfiles'] = 'Creating big files ({$a})'; +$string['progress_createcourse'] = 'Creating course {$a}'; $string['progress_createforum'] = 'Creating forum ({$a} posts)'; $string['progress_createpages'] = 'Creating pages ({$a})'; $string['progress_createsmallfiles'] = 'Creating small files ({$a})'; @@ -79,3 +92,38 @@ $string['sitesize_4'] = 'XL (~10GB; 1065 courses, created in ~5 hours)'; $string['sitesize_5'] = 'XXL (~20GB; 4177 courses, created in ~10 hours)'; $string['size'] = 'Size of course'; $string['smallfiles'] = 'Small files'; +$string['targetcourse'] = 'Test target course'; +$string['testplanexplanation'] = 'This tool creates a JMeter test plan file along with the user credentials file. + +This test plan is designed to work along with {$a}, which makes easier to run the test plan in a specific Moodle environment, gathers information about the runs and compares the results, so you will need to download it and use it\'s test_runner.sh script or follow the installation and usage instructions. + +You need to set a password for the course users in config.php (p.e. $CFG->tool_generator_users_password = \'moodle\';) there +is no default value for this password to prevent unintended usages of the tool. + +It is part of tool_generator so it works well with the courses generated by the courses and the site generators, it can +also be used with any course that contains, at least: + +* Enough enrolled users (depends on the test plan size you select) with the password reset to \'moodle\' +* A page module instance +* A forum module instance with at least one discussion and one reply + +You might want to consider your servers capacity when running large test plans as the amount to load generated by JMeter +can be specially big. The ramp up period has been adjusted according to the number of threads (users) to reduce this kind +of issues but the load is still huge. + +**Do not run the test plan on a live system**. This feature only creates the files to feed JMeter so is not dangerous by +itself, but you should **NEVER** run this test plan in a production site as: + +* It changes the database contents +* Logins lots of users at the same time so there is risk that your server can not handle the load and dies +* It can update the course users passwords + +'; +$string['testplansize_0'] = 'XS ({$a->users} users, {$a->loops} loops and {$a->rampup} rampup period)'; +$string['testplansize_1'] = 'S ({$a->users} users, {$a->loops} loops and {$a->rampup} rampup period)'; +$string['testplansize_2'] = 'M ({$a->users} users, {$a->loops} loops and {$a->rampup} rampup period)'; +$string['testplansize_3'] = 'L ({$a->users} users, {$a->loops} loops and {$a->rampup} rampup period)'; +$string['testplansize_4'] = 'XL ({$a->users} users, {$a->loops} loops and {$a->rampup} rampup period)'; +$string['testplansize_5'] = 'XXL ({$a->users} users, {$a->loops} loops and {$a->rampup} rampup period)'; +$string['updateuserspassword'] = 'Update course users password'; +$string['updateuserspassword_help'] = 'JMeter needs to login as the course users, you can set the users password using $CFG->tool_generator_users_password in config.php; this setting updates the course user\'s password according to $CFG->tool_generator_users_password. It can be useful in case you are using a course not generated by tool_generator or $CFG->tool_generator_users_password was not set when you created the test courses.'; diff --git a/admin/tool/generator/lib.php b/admin/tool/generator/lib.php new file mode 100644 index 00000000000..b9b5efbe818 --- /dev/null +++ b/admin/tool/generator/lib.php @@ -0,0 +1,59 @@ +. + +/** + * Generator tool functions. + * + * @package tool_generator + * @copyright David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +/** + * Files support. + * + * Exits if the required permissions are not satisfied. + * + * @param stdClass $course course object + * @param stdClass $cm + * @param stdClass $context context object + * @param string $filearea file area + * @param array $args extra arguments + * @param bool $forcedownload whether or not force download + * @param array $options additional options affecting the file serving + * @return void The file is sent along with it's headers + */ +function tool_generator_pluginfile($course, $cm, $context, $filearea, $args, $forcedownload, array $options = array()) { + + // Only for admins. + if (!is_siteadmin()) { + die; + } + + if ($context->contextlevel != CONTEXT_SYSTEM) { + send_file_not_found(); + } + + $fs = get_file_storage(); + $file = $fs->get_file($context->id, 'tool_generator', $filearea, $args[0], '/', $args[1]); + + // Send the file, always forcing download, we don't want options. + session_get_instance()->write_close(); + send_stored_file($file, 0, 0, true); +} + diff --git a/admin/tool/generator/maketestcourse.php b/admin/tool/generator/maketestcourse.php index c5f9c82ab10..a7b760bd63d 100644 --- a/admin/tool/generator/maketestcourse.php +++ b/admin/tool/generator/maketestcourse.php @@ -15,8 +15,7 @@ // along with Moodle. If not, see . /** - * Script creates a standardised large course for testing reliability and - * performance. + * Script creates a standardised large course for testing reliability and performance. * * @package tool_generator * @copyright 2013 The Open University diff --git a/admin/tool/generator/maketestplan.php b/admin/tool/generator/maketestplan.php new file mode 100644 index 00000000000..5adef0c7178 --- /dev/null +++ b/admin/tool/generator/maketestplan.php @@ -0,0 +1,88 @@ +. + +/** + * Generates a JMeter test plan to performance comparison. + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +require(__DIR__ . '/../../../config.php'); +require_once($CFG->libdir . '/adminlib.php'); + +// Initialise page and check permissions. +admin_externalpage_setup('toolgeneratortestplan'); + +// Start page. +echo $OUTPUT->header(); +echo $OUTPUT->heading(get_string('maketestplan', 'tool_generator')); + +// Information message. +$context = context_system::instance(); +$repourl = 'https://github.com/moodlehq/moodle-performance-comparison'; +$markdownlink = '[' . $repourl . '](' . $repourl . ')'; +echo $OUTPUT->box(format_text(get_string('testplanexplanation', 'tool_generator', $markdownlink), + FORMAT_MARKDOWN, array('context' => $context))); + +// Check debugging is set to DEVELOPER. +if (!$CFG->debugdeveloper) { + echo $OUTPUT->notification(get_string('error_notdebugging', 'tool_generator')); + echo $OUTPUT->footer(); + exit; +} + +// Set up the form. +$mform = new tool_generator_make_testplan_form('maketestplan.php'); +if ($data = $mform->get_data()) { + + // Creating both test plan and users files. + $testplanfile = tool_generator_testplan_backend::create_testplan_file($data->courseid, $data->size); + $usersfile = tool_generator_testplan_backend::create_users_file($data->courseid, $data->updateuserspassword); + + // Test plan link. + $testplanurl = moodle_url::make_pluginfile_url( + $testplanfile->get_contextid(), + $testplanfile->get_component(), + $testplanfile->get_filearea(), + $testplanfile->get_itemid(), + $testplanfile->get_filepath(), + $testplanfile->get_filename() + ); + echo html_writer::div( + html_writer::link($testplanurl, get_string('downloadtestplan', 'tool_generator')) + ); + + // Users file link. + $usersfileurl = moodle_url::make_pluginfile_url( + $usersfile->get_contextid(), + $usersfile->get_component(), + $usersfile->get_filearea(), + $usersfile->get_itemid(), + $usersfile->get_filepath(), + $usersfile->get_filename() + ); + echo html_writer::div( + html_writer::link($usersfileurl, get_string('downloadusersfile', 'tool_generator')) + ); + +} else { + // Display form. + $mform->display(); +} + +echo $OUTPUT->footer(); diff --git a/admin/tool/generator/settings.php b/admin/tool/generator/settings.php index 39a40aeced8..f1f2350fe3a 100644 --- a/admin/tool/generator/settings.php +++ b/admin/tool/generator/settings.php @@ -25,8 +25,12 @@ defined('MOODLE_INTERNAL') || die; if ($hassiteconfig) { - $ADMIN->add('development', new admin_externalpage('toolgenerator', + $ADMIN->add('development', new admin_externalpage('toolgeneratorcourse', get_string('maketestcourse', 'tool_generator'), $CFG->wwwroot . '/' . $CFG->admin . '/tool/generator/maketestcourse.php')); + + $ADMIN->add('development', new admin_externalpage('toolgeneratortestplan', + get_string('maketestplan', 'tool_generator'), + $CFG->wwwroot . '/' . $CFG->admin . '/tool/generator/maketestplan.php')); } diff --git a/admin/tool/generator/testplan.template.jmx b/admin/tool/generator/testplan.template.jmx index d08a9b50f56..2bfdaf45530 100644 --- a/admin/tool/generator/testplan.template.jmx +++ b/admin/tool/generator/testplan.template.jmx @@ -12,19 +12,9 @@ ${__time()} = - - users - {{USERS_PLACEHOLDER}} - = - - - loops - {{LOOPS_PLACEHOLDER}} - = - - - rampup - {{RAMPUP_PLACEHOLDER}} + + size + {{SIZE_PLACEHOLDER}} = @@ -62,7 +52,6 @@ {{FORUMREPLYID_PLACEHOLDER}} = - @@ -70,11 +59,7 @@ all active threads (shared) - - throughput - 120.0 - 0.0 - + ${__property(throughput,throughput,120.0)} @@ -84,8 +69,8 @@ false 1 - ${users} - ${rampup} + ${__P(users,{{USERS_PLACEHOLDER}})} + ${__P(rampup,{{RAMPUP_PLACEHOLDER}})} 1378187955000 1378187955000 false @@ -278,10 +263,10 @@ continue false - ${loops} + ${__property(loops,loops,{{LOOPS_PLACEHOLDER}})} - ${users} - ${rampup} + ${__property(users,users,{{USERS_PLACEHOLDER}})} + ${__property(rampup,rampup,{{RAMPUP_PLACEHOLDER}})} 1376636813000 1376636813000 false diff --git a/config-dist.php b/config-dist.php index 0b2a9b1e7b9..87fa3278f93 100644 --- a/config-dist.php +++ b/config-dist.php @@ -620,6 +620,20 @@ $CFG->admin = 'admin'; // used to expand the default white list with an array of extra settings. // Example: // $CFG->behat_extraallowedsettings = array('logsql', 'dblogerror'); +// +//========================================================================= +// 12. DEVELOPER DATA GENERATOR +//========================================================================= +// +// The developer data generator tool is intended to be used only in development or testing sites and +// it's usage in production environments is not recommended; if it is used to create JMeter test plans +// is even less recommended as JMeter needs to log in as site course users. JMeter needs to know the +// users passwords but would be dangerous to have a default password as everybody would know it, which would +// be specially dangerouse if somebody uses this tool in a production site, so in order to prevent unintended +// uses of the tool and undesired accesses as well, is compulsory to set a password for the users +// generated by this tool, but only in case you want to generate a JMeter test. The value should be a string. +// Example: +// $CFG->tool_generator_users_password = 'examplepassword'; //========================================================================= // ALL DONE! To continue installation, visit your main page with a browser From 35aa01820881182b56a4c702fc8540989c839007 Mon Sep 17 00:00:00 2001 From: David Monllao Date: Thu, 5 Sep 2013 13:38:43 +0800 Subject: [PATCH 077/101] MDL-41421 tool_generator: Adding a CLI tool to generate the test plan --- .../generator/classes/make_testplan_form.php | 14 +- .../generator/classes/testplan_backend.php | 55 ++++++++ admin/tool/generator/cli/maketestplan.php | 122 ++++++++++++++++++ .../tool/generator/lang/en/tool_generator.php | 9 +- admin/tool/generator/lib.php | 4 +- admin/tool/generator/maketestplan.php | 3 +- admin/tool/generator/version.php | 4 +- 7 files changed, 187 insertions(+), 24 deletions(-) create mode 100644 admin/tool/generator/cli/maketestplan.php diff --git a/admin/tool/generator/classes/make_testplan_form.php b/admin/tool/generator/classes/make_testplan_form.php index b4c05e0731e..15552d5775a 100644 --- a/admin/tool/generator/classes/make_testplan_form.php +++ b/admin/tool/generator/classes/make_testplan_form.php @@ -64,24 +64,16 @@ class tool_generator_make_testplan_form extends moodleform { * @return array An array of errors */ public function validation($data, $files) { - global $CFG, $DB; + global $CFG; $errors = array(); if (empty($CFG->tool_generator_users_password) || is_bool($CFG->tool_generator_users_password)) { $errors['updateuserspassword'] = get_string('error_nouserspassword', 'tool_generator'); } - // Check the course has users. // Better to repeat here the query than to do it afterwards and end up with an exception. - $coursecontext = context_course::instance($data['courseid']); - if (!$users = get_enrolled_users($coursecontext, '', 0, 'u.id')) { - $errors['courseid'] = get_string('coursewithoutusers', 'tool_generator'); - } - - // Checks that the selected course has enough users. - $coursesizes = tool_generator_course_backend::get_users_per_size(); - if (count($users) < $coursesizes[$data['size']]) { - $errors['size'] = get_string('notenoughusers', 'tool_generator'); + if ($courseerrors = tool_generator_testplan_backend::has_selected_course_any_problem($data['courseid'], $data['size'])) { + $errors = array_merge($errors, $courseerrors); } return $errors; diff --git a/admin/tool/generator/classes/testplan_backend.php b/admin/tool/generator/classes/testplan_backend.php index af1b7439ecf..6f70dad3ed9 100644 --- a/admin/tool/generator/classes/testplan_backend.php +++ b/admin/tool/generator/classes/testplan_backend.php @@ -33,6 +33,11 @@ defined('MOODLE_INTERNAL') || die(); */ class tool_generator_testplan_backend extends tool_generator_backend { + /** + * @var The URL to the repository of the external project. + */ + protected static $repourl = 'https://github.com/moodlehq/moodle-performance-comparison'; + /** * @var Number of users depending on the selected size. */ @@ -85,6 +90,15 @@ class tool_generator_testplan_backend extends tool_generator_backend { return $options; } + /** + * Getter for moodle-performance-comparison project URL. + * + * @return string + */ + public static function get_repourl() { + return self::$repourl; + } + /** * Creates the test plan file. * @@ -270,4 +284,45 @@ class tool_generator_testplan_backend extends tool_generator_backend { return $data; } + /** + * Checks if the selected target course is ok. + * + * @param int|string $course + * @param int $size + * @return array Errors array or false if everything is ok + */ + public static function has_selected_course_any_problem($course, $size) { + global $DB; + + $errors = array(); + + if (!is_numeric($course)) { + if (!$course = $DB->get_field('course', 'id', array('shortname' => $course))) { + $errors['courseid'] = get_string('error_nonexistingcourse', 'tool_generator'); + return $errors; + } + } + + $coursecontext = context_course::instance($course, IGNORE_MISSING); + if (!$coursecontext) { + $errors['courseid'] = get_string('error_nonexistingcourse', 'tool_generator'); + return $errors; + } + + if (!$users = get_enrolled_users($coursecontext, '', 0, 'u.id')) { + $errors['courseid'] = get_string('coursewithoutusers', 'tool_generator'); + } + + // Checks that the selected course has enough users. + $coursesizes = tool_generator_course_backend::get_users_per_size(); + if (count($users) < $coursesizes[$size]) { + $errors['size'] = get_string('notenoughusers', 'tool_generator'); + } + + if (empty($errors)) { + return false; + } + + return $errors; + } } diff --git a/admin/tool/generator/cli/maketestplan.php b/admin/tool/generator/cli/maketestplan.php new file mode 100644 index 00000000000..456393d81a9 --- /dev/null +++ b/admin/tool/generator/cli/maketestplan.php @@ -0,0 +1,122 @@ +. + +/** + * CLI interface for creating a test plan + * + * @package tool_generator + * @copyright 2013 David Monllaó + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +define('CLI_SCRIPT', true); +define('NO_OUTPUT_BUFFERING', true); + +require(dirname(__FILE__) . '/../../../../config.php'); +require_once($CFG->libdir. '/clilib.php'); + +// CLI options. +list($options, $unrecognized) = cli_get_params( + array( + 'help' => false, + 'shortname' => false, + 'size' => false, + 'bypasscheck' => false, + 'updateuserspassword' => false + ), + array( + 'h' => 'help' + ) +); + +$testplansizes = '* ' . implode(PHP_EOL . '* ', tool_generator_testplan_backend::get_size_choices()); + +// Display help. +if (!empty($options['help']) || empty($options['shortname']) || empty($options['size'])) { + + echo get_string('testplanexplanation', 'tool_generator', tool_generator_testplan_backend::get_repourl()) . +"Options: +-h, --help Print out this help +--shortname Shortname of the test plan's target course (required) +--size Size of the test plan to create XS, S, M, L, XL, or XXL (required) +--bypasscheck Bypasses the developer-mode check (be careful!) +--updateuserspassword Updates the target course users password according to \$CFG->tool_generator_users_password + +$testplansizes + +Consider that, the server resources you will need to run the test plan will be higher as the test plan size is higher. + +Example from Moodle root directory: +\$ sudo -u www-data /usr/bin/php admin/tool/generator/cli/maketestplan.php --shortname=\"testcourse_12\" --size=S +"; + // Exit with error unless we're showing this because they asked for it. + exit(empty($options['help']) ? 1 : 0); +} + +// Check debugging is set to developer level. +if (empty($options['bypasscheck']) && !$CFG->debugdeveloper) { + cli_error(get_string('error_notdebugging', 'tool_generator')); +} + +// Get options. +$shortname = $options['shortname']; +$sizename = $options['size']; + +// Check size. +try { + $size = tool_generator_testplan_backend::size_for_name($sizename); +} catch (coding_exception $e) { + cli_error("Error: Invalid size ($sizename). Use --help for help."); +} + +// Check selected course. +if ($errors = tool_generator_testplan_backend::has_selected_course_any_problem($shortname, $size)) { + // Showing the first reported problem. + cli_error("Error: " . reset($errors)); +} + +// Checking if test users password is set. +if (empty($CFG->tool_generator_users_password) || is_bool($CFG->tool_generator_users_password)) { + cli_error("Error: " . get_string('error_nouserspassword', 'tool_generator')); +} + +// Switch to admin user account. +session_set_user(get_admin()); + +// Create files. +$courseid = $DB->get_field('course', 'id', array('shortname' => $shortname)); +$usersfile = tool_generator_testplan_backend::create_users_file($courseid, !empty($options['updateuserspassword'])); +$testplanfile = tool_generator_testplan_backend::create_testplan_file($courseid, $size); + +// One file path per line so other CLI scripts can easily parse the output. +echo moodle_url::make_pluginfile_url( + $testplanfile->get_contextid(), + $testplanfile->get_component(), + $testplanfile->get_filearea(), + $testplanfile->get_itemid(), + $testplanfile->get_filepath(), + $testplanfile->get_filename() + ) . + PHP_EOL . + moodle_url::make_pluginfile_url( + $usersfile->get_contextid(), + $usersfile->get_component(), + $usersfile->get_filearea(), + $usersfile->get_itemid(), + $usersfile->get_filepath(), + $usersfile->get_filename() + ) . + PHP_EOL; diff --git a/admin/tool/generator/lang/en/tool_generator.php b/admin/tool/generator/lang/en/tool_generator.php index 71d3741efaa..9aab6287435 100644 --- a/admin/tool/generator/lang/en/tool_generator.php +++ b/admin/tool/generator/lang/en/tool_generator.php @@ -98,11 +98,10 @@ $string['testplanexplanation'] = 'This tool creates a JMeter test plan file alon This test plan is designed to work along with {$a}, which makes easier to run the test plan in a specific Moodle environment, gathers information about the runs and compares the results, so you will need to download it and use it\'s test_runner.sh script or follow the installation and usage instructions. You need to set a password for the course users in config.php (p.e. $CFG->tool_generator_users_password = \'moodle\';) there -is no default value for this password to prevent unintended usages of the tool. +is no default value for this password to prevent unintended usages of the tool. You need to use the update passwords option in case your course users have other passwords or they were generated by tool_generator but without setting a $CFG->tool_generator_users_password value. It is part of tool_generator so it works well with the courses generated by the courses and the site generators, it can also be used with any course that contains, at least: - * Enough enrolled users (depends on the test plan size you select) with the password reset to \'moodle\' * A page module instance * A forum module instance with at least one discussion and one reply @@ -112,11 +111,7 @@ can be specially big. The ramp up period has been adjusted according to the numb of issues but the load is still huge. **Do not run the test plan on a live system**. This feature only creates the files to feed JMeter so is not dangerous by -itself, but you should **NEVER** run this test plan in a production site as: - -* It changes the database contents -* Logins lots of users at the same time so there is risk that your server can not handle the load and dies -* It can update the course users passwords +itself, but you should **NEVER** run this test plan in a production site. '; $string['testplansize_0'] = 'XS ({$a->users} users, {$a->loops} loops and {$a->rampup} rampup period)'; diff --git a/admin/tool/generator/lib.php b/admin/tool/generator/lib.php index b9b5efbe818..18e8a0905fe 100644 --- a/admin/tool/generator/lib.php +++ b/admin/tool/generator/lib.php @@ -40,8 +40,8 @@ defined('MOODLE_INTERNAL') || die(); */ function tool_generator_pluginfile($course, $cm, $context, $filearea, $args, $forcedownload, array $options = array()) { - // Only for admins. - if (!is_siteadmin()) { + // Only for admins or CLI. + if (!defined('CLI_SCRIPT') && !is_siteadmin()) { die; } diff --git a/admin/tool/generator/maketestplan.php b/admin/tool/generator/maketestplan.php index 5adef0c7178..fe2965ae225 100644 --- a/admin/tool/generator/maketestplan.php +++ b/admin/tool/generator/maketestplan.php @@ -34,8 +34,7 @@ echo $OUTPUT->heading(get_string('maketestplan', 'tool_generator')); // Information message. $context = context_system::instance(); -$repourl = 'https://github.com/moodlehq/moodle-performance-comparison'; -$markdownlink = '[' . $repourl . '](' . $repourl . ')'; +$markdownlink = '[' . tool_generator_testplan_backend::get_repourl() . '](' . tool_generator_testplan_backend::get_repourl() . ')'; echo $OUTPUT->box(format_text(get_string('testplanexplanation', 'tool_generator', $markdownlink), FORMAT_MARKDOWN, array('context' => $context))); diff --git a/admin/tool/generator/version.php b/admin/tool/generator/version.php index 3733d984b92..fcbb49d4ac9 100644 --- a/admin/tool/generator/version.php +++ b/admin/tool/generator/version.php @@ -24,6 +24,6 @@ defined('MOODLE_INTERNAL') || die(); -$plugin->version = 2013090200; -$plugin->requires = 2013090200; +$plugin->version = 2013090500; +$plugin->requires = 2013090500; $plugin->component = 'tool_generator'; From 4ed604996f3c4086ff9c9501572f164b104ce80c Mon Sep 17 00:00:00 2001 From: Eric Merrill Date: Tue, 17 Sep 2013 15:07:19 -0400 Subject: [PATCH 078/101] MDL-41845 Activity Completion: Make default selection an option. Makes an option to either default to the activity default, or default to COMPLETION_TRACKING_NONE. This leaves open the possibility of allowing activities to pick an actual default, instead of just on/off. --- admin/settings/subsystems.php | 8 ++++++++ course/moodleform_mod.php | 10 +++++++--- lang/en/completion.php | 3 +++ 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/admin/settings/subsystems.php b/admin/settings/subsystems.php index 961ab764602..30299996de6 100644 --- a/admin/settings/subsystems.php +++ b/admin/settings/subsystems.php @@ -35,6 +35,14 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page $optionalsubsystems->add(new admin_setting_configcheckbox('enablecompletion', new lang_string('enablecompletion','completion'), new lang_string('configenablecompletion','completion'), 0)); + + $options = array( + 1 => get_string('completionactivitydefault', 'completion'), + 0 => get_string('completion_none', 'completion') + ); + $optionalsubsystems->add(new admin_setting_configselect('completiondefault', new lang_string('completiondefault', 'completion'), + new lang_string('configcompletiondefault', 'completion'), 1, $options)); + $optionalsubsystems->add($checkbox = new admin_setting_configcheckbox('enableavailability', new lang_string('enableavailability','condition'), new lang_string('configenableavailability','condition'), 0)); diff --git a/course/moodleform_mod.php b/course/moodleform_mod.php index 8a7aa14b6bc..5b489bfe7d4 100644 --- a/course/moodleform_mod.php +++ b/course/moodleform_mod.php @@ -650,12 +650,16 @@ abstract class moodleform_mod extends moodleform { $mform->addElement('hidden', 'completionunlocked', 0); $mform->setType('completionunlocked', PARAM_INT); + $trackingdefault = COMPLETION_TRACKING_NONE; + // If system and activity default is on, set it. + if ($CFG->completiondefault && $this->_features->defaultcompletion) { + $trackingdefault = COMPLETION_TRACKING_MANUAL; + } + $mform->addElement('select', 'completion', get_string('completion', 'completion'), array(COMPLETION_TRACKING_NONE=>get_string('completion_none', 'completion'), COMPLETION_TRACKING_MANUAL=>get_string('completion_manual', 'completion'))); - $mform->setDefault('completion', $this->_features->defaultcompletion - ? COMPLETION_TRACKING_MANUAL - : COMPLETION_TRACKING_NONE); + $mform->setDefault('completion', $trackingdefault); $mform->addHelpButton('completion', 'completion', 'completion'); // Automatic completion once you view it diff --git a/lang/en/completion.php b/lang/en/completion.php index dfb5c06f631..a6b1f3c634a 100644 --- a/lang/en/completion.php +++ b/lang/en/completion.php @@ -65,6 +65,8 @@ A tick next to the activity name on the course page indicates when the activity $string['completion_link'] = 'activity/completion'; $string['completion_manual'] = 'Students can manually mark the activity as completed'; $string['completion_none'] = 'Do not indicate activity completion'; +$string['completionactivitydefault'] = 'Use activity default'; +$string['completiondefault'] = 'Default completion tracking'; $string['completiondisabled'] = 'Disabled, not shown in activity settings'; $string['completionenabled'] = 'Enabled, control via completion and activity settings'; $string['completionexpected'] = 'Expect completed on'; @@ -88,6 +90,7 @@ $string['completionusegrade_desc'] = 'Student must receive a grade to complete t $string['completionusegrade_help'] = 'If enabled, the activity is considered complete when a student receives a grade. Pass and fail icons may be displayed if a pass grade for the activity has been set.'; $string['completionview'] = 'Require view'; $string['completionview_desc'] = 'Student must view this activity to complete it'; +$string['configcompletiondefault'] = 'The default setting for completion tracking when creating new activities.'; $string['configenablecompletion'] = 'When enabled, this lets you turn on completion tracking (progress) features at course level.'; $string['confirmselfcompletion'] = 'Confirm self completion'; $string['courseaggregation'] = 'Condition requires'; From a31e0b40c9d81f3e4d387a8e8bf3306d50a0b94e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Wed, 25 Sep 2013 08:41:33 +0200 Subject: [PATCH 079/101] MDL-41437 fix and cleanup filter uninstall --- admin/filters.php | 35 +++-------------------------------- lang/en/admin.php | 4 ---- lib/adminlib.php | 9 +++++++++ lib/pluginlib.php | 30 ++++++++++++++++++++++++++++-- 4 files changed, 40 insertions(+), 38 deletions(-) diff --git a/admin/filters.php b/admin/filters.php index 334dc719fbf..05c463ab419 100644 --- a/admin/filters.php +++ b/admin/filters.php @@ -95,38 +95,6 @@ filter_set_global_state($filterpath, $filters[$filterpath]->active, -1); } break; - - case 'delete': - // If not yet confirmed, display a confirmation message. - if (!optional_param('confirm', '', PARAM_BOOL)) { - $filtername = filter_get_name($filterpath); - - $title = get_string('deletefilterareyousure', 'admin', $filtername); - echo $OUTPUT->header(); - echo $OUTPUT->heading($title); - - $linkcontinue = new moodle_url($returnurl, array('action' => 'delete', 'filterpath' => $filterpath, 'confirm' => 1)); - $formcancel = new single_button(new moodle_url($returnurl), get_string('no'), 'get'); - echo $OUTPUT->confirm(get_string('deletefilterareyousuremessage', 'admin', $filtername), $linkcontinue, $formcancel); - echo $OUTPUT->footer(); - exit; - } - - // Do the deletion. - $title = get_string('deletingfilter', 'admin', $filterpath); - echo $OUTPUT->header(); - echo $OUTPUT->heading($title); - - // Delete all data for this plugin. - filter_delete_all_for_filter($filterpath); - - $a = new stdClass; - $a->filter = $filterpath; - $a->directory = "$CFG->dirroot/filter/$filterpath"; - echo $OUTPUT->box(get_string('deletefilterfiles', 'admin', $a), 'generalbox', 'notice'); - echo $OUTPUT->continue_button($returnurl); - echo $OUTPUT->footer(); - exit; } // Add any missing filters to the DB table. @@ -211,6 +179,9 @@ /// Display helper functions =================================================== function filters_action_url($filterpath, $action) { + if ($action === 'delete') { + return new moodle_url('/admin/plugins.php', array('sesskey'=>sesskey(), 'uninstall'=>'filter_'.$filterpath)); + } return new moodle_url('/admin/filters.php', array('sesskey'=>sesskey(), 'filterpath'=>$filterpath, 'action'=>$action)); } diff --git a/lang/en/admin.php b/lang/en/admin.php index a947273a5f7..71a73d89c36 100644 --- a/lang/en/admin.php +++ b/lang/en/admin.php @@ -424,13 +424,9 @@ $string['defaulthomepage'] = 'Default home page for users'; $string['defaultrequestcategory'] = 'Default category for course requests'; $string['defaultsettinginfo'] = 'Default: {$a}'; $string['defaultuserroleid'] = 'Default role for all users'; -$string['deletefilterareyousure'] = 'Are you sure you want to delete the filter \'{$a}\''; -$string['deletefilterareyousuremessage'] = 'You are about to completely delete the filter \'{$a}\'. Are you sure you want to uninstall it?'; -$string['deletefilterfiles'] = 'All data associated with the filter \'{$a->filter}\' has been deleted from the database. To complete the deletion (and to prevent the filter from re-installing itself), you should now delete this directory from your server: {$a->directory}'; $string['deleteincompleteusers'] = 'Delete incomplete users after'; $string['deleteunconfirmed'] = 'Delete not fully setup users after'; $string['deleteuser'] = 'Delete user'; -$string['deletingfilter'] = 'Deleting filter \'{$a}\''; $string['density'] = 'Density'; $string['denyemailaddresses'] = 'Denied email domains'; $string['development'] = 'Development'; diff --git a/lib/adminlib.php b/lib/adminlib.php index 37283177686..621083e2548 100644 --- a/lib/adminlib.php +++ b/lib/adminlib.php @@ -124,6 +124,7 @@ define('INSECURE_DATAROOT_ERROR', 2); */ function uninstall_plugin($type, $name) { global $CFG, $DB, $OUTPUT; + require_once($CFG->libdir.'/pluginlib.php'); // This may take a long time. @set_time_limit(0); @@ -282,6 +283,14 @@ function uninstall_plugin($type, $name) { $DB->delete_records('course_format_options', array('format' => $name)); } + // Specific plugin type cleanup. + $plugininfo = plugin_manager::instance()->get_plugin_info($component); + if ($plugininfo) { + $plugininfo->uninstall_cleanup(); + plugin_manager::reset_caches(); + } + $plugininfo = null; + // perform clean-up task common for all the plugin/subplugin types //delete the web service functions and pre-built services diff --git a/lib/pluginlib.php b/lib/pluginlib.php index 8a5ce0fc462..b7c99e502ae 100644 --- a/lib/pluginlib.php +++ b/lib/pluginlib.php @@ -3100,6 +3100,19 @@ abstract class plugininfo_base { return $this->get_default_uninstall_url(); } + /** + * Pre-uninstall hook. + * + * This is intended for disabling of plugin, some DB table purging, etc. + * + * NOTE: to be called from uninstall_plugin() only. + * @private + */ + public function uninstall_cleanup() { + // Override when extending class, + // do not forget to call parent::pre_uninstall_cleanup() at the end. + } + /** * Returns relative directory of the plugin with heading '/' * @@ -3317,8 +3330,21 @@ class plugininfo_filter extends plugininfo_base { return true; } - public function get_uninstall_url() { - return new moodle_url('/admin/filters.php', array('sesskey' => sesskey(), 'filterpath' => $this->name, 'action' => 'delete')); + /** + * Pre-uninstall hook. + * + * This is intended for disabling of plugin, some DB table purging, etc. + * + * NOTE: to be called from uninstall_plugin() only. + * @private + */ + public function uninstall_cleanup() { + global $DB; + + $DB->delete_records('filter_active', array('filter' => $this->name)); + $DB->delete_records('filter_config', array('filter' => $this->name)); + + parent::uninstall_cleanup(); } } From 6427c7d54eeeea83c931daefa49427650f5dabaa Mon Sep 17 00:00:00 2001 From: David Monllao Date: Wed, 25 Sep 2013 15:06:35 +0800 Subject: [PATCH 080/101] MDL-41421 tool_generator: Fixing help text - p.e. replaced by e.g. which sounds more English-friendly - Adding an extra line break as markdown don't like p and li together --- admin/tool/generator/lang/en/tool_generator.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/admin/tool/generator/lang/en/tool_generator.php b/admin/tool/generator/lang/en/tool_generator.php index 9aab6287435..83964c8e344 100644 --- a/admin/tool/generator/lang/en/tool_generator.php +++ b/admin/tool/generator/lang/en/tool_generator.php @@ -97,11 +97,11 @@ $string['testplanexplanation'] = 'This tool creates a JMeter test plan file alon This test plan is designed to work along with {$a}, which makes easier to run the test plan in a specific Moodle environment, gathers information about the runs and compares the results, so you will need to download it and use it\'s test_runner.sh script or follow the installation and usage instructions. -You need to set a password for the course users in config.php (p.e. $CFG->tool_generator_users_password = \'moodle\';) there -is no default value for this password to prevent unintended usages of the tool. You need to use the update passwords option in case your course users have other passwords or they were generated by tool_generator but without setting a $CFG->tool_generator_users_password value. +You need to set a password for the course users in config.php (e.g. $CFG->tool_generator_users_password = \'moodle\';). There is no default value for this password to prevent unintended usages of the tool. You need to use the update passwords option in case your course users have other passwords or they were generated by tool_generator but without setting a $CFG->tool_generator_users_password value. It is part of tool_generator so it works well with the courses generated by the courses and the site generators, it can also be used with any course that contains, at least: + * Enough enrolled users (depends on the test plan size you select) with the password reset to \'moodle\' * A page module instance * A forum module instance with at least one discussion and one reply From 5037785247e712029537a3c646f9f0799c72aa54 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Wed, 25 Sep 2013 09:14:36 +0200 Subject: [PATCH 081/101] MDL-41208 fix more invalid @VERSION@ --- .../3.12.0/get-nodejs/get-nodejs-min.js | 2 +- lib/yuilib/3.12.0/get/get-min.js | 2 +- .../3.12.0/loader-base/loader-base-min.js | 2 +- .../3.12.0/loader-rollup/loader-rollup-min.js | 2 +- .../3.12.0/loader-yui3/loader-yui3-min.js | 2 +- lib/yuilib/3.12.0/loader/loader-min.js | 4 +- lib/yuilib/3.12.0/simpleyui/simpleyui-min.js | 44 +++++++++---------- 7 files changed, 29 insertions(+), 29 deletions(-) diff --git a/lib/yuilib/3.12.0/get-nodejs/get-nodejs-min.js b/lib/yuilib/3.12.0/get-nodejs/get-nodejs-min.js index 9ff980d74ac..fe4d28cd459 100755 --- a/lib/yuilib/3.12.0/get-nodejs/get-nodejs-min.js +++ b/lib/yuilib/3.12.0/get-nodejs/get-nodejs-min.js @@ -5,4 +5,4 @@ Licensed under the BSD License. http://yuilibrary.com/license/ */ -YUI.add("get",function(e,t){var n=require("module"),r=require("path"),i=require("fs"),s=require("request"),o=function(t,n,r){e.Lang.isFunction(t.onEnd)&&t.onEnd.call(e,n,r)},u=function(t){e.Lang.isFunction(t.onSuccess)&&t.onSuccess.call(e,t),o(t,"success","success")},a=function(t,n){n.errors=[n],e.Lang.isFunction(t.onFailure)&&t.onFailure.call(e,n,t),o(t,n,"fail")};e.Get=function(){},e.config.base=r.join(__dirname,"../"),YUI.require=require,YUI.process=process,e.Get._exec=function(e,t,i){e.charCodeAt(0)===65279&&(e=e.slice(1));var s=new n(t,module);s.filename=t,s.paths=n._nodeModulePaths(r.dirname(t)),typeof YUI._getLoadHook=="function"&&(e=YUI._getLoadHook(e,t)),s._compile("module.exports = function (YUI) {"+e+"\n;return YUI;};",t),YUI=s.exports(YUI),s.loaded=!0,i(null,t)},e.Get._include=function(t,r){var o,u,a=this;if(t.match(/^https?:\/\//))o={url:t,timeout:a.timeout},s(o,function(n,i,s){n?r(n,t):e.Get._exec(s,t,r)});else{try{t=n._findPath(t,n._resolveLookupPaths(t,module.parent.parent)[1]);if(!e.config.useSync){i.readFile(t,"utf8",function(n,i){n?r(n,t):e.Get._exec(i,t,r)});return}u=i.readFileSync(t,"utf8")}catch(f){r(f,t);return}e.Get._exec(u,t,r)}},e.Get.js=function(t,n){var r=e.Array(t),i,s,o=r.length,f=0,l=function(){f===o&&u(n)};for(s=0;s=e&&this._purge(this._purgeNodes)},_getEnv:function(){var t=e.config.doc,n=e.UA;return this._env={async:t&&t.createElement("script").async===!0||n.ie>=10,cssFail:n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0,cssLoad:(!n.gecko&&!n.webkit||n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0)&&!(n.chrome&&n.chrome<=18),preservesScriptOrder:!!(n.gecko||n.opera||n.ie&&n.ie>=10)}},_getTransaction:function(t,r){var i=[],o,u,a,f;n.isArray(t)||(t=[t]),r=e.merge(this.options,r),r.attributes=e.merge(this.options.attributes,r.attributes);for(o=0,u=t.length;o-1&&n.splice(i,1))}}},i.script=i.js,i.Transaction=s=function(t,n){var r=this;r.id=s._lastId+=1,r.data=n.data,r.errors=[],r.nodes=[],r.options=n,r.requests=t,r._callbacks=[],r._queue=[],r._reqsWaiting=0,r.tId=r.id,r.win=n.win||e.config.win},s._lastId=0,s.prototype={_state:"new",abort:function(e){this._pending=null,this._pendingCSS=null,this._pollTimer=clearTimeout(this._pollTimer),this._queue=[],this._reqsWaiting=0,this.errors.push({error:e||"Aborted"}),this._finish()},execute:function(e){var t=this,n=t.requests,r=t._state,i,s,o,u;if(r==="done"){e&&e(t.errors.length?t.errors:null,t);return}e&&t._callbacks.push(e);if(r==="executing")return;t._state="executing",t._queue=o=[],t.options.timeout&&(t._timeout=setTimeout(function(){t.abort("Timeout")},t.options.timeout)),t._reqsWaiting=n.length;for(i=0,s=n.length;i=10?(o.onerror=function(){setTimeout(c,0)},o.onload=function(){setTimeout(h,0)}):(o.onerror=c,o.onload=h),!n.cssFail&&!s&&(f=setTimeout(c,t.timeout||3e3))),this.nodes.push(o),r.parentNode.insertBefore(o,r)},_next:function(){if(this._pending)return;this._queue.length?this._insert(this._queue.shift()):this._reqsWaiting||this._finish()},_poll:function(t){var n=this,r=n._pendingCSS,i=e.UA.webkit,s,o,u,a,f,l;if(t){r||(r=n._pendingCSS=[]),r.push(t);if(n._pollTimer)return}n._pollTimer=null;for(s=0;s=0)if(l[u].href===a){r.splice(s,1),s-=1,n._progress(null,f);break} -}else try{o=!!f.node.sheet.cssRules,r.splice(s,1),s-=1,n._progress(null,f)}catch(c){}}r.length&&(n._pollTimer=setTimeout(function(){n._poll.call(n)},n.options.pollInterval))},_progress:function(e,t){var n=this.options;e&&(t.error=e,this.errors.push({error:e,request:t})),t.node._yuiget_finished=t.finished=!0,n.onProgress&&n.onProgress.call(n.context||this,this._getEventData(t)),t.autopurge&&(i._autoPurge(this.options.purgethreshold),i._purgeNodes.push(t.node)),this._pending===t&&(this._pending=null),this._reqsWaiting-=1,this._next()}}},"@VERSION@",{requires:["yui-base"]}); +}else try{o=!!f.node.sheet.cssRules,r.splice(s,1),s-=1,n._progress(null,f)}catch(c){}}r.length&&(n._pollTimer=setTimeout(function(){n._poll.call(n)},n.options.pollInterval))},_progress:function(e,t){var n=this.options;e&&(t.error=e,this.errors.push({error:e,request:t})),t.node._yuiget_finished=t.finished=!0,n.onProgress&&n.onProgress.call(n.context||this,this._getEventData(t)),t.autopurge&&(i._autoPurge(this.options.purgethreshold),i._purgeNodes.push(t.node)),this._pending===t&&(this._pending=null),this._reqsWaiting-=1,this._next()}}},"3.12.0",{requires:["yui-base"]}); diff --git a/lib/yuilib/3.12.0/loader-base/loader-base-min.js b/lib/yuilib/3.12.0/loader-base/loader-base-min.js index 4221efa3d1a..be490e90c44 100755 --- a/lib/yuilib/3.12.0/loader-base/loader-base-min.js +++ b/lib/yuilib/3.12.0/loader-base/loader-base-min.js @@ -8,4 +8,4 @@ http://yuilibrary.com/license/ YUI.add("loader-base",function(e,t){(function(){var t=e.version,n="/build/",r=t+"/",i=e.Env.base,s="gallery-2013.08.22-21-03",o="2in3",u="4",a="2.9.0",f=i+"combo?",l={version:t,root:r,base:e.Env.base,comboBase:f,skin:{defaultSkin:"sam",base:"assets/skins/",path:"skin.css",after:["cssreset","cssfonts","cssgrids","cssbase","cssreset-context","cssfonts-context"]},groups:{},patterns:{}},c=l.groups,h=function(e,t,r){var s=o+"."+(e||u)+"/"+(t||a)+n,l=r&&r.base?r.base:i,h=r&&r.comboBase?r.comboBase:f;c.yui2.base=l+s,c.yui2.root=s,c.yui2.comboBase=h},p=function(e,t){var r=(e||s)+n,o=t&&t.base?t.base:i,u=t&&t.comboBase?t.comboBase:f;c.gallery.base=o+r,c.gallery.root=r,c.gallery.comboBase=u};c[t]={},c.gallery={ext:!1,combine:!0,comboBase:f,update:p,patterns:{"gallery-":{},"lang/gallery-":{},"gallerycss-":{type:"css"}}},c.yui2={combine:!0,ext:!1,comboBase:f,update:h,patterns:{"yui2-":{configFn:function(e){/-skin|reset|fonts|grids|base/.test(e.name)&&(e.type="css",e.path=e.path.replace(/\.js/,".css"),e.path=e.path.replace(/\/yui2-skin/,"/assets/skins/sam/yui2-skin"))}}}},p(),h(),YUI.Env[t]&&e.mix(l,YUI.Env[t],!1,["modules","groups","skin"],0,!0),YUI.Env[t]=l})();var n={},r=[],i=1024,s=YUI.Env,o=s._loaded,u="css",a="js",f="intl",l="sam",c=e.version,h="",p=e.Object,d=p.each,v=e.Array,m=s._loaderQueue,g=s[c],y="skin-",b=e.Lang,w=s.mods,E,S=function(e,t,n,r){var i=e+"/"+t;return r||(i+="-min"),i+="."+(n||u),i};YUI.Env._cssLoaded||(YUI.Env._cssLoaded={}),e.Env.meta=g,e.Loader=function(t){var n=this;t=t||{},E=g.md5,n.context=e,n.base=e.Env.meta.base+e.Env.meta.root,n.comboBase=e.Env.meta.comboBase,n.combine=t.base&&t.base.indexOf(n.comboBase.substr(0,20))>-1,n.comboSep="&",n.maxURLLength=i,n.ignoreRegistered=t.ignoreRegistered,n.root=e.Env.meta.root,n.timeout=0,n.forceMap={},n.allowRollup=!1,n.filters={},n.required={},n.patterns={},n.moduleInfo={},n.groups=e.merge(e.Env.meta.groups),n.skin=e.merge(e.Env.meta.skin),n.conditions={},n.config=t,n._internal=!0,n._populateCache(),n.loaded=o[c],n.async=!0,n._inspectPage(),n._internal=!1,n._config(t),n.forceMap=n.force?e.Array.hash(n.force):{},n.testresults=null,e.config.tests&&(n.testresults=e.config.tests),n.sorted=[],n.dirty=!0,n.inserted={},n.skipped={},n.tested={},n.ignoreRegistered&&n._resetModules()},e.Loader.prototype={_populateCache:function(){var t=this,n=g.modules,r=s._renderedMods,i;if(r&&!t.ignoreRegistered){for(i in r)r.hasOwnProperty(i)&&(t.moduleInfo[i]=e.merge(r[i]));r=s._conditions;for(i in r)r.hasOwnProperty(i)&&(t.conditions[i]=e.merge(r[i]))}else for(i in n)n.hasOwnProperty(i)&&t.addModule(n[i],i)},_resetModules:function(){var e=this,t,n,r,i,s;for(t in e.moduleInfo)if(e.moduleInfo.hasOwnProperty(t)){r=e.moduleInfo[t],i=r.name,s=YUI.Env.mods[i]?YUI.Env.mods[i].details:null,s&&(e.moduleInfo[i]._reset=!0,e.moduleInfo[i].requires=s.requires||[],e.moduleInfo[i].optional=s.optional||[],e.moduleInfo[i].supersedes=s.supercedes||[]);if(r.defaults)for(n in r.defaults)r.defaults.hasOwnProperty(n)&&r[n]&&(r[n]=r.defaults[n]);delete r.langCache,delete r.skinCache,r.skinnable&&e._addSkin(e.skin.defaultSkin,r.name)}},REGEX_CSS:/\.css(?:[?;].*)?$/i,FILTER_DEFS:{RAW:{searchExp:"-min\\.js",replaceStr:".js"},DEBUG:{searchExp:"-min\\.js",replaceStr:"-debug.js"},COVERAGE:{searchExp:"-min\\.js",replaceStr:"-coverage.js"}},_inspectPage:function(){var e=this,t,n,r,i,s;for(s in e.moduleInfo)e.moduleInfo.hasOwnProperty(s)&&(t=e.moduleInfo[s],t.type&&t.type===u&&e.isCSSLoaded(t.name)&&(e.loaded[s]=!0));for(s in w)w.hasOwnProperty(s)&&(t=w[s],t.details&&(n=e.moduleInfo[t.name],r=t.details.requires,i=n&&n.requires,n?!n._inspected&&r&&i.length!==r.length&&delete n.expanded:n=e.addModule(t.details,s),n._inspected=!0))},_requires:function(e,t){var n,r,i,s,o=this.moduleInfo,a=o[e],f=o[t];if(!a||!f)return!1;r=a.expanded_map,i=a.after_map;if(i&&t in i)return!0;i=f.after_map;if(i&&e in i)return!1;s=o[t]&&o[t].supersedes;if(s)for(n=0;n-1&&(k=n);if(C&&(C[c]||k&&C[k])){L=c,C[k]&&(L=k);for(n=0;n-1},getModule:function(t){if(!t)return null;var n,r,i,s=this.moduleInfo[t],o=this.patterns;if(!s||s&&s.ext)for(i in o)if(o.hasOwnProperty(i)){n=o[i],n.test||(n.test=this._patternTest);if(n.test(t,i)){r=n;break}}return s?r&&s&&r.configFn&&!s.configFn&&(s.configFn=r.configFn,s.configFn(s)):r&&(n.action?n.action.call(this,t,i):(s=this.addModule(e.merge(r),t),r.configFn&&(s.configFn=r.configFn),s.temp=!0)),s},_rollup:function(){},_reduce:function(e){e=e||this.required;var t,n,r,i,s=this.loadType,o=this.ignore?v.hash(this.ignore):!1;for(t in e)if(e.hasOwnProperty(t)){i=this.getModule(t),((this.loaded[t]||w[t])&&!this.forceMap[t]&&!this.ignoreRegistered||s&&i&&i.type!==s)&&delete e[t],o&&o[t]&&delete e[t],r=i&&i.supersedes;if(r)for(n=0;n0&&(m.running=!0,m.next()())},insert:function(t,n,r){var i=this,s=e.merge(this);delete s.require,delete s.dirty,m.add(function(){i._insert(s,t,n,r)}),this._continue()},loadNext:function(){return},_filter:function(e,t,n){var r=this.filter,i=t&&t in this.filters,s=i&&this.filters[t],o=n||(this.moduleInfo[t]?this.moduleInfo[t].group:null);return o&&this.groups[o]&&this.groups[o].filter&&(s=this.groups[o].filter,i=!0),e&&(i&&(r=b.isString(s)?this.FILTER_DEFS[s.toUpperCase()]||null:s),r&&(e=e.replace(new RegExp(r.searchExp,"g"),r.replaceStr))),e},_url:function(e,t,n){return this._filter((n||this.base||"")+e,t)},resolve:function(e,t){var r,s,o,f,c,h,p,d,v,m,g,y,w,E,S=[],x,T,N={},C=this,k,A,O=C.ignoreRegistered?{}:C.inserted,M={js:[],jsMods:[],css:[],cssMods:[]},_=C.loadType||"js",D;(C.skin.overrides||C.skin.defaultSkin!==l||C.ignoreRegistered)&&C._resetModules(),e&&C.calculate(),t=t||C.sorted,D=function(e){if(e){c=e.group&&C.groups[e.group]||n,c.async===!1&&(e.async=c.async),f=e.fullpath?C._filter(e.fullpath,t[s]):C._url(e.path,t[s],c.base||e.base);if(e.attributes||e.async===!1)f={url:f,async:e.async},e.attributes&&(f.attributes=e.attributes);M[e.type].push(f),M[e.type+"Mods"].push(e)}},r=t.length,y=C.comboBase,f=y,m={};for(s=0;sA){S=[];for(t=0;tA&&(o=S.pop(),x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)),S=[],o&&S.push(o));S.length&&(x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)))}else M[_].push(C._filter(x,null,N[w].group));M[_+"Mods"]=M[_+"Mods"].concat(g)}}return N=null,M},load:function(e){if(!e)return;var t=this,n=t.resolve(!0);t.data=n,t.onEnd=function(){e.apply(t.context||t,arguments)},t.insert()}}},"@VERSION@",{requires:["get","features"]}); +{o._onProgress.call(o,e)},onTimeout:function(e){o._onTimeout.call(o,e)},onSuccess:function(e){e.type="success",e.fn=o._onSuccess,p.call(o,e)},onFailure:function(e){e.type="failure",e.fn=o._onFailure,p.call(o,e)}})},_continue:function(){!m.running&&m.size()>0&&(m.running=!0,m.next()())},insert:function(t,n,r){var i=this,s=e.merge(this);delete s.require,delete s.dirty,m.add(function(){i._insert(s,t,n,r)}),this._continue()},loadNext:function(){return},_filter:function(e,t,n){var r=this.filter,i=t&&t in this.filters,s=i&&this.filters[t],o=n||(this.moduleInfo[t]?this.moduleInfo[t].group:null);return o&&this.groups[o]&&this.groups[o].filter&&(s=this.groups[o].filter,i=!0),e&&(i&&(r=b.isString(s)?this.FILTER_DEFS[s.toUpperCase()]||null:s),r&&(e=e.replace(new RegExp(r.searchExp,"g"),r.replaceStr))),e},_url:function(e,t,n){return this._filter((n||this.base||"")+e,t)},resolve:function(e,t){var r,s,o,f,c,h,p,d,v,m,g,y,w,E,S=[],x,T,N={},C=this,k,A,O=C.ignoreRegistered?{}:C.inserted,M={js:[],jsMods:[],css:[],cssMods:[]},_=C.loadType||"js",D;(C.skin.overrides||C.skin.defaultSkin!==l||C.ignoreRegistered)&&C._resetModules(),e&&C.calculate(),t=t||C.sorted,D=function(e){if(e){c=e.group&&C.groups[e.group]||n,c.async===!1&&(e.async=c.async),f=e.fullpath?C._filter(e.fullpath,t[s]):C._url(e.path,t[s],c.base||e.base);if(e.attributes||e.async===!1)f={url:f,async:e.async},e.attributes&&(f.attributes=e.attributes);M[e.type].push(f),M[e.type+"Mods"].push(e)}},r=t.length,y=C.comboBase,f=y,m={};for(s=0;sA){S=[];for(t=0;tA&&(o=S.pop(),x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)),S=[],o&&S.push(o));S.length&&(x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)))}else M[_].push(C._filter(x,null,N[w].group));M[_+"Mods"]=M[_+"Mods"].concat(g)}}return N=null,M},load:function(e){if(!e)return;var t=this,n=t.resolve(!0);t.data=n,t.onEnd=function(){e.apply(t.context||t,arguments)},t.insert()}}},"3.12.0",{requires:["get","features"]}); diff --git a/lib/yuilib/3.12.0/loader-rollup/loader-rollup-min.js b/lib/yuilib/3.12.0/loader-rollup/loader-rollup-min.js index b81bdb5d26f..3eed344174b 100755 --- a/lib/yuilib/3.12.0/loader-rollup/loader-rollup-min.js +++ b/lib/yuilib/3.12.0/loader-rollup/loader-rollup-min.js @@ -5,4 +5,4 @@ Licensed under the BSD License. http://yuilibrary.com/license/ */ -YUI.add("loader-rollup",function(e,t){e.Loader.prototype._rollup=function(){var e,t,n,r,i=this.required,s,o=this.moduleInfo,u,a,f;if(this.dirty||!this.rollups){this.rollups={};for(e in o)o.hasOwnProperty(e)&&(n=this.getModule(e),n&&n.rollup&&(this.rollups[e]=n))}for(;;){u=!1;for(e in this.rollups)if(this.rollups.hasOwnProperty(e)&&!i[e]&&(!this.loaded[e]||this.forceMap[e])){n=this.getModule(e),r=n.supersedes||[],s=!1;if(!n.rollup)continue;a=0;for(t=0;t=n.rollup;if(s)break}}s&&(i[e]=!0,u=!0,this.getRequires(n))}if(!u)break}}},"@VERSION@",{requires:["loader-base"]}); +YUI.add("loader-rollup",function(e,t){e.Loader.prototype._rollup=function(){var e,t,n,r,i=this.required,s,o=this.moduleInfo,u,a,f;if(this.dirty||!this.rollups){this.rollups={};for(e in o)o.hasOwnProperty(e)&&(n=this.getModule(e),n&&n.rollup&&(this.rollups[e]=n))}for(;;){u=!1;for(e in this.rollups)if(this.rollups.hasOwnProperty(e)&&!i[e]&&(!this.loaded[e]||this.forceMap[e])){n=this.getModule(e),r=n.supersedes||[],s=!1;if(!n.rollup)continue;a=0;for(t=0;t=n.rollup;if(s)break}}s&&(i[e]=!0,u=!0,this.getRequires(n))}if(!u)break}}},"3.12.0",{requires:["loader-base"]}); diff --git a/lib/yuilib/3.12.0/loader-yui3/loader-yui3-min.js b/lib/yuilib/3.12.0/loader-yui3/loader-yui3-min.js index 2323a452518..feb10ed79fb 100755 --- a/lib/yuilib/3.12.0/loader-yui3/loader-yui3-min.js +++ b/lib/yuilib/3.12.0/loader-yui3/loader-yui3-min.js @@ -10,4 +10,4 @@ YUI.add("loader-yui3",function(e,t){YUI.Env[e.version].modules=YUI.Env[e.version ]},"dom-deprecated":{requires:["dom-base"]},"dom-screen":{requires:["dom-base","dom-style"]},"dom-style":{requires:["dom-base","color-base"]},"dom-style-ie":{condition:{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"},requires:["dom-style"]},dump:{requires:["yui-base"]},editor:{use:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"]},"editor-base":{requires:["base","frame","node","exec-command","editor-selection"]},"editor-bidi":{requires:["editor-base"]},"editor-br":{requires:["editor-base"]},"editor-lists":{requires:["editor-base"]},"editor-para":{requires:["editor-para-base"]},"editor-para-base":{requires:["editor-base"]},"editor-para-ie":{condition:{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"},requires:["editor-para-base"]},"editor-selection":{requires:["node"]},"editor-tab":{requires:["editor-base"]},escape:{requires:["yui-base"]},event:{after:["node-base"],use:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"]},"event-base":{after:["node-base"],requires:["event-custom-base"]},"event-base-ie":{after:["event-base"],condition:{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"},requires:["node-base"]},"event-contextmenu":{requires:["event-synthetic","dom-screen"]},"event-custom":{use:["event-custom-base","event-custom-complex"]},"event-custom-base":{requires:["oop"]},"event-custom-complex":{requires:["event-custom-base"]},"event-delegate":{requires:["node-base"]},"event-flick":{requires:["node-base","event-touch","event-synthetic"]},"event-focus":{requires:["event-synthetic"]},"event-gestures":{use:["event-flick","event-move"]},"event-hover":{requires:["event-mouseenter"]},"event-key":{requires:["event-synthetic"]},"event-mouseenter":{requires:["event-synthetic"]},"event-mousewheel":{requires:["node-base"]},"event-move":{requires:["node-base","event-touch","event-synthetic"]},"event-outside":{requires:["event-synthetic"]},"event-resize":{requires:["node-base","event-synthetic"]},"event-simulate":{requires:["event-base"]},"event-synthetic":{requires:["node-base","event-custom-complex"]},"event-tap":{requires:["node-base","event-base","event-touch","event-synthetic"]},"event-touch":{requires:["node-base"]},"event-valuechange":{requires:["event-focus","event-synthetic"]},"exec-command":{requires:["frame"]},features:{requires:["yui-base"]},file:{requires:["file-flash","file-html5"]},"file-flash":{requires:["base"]},"file-html5":{requires:["base"]},frame:{requires:["base","node","selector-css3","yui-throttle"]},"gesture-simulate":{requires:["async-queue","event-simulate","node-screen"]},get:{requires:["yui-base"]},graphics:{requires:["node","event-custom","pluginhost","matrix","classnamemanager"]},"graphics-canvas":{condition:{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"},requires:["graphics"]},"graphics-canvas-default":{condition:{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}},"graphics-group":{requires:["graphics"]},"graphics-svg":{condition:{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"},requires:["graphics"]},"graphics-svg-default":{condition:{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}},"graphics-vml":{condition:{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"},requires:["graphics"]},"graphics-vml-default":{condition:{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}},handlebars:{use:["handlebars-compiler"]},"handlebars-base":{requires:[]},"handlebars-compiler":{requires:["handlebars-base"]},highlight:{use:["highlight-base","highlight-accentfold"]},"highlight-accentfold":{requires:["highlight-base","text-accentfold"]},"highlight-base":{requires:["array-extras","classnamemanager","escape","text-wordbreak"]},history:{use:["history-base","history-hash","history-hash-ie","history-html5"]},"history-base":{requires:["event-custom-complex"]},"history-hash":{after:["history-html5"],requires:["event-synthetic","history-base","yui-later"]},"history-hash-ie":{condition :{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"},requires:["history-hash","node-base"]},"history-html5":{optional:["json"],requires:["event-base","history-base","node-base"]},imageloader:{requires:["base-base","node-style","node-screen"]},intl:{requires:["intl-base","event-custom"]},"intl-base":{requires:["yui-base"]},io:{use:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"]},"io-base":{requires:["event-custom-base","querystring-stringify-simple"]},"io-form":{requires:["io-base","node-base"]},"io-nodejs":{condition:{name:"io-nodejs",trigger:"io-base",ua:"nodejs"},requires:["io-base"]},"io-queue":{requires:["io-base","queue-promote"]},"io-upload-iframe":{requires:["io-base","node-base"]},"io-xdr":{requires:["io-base","datatype-xml-parse"]},json:{use:["json-parse","json-stringify"]},"json-parse":{requires:["yui-base"]},"json-parse-shim":{condition:{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"},requires:["json-parse"]},"json-stringify":{requires:["yui-base"]},"json-stringify-shim":{condition:{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"},requires:["json-stringify"]},jsonp:{requires:["get","oop"]},"jsonp-url":{requires:["jsonp"]},"lazy-model-list":{requires:["model-list"]},loader:{use:["loader-base","loader-rollup","loader-yui3"]},"loader-base":{requires:["get","features"]},"loader-rollup":{requires:["loader-base"]},"loader-yui3":{requires:["loader-base"]},matrix:{requires:["yui-base"]},model:{requires:["base-build","escape","json-parse"]},"model-list":{requires:["array-extras","array-invoke","arraylist","base-build","escape","json-parse","model"]},"model-sync-rest":{requires:["model","io-base","json-stringify"]},node:{use:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"]},"node-base":{requires:["event-base","node-core","dom-base","dom-style"]},"node-core":{requires:["dom-core","selector"]},"node-deprecated":{requires:["node-base"]},"node-event-delegate":{requires:["node-base","event-delegate"]},"node-event-html5":{requires:["node-base"]},"node-event-simulate":{requires:["node-base","event-simulate","gesture-simulate"]},"node-flick":{requires:["classnamemanager","transition","event-flick","plugin"],skinnable:!0},"node-focusmanager":{requires:["attribute","node","plugin","node-event-simulate","event-key","event-focus"]},"node-load":{requires:["node-base","io-base"]},"node-menunav":{requires:["node","classnamemanager","plugin","node-focusmanager"],skinnable:!0},"node-pluginhost":{requires:["node-base","pluginhost"]},"node-screen":{requires:["dom-screen","node-base"]},"node-scroll-info":{requires:["array-extras","base-build","event-resize","node-pluginhost","plugin","selector"]},"node-style":{requires:["dom-style","node-base"]},oop:{requires:["yui-base"]},overlay:{requires:["widget","widget-stdmod","widget-position","widget-position-align","widget-stack","widget-position-constrain"],skinnable:!0},paginator:{requires:["paginator-core"]},"paginator-core":{requires:["base"]},"paginator-url":{requires:["paginator"]},panel:{requires:["widget","widget-autohide","widget-buttons","widget-modality","widget-position","widget-position-align","widget-position-constrain","widget-stack","widget-stdmod"],skinnable:!0},parallel:{requires:["yui-base"]},pjax:{requires:["pjax-base","pjax-content"]},"pjax-base":{requires:["classnamemanager","node-event-delegate","router"]},"pjax-content":{requires:["io-base","node-base","router"]},"pjax-plugin":{requires:["node-pluginhost","pjax","plugin"]},plugin:{requires:["base-base"]},pluginhost:{use:["pluginhost-base","pluginhost-config"]},"pluginhost-base":{requires:["yui-base"]},"pluginhost-config":{requires:["pluginhost-base"]},promise:{requires:["timers"]},querystring:{use:["querystring-parse","querystring-stringify"]},"querystring-parse":{requires:["yui-base","array-extras"]},"querystring-parse-simple":{requires:["yui-base"]},"querystring-stringify":{requires:["yui-base"]},"querystring-stringify-simple":{requires:["yui-base"]},"queue-promote":{requires:["yui-base"]},"range-slider":{requires:["slider-base","slider-value-range","clickable-rail"]},recordset:{use:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"]},"recordset-base":{requires:["base","arraylist"]},"recordset-filter":{requires:["recordset-base","array-extras","plugin"]},"recordset-indexer":{requires:["recordset-base","plugin"]},"recordset-sort":{requires:["arraysort","recordset-base","plugin"]},resize:{use:["resize-base","resize-proxy","resize-constrain"]},"resize-base":{requires:["base","widget","event","oop","dd-drag","dd-delegate","dd-drop"],skinnable:!0},"resize-constrain":{requires:["plugin","resize-base"]},"resize-plugin":{optional:["resize-constrain"],requires:["resize-base","plugin"]},"resize-proxy":{requires:["plugin","resize-base"]},router:{optional:["querystring-parse"],requires:["array-extras","base-build","history"]},scrollview:{requires:["scrollview-base","scrollview-scrollbars"]},"scrollview-base":{requires:["widget","event-gestures","event-mousewheel","transition"],skinnable:!0},"scrollview-base-ie":{condition:{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"},requires:["scrollview-base"]},"scrollview-list":{requires:["plugin","classnamemanager"],skinnable:!0},"scrollview-paginator":{requires:["plugin","classnamemanager"]},"scrollview-scrollbars":{requires:["classnamemanager","transition","plugin"],skinnable:!0},selector:{requires:["selector-native"]},"selector-css2" :{condition:{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"},requires:["selector-native"]},"selector-css3":{requires:["selector-native","selector-css2"]},"selector-native":{requires:["dom-base"]},"series-area":{requires:["series-cartesian","series-fill-util"]},"series-area-stacked":{requires:["series-stacked","series-area"]},"series-areaspline":{requires:["series-area","series-curve-util"]},"series-areaspline-stacked":{requires:["series-stacked","series-areaspline"]},"series-bar":{requires:["series-marker","series-histogram-base"]},"series-bar-stacked":{requires:["series-stacked","series-bar"]},"series-base":{requires:["graphics","axis-base"]},"series-candlestick":{requires:["series-range"]},"series-cartesian":{requires:["series-base"]},"series-column":{requires:["series-marker","series-histogram-base"]},"series-column-stacked":{requires:["series-stacked","series-column"]},"series-combo":{requires:["series-cartesian","series-line-util","series-plot-util","series-fill-util"]},"series-combo-stacked":{requires:["series-stacked","series-combo"]},"series-combospline":{requires:["series-combo","series-curve-util"]},"series-combospline-stacked":{requires:["series-combo-stacked","series-curve-util"]},"series-curve-util":{},"series-fill-util":{},"series-histogram-base":{requires:["series-cartesian","series-plot-util"]},"series-line":{requires:["series-cartesian","series-line-util"]},"series-line-stacked":{requires:["series-stacked","series-line"]},"series-line-util":{},"series-marker":{requires:["series-cartesian","series-plot-util"]},"series-marker-stacked":{requires:["series-stacked","series-marker"]},"series-ohlc":{requires:["series-range"]},"series-pie":{requires:["series-base","series-plot-util"]},"series-plot-util":{},"series-range":{requires:["series-cartesian"]},"series-spline":{requires:["series-line","series-curve-util"]},"series-spline-stacked":{requires:["series-stacked","series-spline"]},"series-stacked":{requires:["axis-stacked"]},"shim-plugin":{requires:["node-style","node-pluginhost"]},slider:{use:["slider-base","slider-value-range","clickable-rail","range-slider"]},"slider-base":{requires:["widget","dd-constrain","event-key"],skinnable:!0},"slider-value-range":{requires:["slider-base"]},sortable:{requires:["dd-delegate","dd-drop-plugin","dd-proxy"]},"sortable-scroll":{requires:["dd-scroll","sortable"]},stylesheet:{requires:["yui-base"]},substitute:{optional:["dump"],requires:["yui-base"]},swf:{requires:["event-custom","node","swfdetect","escape"]},swfdetect:{requires:["yui-base"]},tabview:{requires:["widget","widget-parent","widget-child","tabview-base","node-pluginhost","node-focusmanager"],skinnable:!0},"tabview-base":{requires:["node-event-delegate","classnamemanager"]},"tabview-plugin":{requires:["tabview-base"]},template:{use:["template-base","template-micro"]},"template-base":{requires:["yui-base"]},"template-micro":{requires:["escape"]},test:{requires:["event-simulate","event-custom","json-stringify"]},"test-console":{requires:["console-filters","test","array-extras"],skinnable:!0},text:{use:["text-accentfold","text-wordbreak"]},"text-accentfold":{requires:["array-extras","text-data-accentfold"]},"text-data-accentfold":{requires:["yui-base"]},"text-data-wordbreak":{requires:["yui-base"]},"text-wordbreak":{requires:["array-extras","text-data-wordbreak"]},timers:{requires:["yui-base"]},transition:{requires:["node-style"]},"transition-timer":{condition:{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"},requires:["transition"]},tree:{requires:["base-build","tree-node"]},"tree-labelable":{requires:["tree"]},"tree-lazy":{requires:["base-pluginhost","plugin","tree"]},"tree-node":{},"tree-openable":{requires:["tree"]},"tree-selectable":{requires:["tree"]},"tree-sortable":{requires:["tree"]},uploader:{requires:["uploader-html5","uploader-flash"]},"uploader-flash":{requires:["swf","widget","base","cssbutton","node","event-custom","file-flash","uploader-queue"]},"uploader-html5":{requires:["widget","node-event-simulate","file-html5","uploader-queue"]},"uploader-queue":{requires:["base"]},view:{requires:["base-build","node-event-delegate"]},"view-node-map":{requires:["view"]},widget:{use:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]},"widget-anim":{requires:["anim-base","plugin","widget"]},"widget-autohide":{requires:["base-build","event-key","event-outside","widget"]},"widget-base":{requires:["attribute","base-base","base-pluginhost","classnamemanager","event-focus","node-base","node-style"],skinnable:!0},"widget-base-ie":{condition:{name:"widget-base-ie",trigger:"widget-base",ua:"ie"},requires:["widget-base"]},"widget-buttons":{requires:["button-plugin","cssbutton","widget-stdmod"]},"widget-child":{requires:["base-build","widget"]},"widget-htmlparser":{requires:["widget-base"]},"widget-locale":{requires:["widget-base"]},"widget-modality":{requires:["base-build","event-outside","widget"],skinnable:!0},"widget-parent":{requires:["arraylist","base-build","widget"]},"widget-position":{requires:["base-build","node-screen","widget"]},"widget-position-align":{requires:["widget-position"]},"widget-position-constrain":{requires:["widget-position"]},"widget-skin":{requires:["widget-base"]},"widget-stack":{requires:["base-build","widget"],skinnable:!0},"widget-stdmod":{requires:["base-build","widget"]},"widget-uievents":{requires:["node-event-delegate","widget-base"]},yql:{requires:["oop"]},"yql-jsonp":{condition:{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"},requires:["jsonp","jsonp-url"]},"yql-nodejs":{condition:{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}},"yql-winjs":{condition:{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"}},yui:{},"yui-base":{},"yui-later":{ -requires:["yui-base"]},"yui-log":{requires:["yui-base"]},"yui-throttle":{requires:["yui-base"]}}),YUI.Env[e.version].md5="fd7c67956df50e445f40d1668dd1dc80"},"@VERSION@",{requires:["loader-base"]}); +requires:["yui-base"]},"yui-log":{requires:["yui-base"]},"yui-throttle":{requires:["yui-base"]}}),YUI.Env[e.version].md5="fd7c67956df50e445f40d1668dd1dc80"},"3.12.0",{requires:["loader-base"]}); diff --git a/lib/yuilib/3.12.0/loader/loader-min.js b/lib/yuilib/3.12.0/loader/loader-min.js index 5ebc2b49e23..b17f2dc423a 100755 --- a/lib/yuilib/3.12.0/loader/loader-min.js +++ b/lib/yuilib/3.12.0/loader/loader-min.js @@ -8,9 +8,9 @@ http://yuilibrary.com/license/ YUI.add("loader-base",function(e,t){(function(){var t=e.version,n="/build/",r=t+"/",i=e.Env.base,s="gallery-2013.08.22-21-03",o="2in3",u="4",a="2.9.0",f=i+"combo?",l={version:t,root:r,base:e.Env.base,comboBase:f,skin:{defaultSkin:"sam",base:"assets/skins/",path:"skin.css",after:["cssreset","cssfonts","cssgrids","cssbase","cssreset-context","cssfonts-context"]},groups:{},patterns:{}},c=l.groups,h=function(e,t,r){var s=o+"."+(e||u)+"/"+(t||a)+n,l=r&&r.base?r.base:i,h=r&&r.comboBase?r.comboBase:f;c.yui2.base=l+s,c.yui2.root=s,c.yui2.comboBase=h},p=function(e,t){var r=(e||s)+n,o=t&&t.base?t.base:i,u=t&&t.comboBase?t.comboBase:f;c.gallery.base=o+r,c.gallery.root=r,c.gallery.comboBase=u};c[t]={},c.gallery={ext:!1,combine:!0,comboBase:f,update:p,patterns:{"gallery-":{},"lang/gallery-":{},"gallerycss-":{type:"css"}}},c.yui2={combine:!0,ext:!1,comboBase:f,update:h,patterns:{"yui2-":{configFn:function(e){/-skin|reset|fonts|grids|base/.test(e.name)&&(e.type="css",e.path=e.path.replace(/\.js/,".css"),e.path=e.path.replace(/\/yui2-skin/,"/assets/skins/sam/yui2-skin"))}}}},p(),h(),YUI.Env[t]&&e.mix(l,YUI.Env[t],!1,["modules","groups","skin"],0,!0),YUI.Env[t]=l})();var n={},r=[],i=1024,s=YUI.Env,o=s._loaded,u="css",a="js",f="intl",l="sam",c=e.version,h="",p=e.Object,d=p.each,v=e.Array,m=s._loaderQueue,g=s[c],y="skin-",b=e.Lang,w=s.mods,E,S=function(e,t,n,r){var i=e+"/"+t;return r||(i+="-min"),i+="."+(n||u),i};YUI.Env._cssLoaded||(YUI.Env._cssLoaded={}),e.Env.meta=g,e.Loader=function(t){var n=this;t=t||{},E=g.md5,n.context=e,n.base=e.Env.meta.base+e.Env.meta.root,n.comboBase=e.Env.meta.comboBase,n.combine=t.base&&t.base.indexOf(n.comboBase.substr(0,20))>-1,n.comboSep="&",n.maxURLLength=i,n.ignoreRegistered=t.ignoreRegistered,n.root=e.Env.meta.root,n.timeout=0,n.forceMap={},n.allowRollup=!1,n.filters={},n.required={},n.patterns={},n.moduleInfo={},n.groups=e.merge(e.Env.meta.groups),n.skin=e.merge(e.Env.meta.skin),n.conditions={},n.config=t,n._internal=!0,n._populateCache(),n.loaded=o[c],n.async=!0,n._inspectPage(),n._internal=!1,n._config(t),n.forceMap=n.force?e.Array.hash(n.force):{},n.testresults=null,e.config.tests&&(n.testresults=e.config.tests),n.sorted=[],n.dirty=!0,n.inserted={},n.skipped={},n.tested={},n.ignoreRegistered&&n._resetModules()},e.Loader.prototype={_populateCache:function(){var t=this,n=g.modules,r=s._renderedMods,i;if(r&&!t.ignoreRegistered){for(i in r)r.hasOwnProperty(i)&&(t.moduleInfo[i]=e.merge(r[i]));r=s._conditions;for(i in r)r.hasOwnProperty(i)&&(t.conditions[i]=e.merge(r[i]))}else for(i in n)n.hasOwnProperty(i)&&t.addModule(n[i],i)},_resetModules:function(){var e=this,t,n,r,i,s;for(t in e.moduleInfo)if(e.moduleInfo.hasOwnProperty(t)){r=e.moduleInfo[t],i=r.name,s=YUI.Env.mods[i]?YUI.Env.mods[i].details:null,s&&(e.moduleInfo[i]._reset=!0,e.moduleInfo[i].requires=s.requires||[],e.moduleInfo[i].optional=s.optional||[],e.moduleInfo[i].supersedes=s.supercedes||[]);if(r.defaults)for(n in r.defaults)r.defaults.hasOwnProperty(n)&&r[n]&&(r[n]=r.defaults[n]);delete r.langCache,delete r.skinCache,r.skinnable&&e._addSkin(e.skin.defaultSkin,r.name)}},REGEX_CSS:/\.css(?:[?;].*)?$/i,FILTER_DEFS:{RAW:{searchExp:"-min\\.js",replaceStr:".js"},DEBUG:{searchExp:"-min\\.js",replaceStr:"-debug.js"},COVERAGE:{searchExp:"-min\\.js",replaceStr:"-coverage.js"}},_inspectPage:function(){var e=this,t,n,r,i,s;for(s in e.moduleInfo)e.moduleInfo.hasOwnProperty(s)&&(t=e.moduleInfo[s],t.type&&t.type===u&&e.isCSSLoaded(t.name)&&(e.loaded[s]=!0));for(s in w)w.hasOwnProperty(s)&&(t=w[s],t.details&&(n=e.moduleInfo[t.name],r=t.details.requires,i=n&&n.requires,n?!n._inspected&&r&&i.length!==r.length&&delete n.expanded:n=e.addModule(t.details,s),n._inspected=!0))},_requires:function(e,t){var n,r,i,s,o=this.moduleInfo,a=o[e],f=o[t];if(!a||!f)return!1;r=a.expanded_map,i=a.after_map;if(i&&t in i)return!0;i=f.after_map;if(i&&e in i)return!1;s=o[t]&&o[t].supersedes;if(s)for(n=0;n-1&&(k=n);if(C&&(C[c]||k&&C[k])){L=c,C[k]&&(L=k);for(n=0;n-1},getModule:function(t){if(!t)return null;var n,r,i,s=this.moduleInfo[t],o=this.patterns;if(!s||s&&s.ext)for(i in o)if(o.hasOwnProperty(i)){n=o[i],n.test||(n.test=this._patternTest);if(n.test(t,i)){r=n;break}}return s?r&&s&&r.configFn&&!s.configFn&&(s.configFn=r.configFn,s.configFn(s)):r&&(n.action?n.action.call(this,t,i):(s=this.addModule(e.merge(r),t),r.configFn&&(s.configFn=r.configFn),s.temp=!0)),s},_rollup:function(){},_reduce:function(e){e=e||this.required;var t,n,r,i,s=this.loadType,o=this.ignore?v.hash(this.ignore):!1;for(t in e)if(e.hasOwnProperty(t)){i=this.getModule(t),((this.loaded[t]||w[t])&&!this.forceMap[t]&&!this.ignoreRegistered||s&&i&&i.type!==s)&&delete e[t],o&&o[t]&&delete e[t],r=i&&i.supersedes;if(r)for(n=0;n0&&(m.running=!0,m.next()())},insert:function(t,n,r){var i=this,s=e.merge(this);delete s.require,delete s.dirty,m.add(function(){i._insert(s,t,n,r)}),this._continue()},loadNext:function(){return},_filter:function(e,t,n){var r=this.filter,i=t&&t in this.filters,s=i&&this.filters[t],o=n||(this.moduleInfo[t]?this.moduleInfo[t].group:null);return o&&this.groups[o]&&this.groups[o].filter&&(s=this.groups[o].filter,i=!0),e&&(i&&(r=b.isString(s)?this.FILTER_DEFS[s.toUpperCase()]||null:s),r&&(e=e.replace(new RegExp(r.searchExp,"g"),r.replaceStr))),e},_url:function(e,t,n){return this._filter((n||this.base||"")+e,t)},resolve:function(e,t){var r,s,o,f,c,h,p,d,v,m,g,y,w,E,S=[],x,T,N={},C=this,k,A,O=C.ignoreRegistered?{}:C.inserted,M={js:[],jsMods:[],css:[],cssMods:[]},_=C.loadType||"js",D;(C.skin.overrides||C.skin.defaultSkin!==l||C.ignoreRegistered)&&C._resetModules(),e&&C.calculate(),t=t||C.sorted,D=function(e){if(e){c=e.group&&C.groups[e.group]||n,c.async===!1&&(e.async=c.async),f=e.fullpath?C._filter(e.fullpath,t[s]):C._url(e.path,t[s],c.base||e.base);if(e.attributes||e.async===!1)f={url:f,async:e.async},e.attributes&&(f.attributes=e.attributes);M[e.type].push(f),M[e.type+"Mods"].push(e)}},r=t.length,y=C.comboBase,f=y,m={};for(s=0;sA){S=[];for(t=0;tA&&(o=S.pop(),x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)),S=[],o&&S.push(o));S.length&&(x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)))}else M[_].push(C._filter(x,null,N[w].group));M[_+"Mods"]=M[_+"Mods"].concat(g)}}return N=null,M},load:function(e){if(!e)return;var t=this,n=t.resolve(!0);t.data=n,t.onEnd=function(){e.apply(t.context||t,arguments)},t.insert()}}},"@VERSION@",{requires:["get","features"]}),YUI.add("loader-rollup",function(e,t){e.Loader.prototype._rollup=function(){var e,t,n,r,i=this.required,s,o=this.moduleInfo,u,a,f;if(this.dirty||!this.rollups){this.rollups={};for(e in o)o.hasOwnProperty(e)&&(n=this.getModule(e),n&&n.rollup&&(this.rollups[e]=n))}for(;;){u=!1;for(e in this.rollups)if(this.rollups.hasOwnProperty(e)&&!i[e]&&(!this.loaded[e]||this.forceMap[e])){n=this.getModule(e),r=n.supersedes||[],s=!1;if(!n.rollup)continue;a=0;for(t=0;t=n.rollup;if(s)break}}s&&(i[e]=!0,u=!0,this.getRequires(n))}if(!u)break}}},"@VERSION@",{requires:["loader-base"]}),YUI.add("loader-yui3",function(e,t){YUI.Env[e.version].modules=YUI.Env[e.version].modules||{},e.mix(YUI.Env[e.version].modules,{"align-plugin":{requires:["node-screen","node-pluginhost"]},anim:{use:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"]},"anim-base":{requires:["base-base","node-style"]},"anim-color":{requires:["anim-base"]},"anim-curve":{requires:["anim-xy"]},"anim-easing":{requires:["anim-base"]},"anim-node-plugin":{requires:["node-pluginhost","anim-base"]},"anim-scroll":{requires:["anim-base"]},"anim-shape":{requires:["anim-base","anim-easing","anim-color","matrix"]},"anim-shape-transform":{use:["anim-shape"]},"anim-xy":{requires:["anim-base","node-screen"]},app:{use:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"]},"app-base":{requires:["classnamemanager","pjax-base","router","view"]},"app-content":{requires:["app-base","pjax-content"]},"app-transitions":{requires:["app-base"]},"app-transitions-css":{type:"css"},"app-transitions-native":{condition:{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"},requires:["app-transitions","app-transitions-css","parallel","transition"]},"array-extras":{requires:["yui-base"]},"array-invoke":{requires:["yui-base"]},arraylist:{requires:["yui-base"]},"arraylist-add":{requires:["arraylist"]},"arraylist-filter":{requires:["arraylist"]},arraysort:{requires:["yui-base"]},"async-queue":{requires:["event-custom"]},attribute:{use:["attribute-base","attribute-complex"]},"attribute-base":{requires:["attribute-core","attribute-observable","attribute-extras"]},"attribute-complex":{requires:["attribute-base"]},"attribute-core":{requires:["oop"]},"attribute-events":{use:["attribute-observable"]},"attribute-extras":{requires:["oop"]},"attribute-observable":{requires:["event-custom"]},autocomplete:{use:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"]},"autocomplete-base":{optional:["autocomplete-sources"],requires:["array-extras","base-build","escape","event-valuechange","node-base"]},"autocomplete-filters":{requires:["array-extras","text-wordbreak"]},"autocomplete-filters-accentfold" +{o._onProgress.call(o,e)},onTimeout:function(e){o._onTimeout.call(o,e)},onSuccess:function(e){e.type="success",e.fn=o._onSuccess,p.call(o,e)},onFailure:function(e){e.type="failure",e.fn=o._onFailure,p.call(o,e)}})},_continue:function(){!m.running&&m.size()>0&&(m.running=!0,m.next()())},insert:function(t,n,r){var i=this,s=e.merge(this);delete s.require,delete s.dirty,m.add(function(){i._insert(s,t,n,r)}),this._continue()},loadNext:function(){return},_filter:function(e,t,n){var r=this.filter,i=t&&t in this.filters,s=i&&this.filters[t],o=n||(this.moduleInfo[t]?this.moduleInfo[t].group:null);return o&&this.groups[o]&&this.groups[o].filter&&(s=this.groups[o].filter,i=!0),e&&(i&&(r=b.isString(s)?this.FILTER_DEFS[s.toUpperCase()]||null:s),r&&(e=e.replace(new RegExp(r.searchExp,"g"),r.replaceStr))),e},_url:function(e,t,n){return this._filter((n||this.base||"")+e,t)},resolve:function(e,t){var r,s,o,f,c,h,p,d,v,m,g,y,w,E,S=[],x,T,N={},C=this,k,A,O=C.ignoreRegistered?{}:C.inserted,M={js:[],jsMods:[],css:[],cssMods:[]},_=C.loadType||"js",D;(C.skin.overrides||C.skin.defaultSkin!==l||C.ignoreRegistered)&&C._resetModules(),e&&C.calculate(),t=t||C.sorted,D=function(e){if(e){c=e.group&&C.groups[e.group]||n,c.async===!1&&(e.async=c.async),f=e.fullpath?C._filter(e.fullpath,t[s]):C._url(e.path,t[s],c.base||e.base);if(e.attributes||e.async===!1)f={url:f,async:e.async},e.attributes&&(f.attributes=e.attributes);M[e.type].push(f),M[e.type+"Mods"].push(e)}},r=t.length,y=C.comboBase,f=y,m={};for(s=0;sA){S=[];for(t=0;tA&&(o=S.pop(),x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)),S=[],o&&S.push(o));S.length&&(x=w+S.join(k),M[_].push(C._filter(x,null,N[w].group)))}else M[_].push(C._filter(x,null,N[w].group));M[_+"Mods"]=M[_+"Mods"].concat(g)}}return N=null,M},load:function(e){if(!e)return;var t=this,n=t.resolve(!0);t.data=n,t.onEnd=function(){e.apply(t.context||t,arguments)},t.insert()}}},"3.12.0",{requires:["get","features"]}),YUI.add("loader-rollup",function(e,t){e.Loader.prototype._rollup=function(){var e,t,n,r,i=this.required,s,o=this.moduleInfo,u,a,f;if(this.dirty||!this.rollups){this.rollups={};for(e in o)o.hasOwnProperty(e)&&(n=this.getModule(e),n&&n.rollup&&(this.rollups[e]=n))}for(;;){u=!1;for(e in this.rollups)if(this.rollups.hasOwnProperty(e)&&!i[e]&&(!this.loaded[e]||this.forceMap[e])){n=this.getModule(e),r=n.supersedes||[],s=!1;if(!n.rollup)continue;a=0;for(t=0;t=n.rollup;if(s)break}}s&&(i[e]=!0,u=!0,this.getRequires(n))}if(!u)break}}},"3.12.0",{requires:["loader-base"]}),YUI.add("loader-yui3",function(e,t){YUI.Env[e.version].modules=YUI.Env[e.version].modules||{},e.mix(YUI.Env[e.version].modules,{"align-plugin":{requires:["node-screen","node-pluginhost"]},anim:{use:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"]},"anim-base":{requires:["base-base","node-style"]},"anim-color":{requires:["anim-base"]},"anim-curve":{requires:["anim-xy"]},"anim-easing":{requires:["anim-base"]},"anim-node-plugin":{requires:["node-pluginhost","anim-base"]},"anim-scroll":{requires:["anim-base"]},"anim-shape":{requires:["anim-base","anim-easing","anim-color","matrix"]},"anim-shape-transform":{use:["anim-shape"]},"anim-xy":{requires:["anim-base","node-screen"]},app:{use:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"]},"app-base":{requires:["classnamemanager","pjax-base","router","view"]},"app-content":{requires:["app-base","pjax-content"]},"app-transitions":{requires:["app-base"]},"app-transitions-css":{type:"css"},"app-transitions-native":{condition:{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"},requires:["app-transitions","app-transitions-css","parallel","transition"]},"array-extras":{requires:["yui-base"]},"array-invoke":{requires:["yui-base"]},arraylist:{requires:["yui-base"]},"arraylist-add":{requires:["arraylist"]},"arraylist-filter":{requires:["arraylist"]},arraysort:{requires:["yui-base"]},"async-queue":{requires:["event-custom"]},attribute:{use:["attribute-base","attribute-complex"]},"attribute-base":{requires:["attribute-core","attribute-observable","attribute-extras"]},"attribute-complex":{requires:["attribute-base"]},"attribute-core":{requires:["oop"]},"attribute-events":{use:["attribute-observable"]},"attribute-extras":{requires:["oop"]},"attribute-observable":{requires:["event-custom"]},autocomplete:{use:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"]},"autocomplete-base":{optional:["autocomplete-sources"],requires:["array-extras","base-build","escape","event-valuechange","node-base"]},"autocomplete-filters":{requires:["array-extras","text-wordbreak"]},"autocomplete-filters-accentfold" :{requires:["array-extras","text-accentfold","text-wordbreak"]},"autocomplete-highlighters":{requires:["array-extras","highlight-base"]},"autocomplete-highlighters-accentfold":{requires:["array-extras","highlight-accentfold"]},"autocomplete-list":{after:["autocomplete-sources"],lang:["en","es","hu","it"],requires:["autocomplete-base","event-resize","node-screen","selector-css3","shim-plugin","widget","widget-position","widget-position-align"],skinnable:!0},"autocomplete-list-keys":{condition:{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"},requires:["autocomplete-list","base-build"]},"autocomplete-plugin":{requires:["autocomplete-list","node-pluginhost"]},"autocomplete-sources":{optional:["io-base","json-parse","jsonp","yql"],requires:["autocomplete-base"]},axes:{use:["axis-numeric","axis-category","axis-time","axis-stacked"]},"axes-base":{use:["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"]},axis:{requires:["dom","widget","widget-position","widget-stack","graphics","axis-base"]},"axis-base":{requires:["classnamemanager","datatype-number","datatype-date","base","event-custom"]},"axis-category":{requires:["axis","axis-category-base"]},"axis-category-base":{requires:["axis-base"]},"axis-numeric":{requires:["axis","axis-numeric-base"]},"axis-numeric-base":{requires:["axis-base"]},"axis-stacked":{requires:["axis-numeric","axis-stacked-base"]},"axis-stacked-base":{requires:["axis-numeric-base"]},"axis-time":{requires:["axis","axis-time-base"]},"axis-time-base":{requires:["axis-base"]},base:{use:["base-base","base-pluginhost","base-build"]},"base-base":{requires:["attribute-base","base-core","base-observable"]},"base-build":{requires:["base-base"]},"base-core":{requires:["attribute-core"]},"base-observable":{requires:["attribute-observable"]},"base-pluginhost":{requires:["base-base","pluginhost"]},button:{requires:["button-core","cssbutton","widget"]},"button-core":{requires:["attribute-core","classnamemanager","node-base"]},"button-group":{requires:["button-plugin","cssbutton","widget"]},"button-plugin":{requires:["button-core","cssbutton","node-pluginhost"]},cache:{use:["cache-base","cache-offline","cache-plugin"]},"cache-base":{requires:["base"]},"cache-offline":{requires:["cache-base","json"]},"cache-plugin":{requires:["plugin","cache-base"]},calendar:{requires:["calendar-base","calendarnavigator"],skinnable:!0},"calendar-base":{lang:["de","en","es","es-AR","fr","hu","it","ja","nb-NO","nl","pt-BR","ru","zh-Hans","zh-Hans-CN","zh-Hant","zh-Hant-HK","zh-HANT-TW"],requires:["widget","datatype-date","datatype-date-math","cssgrids"],skinnable:!0},calendarnavigator:{requires:["plugin","classnamemanager","datatype-date","node"],skinnable:!0},charts:{use:["charts-base"]},"charts-base":{requires:["dom","event-mouseenter","event-touch","graphics-group","axes","series-pie","series-line","series-marker","series-area","series-spline","series-column","series-bar","series-areaspline","series-combo","series-combospline","series-line-stacked","series-marker-stacked","series-area-stacked","series-spline-stacked","series-column-stacked","series-bar-stacked","series-areaspline-stacked","series-combo-stacked","series-combospline-stacked"]},"charts-legend":{requires:["charts-base"]},classnamemanager:{requires:["yui-base"]},"clickable-rail":{requires:["slider-base"]},collection:{use:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"]},color:{use:["color-base","color-hsl","color-harmony"]},"color-base":{requires:["yui-base"]},"color-harmony":{requires:["color-hsl"]},"color-hsl":{requires:["color-base"]},"color-hsv":{requires:["color-base"]},console:{lang:["en","es","hu","it","ja"],requires:["yui-log","widget"],skinnable:!0},"console-filters":{requires:["plugin","console"],skinnable:!0},controller:{use:["router"]},cookie:{requires:["yui-base"]},"createlink-base":{requires:["editor-base"]},cssbase:{after:["cssreset","cssfonts","cssgrids","cssreset-context","cssfonts-context","cssgrids-context"],type:"css"},"cssbase-context":{after:["cssreset","cssfonts","cssgrids","cssreset-context","cssfonts-context","cssgrids-context"],type:"css"},cssbutton:{type:"css"},cssfonts:{type:"css"},"cssfonts-context":{type:"css"},cssgrids:{optional:["cssnormalize"],type:"css"},"cssgrids-base":{optional:["cssnormalize"],type:"css"},"cssgrids-responsive":{optional:["cssnormalize"],requires:["cssgrids","cssgrids-responsive-base"],type:"css"},"cssgrids-units":{optional:["cssnormalize"],requires:["cssgrids-base"],type:"css"},cssnormalize:{type:"css"},"cssnormalize-context":{type:"css"},cssreset:{type:"css"},"cssreset-context":{type:"css"},dataschema:{use:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"]},"dataschema-array":{requires:["dataschema-base"]},"dataschema-base":{requires:["base"]},"dataschema-json":{requires:["dataschema-base","json"]},"dataschema-text":{requires:["dataschema-base"]},"dataschema-xml":{requires:["dataschema-base"]},datasource:{use:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"]},"datasource-arrayschema":{requires:["datasource-local","plugin","dataschema-array"]},"datasource-cache":{requires:["datasource-local","plugin","cache-base"]},"datasource-function":{requires:["datasource-local"]},"datasource-get":{requires:["datasource-local","get"]},"datasource-io":{requires:["datasource-local","io-base"]},"datasource-jsonschema":{requires:["datasource-local","plugin","dataschema-json"]},"datasource-local":{requires:["base"]},"datasource-polling":{requires:["datasource-local"]},"datasource-textschema":{requires:["datasource-local","plugin","dataschema-text"]},"datasource-xmlschema":{requires:["datasource-local","plugin","datatype-xml","dataschema-xml"]},datatable:{use:["datatable-core","datatable-table","datatable-head" ,"datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"]},"datatable-base":{requires:["datatable-core","datatable-table","datatable-head","datatable-body","base-build","widget"],skinnable:!0},"datatable-body":{requires:["datatable-core","view","classnamemanager"]},"datatable-column-widths":{requires:["datatable-base"]},"datatable-core":{requires:["escape","model-list","node-event-delegate"]},"datatable-datasource":{requires:["datatable-base","plugin","datasource-local"]},"datatable-foot":{requires:["datatable-core","view"]},"datatable-formatters":{requires:["datatable-body","datatype-number-format","datatype-date-format","escape"]},"datatable-head":{requires:["datatable-core","view","classnamemanager"]},"datatable-message":{lang:["en","fr","es","hu","it"],requires:["datatable-base"],skinnable:!0},"datatable-mutable":{requires:["datatable-base"]},"datatable-paginator":{lang:["en"],requires:["model","view","paginator-core","datatable-foot","datatable-paginator-templates"],skinnable:!0},"datatable-paginator-templates":{requires:["template"]},"datatable-scroll":{requires:["datatable-base","datatable-column-widths","dom-screen"],skinnable:!0},"datatable-sort":{lang:["en","fr","es","hu"],requires:["datatable-base"],skinnable:!0},"datatable-table":{requires:["datatable-core","datatable-head","datatable-body","view","classnamemanager"]},datatype:{use:["datatype-date","datatype-number","datatype-xml"]},"datatype-date":{use:["datatype-date-parse","datatype-date-format","datatype-date-math"]},"datatype-date-format":{lang:["ar","ar-JO","ca","ca-ES","da","da-DK","de","de-AT","de-DE","el","el-GR","en","en-AU","en-CA","en-GB","en-IE","en-IN","en-JO","en-MY","en-NZ","en-PH","en-SG","en-US","es","es-AR","es-BO","es-CL","es-CO","es-EC","es-ES","es-MX","es-PE","es-PY","es-US","es-UY","es-VE","fi","fi-FI","fr","fr-BE","fr-CA","fr-FR","hi","hi-IN","hu","id","id-ID","it","it-IT","ja","ja-JP","ko","ko-KR","ms","ms-MY","nb","nb-NO","nl","nl-BE","nl-NL","pl","pl-PL","pt","pt-BR","ro","ro-RO","ru","ru-RU","sv","sv-SE","th","th-TH","tr","tr-TR","vi","vi-VN","zh-Hans","zh-Hans-CN","zh-Hant","zh-Hant-HK","zh-Hant-TW"]},"datatype-date-math":{requires:["yui-base"]},"datatype-date-parse":{},"datatype-number":{use:["datatype-number-parse","datatype-number-format"]},"datatype-number-format":{},"datatype-number-parse":{},"datatype-xml":{use:["datatype-xml-parse","datatype-xml-format"]},"datatype-xml-format":{},"datatype-xml-parse":{},dd:{use:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"]},"dd-constrain":{requires:["dd-drag"]},"dd-ddm":{requires:["dd-ddm-base","event-resize"]},"dd-ddm-base":{requires:["node","base","yui-throttle","classnamemanager"]},"dd-ddm-drop":{requires:["dd-ddm"]},"dd-delegate":{requires:["dd-drag","dd-drop-plugin","event-mouseenter"]},"dd-drag":{requires:["dd-ddm-base"]},"dd-drop":{requires:["dd-drag","dd-ddm-drop"]},"dd-drop-plugin":{requires:["dd-drop"]},"dd-gestures":{condition:{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"},requires:["dd-drag","event-synthetic","event-gestures"]},"dd-plugin":{optional:["dd-constrain","dd-proxy"],requires:["dd-drag"]},"dd-proxy":{requires:["dd-drag"]},"dd-scroll":{requires:["dd-drag"]},dial:{lang:["en","es","hu"],requires:["widget","dd-drag","event-mouseenter","event-move","event-key","transition","intl"],skinnable:!0},dom:{use:["dom-base","dom-screen","dom-style","selector-native","selector"]},"dom-base":{requires:["dom-core"]},"dom-core":{requires:["oop","features"]},"dom-deprecated":{requires:["dom-base"]},"dom-screen":{requires:["dom-base","dom-style"]},"dom-style":{requires:["dom-base","color-base"]},"dom-style-ie":{condition:{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"},requires:["dom-style"]},dump:{requires:["yui-base"]},editor:{use:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"]},"editor-base":{requires:["base","frame","node","exec-command","editor-selection"]},"editor-bidi":{requires:["editor-base"]},"editor-br":{requires:["editor-base"]},"editor-lists":{requires:["editor-base"]},"editor-para":{requires:["editor-para-base"]},"editor-para-base":{requires:["editor-base"]},"editor-para-ie":{condition:{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"},requires:["editor-para-base"]},"editor-selection":{requires:["node"]},"editor-tab":{requires:["editor-base"]},escape:{requires:["yui-base"]},event:{after:["node-base"],use:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"]},"event-base":{after:["node-base"],requires:["event-custom-base"]},"event-base-ie":{after:["event-base"],condition:{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"},requires:["node-base"]},"event-contextmenu":{requires:["event-synthetic","dom-screen"]},"event-custom":{use:["event-custom-base","event-custom-complex"]},"event-custom-base":{requires:["oop"]},"event-custom-complex":{requires:["event-custom-base"]},"event-delegate":{requires:["node-base"]},"event-flick":{requires:["node-base","event-touch","event-synthetic"]},"event-focus":{requires:["event-synthetic"]},"event-gestures":{use:["event-flick","event-move"]},"event-hover":{requires:["event-mouseenter"]},"event-key":{requires:["event-synthetic"]},"event-mouseenter":{requires:["event-synthetic"]} ,"event-mousewheel":{requires:["node-base"]},"event-move":{requires:["node-base","event-touch","event-synthetic"]},"event-outside":{requires:["event-synthetic"]},"event-resize":{requires:["node-base","event-synthetic"]},"event-simulate":{requires:["event-base"]},"event-synthetic":{requires:["node-base","event-custom-complex"]},"event-tap":{requires:["node-base","event-base","event-touch","event-synthetic"]},"event-touch":{requires:["node-base"]},"event-valuechange":{requires:["event-focus","event-synthetic"]},"exec-command":{requires:["frame"]},features:{requires:["yui-base"]},file:{requires:["file-flash","file-html5"]},"file-flash":{requires:["base"]},"file-html5":{requires:["base"]},frame:{requires:["base","node","selector-css3","yui-throttle"]},"gesture-simulate":{requires:["async-queue","event-simulate","node-screen"]},get:{requires:["yui-base"]},graphics:{requires:["node","event-custom","pluginhost","matrix","classnamemanager"]},"graphics-canvas":{condition:{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"},requires:["graphics"]},"graphics-canvas-default":{condition:{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}},"graphics-group":{requires:["graphics"]},"graphics-svg":{condition:{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"},requires:["graphics"]},"graphics-svg-default":{condition:{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}},"graphics-vml":{condition:{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"},requires:["graphics"]},"graphics-vml-default":{condition:{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}},handlebars:{use:["handlebars-compiler"]},"handlebars-base":{requires:[]},"handlebars-compiler":{requires:["handlebars-base"]},highlight:{use:["highlight-base","highlight-accentfold"]},"highlight-accentfold":{requires:["highlight-base","text-accentfold"]},"highlight-base":{requires:["array-extras","classnamemanager","escape","text-wordbreak"]},history:{use:["history-base","history-hash","history-hash-ie","history-html5"]},"history-base":{requires:["event-custom-complex"]},"history-hash":{after:["history-html5"],requires:["event-synthetic","history-base","yui-later"]},"history-hash-ie":{condition:{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"},requires:["history-hash","node-base"]},"history-html5":{optional:["json"],requires:["event-base","history-base","node-base"]},imageloader:{requires:["base-base","node-style","node-screen"]},intl:{requires:["intl-base","event-custom"]},"intl-base":{requires:["yui-base"]},io:{use:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"]},"io-base":{requires:["event-custom-base","querystring-stringify-simple"]},"io-form":{requires:["io-base","node-base"]},"io-nodejs":{condition:{name:"io-nodejs",trigger:"io-base",ua:"nodejs"},requires:["io-base"]},"io-queue":{requires:["io-base","queue-promote"]},"io-upload-iframe":{requires:["io-base","node-base"]},"io-xdr":{requires:["io-base","datatype-xml-parse"]},json:{use:["json-parse","json-stringify"]},"json-parse":{requires:["yui-base"]},"json-parse-shim":{condition:{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"},requires:["json-parse"]},"json-stringify":{requires:["yui-base"]},"json-stringify-shim":{condition:{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"},requires:["json-stringify"]},jsonp:{requires:["get","oop"]},"jsonp-url":{requires:["jsonp"]},"lazy-model-list":{requires:["model-list"]},loader:{use:["loader-base","loader-rollup","loader-yui3"]},"loader-base":{requires:["get","features"]},"loader-rollup":{requires:["loader-base"]},"loader-yui3":{requires:["loader-base"]},matrix:{requires:["yui-base"]},model:{requires:["base-build","escape","json-parse"]},"model-list":{requires:["array-extras","array-invoke","arraylist","base-build","escape","json-parse","model"]},"model-sync-rest":{requires:["model","io-base","json-stringify"]},node:{use:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"]},"node-base":{requires:["event-base","node-core","dom-base","dom-style"]},"node-core" :{requires:["dom-core","selector"]},"node-deprecated":{requires:["node-base"]},"node-event-delegate":{requires:["node-base","event-delegate"]},"node-event-html5":{requires:["node-base"]},"node-event-simulate":{requires:["node-base","event-simulate","gesture-simulate"]},"node-flick":{requires:["classnamemanager","transition","event-flick","plugin"],skinnable:!0},"node-focusmanager":{requires:["attribute","node","plugin","node-event-simulate","event-key","event-focus"]},"node-load":{requires:["node-base","io-base"]},"node-menunav":{requires:["node","classnamemanager","plugin","node-focusmanager"],skinnable:!0},"node-pluginhost":{requires:["node-base","pluginhost"]},"node-screen":{requires:["dom-screen","node-base"]},"node-scroll-info":{requires:["array-extras","base-build","event-resize","node-pluginhost","plugin","selector"]},"node-style":{requires:["dom-style","node-base"]},oop:{requires:["yui-base"]},overlay:{requires:["widget","widget-stdmod","widget-position","widget-position-align","widget-stack","widget-position-constrain"],skinnable:!0},paginator:{requires:["paginator-core"]},"paginator-core":{requires:["base"]},"paginator-url":{requires:["paginator"]},panel:{requires:["widget","widget-autohide","widget-buttons","widget-modality","widget-position","widget-position-align","widget-position-constrain","widget-stack","widget-stdmod"],skinnable:!0},parallel:{requires:["yui-base"]},pjax:{requires:["pjax-base","pjax-content"]},"pjax-base":{requires:["classnamemanager","node-event-delegate","router"]},"pjax-content":{requires:["io-base","node-base","router"]},"pjax-plugin":{requires:["node-pluginhost","pjax","plugin"]},plugin:{requires:["base-base"]},pluginhost:{use:["pluginhost-base","pluginhost-config"]},"pluginhost-base":{requires:["yui-base"]},"pluginhost-config":{requires:["pluginhost-base"]},promise:{requires:["timers"]},querystring:{use:["querystring-parse","querystring-stringify"]},"querystring-parse":{requires:["yui-base","array-extras"]},"querystring-parse-simple":{requires:["yui-base"]},"querystring-stringify":{requires:["yui-base"]},"querystring-stringify-simple":{requires:["yui-base"]},"queue-promote":{requires:["yui-base"]},"range-slider":{requires:["slider-base","slider-value-range","clickable-rail"]},recordset:{use:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"]},"recordset-base":{requires:["base","arraylist"]},"recordset-filter":{requires:["recordset-base","array-extras","plugin"]},"recordset-indexer":{requires:["recordset-base","plugin"]},"recordset-sort":{requires:["arraysort","recordset-base","plugin"]},resize:{use:["resize-base","resize-proxy","resize-constrain"]},"resize-base":{requires:["base","widget","event","oop","dd-drag","dd-delegate","dd-drop"],skinnable:!0},"resize-constrain":{requires:["plugin","resize-base"]},"resize-plugin":{optional:["resize-constrain"],requires:["resize-base","plugin"]},"resize-proxy":{requires:["plugin","resize-base"]},router:{optional:["querystring-parse"],requires:["array-extras","base-build","history"]},scrollview:{requires:["scrollview-base","scrollview-scrollbars"]},"scrollview-base":{requires:["widget","event-gestures","event-mousewheel","transition"],skinnable:!0},"scrollview-base-ie":{condition:{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"},requires:["scrollview-base"]},"scrollview-list":{requires:["plugin","classnamemanager"],skinnable:!0},"scrollview-paginator":{requires:["plugin","classnamemanager"]},"scrollview-scrollbars":{requires:["classnamemanager","transition","plugin"],skinnable:!0},selector:{requires:["selector-native"]},"selector-css2":{condition:{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"},requires:["selector-native"]},"selector-css3":{requires:["selector-native","selector-css2"]},"selector-native":{requires:["dom-base"]},"series-area":{requires:["series-cartesian","series-fill-util"]},"series-area-stacked":{requires:["series-stacked","series-area"]},"series-areaspline":{requires:["series-area","series-curve-util"]},"series-areaspline-stacked":{requires:["series-stacked","series-areaspline"]},"series-bar":{requires:["series-marker","series-histogram-base"]},"series-bar-stacked":{requires:["series-stacked","series-bar"]},"series-base":{requires:["graphics","axis-base"]},"series-candlestick":{requires:["series-range"]},"series-cartesian":{requires:["series-base"]},"series-column":{requires:["series-marker","series-histogram-base"]},"series-column-stacked":{requires:["series-stacked","series-column"]},"series-combo":{requires:["series-cartesian","series-line-util","series-plot-util","series-fill-util"]},"series-combo-stacked":{requires:["series-stacked","series-combo"]},"series-combospline":{requires:["series-combo","series-curve-util"]},"series-combospline-stacked":{requires:["series-combo-stacked","series-curve-util"]},"series-curve-util":{},"series-fill-util":{},"series-histogram-base":{requires:["series-cartesian","series-plot-util"]},"series-line":{requires:["series-cartesian","series-line-util"]},"series-line-stacked":{requires:["series-stacked","series-line"]},"series-line-util":{},"series-marker":{requires:["series-cartesian","series-plot-util"]},"series-marker-stacked":{requires:["series-stacked","series-marker"]},"series-ohlc":{requires:["series-range"]},"series-pie":{requires:["series-base","series-plot-util"]},"series-plot-util":{},"series-range":{requires:["series-cartesian"]},"series-spline":{requires:["series-line","series-curve-util"]},"series-spline-stacked":{requires:["series-stacked","series-spline"]},"series-stacked":{requires:["axis-stacked"]},"shim-plugin":{requires:["node-style","node-pluginhost"]},slider:{use:["slider-base","slider-value-range","clickable-rail","range-slider"]},"slider-base":{requires:["widget","dd-constrain","event-key"],skinnable:!0},"slider-value-range":{requires:["slider-base"]},sortable:{requires:["dd-delegate","dd-drop-plugin","dd-proxy"]},"sortable-scroll":{requires -:["dd-scroll","sortable"]},stylesheet:{requires:["yui-base"]},substitute:{optional:["dump"],requires:["yui-base"]},swf:{requires:["event-custom","node","swfdetect","escape"]},swfdetect:{requires:["yui-base"]},tabview:{requires:["widget","widget-parent","widget-child","tabview-base","node-pluginhost","node-focusmanager"],skinnable:!0},"tabview-base":{requires:["node-event-delegate","classnamemanager"]},"tabview-plugin":{requires:["tabview-base"]},template:{use:["template-base","template-micro"]},"template-base":{requires:["yui-base"]},"template-micro":{requires:["escape"]},test:{requires:["event-simulate","event-custom","json-stringify"]},"test-console":{requires:["console-filters","test","array-extras"],skinnable:!0},text:{use:["text-accentfold","text-wordbreak"]},"text-accentfold":{requires:["array-extras","text-data-accentfold"]},"text-data-accentfold":{requires:["yui-base"]},"text-data-wordbreak":{requires:["yui-base"]},"text-wordbreak":{requires:["array-extras","text-data-wordbreak"]},timers:{requires:["yui-base"]},transition:{requires:["node-style"]},"transition-timer":{condition:{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"},requires:["transition"]},tree:{requires:["base-build","tree-node"]},"tree-labelable":{requires:["tree"]},"tree-lazy":{requires:["base-pluginhost","plugin","tree"]},"tree-node":{},"tree-openable":{requires:["tree"]},"tree-selectable":{requires:["tree"]},"tree-sortable":{requires:["tree"]},uploader:{requires:["uploader-html5","uploader-flash"]},"uploader-flash":{requires:["swf","widget","base","cssbutton","node","event-custom","file-flash","uploader-queue"]},"uploader-html5":{requires:["widget","node-event-simulate","file-html5","uploader-queue"]},"uploader-queue":{requires:["base"]},view:{requires:["base-build","node-event-delegate"]},"view-node-map":{requires:["view"]},widget:{use:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]},"widget-anim":{requires:["anim-base","plugin","widget"]},"widget-autohide":{requires:["base-build","event-key","event-outside","widget"]},"widget-base":{requires:["attribute","base-base","base-pluginhost","classnamemanager","event-focus","node-base","node-style"],skinnable:!0},"widget-base-ie":{condition:{name:"widget-base-ie",trigger:"widget-base",ua:"ie"},requires:["widget-base"]},"widget-buttons":{requires:["button-plugin","cssbutton","widget-stdmod"]},"widget-child":{requires:["base-build","widget"]},"widget-htmlparser":{requires:["widget-base"]},"widget-locale":{requires:["widget-base"]},"widget-modality":{requires:["base-build","event-outside","widget"],skinnable:!0},"widget-parent":{requires:["arraylist","base-build","widget"]},"widget-position":{requires:["base-build","node-screen","widget"]},"widget-position-align":{requires:["widget-position"]},"widget-position-constrain":{requires:["widget-position"]},"widget-skin":{requires:["widget-base"]},"widget-stack":{requires:["base-build","widget"],skinnable:!0},"widget-stdmod":{requires:["base-build","widget"]},"widget-uievents":{requires:["node-event-delegate","widget-base"]},yql:{requires:["oop"]},"yql-jsonp":{condition:{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"},requires:["jsonp","jsonp-url"]},"yql-nodejs":{condition:{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}},"yql-winjs":{condition:{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"}},yui:{},"yui-base":{},"yui-later":{requires:["yui-base"]},"yui-log":{requires:["yui-base"]},"yui-throttle":{requires:["yui-base"]}}),YUI.Env[e.version].md5="fd7c67956df50e445f40d1668dd1dc80"},"@VERSION@",{requires:["loader-base"]}),YUI.add("loader",function(e,t){},"@VERSION@",{use:["loader-base","loader-rollup","loader-yui3"]}); +:["dd-scroll","sortable"]},stylesheet:{requires:["yui-base"]},substitute:{optional:["dump"],requires:["yui-base"]},swf:{requires:["event-custom","node","swfdetect","escape"]},swfdetect:{requires:["yui-base"]},tabview:{requires:["widget","widget-parent","widget-child","tabview-base","node-pluginhost","node-focusmanager"],skinnable:!0},"tabview-base":{requires:["node-event-delegate","classnamemanager"]},"tabview-plugin":{requires:["tabview-base"]},template:{use:["template-base","template-micro"]},"template-base":{requires:["yui-base"]},"template-micro":{requires:["escape"]},test:{requires:["event-simulate","event-custom","json-stringify"]},"test-console":{requires:["console-filters","test","array-extras"],skinnable:!0},text:{use:["text-accentfold","text-wordbreak"]},"text-accentfold":{requires:["array-extras","text-data-accentfold"]},"text-data-accentfold":{requires:["yui-base"]},"text-data-wordbreak":{requires:["yui-base"]},"text-wordbreak":{requires:["array-extras","text-data-wordbreak"]},timers:{requires:["yui-base"]},transition:{requires:["node-style"]},"transition-timer":{condition:{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"},requires:["transition"]},tree:{requires:["base-build","tree-node"]},"tree-labelable":{requires:["tree"]},"tree-lazy":{requires:["base-pluginhost","plugin","tree"]},"tree-node":{},"tree-openable":{requires:["tree"]},"tree-selectable":{requires:["tree"]},"tree-sortable":{requires:["tree"]},uploader:{requires:["uploader-html5","uploader-flash"]},"uploader-flash":{requires:["swf","widget","base","cssbutton","node","event-custom","file-flash","uploader-queue"]},"uploader-html5":{requires:["widget","node-event-simulate","file-html5","uploader-queue"]},"uploader-queue":{requires:["base"]},view:{requires:["base-build","node-event-delegate"]},"view-node-map":{requires:["view"]},widget:{use:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]},"widget-anim":{requires:["anim-base","plugin","widget"]},"widget-autohide":{requires:["base-build","event-key","event-outside","widget"]},"widget-base":{requires:["attribute","base-base","base-pluginhost","classnamemanager","event-focus","node-base","node-style"],skinnable:!0},"widget-base-ie":{condition:{name:"widget-base-ie",trigger:"widget-base",ua:"ie"},requires:["widget-base"]},"widget-buttons":{requires:["button-plugin","cssbutton","widget-stdmod"]},"widget-child":{requires:["base-build","widget"]},"widget-htmlparser":{requires:["widget-base"]},"widget-locale":{requires:["widget-base"]},"widget-modality":{requires:["base-build","event-outside","widget"],skinnable:!0},"widget-parent":{requires:["arraylist","base-build","widget"]},"widget-position":{requires:["base-build","node-screen","widget"]},"widget-position-align":{requires:["widget-position"]},"widget-position-constrain":{requires:["widget-position"]},"widget-skin":{requires:["widget-base"]},"widget-stack":{requires:["base-build","widget"],skinnable:!0},"widget-stdmod":{requires:["base-build","widget"]},"widget-uievents":{requires:["node-event-delegate","widget-base"]},yql:{requires:["oop"]},"yql-jsonp":{condition:{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"},requires:["jsonp","jsonp-url"]},"yql-nodejs":{condition:{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}},"yql-winjs":{condition:{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"}},yui:{},"yui-base":{},"yui-later":{requires:["yui-base"]},"yui-log":{requires:["yui-base"]},"yui-throttle":{requires:["yui-base"]}}),YUI.Env[e.version].md5="fd7c67956df50e445f40d1668dd1dc80"},"3.12.0",{requires:["loader-base"]}),YUI.add("loader",function(e,t){},"3.12.0",{use:["loader-base","loader-rollup","loader-yui3"]}); diff --git a/lib/yuilib/3.12.0/simpleyui/simpleyui-min.js b/lib/yuilib/3.12.0/simpleyui/simpleyui-min.js index 7697f090821..227ce043494 100755 --- a/lib/yuilib/3.12.0/simpleyui/simpleyui-min.js +++ b/lib/yuilib/3.12.0/simpleyui/simpleyui-min.js @@ -5,30 +5,30 @@ Licensed under the BSD License. http://yuilibrary.com/license/ */ -typeof YUI!="undefined"&&(YUI._YUI=YUI);var YUI=function(){var e=0,t=this,n=arguments,r=n.length,i=function(e,t){return e&&e.hasOwnProperty&&e instanceof t},s=typeof YUI_config!="undefined"&&YUI_config;i(t,YUI)?(t._init(),YUI.GlobalConfig&&t.applyConfig(YUI.GlobalConfig),s&&t.applyConfig(s),r||t._setup()):t=new YUI;if(r){for(;e-1&&(n="3.5.0"),e={applyConfig:function(e){e=e||u;var t,n,r=this.config,i=r.modules,s=r.groups,o=r.aliases,a=this.Env._loader;for(n in e)e.hasOwnProperty(n)&&(t=e[n],i&&n=="modules"?E(i,t):o&&n=="aliases"?E(o,t):s&&n=="groups"?E(s,t):n=="win"?(r[n]=t&&t.contentWindow||t,r.doc=r[n]?r[n].document:null):n!="_yuid"&&(r[n]=t));a&&a._config(e)},_config:function(e){this.applyConfig(e)},_init:function(){var e,t,r=this,s=YUI.Env,u=r.Env,a;r.version=n;if(!u){r.Env={core:["get","features","intl-base","yui-log","yui-later"],loaderExtras:["loader-rollup","loader-yui3"],mods:{},versions:{},base:i,cdn:i+n+"/build/",_idx:0,_used:{},_attached:{},_missed:[],_yidx:0,_uidx:0,_guidp:"y",_loaded:{},_BASE_RE:/(?:\?(?:[^&]*&)*([^&]*))?\b(simpleyui|yui(?:-\w+)?)\/\2(?:-(min|debug))?\.js/,parseBasePath:function(e,t){var n=e.match(t),r,i;return n&&(r=RegExp.leftContext||e.slice(0,e.indexOf(n[0])),i=n[3],n[1]&&(r+="?"+n[1]),r={filter:i,path:r}),r},getBase:s&&s.getBase||function(t){var n=h&&h.getElementsByTagName("script")||[],i=u.cdn,s,o,a,f;for(o=0,a=n.length;o',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1&&(n="3.5.0"),e={applyConfig:function(e){e=e||u;var t,n,r=this.config,i=r.modules,s=r.groups,o=r.aliases,a=this.Env._loader;for(n in e)e.hasOwnProperty(n)&&(t=e[n],i&&n=="modules"?E(i,t):o&&n=="aliases"?E(o,t):s&&n=="groups"?E(s,t):n=="win"?(r[n]=t&&t.contentWindow||t,r.doc=r[n]?r[n].document:null):n!="_yuid"&&(r[n]=t));a&&a._config(e)},_config:function(e){this.applyConfig(e)},_init:function(){var e,t,r=this,s=YUI.Env,u=r.Env,a;r.version=n;if(!u){r.Env={core:["get","features","intl-base","yui-log","yui-later"],loaderExtras:["loader-rollup","loader-yui3"],mods:{},versions:{},base:i,cdn:i+n+"/build/",_idx:0,_used:{},_attached:{},_missed:[],_yidx:0,_uidx:0,_guidp:"y",_loaded:{},_BASE_RE:/(?:\?(?:[^&]*&)*([^&]*))?\b(simpleyui|yui(?:-\w+)?)\/\2(?:-(min|debug))?\.js/,parseBasePath:function(e,t){var n=e.match(t),r,i;return n&&(r=RegExp.leftContext||e.slice(0,e.indexOf(n[0])),i=n[3],n[1]&&(r+="?"+n[1]),r={filter:i,path:r}),r},getBase:s&&s.getBase||function(t){var n=h&&h.getElementsByTagName("script")||[],i=u.cdn,s,o,a,f;for(o=0,a=n.length;o',YUI.Env.cssStampEl=t.firstChild,h.body?h.body.appendChild(YUI.Env.cssStampEl):p.insertBefore(YUI.Env.cssStampEl,p.firstChild)):h&&h.getElementById(o)&&!YUI.Env.cssStampEl&&(YUI.Env.cssStampEl=h.getElementById(o)),r.config.lang=r.config.lang||"en-US",r.config.base=YUI.config.base||r.Env.getBase(r.Env._BASE_RE);if(!e||!"mindebug".indexOf(e))e="min";e=e?"-"+e:e,r.config.loaderPath=YUI.config.loaderPath||"loader/loader"+e+".js"},_setup:function(){var e,t=this,n=[],r=YUI.Env.mods,i=t.config.core||[].concat(YUI.Env.core);for(e=0;e-1){s=o.split(r);for(i=s[0]=="YAHOO"?1:0;ii&&i in t?t[i]:!0);return n},m.indexOf=p._isNative(d.indexOf)?function(e,t,n){return d.indexOf.call(e,t,n)}:function(e,t,n){var r=e.length;n=+n||0,n=(n>0||-1)*Math.floor(Math.abs(n)),n<0&&(n+=r,n<0&&(n=0));for(;n1?Array.prototype.join.call(arguments,y):String(r);if(!(i in t)||n&&t[i]==n)t[i]=e.apply(e,arguments);return t[i]}},e.getLocation=function(){var t=e.config.win;return t&&t.location},e.merge=function(){var e=0,t=arguments.length,n={},r,i;for(;e-1},E.each=function(t,n,r,i){var s;for(s in t)(i||N(t,s))&&n.call(r||e,t[s],s,t);return e},E.some=function(t,n,r,i){var s;for(s in t)if(i||N(t,s))if(n.call(r||e,t[s],s,t))return!0;return!1},E.getValue=function(t,n){if(!p.isObject(t))return w;var r,i=e.Array(n),s=i.length;for(r=0;t!==w&&r=0){for(i=0;u!==w&&i0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"@VERSION@",{use:["get","features","intl-base","yui-log","yui-later"]}),YUI.add("get",function(e,t){var n=e.Lang,r,i,s;e.Get=i={cssOptions:{attributes:{rel:"stylesheet"},doc:e.config.linkDoc||e.config.doc,pollInterval:50},jsOptions:{autopurge:!0,doc:e.config.scriptDoc||e.config.doc},options:{attributes:{charset:"utf-8"},purgethreshold:20},REGEX_CSS:/\.css(?:[?;].*)?$/i,REGEX_JS:/\.js(?:[?;].*)?$/i,_insertCache:{},_pending:null,_purgeNodes:[],_queue:[],abort:function(e){var t,n,r,i,s;if(!e.abort){n=e,s=this._pending,e=null;if(s&&s.transaction.id===n)e=s.transaction,this._pending=null;else for(t=0,i=this._queue.length;t=e&&this._purge(this._purgeNodes)},_getEnv:function(){var t=e.config.doc,n=e.UA;return this._env={async:t&&t.createElement("script").async===!0||n.ie>=10,cssFail:n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0,cssLoad:(!n.gecko&&!n.webkit||n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0)&&!(n.chrome&&n.chrome<=18),preservesScriptOrder:!!(n.gecko||n.opera||n.ie&&n.ie>=10)}},_getTransaction:function(t,r){var i=[ -],o,u,a,f;n.isArray(t)||(t=[t]),r=e.merge(this.options,r),r.attributes=e.merge(this.options.attributes,r.attributes);for(o=0,u=t.length;o-1&&n.splice(i,1))}}},i.script=i.js,i.Transaction=s=function(t,n){var r=this;r.id=s._lastId+=1,r.data=n.data,r.errors=[],r.nodes=[],r.options=n,r.requests=t,r._callbacks=[],r._queue=[],r._reqsWaiting=0,r.tId=r.id,r.win=n.win||e.config.win},s._lastId=0,s.prototype={_state:"new",abort:function(e){this._pending=null,this._pendingCSS=null,this._pollTimer=clearTimeout(this._pollTimer),this._queue=[],this._reqsWaiting=0,this.errors.push({error:e||"Aborted"}),this._finish()},execute:function(e){var t=this,n=t.requests,r=t._state,i,s,o,u;if(r==="done"){e&&e(t.errors.length?t.errors:null,t);return}e&&t._callbacks.push(e);if(r==="executing")return;t._state="executing",t._queue=o=[],t.options.timeout&&(t._timeout=setTimeout(function(){t.abort("Timeout")},t.options.timeout)),t._reqsWaiting=n.length;for(i=0,s=n.length;i=10?(o.onerror=function(){setTimeout(c,0)},o.onload=function(){setTimeout(h,0)}):(o.onerror=c,o.onload=h),!n.cssFail&&!s&&(f=setTimeout(c,t.timeout||3e3))),this.nodes.push(o),r.parentNode.insertBefore(o,r)},_next:function(){if(this._pending)return;this._queue.length?this._insert(this._queue.shift()):this._reqsWaiting||this._finish()},_poll:function(t){var n=this,r=n._pendingCSS,i=e.UA.webkit,s,o,u,a,f,l;if(t){r||(r=n._pendingCSS=[]),r.push(t);if(n._pollTimer)return}n._pollTimer=null;for(s=0;s=0)if(l[u].href===a){r.splice(s,1),s-=1,n._progress(null,f);break}}else try{o=!!f.node.sheet.cssRules,r.splice(s,1),s-=1,n._progress(null,f)}catch(c){}}r.length&&(n._pollTimer=setTimeout(function(){n._poll.call(n)},n.options.pollInterval))},_progress:function(e,t){var n=this.options;e&&(t.error=e,this.errors.push({error:e,request:t})),t.node._yuiget_finished=t.finished=!0,n.onProgress&&n.onProgress.call(n.context||this,this._getEventData(t)),t.autopurge&&(i._autoPurge(this.options.purgethreshold),i._purgeNodes.push(t.node)),this._pending===t&&(this._pending=null),this._reqsWaiting-=1,this._next()}}},"@VERSION@",{requires:["yui-base"]}),YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions" -}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"@VERSION@",{requires:["yui-base"]}),YUI.add("intl-base",function(e,t){var n=/[, ]/;e.mix(e.namespace("Intl"),{lookupBestLang:function(t,r){function a(e){var t;for(t=0;t0){o=a(s);if(o)return o;u=s.lastIndexOf("-");if(!(u>=0))break;s=s.substring(0,u),u>=2&&s.charAt(u-2)==="-"&&(s=s.substring(0,u-2))}}return""}})},"@VERSION@",{requires:["yui-base"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:2,warn:4,error:8};n.log=function(e,t,o,u){var a,f,l,c,h,p,d=n,v=d.config,m=d.fire?d:YUI.Env.globalEvents;return v.debug&&(o=o||"",typeof o!="undefined"&&(f=v.logExclude,l=v.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1,d.config.logLevel=d.config.logLevel||"debug",p=s[d.config.logLevel.toLowerCase()],t in s&&s[t]2?e.Array(arguments,2,!0):null;return function(){var s=n.isString(t)?r[t]:t,o=i?i.concat(e.Array(arguments,0,!0)):arguments;return s.apply(r||s,o)}},e.rbind=function(t,r){var i=arguments.length>2?e.Array(arguments,2,!0):null;return function(){var s=n.isString(t)?r[t]:t,o=i?e.Array(arguments,0,!0).concat(i):arguments;return s.apply(r||s,o)}}},"@VERSION@",{requires:["yui-base"]}),YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name -:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"@VERSION@",{requires:["yui-base"]}),YUI.add("dom-core",function(e,t){var n="nodeType",r="ownerDocument",i="documentElement",s="defaultView",o="parentWindow",u="tagName",a="parentNode",f="previousSibling",l="nextSibling",c="contains",h="compareDocumentPosition",p=[],d=function(){var t=e.config.doc.createElement("div"),n=t.appendChild(e.config.doc.createTextNode("")),r=!1;try{r=t.contains(n)}catch(i){}return r}(),v={byId:function(e,t){return v.allById(e,t)[0]||null},getId:function(e){var t;return e.id&&!e.id.tagName&&!e.id.item?t=e.id:e.attributes&&e.attributes.id&&(t=e.attributes.id.value),t},setId:function(e,t){e.setAttribute?e.setAttribute("id",t):e.id=t},ancestor:function(e,t,n,r){var i=null;return n&&(i=!t||t(e)?e:null),i||v.elementByAxis(e,a,t,null,r)},ancestors:function(e,t,n,r){var i=e,s=[];while(i=v.ancestor(i,t,n,r)){n=!1;if(i){s.unshift(i);if(r&&r(i))return s}}return s},elementByAxis:function(e,t,n,r,i){while(e&&(e=e[t])){if((r||e[u])&&(!n||n(e)))return e;if(i&&i(e))return null}return null},contains:function(e,t){var r=!1;if(!t||!e||!t[n]||!e[n])r=!1;else if(e[c]&&(t[n]===1||d))r=e[c](t);else if(e[h]){if(e===t||!!(e[h](t)&16))r=!0}else r=v._bruteContains(e,t);return r},inDoc:function(e,t){var n=!1,s;return e&&e.nodeType&&(t||(t=e[r]),s=t[i],s&&s.contains&&e.tagName?n=s.contains(e):n=v.contains(s,e)),n},allById:function(t,n){n=n||e.config.doc;var r=[],i=[],s,o;if(n.querySelectorAll)i=n.querySelectorAll('[id="'+t+'"]');else if(n.all){r=n.all(t);if(r){r.nodeName&&(r.id===t?(i.push(r),r=p):r=[r]);if(r.length)for(s=0;o=r[s++];)(o.id===t||o.attributes&&o.attributes.id&&o.attributes.id.value===t)&&i.push(o)}}else i=[v._getDoc(n).getElementById(t)];return i},isWindow:function(e){return!!(e&&e.scrollTo&&e.document)},_removeChildNodes:function(e){while(e.firstChild)e.removeChild(e.firstChild)},siblings:function(e,t){var n=[],r=e;while(r=r[f])r[u]&&(!t||t(r))&&n.unshift(r);r=e;while(r=r[l])r[u]&&(!t||t(r))&&n.push(r);return n},_bruteContains:function(e,t){while(t){if(e===t)return!0;t=t.parentNode}return!1},_getRegExp:function(e,t){return t=t||"",v._regexCache=v._regexCache||{},v._regexCache[e+t]||(v._regexCache[e+t]=new RegExp(e,t)),v._regexCache[e+t]},_getDoc:function(t){var i=e.config.doc;return t&&(i=t[n]===9?t:t[r]||t.document||e.config.doc),i},_getWin:function(t){var n=v._getDoc(t);return n[s]||n[o]||e.config.win},_batch:function(e,t,n,r,i,s){t=typeof t=="string"?v[t]:t;var o,u=0,a,f;if(t&&e)while(a=e[u++])o=o=t.call(v,a,n,r,i,s),typeof o!="undefined"&&(f||(f=[]),f.push(o));return typeof f!="undefined"?f:e},generateID:function(t){var n=t.id;return n||(n=e.stamp(t),t.id=n),n}};e.DOM=v},"@VERSION@",{requires:["oop","features"]}),YUI.add("dom-base",function(e,t){var n=e.config.doc.documentElement,r=e.DOM,i="tagName",s="ownerDocument",o="",u=e.Features.add,a=e.Features.test;e.mix(r,{getText:n.textContent!==undefined?function(e){var t="";return e&&(t=e.textContent),t||""}:function(e){var t="";return e&&(t=e.innerText||e.nodeValue),t||""},setText:n.textContent!==undefined?function(e,t){e&&(e.textContent=t)}:function(e,t){"innerText"in e?e.innerText=t:"nodeValue"in e&&(e.nodeValue=t)},CUSTOM_ATTRIBUTES:n.hasAttribute?{htmlFor:"for",className:"class"}:{"for":"htmlFor","class":"className"},setAttribute:function(e,t,n,i){e&&t&&e.setAttribute&&(t=r.CUSTOM_ATTRIBUTES[t]||t,e.setAttribute(t,n,i))},getAttribute:function(e,t,n){n=n!==undefined?n:2;var i="";return e&&t&&e.getAttribute&&(t=r.CUSTOM_ATTRIBUTES[t]||t,i=e.getAttribute(t,n),i===null&&(i="")),i},VALUE_SETTERS:{},VALUE_GETTERS:{},getValue:function(e){var t="",n;return e&&e[i]&&(n=r.VALUE_GETTERS[e[i].toLowerCase()],n?t=n(e):t=e.value),t===o&&(t=o),typeof t=="string"?t:""},setValue:function(e,t){var n;e&&e[i]&&(n=r.VALUE_SETTERS[e[i].toLowerCase()],n?n(e,t):e.value=t)},creators:{}}),u("value-set","select",{test:function(){var t=e.config.doc.createElement("select");return t.innerHTML="",t.value="2",t.value&&t.value==="2"}}),a("value-set","select")||(r.VALUE_SETTERS.select=function(e,t){for(var n=0,i=e.getElementsByTagName("option"),s;s=i[n++];)if(r.getValue(s)===t){s.selected=!0;break}}),e.mix(r.VALUE_GETTERS,{button:function(e){return e.attributes&&e.attributes.value?e.attributes.value.value:""}}),e.mix(r.VALUE_SETTERS,{button:function(e,t){var n=e.attributes.value;n||(n=e[s].createAttribute("value"),e.setAttributeNode(n)),n.value=t}}),e.mix(r.VALUE_GETTERS,{option:function(e){var t=e.attributes;return t.value&&t.value.specified?e.value:e.text},select:function(e){var t=e.value,n=e.options;return n&&n.length&&(e.multiple||e.selectedIndex>-1&&(t=r.getValue(n[e.selectedIndex]))),t}});var f,l,c;e.mix(e.DOM -,{hasClass:function(t,n){var r=e.DOM._getRegExp("(?:^|\\s+)"+n+"(?:\\s+|$)");return r.test(t.className)},addClass:function(t,n){e.DOM.hasClass(t,n)||(t.className=e.Lang.trim([t.className,n].join(" ")))},removeClass:function(t,n){n&&l(t,n)&&(t.className=e.Lang.trim(t.className.replace(e.DOM._getRegExp("(?:^|\\s+)"+n+"(?:\\s+|$)")," ")),l(t,n)&&c(t,n))},replaceClass:function(e,t,n){c(e,t),f(e,n)},toggleClass:function(e,t,n){var r=n!==undefined?n:!l(e,t);r?f(e,t):c(e,t)}}),l=e.DOM.hasClass,c=e.DOM.removeClass,f=e.DOM.addClass;var h=/<([a-z]+)/i,r=e.DOM,u=e.Features.add,a=e.Features.test,p={},d=function(t,n){var r=e.config.doc.createElement("div"),i=!0;r.innerHTML=t;if(!r.firstChild||r.firstChild.tagName!==n.toUpperCase())i=!1;return i},v=/(?:\/(?:thead|tfoot|tbody|caption|col|colgroup)>)+\s*"}catch(n){return!1}return t.firstChild&&t.firstChild.nodeName==="TBODY"}}),u("innerhtml-div","tr",{test:function(){return d("","tr")}}),u("innerhtml-div","script",{test:function(){return d("","script")}}),a("innerhtml","table")||(p.tbody=function(t,n){var i=r.create(m+t+g,n),s=e.DOM._children(i,"tbody")[0];return i.children.length>1&&s&&!v.test(t)&&s.parentNode.removeChild(s),i}),a("innerhtml-div","script")||(p.script=function(e,t){var n=t.createElement("div");return n.innerHTML="-"+e,n.removeChild(n.firstChild),n},p.link=p.style=p.script),a("innerhtml-div","tr")||(e.mix(p,{option:function(e,t){return r.create('",t)},tr:function(e,t){return r.create(""+e+"",t)},td:function(e,t){return r.create(""+e+"",t)},col:function(e,t){return r.create(""+e+"",t)},tbody:"table"}),e.mix(p,{legend:"fieldset",th:p.td,thead:p.tbody,tfoot:p.tbody,caption:p.tbody,colgroup:p.tbody,optgroup:p.option})),r.creators=p,e.mix(e.DOM,{setWidth:function(t,n){e.DOM._setSize(t,"width",n)},setHeight:function(t,n){e.DOM._setSize(t,"height",n)},_setSize:function(e,t,n){n=n>0?n:0;var r=0;e.style[t]=n+"px",r=t==="height"?e.offsetHeight:e.offsetWidth,r>n&&(n-=r-n,n<0&&(n=0),e.style[t]=n+"px")}})},"@VERSION@",{requires:["dom-core"]}),YUI.add("color-base",function(e,t){var n=/^#?([\da-fA-F]{2})([\da-fA-F]{2})([\da-fA-F]{2})(\ufffe)?/,r=/^#?([\da-fA-F]{1})([\da-fA-F]{1})([\da-fA-F]{1})(\ufffe)?/,i=/rgba?\(([\d]{1,3}), ?([\d]{1,3}), ?([\d]{1,3}),? ?([.\d]*)?\)/,s={HEX:"hex",RGB:"rgb",RGBA:"rgba"},o={hex:"toHex",rgb:"toRGB",rgba:"toRGBA"};e.Color={KEYWORDS:{black:"000",silver:"c0c0c0",gray:"808080",white:"fff",maroon:"800000",red:"f00",purple:"800080",fuchsia:"f0f",green:"008000",lime:"0f0",olive:"808000",yellow:"ff0",navy:"000080",blue:"00f",teal:"008080",aqua:"0ff"},REGEX_HEX:n,REGEX_HEX3:r,REGEX_RGB:i,re_RGB:i,re_hex:n,re_hex3:r,STR_HEX:"#{*}{*}{*}",STR_RGB:"rgb({*}, {*}, {*})",STR_RGBA:"rgba({*}, {*}, {*}, {*})",TYPES:s,CONVERTS:o,convert:function(t,n){var r=e.Color.CONVERTS[n.toLowerCase()],i=t;return r&&e.Color[r]&&(i=e.Color[r](t)),i},toHex:function(t){var n=e.Color._convertTo(t,"hex"),r=n.toLowerCase()==="transparent";return n.charAt(0)!=="#"&&!r&&(n="#"+n),r?n.toLowerCase():n.toUpperCase()},toRGB:function(t){var n=e.Color._convertTo(t,"rgb");return n.toLowerCase()},toRGBA:function(t){var n=e.Color._convertTo(t,"rgba");return n.toLowerCase()},toArray:function(t){var n=e.Color.findType(t).toUpperCase(),r,i,s,o;return n==="HEX"&&t.length<5&&(n="HEX3"),n.charAt(n.length-1)==="A"&&(n=n.slice(0,-1)),r=e.Color["REGEX_"+n],r&&(i=r.exec(t)||[],s=i.length,s&&(i.shift(),s--,n==="HEX3"&&(i[0]+=i[0],i[1]+=i[1],i[2]+=i[2]),o=i[s-1],o||(i[s-1]=1))),i},fromArray:function(t,n){t=t.concat();if(typeof n=="undefined")return t.join(", ");var r="{*}";n=e.Color["STR_"+n.toUpperCase()],t.length===3&&n.match(/\{\*\}/g).length===4&&t.push(1);while(n.indexOf(r)>=0&&t.length>0)n=n.replace(r,t.shift());return n},findType -:function(t){if(e.Color.KEYWORDS[t])return"keyword";var n=t.indexOf("("),r;return n>0&&(r=t.substr(0,n)),r&&e.Color.TYPES[r.toUpperCase()]?e.Color.TYPES[r.toUpperCase()]:"hex"},_getAlpha:function(t){var n,r=e.Color.toArray(t);return r.length>3&&(n=r.pop()),+n||1},_keywordToHex:function(t){var n=e.Color.KEYWORDS[t];if(n)return n},_convertTo:function(t,n){if(t==="transparent")return t;var r=e.Color.findType(t),i=n,s,o,u,a;return r==="keyword"&&(t=e.Color._keywordToHex(t),r="hex"),r==="hex"&&t.length<5&&(t.charAt(0)==="#"&&(t=t.substr(1)),t="#"+t.charAt(0)+t.charAt(0)+t.charAt(1)+t.charAt(1)+t.charAt(2)+t.charAt(2)),r===n?t:(r.charAt(r.length-1)==="a"&&(r=r.slice(0,-1)),s=n.charAt(n.length-1)==="a",s&&(n=n.slice(0,-1),o=e.Color._getAlpha(t)),a=n.charAt(0).toUpperCase()+n.substr(1).toLowerCase(),u=e.Color["_"+r+"To"+a],u||r!=="rgb"&&n!=="rgb"&&(t=e.Color["_"+r+"ToRgb"](t),r="rgb",u=e.Color["_"+r+"To"+a]),u&&(t=u(t,s)),s&&(e.Lang.isArray(t)||(t=e.Color.toArray(t)),t.push(o),t=e.Color.fromArray(t,i.toUpperCase())),t)},_hexToRgb:function(e,t){var n,r,i;return e.charAt(0)==="#"&&(e=e.substr(1)),e=parseInt(e,16),n=e>>16,r=e>>8&255,i=e&255,t?[n,r,i]:"rgb("+n+", "+r+", "+i+")"},_rgbToHex:function(t){var n=e.Color.toArray(t),r=n[2]|n[1]<<8|n[0]<<16;r=(+r).toString(16);while(r.length<6)r="0"+r;return"#"+r}}},"@VERSION@",{requires:["yui-base"]}),YUI.add("dom-style",function(e,t){(function(e){var t="documentElement",n="defaultView",r="ownerDocument",i="style",s="float",o="cssFloat",u="styleFloat",a="transparent",f="getComputedStyle",l="getBoundingClientRect",c=e.config.win,h=e.config.doc,p=undefined,d=e.DOM,v="transform",m="transformOrigin",g=["WebkitTransform","MozTransform","OTransform","msTransform"],y=/color$/i,b=/width|height|top|left|right|bottom|margin|padding/i;e.Array.each(g,function(e){e in h[t].style&&(v=e,m=e+"Origin")}),e.mix(d,{DEFAULT_UNIT:"px",CUSTOM_STYLES:{},setStyle:function(e,t,n,r){r=r||e.style;var i=d.CUSTOM_STYLES;if(r){n===null||n===""?n="":!isNaN(new Number(n))&&b.test(t)&&(n+=d.DEFAULT_UNIT);if(t in i){if(i[t].set){i[t].set(e,n,r);return}typeof i[t]=="string"&&(t=i[t])}else t===""&&(t="cssText",n="");r[t]=n}},getStyle:function(e,t,n){n=n||e.style;var r=d.CUSTOM_STYLES,i="";if(n){if(t in r){if(r[t].get)return r[t].get(e,t,n);typeof r[t]=="string"&&(t=r[t])}i=n[t],i===""&&(i=d[f](e,t))}return i},setStyles:function(t,n){var r=t.style;e.each(n,function(e,n){d.setStyle(t,n,e,r)},d)},getComputedStyle:function(e,t){var s="",o=e[r],u;return e[i]&&o[n]&&o[n][f]&&(u=o[n][f](e,null),u&&(s=u[t])),s}}),h[t][i][o]!==p?d.CUSTOM_STYLES[s]=o:h[t][i][u]!==p&&(d.CUSTOM_STYLES[s]=u),e.UA.opera&&(d[f]=function(t,i){var s=t[r][n],o=s[f](t,"")[i];return y.test(i)&&(o=e.Color.toRGB(o)),o}),e.UA.webkit&&(d[f]=function(e,t){var i=e[r][n],s=i[f](e,"")[t];return s==="rgba(0, 0, 0, 0)"&&(s=a),s}),e.DOM._getAttrOffset=function(t,n){var r=e.DOM[f](t,n),i=t.offsetParent,s,o,u;return r==="auto"&&(s=e.DOM.getStyle(t,"position"),s==="static"||s==="relative"?r=0:i&&i[l]&&(o=i[l]()[n],u=t[l]()[n],n==="left"||n==="top"?r=u-o:r=o-t[l]()[n])),r},e.DOM._getOffset=function(e){var t,n=null;return e&&(t=d.getStyle(e,"position"),n=[parseInt(d[f](e,"left"),10),parseInt(d[f](e,"top"),10)],isNaN(n[0])&&(n[0]=parseInt(d.getStyle(e,"left"),10),isNaN(n[0])&&(n[0]=t==="relative"?0:e.offsetLeft||0)),isNaN(n[1])&&(n[1]=parseInt(d.getStyle(e,"top"),10),isNaN(n[1])&&(n[1]=t==="relative"?0:e.offsetTop||0))),n},d.CUSTOM_STYLES.transform={set:function(e,t,n){n[v]=t},get:function(e,t){return d[f](e,v)}},d.CUSTOM_STYLES.transformOrigin={set:function(e,t,n){n[m]=t},get:function(e,t){return d[f](e,m)}}})(e)},"@VERSION@",{requires:["dom-base","color-base"]}),YUI.add("dom-style-ie",function(e,t){(function(e){var t="hasLayout",n="px",r="filter",i="filters",s="opacity",o="auto",u="borderWidth",a="borderTopWidth",f="borderRightWidth",l="borderBottomWidth",c="borderLeftWidth",h="width",p="height",d="transparent",v="visible",m="getComputedStyle",g=undefined,y=e.config.doc.documentElement,b=e.Features.test,w=e.Features.add,E=/^(\d[.\d]*)+(em|ex|px|gd|rem|vw|vh|vm|ch|mm|cm|in|pt|pc|deg|rad|ms|s|hz|khz|%){1}?/i,S=e.UA.ie>=8,x=function(e){return e.currentStyle||e.style},T={CUSTOM_STYLES:{},get:function(t,r){var i="",o;return t&&(o=x(t)[r],r===s&&e.DOM.CUSTOM_STYLES[s]?i=e.DOM.CUSTOM_STYLES[s].get(t):!o||o.indexOf&&o.indexOf(n)>-1?i=o:e.DOM.IE.COMPUTED[r]?i=e.DOM.IE.COMPUTED[r](t,r):E.test(o)?i=T.getPixel(t,r)+n:i=o),i},sizeOffsets:{width:["Left","Right"],height:["Top","Bottom"],top:["Top"],bottom:["Bottom"]},getOffset:function(e,t){var r=x(e)[t],i=t.charAt(0).toUpperCase()+t.substr(1),s="offset"+i,u="pixel"+i,a=T.sizeOffsets[t],f=e.ownerDocument.compatMode,l="";return r===o||r.indexOf("%")>-1?(l=e["offset"+i],f!=="BackCompat"&&(a[0]&&(l-=T.getPixel(e,"padding"+a[0]),l-=T.getBorderWidth(e,"border"+a[0]+"Width",1)),a[1]&&(l-=T.getPixel(e,"padding"+a[1]),l-=T.getBorderWidth(e,"border"+a[1]+"Width",1)))):(!e.style[u]&&!e.style[t]&&(e.style[t]=r),l=e.style[u]),l+n},borderMap:{thin:S?"1px":"2px",medium:S?"3px":"4px",thick:S?"5px":"6px"},getBorderWidth:function(e,t,r){var i=r?"":n,s=e.currentStyle[t];return s.indexOf(n)<0&&(T.borderMap[s]&&e.currentStyle.borderStyle!=="none"?s=T.borderMap[s]:s=0),r?parseFloat(s):s},getPixel:function(e,t){var n=null,r=x(e),i=r.right,s=r[t];return e.style.right=s,n=e.style.pixelRight,e.style.right=i,n},getMargin:function(e,t){var r,i=x(e);return i[t]==o?r=0:r=T.getPixel(e,t),r+n},getVisibility:function(e,t){var n;while((n=e.currentStyle)&&n[t]=="inherit")e=e.parentNode;return n?n[t]:v},getColor:function(t,n){var r=x(t)[n];return(!r||r===d)&&e.DOM.elementByAxis(t,"parentNode",null,function(e){r=x(e)[n];if(r&&r!==d)return t=e,!0}),e.Color.toRGB(r)},getBorderColor:function(t,n){var r=x(t),i=r[n]||r.color;return e.Color.toRGB(e.Color.toHex(i))}},N={};w("style","computedStyle",{test:function(){return"getComputedStyle"in e.config.win}}),w("style","opacity",{test:function(){return"opacity"in y.style}}),w("style","filter",{test:function( -){return"filters"in y}}),!b("style","opacity")&&b("style","filter")&&(e.DOM.CUSTOM_STYLES[s]={get:function(e){var t=100;try{t=e[i]["DXImageTransform.Microsoft.Alpha"][s]}catch(n){try{t=e[i]("alpha")[s]}catch(r){}}return t/100},set:function(e,n,i){var o,u=x(e),a=u[r];i=i||e.style,n===""&&(o=s in u?u[s]:1,n=o),typeof a=="string"&&(i[r]=a.replace(/alpha([^)]*\))/gi,"")+(n<1?"alpha("+s+"="+n*100+")":""),i[r]||i.removeAttribute(r),u[t]||(i.zoom=1))}});try{e.config.doc.createElement("div").style.height="-1px"}catch(C){e.DOM.CUSTOM_STYLES.height={set:function(e,t,n){var r=parseFloat(t);if(r>=0||t==="auto"||t==="")n.height=t}},e.DOM.CUSTOM_STYLES.width={set:function(e,t,n){var r=parseFloat(t);if(r>=0||t==="auto"||t==="")n.width=t}}}b("style","computedStyle")||(N[h]=N[p]=T.getOffset,N.color=N.backgroundColor=T.getColor,N[u]=N[a]=N[f]=N[l]=N[c]=T.getBorderWidth,N.marginTop=N.marginRight=N.marginBottom=N.marginLeft=T.getMargin,N.visibility=T.getVisibility,N.borderColor=N.borderTopColor=N.borderRightColor=N.borderBottomColor=N.borderLeftColor=T.getBorderColor,e.DOM[m]=T.get,e.namespace("DOM.IE"),e.DOM.IE.COMPUTED=N,e.DOM.IE.ComputedStyle=T)})(e)},"@VERSION@",{requires:["dom-style"]}),YUI.add("dom-screen",function(e,t){(function(e){var t="documentElement",n="compatMode",r="position",i="fixed",s="relative",o="left",u="top",a="BackCompat",f="medium",l="borderLeftWidth",c="borderTopWidth",h="getBoundingClientRect",p="getComputedStyle",d=e.DOM,v=/^t(?:able|d|h)$/i,m;e.UA.ie&&(e.config.doc[n]!=="BackCompat"?m=t:m="body"),e.mix(d,{winHeight:function(e){var t=d._getWinSize(e).height;return t},winWidth:function(e){var t=d._getWinSize(e).width;return t},docHeight:function(e){var t=d._getDocSize(e).height;return Math.max(t,d._getWinSize(e).height)},docWidth:function(e){var t=d._getDocSize(e).width;return Math.max(t,d._getWinSize(e).width)},docScrollX:function(n,r){r=r||n?d._getDoc(n):e.config.doc;var i=r.defaultView,s=i?i.pageXOffset:0;return Math.max(r[t].scrollLeft,r.body.scrollLeft,s)},docScrollY:function(n,r){r=r||n?d._getDoc(n):e.config.doc;var i=r.defaultView,s=i?i.pageYOffset:0;return Math.max(r[t].scrollTop,r.body.scrollTop,s)},getXY:function(){return e.config.doc[t][h]?function(r){var i=null,s,o,u,f,l,c,p,v,g,y;if(r&&r.tagName){p=r.ownerDocument,u=p[n],u!==a?y=p[t]:y=p.body,y.contains?g=y.contains(r):g=e.DOM.contains(y,r);if(g){v=p.defaultView,v&&"pageXOffset"in v?(s=v.pageXOffset,o=v.pageYOffset):(s=m?p[m].scrollLeft:d.docScrollX(r,p),o=m?p[m].scrollTop:d.docScrollY(r,p)),e.UA.ie&&(!p.documentMode||p.documentMode<8||u===a)&&(l=y.clientLeft,c=y.clientTop),f=r[h](),i=[f.left,f.top];if(l||c)i[0]-=l,i[1]-=c;if(o||s)if(!e.UA.ios||e.UA.ios>=4.2)i[0]+=s,i[1]+=o}else i=d._getOffset(r)}return i}:function(t){var n=null,s,o,u,a,f;if(t)if(d.inDoc(t)){n=[t.offsetLeft,t.offsetTop],s=t.ownerDocument,o=t,u=e.UA.gecko||e.UA.webkit>519?!0:!1;while(o=o.offsetParent)n[0]+=o.offsetLeft,n[1]+=o.offsetTop,u&&(n=d._calcBorders(o,n));if(d.getStyle(t,r)!=i){o=t;while(o=o.parentNode){a=o.scrollTop,f=o.scrollLeft,e.UA.gecko&&d.getStyle(o,"overflow")!=="visible"&&(n=d._calcBorders(o,n));if(a||f)n[0]-=f,n[1]-=a}n[0]+=d.docScrollX(t,s),n[1]+=d.docScrollY(t,s)}else n[0]+=d.docScrollX(t,s),n[1]+=d.docScrollY(t,s)}else n=d._getOffset(t);return n}}(),getScrollbarWidth:e.cached(function(){var t=e.config.doc,n=t.createElement("div"),r=t.getElementsByTagName("body")[0],i=.1;return r&&(n.style.cssText="position:absolute;visibility:hidden;overflow:scroll;width:20px;",n.appendChild(t.createElement("p")).style.height="1px",r.insertBefore(n,r.firstChild),i=n.offsetWidth-n.clientWidth,r.removeChild(n)),i},null,.1),getX:function(e){return d.getXY(e)[0]},getY:function(e){return d.getXY(e)[1]},setXY:function(e,t,n){var i=d.setStyle,a,f,l,c;e&&t&&(a=d.getStyle(e,r),f=d._getOffset(e),a=="static"&&(a=s,i(e,r,a)),c=d.getXY(e),t[0]!==null&&i(e,o,t[0]-c[0]+f[0]+"px"),t[1]!==null&&i(e,u,t[1]-c[1]+f[1]+"px"),n||(l=d.getXY(e),(l[0]!==t[0]||l[1]!==t[1])&&d.setXY(e,t,!0)))},setX:function(e,t){return d.setXY(e,[t,null])},setY:function(e,t){return d.setXY(e,[null,t])},swapXY:function(e,t){var n=d.getXY(e);d.setXY(e,d.getXY(t)),d.setXY(t,n)},_calcBorders:function(t,n){var r=parseInt(d[p](t,c),10)||0,i=parseInt(d[p](t,l),10)||0;return e.UA.gecko&&v.test(t.tagName)&&(r=0,i=0),n[0]+=i,n[1]+=r,n},_getWinSize:function(r,i){i=i||r?d._getDoc(r):e.config.doc;var s=i.defaultView||i.parentWindow,o=i[n],u=s.innerHeight,a=s.innerWidth,f=i[t];return o&&!e.UA.opera&&(o!="CSS1Compat"&&(f=i.body),u=f.clientHeight,a=f.clientWidth),{height:u,width:a}},_getDocSize:function(r){var i=r?d._getDoc(r):e.config.doc,s=i[t];return i[n]!="CSS1Compat"&&(s=i.body),{height:s.scrollHeight,width:s.scrollWidth}}})})(e),function(e){var t="top",n="right",r="bottom",i="left",s=function(e,s){var o=Math.max(e[t],s[t]),u=Math.min(e[n],s[n]),a=Math.min(e[r],s[r]),f=Math.max(e[i],s[i]),l={};return l[t]=o,l[n]=u,l[r]=a,l[i]=f,l},o=e.DOM;e.mix(o,{region:function(e){var t=o.getXY(e),n=!1;return e&&t&&(n=o._getRegion(t[1],t[0]+e.offsetWidth,t[1]+e.offsetHeight,t[0])),n},intersect:function(u,a,f){var l=f||o.region(u),c={},h=a,p;if(h.tagName)c=o.region(h);else{if(!e.Lang.isObject(a))return!1;c=a}return p=s(c,l),{top:p[t],right:p[n],bottom:p[r],left:p[i],area:(p[r]-p[t])*(p[n]-p[i]),yoff:p[r]-p[t],xoff:p[n]-p[i],inRegion:o.inRegion(u,a,!1,f)}},inRegion:function(u,a,f,l){var c={},h=l||o.region(u),p=a,d;if(p.tagName)c=o.region(p);else{if(!e.Lang.isObject(a))return!1;c=a}return f?h[i]>=c[i]&&h[n]<=c[n]&&h[t]>=c[t]&&h[r]<=c[r]:(d=s(c,h),d[r]>=d[t]&&d[n]>=d[i]?!0:!1)},inViewportRegion:function(e,t,n){return o.inRegion(e,o.viewportRegion(e),t,n)},_getRegion:function(e,s,o,u){var a={};return a[t]=a[1]=e,a[i]=a[0]=u,a[r]=o,a[n]=s,a.width=a[n]-a[i],a.height=a[r]-a[t],a},viewportRegion:function(t){t=t||e.config.doc.documentElement;var n=!1,r,i;return t&&(r=o.docScrollX(t),i=o.docScrollY(t),n=o._getRegion(i,o.winWidth(t)+r,i+o.winHeight(t),r)),n}})}(e)},"@VERSION@",{requires:["dom-base","dom-style"]}),YUI.add("selector-native" -,function(e,t){(function(e){e.namespace("Selector");var t="compareDocumentPosition",n="ownerDocument",r={_types:{esc:{token:"\ue000",re:/\\[:\[\]\(\)#\.\'\>+~"]/gi},attr:{token:"\ue001",re:/(\[[^\]]*\])/g},pseudo:{token:"\ue002",re:/(\([^\)]*\))/g}},useNative:!0,_escapeId:function(e){return e&&(e=e.replace(/([:\[\]\(\)#\.'<>+~"])/g,"\\$1")),e},_compare:"sourceIndex"in e.config.doc.documentElement?function(e,t){var n=e.sourceIndex,r=t.sourceIndex;return n===r?0:n>r?1:-1}:e.config.doc.documentElement[t]?function(e,n){return e[t](n)&4?-1:1}:function(e,t){var r,i,s;return e&&t&&(r=e[n].createRange(),r.setStart(e,0),i=t[n].createRange(),i.setStart(t,0),s=r.compareBoundaryPoints(1,i)),s},_sort:function(t){return t&&(t=e.Array(t,0,!0),t.sort&&t.sort(r._compare)),t},_deDupe:function(e){var t=[],n,r;for(n=0;r=e[n++];)r._found||(t[t.length]=r,r._found=!0);for(n=0;r=t[n++];)r._found=null,r.removeAttribute("_found");return t},query:function(t,n,i,s){n=n||e.config.doc;var o=[],u=e.Selector.useNative&&e.config.doc.querySelector&&!s,a=[[t,n]],f,l,c,h=u?e.Selector._nativeQuery:e.Selector._bruteQuery;if(t&&h){!s&&(!u||n.tagName)&&(a=r._splitQueries(t,n));for(c=0;f=a[c++];)l=h(f[0],f[1],i),i||(l=e.Array(l,0,!0)),l&&(o=o.concat(l));a.length>1&&(o=r._sort(r._deDupe(o)))}return i?o[0]||null:o},_replaceSelector:function(t){var n=e.Selector._parse("esc",t),i,s;return t=e.Selector._replace("esc",t),s=e.Selector._parse("pseudo",t),t=r._replace("pseudo",t),i=e.Selector._parse("attr",t),t=e.Selector._replace("attr",t),{esc:n,attrs:i,pseudos:s,selector:t}},_restoreSelector:function(t){var n=t.selector;return n=e.Selector._restore("attr",n,t.attrs),n=e.Selector._restore("pseudo",n,t.pseudos),n=e.Selector._restore("esc",n,t.esc),n},_replaceCommas:function(t){var n=e.Selector._replaceSelector(t),t=n.selector;return t&&(t=t.replace(/,/g,"\ue007"),n.selector=t,t=e.Selector._restoreSelector(n)),t},_splitQueries:function(t,n){t.indexOf(",")>-1&&(t=e.Selector._replaceCommas(t));var r=t.split("\ue007"),i=[],s="",o,u,a;if(n){n.nodeType===1&&(o=e.Selector._escapeId(e.DOM.getId(n)),o||(o=e.guid(),e.DOM.setId(n,o)),s='[id="'+o+'"] ');for(u=0,a=r.length;u-1&&e.Selector.pseudos&&e.Selector.pseudos.checked)return e.Selector.query(t,n,r,!0);try{return n["querySelector"+(r?"":"All")](t)}catch(i){return e.Selector.query(t,n,r,!0)}},filter:function(t,n){var r=[],i,s;if(t&&n)for(i=0;s=t[i++];)e.Selector.test(s,n)&&(r[r.length]=s);return r},test:function(t,r,i){var s=!1,o=!1,u,a,f,l,c,h,p,d,v;if(t&&t.tagName)if(typeof r=="function")s=r.call(t,t);else{u=r.split(","),!i&&!e.DOM.inDoc(t)&&(a=t.parentNode,a?i=a:(c=t[n].createDocumentFragment(),c.appendChild(t),i=c,o=!0)),i=i||t[n],h=e.Selector._escapeId(e.DOM.getId(t)),h||(h=e.guid(),e.DOM.setId(t,h));for(p=0;v=u[p++];){v+='[id="'+h+'"]',l=e.Selector.query(v,i);for(d=0;f=l[d++];)if(f===t){s=!0;break}if(s)break}o&&c.removeChild(t)}return s},ancestor:function(t,n,r){return e.DOM.ancestor(t,function(t){return e.Selector.test(t,n)},r)},_parse:function(t,n){return n.match(e.Selector._types[t].re)},_replace:function(t,n){var r=e.Selector._types[t];return n.replace(r.re,r.token)},_restore:function(t,n,r){if(r){var i=e.Selector._types[t].token,s,o;for(s=0,o=r.length;s0),t||(typeof process=="object"&&process.versions&&process.versions.node&&(s.os=process.platform,s.nodejs=n(process.versions.node)),YUI.Env.UA=s),s},e.UA=YUI.Env.UA||YUI.Env.parseUA(),e.UA.compareVersions=function(e,t){var n,r,i,s,o,u;if(e===t)return 0;r=(e+"").split("."),s=(t+"").split(".");for(o=0,u=Math.max(r.length,s.length);oi)return 1}return 0},YUI.Env.aliases={anim:["anim-base","anim-color","anim-curve","anim-easing","anim-node-plugin","anim-scroll","anim-xy"],"anim-shape-transform":["anim-shape"],app:["app-base","app-content","app-transitions","lazy-model-list","model","model-list","model-sync-rest","router","view","view-node-map"],attribute:["attribute-base","attribute-complex"],"attribute-events":["attribute-observable"],autocomplete:["autocomplete-base","autocomplete-sources","autocomplete-list","autocomplete-plugin"],axes:["axis-numeric","axis-category","axis-time","axis-stacked"],"axes-base":["axis-numeric-base","axis-category-base","axis-time-base","axis-stacked-base"],base:["base-base","base-pluginhost","base-build"],cache:["cache-base","cache-offline","cache-plugin"],charts:["charts-base"],collection:["array-extras","arraylist","arraylist-add","arraylist-filter","array-invoke"],color:["color-base","color-hsl","color-harmony"],controller:["router"],dataschema:["dataschema-base","dataschema-json","dataschema-xml","dataschema-array","dataschema-text"],datasource:["datasource-local","datasource-io","datasource-get","datasource-function","datasource-cache","datasource-jsonschema","datasource-xmlschema","datasource-arrayschema","datasource-textschema","datasource-polling"],datatable:["datatable-core","datatable-table","datatable-head","datatable-body","datatable-base","datatable-column-widths","datatable-message","datatable-mutable","datatable-sort","datatable-datasource"],datatype:["datatype-date","datatype-number","datatype-xml"],"datatype-date":["datatype-date-parse","datatype-date-format","datatype-date-math"],"datatype-number":["datatype-number-parse","datatype-number-format"],"datatype-xml":["datatype-xml-parse","datatype-xml-format"],dd:["dd-ddm-base","dd-ddm","dd-ddm-drop","dd-drag","dd-proxy","dd-constrain","dd-drop","dd-scroll","dd-delegate"],dom:["dom-base","dom-screen","dom-style","selector-native","selector"],editor:["frame","editor-selection","exec-command","editor-base","editor-para","editor-br","editor-bidi","editor-tab","createlink-base"],event:["event-base","event-delegate","event-synthetic","event-mousewheel","event-mouseenter","event-key","event-focus","event-resize","event-hover","event-outside","event-touch","event-move","event-flick","event-valuechange","event-tap"],"event-custom":["event-custom-base","event-custom-complex"],"event-gestures":["event-flick","event-move"],handlebars:["handlebars-compiler"],highlight:["highlight-base","highlight-accentfold"],history:["history-base","history-hash","history-hash-ie","history-html5"],io:["io-base","io-xdr","io-form","io-upload-iframe","io-queue"],json:["json-parse","json-stringify"],loader:["loader-base","loader-rollup","loader-yui3"],node:["node-base","node-event-delegate","node-pluginhost","node-screen","node-style"],pluginhost:["pluginhost-base","pluginhost-config"],querystring:["querystring-parse","querystring-stringify"],recordset:["recordset-base","recordset-sort","recordset-filter","recordset-indexer"],resize:["resize-base","resize-proxy","resize-constrain"],slider:["slider-base","slider-value-range","clickable-rail","range-slider"],template:["template-base","template-micro"],text:["text-accentfold","text-wordbreak"],widget:["widget-base","widget-htmlparser","widget-skin","widget-uievents"]}},"3.12.0",{use:["get","features","intl-base","yui-log","yui-later"]}),YUI.add("get",function(e,t){var n=e.Lang,r,i,s;e.Get=i={cssOptions:{attributes:{rel:"stylesheet"},doc:e.config.linkDoc||e.config.doc,pollInterval:50},jsOptions:{autopurge:!0,doc:e.config.scriptDoc||e.config.doc},options:{attributes:{charset:"utf-8"},purgethreshold:20},REGEX_CSS:/\.css(?:[?;].*)?$/i,REGEX_JS:/\.js(?:[?;].*)?$/i,_insertCache:{},_pending:null,_purgeNodes:[],_queue:[],abort:function(e){var t,n,r,i,s;if(!e.abort){n=e,s=this._pending,e=null;if(s&&s.transaction.id===n)e=s.transaction,this._pending=null;else for(t=0,i=this._queue.length;t=e&&this._purge(this._purgeNodes)},_getEnv:function(){var t=e.config.doc,n=e.UA;return this._env={async:t&&t.createElement("script").async===!0||n.ie>=10,cssFail:n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0,cssLoad:(!n.gecko&&!n.webkit||n.gecko>=9||n.compareVersions(n.webkit,535.24)>=0)&&!(n.chrome&&n.chrome<=18),preservesScriptOrder:!!(n.gecko||n.opera||n.ie&&n.ie>=10)}},_getTransaction:function(t,r){var i=[ +],o,u,a,f;n.isArray(t)||(t=[t]),r=e.merge(this.options,r),r.attributes=e.merge(this.options.attributes,r.attributes);for(o=0,u=t.length;o-1&&n.splice(i,1))}}},i.script=i.js,i.Transaction=s=function(t,n){var r=this;r.id=s._lastId+=1,r.data=n.data,r.errors=[],r.nodes=[],r.options=n,r.requests=t,r._callbacks=[],r._queue=[],r._reqsWaiting=0,r.tId=r.id,r.win=n.win||e.config.win},s._lastId=0,s.prototype={_state:"new",abort:function(e){this._pending=null,this._pendingCSS=null,this._pollTimer=clearTimeout(this._pollTimer),this._queue=[],this._reqsWaiting=0,this.errors.push({error:e||"Aborted"}),this._finish()},execute:function(e){var t=this,n=t.requests,r=t._state,i,s,o,u;if(r==="done"){e&&e(t.errors.length?t.errors:null,t);return}e&&t._callbacks.push(e);if(r==="executing")return;t._state="executing",t._queue=o=[],t.options.timeout&&(t._timeout=setTimeout(function(){t.abort("Timeout")},t.options.timeout)),t._reqsWaiting=n.length;for(i=0,s=n.length;i=10?(o.onerror=function(){setTimeout(c,0)},o.onload=function(){setTimeout(h,0)}):(o.onerror=c,o.onload=h),!n.cssFail&&!s&&(f=setTimeout(c,t.timeout||3e3))),this.nodes.push(o),r.parentNode.insertBefore(o,r)},_next:function(){if(this._pending)return;this._queue.length?this._insert(this._queue.shift()):this._reqsWaiting||this._finish()},_poll:function(t){var n=this,r=n._pendingCSS,i=e.UA.webkit,s,o,u,a,f,l;if(t){r||(r=n._pendingCSS=[]),r.push(t);if(n._pollTimer)return}n._pollTimer=null;for(s=0;s=0)if(l[u].href===a){r.splice(s,1),s-=1,n._progress(null,f);break}}else try{o=!!f.node.sheet.cssRules,r.splice(s,1),s-=1,n._progress(null,f)}catch(c){}}r.length&&(n._pollTimer=setTimeout(function(){n._poll.call(n)},n.options.pollInterval))},_progress:function(e,t){var n=this.options;e&&(t.error=e,this.errors.push({error:e,request:t})),t.node._yuiget_finished=t.finished=!0,n.onProgress&&n.onProgress.call(n.context||this,this._getEventData(t)),t.autopurge&&(i._autoPurge(this.options.purgethreshold),i._purgeNodes.push(t.node)),this._pending===t&&(this._pending=null),this._reqsWaiting-=1,this._next()}}},"3.12.0",{requires:["yui-base"]}),YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions" +}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"3.12.0",{requires:["yui-base"]}),YUI.add("intl-base",function(e,t){var n=/[, ]/;e.mix(e.namespace("Intl"),{lookupBestLang:function(t,r){function a(e){var t;for(t=0;t0){o=a(s);if(o)return o;u=s.lastIndexOf("-");if(!(u>=0))break;s=s.substring(0,u),u>=2&&s.charAt(u-2)==="-"&&(s=s.substring(0,u-2))}}return""}})},"3.12.0",{requires:["yui-base"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:2,warn:4,error:8};n.log=function(e,t,o,u){var a,f,l,c,h,p,d=n,v=d.config,m=d.fire?d:YUI.Env.globalEvents;return v.debug&&(o=o||"",typeof o!="undefined"&&(f=v.logExclude,l=v.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1,d.config.logLevel=d.config.logLevel||"debug",p=s[d.config.logLevel.toLowerCase()],t in s&&s[t]2?e.Array(arguments,2,!0):null;return function(){var s=n.isString(t)?r[t]:t,o=i?i.concat(e.Array(arguments,0,!0)):arguments;return s.apply(r||s,o)}},e.rbind=function(t,r){var i=arguments.length>2?e.Array(arguments,2,!0):null;return function(){var s=n.isString(t)?r[t]:t,o=i?e.Array(arguments,0,!0).concat(i):arguments;return s.apply(r||s,o)}}},"3.12.0",{requires:["yui-base"]}),YUI.add("features",function(e,t){var n={};e.mix(e.namespace("Features"),{tests:n,add:function(e,t,r){n[e]=n[e]||{},n[e][t]=r},all:function(t,r){var i=n[t],s=[];return i&&e.Object.each(i,function(n,i){s.push(i+":"+(e.Features.test(t,i,r)?1:0))}),s.length?s.join(";"):""},test:function(t,r,i){i=i||[];var s,o,u,a=n[t],f=a&&a[r];return!f||(s=f.result,e.Lang.isUndefined(s)&&(o=f.ua,o&&(s=e.UA[o]),u=f.test,u&&(!o||s)&&(s=u.apply(e,i)),f.result=s)),s}});var r=e.Features.add;r("load","0",{name:"app-transitions-native",test:function(e){var t=e.config.doc,n=t?t.documentElement:null;return n&&n.style?"MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style:!1},trigger:"app-transitions"}),r("load","1",{name:"autocomplete-list-keys",test:function(e){return!e.UA.ios&&!e.UA.android},trigger:"autocomplete-list"}),r("load","2",{name:"dd-gestures",trigger:"dd-drag",ua:"touchEnabled"}),r("load","3",{name:"dom-style-ie",test:function(e){var t=e.Features.test,n=e.Features.add,r=e.config.win,i=e.config.doc,s="documentElement",o=!1;return n("style","computedStyle",{test:function(){return r&&"getComputedStyle"in r}}),n("style","opacity",{test:function(){return i&&"opacity"in i[s].style}}),o=!t("style","opacity")&&!t("style","computedStyle"),o},trigger:"dom-style"}),r("load","4",{name:"editor-para-ie",trigger:"editor-para",ua:"ie",when:"instead"}),r("load","5",{name:"event-base-ie",test:function(e){var t=e.config.doc&&e.config.doc.implementation;return t&&!t.hasFeature("Events","2.0")},trigger:"node-base"}),r("load","6",{name:"graphics-canvas",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","7",{name:"graphics-canvas-default",test:function(e){var t=e.config.doc,n=e.config.defaultGraphicEngine&&e.config.defaultGraphicEngine=="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return(!i||n)&&r&&r.getContext&&r.getContext("2d")},trigger:"graphics"}),r("load","8",{name:"graphics-svg",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","9",{name:"graphics-svg-default",test:function(e){var t=e.config.doc,n=!e.config.defaultGraphicEngine||e.config.defaultGraphicEngine!="canvas",r=t&&t.createElement("canvas"),i=t&&t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");return i&&(n||!r)},trigger:"graphics"}),r("load","10",{name:"graphics-vml",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","11",{name:"graphics-vml-default",test:function(e){var t=e.config.doc,n=t&&t.createElement("canvas");return t&&!t.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")&&(!n||!n.getContext||!n.getContext("2d"))},trigger:"graphics"}),r("load","12",{name:"history-hash-ie",test:function(e){var t=e.config.doc&&e.config.doc.documentMode;return e.UA.ie&&(!("onhashchange"in e.config.win)||!t||t<8)},trigger:"history-hash"}),r("load","13",{name:"io-nodejs",trigger:"io-base",ua:"nodejs"}),r("load","14",{name +:"json-parse-shim",test:function(e){function i(e,t){return e==="ok"?!0:t}var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONParse!==!1&&!!n;if(r)try{r=n.parse('{"ok":false}',i).ok}catch(s){r=!1}return!r},trigger:"json-parse"}),r("load","15",{name:"json-stringify-shim",test:function(e){var t=e.config.global.JSON,n=Object.prototype.toString.call(t)==="[object JSON]"&&t,r=e.config.useNativeJSONStringify!==!1&&!!n;if(r)try{r="0"===n.stringify(0)}catch(i){r=!1}return!r},trigger:"json-stringify"}),r("load","16",{name:"scrollview-base-ie",trigger:"scrollview-base",ua:"ie"}),r("load","17",{name:"selector-css2",test:function(e){var t=e.config.doc,n=t&&!("querySelectorAll"in t);return n},trigger:"selector"}),r("load","18",{name:"transition-timer",test:function(e){var t=e.config.doc,n=t?t.documentElement:null,r=!0;return n&&n.style&&(r=!("MozTransition"in n.style||"WebkitTransition"in n.style||"transition"in n.style)),r},trigger:"transition"}),r("load","19",{name:"widget-base-ie",trigger:"widget-base",ua:"ie"}),r("load","20",{name:"yql-jsonp",test:function(e){return!e.UA.nodejs&&!e.UA.winjs},trigger:"yql",when:"after"}),r("load","21",{name:"yql-nodejs",trigger:"yql",ua:"nodejs",when:"after"}),r("load","22",{name:"yql-winjs",trigger:"yql",ua:"winjs",when:"after"})},"3.12.0",{requires:["yui-base"]}),YUI.add("dom-core",function(e,t){var n="nodeType",r="ownerDocument",i="documentElement",s="defaultView",o="parentWindow",u="tagName",a="parentNode",f="previousSibling",l="nextSibling",c="contains",h="compareDocumentPosition",p=[],d=function(){var t=e.config.doc.createElement("div"),n=t.appendChild(e.config.doc.createTextNode("")),r=!1;try{r=t.contains(n)}catch(i){}return r}(),v={byId:function(e,t){return v.allById(e,t)[0]||null},getId:function(e){var t;return e.id&&!e.id.tagName&&!e.id.item?t=e.id:e.attributes&&e.attributes.id&&(t=e.attributes.id.value),t},setId:function(e,t){e.setAttribute?e.setAttribute("id",t):e.id=t},ancestor:function(e,t,n,r){var i=null;return n&&(i=!t||t(e)?e:null),i||v.elementByAxis(e,a,t,null,r)},ancestors:function(e,t,n,r){var i=e,s=[];while(i=v.ancestor(i,t,n,r)){n=!1;if(i){s.unshift(i);if(r&&r(i))return s}}return s},elementByAxis:function(e,t,n,r,i){while(e&&(e=e[t])){if((r||e[u])&&(!n||n(e)))return e;if(i&&i(e))return null}return null},contains:function(e,t){var r=!1;if(!t||!e||!t[n]||!e[n])r=!1;else if(e[c]&&(t[n]===1||d))r=e[c](t);else if(e[h]){if(e===t||!!(e[h](t)&16))r=!0}else r=v._bruteContains(e,t);return r},inDoc:function(e,t){var n=!1,s;return e&&e.nodeType&&(t||(t=e[r]),s=t[i],s&&s.contains&&e.tagName?n=s.contains(e):n=v.contains(s,e)),n},allById:function(t,n){n=n||e.config.doc;var r=[],i=[],s,o;if(n.querySelectorAll)i=n.querySelectorAll('[id="'+t+'"]');else if(n.all){r=n.all(t);if(r){r.nodeName&&(r.id===t?(i.push(r),r=p):r=[r]);if(r.length)for(s=0;o=r[s++];)(o.id===t||o.attributes&&o.attributes.id&&o.attributes.id.value===t)&&i.push(o)}}else i=[v._getDoc(n).getElementById(t)];return i},isWindow:function(e){return!!(e&&e.scrollTo&&e.document)},_removeChildNodes:function(e){while(e.firstChild)e.removeChild(e.firstChild)},siblings:function(e,t){var n=[],r=e;while(r=r[f])r[u]&&(!t||t(r))&&n.unshift(r);r=e;while(r=r[l])r[u]&&(!t||t(r))&&n.push(r);return n},_bruteContains:function(e,t){while(t){if(e===t)return!0;t=t.parentNode}return!1},_getRegExp:function(e,t){return t=t||"",v._regexCache=v._regexCache||{},v._regexCache[e+t]||(v._regexCache[e+t]=new RegExp(e,t)),v._regexCache[e+t]},_getDoc:function(t){var i=e.config.doc;return t&&(i=t[n]===9?t:t[r]||t.document||e.config.doc),i},_getWin:function(t){var n=v._getDoc(t);return n[s]||n[o]||e.config.win},_batch:function(e,t,n,r,i,s){t=typeof t=="string"?v[t]:t;var o,u=0,a,f;if(t&&e)while(a=e[u++])o=o=t.call(v,a,n,r,i,s),typeof o!="undefined"&&(f||(f=[]),f.push(o));return typeof f!="undefined"?f:e},generateID:function(t){var n=t.id;return n||(n=e.stamp(t),t.id=n),n}};e.DOM=v},"3.12.0",{requires:["oop","features"]}),YUI.add("dom-base",function(e,t){var n=e.config.doc.documentElement,r=e.DOM,i="tagName",s="ownerDocument",o="",u=e.Features.add,a=e.Features.test;e.mix(r,{getText:n.textContent!==undefined?function(e){var t="";return e&&(t=e.textContent),t||""}:function(e){var t="";return e&&(t=e.innerText||e.nodeValue),t||""},setText:n.textContent!==undefined?function(e,t){e&&(e.textContent=t)}:function(e,t){"innerText"in e?e.innerText=t:"nodeValue"in e&&(e.nodeValue=t)},CUSTOM_ATTRIBUTES:n.hasAttribute?{htmlFor:"for",className:"class"}:{"for":"htmlFor","class":"className"},setAttribute:function(e,t,n,i){e&&t&&e.setAttribute&&(t=r.CUSTOM_ATTRIBUTES[t]||t,e.setAttribute(t,n,i))},getAttribute:function(e,t,n){n=n!==undefined?n:2;var i="";return e&&t&&e.getAttribute&&(t=r.CUSTOM_ATTRIBUTES[t]||t,i=e.getAttribute(t,n),i===null&&(i="")),i},VALUE_SETTERS:{},VALUE_GETTERS:{},getValue:function(e){var t="",n;return e&&e[i]&&(n=r.VALUE_GETTERS[e[i].toLowerCase()],n?t=n(e):t=e.value),t===o&&(t=o),typeof t=="string"?t:""},setValue:function(e,t){var n;e&&e[i]&&(n=r.VALUE_SETTERS[e[i].toLowerCase()],n?n(e,t):e.value=t)},creators:{}}),u("value-set","select",{test:function(){var t=e.config.doc.createElement("select");return t.innerHTML="",t.value="2",t.value&&t.value==="2"}}),a("value-set","select")||(r.VALUE_SETTERS.select=function(e,t){for(var n=0,i=e.getElementsByTagName("option"),s;s=i[n++];)if(r.getValue(s)===t){s.selected=!0;break}}),e.mix(r.VALUE_GETTERS,{button:function(e){return e.attributes&&e.attributes.value?e.attributes.value.value:""}}),e.mix(r.VALUE_SETTERS,{button:function(e,t){var n=e.attributes.value;n||(n=e[s].createAttribute("value"),e.setAttributeNode(n)),n.value=t}}),e.mix(r.VALUE_GETTERS,{option:function(e){var t=e.attributes;return t.value&&t.value.specified?e.value:e.text},select:function(e){var t=e.value,n=e.options;return n&&n.length&&(e.multiple||e.selectedIndex>-1&&(t=r.getValue(n[e.selectedIndex]))),t}});var f,l,c;e.mix(e.DOM +,{hasClass:function(t,n){var r=e.DOM._getRegExp("(?:^|\\s+)"+n+"(?:\\s+|$)");return r.test(t.className)},addClass:function(t,n){e.DOM.hasClass(t,n)||(t.className=e.Lang.trim([t.className,n].join(" ")))},removeClass:function(t,n){n&&l(t,n)&&(t.className=e.Lang.trim(t.className.replace(e.DOM._getRegExp("(?:^|\\s+)"+n+"(?:\\s+|$)")," ")),l(t,n)&&c(t,n))},replaceClass:function(e,t,n){c(e,t),f(e,n)},toggleClass:function(e,t,n){var r=n!==undefined?n:!l(e,t);r?f(e,t):c(e,t)}}),l=e.DOM.hasClass,c=e.DOM.removeClass,f=e.DOM.addClass;var h=/<([a-z]+)/i,r=e.DOM,u=e.Features.add,a=e.Features.test,p={},d=function(t,n){var r=e.config.doc.createElement("div"),i=!0;r.innerHTML=t;if(!r.firstChild||r.firstChild.tagName!==n.toUpperCase())i=!1;return i},v=/(?:\/(?:thead|tfoot|tbody|caption|col|colgroup)>)+\s*"}catch(n){return!1}return t.firstChild&&t.firstChild.nodeName==="TBODY"}}),u("innerhtml-div","tr",{test:function(){return d("","tr")}}),u("innerhtml-div","script",{test:function(){return d("","script")}}),a("innerhtml","table")||(p.tbody=function(t,n){var i=r.create(m+t+g,n),s=e.DOM._children(i,"tbody")[0];return i.children.length>1&&s&&!v.test(t)&&s.parentNode.removeChild(s),i}),a("innerhtml-div","script")||(p.script=function(e,t){var n=t.createElement("div");return n.innerHTML="-"+e,n.removeChild(n.firstChild),n},p.link=p.style=p.script),a("innerhtml-div","tr")||(e.mix(p,{option:function(e,t){return r.create('",t)},tr:function(e,t){return r.create(""+e+"",t)},td:function(e,t){return r.create(""+e+"",t)},col:function(e,t){return r.create(""+e+"",t)},tbody:"table"}),e.mix(p,{legend:"fieldset",th:p.td,thead:p.tbody,tfoot:p.tbody,caption:p.tbody,colgroup:p.tbody,optgroup:p.option})),r.creators=p,e.mix(e.DOM,{setWidth:function(t,n){e.DOM._setSize(t,"width",n)},setHeight:function(t,n){e.DOM._setSize(t,"height",n)},_setSize:function(e,t,n){n=n>0?n:0;var r=0;e.style[t]=n+"px",r=t==="height"?e.offsetHeight:e.offsetWidth,r>n&&(n-=r-n,n<0&&(n=0),e.style[t]=n+"px")}})},"3.12.0",{requires:["dom-core"]}),YUI.add("color-base",function(e,t){var n=/^#?([\da-fA-F]{2})([\da-fA-F]{2})([\da-fA-F]{2})(\ufffe)?/,r=/^#?([\da-fA-F]{1})([\da-fA-F]{1})([\da-fA-F]{1})(\ufffe)?/,i=/rgba?\(([\d]{1,3}), ?([\d]{1,3}), ?([\d]{1,3}),? ?([.\d]*)?\)/,s={HEX:"hex",RGB:"rgb",RGBA:"rgba"},o={hex:"toHex",rgb:"toRGB",rgba:"toRGBA"};e.Color={KEYWORDS:{black:"000",silver:"c0c0c0",gray:"808080",white:"fff",maroon:"800000",red:"f00",purple:"800080",fuchsia:"f0f",green:"008000",lime:"0f0",olive:"808000",yellow:"ff0",navy:"000080",blue:"00f",teal:"008080",aqua:"0ff"},REGEX_HEX:n,REGEX_HEX3:r,REGEX_RGB:i,re_RGB:i,re_hex:n,re_hex3:r,STR_HEX:"#{*}{*}{*}",STR_RGB:"rgb({*}, {*}, {*})",STR_RGBA:"rgba({*}, {*}, {*}, {*})",TYPES:s,CONVERTS:o,convert:function(t,n){var r=e.Color.CONVERTS[n.toLowerCase()],i=t;return r&&e.Color[r]&&(i=e.Color[r](t)),i},toHex:function(t){var n=e.Color._convertTo(t,"hex"),r=n.toLowerCase()==="transparent";return n.charAt(0)!=="#"&&!r&&(n="#"+n),r?n.toLowerCase():n.toUpperCase()},toRGB:function(t){var n=e.Color._convertTo(t,"rgb");return n.toLowerCase()},toRGBA:function(t){var n=e.Color._convertTo(t,"rgba");return n.toLowerCase()},toArray:function(t){var n=e.Color.findType(t).toUpperCase(),r,i,s,o;return n==="HEX"&&t.length<5&&(n="HEX3"),n.charAt(n.length-1)==="A"&&(n=n.slice(0,-1)),r=e.Color["REGEX_"+n],r&&(i=r.exec(t)||[],s=i.length,s&&(i.shift(),s--,n==="HEX3"&&(i[0]+=i[0],i[1]+=i[1],i[2]+=i[2]),o=i[s-1],o||(i[s-1]=1))),i},fromArray:function(t,n){t=t.concat();if(typeof n=="undefined")return t.join(", ");var r="{*}";n=e.Color["STR_"+n.toUpperCase()],t.length===3&&n.match(/\{\*\}/g).length===4&&t.push(1);while(n.indexOf(r)>=0&&t.length>0)n=n.replace(r,t.shift());return n},findType +:function(t){if(e.Color.KEYWORDS[t])return"keyword";var n=t.indexOf("("),r;return n>0&&(r=t.substr(0,n)),r&&e.Color.TYPES[r.toUpperCase()]?e.Color.TYPES[r.toUpperCase()]:"hex"},_getAlpha:function(t){var n,r=e.Color.toArray(t);return r.length>3&&(n=r.pop()),+n||1},_keywordToHex:function(t){var n=e.Color.KEYWORDS[t];if(n)return n},_convertTo:function(t,n){if(t==="transparent")return t;var r=e.Color.findType(t),i=n,s,o,u,a;return r==="keyword"&&(t=e.Color._keywordToHex(t),r="hex"),r==="hex"&&t.length<5&&(t.charAt(0)==="#"&&(t=t.substr(1)),t="#"+t.charAt(0)+t.charAt(0)+t.charAt(1)+t.charAt(1)+t.charAt(2)+t.charAt(2)),r===n?t:(r.charAt(r.length-1)==="a"&&(r=r.slice(0,-1)),s=n.charAt(n.length-1)==="a",s&&(n=n.slice(0,-1),o=e.Color._getAlpha(t)),a=n.charAt(0).toUpperCase()+n.substr(1).toLowerCase(),u=e.Color["_"+r+"To"+a],u||r!=="rgb"&&n!=="rgb"&&(t=e.Color["_"+r+"ToRgb"](t),r="rgb",u=e.Color["_"+r+"To"+a]),u&&(t=u(t,s)),s&&(e.Lang.isArray(t)||(t=e.Color.toArray(t)),t.push(o),t=e.Color.fromArray(t,i.toUpperCase())),t)},_hexToRgb:function(e,t){var n,r,i;return e.charAt(0)==="#"&&(e=e.substr(1)),e=parseInt(e,16),n=e>>16,r=e>>8&255,i=e&255,t?[n,r,i]:"rgb("+n+", "+r+", "+i+")"},_rgbToHex:function(t){var n=e.Color.toArray(t),r=n[2]|n[1]<<8|n[0]<<16;r=(+r).toString(16);while(r.length<6)r="0"+r;return"#"+r}}},"3.12.0",{requires:["yui-base"]}),YUI.add("dom-style",function(e,t){(function(e){var t="documentElement",n="defaultView",r="ownerDocument",i="style",s="float",o="cssFloat",u="styleFloat",a="transparent",f="getComputedStyle",l="getBoundingClientRect",c=e.config.win,h=e.config.doc,p=undefined,d=e.DOM,v="transform",m="transformOrigin",g=["WebkitTransform","MozTransform","OTransform","msTransform"],y=/color$/i,b=/width|height|top|left|right|bottom|margin|padding/i;e.Array.each(g,function(e){e in h[t].style&&(v=e,m=e+"Origin")}),e.mix(d,{DEFAULT_UNIT:"px",CUSTOM_STYLES:{},setStyle:function(e,t,n,r){r=r||e.style;var i=d.CUSTOM_STYLES;if(r){n===null||n===""?n="":!isNaN(new Number(n))&&b.test(t)&&(n+=d.DEFAULT_UNIT);if(t in i){if(i[t].set){i[t].set(e,n,r);return}typeof i[t]=="string"&&(t=i[t])}else t===""&&(t="cssText",n="");r[t]=n}},getStyle:function(e,t,n){n=n||e.style;var r=d.CUSTOM_STYLES,i="";if(n){if(t in r){if(r[t].get)return r[t].get(e,t,n);typeof r[t]=="string"&&(t=r[t])}i=n[t],i===""&&(i=d[f](e,t))}return i},setStyles:function(t,n){var r=t.style;e.each(n,function(e,n){d.setStyle(t,n,e,r)},d)},getComputedStyle:function(e,t){var s="",o=e[r],u;return e[i]&&o[n]&&o[n][f]&&(u=o[n][f](e,null),u&&(s=u[t])),s}}),h[t][i][o]!==p?d.CUSTOM_STYLES[s]=o:h[t][i][u]!==p&&(d.CUSTOM_STYLES[s]=u),e.UA.opera&&(d[f]=function(t,i){var s=t[r][n],o=s[f](t,"")[i];return y.test(i)&&(o=e.Color.toRGB(o)),o}),e.UA.webkit&&(d[f]=function(e,t){var i=e[r][n],s=i[f](e,"")[t];return s==="rgba(0, 0, 0, 0)"&&(s=a),s}),e.DOM._getAttrOffset=function(t,n){var r=e.DOM[f](t,n),i=t.offsetParent,s,o,u;return r==="auto"&&(s=e.DOM.getStyle(t,"position"),s==="static"||s==="relative"?r=0:i&&i[l]&&(o=i[l]()[n],u=t[l]()[n],n==="left"||n==="top"?r=u-o:r=o-t[l]()[n])),r},e.DOM._getOffset=function(e){var t,n=null;return e&&(t=d.getStyle(e,"position"),n=[parseInt(d[f](e,"left"),10),parseInt(d[f](e,"top"),10)],isNaN(n[0])&&(n[0]=parseInt(d.getStyle(e,"left"),10),isNaN(n[0])&&(n[0]=t==="relative"?0:e.offsetLeft||0)),isNaN(n[1])&&(n[1]=parseInt(d.getStyle(e,"top"),10),isNaN(n[1])&&(n[1]=t==="relative"?0:e.offsetTop||0))),n},d.CUSTOM_STYLES.transform={set:function(e,t,n){n[v]=t},get:function(e,t){return d[f](e,v)}},d.CUSTOM_STYLES.transformOrigin={set:function(e,t,n){n[m]=t},get:function(e,t){return d[f](e,m)}}})(e)},"3.12.0",{requires:["dom-base","color-base"]}),YUI.add("dom-style-ie",function(e,t){(function(e){var t="hasLayout",n="px",r="filter",i="filters",s="opacity",o="auto",u="borderWidth",a="borderTopWidth",f="borderRightWidth",l="borderBottomWidth",c="borderLeftWidth",h="width",p="height",d="transparent",v="visible",m="getComputedStyle",g=undefined,y=e.config.doc.documentElement,b=e.Features.test,w=e.Features.add,E=/^(\d[.\d]*)+(em|ex|px|gd|rem|vw|vh|vm|ch|mm|cm|in|pt|pc|deg|rad|ms|s|hz|khz|%){1}?/i,S=e.UA.ie>=8,x=function(e){return e.currentStyle||e.style},T={CUSTOM_STYLES:{},get:function(t,r){var i="",o;return t&&(o=x(t)[r],r===s&&e.DOM.CUSTOM_STYLES[s]?i=e.DOM.CUSTOM_STYLES[s].get(t):!o||o.indexOf&&o.indexOf(n)>-1?i=o:e.DOM.IE.COMPUTED[r]?i=e.DOM.IE.COMPUTED[r](t,r):E.test(o)?i=T.getPixel(t,r)+n:i=o),i},sizeOffsets:{width:["Left","Right"],height:["Top","Bottom"],top:["Top"],bottom:["Bottom"]},getOffset:function(e,t){var r=x(e)[t],i=t.charAt(0).toUpperCase()+t.substr(1),s="offset"+i,u="pixel"+i,a=T.sizeOffsets[t],f=e.ownerDocument.compatMode,l="";return r===o||r.indexOf("%")>-1?(l=e["offset"+i],f!=="BackCompat"&&(a[0]&&(l-=T.getPixel(e,"padding"+a[0]),l-=T.getBorderWidth(e,"border"+a[0]+"Width",1)),a[1]&&(l-=T.getPixel(e,"padding"+a[1]),l-=T.getBorderWidth(e,"border"+a[1]+"Width",1)))):(!e.style[u]&&!e.style[t]&&(e.style[t]=r),l=e.style[u]),l+n},borderMap:{thin:S?"1px":"2px",medium:S?"3px":"4px",thick:S?"5px":"6px"},getBorderWidth:function(e,t,r){var i=r?"":n,s=e.currentStyle[t];return s.indexOf(n)<0&&(T.borderMap[s]&&e.currentStyle.borderStyle!=="none"?s=T.borderMap[s]:s=0),r?parseFloat(s):s},getPixel:function(e,t){var n=null,r=x(e),i=r.right,s=r[t];return e.style.right=s,n=e.style.pixelRight,e.style.right=i,n},getMargin:function(e,t){var r,i=x(e);return i[t]==o?r=0:r=T.getPixel(e,t),r+n},getVisibility:function(e,t){var n;while((n=e.currentStyle)&&n[t]=="inherit")e=e.parentNode;return n?n[t]:v},getColor:function(t,n){var r=x(t)[n];return(!r||r===d)&&e.DOM.elementByAxis(t,"parentNode",null,function(e){r=x(e)[n];if(r&&r!==d)return t=e,!0}),e.Color.toRGB(r)},getBorderColor:function(t,n){var r=x(t),i=r[n]||r.color;return e.Color.toRGB(e.Color.toHex(i))}},N={};w("style","computedStyle",{test:function(){return"getComputedStyle"in e.config.win}}),w("style","opacity",{test:function(){return"opacity"in y.style}}),w("style","filter",{test:function( +){return"filters"in y}}),!b("style","opacity")&&b("style","filter")&&(e.DOM.CUSTOM_STYLES[s]={get:function(e){var t=100;try{t=e[i]["DXImageTransform.Microsoft.Alpha"][s]}catch(n){try{t=e[i]("alpha")[s]}catch(r){}}return t/100},set:function(e,n,i){var o,u=x(e),a=u[r];i=i||e.style,n===""&&(o=s in u?u[s]:1,n=o),typeof a=="string"&&(i[r]=a.replace(/alpha([^)]*\))/gi,"")+(n<1?"alpha("+s+"="+n*100+")":""),i[r]||i.removeAttribute(r),u[t]||(i.zoom=1))}});try{e.config.doc.createElement("div").style.height="-1px"}catch(C){e.DOM.CUSTOM_STYLES.height={set:function(e,t,n){var r=parseFloat(t);if(r>=0||t==="auto"||t==="")n.height=t}},e.DOM.CUSTOM_STYLES.width={set:function(e,t,n){var r=parseFloat(t);if(r>=0||t==="auto"||t==="")n.width=t}}}b("style","computedStyle")||(N[h]=N[p]=T.getOffset,N.color=N.backgroundColor=T.getColor,N[u]=N[a]=N[f]=N[l]=N[c]=T.getBorderWidth,N.marginTop=N.marginRight=N.marginBottom=N.marginLeft=T.getMargin,N.visibility=T.getVisibility,N.borderColor=N.borderTopColor=N.borderRightColor=N.borderBottomColor=N.borderLeftColor=T.getBorderColor,e.DOM[m]=T.get,e.namespace("DOM.IE"),e.DOM.IE.COMPUTED=N,e.DOM.IE.ComputedStyle=T)})(e)},"3.12.0",{requires:["dom-style"]}),YUI.add("dom-screen",function(e,t){(function(e){var t="documentElement",n="compatMode",r="position",i="fixed",s="relative",o="left",u="top",a="BackCompat",f="medium",l="borderLeftWidth",c="borderTopWidth",h="getBoundingClientRect",p="getComputedStyle",d=e.DOM,v=/^t(?:able|d|h)$/i,m;e.UA.ie&&(e.config.doc[n]!=="BackCompat"?m=t:m="body"),e.mix(d,{winHeight:function(e){var t=d._getWinSize(e).height;return t},winWidth:function(e){var t=d._getWinSize(e).width;return t},docHeight:function(e){var t=d._getDocSize(e).height;return Math.max(t,d._getWinSize(e).height)},docWidth:function(e){var t=d._getDocSize(e).width;return Math.max(t,d._getWinSize(e).width)},docScrollX:function(n,r){r=r||n?d._getDoc(n):e.config.doc;var i=r.defaultView,s=i?i.pageXOffset:0;return Math.max(r[t].scrollLeft,r.body.scrollLeft,s)},docScrollY:function(n,r){r=r||n?d._getDoc(n):e.config.doc;var i=r.defaultView,s=i?i.pageYOffset:0;return Math.max(r[t].scrollTop,r.body.scrollTop,s)},getXY:function(){return e.config.doc[t][h]?function(r){var i=null,s,o,u,f,l,c,p,v,g,y;if(r&&r.tagName){p=r.ownerDocument,u=p[n],u!==a?y=p[t]:y=p.body,y.contains?g=y.contains(r):g=e.DOM.contains(y,r);if(g){v=p.defaultView,v&&"pageXOffset"in v?(s=v.pageXOffset,o=v.pageYOffset):(s=m?p[m].scrollLeft:d.docScrollX(r,p),o=m?p[m].scrollTop:d.docScrollY(r,p)),e.UA.ie&&(!p.documentMode||p.documentMode<8||u===a)&&(l=y.clientLeft,c=y.clientTop),f=r[h](),i=[f.left,f.top];if(l||c)i[0]-=l,i[1]-=c;if(o||s)if(!e.UA.ios||e.UA.ios>=4.2)i[0]+=s,i[1]+=o}else i=d._getOffset(r)}return i}:function(t){var n=null,s,o,u,a,f;if(t)if(d.inDoc(t)){n=[t.offsetLeft,t.offsetTop],s=t.ownerDocument,o=t,u=e.UA.gecko||e.UA.webkit>519?!0:!1;while(o=o.offsetParent)n[0]+=o.offsetLeft,n[1]+=o.offsetTop,u&&(n=d._calcBorders(o,n));if(d.getStyle(t,r)!=i){o=t;while(o=o.parentNode){a=o.scrollTop,f=o.scrollLeft,e.UA.gecko&&d.getStyle(o,"overflow")!=="visible"&&(n=d._calcBorders(o,n));if(a||f)n[0]-=f,n[1]-=a}n[0]+=d.docScrollX(t,s),n[1]+=d.docScrollY(t,s)}else n[0]+=d.docScrollX(t,s),n[1]+=d.docScrollY(t,s)}else n=d._getOffset(t);return n}}(),getScrollbarWidth:e.cached(function(){var t=e.config.doc,n=t.createElement("div"),r=t.getElementsByTagName("body")[0],i=.1;return r&&(n.style.cssText="position:absolute;visibility:hidden;overflow:scroll;width:20px;",n.appendChild(t.createElement("p")).style.height="1px",r.insertBefore(n,r.firstChild),i=n.offsetWidth-n.clientWidth,r.removeChild(n)),i},null,.1),getX:function(e){return d.getXY(e)[0]},getY:function(e){return d.getXY(e)[1]},setXY:function(e,t,n){var i=d.setStyle,a,f,l,c;e&&t&&(a=d.getStyle(e,r),f=d._getOffset(e),a=="static"&&(a=s,i(e,r,a)),c=d.getXY(e),t[0]!==null&&i(e,o,t[0]-c[0]+f[0]+"px"),t[1]!==null&&i(e,u,t[1]-c[1]+f[1]+"px"),n||(l=d.getXY(e),(l[0]!==t[0]||l[1]!==t[1])&&d.setXY(e,t,!0)))},setX:function(e,t){return d.setXY(e,[t,null])},setY:function(e,t){return d.setXY(e,[null,t])},swapXY:function(e,t){var n=d.getXY(e);d.setXY(e,d.getXY(t)),d.setXY(t,n)},_calcBorders:function(t,n){var r=parseInt(d[p](t,c),10)||0,i=parseInt(d[p](t,l),10)||0;return e.UA.gecko&&v.test(t.tagName)&&(r=0,i=0),n[0]+=i,n[1]+=r,n},_getWinSize:function(r,i){i=i||r?d._getDoc(r):e.config.doc;var s=i.defaultView||i.parentWindow,o=i[n],u=s.innerHeight,a=s.innerWidth,f=i[t];return o&&!e.UA.opera&&(o!="CSS1Compat"&&(f=i.body),u=f.clientHeight,a=f.clientWidth),{height:u,width:a}},_getDocSize:function(r){var i=r?d._getDoc(r):e.config.doc,s=i[t];return i[n]!="CSS1Compat"&&(s=i.body),{height:s.scrollHeight,width:s.scrollWidth}}})})(e),function(e){var t="top",n="right",r="bottom",i="left",s=function(e,s){var o=Math.max(e[t],s[t]),u=Math.min(e[n],s[n]),a=Math.min(e[r],s[r]),f=Math.max(e[i],s[i]),l={};return l[t]=o,l[n]=u,l[r]=a,l[i]=f,l},o=e.DOM;e.mix(o,{region:function(e){var t=o.getXY(e),n=!1;return e&&t&&(n=o._getRegion(t[1],t[0]+e.offsetWidth,t[1]+e.offsetHeight,t[0])),n},intersect:function(u,a,f){var l=f||o.region(u),c={},h=a,p;if(h.tagName)c=o.region(h);else{if(!e.Lang.isObject(a))return!1;c=a}return p=s(c,l),{top:p[t],right:p[n],bottom:p[r],left:p[i],area:(p[r]-p[t])*(p[n]-p[i]),yoff:p[r]-p[t],xoff:p[n]-p[i],inRegion:o.inRegion(u,a,!1,f)}},inRegion:function(u,a,f,l){var c={},h=l||o.region(u),p=a,d;if(p.tagName)c=o.region(p);else{if(!e.Lang.isObject(a))return!1;c=a}return f?h[i]>=c[i]&&h[n]<=c[n]&&h[t]>=c[t]&&h[r]<=c[r]:(d=s(c,h),d[r]>=d[t]&&d[n]>=d[i]?!0:!1)},inViewportRegion:function(e,t,n){return o.inRegion(e,o.viewportRegion(e),t,n)},_getRegion:function(e,s,o,u){var a={};return a[t]=a[1]=e,a[i]=a[0]=u,a[r]=o,a[n]=s,a.width=a[n]-a[i],a.height=a[r]-a[t],a},viewportRegion:function(t){t=t||e.config.doc.documentElement;var n=!1,r,i;return t&&(r=o.docScrollX(t),i=o.docScrollY(t),n=o._getRegion(i,o.winWidth(t)+r,i+o.winHeight(t),r)),n}})}(e)},"3.12.0",{requires:["dom-base","dom-style"]}),YUI.add("selector-native" +,function(e,t){(function(e){e.namespace("Selector");var t="compareDocumentPosition",n="ownerDocument",r={_types:{esc:{token:"\ue000",re:/\\[:\[\]\(\)#\.\'\>+~"]/gi},attr:{token:"\ue001",re:/(\[[^\]]*\])/g},pseudo:{token:"\ue002",re:/(\([^\)]*\))/g}},useNative:!0,_escapeId:function(e){return e&&(e=e.replace(/([:\[\]\(\)#\.'<>+~"])/g,"\\$1")),e},_compare:"sourceIndex"in e.config.doc.documentElement?function(e,t){var n=e.sourceIndex,r=t.sourceIndex;return n===r?0:n>r?1:-1}:e.config.doc.documentElement[t]?function(e,n){return e[t](n)&4?-1:1}:function(e,t){var r,i,s;return e&&t&&(r=e[n].createRange(),r.setStart(e,0),i=t[n].createRange(),i.setStart(t,0),s=r.compareBoundaryPoints(1,i)),s},_sort:function(t){return t&&(t=e.Array(t,0,!0),t.sort&&t.sort(r._compare)),t},_deDupe:function(e){var t=[],n,r;for(n=0;r=e[n++];)r._found||(t[t.length]=r,r._found=!0);for(n=0;r=t[n++];)r._found=null,r.removeAttribute("_found");return t},query:function(t,n,i,s){n=n||e.config.doc;var o=[],u=e.Selector.useNative&&e.config.doc.querySelector&&!s,a=[[t,n]],f,l,c,h=u?e.Selector._nativeQuery:e.Selector._bruteQuery;if(t&&h){!s&&(!u||n.tagName)&&(a=r._splitQueries(t,n));for(c=0;f=a[c++];)l=h(f[0],f[1],i),i||(l=e.Array(l,0,!0)),l&&(o=o.concat(l));a.length>1&&(o=r._sort(r._deDupe(o)))}return i?o[0]||null:o},_replaceSelector:function(t){var n=e.Selector._parse("esc",t),i,s;return t=e.Selector._replace("esc",t),s=e.Selector._parse("pseudo",t),t=r._replace("pseudo",t),i=e.Selector._parse("attr",t),t=e.Selector._replace("attr",t),{esc:n,attrs:i,pseudos:s,selector:t}},_restoreSelector:function(t){var n=t.selector;return n=e.Selector._restore("attr",n,t.attrs),n=e.Selector._restore("pseudo",n,t.pseudos),n=e.Selector._restore("esc",n,t.esc),n},_replaceCommas:function(t){var n=e.Selector._replaceSelector(t),t=n.selector;return t&&(t=t.replace(/,/g,"\ue007"),n.selector=t,t=e.Selector._restoreSelector(n)),t},_splitQueries:function(t,n){t.indexOf(",")>-1&&(t=e.Selector._replaceCommas(t));var r=t.split("\ue007"),i=[],s="",o,u,a;if(n){n.nodeType===1&&(o=e.Selector._escapeId(e.DOM.getId(n)),o||(o=e.guid(),e.DOM.setId(n,o)),s='[id="'+o+'"] ');for(u=0,a=r.length;u-1&&e.Selector.pseudos&&e.Selector.pseudos.checked)return e.Selector.query(t,n,r,!0);try{return n["querySelector"+(r?"":"All")](t)}catch(i){return e.Selector.query(t,n,r,!0)}},filter:function(t,n){var r=[],i,s;if(t&&n)for(i=0;s=t[i++];)e.Selector.test(s,n)&&(r[r.length]=s);return r},test:function(t,r,i){var s=!1,o=!1,u,a,f,l,c,h,p,d,v;if(t&&t.tagName)if(typeof r=="function")s=r.call(t,t);else{u=r.split(","),!i&&!e.DOM.inDoc(t)&&(a=t.parentNode,a?i=a:(c=t[n].createDocumentFragment(),c.appendChild(t),i=c,o=!0)),i=i||t[n],h=e.Selector._escapeId(e.DOM.getId(t)),h||(h=e.guid(),e.DOM.setId(t,h));for(p=0;v=u[p++];){v+='[id="'+h+'"]',l=e.Selector.query(v,i);for(d=0;f=l[d++];)if(f===t){s=!0;break}if(s)break}o&&c.removeChild(t)}return s},ancestor:function(t,n,r){return e.DOM.ancestor(t,function(t){return e.Selector.test(t,n)},r)},_parse:function(t,n){return n.match(e.Selector._types[t].re)},_replace:function(t,n){var r=e.Selector._types[t];return n.replace(r.re,r.token)},_restore:function(t,n,r){if(r){var i=e.Selector._types[t].token,s,o;for(s=0,o=r.length;s2?f.call(arguments,2):null;return this._on(e,t,n,!0)},on:function(e,t){var n=arguments.length>2?f.call(arguments,2):null;return this.monitored&&this.host&&this.host._monitor("attach",this,{args:arguments}),this._on(e,t,n,!0)},after:function(e,t){var n=arguments.length>2?f.call(arguments,2):null;return this._on(e,t,n,o)},detach:function(e,t){if(e&&e.detach)return e.detach();var n,r,i=0,s=this._subscribers,o=this._afters;if(s)for(n=s.length;n>=0;n--)r=s[n],r&&(!e||e===r.fn)&&(this._delete(r,s,n),i++);if(o)for(n=o.length;n>=0;n--)r=o[n],r&&(!e||e===r.fn)&&(this._delete(r,o,n),i++);return i},unsubscribe:function(){return this.detach.apply(this,arguments)},_notify:function(e,t,n){this.log(this.type+"->"+"sub: "+e.id);var r;return r=e.notify(t,this),!1===r||this.stopped>1?(this.log(this.type+" cancelled by subscriber"),!1):!0},log:function(e,t){},fire:function(){var e=[];return e.push.apply(e,arguments),this._fire(e)},_fire:function(e){return this.fireOnce&&this.fired?(this.log("fireOnce event: "+this.type+" already fired"),!0):(this.fired=!0,this.fireOnce&&(this.firedWith=e),this.emitFacade?this.fireComplex(e):this.fireSimple(e))},fireSimple:function(e){this.stopped=0,this.prevented=0;if(this.hasSubs()){var t=this.getSubs();this._procSubs(t[0],e),this._procSubs(t[1],e)}return this.broadcast&&this._broadcast(e),this.stopped?!1:!0},fireComplex:function(e){return this.log("Missing event-custom-complex needed to emit a facade for: "+this.type),e[0]=e[0]||{},this.fireSimple(e)},_procSubs:function(e,t,n){var r,i,s;for(i=0,s=e.length;i-1?e:t+d+e},w=e.cached(function(e,t){var n=e,r,i,s;return p.isString(n)?(s=n.indexOf(m),s>-1&&(i=!0,n=n.substr(m.length)),s=n.indexOf(v),s>-1&&(r=n.substr(0,s),n=n.substr(s+1),n==="*"&&(n=null)),[r,t?b(n,t):n,i,n]):n}),E=function(t){var n=this._yuievt,r;n||(n=this._yuievt={events:{},targets:null,config:{host:this,context:this},chain:e.config.chain}),r=n.config,t&&(h(r,t,!0),t.chain!==undefined&&(n.chain=t.chain),t.prefix&&(r.prefix=t.prefix))};E.prototype={constructor:E,once:function(){var e=this.on.apply(this,arguments);return e.batch(function(e){e.sub&&(e.sub.once=!0)}),e},onceAfter:function(){var e=this.after.apply(this,arguments);return e.batch(function(e){e.sub&&(e.sub.once=!0)}),e},parseType:function(e,t){return w(e,t||this._yuievt.config.prefix)},on:function(t,n,r){var i=this._yuievt,s=w(t,i.config.prefix),o,u,a,l,c,h,d,v=e.Env.evt.handles,g,y,b,E=e.Node,S,x,T;this._monitor("attach",s[1],{args:arguments,category:s[0],after:s[2]});if(p.isObject(t))return p.isFunction(t)?e.Do.before.apply(e.Do,arguments):(o=n,u=r,a=f.call(arguments,0),l=[],p.isArray(t)&&(T=!0),g=t._after,delete t._after,e.each(t,function(e,t){p.isObject(e)&&(o=e.fn||(p.isFunction(e)?e:o), -u=e.context||u);var n=g?m:"";a[0]=n+(T?e:t),a[1]=o,a[2]=u,l.push(this.on.apply(this,a))},this),i.chain?this:new e.EventHandle(l));h=s[0],g=s[2],b=s[3];if(E&&e.instanceOf(this,E)&&b in E.DOM_EVENTS)return a=f.call(arguments,0),a.splice(2,0,E.getDOMNode(this)),e.on.apply(e,a);t=s[1];if(e.instanceOf(this,YUI)){y=e.Env.evt.plugins[t],a=f.call(arguments,0),a[0]=b,E&&(S=a[2],e.instanceOf(S,e.NodeList)?S=e.NodeList.getDOMNodes(S):e.instanceOf(S,E)&&(S=E.getDOMNode(S)),x=b in E.DOM_EVENTS,x&&(a[2]=S));if(y)d=y.on.apply(e,a);else if(!t||x)d=e.Event._attach(a)}return d||(c=i.events[t]||this.publish(t),d=c._on(n,r,arguments.length>3?f.call(arguments,3):null,g?"after":!0),t.indexOf("*:")!==-1&&(this._hasSiblings=!0)),h&&(v[h]=v[h]||{},v[h][t]=v[h][t]||[],v[h][t].push(d)),i.chain?this:d},subscribe:function(){return this.on.apply(this,arguments)},detach:function(t,n,r){var i=this._yuievt.events,s,o=e.Node,u=o&&e.instanceOf(this,o);if(!t&&this!==e){for(s in i)i.hasOwnProperty(s)&&i[s].detach(n,r);return u&&e.Event.purgeElement(o.getDOMNode(this)),this}var a=w(t,this._yuievt.config.prefix),l=p.isArray(a)?a[0]:null,c=a?a[3]:null,h,d=e.Env.evt.handles,v,m,g,y,b=function(e,t,n){var r=e[t],i,s;if(r)for(s=r.length-1;s>=0;--s)i=r[s].evt,(i.host===n||i.el===n)&&r[s].detach()};if(l){m=d[l],t=a[1],v=u?e.Node.getDOMNode(this):this;if(m){if(t)b(m,t,v);else for(s in m)m.hasOwnProperty(s)&&b(m,s,v);return this}}else{if(p.isObject(t)&&t.detach)return t.detach(),this;if(u&&(!c||c in o.DOM_EVENTS))return g=f.call(arguments,0),g[2]=o.getDOMNode(this),e.detach.apply(e,g),this}h=e.Env.evt.plugins[c];if(e.instanceOf(this,YUI)){g=f.call(arguments,0);if(h&&h.detach)return h.detach.apply(e,g),this;if(!t||!h&&o&&t in o.DOM_EVENTS)return g[0]=t,e.Event.detach.apply(e.Event,g),this}return y=i[a[1]],y&&y.detach(n,r),this},unsubscribe:function(){return this.detach.apply(this,arguments)},detachAll:function(e){return this.detach(e)},unsubscribeAll:function(){return this.detachAll.apply(this,arguments)},publish:function(t,n){var r,i=this._yuievt,s=i.config,o=s.prefix;return typeof t=="string"?(o&&(t=b(t,o)),r=this._publish(t,s,n)):(r={},e.each(t,function(e,t){o&&(t=b(t,o)),r[t]=this._publish(t,s,e||n)},this)),r},_getFullType:function(e){var t=this._yuievt.config.prefix;return t?t+d+e:e},_publish:function(t,n,r){var i,s=this._yuievt,o=s.config,u=o.host,a=o.context,f=s.events;return i=f[t],(o.monitored&&!i||i&&i.monitored)&&this._monitor("publish",t,{args:arguments}),i||(i=f[t]=new e.CustomEvent(t,n),n||(i.host=u,i.context=a)),r&&h(i,r,!0),i},_monitor:function(e,t,n){var r,i,s;if(t){typeof t=="string"?(s=t,i=this.getEvent(t,!0)):(i=t,s=t.type);if(this._yuievt.config.monitored&&(!i||i.monitored)||i&&i.monitored)r=s+"_"+e,n.monitored=e,this.fire.call(this,r,n)}},fire:function(e){var t=typeof e=="string",n=arguments.length,r=e,i=this._yuievt,s=i.config,o=s.prefix,u,a,l,c;t&&n<=3?n===2?c=[arguments[1]]:n===3?c=[arguments[1],arguments[2]]:c=[]:c=f.call(arguments,t?1:0),t||(r=e&&e.type),o&&(r=b(r,o)),a=i.events[r],this._hasSiblings&&(l=this.getSibling(r,a),l&&!a&&(a=this.publish(r))),(s.monitored&&(!a||a.monitored)||a&&a.monitored)&&this._monitor("fire",a||r,{args:c});if(!a){if(i.hasTargets)return this.bubble({type:r},c,this);u=!0}else l&&(a.sibling=l),u=a._fire(c);return i.chain?this:u},getSibling:function(e,t){var n;return e.indexOf(d)>-1&&(e=y(e),n=this.getEvent(e,!0),n&&(n.applyConfig(t),n.bubbles=!1,n.broadcast=0)),n},getEvent:function(e,t){var n,r;return t||(n=this._yuievt.config.prefix,e=n?b(e,n):e),r=this._yuievt.events,r[e]||null},after:function(t,n){var r=f.call(arguments,0);switch(p.type(t)){case"function":return e.Do.after.apply(e.Do,arguments);case"array":case"object":r[0]._after=!0;break;default:r[0]=m+t}return this.on.apply(this,r)},before:function(){return this.on.apply(this,arguments)}},e.EventTarget=E,e.mix(e,E.prototype),E.call(e,{bubbles:!1}),YUI.Env.globalEvents=YUI.Env.globalEvents||new E,e.Global=YUI.Env.globalEvents},"@VERSION@",{requires:["oop"]}),YUI.add("event-custom-complex",function(e,t){var n,r,i=e.Object,s,o={},u=e.CustomEvent.prototype,a=e.EventTarget.prototype,f=function(e,t){var n;for(n in t)r.hasOwnProperty(n)||(e[n]=t[n])};e.EventFacade=function(e,t){e||(e=o),this._event=e,this.details=e.details,this.type=e.type,this._type=e.type,this.target=e.target,this.currentTarget=t,this.relatedTarget=e.relatedTarget},e.mix(e.EventFacade.prototype,{stopPropagation:function(){this._event.stopPropagation(),this.stopped=1},stopImmediatePropagation:function(){this._event.stopImmediatePropagation(),this.stopped=2},preventDefault:function(){this._event.preventDefault(),this.prevented=1},halt:function(e){this._event.halt(e),this.prevented=1,this.stopped=e?2:1}}),u.fireComplex=function(t){var n,r,i,s,o,u=!0,a,f,l,c,h,p,d,v,m,g=this,y=g.host||g,b,w,E=g.stack,S=y._yuievt,x;if(E&&g.queuable&&g.type!==E.next.type)return g.log("queue "+g.type),E.queue||(E.queue=[]),E.queue.push([g,t]),!0;x=g.hasSubs()||S.hasTargets||g.broadcast,g.target=g.target||y,g.currentTarget=y,g.details=t.concat();if(x){n=E||{id:g.id,next:g,silent:g.silent,stopped:0,prevented:0,bubbling:null,type:g.type,defaultTargetOnly:g.defaultTargetOnly},f=g.getSubs(),l=f[0],c=f[1],g.stopped=g.type!==n.type?0:n.stopped,g.prevented=g.type!==n.type?0:n.prevented,g.stoppedFn&&(a=new e.EventTarget({fireOnce:!0,context:y}),g.events=a,a.on("stopped",g.stoppedFn)),g.log("Firing "+g.type),g._facade=null,r=g._createFacade(t),l&&g._procSubs(l,t,r),g.bubbles&&y.bubble&&!g.stopped&&(w=n.bubbling,n.bubbling=g.type,n.type!==g.type&&(n.stopped=0,n.prevented=0),u=y.bubble(g,t,null,n),g.stopped=Math.max(g.stopped,n.stopped),g.prevented=Math.max(g.prevented,n.prevented),n.bubbling=w),d=g.prevented,d?(v=g.preventedFn,v&&v.apply(y,t)):(m=g.defaultFn,m&&(!g.defaultTargetOnly&&!n.defaultTargetOnly||y===r.target)&&m.apply(y,t)),g.broadcast&&g._broadcast(t);if(c&&!g.prevented&&g.stopped<2){h=n.afterQueue;if(n.id===g.id||g.type!==S.bubbling){g._procSubs(c,t,r);if(h)while(b=h.last())b()}else p=c,n -.execDefaultCnt&&(p=e.merge(p),e.each(p,function(e){e.postponed=!0})),h||(n.afterQueue=new e.Queue),n.afterQueue.add(function(){g._procSubs(p,t,r)})}g.target=null;if(n.id===g.id){s=n.queue;if(s)while(s.length)i=s.pop(),o=i[0],n.next=o,o._fire(i[1]);g.stack=null}u=!g.stopped,g.type!==S.bubbling&&(n.stopped=0,n.prevented=0,g.stopped=0,g.prevented=0)}else m=g.defaultFn,m&&(r=g._createFacade(t),(!g.defaultTargetOnly||y===r.target)&&m.apply(y,t));return g._facade=null,u},u._hasPotentialSubscribers=function(){return this.hasSubs()||this.host._yuievt.hasTargets||this.broadcast},u._createFacade=u._getFacade=function(t){var n=this.details,r=n&&n[0],i=r&&typeof r=="object",s=this._facade;return s||(s=new e.EventFacade(this,this.currentTarget)),i?(f(s,r),r.type&&(s.type=r.type),t&&(t[0]=s)):t&&t.unshift(s),s.details=this.details,s.target=this.originalTarget||this.target,s.currentTarget=this.currentTarget,s.stopped=0,s.prevented=0,this._facade=s,this._facade},u._addFacadeToArgs=function(e){var t=e[0];t&&t.halt&&t.stopImmediatePropagation&&t.stopPropagation&&t._event||this._createFacade(e)},u.stopPropagation=function(){this.stopped=1,this.stack&&(this.stack.stopped=1),this.events&&this.events.fire("stopped",this)},u.stopImmediatePropagation=function(){this.stopped=2,this.stack&&(this.stack.stopped=2),this.events&&this.events.fire("stopped",this)},u.preventDefault=function(){this.preventable&&(this.prevented=1,this.stack&&(this.stack.prevented=1))},u.halt=function(e){e?this.stopImmediatePropagation():this.stopPropagation(),this.preventDefault()},a.addTarget=function(t){var n=this._yuievt;n.targets||(n.targets={}),n.targets[e.stamp(t)]=t,n.hasTargets=!0},a.getTargets=function(){var e=this._yuievt.targets;return e?i.values(e):[]},a.removeTarget=function(t){var n=this._yuievt.targets;n&&(delete n[e.stamp(t,!0)],i.size(n)===0&&(this._yuievt.hasTargets=!1))},a.bubble=function(e,t,n,r){var i=this._yuievt.targets,s=!0,o,u,a,f,l,c=e&&e.type,h=n||e&&e.target||this,p;if(!e||!e.stopped&&i)for(a in i)if(i.hasOwnProperty(a)){o=i[a],u=o._yuievt.events[c],o._hasSiblings&&(l=o.getSibling(c,u)),l&&!u&&(u=o.publish(c)),p=o._yuievt.bubbling,o._yuievt.bubbling=c;if(!u)o._yuievt.hasTargets&&o.bubble(e,t,h,r);else{l&&(u.sibling=l),u.target=h,u.originalTarget=h,u.currentTarget=o,f=u.broadcast,u.broadcast=!1,u.emitFacade=!0,u.stack=r,s=s&&u.fire.apply(u,t||e.details||[]),u.broadcast=f,u.originalTarget=null;if(u.stopped)break}o._yuievt.bubbling=p}return s},a._hasPotentialSubscribers=function(e){var t=this._yuievt,n=t.events[e];return n?n.hasSubs()||t.hasTargets||n.broadcast:!1},n=new e.EventFacade,r={};for(s in n)r[s]=!0},"@VERSION@",{requires:["event-custom-base"]}),YUI.add("node-core",function(e,t){var n=".",r="nodeName",i="nodeType",s="ownerDocument",o="tagName",u="_yuid",a={},f=Array.prototype.slice,l=e.DOM,c=function(t){if(!this.getDOMNode)return new c(t);if(typeof t=="string"){t=c._fromString(t);if(!t)return null}var n=t.nodeType!==9?t.uniqueID:t[u];n&&c._instances[n]&&c._instances[n]._node!==t&&(t[u]=null),n=n||e.stamp(t),n||(n=e.guid()),this[u]=n,this._node=t,this._stateProxy=t,this._initPlugins&&this._initPlugins()},h=function(t){var n=null;return t&&(n=typeof t=="string"?function(n){return e.Selector.test(n,t)}:function(n){return t(e.one(n))}),n};c.ATTRS={},c.DOM_EVENTS={},c._fromString=function(t){return t&&(t.indexOf("doc")===0?t=e.config.doc:t.indexOf("win")===0?t=e.config.win:t=e.Selector.query(t,null,!0)),t||null},c.NAME="node",c.re_aria=/^(?:role$|aria-)/,c.SHOW_TRANSITION="fadeIn",c.HIDE_TRANSITION="fadeOut",c._instances={},c.getDOMNode=function(e){return e?e.nodeType?e:e._node||null:null},c.scrubVal=function(t,n){if(t){if(typeof t=="object"||typeof t=="function")if(i in t||l.isWindow(t))t=e.one(t);else if(t.item&&!t._nodes||t[0]&&t[0][i])t=e.all(t)}else typeof t=="undefined"?t=n:t===null&&(t=null);return t},c.addMethod=function(e,t,n){e&&t&&typeof t=="function"&&(c.prototype[e]=function(){var e=f.call(arguments),r=this,i;return e[0]&&e[0]._node&&(e[0]=e[0]._node),e[1]&&e[1]._node&&(e[1]=e[1]._node),e.unshift(r._node),i=t.apply(n||r,e),i&&(i=c.scrubVal(i,r)),typeof i!="undefined"||(i=r),i})},c.importMethod=function(t,n,r){typeof n=="string"?(r=r||n,c.addMethod(r,t[n],t)):e.Array.each(n,function(e){c.importMethod(t,e)})},c.one=function(t){var n=null,r,i;if(t){if(typeof t=="string"){t=c._fromString(t);if(!t)return null}else if(t.getDOMNode)return t;if(t.nodeType||e.DOM.isWindow(t)){i=t.uniqueID&&t.nodeType!==9?t.uniqueID:t._yuid,n=c._instances[i],r=n?n._node:null;if(!n||r&&t!==r)n=new c(t),t.nodeType!=11&&(c._instances[n[u]]=n)}}return n},c.DEFAULT_SETTER=function(t,r){var i=this._stateProxy,s;return t.indexOf(n)>-1?(s=t,t=t.split(n),e.Object.setValue(i,t,r)):typeof i[t]!="undefined"&&(i[t]=r),r},c.DEFAULT_GETTER=function(t){var r=this._stateProxy,i;return t.indexOf&&t.indexOf(n)>-1?i=e.Object.getValue(r,t.split(n)):typeof r[t]!="undefined"&&(i=r[t]),i},e.mix(c.prototype,{DATA_PREFIX:"data-",toString:function(){var e=this[u]+": not bound to a node",t=this._node,n,i,s;return t&&(n=t.attributes,i=n&&n.id?t.getAttribute("id"):null,s=n&&n.className?t.getAttribute("className"):null,e=t[r],i&&(e+="#"+i),s&&(e+="."+s.replace(" ",".")),e+=" "+this[u]),e},get:function(e){var t;return this._getAttr?t=this._getAttr(e):t=this._get(e),t?t=c.scrubVal(t,this):t===null&&(t=null),t},_get:function(e){var t=c.ATTRS[e],n;return t&&t.getter?n=t.getter.call(this):c.re_aria.test(e)?n=this._node.getAttribute(e,2):n=c.DEFAULT_GETTER.apply(this,arguments),n},set:function(e,t){var n=c.ATTRS[e];return this._setAttr?this._setAttr.apply(this,arguments):n&&n.setter?n.setter.call(this,t,e):c.re_aria.test(e)?this._node.setAttribute(e,t):c.DEFAULT_SETTER.apply(this,arguments),this},setAttrs:function(t){return this._setAttrs?this._setAttrs(t):e.Object.each(t,function(e,t){this.set(t,e)},this),this},getAttrs:function(t){var n={};return this._getAttrs?this._getAttrs(t):e.Array.each(t,function(e,t){n[e]=this.get(e)},this),n},compareTo:function(e){var t= +u=e.context||u);var n=g?m:"";a[0]=n+(T?e:t),a[1]=o,a[2]=u,l.push(this.on.apply(this,a))},this),i.chain?this:new e.EventHandle(l));h=s[0],g=s[2],b=s[3];if(E&&e.instanceOf(this,E)&&b in E.DOM_EVENTS)return a=f.call(arguments,0),a.splice(2,0,E.getDOMNode(this)),e.on.apply(e,a);t=s[1];if(e.instanceOf(this,YUI)){y=e.Env.evt.plugins[t],a=f.call(arguments,0),a[0]=b,E&&(S=a[2],e.instanceOf(S,e.NodeList)?S=e.NodeList.getDOMNodes(S):e.instanceOf(S,E)&&(S=E.getDOMNode(S)),x=b in E.DOM_EVENTS,x&&(a[2]=S));if(y)d=y.on.apply(e,a);else if(!t||x)d=e.Event._attach(a)}return d||(c=i.events[t]||this.publish(t),d=c._on(n,r,arguments.length>3?f.call(arguments,3):null,g?"after":!0),t.indexOf("*:")!==-1&&(this._hasSiblings=!0)),h&&(v[h]=v[h]||{},v[h][t]=v[h][t]||[],v[h][t].push(d)),i.chain?this:d},subscribe:function(){return this.on.apply(this,arguments)},detach:function(t,n,r){var i=this._yuievt.events,s,o=e.Node,u=o&&e.instanceOf(this,o);if(!t&&this!==e){for(s in i)i.hasOwnProperty(s)&&i[s].detach(n,r);return u&&e.Event.purgeElement(o.getDOMNode(this)),this}var a=w(t,this._yuievt.config.prefix),l=p.isArray(a)?a[0]:null,c=a?a[3]:null,h,d=e.Env.evt.handles,v,m,g,y,b=function(e,t,n){var r=e[t],i,s;if(r)for(s=r.length-1;s>=0;--s)i=r[s].evt,(i.host===n||i.el===n)&&r[s].detach()};if(l){m=d[l],t=a[1],v=u?e.Node.getDOMNode(this):this;if(m){if(t)b(m,t,v);else for(s in m)m.hasOwnProperty(s)&&b(m,s,v);return this}}else{if(p.isObject(t)&&t.detach)return t.detach(),this;if(u&&(!c||c in o.DOM_EVENTS))return g=f.call(arguments,0),g[2]=o.getDOMNode(this),e.detach.apply(e,g),this}h=e.Env.evt.plugins[c];if(e.instanceOf(this,YUI)){g=f.call(arguments,0);if(h&&h.detach)return h.detach.apply(e,g),this;if(!t||!h&&o&&t in o.DOM_EVENTS)return g[0]=t,e.Event.detach.apply(e.Event,g),this}return y=i[a[1]],y&&y.detach(n,r),this},unsubscribe:function(){return this.detach.apply(this,arguments)},detachAll:function(e){return this.detach(e)},unsubscribeAll:function(){return this.detachAll.apply(this,arguments)},publish:function(t,n){var r,i=this._yuievt,s=i.config,o=s.prefix;return typeof t=="string"?(o&&(t=b(t,o)),r=this._publish(t,s,n)):(r={},e.each(t,function(e,t){o&&(t=b(t,o)),r[t]=this._publish(t,s,e||n)},this)),r},_getFullType:function(e){var t=this._yuievt.config.prefix;return t?t+d+e:e},_publish:function(t,n,r){var i,s=this._yuievt,o=s.config,u=o.host,a=o.context,f=s.events;return i=f[t],(o.monitored&&!i||i&&i.monitored)&&this._monitor("publish",t,{args:arguments}),i||(i=f[t]=new e.CustomEvent(t,n),n||(i.host=u,i.context=a)),r&&h(i,r,!0),i},_monitor:function(e,t,n){var r,i,s;if(t){typeof t=="string"?(s=t,i=this.getEvent(t,!0)):(i=t,s=t.type);if(this._yuievt.config.monitored&&(!i||i.monitored)||i&&i.monitored)r=s+"_"+e,n.monitored=e,this.fire.call(this,r,n)}},fire:function(e){var t=typeof e=="string",n=arguments.length,r=e,i=this._yuievt,s=i.config,o=s.prefix,u,a,l,c;t&&n<=3?n===2?c=[arguments[1]]:n===3?c=[arguments[1],arguments[2]]:c=[]:c=f.call(arguments,t?1:0),t||(r=e&&e.type),o&&(r=b(r,o)),a=i.events[r],this._hasSiblings&&(l=this.getSibling(r,a),l&&!a&&(a=this.publish(r))),(s.monitored&&(!a||a.monitored)||a&&a.monitored)&&this._monitor("fire",a||r,{args:c});if(!a){if(i.hasTargets)return this.bubble({type:r},c,this);u=!0}else l&&(a.sibling=l),u=a._fire(c);return i.chain?this:u},getSibling:function(e,t){var n;return e.indexOf(d)>-1&&(e=y(e),n=this.getEvent(e,!0),n&&(n.applyConfig(t),n.bubbles=!1,n.broadcast=0)),n},getEvent:function(e,t){var n,r;return t||(n=this._yuievt.config.prefix,e=n?b(e,n):e),r=this._yuievt.events,r[e]||null},after:function(t,n){var r=f.call(arguments,0);switch(p.type(t)){case"function":return e.Do.after.apply(e.Do,arguments);case"array":case"object":r[0]._after=!0;break;default:r[0]=m+t}return this.on.apply(this,r)},before:function(){return this.on.apply(this,arguments)}},e.EventTarget=E,e.mix(e,E.prototype),E.call(e,{bubbles:!1}),YUI.Env.globalEvents=YUI.Env.globalEvents||new E,e.Global=YUI.Env.globalEvents},"3.12.0",{requires:["oop"]}),YUI.add("event-custom-complex",function(e,t){var n,r,i=e.Object,s,o={},u=e.CustomEvent.prototype,a=e.EventTarget.prototype,f=function(e,t){var n;for(n in t)r.hasOwnProperty(n)||(e[n]=t[n])};e.EventFacade=function(e,t){e||(e=o),this._event=e,this.details=e.details,this.type=e.type,this._type=e.type,this.target=e.target,this.currentTarget=t,this.relatedTarget=e.relatedTarget},e.mix(e.EventFacade.prototype,{stopPropagation:function(){this._event.stopPropagation(),this.stopped=1},stopImmediatePropagation:function(){this._event.stopImmediatePropagation(),this.stopped=2},preventDefault:function(){this._event.preventDefault(),this.prevented=1},halt:function(e){this._event.halt(e),this.prevented=1,this.stopped=e?2:1}}),u.fireComplex=function(t){var n,r,i,s,o,u=!0,a,f,l,c,h,p,d,v,m,g=this,y=g.host||g,b,w,E=g.stack,S=y._yuievt,x;if(E&&g.queuable&&g.type!==E.next.type)return g.log("queue "+g.type),E.queue||(E.queue=[]),E.queue.push([g,t]),!0;x=g.hasSubs()||S.hasTargets||g.broadcast,g.target=g.target||y,g.currentTarget=y,g.details=t.concat();if(x){n=E||{id:g.id,next:g,silent:g.silent,stopped:0,prevented:0,bubbling:null,type:g.type,defaultTargetOnly:g.defaultTargetOnly},f=g.getSubs(),l=f[0],c=f[1],g.stopped=g.type!==n.type?0:n.stopped,g.prevented=g.type!==n.type?0:n.prevented,g.stoppedFn&&(a=new e.EventTarget({fireOnce:!0,context:y}),g.events=a,a.on("stopped",g.stoppedFn)),g.log("Firing "+g.type),g._facade=null,r=g._createFacade(t),l&&g._procSubs(l,t,r),g.bubbles&&y.bubble&&!g.stopped&&(w=n.bubbling,n.bubbling=g.type,n.type!==g.type&&(n.stopped=0,n.prevented=0),u=y.bubble(g,t,null,n),g.stopped=Math.max(g.stopped,n.stopped),g.prevented=Math.max(g.prevented,n.prevented),n.bubbling=w),d=g.prevented,d?(v=g.preventedFn,v&&v.apply(y,t)):(m=g.defaultFn,m&&(!g.defaultTargetOnly&&!n.defaultTargetOnly||y===r.target)&&m.apply(y,t)),g.broadcast&&g._broadcast(t);if(c&&!g.prevented&&g.stopped<2){h=n.afterQueue;if(n.id===g.id||g.type!==S.bubbling){g._procSubs(c,t,r);if(h)while(b=h.last())b()}else p=c,n +.execDefaultCnt&&(p=e.merge(p),e.each(p,function(e){e.postponed=!0})),h||(n.afterQueue=new e.Queue),n.afterQueue.add(function(){g._procSubs(p,t,r)})}g.target=null;if(n.id===g.id){s=n.queue;if(s)while(s.length)i=s.pop(),o=i[0],n.next=o,o._fire(i[1]);g.stack=null}u=!g.stopped,g.type!==S.bubbling&&(n.stopped=0,n.prevented=0,g.stopped=0,g.prevented=0)}else m=g.defaultFn,m&&(r=g._createFacade(t),(!g.defaultTargetOnly||y===r.target)&&m.apply(y,t));return g._facade=null,u},u._hasPotentialSubscribers=function(){return this.hasSubs()||this.host._yuievt.hasTargets||this.broadcast},u._createFacade=u._getFacade=function(t){var n=this.details,r=n&&n[0],i=r&&typeof r=="object",s=this._facade;return s||(s=new e.EventFacade(this,this.currentTarget)),i?(f(s,r),r.type&&(s.type=r.type),t&&(t[0]=s)):t&&t.unshift(s),s.details=this.details,s.target=this.originalTarget||this.target,s.currentTarget=this.currentTarget,s.stopped=0,s.prevented=0,this._facade=s,this._facade},u._addFacadeToArgs=function(e){var t=e[0];t&&t.halt&&t.stopImmediatePropagation&&t.stopPropagation&&t._event||this._createFacade(e)},u.stopPropagation=function(){this.stopped=1,this.stack&&(this.stack.stopped=1),this.events&&this.events.fire("stopped",this)},u.stopImmediatePropagation=function(){this.stopped=2,this.stack&&(this.stack.stopped=2),this.events&&this.events.fire("stopped",this)},u.preventDefault=function(){this.preventable&&(this.prevented=1,this.stack&&(this.stack.prevented=1))},u.halt=function(e){e?this.stopImmediatePropagation():this.stopPropagation(),this.preventDefault()},a.addTarget=function(t){var n=this._yuievt;n.targets||(n.targets={}),n.targets[e.stamp(t)]=t,n.hasTargets=!0},a.getTargets=function(){var e=this._yuievt.targets;return e?i.values(e):[]},a.removeTarget=function(t){var n=this._yuievt.targets;n&&(delete n[e.stamp(t,!0)],i.size(n)===0&&(this._yuievt.hasTargets=!1))},a.bubble=function(e,t,n,r){var i=this._yuievt.targets,s=!0,o,u,a,f,l,c=e&&e.type,h=n||e&&e.target||this,p;if(!e||!e.stopped&&i)for(a in i)if(i.hasOwnProperty(a)){o=i[a],u=o._yuievt.events[c],o._hasSiblings&&(l=o.getSibling(c,u)),l&&!u&&(u=o.publish(c)),p=o._yuievt.bubbling,o._yuievt.bubbling=c;if(!u)o._yuievt.hasTargets&&o.bubble(e,t,h,r);else{l&&(u.sibling=l),u.target=h,u.originalTarget=h,u.currentTarget=o,f=u.broadcast,u.broadcast=!1,u.emitFacade=!0,u.stack=r,s=s&&u.fire.apply(u,t||e.details||[]),u.broadcast=f,u.originalTarget=null;if(u.stopped)break}o._yuievt.bubbling=p}return s},a._hasPotentialSubscribers=function(e){var t=this._yuievt,n=t.events[e];return n?n.hasSubs()||t.hasTargets||n.broadcast:!1},n=new e.EventFacade,r={};for(s in n)r[s]=!0},"3.12.0",{requires:["event-custom-base"]}),YUI.add("node-core",function(e,t){var n=".",r="nodeName",i="nodeType",s="ownerDocument",o="tagName",u="_yuid",a={},f=Array.prototype.slice,l=e.DOM,c=function(t){if(!this.getDOMNode)return new c(t);if(typeof t=="string"){t=c._fromString(t);if(!t)return null}var n=t.nodeType!==9?t.uniqueID:t[u];n&&c._instances[n]&&c._instances[n]._node!==t&&(t[u]=null),n=n||e.stamp(t),n||(n=e.guid()),this[u]=n,this._node=t,this._stateProxy=t,this._initPlugins&&this._initPlugins()},h=function(t){var n=null;return t&&(n=typeof t=="string"?function(n){return e.Selector.test(n,t)}:function(n){return t(e.one(n))}),n};c.ATTRS={},c.DOM_EVENTS={},c._fromString=function(t){return t&&(t.indexOf("doc")===0?t=e.config.doc:t.indexOf("win")===0?t=e.config.win:t=e.Selector.query(t,null,!0)),t||null},c.NAME="node",c.re_aria=/^(?:role$|aria-)/,c.SHOW_TRANSITION="fadeIn",c.HIDE_TRANSITION="fadeOut",c._instances={},c.getDOMNode=function(e){return e?e.nodeType?e:e._node||null:null},c.scrubVal=function(t,n){if(t){if(typeof t=="object"||typeof t=="function")if(i in t||l.isWindow(t))t=e.one(t);else if(t.item&&!t._nodes||t[0]&&t[0][i])t=e.all(t)}else typeof t=="undefined"?t=n:t===null&&(t=null);return t},c.addMethod=function(e,t,n){e&&t&&typeof t=="function"&&(c.prototype[e]=function(){var e=f.call(arguments),r=this,i;return e[0]&&e[0]._node&&(e[0]=e[0]._node),e[1]&&e[1]._node&&(e[1]=e[1]._node),e.unshift(r._node),i=t.apply(n||r,e),i&&(i=c.scrubVal(i,r)),typeof i!="undefined"||(i=r),i})},c.importMethod=function(t,n,r){typeof n=="string"?(r=r||n,c.addMethod(r,t[n],t)):e.Array.each(n,function(e){c.importMethod(t,e)})},c.one=function(t){var n=null,r,i;if(t){if(typeof t=="string"){t=c._fromString(t);if(!t)return null}else if(t.getDOMNode)return t;if(t.nodeType||e.DOM.isWindow(t)){i=t.uniqueID&&t.nodeType!==9?t.uniqueID:t._yuid,n=c._instances[i],r=n?n._node:null;if(!n||r&&t!==r)n=new c(t),t.nodeType!=11&&(c._instances[n[u]]=n)}}return n},c.DEFAULT_SETTER=function(t,r){var i=this._stateProxy,s;return t.indexOf(n)>-1?(s=t,t=t.split(n),e.Object.setValue(i,t,r)):typeof i[t]!="undefined"&&(i[t]=r),r},c.DEFAULT_GETTER=function(t){var r=this._stateProxy,i;return t.indexOf&&t.indexOf(n)>-1?i=e.Object.getValue(r,t.split(n)):typeof r[t]!="undefined"&&(i=r[t]),i},e.mix(c.prototype,{DATA_PREFIX:"data-",toString:function(){var e=this[u]+": not bound to a node",t=this._node,n,i,s;return t&&(n=t.attributes,i=n&&n.id?t.getAttribute("id"):null,s=n&&n.className?t.getAttribute("className"):null,e=t[r],i&&(e+="#"+i),s&&(e+="."+s.replace(" ",".")),e+=" "+this[u]),e},get:function(e){var t;return this._getAttr?t=this._getAttr(e):t=this._get(e),t?t=c.scrubVal(t,this):t===null&&(t=null),t},_get:function(e){var t=c.ATTRS[e],n;return t&&t.getter?n=t.getter.call(this):c.re_aria.test(e)?n=this._node.getAttribute(e,2):n=c.DEFAULT_GETTER.apply(this,arguments),n},set:function(e,t){var n=c.ATTRS[e];return this._setAttr?this._setAttr.apply(this,arguments):n&&n.setter?n.setter.call(this,t,e):c.re_aria.test(e)?this._node.setAttribute(e,t):c.DEFAULT_SETTER.apply(this,arguments),this},setAttrs:function(t){return this._setAttrs?this._setAttrs(t):e.Object.each(t,function(e,t){this.set(t,e)},this),this},getAttrs:function(t){var n={};return this._getAttrs?this._getAttrs(t):e.Array.each(t,function(e,t){n[e]=this.get(e)},this),n},compareTo:function(e){var t= this._node;return e&&e._node&&(e=e._node),t===e},inDoc:function(e){var t=this._node;e=e?e._node||e:t[s];if(e.documentElement)return l.contains(e.documentElement,t)},getById:function(t){var n=this._node,r=l.byId(t,n[s]);return r&&l.contains(n,r)?r=e.one(r):r=null,r},ancestor:function(t,n,r){return arguments.length===2&&(typeof n=="string"||typeof n=="function")&&(r=n),e.one(l.ancestor(this._node,h(t),n,h(r)))},ancestors:function(t,n,r){return arguments.length===2&&(typeof n=="string"||typeof n=="function")&&(r=n),e.all(l.ancestors(this._node,h(t),n,h(r)))},previous:function(t,n){return e.one(l.elementByAxis(this._node,"previousSibling",h(t),n))},next:function(t,n){return e.one(l.elementByAxis(this._node,"nextSibling",h(t),n))},siblings:function(t){return e.all(l.siblings(this._node,h(t)))},one:function(t){return e.one(e.Selector.query(t,this._node,!0))},all:function(t){var n;return this._node&&(n=e.all(e.Selector.query(t,this._node)),n._query=t,n._queryRoot=this._node),n||e.all([])},test:function(t){return e.Selector.test(this._node,t)},remove:function(e){var t=this._node;return t&&t.parentNode&&t.parentNode.removeChild(t),e&&this.destroy(),this},replace:function(e){var t=this._node;return typeof e=="string"&&(e=c.create(e)),t.parentNode.replaceChild(c.getDOMNode(e),t),this},replaceChild:function(t,n){return typeof t=="string"&&(t=l.create(t)),e.one(this._node.replaceChild(c.getDOMNode(t),c.getDOMNode(n)))},destroy:function(t){var n=e.config.doc.uniqueID?"uniqueID":"_yuid",r;this.purge(),this.unplug&&this.unplug(),this.clearData(),t&&e.NodeList.each(this.all("*"),function(t){r=c._instances[t[n]],r?r.destroy():e.Event.purgeElement(t)}),this._node=null,this._stateProxy=null,delete c._instances[this._yuid]},invoke:function(e,t,n,r,i,s){var o=this._node,u;return t&&t._node&&(t=t._node),n&&n._node&&(n=n._node),u=o[e](t,n,r,i,s),c.scrubVal(u,this)},swap:e.config.doc.documentElement.swapNode?function(e){this._node.swapNode(c.getDOMNode(e))}:function(e){e=c.getDOMNode(e);var t=this._node,n=e.parentNode,r=e.nextSibling;return r===t?n.insertBefore(t,e):e===t.nextSibling?n.insertBefore(e,t):(t.parentNode.replaceChild(e,t),l.addHTML(n,t,r)),this},hasMethod:function(e){var t=this._node;return!(!(t&&e in t&&typeof t[e]!="unknown")||typeof t[e]!="function"&&String(t[e]).indexOf("function")!==1)},isFragment:function(){return this.get("nodeType")===11},empty:function(){return this.get("childNodes").remove().destroy(!0),this},getDOMNode:function(){return this._node}},!0),e.Node=c,e.one=c.one;var p=function(t){var n=[];t&&(typeof t=="string"?(this._query=t,t=e.Selector.query(t)):t.nodeType||l.isWindow(t)?t=[t]:t._node?t=[t._node]:t[0]&&t[0]._node?(e.Array.each(t,function(e){e._node&&n.push(e._node)}),t=n):t=e.Array(t,0,!0)),this._nodes=t||[]};p.NAME="NodeList",p.getDOMNodes=function(e){return e&&e._nodes?e._nodes:e},p.each=function(t,n,r){var i=t._nodes;i&&i.length&&e.Array.each(i,n,r||t)},p.addMethod=function(t,n,r){t&&n&&(p.prototype[t]=function(){var t=[],i=arguments;return e.Array.each(this._nodes,function(s){var o=s.uniqueID&&s.nodeType!==9?"uniqueID":"_yuid",u=e.Node._instances[s[o]],a,f;u||(u=p._getTempNode(s)),a=r||u,f=n.apply(a,i),f!==undefined&&f!==u&&(t[t.length]=f)}),t.length?t:this})},p.importMethod=function(t,n,r){typeof n=="string"?(r=r||n,p.addMethod(n,t[n])):e.Array.each(n,function(e){p.importMethod(t,e)})},p._getTempNode=function(t){var n=p._tempNode;return n||(n=e.Node.create("
                    "),p._tempNode=n),n._node=t,n._stateProxy=t,n},e.mix(p.prototype,{_invoke:function(e,t,n){var r=n?[]:this;return this.each(function(i){var s=i[e].apply(i,t);n&&r.push(s)}),r},item:function(t){return e.one((this._nodes||[])[t])},each:function(t,n){var r=this;return e.Array.each(this._nodes,function(i,s){return i=e.one(i),t.call(n||i,i,s,r)}),r},batch:function(t,n){var r=this;return e.Array.each(this._nodes,function(i,s){var o=e.Node._instances[i[u]];return o||(o=p._getTempNode(i)),t.call(n||o,o,s,r)}),r},some:function(t,n){var r=this;return e.Array.some(this._nodes,function(i,s){return i=e.one(i),n=n||i,t.call(n,i,s,r)})},toFrag:function(){return e.one(e.DOM._nl2frag(this._nodes))},indexOf:function(t){return e.Array.indexOf(this._nodes,e.Node.getDOMNode(t))},filter:function(t){return e.all(e.Selector.filter(this._nodes,t))},modulus:function(t,n){n=n||0;var r=[];return p.each(this,function(e,i){i%t===n&&r.push(e)}),e.all(r)},odd:function(){return this.modulus(2,1)},even:function(){return this.modulus(2)},destructor:function(){},refresh:function(){var t,n=this._nodes,r=this._query,i=this._queryRoot;return r&&(i||n&&n[0]&&n[0].ownerDocument&&(i=n[0].ownerDocument),this._nodes=e.Selector.query(r,i)),this},size:function(){return this._nodes.length},isEmpty:function(){return this._nodes.length<1},toString:function(){var e="",t=this[u]+": not bound to any nodes",n=this._nodes,i;return n&&n[0]&&(i=n[0],e+=i[r],i.id&&(e+="#"+i.id),i.className&&(e+="."+i.className.replace(" ",".")),n.length>1&&(e+="...["+n.length+" items]")),e||t},getDOMNodes:function(){return this._nodes}},!0),p.importMethod(e.Node.prototype,["destroy","empty","remove","set"]),p.prototype.get=function(t){var n=[],r=this._nodes,i=!1,s=p._getTempNode,o,u;return r[0]&&(o=e.Node._instances[r[0]._yuid]||s(r[0]),u=o._get(t),u&&u.nodeType&&(i=!0)),e.Array.each(r,function(r){o=e.Node._instances[r._yuid],o||(o=s(r)),u=o._get(t),i||(u=e.Node.scrubVal(u,o)),n.push(u)}),i?e.all(n):n},e.NodeList=p,e.all=function(e){return new p(e)},e.Node.all=e.all;var d=e.NodeList,v=Array.prototype,m={concat:1,pop:0,push:0,shift:0,slice:1,splice:1,unshift:0};e.Object.each(m,function(t,n){d.prototype[n]=function(){var r=[],i=0,s,o;while(typeof (s=arguments[i++])!="undefined")r.push(s._node||s._nodes||s);return o=v[n].apply(this._nodes,r),t?o=e.all(o):o=e.Node.scrubVal(o),o}}),e.Array.each(["removeChild","hasChildNodes","cloneNode","hasAttribute","scrollIntoView","getElementsByTagName","focus","blur","submit","reset","select","createCaption"],function(t){e.Node.prototype[t]=function( -e,n,r){var i=this.invoke(t,e,n,r);return i}}),e.Node.prototype.removeAttribute=function(e){var t=this._node;return t&&t.removeAttribute(e,0),this},e.Node.importMethod(e.DOM,["contains","setAttribute","getAttribute","wrap","unwrap","generateID"]),e.NodeList.importMethod(e.Node.prototype,["getAttribute","setAttribute","removeAttribute","unwrap","wrap","generateID"])},"@VERSION@",{requires:["dom-core","selector"]}),YUI.add("node-base",function(e,t){var n=["hasClass","addClass","removeClass","replaceClass","toggleClass"];e.Node.importMethod(e.DOM,n),e.NodeList.importMethod(e.Node.prototype,n);var r=e.Node,i=e.DOM;r.create=function(t,n){return n&&n._node&&(n=n._node),e.one(i.create(t,n))},e.mix(r.prototype,{create:r.create,insert:function(e,t){return this._insert(e,t),this},_insert:function(e,t){var n=this._node,r=null;return typeof t=="number"?t=this._node.childNodes[t]:t&&t._node&&(t=t._node),e&&typeof e!="string"&&(e=e._node||e._nodes||e),r=i.addHTML(n,e,t),r},prepend:function(e){return this.insert(e,0)},append:function(e){return this.insert(e,null)},appendChild:function(e){return r.scrubVal(this._insert(e))},insertBefore:function(t,n){return e.Node.scrubVal(this._insert(t,n))},appendTo:function(t){return e.one(t).append(this),this},setContent:function(e){return this._insert(e,"replace"),this},getContent:function(){var e=this;return e._node.nodeType===11&&(e=e.create("
                    ").append(e.cloneNode(!0))),e.get("innerHTML")}}),e.Node.prototype.setHTML=e.Node.prototype.setContent,e.Node.prototype.getHTML=e.Node.prototype.getContent,e.NodeList.importMethod(e.Node.prototype,["append","insert","appendChild","insertBefore","prepend","setContent","getContent","setHTML","getHTML"]);var r=e.Node,i=e.DOM;r.ATTRS={text:{getter:function(){return i.getText(this._node)},setter:function(e){return i.setText(this._node,e),e}},"for":{getter:function(){return i.getAttribute(this._node,"for")},setter:function(e){return i.setAttribute(this._node,"for",e),e}},options:{getter:function(){return this._node.getElementsByTagName("option")}},children:{getter:function(){var t=this._node,n=t.children,r,i,s;if(!n){r=t.childNodes,n=[];for(i=0,s=r.length;i1?this._data[e]=t:this._data=e,this},clearData:function(e){return"_data"in this&&(typeof e!="undefined"?delete this._data[e]:delete this._data),this}}),e.mix(e.NodeList.prototype,{getData:function(e){var t=arguments.length?[e]:[];return this._invoke("getData",t,!0)},setData:function(e,t){var n=arguments.length>1?[e,t]:[e];return this._invoke("setData",n)},clearData:function(e){var t=arguments.length?[e]:[];return this._invoke("clearData",[e])}})},"@VERSION@",{requires:["event-base","node-core","dom-base","dom-style"]}),function(){var e=YUI.Env;e._ready||(e._ready=function(){e.DOMReady=!0,e.remove(YUI.config.doc,"DOMContentLoaded",e._ready)},e.add(YUI.config.doc,"DOMContentLoaded",e._ready))}(),YUI.add("event-base",function(e,t){e.publish("domready",{fireOnce:!0,async:!0}),YUI.Env.DOMReady?e.fire("domready"):e.Do.before(function(){e.fire("domready")},YUI.Env,"_ready");var n=e.UA,r={},i={63232:38,63233:40,63234:37,63235:39,63276:33,63277:34,25:9,63272:46,63273:36,63275:35},s=function(t){if(!t)return t;try{t&&3==t.nodeType&&(t=t.parentNode)}catch(n){return null}return e.one(t)},o=function(e,t,n){this._event=e,this._currentTarget=t,this._wrapper=n||r,this.init()};e.extend(o,Object,{init:function(){var e=this._event,t=this._wrapper.overrides,r=e.pageX,o=e.pageY,u,a=this._currentTarget;this.altKey=e.altKey,this.ctrlKey=e.ctrlKey,this.metaKey=e.metaKey,this.shiftKey=e.shiftKey,this.type=t&&t.type||e.type,this.clientX=e.clientX,this.clientY=e.clientY,this.pageX=r,this.pageY=o,u=e.keyCode||e.charCode,n.webkit&&u in i&&(u=i[u]),this.keyCode=u,this.charCode=u,this.which=e.which||e.charCode||u,this.button=this.which,this.target=s(e.target),this.currentTarget=s(a),this.relatedTarget=s(e.relatedTarget);if(e.type=="mousewheel"||e.type=="DOMMouseScroll")this.wheelDelta=e.detail?e.detail*-1:Math.round(e.wheelDelta/80)||(e.wheelDelta<0?-1:1);this._touch&&this._touch(e,a,this._wrapper)},stopPropagation:function(){this._event.stopPropagation(),this._wrapper.stopped=1,this.stopped=1},stopImmediatePropagation:function(){var e=this._event;e.stopImmediatePropagation?e.stopImmediatePropagation():this.stopPropagation(),this._wrapper.stopped=2,this.stopped=2},preventDefault:function(e){var t=this._event;t.preventDefault(),t.returnValue=e||!1,this._wrapper.prevented=1,this.prevented=1},halt:function(e){e?this.stopImmediatePropagation():this.stopPropagation(),this.preventDefault()}}),o.resolve=s,e.DOM2EventFacade=o,e.DOMEventFacade=o,function(){e.Env.evt.dom_wrappers={},e.Env.evt.dom_map={};var t=e.Env.evt,n=e.config,r=n.win,i=YUI.Env.add,s=YUI.Env.remove,o=function(){YUI.Env.windowLoaded=!0,e.Event._load(),s(r,"load",o)},u=function(){e.Event._unload()},a="domready",f="~yui|2|compat~",l=function(t){try{return t&&typeof t!="string"&&e.Lang.isNumber(t.length)&&!t.tagName&&!e.DOM.isWindow(t)}catch(n){return!1}},c=e.CustomEvent.prototype._delete,h=function(t){var n=c.apply(this,arguments);return this.hasSubs()||e.Event._clean(this),n},p=function(){var n=!1,o=0,c=[],d=t.dom_wrappers,v=null,m=t.dom_map;return{POLL_RETRYS:1e3,POLL_INTERVAL:40,lastError:null,_interval:null,_dri:null,DOMReady:!1,startInterval:function(){p._interval||(p._interval=setInterval(p._poll,p.POLL_INTERVAL))},onAvailable:function(t,n,r,i,s,u){var a=e.Array(t),f,l;for(f=0;f4?t.slice(4):null),c&&u.fire(),h):!1},detach:function(t,n,r,i){var s=e.Array(arguments,0,!0),o,u,a,c,h,v;s[s.length-1]===f&&(o=!0);if(t&&t.detach)return t.detach();typeof r=="string"&&(o?r=e.DOM.byId(r):(r=e.Selector.query(r),u=r.length,u<1?r=null:u==1&&(r=r[0])));if(!r)return!1;if(r.detach)return s.splice(2,1),r.detach.apply(r,s);if(l(r)){a=!0;for(c=0,u=r.length;c0),u=[],a=function(t,n){var r,i=n.override;try{n.compat?(n.override?i===!0?r=n.obj:r=i:r=t,n.fn.call(r,n.obj)):(r=n.obj||e.one(t),n.fn.apply(r,e.Lang.isArray(i)?i:[]))}catch(s){}};for(t=0,r=c.length;t4?e.Array(arguments,4,!0):null;return e.Event.onAvailable.call(e.Event,r,n,i,s)}},e.Env.evt.plugins.contentready={on:function(t,n,r,i){var s=arguments.length>4?e.Array(arguments,4,!0):null;return e.Event.onContentReady.call(e.Event,r,n,i,s)}}},"@VERSION@",{requires:["event-custom-base"]}),function(){var e,t=YUI.Env,n=YUI.config,r=n.doc,i=r&&r.documentElement,s="onreadystatechange",o=n.pollInterval||40;i.doScroll&&!t._ieready&&(t._ieready=function(){t._ready()}, +e,n,r){var i=this.invoke(t,e,n,r);return i}}),e.Node.prototype.removeAttribute=function(e){var t=this._node;return t&&t.removeAttribute(e,0),this},e.Node.importMethod(e.DOM,["contains","setAttribute","getAttribute","wrap","unwrap","generateID"]),e.NodeList.importMethod(e.Node.prototype,["getAttribute","setAttribute","removeAttribute","unwrap","wrap","generateID"])},"3.12.0",{requires:["dom-core","selector"]}),YUI.add("node-base",function(e,t){var n=["hasClass","addClass","removeClass","replaceClass","toggleClass"];e.Node.importMethod(e.DOM,n),e.NodeList.importMethod(e.Node.prototype,n);var r=e.Node,i=e.DOM;r.create=function(t,n){return n&&n._node&&(n=n._node),e.one(i.create(t,n))},e.mix(r.prototype,{create:r.create,insert:function(e,t){return this._insert(e,t),this},_insert:function(e,t){var n=this._node,r=null;return typeof t=="number"?t=this._node.childNodes[t]:t&&t._node&&(t=t._node),e&&typeof e!="string"&&(e=e._node||e._nodes||e),r=i.addHTML(n,e,t),r},prepend:function(e){return this.insert(e,0)},append:function(e){return this.insert(e,null)},appendChild:function(e){return r.scrubVal(this._insert(e))},insertBefore:function(t,n){return e.Node.scrubVal(this._insert(t,n))},appendTo:function(t){return e.one(t).append(this),this},setContent:function(e){return this._insert(e,"replace"),this},getContent:function(){var e=this;return e._node.nodeType===11&&(e=e.create("
                    ").append(e.cloneNode(!0))),e.get("innerHTML")}}),e.Node.prototype.setHTML=e.Node.prototype.setContent,e.Node.prototype.getHTML=e.Node.prototype.getContent,e.NodeList.importMethod(e.Node.prototype,["append","insert","appendChild","insertBefore","prepend","setContent","getContent","setHTML","getHTML"]);var r=e.Node,i=e.DOM;r.ATTRS={text:{getter:function(){return i.getText(this._node)},setter:function(e){return i.setText(this._node,e),e}},"for":{getter:function(){return i.getAttribute(this._node,"for")},setter:function(e){return i.setAttribute(this._node,"for",e),e}},options:{getter:function(){return this._node.getElementsByTagName("option")}},children:{getter:function(){var t=this._node,n=t.children,r,i,s;if(!n){r=t.childNodes,n=[];for(i=0,s=r.length;i1?this._data[e]=t:this._data=e,this},clearData:function(e){return"_data"in this&&(typeof e!="undefined"?delete this._data[e]:delete this._data),this}}),e.mix(e.NodeList.prototype,{getData:function(e){var t=arguments.length?[e]:[];return this._invoke("getData",t,!0)},setData:function(e,t){var n=arguments.length>1?[e,t]:[e];return this._invoke("setData",n)},clearData:function(e){var t=arguments.length?[e]:[];return this._invoke("clearData",[e])}})},"3.12.0",{requires:["event-base","node-core","dom-base","dom-style"]}),function(){var e=YUI.Env;e._ready||(e._ready=function(){e.DOMReady=!0,e.remove(YUI.config.doc,"DOMContentLoaded",e._ready)},e.add(YUI.config.doc,"DOMContentLoaded",e._ready))}(),YUI.add("event-base",function(e,t){e.publish("domready",{fireOnce:!0,async:!0}),YUI.Env.DOMReady?e.fire("domready"):e.Do.before(function(){e.fire("domready")},YUI.Env,"_ready");var n=e.UA,r={},i={63232:38,63233:40,63234:37,63235:39,63276:33,63277:34,25:9,63272:46,63273:36,63275:35},s=function(t){if(!t)return t;try{t&&3==t.nodeType&&(t=t.parentNode)}catch(n){return null}return e.one(t)},o=function(e,t,n){this._event=e,this._currentTarget=t,this._wrapper=n||r,this.init()};e.extend(o,Object,{init:function(){var e=this._event,t=this._wrapper.overrides,r=e.pageX,o=e.pageY,u,a=this._currentTarget;this.altKey=e.altKey,this.ctrlKey=e.ctrlKey,this.metaKey=e.metaKey,this.shiftKey=e.shiftKey,this.type=t&&t.type||e.type,this.clientX=e.clientX,this.clientY=e.clientY,this.pageX=r,this.pageY=o,u=e.keyCode||e.charCode,n.webkit&&u in i&&(u=i[u]),this.keyCode=u,this.charCode=u,this.which=e.which||e.charCode||u,this.button=this.which,this.target=s(e.target),this.currentTarget=s(a),this.relatedTarget=s(e.relatedTarget);if(e.type=="mousewheel"||e.type=="DOMMouseScroll")this.wheelDelta=e.detail?e.detail*-1:Math.round(e.wheelDelta/80)||(e.wheelDelta<0?-1:1);this._touch&&this._touch(e,a,this._wrapper)},stopPropagation:function(){this._event.stopPropagation(),this._wrapper.stopped=1,this.stopped=1},stopImmediatePropagation:function(){var e=this._event;e.stopImmediatePropagation?e.stopImmediatePropagation():this.stopPropagation(),this._wrapper.stopped=2,this.stopped=2},preventDefault:function(e){var t=this._event;t.preventDefault(),t.returnValue=e||!1,this._wrapper.prevented=1,this.prevented=1},halt:function(e){e?this.stopImmediatePropagation():this.stopPropagation(),this.preventDefault()}}),o.resolve=s,e.DOM2EventFacade=o,e.DOMEventFacade=o,function(){e.Env.evt.dom_wrappers={},e.Env.evt.dom_map={};var t=e.Env.evt,n=e.config,r=n.win,i=YUI.Env.add,s=YUI.Env.remove,o=function(){YUI.Env.windowLoaded=!0,e.Event._load(),s(r,"load",o)},u=function(){e.Event._unload()},a="domready",f="~yui|2|compat~",l=function(t){try{return t&&typeof t!="string"&&e.Lang.isNumber(t.length)&&!t.tagName&&!e.DOM.isWindow(t)}catch(n){return!1}},c=e.CustomEvent.prototype._delete,h=function(t){var n=c.apply(this,arguments);return this.hasSubs()||e.Event._clean(this),n},p=function(){var n=!1,o=0,c=[],d=t.dom_wrappers,v=null,m=t.dom_map;return{POLL_RETRYS:1e3,POLL_INTERVAL:40,lastError:null,_interval:null,_dri:null,DOMReady:!1,startInterval:function(){p._interval||(p._interval=setInterval(p._poll,p.POLL_INTERVAL))},onAvailable:function(t,n,r,i,s,u){var a=e.Array(t),f,l;for(f=0;f4?t.slice(4):null),c&&u.fire(),h):!1},detach:function(t,n,r,i){var s=e.Array(arguments,0,!0),o,u,a,c,h,v;s[s.length-1]===f&&(o=!0);if(t&&t.detach)return t.detach();typeof r=="string"&&(o?r=e.DOM.byId(r):(r=e.Selector.query(r),u=r.length,u<1?r=null:u==1&&(r=r[0])));if(!r)return!1;if(r.detach)return s.splice(2,1),r.detach.apply(r,s);if(l(r)){a=!0;for(c=0,u=r.length;c0),u=[],a=function(t,n){var r,i=n.override;try{n.compat?(n.override?i===!0?r=n.obj:r=i:r=t,n.fn.call(r,n.obj)):(r=n.obj||e.one(t),n.fn.apply(r,e.Lang.isArray(i)?i:[]))}catch(s){}};for(t=0,r=c.length;t4?e.Array(arguments,4,!0):null;return e.Event.onAvailable.call(e.Event,r,n,i,s)}},e.Env.evt.plugins.contentready={on:function(t,n,r,i){var s=arguments.length>4?e.Array(arguments,4,!0):null;return e.Event.onContentReady.call(e.Event,r,n,i,s)}}},"3.12.0",{requires:["event-custom-base"]}),function(){var e,t=YUI.Env,n=YUI.config,r=n.doc,i=r&&r.documentElement,s="onreadystatechange",o=n.pollInterval||40;i.doScroll&&!t._ieready&&(t._ieready=function(){t._ready()}, /*! DOMReady: based on work by: Dean Edwards/John Resig/Matthias Miller/Diego Perini */ -self!==self.top?(e=function(){r.readyState=="complete"&&(t.remove(r,s,e),t.ieready())},t.add(r,s,e)):t._dri=setInterval(function(){try{i.doScroll("left"),clearInterval(t._dri),t._dri=null,t._ieready()}catch(e){}},o))}(),YUI.add("event-base-ie",function(e,t){function n(){e.DOM2EventFacade.apply(this,arguments)}function r(t){var n=e.config.doc.createEventObject(t),i=r.prototype;return n.hasOwnProperty=function(){return!0},n.init=i.init,n.halt=i.halt,n.preventDefault=i.preventDefault,n.stopPropagation=i.stopPropagation,n.stopImmediatePropagation=i.stopImmediatePropagation,e.DOM2EventFacade.apply(n,arguments),n}var i=e.config.doc&&e.config.doc.implementation,s=e.config.lazyEventFacade,o={0:1,4:2,2:3},u={mouseout:"toElement",mouseover:"fromElement"},a=e.DOM2EventFacade.resolve,f={init:function(){n.superclass.init.apply(this,arguments);var t=this._event,r,i,s,u,f,l;this.target=a(t.srcElement),"clientX"in t&&!r&&0!==r&&(r=t.clientX,i=t.clientY,s=e.config.doc,u=s.body,f=s.documentElement,r+=f.scrollLeft||u&&u.scrollLeft||0,i+=f.scrollTop||u&&u.scrollTop||0,this.pageX=r,this.pageY=i),t.type=="mouseout"?l=t.toElement:t.type=="mouseover"&&(l=t.fromElement),this.relatedTarget=a(l||t.relatedTarget),this.which=this.button=t.keyCode||o[t.button]||t.button},stopPropagation:function(){this._event.cancelBubble=!0,this._wrapper.stopped=1,this.stopped=1},stopImmediatePropagation:function(){this.stopPropagation(),this._wrapper.stopped=2,this.stopped=2},preventDefault:function(e){this._event.returnValue=e||!1,this._wrapper.prevented=1,this.prevented=1}};e.extend(n,e.DOM2EventFacade,f),e.extend(r,e.DOM2EventFacade,f),r.prototype.init=function(){var e=this._event,t=this._wrapper.overrides,n=r._define,i=r._lazyProperties,s;this.altKey=e.altKey,this.ctrlKey=e.ctrlKey,this.metaKey=e.metaKey,this.shiftKey=e.shiftKey,this.type=t&&t.type||e.type,this.clientX=e.clientX,this.clientY=e.clientY,this.keyCode=this.charCode=e.keyCode,this.which=this.button=e.keyCode||o[e.button]||e.button;for(s in i)i.hasOwnProperty(s)&&n(this,s,i[s]);this._touch&&this._touch(e,this._currentTarget,this._wrapper)},r._lazyProperties={target:function(){return a(this._event.srcElement)},relatedTarget:function(){var e=this._event,t=u[e.type]||"relatedTarget";return a(e[t]||e.relatedTarget)},currentTarget:function(){return a(this._currentTarget)},wheelDelta:function(){var e=this._event;if(e.type==="mousewheel"||e.type==="DOMMouseScroll")return e.detail?e.detail*-1:Math.round(e.wheelDelta/80)||(e.wheelDelta<0?-1:1)},pageX:function(){var t=this._event,n=t.pageX,r,i,s;return n===undefined&&(r=e.config.doc,i=r.body&&r.body.scrollLeft,s=r.documentElement.scrollLeft,n=t.clientX+(s||i||0)),n},pageY:function(){var t=this._event,n=t.pageY,r,i,s;return n===undefined&&(r=e.config.doc,i=r.body&&r.body.scrollTop,s=r.documentElement.scrollTop,n=t.clientY+(s||i||0)),n}},r._define=function(e,t,n){function r(r){var i=arguments.length?r:n.call(this);return delete e[t],Object.defineProperty(e,t,{value:i,configurable:!0,writable:!0}),i}Object.defineProperty(e,t,{get:r,set:r,configurable:!0})};if(i&&!i.hasFeature("Events","2.0")){if(s)try{Object.defineProperty(e.config.doc.createEventObject(),"z",{})}catch(l){s=!1}e.DOMEventFacade=s?r:n}},"@VERSION@",{requires:["node-base"]}),YUI.add("pluginhost-base",function(e,t){function r(){this._plugins={}}var n=e.Lang;r.prototype={plug:function(e,t){var r,i,s;if(n.isArray(e))for(r=0,i=e.length;r=0;o--)s=n[o],a=s._UNPLUG,a&&e.mix(i,a,!0),u=s._PLUG,u&&e.mix(r,u,!0);for(f in r)r.hasOwnProperty(f)&&(i[f]||this.plug(r[f]));t&&t.plugins&&this.plug(t.plugins)},n.plug=function(t,n,i){var s,o,u,a;if(t!==e.Base){t._PLUG=t._PLUG||{},r.isArray(n)||(i&&(n={fn:n,cfg:i}),n=[n]);for(o=0,u=n.length;o1&&(g=p.shift(),c[0]=t=p.shift()),d=e.Node.DOM_EVENTS[t],s(d)&&d.delegate&&(E=d.delegate.apply(d,arguments));if(!E){if(!t||!r||!u||!l)return;v=h?e.Selector.query(h,null,!0):u,!v&&i(u)&&(E=e.on("available",function(){e.mix(E,e.delegate.apply(e,c),!0)},u)),!E&&v&&(c.splice(2,2,v),E=e.Event._attach(c,{facade:!1}),E.sub.filter=l,E.sub._notify=f.notifySub)}return E&&g&&(m=a[g]||(a[g]={}),m=m[t]||(m[t]=[]),m.push(E)),E}var n=e.Array,r=e.Lang,i=r.isString,s=r.isObject,o=r.isArray,u=e.Selector.test,a=e.Env.evt.handles;f.notifySub=function(t,r,i){r=r.slice(),this.args&&r.push.apply(r,this.args);var s=f._applyFilter(this.filter,r,i),o,u,a,l;if(s){s=n(s),o=r[0]=new e.DOMEventFacade(r[0],i.el,i),o.container=e.one(i.el);for(u=0,a=s.length;u=200&&n<300||n===304||n===1223?this.success(e,t):this.failure(e,t)},_rS:function(e,t){var n=this;e.c.readyState===4&&(t.timeout&&n._clearTimeout(e.id),setTimeout(function(){n.complete(e,t),n._result(e,t)},0))},_abort:function(e,t){e&&e.c&&(e.e=t,e.c.abort())},send:function(t,n,i){var s,o,u,a,f,c,h=this,p=t,d={};n=n?e.Object(n):{},s=h._create(n,i),o=n.method?n.method.toUpperCase():"GET",f=n.sync,c=n.data,e.Lang.isObject(c)&&!c.nodeType&&!s.upload&&e.QueryString&&e.QueryString.stringify&&(n.data=c=e.QueryString.stringify(c));if(n.form){if(n.form.upload)return h.upload(s,t,n);c=h._serialize(n.form,c)}c||(c="");if(c)switch(o){case"GET":case"HEAD":case"DELETE":p=h._concat(p,c),c="";break;case"POST":case"PUT":n.headers=e.merge({"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},n.headers)}if(s.xdr)return h.xdr(p,s,n);if(s.notify)return s.c.send(s,t,n);!f&&!s.upload&&(s.c.onreadystatechange=function(){h._rS(s,n)});try{s.c.open(o,p,!f,n.username||null,n.password||null),h._setHeaders(s.c,n.headers||{}),h.start(s,n),n.xdr&&n.xdr.credentials&&l&&(s.c.withCredentials=!0),s.c.send(c);if(f){for(u=0,a=r.length;u"@"&&(v||c.tagName===d)&&s.push(c),o.push(c),c=c.firstChild;while(o.length>0&&!c)c=o.pop().nextSibling}}s.length&&(i=u._filterNodes(s,a,r))}return i},_filterNodes:function(t,n,r){var i=0,s,o=n.length,a=o-1,f=[],l=t[0],c=l,h=e.Selector.getters,p,d,v,m,g,y,b,w;for(i=0;c=l=t[i++];){a=o-1,m=null;e:while(c&&c.tagName){v=n[a],b=v.tests,s=b.length;if(s&&!g)while(w=b[--s]){p=w[1],h[w[0]]?y=h[w[0]](c,w[0]):(y=c[w[0]],w[0]==="tagName"&&!u._isXML&&(y=y.toUpperCase()),typeof y!="string"&&y!==undefined&&y.toString?y=y.toString():y===undefined&&c.getAttribute&&(y=c.getAttribute(w[0],2)));if(p==="="&&y!==w[2]||typeof p!="string"&&p.test&&!p.test(y)||!p.test&&typeof p=="function"&&!p(c,w[0],w[2])){if(c=c[m])while(c&&(!c.tagName||v.tagName&&v.tagName!==c.tagName))c=c[m];continue e}}a--;if(!!g||!(d=v.combinator)){f.push(l);if(r)return f;break}m=d.axis,c=c[m];while(c&&!c.tagName)c=c[m];d.direct&&(m=null)}}return l=c=null,f},combinators:{" ":{axis:"parentNode"},">":{axis:"parentNode",direct:!0},"+":{axis:"previousSibling",direct:!0}},_parsers:[{name:i,re:/^\uE003(-?[a-z]+[\w\-]*)+([~\|\^\$\*!=]=?)?['"]?([^\uE004'"]*)['"]?\uE004/i,fn:function(t,n){var r=t[2]||"",i=u.operators,s=t[3]?t[3].replace(/\\/g,""):"",o;if(t[1]==="id"&&r==="="||t[1]==="className"&&e.config.doc.documentElement.getElementsByClassName&&(r==="~="||r==="="))n.prefilter=t[1],t[3]=s,n[t[1]]=t[1]==="id"?t[3]:s;r in i&&(o=i[r],typeof o=="string"&&(t[3]=s.replace(u._reRegExpTokens,"\\$1"),o=new RegExp(o.replace("{val}",t[3]))),t[2]=o);if(!n.last||n.prefilter!==t[1])return t.slice(1)}},{name:r,re:/^((?:-?[_a-z]+[\w-]*)|\*)/i,fn:function(e,t){var n=e[1];u._isXML||(n=n.toUpperCase()),t.tagName=n;if(n!=="*"&&(!t.last||t.prefilter))return[r,"=",n];t.prefilter||(t.prefilter="tagName")}},{name:s,re:/^\s*([>+~]|\s)\s*/,fn:function(e,t){}},{name:o,re:/^:([\-\w]+)(?:\uE005['"]?([^\uE005]*)['"]?\uE006)*/i,fn:function(e,t){var n=u[o][e[1]];return n?(e[2]&&(e[2]=e[2].replace(/\\/g,"")),[e[2],n]):!1}}],_getToken:function(e){return{tagName:null,id:null,className:null,attributes:{},combinator:null,tests:[]}},_tokenize:function(t){t=t||"",t=u._parseSelector(e.Lang.trim(t));var n=u._getToken(),r=t,i=[],o=!1,a,f,l,c;e:do{o=!1;for(l=0;c=u._parsers[l++];)if(a=c.re.exec(t)){c.name!==s&&(n.selector=t),t=t.replace(a[0],""),t.length||(n.last=!0),u._attrFilters[a[1]]&&(a[1]=u._attrFilters[a[1]]),f=c.fn(a,n);if(f===!1){o=!1;break e}f&&n.tests.push(f);if(!t.length||c.name===s)i.push(n),n=u._getToken(n),c.name===s&&(n.combinator=e.Selector.combinators[a[1]]);o=!0}}while(o&&t.length);if(!o||t.length)i=[];return i},_replaceMarkers:function(e){return e=e.replace(/\[/g,"\ue003"),e=e.replace(/\]/g,"\ue004"),e=e.replace(/\(/g,"\ue005"),e=e.replace(/\)/g,"\ue006"),e},_replaceShorthand:function(t){var n=e.Selector.shorthand,r;for(r in n)n.hasOwnProperty(r)&&(t=t.replace(new RegExp(r,"gi"),n[r]));return t},_parseSelector:function(t){var n=e.Selector._replaceSelector(t),t=n.selector;return t=e.Selector._replaceShorthand(t),t=e.Selector._restore("attr",t,n.attrs),t=e.Selector._restore("pseudo",t,n.pseudos),t=e.Selector._replaceMarkers(t),t=e.Selector._restore("esc",t,n.esc),t},_attrFilters:{"class":"className","for":"htmlFor"},getters:{href:function(t,n){return e.DOM.getAttribute(t,n)},id:function(t,n){return e.DOM.getId(t)}}};e.mix(e.Selector,a,!0),e.Selector.getters.src=e.Selector.getters.rel=e.Selector.getters.href,e.Selector.useNative&&e.config.doc.querySelector&&(e.Selector.shorthand["\\.(-?[_a-z]+[-\\w]*)"]="[class~=$1]")},"@VERSION@",{requires:["selector-native"]}),YUI.add("selector-css3",function(e,t){e.Selector -._reNth=/^(?:([\-]?\d*)(n){1}|(odd|even)$)*([\-+]?\d*)$/,e.Selector._getNth=function(t,n,r,i){e.Selector._reNth.test(n);var s=parseInt(RegExp.$1,10),o=RegExp.$2,u=RegExp.$3,a=parseInt(RegExp.$4,10)||0,f=[],l=e.DOM._children(t.parentNode,r),c;u?(s=2,c="+",o="n",a=u==="odd"?1:0):isNaN(s)&&(s=o?1:0);if(s===0)return i&&(a=l.length-a+1),l[a-1]===t?!0:!1;s<0&&(i=!!i,s=Math.abs(s));if(!i){for(var h=a-1,p=l.length;h=0&&l[h]===t)return!0}else for(var h=l.length-a,p=l.length;h>=0;h-=s)if(h-1},checked:function(e){return e.checked===!0||e.selected===!0},enabled:function(e){return e.disabled!==undefined&&!e.disabled},disabled:function(e){return e.disabled}}),e.mix(e.Selector.operators,{"^=":"^{val}","$=":"{val}$","*=":"{val}"}),e.Selector.combinators["~"]={axis:"previousSibling"}},"@VERSION@",{requires:["selector-native","selector-css2"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:2,warn:4,error:8};n.log=function(e,t,o,u){var a,f,l,c,h,p,d=n,v=d.config,m=d.fire?d:YUI.Env.globalEvents;return v.debug&&(o=o||"",typeof o!="undefined"&&(f=v.logExclude,l=v.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1,d.config.logLevel=d.config.logLevel||"debug",p=s[d.config.logLevel.toLowerCase()],t in s&&s[t]0?n.dump(e[u],t-1):r):f.push(e[u]),f.push(s);f.length>1&&f.pop(),f.push("]")}else if(l=="regexp")f.push(e.toString());else{f.push("{");for(u in e)if(e.hasOwnProperty(u))try{f.push(u+o),n.isObject(e[u])?f.push(t>0?n.dump(e[u],t-1):r):f.push(e[u]),f.push(s)}catch(c){f.push("Error: "+c.message)}f.length>1&&f.pop(),f.push("}")}return f.join("")};e.dump=u,n.dump=u},"@VERSION@",{requires:["yui-base"]}),YUI.add("transition-timer",function(e,t){var n=e.Transition;e.mix(n.prototype,{_start:function(){n.useNative?this._runNative():this._runTimer()},_runTimer:function(){var t=this;t._initAttrs(),n._running[e.stamp(t)]=t,t._startTime=new Date,n._startTimer()},_endTimer:function(){var t=this;delete n._running[e.stamp(t)],t._startTime=null},_runFrame:function(){var e=new Date-this._startTime;this._runAttrs(e)},_runAttrs:function(t){var r=this,i=r._node,s=r._config,o=e.stamp(i),u=n._nodeAttrs[o],a=n.behaviors,f=!1,l=!1,c,h,p,d,v,m,g,y,b;for(h in u)if((p=u[h])&&p.transition===r){g=p.duration,m=p.delay,v=(t-m)/1e3,y=t,c={type:"propertyEnd",propertyName:h,config:s,elapsedTime:v},d=b in a&&"set"in a[b]?a[b].set:n.DEFAULT_SETTER,f=y>=g,y>g&&(y=g);if(!m||t>=m)d(r,h,p.from,p.to,y-m,g-m,p.easing,p.unit),f&&(delete u[h],r._count--,s[h]&&s[h].on&&s[h].on.end&&s[h].on.end.call(e.one(i),c),!l&&r._count<=0&&(l=!0,r._end(v),r._endTimer()))}},_initAttrs:function(){var t=this,r=n.behaviors,i=e.stamp(t._node),s=n._nodeAttrs[i],o,u,a,f,l,c,h,p,d,v,m;for(c in s)(o=s[c])&&o.transition===t&&(u=o.duration*1e3,a=o.delay*1e3,f=o.easing,l=o.value,c in t._node.style||c in e.DOM.CUSTOM_STYLES?(v=c in r&&"get"in r[c]?r[c].get(t,c):n.DEFAULT_GETTER(t,c),p=n.RE_UNITS.exec(v),h=n.RE_UNITS.exec(l),v=p?p[1]:v,m=h?h[1]:l,d=h?h[2]:p?p[2]:"",!d&&n.RE_DEFAULT_UNIT.test(c)&&(d=n.DEFAULT_UNIT),typeof f=="string"&&(f.indexOf("cubic-bezier")>-1?f=f.substring(13,f.length-1).split(","):n.easings[f]&&(f=n.easings[f])),o.from=Number(v),o.to=Number(m),o.unit=d,o.easing=f,o.duration=u+a,o.delay=a):(delete s[c],t._count--))},destroy:function(){this.detachAll(),this._node=null}},!0),e.mix(e.Transition,{_runtimeAttrs:{},RE_DEFAULT_UNIT:/^width|height|top|right|bottom|left|margin.*|padding.*|border.*$/i,DEFAULT_UNIT:"px",intervalTime:20,behaviors:{left:{get:function(t,n){return e.DOM._getAttrOffset(t._node,n)}}},DEFAULT_SETTER:function(t,r,i,s,o,u,a,f){i=Number(i),s=Number(s);var l=t._node,c=n.cubicBezier(a,o/u);c=i+c[0]*(s-i);if(l){if(r in l.style||r in e.DOM.CUSTOM_STYLES)f=f||"",e.DOM.setStyle(l,r,c+f)}else t._end()},DEFAULT_GETTER:function(t,n){var r=t._node,i="";if(n in r.style||n in e.DOM.CUSTOM_STYLES)i=e.DOM.getComputedStyle(r,n);return i},_startTimer:function(){n._timer||(n._timer=setInterval(n._runFrame,n.intervalTime))},_stopTimer:function(){clearInterval(n._timer),n._timer=null},_runFrame:function(){var e=!0,t;for(t in n._running)n._running[t]._runFrame&&(e=!1,n -._running[t]._runFrame());e&&n._stopTimer()},cubicBezier:function(e,t){var n=0,r=0,i=e[0],s=e[1],o=e[2],u=e[3],a=1,f=0,l=a-3*o+3*i-n,c=3*o-6*i+3*n,h=3*i-3*n,p=n,d=f-3*u+3*s-r,v=3*u-6*s+3*r,m=3*s-3*r,g=r,y=((l*t+c)*t+h)*t+p,b=((d*t+v)*t+m)*t+g;return[y,b]},easings:{ease:[.25,0,1,.25],linear:[0,0,1,1],"ease-in":[.42,0,1,1],"ease-out":[0,0,.58,1],"ease-in-out":[.42,0,.58,1]},_running:{},_timer:null,RE_UNITS:/^(-?\d*\.?\d*){1}(em|ex|px|in|cm|mm|pt|pc|%)*$/},!0),n.behaviors.top=n.behaviors.bottom=n.behaviors.right=n.behaviors.left,e.Transition=n},"@VERSION@",{requires:["transition"]}),YUI.add("yui",function(e,t){},"@VERSION@",{use:["yui","oop","dom","event-custom-base","event-base","pluginhost","node","event-delegate","io-base","json-parse","transition","selector-css3","dom-style-ie","querystring-stringify-simple"]});var Y=YUI().use("*"); +self!==self.top?(e=function(){r.readyState=="complete"&&(t.remove(r,s,e),t.ieready())},t.add(r,s,e)):t._dri=setInterval(function(){try{i.doScroll("left"),clearInterval(t._dri),t._dri=null,t._ieready()}catch(e){}},o))}(),YUI.add("event-base-ie",function(e,t){function n(){e.DOM2EventFacade.apply(this,arguments)}function r(t){var n=e.config.doc.createEventObject(t),i=r.prototype;return n.hasOwnProperty=function(){return!0},n.init=i.init,n.halt=i.halt,n.preventDefault=i.preventDefault,n.stopPropagation=i.stopPropagation,n.stopImmediatePropagation=i.stopImmediatePropagation,e.DOM2EventFacade.apply(n,arguments),n}var i=e.config.doc&&e.config.doc.implementation,s=e.config.lazyEventFacade,o={0:1,4:2,2:3},u={mouseout:"toElement",mouseover:"fromElement"},a=e.DOM2EventFacade.resolve,f={init:function(){n.superclass.init.apply(this,arguments);var t=this._event,r,i,s,u,f,l;this.target=a(t.srcElement),"clientX"in t&&!r&&0!==r&&(r=t.clientX,i=t.clientY,s=e.config.doc,u=s.body,f=s.documentElement,r+=f.scrollLeft||u&&u.scrollLeft||0,i+=f.scrollTop||u&&u.scrollTop||0,this.pageX=r,this.pageY=i),t.type=="mouseout"?l=t.toElement:t.type=="mouseover"&&(l=t.fromElement),this.relatedTarget=a(l||t.relatedTarget),this.which=this.button=t.keyCode||o[t.button]||t.button},stopPropagation:function(){this._event.cancelBubble=!0,this._wrapper.stopped=1,this.stopped=1},stopImmediatePropagation:function(){this.stopPropagation(),this._wrapper.stopped=2,this.stopped=2},preventDefault:function(e){this._event.returnValue=e||!1,this._wrapper.prevented=1,this.prevented=1}};e.extend(n,e.DOM2EventFacade,f),e.extend(r,e.DOM2EventFacade,f),r.prototype.init=function(){var e=this._event,t=this._wrapper.overrides,n=r._define,i=r._lazyProperties,s;this.altKey=e.altKey,this.ctrlKey=e.ctrlKey,this.metaKey=e.metaKey,this.shiftKey=e.shiftKey,this.type=t&&t.type||e.type,this.clientX=e.clientX,this.clientY=e.clientY,this.keyCode=this.charCode=e.keyCode,this.which=this.button=e.keyCode||o[e.button]||e.button;for(s in i)i.hasOwnProperty(s)&&n(this,s,i[s]);this._touch&&this._touch(e,this._currentTarget,this._wrapper)},r._lazyProperties={target:function(){return a(this._event.srcElement)},relatedTarget:function(){var e=this._event,t=u[e.type]||"relatedTarget";return a(e[t]||e.relatedTarget)},currentTarget:function(){return a(this._currentTarget)},wheelDelta:function(){var e=this._event;if(e.type==="mousewheel"||e.type==="DOMMouseScroll")return e.detail?e.detail*-1:Math.round(e.wheelDelta/80)||(e.wheelDelta<0?-1:1)},pageX:function(){var t=this._event,n=t.pageX,r,i,s;return n===undefined&&(r=e.config.doc,i=r.body&&r.body.scrollLeft,s=r.documentElement.scrollLeft,n=t.clientX+(s||i||0)),n},pageY:function(){var t=this._event,n=t.pageY,r,i,s;return n===undefined&&(r=e.config.doc,i=r.body&&r.body.scrollTop,s=r.documentElement.scrollTop,n=t.clientY+(s||i||0)),n}},r._define=function(e,t,n){function r(r){var i=arguments.length?r:n.call(this);return delete e[t],Object.defineProperty(e,t,{value:i,configurable:!0,writable:!0}),i}Object.defineProperty(e,t,{get:r,set:r,configurable:!0})};if(i&&!i.hasFeature("Events","2.0")){if(s)try{Object.defineProperty(e.config.doc.createEventObject(),"z",{})}catch(l){s=!1}e.DOMEventFacade=s?r:n}},"3.12.0",{requires:["node-base"]}),YUI.add("pluginhost-base",function(e,t){function r(){this._plugins={}}var n=e.Lang;r.prototype={plug:function(e,t){var r,i,s;if(n.isArray(e))for(r=0,i=e.length;r=0;o--)s=n[o],a=s._UNPLUG,a&&e.mix(i,a,!0),u=s._PLUG,u&&e.mix(r,u,!0);for(f in r)r.hasOwnProperty(f)&&(i[f]||this.plug(r[f]));t&&t.plugins&&this.plug(t.plugins)},n.plug=function(t,n,i){var s,o,u,a;if(t!==e.Base){t._PLUG=t._PLUG||{},r.isArray(n)||(i&&(n={fn:n,cfg:i}),n=[n]);for(o=0,u=n.length;o1&&(g=p.shift(),c[0]=t=p.shift()),d=e.Node.DOM_EVENTS[t],s(d)&&d.delegate&&(E=d.delegate.apply(d,arguments));if(!E){if(!t||!r||!u||!l)return;v=h?e.Selector.query(h,null,!0):u,!v&&i(u)&&(E=e.on("available",function(){e.mix(E,e.delegate.apply(e,c),!0)},u)),!E&&v&&(c.splice(2,2,v),E=e.Event._attach(c,{facade:!1}),E.sub.filter=l,E.sub._notify=f.notifySub)}return E&&g&&(m=a[g]||(a[g]={}),m=m[t]||(m[t]=[]),m.push(E)),E}var n=e.Array,r=e.Lang,i=r.isString,s=r.isObject,o=r.isArray,u=e.Selector.test,a=e.Env.evt.handles;f.notifySub=function(t,r,i){r=r.slice(),this.args&&r.push.apply(r,this.args);var s=f._applyFilter(this.filter,r,i),o,u,a,l;if(s){s=n(s),o=r[0]=new e.DOMEventFacade(r[0],i.el,i),o.container=e.one(i.el);for(u=0,a=s.length;u=200&&n<300||n===304||n===1223?this.success(e,t):this.failure(e,t)},_rS:function(e,t){var n=this;e.c.readyState===4&&(t.timeout&&n._clearTimeout(e.id),setTimeout(function(){n.complete(e,t),n._result(e,t)},0))},_abort:function(e,t){e&&e.c&&(e.e=t,e.c.abort())},send:function(t,n,i){var s,o,u,a,f,c,h=this,p=t,d={};n=n?e.Object(n):{},s=h._create(n,i),o=n.method?n.method.toUpperCase():"GET",f=n.sync,c=n.data,e.Lang.isObject(c)&&!c.nodeType&&!s.upload&&e.QueryString&&e.QueryString.stringify&&(n.data=c=e.QueryString.stringify(c));if(n.form){if(n.form.upload)return h.upload(s,t,n);c=h._serialize(n.form,c)}c||(c="");if(c)switch(o){case"GET":case"HEAD":case"DELETE":p=h._concat(p,c),c="";break;case"POST":case"PUT":n.headers=e.merge({"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},n.headers)}if(s.xdr)return h.xdr(p,s,n);if(s.notify)return s.c.send(s,t,n);!f&&!s.upload&&(s.c.onreadystatechange=function(){h._rS(s,n)});try{s.c.open(o,p,!f,n.username||null,n.password||null),h._setHeaders(s.c,n.headers||{}),h.start(s,n),n.xdr&&n.xdr.credentials&&l&&(s.c.withCredentials=!0),s.c.send(c);if(f){for(u=0,a=r.length;u"@"&&(v||c.tagName===d)&&s.push(c),o.push(c),c=c.firstChild;while(o.length>0&&!c)c=o.pop().nextSibling}}s.length&&(i=u._filterNodes(s,a,r))}return i},_filterNodes:function(t,n,r){var i=0,s,o=n.length,a=o-1,f=[],l=t[0],c=l,h=e.Selector.getters,p,d,v,m,g,y,b,w;for(i=0;c=l=t[i++];){a=o-1,m=null;e:while(c&&c.tagName){v=n[a],b=v.tests,s=b.length;if(s&&!g)while(w=b[--s]){p=w[1],h[w[0]]?y=h[w[0]](c,w[0]):(y=c[w[0]],w[0]==="tagName"&&!u._isXML&&(y=y.toUpperCase()),typeof y!="string"&&y!==undefined&&y.toString?y=y.toString():y===undefined&&c.getAttribute&&(y=c.getAttribute(w[0],2)));if(p==="="&&y!==w[2]||typeof p!="string"&&p.test&&!p.test(y)||!p.test&&typeof p=="function"&&!p(c,w[0],w[2])){if(c=c[m])while(c&&(!c.tagName||v.tagName&&v.tagName!==c.tagName))c=c[m];continue e}}a--;if(!!g||!(d=v.combinator)){f.push(l);if(r)return f;break}m=d.axis,c=c[m];while(c&&!c.tagName)c=c[m];d.direct&&(m=null)}}return l=c=null,f},combinators:{" ":{axis:"parentNode"},">":{axis:"parentNode",direct:!0},"+":{axis:"previousSibling",direct:!0}},_parsers:[{name:i,re:/^\uE003(-?[a-z]+[\w\-]*)+([~\|\^\$\*!=]=?)?['"]?([^\uE004'"]*)['"]?\uE004/i,fn:function(t,n){var r=t[2]||"",i=u.operators,s=t[3]?t[3].replace(/\\/g,""):"",o;if(t[1]==="id"&&r==="="||t[1]==="className"&&e.config.doc.documentElement.getElementsByClassName&&(r==="~="||r==="="))n.prefilter=t[1],t[3]=s,n[t[1]]=t[1]==="id"?t[3]:s;r in i&&(o=i[r],typeof o=="string"&&(t[3]=s.replace(u._reRegExpTokens,"\\$1"),o=new RegExp(o.replace("{val}",t[3]))),t[2]=o);if(!n.last||n.prefilter!==t[1])return t.slice(1)}},{name:r,re:/^((?:-?[_a-z]+[\w-]*)|\*)/i,fn:function(e,t){var n=e[1];u._isXML||(n=n.toUpperCase()),t.tagName=n;if(n!=="*"&&(!t.last||t.prefilter))return[r,"=",n];t.prefilter||(t.prefilter="tagName")}},{name:s,re:/^\s*([>+~]|\s)\s*/,fn:function(e,t){}},{name:o,re:/^:([\-\w]+)(?:\uE005['"]?([^\uE005]*)['"]?\uE006)*/i,fn:function(e,t){var n=u[o][e[1]];return n?(e[2]&&(e[2]=e[2].replace(/\\/g,"")),[e[2],n]):!1}}],_getToken:function(e){return{tagName:null,id:null,className:null,attributes:{},combinator:null,tests:[]}},_tokenize:function(t){t=t||"",t=u._parseSelector(e.Lang.trim(t));var n=u._getToken(),r=t,i=[],o=!1,a,f,l,c;e:do{o=!1;for(l=0;c=u._parsers[l++];)if(a=c.re.exec(t)){c.name!==s&&(n.selector=t),t=t.replace(a[0],""),t.length||(n.last=!0),u._attrFilters[a[1]]&&(a[1]=u._attrFilters[a[1]]),f=c.fn(a,n);if(f===!1){o=!1;break e}f&&n.tests.push(f);if(!t.length||c.name===s)i.push(n),n=u._getToken(n),c.name===s&&(n.combinator=e.Selector.combinators[a[1]]);o=!0}}while(o&&t.length);if(!o||t.length)i=[];return i},_replaceMarkers:function(e){return e=e.replace(/\[/g,"\ue003"),e=e.replace(/\]/g,"\ue004"),e=e.replace(/\(/g,"\ue005"),e=e.replace(/\)/g,"\ue006"),e},_replaceShorthand:function(t){var n=e.Selector.shorthand,r;for(r in n)n.hasOwnProperty(r)&&(t=t.replace(new RegExp(r,"gi"),n[r]));return t},_parseSelector:function(t){var n=e.Selector._replaceSelector(t),t=n.selector;return t=e.Selector._replaceShorthand(t),t=e.Selector._restore("attr",t,n.attrs),t=e.Selector._restore("pseudo",t,n.pseudos),t=e.Selector._replaceMarkers(t),t=e.Selector._restore("esc",t,n.esc),t},_attrFilters:{"class":"className","for":"htmlFor"},getters:{href:function(t,n){return e.DOM.getAttribute(t,n)},id:function(t,n){return e.DOM.getId(t)}}};e.mix(e.Selector,a,!0),e.Selector.getters.src=e.Selector.getters.rel=e.Selector.getters.href,e.Selector.useNative&&e.config.doc.querySelector&&(e.Selector.shorthand["\\.(-?[_a-z]+[-\\w]*)"]="[class~=$1]")},"3.12.0",{requires:["selector-native"]}),YUI.add("selector-css3",function(e,t){e.Selector +._reNth=/^(?:([\-]?\d*)(n){1}|(odd|even)$)*([\-+]?\d*)$/,e.Selector._getNth=function(t,n,r,i){e.Selector._reNth.test(n);var s=parseInt(RegExp.$1,10),o=RegExp.$2,u=RegExp.$3,a=parseInt(RegExp.$4,10)||0,f=[],l=e.DOM._children(t.parentNode,r),c;u?(s=2,c="+",o="n",a=u==="odd"?1:0):isNaN(s)&&(s=o?1:0);if(s===0)return i&&(a=l.length-a+1),l[a-1]===t?!0:!1;s<0&&(i=!!i,s=Math.abs(s));if(!i){for(var h=a-1,p=l.length;h=0&&l[h]===t)return!0}else for(var h=l.length-a,p=l.length;h>=0;h-=s)if(h-1},checked:function(e){return e.checked===!0||e.selected===!0},enabled:function(e){return e.disabled!==undefined&&!e.disabled},disabled:function(e){return e.disabled}}),e.mix(e.Selector.operators,{"^=":"^{val}","$=":"{val}$","*=":"{val}"}),e.Selector.combinators["~"]={axis:"previousSibling"}},"3.12.0",{requires:["selector-native","selector-css2"]}),YUI.add("yui-log",function(e,t){var n=e,r="yui:log",i="undefined",s={debug:1,info:2,warn:4,error:8};n.log=function(e,t,o,u){var a,f,l,c,h,p,d=n,v=d.config,m=d.fire?d:YUI.Env.globalEvents;return v.debug&&(o=o||"",typeof o!="undefined"&&(f=v.logExclude,l=v.logInclude,!l||o in l?l&&o in l?a=!l[o]:f&&o in f&&(a=f[o]):a=1,d.config.logLevel=d.config.logLevel||"debug",p=s[d.config.logLevel.toLowerCase()],t in s&&s[t]0?n.dump(e[u],t-1):r):f.push(e[u]),f.push(s);f.length>1&&f.pop(),f.push("]")}else if(l=="regexp")f.push(e.toString());else{f.push("{");for(u in e)if(e.hasOwnProperty(u))try{f.push(u+o),n.isObject(e[u])?f.push(t>0?n.dump(e[u],t-1):r):f.push(e[u]),f.push(s)}catch(c){f.push("Error: "+c.message)}f.length>1&&f.pop(),f.push("}")}return f.join("")};e.dump=u,n.dump=u},"3.12.0",{requires:["yui-base"]}),YUI.add("transition-timer",function(e,t){var n=e.Transition;e.mix(n.prototype,{_start:function(){n.useNative?this._runNative():this._runTimer()},_runTimer:function(){var t=this;t._initAttrs(),n._running[e.stamp(t)]=t,t._startTime=new Date,n._startTimer()},_endTimer:function(){var t=this;delete n._running[e.stamp(t)],t._startTime=null},_runFrame:function(){var e=new Date-this._startTime;this._runAttrs(e)},_runAttrs:function(t){var r=this,i=r._node,s=r._config,o=e.stamp(i),u=n._nodeAttrs[o],a=n.behaviors,f=!1,l=!1,c,h,p,d,v,m,g,y,b;for(h in u)if((p=u[h])&&p.transition===r){g=p.duration,m=p.delay,v=(t-m)/1e3,y=t,c={type:"propertyEnd",propertyName:h,config:s,elapsedTime:v},d=b in a&&"set"in a[b]?a[b].set:n.DEFAULT_SETTER,f=y>=g,y>g&&(y=g);if(!m||t>=m)d(r,h,p.from,p.to,y-m,g-m,p.easing,p.unit),f&&(delete u[h],r._count--,s[h]&&s[h].on&&s[h].on.end&&s[h].on.end.call(e.one(i),c),!l&&r._count<=0&&(l=!0,r._end(v),r._endTimer()))}},_initAttrs:function(){var t=this,r=n.behaviors,i=e.stamp(t._node),s=n._nodeAttrs[i],o,u,a,f,l,c,h,p,d,v,m;for(c in s)(o=s[c])&&o.transition===t&&(u=o.duration*1e3,a=o.delay*1e3,f=o.easing,l=o.value,c in t._node.style||c in e.DOM.CUSTOM_STYLES?(v=c in r&&"get"in r[c]?r[c].get(t,c):n.DEFAULT_GETTER(t,c),p=n.RE_UNITS.exec(v),h=n.RE_UNITS.exec(l),v=p?p[1]:v,m=h?h[1]:l,d=h?h[2]:p?p[2]:"",!d&&n.RE_DEFAULT_UNIT.test(c)&&(d=n.DEFAULT_UNIT),typeof f=="string"&&(f.indexOf("cubic-bezier")>-1?f=f.substring(13,f.length-1).split(","):n.easings[f]&&(f=n.easings[f])),o.from=Number(v),o.to=Number(m),o.unit=d,o.easing=f,o.duration=u+a,o.delay=a):(delete s[c],t._count--))},destroy:function(){this.detachAll(),this._node=null}},!0),e.mix(e.Transition,{_runtimeAttrs:{},RE_DEFAULT_UNIT:/^width|height|top|right|bottom|left|margin.*|padding.*|border.*$/i,DEFAULT_UNIT:"px",intervalTime:20,behaviors:{left:{get:function(t,n){return e.DOM._getAttrOffset(t._node,n)}}},DEFAULT_SETTER:function(t,r,i,s,o,u,a,f){i=Number(i),s=Number(s);var l=t._node,c=n.cubicBezier(a,o/u);c=i+c[0]*(s-i);if(l){if(r in l.style||r in e.DOM.CUSTOM_STYLES)f=f||"",e.DOM.setStyle(l,r,c+f)}else t._end()},DEFAULT_GETTER:function(t,n){var r=t._node,i="";if(n in r.style||n in e.DOM.CUSTOM_STYLES)i=e.DOM.getComputedStyle(r,n);return i},_startTimer:function(){n._timer||(n._timer=setInterval(n._runFrame,n.intervalTime))},_stopTimer:function(){clearInterval(n._timer),n._timer=null},_runFrame:function(){var e=!0,t;for(t in n._running)n._running[t]._runFrame&&(e=!1,n +._running[t]._runFrame());e&&n._stopTimer()},cubicBezier:function(e,t){var n=0,r=0,i=e[0],s=e[1],o=e[2],u=e[3],a=1,f=0,l=a-3*o+3*i-n,c=3*o-6*i+3*n,h=3*i-3*n,p=n,d=f-3*u+3*s-r,v=3*u-6*s+3*r,m=3*s-3*r,g=r,y=((l*t+c)*t+h)*t+p,b=((d*t+v)*t+m)*t+g;return[y,b]},easings:{ease:[.25,0,1,.25],linear:[0,0,1,1],"ease-in":[.42,0,1,1],"ease-out":[0,0,.58,1],"ease-in-out":[.42,0,.58,1]},_running:{},_timer:null,RE_UNITS:/^(-?\d*\.?\d*){1}(em|ex|px|in|cm|mm|pt|pc|%)*$/},!0),n.behaviors.top=n.behaviors.bottom=n.behaviors.right=n.behaviors.left,e.Transition=n},"3.12.0",{requires:["transition"]}),YUI.add("yui",function(e,t){},"3.12.0",{use:["yui","oop","dom","event-custom-base","event-base","pluginhost","node","event-delegate","io-base","json-parse","transition","selector-css3","dom-style-ie","querystring-stringify-simple"]});var Y=YUI().use("*"); From 6db676bfa144ba2348167f9b7a4a9395496e3a98 Mon Sep 17 00:00:00 2001 From: Dan Marsden Date: Wed, 25 Sep 2013 19:25:37 +1200 Subject: [PATCH 082/101] MDL-39910 SCORM: hide toggle button when course structure disabled and fix upgrade of old settings --- mod/scorm/db/upgrade.php | 9 +++++---- mod/scorm/styles.css | 5 ++++- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/mod/scorm/db/upgrade.php b/mod/scorm/db/upgrade.php index 242f89e11e8..13ac7245902 100644 --- a/mod/scorm/db/upgrade.php +++ b/mod/scorm/db/upgrade.php @@ -149,12 +149,13 @@ function xmldb_scorm_upgrade($oldversion) { $field = new xmldb_field('hidenav'); if ($dbman->field_exists($table, $field)) { - // Update nav setting to disable navigation buttons. - $DB->set_field('scorm', 'nav', 0, array('hidenav' => 1)); // Update nav setting to show floating navigation buttons under TOC. $DB->set_field('scorm', 'nav', 2, array('hidenav' => 0)); - $DB->set_field('scorm', 'navpositionleft', 215, array('hidenav' => 0)); - $DB->set_field('scorm', 'navpositiontop', 300, array('hidenav' => 0)); + $DB->set_field('scorm', 'navpositionleft', 215, array('hidenav' => 2)); + $DB->set_field('scorm', 'navpositiontop', 300, array('hidenav' => 2)); + + // Update nav setting to disable navigation buttons. + $DB->set_field('scorm', 'nav', 0, array('hidenav' => 1)); // Drop hidenav field. $dbman->drop_field($table, $field); } diff --git a/mod/scorm/styles.css b/mod/scorm/styles.css index 77d694be4f6..664f4b6aa26 100644 --- a/mod/scorm/styles.css +++ b/mod/scorm/styles.css @@ -28,7 +28,10 @@ #page-mod-scorm-player .structlist {list-style-type: none;white-space: nowrap;} #page-mod-scorm-player .structurelist {position: relative;list-style-type: none;width: 96%;margin:0;padding:0;} #page-mod-scorm-player .structurelist ul {padding-left: 0.5em;margin-left: 0.5em;} -#page-mod-scorm-player #scormpage #scorm_toc.disabled {display:none} +#page-mod-scorm-player #scormpage #scorm_toc.disabled, +#page-mod-scorm-player #scormpage #scorm_toc_toggle.disabled { + display:none +} #page-mod-scorm-view .structurelist {list-style-type: none;white-space: nowrap;} #page-mod-scorm-view .structurelist {list-style-type: none;white-space: nowrap;} From a707a0b461b8feabb0d9ff6ebfb384437dbd5254 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Wed, 25 Sep 2013 09:39:36 +0200 Subject: [PATCH 083/101] MDL-41437 fix non-functional message processor uninstall --- admin/message.php | 30 ++---------------------------- lang/en/message.php | 2 -- lib/adminlib.php | 5 ----- lib/pluginlib.php | 24 ++++++++++++++---------- 4 files changed, 16 insertions(+), 45 deletions(-) diff --git a/admin/message.php b/admin/message.php index 67a60b08b88..f9fee27c2f6 100644 --- a/admin/message.php +++ b/admin/message.php @@ -35,8 +35,6 @@ require_capability('moodle/site:config', context_system::instance()); // Get the submitted params $disable = optional_param('disable', 0, PARAM_INT); $enable = optional_param('enable', 0, PARAM_INT); -$uninstall = optional_param('uninstall', 0, PARAM_INT); -$confirm = optional_param('confirm', false, PARAM_BOOL); $headingtitle = get_string('managemessageoutputs', 'message'); @@ -56,31 +54,7 @@ if (!empty($enable) && confirm_sesskey()) { plugin_manager::reset_caches(); } -if (!empty($uninstall) && confirm_sesskey()) { - echo $OUTPUT->header(); - echo $OUTPUT->heading($headingtitle); - - if (!$processor = $DB->get_record('message_processors', array('id'=>$uninstall))) { - print_error('outputdoesnotexist', 'message'); - } - - $processorname = get_string('pluginname', 'message_'.$processor->name); - - if (!$confirm) { - echo $OUTPUT->confirm(get_string('processordeleteconfirm', 'message', $processorname), 'message.php?uninstall='.$processor->id.'&confirm=1', 'message.php'); - echo $OUTPUT->footer(); - exit; - - } else { - message_processor_uninstall($processor->name); - $a = new stdClass(); - $a->processor = $processorname; - $a->directory = $CFG->dirroot.'/message/output/'.$processor->name; - notice(get_string('processordeletefiles', 'message', $a), 'message.php'); - } -} - -if ($disable || $enable || $uninstall) { +if ($disable || $enable) { $url = new moodle_url('message.php'); redirect($url); } @@ -98,4 +72,4 @@ $messageoutputs = $renderer->manage_messageoutputs($processors); echo $OUTPUT->header(); echo $OUTPUT->heading($headingtitle); echo $messageoutputs; -echo $OUTPUT->footer(); \ No newline at end of file +echo $OUTPUT->footer(); diff --git a/lang/en/message.php b/lang/en/message.php index ef38ada1fba..a8167539248 100644 --- a/lang/en/message.php +++ b/lang/en/message.php @@ -107,8 +107,6 @@ $string['permitted'] = 'Permitted'; $string['page-message-x'] = 'Any message pages'; $string['private_config'] = 'Popup message window'; $string['processortag'] = 'Destination'; -$string['processordeleteconfirm'] = 'You are about to completely delete message output \'{$a}\'. This will completely delete everything in the database associated with this output. Are you SURE you want to continue?'; -$string['processordeletefiles'] = 'All data associated with the output \'{$a->processor}\' has been deleted from the database. To complete the deletion (and prevent the output re-installing itself), you should now delete this directory from your server: {$a->directory}'; $string['providers_config'] = 'Configure notification methods for incoming messages'; $string['providerstag'] = 'Source'; $string['recent'] = 'Recent'; diff --git a/lib/adminlib.php b/lib/adminlib.php index 621083e2548..861a9ef6eed 100644 --- a/lib/adminlib.php +++ b/lib/adminlib.php @@ -315,11 +315,6 @@ function uninstall_plugin($type, $name) { // delete message provider message_provider_uninstall($component); - // delete message processor - if ($type === 'message') { - message_processor_uninstall($name); - } - // delete the plugin tables $xmldbfilepath = $plugindirectory . '/db/install.xml'; drop_plugin_tables($component, $xmldbfilepath, false); diff --git a/lib/pluginlib.php b/lib/pluginlib.php index b7c99e502ae..1ae306bedb6 100644 --- a/lib/pluginlib.php +++ b/lib/pluginlib.php @@ -3710,20 +3710,24 @@ class plugininfo_message extends plugininfo_base { } public function is_uninstall_allowed() { - $processors = get_message_processors(); - if (isset($processors[$this->name])) { - return true; - } else { - return false; - } + return true; } /** - * @see plugintype_interface::get_uninstall_url() + * Pre-uninstall hook. + * + * This is intended for disabling of plugin, some DB table purging, etc. + * + * NOTE: to be called from uninstall_plugin() only. + * @private */ - public function get_uninstall_url() { - $processors = get_message_processors(); - return new moodle_url('/admin/message.php', array('uninstall' => $processors[$this->name]->id, 'sesskey' => sesskey())); + public function uninstall_cleanup() { + global $CFG; + + require_once($CFG->libdir.'/messagelib.php'); + message_processor_uninstall($this->name); + + parent::uninstall_cleanup(); } } From 72df03235e49a41372027e5cd17144964b22a3b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Wed, 25 Sep 2013 09:57:19 +0200 Subject: [PATCH 084/101] MDL-41437 implement plugininfo_quiz necessary for quiz report uninstall --- mod/quiz/adminlib.php | 57 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 mod/quiz/adminlib.php diff --git a/mod/quiz/adminlib.php b/mod/quiz/adminlib.php new file mode 100644 index 00000000000..16ff793bb4d --- /dev/null +++ b/mod/quiz/adminlib.php @@ -0,0 +1,57 @@ +. + +/** + * Quiz admin stuff. + * + * @package mod_quiz + * @copyright 2013 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + + +/** + * Quiz admin stuff. + * + * @package mod_quiz + * @copyright 2013 Petr Skoda {@link http://skodak.org} + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class plugininfo_quiz extends plugininfo_base { + public function is_uninstall_allowed() { + return true; + } + + /** + * Pre-uninstall hook. + * + * This is intended for disabling of plugin, some DB table purging, etc. + * + * NOTE: to be called from uninstall_plugin() only. + * @private + */ + public function uninstall_cleanup() { + global $DB; + + // Do the opposite of db/install.php scripts - deregister the report. + + $DB->delete_records('quiz_reports', array('name'=>$this->name)); + + parent::uninstall_cleanup(); + } +} From 3e51580be3d4d5b0869ef3a6915eb2389288f039 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Wed, 25 Sep 2013 10:03:06 +0200 Subject: [PATCH 085/101] MDL-43437 fix course format disabling --- lib/pluginlib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/pluginlib.php b/lib/pluginlib.php index 1ae306bedb6..3dc18ae8879 100644 --- a/lib/pluginlib.php +++ b/lib/pluginlib.php @@ -4030,7 +4030,7 @@ class plugininfo_format extends plugininfo_base { if (empty($conf->value)) { continue; } - list($type, $name) = explode('_', $conf->component, 2); + list($type, $name) = explode('_', $conf->plugin, 2); unset($plugins[$name]); } From 74762da37f96c2eeb377feb756f0ffb544fed0a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Wed, 25 Sep 2013 10:12:11 +0200 Subject: [PATCH 086/101] MDL-41437 implement new block, enrol and course format pluginfo uninstall methods --- lib/adminlib.php | 50 ------------------------- lib/pluginlib.php | 95 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 95 insertions(+), 50 deletions(-) diff --git a/lib/adminlib.php b/lib/adminlib.php index 861a9ef6eed..b7ba77ff91f 100644 --- a/lib/adminlib.php +++ b/lib/adminlib.php @@ -231,56 +231,6 @@ function uninstall_plugin($type, $name) { } } } - - } else if ($type === 'enrol') { - // NOTE: this is a bit brute force way - it will not trigger events and hooks properly - // nuke all role assignments - role_unassign_all(array('component'=>$component)); - // purge participants - $DB->delete_records_select('user_enrolments', "enrolid IN (SELECT id FROM {enrol} WHERE enrol = ?)", array($name)); - // purge enrol instances - $DB->delete_records('enrol', array('enrol'=>$name)); - // tweak enrol settings - if (!empty($CFG->enrol_plugins_enabled)) { - $enabledenrols = explode(',', $CFG->enrol_plugins_enabled); - $enabledenrols = array_unique($enabledenrols); - $enabledenrols = array_flip($enabledenrols); - unset($enabledenrols[$name]); - $enabledenrols = array_flip($enabledenrols); - if (is_array($enabledenrols)) { - set_config('enrol_plugins_enabled', implode(',', $enabledenrols)); - } - } - - } else if ($type === 'block') { - if ($block = $DB->get_record('block', array('name'=>$name))) { - // Inform block it's about to be deleted - if (file_exists("$CFG->dirroot/blocks/$block->name/block_$block->name.php")) { - $blockobject = block_instance($block->name); - if ($blockobject) { - $blockobject->before_delete(); //only if we can create instance, block might have been already removed - } - } - - // First delete instances and related contexts - $instances = $DB->get_records('block_instances', array('blockname' => $block->name)); - foreach($instances as $instance) { - blocks_delete_instance($instance); - } - - // Delete block - $DB->delete_records('block', array('id'=>$block->id)); - } - } else if ($type === 'format') { - if (($defaultformat = get_config('moodlecourse', 'format')) && $defaultformat !== $name) { - $courses = $DB->get_records('course', array('format' => $name), 'id'); - $data = (object)array('id' => null, 'format' => $defaultformat); - foreach ($courses as $record) { - $data->id = $record->id; - update_course($data); - } - } - $DB->delete_records('course_format_options', array('format' => $name)); } // Specific plugin type cleanup. diff --git a/lib/pluginlib.php b/lib/pluginlib.php index 3dc18ae8879..a8afd85823f 100644 --- a/lib/pluginlib.php +++ b/lib/pluginlib.php @@ -3267,6 +3267,39 @@ class plugininfo_block extends plugininfo_base { return '

                    '.get_string('uninstallextraconfirmblock', 'core_plugin', array('instances'=>$count)).'

                    '; } + + /** + * Pre-uninstall hook. + * + * This is intended for disabling of plugin, some DB table purging, etc. + * + * NOTE: to be called from uninstall_plugin() only. + * @private + */ + public function uninstall_cleanup() { + global $DB, $CFG; + + if ($block = $DB->get_record('block', array('name'=>$this->name))) { + // Inform block it's about to be deleted + if (file_exists("$CFG->dirroot/blocks/$block->name/block_$block->name.php")) { + $blockobject = block_instance($block->name); + if ($blockobject) { + $blockobject->before_delete(); //only if we can create instance, block might have been already removed + } + } + + // First delete instances and related contexts + $instances = $DB->get_records('block_instances', array('blockname' => $block->name)); + foreach($instances as $instance) { + blocks_delete_instance($instance); + } + + // Delete block + $DB->delete_records('block', array('id'=>$block->id)); + } + + parent::uninstall_cleanup(); + } } @@ -3660,6 +3693,43 @@ class plugininfo_enrol extends plugininfo_base { return $result; } + + /** + * Pre-uninstall hook. + * + * This is intended for disabling of plugin, some DB table purging, etc. + * + * NOTE: to be called from uninstall_plugin() only. + * @private + */ + public function uninstall_cleanup() { + global $DB, $CFG; + + // NOTE: this is a bit brute force way - it will not trigger events and hooks properly. + + // Nuke all role assignments. + role_unassign_all(array('component'=>'enrol_'.$this->name)); + + // Purge participants. + $DB->delete_records_select('user_enrolments', "enrolid IN (SELECT id FROM {enrol} WHERE enrol = ?)", array($this->name)); + + // Purge enrol instances. + $DB->delete_records('enrol', array('enrol'=>$this->name)); + + // Tweak enrol settings. + if (!empty($CFG->enrol_plugins_enabled)) { + $enabledenrols = explode(',', $CFG->enrol_plugins_enabled); + $enabledenrols = array_unique($enabledenrols); + $enabledenrols = array_flip($enabledenrols); + unset($enabledenrols[$this->name]); + $enabledenrols = array_flip($enabledenrols); + if (is_array($enabledenrols)) { + set_config('enrol_plugins_enabled', implode(',', $enabledenrols)); + } + } + + parent::uninstall_cleanup(); + } } @@ -4113,4 +4183,29 @@ class plugininfo_format extends plugininfo_base { return $message; } + + /** + * Pre-uninstall hook. + * + * This is intended for disabling of plugin, some DB table purging, etc. + * + * NOTE: to be called from uninstall_plugin() only. + * @private + */ + public function uninstall_cleanup() { + global $DB; + + if (($defaultformat = get_config('moodlecourse', 'format')) && $defaultformat !== $this->name) { + $courses = $DB->get_records('course', array('format' => $this->name), 'id'); + $data = (object)array('id' => null, 'format' => $defaultformat); + foreach ($courses as $record) { + $data->id = $record->id; + update_course($data); + } + } + + $DB->delete_records('course_format_options', array('format' => $this->name)); + + parent::uninstall_cleanup(); + } } From effff2a466f98a35332973ba4b8186bc6219b9e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Wed, 25 Sep 2013 10:27:09 +0200 Subject: [PATCH 087/101] MDL-41437 refactor and cleanup module uninstall support --- lib/adminlib.php | 60 +++-------------------------------------------- lib/pluginlib.php | 55 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 58 insertions(+), 57 deletions(-) diff --git a/lib/adminlib.php b/lib/adminlib.php index b7ba77ff91f..8af74d22b23 100644 --- a/lib/adminlib.php +++ b/lib/adminlib.php @@ -167,69 +167,15 @@ function uninstall_plugin($type, $name) { echo $OUTPUT->heading($pluginname); + // Custom plugin uninstall. $plugindirectory = core_component::get_plugin_directory($type, $name); $uninstalllib = $plugindirectory . '/db/uninstall.php'; if (file_exists($uninstalllib)) { require_once($uninstalllib); $uninstallfunction = 'xmldb_' . $pluginname . '_uninstall'; // eg. 'xmldb_workshop_uninstall()' if (function_exists($uninstallfunction)) { - if (!$uninstallfunction()) { - echo $OUTPUT->notification('Encountered a problem running uninstall function for '. $pluginname); - } - } - } - - if ($type === 'mod') { - // perform cleanup tasks specific for activity modules - - if (!$module = $DB->get_record('modules', array('name' => $name))) { - print_error('moduledoesnotexist', 'error'); - } - - // delete all the relevant instances from all course sections - if ($coursemods = $DB->get_records('course_modules', array('module' => $module->id))) { - foreach ($coursemods as $coursemod) { - if (!delete_mod_from_section($coursemod->id, $coursemod->section)) { - echo $OUTPUT->notification("Could not delete the $strpluginname with id = $coursemod->id from section $coursemod->section"); - } - } - } - - // Increment course.cacherev for courses that used this module. - // This will force cache rebuilding on the next request. - increment_revision_number('course', 'cacherev', - "id IN (SELECT DISTINCT course - FROM {course_modules} - WHERE module=?)", - array($module->id)); - - // delete all the course module records - $DB->delete_records('course_modules', array('module' => $module->id)); - - // delete module contexts - if ($coursemods) { - foreach ($coursemods as $coursemod) { - context_helper::delete_instance(CONTEXT_MODULE, $coursemod->id); - } - } - - // delete the module entry itself - $DB->delete_records('modules', array('name' => $module->name)); - - // cleanup the gradebook - require_once($CFG->libdir.'/gradelib.php'); - grade_uninstalled_module($module->name); - - // Perform any custom uninstall tasks - if (file_exists($CFG->dirroot . '/mod/' . $module->name . '/lib.php')) { - require_once($CFG->dirroot . '/mod/' . $module->name . '/lib.php'); - $uninstallfunction = $module->name . '_uninstall'; - if (function_exists($uninstallfunction)) { - debugging("{$uninstallfunction}() has been deprecated. Use the plugin's db/uninstall.php instead", DEBUG_DEVELOPER); - if (!$uninstallfunction()) { - echo $OUTPUT->notification('Encountered a problem running uninstall function for '. $module->name.'!'); - } - } + // Do not verify result, let plugin complain if necessary. + $uninstallfunction(); } } diff --git a/lib/pluginlib.php b/lib/pluginlib.php index a8afd85823f..8a8209279f7 100644 --- a/lib/pluginlib.php +++ b/lib/pluginlib.php @@ -3488,6 +3488,61 @@ class plugininfo_mod extends plugininfo_base { return '

                    '.get_string('uninstallextraconfirmmod', 'core_plugin', array('instances'=>$count, 'courses'=>$courses)).'

                    '; } + + /** + * Pre-uninstall hook. + * + * This is intended for disabling of plugin, some DB table purging, etc. + * + * NOTE: to be called from uninstall_plugin() only. + * @private + */ + public function uninstall_cleanup() { + global $DB, $CFG; + + if (!$module = $DB->get_record('modules', array('name' => $this->name))) { + parent::uninstall_cleanup(); + return; + } + + // Delete all the relevant instances from all course sections. + if ($coursemods = $DB->get_records('course_modules', array('module' => $module->id))) { + foreach ($coursemods as $coursemod) { + // Do not verify results, there is not much we can do anyway. + delete_mod_from_section($coursemod->id, $coursemod->section); + } + } + + // Increment course.cacherev for courses that used this module. + // This will force cache rebuilding on the next request. + increment_revision_number('course', 'cacherev', + "id IN (SELECT DISTINCT course + FROM {course_modules} + WHERE module=?)", + array($module->id)); + + // Delete all the course module records. + $DB->delete_records('course_modules', array('module' => $module->id)); + + // Delete module contexts. + if ($coursemods) { + foreach ($coursemods as $coursemod) { + context_helper::delete_instance(CONTEXT_MODULE, $coursemod->id); + } + } + + // Delete the module entry itself. + $DB->delete_records('modules', array('name' => $module->name)); + + // Cleanup the gradebook. + require_once($CFG->libdir.'/gradelib.php'); + grade_uninstalled_module($module->name); + + // Do not look for legacy $module->name . '_uninstall any more, + // they should have migrated to db/uninstall.php by now. + + parent::uninstall_cleanup(); + } } From 5f8012d499f5a5e9f2cf367fe2a38f3ae1055c00 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Wed, 25 Sep 2013 10:50:00 +0200 Subject: [PATCH 088/101] MDL-41437 fix some more forgotten module.version's --- lib/adminlib.php | 7 ++++++- mod/book/tool/exportimscp/locallib.php | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/adminlib.php b/lib/adminlib.php index 8af74d22b23..857d3d1dd21 100644 --- a/lib/adminlib.php +++ b/lib/adminlib.php @@ -272,7 +272,12 @@ function get_component_version($component, $source='installed') { // activity module if ($type === 'mod') { if ($source === 'installed') { - return $DB->get_field('modules', 'version', array('name'=>$name)); + if ($CFG->version < 2013092001.02) { + return $DB->get_field('modules', 'version', array('name'=>$name)); + } else { + return get_config('mod_'.$name, 'version'); + } + } else { $mods = core_component::get_plugin_list('mod'); if (empty($mods[$name]) or !is_readable($mods[$name].'/version.php')) { diff --git a/mod/book/tool/exportimscp/locallib.php b/mod/book/tool/exportimscp/locallib.php index 374dbd6b555..6bc14ef978e 100644 --- a/mod/book/tool/exportimscp/locallib.php +++ b/mod/book/tool/exportimscp/locallib.php @@ -125,7 +125,7 @@ function booktool_exportimscp_prepare_files($book, $context) { // Moodle and Book version $moodle_release = $CFG->release; $moodle_version = $CFG->version; - $book_version = $DB->get_field('modules', 'version', array('name'=>'book')); + $book_version = get_config('mod_book', 'version'); $bookname = format_string($book->name, true, array('context'=>$context)); // Load manifest header From 723a6e5679bc1a3a82c501c13d7df6d834e40984 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20S=CC=8Ckoda?= Date: Wed, 25 Sep 2013 10:52:23 +0200 Subject: [PATCH 089/101] MDL-41437 inform developers that version column was removed from module and block tables --- lib/upgrade.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/upgrade.txt b/lib/upgrade.txt index f5102d7b40c..9f4809dea06 100644 --- a/lib/upgrade.txt +++ b/lib/upgrade.txt @@ -39,6 +39,7 @@ information provided here is intended especially for developers. * Use plugin_manager::reset_caches() when changing visibility of plugins. * Implement new method get_enabled_plugins() method in subplugin info classes. * Each plugin should include version information in version.php. +* Module and block tables do not contain version column any more, use get_config('xx_yy', 'version') instead. DEPRECATIONS: Various previously deprecated functions have now been altered to throw DEBUG_DEVELOPER debugging notices From bb22cd80b7c3b5724f808d1e22070927495b91ac Mon Sep 17 00:00:00 2001 From: Mayank Gupta Date: Wed, 25 Sep 2013 16:41:33 +0530 Subject: [PATCH 090/101] MDL-39910 mod_scorm: fix enable/disable navigation buttons --- mod/scorm/module.js | 42 +++++++++++++++++++++++++++++++++--------- 1 file changed, 33 insertions(+), 9 deletions(-) diff --git a/mod/scorm/module.js b/mod/scorm/module.js index efdaa8efd84..dd943b96495 100644 --- a/mod/scorm/module.js +++ b/mod/scorm/module.js @@ -210,15 +210,39 @@ M.mod_scorm.init = function(Y, nav_display, navposition_left, navposition_top, h * @return void */ var scorm_fixnav = function() { - scorm_buttons[0].set('disabled', ((scorm_skipprev(scorm_current_node) === null) || (scorm_skipprev(scorm_current_node).parent.isRoot()) || - (scorm_skipprev(scorm_current_node).title === null) || (scoes_nav[launch_sco].hideprevious === 1))); - scorm_buttons[1].set('disabled', ((scorm_prev(scorm_current_node) === null) || (scorm_skipprev(scorm_current_node).parent.isRoot()) || - (scorm_prev(scorm_current_node).title === null) || (scoes_nav[launch_sco].hideprevious === 1))); - scorm_buttons[2].set('disabled', (scorm_up(scorm_current_node) === null) || (scorm_up(scorm_current_node).parent.isRoot()) || - (scorm_up(scorm_current_node).title === null)); - scorm_buttons[3].set('disabled', ((scorm_next(scorm_current_node) === null) || ((scorm_next(scorm_current_node).title === null) && - (scoes_nav[launch_sco].flow !== 1)) || (scoes_nav[launch_sco].hidecontinue === 1))); - scorm_buttons[4].set('disabled', (scorm_skipnext(scorm_current_node) === null || scorm_skipnext(scorm_current_node).title === null || + var skipprevnode = scorm_skipprev(scorm_current_node); + var prevnode = scorm_prev(scorm_current_node); + var skipnextnode = scorm_skipnext(scorm_current_node); + var nextnode = scorm_next(scorm_current_node); + var upnode = scorm_up(scorm_current_node); + + scorm_buttons[0].set('disabled', ((skipprevnode === null) || + (typeof(skipprevnode.scoid) === 'undefined') || + (scoes_nav[skipprevnode.scoid].isvisible === "false") || + (skipprevnode.title === null) || + (scoes_nav[launch_sco].hideprevious === 1))); + + scorm_buttons[1].set('disabled', ((prevnode === null) || + (typeof(prevnode.scoid) === 'undefined') || + (scoes_nav[prevnode.scoid].isvisible === "false") || + (prevnode.title === null) || + (scoes_nav[launch_sco].hideprevious === 1))); + + scorm_buttons[2].set('disabled', (upnode === null) || + (typeof(upnode.scoid) === 'undefined') || + (scoes_nav[upnode.scoid].isvisible === "false") || + (upnode.title === null)); + + scorm_buttons[3].set('disabled', ((nextnode === null) || + ((nextnode.title === null) && (scoes_nav[launch_sco].flow !== 1)) || + (typeof(nextnode.scoid) === 'undefined') || + (scoes_nav[nextnode.scoid].isvisible === "false") || + (scoes_nav[launch_sco].hidecontinue === 1))); + + scorm_buttons[4].set('disabled', ((skipnextnode === null) || + (skipnextnode.title === null) || + (typeof(skipnextnode.scoid) === 'undefined') || + (scoes_nav[skipnextnode.scoid].isvisible === "false") || scoes_nav[launch_sco].hidecontinue === 1)); }; From 1680c75c88ec857bd69d1b1f633892853c9582cd Mon Sep 17 00:00:00 2001 From: Mayank Gupta Date: Wed, 25 Sep 2013 16:41:33 +0530 Subject: [PATCH 091/101] MDL-39910 mod_scorm: fix enable/disable navigation buttons --- mod/scorm/module.js | 42 +++++++++++++++++++++++++++++++++--------- 1 file changed, 33 insertions(+), 9 deletions(-) diff --git a/mod/scorm/module.js b/mod/scorm/module.js index efdaa8efd84..dd943b96495 100644 --- a/mod/scorm/module.js +++ b/mod/scorm/module.js @@ -210,15 +210,39 @@ M.mod_scorm.init = function(Y, nav_display, navposition_left, navposition_top, h * @return void */ var scorm_fixnav = function() { - scorm_buttons[0].set('disabled', ((scorm_skipprev(scorm_current_node) === null) || (scorm_skipprev(scorm_current_node).parent.isRoot()) || - (scorm_skipprev(scorm_current_node).title === null) || (scoes_nav[launch_sco].hideprevious === 1))); - scorm_buttons[1].set('disabled', ((scorm_prev(scorm_current_node) === null) || (scorm_skipprev(scorm_current_node).parent.isRoot()) || - (scorm_prev(scorm_current_node).title === null) || (scoes_nav[launch_sco].hideprevious === 1))); - scorm_buttons[2].set('disabled', (scorm_up(scorm_current_node) === null) || (scorm_up(scorm_current_node).parent.isRoot()) || - (scorm_up(scorm_current_node).title === null)); - scorm_buttons[3].set('disabled', ((scorm_next(scorm_current_node) === null) || ((scorm_next(scorm_current_node).title === null) && - (scoes_nav[launch_sco].flow !== 1)) || (scoes_nav[launch_sco].hidecontinue === 1))); - scorm_buttons[4].set('disabled', (scorm_skipnext(scorm_current_node) === null || scorm_skipnext(scorm_current_node).title === null || + var skipprevnode = scorm_skipprev(scorm_current_node); + var prevnode = scorm_prev(scorm_current_node); + var skipnextnode = scorm_skipnext(scorm_current_node); + var nextnode = scorm_next(scorm_current_node); + var upnode = scorm_up(scorm_current_node); + + scorm_buttons[0].set('disabled', ((skipprevnode === null) || + (typeof(skipprevnode.scoid) === 'undefined') || + (scoes_nav[skipprevnode.scoid].isvisible === "false") || + (skipprevnode.title === null) || + (scoes_nav[launch_sco].hideprevious === 1))); + + scorm_buttons[1].set('disabled', ((prevnode === null) || + (typeof(prevnode.scoid) === 'undefined') || + (scoes_nav[prevnode.scoid].isvisible === "false") || + (prevnode.title === null) || + (scoes_nav[launch_sco].hideprevious === 1))); + + scorm_buttons[2].set('disabled', (upnode === null) || + (typeof(upnode.scoid) === 'undefined') || + (scoes_nav[upnode.scoid].isvisible === "false") || + (upnode.title === null)); + + scorm_buttons[3].set('disabled', ((nextnode === null) || + ((nextnode.title === null) && (scoes_nav[launch_sco].flow !== 1)) || + (typeof(nextnode.scoid) === 'undefined') || + (scoes_nav[nextnode.scoid].isvisible === "false") || + (scoes_nav[launch_sco].hidecontinue === 1))); + + scorm_buttons[4].set('disabled', ((skipnextnode === null) || + (skipnextnode.title === null) || + (typeof(skipnextnode.scoid) === 'undefined') || + (scoes_nav[skipnextnode.scoid].isvisible === "false") || scoes_nav[launch_sco].hidecontinue === 1)); }; From e818be1046e77f2fba9ca51224bafcea3b82416b Mon Sep 17 00:00:00 2001 From: Andrew Nicols Date: Wed, 25 Sep 2013 18:09:54 +0100 Subject: [PATCH 092/101] MDL-40811 JavaScript: Cast activityid to string when checking resources to show/hide --- course/yui/dragdrop/dragdrop.js | 4 ++-- course/yui/toolboxes/toolboxes.js | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/course/yui/dragdrop/dragdrop.js b/course/yui/dragdrop/dragdrop.js index cb0b53c7bb3..d7d8d4e89d9 100644 --- a/course/yui/dragdrop/dragdrop.js +++ b/course/yui/dragdrop/dragdrop.js @@ -135,8 +135,8 @@ YUI.add('moodle-course-dragdrop', function(Y) { var dragnode = drag.get('node'); var dropnode = e.drop.get('node'); // Prepare some variables - var dragnodeid = Number(Y.Moodle.core_course.util.section.getId(dragnode)); - var dropnodeid = Number(Y.Moodle.core_course.util.section.getId(dropnode)); + var dragnodeid = Y.Moodle.core_course.util.section.getId(dragnode); + var dropnodeid = Y.Moodle.core_course.util.section.getId(dropnode); var loopstart = dragnodeid; var loopend = dropnodeid; diff --git a/course/yui/toolboxes/toolboxes.js b/course/yui/toolboxes/toolboxes.js index 545d696c96e..2dad9f05cbd 100644 --- a/course/yui/toolboxes/toolboxes.js +++ b/course/yui/toolboxes/toolboxes.js @@ -797,7 +797,9 @@ YUI.add('moodle-course-toolboxes', function(Y) { } var activityid = Y.Moodle.core_course.util.cm.getId(node); - if (Y.Array.indexOf(response.resourcestotoggle, activityid) != -1) { + // NOTE: resourcestotoggle is returned as a string instead + // of a Number so we must cast our activityid to a String. + if (Y.Array.indexOf(response.resourcestotoggle, "" + activityid) != -1) { node.getData('toolbox').handle_resource_dim(button, node, oldstatus); } }, this); From e2ad11d87ebb7cae49962cbe05bfce84049b775a Mon Sep 17 00:00:00 2001 From: Sam Hemelryk Date: Thu, 26 Sep 2013 09:12:44 +1200 Subject: [PATCH 093/101] Revert "MDL-39871 output: improved block manipulation inheritance" This reverts commit eeb08203dce0131d3988a3707fbbf8563cd4bd30. --- lib/outputlib.php | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/lib/outputlib.php b/lib/outputlib.php index 315cb2f17ba..1db20d0709d 100644 --- a/lib/outputlib.php +++ b/lib/outputlib.php @@ -329,7 +329,7 @@ class theme_config { * This is used when displaying blocks for regions only. * @var array */ - public $blockrtlmanipulations = null; + public $blockrtlmanipulations = array(); /** * @var renderer_factory Instance of the renderer_factory implementation @@ -488,15 +488,8 @@ class theme_config { } // Use parent theme's "blockrtlmanipulations" if it was defined and if it was not defined on current theme. - if (!is_array($this->blockrtlmanipulations)) { - $blockrtlmanipulations = array(); - foreach ($this->parent_configs as $parentconfig) { - if (isset($parentconfig->blockrtlmanipulations)) { - $blockrtlmanipulations = $parentconfig->blockrtlmanipulations; - break; - } - } - $this->blockrtlmanipulations = $blockrtlmanipulations; + if (empty($this->blockrtlmanipulations) and !empty($parent_config->blockrtlmanipulations)) { + $this->blockrtlmanipulations = $parent_config->blockrtlmanipulations; } //fix arrows if needed From f8023f3072de2193ab61f50e27344552932f4e23 Mon Sep 17 00:00:00 2001 From: Sam Hemelryk Date: Thu, 26 Sep 2013 11:56:00 +1200 Subject: [PATCH 094/101] Revert "MDL-39871 Blocks,Themes: Swap block regions in RTL mode (using pre-defined array)" This reverts commit e89dfdbce62ad5be906cb2d822fa0f746cf6afd6. --- lib/outputlib.php | 5 ----- theme/base/config.php | 4 ---- theme/base/layout/frontpage.php | 33 ++++++++++++++++++++++++--------- theme/base/layout/general.php | 29 ++++++++++++++++++++++++----- theme/base/style/pagelayout.css | 17 +---------------- 5 files changed, 49 insertions(+), 39 deletions(-) diff --git a/lib/outputlib.php b/lib/outputlib.php index 1db20d0709d..231e0a20173 100644 --- a/lib/outputlib.php +++ b/lib/outputlib.php @@ -487,11 +487,6 @@ class theme_config { } } - // Use parent theme's "blockrtlmanipulations" if it was defined and if it was not defined on current theme. - if (empty($this->blockrtlmanipulations) and !empty($parent_config->blockrtlmanipulations)) { - $this->blockrtlmanipulations = $parent_config->blockrtlmanipulations; - } - //fix arrows if needed $this->check_theme_arrows(); } diff --git a/theme/base/config.php b/theme/base/config.php index 881ee946932..bb9e2c4b389 100644 --- a/theme/base/config.php +++ b/theme/base/config.php @@ -174,7 +174,3 @@ $THEME->hidefromselector = true; /** List of javascript files that need to included on each page */ $THEME->javascripts = array(); $THEME->javascripts_footer = array(); - -// Swap side-pre with side-post blocks regions, in RTL mode (can be override on derived themes) -$THEME->blockrtlmanipulations = array('side-pre'=>'side-post','side-post'=>'side-pre'); - diff --git a/theme/base/layout/frontpage.php b/theme/base/layout/frontpage.php index f068b23ee89..330416942e6 100644 --- a/theme/base/layout/frontpage.php +++ b/theme/base/layout/frontpage.php @@ -10,9 +10,17 @@ $hascustommenu = (empty($PAGE->layout_options['nocustommenu']) && !empty($custom $bodyclasses = array(); if ($showsidepre && !$showsidepost) { - $bodyclasses[] = 'side-pre-only'; + if (!right_to_left()) { + $bodyclasses[] = 'side-pre-only'; + }else{ + $bodyclasses[] = 'side-post-only'; + } } else if ($showsidepost && !$showsidepre) { - $bodyclasses[] = 'side-post-only'; + if (!right_to_left()) { + $bodyclasses[] = 'side-post-only'; + }else{ + $bodyclasses[] = 'side-pre-only'; + } } else if (!$showsidepost && !$showsidepre) { $bodyclasses[] = 'content-only'; } @@ -58,22 +66,29 @@ echo $OUTPUT->doctype() ?>
                    - +
                    - blocks_for_region('side-pre'); - ?> + } elseif ($hassidepost) { + echo $OUTPUT->blocks_for_region('side-post'); + } ?> +
                    - +
                    - blocks_for_region('side-post'); - ?> + blocks_for_region('side-post'); + } elseif ($hassidepre) { + echo $OUTPUT->blocks_for_region('side-pre'); + } ?>
                    diff --git a/theme/base/layout/general.php b/theme/base/layout/general.php index ecda10c55bf..1a0f9e41d6a 100644 --- a/theme/base/layout/general.php +++ b/theme/base/layout/general.php @@ -25,9 +25,17 @@ if (empty($PAGE->layout_options['nocourseheaderfooter'])) { $bodyclasses = array(); if ($showsidepre && !$showsidepost) { + if (!right_to_left()) { $bodyclasses[] = 'side-pre-only'; -} else if ($showsidepost && !$showsidepre) { + }else{ $bodyclasses[] = 'side-post-only'; + } +} else if ($showsidepost && !$showsidepre) { + if (!right_to_left()) { + $bodyclasses[] = 'side-post-only'; + }else{ + $bodyclasses[] = 'side-pre-only'; + } } else if (!$showsidepost && !$showsidepre) { $bodyclasses[] = 'content-only'; } @@ -88,18 +96,29 @@ echo $OUTPUT->doctype() ?> - +
                    - blocks_for_region('side-pre'); ?> + blocks_for_region('side-pre'); + } elseif ($hassidepost) { + echo $OUTPUT->blocks_for_region('side-post'); + } ?> +
                    - +
                    - blocks_for_region('side-post'); ?> + blocks_for_region('side-post'); + } elseif ($hassidepre) { + echo $OUTPUT->blocks_for_region('side-pre'); + } ?>
                    diff --git a/theme/base/style/pagelayout.css b/theme/base/style/pagelayout.css index eb369da5d34..ac8ffaf9f63 100644 --- a/theme/base/style/pagelayout.css +++ b/theme/base/style/pagelayout.css @@ -97,19 +97,4 @@ body {margin:auto 0px;width:auto;} .ie6.pagelayout-report #report-main-content {float:none;width:auto;} .ie6.pagelayout-report #report-region-wrap {float:none;width:200px;left:auto;position:absolute;top:0;} .ie6.pagelayout-report #report-region-pre, -.ie6.pagelayout-report #report-region-pre .block {width:100%;} - -/** Only side PRE **/ -.dir-rtl.side-pre-only #page-content #region-main-box {left:0px;} -.dir-rtl.side-pre-only #page-content #region-post-box {margin-left:-200px;} -.dir-rtl.side-pre-only #page-content #region-main {margin-left:200px;} -.dir-rtl.side-pre-only #page-content #region-post {width:0px;} -.dir-rtl.side-pre-only #page-content #region-pre {left:50%; width: 200px;} - -/**RTL Only side POST **/ -.dir-rtl.side-post-only #page-content {clear:both;float:left;overflow:hidden;position:relative;width:100%;min-width:900px;} -.dir-rtl.side-post-only #page-content #region-main-box {float:left;left:200px;position:relative;width:200%;} -.dir-rtl.side-post-only #page-content #region-post-box {margin-left:-200px;} -.dir-rtl.side-post-only #page-content #region-main {margin-left:200px;} -.dir-rtl.side-post-only #page-content #region-pre {width: 0;} -.dir-rtl.side-post-only #page-content #region-post {float:left;left:0px;overflow:hidden;position:relative;width:200px;margin-left:-50%;} +.ie6.pagelayout-report #report-region-pre .block {width:100%;} \ No newline at end of file From 65a4f26d8a914481cde0ac896aaf3070e0c0180f Mon Sep 17 00:00:00 2001 From: Marina Glancy Date: Thu, 26 Sep 2013 12:29:03 +1000 Subject: [PATCH 095/101] Revert "Merge branch 'MDL-41912-master' of git://github.com/damyon/moodle" This reverts commit 093a6fe77fc39b06c804fbe4bfcac9834a52c966, reversing changes made to 88a4cb473439f5a2875260368b92fac1bb808c12. --- lib/editor/atto/styles.css | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/editor/atto/styles.css b/lib/editor/atto/styles.css index c75c3fbf932..6511ee9f515 100644 --- a/lib/editor/atto/styles.css +++ b/lib/editor/atto/styles.css @@ -2,7 +2,6 @@ div.editor_atto { background-color: white; border: 1px solid #BBB; width: 100%; - padding: 4px; } .editor_atto + textarea { From 18784adb1263c3496d23527a6db8d1d4249c7ffe Mon Sep 17 00:00:00 2001 From: Dan Marsden Date: Thu, 26 Sep 2013 21:03:00 +1200 Subject: [PATCH 096/101] MDL-39910 SCORM: set correct site level defaults. --- mod/scorm/db/upgrade.php | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/mod/scorm/db/upgrade.php b/mod/scorm/db/upgrade.php index 13ac7245902..ca0fb758179 100644 --- a/mod/scorm/db/upgrade.php +++ b/mod/scorm/db/upgrade.php @@ -160,14 +160,16 @@ function xmldb_scorm_upgrade($oldversion) { $dbman->drop_field($table, $field); } - $params = array('plugin' => 'scorm', 'name' => 'hidenav'); - if ($DB->record_exists('config_plugins', $params)) { - $DB->delete_records('config_plugins', $params); - } - $params = array('plugin' => 'scorm', 'name' => 'hidenav_adv'); - if ($DB->record_exists('config_plugins', $params)) { - $DB->delete_records('config_plugins', $params); + $hide = get_config('hidenav', 'scorm'); + unset_config('hidenav', 'mod_scorm'); + if (!empty($hide)) { + set_config('nav', SCORM_NAV_DISABLED, 'mod_scorm'); } + + $hideadv = get_config('hidenav_adv', 'scorm'); + unset_config('hidenav_adv', 'mod_scorm'); + set_config('nav_adv', $hideadv, 'mod_scorm'); + upgrade_mod_savepoint(true, 2013090100, 'scorm'); } From 8d29a8c3bc9dea0c28e0b5ed842afe7f06eb393b Mon Sep 17 00:00:00 2001 From: Dan Marsden Date: Thu, 26 Sep 2013 21:03:00 +1200 Subject: [PATCH 097/101] MDL-39910 SCORM: set correct site level defaults. --- mod/scorm/db/upgrade.php | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/mod/scorm/db/upgrade.php b/mod/scorm/db/upgrade.php index 13ac7245902..f2171b85fb2 100644 --- a/mod/scorm/db/upgrade.php +++ b/mod/scorm/db/upgrade.php @@ -130,6 +130,7 @@ function xmldb_scorm_upgrade($oldversion) { } if ($oldversion < 2013090100) { + global $CFG; $table = new xmldb_table('scorm'); $field = new xmldb_field('nav', XMLDB_TYPE_INTEGER, '1', XMLDB_UNSIGNED, true, null, 1, 'hidetoc'); @@ -160,14 +161,17 @@ function xmldb_scorm_upgrade($oldversion) { $dbman->drop_field($table, $field); } - $params = array('plugin' => 'scorm', 'name' => 'hidenav'); - if ($DB->record_exists('config_plugins', $params)) { - $DB->delete_records('config_plugins', $params); - } - $params = array('plugin' => 'scorm', 'name' => 'hidenav_adv'); - if ($DB->record_exists('config_plugins', $params)) { - $DB->delete_records('config_plugins', $params); + $hide = get_config('scorm', 'hidenav'); + unset_config('hidenav', 'scorm'); + if (!empty($hide)) { + require_once($CFG->dirroot . '/mod/scorm/lib.php'); + set_config('nav', SCORM_NAV_DISABLED, 'scorm'); } + + $hideadv = get_config('scorm', 'hidenav_adv'); + unset_config('hidenav_adv', 'scorm'); + set_config('nav_adv', $hideadv, 'scorm'); + upgrade_mod_savepoint(true, 2013090100, 'scorm'); } From a7611a7ccc2f5c5277432512a498700946b6799d Mon Sep 17 00:00:00 2001 From: Mary Evans Date: Fri, 27 Sep 2013 01:43:44 +0200 Subject: [PATCH 098/101] MDL-35217 afterburner: applying orientations --- theme/afterburner/style/afterburner_responsive.css | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/theme/afterburner/style/afterburner_responsive.css b/theme/afterburner/style/afterburner_responsive.css index c01da88d5e8..d6119e05d45 100644 --- a/theme/afterburner/style/afterburner_responsive.css +++ b/theme/afterburner/style/afterburner_responsive.css @@ -1,4 +1,4 @@ -@media screen and (max-width: 767px) { +@media screen and (orientation:portrait) and (max-width: 767px) { /* Custom Menu -------------------------- */ @@ -50,7 +50,7 @@ } } -@media screen and (min-width: 768px) and (max-width: 799px) { +@media screen and (orientation:portrait) and (min-width: 768px) and (max-width: 799px) { /* Page Layout -------------------------*/ body.has_dock { @@ -91,7 +91,7 @@ right: 10px; } } -@media screen and (max-width: 767px) { +@media only screen and (orientation:portrait) and (max-width:767px) { /* Page Layout -------------------------*/ body.has_dock #dock { From 212757a25022af594ffcf66291b1f2134d1abaf1 Mon Sep 17 00:00:00 2001 From: Marina Glancy Date: Fri, 27 Sep 2013 14:17:23 +1000 Subject: [PATCH 099/101] ie9 svg compatibility fixes --- pix/e/abbr.svg | 2 +- pix/e/absolute.svg | 2 +- pix/e/acronym.svg | 2 +- pix/e/advance_hr.svg | 2 +- pix/e/align_center.svg | 2 +- pix/e/align_left.svg | 2 +- pix/e/align_right.svg | 2 +- pix/e/anchor.svg | 2 +- pix/e/backward.svg | 2 +- pix/e/bold.svg | 2 +- pix/e/bullet_list.svg | 2 +- pix/e/cell_props.svg | 2 +- pix/e/cite.svg | 2 +- pix/e/cleanup_messy_code.svg | 2 +- pix/e/clear_formatting.svg | 2 +- pix/e/copy.svg | 2 +- pix/e/cut.svg | 2 +- pix/e/decrease_indent.svg | 2 +- pix/e/delete.svg | 2 +- pix/e/delete_col.svg | 2 +- pix/e/delete_row.svg | 2 +- pix/e/delete_table.svg | 2 +- pix/e/document_properties.svg | 2 +- pix/e/dragmath.svg | 2 +- pix/e/emoticons.svg | 2 +- pix/e/find_replace.svg | 2 +- pix/e/forward.svg | 2 +- pix/e/fullpage.svg | 2 +- pix/e/fullscreen.svg | 2 +- pix/e/help.svg | 2 +- pix/e/increase_indent.svg | 2 +- pix/e/insert.svg | 2 +- pix/e/insert_col_after.svg | 2 +- pix/e/insert_col_before.svg | 2 +- pix/e/insert_date.svg | 2 +- pix/e/insert_edit_image.svg | 2 +- pix/e/insert_edit_link.svg | 2 +- pix/e/insert_edit_video.svg | 2 +- pix/e/insert_file.svg | 2 +- pix/e/insert_horizontal_ruler.svg | 2 +- pix/e/insert_nonbreaking_space.svg | 2 +- pix/e/insert_row_after.svg | 2 +- pix/e/insert_row_before.svg | 2 +- pix/e/insert_time.svg | 2 +- pix/e/italic.svg | 2 +- pix/e/justify.svg | 2 +- pix/e/layers.svg | 2 +- pix/e/layers_over.svg | 2 +- pix/e/layers_under.svg | 2 +- pix/e/left_to_right.svg | 2 +- pix/e/manage_files.svg | 2 +- pix/e/merge_cells.svg | 2 +- pix/e/new_document.svg | 2 +- pix/e/numbered_list.svg | 2 +- pix/e/page_break.svg | 2 +- pix/e/paste.svg | 2 +- pix/e/paste_text.svg | 2 +- pix/e/paste_word.svg | 2 +- pix/e/prevent_autolink.svg | 2 +- pix/e/preview.svg | 2 +- pix/e/print.svg | 2 +- pix/e/question.svg | 2 +- pix/e/redo.svg | 2 +- pix/e/remove_link.svg | 2 +- pix/e/resize.svg | 2 +- pix/e/restore_draft.svg | 2 +- pix/e/restore_last_draft.svg | 2 +- pix/e/right_to_left.svg | 2 +- pix/e/row_props.svg | 2 +- pix/e/save.svg | 2 +- pix/e/search.svg | 2 +- pix/e/select_all.svg | 2 +- pix/e/show_invisible_characters.svg | 2 +- pix/e/source_code.svg | 2 +- pix/e/special_character.svg | 2 +- pix/e/spellcheck.svg | 2 +- pix/e/split_cells.svg | 2 +- pix/e/strikethrough.svg | 2 +- pix/e/styleprops.svg | 2 +- pix/e/subscript.svg | 2 +- pix/e/superscript.svg | 2 +- pix/e/table.svg | 2 +- pix/e/table_props.svg | 2 +- pix/e/template.svg | 2 +- pix/e/text_color.svg | 2 +- pix/e/text_highlight.svg | 2 +- pix/e/tick.svg | 2 +- pix/e/toggle_blockquote.svg | 2 +- pix/e/underline.svg | 2 +- pix/e/undo.svg | 2 +- pix/e/visual_aid.svg | 2 +- pix/e/visual_blocks.svg | 2 +- 92 files changed, 92 insertions(+), 92 deletions(-) diff --git a/pix/e/abbr.svg b/pix/e/abbr.svg index 27182f61d26..be8883c064b 100644 --- a/pix/e/abbr.svg +++ b/pix/e/abbr.svg @@ -6,7 +6,7 @@ + style="overflow:visible;enable-background:new -0.3 -3.6 16 16;" xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> diff --git a/pix/e/align_center.svg b/pix/e/align_center.svg index b83716fbaf8..f6eae2969f4 100644 --- a/pix/e/align_center.svg +++ b/pix/e/align_center.svg @@ -6,7 +6,7 @@ + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> diff --git a/pix/e/align_left.svg b/pix/e/align_left.svg index 5f86b67b0ad..b792e41ed3a 100644 --- a/pix/e/align_left.svg +++ b/pix/e/align_left.svg @@ -6,7 +6,7 @@ + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> diff --git a/pix/e/align_right.svg b/pix/e/align_right.svg index 12e1c583e7c..c636b9e5b90 100644 --- a/pix/e/align_right.svg +++ b/pix/e/align_right.svg @@ -6,7 +6,7 @@ + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> diff --git a/pix/e/anchor.svg b/pix/e/anchor.svg index 9e0454062f8..05cf0f397ec 100644 --- a/pix/e/anchor.svg +++ b/pix/e/anchor.svg @@ -6,7 +6,7 @@ + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> diff --git a/pix/e/backward.svg b/pix/e/backward.svg index c953cfdaea6..10531b19202 100644 --- a/pix/e/backward.svg +++ b/pix/e/backward.svg @@ -6,7 +6,7 @@ + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> diff --git a/pix/e/delete.svg b/pix/e/delete.svg index bda909042d0..f3fa58d3083 100644 --- a/pix/e/delete.svg +++ b/pix/e/delete.svg @@ -6,7 +6,7 @@ + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> diff --git a/pix/e/delete_row.svg b/pix/e/delete_row.svg index df4ac8121c1..8942bef70f5 100644 --- a/pix/e/delete_row.svg +++ b/pix/e/delete_row.svg @@ -6,7 +6,7 @@ + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> diff --git a/pix/e/delete_table.svg b/pix/e/delete_table.svg index 8f6cb4eb45b..0819c0e1ff0 100644 --- a/pix/e/delete_table.svg +++ b/pix/e/delete_table.svg @@ -6,7 +6,7 @@ + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> diff --git a/pix/e/insert.svg b/pix/e/insert.svg index fe2b0eebe75..65411604d13 100644 --- a/pix/e/insert.svg +++ b/pix/e/insert.svg @@ -6,7 +6,7 @@ + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> diff --git a/pix/e/insert_nonbreaking_space.svg b/pix/e/insert_nonbreaking_space.svg index 4b9ec7aa7c9..44702af4f8e 100644 --- a/pix/e/insert_nonbreaking_space.svg +++ b/pix/e/insert_nonbreaking_space.svg @@ -6,7 +6,7 @@ + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> diff --git a/pix/e/insert_row_after.svg b/pix/e/insert_row_after.svg index acd7194ee0b..4804dfb73ef 100644 --- a/pix/e/insert_row_after.svg +++ b/pix/e/insert_row_after.svg @@ -6,7 +6,7 @@ + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> diff --git a/pix/e/justify.svg b/pix/e/justify.svg index 9e7f79e5e55..d825fa76a7d 100644 --- a/pix/e/justify.svg +++ b/pix/e/justify.svg @@ -6,7 +6,7 @@ + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> diff --git a/pix/e/layers.svg b/pix/e/layers.svg index 4923e454a7b..9b505a627e7 100644 --- a/pix/e/layers.svg +++ b/pix/e/layers.svg @@ -6,7 +6,7 @@ + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> diff --git a/pix/e/new_document.svg b/pix/e/new_document.svg index 4db3d9b64dc..2a265af2dbf 100644 --- a/pix/e/new_document.svg +++ b/pix/e/new_document.svg @@ -6,7 +6,7 @@ + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> diff --git a/pix/e/search.svg b/pix/e/search.svg index 025095c7762..37f3390a7da 100644 --- a/pix/e/search.svg +++ b/pix/e/search.svg @@ -6,7 +6,7 @@ + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> diff --git a/pix/e/special_character.svg b/pix/e/special_character.svg index 82c8dbb1ad5..8fa68398cdf 100644 --- a/pix/e/special_character.svg +++ b/pix/e/special_character.svg @@ -6,7 +6,7 @@ + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> diff --git a/pix/e/toggle_blockquote.svg b/pix/e/toggle_blockquote.svg index 24e158b0d08..8830393cc15 100644 --- a/pix/e/toggle_blockquote.svg +++ b/pix/e/toggle_blockquote.svg @@ -6,7 +6,7 @@ + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet"> + xml:space="preserve" preserveAspectRatio="xMinYMid meet">